diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1eb7a58a64c..2a65919bef6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -30,7 +30,7 @@ variables: CI_IMAGE: "paritytech/ci-linux:production" DOCKER_OS: "debian:stretch" ARCH: "x86_64" - ZOMBIENET_IMAGE: "docker.io/paritytech/zombienet:v1.3.29" + ZOMBIENET_IMAGE: "docker.io/paritytech/zombienet:v1.3.35" .collect-artifacts: artifacts: diff --git a/Cargo.lock b/Cargo.lock index 64867e532b4..216f3eb7068 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -181,9 +181,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.66" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6" +checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" [[package]] name = "approx" @@ -372,9 +372,9 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.63" +version = "0.1.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eff18d764974428cf3a9328e23fc5c986f5fbed46e6cd4cdf42544df5d297ec1" +checksum = "1cd7fce9ba8c3c042128ce72d8b2ddbf3a05747efb67ea0313c635e10bda47a2" dependencies = [ "proc-macro2", "quote", @@ -474,7 +474,7 @@ dependencies = [ [[package]] name = "beefy-gadget" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "async-trait", @@ -508,7 +508,7 @@ dependencies = [ [[package]] name = "beefy-gadget-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "beefy-gadget", "futures", @@ -525,13 +525,12 @@ dependencies = [ ] [[package]] -name = "beefy-merkle-tree" +name = "binary-merkle-tree" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ - "sp-api", - "sp-beefy", - "sp-runtime", + "hash-db", + "log", ] [[package]] @@ -680,11 +679,23 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" +[[package]] +name = "bounded-collections" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a071c348a5ef6da1d3a87166b408170b46002382b1dda83992b5c2208cefb370" +dependencies = [ + "log", + "parity-scale-codec", + "scale-info", + "serde", +] + [[package]] name = "bounded-vec" -version = "0.6.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3372be4090bf9d4da36bd8ba7ce6ca1669503d0cf6e667236c6df7f053153eb6" +checksum = "68534a48cbf63a4b1323c433cf21238c9ec23711e0df13b08c33e5c2082663ce" dependencies = [ "thiserror", ] @@ -932,6 +943,12 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" +[[package]] +name = "bytemuck" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c041d3eab048880cb0b86b256447da3f18859a163c3b8d8893f4e6368abe6393" + [[package]] name = "byteorder" version = "1.4.3" @@ -940,9 +957,9 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c" +checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" [[package]] name = "bzip2-sys" @@ -963,9 +980,9 @@ checksum = "631ae5198c9be5e753e5cc215e1bd73c2b466a3565173db433f52bb9d3e66dba" [[package]] name = "camino" -version = "1.0.5" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52d74260d9bf6944e2208aa46841b4b8f0d7ffc0849a06837b2f510337f86b2b" +checksum = "c77df041dc383319cc661b428b6961a005db4d6808d5e12536931b1ca9556055" dependencies = [ "serde", ] @@ -981,15 +998,16 @@ dependencies = [ [[package]] name = "cargo_metadata" -version = "0.14.2" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" +checksum = "08a1ec454bc3eead8719cb56e15dbbfecdbc14e4b3a3ae4936cc6e31f5fc0d07" dependencies = [ "camino", "cargo-platform", - "semver 1.0.4", + "semver 1.0.16", "serde", "serde_json", + "thiserror", ] [[package]] @@ -1178,9 +1196,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.1.4" +version = "4.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f13b9c79b5d1dd500d20ef541215a6423c75829ef43117e1b4d17fd8af0b5d76" +checksum = "ec0b0588d44d4d63a87dbd75c136c166bbfd9a86a31cb89e09906521c7d3f5e3" dependencies = [ "bitflags", "clap_derive", @@ -1367,8 +1385,8 @@ dependencies = [ "pallet-collator-selection", "pallet-contracts", "pallet-contracts-primitives", + "pallet-insecure-randomness-collective-flip", "pallet-multisig", - "pallet-randomness-collective-flip", "pallet-session", "pallet-sudo", "pallet-timestamp", @@ -1468,18 +1486,18 @@ checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba" [[package]] name = "cranelift-bforest" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b27bbd3e6c422cf6282b047bcdd51ecd9ca9f3497a3be0132ffa08e509b824b0" +checksum = "91b18cf92869a6ae85cde3af4bc4beb6154efa8adef03b18db2ad413d5bce3a2" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-codegen" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "872f5d4557a411b087bd731df6347c142ae1004e6467a144a7e33662e5715a01" +checksum = "567d9f6e919bac076f39b902a072686eaf9e6d015baa34d10a61b85105b7af59" dependencies = [ "arrayvec 0.7.2", "bumpalo", @@ -1489,6 +1507,7 @@ dependencies = [ "cranelift-entity", "cranelift-isle", "gimli 0.26.1", + "hashbrown 0.12.3", "log", "regalloc2", "smallvec", @@ -1497,33 +1516,33 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b49fdebb29c62c1fc4da1eeebd609e9d530ecde24a9876def546275f73a244" +checksum = "1e72b2d5ec8917b2971fe83850187373d0a186db4748a7c23a5f48691b8d92bb" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fc0c091e2db055d4d7f6b7cec2d2ead286bcfaea3357c6a52c2a2613a8cb5ac" +checksum = "3461c0e0c2ebbeb92533aacb27e219289f60dc84134ef34fbf2d77c9eddf07ef" [[package]] name = "cranelift-entity" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "354a9597be87996c9b278655e68b8447f65dd907256855ad773864edee8d985c" +checksum = "af684f7f7b01427b1942c7102673322a51b9d6f261e9663dc5e5595786775531" dependencies = [ "serde", ] [[package]] name = "cranelift-frontend" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cd8dd3fb8b82c772f4172e87ae1677b971676fffa7c4e3398e3047e650a266b" +checksum = "7d361ed0373cf5f086b49c499aa72227b646a64f899f32e34312f97c0fadff75" dependencies = [ "cranelift-codegen", "log", @@ -1533,15 +1552,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b82527802b1f7d8da288adc28f1dc97ea52943f5871c041213f7b5035ac698a7" +checksum = "cef4f8f3984d772c199a48896d2fb766f96301bf71b371e03a2b99f4f3b7b931" [[package]] name = "cranelift-native" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c30ba8b910f1be023af0c39109cb28a8809734942a6b3eecbf2de8993052ea5e" +checksum = "f98e4e99a353703475d5acb402b9c13482d41d8a4008b352559bd560afb90363" dependencies = [ "cranelift-codegen", "libc", @@ -1550,9 +1569,9 @@ dependencies = [ [[package]] name = "cranelift-wasm" -version = "0.88.0" +version = "0.93.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "776a8916d201894aca9637a20814f1e11abc62acd5cfbe0b4eb2e63922756971" +checksum = "a1e3f4f0779a1b0f286a6ef19835d8665f88326e656a6d7d84fa9a39fa38ca32" dependencies = [ "cranelift-codegen", "cranelift-entity", @@ -1760,7 +1779,7 @@ dependencies = [ name = "cumulus-client-cli" version = "0.1.0" dependencies = [ - "clap 4.1.4", + "clap 4.1.6", "parity-scale-codec", "sc-chain-spec", "sc-cli", @@ -1844,6 +1863,7 @@ dependencies = [ "polkadot-primitives", "sc-client-api", "sc-consensus", + "schnellru", "sp-blockchain", "sp-consensus", "sp-runtime", @@ -1912,6 +1932,7 @@ dependencies = [ name = "cumulus-client-pov-recovery" version = "0.1.0" dependencies = [ + "async-trait", "cumulus-primitives-core", "cumulus-relay-chain-interface", "cumulus-test-service", @@ -1942,6 +1963,7 @@ dependencies = [ "cumulus-client-cli", "cumulus-client-collator", "cumulus-client-consensus-common", + "cumulus-client-network", "cumulus-client-pov-recovery", "cumulus-primitives-core", "cumulus-relay-chain-inprocess-interface", @@ -1952,14 +1974,20 @@ dependencies = [ "polkadot-primitives", "sc-client-api", "sc-consensus", + "sc-network", + "sc-network-transactions", + "sc-rpc", "sc-service", "sc-sysinfo", "sc-telemetry", + "sc-transaction-pool", + "sc-utils", "sp-api", "sp-blockchain", "sp-consensus", "sp-core", "sp-runtime", + "sp-transaction-pool", ] [[package]] @@ -2357,7 +2385,7 @@ name = "cumulus-test-relay-validation-worker-provider" version = "0.1.0" dependencies = [ "polkadot-node-core-pvf", - "toml 0.6.0", + "toml 0.7.2", ] [[package]] @@ -2396,12 +2424,13 @@ name = "cumulus-test-service" version = "0.1.0" dependencies = [ "async-trait", - "clap 4.1.4", + "clap 4.1.6", "criterion", "cumulus-client-cli", "cumulus-client-consensus-common", "cumulus-client-consensus-relay-chain", "cumulus-client-network", + "cumulus-client-pov-recovery", "cumulus-client-service", "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", @@ -2419,6 +2448,8 @@ dependencies = [ "parachains-common", "parity-scale-codec", "polkadot-cli", + "polkadot-node-subsystem", + "polkadot-overseer", "polkadot-primitives", "polkadot-service", "polkadot-test-service", @@ -3207,7 +3238,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", ] @@ -3223,14 +3254,14 @@ dependencies = [ [[package]] name = "fragile" -version = "1.2.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85dcb89d2b10c5f6133de2efd8c11959ce9dbb46a2f7a4cab208c4eeda6ce1ab" +checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-support-procedural", @@ -3255,12 +3286,12 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "Inflector", "array-bytes 4.2.0", "chrono", - "clap 4.1.4", + "clap 4.1.6", "comfy-table", "frame-benchmarking", "frame-support", @@ -3302,7 +3333,7 @@ dependencies = [ [[package]] name = "frame-election-provider-solution-type" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -3313,7 +3344,7 @@ dependencies = [ [[package]] name = "frame-election-provider-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-election-provider-solution-type", "frame-support", @@ -3330,7 +3361,7 @@ dependencies = [ [[package]] name = "frame-executive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -3359,7 +3390,7 @@ dependencies = [ [[package]] name = "frame-remote-externalities" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "log", @@ -3375,7 +3406,7 @@ dependencies = [ [[package]] name = "frame-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "bitflags", "frame-metadata", @@ -3407,7 +3438,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "Inflector", "cfg-expr", @@ -3422,7 +3453,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate", @@ -3434,7 +3465,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro2", "quote", @@ -3444,7 +3475,7 @@ dependencies = [ [[package]] name = "frame-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "log", @@ -3462,7 +3493,7 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -3477,7 +3508,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "sp-api", @@ -3486,7 +3517,7 @@ dependencies = [ [[package]] name = "frame-try-runtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "parity-scale-codec", @@ -3525,9 +3556,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0" +checksum = "13e2792b0ff0340399d58445b88fd9770e3489eff258a4cbc1523418f12abf84" dependencies = [ "futures-channel", "futures-core", @@ -3540,9 +3571,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed" +checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5" dependencies = [ "futures-core", "futures-sink", @@ -3550,15 +3581,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac" +checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608" [[package]] name = "futures-executor" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7acc85df6714c176ab5edf386123fafe217be88c0840ec11f199441134a074e2" +checksum = "e8de0a35a6ab97ec8869e32a2473f4b1324459e14c29275d14b10cb1fd19b50e" dependencies = [ "futures-core", "futures-task", @@ -3568,9 +3599,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb" +checksum = "bfb8371b6fb2aeb2d280374607aeabfc99d95c72edfe51692e42d3d7f0d08531" [[package]] name = "futures-lite" @@ -3589,9 +3620,9 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d" +checksum = "95a73af87da33b5acf53acfebdc339fe592ecf5357ac7c0a7734ab9d8c876a70" dependencies = [ "proc-macro2", "quote", @@ -3611,15 +3642,15 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9" +checksum = "f310820bb3e8cfd46c80db4d7fb8353e15dfff853a127158425f31e0be6c8364" [[package]] name = "futures-task" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea" +checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366" [[package]] name = "futures-timer" @@ -3629,9 +3660,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" [[package]] name = "futures-util" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6" +checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1" dependencies = [ "futures-channel", "futures-core", @@ -4189,12 +4220,6 @@ dependencies = [ "webrtc-util", ] -[[package]] -name = "io-lifetimes" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24c3f4eff5495aee4c0399d7b6a0dc2b6e81be84242ffbfcf253ebacccc1d0cb" - [[package]] name = "io-lifetimes" version = "1.0.2" @@ -4236,8 +4261,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "927609f78c2913a6f6ac3c27a4fe87f43e2a35367c0c4b0f8265e8f49a104330" dependencies = [ "hermit-abi 0.2.6", - "io-lifetimes 1.0.2", - "rustix 0.36.4", + "io-lifetimes", + "rustix", "windows-sys 0.42.0", ] @@ -4425,7 +4450,7 @@ checksum = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" [[package]] name = "kusama-runtime" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "frame-benchmarking", @@ -4475,6 +4500,7 @@ dependencies = [ "pallet-session-benchmarking", "pallet-society", "pallet-staking", + "pallet-staking-runtime-api", "pallet-timestamp", "pallet-tips", "pallet-transaction-payment", @@ -4522,7 +4548,7 @@ dependencies = [ [[package]] name = "kusama-runtime-constants" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "frame-support", "polkadot-primitives", @@ -4580,9 +4606,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.137" +version = "0.2.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7fcc620a3bff7cdd7a365be3376c97191aeaccc2a603e600951e452615bf89" +checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" [[package]] name = "libloading" @@ -5106,20 +5132,13 @@ dependencies = [ [[package]] name = "linregress" -version = "0.4.4" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6c601a85f5ecd1aba625247bca0031585fb1c446461b142878a16f8245ddeb8" +checksum = "475015a7f8f017edb28d2e69813be23500ad4b32cfe3421c4148efc97324ee52" dependencies = [ "nalgebra", - "statrs", ] -[[package]] -name = "linux-raw-sys" -version = "0.0.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4d2456c373231a208ad294c33dc5bff30051eafd954cd4caae83a712b12854d" - [[package]] name = "linux-raw-sys" version = "0.1.3" @@ -5253,11 +5272,11 @@ checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" [[package]] name = "memfd" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "480b5a5de855d11ff13195950bdc8b98b5e942ef47afc447f6615cdcc4e15d80" +checksum = "b20a59d985586e4a5aef64564ac77299f8586d8be6cf9106a5a40207e8908efb" dependencies = [ - "rustix 0.35.9", + "rustix", ] [[package]] @@ -5366,7 +5385,7 @@ dependencies = [ [[package]] name = "mmr-gadget" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "log", @@ -5385,7 +5404,7 @@ dependencies = [ [[package]] name = "mmr-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "anyhow", "jsonrpsee", @@ -5400,9 +5419,9 @@ dependencies = [ [[package]] name = "mockall" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2be9a9090bc1cac2930688fa9478092a64c6a92ddc6ae0692d46b37d9cab709" +checksum = "50e4a1c770583dac7ab5e2f6c139153b783a53a1bbee9729613f193e59828326" dependencies = [ "cfg-if", "downcast", @@ -5415,9 +5434,9 @@ dependencies = [ [[package]] name = "mockall_derive" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86d702a0530a0141cf4ed147cf5ec7be6f2c187d4e37fcbefc39cf34116bfe8f" +checksum = "832663583d5fa284ca8810bf7015e46c9fff9622d3cf34bd1eea5003fec06dd0" dependencies = [ "cfg-if", "proc-macro2", @@ -5507,9 +5526,9 @@ dependencies = [ [[package]] name = "nalgebra" -version = "0.27.1" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "462fffe4002f4f2e1f6a9dcf12cc1a6fc0e15989014efc02a941d3e0f5dc2120" +checksum = "f6515c882ebfddccaa73ead7320ca28036c4bc84c9bcca3cc0cbba8efe89223a" dependencies = [ "approx", "matrixmultiply", @@ -5517,17 +5536,15 @@ dependencies = [ "num-complex", "num-rational", "num-traits", - "rand 0.8.5", - "rand_distr", "simba", "typenum", ] [[package]] name = "nalgebra-macros" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218" +checksum = "d232c68884c0c99810a5a4d333ef7e47689cfd0edc85efc9e54e1e6bf5212766" dependencies = [ "proc-macro2", "quote", @@ -5732,7 +5749,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" dependencies = [ "autocfg", - "libm", ] [[package]] @@ -5886,7 +5902,7 @@ dependencies = [ [[package]] name = "pallet-alliance" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "frame-benchmarking", @@ -5907,7 +5923,7 @@ dependencies = [ [[package]] name = "pallet-asset-tx-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -5925,7 +5941,7 @@ dependencies = [ [[package]] name = "pallet-assets" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -5940,7 +5956,7 @@ dependencies = [ [[package]] name = "pallet-aura" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -5956,7 +5972,7 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -5972,7 +5988,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -5986,7 +6002,7 @@ dependencies = [ [[package]] name = "pallet-babe" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6010,7 +6026,7 @@ dependencies = [ [[package]] name = "pallet-bags-list" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6030,7 +6046,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6045,26 +6061,29 @@ dependencies = [ [[package]] name = "pallet-beefy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", + "pallet-authorship", "pallet-session", "parity-scale-codec", "scale-info", "serde", "sp-beefy", "sp-runtime", + "sp-session", + "sp-staking", "sp-std", ] [[package]] name = "pallet-beefy-mmr" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", - "beefy-merkle-tree", + "binary-merkle-tree", "frame-support", "frame-system", "log", @@ -6074,6 +6093,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", + "sp-api", "sp-beefy", "sp-core", "sp-io", @@ -6084,7 +6104,7 @@ dependencies = [ [[package]] name = "pallet-bounties" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6102,7 +6122,7 @@ dependencies = [ [[package]] name = "pallet-child-bounties" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6146,7 +6166,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6163,7 +6183,7 @@ dependencies = [ [[package]] name = "pallet-contracts" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "bitflags", "frame-benchmarking", @@ -6192,10 +6212,11 @@ dependencies = [ [[package]] name = "pallet-contracts-primitives" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "bitflags", "parity-scale-codec", + "scale-info", "sp-runtime", "sp-std", "sp-weights", @@ -6204,7 +6225,7 @@ dependencies = [ [[package]] name = "pallet-contracts-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro2", "quote", @@ -6214,7 +6235,7 @@ dependencies = [ [[package]] name = "pallet-conviction-voting" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "assert_matches", "frame-benchmarking", @@ -6231,7 +6252,7 @@ dependencies = [ [[package]] name = "pallet-democracy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6249,7 +6270,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6272,7 +6293,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-support-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6285,7 +6306,7 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6303,7 +6324,7 @@ dependencies = [ [[package]] name = "pallet-fast-unstake" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6321,7 +6342,7 @@ dependencies = [ [[package]] name = "pallet-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6344,7 +6365,7 @@ dependencies = [ [[package]] name = "pallet-identity" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "enumflags2", "frame-benchmarking", @@ -6360,7 +6381,7 @@ dependencies = [ [[package]] name = "pallet-im-online" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6380,7 +6401,7 @@ dependencies = [ [[package]] name = "pallet-indices" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6394,10 +6415,24 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-insecure-randomness-collective-flip" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "safe-mix", + "scale-info", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-membership" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6414,7 +6449,7 @@ dependencies = [ [[package]] name = "pallet-mmr" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6431,7 +6466,7 @@ dependencies = [ [[package]] name = "pallet-multisig" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6447,7 +6482,7 @@ dependencies = [ [[package]] name = "pallet-nfts" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "enumflags2", "frame-benchmarking", @@ -6457,14 +6492,26 @@ dependencies = [ "parity-scale-codec", "scale-info", "sp-core", + "sp-io", "sp-runtime", "sp-std", ] +[[package]] +name = "pallet-nfts-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" +dependencies = [ + "frame-support", + "pallet-nfts", + "parity-scale-codec", + "sp-api", +] + [[package]] name = "pallet-nis" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6480,7 +6527,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools" version = "1.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -6497,7 +6544,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-benchmarking" version = "1.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6517,8 +6564,9 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-runtime-api" version = "1.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ + "pallet-nomination-pools", "parity-scale-codec", "sp-api", "sp-std", @@ -6527,7 +6575,7 @@ dependencies = [ [[package]] name = "pallet-offences" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -6544,7 +6592,7 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6568,7 +6616,7 @@ dependencies = [ [[package]] name = "pallet-preimage" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6585,7 +6633,7 @@ dependencies = [ [[package]] name = "pallet-proxy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6597,24 +6645,10 @@ dependencies = [ "sp-std", ] -[[package]] -name = "pallet-randomness-collective-flip" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" -dependencies = [ - "frame-support", - "frame-system", - "parity-scale-codec", - "safe-mix", - "scale-info", - "sp-runtime", - "sp-std", -] - [[package]] name = "pallet-ranked-collective" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6632,7 +6666,7 @@ dependencies = [ [[package]] name = "pallet-recovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6647,7 +6681,7 @@ dependencies = [ [[package]] name = "pallet-referenda" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "assert_matches", "frame-benchmarking", @@ -6666,7 +6700,7 @@ dependencies = [ [[package]] name = "pallet-scheduler" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6683,7 +6717,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -6704,7 +6738,7 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6720,7 +6754,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -6734,7 +6768,7 @@ dependencies = [ [[package]] name = "pallet-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6757,7 +6791,7 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -6768,16 +6802,25 @@ dependencies = [ [[package]] name = "pallet-staking-reward-fn" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "log", "sp-arithmetic", ] +[[package]] +name = "pallet-staking-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" +dependencies = [ + "parity-scale-codec", + "sp-api", +] + [[package]] name = "pallet-state-trie-migration" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6794,7 +6837,7 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -6823,7 +6866,7 @@ dependencies = [ [[package]] name = "pallet-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6841,7 +6884,7 @@ dependencies = [ [[package]] name = "pallet-tips" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6860,7 +6903,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-support", "frame-system", @@ -6876,7 +6919,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", @@ -6892,7 +6935,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -6904,7 +6947,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6921,7 +6964,7 @@ dependencies = [ [[package]] name = "pallet-uniques" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6936,7 +6979,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6952,7 +6995,7 @@ dependencies = [ [[package]] name = "pallet-vesting" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6967,7 +7010,7 @@ dependencies = [ [[package]] name = "pallet-whitelist" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6982,8 +7025,9 @@ dependencies = [ [[package]] name = "pallet-xcm" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ + "bounded-collections", "frame-benchmarking", "frame-support", "frame-system", @@ -7002,7 +7046,7 @@ dependencies = [ [[package]] name = "pallet-xcm-benchmarks" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "frame-benchmarking", "frame-support", @@ -7033,7 +7077,7 @@ dependencies = [ name = "parachain-template-node" version = "0.1.0" dependencies = [ - "clap 4.1.4", + "clap 4.1.6", "cumulus-client-cli", "cumulus-client-consensus-aura", "cumulus-client-consensus-common", @@ -7190,9 +7234,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.2.2" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ab01d0f889e957861bc65888d5ccbe82c158d0270136ba46820d43837cdf72" +checksum = "637935964ff85a605d114591d4d2c13c5d1ba2806dae97cea6bf180238a749ac" dependencies = [ "arrayvec 0.7.2", "bitvec", @@ -7538,7 +7582,7 @@ dependencies = [ [[package]] name = "polkadot-approval-distribution" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "polkadot-node-metrics", @@ -7553,7 +7597,7 @@ dependencies = [ [[package]] name = "polkadot-availability-bitfield-distribution" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "polkadot-node-network-protocol", @@ -7567,7 +7611,7 @@ dependencies = [ [[package]] name = "polkadot-availability-distribution" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "derive_more", "fatality", @@ -7590,7 +7634,7 @@ dependencies = [ [[package]] name = "polkadot-availability-recovery" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "fatality", "futures", @@ -7611,9 +7655,9 @@ dependencies = [ [[package]] name = "polkadot-cli" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ - "clap 4.1.4", + "clap 4.1.6", "frame-benchmarking-cli", "futures", "log", @@ -7639,7 +7683,7 @@ dependencies = [ [[package]] name = "polkadot-client" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "frame-benchmarking", @@ -7682,7 +7726,7 @@ dependencies = [ [[package]] name = "polkadot-collator-protocol" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "always-assert", "bitvec", @@ -7704,7 +7748,7 @@ dependencies = [ [[package]] name = "polkadot-core-primitives" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "parity-scale-codec", "scale-info", @@ -7716,7 +7760,7 @@ dependencies = [ [[package]] name = "polkadot-dispute-distribution" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "derive_more", "fatality", @@ -7741,7 +7785,7 @@ dependencies = [ [[package]] name = "polkadot-erasure-coding" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "parity-scale-codec", "polkadot-node-primitives", @@ -7755,7 +7799,7 @@ dependencies = [ [[package]] name = "polkadot-gossip-support" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "futures-timer", @@ -7775,7 +7819,7 @@ dependencies = [ [[package]] name = "polkadot-network-bridge" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "always-assert", "async-trait", @@ -7799,7 +7843,7 @@ dependencies = [ [[package]] name = "polkadot-node-collation-generation" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "parity-scale-codec", @@ -7817,7 +7861,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-approval-voting" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "derive_more", @@ -7846,7 +7890,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-av-store" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "futures", @@ -7859,6 +7903,7 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-overseer", "polkadot-primitives", + "sp-consensus", "thiserror", "tracing-gum", ] @@ -7866,7 +7911,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-backing" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "fatality", @@ -7885,7 +7930,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-bitfield-signing" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "polkadot-node-subsystem", @@ -7900,7 +7945,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-candidate-validation" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "futures", @@ -7910,6 +7955,7 @@ dependencies = [ "polkadot-node-metrics", "polkadot-node-primitives", "polkadot-node-subsystem", + "polkadot-node-subsystem-util", "polkadot-parachain", "polkadot-primitives", "sp-maybe-compressed-blob", @@ -7919,7 +7965,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-api" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "polkadot-node-metrics", @@ -7934,7 +7980,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-selection" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "futures-timer", @@ -7951,7 +7997,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-dispute-coordinator" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "fatality", "futures", @@ -7970,7 +8016,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-parachains-inherent" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "futures", @@ -7987,7 +8033,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-provisioner" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "fatality", @@ -8005,18 +8051,21 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "always-assert", "assert_matches", "cpu-time", "futures", "futures-timer", + "libc", "parity-scale-codec", "pin-project", "polkadot-core-primitives", "polkadot-node-metrics", + "polkadot-node-primitives", "polkadot-parachain", + "polkadot-primitives", "rand 0.8.5", "rayon", "sc-executor", @@ -8030,6 +8079,7 @@ dependencies = [ "sp-tracing", "sp-wasm-interface", "tempfile", + "tikv-jemalloc-ctl", "tokio", "tracing-gum", ] @@ -8037,7 +8087,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf-checker" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "polkadot-node-primitives", @@ -8053,7 +8103,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-runtime-api" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "futures", "lru 0.9.0", @@ -8068,7 +8118,7 @@ dependencies = [ [[package]] name = "polkadot-node-jaeger" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "lazy_static", "log", @@ -8086,7 +8136,7 @@ dependencies = [ [[package]] name = "polkadot-node-metrics" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bs58", "futures", @@ -8105,7 +8155,7 @@ dependencies = [ [[package]] name = "polkadot-node-network-protocol" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "derive_more", @@ -8128,7 +8178,7 @@ dependencies = [ [[package]] name = "polkadot-node-primitives" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bounded-vec", "futures", @@ -8143,6 +8193,7 @@ dependencies = [ "sp-core", "sp-keystore", "sp-maybe-compressed-blob", + "sp-runtime", "thiserror", "zstd", ] @@ -8150,7 +8201,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "polkadot-node-jaeger", "polkadot-node-subsystem-types", @@ -8160,7 +8211,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-test-helpers" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "futures", @@ -8178,7 +8229,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-types" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "derive_more", @@ -8201,7 +8252,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-util" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "derive_more", @@ -8234,7 +8285,7 @@ dependencies = [ [[package]] name = "polkadot-overseer" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "futures", @@ -8257,8 +8308,9 @@ dependencies = [ [[package]] name = "polkadot-parachain" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ + "bounded-collections", "derive_more", "frame-support", "parity-scale-codec", @@ -8279,7 +8331,7 @@ dependencies = [ "bridge-hub-kusama-runtime", "bridge-hub-polkadot-runtime", "bridge-hub-rococo-runtime", - "clap 4.1.4", + "clap 4.1.6", "collectives-polkadot-runtime", "contracts-rococo-runtime", "cumulus-client-cli", @@ -8355,7 +8407,7 @@ dependencies = [ [[package]] name = "polkadot-performance-test" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "env_logger 0.9.0", "kusama-runtime", @@ -8363,6 +8415,7 @@ dependencies = [ "polkadot-erasure-coding", "polkadot-node-core-pvf", "polkadot-node-primitives", + "polkadot-primitives", "quote", "thiserror", ] @@ -8370,7 +8423,7 @@ dependencies = [ [[package]] name = "polkadot-primitives" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "hex-literal", @@ -8396,7 +8449,7 @@ dependencies = [ [[package]] name = "polkadot-rpc" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "beefy-gadget", "beefy-gadget-rpc", @@ -8428,7 +8481,7 @@ dependencies = [ [[package]] name = "polkadot-runtime" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "frame-benchmarking", @@ -8472,6 +8525,7 @@ dependencies = [ "pallet-session-benchmarking", "pallet-staking", "pallet-staking-reward-curve", + "pallet-staking-runtime-api", "pallet-timestamp", "pallet-tips", "pallet-transaction-payment", @@ -8517,7 +8571,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-common" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "frame-benchmarking", @@ -8529,7 +8583,6 @@ dependencies = [ "log", "pallet-authorship", "pallet-babe", - "pallet-bags-list", "pallet-balances", "pallet-beefy-mmr", "pallet-election-provider-multi-phase", @@ -8566,7 +8619,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-constants" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "frame-support", "polkadot-primitives", @@ -8580,7 +8633,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-metrics" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bs58", "parity-scale-codec", @@ -8592,7 +8645,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-parachains" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitflags", "bitvec", @@ -8610,6 +8663,7 @@ dependencies = [ "pallet-timestamp", "pallet-vesting", "parity-scale-codec", + "polkadot-parachain", "polkadot-primitives", "polkadot-runtime-metrics", "rand 0.8.5", @@ -8635,7 +8689,7 @@ dependencies = [ [[package]] name = "polkadot-service" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "async-trait", "beefy-gadget", @@ -8744,7 +8798,7 @@ dependencies = [ [[package]] name = "polkadot-statement-distribution" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "arrayvec 0.5.2", "fatality", @@ -8765,7 +8819,7 @@ dependencies = [ [[package]] name = "polkadot-statement-table" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "parity-scale-codec", "polkadot-primitives", @@ -8775,7 +8829,7 @@ dependencies = [ [[package]] name = "polkadot-test-client" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "parity-scale-codec", "polkadot-node-subsystem", @@ -8800,7 +8854,7 @@ dependencies = [ [[package]] name = "polkadot-test-runtime" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "frame-election-provider-support", @@ -8861,7 +8915,7 @@ dependencies = [ [[package]] name = "polkadot-test-service" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "frame-benchmarking", "frame-system", @@ -9040,7 +9094,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "66618389e4ec1c7afe67d51a9bf34ff9236480f8d51e7489b7d5ab0303c13f34" dependencies = [ "once_cell", - "toml_edit", + "toml_edit 0.18.1", ] [[package]] @@ -9306,16 +9360,6 @@ dependencies = [ "getrandom 0.2.8", ] -[[package]] -name = "rand_distr" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "964d548f8e7d12e102ef183a0de7e98180c9f8729f555897a857b96e48122d2f" -dependencies = [ - "num-traits", - "rand 0.8.5", -] - [[package]] name = "rand_hc" version = "0.2.0" @@ -9444,9 +9488,9 @@ dependencies = [ [[package]] name = "regalloc2" -version = "0.3.2" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d43a209257d978ef079f3d446331d0f1794f5e0fc19b306a199983857833a779" +checksum = "300d4fbfb40c1c66a78ba3ddd41c1110247cf52f97b87d0f2fc9209bd49b030c" dependencies = [ "fxhash", "log", @@ -9586,9 +9630,9 @@ dependencies = [ [[package]] name = "rococo-runtime" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ - "beefy-merkle-tree", + "binary-merkle-tree", "frame-benchmarking", "frame-executive", "frame-support", @@ -9672,7 +9716,7 @@ dependencies = [ [[package]] name = "rococo-runtime-constants" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "frame-support", "polkadot-primitives", @@ -9766,7 +9810,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.4", + "semver 1.0.16", ] [[package]] @@ -9780,29 +9824,15 @@ dependencies = [ [[package]] name = "rustix" -version = "0.35.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c825b8aa8010eb9ee99b75f05e10180b9278d161583034d7574c9d617aeada" -dependencies = [ - "bitflags", - "errno", - "io-lifetimes 0.7.2", - "libc", - "linux-raw-sys 0.0.46", - "windows-sys 0.36.1", -] - -[[package]] -name = "rustix" -version = "0.36.4" +version = "0.36.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb93e85278e08bb5788653183213d3a60fc242b10cb9be96586f5a73dcb67c23" +checksum = "d4fdebc4b395b7fbb9ab11e462e20ed9051e7b16e42d24042c776eca0ac81b03" dependencies = [ "bitflags", "errno", - "io-lifetimes 1.0.2", + "io-lifetimes", "libc", - "linux-raw-sys 0.1.3", + "linux-raw-sys", "windows-sys 0.42.0", ] @@ -9884,6 +9914,15 @@ dependencies = [ "rustc_version 0.2.3", ] +[[package]] +name = "safe_arch" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "794821e4ccb0d9f979512f9c1973480123f9bd62a90d74ab0f9426fcf8f4a529" +dependencies = [ + "bytemuck", +] + [[package]] name = "same-file" version = "1.0.6" @@ -9896,7 +9935,7 @@ dependencies = [ [[package]] name = "sc-allocator" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "log", "sp-core", @@ -9907,7 +9946,7 @@ dependencies = [ [[package]] name = "sc-authority-discovery" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures", @@ -9934,7 +9973,7 @@ dependencies = [ [[package]] name = "sc-basic-authorship" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "futures-timer", @@ -9957,7 +9996,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -9973,7 +10012,7 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "memmap2", "sc-chain-spec-derive", @@ -9988,7 +10027,7 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -9999,11 +10038,11 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "chrono", - "clap 4.1.4", + "clap 4.1.6", "fdlimit", "futures", "libp2p", @@ -10039,7 +10078,7 @@ dependencies = [ [[package]] name = "sc-client-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "fnv", "futures", @@ -10065,7 +10104,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "hash-db", "kvdb", @@ -10091,7 +10130,7 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures", @@ -10116,7 +10155,7 @@ dependencies = [ [[package]] name = "sc-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures", @@ -10145,7 +10184,7 @@ dependencies = [ [[package]] name = "sc-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "fork-tree", @@ -10163,6 +10202,7 @@ dependencies = [ "sc-consensus-slots", "sc-keystore", "sc-telemetry", + "scale-info", "schnorrkel", "sp-api", "sp-application-crypto", @@ -10183,7 +10223,7 @@ dependencies = [ [[package]] name = "sc-consensus-babe-rpc" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "jsonrpsee", @@ -10205,7 +10245,7 @@ dependencies = [ [[package]] name = "sc-consensus-epochs" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "fork-tree", "parity-scale-codec", @@ -10218,7 +10258,7 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures", @@ -10241,7 +10281,7 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "lru 0.8.1", "parity-scale-codec", @@ -10265,7 +10305,7 @@ dependencies = [ [[package]] name = "sc-executor-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "sc-allocator", "sp-maybe-compressed-blob", @@ -10278,7 +10318,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "log", "sc-allocator", @@ -10291,13 +10331,14 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ + "anyhow", "cfg-if", "libc", "log", "once_cell", - "rustix 0.35.9", + "rustix", "sc-allocator", "sc-executor-common", "sp-runtime-interface", @@ -10308,7 +10349,7 @@ dependencies = [ [[package]] name = "sc-finality-grandpa" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "ahash 0.8.2", "array-bytes 4.2.0", @@ -10348,7 +10389,7 @@ dependencies = [ [[package]] name = "sc-finality-grandpa-rpc" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "finality-grandpa", "futures", @@ -10368,7 +10409,7 @@ dependencies = [ [[package]] name = "sc-informant" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "ansi_term", "futures", @@ -10383,7 +10424,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "async-trait", @@ -10398,7 +10439,7 @@ dependencies = [ [[package]] name = "sc-network" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "async-trait", @@ -10413,6 +10454,7 @@ dependencies = [ "libp2p", "log", "lru 0.8.1", + "mockall", "parity-scale-codec", "parking_lot 0.12.1", "pin-project", @@ -10440,7 +10482,7 @@ dependencies = [ [[package]] name = "sc-network-bitswap" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "cid", "futures", @@ -10459,7 +10501,7 @@ dependencies = [ [[package]] name = "sc-network-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "bitflags", @@ -10485,7 +10527,7 @@ dependencies = [ [[package]] name = "sc-network-gossip" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "ahash 0.8.2", "futures", @@ -10503,7 +10545,7 @@ dependencies = [ [[package]] name = "sc-network-light" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "futures", @@ -10524,7 +10566,7 @@ dependencies = [ [[package]] name = "sc-network-sync" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "async-trait", @@ -10556,7 +10598,7 @@ dependencies = [ [[package]] name = "sc-network-transactions" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "futures", @@ -10575,7 +10617,7 @@ dependencies = [ [[package]] name = "sc-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "bytes", @@ -10605,7 +10647,7 @@ dependencies = [ [[package]] name = "sc-peerset" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "libp2p", @@ -10618,7 +10660,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -10627,7 +10669,7 @@ dependencies = [ [[package]] name = "sc-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "jsonrpsee", @@ -10657,7 +10699,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -10676,7 +10718,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "http", "jsonrpsee", @@ -10691,7 +10733,7 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "futures", @@ -10717,7 +10759,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "directories", @@ -10783,7 +10825,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "log", "parity-scale-codec", @@ -10794,9 +10836,9 @@ dependencies = [ [[package]] name = "sc-storage-monitor" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ - "clap 4.1.4", + "clap 4.1.6", "futures", "log", "nix 0.26.2", @@ -10810,7 +10852,7 @@ dependencies = [ [[package]] name = "sc-sync-state-rpc" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -10829,7 +10871,7 @@ dependencies = [ [[package]] name = "sc-sysinfo" version = "6.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "libc", @@ -10848,7 +10890,7 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "chrono", "futures", @@ -10867,7 +10909,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "ansi_term", "atty", @@ -10898,7 +10940,7 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -10909,7 +10951,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures", @@ -10936,7 +10978,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures", @@ -10950,7 +10992,7 @@ dependencies = [ [[package]] name = "sc-utils" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "backtrace", "futures", @@ -11183,9 +11225,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.4" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "568a8e6258aa33c13358f81fd834adb854c6f7c9468520910a9b1e8fac068012" +checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" dependencies = [ "serde", ] @@ -11218,9 +11260,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.91" +version = "1.0.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" +checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76" dependencies = [ "itoa 1.0.4", "ryu", @@ -11229,9 +11271,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c68e921cef53841b8925c2abadd27c9b891d9613bdc43d6b823062866df38e8" +checksum = "0efd8caf556a6cebd3b285caf480045fcc1ac04f6bd786b09a6f11af30c4fcf4" dependencies = [ "serde", ] @@ -11374,14 +11416,15 @@ dependencies = [ [[package]] name = "simba" -version = "0.5.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e82063457853d00243beda9952e910b82593e4b07ae9f721b9278a99a0d3d5c" +checksum = "50582927ed6f77e4ac020c057f37a268fc6aebc29225050365aacbb9deeeddc4" dependencies = [ "approx", "num-complex", "num-traits", "paste", + "wide", ] [[package]] @@ -11399,7 +11442,7 @@ checksum = "03b634d87b960ab1a38c4fe143b508576f075e7c978bfad18217645ebfdfa2ec" [[package]] name = "slot-range-helper" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "enumn", "parity-scale-codec", @@ -11476,7 +11519,7 @@ dependencies = [ [[package]] name = "sp-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "hash-db", "log", @@ -11494,7 +11537,7 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "blake2", "proc-macro-crate", @@ -11506,7 +11549,7 @@ dependencies = [ [[package]] name = "sp-application-crypto" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "scale-info", @@ -11519,7 +11562,7 @@ dependencies = [ [[package]] name = "sp-arithmetic" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "integer-sqrt", "num-traits", @@ -11533,7 +11576,7 @@ dependencies = [ [[package]] name = "sp-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "scale-info", @@ -11546,8 +11589,9 @@ dependencies = [ [[package]] name = "sp-beefy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ + "lazy_static", "parity-scale-codec", "scale-info", "serde", @@ -11558,12 +11602,13 @@ dependencies = [ "sp-mmr-primitives", "sp-runtime", "sp-std", + "strum", ] [[package]] name = "sp-block-builder" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "sp-api", @@ -11575,7 +11620,7 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "log", @@ -11593,7 +11638,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures", @@ -11611,7 +11656,7 @@ dependencies = [ [[package]] name = "sp-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "parity-scale-codec", @@ -11629,7 +11674,7 @@ dependencies = [ [[package]] name = "sp-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "merlin", @@ -11652,7 +11697,7 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "scale-info", @@ -11664,7 +11709,7 @@ dependencies = [ [[package]] name = "sp-consensus-vrf" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "scale-info", @@ -11677,12 +11722,13 @@ dependencies = [ [[package]] name = "sp-core" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "base58", "bitflags", "blake2", + "bounded-collections", "dyn-clonable", "ed25519-zebra", "futures", @@ -11719,7 +11765,7 @@ dependencies = [ [[package]] name = "sp-core-hashing" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "blake2", "byteorder", @@ -11733,7 +11779,7 @@ dependencies = [ [[package]] name = "sp-core-hashing-proc-macro" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro2", "quote", @@ -11744,7 +11790,7 @@ dependencies = [ [[package]] name = "sp-database" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "kvdb", "parking_lot 0.12.1", @@ -11753,7 +11799,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro2", "quote", @@ -11763,7 +11809,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.13.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "environmental", "parity-scale-codec", @@ -11774,7 +11820,7 @@ dependencies = [ [[package]] name = "sp-finality-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "finality-grandpa", "log", @@ -11792,11 +11838,12 @@ dependencies = [ [[package]] name = "sp-inherents" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "impl-trait-for-tuples", "parity-scale-codec", + "scale-info", "sp-core", "sp-runtime", "sp-std", @@ -11806,7 +11853,7 @@ dependencies = [ [[package]] name = "sp-io" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "bytes", "ed25519", @@ -11831,7 +11878,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "lazy_static", "sp-core", @@ -11842,7 +11889,7 @@ dependencies = [ [[package]] name = "sp-keystore" version = "0.13.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures", @@ -11859,7 +11906,7 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "thiserror", "zstd", @@ -11868,7 +11915,7 @@ dependencies = [ [[package]] name = "sp-mmr-primitives" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "ckb-merkle-mountain-range", "log", @@ -11886,7 +11933,7 @@ dependencies = [ [[package]] name = "sp-npos-elections" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "scale-info", @@ -11900,7 +11947,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "sp-api", "sp-core", @@ -11910,7 +11957,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "backtrace", "lazy_static", @@ -11920,7 +11967,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "rustc-hash", "serde", @@ -11930,7 +11977,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "either", "hash256-std-hasher", @@ -11952,7 +11999,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -11970,7 +12017,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "Inflector", "proc-macro-crate", @@ -11982,7 +12029,7 @@ dependencies = [ [[package]] name = "sp-serializer" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "serde", "serde_json", @@ -11991,7 +12038,7 @@ dependencies = [ [[package]] name = "sp-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "scale-info", @@ -12005,7 +12052,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "scale-info", @@ -12017,7 +12064,7 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.13.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "hash-db", "log", @@ -12037,12 +12084,12 @@ dependencies = [ [[package]] name = "sp-std" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" [[package]] name = "sp-storage" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "impl-serde", "parity-scale-codec", @@ -12055,7 +12102,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "futures-timer", @@ -12070,7 +12117,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "sp-std", @@ -12082,7 +12129,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "sp-api", "sp-runtime", @@ -12091,7 +12138,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "log", @@ -12107,7 +12154,7 @@ dependencies = [ [[package]] name = "sp-trie" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "ahash 0.8.2", "hash-db", @@ -12130,7 +12177,7 @@ dependencies = [ [[package]] name = "sp-version" version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "impl-serde", "parity-scale-codec", @@ -12147,7 +12194,7 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -12158,8 +12205,9 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "7.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ + "anyhow", "impl-trait-for-tuples", "log", "parity-scale-codec", @@ -12171,7 +12219,7 @@ dependencies = [ [[package]] name = "sp-weights" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "parity-scale-codec", "scale-info", @@ -12416,19 +12464,6 @@ dependencies = [ "syn", ] -[[package]] -name = "statrs" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05bdbb8e4e78216a85785a85d3ec3183144f98d0097b9281802c019bb07a6f05" -dependencies = [ - "approx", - "lazy_static", - "nalgebra", - "num-traits", - "rand 0.8.5", -] - [[package]] name = "strsim" version = "0.10.0" @@ -12492,7 +12527,7 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "platforms", ] @@ -12500,7 +12535,7 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "frame-system-rpc-runtime-api", "futures", @@ -12519,7 +12554,7 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "hyper", "log", @@ -12531,7 +12566,7 @@ dependencies = [ [[package]] name = "substrate-rpc-client" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "async-trait", "jsonrpsee", @@ -12544,7 +12579,7 @@ dependencies = [ [[package]] name = "substrate-state-trie-migration-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "jsonrpsee", "log", @@ -12563,7 +12598,7 @@ dependencies = [ [[package]] name = "substrate-test-client" version = "2.0.1" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "array-bytes 4.2.0", "async-trait", @@ -12589,7 +12624,7 @@ dependencies = [ [[package]] name = "substrate-test-utils" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "futures", "substrate-test-utils-derive", @@ -12599,7 +12634,7 @@ dependencies = [ [[package]] name = "substrate-test-utils-derive" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -12610,7 +12645,7 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ "ansi_term", "build-helper", @@ -12691,9 +12726,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "target-lexicon" -version = "0.12.2" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9bffcddbc2458fa3e6058414599e3c838a022abae82e5c67b4f7f80298d5bff" +checksum = "9410d0f6853b1d94f0e519fb95df60f29d2c1eff2d921ffdf01a4c8a3b54f12d" [[package]] name = "tempfile" @@ -12727,7 +12762,7 @@ checksum = "13a4ec180a2de59b57434704ccfad967f789b12737738798fa08798cd5824c16" [[package]] name = "test-runtime-constants" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "frame-support", "polkadot-primitives", @@ -12907,9 +12942,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.24.2" +version = "1.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a12a59981d9e3c38d216785b0c37399f6e415e8d0712047620f189371b0bb" +checksum = "c8e00990ebabbe4c14c08aca901caed183ecd5c09562a12c824bb53d3c3fd3af" dependencies = [ "autocfg", "bytes", @@ -12998,14 +13033,14 @@ dependencies = [ [[package]] name = "toml" -version = "0.6.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb9d890e4dc9298b70f740f615f2e05b9db37dce531f6b24fb77ac993f9f217" +checksum = "f7afcae9e3f0fe2c370fd4657108972cbb2fa9db1b9f84849cefd80741b01cb6" dependencies = [ "serde", "serde_spanned", - "toml_datetime", - "toml_edit", + "toml_datetime 0.6.1", + "toml_edit 0.19.3", ] [[package]] @@ -13013,6 +13048,12 @@ name = "toml_datetime" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4553f467ac8e3d374bc9a177a26801e5d0f9b211aa1673fb137a403afd1c9cf5" + +[[package]] +name = "toml_datetime" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622" dependencies = [ "serde", ] @@ -13022,12 +13063,23 @@ name = "toml_edit" version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56c59d8dd7d0dcbc6428bf7aa2f0e823e26e43b3c9aca15bbc9475d23e5fa12b" +dependencies = [ + "indexmap", + "nom8", + "toml_datetime 0.5.1", +] + +[[package]] +name = "toml_edit" +version = "0.19.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e6a7712b49e1775fb9a7b998de6635b299237f48b404dde71704f2e0e7f37e5" dependencies = [ "indexmap", "nom8", "serde", "serde_spanned", - "toml_datetime", + "toml_datetime 0.6.1", ] [[package]] @@ -13118,7 +13170,7 @@ dependencies = [ [[package]] name = "tracing-gum" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "polkadot-node-jaeger", "polkadot-primitives", @@ -13129,7 +13181,7 @@ dependencies = [ [[package]] name = "tracing-gum-proc-macro" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "expander 0.0.6", "proc-macro-crate", @@ -13184,12 +13236,12 @@ dependencies = [ [[package]] name = "trie-db" -version = "0.24.0" +version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "004e1e8f92535694b4cb1444dc5a8073ecf0815e3357f729638b9f8fc4062908" +checksum = "3390c0409daaa6027d6681393316f4ccd3ff82e1590a1e4725014e3ae2bf1920" dependencies = [ "hash-db", - "hashbrown 0.12.3", + "hashbrown 0.13.2", "log", "rustc-hex", "smallvec", @@ -13259,9 +13311,10 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "try-runtime-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#fdff2b23009f25dd42d3a12fee6c998864399de3" +source = "git+https://github.com/paritytech/substrate?branch=master#fbddfbd76c60c6fda0024e8a44e82ad776033e4b" dependencies = [ - "clap 4.1.4", + "async-trait", + "clap 4.1.6", "frame-remote-externalities", "frame-try-runtime", "hex", @@ -13273,14 +13326,19 @@ dependencies = [ "serde", "serde_json", "sp-api", + "sp-consensus-aura", + "sp-consensus-babe", "sp-core", "sp-debug-derive", "sp-externalities", + "sp-inherents", "sp-io", "sp-keystore", "sp-rpc", "sp-runtime", "sp-state-machine", + "sp-timestamp", + "sp-transaction-storage-proof", "sp-version", "sp-weights", "substrate-rpc-client", @@ -13720,11 +13778,12 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.89.1" +version = "0.100.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5d3e08b13876f96dd55608d03cd4883a0545884932d5adf11925876c96daef" +checksum = "64b20236ab624147dfbb62cf12a19aaf66af0e41b8398838b66e997d07d269d4" dependencies = [ "indexmap", + "url", ] [[package]] @@ -13738,9 +13797,9 @@ dependencies = [ [[package]] name = "wasmtime" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a10dc9784d8c3a33c970e3939180424955f08af2e7f20368ec02685a0e8f065" +checksum = "9010891d0b8e367c3be94ca35d7bc25c1de3240463bb1d61bcfc8c2233c4e0d0" dependencies = [ "anyhow", "bincode", @@ -13761,23 +13820,23 @@ dependencies = [ "wasmtime-environ", "wasmtime-jit", "wasmtime-runtime", - "windows-sys 0.36.1", + "windows-sys 0.42.0", ] [[package]] name = "wasmtime-asm-macros" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee4dbdc6daf68528cad1275ac91e3f51848ce9824385facc94c759f529decdf8" +checksum = "65805c663eaa8257b910666f6d4b056b5c7329750da754ba5df54f3af7dbf35c" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-cache" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f507f3fa1ee1b2f9a83644e2514242b1dfe580782c0eb042f1ef70255bc4ffe" +checksum = "2049ddfc1b10efc3c5591d0e84b9570ca50478f8818f3bfabb1a467918f53fb4" dependencies = [ "anyhow", "base64", @@ -13785,19 +13844,19 @@ dependencies = [ "directories-next", "file-per-thread-logger", "log", - "rustix 0.35.9", + "rustix", "serde", - "sha2 0.9.8", + "sha2 0.10.2", "toml 0.5.10", - "windows-sys 0.36.1", + "windows-sys 0.42.0", "zstd", ] [[package]] name = "wasmtime-cranelift" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f03cf79d982fc68e94ba0bea6a300a3b94621c4eb9705eece0a4f06b235a3b5" +checksum = "3f9065cad6a724fa838ec8497567e0b23acc26417bb2449f8d9d2021925c72f2" dependencies = [ "anyhow", "cranelift-codegen", @@ -13816,9 +13875,9 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c587c62e91c5499df62012b87b88890d0eb470b2ffecc5964e9da967b70c77c" +checksum = "4f964bb0b91fa021b8d1b488c62cc77b346c1dae6e3ebd010050b57c1f2ca657" dependencies = [ "anyhow", "cranelift-entity", @@ -13835,9 +13894,9 @@ dependencies = [ [[package]] name = "wasmtime-jit" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "047839b5dabeae5424a078c19b8cc897e5943a7fadc69e3d888b9c9a897666b3" +checksum = "b7a1d06f5d109539e0168fc74fa65e3948ac8dac3bb8cdbd08b62b36a0ae27b8" dependencies = [ "addr2line 0.17.0", "anyhow", @@ -13848,32 +13907,42 @@ dependencies = [ "log", "object 0.29.0", "rustc-demangle", - "rustix 0.35.9", "serde", "target-lexicon", - "thiserror", "wasmtime-environ", "wasmtime-jit-debug", + "wasmtime-jit-icache-coherence", "wasmtime-runtime", - "windows-sys 0.36.1", + "windows-sys 0.42.0", ] [[package]] name = "wasmtime-jit-debug" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b299569abf6f99b7b8e020afaf84a700e8636c6a42e242069267322cd5818235" +checksum = "f76ef2e410329aaf8555ac6571d6fe07711be0646dcdf7ff3ab750a42ed2e583" dependencies = [ "object 0.29.0", "once_cell", - "rustix 0.35.9", + "rustix", +] + +[[package]] +name = "wasmtime-jit-icache-coherence" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec1fd0f0dd79e7cc0f55b102e320d7c77ab76cd272008a8fd98e25b5777e2636" +dependencies = [ + "cfg-if", + "libc", + "windows-sys 0.42.0", ] [[package]] name = "wasmtime-runtime" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae79e0515160bd5abee5df50a16c4eb8db9f71b530fc988ae1d9ce34dcb8dd01" +checksum = "271aef9b4ca2e953a866293683f2db33cda46f6933c5e431e68d8373723d4ab6" dependencies = [ "anyhow", "cc", @@ -13886,19 +13955,18 @@ dependencies = [ "memoffset 0.6.5", "paste", "rand 0.8.5", - "rustix 0.35.9", - "thiserror", + "rustix", "wasmtime-asm-macros", "wasmtime-environ", "wasmtime-jit-debug", - "windows-sys 0.36.1", + "windows-sys 0.42.0", ] [[package]] name = "wasmtime-types" -version = "1.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "790cf43ee8e2d5dad1780af30f00d7a972b74725fb1e4f90c28d62733819b185" +checksum = "b18144b0e45479a830ac9fcebfc71a16d90dc72d8ebd5679700eb3bfe974d7df" dependencies = [ "cranelift-entity", "serde", @@ -14169,7 +14237,7 @@ dependencies = [ [[package]] name = "westend-runtime" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "bitvec", "frame-benchmarking", @@ -14213,6 +14281,7 @@ dependencies = [ "pallet-society", "pallet-staking", "pallet-staking-reward-curve", + "pallet-staking-runtime-api", "pallet-state-trie-migration", "pallet-sudo", "pallet-timestamp", @@ -14260,7 +14329,7 @@ dependencies = [ [[package]] name = "westend-runtime-constants" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "frame-support", "polkadot-primitives", @@ -14302,6 +14371,7 @@ dependencies = [ "pallet-collator-selection", "pallet-multisig", "pallet-nfts", + "pallet-nfts-runtime-api", "pallet-proxy", "pallet-session", "pallet-timestamp", @@ -14348,6 +14418,16 @@ dependencies = [ "libc", ] +[[package]] +name = "wide" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "feff0a412894d67223777b6cc8d68c0dab06d52d95e9890d5f2d47f10dd9366c" +dependencies = [ + "bytemuck", + "safe_arch", +] + [[package]] name = "widestring" version = "0.5.1" @@ -14651,15 +14731,15 @@ dependencies = [ [[package]] name = "xcm" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ + "bounded-collections", "derivative", "impl-trait-for-tuples", "log", "parity-scale-codec", "scale-info", "serde", - "sp-core", "sp-weights", "xcm-procedural", ] @@ -14667,7 +14747,7 @@ dependencies = [ [[package]] name = "xcm-builder" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "frame-support", "frame-system", @@ -14688,7 +14768,7 @@ dependencies = [ [[package]] name = "xcm-executor" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "environmental", "frame-benchmarking", @@ -14708,7 +14788,7 @@ dependencies = [ [[package]] name = "xcm-procedural" version = "0.9.37" -source = "git+https://github.com/paritytech/polkadot?branch=master#f0e1ed0bab6d5cb542b84fa0ad464609198dd255" +source = "git+https://github.com/paritytech/polkadot?branch=master#a1ceba005eecee10490b2dc5ee5169cb41282c39" dependencies = [ "Inflector", "proc-macro2", diff --git a/client/cli/Cargo.toml b/client/cli/Cargo.toml index 8de3104e464..e45d367f7d8 100644 --- a/client/cli/Cargo.toml +++ b/client/cli/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Parity Technologies "] edition = "2021" [dependencies] -clap = { version = "4.1.4", features = ["derive"] } +clap = { version = "4.1.6", features = ["derive"] } codec = { package = "parity-scale-codec", version = "3.0.0" } url = "2.3.1" diff --git a/client/collator/src/lib.rs b/client/collator/src/lib.rs index dc04288fb72..a931201f6cc 100644 --- a/client/collator/src/lib.rs +++ b/client/collator/src/lib.rs @@ -26,10 +26,7 @@ use sc_client_api::BlockBackend; use sp_api::{ApiExt, ProvideRuntimeApi}; use sp_consensus::BlockStatus; use sp_core::traits::SpawnNamed; -use sp_runtime::{ - generic::BlockId, - traits::{Block as BlockT, HashFor, Header as HeaderT, Zero}, -}; +use sp_runtime::traits::{Block as BlockT, HashFor, Header as HeaderT, Zero}; use cumulus_client_consensus_common::ParachainConsensus; use polkadot_node_primitives::{ @@ -154,10 +151,9 @@ where header: &Block::Header, ) -> Result, sp_api::ApiError> { let runtime_api = self.runtime_api.runtime_api(); - let block_id = BlockId::Hash(block_hash); let api_version = - match runtime_api.api_version::>(&block_id)? { + match runtime_api.api_version::>(block_hash)? { Some(version) => version, None => { tracing::error!( @@ -171,10 +167,10 @@ where let collation_info = if api_version < 2 { #[allow(deprecated)] runtime_api - .collect_collation_info_before_version_2(&block_id)? + .collect_collation_info_before_version_2(block_hash)? .into_latest(header.encode().into()) } else { - runtime_api.collect_collation_info(&block_id, header)? + runtime_api.collect_collation_info(block_hash, header)? }; Ok(Some(collation_info)) @@ -198,11 +194,34 @@ where .ok() .flatten()?; + let upward_messages = collation_info + .upward_messages + .try_into() + .map_err(|e| { + tracing::error!( + target: LOG_TARGET, + error = ?e, + "Number of upward messages should not be greater than `MAX_UPWARD_MESSAGE_NUM`", + ) + }) + .ok()?; + let horizontal_messages = collation_info + .horizontal_messages + .try_into() + .map_err(|e| { + tracing::error!( + target: LOG_TARGET, + error = ?e, + "Number of horizontal messages should not be greater than `MAX_HORIZONTAL_MESSAGE_NUM`", + ) + }) + .ok()?; + Some(Collation { - upward_messages: collation_info.upward_messages, + upward_messages, new_validation_code: collation_info.new_validation_code, processed_downward_messages: collation_info.processed_downward_messages, - horizontal_messages: collation_info.horizontal_messages, + horizontal_messages, hrmp_watermark: collation_info.hrmp_watermark, head_data: collation_info.head_data, proof_of_validity: MaybeCompressedPoV::Compressed(pov), @@ -396,9 +415,8 @@ mod tests { _: PHash, validation_data: &PersistedValidationData, ) -> Option> { - let block_id = BlockId::Hash(parent.hash()); let builder = self.client.init_block_builder_at( - &block_id, + parent.hash(), Some(validation_data.clone()), Default::default(), ); diff --git a/client/consensus/aura/Cargo.toml b/client/consensus/aura/Cargo.toml index f1836bf0efb..92eed4351e8 100644 --- a/client/consensus/aura/Cargo.toml +++ b/client/consensus/aura/Cargo.toml @@ -8,7 +8,7 @@ edition = "2021" [dependencies] async-trait = "0.1.63" codec = { package = "parity-scale-codec", version = "3.0.0", features = [ "derive" ] } -futures = "0.3.25" +futures = "0.3.26" tracing = "0.1.37" # Substrate diff --git a/client/consensus/common/Cargo.toml b/client/consensus/common/Cargo.toml index c992c263593..913e63cfbdc 100644 --- a/client/consensus/common/Cargo.toml +++ b/client/consensus/common/Cargo.toml @@ -9,7 +9,7 @@ edition = "2021" async-trait = "0.1.63" codec = { package = "parity-scale-codec", version = "3.0.0", features = [ "derive" ] } dyn-clone = "1.0.10" -futures = "0.3.25" +futures = "0.3.26" log = "0.4.17" tracing = "0.1.37" @@ -28,6 +28,7 @@ polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = cumulus-primitives-core = { path = "../../../primitives/core" } cumulus-relay-chain-interface = { path = "../../relay-chain-interface" } cumulus-client-pov-recovery = { path = "../../pov-recovery" } +schnellru = "0.2.1" [dev-dependencies] futures-timer = "3.0.2" diff --git a/client/consensus/common/src/parachain_consensus.rs b/client/consensus/common/src/parachain_consensus.rs index 9bd2e144663..17e07fb3b91 100644 --- a/client/consensus/common/src/parachain_consensus.rs +++ b/client/consensus/common/src/parachain_consensus.rs @@ -18,11 +18,12 @@ use sc_client_api::{ Backend, BlockBackend, BlockImportNotification, BlockchainEvents, Finalizer, UsageProvider, }; use sc_consensus::{BlockImport, BlockImportParams, ForkChoiceStrategy}; +use schnellru::{ByLength, LruMap}; use sp_blockchain::Error as ClientError; use sp_consensus::{BlockOrigin, BlockStatus}; use sp_runtime::traits::{Block as BlockT, Header as HeaderT}; -use cumulus_client_pov_recovery::{RecoveryDelay, RecoveryKind, RecoveryRequest}; +use cumulus_client_pov_recovery::{RecoveryKind, RecoveryRequest}; use cumulus_relay_chain_interface::{RelayChainInterface, RelayChainResult}; use polkadot_primitives::{Hash as PHash, Id as ParaId, OccupiedCoreAssumption}; @@ -30,16 +31,60 @@ use polkadot_primitives::{Hash as PHash, Id as ParaId, OccupiedCoreAssumption}; use codec::Decode; use futures::{channel::mpsc::Sender, pin_mut, select, FutureExt, Stream, StreamExt}; -use std::{sync::Arc, time::Duration}; +use std::sync::Arc; const LOG_TARGET: &str = "cumulus-consensus"; +const FINALIZATION_CACHE_SIZE: u32 = 40; -// Delay range to trigger explicit requests. -// The chosen value doesn't have any special meaning, a random delay within the order of -// seconds in practice should be a good enough to allow a quick recovery without DOSing -// the relay chain. -const RECOVERY_DELAY: RecoveryDelay = - RecoveryDelay { min: Duration::ZERO, max: Duration::from_secs(30) }; +fn handle_new_finalized_head( + parachain: &Arc

, + finalized_head: Vec, + last_seen_finalized_hashes: &mut LruMap, +) where + Block: BlockT, + B: Backend, + P: Finalizer + UsageProvider + BlockchainEvents, +{ + let header = match Block::Header::decode(&mut &finalized_head[..]) { + Ok(header) => header, + Err(err) => { + tracing::debug!( + target: LOG_TARGET, + error = ?err, + "Could not decode parachain header while following finalized heads.", + ); + return + }, + }; + + let hash = header.hash(); + + last_seen_finalized_hashes.insert(hash, ()); + + // Only finalize if we are below the incoming finalized parachain head + if parachain.usage_info().chain.finalized_number < *header.number() { + tracing::debug!( + target: LOG_TARGET, + block_hash = ?hash, + "Attempting to finalize header.", + ); + if let Err(e) = parachain.finalize_block(hash, None, true) { + match e { + ClientError::UnknownBlock(_) => tracing::debug!( + target: LOG_TARGET, + block_hash = ?hash, + "Could not finalize block because it is unknown.", + ), + _ => tracing::warn!( + target: LOG_TARGET, + error = ?e, + block_hash = ?hash, + "Failed to finalize block", + ), + } + } + } +} /// Follow the finalized head of the given parachain. /// @@ -48,57 +93,75 @@ const RECOVERY_DELAY: RecoveryDelay = async fn follow_finalized_head(para_id: ParaId, parachain: Arc

, relay_chain: R) where Block: BlockT, - P: Finalizer + UsageProvider, + P: Finalizer + UsageProvider + BlockchainEvents, R: RelayChainInterface + Clone, B: Backend, { let finalized_heads = match finalized_heads(relay_chain, para_id).await { - Ok(finalized_heads_stream) => finalized_heads_stream, + Ok(finalized_heads_stream) => finalized_heads_stream.fuse(), Err(err) => { tracing::error!(target: LOG_TARGET, error = ?err, "Unable to retrieve finalized heads stream."); return }, }; + let mut imported_blocks = parachain.import_notification_stream().fuse(); + pin_mut!(finalized_heads); - loop { - let finalized_head = if let Some(h) = finalized_heads.next().await { - h - } else { - tracing::debug!(target: LOG_TARGET, "Stopping following finalized head."); - return - }; + // We use this cache to finalize blocks that are imported late. + // For example, a block that has been recovered via PoV-Recovery + // on a full node can have several minutes delay. With this cache + // we have some "memory" of recently finalized blocks. + let mut last_seen_finalized_hashes = LruMap::new(ByLength::new(FINALIZATION_CACHE_SIZE)); - let header = match Block::Header::decode(&mut &finalized_head[..]) { - Ok(header) => header, - Err(err) => { - tracing::debug!( - target: LOG_TARGET, - error = ?err, - "Could not decode parachain header while following finalized heads.", - ); - continue + loop { + select! { + fin = finalized_heads.next() => { + match fin { + Some(finalized_head) => + handle_new_finalized_head(¶chain, finalized_head, &mut last_seen_finalized_hashes), + None => { + tracing::debug!(target: LOG_TARGET, "Stopping following finalized head."); + return + } + } }, - }; - - let hash = header.hash(); - - // don't finalize the same block multiple times. - if parachain.usage_info().chain.finalized_hash != hash { - if let Err(e) = parachain.finalize_block(hash, None, true) { - match e { - ClientError::UnknownBlock(_) => tracing::debug!( - target: LOG_TARGET, - block_hash = ?hash, - "Could not finalize block because it is unknown.", - ), - _ => tracing::warn!( - target: LOG_TARGET, - error = ?e, - block_hash = ?hash, - "Failed to finalize block", - ), + imported = imported_blocks.next() => { + match imported { + Some(imported_block) => { + // When we see a block import that is already finalized, we immediately finalize it. + if last_seen_finalized_hashes.peek(&imported_block.hash).is_some() { + tracing::debug!( + target: LOG_TARGET, + block_hash = ?imported_block.hash, + "Setting newly imported block as finalized.", + ); + + if let Err(e) = parachain.finalize_block(imported_block.hash, None, true) { + match e { + ClientError::UnknownBlock(_) => tracing::debug!( + target: LOG_TARGET, + block_hash = ?imported_block.hash, + "Could not finalize block because it is unknown.", + ), + _ => tracing::warn!( + target: LOG_TARGET, + error = ?e, + block_hash = ?imported_block.hash, + "Failed to finalize block", + ), + } + } + } + }, + None => { + tracing::debug!( + target: LOG_TARGET, + "Stopping following imported blocks.", + ); + return + } } } } @@ -266,7 +329,11 @@ async fn handle_new_block_imported( let unset_best_header = unset_best_header_opt .take() .expect("We checked above that the value is set; qed"); - + tracing::debug!( + target: LOG_TARGET, + ?unset_hash, + "Importing block as new best for parachain.", + ); import_block_as_new_best(unset_hash, unset_best_header, parachain).await; }, state => tracing::debug!( @@ -315,7 +382,11 @@ async fn handle_new_best_parachain_head( match parachain.block_status(hash) { Ok(BlockStatus::InChainWithState) => { unset_best_header.take(); - + tracing::debug!( + target: LOG_TARGET, + ?hash, + "Importing block as new best for parachain.", + ); import_block_as_new_best(hash, parachain_head, parachain).await; }, Ok(BlockStatus::InChainPruned) => { @@ -338,8 +409,7 @@ async fn handle_new_best_parachain_head( // Best effort channel to actively encourage block recovery. // An error here is not fatal; the relay chain continuously re-announces // the best block, thus we will have other opportunities to retry. - let req = - RecoveryRequest { hash, delay: RECOVERY_DELAY, kind: RecoveryKind::Full }; + let req = RecoveryRequest { hash, kind: RecoveryKind::Full }; if let Err(err) = recovery_chan_tx.try_send(req) { tracing::warn!( target: LOG_TARGET, diff --git a/client/consensus/common/src/tests.rs b/client/consensus/common/src/tests.rs index 5cc4936a622..ba596e2d2c5 100644 --- a/client/consensus/common/src/tests.rs +++ b/client/consensus/common/src/tests.rs @@ -25,7 +25,7 @@ use cumulus_relay_chain_interface::{ RelayChainInterface, RelayChainResult, SessionIndex, StorageValue, ValidatorId, }; use cumulus_test_client::{ - runtime::{Block, Header}, + runtime::{Block, Hash, Header}, Backend, Client, InitBlockBuilder, TestClientBuilder, TestClientBuilderExt, }; use futures::{channel::mpsc, executor::block_on, select, FutureExt, Stream, StreamExt}; @@ -33,7 +33,6 @@ use futures_timer::Delay; use sc_client_api::{blockchain::Backend as _, Backend as _, UsageProvider}; use sc_consensus::{BlockImport, BlockImportParams, ForkChoiceStrategy}; use sp_consensus::{BlockOrigin, BlockStatus}; -use sp_runtime::generic::BlockId; use std::{ collections::{BTreeMap, HashMap}, pin::Pin, @@ -85,6 +84,10 @@ impl RelayChainInterface for Relaychain { unimplemented!("Not needed for test") } + async fn finalized_block_hash(&self) -> RelayChainResult { + unimplemented!("Not needed for test") + } + async fn retrieve_dmq_contents( &self, _: ParaId, @@ -208,14 +211,13 @@ impl RelayChainInterface for Relaychain { fn build_block( builder: &B, - at: Option>, + at: Option, timestamp: Option, ) -> Block { let builder = match at { Some(at) => match timestamp { - Some(ts) => - builder.init_block_builder_with_timestamp(&at, None, Default::default(), ts), - None => builder.init_block_builder_at(&at, None, Default::default()), + Some(ts) => builder.init_block_builder_with_timestamp(at, None, Default::default(), ts), + None => builder.init_block_builder_at(at, None, Default::default()), }, None => builder.init_block_builder(None, Default::default()), }; @@ -263,7 +265,7 @@ fn build_and_import_block_ext>( origin: BlockOrigin, import_as_best: bool, importer: &mut I, - at: Option>, + at: Option, timestamp: Option, ) -> Block { let block = build_block(builder, at, timestamp); @@ -421,8 +423,7 @@ fn follow_finalized_does_not_stop_on_unknown_block() { let block = build_and_import_block(client.clone(), false); let unknown_block = { - let block_builder = - client.init_block_builder_at(&BlockId::Hash(block.hash()), None, Default::default()); + let block_builder = client.init_block_builder_at(block.hash(), None, Default::default()); block_builder.build().unwrap().block }; @@ -471,8 +472,7 @@ fn follow_new_best_sets_best_after_it_is_imported() { let block = build_and_import_block(client.clone(), false); let unknown_block = { - let block_builder = - client.init_block_builder_at(&BlockId::Hash(block.hash()), None, Default::default()); + let block_builder = client.init_block_builder_at(block.hash(), None, Default::default()); block_builder.build().unwrap().block }; @@ -604,7 +604,7 @@ fn prune_blocks_on_level_overflow() { None, None, ); - let id0 = BlockId::Hash(block0.header.hash()); + let id0 = block0.header.hash(); let blocks1 = (0..LEVEL_LIMIT) .into_iter() @@ -619,7 +619,7 @@ fn prune_blocks_on_level_overflow() { ) }) .collect::>(); - let id10 = BlockId::Hash(blocks1[0].header.hash()); + let id10 = blocks1[0].header.hash(); let blocks2 = (0..2) .into_iter() @@ -717,7 +717,7 @@ fn restore_limit_monitor() { None, None, ); - let id00 = BlockId::Hash(block00.header.hash()); + let id00 = block00.header.hash(); let blocks1 = (0..LEVEL_LIMIT + 1) .into_iter() @@ -732,7 +732,7 @@ fn restore_limit_monitor() { ) }) .collect::>(); - let id10 = BlockId::Hash(blocks1[0].header.hash()); + let id10 = blocks1[0].header.hash(); let _ = (0..LEVEL_LIMIT) .into_iter() diff --git a/client/consensus/relay-chain/Cargo.toml b/client/consensus/relay-chain/Cargo.toml index 0b7a8dcbb41..e085536ab5b 100644 --- a/client/consensus/relay-chain/Cargo.toml +++ b/client/consensus/relay-chain/Cargo.toml @@ -7,7 +7,7 @@ edition = "2021" [dependencies] async-trait = "0.1.63" -futures = "0.3.25" +futures = "0.3.26" parking_lot = "0.12.1" tracing = "0.1.37" diff --git a/client/consensus/relay-chain/src/import_queue.rs b/client/consensus/relay-chain/src/import_queue.rs index d77ffdd3e3e..4bfefed26b4 100644 --- a/client/consensus/relay-chain/src/import_queue.rs +++ b/client/consensus/relay-chain/src/import_queue.rs @@ -27,10 +27,7 @@ use sp_block_builder::BlockBuilder as BlockBuilderApi; use sp_blockchain::Result as ClientResult; use sp_consensus::{error::Error as ConsensusError, CacheKeyId}; use sp_inherents::{CreateInherentDataProviders, InherentDataProvider}; -use sp_runtime::{ - generic::BlockId, - traits::{Block as BlockT, Header as HeaderT}, -}; +use sp_runtime::traits::{Block as BlockT, Header as HeaderT}; /// A verifier that just checks the inherents. pub struct Verifier { @@ -83,11 +80,7 @@ where let inherent_res = self .client .runtime_api() - .check_inherents( - &BlockId::Hash(*block.header().parent_hash()), - block.clone(), - inherent_data, - ) + .check_inherents(*block.header().parent_hash(), block.clone(), inherent_data) .map_err(|e| format!("{:?}", e))?; if !inherent_res.ok() { diff --git a/client/network/Cargo.toml b/client/network/Cargo.toml index 58d36c703b8..05a55ed8b03 100644 --- a/client/network/Cargo.toml +++ b/client/network/Cargo.toml @@ -8,7 +8,7 @@ edition = "2021" [dependencies] async-trait = "0.1.63" codec = { package = "parity-scale-codec", version = "3.0.0", features = [ "derive" ] } -futures = "0.3.25" +futures = "0.3.26" futures-timer = "3.0.2" parking_lot = "0.12.1" tracing = "0.1.37" @@ -31,7 +31,7 @@ cumulus-relay-chain-interface = { path = "../relay-chain-interface" } [dev-dependencies] portpicker = "0.1.1" -tokio = { version = "1.24.2", features = ["macros"] } +tokio = { version = "1.25.0", features = ["macros"] } url = "2.3.1" # Substrate diff --git a/client/network/src/lib.rs b/client/network/src/lib.rs index 3a03e313434..5a2043ab5f7 100644 --- a/client/network/src/lib.rs +++ b/client/network/src/lib.rs @@ -36,7 +36,6 @@ use polkadot_primitives::{ use codec::{Decode, DecodeAll, Encode}; use futures::{channel::oneshot, future::FutureExt, Future}; - use std::{convert::TryFrom, fmt, marker::PhantomData, pin::Pin, sync::Arc}; #[cfg(test)] diff --git a/client/network/src/tests.rs b/client/network/src/tests.rs index 518920c020e..dc820a00c52 100644 --- a/client/network/src/tests.rs +++ b/client/network/src/tests.rs @@ -84,6 +84,9 @@ impl RelayChainInterface for DummyRelayChainInterface { async fn best_block_hash(&self) -> RelayChainResult { Ok(self.relay_backend.blockchain().info().best_hash) } + async fn finalized_block_hash(&self) -> RelayChainResult { + Ok(self.relay_backend.blockchain().info().finalized_hash) + } async fn retrieve_dmq_contents( &self, @@ -133,8 +136,8 @@ impl RelayChainInterface for DummyRelayChainInterface { validation_code_hash: ValidationCodeHash::from(PHash::random()), }, commitments: CandidateCommitments { - upward_messages: Vec::new(), - horizontal_messages: Vec::new(), + upward_messages: Default::default(), + horizontal_messages: Default::default(), new_validation_code: None, head_data: HeadData(Vec::new()), processed_downward_messages: 0, diff --git a/client/pov-recovery/Cargo.toml b/client/pov-recovery/Cargo.toml index 1ec225c969d..04be9dcc8af 100644 --- a/client/pov-recovery/Cargo.toml +++ b/client/pov-recovery/Cargo.toml @@ -7,7 +7,7 @@ edition = "2021" [dependencies] codec = { package = "parity-scale-codec", version = "3.0.0", features = [ "derive" ] } -futures = "0.3.25" +futures = "0.3.26" futures-timer = "3.0.2" rand = "0.8.5" tracing = "0.1.37" @@ -28,9 +28,10 @@ polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = # Cumulus cumulus-primitives-core = { path = "../../primitives/core" } cumulus-relay-chain-interface = {path = "../relay-chain-interface"} +async-trait = "0.1.64" [dev-dependencies] -tokio = { version = "1.24.2", features = ["macros"] } +tokio = { version = "1.25.0", features = ["macros"] } portpicker = "0.1.1" # Cumulus diff --git a/client/pov-recovery/src/active_candidate_recovery.rs b/client/pov-recovery/src/active_candidate_recovery.rs index caae3615a85..feb09d005ce 100644 --- a/client/pov-recovery/src/active_candidate_recovery.rs +++ b/client/pov-recovery/src/active_candidate_recovery.rs @@ -18,12 +18,13 @@ use sp_runtime::traits::Block as BlockT; use polkadot_node_primitives::AvailableData; use polkadot_node_subsystem::messages::AvailabilityRecoveryMessage; -use polkadot_overseer::Handle as OverseerHandle; use futures::{channel::oneshot, stream::FuturesUnordered, Future, FutureExt, StreamExt}; use std::{collections::HashSet, pin::Pin}; +use crate::RecoveryHandle; + /// The active candidate recovery. /// /// This handles the candidate recovery and tracks the activate recoveries. @@ -34,12 +35,12 @@ pub(crate) struct ActiveCandidateRecovery { >, /// The block hashes of the candidates currently being recovered. candidates: HashSet, - overseer_handle: OverseerHandle, + recovery_handle: Box, } impl ActiveCandidateRecovery { - pub fn new(overseer_handle: OverseerHandle) -> Self { - Self { recoveries: Default::default(), candidates: Default::default(), overseer_handle } + pub fn new(recovery_handle: Box) -> Self { + Self { recoveries: Default::default(), candidates: Default::default(), recovery_handle } } /// Recover the given `candidate`. @@ -50,8 +51,8 @@ impl ActiveCandidateRecovery { ) { let (tx, rx) = oneshot::channel(); - self.overseer_handle - .send_msg( + self.recovery_handle + .send_recovery_msg( AvailabilityRecoveryMessage::RecoverAvailableData( candidate.receipt.clone(), candidate.session_index, @@ -90,11 +91,6 @@ impl ActiveCandidateRecovery { ); } - /// Returns if the given `candidate` is being recovered. - pub fn is_being_recovered(&self, candidate: &Block::Hash) -> bool { - self.candidates.contains(candidate) - } - /// Waits for the next recovery. /// /// If the returned [`AvailableData`] is `None`, it means that the recovery failed. diff --git a/client/pov-recovery/src/lib.rs b/client/pov-recovery/src/lib.rs index 2eed968d5f9..60fbdab310c 100644 --- a/client/pov-recovery/src/lib.rs +++ b/client/pov-recovery/src/lib.rs @@ -29,14 +29,18 @@ //! //! 1. For every included relay chain block we note the backed candidate of our parachain. If the //! block belonging to the PoV is already known, we do nothing. Otherwise we start -//! a timer that waits a random time between 0..relay_chain_slot_length before starting to recover +//! a timer that waits for a randomized time inside a specified interval before starting to recover //! the PoV. //! //! 2. If between starting and firing the timer the block is imported, we skip the recovery of the //! PoV. //! -//! 3. If the timer fired we recover the PoV using the relay chain PoV recovery protocol. After it -//! is recovered, we restore the block and import it. +//! 3. If the timer fired we recover the PoV using the relay chain PoV recovery protocol. +//! +//! 4a. After it is recovered, we restore the block and import it. +//! +//! 4b. Since we are trying to recover pending candidates, availability is not guaranteed. If the block +//! PoV is not yet available, we retry. //! //! If we need to recover multiple PoV blocks (which should hopefully not happen in real life), we //! make sure that the blocks are imported in the correct order. @@ -47,6 +51,7 @@ use sp_consensus::{BlockOrigin, BlockStatus}; use sp_runtime::traits::{Block as BlockT, Header as HeaderT, NumberFor}; use polkadot_node_primitives::{AvailableData, POV_BOMB_LIMIT}; +use polkadot_node_subsystem::messages::AvailabilityRecoveryMessage; use polkadot_overseer::Handle as OverseerHandle; use polkadot_primitives::{ CandidateReceipt, CommittedCandidateReceipt, Id as ParaId, SessionIndex, @@ -60,10 +65,10 @@ use futures::{ channel::mpsc::Receiver, select, stream::FuturesUnordered, Future, FutureExt, Stream, StreamExt, }; use futures_timer::Delay; -use rand::{thread_rng, Rng}; +use rand::{distributions::Uniform, prelude::Distribution, thread_rng}; use std::{ - collections::{HashMap, VecDeque}, + collections::{HashMap, HashSet, VecDeque}, pin::Pin, sync::Arc, time::Duration, @@ -74,6 +79,28 @@ use active_candidate_recovery::ActiveCandidateRecovery; const LOG_TARGET: &str = "cumulus-pov-recovery"; +/// Test-friendly wrapper trait for the overseer handle. +/// Can be used to simulate failing recovery requests. +#[async_trait::async_trait] +pub trait RecoveryHandle: Send { + async fn send_recovery_msg( + &mut self, + message: AvailabilityRecoveryMessage, + origin: &'static str, + ); +} + +#[async_trait::async_trait] +impl RecoveryHandle for OverseerHandle { + async fn send_recovery_msg( + &mut self, + message: AvailabilityRecoveryMessage, + origin: &'static str, + ) { + self.send_msg(message, origin).await; + } +} + /// Type of recovery to trigger. #[derive(Debug, PartialEq)] pub enum RecoveryKind { @@ -87,24 +114,30 @@ pub enum RecoveryKind { pub struct RecoveryRequest { /// Hash of the last block to recover. pub hash: Block::Hash, - /// Recovery delay range. Randomizing the start of the recovery within this interval - /// can be used to prevent self-DOSing if the recovery request is part of a - /// distributed protocol and there is the possibility that multiple actors are - /// requiring to perform the recovery action at approximately the same time. - pub delay: RecoveryDelay, /// Recovery type. pub kind: RecoveryKind, } /// The delay between observing an unknown block and triggering the recovery of a block. +/// Randomizing the start of the recovery within this interval +/// can be used to prevent self-DOSing if the recovery request is part of a +/// distributed protocol and there is the possibility that multiple actors are +/// requiring to perform the recovery action at approximately the same time. #[derive(Clone, Copy)] -pub struct RecoveryDelay { +pub struct RecoveryDelayRange { /// Start recovering after `min` delay. pub min: Duration, /// Start recovering before `max` delay. pub max: Duration, } +impl RecoveryDelayRange { + /// Produce a randomized duration between `min` and `max`. + fn duration(&self) -> Duration { + Uniform::from(self.min..=self.max).sample(&mut thread_rng()) + } +} + /// Represents an outstanding block candidate. struct Candidate { receipt: CandidateReceipt, @@ -112,9 +145,66 @@ struct Candidate { block_number: NumberFor, parent_hash: Block::Hash, // Lazy recovery has been submitted. + // Should be true iff a block is either queued to be recovered or + // recovery is currently in progress. waiting_recovery: bool, } +/// Queue that is used to decide when to start PoV-recovery operations. +struct RecoveryQueue { + recovery_delay_range: RecoveryDelayRange, + // Queue that keeps the hashes of blocks to be recovered. + recovery_queue: VecDeque, + // Futures that resolve when a new recovery should be started. + signaling_queue: FuturesUnordered + Send>>>, +} + +impl RecoveryQueue { + pub fn new(recovery_delay_range: RecoveryDelayRange) -> Self { + Self { + recovery_delay_range, + recovery_queue: Default::default(), + signaling_queue: Default::default(), + } + } + + /// Add hash of a block that should go to the end of the recovery queue. + /// A new recovery will be signaled after `delay` has passed. + pub fn push_recovery(&mut self, hash: Block::Hash) { + let delay = self.recovery_delay_range.duration(); + tracing::debug!( + target: LOG_TARGET, + block_hash = ?hash, + "Adding block to queue and adding new recovery slot in {:?} sec", + delay.as_secs(), + ); + self.recovery_queue.push_back(hash); + self.signaling_queue.push( + async move { + Delay::new(delay).await; + } + .boxed(), + ); + } + + /// Get the next hash for block recovery. + pub async fn next_recovery(&mut self) -> Block::Hash { + loop { + if let Some(_) = self.signaling_queue.next().await { + if let Some(hash) = self.recovery_queue.pop_front() { + return hash + } else { + tracing::error!( + target: LOG_TARGET, + "Recovery was signaled, but no candidate hash available. This is a bug." + ); + }; + } + futures::pending!() + } + } +} + /// Encapsulates the logic of the pov recovery. pub struct PoVRecovery { /// All the pending candidates that we are waiting for to be imported or that need to be @@ -122,21 +212,22 @@ pub struct PoVRecovery { candidates: HashMap>, /// A stream of futures that resolve to hashes of candidates that need to be recovered. /// - /// The candidates to the hashes are stored in `pending_candidates`. If a candidate is not + /// The candidates to the hashes are stored in `candidates`. If a candidate is not /// available anymore in this map, it means that it was already imported. - next_candidate_to_recover: FuturesUnordered + Send>>>, + candidate_recovery_queue: RecoveryQueue, active_candidate_recovery: ActiveCandidateRecovery, /// Blocks that wait that the parent is imported. /// /// Uses parent -> blocks mapping. waiting_for_parent: HashMap>, - recovery_delay: RecoveryDelay, parachain_client: Arc, parachain_import_queue: Box>, relay_chain_interface: RC, para_id: ParaId, /// Explicit block recovery requests channel. recovery_chan_rx: Receiver>, + /// Blocks that we are retrying currently + candidates_in_retry: HashSet, } impl PoVRecovery @@ -146,8 +237,8 @@ where { /// Create a new instance. pub fn new( - overseer_handle: OverseerHandle, - recovery_delay: RecoveryDelay, + recovery_handle: Box, + recovery_delay_range: RecoveryDelayRange, parachain_client: Arc, parachain_import_queue: Box>, relay_chain_interface: RCInterface, @@ -156,14 +247,14 @@ where ) -> Self { Self { candidates: HashMap::new(), - next_candidate_to_recover: Default::default(), - active_candidate_recovery: ActiveCandidateRecovery::new(overseer_handle), - recovery_delay, + candidate_recovery_queue: RecoveryQueue::new(recovery_delay_range), + active_candidate_recovery: ActiveCandidateRecovery::new(recovery_handle), waiting_for_parent: HashMap::new(), parachain_client, parachain_import_queue, relay_chain_interface, para_id, + candidates_in_retry: HashSet::new(), recovery_chan_rx, } } @@ -210,15 +301,11 @@ where // If required, triggers a lazy recovery request that will eventually be blocked // if in the meantime the block is imported. - self.recover(RecoveryRequest { - hash, - delay: self.recovery_delay, - kind: RecoveryKind::Simple, - }); + self.recover(RecoveryRequest { hash, kind: RecoveryKind::Simple }); } - /// Handle an imported block. - fn handle_block_imported(&mut self, block_hash: &Block::Hash) { + /// Block is no longer waiting for recovery + fn clear_waiting_recovery(&mut self, block_hash: &Block::Hash) { self.candidates.get_mut(block_hash).map(|candidate| { // Prevents triggering an already enqueued recovery request candidate.waiting_recovery = false; @@ -241,9 +328,9 @@ where } } - /// Clear `waiting_for_parent` from the given `hash` and do this recursively for all child - /// blocks. - fn clear_waiting_for_parent(&mut self, hash: Block::Hash) { + /// Clear `waiting_for_parent` and `waiting_recovery` for the candidate with `hash`. + /// Also clears children blocks waiting for this parent. + fn reset_candidate(&mut self, hash: Block::Hash) { let mut blocks_to_delete = vec![hash]; while let Some(delete) = blocks_to_delete.pop() { @@ -251,6 +338,7 @@ where blocks_to_delete.extend(childs.iter().map(BlockT::hash)); } } + self.clear_waiting_recovery(&hash); } /// Handle a recovered candidate. @@ -260,11 +348,25 @@ where available_data: Option, ) { let available_data = match available_data { - Some(data) => data, - None => { - self.clear_waiting_for_parent(block_hash); - return + Some(data) => { + self.candidates_in_retry.remove(&block_hash); + data }, + None => + if self.candidates_in_retry.insert(block_hash) { + tracing::debug!(target: LOG_TARGET, ?block_hash, "Recovery failed, retrying."); + self.candidate_recovery_queue.push_recovery(block_hash); + return + } else { + tracing::warn!( + target: LOG_TARGET, + ?block_hash, + "Unable to recover block after retry.", + ); + self.candidates_in_retry.remove(&block_hash); + self.reset_candidate(block_hash); + return + }, }; let raw_block_data = match sp_maybe_compressed_blob::decompress( @@ -275,8 +377,7 @@ where Err(error) => { tracing::debug!(target: LOG_TARGET, ?error, "Failed to decompress PoV"); - self.clear_waiting_for_parent(block_hash); - + self.reset_candidate(block_hash); return }, }; @@ -290,8 +391,7 @@ where "Failed to decode parachain block data from recovered PoV", ); - self.clear_waiting_for_parent(block_hash); - + self.reset_candidate(block_hash); return }, }; @@ -302,12 +402,17 @@ where match self.parachain_client.block_status(parent) { Ok(BlockStatus::Unknown) => { - if self.active_candidate_recovery.is_being_recovered(&parent) { + // If the parent block is currently being recovered or is scheduled to be recovered, + // we want to wait for the parent. + let parent_scheduled_for_recovery = + self.candidates.get(&parent).map_or(false, |parent| parent.waiting_recovery); + if parent_scheduled_for_recovery { tracing::debug!( target: LOG_TARGET, ?block_hash, parent_hash = ?parent, - "Parent is still being recovered, waiting.", + parent_scheduled_for_recovery, + "Waiting for recovery of parent.", ); self.waiting_for_parent.entry(parent).or_default().push(block); @@ -320,8 +425,7 @@ where "Parent not found while trying to import recovered block.", ); - self.clear_waiting_for_parent(block_hash); - + self.reset_candidate(block_hash); return } }, @@ -333,8 +437,7 @@ where "Error while checking block status", ); - self.clear_waiting_for_parent(block_hash); - + self.reset_candidate(block_hash); return }, // Any other status is fine to "ignore/accept" @@ -383,10 +486,10 @@ where /// Attempts an explicit recovery of one or more blocks. pub fn recover(&mut self, req: RecoveryRequest) { - let RecoveryRequest { mut hash, delay, kind } = req; + let RecoveryRequest { mut hash, kind } = req; let mut to_recover = Vec::new(); - let do_recover = loop { + loop { let candidate = match self.candidates.get_mut(&hash) { Some(candidate) => candidate, None => { @@ -395,7 +498,7 @@ where block_hash = ?hash, "Cound not recover. Block was never announced as candidate" ); - break false + return }, }; @@ -404,7 +507,7 @@ where candidate.waiting_recovery = true; to_recover.push(hash); }, - Ok(_) => break true, + Ok(_) => break, Err(e) => { tracing::error!( target: LOG_TARGET, @@ -412,36 +515,22 @@ where block_hash = ?hash, "Failed to get block status", ); - break false + for hash in to_recover { + self.clear_waiting_recovery(&hash); + } + return }, } if kind == RecoveryKind::Simple { - break true + break } hash = candidate.parent_hash; - }; + } - if do_recover { - for hash in to_recover.into_iter().rev() { - let delay = - delay.min + delay.max.saturating_sub(delay.min).mul_f64(thread_rng().gen()); - tracing::debug!( - target: LOG_TARGET, - block_hash = ?hash, - "Starting {:?} block recovery in {:?} sec", - kind, - delay.as_secs(), - ); - self.next_candidate_to_recover.push( - async move { - Delay::new(delay).await; - hash - } - .boxed(), - ); - } + for hash in to_recover.into_iter().rev() { + self.candidate_recovery_queue.push_recovery(hash); } } @@ -480,7 +569,7 @@ where }, imported = imported_blocks.next() => { if let Some(imported) = imported { - self.handle_block_imported(&imported.hash); + self.clear_waiting_recovery(&imported.hash); } else { tracing::debug!(target: LOG_TARGET, "Imported blocks stream ended"); return; @@ -494,10 +583,8 @@ where return; } }, - next_to_recover = self.next_candidate_to_recover.next() => { - if let Some(block_hash) = next_to_recover { - self.recover_candidate(block_hash).await; - } + next_to_recover = self.candidate_recovery_queue.next_recovery().fuse() => { + self.recover_candidate(next_to_recover).await; }, (block_hash, available_data) = self.active_candidate_recovery.wait_for_recovery().fuse() => diff --git a/client/relay-chain-inprocess-interface/Cargo.toml b/client/relay-chain-inprocess-interface/Cargo.toml index 13f1ad95494..555489df30c 100644 --- a/client/relay-chain-inprocess-interface/Cargo.toml +++ b/client/relay-chain-inprocess-interface/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] async-trait = "0.1.63" -futures = "0.3.25" +futures = "0.3.26" futures-timer = "3.0.2" # Substrate diff --git a/client/relay-chain-inprocess-interface/src/lib.rs b/client/relay-chain-inprocess-interface/src/lib.rs index ee6b8f07f17..3aa1fbe55a3 100644 --- a/client/relay-chain-inprocess-interface/src/lib.rs +++ b/client/relay-chain-inprocess-interface/src/lib.rs @@ -19,9 +19,8 @@ use std::{pin::Pin, sync::Arc, time::Duration}; use async_trait::async_trait; use cumulus_primitives_core::{ relay_chain::{ - runtime_api::ParachainHost, Block as PBlock, BlockId, CommittedCandidateReceipt, - Hash as PHash, Header as PHeader, InboundHrmpMessage, OccupiedCoreAssumption, SessionIndex, - ValidatorId, + runtime_api::ParachainHost, Block as PBlock, CommittedCandidateReceipt, Hash as PHash, + Header as PHeader, InboundHrmpMessage, OccupiedCoreAssumption, SessionIndex, ValidatorId, }, InboundDownwardMessage, ParaId, PersistedValidationData, }; @@ -93,7 +92,7 @@ where relay_parent: PHash, ) -> RelayChainResult> { Ok(self.full_client.runtime_api().dmq_contents_with_context( - &BlockId::hash(relay_parent), + relay_parent, sp_core::ExecutionContext::Importing, para_id, )?) @@ -105,7 +104,7 @@ where relay_parent: PHash, ) -> RelayChainResult>> { Ok(self.full_client.runtime_api().inbound_hrmp_channels_contents_with_context( - &BlockId::hash(relay_parent), + relay_parent, sp_core::ExecutionContext::Importing, para_id, )?) @@ -118,7 +117,7 @@ where occupied_core_assumption: OccupiedCoreAssumption, ) -> RelayChainResult> { Ok(self.full_client.runtime_api().persisted_validation_data( - &BlockId::Hash(hash), + hash, para_id, occupied_core_assumption, )?) @@ -129,18 +128,15 @@ where hash: PHash, para_id: ParaId, ) -> RelayChainResult> { - Ok(self - .full_client - .runtime_api() - .candidate_pending_availability(&BlockId::Hash(hash), para_id)?) + Ok(self.full_client.runtime_api().candidate_pending_availability(hash, para_id)?) } async fn session_index_for_child(&self, hash: PHash) -> RelayChainResult { - Ok(self.full_client.runtime_api().session_index_for_child(&BlockId::Hash(hash))?) + Ok(self.full_client.runtime_api().session_index_for_child(hash)?) } async fn validators(&self, hash: PHash) -> RelayChainResult> { - Ok(self.full_client.runtime_api().validators(&BlockId::Hash(hash))?) + Ok(self.full_client.runtime_api().validators(hash)?) } async fn import_notification_stream( @@ -167,6 +163,10 @@ where Ok(self.backend.blockchain().info().best_hash) } + async fn finalized_block_hash(&self) -> RelayChainResult { + Ok(self.backend.blockchain().info().finalized_hash) + } + async fn is_major_syncing(&self) -> RelayChainResult { Ok(self.sync_oracle.is_major_syncing()) } diff --git a/client/relay-chain-interface/Cargo.toml b/client/relay-chain-interface/Cargo.toml index 9db86372752..5f637129a7a 100644 --- a/client/relay-chain-interface/Cargo.toml +++ b/client/relay-chain-interface/Cargo.toml @@ -15,9 +15,9 @@ sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "mas sp-state-machine = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "master" } -tokio = { version = "1.24.2", features = ["sync"] } -futures = "0.3.25" +tokio = { version = "1.25.0", features = ["sync"] } +futures = "0.3.26" async-trait = "0.1.63" thiserror = "1.0.38" jsonrpsee-core = "0.16.2" -parity-scale-codec = "3.2.1" +parity-scale-codec = "3.4.0" diff --git a/client/relay-chain-interface/src/lib.rs b/client/relay-chain-interface/src/lib.rs index 19ffa5fabc1..01ebe9f5d8a 100644 --- a/client/relay-chain-interface/src/lib.rs +++ b/client/relay-chain-interface/src/lib.rs @@ -105,6 +105,9 @@ pub trait RelayChainInterface: Send + Sync { /// Get the hash of the current best block. async fn best_block_hash(&self) -> RelayChainResult; + /// Get the hash of the finalized block. + async fn finalized_block_hash(&self) -> RelayChainResult; + /// Returns the whole contents of the downward message queue for the parachain we are collating /// for. /// @@ -248,6 +251,10 @@ where (**self).best_block_hash().await } + async fn finalized_block_hash(&self) -> RelayChainResult { + (**self).finalized_block_hash().await + } + async fn is_major_syncing(&self) -> RelayChainResult { (**self).is_major_syncing().await } diff --git a/client/relay-chain-minimal-node/Cargo.toml b/client/relay-chain-minimal-node/Cargo.toml index 5f6fe748344..5cdbd405a23 100644 --- a/client/relay-chain-minimal-node/Cargo.toml +++ b/client/relay-chain-minimal-node/Cargo.toml @@ -41,6 +41,6 @@ array-bytes = "6.0" lru = "0.9" tracing = "0.1.37" async-trait = "0.1.63" -futures = "0.3.25" +futures = "0.3.26" url = "2.2.2" -tokio = { version = "1.24.2", features = ["macros"] } +tokio = { version = "1.25.0", features = ["macros"] } diff --git a/client/relay-chain-minimal-node/src/blockchain_rpc_client.rs b/client/relay-chain-minimal-node/src/blockchain_rpc_client.rs index 21b526d7426..e13a689c0dd 100644 --- a/client/relay-chain-minimal-node/src/blockchain_rpc_client.rs +++ b/client/relay-chain-minimal-node/src/blockchain_rpc_client.rs @@ -254,12 +254,15 @@ impl RuntimeApiSubsystemClient for BlockChainRpcClient { Ok(self.rpc_client.parachain_host_session_info(at, index).await?) } - async fn session_info_before_version_2( + async fn session_executor_params( &self, at: Hash, - index: polkadot_primitives::SessionIndex, - ) -> Result, sp_api::ApiError> { - Ok(self.rpc_client.parachain_host_session_info_before_version_2(at, index).await?) + session_index: polkadot_primitives::SessionIndex, + ) -> Result, sp_api::ApiError> { + Ok(self + .rpc_client + .parachain_host_session_executor_params(at, session_index) + .await?) } async fn submit_pvf_check_statement( diff --git a/client/relay-chain-minimal-node/src/network.rs b/client/relay-chain-minimal-node/src/network.rs index 9bd31ad7600..9c58ab35847 100644 --- a/client/relay-chain-minimal-node/src/network.rs +++ b/client/relay-chain-minimal-node/src/network.rs @@ -108,7 +108,7 @@ pub(crate) fn build_collator_network( return } - network_worker.await + network_worker.run().await; }); let network_starter = NetworkStarter::new(network_start_tx); diff --git a/client/relay-chain-rpc-interface/Cargo.toml b/client/relay-chain-rpc-interface/Cargo.toml index 71069678ff6..70afef3c7a7 100644 --- a/client/relay-chain-rpc-interface/Cargo.toml +++ b/client/relay-chain-rpc-interface/Cargo.toml @@ -19,15 +19,15 @@ sp-state-machine = { git = "https://github.com/paritytech/substrate", branch = " sp-storage = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "master" } -tokio = { version = "1.24.2", features = ["sync"] } +tokio = { version = "1.25.0", features = ["sync"] } -futures = "0.3.25" +futures = "0.3.26" futures-timer = "3.0.2" -parity-scale-codec = "3.2.1" +parity-scale-codec = "3.4.0" jsonrpsee = { version = "0.16.2", features = ["ws-client"] } tracing = "0.1.37" async-trait = "0.1.63" url = "2.3.1" -serde_json = "1.0.91" +serde_json = "1.0.93" serde = "1.0.152" lru = "0.9.0" diff --git a/client/relay-chain-rpc-interface/src/lib.rs b/client/relay-chain-rpc-interface/src/lib.rs index 1c67da728e0..748a2b26e68 100644 --- a/client/relay-chain-rpc-interface/src/lib.rs +++ b/client/relay-chain-rpc-interface/src/lib.rs @@ -123,6 +123,10 @@ impl RelayChainInterface for RelayChainRpcInterface { self.rpc_client.chain_get_head(None).await } + async fn finalized_block_hash(&self) -> RelayChainResult { + self.rpc_client.chain_get_finalized_head().await + } + async fn is_major_syncing(&self) -> RelayChainResult { self.rpc_client.system_health().await.map(|h| h.is_syncing) } diff --git a/client/relay-chain-rpc-interface/src/rpc_client.rs b/client/relay-chain-rpc-interface/src/rpc_client.rs index 6d3be6c4b32..0d3b2c8492e 100644 --- a/client/relay-chain-rpc-interface/src/rpc_client.rs +++ b/client/relay-chain-rpc-interface/src/rpc_client.rs @@ -17,9 +17,9 @@ use crate::reconnecting_ws_client::ReconnectingWsClient; use cumulus_primitives_core::{ relay_chain::{ - CandidateCommitments, CandidateEvent, CandidateHash, CommittedCandidateReceipt, CoreState, - DisputeState, GroupRotationInfo, Hash as RelayHash, Header as RelayHeader, - InboundHrmpMessage, OccupiedCoreAssumption, OldV1SessionInfo, PvfCheckStatement, + vstaging::ExecutorParams, CandidateCommitments, CandidateEvent, CandidateHash, + CommittedCandidateReceipt, CoreState, DisputeState, GroupRotationInfo, Hash as RelayHash, + Header as RelayHeader, InboundHrmpMessage, OccupiedCoreAssumption, PvfCheckStatement, ScrapedOnChainVotes, SessionIndex, SessionInfo, ValidationCode, ValidationCodeHash, ValidatorId, ValidatorIndex, ValidatorSignature, }, @@ -135,17 +135,6 @@ impl RelayChainRpcClient { self.call_remote_runtime_function("BabeApi_current_epoch", at, None::<()>).await } - /// Old method to fetch v1 session info. - pub async fn parachain_host_session_info_before_version_2( - &self, - at: RelayHash, - index: SessionIndex, - ) -> Result, RelayChainError> { - // The function in wasm never changes/gets augmented with a version - self.call_remote_runtime_function("ParachainHost_session_info", at, Some(index)) - .await - } - /// Scrape dispute relevant from on-chain, backing votes and resolved disputes. pub async fn parachain_host_on_chain_votes( &self, @@ -388,6 +377,20 @@ impl RelayChainRpcClient { .await } + /// Get the executor parameters for the given session, if stored + pub async fn parachain_host_session_executor_params( + &self, + at: RelayHash, + session_index: SessionIndex, + ) -> Result, RelayChainError> { + self.call_remote_runtime_function( + "ParachainHost_session_executor_params", + at, + Some(session_index), + ) + .await + } + /// Get header at specified hash pub async fn chain_get_header( &self, diff --git a/client/service/Cargo.toml b/client/service/Cargo.toml index 3c9108c8c71..14240d03d90 100644 --- a/client/service/Cargo.toml +++ b/client/service/Cargo.toml @@ -6,19 +6,25 @@ edition = "2021" [dependencies] parking_lot = "0.12.1" -futures = "0.3.24" +futures = "0.3.26" # Substrate sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-consensus = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-service = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-sysinfo = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-telemetry = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-network = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-utils = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-network-transactions = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-api = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-core = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "master" } # Polkadot polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = "master" } @@ -28,7 +34,8 @@ cumulus-client-cli = { path = "../cli" } cumulus-client-collator = { path = "../collator" } cumulus-client-consensus-common = { path = "../consensus/common" } cumulus-client-pov-recovery = { path = "../pov-recovery" } +cumulus-client-network = { path = "../network" } cumulus-primitives-core = { path = "../../primitives/core" } cumulus-relay-chain-interface = { path = "../relay-chain-interface" } cumulus-relay-chain-inprocess-interface = { path = "../relay-chain-inprocess-interface" } -cumulus-relay-chain-minimal-node = { path = "../relay-chain-minimal-node" } +cumulus-relay-chain-minimal-node = { path = "../relay-chain-minimal-node" } \ No newline at end of file diff --git a/client/service/src/lib.rs b/client/service/src/lib.rs index 8906ee23181..fa9981bb886 100644 --- a/client/service/src/lib.rs +++ b/client/service/src/lib.rs @@ -20,31 +20,37 @@ use cumulus_client_cli::CollatorOptions; use cumulus_client_consensus_common::ParachainConsensus; -use cumulus_client_pov_recovery::{PoVRecovery, RecoveryDelay}; +use cumulus_client_network::BlockAnnounceValidator; +use cumulus_client_pov_recovery::{PoVRecovery, RecoveryDelayRange, RecoveryHandle}; use cumulus_primitives_core::{CollectCollationInfo, ParaId}; use cumulus_relay_chain_inprocess_interface::build_inprocess_relay_chain; use cumulus_relay_chain_interface::{RelayChainInterface, RelayChainResult}; use cumulus_relay_chain_minimal_node::build_minimal_relay_chain_node; -use polkadot_primitives::CollatorPair; - +use futures::{ + channel::{mpsc, oneshot}, + FutureExt, StreamExt, +}; +use polkadot_primitives::{CollatorPair, OccupiedCoreAssumption}; use sc_client_api::{ - Backend as BackendT, BlockBackend, BlockchainEvents, Finalizer, UsageProvider, + Backend as BackendT, BlockBackend, BlockchainEvents, Finalizer, ProofProvider, UsageProvider, }; -use sc_consensus::{import_queue::ImportQueueService, BlockImport}; -use sc_service::{Configuration, TaskManager}; -use sc_telemetry::TelemetryWorkerHandle; +use sc_consensus::{import_queue::ImportQueueService, BlockImport, ImportQueue}; +use sc_network::{config::SyncMode, NetworkService}; +use sc_network_transactions::TransactionsHandlerController; +use sc_service::{Configuration, NetworkStarter, SpawnTaskHandle, TaskManager, WarpSyncParams}; +use sc_telemetry::{log, TelemetryWorkerHandle}; +use sc_utils::mpsc::TracingUnboundedSender; use sp_api::ProvideRuntimeApi; -use sp_blockchain::HeaderBackend; -use sp_core::traits::SpawnNamed; -use sp_runtime::traits::Block as BlockT; - -use futures::channel::mpsc; +use sp_blockchain::{HeaderBackend, HeaderMetadata}; +use sp_core::{traits::SpawnNamed, Decode}; +use sp_runtime::traits::{Block as BlockT, BlockIdTo}; use std::{sync::Arc, time::Duration}; // Given the sporadic nature of the explicit recovery operation and the // possibility to retry infinite times this value is more than enough. // In practice here we expect no more than one queued messages. const RECOVERY_CHAN_SIZE: usize = 8; +const LOG_TARGET_SYNC: &str = "sync::cumulus"; /// Parameters given to [`start_collator`]. pub struct StartCollatorParams<'a, Block: BlockT, BS, Client, RCInterface, Spawner> { @@ -59,6 +65,7 @@ pub struct StartCollatorParams<'a, Block: BlockT, BS, Client, RCInterface, Spawn pub import_queue: Box>, pub collator_key: CollatorPair, pub relay_chain_slot_duration: Duration, + pub recovery_handle: Box, } /// Start a collator node for a parachain. @@ -79,6 +86,7 @@ pub async fn start_collator<'a, Block, BS, Client, Backend, RCInterface, Spawner import_queue, collator_key, relay_chain_slot_duration, + recovery_handle, }: StartCollatorParams<'a, Block, BS, Client, RCInterface, Spawner>, ) -> sc_service::error::Result<()> where @@ -113,15 +121,12 @@ where .spawn_essential_handle() .spawn("cumulus-consensus", None, consensus); - let overseer_handle = relay_chain_interface - .overseer_handle() - .map_err(|e| sc_service::Error::Application(Box::new(e)))?; - let pov_recovery = PoVRecovery::new( - overseer_handle.clone(), + recovery_handle, // We want that collators wait at maximum the relay chain slot duration before starting - // to recover blocks. - RecoveryDelay { min: core::time::Duration::ZERO, max: relay_chain_slot_duration }, + // to recover blocks. Additionally, we wait at least half the slot time to give the + // relay chain the chance to increase availability. + RecoveryDelayRange { min: relay_chain_slot_duration / 2, max: relay_chain_slot_duration }, client.clone(), import_queue, relay_chain_interface.clone(), @@ -132,6 +137,10 @@ where task_manager .spawn_essential_handle() .spawn("cumulus-pov-recovery", None, pov_recovery.run()); + + let overseer_handle = relay_chain_interface + .overseer_handle() + .map_err(|e| sc_service::Error::Application(Box::new(e)))?; cumulus_client_collator::start_collator(cumulus_client_collator::StartCollatorParams { runtime_api: client, block_status, @@ -156,6 +165,7 @@ pub struct StartFullNodeParams<'a, Block: BlockT, Client, RCInterface> { pub announce_block: Arc>) + Send + Sync>, pub relay_chain_slot_duration: Duration, pub import_queue: Box>, + pub recovery_handle: Box, } /// Start a full node for a parachain. @@ -171,6 +181,7 @@ pub fn start_full_node( para_id, relay_chain_slot_duration, import_queue, + recovery_handle, }: StartFullNodeParams, ) -> sc_service::error::Result<()> where @@ -200,18 +211,17 @@ where .spawn_essential_handle() .spawn("cumulus-consensus", None, consensus); - let overseer_handle = relay_chain_interface - .overseer_handle() - .map_err(|e| sc_service::Error::Application(Box::new(e)))?; - let pov_recovery = PoVRecovery::new( - overseer_handle, + recovery_handle, // Full nodes should at least wait 2.5 minutes (assuming 6 seconds slot duration) and // in maximum 5 minutes before starting to recover blocks. Collators should already start // the recovery way before full nodes try to recover a certain block and then share the // block with the network using "the normal way". Full nodes are just the "last resort" // for block recovery. - RecoveryDelay { min: relay_chain_slot_duration * 25, max: relay_chain_slot_duration * 50 }, + RecoveryDelayRange { + min: relay_chain_slot_duration * 25, + max: relay_chain_slot_duration * 50, + }, client, import_queue, relay_chain_interface, @@ -264,3 +274,172 @@ pub async fn build_relay_chain_interface( ) } } + +/// Parameters given to [`build_network`]. +pub struct BuildNetworkParams< + 'a, + Block: BlockT, + Client: ProvideRuntimeApi + + BlockBackend + + HeaderMetadata + + HeaderBackend + + BlockIdTo + + 'static, + RCInterface, + IQ, +> where + Client::Api: sp_transaction_pool::runtime_api::TaggedTransactionQueue, +{ + pub parachain_config: &'a Configuration, + pub client: Arc, + pub transaction_pool: Arc>, + pub para_id: ParaId, + pub relay_chain_interface: RCInterface, + pub spawn_handle: SpawnTaskHandle, + pub import_queue: IQ, +} + +/// Build the network service, the network status sinks and an RPC sender. +pub async fn build_network<'a, Block, Client, RCInterface, IQ>( + BuildNetworkParams { + parachain_config, + client, + transaction_pool, + para_id, + spawn_handle, + relay_chain_interface, + import_queue, + }: BuildNetworkParams<'a, Block, Client, RCInterface, IQ>, +) -> sc_service::error::Result<( + Arc>, + TracingUnboundedSender>, + TransactionsHandlerController, + NetworkStarter, +)> +where + Block: BlockT, + Client: UsageProvider + + HeaderBackend + + sp_consensus::block_validation::Chain + + Send + + Sync + + BlockBackend + + BlockchainEvents + + ProvideRuntimeApi + + HeaderMetadata + + BlockIdTo + + ProofProvider + + 'static, + Client::Api: CollectCollationInfo + + sp_transaction_pool::runtime_api::TaggedTransactionQueue, + for<'b> &'b Client: BlockImport, + RCInterface: RelayChainInterface + Clone + 'static, + IQ: ImportQueue + 'static, +{ + let warp_sync_params = match parachain_config.network.sync_mode { + SyncMode::Warp => { + let target_block = warp_sync_get::( + para_id, + relay_chain_interface.clone(), + spawn_handle.clone(), + ); + Some(WarpSyncParams::WaitForTarget(target_block)) + }, + _ => None, + }; + + let block_announce_validator = BlockAnnounceValidator::new(relay_chain_interface, para_id); + let block_announce_validator_builder = move |_| Box::new(block_announce_validator) as Box<_>; + + sc_service::build_network(sc_service::BuildNetworkParams { + config: parachain_config, + client, + transaction_pool, + spawn_handle, + import_queue, + block_announce_validator_builder: Some(Box::new(block_announce_validator_builder)), + warp_sync_params, + }) +} + +/// Creates a new background task to wait for the relay chain to sync up and retrieve the parachain header +fn warp_sync_get( + para_id: ParaId, + relay_chain_interface: RCInterface, + spawner: SpawnTaskHandle, +) -> oneshot::Receiver<::Header> +where + B: BlockT + 'static, + RCInterface: RelayChainInterface + 'static, +{ + let (sender, receiver) = oneshot::channel::(); + spawner.spawn( + "cumulus-parachain-wait-for-target-block", + None, + async move { + log::debug!( + target: "cumulus-network", + "waiting for announce block in a background task...", + ); + + let _ = wait_for_target_block::(sender, para_id, relay_chain_interface) + .await + .map_err(|e| { + log::error!( + target: LOG_TARGET_SYNC, + "Unable to determine parachain target block {:?}", + e + ) + }); + } + .boxed(), + ); + + receiver +} + +/// Waits for the relay chain to have finished syncing and then gets the parachain header that corresponds to the last finalized relay chain block. +async fn wait_for_target_block( + sender: oneshot::Sender<::Header>, + para_id: ParaId, + relay_chain_interface: RCInterface, +) -> Result<(), Box> +where + B: BlockT + 'static, + RCInterface: RelayChainInterface + Send + 'static, +{ + let mut imported_blocks = relay_chain_interface.import_notification_stream().await?.fuse(); + while imported_blocks.next().await.is_some() { + let is_syncing = relay_chain_interface.is_major_syncing().await.map_err(|e| { + Box::::from(format!( + "Unable to determine sync status. {e}" + )) + })?; + + if !is_syncing { + let relay_chain_best_hash = relay_chain_interface + .finalized_block_hash() + .await + .map_err(|e| Box::new(e) as Box<_>)?; + + let validation_data = relay_chain_interface + .persisted_validation_data( + relay_chain_best_hash, + para_id, + OccupiedCoreAssumption::TimedOut, + ) + .await + .map_err(|e| format!("{e:?}"))? + .ok_or_else(|| "Could not find parachain head in relay chain")?; + + let target_block = B::Header::decode(&mut &validation_data.parent_head.0[..]) + .map_err(|e| format!("Failed to decode parachain head: {e}"))?; + + log::debug!(target: LOG_TARGET_SYNC, "Target block reached {:?}", target_block); + let _ = sender.send(target_block); + return Ok(()) + } + } + + Err("Stopping following imported blocks. Could not determine parachain target block".into()) +} diff --git a/pallets/parachain-system/Cargo.toml b/pallets/parachain-system/Cargo.toml index abd333470eb..a1018cf65bf 100644 --- a/pallets/parachain-system/Cargo.toml +++ b/pallets/parachain-system/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" description = "Base pallet for cumulus-based parachains" [dependencies] -bytes = { version = "1.3.0", default-features = false } +bytes = { version = "1.4.0", default-features = false } codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] } environmental = { version = "1.1.4", default-features = false } impl-trait-for-tuples = "0.2.1" diff --git a/pallets/parachain-system/src/validate_block/implementation.rs b/pallets/parachain-system/src/validate_block/implementation.rs index 537f067e1c6..3a5f90e0495 100644 --- a/pallets/parachain-system/src/validate_block/implementation.rs +++ b/pallets/parachain-system/src/validate_block/implementation.rs @@ -26,14 +26,14 @@ use polkadot_parachain::primitives::{ HeadData, RelayChainBlockNumber, ValidationParams, ValidationResult, }; -use codec::{Decode, Encode}; +use codec::Encode; use frame_support::traits::{ExecuteBlock, ExtrinsicCall, Get, IsSubType}; use sp_core::storage::{ChildInfo, StateVersion}; use sp_externalities::{set_and_run_with_externalities, Externalities}; use sp_io::KillStorageResult; use sp_runtime::traits::{Block as BlockT, Extrinsic, HashFor, Header as HeaderT}; -use sp_std::{mem, prelude::*}; +use sp_std::prelude::*; use sp_trie::MemoryDB; type TrieBackend = sp_state_machine::TrieBackend>, HashFor>; @@ -187,9 +187,13 @@ where E::execute_block(block); let new_validation_code = crate::NewValidationCode::::get(); - let upward_messages = crate::UpwardMessages::::get(); + let upward_messages = crate::UpwardMessages::::get().try_into().expect( + "Number of upward messages should not be greater than `MAX_UPWARD_MESSAGE_NUM`", + ); let processed_downward_messages = crate::ProcessedDownwardMessages::::get(); - let horizontal_messages = crate::HrmpOutboundMessages::::get(); + let horizontal_messages = crate::HrmpOutboundMessages::::get().try_into().expect( + "Number of horizontal messages should not be greater than `MAX_HORIZONTAL_MESSAGE_NUM`", + ); let hrmp_watermark = crate::HrmpWatermark::::get(); let head_data = diff --git a/pallets/session-benchmarking/Cargo.toml b/pallets/session-benchmarking/Cargo.toml index e30b460161f..11f985633e0 100644 --- a/pallets/session-benchmarking/Cargo.toml +++ b/pallets/session-benchmarking/Cargo.toml @@ -13,7 +13,7 @@ readme = "README.md" targets = ["x86_64-unknown-linux-gnu"] [dependencies] -parity-scale-codec = { version = "3.2.1", default-features = false } +parity-scale-codec = { version = "3.4.0", default-features = false } sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "master" } sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "master" } frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "master" } diff --git a/pallets/xcmp-queue/Cargo.toml b/pallets/xcmp-queue/Cargo.toml index 38c26ca29f5..48ebde53311 100644 --- a/pallets/xcmp-queue/Cargo.toml +++ b/pallets/xcmp-queue/Cargo.toml @@ -61,5 +61,6 @@ runtime-benchmarks = [ "frame-benchmarking/runtime-benchmarks", "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks", + "xcm-builder/runtime-benchmarks", ] try-runtime = ["frame-support/try-runtime"] diff --git a/parachain-template/node/Cargo.toml b/parachain-template/node/Cargo.toml index f2c1f38338b..d64ab0702ae 100644 --- a/parachain-template/node/Cargo.toml +++ b/parachain-template/node/Cargo.toml @@ -10,7 +10,7 @@ edition = "2021" build = "build.rs" [dependencies] -clap = { version = "4.1.4", features = ["derive"] } +clap = { version = "4.1.6", features = ["derive"] } log = "0.4.17" codec = { package = "parity-scale-codec", version = "3.0.0" } serde = { version = "1.0.152", features = ["derive"] } diff --git a/parachain-template/node/src/command.rs b/parachain-template/node/src/command.rs index 402d2621793..36e5ab635ac 100644 --- a/parachain-template/node/src/command.rs +++ b/parachain-template/node/src/command.rs @@ -229,9 +229,12 @@ pub fn run() -> Result<()> { }, #[cfg(feature = "try-runtime")] Some(Subcommand::TryRuntime(cmd)) => { + use parachain_template_runtime::MILLISECS_PER_BLOCK; + use sc_executor::{sp_wasm_interface::ExtendedHostFunctions, NativeExecutionDispatch}; + use try_runtime_cli::block_building_info::timestamp_with_aura_info; + let runner = cli.create_runner(cmd)?; - use sc_executor::{sp_wasm_interface::ExtendedHostFunctions, NativeExecutionDispatch}; type HostFunctionsOf = ExtendedHostFunctions< sp_io::SubstrateHostFunctions, ::ExtendHostFunctions, @@ -243,8 +246,15 @@ pub fn run() -> Result<()> { sc_service::TaskManager::new(runner.config().tokio_handle.clone(), *registry) .map_err(|e| format!("Error: {:?}", e))?; + let info_provider = timestamp_with_aura_info(MILLISECS_PER_BLOCK); + runner.async_run(|_| { - Ok((cmd.run::>(), task_manager)) + Ok(( + cmd.run::, _>(Some( + info_provider, + )), + task_manager, + )) }) }, #[cfg(not(feature = "try-runtime"))] diff --git a/parachain-template/node/src/service.rs b/parachain-template/node/src/service.rs index e5258e675e2..c6877f22b19 100644 --- a/parachain-template/node/src/service.rs +++ b/parachain-template/node/src/service.rs @@ -12,10 +12,9 @@ use cumulus_client_consensus_aura::{AuraConsensus, BuildAuraConsensusParams, Slo use cumulus_client_consensus_common::{ ParachainBlockImport as TParachainBlockImport, ParachainConsensus, }; -use cumulus_client_network::BlockAnnounceValidator; use cumulus_client_service::{ - build_relay_chain_interface, prepare_node_config, start_collator, start_full_node, - StartCollatorParams, StartFullNodeParams, + build_network, build_relay_chain_interface, prepare_node_config, start_collator, + start_full_node, BuildNetworkParams, StartCollatorParams, StartFullNodeParams, }; use cumulus_primitives_core::ParaId; use cumulus_relay_chain_interface::{RelayChainError, RelayChainInterface}; @@ -168,9 +167,6 @@ async fn start_node_impl( s => s.to_string().into(), })?; - let block_announce_validator = - BlockAnnounceValidator::new(relay_chain_interface.clone(), para_id); - let force_authoring = parachain_config.force_authoring; let validator = parachain_config.role.is_authority(); let prometheus_registry = parachain_config.prometheus_registry().cloned(); @@ -178,17 +174,16 @@ async fn start_node_impl( let import_queue_service = params.import_queue.service(); let (network, system_rpc_tx, tx_handler_controller, start_network) = - sc_service::build_network(sc_service::BuildNetworkParams { - config: ¶chain_config, + build_network(BuildNetworkParams { + parachain_config: ¶chain_config, client: client.clone(), transaction_pool: transaction_pool.clone(), + para_id, spawn_handle: task_manager.spawn_handle(), + relay_chain_interface: relay_chain_interface.clone(), import_queue: params.import_queue, - block_announce_validator_builder: Some(Box::new(|_| { - Box::new(block_announce_validator) - })), - warp_sync: None, - })?; + }) + .await?; if parachain_config.offchain_worker.enabled { sc_service::build_offchain_workers( @@ -256,6 +251,10 @@ async fn start_node_impl( let relay_chain_slot_duration = Duration::from_secs(6); + let overseer_handle = relay_chain_interface + .overseer_handle() + .map_err(|e| sc_service::Error::Application(Box::new(e)))?; + if validator { let parachain_consensus = build_consensus( client.clone(), @@ -284,6 +283,7 @@ async fn start_node_impl( import_queue: import_queue_service, collator_key: collator_key.expect("Command line arguments do not allow this. qed"), relay_chain_slot_duration, + recovery_handle: Box::new(overseer_handle), }; start_collator(params).await?; @@ -296,6 +296,7 @@ async fn start_node_impl( relay_chain_interface, relay_chain_slot_duration, import_queue: import_queue_service, + recovery_handle: Box::new(overseer_handle), }; start_full_node(params)?; diff --git a/parachains/chain-specs/bridge-hub-kusama.json b/parachains/chain-specs/bridge-hub-kusama.json index ae65db9a3df..f055a12680c 100644 --- a/parachains/chain-specs/bridge-hub-kusama.json +++ b/parachains/chain-specs/bridge-hub-kusama.json @@ -14,7 +14,13 @@ "/dns/kusama-bridge-hub-connect-ew1-0.polkadot.io/tcp/443/wss/p2p/12D3KooWPQQPivrqQ51kRTDc2R1mtqwKT4GGtk2rapkY4FrwHrEp", "/dns/kusama-bridge-hub-connect-ew1-1.polkadot.io/tcp/443/wss/p2p/12D3KooWPcF9Yk4gYrMju9CyWCV69hAFXbYsnxCLogwLGu9QFTRn", "/dns/kusama-bridge-hub-connect-ue4-0.polkadot.io/tcp/443/wss/p2p/12D3KooWMf1sVnJDTkKWtaThqvrgcSPLbfGXttSqbwhM2DJp9BUG", - "/dns/kusama-bridge-hub-connect-ue4-1.polkadot.io/tcp/443/wss/p2p/12D3KooWQaV7wMfNVKy2aMz4Lds3TTxgSDyZAUEnbAZMfD8rW3ow" + "/dns/kusama-bridge-hub-connect-ue4-1.polkadot.io/tcp/443/wss/p2p/12D3KooWQaV7wMfNVKy2aMz4Lds3TTxgSDyZAUEnbAZMfD8rW3ow", + "/dns/boot.stake.plus/tcp/41333/p2p/12D3KooWBzbs2jsXjG5dipktGPKaUm9XWvkmeJFsEAGkVt946Aa7", + "/dns/boot.stake.plus/tcp/41334/wss/p2p/12D3KooWBzbs2jsXjG5dipktGPKaUm9XWvkmeJFsEAGkVt946Aa7", + "/dns/boot.metaspan.io/tcp/26032/p2p/12D3KooWKfuSaZrLNz43PDgM4inMALXRHTSh2WBuqQtZRq8zmT1Z", + "/dns/boot.metaspan.io/tcp/26036/wss/p2p/12D3KooWKfuSaZrLNz43PDgM4inMALXRHTSh2WBuqQtZRq8zmT1Z", + "/dns/bridge-hub-kusama-bootnode.turboflakes.io/tcp/30615/p2p/12D3KooWE3dJXbwA5SQqbDNxHfj7BXJRcy2KiXWjJY4VUMKoa7S2", + "/dns/bridge-hub-kusama-bootnode.turboflakes.io/tcp/30715/wss/p2p/12D3KooWE3dJXbwA5SQqbDNxHfj7BXJRcy2KiXWjJY4VUMKoa7S2" ], "telemetryEndpoints": null, "protocolId": null, @@ -81,4 +87,4 @@ "childrenDefault": {} } } -} \ No newline at end of file +} diff --git a/parachains/chain-specs/bridge-hub-polkadot.json b/parachains/chain-specs/bridge-hub-polkadot.json index 99a4b0ff059..b317aab8df5 100644 --- a/parachains/chain-specs/bridge-hub-polkadot.json +++ b/parachains/chain-specs/bridge-hub-polkadot.json @@ -3,7 +3,14 @@ "id": "bridge-hub-polkadot", "chainType": "Live", "bootNodes": [ - "/ip4/127.0.0.1/tcp/30333/p2p/12D3KooWSJAGymLt7U5ArB6obnKVS4d2HzonGL6cEXWaQo4k26My" + "/dns/polkadot-bridge-hub-connect-a-0.polkadot.io/tcp/30334/p2p/12D3KooWAVQMhkXmc5ueSYasdsRWQbKus2YGZ6HDZUB4ViJMCxXy", + "/dns/polkadot-bridge-hub-connect-a-1.polkadot.io/tcp/30334/p2p/12D3KooWG4ypDHLKGCv4BZ6PuaGUwQHKAH6p2D6arR2uQ1eiR1T3", + "/dns/polkadot-bridge-hub-connect-b-0.polkadot.io/tcp/30334/p2p/12D3KooWCwGKxjpJXnx1mwXKvaxGQm769EM3b6Pg5vbU33wbhsNw", + "/dns/polkadot-bridge-hub-connect-b-1.polkadot.io/tcp/30334/p2p/12D3KooWLiSEdhriJUPdZKFtAjZrQncxN2ssEoDKVrt5mGM4Qu4J", + "/dns/polkadot-bridge-hub-connect-a-0.polkadot.io/tcp/443/wss/p2p/12D3KooWAVQMhkXmc5ueSYasdsRWQbKus2YGZ6HDZUB4ViJMCxXy", + "/dns/polkadot-bridge-hub-connect-a-1.polkadot.io/tcp/443/wss/p2p/12D3KooWG4ypDHLKGCv4BZ6PuaGUwQHKAH6p2D6arR2uQ1eiR1T3", + "/dns/polkadot-bridge-hub-connect-b-0.polkadot.io/tcp/443/wss/p2p/12D3KooWCwGKxjpJXnx1mwXKvaxGQm769EM3b6Pg5vbU33wbhsNw", + "/dns/polkadot-bridge-hub-connect-b-1.polkadot.io/tcp/443/wss/p2p/12D3KooWLiSEdhriJUPdZKFtAjZrQncxN2ssEoDKVrt5mGM4Qu4J" ], "telemetryEndpoints": null, "protocolId": null, @@ -22,39 +29,45 @@ "0x0d715f2646c8f85767b5d2764bb278264e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x15464cac3378d46f113cd5b7a4d71c84476f594316a7dfe49c1f352d95abdaf1": "0x00000000", "0x15464cac3378d46f113cd5b7a4d71c844e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x15464cac3378d46f113cd5b7a4d71c845579297f4dfb9609e7e4c2ebab9ce40a": "0x08d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48", + "0x15464cac3378d46f113cd5b7a4d71c845579297f4dfb9609e7e4c2ebab9ce40a": "0x105ae18c05a78be70e49f4495fdfca8389f99173d7f1b4019e077e24e15abd6e2eccc1177642b30456ecd401c75684a9c1cc1c529879d65cc65c32766fcd6b8a3d28d22cb1ad64189d654e3a0270dfcfac27fdbacb78fd65a11584bcce1f01e656d2a621a4e8851a00566daeb02c845da19f19f208f52ec456d4e77600fc41c314", "0x15464cac3378d46f113cd5b7a4d71c84579f5a43435b04a98d64da0cefe18505": "0x00a0acb9030000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef734abf5cb34d6244378cddbf18e849d96": "0x00000000c26f7b6800", + "0x26aa394eea5630e07c48ae0c9558cef734abf5cb34d6244378cddbf18e849d96": "0x0000000042db356800", "0x26aa394eea5630e07c48ae0c9558cef74e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x26aa394eea5630e07c48ae0c9558cef75684a022a34dd8bfa2baaf44f172b710": "0x01", "0x26aa394eea5630e07c48ae0c9558cef78a42f33323cb5ced3b44dd825fda9fcc": "0x4545454545454545454545454545454545454545454545454545454545454545", "0x26aa394eea5630e07c48ae0c9558cef7a44704b568d21667356a5a050c118746b4def25cfda6ef3a00000000": "0x4545454545454545454545454545454545454545454545454545454545454545", "0x26aa394eea5630e07c48ae0c9558cef7a7fd6c28836b9a28522dc924110cf439": "0x01", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94f9aea1afa791265fae359272badc1cf8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0x0000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9de1e86a9a8c739864cf3cc5ec2bea59fd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0x0000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95d8c4e0034bc36208a740f371f8bb3b1d2a621a4e8851a00566daeb02c845da19f19f208f52ec456d4e77600fc41c314": "0x0000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96bec8fda58278126c5774c03718a23c75ae18c05a78be70e49f4495fdfca8389f99173d7f1b4019e077e24e15abd6e2e": "0x0000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a445791c00e77ce0bb8202f63e548da4ccc1177642b30456ecd401c75684a9c1cc1c529879d65cc65c32766fcd6b8a3d": "0x0000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ed0583dc7b08b990b14d4f0d7acf521928d22cb1ad64189d654e3a0270dfcfac27fdbacb78fd65a11584bcce1f01e656": "0x0000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7f9cce9c888469bb1a0dceaa129672ef8": "0x69924c6272696467652d6875622d706f6c6b61646f74", "0x3a63": "0x", - "0x3a636f6465": "0x52bc537646db8e0528b52ffd0058d4c0043ed5c52c1250107868930e2c0b1635e96ae3c3a1e71d9ed1b0aa335731ede949554ffcd2a6417a47581b6467ad4a5feaab1e1ad25ec687499b11477984eec22479086941a035137a34696413b2f7de5b6e29654a32056013a7105512eee27cbf5a12d93ffab6df1b803828728701db4d4ae5d1b1dda6d8960c1e74f1a07bdbbf6afab7d93b876fd6cc6dce6d2613d4b1b27f4f46b1bdb7312aba73382b74e9cfa576a4f2e8d573f87c5fcaf7e47b3d906e7c72d10b729b3165db041c3401072f6bc1bed678b0c5aa6cb522ce398f1acf73ce39baf1d1192cadf1b063d001cef9174fc8d10a34e59dc32cb6eaac5427e6df6a45f8578300a7b671ea82f947d94d1f27e69ff36c27e36cd23a953f5a7d9c1839c54df9e8d5f43ce5cab7b706814e5594c3344e3b7483a7549e127d8723adee9f13f3aa04618a13f38f4ffb84de0eb619e86e42079dfb795c37a6db9b4bec6632599ba96e3f63b226d026242404454a0b74d903bd72e76fdab8b14197741db3b1696383beffbcd2785ed41a10f4f041d68c409ab126c36cceabdc3d415f58a33c7c0fb71993638e0cadc8c270c04bdcf2cf2315714bdc0282b805911d0f691cb28e1087e250dce2ae78c922e396cfc2a4208ccc2a7f1ee78b1be6236466c80e7756f970677d0fa143481f9fa2bbb944f3a9665dcd4837b96dd5f49e3f4685f9e7724bc3f6bccacf36305f79357d7b9c4e884f4eca184ea89a557e754232db1c87b1508085192fccbb30d041293c7fce0e279b78567ff866fd79cffe1e9f1e9c75fb07e75b66464587d025eb540e69fd790f6185860dc2383753e3b4cff0a9ddcab239afdb83efe71d49c0983163de7b2017f4b8d3f03efa0e15617fb49efef90ed33ae7eacc43e8189cf555f9cfb176bbfb7ca779569f9987ce9563d5ecac9a185cc7fd44bb3ed8ebcc12eea1eff09b4c772ed110565eb77f56f4e76ea612031d2e6af754470fbda275c41a11f8919ed6477bfcb239af2778723cf3cf593b4200169c918537b343b00cf9d179593ef595677fb3c22cb6e73bcdd367d7786eafee9fef0a81fe687d5204db7b54dad8b8b12d153e7a257dfb93f5d1ce5a36e775c3c409c57ddd300c1f8c91faec1affdc6947ae26e0a009ffa6fcd51ebd31c28f26b16b7ccfc627e78f4fce79f9bd21e8b9b6027b1e67f5a43bc716dbec398de7a337e6d5f4d5f695fcaaa2f5512c4e1923957c6aecb2a0437f8caa4a3e3af49dc660063523fe913e3e41678d877db523924fceab57d1ea5ed2f7aa8a273a7be413746fb98e038edab1ca57e379bb55ea6ce3b42fd31a04bda5576979ddb6712edfd5d91aa73dd2fa031f7ae5189c725665d86011e83bbc45377df48b56d3f6d12dda8b53e54797b4cadf489d3f463d5a95bc66c4fff94e33aa8ade2e59e3a9a03bcd877d487fe04777da111bc68c19f3d1319755d3fd6a91de186187ce0e6913f09f74ad85942a629eb057f9dddeeddd5dc67777778fd640145838a3d8d94f8caaef99bd471454743ac53af0d71dcfbeec4f724658d876080457fc0e4111c7d7d3b313e077088aa15f8d67dbe16dcb18b5ced07f1d8373bfa77b6c09b0b98f9dc119dd693c1d7db506047dc49c66047aa4153a748c3523db435fedf1e939f6b29eeeb1cee284eeb4e5539d79e718b65aa435e8a3f7ac127af7acefa3ef30d6b32ee0dbb1d52a5a9ff8ca7bd61dfa7638ebf2e989274d9418f1ed75f95481f8f60a7df8f69d8673bf9a4bf4983163c43cf49eb5877f8eb9ace77338f757fba1fa3897a81ed2eabee9126ecc983163be067dfb9bcb27471f9f9ce7fcde1014dd8b025b9c9114b61d8262cb57f93b0445965fcf58c7a5d64d8cda212131bfbee3d7b7c7ee605b80cdf9fa5a18b68c5af7ced7b1d1326a1fa3d8d73187bd6c19b55fe5af938ac001864ffbfdbc9dbd351ea6eb4845e008c3a77de73df751a7f1483eb5afe6c36a3cec3bec8c80ed33bb63a63b1ce45c0330e76e8e96b00d09adf1f53dbb742ee5b6ce324eddde79ddfe398744bb66d7bec3aebbbb9d773b6697cff4e608fb7376469c33adeccdce79c1b647f567c716c8862d01b6f5f6d578d69d46e409212121287ee9f2a9ca67c7385b463967d4f2897d877b3e3eb1ffd89e9b18b5bf316af9b4ce3ec3a8767613a3dcb3afc6d3bec33bfc6613363c1341f29dcb77f4e688f3e7ce1ffd71df74351e47ab7be73d98f6f8ef0d41ed1c12b0fded51b767c724a3aa8d8d1b9bf39a3defb0396f5f5fed07e73d4d259feafbf51dc6dcecd7d6f8263211e632375f985fa2fa2664de39bbb642a038a15f2201df44f6ced9452b048a13fa2512f04dc477ce3e5a21509cd02f918077cebe9a912724f4ce7718e36c5788f3dabe7c5a978caaeedbd7b19e924feb03d8dad7572bf2f8b4de54f2697d8731cedce4cf56081437f44dc477ceaead10284ee89748c03b6777da0f9bd03bcf18b5cfbe9a1127f4ce777887777887772e9fd6b707d39eedf78620766c056c1973be8caaeb8e2e9fd6d7839ccb81ed90d095df0adbd21b9bf3f5bd6c8ce0ac484218974d16366bd824c10607363bb0d9c2860b1b1dd478b10141cd941a2c2622d470c104849a1ad4cca0268d9a18d45ca9a1814908a621d464a959428d18a62f3554d448318131c5611a3265c1b405d318a63026334c413041c1a486c909a62ea62998de3015c104869a2d98c4a801532303131ca6304c65d438a1e68b890c93116a9460b282a90a26366ca430b9511346cd154c5eb0916203852909355d6aa2b011aa2942cd193546a859a366a8668c1a2bd484a0a60aa6366ab060fa428d166ad8a861424d1674544187147490a1230c1d41d031a4430c1d3dd0a1031d3bd051054d1c3470d0b84103064d179a20d0784133060d161a2e3443a039020d17345b68b6a0c901cd17343da0d142c3031a1cd0dc80260b9a2c34462821818608a52d68ca2819a174049a1fd07451ba42c90a33544a69288d2955a1b446890aa52994a45052a3148512144a4f2875a1c485d2164a604a5a28656166043354cc886066ca4c0866a698916246ca4c14332098816246a8248612164a6c94cc502a43290ca5384a6028c1512243494c690c25279498505242a909252fa5249486501242898c5297d219252ca51a94a89456501241c98a4c1c326190c1820c13647420b303192d323390912213850c0864a0a0d182f406690c243190e0209d8114866406d215485920b141aa02090ba42990a840ca01890bd216241e907640d201490bc907a41f906c409201a906324f2061b19db11561fbb2e5603302890424116c62b6236c64d89c409a621bc3a6c616856d8d0d0a9b1436246c656c596c38d89820b385ed8aad051b0ab6148ce018bd310a33fac2c80ba32c8c98304ac24665a4844d68e4657485911a23288c9e3042c206c54682511146668ccad85430fac188082332464318751905613434126314c60808231fe848810e1488d210b58ca43c3488c46826d0a86460bc348ca080518049804780696c55601344653c1bc0253096988638468281f54002015ee1ed402403510a4428c84ee07800c33c2fa21fb82eac2a5716342c88a4104d61430553133434644bc04aa0a9a0c68d9a32b42a3ac6d05104521848624863a017111722346c26d0b27050805068248042d613b23032206053b41144218d8a2a8b288aea06a238b01068228820885068278067402988ce20929289b1c140260d2c08346794c6909942f402f7840a07a32da3168cae8c6230da6284c5a807232f463c187131dac1a88b910e463318d960f482511622208c6e3072c10807a31c8c6830d2622403d190280c91182230463018d56074c508cb488b8805a21688ac6022804a785b64c09084747c7149c9b0d888b091b10d61ebb209610bc236c636b489b185b101610363fbc1e683ed8b8dcbd683cd8b8d075b17db0e361d6c5c6c31d09e40ba818c1064c205262b0144027c8286021d6588c42022c31b231ac3088dd2122c28c804c1fa025c034ec1b900cb322ac12805b00a18151a25d02c416406192188ba546a545c545f2a1d544fa87850f5a0f2a21aa3e2627a42058663017603cd0ace4a15824a8aca8a5113a208b414947e30aa424386e80a2c43fe40fa209b82e48261e1d080612161c16c40caf27480d5407e21bae27191490116a1c2a2954000018051442de014233668cc90f1824c1923138c4ef09620bfc834462c70565c2188672071816a3009301c90c05c54605c605a40344430d0a0601a5383849a30100a325994b0305d81b4064d114c6bc87001db6242827605d312a2195c0b2e2920154c68d41ce199a1c60c4c07d7949a146460302d26306ca6b09c500a42b6059b284c4aa82103dbc24a031aa1060a992f98ba208a4144c325821a2fd4c0a04483d2508d10482e30fd2096410711ae29b02cb01cb00a580a16622818048c0296c227e02838042428780aae01b4c225850b0bd7145e19323278666437c8b6c870e060e05e007d0081007fe0aeb81838195c5d644e700de1b1f1b4f0b0201a82880c77c59584ebcbe5c53ac165860b0d5719b41c683cd0b62879412386920d5c171c17342a68537052705e705f706eb830ae0d07877b43f3a229414382c604ed0cad091a1a2e0aa230b829c42c1c154a3190b1a29483120c4a33804e805f4465306941e4029216a019262c946450ba42fa42e68b5bc176821c1f3ce8308a027402e67e1da6c5e266c2c4920b2479b2844993244930d74824c12449926bf485e802c1114994c04012467c7c9450c0cf114c7c7c945080002e2896091f274b7e9820918409130ce47009ad121848c249120e4061b28125923879f23f4930d100079600e1d698657244124a2491644912274f9ec9114928f1809f2436a0c411473c0f2b0d4828710413246cb0d0b04c7080494f122698e00093234928e1840926980431ad33ac134e9e3c14263d509428e28769996199fc2c41c289cf92269230d900930d40400824986420034b841080558665a2e708264d8e20c332f1930413284c9a24e1c42d314938c1c08d35863dc20913493881f2f30493241cf079f2644912284c90f071b28154cf114af8a4765862580d2459f2b30489253f4c1c40b2c2d001273e4b9cfc3849c2490e2b8eed3942099f0b2461f2b38123983cc144c602c3425142019905c732c1c4c98f13284a34f9d9c09292f5c626a184939f2550368044921f257c9848e2e4c92f81b281cfb18e89cf0596fc24b1010c24f939820914274824e12449921a1a48a5224218aefc06613b2424f42ea86b224c03a6e19eb8ea9de0cdcd0dbc39b922fcb8bb1feb88bbf1451d1c9b37c6dd8edd1d997963ece58db1637cbccba2d8db71f9f1d39c8bd039e99c5b517ccdf26d8c2318a39492bb1fbf183bf2f632f77bbcb1b9618c1b99b97a5d5dccb192cd1b49ec96bb23f3ebae44cc96c892afe5f54a528ab4c7bdcd4462ac8991e53e8e31f2e3891b33eee5e5076377c3183b764bb9bdfd9a5fafdc8ebbdb2f6e8c6f01fd7699bbdfbeee5dd91bdfc25d18a5dcb8efc5e7f8b9c7304676cc114679758f6abbdb2636ef934f13c97795645555ccb23bf2bbdec67df0450530bfdd8e729bfbc5988ad1a594cec1df49803b02e028c60863a407e881e1e84119a31639c61a6057fcdebb1ebfc71bb16bf739b7b2574ad1d36cf83dd98f61b7e457eaf87899638cbbd7eeebd1d5b137cb86303b19003473145253d3dc0d5f3747b9cc1c5987016ee8cda026a5bce47bcb59ef36c3d72dd30ddf6329dfdb18e3aedce56bb32af656cbcf8a1de3c618e3c21ebdbe22b3ebeef75e7726e5f67b2fca6eee1c72c8763b728cbb314ade20bc4f07951580bbabdee5ddddddb701c93aebcd681800cb0e7b38c81863e4dd8d6eb7bbdbf56ef69a39c66d63efb60d8e44e226919a446a764e4a76dd7c718f7821ece5075fef42def7ae6bb7a59452b27c4fd39ea6bdd7d7d5cd2ca57cf2314be627e5d53d64d42eedb2d929bb21336f8d6cb9505eef7adcdcfc38c6e86274cd198f62f73ead7b3502708b76ec6e6ffcf1789b77dd6ef3bba494f2713347ee6d1ae6ee5ed91d3bdb6cb0c1b276f91af1d0dcce7574db8fbbb777993b76c7d81b612f377c2c1f7c2693c9542a752fc718b97b37877b6f681dcddddc3459d64dbbb7e53ee6e6edeeed7e8f99f93d7edbaedb3177f36b6eeeeeaa1f8cdc719d6b1b23d81ca16596390045090d30d140dc01092650982001458924a802fc60e204ca4f0072a8a9c1a6e7882517f0f151220003b0e151038f9a99eae788254c24b104ca4f921f271ad08012a71cf42609264f9e2c71cb83066a58264ca060200914257e961ca1848fcf121ecb83069cfc24b1012874c3c0cf0678306992e4270927509e24398209271ad80104c5e309259cf8a90155801f3e13e4070f497e30e959e27381241948c24913269634f1ea07ca921f2672f871838fe581c9cf12284c92609201284ce080ed0f264c30c104ca130d28714412284c9a50e2082650922c610289239824e1a10755801f4f8e60c2848ed5e4889f251748d28409274938c1c00e0c3881c2a4892406e0a10005f8810493244afc3ce10094236eb09607264d30f149f2c4120dd840b33c6440099f241948c2490632a0844f8d8c6f4f3041220927499270b2a4c91118c0801294003e3e4e7a727460220701ec8f1f25940800124b9840397180494f929f279824a1438e1f2619c8612e0f4cfc30e1e4092601c0d91f4f38c10013284f729a488249cb2c0f499250c209135098349104ca12263e4724619281255094f8612209123e4e9a1c91e4c767034b30c00489243f4f30c1692209261d002d081ce48080808080825e6b4a825c900b1a0101bd56b23028082e1050a504c8ad920d8a4140404041415249502b09724041dc4a801c1010d003020202020a8240402e0853b240404140ac04c8053925400e28a8952c1010105010b4942cd015045b099003026225410ec80549250b04c44a162888952c905312e4825c50a564818082829e1220179504b90d824a765949900b0a0aeaa0a764838258c9060505b5922017e4946c9053e2c3ebe276d7698089251b1a11f792def8b02fbdc8bea436706c527a7bd057d37de5fc1cf60e57410fe74fff63dfe920e8dc9752c9d5944ab25422798e1b9283e4391cfa0f372407fd2107ad419fc34993449292e4d25be391359e63d6d01af42592ff7043f649ee341e528994237f74158c9224592afd58296b0f2fdb41573223b3f90f59f2d6d9d141636a08b33c2cfa0a5fe11e522b1f736857c1a7e83adc39a471e8f572486b5751f9ae0e0fdfa17363432bc94bbe8ccae17573cd775a870755d238ed3be80db5a1db38ecd5b4a6f55dcb77755c0935d1ba6754d352cca2b58787544acf21733874972e2365e6323ee3a569e3c646a23ff04b32b402d1a68d1b5bc9ab0ea995680f89969ce416ad4068e80fd78b6a30a33d242f79c9e5c89cf4c3ed90c11f6e0708ab91afc623f21d76eeb422953bcfa6fbb52e2c6a9e15d15c474989c4932969abb1dae3a32b699dc738d13339f3710711cd63369aa2f9a6ccb699d631318e738c56d3c9dffd70423ab86445f4c8c50b2e5e444872097ddb48b43a2fb838302452175e702179c1a50b2fb838305ed4f7392f2b9097d57981cdcbadb9bf55b3233ce395d15d784882f15d48eab8f02972f9aa79e53273e9955d461977b4624e5abf64a473496b9097ce6568cd7939725937979637b52ce79ce4933de9d19af3958bfca2557397f3f724da835152cca857a617ad0f7e24912a4a7ff847b406d11ee72297972eb34b6e4e3a296125abb9c43a7739d699cc2c799c22c7308f13739959f26a5a958cef708cd2abaaaaaac532c55332bec3ad15912ef2d6782c2ae74ac6898ecdba7db41c7b599ca5e99768ca58985bf3f109db1e938f5d8e61be69739fcc4c7c72eeadb38371dc0c9fa44b2e5e70f162c4325bb0f7de95f7ae78cfca7b55bc57e53deaa870f4f7bcb294b44ab73ce789bcd72f17cd659c8b66733dcbfea2f5b9356ddcd824c5acca1fadeed7a545eb5bd68ec8784967da5355f2c5f7606fd583d0f4f065ffaa47e4394c22fb9e4765f6a850a1228360f44a6489664ee374a43fe4b44e356155516154e5d2e394555551d9cad74d79cf1d1538f7fdbef774449ed33aa207a963646cedd5a3d0f8a83c7f0e771ac287b1280d96a28df7df2129571e5b8cb3d59c739a91fe5190c6e3a4488ae80f225a835ee4724619a3f43872d11c49e94ee391d82e1b8c8a0ee58c10abb2659456e593200f74eceaf239fc0e85e08a305ff33b1402341eeb0c8a797174186ec37da4601eee47ead8e0131479756cc4fafe875f44a146c4e96cae5d2ee315f3916f71d329b9a6d1fa5ef36514d39abde69acbcc5d1cadfef4b64e89f6b47163bb68f5c9d647d3c68d0da33ffdd7a33e72a715e991fefea23d16bd7c45be3e72918fe0438df688fcf2ca593b72559a8b688f74f8adfd005f6a2ef3d57830df61e9d1e18c3bfcebe9218452c638f351c6d58844b75cce2466be27bae55867d7b4bcaadc5ba7e432de8e61b4ce7cf46dcab8e6abf160d97c879f86a4e424c9a7e8a5293333c689bed3daac1c7359697ae3b4cbccad712c8fa4b98c23719cef3026e7e597c759673efbcb9d46c4f24bceeadf71f264f3b2663677f0c9f9d63aeead33c338cea37c743869053dce1a14f9f4e82604d7dd05eb2a9c509da93b6a8f7752871c46559e317b4f76ccb22ccb39367b46d2b230ecc69d25a5b7efb0ab69cc477dc9915f5857a104faa842e7b407f39143af1610466d1f14c5b56f8eeb2b5fa3ff708fd54130c70d69afda8aeb9a4a7a1db9a3b5abf8e82c1d6d1b497ff831e775447ff8db7446dd2e3dbc03f2ce593dddac4c95983cd3e1178ddb386f5add630e67bda1161d79e5d1454ef252773b749ee32cabde78f4da553c5baeb9f9c3ed50cdc8f8f606db398f1bba23d38ab4f7b81bc7b41fb26f57e2327ad1baf1907447dfd01f55e597c6537597c7b0d168ee631836b272de79d48ab4b3cfe83653f39a59f94eb76318bd719e9b689524d741eb56721aeaadb333722bc70cada612ad26194af2dfa8c892d8e59885c9916317fde18654078451d081f4f070ebf2f08c8734c21f08e4236661ee342323fac3ed6039746cd61f7e6fd11be99547df691d258df3dc64dab6ffe186581e21fc918bbc02f9ca6db0518579cfc8c25cc9c8a51c79dd46968b6805a2cde553f6c30dc12cbfe88faaab78675996f5c309fdde1064e374ec40260323a3f2ae542724371ff9baabc25961d4e5bb3baca9793563fb13adc3428dd32ee3589330cc62665e8cd9b2aa2cab443f6454442bbfe53b0c67cda87c0521a49564af10520899f6582e1d2ed619a457845e559e41af322b5fe3357bd8811e7255c1cbf99555f91a2bc81995cba3e5b5aa68cda87c7459f96394c82baf6a5555ce55c9bcba292851ac9ea8e055d934eb3ce13407c8ca7238adaadb59a8757aca8ccbb0d037840e61e5d91437047ac570ee33f49a51a91995bf36ad888c43da039d7d247375977ca6618e195125e35ad5554573b495cadbab99126de83219188f59731f420b4228196653beda69d11c793637c7e6e5dab4e2f3275aa7a734ce13f32646f1afbb2b18058bf08f9ef794d6692b8e4ef9e7ce49d34966ca9ae6357b8cb3cc097d3b8cd55bd02f77949d452fb71c73aef20b5a94334d83ae553483aed11be997c7ca55fe795be957db4ae5b1aa5e73915737e5afcb25e69598aff235af9de59f6f73f9a4f9683e3e69b4fe545fb9886e15b3ca319a5d97478de7caa8bc3517c2f872ee4308ab09abf95e5634a3c2ed10e1bbf27b43908cd32145e4c0a0f2b5f2e5f7deb3d2c3d9cbf8bd35f79751f2d19ee7323e6769fa194655be2e5fe56e56bea247e573667ece56be2773a07f987beeb92a9231da233d1b31f6def6c38856fecc375a5944abfcfe4c7ae6f56947b21d7e91de6439ade3d77bfedee337f7f97975542a4d2b22f2477b9eb367a2d11b6122bf7af45c6481f19884f1b3b92fdfcbf95e36dd333f59399c0f9b96efb48b8ebd1df11d81fb4e7bed5beb90a86b94d9dfeb792ebdf29a7df583d4fcbdd6996332ab32ef0ceb48e5bdf7de7b22dec0d0e5b327395711022a5f80dfa129d0786c4753d876680a2cfef43b24c5197e688a2e1e63e39f633b18a5f9ba33caf26da34e8e383577531b39d6524ad9b3a7baa4ec28afcb9deff05699e417adfc959368e56fc7c6475fd6c96197b3baafaa0fe5f6ca593af6b21e8c12f9f657a6963b181405c8c5fa81678fd45517e62b746bf648077a9eb5fbdb4d9ef53d5bce2deac07c5da2bfbaef1f9c6fd0fae16faf3ffcce63a4d5b1f1d07db287b1690fd7e7f57d7c31fa6a47d8a535dd8c9dd33a8bf9e5802a3acffad3d1331f39c088737676a7fde09c3dba9be286b047e93bbdc3366e6c3ffc5c7fb83a36de726d8ab4222467dac32e5d23cdeade5997675c8a2e934592632f96687d32eca44be3b1aa78ace73e73f7e4f73dd957fb013ecbeaa67cd4e284be4dcb67668e7d6d6a4c5b67c69f63746b9d19ea5a4647f4895c7d2f9dac680fbbe612e3cc51e18654d783518cd3ceb4bee7a6d527b3b1f1c2567d32cb9d8d8d17b69f7e497bd8a35b2e1d730e70cf2e75665cbad38c68ced9e5ac3ffdece84de596437ffea4c3ea93bde699d7f7d64fbff3fad3af39e6d55179cba356c4798fe69743ed87ec9de768fe5c939ed1e7397efaa563b43a2a0fdd51e186385a99087ae9975b6ef9d3782c363ebe9cf05d2667fc6aeef3ac1c70cca2ea81679ff0f97d6504fb481d156e07487966eee2b0efd0c6a52fce9d176ec8be73c7e557735cfe00d87a6566662a15e09c73cccd9bf5fd1b22eed7d9f9dd6febdc11d9fda0764eb44eeb444fc5b98be384fcde149c2eb5da0fd2017150b3a3e2b563a3de3dd57666f7c0b73ff73d4d373ac51f1bddd8b03ed6837e7fb51a78ecb8b1a931e9a0c9315392216d239196619725ab085fb35b1febab2de1c63c96f61d9672ab49a7e92e8ef3f57713c80531331b940cddbdbeee685d87febcf63af45eef81dddddd7160bb43989ddb6151ec75ddba75b754063957c4d9b8dde7d0f7ed6eb3f7ee82e1f6918a80e10b9ff6dfc207df7bcf9fbff73c3620e8bd7bb46703c3ec418f8dd6dd0a615fc778eefaa8ec47dad9414ae4f1dc0f7aae0958218410ba29604bebf6ebbba8f5ea7cf9f4de3befef7192518e56e8353a16a78c1136e7d199fd55716cec35fbf68c518e6e3fe7eb9820bbb015e0d0c1e3e11fcefc27bdce58356b5a2195eff420a1c836d34eeb18d1389ae933cc64edd09721fe8afa6433f8f2de7beb86ccb61e4853bacce0f5f0cf0bf2d4726bdfd6c91cba6c1dcc276704d9f4c5818ecd5d9c7a7ae8104298f3e4c19c1c322747727301b217a0900ff64928440408a543978c8a724f31fb1845ce5d9cf8e213b28ab08230c62a6e1c464a8c71fa983ec2184f6278a6a78376defede73f4f1a9e9fa80638c9121844e2e8c31364ce3b44f329b21046738e7a073ce3928618462c86c8b56c4295270818b6b4b07c2c02aff1c8337d878fcae8ffab6c02a8f8b7ffeb66c982a26d89e3f4905d2dbf2155ea9e121b5bc58555c795c7c8557601547042d4401ab5c5bc87890bdddc1f75e503b672507f05581104608217c0372e9e7eca38d51a8f7667dfeb423edd15b33f23cd2cadc1a0f3b6b0d087a86ec46d87b1e6dfa88802d900d1bed631df68d1d297cde1e27d699d37e6887f33d849a0ffb8f42ed883bd2f4879f7d897ecea9f1760d233efa9bf5f4f3ef6d2f7d4eff5aca6d33fdabbc6e3ad74956b966103eb59ba29b4c5f4d2c4dcf958907d21ef8d49e8161735e83c4202bb3ed547346167670da35ba10063260d1df8cd14577d039171d8c717b3c9565498fd0a35792568e55d90f0f83b3f2a7f1545d45bad18da7f1b0c36dc60406fc02046fbe8630c61863c31fc0cb0cf87e8049ce1a82118318c5d68e0406e3aac4aaca2006a19f7282c4af3c5251f2d3292727c8d7f51264f38c5649724ca66e252a633291e846a594be6b7935bd1c7a68b9b468f58772568f30c63163c6c4f88f5679411a432ae4a8b281a16b48ca35740d49b9c4c879482f2fda149797cbcb35b45510c214d7508e2a2c887004664008fdad90d86660ed087f8c31be28af774c159b687e639b713bde9d5e9c891d7f780f79228dbead10e8957bebe4348e7c8cb3384d7ccae1533b922df39a23f914c6c1f7dc79a09abba7e74ee3a91eddfd8dce69317485b70fd2dae4a13f1fd3c3caeb0c67a6ea0cccb23a8de17d3d9902d0041c34e199bea7c75c612aaf300b94c13fc8827ff004ff1c8ac0e1141a046e9153486832d960c3d7ede194af70e8db6b90ea23bdca581fedd917f0320386314618126ef92b4c191ef4ca82537a9c55c9c7aac2600635082bb71cab2c2da315fae5d85669479e4b5afd489287ce3b7d4d4b5656554969c9cad92bda04fc487b20dd28e61a0e270481593ef99e57cf2b086118c80f0b114217e784916117621611763c23ee93f18c184666b4f69667874da5ab7c6524fe12d53bbaeba3f6941b6ccf572392e3974f95bdfca3953dfa3e9c3e5d67bebd321aff9cbdd00dd35b4eb06a3cf43ac35ebef6d0862142f391c62a7c6a176d61735e7ba8321a5f7ba8798b2e50207b4b0cf3d8d8b2791532f2fa43e435009a577f98c18d0ac1bc4e9d9cc669af1215bdbe87d26b3ff45d219643773ba4016e877648abcf769124d8aa0a889cd679d20037c451713bb46fdb6813519346ab29cbf92be725adfc75cff8cbe37c7b82fea475a4a3e286ecee20dd4d300cf42a57c8ae8fca2fbdf25747e5db81681d57a571daa55c2f8d534d5fd74b159369a3ab52e53b084161f85f228ccef5019d5eb45a8027ce8749daedc903af19816e5964d15d1f50c6ed320a8110aab05dfed12d222797506d3a9643972b243a746b854887956f35655549992227259700d0a5583e85a7ae0be89a710900e543207e49617c18c4e33ed2b73e1e06fd73e7d6dc2dc08bf222fc58c10ef01b229c237124f40342b8f34ded340c626eaa88b9299f3b66954f67dd2a30a3b8d40f8e55b1018ec94c88b9a9231625cd27e3965f320eb51fe00fd049fee693ca5ffb2b0541a3882a90a071a48a21ce30220be20c46552a8caa5dca3002f352c494209094c1a88a4508f7c2a88ae5884f6154c5428443aa0d69551855b10ce18f6a656421e2ed98163cde8e6d5980b7635d28c0db312ed4db3130a6b76343eeed58171bbc1dfbc2a87af222de8ea9c1a89a83fbb006a3aa10d7beb0c1a86a00d7d4c0c0a4bc1d6be3bd1d0bb3e3ed581c09f0764ccce5edd8192c2128e5596154d5f1205730aa16c05157806041802c08d0e2005b7ae862081711189ab7674399b7675d306fcfbe30aaf2e03fbc3d5383517507cff1f66c8d01787bc6860f6fcfc030aace787bd606a36a0e6fcfc230aad2787b1607a3aa0e6fcfc430aade780dde9e9d8151d5c67978bb26c4a85ae33bbc5d93c2a86a722b8caa02701dbc5dbb825115c703e0edda1546551c1c00deae61c1a87a83f788f25212f0761f6691a96529cd7d6cb512f54997389c5712cfa6a802be63d6309da826e0737a11d30d508413e1a11516219ab4f2b8176100df419dd88a38ed1029c98a701b964c23a8142db28a5c480e0ba0d57d2ac0861ca813db66841097a2c569cda1e2a155012ea40803c8224e39b817e14e2b751b8a701b5c8a1605d08aa508176284018af09311420ce052b4e440abfb0228ad36b8027c2a3142248dd8915d4e8d98d489cc083ab118e13b94888cf04cc9290797a2e5a2953a1148eb741eb7a6858400758707a14e48242297a22585e469b51c22b9600d48522e42428017f965018bd6cb21127f49ac20a8142d3588a3a813b2d6e0408040b712f01eca815027b6205c8a16486b107fd4890abe1d07429d90295a8148240908e2100984b466fe90c0e752b4ecd08a058927200820489c00d4890d0801a0ef3c4f805b16c850b406f10fa20619046a8728888bd6ccad202ecba56809422b96201c65811a82f01d16088272295a44b45e9eca68b5fc5d9bda112a454b2d527df80fea843c52834bd1828003d0aa89b21f477cd0ea83d770c4c7016a701105345a459e1d71ac029a10548a968a809a237ff4406be6da100cfb41eb0f1f408e4bd192d13aa42ae203a04e481f681d803cd2c310cf8e64197624c35c8a9622b46239e23d08318023ee438801f870295a86d09a790f980f718d0208f00308f1430a71002144b4ee704d0891e652b42080562c42f80128f04308cfa1c08f1c97a2a5065a458e005a353f80f388c0103da8135216d181c78e216ad8614407eac43604038ad4409da89ed61a7cc7103e9a4e548f65023c88a052b4541f6a001c00d409a9030078e8188d740800ad3a3800a8131b1101d8412b4d65c4750cd1c319409d9043e8a0f11d43ecd8311a62c7c8a56831422b96211c0044f418c2751001801e2e450b0dad3b9c66e43a9c0775a27a2c11c8e1837c2c44e820892832e33988a881d61cce833a913d95428a961a78b8142d3ed08a85082f12011d68c532c553447800a813db4b21458b0e0170295a6668adc16772d0cac373f84e13e159800252bf9300041ca0872142260e6e80798307993aa859009792800399383801e60dfe63f2903377e094047c001307f7316f701da600023071a2744a02548a9613d5bcf0a97d0a4f69c9816a68f0a91d0013078a2502de63de1001aad179e373dab8cf1ab7619abc8679e33ca68def98353e9a2617cd1bd7a68d67b3c6b169f26bde506d0b9fa8d6c5aca11a1713d5c0e053bb1133082f6222712266103ec444e242cc20a8766422a15a198dd35e9ad7eb98f1095014218ea7999511a64041079f63360ba028c30b3f33e308c6088385df12d5b2f0a97299499afb41b6b904e69765398456117e4c425fe80fbd66ffaa875e77fcdb69b8c413d5d7a025aaaf1c08a32a6fcf61d45cc28d79f8a675f96ad60fbf1116121212facadbaabc2bd7b2304adba275c128cbdb352e8cbabc5d03835198b76b438ccabc5debc228cddbb5321825f276ed0c468dbc5df3d23a9b6aedcbb7d0ef572c0b7683c5b4eca9fd9a18177b6ac726c6833db56713fb624feddac480b0a776d1c4c6d853fb686243d8536719cd7dd17eb67fcd7d6b5f9a71fd76410108be42303a9caed81c30b12d8dd3fe808971699cf61f2636d438ed404ccc4be3b44360625f1aa75d4e0c0c9fda3d04e613124a0131b7084354a82294fa6172ea0173530e9891045752abf1008165699cb64600bf6059b0df2e2968c25708e61b7ef9c632c5530da0500dc669df61f8854fed47e6a62c127c21fd764101957f16149b8b7ebb5419f38f568ccb3796c5c6cbef0d403a827ce05411b0ed217b7af1bc00d8b6ce6e56e2f82aadb461626ce7f3dd1966db9d75e6bb9de7dd3cdf071ff5f61d7ed3f91742a37547abe91dbbf675de19367262b88d77abc61a60d00062bbbc2b63bdf41044879c20ef7a389f88b0cf989c4a876dc62766efc78f3a6fc7140b5bae5c310e59d9f27b86df212b84be36f96a45d16a50b64ae3b1bcb22c49f9a463ca3672297da411815e974fd27f7834faf911ad23f731bd74a9f18c5c6a3cd2b1912ce2b6e91e1bcdbcf48c755e4ad24a728c3447b4666f6dd95bd65b8e5d98cb4897637e39e624df1cd378b62318c92ded876acc98316878e996cb8965b34c3f729257f99691f89b63a2cc690ea8c68c197386bf2896928b342c533c55a240a69416e91cb523d2478e9146a3097fb5511319a84198c6236975bf39369aee31964e9a4e23025f6e133ef6a43fd69171e99824b98fe9378d874431988da6e5db36252966a4d124227d736c9b98cc9422e353784a866a916eb3b9c8314de3116522d1469b7cdddcc7f422dfe11f54f13be4032b5f4f1f3de777e80b308f75b6cd7da86dd4481cb99ca27923ddbd749979137d533bacbdb1559965a3e97e1b6dd392a309a76c3f5f45ee93bddc7ca4897c351e399f68cab9b3cefcbea4199f36c660abf2e3e5d1b38d351ee9326354b6fdc8ebcc47afa68f332646611e7d07a3468e612ec32695af3f9ecd1af499c6b36d9b17d9dfe80dc97ba80d1cdb8d91cda56f74f9b4b974925f1ef4968b66fd79918f48739b1867a3a9f96aa2d10c7ad1f4c95ec3dc9af53de63bbdc3d95c93336ab1cb2bb72c7f5a03827ac48c475a08d3461858e000410d150801e10a208071ed9018713c13f29718bdf32c5508b919d32906210c629edd69ed98f3189dbaa695bd1d32ede1d86e857bb487db39d74d9d738ec990822a7100610a8dd043bfaeebbafa7237d731ecad94be7389de215032ff919ff9698570765a213ce439ffbabb218f02415788a348d607749a1d6c0e44eb881cba11ad13948229e84d7c18a539f4273f4fac10f7d08d2c4a720ea3a44307c228cba107e98151170a73e80b60543b741f5648e5d0b13d41c7e2742f9acb464af3c73a4f484848e84a4a7b82acc243afdb6ee1a1eb406071208f831a8ff6ac01b13ea05f54b635def9dbf7dc5b1ffbda7ca2b929d68ac8dff5117bfef009fa9b4df8041d9b4ff804fd9a3e7c826e4d24f8045d4e257c82be6778c8813d41875e9e101d21d2f522f202698f13b2586ec1321ea715712f99359ea6af5fe6aab055599402a9756d98ebaedd0d21c566f8b48e392d0261eb2ab82a6c359355cc9e5b638bb192ddddd3adb1d5eca5db61a3b7bfd9af5f77777777253129eb4c95559f8db1aab29ef26459579545185b28aa2a99bd373613f3abf1dbeed0f8f5bae3dd97f7814fbb6774cb9ff7e456c6ae970fb3d51e646659d9f5d6c74a6959dddd2f83f4cd5c57fc626b5a330ccb324d1389b691ab2cebea81652e8b6df9d4b49a7e7775f8f50cdb66d7a21af4727d2cbce255c9d7173b4cb4841bf33746b2f6fea69503cfd49996806d8f2aaffc73cc3997bbad29e78aa322236c7587aafb52990b83691d913fe730adb355de41c0364e755edc952b7233edac10ed9f3397d679d238cfa5dc3693c9dd7d691d97a5719e6f5fbebcbbd2388f67b055e6f28553b0d51dfa5d21ce4d4fd894f0cf8ce95e0ab5efb05be3abfbf2cf9fb48ea3c2e23cd782fcc236867f1ee67108acbc3f48ebf618672e8b0d7343daf7faf5276e4853e602658548ca3e581fcf9f636e4813f2e5ba5c21d2af116cad15910fc4fa702e9a9ca2300b5b3b3b2aacce8ed3c23ff7857f6e0c6ecc3f0e81146a9ce7323a740ed338cf47731ba7b2181de6d238cf479ed17ac26875925bb46e52ca6c1bc964da3ccc88d6d3d70d03014e892883699ce7a2226ceb45e80a977feeae48b96d265375494fcfa5502585a2148252e835ea8de3e495df1b806290c5232f2a87997be7d88d91e84f3afc42caef1097385e00bf435c88f09251cfbfbff8f20597c71ed61acc20c4aa07ec63f001fb513aaff4b74236834e2b12fd1d89ce8e3d862e1df41e7f63849fbd890cd4a0e72a3a477f71e2f010d21e5f02ec8b2c4ffa1dfaa28ac7167b99f4fa3cee73bb3e2c8f6f667c5aeff170aec779f99b95aff6030e5f5dd66c8d08fb9bd09f4684ddfd00fd45affcadbf19bd9a151ee9f1b1874bdf47337783ad67f3c109b4d83646bdcac1e8f20f0c353660fafa849090d0ff98de6d55cd76a779f52aaf2ac7aaa63dedfcfbd54309fd39d39ef6fe9e27777b983245a7a2a8525a98101a121212aa624a14a92af9c4cfec3207d8f6a8b1cab7634ad60aae098ea9c04628814293a1bd5f111ebc028c5af8c2a8c7a75849a1ca6a56e7c93ab1392be49d7e7d4d2b647fbd12e0d779d821ecd0eb8ef9f63773d647bb123784290fbb433b01ace0bfbe5a11ed7d7da881c9cc2be9757bcb2d5f59c553ebf86065db3a9c925e79ddd6abbfa4a7c669afb64821ddc6a9fe907ae34c618b53be442a8c6a68e5d98d681de8ed4a5a277a7b93d6d98653368e736c6395df1b80601073890a98f34dad637146592a6c2145281505480b7bf47ee74f08db6a4538ce1d430bb02094e26fe286305c30b009a3dcef501652fe7ae7ce0a16ac935df961d40ee1e00cef52d54d19caa2045f5d154b280b1d7c7557b8545d31efa810f3d549e12912862b34249cf2c671bec397185b35b95fa2c78c792c0c6186524d9ae1d30dfb927105ccf70d5322fcd0970c197cf9d7bf4323b0f234ef1c080ab08eb565874a30f40be69dd71e3a55fdab4b7955ea9621455ed1b2432680e2eba2f12fc56e7243b84818accc2270509945e0a8c2a7fd268caaf209a32acd138caa261f468dde398d1bd21ec7bbaf7b061986cdbf7a8edf20c471c633ad39a422707cf9eacf5f240c57f0697f87895002cb6da986b065d43a6663e3c6b663fc18cf3b54fb75b773cc3d77e8a5dc3693c9fd74aa39ef9ca3959777e83901dfc3cc959997dd36b4d2d021e41fe3ab7b59694782c208c2ef18ae8a6e831820878713cefc75530da95abfee9656e8d1f7887624488c8763fc73d68cecd0f7406fc79addb6284623d01b12e90f82ee89c1da5748e6b05dbe769f052573f4fadedbe9d6c7db155231c7b85b41f9767bbedf4569ddaeddb56bef8c2b3bf3c5aea7fb2cabeb3bb175bf8b6d865d96ac227ccd6e35d1ae8f752b0a59cd987630aaf6f85a519f1e7ffa628267256a01059d85174886297833cd98ca781b8331ce55eea8dcd2ce5df695e9aba12b23f8ca1f9554e533be42f62b5a7d7afcf24968dbaf5b4a8b308db33c7033c93953b155851554a230c3b6030b66c2a66388caa6e377884a1a58a0e2053136d3ef1009a2e82b6c33bf432470419760cbf13b44822db42041171c5479bf433700e35141051c846093b112836df43b740311086dd6efd00d84de94edfa1dca22867f30d8deef50163858075bf53b94a50bf377a8046b588181b06dbf435798a0a7b8000ddf63d8b4df211784f946814bb8db362424242425d582301b9c3336bf4323c8010bc47cdd9c7180edc809db8eb182294ffa1dc30a17c837bdcb2aaf3a04a9dbc5fdd627203b8c7abece6d6cd5df790f4641777ed28151d5a7c74b3eb927c526f33bb4832abc94f313a376c705601a675ffe32ca0db1000ddfa6f71e8ce3bc44c5467f874c208487bf432d10f3dbc3d19e1ce682f6f59423242414051334c0020dbe80e2075b08e5e47091612d30011857f02006534c11050b30202678618c25a8c1461a4eb89abca00b212c58010d212b5f4d42de3b1712120241aa75465f58230a34880217677449c90fca81142e6158818215336023e5dc7f35e758802deb3821212121a154cdf94dd5205b067f10145cde60a3083308c1163248ad6f8caa7efdb4c33a2fb5be48a800f33b240231bf46f81d128116efcf99fd5d79e7bb433f08f36e7db05769c3d7ec79d584f4af637beaf78f56f76f852cadce9fb7dbd8b4b139dae3bc7f1f3e6fbabd29add8da9bf6389fe1133bdff8c4eee60c9fde3b6ae213fb19b63a7af6d10a7102b6add3eceb9b1be26602a698b2462a014262865218673c6f84a0510e206528d5746b1ce741296c99792d510dfadd218d2008a5786e0a88dd135d455555479e4b2ff25cd2a06f39617b0cfafee187f487db819fc0cef90e73261ddb5ee2101347985981b80763259f94cd4ec64a5ace49ebc2b29765cd2e939973179669a22712353b917399d344232030271389ba78e7a32d58bcf36dcbdcac9ce59d93180b992723d3ec64f80a9f9c8b8983a5b0501c62e20853461734bc7429a3cb90c3c25d7155382bae0a77986603b2a10408d7ede2fe8104c971ccddefc1f8626c76d171f77b10c6ea5555b3ab1e8cb1aaa4b4ae775dcdeeaaa4655d178665dad3b466a75d5896699a4834dadeb635bb8d45198f46196f5bc62452c632a5572a35bb9273b34a97c3d1d0644e87e9994ccdce44c2644aa58ce78c56c4fd3693f1cca11571cf93462be2fee9783a74343b1d527463c47a76f74c6b94cf214537462a13cf5ef8e4bcdd0e54b2d86a766dc09631203d588072525adaab1945e5f2c9c79e26fab174a0f27d18252815f40c44452b8ff35138eb07841efa4e23d95405677b35a308121aba52658a1410402194922228b5943a9f3632b3a0caee4ee80fb2946f9ef27d866f27a68d3062d858038d2f6b9c51061843ddc5163ef53a3b96c56df97656d697ba2a7c6af866b2cd7c4c6fe5515785dab8b1392acf5c252a01336961739e61a3df212e5cdeb4032bb26e76a1e24d7c72bf432082166fe2d3ba5be2fd92d607b7e413efdcd6871a5f77d88cb6b0ed5017677c353d4b534682a46cdfc4276ec195ef6a378ad5b1a80f6f8d2378e7dc0ae23d1855c90cbb32ea6471dab137c8f01d85a0f828d4647db48faad86a9006b08ef48151cf4d61f8d471f0a99d7366875f6c0cc5c030eda6d6b9bc2d57420123f8d4b4018c23d43a170dd2382df4ed8ffa3052c15661986f18a6db2b0cd3f14ae468822ec018923284858b43326ab76d759e37dd46dfd36f999999999d9981388899b390e5b1d10bfa420733d8f204316000831629e77233e39dcf30caf4adc35e8484845490726eda8131e1005f7b2c13beea5081f4f0fd75bb6c5ff78c1bd4c8f175d9d836be79a87b86f6adae8aef2fedb0f8d6028d6f7fed520b0ebe7d3369e1c1b77b0ea67cfb290743f8f69c2dac7c7b909d2dc07cbb0f5b8ce1db8108c1b71ba10407dfde648b18dffe248a6f7fa28b6f774253b8e05285cab73b2b8cda211d5ce1dbdd1546edd00e7e90e579351ef7c8b091910499bad12adf3931439714c011c7982e84a1c38a1a74b7c9647255ce705b0843045738a1085908d19080c43a2f25f7d9e56e2fe1ca4bdfd681eb415ae7b58e16212c67cdf7d43a986fe42b2f5d196eb92bd7a66c1ce971567f2e81f46c62f3267a50ea92c2621a477a5057d9544a8bf392966d53979f1a47ba1621d82db768142d42587ed128263689f14dd96861b3a816212c768b6aa9582c27c279810745104a7d00c8728b023d304ef842ea034054a8d5e84215422976a6374258ce6edd441a844fd2b5305a9ce0831f5411124aed9c5eba94c1e635c8cb1390e0ebf6436424e1add9531a473a9760ab2ce6a5afa43df08a63b805e65c93c6b961af3c2855d12898478f72b9e541a96afaade635bfbc3523bd61bf3c2815e586e90d042c8f2e8415450b5321a25f34ca76946d9ca09435d7e498b041baad8f76526a5392caf598997c856cbe3561196c8f5667e59db737b710b4e8220616629c91438c2a628cdd0ec6087b3cefeed78db180a1af3bfd468c059bdb57896e8c54dfeebe69356293514857f1d6dd0d5f77f73e3e757747ae5c35edf62bb7442caba47ca37a23d34495946f546f884695946f546f8cb638126d2428d24832daf3ecc99466725452d6a0821e33ed8876c409eb9f6b9a11f93d39320c72558358557044386255c111e1885505478423c65841b727e8eb2f561516ce7ae8ce896f7710020163c7d802c2872d438911183f99733aed04d938370906c7628a608031c60a326af7e47cdfbbfeedcdd43a62e27cd2384034691cf61d16d900cc2ece934f589a11f918665db28acf9d50333c83939bcb9cb77eddf6f0412cb04119d260851b628401841c55c6889e671acfa3ff18b55e9eb3b8e0d9318d87a7a46a0fdfbe293560f0842b2fd0d2860b664e60c6e8db83a49e5ff36bf60c85679758caf0ec8be5cab35b1a0f6fffae80049aaf3b6a6086316c0006162abe5d6a3c7db551032f86f0ed9555831a94e0f4edb1b282051576f876b8869090d014cccc3cc370f122451b5fd2c8428a4bcf2cf3cccccc4fe36134be66334ef8baa3cbd71e41f8aac3b70c4090c6b74b193ce1dbb71968f9765314df433478c2f710162fe8aa051b18df647c2f8051ec5dc6b703b1425c90d669d93a0dd0c20bca8006285ae005315232df0e8451a46f5a7d42b0b5acdbbb1d3a2ff52b781c9e532e4323ba1683cd7db13a238fedd19d95d611797477a575348feeb2b44ee6d1dd96d6c13cbae3b242a45f5e9d123e3a339e5737c6473fb5ce88ba298d13fd4979d16d9cad75b4cbb16a3a9a333795b96f20268c66b49a3bd145b38c8faecdd3bb296e8a3bfd35737ab438d1e5d4b13ea2bb797a38b329c5a5a690292953784aca145b4ab43c44cf1c01a24b2e407437a5754c273e696588de24baa360de080ab0cee511fbe83c628b135d9ba5c5899ecd9bc589eee60d5fcd007c4f28ee7fe443f9d9fe5a1fd1a5db213a36a54ce1a95d1e6a0e1ffd862d40e53a304e3ce9c0a75855ceabcee1533cf1a949bcc1e6ac549fb8e5f2ca117079acbcf2e84d56c87e948cd356e5379625dd4d61d4fb58d38575160942d15d158cda211894511d161f7dabdbf2d11d952c1f7d9d958f6ec9ea143dba0e8c2239a02d2bb6deb63cbe86b0ed51d7cbb363970cb66acebcb18e592ba4ca715be700f90fbcadaa17b389453a943dde6fa6473d6787729e472bc4b9172260f0c16d1ce8ce8bedc9f80e93fcf238af18eba98e7c351e9263a3d1e53b1ce7c849d75583cd7d74cdd1dce68c1936139fa0a33da2d82e2a7ea2b289fcf2268cca1cba0f165f7006e6321289d69f9631c33672928f68f6a4fa9e446bc9373e452ae33becb41f9c19dbfeb5fd8c73e6669c352395c719afbae0c1fcf2c1e6d85a6e5b1489f4477a136386f9c8e2b42489e4db0ad927917c23cd4acc4682d049d414fdad10cd2386917c347ba2931c93f1a71571637e093786346546f4e6c8c82f2f32a2cba7195a4bd467e665688dde84fb916fa439f2b8f1099af80465e634cc316b9d6b9146333a2f6bde44a7c057f3265220bc71a01bf1bb60c060db0cebf8300e741869133e41126c0e731ef6809bbba4e8c2658dbfe1b74b0fc26021f90e6f7224c5d6238d34eda9dcd19e2a739f9faf3cbe6afda355b69b3d8f08f447bb9aceed503ff0edeb76a81e80b2eba3067d5b2fdd8961abfba57257897c1bdd6c9408ffa63d7b901946d53ca7d87716c0de00d67153c2b0ef78419667f7d661d346465e7443dc90b53414e69ae6daacd0b0691ad57c8445c6dfbc11f9f3fd9e37224a64dd90fdfadef93e9e36327a232a628d6746b43b2cb7b065feb2a7f160911139366f46ee7ee41826336f4692069b896ed508b6f6cc3507b43fcca736e5b66bd18e61cbe8f2695aebc379cfe776702e2312ddcd4afa05c5b059b4ca9e37cfdf3fc7b09eaeda212121a18fce2e3adf3887247af3e8a61ee3bcf76dd7d0dac0b647855b18c5bfad83a572e9eb33ac23530bad4c58059fda515885085b8557aa7c3bbc8205eb48c7617ff3c6397cb7d97a79acc3a9751b22d8df1891ff5cfea34bb8315f7bfe65ac53c129eba35d7259212f8daf8f8b772eb1f89a3d111efffc318ef3b76585f0785bd687835b1e770db0ed51b72dcf6e75dcab5549bf35bfaec56053c1eaf8e2e8f0ecae8a15e22caf3ca6ac101ecf384d6bcea335889667dfd30b9e9bf8f0e992816bf264faf089dd6154803657858e609bf2c48ce2365e9d3fc12716723dcea3f0898d1012aa4ee88927da094537a43a0cce22d607fb9b4eab52b005fd9434a87c71551855978d67e723cfede0fcd1e8767030a8f23f7e875ea0c6fb64277ec228479ff014472b74ac9a4ff8c40e679328b6e875c14437c5517143f6d9ebcf57e7f05547c4b9f49dc6e2c4627935b14cf194e53eac63397b13464167b76614c6a9de3779c2a87d7e824f2cb4f9573745ccb3cc6f971478e1abb3f2eca6b8e97ec990620cbf6448f1c65709ddfaf80be0133b875f5c434ee3f7dc398f546cce272e804f4c79874f6c049f28a039c0b9123eb123c1284733c9a74b0c5b5b2ed8ea0e7d79f62256c83efb4eeb70e33ccbca56fd996e5bb22e57acf1ba2ce1ca6f9725dce06f1e25e2dcfaeaa79022ee977063ac785ed7b7174ec927d9d0df7b59b9fcee97ab3d2bebeeb97bce2de5f7de630601961c1c001887e61e5fbbbbdf0d90c659b9b4c1aae1e281edc86e341b51cdc8b4e920d1c864527e7bf53d2d1b673dc7d7eeeed2cc4c29870c0d49c7661ad5886cb49b6c07c6e3aac1b2417a35238537bc1e8d0303c0e590ed6e0e271137e79842dcba3d66e65dd3ef3e147b37748c45846f713f68daa2c442c64a5a179669a2d1469229cdc0c581da43262ac772e000801c7268767b3a899e07beddb5c643dba9472ea4d5eff2f52ae8218c393c5601e03189c36356f6668fbf26bb3f530d36e7d875c363187d2c9b8f69fe98c886c746353cb6f1788cb4e331999bc74a368fcdd43c96c3f4188d8ec774d03c66cadeccf1d22a6958dc1435338fd9941ebb91796c07e9311edb63358c1eb341f4986b8fcdec318a3d76c3f5580feb311ce46300a81ecb213e76828fe1bcc702d08f09801fd321b3e6a6de748f9d00e0e3247a74d7c7a6e4dcd49ea076a483dab523edd0593be2817f3991ab29988e94caa3188d1933664c2a5b37b18ee52be7a6b0ce24a34e393cd60078ece1f018cc7af6786bb26f8dc31e35249b928dc32eb2c1e63cdef058451f93f331cb1fbb6c780cabe1b18cc763da8ec744378f8d6c1edb6a1e23991e93d1f15889e6b199ac678eaf66144f24ddae4fe4d08cc86f9a63e6319ad2633a641e33911eabd91eb3193d76237a6c87f6188fecb11ab0c76cb81e73ebb1291fa3d56337c4c77ac0c770788f01a01fcb219373533838f4b8814eb7a1061e3b6e6c6a4c3a6872cc946448db48a4e5703a899aeefa789eaae6a65c7710e4e8c5b9f6cafef8e41cb373693073c5d37d053d3eedc8110f3c749e153ee6d78af00745e7ac80bddddd37041d3465ec510caafd3d4e03735ff4ebd7efbdf7decb79ef396c2419555dca6daba6f5a6b57ddbbf6df89eeeee6e2c3742708a9d534ca37c20b58db30ce4f81d810560c250230c31335b6cbc08e1477c1dcb01c2a7f6e8f3deebf199f9cb7d66885c5e6169805f35d87a2eaf3c5acf2d5a7d7cfe72773df76fd6991ee8fb8f41faa0b51aadcf634fe56e0825d0e2370cbf5dc2c0e5728be4571efa8bd96a462c1a040b620ee1454c221cdb20db0ec120ccefef632e48103e758e352b326c561120ec3424ec44b8d390381fc29d86645352827024be233336f7d6fac01c73da11e9970b31a308e148fcc88c72c483704cbb5c445be3b93097d9e0abf15c3c2230779b54040c5b2e8a65c138bba67b17c5a6f935250b6fe1935b0ed5d0a6c740e8359f43d882cbd7fc0e610b2fbfc6579e39b6a335b61d828197b7fc392633382fbfc25c7148ed07eb457e4de8a2b9841bc3a3d12b0e241e940a62de0811844fc02740a304e14129cc655a0cb68a65e1f13e2cd03a14f009783be6058d3784cd0296d7e09acfe9edfea575a2b89405e88dc83765011759606e5ec8d16f971398315de4338e5d1acf0c9d4ea33520e8a7afe6801caef90ecf4cf7523ba2f9a43747349f3e694f0e7ac5e1472a2dfc0e3e9990cc1b2190b805dc02340a120f4a492298667ebba8e00a4f9ba4dd4c91635d1855b12b3f67f874332911fea939e6a575a47495176cd9a1176c715f5306f6450d9dfd32d48e75c1a5755caa7d8a34ec0aa32afcf258300a7e691d6c0a36057ed18c30c227e0ab11518453c09d4604047c02ee342280700a506c0213b3e2da39b7505429f0d8143eb557f797bb226c1f08c28df00f20f122bc62592cafd894ef4bcc0e771a11fe4b8c964bcc5f61bedb45f30ac3a7be26f41b228618c23765c4bc218208227c539885ad76c5c1a7be2e265b0f3eb5d72b8cd76ba7312bbbc2b45f715c196b9ae648e6a630c7eb5ab444bfc8af3818a5d1f62b0ca378783ba6058f7973b9fbcb23306f2e0abfa4240d366c0bc5b2f0a9a96c35d0e5d3e5968be65b1f171d656f625916c4dc1492b9291b68cd1ef31166047b94073811344a118ec4879841f86a44388fe2000f824609c2852ae01f08c21d92295401ff4011ce0e35086caa02beda0f953fcc6910602fc28798ce8940e23c882598707ff926d2964f22d28a5cf26919a5d10bcc45210053309362abf2ee3b1ccbd23a4820005348e84ee3f4be16c7c6595608f618ad3e339f79fca1f22c877fb0fcf90fd70bf100bf21828f38fba6a22644a45ea8046a16cac38120948c293423338020200173154030301c140b07e47924aaca071400108fac585e4017099324877110428618620c21060008c00014d0060d2ae0814788f862e0d02ae8a061ae097b94783ce67a6244d2b94e5a7ab9bd890e0acebb46fd272668cad3a5e79636f9ff524fb912e1e816d1c0de7b019b528057ae4fd5cc723ad4116552ae138253e17bb30b065e1f3b8346a86999c5a71f8b5bc02f4fcd7b2ce28464475c2e829d20b43777434e13f98baa0bb6429af586392e27980d713dd2ad372421566f6224ef692f97fe6d1e276daed22c95fc432a6e70a452d823fddecbea80b451d3370a26e027b0bdf4aa113184d93e3afec276bffe666a1b3820a05559d2e5b25540ac3e9341e5a9ba681fc38ef7d6b72023c7ce003ecf796bec104b28a7d1bc84879203367bc888be2cfa07269d32ec0e430b4039ff6f9812d68b9dc1cc8f32fec70204fa9ac1d10ea29fcb9b333bba68c322e076fd54ac30cdf916054028b61bfcd8d5eb145021b35b23b7e87b9785f7c97f0296f8bf4d561ab512312cd78e28ea70593d76f6e422811eaaba572ac439809f8b151b6ded0bcfdc2897c3311f6b9eace31439c5f80657d3d10f35817a0511cc7e77d2c3f5215d8d36ccaa7de801fab84a8bfc66e32c50bcfe117f559de0f2c8a245fda9d8d519fd4c31e9f1ef2155bda021885384b95549d3020f03f2b214868ccc9e83a413f383bbd9142f6b96de140bd98840210140a77faceb6522b39330bc33f6ca181cb35763c7f1784d54c6fa1262340c99912d6cbc9a4317b7af935c0e60d00ee083303428a6b7a91b0a38744ce1479a1a14314e83081bad9fa21cfcf3d662f92120f8e2594572516383011650ea0440f8f971643d1ac26c8800b98a7c4ea06b3e7ee5d01e6b98a3bb2759d870d09795709f51c23975da6a8c0f9d96ae72c3c4c1fd4c6b0d171865d6d0a0ae7622fc88b43ab1aaf1456b149d076a2358b81fc9e951203ad5314be48850fcab552bec05547a888588b5b306186802e14cc3b929e5b29bf95709171cc3a1b40d94d5e31017e44b7a5d106499cd39e51f428de27859517a998652393a5997e093423b16b5719261212dbf41c874b31de33739dcfbccc4ded8ac79e1ec24003e2ce138f134e1eaa56ae324b5cd9763a8975f20eecca99ba2879c85827184f6084edc252a17fb11685bd070bfc7fd106a6044a9dd5b8db15968f2e8761684beced692f9aa068e6d646c71835181d645fa23f3344f04045d86424b82bd2a4e068288018c5cd6e17a7bad95317ad8d615e427efff882d56c7b00213fae03e4edf1ad30dafe44935713cf04169ba8485fa9b2d1df11e64203a7586868d2edcc7d01544d95cc8102cce67b113b89bb3ff55a12f1f11bc3092758fef93bfc3bce4275012ca88da9f722737ca819ff09a13765adc3e4701dd57be87212d4eb1fc5221bcc6b1fb28d8d90389d3a56222ecbbac602f895a2f0e86f300af2f86cd16604c3d85012f2766704f357a62405efadfff93fab086839a90e37820f6ae43404db682bc20fbd6a423eaafce9f3f1a280d416ecc4e5d32d17f39917083cec107eafc58a9b6d6b76d03305b7cc22dc4c9da14bdd4e2ec993ee9417472c475d7c4efbd57d71ef4e27a2822d9d7a564c667e0173b47daaed514015a485e81a68c7bf37a284082ae90b15229d26d12716380bdf876ae20eee44a2198bc75cb38ca76a64ec03f10622d14c9981e80f3e214c7b43caa57aeeca36e437edaf4f0f22f80abd561fe2350f839ca79a303b2073985b7959abde0ad0f3213c937ee9b7b590fcf0e57c7567876a2876405b343796f03e572df0d63b257a106f82b8b7749457540d0fbf56ffe2dd1fd93b583462c927c654ed1656eb23209afeed1648d08ef3a1e4c57ae6653b077c9abbb1efaf9cbfd7a2433246ff2e98502bd1c784c6b1db7606edcec71701253e95ede827e93aa39212d729d33639876c539d92914a47e6a99ab67e42cac747ca6c639b625618fc215eaa95faebf28b22025f55647c474e029754f76b85ddece06a5b7ffaaa1970755f63111caa24046e130560ab7612962aa233ae7869b2382b53d5480f61d89d3a899a3df4d3c1640012dce2d02e22f6a67c3ea88b00708edbe8eb3862b1f3e22a83a706096603b22480ced83196d0983587b3d6777b18cef73c83aa0ae3f8340eb5d9e9c7eb4b917e2b00f22baf17c328a008cf0f0bf8e51ba5baf3443915a4ae7b6c816fd3656096ea294c78d19526a220a35a1df5fa1939932574c748e7468c303d7a4489a96c31305ccb19739cdc6303d6f76210d29c35ae84b4484d59270146dffc14f01ad7845c221d2d1eb447d5aede4398ca2838fa419cdc2905f365232600db9c985e48a4d9c540b8a7d1d65f4d6441ab7da6fa38dfb9d52891745d5e8dfa4a6dbc9540be616da9311712c8d15fed1d734063a9968dcc6d82340a51bcdf1082b307067dfd41f0ac689387ae9655902a1113050c4eafc42c6a677b15e129e1f94282301d4cce69f02111864e78aa034e8b634914e7fbf76eb88db5a219960a947664088dc2467bcf1925b58e4be95b33e6a8285b1a53550489a16166433ff286727689ebcf2c66d8248a66d2ca536f2443096014f4f096c36184b86b918ca90a66aceb758bc43cf24c5c2926d74e02e31acc9615ae70d7bda242663a19438023fba4b32a382c5046d14040307bbe654104569574755edd328bae3af752038a0e173cb9dbfedd9a78ff49ac2ae74a787a7945ee24fe0268aac55689c445e2b39901621fde5e0ab3acab8ae9162e9bab1693adab71d58e445620786e018af51028abf405caffa92682a7ee69b35631dde5eed41d71c1347885cab6b81754311f3243b633ecfdcddebb72bf47c205b7e3cc3c99da8c289e05f9f95e2bfe5b904b61c9122d794498c1c30ba505e9be13bf52ba275892a1f571d7a111477b28b44ffda0a725efaf964d7515f7f890ff54401734d678561ac26eff200328e87c0076e23c68c8071cc78524ed1b983f8cf7c07c20c70db78854cd3b367fb63e04fdeb6759c3703071906b4f91550c7fdfbfe7d7d9d2146d05cac64eeef4e9a0d24b69eaee24f4cd9c1a98e96dee499078d4661c6a435f94fb72085f0c18f287c7f54f5c1d4d23556a004828ac7c4e631b0fe2f0370f435a86d273194073b0a78cde0d1fc6fa194285191f4733d2e8142a7fd4ea515d99e4ff98bc459d0f02eab57f96973508b18482746423df319594d5f7f87e3fab3c1e58b78e880ca8133f202975f2b40be11072f6a72b81dcd7c990799447f233dae67a597e48325979e5a991c24ece527f6ad47de8b5e05457a55b722714dbc4317635777bbeb543694bc9ce457002e425c42800616285ebe444ed945d3fd735821c1f57d76f0a175e1de67d8da2597e2a34cd085dcb0f02e4b73cb0f00ebd954dcd4759a99c35b6f3977628d538350e0c6577d263ea0c5e9f96bf332a8f7858fd700515c835e15720b496e01e983f8b4b0d1348806da2f69def35633e1cb302a31caee7b73ca914b927355f39463aff83c6a6c461a530403f6e076f4a60139ae459685bd6e87a6607a93e761553b8d6274173757e69b90d943293b176db791ebffcc4546dcff2730f7cc14808147b9299abc14c275e6ce9904cbfb990bafdc7cacc67458660bec7fa773e74d9e088fefbddb999fb74493bfdb6b027edf259e97fd54e70950e9d28ce6105126eb92b55410bcff32bda0e27f04c21d55e2e98a3c110a69fc6277e196c2376e4dc280eb75a4885056261bd0c2c08e9b9be6bb083488afbb37509aefe2cf7640ab6f27fc019fd65470e18a7683db920cf23ff349d5696321c7118026b14c9de7983d0612d2c9966df69cf99f8410fcc5bb6f0890b0266d020610287aedcf90db89bf11b9756bc62937d75b5a124bb9100343f8d520bc4a002ed51faab7153c0fc8380c5c371e003518a441222b10ff174b9ed6097f8b577b4220b3616ace5f597c4f2ee79d6c28a02a7fec4fc2618e8a8cbfefd47b0a9ee44071245552ed20d4ce921d7cb6c5d1c4322b988d24ce590b839739cc88936ffcd56baa96ba954c5947d99ba68d129ef185930fdb655265c73e9c292f88018a9398674bb8195e8b9e03356f7344855471e039adcff2d4ea290429d71f369a01f98b01e6272d15e04198b24761ab042cfbc9b54a979cb922fd0de99018cdc08cf8a2fbb32e078b24e17b22e69cf7aac72bed4801fa0996c1891f98d44a7995bf46c683b49dfe60867fe5801498f4cda294f238c06e6985dbd7ab13ecc3c4603ed458eba7540f467a98904aa7bc8c48de4038ffed5cf22b70461b5e35315c42c2263ed1025c1ffec1ddbc82bc453f73c9e37eb06e08585d3640e2b9ed19f0378603d4764b0e720b732fba193cd3cf3f975fdeb9994e7d1681aa4635c160d71afe7cc8dc2acbacb859fe5f187ee4544839d8a9f9bd8a93cf36ccd911da3f53dfbacae7fdf4793c01566e73a4e79bb90c6e264886e3c373f372929714979a4c2a4f8b05592ae34355728d672dd3514830a9f6eb505e634faf776fdbb43e15ec01269c39d88842aba4054417c9f6485acb0d78cfec0006d23a957d6e074dbbbcecaf898fe972bbf053bae29a5451d3834636fa04237da31c0c4145d98a31e91c7e9d03baeffddd2c6ccadd681f34b09a866c9697810f1e86bc94900286ed8b37967ede981980fa2c5f8ad6b001b22c66aaf21b4e103a968373d23a937e1a58ca12473e431d6a256277cfbf0b607785613f5cd49e24b9693c3c6722e8e6d45b28dc79bf7c009e8017be15062e9a93522c41672e9dc40bd08e7f98880606c4558ef002d8f7935668b1b356d3a5905a5fc762f2395692ecfa776d10cfbbd6e9c21fef6a7fe8d2f6d51df6e131091864dbb1bad4b4b303597958a6d73d708c9470199d8ac8533672b017e146b31a1f37a36a54ee9f2ff49f0e0b1e6356f9e12f62644abda8df52c6ba4b033c4fb451a66dca95159de66cf54f8c94cd8a1242c6e8fa1f9ac4804ebd84b0b4230cc8e7ee6b48c62a1444eda57752d2ddf39b7c58cc06998e9db10758069614fabf4041ec5b5ea08565b53b3fc8dbe10366ddd162d976b1365627eb427e020f3b467516879d1cca6b2a7a1b5e9845d018eb23b502629e6fe0ac7733f106fccd70aaa4ec75afbf93dbca329e8761746c36e67feff3c8f130cf048fb1b92a50ed8cc14c2b9f9f4dacfb0e43647930a0e8c98f21c57c2eae8bb13ac320eb0d4fdb22106b85d2748641f4f2dd194c9b0284e022e84c641d8a881cc01aa9cd283ae237b9824a06891a18b0f92c2de96332c8fa138619fb040ae0cee8829808cc569cbf19238566f97b73d0e0e76a2dc4ee2cd09b0001235408fba82c4ebfe0bf88cec620059ab33ba8cb64b9f319f31347d5a64849391f731b0cb31bb4b937c517bed138fa53ba255534e24a978c4765c9716033f661f6ad5bc76fe99977e926f86ffedbe2bd8c4f5e19bb95d988be2b3998c1d1f8998ab10c9bff4e7659a06fdecc14df00fd73887190e0040052718abeaca77bf16a8da978e72b3a1139d79651ba40a6714b5771d09f12251b796789632ec34c0c565cefc67c091427ea8780dde06cd8e2666e752c10797042f3e854449bd08cf6baa034e81553bd76d21f4ee52d85c58101aa3db25fc26fc1aae0b1a6f6dfb542dc7c91109229012417a823022875d08196636760d143393ae0ac20bfea4ac89c322a6e92833eef70bc3ea315f759d29eac4db0a9612bae7d65847b93794a61d830629f91c215eae06304e0a3f07ceee671a323f64a6414428ca9ac7c3ac2e9e1cddfdd27426c74233f0625d3e578f67cf51a122a8e02f3571453ebba3987511d9c9f846b73aeeb6c146eaedcc89ba81ecdc69b3b41ae475cf00b00d8f959ff63b41f90337c23b0da10ec81b4fc3401362efc2339399dec55f5bef65a0ea2c0c286fa834688388e152217066d2e8123a47c90a8fe8e1b3024f17af7c61e9246a2f829e7d7fd30edf839d96575479c57969daff0536bde448f913107ea8966e1b9d14a1c3c66d5407fdd229acb80adbe9eb62dcaf454cb6011477d9bf5126bb46548b93341b1fc3cebbf32a178eed30d464f56befde372ca97ee247a50aa4728218e71f3ed82c7befb021fe47592446b4a9b3e4a04d9d469c8dc1820656fe88e421d0f5d881862da59489393275b3ed464c80b6bcfae090efe4ef133a3ef83ad955aba8e80405eb7a12514d1bed3ccd3a952577c6f8c3a00c5b0ab60bf06323252382b131221ac285d229308a1f52a9ec5751ce7bd72f4721e087e5f2de10e3f70e062cc6557e87b6f3f6090182ae741ee64ef15eec1dd2c584511ab99a1c114dcf64bbc401565a5f592474e073574bc4b17ba8834c80eebfa41b13afc0db477e6d6fb5504be7049b5d86b10c2c33e77e381b295083cf0f33390dff81e7fa8cd0099c39a799e725375bff07e6ac292f35598a05130229d5e3688bab26c3b154fdd66d9e6f150918b9783c0f7f2b0f00eb821066bbbf2cb67a5c0db6cde6f8d9454b6e871c09096aab1f74dd4dde9cd6060d9134871f5e9be557ecd6cab0b0a3c71e37d41f6f79e675efc15e9c9ae6f8dffe9ccf9f3fb4c5928580e7e9379be7c37138b05cadd6f66c817df66da82c0e2fad999c7d7e2f22bf82f40f4d8b1416353fe77b8d7761a2db66b0ac22901a605c2d56f32cedfaf66d2b26070f9ed4cf8ebc3ecb6165c1c7f3713fef93c23d60484fbef66c43f3f678485e0e6fa5119f8f7e7cc3081853ca9dbe4557c9b7e210dda2e359e287a1941789cbb2d85eec94cae6761bd726324acc7577f2c7ac3abfd793534c99b214dd5f33e041ed3cef292f16a633c7d30f8667131cb2f56788122e84322ac94f0f1bf597d9ebf88c9fc951360b906bab08cf65f93c0921b9ed0bc83673571a4532ea90b94c7f901e75f64df0abfa4ec2981aa1cb039a42a16066520169e89a12579e2f88602d925212a86271705b3a264ceda4a9e2ddd3eefd2022fb90c82edbe6c4b545ab84bd4bf5165b8878d1af293bc360c40eff32ee137b66f5099b72b9267e96555fd67f76b45645caa0befd8dcc2b3f545136357a8bda0b43dfe923691227c9bbd52d3d97b24d521e479daaec609da0b4619e0c8dcd7b8976945d526028a6c10a612d019fe5aaa7bc642d1250741a0cd411e6a31a6b8d536bfe241e3922c676bf64bcf17a892995337a635b7eb70ab59b94c8ecd13bc52785123cb85ad0654c310fcb175f28454b59761552545066ec2782f6a26a27a46fc5fc3d4d434c3ee10312dec8d76a4100077169484e4077593df8fec468b72991abb0100f69fad94822bacb7854ea4fadb3e7369c914dd1fe1588669dda9629c5dbcc5803425497d01cfd377354ad07e704a16c02eeb888470d44fc3e66b5e42f8b4c48c4b53585b71af903800e149f52c526d802f444fc683bb5c31df3be1ebe1a6f1898f8948679234f18ee78e8a8fd4a2fbe75e25c67c6cfad6a52605642be1a05c3889014a0e129f38e8c089ff8c8d3732cea1175d4479fbf61a565069af59a70a0760910113d24f3a40fa82b7be794951d2c0c62a9aa7027ee3fcf474c7d37f90f434ff12312d50d6238a39ec3af694da03e629cc1f262934e6ebd4dce8410c8b2bc1f4f3e6c244ab30c5350c74b992e7267329e1e1fd9eb83bb0dcd8d49a448c4f70a8bab402485495767ad865a6f2369a162cf1cda58ebcd1107c6a841754aad0d2626dcc5ee7662934964853a9133f327e28dc3cd96f4587de12551eaacaa088ea11f2c8d1d4c381264df5f8bd06fb95b6724476d7c432387ba876c4804f39bb42936382c10890cb3b31ddacb32ce392dc9c422549c19ce54613a03a775469c5174088065ca57c7ee84284b406da185058cae04e459150c4887c1a0ba6d052bf7cbf2f96effb6a9935acf89bea34f162cd0e1718a23717a72351ef6eaadc1767bbfa6d2b4cfd5d790a5e2a2fdeee7e1ea77fb01761f340e0bbe2dcc3908ea77d54e308ee0e2fafb9244fa2431f8ad87e87ca86a60beff0468ee63264464e1dd9f9bad3faad823deff6c03bb0362efcdde144d3b8dc5a1f42a074445b745e2b24daf78dbfbf269ceb657209f589a63d3efd3e2b51200ef927532a440813c6f11d35b542fae2167e94cb16aece2b57fcee15f796d680dc9adc38d4b9140f0350587a767fd867e4a3d2c3e32a22e81e35c3a97ede4671f8a7385b9822eec8a5c363ec9549e64ac68e1ccadd893bcabe8e703e8100ddf96a0e38d12ef6dd7b7264df657911ebd49533c9d37ceef2dc17efb26f5bc2ff483dd44c5e6f286942de3b7fc98a56b1a119f0eabc5a6dea13638a1a693573509f5cc54fa884181670e5d97d95977498376a845d31656989231139c575852ee952c099766b725ef258399c9f2b729f9494140cda3c9fb214432d7b88c791f9b1dc5947480d6a1316c31bfc7075869c817caec906c559772619ca54bd9c6848163efe21fd3baf294e02a355fbdc4efa34d754d6d2be4716d8b30ab94bb8aa56e2d247fdbb5c00d49ebab2bd493305350709e3dfb1c1ce78520aafc98792c229436bf5a059baf87fee8eb76ce23cbb8c7418eb1000bc438154431797e34281a3c9cff83373320ec019b1cd5c88c46a0a5effdf6bc108b3d0345e4e1a1003f2ec8eef7a1d83f90f25fa751c443fdb21240c3b21c2107e0ce23422090647ecddce1566f18d5642100d488830a886dd3cd5f91e9e748e968ceb9a4ac5a14f60b0659652c4614a5af28ecdf001a302e37b0c6193af7def8fd52b1319a69ef76be988b5f3443cff6258dc1be1e56d7d658ba97d8fc74d7fc0bed18a769fbb02bd707f27a70049fba561f992d6a05bb52cf2ed7d65672d726b9623bf21e56e4bfe77c1d4d6c055259789f7732a551fde8a4b8d1ff4e9e2e428c4413202adb87c8d93439d2c716365f83c9422cc98c4a115df466c7e90abce7948a03a88075ea71f9ffea74b56eedbe014171b9838da77d04c86a239e2228bf4feef7abf38fcb5123347e75505dc07d5c582fba54a86cb1f2b96873a5464e10fa1d3f22d9e22abfcff927716cc09e469d3d4cf418cf3778398d106ca831bc50ee560369429a1bf435c5e5d32fba2c51cfcd52f85edd076dc11655334d16f6be5467196ac65596b119c408ece6cbb3b08ea83eea1de7ac852374d7936571a77873941c3fc4c6bec52128eb208a14c2d4b59132d4e20d4f5f0adf11f820172c1fd3d0edb66d287223bd981b8267d2227dfb74dd9d83bb2202e8b5bf326dadf7b9d2d115d028fa6aebe0dcad26cf11605c8c49135665b3bb40d1afb8bc160c66e8f6476ed0e11b6517e7a283e5859b89743781e3a2c4b9b66820d931941baad00d83807feffd20b398abc0e856b2d41a1d00c534f5affe6a43421a61f86a62107da664765becd360b40704b79e2e4220e3661e37e1d98124e98005b446909b47beb08de0daa5e4e241011e0586c3ae0ab801b3743e39e2a0da699b5fca7d736af5fd1e0166fd7eed13ee4fb465d02a5c5dbbf418f36590f150a37f36ece89e4519918210afdb76d6b35c31df608affa0aff74e80a90c51e919cd65637a03f32878a41ba8a103ff93959cf5bcb187bf70c6adbd6985009517f2ef26e87c1bb29434a11e8fb86765810ce03d007155074470c3dfe48d472f031fd082f98b7f551d8b08b17a92a1d0b1014a9212969d4ca6f4088e6ea927e20a7e4310e95147eabf4030d7bdb4c845fc30a6adfbf2c1ff882fadf0e39b57d3e1cd20eb20ab21e92c410c5825d670d3093121da8601475ce27b903d481780fe07f4b592373a16819178b2c9b12a15364fb8ab70de60e69db67b6f5f81f32fd3b82d695c1b1754d540274ff2bc3f95c23518423255f0528822bff34fe2d384aad4820f08ee56ed5245aa47114270c15cba5e250dfd202dcc0eaf1ffe1a5d17f990f278e31d40f7c44f2b470ecb307c9345cac8270bd8fa05b4a6b304b122d3ae779d3ada855484c19396c2f1e4cf02acd5c84a4cedb3d7f0baa45bbb517701e9bc263d3a5d8ef9886bec18a4db81d7a9fb69946ba9fe7cc1be867e3d8fad60668753190b25112f6ed3cd72462f8bad0fcc235fe0875219b9909b75981ec106739ff12184b34cd4c8409a646fa00362ee03899d6fd6be017c6a1bd69d99cc2abb3f4f51244b8abd611a8da934dc23ee60a0427c9903bb38b57bdd3a855094369a69a902cdd6af41210ccee061af38d56940e54058e457a06ccbf3d0ad74129ab4aed8e4d6feef4d0f6cfc7dd40cd15437535f1f57ad64099959eb1b530211daa1a3a9588051d8caae9e44774cd78dd2302fb1d1e90124facd78900dc39c4e528c25df85201bdaf016f23fdc1881617b2555594fe967706a42220dc183225335107c07ca05f8963e23e9221b1e38c66b05df61d4819fb6905876d8a972ad9ddd8c6f463f0587ee3d9ea48d456764bdcdc0fd444320d1fc0005047ddd98ef5367cea8fd802af9c52259b64331a71b08eae9048c4342a3c34184ff85f96693916e4390d5ea289af97728ac16430e31cfaa46cd516e4ad43bc968ca659f49398c4786d26232883eb38e72b35e8e45944072593518ad8c85118c795de5cdfdf82287c83e258f8ea9af11d128704d5e6cd7daa24312eb97d5530b860f2d3533676c2a305b33e10e4bc9ea53ab88ad520f26e2209935c5267f9c80143e91a62b255c6bd58cf51f4df59cf9a83709a74621799a06ed6413b58f01d74b56925155758db4582cfcab213dad0053fb2ea0a6a07231958bebdc7121179bf175b63c678f97243856831d81f41d04b98b5a7e60aa77243530c5a7715c808be783f6b8a9dd9fbc2b0107282bf49149725b9f1a91ff890ce97432e8c1540e275f19e52c0fb8b4340d33cb8159c5a3fb2e1a698c6a6b924eb3ca796641297e392c3582c12bdb31a30744303e4a49581b28507a1d7e9ef2c3688d267239615f5c8e0bb96e53729a28687a2e18517091bc519a71613d28908716278d758597561650723089b308a74677660723d207ad05b2defb07fe14b938ea61966ca5f938e82b46f6952ec79c61fdf02b24635028bfa0d44d8fbb5fa03370fa39bcab0b19c57d1ab4d8374c001ce91e8c937bc4d80bf87fba381ccad55b9997d07b93df7670d3ffb25b1acf709cb4facd2eed2530ac9f3b457855376639a6b8f6687ef2b1b1c3b9cc14db542ef9b4e8db318f938d55c5647cbf743383e1f5a20a5cc44b0020b066888ab878638835b0d8a38f4bf975b2308cba38c71421c5c1cc8c2032234f0b8148fd406ceb7367cd98aebb287292e029dae904cd54aecd77edc0278a7007f677194cf064285aca03ec992393ac503d440c1cd8217d6e3fd1a3d77bb2f6da505672788f74e5d4c40460f52cd5318eb9bd314a243be394d19d05f430394594191a075050a620fd21ef47697510b457a9bb3fc4560eb0e2ad61247cac05e102436afaf0d8348ee953ce9f8e9d9a2c9364acdf31fb3b44d52530a58942219b42efd847ba74ecb811a4c1a4936795643c3f0547f20cc8211e6997b959e910daedcaf52387d6c61ed02b04a30fc86436c88928b42f625253831128d3ae5e916495c65325585b122982fa0476aa918366264e2a5537afc02a4819e740e50af334b1c688b10470dc27473f694bca40b3c0234a3a63c6529a7615f7a20057c42660cf39d21722881d6a721fd6325a188950e639688008b0ffe869a10068eb05487188f1c1050c84ac23a860aeeadc0aebb75c1835140dd0891de47600f59522450c00261ca6ffcac5d8ed70b4751e021c8509f0bed6ad8184fb1fd18e950393df47a9aadb65829921cc0b90be9626d0cddb7574ffa04cf2f10b1b23fd87cf8ca4f872d31f9b617217d04f41e66427f1c8aa4c90306c23d26e99d5de26f35cbf7d972a25141c1c7cf5fd043ba1b436a1bada96cf17afe95ae51b8a253102a79a0af241d7ddb271cb6487403743023a64345cd7862f413d2ebb07d507f51846c784a96977e8ec1f67f3dd5ba742212d116572b32d19d800285658e16f388a82e7d3ecb1e314c8f4cd99acd41ffb94567b136fab43f03357842412d14f608fd3ed9c2daaed8ca8eaa4f962b190fd63dd5720529cd1902d958b652b0713e2906232e34378467e2e9a54f48f5526d6391fd69ba411bd9dfd9b2586ef5487cab058eee1e29cd254db5291306a6149410b959833f0f64cd969b3b07f608d692447baeb17b636222575e14dd450a3963da80f52bfdc90595270d2a0eedcc3ebc32063bc8c9f0bcf78c3ec6225b87d64d3040d4851b50c703b571073c7621cd41f6f0cce0846eb459ca44f2b85873a77286fb8eac167f8daa15e399843ec1aa6cecbd56df0e866a1c251d21b8d19de695fe3527e1af85b48487b98d9cb6af8044806c868f850640aeea3fbaf02cf489fce02456698277a4861fe4eae2a4a2896b95254fa755c4c59f32eabc6820175b7c6761d1f23278c5101216da1685be3071af20fb55ab041b86c2718843d2a3e58488e60ff130e10ae89d281cff75cf62733ae7403274ba1881e636bf610a3d686725be1eea583f9ad66124bc165278d88310c202197aa87010847c3537f63b1cb813a0158d3121c9d0ee02250cb6490877eb4bba13df1c6726783a660041ff2fde9f6f725a49184f7ab92ddeb9c4cfddee3ea403d707845b03c1ef1bdd817b2c8aaf6a98d43187f7752885421a5af5033f4ecf60d1a0d083c4197d77139d66b1ce8a5c8458e251af2b515907707438873ec85f2f5c80f3eee91676c793c2becc22f4d5db51d143cdf16e524a8935baf4ee59d41ad77ae03c1b6606320923ad3255bedc9d55ae30380da6d52b96a28777e07053cc4f417c0c4b3e1206fa65956e28f7c7434892ab7ba622bc4dcbbc39fd62cfd3d3c59dd8a3a24cd0dd868a7a22f2a56171902df4bc0c53268758d65dca8ae80e16416b4a4ee388848f1e872d2169e9ab3eba2e398e7396390a39d6ce11ae2f64d8764ba63e99f6f17ee51633dca8c8aa58ebed19393d74b922ce890132c3e88aaf17ef1fa43efd934be58952b335e3905457beb87baa001f9974cd46e6e867fffc3d18fce36a6f7ab651ebe516b34da06fdf366d3f753f8860c255efb172831ac239c031dc177d3da49abc6d87f01d55461eee024a152e4a5596db00dbefbba188e38da0fb30e4a82b5e15b882eada835cf22bd4095723bc37552f3c6c7b31430b7c5172cf6370e8f4429a4357bd656c6709173563ffa89a42e0b5d8e674caa2fcfb5022c9e20fd79b271b9612d1750d0606383f84976faf40305caeb8395ad2571f09cb90f7a38c7d002120d92a05f0f3e2184ebfb524a5d91df6c7f756da691be16951c649bb1663ed91f30fb1e9a3e9453a1223e358207519de27c8f30344487a1dbe3db86293b57f7f17b15f53ba45eebb92d41324c9e6e08847e4545efe1ad085c9444f0b2cf93f3d6ebd7f53b7aa3ad53468148c14ca25196bb175b8b8e209a0c1878c4597be72e674295c0f09436f0661717369e5339559ef59ddcfe1afe86cc4119100e80883c1fb9931221d4bcbfef3d23d4648e32cd1535adb282a0727f9fe23ecd923b2235d88b34be0331e7512c06c5537a30f2d46fec5239ce909f7e4819f5cf53fe67fae1042518d58bc5a4688ae48546c50b6e869ebaa1586d58240aa3b306fa4e908755bbf54b846afd0d4c68a559570b9207d4aa1158c27e62b55f43ed089c14a4af785d747a2087a8dc0a53b518e486ed08f234e9d36f430dde3d4049af798d06be81e5f53bd33f43e88df74f4563f7919f3992e494fe1603dad69bd1ae88d8b7fe5db94c0fafe544ed54f922b301a2cbb10d61b9f26e6a763e7bc36e8ba055e2cd0f679ee0a0b00d13be840230430526522fd80ae9ff8efcabd4c6aba51ff0ce45cc83f8d32ed70304136895103d2dd01e4732034ffe6f543cf5b498d300839bb6524047744b19ff2df0a651c3fece6048222b11e69e06e557c8d39cca9d163a01b6eda7c93e9c4672baaec0d6f6395f8b6632dfcf5f60a64d212df203d973ffbb6e8e072d31aff73ddabe9cb990485fc867a6a5a5bd94aa888a689830ed2e549c3ba2874bb010281061deddd216a74eb208a5f5cda836dbb96e970d49a25123a7d8b84143145de86c9d5b288f7b8965b1038f92a8608c315734605a6f81789593ab1e1fd4b57012b03381bba0c2e0a40d5efcc468e6bed219c4a0250c4985a7743787099d9245d69245e4d1fec631b590b9afdf5a28a6b5dbe38d73203345e1caaddb942ac0b87edbb91ac8c2f05d753816c7b2bd4ffb771922fba8290bdad3f511233777824cbeffb47e45d643379b031796f09ffa61e7d57666f82c006781cf97249221d0cceb336e6f3b6438cfde2fa101bcd6c9ac958afdf7d3d626627aefaa53ed9f7d0dbe341d795ec16a3c014f5fe2ab6a97ebab1ac9db7a2eadef2a24a1c88b65d26c63260d8e555f686e28cc0d31477b63a8f5cf65ffd3ecbcc768e23adff27ec727189f3415e64073b9b69d4ec4ab456386135ceae9bc472f26e4f61160f333ec432709641c6e93d4c623cc4d085b7a4aa3ef3272221e6e6ba3caf7c3a9ec5c57b4e98c576e6ec31209347c454b00c60429087f03384923800d3bbb5ed7db03a3bcf6a8b29b3291a4de99f4b0071d6976513a1842fbcdd981aee1a24f6c0f2b921184f2f904cb41318c77efde20b205c1ba56480c56b664325bd64fcc00b80f984433116fdf5e0115d1acea9c313374305ae943749d11acaeba4c9c858b5299bd65658d3d607b7a04632fde8d8e6cb5a972c518dd1f1ee5de7da0afaf688495f65f0fb719ac02eeecd983d567503db35ef823c2adb1c0a3910deddaa0ea23e090fbb360ceeff2064bad698c899f4be5c140c1f472cedb6ac111941aa3c478d4920b24c8594f0edc0c8cb03b032b2ff762f3c98480f53d16c69ee0d98c32112ed8db70854a02353f60a40480a8c5aecf7ecc13e88466a5de4acdd0c14f207de2eaa9c724755ae9f3abd84e901acdf48f76a265759570abd7b96aec8f3a211f19c93c3c5c9d26594fe2dd4af00c21949dabec125c4e691fac31a96d526a705a2e9cf12f5a6dba6f14d020f1471a467852fff8d0e85650c0c42a094f28286fe86ad63b87290744aa022d13b0f713d3d31c0d6bd601132b12a20965027145896127b9b6b4a64cd6762e5d21b647ba80bccc549e96c825b19879272299eea20062dcd0847ad35c5fb16a3370af0db816ac32fa0526fc747e3546ecb76e4abf6988f7d7b5120bef251cc3e3fd6f8f0ab6fc9743284788c3de77ace79da360a49f76c8d5c1f39625d8eada623f687ff3cb0d999291dd237c78b436c2a19c179d5059559c08fb7c9e16622ad1b202f8adfe01ac1aa6cc97c5504fc57813ce22534be5d83637c04eacad8b23be0c497678d2f73c3135f10d8de1ab832a51f499b9281ff96477ca220b9a97220c2f1cfac529b54894b045aeecbcdc69640e25e1cc48615e0c356419e57664ddc6fb2eb1b9c57a8fb273117ab496cf1a6f308f499e066e98f931b194f82824f3c1dfe3fccefc50e49d2fbadc486fafd27f2335ef96587d0bde355c86fee6d660d309a1a8c9bff2f94c1e7d522fb5057612b551207c9b45ca7c0d34c5e77917edbae997d7620d0d7cc31d279b93d826ed1334a9880d54a38ed6e1fb31c6e104cb3c234c80713451ba9e8f124781649796972e21d0ca2c983ea5c8b022f7a2e536e871952f4c04cf982268cc3d27e7d7236a4f545715bc05c09496c090b630d54879d047aff7fd6f3135844b27291726dec99561d77d88785b05f4dc40e17f25f512c76bf671c881ab8c4fa3aafbbe47ba6449c88c0a33255f8492fc69228fab8eea0ddb7949d28c2993468e4f9d7693ac2162cac77280958516e7d81a1409262d6d000816528aa0aa1e070187ceda34cf86d83a8ad4dcbe15c9d2a1e969ed6296b22c33c5dc9d9a651d6aa4784c84286210f14919e1ba8875b20d7984d43eda2d3b41ad8aecbf3659560ce0d73daa33354396ab935c7b069b020081b3defc3355e69abde46f892eb6310d94418e27a3f5604342b53469c01b1512d429e44b9d108891c93c8b1b6db8e10a04d4cc9f1f2ed59882e64124241386a3b2c16681f6663a3c665d6884bd8f8b3f32a0f28cdfded23ad026e1aba80846b1da38cfd37c0d3617989102101312e63e65963fc595a49d0ddfff2c5e5c2b5b3f922fb7542198784fd092a0035433b40347c289c51cf0eba6ed9648a8d01567a4e2ab96103d820aa92aa3bd8a8455500173174465ae0cdd784b42e81c283ae8c8a406dd06888cb27a5e304a4862abae307f1dbe527efc13f9050c674d74133a6c1e03b906e6dbfdd483800089f12d71c17fb38ea7499c32a2dd8e4f20b8211ba1160cb937389c9c34ab5b0d8b0670101a6317c4f03ad911a419f46a5f0298d0cf09641643b42acfae2e4910e3230890abcc5287e11888078af9f9f4495c4fd2448becc6e1269c0cc80649406e58fc5cf44a27b04fce79915b2965b2a60e19c3f085016adf13f0c09fcbe8bb03e64426a420ee8258584a007cb2de9c1ef80585130765f3e8a7b87627766ac0778a27ce11790302b209914a07e6c8267623c8f68f613af105a9b3c4021b0b24b79a9396361545f055aaad364363801ce986a65f2dcaa94559135556e0fc17f287ab702551b59e7cb232f0a314747c27deae3aed0cd173578630cae21f276576406e016efaa75072fd3d764cf2065a112c2b04f9d3b6ac383d03d290779e55850a7381020feca40e0cfcfc6868bbce637e713725d265ead42e10b0c6e14d5318ea9add45bd45bccbf5ebeb5b78edef6de30285c790e0d7b2f218f33f0ba4f75f8871b3b26fd183af15e2e577be4b00e3ca51888ca610140bdd0796edfeaf7415f140f480c166c6ad35a9df5bbc76ef836a791b44f8e1eefb8c4abf56b80fff8e66c95ebee128f005fe1365585de366f3daff037bb873eaf4a71429d2e954342b07afce8f1d1845e55f759d63c9aa38373e14c6401ae0c0a56f7d0bb1c2ca73340bbeceeb97343f331f01bc5d3cf2bab97207348743a30f021913964c7efea8a7d2e63a5708884e77b6d3af55d77669d8fd417bd24971e11409169208383290d2b295d8dd8a3539e9e3da64260c07afca34f7ce8fee515073d796948e554c05284341baf3507f8b29d936fa9978a36c6b4c5eae56029ecb566788c39179aa14d251a9a7f482bfb394ccb706cf47d0756cfff6757e461612882d3bf785bc280af0a23661f9089a40f79b85238a56eb6a2d85aac5bbd1dde4cc74024474cc36cd70fa9922270b72e8f65be72497d78cd0daa0e8f4a641b256d4182a6123ee7086c2f0f0d05aa1eb620bb7a530a84ef52f0ebd24ca170257a68af853042538fe78a6645dae1009f0b36a86e31b58bd5d33a15a81e1c687aad362da368c30515b5c4dc04e3dfced7ca7cf58784ab1f1cddd701714f3a32938ad373ad17722f4e19edde212aafe23fd70fc21bc537c0abe61342a0e5ef9f08ee3adc3f0ec708db07f5d738bd4f10ac48959cbbd2a62f8ed04e73d0fcc18161ea2695fb6b305f29e5d6153d93f065c02d191cdfbf4621b32c17ffe0bcb50be1c4134e87ab5bf0e88af11fa939d644ac03bb23233ec71982244255935c41349228d3305bd9b451b6275908ff575ac705c8ae529ab94563dd7b7304ea4d5f5ec28a627a88fd5b10f0a3838912805ea129e832f78c1c15c5dd43789ff31bd75157e45f710fbb8d24dcbe790af4dce694c352f26e27dcd161f547d47c1082e282fca75391506158bc10272c7f274d531a5433a48d1c2d50fa61c9ec624e57f82a29cd5cf29556db9753e6ee7e09a7a109ba403a203ccf8a06b9a86c9926fed85f629db2cc8dc1212454c78ecf50a61c9f8cc12218135165acf47b0421fd6eec8da1670ebf212a716153893a5c1f449e35f326e219beef43247e605302b0b1d2b13140e3023ead3666823bc459631b1cacd96ab0778e85cc88cd348d804b7b292de23cd352e8e8508cad02695e75e99129201792b3446a34fa97863509cd0ff0fb43b7f194e59fcaf24acc34a368a0378d5e8778c84a3bad01b44dd0f44b89c328cc001465e1dac17a36b64bd19218ec52822a1a05c997e50224b49a1a47faaa5501dcd3c66daed3adbb21f213ffca2eb2d263749035a68bcbbb0c96c3763151548246fc9f2e7e4479bda4871d3c9f91f2f0fa8f99f8d7a633e6b2a1b0e845f9b27a477724e0057a21608d785000d042ee126bae349bc869236d52c31840b77958df5e3b1b15647ac3e8c701945ebc75ca3e0931c49e85ae8fb5ad1aa70eec953c80ba723dfbef00e650d50b2788505d1a41e9856b9d11073a4f158487038e1b7267b1cd99aa754197e876939377d84728b65f8fabad081f6fd67fb56a56a521b05ea792e57225b583e4bf9d151bb77db6fec302a1e5a56bd19ccdb557e047c56832aa835f89fd83d9deacc3429db03f5ab4ef636d8ba96c0fdb2deb42655da026a7943f8273440970b2b5d7e3977558a8e75f91ad06d94a091b6cec39124ad77be46af7b08797d88b4adf9ae46cc3b039f9fc3c80bcbc6e586500685d151fb3dd45277b884acee71991346e9435f653b8ef42d6f580d6165ab3cf8503353d6cac8eee568363e633b4984577e1ae0bf30cbcb339c9155d0751fa4ccb328837ce61aa1d8d023df76cc618193e77ea893c8e866f7da2bca96542d82078c20f5b68c71fe3a5003dd7398eb5e0d1c1051414f4d5f2aeab59bda342755fb3e74dc947600dd2daf33927f61b4ec958a1ee115c901d4ce340f9ca86ab58e9b6612de52ed351d197eb441b0b4301e47f883387063c4e9abe1735012f73174c0634687f77bc3cec0969a5553474c538fbc06baf63596b2b702a6f66bcb6a7507db5bcbcb6c1f727e8623e0b72d5d18f3df60adc2422b5872ca5b8cc4e2c3d6b89d2cecb74e9c3ac9477f965b5d0fec540f60e97a5f9c6e514190df24e7c06f2a9a6fa1780c803831afee8be15a448e666249b10bdeb56e12f891b029d18e78bfc87bb1439238e7ba4ffcb6f5ee2784f15e0aec679c639ef51733c0778b0b97993c60faa7862c6ae1a1837f687eda01c1d85b99705ee96874545b2bd2539327eeaa2ef76561226b35bc8a1f728d1a3f16e3691da9706a905dff4831d5795cfe7e0e8c30a8935e58fabb75151260877b370f5c99b382654ba433f17a7e43ffdb3aa3071dc3cf508fd96dffb9af17f90a75546e3b4569e96e7eeeee28ad7a5d77a6c269d0e57f9a545b8d9103cda94605d4dbf373cde87147b40fdb37edf9a3c3c1d1342b173a5ff09cc0e6be55dc2527a018bfcb5dc38caac932f5e04a4d79d36f87d57f5c76be900d8126cca8de459a8215a7260a67853f989e7611be1be9e08d7d626585c5f2d12407342c72f6a724d2b985c96293207ab2ae9b8b8c7bedb12d4eed525eeee3836f692360e49c5985b6534836d137336ae947d8f711b8700380feef7b19c50ca909e5b6d43af055b358eced45d79555b7776940874a4d1575a0750128a167a6ffb2d40a67661be134128f7db8c0065f98205f5f479839fa88b9d2b11721a97700cce5b7290f2863a2486192208165458c693f388543865833b4b48bcc0a9ad55360aab0c00942893fe3b9e01e205c1eb98edb450c284329f262c5b624bc6a4c819017c6ad7f68aff11b1da3ed25f0bc00f39f3beda7c58a9e17c2c450d86d0b12dba4c5b1b78eecd2137a5f98868b3cae56947e04cfc457ae849504ccd71ed72b9427993c84ca5cbedd51b42549b04e5325a15524527ce907795838816b4a2d51f6532a8482abe36f57e9ad85a4a39f6ee18f257b5020578be3e12f67218d52985948b6501c07ae68f1369b34ab696ad3a50ceb748be60e1a26b6c2ae9952f5086085f90a7fed180c007465249106a52f85b1c44561424b596112b800554f1cc72c2a982139214aba10144c902fa6c952f998cba5cdc134a542769532615ce87b03f276827a8ba017a0bc48d5c574f594d52930f328a788ce2c5181455502e4b6a45dda5f02fe9c367f89b04a29bdcfd916118ec1a28c9e74a3fd05b3c44b1f64c1522d11cf47f3374e182ebc0d2c0759cc34e4d4aac8ead57413a73ab00deac53f53b469d62688428ebf8e03fbc4bd96b5f921e82437c84d3a52d3f475355e45670865801ad3340924e3be599e81d01bbc4bbf9636366176f941f6392ca33577ec422b34510652d491e62a8434dbe8c37f9921a00f2e254fdff5b44f54103973371113c60bb0c952ac80c6698322ce0a36d3f15948c449e5cfd9abb83e8c7ca939b413a63dd52ff6ecc8893f8b8c5fe3c828892dc8366c22a6b455da5778258b1f3e0806ab6281fd61369532a519177a951f40b99f6c664e303a5e9665af2150bd969233310b712c5a3869a5f6f1a99afe854da60d6fef44603fc3ff88b69901127b27b3c095590b6f4fd6b6a0956b5d13813cee338b481cf3081300265ae1c226de583528228f8d0cb3a480a222d2eed2b57f3b64465127c7769c7424a5ed500afab7f5fe371e8eab7115ba1149038dcd84c1c6038182a2d622d3760478ea8c39c2867ddedd9a1336c16b788b9efd5c719e2fedfdf627e2e6811bb768eb3e0ed6f58c7984cacf886f18869f375826b0365a2b5bed475c23c05f49d34c0a351e44f1b7a4fbdb7733798e5e00d4b0dd365a66ca2ba935e47176eea826a2547fbaf46dacc85e164397fdac555a2c3096cabaf61e16eb59e3991aa754a5d5b0808f497fbf293f58133ba935187fff977174638d6d4ba6015563991f752c3e2daf7cd06bdd79d218bebb362dfd295c3876b5b074e2c6e072036ce8f18a86e11daab4a7d2df66d65493f57cccf2201eeb2781f7a581e86d3600415c09d5aa860e02c86d6058f325968421877e135d76e83573cafd8c1267ef9453f806775c2fd01e6f3460ab03d000b3ee9c1b42c95ee65c7e62eeea319791903472335835132e46ff12d956b28077d3dac1476e8b7f3c01a84d4fe9749b5473cd72e514c320e463b9f6d390cf8a26bb13c86922c17b5f17f39d19365aa01b8c33be708d6cb11e7499b761b8bb1dad4e2cdeb6e4d000ad09dd2dcbd7357a9f81e4dc56062eb91f0650989801c4398c3cfae9e36731183ad9635fc66db548416c6761ec740fd0e38ec196c1304a34cc33697a5c2aa87c56bac32e2a8f9e480b1e25aa5fe558d4ac6cfb50b5693608631f406af9e1ec37dec1abbb1d4fc4e14595fa0bd5e349a18dea378bb671306f923842251c2c8526330ebf489b9925f53168c222d9d8212db7a4b07ae94c13a6144655c2d82c084912139945f9589b19494b0144034c6ae6601218f1dc7cd59f1e8aa77a50b1dc47eec20ece1eeb9a658f908fb9159005aebea204b59d0b94404315cc0caadea07adf1601686a1b99506d6a501a958358e3b2e314307937a54949e3a4cd51744d62212698d586e6ecdea569844f87ee048753e1911328cabe350c48e227f77403dfd01b25d85d49b6bd82004f53193e2a2bb6ec7dd368d1e57994b3dc8ec3ae0f854f81e76cff497f158c94ad6256ba918f63a87cfba93b77c9048e68315778d0096ae7400c3574aab58e98d9d3547538009c6530c9ef28989d7cfa15e49fab3fac083fe68117f73c94761d7999e82225f04985581de335433de0fa221739ffdab17931f0fa91126daaa783b678a363436722bbe73b7a192fdd9fcb4ac8d5663548e90f580053e52debb2942d05a4b524578288a5d09799110be78861d193a66340ae43e0990d2d14f445d69e0868f7cd1d232a3a41644105f777f25b127fdddddfedbda9a91e11c096b842661dbc395b42a8642d8df95ae9c4703e5f2c46305c7b0760410955fb621cae15d9751c6dcfea8a8b867628f3afb16b4215c5f7fd8060926c8c0a50912e97a5c2b8cb396050e8010eb3a282363b30ddf1f63195952332c84b79aa32b44b78925edd81b2e826f00e5174f96ef498952d7d363cc39decd2f65510e01898445a05a3c8c9bf8af015048e43b23f30106abf34dca1fbc78ce7f56e7d82532dbc4a9fb114c007c0c413c81348f848f7008fc36bd81242c1bfd9e7f4d8865f7f544296d4e0dbfc0e247255696163c27fafe9bf86306a8bd429781debf9953ea87e61f24bb120bbc821a073af645a5a21b4095821d9af39a7f6f3a50e0ca72ada9293450f1e566a9bce41890f7b7ab030ccd41e95727d7da3646fff1d1e42020fc6071de766aabb130878ad1a22d542840096a4ed88e37164b7fc9d51e719ca18ff6c5380ef05a0646c8a787d8f5e0a4ccba9cf6d4622d73b4c8164b552fdaf4f7c43281934747b2fcb0f155095deb022e31a4d9b0b581db1a702943c1c15b83c1721667ac1895d1665d8dc1aa1138704f854141a7083fbccc68f77addbd7f5170e27a08cf27c253643f5c182380bf42e39b94b465d3954117fbe326f5d79cf8a45004a9cfef15652f462d2e24ca8c4c285dcfccfec74045a0f41fb2a1d0c798a26a93028782345bf8884d6966acf7c1b8860251da6cf5c6e5b04d48451e96dd3ae924643f2db898ca538841b3c70de4e318fca790f04f7d8f051b217df492625c8c38a22f97bd2f93ef5e1d538047941dc804956a44dde803babb7e4e7b9dd07b1101d443f6d93412e5cf8a5e7de80bb7f1ee7f00d0ce43f03515bb357f2cd63650c4f3e7223e2f180c61796c742dde276684e4442d2137e81b23ea7095263c22d4abc59bc153e7f597eac690d539aac9b8871192e448aa24d02935ec36d26a656a9a6565a88e806ed7e7540354836be45b00a6d4e11f3938e71bd44e75319de0980bc87de2d6e849bff7543ada0514df70682b44384f5016c2704f6a6bc4cd87a77f7d8737c621f6ae1b92b400a360ada8601ec7d3e5be122dda5f2c587edd78b6a3948c2a0aef557e4515edaeca8661185b4c70fb99d6e0c5d2245600f2cab80ae9e7acb74840d12ba5d9afea691f82a2d3041a1f4722d59984af2f34dd3729c5c5c4197ee16c581529cfaa78c75e0bac701cb2e2704027532161e89b32a1d8acab042f7abe109262bfc9b10cef1856858247cc86c8edb5db778cc4562859b7be7a9bbb98171d5ebcc119960ff4663e1f1e17a013913f945aa4a2ffb1ed754e6ad852f3474fdca4ffe94e891abfd500377e1c1717ec94adc5804464f49fa1267e07dfdd658745979d2728878fdcd806fb0005334fc142a25729233482fe420a33a6dfd0ecc0e312e38cccb64096ad1012681ee783eb0c2173c070b88d94cc4407a75bea7065a8e9a0dd215cde468eaf1fcf3863d3623ebbb96bdec1b4d1791fcb9ce2b16f1f5d236d99aaa0bf15fa7e04de1fb41652a5192671838e574e9e999b228ab4e4e55964b9027345c702c448f458de29f21891ca3d45dab8bafb9417da534fdb061844a795ec97e48a956bcc156e50b03d5cdc362598a9b4b0d488f4801640d28c9808ce262bc89f81fd63bad00dbc8b036b5dfd6e0936f218b0ca1750c369603cc0e79a0366b61f500d2e806bcd39e3ff5dc79f2cb239268baa6bab30f9e48602ade9082563086a01bda5311c150d97c045d59f67776f5fb3f040f555aad585a3584ac741a9d5f3ae9c6bbdd42cceed17530ffbc66eecd8dbf4588cc406a02c2cb9dcdcf7cb0a8e34b08bc629a481d8f923c41250989b4e187d0d8f141e13847dbcd88624145e78ac06a1d233b33c65aa2bd05667d943c7327066f134dd33529672416a6bb82a137aa11fdad9a0199ac81a53e9621501f4976999c2fee779ba5d732b6c588fca9fc15d1296fd3a2387c780a151b025d49875c68958cc8c0ad964dacc8caf6e2bd9fa91a01a1186e20896d420a5b6bc931b69f9883d9342d2b1f8bca5e746e8ed60da96c0a5e650595a558682c1d03a2f0d38120c0e9c032d835bab0f1bd2259e0c64f68943fbc775b8b0d61077cc799a1c543fc88a022f670b0f3e89a39d0b842ffc28a71a2b2af17961da12023b76c8d462bb6ac48f85f6ac5532a3eb5f0b2cb1472dbac399b6885cc235a920fd7755096e1ffcaa71312f8cdff6a1529db2ae45dba5d2a71eaaab95649988be05182e76b1b5acfc55f32455b91c36d3b4c22f24db773df92e93698766e77ac14b6219b23e054ca3e9874ad41fb5fa6d91a21be23299a0ab1a81e8f1ea8a541dcd46990e009dc00f9043fb74d781e92f01ea63f7eb743f39c0925e7adc352a8245b3fdcd01d9f5808fd3e02b7199e90ecad9daec37a02d683808cc6c183794f9bb07fc66793462c07f4aa5bfcc8147fc97a66e97d97b038257c6c3448c6e2589107ab3d94c0d7406b375ee8d928f2174edfa48d547d30f5c0213d4f819288d8e27ed585fa2711f0845b9a567342af8440b8fb53a45f6fe995d0ac7a7d7845f001353556d1364f001f6036833b0c5400de8713e521eab5a9a1262e9ca700881ba770af0dc5a7b4617bc0dfd8b0d0363d63a21818914a5566cc98e1982e2471e7584e78c1680768ec1818e800e6034155ea8b572700299ddeec9f67d91d915c50e3441c056f2ab88932d3c08ccf29717b7ea7a74b1b7329cab5f02ea592ef763da6472b0f9ac2f98a6c51dd2f3ce223f3711e118162f828df3e19bbd6e68dc0b8bb8ff072fe813fc5e55b021d6f72df12b91ef50ef9519a3729eeeb473844baa80013b34e79c35e142d5a0dc7069fa9d4a994b49012b0cd42fca0fbb31fe20b084debbd4c77b65c2ee340023130b623623a2ee69ccb968dfe5c4f229ee2d269fa0c08fc2188a02004d2188f1ca41d25756fa172cacac5eb516ea761672c40eb3d1923389b1c027f8d25d408099dedcf091260f1a10fd1becf39a98d2257b6979198b85cb6e153f57f1bdcf06ebe36c27f77d87b9c6c057fa00a591e4ed6566f1843c0d42963ef038168caaf59dd43a16c222a395e48afab39018a78a81de3eb7fab3e70c70b24ebe8a7933ade5359d67f3351e4b40ac63ddf9765a2c48ac77f38729ce43430dd7b846eb5603647e38f69b19da57900c93963a5b91e445d5b13961856bf71d037d2c30d5b536ec1101e99903fa73059d45aab628866c8a9d7422cf074163f1903795051d7fd9188ecec7842b7fe3d525404a5f6b655a108c28df227caef0dfb0b2667c50a6231f36e91cbcdacf66bc89b5c1daac9f6ab7237631ac4e8f0b14b6d566fad7fcc2ab0a9dd3cbad72cf74b7f9eaede06096399238dae7f5d3a6a29f7758753497bea6eff5c3cddd31558c59299a1482ddf58218d3af77254559cb189c41cda84e675e3f1712726251df3aa158c425e04975133af61986b079603ad07898b3c9e44c0c56b2e5b0829187aa0dd2c784ebdac46e164f697a8c1026a5c44385b6b184be8376d71af8e6310982c41cf451bfef927739cefc655aad44230429262bc032750e675f09cfcfaada3be6f502c201f72d63444a208dc4abe138a338e198f8e9e36ef140c888f40beaa6dd571e08e5cfb3bd6ea8e4961d6c1c959b4f1e38a57ef74b7baa22aca54abeec960b7f8db8c2972c823b3eadedfd4877ad8c5a8ab5677f55777156c1b8ed3de85130837dde46836d17e6b82a36d3d8f287cac6bf486ba7f63ece770423c397d0bd2eaac23d826848ae63e077f4048b31dff0534229f87d6863361ede4d27330236d6b298a326cff083b62c201b1e68a078099368cf1bede0e8eee0bba26cbe385a99c8f2b063568ec311f30631ee5c754d005ee79604f15bee1095dd43cb70db747ff8211c67769cd22575d195192ead96b33809b8243b7eeea371f78c515dffeed87269ca6e635504edafc6c83cc3ecece2b0d6c92050a206adbb3d25fb904767bf150ae08381308390bb5b63c728569b83413cc20b2be591a454d62bfa8c2e45836870590b30c36caa9010a8e6ef460117e88662bc2924f87f069c99c1f886e0bcdddf7b2cde29314e3ce92cf28445ee6b064f02e10087b2de91534055d67372f3f95e23eacb7d7774c5533d6707dee25173a7e9582491dedf43efe9905b3528faf25550981b4efd8be8367db2e892c4213b2ea204bb389559879e0ffce1623fe7d78527c7f75c5cd44b654867c67af2207134c044589620e32e257d79ff800780016591293e2332a44ca284ea777757a576ee50e0698e1da9a53439508a18d425c814059a4cd5282889963539a6010b03c9a1a95b303f5e0429757e145d37e5fba50bc8a8a8895fca893e07c23403b2b904585f598ee08e47a035e7cf8278b4a2d9685d1c4854325f91931188caab96734a857f56040d999e29e3b44ec5dd506796ce79c6baaba2dbc709ea040c01ff8fbee3ec22508768e43444476360236770f51a6ac63e4e3620ff4d4aa4c60b13399325e967980575afc4b2aebea607d5999536b995dcb16eb7f2d2259654b913bff377c4a58b2a6ff223be93a4923dfa6ec1dd5d14ed90175562f7e51425ff8ba12949fd4c05215fa5535a449819cdbe566c264c6b34a305363d50a259481339106aecacb10533361305b0c180c2bfb306b2d1ababcf47aaf9906b25642f4f47e69934c56cce576a6c3f8e1da52ad1a6a88f7acad1ae8f2ee21c682a55c865dd47a39f315071a0d511609d073d21d527651de976f22cde204f50e0eabbfd30a62903b8fab324549722fec459900c7787c6cd6ed0f4046fcabce109a8cdea4b8f62f2625b711fac405ef36e4640223ec2e38c3dcd40e69c5e4fa88d3fbc354f057e6cde97f52c17b8c5a051880ddf26f5d4e01c84c1a9b0d3c9cff0928ed22c0dc1e11b5cdd39b9f1e640914f1bc8c7fc3bc60568a7f4d710ef49934f0152c06b471407a76a938f57cdf6e406718c4c6262e8b3a13c5151bf07b188f15fc6ac69ef18845f51f01d5e8e2b6fbac55a18498df47dd5c82f1661404f0007dca708958b7025aa6e57d1cdaa9997bd75fb9b6cdaa155029c72d19dfe01f34381e0c0fd766fe5a163068c8abed628302643ccbb0863a7bf8ef54adea0f1b72ed837f5ee4951e5ad6075c88d20c2d30f66bf8cf45a67375eaed21efd2e7f292dacdafe1607711bfa538bac2af164da2a2f8a98e5179f3a6d4a0c89f8022a4e8a4869bff5939c333bc00089aadb20adf9c0cdb785b044abda1ab193a9450cd9b8e61c8eea7398074eadebfb13590a61e0dafd04146f91fc17c3cf6ec4001be89b7efca47526f96e28c63b0bf655363d90d99f6ef691e4e630f4be7732761732e35d798d670523c8687a3b83e875673ecccdfea66f1a6906c95bfd4af1e6cf989dcfab3ce8d110beb4b46f8272cba131f74a05cb9b4837ae4d81c501522f917dbc863b1de35c8e1000841be1c8de0337c58d87d01e21659f0c8debc9b9c39dd331f46ab610d7c477efa014e5957e200184932130c005c1c93ebb6146a69e87ef4f3e93d1ad92d17b3ba6cd36b6c6421ad06a1ae6612a35b55dd4d28c40c1785134430e4710dc3c6ae4f9e9895223befe0cc3e73e11c438c21bf03d6003a655d86e1cc6bdf486c53441b85adf4c36d74f160969bd8cbf311ba030f6014a2d9908b45d8ed76d89cae965ce2d71b1aae07d5f5e05a841a2f371f254131763004ce232ef07295d3dde599d80eaa7dca36716942edb113cf1d8fafc629f34fe1f8ef9c8bebb22cddf0faa47fd8f407df9b9cea110c35eee9ea3b73a148c96fcbc2e4107b1eeaaef8afc18818eedfd217e439f163a3e97bae7e3f514140015cf196a68ce904cd80b2fec71cf9b13db7b03a9dda1f1ad25588348d05515bae79043874fb9d5fb95ddffffa64c6d4db8aad001a1e2efd396832e566227247180215b3f2d643d02871e2608d9208fe9e1ec0abdcf86e8a539523c7f3ed1381872113fe3d859ba7d3c06e69800e6874ee26273462c167c5377130f2e6e812458ab4aca7082ec378963af7122987dfcd9f9b23aa8223612901192344ad41f2e7868f620d35fb361611c80cd550aac45d2b04b8d0b6260582fdafb091da8c0f5ec1600bffc6ab6e34e9b909ac3566acaec8aa6173bdbfefce8661d76209fed914586ec0430fb1904433c7f2768416477e23e3b800a8a5c1dfb0dd17f006a0b654b881e25553bf3c4c86da376a6d4a09802bc11bd8f15119a5d663abce808081e86196d45ac1018ccbf18b57a73dcc86b7f258415df94ea7244c63d475d0e5da2b36aae14d5e0bc91e54dcf22a447c9cebdf4866adb29b0cc478654296ad9ac6fb43571790e4f643f214f743bb03f2e3d8de9f92590547c24d3846696a5e3cc0725f9b62f954dfe30328c7a1032c741b31c56d46a157e6846c1a49bb346305fe41cc2f0d05ae5fc8606474178805538d6520b5a2a6b0403cbec188b25128c07e822c4c4a54bafdf1a91e1aa2d42848498d434c2a0326d4d73e20486e1c807f732228e64a639f359e69e9b8a7c9f55a38359e232abcf0b25dd19d20197c4108ed28df995acec24d7e6fbd8dab23e20181dd13763a5a2a15fc0ab0d1a693c755fbf09af040d31e0b8436136547fc4e1c9d7a82784a0635a48beba4838f6a13e26f060e0b8de1219c1121c10308c3140268acbb3f4ef5021b2a8c98e6f504dba713a6a5611712bcc4397cb470661f6cd8af6afefd5bfa16f8cdb9aa2eb91951a628f21955a6dc97f8d8de7b77a89f6154745bbea4eb9b4fb06845e01bc0d039ad886945b2050c29236b71eb0bbd1ff0203387d3b0ecbd3f732ca4f7f43d7b6982b77552deca21def315ed6ce2c4bbfcbdc7afd1e955f280540e93a07c35200b2bb4741ed49b5dceec0ef25b7ddbe98a9a88dadb52692102292104224b2bb77450879088d0962187e0d48237cfbbd7d51f78f8b3f8ae3b76f54ff33fef7aafdfdf855f17b4ff731bfeaebb7c5bfa2ae364c10bfee1bd5d71bd57f1ffee8ed1bd52641f21bf07fbc573db8618c51bdb7b9fffefb74b751fbf8da97bbb5bbe6fff64f7ed5fea91975d5dd6ea08fe76d6bc29a8adf7eb8bbcdb62b5b1fb358557c2c6ab18a63fd3e7c91b56df7b58ebbdb2ad6b7b4beddb2d2fab452efbbef45fd58f596eeb05ef5aac72add3fae52fd9857a3fdd17e05bfa5c34fe9aa7afb2c9dfa9ffae3a776fdf1ebf871fbed9feebdcef3beefa1e24b50f4bc1743dd3f1ebed5dd06b776ab5e1586acd7befd23bee7bd57d3bdd5e367d6a7c2f1ed8f6fbfdbdfd7e89f51b53bd027be7cf0439d7a96ce59539ed27db537ed756ffc6f543df8aaff74eaad0e7fd4fd553a7cfbe1f7a0fe193f8b9afbec85e287e2dbfdf516b8f7f23becedaed3f36b47e104dd0697f6569b044b1227ea06fab80be64c822509161baa92e960dd6b702cdaf0defb637835b639bf985f823442ac251f59ab558bf5a9dea66615fee330e7ff58a9b762fe90067ef0c3f1c77d236e1fbcc12ddffe053fa53b56fdf835eb1e867f6feaf3044db86ff7cdf8f6c1cffa667c7c336e1f495df8f10643ddb1ea7b68d63d7f2aab543fee9feff3f7509c43d5fdf2d7da366ab6a959b156ab7015e27015e271ec1f4fbda53c76e730fc9e6a3fd4e3df175fadcafe0b6d698eb5e30d75afc1c39792f2bcf890e3e1df7fa17bea98fa50776ff5a156fd4afba8b6a42e307c71d4bd0607ffeaf1535a1435e5a3eede95317ea8c151fb80e15ff1b6c0c11a9aad60f057bad7e0ab944dbdb87be639ef5e83dbddc50fbfa762fc397fea9fbaf28b7af503eecef1bcb3b53b7f2a5357de3d88832f575af210d43d88deb74951dc7ecd6319dee4f6b95a83dba8fca7e6eddfdd5f98f0bdb5793b7eebedee2c9086dd353ff9f1d55a8ef9a21317dfe69d30718bef27411ffc16a421fedd9d0599bbe086ab10c4c1bf9f75cf3c7fe77806f7cdea7f520ffe6a839fcae063f9152c61fcd55770e7cfdabeeac54fe95e83a77e8226e4b7fb66f5f6ef8bfa66f5e0778ea7f0be596d1224fe15fed5e3bd02ff75af617bea3712261ffb7dd5861126df4d637c70ff8cbfda3f362fdab05cdc362c1fb3cd4b1f9b2d5f6c1b957f7f5fdcbdb52d6bdba8bce6efb7fbe43535bab7c0ad983f9780a7aa35a183df6d545eb3bb0cb8ef0365786f35e512a451b93541dc76a776bf6fa3e61e04beb5d6da1df8bd57e23e1e073f6bef45dd6bf0d5a752cf511e189f7a9cd23df35bc2f8a9f0b38a6ed5f8e37dfbf7c50ff597faf061e8940582f84df83ff6531f6efba9b7dbee55f67e7270ff788fbf8abadbb0d2848e83df43f34b307f0f9d8f674e9038fe9cda3d88a75ed457f71a371fbea43c30fe867bf5375ad29cd5ee1c17c587a125cd11bfa7a6b40b26aff9ab3beb3770ffe40bccc72f419ffcf87b280936de5f9dfab1e65562eaefa7febeb7c1b7d13fa96da96b955ffedde18b5af5357ad494ab74676d50e3eff85508e2a907f1cd0ad4aabf5afc54d6bd06cfbfd2e25f15f8a1fe11774efd98d232e3ef7ed4bd058e6fc4ffb99f5fbc9fffeebcc170f716387ef9362cff5e4eee7dbb0771bcbdaf6ffb099d04bd06972f4d4bd0de395fb2a006b731597cfedb50950d47949e70fb1d87cf981010e37bd00fe2cba9235faab08ea4f3a77e1c574eb7a5ee3ccfebb81b94622bd9bea472d629b58731f63a49a9131b8c83d181c95d3ed58041e5a9d1536fddbece02afb2bb2257ae358bc0dbedef731bc7719b669bc04fef0736b169303afe0f7ff71ffebe0f6fbb69779ad1912b0ffe715c39d6db3a64e84b3d39962095dc3f05cbebe7d5fd6abfca9072c3d0be77ef6def29e8d33d7deccd6e6f4b5fe2542e516e786a40b692f2589a63412ab967fe29586e3fd31dfcf65774e75f4811ae08179431618c81f1b965f7db77eff1e61e3f057dbcaf4f4119b884205e7f728fd3342763c818f59f6ec1028b272d66dc7b5cbdef9de77d7fc1a7eca1147ff72df7f7ceeea70ebb0dee7986babc3a5fd438c4cff78a2fc59f5314ff6aba3bc76f0c60dc52b1be48f595b9bd6d9fe0ddfb96fedddedbedbd4702eaf25e82323cd9c4bddfb2c85d877bf8bb57cff993498a30dfd33625a22eefbdc7f32db5d4524bf946eb6f73d32119c3fb6d4cd67e6e3df16f3a8519ea142cd59df3beea1426a8fb3cc3bde734eea153a8cbfbb985f777cf25eaf21eefa9445dde6b534c258fcbad2d8cf75d877b4f87e84e8cee784f899ab8f75408dde1de7b5a4477baf79e1ad123bab3715cce9ee7792f71bcfd4367610f2cb078d2827bdc3bfa82ca1e4a9178f2c4f1d72dfac8dbe3f99b06c53dc2e4e16ffa0be2e1def69cb27d72e9b3c6917facfd04de81e4521ef36f5bce5fb5dd3506356b9f358dd3366ee33824928071017089c412307c82342c8dbbb9e79ee3be876a48b9eb70eeb72c3237b54c4b6958f9f61389144109dd09f7d4f2788ac9e2ffb75ad96adfa984809420682358beedc9246370bf8dc9619f4ce2aedd4f9dc204750ad64e249cfbc9d4e714ce3daedfe969445ddccf2d72a7439cfbbae7117571dfed59445ddc6b5c729f459c935cceadd61626f7c9c4b9e77e32d19df9dc4f2d7447ce6c10e3dccf26ba439ffb698513ddd99efb0986ee3cd118a803963247c240b37f5fc7f60c50400fe25d4a0748077416e8bc40e674f71a9cbed43ab8b7af63fb9e6af57d1d765f8ddbb9e6ccd721a50e29737a0ddee5d3dfb6cf78b7940a904fc11953beae96af095e60b2709f47eba5c3beb679702f1d2d4826243bd071c50a2c687e78e9b8fb07fa764b49f7a56288a11a44f10370395b02667274886f755bedb371ee23d23d88051baf2d70ba696cff6e3941b85ff510af32e66775ed3141a87ffffe8c19da4ab0aa304372bb6748becd7a032b9ae815a62b011b4df1a03c6c77f350a63d680fda83f28031032ca59452d22b122a0aeae989d2932b4b4f949eccaebdda26b58deb24d779f8ea480f7f524a2a5f7e6028ca29e594724a3a2595724a39a59c924e29a99c534a29a594524a2aa5a4f2a5848a827a7aa2f4e4cad213a527b32944fe9d3139a59c524e49a724819c524e29a7a453ea50977cbab2974a5aabb5f76a57d3b68de33aaeeb3c0fe30f7f1f0886a138c599c7f19b29dded8a5553f3491b2aa79c524e29a7a453caf9934f2aa5fc0444e1f9f10d032c290b2677c1fc69c4254883e373724cc1195486ed2df04bebad53de5aabc574521f983e96f24b6146e5dc0461fe8c914b19636ae38aba9e9b73f230b9b473c6eb7c4af3d4c249cb709c01352497ec0995e3b20c1863f21f69de65140c2a0f06644efd2c307985e65d2e459d2063542da2a84bf2ae337f89bae4a493c2b8cc92abfcb04aaedf6513973fd1f070af3adbb07855e430e1fa4127f1411301e03ca51aeb85c57d1294bb07c5b8a43c5f03c9a7afb5d6ea39516bad5a549eff92d68a5d98166492e7cb8fce6e875904b8b4d56e696fc07bae3af2b6a406995342b764cce52c0a11aa25572aa09cb991472e6750be44c91e9733285330c91c973328518ca0045104941b62c81a97332846f786cb19125070cce54cca0dbcbf4ed37fef851da88337038134429aaffebcb07eabd506cae856787c71d4dae3ac2ff8e15f1d569086b6393fb6f6c3fba3ee2b6ec3d13ea8fbf8f2e7b49fdfdac74cf713ef05bcf0adee4026e471fc9ef9a8c10fc15187121ce1fbf17b68b8c5f137fbd6b3d562a09568b10fded2c6aeb2cda32a04657463d87d78823ea3ee38f1ed0879f7a0ab2d15c39dfaacf1e7cad3fadc9a200df0e7bed2a7f3e4df717c098efae77befc79bd292ba72ce7fbfd5a279f7f0e5a7beb5bbf8f27baa06b50b26ffbe8e9e16471dce1025f7193ff512043f6bf1af56ed0ea467883f7dba6f87ef8d945f6e7c7046fe8b39dd2bc0e5b5954557cf7d8d273def6deb3d9bf758efadbc17dd0b166bb57fb8faad1acfeb6c585d67f3f56d582c2e88d7e84e397d4ea965a38132381b00b43cb8b151fd8855fa3ea618db0febf05533669a1e1ad6ba6fc43d82eaf187f9c19f913d2fbff819ddb3beaf7e2fb64ff7acef58b8da12562f8e35fc5a5b17e87efc0b9a103ede37f5f1b37ed437f5bd1f53a99bba47607d6a77209efabe2fdbacbf7a13809f01e35fa85495f5aa006c1f18ffe261b0fe85a7821dbfb2c0ebcf60edba3b101feb054998dddb5177fbdd861126d7c734565ff7cfeac5fd53f3f5537a5501d07afbd5831b9bc96dbe87da608d2bae78db80a00cee6b0d31e77514a4e1e1d6771567fd2821f04d10e8b3586fe98ecdb39ea33b2f9ef51fdda979d66729c2ea59df66697077200e3ea618ef1bfc373ee38b3f637c3108bff833f08b558bbadb0ac27809da7cd5218caffbc68705330d5f7ddd59c6c05fb7ddaacfa77eacaf2e556b77cab27a9420a85ec5552bae7ad5631b6da94bf535fad359c650a5e1d63efe195bca18411c047f46b841dd6baf6f937a098a3dd446f5626afbd47cfd1ad5d7adb2fbc667f5f555a8385cf5ab9df3d79f91eb5e51978af3f60fe5409f9e4a83ebbefb8e7b2f3d8d67789fbf822c70646d1feff37b1904454ecbef7ba8d5e1f7d40e5b51ef9e43fbc1071f7ea07beaf6b87afb87fbaee3be1b817503fe8d8feac79fa11ab79431f207813ffe0cf0c711cc2a0a7a0fea99864b30951adfa6bced03be7d108fe0bef1b10fbe0ae0ce32c6b83b10067190fd20ceedef458d9fa5c7b73ac42bdee11bf167a4b6943152affa202eee1b1ff1c19f213ef841dc6aac412d6a954ee96ebf0ae6076ff2f6b11b8b5b0571db9d650cf083b804c53d2304776f81772fdf729c9e401db01500543b51311edff6159ec2cfee7eef78f3bdfbfbc20f54a96cc055ea6b58aafc3dce2bd08e6f338df0f1e7ffc6ed136e6c3fbfcd3abf98faf0ebcddf27fe9d37e1d537e1e3bf3fde84db6785a7159eb8fd11e7d4f7d02be6fd93caa96fb5da36db46ad51812ad5a7fa720ebfcfaa2f8759729ce4ecbddabb437427f5f72fd116f37d71f71b0b532212befa101477bf319e872e1175a576f68a78de1de8c6be7bef776fd63d0c3febf073bef793ff859f816eecbbdfa7c3cfbaaff0147e37f6edf00ef10e74632d606a41d30a4f3e15081343375681302154835833ff4081e3c7927a601f638bc3438ecb28842450d7fdd05e7bedb55725de8d03840384c362a556d556f0f3835a4b5df12f48637cfce05bdd71b80d6d68431bda70dc78cbbf6fc357e90eae1e7f0df35babaf0a05fb77df887f1f7fd63720087e088ebba3c051e0170c572a201c6df5e1fe593dde3f295003e1f0f02f0e5fa552bb15dad4b058acfce1e39095c31087ac1ce210052e7ac0c251bdcd38dc3e02b806701b016e9fec9184518b1f66cbdaab7d77c751e1e000e16414709e87cfaf07fc7ac0c3d54bbad352b5f86585acadfa95cea128a65499f5a15e3d4bfbac5428a8521b080705201c209c20214148288420a60a259c10c45411855514e2941ded4a14b9b5000e7f5a5953bb8fe2bfd87dc5c51d76a055c87d99cb60e6b2088ee1ee402b8cc3c73feafe8d2206c22fea9bf1bf17c3ccc371e3fffe7bfca1f85877206ebfdfb0286ea015c778ffe41ff70ff869a0151781563c832d964dcd8ab55aadf08b1f5ee14fe472feb8fcd1f03ea53b104f715cf592f2b46ace4aec2b0fee1e618cc9a34e7da8c156e579f1aa1f5fd65556a9765ff1bb3bd0ea1353a2e7610cc443d5679596d415aa52ff42dffcdb8b5cf5aadd8156a11e3fdd81f80dffeaef539fee7903ad3e51fc4f0c81ee8be27f62075a7d402b1e76a015075f825b7b5f810e0071f95c965c8428c204d04a7211a208951a9ad2017fafd2dd06578df96b1d3fdcfde3a1b8bb0d5e770f3fe5792fee1675891f6ad5078a9f45ef7fc22dfeb8257589fb5369c953ba037ddfa5d47eadcfea2a657da5f82badf99adfe6ebeeab97208dba59019308ae7eb15c73ae1156bab28ca105db4aafb55373e005eadfdfe89d550b3c6f90e7d7afa10b79befd5a6b05b7e4f9554a296f36505ff427e7816e165aa8435c502a150a1b8b72030d4e92f276c6481ebf50a69c6a4287cc45b13dce7c30cf8a1cdb84cb7e33d0487fa1e4f91fcca500504aa9fdc29a4e60ef090fdfe81cb824cfa7524a49374e7747c19cdc0d36def34dad75e372a684991905d7b2f66b5ae2938b8f2a52c2bce48f4a6499854b345154a1a4a406a2343c5eb2ca23b170010a1e55e0c8f14407ba63a748112c57818bffd4a7df5bb35f69efaaafe97e37908bdfaf16a96e2ba3ae25d4353f6c22d7a39a43454277463e2d8fcff2f87278ff6cecebdf157bf4cd38fd4f89d3ff60956746171da8d8201b93b4c48b7e4c46402c11d9d1f402d4ab7f314ebfa2283818bab14511951d5efd3bc2c2fb8744b6e443fa9a88912e316738ed180c7ee2144745612d515670faf8a8f29870448929e6c410143bbc2846b20298345cbc48c18196195e1dcb38c5484b3514fd40a58728a620bd3a9e59e11d2be1a5edd5f1152fb888176c8489b0104e71919579511846df9b559e20237858c2059a1b5d7821f2aac2bba7944310a326a12b4a5b5edd5be2d463a2c1052d36e0b872240ba157f79ae0dd73e2f4bbf7e44155f19854f19a784abc25cfbb87c44473e677cf886bdfbd1c9c2c8084e8480d5494e9b1c5ab774f9c7651548c866c80644c0d46bcba07a3c2bb377403ef5ecc7b754f08932e0b934e4b37a5bbc269c75467b409a7b57bc2e977b0ca1384638a297c08c2e906299ca6f0dec92d68c882a4c80a120f3bbc7ab704efdd95285cb24843a4258822afde1d49e1bd43d2c978f0ab774b6a1133b5c81930509c7295ab5ce5b81f48844882884a10a31e94e09d2bc00d47a0d9a28b112ea078754e89772e044d9650d2c10596256078752e0aef9c12a79d5be2ae98e18a98e18c38224e08a75c51856d51b00a1b526272e2f4fbf6b44165d99864d99a6c4a9670ba21d18d6e7443e214b50d71fa7d8b71ba0961a26561a269d1a6685738d598661ad26ca6c4294e8f2069944022c815512ffab26bb028305dac2881444416afae75ad08035448d145901c84391ae2d5b5234e356de35da3452e2d722f980bc5e98d3aba4c474d474e9cfe3daa3c414bb628e1d285479825727821c1fb45c26915514f323cc1a003c8ab5f19a7178949ac88269cc0b1c4ccabdf9913deaf12a7dfefd2c8fbbd62e6163163c4e925e2f4c638bd4514167561133843850e989881c1090d2ffabc5b25260d1899218b20b85842c80c5edd36518077ebc4e977fbe4f16ea194b04c9468c2e9778bb464952cd9254db6a8c91e758ba43af168e2480c34f4d8f2238b57af4f3b13e0bd46d9211b4bf16e8514a9598a68e194691ed529f58aac22cda64c89d3afb0ca1334a4c48813104454885eb40e05e5009b026504134562ccbc7a8d4580f75ad4858913219284869674bc7a3d8200ef1549af4ba60b66b80b672818284ee950cd69724282449596ae70fa9d32714ab560801691558c38a545bc0394884b2a64e804513b0a90aef97d32e10a68c2e9cf59e509fa81c4172b4462490439e22502ef5389897e9f4f9c4e284e5f7d2ae17409a73f913892106ace7c0fc89d295df369e57df249a79019e3941a3186062b38826439e2d5272c04de655452982b494774d1830d595e5d3e711eaac5065a9238f9208411202ffa57386db53a20459019b0420359981e427250e6b5c329182b5f8a48c2873253d0f07200a7551c31b152e54b164eb2bc1aa071fa9e14b9db5865aa4cf688cfdf8ae45e99f8fc5ea3f8fc1a4577ce3ce9d1855bfb1c28c3d6a6ca543fcf80d75fd11d15af8fe3aaf55b6472700370589270ed355086764119f5f32177bb44eef588cfbf6872af303eff5e913b85923b9df1f9964beef43e979bf8e5f7715cf75b1edc070c2009244d7006f0fadc8d247ab801af6fa5dc91dc865172a7303e7f62c97d5ec97d36f1f99e95ec55c973a8f258999d2f7b04b8cbf11be398df0f81eed413acac5b199f56702beb6298df05c9de990c06914159ee2d3e9bb85dd2260172e0bd606bd0cad888ab83eb755c3bfc8f3a71665b8d311c9aae15f1ea09c95d4645751ffdaed31540754bc6a87f820901bb5f48106e78fd2ebdbcc7c91839c85d466931ba536b78442c9f33e42ea3a26aadb5727be421c11287479e4fadb5f6ede4216bbc3fc52177e924a7b5fbc6640c7aef66a185178c526a03c637dc21f66dd04bcb326f2cd40e4d9a5ed3852d7c20490b44ee1c173d1c79be944b70316442808e95470239663c9b539622cc2ced144321997ee554062588173a1c368a120e8a91164568fb321201ca5a6bad95524a2b8ffd6aad5c4c3112a78bf3eb635a5f064d3003f7a57db5a0093434d0041b78eb2df08fba2aafe00c159732c67d112477af88d3b777482c0a95a4082c4eb5b7439cfe1daa3cda6760beb6972007e86bdb2cb4f0d2b6148fc44c4a299d60f874bd9c9cfe9783533a04a662e5b2064c257025732cb1786375ceca81b5d259124d387d2a4119f4c6ea9c5accf844c2fb74824203182ea118193571098506226e635284e92463cc9fb46884caddc634a4ca4377d0c48557fe2bbb4895278462454aecce2a0f9d5da5bb54796a952b569ec05e532ec16024b04cb6a9f278503b2833c5a9f2cc2718ec359ff3f05b8d761b63e279f7dbe4c4e793a0f2d8a79a335fdc4f7c82f3db43deeef788cf189fbb5f247cfea6c4bb8df1f95666919ae65fa758e5492d11b102f69a6f8b9eb421ed4843b247f7c9ce2a8f7c41800a0d662f6df73b34bfdbd82daabb5f18dddd4669b37b65daf0f99dcb52b583b52fd6836e6fd011587c2041e6c718a4a11703b8fd7c03b7dc2649b103b7ef01e509e2651fc75579e4cbee5e37900e6f51978fdcca9a5e21b114064b1c8b2477e0049c04ba4329cfd42579092774a985cba62f94c103c973b70bc65844ee21f0fa11a048ccb89c254de10be0729654c4499022545edf478a40bf529096b001baa38354348328466a6005ea551f011453097ee07b28bd2c24e0e9d542029e5e526ee0eea5043cbd680924505755929fcb24c82c71fa5d2af1a7496b1458e2743a9f482d092d79534c5ac79c2708764a952dc9835f62ed7a4f87a043bfd3b4aff6ab943136abe3ca79cd755cfcba3b0582d3a73c64229cc83b85794fe5ec3eb9ff22ec76eb089f5334177f9e250f08721d0fb8e7d1b765cdc1ad16ee34b582e6d09f47f45bad9c69530ab2074d9cfe045b14565badedb7d746c0adcff31b72a9ddcd7dd649be953b9287e6a03d6b61b2a4300f07797ea730aef2742fe5779a939f1452ce70702a6360581e2985c9a74292671ed51cfa1c054289707a445d3638fa3e107fded771dfa6ddcf1a803e051f0c311b261224ae003b680084519aa5229a108181497e10795e0c53dc30030f57fc586244861c92d0e0864c420273bf1d0410d221c58e215de7011a28868489e283901573c80db624f178d087cc07928f990fa5fb3d3cefefa66ddbb66ddbb66ddbe624cd19be6d47722baf728681070f2e06c9e53831505f8f23b6900714e7712607ef4174ffb36248d3344dd368e045a0e98623a92eb49806c30512035204e40808122032cd75efbdf2eee0e48d773dce0b69c1dd2e4c5d9aba38b5aa9023271021f972648b154d394c212a324ac82c21d364be98987230c459340c49a24b0ac707728929accc4045d0811358247de9c100518cd17a2cd523180c36435de2d209174f4bbc8772d7c850111c4b1eccd856e4080721b8d6831016bd2de120df60d8a410baf7deab83253447367932e54a8f0eb46c3a4ce02c3db4acc5c0850b4e4c102a5a1565bedcf0dcd5eebdf7de7befbd33d90c69369b29cd96664c9b8e965b7995f311269e8990326672100999628a205144bd308d141931920d2171446498c0c2c714340c79d201430c39743f14493292d21149b91bb769dc8e289a236143312e547487701cc7719c9018a21f4ea6bcb472affbabbff7de2088688e14625f411859cb246a99810f176c4cd3344d6bc244736493d353f76a12d5759a118e200008e3c3e2303e1e465e7951e18043e8894dbb9aa669da0e4aba1d96749d6c48e7ce60e971d0703b3cef02e9b26111dbb424d98e1d5072b644717bb8ae2481a102e66edab66ddbb66d9d118eaed370749d165b3a1c66469644c2e9888c6ce2589c9aa6699a7452c38c6b5a13c70108ae09417191c814114a624513401623840841c40e8e6e30118382c186222b83c16038d0222e9386a614edd0344dd3b4188c0ce1d89ee60e7c683c3a27b12ba34e4d1a229a2385f4a431ba9ca669af699ac6a589e64827ee2973896ac1684e972117df369d185429d3c3c90da71e6a9840ba3cdd1e1cc7711c27c4f372d08460810028d9d0b66d1beccb8faedb818fa0215dc81084142c34649164bec03d2121a23d081d99581029a24e77090683fd30a913974940a893b7c33b22cd6cc1e5490e5a80c832e587126210261b8c8a54d901889818c4d44064664c8aa1070c4941661d0e313add4c0b930fcf0b8d7078bb88e76123465e67cb0284315baaf8860cc9adbcca7947134ec898c10166458be9a38a2f8b9a288c781c40d3a298c2352d47ca0b0e38344dd33a2df645483bc29ab43e7008ed8f58f562048e773dce3fd4153f746001f5840f3e660f2d39183213a5030312c5e56c8a2619557b886d444ee8688f3385e8881e4e7ca1820a19260fbb658918def538ffdb064514bed5f06d47a7898992868b981b5f9a6499434ef0520fab699a4694640ec56030180c76884b2757a2e610ab4b1acf89470e1c2638d46005cc8c8829649d6242ea7532668624a0204a4ac28c4784e583157234510249d6c589213bb6f020e46d5e7dc13f722baf72de810fdc036aa6c508251988f0a1c3866ddbb60d082435477257285d9dc789328af27183c80a9199834b95012624e6878f321fc8295e9e9e02a04492971b586c57bb5fa690a952c49231485c5e1b0ebe6d5d780c319265e600bbc190263234f0f0d26e68a162884b0aa31e78024d4e92dc2c62aeab431bd11469688e3434483434320d0d12cdd134d7b66d43eebdf75ea21f423fa4d0344dd3926cc8c135cdcb0d396ad20d423cb6b4b40cd1c2f8d8b4ab695cd3344d5be24473e453f75a12d5bd6a00eb3a4d4b4a02c3356d470e1dbb8511cd913928e9d962c9df685171c3f3848200bffc905a4071856784a3eb1890068c9934557ca88188e9422c8ab5e388882f42948172c2cc84416114b361851d3b9e6a1082cc1922d25421c4931a4210599ea400a9210d0ed03c21e4c88583242a8618a2537b28aa39924ba224ee78d7e3fcfb409477403de1259982c7ffebdc1b28992a4524a1412809050192102741b0b8e0a4c40e9ef061b91ae40ccd9139886210d2e2f776dc1919ac549129edc0e2c499a3a12242465e78c1f177d3b66ddbb60de4dbb66d9b981f3543cc20841428296e94e9424bd2a223b632a23932879e324a726bf3915b7995f30f22cbc3c89c7e54a22926c8848201c655ede83a21a725180cf6634a274b08717a9215b1031144d0f4c8c1059429528e787c5be20cdfa6b88043881ee9a04119a81d6ae0040c6672f04588a6699ac68f645d47660924a2605d144144c84b8be2da67295cc3a109fa444b070371a239f2890389caadc7a1ae3232080979d7e3fcff30418a333c2061028c164c647090e3e2407500f3d201ea765cff810c10264a34b862c46bdb22698726422b20d245ca96236e4084091411d9d0194e4a145096f43066062342bc342db896e4838c6b1dd770f8100016c08074b951e6c8a8c91823861c49a59f31180cc623cb59174a52890bfdd0e20b9057d425956042c285c98a242e8a1093148517ee47d78d2024072a8030c18307ec694b16178a323df257276e129917bc4a4a722627f1300302cbd389e648cec13cd11cc93b976940d5a08a0b5f5e309394059598932e5bf4302187a323b828f2440717b04872c4e6240914a218f5f912e6cc111d86b01411e6091f47baca97a6301f840314460ca1c41659aaf8f2d2c070ad8a2233d880efa66ddf12150e46e0f81e305c6124e434448e23be58a21f5de7a5484713133350d912c64b12144a3827438a089979ae7b69b91f906a8ee4f7763aeb15751d00072eca446171434b0e5738997285d28edccaab9c4bd8f2820e669a00c24315a7295f12104c40f2bb80adb63fae69dadb15e5b12f4dd3344db3da737407e45a971b5cdbb8965445c6b51f2f4dd3eeee61c26ce7a4b6fdf61d95332a98f83661bc8772fa350e7559fc42c8c50887058496b8481a420827ae7439a271d1a188e48203ff6bda85435df635efadb7df84a1314f7421f3831010af8d0bdf3e5bc1b76da60327be19796ddbb63b90ce5397fd97bd3a4ce01ad435a1aca59452bae5f7d0195583baeca692522aa9d5ac6635db57d26e2ba545925b2ebac3c98fee58f9fd294eb55b54586c89886c4946858c932dc9a8c83a6f0c093d72463d1748ebca792dfedc9d1e61031910321e64b14eb6c4c99664331917e36440c878901d915191751efeb6e7be3d6558b6e475324e53289a43692c268bc9e8930932029e5c34d66a6953c6905ceed8e7367d79e59ca632e77ee7f1fb2915f0ea93b9462f28c38a90712ef858ab974e79f9144273368d51207b106b3db562312c318e1b135b8a41b624f3d0c8b8582c4644f24c59cda13f6594074e261b62ca2a4ca32920a88cd3c7f389d4d2134b5e531d2708564ab5f2059267322dc9344273a9e67c4a745c39afc534dcf7598613b7ac79934ff922f17ca90b9fc8623231e91371e92119a582e49957e8fc3e8dc400c6871538a6962e68ce19d75ca2ae281bf7d92b789ee0300ea80bf33e974225e6d25cba3297b64d8c18cea53c7120637869b6b93497e61392a70637a5e01bad81249fb228cb5160da44b65ccea4d4b0a4c915294544bcbf4e111e8ce28d4ad79d2bf0fa53dbb67687a408f5e54f4ee55b243de79c4df0de0541614b230080cfddc9640cfa212ccb18b7d2d016e9d88b3b7461f65ed8e6f7a70878fda9d93d650c3a3d9846054b1c2ce7fcb4295d31e0f3ebcf0fb57b449eaf69277964951ab573d670d3ec8c3d11c46fb694db97f4a3019c2aa8f44a598b7b1a64caa11901000000d3160020280c08888482719ec891f4011400106c985a6046954d8391204651144301148230883184000088210029a5b0490a000b7edfb46cc19c94ab216142d195c81b945b2f2c863b21ae2e86e7daea0d3b5310434b224a2c9aa12bcba8ebc0ecb884fc005e680195b5d562192a2be746ae89bb89e69c99d4d3c39d00eeb72e472e92458f6e993547f6677d4ba44e27449823e143e445e80c16d8d1670aed86487cde94c43fd294e25aae77c2e2d4c0b967b26c66596d863e548685682bdd72e73433d460e4043ba71cd2a40a7f7eb2d5bf3d8074e216d98e0369e3c17c8eaa437f5991a0ea85389d8517f54a2762aee8d6e22c4571329b382cbc1275d422206c6e244812f6e7b94001bb1e20013470a94d20fe634ad9ed2fa7d5c2d3c9755c1ab80c1d8aaebbdf29a1e15969db44aa290f8867da6b4ba13295035ff7037344f6ab357377d87473fbeafa4fd03d88e8133a0d373693d7ead83e4b648a25df077c6722c6348def7410f2c2c7d7708fec27632cc0fd5c829b1e2219600e3bad4bdde5b43e3513092e4c0a6ef546ecc07614b850cd00b7976d1a6ea5fa19693e1b1c01b0616978b4d885a0c4a3e5033cca3a1d399776cd129b429f166cd1c24d48b46cb7a84021e48d9961965c0078cb0b909ba4fdbf45e7f9ef523d681f1f2ac1f65f9f12925ebd3472cd4155b08681c4174d0cfc17f09415604242a929d5b80d660c9837062c1c88285b3170da5d9cab27d04c46ee68b6a5b4f2893c98a5902a920151a2f82eca7d0c06ccaf7af34452ee189afc8e72dc6db96515e395828ab7debece41289a1d508067c632883346a1cb27cc76439b6157c2d4a48e461d3fd4c0163e0dd319f723f4e5d53574737d1af40db8fbb60171a468f844d8803f20d54b43cbfb7a9e4efead6f1cbae2d52f6e044469a289d5a6fe18d37ef4414161764c66ce231fe6eb60734f8cc40c61ca1ff0ee08b320600a6afc9efac7b9767d4877fe86a958eaed125521e8128f3671b4247851d7ae0ef3f135b1a0325466d112f0040a77f136887387a63e2b0eeac40f97ad5e79dff5be68e5e86734c158da78ebaef4380376db5ff4b538c6b871d941e4101b92ca655c25def07fb1fe1f5d209254993e2e2f791321f994a482b500f7e1c57b2c9c3659f9e5b2a7f413631063814fffd48fb24338811c88dfe7280929801ec2b8718f31d46f409d3b84486d3af16367f7e20b3c5bea359f1054ce1b7a10babd57ba91fb5ca4e6b94b80dd4d9fe1f58c22e9239646221a2a22be48aeec5ce5f239631faeb55e078d63220aa0d9b0be47574d3eee11b4c9bb3731cdc0da1385168a4c5e13a628ff04a9d5fafbb8a4902ef1d3c00633b256f0673285c1581385bc56dc01d72b19890280c30c0d0826f81dbc456c517a34a58b17cd7f680dfb262b3033749aade9b633c04f7c7f0f0d6e34ed7c8a5d0fd3f70ea1d0c6d3c7bf520e8a5d5ec858bef4e594f477b4a2af87e99d5d984177c61968b9002acbb1fdbc34253e7fbfce1b0689a90968625e2d93aa894c010aeaf1be7efe058a9c4d8a37f42ca054d0dcaa4afa94e5384a0736ff98f045a901a5409607a606a464034a1d31e9163f5792ba7a56385a3446f57a547334bcdf9ad91e42d7b36285bc2372848ab391db7bcbec47a354d7157f3e7b6ae580af519c76af0a9c3c6b3fdef29122188c90249d6f49284fa889e73a73b6c35bb38b25c1f5307f722ddb3fb6ac41ad2ce26eae0fba458f9d7a61a9c27af2e6ab2eb4854efc26112346e94a5c62ef13c39f1cef5bc6407cac13873d555461f0178e03bf72298889be81a6599ecea2cb6f42bf995062f696d4e77561ae3a125f142e7a49cee95c6dd27c6c68596a81d148a74117bd4114a13a4e8cd1cf10f401365bb9fe44fd22cef290552a50a77a0e9f66e2926c6236b5a3765ff27682b6136d5becdfacfe686064d7b56e27813b0d214a0f9e074fd29f1c92de15d6e1c9c0d9f28b0812ea106f17b33a0ae8e801bca59037680868189af623d8628cc775269389b3f25b1354a44e368e6aff4858756cc7b1474143da34a94b94af6ddc0fa6aeb6de37b8d63e2a96381053b784d81d91b7bb3d16307a30bbc069b5f5b628758b26b737f27897bee434a90c99bbf504f2bf7b7ca53e9273695b35d3aab2d21eb2fb896e0cfe14b790e570b656f7eb4f575cbd3041418b99d07d17e5a2be25581d4fbbc355d4ffee337301777bdaa5284980aed4cb27d9b9d6142a5d466744a92a4b0a7d123911feacb26e5b239f2b116f34bb02e16f3f9c4c83d0c327e51be2faf6c3b477ea2a565a310184d196949dc0173444e260b813ec94ac64d3bea54108905439c56019563b95573d776bf1971307d06c2d9bebfd65a6a99562d30806b4f88c58eb805894b1af6edc5b3351cb0628e96ffd2bc6b65d326c60133a5c56fdcf71f3b702a8dd857d04f88f5364eb76a910a056ba7b2a1e15ddd8f3aae0e1d417c239db8aa8780248f7b688e427ebaa46c9f76c66308a34b6840498ef236df5a52cfa8f37fd93ef66458ce346f30651bd5207a33e5c5e04d9237cd00958ce2d4b6a3273f54c8980c98c1566a82b248103f6c8fc3e248319c03f5e32682f9938908354f6d30aadbb17a0a7d9d072aa4263108c8379ace5f18c9345c925d9271884fa2aad6ad9cc6d113de0490142f7c4378855c6007aa52e17c01d3b11d525b4c5c11888da716c58cede6629f287307739d6f00da208b3c075e638e27092c4df0aa9086cf4203a6e0091d07efd4c74580e5dc41c5e3a2794be7dee4a51062260d42224f961c2b68735825d82f620862331dd6e259be8e6655763d3d488dd822f11eb23ed67f7a16927bacaf6c46b728dbf28934fe72be8d7e55ddaad112a9f3735d654fac835650eefdbbf5e5730375bbe4bee1a6e20eac912a2c2dd0bac566bfc03f6d569689a5f4f0b1e895f33bac74b7d943908f93b13e2959d51fec4d8b188408f926ba85f2ce5f086aa206215e290479355a20524968892f4c4f438513b8af7db5314d3addf654a9c96628f1c41259f9a675db008f08eee9f7500011489eb9843348821511eece26c755ae828066ea86adba4e544c43a5b674fd5712dc580df573b421471aab5a002fd733ee0a80d65f926d3770db7a2e2e88418042f739050f752d956e458dd85d3a7a86788e17fb92253b175ff28cdd758e9e3d01c96705ea66c26e697a5e5d30b4e7cb6ad319d24701f732a553e9fba39735587c152b64441c20a7f163298261379cc4a879f043e681dcfb0f0b1c6e2a2529929e60789df6725f0b192982235ae1d61d768170120f1b741a4d4ef1b2e02f9f95d38154480e178f19b58bd37dc3b1a0df6a0c2800847caf165f230c5454a5af0fc770059087a3e764240a8091aa1c60748bb679203fc819002b076d6272729a5c617156160347283ed5dd16fa8161d3617909296a54bb903c7ae1997a8848807c1dfd6efcaa691078765c06931db5eef24ff4aac67e26b6741c34e69a2ad75db86a042c0770904814d4fe70109442e9960ddeddaea518b318fc00200c70a97d1d61b768a35d87457e616b0de438808cc4d49c76a456a439d04a40f8a887c1e20cc599d9c15d657ce6d1f6ce6f33773aa429484f57531f00cb603be89735e041a9aa5c5c16c421acf7c4082094faa1a0db02396e3b448d89fc8011082fd4550a45bac3ea3b0f88370b38dc77462000b12cbe6dfc9ea10777c0022262bd165686c8d358fab2e30fb310b8f7f05a5432847b26aa9a8ec621c812e4a3f6d65e620ce50fd119d0c47198dd0c25ed472f6712aaca287568d43b38f83bf37fb83f77c82f30ee9924a896233358ca8caf77dab72261c66edc7ce1e4b3b3ed5e18fb2a198d22136b73ce814343cad8aa006c51925eaaddc0ed56c0adc6b061c82890d37806c4f2b3f8a1199a8879d2d87b5eeeb04e1a31c0dd1c0865f636c16e2348a4cf26acdac7d6c34dcf664ef9c358756ebf5717b4089803ae8b4591a26d3df1ae6ff524cd35577e38fe90a54a893a1e4181dd41b379158ae000c4214d3d84c5ae18328750a5c9d3cda8230ca5324da1c3953a3c05aa4bc8b006fb40ee11968252ce6c2989783e9546231c2326c8612b45ca7ae8741f72fb1c39d47e5815781131e615691e2164fe531b3ce303ae455d8f3226df259ecd5a594d012206e64a4d1e0e3e4e0f40968fdcb1d260db7ace490db2e96dc4e40d282490f9d8c94ba1cb2089109590071afeca651c97a603206fd36a08ffe4951eaff907eb45aa71d8d03fdf5066eabd236718b841cdda2aff5e9683e97fddfc8d4f8311884181a290ef26e86c6d1fb764890133f4242cb4242189e9a03012a9fdc4d9b533ff0a32332aeed5750338b9a5fcd18a7b73e3125c9e92609833961b540d96e63a0d70a469b5bd2cf9751cd36023f7903dd7ec31d5a883cd1064127f523736f47181056de22b4aa08981b083df49f4084724b560872e72761b8b0673a05cd4b7b09562b1dadb76c727eeef8aebc06394c5f8e68ec7e7662f68728a1329ff49a7fcb84f07518f36403b87958d48e75e016b79e808893f452aee73781e246d616483192ae786a26f0ab29e43d0a3e84da35451bc7a7293877acd3083801420b0303243d176de823fa35fd513cbe398f90a29c484a4732dd1c880e6e54d3b803a684db208021c8b88944ee47709d53e2b5e6d6031433e65468487b4646cdd8cdcb56ce004b0f020668db08799d1ef6e32a054e4ebd3e3399e35deaa8ce641f3d7a9d9e37c6cbee824588d4bf1ce1fa0f1dfdb906fc415073837ec64aa8eed76ca6a01d0cef9c29d2ae4019563dee320286ff97b423383b395c3cd6a7a8d88f668b9e356555c87a740955ff5f5a041c4abfd3e7dfc2076389948d50011122a8b7ee350ce74c17438813eb9b772f69dceedb647256c6a981b5dca86d73ba36790f695c20bb1cb71b72f66e8e40c4d46af193890a34fa648f52894179f8c168e4e266096352ee230f3ec2437143da202949e55b2af64881aa3ffbec1037d768365c26f3c4815b7d98b992cf29c3c0a93891430a746ec946e2c378fcc6e457e650927eb0411523d25d8da2c733e9c3a4ddede65695ccf5c376d881608c46c601e1f1592b61530d5554d3a00ac7288a3741947285c0455148de7b77816d448d36582758215ec4a320aeb7d2d49e216d0cafcc8dc62c3f2c0d0aa171fd176a311d19ad2b1d04886a9fd048ea6ddddba8586ebdab79707499e10867a911ab2d4dda6045b885e8b63fc93fe4cd66ddcaad09946f373ff977bc8481d0fa4c40983fd4b521e11eb2422226240209626a3a899f5383076e5d5f35173e2122e8508518d41483b50f945c90f4621a130b14323e18ab0ed2a9520d21d240b83c475a989a6ab487c8a8e9b7ef58176eccab4bc56c628b2fe9b584e455d2b5ae55574a3ac70d7a7ad12e29207449337a6c825ec2edee3e36d7a5c88f33a7917e07210d0beb241337a93262f3b38d026cc4c8917e0d38d835f2ab8c00ccada6831d384b25a82d60f4785e44a2145cbc688d21cfc045b1d48662e4d85db4e083d93469e6d56ae95cf3e47f40999a9133c223bd48811153825ac13814c3a011b19debc3c4cd802e69cdba0a1d333e6b00a2c4a5d85fae72bb5e1aac8f6fcb909aca342e5e84622417ac72204285d76f828d63c58cd6ffdf80f4ac50aa12989fe3256a4a1efc1e43c25ec3a579ad2dd0b39f7aabc0746f70508b3a7910df48d1bc924c9ccbe0e9bfa5619ee53e8b9c4938f9dcad9377a8a39c9ae488e7962bcbd21e2474716ab706d6857ac2f0407542c4e088e302f7266ff73790635b848a06fe70ef1b5cda6770007927c72a0b9de34add8196e1451a66ddc21bc7e4b78757a429f87b875caa55248aedca422c18ea55d9bd9b58441a056e433afccf33cbc34ab8f89161070b710ddb43a053ab60983ff84c1c8008f343be6ef235d6db1c8ec0474a441a19a620d1c1ad455f1fa161b8a066b49cb40e8b8ecf8c785d8e2dcc233b0617d21786babaa3584d3134890832a32513dc75daa694b7c9ecc596f7466788c636b23798d8872b6003918f31b1db77e7e83ac30fe8d08c466511236d1ad0cc3451bd80fffd30ac99eb9b81899512ec71c0f0e0515f57f96d36e1fddb428165e1cba5655c8dd9ebcc4bd95be808a985738d3e9ab2f83cb3187209ba1bc39b6013511e291256db9d912c2fa57b77c032db03d39c509673125eeb50b4d52f7b33483178ec6afd56abc98b772cfb7d3812f9f8fe59680a87d0f84085c40a8447a1d181bffb55ec4cd3c4a3bb1d24868e2d67a7aed150e93f3b941067cc35d99bf0e8626b62b51942fe2552a5292aca60ce803ea18d76dc218e27983b88103d598cee0eea210d35997d3d3dfec2dfceb84c0389374c24995fc79a0636f6f745f7a5fb7dd60c381d764db877d0ca1b5f90d1c4a34e04550d592f5d7d4e247b1798836da7a49bcf01800d3834d73a23e58b3a0f950a195e70066b9ec26e09b78721440de65a775d8b2a4a17b5e406ab003c320a9f5a30c280045602b27271cb3f020c20c14bded607b79aeeed3e803c1d0190fe2418a841cf52bb2e328906473e7628ac0a99067f73937853696ecb499015b1408d4ccb6fe336bd42da2404c89e84b2e4bef44a14fb67cf0a86f6170d9fd725b0abb9a075638d0ec9f34389260e0d168f9ed027b123114c876981ebf4a90d77e4b2e989114a75a309248d611a618a7c13d02d9572402b27e031f9af84cd920e7850982decc7138d3a22fdaba71eb30ad70f6f276ee2e653b2761436459efac5953c77f766909136170b0387823e93f25011b43ceda05a006394f650f63e459926695a1e55961ec621ad9d015dff8324eb238da6131b8e8c2f0b3cfc5a11fd2d8fd8ad7b4938d7126c96009698c4b9d7b90a7429a3f6fa7495c760225acbce0ef4cbaaf3bae5cf1a2e7b84d72da4d45247c91bd6d6ea26bc9e1cb0947070ca11486e850ce8b61ca838241d494a9b071c3e44127b66fa0a45df15e0428ca1dad79d56e2e23a4506d86b125c2811c3af982da664c179e3e60c32147ab89b755e59d994aa26cb12c8eefa6d9e4e4d2fffd01fcd9eae8ee04fd7f1179b7375b1f85ddb4174b23c5dddbaed040e7bc82f5e6e0eaeec6b19be49bf66f44fc84a32a629a3bb25b4ac39b5a653e77bea9a7a3e57266324b425a23aeb4c5ecbe6a53d6b5a909aedb86ce7d4e48bcc18a958d8f85cdc30539aad39b6170015b0aae429fd670625a9ee12ab5769cc7755b00c17219859de1d48e513f5fa52f04361a9dfec7d4ea398ba71d23e1b87ac15e61e633cb12df7a49947f7662c421b84735c203c58cab63fa09286433edec1a0ed48e1dcd845ffa5a1dd16a1f86d8525866a0518bf9922e6cb29697020d2bc2305a0973c4fcb63efdc116f6c9a810b0254d453d45a686353ac9d69c92cb71cfc89d11d1dc09be3aac91962532a0fe6e76932f36367015513c8fc781b9c50503845e5a24c68390f483bbbb9513456e210023a5c91aba2db1d33fb184bfc59df6aa7bac091abd793c8e7637c17f9ccce26999826999d919e3018fe89a80e217deac60c50f2fa6b906cf370fbe1c8acb5d79e78bdf5f55c09d1705bb09e0c6c7a3dbcca6dac1f42983ee9a642d0d407b19535ab512d1fe60b004ac1740049e14b493fd0c18a5cf264cb38938a101e2e5b5790399c58a6b4eb1e213155a7026ab7585a9b8613e256eda690de0640c2892ec5c10669f202c63c12b39a3295b0cb055d011416c3467e9480fa81eaa8164f33cd29008681163f8d7484c46b28901f9a7c72b019ff734360b9e8b2176325ba51785cd7806cef0100f6be364c624eb97b42f0e039355a346b0353d8d74d855f265c38276cfc4e42cffd5eba6e072a0f91b31a378ca67a27a58f1b4f207378a8d21fad599354c6aa1b1ee4517fa0b4d1df934690cf3bff77f3c8bb4dcf274a81cc4bd7386ad16d00851488f02bb42bae7a13039775d93c17dede36ea7a8e0629b80deb62ea0bd002a76060367a37eab4ffd3442f1f2d1875ac582105ee1d607ee0215e3c0860c321523d36656cde54bf225a70c3739413daf31ee8affaf9ab0aa9827fd80d01faea1d9db4941a20158660aa1c8445e7b48ce18eba9ae8a0954940baa6eed41befa0d6f41acac3032a22da6ca5e234964a9918c29cadf50c32ceb4c70d3ffa3e5a87c8541da6e3d4563be329c26d1d1f1a8e4e813968bd69b9f9695d7fa9afc2180f908bcdb0b8d9d6249eb94baa8e436b199d4c711e5392750975a5bc43cf0d9dfc2011db6297ffcf15e63929497da39c347e4064cb53dc589499ab588a740e41278b5bb46af62d2c42714af8363da0eb624aba67dfec9b0ea7ed234b36907b52ff0005b134b2ef755d7b39456031e4694aecaf2414c6a14bdbc8aa7bcdb6703bf665858a8a1f7fb8fc99aa40804e214d62aaede48de5f705033329bd66eef2e08be0d9ea32b9607e9d1512e6b9837e614f494420bb8911ad6d973caf4bdaa10d6903a4d1f8a2f1c05ec81f44a65710262405dd520346012f21f079ee7c2bece4d16f62427de0aad8c3ca1ea64ba2743bf07e364364467b06503b7f0f406f10cf470d59cfcb49fac16656af6901240b31c871c58e5ea4c9d0d113e99007314c34a7ddc6e5f42dca2caaded786fadc4bb703fc99766982b96fe03e690a188bc378fcbe3a9a41b24bed5a97cad9c6aac113bf59a85405a0dadc953575c02a7cc59cc791e97ce170554e665216d0c09d2a9732983503d834256363561d15dbde846931f3d3b7481728c972be5ac939234ddaf064c8b0664e11cef16378571acc4ba6a8497c36cbecdeb19357b4a01ca08358c2fa14f9b0c4b45af767e259d6e37911914e3c1b84d10c229c23353a4271b189723367674a1abe4692d7d3997a4faa1ad08c9e5fda0af168073892f5bfdd92b929e6307b751020f7f21f5507d13026a392edb9cb5cfa19ac1252d281a841273eb1a85400b1014dc3a38282fb79ffbe20aa9302e4bfa766190d864287f856fb49ddca96efe89818540db2389bc8ee01cc8170bcf06a47207345c489e7c25cab61c24f60a82f98d837050d1fb1bd6780b8552b705f6051162a8f7258fe9a1027a88349633491267a9186db98e664e5dd0246ccf330461ba1ee00da4fc7be5c8ccd2d38024eb082b2278ae669a221b470af68b71163f505c962522b710a805c0b4adecc4cd429bc664ef1d2e8e79c22604c963952c993737e33091d2b089297771a721d25cd70304b1661bd6ed0a1fe002752dae03679de00f7b626e5729764b277ff09a41ded9c2da5e2122a10f72f1308da5de8e5626affff1ed8de5654b549d44688db76f9016e71aa12e0364a4f3320040cdfd1a5b86f0b2dc70515f073901551ab9a629a0833d10076b666e7b9a349bf28d0dc2617ef3f39700df94f464a34da56e26e6d3dd0466d2f71c7b4fb22921ecea2e82f7b3ba33b35b36f1988226fa7b2d6b1fdce6a7145eb8d52b221b09f3f0225acf428768c58d417631c6b3b12deae1c41b5ad5b2d2e9416f0a774e3569e74e6d55348ad20abc4373fa9ed215289fcaca73d20a452566725f9b510eb3fa961ba193f845f09293ce3be8ca564936a7e88a1353bc2d9ac6d290fa6d4961219c8546dcbc5f956485883f299b09cb0805a60ea906b0f85f24d2655ef3e5f6942991bd8bcb39dd5e6e496b04b63538a9c0efca8674c1ea6feb87f72d84d8e027d38d975f45a33decaf6b5c8b17d49848e33fa4327680346e868e9c82bfed17b95548f552bd2675ed57b02fa827b3f11c5df0d0db6691a231c10c0c4653112931af644fac78a6087dcbd1b807cb8a760c298285e4519207c6624ae695beed19373ac53b7c4978714401cbf2abd93435aa4b81181bc50299fd32773b1c0cc7711893dc66702da2a0357d10be8a459caea1d086ecd9f2241581fd61bbcfaa60c77a26b76113d5afd8ca6c695937174be695459a39b90adc8d005195955cd205fbb91107a5552089e2ce6b84ef7f9eaa4452ae15a0755e853c41be1ceccb443af9c9f9130d82d62f6b8e8845ba60f44446b1b3746a22e087593b1f7e5404a4b2f7b3b6b2ad28730b42f20f2b351309a037fd01a09a14692d7e059f43b887ef41b825beb0829cc75c5641faaa13d61f9be6fbf36b950bdc9e9ec36f69cad171c5bd0d8c70a5b112e3016d0a0e3f81584837cb5fb938f92f176256863cb831e8517c13ad114803ed0134baaf8e02be1b282bd3bac7a2ed8f5d2003147c74d9dba27197b09bf6b153139399799e2d6e66c45511c4dd2544d1898da1350855a18301980cece8243f2db9988b82acd00391ba46e5501d8c69c45aaefe40eeeac7b53654f214bb90489de20d735e63e85321e5824ce24516fb782858edf61faadef706ed5b763c3f4f588064df759e736e47a6564e06ea81154eec0582fb403a928176e620cf8bc4b944bcfb0e9ad33b9acdb72461b5806b7f386836cf8a236230ab85c78f11e05194b63ef7b3e4c79e9771272c17aad3e27250b1848a4bda5c1eba6f28c48dab4684dad57168d50bb2b8f8ad2f480730cab8f1b675919873b72cf2be384f1d01c3d0519c9b5162d88e14d513c291450bbb6d5dddd9e216c4bcebc15ff805be0c001048a517193ca05557b49276b4a7a8d558f2a4baa7569fa04a0bb2abc213d62b4e1f86ecced1808ce443c0c878081595c05b3c01bbda21817f6bf886351dbad248cea2e9bf25011eab8e54cc03d5302a410ada7ae0e244433047d17be1983ceac523ced3fc57230c0449e729c9c8a0427bf21cf1c8acad6ec6c4339432861f9e57b16e880a499c1eca0c39b535d374135df21913b299d32079058e147bbcfd47d14b5e1e05e616fffb9b419398e82444c6c422753478c7267e3b5b98b5c69da2023936c9e86fcb11b9b36d721518349d6096d142c363d82920d16b57d1da5b197455a8f084080af37e23cdf51e83ab80cc321193895ad94736e66fc4b31e60c88db509ac191cb9e06506587bc284b32cb1f3e2d3fd8712e88bf03ccfa1fc58bf89c5af838b85b83ea321bba81cbac25370c7d7e1b09951f01ec27de064d86569f1a00f3318f5acf67196904f143e1cc67495677348aa435332ef913b2f94d99caa5fd61b3241cd082b89369b80ff59e2ef459e59565f2128ea719f69d1836430e2ed0444a339677d5debe086ec4f28e144d875b3602ded7c277c191fb9e92fc137abca2fe60315a7db7887cf93c8b7da2b1432a04cd9226ae3e9fe1fc35cb62b78354ba76c1aae3b1495ff5d000440c0c43a702a1bcccd46c3d89a1ee7a30b457b63700004b92b9f9b343dd30a6350a8bd9eef194774ae6aa995a2e2a8afaa28e9556deba03efbea2c5fd493afdae8b137a398e7bd97504235e2dec7c627e7183abdfde3e96f43328ed630240c3de74b8fcb7f4fa4c41cacda83c75e53b22cf28cc9718c9b3589cb52c15638e7fbf46777ae141c5993b575f2c3182c1dca25659a34702e3ae9c91876dc7f4ab65defd33d3d5b619b5b86a7cea9ed159e165f467672cd9eccebd25a22229420a81ce7e30564c88586f8dce34fe2737396b0090b534f9c9160b1ba77de78df56d61eb93e7e3d066a2652f6161551d90340f7ee1443f14660ba39c11129277c58c2a8fd0610e6e660627de1278492b11e4592f9dbbe6a35c00f267e1f1340d2138ff5df3b58feff3aa7ba7600ae88e70e759a9c3254fa0accafb2364bc3c58d1c993427e9cd27445ebe1bc30106309377f7128dee3c1a2235fe93dcda9285feb66c3b024f59505e6008c94d6848de03151bb5d7ef6eedee184a19b48156e9e7fca799493b7e3c6ea631ee432b24e7e4dd95fd2f79396fe6dc26a699cb23780ac800ab652815506b45e570948ce03f95d4b4d952088eeba7f5960c0b4f7f2c284688d1dffcd023011788c52bad54b50c31c897e128c2b973e0721428fcd4300fe297fd13d9a9d0bb33a3195cacd8d78af9bede5dd10398917e692369c0a407c687bba908778a74cd6b6abe9177567fd69694ebc1b3c1742e8212ba91eedfda543af19dfdcb34af31583c7ce0bb3034e9116c5f418934f9809b07851a857dbcdcb3bf059fd77409701a38292b62a03d81b19deeb9d27d98b9a4c70bc57218bd5ef9e715a8be7ff65af9d58ad3bac9766cf34b787e7f3c82688ef4a538aaaaf14f3608301c0bbbcb0db6271798d78807c286af986e3df721673caedd8b1fc90a739e7ab7d994524e9e868ba83b7b3db2ef060b1de70253b64aec4025e3645a58555317be4edc0e20cc323cf8215fbf80cedc794a56d94101a865092df7eb813aaae98b3e76ab0b834b011faad12ad6836446d1231d5a4b8262eb2e81d83c15fe937fe767a5856198348e9ebadca0fa879a593959d145679138ddb3d80212f6cbcf99bf6cece299523268f2a47a3951ebc307bd62b13d874067a5653e781314dfb918eff1c0081d92afcf2065a841df644caf16ada41da28a8770af3c4ab5a786182bc59901a99584ef899d40adc54f8e978f7add52d2033bf5083602a96c256af1096d33ff10c54d2575283ff61ae7d2f3714511c6d7230caa298ca72bcfd097eb91cae5fd1c5316eec092b992b06ce12d83cfdd57956d35602283ead556b7612ab43f749182525a67a1ecf1139bf051402884eb5daad1053dcc21e555abdbd1aaadf37f6589d083508cfd175e5e7bd7697dc595d10ead7dc56c52d108612755a75be2086571f6c6cf7c7d8cfa3c744f6c69807555462088b15073525a6a090a2db048ff2bef70c0c8aa45b6caff8fa163a3647af995c4ed56db8f468febcf4bfb06ffb4f76e70b7bc1bbcea9d9e1524a345d15551c16ca6eb31644fd96d1e534130a20af0745b421f67cc8b139074e4f1d02995f270ad2a181059139f877cda5c3bae80c3fd8c14edd6f21ed0344f7b945a3e2dd1e44314b410440499304a14c764bf96ffc42ebbd09e74d00e5a2424de500178e2f67e2a351a559d4f831e2117ced997aae6c766ab7b005406b78a4d22847e8cbef7dc1d20e7664718209471efcf923f61f178ad7bca781fd9fbf0428374ea94583c8611f822a5be89fac6e1fbd9060c2217662ddbc3c4902616cc6de50a710fdee1f4c17adf0355a1571fa9adf391b27e7f434e1e5a0337fa30f323285441580932a3e7c35658619be999d4deba65e539907b1807b9995a12d4a863e90ef3c2d31ca26646d8709cd58ce758d172f6b282d60c18d037d806d12548e54ed8f442710ac427fd424028160f5427f9cd52b448133e80c543427842ecc237e06878040e721b2445df4aea23c82ba53096ac4e3f55caf00e9cb9035123a7f042da1a678774598a1310980f8e63c131c0113640cd6c0ebbb94d06c71447bd727611154a57107228b54da434d2184c950e1d3200b9fd14a2bd470cdbd923b4faec0671064d4ada3835cd7135fa099c60b17ecef7daa58baa0197cb396aa337e7afcef74c5103b4e566c023060462df181ddfced2e75aa98c3ff7c1eb4d049762680e9075a46c67e1655ebd89688881d568a2e3a11d0345451e752c64d9c8af0cf8036b16834ed447e5a2ed8c0e11f052d27c5b63d9b1411a3937a6ea03df38be7f6704e2880d1de0a4ba064ecddc7820860949b4cd0030d30dfa36d511f392b5ff9bc2d01e2941a26c6c8a045ef537ea114c244bb090bc9374e854071f6a4855c298c28f98b73254d3534944c08d9321fbcb90b62cccb53a09df92db5a7713392079091284ba606d8009a159eab5ccb3d455f33c8d966a6bae92ec49f344101ee0b75db0c5438b9ddd12ebb6f37a776756d9dbe7c2023a4e1c9cb8dc77e11697ee65f179092031a09a1152197b58be8a596edf42f8a6a88699c2f52a9987d05ccde9aa36593a4bf994b609ffd87f22810b4abc036173f8a04975d597afb1034e4b8fed06c5bfdb3c541b48a2035146254743b891dea9e36be8f924220bb6a140a12378d8b48f09216e52fb88a3c9d45c90fcd69073046af214429ec3e480fa970bad06ac9be1a8635444f43a05948c3f481fabea69bc0e29a7120717b9fcf10a5c50a8a65d1e7b67a6185207b16b4d203c1e21b66bdd016188799c804aab5ab65e95a43d685c7631216c270856b76c3cd4fd96581e660fa37c61896add8889d8d991996ded7a92decd87cf58df7c722d0b813702ebc8c19f6e42ba327c36ec53e8699ec908e630437f41eaa3b0ba93e8341a4861c7aaf00d61cbbea90019a2d765378eda30ca27ca707f3de2a54b0a6bb04681331edd746bbe6a16e2d701c2e7de716fb25ef5a465e1e487e6c4288ae468847866ccc1b96645dbfc5a37d3925f1cedca226022d3db02199bdba778e6a4d3edce89987332790b3ef88b453918f217962c965d4850cc956a51fdd4f4a09fd1c8e0b96d1d172c9950b4b147218e6bd84f6715cdfa8a9890c3610f21500c0701862d81dbefef5a0e177222a08f74928f4c1ae3a4a4e100633b495f1d5fe5f0e58160757846e2f062644f73eb6942f6756698426ad1abbabc97ad6de0b4b7608f52a9032cbf692e1257a28392b757a0e8392493b82613e1d516dd0ee1fcb3b22f78e11b44577f1a89c80a1a02d5e437690c1dd2ab0a004d45302c8819f5c89481942a02c9bfac7032874d498ce20495892cd86e23447247e752a7d5997371edb28a253a5803818d63e8d2e87067b2c0cdd5a8dc27d17cdc6436caa4c41579909a7181ba5af799c2e65327110fa73c8c7d3ded8e6ffb2a707a74c8003a56564603572a5bd18cfa5451058f77c7546589ef1898ce16373c0fd4decdece8f6032a6c221b829bd1dab4bd39915ada6ae6f7ab2beefd013c66f0449f999d3614bfbad979d0b7e549b297450d964a461d94184a1c54029abad3d3ec7e59410d4f92782fe7a5e6886b715de9829694c3a75392a08ab51ad694ecba17092a2ad63b787276ea88b1ac4d781118222dd4d86c6e711e181fc5ce63f856fb3dbc49f5b3c50f00c317a44c092b5a41721114f4d7b81bf72cc1c3161dd52c6dcef028cb287680164aa4d88016e1d94b8a2ed797f1392423540c4c2f97d019d70b7cb980b70e6859889423e2b2903797c1357bf3bfd46bb2b0a117cb7d265921308b43e5e3a4856c206b0c97d3830e1caa31330d98c7ab0916b82c7dc5f3e6a15a6e8ea55bd18b696bc3e21115387c3ba0fc728108929cd3fa4f63ed4a393c7acaafb38841734d72f96a53ead4d8266a122271a80ea7b46048cdc2c9482478a9aae4eda63166f4d2504c607db51d6c24026c0d52360dd1f10d285eee139c8b81e10f3912bd8f6ff8045ef1ebd58e6c9ca907f5876b8737df5123063224cef3500e888742f33acf45671b1fc0341e1edbdd4ad607948b50c96a81edf21aa517b5d2c592a4803489728718b1972c385ee2439271dc230d329288360b7287c9863914ca2ae17f60eccf2811b99f38c7ee6b837ea59c25e3e2325134291d1f9fe1d8e90bee0de9d028d065b75a93fdd0760745a10268e5e650e4dfdb42cbcc98f33adf1a070fc9c9fa0d602ca49f5ae25250999e5b9395528e0d2e947cc199a23bc417a93b5d5e200a59fab7423ab0f0a1a309ad21db5684661501534753882f89e76d245bb36de8ca8f03f0dadf2e4c1c0219ecb094d9a1268e8b4adf34393bfdd71f85a44a0c594ff35a624d901ff830fad57d7c9a2eb48ab937858ccb8e5a43143f99a78a61cdfea7418b6aee74001f35982d5feeb1a0ec64af7e9649feb6390cb97b7614787a34dc9a81895920bc23c9fadb5ec1785962eafda4e84e982e7ed1ad4386220f6b46acdcf5dc0ca0db717e2cb757195e25d2cfe5db12eb59f8963d5e534b9594f45794d97cb871030a1d2aa8aa76e8a788a70b95ebe4e5d82d69e7e7da7ade2f0ec454edd6a5d670fba41113ac2ae09a34ea2395c177ad9ec0fce67ba525c6da171139ea7a318d122291000a0f064c9ea28569a97faa3569064d362b21a79eb5b589a8a744ca1ea1ba0202aeeac85e01b33b81affcecf1f3cf14fd2ecc6608ddde3c473f27e699ed0cf0468fe0cb756863c41211d90b1e0281bd74ba02dbb6cecd4b5728979af109d347bb46a2c4b924ba6eb0c88fde64904974e8ea78255aec3450a360afa765e1a76cf14815b44b9dc15f171536c8e9c4b74d129fea814a81a23a959211459e9ebbae336446e2bd019ebe09055e498f612f0fa18b1aea1e1900190d4a82e0f4ad7c0adbc08218b46e4cda8fa8ad36402fd704aad67bc08d0103ad5559a7e81ee016dc3609449d3854fd1b855154a39d383244e358e8cc5c52bb7fa90779fcbbe939b57328e44f71497cc90e694649b9a7826e01f135646c8d460055752ca102c18bc88ba78190f12d069a05a0ff381390494890bcdbcce7be9b5ed29778f4ffce4f2b3254c1330d1bc45386f3112b11cc7c6ca3ae7988941b6a138fe39948bb5a2b219b603b33b937d26360ac70f11a1286b58da283f4b120246f68cd258d2816bf79f4db334c38e74291b13a6a8d5307b636bd23da1cb2e138092f7b34a09897495a89f5b027aba45696abcaa18856cdb5ffc7b16e8148d5f832e9e82210123f70ee6898fae6225c4f80dcfcb13a67ed51c36cb008948f6908ec0687a611411888573b53ca26a01f657df07f22f9021aa3669071282dd6cae5e2f0508b2507da2b4c61bc4ab3e7a674896f5f9a474364934eaff0dc12c2b7193b8a6442aeaf58651ec87b494da22c6cbc4b7004adcd02747864a7cd6064316a0788d5235420f906b19aaaa791893950ebb7e40bfd6baf0fe679564c66ac51cac49eb588e265d1adeec8d4ff58029baa56a9cc62b907f10ada2ca0cdb2e179af9b9b7da5c24f2cf534b3c6dad1abb0c42de81e4da4aca70028c20ae09a6a9f4c871a678645abf1bfbc16ce7e5d92d36ccb6e54ffa7f09db9102765671d8e87a22f27c3e6d31ee67ade29bc07d564c0a63a0a96a29cf2c6944945ab55782c153f4c80555fd52e86a5b726675b53afa09f27ace593991c21baaab05821e20a489697033d6bea24a0759b42912d2240657512334d9440f89ff086700e2ef4d84f11d08ce3ab79dcaa5df030e602012b8af10227c3c9a1ab9b6ffda0825e3cfa1e625bfc7e6b04c04b236ff08ee36ab5919370452f65e7f43635a7658e2c1b385b8dba1a2b84e83758b044896e13673aa8db7f77ad0da3034ac4e124abbafab8c636a76216f88ab91e77bc6b43d0467f2a7e0c24f1264001612f4bc319389049c4d90b3009bca54140514f654e1346418db934e69872cb6719f6dcedf8f85d7a3b56bf8d495d52de33d2557da19da555b2707270992db6e87a1b98a2448efae71838bd4b150688d2e41e62846cc9881e1027c4bcd8db1ff75a10cad8f3b5c74d084a3752ab9520aa69ec193714d7becb2f72708e1b5b411598a15977d69e73fb2290ac53bd47ace13ad15abae2816a5a06664aa6e09a8adc432cc1e1bc7a75de29edf9fd3df971778d2c56b12b10bb8d8c607f88120f2f80348cf698e18e18c269f7cd5042450d45061899b9859da38b025f19c2446daa33eb31e61f58fceb5054ac3c588793bf567093b641623f75b7e305a714028e048fb21ac316212b6c02c4e6c36bc0f48155006a72de09141964260befcbd1c233f01bed668a0955f52edf980ccc1c0b72cf03320dab901580286adb55561a5a84c743fca23c443b3c847bf7e590a71d184ce4773b40815731f406efc675e22978e034b4f08255e97de86b996578ef69b71dbcab03c65ad19e14d89ea713e5093e276b7825a0dc0135c75216bc680407961234a4c9fabe29d1dd81b909d23eae3886263ca34c6991f154f8313def7aaf91e5ea3b762dc5a31f3671a03f447d3eb7040b07856f280289a120f6aac3065f7dae90c834176165191c92f0fc0c3427a3ae1d3d9fbbe040fba01c4a8925af6bf23f8b67cd9d91057fe2d22cc21d35e2a040c715ee050eb0ca303031043e1c7edddc8d6b2c476560e0d74aa97774d7d1951ae72b8052bc94171fc35a21fd956adca06c86145148cebda1088d41d141fcc09f630a2974d2a249ca760eb1586a6128b5ec91ee221beaed088cdd261b3566b0327673c469215be6f9862192a5134248046a2d1dbac0f26c03c5c182da9add36fe08c37bc91b971a25fc030aa2e3d0e9c882757fa89088121a729881576ab304980c37c05b528622a49410dc64b3b0c1ef707237d3cbedf3684d0a29dcd9954d097565f0e0b18b0dae33af8103716481749b26f3b0d09f870077b35e91e968028996a34004b7b9438d09fbdcd29e88e30edf55eb3036d5f6b254239ec2f39e4b21299e28f402d0ce3f2be05a7ac66ab2ad0831010d97c12f6e6490ff4d448806eab75926d8de2cb07defc83dbc81346b033897e71aa6d282100769ea2391a2f0affbef21562e42d9594ba01c83493646b3c4b173d23aeb00eb2735678967bf18eade589135eda0f1ab29e68ecbfcc1a1e0fce2125715f4d479a86da34bc0cd5441e8c7339a6e9d664447ca14cbfcd4b967035158015385c4a0b581f31c1c0304f2dbe02cc9194923b7ed4f94161e74d09d8185f0f3f31006836d0a29518fa1b5b961cbee8ee16b29dced7bb9b49658a2106e12e8452194aa57149804a53b770c34be31d99c668d05c12899ecfa1fcd63cec73d857438aae68747c9cfdf130565834e49281625d25efedb886814fae330c326728da45ce8128975aaf82f44844a3d5919b222ea5fd54c7e18ca44dae5722194f01f5fc467996537fd81defc21247d627d5c310bad6ddb1e2cbbe61aec23afdbbd57ba2ba5510c95940ea2c2044440bf1192629c2d89af50ae24e5519d7375c34b9ce0d53e7acaeba056c8726fcc012dd239a9637c218e64f792f36def69fe0516b86ba6590004e6986cd0440dbe75ed0a7dcacf1eb10aa365433291a27b7542e2ec176cdec897eba1b4ae733a3b598541b1eb2b2368097738d1a1785d4556c64e04ecc579fbdb237de3afc495c14abeb2bda6d489a16700244ff5fc990f7272d9d68cff2045f42ba597e57f22f5d6d92095821d3a33fd497ca188627b2cc1a583526251af892535f25f0b68a3e89a107c62226a635dd6fa2c8cf0071f29e5d5d4982e2ad8c5f079e1f5d88a6e16404ab4247bad101881c0022ba429790831991232efb0b336da1edc3ef1d01c116719166702afd99b11d92064e01d72407b46d0d4147950ea4f3ddb603af39d326a207b71781eb12fc9f8e0c375bbad3d621224a95edcac2fe25b6170f16e683fc8b169a68f55d89e319f5aeb5556570e37f93b2f69875f21b7dd5a8994181c28024d69dd7175dd2f7f5c3c0abc1447ac9bc9814db950ee67bdcad4b8f085111cf489970145865817455ec4ab97e23ebb6b2880af4bc130dd22e59f7cf5a63cfc895ef8312b7a3f499faf2a1c6c2e34e2c1a3f232dcda908d82f9b6927360bf17902b549253404b1200bb8e0b8cbe2e1dde26614bddf5ebbbf29661a8f5389a0edae1fc0868f90958d83d686e59100c033d1e5d686da87b2584eed674311ce5786794eed351fc319a0e393ab2e24b90c43c7e680e2fdc211b2f07865b42047b83a8e7483234781bc9dc125286ea868527e32584716405980ca029c150d3e7bc264655317728008e23581d6a36ea7b8ad4dc55b25a6cdbbfcab82e184b32fdb7078abdc4be5f9602cd62bb9dd9a87bbd8e4a126e5ca0f8b402eb60bc179d75b3a131800a0e4290d9c89e8ffe88b3c10bfc3da7c3633421b62f1e65a0d633d8cc3d08e493c18697879b8072a50dad7ba6ba25e7006493ae705c5dce870f0fd7e225e0a14ed3d79c2cf2d262514206ed0ff537dec997fd0c057d091004d7f13f8128af1eca2b6fa3c6e201f8a1ce646e5170e70e21785246b7860a1e701dfc96179e761f49ce2822287e6df0d5851006a0e377e2e355b152a491e87dfff72aacba1604faba148f5cfb7e20183ed1b14cd85c5614b7a0eb3ac42093f7173b542bc2c0554620a50fedc0a080784bb83f03fb8e5519dfb95096f5703139d6848516166291cf90a34c61dbd144580102bad14ad3eaf8ca31fc040623327eb5e534d2ada4a85e11553593045f8ce1936bb636cf1f137dffb109ebbe201c82da35df5233a403c351aa251aec88215caae8061cd88bece49d570deb922620fba08ce1b0e9b59099afb618cfe86c84d3cbe1c08ae2e508f9d991e7ca5d9d371426b5e473505614e05bd192fef8193631d0c062feead92e6735fe3b84b4ee7655a79c80f90331345f92953cbe65cc004d34aba8de3d2b0d299c5d8b14cf82d310789e7c193d74ba700e33fc8b01061c55c76ce0356f5f03338fe696ddc4ac0bd8ac5c18cb20137ceee735af22a8801d7547a549d29766437ac8f30f2dbb0f24b1a3347425f8bed3d101e19061774361e639377dad0f03dfb91dd1f3c73d1d161d69daab20654d12a8590efffd263c7d475887f00fa8b6f24063dd778b8710078ecb6cd4599b44fe32746004cf18ff802b81192f7ce9d05776d73afe089da1611f8dc0aae32e6d8b9b50e1418432c1f50731ea02c731e0887afa5187a401954b436702668fd6969ffddda79fd71e8793dad83fe0bba7e2638d13d416701350a8f5e81eed3901c30cf2b43d51a3b4400853c26e58d896a7380f3ae5f1d8fd6902d9f0a9a13e2c9f29eee60c8aa1147edab3d4919d23a6ca0d98fb43f6ef59f05fb42dc91d6227bf6cec40e912f28dca8bdbf426b1b8a24191946bdb026b43777340c2b11816bc2b9a6006a15c92ca7e3b4023a1307bb6a3299da475641459d5b2bfec2a2332f352486c7ab715faebb01b09292515bb23557e3099aa778b61d20a7ca2cecd148f4cbe803d1442898e583b4545f25ba3101a94c8b3c6743b9770387e49d559e09667dd1c83015a755d42882c819be28205b2ff0e915d26bd81beca9fa7bf7165c4336db6a504e5cd508f20a27cf82429cc921a2a8952ac03a1535c03fd56797e4d0250a3ac26a922de8b8661227b095b96018b800cc982208872abfcf827e6e607c1b18fc5d12d1cb2ebd96b3569005897c1b84a22b406c409874b2e53b913619a08a58b1a2b52361036c00f8221b5218c4754f01c5a41baa84d298541e80a8f01cd1bcd4273b7ce0f9820094b21f9ccc6c1f5015ba52855a0a0d933138d567cc5e14ffe50d36d5cb6231c22ed010a287965283680f8db39ff75fe33c6704f2a74e92a321379da093ee307f880feac6eda8260edc366f3a515f14f6498e323f7d3ab18bb87a9cbde870f51eb189df53b162425d137975894b51524184e7e125754cdc52aee6b9c04fc269859bd371376dccb4e3baa3f292fdebb4cd60621ba23b9d2e5f5e906a9f23e14efbc2060e506cf4c6695f56b4f30b90bda660b9323b7b15032f2da51842457c9a2d0e8d04d36fc8e267ce1afe291ccf850528e614176e3e84edaf6d4412728824ec7bdcf05ec9d62eb05c070c995d4358bdf50794d766b657715947646150403bbd1e5b350b6e9a3c4f4baff2a6fec7fae5b50344cd17beff1572f58a55a9625415da611bb3830ba459854e508f892ad6d8a806eceff78607bb0b1809cdd969af127f40dd45450a23e4b74d8d10360af4dfe4bbcd5bb22901f05d42febf7c7b0d51bfdb628c84cadc58438511da708f99050fe96a46aa72c6323e7cd8842e9440158cf2ebd6691d9fe2607cc2ce18c3793629c9952ace0612b6304bfacc12b0168cbcb2723498202a66ced16f2f8e0bdc8fb9ca7dea285180027c02f1ec3541ba9144d674ea90f703826d4d2acd7f9f78ea99ff50f964e41914783be7435ba8428102a4c3f9c2c1b263d5f8e2144b7841adfd61915e53a276076ce202ca4e2a765c4050ba4a07aa12cfb268788465f42bee9a2a849e54d919d77afeee99c17b2234603455aa3428fc08964e0556b0bfa1da4c3726477585fe40cc635db6ce6c5328b8a37dd815406b0050dfe65ed9cded6d0ccbdabd37d9524a29654a29f30723072c07324a1b3009e37b073f769f0d9feb2f6dbca00d245dc3e36c59371b304ff98e0d98dce9e63f42ebce9b9d6f8c3edec9e70ee50f7f2ea472715c8bec93cbc152cec7717739657cfe06740dfe08fb25fcf15473d775dfda3bb363183f3850e51f83b09fe58b036d6c8d997156ff7bca43e840f094bf75d6ea3b89fd42b88e23828e129cf501a971be0d80decf955d4d17f6e326ef5373c97e4c54028e083a982091f6decd77c8e57008a1e61b9473678310364398e8f3b3a3a8f9ad74fde7e2b8e61c7b92cb01df7db6129dd429759fb26717ebe6a9a1d950b692a7e094d553b061c7b08bdd4eed99d41d9df5edb07c627938abe3bb7296b39c6f8c91efdf8a8f72c4cca87924f69b71fd57200099b93833be6672396093db2becb70ac1595fcc0a849b98187d8bed4f52c46506f2fdce671a698c8d03c81d7e387eb81ceee180c167ce02386ce86227891c5d055c368201cad57c8b36cd1a0bd7bf3bd8e100f25407a1b0eb8e3dd5eeac6fe732473b2659d24cb7ff9484fd78e9d55d6e304150abbf613ef886b792a7ba5f37fe92a79296ecd7af241fce4dd89f97a9d05082eb48dd4bac0f6863ad58beaf6ed1e7212281afcfad57b750eca17ac02c38a0618c16fd1ef3ab27442887fef450fcf3b9d5837efdeae9e834f9d1e26a510fc51e8ffaf4b3b781f40baa6050d53fbb5ac5a2e0f9f0547fa562571f8dc74b3ea04dbf58d52f6b5bf2c3772d16b5c300177ef47ec0ff0f7a2812fef2ff8b87a7faeb3da1064720095145490bae88b53e7e1e27307fce09ce62ef8bf784498324576cb9fc3c3ec76d620b426ea60aa5c892ab80cb442fd7d5623abef53f29a5acb566cc383008bdf56be1b2473bf26c235da36bd4dab19c91bd8f856e9f0e0706a1971fc727edcb1d47fa057ab4a2493a29a594524a29a532c420490c48ace0862c52b4097e903081f114c5a5182b03a59416e9a18b089b734e19a658f51044b27e0d118ee2735f94522a43ff5083273b3c81821bc470a58318f2e1a2d85205708802c59622a64002c414202991891ab2744f961ea51e2db567ce39e78c21061f2a9d94524aa9cbc755fc735d4b980951089010f1a0c547490927fac9d1c905487869ce397d1a8aabd88a11d58a144b33a37832648b5a441457f15025b24734ad22629f9a443c4a9c73ce5615ae2ceb8105b95cae192aec32111647303752eaa0d74c122f850cb430d16246588825a62394c89e1a445c38fa5901113d39b4a8934be394237e7a9e524a95f848253f52c912a9c487d7960c6932653669628890c60ea073cea914731523d524bb44c3f44a4d29d7ead25b831ba28be3d9093623f5eb5210d508fc4172b3c51048515c2ed711267a0118487789d311112b74a083272ff8020a11587ea03b447939920cabc985cae562a55220d6822f39ec600b153ce912bc20c3cb0f91d3e9535ff3efc5e53e4c11892ec1a6119f15a5944ab144b6a4f0c142813e9ffa9a7f2ac5103ed08781609a73ce2273ce194592ab788929c389a229c391c2956505e019e3490e6c70c3910f52c8dc008b195ec68fab78890f501ecb9118964021980ca73be79c330992ab3829bb4996b26cf664b19a3e47aee218d2f549f2ae2841cc9024da900c0bade7535ff3cfc5d0936574c8120fb8130b2c4b9ad029e79c731651c98aac145db14559688a943e75448406d514338082878d0706186080610b962346209213d5c8a7bee63f8a2ad108e41200952028cacb86559452caa3215731d1510c29b68e92622412e3c7ea3331c618a5113f374622b6d204937c1043b2ea400797f6581a3b632da594167121521104c59095a4524a8985c8557c14434aba5896e84ac69f95b796c81aa44a172e1889410821987493252f985420e157268443e6a3855789693e930e89e22a1e223a9a77486cceacd65a6b7de174eaf995247a05b193a1ed8732d9861c61870ce15890cbe53202794a118c633c14200a171ea4e4e004cc4933b1f224b342440d2fc903d1ce132cb280222506221a18750f4da293d796237109294b5059c2ca125796c832a4813c8acbe5a2811be8f214154869a09494524a25aeb88ab328a16495d042a3c4974f71110026b2b0212863822aaed4874e39e79cb315455096cd284c707d8e20cce572e17074794a52d0d19d9146261343eefc9924427870e448c731244f628e2e485c4134c56c20a5836ee8e1c54cbe5c2660f0f8dc263f45cc1e9ac92ccbb2af59966559c6022557b1962f382c008327e6e32a9e2b254c5e4a29e5132e57f1eb09987d0288e6972c4f17ea13c384ada62c40951bc0521043122c92e022876c48152d6664882e5ed0e085225d6058a279d042071fbcece048074134e79c457a4ba5945217885cc52e1c551762d605249adfe1890d39782071540105d109ba30b1c30c7438926548e890430a9aa88009d310bd24065b4423002842a79c73cea9c555ccc597ca05189646075a7eb40800ac07885403911af4eae18129c9e57221894c97a754c9c2b4420d3d529a9a18d1040d5a89159e3bad14e1c1b3cc16154873ce29c3cf0cd10d88c8c18a524ae91535f06c49128f44d80e922c60c6d0c2e2da411527a8552891844800aac8e0a7861e0a7024032080f01fa51f2d3f5f7ec0a881c7552c533d4140a225443e1041213282484a6cf299a26d9466f0c500a9a2247ed812eb028818740e34e89961ce39a1d0e22afe82030518385678e69c53099d72ce39e71426af3b27103d270814d980ca1608440f1030ae9e2c0ec932186c223aa918cb9624b65825140731581a3b63ed3cc2e4450e39fcc092e0a23571f841c001885cc1a10b1a4e80650720185e417cf4fad4d7fcfb6401975fbaa06d7440154b56a1c353fe21d8d838269d1947c229294b018573ce39258da76e142f4bd33453c405d01538c30f4f10b164b5cb455ca4cc60b3cb455c9af02996bb5cc425a6c4c58a1617301a80cb4539f8e1c6cb453b982285d61f3ccd15f64370166a873f7ce8a1e2d7ad2b15f6b3d6a7064a2faeb0fc154a8542c5121ad7a43ce5337aa68d2c8d673de55f6560f93ffb1a0afece7587deb7ba5eab60267217fc076f67ea8906fb76e683ef212eff0c6badb57605c5e8e79a6f3563c5dcce7606cbf2192bc87fe3ac16e2f287c037f8de1a63a4e17737820118b7bdcf4618b4e859d29de21a355932e261a9680ba67b80cb455e8ab8dd07e43aeb80746d5c36d281e97e91128382e4accfdfaf38abbf40f1960bf5176d1183316771d1162f8749cee222262bb7956e7fdc88d80f7e1e8bb5ebf5592e870af2efe751b82e611d8ab3d87332bf639eea2b9eea1784f8e743a4d314fbc118ab48a83c8f38a1850c2e73ea73a6c1339eea5e8236dd03abfa81682622ba29095777bf0e7a39016b01d0eda6e2f607318d26368518346de6f7376c767ec555dd30d840edb1ec65ffcea0c3fd60922bb12e680389a04d2482aa7e18e3a6fb790c8ccbffc1d8edaf4dbcf40eac6f016d96a20e9cf5c9a40b5f2639eb26de70aa7e37ded2b8d8ef267623e5e6058fcf902c7700978d86305dc1733fb86c64c50e30ca9dafa1786c3b2dfe0fbc2665210d2afe6bafc37dfd0b708b46c7fe4eeb5750f5777e7dfbf3ada753579f8df96f255bdc821901159f0754cd142ec02d1d9e0e0e54cddfbc9dd66bb13b390f95b37dfdcd7371bf7df58444d042b987ca407ded73325b5ff374ba55992887f450f2fbf2e03c140ffaa89cede96f4fbf5b90cb11df3913b8b5bd163bad991bc20481b75f460ceb442ed7f51ac48670ddad6b20a89afd4ac18ce936005528401638c03756b0d77f3ab13fbf036cc34324d5e2fe45d3b23fff6b57045e3438b8f3994378ddb4b8ffb453d7adad6b58bf3c35b3af2f7379f0f06c0ff33cdac73c2abee5aca713e3351154cdd75e07c63bba53d3baad8b828a43a8e8a14cd85efbf89aa72314bd1ced394f27e8ced7bc8641d5dc1ae84e6e69a77e19a6113ff3e20b4669cf886829b8eb8b895d799262bfd4f695e3c1f2803615a6f806012e677392524aa9a5a08dccbf4c81e5d15e8890bf10edb7e781792130296823b3823631def6399a87e2cf7efbedddcb81d91ec55e4ef61b2ae7f4f54f5fbffef63b2df9dad671ab427e15faa2fc73625e7bf87d51fc428472b48f792142d0cb8979ed6b87620fe59e0931af7d8f180fc5cf2ded7bc0fcf642b6877921301e8abd94a7e4af5adb9fa0b0dad7efa171bfbd10fbdaf7d88470bfbdacb6db0054c987791d5eda6969301dd7c550fc31bfd34242b18732817b98cfe11ee6f9613c1d21f672603e463e8cb7822af9f2394f720b26055532051aa6e12fc334fab33f6d5aa7c1741c731d2a677bed37cf63a86a26ba9655fcf2b3ae7a2ba862bf31b1d30e749a85beb672415b9f9fff06da9c4e5dd6554fd13f4561f9a278f0f8f7cbdcbe28f93adb9f5e7a3999f6d9efb4b81c3c78784ebf115d9eec350f07aae877a70e255ffb9d16fd9387921eca84d3679f73faeca5f472b2d7e8eb3054edb4765adcaa5045bf5f602dd3902fc334e47caea1de0f8ec11bd8edb5f9dc4dca92e63ef75381d2ccd058ce87837148380e76398e6bd2e2cd2a1a313484c4d0d0eda5a12d9ad205c24a577e8c1f38cbb32b19523645869421ddd32b43ca90b298b9ee3e0e73d8752287cd1c6855beabbec8fd626e252e9a7c419bfaeec92ce9c6af3648377a9f0a518b8951f846016e7cd8cdf72e3a9c365e9e72c8f9c739e1d4e69c500e4196104219a3bb471bb06b83e8e238ec6cbcb81c317aec6cc03c15a1bb438fd38bc6359fc4e15114eb2eddadc556fe1f032eff476e1cee952807d0a6c8b7e4cb4e83da175cd88f637289486a71567c9cc6e15da3e3566b0caae077bd291eb04eaf4215f4567773f74ed20bf663229c9808bef1ec1afd4cee329abcf8c6944f640f498ab04d85f2e511808b952f1fe6e44719278e9f8803e6dc0853166115fc24177e7b9fc5e1c2a7de47037bf8ebf24902aebff43e20328a163b6e0de14f2dc2a108219c304a095973d9458903e8e238ba381e3b1c3029659c31564f41ef3dd5efb4ab111a19a4e42a97c6e8052c9726c8057c346594324626565e2efae28617d898cb455fbcbef7428cf8dd7cf1c2fd98686a5e6c71e1cfd0c05f411c9f32978bbc98c185b95ce4c5952a2fe38c73d2286ce879dbddcf16aa8ac41cc42884462f3471217c1a3b53e46586cb5d367a4189c844ff163f4a1ba2182216eb420c1a56d09250ae9452cae855aedf8587dbb076d9e1c29fa1819076f188ad978bbad860bdd018daf8f7098858106b69a104062fb41ed0c513af96ce0d1c74d1a2d5c21606912c5aec0ff8b6db9125ccb7f300259ea0560bdd29a8e03dd4463412433de430f76147e23087cdf001d964b7bd7833b2f920e19f0dd2fd80c857777f8c35d6d90f29b8dd6528b6a0c2091128c8218c2f4e4083925351183ed7dd06972abab8228724a890a105df3aab89a8810b2e8b7b80eb9ee110ebd6840d191597f6851537d4d8e98b2f34d0a3ace7671a0555253eb28a8b3a8151494281112a43537a8c5c47b02a4145602025695109b22ea803bb5d2eea3284c502e07251172a4956c6e5a22e54dcd005075b787161a5440f3c95efcce5bf1181393a4b014b2e0cb2be03133126673113312b17fe94e2f3c859cc040ba45c68e542291476a109f4b347c5af7f4245af07fd8c5fdbc9c9fef4f14ffd9aa7a3b3c3c2d1093e9a90741c2d3152cee935993f7df47274625031ebb23f7d8f7ecd13a27dbf878a42be196bc9fc0d77facdd311cad95ec6d3a1812a98c3fde6e9a4a00aaa3c9d5a53176634fd51fb1ea7d73c21424264fef43d3c6e7d3719e07e4345990e153d0bf3327ea7e53de4c16bc6d3e92740434f5e0d24a39b43309dffd7401e4afe4e0b004f78f004e0697ea72580e716cc7f3d24e3bb09aae0bf8e508ef632af2394737aed4f0f73625e86a7d34b50053f47e6633c9d96f12afc93a7d34748a7a31392d631f061ba79947528f9f4fdbb439940df1f25bd1ef41fd5a326c500ca971d04b95c2d9897f14239f6b3cfb287f99c6cbe4ef624277b199e8ebfa00a7ee6f913a0ec3f7f65ff39d013f85a6a82af256fa2e904d0cd007400e818aae269c99bb40fbe66dedfbe8e508e079fbd0efc97045a3272607ec6d3997998b79e8e508e7d184f67c6738ba4e3431e916ec9f02399e796cc7f3e24e3a166f4be193b8a796ec57873a7358f1ce9c2f740c8720bd5a35bd9772b13ca81f9988ff174845026c4bccce7c4bc8ca7231463867262de7a3a1008c2a1277069895ba7ff20d0c9132294a3fde98910cd43e5fcf6270fd583fbed394f4708c5e3f417e0d6c9eb319b6cc0810e3a1cb95c2d78f4f296f62d6c1e2afbcd43f18043173e01982cb790a00a4228e5c8115248a1e472b5b8a579425af05c281ea7cf5efb0f225df832b45808f0105d86023ed7cd21a882bf7593a80bfbf79b4c4317d600743feaba1082f1df6482b0e9c2d7ba180455f0015f8c49174658a49d8c2d965ba756df2fbaa88c9de80058d2b866ca18638c0d9f999f69747363117b0596df63f49dee863f107694cdc2ed8ff0a7bbbbbb639631ca083d24ad3a8bf953b6b28dc7183ddfe916dcfd88c66c13fdd9d93fe6fe70bee9aeb0cdcc8d650337fe95cc3cd94b21dee8a920af3fec30be6eb6ce9ef24508c2fd549030cb4e5976aacc71a41e778d2cebbed59d3964036627a5947266b4ab73c64ab3390b02a9b9d1fbda92060821cf446f6b62e17ff1c62ccbb20f480837fb08611633086106218c106619cdbc4fc555bc89720968bd8f9959464f35748f3146870e1d7af0219c1d93d070b0fdf12b659fde67af7bdd657777237ca8f960d095407cdced69a751203477fb07e2b25872d60784e6ce577222ff5a2d8d13754b2497a37ab483cf7530dff545c15928788ad26d03a2efc35360580ac44301aaa407cfcdfc470380ffacf61e44f194e4fb7914cdfbaa46290b50259ffee472501ff228d0a65bd28326a7c47e0d24002896fee7415712f510d390cf02b46920efab404d401f8d7c8e8b8dff3911235dfaf29d88ca91b3eccbf758cc4b9997ef499accfc8debfc721d6fffba9bf70161a5cb3d85507b4d8370fb5ab8db7f1d5f48374d83cf799c5db9747bc9e5a0d9145d833ed7f1ddbc8f85bb514a7fdbb6ed6a5cb7558f4d74e567b48bef03851b19ab02fb919f2dd9af5ec950a6616cf829f282e7c65c2eeae2755986c6cff605cb559ab072db65d3c56cb13fe033576922cb6d0bb40b973dee56883b622ec7479170bad10b1273f919cb5ddd8fc7b81689edefcbfe00fee6827c101b85c635fe4c4507b4d1e12515c4a0a9d5021f39f1e1a225f483f28022f00dbf1e3ff8a7f753773383857f52415e1a4402dd39e13e764eb6cf601ec76fb6eef52dee57f0db0886d73dfdc9c83574d9c8f52476b9680c185c1dd086a3ffb7638df1be8ee9b6ae5f3ee528d0af9dbe4170d6e9bdf693f0273fbde4729c603c105c95757d61326fd5372362ff7297a9d4c0c5cde252efe689fdf8e8040dc0086c0fdf73f2fad6e6a11a7a289817aad6ad03c155feddadc6589d945cd85ba35a87b36077fd5970168fdb488028c7595cd4d404f33203177999e17bcf8a98acf87f33ae7f4c450467a168ee072044b95f08d7dbab795f62bfbfee339c053bf9c9a899343f7c4e3693089d9999990974674f750c43b3327a47af4f60842e86ed8fd5fbfef0aec1adcd203124f30cc2cbf4025d8828a7079826a4b00a314d40ab07982acc5c8858738dece401a653c5c221847152bac5c4c2b91c116e51ca19bb451a7dc7e472c0e9c95810146e55a31056c847607c58b39c2dd98c31f3b26d3593d66e3c16be8441c220618850a0be48d8a5110a5b67f734333bc9196b1b07378e78ebe67cf4272e4794b04b3d19832a0742dbe0561b87e3885cd26dae53e8fb499731178a718d53c6ed1072e58dff433ed4381b6ed527a7f0b691b156f977326418c2f2d06f28b7ff24e5fef567bad2fb4e4f3d217e4faf754d0af3e3c34e85be508b1d7c8d3fc6baeaae3f8e94f2634cccbbf7d5e75aeb5f58ebcfe028006ff52ad3904f852cfdbedb7bc059dfca0708f806f5970678e60ac28ded364f712fd3591210d0c17c5da1de20500cd78510c761d777a6d037a66697f3aca7e0d4bcf67e6ff71f4edf06ebdfedb1a7b1f4b1ed634fddb5b7bb70e58b202bad0e23c4e11bf0c2ee68ed82c45c8e69f453ef503bfce9538f6f56ffebcf6cb07ddbf9b3a7dd8ffafe91b3806f4ca326b1fc388da3af7c116a093b977a5fbc2bf4f56fe74e8fb99611e3b524c618638c311af564b95ffd526cd473e5c29f71e32cf835ce6a242e2c62a27221fc52177e95a8058d2d8fef5c8fa1d0c6b91cfad36b01d5a35bf3bb35bdd7d6a2ff8a2d9ef9446acc892dea111912d39aef2d1c9fdc0e8e023b375ef8fe3ca6c7cc800fc6af29e09d72d69c6987b102fdb2ebbbe38393a4a1712d9ac74844fbf9462f1f3929f730cf4d74bf15cdb811ec6defebedfa087fe5576f3b552d76852031b77ffb5617ae42d091b301202cf0c0963c3182c88a9206d3f108694fe45b42d9a94fefdee7ddf95cd757d32a50e3a9198fb3308511f8d61fa16ff4cb5ce39bdf3b7c87903b3fe52c6dc7e9356fc7c9abf1d40a7dbfbeb3070c2d7205622e338d8f7e90beb36300d380d40bd2294fc1e71b7da543872d61e2cf0e044f09b9d18381d9ef3b3322e84219993b46eedc6b6ff7e28c0b9f5d2a66c0651b3ce5f2b7ab93966cc88001545c56710b2e37504f6115fc8f9de82077c1fe1c7637006dba07f80e3d78dbeb209818acff07645b419b6eddf0cd966cd074a2c527c06462dd86b3334eb88fbdc9d3cba71d97836ada8fc057f350dbff98afcddfbafbb64f859b7df5d4d5672edbb9592799935c175de52ea8b54ae955a9a4c4ccadc4ccccccd09b442816b04563875dd8dd1d5131f6fb4001de80412397d285cf5ff35c08c459b0616cef46f00263c1232e6c1ed0a63e84bf836ff4c3278171cc87af836ff8c323209e827f036daa8782088d637a20e01a507ade0fa601fff3206cc3ec836fa02e7c14f846bcb08b5ce89e0fa60175b0fdf3466e87bcf1eb57af0457c13a86fd8bda117ffef47ea0e8f39d1f3d2e21366179e8e0251fd0de8fe646f7ea5998749a8597a28802858f56346d5fcdc40a82ee0c6735ebdbae6fcda3c51fe27acc34fca5dc7e8ed1c2729521c0b84ce5428e7c4388279878810ccd4c4c9fbdce37600a7d51601a47ecd7b18e5de9a430a48c5d49afecf1e0b2110f1097bb6cc4b3240621d8f201260e70e10017bee1c10dde80fd806502a271cdb7e21bbe41cfabdfde2f48025bebb7ba520e0d4188048410c22108212cc1531ce51512d8a65f3c36b1db13f983c648b49ba3da76ca4e40f20f6a66b48deb97b6695b0f0b5be7839b967aeb66ffad6b1fd7f5faa5790dbb418fd6a3755b65aa140376c6329d006d7cf812520fd3f0078242fbb8749cc5824be3cb3a5ad73e12d62f2decaba7876ff0079ea2a9e154fd1b68d3401f4d95df3b8032cef39a3955a9acf9ef6f6fbd8951a78cb5d62aabecae53d2ac4fa7a619cd3aa39d35fdcee837b582522e72d608d04829ab9454d65a2b9d2fa7c40117275b92e69d9454ca214969e70f3b492795f2218410423a299cf3e9ea42cf291d92924a2aa5a44392ca89c4a4933233ec7a884a598166fbdc9612f9277b73eed0e923659ced336327a509bcb71cb4b9bbe764d99d7cee82f0ec627ba8819ce5d77144d051020f679d9e3fc759f5f943b0497dab2ff5bded182f05e37da9e7bcef6936efa3d1bca59b3aa5d8cf5d7cb353f65f43f9da9dbaaceb2498fd9a29a99eaa0af1665f938ad8533755cf95b2ea7d9d0535d004b6740cda741254f92755a61e8369f892b3e4bbf378aac9535f3ce5cde42919ecfc3a1fc876fb4913d31767c9da390f1796fe7c7e75ee4ab2edc318404b827a0cbec1f3a3bf0fd847a9d4fb92fbff00e43098e69878a75b13dbff454a298df429a5d4524a27943042082510adb5ce38b479a8f24fadda8b9063113a1d9ef215ec46546b38953ae1c2e79464a9016796127e73ac45f094ff8da7fc21dc584b2f3182a897dcaf5fd2992802e9faabe036de6a9e226c68e64d0897419831bd86e1534b65aaa7723ce55f82a7fc753ccf9c3f3912e04fefabf9fb03be9414ba0ee648a82778c053fe31522c7ce9fd78d94b9c35e329194dd8208af4973b4686b0532ca59431c6c84cc3a76ff765feca36524a4967676f7596f408bbb91cf0abfdaa826427e6466b768259e5768c40c69e34af54db2ac06593952e4967c50b995180364abf3c371c76b35bea9cd2bfa841104e030b73d9e885255c5ef0813bd899cb462e345961ed6523179626e04292bc6ce4d262696c0e66b00157a78d2d600c188ac4c072fd250d1c9281104218372bee3753007feb4518596e9aaaa8f40c3855350c15aa1101000000d315000028100a87440281509ae941e40714800a779a4a6448144ea3711c48711483300c83300883008618801001082985915210006a28b6269db080f22fbc0391e6229d63df59dcddba11244b23e8319e4899b732281e2ec76a0af1e02b4253a2736b8a829181b851a9e6278547fddc1ba170c11bedcfdaf8cbfa3cf150bb5cb8464875a071d2b8d66f1591701c61f3aef5b394372acaa922a46d81cb9224f4454c54f093342bca52b823d2393da1414abf0aaa172b487e7b5ccad562c6fb0151124e2f8abf3ec7430b757cd4236cc70ae10159458d2b7d16171e22d046adf75125f2839f0307aa3e566c283e2a259e620c6e6e0df1a1cd17281f868f9008920532aec120880bd1a03c6819cd791914ec94b3ef321b9dbb05b7648f1ff8d8f5c421b1dc0bda7a637cf117428ab7358628d9dac4d63d0ce36a2d4fd8c7dde9b32cd8cfec8335a9724f8d8dd59ef215b743b646c9420f06338c6311dc2d5ba10b02d8304b288cef61f513f2e64448aa6e624c22ccfa8cd05f3b1006d514baf454f19c8c5c0c46768e74e440a463078e4fca64de9c01918b52c708758bd9e7a7abcf4a30b573591f6fb2b2612bd4771082433cd0829e9cfafa8676918eebab85cd3b533cded486e0ad9e4dc00bdb1d3465db3ee079ffdaf974bdb7fe272c56501bdda937d6604b66963947ec43b024162ecc1808dc465364df669b1a35d8a6d9eb664efe1aeac07dccf111d66d589c1f7fd98e89d7a10434fdd81d68000b4bf990b5f9855dafa1842bda50f766a5b887b68159e32bc82f41d9387e4007e4960402d17e2d86977b02009b9b8fe2abccae47250d11fbd73a7289b456fabcda53fc120cd6deb0f83f2fdf7c2d591ba34ba69e2ec0e186650a544033eee63d40d1f85bc5dd59636bb5be01635f82988e037287cd8625fcc41c38003f52f35195855d5d2565f3492eac79170e2a211f33111614a2177d1c5dcd2d547be7bc75866b94aa5fea2d941f8ef8dde560b06af408b1098a51374d29500724750aba04e888b84dbe050549ad78500be01461607894f85ad9ac9639cf139da498d2c10d7380e3c5c3c59c62c4e902c51a47f7fdacfc7c11403b47d77d9e0a471ac846981039b48d8b759a52402e4e4e612bde793b75734583e73691c545d886769b788f73ad075dc939f4be4a6aefa310f6e34e5338b98145494f210ee0ee7460775dd433a143d22d6d9d99b0824498eb7d7268855c84711538925a816cf4fb70d927179623422a997fa4b039dacda177f42b92136a848149d0c1d4b017e9ef2231c23900eb6328b3ca5c5a4a39ff254382b673dcbc09f1199c85a2adb204b2b4a0513e715646dd5a699118e73e327c2c0a25b6a8e81bda18fd504bcc92da1b61b2b0ca7d5dac3f3bc411fa064b9a1e25ac294ebfab117680ba28bbf4f71ef9b4f83e5c3f9b6148e1478e12c390f40ef3fdd6077ffa409e87085e1916a766a40f5007cab60cc82b179b692869e12bc3d491e087c98ac0289670c0266174fdb97b380ff300ad6d4d70ee6120d266d700513729805576a28129a3a7e3b3c81135f54df2fee67f000cdfa03f5deb6330687df38f89fa4705e2bcc597a11e5b41a1971318d4b46270fe9598fac7df105334f0c322f3a64a2f963b9799fe6ca1487546f6c83980815a5901037a4565622201e4bd05c8aa963fd628af466df7ae128b55507f7e6a3d852831cc2f9501ae9d8ce0caa269a8197b2bbd9df3743968848a4e2cdf672e66a93ed141f10303c3179f94409d8a5b9295f153272e6713f67c8b61331266bedb917fead20821638d124a619ef96086263303e12853e28df14408eb0ab714ee23c2295e2c959d9c992ade727bb105b814ff53d41695da50479b173d9229b0ddebed7eff19431c3aa3a33a6916465a940b33b4a42b4a0c5e3dcc681890aeac78130236960987c5825298c2fb901c3481256447fd118e3e426c928d75194c4b572071bd159ea20a23e5a7a9dd052337f1192ce3fec9671cbc555954392b7eea433e2827e922464611881a2c5edc1024c0ebe36ec2170cc0c2be59834ce477f73a36815db7684ebbf483d094bd77d8bc81b690c580a5862a8cf0b24fd4b60b689808f3eaaed4ef2edd17cf139b0ce085712d260d9497046103b31df7cc4e44e6830cc1abb736f87ea6053beb7b3227fc23e5b973112d13f5ef4f76244f4f7d281f62234110bbcf1bc874699700ccd5b399fcede09d014cd348c5eaf97e1309174720531c1915298de74b4f0b8dd90e4b7e24214ce1a460fa93477dc36b7dcdadb95318f95f53a5a4daae84c0c3d9a9c902632aa56cf5f65c6545eb5a520fc29a0a3858b0991f891f1741cbba6aebed9c14136752c93e1a16dabf5b13425bd33ae3c1255b2b12e33b4541bd046f30110154ed74d6018be2666ae4b762085c391889e39ed06afb66ebb16451020da16ac90c9e4d0682988d80b7c5f94f1a05eac47f4f8fc593548efa2d373b9a4d1c6ec9e9e8ee2c639f3e195e2f5c2463f510ec44b36e31b1b0689375f4da9fe9217db3f11f7fd5ed3990180b5cd5479dcb2afb14493bd7656d306c69bf29e6569efcc2d09a1356fd5c26e3102f31a745e4338ba3f6c5db48471a32c4426498829714f2342bada7ac5f88e3eca6f627572955ba14b1dc335f052259f86c5d815178249bb947fb7177f20d208e894c6cd60a0733abc5f31bbcfbc1ff8870913784bb4db7ee99363a54338b1eb596dffe759abbe263bdd1817268191a20fd48330687a33e50e78ea071a30cc6664d5eec3b8592c7ca8b051d7915aa3fe5d170e2bede1bd8bc2f2fdd857feee180c476949e5bf8b236abb1893cff731734895fda45ed85c7608c9ec3e6362d4fbe070dcdd9418c61299c265432c4be3e969d01609b34ad7a60ed6e5321c31b972411a18a804a885389f7d2c4d961b958c28c7297d14937728a84bab83d97ac5173682b43eace4a1c82bf1abd10a947daa93ce54a0ea41e87dc710a56cf5773681364261f92594e1453f281c9943e52246ad6c6cb15477a80eeff45b0a4418644c5c1760acc197c199d8cb9c39794a0704979230bedfc32a33d830524f8493238254883dcc70b4bc6c117e0428d06456a13025cf878465bad63bfe69bdf137d04ba53116e0266050f614bcae5e2101712ed2db223f924cca7adce26e30bc133fd210c63dc9969f10ad912835f66edce5596817f381164c0e738b288031ef0dd0bba56d0f81fa1bd2806ccc73de057ea9065be35d93d6b4b66ad374387bfcfd906121802945790a1c1353d4a9b65136408eaf7e80d35687ac784ce19c9dcf190393eca64c3c2477c36136b025aba866b58f216bcdf87743410c642452680969e8a67a045b4fac20d73cd4cced2296b5ec0bf214f4c9e51934fc2bd5922d91b0f3103d159ac2d70ee43a611446a244ab747b423b2817b18d51e582b04a73654a2f96f220a2984f377d6a5f010c143093641e8c376a79a58305ae17ee7844a195a0a6eeba386dc3dcbb318a846ee0102b7b592240c246a18eb7cb6d63d175b4dab66bcb1a25d04b4bc07531e97dc10e2fbd1b136f4c735ee4ed28010c288ae8ebb38b561ee67ad89fd24cd23b34049cc80b438a886199b058571cc8197d2bce27a4a08cc312ae84a0d9bc7e9381904e10bd0bd2468563591319a9b19241c295a72345f7b24de42d3958ee8c2319e88bd109cdb6bb228592e75fbe176ff5f0a01d9b83475c750a79f6e0af42f5c55869a6171c82b4e14c606e21c594099f3a1460d038f24e3973bad61934248e0eb752f4b59ce5fd0f514a4a0bee825bce597088f42ad6529b087193ca80e7c3d99e2fd27c085563c4ee77429440ee999137bef080114c3817b39d1f374105c1855b0fa8b7a794b12f40dfdab610e2f61548276b963116c15d1b09158106948964074d06f119291f81f929c866c65a49b68910206b61d47cdebd7a6811afd4bd6d34573928ae59cbafff9aa309b1881aa3008076e7bb35b94685431c38b4d601382642d6bbfd592173c62dcafdebe0059dc0f934b2abade757ad99f3365c7a585d0bf0ede71b5e38758977f42cc8d2b8e79978fb39a372f90bd09201bc050ffef54669715bc6f7dce1a8cf3f08b56354b8e18cd8542425156b9aa78d0ffd38bf4936ab868955509dab27dc1e2f008f75f1b6fff9b523979930a8cfe4da4ac26b7d7a00286c137e28534239266dd0c1f0280db7878e889c2407168902b75b60c6ed64d84aca16ab38b8875b56e1a5b6f446016cf141154ddd4555785e26d6e2abbbd642252c384aa9b9fd0e8a6d73c13b30ebc94f17d04126def63da7629f403f020b3fae2a68b52202fe41e87028047bd07110a4e7024e20e61d52e613d33cbd5225063137404d047c3519595401e47c3686857416b16a200a9928f234d11872ef646c1e69e5ce4f165821986349a4642ab1ba540c64d4eb567c6add80a8203b48b58334011e25566c0147cc01576c4385ac8e14cf43247e5b9d131ab2fbf77f0d8c755186a62136542b860023fcae300fc91f0ad89211f82e8f4f73fa8e4f54676bea681ea4b59aebe95238a9a0c798d7ee2a52fc4a15da2efff2d37b4aca6ae4265a4a7cbe5e03fbf63cf8c940fd54b6ae45b223ee7e767631a8eb4793eb28707566ecf4750879646c32a93a6723ef14c4d3e02733ec0bc9c32245396df58b9b26fc8c601a4e655ffd0576b427b28c8af4b12be5cd07eed89ed262953bb3ef9b14b16a44ed8888c3098cc8cd6fa5c675e80998eca4ddd75e9b00602b5b039ddd31c4ab996208dccc8295103b6fffacf1cf2c0181011c6a92ea1bf54c4fe6a3b39605e3c71eee67cceb5f4c29dd4ef2ff77888a0244b5b780ec161fb8e9afbcb646490d1f1e91f920dd0d7c4a61f1a8915ed52ab91f3a50c06758a4153369833c0520dc4f410206182043329ed6d834b96c2d53443cb680e4c1539f41e657e88ea40fb63a3218f899e4169ccb50eed55966a2fa373b847a146aab51e52b5e37dc47c4a553ff14135e00b1e70ace87317a8905141a36821df726850fb59618ec7d89ff88363dea47d422a5fb55e00b4071c2381acd389efcbe082cfede2b19d239f67707ca3169501f2b70ab8b3f7131d1a23155403465289fd12f812e2aaaa93465983a7f0f678705a752c829bda18170281b63272c7b3e50dfb3c17a2e2309522cdba21b77404f48023b22ca79647db3d477409da69d1e909c9798f657b4fc2619c15639f5bd0d69273f8382097dba43e7c19037e274143f2a19641d5f44610292b35b8d458bec9cc78187e9abb1b71af6b1ef2cbbf3a951c37a037e022d439b7ce1ae45e917e1d152998545eb780927fc1842396f3f2771fd8c230fcc5583d9249f1ac2136120b1bad7c71d937b3dc47ee8a8e7fdcfdadd6876fe8f4189f399c9c524f3089ea18c5f6c08113bae835d589aad328c92607b347f93288ee873d37c8adaaafd994ef502cecd390fe2050a16dea37fd50127eded8f53f2e538b2302516beedb5528418677696c2351a78816a367a12cb955af5612aaeed59da7211c66472f0af5cd6e07db3a91e6bc45faa579a8307d08ab80c26e371501a8062315ebefb7cfa71c11b899adf36746ff0e0f08a8b05bb58b233ac6833b5c53bdfb665ad36f4e32fcdff80c56ccdcd4bc6a74302f70a34d8246b67f8c1db006f0d7f775d8909d8871611df437b9c25073e07e2b964aac27f6dfc1d7ae50b7d486fc54b1b324bb482620b18846c197bbbb313c8afe0679f24a236252d0af160e0632a259d131855a11dc825e543d3c6433cb0a2e083e78a2063915e341786aae89847ab5c6478c40997115f0c75bbc7c2f6dea77d4b66bf3c0f64b26ee588278fe94251473ba837821744197adc79e1458ebc31570bbd5bc963515159d46fd1c30cf4b508538c28275ee48c5a35b865816f9398b1b5db9b135fcb2085563c3c2d0a3e68506674a9e528129163f3bbd15ce9f0c9aa94159c71f1e952c3f727484ba7a682782332e1fc9a1be67c61fddbe0f0d6eae85d1eba148037e1e492ba417b05cdbc803f6d32f966051396629aa3e007a40115f4e2a0d0507c4483614d57f67f6a42609f8f4ab792b6adc68446070273c6258e5bdc332fe5c168ef86fcd5751cf82cfbf1d9e29876c7f3a01e2259f0db66ac4c08cc7650ba15580348ef67d0ad590704da4f87ae47bf5073af3d2d61686434c7726927d4baa007c899c8f28a08bacda3505fc0bb4d526bf31e4b87a6b1750b7a8aaed029f958283ce488f994c36f985e5e13cec1d11446a2a563cba483d04972d48f32c244f619f3195e4e5cffa9b26c40405264e906b10c6a109fed2bfd443dc43b21d5ee08cb7ef001327028872190c555e7ae171672cb15a5fad7099e603d07833d773878764a032ead5c3ac094d87a1cf521b70aee1adc6588e20a46729c9f1b3b5468546c92b3fc90ba2d12cd102cc752235f99da539621e90b2b66660c80b21af4e67990b683a5d5c97f683aa4fc6ba400dd6372cae25ac57ce3de5a18f1511e81ed42ec881f2b4065c63694600224198ddc96b3649653056976407421ec4d36922e1c9db6982ca8bbed8ea64be46004f2efc624f1cb7fa7cdd6580dd8ba875c41f36b33f39081b58837fa893390ed788f3f479c1d1b13df922f59a1e0395d1e788b3366fa29d106d0f528976cfdb2354b19c076d09bcbafde76d75967274ca45ab6a40c2b811d74faab9d8635135aaa87180f5c2740d6d02b8d9d7cf8282a40da78edc8bfd1914f6bb6bb4e1e4dfe4b51f56d9d5728c43d768e3fbf8ad22a49340e814f7e797b7cae25b2ece4579f72742d5c381ea7d6f3bf209c99d1760a45c4bf7985c9cd928561d87cfcb672f1d957e0cdac68529c0263dbe8413d7ccf3700ccbe34303deefc6d145d321532761469331ce2ed379c934cff94e34e9b19564f9f412e9b780d68d4dd9595adc1871cc1e6f75bbb122ddebf0c39a2d0d0ad5de1803efd151fcceff60fbfd8f7e4f8a0e8b54934f29ad124092d3a0d0b196c358f6b145d961d11b4cd9ecbc71969df1b2760835328b2485654c9bafea73b1fcc04c30ecfe19d04300cbecd4570665db74063bab7f2e22261b45d0593ab590b4d6093efcc7a356a6e4e5bc0de91343e09659713a69d01fd2d308a71f69213d838b7e6ac138d82a30a5ece74e72d14df98df25acf3b70829ba61508b06c525bdc009a5d3ecb1e6b366eaca87d325ae3b1382d9e1fabda9e445b49cb46984293994d76066d979d752afbe7f8ae12ec24127d7c87e2faf0853922c2fc47ca3aa520dc48b2588a493275307864763c0ec6e7af8ce2945eaa0b8497cd5fea9bba205a61c681d445f49ab2a79ac699e8168db38c49324e3e4062106bec00bf985218a1080e687ddffc91ef92d427579363c3980fb6ad75129f239d2f8cd610350b1aeb612dce5a31b1c52e2600645e46d619c5af01cbb69256c616d7c6387af990f72e119577995750a3e8e2c11fe62cf92fd63770b76a0e46ad225fa0176bb5a1a9a74d4f88f627eac9500feeea65f810593bf8e2ccd5e9471f58a5afbebb70083af5c55c6ee62465088233c6e272a9e67064cef5312fcdfab3f25eab18b3980ac44bc416e4caf9542bc17e1e13fac86debb1494153078a6d97befb332e284785f014cf6ce4ea48d22c9cfea198a820d7924e14604015a91bb35d3a852c93fb8793b9830a7f16cd48574cfc5e465703dcd927987b486dd63228c2b3fae56c866610e345e1aecbe26c65e7f9efcb307f0ba2f54bdb7759713150a5794e1dd15722ad6811c32a27d15849bbedcd7ee71bfc4419ffeeaf1099afa1a27126b49c88626603450b3985290149ab49c427414f98c1d3059d88b9b34beccc20170a90e3f7e7d830af3f4efe77146d681f24624c6c264e4fa4c3c46573117b4ccc903c63e5bd5a77120a12c8a0267647bebed2d2c92a543eb487464bd4ea753c4032a5926ad49b4965950cb24a5700818450083b4303ce77d5ab230548b11466fcab425fea95459a80d44499bd5b2d937f7828493b19503a152eec0848851385f5e225a5e0d7d19ad23f622245e580bb8724105d7eea4b9b0895b2f69a4bd91dcde9bc331af3699625efbdaed14c7bccbd4c6a83feb9924d4fc0469f5417e25d0c413614937e347f5023f37bb13487be4752b9a5e71e762fc6ebbd160f2836ebbdaa7a6b8c4780c4b39116f2195053c846541a4a3f84d741157c7e8b4ed1b331b03d2a522a62f19bc6174cc19616b7f06b55bfef9f8a988072726cee1adc6e21f5edd1e1e92efbf498e1e626115c29aad8d5eab399c8a5f2b84018e3e57956b1e7465feb46a2308b90447b73b10855b9de159898a652d8ccfbb520f34aaa4fe174ba9672e541313382f64a9e5ba75ed8f19a08019a13194292079ffcf71f4435b43611597f8cf4e887e9620a36ce509f88cbde91e59497be4e5031d12f4dd0d37cbb7b645738c54d66881a6b412c8c1ebb1dc9feb3d3a06a5a4fb5680bd9e8a1a40d0eddab7650ef955c243b201c571a3d049895a81955c96a2468f4fc1842734fc255523d8459085e5493918645885deb7ee10cbf40b788260fc320af6325d086f5faba78f3dcc280f688d1dc786df74b84a0e10a8d80650d6012f6fa12608137d7b9b8466b4be34a2cd112ed6b21e768d619a6141c08a25ee1f1415d6298e98c94ca1d4b32f0f8c575f1d04a54ed731c341675222e09148ce4c6f01cd36c640cfcc519491e472f3b29eb276ba0fd97d099166ff714c565871989801e877a90ebb59af4d22c97bfc57767933fd4bcdf06bcb37a44fb4a1ca58006f52194c83596e96c450362e934719fcac3f02a9d88c360fc0e718fc4d1d370e991a919b80b46074b51a4df8b742f9309973584c8302c5959ee508a424ed41921f3286f832d6df449e666e03071a1006329d2f8e2980fb64b4b49f0d4fda3367354aa149072ea838e95fc4f502d1e3ce033b89fe3ad58ba27454224f6f747b1994dd7c157bb1742fd9d5ee12393271bd39fb957304e379ef7c6b93568f6220757629aa9c75d3b696410b8aa9226bf5a3caad9651df74c363fac9f56800325fa37659a18bd02916f7f60538ee552dd4b6ce3935bac922fb8e46820128ac2269a28fe1e47b6343fd9e40e5549553659736a803543d5b685a1229e9f73320182ef4f32f39b2056f4d3bf299ae6b7d51a512ba9e74710e2f39354f1c3b100b22705cf84b13f51196d7d40cc7d7697df896272cc7ffd851751be7807a1a03ef3a27c8eba4ff9209d805de6a2847cdb153b76550c39d78568e1eab23cfbe77a1c6fbaa8317bf24a073eba9a3d3405ca9dd5acf70821f7440b784bcd30395a81478445c8d7837eb4cdf5f5443e6b288d5c8c6eadc4abf057101298a9ed76935069c4fdfd701cd8d400c8be889b9f051e1e0bf2a9df23d3974106feded360350db67ac18b9f4340b355936e8f4eb2f164fa3516609b1da8a606d8b3bbe4faf380171d93ae484c072728f0bc11d084c9863f84918d565131ec85643163cc30496338c84e9ddc01bfed03b9cc6a27f6ba6fef7749e2e9b65dd86bf5412801428c501fd6856d14482627e8504e048903e3c3a9c80d0716f7568b2723564fbcab589b8ceadb0511688fd6e0e790b0ac769f410ad67c43739867c12e7a65965bc91d525fc19a8206122fb2674267a66d7995985e0878f924f82ce1700fb1866a312180d460e1c4ed15e096b24f1176710cee7c9574b43c19ddab1c08dc9f6f77a1e70f4520178b59b6a884f61dd3c6786db845df83334efaccc8fb6676585072d95da84595c17cc347363c006ab335dc89cb27b33498be8dfec4fbacb8d61a27d0fc174bc6c8018fd0e58577a86ed94a5cd291af50c092999e9e2802d1a208340c96aa6a8e5feea2cb9b0d27c5344735372ada25de5876c78e7095a932c611507dd8febf35f28f9be81e38cb79e630052c4112c23499211c6314baaf4a80c1e5c697c670f8f0572b7ff1fcaa7be4f0ec71bff2d2c051b6dda8a3adaad907edb752abcb887c6c27cddafb81a8b7ec19b94fe611cd163bc2deb9a1b5a5720ab433070724e68651575bfdd29926f4fec8a14d09894e8d8b19a3991efc3248d8012e9a81f0511aaa9f5e6e1ce54be21c49e7f455a4f619f021a5be345570d5311960337a403231353987b69a6fcc0f971504a09ec223ae4262027fcfa9fd5f4fc2944ec1f5b7cdfc7e153e1350dde36c468971fab3cbf1ac670fba0cd3cfebd258a84f986a52a702829ab860617b2bcd4077572fc015c17e015c149bdb71a6f799fe94af9f90c3be74e7a91002a20151ca46f798c3f2f4d3f24107779325dc8ea1ddbf89bc18d60846c0ca48422259737c36b89250fc24545d030c8cc1fa495beb482568f77013017ddfae32b43ed59d91a2e46e7b314443ff2f551040e3e94ac59c7f4c14fb84794f9a5f3904958617e0a49f9ec88e04d158000a3c4b4cba60998683719f3e7bc37ecd6105dc0d0221bc0e5bfa00a009d109267f9aa441373a58b38d891cd3fad9ab004019aba0bcde69aec7829a6f1d23c8ab16113c275c241124cf304616fa0d9585d395e577862a8e1a5980f7759d3e642342ae21796079e7cfa70926a266e0979fbe0f4388caefae9681c3a0fa4b1c1ab2bf88f5d9e68b159e0bd4060ce707b2941824eab3a211e645d4fe8a38f22238dd56a7a94789f8120a2f42f970d9084e75a701d22d6640cef59c3da1871044a3e8af45b020b1bbcdc4b2004b0012604b5e43838ceb2156a17271d76186e6d11ecd600bff1e4b6f5068173a5946b6d804216698d82bcca8fcaffbebf310b951096fcf3c8b86273390960e9b464862e75e1d649f8e65690f14c53dd212e37840f4b208b9c750bbe41bea4539fdb96092d4415e57554dacc61f19049ae0c6903029997f54d5614ffcac5ec310d8c534c7c4da44866dff64e5034f75615dd395da49105a0a5fdb954558a8012f7749a02f77fb76a135371bd647f0908dd81254184ab3c2254cb50644d510c14238e1626dd6a6922aa4e63d722439b658f821738a15f99965535ce3c75fe3ce1c47ca897b77ae5d21121bc908ee5496477e255be158543845206ded158134ce75a20a01bf9ef99bf699ca840a719c02fcf71209b614650cd931d80a7c0edf8408a305513745b4420f35d7448094fc27d1626e7d1635fb5f797e73b9a3bdff8ab8d5ac6bd8e42380e9217644fc2afa048c920b12f40207245b744028f945505094e6b8f2edf3862182d89cbcc58ffff10451b3befb7f3e607dd14a3d2b3a64f70b4ea34ccf5a1054d4c5486e130e6f4163027379d94169db5598388e10bd6e0b069e93c06df1cdc106b3b660415707507a1b2b3bc4c2a5cd959968233648991f01bf878fc73caa84f504ea099ea622bbced930e2881c7487940c71e655962ec99c28b9749d587cfc6e8493386e52f41e8eed397b8ee239335067b5ef9fb6b47bbf7b07427c194f4be1b8321660c45952100d2693a48c78b11841224958be09600a58d6d91f86c69057ef7db0799515ae2668807437ccebf95e044f75202d060aab80d0de554882bc2dbaf352eb4fd7f09569e3d2438f72c06ec639f38beccc58c36e8ceb68cdc36eaeccaf931d4fc2b389b49338022cfbacc864b01de3654f878a01e756908ebff356e86c5e1954698d2f04085f61548325331d44ae4e48165690fd3a7ccd990efc50454b4272f4bb98e5ee7450a800ca82a54c75b79745a0ca08d3e7e29b1f21e9b4118288ee81a2d5c56f4c9f5ed2b4fc8caba20483b3046fefc5e30846eeee407a68183116fabba060086a4523b819fcd3c8bb56448902dee3db46717ecccb06e25ff1eaed2bdd1845fee183a1bfd2bca8c5c6943c349c4f93c02ceb8bfdef08fa23ea72c53354b97e277cc98e2768b784595bea35d7e09df5261a62a753ba8db83cf2dc4307bd9ba75d5a288c37e01f0bfc4acf55660a7c7c114cbf1221d41598083c09e47a52d84067db32026b1862253feb74bb2b2cece41c0437263681b97054e6c11e3877d89016536b7d33db532e23a1b114c278b6cdf60bc8feacc27fd1c1e5cbd12a0aaad48c8ac82727d538035299eee686c02cbf7f580ec40425ddbd94d27ad781258402437753c750f0f1cf4f4f7034199f7d25da41f49006bf71f4a25f6b9c03fc19ae7379f798b105ef04f4ad80dee72b5a570ee1098a320c3390a809180043e4dace40aef3d79498e9b7c695f1dcb5b183729cc9ab1c82696030ba5bf00a96170eeb6e5d6f6c79d47193099c4f02ac08d54c6bf95704f847defdcbbfda1ac80e46f1d0c0810da387557f6cc4a7cb1d88877e41f522641ad2b9c617fd760ed72238457e67203c45de3402fc4eee935d0843ebbbb00ec6d5100034ee5eba14c0ffb01753c708548f135b33e0b64f701bf5d556018479d3b151bd2990c389e0d56d94ca5f98c2d96ccfb5155692e1a818f240fbefdc122297fce7cef8f089ddf85ca046280c08e57416fbf6ef405dc3808ee8b17712813a4c8587b20725ce577daf0b6c3a1e533d9d6504e0af4b463ff65f70a2a2f2dca99a1331bfd5fbe96b82890955a8d5f5b405a998d0e84ef1d27529371530fc23dc78d02d86e844449f9688df52b43c6f3d69bd369caf416ee0f47a87824e54c2ddc212013dc7b792f971e78bbc161665666651724e7cf650f9fb1f5da00fa7fa8c53fe963a6a1fcb8d165e9936b065a407b5cba487c40499e69f5a9b3d438c0f1604b6c824c59a0b5cd55ed1182e6c5d27331695462b1178fc14ddee30390aa00bd6b00c31dd6c0c3bf0c48983d0bd0fd51bc385b21e7b0f4bbd56cab42f9015b7641186237648d85e65cea04f404773fa1d7b8a9c703ddc9a4fd488a039cdd7fc13ba5f93d45fb2548a09a53200c7db003a5d5dfb0b455a5db9f8badccc6e5d05c41e6550fddf6ba5a0f7cf68abed4a383a89d7c50988a69250f5fe5a52e737e5c4c77964848214ad4ef5d94719c03239a220b27e42149f297f8f478e1511e9c168a315c4cc297402e25a39b933969d63ffa174ac0101d3a87f3906ee5d67dafd1bba6949c0058d2020479656ef8e00b66f165e2fc3fe100a04f62d0f5373c12d1212a0e4c7b2834bfe6ce3c7d38290ba5a5606b2a64aa2bcf69b18b45942923650a3947d9da15254924e2cf0e7bb4c3d40550f84ebf2c549896fd4b4cbad26a91d1d385e0a996a3fbffdc2462bcf41fa19b43f2168cde97104a715b6ba27415b6265bf4fbd6619a4fe3fc3f719c3c058015f290c5d019cb88628af01cab9f55b69473ed4750a944e5508ca7f0b0a06ba02a768064db9d8efe8d37e25414bb5d4d109a73352dc20f70d7f87279e5d54b26250157ff327733915382cb053e076d841d78907020e426f5dd43f302a0a96ea5525785dc0e3d811471e4b5a6178eeaa246d93543a648a1e859c320e374aa10265cc168ae97a2551844fa2a8d749ed5cbbd0001cea38c0b427e1ede2647b3b71106e956338b21955dbcd5751422ae905f9f80fa04279e1399f5977d6a65f81ae9cb5f8f3ab6fc3e5528546c68cf078f891e7f1141b495d34cdfd7d4f16d1530f95e7602a8086c67ff777e6f0c1dc6426f98539e30538db6c3405e28218b521eadc061baca37dc0371273a7bf7d57813d13f184d46745922512a2ff2916478f2e8e7874237c124f00bac4534b9fbba2be5a4cb81732074d0896ede2413c4f8d2570de22a28c20c610fe7cb5cfb3077c2f80e6a1cf84682a7bfe39e6c0a963c20403f73e1ba69c432de6ec0e506afb085d018b1fb28353ee088d7caf607684c4bfeb8cc6c2c85bf7645609c00398c0afe5915c366ead6c7d918f3b1016eb73b7c4e0342fd8f8284ce31118a4f0814d7019c27b945bd440f38e7204d04ab5636b62febd221f3b38f53973a3501de7ef3d931a6a108e8154a3fb87b6c64164154ca257d491068e2cf15ef5324482a5b7d1067c168a1d4c99f7e76cfbc99bd9c69c54b274c1a1147605582ad64902cf3c63e2f1a615329cf39a704e6cc37083c56b3d3c09b14e8107d889c2b9b6ad0075e875454f2007b5741863f50239abfbe1910568091f68369dc845e5881ed9e0dc34b865ae90deca84d715ba52f39332c998f876759983756d5c0e0fbf02a3db37032387558ae3e0225c1cf1e54b6da8ffc959698519deed08b671cb3b1357968f6d0c9fdfdc6e29cd9cc405942999050a5beca8ef604f2907880693e32e20338f42cc2f30c58a87647df35867f6cd984c04a37a129e25db412f0d0b68fa0a58781bdd7e28c84175d7216e3c3fc41786b054bf4cf95059385425b6e10995f750d7ebf17b142e0646beffa67d3ba21bf9b20b4268b8aff2dbb8d17658d1acd095e9fca95c47d9a5d2a1baff5293e5c3e14ed363ac2f265a553f2ebd814669046601f4519cec9410bce4b0d7e643129d8bb8c516d0a0e3aa466e869a07c82f91c13fe90bb081495f1e4994c9fefaf969054f1595d29730e67178fb30d7dde9a5c845a255ef9faf16a96285f852907803fa813832f8db53769fa7353d76c58c77e5411c510204912e6b2377316922d035c6683ac5beba5f229c9c07369333afb331956d4c957a940316e3b24e76d361d956a123ed344b44ec9e9a3d8652728449bf2bde860832acadefdbb476a1e76f0c05b6f09690d189abfc54a5f4d22226a05bf6c890650dda133bf7486e426a6a80bc09b3558b902cd6cb9b0a16f849c1e6d4796960b55fb475c3d45cc0a7cc6ec12d45c3be3deaef74c89ea35dfd0ebc366e9ab0442808b622a45be25a7a2e5d9474888ebdea63573e251b6aeb8c294c6ea947bb499ceba32de14b413da4a78aab319605d16843d124c579652b4742edd70c4d7c3e4fcf509421f1d2f255c334c1f9be133eef712486eb7574e8471cc0188456143188707c512364ecbf0b71c536e56c5d1562101043c8f996c6c5d083a55dc8823e71afbd824b2728716b852e37d39ba9047a7b1cfcbb55bff8a20893e1dddd1ada53d6e92fe960f418371300920bad9e9a134bb7605a65d58ed9f94cdb7e11a418c23c0e04bcd229280be201413941240497b8b683b0242221420a8a923fab14721081726815be19c01cd25e35e93f7a5358881d809dc5e1569c0ba8523605c668f1074a2987633b25e18d6a6a82724d9240b6e0aa7f4c2138ca8a4a5957240bbc170183d2a95cbc50bf9201a20854ba49141dddfb9cdf261afd0920d877d503c3b34600ab1ff8187ab09456d68382cb8619ba6b1767250505264d11ea38b8e352ccaf070dcec355dae5ddda18e9ca62e4c399d0747d76c0a27313fabaaf09522dacba7fb43e0b8072470de9b87c1a0e82ec20c4d4410d03c6b5de24ebf9198f2d9e6432c9d3bb19ab45666d13bdd007537b595b52f34e2aa3d9c6903902fb54ab552c5e53b10db96d8db62143db50e863d2e1e40b414d85d6114ea9bed4f9b96171133c40c82ec91762682a786f401fbe977153070e34f58976618ffb05013899232644177ea112e805dfb014a0c0b9dbf4a49865ca638150ea44e03deb3084ad53a7f69b8589838f95e5097cc63567036cfea3956154b9f79a5171acb3540906f2ee1d436548c4f2b040a2e3eeb245a59b76cc51357f9812166a9eea06c51245c6f2d6dfde47631869c0e238c9cfdf8dd0a1e291f549e161f9aa6947048f7e14d07970166f40a2751a6794c6862da10c419ee51eb8114fa8f62567490ce20d332e397cb24869c73173079c84b61c7104d1feac86df32e4a369a6dab24d69e39db49ed090e8818e034b152f164c680554e508382bcc85e75fb6e4d9bb1a3ad9bf46d3ae4f0dcfeb364c401df458fd1af724135ba50e332d21d8e057a9e3da38279a7c379f819d09dce321f645ca30fb54825b1fff36953a5d667e3dd7de12ff33f54eefaf03659fceb74ee45cfb43eaddc17e4638b683e5b8c05586a67e2861ebde78a13ec836cd860c2273fdcbd689de4fffc9e494cfc03b64d2d1d661a191a5a9006867835f06de4103ee2a8b0b4ac889d5f9549cfe3059bb071e157c4993e4ac000f50973364d0ebdfd13e62417595c7b80aac98c12e03d9ab545b35ef3ebb0a9b6528c47c1a6362bf37fe67b910c5650141145c6e4f656cd7dc49eaca249f8d84bc82a3251b011ff89bf8a50b0b088ca04cfbed283326832b47394fcb11a92b143cb85936df30931fe83cdb2eed87b46de9eb570ee33cf9d2f1e7b92f638308411bd20ca54b87287792c2a80af67f28fb58021acc843196d8b2502133c365c1217b989d258d1b5c7246edbef127d6410926f768e0283ec4c76ad0869ad28a7481168f852a13980fb6d92829d54623a080ac77e9300e7d02f09b93199468952e47899fca579a8c271d4cfd7fcd55326fd17f255814e880e79e4866c698a35c875ffd223e155d416f7f625c11a2a56d0f267dcc28258daca3d68762f36457eda877e4ef0dbadd63c24560f2f64ac13053a9dc906f0700129774e2cf5c1088281c73c92664d1cf073f8b92fdf949b1fcb136f516a5a764a6ed14b42858539bff755be437c9eb72d39c9bc0220dc8559efc5b40bb920a60ba01e7da6e2d0c42fef7dae3c90db1e59a2b3d9f5087aeccd6902b832dbf56e9c142be0301049033071c0b0addd6473489a2d7c5cfc6ce9193eec135a13aea4b99643e828a42b7ef1e9ab9e5c927081d112cc05b10902001bf9dd03b4e0634523b896a0dba3c52c11c623028d83583e826cd2f61a5706a535289be7caeb8fa192fea376f0c82eeb8aea5dcf05b9546a6936db22172acde7c080109f74b538ea677a2298c62deace8ca6014af711860967688f7e8c19b01bc6f0695df41ccb2e31c29a2c06963329893443577160432048b30af4eb49b94f60e2c2d7382fdb7339176235f07a01eff58be8115b06d3d61c677d92223f5bdee4809dc7214808b7d8874ec16544167e108c175e8fdfea0006cdbf1d697288b84348806ca37ee1082d19301f47565ed93153c6177f53ccf8457923459ffd39a019c704513cc6b0a2efe63fbac68ea13f0994b101dfd027e922b449505161247ad631d61b41f355fb290731ca83e1f7b698c899b5289323aa95fe476fde335a68cd9d64f2b2f93a39581c7ead47c299280c6edd730424f2d65e320d431efc8c26184104a8b0975fe8db94a7cdc800a6e1bfba3f645ce743eeb758d0ffd1aa1313b36403c46d0855f0fc5bf3a7d7eb0e95ed310923f6b0837f337db79b840135b4675f2fe616e49d54069d72c0b245c3d890d656781719abc433a6845d09f66a0242797767c2c6162ff8925c7e234c0cc1a0331d0c47134313e23ad0180fc826b18027006d087a914bfba037f4cfe35d0cd3bd0d2147f2deb503c0c55a9c111d12c4045086ff949f3813acba5a58bf34c22628cdd14fad2dd922986d66355c6d2736f820cf97445de83f6aa319fa48066ba698824d609a14482c78e47a0725e9458a6dc7b6cc986f88a240fcfbfd1ccc35c57c058c8fc05a05d27cda2c515bfa442195029a229c8e02c86350aaa0b50f620c6f99a09aaac0fc21ccb76a7c5ae732f985e21df75d59829dd856ada47e5ff2f475f26f5c4a313ca0dbca8dc99d8b219a526804ba6ed7aecf109fb5243973095de0ae8c1cbaafe691566986d8676031e954ccc6d59e9b4b257ea289cbe8601b045988598dde5242bcd75acd4ecb772f1ffedb415a580e03d89477feca1ddece23ff3138aee0e4d0c6a686b1e3609e2f6d4ed31f48d968e6046ca773ffced7d236385b8ce7c3b988058fd989c6e5e6301c6002ba7b84abbefd0421b2a67532beb5da1d9cf717938a05daa5743ba2f5d7adf7ada1b0487fb70f2c0f8722b6312d82e3e7774b008ff52ed913635142a1ac0016ad138471116edc88f9e247bc2f8866803e7ff53b27c18d276ef8802c297dd03ce6404280c40edfdd65f565052e7d1f109ef8e18cd867210dbaeb807c3ccc55fca08a1353b46eb32d5ca20df538c74ff83a7842810d856181dc560e2641475fe56179ac885268ca85a6f5468b6dffdb56288d40ccd4c11bebfac0136d539a00100f6a4bb39d9a43e0adce740cd95916a382d189d9e35e91950752d249a689283b031b0bfc85cbcb1148d49298cc180d137967758eabc8aa39f1b8408eab1828d2dfb36052f86e610b997f580649ab0651304332a08519a3e56df8c0997f7df297bec9a5bfed2bb771f1b359650de5c47997b10077e33eb9e317694883ffc8307c6af82738e6f225b0fbe157f7f672c961aa7ddc3ce0da1f7b1803e5cf0ac478b138ff5878bd193654073f884a463d07f796f61f4886938573cf016e68ed918a54af26b4678121930020889ce54d533c989c958f16e5ff3c7c4da85abc2cd5e58e75c7089c395c3975798940795eed6f63fe831681711e08354ccccf347d7aaaddb97e00b7346017a19414442c0d8e5b59eddbb5b4b93dc18aaa2607b6ae5b9359fa37cae4152c1483919cb194993c31894abb2d1f9353f442715c4a4b78da32f0522f0b19c57c03bd18db116e73d03bd64a9263ae28cb30e8839b771290575fab85bbebc29f7daaf415448936ce0d0def2281c3a823dbff4181aa84cdf15fb60ba0b8b783c97ea9e66c580a02ff5635426796b70c8b810c8a891cc1e1e0c954937f41c22bd3fb33dadb66c7377a0c0a8e90346a23d81fb4d1545073498bf62242c80c1ccc369e30da116248d667298960e116b27814feab43eddcd05a5617803a4082e9318918fba1c451e61d8ac75df7997352a84738ed782cb5ad9e9caf4366e50ae406300bf8319af177709c9824017b349b1a97082e03215b3352827bc0386fd7d59e903afdafd48610945934b0b184ec98ca242c508e8c521688c4faef1d59f83c4e4fefaad319c29a9f8c2690c5285cd65a0c00106711a3147af304da9fc6a76af6b808cfec023173c85e4bf723d254c08532a4c837ba2ab5f913b045d0cc306e57ab4519e8d2a4f87688db65b74a3ccf635033dc947b97ecfc65e0ebd9e085c68fd061f9f1b89a895ba58bf159e7735c817d5318fe8792163e0ab01aed070e331d605d848d83ffd3fe72789f359cc5e12d87311ac33b3a22d4c960c0717ce68993e29cc02eaeedc11d0732b8de3df6aef616ff4de17e5cb102a786d61860f9ac9587f016caedcb6f39d9cffe8afb7981afe2d9c9c76f1a78009c91d17e9065b6d1be62b1eb38a375fd916a1c70b88be9c8713c7c5a34f1606a063a39530162ba0d41f731b7be418e39fb607b2e6d4df1214b3d7eb5cfdcc2851a33309714732ffd3cef1edbe886f0d23fca762d53802969264d9b9bc2feabfe30b03a5f4f5c1c4e137aec9c87246320b373adb7535fa0782ae49bcb94e632db75aae7a2787efda52803b41a615193fb80c243e1dc757657129e9bcfa1926a160d608aed3e93aaf7faafefc5a44ff10b134360ccab4b861d063b770a2f2d6aa71e81d26d8565fa8978b430f8985579f7a990fdfc27031a692b5db632ffe030b31b389b22fa523e4ebf011355d77674bac1c719f060b7aa637ba096c220127e2c3b456bfdc87163be768aef39a03357ba78c47885a86915cac946422ec13e76a5f20ec9678083211688086257a8198273266e942ca78abdc081e8e1006c97fbf2f129f757f4a526bdf906b007df9555994088841f662958f5c6516a036afa133d6ca81eba9eabc3dc6896cdd36a089d1e230ba9bf3a7a2fd6e63514d0e7d6b489d7651fa0cca6f6d2994a127a0015502fb194750bfbe206201b802b888369cf334a389877037f9575cd1dd48419190056f671a0566af891be242a313707df0468a8e06ee13c6ca19ca9a5567b412633784a88d8719406295f601fa3ffc592b6dba2e3b1e6b6ce6bf48428a5f95b5329a9ad83935d6c1fbc497703c629c0bc9413ff2e2e0b75e4715054d5c912e3780cd1c8bc659d44e9a7ec3b7ea22d9fa5f4a800fbac3937bc153cd3e78ab6e8332fe898122399e177f06b17d13f814870802cd5ae30390a9217134620605c3ebbddf4a4d20ae960b16e8043f82cf997780c7c4590158b432afc8e871612816e831d275e4c5076e648871404e3a79ef5eb376c0a27706257bb0ae91a6e5dd82dfc13e9874cc335ab1b80b46e5135761f813b65edca8ba43d382cf1fbf01b958b468e63d465f01e7287d2941f386a8046fb3d402152d8c6b0d88a5099f45b23898220b9dc260582eea0428b611199829bde6f864c1a86fb60878ee40757c73fe5c379cc7fa2e15995871f4ce9df91bb659fa7799a0ba9109cfa9cbcce1104e30a07e631acd7eb2040f1caa076efe3f8dac196d8d9bdacde3e517d29e2461bd56acdc3d169481517adc5e7eb11685633385e0a887782fa371754482a1a28b14d0ecf3674e0b438516d2ad9933ee38a51fddca8299971619f133b8abdd19d18e4ac2b0e4a241901f3969063501fdc3979d37452197201356f91d687ad3493378ce19a5b9885fdb007760de5f1cad685e3b842c5686b8789d404f52f79192c65a60f06687d1408c517b40807e4cd1ab64f0a32ddb1fdc8aa9e277c66367130a45ef3794f98d632b76800017b5ee1a7338510f90f2d03206cd8771b61dbc67518325caba61218296459ce3a129c33a872b0c8abd59de658aedeaaab115c18dd6d99d8c955233a8f8ed01761838d4bc50902e9673485ad28ce0d819f055a7efdee9d8dc0d841ab189b19820b956b98fc035c69b4a84d3bd85c6c6019b8e29618d25f8552d057a1263b61142036e90458235bf40eff0a7eedbc739832a814de4640e6e213101dfe0385103ca86be23535dfbf452daa9473dd0ebf06271c4975899e2f55bddd811bca124aac5fe06ddef723422fde3f9b027f6315c25531f003c1ffdfa6f8286cd310eb8819311f1b7c02bafe986fbc9fb4f774bbad2a744c5218bae8095868e894605a62b2fa9e856b9241a91d0ca5048089c0d2985a968ce37064346014b87bb42154f3708aaf7a2c033a63012ebf4d6fee1364bc9b3e5a72005478042ce0f20e5be368aa88e9c80757ea964eec52a7ec5dbbcfca2dbfe8510bcd5bb0b995a22bb24e3df5bdd73d1313f7e7a0134c68476a655514ff6b4d6ed02e56f4b22e6cd9aa191cc3ee308bb3657e1b9de50a8af618df8a63a5200faddb7297951201acc82ae5f7e8294f04d133dd85f29a8d896e298346ba0bb725026c0b656519424d3708d8c0e50f361dcef4a97bfb82b1e36128986900a425a6632f77f9e74850318510b1d5e91bf3232b4a0d3a97c979ba72f50b2b3c0ef938f2e91b9e6ab5fbb8214b9a81500e77b921e09acda5f18c274081b0ba5f561cfc8058e533d641e7abce18ae939f44038cb8d96b807ceb61dac68c015bd7281c5d8e19fa7b518a37cfe5a91c3a6a740ee691ca0aca3c52279d18dbc1996b3d04b6107bcc180d58250295d19b411b7cd543690eb2308abc76aed4eaa0262370902db230b48fd3eac81bc6cdd70e32728a7a0341053403c69ff7b1b3056b851eac10978d1982274a2d92cb68c35b8fde36130cc56f035b19c03735ab6c1ec18eeb0b00835d956dcaabe9f4a2900f2623ad0da81eaa780d8f463ded3f6b03e7402b0f53897737ade47088c23431915adeecf62976399623444c5d293a5b5e8539b5844de74f2d2b20f7e4d3eaafa9b18eb1c56cb0e677846a3311c5c3b4ddbd8d6cdbf1d0d3f11aea2a59288ac1fa52408d80f7c9825b96316b510909b96a71a1a338bd8f06f09e055a8f8faac8246fbaef7db039642ed38946d70f734ba9c5a3b7ca0dc323497ba54b4db815bdcdc81aec4332ca03774b8b481dc62149c338089aad5d7335ea78416ed8a92e832c0ef13baafedda988439e2d2ca376b6778c2c90f3e4be38ea6f4f7a44864ea66c0b927aea0b7a3ac276cbf41ed9c8edd41dd633b5627edfb19a448a619782c5d87233773169c699bc650e324576dcf3088380adfb21997f56650546665fa5149aa85fcf28cd38b5999dc097aabc7753117976d5f2c06da02a1fef6720354f6b91ef16db103dd28a6a9299f67a4846b597f83145b0b75f9403d3629466e92f70156f0ca2f91e1e597db59df53833130b169dc356c9750629906f03683be4256742658324f6ee3a981c6891ead4a6032f3d6a3c8f1bc1ea1583817860be834896e9ab84c40a0193073ae669f65c11e1ee0b5d6cc09d2d7b4f2d2547b96fb8f464d900e9d9db0a51d0d3d6d0509b40c23d40d2f4a09891b28914a9749a861bc8daaf0b9812889df12f368162666138630ebdefb06a51bd2f17f65c5cc0894796625fa06a964574e05c92243990a312c5f64e4d60fdfe0ff165dcffa574487843b6fb0947307837deb4c158082b48bc813ba8389c19ea96d7d08997496c050c5548fda4047d3581b925b14ab52fb0542788d62c3ce295e8612a7f05e301f1d009c180eef04988f5889a502022c14fed3f3fb2350d2c93f6892e8310b549771a0240b4b3e6edb10a01503d0a3984243f407eb6d6e05ee99b1a0157a9245a3ef36a5ed55aa8b53b5165ca4f6445dbf0d667d692b8cdbf3206395500413ecb26f848a025d135443c3354421e2a80a83a3748418a055d8e5ed4f0608e87d183529e9e866e68809f4404f430f766d0432cbdb27ddbcd49599ca89252f643ca10754b3b4dfd585d81c745ae90124d9032a42aba756205816a703faa17913296e4e157f52c0ec388eb882686b4a7056ec9829c2eccf193b3ab80862545c71d00c998dbf8ea0caaecc382c0173dbfe8ce26c13395860f7d6d096e0897ff41f207b696defbdb7dc5bca94a40c150aa30aa60a3fb2b4f2d6638cbcfd6833cbdb73b8474ce6a060c240c564cef6ed85393399b3d1a0ba0b99fb2293262679e66f5e48654e7f879de3f2364a59de6c18ce64cef649b8232a96b72db653c4354d0d3a18a9286b2f693e307bfe6d789465a7b6dff0a54e7b5249b791ed93f6a4d347fad9d9b09df8e6e062fb6baf7d119df21c244f8eacfd017a70517b3974c79daceddca06ddbdf4e798fbcbd8e8bfedbefb858247976e40df65b3e409f346d25c81bad30873e69a38c918a9ae04993dd94b8f3dd072c869e5a8e7b8ac7eacab4b672900e79ea5f22cfd183cf7df7d2c553eb902918e4a96bd0a997800128cf6f81788623fdea85f547e6703f411c28e74fabeba711cf3a4c1e84d183ec5fa97b8f6caf29136fbe373f39a79473ce39ebd7274a6776a19452f9e30d6f5c2adcf148e67eabd37bc485568d6bb7f196663825d36d88bba4f469a74f37bce64ea63504d227fa3b3b3df4e97b9309f461a4dcfae30e16dd77e1ce0e8ceadab0c1203717a11948bb6e7f0d8b782a1a18111cb419cbfe771b6dcf1e11f15c3b40938dd0642f68522cb7edaaae122b2eda05f55fd5556225b5ef1d444db59b1d0c42f39239de2cae924ce6384c1592f092ef5d900c474232275795cc914ff3a2f142a6482d9216f2e43fd280917710499eed677c853ea9d54e90b45842c37027b81d6b64ff91c445f6192f54332f99e3e38a2bfb16ee209239ce02f3caeecabe85b0ec2b56d0943daa33d7d0ca1cb75368605c6c95e54f589636cb57f67e4aa7910fcc0c3999c699fc33b5ce4a9294becf59eb9c73b60f71d78ca94f33b24775521878738824e637e494e7bc2ee7779ee1b88059852cb2c8228b2a06f77d5a0a6e16358c7bb3f8b426ae06a43571c74f03ba5a131a506744ee77afd6d902857adfcda7520cd9a76b3fb3d79a93e56b2fb8e3977b7c2dda17b2fceabae3976da750d4bb4ea979d8ea1cdc0ed241dc838228e813a4563088a6ad561a1864cbfe1e49cbc11da9cb259365e92b5f35ac6145453348cbc19d0fea60ad9cedb46a9b1d916818ba648e46054f9a461fae6c2f963d9dc51d6b16329d6f8bcbbd275dcea6236fb2ccb4b3c8a674d207d21e9db38b32e494cd98512a1e3ba16cbf3323dbafbb287db2af6953ab2399ce341c1790bb589fac5f2c37db9cf6359699bff2da5f2c33432ceadfcff19e96039b864c3247d9f7ecd758f65c2c7bbceae4d2af5adc7adffe4d908b2b6fffa6e5627dfb372e17b5a7d9fecd1292e7532279b8afd834d435d8cf21cbd644f443f7d4d02454c51d6f7e469350b663cd8ba5a85970c79b9f9a172884f62b2f4121eadff0e6c751f66645c51d598a2c95dbb2229a0f0a77a469d1b4685c92e77bfb345c481eeeedd3bc5cec605d2c5b9ad68d65a1eedefecda43047d99b1fb0c9bd61b958f372947dcff66f562ef6976e5cf7a6952d0dc75295c1adad3bc204651a2a68ae20bd93d29027d2149213601a98e461ff90b4026532c78e9d6c2573ec7b49a0e18c6c9f8621195a2b14efc87dfd479a21ff91a508acad5b552c6bc89449888548f2786f5fca94c908928d6c9f668849b6cfc2923cf4598a72ac91ede720923ca43709b51726237460706b582f46dd0be545b63fd20ce5d312d9fec85274fa91394d7afb1aebcbc16cff06e806a8e6f5352f7cf3d327fb13dfacfa647f53723d8f373f35861dd9b671fb6f7ee68f4632deacb2fd099288b6f185200bd6d69d344132c7d234b2fd710711b2fd1d429287f4960679742eb2fd71868a6c7f2648f2f8834168320d89b2fdee7b21dbe760183b59b6dfc1acbdd73bd80e21c943df3e4d90a55c8c3041d9be8338ecc83444bd648e7d98255795e98f35af203b32299465fbee2e9d6ced8358ca9c1195ed7bdc074e715f60b9d86f5590c79a57b65f64e6f1e627dbbff9913c9d6d4d0fbc97e01712c161662f3cc91cfb38f4c85d88c5fd1b4ab776ca3d651f2edb3ba278d234b6542673b6ecab52d499d72da5531aadb24e4d59d9c8f4c75a94e9cb3a0494c71da04cbfc221c5ea037986144b8e1a923c5ea6d58c4ce9a821c9d48d4ceb1a99a61193a21dbd3c561f643adaa23bd6a112f5a470698c90dc49b5b0cafa74a275a8aa86bccae80d9da2f461b8b845e84e8c13ee588732ad439d6a29b2b64fb7a75f8b3a659fcad8d75449b47eca3d7d6d89d6a453321d5e0e7fb68816f6d7d0b6a8b623e450441064d38c580eb3ab3429b9b662758afee94753e57625f81068d02ecca740c4a849e8d41055f390704729ab32734d26931551844c262b4226934da14aa746199be5d0c3668160bf21724023c695714729eb144ddd3ecd0f35440e68c43aa23b4ad9cc4599ec462d59783fb7dfeb893dd9d39d569732c767caf941f4494a9f3d1a4990e5145d54afb80d853a31236b5f5ddbb7813adc504af3d729c9c379d2e33e0fb7f7fc8b69e356cfceec7198081208f0401dea6b5f04109c4cc91a0ff5b5f7282ea24fad8543f4a9674864660fccece14cd2a72dd6a797a13ba553a3fdee5b887d99e4f1bebfd3903cdaf77b1a26a23d9ed902210b98d5417b22f367890766b6e15c913eaf7a57199ab5701c41f6b0cd9872b71f8208c9e3df3c78fc974a4114a945aa87d4b3e2ceef661785e7d9165cff91f674976e599e0c4910435505141613b23c9d7a08e5f93a9d72c9f387a8408b2b321f9d924f94b8f284d2416ae4510a79b2274a667994522af58983337fcc3cff33cd1ffe2c79e6b4934f794e5954a587205eb2fcf185b0848c2a5982cde466e1cdf7a694a12549291d0473220172efd5568206d2346d1b69dec27148095c757b5484e39052a7208a0d3f3600d9f0536badd5dd869514ed1afeb102da7aabb5d63aa5a6034f9a2a933bda7cf2a67ff7b74e924d8bab69dc50917bda9052f6f78f8deceffe45d0acbd0fe5e00ef3a1d3597b1f778fba8f96b550d3b60f08c85debf654de953cdacb5f913c12cf121597761cae1b0b4ce08222442144abb686192bbb6ddd17649c6028a6aa1d96e9c2240410c50b590f171ee9692a2eed13e74d3c8e570b71a01db6694061829e24ba27c114aa2245cf16fe477a3c0e4bd067fb4a021d992038ce9b4174ef9564bc30890e88c791e7d7e7b0ece9e890529ebf612273db5ec3a394d9a6e26a4f3d1c52b1cd14dbccf9d6e0106c131348c93a59c24ce0242fd1ea3e0adaee573a90072f835d07a4bbd1e715259ef7cdfc8df6efd36eb4f2a3979d1a3df7167c3a955870872e83e1540206017f7b6f34da409f115892d3d3409f51050f30ea1e88cfd5f88d13c86e53d6dfb05c7227904f90e2274d0d0d4ffab824596b1552a5cf596bddea8685d4ef4a33ed5ac71742bf6e5feb6b756a9b56f1a8fd56bf8642b4deb44dd38468fd691b4f67aa55add6cd49f7eeefd9e975ef9ef7deb44f8b582333cff7fabb8eeb3aae47d6be07b51a97fdc195ecffc164ffda5c73cd755dedbafa597bee8978e642393368c78b6567bb6eecba4e48d7b5b36febd6799e377b369276ea56e32c67adedde62ce721d678570361c8f745cc771dfbdc542388eebb4ff34ce72d6ead849da816b341a8d46a3d16806a4bb92e35bf93ec797e37b20bd82c19166523802f1c8e52fc401401c9105a02c2c1903065368f9200062a0c18430586dc8e00c282016604f28016506852690319f0021b1f0830f4c2821841f346922842288f1c39118a8600b296654e0c2095c61d0e083ac52c6146bbcc00d13bca00b9816542c1173838d235009a30719889d2f8682a488411b256041cfe401c82a819ed6b3b526423b98d02456e29c706574f05cdf73fd1ed9df73670975aec7337df2cffea625f926fbf740448b538ca02680b2b7b2ff78833443277b6d756a9c71d2a9b983ec339d9a6f62396d4aee7ccf25ad07edd2b3c59b85fa4ac7ad7495e37a412324b206b9af5cee0bf7091b71a01702a1ef45699f58f9e33a7fe5693b3cee98b2dc4adfe8eede81dce8f3822c69bbdacaa9e91d3fcb9aa3650e9d32c7d24f0d7777b78e72772bebca513fed223ff92d1aed5879acac2ce7f4424ae92f2fb03ceecb82b5b237cda3e2cef711923b9fd2d0dd358e06beb9a79cfaebceff26e7e2be905c7734e884dc9d52eaee945277a794c2dc9d52da79e04b07ba7c2da49b03e60693c924d6bba313bbc2a685324769d609be94ece6a08fc3c45411d02d46864e5519d593996019dc4cc26664e902a9ee1fe8e3d5d22d6c0986c6636864be1ac69da1b5c6a2dc0963793b6ae8ac93e6a31a65d1a72c176b941914cb6207186591401f8fc1622c1a72334e0731177a1f78d2347a94524add9de4028e6e4c77801c62178654caa1a3850d6986342308ea7588162f91ad332a050082448b4c8c8c9d9923d087ca39636fd8e993e7c40e4a43b5157fcd5dc6aa18b70609ea43475ac8cc6067b97707a6f96a18f7d26f9a6056c69d35f661834e936bd8b5bca09486b4c6dc26e662ad22e4619dcd80d2d8057d689dcd6234d9c3ae2573382f66b9df3d95cc13f721ad2971e74bdbb5766b5a777787637daf3dfb044d3719c61d7b78f5277ba3cb75dfe8a5b32c23d28a8e1aeb71ababb9ec95d62e2e1415183e74cf5461e1ce3f693d2ae7f2625fbeed23e3c268dab6597fe9552579ea3b7d0ffd27f77f9c4c8c3bea58ce0a56c73bd0c73d27de4b2986c663be1ac695f9767c355daff652d3b490babe20dc593b6fc74723ce9a6f8273aa5cac5d8cd5957f3ad7b0ba64e0fac8b8f33be9ca218537a5ac1ec7a4b585bcaaf2945a953df4557f7a8660172aae3fbb47f5b2128e262ada826b673fb82559d075c9f2891441a048a4c04123e18eb27c2245ab7520c5134217460b31b82c6ab80cee4b1970dc161df0608b2eb420680b2d584205f7c2e16ddc1c5188838919563081d245b836cb274cc0e8312e98e513263480dd1c593e61e20229983071215c2ecb274c564c7e58ac3a05cbd4a4941ad69e823ef429e853a97ba54e65f5663e3c3f5c831cc441864f0af5c751fd5b4859b5499fdac3bae2e2767f3f29c8d9c349628dc6a84f728349eeffd8687125c841165d892d8101bdc024ae2ab9575a1f9515218f1494db552dd4a7fe181bafd6caac21dd9157825c6c335aca4a4f596936569aca4a5759a1610bf5bbcf963f3879f2b9fdcce2d6a760901dd9df93332673ea833b78112336b7ccd19ef311643c658e26b58d9bdd231b4a99338fd08e85434de6bc27eefcb1aa486ee45a9fba248f7f5d11cab57e9bd122c955928792625560545e6cb8a6905a4aae1d2b735eb8917b89dc3fae08d99f189557cb43eeb5edc8a4201737298dea9fd262c345e595c7ad0a2c7792dc3f9262b9eb4fc76ac95ab80d45e13aede92c413ab660afad9b0be8d32b804347158a5a561007500e37582c4f2851b22205998e254f5c2221cf61b10022b921b4620325a3d5dd011058c4228de1c4d7c6cfe8093452e01581444c745500aac292efbea124e8c9135c6802081b2f254d0079e315450a804ce1050313cc64c00222851f31801499f16305217aa530418525546872a3c0c4ab025903c65ab98d228a1d4f28f5a97651142afac4ad49c387ee87f1c5a5c9f2090bac50e2c264f984054a7cc95d81832e71372bb8ee8b129ae892b27c024514255c9ae51328629912000ad8932558c89169964f9658218ff7c598935a4b6bd5b46db3969b78ac4e7c5c34d756e759ea7da0a59fccf7f321814168b6a46befca9c33f45672e400bbbbdb251e72ca3d93bfc5c565ba3ccbf4796979797961d191e3e565e5bebcbc905e46e0cbcb0b0f8f89274d638d2ad32705f569c91d4943a4a14e4d293217bda74f2222b1d1a9eee9938a4854c0296ea7449ee853d9359129a5fda433a4486249d490e469c9943485145224c5acc84352fae4ba232936448a4212ea1409d627fa3b3291d9055290a3e87798e4a44ff4394c7291ba20bd4860f4893ea9d527fa2c52933e51528c14a54ff44942a4589fe89362a4182996a9f6f207414479be8ca6d5270d91a4b091e993649d0233fdfb7397b4386950a452a990f4d0274de9947cb2022999925899fe48a232cb7436e1451eaf2ad30b94298928d3d7ea24b13a359296641ad4a991148b9196746aac2a52934ecd1d640a461e495720c0c7ce894cbfe9a4a4a14c7f9c3da483592637662435a1b6ae7cd244acf18ea6618d2a8b2e68cef6afebbedcb55a4d037d8a786fc4e6ee2714d7b3ec3629c3f62eeb8ffb6fdc6bc9dd7ecedc72fbfa93b7af3f5d905603d29c73ce2613d7a03e7565cdee2aab4350b8de2c52642e56305e3156ac53338ae491c973c83aaab7dc44df16953fe149d30823cb0da3d5499faaab4ffd34f9cb60f66ad7292baddba8b6fad44fca6ddc1414e93c76aff963d619e47e4a71f79ab8838153dcee257974e4fe0e8c4ed1af511ad51feb537765d526d4d6968b323d68af8549cc9e1acaf8cb9efa477adce2e07e670985891299866317cbbde50e0c1a76af12dcf18edd0b4626454b2217e049d3b85394372f8bdbdf2e0783ecc8f6df93b256f99efc5a54f90555f6fc83e2765cffccfa74aad2a7ed271497a262a831a4481343cd4e6ee46d8dbc3d2a8d958c2242de9ea60c9b84db845214be0a790b69b290b707b770efcabf5812b5bdf5c2d1de19be5c44fda05e79235191b7cf99491efb1b69f63de1ca3e4dd4cf69fb958be7cf4fa780b6952cd75a4f1d942e367642b9aee45a4f1be853595858585872e4209d515d797e6d4911a6e5a8ed27cc174bf2fcea84ccf12cdf751d6928cfaf2bc9c392e2cad7f9d24a1ed2cfd75a54d963c13af0f5be09c5dd261457cbb20b168c12d2811aea011573d4f6a32dee8862b19a7453a0a4744d5067a086f2ecae5822ff88fac973e47106f8238fa13c47d31979c6b8449a98a35a5fc82579be629cc8f36b609207cc35b1efc79a28799a86f2fc58cc2bcfcf8167cf1803cb3366b5f2630c6b8c09cab365893cbf83499e2ecf6f51491e1d79fed8f2936719797b29a26212b5cd479121459b19ca08793bcd409ff9822ad3c45c44c550af4ed9cc505fc894cd16b410157311a66533eb14ccab6db62053305fc8d3962384e1e234ebd4fced515150429dfa7efb156c33e4a80da6e5a20d91a35e9db2218284f902a685821cb3119239dbc3cce056551e595a316cb5358b8128a3a400ca232a9642b1622042dec61886f236565646d9cc58bd044a8afa5bfdd1a45ab9a41acaec50ff7b991150fffba03bc21c152369d6813e45486fc4e6d14f28aeedfc8534427dda9e8469a2c89ced47b888919b69ca9039dbd30841cab0d1c4fab43d0d8c0b15f3ad6bd2535cd1bd91c7af8abcbde7e1ef41ecb9bb4f87e2762057bbd985b3ae3898e4f17efbce099922cdba95e4f97edb424db21a1d895d491eee57797b8fc3dd93669daa48e4a97f7bd2166492dcbf3592dc3fdacc3edc7d0e1c790bf8013f046ec033003be085c043fc0230033e082cc42b002fe07fc0417c0dbe7920b002be07fcc3fb8081f804e01e9e07ecc31f0027e01180797803e003fc0e18019f0336c0eb8077781c700e1f04ebf005c0383c07f0bf0f0ef2265c802700f6f98c4ddf8309f003c0f981e09e0f001ec00b0003f91f38007f0316c0db807f3c0fbee1456cc3ef609eaf018b9fc23b4f03aee17de0d4cf80697800601f2f039ee1753000de06cbf031609d0fb1cd631cc353fce5982a7deab0d5a9b1a6955b4615335bdd316c8d3133176bbebfc6e562f8fd35af1a58a73cf777005f23f8beba86ebaa69d5b46a9c842d178b7c7fe87291c8f7872f1791f8fe10e6e206be3f8cb978c4f787422e6ae0fbc32117877c7f287351c8f787442e8edf1f16b99881ef0f672e1af1fd362a1731f0fd363f2e5ee0fb6d562e5ae0fb6d582e56e0fb6d825ca4c0f7dbb45c9cc0f7dbb85c94c0f7dbbc5c2ce2fb6d602e46e0fb6d622e42e0fb6d845c7cc0f7db0cb948c4f7dbc86c886c8a6c662695e9c7b432b14c41a696c9657a9960a69849c834649299884c45a6d98dcac52037ab1bd64d90294ca2c4ec42cf16a33f81ed317dff8debe67503bb89dd08dddcc86e886e8a6e66382a9c1f9c150e4e104e0bc785f3727186efc781e1c4708470865cb409936c51ff04b6c7e6fb71642ee67c3f0e918b3dbe1fa7c84518be1f67e6e20bdfcf43e522eafb79fcb878fa7e1e2b17797c3f0f968b38dfcf23c8c59befe7d172f1bf69cd534ac3a7f8290d228365e8d7fc911616c541c87c4d988414030e2b583d32238c0507be080e5ba12b7c85b030160a8543a12c240a8bc2998dcae6c76665c3b209b269d9b86c5e36309b988d101136321b229b229b99ea67c50a6ab95eb098d0908ca86876a3baf9b959ddb06e821c75e3ba79ddc06e623742374337b21ba29ba29b198e0ae7076785c3c209c269e1b8705e38309c188e108e0c8708a70867c643c5e387c78a078b47904df752d2e03dce19b286fec74988782548a0eaf937e11fdbc381f0a6e5a83a442486efaf442ecaf0adf33dc303e0fbb51f1769f87e6de5a28fefd7582ed6f0fd5a908ba9efd75a2e8adfafb95cdcf97eede5a20ddfafc15ce4f97e2de6e28fefd7845cbce1fbb5211703f0fd9acc45017cbf46e4e200be5f2b7211c8f76b3317f3f76f2a177bbe7ffb719100dfbfad5c2cc0f76f2c177dbe7f0b721187efdf5a2e06f9fecde5620edfbfbd5cd4e1fb37988b06f8fe2de6e20edfbf09b97880efdf865c44c0f76f321713f0fd1b918b3c7cf7f0fddbcc451fbedfaa5cfce1fbed8f8b407cbf5db918c4f75b968b0a7821bedfb65c5cc0f75b978b437cbf7db9c880efb730171bf0fd36e6a203bedf0ab97873c3ba59ddfcdca84c33539189c824330d99844c3113ccf432b94c2d539089655a997e4c2a9b994d910d918dcc46c8266603b3b171d9b46c826c58362b9b1f1b5518168544a12c1c0a85c258080b435758d20211b8c4923314c12d44700b12b86503b8e508dca201dc3204b708c12d236ec9006e3102b76000b75c00b75800bb5400bb5000bb4c00bb4800bb14815d22805d20805d1e805d88c02e0ec02e0dc02e0cc02e43609705601721b08b02f04b10f80508fcf2037ef101bff4805f5a3ce0175702f0cb0b01f8057600fc12db01bf081900bf0ce9805f6439e017a220f8a50807fc32f3c125550170e98700b8b41ae1124be6f4f7e05250c6a516105c720d00975e02c0255800702976032efdc0251e5cb20197767049c4a51486a901c3f8c03034601800609819308c0e869101c3c4806172304c0f0c0303869139aaff050c83c230458eea3f61181e380607c7dce09895a3fa1fc798be979206f04b4c640dfd363807928691de20c38c216b80a9c135c415e6a87e8c6bcc51201e4b2e184b538cf4063407790c5b45268f28238fce893bceb466ba9879b948f3fd5e177dead786e47a1e675ab267821a9eb3a525f3dd339a685e06f72783b92d89968493f2a34ac1ada9c13c5c8eaa35c995b4af68f5c9c31f2dad09f1bd335fd1c2ea534b130d6cc0cccb843241c87ccdd784494c286467c87a64fe488fb7ade0d22c2bc5713d8f75286cf170c904d1f5ecc0199239ddeab6b05cc4ff3fda9a1f6f0b2bf7df958b380cdfda9a503aeaae72ff76822bf318b63a1a6cb1ecd9814b7906abba9ef0e5a82c83654f0c963ddc12f7dbc356d89ae101474a3d84ca93a6d1cab2bfe744f3070deb6bba1424cf0cab0ebc6955590add9d9f22dee22ea2c851fe329994cd52c9bb70c759d4ea2217ed3bd18ac666f663b6226d56e4e2a67a8df5ca5e8466d7e2d6d7fcb1b92165d081e4d9de9039fe5e348a72c7ad28fb6bb33babe1f8a73c6ab3ec3f6a56903c790b52fc24aa68fe9872be21535990293a8b58f2742dda7bb407d262e4d1d4c2dd6365dc6b56ddb260524ae5caa7a00f9d534607aa52a932cd12d461ba0e5fa7e68ce312e1de7e0f07b77f26c93eebe959f6264eabddbaba7daddda68d42a873dc165db7d9ea795d14b58652e6684e85edc793a6d161b9a7112e7232245cbcbef34d16cc255386fecdc120cdbd57ab16776c99f7d497d9810aa12d933c333663f7de9df96342993240c9bda47b3cfb19e1a2f7c082622d21570fcd971932a1283128f3c71c43cad0df64cc1fe47e8f36ed1116dd4b5088d9d3854990a0870bdbc5823b0d702477a0948d94b213915dc85ac59f75d8d6da114c26282835f9e32374b210ffaf87e878165b2ca7b8dbcbdcd55a1e3c30f30ce9161ea193b5d09b09ef13e3caecdbf7cb989836c6211d2c33b9dba68542ea049a250aa48b1528b184328c40e4468f1b218a2d3c6f7b33cb4d052bf7acb41385d50c94b090ec208a22acc005de93a025c8e4a63ff0fce70fed5395b214a289e87f69875ae9cbe8a07d7f8732361fc91608f7bdf4b7d2d930afc2ebdc717127e8c3f603f77604dcdb116ccf716f9f0b372c1384f6dc6bcf71d886529b3d9950011552914f95b5ef0c6261c2268c52d94f636eedf552e97fc23a35dfc3f1fe48c121b89f27178968548f767c399e32112d76bf85630fef473994473924d998f285331e658d1328ec91c729d41511e2540a12820e39aaff25330a93a02d47f583216539aadbdb99a010d27b003f6c1d255d9409e2930962f4df911eefbfffc224be1f850d06317a2f4cc27bfacafdb4959b95bb97a00fb3070c4f8e02e228f91f9609c27ef71df53a4f6305551825c22eb165b9e8448eeab7f6de52e961442ed2d18b4a77741a7b7a227251f678d1553d5dd19885e3fecdb49bc076a02ea343fdf9331ce7d7f048a62b31f2784d3fd258eeef935f6d3ba235290e4b7a2b26b95dc3f627f81ed935d84659d929d3f7131c8db0c496d24a69a513ca47c2b651db4f2cf1ed93ddacb5a10cf7327be8c3853b200da90eeefc967d3af569da6ddb882091bbb7dcc68523121bb62f411c6cc8859286b4535b9fb6df4219fa92f6c83a26539e176cbb82f1e98ff2659ffc85489721dcf166964e7da5d9a54eb1747bb88312a538593ea942287b593e69d2c634c2f84bac308990c79d33b20b39218f7228bbfb132b8a90ddbf6453042d8656442da012a5c73f07172b1319945154a492c2841e3f65f9c40a19e41c593eb18275a770860d602085305490860fca00a20934a630810b51f4608cd71c0210920a24172ce106ab12acb1c24208e36a0917458051114223ca079ec4a18227ae8002349090d1238a365410471394502142107e18038829c421a50c28aaa0061954660c0818dcd8810cd438c21b565401042e882084203160800225ac1f04dc0a929527f708cd65adeb8e9d90e4d15c4166c8d3feb882a46a2e9d3c431998cc69c21d716460194795bb73e5fa63272403ebe1aa6f4c5805de3ae7f4b5f7b49929ad9c8e11538a4c1f15e8d4e66d9aa6699a3675322051fd48e07043c70899d35f4b70c7b95a597b6fa934579eb7612108f6dffdf3813cc724f20cc7faff823b33edb6e168b7f7e68a6b1b529dec789c4b0aa0a3a3f3a6de428d06e51c66682de8a1ec93114e4a57cc263e33b8337db26d615b15625c4dfbed65f5ba98366e07fba270391bda07e2cf75308bb5d0a900b34396fbbdf95af87da1f79d0beeccdef74b0fcfacbda4393a18581e737c62dc233ad8d71f3b9857c3f9dc8f5a18b9659ee1572473b8b83dc8f67504499ef93af52bcafd564750eedfc22fdc21cbd2e688372b1254a5520f1f35dcdc3ae79e7f0efac88d68b9e2529f9eb833cff469071c4f5e383e17c2eea6d3a9f93393d42233fb98493aa5bdecd24c92ee76dfe9e48eeb5ecaee27e8d3a9f29c4b48547f183bfd361c75fab7b0a9c8cdc489dcefe1fffce9c21da7d014b2d6c30f0bd2a951451c1084d46ae978cad6526b1d943247d3860cc915e4e14eed81b410fa4fbf0a58aee295fbbfd24c6e994796ac513cda30ce30a2469c274c9e2b79ceb981206bfd814c472be39813884a18ad9436a50d246758ead30c4b9f89897bda09e73759e66c2c85281a42dbcf714ec9de2eeb54a24d2573ca867fc63a8a9a3e253b40ba4fb22790146fa3e453c79f43a12f4df675e60feeade57ef425a391adde108e2cb9c3d14805c0fcc1b98700d8beeaf804805bbce3e37e37f4a9890bebc1ad95423e322d45c994be8f9700f0222ebe16950c43964fb020cafed234b62cd7ed2b50962f25cfa76fad168e530377e832d57e7bfadfcffcf129f9803a451f8cdc6406f5a997e4d1e69f5700dd71c65e33365f73fe6cb9e4d727c754d29f16658fcfec12f4c6a53eb5ac090da753de463fce64077f34657796ec3e6e5f1fc4a6119ec11ae8e3711ce6401fa75fa76daf7dc34451a38b134c14356c905b3609e691af5d0de7801199ce70d44a9aa659df6c0d4bb3874c67ade1287f7b97527698c36eadb5e1587f0b6badaf85370fd1b16d03cf3569e9f49f449ae63fce69ab70b5b7b3ce217396934cadca39877c992ef174ce29a5ac74fe80522a29a5544a4929a564d82175caf5972c994a6a5932a52e054f4aede9e60dfad4dfa494e1902fd7b0ca70bc39467b21d4dd6ba5469cbabb119a69f886e78d27167fd9a92f9f242ccf233e670f9ecc408a47e29172657e76faf284eb4f5b9ebc3f5742718293ccfd678eebba6e4a9f7afa77df539aa84fdd32a13b765117758a7e9d3f6e2d06837ce6b8b7a00fedc0051ce9f9a83f16df739f4c755236e863bfe338cee3de1b71248ee3388eb39a56446556e4c690a33a4aa38aa8cc8adcc8a1ea1a64c29373ce3967194782aa165256b590f26553e9eda35148abbc399b568d524a69534a292565713f4a29a5df97aed8d6e1c493adfddc764aa5fb880b4f4a2a59288a9316fda149a6c86060781367cda89821e472d240fd4334050a6c06cd26556679c887cefc19522859c2fa247f4e920f1d99432231716977a84362e2caaf60901952ead4bda949ef8de6198e24c8b4a84ff257883c29c39106d1265566436674e1f29503b1411483724507b5aa8a94a1571773499eaba221324a0e1a0aaeec93c943c19d534e1fcd9fe1968557ba7dea21fbcf39a74e9edfd323c9b64eabb6b9bb75d792b8735ce7de07babb3b693422cdaa94aebbbb9374cc39e79cb3e76c1d2c2c2d2db345070ba9c5a5c5c5c58545470e179795ebe2e2427219812e2e2edf11bc3b677f0dfa28716738d22559bebbcf66a26651ab46354bbfa0bb694c5c6bed675b256765f91a1377b4558b3bff037d24950b829aa669dad72c2e6986f493040699c9f7aeac4cd0c78675dbb4a732573a75e4d0b17275e8d0a14307cca865380ed15c568716401dccd5c41621168ea73c7fca39a79cb36ad5ab57afeeee2e659d73ce19568987cc59b694d24a9130f28124a6aac5aec3461ad505b8b4396cc472e026513fd027237d6ad8b55da77092de9d5de04d29796461421e674c57747173c519b99fc0e0063178229f9ef0a4e499524adb293973f48a5f4aaa230ddc3eeb715dc779f6db406d5449f4fa4ae7983364198d4772d581a59b101af66f785229e5a94f534a29a5698a2b9f7bc2fddee5f6729352f66bdf9cfe03ead2ddb732e8a7c6acc1f5afd7dd297d97ee9e0b3cede7585735080df785a5b416d1ca5227a5f3081cf71ba5f2768afb592b07eea03df716d4617b2e1cdd522b640b6f48e75677f0dfb670a402115eabd56ef6e5b66d74a3f5b7f7fa34a68dab55ed69d56a6dc37340bd52ea2fdd5ffbf91bb6a1f4a9838794564a69bfd1d27e9a90f91a0f2f739d33dc3e504d320540d429a54edd5a7bc5154fae5892c7cf4fae0012674fbf8e0f09842756a87aba16dcfe2ee87a2fc10678df4d71411d2c87650f16dd03e9cdddab56b5aad5774cc43d0f4b89b2d9866010fad67190393e0ec9fe1b1e3dd43a9646f9d3ec5c92bb02591e757e6b1be449d33883909460addd1577f326b8839c926f2844c63f1087d30dee18b678b424cff7ad853cf57335adbbc219923ca316d68dce87b5a7f8fb9a5623c95ad01f5b583a399effd812f6684895e9c8f51d8747cf361c2b120f5b5ce031044579485d09a13fb3047d2816315ff3430835804d2ddc71a685c5cff7c47cf75e0cae364bb00beb90cd02141615b25759ee3a54c57db1e69bfe94dcafe3624dd863c77bcf55aeaaa84f4dc5fdae5860de5f7b11041cc81ee657bcc749bef4deffc3e01a5709d738f99a1626f5e8d4e8bc7cbffc68f32cbb7ccc6ca635e3aa89cdcccce0a79f36270f28663003a7003f6c491e52f71efd643014705459f9a8e994ce8e12776c61e9e41a1c86503af505f15c3f86257946df56c8534cd018d38289491efaa42fb1240ff733ad96961f63667568a625c68afbfd314197e5c7182e878e1f6366372d993343756a5aaeaa69e5bb1a611d2b99d32cb04e867147d455dccd7057a54f3d7457dd0fa98854e422c9da7b49456c6c48aef723492863993b3c8ab9ff058f35b1dcef82c79b5bf0e82c17c445a68e1c243c3a923cb6b02817796c6155242b78b414779e69cd38192d71c7992efae4014ca40a302e0069708a3b86dc2cc7b41ad56f5f764c2bf7874e3ae5b908112436708406860819336004062e60810a50600212282202107800110e680003865880100a0802881f7ce881870420e0003b1840871c82e0e0530002987a32900108200037fce0b161474cd5e0830600cca023430c3638cce901032ba8e57af180b9c881efe7d11fb6240f2515fd2015491978e09bc7c1ff28cce34f18e761c0a87f019f3e07c3f03df00b1fe21e8f71ce533cca1cc04930e93d8c697abcf961fcf578fd610cf65c12be4bfad48ff1a8e7ae3026f5d01a2735aeb0a655d32282931879259050a954aa1e0f7c11dc81470217f9233012bf014ce487e0235e0378033fe2212f046be08dc0e367000bf90b60231e0338035f017c81b700c6c04f0057e029802df045e009bc0430051e02b8888f0096c0138121f00fc011f8066022de0101a1cea8848c95a6454c32a4460000000000000315002028140e090663a1481648d2da0714800c7fa24a68501b0ab32488611cc418638c318618420022041998a1a11981008f01c007407b0f526feba5c29b3c5b9df8a9d916d00226fb8f1fea48b7ca16b69e96e39f743a3b2404942d465732776d7382fed5a03ae56bba6ab9b352e16b8efdd8adedf81cf1146268fa5c3f248f9dad4a93fc2b045344216e3d96c9dd24ca08dc2ddd83542172b09cc35886328d5d9f360dffb55101f98b2f48e9b7a17e24d60da40363405657cab825ed7579b2f1bc38de79127a5f0503e45ba08bf3c0b8c930c01320cb54082bf49655678188c4515ff4d87bbe051ba5a284bd28b0c1289d9e3377bb0843571ffc79a593cf4754c43af8249a0f70282df5b4f5cda26afd3eb0de0e4da48470e4ec142e7446262027bea3b93b1912b897e58b64d522545995c9b9e63b86ed7d0f56edf0778036dec57e65ad3831c2b8cb4a740cb220ff7054d82050a1ab2d51c35fd95514d144b0c266b3549b581751d41c8b9894e109ec2b60eb909c97a0459ccf76c2cbc48f810edc08e8a9c5de4461ca2341edadbb8e60851d6102581ef4064db0801087dd63eb8f59dc3f36231a57c0958336f63c9a1d11726b21096c300904d2a39885d942e1b88682647229f8aabaae62265456342c62054cf54c8658a1422b236b28bf313119a783d0887f19d9bc21285e38c0388350416b53890c5a1b23b2a6e2d4fc895d06019c8b9b85c2f91cace65b55eaf305e1f1f29b03874a65610b900311b4b398a5ce26f602b224c15e0aacd7b6b99bb441520e8e31636a8979406e0a2d3a9d474336984921d30922bbda013cc61fc6824e71b1a14bc0dc9eaf63aed254fa47e69e06a8dcbd8993e09d69f5dd5547d9ec88d0b9a1e64898037036847fb2da0c9763bb179f7eeab09a97285a84356e1714abc1f2706e242f19f644afad5b0ac88fa95600ca4a548de09ce12e89e3a40fd612a1b2098105087e2284a6f935bcd13821286dc599b46afefb74548178cbe8824681a1d2aea4980a84c029bd0ae8ef93127aa23bc3e46c00b68a3cebb2367c3de5e4f56b92d5f0f623463591e4ced3df4ed627c57e376b1b11a026482027a54e9aa84514e16c546da9be8fb20532d354aca4644def3d346ff5b6007bcf2c580cfc60ea36f0c325c232e090745e23ca89258a199f375156ad14aaac3dd78d371a936fb5c48d9c7b729d41a1521cf4a6ef12207569d2450b9ebc41955f2a1d93720b2532797337699f387b06b71e51d96658913c3d05a88dce255054e9ea12be961a7d269940e7a148cab5a4dd8fb5b01dda358357d209c35f70b5331cb19b67444fbf81419eb02b00d44c4596523db8573c682eddf7fc2d397c8c38e3cf96674895f922a46df83f417ec30f64e54f470ffaada9c730ccb6da22b68418638f866f5932a3180748c326b287b896ee760e88391c33f761c0aab6b9b0c0c9457440a7186c119a4eafb7c47f0eca2b24ac24e71c28698f5a5b82d8b3da50116c66624b0c6ed37c07088389a495c220bf8063c00028a166f5411ad07532caca5763e98e6a5d909a7e85295b83fd7ae7b0d31a3b003608a6fb48f0dc16eb8781e6cd3f18ca27fe03d76650cf3b7a84fcdbbef99d0d91e399d30720cd469b33ead65fef056fc418ac597bb9c262ca2df35a9262fef178052e92d592c93bb31adadab241f1d96ca3d53f86a4556291048c01dd35a8ea6f984c9e0a9a1ac4b11c98ef95c380a44a8ed89b6270802664d9551c20e892cd35d250fa51c81cab7432d3c35ca319aa78d4f5b1481894a8d325b0d0646fcedae35d10b9d1ab4cbcfbc3f747e62519cc5d5552917f0058934b4d9524fdd7b33ae1d77acdc8320277342b62f9aef5f032edb6bc4ed86d517dc7e4f35df91c8d6cea48bfb479bf7e3ab7cf3e7fdd1c349aef08706e7dde8e92e32dc0a08ad2de94bf9d6da533cc462bacd1003fd533696208004a97693bcfee91342d66da6125e2c9021d1cf693a55b8df6885eba96a080c9ded49bcb6b8e43cb451a2ae1ecb4c82baf7d337e379c2177ae6ff8ab93b9ce41b4c3fe1d5d35313de98c3984a7cdad33c919258e96229ee643bcd06ebad5f35bae36a8b5be3b371caead3177dce984ef983c080e1137641337d03c1425bf21174d03a2abc54c7f46f33f5b814de6a4978fd1c7b6a35024a93fb0c2a47f1785ae1ea49cd5191f184156503f2b402776275f0451c62da56e4cb23ced589377701ddfd3e8ce4eded9c7e12f1a389656aa22dea41ed1cd2ceb1a98739d69383007c9cec76e2e5d8f3cc2a116e6c8cad6a60b724ec1a222b61529b1fe7acf3bb58fe37325299ae78e94f8c2f13e24899a8b49516767b00a1b38fdfd15f2ae488149d7e2c98a563abc89990efeda801760ebb76080d89a2c2d955cb2c6793bb13e0139e6346e12fa6c3674d3281aa81af4241c1e641f7893a379246a3b7ebc604f61fc883eca898f57fc27f4caa6105fc8a7505bd017de08cf95f2af4948782eab340ca438f7034014cf3a5d8717f1466d52dc00e1914965bb5df01563dd131ce0c25f44a9e68303a0752f1a4fd834635fe60b491421911c04166ba743789df7906276d93a8f4ac895a745692b9bb7bdfb79f0720752add137741f8ceb4e40a5c5e648d6e3bd2853a6e5077838621470ccb7218765c9bda172f07962058f8a505caf0722f11547084dcc35174f59509c4be1c3830484aad1f1e27828a7fb7fbc87dd4f86f7a2ee5fc4783866c66d62c4805b8f17b16cdc7afacfca9874028cad52ccd8bce1083c5fce8543f9fda60eccc364c4e211754096d58a5ba59578bff9813526bc35e30f8f51e29fc66f0c3c4c61c05644070221cb9ab01a38a41a612737cf0256342ae5b3c4d9d16e6d73a6576a036ad766151c9fe78546209291df62b329a12b5944c553c7d382406e4f2634c4390776135704f4713ce2d7c462fa0ccfa9a3d3785d96d58b543b90dea4640a5a36140c604efc73a612f70a05d941b7a6222ae1948e0ca8c13e6fa28cfd5b6423f5d6b1413fc40f41c0347d00df02d2e3b2d9e22de975a15b63652bb7df08445bc43e178b471e0c0d0e10fd7256a8a1f5630b2485f46350be57890637909892bcc25d924146cc0fa120d23cc7c4251d96ff797f6cabf8b5605626b6ff955e30a2f991a466634c967b91e3c18e6d35487708cc50eab35e30f87fba9bffd86c4812665bbced5c224a191980b4b2cf55f208a874d9c3464bfe1a31e4cd99b263f2d805902813cbbe00e2532ee62bd4cd159968d83541a6978484ef748a6e567c728426e13834ffde9a83f454fca33186f7ca9f49a7668ac7a34691f9f5d3b81ae6485daac42657a3e0473072ca24aabfc958efc50e49bf5e750e2f2f9d7ac3d8cfa4b4fdb84264a9022f5bac7242fee39d3ee636f69064e70096520807f4dd12859cf1736726ba77a8612469c498003e6100c25136b5f6283b9868ec60be88c41fcd47c821c7e251020c55f50273e618d717d56281382208953a1a9b3647c28cb135f92d17b964b33bc5f92e34088459e69048d63ccba0e860e0a0183c3d96ae53b4e3604de6f6c8e7906f1983a058f74f43b13d387a84d21c44c60d0b0c4b636a91db60fb6802fa1b2207d6329cb1e463b10039c7d9af76b4e9d06184a9c33822001200e0fea5689e4c31b3e4a4664a625054442ddbd0fc135556d8a0c5abad15ebfe3bb684bbb1839cdab0d35660e05c2a10103dbb820c568c97c9cb9a08d11863f28cd6834a40585f84ccf1e0dbbd6a31add8b2db4f032b0800e6cf14a8b1dab2c24ac66021364234cbdef078327d5d2117e99f75c2d682d2ea609cd77dc7abc0b3f2674eda5fdfa9c02fbb711a47b87487a897c2c9818ff3c574f6cc663ad359efc1aa58d5cd05cfdb034e555edce284ddd390e84a962c41f86152d3c09a381c9b88736d6493861ca031f946b24772a9279af0e8a70d8446bc1ebef024ad59dc0f05478d27d54fbef9ac82023a9a75dc34c8cb92e2b4dd03ceb6464d8fa9e898872ee7b694b5c1587b7cbe9b446cdcffd97be090cc444537fb340787743db2415d4ab90618dc5f3e97d51a1620918a9fd600a4a6f44e7c07eec0182b22e2e3ccad953c5fe76f5ee0e6a16f3da321c21cd6a86bbd8beb5c1cec7c79d8ac82d6a321dbeaa2ca056b3bd07c460469be382506eb39269a0e90459154769a308b4cb76bee1364132609f097a348c2f47efa561261482295c9a3b041559eceb161fb08bb97d263e95a11298e9029850a6c6c021c9efef39d24c9852f2f1959ab3024d50e18e72fe16c8b83fc7f7c062a8c21c289d8f1111b6ea9ad2a21ba25ef8522642050574a5ad868e223578295b47441d672032598c5d7b65868ad5e408882721e0d6b1434366b2460ee018032c6421dd2f354c80da8cd8eff61dce23d2b46ac598ceb27315b574e39cb3acc33a29eab3f22a00d619e20daa2a3e3b6ebb76785af8718c2770b3cc3282c262d02b131a5e835f81af7fc40e34d42730aa8e1a36896d65f57ce40b46a3ecb549e00068470e0a84fffc1f61e2632548259501e84ec078966f9b5c6f778b1fb20eb41f4413594dd65cfbdd1d671005a7e28e2ba2bf990ff0fd94a5419daed0f5550872fc1a8f4b3c0c18ed13a9d33ac369b0ba1f1c6192ae416d7ec55e87b736248185fd6e912971a9b55515b9438920c6537bf468029314c9ce4dd623e4a05786ef5c6df2665ed87dd3c098cb0d51a36289f993f832d2d8b916e410ca5e4350ff48cd7745bd0d46dc3eaa8d113ecebc2493fa4905f3358675cfad67f0091d3de602ae29e46a0a0be297c0c31b7508c7df3e213e401a62ee49e8a3bd7904416ac87e5bfff283f837885368a31bf3327ee4739754576b2e59fc5e839c3d94abe54deb0975be37ee1cb3b6d913b6eb4710fd72fd9c1b648c00df29d93224fbe32aede9f9ba14764b142e16ca37e6dac5302ff55145949a177afabff2aeaaca5dcbbd7ca3a4af05f4611ab147cd775fd2fa30eac0922255138ff3906234a27eab8a01679599129200bf803b85e81b71952454646a7c33875c463e0e212ee21837f1f0452eccc2ce624478781cba6c027f6452311d3d804d3106b644606430f7ef51745e77af3aed6a50f012386ba3d5c216046d8e2e69c91a9dfc9ccefc9e877b056399399df92d1ef9049f6c02a7c26a3df91a1f94dcf59afec2c64feedd5611dcefc4daa1335c6e3f7cf5c7ee613ab70e45f3636cb15c1c0127e495f8aa8329c454ee4d400d729250b64df5f191fe89665c891fd32ac84cd646a54efdea6fb78f3da82a2a9fe15c098043bef272f7359eedd6c75e39edd25c9fbf3aed4cef803cd329cfbe0d1bbbb31c21e4b6040e9798b1388bc8822e24029eb6b0db72ed6eb1899f2c0e6e6a81ed60c26a53c2b0f95b62d582b9e137e94366d682405fa4821a1672e16fb8c55535caac0bd9a1860879d8cda27bbe216abf15b3d0905f75590e9a78a22e499c4516837ded5aab39fb01c47f2242f6e6c81520edd8280ae316b390727766ae5e0fcc65367fcae6a377dd4b37890375acd8c54eb61f98add9dbfeace540ba4927570dc4ae19d91fe89f8f74753900cfe47a3aacc44466e3975957bc03a3ec92a89195f7eedc1f17cd1b437e6f82f36f36b3543129b540de443b8a0376ad0c76075520d910521bd1b11bb5d38413cb784f27b38ac49d9da560ccb72ca9ac02e2c9c9c9cd590694ec5269b1ca65ebac14ce28b305cce59377e61fc08a48881205b7d2c1a2c4b9b8482cc55edc83ccae2b1c07ade3a51d0b323c36a6e54f67f64334f9904328590a3ce71504fdef93ff0ad7ce2278cf1cc345f31291d8809c68badcfeb6e9295d5e42fdf85a278c72417a3a99661ee919c65221a59f2069b14688fee1d53270506d06625dcaf73d1406404913e529f4bf73f44e0280081c31546db32908867106a1fde75db5ea76fdda06faac8d25dea875b4726be859cb0e572e7a669cca2bd738b5e98abbcbca5053eff758e6ab57a41ec112056455359f2106d44f80abf8b099a3ca21b43beab417ecc5770c0e250b6ea9786e76cf4ae0c13aca3c63f47f38f41de15a97298df6f827e23f57bf5ccfb0886d8e8831ecb61f1cbef36e8fdb20df0ee0e7fbb8fd4ecbf240a439d0df7c9fff70244029851ca24f682db30572a3bce85f82f6a69d2330a250f686070a88579b50d1414178a6b887a10c7315800acfd0b9982de27a5380835353436cadb3ab8d31fefcf98837693702bb362ee5ce2bf5756692ec403f51155b6cea9ee8b15405d57c76e842b896141cc67df1d576cd4fe49aa099416f406d4a2c2aed139694c8c78119346bc7394fd41534b7071d3a4985165800075d82e16aa455622f86466f03eeaf2eee414086009c30900a4c6101100aa31401c00350c13028812430400a86010510095304c0020750c8800b84233189eca28808861e44517a3cae0b3d2450e03c2c485e8750e6479edcb529c0280612806a0ae357b14f8291741f6bc160c5dd9247a4435ac903e6957882395b4bc090966c62600620204a1287da40482c073d3d4611241b176d0ab59a80e5c69376aafb573ee4040d6d1892941294c85d3f644acd7835a9bed577ccc3a4119dc31995e5101699eaac6f8df6e61a5bca9e099921d41bf92394e42313baa0dde1504c8937042fb018ddd4da5603546f6e1269d6030067345c79e66c484d27d78f73a97a7f5b9fd1d38862d4a67a67a2f4435c96b7017ef07de008332356a253625715477a02949701f5e5a7f505efb79e051b03ec33401177a74633199f0fbe2c6f45ddb45e8f34883ad27aa1a4c15a72fa10d9907bf9f1b9157f4595e4f5f86a02a1e9df28837b637282b94eba0691b2ad1a9e8f6cf0a9ac3954a749555c3640ad6c1877dfc52649c785b95c0b1e5e9455a694f1abbe6a7847f9eafba69aff448ad73b0e8d3a0fe167dbee1650e4fb125a1850335ff70cbbcdaee1e2a2f61afd8dbda179dcfea25df06fef672d78de3fe3be6f05f3dd4f809e48ba72f3845d7ddace580b693465d76824b3fa04a21ebc848d6a8b6ebbe9e1f93a3b91ee850232052a7ebf64237a52b58e12b1bc3e653e13d6a7f0e9fdfab2dc57f1e76144e3c0ee367c0ed796d11878476c62ca6449630e7c1ca1d662a7be6b0c0e2cb1fbe44ed4da892ab2d55473f7dcf1b212b21c440cc9888866219102f13717b7954e1168951cde3149bf8eb1bc13a76dde98471ac2fb2ba9601797baa8d1730974ddc385fd8506111bca8b56e41b8e2e39df89982c2681fc17e17f88b47868eac350954b5afdaa51761c0bd95abe13ae9b32636af3750f7c95bff277c22ab79bb0d0e705a183f85ff318c237ea6490888c4fc520fff4ee3fcd0769baa0fdf3e8f11318a44f5b0c9c0b81b98a13fbb01964182ecc2bbaba0c8ebf644b783af2d58f036ba2ab8dd2c0b7860e699f7d411346b12443ab4d8533bcca6ed180aae1f081cf6d4db463b3db1d1f45c8ba99d242272a8178e8cd0fc307a1dd6295a60a71804812ab2efb49163a1f6561ffe261a0c6c5d8e604355d199ce3f71e3110fe79e05485d12844a2855a6a34f8c79b5628e5b77854f8a36112b259b9948d8c05d8c738d7565d8a3368025022e2d1ebffd37134e060dd4f64e28f4c0b86376fe020fabf72ab8a35452dc87309fb14924c24c7d4306e767e3381572750764ac77de108093ff1a947100677104f218049580195642634d08037ba2486281ea767966fcb19bfa82c6ddb5a0a2707921a9dbc654865d9325eca13eb6c096810b0695862aa1ec6588bf6739816d541b46876d017282599643b8a5996728cec8412c845d4c40418a57943ba7e2399752332fdf2d3820405da5493f4553743476fdc062d17effee3bdc6df8aa68bb2a50c8b11f87e239d4f2a259b3b753181c9871a66238380b7cd91a995c21e07cf482008d5e69b36ed8f3172840dbe30b5ef95c3d6110fcf18ca1b22efb09220738b22ee9904076c035bdf6dea89c50adea2aa5a58560422e1c9c439d7b913853d58c2919239d01eff12750ec70fb76794cbcef0c57bb19e25192fdf5655658e2b213aba6bd1846b4d16f9d68db50222193c326e3f8883049cc37d722458dd36beda0e594925855c2dbe5f4ed66f823cd724e93029b01cee82a5ca8e8f0708c4d5ad18a6e01e15e3239047afde6cc104f2000ef04162ce1c86828dc8e2b3039c56001d4c521c8032c97b84bd1480035e144971277e7b623934f6826d91ee44a9c8227aafd8053ef47a33aa748d7c6239ae02a00963eaa33ba10c38b0c7f75a57dd34097161ebee4655fb86df0085bce94891040c0ec1c018213a4a9ed52fc1f473183029fb3c8b241efad221118718093c74531faa1e0b1a865d62fb7c93e169b17bcc1a2096a96c6fc4c5dc9c2854f1ed5493b6185296213af5b0b76817b85561e5c34c57b3b6c0253513e3182b328418ae72750a4246ebea89dfc95d290806d29e64086b8bf3a6365c89afbb4e8a5438c0bd0e523daf1a8457aba688801d84fb815503af27499850e2ca28abfa90a7e2aa3b250c841ea7994ac9ee42a6ba3393a4a5c51aaaf6569dc4af3fa9109e576a8710c9932dd836800e0eba59a870de729318d6adf20c8e975a3d21be28d899d1766c68890bd7044c83ff4032de9239975745009c8fab3ae0bf57186933b31fd3e8756468134ade699aca44cd13f135f91cf9652c3c30cef9850fe8350e51d7e9d993d9cc9e1ee00fbe83b018a0bda505e8b60d763804a635e225cca41d78cc4b8fba1b103d647cd904a28f67d502c4c25925fbebd79b3b24e3c0e2c7eff37dff9234dbdb56b3897341c2aab70de184ea1dc70930e4d3fa81485aa0c305b49cae0bc933ce05219821f1579465ba8457fd553ae7352f43616a2ec41e40f9a78bea7ff7ff83b73df7c92b10c8fe3840b74233b10ebfe3a54d7751c2a4e68ec8cf43ea1a22cfa3526d4f2dc4f3c914a7a06a594a4db8b2862095f61a112f57c424529e2f3d16b09d534f711252592de412195e9f4a28a48e21702de8a5589d3134b15a7364ffc43686df4cce558d574b08dfd8e863a3738b20298a2d8fce88e4fa923d6f20a31e07ed1078f5b3f986c6ee2879ef42507c8a1a5fe8298448d0ec6b60993e8733e54f0452578159566849886b480f8f99ff031ce0f3cce2cc9692ed5fafe8a84f52fa946fc828cf0a128888470998321c9580390ee9b07885a3929f5f59526bad099eaec4499e0aa52b522e95ee3d54a54a842da1778e1f5692a8f16d5dd5671ba6aa34a69d75699460aa3e94e887b597c55f54651896a1a6d262f982944fa0044393c770d8e1634d417988b605102148a82e42a40b48183dac0b88142974050140cd781a03a8780faf05101bf690b42bf0277d21d52db8995d3d75a31aa850e93824d6875054d3041b1cf1d985c193ca5d259db42c6869dc4c1f884c933e9021166a24f4771549970c2841069229c3aa5aea37e5405dd4eb40e9b6a503221841486d3832222085f011baa9ff28d9bf00ad80a5aac551eca9916f75e9f7cb5c93cfba5106b72c9161a44a7f49df2308277de747092985fa93590d4e610f92f355ebe69c32dd658f0cc17b384751e21ddf8caab897edc0382f9d4a9751205bf4a461f66826f2731648168828914d526947caa26d59ee043cb9c3adf40aaaaa3d6980489e585a5f6da4bee54b1a07159635bbd714f300594079d7cc69c7cc49d7cc4917cc4917cc48d1cec3396f44bb6cc73cedc13eeec53aeccf3b301520c252f66e14bac80829554f1855182a214a048f6a9cbffc60187728298e47b99e47b99e41b768739c0d0f9ea1e1bc34513e77983654acb84a5a6eac58900dde5fe3f9637393c28629d678318b489d4d7640b7dfc84258e40e8fc48b19ec326c761f74c6c94a93f8136a85ce187643c60a7a3cefccc2a9063529fc4dbc9e9b29754caa9cf705dac4b26b69cc9f853d29ffc510b43c84910e9a553bbf86467ed74c10f931a3a11866a4d8265a852174550347f9a69e40d1f4c1d97579c59babb540f27968aaa32a19d0240e095d1dca7a357caa00ac3b4506a4ea00ee7ab8eaca0182f40cfc58155cebc93028999acc09b07198bae38a5c30f05bbbe096953888e0b9cd44d1ee2b04ce84387122ec867f1db626c5fcb146ca1efa5e0860ec95d085517a0a43867b49bb4366921469fb1fd11ae812408a8c0d020412a0d50b4f37233313541287da8de49164818df81e59c020c2210209c74b952352951837ef57ab4857239c0596211d0635268fc3ef4f3e51477fd0306fd16c7456df15b7c48763aecf6fb84f582cebbb80377c5156d35ae81eae33a9ac2f214474e6ddfec1b590667bcb9739063fdf53b0356ee65d1c0f7c450bc1cbfda8b84bdfd3a0fb45813fa1e1cf26b4ff7b45c3e62fb46c4911e9dc72942151d2e9546812b014095092e2dc83ed822d3fdd5de3894709250404733c3a135259ed95dc91e7d2932245d4a19b0baccd88165bf69b377908d9e3c46f22daa79a11b84b863404ed3fc0a0edc9e855247e1408efd9fe93ca59c91e24814d973e4b8a24dc357a2585f1b9433bc4fb6d7164de405dbfb300e56c08de73f50db7d931e7b1e0344d3a076f403fcb6b16d55cc67c5a66d7fa3bd7b71bc977638192385867cb68b3ddcc47a4008ac35822be71c7ab420cdfcd1559fd73870b3bcf9d992f333c2686368263acfab2bbde4399732e5b6349c2512855c15124542792790e8d6fc12db8618bfd6062045a88fb0381bd58cb9b9bc740f88d84fdbbe8c0e1798f51408fd8df950d1e5de3deea3268c3238f553a465efb15d534b895d48bab8074400d21eba3b67f142445d6d85941becf222bfe382ef0525a3772735cd38b9e557cd29708cf3f18d95936ae617abb39296e6eeac91f54934a4a02486858709d0029e0900fc5a3e1deda7076d75964e48301af85f355def386a0329615708d94f748e6a8509646377a0c0a89c0f8cf817b977711230b6b9268e63cd8ff7abf74f8390724f7663d1254dc7a8d45f29db8113b29f7e3f74734da6232e0404214e1068cc55f420e7176fcab8124bad3f7566a6e53050b4079cc3c5c88814c248f43c7ed4c246f1fbf83e626d68b9d4199958fce75935d719a1c99f7e64dbd7b734da29a1fd8812c8e4e7f84af2173ed7ea41c23a1b27db26bfa59f37b33b49257e36fe88405b87596ab89d453e7ed43d66ceae034746367e72d70f891b9b41649901527f13ecd020a57bfa41ca28195613e290d626ad1e24d790fa9cce8d8d5eb91f7125cde39fc58157a465e21652ad1565eaa1de3842cf24dfe055b144b88a2214ae0f7c14fa5ff115bbafd79d74c66d3605c1748769d0a392436c5bd1948a03a62d61d9e5e273b05d1ca808357ff02c3b849799f97e1e16b2fc6c6ca4431f3b61bb2bb346423624bb17a614b5a0de64b4b3d61691779477b040510b2ea4bd464d24d0864e406c53203a178153e8f10f8aa2815df70ee6ba6988858264dc5f4f7c4540f599cea340844aa811650518cd608b5261e919a4e7649b968f7945f091d03b9d226acdc5993d6fe3aa11b109982467dd2d10532f9fe01bbbf31465c3582504932c58b2212807bd33e2d22adc8949bcc0d1c64cbbd7d62da63a8614bbdd11e8803efad6583f9f3c38392c6bbb18f0aa5633c70e51b32eacf90f2f644d02a5f758ef5869351822049f3c7d7655bb91a4415782b6c39fd360b08f3615f48053fb03cca22e4ba721286a9017b18963fe3528a943dd2ea39d0f8f179b2b32257fda3127ed6bfa654741db700564614f9ee6ae6d9029edd740338e9a05bf6d021f13518dec765a070fec17368159db416175e9cb36543339eebe24b4630e7639e5d9ee2f603f5005ce87fbbbff35d81fdf33a40e659e94484646aec1416f5900f05a428c05169505fe697c30c444dbfb78b1f7d82d60ad162e96346e11d742fe1ea31d13a5eec1133a58b94f157860127b82916f7cb45bd8677a4ba8e53048c967077759c30843e75dd01ea390d00387cbf5e0522a22169fbb386a130b3d8183a41cf0276fd9d8650693b171cf9c23ba3bf015fba212cf455f13acbcca878db8c582b5410a2acf38ec9c3c391b8fbd5b21d720f6ce87e04c41856883f9f2ec726a50bcf8218472b9f3039b41112fde499842151c0dcf8b10714455ac93ce7c8d8f68c56132c8702b4272e19b7d2e2835899aef5333a9fb0eb9eae8a9341e0ed2330ea4e10a924495f3081ef10f07eb2f33e2ab1f9e940a5f81b02fa78ffc3a4a670eca89cd1bb3f91a85bc7cb28d9f0f585073e074bcef410c34e33800868932aa35b1c9340c4c0010981111b2df30adb28f81944bb59317dd046d00a096ee554e588e966390a6d8a046e0b92290b12eb979584ab5aabcdc35a4d8a68445d0a9f145d4b744e5bb354ef8df8236396d15a823c38cecf09db50b68ee9872617433550e70aa0bdc32c8aa9d66c70354146e339bb8770e990b6eac96c4e1b57eedf61006f94818799baba2424e2cc7509637224b6c10475bad60c858e018b60075bd850f176c927bf1748d62185de80fdfaeb12f4108ced20b0c7d0142180a10aa7290e898062aae265c5851edb286be8718f28f7c128c47196e8d2e398a1ab110bf5b14110a18575968ce5dc982eeba228e92677198a3ab68f5f6a5d5250f3f4f7708ba415dfd6731d2ffb8323f6ca1b4e064f4f8587c6c62bfd0bcd4702a6385cf734fa1bb5008722bcba81810e31c37e6ebea028e9eba8739abcb50639b6a792d37ac52b7c928beabd5279bf701ca5d88c7ac62742152651cbcea37cc23ab3739538ee6032479c884f3c3682af45c5073674cdf4ca114279404ee5781b337dcad3c6991fb765ea23291d9360d9d84b5c55343a436c52300ad42ddf6bc8e995caef0e11dc501ab54fb09f3285cbdca95d8af9ec892a151b0ebe9eca7c23e7bd19806bf0568457feb12590f85fc724b3197f8e4d55b30816737c4624e5063c1a21d74d2fa64402fbbbf940ac5a073652861a66158ce7e5a59d97cedc45d61f8d966728917bba3c8fe052b4b25df858b44403f91399755e18da01419626795e50cc4830b907c9aa7a13c1052f88550535ab8bc14defc0996f8a9beaf15d80d9f9ec705f936c2b9a1a402f8e5d4b0deb42acdde58f7427dc065391710ceedd19c98f1611c12c0856b59d0e88aa5aa092ce8a3aee4bf8b3592a8548c0554e283504b8b2cf5bb921ce0bd4293c5b5157c33680652333fc34d54ac608d7550d20b89c06320279f210a43a4d7ecb7733bab2535d9d315d075896636a3277860411060eb48c454dffe2324e0b54736fdc1d4d1acd53ad20982a15e1fced02a8b19729866a4cc1259b42d7ab19fcc714d6d2edc3c74532197f4b7bcb8827323162c114ae79e27a1bf5af94e6bd3feae6c54267055b2deb0fdea00f521c9fde80381567fc3c744c54174bd4d9e542b2a40e00b1b9b2ab946094a6a80f55d792d1214de474e89ccd3833b94079073134ed295284ccb33f0869bdc4d51d7f18c2bc295ea9e0cf1a86486525897f3e99d989cf79b1e31714e810a7f836583610bd49bb20fb1d59d08d69925649612f678c8b657e08ba6065a876a7d9dc8f857f1ad96a7ab3a54612b5e8d93a5d3df0a275a7efde7efdd3e46e0e51edbebbb9529d823926297ffad2f53467a9dbdd284a46f68d8b0064910015fa1a2260fd56eb94bdd7b896f7bc1b20beca9d7ccd2b5fc3227b1dccf3f6651254caab58a3d6cd930bf108502a00c3dc1f52832e8aa58ffca6ab7b7a9c02d337c21c418858a1c662d2b2e36b80e9cbb3ad1c967a765c5f1e17248cbafc0de4e18dc348ac88ed879ac4969fd2ae56df0e8d2892e1c09abc904b4a709a4caa2be90b4662c82e27d04b2ec87ee14931a601e899a3c5166c78965f446eddcaff3248d1e83634fa95abb8a389e9e30eddd0b04c93934bf0b78286a836436e7886c21a342a0cc89d7240d15c278d6673ec8a4265a5df5269a0e45ebbc7a217745e4f9f049737a3a56b7c7e4056534d6cd1b8a64554aa43212b61bed299063995ee4685b8d6fac2fda0bae4c6a9571a695119c27ef6fe53b92fbe187a54c2706fa992392bca3554726084eaab7f282adda4933f5cad087eb6528ce8af0fd60a8f232a54e791f5f374b57657e1d597a2ab3b9cef6fe108ddb4e8fc04a94ea10ba7b110d9b761600fb6d982b88f88d20cc1b581de941b854eb3ac588e7b4083092dcb2eb54805a363175149df4a10821d3c7b9e50f61ddb430fd46be68098364ea1a604ccd4783cb88b007dc7b227b98ec599f2db00037560bafb1745aa38ba2a81339681a491872137331978883d4427a7dd1ff91c67ccb089223c5760c5ee76cd93657e537eb51f6fd99d75bc52aa619125ef335dd92e8ea17f41f88e845a3cf49fc2a6d166ba44853f194362eb5c71a711a0ada0d6024d0758a13e0762f2ac575357b746e297e7b3b5a557de02b964289ecf2c67d16a61c598f77780d21b8ba22e0f637ecde019bb150624f90831d517e62297148c4f3730ec63072e798e01639cee5edeabc9abbaf9984dfd776038df69eb2f4d1ad89756632068747dde899db717a3d54f47d64dc5baf286c47798ef1a60a4082707062beaaf1816fdcfb51caa6261efaca674158d974968102fef1b110850ff4ca5315eb28c8848eaf04a7f62e7f45197a8141a298aaacddbe67a532dfd222c80edc904016e99756abf7244a11cb356260cad802f6fb2510ef615d935ce1232cc463c204b773f954662c2509455ca15d546f7fb1b83b2a28db9432b4ef620918a0646939403f2e981b2d4b7bfb8e91add8695bf8a2665f4e714f4a0e913306c02a8f9b29956e07941674e7c675052176683fcd65f927fc933d6e584189e23b174f5d2ad572d35dbcf3ba7e03c755d9aa8a606dbe94f729818a549fa7d45035758948577e11c4933837588396b981713144816cc0c51d3368b1c4fdd8c12f1f621f8f0ece6d2959b498e5c963d692f8e3ebb30c79ff8918d282d87a8117cf01ee49fd534e97275f93fc92a856a1b4c68ff0e8ae3ef7d950e27706b5161f5053ff48fb12f111d8ebd2f9493a1f4c99152deb56a8ada53cc979b3a3349a8ce5f8513f7c4213fe160c1e8390d283ba17feaa4a2589be1f106bb36513a2149a0c888cbd379b1da8149418a23b4cf078b1bc8e2c5003f0d875c80a1a0694c04e7cec8d0527346cc5ab39927ddb733eacbc13962cb2420932aa6e17d2e371caaa98f5035e1bb20bb472a237ac8adeaa18680ca3778c24f8116fde27a0e4ac4484009ce5c800ab27ec6f3390f19f908f0e0d0639b3f93ad2b8f1f336a6e268f3e5921cdbb7ff37034f6aec3fb999134678d1229599bbe5d5cb313f1032647a91b3682ec74cba3a54355d1640742b3c4bbcbff60c9602875aaaac97f53fb8b9db46b4951b44c0edf43eb8f5db9045a39d012259127cd5848bfd03c1f9d95ef3146601d8ce1831f854ff07d5b233bc04c6437d24a995a144cc9e7ca14004dfd22c5af99c3de344412810e4a7b9ed746824ddbb70a88988e583bb2f2a8084dc8ff7a513032a107807e4dd4885c63f2875118e168f5aa7091286668d624eb3e84cd2e20f9abb056c2d3b17f729d99de034eb190045a9ddabb7d9e1b5c214ec7721aec9c9ce537d144258323d7d0ce0722d9bec8e5ed6ac158f7f79b98e0ddd48986790b98bd1558240a026b4162ec95f0361dde8266e4ad643c873836daa4b6fa8913009bad04db9fee6e2f337016df3fabbdbaa7b50c1eefea3fb53257f6a1d62ba23497a94697ebd12ea932e808f7698d461a9efd173c9b07d9b07a3d21e3c71f575d940d4935dc8a0b8eb5259d9ce64c64fb09b0576eff6908a49c7ecf9621913c5e8cd15bfbc58f55712dae5294e83ed8abed29574d950cfa9b05ede4dc781443899b5dd6e3856d0127cf165ac49eb7c59017eec7e91fc7f7bb35a5ac5fe9e1bda73d2594c5ba652e5ef9d8f27c165cba74cf883e48a5c2063dd6a04094de259c2c1d367ff31bfc8f3f68bfbd83cd3fd58122f23250c6b65194417f4dd058317f70b2bdfaf499dfcc908000b9ef265db8a431fab88f204d80afbdb5df6a31b3e33c83c9dd59d3e9c5c04a8898ab4a5d8854dda9d7ef827cabb661708c5c18c6548d484a42d115b8a3ef294850e772eb2c556144800ee3065268ecec2c54f312620709dad5adcb07dea65d3bd9c8076131070f0ba3c769e53be0c4372a6a87d500c355fb51ad92c6912fbd2f68c5f278a4a3496560183b68a80d68e5142828a8db2ffbf0ac210b2b7f9fa4c58e354c020f65f242535b5477b7d9025cfb0b56e47e4ec98f53c7b8f89372d62f90f96c0d2492ad14ab26de77c304d1ba192ba88743ba87cb1a7088fe17afd85c5ec05398db0d9d66d85ae6d51d9546b0db8e138d7871e81e1b4cfb1c0cfad6f6a91e61acc97cca04fec8ff734e7712af594082008f2bfdcd91c28fdb9c5e5d610f0e91c2ab6bdfaef5dd2eec3b65edf4fa545132b78476c6d4192d39d4659127d3cb025d59564ab7c43cd266b746f79883ef9513a6f3f6aeb7093e3d163cca55b3a68b1783cb544c919514e7467d18511859c33ce4b2278478df2bddd8798958eff6aaf32dd9d92278ccedcbb278ef798b17540dd4e293b2179eaff7c2cbab43acaccfdf0af55371aa2bda2b9cb2d60c0dede6d77c63ed9e08e34681fd1a15595595c7471c3396ad64fd3b33ac65d6e1be014fec30b51374b34274d8c754a83e09a27105115a936c6fb7cb090ae02a5a414d543fbef7dc93b5dce9ae83574b4e57b92c62e82b7f7974770a31e6e98924df7aa9a2fac966dfecb16898e78a8600d1e766440dac5d69303e047746f3c500f213cd82fe32320f327e08a5f8a4b49a64882c0fd0f6ab6669330f52a8ca66b607f790eb11a3a89129a89b56860830fb9b726b7699dd01a44a531920d6bc4665bcba29c44ebe02f9aed1b12176d8047687ffb34bcb6de783535401101eac3aa5bf7ea189f6dd6f23d4651c9571de3285631f6dd44c1cef517758c411e13a8a8bf80d0aba2fc734db7186f7609a6a1c76a23a948600438832a547018e8bc0152a60f9957398eba9b2731c44788b3feefaa53c845c7d496b2323aad90adaa585aed6d784523a3e966e4fb200b1d3b7d62b82a0348ec003a2f4c271cadbdb31ff80330e1bffc70a841460e949c78bdb0c4db293e312aab5043293a5dde4718d9795f91b66ad373962ab41e5e18b9ef6c54de5656bc3486d7fcfcc826cdd372f36fb40e7d4d305c0b9f8a71fe2bcf8f00411122c7c6c74aa24e525886c2456f4ee193a6f9405d776aba48aa9233e95b7580344eda88800e75fde34a99ff95ae787da830d3552417d8a2b82f9d72842d49557af7e388673416e91de6b864c39c8569054b2a0866d0925b33695e6d3f29c13f591ee8dafb80a4ad3df0beb8c6cc9fde3c0a860e5ccf4313d660a4789589269aa5e7821135164066443afd1e496e6907e4c35ce0bf808a0255a14bc549f829b0bac360ed3747b25ccdd2947356f17a6e47f5c6d629e20255ff76da04dc3bd01f350c000c4b32c9552c511677d089ddc9395b288c111e7908e11527a8d0fcac6069dc145886117b5d51c4a66927762583c3dd1608d52c6a9c60df00e9405c7e3c864603ecdeedc8d96b4fd34114bb9f0f757d4143940a04fe8cc56f85f5b00456537ad86e55bdd9e8903327620c685992b9ccc392d1c30c36d62ee8a316dc760f5121a5af058f9c8db49f44a5ab14fdb90ff658a939330a538f84726ca7cddcb65e86ec67e76afd7f62f506b98529ed79587a42a554c7aef57d8cdabfc80f4b9e886fd9b4641faa69372b1a459f90a9ceee97892fd838de59840cacfea2be023776c02597faefefe02d2b8600130329746b68057a95b30298e0e8a3e046ba1b22d373d38f389a5f046fd65767d77cf2a6fe0d2e2d7586182738d6a08085b87c4201fc998bffea6e92dd6a70c4ccc33df996d9cdaefc7c3b7f1a51be27ba1cd895525c21d66c1804e783fa6c74fb2821fab7cc472f5a58ebc0fc3b6d2ee04629b80661b7037fa06052df2322d35d5872a66e1abfc6b06395b45ba7797d3de6dd2441b2bb82899a9770d684877126a2d3d162fc33d33ae5314ba475beef1b665a97138c2cdf1a3a9c293c0e530c506d6bc61f199d9188d2e8ac4b74bac942371d04ba73abab836fd5a8efff8c13c93c6f4ca6e3d74d84da413dcdab654e55d04a837ea2f4f0a67557a586171460f0358ecb7a91104d74c6ce6a835b1174b283d32de13fe23ff03cb02bf9708ecb144345e98311fea797b8c49cdacecdb7c32b8a9e18c4c7cb049be8c91dd408bf2aea9cbb81ca653889be85b6bc9c2640c0e19202a15cd2b6bed0a73720188d4e68363b85531d73ea55a58e2013561c3a4b88f7993cf1946512d28f1913551926d5fd9031f19461d27452bf1811575a99a9b026edfd143fe194f528fa5345d5346df6006e6b05feb11540809300be7b83eb88835ac1d40a3be10dc56d51f52ae0d5d190a5b54725c67ad7d5a11cb4b5e9e03c407f9ba9240102df4532b9dd1618eb5691a1ff9c961fe1bda0a453a76ca07d399bb85def840f8a1e876a03c97315f22de2b36de32dc1330d6acf6dabe79bc8e96449dcb6bd785d6c94e7463457770eec96379d4f13a2f14ffa3a401b37703f08b3bcc50c6800edd955e70fd423973b40d0438613a85301cb8e8de456c4db9375f1d5012896bc6e19547b54416919449a0aba6f0098a7d41b146dc991dc29446423593a3b0b4d4d877feb7d63dcd109fc6439cb7ce3fdc11b9971392fd6a8c5a30308d55412c80228ddc9c33461e5f488f3ee9587eb8b8ec25477a68e54fdbaafd0b490db82a2e8bf10c699c181e5abe4f454b4b355ee5ffb5686f2e466e5f3d03060b0c2c1566de3e26ee1fc79cb27e23dc8e71a4201e64962c518654101636b6d914c91fc0ff2dac4bce05b41d7f2312b137c1e26e75b597595098bedee6e6ca4cb5da549618a9590fe47714751c316adcb5f824a3041539995a05b375c9e96fa6a44e74fbdf21b99c5a67eef40c8caa939474d95e218375d3e532ca45eeeb29072d6996a272c05dc035f9f01b08d03faf3bae0043df5f89cdcb4c5a0e94d4ef6f08637a7f4c83f22217700c7f06abccd0c0e2d526415d9fc2a73057fc2f6fa89530f349a9acc9c406ea3b213a8cbc08db39ff483a1259360675c77b70d4c26a38480620170a760f4746d157fdeb5500b4412d38397b24a48564a36349899b957462005d8dd299c8a823bf067a3e8a69b76e941064443f42cbb54a6be6c67ffec81063284e5d38e61530de77edabf1b987f539571f4873314f7fc9f688b9fb82f0f517d2fe099b523afaa89be93d85067e490c4e52766ecc4c8775055370c888e28fc756fb4b1d45e115d8614cb79dd5dc068c72dd3d0c418aac3fb3c3c073aec2b14f41c03a656d9d94cd406c9a4bb88dd4ead16198395e2ca57c70590dfc0bfb6f13313bb07c5c69c5e6393ded5a0dbf01180be0dace2fa2bdc0a3da7d414f052c1812beb6a4e8e1af292b501b5c2a7b44f1620c297cc41027e289e696c73fbba1e04c73e2c8aac49965c5c8bd15fdecba6c8362a3285db6308cee66fb22aa0fd8c763e26c2551bd4f89cd2d9e0b6827d60ba2285d4e7f828e2a3397d04fead33c7ebcc3ec612e83480cf3f77510380a0fef748c6bb311242309ad7cca74f000d94dd927113fc9f2f0fda1589a8e83a088df7ee81c7ab86171eb311fa5a6eac5e72c3d1186882b9ae5c4003368f2807d6f46bbf3d441b496680dd773a2e8acd047480d0af9cdfcc60016eecd3fd2fedbb7dc8dac8e5b277c0ecd55b0205a7af6f6f27267f706b6cb3350c4fa4dc2777ff8958aac557aa4dfcc55723d28a124e97f80eb87dddaa4f49cbef8812ba86052c088e5854d524ace28597f797c45d63ce5c3d521bf65346c55528cff46e5dd17b88e311a8fc4698442c1bd61ec34b5ad2c1cec49cfe9ebc373d1dc1a37ed2394a4edb67d39b83f82b38232fa0708a5f04466791acc201c85c375bc0956704b570dc180811c1a3847b9581b5057ae928ffbe885c9ccf44c3a8e364058cc8913d5c18ed44d1e7c9d55e20a8cbe670ab4e41cba18c6132549e2577a0caf8d2fb48f30e55fc7d701094e7ca62299a3afc08d27257f5d65ab3822e4f92ab5bb95601da5fb89d953d0a4ae066f66a0e20c0d0846894fe81e7ed2334816896b01cf9b2b22981399d6122e4376e6b0f93fba7531d10c990ff073e8eb663114fa0d85a79769c9b803fe6b1ce3f666884c038fa2be749d47c34a2513f52d7a220411ed117abe229854f5a09d58c682f91d6be1d4e987fa12d8f15db80d15e96b4e2f80e3c652cf37f8a24ceeeed63d5a0ae14df902858866894a24dc38c50eb90225e4fdb363f480d01c817a5a90dba609e272fa8eba063c9dc5469da36b9db6106e6cc54d2a766b83b8da12baff35cb9cfca1296fb5fd698077fa465823e08cb2631b88ff3986be1b4929213a1cd5443dc4ddaceaf4bac10e7538f13407cfa062cd7b8d2b2a4c74c0359d60ccdd138b66ea948d8b00dd070029344875a92d6f0fca91a6d3967e3a18659d381bf461e784e3ef0d083dde06302da3865ac75d138fbb1f77b438c122d8f1205eedcca09bdb00c3bf8c71fbfe7d4ccd40a14561c8e9f1d8e06c845c2a61eb873b1bb09bf63d2ca675edb12085ba18a1937b8a9a62c4a6391c008abda911d01f8ff68e481e158958413296c68f346b6594f6bb63a83666d211018d3e80968dd7092ac93eb57ecaa46548c695a50f286cc0ad0ea88fd8017df5c7494aa142e554b3b54ac90342bde88c1179b3b54fa09f511ee8668f11d613d4a1349c6131e4786f31b39256679f2de5ec4e83ad0d9a9c8c547bfc89d1fc756188c4ff44d18813b8eef9a9a34a1d94a998229396689b6939bd58128448409bfb143a804fb56c26e868d47185d17a3f084f33f8aeb9cb24c9d259277b58f7623fe7432c945940f07b6ab0b7cbdd3e252f306356021dd1bcd1eb03ebf232961d81c10a2207308b7c1d3f11b463b14cc7e65fba3e52dea705178cf468b3238e67fb379ab1714be4b57c93c3a67e02cb55f66e7f9cf17185b9b5107f13c5254c0c2c87d1060e0305f85a2b3323bac2f4458ac7ce6831fee93ee1c69dde1f991b3212436c1550c234acb186a8e1cb13ae44a57076a475279fc8e8be01d8cadf7183401568283c12f3b9ec8ebcd262352f4ae1bc7489305fbb99a876a137ae139fdc471a6a5bed80651f12b9ad79207c2173fc77077056fddfc5ec5fe5b48c8c7755e28c99a002e8bd25905852f0da55efbc88df9c37c67bb95ef5d7827b2db968160b6cbc21a19b2b67826d6d914e9f9d8da21232e655aad36586700ab8ce013f3662e0d0a4ab93d6923d8296bf90e652e4f52150b576fe5be60a7aee6ef372576455122fa9527c2cc6a1782a8d964fba7a154bbc642feabee95b2319f1c13c38817b343bc7031eca4dbe1048b3514c7753abefc7e41134f745011d7eef7c5f9609dc262763a5e4757f13ab764f687d4fa9c307e6621bcf8e0c8ecc119dc5ed2af91eb00d237d4d503ad861baea9208d15b147edc380aa1c6a4e14c064db2c0d354729d7f0517870bd0dd98463dee72593cdfffc118a40f7cc1bcaf41c65e66e3189fb1241e3c53046f5f0671794b1e03f566051bf33283b4cb51ee0d25cb3efbaff9502901657c0b9f43a80b385865c24970753584fe216d6e92ee31091b6aa6f9584937148b5bd4ef72b7965d6fe79a885537d0055f98682751831c388d187e8fe740fd8f417c9960d2e693eeecfacba1a760bfa6d34f6265d305d1c5dfd3320e85e36fbd9cc0926e7701d6280e5dce29ad82b4ff63b63135286b748ea8102ab33be3884b3c18c4059ccf0b1786d5f2ea75122e7dc0b6a5bc81720e02477f63a0d84b46cca7568ba864696e24e08e3cae8d5c83d60d2490c7089ad7b82876646492328e7070ea8c2f0ebc408963b598e33b602fb709ff580217dd87c352185e6c3a35e5e068ae003356bb5f95670be7cb902bf97cdfbbe9aae835755b496cb8a4efdf484d42d6bb1047bedceb00dc9f988f0450d8f71dd697fbb88e850f905adcd30e36bd845744fce54aeb32a66c0609ba4b380c50b5312c5aa16c3a5b626407b8cae475770747a130cd5aafb369d661cd611892d4d593b22e7e6e013066056fd04c26abf85022fe264c01f2039f4198203235148dc4aaa01f1128b66185716142bc0b96ab97d2f44018335c0cebe40a997cc792618b379d9904701890333cb779d4fc0621d88e34ee682126b1c558ec30aeaa16a560fa1051bccde007b3fb7423381ad600f441fb7fd7e5f8ff6afc5cdbd35bf063dbf737233a12eae429085fa4665ab52a9e3da1242aa92bbc8f536539a5f7a58f9eccfa51799128096eaeb937c3741976093cbd745317e752da0e04b4b2176a6230cd3c68341578fd932425c2cc0cc3ccf21dcdf58f534f02d8714aa98b4b3678831c3b4a83d0da8152315e628e26fa0e7b710149953dcf6d0f17a027010fe53db65c34d5728d48b255abeccb52b3e97ecb579640b37fb15bc52f32e873a5e491756762ca435c95da1bc38c0021786725d8ebb57bb825b71c9f51b123c03d4852900d25105aca3089e24b4703a8f3c9b1d01e8ab54333628d695ab51bec6cf99fde7ab3fc06806d04ae5d6edcac8e44683b34953f355b14adc20e86917185db8e62861aeee78254e025e572dcce5cc87073720ad62a5a1b9d28a79e9cfe87de4bc1314db8983c96523a6a015a566c5d43e2dd73d9c5a9ff705965cc7dd7b5500e45a1a242f440dbec7e5e623ae5f355adb3c275aaf45db57ed588f8fa26966f4b5c22f2425454f316324d0f77e1c005c11c43718e440e0c22b5bab614239ef2316f65582c1d8c66e0b63aead4f16b4f599d0b3807baeaf3fa9f3e3271e1ee486795ab519fda76e576703caf88ea0cf76f88ef6c4b394d47df697582892bd5a90a5c8f00656ca38e04d04beb24551c75169f14863a1111259ff8a522cfc16808e6bb84bb004eba32eb67a2e2503198a6c821db64a01c1d789024bda4f23e2601717195aa4721778a8f1a1ccb036f0f61c4fa16e9e26f3557b6b634a9d6d4c5df11dce0c1993001fa23631ff5bb3fa816aa4342a8b82d4895f275bc333a96e85d580a33309476d91d4c9f7a306da6c379b1a58aaf6983d56d7bafe3c73d327d426c33694e85405acd79809962483740726d74eb52b55e87a906a2e2fa682229be69ef23d6291594c94e9c87f886b57a9dad0742aa40bf064eed52b0bc1ad3145c0b43b903ece8c34a91aaaf7f64382e129520b5b9cacc5ed9c496138b84cad46cc6de27b10a8e7bf72d6e7d68629e8baf747acbaffa95411c17e823495cec99f48c5e9061538c2559d04d89b99f8c40c5b7c7b5fc47de5d974e2013aeb11eb4a8869d6d57c020e5c31ad8f0841d19f100b78efbb01d34fbaf68cc09c7683dacb4a04241cf3abdc24dad9cbf14a817161d8053982b9aa5767598b7484269f33b452f63bf432bb54f8742cf47b57bec7dc0ae2ce6c8ed954e741eec78b632c0ea9dbeee1f43a84be674840c74f8ee21b2d6033794dc4b5743035dc0648926c8228ed087c2df44680743eb52545d7d5dff2d5ecccbd420038715accd0d5e5c2bd05fd3f4d618c2f43991edacfa94d01cf1e8cc4b8be4201cecbcc8e660fd4845d6975b8d8c5d085441b6e12d0eef2ae09009d6802318554abf527064599e327e289257fd310961fae525cdd3e907b5520dd88847ac2ada2607f9b33918331070a84350fc4c403d9056294b73acdfc5b75442b18d372a7efc44a2ceea98d18e3adc88b7305c7f2dc987f346b88d21ae8728d8b1ed27a95ad1357c13261dc9fbd71c3375ddf8970c44bf640ed615b930558916a4dd4f40b5f068d73d1b1c8b9228f1fbe375cc56df2cf66ab7a2766965ad4fb92cfe4e8083e306ebef8e5bc5c7e0de9ac351b57aec7a9d48e3c2b5d23e423e865064ea2e76f59aea617df47a8d895f5ae27eb34ebffcf65f0ac2d29835f6cdb75ab805e1a154c3f69e1ead478847d9289c3de8300e387ffbf1d68a8a3a07399de15e6eecf83f41d1249e7049a9a27205de4e3f4de5dca4734a6939d002027359aa2031a0dfaccf6c832509cfd6e588efab8c6d75d81da52e79e9a5406ff3e13a589e348528c793ecf18453bfabfe1cdba01eb679477605bd75f2299649721ce3274fdd88cfa6e4b3e2313fa3513c46fdbffee7db05e1eeaa3b190d2a2b6753ec5a3923c7d38196dc9368a0d0bbc121aaa4b5848c1f2a227df878757cdf6722aa22b39b5c8fb4868921b77391bc0db0ef6988034c453701b555fcd598c43a9c03018b4b03323d66846eac65bd164e240624668fb07c86eb1c93375428668b1685798f11bc7ea8c26d3dd8345ddf3548b5ddef15f581cab8bdb644d384b4d03685a95f3035c63d805052c279510c9fc84c97d8a038223a179b115721e20379c200dfcc7d76115272e5362182ceb2dbc219e4d17963cdf0c96db95901b3e7ae1fba1c85e7d3cb11e2c92d95acceaf60ac6ed7bdab1438420e2b19899265c897df12f678ca56d51cbde2202f850ba1a67c74c8cf7add78ea040bae1854ebd7e54f4723fc8e1f2f90fb673046ca908659f340babd0ca5780b6505f073c27789fdf70c116c95cb316400fad8b52d9ed0253226edd9915091080e7a41b0f6ce948840fb5c66255704e04bf0f2a12edb0007d02632c694f3fd4e1edf289bb0c7fbccdbe00cb3c0f0ab66d17bfd0b2ed79c7da45fc60531df678134f365542001cb53c05e09a2aaa83bceebc41f1bf559308a5049c32023858c9dcd293c0546e662bcfa1c78a5a9e3f391df4a1941bc942f7c207cd93ee5db975f7964b23776efe8568e190e9fd6a90b35582f5376f672c1e4797b183326ac035e15f9e156b85106f28556931e7aee461c1ffbf61b42f72c081828ac92dee6541f60f212a0b1a77dcbd12737ea72231cfc55777e32711a83d3677e7347d32340df1833ecb4d63fde4dd9a3d2c65e5fe383db6a065f62e4d005d829bb0400d93366c18b455f820b12d9140d72da2da06a65d08b8f427b8873cf0a3b481d0f0efc808af4208f55fdf827638c9b32adc69434eb7ec482ce23fd1abc01f302c0af0344811066c784e980db54dc4016c5e4deefc755f5814c99a9ff2384f9d14b0a576461ca57f50cbb7b1c9f3aff965d760ba25070421a14df7641c1fa6f2ef65c69e402f067d44c92f041c297b118e882a605da867d36f1e12ee2863b03102513569e20e859d877814f5031304c9827435cd266213fb89731b7e870f6ddf41b793d6ed74c0c1a0bf82e034532c0e3ed715e243a4221ab40b143883c2bc5a452855145541c0ee046f9dc16d26163dec3d4ec29335735e883ee5f4aa019a9129c84b6b4c51ff0fdfbe1f1e94c4ee935dc3bec326ff3acd4eb7eadc509726963eee411dfee00a5cf6019b6da27f5a218f717e3d583d0a852745dedc7158c55005c2b363f1ef42f3227a1a12d8a8408dc80199f14903ec2b999d305e3087e89f37c3de04c6902894e4b21fa255c22273a8a7f4691b1413164cca818a18b42459a9d07849ccccd75a7a489edb9817b989356236a38eaa593b860d86252c9f86601d26d95c22e874c38a19725ba26b115a665d0b589fedf6906ae10de8ae4202f6f3bf536bd822f0013635e5fc266dea5ed4819677fa1905ea4d459291be1d506488b3e644a2495370579e32ccf85e45954854d1efc5bc49ece0a21d4244c8af3357beec50d6ea42a8b469271c38a8ab164d6f71af85735582c8a2a2461a3884869fa675b08124ec4bee1a8b358d03993d78569192e256f6da30e884e596d959cf56077ade72b1686891b295b4d8867adb913a66521313a8d6c4600f719c292285b9e01198d7ddbca006932175ad1b81a3f0bda45f5dcebe2f02b0191f59c3fc42cb9e1f20bedc921e3c519b1132f560600880cf82868612db0df9f3d3698d9fa820ba62faaebe300fe8d8da35b927280a8c9c447ac4ee278c0c6875e61a784b9a3d7ef0369edbea77a3b565a2dcb2a726771fa6788d18a0a552bc80a86e49d45100370cfb9e3f669313afbb8491e32894443c9359a041fb765192954235fe8aa47e73805daef4e13891e0e9decdcd0fa0f0a08156660602273af203b8ad829af28312a7af57c214213c0668a38f402d94b79cc03223e7cce1033c1367d6f75a6547aca5ed4efd8f12e3d157839a3a7928687068cd03e676d7dd37191a604498d14b59a40ed1757be42927c46d1f2013c8aa4671c6424a8e10b6193d9c33ac54f9e290bd8b80cbaadd7df8cb98a930b470af5d4af39ab27de38f6f0eaeb165e5536c41807348c26b4a64e877daa3298dc418a18fa7cbf5d25bea7dad05618bfed054b58001413791461062a493a5c4d02d50f71698ea134ecb92e04b4421893a23ad19a7804945dc71799fe8215c6a7f91bed424798bab25e7fe634ca22f706a7fdfcb6e5c39f6013748a34821748c49bda32fdce67f1e350e528d312649e5b590fd8ae715ea3678327c6a0d58331dec161a9374fbed5331c932bcb13149fc4d58243b28072ae751975f4d9430f1be3d8600bddb071262802a0363f2502b57c8c0f8944f6fb02ac96740dac967233eb56519fc6c2ff466540d6d8c6cf0a2ddf164b6d6331902e1f2cb3a4575c24dc7ff3c14b652cdd1e1707c4e24ae2cd5aeca455840e5ae6500d74eb5be1e1e208442d2b2f557010d63b2c0692eb249768f1b37150dfa52839769f05ecd023726db0d176ab1086fa50e0af868e405137e5c423953e066e84640a4a03cfa5e89ab4db023027b99492d0dcbb48c7e65b193bb6cd220fd3e336dbae76ed4c679400d6dc55c556187fe0987d17a5b0eec0693771d99ce6831584c3706f28ae9415c6c48304de83a4c9abd6c55792bcf6a4b8df87830b0e3698e12bd5471c00d3bc9f57bfd12b7a9e6810760fa8c253dc9618b863289349e923c4de281be073b22ca61ac9e3d99aa535a0d0256174b5592639cc05b0f34c75c638d58ed74e2cd23989127d4164791c48d8b4de8615ad0f9e21dece87c2e49eb0e9c8c1c69413316c478c6d86616bb79f514233ead1caa4343f65214a75f0c2f6644fa5b830696e7740237c166b0ef6cf708de34e95fd11ccb1b128ee9c5c37d16550427f6a22949f607f08dec097cbc0916ebb76c2164e946c48bea8c7793c6cfbc28c55592d70924aa7aaedfa8bef5b0b53ea600ca6236fc9a0dc840327b2d5ee28a79fca47664b4861a49a929303fe6b4cad3e39e056045ede2981f2510bcc704cb8d0669aeb0ccc918252b9c5062731c0d57a5bd85302d9983ca7960b0cdf36d6ae402935bc2959cc9d01900a78247be02ac047153171a4469a9d7af9eea7732bb62394fad6633ef5636cbf2ec8b34f0a5160df280b2399fee73376c1c01309dc3533c69f85b5a8e24c8573dc620a760fc4ea650ef233a3f2aa082b88b0359332d2bf0450259dc9ee0e567f98de1d7c810fc1fb70f14101af2009de12e4287e2f07468ba513ea01d5ec8741fc48510589824ae49c8533b4e6094b32266741a0cc199f1bc04065c079415e3b30946c0714339f1f2db0e2149dd7aa22c80edae667a27bac4f4f3368e2c8ddcdeb4d5d4ba224d535598425f1744fd1a4b4aa304653d4d45722a13083217fc59cf54e36efef703a8d08bd0d6cdab95bc015f81e9cd438c7398ff2c3c38ac13cb606c06425bc2f4d616c5173e8875474392e86d9371ab5ec05c18425490be895765955453ef272e87ea7ea142537f527e91df936e54d35f3b3c34fdb5cd264e096f739786e690feeb1b021de09020b80284d68713b887db1c2dbdec79d08fdd2bd34235187c27860412c6349650a4c36076226abdb4f925022d7d8752cc63d02da6601029d074237ef7b48c0bdb3f15a89a2fe91c67186c67671418f89c0216110121eb10baf8e28b0760a30f5ae8a34a69652bc68c066fef895950892949c4c7b0b0e6e88209391064af7a2c8dec8f90c7d4ef6f0ecfcb712f5ac2f60cdf34682782d98b29dc5e0c2d0ba3b9c9ac3cfa482946492595ed8eb701771e80f43037a4e1292d612272baf5050b17d82b2a59083ecf8c386c2286c6a81056abd018b7e2e70f290213324f39953e3f57bcc0409080017142ba3a113cda246369f15092ca9c521e01bdede6a6d4f671688e610ee8f15ce1d052617cffb4d8ac69dbb312767c67f0c4276277002f1cb12d1a89565ae1346687c29b16bb262f26095aaafc93a2e0e9ed634ceaf6911fc121f43dc6666fe99a832bb9dcc6e23dc28155529e7b03e13c6f0596a408c86ab5eed47507c3574dd00fbe6c962cd304d07774ca7b420dab811f057a87338e49097cda1ca871a371843dcb75433f69f46a0bcd3db6749aa9a7327dcc677f029210da790327605bf52a29b7016eed62094e23bda3c1f4d8027fe586f5a6c09361897d0e7cd7af40e56d7000177d7444eaf3b0353bcf53ee702d871f889fdb5180df261e914085484b2d4bd42e29cb25ae78264660c9f077417e0c8d1218203edf6b2013b7d229bf054c431b4fec8161658f8cec830424e3b022b6df530b5dcd86ab2815b2872407dd2d2da9920ebf2da0235c18b28d38577d655d0cc2861b30a1a03c0b709856d5281a51731131b25e754d58ed307f1524f8e27f196cbb11daffd1675ebb2b79e3e53a365a6345d5a9eaa30562cae80c3da7ba3856ae71be4fe4a24c17cccc0317becb45a15d8011a2a63ff8450f95c66687091528b93046ec9af19bd412d8701c3080d3d5281db77acfdb213fe0d08bc0a0c5ac840c2d8fb0fb8190cbace6debd67dc2c1fdd5ff5d4a11b1a898d57561a8f1ae52b0c272538cea310eca4958c57d59f14b24776859c018616d3d918cce8c0014139042f42df963bdce7a5a8f21cd3f868fee73f3ca013a51020f7828f116ba8a57ddadb0e4b4800219e78ad90eb91c6495c01e6ad61cb42484431c975e3cbad022b8d5f914fe9a1fa36b589f530998409bd159f2b225695b48146eddd2ab7e4954708650593831eb98a842023a4d8cc2d21fe1f6623e4ba4099eed42fda48ed3eb2631e218196d2eb9ab4936b6d4c3d050921043540c839ceb5f49e932f1524bfa0f2ff2f45ec3f82fe489c1619fec97159e199635048a36fd2770f62f13988188887b11bb78787369d2d826cb9240bee1781e537e38f01972c08edc4fe805801f43b046a3ebb9f54305e19a5031d37c835015edb806447661e656afee389626f776da7283f3a32ec57ec1644cc380863877e77ba09c84658b8c617abdbe3c07535d2693c827363cbf6e2673fc83a1242282dd97bef2df79632a59402d509de09120aec3d3d3d3d20260d620262026202622205568156c0293afca3f4493ac7d9311c3b38bb6b895eb9f2f3fc575affaebda0e88d2a574f0c298479fdb0e903319942854ddfd5f36cfa34296caaba6fa140544fe987226e9240d95411262cc5e6484f5b910397e80d7e19bdd1ae6e23c526f852ce592ab947b9acb0c73e74d01aec9f015e7d864fd825071d00e7e00a0a8451a09478c326fd18574c98f28803a3f4e9f224259d52ce5f3f51ae9f28d74f94eb27ca05a33c7be652b241d26ec23c7b155f9461c66ef68b2a668b12f02d4782e5adaef2efda1400ddea94d8ef961e0ba4550ad987d7cf65053bc226d5600af22a08e56267e36a67aff72b7d24aa4f4a234bee45291ec62244a0955f8755f8d44c3a2625c537933e6d4f38861d5af94ffa30b9e91ee9d33e1f8bfc277d3a0ab4e293808d62f9dd6d3cd2870af35b944f94ffe436aaa770a33452a3505554c1312ce5b93be9c35e0ae6277d9e77777d77f017fadd6f295453ef3617e38add1cbebaa564197c60e3831c27bada8a46a2d168240a8d46219168341a8d46a3d1c8452117a35148e45d82f1a3d16834128d44a2916814d2aa4d4774e8a5d168341a8d46a3d12834128984188546211e239128241a8946a21197b988e4a2512834f216de2ec4a8458b50a8c5c8439eb508855a8448a3d048341a8d3cd346a3d168e4bbd58c46cec22272d1a8fb4ad37170061a8d46a1d148341ab970c84ddf6d247a1122397c92e845c8c528245a91c8432d482d48a20ec8c8451eeabe918b42a250f769df246e4187dea9b4d2aa8255bf8802d9576fb4570e394b88ee6e4b95d87f51c5dc281c23487d079946227d5a1e962dc0bc3af9c1ceebf460e7e34618ccaff4bd820944c8bec65ee7e057adb152b69a175690ddb5d5b0db60533b0d3675ec564a7cc1fc4a9647ffbc2fb109b2fb42f1bed42c643f622e1d08e6d186deb8bcbd87cce2906079d51a1877591ea35b96ebc6c37aa97ac3da6a981bae465074f8b1859d7fd5c7c2024f79fd12bfe0d9bf3e2d958e615ff581737600ecdd4a592a9cc3be5436f55a83737aa1f0dcdd9347bbd7899e20c7b0f3149e9d3bd51aec96cd7cd2b35f751a17853d1dd3db285b0249cd3ffe8c091f76ca0ea03deb3e107ce4e9985e2bd86bb734ade22d87d097a7a760de2cdd579a5bc7a37553be3dbb3486e2db3fe9c593d2c48681f6c734f8cebaa5a2356c26e774b651195b2a4b85ca94201a7b41bc870fbb8df2699ec1d56ed0d744fb08d659f65a42a6309fa550d86b9f6f7ff2e445a19083aaf841ce4b4dc61fcda605542ed6545098a229ecf5c0d07881ba2f88f7218f501400ea6215a12ef6bcd8c20422645f7bb1850924e442f641fe420bf3f310d73f5d85bd175a981cc94b216f0771fb21ebca0c5551989fa7bae1831c3ea8fb46f0b1097b5f43610fd481bc24b71ad0668519a9741165a1be38c5a2a23742216edf4a437b48140a59289028141285425d103d13e45f44a5527a23e4edd9fe668539dd63153681f48688db8f72d01b486c0ae4236f172234e23a11671af100b9c8b311e7d1108db84ae4510a2bb12fea8260aff541a12e465110888b58688d540585f975eadbc90f6c5e1fe4d9a681a046e23efee9510a9bbad5495c0b8f4dd814f276e1edb1a7df5ac17432c5cd0be191c31f75df083ee45f4cc594dee06f77b1f9a73e6c84bd2ca644a0cf8b29cf425a28e4202e04e541edf35fa31eb4521e040ab2a90fb9480a7b8bfa4d85bac921a15b4da82bb1d70e7285117a10cd773dc84134bb8162aa4f6ca4635ad47da5ed3e0f759ff75f4c6d3aac0f753d65ca0cb9c83bc5269215e37239858df4c942754cc7277531c55e3baa47560a66a80302f2908bbe98e201f29067202ec7be6a0dd18b3811c720af70be1dc4d548f6e07349ec635c12f08a92fb4856a792880ea337f41bd2746ac42e80b030c2eef48a148e9405d690da2a1c918a802220d503d4ab131e58f9f9ea840769f88c854d97b584f9298fe30062079b14dbcda1cc43ef21e9a1cb167db72cd338c89e94f1ba9c3765efba1c86fbe00f79cb922d5537dfa79d64bbaeaa4964bbaa10aaaa6af7ed723ef08c55555523e4d65976d8539625cfed3233b75659d2d2a4dc6a1442083df654e615863d951006f15cb8cfc5b9cfb71a4d5b0dbba455c52c8359d69c6da62e242fb342d0c7c46bd66ff765e06127842f23e8aaaeae6a2f4308e147ea6eb90859660407b2bd79f56c35a6d1ca8387e79e8151e232c886d6c8e0a6e387ee4e4ab50cea19adb16e83bd85a0961cf1d53ff8db0b4d90b1672c3996739074c06f88d67939a08c0cdccde2aed731eb5ec7f0b680f6865d57ae03fb5ec04cc7accfc4ca22fdccc67001bc2d604e6eedeeee883df49a0ee8c03e763ab0879dccb15a637d7ddc98c004b26374ad8c45ffda72487ee819a6cb20a835a0672c3531da30fdbfebd7bf8b0170013a36ddb66ddb962508bad41aebb0935a4337c340d173545d6ce181fd3eec3e0f7c7743e25e60702155edfe75ebc4f0af71be897ce76d64e45f3f31f2af55f01bf2af6f82a8c72efeb19517ffb84a8b7f6c850cff78ca0efeb194d3ace2fd639f275ae9c5277ba763dabb4fca1dba4f4e19dd375bba97ce65c2e05e1c8677dccd144920b157dec55b6478eff4a979784706e7e231b8ea635c315d7ce42f2f2e2e5d5e5cba185c84f14224c9c7e0e0cbe08cb4b8e4f4bb70aa3560bc74ca5e0ba7cfffc211f9f5910a06f0f5133038fd18dcbe8cae8543a2099b77e990745d665920182d1c0c8fa1c5e0acef38ed188e33f20f83e42eb816241f79c9b3b8d59448246e5f37d2a8a59c533ef9cb3fb5e2d94b5cf370fd843d7612d73d2eb82a878a3972cc5d70a4afa89899bbe04629179cc85d70a1afa8982077c1cdafa8982cee8263f98a8a39dd0507fa8a8ab9feb5bc402d3ce4935c3ea9fb3af02477c16ddf82d4b14f8da85dd920f35ff3282a87e7bfe6d9d47fcdc33aff350ffbfcd73c9a645fa662090cbe617b4b9e1d388483bd1c72df0f0f0920f22f66e41f47da6db59fa41f75a1ee87dff7e9d3a74fff4a0a330e8bbed775b54318417e08e13cd101ec66611885ed6d87f002a9762a10f8fcfa75866a67757c7ad0d5ceb6abfdfa80f987f9d7bfdb7d5b7f8c6bab01c9eb5abeb2245834cc338c45cb24b78f65dc06e292d01c89266c1eb479e697742cdb8218f29bc3015cfb72abb1dae2d89bb46b8028a0a0e1d921898780b60ac262d5729b0c6674d6313841016cc9b375a81c2e8eaf66666464bcd54fc6c418dd721c6db9906a2b1ed3c6c606f676c7d354c493d6daab93e0724710ec48173f8450cc4f6672abe9ddd85a2bd41a4a22fd423925ac34d9a712bc5c48d6eecedf6e2c42870cafe84c3ceca41a3285619bdf6c016cc44f8c4f53dbc5b8622a15a8fd607e5d84bd66ced11acd3f1dd3fbf31fc4699ad8c154c7f415f3631b9c6f671bbe61138e1b769a48a188772ba4c04e98b0840c4c584206988fc64eccb22e8ab98f397388d752767805954b2d05a30021aa06bdd85e6b8426d3ad75ac63042c611d154bb6f7924b021e49024e8455acda5d986031c585091665a8c1fce4f3118e616f525ac24a9e5d08f36b54a98775fab438acf32d4e4f12264a966173b4cb657777f75d2e6300bbadb6166b0bf35e53e8f252423ecd9955dd47c4f7d841071694524a69fd507543b6a38ad6e595767138a067975fdda747b0b781d203b9fcf2f5c19e10f68060cf92167b1626c4079bdab2a4079199e4ac28a305d587cb63dca7559edd47cbe93381d8d150b585c76ea0f44086fc6e3510ba0dabad96751bec717b90d2c36e6d22c93cebe69c73623b68f58b23714c7be57f7553ea60ca1cccf586928316b4a025550b3ed0c20fbef2b69a7d9d7d0b10ca2a233154295596feb2a065c909e815da59f8f89042e788119caada9b4f513fd8b47061f441838562b3508a60ef6bd91b222d6b64758e0cc1de3a898919a0f818e2079b76b7758b9023ef0e94e7cdd9db9d1698961925e00351f6e20c7bebed3133ab478eda0189cc451a323058401a23cc30a1fc7a5ced0ba71d36980b77d0a06be111bd8adddeac0dec9608628dec92cdd9b7099bac1e364161e2ea9860cf376e99ec13f660bcbab5d99b5dd284873deedb22cfab51a49cb35472f73c99198c310cf30cc3b685473b7c20b0b321c35e6783dd61b1d1273f8828e20246043942089b2ca7c15e1141d8eb8e89b88011dd0f261ae5f36464663ee983d9403af48c85a38f97bd630928c4400a28c0408a0f823d76b81ea4d40b5d7e39927b941d41f8b85c53c826cb2fdfeb82122e0ef6768b0b3d48e9b7da6ae0762e4aa6bb3b0a6c4ccfa49736dfee9352cc7d48da38cdf2d63acda2a680edc6a0d55af9fc0cebad06936eb9636ef9e5587729605d7a26adebaa2e4b37597552a30a3285f9b2d46f74761fabb3b343e88fdd9781e7239e637c21403d775fef8062f67052b0b7444b8efeca99602f086cd7af1d82ec93ee0e9bb657275e4cb0f7e3c70ff6d6bfcc07f3f98bfbd4ca6751c850bf1e6347103e92fce898f5d5c1136a5a1df670624e9fb465c21ca12b6bd7d2e3b96b611ff2ccb5f060870ebb6fc8eb96a39d3dd8598fcfaf33d16214939dd565c5a371994f47f9f5d54106e5d7d77ff42943659b51f9ddeeb29e259361607e9b06f3e5b15411e666a98b3113f848393f210f2f086930f797d9abcccabf92bf942e35cbf2c1b8527b9559b1954ce709a45b37d259f8f28a2b31b42cabfbaa6964ee3766e520611062580fcca133c44a7f71401440822ef994b9cc38188e61b8553ad49b5b8fcaa5575b0f11bce5900c323232989ff2ccb0111dd332d0877c113236d6082aa5571e1c9047c6c60ce4691e1c9e0ce6271f8794b944fe5b9b9c9c26d386e5cbd78143a63626cc8950ccd75ce65444c768de0c66cbe6437e7c1e8d226648b238978a1075bdc3b512f6f859ba5e02f4535d8e5d99af11231a57fa8c6b25cb4650dfcceb9cf19772090168c1075bf8752ebd00b4e0032dc05f5f1fe2ec3114730924a34acafcd888c652f069a6d9089bda7d5c48be449f8a40fdf40e7b8dd3a726c2ad844fa38ead700cbb4b89b443985f33c189f2db7dda7f6c84c9b317d1a74d92e4089399614e883135484e93c16c913ee4a5922a3cf0f9161ed237dfba6f737904f4e81b801e374e3f935cb6bdbbd2b76edfb64e7692d3a1bffdd6c9ae5c729f0e7d204160b701e8b1b71a8dbd959e55dcb75eb9c6252104460ec87a74297e7f9f9081c8765103e1608db33c6313f367fd0dc9308e5f63d3d784136cd3b2ce97679c740c89cdb1ae9fa3bf5d7297b6698d2d4deb0499c27c3176b66d9158c9c2467f7e094f7f7e09367d1e139efcc864bdc278a4434e7aa65b37cfb2a4e20e4b4a6f4088a357765fc78e77d863560202ed686a82fe614f3e0cca2f6355547ac27cc3b859626199dadc6a48b314773e9654efc4257392e2915f8f385093471dbd011d5ee1d7a18fde686f1cfc7aebe88d78e3128d107734869d3d0e414f1ad22e6e084de53ad2e268ab894bd8e3b81399642d4e10820d0dd6b1fc740c334069682e6e080de807937dcac76d6749b15429f2ec2c3f6cca9e7dea4c257cba58acb0499da043e49b446e78e706ff4d23cf9a137484f0df3cf24d9b6787ade4d9b78ae7d6f1062996b0c71d36adf30c9d6272d2187e77b127bf24144b1c9e5952eab9e09794f3ab3f6310a17e39891bf4349b65abd92d0769d376b7b50ce3380657d801139aac8586717c051524c1862673a1611c01aed021094df642bbb89621301118a1c13a59797569e52c0aaa816e6d35eb18378426cb26749fb1ced13fef8793401c88b010a5b48692746014996d13777659522c8dc3b2539a43db747007b4d5406ef609cad48681250521cb0f4b4a23ece586d0685bd57112f6384992cd0827e9529225d52c551026f46a08137a64496d5bcd3627555a55842d27124841c5d8b171d31b8865864a2c200dcd4d5b11b48096b5b6f568af1cbb1cc68e24d21a4a3a570357c808bb26caa80bf58a2e640aa3adea52e225cda927186e0c746ad58b22800ffdd22a569d4a186376e9a5b05955230ab21676fda971526bb46b5a989f3c65980f84d0534977c4e81b77b4e869e69bf1d1351bcc1d189299412d3ac906a5ab9f4ec92ead06bab2744b77e53bd8c41f3d88241fb78f51864e747203231f5d63bc01113edb71420405b1ab129baa15e87c7417362d0fce2c8db71e7b6dec52cbb1029de74d01eced39bafbf6e3b6f295be9cea4082e3342c5dcbbad2b870cbfa46bf70a6bff240a10410e4cbfdc05e74e67298401de69ffc4aec33ecc5e88d5d5a6ae6fc97835feaee2b4d283dfa0f11eb3e29afae54ea92d897bbd5481eeb336390e9c2c758ed33dc6ad45d2d21d5b36f954386aaaaaa2a46086325abaaaaaaaaaab650595e5595575555555555555555b9acacaa7a92418710661afbaa2fd72949ca394b2577cf9391d1edb428d3497aa3859e1ca031d081e018e8f0871f7ae8a1460d1e787828e393a13c43680dc8e1e0c25c1808793285f9a20f153d69aa52b7f918475555e62b2545fa731818cbbf4e754a6fec576e718d85560e8bb049bf96c357d089afe0135ff9478361609cbde5cd4261f0e62bcfbc5115b449f589bd6bb1b6535795b6f295635ad729f6aa988229fdf24b4f8c53b1ce57fe715f751f1ba9ba4a4f3f5ff9773db4f9cabfd037c4f9ca57bb2d0d4ac6e953a73aa6f25269ce14ce7743a9f55623b7f2cbdb65faea54b7416fb8414d9857de71d0138b57feb180fc7b51390b67698c748c6bf5a45f1c8893de5c866932865f57b76f33d79dc3ffbaa4157d5a9029b92971d621df01a3f443cc43023c8417078748b798997d35f6bc547515a6184215ac00f381503c30059fb00f942855a0a47c5f549ebbe3c97aa49cb344a324657bec2e077f74ff1f5401c291876e7956693c78781885bde62e2bd6f55313432699dfd553ba7e6277fd4881f160537094643e5915235a130d75936483b2a5f4469113ccaff42c1d24e74da9c8ab479cefe9985055d56229d5ebee4bbbad3a3477378c31565a5b96f72e84bcdd1d615591d85255d56f62363b98976631afdf2c6216d38a59ccea378b197fb398f0378bd9edc44c629f6316db318bb938733d6631b598c5d45fa959aadd5d755772981b551d5ea4491acdc0186167adaaaaaa0abf9957b576f03ab0d75d1bf641374db24921f4c0bf4865cb0da354ae9aa36358a698c21d2cb706637796613a881546fa0ab5950f113f2a0e081c5c103baee8f961e68a19ec08edc182bdbbbbde8b6519e761ee70f0ed5603412813c3c1b848414897b4aaa86d8d458849ab8a70033584508683702f695558eb60b18720966e6145b62d5ab490d1d3e55a224d651b1bb959d04cebc31e63dc128de488108c184e000fb838d698e8ad9812f2ab4b63a26f162ce790c644672ee7617cec28102164082184dd725535840fab5495ea8756ca4af1439992a9be5258771ba4da8c485161ed217a15826f5fb6e4555555ac00bcb02a2d566f6cd642035181e406d6b680148424ad0a464de6d7c6e6da45819e16c9b3ab9eb06ea9786e8355c1d820cd77a7d7a6d4b33cecb18dae4f9f58ce92bb8d4f8eecd9a6052096144b84dd3b2d5290294c755912935a354fab5737511466c939e603979c3d2ac0391663d098a8c568098d61f7629c2bc1080dd1d3a2b6fb16c9dea004c56cc1f3a2a0f316b52375a8a79b29a09f40d25c0dbf39227e1481ea6f2e881d43b4d87cf037f7c30c102e361c365e6c32325506b406fb6843627f04544e50a29942c876c412dc037b8b4d1485097f79953110ec6844a1518b175a0986bcba509fae8b7bc3ea8d9128068f4c4c0f0763e66a216d3d80904823518c9699d0a553f6695128ab8bdd8421ec39478bea0d8b0bebb3b323a342b4479f5b8f0a3c74086447ca394b01f86f03f03d517d0281c6b03b41e589d40f0a1e7bab5b426bb05b3a3fd8b3805c6468904dcb7aa3c5ab675876619b5622028457665301b21992659a0c1bbdd1be63d36277bad554c60fa1c9ab1322e43c015e9d08a1071f63ea90607e988f13988f132c3e5aa3a3132c365a0383a182e90429fae8c8a9f330082c57f876cb898f367aa3f24fbf83ab3e2d747446a004d416a090010a89156020c3487de80d651ec650022afc44a1084fa02265081336bc000949d8020cb250021af88587f07aa8ea0334c133333f04824fbab34f0558520634ec400647a6b080067ae1a13b748f4ddb430821aca098dffca5511f3012fceb3021094b6f0049f4203ae59138f97975d2041cd4ab13272678276630859e9748b164e777fb2101b6a1d1ce06ba3e60afd0c4ce06762d0f581ae84b033b26a66080d28ca0099d42d3d9e8149a7d800f9df20b079e99cbd9a3913e61ce1e753af53a8fbdc844ec68b027bd91546d989fe7452a4c9a9086ca0547f8e84d844f160f13bdc15496a05a49943ee2d352f07491d40c164d6042e5029e8d8a92283d3ca9d427f33c323678fab415d9a4e8d98ef86c4aa22c4135a1c293da723e99e791b12133f3d1677ed801253a0d9e660bd53a04773ed8fbc11eb7b70ff163557dd49b55338bfbe16308f6b87dfc80ed63881f32cdddddede383e707777733aa4a43c6937d2e2f6f4ea6ae30fb5e711fe655d595260973f5ef7276209c76dfe531077661af5796f924f129eb6038a6bd094b05954cbf00c2c02c280545fcf0f1c4f422ba8a650bc32c2bab2a2cabaaeccab20c738979e619965d32cbb04b5a55774b9f6b211b76d9dbad16cc2755ecfa5cd75655d557a38ed4a81375549bbb1ba3c49ec8c35e7fa51823cfb7479f2f42a9824dfd4528110a9b34ea441d14936c91482086686bbbb5616e712c6707c2be375deff276edbeeb7de1706bb337ec755f7d491b66abfbb103870ff6f8023e376c44112917940d9bf6e66789a08a68afa6f0e4c9880c44589df19cbd6e999e27f43c21c7fac0de323d3244f4f4f4ec20398108338a0a06ba0521ec20848d350615c208218490bb19cf65660f33afcf103f8840415578bd3a09421792f0ed55153f53b2d7eeb3a59c53056c620f1a59d205214491f3d1b316cc4f7e7cf9182611278ee109297cb27270f406afc5a46f76ac24964e0e4f0131e1051f5df0d1bf38862d476b445f8e89952446aa0ec4a335a2836c2c196fe5f4499bc231d1ad305245e7a3958f71bbd9f9b81161f2f1b3783e6ea7a1406898d13f2c27a435763db2c76a6a8d750efc1499409f2083d4ef57f9189f1003281fd95972aa23b844d9676631d8606666c79c9799e79c3c999999b79b91e12184704ff7c3077b221fcc4ffb06c3fc34f57d046a09216ceaf6d173462a348060affdabaaf5ab83ec3586b563dd7739e6d9c561ba8e29f6cc55dd0e190f470c267b379bbadb869320bce1bf09af582ebcba8bded087bed072b6ac75cbad1d525a96c6b05b91db8103087fdd781461aabc621c40ece8643c3078dfcc0e86281b4e846082ff4a10d5ddadd07f1d3a5bdaea4943bfdbc3abee93b3d4eb0401bc3ad959c383502d510db3d44130f225128d57274188e2e7ab931d9fffa67314d502aa8d42950d154946a7e4e2d11003cf7fa59d9dff64c9c5a3d1e2a372fd21d886e6f2d927cb2d0e47d2542eb99b13ccd0548e2369aeab935e71d6110640c36b87a4053a13ca430382ca416041136c7687def9b01c760c501aabd38e811c8b9051a1848a237a8161aa939d9c7742c5efe050a1e47908b6a1b15c1747d258ea48acae721c5d714b3c742042f861a744bffae875eb1180d70e0908a00936f7952baa7ae50a4d25d984a472dd1e80009a0a4ac99c77995d39c949f00bb972c507e85f730fbd728585f06b17a922ece691819bb65d9ac6eb83c3f0a0715328c142f4952bbf1d8d8b86c3f0b0c11e409045d3b8adcb78cc6511424ec8b52c00e49bff006ddac6dd6cae1d93d180b62d87d284b61e06d034b8bb2c2f8cad174c217dffb529743526ba767d8803336a9cd2486e08b8da436c59c0e69affd83acd7fa8c738c344427f94ca0fa11942c3304eee4673ed182c861b2612faf3425a95001aa7345fe93936f1edb0da7a18e02dab3d6ed06557dd9b94d6c531091a834cfb34853504ec01c2ab5b8db93eb0d9c54d01215c08a1bc3cbbb908a063c8336c02f6187da5806eb72e6e0a25d8ea6e1941b2538223ccc914660ae843c01e443044d639f40f6c6bfa435e4a4ccb326db71e7de50ab49cfb81330512330f4448ffe5de0fa1c9304762af7cc6dd647e822990987921fd96ab12e08b5e49193dd334571a0bf618bd3585127ced2e16415727a555c538a3cf12e26790bb6fc8c757dfc8a31d761f7b3b90ee36a837f4b506cb205398184f30e4b3b809b1577600ec90b5f521b33419b58a0d133e9b38566ef510815579afc786dba08844bfacbc8790299b6006b5655fabe3b660e542e47ff4d501402678cba20695e0ca72ed90e8e85c774f7260f38c445fb1f26b93b5b6fedb2561b910f9bcdd0735e67840d9f5a6002660dc8dc708a27707051ca47ed331c4f25682dff24c6abdf180cddb20e9ed9b10bb2a9029cdb0e7d12aede2e818ee7e606f6d78b2e4b227cbdb97eb7e606f863d762593a43d337d046a9943d86d698e69bd9a65490b560eb1eaf2f1d7574f31d52e33b82666cce0a67071ed627cb2b79a65c7c1cbed5f97679a5d1adc8c9560fec554aa88114e22252761259c44babc2ee724ac2462a1a723da853ba24fbc13dd8a11469ea9ecc11b1bafa43cadc6b8a88b7fd18a8b7f2476f1af2212abce2316ee9175d8c42ea31ca613ff554ffc91cbc5bf4a8a6aabe9dcc55b0efac5e9d8961cbbce7dfb2eb28361cfc5717066e95a2eaeb9703f3115ab3461625e45944ba7b1f38e7d4c0c0402c90b4bb9c878711feb43e5d119d0003559334830244922b9554998192e989cb394e2245d854dd6a7a4bb709f0bbcd1200eb4a970aa9cca48b45211a98a5436d5cd0e367d95efd876b02a6863f18efd14cb0c7133b8999212a6bae280549def984a381369919324b194cc1d1c86c7700d1ad181492011366d52c0f00f1e0179915026da414ac7919252763b80a8ba3825a2788eb095a44f333c7aaaca4f74af1c86eb8c6507e5d901042be1247d62230babfc7cf41d3a87df75df08bea9b06705c7bcf04f534d9870bc84bdc8499c8d585d57e12432621516af28c35b5a64175332fc8b29b883c75411236c922145a95472d59243ce85bdd8955ea2cb999201c363c861abf20302a5d8b455f90169eee2c2e94bf6a2c3e04a5c12cb49b416319584358a2ec27cc4e838b81863157d5ed8b39229ccc730e42c0e7d517cc3a6761c3c97892fb74cb6ee2e47fbd4e52c6fabc98e414fa5342c162b87af5c2de82c9cca744c25637d76449f5af8c835cf306fd14e528bdb262a0a2529394ac441f642465a7974b427c96321190cc3c227f396771b9165594efbf4ccb2b008a7f4408155402953587a9ef080403be7e6545eb911eb55bbc83329b34c1371db843d2f95a65c263cf3631c56c2a6d919619c3e8dbc722ec252b0e9c8e72cd8f4ca770a9b445ee57ce56dbaaa0eb257f988b316b5754658ba50f7953e53cf42f549d5f21b2a4452967fbb0531e45d644d8b25d45d84a8fbd66747833dcb816c67047bdd05d8ab7cb31ca4c10a6479a3f4c60d9bac4db7ee88e04d56a065825a26529aa4789e545e7d5be42baf8e9053dbc4425ad411ed55cf222a27824d0d7dac579d0fef6cfc02f3ad4db6da9ca5cfa56297efd01bfc990759824ded99f3c83c73d52b7c96655966e5339955f93582cfab15af4e8a30e5b3dd64951acbd7a14c05792bada4c397ddd7c45b1d4c659a0c919c14c1e7bf99cf3cceb0e99b3fb0c971ec702ff5096accbad67d9acc64f7b964acb1a82073de1dec653e4bbe2e3b0d824d55077d87e59967ae30590764ab26996e3532565459db272ff9c22a86aa49e41fb7f857bd825e45af2e62fc66ad2db7affbd32700b8975cfbc483935c7be400e0566336f4bb5f65f3316e352451cb8b47ceab78fca96caa9b8cd7b3176498dffe58d6feac15f6a2436e7f76bb1c0b77c82fc949be3f6b854d255f189aeced00b3916038a781f1acc4893c531bbfdef2a23edc333f288f3ed11e85a23e6d43e6c2c252811e7b1846c58ab75ce499a6c5d803a758120af48155c028500a44c129b2e709cfb641cb12893a253cab83592a54acee08525ee42d5e595d63b5bc703e82309c6a0f1c121e1c86c3711a1e70ec5ad00c6a6af117ff621a38ffe2151f4d23ffe21b3e924a2652c9a38b5a6c7efd85c3f975e7469caac70357c4ba484ef212f7f3a4aeca6f0d4c81b8fb64fe0b02f32d48ecbfb812f0458e04cb8b5ce42d9d12fb2fdd07dd02023b4fd4c1b01735edc515e6ba12a63a39029457274778f2d9a62d84dbcda8d53ac77dfb1cb4d45dd55d75be7fa5779fec4529432eae4e8e60a59afbd3a8a5e2834d9234e29ce3f45d38127b3bb8ebeb7cf452f74952f7cd51e76e8a70573dcb5b38a8defa0b27d55be7384dbd75e7a67aeb238ea4de3a0c97ed6a65f9efe0edac3134d92bf2d191c0380eb689d08679875dafc5a14f3e45d4cbaeef5623c37d7d78f1e89dde588f3e434d9c47f92de68d16aedac2b9178be38183e1e00b17e38a160ec261aaa8b272f8fef41336590f5bb8e5dc79be73ff0c1451fbf313513e3e3fd007e6e040ffd806fa362cc1fef409a200dac01b700e848271600bd8069280c7a02768d331d171d290f3311a91c35745a27f1511ffa08d5562d3f7e225f6221021fbf0a57b418569f3c2eda744231f9f97179f97979797171fce070b2f9cbfb88f785d4458e593ffc27513f6a2735cf3b01739f8c201e13c89fd1ddc89115023120f300030419b3e01a02b957898b343f9d0527600d13ffe566f8637aa4f96c6cc98e1f167c68c9fd152debfeba5837ad1afa894f5617f7600d123143f2d487da4f2710e5a23fad761f8e8f0089b143aa1364fe0b8e0634e143fc33f98e43bffa092ce67f8b73f2fceff426a016da00dbc891abfd52d8493bdc840ac8ec41ed7297b9cefd009d9ef2aba17549845d8e41e61fc855b3e7d5a2a3b38d77d323a0cd74d3826fa0cae7bd88bde710d45b4e5a8fc0515e637514084ec93d88b5e7540aa298dead352c9461ea744cee173dd37827ff166c25e4cf225ff948789300e7b37ecc59feba5eb27ec45086dd86479a33a26bae885e4236f54bf44178fc17dfb31ace8eee25f447548632ff32fa2224a6fdcb009874d2e1ee5c398305c15860c0edeb0177d3988c35eac36549fe4b4220a7628970edab0171de41fb449c33a8a4dd87a2f2a4e8954f4c62a21bd451f0697c496f6e7a3bfe03ecd05f7955a704958ff79129014511f7dc47d2411b42969cc7aa8fbe4ecbe39415a06b7caad1d58471132de9a8f1f06c6d31abb90bdac170b99b280e12b39cbb32b11a03c3bdc9129ef06b24c976b0c64abb1ea2e8baa673da3aaaaaaaabaabaada50905a194813428f9c064b5e5167a3945c3d540f527fb5b4c38f3ab0a2c2ec233bbd844f31a777d874451d528c3a47e291a8e4eaa24e33f12feaf412f678b2b7aadab1bdf2af77927cb1076f5d0ea34e3cc2a6247a437b5c0ee1a7ec69ec59d0ea426619615e56b0960461c9dc25811325dcbc36e1d549139ecfac25b377fab45124b402addcdc1021d20d617e1b854dbd2375d8a3c2fca4cf0ea6d3a7cab54ed23150beeb23cd2eabe013b6d331cc26287d7a07dbe9532fe99d287dea251cc3ce4d60d73b308a4cce9284d6968021fa4418be00062f60de98370686b9de6e5998e585f979ce72665967bdccd2a343bf68c8e80dcc2dcf32ff08f09667d85b1996619812fb58472388ee14bee8c2acbc49e69c3967ce5e791686a9ec555ec5cc9eb2b7d78b2dcce85f989ff795f438c338c6b8534e650886bdcbbd4fca5404f8cabdb809c11e3b2d5b8f4d1b0ff6ccb3f8309f75992bb19f75343af8a20b510c45d879ccfdb1d45f9963980f8c6ba663ae9de9cdb5b531cf6666f406ffe544187180cbafebbaaeebbaaecbafcb75abb966feba7ce6ba5c66de7df2da4e873f96f9fa6218e638385bef8a54900235d81d336ba7451974f7f20f3218574c96acc4855217605c61596d6886b13110b0ae0f60996274c82ea95afda86aabaaaa6aa713a8346d5675492d199a81000001008314000028100c874423b1683c9e6ba3fc14000d88a04a70581949d328c8514a21638c4140440000400000321220200011f2b6a4cbb6f781182bc98f9e34d9362ab09a2614a5b5494fdaff5428d500feb6fa9d85ca682e7edb92d8825a17f71d4c856e0415a5a7ff47e0fd5a4016846913290e2844b7294050e51b869de4b7f89049c46a756e6457f534521aa5f0288b53ca9451d390cb6a6434a1c1f14e635339b03fe0c3da702f458456fdaf2dc3396428671d53c1eb6031a77f6c140b7ba852e29f22c8e3bd63b6e68d779f4307edcc0bcb23365e54545e228715c46c44c8ca3117ecbfc555c54ce82c19db1e38a523b7921440b7da7752eb805f1694d474710acd90bb9a5b47ec7b1d9afb688755a47262e60495fcb66d4a9568ff2ed212476ff43625c17049d47efa3c21f3859643d416761bad64d08d66d7a9d628ff6c2e707e1e5c6e42edef53f4f34a8a1658cffbc261e40f340ceee8f1bb8f2dc444e49f7e9d28b1b34f1cec87ccf79b3a83b96f4a846d5abf46725ed58886e315a61d169c3f56880ce8103ed876882b05b7c934b42f01e0fbdadf50ccacd401669c286868921beb84dfcd21e609d032115a6ab2eaf866302cfe1708dc13f9e6f6029f5ea3637864e036dca8fb99588720d8c15066966e4c000a82b184f38de7a08e3717de8d7a99f6e41e7cab066a0f66ff834248b4402fb32f0e4af12ce46c17c4b1986c740a988b9a9fc43fccbfd3c98cb88665e231a10186fe98d62871146139b1ba1f771d20e935790a72517809f6879f28239ea2f15edc1cf5334dce8be5e0809efb78ebf977aca0e60f7aec6abf2976102cda0eefd859d6a46a6b945af92839b7fe7b3d634861052324ad7e636a68b5369bd658f91112cd0cf7aa0c832097d35a7199ed6c73e78e5a002d2245a3361b0ea15bc65a679cd129ceed2ff0dda948d5c270a7e56354387b2dfdab0a6731a28b5c07e12aa77248e5865aae30294ecc263fb9c2d314ec1fdd5a168014ff3626213f78fb4e393e3acce0823f0f3176184c175c52aa7df0169ceef8177a30583a338639a1f76ce2f25ed7e3806e9d5d6a8f4eb0e70717c4cc5c84a6cb717d302ca6287f65035ebac619f5cf5d49baaecec64270cc592de20693dda28a3eaf077192fb223d9e1a9c104780de8137eca0694cf19a3d0978b5a858e0ed67be05f94db83d0d9fcbae861c9c2680ee053246fa814e0d565127360ac3219c1418ce14acbfff5c8e300132a433a0e05c84b6b03f63d7103aaea28082368c09b685f0435a48a1c549266b20fb720d281984f01725f8941282fb670bec15494ffc22b8e1b45f019834163c5db69b5e0d217b0aa86eb30a169871e249b4e8c33370f0d8e6a0353b018bc64c496fda7ab414e81f59a5fd94dfd9966f7aa616a95fe1caed146bc7063f98f9aa83bff545348350276bb62ef4e2ae36ad87b2036062ab89a3a19f225eed31b13753c44155eb1dd0a2d483436ac8d4a3785a20d8e57864df12e276b0e70a1da8e37c79a42fbd49cf63ecc83b9e99f34ef2ad16abc541e2ac9a24ff8e59ea52e5f438fe4babcde7d2cf7a837f4943a5e3bb650e71e2ac2b15ebd9baf5ed13afbfb01a492c2bf9d59064dd6b8a0c859a2e4f4a48bdb726f380438b7a6b0dee24047fa3723ac31d619af5a78ad1d60290e5177c1d4cff044eaa183fcdeeff99a866dce94ea3e55810a64bd581d7ee09039946d80480e9101283c55658d73b3d62c400cea4a15d669cb26e1fa817ec76ee37ffb865f6cbfa4d76a99a2d603098f5b9ff5bd8e277b1e5afeb835823ccb7119162dcfbad77ecfc755147de242fcf2b01f150bb4976ffda9c31478ce30e130a6e27c9b9d1c09b6603e56971eb686dcbe64688f2f1348aa0a36dea172ba47548614433f425267c52df9711a41c90d11ea2edd99b3ff4ebf4f8adcfe6b2b52f6c2ecefd778f6e6c5f6abde9726ad7a734ced7ea3e150900ff1cd9190983e0e4975ffe2533a00f7953fbd493a5352c540cba388a0d57f36b5121718d85b5e2b2b5de6141ef26f364d78cda9c495b0ac081abef06e3ab1119b9d931158bdd235b74e5c8feee2ce0702ec44e3745d03a0a68b28191cfa4386540246f3d86c8a6d6fef319f72cc75d45d9cb2f70b0003acb3244fd376854b512215f0e0c4ed99e268c96a0f91ffdcb2608a06528cf40d05fc4c087c45da65bff332b305fc059d8bee3b9e5861f2c2fc64c097a28a81cae055703927bee2d5092bb54e0c85a0727c14c958490ae16b70fa282c173f4da8459150b2284232b0bb06f146c50abb240c4ab934b1d833857873c42aea34c25a5b2292ec2becceb1b0ee92fd18d3642a1ca4f564321158bb1622c7215e6b18f07ad070a0148e48f1fb11ae542558e1526dbff6bb663328ec160f7d52f73377635c6cfd2f37123b8c6a99cc149b60cace24abd46d010cfe32c0efac674e7905194753bfd7ae6d2cd4a5324f6451152cdcc012bb82bf7df8a277aeee4025ec2159442c9d92773c77ebbe8b97189e2bc82c82c14a2c03d140f8f7c39f799429e81a512c2492e95bc66fa0005dd2bb60a593c0931b18a15b37024a419b040490751e3c5dd470fd66760916aae98441aa16cc8a1c1cc9101cf8cf0bc4b91c402d13cb03f68cf8b50c91089716b226c861d72171c1570b65b698e6f1a837b50893239a339a98d8fecdc345aefed6577cfb082d2ffba9476adea39d8ca6a3ad3739293554100e106dbfe7ec542d41fb4c88e77c3fb82ce8ebfa3a72f69c65e7623780a1b81bbf4ec4b53ef3c3e4f5ef515b1071b43359d7430f320f6cad3cf7d4bd3b753148f2ba59e605c238184248ee8ce529f3087ba6092b0c321aa8040e2e3a85f4abeaa5190ee0d7834d61448ecc0c0f7725ebbc4425c9840662a21d6765ec78325b867877565b98f99f90641d2915159ea18c2acdaed56e0ddac96907c223b1038413efa99f204fba81a84b77ae8e01998335ad6f50b4a76447b79a24f3d21bc13418e24c5104e01220132bbae52f70d424658e5cf0c6ed0455d17c7259dfe8df8f55dd25b3078a0cf0e6e9311d285fc98b55452421de82ad629e48ce51cbfd2eabf450d924d0a951a1c8301c48cc1f52f90ba4a84df287add572d0956d78995423af311c0efc84ca0534115eef79a33c83b384eb6ca6343004cbb345dd19b084410334710f02b3a5c30350ed146e620c82a0ea27793eace300514630ed24f08d180b49599c00c352cdf8ed824f2ad01c8f34e118d2cbd926288e6476339dfbdb9022206c4472d49da3be0c891003d4e23a4dd3e7f3f83d3d9621f948b3852a0d0fea9a702aaa71994547e87a8b22ea467f381042e3454a0712213452f76c132b4abb09e263dcab34f48bf61fbf84317540a0b8f7d2e562d104692f503620666548f6096f2ed505af9830cf8b1e825b27657975b182e064c857e0fdbaef3f0a0ed1ccd8aa8e55aac75e729078f8567a12ebc49d97564c6a0c5a63f798d1a73412aee14fb514811091186677a85f41c5c3b3ec94f93a15445ce1e3c37f41ec56adc316ca5a65d980b3a34ef0043cde2fee327104faff0800865c0f18ff81928ed3420e716637479800d38f134cdb10dd475dcc84c15503af1cd7d8bae31450d330701aa66c38735872e10b78dbe0fa7b74f06ca9bae56489cd5047e8d827dfebe606611c9c56803374a7253489bbfc5ddac8b373a7f7767aab88d3bbee7b20759ee3e4282c1c25be6a624085b29f46fe52e791b46ce1bde5e837691e6828ec81a9841163b07ce16e0a3fba878b6aba6afb06b9fbe12ebddd69681f5a58c93818e2d441da5942354ffec6cf1091bc2e752ce884fab48c1fb1d2198a2f023ce3f7484b6df81eee4a4468d3e0253841ee70dc91fd543a059720a72681f1c05b977929f7a44bc49126de69221635d3656f9ef06b8cb401fd38449eafefd1a396f3aaaba9be65348443257f41dcecc90933c5be74e5ecb1b883c59024a1e27df7e7dcdeeeb2d16da7a537a1d571479624555a1b281f4ac9ab2cd0fabd61f55842e4aa1cc5510d035c2b45ba21e385497bdf22c6ab51773fd4fa508d8630478236a2c890508e4d7d0d6bf2428995651a47b7f31e25df59256f33211e9f7a2fe8836321564d4f9a2e4cbcb8b344c10f01734f77598d868c82502a0a19f69237f9897c51c26f252e1fc1c9c07b38000ada20c709126780f37160da1504fb0470bb8a2bb7a6c2794826f4167680406042cb9ab7b881f3b9cfcdeaa03d8eb2419fe5b2ebfbe650be73ebcbd2e223a60687c911722aa6f491c7269a88a2060f341d085e1e91f064ca0b002076d917b61a50d442d9ae343141e93370df2271beeb33276094d306547dfa9438dcd9d2e2a177b802145aa235323310a2cc9f815ae5728272f085757194500e3b1ab003d17987f625638804e9d09fdb2beb64d4a7e0879560bae3c4bf7ef6fe368a3524a07f33dd0caf60c8056dc86d2b3e40e5b401d61e6035c878ef83652b70d094bb5b36bb56323e7dd639cda6a718976ce6252f3c5997c0b3e62df32a1bd45fb0c924067f4c871aaa2e74150b19af9fc1e2b2aa25d0b149280a3e7bac4a048c11de91a571302ae47166bcfc9eeec68eb11f30d9ffa585ef6e3b9e51523c8a9739fe88deb25a7c618523795d7bf5547a25d7483a697207e8d38ec1ad84e23899702dbfe5eb60cc5cfa1714b0192414df3a95ea2d6633f5bf413ba463e4f942a3ee9af25bf44974fb3dec861a6554bd228e7bff134baaeff49d8984b25ff38dfa66383a8a61fecc59d26878a449d97af6927e71be0b8cfc051f020a86e10bb1635bdbef2e5d62b2a8cd236b2686ceabf130dc5a24b9520464fe5d45b1cc1e75fb10377d21f47f736e723580e9d2e17f316ea422f4f1d3e44af8a0828bab55d14003645b55a4b1235118b3c66c3392a9ae58a0f8ada49ca1df7e7a7d6deb50aa2b204732fbf0a7f10733ee7346120d01c39b593a301d7ac9c3a6bb6a30837945d6d67290bb3bb12584a5a348ec0c2d80b9a6390012e07b0b6c09e5dc3b3fd1cfe262ce2c745ae579d267157eb8c2dd522f1e4562683f7da6243ba80ed6a3e318497d0f9b08c22360926d49202394de14ade88d84443819af6ba8f3f8ec684080acf79458412b5b72029ef9e6da776832335ca5927e8d7a675c07d086da19ad679ea7da13472dccb20b89c47ef657cfc7f9a037a702fa141757005294b2a86cdbd0257631d9b5007f91c5d0288d9d00e55a888e96267acdad503484ea3faf0ab55e5c3580f53926a775290ced0d86b378c11a2b1518a5e38e2d7d182fff147295a705f87cfef8456c2364d8772e90c8df76b67403fb4b1b719bad95c4841f601c9e118e8cb5fd23226280bd4c5828b911712c881044192115a14c49fdff994613158069e012086d10fa8333b8c8705b77c6ccf07c37946103f73b73fc811db1e0aa7fd0ed9b85c4814440fb666cd206f17978a534f9723fe4b5dbd5bd2811ddc0f041d8469b8612be61c70b9dbc70cde320301758c82b10e29b0ebcf9ad6787b10af5e0e4dd30fab0c8fa67e42ed6b3b38f5dbffc08bb2145c3b0b2c5b1822ffd173f118ad9419855d1dceb2bd26b22418d8ba2d03bc734da5ca4b57f8338cd34e62e36c7b91daf70ba995c9d64243e5f5256f32636fae55d866d77c17440eb18a431ddf8ba91d1c1367b0c4847ff99d13983ff872c6176e1079e3b719fffdfbcaa98d291cb32efe75236dff179ae79a284389e60816c603dc8dc587a3eb8fbbb0f61f29cf3271cae8a70603d7a3bd24d4d81f1519574b0245bf0d354ec965cd91e21ffa36278c5ba90d4231e1a8dc1eced14cd360321ee9c45f4a462e9d2f2ccd2125a2465f20689edbbe3a518a749ce870a76926763eda9686a313c45627db81ebee3d873221f62f0011ee0494f56623fd3ee0e1638112637f5635b82ed3c13cdcc23f6ca6b374927308111cb542007070101214909cea6ecabf2b4bbae604e5db97a00f50ad1fcd745810def461ea03397cba03fb89ea090e084af0e14666cef784b9bb95da235bcc315e913b232e0b65929549f079736e80be0030a2e057ce77c84a6455df832875de39bfb5d2a40237592bcedd391904a2767e0d7a6a265aee0bf44918d407530bb431b3c4bc89e6476fb473e635dcac807cb81b80e6cb0a7d9c70811e3623a590b3bf7dc2fe5626a4c75a65c50f8c1dc9afa04dfb4efd633ff2cfd554808114f6c7886a982126a461e17bec95e501ae701f2a2d610b8c77c0d5f82d835f800eec60cb7cad6d3ce4665ef4df42c4ee59e3a75f1237cfdf927f3176a56477a0b409873e42613fec0f09e7e4e944910b5ecc08e1cc120e83a0106fb05b72cb8e1a9acd57debd7dea413c501dfe86fb8c5e8bb3173b05200ed4640d856b47b56b0c2222fb37a05668f6bf917b9f89bf3cad716f7ba94be78c201e9e965e56aa3abf117f2cb26ed00ef8fef49938272c716253d77b32fd13bc9ca0afd2ce2178c99b6ec3b584828b9eea4338341f40dacf3904e922fb1c7dc5192d325129504dc711df1752edf0deebb539735932cc6c4161b5cabef4111198f05cb2f0ab2695dc14a0ad4bec05254609421183df3317e5207285467a4f0435b0780990aa586c5000eb7d793c50cf3a500c1050018b1f1ac83fb2a32ee4da8b4a7393db5d73a09633b81e41fc013e68615e3e459f1014181b4eea0305b9684eb3e073c124b219c14cc6a4b1f48029dd20a5acd62b4f6c188c5d2b1f629f9ddb29133ed7a61989890ba371f4da0169838a18d42b4cde90b25710ca2f9bbd3c178d19e274523011e7998b0b247c0d266037e98f05376e7a2727b6ae69923ed291a6630c2f26b77c0853026a8aafb2c29155658191a109dcebc796cb385fdf9de9e4cfb6194ed7df6293f9ac696da6aa1afe14cd9427a261a56136722e529a83293be4410d4c693a1aecdc56efca34bd4f57a9f1fab40e7de560ea603e4aa4a1affacb6a9838f2752a3ebb9051d2865ea6a592dc7ba58206d8b5b4717ed79a7906f288fd2c2e8c2d4128b1f75d5b86e0234bcfe6fdc560eb98952917dc8235f421954896fb27b446f1eecce1f191337ed09341c4888c24e8a2ebe6b930a833ef003e817448e9195fc3a8d4ce615e1ad5bd998d44390e707148cee6d6f5c81f877e5d8e742aa2a3d00b265fc7bb30f9a7fb4c143959c2f1d746b6f8066d7c67f40cd52ffcb3922b74a411a983495816d087b20bde26ce28924e56a671f81ebcc6e2c14fd8f648eeae62837878a1edcc8082ecb1132b7af1b1ab1d11ad843d782596bc4da8246a4d1f51fe490e2f128363aacf8c1a96b940aa9142d7c7be9c910a239434126e8335365610e106235bc21b8883457d0ecc628df0a48cfcd753a6d1a512748ea271eb3fc76eff1905bb91277a32b2ba9b921a1b082afe010b55908132a0a92f225e8270853ad2cba715430b689b3e7bdc0d5fb599dbd666ad133aa27b1ee85384b27a844edc4e008299227c588403b239383bad1bcdd4aec99da76e73edcfb83922af0b40d932c9bfa8c0888516137541a69a1331066fcfafa5ef824df8b9209b507391601e04af4b770a5c171e66bc8128bf15995e394750200920e5d93dfaa6a4f41438458f6cc8168ba06e08d1527388f8b6ba22560dbb23d44a1330439e90dff212f847acc8d14260a6548596957cb27ec30736bcba87aaf44eef5f918c8f2461511e5cf54141b259bf286d0df8ce42ce6ba557fd4e955a2563135d200fc9d72cf2025e94070d3f650aa2d71050daed59b2008900e094d73024a8f181e69409032bf926fb6831d93730c409832ee523c5bf564e304cbd4facdeb95488bf07318fd62be0dc24f9697b83ebe0003de0761f54eecc1006b167aa28288a18c47947f5cd1b3487c68694d8536e3c81b382813d800a37af12a013589b359eaa681f95a7f60601b0ca6ac53f67f990f1a27a3a8de611700e43081c19fba9fd068a5194a2dbd2b607f05702884b5149c4a5a727bebe61bf62784b17124b0f466191a6e2f86f4f652d23e48fffbe21580443b722d6fea467148076cd2b8eeb4c87f19391395c85ddc49cfa95b854b3305a02257fad84fb1799fc9c2b150c3d5192c239346f1cca9ddfca71aa6ef8e3c8647fe102447ca387662512dab610ddca04b859c9f1fcd97ec7d3ba4f2912e4d6dc1b0e60a81ec715e0dbec8980cf8d13da30dbcd57e86c941542411503e33420400fe24787e91b5beeab8d281729983eca04defb18e1ddeb8479877746b39506d91c536f186b3043fe500e01cadbe447c52a403b185bf2a93105821172da6e139e6bd7059fe6811075202d8ac98d840b21d7356b18093ace06a71f40d401b71f591d38ae05e1fbbcd64975d939df8f1166aece0c4b656638a2c24042738dd0141f75db75a2310bccebaf2d3dc1be63b9e951c1332a028a0a3f00d2d041044c20371556348216cc3b985865303dbcaf5665925cbd948a81dca1dba0766772f39b57bf8ce6d2a186571820b4649eda8e559b6a34799c0f94edfa832ab855c3afafca1b5baf6bd569c7556c2ed41838b27419c2b4bd7f43414a28f0acc02acc4b2827acc5520cd0083eb52ed723c1dbdfa3c7e00962756fc099070576f9294ac6d75a65cdec458f77538e743aac139b10a05bbf32838979628580c801203b75341a5abf53a16a0ee129d0ad660ef3e37356e0e5cbc1ff4e7388b1e21c5a3ef2f191d19bb06100ffd939e41788016a4bab73079543804e3ed8e8746425e685332e036593ede3745733eecb89385e957e3eaf1b9512be7c93d1bf35ec64de39ee3fcff560e62917f33750a2a1fbf083f2edf3f4e4e59b498dbfea8d62dbfbe3e00f73353fcc20cc764792252e436fde8087bc174d05dba0cb316df182a3cd6c737f2e290ed473f54681f646ba516fd37a1be86d005a3b3669b3d5eb0fbe4881068e0e4d1fa40c99492ded1e9746de50798bf03cb2534bfe551b269a7f6affc2c253cc8b87841c6a8d8019e668e31830e3c6c6d9321f38eca5cfa0f858c2419d8f073a77d99bfeb49cac5ccd7b46be4f9d8eb39043a46e3f8a793e31bb3949d945d2c5e7960bd392d8fa373b205a3d6cf985c2c89e3678728b2b7968c2ab459ae0e206c26f9a9dee661e0b0af2ed246085972455cbf1cc114f7e58fddeed34fa63ee407431c51c4710eb4cb0fbb2b8297b63dd6cba60906c5002ff2c13fb87b8c8047c0094a61b213b1cae39c2c7d788c89dfe430c3e7027f3fb0030c25680f1b79cbcec11a0a2ffeae570c0232b115c86bb3106b52556f7f8cabf29c07d1b074167d757e9842b8e8dc5e403379039753b7f02e5b35f9313d0ca9cf4249daf6f49f952af98a5658a8ebbde3fdd9c9352d412a582c9cc853b930052f81f69d6dba72b770fe1db2ec7a668d63d0b3ecda7dcab6cb3cf08f5b53b2ba1e259e9b9834c1a575042c4b342a873516aaf599fcede2445a1ec51dab3e6abc98110a2b480d3ab0da0dd68a0f04b0371c096a414eb715ec00121e5dfc88e565d58a8137d45fe07db00d65bbab7d27bb4a28a6bbbe2844829787f14add4381811039130f97099edbe491cf9ea128f5ac81a107a5eb473c4c2902f70c1c24ea78f2695fe529fe1bbad933e14bd1be561a68b2ddc9a614a67341ff4f03a5574ae0f001d0331f8e25249239160311fa2b1cc8b620719b6946bd8ee47f01215186beb98b4a66822d4a6d42af6b2cda461a49f31efdc48fd4efea4564c37d9f4884aac9e3fa003ff33766706156b90344577d41892727f0cd3c34711fd639bb5d2bcc615d1c4d76f66f8476cc0dd32419839ca90d0e7e0908a149eb04e36950b61aeec5957ce339385c976c4f2736e65021f50edfff777a96c8d71f3a8179b79a2c478b5ab8c68c268b91e83714f5cddf987655509ef589a146a33b9daf575c8dc8a5135d99d4c7a31ddd4da84704e4be74f94f83ed548c5f2612e32999f8987e353e9d48f028d8ec724544132881eb493cc839606508e47a3726cdf71686533d4bea08294c1bca0a1eaf1e2fec9177e358fc2f474af5806adcc799e25b3aa470b1f3568c462bd2de95272c3f60bb8fa813728a13e7609eda6c5dd2fbd0a3ce8c3dd7c2cf7a21d8713c5994b9e5673bf594a2da77a052657eb241b026bdf98737c61d6554c57672377a5fed8f0d4f1e290b7c59c237b375ed3a6a316d185ba5c1d730ea31a29937b0ff794dd8c365f15df420d238263d1c5a040b6c5e980bb8d9fae781bc31b272cca2d2c1993e993037aa3bdc3e7fb4bf8ef65ccc05e22f6f0a03792db7534ecf4abf1a73d62ec440a77626413371aa2e7e162fb278b59082ff5ee7d640e7f6c28c09c187ff0e20359aae8a4076e2f4b8693b76be3fac5306d78532394caf7fc58a9425b6adb42f383c06a2563538b5e8a9ab17322ae96e24724df16fd3d5b225f66a49b928e8ed9e65151a6973d1557bee01a67588cd54a456a02f1fa4c7aaf5dec34a85622bc3c026f6f1bf2f87fe4f6767c1c9eea76839d31a9974b21de57a0f7d39c876bcb69da54603d685363c4e194b70e004d8c9da442bafe6d3c6e2c2c4b2c114cedc5b9919ecde5efdedb7131de06b7083e1a1737978d64c656ec30b335386dfc9a1643d84d7b2cfc09eb32b0256b02827ac52097314dc5bea750ec8db0b980d9a256f94723b2bc890140d3dc2d856c9a4ff02e39ed6f5ae6e967feede7ec5f2223749e444e80033c9a3d7f2b66eda63d4ea58b45472fd9cdaa30492943ab93f597ab7e955188cc9f4f9f68d58fb4863581c0ce965b1874ce9a72778b60f84054eee8ad48b4578ccc7e30688a4f30717a053110ec3ed057f5ea81a63d1a40b360f984a267f27afa0f7cd8e1e797b79824042568944199b290ca3109ebb758da64c08326b59d318126a9f7dd767ee308553d9272628013baab34826d94d92c2388c0ce61ba0b3cb02dc35d20efb848f64423a8a5dc499a481a2c774929844c405850a0f9b74d4e92e82b46299679a41d654e3650d025f4ed59268f5c68162ffd34b9c9b6ad39b63c272310a015d0bdf129d39b4a6ba16564a2628be14416f302570d4c9836774e7222f99b7746fda5488c4ac5025b3a42fa6fbab7209deb3d9245afbce1b7344e5ebfd3a56bc0f7d8e468acaf48824d8620a2dd51717258a12930b7070ba095ddab0a76d7016018657ed95001972cb7d2c4fe164c1887c5a07ee7b7294620e0d6979fa0c8cafd52820fea29d44f268723f764c2d09c0f2b497b59b2ef481b861d8bd88905a7ee9c696ff4c776496803b203a69036a9345aef4e01129b2535041afa3f1485c682b9a1d017038c9018c1cdc6c9a6b6f514abeaf2690b45e84f04190db292041a3728ae496cdd3a64390d88ee72d857089e2f5d9c17c8539b6136a1bf01d66743b1bb11c24bf011ce7bb0df89864046b34b84ae7e0353fd5a4b81d831414a8760d7baa83ad696dbd1f2aba5527005c4829d25db3525afebd2a9cfb2bc14d02511e740bc1cd2b668081523524ef3074622d752a56e7462132301b2b23c906fb04f69a0203a60472eda621b9be222bdce3b84344f0f0d1309005deb405cfe92f8aa29330650a5f722c1df36391e486a98e0748303751eaa856819b6b6893b6c9a001b244444837e14ac89d1da68f0b8ca3b5f55032b2f0a5e70b818a47b3812d7392178b30f30d227173f94c60591b5c9dc584f60a71553741186705da87fdf47cbad47e8bac46b27faafd1cb427a4b996ef65b08ce421874581187187010277a43ca90d678d87f07ddcc535db307b96f132915652d0e15998f626aabb9927d623b2c133c8de38f0c1dee8f9b46b0b998a0727e8e2d0430b64ef88cca850b3a9828cc5f11f489cb70ecb30766f57c1394b4adb374f22e85c2d8e860f28178f1cf6a1f31f0285c7398030fbf1e0c6c4cc80ab9f341b8a01f9b9a41a7709e6698d13e7798ebf213b583625366aaed73daf91d4c41b5c4b838fb46895eb49b7d222d31d360ce2a8281b824825a911fa1b664d42bfb2ca3be18bc75853a4a4269062fc702edf6e74b6e882a22007ac208101319756800bf56eed11c3abb906d923a2944b164f224943bc740221a4aa6ad3d3516b4a02f8eafc1f8030be4a847de0b53e589fa1e3e63fdf93f322d8e8f05aa41852f3b0c5c6926c656b2960649b6c4691083111c1f90345e0d541cc176101eeaa3fb5e769d67698da7f8f91c63b92bf8a48c571bf079672fa9668cef1de6d8e95513db882732a2c6048edca265e96540759924a0282ecc05fb8baea91de4bf64e7fa9253aebfc9b5496c5090658d5ee4c2528b1291c79d138b5126b4edc1d721190ac845d3db43fc3d19da6931df51b2162d3e7d1f0da0d044ce9a0963d119b8a9b84ec8409afe4c363b928556265809c8162232ba08baa6ded3c77da0ae9cd274b0579bb22edd6269a0e040291993fc0577dd9a7f267f3c36232b7ef0fd2f076812a9766a291410167ab7de1f7c029c9c883f2bf6c21e24f12ecd96ee1c5f000f1b49f83e2bf2ad95ce035bc64ae50519d6e8803df53db6566d422825449c07b50dddbe4e12950408cfefef4b6a3b5514f8a813b4c1d656db9a785c7e3f7cfbdbee289dc3d4e0c2748cb9552bc6a239043285b741be07f1acc15b0972f9e7e9948065344e03f54ef61fb8c4914c9ea5e0131662a1c7166f7e56105f6afcfde6fcf7f50bb8ea5d9727f34c499a60387e7a077e5c9a4a419758270b7d6c5bdf867b0e18d4867bb69016c2741353495eb96b0850940e4d638cfd858a65230b85e865a08610799654efab5fe31b39072f2520bc0d3f6009815d0b3ccb4aeee3c8f925e7251bcf49cf2d74f109feafd37393c0b7f7cc694ebcc883c8d0970f4d6915205153f15218364151a1220ad15902a0c29d92043947671b10dbafe3af35c9f1650afb1ce2f40e0c42a48729ee3fd647101620129074f415db60b7f2bf0f8a2ed901e23343ef6eae52e0da6cc1f7a7c0f67e142ddd1371b0609e37cc8affea725613828a9ce7b0461c446a4ab183f235421b13c52636e20c811128a6cd7947e2b63d6b2d3c3c6dbe5b5639c1876ffefd52d882f3f69862102e386dc5f32d0096166b8e8fdfa45c000aa3d833bd6e3267afdb06c8b1955083abacfb4c31404163b581682427cf6c28a2d18d5de08fb1e71c3427b103115763f12083012ce1b49dbbfaedb7c742629b844f8ef61b73f620ece6aa0b824b465c7c99cf559c98558eec98de3bba44430788cf076a82c9497b318768c27967beca4d572165dc5148919759f6f7c05affb481e8585e712149bb9934cc4bca8c6a4029298ac36d559069513abe621fbb58811c6e8a172d223931d131c3f00a0c42806dd0a91599047ad9771277038bc085189652a02a44f5a099618d0b0f44352a0861f4356d562cdf68bc14215dfd88073b7128dd5a8079100f7d5020b9ddd2baabe5a7347410bdf9a8f7536f9c32a8363efa6dfc3609d34e403aa6462ac6b18af5b5505d83d68110851e32c5d410163a8ca83da094560483c2133efda1469b2462b4f15a0d71118a18c3f4ce0feafbab1bc8b4d9ca103fd62f03f7fbf933ce3af8453f7d8eeef289aed735dc22ffd12a490d2fa5f1600340531691de359706ddd0ace34e1b376df4423b79b55e0dc76920bd5faa163ab18fca1380f63bcfaf54f87a001d2125d8750360260f86b17d2a5621ddfe4df532491a3835c4ee873c6869ba5901c239d011a215ac90f9af060450f588e5e1ef4f2e514be3662d3e7953698b9ede80048c003e9b5fec4ac2cc07b0c58ab8b0c273c205ce077f64b333b1ca62d8c1d43d5e487e0ac92e6aa694381a7fa82ddad7cbd0036c1cce04fd007d1b6ce315a5f498de7d524dc64db641ba57b9a8c31f0850db8719283cd63d1c93e43fbb63f5bec6fa88fae606cf0d16d226466a121d00c4a40094bd658e4438f32ce70fae3678d05e8c9bd05467c4610007bb1bd33da6f762bb5e71a83a65a1943625de3b6d5f7d0fa1f03cfdb00f185cdb2eb9e76854c628c88c66ad23ab45aa47672d5c9ef7d7402fd3f97cff4cb2d921516a18de5b567d2de134da4b961da0e864022948ec1942fd4b23afef88a809658d73c0c7f38bdcf5ae1a5f212e2538e6cd828f9ca9deda49cdd443acf1886036bf471980f06e381c88e7d49c7042db1d8594e1c3df96568d59834c2e07410eed44794097ae5ff224c15fd03b1bf2d27ce5e8d859c4ddb3a85e3999d9f9fb928aa2bc31aeecdc7cefe62d8fa5f0fd3150c1ba8625d012810f3c8774e588574a0060e01a97d6a47069aa6d5d6c9cc8d44d09017e382f215f0fe5da169840252889fe12859ba5e4ab1f656d5a33ce923c0ae8b743ef271305dcdd76c57fbd2b9e022c9f2441a06372173cf3576a62c5156f94ef8c27c16d6f7a0fd6130de6807608ecaedf8f9e1c77bb2ccd476b503728e76b938d0d18d1f7fc989974cb59cc04c876e244466c004321cbb641f6b4e973573ab3070517a87135a9466584b34df58759e0ae12a5d91c7435b42ff11e428037d2645121fbdb2638675acd215b07fecf1ba8f39dadeaccd8296a307c420d8b5661b2edaa2f4543626945619046fbe4c39ff756327ec72eeff06bc0e5fbf08f8d812e9cc0617370c575ea30ed89fea94419f805e46bc931ef2fa33ea5197fedcabb53e19379ed073cbe6227131e4a0664ef52306e3942da5f2615f18bf041237d4d51e9fe262eec35b3758a95990155f7869475d172db38097a8d44cb0450a4349cbd06670e60ebd88e94b9ea52f25f3a46b4ce8f906530dafc2d41d53a6af8183c1a9e6ef9d3a6f9101a6b8ac6c48bd285c177e6902445e4651288ac74b42470bbe17858bb9ce06ad9d5356cde13d2a6296580d2d889069518eaa36150720813b39927a3e1f93bf60e0436db4e304630c2bbd65b47b36310a8ff2d88415c80fae8182dae367578b27f91866831e61316a1bd7a588768956d06fd10ee54c4531979f841686220087803c40d74e1bce0be2f2b53028578d920eedf1a42b430426bceb0bdb3d5ec79184503a3959b9aebae0be69c3491fadbab9ec5061cbdcebebda64c5333d3508ca1e1ab55d74fc68f7f23b325950c9737b96c90c10aed66d777b3825f00211ac1ef8f8163bb20b4d6391125f85d96a957d310fecbdfb28e1faa9e6df30a8c29d5d6d171315bfcbc512bfc06e727b8a24f2b29b3b8d0164a487fb20840ba22126fe115dac3e07ada272361180219c6f6931be4ef4b4d38f4f7bb2cff352455a26a21c110cae96d5f64507efd4d148130de7bf4a80f972b4323fa3430530701b4017c2fe861eada9cc343951e7a56b14ae1b1ed088bed653ef00fe1b911d07453ef7816ea0352fc62fa301b651ed8f4161aafe8712238076b7c50edd0fbedf53b4748e1cfb85ea969170b1f5a40a80aae576de112723ac94344b977e027a2eb2da67c718835d102afd72660908312626d1d2d73fb0268161e0dcfb94ba0bbf0f1f0b858a7b5dc9eb98a01d5cb53acebed742a7c8d5b7d091752b5527414abff2c3f6594ce8606852abf07eba34121d8ce63391028a83d0ffb08f3f2562ba1c70309342bf9dc237fa8806a710f152e4a9572a7115a5bc9d2144d56bec8afef9616be18052622103c63e4cdfc260343285e029427e3f2adc56edcf23618c7dc2319da8f9079295c9a4e155b2387d22eb5397c6a1d7c49fb499525491df9ce40f75b1e636ab213a76c5e3a69e73cae8e958ef7648dc3d8cc3ad5b7556b8d655d63d2640590fee421eba2d7dbc86b43b7348d2b5e3d68061b6a1da1416163c749c83ad6a8108ac822b30a4727c074f74ec954c9cd29f500b3f395f9e87a4ba868d91ca96ac6798d0a37913d35e95d35619f7bb81c7d6e281e72c5e7b6475b716226efd07e03aec93279a09eab35c87410245359831b765c0e9aa5c07f39f59061138b15fd0d2cc613faadd82528bc2ad4b8dbc288bf413074a001a1c9261c879b894bfd4228a22b96e31e7d91518942d0e90c91b9a2e78957157ae001a942b21c1a57deddbeff23661ed8aecb429e86c130a05680cc7065a9955c43aa1a8cd34aaf699b95b6168a83ed29e41166700d74186d8b3b08b42390a828ac56475427d64aae422fdd48a3fc6004b12d3156f99c815d4f9c9f0e8a74920efdb55d6fd9a97f49fa85139cefe66ea4af76e06e8182d1fad29e9138d1ea7d2bf33bd0db36cacbe3f7bdba43de49fe849f090b072b1cc3b3d0e5716928724bb99deddb0839707e65698a32a744ab8beebad4d8dea888ad22b34ec0e66e713e8dc219f8fc92dbcc6e4fbd23838bd7968e1cfbd5ca71c5157dc7f771e4172d575538567c7d581887b49091e90d29af6010f528471639d296316985b46e3e3bd456e88dd8bf3b964d3382e3fa1b0d3916df4c5dba16cfa5b0f026093f1730baa6f796865f6409206bbd57567345f6d78073b8d59456d8d2f4f0463aca79661db002e4cf84f2ded9317597a91b0bc00a79b1bfb1ed31c449bb8de3c24ae21264b4e194b483dfd02f9431cd9ac85c2d92548d8039243a78650a6c1f68b51f398f42fcb59770c1098221084b19d0bc0033b21aba9b309e6b4e1ef4e433422c5c893ea07bf3a96a2867f3bce0ee82299e5a9d05d27bdaa1e9cf8613aef7648e088a15067c71cbc8d01449c01cc8894990b4ed19fb59c470ac5bba3dcead19988a559f478a54d015ae065934eb1b652ad10ba3ee212768e0ec124ababfbbd66c4619e637dba63f25d86724014abe1535aa29d10c851ea61335c1adfb2ea163d55eee8512176c581501efa88889a147c0590c1827e83ee1a689a0fec9d5832214c86ffe81427face69b18c7cae1c8384786cfb5e04ea5ec9e5648d60ae65817cbfb8b11415e5ac00f831482d362f6c002482508f5c856632280f316408a7ca5d14e938396beb07b8803d8ce6b4afc4c4df4b305202a3a990650233a8649e0262d1bb6f4d6e8b9b895e289d95b859e48bbca25ce908e8967400fb2930a5b8a3488ab203f2e62157d1e6d33ae932be506a0c3e989f2e67bcf2ef7854a550999da01037bc78050ff71592007e7c0310d158ec98aa4d280a737f3a639663eaab3eb8677c28e33f883034d8af3253a343a4ba76dd4a7bcbbe869f7ac77a87f31f29b06f2c7454cdc470e54d905fd1bb9d07a1b3ec208872c76dd6866f6ee68b6e95cb9a84001bf512462ffa54a4f41e8ad9edb13517ec9649769d134a73f63753b939c91108c82b159641b80ea1ddd437e07cce4db984500969f72215a698dd30505f5ad22db24dc74b570ea78147e73bac9428cf72d85abc10977afb4c9e7140bb03698014b2665f2876775e3e0926d71d6e7fc782f1ea0ad24d3ac7f7b017172921db55c389b29c321f9a248907dcb8ddc0e11fba276d14406a3b9781e6a04825aed620fb0a3f191c3ecb7c0bb8e2004cb172cdada38d9c57f6b9baf9807b968e036ddb802756e174371b025a8273722dbe7ed7d3428cfcbf408ab6fd20e2197961387d4b7f8811e67300016db30f157a4b9b105f63c17e4a7ec399c2b2c08d60888c449208cf56ea4aef0fad67555d508cb7fe8234cfa3c6daa5a8c0919a267e900407ab1ea3cdf1990674c176af58ec860e4ade18626fe4f5905c04a239cd682854b5de9275eac564e77c8130d2d832cb77bfc9869c884acac5b98d077b9be7acd3c2a21dca52234d3edf50a983d951f57543ebbe970736b47726eda174356a11e714ee868e6e3cf188a1c8c356a752336539b4527aba64a8b34d3244333aabe175b60dea1d56270cd0086c3037ae8ad0518fa74f447b1abb2ee956e4ab72ca184a7e1019be2ff3eea07fb8cd5300213bf607b6214fe3ba4946398207aebf02fd6d06cadb8830674e9e10159d941519807c8a19e314db4ad2260d96d6d81f9d53eca5565772cf76852f0c54c6cca1a2f6ea54d7b983cf00c8c1cec8004f6e04825712106baece83ec9fb570937eb8ad0ddeee00e9a0731a1558e0a081f8b31a814fbb49ab48ebac1469dc8856d0876569ce722f40151e49a27779b1b0c689b1dc2b1ace357842e4f81b18c74ad3307ef1ce287e530fb12cb1530b4a819d5fa41864f08192c2408886c9c8fd3d730bc3d8b22a75cba86644f7db49aef33b26126c03f909e12126174f033dfc3e8c2b9be0bd9e9bf4e568b795a3f15080835c1504319a9d38cbc0625b0dc648416e09dca124d303fda649e6c8b6f025e29599ad3f205ec6cb7c8e6999f554cc7b334e6e80755dc957bdf755f8dfea3786277f14215cdca1cb85132b2760def65ddd9489dbb30eca86000d556b3e6f151b02edd7dc1f9f432ece6a54aa1b3bfec8ae253f904f40708b664aa5ca32689a64a9a0ccd50c0c059d12e0d34419546ba79bb1630764f9c42a70d26a368d68dfe6f568fbec09a01b8036cc09fc2a505454e2785ff159f0ff8c1cdd7bf24c9072d078c022243a6f7dfc49f8b6dfef04068d441cf85fa192ca0587e67c1d7ee9c43abba1e67f22b670aa020553550fad42d7b238904b40e0ab1f21d9f2309e706bdd2c6fab8e834d079f59cc46166824829d0a3a720cb47c1344e59e96432ef5b18b7838a3aec97b5bbf5a2281d4b2c363d4c1826e23dcfecb754b8004b6c42a6024acf2cb1560c960399a501e3746fe74e71dea8d48090b7d763fd9453fb27962be9cc9d9060b9db1f0c78fb27640737a7a1ac35ec7f6abaa89750b474159f74b7a159babe9af38c98cb34a640992f2f68b6474b4dda4f31794450151f6ffb2b490ac070d3682dbae8256834564709df91998518c647d894971e5cd09c80cb42f4b2410f4fdb4255aa82072af463075ef16b9840826afc82ec70e2a0757ee4ef4e5c5801ec09407b0407f385f9be2e3c83a88f136b790341318f7d019ba9c84cbc617e32883e119ebef0a90e92611cf4d091b3d90b54b84a72f84cc67a5fae4e7c20345874c4041b5a03d228153b45a7c3b7c1364ddc46111ad138305cf80a47d54338498e183b1540a4f35deb3c588094eeef3d2536789d1524c6338798487be3ad1ed6b386a613fc95c1363db2834e61e4351d120c4b299f9e989e8101039f0c1864d9ed057770fa37973e3df3109d4dd7fe089a92ec56460f8bfb3662a18bd636caa8d5160c270317c000661b25472b8226db7b4acd0df2a8b85fc14ad6560334b65e4e369221523456ee19fef510b6c21d19fe391b0652fd04906baae06c18b60b7bc8eb47c89dee2953dbc09ca83ff54a7288fc9989cfbc1937b37bf616b0600fc49aeac1e4adfb3e3c3214214a3182b97a8bd842f717a847ad9b7123342d22b4692080fed159350bed0391d9dca996b5f040d63322d5e32cc47b56e5d9bc1da07f1fbc4867430a719d93de9060ce01e41075fdfea869a6adae5451aa932bc6cdc086311fbd5f16d459e5c6401febdfe1361832474319f4c2a8e6b632dbda956e4280ac83854b0d18fbb9d10a7621895fddfb25f3483b9c88d43ae1c1c7bc644e936a01a64015ade33bbee86d29e4e35e9212cc575fd9ca361939ac16ef7108100653bfb7972ff913bba2c86bffee9814bdcf4bb0b7c78faa6c49067f745957ff19fc80ed9fbb3552c1ad82af63fcd347216563f76ac7f436d285e2530cce47345f40436e05335f0b83782d72a2212fa7df0550a6e95c5d9be26b4c978521c714e7d12fe736b0711c291344e8ed1227631943c056ca5b08bd0789a651269fae5eea2a2030d9122200e33c67e2e617d7f464960f60e6edaf6645ef1142665846457345b39450dee7a0617216cef3567e8efeccca54d96d6f1905a7098c771712bf52a0185fdb885afb327138d8423f9410952c70c724f65f438382fe8bd729b81a3cae3a87cd5e2479894ce449771e75e3e3105e7395285f88e3d07812a1de989073a1d4c2429a34f4e5eaf4e4bea7229236e08a9410ed0d3f3700fc5baf393c29972be38afd4bdbc2fb6baead60a8a6cdf9891a43d420361ed17c86bbbaa4ddb8898bdd1ce00529efad8b2b8cd895c4a1b008fcab0fb86aa17bf0cafbadf4c67109f45bc7a56aaef95e62d23eaa7a719d053b5706bd259acb52efaf8245f46c2bdb877db7ec14ed6f719ca2abdf6f5458f5c0da59d7136647e57f326596ca34e70288e8037e56a8725b656be47bb5f39b9faf7682153b0fa389175c191bf35dbdcce4df04a1449eb7021218b3714f32700204e3916e43442f67881929fab4252562627c5d52b8ad4a1bd38ef81de8b020d73e0d3a22d8286bc622747bb9e899300d99c4dbb40717f9c9fa9ad049ac56b8304f065056673c3feb5f9c8305cdc8e88e85ba97ec5cdb4571f556f53152c448d2eca26751e7807d3e1099dfa72d7317ee1f88dd3d4021b90b85bce71f334aebefca5393805ce6f6c50a913c949620b16958d1041181a60459789c283fb2cd6b8186b1e38d176234f8359921666273e46d37f6dda32d588f3dd3489eecd57da61adfa087fab71da84d762f788d54438f876feb26feac978eff046fd593d627869f4ac0bff7f4e14cc863cb6d4fdc347176e9efd981791e7eb7e717f6a7991f337c3c77cc4de2ec76e9d53a780ca1635a0ec31db81dfd9434344ca8ad6a96c53bec8a340ae858a5e4ba915801f0fe1cdd88232e2c6bdbfde3bcb06c2ea20f7ff2883b7ff42dfdf8911864fe7fd8c70e6222722b3fe6936b8c1f9a8fcbff3384706633500f4bef33c1a68ca40678177eb12ed318c58673346494d814876c0ba4d0e5dbbbba00d22b3f4d0861876aeaa8f4a309a2d490804fdbafce08d53cd19e13a83a084b17826f59fdb70d777d7651f44c5c013d9d45a0900f5488c519ef35ee9adf09b62cced340d36c15e1d062c2ac08cc121722f58d19b5ce90cde21de3ba72b1ae5a6bee314b8fb4625e5ba471dbb4aacb6385206685863ed6db4e862fb17ccc98d58ab85365f7d0874b93f7250af35b6352352893a20acb12c23e88e13ae0bb6f5b04590a691d10865fee343c3188bd6199c8ebd909efa584a093bec6398b066ae5af70d1310c9a710dc6d036c4144d1cad584f728b3d632127d37fe7535da4712d7573cd61fc34d94c02163c7e0f48f9175ec4fdc9183491d830db1ca985b673e847e20f572150448d27c355ef76841959c671dcdcc0a902b0ce6646af19d88d19dd9e5aed9bcb3e133352fbd320c7b65ea04b19cf5c9b3231a1fe563cfa81f5298e49d783478571344647432f7b5a6c67f87a542ae67b44f927188d7c76ea3ae33d755b1710b1258275bc01ddddfe6454dc180399852d6e59e2b6485338b341c9902e8435a04cd78cfece6b28105c6e8117085364a7212b2dae43684e8782538060c0dfdde2caee4417471acbbb2dad33b3b51098dc275f671a7089a1422b388ea9a898e9f1716041a92318f815fe326f31a9ee6edb0f5e07d647ff08518382920f47e116b5de0c5952e03d8d31eb99ad219f66a42ccfbea857eabb3e4a579dc4cdee85ef9e26e9dd0ffaaa2ffcf558f63214412c3acc0f28293b64a85514e3b2b46d8dab553f1d87e07a1f3ab2bbdf2d88ddfc3dd34b3136728a54d16f1eadf0ce8a8769d142ca3726d0f214b38b2d188c12909f8c3c3dbcb2537c10ee57a92c6bad374043144456635ccc817177d5e6241cbee101e02424b55688e0f86fecadda82e2ea06e769c4937ce4f94f60442d33f659280afb9738ef9a9115e30c9328bc2a68fb22b4941b411ed2e5212b406a887edf067d989c5c02cd847eb50b3971ed3c9f8f479b606926f5c27a47956c4437762c5f20afe2b44ee0998d0b42e50548772def356a7318e47ac6fd74c2b4cb11b52a71eaaa322bc6e7880ca09b0547ef531398716f9dc56072b7dcfd44623435f2b9fb38ac9c9d0a090236f9009d5c922e288d9a000b9b66e0e6f5453149a3eae94145925377a5f30f5cc2b73471b23732cd96ae3bdda6eda42635115d420ba04a58c29a45144f43150ca4d280cd2fa6eb296b17d1509a0a844bb810539e02660720ec4bead755fd647486ca0c415dbe2dcba2be6258fd6ecde084c0e09014ccd569121d943fd8dc5a3d77770a887b3d86b87b9601e8e2c357515d8b268673091ed06dafc8eec36198fdeeb9f11ce7950f2cdfd629856ca187150dff0aa4ea41041771156a960ea9b3e1927502ba3cc2542be5523cbca6b6574335740d45eaf3a488615b0017a2b44ba739242adbaa0c4fed61d69d6463b7c0d1fdc48d3be3006c0d99ce66e89e9a2a7a3520586f163cbf2c67dd667178fd81645e4952a1a0874dd66e0219b31aa1e40872747244735127e47e7e33b3d505897bf4b0774510d2eb784a0985e3ca0da1cdcfa5506a5d976376d9d61c9073b8a1d93df495487e366cdc4d1a980ce77338f08599f62b419af0a55c1cfbb0fca867e8a676a616157e8d99b9802fc57f7eebeb39ba27decc5a11041f9a5cb5685afb67b0f1a6149ea5db48e1fe2b2b5867843d839985bb01cf252ef269359671a98084240dae4faac53bf25b9a644476a632b98f7bd7b6d03a4c77652af801ff3c74b78ef3cb893090a11df3ddaba5b1e3af4cd70097c0b85d6d42894a1a73df9bd7fa3b2124f0fc18e3637a151b98f1a65d25fe9bba2cbf724720ac82a336aed2eb5820d193548e75635af4d93284b18cb0e1bf75f025d12193b045af9b80151c753cf31e7834017433a487130c113150ebd09f06c2d49ff291506a4513e3935bdcaddb4c4310d05fae122ca84198a0e725c3d8b05ceeaee212c5809815b4b1ad509c4099abdbeb1ca129181f5a71bf81239836a3373a873dcaaedb4f70b74e98c598feebde10094370128f254bdbebc93bfac7db56ae23c4b0900ba76927d163baa7527749228685f537fbe550023567a53369dd7aaf05293b23dc777168d23aaa18703f50730aa279e0fef6703e5e44a1aec190f029c9ab25f351a35309c829bbbb7c660f08235da78a990b7e9d49d0aeef94a397a46fe8d3e75bb38029814c4af48995a2b4d1537f735a968ac944e44cf78ac3828ca6519116874daa3002662e22e9d37041abdb34217241fee6fe9052c896503f802c11b612128cd6cbb4c15c127fa56770c55b0d7581d3e0f211e6bf7c203c1627f0540ac3d8856604dc3ed58c0988126a04d6afc0813d1fe0a64cd4f4a6bc9f5b4d6daef1ffc92b91e694334db429b07a6f83cb83c996802127090448a89e0cb3519b398e8e9891db0cdd9d314a440519d0c8acba7981590d332d0be3be8eb592448636a688a1e3b1015e5a879157185c7bfdfa61884a8c61b4f0b31d29016304f7d76d7400239bff37265e9ffd84a850230fe22a01bb75c8bff6b76d039d3c9e54c307ff6287376ce9a3495357b587046e41eddd782f35ec7328f0565476dec6843bd544c09c52e0e0bbb27fd9007a3f1bd40faf6116ae095f88aa6e77e5d510ddf2515280f5d8e4744cfad563b3abdda46dc70aec3b01ab3e2f2fe272dd1ee29452466483d6d58cbf67ec91783f4337b7c668eeb0223e4af1ffaabb778e0f4e7ed0fa59ea3251d96ef31cf88f878712eff90d58c299cade2c4fe96076f57d7dd3ba16317813c1f7477d866887d2baf202f8b9937b8b712902950ad85f9f3f10698ff10c55270c79aa88c900ddca646e8522a296d1f89c9b2a301326e0dbc28977ff39ed12338bbe0c797eff03e9c3a827951368950c5532fff47a6d273851016ba4ef19d679a8ee69602bce564e02387a97752689873d394b45fbacafe8e452d4c7c0fc445eaafdfe597103c4fa57fe0a8a0c2e8ea5c0672a9e1e53d623965a80f2bfee9ff37b9cb788be1d29a7553a0a41924cf6a2426cdd15396f109c3a7460faffa75eaede863c52ed7dba8b3ef61fa29e22c8a46672ffa0b085029279f72187380522d1f8413105923811439dbd15723cc7ca35fb6bcd8ce225454b4b554ed7540b329841ad64fd14f3020a64e11688bd547b1f6ecabcb9c963d3a512c97df98d8a70e57a7cc20371bc1e596f8d19ab7d53b757330937db27da4605efd0e1455a4a388bb4c149a651021fb6dd2c062dd519df7b72e0fd24f0a061a7a5a38eeee6d47a9b6ac5a4f6cb6e0f64c0ede52b72076e46be9439b680f2d161261489623b0552bceb990f782cf78ee872ea3188cc623d93f6ec84fd073476a00b6a7b8472d01f08e8fbd2f793695f5290d07f2466d3188e62c06105bb1d7f6fef82a80862427b068e34285a71e712eafd48676495f9100029fc74a6199e46a1b52adf0868d9439090bb42c137aa39a86437452c180824da0b3a74e7059cf4a6e845063180f8cbb13ffd9ee5916fbe7ebe79d91c4b0be8ebaf03562306cde0ef1194cd83a37301769ab6240aef97be00d663a2a0f0485c5e7efbfe4060b3495d6a4033f702cdff5c77f8df2380f5b5fd67eac4faf7ff5b5bc0d577f56cbcf9ccdce5773587cfe0449e24be1608aee4868d66041598f55fb8c43e0dc2e68484c2df7d7071af51d74d4b07d73725682db8cb4757c65087635115908e205093b2cbb6fc030923ef5f9ffc96837c9f66766b3bd923fad0415929f1baaf36b6713b460bb016b4bc82d1f619a8dbb3feaa6f820d8030f5511254c04d0c7453b0bcc9833a28566d9e14ff69ed058b210c2b57062fc27f86fbb2ce7545cecd5bdd3f3b8f4a3c39f7fa6414ad41fee16d9249745fc351c87a41fa0c46e5f832a13119f5e80191597d60e244773df997bdbcccb5404c73ac31e81f7214f49c4149167ddbddf11efed5a43b24d6fcca14c5cafde69ac9bacf8cb50da343dab331a08bac4fde976aee8ec2cba25f4b6dd91238a10e18b6de93a2ae294193309badec1f32e8b0585afa89bcf29c566fa42ac9f1ee372759a8c56a481455167fe7a66d7c2d7c243ab5de4d4cde6e2e9b1f8053ff42c6d08e44f844d9c77507eca4264d53b1a82e43e40c2719edeae8eec2ac0ba28246d5f14774ef5efa2a0963cc0e4c2b3fbb818c88c38d64dd207f47f678284000f4264a1f9a354f873942ecbdb772312adbec910308adde4032c8be5fa2a9d88bdc72615abfe8de92410e25b09856df18a69f599005794b0b98e2e90cfa15b22459678648d7b0121f6b3b3c6ba64b24a85a7bff33aebbc5b3df7025e92f885a05daa997f09a58f7a8b83b57f8068e167bb598c9f749b27d33dccf3ff42799f8ed24596aad50808e65892cdce8b8d2c0b7123757e6473bd3d7ffe9d780ece2235085765b6e40e0185a97b6605ad7b3b6d033bff6568f6b2bf8e43e54928a68429d5c0d43cc12d485cd61c051fde71dca1ba6b235c5f886eb4823124bc021aaa746052923a5e190586571786fbf132bfb6a1ce3510b7483ef8f2d332538ce294bc5cfeb3385b08590c24cda4c510d888be4a028da0886cf6be9819dbc7cc2c013edec842789f82664e1323826383173b0f3873e0138670b7a270a78fd3022ea5615fd7356a96bf779e053c4f6ddb313f787c1f79cc14186bdc873e0863621bcfaac03e3248bc017af067554d2eae4f7956fd7567ccca9921f1638c972094b47abf2a36d83dcce549e5018164980c371fc18caadbeff37cce76eb922484344cd9155bb660b9de504d525aaa97bcd15d25d16038f1932195575f70a54ea106625d175ead8d2c89f0f19b847db6be66974136e427d1ec978c3b0720cf9dbdbdc1d571461d831bbc1e3d7f3b166b3ee23f01b612aad3976471edf4804f2b2f2d5ddccbe18d23277db8e9edb60cdabce4a5e761e90ab72c594c2912e773374c5d6b79e547ccff20d2a376c53363e2757b74adefa1cefefd0756be8afb03cf0324cc8bdae425a0666e004b4432c15cb919ed0c898d7cad6b60a50caecfaa260a8b8416ec8af2ec47e4974fec0929721b3d6cd751ce73ee8a2fec7dd1e46deee6074fd8c6c9dccb7098593e6f4fbda6057af08e5c129411f4b369ab44e18f6ddc6264db351b047c7b02044104eae7ade980c505a0f900ed76a76ee723239fa1cf99be4723418cfb0d1838573502e8fd210938bf98db609b69713054b672fb6e2b07c5673c03219d69e0c6e1ad23aa1847426814670dea34ff14fcd7ca3a013d185f260f53e2874ed33bc77b4eee1f11a5c9bbff27046141aad780dbd083023c0abccb3c8fe3bf4b25c12eb23b9c18b07c4cde828cadf5c8a8ca27486bcba184152fcb7de2865a5b03cfafb30da47ac760dbde1b460d2729954ddaf459fea5a09a89a3ad24e99bb0e7fadbbc741b207335f3b0b88e5675279b7e26739db65e926b39168578db502f88fc29512f747e723fc14bd8518c0373d65474b2c0f5e04c0e0833f375a6ff554871d338f2c433752121b608c5568ed31d0b82a5fe622b081d5a1242d0daa44f8a317b3f8efa7fba6a7444a847a7a15f316c3a5c02b84c46a60382c8d9ec14925f027c3e9ea306182f3cf40f9caefee99b593c842abaeb3403f145f8bb4a0e624b8ff9109f2e5a98d5aa7539dea95403f3d1a6c15977e9c3faf4a421f53d1d13dd9e7e16799a39bb62288628453ae56624eda2fe4a0d91b0e34b996a0afbc7c5af7b3037e03219f1117fdfb798c0a5dc2391d11f81502a2e72e7f0497ff19fd068f03a1726c5ee20d59bf8a29534c741dff611e89f4de33327b88d008567ea0f5adc4f0feb1704b254c3c8ccf93d27a7cbe1171389f33c3eeb393510263b8b734c70b635d24c4bfc8aaa5eaea96809a52beba7ef321ba7a3bb7e685899dd3289fefcbafed7c5e4af17d0dcd2ff95e74109805259f602755475072e74e08c89f60edca7b09c69608ee51701c57b52013a4b849af06c168adaeec5c45780d11afe80a6250bdf9df427f42345ceaf5c9b57d5cd3c25fcff2afdcf72dad49e106a3223fe4c8468ea3f6bcefa0388424de9db27cc20aead478e45be8c55cd611132f5c5fe13ef6d5dae4b759c4fb79841e3d9b9d0f42f905c4244976f450cf90ed8045d17d1686f2991f9836f68203e071739e39da26284efaf29d1a497cacabab3d072cb8fb1807ed855c8136b0d3f6a060111234163f10e1ec5637f341c8b3c6f069297e1bd138688c94e277883eab4892ad5a67abcefe30a00d81a74173c864a65ff28899dd9a0ccc6bc66ab2396a32d79a8caca0cff87735e8c6f2e25c3008f78b19f9eb7f1468e0ed06ceff27bdde2445e7dcc0857d24cab2573347145efa9d626e2e28def010e51eae256dccbfa2583e01d4b1cab4af91c29a1b3e1b861b6a82fe3fde2e763301e26694c5e08d0ac76a604758c87f24e691cc671b3083fbf04a94c80720e680fc10de4444fc2b9aac94ee8ddea44e18e4665a017340cf0b4ae2f230b278ee444914231260955102e9281818cc23ed9a3d4cb7bf52a03e453aaa18722ef2c80ba5b8aac7d63acf949acf41c4eae26847deb20382fb949b00fa76d93c5d3396addb2a9de700e9c41cb681e74189eb2fa911a5ba4b40e038585ffd1c14b9815c78bd3724391c47c737a0c242eeeabdcc9921afb034fb394c430d299fa1ab9e424c4914941e9e014e92b0768e7db1dad4d0c7e110da871bc3de137f6e1e62a442f8deed57d70560b6467328337d672ac7cfeb6b9134f91a23cb0aaa54a9a315f8959adf6ea4523e061c52b0a0a823c58c4b52e282a1a631f0f5f45f6f96efd049f7a365524f27c13abe4ce42da6acba37d0d9ca1228d09620b3456c17ae46c345e492c2c0b6d40c70114bb35db83168bd7663168fa7dec6ac0bc3cd2f707f4c81d8db58e991fc617a0f8876f9db23f6a7ec589f251d7c528b4d00d60243371993ae1db4ac7ca77085a10ef146ab9eb79936018fe60a50966d314957b30c1763205cd6bd4fa85149ca07d13e3b6e15c1855de58332647d6477c492b54edc74317d2d3e2ff6753286b407cf43f87dbc959a5b5cf9c231e9258b710dfc65fc5a7e46ba04fe5ab235e337ea252a6ce62fa7926ad81157d649d21713d4c825ed3e11f920ec0393bd9e75388bb90670b2bbe8ad87a9586428bd832580c74a7256d4c376d76cff2c4bd486ba93ac63de30c6dd9476e025dc2e45154b2ba40bd291b84d7fc66c99bca6402dc82e65088bad386789b6bdec2dac52228c8eb97a49bc8f2798ffee29e30f1170b26273b4a5c887747a59cd13986c8b179ca9a27b8b7744abf7a98653f1cc60aa5f99ee2b2d552b727746f42abcc3347a67c6944bee1000491c8d23f8df7cc4c303f3027000253feb02d003269f994872a02816598f66d109abfd86e29679eccacf6cbf049beb09f2ddd4a1e24d8645321bcf8de1ffa556d6e52769a8b720e8f67d27d3fab0cb3d6a93bff82f98bfbc85313fc0f2070af78726966b404c4eb0edfd4e75ecae8ee1299ddada7fc7df47ff8bcf9016488070303f69eb6223bed7d181421ce052a439076c5114d8059feb3376ce16d6d4669e9fd9130be57f7ffdef71687fe6185489ee94fbcaf7b383a207778a32e04e67e13e1da9276c1282bbfabe8500bf5cc032f6e33d12cd6cc00f2821ace64bd430e9ea1de6d0b3e6a38ff172637b6adef937057097d14cbd022ae7667e852d358b224823e289e723ea7c52a21ce8c9854d08e98145766688546808bd9827f4abb86e145dc03b06b9ca4a6f4a2d599b324696b07c46c5efadd6e3ef31df570d57e441c1eb89bc11667c58f2c5686b6daf7a06724e322879037a5d54e42b31248b9268ac0bf3bc470ba6da24df1fd02f8c8dbd6c08e21cbb2989ebe935d4c7d9138186c1e3f59dd2b5236803221b1e8e2326fca300572be112bb830e5e10d71c43e4f0db849df80c80a892721c3acce14f8d2a846660f28d89a8439aa1ab69f38e4cfa210497ad0049907fdb978572ca34a3dd58c7f7005174bc073499af49c50aa249c50d2d0fdcde6d60bd5e9c037daae7b8e3df5f0917d6520f23a962a5497f34f33a0861bece6a65c5aaaad07af3cab81e6f045196170eb9c34b7f085d99d9966d32ef569c0e22927bba1dbcf1180151e646e3778d19276ef2b7cc1ca30f25411fb94556b05980e72666112d510f7969a017b48640385978413b7b096cdf822c573c329141dd640fb508fb028bf2d418746f2503b6a4dbf819ca80421b5bd83b76a896b5494519e76e1e8d6e729cf63ea791794a45319ddd7b0a5c5deed550811834c32d7307d663ab5d11d252acabf8d2487af05a6ca3d8a388939c4a2cc871b425be718d048aafbe394963e75828a246f6b673579a0f2199f4859c684094b4ae66302445588ab8cc87a227457752d88acffe761d8f3d119042e8aebf89923d51f92dbab95439fcf7b6cac0123e2d20aebedc77500005ddf7e1f1f27db5fa38148a975f45214c1f292442137ef502cf8f7a0ff0a495fc7803e1e39c7452674263efad55552d915a0ad324b78ef00bada1522406bc5343e6bb7f44e8a6532fb1cced41ac42e30b199151b46cd7b2089498aebc926533a35f90c39adbb2e5987f1ac4c4049f9bfc058214dca1e542912ef0252b04575b725989c697c8b37de409abd839e32105b91e4067a9547c1c053060bcd49a386426c2e5463be05da6bc1293ce67b4871f4cc3c96d91164eb45a8f034047b9aabc23a81564c1ed3934497d8d34a271ad18b1bf9f708a9b388f264c56fbec80336e80388785edf71604f383932572d48944d1d3b2311a64cc98f6b1a0ab1c91215a0939500539c14dc20e70d81f89cb4e9448c9b08beaa1ca47f76dde2d98d054ad0eba7f8aeef10f4bfc402895e4a87dc725be335e3848781bbffd7348a18d88652890b4d84593336d51dba3376001114630a414668ec77628a72835c868e33314a131c6f16d751b35492cf15d3b1df31dfd6cb2505cebed27a7869c66acd8aee596630828aaba47b07b5295ba8900e9519c69fe7350f871d91421d4571020962721a73a8152a81ea457a2ec3d692b5904064db4207f6efa871e04c462703b97d6535fcb1dea91124aed06a32f9219816c171a2cbd740d597256894fe008f70e5bb02f4247020656c140562f39fff2e53bb9c50374a46355bfa7e12f1e555af7c1625a46635a1bf823f500c7bdacf96c450f13c1cfe2e36b4d32c3cd9d0f4469967bbada395e5784befa7bdde579819361f579df8b7ec4915038c4bc4779cb57b69d25980ec0250cb436252a3cd1a9e10b43c766c2b62ccd44b44843b34002dd4f2b8e9d723c778b5be1d59d34393678b8c176eda52d4b48864b0ecf27836f1469ba21ed00c70fb86b85ce09e08bf514f76637b1f05bbacb5709c5ffae052760900d125ca42707a8e6ca45246c94f70ef46380689d1e7bdae7a0c35918ffd1c1d5cb739cc2b4b00f1db5d76e6ae2a8859b6b4e9a8712892a74765cced93e86f68ca513b69ef0c29c77ad487cf6e99267bc3d64f3d727a0b8d08bfcd2ab9a6a4383c2fa11a7cf353be2e68aaba0c8b05349243cdaaf9487558dd9768586e85e03a2dc31726e8e4bc558477d3af6a1a53b13172ac6d6c95bb2bb65f1c4a7e8d69cc4be399f985a6a5bf185cd7d85b9ac2668aa4a7d831fb76285caa84b2d1e174a27d5f209f8582f03fd2b2740aef719507a223ba0f961fe1b4fde2af271c151796747d30ff0238d9b0d428893d764360a9d0d3aba49101ea77703256957f33a1977e91a2b543ebe766a30eb00deb9022fadb7651f0bedac0af7a4166355bae489c166e0aaf2a4c9d3e3a653acaf9b1d3b913c9847cf8ccb0161f49cc3751d02fec66da0e47fdb811976508619c79ca7db3b4feb79d11570ec155bbfb658410f377d92b9b98d4cecb76290a7857fe353b7b3bf26d31bab75dc7316a81328dfc022d03e8e5835bb6550500957dedf35949c2af0f7b9d2c140bc534a273c90f46268d0d80244e177c96e27a0f80ea6c34bab69807814f15058d2a64a43862448dd7ef0a0cf3dbeea4f9c4a2948222227931181293aa2c5b56eb765b795ad40433a47aaab8eadb9b40e1b8c0a7328e00de2e3f217cf0c7372fb538ab92e60def2e363899d1781ad01c07ad1908a7f96e4786465caf4457c6832b9ad5be27b1861e3e20b6b34e172ee56573608a31dad2d80d3f191894a97b050415819d871c9004432ed8883fae4638a0e265218dcf80fcaf9c1f747e22ae826f53070029a37f42efb9f1dc66c1360db6d8a99cb7036fa4898e1f7ece4401b5493821ad8065ac3c9618e22407d873dcac73464d29a3a079507d4218e3abd6fac1b1b84fa6a45e16c6e7e32f05cc5b3981d2dadc37f5917b37185e00ff7f285c20694006b86177e0a798a87524ebc04232e9396f172e31d96b84acdad24cb484938b688e23cb7348562a0cfd4c6870a144997493f880dc835afd31a66f617c0460cf60b5fcc8e9688dc726286c7ebabd27f9909cb030f2c40f4aa659f0b085b63f00ab5efa7e052e3fa5da34cb92b42000a93a447409841abdcf0241d934c4965b44884aa9f2db9cb825328c19c32652ce549e056fb1620c808317f009c8394d9c3e41446c658adb9679e87dafe28ecc3480ef3f0ce0f08f8abf6495fc04a6fdc2854a3ecd3526ab64166320718cec676d01ebaa168a797004fdde840467a2703cff7def8b44ae638825b9c77ee767a2ad978ffe79ad025a67238216a65f4c10ab7005a4d37f389e758e68e7219a857240481a1ae7092a9f522eb3947aefbbf2d58ce5e20f63b4680cc5697d9728c2ae8c93c2e0cb377142618698634f086b66e7856a8979af11e190b5f59007e239149201ec6d1de00179c2f9737c89248f14a1c6c5c1d5868eea0b98335a8e4bfaa0402ed91dbe41eb5c10ba69bd4d8ba315527dc3ed364e074b5d48f1a7442c9c6c68c9afdd2b95e0ca4799b405c398342fb469fba13d4a1bbd7a8b8ecda87bcd310e7e7ed921913cf8c91d0de90ffd2423558c3d1fff02c7068b4a71c4db6ad7ab579e86a467008ced3f386e1380dba9fc8c295679513247a04b94ef47a5128ae515b01712096c56ba8fd76607251482eb2aa44a5ea44bc41dc5ae8bdb085cd6b0b782116f9058f8a47e1339d4c846840ddc9c1ec48e8968b2d807020c7419594dde3c81bb017d46b5afec169a09cd3a15914ede5277a80291d4c3dcfb1ce93181e36a5dc70be9d48524ee1082fd200a87056bd1dccdbca422fe40bcfbca501b3afa77df50c20f9331f7d178ac0372aaa66d3850364d3a81141971c23d719ebc4e842fd03900f2964e84afb76a3176db401f04388905b109af09e3d4024d3005f74467b7a48089b8ba3f49004da1d2d11d173ae4a307fc8a80f9838e478c642a3228b12d014f28410c38958ce1a22f60f1e0f5b9253fc8a601d258546198abf51a9ed434d7228933a1078ee0740a6a06372f6d138283ac21defef5a645a43a6e18cf7c90cf3930da89ab07337762313dea1411cc79ef1a2956716eee204a8296af5a167d941b3336a4f1c61c1d3e95352583fef00653fd0a405a4b3c4114c65b7e203e3df72bbcbc2b32a0ab3fa02af7678fb1190036e013a0df6275429f8b93d5fad6447e410b06195e8014adcf210b39093b3dcb8293b89e02131ccddb410e4bbfd149a7769ef67479930a60641565ed529d56339920952ca1395db876507826baaffad2fc9332a9be8f507aa30796ef1d909e8703bae812eeee120346481ee3d5a718f5eeef90cac93506179cacffdfd54410dc7bb7183f99bc7dd40db657cbccb427afe819c6706e9ec2532779aaa0a40a400003b4f9fea195b3ebf3f76f4ff6f08ea74b62d63662985520dcb39be73dc5c137acdd2290e236930fe2f210f40c0e53f6c0dd89dde966deb51882882c71dfdc7c892f8ff563e4599e5534461780a227e95c9a3461a75907dce5f0ae54799dd1d119063f0b7ab78c3d4183f77c2817d730e523e04317272c372a40799c988554c3e37a0ebffbee0c11dbbafa792fe5b71975c2b1f52ebf9745c9fceaf0829e6b384b73b1f6a8152b296b7292fe1d286a9fd7b28583afb49d522adbbd58b008ff304b10a7f326add437e73a84cf6d91786747ebef7a9915e7bdf4d66e6b46783ad98d68dab43fa38dbfc504186abe678bc69b2e84f15b18f6ec864e171a2acab43bd37dd9ef32b33fcefcee23e23d4642604632a7ea24730d66788ead512da90053757645dd78836d87ae0091535aa4632ae3ff1413a509fc79141b8dd053a57c5ead11ccd594e715bae081a3ea90dde536da039161debd293a80f4b999e7c5c27bf0cce483f3387cd1cca4655ba98902096307c26fd6dd01054124cf10347dbe044b44a9f16012a23cf712b910dd9644e54fb9bf9dc9f12ef9aad06f5150f92772c9478bb0ece8f96381b140521f5f0e49e98c5cf0dfef9a1e481b6667babc585d303ed518c726df02b91d3b56ffe870d43048a58c0dccdfdcb4874fffd3012243c3ec9143e771782810bf60920ce2a0ac5c858d47b99ec8557b73c61e6ab40ecc84f9f5437f39d7f137806023c98519c15bdbca4d2c605b433b9eb09c401af66fc199921979804161efc9ecb4e10fef9af59bcccf77b91f18f34ec0f098be28167608a01d4c74bba2803c57569f92ce2330a39fb52640a337ee21715f4754a7ab8db25b32680f19d7e8a7cb2ab3646918810051db36d8537de7526633628a38b78b41bc11cb55f8bb1f5e5eef23d79706cf759d6f2f13645c352f26dbf6ea4641ff1375e619042dea2a9031db367dacabcecabff12f584423aee40b2df314d9742f6d93558be379a0eb0e0a24f4d886799b9bb710c01776933e977bc31b38acf3d52cafa1ebe0c35a68d81e75343ba974c1b86a7263c11b91118dca10395f9eb03ca0766baf6abdf57bcafb4aa00f8dab2cdcb92f88cbc2736df6a32b3a45c072547b541c69cf86135414052778f466b96e4e47522b7a5980da9de811495d0807b2fd5d023e58dd5fc03f62543ec08ffce36b48d2c8a93142d5f4e8b5aebe43e50799c14c714e67feb92c20ff7bbd0fb600f9353e4eaa6bf20d38c40dbf091c14409c084ad6ecf737c33a315663df81d6e9f98f06102800d2c12dd2aaaef97b641a1e7d6a05bc344e6a0a893a06bdbbc31acb4202b283856e0680e783b5221b21af6db520b92b119da819dad7cce5f0f99970c3310e453d906fc34e650e3baeaf103d324c4fc54be7ca3e09053650ff8e00a3b62b71170a10a269c8d372ef1dff6657bab5e955ce668d9b9515ae40e5623ad8193a367bc33cc870c05345a4d320233ea3708a200a1b56534f66f2d910c4bcb2ca9adef621e0650ae93605289834be600a875b4ebabf09c43ec2907a38c155c9890ecc3753916e76b5784dbb3d8b8695066557303b2e3d1f9f7388381a335c48faa9347c5588fc00ba4daf1b2dcb366b0125e2f4033c9a84849775f349d53a5144a0a0c5eddc0ed7081ed1915d612e2a5647b975a26b2f505cfe8aa459190099a0e1469dea88a447dbfae1222d7c1ef3225d34ea68b9750467353dc7b01daeb4a1d4c9f0ff0f95eec38e1da5e94f8082cc9a497ea027cbfd2850fe81d2795cd5b6a439bb819284ada6454361e3703820641b00ac465f716b9c751050771b607d2fb52cc3182b33e6ad22374ea50589a4e406f68358069c118289f783296884f44a36e340364d402da743e7a5d5056554d3a393096e3f954da21aed9b0f401c65e41b1948e628b0537e856101e1ac7c1ffe22b780dcf808718c321104e86d93de0b125b015d8b24f1f5578b38cdb8bfa696a027fc06f6890e5745ef6f57f6bd28d1042c8267bef2df70ebf079a0760073ff60456c6a22c8c8e0e6ce1b9428bb56a9aa6812d71bb8db52c25841c1c9b2143604bbc60ae165c3397cc855aad6ee36cc5059f16ebe606b6d8eca8727060cb6d5c2baacaa0d2d4992ad3048e8b15861f9f960c5c718ec0a3cac92b7805b644ac055be4145034c83290ea0296120b58fe62a2eb379eb74b584bb2c8e71856a784e1b7518a8b1396135fc8671b303c0c68ea3c63ecc1196bd1985e77f7a3ebb7b0c45a588ee4c96024ccf1c1b20620b89c2ca18b30a0a90580214c82896c83d6274be8e2f3cc14108168820fd5124b2cb1c4124b2cb1c4124b2ce1c3870f1f3e9450420925945042092594504209257cf8f0e1c3878c0e68708759f6d25e4974b0bf1fac8b94d065baf898d762c78edd76dba00cb84f5f7c3125fc28fce827a5f4dbe60f5058daf6ac8d910b5d942ef08c570e3a141d288619478cc17d1ad1f386e86c717681e7eba45e44f5378f435f3a9d3c7df499f3dd2db996e772e82ae539695b46079c305e9a24723abc8d26758732504665bb6e34fa975d4a5226469340972d27ad97c5326de340225d68e6606d84a4c4e4647402054a4a0a152abff6c7da8a15dc0c1698d3d11f5d892b9b4c59db75325565ba1c716c628fd65a6ca71b579285bebb91157bc41c1c1c1b992e6b2854937274e9748aa3d96836b5d6dae2b5ca50595e6badf57bad2ff5afb5d6aaf25a4bd57badb5d6fb5a4935e5b5d65a515eab0d55c56badb5a678ad30eae8b5d65a4f5e6b0d15c56badb59e78ad01a824afb5d63af25a69a826afb5d65af25a5daae8b5d65ab3d7faa23eded4aa0300b5d65a6b4b8d32a1d7eeb5d65a5dd45a6badf5f5df0cb5d6ba522be8b572afb59e84cba1ae6011c34b8964038c1a024083cb0b00b4b898a1c54a8b15194a5884f0c5d082c5ca8a91ab68d7543491c7dd4ccb9ea9645a286543c9b22c2543c9b24e859622cbb2940c25cb4446d949961d84e2446bd43a6971247644d5a352a93693ab24a54332a2898490555426848e62ad5fd9ccc13427f34258d775b36ab6afd9b5b1662f50add76cae82403a20952c994e5fb91d9c0e6ee6446da049ce9a2ec9568bc74d0fcc7dd23469e5dce70ae069c6b03ccf1660ee7307347de73e61ba3451a889424d19d49c19d2a418ba004fb386f42cbdf0034d2a41ba3453a99e54132921ab26a930023c4d1d1b9ee5118040d3c5e9d254a972542a95e4c1dce54d937eeeb206f0347b603c4b1b60eed2069a50ce5deae8d26ceda8e12e659a84e2dc6508e089c6d4f02c4780b9cb1cd094c2a74b1485fa414918944435d1a49429c013ad09c07357a1054d273fba44532920a920a91e55934c928027aa43c3730b41079a4ea4ba44552a1b150ef7ae69d2e8dcdb05f0447b5c9efb05987bd340d3c8b9774c97a8cd81b956ebe81d987bc334e9fa023cd59817cf310c43a0a984d5a58a42b5503ea89f204d2241023cd51a003cc72460ee71054df5dc638f2ed5542aeaa47ea480604e9e7bbc013c559df882b63c471c60eef1069a44e71e67ba5455aa48a34a71a1bb788e25c0dc2309e0a9f614d1a56a87c4e0199ee115307709c0d31513b953a049d9b9e38026dbea58dc7fe8d285922c548667b804e63e039eae9af8821eeaa462c0c0dc5d74e94af5d024ecdc6540d33cf7af49a0b7788e01731ce73d4bcc9d053c5d3a2bd0d4e76ebb74a9240b3dc73dc2d3d573ee2db81cb81c3c5113b502c50255134f1a0f524d4a9634d44ca5523af1a4a56cd0c1346bb5542d554b85e9674f3c693130660fa69f2d59ca54aad952cd966ab662e229eba92106254b592a854aa152a89a78ca74025083698642a552299d78ca6a68d051c912d66aa95aaa962a9eb21817da8329a652d1968ab654b415134f58cf8b18942c61a9142a854aa16ae209d301400da69845a5523af184d5b4e8606a5b2d554bd55261fada134f584cc45cd41e4cad4a555baada52d5564c3cd99e196230b5a9142a854aa16ae2c9eac85083adb5a8d4a5134fb626b6d0c1f46a49167a6bbb4ba5ddf4c4938d892f5a33c6f372e37cf5e0cbd659bcdcf4f2138921e2683c5ab0f05656781e8ec603d3b35001a940a5b414a65fb9dc5b5a8c4a4b45aba5c560fa15281b0a550f8a0a854ad583e9bd145a4a96d241c95228b25496d2c1f4f72433c95059cd498632c9505c86a2ff096cd4ca624e5a262dae95c5607a95117ba97a542a550fa657517291a474349e11e7e551e7a574307d8a5a2586aac150180a43d560fa14110dd91616a3f1b45ab685c5607a9420741367b9b2aa9e4ba552f5a058ee06d39bfe523a974dd994f4523a985ec3504ccaa5faa38d2daae6288bb2a8cbabc15403759acc89a6dc8eab6563e22953c517f4a351e75d2d6cafcbede8ae76832333553c6935802f341e4c8fd26c6c341bd08f381d1a8b785712dd94254ec636c6564dca1c95419a74f3a874c3e9b91d1c0d57d3a46f9328c9422f5128aa895ced46c341c992f603d36b3a98a2341bd842f19544b765adac953591451c1c1871b273323d00c9b2c9948c2c69369285beeb64acedbad1e8a7f0eb83ee05bf7ed1d76c6449832c7daaf16004b766b3c33127f384cebe2fd324ee86d39f24a1cb32b8e1d8b1478f88c9e96812e46620d666d868e564664b4e6686293bce40419b873263e2ed136f5ebe409b6e0f6996ccc38937dcd8a359e8af1b75a22afe881c27234b1147b2d0db517332d2cbdf85a5274f7ae8b59b2ec99464b1d9341b4c2f535c4cc4c9c1b47a9c0c06f9c0e8882a828a6b988ff519bda7ad289f38356b97ed3aec7984352b7fda0de2dec8ae1e74f28754d9eb96db4188aebfcb1342f36ef477bd8888332f88feae5bef8489ce4693b25f0fe2465fd98d3c5a4402be229048234b309aa51fc3ea743f4640705f4168f0f5c823afab53462b7781fbd735d296d1cb3b2fba3398ef6b847591a5ee6996ebd7755dbf86e0eb8ac1d775fd24091d11b37bae2be36648afebef7a7bdb8dd85ed3a66240eb22708088808767063c33c67ebc08cb6606cb2b079d26048343f08cc11347b3cc434e077b48bba6bfecaa9711babeecd1a5f833136404a4fb21719a840316c81bc053ef882fe6ed4dff4896f911b6800562f6dc3fd2070ee44169d3a419f1b5cae8a23fe9cdf82b7a1096a40d6499c7c172f0942adc42f469bc4ec16e8f8ea0fbc191344daae912a84979e6e0fa7a883ba7717a3429fbd49280a66d0811cecb1ee7437c7cc6cd886f297dba89fee99f4bb27c62c7962c56ff60d64ba04bd0953dcd226d6e0f11c3806500b2912590079ba565d7c991fc8568567f33487ff3b95733a649b957784e1434c1f99c26544286e0f9939d2ef7aa833409b21a366c1c6bbbae71be227f481dd9a3477f2cb0bc110181ece96fc6e0f99e31fd4dc9822df325e884902fa27f1a4796248d84699210dd3f3da44931d0747d5e72009ab26bcfb4ccbbfadde2667437d13e44e872dbe0295b3e4d8af37d654e9639c0b33d79237bea238bc5daf04d4f19e42ba394ae6be69ba6afdb38df367dd3a4f9f93a2776258eb49137b065ca1edd3be249de00be989f32c8818c7e743a784e1cc096f9dc2cc0f3dac9aacb92859b94e559d0d40468ea0b215bf2e6caf9d08fdd3ab68c4d2dcaf48c419ae442dac8f9f97dd4cd4b96ece98e3d355077378e5c8499444c1c6576a0d8f6370bd031b85d7ce8cb17d210f538f4170f737497104348aff63f651e86d16de7cdfe3cd0d1d3ceca8f1ea349f430a77a326e0ff0cae8afa2504f071d3040ef94329a047f02da8b2b0ba4e1d7851cf4e09c73c239e79c73ce5a91e0810efc7a1995be7e24adedba0a2fcad59d3ca19bbf200f05c30e1335ddb60b918cec0621841327063c56e68c9cbc06adbc3b34be36a86138a7f45c708c11c70b961378c142c4ed9a9441f20c57f0d86b4053bd283ec402c777f12207419678ee24776edbe5cd2ebaa1dbdd3cc2dc452ee8668bb9d5e68d525e3074f96abaf801688a3234de609a5d646c2825fcc430de4c9f982635a03ffa7d34a231d565f8f8f808b5df87458a5c82637c81230e7c419f5b6a70381eda0d9afa05c78fee4590f21871e48d3d60c491971347466be7446185ce5e3e5a9bbf4b04b5ded71f45c952c969a31ad52cf5d5a587e07a59e10f5c3fb91ceac6e9d0b85e8bb1b75a65add09b9fb55d371a4d7a4dd8320b404990e83183f3f7d5a0f4c2f40765d7a11f3634e8e69c73ce49e99ca1b5d64a2ba59452a8a2f494524a69ad34053bb8c110891df0c09d61938eb3c57036295bdb038521123d60707311c20c47118e28706c1336a1cac296f96b06dd3c84b1f232efd200d8518228f5a69c19c2cececececececececececececececececececececececececececececececece10a095128b27204bf4c9820675f08321123af0c15a6fa3203f30209cecd66ac9c07881262f84017e740390a5044b10703d08f9f1e9ef072621f1f24ce119837f44222f4b16564981b5e2e981bbcecb72060be178aed062ad40a0941072706c78e06df372a3f08a0b3e2d560fce620e8e3bf0c50ac38f4fcb5a9c23f0a8722a0482e98c0b76c960ba15cc0767189e9e2c86ef5c02eec02fce22401639595bc0320908c0009e534785e32586dccc59012cbd30e079c26001cf73060a789e37f8a145efcb2ec0920d1acf330309789e1ff0e17992a0878f180196228a8767a904043c4b28cc78965690d15d0d6029daecf02c73a0c3b3fc410ecfd2c7011e7a5f860096e2ca00cfd2040578962bc0cf12063834680ab0d43004786e2c0ce0b9bb208067998118174902963a757a6e264ccf6d841b9e5b092fcfadd32e80a5e6293df711a4e7ae810dcf9d0318cd7d0196faa786e7e640009e3b04343cb7095c3a7b3f220196248d64917ff11c9b0080e738851617ad7dcf1108cb73644286e798c40ccf9107b81f6f004b2bcfd1261e115d10c323096049fad837b62272e03ec32fc02de0be04a04c7986ad1410092afd19b0347370a03c431d019c78b601770b2679fe891086fb2c6069b6248b8425ac25b91cfa45962c03bc6c17e029c07bc1726878d926c0cb9d0f5e0f5e56c16678f0b2458097bb19286c06cbcbf0b28ab43e3b78d9eae0e52e071b1f2c7f002fab60ab3280976d01bcdc614f1e072fab484b43002fdb0178b9138097479606cbc78049c9d2f573f2b23579b9bbc1cba31f2cff92e291a58ba7e4654bf27267030f0f9687f1234b57aa062fdb0078b9a3a17f5cfa07cb4b1a59ba605e78d902c0cb5d0bcd0583e55da864a9ae248b8f2c551bc9223f8397ad0c5eee58bc3c5a61f94f6563f0b2ed5a78b963b1e265155c5192254796e80a2fab8c3c2f8fbaebe5ee5eb6528597bb143327c5cb2a98e248ac25e551bcac3242e1e55177c2cbddb4275eb69d8997bb122f53192c4fe26515ac8962f8a89b3be60ed8127398b0e251fdfc8c34d63a6c060736298c060810d8127db01160280ce6c7c606b6c4c69d4a0aac158fcc2173c09668697c8063936ab5604b04ddc6da16391a464a959419275507e2059aeae56f8841398ac967edb2729a67442c6d987c7625fe562cc7d178625242321229a5369a14771c881768ca1e1f632492c49268124fe2e831c68f4e4c4a484622c522a59482e8b5e7ed1aa779700369a774479c6175e00598c1744169decc667658eb1931b1f62144b076c9552cab599665d94b96655996651c96552ecb324c4a29a594524a29a594526aa8cc8b3936991aabd56ab5aa5a86caeacbf67ddff7459ad0bb6b1b08a469204d544364b55aad72c880b40dc0960cc017281ac992eaeffade59ed947a1125b25dbbb6dd281373ac6ac04053d6f87a67009a604da3608d550bc6a29e906599961d5a0cf366a6593b372fcac41c590e992ccb6aac56ab95cdb62dcbb26b63f380d838cc6e99dd32cc66771eab1c0fc7d4ce0cf380f0563580b061b5cc6a999d57aae6471aa66db86e6f1111f3704cef274bddc3f3e5bc7cd1a2ccb8981e6e5d81201a5cc99106cfd85dcec75ee92fce86f31ae4893be2497eca6be38b1f5419e68c5e3a97f94303a0095a39822d9d3180298d3453c875cd36c9a61caadc5a15fbccaadce852f491d027a260523c1ec54f90463fb9c9e3dfa492479291c7bb6892e8b17bfc0bf7f803c86892f6f81e7e68c0656c8e46b4d6c6e82ffac8d28a1829204b2bbc28e3d9eb2a8ea2e228f39df38347182291c3c2dadc525c95cb6bff7b3faf0c8eddba5deddcdd0eba5cd75d74431fb9a293dc91975c929bdc929f5c938feec94fdcd151dc13ef8be228b79f722156390e1d656429da5c29aedf1b8534cba5f26823ffebf1a749f229bc3cba522e142fdb4be511a3c0a8d0f15ccf120638e5b97f7eb414376215284ff9e468a838caa58aa35ceb2d050f2a8e721c3ac58d8838c53b48b784a01c8756d1e8d6370a412162cedf48b92a6e8a6bfb4b71294eb939d8a3dc2824a2b87ee2364c7fd747d74f6ea36ee7e8ef7ac9eddb23b7677ac7edee764da79a47dbf44de3748ffeaed7db39add39feab77f7403893e9738d36e13f7eccffec49ee3bcd06618964dcc520a826e4253772450b81eb56635015fef20547234e8bb571da459d14796a2bc64ce892e91b1c1d73519b034b23c4100d125d1218ceb7231820038060ef00090445d04004f3d71f398c142bb066bdfe0ec5cf62d3b88c787bb4817b983ea9cd31e0763e7b08352d85e56164f8a06b7f866b35638372b370b46ca1f73a6beca5225652e172bcd626d9ee7d91516cdd2366f859b1103cb9c1ae8f91bd726bfe48f143d7ff924cf9d89d73d255e1396c483cdc2799b977b088cc8b3cf36d338ee9d75599681b28b64a06c9465d95fb22ccb545996652c381ad996659948f66de336cfcbbec2d1c8382fdb5fc8d1e87f9bbcf3daa5d98d584ae9823d764f76af884d56c3a03e70cff1d0e262ab57eab44c491b1cb902f8e23abdb246d2f4b703b65cc7ae9ce99e6eb5005f4de8c8218425250f34498c494caa24c68e3dc29354c517d7310cf4214430e87d6de36260986fc01c27c2bde34444e08a873b0ecd3d4693b47327ccfd06c8fd059ab6731cc7711cc789dce36870221cc775cd6ad225f2dc5d44e4aa70333a2cb2c5ceb68877a3bbbbbbbbbbbb5380ae8dfeaef740079601432478d0c25acb166f6b9236ede7899ba3d1b2bb2964354cf7b86c2e5bcc41d25bcf860a37237a46444cbd1b41b4fa094dd0b66e64351ab69efeae663141aa664c6b1fede874cc1cf8bafc02bc2e8740d3f652e4094393faf26962745d879d25106b4f92d065d0edf508a4f3b2b5a1a26fcf1d723a08610faae144cc08240ac1d7fb50487f17845e0d5bbc126717461e1e0cd38e659896223bb6d2485bbcd276dde8bb8a4a7777b7942a381af32d53703c4c6fb2a4b53c0dd3759127f278dacbb62261a5b4f0f5bce2832fd2f50cc385474eac310cb359762cb3fffaf99b30b6eb30b8192c7004d2df75eda0d3606cf546547fd74537c25c1bb0e5fabc41dc1b4414d1e108c096eb10802fae3992251ccd6a56cae8d18b3227dc0ce9c599a8a31bbec41374e92fd62c9e8068d2fc47dd62d9cc364bf372f7b44cb81995072a5cdab27ad185059057e269b70d7bc1f90629a5aabb176882a4797ad1b3cbc8f347f2fc129393cbdf004f109f54cd72dde4c266813d72618b2e6c960e3b81c5902a11ecf219f42c55d737eed2849b01f28c8858c4cba06fc73ee26860e73c23226e567f576e16cf0bbe7ef2c37a98b76dc73cee464c6c3f8408b6afd965f68b0b9ddca1e7414640625c979fcbbfd19523b79770343639448cbb220387cccd2a0ea1d1e9560e1b203b445c0ef5241c0deb71333491463ed74b981899feae87b81915f4b249a9922cd7bf7f34ea3ad5d5842e374bbb1653db733c028b381af64dd3a49a980a8124d775dfcc26552a95fdf6dcdfbc28c379206e86767b4dbb71e6461d0dd3301d83da625c873a3e3ff88a30f8ea793959829b54fe802dd7e5952a5637019622bcfe1327e421347919c74ad66d330dcddb72bfe36664efcc1342f3e28cf5a28e8e325126ea88339a6d6b23101bb2f4d22cfd1ccbc35a41160bb33da8c1dc0ceeed191175b007bdb9bebda05b44c49c170447b35d18b0a5afdd9b6dc01d83a3e16e8e47d4441a9a689382b392736d0d836ac1f160df0f2c97ad373473d46b4793b0593353934793b2531efd5d51e822cea3d18f2689449e8dc620289e630f5e798ead387349deed891bba77731f11baaa8d3dd06472fa0805682a7964ad78a20a53d18db7ba6666c2586fe6e4a38fee8a128bd3f74d53ec201d55ff685206b1e8345b8ac42605c785c84bf99c29f3a39932e10fccbc9f2b3e4fd224eff3f3295f9977d1a4eef32e33fb9cdbe70fd0a491cfcb6812c9e77b68128acfffd08026ad7cbe4693527c1e882eb1f87c104dfae7148d4e391a5334e71ccd3ce52c6ed34896959b7294bb721417e52417c5472ec9b73b72ed6ed9153977b377ddb10bfa75b113b7debb27bee27a0fdd15f65e16b76b9ae58664a11f759d6c89284ea1a2492aa7c7a1bd2b03163f716570c3b6b47ae5cff515f7c44117e36ef7ec7217b9d9b52b62afe823774371497eaf3dca45f1958b721657fa48963cea54ee1fba27aee2aa3cc555f17b434fb929be7253bee24a16570a69162a7a91a51bbdc29bf7ae9747f3a27b83e86f5ee5da6820fa9b4f716bf4379f721bd0df3ccafda1bf7914b787fee649ae8c03e010a3bf7991fb02c3c5c5b7f24e9927eee6234bdd0c5521fd5195cc913aa1299a5364ab4854a7c8d68c4e4c4c25a78f29882d882a80a450c441a4017d0c4dd19c225b45a23a45f61a5d14d1eb453fb928a2cf5b297f88648ebdd48126d1e96512b0d4394db2ed034c71a4126ca411524c600aba087491e8966e26770788b16b331366c64c0ecc9ab982698210d8923b0405b03de57c20827233e256b919a283620de8a2478e86b520cc1b22626b844e7ff4d841d0d499ec2976d1f3041dbbdd8d58723ed88b44b7b6bb10b7cfcddd0591d7424e8074464c3c44f4c1d8c9aacb1306e23a5151a74990a3112ffacce1c9b109bd863e7d10e3031d58b39bc94c0f1fdc006706981e06440c2182b167d1bb6b9d15dde62012795b7f5474b97796bbed386f05c754277abdc98d5874212eb9454c8c5dea883e7910894410b6609f3ef61a963b630067fa2961845c16c6953436e02ef500d3b70fb501c22444a1794d9809c363467ad9462f7752e4c599e738a371db15850ee2dc3e3e9409588a30fe883b7aa6094c2314a21230bd11309d9989371d79605a133a0c5d1c2b13069ab01d2416d99aa669689aa66930ec82b0cb6177c3ae86dd0cbb18762dbeb05bb14b310c0716b126021d4268040c0f99a8f5ba6c8030c4e9a08d6c23231a64a5acc0744d7f5f8d78724a320786dd3a12d1e9e581a928f711d3eb1a1a267459e6bec215a0a93b8d78eae8d26805d3cf1c32f303f00443e4943bdd4820681f1f2f77a3d1efe30316fe3044c2073858830d619c20141815baf96332d139b23461683a9e558e4af4396386340b7dc7d0740e1d37fec8893b3e9fb74639cee4385363797437a31e98fae860da3e26f7b9d11f0d3d74e38ecb83e9650e90f6a1433e216f62d4d3d1674b55dff78f7c280e7971460a5de8d90577e8b6902e370d4d936a3a054da0d3f711d0a481e9015892341b80249878923de20b7a9c16d89c00d3a746100a7919874b9cf1a13e5443572874612342c4b83c0e25f40b25f479d1352d74e989a022504802b014c3e96fe080a6d0e94a8a16cf2538c31687336cc51db0855e7463f0e20a200b7d8b1219c892391967f29cc174457acf510b1d497f341ed145d171e8914b44f7916bf2921c7469c8cbb186e4a19be30c1114e73843e2c599fee80a1eb943a4bad0afe73833b3039a206e09451cba104b1ca150e833e443e873ce2c84c88b8818858715cc9d7b66658f788af0c584f33d6677fb12d05feaadedbad1a8e618b0f67943b73d38e4e5153c8f630577b8bb2238ce1db0c55e047717f403c2dde58070b8bb9bcd86bbabc91c1aee6ed6ba980e86bb6b9bc6e2ee5e432edcddbaaab8bbf486e2eece28d35d8903b6d8e3d03224eebc15d8623f23d662772186deec17ed06dc1fc1e0709f8ebece8ae08671239eda897e9d12036f08fc40e78706fb3068c46ea25b480fe98ec1427ad08321123741708ea81b1ff8b675435adb751db2d8230a9a62fc00c4f239dac41b0ca0508a8302330ea1cb2ef27afc002af28824c033a200cfe88229e5258ca878638652faa3f311352bf5600d8dfa8bc111065b39c1093d5dd771233caa9cefb3d987494d6e53d3be69e70e92527ebb88686e075189d2e8394abf65975ca6699a16bb9959a97ddff77d9f13acb5d6da8dc3b46ce3302dc3b2ccabc1cdcc4aedfbbe8ffbb6cf0927361b212931c94eac49c946c28d64c7b68dd3344dd3344dd334cd6adaa1a6fd45d3344dd3344de3344ed3348edb6a689a07c4867939bb8d2ce21967942a9eebdaf77ddff76133cec85149e72595e77898975208edf2cdba80b021e9e430ed1a761b6b374b1f7c5dfa904d70235dccacd43e9eeffb3e27586badb5dc6dc66176b39bddec866ddaa66ddbb66ddbb66ddb45db6a3beced38f4f6184dc2be9df0f61be0c67ddbb66ddbb66ddb44dbb66da26e13d510759bd5acb59a8d1af276c6f365934e2ab399cd95cc640e32bb76bf1c150ff56ad8690308993dc16a1ac6596b9d60316badc669a2ed5926da324d5ef961d662cf6cc5ecf77ddff761986d3ca7f6046bad859ab59e9d9a5d7137c25420bb3580b0f10007685f274b41f0a872be6fd5ad3a1426139acfa844ab192aa3a054432300000020006316000030100c064422a1400ae354360f148010728e4c66521bcaa3711264210c33c6304208000000000000000033560300ef9a954602490be958e4604973ad45e4bf0b39736600850bf7df2249f1346f4313c9fc9b06def58067306ebe02bdf6f10aecc96315aedb28415811efc13cac855219868a489a11274b8564fe51444f941169688104b244ce3eb2ab66866f11782ab96ddd72f10300fd17446f06e88f2697bc7de2e060ff9e6f6953491838e4328cd82741cb3cf5c7f3e9edbe3dc983e8a73b4163a285c9092ac310920cd46d91014044bbd61a9a2e8fdd906c4544bd1af49d96cf2d020c85d6b683248d9a9e2f3a4175e36f40b360c62956516feb0a1e2a4a927bd925114f1627a306cac45b5b272707302ca4c290534afb5c05ad611b23be11f902b085eab8787391cdc717f4d1d588904b67f637d1afdf4a5b4c60c81a12908f2166ff64fbb47194a9a185cfab31c4c302b0c3a6f9304af3d776c347721e048f578d172d54e517b85059eb64178cd025426aa27c1243fe52b5dfe4c6db968f9870dfadc54ad3f388f164c6ae0c623339b1f325206fb68adca5400f19bac153e7ede4978b8c0dd39e7a7b3302b3566f60342890af1d9942b95b23a3dc232a8697929c78664cd25a892d3c4b755b3fa3014aee2e7cc511b3b1e58a0949ebb95aef7f1ba38c0b324086640b8d2c720201a4a2ba42a4ec86e0bbc65a661e58bca975bf7604af32d35d7eecf0001dfad151f7a2960deedff2945ecdbc67ceba17f3f4aa51b6967f0692b6e495a26896be769a1293c35f2d53e495451cf02ccbc6394518a1829cf84c103aa468291fd39013bfea36450455b38022d279291d057c3ed8d536f6af20084acfb83477be5bce154b304733ba8eecb61088c0c46ac6b9eda9f0cc84a6552f07516a04ffb4c61e6645adbea593a682a7924d41c34643c3c1af07bfb4b293c5848f6e689aae6bf2c8dd57d217859c35502f015d3c0b2230d67703af0e214f311fcd336603147dffd210f5ecfa64d30a779ec3707dcf18abbecb21e32b98d2fd0c53e22aa777b705b8ce2511d46c9abe2e08e68892f69e2275d4f436528afdf770b7399c091a594b8b07a33af9cf5c2978441530322807c99e53b892c2f7ed3156693ee66d033429286dc610f2f6b2ab10757b8094c1fae202abdb230b1010ddb79045180c15516ffa37e6a07507a2c212e0c2dff90abe3618fe221c6c6526cf3b61f51df01c9db42b7d034ff019fb538c8a6402a44e954042a0e4905bd648b1005a407198cda881e819936a379bee3c38547cfc4c41f1fe9fa42a6b6ab4c5ad735189ce201d968072094902868d7a8a2e7c58589b6e87f17b50af5a6f4707f18fd346055a652da4a02313417b02a537649f03738b5e5c011d9332d3cd59aefc287345ef8a5b743167f6dfe68b996f5bf709edcda06ce7d1e34f060a8001dae646eb6cc98db3ba4a62ea81c21b2c480acb1286479e5a13ce688d9b45e356a155cefc25421127076eb26b1b597a46204a3e48ed7713d70daa5fc151dc02477ba7f5aaef7d81a2c16a284e20b8b9dbb90585f7648546772014c99c29cdee2d0e05b0b068a98bcffba6762cbf9667e0f5907490c4e605212edefff1a64125d746387e4db884ee162ef485724ecfef7391ebdd2a51e46325d8884c94dfd51001da5af502ae924f2c6621fa20a48de5a6cee8c8e10b38fbf455e32fb168a058825881a05a503339598845e31b18326b355161f733c49b061ea26e5315185240c02d4303b60c73bfffa1d93fcad05ad78f028f83e668c889779dd9eb5cdede6aa3e582aae3233772768d590e22240bcf0f95c5ff4983695574a3f5bd68e0f56cae374b7c116ae59da4a2d1d6363f8ae1bdb66297a70c3567a87eb5a45bb01e0f01a8ad0ec61353bf5630cc553bc77c98352bb68542a3e2e52047e4c1acdbd20a34e9d6fae78fcb85b4b29b5fdeb7d6b4c0b7a33813f9917a52a854806cf9f14e1dd16e3a7b994a9009a56205371bc1b0e5a46dff2c3217e89a04af614c358062dbd0f619b529e379d72bf2692b8c85d903fb4158c104822fb3df75f0bde22ce22e5c29e3bef4afaeee9108dd66e58df84d79f98789460f07468919cb65d1e4260893a3a9724838009d3af2c44b4d17449b3476fcc3e265e2def13499b2bc82e2be23a49638431aa5500163a5eac3d53c77bb75b28e22079c1db77f205a900cf58a6e2b3ae123834d0e607e0a5d4a516d57459ccfba02409de21c965a5578a3ac2784f908610aeb16b7731029300840e8af6ec80445184b82a0650da2c522100278162884a83330444df73884c5c7410435170f26119d9048489b77c66d31b44594773a8c78badffd6ac494811cc129087695e21124b444222acafd86dac6f0f8328ddfba9dda4489dfcdeb6c1b07d7188f5327b4e1643f825e7c68c76618fb4244deb9f12f31fb8fe8d9646e1e1a92a8cd2c56c9befb9d2ecc32a0fd3b1df7ce27ebb21645a37f908d4f06c0021151dd73ae8004bb360672ab9119d02a97ddb1ac81826a9ae1266a36d66828ef1b390d6503d243e385c96b356061c8e6473cf582d106248cbf98fa6adda85fc64f8f93f4a729100f79605d05bde71b9499a111bc9a21c0faf514068329025271c739cbfe56d9ca60e683e78ae4984f58989592ef769b4a81003db0504c80a49c9a7903354d89fbe4115d60bccf27d7f7d4cfa82114a2b3f3cc92cc7044889c8e009ef2ef4e9744d784836ae294729121d9737142e120750d5a7ad8b13a2b05ed79e84e19f82d508f96a917fb3644dcd9963f147de5425d1cc3e72e7478dad2e24d4d7431dae22ef65dfafe18aa751f762175286550c6616ee5a5cf356dbb157ecae68f6f9f620fe73ae2185d717b2dd608afea020ec66a3c3fd19d456b9d7b9ac1e084b3f66e30852fa19d90a28f4afa2b7036137f2a5040d0f2c7ae07710e0e07453bd84d3944382a9a3fe47592f7898ef8c7c7ffb79ee6e14f164445b2dad086868062c60cf040f5d67b2ff0d5cd63dcd2cfae479f8ee6d6c8542adfda1c942c70bfef6cc7fd66b5e20bfa69a55183ba281fae96d3d7c725a66ee817aecaf9b346413494ea94f04b7358c68d19550dc344e2cf97056926af10b0db9582b1d67ac41441b57003404ca82f052e6ef7707379fc1a69e2f29d7afb279e8d51a98d6b8ad9d38323dfce0e4d69a01c93fa019986797e13aa5bd278c35ac2b8d0fb40e4aef63d0b1b69e9b2eef10ee46fce0dea84be0a5ce15c6133505d17369fd7e32f87f2f1b87ce56c2c1274bd39ce71a4a1a3044a2b442c8543ee061fe5cf07f76640297b39f0cd6021e03f8c828daafa345e000b181e4129bd25dd97e29f775720aa68cb59ab38e9f434712fa236db7b302c720697c088652f0e656569d4ab627549496f88f72b1df20033f85602cf3a966de558c79980e82a10ef95bda97271e7ef2c35fce693bd6dce5cc1430dd39e4ed2978333c29f909048256a3dc958cbe2804094b2ea8d8d8cac4c4947b87b7acb98d21aa29555d00356e40c68be14c75a423aa64504b87b9f0d3dffee79f3a09abfbe66a129d74ee59e89b51c0763ff53543112ce13f7694cc3196119505f6c96f9700dbeb312f232edc1cd4a13cbb42f32abb41fd97ea6403296ca379b693e895ca60982b3649752985382369d5d98c8abd44edafeb5a98d98d4434f7ba6037fd6966410f6e289a8d79929ec367d6310cc126dc10bf17cf3e407205cbe04468afb2a938f206c2a4c905a1b0082e83b27c2bee3aac4f9a23472408fefeacdb8f6eba30e77115ec57d20693e335fc469beca33ff1678ab297e3af1e5cce2aaf6b919d53b190de2424603514aebf656bb81e3b8dc35984e7746f215d43e10db2f9e6789039a281c8b55234d8f3386ba901dbce88c7ad3e7fc335ad334226a44d068a1af2d8cdc0d6d4e80ca04a8acf5ba7c2e8ff7bb7156e651e9d74b0ff68ad54df574867f8428c4edc479b89cbf63dd603956e38ee9d7cb52face9ed767783cd55cbc79a6d4732941cfb76b652e568a1a527d4dc49a6c7b3e254d49a66b1642fb0ad214bf131670318b5ac729e598ce966336f7a5e2ac9ce7bdcaf9ecbb856112c161c245aead9c726eb4e6fab3a8e743cd8eba8148a57a4a405bd838ddd62d0cfedd9ff89b795508aefc526a24260c51df00496697e4011e5ef57cc8d51910af5c15319cbe2a6b85c11373e36244e42ecc0f351578c50b8f4ec37afaaa270ec3901f8e88a20b3ccdace63131eba1e8194323cc892d61859107ca2f9bfb0adbabc039ec72cd98cbfc81e282589813a74ab037fb70f5214989e6a2b144ac06010cdd0f42395b33d43f23a6bc5448af0cc100906b7683e7e06d314855c513454da26b1972f5b0be180eceb5ed5404bf513b0f2e1f8f628743f54e183d6fe9fda0e381d53310b2259ddf0a12a3060f68c0e3d312087fe2f58f94408e550a5afe91b9caca1d2ee1244b50c2776989e53521c05872a3906d3d6de1de2af7a03368f6c37046bfb927bf28375f5fa3046ac811ae6c9f206c4bb3549099132ef9f2f89e4acd854b600080200ad5e6ea59bb2b80f1c225fc9215d2033341afbe5c2f4c7b2e3667f27edf28ebb3c63abb16e82f3b2a81d280658cc936a984c92fa5288d8ac259eaa38b8b316936b5db180e5395f5ff2c94a681a062b3b2881a7469a649527007651315816325a90052e7058924940170d07009602180737f2843caf3fd706f1cac7eabef848c2c77880e05e7c7754b8229889b73c96f3146e3d6c90aa528c2499b15165bd758e43e50d8210a258ec7f2bf4ff3eccae7374e0ffdee2bd0eb9ffa9e6c99d45c13ca7eb2be009c29e0ce25e5c23d6bd17decc7aeb381dc5a584b80579a6a8d2cd3751e26fcfb9a1ef8e2022b5e2e8265330f2d435c0ad911df4a784f67e83506872078ec5d2ce1c812cc61c5f3a3ba51700fa20554be2e2010cd9229cb4357767956320484effd28035496602282ae6e02ede0bd09b65a053749eef2c722b3c4edfc5909390d1a05e954c0958bd984e2c02dc7c289a8592c3e4b1c205321b0f3dfe82f26d54fd929fe43152660a203b4066b933c983a567199639494b94fbb599be88b0af9b5fe5628f3fac668b3bfcb42c7a4703c48a725a343d24aebd48b74e0a2a1dc393a5aa5721c9626ef536324cc87d0256f9ca71a8dc1026815b48c4314354747f1854ddc4f8514c3275ce75021fc4fb1e4d37e1e051ebe2568a7ec5cdc57219f898dfc9b036f874a21953e90446b83053ef8815485c05369f0e72c0093132e1d709da7de47f7f2de949ea843f0ffd55c6868015a214bae66f3ee276f427f59950d8890e2c010bfa607af2a36995e40c04a03098fa06393137516f89350d9085821c688a1264516d8e9908d03b656089c614270618c34a428743a621003f424b1d4f4c1d0fa40c940609327f9cfe2aba0effe91990c32489c048100f2f51e15e173dc3f40670d30056dce9c458ffe800b0c50ac336cb9b491a215a887c6c1872bffefd51c6d261d4c3a5fe9b595373c428c8faf60efdc04f9b3e3dfe74bef140dc8a0c1300e506406cfc2757cf08e7c52a9ee09aa2cbc7ddba986a7ff177f64b53c44d2a989e40faac7affcfbc8dc79a99ba65699ff6a5cc855e499f44bd42479435694a13c3851d5cd166f2d0c3527a9ef752cb6e2b1fa906b43a558e1546966eed81401d15e38ab487b77704c1758f54934bc54081b23fd6a1a7d0efb339b34489a8081378b2ac22c65a325a2cdbb8ef89080022c945e79032a331c6d191083111905aec6826c2527c248758e55f32651f586ce94755f8a296f6ce47846300696d8f2aa65bd521756543aca3021757600ab5d517adc0769144e0311cae0828306ac90c39de5f8c9a03213f9f4af9f2f49361f051c7f0869268da7c6e8abe23871ace2726256a6631e2cff14dbecc93fb42bec8f517d6931a464c161188705c1c3cfe30bfc39368c0bd0a1b64ab1028e6eabfe1a1ed31db7bd016325d8a8ab521085b2e3d1c8d6a98acaed7fc6c4a957f21e140911240aa04c165ca4b48e4c6a8a10306418c1c0b73aea52a73ac4a5200e3d4e7b83574231577f652cb3cbf48d0f42c8cf659318ff665a4f1ba606970eba64ced70262c0908b71850b3cd235234a0817de302ab5e282d21840a52b4e212e3933380ecd2a97156b65aea53c97d83a4b69e61bb8e50e351bbac806de2c626e867c9e6adf1f072bf32d5b8d9ccff015d67f61cce2485031649e8afbc64a9698f0a4c714920ce2b6cf1137817a89c3a0b143b54752315ff74a0e2d33314de56800008c8523571a3c8a0cbc4a0375a5b8fca1c3c59f330fbf8018788d755da1116efa10e4fc6d7ab78b19c434d692373b58721ab3368d67b3c8182911587c40800ccc9fda3420ea4096bc1bb52bd5ce754ced06d4da01c2c5850e1af3a5839f7592731d33e86b917acb033b059f365b41096383b91d7c8210802b30be9607b59d5efb8fa026c3d8e0afbb79f18141b1956873ce997849ea4bb73a47cb2aeb68393280a88505d462268f37b54b306808a6683fb44247d1c05074a07cf4ec63a6df2988295860ebb4ef2819d88ffd57a79ea056580d8e708ac19188b6508ee111661a35bda0b10030fbe0a7e1baad14c842b6f41b98b7313b48a0851bc019fc891731af30de9dee24e93a61b5d2b693cfcd51d12380e9801985f2b62d2a6593c6344931bc286ad23dd5bff895772f55b349558ee5204dff47cadbd4790c769a234d5159c8e9e12a4e96a4a038670adf2410685d63aba4d9bd39188e33b6aad950226a2c80345b0dadde549d7c24ab7d896bce14a4a846cbd8f0b90c585ba65928b9abd0c481c3a7d840d2c3497f9f179e090b8eadd278584197ad818c3eed1e60321c4e892be3a50449077317d054a7ca9350aa7cd4db1a492a4a384393040cef5b01a00d4b45dbf127c62f5410d31079cd0ca12086c8cfb23b728aca616cbc36096246410fc1b469c7b1b995fcd24cee259a5b7f29e7b3e981b33dbae3a476b8b911fb584ee39d6a0f905e12185a21491c64d442ffa6b5612af30a4ef34f3bd7b34b10a6277060f8cb95c0a359dc0b5cc5d5ac27e9c81200ab590bf768493088e18536b6abbb728b3add15f55079449115c4e4587a33604f46b7754dcb10cb1915534d618a9db87e5404048c8e68cd70667134f37634d0c6d8fbb6c8db3ddd8833b3cf66a1d269f8abfebe467b1cc57373c5e9ada971aa99dd181c8feba4553a8b0be1aa8fcd1f4a998bc88c8fd61258098669e17fb61abcbe12edd64c89536bf96bdc5b4a75ca8c97f0754064e638e83ba0d09c7dd70097dcc32b8f0e694e414ad612412b7ac1ed555a25920efcff26450aa2ee458cbc3acce2beb0990af641ad4a7a5d40527e07908083523b525a4534de38cb9ef8d278879646ac882f9af40cc0ea8d5dedf4bd7842fce22187629440f24886f82cdca0298821ec51c18745bc0522d7058a54945ee67bf7f16702232c29236111b7dfb386ab65170474b3e82ca118159a65274cf59ee8e190c9317c5da6f6004a0283330bbc84024065e49ef3851d3e5049500923443201f32f289c58f86f790943f7b480f6d0f505f3203305f37b688113adc64c731cd28f5baa38e238eba54c6688e2f3137cbf91e8c5d4e55b3a3124d7e3970f7473b88b8d8d5838f974b7a80c54a1a12c6b92d9849a3250da8542b85e82534d5e6b97d311b329512ec13e06afae97e9852f847600513f560d96dab7711b0b011372336c4e81c5a47d5792c7486ea892ad588fa356f3b828ee1e6db8b939e699afd25e51a4839eaf7b1caa0a1d3d5ef65d582285f022fbee019f5739610db336a2aa5873e8443c2eb13e141acb3358ffbfb441ba96987624bcd35e0999880ef881caa528e20c6d18b31b94a56151ea93e7fa93905f445cc147e74d2444969cbce19e8994994836389850a70ec712f37a0b4ee2e6da1552ac74e2731ef55c0cc698650b09e47b96f02c56a89a51820d9a8760ff724fab1fba1b95be90a08994902bb3855af0e9596cbe03f89b112c157251b8ca54dcd53ac7e56b19fa1d2c1906eaa00ed8de21af786f90888fdc52d97c5c4993766ace46220ac24e640b70a415cdba5c020b2555be302498a6e9935012a9d1296fed9909ba61a7fd1ad4b939f0dd59edc2e0e115980822e837c5756e0cd22570270a331780be3104e9e893968e9b0cd8bc34973d8a1cfaf7492288d0ce9364a05c236237e4ef684f426830e9eb33c020534769636c422e0534fbef4a55fe28eff31986f9b1fbb1bb1a0e50d9fd2709990460d79919b9d8192571d02325b2f7f644f1cf69832fb91097423d154eeeeaf2af390e58e9294fc6c604fc9a662bed22aa48ab0c3e2577a67f77f30dca1f964c5890ec0719fecba2269b98d208b4387cd7692d2a78b2987ce0ccb1ef09de0be078abb4900a808371ac0db8373691ce85c81bece5a96ac1a513c713abaf14a8befaf059c8f3440ddca984de165c3d244674bd51de35e70a0ac39af2fdab020bbd20330fb15cc8e2c4a842ba9cdd9979f113ede40cc20efaa942a1c9bee8c84fbf6d391d10a8012545ce319d8d120a41d764b8982fbb1ef49c804e92dda783a9079f7b8336e08b660d4f0e324286f07dded26118fff056b1179b04fc67c7c1479ee0d43e08e4c86bf51e20d769388d9c1a530a30ebdf0d7bcb7fe689157f41acce3525c2c475be6020f60d7744219c2f48afb07465df58053b028ec0d6b7238c8105581dc47395a9155cbcf2a3382d51f407c31c489f8abe61a59c7b86d6e1948f510ec9c1e0ab600021dac8431489e9e5c13a1abe8cfe57c08523e5d960bd61cf509884e7317cbb0b3518ac3c86c8c1a951693f5eadd8c48a80a9b495d6356b45cd34506e78492efc23349d9f77b8731e87d3e6e0793af04aaeb2f8a448fbe554f3f64188382138a02aa252460732088842a0984b8ce2722d8ef8cc7f49658b6f3125b16053b3ba9d0e02864771aca914f4e80349a4632db27d4e8db0f82d4a328aea13b868cb49c9a7587b46907da532fd570cc481f81dcce640b95ff5f1fb997d38a70e279927d55832fdc52ba98d8b2e6168f2d11570a55d99f06a2282e59de48489b71941abb638bfd0e3369883f32c3c33b2c6885723c8e0c736649ed8ad814c9057c16fa90f4824b5aeca30c1b8e84c3cc801e547b39e6813120d63a37e9040c1554541252df6011b66cbdeb4740cc898d494064a59c6cb29ed0f29dd21970c367e4d56b4cc1ceb3a55c7b7b2e28de2d7554a2624beadef244241410dc05b64de9017245af437a074fd482b46a15b25829b68b90717bc7aa5799cdd2fac625d6151a0d8c89817e75c8b1b737ab352f96d634ee03220460c307cb26436540324192a38443a98f022c032042acd0853263fda5b406cfe38289080154163c1361cc80dc1030a43c94462df8ac4278bb25b411ea1fb26698029e293bee73c4f8a8a021f8e6758dc795028e6b64a3e202353cba038f111d56ef3529c864e37266ca26c837868cdad801b0d8b1eca961c6da579f63f20cb577e381e90403896e275adad06a2b481e4dea7e4b801323def03f3e58b4a4699289def61a94a6126405a9ade3ac335ebae82c197b503d4b18396b8564bbe89f5b563aad22fd52dae5980a2420539bf50d3abec536536dc572a8f9b9a42888a7829d3519fc9d532aa3a3a3de9d71d082af2e2cf3dfeea2acec4168da79863f816cb7a82311fb979874ef28811c2d851a7f484200b03be11fd031c6996717571e6ab432407f93d202960708036aba3934a415d49fc5a5bd1c6668c59ff488a35780ea290b2fed5d4dbb0744128dd2bd0fbb98000c18d01cc7f264913809ccd9a872c18cc4ab16c055d2cb56155daf040f6584eca36a06bada811cf10965b023cc5f89620ced3ab7c27503729c013a43012265ffa4647e48ce925ad8c4021943908669fb9d01bd0a1aafccf9cfb6cc09faf7b81821776d10506bec0c9cca7ead7536704ba4f2dda77c970073f319c0e5938112ec31c33e85c5d1b38fd381e05346611e28374d9c4ec193cabf523e545e141e6d5c0d705a58057960a90e617f86c450c1c8d3f59dd6aecc96b35a259318f2fd659f340fda2467700d0dc710450c90f81445098e51b874e6a1017f26bc46e3d5090e68f865b0d7ed305f5c8f0f406ade6dc13c5cd851a80a704add08770df8dd25587839b62a2c6a1aaf9c39887e6ebea34f4922981cedb032f99b5486d03236617870b71bc647d0930d50fc21d7730e94475af68e1258cda24c6dbb5038bd2cc45c3ccd71aee4c4a9e6719f6098785c465c9ec6e78da21f86834d2083746d8a095eaddca1f144683f8d812acb704beeeb07220de7e4cf637510860c3e62f2eec9365d72a4b3a412032dc8d0cbe58f656996268a9857d46bd5f3f84aec268d84fe727a23ea99ac76a3d42810c9590caf7be927bac562d039a31dc7244de4c0f3ed9d29cbc45ec0558cb4e89c4f37ecdd4f51ce5c506d4de3cd71fa327cc3e6a7dcaa036d708756cb953066701dba2f97b35f6ec2f15a14fb8ee92b2a289524080132e4987234d997f90379c1b99875212e0a92d0412490f2deb8851d54b1eedc2a1c0c920b7e68f73bbb3d3c3cfff00d9b97dec341ced73fec9b25a9c194f7277f5831156d81ff95bb1c48d0a55652021af9a8ce811409305dc923f61cc5249228572fa01b18dc3383244e795fff02fe0646803073f92809e2cf177c1af4a57a3e3800ff13e38914e08677fb6abf2b2ba2b6c0944f476315c0447a12390caf33df79ff50ff6ae79a0711604757d30dc71c44c9da3dbd922094a6b1ddeaff1bbdb7f5f6326a1d581c82cbe0730438b67f8ee037058a8272159874bbfec62389abf2bd8fb776c09448f0af625979b045b4f352058b072c04bfefa2da912748ccd77274d3273512885342cf8cbd309b9e60005169b681cc36a5a1c80271dcfd62f6436f2eaffd51461762f44299914e42edc1647e9aa9e58cde204e863a2a16847c3075027e6b78029fc4c30929cf39ae1c527d41b5f1a216957457cdd24da24257e444c8ec6dc7a87356c0e3dcca8bd885e6af361416d96f312e6a4e0d4dcc50c1f8bc3aae214917d31444d23e73343a88e85e0168fee634f384557ca81f6cee6414f9f9617b5543384ec9c9536fc04ab59c9578d01256fe4376d40ef5c7c7cc88060175e6647f087dff7b5bf3339de77a0de7df7e6be89231ec7c5762f542e0f5511d2276821e9889b722fec27a92e2f517ed052cf8430fdb3bd9286d411e23b1d8b0b05e9733580a433864a3895ba6fc1415b7ff27b79c69363126a2d23b470fcf7efa3dda1034b050df249dedf595230d8818037c6bc53b036a9c2b3dcd71a32f2c823cea8e511413f528586c587f57a8596b7f92b4ad754ae57e6b31a9e7384e1b6a29d84a5335bf4b48e59f9b0c374e46119e8573106bee7c2a3c8bf1efe39ef31fb2c00d49a9cde73874ea2cea996080337196c5a4040c520f17e74e404390e15143bb7aefba3dca5ecbf728c46986ea5495330e0102572b2637924cc25e2d213c5b92c61fc1096ec825bbd35855e077a7bf2f0e4f131603b134255a8325e297b5f3ddae829d37ecd18951d63cae38884053673e14b12dda30445cda4f7cbfef5baee33adf6dc196ce593f611cc953d48be8c1c146a3ece952e6d51184e694a12bc373315e364a96a4db3f35c180ea147f8ed71d508e7309842ab137876ae3aa7920333580bc0e822a6284d1205df73ae200c1a802e47aec41eed8a5cb7357083e324e87c68884b4ccf366082ef744f5cfdcc282ae8492553f4cebc53157f2ea665dc22fc8dbb1d75499efe829a09c4a027d24db5fb082ceccc8ca6338b7ba8d1f75441a2bb4236c0dbfe898387eebc4277abf7e17064adf68054613a1895107333ee328cad89f271917c865875d781d2db43a53d3fac7fdcb524ecd5f75e3015c3b60b82323317c8281f21657f945117c27be763102139c248401c39bd967c9dfe2d568a0a6363ddfecd4fff75f25067647be9195e887a09d317a687b7854f32429857b4d314c1bd293bad371cd6288a178de57e3878ab3a090ef1e5346ffa434b2a462a9a9d25849f5fbc8dbc6b5f05240144d9aa2099f5c15221d2d547a4c09a978034a655a067a411047a101d38cac73b5eb9baa82b24f143ddc2c92e50f581b83d42a546ad90cc5e80a849ab8e7139ac6b11c333d77855d32a5d462bb9cff635918de5265bc6aae94cf05ae7eae315bb2db90855d3cbf8b806631ca043de07569e7c35cc454bacefd8bca8433318cb7864bd1f4886115f71d248570ebf1bd3a87a50a718abe3505cd3b8dde23ee89c79794a1556680b059ecf6630733154de030f6f06bfd5c6a4124f713960124cb28d12b58436746bd1cf0d0b416491c7f117e6b7130c2184092791407ca5288b74430895567e91190afaf0b09bcb5b90e92e1cbfb396f5e3b7af2e477148b98d64918520e8fb8734063b34c2fc2083a49f82d7499fa1e69c02a3d5adb2498b17674c68b6f4336ade8b996f2c338430bf9961aa5d799b215b8d8023bfa51b4090c470d5285ebf0066f04bce3663916158b712d98f863b41380524a4f827bae9074e53926bf3b4714296142307765bdda89a4c2d04d82bbf78dc3504976702be12d2c3301d4e35eca8bf88c5cd8bbd63c579ff54fe29dc47a9d17cf8901fdf2294886e6eb537abc1c2039ad6e1299f27ecea71591445c3673dfe89929a527726a985896790f3f5f62473dd638860d8074ca4c8c8dc062b92ca2a31a797c0f70923734252f59cd96a460c050cc792a627e4f537f5971d8b5bd86856bea9c76b07a54693165b30076e1a15b881231dfe38158678920de06d1499423221a47108425c023242c8b1a003ff07118b960084b2c3ac5db4c31b3546df711d809a657f37edf2eb45f76945b2b7c49075ba594d36d4d3e3096d0589f3e131de11c766a90192fdff4138eafcb87c9fae0ff784c7b910ef0809cf4a07f6f7409907e878207dc1841212929d262186aed366209a30d16c6c396affcca641e3c7c8010ae66c2b6be6fcd46e8e3004f880c8ce558bd473e91565e0dff9a8fc159724110d6a61c1d076d2c472b144eedc3538a19c5f847913f52eca2fdf87950654939a2a35d58737dc626a9a43ee082aedd69bcbfb9c5dd45db82db3b85da4c02b473899a8df2639b0b8c5a2c859f9788e8d6207e3fd804576ffacef1e394f387932e00d540c071315da81d4501ea614573a2ab25280c170f536e1c9699545f51c451f2f7237280f1839a298d58eed09eb5b3ea21271e74d8186a2da487aafd67d6d6717697034548f1a5763573d204d684cc6f1af6c52d969cc87d702b002b41248b0d97bca84f0db839ba6706f32918b10304d9dd0927b5a8c84802a05ae8a0312b5514cdcfbed5629b6dedb01f5d47ac4f5e73b429fcbdd2a1e2113f5f41fa6f1a445295cbbfccf73b76fbc2323cdf0475af33131a51ca6dee42cd6d78205d9e4abe67b22616ab0efe6ef86d663afcaf14b9e06459033708af84d555dc402194111465f95aa1c34f942fc7e6a12c54c20aa13636079d407bfbd1d31db2627c432933f945d38a1d51ee7370439b167c37f1c5166bedeaf94265bbc909f13b6852f06d26d70fa90ed94be6d97a28728bc454e6aa8851b23867635f89d9cf37ad471eee42be78446ff0d14d4c8e399b7f8f6920aa8920b4c7d9b058515440a729d56dc51b2e5df2b8ed6fc14d02d4fcc452d86a7169d6b2790f0856554c6eac378524aff083f7994ae5053082ac5f212262e312f92521b94e06042b3b7e52839f3e3f70a6f9c29e5f1597e3273c5f04eb8e2345a4017f23f1d1f47ff496a7417617d925d775963a1449ce7e182771a74c47b795ed3d0158a893a9a2241cf2b46147c752b17152807954e5fcda555065ad3efb279e148aa740e3d56022c200ee1ce354f5e422763ec6d3b529604e76262823d4c64b1a304e7b3fe75e89c0d354d3a5360622bf4b18b6654333776759d5ad9b80d280d6fac78d82b5d6e5704cbf6f2b6fbe8297b73307516637efe67ce14125f958559da46fb63f23f77fcfe295884e873a9ea1f0da5f6beb7f6b648eb71b81cf37a39bba4f24cf85eb36faf68649c1ab0a902ed29393e3dd33ba9c01875ec635eacb2f158d02535f42b9765cb4532a563b04163d66c7aa955dac59be7de386204949dc1a029ebd07bb2b4abf1762f667509f8abe0c2889adbe83b64273ebf16d91c57a8c7d5583446417395a0b8ba10741b45a17074038afa92f389864e7c28019786c624f59e9556d509236ccdbd7ddb397ce646122850de5e1640493f552cb085d8a9f315013bf7b1de595138a074c802dd5d691d20c3676f684694b03f58d50e9faf490c2b487d388272e0b236a0f691b19764896e291e9524685b012c0eeacb50da7f048f84a2161a939b688f6fa42b1486f610d39508dcb01312e6859a9e359866f279ae7d48d9a0fe0796f1a84bef6821c98c39edc16a295c01daefd9b8396ac309cbd48f1ec6b6b62ff8947b7f630a2ef82728bcd0fc3907ab6d347902165500550cbd4a034a7dee00a8d1b0a8c1420e6da44e9403725725dbefd656c07e7cd447b157dc2a5cd66a0e8e2444d9cc1d6a2d1a094d7e92d6d4c4ebf716325a08af7b68a148b32ac85a28b5730e26637bc535a0832fd3299ad1a111606c22900372bd8f71dc65d7a023206b48d718616babd4cd00df743f9fbb3171a3b7983280849740a298f2b12d52fc804808e20c5bec596f184a11a1ed5d0975ed6f677fdff4e950c9da07d813321c100a72c6052d68e58d849e9f0d725afacac6a64e548bf1573d1f13f50cfba941dff5ad618f1f184c38cc1977c6790468b7d404013c82b41503050d78dd768f145255044e0ae0197f0654b158bdb45e65934ad4083df6432aa41f44fa5ba0cbf78c35b25eed7ce5b8fe9b5d3ff26d8cfc79cddda7cd55e267ddb81121a3ee332e806bb78350bb47a7be3e37ce201263599790e9bdc68b33669751cec8be0a473b046dbedff0d49b69d1ac6976cc4387d5d63a6ce3b6c8b704b630419a112afd6571907d02a70d18d490d1db3173b2ea8c0529de14b5f6efb1c3876992078f0a2a3e94780713c1b3bdc9fc083f1d66aa277ead0df4288fd87f92a1dc70c96b27239c77d203dacf4f5baf2eeedd1547d09946abe177db5a3b42132fec20839d535478a870f2f8ad29f382ff242ba9a41a4148b14979ce4342cb4929d8c35991956eea6608f5d19736e0bc414858b7411a69f26882f60d3ff5bfd084bd00c35f46e14e4f84250045d5960543bd1d145913d9877077b96d8d7aa18f956e3c619c7161414021f39d885f4281ff96ad3776190af04eb0e1c76c2c34bf9543037ac9356ef015407afc67803b2e0e880ef60170c38803a0c33e01dc62e20074980f58cbfdb5f229bd3e3ff14bc9f775897d4aaeef4ffc52f27d5be29ed2eae33be80551fbd5eee2c3accad13e258c9a99f850468d68052e3547cd443e7a82d4480eba832450947d70c8b4fa682bef0284bd79218d1c951ef87d5721b80a7c8da86bbf7dd9a5f7e87f03cc3ce0c267780bc7e6a1a95d7cf50ea59d47236379a176875fbac27fe0fdbdaa0855d11174aae3b865d844ed9bd109aaf955b21e10a9988c4b553e566b6d689a81cd091c8786085ce5f59cfaea569d78f9a66e3b76b91d7319006a9a7472ca59393cd8305d58e5941ba308a055b94288ef70989a67ac9d8a1b9dd61e5491746d6d4ba79edaad50e281f68bc49702ddcf7fffac4b4902250dece068a9f781ff0d3d598aa91cc467c0812b05a9f220070f7a8f5fffaf4acd8c4a076ec048a9f883df93a00eaa8ee8f6dc800f6613c54fca837c3fd11b87dcfffe59939204350eb0b1a44016ee24f08e21e3d7ff4b5233a31d5e14fca023c74839f4fc37081db2d023391cc7cf1d7229b28f7f9427f93e022f8eff56ce58e4d812234472142bd8a68b3d9e64941efb9eb1541e77ba0af716a5972f2ad2812815795bf27054424fd345304f40d4314a04637daefa0a78c679361f4ba4eafa923bbf6e0f37d53456ee8aa4106b79979f1a5cef69ac8b2df269a1b1837a097725265cc3f468213cd5511fa286be2ea26621f94cd51c14a8f5b0597af36df45ebd729a422be289bc62a5b5cce1f03df238b58039166bc61a25890ffa518f2c00450b425ccdeb5c2fe4e78649a594705bdc75c3f53ddca3ac5bc05e2eccdcf8d0b95ec9cf25397f03bc60cedbe48e2a6ff6c0fc45880ec59ab491a76b3a9c4709bf8049304cdb5cc170bff273cd60d08eef30a2f53fcd97436b855fccdc2ec49025635c281be94bea81bbcef2f868a7ac6bb3876444f8c2f2e277810b4525552d282431686734a2325ad51995b650ae905a230e5d4bf459e5e05846b5fabf8b9cbef57b2d920326991f38650b866d4e784f8b4527823b89b40b2d4615d8545fff06dcaccb4f8a102d9431c26824925261b3ee83075de10aeb9dc969e1b81da2835648359215eb767a8c75ab12c0eb37e3efe3bd49f7de65af0ec2022d09e9cdeea2a8dbeb8f6cd4533acd3eb9d5bd37297b21f7863371cd0e513e45f1e9bdaacdc30f6480ab5b9f23e29e840c3645c2098b35cc531e4f02cd86cc47dfb0fa82a1e707a1e83c68165c170caa771beb37f6a0d0fa3435e5ebbba4eeb4071846560974a4f17e6210a4a0efdde1e601a222b229a49da7060e8a4a3af38880238078edd698a4df7d83467aeada79dca977bdc736297d3936952f76d73e5d0e540aac06c6b674c4ddc14ffcdc92b804adf464f998370d9e8c25a05b785c5d2900b6eec6647ac286a091c29cd75f89705822a96842f63996d1c14dff33371b3227b3d9316c4abcec17bd377be033d313023bc342af4229da36a7762afabe9cd6094e9be3acca0022bd10e987856e3e74a09293bcef400ccdc8603f8589eefb1f3f0102340b16987e25099c99cbb952dedd49aca331ea33aefdacf08ad9b7609ef79b617e6f4f08913da314d30c1c6b4d0a6afbe8833f2f09d3e0b76f6535e7981a6c2b95c4ae377c141e8523acc2bc194005c91b1cc1d7cae1532b0121d9fbe0956bb056a4ed1c0bac8e8d4b56c62bf39bed3cb39dec903d47e24e193e98cbb6cccffb609b6be0077c1902825fa0b53e36256ddaaf0cc28d9f31b53db029800ab9d743c3d71d4e7a6138e776be41b820822bd34ae093276f6e45400fe5b4482b560e07abc4f05cfb8bb59dc42e99378e7e8b7f9507aac0a2a2b8f438ac1e7033be9a87c4e4aa67b26d534304ab5dcb1c2ddbd9b9ebad6ad7175bd24314c474ddff83e1a7d3f8699c3ca25d5d8d36c367dc2c3e6405883fd015aaf742b020ed1cbead43db1ed94ebfd305325d39a4621677ee9c76018844df6007465e779be588daadc7d0408183b2fca95374f3bdf0517dfc5573519c28556b699b159df1107788962dee08ceff01515b60148f7350fd12f21116895246f37f888d5f202d042d6ca428c7fb548b051221babc068f8edc5fdf57ea5e7be920757a58609aa53e1c053c5e2cda3bf115f70816d08ede6c6238c86f4162b1d95f3872b90919b75485b98318c494a165e59c3be081f80e176f0d8b834728d2ab3a1f88e71b66e3f6f668b1d017959b3ece4047f39bad592ca1ba86fa67fcc216c20213c1b851b55fd166fc81e429ae26bc5b66fac1ee6bcd0e31c7cdfb70a369ef1363b8482137477ae51a3e0056db454c41ec08b1053111b10bc446c416c4468831116b801e3df45ca437901e46f4767cee1db19fd517f4dfe785db4fec82fef3f1e2fe895da093737b512f3c7a5beae507003f2b858ab711fa71ba9d60810c678d22c29522d2133257c55cbfac58a5b21b1708d8f4a283361907578819556c8324e24e2071cbefbaa538f5942c327414c62c203be6384369b52536cf22f11f7b829e8edd16e7ee6925e7552cf2d45aa713049282f79ebee317ade80c4ce371770edd87b7f339b72704d51c3acc069857e24ff00feb815d3e12807fe32474e02bc6e2e58f14eea49df74c4ea6dfdc2bed7ef100e549db17ab4e8a9a458b6e7e628c494fedf8c118d90a28d0acf6f8bdafea3a15d6d6aa0e3db7f55f6bc852fc1ba28b856760485a8b3ca3a14bca02c96f2ddc3b2aebb816ae4ef156ed8cf71ad2fc3781c82f77184fa14cbd321b50efdbd03dffbe848cb6afb36b7104a852fa4d324206ebec5937978e7443bbdd553267d8b16244a12edc996574504b111c196a4e3b1ca916f454c1fe65b0f1f798e2f280397c377b9a098452aa6da80058928413624c292b982cbef67c5765e59f28311a057582fda0aa239cdb7c9d44f9e2c9acb841de7e767a41e8dca16bcc4125e953c520616e97d843f7d800e7595699f5ec7c7847aa4b553d294bb006e0e214b9c33f762b34781b3762f693accc2f1765a5620538c6a512145a94ee27996b2a947222d95605893b4e6869e26fdfef67466037a84f7b56b2286164aa147921b470c2041c91ee39bcefc1fe83f61feefd68ff41df53a30fd91b13e485807d0eef3fbec7e17e477b1cd8c7c7bcedcbe781994a217d03f5b4775abcd217e1749ff567ff119284a34b959ac00fa7c4810b56200828763bc394e9e2c7f9af805f2e3ce0df5969b985b6b8f5b9253dec2995a6a4b6c74f3aec1fad16abdb74434a8097664deabda52a9e5d05749732198179611d13495b24ae5b78ccd91b27c90bfbe6e13e76d14f6ba10fb9d2d72d681adf6c1516078c34a0341cc001c6c10398ae2b066c475150c0a6eb8a01db511414b0e9ba62c0761405056cbaae18b01d4541019bae2b066c475150c0a6eb8a01db511414b0e9ba62c0761405056cbaae18b01d4541019bae2b066c07caa8ccc9e5410593dda84c3319e50f77487e9c4d20698b7565229f97dbf13a6ee342e584c19f82ff6ecd1129e33b5d404064ad0b025ca85c484390a27a74a2e758df9304059c029c8ad09e40d04b5e645f15267067ad584a591f4bdc52d2fa5a629612ebdb12b3945a9f96d825b3a384cab5f821ae046d31ded4f941ca0122943b0970eff5d20102e72b373de5005bd069657e469a4fb989be49424671b2a9343993e80c87c123b1ca041ac6aa4560333e92a331aac2c36915788087213195093a8c958de436fd78117dbe21c56323871fe68628e4e0426a011ae43a94a70943125e1d22ac462c8c97cf272921a1d61b0cd81f46e2c9164da963c2ff3ac124b549a57a0b08a0fb29330b773cb04164e6d281a97fc22b9f64a8f811a2d637bb34b636ada1061a903e69b2aee85e154e661fe7ce83c5e45e1d07e23f0c1d62ee8d63c0eee8e4d1664dbd6218bae60ab4afdb8b391e9def666138eabe78097a46b03de1b33756ef19ffdcb99189b2d11d92fea2c58df55533dfd6724fd1d23755ee229af994aa6da3a1a332adc3d9c4720843eafa57ca940a73a7376905ba8d75c6ddf5da42fb82edbe71a914bb5185d85b3d42379e74d39e8214cd242e1342208c1057e8d481ba61e8f21b966d1a3bce3b1c58323d57d26f86eb094bc160f1aa4801ea99cc960b284a62889eeae624de8a30d5f87ddc84e8d34fe440a8cb28be45ec96b818235d2f65fbabefe137ebfa01e2422945aac0289b4ea01590e99a5399db985380548e17bc71bc879f76656f74ffb630670880c03a06bd28e4caedd5c7dc65ba5095e38024c6c809e32036b8e181200500c0225b0c072e6a41faf78f1d10f466f8f93658f0812695f4c2df64f384de4d25394c50e82331748fd81c33262e434046b2143c8c3a679f72bb83d104a1e3e3137462bdbbe605a5bdbd3157e3b6156215c7e7b150cbf650bad817967406128462e05efc28579b20b888aea6e59a6b2b3821bd18c0d1cfff0fe1feaef8448bfeda79a8d3dd6ff0b540440facda04e0ca29a78dd8da3080f00c7807110e6632429df9ed2ef1dd88c1f2c4df0f4f616dcd6d1b7bd949b97bf66f3c7322264a24042886e4a1fe674675d4dbe6a59e9586f78916e0833b8fbb639ff08eb40743571c18247f0fa8eb7339e0033c104772cb021aab5eb1a72f461d20c0b61ea64755acf85e4a54c9a2e2d9b124f41a6987cb246c9dbcff406a989c5e7a3b15b075b4c97b5260e96e3d8a368670faf78173f88cfb8381a9d69cb7a1979ab59edc80040b289ea4625c4f103ffc59b8bbfc6ec2f6e8af36a32aa416fe0954d2a3ce5b33117b3581114a8684808cc515f40558a89f6c29d842bff3d6ff616b5dc54b1d16ca40557a2fe18d563dc57d1235ee3177b0d2a062d5b2e78674c7c126aafb1e44083ead9d2e9310315cd54c05d291399bdf80a44c1aae372f4da6375520a3427e2c1508917a842be10f99ee4bddfc15ac250c6c450c67e0cf0e6d062f27832046d506c39e132102d9d822f5cde62270b231028f68a4b83c531901ec447a8c6c75cba0146459182ad369742cfc01da09e452c5cfa569692e343018b2b3a82119f8ac0ce153ea2104027e2dccc69c8c150601540c054c15cb86aa25f47bd3c793f78c8b32ef61555860dd0562202d4bea710bc3ede4cec66ff064c03366665bd90ac143b2471ed153bc483bc63b90284382f6f52082a9353e7a46b5d766893d3b5a0223e7e37808f1621a5fc05a465ba148f29861bb0ecb2c25549374b0ebc3908db68b8eedb8c47899529d557032f6171426afcd95069b1d75c52bbf75c433e2a61d18fa0365d789b73fbf85cb2e15b206cc27e7d91704ea153a192e0c8f29258979915a9699877fb6996686b69f7199f44927c5807781353b2d87473c77eeccb0bc5b2b7632a462732219269c57ceab57ddd98d178e6586e4f79410a52ae6959163c0179d1836b5661974d2b91755702355b40854a8919c6627ca98322528aa935aad0dcec318f41493f673867bdbfaa271d1a71d74f8c59eb3634135350539acd825c4e5697256162f42d547986082dd0504136197ae3bc76b7caaea1063341667d43c5cd4f3db63e91adda5b02651009e8c7398c36270b81980fbd1e31a8cb6b7c496158620f46985c5a9b536e33b34367c849e97d8ad32079df800d8594aa23e07e5180a0927a4854eb1ffbc0152073a232f664864b0c1df7dabef00df2d0b488ee3a3b1e73d164d3911df6c4e7865dfa3a540e7de405ddced66ac49a3f56809d20bb6f20cd585942917a99157a2fc82bb99bb2dcccd975d27bfa764a5900add6691ff5556710c09170bcebbd7ace7c92c507c3971d0c7ede44c9b53de1b90da156850394f6852cee536033a4c49cf315fa21b32db9f9859175cd8c56a3bcd0ce7679b8ed9f6db2541a94ffb81315651890e768ae147fe74b724ba726c9c31d20a7d8f575a33902313cba45428af5a95bccd082b518470cb48aaca82a91a7f70dc9a6934c804d90b10978613ba2e7cbbf726f5558ba604a13b6d94df123fc946b34afe319a3ad40c233bab4e6244bd50de7788fcb3adc8efb78e995ff460be8688d87273f2faec536b27fd990b7a0b162463b43cce730e1d30b29c35900e11897bbadc9c43ebb839b4b8a0654c45c9dfa7e66a7870643e5eaff5faaffc1185804367fad642898e35f01c9d8b02882f0bdc8d02eac009595b409a55a50359dbbff6ec587ca52506a101c674c49a873adbe085048be86fe69d523ab3f3df635a67036327ea7fcee18e3705757139c0ef6885481f951640a90a0fafd808085c23bc971e300b3d4c4cac2464cbbdb7dc52ca94640a6a055c059d05d7c8ca9dbccba9057a12f8fde3f2eb94ebc021d0078fd77a560b421c7672fdcc329f73bef42c7bff2c8344d049036919be5cfae5d07bb407214d7bd1bf789d33f68c5fcbf8925937bb0a300c3f4b0df4f6e3b8ae0f7efdfb65f8aed0208a0cedd5ff20d143a296c91e3e74028be00c18f0057ccb99da8319777de56e80407b3c802b05f6208d1ea6206cf1107b3675dfaf7c4af79d4e9f75d997ba165c00f825fb1397fdca026ef62c3822377b1456c2cd7ee396b819add076dfe992b86f2f6391ddc0821b752e0c9301a1f23fec985179c95108b3eedba15279be7e834aa7f219373b15ceb92f0434d7e7abfc077fe0c1bfb81cf2aa4ceea3fc5eebe6fa47ee59da985a861828a1517813a7825e08603854e08796a1e1096de08f19228ccb8f09d9bfbc651042184d7c2577721548318514524c218514524c313414c473254b8eb047dc3b308c84374220917bc44fa3b97b2d32ecd127822b25cb949eff028c4a71e2caff60c030fb0c1ba362686519280eb5ae1ae5e045e17ae3fcc618dd9df44e7a27913cc881e04f7c94ff20929b6d36903eae5a06e57f5806df20693c68f13b0a0d059e61bda651293bad8d6b1ada5e1c6d3668a5520acaaa886570b46999d137c777f381ded1f7c0b0e3080a96e183f52778865b9631b2a4d71e4543f9ab0876549bc4dcaf5b565031aa1dd871473e6021f95af5b5ea6b958abcbca58a513dbb5b1be3a8f601bfc8673981e44789d5113c4624b9d7fb6b27cac1dbaa56f9f5d188b4d9307abf311a8dfc560eee40e27488d3472b6d6b519aa5cb572ba757eb5056300a577e8fbac924ef5ab5634339d6482caa3bfbca571e6d765e75cab1433448e36a68ef1f61118651825f0481f4b1656a0a0785fc8568c5309acf457952bcb08812fcc248079d5a865cf92dda4504fb41be8a6051916dd5ca8ffd7cd582ac150bae58ab15c3c87751abf3b84707d22ff27184e8380cf885fc11e7370ce31d242483dbc48920ae741258d1a38d0679b7ae5b0c57713562197e5db262cd3f393919ea2b0a2149faaf9b5c5257da6c20bdb76210df2075f14994e537aaa1538dc6c15b75682fa2d018f9d00606b1b2820a78c330d2af7635edd13782ab751dc430ad262ddf95300a763f67b18cd1b7b89fb3beeb9d42d24bd26f5d11e9b5ae88f428ddd7438c48241fe2257d0fa44bea9e7fe3e28d9b0d285df4a73590de79a0a4ce49ae919c446a9d558ae658d569e75724952afb8deb4be25aa5c33072d54158ad560dd44c28e144e4ca37020d3c78cb813a67b58c9603e59da4b511a4ae75e00aaee00aae5ad53f36c651fe04bfa82c14e8142c16ae742ec41a27580ec430dbaf28c14a1b5bb7c10b9fc02252e7acf6d85fb4772e0769db3c8ace81da93704787bda46f957c954a757fc8e0ca7718300ccb513af48bfc4a9db09e70abc8c7952aed9055e42887f6e4d7bed08765641d0d58a703cac833ea1a9ce6cad7aefb8f0be16617af8e3657c2f082b7b0b868715a61a1624a29a158d268ab5a86d1eeee090317c353ae312ec87fc661af71590bc7f2ceb5fc0b9c57d883f6e81ffd2263f897dfda5623755afd35f7e8eef5052e861c09b10057f005ae070e689b0d2f7cfcec858ff3858ff3a1904651194347171cc71ec1f6d1f553bec041212d1cd4813b1c1c02795658a870f0a73df9260e26e120ab3da020a12148d49efcca4127b0083e699ae7baa65f7cc01c29587fda365dd44e72c4cb3a386a87f6ba6bd38bd26b62d785d16bc21e3e608e4afae0e6b40c1402552c836fd02ed2b69129fa4d9b5e945e13bb2e8c5ed369589a051121280841810465d7437c1b3dc678baf0c708dbaf413a7a86a2f54a4e48f80805302a460d7ebf11a462959d44f3f0dc17977b8e407423a5d147ac21bdf6fc33a43c9b9e5d3cb33cbb3cb73ccbc0d0a91804bce96e3ae5d30328dd811d681a6c127f2401b9a4d0e5a745aca4452e93a94569a5392d2d42b44811dbf591d8787a5ac492a6112cecbe161b2dd7a24052c36f61c1c3e7757545cc396794513e8ed395534a39a54777971a3561d88cd8e9fe4c7df9b1ca7859f7b84520e6460ccdbe56c941597bbb1173e35fd8bba82163ec56d800f1358e051b20fee44cf0457461058b7dd6d5f6b8b3d1bb1a717084def819b01b859f0df18740d5cce7f133b32b423e4fc14a293b6629a54327d0701e540734073407f3d9e5ead7a80eec9c734eadbef691d37e729fcb9ddfc9de49b7fffac61f66b8c01720b873a2bc467360b9bd52abe6da86eda3d2c352f7817b3d7dcf05ce70007ce1a451d7f773d96870cffde4ceb147df086e0f7e63f70023367ebd31079c385c586ed87bbdbd57b7d9905dec2c9c42341124c874c27ecc921e7bf08bfe0f8628002f5cd86a3ae775752b4eb03be27373fc18319ce79c73c660c890a194524a29a56c3939272c8bab03de203de80cf61fbd217b1a0da3652ae0fd9f4ed65e800ba2bdc65c8cac713d7e06fb8c03025e318375dc2f304b416c19226c4d1139a0e4bf3a6698eb99a3dde7f27dd35cf937ecf5e7be11d05c1ddc87c3e5fa47fae5c0fc438b32c619a7a4346a68c0caffbc08f8155740f6e07bfd0edf93efb2cb215f076d1ffa4af6d184fdfeb00b72bd772d27eaa62881b83d3aa79c17c71fe59fcc3d4dace07e271e2480b4b446a1edc9304339a6e18096e19e9f1fd79f033f34ca799678723de6babddeba359106c7b71f9f3b6574182d0387ae4f0167308edaeb1fe4fa77d4d5d9161b5750b5c7b4c6762668ecf27144b17105d675140bc37f80a358b8639180fcf914f08f9d084450040ef17dbe08fc65c7c23cc350081adcee3e1bbdbb5510a3a203267610139b89c36eb9bb3b7c7758a130b9bbbb3b6c26eeeeeedd7277777718a1707777f8eeb05b0e91b8bb3b7c77d84cdcddddbbf0dda1379369a7436f08dddd1dbe3becf625ae7295e701d92411851a1b26314a384ab400470c201fd2097a9ce0c3042e411d68daa9845b19133a68825bb028da20a18845352444b86131912aa96212a3120394f1643c49aaac4f4c159d2a2633481c3300b9b810451b081104111326c2588093042662626a191d91273e81e324811cd2f81312d6f052898e963afa099309e8c282956ffbf6d57a628303d630136df3d7bcba0e9ac69bd77eb8c1efcdabd0588beedddded7d8226dd31d2eee02f11420af9253eece1c1ba1f0b7139e28d9ce4c69738b41769883a304ccc610acb421c7014e3e021fe0678460b7c71f22e866578734b8431c270a3b4992a78c2cc114dedcdd7208c3b1fc268cb30f363cf0ae8c030338796fdec853fe6f3309f038e9a8f63033ce302f0c5a43fdfcef91ae5208dd605e00c25177ed19d4b2efc8f99dc7941f9f12d4c9180091b1e20e1010ffc33ffecb3f7cb6338ce82bd9ef4bcd980114387f97468facb8be4d7e597bf5ffe2466087780a9242aff31152cfee3262b9e39b58c4312484449964f1a24e216671d0edd773a71d7f9aac3a1bdec65d7acae7fda8b2d47d1508321fd42430d7c3ae720a0b17b2785b03b92d43257e4d17c584625c232b6d16fa3ee8331a7f28d394c8aaa2884fb4b722be0cd3eeb8a3c2bb2a7f7bca8d5458e8a3b3b1713ec4ecbac1ca5d241c88390b81373624ed11322273d1473a290a80aa262a4512addbb789003c12446da8339220452c43090873924f2b40cc95b86e310fc3805f85ac6da1681ecfdcbde7732ce07f8f7e2724049e28a3e7afd497b10bedf1c7d3f2fb2c2b50051b1e52f50a8045f44c185cf10c5910517d2b41c158de017f847b494f822d18548b42deea8ac3f5ff8b2a6653edfb9ad180444f68059b6d33243a62771567bf0732417ba91277d7d569415157d352e2c14f8014a4135335f3e0f38538405ae970f67b8632900d1cc0f05209aa15408f62ffbb46009f6f20b939a406285c4cee51e2472602ef71029ba1685e17603b2c0720f11eb2fb0bb898030368d2b289c1871c11a84b05b0936d628ad344d8d23ad9b8d7829a514c3b22cd334086bd4d76a25bdb66d35b6d746a3685f2355d25663f49aadd9465f43e1668f5c92f3a25856d2e03622599416230c5e4d8bf06a958357937c35692b3562e16b285b0fda115a575c1d7ce374b9639e89c3313fdec769d6d827d2c9e597432e9e5f0af16a95e3a816da71548be7771e47a53cbfdf38eaf4bcf2bd05f6fa8560992ef271f21afb84bf871ae534cedfac06ea5607b5507c47a9bce9e58fbf409641b275c4310b15ac6eb596aaa9d2ea5ce94a2e08cb66659010d94289596534fe826198108bb9459d987310e3e0acd5b92e0129dd602eeac5c1eb9c67494a31dc1649089d888a6e5721131723e5aca4ea5cbcd7856118abdb39794f5cfd61f98b8b5fd9b4f7e3a602a94ae0b4a7fc8624c4aab46450bfc8d645b58c767bb3b48eaa2856b2d539ed8e38d3109193a22736b4c453baf1971d550aa724846a29289572a69629c834642232fdf09b92aa9453ba290129ddd4cb26a19413a6b5d40c5e8737a53ab75155c7789e6caa133369660fd9924244a716c3d45a6b1443806e7b18cb5f8a885a41435adb385d7a51b96283db989601018d6ad41f69b408a45ae9270aa6aa46f62d41525e6b157859aa73a4cbd596bfb0523839bd0556f2fdc9319606030c30546b2f57239b531a6159feecaa732857ab4f6278addefd30168651218c85b1688be6b42744a5b3235b340a3a44b6644b164922d96a4cb65670be06f6bfd9885ca545ec275b364e35555e2ba999d10ea5b3dd10a98b5dd6d51c5a733fa92373a41099831d7c2b36607f711180ea5c4a0bae8809f08c0b8a01c11e46d3d80dbdb95949f5a03a74870ea13c2f95c5a51d55dd388afafc89c60ebb993d64d1a491429c6c614258ab87a3e4505322476144fe42d33298120c0896c180d809a54496837713c036472f04a804d86ac89f46b03214a052aea670847055d55e27a1a139dd2712fa51b9d789081263b5e0216dec85d9bc240e324c92469dfca500d53996abbda8ceb9b8191724e52517c4c547aea33fcd00dbe24a2e48cac78e1aa03ab772b5eb9a2520ed35087eee44819d4fc34b188b88a296c12a8cea9ce9b68248b50515f6932d956db3412fd66157b05fe9e6c65128284594c6f638956c4a37d76bee87b16a5858c17ea59bd28deaceeea32ee0a770a894920a0b05549a04fbc922a76d762b29f9188b65d4164e56522b2d885652b525831a9532b114504e906a68c709cf2a08fba1432b293984dd38aa0aa93a58aa0ec16eaa0fa6aa46b09b9a04e3a940d8aa06613f978b9a432f0c8865ab717518eba250d60cd3109004dbb2cdae745391b8301606d4a8941c218d5a49e9d821a7ea538dac6ebfd67d35c9ed959f0ab4c2aa415850ca51a6a17ee93739c9313db1353b3e6eafa47eacac5480fc5c159cdbffadb06e97705a306c34acdcd999849e4c3154b1efaf2b37852b01e997fe18b61a58576ac1c37e38e47c79b5ce4aecca14509d1b5dc90561f9c8f23249a3587c3f0bb792f2977e171c6d7134c5e324c617235bb275d21192badfb7e024510a278bb8cae26a4bc851b2255b42f58761fa29576f2a10aea6b88ab3059661ee8a84bd7e273f740aa239dd7e161cc652e1b09689c384361a4eb766295f93a84237ab4eea1431b84d78067603abd00a4ea352be7f2595c26100d86ac80e636d3fe8cb68df5f89542d1359864ea3aa907ee907020a0a1a1afa642b8654975d9e7a5b33ec06fe4df5b61af4bdcd46bcd80b60b3a172b5aee610c1b6bcb9f0bfea6d35f4c57e7217263fe36e2e2cdddc7e4c7294bb5652ad5db892bafdda8cea1c3643758e6a0ba8ce5df75666192d96342ab928c08b0678439418031c00013012d0326286819fba0c8011603b025f086e7c494394fd445af91ab0f13f8ab1b775a065b0f832870e7bfd317e5175c8f83307f63ae8c518c69fc697186518c7aa076e7cf6fc67bc3dfcf0a97b03dafc701e2921b469cf53387d3d0bc63f62f95a58e6c73bb7ef94a3469dbbcae674d9e7c711cc77b0cd267c84a0424d82b6b8ece3821bb80ee72a26542d68ddf84bdcd8f12061831b8fb0d0c655386e4b1cdfb938dfb9fc79b83ab58495384c37c6ce5f88a8e8fab7e29cf3a74e7beef173d5f54ed9f80eed7c47d59ebb2aee7c27ff187dc755114208618c31c69c4e411b68d3305ee749a161fdb8dce3442a86cb3d4e90e05af7783ad5da1efb500e08fad8c718fa7c7fd8314327ede8474e76947397143ee5605cac9d96e96ea1f686409e6eb5d71da4a4e67e7067e7c96d38d3dc43c4e6b6919c9df67a487b8d92a46560cb513517110ba70150a8a6a69c50a158d0f4431f9edb0f578eea195fb5cce72a37d232b00ab7fda65343b05f1345ef11bb0e6aa1f6ba5b13c5b6c722e18e94f0720f0b477a0ff9b0fdc11d20fbc47ecd227f27889d4b80cb3d261032a4513c63ba477862953fec7c18edc51aa61617196eb470e7c2d3c999259f2e5b6eb8e383a3c5e82e9d9d1dfea00081880f589789a88088a88c1cb1394293ba2ea5176bcbeca84756b53d1d6d859da628396e991df179cb56edf527e198b1b2f83e383adeb38bd78e78754818b3d5ed8fdd95438b604bb025d8128a0442086df0f5871d596ec41bbb7ed971aba1a3afb777840c9961774366d30f376a7247b3333353864c8ea88ea47c2ef730c161f2e3eaf80ef9de955c1cc0e52d02d9ad71abb565fce5d3d17c974872b98789917bbadcc344e7c2ad864b33f9ecbee8f66e35e80e46611bae2baeb8e20af9844d51cacb7dd6b83b86615a96b9bb7bad9bbbbb8f46238d542912cb0cad7577771494524a8aa99a2084cff4673b82e5c978da839e8be9e57af77409cb493829badfb72a111d1fb07c6a71f9ab430193817cbfae6b5e93d9934128f522d47ae18c49f318b34cf65f3fd6586b8f514a35ec21f6edb89062f469348d17bb3ed2e88bd2d3a9761443c5990bbbe064b9e186f6e6f3a544ec0ed4c732110cd8995795bdfe7e7ee9187e71140d7ee928297b1dd9eb8f03f5c61b7bf8e1c228851f9739fde7a4f462e83042871ef30008b8bbfb75b9870926ee6789d072f0eb70b99063b9c17f7d5fbf3c6282299fa83d3db34e17d469efe260aa214e9fe4dfc4881113e379ffa7d3bddfc98b89c1b3faa9002562e10ef5b190a789eb62e60bc21b1a5e0f2f08570c7bcad8d969845208105d7f3a59eb4e23869b9b2191bb75eb36075984f320c19e18b6002af85f119018b8fe91fb988752da39e63d575aac0d51f34f42ad1b1875430c6a63ecc461e3e9f4131313139303ecd3a9638c90e688766aa2f43b164b58c761ba10b25a423734c7ee8eb6d73c317066c1f65b6a6733b4424e294ded4979e3e3ca1e3352caee8bf65e01b8dcb3aa627584d74009190ce0728f12406ebddcb30a0213e7414cc5189ff0c1029620ac7db2b2b1080836a3c20c42c1caa571235653f2634949901d901154605ac2074340446801c805ae6357baa002bb51e1436082c4d6cb3d4b960004ab5dee59924413961021c6253db83166f674f29a2533e8214b50e04d6c0b2a9c094b9b54614d4c4461b755932274122c8bcb3d4d20820b4db099a2094068f7335d5602c575b947091557bbdca3a40803c2e9576c0aa39865b6d82111c88f684fd664ed9c1812766044094cb4892bae26a2d04492271e009000174e1167f72eed7d2f40b2c409a818a2071148851b9a79c40d0f1eb2c31173e79c73ce2aa4201df151854f76c407c32b0cd18439448bc77beff2f6ab18020bda111fff700a56e8590d5d1f00d00986b005274588d099f19e15923b2ff7ac8ad0272c14e858a0fc283921744322a2ee86dded31a094637ea1b5081a079814a8346e154641ea14cd00400000c3140000281008088462c1681c8f2361de0314000e819644725a1b8ac32008521422c618630c00000040000880c8d040d50099300e60e28e4e26480ca7b1460b4a4280e0f2ca5b0c3bda9e0b47064e5803dba596604914840e08d04de4da11d8aca83d0237a9d51405d4b9f3ea940b1a05e670cc45b8924fb73ed71781d51b65b19655941bb5b00aaaa8beaadd402d4245cf2c7a0a643762a6ce75e9e9b7c32201c0aa2f0235a62f4a4a5fcbdb9f5f214bc1daadea62fa2e1060656f6369387a730f93482842f65ae5926127a06810d8a2c10c2051efc770f78ae4bd1fdbfdf5875a471832cc139757d3d57682fc1fb600eb23326b5fe2a9c7139e64fda2506482f16537da677d1ffabd4db928a946f6a64607fcc023cc1288138641a9ef70b77ab3024d25481c115866a6aa0ad33c1ba19cb8a9e4f8d60668c7d29076e83f48681a60f072d4a44ce6447b1d910241794145061010dc3561e160b58e890d0057339fe00153802de821a6b4f408696a45cb35d896e49f02b0cb4dd5e558eb98a90f4ed193558b46e018f215e27d6565be47b67420b98ac3e2a13e0aa60af154dce04089b48f2ed4f46941cfdc2fa7b0d4e1c2234cdf5962df677d666b53a06cd8e80724a8364769e2fb5a125fe0a879836f2f43ceabcedf0d295e8fd8bbbb37877563aafec162d2db975a237a6fe2b808239b213ea35a25a948545824983b5b512d74658b15326ddeec866429c95cd8dfb32a3fe4c13c528517063d6a80c5bc822e95fa07fe7a4f28d80945ff6812dbefa02d4de3aae384bcab5a2d5261f2d548919d712c28e02179901905f3b1e158741baad8d63a5562b5cb78ff74a585ba3f8ff8fd3d6dc42e60b006b8413fdc8ea7cde2f6f1ca66a6065ca27a974973476a8968aa75a174abc242519beb2559df8e91d273fca14da04657f730198ce126eba8c23ae0d6014ed691c06ab819d06207effa19ce6c1fcbe03bcca9d4684fe1b3d1c7dbd870842d866c548ebd785374bc5d91868c3611db45f6bd625fa346e0134c7e08d7086af15bf309d38b1bcb69a419bca87bd6fffe655f32e6b39c673670b118e032179bfac600412fed0122553a8de32184a608fd1a79ca2b7f2d98b6dbbda3799bc9a19ba7a5c5fe313fec38a7b8a07bf2a6a38a61ad16c7edf53e1aa9742e6163625d14b41070e1a83a7a7c8c786d79ec3798a605adaa5d15232145acee95362e7515045207b63d5f380ac99c16028a47f620efd455373cbeca000bdbb50d8fb8f26a1f9caa9a1002f9012a15027cc4dd9b24501203f85a8232760a3346f8a18d2e668bb0bdebcc3891e005cd38a4227a91c0679d8eea0e651f9d0367b3fa6b76d6871cde9a658ae99ed3f8ee16517daef6bc6603be1dacc896d81d6f10473ef66e09595c30cc48dc41d6afed7181896a084ee1ce0c26ccb4c3b343904939b32264e93d30d0fc4daa65f3810e2d12b6e53350eaf1f04e573a3eb5fba0f791d5dfb3598e502f638951d0ea801aef271fc32757d4b8678267c0790104e3b4fc513b33f8820cfc005222027716ba720d2ff2c4102792c7ae35043fec3d9f372d3188cee35e19d43de6693dbef63faa752a6aee5281a1f90ef3011f9e5da99c63208084006660ae700abd5f6f7e5e74ab6155a20a149fda7bf01d528ea279a03a7999a39033191c4ce69499fe7bd382157ac14668e41c2080572e37b860ff3b18b824f34ec60ce32764bcec7b4f359e999847b661c72d0679b2b8566fa748ba5c83335260bbdaf7571b29f4d29fdd5fc32c4a306eb6e2ab012aa513549a22c365a807c18276f42463543723c14b831ed7408eec18174b0d3f63b65cb6e549accc4190136b416c20aa882817f435ec571013da6c3ac02118f7f7a5a9ddd63ae2987d18eb240c37c2a02cf365440b7245fff83058682fa79b80f9e88bbaee46151dd9c1379cccd88c56b256f1a2bd327092d19820755c2067388cfcd21d1a93782c8ccb075ae646606bce4d6e62903e01ef805df6ce840daf09110b8a454ce9d516edb7d4b41bb7cac03eedf4ad89619f2035e3a7afee95a480d524d62e70cfd1bf8b91264b84147c250660c144cf0cd47c0e9d78f6d6094c38470ce032e3d01b06911c0aac4509154522039a7095c6f670199952f25816d9887ca03db1c8e7adbde308b9838dfc2ff9035196e059a14e181b9a68a58007730dd7e1672c20e4b3dbfad9ab61a0b49456e5f967a1d957589082c1aeb343c642630a70037f3a3e74d79a3559a902790024e677258866da90f5e2ced333f43e4afd0a802e1b048f0cf1e584efbe4b44c9e192e8894672bf18149b3b513960ec6b86d4686233689751e54824c477d4097221db1a96a21cdc724e4044f8e1657bc00aa6e083d1120bbdfaa0f01ae278838352cb44c48a3dd5c1eee86ff1ef95ac10888c7f3d8f438126a341ff3be35a7dd058c9ffde1e370a37095c7a2695a1f6e56f2beb780165921f3da032868ce288200fc3b845b414bffa3b4ce6851059cecaa5140a6fc11937a045e603bd0fe7f24084c3a13937ecb409bb2c3255897e53004da57487d4eba5c952b58f615bbde621f0f98df20da9133fad0adf9a06462ab4f71f2c2d672c6c204b00edca9a9d07e3d0728c9a60114baae99a5f6accb673ab3ab94d2f6b0d4447ea355c9c1cfe4f1f33fca199f7b9a2d7858e2a3cb375eb2c7fe4ad34216b86d7ae9d706cb07c9468a0555f048181533777dc4051e3680f9b2bf743f572846ef3261c1671c03db3e47c45ad9276b712c9c435b23f48802a23dc4e1e0e5b1f27eb8608b47019bd69a83ae6c3116864e01566cc7079724bd6f0c30d8ce3f16629ea42ca736aa2284e6ab4fa62cd40c88946ddfa0c5f458a488991a98546ed6427e7b3bf07510434942600d1144c34aab6e684507a161fef2240d0413476c7b261ffb1053b9b6a05824bb2e8465d92b17cf905c8dc201ff5ab43e8990e2d2e40cbd4c81a940529926f34c2f2f9ab17586e6799dc20d8b6850f9d12888ca6a615ce450e0d0234e6184f1ba8cfc0363b4d7b504e5951e9ebc1b88e7bdea86eba659c4656e044922c89af158c7b36943920a8b24fe852128292b666dd26a93386d510423874c5ee1b894a7d618f7712be2325fc6308d7b15bd5a18ca5b05edbfe58019aeaf19f530da1c77cd4d1eb62d6d46c6350c8490470fb63f67e760bc8fc90669940b42c40d915b1960125ae2503af0689fd64e7c31c1ce7d984c03e417512b1b20e21a3c86962e43516d6c6dc19e2899aeae688f40ecdeddd832c9a581b573011db3cd1a4ec02fbd525874a5d6c74c185b4c84f05dfd707598b815b0f85b329614439faf3c63328033fad39045792cc549966555eceea3bed713bdcedaf67341856812bc1feb077ed11d3937f5ee6de53a4c6ef4d473823e0997c68dba3d1e8bb3867ce9a4becaf2b58c021945567cf7a0d0d7958b8a328deaa3235037dcc0e04b6f9b2dd21cfe35388aacfe01b0edeb1cb0137b86e0009544b709c9eefb428436c9c6e8e5ccfdbae1a538144de6ec10a8609f3b18683724d9700d2e022db02ddd860ece95e4e7fe15acfeff1cde3c27b59e98280f09a307cb862dbe8562075a9d0c1f5fb07019d2df8515abcc4e503e3f6a0ceda75a790416239c4be2c258d5c81199fcb6bb70765f3b1f7b8b49208018d8be07787241016b4515c3e55f7c91da68c000a19e57f7d6baed26d8c543361de3407312652a2724ae68a7b6055861b9596d8df350e0c39d3d20f96d5b308d094c4adca1fac1e02f783e19248e933281c258320cf1b2a7dbe2d38cbd09ee3b4a10fb601e966e8e5d9b3623bd7c1c0198bc36a83ac890d4218f40b4d9454b0108a5ecf34c4804258522191598eb65b812c0bca2c29c8c0b7edff8abe803b7714819a36627cf3af314d5ba603cb7e4d10341e6e749a8efb2456036f4ef9c4206ffb974e799eb642a2e4a5e426fbf31c19874ff433b742b47a10139bff59731ef1956e381aa51280b53bdc18d6871eb9f9034fe5024215e79b444096b3812072ed993f01c79115395d241d924a8a44f2382c1853574c8d125ac323fba94c30f80bd53211387b30289213839228e1075acc81bdd6699c938d807b224e8e65950fbaef0c98c458402ba915c78a629b260a525fd1c6ecb459b0cbe0481e1732ccffd37fd44ad8b2a0d03cfe69626b384122f3db84309ee4fc610c29c98f92a3ff57216b5085b02ea2eea56e8f403879004be48e9f0048b38fe2a923f845c38cd03d935355ec29fa21fa93e1e457d69043b32385b18240d2720995f43a23f958bc16987ad43dc240b8d6cad5e23781b4b1b66cfb709f128d068798ca0cbb23b2c84a5ee11ca361a7f1d9987dd5fd0b7cd761250ee435958cca6eb069356d2cfa97670b36a6d067e327febdc6e49f13ebb1ae121a10c680008695bb60439d4e453b7a389199b62196307144f814315fefccd9b973825b2913975156575354599da70222e1f02f80b20e46e8a1ae2996601ef9a2b6f42f6cb19e48c1e0fa6ef65b7a480d8c074400014bbafb60821e326fa9772eeac4f4486287262e1f118c74a08a9851ba6ea3987d70fcef9fd93f6c558b5aed43128f8c7cbc3e224adab5644d3beb9d6686f8c8455bbe11e6fe06e97ccd75ee111b7d6486606fe489126586d0834c1eb1d951599dbf4f5114f814ed862c6be4efb2432b20cc4743ef5a5a78907722baab126da039a665385800806e92a8b7c5ae9f27960a677bff89f7066a273489f80bf6fb3adef715aa1ba6ad5aa674dcff1ed5f301d6344b96511292747099c1249a2914a6a8814840f51d95ce90385e50ca4d1341e8907a15f84df7d63ac52b25f9f9a81baf1e012e5cfe5a84d47d43da05116a07e1f68f56f6d6bdfc921f669093ad8a10c7ae3f8c64803b0c2ab96b0af1c800ecc280c68fb8318873cd0d0cc4d7442bcc60ccc2261601150cc306fdb9c79a120a749d7ac6ba254b36e9a032065c5539c4e6cf4746a3f71909fb19dccdc2f41986ca401887d8d60f9d31b7069d64fd9d348aecaaaffdf7e64c42a5a82e0063261608c048abfa60cc4b4ba9cebc0a105bcf2247b0c9e66b15b4b698399f11cb78e93096a9a2597471edf2ee671605d66c207bfca3e02bae887057096f401408c438733ec85a980b1e305c88173d6b863260beedad2b27fd0140c352ba02206016306f16f15a5e149687ce076d04ed0e8217035ae3dc07a680e51f610dedf160f438d9158268e7ff3322f01b41311081e1c481f2a029ff6b36151c28bf2577d37e1c7b905d77d444ada6324d01caa64bbb5d2eb03203307c04220a73da59baf7a1608ebd7c34a5b6b5cdef8029da271229b39a7d8fa80ad652a12bb26dc286c0bb9e831033b068b2bf4445054be412be4257d97e50edc2850f9ad69a30569019a0fc1fbe731049ee7d34f6109809a23643e868bd3da542b08575ec1629a036e8b698b4c5d6f077b8ce20faf6fe5bd0bf628417132ca5db45ecec3c5bc73146dd09e20e4393faed7e420a8b25dae47224eb8059f01b2acb4b24c2e17edeafbc0224220589ce835cdbf0a019ad0c5e1911a5664ae9c563fbfe00713cf39e9716baede1e31227efbc01cfd6ec37e34c4ad126ac65692663ce73275eff15ab42d98adddcb2bc80514bd89f84db7ccf1c9653b8ca00c814afb1bfd9c192df6322ad7c041505ecff00367de9f102f1c6e82e9ec7992e7168f2b6cf292f622a915b8482315ba5ac0d9f067edec3016ccc92796b65ee063300256f41bc18d5d5accc0b4841606b8d47d7dbc21ac2a33991c4ba70059193b391f2294b958ee2220e86788a817f58513d4c7ba4c64099b0cd2919de391500e834ea9d5394444e0f2fc5b547ee71fd952f4a68ab3d84aaa8453ef43858a0c46c24afc1754e9704b293329e48a434abd2309a5d0ca6717d8298ac5135454f13d525e24d687f68a16905930369d0148f58eea99cb2ba246b317f5965a57f539cf018e415ce42555c3391908534565b3a64de330d80aa0210f983897696898c93b9e76ee73737d36e40fd341004479973a97ec473e134d9958dfe0d10c7ea002691197923000f74c72ad5bf262928d175cb018239d67939ace2aa935c2672d222dff5a3d41ba79ac516606a238b8a12651ba501c6f26676c70acaef921ee1cefdeeab3c43fe85c2a780acd28f442887410ef75fc4decbff78a55d35d29cd6f024a220a0c8649421d9f8b802e4ca036fa5c5180cf02410e8035572a4b0434591886bd222817a8bb7361698932de7fe84e13a1893f291db3dea2accc87fba5a32830a5178ae2071805819f6925e3e2d3e4764b702a563f8b5cc02051d145055e0d99a1f96da35358e1a5572c0c5fae3d20be3af4081dc02a2469432652ebe79ae0e4684f59d7f36a0f531b1c57c7d9a48073b8f278b4a0f74104436c460c9a40ba2f3089367fc684646308002877f9d195f46a0b904e88176de61427ba768d89424f0c4e92c25de8f874e1cc5b82afffb6394944ae604869499d926463c95e9cb256cc71823941b413310ec2e237e1ecb000f1d8bd2ecb5270064e1fbc80e7548ab03ff80c1e5872997598703bd9df2b5ec8db0e27998a8f1d798978e196f05cc9bb2c87a751d1cf41a859e2caad7b1af08d8c3613f5cda9b479a64686f0b6459e669a87d672624a13657ade5aa1d040bc546e764a51109b2ee309654d66184d3911560f28eb4685267ff271e95d6680b91b905e4376d197636e1c2efb0d5db2d2e0f5c90d573fb493bbdc419ed82f4c9d9653692cb5385709876a0e5b4005d9ff3b043b12d4425b08f9c4ee05c075175b97aa2f9b5c5fc6fcb43b2867bd1e112063cb69312ab4168b545b8fb729deb6780841c650a88202a99bdb6196a873f53c8ef79540e6281743f351cf6809d86899219ce79013b3b3f18707a8f0c5db85170d975dd03ccbe4302a10c1a2a848fcc2a1049422cea61e68f7e313b6e480a6bc4b8599b489ec69384698155d917c13fddc3941b76eee201708e3af03cbe090531bf894eb3b4a0935d1e06ca23fde9a8cf86e6c5978d617df004984428d21fef6fd627db40ef853d51cb818e2c770d7f025af9da75b361a6cf51309ae307c5ca10d5dc39824713558ad1cf797fc3b2f47305e901a6130b75bda33bdfa54a409ff92f3edeeb4bcaad271a0865b4babf7b06e697681932293dc2a585ecec44b2b2c3b529ac3805376612b2ed13b61da4fb97d3f19180b34767828139ea1e39205f6c59fb883f7e75869c576555bd8a0bfcc6c236dfd2d3e5c2d6578facef21ac210d1485d6f2993af1b565506991b5568071477e2657b4b3c96272216156f9d29fa374f3943cd61154e77eaaa70eb79eea034735314f13665a3bbda2457b677cfbb86025636c89d6e00eb5b6b01c58c89321521db808a9be292276ae3e1a2c69142b1080355af0cec9ec26fc6073f5da4b5ee81c3ac5128d3a5152a25062deb473892390a2bc961c33cb03f4a184b814ef951d4feb74462a236ebd4edcb6d901173e4d69ff571742c1f092a3595378e83fa91f4273e619fcab47547c2d0d58b11adffbdd29f436fa1bce024acd18316871e5d8885cbf720516f76b6cf8391ca10c8f4936cf4633c08af273c96758ef9d2486ad346347f3f4933c7f9220eec7622f62b87372382e9184e17d14fb64ff1adff943e68cf20491137c1ddb27238077184d0f3feafea44c948674883265220aff5a609b5185ffab2018f3c38853b2b80d398d1f16373554bdae2b44c8f6b79b5605f412b5d8d29f6b5dd13771a93c4537f9f39983aad78f49a6cac039c0f010ab31c90165510e4d8e68731561bc266f0789b156a3c4bcf25c3d45ae12da5806d4e0b9f14a52d06c0610d86a4eb97a0be31b80b921d0e312045f7281bb1ceca18eecdcb3700b80e170c88c50bbfb0e63e42a0323019473b0a9728042e423c1d5fadc885dee673e8d210f09046ce270755411281934e86f8287080ee6ef3a732f6b5ae2bda939901710c91b760eebf2c1e43235422832289aa91f00bad2b7265a7cc80276727c2180a444c10b97bc93a3beb416736c011a047fab8fccab3b9e96f989af23925f3e4a798f05c1a929822fca3265f92e78f4f2f8142a0f8005a6fc73542922776ea189a1356c51f2efc809174ea55dc6742f85d017647b1968779fcea837702257264d8c7f77c1bb76edec08fbbe94b58a9250aaf234c266b50a0d266cf155f4b2ee6dcd27ca4cf2d099cf72ee606acc6a3ef58b25fd47943a24dbee7adcbc47d655c9575ced12bdc2871cd9ab29d260a34db9ea899a282c41ddca4ed8e5fe41044f72c80714bb3bc94816076562ce8157fb60f5a24da323176fbdcdfb0e864a796a5851a9f9185dbc7c2b0a68091a69620290ccb71412450fc8078dca6deaf07573745cc81c1f285f9928c42c8b4ccc2a6b27bb222aa09f887c336167d1b483ab4aa04a2eed2cf0176b6fd1b6f56decdc4f8269e194ff06596161dcafba8bd7c614111eca9866381a5038f05b57131be9e50a0c779151233582fa8d05b4f5ee3e5a0f6a7b8cce1416306f8550bd4e0bc3afa401765528d597a18e3cb3050a5f819b93861d85046b77c7dca78a8ff5e6409b7b9dc94193f337f8ceebd2527373abb3914ceb6b3c07e60448b284419b8a2db61bb0cca369da3bc14ce33f6476d9957757e3ed776a3356db3385c9a82a461224599659a87f802a06dba2232001da83c25d41d88193494c534e0b091c0cb1094d19d0a4254730c3d2df8a2caff382721ea3890103b592c9ae4f14ff34f6347a22f1705ea7e2c2ff84fd6b81eb2892f21c28c874d67d71229826266243bf26c7101d30d64b9d7d86d34ea0afa241c25063caf647940f68ea4eb1279fc718c1979e890892a17ae809c9a56e3aef7d1375f7eac6c35ae8cc62f5f0a04393017bcbd92cd53ed629ed9808a376a4ebb7cb1f0545b79f044e8cb4ee61972e5812cae2fae86583a27e58f64ebbe9e06d3894b92afb5b615522f1feb86fa110535671f9b23db1e6e6b327da9ca8a3408303191830d37bd1122188d4f42efb73ed2701df1c384c7b4359ee7a7fb86ad74960fc25b84ca560e18ff40902e8b2179053d5d9e08f4293aef96f58de2bcec5a4f1a64206af095c87e98a049ac2fdf11b416794a370ea6ae6b1875f8aad7d40a521de47b9c2622e43c918e370293a5eb2fb0e831c6c9b042f35dacf600e049990603089b5e599dd5126c0e65c08c7933435d30b9cc6ef10aeb55e5cf2eb4460ad31329dae2307fdb11f04b792985b3dbfdc0e3d75dcf280e18fab7669e5baf91f8ea2fb38d2b208dca1f8d30e4137d7fc06e0c63e3d1ef11ef5708620780453c1f72582a9cc390b1ca76a2784d0a171c8b78bcd3330e609af47dee256e1f201023857bafc8e7a903a1a6a74e6aef4105a2313e0569444cc60db9cb548b708af334f4ccb1c0be92737d6048d0c8c58de6469512b2600807111ba2b66f8a8b998d94d36a5d209808c6681e66c2066be22c4249749b1a96f558ef03fef4811a6e12c4324137f1d52a0f59bfd4d38a0fe92344653001c1b95131d988b1f728221a9f4e9e5266abd31aed0a5e8c2e9db0f6641475049d1a251c6604bd4420ff85afa0076b1bd92a288ae0cb62ab22d239574aa8382246e205442e236e4598b7e7f300c9b7fbae437210f4143f834f392b4faeacfa38315428095687bef1f65a089a75aba4ec55a41e898904da5a02f65c559bb0b09c96a2d27eafeb22c86c1b030955bb2585e05541e6c5bd7ec036fbabf6ca16c6f9b321b92d445a4c299c3e5219ff2f449d7015f6949767cb7ededddb91427da246d6f55599f0d399ac125eda3bc1d826c3576751e4500a7e5fa567167bfc315d58e05a7fd5b4210a429e4e3567d7454b05ea1a507cf2e361f1524b8233c6543a081d7bf2ef9787a8f043155fc48f1387997ad5555f31cd29d15cb8f32182a4ba9578a91fbd4558e886577f854c97b4949c0bf70947a23c2992a946c203a1414bf9e67d2ace6f394e990f1e2c859e9d9922448f7f045b2c4a31a7c9af965dc3085b455b28aa8476013dc06beaeb8285d584b024235a8b1bf38724833ecfcd3b0e3e71b684af68edf8547d191bd4d3059a1aa114b409618a77322565b13db29a917ef50bb4f0f172127dfd7c829eeb2256a8fec82f1952cdcf7e0d2f4e4136fe0e1776db82fdb89146ca1ce6369b4722b5a301b2359bd680189873ae0c1792407e08c8e8d39c6b34d519d5ca7c21c1152a7173b620930b041e96db5d7ba60295955412bb0b00811b736978c426c749a0acb5e1d4815f5588c9fe016a3044852c92831059aac943b29ef9d2757ef5ad93dc67de63b6ae63711cd70cf938916f2a4c92717974d290d167f7879fc2710b5a86f6a6b96817292366c5f4e9e97f6589e1ba892c39a21551335142c05383be81fa2461541d90c6c802062afe39c50b5ec6e4523a9ff68a9b2e732478bca0a0d208f2ab1785409bddfe817ab4c87aa86bbeeb1e2e243229b32a0bc6014bdfeff422eaa2561cd4522b56a3d88210bcf9d7e8ee4613122c6125a390154733d88dc13c28f96c24a827a9640b5324593fdc3f4c8d41cc8f45629abb70cb21ee2fc4acb0254c2fac8913bc361f7e487d96ec02e69c1b4e903f4eb9708df12253a61436213e1ee6abe53e63031db975d578da0a1f8765f90d5539afe02b7473b2ddf7defe3dcf4401aab817c5806860aec55b40045a6e21897c8ffc1a17fcdeb42727a2d555f81deee8bae64655faff710d304f18d58797c3345fa66a785a5e918b6d5f3138ff6be828f23d77e6ab14b4be00b79433d6cb9b1d37e9cfa49724dda9c432fe46a9c554c83793dfd97571fe540d14cbfb4e889b575afda36f585baeee570572770d086312aec8c424e23c8abc24bfa72b7a75b261c050cf70e375b06ee81bfbc4bfe17c4a79c3b68e837c896bbfcf52410f9e4122b1791c0557c5128b5d555685add58c3c38a70ef178daca27ba610ceac449ce2f7ad35c043b2ca01b6621031c3f732a07ea50892dcb0be05631a9f18b0a345d9458433d57059b45a6575a180bc7a283eee1bd3a2d094a41bd190701f08328b1d4737d50317ff8dbaa4f4a6001ccdc4a7896cc942dbf2b3cc04ef7c933237f05c22f5e4d0d60b87518edbe4e3e22929747a71f18de818f2cc74ea43e53d2045ca940d11e354b2478821baf1b0c8cf9153081cce2826b82b6f898c1a5138d93fc80076b76366b1e1a83e7d5cea61cc4e47bbd22a27e37dea1017db1fa7cff6acf4106b85e7327629a06d58e09edee84f39815f0186ec8fb6ed6e8013f4e8145446b16c36b2f6e19514703bcab86801d2d80ad9db72187c83a667102f0347d4e429444778dc1591456f232ecff85075e3af9c53a94c610cd77374f439c54cdf355fc7dc5f42374995b29eb75f28c703ac065625d21f189e0ede5b8595ded9b79d4f39d640a61eb9a9cfc633498a25949130e705083f9a24056ed91a8da18a3282341aa55d6131759e2214f001fb26a49d72e723768841bc3a49cc3a41dc3a45ac3a21661d45bc3a21661d22561d216e1d22569d10b3ce225e1d10b74e0de281754c1c443ae44a2cc240f669a0f62db07d0dac7d0a6c1f03b56f81d8d740ed5320fb1a48fb24813dfb10887d3d7dfbfbac8d80359709b262b9ce2a638ee84bca6025f4e05b6e0b28c7b5ffc9190c019a8ed119a73d64a6d1fe3379c3d31c283f111955d8c6c6a4c4b3a17895c91fb293d0cb460d2885bc48888d8bfdae68c6a10eba2c19cc18fd254bb06b6011d80b3e39f1f7a387f0768a617685c84cfceb3a00469d2d0b05f6786448d433a44c63e7051581c87a70f99eb847f63487771772e7258ced4c04a97642fd367230ee33e2b9cc4a9ae4218a464d33e805bd5b3a1b115d9e5dba1824c0006911954225b0105335e0732b6489b651d38113a24b5206473890cbf7976d7e169e0e23fd8d43a84577002b8e1d7b99a62d85c66a7b2e66add3bbcb75ac6fc8f72228cd622623124fc4ddbf08e09d41ce701ff213e612377dcc776b7534f12bd10bbfdbeba495d111883a20071583c9ee9536ea17ed65d788f524b7850510f6dc0f6902590978c775bc34c2eed7ce2c451f805a02878794428b3e00bb6aaed39e36a39b8fd47554bc577be6f1f8d22a6ccd371aa121000148ad8726e4ddd551b0f7a4dd0302880da56a9387f6977b70e51dd48ef3d7bee215803fb419a3037b1102c0a72635df8159e85d7027975c0354d2c31004d8c441a994f170cf8b3e34cc95c7f5b62143551017afb23933246322980260a36c5939ca75c34db8ca16a9ee6bd88cb01f80dcf5daf4a6274956beccd4e04b2a32c1b3b4cee9629a1a222e52a145d15b4b5096c600fe3ff0f50fffd84f012a6409f8a2f5035522cde9219cc2667bcb5254212870dc48a7b8380a503bb9dea7b43091d68c8e6e28c6e3f2ad529b43417b2b35da7ac930a0e497f1a1346611495acfa1c05bb859bc6acde0035226dc37fbf2cff6305a0e55b5456cee58574e14d5ccfedbd6a67e4277180b38d63a47fd9c1ab15a4ea0b5b3f486068b290c7699594ce7212f78bf03b24dcb4ddc9fea40861fd1acc1410fe42c945509eb29e39a8922762670f6d7e22ae9fefcf336f0142a73e360b0bd7161164cb27108d1d65870e0028d23a56008ac1c26462cd9a385fee4af3a0fb8b0909645cabb0761f53c1cf26b4192fae101c21343827530cae15a1170c2494b025d90ea6e1ea93b0168c4ce2546b758216043071c1c5849ce468047897f20873bb7cca0b6271a35e5da9b5420801d51c79e8bc5fc9993c347b549f71e9deeae168ece5cd9f6766fe13e794bda11b21f2f90a9a9a773e8e609fa398f2e2b1f1321db5fb5926690e1a1e5d343bcc8588b22000a5d15d98151bed4a9a6eda3a74364ce084f9aed79ec01b244a37a3a810c5493c521cca78f78b61f4d80f57813b71e1b99be8dfd95ef799e8870aefcabe5c9b49a4708e2f4b23df475b0c05e66fb8bc28019fdb23d3fec671c72715ca02edb23e36510345d960f78ddf4ddff4fa30438eae6cce4a326916f7f872db8300fdf9af8a439082b3b229834e7220dae88df2d8d4b73f47489837e878f90a582d042d67e40a051ab98dabb389e720e697a629a89acaf10eb240e041ccb1c8e6e2c3d21e3c2bf6ea5fd3995b0dad4fe361a6360433cf922594160203b981b33d9d2bd0bcd38487c3b5f4fcf3557045669b762e65f12a0f774a3f3cfb984b9360eac0e7a05fe18932c93f980a95464d0a1d6771b6c35143722519a7adb24de7bdc7ae1d59bc1ae8bcc7b540fa4c59cc56bf032f07fe28d3e1c930e1712ebb10e33dc3f353d0a1dfa8cc982737d337df6a775972d2e17b9500414fa0b884629ea995eeb3f6805eb0bd6d9c9473992daec54a188bb35bd663a62bc53504258278fc445d8aad1e5d68feed067609e427889b1a7a5825220f6311654585bb9047d58bdc7ccd7e8ca7eafd66e2586753e09bea4e41c1962d0075d4cd4e8c83d1fce6a79aa5410d21d6ba15de532d9062e0b560fd7efd5dcad861443482ce23adaf5dc90e9adce0d6c65761013545d66e63c523fd163e7e956b2ddd8d3b15f2ec44a89d94ad308f1fe990f58e61491226b4baebc59b53dd97743374117eb1fac1d3ce3195996283d548375860bbc868d51a6788c680ad2afa0d6d5eb98623060ea49ea0a8f1fd1986ea21ddb03e420906037a7566ba50afde5e985d99a8657a924eec43d81b5da164b6176e7d396de142b0f23fea3050c930f2fd11dc601eb8adbcb13d959464ae8d35b7e64674519a4a3d7bdad9f86e9cdf89f919a2f4161fbe9b486f4704f56d24b55f7858071c196d365a4961e8aaea291377652b29a565a7eb9994ce07aba6ca4692d1cb67c3e40378bd89af453fd2076fc18418b2bcf3328400bafe4cb623e4864d66825a892f1072dab75d3f07fefbdb15a45852d85ff8a136bf8aca9b9091642e99bd44c1c9b0e808a6d4532381dfaa61bfa2c094ad23d05a3b44e7b4da9eee5db8565d030cfd77ba789d24a532c94825909ad748b068c98350d2b558ba080c9627492e3cf645d0dcb85e6f026877f0823c3dd001be944688865b6024ece32d081d0903c23a33d7c122fde43d64098e18a61791e67c6fd389e25af1a858bced8bdb94f82d5a852b44ffb10eb91ed80e94efb7bcbb49b16ba7016198c8a191afd05e4b5144e7cd847c7b0d669e449a1770d37399c5825c30c45adbc23b8806ebcb7d1af938c00dfd0f25d9e9f8f07cfd2d053c3082f49c2f850ad3a15db33d903a0943f2d0b0cc44b60c371c883674c920b6397462b97940c5c43d1ca432763da2257413098d6fc51406731123b53cfa62def659d3ae80fe837437fce7b4a51fe010aa437d686c3a475ed3aa02fae841ea708f48f394fbd3b12cbb79e430d9bd0b73a25a8fe567898f3c5d4aaa741e10c91b4ce28f2ce278266b3073527bee13527988c5515f51f81045f7b742761ed5457010b409c1e57659f019ae572317fd50c84f337f50ab725ff2445d6ae8df8dfb05f386a6fa0e627e5af83932ab769302a5eff8fd276e282202203394af567e6c1baf3c5dc93fb08357be87980f1a0502bd64d406d572e87f6a42e3d6869923dfefeae3a8a6e3446fecfd0a8bfca5422ff2ed5249eb096a2a99efc00fe18fc805e499b2be70f00ac8463f5cc675abeb2548ba03f2b219ce883761c4f4eab1a6d1e02d284f89535c570358aa0edbf03740eafa4b0488b0ea18a427240d2a7ace1ea753354ad64390f71479b9f3683e73d3525a6d32b09af33c4eb3a3f8c884c6d4964149ed1601df3b34c7c450b1c9f1a2d22cb7ad45e867da7b6905e3d71cdb3675e94ddf738b03527e6557557286aca75e3ef8bd0a073e4aee47dee3f9385b33a073af696e3d980350eb53ef359de84924bbe8c69ba6197167fd919f11dd12b6abd009f72058bcb86ad658a48bf68dea3034eb701c5b010e1ac9e6e9a6aceb7436697b86188a43a5ae64abf65e98c72925c31cfcd7a8a9927c5ebc11b16bd22baeb644c4a05a997e8b34284b0332fd080abd798e0a56f6135c6f7f57ab8d0a18f88e9cbab07fa7acbf4f08be8a3c6878d8456b10051f9d8c0f51def8ec00bedc5b841ed329020319cb3af60e6529cf4a542b0fd218a80155bf8baef9569a58ee7ddd23c90c8089e21a4103885b8f83b07906083f2b007090005ece257f504a50584eb73ea47465644f88c5e508eccd337ed72e47bccf23366cc547493dd098397025e2901e0b0e86c890a8ab6b8c9ad8c9bab0af3cc54b64c44eb1d57fc4046de3531951cc805d2849e9ea9991324edcc8c3c0d2a288a4f335eb9aacbd564fea3ae70a85b8605ba636f478cff99e393fad0f19b47cf4d03643fe04929dc4a22df15b42a96335edc8b4716fe9d964a1a5afa4d46a13297de149a36ce2b4fb0330203ce2907064548cddf2558c53299646ecddbc6611100b9a93e81a96d60d60197da706401b10caed7c37446cfa00d9550e1aa5ef3389310ad586441c1130a99cb6eda12111142091b9d8f85e28b05bb45ed438db668ef35b94db947412a66a27703fe09e529a612137c0c1d385707e2d4c99dced9198c23ee00298c2068cec881d34b395565404843db5b1e48469d025e6ab921aa08f3ab813e02cfa647e8de9c01aa8ff31393051df97b840992dc139438a8f848f03d228be384e497f05589450609cbff155bee0b7bf8801caedafd3f24e025fc57407c51b488aa18eb854f70a55e12d61c4c5f2a6e610fa7d970c2428e80fc6d7b88919d082ec30a021ff3cf296463b4d8e1ff88e502040dce4d3897d4e81d03eb0667e035cf78db7872de804728b132ba6a28ca1ea3614dd5404027fd34adb2715cdfa8b222b7713e86217acae06846618f5763d7b6d9d825c6f553a3531e80c91711680d3e0466cdc5d636bb7d0316cde4cef0f699b40c644fdf0dbdee3cc6d0af05bc752cc91e50c9684faeea019d19375cb223791d93ddc6a10c5750ad609a40d7042ffd20c39d0f9f9e3cea0b8e154b0c88a0d936384e87ee386ce728031b6294308b0c6cef038d5be9e2aea8ebbdfea952145168a937798d7b0211418b9048d1b8c7e1945333cf52f696713a02aaf290eb90a623b34210e66b55aa6ef8405d938937b484a292b8cc34a0add095438c1616f7c31bfb95c5ab0d8b52aadfe3e8f3b8fb4401e9f66d8f2b969401d1c221a16809306e0b5b003daa3fc44ba67add5808baf222ed804ae8f39d3472c6ffc31b3c3569586046c5083805884b0795b9c5d03b0471d1fe9caf549daf905467ade8589e1a3622595d2c4c2c775b5293e577c4f1ad3b3d85884260655f9b8a3d97b86bbd21cc14ca49ed4eae7751f6689c0f35d499e80dbaa6d784b25f0b42103137bb4fbccba57dfaf013e8409743057de4dfb0817f73998f753836466611f867b3cd648e8ab0a2fbe7a6672f60409d9bb253fbd14ff2833c660b8aee9e1e3a5ab041ba8d1d1a6624601b2c098fd4ad7b37cb3322707aa3b95bba2ef97421428207321eac36aa10ee6f0f111d596de3f85447880e40be707fc526043a1b72c22d23720a672d23fa1cff216b34a126c426d84a84594d1fbdca9c883fb712cd6721fa87f03194a39bce27e1ad8156d0040ee205303ebd0efe15eafc0eddc9a4d2fdab67e2ce17f98e2d767b9783134258e77e52651c431e9768c353656367ffc12a9a6d03fd18a38ae50c544007025482cdf5b489714b765f05d935c94c8dd1bb10ac1be553d9cf9854a4d78bdaad495a50e41711b99d6d152b71a47d2bc0eb110ab8c5a6ef3f56872bc81d3c5fda5beca6c6b387fe1539201e5f3096ecade110c3d01445e8f9d6510f6e6121979fafaa1ab836f55d8cf71b63f1452e391d5b4aa97a2ca44b664f86a28b6cd956954b1d7d2c6e848a163deea06ba95164f86ebcf1d8b3373547e7267363fe1a7b9b8fe5651e730e6258c9033567de53ee0d1a9e52d83f2d805cc4af2b297b01329f2ba244320fd5c0f79c2152e214f770d50816cd7c6c25c4e21f119894455f1a2a1f31929f4867fdf43c13a06b98c063537a875ade6fb464d7b77e37999ba05a6232fce2cab9ca896546401169b679a5ff2b4a90d9ea46cd869e07071432d94f5bb74e1bc00798b4f32e7aa7f36e257a8876cef75fb3c453a71a1195cd7e0e7335647c8999d8649de4808578aed968088f1afbf82d971261d06ca458b1a74089d9b5e2a1424bfbb2a221bf423725ff05a29cfffaa595be32f741cc57feeb07240eee60d23f6d2484ccc9c7e148015945864a7b93b2b14d16cddb5492e7a3c296e328477c807900331b104ef69c9b48e8cb3168290b1914153243640fbcbdc1b3741806ca5d74d073e0169dac965c1e589b1dbaef97465e597512de919b392b7613e03cff11d6434efd7decdf67e550359dde2fc59ccf572f94a05f8df494a67765f481cbf9c08abe86d1e7e3e4e3a8075ba31793ffb5642d64768c279dd7e115065aa5d2e03e5dcf0e209848566b04e77e677527d5e468c12c2955f3ab5793e744996cffcbece28bccd87ab039e89ad24e8fc529344e6674ea251e074052515b8c6748e4dd7b311eb69cb8c3325abbf33b4f2272b7d5de0be4a835d9118269c5c6a3482a566a9ca262ea61002ad661beb8fb2ce3c138257c24a6d0db5e5bf71d747637a449776f9f9c2a77cf39983b5ec7e4d08b0ae7e5fa3d033c41df63b217bb98378e46f16334c75d4533ca7333bbaae8fce4e93ed68580cfba8657c74a26f3df5fa8ddc8d9e408ab62697f92ebf8f8e819749c8f3387210ffb2678dda1e6f1ecddf43e65775d8163a09cb07e4a0390a3e5e0317ec6bfbc0d25516e062e2e73b4806901376816d34526b15c34ecc7fbbdd9656856e3d73a68642823050d3d62ad0ed54d90d423a0e88cde4dcdd3b1eb266ebf0b6ca2ff7ea2c6fc81fc016b407e14de5a02287f7aa7f73fd552e23e7bed060b5231b9a89e7b3ea6fc89d40c2bb209923bba993d146b7c298d67a61016777443ee9666b74b4450ea243e842163284be592fc383975308110baf1886fe760e3c5f426d7c72b3c6a2c24c550152327281015c181410ca1acdbeb9be52080ec14c2cd48e1178aeedcb1356a3cba2e4c74e3400bf8469a063b3d5e0015247cb674a8a855b0f6a36353229d66d501488efd24e0a48373152ef36252b5f3c352673e3f6e30434cbbe3b3064aa396805397f0a2997c037e39da9a12a8fb5fe94e07113f794518d71a3dd14d6f5924b0bee040e7b94117924afe47b3f242518aeea31cff2b19dbdaa99553649a8556187784928747e0efead7be9de24ab67e4abaf4dd5601118a713798a930a0d4603cb3eab6cbad02c15423a5c05cec9393f36a8b2acce9ed399506ea887dd6a341607c21483ab05d72a9bb6b445a5bc1fe1254d3b66eb6c1e69dbba0e5d7887ae6354e82baacad9cfd38eb926f0f79ae83d4705415a51f52d173a3007ee84423b6a51803b22aac29f32cd1d93d3803ffb5411bed1e1cfac7c56e2c9635c65061af316ba76e5a3fa40711586c6856fcc3a8d662c6106c40d12b0e2453e2f63aa0960538ed4842be854cf1576fb812200bfe10497a595600ad1cc64ac6769a8d4bbf6aa4478febae6e3411f05be782cdf2b1c46f6a65bf5c334a537002b8371ad5867827e66cb9786d741229047b428a75bda75271894e6e45ea3851613740a800c35bb911d196f658dfe4833fe5ca1659accc3e2d3174a674f438a314c06c5a0baf1bf6c7fb8d1d9b055f77ce91ce2c5d2b901b29059d1c55a490888377b7899ffe74d095342bd05522d568fecdf3f60ea06d8178251ab093f19b38ad1158599c858efe8ad2df68efdafdce6d945311c7b278b60f46327617fa1548c5651fdd7264215a8ed4e7d6aa8a1267a22bcfc25724969b76eb15a07ecb2f8f8f31ac23c057026bfb2131963865d20f5fa36e931c9d187410d9fdd4137b7dd25c8a144de84b143f5d0e45faf0953a72c5332504f970c1ad04e44b160313055c6d085fa6e8ee3edd78cfe01f929b97437ac8b77dacafd36fd6944ba41e898c955cbc94d42cf68bba3660ac732af2c9d17cc4e7dccab961f7f6a55f42a4b83bc40ab29e87d3b39a4a0497830c97aefe301ae9ff02742cb77b666d5817c66a31c01aaba37d068060f70deecd4063fc94732e15de6205006c68839fdc86254d700b696c833e6773b0f14b7e4972b5e793b21b46718f53b137e52fbe276bb11d912efa3ae4160f870c36e35a77f9bbce08db5ebca77614d7d268622fdb56a28aebce153435810f49888e0daab8cfcae6c7565ed8f2b1cd7c4177406f3b1c88140c3a0c71bbe353a813edda659226e2565ef77be954e9f6d8ab47a51518ba9f09cd2f9907924aacb104f7164aa0c4e0852d483d341141133c3438d705ac504c6be38e3c319116728ff16f198f8dcfb0234dbb2de26ae3ad1cb381259a1da64428ce8abb91e382a222f03a6513bb30f60b8623e511d5483758ffdd8ee32db01f0ab2173be4fab4e80f0ac9b6a9fcd3f0da3d175aa4ed3893675cd452bc81076e06150a70f82143d4991840daa8966da91557344ae562b5609a30c655492b6d898fce898e5404916e157b08f6648edac0307888454841c57f05654c26caaa3499f4cfa57b3f0a8a308c284870998bf6ea1ba92eabe974676ac6ccddad61f46ee40017bc0902588b898f8b475cf1d996058b2f1958f9239a4005d38f08d297e925b0f9a2e579b8af08bcbdc014948a31fe28f543ff7cf24156a2dc4eb7cd533dde1885f47d68ee07a92003728a72b87f50a2ebccc1d40cd8088b475ca45d815f176c3b59e58a65eb42e9e4526489315964e6b07b67866058f6556a43d970a3040b4c47d0e051c55d1810efb645eaff5069277d0a9fc8fc496effee8a8fb8823b45509686587628f261b1c5d6587d455faa63fda1e61c522309fe9615afd0cc77d9a74fffb847a8405c426c87fc4face74f2f39c64f567e528982c7c9829df45198e48c656e82496a8620f00a47e06b2e85eb2a065b52486dc267740dc783af51a2f7dc346b6af08b41c02a8a63676413999d8bff515235e4eb379214ac4aede3f1005c93a4b215b1bdcc9572cd9e6bfc16fdf58692f787b28b84c079c262746eb8f8da2c273329e40ca6e6b10f275232ed8eca84e4c8968c8c270e4469ce20961ae896e9c343f558a10e7bf60b153bf885fd1c574e3de80ab64ab74aecf0c3ec267a471ecc98eefe035914940e9bdafbe78c556021b35d556e597d48704197e00f2065b30023d7aacf2dcdb35ce0f33dd07ad638a49ca3522c47e4e895d2063aa711078e41a60eec7e1c51d606520a52bed4a5640d76be874879c4b54ea3f2f973104542b53408af94ff0ea3fe39d29861806a8962412fa4a5d7ac5160bc53c018b5cc5a34860080c7913dd1bad100cda741f2f608c60a6b80835bf014205b5dd22519bf11b35f4db6c688244aafa66be288e4f7232a79688083b5072a59cb725766e837f6392d99f33faf441bfca5de2aa831194b86233647db335a8589e449e9fc63f01c0d88330467223ec2748887a83d7aa17403011d70c33e05b9c3eb2d269a4f786b8a0324e38c405906609d394c4ccc91f8a984efa9a4a9fe740d3810095becd350570bbf3a5c07363cf04198e04366810f99cad1b8b4daded6e00f2e4105dbbd377a241ba9a5aeed692a9dcfb0fe8b1920edfd85c3b00ce2bb3c7e5a1d342a9340f692e3dc0bd4b3e768e286509e93b7802f8db461ae20bcfa51f60209fd98b267e1e34b09a6f8015cd85f2c4f3e0dc2cb030fcaab46d5bcbad15cb0142ed83295aa93c5bb3b10403f6d4d4061129ce329aaa99e2940142484269737d6c4284fd26d18905bb12aceb241a83ef817177404798de2b8fad89d27820f878727eaed1d384dc2446a021bf0d5356bb49dcb5b9b8db9c3a8c05bd23126461d953204db15aea486a0cb133a70fe1b1cd4df20ffae414424e5482ee7475bf95e06f955d8914f0572b125711380d2332bb1348955af1958411ead33ee631a62cf332a90c55980c0fac5bff18ec53ccbdb578e2a8f8dd4409c2b9ef479f96aaac3c2f55987927350a45eb6d3782faa33d2977680161b10547acd11cb2e708a0ef4d30c15c8816ff75a28fee1f3d7140f0238a5f984cf56062bc2bdbdf9f13112a35b39b2c5c45bc6bf2605934cbaa83cc0098f9f424acb4fc35e7e44436ee692309dd3c8ee53089812f2518109b015b5af8761a988a2c7e4413fe32d1f5f4935f706bbfec141969f07d0c4105185082ff255f840543b470ac2cc383326ddaf0bbe51166c384bdbfd54413c23a7dc5dc8c0879ae588c74a9d536229ad43f80ac081c5eacdbb22a02896d4921cd721f12d400b093578a1ee40acdfcb771dba6604d772c1b3e71e7fddc96a09731484f4020a017a675920165a4d07758bd6543ceae9c71555f5799c63280ea05412f35dfeb6b0af246fc5ff4877b76306a0eb61bfe27351b29c8ef3a43cf94a7c13a5bb1d881a71f17fd9949e820d15c9265ee16013ae87c55adb6d4d6e29654a49060906d906350674ca70433eba3b8b3eb1d35cc95ff17b7a05439f26e560709426d52ef5e2759e9c4756f5133f4a17bb5259777799b44a6aad3c6a74e34a8ae59fee1e75f7eeaa8b2ec61861a060589e53277033d606597ee8eef4694e3ad3018a2242672f3fe6cc55176fa574f716ea06965fc618c18e2646d7d07067e34555fc421fb51b7d35c5728c5fa3fa89cf6171779b950a4af094c88c1a62fbfd7b9c9fc3629b6bec275eb8b0e1ff8d3f7f44ccef67d9dd1c6b94b398c3b0a6ae3e63ccccccccdf4e7a8793cdcf7345cf7bf63ea256722288dac62969e16658beca1d55cea8bb3b8a4aa6a425c968458bf510dddddddc4c55c429a5641c4d7e1e534a265d641c11fe76d97722cdc6638536553871fda57f35b28209d79d00c0c9a79f49c0d53e610329658c902194734e1546b7a56431414115ce46c8d6a102cbed9641fa0aeb372e8122065eb1f4374b2cb8f2c6254ea270c357426cf03f602587c54a09834e3a334fa2151193bbb0fcedf2d86d1957ce5cf694044cc041108481fe4a65e1b2f068b842259552521775ae039c5f97f105ea81e931875f863ea46c07818cb3571c739a2395abc92cbbb9a5134a02253690050794734a9bfe0872e42a431eaebcd2934938a8a474d22965ea63eaeb915f10dc5c9595931c4a88233829a59252faf9409b528ea3a95445424e29a9a4d386192715321c50ce29793c060971fb63b3b5ef598163f29c724aee661bfc4439a5a4924e24ce8bcb0111443b73cbc9dc72d2c7c22ebfedeceeeeeeeeeececdcc422ca3af587a5b34c07b1a944be044a64a25a5934ed9ddcdc3239baa98cd10694c39e81079a869d981634cc44174c24fbac19f54ebaa48967e61c3b8b4c386d6e92f478320c863e366060539a7b4b6d5fa076b8fbfb6b0b5b65892891608e2e0a0830d2630773aa5fb701ea2e9514db13d34d79262a73e6d4a9972bbd32e9cb26e76f98b5ddcfe66e8975bc076106d00b0df7d68d01be42111209bdd57cc0dfae378959522e978f29c724a8eddab46a2d4e6079dbf7c77c5f842777777777777378f8df8dd70fd798f09dbdd85b53b98bf9a046b4bd0fdc097df73e6265aae1faa4ac2ee1071ccdcfe1e220ebfddddd1caed9f3ec425a5a51bef0efe921da11bc2faceff3778436f9a9bdfd3e037d8fceff5a70ba95afff84b74f1865ba7a6defea20fba78e3b91c61fb233f3791c391ea8a39e8c0bf43ebb85c7e96b1d18c87265a2e07b91c3bba8e30b9f186ade8539db0fdd9af32611a164968eb82d48cdbe7bce101bc7c73c11f1c061b6c666666bec151e9b0b9ecafaef3093695f4a58e1a8c46b32880a00d29f3c62557d4ea1179830d76e756710bb0dca4dc37f7f9c0f148ca2329c77193360f4aa2be56abe5bc8425a49c9261388d83b3040b234e5e6ef0b28448bbfce2cfff917663f7649eec582cb9a1edf725ba1aff78e3579707856d7d360936fc5aff6931c04208dd1023614d39791bf7295bea4947d405494da9586ea798524f5dac2bbafd959b85aca7660db9b69bb2cd266cc872b2dd7e9653ebcc0f09cb14a925dfe12fa5d49e62a274fb53b35492d6915f2a2975d485e50f534731317904a7b9e62a0c04799878b028a22699b54e3ae50c0deb9a93ea55ae565a2937c45fc4fba0e4a33c20282a150445a97ea01c5765bc51a358fefea3279dbd34556cac5d22d9cd1fc7a88b524a998863dd94883ac79ca877601a6ae7ae188223392e723f6badb4d6299fd6592705bbfbf9bb1d096ce3e573f46b38ae9f63ad5314011c9a2bb56cd437f4ab793a96f279543cbca9075af553c394cfa3e2211120ef6c9ef66f6f1df921f1f7e7681dfff8ebd95f3582e53f2261cc52b274d952f21b595e72851797f68416d80f2615cbe0331187bceeaec5f523ac7c566ae9d03a9c93208c965bf5e3c37cee3b4aa92cc2090b952cdba318baee72fd990a8b40e65224a14581821b32d3f55a1449dc90ab5c8fde9d37f78a32b9f50bffead03bf0d0a0a3bef52857cb092b3f5b9958269a456d861d373b7a76d076c41977f4cc40eb996147cf0ef07b6c8031c1987d8bbf471c8efe01552136fec4e179f27c1c98393ed00ded3becf337be70618198e772c8cce33bcf95492221278a03b272d77fc617fcabc743cefa40d43b630ef54045a1be20bff59393fb028c8a91d2a0512e6fe468e55be7d124af75545e110d191a5fc4a8414a7bd747398e4ad152024dcd0de5382b505a373a63c546c60acc4d6e335066d06081b9c96d06ca0a2c300b9981e2fa5478c92637799b81a2c2cd4bdee46d060af8a21c6765e64665acbc5ca0e2420d97e0cdc19b046f3839ccb71c97356e5ee3266bdc00f082a44fae5b4f0fd3d4a8f0627363e9c7f9e489ad66abc9aae7e4849343c566f322f08e47a3d9a678824763f14799bca0f3542b17fb020386152333d39a94c6b832afc4a099f30a0d4d8d8d57f12135363294c898a164068d9f944e20c878d18af14d4aaf4491a93263aed0d4a8e0aea44a4c141b1937ee4aaac44451e1c67d484c141aef6ac19554f1a69828aeaf05afe24d3151586861527a25a6ca645d69014402f892ce429364a1c9596872a1867b530de9af26f96af257134ece7499258b4aad586e1f9f66950e6a5989e51572f621e83623273919a4692e33f3056eb2894d4c2b060de5b81a2bd44a8d0da5566c6c64cc90372944c60c1a4d687c93777d94e3a8142d25d0d4dc508eb302a575a333566c64acc0dce4360365060d16989bdc66a0acc002b3901928ae4f85976c7293b719282adcbce44dde66a0802fca7156666e54c6cacb052a2ed47009de1cbc49f08693c37ccb7159e3e6356eb2866ac7adc532447e219c49b75346ac024edd701a79454ea0355668641400780186189adc84c06030c4206f52080c3150ce2567c5a5cd12adb11243008404c086101b3784dca031230472ca29bf709f217a9c6248b46934948c46a35c27f5511fb552cfbee8598c366a59cb68686a6c5a5dd4444d2443a6873ad6607fc764cc8889ac859ff80925a33a8099b113fd98ca13545c644ba0d16a4b4bad274cb62f6c4f6c59d45c9c5c9c6c494d4f6c34d410940c8582b8d3b515d06afcd5a6cde889ad66aba1644f96bad644634273a2b9c89ed068b6265b134a4e4a365a4d7a62a3518fc64746313c4bfa22c986924149020dc543b158111111cb7c08e1f434b997d30e4e5480e8c1c989da6c4dc001a806bffeb5543f1225b3655143c99e5811779ad6b42d68341aca091759d39a890b1617278f8947b3c1a3ed580280ea0789ba3841415b12775c9c3c296c3569d5b443bf76d2b57e942c88cfd043a3dca4712ef0bf789aef4cdba4d9684c361ed81730180c6dd36ac11003b3ac9511150425f368b2dbefd15a8749efcc27d3568069ab619df28ba9a0e501313a51cc893176ad410db44ff5e8d33e1cfb4757c3836f54714fe4d14444d77936979d30bff39c2890eeee3b9a5c6677cea249d42e6b6d520e95ea3cd5cac5bec080b1a9a1a112e30789999e9cfa6dd886c435aed1d0d4d8b46a6664c8c89811835a125141b061ad4d1dc0cc963ea601813693f1a2e5d5283e18492a243ee22399176b45915172249ecd686a5478b1a94d22a3551515bc1a85bda959d45a7c75b522ee74ac6e71bb63343a16e4764c46543be66c64144555c5652c93b5a2742c78550adb8217e947217a8861221512c75a003d236e388dba5812b1b84202888a000e361d7260e28105d50e545ca8e1ddd020500d8fe3977cbd543b703c7f1a983b8d620e1460604b4583bc8ea259fe0ec7ab52d81cafc8881afb47dc99442368754c89175bd58800a0faa94e1aec5a7b01e619e1c5e2abbd1f71a7d6426f04b79f4a955aabb56be432e4050ff5031b7ab1187138e8c5e895696464642f8d8a061a771ef9c0f287d3e863a8905a2d180c0d430c1c4300bc246e4fa3b982b8e3c5bcd80b6ec78658fed08bd9c8b059b9ccbcbf14742b222677e191483763d163eeeeeece48600f424c4a39e3683be9eeeefeba46c57274c664a034671e0fe05400a7160233b30f378fcc50e0865d00360566261a060198e7f1776c346c07acab70252c710fa10acdf68d4bb450c2056fb478a245adad88efee5e0a2c7f74776f77771ad9cde29abefe8515b8b2098d1937328d76afe5d4776cd04073fd839dc032cda5617379c7eb573f146cd8629c060b00d6dcf834a6374b25532012638ae6eeeefded6e3b8906827a3c6007215c187073c0cdbb06cc117062ee71ea2974cc18b0dd3b2c1e5646f7dab957e110f7874b2a29052a58c307ae9492b344c9f3e3fca40fc94e0c7187c50d5e74e275ef0ec2120b23abd6b7e06313b05801aaab9d9fbb12162550cd1634121645d4ee20b0587d385d614a029122215060b9495db161eba312665df94f042da9162b8585c53ce0b804229e2451a4c6842d25e02bf1e645e56e4ec1d3906208122a6690850a187c7145945ac4b64f7fab9b06f206012d6e4d462451822c5860e509125b1eafb7bb32890ab29060c88b2b4df848a72b6ad387ed8f575e0e8bedeee7ee265d8c31c61a638c42648c916b8c31c618a3fc2863acb425588421053373a41121d24a620a446ae8d35318638c3164eb86eeee31c64803f5e3219f07bd74081682d19c16dd4f20ea94a558ff10e8f69453ceee8fd77e2d7fc5cfb97d0bea126f68a4a962ebf3961b728fa23488e3be50e886f4434a0d81443e92aea957de39e7cc007781f0a8d2213f8895e8e4cbda3a3dfcb9b7abb73060c0800103468ab7dc97efd8ca97ef505f28dde5b7d6be52f585dd1771a03a170f402817d06d150dbce5a2bad4074dd9d59cfa853268fe0f3d506fbf072a3553f3eba7502f61509f427d419de77dcbfb98d64f182efba9f75cf6e3e5d8b59ffcd4af5ca9777185405e0a89f7a957a97ea6bc2ca6613efd4ed65a2b7dd50f42573eea83ba0f85b8f20b22c66594fc82ba0f2baafb5a7b5cf2877404cdd33c0c0ccd27f33031e4cf3c90d60389a11fefea5bdfd157d1d68c0b884cccca15025d95aafbe8799dcbb25c2de92a1d42374b3fe53b3e86e214b6f8c0fc0f22ce0788904ffd14eabf553fa88f077da94200fd5a5d294f85faea85556ed26f7edf57a197b631b0f6816e0c71ae7fd0fc50881b838871e987f1a54b8ee3388efb82e8cfcf9bac3b07718c5ffc82e6875c5fce678f95bf20fa21d59f9ff4d85ebfe2c7a20ed623a847fd7843a11b220d810409eaebfbd11477ca0efb24b1d44e36d62e3be186ecaa1f76d1207ffe0f42979f3afd20cebf2062dcee437e4ab90f5df5947b7feaaef22fa8fb908e50bdeab9a72e034418f8551f55402e2d7fb5cb17230c2a966281aebff59d95ea53fd4a657ff52eaa957f53f5fdb97c2b558c38e17c9f4297f33eb25aaef797cdcdd6d4409f9fd61b6bd70d203facb7bf72d1a19e512eae1f0acd2e7fbc3837721f84fa5088fb05c52d1729e6c1d6e9211f5cad56abd5eaa3412dc1c64e7efee26cc009f993a87f7961be2f28f5a8e7fcc7f35ef5cd7a560d37d736ccfb10f28191dfc59cf9f22b18fff2ddca05c3b59a77e5025d382f2efbb9b8e8af5cb5db2308f5a1ea613ede0a04f3c13c10211f980f88ccb3be20d4cbe7bc8972c9c47c44317c60be23601ee6ab2b149a5dee0b5770fde02d3e48e4c33492f94d71f961bee8af2884cbcf52ec3f0b06e65911084c6c01613d1098efaff5d21e53177d876d6e702ccb25c6686f8c0104bb3d82521fd60fc22f92fc78513ffc7d08f9f84b97073cecbefaaefa012a827db8e7fc878f21b62881c2042744410a5b7cfc8108f9f807843ef77d41a91ebf29d70dd27cea1a827d7ec42d3e44317ce67784bf747f09c43f1fa92494c00191142891e2c8473e107f201f90d61c62f664413d423e9029e7fbab82561ec13d10cad159fdc5e1cd8dfcc22f5e4bf93ab204699d1afefeb8048851c7746409d260bc52c85b72d1fd0ffa5c8cf4e3a5df4dbf1829edcf6b30cee626b0378b386ad8d2548fd1925386091a2359aee43bae44a3a16292ad91b8740b235beb381211dc22ea789008d24b93d8d0835c7ed92442440925ee124b482244dc91908e041297ddc877fa8872a8d411fdbaa7d689b9fd348975ead4398926f98bbf1ec9496b7489a6344ba2b6a3a499128d2ed11ab5519fd429a5733a9d4e947a9149d648c6648f5c6439309231559b345bde947f56ce8f2627a73492dc94df2a49e625451ceccffc744aef501b358a38b8971c51102e56f444879cb450b9fd9489da7ca71b62ba45944a10ea54843e794662de112297d124967e884aea9e1a6c541733e646150d3277cadc99db4f7360e9872ed33173e76763232237f217d71718300dcade910dc6506ea97ee6379372b55c329eed1d54d2a44cd8d0fed18ce732192aa90b1b5a97b314e82f7e5492bfda9fba90ba4fb97ef4f0a824df7199cbfa8666c6a52e9b038b4aba7255d3777e6105aefc5228578dd1345ce3c9de7199d1a539b02ef3662e2ca1abb16060bc5817d8eac6474db15d6b1d154a3af980cdf167d9aafee66e19dcd01f007dff56bcd455fbc59ed7a0b37518b8dbbcd752a67630998ac0f6c7798507a6a73423fb883ee3b07cbd0329a577cc9141eb6fb888233213a01469d152a58acb114279e7c725467852e763a05211bb7327d4157b2314596871a13742612bba4c24830490b8010d60c00422ec004b1394101a9a22e436832378b0a5089c250845d8c2827a73814ff7ef31dd93d25d7a1192bdbb3acb18e33441e74ddee44ddee44ddee4de341d07f2266ff2266ff2266fb789aa1e45da60182c078fdff83f0e68ad4d832d39273bcd48279dee3314d7e6628c31c618638cd4637442d72803b1494549952eba367488a5c553127170cc612bbcca6c07ec171fa1461c16e44e1b9084d1c964c3582b92f9ce7c8ea32eb056ab0101d56a35a05aad26051bc61aa551f19c6e88684ba0bff843a15b63054156cbb2fff548f5ea91ff9b7f9c5fa28bb00ef5a9ae4b35112a05e2f4ada921f5dd775f4d176f94145671b001e301ca41071e72f4a4660ecefb2aaba65236786030186a075456694f665498d096989cb06899a2a6d43a21259a256922e98655e98606f3aa057972ccc06ad198b0bc4aa34d41f3ac57a9ac16754e9dfa9a0ef5b30959aaeb523f978ccca4497312b1cc2344dea15246ad134e2ab783cc224b9a9ca838d5cf94cda82fadfa3d52df7d987aefbbe92ff3fb6b50a9b7699d1ad447435f14e83b432d656eff0f794c55aac42f96dc6c17959a47ade34f73fba54dcce1f7beeb3e24ef53a94e79dfa44844efe3fd7ceebd8e93fd6a4efdfcc84da58f8342176f9cdcb05a802d70bbfd17883bf2a5b86194c206e22be6547972e313372ea922e4ca2b36e4a5295aa78706bb4a09ae3f1ba171348709c417fc9dfb80a2941403c51c28d424b49e5a5b0febb8134292da53136efac5384782601964cc7728aabe788fefc078683dae8f5fe0a7aef6866654891e51239de408f7fe38f80e7d7f217cc77ebb6c6ab5965217f7306bdd5beedc57bdb0e1113dd23af29d2645495bcd80a70a00942105b2138d79a2002a28c3f50f043d8a6db1a6dc194e2cb7e503ee86320b5b6f286f0c5f6eacfea8b803a2c2ca23e638e83b05e0977f1402142156519bd8b834a4c875117c7fdfee25c688ae888aadfa6956d5221bbb59c678c3587cc80f9858a165719a0cc1ad97442c4a9c4082463957c20b1fdcdfc19df359ef1ec40ba5bf1981a5372ef1e206377c98928e490f922e107e59e872d09ed5aab2da685b7ca37f46c186b61bb2539c522c88b5a51ca6d4806e98c2b4d4376a5c589e81e5296a4b3eb3c24aa945cc69595bf2170f7fa133c95eba92d6e02c2eedb04132a1a093fa46bf64b255587e58120c96d4330566838902dcc765fea234b02108e2c8592c071b0e538e6e7f04aa6733e5c65d3ba0d830da6afd6248b8d0a86b887bfa96f5523e0745eb2ae27d3a80c586168c43d6f68d8e5ffb302f10f23a7bad13bf1008795b52b0919d3db61e20e98353886e3f8e0d0f47dad05656f5b82678a454017172b80c71957381437cf89936bd2363b158ecc8a741ee174a47d04409516e085e1d586248dc77aefa890d10f2e122e78af24e157f47e90f4ebf1af438fe5833cb08a44cc1239d7648e1c911a7b0b969977f173ddba0ad6ff477ab17ac5c60c1ae3961afc886d2a97b56ad74e2e999efc8265a44b93d7be2914b31c7955c8a6c0883d998b22a83a39914a32323496c94963a29e9e3a36ec248833deb1b4946d8908f66fc9dd460cffa082389393c4be223493deb1a58591731c232db494747a8b0b1feea4d2cdd101249dd63fc9e76170ffc741984f58d7e4ac4f6bbb71aeccf260596474a0cc4c901de1d207b204eebc4cfa1fa61e13828916c686d2cab09f1498829b7dfc7507dcfdddddd293f9d94a31ce528a59f3799512ab0615521b1de11b62636a83a62a38a7f4937349d9e5c32d637fabd2236ec984764437fea188d110d1b3991246a9db063b1296ebbb81659d4b19823bfa7e5f73b7f9e00f7919fb4b7dfb2bce9249f88496ebfb4ac1bafd537fa1d260a1bc6a51d2f44682336b451c4861a6466666619638c317e3c14e45b8a8cb04ea5e564e4f64efbd8b478607d905f2cc6434a6cc84eecf4fdd5eb189575ec136fbc226c356aa3d692231455cf868314a9d9fe8edd908d6efc2a7a7878a260b9fd392213c97ea35fc584ed0f7986fa158b6a105ba465e48ff42bf63891a45ff186b05b73292e784a824ac813d61a65caedf75a36382c24fe45bccf7c24f93dedae56837da35f3eb14844ef237dbcaf06bcb616d87e371265e976ebc9656ae2f6773fddf0668863fe5c30f9b8f317699d294f1788be3f44d48b8e2bb1aeeba2d6894f1821c88d57c717b2d6894f70f1a4238b51ebd4e8c862042b42e9e7f22917ed62c71ee70a439897b1250d5d1ec6cbb3824221aecbd3e75c68e797fae5fa723426e68b39f3e5b39ebefd1e97ab973fbe05c607495ae9c378962b84f978f08721ff871e1d8541bf20f9212723239f7b184f5d3dceb9e65399f9aaf905d50f4946c6155778e977f91757c883ff0f42d7e5b9b7ae30f5dc479ffb78f80d85aebfca15ba82fcfa77ae201fd73fe5eae12f7451375b3919992f3e6dd54f9dd4a8c48c9b2952c78a2600080a3316000018100a060462b15894a5a998f614800e6e8a42705a3696c662398e04290a8220638841c61043802186205344333500b3253deafc7f8f32dbe26f1dcefe948460bbd3aa1ccd4cfd5da97fdbb315ac3fd25cfa2bf44113a8973658f61f1b0477a97ff77e2b9302bb5808440258c3c89af1fb345f28d6571d9562e02edc2a8361002e2ec2bdedb0c118c38a6e7b0c085cfeeec8e27b0b9753406575e8e4f3066e5e45f2e73efd79f619b4484934ca81644b811647c016e849488941d0355febc157a43ca1434f3c1408cc06dd4f552cb4816ecaa789088f42f8cedaee2afc57833ab76d9490c1d14d2065d4fab01c01fccb9b886761ecfc90221a468812856de36345559faa6ef83285b2712e8012a15f4020e4ca2aeaf35bf00facc19f577403a275308c2340e5c4de31dce426351ebd926c914ce5f4457eeef5686a190ff20b63b1848f87965586d630bafe0fa11418b31a7498a55e23d3c1ee58253988f56b824ba446ce36b0ec1071a8b6f5e693b1afe7c2f697f8783a958b799dde165b6ce463e89ef8ed68f80938f99e12473454a3e5609cf7dda837110315ffd43320c8fa74f7ccca588ae265c6b8c2e51a9904ef17e6713517baf8caf2a5d1dd0a40ecda942ee84df3870e4faf20115f838749e2c30a068e4b8bbcd9c02702068deab101e58e736c475a80a85e51ed565e18e73df7dcfa40524614ac08ec0593b163140c734750913390661cafb40fc05c830399201768403555e8c474220a7780b20f2f207de6aa2d02ba3208ec505be742065e49be2470dcdf3e1aa457e7404633f13e6b4855c00ee210c07a86e974bde6bf66802f0c669628315a17107b998ea18cfad9063b3f92bbfc8909a555e15185c17c084285fd0d144b0ba8d0decd71feb1c2f89b6e50da88aeb3da7cb3e169f4e7fb4169bef6469b964a1ebb9428ef2a995442c16d60cd488955dc91bc6a7e28e3b15b72263f59d43a250f521159f760b21415b5cd72d17d5502ecc3064020fcdfde2ffd62a5b3e54473dcc775ee5329b02abf237e875272344a1067bdf59f6c00fed90926c4875a98cba317604632ba3d0edf3be4cbaf17fe81061e11ae6652f8b38dc3b5506d1d096d08231a1e6bfd4c19c36d4dc33a302851bb80621a95fb17af2c1a626286549231f41f65e116f34be8c828a359a199c5f6e5c1b8dcb77e2329e1030e6e25573a404fdc984a4057277636b8d40640e6089eff24b25d553734a9960c43db5ec14e960708b849aa28fc66477b109f6b775990bd0ddef24e620dd26929c5d7b844f8725589bf0ca735bf36e31992a68c616fd9699c67f8c90b41aa7bc7291e83004d4e6f8031d611862f9a688a48db572a7b40cc9e7b7317bd3c87d638ebdaceec05527d8dcd0b143fa765675c4c63a782edcec4c66922f46fcf155ebd8eeebfc6c9f94b57a59a52c9187716849c975cb0e4220973750a088adabf24bb4bd86ea251b1ad1e606308fd2550a021e07baba495d5d38ef0a7fcfdd87af8172d00e885809b47e1fd3271ccb78c7e8cb824b9965c2845091469d8259ffe1d036ebeef968783848e4ccef04e4ed580c2d56826068c10948ab41a76992741a62112be08809ed6727ad9a3f7b315ec84a12d09cbc14ed6453d325428bc50ca4d7b4cef812f0fc0b52a2b2e1a1df13d7949c979bcc47601b0077e418c803693933d8354844e33f4c8255f785743ac558c076bdc88cd0b5efa6f25f379a9158b2ea2e8bcbdf35bbd5588dda17110bf01a4453d6018e53e83759c7daeb104f09757b5b610abd81613dfd9b408af75ec34d82d34eb3c30401edeba11262016b29194b27b5cf5771314f59d382d4c91a7aed2072014f455dd96261e5d4d5778f4c7f51ec9f565fce7dba7d4431ff589ebbeb93010c0063dd65204ea513777084ae1ea3eaed2caec15106a71ca2779350af32a1481aa284088a8131bff930b174c3ee3b16d29a16b736b4f0a06cbc740c85265b6edb4d5deabe640b54ab14554e99888fd12529f48261ab54569255fac70a26e2e8b928efd057679974ef67acd522c276d9b588c66cf898de13511da98191c72567b53b1cb469847206b17d724931eedd2b95ef023f262b9f15343125715891ef3d86c3d86041ffd40a697b5a21312a265e4dbba66ce90939eee418fa68407688e72668ef2e3f128cf1b9592d9060f6659590fd33e364410d71b541b28b8d9242ee36fe13ac98c5d099910d2d8ee04c0dfc5d8a93e942e0cb50dc446bd9e0013db91228ba0faf82cc2ea2b42100296c46ebd09d5d1c781d8cdb08d2dfdcbcd959963633ac512ab793991df95994bb13b8689b51c046205776638627f123f89685ed3c1eae9107f27590e4f75db3f73fda6539c57f3d5e9b7cf25ce47a682edb0365a129d8ef166e1a9e056234cf8905e7606cd642b4dd7843833118ff9caccf581556fa20b6f3c1cc5f2857b7d2393e3ba6e1475ff81e55298944caa02c94e41bec413543eaae3dea64c19c930f5cbe97366bacb1ed58c535210c107d2842d225c7961672a3da0a9a7fe849be93af2eb08ae6d3ebd7526f60325a9a6884ed10fe61aa65e3374aa2d2750ae5650c88f124aa8243fa32324bc6c7ef1cdea42cc4087ca4c8fbd051ba4cc41df6f814ae3e5d688e1026651fb66b14819262c7fb0b5277407320c6df00088fcc76b9077df6cc9656f82a5bd8bb5e26a0c8282308df97046ed64a39018b546debeb8a48c5ce860966931dd9f4ca06ade2bdc559c785f1c9c6cd4131064e48b339099ea0e1bf373e40e39e1d4228b1502c136140da06f9ce4d6c83f586cc0997d93c8ff04c8a59955d8f0f0eb962566e4692a9d55b2ad24c04fb19978d19b89ee39a22d488cd51740cbf64f0c8392c0015da93f837e7131bc2978d8962a0cc15b65de2b967065bace1ce352a502c6676d2f2e4db5a17150a6cb864e4cd40b0b8caa836a1e9604b453c62cc4215fda048b3c16c64bafed493ee8a311255518fbcb7fe47b0d45e30b538053e398c5c67312207916e410f6860530c3ca29174bdf2c5e707263b899dbcdb4073d1a77293b579be0d8c0f628d16978a2adeb1631a220bcb712a1d107b4c2a40e997dcc7b852ab7b0cb11fb92339f06c8d4d42ce3b0e1b3f0969f0613d1b377a4df8f9bec496401458790573f48655b89407e764cd238e5ae8989764e6bb0121aa6a81cb703477990e0d3055fe817afa545889b3188781eab66b4718bbe34ffc3c5dc3441d7b5da95dfd36f6e44ab966996da1bb05e397fc2a886642b2d03c63dc1145bc713c9804466544629bbb0ea43e8c1799539106574e7bdb83ac2d805b649a6f3fd5cce5c2ec64a8601198656aea3d5f626355ca86b08db779e1ff877207f0c255b45aacf00facbc3b26c642378d60c52ddc9c31613302b465154922ae71924755090a89f364f8a79098ef1469cc3d29f121ba313de4beef0b5431f547230b08f555e92df52c46ab8daec0a302a29a7a42092dac41f8322a62ece345da2e9572fa7365d0e7dedab0e515d2b9c4bf273ab7aa01ae581f28727511b2d425c500fad3c67d99716cfbbdee88adea82c8351b3f6ae2ff331c4613df5a72e6b5ab4881c670b3abf0b55843c4443cb0d5bb735977d5b9e0092dee1140d9ef4416fa8a87eb4f008b003cd44cf15ca54fd43d0b39265feb83e036423fa7272ca82a582b73f99ab1bd5ecf846414a5adfabdf747e10b36bd90cb346e385ba0a9b33d6155d6a83f1feea967ee061649a91c476114b3e2242ba290f8ce3031a8f833e897dd628eaf0fb8e27e40a98ac0c020e05477b741608bda548cd81d02f5d9750c6f3b4346b68eed725c7a77195a06aae2866d22f02d2d4fa1996c0a772524a7eae726c30d81ea90ebc3f03f2a406a5d2d5e268234df2b9aa69f443fb58677c2416874cb2d5bf7784d5935bfaa2bd6a31b75e301f8b6cde609130cbd4d93e7e2e6c19a15927d0686c541af4ab488af3cfc7c360ddc4dff82340c0103a77451b486570cb8248263ea6402d020da93177c2093d44535b1514ca61fec75014b1b2796c25bebf93750bc1ee0de893bd2009610ebf6eab2522151f06f0ca9951d3b9559e31d414f5f35b910b30f6e8350c0ad216e153f6c49127140cc525f841033242fbdb6e835e28aa0dbf68068f5758775ac98fdae78525cb3b7dc76cb8b1a68c1843b0215bf7457755e73014d5a8727a0f4393b396ad42063665ea87098b027ae9d0352261db6d140b759b44791b3140c90b1b64c43a3ad937716a3245151f7e63f255d4b45f6c05fe8cf10db1324319e257b31bb917ca0e0a536d5bf12280c850875189800b817ae1737b61806670454dfbedeb1dd00f31fe321ef448d2024e29082d1c3830139d9426be165ccf18e7b6179b123e8d6cd982b1972992ad26d05e5488ea0a2ea11577040cbcb25001364d83d15864eaad1f6a564ef65504153aa155b0e429547db3543a69ba99a921bfe4ecddefa25ea5636ae7eff7a4762084bd5656508697141b5829f6dd9459c6d3048ee6b6f6258496289c10ef8b9160c7e6023a2418e3e06833104046f23039e39316b414f12467a041b4a472d1af5a956baeebde3ab753c88712f9ffe2a9096b22d5df246399b13da06188105eb58e0ab9533eb11c9bab591bf77c3bb0a6386109e1ef08e28409eb2671ba0811bec64cc09feccf9dade30a7f0b96002a5cb61a80dc402728fa9a126e79d964f4ca0ed754522345a6f0321ab6395c8bca70672b722134bf441b1b4548ea0bbe34c21a5609313a71fe12cab79603d863007fa7de66e5f924505aef2c30cd95f84f84d675f20b50f0b418a85d5eb5a2b6b6a16d7fbdc1e344085093b04fea3390bf0ab52b2852c1376472f13504e1644e26f46754dc5650e6a575d7538020833d12fc49d9af08770402d58737e23ed08a04eb4a336cfd13fe4d933e27c0a964d73c93cf032c0530b71b867e5aeed3894bd4bae70c6399913ba9a5e5a39e3a449674a6d199834e66deaee8d9f287c560cb92483be1b15d0998377d54b14079b3edb657c4d27892b5e41551410edeecc4b32bd9fb1b57bf0ebbadc3ae8e717ca2f4ad4a18236041f85d088b900bf4cca4f83289aab8b2ac874cb2a8a02a367128d3e037f171ff5a1dd48ecc62510b56f4356f22f31f15bb6394d4dc97b79583b53078b0558fac69b2349a9e414edb29be88734189eee3e38a771e0ac62509cbe6cb4a77b13ca2f8737f9f5a017865c7ee4fb6ab595d6717034b57c28c854a13c87e5b14d44de54241362a80212a07682b2b1a48d181de24af2fbbd204fd522409c0cb43339164a6a5fb02f55c42210052ffbc44a8002100bda2cde74c94eff5d405e4d79ba56bd9a671ce0fe06d2a18763ef67b8928010fb8feffd8b01fc321a0442e3acf2be5b8dccfb26678166a538e5fed241e2fe77e2f036b20db02402688700b20997480da565611fcee48112c9ec521431b14c9682bdba0713519a2d7739b184b9e8bf27be474c4bfbe6eb6936257929ad9b5b68c0d51894d219841c238a64b0109da4d312e179ba6d5349b83ac78252ad65592f52befe8adbc841f35ef6016d2b00a631826ed0cefb8bf89c2decbb32b9e62ca7af9c85346950c5728812ff40eaac9448bc7203d35877206710b730121646059aa20f21cffd9dc3fe6fbf369e0a8bd4627606fcd58498515112f07e41e805a9135a5c33687ffad20aa290b3474b196b4d2403574575762fb7e6391570deab3ac8d965cc78f42a94cfa2ef85c42f664df61e01195ad092d7c96ddd6b389519ee8952b46b21de618ec9f0535916511468ae45fb2922082456716036c152df018005449f61d414770ada41953f27ca3b4454a2564ad44a498e542cf8b947e8c58e72ceb5d6c4af7effd8da9a6ee676544181e9bf86fa8354364d4bf9a6441c4e1c6f0090ed9eb244ca8b5f110cc340d5b9b4083921db0cd98580f768c75876b94028c3be1d25ce83e5d5981b6573ea4f1943055fd3fb10e106beee69a4642320d129b91118e3c2edb68adcb021dab0974af9a20fe74e7d91a9c9833959258194c40fc7d105b2e9267ccfe346506890460457e304335e04a993dc73a74a518c10fd60a03c9fdce129392368c9b31a9029a253419ddce736019a9388a895468ebcac424fadbd1786ea13984ce01e1226b3e9f2202e4d28534831732238ce158acc4b917c189379894cafa3208df46539d3fadccde2ee8ef1a21f9425740453cdc8b64ab4840380d6555fbcbd29f1407b5a198a8226e31fc1f72f570641875d4c1d3bd9bd7f6209a699226c2d0799b5fae70b5eac7176b360568b5ecc398932bb30db00c83973db35305d96300b9334724da220c525c65a42480e30dcc110d8cde4a67d01921782f7fc96271ac5ef4ebf16d1bbe05c957a82a6b723185b226fca0c5c60a4eaf3fa051cb6fb8b146aab0265a68302b218e7b402bd9337a8068da70afcb863ecdd1b10ab4633cfda19e0ae7c9068cd29feff9d65c704c87df5b4f6cc12675d72ce8aba588a2f69f6a272ff0a5bbb1f70c5f646403e12f1926ef1af701dff42665cd1672ef9da557228a784ee8e2b7672ab0f5aaea90afcf5667a56580cf00d0a8ebe3e2d5ca7e5a44b0289fcc38327e2cc4446c126c3ba4e1f56d15d11e9cb21c4b425e42394b847311a6e5f79a54e8aff0e3571a7ed9a95ec85b3ccbb5b1c6e35f5eac7cbd2f379895164328a55223bdf95485d7b7172913908d8293a6732b0ffad1d7e72b1c0ef626bb8f646cf7a079520e752829b07003773f08ff4bd654b5408b83d147e7105cb559dfe0642155b0875fcca3730e06d7f56e0263134b1f99b70422c7a1b994de0d7cd8993969bb328eb33d5182aabfe453f2f39a151109809e9b1225c379ad17b1b1fd8ed92d66b044d04b107d5fd6597bfc0a1bb38cd754ae4308b918344f4cc8bf768a9baae3f2d48e839bd3af658eabd3c388578629673e9ed290c7fa54ed6b9b265914c92966313ae9e69d1ba1324fb91d542e83877f8cdd674b5c025f4556066f343e12c46d27af2f910ac53963a8b098468d76edd595b80d27a757581a9fb7c5847d6f43bba9e2db58b753d079d50524b1669ada36380695b0ba66fb1ce1be776cc2d6724d0c9606de1618b157c322f497a15a746d9834ad495a2e807de3351486b6c7f7becea19c9041a937e23d85060c12361d54bad8c54aa142d5a423961b527ba945b466b55d62eaf3da0bf21443fb28f9bb9cab0e59394130a00ba5b6ef88af4c02e38df409d4fe3700197a1278af2db89cb59f6608aa8b33623164409aa1ea2e2f54f8b94e1248eaa806ae462a429d5fb99653caeb1a8e8aaf53ef20314a36ead92dfd3f406e916a71b8b37779157a8065351cd4ce453d0289d9ac922a7a2a7d00dcb1f886b3bece5fd84e1d13a26df34b616f37ef8b9431772305b09cc7018b6560cb4a11482dde4867ca69bf79d011ae1e07ca16b9bfdf87459ee8bd7f338b37a05b98fe0c7596b8021c25d0ee1e6235799e119d3e20e889d2ae5c398864dab8be55558e068b99a9386a5165fd7c7211f8773aa79fc5d94b66a280468a1fd938805d4827a32240ea44cce6fbf016ce7b8633fb21ced4dcfd921eb46cda9bef474344e0ae48ecd2607924476b6e79f66844ba4adc3b62fa05cab56f5608c9ab178e04f23cd24355ea106c31f963eb2be272e670af3e74bf0598ce60dd68abd45da5c0b28ee28f747fd34dafe3f3f4fd01774c84ea723745b4c278ecb4612b2c0952eb151ea2199787d0e0eff74ba0880cbac3b2640702dd024839ddb2e8d754054defae174339e0380b09c88feb5961353330d79530e30d5795494aa84572deeae54eec0eb9b5b1076fceb6908b315d207da09bac05d6242df1acd259a0eb7c31541ebb0cfe4d2554e1881d54321cd22108ce26547aef89a456732171ea2592422530fe9795ad83294db3d8ebc7b165392397650e89063cc8941e0f42e03d903a665a8919a9b6104f18821490d2b0af15baf7ed1af2daa6d547404f451cf8e21fb67ac2c6ff693f6c3b34a683d36004081fb1b4898c1833c8bd8ebd8aea9865f639c7a19bc865136dd17fcc39a6f4ace69efc3137c472a56f28110d8084469f407a6ecb8141861798a5950c8d63a2ea5c8b44fe85a935f313adc4178218d998657718c510ea24cc311b0000340430b150d9a8a91a36ad6d959c8e192ebe3ee2c75a4b8d61b86a0f77fe9439ceb0234e9bc1bb8579440b07374991143207ba6c0a45957ee9d6acbf922cd90b4e0b4d2ed96a73d3c99811ed7465f947da79c2ebdf92071be6eef5e78f065c1e46a6d43266d1bc7ecb0ed913bdfe1fcfc80d780b55281d99059ce64084442788027b0980cefe683a9edd209ea0ce397acf05d579ebeb42c8605126eec4c009ef6ee3a6da611ba80c69c34a4699eeaa5432fa70af6cfea109c52b44e87abdc6e638afecd4dd2b2ad33988c8977373cee3750443eddad9952868091b00355ea5c086bad69128d7806b154a362bec7260e6bd6d1c45421cfeacbe370153e0ef2d195b4901b11e60e89d755f73f605ba0c6bb83fe1b14a1a338a6c8f84eddce075a35405740757b6c7e7f7a456a35dbf6c8f9aee1ed02552c315f037fbf8a46cc4844aa24be145d0aaab3f5e4ad959ab7dca2ecb9c8ccf83843893a933a98db5bdd1dc12159c109ebc624a59c3b3759aae17a94ccf924f9e28327e0481923c7907077f9864234234065b00770dac54401a1f5fa81971f911a085f9459bed3aae9db1ba3d407eef399714b2c29f9add43463094f54951715cd0b00cf1a3fb79d76407a18b14549cba77c9a5512583c0703cc67fb6464ca36401f650606b1e3c1a4492a7b182a6b3aef909bcc97550c02a45e58b13408857307c303b6946b611a3a1a5e497c8f3441215f1114459e5049409815409f5681d52e001327250244f488ae0f1baeff3d06bbd91655c72520c9add279c222bfc81fada4dbdfa1cf4bf3a935a34bef43827c896c7784b7d16544857fbbf64c2b939b8095e36613c34a1b5859b236e1876198414478577c9d515c522d5341e7b9300383e9c36cb920a1085a61915d84ebe5513bb2904d0d6bb1bf50a467a4727cf029802043aad0e07c8d3570e0f3f015a30a82def00c59e92d99968c3780781265c1fd1f0a27f50e0c3b6971a37ec3c232a277acbcc7c9ec767e9e96ee35211d607224401f084bc70d51191c319e848bac5e7e3d3892dba186fca3b06d5b747293638119df48cedcbd5becddc60c4972b61c24eeb39300c0e1576ad3b770e19214e54a7afafe9983d99ae84e5d4d0094081361063175e024d5ea5b1c9344d0efbb908cc2d0a058450c0d4ca5e11927a7f513489396ccc11c86b97822c5293f28a3084f51a16322da88cd44c109b7378cf505f10a3f5805bfb04dca2f572da4db04bd007ce160dd843428851f90025addf170d9b24bc728672a2b6a79fc5dacc1a71d224273b87628ac0315b9884223f08e68ab3601857818059a780fb48a42cb834541443272819683dacd073eb996b951f17dee33c1356d623f19bbf7dbb121ebfafbf46a00edff52a9a61d40bf235bf74d898edf58506738203de4cd0ac7b88723997d8616a307b5bd2ba13c8332da7311348003a21d41da75fd5d86c37286082a35b79a47b279eb40f3bac0eaf2d4e8e7a2f68188e6d4e041f2e6342682c6dc2a4289666db0e96272535737c4c47a25eb4c936c703b532d13a68d895d3a69568b4e4cb20242d76581c8f489f0b28c1f9beb249f2a3a423494fcfc452e003473cdf07c5c9c6d29089df33c39318a77c24b4d66a52e10dd5f29ef1cc199ef771f796f45eb24f07d81e517aa18b58a62f53e090c12ad0e8d8e0a1b5dbef6c0b626395e6eb60fd83692b31bc3d231360a173d14727beccd3661944b8e04e1b2c7645e0b07cecabe0b6e4ef31276cef83b07eb6e5ed5ef1d294d877cc0a6bb6f8cb16a7c505a2aa21b72f9d4ffef898ebc6777c29928de1e2cb06e1cfc413a1b86e5616c3a9543ba51e2710f613a85c6778a60a8bf8114aac9c28a19e5421252e2ac0f6cad47c17ffd60388c546aedab0bd3a34ee6e988447d9dd5d3ca58cb1f35e0bf1ed26f8dc79b61a417ccf7e39ba84e21386122619a6ddb830c58c8d0c579ae608947154fd502b168ecdb2c778ae5fe5c1e60527d6b03ef7741371e4a23b014c6e84c1a725d52a5f3e2410e9d6acbfa30b71a4958d03e02b1b873088940fb5eec37a14cfc91ec11fe9163b3a9515ee2a77f95ebbd08bf3eb20480e0c46dd4e8365a2636f1b8722d149149a4fee1cc1d5898ba5d549749343b25248a6c6cbd58c8ddc81a11f2eee32e4165110bf1525d31779927513675232b1292be9b50946d17fa885de719cde3105b7cb93066d56923b7bba54aac4f77778a8b213b7403501b8628865b0bfc798f22d2a43f5c8befe6b1e85445eae0e74ad526900d972ceb0729e1e0df259a431f747b9754d787845be1615e3ab0a2cf02d3b760e62cdf9021ddf7ec43da41914dd4163cd0bd76c9cffb0054e3dee1ba692adc7fd404ab4d3bb1a8e47dae77b6faea9962086291b919ecd55b5df3d482d94a68269e34b6c4ca4fdfbb628a31574843afd1c022d22cd5012160f42e0e4a1e6d6b240c0122a371759752336306ba18fd7537bf6c764daf8f6825db9017f4ea4679ec98c4b1c0b2922ff80e4408a6d87178713efaea4a65cea29389b1dba6ba49629d94ef9a6e893cd7fe4453ae11b438367286274c68c6ad7b35bb39534be77c6bccb45798015b27991c74581cb118d358c9713010dfc27032151d110fdd7097123ca967329463614655863dfbb31410305855169b4477e427119058acc4718ee46bb20d8c91b9f3b407338b973900193cde8522a9e8af034a7f19f3c7fa08b44a570b8d06a5a4c5850ff3a8c55792f267b984e13e570b56b46d5ceeeaf7c380414ccf52b622ea79bb4693205384dc48f4acaf5a75c7053b542d3eef4a73c4da9e4771809e44df8e80acaf703f85224451af5ce7f6597239a0243cf9c241e6e0dde39c6d319d1e6c3c6098923ab20463e6f525a1ca3b3f34761d0ffa501489f409d90dc47cac2797ebc2dbe5a206e5c1d189f2864d8408312280d56c5a8bc67940ac08e08da1fe9fae9de87ec001bd7e86da9e46d453b9cefee111d4735a9a4bfe9ee47f17920a522bfac87882dc4015cbf496f9534206f6129247a1d0ea01e5de2295e9ab4e26bd30cf84d07c26504155d624a80b79034a67c5e166e8aef9e4fbabf1db1819db7df47bcabecc49192cae4914f364f348f8da975fb6f474243d50f09af02a544984261e94224f04bb9fe9bd0543066f8cefbafd2e2dfaf01a6505657aa598eb7902c16de1cf6a0c5d8f68a1d6fd41317adc8594f31377be92038fd4cd6b0bc72b0a6b5c57ef5e832f40199d20275fb5430a0f444b448c1c9c8a4d72178dd0c7cc378118d4da1b854cd3c008d6be12d312a93f1d62582d7c29af630c52541eb12c16ba10e5136ce9b720acc4611e6c0b91ff97623947bd5a29f534169acca1cd436125f054721042f51a4f18d5949d5e4a289fe85b8eac9ab5160dc10d6e893a30be69462b482ed05cdf0fd049309c008108f366aa0a2befd8b884115cce8c14c8d9d98311ab8c5d606179b020b56d0f1648ea5a522478414bae721e45ec6e2d5391c7d414adae477850d5d419b1bb860d2f550b8cc71ed903b6771fe323b8b6132c594d0f838934de3d731b46eff9302f2046fb6304fe8eca32018c380095e5afb746784053f9bedacfbb661641ecf9e81f1d8fee34fb195ac868ad04b33c29f515e537aa74afb80037134e12fa548f3b83a1ec5ecb2b80deeb550e1136278ef0429a7c06cac0fd1ec2904d7d2848750b83bbc21a2191997fa42582d5ed31c50ae124a7d21ac16f5228a86deaacc412d94f01c18b7a9ef6c46bad65ee4232b548c2fcd40f706622b712286b0928e30daac0d5d5526ce91374af6aeb48e0b0847e1985f29de81a82ac9aba1422b9aab1cf96913612951a3d7fdd639768ad8849f5f36bd40012ed84a0027e490e01c4bbd5cedff853f9dd6872b493cce8d9a2b6f0682b900d9215366d0bdacc916c3158d24231ea9a9742febdbdbbd5c0c0e72d52bc29e62f7f1cda2267b0bef9c4ea7b9656b0842f19898dc611ee9ff1795a67440ff15ba41a4f4378877c94ac2d0940a993a0776c66bb4c611c0ffe72228542e3dc84a26d0c59ac1f4eb467fcf3d1212b4b8649ca7f3bd84daeb64be951a412f737f60bde95b193b2fe3028c94206293ad4649f3f83516c5cce5a18deef5a1c01362f09f042be7814cac0fe2592906d7ba818550f027fc21a2993396ba42987a54f31c50ee25485d214c3dca228e86de574c412d38a11c19b779df6c44baec55ec237b288c2dcd80af2662abe3208430358932da7c0b5955461eb13717d6ae641f0a0ae7c2185f493e21867c2530f7f159d7116fce93213460ff1463a9cf0a754418aef9a1a150a73b37fda12420a1189f093f1923f23b0435748708e090ac36cb0e86cc5649a2735e1037665130ff1c5a70ab74a569dc969938f444a5e3e0a08926eb2b4d3ae2c4b336843e0b71837724f0e81c4630554c2c3f59079414e8d6439c43026b60ea7640caf294d8cfea92f7917d1784b33fc9713b8dd3f661cc2214f363e8e708eb39173e29d784281c4d3256ddc5e81af15b44a2549b31c8c9487a3dc36fe8679ab04a5752fac5f06a08ac10e3b8a6b9a6824dd3194d0293fd8f76c4464931acf4cf661b0f2e48341aefb14529bddd73826d8e5c3b6dfce77912439bb9f180218869d2ba82cd369b6642b7956c27cdfb6865bfb4e6e6b8d8032da97607d012ca825732732baf4671b41e2705438aa42d9c8e4153a00edde8c3cd8e801b58f10d294f24be5c02c6dc449953932e40d79349231f36b7d0a974e3cf06633a646e223aa97f86571ba41a780a3abd6d4aee7bcd4e5c1bf029f7544b0c2330d7a3b97dcbbe9e1dbd0e90260109db9e1763f1fbbe66e2ce64e612bd4710bc863b02b8ebdeec69a02b47f1577660bf103ec3a9640413f54ba030b14dcccd88d5d5d93fba2ef2c93eb7d367694a2ab7aac3425708ee7c85170796f167ffcee2d1d7f949260e6316e4d654959a8aa6b81b05b129cf7a1a3a158f565b6fecdda762baa573068b89dd636ffb9b07c8c78c60962bdbd9199ad5655b0729020b1bd16d962ef87a77b75a20f6dcc6239f31d77e5f71ab924c84cf0e9710a6134f4ff6b195aa46f6b8401cd47bf683a842fb3cd912f1a7b7fc9a27e387da0b63d815a98f668125ce11f1e197087b2c6d2d7fd5db8793af39f4a399fa228e842a9723fef52454777c503ef4a641a1c34626c2a3b60c0b0d331441414a8695b13e1c1a24f5b0a6339b6a435e3447149665b1117f402d826e6eb3594e8ca827dd37e899d1c9693667fb9a2b412525168745223cf641947b3acfe8483e4b701fda6968de3e7079e816ee161dedab3cc04a0b9691dd35693ed86334002ff96af4d1cb94aebda9314d33c18b52d135c136a8b9983dce039a4fd5bd784921e2fc3a4568d0d7c60ece0947ad862cf7d8a317e7fae85716f064d1a6cf5915d1bd7552cd17b7e33fabad19117797e888ad90ab5da357fd2ebf3794fee2837685eef3b45e99d6271385fd556909a72cc035aa7956985ec211621da6d7d00518c1a89fbbce6e952067792c415c52122400e53481126cfe1a15bf01a16b4965c5ebc3ee321283197e81d573100a81496f646e4477f9ff581f2b6652663caa07d4ddbc0630399e55a1fab459ddedbcb6bfcc22a05721cbabe06bcf78b41d6c643b645ee97fb1a9ad7ffa6da72e867669d02f4d5b1becf646e119698701b5af33b468ab1bef49abb8a428c797bd3fc2b398bfc87ea4a2e3aff17efa0745c1aac0426a4b4b91a118e52901271b33886d72a7ab82bab99689154c771891dbca22a91a550f621b8546dfc4e0c2672315cd52f30555d4773abe6387996ba81606632a89e20a0c2ce99e886723d12f4ae7bc70cfd380aecbdb291e8e53c4d2e1ebd60c5ac08500166367cb18eef0cd06b835d62dac5f8707f144f35cbdfa979821773b0ba5684b656d5e35e1a5d2c09c78250d68c527e6efac0beea203c6cc02641924edeebc36a592df6b3fbda50c4f6423436a29dfc1b7175261b4b0e48b460b1f88f372b60b5838f9ded66e06672f22346ed6a8aaf031e987475e5b308dc912d91c4d33d7d906d08ff2d49180f99e96e84bdf17c56c4a346d9295aaf81150fe7ce91594965188c74f3ba8c159c73fc4258464bb2cb5e783c3f53706c607abf14b50dd36836635ae90be259801abcf73fb9274aa8e4871b5ab350655c3784f38cf1c3467c529852cbbbde86f1b836e8aa214135955c39f8ec9225dd237661481911041066ecf08582594743f386c55a42205669291eb11935163eb11ad1a8a5e29d21c7ca2079b5cb26e439020f8993e739c8522a7b5cac7e569d109d7d6bda85d31274a581e2910a7436d45142aee572cc17baa238aa6304dc165152df892f60b9833d1d7f1175d4b126ed19ccdafa695c0e6195a99009363567a9bae161138494efab4fc1bf7a021aee05be5bfc37c418e42b64facbd5caeeaf15204f926f3ac5cf11ffd28f5db1f71f1651dbe39366cd044a1db842286062f5aca8deae6f0467a3d7ebcb8fe286e8972f84ff84ff355573d05aab28274ec0fd0485d6f559155b798fa00fa36ca929ebe017bfcfeebc5b600ca525e446195dc8540d0545a54a831a4c3727162583363e19ebed396bdc6d404d0631d5bd4b4406f3c2229f094fa773353cda4beba69b04663d770601d8c84cc9cfe65f9c115201263120c4146664622662e048b2231499e72794a538b88db6af919d7de9e311ad3a56978d756eb9dafe507aaa261873a65431ea11e5cb870a032acf1cd24e2afcb916e6c6ea9d243d0624aae2e9c1bb90bc7ac0a0f770960d4a775d065231a0db56adf70343037a79a955e651ad092e00ce85948bac774bf2efc5192e7932002d3e09230df25a1d6d8ee2177024986802278ff94cc094126c90e836974d8ff3ee1bd041cb278e507dfe12b31811c283747dd6f8da0e9864b03d58ae9b8e5bb1005b4bfbf7f7f7d4da481f62f5daab85fe4d2aaf59919f9e518b6e788bf104681e258177240d9f6add48b94a2d5c548135508de8afb2a2bfed99f56bdb8efe8f323552d037c2d4356ef8645a42cee613a86a351604f463b0dba48c25da4ce3123ddc2fa63f6b2f6ec8b769313b95e356e9811eda264bc3a1f8afe597a261b72e59cd0d5ebfa403a194e20b8fc39d970715ad48cb372b5789d7486019143aabb43dc05b53456164bbeaf02f01d6a1be93a4a057679fdf2883e08ed2bb610ec99b31609ca5d957aba893e91bd7d69c3a2d816b3d4cdbe1cca1d82e975f00c6acc62267421f66b16990045aec5e1ed1ecf70636f015b978c69176c34a5943386eb8596c6c8bfe6ed4f77006e6c8b77dda7aad90a86055f76dc2b53cf7a178fd77f397f7cb2462b6cd6ca5cee469f1344806600ebdd8c196989db48ac8daa343c228616b6035d28359b3ba2d86794dfbbc34928e3ee766b5063f820340ba8b702903f01418c8b4299aac49d98813d6490c40c23edd9394e5184b4539881f90eae3e45b45e6e8fb7f969ebcb6d573e79a0ea62bdd807e893b5e9980957fce97fac74cc2854f6fb67effa31218808fb8468541a51ffc1b134ec8af7284fe88f6fc3fc6713c8faf02e96c9229c7f21223b0e6fbcf06863c7e092f33ae269d3569021378a8b2551bce8235ccde88688b65a90722a751f9b4b35c2ff07de8b29c60dee7767e4dc8265d79ce31fe48c46b5c280c5a49518431b494f81d6b2f256c3e82f5ede55971cd739430738072fd86fef41b65414ad26f089f28825f0dae164e20e1cc91687885b8f20e6a3b20cb1dc1339ff06db74f5ae7f92064fd5a3523e1db6cc19d4f01c53d9c20541a00f88772e5bfdffc64523a9767e9483617cba316df1676e473c90339d6e64588acce115216ea4f446c357b24575291a3fe5d6aafa853d1e5bc68ee52a1fa073dd6c79a4e5905dfbe0570c1f282b6a940ecc1dcf1d9fa6ac5cda213b90e2f1bb21c1f6e9ed146e74f987e64284fc3fa083b95c7a8b704677ae5a7345f1b3967504a8dc4bb455d37e12f0f41769d6106f1b0407b2516487fde29bf6533141291ab40d301a29caff06b3caf65adf727a4e7240b0f86864bd245fc5ada48063479432e4cad43f3b13fdbd14c3a30cd5c811046bc1b67c1d8d44de96441dd8994c72092ce65b4db20bdf5e26f30a5269d77fba8d5afcb9e31d392f14d2206af1d05c2c1eaa647e762aeeb7319a163c99d8299af6605fecb5034f43fbb6ea05714a509544074ccd2942af5791420708913e09829a334f09e8a17222c59de9a1e2af8fbd8d046029d73f901662da5525033ca45a78463f9d619696f641a6d999ca1e32ac40de79aeff72b49638dfd757a1bdfdee5526f27678373f59999d49b04ecda393b1d75a9844afe3ce054d665e5bab746564543469cb88cbc508cfe762584c0ad110dd42585e2be8e4caf60d7b20e2dee9e7c9007e4fe9f059ea4eeb33c81abe15097d0b69ffe32d96423fece6e7d834453088dd19fcc52a9bd5540c770995238760fa779904c764722a39a5ba508d002b486de3fb2863ca045636e0fbd236773ba73f7a770c03b6cb5ec260688a1c8b54b84ce7a7d755b8f14a2e881521af4268ebcd51fb0cb10f1b2a9628180f2c155250ed4d22f80ee93496dc3d32c4615b3d034d0b1cc300b78492d755a5ef5bb33a6c9e8558acf3badbf50f2a0dafa2e6ddcada0b5baf06a9cd64c21de857d0ba9c4cf25752ce64d47fe04f95bcc1a7ca74802a679e9eaa983571f54d5432162406b8e1fa53355312438863acfb767faa02594934e5081a2a83ee8fe5ea120233519288fc3ae62e669f006d0c863b5d0a220d39e08df03970de2842b6e0dfc8d8aefacd89603b85e87ab2a8a5341713ad012274b169ee9bb52ba64e07d46f32af3f9700113fb1a723392e455d6773ab21b44de44a0075dcf0484c4f72f71c9ce943e84733997b66dec301a2abce3056b284624bb05b0dcce66ea8c38368ce07f4b6d76c6b65a55fd088108648668474b5b50e9384e407c1b19d855d105f28840d7a47d0b27901776561ec477f946c35e02ea6110074fb36394f31aeefacf18e6060e5ec7bf3a2af9fc96ecceeeed734d4ffd8c1af5256739e5669c8ab3ddec3fc1317db1375b7c4965f1ff15079ab890dd317dcc4b02510b6c613604c0f9ee0adb6bff456140ddad29f5b978e6a377f44a5317c64e181a2bfb5c17b163697d9049eb15dc5bfeda1aa38c51592b1aac28682f7a4b4f04c13e96d3ec8b86efcb187a7a2f1875194c2ce95b96d3b4a3b675fde10eabbcd855cb0794709ad5b38e14537157047c7cad1ebb141938eedaa7b02f7f1b2dfc9da3cd3375f6878ec497c32586b41f6166d54ed60ee989e60adbc012908c41364124fb78713b8acd11a0cd9c86dd88856824272b360a0554f5602990eaf5381b060dc8f64d51d9dd6cc9f8007a6cf329dc3f850d8e02c68a649d463968fe4519dde6d5f6c4aa8835b4d642885b0721da8aab9f1a264e93017bf60b6008c5fd12a91aa6c9f6cf2d0aa4c70b3017f9c9473874b3ef8bb9e1b2c7e95fce20f07cf806aecf6269b9c4f6b932663f580d0f1939256cddee7832dd029b17a826b072cdf15a8add16dcc77ae185c6fd7d13c23f4468cb94569da48d9400a055850af719a4fff57f4c43b7da95b0068e512ec8d89605da763cb5a96f81fe6d8076cba7db2bbf2c86e2e1ee877f1928749de9a3770a033dbd8fa8811be94f670c6b9617015238fc6ce660d6e04448b8f898df75ca80015770a0bd4b58e7befd95e55bd989ececca01ea051632b460ae925da40eef267e88fb88d8f2f235286c94ce92b0cc8b645c6fc5254d5fb282a07d4a0b60f99d5b97f4c394e7b70fa7e3b6615ef7568b13a6097a5285097d038c06c6cf8fdd51470ee720769906e05e7f269f59c0dcd198ffcb8b342a06257b934325b30ca962da946bb5bac1a5c231690020655cea76adb5e1e12693b884b6e8ccfe6d786fe6e38c1dc98dc088995373cfe919c1400627554d67d421dd314c15074252d4f95b035851287315b13fc69135e93deace2a496ee9a892fa09494f7ff68f1a1aea2dff1d19ab224816df8af52e1afd7fd436da879da3f920702f608dc5c50c9308d4ba1ba178dbe43383202bb43d0549b1e4cf467cbddd85ef8d5778dfd59cb511dace31104bf9b18f14cd24737bfb2b7c122d9fc76c5472a7ed910d93825c58356a3003440396801844353fa13ebbfc124f06e69e882c2bbccc9d10841722cd6709f74b965f47fb829a86f98af890a8da639efeb99aab3e5926330f51c41ab74102114d8cadf253a9b207c1b2dec437657c8c0b44cdfd7f9c62ec4342f716947a324a6136b3124db1dfece5e7342f4eb7b95d882f6085a717f62bbc193657a24a6c782fd39f955ee2724df8ca0e5867a88efd739fa217cce70955129c3dfdb99ee55c310b500214572cd5df3dfc0d3c425472fff74c66cc2c732205c1c8f4cb82d9e5f2813957be26831f60d2350f648cf3ee70e5e57565266e85c9f81e26d7b5eebf0bf44496566db7e3d6cedacf53b7a5998cf487dbfb343bc8a1182c6a70c6d5d86ea535f7a0944a4cac2d0733d1b784fad46d8ba9f040ff3aee531678496d4a1a3bae288021539e46b854459972a6b07a9eb3391104b33f9396e3f643aad11c89385d5b97d3b48b8fd3e970aef7f6f2da3d13699a6f4288b1ecb87c2f5465a1693cd059fd64cd8e51d26f408ffa38980a388347a24460e536b516ed94d16b74474510420bed88936b79596aeecc3124e3fc7e752aebf471af7ad7596a7d0063752411c2d5e22bc54c68ed146a06c3e9f949b98e801d79b4b71d98f89039a41a6a0c11d1d693182ed6daafdc08b701fecdcd461afc52b1215768a1908d217a160089a09fded10934fa4aee7319c7a9050efc72b46cf7fd243b4db0051bbd052d13d8b4ec28286654745ccaea7d9d935759689aea56bcecee6f8d26218151f7ea9b81ed9614cf515212259ac08b37e38758a29151d844cddfd408ef593f56deb9d9193e9311b6d487737b124d07fa2afb95c7fa5a84ebcd9315f74f1413cec58c3b70e12ee961b07b3724a6e89893a37ad0640c31bd41d395d40f4328b1b4913051a0b40d48ec2b224076984641e004495ae936c494231ce0087d9d6113af3516c72e44adf71b09e4f0da0e12515b029cadbb072cb425171b45eca3ced8e0fb1da98104624d12b37831c49df23d5260c95323102a1cb13c6886732a8c928c348cc4dca5ae9994eec9e06ccd7cfb36892ef99052c68d8bd9c8abe7e86a2d6048aa8ef3589d9b6c21384c6f686873a99c4483b70adad2854fb4f61a9bd478e4cbdaf7a75a546f4c3bd16bc4364577c859038387a7ae25caf1d3d277775dee38abcc5606f1484c1c4fc9cf7ae9147f833d06a0210df3343b4211509edf5d051ebeb797de1a593f792baea769160f4317cb81ff9d3e7e0ed606105f41d317ee819661e0b5c5c571d27c4f927081b0a4ce80ab7e061dfa34cbc1bd905c91d16a8e34388986889624414862dfe5388faffd1405549ad8de1f23812270fc5438839296b54b93e1ea23809f3f7a0bb43afa3e3c0173ffaa9b659e114de356c4bed907180263700874bc5fe522159308e1405f56cecf086cc7225e11d2fc66ba604eba68cb708816da9c561f9264439b61560402a013ad8d1fe53beaab27916f177fb2ae35289b47a7fa4847b45cd7872a5c5feafc8754edd6fc44b06c0bbadd6a4c0c9f0b5f9672674c12d578fdab4d6669b256a2b6b2148d2fb91f6d76b0376e8107c2dd00a0169d18a84f7d0c2894544ea0f9d0b33e58f7c8469626183c521b22c3c58052c4be991a90d3eec478e8ca7bd94d3b7ae83114c0ed741dcbb976b854840a3a53033d01e72598a82fabe40d998a126004b2bc9f8997896d87ab8237a96ad70b61e8e10ef18dfea1391fb8a7823ce5c8c12e89e0dc952322ac1b1cba3766ed5da3b92832610c058e14a244467a05f5cd49f4d86b119c9f77a3462de7b98256acaae51de83e0b32482a0570d56909545560a1341e3807e8c7fbf02a254915960af8256b8886bb60e47a02c7ab78e546cb4539289520d64800203868046c8539d9a1fad91a4cff3fb52444cff5490b275753464b09bfd73bd3f25bc592fa9b6e39608b6f49ad9c216ca61588677385d7d31889549a5dd571207e81bdd8ef09e2d44b233acd1b98717b1828298aec9afadb0706dd826904903931a09d73ad787c8673896936622e50b50fc2c6d448acf8627cad69a20e082f6c766ce037f226406d0d01619458a45420b6a991cebb527a92520a75e08bc78ba98dd5b488b2324527fc488d3d1ae71581343e7377e843a2daa0f4d16fc1a0f42142cf821d0379285f670e1473ac2ffdfa436e82e1ee49f1e39ed53e4854d8f323569c8f6368a440ae202c559ed83faaca3e2f69ea74c0b6ca24ca947e4830189076e65b11fd4f789d460b9c80cc0c45ef9e4d4da431904979a1dca404ae655ca23187ea01de594bd2103fa40fb755d4f2481d13f70c4ab07ac031d72b908bd089f915d0f8177887e946e707e487f5b8dab28bae7f65f8be8e7546e1569bb029364155166361866ad402aa47e3acd08bf99648ff026055278d8e06e48a0c863298fd0aa4730c2c7828d56d7ab65eea5aa48e8f4a41e1bd144a41d1c6a3cc56cc8989c6656f9e96df590c18ef48d1c65aacdd855a070f810450be2756f781ede52903aa5879f68ba92559f390c05c29504d0ec593b1b1973716db271dac045cbf60a53f974a3024a5be6c85967c5445724eab8c255dae9b5807d8448149d1e1c142db42016a843548f63081fa94b6fe19f4ba361b06e182a1464a0e99b7fc768a614a9e1d63bf2a1ae1c35e52d37ad06ba408add9c4f88d697acb01fc5f1bc45f8d7513b0e2d72b564c41ae3e13a503a7bb9c485cb7ddec929e3818290949b557b3d430308ebe0b20498b196752a831d9221ba647a4202395751113958a2406b2e8d92ea4bd50ecf658e8626f47615519e0302be1b4a97099b6fdbd234d9e53db895e937d7f75c5f11adc825ba7cb4fb0cf0424c61d88175473324af4b1b2d383814c1090e31c002077a9617e19905400c00af52517f0a959e5f6898ee9bd812b1115851ccfe960ee7137c1da0600b46f627d5ee5eea6d39edf1e8fa4e7f2ab01e332987699f9258672ea809387a806d0ec24ba70e5087a653fe99928884f45a4cc585862dee742b8a0fbf3aa6ac2e4212a79c0496e39458c6d22cd47e548ae7ecf3ff3c1ef183d6c4020c9af29a56f7c578515b598a61d03d61548bb23ab9663b97cee4383c2e94a0da59fd1c364c6c3fbcc10abdbeb3cf79664a4ef13ac920ecc3667edcbfd5754b47d8ae13f5b70470dcf4d8eff07672fc088d4b43beaf802359051d4c3f16dc6c46cd7979c3df55e23b4cf08820ad8397345718c4de150bb7a94080e8b8605f8211c92fd0b3e76d49521e5c6412b7219142a6159ec40640074aea312db0c790b073e607092fe30f72783256aed51228c00fc44ddbd77ef9200235f3a6cb582e8e5591fb73a84d0fd3b1dc9ee8200894cccfb4e0c5cb66044c195670b2243035dea3f1f5574c99cf9e4a051f056b5732055ce17d61e68a1d2533c49891280e46a6ca049f602de38de2516102858a2031c4a9460c9d30449555aa09cbd9f4a3f03905707f6d86b360cd7a6c5e341d9a6c583ff5a3d9d30554f501c1e89c9dddb780f7d7e03333134a0ba70d113f242188710683fe7e9306938c37c95f99bf3988a0011b3c99695693c93bf12783992e8aa13fcf70471ea8175e1b94e56e8cc7a45ce629e8b3297f59e43fdc316cf9b3c3614a392e0c64982987a44581bbcfec23e020a695f2254ccc5fbeac06002e22e04dbbddc1cb23c000f2e2016c5260ebee2422468120578cd434e0a761b68dff3c85377cbed62404af9895f392128a950a09b1fd2b1cbb070d0be133e286c8e8a55a32bc018730f9b943821dcd63a9d92272de27fb4f172824f6502ba3da58ccec7d2cae8e85db1b0390a38b5c398a44999050c0d3c6f6db64538496ea7b4b98a0caeb36cf7c18207e5359cc97335c14c4394e361a80c12d97107ed4f143490897f1eede63b4101c6d878822a49a909299db84d603b5f08b9c64508bfe632f3b2a1081c9b8277060785560ac59b851c82e00ca2262f4b4c88f72d14ef414640481a7d2c0147fa096592952ebbd225a46c46a086931d3ccf3b35b3e3fa47f925d38115c1c2b4e6ab6f5de3c8fd9f4a328491ead0e98eebb650678b2a49d2a4da23081712a6d4059e96330fb290072190295cd703ebe349dd6aef486657c20f8afcd7f593e4c547fc087d2bb0b86d2bf5ab2aff553a5f62d0f3f41292064dae0b92bc5fa80da1f2bc7d644d1ae811ac754a26cdbe6d685f80cc72569ad49185d2f3822c65c8d9615be91cefa4858f1d5fb37a7736da8365b896805259dcb5533ddbc8f8b43761e66cc097f8bc3eaf81a27ad3f5944e251250965726ec9045f1cae7d90c430c912a11e3574e61536c24907b33684e76961ab1e4f353d4cced883ccd4ecbdb82adafb7c93993bc4c28af1c5821be98ce9ddd3eabf61169bab6a008c4e266ef3f1d2d90fdb9eae523e0d7d42b14146158ae2acf03fb13ef43273f82b15134c0f8507cee5c40ce61a03d87f98e87f1fb1046a4bde8652431e6965a5da43ffbdc10ea786e3da78c0d5e96c8941f5bf0400360ae0ec354b649b9f3cee5e6b03426e08b6d24e747953af04660d0e2a3215915b4cf3f5a47d9168fdb6ad0242886f1d8ed689b71df176a8a958654a82f6297be4ca313d1fdcc1e91f94fcbf0d66f7e1181bc329c2b8614ef713262872cef42a77cf2b2376c9729e839eb3a50e58ecc7ba7d98de1ece6fa6a46572e83de2f86bfe077f67af441659a84d39a7b712fe4bfed989807e08edb89023d823ab25148c7ba978e53de0b5836586767cc8bf944411bec03dd153e2cba164e5fbfe0e3789adc181d417e1c9ffe922caa6f4c25e1e881361fad8321ff0c303ec0dd99b9f2dc9db3b2ed17dd78f7a452603dab1b39902f63198ff3033504009180441c70981147da6acc3369f88222154982af2d2dcadbe3a18f87ea9df8b9f370acda6b2b29c23da7016045857f95dd14654e55ab81e40eda5b9c5e72c08c8cd827a85f60fbfe37288cc941f00ed2264d91c0632a702dcf7960559d58481468f20f14ed8a2b268c52616fd8464658e150face0a08b23a9cbe3b37bb7bc07a7d7bf10f764e83234df094d794902591785977278d5b2ed88b17bf68c80f4e4d2dfa2461b3bc0fdc7bb468c4c1755bdb3f4bc8e87a7455780455b5d42bab7d9d6ec258153f13a52964d2d48094d8ad1152f651429bf729a24e8fd6c209820aebdc883e20f050e0e9fd2feba925d40c8b016267e20b78c50cc3afaf2407df41aa6ff2156e700747d6a6bda0a015b9123dc2db0ea802b2ef827b734d68ae52a5e32fcc015489b0931e8b540ac6f85100ab8210133d1be47ac25deca41b6294096a278bd15787db3b3966961aed57f03ca15ec4ebebd15681421b8cd15d8867783345a20ed438fd265763b84b6e6bd44ae452244bc774111577cb34d41bccda91616cc45220c75b32b09efc1062409a5eaf688d73279052722c005464790cca41d02787e78817abe15850b4794533058160885e345deca3f760058cb6c01251efbe044e67aed3476a90054ad30f115514b1849fe996909c4770d241f23d6f4e0e5e8900250d37eca24c6673311391a36c4b676a6b01ab8441d4ad8febb5fbc07649774e4854836512ba8c5aebed75a52b56c72b0b5c854f0e28bb63dd856a4c5fe44c746118af81af811b009a4d67e6b3e3929143e3f71937e48a170ef2503ca17c158571ffb6d4e87131d14d8e68a861337a5eba50739501e9ccf3d1df54d34b3b8a1bc0b1d503891d6150e01e906d4d6b375823e3b6529bea9cf6bb414f9afe1eaa47daacf1cedd1209c048cafea1cec1007794a920ab5214fabd008eb6d5875f7a053eed1890f153c678dcccee2a599aed554fecb058b9f9360d37944478e3d2cf279680183b0e2a96070a65fdfd85cce2c33ae06d5fbc872287e56d115bac2f06d980c84c1c90618fe56763f390fd1d15fca1e736e26d37ccb263f0cdf3ae3fb2db4e1ee7b5c158ca88b1b62ec6639e77da1f9fc31085064ddf9a165be7f948421fec705229fd083d0d00e59c30daecd525c11f8874197c67f415edf055fe43d1ec4563f2ce5166a2198c40cce4db7b19565e864a767de11850d781cc5c975aca7e300aed0598ee1b69c743b24371b1b385fce1145eae30e4594c616f335625ece25f0675093911d7cc8727494d253321ef0474c0ae413784d33ee004c8d2290b958f4b269021caa79b8f44bbceb0519c75dc65a1273b12cecf31e88dbfdd4a913c2423bf938b56be237c1210c9a2b0afc82ca9d3625eee14a090c688c2c39c09c1763f1d894861fc78a9dfab0ab0e39803e07dee81da5ad970fd7e0b0f55eeade974948a0650682c581361af1675ac8242878cb748ce70a4c49bc7ccb2a9aea6498d7e4e046b448a686a85059ec1e7e2c9d28799b5c4446c728e7c409036cd403bad306905b3052ba4a07996bf4c81018ad5a97b2cf5578156d3aa9f0e7f42ba0d209c13d6ec599ab690a8c18c964c7aaba448e62ec7898337c18866188690b3edb4360a8f2f8c3bdc53e040efdb217f770ca8a65bf2464efbdb7dc524a99640aae08da081a09451a27c4e58f1f5e316880e37b4362081aa615a20a45066965898a21e5b17e0cc366524693af0a7c8818e6ba18b6449014838a25456ceefd2a4a72c5379584850ca2ac896cca41d0c421074638808c212c4b56809014040bc68d6e42cf8f069bbf80eddf0eaeb815f06d032977d22220601ded3f244e08e2aabd23131bd4f0ddf185eff919f9863468b7b8a10ded33b1b14dd8485d7351caa5cf2e390aa068f8d2af97479de5a563b4dbf5fdeaa3ced2a0ac9f9006a5c74f85889339bb4dc4c9be08a6579115bf252f9d238efda44729573e0bf355601dd29969a09c33898a1aa44eadeda65e7411b9a810c51f22222ab14805d6e1921f0bf12511eb904fa0b871280a3568b74421e9f1a759fed21b07768b2b9d254b6601c8a53d76caf8c5eb97f4a8c3adf1807de494d2ab9c53d66f4e29a76ca20326ff224686d08ad9ccc748b37c480816919e112346c036b27967f6936cf45dbf997472f94d5e51efbc1a5e51e7bc195ef18afa8c1d90d4874748d8b66fc891ac6b0f53a43bb79836b793334de0e972b5e6c72b289853df3e9b9c9cf6109e5f3ebc80f44512e941a8943e3f9fe93ed2932cd18ab8cee3c611a287da471ef1f90ba78d37f2f06666e655bc921b34923d08e29324884f1228947bd0c9396d33ac5e2bc3c636d35135f470d0adb7ad80facb2b1d862b5f3c5cf9a6422b02cadcec9127c25e84eb78ac731c219c24d88fe9945f86436c29ba6236d358de8058d532cceb56953dc396a359aa12a24afa3357b49d6c602696bd373591489f9f65fa712bb66f7c63b9fb86bf384b106dad51b45a316d48236a165b1a649b155f2b42817ebacde1b64ffe276250f4e0f313535cf94d5e157b92e72f8c21fda141227c762424bb1318073f379a2243ba62e72355c605621dd16f64ce3c373efba611eb888e69de1e14cd35d7a2f42adabfda5083d17f705d1b8a340845d402acda4cdb6ee40adcb4aca5920df4d40d6dfd72650ecbe9927a3b1a9cef491836b6d19230a159b11563a6d518777ae4789ef22ef5a2f4fabb65bd7a83d0036cb81ef90bef6395897687618e316a516e68abad1c868139d83271c39a2cd3b46d8b1ba76953d3646b51631aa7e8ae2457eccc1e4f49971948061fa2909e5146cf469fc5c63636b6175edf912b1e2f3f0df2d398e2868cd413a459dc0c52ec20cd62217e683bfa67afbd3769e36ab8ef36016a32dd1863f49b79c4cdb9d9d1cccddce04b072f1f3a194d6b8da9d4bdd8749b06a5cf4a2763337c74d641ad40dca933dfc639a9f3acb57eb39536de321c2e058adc51b6e8fe31a652f752fab1bf0de81ed8a0ef748e6797603c8aedfed1c16eb769b07ba7dda6872c47b430ee74e63ec639e7e4ae708fb6029b2a3ab7daca95951bfa840103b291b46f2e3d245282b46f1f12e92ce96f1b17dba9cadd68b534027997419af94e534b29b5d666b43729c445815b4a9458c75c89e69973d7b3f9e6a92057d3354f8811bb34dd3a71fd4b3538ddbe2eb7da07cba631d8e40625f321428c584948e6ed37d94d91506b9a01ed29d6e9aa111f22c468c7481be26eae79ec7922d5adb5f50b6fbe3a8d456e7e665f4daf3a6584c44cf40847890c392deb0cf8b1d9027ec0aec74f4ecb7a886240cf9692bb72353f28996f527aad2dbbdb5adb272898f530b0bd1d9b1f465c1b9bd4a5456c6c13c69a4add9b13c40d6f6ea06c3d1267fbbafb14eb688f545cebd6db6d308e053895629dee6f9006bb859c7e3e3cfd7c55a167e946aeda3519b2d29c5f783f64a5ea44fb429bb23685f2107c5be406b579d6864b312f01dbc17f425887936b3dfa5b78f3f733b75ed853dd7a456ea06c4e37e71a67f376bb616f6f98f866478331c3a23d1f95e986391f81d06fa7df9fd56278bc1851bf89534cc9ad2d72a72ab73ae61c609c195e4517b202b37edc025c53c6cf3002659e777deb88b81610c23afcd355601d1b3f5df352b34f5032dfe9ecf349d24ac9d5bcf166bc9c1f72356787c40de39ca1408f12e9d26da63cda30e776eb2944c73e249947b71f1229419070ca85481fd21e3d488c6e3f9fcca3759fe8fda93849cbda22ae9c9f8aa907b1fe2a762452a62369b78e444afd82601e1d8955f1a7a21f0aedd683b4db2f4874cc9160df8df6c36dbf995b6c6c13624238463b91286947e2c42223a2f8c50623f7dd4db73d0ad4600c8a42118828d453dc30121ded1875144261a78a6884dcc9e2724844444c14892211971b4622ac49e3c425bdfa91d29b3879f953c134ce915e49304a38a49a24ab92ac4b2f99585146a2249e9810d7c4863977532033c7f85bd36e0ee3c98cca1486926914c61227a130b468a65b94e852772484f02b30e09975a098a8a3ba34ede60010f5a04b33a5a1a1a13c014da943815b56ae4678feea641d3330b78f11b958477454971b4dae17d0d0538f8ea32457d569d1c4b6da4d40533a7a6b9d6e912301ac1712c0357118e13092342ed681398d8b848eda29ecc06b46ac030b35a3c73c5a976b863f62edc7acc34331a19a1ab4d15acc2a79a14263b14883d425a959218a4969a959210a0c8d161a1a8b626a5653b3340d0c6a0b4aa959fc855e1dc5253aa54aa8a566f567428375c7cbf16e1aac7487fd8d3b1e8bc43a44d855409e52a71eea8775541b39dc90c60693db4edbb301145b4e5a318e7ada0feba81ea5592ae6c23a335f5d53629d21d40febd4f85ab1ebf16b3fac43e3eb0c11eba88e0571699078b6007c7f2a201f16d18cc01a01faed68b07a391a6cdacd34403fcd34c74d0e67c971b32347e298d01d4de2aa48b8f14c6f9ddfca95f51cd6921aacda96063fa1a65723e99c43a2f9e6dd47932457d5b9af0ba2f946931aacae7934487255bdba2acbaeeb2a31faeaf7e712dd2b8d4399ee926631962e84be3a87351f5e97d0d746ea428a0fefd057cea88b2d3ebc54be8617e8ab6716cbd16890be7aa5495fbd7a90eac287bce56b0df361cd4fd73ce9395a92b685068926892681d2ab57e7ee4cb3da4340fa64d8d88623baaafeb82444e3234e0cd003989ca4b4e44c26a62b1fb252e6f2e2051f721756e431e58e8f1e591f3d7acd0e9b1c391d83a8463d35c21077aa91ad461d1a971f2088baec50f4a2210c0f4a4d7468f900340226ad1f9660d26ab27494436b872faf1ab0006a019114040d13a91f74c0451074f0258c1dfc4812ec00682615c408264be79ff7f91506968fde7e6fd421e3e8d5a26c356c356c35685a8490c48ceb2df54a601c7cc6c37f79ebce29278db1822f5a3e2d703f54072090609c1e2ae52dadf296b2e063e0d35b2fe3ed14e3edfc2225045f1ef8069e60dafafcd2acf855498ac13cd836bdfdc15bd7b6dc13b7c92f345a343c5590948f0a856e55afe1343cf5f9441a6690840d2d9f16b82b1588295a52646cf9f0d10e5ef0a4e5d3c2e6454b4a8cb730af08d392e294c8435a44279304422d9df8c7434f0df191758c4907b50cd5646b71b18dd3e286add47de81eb766e7a34725bd7a8d4f1ec99575cc5349a7f14924b9b22e3b226e38936890b454880efd0ceb73e6807130ffdefadcd22ccead4f252eacd314c8d6fcfce22df6cd249a99cf934aac43de8057d62dd30ede72f1567ed2c8ebbe8d905f8cde7aef704369d404e3dc4823d68933be309505156fa178eb4a43dc0ebad2e4ce2e05cca7925ccd24b9b21eb6124a873bc3c3269af942fb85f7a6aca6c50d675204360f655ccbd1a0f5f6546083d6f9816cdf0a927bdd2e7aeb4d041235689bca5b27badbe9e3be1ef2b6df26e7ac93b273e96d165ed6c999c43a2cf6f948098279f5faf9602c00c38aab857dd1b10cb95adc82418609d392d21edae8693f9182de2e35687dbaac758c861beb321e0bd1ba11d6d1dc2a9d2c67b7188f79453d5b7adb4c6f39679dced9e695f4ca7a984382e9951d8347b064b00eeb21009e892efdd0e7871e896efcd6bcd94a12477e912beba9d4bdd63ad2f78106ad1b693006e186ccf4012312272a25ddef46e2cc245e59dfdc6e5d5c7efd7879eb124cb33ab73e95441eed56c95b3f79e749300d5a3fc98ea7fbee935f5887752d8b6badcf24699d65d25be9ad1401e6f2d9671b6cb71f9119d7a96f94d13146c7e123f489549f387792507dbad52112dde86c3f7fcd334ff3cdc39e3b08c4afcf9d0949dea9c647e84f9f5036e7ebe4065d9aaee53265b8180de60c57268ac6a289762205f2cbd54e307980d24b5cfbfcfa2102cac59e5f3f410ff801ba79cd207465dbba657747db58777bf19f75d449e99c2dbbbbe618dd4aad4da53e29a594f27ec7f843ae587677777fe1f49e674b296dcbeece2a952ca5ac54ced9ddddddbda5a85cecbba8cd0a95ac83a594b225289b91e68ccc60ce189b951b7d321298ed96b35aacd23905b3989dd16253308bd94a6793c52a9d53e8ac98a5b3364d4a679d62313aa76016b34d4d169be256669ac4eca6553a37adc962954e3945a64926f98a6198adb3d28c716cf629b11ebb1330b76ebb123610de9744eaac62b3a96db3d27831cc6d9cb4ce2ad2b5b971934a2db358d5323124b5589d55b4ea9addbad3a452cbb06ab54c8c8a61d5569114abb30a37a9d4326ee3b68eeb7c483f4d31b44c0c496795ce87f46e9e50934a2db358d5323124b5589d55b09e69d22d6765e655e69ac79991cf80dccfe49c33729135637c21524a29add81472198132c4456d267b3809270ae1bcc202e4b859318fe8248ed08eb92b4885f601ad424e8484da23e60afa5cf40b639620ac658ec4e99c89382fcba0b8b793633b1ff3a5679ce6f6a632f6ec9771a210651ed11547f02e94ea831b8dae34185fbdeac823a6204b1cfa5e01eb68975f2cdaa8145525db3360987746a0df50ec1cdd46bf31ba0d789383f44759842cc9c04d51c9c7f8f391931e731f98addcd3053c8de187a75b28b310f0d365029440c1b18cc377cec046a3bff7093b4410563f85b8d1dd2642f133fc34c0cf170c557e5edb5e4c91c3121396275670d4ea56f26dc537f6dddd1d44cb1a1d719471e6a74d8e28c3873b7afc7c6571e243d6323d642e939b72cc199b84d1c9cff8448b0f63949f910ad287f14a1930f8e9d3ed4d397813839f9eb3f3a327cc969fae8290253f7d88911e7efa07827084ab881f2b7e7a046a1663091324e4626248879f1e899ac52f17bef8f97a6109231fa0b873ce29cbf8f99e603019a2b3b3590200b305915bfbd2300c53ca01eb622923030c1b2a1740960c20f840873026341001f15e3045d9e197945ac0c377e1c202460b0e2e2e3af5801982ba16dc18b19485cb92161fba645adac19725207ce84bb8f8b101173bbc6418c1e7b8a9f18c858b26ba6cdba9f390fb678953ad67986b1eb56dc3b6c971b39bdc952bc97d3e495a56aea6e773ce4a85ee548102124ce536cc6655c80acc9a5e6badb54e0b08619d9faa8256b5ad6a357a3339f2875cd56e885bbdcef8ea55e685d45aabcf90619d197b46d9d8268c01faea1bce94504ebe3593e87392a08bf8da3f7cb44656ae2ae79dbb5cd5d855ae3b55b928bfde111103bbc02cead767ad2dd44920b64ebed3b5d6eab72351f5e9c522a3af6ea47af51e593726edcbead292b496392e615fcfc9777aeb88b861b04e509571a9ba9c7285fa7c92b4a24baeaaeff4a93af57c1aacde7951c863b9ea9edc302e7df5ae1ebb34ab86386253b3428e4b3e3c5dbac5c13a340628c381376e06f4e6cc59cb3bbd7996695bd61693f588ee59c3096e772a14aa4b4f81aabc3d150ad237e99b2a85f6cddbe3542444d50ab19f5fd5921eb7384fd5daa4c5fc46ae308f5e8fc42c8661cc7402db7d2a1430c7fcf4219112a4fb542dcc91a8e2a7ea39b904b875f2ce4f1f121f2929c82d5e3471b5ba0f09e6273f7daae8992769210972f2cea3779f8f94f805e93cfb7c36efdc87f3932769718b5bd6b9b5c5ce070b2b94107fba04b895390b3eaaf764ae8a8e726e594f151d736ed1202a609ec2c9b10f89942098778e44155d73eb274fa173d48704fb5428c42f05cdad2a85cc31cf1cf3cea9bc5672abf3b8c56ce54a0e11a2347baec0793a3f9d735e4ec5c8b50f68c5b8999c9d4f885cb5db995b63a324a4c136a2b37640989c006d4604107a78e982cc08307e002f1db3dd12a707097e8e98b2a50654aeb41a866fa0a46f99efeeee24f772352f3fb479f92507515e7e297a39c60c2fc7b8e2419ec1d0951fcc00075dca8041bfd00317c911c1fd80490c7e70a594343ba0a09352ca909be2dbed12161f00f1edf2fa900527a594b24510c373960005adbe21f772e60829763c71e1e5932c2f5da626773ac4404a21777e2264c145b411517cb7115c7c1fe182962a7849f3524a2999bcf8b0c6a68931be6df0ed9688a4ef97d0d1b77b115372a2b89a105d96603250ca84f8c2a46a51b243d0b0845a21840dc1831053064375082580905718d12c32cca4aa38aa02a957fca1bd43c8a08916a22174b083154c29a2221e2845c1031480418313308a48315d01f3d3f4ed73c90c9a4ebe1d88a69ae7d70f5e5e41043dbf685032e3f91584927722ca8f13515c4e1841c5892180de9f9d10c2f51b8a6da29328f492525ae594534e29a313199fcc2b73cef9459954861aec2e35354d2ad5951042c862c3c693542a4a8d1a5b68d0704243a36566e63563461315199927313159eee582425d399d96749d138ed3b26d4d342d4a9651b1760be63c5e5ecfe3c5e899b5dcd026719291d1eb28cb93a1067bdb38f5d425951ff604e35295a893aa549384a85a6a16241fea5183d5a8beb62d72d5f5608e7045380ae6bba9878b1d352b6245b408bb821935eba34b58160c8976596ab0b12edf2e82dfc0e1c180c33d461c8ec36bc581c3a3273f1c1e531c371cc78d1b5c5e840f4b6ab06f7cd8962a6e689fe84193b74648afb0878e3eb4495a9ac52f274bbedd266d6956b342ac884be4c1df8e6d09621d666ef173929224621dc69c6045d893c6992dec15a5be9abe69975af47de5db799a969ad5453c7f8dc7d3b4d4a50b53b35ae8f9551e4f1353535351b39a88e70fc1e3692aba72e5a8593dc4f3dbf0789a8eb264116a560bf1fc298fa749e8c993a166b593e7afe1f1340d458992d4ac0ee2f969783c4d495bb60435ab81787e1a8fa729c88913a466f50fcf3fe3f1342169d162d4ac0e7afe191e4f93d1ebd544d4acf6e1f9653c9e26a2262a4d54849ad53d3c7f8cc7e345e8c993a366350fcf7f3d1e2f4759b22835ab9b3c3fcae3f1a2c4854b51b37a87e73f793c5e8aae5cf96956ebf0fc9dc7e3e567c992a0663593e7e73c1e2f414e9c2035ab819e7ff378bc2069d102d4accee1f9358fc70b50932643cd6a1c9e3ff378bc0c458942d4acbee1f9adc7e385880a95a466f592e7c73c1e2f495bb6f078316a56dbf0fcd3e3f1f2629df85e5eac837fa79d006af273c932cd2fdf3d4429c52ac5a887796da176d2410d76161aeefcc2781474896e387fe68fb43688d78774885f415ca145575e426c791dcf2f21a23ca55f3a12a2cf471b25d02d96abf087d0cb20da45314806499cfea15f0ff98fc4c1e1fd83e35f7dd2ab2f1207c757655412958474e8ce1f6b841561453c6366119d4d96fcd030379c3ff347e2dc5e05fd78a674a31b6002b94920e258ee893c5a862e52f16ef1ed1c79068f796829567db821d8d5a5942e3c05ec510a65c46b631baeb5dea8c05b8c7664914c2123bd7ed0b225e75f98e4ee8448a44f980d621e46ecf3e9d28b9857ac6dadd526f9583b04df46d6b0488ff64af088489f3c31cc7f2a20d1adf344b75f8fc7be507a076292df69ac66a69b9f25e3ba51b320768c36c5e53cdf80e04d83d63b282906b923d4e9075e7af46a5495d89cd2caccb4d6d8aae1ec4c48126645441758ba85d9c796e2e8e4c26d39e79c54ce48c6c6b5671c218b3ab6915ae0218512462d29d3abcf4f25ddce70bd6fbc086306ae56cbbf024490ab355db8feb21d0aef3a055c94f72bc8e851af20a2a0a1b8759d4b29a5f41cee377debaeeb3a8aeabcd0bf6968e489b453d417def6d0c8d3ce6377df91f928977ee567b9276ee7dc7ddce0f49e5f4d78f8d9d1aeeb64cf8f1ebaccaf080aca95dd2c32b99df642f8e2761e16e1bea987f2a9a47db35d3731d424d28eba1e0ca83061c284695ddfb0ce47e7dc75f783bf3f4b69dd214c99f063935d09286fdfdacbfc08f5cefb638f1d09ed168552953033eba98050efbc04e99d771f11eb3e50f75375ce2d137a15559dcfefbe1f565c3f02eae2bd6686bb64d0787e31496a1b9fe17a2cfa930fdd030fbebff032a15a4649e494134b6441e5072594e8a2862bd9098b8bc556c4450e84a8d8e28b2f68e02168939356dbe08d51938d89524a299de2c9185404018c2f474ab4e88f1594528ff425366d4a484ec847d4735ad320f50fbdc1ae3708b5da6fbac5483d1949490feb700f5e482c58c1152d4e60d19233bcd461e8254bb08dfceaf0829452f6fc5aedc57429fd015fd112464fdcb0822b60c80024835a5750d3f2494bc1c42aecb4ad5a2e48c4fdc13a359175a46fdc0f376e5fce4e0fa21b7a4ece08aca3bd3eb97e84460670defec37b841d23b00e0f7f54bdc07933bdba54dcb07f1ee52c992b44e7e98f9f73405c773bbf4d6b5774257d41623a5a32527219fd1c7192911f8148379a917f8c31f3e859d7bc1570d4f048fdda7d3d7ad59e7daae8d19611312f7321fe6816fd76135cdf388c14e44b4fb3aebf922806d063c94194ee18be553cb98f9f3472fa4131697ddac2ca8d797ee5908504030aa01c524074b7e7570e496c72766f79eec15de33878ee9052ce2bbbbbb906a59471464a666ef65e71f6bc420cb3c2f717b2f09675c430cd39e79c33ded0a75446fe32e79c9b9492e6c83977cc9b1c369f94b2bfd43428dd524ae9f7514a292f472963106e14f2d4a54b29a59d52ce18253ae9e4c9942b636cadb5ec720355a073b31fd0a60ff7d5a4529bc66595ceee89e5b2c879e4b4ec330eb31fd7dda9d5ba7127a96d5c459d26eaf48493e246df34ca60967de6d1035f9dc18c3311442dcbe6a43a36f20892ce5893b85387a973226e2d274dd9b09996cdcc66ce36f3d16a52a9cc665a27b199a19cfd870daed20dec714d73692efb699fe6763268b1e9cdccb10cdb6807a45fd336ee24b16c6aa853a5a8d308b48f9be246df300635676d829ac70e88e6f3984fc6bcf8f3c5a8a4f29813483f577d362b4c222b9d736236c44a250fae4f49526256eb2ecd8c99d4d49c633e7345a08ff1c7a544a646a64ba52e2aa6068d1a5c8afb228fb9f383db06cce1ba980c14d79f5bdc17daedb39a4ccc9db9ddbddcd6a5b4b898db0881ab7567a7272f763dd1850407c58dbed5a8247637a88ec51faef351a3eb840dab960ba1f3415d15591ca32bb69413ee6cb0276a4aeade9c60538a7e03060e491d0c39089d70c8010fe6c2334f7d52ea17871c6e5001334ec432e4f28cb2e4b8628bd7122c2f5f37e460c3921b8c056058a138b84d6ee882965045e4c035293a11edb0f1d061c1410be2a8b021eb2169a361cb8fede127928998979ebab9334f3ebc4e71d84e4a5c76c6dc670a125aa64481450c422d0329a8c0a4489aa1d65a2318520049d1c30c4e8b78b1840dc084b98108285a950a21ba09296c8003fd6cb09804e315450c30d4f32b8a134471835a03eb4827579630fd9671399ac53ad6d983589e932805c5e52614f00cba7f4407609ca924515f18fff37a341895e6549a4ad3c3d404dd8188505ebd7a03358bbd94879a76524aa594d3f925c69dbadbdddbdd93759e3fa7f59de65377bb7bbb7baa32288f5ebf2de1f41308eae74c7f88a45f05443e75f9f137295f7aa18d5ecf87456e5ee302f0d6364e03f5aaddba7dfb4d1bc3b54e676470667c323db796695913513e0af1fc6a4197df64c73363f39c271510198247b9f529444414e3a8ce51448ff2eb1ba394b4589f4a3ab7406f1d2583759433a1f4f7af6f336266686250a7934d0e1a0ee5d9afa1e576a7e92ba0e24f944579d3f951a8cfad4704e5d63beb5c07046565d748ba61037d936685d765885c8ff1f606629d19dede4c5807857219bf33bcf85d7702ca63621c8542798ceff48c2be385d74f1ee311b98ef2ad2ba173946b1d90fba1be2dc58df19ba3bc76d24d7ad52ee3351015377e3895bedbaf4f2e738975acf7e402e5ed27a4509e0da566a1804c4fd57c3d1a8c21ca4fde3e879a4504e5425bd69510ad087d7742e7d6764050f37a4412c73a8db56edddee65887ada1e55ec7bc8615172bc2fdf5f048a33cfbb42b01f5df822dcf5e3cbf9860fa4dc5d5b8e286f16bb81a565ccc6f1c894f0413819eb0df62cb3e85483ee69b6970faf52a466744e8c822ccd36cd07afd93d77d2c392fbcf161038537e9c399f9e16c30d27c32ed596e68952de9c359502004a6d502756207ad9dfa8452510ead16280e236851af9f0f271dc14515ad16a894215af4e34e4098e3a327696dcd5597aa14a8634eab2a05eb98dbaf52c7be9a0059c37d4cb18e20d44a1fc602c409a6b45a983fb4a82769d12ee2c629c9e8961dbb4f2e3415fd757773f796cdbbbdbbbbb7d8ee9cb361b045238e596c9399e774e93cbfd8624b2923772fa1f28a236d733221a3d89875bcf8b5d60dd59f84c65882553707b2e0466f70b592d2c14c9e74f615a7ae662a86c008350575016a5723358b7a44c1b775810a97870d7509fa89f3c6b74be2605bbe1b086bfa06e36a22fa6148b245c081c3556190b107d415e5bcd14a4e19641c8d7132169879b63b28dc31980d6ce5d56aab9d9897f1aa7a016240eb5d6dd489d12fb28e6e41fbad6ba571935f5c4684f1637de921007ebac73c661c41ba94d2360bf339c3245f9d4a4e9389a936ccc2a22613533b898ff88136fac9741485befcdc9194b6f08d85204da67d610baff9f442466a42017f00701582332e3343e3a88ee663b9ba4e7df3c833fb19f353c643ff094a1c1a9733be10078e995ac3e9f7591a1fcdf7b15c719f8c2bb4f0d457884f59881f79783c4274e916001fa70d97294927ad34b66f6134139b943844b851a30ac146aa060d9a991932311775eab84dcb2c56e9943da74d633d685aa400087cdb6009b6e836a65c2186f9283d1417975f454c333658879f75528c858b14fc670267b719e7d2e37c0bc1973eb82c7379e2b8f371029faa503e9d86d339b5a8f1833aa54abf7a7e2d41e5371b1ebfb0c76f43a8f7d169561fbdc6013e32eba04c532345532325d3b1c6c44449e38536d55e0e302cd2e3dba3cab372453d042f1e5d957415e48acaafe7875c51ef912b7abfb0c8cc9f3cf3acc697f206e9f594675eca6396b8212f0d89e1188ee1188fb172659c86a7aae1349cc6519eaa86a33cfec679d2ab4277c8cc8c2f3c42ff4883d48dd019e719a7213bdc0ca49ea341157e98d01384ab5e930f93bcf5685c7a44a4d7ead6fa163bef7c739eeedb3cc9735e389f73e985425ebaa679369c3b9e221f4ac792bcf48ad8f8101047a8ceedc8ad4783f4535e38f399d7f058f081f2126838cd2767bcd0cef0501ebf8c17c6252ccc9bbd9678f2ace5f96505e9b7e6501eff497a8f0d943826f48ae6681c6e510ae6fa87bc145e30577efea51aa45e7170b3b8a45942d437ca71be719df7d66d9faa84cd35e7d93ace6bdfbcd67cc899c41df2816665458cf84497fd54d847d332526c72a33ee79c7346aed3ab1ebd15b806975f568ce2df4c7943e30ff90189a3b9cc5c3a0adc23fd634aab0aae8abae68ce472b554f4ebd93cf3908fee8f9e9ab723573940b8fef5eb88b8f3a74bc92d20bc924e0505a9d32ff48962b26136cce763aec29c5b9cb3739a0db8630608f9dd4e3be2090eb362a6ef15d73f74e953061b52c4e24e671db0853b3dd2f8420e57420ef9f42d68c30b4aeb83fb127cf98539200a090629a5ec67ae954ec751e9945fc21b70ca296733472999193b692c90524a3959cad974a34ba6566c1af842035f80a1c40578c0cd12ab7c011ef4c06261b62d4e8ea5943c6b6878d59e629c78e41938d2e2439aa4232f4246d88961181456a0482c567008e3a69e5f557cd0e4c6e420568141100eba0d88c51722ae8de7571514bc7f951f82dcb130b2b9a937a46cbcf14ef79b9c9b983353372f3002d5dddd4da64805805f4085869754aa78e9362921dddddddd0d80295abc94fe59213d4ce9eef6a6c4708537f734173ebcf0ed3bbabbbfdcc6d1f9e868800f39255c4a60f1d245b84d78f06e743e668f170a5e2f9d89bc78e935b781baa0212242a51485c4227650eaeea0d9548010988c3278f0431620964ac045ab879874778be0db46e7a3a358a59898a0ab019ee088974ea3f321533c1c41d3f9983c10f0328924acbcf499ce874c097900952219b40033822f5540e1c1895b826b031c6e49e12283197e79b0e2948a735afba5b04a652e375313c5ca02a278f9f694942cdf1ee33b5c4982298c133fc8a169043e14c570485c137481016a03616811c3961a98e08921906092442346e7c14d9d52dcf74c8d4d014ce042162698c1b7df9483375d0ef75c5182ca922a985cd021054f74f02225d36561fe3ce286ac24a5945a5451800f730cfde00024182a010c25b8e2fb86c9e572cd2044ca244994614417373411430bc668c9237ac892d23849b5458b0f7720914483d708aa40b9e1fb05656848c9900dbe73b626616c7477f3134830b1dddddddddd9df3248b2324c93d9d032aa27499810ec6e80286561bf1dd3d435f21d672433764a521438434ab3d06a357a8242df8543dea149108060080002315002020100c078542813828a068b2a20714800a799c4276541a4c83490ee4300c839051c610430821048888d0d0d0342000405b39efba51321c4e4d6f4962e10f71c4822dab8601c0e37ebcd8140c0d636034685e325c708cd25ffb20657a0589b69e767b3608aa1c62e26ffba1913e21e3aaa0a7cce2bcf5db2b21b842196380d0f0644f73f68dc740444191f73347dcb7703978d746625281a944c59bf7e43cc28fe97eb542e37b598bb7abcf4d74f473131213c83be1d9afdb7b85d0416f756dd9d484280cb3384f3dc8fdcce4a6ee27ae342a4e605ca0828ad68319543ac3034546bf5328a5d94afe5359ddbb418ec016ab9bf05f4edc5eb18533e0e95446b5e5c998243f87fa3ad7df8a1cc2f69c27f91a3816b2b9b3f02657c5f36cb095877a300f13049752a18a84e36da968c10229a442b3a1e62d4a964276b063d31f26e4f6923716bc12b2cca9816ce8a6b5949d9dee2ca611251728bff2bc727390e0c2f16c83aa13222b4b6e6ec6e7440c2706d8aadca702259f6f6f33fb1c4e6fad90564937f11672a479590075fa74d6b65b5931176ea22bebc0bb595471ab9c4868f8917bc1b37467881b953aa27261a7a8bb239d27dd2d04f4254189e9702d2707d7671255287873b030d1ff1e2051543865065abe256524597af73675ee1a2022df0e6e07993c9cbd7a00e347d849aa7696c8f3816c718559855215edee7be04519341cc74edc83e96ab3e82304c767be4c762fb6986f62bc359dc5109d73c6b0e1ff4224ba925adae01bf7f76cfe4a52b367491272132b6162db67f670af88fa6b0e557c14f5e11af39878f3f0c26611ff326ebf905ff5fa5074bb9f8d4a55151a5f375c435d6c805452771bb0b35fef7839921ed9e423045e8906dd1175120611023d9e95b503ffa9b8fb167c5225c5b10529f3554971ad3a97b6f30d7602d29f79ffcc51e7dad2ea1118234ac6efb78ea6e98e867039b9919f728f65748092ca08ad9b4907e807ffbb222f950cf8a8b49355ff5b92174f253ee3374a534c61dba69db33b607640c01204ad81e1d1d6102f418db2cfe4b31c707750a7535e876bf119a93c1f91d520e612a98535e6abbfd92bca88fe5b5ade614b1d99dded8ed96b634a97fdffcb8b6d2bff86b11fcd0a2741a038021617e836e88b2b8825f0c47f41815ce535678af46cc85cfa27cb0d3ea33e52ba3a4b51e429dc508d9a05726695b0b9dd1c02d41733a46224a36383e9e32a5e97aad99e1961e83ec1447df522d16b2e40c470563a2c696424367a9e8fb8d238afcf987fd1659507b74ba55abb14b497ac8c85699d93bf94e32a13521b7271376d11d27c9aef60d80d2a875db8c5c8c5000a32ad6560d5894894f1c8cdba8f4acc712d5ab8d75e8b43191032661e44fe650b6e5bb4a2eddbee05221d1526b7d7afc7165161f57cf5e4a81b37165412e22007a92662c2b217adb5f92d502952f0b7eee32e326fe547b1601a834d398bb1ffb7462cf6939bec9bdda7be7ea48211353650065ce1736c20d9e755652020a94238edcc2dedd4c21aad010c60b932d402fd2db6b5bf3da108869d8ff1f73f0e045b08c004a74bd42999bf082cbf233a294e057f95b94c8640cc6e6880305a7a46ce172cca328cfc1de89d8f3bd837cbc565a9c56b0b03257787fc700e579460b3528841ebf444243a4c41fc7c504e59933d42307addf701727e80bc6be2f68400f52b0470708c3f2be34f3a3851bb68ec6a925bd06081821ab56f3bad4372daf1ab2c86479bede463113d28824cb36f43801ec201285feae8ba48322f5e0c8b9d3f21999181798d5d6f6a175af822e69a2279848ae4cd51c580c42429281b0992db32707af670c6c1db2c6f52c27666d2454c0c36699de74644f5603da658438fbf445acc941b1c0e97eccb045f2b34292acaf79c9b6f7b616053247b9bd2ec706305a5473b879a78d746af613dcc81f761ef6868a9dfc63894ef1bed8f1ec1d921a7f30216bdecec03af8514e4dda46fbe3011352173031b486506248076fd46aef16357addad91ce8857c51d03fc20b0fcb308b8a01ea8f74c39548c1b7334f4d46293b706110e3ad64309b5f5bc10ccee52bcd200ae12b8d27d67a9178ad10f3091c3770ae8dd09f95a70ddf6b579bd3768168976be0a86a4957a734083f3d2c18f9890d07ed546cfbb9dd4ee2fb1e16fb7a64cda65fe0eec0837d4ef5a5840e04e152691f03eb2831381ffee67433378a3acbc11d4958d7607a287a063be1f218ab7d806b31304dc989f75a4d5c9b4b051261124e6d1dfa4af2fe817025532167cf28e3036dbc741ad6111e4ff494cc29bc93c35f954ba0bf00aa183a0dccac1a621bdb79f1d20dfcd0c928c094442856e6c3ef0920aba675a662bdf80a5c444ae3d270f74c11451035dc982d7f0a6eb384b6464a287fca72e828d674227ebc22fcf28bb1c619a82341c27705be2428b1cd98306ffb83db46074b0c2197ef6077197feae47e1f529271ebde73ba4304c5e892f6f123bd3b2920f9f47023b481883309fa82e170d2d16d666a131f1831e50c3deec8aaa02d9de16addfaa506dd43d4919719aa5380b8b80f4269193bb1b0101d2b572910155b021037ee2dd6a784e2725c9b7f12e4c0e44a5a57b892c6af26ea3af1c03ad529ef761b02559a77cf5278f067198dc1049d9dc603396dfab6b06f7f016b0eb7b69d75a9896dbbb66b68ecffe53622a64c8b30689a73e80597633c9d1d989d706eaea979aeeb10e8b46d3a263bbc6528aa3817c357c6c5036becf38ef52c0f6a00af30a397a8bda2171c962a4ea8e5b4faa970bedcce3fe80bfafed536b87120df93af9cb266661035c406cbd10b3f5681eb9183e031e910478bc1cdc841f0ad3db0f8e55d03ad5f8a8485173288aa54bb07fc1ddde6ccc4e6557ef93a9887e27a9fc9c24d5754f5b6f8ce018f3fd326842075d72c166d559acb2a08900e7c1c51f4a970aa41f9ef057fa7a5782c8f859ec0ed88ae0472976dd9bfe0307f49fe46410aa518445d41978cedc01912fb2a30e81d9f1bf5aef8df178c0179c47fa1d8fc4e340b67c5f68d7f44db17eca37a8b5d275551ac779d7b73d42e3dd45f0282981425236c2c2fd90517a2aa17f24076f38223ad8522b3db266f5c8ffc31215ea479c6e957a81f4455829cee6d7ed86e0ddfe3db39f9702b7d359b482c2cf0d28e9763e5db58110e41854fdb56d7cf8e44e63a515eda765aa0e904be8f24b61cd2cf877e21d87bd53a5964c260fca7f7df7037c96897f78c7b046953a534cffbe0989eaeba95c41cf8a90e398fa96b584c261b59825cd998d213f4301f4b9bd731e61bb591897d33159d9b7f56d2d0171a1bae587bec6f5c51817e4574ab5a10340fa72104c443979ed0655a833c86ccf8ea918b1e0ac2034cea57e4ce4dc361ec763de3b2f920767b7eb41dc34fc19738931e8ec6ebde028b651ce57c38f1484f7d57cf8cd8b1dbdfd784dd102aa3bd33f58c22f9be944a020c9716531683baf308e859641b2b7543e2f5d6bce0cc7c7e8efd4e6e5ebea2f2eada58767c530319bd46f89dca02399bb54ad9be91f3004b8ef6cbbebcbab3ecd91129931611a3ac29f2f1988913f4ec5dbc5550b3e8706742492f55c819c74a7ca888cdd58de4f99a9330fbca7d48090ec990744e8fb86ba5406a734fd42d16647f9fe88ae90de525a7b3438f9b1fd8dc2fc5f30b54810e218c7f3360a3d6365086228a28a390024a29a58032ca28a32c050a29a480421428a320050a52a408451428f768b633d0c6f9bb48e9d81e90583213688f8487444d5091090413e0617369a077fc9b6d13a27ae5f2526f1ee68ebd9077a9c5ff26b18972c77f63f91f8c76f2c088e4ba33cea26819ceb4019146a3ae2d1ad4eb389b737f9478568f80b0c413e577d740fa567040911b7553dc08a830a94f0b648a1f00a46e792fd870acf11dc4550c760b87a4d855aa31a8b6ff7a9659b77882292a8bf0988d204113bc90c992c3b22df54a61f327def03e5e895a8dbe4839c635c6b70f8f5a7c515e8b4151a410ccaf19b314f7b84a3b7390239f6e4dc3117b624f164cdd44387576332a275a4e5e6f82dc22f41aeea75455869d2c9b4e5020a41596a902b04a31d31143fb493c31e90d345b89c662bb434fba45765ca86c2b1eba606d6fdd3f777153521b8c1c673b4c857371770af6b2e327bc0e55f4e23ff4d8269695b96b4d4fcf89a549a42e539dc3bb9998e7230cd9af4cf10a3cbdf47ffe8f1f7db38813e8afdbd5e14d5d269fcc4b9e6ee4a5125304ba9ebd265a15171af1b794d7a98974b3ac33125ced74c89c42b7fb8e027259d910d7fb569e01d6dc44484fcd62c4e4447cf0e56f914bf2e82aedbefa656a5cef5d1a1641c18739d5fea72b63c2b0dcb7977c75cfbbb027be6b7d34eea4e53df518fcc2ebfa7608e765e91039ab64913294d47d426db2943ee126461b59a88b7ccc4bcfafa5cbda33a473dc66d5fb4b0846efbe427bd5104a3c8ca29a77546468c5d18297006291277e550ef8050d633a689a066cbfe4c05cc393cf404d98025ee5c8d50b645e5d11cb3f304ca098254bf5ef7afd84a40f41a8eba29d53756209bbd5e8ee8257b747962f251e721c108206a6e6cae380081b8ffeb588c26b6f6d1eb99a80dc16a26600bfb0bf1adc03d0b55722d8eb4bc57ad8f286397b98a6514efbcc66489db05962f905fec6b70f1209ba52891c2d1e91ca8c445206cb7533c2e2e00b5e502f6cab0e019ff571fbe2f1dbd6633a82d261bb80f35e0a57f809a2ec06d87c5ed4036f54c2fbd2b31c21335e3f2dbc5fa0443f57128449fbc0d04749e03550118427b0a482d7959ba0772e1fb5cc208b25f2f2a5020763c4319747e9b7a1f4c6e915c5ba107d7bb4d059950712fb6dddca589727c1c947111ad9c2342f331f7c800af4d871fef9bda2f91f5633e3448055109acc57ab1c29ddb74187f481f7011d7dd17e6df2243ec655a8252c36fed6ed0b461be9542486bccc0501edf38bfa08c0580a5a7914f920878c3f9d4f3c7ff3ab854256cffb938fc3c6c26b04f29b9392264f0090b5473299d9d227bb3c85dc0c5a2b8f53d00ae0c48828300a2b345aaeddbd48f04a843f79865159bba0e004f6806943bfc0c15e4c77c204ce518566a056058da44569cf9eada631af4fb3a4cc949d93f21ad997a23ffea75c7a4db8613926e0492359c20a70a6853f1f99c963fdbbd7c8ba1ee2e59ee4413e5a115e7c0e42ccc65fb343c21c2dc3d52294c1f7d3b9fbc1486c7fa97ca6c64423f97f1b9fa08680ca1463b046836aef8e256203f443ad59600797f94dc18f5648af1b79ebbddda70bbe554cefd28a2ed6f2815c8f21a476c3ec420519e998d5cb26e4b75395a69df24a62eee5c99b8a3d3d912feae6a244b426ac33ae6b7f4e98d64c4d9ce7fc36136ad434a8a18fda3df8075166cc2e784ddee204a8383f9fc5b916621c8fcb5b127593607a242255c316bf465abcc7ab15fe1cab0288ea99f706aea5b96ea28ccd8a9c5d429215ac7e9d8ffc7083efa2489b884424c9a1f6db4cbc8def81cacfc21f70ae77072048acf99d791eaf85c5821094cf6a99e10586b60232bee0376bb9985cfd1bb82f3020ce86147929a73737b68fbaa56b3a5e7849aee559736b6a5346365bda680f4c0d68ac26063525fee52be86a348d0bfc6f29c43ea5bb707f714d3290eb2bb765f63f14088514e9144cb68e82db6f5af1a1b9314553482048f677b614e454702f76965c85001bf45a7ef40c0592afd7ae27b44af614e405724948039e3470937398d013f13d2fade032f6159b8a3a266a84a94ccd3975ae466bb9371ead04436952623ef6cd7cedac7e9f03e86ed71f0c69c050b7f4c9faf165c1adad394c71a183e18236aa1098411c14f647a48de842f626aec297a30cebe0810fdb180f831177ebe10748034069e84947a78dfe18e4c4bafefb5b287ea3f9af25f3208e60e0a886387e3165b8540f2aadc472752accf85d54be6a12469730b954a461212d62955b54bc29584429a197280d9c4c751444e8040274a01ba53101a7a137652494544272e9623995db5b1fa8a85fc26251692fc38a791664cc8a9780198db41b441882b9806a9c82788346300aa4097b0e3a9af451c2477fc7f56d1c6a929db8e3cc4e1f664f50ec08e8b670329c05de77608d8b900b43fab6de9dc2dbc4e289c01b5f15dfabaaacef159eac61a71b6f6e7d9b76a4260cb8a9115fcc70f895be2da44de4a0ec45ec2a4ac520c8f0db8a3c5687e4f903b8ff93ae42b636d8d85ec92017dc69c153bebf417f2ac079fa6b41f633d5f0faebbd7553473cc1003305b2ee57a6f8e560a2a96ad467080c39f1f278574ed7dae245068a61d13f52eaead0e27f0912b158f7fead8a8e7542635c40aed8fd169449f8474b64c1092985d342d8a4ce9d2cc06a78928424b2819e323163fa7e0d063ef284b484fb8a96ed85aa3fc25a3f9a128a9ffca57d4d2b5960dc9466a8a64429e1a9016d10633a13f4690f8b15cd69ccdccc50108b328d1c0e977c851aed0a685993fe4948e618b240f667e7497ce55aae2765f3b57e067eae3b7a4fb1c8e90c3ab6109840318bb75e92fd2a428bbc0006e8b3fa0fda072c582627eec5263a974d3b605b55b204178f31381f35418952321e543c261991152caf76c255c7740a52b70ec7f0550178687c5ad9c98cf307ad526c8179c08ebadccee50b2308ea50b7b24aba77ab491a2b69f744dd8f19b6e22c7e09721ef07d63a0ec4e3a414f7a8b98d74a6f39eedf2f0aa18f60c0a4409ac6d9e3ef231ad5fcfa4ca5b67a9eb50a14885c7c6ebc26227bdfb2c4fc0d6884f970abaf8cb7481688360866da35bea140eb6665e7dc69bc6a7a433d0bb217ee2be47fc04a435fd0ef3cc441aa8216098240b4996edb22972f4930153330a98730aa8ef80774245637713f8c1c9dc3d1607f770b160e34cc26e74ed2d16097f3c8a411387123068480affca5dc4fa171ad10eb2e9bc6ee602bf144ffe9f9c079e1131a3f00f5409e5bba5eca5a9b6540a76588fb946756636ad48ede8d6c83ecef949076672d0506cdf22b09b5acf906cfec4851c6275072f0dc3c4feb8ab3616cc1b0addaba61df8b40ac8e39f65aba18169376532f46713a8d345aab5fc8b296873f51946b8256a784599d08d3c4500beba1117fd99f615e7215dfb1f4330613562529335f35adced39bf88a03d08d51ef3a09d4d6f1a62964ef986093141d270bcc0e16dc69575b7a96cf077230bb6230e3bd9f28ebe1e8ea3b8896ec87553d6ef7ae81593440b6627bc51cd8e45e6ca872eda9b24daae6a21d066b864a56cddfaca57526fc85f4287cafb4e2a7baab2ff2f740295cc8870b75dccb966ea955f9d1f3292235c7ad6c7477847b34f492e6f0f38b3b3c3dcc1264d25b098e5b39fa1c82861ba44751500b102b8286992f8cea40fc31ff786b9288ffd20dcaa217772d0275091b81d0768718c68869b8d536d12bff08dc9e73b5d25dba119cd6a02f31850f734ea17d6ba2f5bde30278cb0bb17cea7a42eb7b35055cef8bee20e543b185182b3bfdbd7212577803bd4fc0f4bcc03a90a3a090c13444210a49cbf2de9ab80e4608c8b1b01e06d280222315343d0c683b440a477b358227a03257ead55cb3e4f87d7a02a28f1a7ecc0597cfd261aa75b2154b00cbf8f7f96c5f56e7bd7a5f19d284577454ac3b6aee9a341b081011f5762342bb8b6ab279bdf3b4fcdab2c29b9901ead50745bbe8073e87a55dda489587f26e38aa5ad92f4051f7d1b4391593f7120e1aa2f5035508a06862d3c72313b0d5e692f71da52677a61030818680b9808f67aaddd2ef566728d568b802c8e7b207607506f26b5107fc83795596317a4898a04b49bbd867ad3c0ab6200e021dc27eae9b7a0e001534f9d56c43e88919daa1c0643c8669caea5d78004c3f8a4a7f91e0e1a0697ebf0b6bf7505f87d6ff460579f011300f7eff874e91ae4f614118dbf1acc4dcf0c688f741110077c117948adc7b85e5c5d8134aaf745b4f7e9e0a7c97a7211f4d1b24fe8207471b30948734b8c1bf5203c640adc243eaef3f5404c0ee2605f0d52a4a3881107a6ae2173b95e9c9d12a382bbe36722aaa796a65fcc5667b9042f47084c29a452fc47ad1563f18f70fb1f081dad09ca086abc75f09862bfbaf04b9a22832836262d2a85cbd12e3ea6e8bf013f801a584dd263029ed5679040258d6d15d7f19da5bf1e10da2cd883e090420f45b65874030a084417c36886ca1ff5aca12085cc51ce0aceb4772029772c3b2d434d7cff6aa9e4235cdfba690be9066fa06a5e4c914252016ccb180c3f396629767447c8751f41c596330b067e411e1c1c6667df57c0be4af8122f31476fa1fc41c889747a72c630a1aea010e7ae89cc619cee822ee9f9681150317ed8841b9db7c3c04c614a31e29c3920c82ebcb9a3ca4fc0d2febf597e964fc34a9475d543812c4cb534e0a5f7ce8a4fdcba44f86c178bbc4350cac9f08c5f0b5e46dccb59f88c8e057c94b19cd2f138299bf225137c36113f319b65e2245434312c434de2e225383d327426b682d726173c527026de0d4e4de469321cb6e38ad95add3b746d794ef8a853685e2e7d40003edac1fe07a1e81e8c21aea7ef86e999d19653e673987385953bd346f200c9dd0cb555d6157813fed91169f6d01969c3818a6fd6503abcf29e499add88e9d959e4ea0956b462a2bd6bade01525fef979c402f6b1befd18299771c85778558d6626872905e4830983189d21696c1b34decec8b9421c2a146d007a003e50312996a35cd4063f5fd2b6857e014063d5effad74560308d99c1bdd112b34232383064c70b3d70b26771e469b82fd2f8dc6c811381d10077f8e0293bcd491e0320600a2fd32efd974dacfd5efca551d08e521a5d366bf82338a87465485f41db8e887c437b7e98562c92c242ce141be44b04e69ebe9a320d2dbf4e2fb5c2438411cdcaec8dda637a4e97b2760eea3e933850ab66c955fbad0132c187e9cb531c5187216dc25737af2efcf49537b4f8fce87b5cafcc261edc0fa928ad3163e1787233d36f69957122580fae0c8fc2a33e906623982e933b8e3ddfe9d2d2ae918094df552f0ee5446b18e02fa4e39a97879cfe5d5543da29898a5566bd86529dd2ebf704fab980e9128389001ef20dad681583387aa8d388835e09084b283d2b11cde69cfbab6d7a249d943a363255a340a686a90a395da8a666a1ddaa659d030ad40a3a28d86767245a3aaff3d435026e4560ec510132e857c5a4972aa42507e63e145ca7789e715d3d5e3ab5a2aa8494755b1b51ce3fed3116bca9e56ad5e4bc4a1801f35daaaf68b1633bec3cda3562513f5cb3db790684d2f89037ad13c425e3a2d85258c94c400f98c4163b3c0a3990208e6a9c7ee860ae6b91df4d8c8221de440c79c3af06b94dac9a2581189c670770e1006fa6496ed89a0d97fe7da30fa9a40ab42c4247cc321401246671578284ea38bda0dfa712baac8095e523c8e57f39c4d44489ebc0848443b68c24beee1fa20d28e0f6f8e22326712147b997698973138cd361372b3d27a0970ff8375915cd97328d7fc6e6a20c98744cbd1260ffdbb487e66c2a1ecb535df002ed05769ff890aecc559bd523f295f71caf134e5f4d5f84e864dac7137a65314b4a4bb88c4acf7d8ce483c36f585e7747ddad3a73e580b1b583df8dc810e47e4b36e11c9d079086d75edf80d2a81940e701328f5d91e638e953dd100cfbfe3170f2b0edfd170c91af5519fa6f01baa7d6eedc6b076136aff9deb971231501fbfca32b55883e71bcb7fe65d826f94d2278c4eb11878e87d2b31b02ace4e91879b1e94ba8825636b390c8794fce0353cbed60f02a086ffe8862e19c025bd606d57a4f4f141a10a6b988e8aa399ada35167e82b42314a111c8a4762e7819704fb9abf8ff2236606eb9eeb5b0fe4e7632e0ab344fb6cf86d8c2864263f8ea7c2e2e555fab95c538e7459a3a15f5aca85e0fe8751e2c9753f8b6de1e9acfdbf8e0560237a11e52564f077148b9120df95f9dcf4b81a4857c597cb5acee60baca481e70e13c886bda7c1709ec093177dc734c1a2bacc25103ad611f5f6065fec276000156496ae3354095f16cb8f7985ce91049e9f9e8f0542966664a317ed18476f2d3b118005e53f5da1599f2f1fbd2b877d0583992114e0e6204a53ae375331dfbc88cf95b9e4e560a44097b3d3b3a603adc37dc9e4437c3782960fe29db322499e54eec23a1b18707d28d2a3652bdcc20c11c110bedfb819b7bad8d96c21a642244d0705057be5d264db25776ba01ac6a6db2c56a47b1d0c8f8277d6d83f1abe1bf78ffb4eaa4b3ed15ae13744e19793ba159ccb942caa5f28dcdaaa24bfb33bd3007b29dd6b1821b3aac065186fc88e886ea8730c7f825ee5e0753ee85153db5a1a775cbef05386b905087d2c77631f6f0d51b8285ac96c0c5388540f558bceb39e5bd692cab751b861c94b188926eb5b398587fe34dd5225cff0686c3964b86fae7814748b8caaa2c6e39c1a23a182f70054826da6ccf1c00219032af1c89ec939324736b2ce73bc813f77d50425737ae37f9cc2313e6354772128cb17d1a8fefb940e2b0f758109db0ad92fae6a3aeb8832262a65b89f1a674db927988a2618703c914e7b862db80236a0d9e1334409f721d1d06e40797bc9339af7e9e42cafc0d637de0eef2e2c0b9831aa126510780613a1a3ae51bb6a3b2a2397d7bf457fe8c1ad3273ea0330c3f690ecb05ece02ff8f71cd5924c7b887762219e53d5b205c332381f7b43c51e165d69039013f6aad7ed417eda2f3d2a8be27311ad93d309e39517dc2a4adc778a501c86878d46f7379033d9f63c0b4eb3d9254c6116fab41e70098ea06e9cc8bb49ead4cb2701873ec1cc0a9d0e05ce0d01c6805b3d4acf0874e067648c3886d344465d29ac4e07fbad973f918b91e5a5908bb515e6e455c2ab24414965d2bc24a1042452a8ccc8baf98b5929b39c4a5e60c5c169bc76d7cfda313adbf82d19146e1dedd9c50ec935d2b1314a5a464438fe8f9e0ae2c5a3bc2a279221b48b1fdfb0b011107c40f9028570e2506e30f0ba4a4949c512178f3a095bbd4d124ba668fb4a78b1d9a6645e8a2fff09fb5c6fa05889d78f81282af65bc690f1991a5737e57772588005a33260d6549738afe9c8df065c6e400813af918096f1483e4de181e946a8e3d13501ef30780868e5064da24abdcd855936741d793bf21c02c08b2560dd4ad97be9c8a8da2aea8aa2557ee88e19546f495cc6ec0a72b013fa965b4057e853933fc9deffb415b67fe4806e2d68351d948861c20be362fe0831bcdb5bb250b5dcd4c98933d0796a0721855614b9512729b686c577b3f71103aa04df74722254014a0c8e92f0d429cbf252e5409948b7f37aac183b2e9c050654b8ce98041bd0b5863a22dd1db88d0ab410236ebd96df6c9081883604fb5b48838f47c32a29d3fcd2c58e0ae4312022cb187aedd3352454468884c3ecce85eab098906940649b1547d021c527e499322ab460130223aaa1166459dec28a99ca79d208d2f36426b34faf67e2b05a23b7d37f560b20b8503d13c0865d26011cec23ff1505b4168f1dcb78e5075adeda04ad898cf20762365f4a3757765fa0fd43df6abb34e1f72e2343e811421fb1770fbd23dcddd835b87e79e14375df6000020aff263c283171f0a4a8e6236a87bc1c8e379664f04fe2fde45067f772b7fbd9c5b410675c5d0e9d338dd65c9742803bd18fe3e76e552bd62df91f1554c1370c70d5385b40751dd8890439772959eec49289e38bbf5e35201699ea4669a2c5896190f536596633555c9668a9e153c99fa70cf54962337db52f9b94ae5d85033c66820dcece3cb8cf7b6bc92139e234b996d81596eb82b54f6e23269de3f71e42f7bfa78b202f5a78e65102290f0995277ef7fee43cbdac4315dec1470dca8cf6243b60f9101afd838f522db96ecd81f1cc089bba9a41a0fda58b0c4e1d972664760dce5a876d1e92a7c27ae56ebd9a4bb9fbec92cdcb82a9937942d98b2adf02e2a0d9a332b78b72fe86b4c9970c04a1b86c302b639f304800ca53ce994f14043cfb1260b85b5484012731ed6fd821ac8247e3b25fe70f387de3f296c05cc195b063c725fb7e86c35c984bdb2511e93935498bd2a8d508496c1737e1b5807907a94d75f16f38f9f28b14dc418c19295045d115f86698a902c0563baf32f1fa10bc8838e59c9179808dd6f922c58f114d895b5170c3d207b790b8a361d7fbe1e777423a4c0fb783a6936bf9d06ab16d67d2978c35e8d273bb82bf12204d1b792c8de2646c541f80c1f3153be83d32788e699267b9b0cd273fbe8e1b27064c6882681f195dfe41936eb4b2226117581a22ad96f7a4c73c27cf6e0c48cf8302e9cb4514f6c1655e05d68f7544153ffd627732bcbe8c3ce814a9d888cb50991918929318e8eb8ec76d451b261632eed0478bc7612b113df2dee2037970dc5a4017c360805a71d4bc52292d972ce28a2cda58c13e1b7d2b6d0c712cbce6f26e8c1a80c2a6c12bcdddbcd104e487b6d812da18a25bb02975abcf37cfcb161d03c8dbab6709364893f01112dd9a5d21ad0bd3fafb7b88ebd2cc5ee8768c113b3f4e9d92986f4f68656b4594495ac42db9582d5def91229d5dda09156ca9b348d71ef0a3c218ef37b970482a23b42b88320a95aa3eab74ae71c7be6e57be5935da522733321535fbee9abd7aa86c78b25b99740f7485e2a7ef3001b863ac57f5cb4a9293cfd89e16918a1b38dac1daed72214b2bcc0be0ca9989e72f127ed38ccaa4deb2832cb2626cad5de72a318422c68d793f45530ccffd3fbd2b9bc44f421751eee35bb729b1c15d1e682ff0007ca43e41d8e1d8a0514f4831340519a4d8265957229763f3c57f99538c0f0145c6870b604aa08e47029572bd19660510be41bc64281eadc3dff5ebf1c554c7ae8ecb8731e47c222c6ce1f2d64161aa94e99dd30011707e554f095cf70d8765c647faf26f8d4777a216f7722535fe4bc2a2a38f504abf950dd2f12681d57734d97c5842cb38066d55227092255dede8b9c2e21e3e3e418c90fc86de19014d1d0f90dcaa9ec0e11763bbc8ff4bc3c9c7ed20a1b61aa7161c3134fb5bd61883184f2f3c89894c702a008a9aab564fe44c67ed972a28697949199ad408478a296b52de83e1e415514d3768ac624133f00999dadb84085c26acd0ee1ad52fd0c4107f525a9fca3d008600f7ee445a322ffffa40aa8a5df8a079616d9c6ba27a458181ae80fdadb82823e22584fadda77ad449b51b20b1ca43219a36310f85152bf848bc991b60e95801a9617b9b2a91b6489a939055b174dff9d949181d72debb5e3d33231798866a211f2c323db1c165948f6bc42da31eab9bfd0407c7a7fb748325d8bde4ceb8c3be9b88a523bb4bec57f8a03c2eea06efc5e69d5b8f0fa2e8584127ddbf471fbd43586f06be22432f72e755b68e675d1d5b72c83bf7ced081c2c2a048767eb12deffbd924685f40b5067eee8bba10893ddfc6f2930a0a18b8b82fddb4b23d045616b0637225b0512633130facfe107c6709224876dd63f09ee32b1ca70d63f3805ce2ef384c674cc57a40ab9adbd13574d8bb12bfe30a6dcfb6048d24fc654067f640d87aa04c1341d3d78131a39c9684a6ed4bc1a6386977087b2651da800bce2141980910057dbba98b39167501aebd6e8f032274a29843122817bb09942684f5ca53be3b1e0a90980430be4a1858e217228f25a4c0854d5f1f012c66ae7e2c679762303ad6a51deee29e79d4da2099ea1c11330a1e1f5018d0b16bd27630954f1cbe2cc659c3803b270eaf58d110c0c9757d1944cd902c52a2fb9e5339f29abd60b835d83a6bcd6a45663018301b923eba3e9758dbb17157ac9a48d52977cfaa1c5b7a69434d4d346b1df9a599c6ef7c8eaa58b0cd1d52c02f4f9cb1c540ceb23dd3d9fffa7d4082f0944341cf2422805aaee56cf4471ecccf50cb0dfb4f7a09828bdce79d2b3f2ac9733fa09e0947618a2ccc072aec516fc3ca055d13ec85cec736785b75b93a5e08cc5a2a03a7a887fc2f33e99997b07b3d8c14d7aea91020aa7f41fd88de4047354204a5c021bcf1dffed9b3d9f4759a8ec4f01124688210fd460968cf403c581718f510ae288ad5f240357e2920a1839646e0cf42c25ef4c3dcc023dd5d9b2da000f229a367f15dfe3b3f1bc869828f7033ee270fa155eb9be2122f6b6f154457b8e909c42f1d38d21d4a47b4da740a6acd783dc8d135fd19ee9bb5691b3406c18a7b9790c55cfac3d0447f6054acc8d02628e4dd1928dfa885a9a47b5abc0477c33cd5c5d3e49bd7f139798a2083d4b7703ec01cae07306572bed932aa951939ae72e720cf2be9499ea6bb58b5ac63293f3c7cac79e7a63c93fab9c07d0aba98643d0b5da3d9a39184870e86d1fbfd5f1a0e373921bad8acd4a6bfa6de7e2c0e9974e65bb46731e8a9a3bd4686cc048a073437f035686ec4ea4f81597a1c755188efcec1d258e5220875a4d582cb02ed889e5d35c3e3ff569c4086b6c2d9c11bb4f7996e0d0f6ab01cd8d1e89db1077a553ef7983620df854a6248e057b4c3123e2e2f3d3ab116bf1cef06d12ce4f07df596a98e14f162ad1de840dd552239a032871c39d0ca0c0341461205c55b2d1d8d45b24007c7b5c365ac193dc948a8056f08fd981eb950153c8dd79ff3e4a70336ae7da4ec6e4127be1604117978ca79c9f83209b996a10bf1bc14c2b353f7759a844af31f5f5a998e2194eafa9450ac3ec567e708f75a05a127b5c5cb8047a647c1335389f449f7679cd6c3000703c0958b750a1f013b555bdb05b6e1e10176e72cfc156ad9f086634e12db60393be2735752cf3d123043bc84d0182368b8eb85dc13da51121fee7efea94685b4ce8e835ea1745a8c1b1755440b97b86bf06f14155d7a645db74f820d284d9be77bb4fc9ce0dc3fa4bdbcb5f6b7a77421c430916fc1e732c1b618e6470775e869f8ebd2b026072ea1660554c3e912ae4257a7077e8dd41c83c4633c170a5f60c87d4abe189352a90c38494c81460ffdf3ff273c7fba1c69f617d10bc8eb8cfdfac457a0bc0fc795d14816cc211af0eaf44e5455ba48f045223ffe5ea130e1883b8f95303f9eb7bfa59ce49e70561f4bdbbb2b568c0bd8559887561c037b5d7af45f8830bf2ab5401d5ae0f6040acb3da7122c241d3fccceed3b434fe85e282d82a313123977c23f8cee61e5fb42159271a9a08af6ff3fb9e73cb7c06691c1e40acc2ad2b0690263fe67402cb0d843fcc9a2d784edc0cc306d07f77d97cf284b4c9d4594612a64eba70eedcb706b9fdf3acc5c1842560a4f83557e20c6083b240600b8aa50e4f0909b6a8b0aef7d5bda277fea75546a7dd1c74905f3a18ed5099210358f8720a4ab38a01d736ca0f0069acc2c5994f7f6b1e3d2156d1cb4f7cd06ab44c6bd8c966a03fc479e6f5353d7863095852f71bea1ab9060ad0d239c1685d631e6108a60e81a0e3ab327702d4c39e5aa5c26c1084170211822bf7b4a4386e0e116474a0721c2e9b56e5cda1cdddf5b30303e2210808f92e6ae34d759f74246f325dd671b1cdaaf78febe9141389ac2fe2c92e834237966bf2ab27a22cc7a817c82dbfc158fe643233e694e14fce2aa414091db505a395fccff8f69203abfdd25c05eba5581360aaea4a0cc72e4f982eaee7f94655133384f87174609ea78a693100f7e8bf826d9cff4270c6d85b9cd914176779db2dceff6577cd5486e1f3eb7f2340a18bb81e2160930d051c4ae900ec5b1df73b4fa2381e504682919f6c46847bbb88ea93330f3cb5cb4ed20bd3eba74a0d812eb907e648bd75d940ec283534a18b96bfcba7147e5829b50e2f252e16eadcfeb8213c189912e6b745b4173b1cbcfa6dc82b06ca86fa64446bc15171b5c85bb1376ba6acf4a92d89f9cc2a93f27fa8b25fd29ecbd72f7024e6995c256070e654ee24de2f4dcbdce97d09a6524999abec96e85b3226b3907b12c34b40433d632033f55d34821cfe1bdd1109dd99489d94cd3e0bce7f3cf0783080b2787a7d070dd034c18b742ea00386be33a017cf4ec5c76b0f23cfbd4cc0774d1e05898c9d5d17de1f160406be70619aebadb83870db4a05c21e14d48948b0fd22348e0606977c4e107261dc37e044d64df1f9d4acfa0184f8922d5b5a562e528caf17ccf146f57d9c886fc27bb94baef6de3f7dcd37cc5a333210309ec8d0c8ed55fbda95ccfcea26426ee7d082df784bda2d80761dc7df2a60af88dfeca15787984f58da94d2658964a413476c931e38a062d562e630c04478910d4b6e4f3ab8658e3e382d9b8a9b8c78c3cc3b95c819442d092256ca2af31397815973aca335638352d143558859c20421fd4b14aa6c342c48e729916d26cee939313ea50345f020aa71595859e51b8f2ae41a8632076b6dbbe649322a71437981cc95e78f580c5f8ce6ff84da9684ae87c9cdd0632ccef46535242686aeaf232b89135e772f1bae8101c148f96c23069c2feba839349483da3c1f8a6b9d4a25882108d52eb213632d03f44f3063e7cfd823f167af26c9734740978fc4152027b1d34d7cdd0394ab60010e6fe3a951a6e4f17be58f62da8489372dc3e47654686fe1c0ac4a04f4bbcab165c8d1afedc339540dbcac89ff2b07cd4af69ce0201eccef42dd63538183ac623b7a5f299bd1c6359cb0ee77513702ee4607a1688ee51002cb13bf741e84eff3a5992082780b2d0a160b58caaf1bc86c06946171ab40a31289d8a0b5c2fefbaafe725686c7b001f91a9794291c4704226a66d6be0a527c5957e6e0c4f011c7967c42936485af29b4273da9263ae4f59d1045154f502779b60e59ae70133097212c283f157d45bb17c0c7843a40c0df2307ba0bc190ea538f7fcb0d399e3b177c6f48267b43c9af4adc37f76e4843d8c34d5412431a82bf1277085e512e32cd8b5f83b5239a14ee2dca4cf2c312508c2b243323d1e5ff65c414cef53c64638a414ca2ae493719f267ccbc8eb2077b6afd55cfbb0b4f775a542c8fade5c072749ec0ecd6f7a0507365d3e25969fca756957b448b44ebc96ba19cc934fb72f507722fbeb407502e7cda6ed2c0acd5a7af428b366e62999d375c5c7cec209b2d0a1182bf34086c2fe541fe8dd586811c59205a4020929c81614238bad9bedf27b0a957f197cdd512f916afc79d319d377a183810a15b556a324115b50cbe3edfbc7f875774e6c7ad165d317b7706da102030310db23e62c12283cdb9a7187259732517ce7558713a28d28a92a47d452f3261e0cd5d62fc0a85679b1ed3bf2b0ac96e86634ffe845b9334058468dbc6948b26e9a7f7bb06d8e00f2d5c6ed3da154450c4f336823ab8ef8bfe347981b4db900d2e157fc45b1ec748b7e760fcf32b49b4c9d6c72db858d8eb9313579048c88209732f89fdaa99872bcd653b7c3c4db07e6f7b8d04e2c839b0962953cd6392c88b635359c3c70d33110d1116aea22466557a9f72937987a4fa3d97ebc9f7b6f0d57f88981c5957c0a6482eeabe72525fcdbb89394529f98e497b478884b044c1b6af967e5a9219ff5bf960590bb1335d96e59507546e4f1f6e49d2dbcd4799dc34c004a223c792eb99a02dd8900efa8276cd1a4e939929cb2a8d1163d3cb483dcbc9f2258e186bc380b5ba9307e4539f70c1aef9de92aa50d0bc68bc81d0c80f6acea68de1122a762a1f8c05623db12e3d936c8f8213c9d1ad127015a074bcfd994629cabed20f03fc4ac9ac0768dcb26c87a8685739884efa22f5cdc0a16ea61c7578e9f3d20401df2098ed179cf68db394e6b9419a55ad8cb7a67674411f304ef3823f915906122849281749e2e2d9b13aa787a3bede72a3db930bb7c62d3b9ded4499eb2c2584f24106b95aa03128b80bc9bb86ac544aab558f750d0ef04074807f6372e622547b843ac16208a5b4165e62005d2adbdea0f38e5f81427afa2a25582a342728050e6b75c93d00811962f914e8452c879c750cf2e705e9dfb3a68123ff3ea936b4e41e9202776582256d98af725c43535c815c3aabbaf6d04b5a6301ef1cdf6202f723aa638dbd856e4371bed0836e5c2e4d539a7ea6f4c08fa6b3a7bb1247784f0ca600477721b5f8a0b99f7dc350a24fe02cfa0b1fa6f580cffcffe306fd1b8f939b6d061cc0b3139ec06859f5676e9d05a5e43c8ed322c1bec835460f1c8225a9735c023ab026b6bce101a1b18f55e7a37e745b57e677385371d185a6c8eaf75e473445f3eb0b712da42dc20479380a62a7766c4e91efd08e0d1643330adaf046c8400c9b35b4b0d8a0411c15a1a506ba565fcfde8c1f61363b98d1c1f710071e80837398259120869c5278e4448d3d9c01c822a9d7f48ab0b2402834a14aa4813ba34ad8218c2cd458495cd73fcfc8ce30fc1133c1196f3c9bb5dfb927f7057505c98ccea8dca93424678198bd9881a8864dd19d5983de9105335947b57177f476affd14865fd94a1c246b07e02474a3715425a000db00acf1bf6b021f6c50d4e9f1b9a755ff038919c609c30fa02f8fcccdb7f29a6e2094e5f94434b2ca2495fd971cbd91a67cf0d175978d9f7b9c731849e34e9f4ca6b2187034b749dda13654f338f3c265592945bc951678ed621882510e76dc6078e43d1c8f5f5562532d40730cc2c4f889db85ce4af9e5c0bc489763c401348bc683559f0aae14f0324a36c6b2b3e633035ac38de10b24812b9edcf20aa1a961ab7141451e74cc953988e4878cc18e263a47e6f521aea5aa608e0d532f6c251952d2a2581b33f23ffa094833fee81077c4a86e3ce7ab41601ccd1ba902f12df57df767f0886a7e8280122935ea35b0b2785cf4b3c1b4a48e199b787fa955429660bddf5ff76bc6c329eb068799261cf36b5f01a2c983f878d27acdbb83aa11972026aece141b262c08787b1a5db10207d0ad9d23227ed665aa436d41d61f02e96beab09a5499633c28552131f1c8940d7282d137bc2813b7a3115b42e6b21a50ce251f8bb92813d4b532387e273c1503130f40e29127620ea9330a94a820b68601597a2ed18393742d13baf2807851730c4895a55fca3514608d9688672006a2482288daac68a57c913d88fdcdcea41e00b1646e7c6520bfd970c21ea063e44a5c3e67b46c8ebe3bcd1498e68c3865f4c2aa90454a2c8ab53123764691ae8fb0976f7ad79c8d5220d0969180fd10430c7dce8c4827a781841a51511e22a5e0072f0cf5972459df0b89ad9daf3401b874b91f25eda77340ae4056b23dc56a834d1db9a550609adab35667df7f7d6166ad930c899f9806f7774ae529311aae75b82bcb627518740c59710114a3151b83542f76b6ea75d2a8c9c2d623f5fb2645f7717825c5eb3cc187cefd55a31ecfd988f644afb44c2400d378f6ed17bedefd21044088b401ec63ec7b55e8e3cb28bdb41d9a133e727846315c85a8afd098a0dfe1febd799bf7704336c1a8e64b9c2f84faafeb766238c81e9a8bc3244ad7f416a1bacade5c3480d0ece986d0c33fcfb7a8b52d3835f34badc1068721b10b3534acf78629dc87337b2f946e800cee41709e89e6b3d866b7208da4d4cb67f954de1632de1ada19ac2a163f86b6328e9221d095c08993163180bed78aee88a1c942f19cc97b70869515e81fa5ad5b1dab0242a08103c41c38f30e027d454805d9b3344fd18607b16069e58aacdded5bb6d831e10ffb08f2b986308745f933e561d08231bc6a2a992f3be3613a0840026ff90d232919b44d8d777d9a669c8399a99e89d2c78d628bd8ebde9fae956821c93b3fb54e531a0c254e1a6981dde31dafbf11f050e0cc8fbeb5fa899c97d26c384cd38bb665dd578df5d60e7aa1a0662dadd7fbc1a821e2f323f77b172ec449c5e3407dc926627cf3b66c6ee20ebe74421ee905190c71c401801fdd0884840678b8c6d2116c0c80cd4beae08026a3ed1c1e3ce6f2653ada60e16f8c66f0e54f35b9d1a0d4f538a7ded864cc3d2c4af91c001480920b6616ffc68c2021cd406449ff07e67184db697c56ead2934f4d0f48c162f2f863465dc2f90c03734f9c8c3e2b562f6626724a1417c551596e8d6069ea072917726065b9c5fa57b575bdaf4187e75d08b1d99aa6300a8471b96a5b5b6dda214e18e83bf17c62d0636484b863914c07a1ece4608856a318a96c4a4208fe06934c80de231c9d21dc91fd9a8a0588f0c001719ff4888f037d68de930657061295af464287d1d1f32f65dca17c75562e003c476a19d8f163aeff9f5f03367465bb5398ebb3e4d21cdb1b8661a6bd37d05afaca49f4a00c6ebec1fa8b8a0630800b6f2daef8f6d2ee439b16c07a3a4489dcb58dc05b3f28e59c72a027549111e316012ac4d82fb5607d89a478d5b1d9dc43b321fc24a4c528256763c1505004ed4ca8694cdc05a68f7504275f958ce9fac89b5bfbcade8f12484ca58545c3f9dc8ae4b206c7f2f6fcb48f3dd4c980579cdbcc0ac94fc7fb0b3ca51855a7ead8f9f8781c10f4fbdb0cf65ec6976e9e96a401511795056726b03c79895d419e0ab03187bf50f0b0096bcccaeb21ca4f39d417cb84e48400a9a36b92d70d3c86f576ae0093b1d0258dba2ed7f9381604111880a66e1b6c3813208bcbb535d83a09f7834d20746444d37e271e8beb185709ae5b540754ee513676eaa9bb626d3e3d4251e8db5bb02e10e84075b754895191f0192c2eeaedf24015f960d48a99455b1b79016f0ed2293552e54ed29b97577ffc8727f70ca1cbfe61957d09734b62321372270179a935849e901f1fbc25556c9229fd37460ca27b2a4aa31d40118a8d1e8ce21ba14cac0eb2f55a2d181f7199863a2a84ab93d6bbe31d28d23d52100061bdc7e10dbd8bc615ca399e364f642800d8e9c64226b72a91010969db928dc798952d19deee870d123c0a6adbad5e3a15fa05654008a339b0918c1a84beaef73ae6ca4c4d43249f6beeb08000d7bc948ef041e4efa9cd2b31008b6447be7d101ad5972aaefa0ccc30b17e33ae1e7b51e1df4315ae2fc8a3ef9b5b3acc991c28bafdbb085a78d0f9210c26ec3d1117c9e263f51e8f088330da65272abe4a70eeb819d62539dcb85be00e0889838525c6df8db5fa62830f7825e3b9eaa283122f09568c4c96d9655b25aa406e04f06fab3390d657bec745036898f3da16ddbe9d2731e8d26585015f57989d114fc62d90c1967fcc558f4ec81f5016e176f4c12ce42bd614d12bf47875b13d30ae7401abc2d196ff4b25fb8e759a391d4e786a5368b55007f6a9935c62ec53846d85e0d5ef21beb55df37127dcc9919de431105d5e22d4573cde27f052a91714381696fbae65468442411ffffa2ba08ce06b41455f1763682d71ac5f73d72108f8fa73e5011485be40c188496acd0b6072e1d534262407b8ea4836210901a9b767ba48fce1c5f92621088a7ba5887241164c236c882fec653976ad7bea2bc873787d45eccc8fbbd35b591b4eba8170184bf37a9ac664b892e69bc6e3168e2bbe8c24acf48557832ca86a3469b22b527efe69173a4d5fd13e3d0407f614c2aca4ffacde32dfb0791d117baaab28cd2a935c2c340bd16eff0fd902549f4dafd10bf63beaf6c80b0b382455a322349c23ad70002acc687f7d4e13ce836228b916452075bb5eca19b6a6db9c105d3986ff534a4896fe4d956d91322e97752efa4bd521c50144795928ff4211672b6646ebfefdf7914169d447ebfab196319aef6a5ccf183ee95f0e4e1004c7b68657b4c195ccb6ab0a50d7551d0cbfd3ae25e09a2b0157770818fa88cd9cd2be9fecfbc6b72abd5d8784d572644f7a655912b0ecf770e9edfd71f1c52d60e0853708018b5b110a38b5f50547435ebc3914a45a6f53473b6d44e0a695a89fe858f4a32a09a8a987d6b6ba8fcd6d98a92303b77fac60e74e071db38606b795f9f92b2f76873c1410d334f126364f514634ce0c1d182f1b942f31d193a1cdc1b4663a5ee5908d8a1bdd74ebb804c4bbccf73c832bba379da858525aaa75634a8a81aab9c2c0f90462001c4a75655e88fab46347a309f5ef6e14d3768c26406f6778b20cdc9735094a90c6440d4fb59d488f6e41c7b1dae4f4a7f7c3007c3dccdabb5cd87ead6cbe5f87dd05c524d7348c06b63aef5b4666d17818d46ef97fdfe7db5c8dfa9f5aafb60fe44735872078c7ecff979d3a6a2dc0f5f0d8180c8a9def4cb2fb61a563e7dae02a6fb3f6c2ea0425f54ee609ccb4da356ff6c934ed681fdbd36ca70c16d54ef2430a8d905cb3a90b693d5f040d633ea2d688c3446984b7df3fb4749d034348de86770b3fe142c5e476e46d8c0ee64b09b435ed053a91d0b949667cc673def7f117496f27d2e6a312e530ec33faffa127cbb6335489aecff3ffcc20e94b37f826ab44a835e73d668dfd864a6e25da46e6438ece167120eb7b813dff136f3a343b0df8fa3e220db1947e0f974517c1d77ca85d65f28f1b7223980a68c7e944155ac45204f1c370e5d783c642302a1f0730d5ab490e2efba9d584ce9d4dff9174d261dd6c7a42ef05b6e719d56e3d00cc0f7a2075ac45d6be0bb56c641bb95e706062c983f67fb0f5ece6f727d77675507bea46b9295aecd071338ceed16670145388c640391a7d9f5413c43161aa161a673d9cce43d0d2d2a243210446876812342c5c9b7820607544dbfc0504755ecc3e7f44a0beb7c48bcd044fc73ba844cdf9b4d39b369eff48f315fa5abacebab80594b5aa46b07fa4e6aaf1878227f6669b93dd6c012430e26cb2e423625b1d06c709abe51d85b38a26a9e733464c930d3429e5a1138156e43f75dc026b5717c7f8478a5b2e2d1af7cf2a88cfb5d0f88603e671c4cbf75d196235de070df2aab657648bec7196f4495ea61046fdb93316dcdf16fecdf5b1da9ea047f0c77b70bd6b17ffb59cd5c1870172d9368ca0d2dca6477d74ffe91a024cf61606e877f13af7c175444e7aee2f689975d39d278c87e73356acd43a58b6f25e44cd8056bf3ee39324ddd4847f8b2e75d26af62059185c55a8d8518309e3dedabc929e73f002c4c1a74639836f4e3b395a3530a79d3b81af4483976d1f7ce592e5de2744770231d399c75ab8d0b61c488287042fcaf312a3f3bc4eb39b34427b47ea6fc8f963af5573b2b52befb1d8174bc0d9d7695b2b4d94a6357d35d9db531c609e5b34ab27ee2f2f1142bbd2c385699ca311160c09ea541bc11478f044e1101ed00660468377d495d3422494070e0ffd35221c60fc0768969315107e951d9753524df17d050f2c29b572440fef2e64664c47a23b44b8344c0d9c74415b05190c95d7868fce8af78575e36a9f66d338827be9a366ebfbb69c61093824ba45937b6b45f9405d7051ceaf817d3be3b3350792c285a5b2bc56d5f6682d71b43e2a4a1616b587f6988893a19853174f0546b17202dc2bcf1f3e0b8154af158c19c3ade8da4a167397bb0f23f972ed95e9b840987a8dd2494425c2d08c55c4282e271cb562055fbe2ae354111803a9a58f66a38edb3cee8b0c589a00bb2b14b1d9bf94b3f57f899451dde0baf0f38cdac7cfcea46a9cd7d859a004a9bb17a9ce6d4fa4bb04b88d65712340a0532739c3f25c880f9aef0f1647562e9d868c578c51400b25e764a18fe19427f5c5571b6a7bc23147d46a4f7ca5863b8e7e8040052ce5b44904cacbd38a26d0f272fc619b8ae9a233380474b2b5c8cc4a81776a0c7977e8bf8828d62ac887bb1f061939f25acacdf5ca15804d4f60f9e90c098583c029e985af283d66a7eace397c7c94e469c70a52aca435b9598f28bf678ac5fdbb7c3810d6fb2ca54156a711415a2b3b552ac2d4cc5cd4914da3747defff7b930a1557798f2c1583e56d2dd664354daf68e17f9b2f200131832569d0d5f72b6b622bb80dbda703164f0b73d996087be9e5c8c74174e5c7889ba6d349936490e118df67eb9a1368d14d06bffd8e5fe569d054e49d6ff351f9dcacf4a9d70d338e6dbfd036b6a3693fe2bfa8e2ea6daf4c8d900f74f02a348fc4adb9e7e70aa0c9ce06c24dc41904194a98a5384243181dd66cbafaba9d36798c520e425c6f486a6c7048b9279569feccbab7ce8235d4974b44cc8c6df3eac1f805717849985afc083996cf6df240b6e1a9d52750190b21ced8db8530728d0aaa01d52a3a9d6fa35435238240b11178f6b0ca25222ed3e41bb22883916f4beb81911e13c5bd50ad8ed8104a244c0a6ab78faf24475a5e6951c3f475646d251edab429e48468698a1344a4f382eb3a030ae6e540d6ccff326cfeb0844b55800ac9253231fd9e77ed39b83410ba58d782d209b068397881b33e36d86d371640048e1ad3ca6b9388fba87818efdf6b1444bcf325e8818679b586f0c712701b5e8d65fc9d775844d856963105907f8df11c88407793600579420f295799fc6850274aef3d603c9d5ed124d9765c5b5fc4b362f1fe9c590d89f0391be68218c23b416e062a1b7ebed793a7289fc365aa461e9aff2340a89e67d8bde0e271f5ae0da0df04976066b9abe6c3d6e2bd6243514fdf2d749fce37589f2c1241b5bdc72f257ee404dbbefdcd8742928efbb241a0cea368c9b3e36123eb966390ddf13561e11356963c7b5333896a88ea1cde5db2e09fd6267d1cfdef8e8d72bc339c804f0f09fa798f21b28154bb6924aab7f5378e5a55e837657ca51440eae222ece3b0f2d121712a2bad7b14325eda875870589230b6ab65bc424a49227a33e8de35ef62d0fabb8b540fad3a720281100c6e85cec2cb08dd6ece81095efda710cb04e309d1da1c5ece0d3a60ea60a22aab77e0222d5ddeed3857b49f0899bb28461d9ccc6d3dfed26d6dc243cf499d5f0a81a0f9444384bcad298c5e08c25b742f4b60e8d570c7154d6b461fc9c4962635e674cb58b944631012d3bd9a7460457e784062956d79f0df473ac3a4b7b66ec2ea920950b9cf1a47259df1759d3b316968dab32776c1b85e071d5a0f0c58ecc1b6f59458adcced340f3b5d4c8187b003ab0098756172db6cfd0f1b5ea838cb6dfb5a2458f64e271ffab52d912e515ae472bae48408283b3341e2b116e18cd66b14e25b9ea5101c6b4bb7d50580b4e39ca6cf82cbeea40447fefd82afc72c6255182f7fc9a8cbf0acb15936074610686a2d90e292612ee1f9223d9852712a362c3ec208b9935b9e49de61d3f16de8dd2023500e5519fee29cc32567e4164d4772e4426b3a8a452957daea2d58027fa6726ed1f9f8ad2bfdd263fc98b55ae474cf99f6a770aeee3136e712dcc6bf0f5b0dbcf62e3be5bf5e7a7b3c44b83fd0f8d68c623149693545bb18de95b98ccf4e000481816999aaaf75b32a2316ac3c15ad8e48b330960d411152001b40768581aea1646b4cd0e15ac9e99d43c121235db1a2c39f5d7020236e59683e7819cfd2dec21c9fdc7f889f6fe7c015241f359b9bf16ab2243ed1082b0b5242b36fdad38965a39d84d562357d43cce272cc811a135caacc4d42c078a5f2a35ea7f20d38d675ca529b6ff2b8d7dcac5b77556966406a4efe34b42dd147ce4e204096129221616052b9486a9ccc8cb13056737263b10395a16968786cb6820bfba54a76ee05edf4eb5ed039278f622bdf5713e0aa25aca9f3b8d30f73138b04ccf74a87f548cfb11e3991732b8b0d46761603b02de13fdb656e912922123a311ade68b40b3ba29788cb3723be6aaa13cb47fa59d4fb08fbd9c3ead5b69d9ba516307bd15691729486489c33325beb4216b02096d012cf5b09cd805d7fbc5a4cb94c2c71b6b89d048b847b28b30f81910f01f1571ed694d902c1fd813e14a4e136384146ab27daf95ff9d5a242f352126c6062088e8b043cd3ba3895834a55e3530ef517f512f5612430475484913bb91967f8e2c8685aa0e41e11462122a0bedd4008cad7d2cbe01a17d15f0ddf9a0733e354fe17b15763952265423e83dbad19f2309c06bac158d3bf646826d24033201365184860e2187e9343b9748f475572d2c19d65561a02e01cf4bdf912c58421fe4bbb61233c5d011ceff7298b5eca6b08b240c9b143a519e0eef71c8ec50b3856e823c2f61cea0e476654d46847074f01c2704de522d5f144e2c4add7b7e6391c7efb64c2dc341f10706a32a4cd1eb9cb37362625c60d3589894e0c9010934f63c54d274979df1d109c789c2773c33817050e8b76b94f520771562f42ce301be177542cdd47ca2806d91420acdb1b644bb012a7333e3d39d35d45b6acc7ba7dde2bc9b5be55a4a62066fab514bb7b2d1468118d0f424893105569ff23b3266282260e2212a305e1abb64a2a40cdd4b8f6108d645e14eb1a7559e462e07911c670973d549e3c758d329a5da5b2049c3096fbc7180d682edcca0b965a29390ad247c7756b9be37be9d745e68e861f7577ab0db3bd593f8e12023c66723cad32e5d4c6c47328d04f19dbc54420d547cf7edb0a25d08b35b6d02619eb0a4838438c552dd5f8a94e9390d0db882ae6a3874d4a025a46364c8e471208a46690344000d938dc942ae174bc471dc67659d15d45a1a2b97533c3a7660f375c920496d8c986c4f743f37ed355c6ce176c57bc558028b11ceacef1700eca19f3fad4385351beb7ccbe969bc800794605b3828c0af75101fc17c0027f372d3a19e8e40667f1b7e05e21e99db0d907b5fba0cac4c1a67db4845aa0c7044c076e22be94956e987b3309ea090c1f1bb2d19eda11fb7ab3c3da20a28d7b6c8eab3752154e500a4433b40e5936e6aa1fb2e00247f7a769f062d84a0c9cb09ae5256ce9647018ec82a9d97848522daf544584811b512851444e219d9e1cdcce04d9c39dcb9960e49019d26439cd20a952ac6680da3025c091b22f16588f4528d72246363eb5bcfffd71788b38e3fc2bbb3b79845de54951c68724930a6d3bc6e7074f10719941b99200588611139a528f80dc1d5014f5df8afd8ffb87161549b32c6bcb8b198221091680ac2426f61174811a4307b41fa12c962cc67a5c8052203bd10c31a420851aa34d902b73324693c1e9474bda4472e7b4e71232e2a1c31b0f8f121e6c8c208f6c7a4ee2610ff63689989dd34c60f88270f82f044f9f116e5864e3c0404fca9a4e6681d559f77024357c38a14dae6a44ea1b36b7365e5728733224be49805e187d1ce8fd6f7ca1eb5dc2810c97e1d6f54865cf425ded64e72b01da8faebc04840ec9e79080c63f81ae0bf95b7f1d13c8381ae7e43d6c1be5990b7df92aa4ae5fba7f2647fa3f92691cb9435c51a3e0b99653c5d8af7225f64750ae4055f23804594f8339528322e1759a0937f9232b745540490e30a14f271c7320ab961eeb9a92c325a1a45feb6036c35fd5cfc2711991bbb02a82e1d11ec350794a3042d5ce083a1f8dd1e447f0b530e909702de2583c3bede9988133cc6c6b3803c18de3d6c5bcc90ed93b45de9f9c54ec32b855d61ef04fe7a40242bb22f3e20c39220abe14e9d44ff633fc0e8f4af09a2d3530656b7f9c7146bf9fd3e319fb4bb4e0a4b28b759bcdb29cdd9d05c1218a0f9a4698c366491620b24a158da66de1b055a73c2fb4a4294d1b5b2d9b7904960202876a69010b3d5a033ed2aee6505929012ffdaddfe26a5c852d1d52c41642fce27b495b56dc7d99ae41c47725d62619f47330182405d2434ffc38109ac9123d5857f6e1abd4887ac15547c708f49750de2fb64b614beb56c88a22a0a9dab8fbe757408ae37f558a04e6abcfa46afc6389c5fd7512b07b5e115b300f012d3ec541194f93531faaa0e3eec8abb238756a06853840235c59195d1f8a5a398cbd936236782b94ecbe09377db84a0e834295bdd19bae710ca1790a54a6f6c6fa872beaeecb0e709c29000ea13d84b636fd4fb10fe98d853e1406f1468fbc13520c42d86ad40a6424cbe457a6734e5f0c48c10d30056ff546eab356a2203fe14ae2796e1820c4885ea095eee0a62e5c8decd87ab0995d162d3b784d4d8964631856035a2f65dd481520da9642c2108f367495101e5adeee1a3e776f84f9fbe3b1d506fa076d51bc3fc186f55267f7dc7c61582b9a8f63f4957db1bcaaaa57544b9b3f1039710ba0ed15727a791050dec3ad01c6920cc8c3a302be1a6252b4a2b43644aacb0324b03e0f54acbb547dbf5e2654a8af72311abdbe03896b42c34c3664564003314d84d138871ae3aa311587486a356496a3513a43f0febecb930a689e8d2cf08e11b8225fbb8157bef120efed0d885c820ab011dc4d1d87a1fb6e3d0a1397a447ce3af523c87fa9a2c3c237ba0e1e557047c6bf7d0b962862b39b70807fb914b82c9d439f95aa8b5007e0537a666db920112b6367d314624061e8609fc41420f3bb4b44c4d41fde49eb22c6e447fef8364b98e6bdadefc568ef78b5931a7b7e500d71ae9118455fee71c391abda494b20ff05c6a1dfbbb474ff33c7b47371acabafe74b7b27866102a77b95dc6d46f3acf37b0ab57bc5ab857cb7853f6e7f6c9285ad253b3227dd9249bdd7cbd484d25aee0a12131d9152fbe56ccf79f963fa10d049ba56e6d1c89a80ebaa2e15ad647dd2eb781bd84542ef23d3fb6e171d0185407fc64799210f3db56cd953d01f6d82d7f0a722dba96715fef8b3010c3a7676a80688833e2ce88d27706f99fbad0d02749989edc84014307d03e17e6bef7114a2764157dc1c5cbf85ff19edce59cbec76055dd92a00fe66468d4aa8aa5b3e821062862d9e19d155c339166355a620b1c4fbaca1d61ab0fa79a846a5416e11f6c9c7ed17531a96b5be38eb615b6c4160332e1fdad241c1858c3754a2bba54e1af29abcbba581bbc8fff08c2dda45b1fd26123c199588de4b0786ed3199ef0f822fbe4fd4c61929d15418be4cfce619d44b6f2d0503de484aa5b3b0db188c33303f55f5dc39805784db518dc56bfc35f34806d99a27b5072c5eb02997a707f8108c9487852a2ff9823c5fbae57f1fbbe6fe3de35050842d3cdbd16c28ee84d22331e66f62eb5c788256091ba962034d29774fbd72e31ce850d985cb7c9513583f180503b6e3fd98d1d7e38764610db0782a6c975eb4a25a81406c217b608880e1d66b68dc76025c8b9b40ee455502553096bc41f87a0192bdcbd837111630561647d1d0fb496c792052549721d5c34107f913b9f50a856cd2a8bab3fd1fd04c7819806bb837e3aae3be82bdcd4018cf776ea7caadb01bd767525b1db53e438e1b0508dddf217ad2fbcc182ccd74d9802deb4f9adec65d0534f992df2d130b1556c4d287a03d557129a1b66d55c26a5482d34d546d81b329f6dcae88654c2ed29b05a1497fadde2e8290c6c74310eb561b89532334f979214801b3684b13705007438947aa5207f2109da9c6e3154abe943076b7c1b264ad92979dfab6223d29d4b76ede4df5aea6935ec50abab8eb81a06cf92c61ac1224efe1758de33d8633ec39be3bcc76293f9b280712ebf0f367cd67baadc4551fbe6c096cec625e84521e4515789b554fce4fed902ab0466239273a010ecda0c5805795b90a9113bed5ed21c81e440db80ae28e39bbf4fa30e4a2c92141ba9286813b32661ab58362a7dda153dfdd3f9c3c8ac7a0c81a249cc1565b7dac8f5eb36cbf069d7bae2d6d9458fb6ed71637cb80d18ffb8fd5a65574f04d4c1cb8071cb03bd97998b7526a38092151eb2cb1725e3c4c67806beb7373223551322edb5a89ecd6dfcbf48aa7c9877ca0d1ed8972c3d06974fc29898eb2d3bd188e9e292f235e153f176ba0c835105e25b20f45dc07b8d3033991e9ea5400d5fea274f984b81145ee1fc9ae5367d16afea68ace7bd826770c63bb740fa312f86c20a00267481e4b97f9287d5d7f3a3bd4ebe01f6a4951f4ca50664183bdc86f58dacab611ac9f865c674812bea3892d793b99e8292069f2be52f8c7016b23e4f07606c692ae5fd301dec90a90a342ddaf4364230c97fda563e30bfad924414e9301e7aba811f662f36b0c020899229aeeb522b0be7a783f6e59a3684bfaedb3235c12953e04826d809cc56df9661684833582f292d37a4bfd2daf897c567543dc6ee79edc09f5a56d632b27ee4bb60b204793a14d5a450b2aa246c66501e2b02974207d2ff62b43c4996513088d3848c0995a355033f4cf4a0d51e33b5c91a7924c1c36d25b9f6fe55798034b2f1a69d5fe434427ba4467bb234840a955046badb81fbc8ac2fbb62fd5453ba5c39c20735df5d9db0f2ac6d09d4d7ae513a4a3ddf28943cea3f0dc3a9a250495da03220a19fc545e3ca6642cb2d120eadcc9a30c30181c5ae08c83d213290738fffd7e5f110fd72946eefb151b110f3e2c74f8bdb547be3dbe931cc39e858636325c741bd7c38ebc3a872f29e4fab2770bf34375a108347d6310a9927ad7da361bfa43ceeaadc35d82c0841d5e31fa070886f69186e4cbee1e8f1b9a318489e7c8c373bbe1d11f7ff027a50658dcd5b8b01fd1d91c22a442ada081c9f85360cb6dc2038fc81c1f65eee4c7234c72bc20c2300c62ede88b185bdecdd7648cbe3d152e39abcc150415baf3fea44daebdcf4f39736bddb912f4f9c9767cf41430b377387ad9a74c47c4467bb2276a66fa5078c267c6a45b91c99b0c312b3f7c4014d96a4172520c375fe13cdb50b472e9d54fab1d975b6e439b6b4d54184cddcc07dd2cae9f7f0e6fff8a16a078d0191619dce1058918e3c5acc6efeb65addb5ddc7bbf3192b80e8ac13cccfb28033d58e648332514dab9968b5576720e53dd12763e07be0467605310ad4f51a5a6d23b81222bad10cbe54f6062058da7cadd55a4c9c4cc5f9ca980b0fc8e80b0dbcc8c6ac07518e3679cd6c658a8bd0ca9d748a9e65a8b070915021dd1852f496067ec1f8ede00a3efa7e7850f05cab4e6dcee1d30deb2c1e4b226f5b367ea5a478cbcee0bb8f72c9db7ab0b3de2bf12ac6e884596630adf108026b8f06b386e12f323448845f372b101c5f9f995419c51cc6902102d181ff92a0adf444d2f5eb1c298fa2661d0c95f4ac1c12d8351fe7311be394144ee94b684bbc1e839bb547fc852c1e7fda5954d947c0b16e8b54f6ee1163c44a4351745a5681d0f1087b7dc58c28bd298ee9ced09a112864b32f0483ff40af8e334ac6d91b326bae368ad290f5e348ea18ac082062ce2034acd668d5820dc15a703d9a2c41b1e6c392790825a65ce3b7dadd08e1378da42936eca28b567f8928de9ada3124fba266ce500208d00804a002746051f7229d26e8b10721747005bdbb317f14836c2bef82fadedbdf7965b4a29534a01ca08c908c808241209c3e6ea86853373a2c90639b55a19068c3804905e66adddda8e8d7356af3b1da12a6c58e7cb5a2ba553c609c4739dc1182034e0b344463683204bc9ccdf38b2cbcf95f43c73c4f717514b748a0a1efcf2c0ca8f2008ce3957373c976d00225b9a617289f9c10a64c35fdc6b47ae56e6fab34e9e73f3b1f46badb5368e2c7aa84b3b74b7ce1fd870eec8ff9daefdd97be6cd15d61367e6cc220ef6ff604d36cc3b1960b0f32b0ff3ed27dd14dfa2b42e3e56470eb691eca7373f763ae60efe73860eebad8d232a6ecdc948858e9e29208d44f43641eb54f9a596f4b1a7a18f7d3f867dfd6ab0afd4f56b287dec81a4a88bbfd0bac0d7868432323c43810330aa025ff8d10217527e0e188d710161811e2a928e067e945c2923861432bd73903d3139b40e25227f0b392a7c74bb556e97dabd5277cb6df748b7ddbfdd3deeb67b29b74bb3347f74a97bda6dfa9b48868bdac4530e078116c0a0943b1620e7c7a3891ef8345b597512b5b9f2a94d44955232fbed7fd0be7e3fea6bbf7d3fa8a0a9af7d25ffa17df695fc39953da76a95c2beec1f20fa0bad8873b94cc330f2316f020c23dfbdeef6f47e3424d8be7eebfbe0312a026d922f65a870a5fcd0741946ce7030abdeed7ee5d3ac5c29c451325616f013f7fc88d1c4c995de2169861c02c94fed74b5596173c162fec69163b537e40dc1308d6a5467aefce4f9eac64fdc17e951d621a7d193ecafc7ce8f5caf4637ec958359d85939eb8dae16776b0e0c4f050bb70a3a97b5a082196e7b257ae39eae6da265c82d225ef7580b2f74ee36b9e6a902d0edef08bf4560f703f262295630c3dd30ae3d4ec8dd2ad75e0aeb6e19e75e293e6b71851b94e28f6efd4de3dad32e11eeb6715e65b8ac113a43f8d4360eb2684e4485fed44a3038e7aa55de4af0a953c0e0fce95daf9ae814cc0f75f49b2a86e9efc572d54fd99d5b000db121ef4245882e7dcc8b5a5cc1e776b74377e9d72bafbb9a12dbb7fbd087fcc3c3870ef9877f6cb48061e6cfc78151ed8236cd9f2b12fdc2a6014a9bfa0bfb893b63ee64982b2ce8e00cd1ef303a550c439fa5ce8b83f36ffcc43d5dbcee5cb9f39b4789a366ac7abcb0e2cef8b3733b9e2234e186dd7367c5e80bd8c34fa18d3b7f3621642677f6bf8094c72e11c3335c3f63fe99049f782671bb0ba0cb3ecc5380cb2f830377dc856a177a7ec6348d0b7110a17c16136d348eec7340df70fb89be0e9d46030cba7f4c4405c10e681c17e01bfe246ab3fe94d0e71b332cd2ecff66146bed392a5c7efa3dfac6f7688f9e45ef9f4bbd0eeac2edd13818d04511f80633a08b2d1886afd4beecebcdeac730d2d3c440afd65f88c37ce6ac468c20b8f2e3393bc6b4ecc1267ffa4521bae3ff8d5f28fb0382c7116868159a5042187a6376afa10e014003c5a990e5fa871f03bae861906ffc18d0850fdfe01bcaee78e8f857b693a7cf9151b4e7870038c5bcc7337dca0083d1854f3d483119e053a9879f480eb27a7e610e37c61b6e4455a0224f6efc0912590b56901b7742365ab0a6b8612b6955da00bf1443e1129f7a6030fe0e07e3874237fadc4e8261e24baf6d18267edc3a7a7cbb67edaef4b2cb7e9a3a8c70dd639d7abc4518727a781213516d82368d80794454103adc6824eb11519e8abf799e0a424b40109e94f6405259eca2b07f634dc5ef56446d3b720bbbbde6f168563421b15fe744d36bdf3851b0db87cd6a1b9ef1e183969f1843e1210c400ef26d969f621aeefc50a860552e6b1103213787cfd5bc7130b33cd43b1d2db680e4ba5cd6620b3977631c9a8de72e6ce2aaed485db9b03b7238e8a08f959f9112cdfc90f4c304f3e9d7fc40bf7efd7e601ffda828a5bce331bf1ab718491b3086f4dcdfaa9ccf7ed6dfb13a53868d6ddccc3164c453ed712aab9e0cb8c3cb8d7170fa0746d37ce20a22a22a3329622fa78d1807e9143e8ec086701db09f1f04113662da4744552622a2626a3e479e799e314a8f7ef486d078727070dab0a1234609508236382e0807332a6cc82e3fcd9f6f0147b5cd8cd2ae32276cfc1232d0a3fc563747f13845abe43ee471a1d0ff0d85423554b3e7b20f7d1dc77d61e82bdf8ee766cff52841e7663440f0f071809f84e03efb397fe4024bfaac83750b96d69f4f93bde8b39088ab3d8a5783f2d6abb11ff2427b4316890d7de907b7efff299ff2fd48cd741ff7a20f79f5455ea907ed863ef409d17ddafd8e90756ac1d29f9cb210c03eae32d0e654073957d2f81a9e67ad1856eb6886989043fe6643e5a5ac5e11bc03ab81816d9bcf8783f2eb16acca7b36465aedd9ddb53e8661d8536ce3146f93f1619d2f575e26060d76e5c3982b573e1907a511195c178557d3a91a584ad658b1baaeeb5e6a51a3c64f2a2f657451581f3cf357a6e4b7ca8697a597335e9248d686f586421fe3a71616299ff42b3fbd95b932e724917ee5b79515d2cabb784530e9b9d341fa64565a58be763d28608c31c6b82ccfdd03525a3c7959bc520f9910299f3ddfad3b231a80055d1deca0f47ec6fff05ffa120d8d7ff9171a5244440d8ddf5153c3f388262476e555de86aff443ace1e373eafb4a3ff897bef4fda0f1fe2a8f753a8cc8f81a3cc37d8dcfb87ff9a895517c60573e37cd57790baa7c98877d8e988263841479adf6ac97e6cb786963937aaf343f1e33bef437e454e16393f26e075a8361e4d7f03e9a627290915fb895820ecab741c3ab35783604f2d64f088c7e7713820d6bccf072946478d50cadda3ea276f0bc94b246ce0684c555b41082824b03eac962c7a6278b2ed4554fcf0a4e8da36fa594ce398b886310e1281b4d3edfdaa42cd72b6a23835c81048b1660a1c909c4d049019033e14609d3e51e2d926091035b2bb394b2636412a9d61a639cb40929c4ca95424c8f31ab18903d27652d9b5f6018463fca8f7372800b188661935229e48a10a3392709c56366c4c89e9332a513078c1a34b1d9e51e2c70c280c59019d879b9078b9b16162ee8213d582cc1a1212689157a927c11911013c760e3e59e244e883be849c2847622c9123a2651c28d3f22c5d09e244a52b0b974a1d1401a23b3c28fb82491f180c578a2c3b185144c74c6708592257c09438cf4d7276298a09452ea4888a2051d52d2afca69038e7356ac7e58edc5be119bb8c618390729a594c618e3e4289ba89113ddaaec8d8889b511bdac10519028927e3e2fc121c0e51e28045d26a226f646af754077e8143cf26a569ef42a5e0dcbb7e838688583dd4e8744c55342e5472395975245e5db9b5fab60af82611f145c06b8dc03859c4bef11f95971bb9683fe4d5c400e7a8809c9e3ba84e59038389f7bc59f5e0888e4d913582e8899e315acc80546a3423adbfb8bbee019edcd400283d5c2a5c2f56fe2a0b348c4040cfb37ac61636bd84494caa788a4157599ca87a31b865ca1a80716e5b9902b9afce91782ac68ad60313f859c4ec8f5a17c61b5a42ffc074531370cb9ae8b5c32370c892c1a6c4827a244ac9a8574aebf8a6809c3f86b9e280a0c238536f9bb280d63b8de052bba4247af5d0e7261c3902be40a2d711d80aebf6889c8e5a0ced56860454318060aabef720f184d7618c3a753b16ea7ea54602c01830946545ec444febcdce3839dbba978221511cb41979f084814f4c5eb72cf173b352ef77ce1ba22574489582c97f48e21f9deed10454378e0ae88c5309e061b762a96c8257a2262a99e995cf9ac8812b93e17ebfaf77ca1ea71ed2c7124dc14a10b413714b98ad005d6f5172d7154a79c8bc0052b444dae7bf58ebc4e45158f531927bf6045412f918b16a13839d7e90d65d1150d727f1cf4c984187d1c74914bb4a49f2b22fae65ad71f27769d53d6e915c11ccb890d3921d75d0efab6e4fabcb151a42376aaa8e4762aaecb7971d0a50dec43910bfbc021b6535dff4ee5a7fe524c8ce490bc8ebcb89ceb5c1027c441bfb99c4e446dae68f207aa417673e2b3bd381bce25728572604391eb8a5c4e442e912b4627b76be4a078007ef083e83ad4e7a1526066c9b2bba56ca9975bdc3b1eba1bb1b011e7b68c41dc24617554aad54ecf8d8e901612561195ca67fb174771cf3670641fdab0fda9040cfaf012e0c05d143c13433e2e2a9e71b9fe5c4f717d48f3dc9f50c83ef734f6b9efe7b80f7d353f422f7a0ee56b7e50f183fbeeed57eae7947d20a9f68c8a3ec4893ed434a1527f3e70dffd0fdc77df0fa1177d410049794a8ae8abf981f2f63b95aff941c50fd1779ff295b2e754ca0349651c4d550adbadc23a1ebce6d81f54d0d847f91fdd8bde7fd847f952f634a2ef9e06e5ed7757ca3e1f44dffd0fa2ef0794afed0784aa55497071ef1f4444a580e811f238c5f588285157e2515323fa2a4d4df77133320b6014330e56009f66f621ff6447a81a6b1d43d8b7eab270fc54552a957683938384a702d1dc42c107968732a54d9b9999735cc6653c046564788b46b81cde851e48aa7385de6bb83e80de89a8ee5d364e0dc3b51d58ee745430ac7f0ef79c1665a61d4b31ecdc01bc6d0423b0eceb87cd2822a2c97f130183feda6f9e08fc8988a8c9267f316cdc9a06910e5225ac111287d5ddad4311cfbc9601c30ce11b2c86c1e11c20cb02428687fbc430168ee6dd0fb3e662d65c7ef21b2ad066a3bd36215a906c99bd58c93379422da8bbbb9fe766c5d30224d5a3a0f1ba2ea59452fb7170f2f88d0dc10d0b3734ddc6018c612e38c901c017d85073695fb0e6d2be705dcbc2752d8c227a8c08cc54fdadbbbbebceb2af0689547dcda5b9b2db747a95615637da4d0acf8c73f6ec1863dc7ce69c737eac229e88cabe5abfead5cdc7c6f70a035bda01bbfdd9e5aa88c7411fd8f0a7147c9a3b0e3acff44f21cc2baebffca12b70facf335343e2a010f8a45dc1a06b595cb1b9600521976408fd1a12ed0a3ee9e0c6245c806d37ac5e68595c0f3717c41c86712ec9953f22fa46f40d453c3c339f19c68661629cf2ff294de1d996f01b2a100d3be9200cc44d260f22aa2882948811e4b2182e6771842777a394364102932ca0706501c54fe5267711b0e12800a5eacf2085a4d8fd3267a7637e1f54bf3f1b12a4a919809314f6f5e3688a48087243fee95182d32304a0eb4c64a2c9070ca039789c08e2809f1d3936641ffe9927f9f3c3c3c9a6840ea5f465c399135f87fa4e29a594369d3a73a7d6e9eeb35f6e0dca8f8be848994c61a58341231e9f3eb3c8e4993b53c96c4d2bae3f534a29a5358767bacb13e7e6fabc99330705f6ce9676c44f73b2260bbb61e18c78280aa8e0419d2c37f5e74c1d2b7690d427fcb71a546b107ef27b439123866855e3bcf8f9b6bbe732fd47fb72308c7fc03f88c6318708c11ee0932c7286ebbfb987e865933f175fe408e9d89083ea9fb0a02034af6fc6304880645daf30e7e4c975cb7190b51b5ceed1420b37c67abbebebddbcc2e6c3f1703c1ccfb6b570f561f693d75716a432a13aa941f549755526d79f69f5a9d55a12e91f04632bb646bff22b5fcdca8fc2b8131313469ea8d39fdfe6622ba2b83571f074632f6c7f8e48b1a71d60a02f1c826b46847a7324750e6cf877847d7b5a6f5ba743fbcdeb2baf4824fad85afd0af4554ca743ab3e3ce35dffaac457bc12cd0acbaf3c90d4c82bd18cbee55bbe9a961f3d90d4c6e2f5cb739b68ea57097b96277d8b57a271f99677f9bce52b614ffa3ca7154d5ec23e1f3cd5f22d9faf3e674593579fcec565292d28aff2b5b45aad568a67c411f6667c837e6d853ed40ab5680bcba77821a8370ba5787c5b3c9942f1b29616169fb059afebdd778eb8e2716ab4d59b738760a01b3523aa2b8c3e07d8e288535b0fdc841bdcf8a12a2c96695febc5b40cc3342dc34239b061f5b99d2bba8c38a25eec7d25fb6fae1ca4bfad7832b5327acc0b41bd95ae789e8aad88aab5661e7de61b6176e9579fe860f5a93fd7eb5757beaf9195af0689d4c8a7fa74738d2d4e52fcbfc083186344e17add74ddbb8ed2fd4f63cbd8a4ee3ab24e175b56ca3276777777f7cfb6ee7cf0d4f6fd758b8901411eec0b49198f0686a53a4358cd6214a0497ffcc4043f61f4fb8611d5a736d17bd5117d199bfc4359ed506cc5b22ccbbe3a986528cf1fd62b0a75289fad55646d8844ea1ec5a91ecd6a1d711db666b9a6cdd5bc71134e4e91d6111d073b734e051bdf40e38020d7e41db4a9e7d753ed36092e437be8227ddcc793a4d7b12eb9032342a2a4df41f322c34a40ca24d2f34c9bdc6314d32d524a2bb82961c3a923637f2486316265a80a1b92aee777ce2ecff22eef1ff3def21ea35c072ce32c8deb8e870d0baa4ff26a9030b26393223df56a50133fc5120dcbcb78195f8dcbb33c90948c124dcbcff8195fcd8c6f7920a9cdc5731bcf55d1e4e295684aeff2a5cf6d4adabb7ce96778259a1a7ec6d7f0b96ac657d2bef4794b47fb7cf0948c97f1b9cbe739d14444ab4e6450ff91e1e313f2a93ed5a7fa04e5602cb0407ed2de5d297f44bd3f1125e3fd7d899f46bfb2a2f195e1c9d4c8e364b8bc8a17827a53b84ff13c5583220a0b8a267f111634f2380733bed18f054592b51c16942243864be724e91ced6386c172c4168f532c1ea750bc70fbc0169a9821653d231c7beec18cc5e3548bc7292fc4be5015dda26959b7b4b074d0cb4fd47f5e4e8222aa458cb96ae96e61e96ef13ce53f11558382fc27c87f82fca7067507d5a0eaa45b5a583a2888d226ad465ee2f1dfd82b105037691faecd6271eb581d4b5f3ac5821882c533dd4ef4c8331fcfa05ced55312f52105035c5c76060a50685fd71ecb7cbe2195ac45116c071148d9b86300e1f5a063c230186f11fc2c1fa96c5c82e13ceb6cb8367eaf7108e6a26b80f61ef20000139e460c3c64bffa86cd8ac5aad6dd64ecc0efdaffdd4a3f1e8c763e7c7eed0ef20c04cfc72dfe8cf888d281fd8e49f05908712d7417baf3bbdd33b55c3c929d23a0224a241152937f4fb61f597bed191c4dd966ceaafdaeb9e7273b8d360e34da4b36ddbb66ddbb66ddbd63dd73a681fd61093d23eacb1b1dce4399b114a29a521ea511bbeda180508271aaeff2c031bc07f93010d72a36014a549d09591eb9d6acf48e8354f5553a1d77c7beeb9ed81a4b6cd9b3edbf429f587bef9134dfedd57eae7bed76dedb56f026ddf0cda58a759b38f1f4e0cb3752bb2e5781b8bb286306ab25a2e3c5b28adec65c36d63f989b11043d0f5df90340e1c47751f72db91eb9b15dc3764f7cd30b809a4da26d054691348358136966d51d696e32723fafd37d656c44fd867cfbdb54c55ed3d455911b5b12a65b1b28d1537d6f67d8d6c5f0d1229ed8b40c2e6d6ec0bedc6da5859b6ba61e14c20d5ed10582d141d29a5abfce43b3d7e23c45b8ec4595ee4fa4beeee5aad2591fe7947add69248ff9db3837ddac626b4f4abe91cacc088095248602ea0147d9e29dde85348f1f21ce006f06f964d0ecb010ebabf4d0f441a20c5fc76c8c086aef21d3f85dd3b2afaf10b49a065ac46934d44d1afd41f4be1db13aa6e2af8f04c03814dfe24124abb5cde39f7861d37f93bf497e4f7955f92fed912f6afeabf146d38b885b372c8626264423f70958cabea8effce0d6387ab30969f70fc14df55ae42d151498289e409b5a01dee6aadd333d9ac583d4f60f53c0108b3bb7b00161482626b0641e666f9d1b3c130300830406d130e32f103c193fc086a426c9c8d03193673ced9c575d3e48926972900d7d8e42f1e832e12f194b4a088ca5e7372ad4fe6822b682ec9ccfc627537e79c73ca9ad15a6ba5b56a61d06cce39a7a67d3548542ca3369c142c8f64295b3633bbd75a6b4479aa86c900062b28850496850e52540a46f988262ff18c2401e1a58329ae016a44d56a2d89f48fc3a4157215ae0fe11b33b0ac1c40f04c0f2cc4e0c2428c302e33d6317b617d763dcc2bbb07cc2b9f7e9c9bbc59d55e7fc2ba8d8c73de581e2ec836e7e4c9cd4219f1c2c66779b3fc679852aad35db949296b446d20a8bf20b2b03cdecd7943755672e44b4a4a29a593524a25a59b17567651589a04a3eabb7727cfd0d575ffe60babb3aa5e11d54db02813dd7522d69d785d3a5ff3355fd84a0ea644460ed55e946a2f3ff9d6daacd8826c39d75f7bb2b1b6239b6abbb9fe9481808080808026904fadd69248ff3d852777fe6cec11e0a0bf168148246b27900c024ad77fb309b2a984f8697ef675fcac17f2d8443b1d59e64d4fb6ecb7b1b1b93b7aa831bf1c1a11abe9d05e3c76681308ebb8ede75b2f8b35dc7eea22f26a6843d28c90c6c5be50ce8420018c837e21a837be3f0272c4f8fd19a1dd0e342ea514eb287502f402629f179d3e88b02765218c2f76bcb432682f9ec19ed402dbc4f52d094c4429a5d4daaf068994e873f8ebe5a7ec76e510e7295a60e6c9d3c6cb06a475488a794544296f58394fb6de36def8b75bb16ddbb66ddb3cbff38b19c60ceaeef64d8ea64f003f84dbef6f0307804ff27d58f60cc2cc62cbbe700eb97d059fb0ed7736951bce9dbe1e439bc6719b96216198fee94d9e1ea0cc89165731ced50d53c9c499375367f6cc9c7964ced55ccdd55ccdd55c4d1d9f73ce39e7f439e79c31c6a963048b284e615e6b56b8c9351d07756856cca9ed683a55308c6b3aa156859caf55c1333c3327ec5c69397e9a2fe76ab5da8a50bff3e97b737da347f897d22f9c73ce8fd4527ea6fc19c172e577c4bcf18baceaaab5dddbbbbdbb7277c9074f7511d5b163c78e1ddbd5799cdafad53ad60b1bbd5d7cebd7f893eb41dc8463045d86129ce1fa9741889f3057037550446defdafbf78b67b2a71fbaca93b82ebaa21bb2e631d765987784839de7a9068aa8ee9da438af44d33df7dc5783297912062a9aebb8cfe19eea76681e1034b88cfa1c31f15d0e0239d8ae7669e1fd7b4933691c7dbdc6417f1f5fd8578db3830027519bb03e5c417eaa4dfc84b95cae9c22d449a807fc8931bab45c745c5c2e4c5cac70f9b9fe2e475c7c5c96b8ecb8f45cff28595a2c2d96164b2b6a33768c51462925a594d2cdc7d670379616cf381db51c1c1d71d0bbbb35d2711006b6b403bdfdb11cb92995a5c533ddb521890d3ddf17aeffe7c44b72fd3d1e1a496800814f95e7b421b9eefd40b8fe2e3b2e53306aaed8a51583eb2f60d4a8154d53062c2d86d9b1e1e8457560c3518bc6147c12e1d06889a2a071e48a88d4e0e299ec4560983105cf688f22c5f5d7a0c87878a65fe3c2f5516b748467e60dc350c1a7090306fde76aae306cae5c5a9e08c74fa31c1745c1a71191514b4464f4626949517f943322326a8d5e218bcc6ec8d2ba5e6bf8c2a7b8fee1e835a3e5c2d27269753bd470b3af861b8bfdf4aa942950841c86c6056dc5307ea3b54056315761cc15c378c6d3b96ce8d2a2b14363e5d27269b9b4300cfc5149c28350fa37e59f411ad98d8b727e52064ad031b8186141122ff32775824a169248c30982923881137020853b210b2c6ca0da94104554021431f6288189db72b9c70b27606c1b14b62d57ddbd688f72c433ee4f7a791b23ae0ce384b50c8e86e0e424e2c61ab12963c46101fac92949498a3f23def83b681ca5f2f302746395b95172c78f6fe373e1e8c6fef84f48e60131fea49c5ff56f9e529efa6b8cb149246b6b95dc3d80bf0abeb818d89dbb07d4b8424c673aa7f4b8448888e50ffbb294a2e95f297e3b84ae17b6eaa7c931320f6218e59e952f7f742634be534a298661943f23e49ddf11530e01ac31325fc873f6d77ed95f23d6540ea172a4feaa7df9a18ddf9f75d0c36ae7d35a73e357ce56ce7e63741311ab96617143067ae11e996ec5faf2df3c3b3af59b29d8e941c4e6906118ff1ec8fc8c61e397eee47b1011e5f32508227c4414f74cff7b95e486cb1d8eaec6f5a7bdf5441ebb7f5720f41cf79de242dc2f5153cd38a4bca391a9d0b78412a214f79ec2e87fcc3864547b2c8890a4ddb91ddafb448d35d728902b62dd28465f1ea3c256fde4426a61a9988d265e19a9a4a05851a8e3362dab189d327acf39df85242374f20fe3fcbe8e888c965572d273b9a4db72ab473262a5c772576ef56a678497b0fd2ea594524a2965f53825a5942c9c94526655f61085d8f9580a5bf5930cc662f5930c977b5b68d780ca61b3fb40ed36ac721917bd94bb69dbc645cfde8de3421c16e2a2d7dd4dc4458fbb9be55038150eab771b712b5cf4e8dd5ab6168ec4452fdecd859b5192118aa7705e590219dde3179bacb2f6c086376ef00c5f195f021bbf0ce1411895239ae65721f6e6868d73f95f9e44b2967fde47a64ed087532868ee9a674bb831d91293f29966c186bdd33b7eda90f06ccdf9c9e5a7523fb378c16edf1d27c68be3beb08b20d93e4d7bf732962ed89043c2b385132b67f989b77042d529dee205383ff44a6e29bf9079aee3388a532c06e261209e1ed134bf566b49a47f302686f513cbe0ac5aad2591fe41f985e0ecc28a8be3720f129edc2007678605ebdf9d047796f889becbf5f3e323231313b3134ffe85df83beb0c0be380915d96677dffe62c6794a70df7573cf1df718c671df1ee5b68d72f56636dec1a8e2fa7d4db0f2c35ab7a7dbcf9ff17eda829af8c9c9eb89db78e3f4cdbc1c7eb9f3390549081a13ddddf5bba9cee6041373ce39b9a845904e30e1042c075bc7c848f94ce94bcb28ff49a5157d0e4422e13e5757328ec9d338e6d740dd546018f95ed8f95b8acd111bfb731846ce2f64201b1351d9cbaed5ca67f9aa2b595eb07ee3a0c4308c6215ab58c5306c625f5c39289f465667031ba54cc98fac9294724a59e7aac51ea3c777e9eeee5e44cc81d9469926963f8cb9fd950896eec0e6e0e6f65b524fa175fb650f2b40d2bd2cffa601c1caef771e9ef14b065bfae1fb214b3f643f52fcf5e557a2f96ae8cbf84dece357a2f96a80a4b20f8ca615d890745fc650e9712ab6f3b8c715c44f09b7e3f354f9f40d14f04c7f6d0486f1b7364cf8abc530730a36f9cf1d26ae0eae7fdfee0636f4d72ba2a493f69774f2aa88a2abc68105cff4f712d8c4d338e2d73f7dc3df352d26460002b0c186524945a57d6e60e387d289ce0d49570ae9e47a4f246cb4f9fcd55f6960fd7baae88360fbf87cf4fb82bfda677ae16795fd2a080b7230207a8c1e3dca4c6a52939a94527e39b2d0127a2e57ab06041b3a57d33df740522220226afb4a345be8b707d2ef2feb01f143b265b09d0d7ee3bcdfba2196e560c71b25c4550e31978b2752fd91e5a7fe88e32795dbefcf035f1960b02ab7149f278b315cee7850b951e56073f1c4f527d1c6c1203afce560760217b4ba65a5dcb12304f67a338ef9ced92fcce1b148611950b5a7f3a97f391cf386185d7f1dbc234773ad091bbf847175bbb9518d836d137dbafbf4918c35d658638c3541562a2e9470d1f303061d141ec0b0a3451496dcf9bd628270f1c4083ab7bfa6857028b03e228aa368097b8632f08dce9658eef159ddd05f62dc2d5a42fcc4b7abcfcf0dfdc53d3e3eb7df9f445514c22cbbabb53c30832e030c563e0f524ec9037f2c3f367ea13ff6b3c6c17e31fce49c133f557e3969c262df1db1dbb6d5f8e475a3035daf1de8d70d91507df8b1db2174fdc530fd9cca66df413ec454f605c96727c2417eea1d21c6ca413e4290fe56f9f013f718e1c9edaf7154a7fa8584cac3da7dc81bbf2fe64dea01b9f373f627113582eeeeee68f3f9abbffad810c8eb36336139ae5468f05d04666ae6ece4d41d1cacc973b95ec30de5ceac3b40d0485e5cd7b8d0925c7fc66ac5240e866158f7a49eb58aea7c348716f1d37c235a8f880a3d50e8bb009bfcbb2c54ee0b3cde4305c4f21386e33a64aa5a671137f56338399407732d063acc5cb992a0b02419a421282ed5e8bacb8c9a45dc73292b8693438f90f3af52598795d18775c9f5ff56be1a954ff1f15142b5a7edc508786ae559463ffa6a469f326261f9961f79251ad28f9e346a61a181dc6a2beb6e6cdbb0cf8772251a95d1ab3c90548a57a2494919ad8c46cff2f5ab547ff42cbfb2f22d2b5fa93e4b5df99511912a5ab1289f48b4d995506fdbb6f5cacaa8eb01c21a316fa650fa5345f342a7b555ba5552ba5ba5bbbbbb5b4525a5a98aa675aba474b74a777777b78a4a4ad316eb35a4e86e1ec2c072f076576ba5748ef1f2e127bf37b4151da4a6bb9b7dd4ba39e7fe012045938cf32b29a27cf8e203503f1e3a986128bf48e06306ad04a3984bc040f8145f29a8910bcb0c43bf30268607bf84b80e999fe8ebe503a319c3e41459551f743d8831621123318c572e42119c2210b1c10facdf0cc32a6bbf695e582377b7c46411110b879818866118c685b2b0e1d4d121715e6bd7376170960d2d8967bc7f60e30d490fd06ecc01466b9dab1b164e8e835d92db3f20ad82829c64ac226264ab26992ac379654182827e7efce7c77ffcc77f58be1a966ff96a34211c61891412edf2b171a01b13137a90ab7bf3c2d2dfbee96fbfb9ffd46a2d89f40f8231f2c130c60e30d0ad36a27e90bea644d3f22cdff29d00482aa3a9a8944d36563d0b158d000040009314000028100c86442291503c269465c13714000e84944878501bcab32489611432c818628c2106c880000808cc0c364100b090f520aee00f021b228592f43607c51d15d083317e7b7189c1c11cfef31f555b72c24c20bc443b858a3da826c3b01a7a940923b85e60ea3017fa452e57ad6830601a0d7a6054291f3319509bf639b9a3f228fabf96f7be0976ef4ac766769655aba7fe287a322843e8977c535612f1ece7aa62aa54528877f0750d81ab62c7c9fbb14baeefa9b4a290c09c0ff52fadf0ac5d85dd228058f52486a5ab90b6d6a33b1f7818e39f546a6b19955e23dc99d035d01d1df50a8283b6fe54ffac58c60448a583e62d78850048a5f0fb60c0f635c21b7911c5d5b971ca6b978e5fa98f9559cb4230c042dadecc01890069d0a5420cc965d9dbbcb45afbddea2141e5f35983afab174cd8f1eb945b48dbafa4226b40df568b842e45b3c152948e8fcb4371e02ea11227d57626d0d26a9d27ae56b81396dbe73e5a77ad99d6639fb02a46bd86036c9c07447c012c62b02a3e8d7be4550a6ae44e511707300b440fa4352a1f9c7e367aca4dcb2661dc5775789b516d5a902aa3e8bd4c57c8bfa367db5aaebf372e4d557cb3026293fb5c3130f8ae33c812bb5e798252c58a98464ff09a154a0dc862553c4d1895064058fa890b1fa797c662012dd07c54535cd615464145edcd1de84cdbda70136d510c93d6aad182e11acaeef52cf43dd30bbe6c2666ba31e144cd88662ef39efc144c3d29c82557bcb785858c7ff89ff4932bc09eb5256d7d6877bc0b9a7876578fea2698111f258b14e06b67dc5f4934704add7533b944026729d8dd835166378f4536f08ac3795e0c5c69598aa5c15aa944a38226fb88d6fcc2188ddeaf7221b094c6685173ae79da2a0b1c9987b50c0c7a578c7864d0880033523b1778f0d659fe93898d8db6788944f7ba77908161a733523ee58e30414ff3af810446a1f425786df30a9dd2ae1a1213e89f4a9e5404770c688837dbc7dd120b561b66faf42dd9a3a698ed4159d0652f0387ff18e7a580eb1e9707bd1225f58d4439e968c91532572fafb662dab1f06b47d681d168628eb98f210d2e44c67a57753593fe3010922e35853102cde8b1d7093969c431bd1aaf90679aa5509fcba4aecf9effaf1facd6790f49a2209ad85b25d1ede8ce7b0ad364c48003556cbe29ba79d7feda312507889771b8bb0340be4c481fbdc5cc64a5548f1d4996a81ae3166864bc912eee63cc98d88f58ef6e7f70aa793e09634192068eb50f0f4a6e25c1ac8f5227a30b08502080de50cbc9d84723a7d15e6e0fe4b2aefb3b0d0e7e285a571783e581377fd1eefadbbc8d65b11d262e3e9fa96ba4d9020569ddf7793708958813cb7f3e8084e3217e224ef7e7d1b3484d84a162c6bcb9cce4e01b81ffd07e50b41333ec9380a9f3c361e3b209af55c27b652eb643568d49dbcb09a5b0598a2b0e1a1964945b412f3f17871b64794bde51eef1b8640de8ff058246e2ba1d1051e9de4598ec886699bcc042016a5bc861e5e62ec52682ce1c023c75d793fedae85716d66d103afa843f404b49ce174d3aec72ba3bd758db71e324dd765ea6d6062b513e6c71eb1b1f1832ca05f4b699ae27a269da6cbea8d8f31709717c0e18e082814d00c9128b6e38294f5d4f7bfecfa5bc373ed4a680c5497be53091839e90eea3e644461231b69369855f92b03892e20c2a19b6307ef42ab45ea2a21ebb5cb65f80c0011d876a22aa8b99f82259bf29988a6d898c96c4c192ed35a56e046220d94b62b0a9bfa032a099045006b701de01659d1a7dae9f0cded1c2644acd05f3f6ef109be315047e3d10e8aa7263104b44218162618d9f508d8cf0b83499eefbca28c2d7b507b64ff4b2e4a478906bad3d9c4355ab7580c1a2f9230e491c68f88d440b41f3f93fc2b35930921c1aa94365277e236e4ca1a1f9eaf1e5885c29a2cddb8a78d0fee2614eca2bf98af7675048b22d5bb1ca9eb2222849f7e29fa0a30b2fc2b04ee177b41fbc892597dac0ae89b3999b4ec8c4e93e0b98942a1e2e40bd78af52ac58f42a3e09910f8845f198b2d71db960363989b0850bf5ab2ac51262a4184aac8829c42a31a51825968815622831520c2546c414629558528c124384d833014b872a0ce3d878a1cfbbe0f5f8ffd631f7fc46938689cf077391caf4f7cc63ab72af42f0e7c592797eb95c4a8c8557da7f0ce074388e2c9e08c33c578912ebb02423b8056832f15e221ba5b53da33d405823da519bd590fbc761934949b794b6b370032e7049608135b642ff19d63680b0512a118bb7710c5f32adc394d6ef7dcd59782292fdfddb22bcba95f473fe9705e00d9e431de036078f54b7129dc0de59b1b8f49beeabaefb4bc31cb8ae081e7f7215e0562ddeca2344906079a613c2884506ca15834c5cd09f848ab77182e3e9c062987fa279e08e8e998175952451e3a58b93a79ceb6108322ba1ca3fb2af92c60da6a5d1996ac1c04abaa98495b4885d0b2be91f2247f3439d1831b50ae3252b5ef84a373850ccaf82eed4bdbeb940770ee13e6f3020156b46c6c48399b742d25759b26b1c313f47c8aece4bcecd699586768cdb51dfdd5fc3b0a8ca1a2931809dc3306829fd18195c958d7d5eb69572c3be46c705b39789f5de6bad3eb42ea188400fe2c727676fb657bb713f23fc15dd36aa184b82a468ebc561573c6e3673d5a72e0f67758ceb44ab9badc93944b2c3e0d1cde28f3a5c9353b144f7b342abe3b09688d04481897c1c2e2d8ac145a43ad3f0583269e4de85c77c7e6a7d2f02163ce5caccb8f11c71b83ebdde827a56bea873f11d15ecdeba144dfd4aa6dbd47a61854d5c295624dffb3547ed27fc0150c58b56df995e7b3c34fe71c759d169ab677c38a2177285941e663699275c3d8266ae6b2c43b38e272535dc54e2a6d9dbd95af0f7067ec884d91f2cf66ad41b8c19c2eb8ef999fcce0fa2bc47772ffa251e699369a727317445c71851d0a472032450df08c238b0049b2d04b4702abd5ec6c6932a276b9253a04c063b6361b1c6f8dcd7d7682646b5683e8ea7fb526af0ceee6f009456d8b8d0e290611f2a36dbc0863af4fa8b2b322f929ee89378d1a2ad32c6fb5b62eaa79b29c4b4300536c90d26524333d1ce2f5f9bbacf1ead2d6d6165cf3d3d285cec0f3be2ac27d33e19b0f53d6ca181b6ef769a9138b62e3cce66e68e780dea02d834ed37949c8eb6774479d4d2854d630303ce72c8989cdebb4ac37a607610f308308cc8a80d331340e5a5ec5e2395e9ac28b9b118c7540b481a035d453623a2706fa3acf2b74d88568b839a55d66f20d0fc04f8e387a7da5eda1ca897e6157e1223dc40b222fec699a99b8bd98d3b0cf51732b7fd6034de3719857daedd765d121d41c911977ecadc5705c393646d07edd05e6f0b11ea9c9eab30ac3e579fa65aba318cc9c0dd41fded72715c6ffdd005f169a2773d8715e5f3cced4d506e147e04951853ba6edc740757fb21a5db4de9475f4012541f7e7c2c03aba5e77cabc7d109849fac2b867d7bc844e004e9945af23d2d313fc05fa798c54e79d5f5269be0a00f04853e131663121ea9930f143275ab7a45269a5aa6c4ea625db535fb6597c0e86ad8a287f07b3092f3f795388382dec442020a2ada15a1d8d74766b98d505a2aa3712431c66475f3bc9d71ba109e5ad1b810f4e87626c5f14d2b62a291d66343809eaee6b038d9a4428ba68ffc6c3386ab73004e43a80205cea3c0d5cd44a536cbb9fe7dc404d9009785e3f13404ff8dc1a60d6599f87527654a4ddb2188fb9a5e79b8fb8f38ccb48f77c4d43eb4a2dc972e53f77ed13403a1df0d85c325a8c2ac5788e22bd0c349f8077bd6a1a8de63d924e6d9ad142894be267e05e9ca2170f578b9fa16e87c4cd611b2913f91750c4ea8e50025fb0bfd20653016f6a62b73509569d332a03b1932422ecf2d4bda549f23be5469591d131204807f56707512c5f9f75b91a4348c057c49bb2c54d9d8bb9ed083e410aded135704713b5d414bf985b838e615a578218b91f2d8d90a13f94af1655a29ffe4965bd2250f6e43c875190491f53b006de8bbd017d153bb1eba3979513ba6510969aef6577c7ffac029edbd899e3c74bd9f68faa6d629d338c39bea99b352b8d64eb517ef09b5e85e8a08ae0d4353a04c5cd382abef9ef735870d815a114c03b2ad53dfb92a7e905c53badb08d24fd4f91fdec315ad8b754182b6aa67c5949c2cd82f37dac6e2d11d7b2fa5851559cf8c1857f92d2584c4715648340310b949e518c21b1d979f822cd3f71d05647d735fe91b3ea519dd0f4d310d83510ace3a7d771d13d7e4cbb69b40959f78c7317a454065f996e50713dc1fc5fccaf861ae0474283bcf9f7bcbc464c1de8f8207b031556575fbd957e1b35208b82cf8a1e65d639659288abc16832479c0eece33a458a5b56ac6b80fd311aa2f09e1b74cfcacc24b3020dbf14b24196c8f3b47c82fabcd2baad8580b9a28ac3c42a1e0b42a27fb2c3e58ab5279c72c9ef247ba5f330547d7227b8f161d2e24add4a25babb2646a2862c8a0ec5d8c4317a28b8e6c14425b15b08cf808ffa67d4d94032a94050e83bba111ab3e47f51fa504e02145e4a6bd2cbfa783c12fc2a47cb86096d85d20fa6319ca51131411332ed514c3db242a5e31984cdc94354f7a01db5aab902b1d7777585eff840fe49c8c752b8c3db6ddc87863287921722fc38075f75b520266b60cb14b063e19d48bf4b302da17d335bdb8ab0cc9a9fc309d21e6cd139c2ea716e40e2b5280751f558b9852e413e6d272805a1c426dfd42f6139040b1e186a8021b887031d0d3efee8b98c44f4405603e79b4da4a711e43ccc92f0f2b312247885c168b9da59c608152c5631f1e6e6f9cc19bc72457992581db8eb251e89a4d4c1597d2709538935793ec7beeffd0a7001e10264e522286638fa898bb9ce4e6e6caadbf3b4a72921e125b01bb621b2abbb166ac23346d9be7cfe3282d1a6e013acfecf91dce0274d4dc9a9f33ba9ed0b0949be220ec7e8f49214d8a98540de9b4ad1c825e22b8412f3505ea79ca2a32801f21047835a9d40a28a4989948ed7eaa2e8efd21fa8b162137972b4f88eeff4fe2e3a966943db95280694e22f15c1a704664a9f975f31049ff573394140fd1284cc2278c5fa6cdc5ce638ed0cd811bf697d7f6f82a015867de1d9fe3a4500a077fb01e28544401f9c36ab73d42317ee9818f0f966540064faaba6cb820f5d036e08279f561b6d94c9cdfd9d812b38d6d16032a548e7b8c31fe13de488325a8a8dd60325300549b2b51920e5d950b593b3bfed3ef0ade93c39494bbced41a6890ae0922c9b59388e7e49fee2d78ccda20f81fa1ccab5b6105af5b1152bde35d145a4914f710d0c336223bc4f2f69a2c44f5303aae2bd7698737751181c4d70c4f48ec8bc12b261330f9abd641098b6eb0afb7600fc4390a11b2d270a4ba29fe9f82e3bfc9e4915d2a699a4344a3f77c89d6fdb934daeb9a8526ca1192a946bae339297bafdc210699da2d33ad309010e3d7081f704ad94b714cdad4b82648d84e9315c61b56f38601361396c65e017b4f514245514de41355889340e68942d701f1fe712a9ac7ae01a9a72f774536041267f929971c24e04cf8df5d2ffc1bed565f091db8edaf79a2d0129019494d8ea1d328753c26536ab8af464873ac6d2d67b534928d146397e7f9c0c96f9c177f45ae00fb40a998f10fd313fb94f7b10a1e711e56b16a70fb910b23726466c339435a0d189c4e5fb51d6ab27ab0d75c7fd5023f99b409ada11b9695e80b261e150e202711c8548253a1313d8ec75902584ec470cc08e158c8c89f0a782fbaf812cf15cadaca88e6acf042ff461b8c5003f37426df756f222dffa234263409c2959a665f9b044d2f4c18f06eaa1b62603d83445508363deb845f51fce91b9595d5be3f216ff414147d20c7864591f42039cb3cca58b2d7e80644740b895cd996179814c3a94f8aeac76a78e9f2024673982ed7e1228aa6cdd6ea9e7666ccf6de2e591c3baf9e8a941dd0ceb420e028384b4c5f63282167f5e782170add3a06057b0005fe60a44d3b8869b37932a1746dbf959d9a79d3ade758474f81f08701dd4c1b567d9f11022c489899046285f423684ad3d4242d852454e2519a17ded6713d3191aa7e889cbaf4cccad46c2c0ff31caf08033904445314830e5ab78d83e62783410e69e79d53560a9616a7de18b1434287c063dc5282a9f67f6ac4b1b6a9660bfa7e9d6efd50be329a211be29596d70193cc9454d2cc5ad869d1862eed324018c4d0c435a497786b6ab5e2aaecf55ee157e589b8cc36ee268a8dd2d6d1bf1ec7557ea31fb0a98d6980098ddb7957c635c235b4b75371a5d45146f9a6897908c8ae008df0c9a2268569b5d91d4270ea6a11a7f80ed5e869da6f468ad5776841b4ea8f3aab25c561ce32c7b7bcf1a994db909662ef314226cb1f039d34dadbb25ace151c40f044d7cc8a10e6e2ecccb71ae6839bf9b70141476b5ad04f08380e1314c5a22958cd656d111b0b196a78dc5b049e15cdd4f7696b3fda0a6b38e1f6e4ec6e7a02f7f9e672a8087eb9972b67990531137461d3121a38b2a25976756bc7bbb5474ccbb2a48d3712b239edc163719af797d30d215a5ea73cfdde52e926136c7d2facfface4bb696e6861d7fed833daa124326dd7cbaf64c10c079e3aff83f49581a24ff3476125e8ca75da25717164e4abea8bf552c7cc2877c981934c9e31d7e4d4790b39ebc2de35f45883d1c524835be1b37265e8539141e40cdf507634d9086b2b49ff768d8f302d9d68e4ef776d4acb0ceeb039942871d3bccc18585337aaaf7c5b0854a74c4df361e5089e7ee0b92afc3cbaaab90f1c45188461e2d19c120a3bf392c75fec46d334e70f44a72ce22e5aa5dc18a50145e5be8cfc29902f6934808bd82a0dae34027f3721d1671dc402efcb1c0a47c6e996fe8249f25d31270983d0b7092217111d4e82913f1aca541998855f78e39eb90d8466bf51c4a24216ca89415faca24717e0fea86adbdca1d7c65aae2bb27f84451bc21189afe9079b66b3a665df1ee9ccd854fd0a647b31aefccf7d77b3e718b773a24ebe4db9294e3fe82e5ce0b92d27fef5b7b0c34648e2133f6ad117190736e8d9fd1be3fe8cebfea01d174f92ac2ec2835800b1564d674d884298bc9cd06f32a29ac39c9852465f1976b893c623651003d02471de286378cc48bc4494a19f1941c75f47e47d0d126ba00d508da83b8d3811432d5edf34f57595eba592cb6c8d9bc0b8a02428148822c0c6efe2a8703868e51d24f2264383056d80182e34166373c2cbc69fd9549cd10d0d61ff011fe1798862e7400d0a0c3178a6d3870bf228dc06245d4f00270788e182091a2e01caa95296aa327c684e17765426763df84db213d892c3270e6f7da2ba247abdce91187c21184239fc9cf0e473808dd4565c5110e6599191bf5aa5f1217345866025484f14bbb3f2b45a899c5a1e42e6592fbfcd768475a320e989429c1df58a7830922e59fe922d76cb29fdd2440f83b7a83f452a7d6bfa80784001271f83ae1bb58f96285a86bb2a285175f0ac042101503a93ac9e28045a676a327b01ac313c9a1f439c0b95c25da26dd801e776bfca8ae29abd892ce56b8ce8bfad7e1013e0021c8557f4393540af83e56df18bbd1b11532b18504c89f78496032f305b8a28711845690e06c2cc51d04038f21d854d6ab1765a82cc4e2d68527f2411021e61725d3e44b0cc9445e5209411ba180aff1d8569cd68f3194287e8fe3937a7a9c8ed86a80a83fc25b1e7618ebd9bd55702a7318432c46dfabd17e5cfe7ea3e2b89b3bf70dbb11b6f63ef6892a011572753f30ab031cd2ca3945c6843097c0862356db570a08f5d6998b4549aa7b906957b3b3f1eb01852348145079c10ecca5401a0c14c6bf91c3fc9e936ba9b32e976d6aa8a0cfc32d79b57c4c8919870fcb8e30b429f6211eb1a89c4e0b7eeece61ab05da5cff2a073694c41ee6c2a1b3a8aee3d6cfb411e9b216ffa7f3ca6eb90d99a3177ca9447f4a685dda3cdf86af90e978ab4ce26511ad159295085735acdf5a6700921086ddd8ab884543e210b1715563506b1a2683baef4a828be2976d46c0fd07fc33d34254a322e11a272f1735dd001575705025dcdd25ac8f8f5e03a8ae2e618c039789d657b063516695b7c1dfa425a4af03a775080b8e0138383652d7a4dd896641e97768050a3ba7b5f1d69d32ed58acf2bd42e0798eb6a5600e8abda0e532eeb5438922f901fc89464c105a604182e28d5e40f815353f1fec035082fa2ed9f307675b50203017d4d7a23f471fd2d5aeef38b41f5f2daf3db29f3af9474240865e4210dee24c7309f921845151ff9dfb6c53b399d3e493badab87617e54a46c6d42637379f828b33352b5adbaa3562252c9d01ac21f784e52377dda811e024d33583312603b935c05f69f64576aa8b83269f4f901edb996d6488bdb8be79600216b4d53b9a922b2a2feb9f6e4a18c2ed59e763ae3dfdd7c0f9c5c9b14705cef7b9b3db65a03b0f081d95a6f545a560bacb9bab29751982dbd74147cf1acd2b502a4099b7a90899de46bb80d03499c22584868582cfd13bfb404585a22becb699109e4db1dae4e6dc78a9c9dfa2c7f36f565a7e4d84a4ae00e455d7cecbfac4b9c3969c6ca24f14fae7ed874a469e9a37304e83729d9e1c2abb7584babb46a332fd2acb1464e3f45628c295ce2a9eb6af3a439a448374b2555b49c8dbb725b2f40cb397b7c269441eba9e64f0eff99664653485b203c57b9f92063f9c5c8a799e3631f14d4b9ff16153a963035f49334eb543d602e5a2e439ea22b160267ff8f75aedd79855a62b2ed631c03e19d5893851fbb1817bc77cebaad0db25647fc9e642a48f09f08f3d7a1407eecd7af25b0a8c1c28dcb8a07ef0255c8943e107985501ae4766d43c2790639e873b88b49dc1ce633102981e5ebe0327784c62f6d03f10114775652ab93e37d9997163e2e6b8a5aabce46ec366555c32000b176cc8a25ebbe61b41bd4d11424da2df4c5fbaa3bfb68770d71eb7e0e14fa85a71c288b3d1de6c6a0eeba7f5c1f40fe3626af0d2aa5b085c37ff1d7a87deb21d6b56b0b42c3660ab75a11d144d9080d1faad0ee08bcf4f36d2cd9e9f2b02d19af7bd3812115919d70252bfb8012e13c184590fdddc0d8eea10fccc2a36e4ace69bc2a222b078cadd08a097ec91103761d6617988a21de68d6b8153edd48f0e9dfe5d035b7ee4ca848556b9c5df0456966efcd183c2b4fa794e8afc4bd84aaeffe8952bccab0d30f192bd4865cd6c0d6f021dd801db7379a228b25bf1015968190e023a1c80c3872101e55d383e7b338a5f8b2572364367307705e62624f20fb1a5bcc08c8a89a84a5c1e08999b314918af41019fce3ca3136ea34f4d290f60032b6231fa5579ffb1855cb9f471a65a61bc8f2367cbfac8f50dc2041ec80edc10c757234cff8220426a63e277af294825c5e166fd77c6299e85a51e04fa0b1c0e0681f8815156d3c24ddde3e59d73ac536632bcd327d0994ec8906c9f96d87ebff5d482d5af25e194b54745d701753c3395d5f309df93d2041bb92f318c8aa7fd7ecb2f1f3b4c0496351f80f317bb924fc326fc7011847eace2b3d34e66dab37ce01aba64e669658926ea179f323dd4cf9d70cdfa839ec74d23f5e78cce6963319e87f47af3fb303106d45a5a3009561ff55a6a5b64b9a021d5347e3a92254ae51f9fc3474a2d0a8d9b73c9beb760e36d8ff4fe9add16aa003b99d9d07dbf64762e66184848363f9e959fada7fe9c1b494d116821bb1cd5df539d578ab63d88bdd52d22b1f9ed65ef47cc4dc58567eebbd3886aa4287518cf490d2c2681067a194965506c6d75ae68837cf0ac6ddba84df4ee641bcb37633db6451c8e9b075e341b06aa067d0bd6ac9ff9a37b7176f6d98ae6c92fb6b25e27ff241586cadb0a3658bd0f5723a42155f0335d77a7d35814355f111af915ea469cc46d86a05877ded88f641d8069b9ce4376a581e4c264a7bf281860e2a3cc20e1a75afd6f9595c43958242352d81dd8880c52aabacf696d1ea0964e094249b67c77316c1437f09fbfa020a1eff95010141650ed25e34aac0e80a836d502de3169ec8e7ab65cdc42a7ce0ec3e4d4011a9a33a8566b901046775c42108885b4abb3df33e3ff12032f0ec77bd1ab78cfabba4118beb28253761ac8f49e420f4bd810ca38e68d143a7df2a71ccd8ea620d32d24bdbc81311b54623c2697220708468bca89bf533e0b978144084d827da049a8258d0183d12fa68a2bdef43c470e70c055fcc5577a0e841e9ef4bd8c4bfe495e32275ca654b2925aeb4379cf3f3b53a20c6ab11c09a495668c7441de032ebfb0193df20f6ae65c0ebbecee19150d96c42d3ed1f8824bb3179ff1286894f90a8eaa6b5c7683fded337d11d9d30edfc53c3dbdfc978727f2a5c326b903d3436cb96fefa5c82c59d0274668f131d272bd3a1c4c553961f00d38f36af81267399c6bb47476a635bc170177823fea983938006668c2ae56233395d057548d7761f5fc14054371fd8d8f87b5ce389871769f14e6af447076397c8acb57b42b7b6715e2fa3c5b476da7e645e1caf53d123b13d4c28992357ca6d9aa0b29480c9b77a5adf90db37b944209eb333d9880c703e12c906d8708020b899b6a475d747ec5b71f1a7abbd0d56ec81b92cf5585cef1aacf3100a191227e4af0cac486242c610d72e21cf83749587936616bb84519dc21f2c67ba4bf1220bfe9435b0413c23e347941b544668f179cbf83947355b756fcefd369d5abe46d41161a19a328a13552f4e390f949b184be3f7344c996d8b9fa221cc44e25f3327bb69eb26a19b269ae2ad4c224824a2797f016045583d6e08bbbef9ee2e1d291ab5e0c04bbc0d88b39da3f95a3f2abde718988490eaddb2332a034c0d4080de6883f2b692286c7aafbda160f3acb9c7172a1030d5564491b0c404cd102af80c8210b464b7d9e054da2b9033c5e969d92745eb9532053fd5ce5735b5c0865fc08db2140c36c02030dc5c80ebe4dad5bc394421bcf2d97a37b5f30edb12e83d59be050eb003308c130b83119fdc4a47b2a26e91a4e14222160189cce5065e01ee85851852b1c60d8928472eaba377e4f7618519a1f237961c8f9b27cad36258b295deaf6c9f74364cacace88fea28a51a16c58ad690a9c2d8f0d26bbc8c24bf0f4850bdb44b050717983aa8713a28df48aaa2d09090d60972b01c107b6a107e7856a0bb22a05d4d9c693afa4c1e675f0fdf68683802aad46f30511b0de633e45563d9380c57f4afb48b3764dd5c01b6a1a32ffadc4b7ed2bca3583cda670e4175ebec9d294b0662a1393f5a2db8f0eb90d81ae9758ecbe95474d3be8d5365b2cb182ad0aa1b8d11b096a3a08c849f9c7a994626b5889e212cd30ee63d0a859f50a4ecfc53a4c780daec56e50a64c4d45a02186ad212ea8946cc75c3c590176703671067d27919ffab2a78497ce077e423a5af3d7e19cb73c54a4f42814652a852a8c847e48d491704e848c1c1ca9120456400475efb801571202021541a63aa1e197abb5d0491b3b4c4ca656e8445519edb30bfd338a23001559e2b1a12a6352032cd7b24f854d0c5d63bfa947440e60a44fa164e8645057159ba3256a92c0254f7d3ca46032d9c56789a32fff251acd21b71421a547f052b90e95791bab764c5f8ab7c2d59ccb3640fb0b5f89412aeb50851bcfd4049600d26a221ad2d16d324ffb7835eb2dcaf318b0b99cf131f31fa5592776a1d6319cad795929e29273928956afa29a680a0739080e3723250bf2d84ccb6477050bfdd4bf273a565a0aca87b3b34e27898bb46e265be5aa820833c3e557716655731f081eb215cfb40acb1950c0e2f7d08102899a25e3939486773c9a6a25c5a22eb3e7c889c71e3191f059c6119f94a294bc832bd1fa015c62cb93bcce4e85ba11421925fae73031d311e9988021be0540f9eed15a6544506b2889c1b56784b7111a8206e88484582c4d2ade9626c1ad149b5fa135729717d1f6ff18b3d4ab3b0fee7d2453a702669a1b773236fff3f2150c60ca41f5b182a98f996cd5331376d4269e951be097324bbc0b8a7eddf9da9caa2a4076c486497dd4599f5b53c2707960216e7b1a7f9a35a728a72c1cb062f4a4ba64ad6d06ec2b0670d010575e7c2c5c549145dce6e9a5c0b28ef937d76dedc635e984e360277d08c2c2ca49303169d6f0ca850be4a91671000f6481fa52872dccfc7568fba16b279e3e041d5771aa269afdb9229a4908ba2760da5f341c2d17d17d3d457c501daf5a3b49860a900f38cd85931b3ecae2174ea26f5b99602473fdc592066c7375b0bab9bdc69db5861dd047c4ce803c515cc0c43583ffb5b25b87ecc40bf5e0852645f660c74d2c39de6a8feb408b64c0f97f1eb45af824a4e10d9bd576a07f60a757a0edcbe2b2f9bbe6daf10cd1a0e8b68ba9a37e2075620107424086ee661eb2ce5d8f59091d5446fc730386ffd394e98d3db33cacb1c6b3ec7951797d94564397f98247041354707419deb7c2347695ca5844436e7fd254569371688a6a2292aeb35b7eb0a01931ae3ad3e28186392d098c2606c900fe3f721d249a881f9c4adf0ffcad471f7d4e0f52a7567b7a7add006cfd1a4bcb67abba8af02c0f6fd27e1fbdef6c4103cad9e14a475aa8ce89bff50b9f9141f6556eca8a9b62fec3628aa87380f5cf45cbfcad637f3ce73c4ebea4a97b89ef7639ca2717ada0c4dd2f00c1862b3cffe1c218b23f6083e8c02c8a713630d90d9e00929cf59d65fb2585085a83e37100536967164df44320c69525427e4ee02b0f58c57325694e5887dd982654c63e0672ae8e8086cf81937709116b8b2bae308e9fd50a23fa16e8f6b02270b7374d46e2674d1a8f86d6ecb7925e79115b14e2ed214f9a4d438864685c3806e22545532fd1d269323bac27d1c5d05e194e2d8899a8c7d37bcab58543e5568be67e78540c8f88236dcbe661d3f7ceffe0af8b307e62d4fe17814628f9fec1ca2c82376e10236dc288ad0cf3c97245cdf05e120c565c316a43e490291ac4d0818a84af4c8a07d039c147f2da803a9175534930a6659069212501ea6924ada5651655990dc519c8278c074d08989fcb01b7f19fecd0409c7228876e8f5fb8126d61fef0a30178ee98d008567ea68fac6b8ad52f43a814f810150a033b5a79ddb87270ca4ef4197a810ebbf60d18ed885f1ccef22605f2268fa8020bcd9601b72afdb1e43f9013b023d71a7d202e412089209e20c2b454a4e93e0cd12d743135f1b7388f839be10d978a1d23c04fdfd9a8b651846d0693310f933442bf4d61158218755f7e65063a93117b92a23aa01365085d9755f8e9d80fe553a0694ba6e3726518dda3c85ff5b45e1971b57e10f1056be0961f94810054c12ef04cbc6472b59cd114a06b2d0e63f704633c2d2a2ea302eb1c7627e7112a7292a14b3f98eed744846c7968afe90bc73323eb943d06b6aee1c735df02f5ea9e43fb22ae546ce2ad65818d90ef1b4612df99f331c044fb81ed23a38c4d79d742220fb49424da6026929f5fcc55cf2085dd29d6259c935627fc1b38fc039aefb5f5bd52866d28ab6f1b674ac4a17d17c0faf850e984c06bf82ee0a3508f80b05c38145f7c835712f02a592701e7f74fdee40be95ef87b9dec78f494d5cf6b282d49dab352758172e9f6af4ef9e2d4b63ef0f27710d80b0125c9c739abea5afaec6d573c1ef0fd6912b63ebb078cb31509680d332326c91cea73d6ab94b6ef65da13aea2beafe241615ab4ae9ac6b75ba422e1dc2bbbfa155c17080a1ed45ab449bcd4ab7c2e50e17750c7728c3f1628ed579c2d90f74ffe10c25687043e68b553ff21a63787f3455d28d28f241b9515a5acd62521db63b20e041ec5ed88043d7e73882ea1f0e61feca9c47bc2efff818b154c43b428fe54970402c19db143aae3ab713d2e7ca029dd4c35b8c2a092de818e19194a4b6f38fc852c3fbe4ad41f907ae1e53ed2b42f721d99d0afa0aeead36f6ec1a545d411bfc34d16ca89eccbc9401621cff836288793f19101e8979df01bb151463b97371cb61f356cf9642982c997d1ef1433c58dbd4aed05671d3277659c121a5d6d801745a22cff5f0cb1be6e6a040b30d39bf27dfbe541e169b8fec3a0f4000cecc507f792608cfc8edc486cc005f940935e5d6b3fa68374a26ed8fc924172cfd47622af203e7dac8a56d1a1de74097235108b70018acf90117654685553bb52f938f22b9e316452bb7117319528fcfd899bca5982df3d0851370e0d0f1b88c3f9a960a09455a6bf441f91f651942433932a3300d97d7e8e24df41f3be56d7d59789516ab34dbae9f44055ca2a1c79b755b57f822714951530f3cfcef1ae93329cc15db82c896c23ac17b58a522025c47dc8e6a04fed09cd8a48a212dfec6fffcee4a3e87394234f3907378aadf6d9160002a73484bcb98de561a5e4e46a5de6382c437d79e056804da1cfa5a7415794c084a6a0d138889c96ddd08dfa030c981783a07a3a0a4bb456912e8ee0eaa5b0e19338a44901b6e003fa632b1702e21d4b0e1c7c998d12128807a18ceae70218648bb98437756d7b91a7595d436008174b2eb84df1581b172ce042e6060271af52bf407ed0ac6e6e403953e45ae988ba6a856fcf4d6f0ab381eed78f1cf2f207439ed4a3c725853fe2228d2e9c28944964dd3ebae4a4cf620d9bd3782c29bae478eaa01fb49f143572ec14d9cbf65cdaa7cede666b809d17cca424c0950364f07cb96273164cbc57c73d141ee1da1bcf19dd419308250a0709098808fdc10856da317ce047904eed0b2873ef45c4b5a4a40d3302eed33d794032c486889fc43ffebeae5729e8db143acf42e26199c698f2152b0d4e3b4cc3d1f8096cbf5cab1a4c4c63dc7e141f61190ef15ad8f5831e010a575c6fba1be702978c8945b1f08d5f00ba8edd633ddf4b23b0f4a3a5387f1a21687f0466f589f8a3f8da6562ed09a8391e627cc17a15a50a726214f6ad149b67ec5452f4fd50a3b8cae65f4b43434a9005b31eed4fc69db3500cabee87e5062011bec29a3b96c12d5a5f1203d6744a290386e19855e04f45f5b3c60f62d5df57f744784cb838271b1bdf55eb4d76beae5ed89e488824775b63ee25c2be19c6aad09415abce9f1f2c7d072e98e1a1850bcad3cdbe6fbd7fa8f188353f6adf13fb2a53fa32e84f3212cd474c933e1e701546537e7b7406f936871b6811f3f6d718659c7beb6f4331d527b7b16c510bae593bab30a25c6395a9a169d8a76721511624bb28391c58b26d894c099f191af92661557667b31a8372584b995af96b3ee2b8507fc73c4ac879470328b9cb7d7f8eb206925529e230af283cfa4e76086a9b38643d5422ad7e9ffdb330cb567ad36e667edd48b7c1566710557490f0ea844dfe49fcafcae7001ba02e72c19098cda4ffb0ee2735fe2af84260638d9f7495e9a53995a73816ff07701c85b2f3ee471b7d01311164f476d1a4b3a295ede50e0cdcfe71d96b17a9e3bd46493485daf029f5c4211a501e0baf1ec9618bb01a546b491832e1346d098e1b60f5ade61152753ead7e4e27743bb03cf3b67c0434803f1cc48a29d0300cbd9fb0873d9452d75ade43063def1c408680d032b815ad0d5fc6294d5e7ef1945d032b0afa1ef4e8132925b6c48731fab75f72de87036e3d980dded957c58366300326576eb037a054cc1e72908e322050910473b6622134d40669c94b4100b00485061a33516ec08bf567c9d7395d0c06d00d0da608119a54e7f2be508df97957b1f8190213769efcba842f249f53ee69ad02ebed02496eeccde655d703ba4d6fb72337cd710b42dacc44b3116ed27f4b3cb51a5fcaedad6d89ac625faa29a66451b7277162c195e66f046badc14decc5521394c218926d9db444fdbc91f9b81fc8746c0f771df48926e936b73e16ff2ae89f31d6b91b570a4d3d95d57128eb07885bea20a0dc0e95308019ab91ad98f0ae8b65cf01be48e08b812b846221498074d6a9c098b0ad466d032d2efb89b6c93633bf73816dadb67e7b469c8dc56089662abe3f93274fa192203514b77106c4d22bc487ec583a849655bd4aa55569eda1c93fa8cd16ced1e347d92ad689b54c80f001354e0a726ae1190e862fc8d9f9c0351886154912ec572fe21a384570f19916621ec8fb88d22d5652a0196ef62d6e7485b7850441fb3460265b189eac47be1f8812ee14c6667aeece25b2745a5b7b4d0a22acedbebfd59a19d20d26fd7ff9c6598bef06cde77a68bc000bf288da1980fa982bb9917ee51b40d7dfce25f740470f63b611c7e9982a384fcff54e78b65890427b525053ed94c9c9753b4c1f645d04a4cc5c111c6628322484662750ff2fd12cfe456fb62dac2db544fc686a53e33fc6d109aeb10e21abb86b314641f76ce4dd114e44510c3e9ed3d5fef1344cb073da970cb8b7e0a0bcc9caae2738cc1e5449bfe2ced0d5eebb3d5b55c5adda371c260192328f6ba11adb168bdb99b33b2a42e8b5693d0439f614dc225bf9726e246ae780206427e4aa0257b92e5ce8e2dac656cd091b8e272b2d590d5e218a9a32f82095c6330ba2d911a6f3e0ed77f2aaf1e6ea40ab92d5dd4244c73d6016474b2f1f607c3a09e48a5c091c49daa639803e392775b142eab2ec2612808427c59072bcb8b78f20e610158a894ae5239194ed40378ac6d3997b7363f0e66b05c0e0c492050096b35b9c727acb6c3897929ae0c8698ef6088e007f2b62c30ae4b3312389fcbbe15b172095929d8200cbb077107321dbaa37c440d807e1208302a86c57a3dd8a84262200b961f06462a1bf8ea2e8a0d916fec62887d0aed26a771b6bf6826fa1363d6dc1c8191e52efde063aa7ec015d043546c1615a91fcf808e22a8d2651d4f58131aa802da1114b4671521c129b0ff682c945d4c11b7b3218a20ec7880b0dc84cf59bbc60bfd11844cdbc12c421e8a4823c3287e174c0d7b6d532290069cae77e5694813f27ba2fe134252eacfb1064dbed366491cedc66f1b60cf5e5f2982264f1ef146a9ac36d42061ed54c76269f0f156054dc60623e0808248e56bf160145059502f4ae9b522f7b09f5b6979ea63d775627ebcaa72f413b549d359be57ac1ce15ca8de3d14238827b3fbbf7a1f9f75d8ac7ec9c6cc290d7ff4abd49cacc6d9959df72a069e44cc63fa0b8badfd0b970f028ed293ce52b909c8ede001f600a408cd802e92c026e5ff36245d273a27d7220a8c72811c1a38a9930e79efbbe37873ed53dc13aaaf6819163870411c31459e65d7acfcf837046f989d922fb435861da012a9079e4aead897ca655c8b91e74edf62c23518d63292a96db6aff688b5fa0f07733f516941d7bb6acc4bf1cf1a5059967d86458cb52c6cb3e85350b003b794aa40af112740ba6371fb8470d43194b6d77d33a4eb64eeb3fe5f97c6ae42cd777ff3db2815e670aee99312c403dfcf2705b686f326c37bdf3e043577c91122eb80cf6fb94758d1a28869eefa54dbbd6b395d0e65bfb339da5a917fcac2ce34d1233a318cf9ded1b199cf9dac45d7447e5fa5178719ed1c4e2b9d302b2694f4978c2ccda1b30699d55f5e7e18e517f0f4155074fb3a4dbd53cb197f5fb7a0d390a21b3e8bbf12c02db3b6ce049158507072d36e18454b33a46d711049f75f0e79defc71a1c6dfc170f4bc59a02f5a4f0a915bcd776621c33ee11286d1e3e2f9645483ef6bed8ae0dc5cdc0aa1c8c3a00d950b077bad1d0b61d12b90e6c5ff047896f78c59b859a190b3e6ff47c6788523cdd9f4902b024d52dc424c02295ded490875804836ac4c08e7fc0d59b35a31756670cdd82a1229007c54f429147b90c01b93780e75cb8875a7aac393f741d90c79fbc1e8f58812632f1ec748ff6490fbe50faaf0e59e5cfc4155c0d1cf517258599000fb686b3b3d4ffa98827734544a5f976bd0ab8d7c7b9044b731e811574b83c8e4c392733de82515fd6fb99821ab7a978c2c9bf91f93bc1797eae121293e34c614dc0a8358248b0255296688477de3fb0b0543002fdb3f28d9e585f17c537ea66f5c2f7c54167e0448076bab827756ed424a36a0aa76b28f0437e99289c3ddf0e116a29aab8c01e3e636be36a7881ff8b6b0722162bd3518dab19530af0ddd6d4c2f6f62c0f7536f90c2943724c7ac26ececb057ea6dbfa80d749ca0305521a1ad731d7c06086b52e3381f7b2c5021b54a3012b6c8f06951bec175b8345a46b0c39592530406bd922f648344da5e014a72c31937f22fbb67057761bb1b0643309f00efbdc184d814ffa888a78971178af6ca80120cc8862450662ff269ffec91748069a09908657a9e27f6d89b59d763125df72c7b7a8c1a90d219572974279997a1b03dfc48464c83fe374b7615078ab44b1d5ff4e411b1b4fd1712ca4e00554b03ac9c9225d7964fa53f735d69133b5df25a18c40af1acdae037238a160eaf740240c74b550a1e6eb4e5b5dba0fefa3a175e0719dee387a483ef731404a95e354a637add00673bfeeb74b322f90e09cf6d4642c817100837dda53d1c5abb75c1b58b7751b33c46031919a5123b49a18dfad9bb6ea01ec8f8abc94a49b6ac8cf498930728397914eed8208229e0c24675d973728ea65531ac7cb01aa05a297a8bc97ad619a63d48e21cc296da58a348759e606bd2753d1799ee41ee36b3dca43e23885c85a30a3a40abb7bc4315e8a9c2a39f2c91e722557acc68fe2c8ed265e6d1614e49dfdef0d4d10b5a4e3a6ce83281bfc997d4fd7f42a680493cbef82d272558c979a897e5430eb82021cb2ecf4f7ac114e4d55e10c96127c9efd789699ee66f11f73ca035029c36f6104984df17a4985fff4189673f835cb90c604eabed516374b7f77e108b7d2623833d19c5083e1497d19cebdf19b52f3f7d724c04fb294583792d2085e42e6c347692cccd525e12e1d876c2a1bff9728f0d312b072df03287bdb166f67826bba4fd5e212927aa53b092a67ea3b5fff8be7fee657aeb57952c251bfca9f078c21990ddb710197d24cd048f4122311ebabd75dd9b557b2c897037f11469cbaddeffd8dc6e40372ed7355780d04f1fa544f4a9f80b6c1edac8e14fc713f2b2b82587a5b3343daf296209b29b8181b1cb128619fa399d7a610f2daeae1b0146163d97e3d0cf3002c180f4ed4318fc54c50858071a8c9864162458cbd597f4063ea24cd9639faf6251ad9af9db3d174d7423379c18df0789932a9c45d229d12135cf2fabcb6bbdcaa836ed8b9801f0ee9197edbab740dede4513441c99521390a629b6ecb8791a6a7895e3de2b648a7629e4a48ee8c523696a31f9815f9d66e46069e0a02e35ff322224ded81b61e9989fb3d454158f83ed7dbf32d8a1791955186e2e9f0dde15806b1c55b28e57e14f41a47670ac2e8e66c59eb2dc29d4e4c2e82616560846420b0769af1a06eafec4d16d530dd14263e3dda3f2f509d6782533f8811daebe8260cd36a03adca064ba41a76684c63d052480832195844a6b3cf1d1becd4c785206ee1c97b5c17f11417a6842107f9ac0fcad26b8922f240d8ad705ec74cd20644a11a1e0bedee1901a120d24f902a94c08f2619aaa8e7746df1a41d1919ac20ee6859b8571b5982e185a50c468c96237e31a6efb0eb55fcf08ada540716401dae31408ecd3f0edcccac78c421e28d64f5b7ddbcac08250d05acc624585c528a4e58f1338d95b1a60a88def1801b31002b2fd92c38cef942f451cf163148385632f983425537cee2b76e68186be3b136cc0876578ffd22d46e1d7d169f82d8af59f648d8b457d69113b41c3f16d2e8b4500dcb29cf5282182cca94a75f91c03d9dd96903a17db0840a828ed5bf0d2d97b652597fa551d7983b19392e8a614d646b09e39fbe075305055ce53d288cee8823e91980af2b075e3fe17e92aaa00c4bf41c4ac6d5dad55b001af37fc83afb4934c5a926f09b3bbe5762b80a8508a48b0f8651d8c772ec1db994e4d0a2364545a5db12b167f5efb8ba8416bac6fba24923190865ed666243ca86243ca3e6a76333be6f2b4621ffbf8acc86ef7d4db9615e65c2935e4d829915456a07cf30ad166d57b7c2820a739e6c581b1b57de20114d818c3eb2f118cee988b442732249801c73c6452bc17c9479cd8a2ff0f8b10e9eea0cddd67b1e001e00164d6945df166fbf59a291f54aa924c4ed0d44ec388bbf0def86e1913fa53465b355efa926b9d4a3b03ca699ef9be1978906db01c4d1730fd3addd599329a9db75825c684bb71561c175ed4013aa746286782957e20cf311f7244ae539fb78717d08608899812e4b48ef8185e9a0c8627d9a2753dda8eab129a1e3524b1ec4149cc624e72b62a50f006701a42e8aef62f916ae77211b3710fa4aa0f989d213de8ce83a377a44ad2b8a820f444e3c5e0c909f8921fbd1814cfff4b5782ecb07ac4596d0701154142270a98e024e259fe9a95bbc1b884e1497ca16c36a1693d5956252c67232dfdde2827cf6a35b6d25ab8a3f4692d316a13e9cda82c33136dce73788d31bc09dd94bb7858cdc92599a0d479a2434078c445868aa323f7daeb1a54f68d1648807b137608509f710725624ac4c8120ba24b779bbf086d3ce8a4b284611071aeb36d84860941050a43520c40645b80f9edb82a83ad65842300a16a0c51789f43957e0d54b0e820b34181363d6e5db2cb899790599704b832828c975165a041bb9d52301cdaf009feb82e54a313ce80ecf3b8c1475426505b3ee671aefe1e947f0eb0a817fb4dc898030a8ee532aa445b88165cb4014ed254c6ce112e08597e7b4782d36a3c401c753623965806bb15a4d1a0fc1bc4288d02a417aaf6a48aeffe2f12e6e0e9ec372a3c2212952ca3af0a63f53c1e36936a386c785eb63082e2b03961c57994f7f1e9f22490bcb0122ed4a3e75fe5ad7c19fc65bffd06e639df7e38496d945f535c653c8846ba090f1044ea08813421c3cf47c3cd3cc20690dda83f1da6721a39ccc219b820784d89dd68f739497cb1cd68402285019a4d12f128168a7a974c92d87c8734ab3768f5fdb51e9f532d902a06f76d99df090981b56d67877432bc34fe2437ab8d59b1ef5331bd32bfe45ba81638aa3619be0bc121b62ff864c2672c2f21369f840186b37ba94517f98808c6a5ec554924d03ab7d383914d6c7c8a81170d7389b96ab343107fcb7ea27d7796d33282d120b7628fd542e29b16d9663be246afc3492b9636231eebd8a8254b23fa60b0d944cd5b9ea0abb090b7618a0e8704b7bd8c138764ea8c1ffa1cdcb29496990e021b69b1c940d5553ce95991198065c198b73ed64602fa9b77220231e5ca0f0ac6bcf4e0b7f394d6a2c0a21addf45633a729f668c86697a4194ba2bc542d0b0f9676d12cb373acda1c8c4a68748c9644df9c399b921926c305846734e5d595e49b3b737fa0359d5bd1ee1a8776d2562c1660e56ca8348238da88de15b464603726c9aa1871d915e9263cf99ef6eec40266792c4b16836e7accbacafb69778d1f73f6caa1e4c4e6333031083a6f0fe4f37e8aef8f5c9d0e6b344bf8409bab402b9ab0d4894d5c927fe06736a902590c4543b03c3ccfd2009bcf028facbb344121ea879503a26e37144fadd9dfa2d093e90d12d46195edb69f106d01fc632088e579722f810e30a4d67a5bab2c6e0ebddfc900f752b6b27d19885d23534f972dbdbfb30ffa5e34aa01bd7414134f1058131a0c6fb1a34ad460ff9a3bbd2741d850bf2d4e191e3948dd40aa4961cd3ef5cbb084840a6047aeb6692dc3ab521fa6d69d033491b88b84fb9630bbcabb25d199874d35264e8871c7a90640447be3451b69f0b6be13a5f8923080a297dde5b1e4256996924ef90d6dfe6c5fd5c294b65ad7e457f3509e2a35f5672a05d4f365419d7338b6efaa161c4e9da8e08bf2f5516212247df0d4aae96577b922424b571b0bfe3914ea1eb0032b5c1df9e1095171ca1b5a4bf84515d3678eb37a68339ee4370363193321db6dc87821ad575a8c694b698186312671269cd42a7755f74f21440930561c32f76831c2f088ce0b77e5395de29e525b5b8a4512212f267785751b80692acd62658211f0021a22150ba007acd0d0e66371ef75e0c217dee00608955fcb703bcc802eaa0ef7adffe84fdf0cc29fb5bc6eb8893c8e17f3c8f1a46874ede63a99f34a8c9c8777e8dc68be3e496645a53af3cc5505e36d574bfe369bb212e50e1fa2e22dda0abf644660396dad769ee1104aba9efc8299253db86393d1c4ee9de319fbd3aca58f374d18c79b2430bd4de49dc55dfe163b8d23e03b32d71bc8fb8644a2049ddc86f966113dfbf26f91fb66e85f00bea00f74a223b6a9bd18221d498f2f494937f0d59e93fc335ad9ea0e5d30c042667ca31436b577a52e0cff904deff6f2dd28757b63ff66a356c243780f90f729e1bb8af40cf6c65e3cf6c6d29b812f8ac4c1aec64c02c5e2743200b1d784dd214e01533c28cadf7afa2004e175d2f640f0ba91f5775cb2831fc69cc6fab3f423ce34bbf2f8f8ea7ef488c8305f31e4c2d032081538481307f2d37401b9744d14acd140d592c4a84ae836451da1c2c8198525af59456d63b885e41aea232457664284a4bb47b8cae9855b429255c8366e1cc83e0e8849551540d75a03767837b77d57f187a9b55c2265f17c0833f7676fdeb831b75b04d4ee1f25be51f97e8bd2c7039efa229c004320107dd2e242d410709086b5b9911531028da41721ed3bb65177b34c0f400b7890c0e2aa4bab0f0da53db24c7fdfcd4cee969faf7a1b20c41a36c88fc79281fae32283d7128d8da97165dbdd88330f84bc72140275477eb7f3954ab95338df9a11e890b77d09d4c1a3a3e79a4d4fccf810763e435dd61a45d7fde2777fbf52adde2e155d427d4a9b050ad45b4dee40d97459eda84f65806f45a16862092ce5ef0399d02db1d6587c6cbc53e51a2d09d0bd557d41f437a7ce80191178e56ad8409a033fd0186a41d08840264203cedfda1056a0a6ec38a67c2f0a67bb7865f4f797b963015ec48110010467071ae86c3e9593cf24e4eee1ff180c7cbf8cda67d1c5dcdca3a5d48004ed178fb3a934565b7cc8d0a606fdc7901be2b458788ac4c09b50299464a96f670dce4bd263074810915e6a36857196f1dfe6e547a3aa2cb5c7a6155e249aa766a79388d51e6471c6c5a376610bf9fe176805222a12c7f88546cfd8d83b60f22a5023b626f4449bcb93c1a4e79087ae95d7747c9973f4fdbbbd6209550bd8f46e1c1f2f938a57a5e4e9c9856a11e5f920faf0a9d9f148c24835a8d6f2d4122c0edb35aeaf2509d8219cc987fb4a866746ba50d80c294c027b4d7751b5e2e11b84e04680ea13f3284bfabc712655a6edac3c43f02ba3a3c593a7aa7e8361adf5c433d653fa3f705bbdbddfebc6aa7db45742bca4d299e6599296ab95cc954812aa1beccd81eb2bd6aae3e253ae439509cc08469e6a7738372060615c0be55300d7df28e519eb11444c1a27e29a52111088150e90ac284315dc8a5cc7572e2006dd408dacdfffb0c2d4540180c58f52f070a0458185ba1667586ebe30fc940eeb150ebef093172c733acb746d12532aa9565fb34ede42856426ee91f413a1093fb29501f336fb9e84d1f6e7b395c88106dbfe4d5ae0594da96d4517341d73b248a459698dfd69d3dbb3d95b282e69bbaae2d16e91a304444508422cf2fcac325c2ae8c247603115d6c8750c7c2de216b9941dc0b3d21997da40014129adc728e286602bdb1462256531257a2060146a8161e888c2dbdf4591a1e0890bef5025d77d8b1cbe5ae7ed1dbf47ecc97383c2d86b9875d73d35bdf539e66b645507f1c96c80109f72c900bf7e53fe5be52b6c0a834d66057e2cb9599f2f1ac51c10bd50c27089ea8f1a6a4fe916b698d94102c906186acfd8aec2215a2e4451045bdb241defcd2c11958aae248e3996328a8fcfe5bf5a685de1c388a436047d8bb9a662d5c82b1185a569f684810143cafe6a1a4b7ee0281183f6c724ad289e09d0163e7f02b951f555f31498ba2927cf28d736ddeb276d9e63dbbe86090e051070123f973b8f20e352ed1da481d8330c25fa846e61c01befa5f1687a7c8e4883642e6f4653c505a8388a19ee11f9e565e7a3a3d8443f1d0bb9e9af549df04d4b5d95d1d14ad768fd3c941d620fa4af7b9f55ee9039eaa48b495a2dd2ad6fbc368345a55ec49298b8477c99d2891fdc4533845890026954a2c11156f37f1e6fdf6cd5f5d03fba29ff4f766ba219650fd48c37c5c2d778892106e3eeb9240156b61e9c56fd36b6dd79cc82c2d655667dfb5e75f5bc5005829693d075b0bb5392db7e33679e966e847f32e859d861d032504e2af321701086e27ede2c062de8cfcdc8936ba8424d5ea274a41ed21f29919c1edb52b6ef7c4d690ee9ec9ac4b1f88374ab15d837df7a35188122f2d0b115afa7e35d4676cff39d57bf209dd2388305d537b10b28cc10d8cc00dd483d3a9e09d4a685bf6d081e535c7833879ed3a9a41d30c9cd5049287b0d4e4ba884cd10153678171d3fb791bc47938d4d2980357915c521c7901ec9fc03fcc89bf693e4e12c77f44881fb71317305bff616e66ac49a144a0e43d84ce2bec3946ee09c6a0d4464fe54fddcab69270a240c13f458930e7dc0d840f44dc1dd2d99629f868fa3a59ce81d9f73c2f2f0956a35f7b911ecf39b9c4502e5cceb233f0e31118dabc9bfd7adbf41801dd51786e28143de1fc5fd5867dbe24c0a87612f13de788ac396c51e020afa36f6bb3c06a69bf0f4f0ecd73ddcbf2b448b5a9590558a8a85bf7e6389d0a43b9ed4aab77e839aed73ebb5a0b55d9d53500e887a09e40a77efb815af3539c49da8a5873be99e315508406668443e409232014a32e1b2eaa80f8d4606be9b7b523879d1f938df7507e5627bd21d3428703df86dc78ca4c513b0da62f9d237b59472a889d794edb1f42262e39a1a7b8a1188a859350c76617881dd2ab8dc212c3899bf869ec4a8b415592a2c5b2f71e9039f868008472b5e0bb4f3166281a7ae156c69866b576c4ae9f7f0b66c693c9c5c0528ad836e86ff252cdeba2c3a2c41b58a7afb80c368efad8b50854d58559b8526245104a937e19c3a38996c9ce01e4bfb37a25d4e48ac2e998827d17876c21e55f1e63d84c0065d073b677633a2f99e6956ad104aa132e4685517ec758eae07a977cbb68cbd1c9b897df791387b91084afe24838f7d126480fe57169bdaba6dab4668a48509fc14ef9049df4df2a9c04228dd3feda47056019d0280839e10156e84fef854907b644bd113ffd9ec2f690383d4bc4e2af049c3c94d84705e84371154ce5736c00961dde2c406eefa2434d1777989ecdbb8bd154e43aa93f3bba1c664f079c7e6d8dd3809eaf98f8d1baa7d8c3e33106a4cba1969131b98bd5cd0d77c844e9e147f0ea8cd443a89e0a2f3772605e67c279643367ce1eb52008b2ac1a85de0d6ee343c516b0d64d647533bf4f7ea2f39ecadfbd96294fa1f27663efe0c520bb8bffb89f9634aba15cda9499260604195a5b258e1f6b6e3f6546e209e59a5ae338ee43f66f99e1241d4aa9325516f3032bf9c32b0892819b11a56e1b3c347a972f98afbbb149b0b782903e23d01f3f49517e7573e3d34fe9aba552d58e70a500140c42c6508a1f2a4f2412b4783a5fab44d79c4a5e7c5c891b99545745d705844b8cc8437a5cec95d7f2c301129ae08ff72d222e5812e72f8a810de1baddc5122766018e9b5e7f9419c4b4c7a56c2d3f42a1860439394e67bbd84dd74f7df29e7717501437cf1bf3a2eef66962d24e761d084de40b1b7a1b00f4a29ecbe8f9f1bbd8088a5453de90cb87b27474be0b405b53021f16ec21f4339538a777cde5d9c36bfa42f0311055bb65a069091263507ffb2ebd515799b699ceb6f230d83ee27b6f1b22881838321df21e28c5a332400d2c6386da11bfd38788f50888bb51b46b20789bae99a07b0a010e24205ea75b2bf0f851f08c6e09e37d0e9eadc3c435e5b613f624f9238599013572dbf8bbc469434e48c787c3e686ce83ccb06dc779302868935d1f1200eec2cdfcc7fa9f26e867cd79057dd12777953d09c0caf8266880817f4bfb4fa320cbefb8cd4bcc020e5529f004587120a54f3ae47c7b1d823c96a2928a01bc5ef0dbbc508b2c8e90e9bc4df7e365a0e78890943cdb128deed5a78cf5d8dfb922a3ef5e5d3426d560c4099d24dd6f63d9a61e4d6fd42449759e40fe5d83fb2e4cee72838cdedafb169cfe33b2cb9b010ed4929934287e52cd7efc7f57a4de979c6b04e94422ac3d81ae0f739637522658187298966f31f1b6653a24a5a67a3b3035c529c87d868a82d585d247f2efd4a187cfb55fecc1e6c1275e016122a18edcc0990b705844dbdc33900ecd5aab5ed8f3bd4805ae049de2d76fa03167ed0b05d855bd475697030f2d9053f20aba789564fd590f476ea5b01c9503ba35479adddc6b1833eed8be51fab08240fc6547768d4d1f6bed8f0b7a32990eba0bfb4b3653e5a0f9dada1faf9700df08b78926f458fa9fb15c15462e429290f2a589e1b64c84ab28052e5d0a30f7f70f08ec61761d9c2a0b2280c7f3acd3502250de003135c0f22937498a8f8254d270bc1710cb64339b9e6208a4fe21c7c84db1acef77af5e629a29e0e06eba68311a463d82c06ecf05a1e09096bb364aea1c3dc1bf64a0e03a0eca3f7954670073bb4d423221c7baf7ce5e7198b650cf3c0b37ef4e133aed87e563f028784b09b4570feb3061b135208bed3c12d04ff00034cf579d0c4ee609baabeca7f8317f027e3ba95290a9c2f1e02d3d6798bddf492caffad9488cfe9d72a5dec344ac9345533971cd89d9efeecb83fb0c0420141a50321b6289d78637f3146654c48265054f3e704778c23e2c8e873e225dbc7c36ff37b458b7b9903d323a3029f96ca86571b373b7894fde85c66eb6f85418e20dcd1b941d290e48df780471d1998a297b51fde5d5c894683808136dd93ff5138ecd9402f11a5e663467e92183f02c7fe8aec113f479bcd6780f7faeac2280fd2c216adf16bfc3be1a11204159abd6c371b028262286d14946f0a0ac0de63a707ea33a5e17c1bf17d0df1b88deedda93216fbf0dd05ec7b58687215921515ebfc143ffb417e934b27b2c51c839e9e562378f9ddcf2adf2ebc9b93bf4f36eda0abbb8e8028526bc317b087a1e804d9a01f87e5ca754f5ec24f189cbac470ded563a0332a271527fc9e7ce8232520246d1036e0006d96d42b56d015e17d85796cf6a28dc70c0c3ea17d40d69c70334eff8d88bcc0e31975310be32eaa5eea0759f249bd65bf9e593b27a074df133b86437b16b6aa41e48a4d57e25f54c11674237e23897db3cc163ca6627029d21aef6c66737af0d384a4eeccbe9a84a6189d4d5878798e0003ef5cae902b0e853a61fd42e34f6a1f130294cc6929e4329e62a8858aaf2183aa00250b1a5227bd6c3b635873b90b07aaf1930b610f3994a5fda28e32c0ea75bad71d8bd000b99c28bbe95e59115df3dc9cdf6b2a4c3c8d46a53504f1dbc9bbb8b8b24695b838492b7e77c4dca2d4f89e3cb97e803a899168b9dcce0d4083da081bd93e0f41f31604c22f34e3e5825fea062e1b7400af9679401187001353aaa486dd57debeeb51446117cac65155edc1a789c3f6dc787b732af1f33d4975bb97c0421b234c4bf847e6a105b5a8377179afdc02fbbb87372794256921fb0fddce67cf0c422f416f1b3cd1a372efe73c6365055e8ff414d1c5b6774f43f131dd0526251fce564ee5e5db29d7cc5fdc37df885597f1ed5f4470b31f9bc32a13943f42dcc534ef0a0cfda9410ce5c64b7eeb134c53d36daa75b3493b7c380fd8858b4e6d1938c29ca36d6997f011b9cccdaf20b74d248556cadd5be6a9f58febc1e64c11b252b85324c18feef54e5c3deea22000245c81b1c91ca11ff9096b35ae9c2687a946c7b635f9d47fea60060ebe0eea03749b1159873d7d4530ef8e90e7e6f05e4e20714e513e15c99122445747286a91c1b44d3d7da6bae891adc977e35f18c8da7a70165f52bdc45395b416e3cca45ed2b70a44af929e222753b36675208555b834224fc687cad03c54351fc708946a862de20a2a8be07bacb65f16e5e2875dc293cd1728bd2df2ad79b05d17d360f6f04a0bc8691860beef70f98b1f0fb50125f5d4d89dc7577c0284bbf7a487641cf52fb2d7dddc0da2d3614ae89ba6fbd02d9fe0803f844a0406ee8760b668aff15b18902a04f74ef1b5817d7c8df1db313f583968753a0d7f683fa5f977192866094c15b1485666cc20ede29f1a5824a1e57dc110a93c120976851269f9f67171c76b2315b82cd241f704e524ef3d9600fbbeb437abf4a2ed2f7a81dba56cefc0a66ee4a2f937410a1f0374e0701d19b0e5f012301a8e57c808924d1b249124b495dc3704d4c087f82f95c2b9e466d1390407aae68a783c12198f3dfbefe2df153c4a61962aa9592d0ed8919a688c48fda731012bd11c0bbeae804200218def425750143ab94db85255e6c7a53fe8b345efd4654f5f6c7578a97dea93e687442c824659e8f1390dc5b9e3479545256ba91c829c60763de9b851bbedac824d6800bbdc90bf4c7012f80bb9065047acf39f5040c1d9e4480bae694ce89aa8d2610049e609d19343116156171680034d96d8c5976a4172464ad29aeaedc8cd36429917f3e42a3e5ca9345ca04949c86275de47aef7609dd33c2dfac6127d9a4eb897da5b39598544b578cddb2e99751981b0ada0c8653e7a297850a8909304e65ecf989dff9098900c003c89edeaef36f84b76463f4fe559f62de8975a13114fad1673bd9a3073767065f1eb8c4200ef1027ea7e28ea1c5f9636ec32f11acd54086a328728d566ef35c0ff6edf4ac2fddce404d01a248e5127d6ae82d7cc45f5ed324f33e9a3a5789d60ab99b3a10ac84da49608e7ecaa21dbb87c7314c0ae3aa0f63d1200976e6965364616aa6851eec657312f2d042c911808f73646ec93e7afa8d811b480dd7a67f1ea8e476fed0d1b0560f1f291c432700ae3d27a8c0176e9096f940cf69968324f35f63e95c6338f7be0bce0122c1439d06d290cafee9d1352d4f441b2ad3d7b5abe4cf6a8f1750182bc2507fc096982281019e8db0a4f97ab8b1a942edaf35ea60390463a3ba21ee4c55b416f8a52d69de22b182054a31ddca1344148af3eefae32357ee567fe2ce95a7a2a04cc512072d9237a4f4e54305fb3ccc1f62b52db1be5859eb1718c9a5a10dea61df97c457cfad7afdc120106e6519c7767611ccef8357f83c1b49203070be3131792f858f412ec000edc248ed1331270e2d4d3c0189a7cef9721621c82d01d0826b434b6f951b7ce22ac8033e0603b4cf3b2217da322b2da6ea7490e52419428180374a0c15cbd4ed4e81d20d248a3d0c84d4f357614535e53927c00253a88e5c334040f9f8852927f7e047c933cabd353506ffde84ee12e6caa2b23ff648051f58a228b1afa800fb37381501c4c7311e012167ab260224158900644d7768b5481e85146ebea51912dd0c6d6f280fd08eb0d4df471afe0b841ab8f3a871667c7130eb728eb40af5c2a5afb100cd63bf061635bac3e3160c42f8210d0d8bf82690d74a45580ff223fef5596d489b1d89afcec6b10d2858560c33815412f56e2bb7341758ac1f0a8ec3414dd5767ea42825bf66ee5eb622cde9d4f1eda29baeb859b5f7652431407316b4f1a6062c476204e42b0b73df10e169e9c87b4152716e9b433cd90ead0c644daa87d5ba0b43a871c2fa85d25fb0e07c0ffacbcb876caf87e64c7f28bec69a6d6e85540081e5b4d7023d7c130ac800dd5aaf25793a5b965ae4fa83c3a3b04b4bf6286b5480dcea3f529a1c25e752ade4d728a17e9439f17af938ba513663d35e5ce64998c4d99705d703dc66f337c505dee16e1a2d7be177b4835b32ca87b4c6f841231255a9b141f4a7b919020ca91ec02b3e12661fd951189c2dffb64225bcfc7ad9b8dc892d0aee83995fcd304c9a1887c6c4c4541b3fea31bd53c21428a9fda9f558d5e007708703af70934cfb9da3440d6c055d0d911206c0fc77228a9ca02a8d9792db89df6d299279ae814b0a94779412f2ab2ae454ae9b5bdfe3a8c08cb46e6e7b5fdcc4399a94e49384d2577fd22458faa1e4a33c8dece92f34dd6557257f95a8418103d79cb8ba88429a6ec51a27c44fd862cccd0712e51eadb9e83744c76a94d42bc2d9681a5171dd9b69a63e9b7df201438335990385c331f4ae08d20d7918b2c408b4214ffc2b664ffbcbc9706aec37cf189a81a3adc78031275c81dc2f17f98a6936ef68e001282992e0f72c1a03193d9bf58e744aa203ab759ecb338e272745c48568592ca3471ff9908c36a36e8071c6cd7599d0b8de45ce400380bea85144793172f06885d5153ded0d082f3e4d79335ed49c345e098c94916c0542821521501de6da60c59adf02aa1eb5a03d6cd0c2943379ed4c2811429c4cd29eacf24caf5aa1b91ef75c448860d5b36fa2bdda90347419f22d9f75f17086c79718192b33ec5f266ee88aff88e89ebc938b1f0e21eddf23f6d717ec3590929c300815be0ecd0c8d8d558415e2bbce24f66af95e3358a422cef41547122bf82fc9f30c1c38340183ae292e468daa372c3fdce2c15d49a0080c870c9fdfe70172097f20c87de97f2095c694751da6f707c43a43bfdb136254b4f514b84c26ddf15dbe922a84a28ca0b639c15aae3effdb0840ddc47235bc718a0a735bc34387458f035e40d5c14742e234448888dca20ef62bb1c4f45eb70a0152893a4067d2fafc9df02dca50e81f8acb1ac344c240e94a1a1b5c362fca27677ef604ccf4bc342098777f6d3a52a00857d85bcfef41ded3f4d286acf6b3bda88959d1017133058c9fe2d718c05a547755ba07f7d7aec96176c13edf2e2b9b173284f9bd0c73297c84fe06641fd5c1e65b109d80122ca38e34cfbec9bb23b7ca16ec13c37207b5b256c8fdd79549e3d532e2c0690a77237211b2b90e3b3e6ce11497b5cac68c0604ff0853d0a090172b8aa240cf1edfcb6885d970ecbf117a13d23f6331fa090be5589e9bf1ea0ac1a99eb3d48967404c0a0aee0970af70c0049749fe529f933f59546206c8a9e5dd39d871591dd255a77674564c72e165e7184568610e3ac877e67ff22bb2dc81e6d9398d88768b3808042a3c37a1e7a364097077f593337ba2349435e9410094cc0a91771b33d77bb6068fa3c60285c2ed42e8f32bd976f86d7a8a37f98a97f32608e47d1231d81f95892e7a2c65883fd0a7a14d694e0017ec1ffe403347cbda03e464f9fa2876abce95b2c2bf212d3eeda7f48c8248a3ba2689736c6415cbbf0b4b976fc0cba3c41ccc7449332384033976735fe2c707344a4360ed33d4ae3cfbec0c6758d61af4f26447ce0c36b77ef1456b9d6694faab1190532f32bad64f9f8013552f2e86d09864757649990cece5d4aa8191e219f11831071666596e6dda2de06ed511765eff3d1b333a5a0c987b20b0be5067ca2c3e922ceacec7257bb3ff5ac443dda44a5dd0223c6250a737a7736570ecb6af899a95445e1f595f912598e064d9c45dc428f9603bf8332d69c1ede613101399b509ef4bd64d1c38847b95329b295601646943a047162bd2311721e8e9be53dd621e57534c0ec9e53895ab8d0b62f2558b17fc6bb72dde355fc27263c9b267f9b71ba3800765160129ec27d09cb64f93a5fe945dc504c39f4296b93d542d238688dddfcdd58ca1d99ad3362b85086d417fef590b9b7a4e5063862dc96cffb8be8875fb3eea35a47e73d9dfdd0b13b8eec79ab04dfd58f78cb63b81439957fe9566b7fa659ad09e475c44607696ae3a32e4a14fd39253a08efdd6e7a38d67e8ea21bba162e4ebf1dc63ccb029af8cd685d3014da3807f559e4ee5fab12bfd262cd348326e7ebee311c3a8db5e9639b208a7080daf633c1319b4cc4b46ff3624b726077017e86461f04218017d73110d2bd35341b48ec0cad5c4554b21924fea3fd8fe8264424b4dc564a99a494011d065606a206a9eee91ec2a5ba51c80adb7e0c3d3637a682acb0edafb0ed1bd9140c656c85b6b52af128746a7d6b6d4da84f1255bcc601192c0b7caa2debf33a3374d1dbf6ec7b1fdd17f0de5ec0b2e8de452c0b7cef396059fa41cf0b514a69ada058b910a925c55abbee435f31e63a5badb5d5daae7a9e67bfbb59d2fff6842e5a6f3258d2bf132fc0816ac352818a44e0e52db1b6524a291d3d4a29a594d21afa7b5ddcbef4bebd17b02caf86ae257f6a154bd62c5947220e802102967459e8aab6ed8fa5f240048cbb7b0d3ec000c69fde5c77f7db0d1152215c8d010c7eddd3862c67adb5a33d2b1601a6b26b7dfbaacf71e1e9147aedfaa1d1456e17ea7c094204bb8247a8802f7308b19dfaf2f2ca3176e8e52d5dc5aaea5fd9c102dbb5d60a86b9eba3ea5bf00769fba87fac08e9bbbc57a53897529817928f86da5b325655bf72760ca58428f8e8d31b9b03ec0bc23a23c147bfee6ceb9a5e1d8c3b3b88d7ae1d184648df855ff77aaf137ca5fdb1acd30e252b47420ec1d2b755acfd51015fe1b084433871014646b2c39598761df10f18f9069a6303e551e98dfbfed590e848accabe7dcd10b25c44308c8965dd9dc7af84e22fbdee819920421b8aa82d213e3705fddc0dc062fefb5150081e92b37d2074dbb1087e0d5cf15750eb4725a414c7b908a3585047c6bab89b43dce75d507f5783e00d43917671e4ee978ac01810637a43e32209d4717da99a4cd5e46fb77f241d037232a04993c013e9743ac9c48c4e2751783a9d604e2fe0e974f266deec56af89cf6bb5366b777ff711e6a47b71f6261e2bebd3428cf3cddcd52e23139e6c21c7713a9b3434a7073aed8f167e1f2d0475b8fadea73f5ae8e2b6aed5ddbd7eb45aabbbbbbb7bf5fad16aadeeeeeeeed56badeeeeeeeed56badd5ddddddbd7aadd5ddddddbd7aadd5ddddddbd7aadd46da8da74f15199a9011351fc7c9b3211854f171fddf472efdfbb7677fceea1f74f7b9ee779f9fdbe779e97dfef7b97ddbb9cdfef7bf77da12e386eac9cfeb82e325743a15008e6f583b926bed7bd216e5cd19e98fd58d27a58785e78b51fcbf2809ea02c4f8b57f36adec23aa0980730a1a7fd542f04ea38eac303b21e389a12deea61415b21cf8b6d3ff41141df115fcfe08f1017ba62de21227095da979b2b5d754014c71211d6ef95afd4d057ef6bd58164d7c74728eb044ada14466fc6f29aa08f4b6f79329c84b23c9a256d5e425556665979c7924d5056ae81925626f396670555590f0b1985810943ef07fb4e37aa40b8b91d6f59aae236b763599692f8eddddc12daf2de661c3e04f69cb8e042633500926f0c89793b48b9b85826c6d879c74fa79d1ddc80edf7488679bd7eb81ad45a1dd34a29a5945e9c843ec785dc9d85935092d65a6beee2ee8e61b80b1ef1cee7ee5edd5f8e5cf71f1d10ee4558df45efbdf4c315638c71e58ed01fee8f311d5d1ef8d954cbc2fa17d37bbd19ea290c65a79486b2e76086af935ec5fa5f65c2a0f0243150410c5410c84e2022643548b2b6bc236431c882606636e49c738de38a7df0ad46b945c1f8d65a2b016e3878d513c56e6b30e7e9f35babb5db6bada8171d83f0bee48a6d8be6d4f280f04c13df2b1fbd91a1b6408b9e970feeb9538a920637e4d93554fafca049b8da1547e96c3fa0a25e1bba6a06a18bd66a5b019547ddf54394665c031858d935e3eb1e46189b2342f8262d53bc7c54ce0a2b9bf510050c9c888207d7220c37f5896289ef000a232009c14d7da0b891500055e1b25dbfcac1f57b0ab9638a31bd7feffdcf6f4ff71611d6a7a7d3adf7aeee75c7348580ec23f476f784461940e0c3eb095d1a4a99c188b7ba5348e4e8a92767c15daf3ee88dc5d6ee00d3e22e154f2099d9fede35d9c27a4121592308dbff8627284cfc60d9018a0b54b0840fe701932c0e02d1e10e2a58567dd25bf557debaaf978f5a77f0b3edb6d70777076512b3dcc10f3498e1a98acf135c3012d7128e36f551e288169eb8fda63e4b04f93cb18310bed67a7dc495bba19befbd1563ec4b78a1ebf7fbeec9bfb9a0900f6cefb3e81e8eaed077ded7ffc4eebf5c004f480376e8bd21a1c79d484f96a44842368f211e1f1074cbea37d4d5b8d954867aa6991bf1f80ee8448a650889273c520a70dcca61f0e17f9a1396c923aeb8523cd6eab8e211ac84a067599a04941cc1bc05be44336f753587425b222954657a4b74ba0a3c2d6b24b34250d6c8084adaf746303b66846d6b12cd463399b73490062ac9c4144d4cfda46614c73e8c98126328128e6a48f9ec1dcb4a254149f0e5add40f5425039704b1ed2bb583e282ba511cfb5dcd5ba9245425e5253abd85ea425546a0b818c92c0b950525ed97dbbeabc322876dbb5aca866dbbdab65cb6abc4a5d444690abd61ff64124b402527c4d28fab4ab5928d35966844843551eadbaf39953071244ac070245c80b16bca86a5d2b852b66d3f65b32c2c96157afb29202c5665bf05ea7063cab643a776803a292c964c4991b2a5a4b8a17bdf7e4a0a9a438198363786a5054d173b14b48bdc0eed8f9545fb2a89d487d8437a8fd4448936e2e22d93693a5fb712ad529cfa2491fbb7c1a1cb893227f046df803ae01132409d940d94a56c29db88244da04163c6c806a833c2017540990f42578936dbf64b35cb7281b26d694e947e4a552ccb45c4cf8d4119cda1581465627c5ef7e228430595ad94a6e6a68dc4d80e480186e7e02ec9f76271850f3e57ace00a580970bcb862674bf8196105379f217cd9d407888a1e00f1a008a01c6c57f84f8092f020806200c4c30d37360ca01a8c10ea303c055cb80da18ccd52018511a19ee235841f0d3c1676438cd80a16a020a5841537f858b1a48a152408bfb8f75e1b94e5766bc832c567a96202992ba1a6f11831822c4fa2c8c2c46d908506217061990835904309bf4d7daaf881ad8a1f9f2a6af0e4df905508e15345e953050d59b08401845046cb76855f02203441c512119636f5c162049590b4a90f961678162c3990d7074b097cb08c607f9bfa6039014c8c00b71882684885582d60556bdde1a3d5efbd18735de779def7e59c7306ef0b976160c2900b18279128e79cf328e777777777771ca3b10c269164644875b42e22b602de6c0fb1631d8de40adae0fb28486928145a5952d4d65a92084782d00231c05e618c7135c026b2dad852ab0ab9ad55c7ed0acbfcb53f18fb21fd50468524b6f51bb737f67a8f5fc6411dd2aef60e3adb150c6b55b7de42d836b9b12518b6e4b12adb8d16085bcefeceec9d5956148adf627771affb8357f0d9a737ae50a49b524afd6fbdb7fb9a42187aff0fbfa51f12b95fd14efc4e6fdcd98efb3be41259edd0dfbb33606487ac789f82d53e5e0921b9000a176c0bc40818c4c70c18d9f643e0005c465cab7d6d91ba870ca196bcf865fceebb21a171dfbaed6b4b628a0345683f88fdfbb08fdeb8b26ddfff2cb63b9c28fc1196c9ff65189827c13ca9f424997297aa3ff6c73f708ff1c394bb46d34a32997ea6547a53d77d0dc2b929954d7da838627f263cf8e3e58b909a9237a55114637e86447a98d967030aa93030356010d2c3e02fd1d095e66cb19afe64fa12eaf4269458b74da9f4a4ff6c684a7b58f1bf26460c5488f17b18632cce9cc01f2f1ffe3743dbfcd473ce7fca9ff3cfcef94dffe51ed44e6001fcf14fae62593553cc6ba0ee98998ff9ec63592e984cc39f3fcf2c0b14c2fd96c1dce3278974cb8041604a3022164d222dbd556b2eaef416f5c185f961ea7e11813fec2eb968b68b88dea72f9dde851ff543f09b3ea73effb581e6903eff47223dea31e95362dd227000a437999ef49fd52412e94ddfc3a6301e4f8f01987d7a17b7499bf4a7d3579a53aba94a08b3bd37d542ef4d39085df7b549ffad4c38f009026cfb9ffef415fc0164083661d4e89a318d4366def4f9614cff020699318d24d25b3008e94b8f12e9363d49d440dda697d135f32f9bf4180432c4f445ea2efdcc68c241984de3e83221b1acd238c4f4a5cfff527a100c622a9da02bcdf931e4e58b5491cb0fd313a1ab72b9b1cbc4b286d4ef3e3f080ae1be7b0d06a923b5e467bdd20fbf504b9646d298c24f37a532638ccd916a0ddcdcbbf4c66008b7681ec78874bf8844972e5271979d7bd8bcb3fd5cf3562e71cea3cb9afb622e14e77e2ebd85bb50d57d1bf6fd97d1754a12e623b9dcf7f508332f13abbadf789b58f25e98dda9e5b73b77675fee6b0d8ffbdefbd1ec1a7aa30136f75874ad36eeba8ec86a67dbc98e4ef0d3bf95f34a6becdff6ad5bd9476f3eee0eb9d65a6bef98bf866228c26dfbb5fe2716a99fa296ece1b5eef741e8fa9d5ddcd7cf5f83e6701808c1b65f59dfe7fc2a9ae37d7e1c9ad37dfe1d966577a6381503751b79213105183b7f3885929dff66959fc6b22a113bdb6a3bfbc8bff34bf8b2edbf6cfb36fb73fd8901e288874422d1ca5869d353f3aa39024b52432b6365eaec3e19138a0aea670a4d162bcdf3079a193bcd93e294ae92b1fdd0b6706277b4d28f7f5ecc8cc9ccf3fbceeffbc62e7b53ca19788365a192d052947ae868b1b3a3d59c14476cd43791161f908658a74b1eab2356c6cef23b3bb14714633a94a39d510da5e826f2e2e7899abee1002b5950abe91b688a622aca37a64ecfbfb72f4ad930a59c8d6a402531939d366229567a11967a386d3ab1c7c6a6a3e19f14cc553b1427a6240925ed9749cc644794e8ad243b5d65c67288498125a936343366a6cef21b41b3eb4c20ce98699eb12625cf5996a6196b52f2983c6669ba20749562a569c69a943ce6f79dd8434333bef8af6bda4a796a2ff44d74136d519ee7288250280efba208be80a2f003d5613f2582a7ab64e00ca4254155f6cd56473b220a104d4a1d72a03c463b319af3c55e569a6ccb4ae540c9d4115899a444d9503fa7b75053509517b58da2425596859a22dac20914971395c5993a7f62ae2a2dc9639eb219cd8c991fcd46a38d4ab0edd7c4c8318a9d3124aff33ccff354729e516451ce330a94d8694289352979a07cb4efa39d319aa6511ca29bab442588036d8d968c766aba660ac352241289a49465ec8c21799de7799ea792f38c228b729e51a0c44e134aac49c903e5a37de3a88c95316f8130d88f658980ac7e82b2445a2879f396beb9aa5c425b5a0aaaf2d62836d2214674bb896e2651398aca32962a61282e222d4c369065a56ca0a4be51970ee388bea16a28da0cd5032d05ea47d7bc859aa2834fccb250494881ba82869a82462b75a03839d01b4d4af39489a599ab62670cc9eb3ccff33c959c67145994f38c0225769a50624d4a1e28b0d8d77d5f97b72e89a74eec218d25cf192bcd33d6a4e4394d138833669a67ac49c97396258f192b4d33d6a4e4314b1e33569a66ac49c963963c66ac34cd589392c7ac793112638ba840db6a6e6009f280e5b65f6d57f3dc734adf4b794d367d2f07ca3a79a517a339a2a762476548e7c4a6df4da12c18ba1f9a133efd8e4673464fe98dd23c7d3cc3342ca88ab6eefde272c14b5ebb4b16b4855fa4a78f63b8c426cd8981790a05289ca20754680bc75a1809daa67f93a02d2cc34ddc2336fd5b0465619a257feeecca90bce0f39ec65084dba6a7dfd1ba2f7d5587422592b6855dc562cfcccc1718e332079a253f50a767061c515c98bc48338ae308ab72d186b48bd5453af2b12afb620396200b46e6e849495642422445746aa0ee8a557ddffdf7e94eac239868368232327d94657457d2628c7d72ae24227941fd19dec78d5dc7d28f259d18cdbce53f269134813030a04e0f0d4a3f0ad4e9a171117ba33004b23aec73e4e5f2cc5532579db12841e44055a2190ac886ea82baa1aea02a2c7b0a4ac2921c2901d968b497940d94c510431a71f48595e62391485c0c7d127b6868664b700c0acd551d6d347bcd7c3533620c311491f96aa9233084f4c6e50654a2fdd4284ec9d603efd61f89c41a1bc5f971950c977074a1c0d85f0e7974edd5b104ca421a17b3d136a08e97b52dcc598f5df640163c314b4874b5944dacb1511c299a8fe06b3482388846d76a773f55ac8e124d16ba4633d2cf69574f87e6ffd36811d4a92fba28b2b1f993658d4c4b8e9e50d2be680643c988ab6d3a081a087c813d60099ea01094b40fbe4099e8b41953364b7636af347b6276b99556fb06642b957e70084b5446ada70863e818624f8cf76274b59c9a89c4948ce6a923524550d2a67e98d82e5416db7e3812514386b02dea0a4adabfd58825a092ad3485aa6e76cc3823258f3dc418c3908c1409ba46db4211d42328b3e4f7b998da9fd5251437f690c6d0553363cef87e9ed781e0bdf8ef88369ae9fc4346417f61addf0d5d23ded7cb87d8837a4f7c928884f4ff365ff3b924b3f70bca2a1941c998b7523657d9d60807aab21ac892b809cad25a5ea630c4b1174124280efb362238038a82fd1a112c82eab03f2382b318221823823fb48b850b04a950957d5ac8076904651487fd19179486b06d094be9ca0e4b4dd01cfba5299487e8ac37688e7e5ac9082776496659a929944c05415533982260142765f356ca06aac261671fa12afba82e94d45ac0d8e6366d57cad643ca96b2995e5c50628956fab164959aab4ab6120d8f282e334f421728e3728c49576bb26bbd01b1ebc78c3c37ecfaa2d1258ac1b64f237a4afc72e4189d80428e1c3a74803afeb512c9e7d697e6ac80c4d8e188e2d253fa19265d0d25ea1ac53182b94a34037b686b04052cbd35323590290c4ba273c483880725590e1d2c966bedea6a2c16a8d3537ad65de91186069ab7c0122cd92c6bb4637510286b54435dba705f354fd5ece2137940711dfbc57eb15fec37148d62644825d3690615a3e63a13bf325cd4d8bc9317c76ee67bd86ad6b3caea4c060d2ae3c6c98c0c6e4870322303124a70322383124c7032230313c82f664e25a9e2413583060d7c3d94b9cc05057179090fdd25302aa8460d50c771ae63c72850e72e8163030b1b37527063c56485c30a8e13ac9c80420e1f3e8b1c3ab2b8acebd8896311d4b95658ad1d5fec48e18b1472787041820c78a83004093a8c1c3a560800f6fb8513c77708560bfbfdc289e33bc48e1da00e97428f9db950a6027ba521accf851c3fc9b63b440e8fed03fbfdc289e33b448f1e77fbb8d8b313c7f90eb17de8307cb0c0420b7e7b04798fa0db2348e747d00fbf2c04390b419785202002b85eac7cb8716ff003880b42aee32f9c38be5682040175dc85ebd8895f2b415c7881c9f5e1ae826e6421e4052b2f0cc0ca0008608500f851388187deb844e00842f77b2fc638e7cc75dea7c1179850348a59d19c344ce3405bd9a67bb6d53c6c6b8ec003581fd5eca266898d9d1a4a736a804fb5fe3e8746ade2386394a1927143de9020c58473c744420925fc89dcb1cd97c9e6ad6ad66ccb36d3956d6609fce1ed6ab6a00413280f7e342cd48309aa1e1965a9f2b27337d411b164e87560002a62c9ceb4a412dc8c0c1ce03263060db13c6525684809bbd7b01ab4f5bdeb4f33666703e51b35cc66bbaa496115896dab14d5d6314b7e38e0d85852b3b353f3c16cdc8871e5c68ae6ca0ac709fa73fa5ae4111de03d0ae0bcf519400028a090e364934307ab5404568b5484d68e14a4c49c340d73551767688b6245a490d3332a354cc3288e10a58c1350500100a21c3a00b042c87a16a813fad60aab00c054d6ed5ec36c4cb6598eeb6e052253b12305dd0396842aa19549b69dea0e7d11e55167a8376c35cd6ad619845861055007ff0a1f80550f167e8a448647b6d51bdfc648ea69ab3cea0ff486fd27990a530b11801e3dba2cc11e5b57f305e5f5826d1f5d8e155ee1b602d88385550b352c49b6a0439a936f9d1ffae42dfd695855d9cf1a05b57611eb69e38507a716d6ff5ad0d141b4121b83695811342cb4836662c9982561405602b89ebf46717600c292a725757cace6152002d094e6ac5cf8401d3b91b506aba7e92a1e0d0b6d9c42c009e28275414815f28286524daab2f5096d69188509b12decca0b7a8563255261872db6d8e2083c15e790df10d522532d30d50247673bdd5a1eee89391c36647b7e0a1cb6b35db152ef741d1ce1087faa32644b022c10c400186e13d87231d6e26a61e467f0e19cb7c05bbc123594b3a819d7a02d5bb650600b05b66cb9dd6e12b849e076b3fe371eea38ef06d520efe6d84173cab1e3e6674e828f9eeed57edf3e7940d00382fc2d1358d40a81a05bc3eb4237746740ee8eabb5d61882bc2e9b80025b28b045872dee0ed8726b607c0475775fc0968b79be6ab59fae04c24b5d05376cf4e8a1b584d53a0edd402813de1af7460f57bd6055d645d22a02a04148e21b79468ed5aad5420fcd65ceb26ed8463000298a70820a1814b5d7952aa46c59f2a48b18cc5af9810d2a08657c531f2cafed0adfc98dff303c9d6cece0d4c033b22a44e69820db5d09afd56ac70e8f849f1b2da3a4d95f5b325635e688a1feb7a134a76667f4c56819924671dee27cc6b47332cd509b5be03961592e2233cfc7bb96747dbfbe5622a49bdb5a8990fb9c1d55b9186a15439e9acd9c9ed8e46a4436e1c33e51bfc0c6184c862e6fbc12ba6b59972369d6f2f1d07d33f05f8a43efa3b395ab3a1c6bc3ba919095b9594afd54a9c6eef4466efaf5bafba74358dfe2bb2be556e0d5e7b270adcc69ea2ad71dc5a91f861ce7c3f70bbe327ce909eb8dedf24ba90d77c7d935288d199952ea32994ac68528a52e9391328e93c94cb84f433e84f5710997f290f069ceb26eb68b524a2fc63232cd9509dd642fee685e477dad8e45bbf30e617dd1b5e487fad3c1c66b6246316462401dfa9446264529e96277777c4b2f47f089528a9a29a5b0a0401dfa4e4ac9504aa35f7ac24a1f1b218c81dddd71ced8b4a911bd4d786146d1dd6ff952ba8ffae5087d2d25ac7f71cc5d862eedcb11777ddd5f8e90508209a48a863ec28c2398867e39822fbeb786feca1d3a4b583f7fe6723f1b38f6868dbad2b21b7475c3064e0d1a3354a40925ac5e784481dda9c612babb13f166db7a5562066302a37d1fedfb686a627ccaa6d39fe95133a750a8e3e978cc9e548a16b3e497a299b1d22c290e203a9e8ea7e31141187883ae6929c01264019096ce09abfffbb416abe8262a474b463b1d4fcc9265192bcb73e6abf96a6246261979b99cda71d50b0584e4488cec9c322b82aaa20461dbf6453da0122bcd13ed8c99a159139c45a894cc1a4b52c8664600000000b3160000181008874462913448d33c53ed0114001060844468623c9c87634910a4280aa220640c31c610638831060ccd984600acb07fc8d89213cfc95ea68797d1f781e212be2ff46dbab796e61c8b482464fff0051f391df30f95e26f6c81c193c7bc89caa06536827f9bc6179849a3c02af134ce48ede6678bb738675dffe37375c986b12799ed95c039fa7b34e4fdeb58de5d25c141eb8eb255c53b47c3e32ae01406a20dacd3a70e4ae7538d42f7fdbe6e623f47aeeaa74e46d6078e98c1dba5e62016ff569a879af056297e94c1cb7673cb5497e1ab707bfab1bd955904aa85e8199a933021adcd8b54362a85e3af0c881549c67a86156fb581b3f7f83383011188542cb0667ef802fa8ad812d4920b4d47ee6f8b4071e8ceb47b4ec103b3163519e7a80ea0f50d4c6c350e4a5d4d866995501df237e55e3ff410a1978f737857e98e3e2ef6b41d4839dfa1890b2c2e6a908a8a9ac6140b795de81d4c74e0a2a20407d94c878369c335a7ef518ee03bc0fec1bbccb4e6eeaeb756f64d527921fe4d24dd7118716132ac79840c0901242e6f46ea988afe1d987860e3225060e4355c604e88096db751d92c4ce566eddbcf3e5efd6243b92f5b55d04e94174f8ed1dca12d9e83a185a9794dd2b76f68c7fb01b09a5ad2d6d6d207b12238b45926f3f03a3a09f6ccb488ca5b91ccf9a87d29e39ab4424a475e1f6ff51eb6acf744319d5aecd34d01abb8510b256df6506fca3f9d08573f72187967708e9d1129d79fde0a9220225fdca29fb505af4f4dbcd3b3de0601b8f77e45505f8662725d6189c41f2ffc4140f7e0d7c783a8cc20ca2521687924e4b27e56ded953573048c7f97e39b23bdae40b970808d8c66ecb11ac50c2ca4a72ce88c7d40d5dc92e668f419993824612877e6f0e8e3292b1e9c72f4952149ba5c78e6d2fa9c30062daa352ed7ae3007b33e8046a2a0a43e159c16706e423b9098206d404bfc4182d8d361934987009ef032975d310eb7c81808a13f548267c1398a42a0cfea0c003806c722baa0d15b8339cf7d053e7bb0a9b49b637911b15efe8ec6097a866b22833ef5424ea7bc82208c63fabb62750ba2944c6b835131ed345981c5f70f1e0f1af5c1ec01561dfdb184e4b7c5d62cffc4811ef4bbd2b03ab2afbed80e5f3d36657bd02b8a0ee52066190e4e2ac840366e0e6f8c8623ef2c66f72e0f60ef81efa71ce34652e67b8d808228d11f595d2ff59fd9d084b53a5d57c7575204b968d8c46382067e9530c822a158c774e36f5b8399a48c453aea9af98c6c8a3b0805ad7db9f113b5ae19c4a2053345868d2d4316ca00551393e60819ed6151a6540adf604e08942130c60cad18e4407b42c5e2bc43e54f1ba90d7f3aa630e65af0c4d5cac50a81ea81399bd183f6021fe9bb28f7a420c3f1602c5d8e49ab1492b932d3a341f89a1656d5c4d50fb198a734f4a2b712a05d0dc01853c9d2cd31ed7c58c68e2c4f18a752745179f79b814e420d06360046271c304f58007b5bb2874838eb42807e06ac03134d467b1c2ad03c1f0c7d16c16c70b8ba7675a550f32e446622a0b3a1d4980345c24150d28a5c37a10119eb365741557ad3b25211841beb19c39c875cddccda8bb08e1d16aa98e695da446479a0565987fa26aee8d2a3f8634655ad5900d3529cf5c9f1bc7c608275500646b09017ffca1f2d6793f948de0d4843c2b87e8bea035a60291f27e04d507ce6bd9e48aff4342de0c0ead9fb0b1b0668ea97fbba14d6ff070f98f59ca381decfaffa1c74da9890ec2867f9ff4fd6d34c65dd4251882609247ec75f6df5aacada0f6bc6aabae0ad788a6735ccf35009010bb3b085567b12fcbd01e44afe1442bd1dc797938882299b0bb7cad6742e24214162108228009247c203d129e5d668c2b4df5b7696c012a5ca8b5ac5afb2be42cb8a5459bbcf1fff18c150b568207689108652f2d24990ef6120042c86b712765dad7860aec678b9a6e07ff624ff964411262c8ea36755011435232d460581bc618441bd51b7fbcda279cf834a4e2d6e728050c2232b0fe1f1ba2987d8ab6fe4b4afe79a8133603e67d078753dc15e89cc83450dd65bcc6ee93e5ea152d906ea69e8700afd3bbe67a7bf9b95aaae738472f96395483713c775f2ba6085439880dcd4fb2b4bc32309de334a6b08df44ce160ef6b36f04d8e1f259ef9e37fa20595b9ff453eb38dc9eb45f09e70b461bc239540621bed206ef72047676b7eeecc501cabb840de062e8f33154e2854c75ce45d42e16145ec762ce892062716592642c3e9ccf3c282c824692a223961a4084f12e5cac9acbdbe8ae70218e2798c293b0861351fa7aaa50c88ccb8dcb98e850f0c55aba53933da0c624b656a2979d56433ff5d8119eb76401fd9f24f1f4c864d6bfcca3581d92721a01aa248c8208b62e8974fa2708403d403eadaf915e53ac0414a64017f4eb9671cfc1795462b08537f6108fcd21919f4e46204204ec81bcd642cc353e40818e530689689137d675b475b90c82525dddd1c88fdf248a39e18ef99c3340bfcec2261dc79a7c515c153f4564ff1b959998d2d1cdbb96c1c7c2db268655fe206b62838fe8cbae0e0c0ba535e13c83b663c18ba3a6f191d15326b343725e471ab13c8ca2620250a7eccd9c04e4287ecff349f98483f5d2d4ec7f725c4efe23bb79e609b59a8f111a9bc564a1a9e5f2725b61bec455d33a34ad138765afca77c24ada76c39f00bbfaa5827e09915d010190efc7a5505748ac3eb0e7666f01eaa42293c765aa2ba8c34b95e19ed819bf332400af981d05b5e7ad26dbb0cdea430765c0917e186f8bdc6c607e96a34360dbcf45a6e0d31aea0fdd02e27b7cca5524379dc33ee355960016a2597729cd26a53720dbc96a8bba63b676194684a0891f20a01270bc761f623e0461909456c3fcac38b3ccc76e8f8b2ccd742a327a45104bf6ee5df45ec2f567f17b1be589fdf06bc86be7e11a033f994d6a0f7eaa241589e467974e513983240c81274f0b7712e8ce02c0d8aed46625ca843300937b98b28c8ffc02a145f7cfd35fa9916f0b5429935925bd009750aea8e48996019fde6b6cc7df01aa0e9ce4bb06b9a50f0a35fbd4cbc43aac3be08622da965ccd4a1b7efb56c62018ef5266dda1b7dbf05130a70acf7348da2168edd15ae66aaea096ae29d7dbc7e5e067bc23b1b6072697b88433a876076da13c19faa18acd48c4a35011de90924251a5f8cdebf253fffd6e7e14a074ebf9d64b248fb5a0fd025776e0970e755790299e7a41243e260c7749c9e9e7d9630b385354e36e61adf17df2cac8061b573a03b24941d7906b5f18efe26849fa98a65d978f638d629b4ae1cb2991c6f641c8330a9de4e5af873cd31bb111cb445d0e143b7545588675d07c6957f74836fa5b9eddca50255c7af12a20133692dc4829601e84dcd423a4974619b2e93a2a0b34772dd314453dcbedcfc6f1dd179eda2cc8ee88617694eb692ae1ab74a6e67dbf8a36902b7ac9432a108a790ca9aa57ddde3eef52075a8287ac63484453a0656ff9d2fbe357185534a21dcc601e883f29724da6822f087fe378e754e7071062a667674536895942592c315b38e3e25dbd04e5607f8d5c9498453484acdd27ea307886d4561ee735ac6c88ea4099a0c3094cd655d93889e601d09d099cdc511bd4174039b652114454f498baa32ec528b9bc4bafd8817b4a8d9dec83bd07af9c44e5f4167d4257c40b5e4cfabd3c7c12a245eea956ba59c8067a5ca049589934e6565ca7c74134fb4b5689f4e7a729cc1e9429b14978533ad0e01327eb379e0cd056b955666625166534b4b9aba4703b7fbb596255b1888b45a6544cab1272cde02158ebab8ec87f9e0891c030d87972ea54f757cf947ad32afe23491387cee0a1672d2dff7cf8b92840ea5f83685971759284ba6f1bdab406343a78b7be5c7be9d958f415004c64ca9ee406fa3a7b773a57c5c844a9a45590ad653c818aa2ffb8c4f7697e7479f89d6f4bb9288d9c1bc8fd38910fc6c90820fc7030b0abf175645deccde617f3b30142e0c55cbe56f7258cd71a481dc38b94845f5637817d2790de978f598292656d2882e6cf06cd1e22b3500c8b12f9f1a2fbdf5bd0cabc2ead215fcd191884e93fa9f5ef3e9d9a01409c5367247ee8ad1480866916b235d57a4e4a5c49f336011507d08e1e05b86458aa5694bcd1b8f89db92df885a089985fd01b9a4353b4e8f81ba24ee860d4a7104486b6e110201e178f49cad26723f1be1e195da692aa214a6d0ad90acf1e1a8a4601f5d17c1a2daa865389629d4827bd558ea465fed275139ab45ae272ec22eb03e3dc9cb154180f6d8bc9871f953ba92461d72eba4b093d97ea75a02940f7a6398d26048d4f2d294567a6332813ff75628b8614596db80a873cf00333bb48e6c2985411ab9625fdc01a600f44f905301b48273480876dd9dc968d9b8aa46b5659b88b839a1f0f29a4e7b054141abe8af696cd2d2940f13df0cf880c44a262f3b3a733b95a8b89b14599af488335254a5f3ce041f438cae977c84ae1dbf0f6362affa2a75337a1d79403273431811a9c132caae37571f4399ad07e3e1e41122ed06f7660c5a81e2d86a418abf0d323d7be2a152e978007091ea63a1f4261b12d4fde6fea28bbe0f30988e9468bf158fc133394cb0876dcf9ea9650743315dcc073c917d883414a5f2c090ba11b4418e0eab64f1dd237beec7f9c569981b51d0885527cfb94364bea1e07ed2e19bcbd408c5961c79df415787579d2ff0c835d3042867e2af60626f5787e7d6d9006a642e1b425b0db493d1e0cd6f6c2a21b749e807a0d9ea5f6a1750706990d8b6543538f40498ae1edbd3671fb51cb0af9fa5269bc1369a82aaaa64d524df944110661611d47f322786ef21a47b7b50a7a605fdc9fda1d6254bf8dab4cdda184a37c37a3ee1a20d3c94597c28647adddd924e3416459b0d4e13727239176dc4451cf82bf5d1e2702e681e3f6ad825327f57fd945852981708dc114da6fda177ee821c8478ef03d7f5d713adb49ac68c2b9d7c54a8a38d5990781ff035c1f92ee3c0e8f7f401d71053913440d45ee0e69ef1f48d6e8a6278d0f3d1d89b69155f3cc9440fc80bb630dc39f5fb91bc7ba8e40508a046f6268aa47de436d58078518a631e6112e1a4a17699ae56bf3a6c5612f4305e44fd10dae950083dac5c0ecf2dce129b84caed31092f9ebcf01ff1fe4140a5d03013fc3d6e0dce371a4437a66194e627d21d6e2b6a43415e9a0d8b65cf5abc7fb9139cd9ed4b7e480787af21863e892c4da8c6748fa283adb24708e4541ded4d8329b29340daf5a5ccff44e30e23869ec0eb10291397bd24fb87f4e07333b515f011e59df2145257487302af8c9c20cf192fa1fb8c8cf91fd9e8e6c16f4fb7e45cc7f6f0d5c8c9a25b31cff3d38ebc942d7397b62a0c15d37faa7673e3e12edc01e3106415b98851bf09a38c76823e0a932447af455cd555833573ebab8e2311f430435710e7461d23705efc73ff4968c1971b5d3f6697a2bbcb6b2bbf5aed6e519f3603d9cf120add9847935e214db5a24527834b207db0a1d264a110a89d0139527c1b202f2904e257a4844cd10d814c59fe53b63b6e4ea637e1a20002bea6c37c5b24e26d3bda50f8d9deae48d8e279c16c99ebfa45790775bcea05d997eb77e6d49a0de2c3e1c51ab864f31c4262e30a1ab283d1cfeb26abcb41d12c54fce3fe1ce0f2df4a681e41c6036122e87364554c856a8296beeef1720e4fd492a72112c72288adb35716b49577a496e9e37f680a26dc11ee1f6310c7ce15cb41cfa8728fb6003eb791a053ac0e8d0dd67933ccca89c07be5e75bd2d44e91a618021ea0743de2b17ffb8d08f1c39a6fb5b42386a35e9d43db826c35d4085b73898281969928ef738aebc0f589d82b4d2178f3b5e2936e72241be7f0b2835714ef3c58e645fa6540c7f01e5c9b5aaed09ed73e605aa70e9aecbbd38ca3ed5a2bb7010b85a6db693ca046b53e43f73cff96a1f7780347255e923542e71a81698742e46cb9bdca72b98b92b5322f4e33d71733f512c4c06725f657be038fafa003d08808060b4714068e3a04d3c34aa4c0fe09ab149bf12294ef753b8f4c698b7b40afe93e80aeb65764a52a9bd92d8de6a53a76ed9a5c513e589ee00bedb5c6be73b8d1382ae85a073e917e3ccd49c7043486ae3445256113daabad19ee242a847dabdd1d69d1736e22cf3d582b5ebaca0a3fcb84f4ae61349ca3ab4da2f1707440f28842efbe9517f5e59c221c447a193cd18885ea7d10be3304c5e536f55576324eaf5119c1323ad87e4a57bb5418a9ada45c03132a683722b07de2dde9b0647e9d8273463c6c5f1a7991f5f4b290e459a71dca9e36b351324aae11104a02d3904fd229de72a95a33cf453e54e13da0114c9b7407d30e71a3e604392aba6b236846c9ba41259bd43ab912af16251027a863eb9b94d329bd874c38e0d17e22341b90e0e8ee1c25375662f02736187d884e1862112bc1e22d2a6fa0d4a3d2c95c512bdc7557696228faacbba9c58c3a8ff4230f5172621a2ba161ac46a62409269003b0d49f8dc212e6e98e77147372ae8ab37042f2094bea9363b444a02c0e759f627dbdc1b303a47c9b5c09c0d97aa784606ff4a67915fe0dc02933c070100aba5bb6584d9a447efff1d0639437fbf1c2949f22f4e8ea42e27060b270ce6aea4d36c9b3e725c24d74c9fd3a28773db3871931877d105e4c65835849c27b8e1d90fc0a2c25c29b925d08402cc2be340f7ed04c726f35482091de283f137a80be9f4f1d6f721d28dd332713e44c6a81d26c040c53160aeb1765671ad9329f6c5b297d96fe3343e11774412ad403ee567414b3303ce65faf2eff379a709a29d422c49ed284cdc6876c26e683ccea5d3c4a69c23ca4ddd21d2d2ba5abd056a4c75a740deb22689549e96800c18decfa00abf776098c6add3bf8755bd30895fb5be8f8bd6431533a3c65df4346ed765a536f5856d315aac836758a818622c68399de420f5fdab0ee62ac2d70b269139a06e65d12af7d439f1d728240f878d593d283590a222d2d7a14c9a170d2df940d39f1466d81224b2b16cecca8ffb77058baf6ca40849ca067150f76d91035bb622c06163ea46c5876f24fc8092da0ad008c6bc3b6247c54689933a6e850b4a888077bede1d009de7e8cacc3355881c737ca84df2e2478f4624dbceb0c9d820b0d3d98d21037207482afb4b63a23db54abe6cfbf12191e1323767d9018850fa709ab04d1a6925c40d8cdd483663174ba72bba3f98cb6a071717a200aad534227ee3fcf30fee1cb2f7c55525a96c7c964b3c1546539008d9e08627fb5939d72c20f7f106d30847a2b4423f14f8b02ffaa2154515f45664f4d6419088de3377168d894fc95e61ab02a350793b2ccdf58fdab7f2a32efcdd32f3309feb7cbc14232c0a9b6f281084db570b066b8fee9b75b46c2fcf107a2178cc049dca4abb80dce2695a33394fec9d38e698d445dae48a9ad078aa5d5a3d3535c95c91103871e016c1ffd2dd613974f97615abd05af4a3206d87d0994ffdfc2fad8d6a0667ba709dd2c1bedc427490514280707abd0a05847f60a1847146c4bbd0b9137692a7afe941f60e16152ec20851cbac0e30c8628beae038e5034495143144bc663c76464287e1fa9888e20af05aa0f470a140fd04644684440c48eeaf3181897d7098d16dda02dc57702c7a77a5abe304e8b752444d7aeeb36017a0a70adb34809ef7d540b7387f09dc7243fad6b5e7af705da42a9a3a5777572362ae5df41ddafa0b6d4383b80a1f0502de55414521219bce29e53619be2d1f5044b94515179ba831f8553bed471ef77f0cf404bdb680c1c15353b76483cac0856c66159907df5cf1ad6818a42294278e6f3524af35e886ea37b9b4769fc7ccb67d9f433e3dcd055a48a2a5c8502a7790aeaa83baa06d02846dec2b87190347bff29c22fc617569bbdb791378e358c1a3fab4cf8bb55ac128eeb0ba5381f72649e3011f89d3b29489e39a8bb63d52569761f62506b5b8900c83c2c4221096e7d27c39d94d29f6aa3985954935b15bacc06f6249481a5a324777293be3e9f746ec1ddf4acb5ef83a9bc202b0bcf7480d23320fecc5ebeb1dae8dd4dbd71aee2c5f869c5c25dfe6a17914c5b6ccafd90b31e44701a5695a6720be2215d9a30fdfd24e8621ebe56418477df2be0ccee8dc7e962d4fce64aea29701e97a62ca74b5b31b800dc09ecdba4041756edc9867a513270ca88435005ae0dc3508e54d6544a037cca0605b38bfd18f0a976b3fbd2c7e1695d009b8b7c84767cfa48fd20784eb26e5e581739a1380e75b36364507e2ef13ed9cac4a7ec62e12d26c71c8dde8423ffccd1517a19d98ec0932255fb36f376236f36a01635a653909a8cd7cd208d7e0bdb2df5b3427b9631e0f1122a081746eef4fe1f126f88445c054f792a8729a5a474e3ec42f14dd8652a010c30395aba7c4a314a832ae4804341d5053602348d29880b8a05d58bd401fcd992f85a709d29040a67ca797d7478a0c77eb2aab2136680cbc0b9eb7bb0f5f782ed2c854603b836ce84ba81e79d6198fff02fe0f91985e500a6083a6d25a504383ee3d2c16c2b1aa711ffb8785216babd48d052d2cc3c3fcc1495e973a2a2a317ad1b454bdb3de88c566092b9adca945b967814c51817c924bd6e1b553066cdd93fb2d1e4916b6a40323f04aeac2df1afb2f016859e0590e3f15336a3ecc671478a6262212ff5bcee389aca8319629cad2de3ce84c3087c3e3d30eecc3f3d5f39c651e41b4e973debb297e61079320239d48589e78c436a4f5f98fdf8be112d35f6689de50ccc941887a6028bf65bbd2849f776458b2ef0898bc76f4d52ddfb36b61758abc2513546931927c0ff931b61c90882815adbec08b4b9c6e33df0ed4e23c28cbe571e74b049850667124192a554fcdab9c40277f17510fbba7f610cffc168208ae92fcee6e2eb654e15c6a7815b2000854fe7571d3252be6d3e802205360086f7c839f4e8e5ab36bdd6851d5234eb50d9e9f3857d404801920d462013298bdc17379883d1e7687d3f28c7dc3eff2ea53d1d9478b3c310aa8426086c13325722929330b04738210e335979d52ea190f788a66745e47d3b9248a62c0e7c45d06492208e762481c33dc07c9ca693b90a952b5470cdb0733860e5df38818a42048690b3e5c270e826442cc6bf2d54a3cc81820911b89122013290810444d7c4d720814f107f7b907144662e0f6ff74e78b14149aab8c4947dfeb6516191dfef7032560e2e72d2e43a4d0265ea150e501c688e5dfa411e69a1c01f954c39c1d17ee5c9a21b16125c23cbc31605e15d0bc3be24ff0c8734d263b3956fc485c53bf522324e61341486b2da5aa742446094900bab3a6ed056d4f6d4f0ecfa06a6fa130dec574ee831d425730455312bc0c55579a93b7dcff5aaa623f6491d2a92cde3a6bad1b03c74248f915c60b774e34b166367385a1ae3de794a324867a38fea8e77c3dc21de06d6e56aee4577c3b9ffe28d3a590660a447a3e0f9b740efd2fa5942d4ab3ef102c3ea5a5c22bdb1e71ceab44b029a763907f04c8ba073a286f855c00bd30327c0155f064f726667884bf9e7c007a0e3b7ced7e262a2638d8f82719d7b3d604acc1d81e3b98f144f3b1134cd11c0713712f8462e5e41e9002e4c420f9e2381730d3bcffb5323f13b5d7278291090e1642c33f3e7e081ac4d71e034f2899cfd98eae07504a4addc09e57ae80782498c2ef6c1e212efab689ec4eb2836d66209fc68a5641e306aec67ff0ad1bf4cf48b78e5a4529996ef3f267f4b91d0a579f9f94ed03487588c0f3c12e7c1591c999f5c991fea0abe0a9369048e4eedc6f1106e8466766066ba8bd7488b2a540b0ac1f6a6ddd8303f7f3f195c8940a316a246016a06c180190def275149464bae33e5139724baa18fa4e627995cb01945c78899b047112d023f3874ac636fc7ec6fec9ad2590573e1400431a9f66b2ffef9166f4a5887b249ceaabcaa79effd2504410175b0da88a199bc05633d23b340572dd30694cf75f6bd1ee14c4f65f3fcb3816924e352cc65afb33f900c59bf03a5cdee5c019d003f5b2e80c34f00a9f7966db4eb0667d7b16dc5b588a9025a40163b02b83d821eb65992cf739cad42609a40983127343046ef720e1bbd8146373bc0a2a45927a6a4db4acf0cc6eda336a2989b553d2432e2eec712cd784fe5240d295f9075dd73b54839dab08fbc387785fb705dd8c3f604ae8c26a09c8c7caba55421552906e0736037323df58c143425d9e7b6356a22ca80271a95768b2a229bec193ff08fefd53ac3bbf37519c620fa33790cc64103f119e6e6fb7a39fa293189dd57352426ea0d5dafc535e698af93740d9a98e469dea5724e8d5b351bd0e4798722a028a25182fb281f4ed49dfbfbceda8693ea4196fcc7177dd8a0e804eb674885eaf0d5b1c4fb46f6e8bf6a31cfc270ad7a994a710029cabb9de1a4d21e7808eb4ab9ac8466bf2856877766f2e3532c4d4222cd9d4c62e0ca4a69b300c9e5b70b3b322de46b58eb3527d879721566ba229e81eb6be28c9621571b243cde8e790ad1c05e61af63c097a54e4e0d704aa97adc27568f37e4b2f12486440a4b8367b23933c98a8434ebd4bb9deac7055888bfa427ab057aeb44b04b9e0a22c133a87086dd3ceb956e5352d19cc78ab7ab1df64433db5288720c2f1c480a70bd7ead76c242534f7cecd3c52c7ec578cd331ad27bb8ec547efb1f76b9c931bb7e2bedf0664c4a7b2d417cf457f163fc415561d340b48c6f5f5e65d1eea2e9fd47ca3170adc654e9f97e1d9d73cac2160eaf8ab6028fd6643863c0f1dba3b7f01a2e8e73c58a529287e94b0e4acd766fc7f83aaa1b6407bb3fdd21753e2a14886276ab8385bee7cf9001da1afc7a7022f5a71ca2dfe848ab1034db10103611a094ffdf2f63d409ad00f01dade2a2465ff345ca1a89918bbf28b5b37c070775bda3ce64f0f5f8d09201cda77e56ca0c462a5b88079174cb73246620c02f66299a8e8b657ce44e217a42aae84bb77a00a64ecadd42b0426fd2ce0279f891528acc8c80b96e4630da6f8a9fb9b5dbe13ac04447299e1007e47374df74cbe9efb283f8286a201ba444e36137a32429cebae53af55ad8c56b235b368ebed36eeb4ab2c1f3050699359ca1dcc8621963bb1a19f0f7c3fdb237ebf01f3e012881dab4a11e7ac6959296a5768d937a84d01d6217d82e2a837a224c61466bc7f07a470298f96d5e9061d5f6593ec5778a8614b6b6a29bbaf42fa027b444e00ea29634efd05d67dff4d21d2e8da95d301cc0c470ccac3422c38b7dc226102ad182f5e796418e3c6ca930bfa740118f51d440a62e829f3e71953f46bb220d2c1b28a4304f1020d91beddb33cf9160f80d531f2885fc304aace69cd3348d08830409e9ef85c0e0a562ab34bb72bd990a24c5a5c30f52ae1f7437c58a8e3fb6ce517a85ecef07e8818ac8c535ae27428126b2cad6c9fddb699986f2a84d23a5c396c78335fecc3916388c20fa16534d627333514072383a8931771dddee750381dd9edc28143edf391854cc212abaf614d197501d3a9a60a323da41cf037601a0aedc816fe96a5748fa2372b704d9b443c36e8a246a695f47097befbac84b2129813a38ce18f715171a211211ec3a5cacb9f2c93ea5903c8700711302e66e134a370e4b27cd28cc8c715420e66d630109233edfed2192906104fa9beedbefddabd38643aff14e5db0d4e1dce37c9e15ea13336522c47e916c60ea696e39530f46dbdb8331e587a44c465025f7cac7060d8465a40049a275a2e4b2cadbe707d955934a105498a0b1965d58fa22e44635db263bb7ffb4aa8ba2c99bd461add7cb3991f89699d46b2916427802146a64674d3a873ac2d2bd8f5d5ed12f7c3c9dd7485472fe873beeaec2bdb5b736e3a7bbb808955e9373a7bd55699903683b31f93eda5a14a2dd10e6cdff6dde5c3e89174fdf9320dba084248ccc8c4d579d87b5b55cf4353e796a2f0927b533a594539900017ee68d90ab4379131661c321eb0c96f85e996156e3d39e666a6efe92647596603dc58403dc9d7e9f9fea2088ece67ce42ec230ad058c8fbb1d1b0eed9d8558260fcc6a82e67a49e628a9ea4b8c760e1ad1bb88c54cd56a14bb602ccff9306fc55c6b964f26c558b060bfaa7f92e5af4ade4873b5848413eaa2a59c036f387db8d075e6f50dd996f84deabde835a3879e36878f01ecda01fae1abbab365c619d8c097bb57e1f7cb773e37664a25c06acf263baf55b4e48eab4ba32764a42a9c776eba6f258f3fb71fa322d2c6975ea2cf668b3aff4d52a209c3d7fc784c2035de34978f174a065d8424a26034d99c231db1ad33d0f84d27fe6b3772aa9e5eddc7e625e7f04cb7bfaf97527c312a4dd1083fd49169c10e81714d187acec89cc50d753a4fc44c3c9a208c2c7611cd22ef499d8d3c1ae16c99c0c8d8e9e33c7113c273890adce7cbb051deff29b21e4002164e54ca2afcfc1f687f9c1f7ff2612881a1c74de08f975848d6d42f8ba91cbe8317fe3f77a1be76f5e7b0a182c065d6b1bde9638bbc00b3829d9ad5224bca2e2d32f74ed3c12dee02432ae0d5cb19fc5218429ff8566e243d6b044d4106c2f75dd23588aec8afd2870a4c547a090cb8a90a1459bfb2f47099eb7089839ccbe50a46173d15430cada3b42272962ea8663d374c932237b9f840d2f91b15c9a91ae16c5945d718c24c339e91d01cadbccd6950a8fffd50559c5993dac59fa082d42ef44c1d415674f12878678a577801693935e175a054e12a8ad60101b3437cb6e1469dbc76195c8e97c0a77bc902854141a79a5703892579dd99e4a7e7c9c8979806bb29e1af34916ae9118a59f044ff6edfe34ae0717fdb6dfbe044af0595090c0c7a2db082d26f1a2c0d694cb8bf5f499725c6ae2d2ff864d865a2bdcc43dca63c00abe0bc1c47d8dbe120c66eacda97a0db6528c83302b8fc23a206957c9683b02d7a56ec225dc52eda9a921fb3f66327c5b30ec7bf4ce70c098f91c34b12526453f8ae5a7ae42c2cac61f7c9033f53c919457d2d0ba45abf2460d346eae95d5e30c51b15234ef5f136c5e3806689f9a905d0f570fcbcca062cd4b881c0d8b10abed4436cf6c0227acc9f9c2971bc342e8f71284fcb21ddee51ef82acdd2bffb0cee280f341c373bfd3c44486c991d295413a502b3f4e4e08800fac94891042032c984c3d4f0036b40514db70cc8b9968bc71ec1004eae6d2abc863fda0c4027183be609e5fa23ddc543b3df5926104164e2540eff4916fc32c1928f05702cedb4cda675bd52a11ae558f3eae72a078a6bf3536ab06de0417d5e9ff76a776492eeb399891881ec413500636b3991908391db135bb2eedb974327c9f9304ff2302afc43d10d7270406f77f54ece26326cc8396d08c13a51c9fb0b6a48008588750712f05f5ace790f2ca2bc5aeef7e40224ee16fc4d98347ffe7eba8c6984382474e4739068672b3867c2f78c8d87c54c7344c7657734a38ceb3dd626b9356cb3461d0b64afd157600168d6bdaa0ea221e48b1c2d3ca0f37a47e0fa5e1183bf13bbfcc908106e921384c5d4299904edbd790ac973109ecb08da5851ac0df1e099b3864c5511ced48e5f1cc438d088f84abfe00f9ecd21ce595109128cf7e3e8f74dc8d3dfe198e9cd8832e25b36cf081e8660215ed2fdb4cd3e16344d53cb195d4d25d88b958c73e4067018f3195af470320737dd6c998e05aded76eab3c48355999fd1912c8a69026ca28a66578645a1165b06ce0710a57119ce035b4e16b7fb2eb528a1252d5831c98213565c36482fc2a6da9e842c8f2523251e9c69cbdb136da114159694fd49a7407526e82ec20e4e15671a2b84880a2b5f857a832711b7d3ee7cb23e384174244339f0050a89dd0e0e46671d9f966415e59d5ec5e35e60f948430466544678efdd78070ce3401a7503525f1b8b1c3b0c08bfa455e2b97c3287687a6075261c2306df46fdcfd6d24e3800262805c29b79c4e1565c369a46799a88e2e8ed058e751cde8e77109baa3912e63bb71baa0f189507035e223d574c5a501e8bc537add31aecc7b41e166bd3e3a43baafa87896db202ec0eb25211bb36d11cda870ef67864d4528a13f0c704296322c14bc8120c1f25cff9cfd7a9cbf3e1787cb7b35eb9db63f773fb7da2cb2afe89b75b83d46da12fbac7a53a8f140af88defad1201550ff634a263288b23cd66602b16ad0d8fced14c2377cba0a99f07efbc8355affbe04c7c4bbf931d14d30df0c66df3d380881b4142d590880ca29ee1d0afed266364f262e0abef29b892570102e17e545d61abf534f6c79b469d5e95e9649b5346e011cfa490dae54563d91576b426d302d9b0d3ec77037cfefa84009d03a937ac6dfbd3778b1ae8682a8a64dc2f6937b379edf7d51b39a8de55872061df7c66af7667297a4167c43f1ac5a45f5f51dfc8da352985f863833bb7f8f7ee4c2818e925f583432b0b09f4fa9bb441afe109deebd02a74282e8329df123cfe51ef2146aaa6072a27d4d101445f02f3e4152424b1e9f4553ade72c5cddd3ab614526ff505c8d7d40f03e868ad659939c093fa5439758cb2c1e777abf3b0add64fc4dcd46c1a921ba6a42dc6e05f3431a6d51641047b615e3c7d2b5f810cf844c78d322b62d0fc8ccaf8f131b2a0cf2da1ca3f7a9f7b1a4df10ada409a464298f1c085f3fd0e58f36a90a16d388b322a354963c53967635bc2553963c70ffd25aa4d84a7aabfe40eae01d2d5dbde40329ee234d902e472fddd33ba5b1fb6859674bf768dabd058993a6927814f054b73b390c1c6dbd1e3f8228bb3cab13d6db78cb228e1598864ca5c2bf0ff4937619b13320a080acfab96be232bc04966c32a0d6798db20dc17afb08474a0bded73ca84d7c6c29ed768d086381529806b9beb402c2e08e788097825521e0723f02d19473644d4d4823b8fd72618845176174a2a2f12282f601c2bca3ab7f74c101ff1d573c881c6c318cc84882355f5fa910e4d0c10b0892997c04086f5033b4458aabcf6ed51de0339eb246f2bb7071ae452672bb45408488901a1065d2bf4dacbe5ae412c2e3fed6a0c6d276f885731c98b340647254008bc8321d862d2e76371eeae1f39f459ff1154584c0eda39af27d6655250e9a98fe442fa3698013e4446417b8034144b38d81db535fc1899c24517dfe9286036ca48b35e61a974eb25ce7962aa34889a2c73caa42a78867f827fe27b7eb32b7f73d82c9668953bbc2fae1d6eb6c54b9ae52b3fe50427907942a268fa1ffb48044b26697e3a7ef3246430ee0190694d911686db2420d12deff18befd9dc4df8316b164af85501f260a07c956416bacfd51d04c3463898cfa93a89968b7d387be1aa10fbf324072b51a250d8c0dc4421ff638749e254a4a361806137e61efd64ef6d0a2074596ce0ec634c816431f88089fbd67413760c7a8048e27915444aa0554083c17fed905b3cfb89f1a23b70c2efdd89463588a33356875758830bdffc5e5265fc60841fe544557eb7444a1a3d1f872360fdd04b957320ef16fb45c85c5e519eca944d87ef87ea6df2a98ccda1dddf66ca71c1f8e1475850dc1044327b1fc6457d066c62a98cc365e22c468f98673ec113ad69851f518d529f82caa726d6260172cf2d10a8131656b9c1ad7d1cd3b82224d1f1b33613f9497d2a91dbd48fd48325c26cc862804e1f27620cd7857a77e2df85aae95dceec33afeb3734089af327aaf43cc07f8997a6e32b80590b50495fe391b89b919da26fa8f7120c6347484a722937daf4eae714ba38800fbd96ee6aaf4aca99a7cbe925b33ed6ea37ddd66f63fed7cff106bcfa488f621a9629cade939d01b15c111a6afad523622cac68c85aa0107e8000ffbeed0efa44323c5231b25d4f8bc61a93a4a0a7809ea727058d9f440879c8e3be048ff6bcaf2bec561b15573e554f05a99705c5ad92b9f247c4e92a06e95b065b64d87e74e5fdd5f9c26cd0bad5386569650d1c1e537c0cb8517ba7365b07f777cdd4c6c257e5ba41bca8d763f6619a56dbf7d517f238eb8f6727522021cbc08928c2113c4f467ecaf1b0ddd03246038dba8d0a723cdd8ae569b59c2577da52d6bd4503c7da1615bc11819805070c2cc272835cbbd2bf4dc2035943f276fd8c69ddb1ef9c8432292a62d8f8909cfe575d0239249ed3e06bcf4e584a19cb172909d31dd60a1dca8a374bb9c601cd66fd00a9481416d24bbefe8a25cc70cc5505c49bb1206eaa8e7710a546dfa0f49adda6315a2912874bd13400b1658fa919132cd824ddd928239c0a46a9d4fa019f3fbc8597fa5c59a08cee3cc1e8e72f41c333cb82d5bf4625c865320b10ee2827a787545b5907e4d03fe79ddb0bc18d192c289a26b9af1054be6e93a4efd3c7ecb3a19c0f322eeabc66c446aa24b5bbc51ff85bcfd35c89fc7c5a2990faf34598c18fde20d69ee71255f5b6c8da7bdc16c02048c54b29d3e85c0f772730b800a3cbd4c8fdd20b103815698e5567b49b5e674fe23bd8267d7a7462fdc3a5b16a39fbf001e0f80a7939fdedfc1b6b7800e2b6c9823766d5cedda3f71b3d14561407b1cd462a74e761d770b196fa5d35d53796c539904fac7195248d5e191ef5e0fc41b8e1ff744e4cdc4a131d2e1b03f504773fcabbd6f43edc1214de5f92c9453654809757638dccc5a35f49dee7b08ffe8bf7589835166b559f55e4a5e7c0be3ed2ababf92598deb842f4b0fe7adcaf1f893f2af2d49ad0e2da6c36a24633406af91233a00f04a17d9e3aa51d85749132b1de15b4cddc6107b3cc7cf75722cd42ea83377d90c282ceacb587673299a6688fc77a23c90b2fc99d2a2bbacce97081b9dacf92276aaf0117ff668b0daecb51b4037cd421c1d51c9ae8a47b267ff1b01ed5afef8b8469b3588015739845d763fe7f70dac08c95439f517b68cbbb2405869f55cd1a01932b8602ec8f66c475975699e5576a69879935f8089c79c4e6b6a221c49a837b59dcc008abbb1f4f566e1376c8b8d1c0b147eb4e058b85c640fb4d59e4c0b8f772bcca11be79a6fe9e57543fec6c455064e5dec4a496caa2f7f8f964a9a07d73a0e38562e0c757f3724873918317404f3b3fb33c132d22aea02ba8003456f4fe8191f7dd91009d1caa3b39c9e048c75d729fa74c21533a44b2b7d86ad84ee085d92e0709e727023abc1766b2cdf962e655a20ed348f3ef5c38fa550b3cbcc1763ea19b1abf6e7b4a3b02939882c4a17091bf9914579651924419eb3958736a364117fa0b486e3ee79edbf05416a9411b6546e641e104830bc1fe6e36edc5fe618376902c1e42790e77fe33b451ae8a23acfeb2018e49c3b9511ef341997cda449ff9abb2e903aa182840762212bb92ad301d4e7cc23b44934b19dfed85567267b4b572c72efa6b12f7886cc951d1a31d34f8c634d50a276cc0c8c00316b425d244019bd778b0f96c111fa879d492ec1b25674d6813499accc6df68d1ba48d69df3c974c9b104829281f945f4a81a2befb3b2844463633d7685b4747d6a5597826b271089675e0e629637df41d4841a38c2fc1d13536b9a1eaa9578d4e5f6164622344200f86d25349872f3c6680e50a3e74ba466377901e5326f7c4cdb5f92b37083d41df6650cffd8fbcfba11f81ce31c51a75812f28bfa82988ac3834e9ef5883aa3f6d56fa8c439723885045c8f30ebb1fa381d628ce620659d9f822a3f4020eecbc300dbf46825707e19a1852190fd581aeadf87759993d2d8141cde6a8830e394428d7980953536c67f8e1633b208a36736b977e77f8325efc33e4594f9a44e520480b39afd6a358be4c92d6875f811fb72e26ed9ce8552fc1998dce3e9225b22c3031aaf8a5d589439b4f5a22e00cd12d4e82535549a1a29d754096bf337482467ec5003b1c4403c50e6ae62182096c8f80a6e0a8e2954711d9b8a18a846074f9e5b279052b7008139f17ad8708a83e25569297a14f805390d8547a235d98f6be5ef3e16c6abcd6141cf2b48b5ed22d87003ab024f600407c05c3d00abba34bfad2b7fd8bbdb9e03c8c151b89faeecc1250fc66c3134a84c2b7acc49b4566152d3d55e5a89f6a7e63b48da1f8637c1ba96cee6f039668dd1ce5264cffa3d2833aad31d3594aebbb25d267b133d346845d025d45e6d662c6602e8a613cb76c2e79ae1dba35916f94a344b5e985b05b9b7c81f2f96d4373a62aa0a6fed7ee59443cb50f16731c8f77d5711bdc65aab8c278b64d720eb8a9aa5b5b900c5059167d5d658753954c03650797f3f798e16444e8cf440acd06dc9552d795852f1857d8dbded7c44dc2a7ef05418bbe919f94224387c7e3a38dff26948156b57475c3bc15999f162e6413c52e336cd04a0a30e167857b85b9907aa158758e3b3cec7657724fd80d5213ca55aee8b3627b402dcc09a80ac56573ab088860df4121e0c6a908e3754794b118bda01074065484f2aa2bea50311e5017e440ea8562d53d8aeae06328c8111eaf3c590e4b582c93b507f67ced75cefbf1efc0b8e35cc19d32bcb0577848c49d0e4de3db3f4d634841fd47bcbcd98866bbb68fe19ac223d76d2c12000ad89a5aea5c61c9ef759584ba4c44c0ba4cd46fb43f1ba09eeb0b222d501258156f2a3c41c16e96f44884155ba2190ba2c9ae2319a58ebd17e0b1f143ba7a73ca248f651091f74592e95b500f8755eb9b9cf9bfc0a9345e9db6c93df6934106e6d6fa4ec566eb2618e48f3a1c29fde61292862d5ff5966a34d1e1bb73517a4fc90fcc48e7ff75a068b9c259922949856e89332b4552f014db445b3751bf8abc3a9ce1aa91776787a235faacd62101763b294c4497d5f4d84c3d40120c0d50edd1e4c6872094c1bc16b837c09dbae1598447cf7042f5c1f2bf4e424fe99352fa8eba5dbc6838bc752d4d68120ccd5ac39384098d43eb70a0b555860817132bab25e770d28df76a1ddeafbcf4e2202a2c47b3bcca799346a0fe6f511e4a0c649b48d3b5703fb899d4181fa2422d80eab51f00b3700bf1e2f1463835672f0ace7f43451d93253653f968d73698d898f193e8b003632a71f859a95167804b1c9628eba6f7954b37c0a30599dfb4046f1b98cc92c8cd3046bf1622ab7b8797257b2524e9e84f00832aad1fd602f7b232852f1b2daa0195d1b243b61776b04234b5f4c8bd97727b848bc2602a8b27355ae4c0ac259946eec5ec78c6ca079bb3130a214e4d34ea8cf2043be914c0e25dd9a2f870043094597180525969f567230648b11f25f0897a28d59928e67e84861c17c682749fc8c7c1a8dcb60d82a1cc0ecc07630f199b60d3e14a41caa9437380ca561a66f87d85b8ec2e8c6d62e0da886370d0e0fc40230b5059c9b1f7559498f3dd739168d838a3acf69ceff260c7b0bb26b4e2ff3a9ca422996b6d4f5a4060a8cccb4e84bf6fad4c8f039c635e6f21bbf94f5aae5d6337b13668020d3460ff5e0f7fe0f25e8ce86a51eb539a2031766a274d9f10ced963c63e996a9117c9aa5caca41cc97ba05de466d81b86af8f3b37243253247a0c89ed3d5db5b8f872a0b6587229c0856752835de55057d8a465455c1a361604ca14078ef42595714ebb862f4a2f3d3441a254e18bc287770f9615106eb1db0433c8c1020a14e742eb5561f1662811b1b2af8a1facbc98921b4bc4ebf9fce9c1447c8021e38c12cd451be4a52f85012c097c493afd3b72334d66b704c0943cc8e6a13b913b187fcfdaf378bae60309a471599d759271369984e1f769bb43f908e9c21c8ffce1fe2b60962fad002a82d8ce3b47c49141e854c3fd043cc075d7c0aa221906909df7065151f12a16c98dbcfe8db0a51989a0a69cdd0be40dd0b096e04e2541a02d01d97218453793f0c2510b9ad8a5488456e4b636bc5f09b3f26154c02f8db1fccfa18405073028068532b300c081a25674f87a322815d24a0684fa01546b79b11a2c9a1e4a553c0906c78269bb4e82dc9607e30973955bd615d7617bb76cb35428e951fafd1ef95c8d70c2350b77d343367908be692540c3a5ec82e1fe0441aab980313444877e8b2cd3d139052d78cfb062763f1a3170e957bba821ab03f82af50245136a5546f8474b0d341618624e997592ebdd348dc4fbc3e35e5b1ea6a80ec930d09f6a5c95cab4675ef23ca934c76f3ca80029b2c1321b1fdc17f287b45b050547c6d2db5ebfe7979836052f2905d7960e527c7c012be9ddf3db8be2f7a5c9c023de21dd4894c5ea3f07659fe3dbba7e201347d0b88de4d0359c5482839c90ee5d3227cc967283c8cfff56361aad1e02b04d23f456a38d4f7b0abc252833a60573d02ee7f40373b512ca4a5987677391f89d8976ac312ff54253642acb8dfd75af41109976d992838726a246360059081346f8c95b922f4da3e6da4e78d0c8840e1584071ec62f0df460a9c5dedb0320c6866812842c161c613a2b48370c3ffb6e689cbfa742155ef3515a245a71c81490a461c148293271a62a8f6163a2152c1e17b9a29043293c95ca803ca815f673cc5059eaa7d33e87003bae5c6b44155f71533451a94b93115ec69d9e428c4e55357ee567a8342019248e6c9b59812006173c9c6d6ed904db737894574215201229a92c5efb7c41eec4c25d67105e248d95ccbefa0daa12a8d82bd501126dea7226881ad2d4072186a74da134299ddd1eab9068424d28cf598c6a502b9b15686dc1630d1bd46b49a06154ea32b5215cb16a794321f9b1015f57640f4213de79a20911039bc4cd72a885b087106847e4702b9ac249d1b3f601f47dbfe8be0c6f9dfd6449b49214a669c3d6c4ac4210473dfe37ce870e90f8ad368c14da754a62a47ab7d73df5b045b54b24332baa867b37ef4c95191c8b01d1fb828424427aa38ae7d565d9ab36167e7dd15360dfe940c7e23544a4f972a63e9afcf171337f8869ccada2160095a49b3ac99ab25ef21043e35113ee8aaebb2a415d2876605f1f816fb44c315894c99f22812a0aab3d233203eef2121697d41960ca2052c8fd5c377c61096c033f557d79171d168314d5978d0e0a81733d0940bce5eecb8894f775c0c63d8e05753a117d61a6123c2fc1acb3edba029a009093d1e50cfdc40fc9f4a45ec30ec40b5d0aa5b5706d3e2622ab74aa863fd7880f9578347ca88e861811cd47c621140096fe0f3469bc2ab964a3e1a6d004e68d629eb17f5a458cbf37647c24daab1c8b4297fdc9881ebed09d3b24b0a53114ecd160fa8426dc2a418867bf27b24a0241e3880ead6537ce0595568a73419949a61fa64ed6905304e9f270509ba79dc62e7c6add56c75bcd06eac1a8451d66484a8b376d00e1dd4f8f08004f13d196e474083b646117a2eb00042b20fb0c76b917510dc0f8241d80dffb05905ae8e4e938a7ec6ecd608b4771dc7f78f9004c58bfff3ba90e8bd74f6422a746e4f87e5a430199250f8a6b276f1ad05e151c90aa661d8182ffa1ba50d83c5b63184651b949c02d4cf95ca71755c15fd2a8973983b0cb45e93b3206c4aaba136fa71baca9132dd5dca152eaa14f5c68047048b5b6930a92aa85be489042dfc734723f24e04e6244290976b4d4cea71d35cedda23ff6949c50045d5ceacd74f498caf89990f48c3e95ada9ac65040fb21b107349f33418ac53b0d9c18f6864e184ca51aeae19bee3978749a3394ce5f038c97abad3a9f36427b40b683cc41be8bcfe85e7cc07b114625d6f726d62e8fc80a7c8469ffcce8dfabd837606d25a213d1a89662ce1fe15bde569444d6f2502990dddf363c60ff86debd8e71906944241d4f004d79306e253e19e73a21bc822a4deca1d92598263a872bbdebfa1ab86cc7771ea9f4f459f9e696a1136874a6f684a71c61b0cab07a6da64e29277ba67961f1e56a610f768c0e0dcbdcf77f109469e260e745233994d2418d2fa7e4fe22e6daa4c50992d082b13ec484e1d1775cc068ef31684222654e6f1a6d757094abc718d5e0c286991205658243cb00304ff3f57650288e11661d6569c9833b680ca8a48840f9e81418d44bf836a2dbba34508e6468277c503c30929e7fe50c2d8091a39195413424bc89785fc614e6f2cee76715a4c7a02e81a3f1eb7a4bac3f1a274444b00db3f74c1ad187143bebc877fa3977c009d9887220010addf65cbf26b0598db40ea40ac6174abc4ef770538576900c13d4766ccf57daaba0fe7fb58e6c836e6023d3da9a59d1e74a348f6eb1b97d1e2ccd608d5e9b28369851afdc1702615dfa5b276cddf50df095a2035a51b7fa34d2b0c8af58a3d57f48288a81975b3aa9d03784965987c9b0a9ba501bccbccc2b17cbc80dbc0edf3b5bbec93dc343199eb6ca4b2c36f8dbcfac3678d928abc8f79da2dabd4c3f43a2a579e0b738ca9e4981071de35b4096f3359fafa5568db0b5df3e7f8f614c44b9e763c6dba05d5dbc38d11485076d0a60fb443977cb1a8928b321811ab6e6bbd587dd4ee6e8688713216820a53d0bba53bed33d0b8ab60d92fa1624e27f95e11aefc9542c8106bfcdcf65342141f51a542091f1a4e42a01f9d22f5a6a894fce0748b264f61958bc865d4d0682a1e08a860a225daae1020add2da000b04f7a4f9182043752da4621856cf26c0018e6e9db53effb09b7969e98c2fb0016427eb3155d83161008c5b58e70bdf359fcf642a6726c1a76c5f9a0979b0c64a8a637d0ec454bb4b7c5d031a8eaa865c2016566d0ef1ab764f0419cad4b992be87e2471d940c1c52b6ffcc7d7be51638454c8cd173b96ae14f12adc21e331e9ecc8060ce9807f818014071501174b08a7e6c64aaecc1218de504599cd7fefb6b366d62b6bbbb7be596324919e908f807510867b99d37dfd78d73bfe52cfdde94febecce9c1c7393df8f9ce882ed00ea8ac5a1b506972eeedae0d36959580aabae2bd7efef0f9409f3efcef4ddf95373980e08c9ff239bc47a59c39527e0441159c03483e71c2b3c4e1a9c3f4299f037596f874ea0092bf33bb126fe759e2065cd57dd0acc055dd174d9269bffbe1bdafef0f57756f6947f6d10e30908c391ddbc23f03abb93caa591ead69f9e4cacfb898e0b798e197e6488abf32fa12e9554cedd5568b595ba5595b2c666dad98b54596609785e3aa307eee4cfd5b98c9c62eabac67c903f829ef43f8a65387f7e1a79c3a80e0785587e9c1b3acb555435363999bd2732dd4189cc2f26d34450056855ba831983b653a24a032e46501e9a1b64a5f51dea75ca0f4f7e1225972c4145a5ee9dbf8e0bf4e1f765b68fbf6adb87d154b3f6f4c3b5a7573270ef8a6c701df74e600e29f637cf0fdc409dff4a633c7e9c3dfd1aa7120fe6068966699cfcf3b5aa0ccdbe8e136fe0604e1ac71567f9ee0913911d2a0f0c1466b928db9fc0305cf8ac483e9c1c7313df89d39506f3acb2d9f38de87678e94f7bcaf71376f4a3f9a3a80e8409da5bfe9c30fff64ea48394b1e4c1f7ee9278ee94c79f04b9c94073fe5ac57e5e576f6505ba5f3f5d2ff1afd2bfcef5fa47f89ff02dfb33d3c059a37482610e1c8ac2d92595b325785ed69619ec2a81d9b8b45d8a1d915a91502364077eb6677a29d733fc2e763168f89466d519185e22cd2dfb7f7edecdeef7ad7ce2e7e12fe90f4e00ddf7b0b7e75162903fb432b6080babfd3c27aa82d4f8946edac01deb5245304c1e873ec688dae3ed19b3dfad1e8add98ddcbbd1a8433b2c6ee7cba831a4efe909011ab1a110ee64b87d0bb7cf38d1bd4004415e218c97b0fde05e226cb4fba9ed3af2c68dd48ddbddaf69a542dbda8db6a2951680de6f27f75bf8e1e4e83eef68552d4be2093e8a44e15a420a27438474e0131aed70100f0d38d9ac88b4c80bc857427766eacac440a3a9ed16edd43a170b545064045cd1144530914d5104941ddc2c028298196d08075138982793c2490e8f14454b4a696906d482991242a0167c91c51793219b15019b42e49999a0094248195a710d1529210216398188229d1739ad080e3e58112350883c24d7144562d73545ca82d03505102c88b751a0b1db2f31be78dba221db8edb5a1a047c557f8a846c28dbbe7c46040b061539e1fa8a7463675b1eeca58f202c41d6026de8e68ed63577b4403f22a875a510226d6d531431d4ba5424e1d30233cf10b416ce018f5acbde408809b1d675418fa016f885d7bc30f0c2d50241191491132e01cacc852225602d70145ed326c1c14eace55958e1d3027578cd0a04250aade5585411d402535090b6bc093488b5bc0b21452d77421269cb0ae9010b642d50a562e1c4ab62e1c4cbd640498f19a943832751e0697dc0dac00842e85999828788a159eb03168c2e9cb4ec6b963794387fcf0f541f98a00bd8695b1b84486cd6025bc26b5e24a2a42d5742054f0b7c09aff9c182cc5a600cf7c122073ee6072c0f211829bae689481060ad0fdc1a040db5aabf8086fb9a1fa829912014b5ea797e5ec7e5f33c655c244b7a6c49c8b6053d7d66e7325a581842d0ae43f8a06d41aef33e154295981a6d9b4fde3652f8cdc0b8f3e3d9fea9520acc5fd65f1597f366b210e96c126db69c5b309822da6492b8c38e8d2f2b83291a775d67c797279e5071215b58ca16d2e5658c81c26f66ef93f5c0dc88fd1dd163d7dbc1dc887d448f6ddf65dec7033b7febd99ad87e6cb2edc7d6c4b69bcf26c31fecebb1fda8e7d6139a3025197a86c51c078030a64b27fc5ce9f4e4a9f46477ea4ecdd1103fd8ddd9e33eab3cdc16e38d4d744b8530980a74a910801a312b0440854f3bebfb60e46f1acbe00ff6a47635d099bdc1c2f7aad8287eb2edb3cc6a8d9101c915f606bbac0ee617c0313bb7a0c6ce2aec4da6b7bae551994346c0c6a74a00ee82c578b3c0f90b570871926531f86642b68d06d89dc49cf490dd0184008a30b1d66a95fc2471592f4032c8fac55be63aef03435197524a29518a3a520c52acb529261d4b7aea24628c4f282d7650236ad4e20718c6a832aa649a58a442aa909b13464b2057c895bc644b3bb08a159615162d9e6891762c254b897796c096b8b400439361188665cb925967875c402291482e2fdd4b8c971843a417c81852411450e7b4a4d60d2da1911fe3974461a2834993c9647a73468628140a659e4c824023a8a8a8a89c305d48c5cacaca0a8c8cb22c4b1933bc1bd827c000003400408328a77bc21134c2183162c4a091aa7529554a5503ac0aadf96dd253303030302a0460c68c19330220c3a42cac78246685981594d0941cf1d122c8a70bd315585881852026413a310a16645890c146f20f3d039916645ae0827ee81604d08200b4f021c2820809b80aed0401b82000d0056c84474371c1860b2e100d213dc5020b2cb060c3c692a0ae85165a68e1851796ec7420106b86c5f25c21d193141bccc03033e3edfad3c405030d0c308448847ad79f263cba254350a0898146b4809d8235eb5771ab26ae314d90343942935913599318745388418618625822db68587f96fcc046feb44486196490410b9d8d863f444ea0e55d7f887e60256cd22e614da0224c6c728619449badc6d4182551b85d7f9c94607b9d11edfc3879c93481d284090b6948d71f26b58d863f4c8ab67f78491ac218628821061a6818a39861861966a8a106d41235d45083685363fc6ba8612129d1f587098d3cc0119004c29b242f742d42a4677fbb1621b2b36b11223a7bd722445ebb169941d928de3e53b24bbb1699096d7b566b39009245a8d530112622ba9708136122a22e88e00d6f78c31bc627c05dec586beddd8962278a9d2876a2b8b7260518bc40880d679c8988321006da8830de84c01b1051ec04575cb104175c60bcede0ed8a30c2e8228a20426cb8b683b7201baeede02d48ce1bce57e0ed069981a1861a7c6b3bf806a18106d1063f0db7869a8b77f00d52438d2844cd96c26ee14b0311a681e8d24034001bee25b201df4d8437d1dd4436375c282c31c3b51d7c05c63bf80a1c6e10e0047789bb0293182e7220c01504d0e10a1d76b8620730a24419800d17d734b9354d704d139b1b9adc70f1009adc0134c1036882c30d5c43c2125fbd222e85426b02ea15ededec1c277115cd7bf989724225f7b676591c1555657f08db8a6d9fcb62db9abb6c6d5b1897ea13919e3267afc88362dfabf98ab4ed0f67592682bc285cc0d2b085be57247a45db7ef61b3f6e643f0869c0134040518128700cf922c7078ab1e074b67d8b7245b82295c6df9f1cd91549caa442b1b1d19abe747a70b1b7d8a8f5e1795c5ac4e9f88a8371300ec6c1b81807e37a3818e7936657cec1341aeec132dc837b2eabb6647a86e21e1cf445a5e154a0cbeaa91dad9bced6b820d3cfd965714157659fd44f72b56d3fddd65a3bb46d7a5596866951541a778e3bcbfc757349763649128a4a4381ca844d818b0410b6cf5caeed67c97ddd9cf9323cf54f549afc14b8dc144dd8f63923b6000770d7be2705b29dc2c62705f259da9dcf9a249f14a84936a7c3fdbaf127d99b59936c6cd648792a25c457a58c0d2f6764b03f7c55d6d8e029cba57ea29a4bb7bd33171b80b50eb1ef09ba45822e0210beb267d979ca2b0044cf7630b410a93542c61f0717aad82e84ed31ec29ccadfe6cf1da4eda6ea528f2cfc01328db65503bdbe288bde15b93e8933ff1a27a8a05a8cfaaac1a6a2d92bfd2e0b77f4bee5aeebdf7ae75d4d2864aefec4a9cee4f9c81bbef97b5d30178adfbc5781b8146bbd0539e6863edbbbbbbbb75bff756d2e7d6da330f61adcd8e6df714467862edc984bed6da5a69c4efb36542bba843a562053b7c2fed67d3dede7be76ee899d68634fa54aa468e4dfabb49670d2f80ef1158c51e76242113828b14f4008811b068d5aa22fdc84443f186d18befd90822dc33e0294344a73e3403a189c51c308e02dc0d7e0d5f81f753294fd5b0e1a91b7645face9c11d0274f694f5d3495ba5bcc6619564fa6ae8ff17f8731c6df10b9c7d5a322e8bff8fac6832b912c7ecb52922b2aa3a934bb6731b9f051a31f4db1c6476c43db7516efe01ea7e3b8f7ce1ca41ca7ef3acb75f6fbdabdf73e70ff9d3a4a0f04a7a4437fd759aeb323ce019f37d23bea530a5722d960c0eeef3b1badcfd24fad3ffdfacce13d77637ab033c7e74cd49f4cfd24b3f4a5ae1b47cd3deacc517aaeb6c0cfac2dafb32db1bcd15ffa2abebce72a366b8bf340b1fbc211f65115609581ea223bc4feecce065d96ca09b5e94ac67668dfd3a668d7ad9cceef47f3f436bd642a9aacda0ada97d68161ce65b98de5e4a476667d7c68f0f4e849df849a455d6d4f7a1391bb768a8bdc8337c21bcf0b4f1d6158ede7593b7e8d5361539b5a1f582a6c6ad391b783b348991b3f5c162934e5afa205306a3c5f2fefc57f7d7ffa99cbb23e17c09f1f65d6d60c394396dd79039e257e30f43cf14c4fe70fe78dabbad6e7b26c9a964cdbda4c5d6b3d5595b76ebcaff121d4ac927d6d7addc2be9cabba6f797e3cd5232aa1519b5a23beb23ffbfe0d3a627f7c955b376e7eb87f6b110eb36dddb8acda0a12a20dd55c3fe9472f860f7eeffd0e36c8d28adc6585ec50cda637376caa8bb29f8ce0e264e04c1baeba0f6e4ec6d3aff5c4c9df9d39469f73e8e7384f33977addfbc0bd77ea4879eebb93e33e674fb3a7a5af71cf214d097033a74ba4941129cabe4f8a92deb89189c9c052da505acbc9bf62929e34bd5731bb1f4df051e6f727537c9319e214132c7683542315a53978c97cbdbccfffea9ef4253e6f388e4b394bf73ebf9f382452c9ac2d1ef67d1c9735aa4a36c7995658970deef3e3709ff589939f74e61859f1e6257e08fee77df7e23e3fbeb9aa0a58d750ed46eaba2e22619257b5edd4dcb8ac155288869a8d68ad59178bd9fd8af93d69965ec5343d6ad466894f24272fcbe6c09efc1a3bbba4f7def7e077965507f85d37fbbad96c76a3f76cd6da353a95f23958faee5fa6ff1e7410dcba074bdfbd9fa614f0d69287ae4bb1e28d776b80989199bdbc4ff9cfd491f2df772e963c805f7a1cf04b39bc073f9f38a5379d396c5832c13799a5f7be7b1caff352beb304def801081c41b4a29a276724cfe6611264b965bbd1f257a6a896da6815b239e297e6e9594cd48a5962b2943252216566642eabb666b6f34952466634333a758c5efcf014cfb2ea08455088fc4d011b0986e38ba370b465f27cbd4e0ffe0bf562786e27901bd38336c49a246d0c9eb36fea067193dba3a458de842788430b82a70745d48bbf43b4800e76e7efa1b6c2c7e24db885e60fd7faf0d4f5d4fdedab31ded7b87542fb6653f2007ef83e8837bec3c8fc6134adebe6c6f7684d5fe54de9a30f1f67f4e189a3a2afaadb4cbcbbcb1a7dd7bd68ea185f7cd0d401847b1de183ff995dc903f9a3c7217f449ef56e27ce6874e2f0c1c70941eec419ef4699253e99ced72be5c37f95401ba0482a85239d322363dad139e9c8dd6ebef7bafcbd17d52d8fd6a0d4a5cdd417b37b17d3fb1673fc92c52cb18a5962d22c7115bfc65fccdabaf7de9befbdf7deeb43f7dfa9037cefbf5307101cf0bdb3ac3abeefceb2d65635bbeede8bef8dcae71664640470f3bd2add67aaa97e999a0f7c9c3795f3f5ea7efc97f728fc7d19ecfefb1c40b8cf319e381eeac419c88dfe539762f6505bfa7cbdbec7e6cc8dd17defbe48baddbd5765c7e6a0134de83a038d9284663bc6ceb61f63c757d5bed88446c9bd8b90603b69e6abf286ebdb3e29bd2cdbb28f927eb60dda96d423053f2dc9928462f0dc2218f14c1bfc88d52f4f5dadb3ef6b1d5fa1ddfea1019745fe8c675f4da22ff3ad84af62a2be648e9f6296d86496f8334b0c9a25de52c09acbbaf79e5abbae137adb17c04e743c1a3fd8f168f46fc8abba5fe39e801a73156055f7d14f260135e6de7b8172fb2ce07f01b7400fb5f57aa1fef4aff1c3f79e3dffec837ef6b297bd90f7f99f4f5fc80f799ffff9d48a2f7bd973661024d106bf163d3441138da50915a5ac9008a4515dab34a0163a1dc30fffbe36725fa7bef27104fb7edbdf56d6e8aa23082a0bac60ad136ddc13576e50dbf75952dd81a0cdfd86847bf6ecb06e8479ea8e2e71748daf9cb1c71813cdf135ea78ea8e39638f3136ba8868fc416c32b016ba3c75b1364b5c739a50fcd16818bbacd2875147e9e3d796e904632d5bfa607ad4a34e1da59f4c906f7ad49bbeb64ee78e969f28c883324718698e2e7f21846dfbdbbfccb5f199831562fbf93e9edaf6051a7dd9cbdec75775ebaed39a241fa74697cca8128a5368cf5f0a757c55613aa45972f90bf7554c5409b6ef6f351f5d963dcc67e9f48eaecb42fdfd3167271d7bd04e6f3a472cfa60faf11c5d4a68b4d64a3a25cc2c7b78eabe4e2f4bd75c756b692dd5351eb616ea1c5d52e8edd197a52ed068ade1a834fee3aa97b35ee6aafb5182a0a44c66497c2e12d91f79d9b7dcf7d9f78e3ad81c395057a31039ea6a7cd5d4fd3bbaa268348c91316b7631b8ecd4aecf25a12d3e372843582b0bf535744165a1ced249dfb3e6c4bebf22dae85a8db92f12d1b54af3f17cae2e67db876dfb3384168983db6985725ae694b0cb3a85b1158efcb27d32cb1cb0469c9dcc12765557956338f05f0f63fb96394234f7e8e82aede89aaf6e12354f5d168c038dea9a0bdd60191d5d6869a7e481963cfbbeaee9282e5fe5f86ad329c14ab1d24e89a7e4a3f4c3575d495612521ae2ab129f3ffb1ff242dee765220edc9ee15363eeb320d176a3a34bb6ef833484b6861abb03502366051656ac191930309c3431c83083f934d450b3f1963bef0343d17f74edfb65cea36b7c31d9f7c71c5f91fbfe28f3d51067d18c3abeaa403a49c61d9e21363af68440459460a3a39011b6ef865f26c4571e857df10c9a763b831cb0ca40c2b7cd3dd449588c6de8abaa7d75da1357162b34da096dfb9d7f9701bbc1a2f3ec68db3e936dddc996536938bcc92acd29bb2a0de8d12a8d8a11b56e4aec6a833bbf598db9447a682871d1cd471bb16d3e3e2b4cb45b9e536df321157d4a567a2a0d0667a7da4a139f92530d9c9d2b3d3adaef938a48353dd33f279e4aa3e20de1cd47064ae38575daf5fc783c9f17b56fad20157604042a364af2c1b3ef8f80b0ef639374d5981ffb0278a3241fa6204fdd5f61a2bd658327acc6dc5f59a2492b68c4b613c541482bf65d91ed4b235663ae8ef6475d68fbbe0bcd65e845f622e4849d4367ed1cdad714b4efbb6c1a1b136095b11244a3ddc6425b7b3ffc948c8d1a1b76a8214bfac3b3e7ae3a6629a2d10d06f3ad038d6e301f74d381f92af788f98ac7c7d6b3c9846ca68e67b3ab34a77d5fff5069c055b97d4d826fb7a5a158697a7896ac8446bb8dbf07bdfbe8f7ddf7614f7baab3bbd32d2f23056e3d3a35437e2dbe02bf071fadf18135dcccedb26ca1f39968b73ff4fb8dfbeebf1dbb332d119685ed6b6e26b18b35e6c9e5ecbdf7e27cadbd1b105b8ddc5f2fc617dfcdbb6db77b2f3ec23ea089bdf5e61b3817203ff79fa88307367eceb4e101f5621b9ae0ed004db6fc8026997b4013aef3bace7b4013af0bc51c3a1e1320c2184f8068014414209a00d104886ab57fed04883a8e88a0990c33d5eb66c365f09675d03552a92d6f0cd0323e73b88524bb1b81a2aebb2cdbedfaa53511e8beceeb3217dd75e96e57201e60dc1d687157201e4cfc09fadb1588c712807854b173ce39e79c7713420e44937605e291c6b4de158887cffe940c88470e26aab5d61335777d7cbbeede7bf1bdd7628c1d638c31be15e35a55a9b72fc0186394dc5f5776c5f8d66aa3c6588cebadb5d66c42d1d57eea5b6eadf5d65a3b34dc3ac45dad336d1f8a9c055854ab8fac5a17adea9d5cb34d52db9d6783a46a9314d95a8e6ba3eedaa8bfb6bbcef61edb5d48888f8bc90d80500105198f2fa0b0519b8a00898dda20ebceb3d15a34f228dcd71d4714c941121d24393b6801181bb5b11014eda0d955a576c478944c41870b1a1072d0f2da46675eb30d3a0983022029787a200404d4f22fb6bf2662bba3a78d5b5a362a83470511f860e327631b038d2049ad31f8fe9e136dbe4d92b5ed7932c8106da051b206e8e5aaba2d908e9dd996b44021a0c1eebaf7158a9f7c8cbfe5bbfd601745b396b5ddeb079be31ebf6b679f01bd52b0b7ad1486463d8866592997cb35c4cce56ad9c7268d76847d1ffbca865883992d93b2ef413e44f26c2f1ab1a0d3b606cd7455488918bca00a1f28b511b8173f18b39c2010b2fd573a540f1c9064ca46432010bc60881fd8b8c618a37ab85076f4daf6472db14042c0c0081bff49b4c196c7e57211e1eeaec91c6870042f9c10b18230be687917db9f806e126d3c65066e4165c0b0d11a366428028ef2848a8dbf8362e3d76418586cfc2f051b6cfca929bc367e99fa33051d6cfc35b08d815c4cd8f84ba20dc62920c18731c6d8e6ae10658aed4f52621f3dd9d8688b8c8d6bd4b0511b5048c1c6f83b0d851d6cfc640836fe3fb271149e88f2b2c133bbeb306ef273025a1e6b208a36188371850cdb3fd4028c1db46cfca06883bbff702d0a0c806cfc187b3e6a2300c0c6cfc1a4d0b9067d91834df4050a367eecab7363f088214675052f9ef0332f3c51828b47155c4031d4c25036c67874048dbe1740b63ff6154d578b36cb4284d4baabdd8fce16c40599006f2660198b23eeee896d3f50b660812371554dd2f960e2aaba514d9a60054bfc5842c8ad3f5d346182ea32b26370c4491eae6d57a01cda27859b025ddaf5c7890f09a878820e77fd717284074e685038592244d110d8882222ae153aeffa5314b3c91102ca29c169e35d817288d8e8cb780145c8ae3f507cd8afb1eb0f17b592433b3235d309695aedaa2c8b4b6f2a0bd3b8f4b2ec0d4fed9b20ce88a72c177472a9a72c03a6b0f30fb1f37ba31cb1c876efbdf75e193cb55dcf2bc15055db4c8dd9ee6facefb797e12b199fd9e2aaedbdce4cd5c839e7bcdd9c4ff2c753db6be0de6d9b796adb66db6cb6b79fd982f014202816d1f5ab0c586bad1503a997d47a4a082a900a7af6b651189aafd017b42b5a11e22b0fc3571508055036cb5b178581b232448714c00cedfb30b4cbaa2df4e52568dfb77eeae182c4e3b42f2676017b0912b7d0fe2918cddb17867d381346e8aa5c9eb814d598597ef425fd4c18578d7949b3f9925ed585a1c16451616895c6c280b1efc33cd91746c9bede0943bbaafb1d4966181aac67df9b32e28bc1d04e3d29588d99e915598d79495fd21723b074df7f09f2d5b8efbfd462bc9cb5f1bc1c89edc0bc2419da97a6848dbe1405c1a26cf425cabe2f42fbfe666168be4257663043be42576430497ce56144d9280c939554d175b0059e9d415b6b58f7bd185bbc759eaa21eb7bf404bb2cf0fc62b9d2d8ddf90a6353dce0ad5e8367e747c31a3b9e226dd07a5ea9061255956bc4483d34eae27271b9bcde25bf0bcca587b3c0cfefb2e32b971dd3e5335d72ae2a3f67baf078cac70d3bf36587e21e6d971c4f65fcbb8a38dceda70bcc53f95d2e2f4fe5074f9aa7ce249ecaf75e33886f760e9d34120af499ff4c420386f1cbccd4e02271678cf50dcd2de7aa605785ffc399c8ce20970286476494eefca0875fecb24c413a3fdae5073934058c9dc923a6a0ee519530767ece34653526bbb88eb8b83c957f8589c60198d598fc2b4bb48b8b06cc7b99b4d2f87b278a83f0d8193d693bcba43526e34769c0767e1a301a311a341a49920460e6e55ca367e71ab19dbf33ab30b30bcb6a8cbfcbae32f229811678462100c10d098dcad85586a76aad9e528155063a83b6af7b9d2886ee5e71fc20b591c3ceebc4efec86e30769e564b84e94e5bf35ed160956c86e78136dc4caa51609f6efeb9aade1cc24a739cd694e7119cb4cf67d8bb72ce42b9c91f88a96873293a20c2547f155c7b9b85769b1cc53d913659baec5c47d3f8cd538d3ba7020a1f1fb7606f1cd70e4a87625c8cbb66eebc04fdcbe4ddcb64fd740961404c1d2cbcd7adaa8ae15f10f7ad91f792124dfa76b9e125f47d151c69c4ae3beb9191966baeecc1e9689e25b738be9efb715681caed237803438c441f115aa39ce22b1345b7397e7b88ef770168ae72788874b3538a4f5115fb911c0a16d891eea2c16f6094ef67553d794d0f631b76d3937d15b8ec9c4a70de1154762287a2f8e45ecfb588c427b00075733e3badce5b0e787a7ae8f902726e2c06d0cbb3c4baace1eba3d31d09d9f0d9801cd3f130d371ac64a3b3cd0d1e51b761d1466e2943dbbd71dfaf054b863b5187a29962bf4080a7d7ad3a35f8fe92c7d1875a050bfa3654b1cd3e92c7dd0d1328156fcc1f4a7afa20fa8131c4f30763279645bf699395803a18050c0283eb39c2d00d2cb3abd35bd1d5d57f50a5df9a53d7479cae6e4b48b812814ca67f6b2ab9a814eb2f9b6619e1ea057c4a3330ac1bae62b7b047f8ab910055ddb76a85d3f24dc3dff90ffd9f268c71ea3f9329f1732f3d4284465e5b4aaf0bef90745106db83d6e2468f465d841700c4b578db9bfb9b063000797ed678ee9eb55d90cbe7ab8620fa6afdbb5dbb66dde324237603a330e5dcd5376c3000ea98d436a63717cb9596dc947fee3766b4d177118a13b3613a6c7e7e8ba2cd399331af540a3ce3f759d49e87e49b40191782aa5535263b15fa6872a0d69dfd7439ac9f5c74595067f9d91a09b50efb31d9391854c064d1ca25dbe8ad9f7c397b3c6d7a8a3e327d387db948dd0e0d01dbaac9c874c7ffa7a3aad9090116b37d3cb3213be796abf502721120924c995930e294ffa1a77118711cb165afff7f9b7073f7cf0b187dab290326e2beefa37d413bd1e04b97d74794afc810e4f25f36568b3d61d7604d604a5d8f7329ed087b3465717fa0d61aec3530a772a8dad31fe5e90d213dbae10d9d6d6262c6a54117dc0222357c895151690e5de9bb674658e0e34fe2b1494441db22f3ae3893d63b667a46112fe7e0a798ca734497b7bfb6df1425ee6abf2ab95208ca1a3cbdf0ab170c4364a6e1187cdd96176e91697900aede3115f951548b233e0a9fbb5280b812efeb205d1f6ddddcd12bf6c35d0f64df86baab17d94be2af20bda768bf1a24d36e2296d61441bbd85b613bfcca9345bad95c7f6cf58bc81abb9a089c640c99d3b1e1b1d5d260a0a5dd1c6cf1c9453d3091d9afea14c889f2fdb81be2cd439be5c751f1d5de7e8aab9bf1067a1ce3187f5434c67ec67dfd1131acde9c97ed0658d7f5554cc975dd578be8f0989ae390d81722aab57956e3e57659ae7796a21843c614c5711aac488e8dab7eff3a8b0bd96b1a8e10d6fa58f3e7cc5f5fc587179c8f8e3ab12639ba4134a7f24c95bde92b89975ad94538a612c14b3483c45f3d4fd31670c1a8f24d9fef759649546058820469712349a539e532ca261449b100c6bb78846eb8c19a20d18c553b7c6c3b726005229d1267c950a2a8836e283788515449bd1831887458a64bb167192b35dd8b58893286c990d1ba2cde8376e8c8db03107fc74c991d8f2b6711bb76de07dee03419003ef831fb7e5ba859ed8795be8891de9434fec5050080d629391462fbc20dae0567d7015ae441bcce2b66f2e3e380aad88c3f77ea22c5768743c004863c2a3ed0c9f4a13fe8db131c989e20ddc0ecf2da7c6f8c6c3bff3e7fcf37ba6d08c2740b403d22e744bdeedf80acd289eb14748a968a8db525fa1612cc857a815ca467c6575b0efe723db8ef94ac857fe232b34aa6b187367109b6c7b9f3f146dbcedbd6c624f893dd0331b13dafee9515fdee052b7e965974556634a2c93a6e43efda757757ff63e152c85019e66a8a40c7756450c15d108000000000315002028140c88448201713808b268991e14000b799e4c7652198a63590ec3288a629031861863943100046668484893020026b60e257ec1c72b96ea8256787ab9235eb0ce655a01f8ad411ece1fe2b6e5639fcb45efbf47a5c93ec27146941d91339b6581a4ff8cf1e183e47042aa33244683fb9be20cf906afa1349a378c5625b424ae1254aca67c5ec99fb11cf301c0e3d5f73c6095d1500af00573e2b8e4d703148f12ab888ddaf15978a4cd3e2fa54087433364f65776f8ef76141fd09cbc5bd8b28c360e918342f9a1cc7e9612b396fe37e211ee8ddfc4f8464a5bf0448100230c6225695b1a0954e590ad549108eb965f9ce8933d6584a0654580b5401c2a949c4a8d292a571fbbf7a8e9df4cc4fdd85a498ca95b1e2ccb169cc37ee3f81651636f58b4fd5830835214ad3808ad892598d3e3b0ea6cec54075958b0df40bff21b548d7b7e6ec78115785ad74e9cd070d83bc813a4d38ecd93465c514e301ffa679f10b5eb0e16d4f2f226d0523c40c2f4fa68f269051612905d300cb6c0008946481fb1e8435074b8e190b9821f41d4cd89951d845e2d7fc0154f8d6c0152b75c1bec655a2a7aa9534877751193177955f8a1a2bce22d861f90263f425a8f1c425777c6ed045464053ac360e23df495df7d6c61b92f8012ca234294e52ae9c82f5876d52884c4d94a7c81dad5dcba37be929226b07f6987521b5907d9e4315eedf21e49d5159a6d924eda2603ce12c0acd0af82b69f52cea32eea347e8fcc90c4881e12091bdf464023200b129f41679eed36a7052a0edab20a11756ca16126d66a21cae322ff618560cbd79e26595e5229dfb839e65c80f65cc39a4b145f6b1fe55c9865344d865a15e99a4165f2a7eda461c4c139ba63c0a84261d50fc7edc87ba786094f8af5afd9b259ac08d763bbd6c4130338fb243c80361982cc7c67c6ab5ec56d1cfb8168e001bdebe7cc70be9d64d2f30cfc40b9fe18a84e1752ebc2fd96d082c71e89134600dbacf2c866b4b2de910eb34602165d9a676c3f45994d071e886bed56235bf9a3464e881f05447e1423494b7aef3cebc7dfea8df79b0ce8460a51415cc4e78924568ec2374eb385fab8cc3b086021412dc9328b06813ccb5b579b0ff7f9e101fadeb1b5e6d3ff230712666fdbb111a2e8b3ec337bc702e800b569caa8ab4e35c7f2a32d4acab08292605dbe690004e7e12eb0816ee9e7c9f8705811482a5a0498093f1460810182f2505670ea22174a520064e88501fa2bb12fe01c9f8ea37ef04341b890e25825257f48cef4195a7de314e4d5cc904c5364bcc6334f65daf93380c961c9d19dd22dbac13bf3f62c9d880f9993e17d86604d288650987620700bae09dde420c849d3dc6392e1635c47978a6b598baed08679ce4149eb15cf8448fdb7d6006806d1b524f8bea0dd331f00afd2f74949534b5af5af357c0f5961732168902198b7717ad1f6e20e39ce28b2cfad48613dce62b1ed37440fb488039a141df5b830e3e3c6b8ad6c782eff2ba136bd8328d53f9b6b48ef1e9b0083644482363bee00958a7892e2de078489cfdc932945ed7d530f5874dacdbfb11bc493dfd04d6688ef5df118b4c04b57b0686b2a0b91509e375cc4b33780e038d57a84fda5970e64badee6282f7757f96abc7fecec23565042b151dfdabb4f9713f06c9ded15b375f0130e9ee8e2887f404462ed5277591f515fd755e6cc53964da16bc5448ce27cfa2826d858e172c7023ae981d1c9a20256a2da40f12f16ab170e81fea6e2cb81751d514fa1de991e2c38b0c81c6e6cf199a26e581b87e1943dee6b8adaea453b4816adf06e16123cbfcc849663c9547b5a27fb9b99583c44c1194ee9695cd066152c07751f16c1f8482ff517e8c19995b550075c16a42c802917d37c2607163ff6b0f985e2607140f4b899e4fef86d001b9b83c5965ae2d9773c581663f7ef0722f04d474a97743d88a38ea39131608c1d2ceec066cbea54b0e5d847a0fa4202d83d5932c2b9a85f7f7c9cea1fdefbd3852808d489b1b1572b712ab7cad3989df0d2fc4184b578cc28f8d2f13ab87b1dd51d6f469af6ed5da52178ff8ddea4b1de3584a57c5ff17398a9915822708482fcb6c7ee6ffffbe34e42a4c744ed5179f744d7fddf7e97ab81018a4e7949151c82bea483ba365d436fea576594b7d75e82745004856cd2a18d70ca4b14190b6223e3a5c46066781ed9466f4a382e747f4b1d60b274aa3c8dcc1137bc7b31ec3c28080bbf22206644558d1a9d6a6a31c02bb35a7210a70b8958b5611dbba9cb53e1c37870304f79961f5b31e1d12c7e14f90b2d789f0379d96876924fee768ba32508e0af80faa7a46c3f908339a96c13354900cefbf45b558b63054f68988b9888d9fbbcaf2a3e43852c566d8d1336cf83f5885cd91dce8c7850f4bfa3fc8395e101483d4cb07885e4fc045ea7f4a1c81fdf91e4185b62821968f0c40dcf12780c7d18b99fa4645d4ddd623c7606f6bea9ef44080d7d44c72dce8c2c2174af43c66f710a52fbe67c87be20f75938fbec7fcbbccddd95c1738044a12af4cd25c1eb952e564824404dac55df340aab0a540789c3f87ece8df924829804409325efc7d3d16c5d95b0984f5dc6fbd1923fd8d7a34d2f4ccccac22764eda4dedd5a58ecfe53f9652eb03266d9faaf643b6e7023b8e5bfb275e261f2798e855dfd9639e377b5ec896465965e8810b0b8d031a0ef5f7c4e4d15806b8d8fc768fc28f2296364b4c7e686f0a9aa6f9d25db58172f5341d1cec3aa941250c7511ad5ce8c240f082c766d9b131762a41c020ad086e31c0a84222f432a261e91c901ec6fa2402b2c302e242457b49cd5edb362777b2e9907fa082965842ba210ef96bfa6983e883e8b640eb5e05d66f1bf276231a8331dddd0b3e3112d335f62eaf54147a5399cc96fe9bb5832b988f723dc23c8b4636321ceeb112fec821ed51ca90ab57d6edd3cc6889ecbbdd74e4949405e9a3f00fac3a14e4de23276eacad1cb5b085fcc0f66c1183f6f8e404d69392fdea43150ad80584e18b7382ec1f2d05dbb1ffeac43cd9a11023e39bf5f44680e854c4919fca671544296afdca310a1edf75ffba2e23b59dde8e7b04a523ac4551cfce39e38338c125b33b4ca68b05bee2add8d6aa7374ae3672ea706d1030a1a1ffc628612df49a9a9fd5a704bc2da4359e135a36598112a9f721bfe9387ec1e1d51b8a4c421a07c5accaf0e3f90e3a489d2be125d4f3c9913b0b2883ef2990af74f6047ae92d2b57ff2660218b5c6788a141b37ecc1d84b80d29ce1a07ec1d817d709ed6a6cf7eb1cb6a1742821f3abd8e5d0327b2986053ddc05ad39040646aa3446d1def03366b3a9c659f5e6b03503450a1377ad7a981c30252792c1b66ab2074b74085f20f2ae5c6c05fc587ab456a804438c8d5a29d6863ccc705c29d061a6b99a323d5a1800499f2ba1700b635c7d63aed7619b3a7adabfcd59d190395e4cc7350e21b504f856a1c71306bd3b92b98421d52941d5034559cec40d9727f97ed13155f5c665bbc7cb13090e922ce5068446edcdd1e0cf3d061e36345d580bb1735b760915df4db690c6c13edfbb1ac5cdf96ad22aa8de0ddd6b34fcc4f0aeab0235056f7e05430b1b3550df929fb4fe5f3cd1ca4f525c52869b81d813a7f40d31578663f90e0f5c3cf44e7b8b2b702a6b54a6c4fd6034ba2358171defa083064e36de55aaab033969e81ef5de1d092a9f2b72147a3e77102598fa348f91c0aea21743e4d078a5b399ff812077c5c001fe44f59fd4ebf76bcf9be58c5fc882b047bd08a9aa976e57d9f233e10844ebeaf8f4833122d76641ed5b26358292e00bd74e577a23e1146cc6268828fcececf133a89018200e5013e1f845c2e38eb64475cf7f04eeb9c89014ae22202f905a3240072b9f4b08b64987858392fd344de45cc651c9c6ce82057f2f812ac3e8a1252ab31361a97aa685e987f2162e6f858849f28c775225882f1db7d4b053ee439e09d2b5be0c74c3f06a90f5fa40277ba324d635c7d12f81133c508dece01f259366656dc40d268d817206a2b6fd14bc20d96ac7f0a00420f4267df935fa36f7afd301d75f07a6ba80749fdfb62542e3753eb9046c3f0718f4545345a5be80c24387b1d28f3b5580aaa8d27d770c020c1472db20c0b453e6684ec6048802c8c49a1376821826cb64fadc0ed1abad874137b2abc93fec3561000760c34c42766114399d3f6b8c7071520e2f84588f150a68e94aa9801ada1f7553eb398b10386bc9b60c76b86f1831ec2bfa3afb46704524e50e65f296770401f31ba4ee1d4fb783f836051e7030d477e90719ca110f14066336bf0536296c5a0044b4bd1450694b89fa4e973e60b9f208014c9e3c0ef838e185eba608e28d64bf285844fbe85d7c28cb0e1234032e1271fcfb047fdda5e73e36fa7d848d7a907c50a6069def09a5ff8e53292ca8cf7e38b8a751239cbb5dda7cad3ae154a2b581c955076b49a04a7692c96caf53196cbd1e53fb4de8ad577df70c9ae78457a9830083c55c7c6f1720a90379ec765a490fe90ae22a5802314e35de1a4482f8fcdfe921f4debc6fef2ed8d174543f40813fdd271a68f86b47b62f2729a530ac865bde2477f26e1c2e0fa0b59b320be22a3ef09c067a96b78e7f6dd7c70cad5691b81d00bde60e478ffdc8a43ca8224eafc46366ddd1db013eb95b39ca3267c11a969ab40ec80adff65089e3e8474c9ed1501a2d7672505cec18be1c1b44b11aac840af65d8e4a63cb281bd2c94b2144ec38c9433901e87e7e4da1db1051ddff06e09948e3507717f594d212c134c808635292e7a9c0893ddd16ae68285b918c8b51f452a16efe712086a92a75bbc8b6235808431aa354533fa904799b02e0512c97d8c590d3384524f23d014875c39e78264c69df879877128e6bbf2a1dad1f103e735f26dca959b788a3586f8c30726e82adece26567189c2b27a5b10cae3c53fefe06c8a4a186e84cc126440adb67a9d8198464b86d96a0f13c1a08c492b119772ec9cd764aa409c3192828ffc7cc4c33be7b6128b8820fdaf4e4154e37064c66cad0843326bf14f2bfcc508828786f9e2d670d6f134422816716f3f15bf24c397500fc6fd851d6d751c244f12cf8b2a494196e0a914b4e66d1a016016004abb4e99aebf46bac1315a53d5a2aba8ce5b77e616fd8ed545cd2242e066ca2d995b6aecca7f86c1ff022afd597573863e78bc673c486884b67afffaae59466fdd0f94142583eeb7e395b1a47fb4c482996fed56d9e38aac7b413d36a0fa7eeed3d17b9e87185d89f3c442330819e5801639db1e6e690a40704813c07d47a1d0e8a66150458dbe763ac2f9e4b0d9366490751139b53c50c512076ad25001fc440831055800468b12b8c3268660d973f8ec2643b144051a6675bb85238b3d6523a3c92cbe16ff498159ef63b0749f3ecd7f5ae572cb6c0d9ebce382b8018dd0418dc010b98acc84251f70b4764ff1cb315b107fee5e989729ebdeaf31384d020a35a2cfcea51810bf14724e2c7bdffeec3d638c44c55448ebda81d79aa6d9cc3a4f65045b277fee9f07e7ae4fa2884e4ed19cbf665c4d2a46a90a9f0226166eea4b82a83e10e5892083088a23c8931ffdd01f54411adfc3fa58f794528cd7d5c8239331e82f504e83a6cce53a7b1a0d36ac89aa58ccf391b5befbf0c0599698ada7efbc79fb937ba4f2cfa5706695ff223e92f84116e8535375ac0567ef6b3499ce7450dbe6d1c36b0983d5a7c7dbc237f6ddb0b262f7e3a0b27071269b5e757de7ad2719b22f6716840677d4f6886562b2d5931d63fec69e186e6224716c2da0643dc77f2753108727c6c9c301c347dffc3c56e122d675665198f1f6d4e2155fafdeab8bb5ed79e8c98337df8dcd2f65fa5d28ab13e5806fb296d188d5b9f2b4e4805e8e2788f2e3a96a0e71fa6f50bc0cf069a2ef9387c81763118fcdc43acb3ad268c810ee9fd6f54baeacf31ddfac5e888adda140542e25744008256889895f70450621f9dd2a6bec0b38ecb953f8860f2847099030d142498f39f2978f386a3f81f0f92d4ea2301360e221a3f5d360b40c986298a6110fe24072b057944b6fe669282248a31ac563086fc62556084cc1a8e90209d7cea18ccc6a588941a2164df2f95084ef295a11425700abc9c331907b8b24be321420ccbecf42b308ce9a2db8910347a03fa7f077417f02bd1f9d889ac9987b0b1881424e29b5b6a7219d1e7e577788a90ebd13e7f24c0fce31eda972b0ea8630d55b61a6e8a2103df30ddca861a714a1162728d4139a2d22fb64a40e4c704a469f17569dca4451182699707618e8f386eea0e0f386f5e30d1350928145d73208c24c75fdf22a64b90b54f43812d5aa9e29fed95889c046a4c3d05610ff171df5ac460b3e2bfd15a2a92660a9d972e7931bc11412b4966daa845d4a4028ea7fa3022abf71c6005df42b5752228d2a974a25834f062ba77aff04b6bc86e3d90d7b1dec9a97bf82cdb7feab22da6a5541585122dc2a9981405278768a17864e6dfba7ce9e3d1a1d299b85b560fbe7e528a528d3faef41ce7c796a18032ac28352594695d753c27d5e27ac6cd619a60164bf971ac84997c403259400068d09e1c6b61fef0e032ca2f2f4260f8cc66ab690858c04f922d3c3d519b55f6546c5b44c0041321a51819da82d520a0480cbfca566e06fc2e3c2b780a2d3c9893acc742a125182ee25072ff6fac633833d456ff537de4ca80ca55d713de67604b6215aac554e0c68094ce622b1b8afd45e3c4817ee3cdef15dad42138ab7398aae2e71b54d65cd214bd72d14a35173f9a884252fddcc7a41c6397e9b8e26abbd7e4a747968e90c0b4087245dabe6963a18033746a225291c03a3b20580f984c51bb95131b886d5c5847bf221f64ec6a2fe7c917f0d2ce35a977441a05d9c9a7372955e504eba6089995eda8b8fb062c79e50d5c2c2e931843363612c6b67032e44d038286d089c8a3e5077f3c78f7a29497d09e67b1bfe9ab093698d169ee53313d3237cdcfbc08d3af6216241153975c203bc6a484d08ad041faee38c71d4969c81af12bb92ccf81c0c79cf8a0cdbd1875cd3e925ef1e2e0ebf82e71ba64299cbea0aa7f0ad78b0a39d37566480b482310cb1b7055113c353fec1acd62539a22c016f155544fe197438572a646e07b68db509c0a9c11782ed4082f9e09ffbc147ef050f18db14bee86ce7c67121163b7c5773fadb64d8daed42771564eaf630547e6f27759b16af6a20a6e1dda8efd5b39b4105d8edd31034b740064c14314a13934f58d8668de22f1875fed8acd60d87d4e941b3cb54e4b4b0ef83be3d391d884c28035ced9f47251a13498a49d9cd621853d2f00a5b90ff3fc47105d1dd0ba0de34aa54797f4a370f76644cab4c3b3f0fba575db7c574b02df17b9a67f081da9a8ee55215257cc07f44a0a7db76ee62327ec5ae5d4c7287f3ae9e25a5c7c469359ba1a1e36d405a5b927c7fe271d495719bb1fedb88018f18001f1ccb1ca71cb7c3b03ac09b221ef98f509fe53f1ca3930f081bfec8fff1c56f4aefd2f34bb83bed160754782d9ed1394f95d1fb7d6ffeaa2bb236f3d00cfd3890f2601947043ce8a3f9668f5b3d69b6b4dd2ba011bfaf4afc07dbfbbedf78b8a08fff76a76a06a9121ec4729a13277c1d1649c040075453a401bc8566caf63c9750281da3ed329cc259a5408a39d4a34701db2c9ff3c1b8ec45d260b7b1bb054e0c78919facc84afe52cc47ed9b4aa67ed87af897e12b576031b7136808923d4cc0b9edb3f2c50dfd5522cb5350a149aaedc62cdbe64c8d454cfe7475afb862c2a001686bd2c8398cf322c692b5b35c7890187125bd11e590b3d62e84d7f3f0627017e8e500774fbd66385d135ea30cb621f73218e269591aca42ec21397419a56f20d19800beca22f1784e36d34684cbe6bf82cdf97600aeb87f582fa56c8ed71915f2007e937c9c2cacd9e5fa53d47159f0010aa200e92cfe441aeacae773cf3792c75c5f1ab972a8aad683d6cdcf5b430845bdcaddf6a4cbd8e220e0c8cb033ff0e180a6dda3ef67781bb5d1cf11e8b85fd19d068ce6567fff3723b5463255cb7fa12a1d386a4e942edb6eeff95dab84f3683b3aadbfa818395a3faf3774ee9bae1f268f0edef4cd0558007b4e43c160702702087b3681bf7cd6c5837d3f7f2fc9e7955c915573007ede8151be800b654038a6cc9011c94a4fc3b262cd049f7d0b7ed026fa98c7e006e3900ee27f54ba28bb0d1e66f9fc34c9ba30d5958ab605d5740228c25788a88f355d6a62b5e6edb2b04d895c03698abe715ea3c5b3ba408bc7ec4377eaa69becafb9417579a875566a273d5a6099e35272a75d113c898f219eb71117018b2610eb28890752b1aded2cc442493f1dc1e500dd3160dbc16f3dfa39616334b076446998d8995459ba52d40b577cd40d7f1b83595b05af622b740c714095cfb57468b6e3380d1b5c57686631fa510fd561d966822d053d3240ab2b3dd50fe68f031f5a7d072588678e3dfa2ced1bb835d5223b81ec7dc05245a736cbfac730ae5424c85cdf8c02e201e1167909045908ccef869c65d3d54cc1e1be2524eedbe2c0f4e10a675f1402150176fd919bab90a32fa872264801a61dd983682a255d3d8fdc4817ba885e748c8017e1eb67cb2a42a2c3b586ff2642f4a15cc08b094c36a56d544f38be4419c7908d171f749313908e9744932a05d238c5ecf1c6c8d556ef029bd3ecf9c565aed025aab78b8bcac19c614b4ebe766dcfc2e160130a43c0a5ed5d2c41d6a26cfc303c3acd73dcd46198a38bde8aaf9a5d7a97051896228f79e2822dbe9a45cf1d1e54e347e354699d3d2065cf503e2e39adb29a211a9bb004a528a87eec23e364ca38e7b8cf9dd46dab452dab9d289f2338c49328d71b53e30fae0913ae72a36efb2ff64cae679a3b8f6435111981e1bc212cf1011d5f132c647c3e332114b894a5b27c1f98a77a7e154d120c24b3e299996ae17b698184a8a8d37d924473154624bc71d754609136466b631501b9141019304995fae3e545a0a29b7377f91bed4610f98e526dea8c806f662bf33f3cc757661a20afbd92b68a27ab5ac7204bda2a63211803d5da303d4f8afaf9c592e663a3f8952716a9b2ac6f4cf3ed805d463f616da0bb922c258d571d67e1a60aef423607cd16c9e967bea2104d6bc2ef819201181d572da6f0de599fc28873b41de82c64f8a42e59ea4fdca17694914f0ab0a6b1b7309fda1975c6fb69fc73e1fab7ab0d72c992ec37fc0cf8a1a18824d766c70eb504c3288e4f40b0e8ef60b652399d62f0fe2dd95c03516d7ac9383ae4409d0d9b09cedff7ada7471bc0824ce1fb3b320d51ad2bab7993dbe973708bcf415e9b14dc29bc0da520dd735c65d54c820b98482dfd568fcf13dc847ae2b652b72bfd7e21af52f10f51f360bc01b2d3819e8ac86e46934b8486b4f5f3e3be0b3ab7b7a3b21e09eb9ec1c616baf1d8cce591e6979f468e6cf443512bc5ea8999b80036254e57113ac14fe9876d9e8cc0c42c25c8cb7db38e8a6a1d82487493277605c295aaddb9dbae679b2f03fcb260c10ad15298c66985d2ce23e36b41c9079c41f46164fa8ad8dee14e0a3bc49708f512cf79d073ffeb3b39be900bdd0f567fa0c0cb902d4645ee643dda0c95cddc48c1c3d69e1d95ed5e9519e44d42a5782036bd71387b323252dd2355455a10c32b11f1c48209d6f8a84bc077e63e603b7f4b180310972bb6ac474d8b19d13f19f7f615f7187b8ac69921c6cb59c1bad7cc659e5387cc171c9f42925601ac832bed7664a270b9371cf5dc9c249109d06a9b7f5b79e94d7eabc43294082ef3e4f2750e6e5984f85070e4dac029314413f396eaf4cf1750659ef61ea9342dd287ea968f7059eb249fd3066236e89336f470c60d765b6b4a6cdaf4f35f60e988270efef8808d20ab3749f7f6cfa9910694d7ddf42291a3c66a146eee0276fc5bc96e84419b861a4c97a142d9ad696be3aaebb39205c502cd19dbf3e1b013256b40075f2398e1caaead58a17fb6c0b82d8adb2c44647b13abedeb43eb7dc70bfc2a3d9f220e809d47b0879a4a665f0d4a4d1fb4603d4af6a972f04965fe75d524f3a637f3dd8a0f0a31f0f897c1f144a5911f6d928c2be510f7c4551862f917692c99ea26fc938bae16ee54f386bf3cca34000b70fadda8b2b8826eadc8321fa0c0e3e817d354cea802c3f1a55db6f7d218bf22fa874110f766a693bca30cbaf61a5425ada0b344ecee2307002d9618b2f66b0c6a5b62bbec0a039879cd20bfd3e13b3e57379510ff13c9a84c425191d18d53385c60b647e8840cccb6e0f411e225a5bb671bfbe25aa1117185d46d753057af3f484307cfc2b9588ad300536c8e7da944b811f315aef6afba687334fdf0e77ddd28030800023442684f02127d1dd0fd736253020bd8d1249039f24b69be0e1c847c11aaec1680658fdb0f6ac6964abfdf3b14d0abe5de72fd47f9bbb7a21cb09ea34763de6d2379c218683cd2bf73ff0a0c63b2ea3b67347489c4c3f0ccc2b8627b6d3777400091578a8b1a5b60b418bc8fbc10922b1bf385128e33f74cb55021fdd0b886dc54e6030a0398d3c4113cf0cd174972f7fc0245cf4e13e80e1205ddd1762c24dead4e4a71bbbb9086ad4f8ff49f8f7eac7ad1e05260248cce0a67ce0a52b0297ba08acd4227969a9088ad10a205a2666ccc402a28b45633642e17c19df9879b8ab45f69e9dd82355fd60f07a2e2994edfd0ea68af60824e45b35e07aa174efe4800325ff4a8362825a37859a037d2c31774e08bb0ccf230f60b7659c137d3d16cce471272affc352013bddb4fe39f907e0fbd91283cff9172dbfef45d2b7172657d13a37ac37430dca7a63856a4fa6147e6d6ab45bfb80e784ccc3c0e5b547bb012de6d73cfd1c2011ba019c82836a7fde59ea537603a6ee0c6600b2c503089d6fc0d3393c006c1815017613a4e2a5ffc4b0eb0ef0617ea9bcc8196b2cf4e9c3d02346993a1b11f5512b02365eb30f46b59cd98c00c284bfe6ca24944b0566159b246fd005dacd760eacb78531c0b5349224919fa40f44414e8386e00bc1e96fd0452abd281bde848f1152152247f754dd1ccda7c7e7a11b515a7d058c8f57a336c70b41c9bd5444ad6426f41e484c059f074737e2537105c0810acf59ec95f6959eb3d6d0d2bef8344d2e5c3f204f6ec15cbf7ea0d3c55a5598a231da8a6c94aed108618c3b7d426f157bfa2a854447db831658c3329d6b889f065895c15527208a2d21d0454217c85775a4922757d430b33971283c13150d8eb90aeb09d0582bdf17c7099f285ce329eaeace41c700dc9ce0a00165b4a52f185ba91efa86a9b504909f4fa667d8a4eb79b08a8a6416794a86ffea8085cb45b4620dc4436236d4b5615251ca0f312c013fc29a3998f9e5c5ae5f71690a9acdecefc3c13c71159faa9ecbc15c55406584b5db540f4c76add0b55b61cc0d58475a57b5a8dce97a2ea6debc92637defa7e9c09bfa6746a8f846c64018ecfc1d7eeef6831b5431850a1f58e8d8631cc2b863e189814be4caaebc23337f082ff68661df05b1f0417e7139362db25d0c4fb98de0c160088f3a4c705c34417edce4f6762be5e5b9c687b1d32068b3d173bf108dd77aa5364ef8504dc3d44876c022c099df021910bd50c339715c82c9895f6046753579b15f71b66d1798d8a832738af919aef8323025228b3baa031776b00c1d2013c3cae3bd290a2d6d89035eba50db0014e0eab3fdf8a41adca3450bbe8bdac6a0acdfdaf788e284b8d53e6c35e690c91c447341dc1fad63ad33fcae7ec69757a77651f5bd02152f77ca1e7e3374e9d85250dd68e36a077a2578fff9360ba3625af7cabedf712c3406477b89a466340e628e7041bb1a5fb055262145437fd34c7a158dfa7f3ff4cdfb7715765b910ceca0ca0006629875beb1d1d275cbdd4520b7cf01a51bb54e6e15094b779788edcd155eda701dae6464d8eb22c876bdf57a826e940795a00bec7610e1bebe3fc9887ff4b8395b4a1f3580d3b54b24fcfa9fdca1a965b7a64d0e349357571013a1790da13f69b3e49d00bf1e213d39b369ff0b5af0de32a1bb343d0084e3ce9cd8ea3065b6451360c615883180ded157c78a3a540ac624508def882bee30044e9e1183de3b9000f87c6cdd9ad85277ad1329a8684a8155a23ec41cd5bc668604e8b22e975f01730229dd55c2daa0f01d13ce4a78e7de624895f05a6f7c98790cfef0d991bdb8ee7c32c2a77a75be6bc07ed3750ad17d8b9854d423e8a0fac4007ed3236caf80e5b0ead991ab6c20436a3b88d0da8be86a57ab80dfd081454c58b5fc955dd4c3ace9e41c745500f70a6e058916ec4766b7618d2135ae9f426d07259374d467f8c44b08ae3d54ca11eb9b3f3560ed239ecafeca9a6060448b68ab99b3b36580a8b5b10a1827d76dc5c120f7721b74fe62744cd605943be26550f3e6c35d86447d4f33824f7451c59f543e3554df74a8a036c917e3ef2459c4edfe6d7ec85b7bff588b23316348e01b13d215518ba44327541022352fc02bd40e6ff92b0385f049f96c7338b38f7df2e90fd3b0233d9e053e2ff115255a7bf6001b1bf82ebdd7cb57f0afe0dc9b06a11ebfeee16113f594b05902516aee1aeafc9b6766b41e71975c96bca1a2551646102f6450299a541401b8bf1672d60abe611ac9a8d84a6c1fef65f09a5551f57f5187ae6f1fc1f762ed67ff11e5e9f84a7dc3d6dad9b27c6a574dfa4c0aeb0cef0ff98e9ac30189561b260f7788137f7c437437c1ef8b84d6caa2929128ca92f26b28ae07a3521f56352ac1b829ab3b043da1b4b57088aef12c519fbac05c659f1fe62e8823989bd2ef365d662bfd4a41b7ebbb108305bccadb69b81951ee0e70ac9c12a0631af9b5b17aa591ae10da31dbc25c81381c05740c6bcf4e7860a0a9e6a88b00d656988913826064da92694464b3150619709d996d056f36efb1f757e3c5ef642d36240b073c7cc6896386d689c9d2c4f573ae7809e484c8096ca23e636f956587c3023453cece4a69b3372c4361b59c319e239204455f9d04b21ef7a5cbdce8b3c308bb9367f7aca87221702cbb8065e9421ceea9601b0aa6695d39fc1d2959565f95718258a4bfaf2c6e04adf66f07ab812e5873416327d6fa086e08f700e6c6b92b00ace8abd3043007ae81be2b787f948519596a70e42146272c02dd55f8387406bdf2725370e7665b95fbe5519847bada1d5b8111b86187ac1fca52edaa9d0a6eedce6b5b2d945743ac539b67d493dddd8a0e102a26fd281f63519dfbbc42a3dca867d8b38c5e58bd244f6d001d9111554770e646a87c5608e6a11973513e658377e4452d37bfadd890287890bca4c81f5c0d37da080c3d96e33ea6efc17ebb6a3e9da5df0d8ae4e234a794b8aa55853af13f45b6a101fd52b36e0da3722f400f2f3ccf2e208a8fe78ae1b70e0e9ce13de93b51d1d0fde78b0cbf96c7ee3885e7665d8b1306c2f414c4ad29587f9bcd2a24bf885d4e556bc9ea54ebbc41aca1ca068a9bb1f75254985af61c035b7ef7e75a96c5f38141299f27755fd3daf0c94d0d1a6598ba55326a09a94a0a166f5f17f1452d037a3fe2a4b458c99da22b5fdc9ef201b6060f7ccb2e086578511169301f1af320a952d9ce50f5e77493277814f923f8040d1e8fedf5c8b553d2d0113a895831556c84b0fe108783b427871fc09bde4ab41519de1a2aa946059bc8a8c16b091279503027d02dd9fcaaef0c5b84fa6dce5cad364dbb4417bf25b059aa836c684a81b7b0bb8294f009118e09fe9ee90a1cea72d9e76b98e5afd8bdeb9f54b6f1532fb9a9e5fb28e568a4ed2a40c65dbcf560ffeb125e957824c07cdb45680b07757b5fd98150584cc50c64116c44506eee0448e7c1d615476cc6cf2e33841599af41d997daf82081fadb07ba0531c0bfc83fdf8349059b7c3e701e3cbbfc5239b6358d04c106d97c5a57f7a148853ab520682f3fcab925a5b110cab35d2dadfcbc2f4b18d63a6b007b6ed772137e2769bf37b76aa01124449af350fa85b72f11031c495a96b18d03a5013c56a7b0edddaa7f065d6f276de16b24282d217aa035fb4bb08791db5ec22baa139c3d5e42b9abf41eb8b6d4593eb373f83a89a49cbfd46c9bddf292ee6dd9c5b315fd722b4594fe2c1a75b50a4957a9faeb1789e8a6b6897b59d7003fd9caf542f8af65caa0be0a93f12b0a0391e23682faad7fa3a31b71f96bdb9e3d538281a4151995eac7b4bebfaa8afe462866d4f3c99c502a14351a1c88725d669651d2e79c2497cc4060754607261b6d3df20931c07bfe350ffbb740e5bacdf5e086180eb196a0ad6bffe32d8efc9a69222a0ca9f86f97be76b61b7b56120589d8349309973d0ca391cd52c238e35180239b33d56e8bb7c07e81d9f7dded1e4ca22397d1568f47a73378275a5580a45cc8b430b21491f4002800a0ed991ffc035316216c5998497ac162a63920fcf71de79431461d4b2d962640828f6115a2d309f96928ead2d90b614398dfb832805a62330e4bc2d38b5ce2e915d5c0daf0f4cea84654891480dfe9cd1ed158d30d3d8f83b58f49ca576ba298b4df0e1301a773770a26f7befb2937700113fd8b6e5ed0d16766c8f34030f42dd378941791f34e96e6fed14a3c0d1402cd7d29f3848924cf3c3261a5956707099629d849066385544a57152d2d2d1d250f6ecd6d20b77becc5a35a4ffde7a00000d95e9845d3ca9048dfe1b62d9b0577b174d3b7125b9febc27c656ba06c41092856cedf4cf17b98133d4b77ae59efde279345807781e56eb7cc82bf49efdfa1dfbb1e22ebc044c09c29aa09ab7407fe55f2c80826af8abecfb5fd95e791f62610e278440d326518cb99924c359db65804d5ee62e639a2851cd5c5bb1a7b3ab452491c19635209d252bd5bd803017cf0f9813a3d2f64fcef16483f548212da32bbd7a07a9fe4001af70687c33925541d5fb194010601d2bafa20e12da039128b6fd05e2b9aa0490d8bb060f8dd2d682bba5007dae86f25be8463a886b66bc9ff05037cad47cc693acd5310f56a2e721c5acd797043f9bd8206dfba36cf3e8d2b6063187264233db2ecaf911e4758bcaf2b06dc48b12cd0ffab7e4d83bdafb8c79289eb32cf055ea1c16b0fb663a22b06330091e76ab969be3f92eb272872303d12a36ae2943cd0c4e3f82f81b3eca27b9663754ae4001005df35d1dbc43b35db52979c5e0c4cf5b35b9479ee3d69128cac98801e91ee654f15b850106cc12e15e3e6ff8b1ab6bd4a4d9b38dc9f0c8517e8ab523e1e25409fbfc351c03c4eda87ba1eb6fc9eb30a1b65f35d6c91b24f1f10d39be96781f69001f4f00ccf04826f54bb6f90299473a2bae96e4c64eefb8373dfc6160e21284a3bfeada678fd88ad678eeeccf52bad27a2dae91c1b8e82bf0c06def57342ada57d598887bd1be2a9ea564ab32089260d6c8f0db76ece15227df1d3dc892fa8863228eac8b8f50599eae060f314afeb1364bc00c71ff4292d9067066fcd491f1825a9daaad3c14fd06f5d0ada6adf8daa62fd0f2d65ad0426ecdcbdc6c9a0beb5052182ff936461eb37101115ca9a4c57c5c99ee50d287f0415956b5b14251b856516f8111bb3b9d21971b1a8825449dc752fb45d4588247ced30e4505a7a08c9a3509b12b0c0d5def990cb5a80bea22c0225a47e51d944eea1e27d73d4473408be1cd3e0a4ae14d2e50e433471e2e32b964028df1da249572800dd66f5a17e72bdad9ec93c6f9eedec27ad059067a475c6e65e571d0e86780728afe8d0f45c04f46fc33a6b7408de10fe701b4602d61719a22ebc8081a556de6a5e3043d5ca91b8143dc9b798c7f33bea54ad4ef9068c5e8ded34f70e0e54c9d0d1d26d253e6618d4cef8d36f85e22a095bfabaf9557ff59bf5cd4714ddf16d91f97eb146355cb612c12629bd87b44ccf6b418d5f5fbf192f58401f5e0373260d70968420f028f63e9edaa2b824124f4902d05f8308073e379c16d9efe8df32d9d236f0ff4c2fafe6511f9ff8548dc6f46d162e32e27a86d8dfe58239d3bdcadae56ca233e3d530a6cd1a2881e9a36974714f4427342c7b8b48b3c7ab59c53bb3835b811196154793aaf8b63eb715ed81837b9560460631ec48f758c9d9c871d05c534d422b7bb67e2cc7f69da01891a8b0a85d19419c61b3c5ffa42a46f4876e9cd1e7d69a0ceaab4e40116157cae86844408dff536feaff645338a8df96fb0675a492fd3f9935b708922f85008c98ff735070d40369c7a5a083fee33f4b4279b9a87cd304cb44f3a973f9bf74ff74d8b420e96559e8609180c3f2b351e27c37a057ff2cf3d1db6494076db3286096fb4a0b6c5b31ad43bfdafdb280d80885629c7d4696bd8f7d806d62e64062f84ef99b1222897a4a5a12d673370da304b467c5a585610fa01707708b6deabf312d57ccf2ba52bf27a148e2eff48f868ccdbe46b512e790022aa59b0bb3baf1ed7eadbc7bab2c1c0da5609a3e6e530f17038fc3f26d9f5ad0614371263df70e7857c16e588cd357517fe9f02e1b381a4b2d26077ac2cb6cd4875e4417446dac82fc560130484ce6ffcfd93b57138cd053c8a6b51e4af9b8b13743cbab5d24e5a25af4b65d16ada91743ccf8a9840b92805b5e2ce68f0daf64851dac218b97112c110c48beacaa5bf05ca2d136e4b0699766c65d43a3539af54f2211380f6e54259a66b1898fbe7b866e0b6daf3040278e09235f6157797ec9b8c15681d805265a58941a5a8c5119134e6fd5404cf4548ae8133d6c4a2ddf1b993c5b22083c463e21d08351a9b0fdaa9716c20b4a4fa4ac1419cca2679d128a5e284e17a1f0e56af081f9ea567dde87c5e1423caf2f5dcfbaeca289b29044cd705de783ae0124d216b8c7e5a303971d32cf0108c43026efd961dc8d1faf98e4cabad7e103a8d43326f4db265e8fe99cb0f2eb32ed440da70fd6a408ece0f69d6817a64a81ee15a8995f369caeaa524eb0b655e1cd9fb6b93255f3733ddd94d834480bfdc385bea63e33f78ae6cf133888ee72d4b23c93565e53cf59c503a224266c700144d1970343f1495a542b244b2f981ac7b305cbd9cbb538b5a871e05cfbecd2752e80db27f5304317cda644b151bb98a6a84aad46a3894a44ef967035d8cea6cad1367ab0b9528ed21cee9bdb0f36844aab0a25b45e2c96cf20af5792483107c0a3d63a70f2df54a1ad3799236b0a3f2e427a8bda1948151ad1acaf38abdbad273a95ed54402d1535ad144ab2477f0336d42e96a1b39fd9e7f9c80c47434d9fd14be0e1a635576a3299079b9775f315fd9d3a49a1af2d56330aeecc3a73a0655308f54398fec0daf8148a6e39c1cd194297ba7adf0f97ac47107d86e2d63122f25edc927287f81829d8925ff2df33f48aa6115096d91c648f6ef550388f021d1dbf9f2308a085eecd9503e54ebbe7706aa7262d494dfa220af17cd03465d3953a8bb92e4f2b5375d3f708bd7a8e9124cc930dc0ecc4bc0bf114c1c2392ada4e6ba254a873d3cb706c001ebffb0a30ced691fdd5600252016b6b81a651b9f993c42c3e5692cbb2eb9412d0fc356b16570aca1f590b533118bd21d47aefd5d5da5a3962d74a2f6c952206c45b2eb51227307cb8948a340a484e78736c87a6577da9d8e3aea651ae2318786248787361d29bc04b8073d86eef404d6704928439ce1e95e2ce3baec30c9750180f95eb83fd5294e524fd4f06d7865374c0e6c71740c4ef31972833a308e44f3c64aa41447a5756b81afc3c7c6c62f0059ebcdcb5adc535b42920618305a83e399d85eb5acd28bf159b7876837c4c46977f0c30f6fe6ac75cacd9f501961c5f941f30d0eeee7b31707ef66be93d40798b09938bc43ac0a60ec267eeb284cf1cca3525f4d701957b9c26648ea66a8ecf482db4aa561c9fe8cf3e313de8e1182c397d08bde0fcd652993411d945da38189d08553b722001c9ed66140ae6b4664cb85114134d3875d99c8f5a28ca8ada117a4482ee8ad118e1b2c8e2c57568c8c7d7072f344a6a44c85b3c160bdc9e50fe12be10eba9c743c2d1163238c2004941c76022b92fbe92901e0e67cfff8b8d0125719b8c1984b0da4912fb485699a4525df32c6a21792ee6b7e2d78c7112e5242fe62615b7be4d469973731b92c85955723a67ae02bbdda1211f7ac6f352f4a3242afe501d4f97be0c85a52c2cc0e741895efb413939bcb9584ee0a6119b18f9d130610db3a06a7c720edf9799c0d5bcaf76c07478be27801436c858940062caf9305ebf36cfc2c987573f98f0f8c550e5f273ffd7bafb972f1ed16d5d3c31c3bcfd63c62254c65dafc76d7b064b7cb8445e35b5559c3ff2f1a0135842ec0e4773fcea8d7952f69f33783f088fbcd7f9fdeaa51a1d81fefc774b2f54947e7c59b3d12d89117058ff5fc5003eca2fcb8075e8655ce530441d82acd54de0f229b125cd708bf9d9cbda8bf6073e40f57f850dff646f9c7e7f7f29ad48fdfc08113d7d4b66797885b5184e00f1020072ff6c522e18ea42e76c5bb3edf718a4225c631d6f94071fa12b617a3fc0f4b9abe94c1c05385cccc1b170cd5769db789f207437240c573576461b3c58f595c04c33c4dfc810fb6837b30d81c25dd1eed33656f56985f733fa810fdb46c17f15133a266d710d524767b605108568a62e4ea802e8a284b3a85ca2979681ff461dfef492b6dfb94ad0ce361d9e390afebf96b6996226dbef1f5785e713ab5d7ad19c9edc68b17c90c39f0bc45586c827a73fa348fd92e7532bbed6bfda3dd9d77ca3a75d44629bca9aacbcfb55aa52946ab74b5e0502983e519135ebed140e00fe0b8ff2f67dd7f3832af3c5cc01a4952cde124edcd87126f5ad5ec9b462037fb51344e0bdf48f5e464d9a61eabf06d56b9af5110bc444f3764d27bf92333b8ea585f39b428af46ef04959b6be3e5818b32f751e7fb305643dc04bf2f9d3182f40bb946c46a971e4665547c7d420c27a41aa5bcb4b031824c966ce70a6f4ebc04e66291ac8ff9b8a74eaccafcda13c7a7f7d97cbe4754e9b329a12ddb8ea94bf0e31f9ee3eac5b71f7076ea75eeaf8cc02b21c864a18a4c7b84a6bf21a49fa3d0398fb3e512be9b4b596a3de3cc898a46c5e5268a97218966ca035992510eddd0299b46e503a3696a55707e21fede2c37b82a36428ead1e9e3d28d6b3a4fc5fd94c64e6a4496640248cf4e7753920c121323213dcbde5d147b2f2b2a203b08e268b166532f5da85d6050409422f913713683d267e880783b0e13c5d841bc2ef38d413e245838fd564d39bb92214e05da2f9d52219b4c7ab9a330bb049c3aaf9ed184886c11012a511d7ff5871c472cc8cfd12840b66bff4325015b3f855c6f3a1a7800d96dd27b9b5dffb2228dfb81164d67f987bd6fccab7238276c0744105c6c69ccbf8d3d824417e1dad8842cb4c27191a9d2e83ebc35fa2b7212c6fe0360ba7acd3f9e608c41ba78b4706f9b7cbb1c14b3466860a86c596d59dc350eea61184aafb78895fb6ea003380e907d014d10516307e6a360b54959657a309f37994be7f88422849123f746113b78fc745c85a65366ddfa923abdbc0c6a93d948021204b94dd95d418130cd003a4cc772e6a7a7b7acc985840caa03fc3eade70b1640e14b36ee90e438b8da424261a5f1849cc588a6793a62b67b5ffc862981fd4dd0ee43904d3cd1074594862a329520bcc885e9590c07e71a0d2f2e64190aeef07c3868cdc9b91be45bd52095eb38a4c915120a0d145c88cd6bf4fc212ed6d66dae1de4b48dbee2209bed4dbb18e37f8868aaad1cf628951fcda00de6bf489c6f7d1615307fe2f7cd3cce780505a76380b7432f4755e675dea5352a5de0507aec9ef7657f2711ccbb3f5b2895830e4ce02cf19190b9f4bf642545abc48b4a45bd7d1adecfee2cb2502427266fada538e753abc012baa8598e137050727a590a0cee6bf53cad5de345984beb7f628786c4851947a26e56194aad9aba7fb47faa469450e53f24b9956409b75e03cf65ec5e342ca799d118149e9af2cb9c36cfc630fa46202df8515366643832df153aaf84a64afa918d954130b84bd3575a5df97021efd2fdc5b1083937fb5bcd4397961b0d0ee7be9a5c00b67a9c697b4b111e8144ef995821b3ab89aeb7e25248baa3637993b8d7363769637ee6db611548ea8aac41769e4ddadf81d5805edd697970ef9fec03d2bd17d6937cba7a1e85c0d8c4c97600869dbf649dbb1bb815741864dd193bc60c5692a9ab16c18da600697e4b8c941b0c29b971af6e54c8f403e9a2602cc9419de9dbab25e15646d32163a916562f3c4184ea3a594903e0e7e2a713d8ab8aeb666c53c12919b91a0fdae4b601d5e4c5e127a8637bd52416160a7048b27807a16c01e09bf0c4243b1c091c4aad0f73796c66ac0fef00389307d2fe57d06ad666c9b6bebd2d969662431b8990b792e855496b6de959fdbe60fde62d15f3ac6bb128c7a5f5e3bf8a56a33280c618664d1837c0038407f7e938acc466177f27e3617ff4fa67bbcdc820a33388b3dfc4036467a828d83190b5f9e07161a8849216b917f208818a6178462bf6af913a8a0fefc551707ac7585161f20ee16c42a128a8ffddab370276aec59d2e55d102514ab72e753d2bb64b3218121680541ff48a054e9653f2eeef8832886d0c3b73ac051e9969ea71c133d115ed715998630b34482339ef604c29c470f2817e96de97633bca7b72afba6d3ffca495422f9b3e1d68a3f2f1f23e0a6235c1b8900f54bdbee4b992aaf066d189b70f7442354d154d9f080cfad88e7c71dd2b58f5dfe63d0834c6e3322a51f183eeb7b6262f5f2b5d0807992748a9c5da95da942bb94486aca885916f446757fa9cc547703b9bf591e3e6fddad414336ccca0074e1bb3cf96513e70d5dcc9d649641f7c1260141e62feefa02876996eadf0d18fd5be02ddde0a9532708228a6e23e529edf71591f30464f0c1a3e7ecab8227394daf1c2477f107cd39dce60c87ee869c69fc7aab780b388c7b21572f4fc341fbb1f8d6f64ff28847268e563d00ac00fcb1f43b97b8fec89fd55e98b8f78eeee409a69bbb3059fc23ea3590ebb07ee24abc5710821b4dc71d3e76bf1b3162df412460be2a541ce4d1d04fc450bec2af3c61d79418a35871d850cf0a30fa65cc085b7eb2e5ad5d1f9a2eb9c2da7d40f5c8509df4d5451189e374cc35b507342c41078c920dfd6175f8b09c2560b880ab5390e96f8f1cc5587e34dccb67cc577e25391495275f6454c40601f9766b5d988262154a824af96dd8c1751574b2d195e1b822b1952d1d455b52f350360da7cf04d21eaf7600cd2f940d3a755d03b75aad852efa3479120c30fe58de9230d4b548c6885f090c12389c27cc4996536bdd1a2f20c826a2e3b8181c92057de80fec8ff3dc5a96a84938fdfa11d9e37cdd01fd700d891be7529e425f31d9d4e869339c70ca7e9bddb8760ef50a31a7ab402e47bb70c0ceb3c9bd587961e891a494d4c35c5a00d4ae80291389936d142434b0d93d2567556f0ab47a91bea7b043abcd1e3893fe3d1d14a677c332474bc2f49afe7d137c29f3c5b1d84addf3d7063adf0a8ca135d2b17c1ff4a6ba6625a9c5082dde54019f7a10718e2d8abc5e6489dac4b3a4b3e2aed194e18d479e722e146c421157acd708a7d2a0caaebfcdd7736105b050f78ef6c57ff9d3690e38d4ba0540aeb2db02397cc051e570d2de4a08bb68301302966013bfd117b2c1e9c979b47259d37040bada4750e254f75f9b046a3c77f2f701a850cd704892312f272746ea07769836ad30997e8cb17117e6bf7a19342bb35d47549ff2d5ce1c3bc21000e6cab2704951d421924112e6a07704b247a37e6125ff97cfc2c2f5ad74d574dd77c490c4ff99cc4a10931860bf8d0a32f4ec350434bd4f36ba337bc105ba99cc60eece27c5a1f81af2bc45b8210ffcf2767e2cc9c3fe100a415ed9f28f4d30f91829e2dffe2d6d1b925b48cf82aa13c7adf1462e53900fd0fe42649d0335de0470f5f46949be9220cbd2d2da0a170816325a68b4725325dcd89c88036f7053834827461b3a6d3192721e1fcd3a77fb52813b4bce7028d484d07b75fc20414c3a9bd510d11f58d418905f24188f10e93f9449a00720b536e007332f494012dff2facd8d4b4e2ba04eca7436f0a04e4b022fbfea121ed67b01bdafc7bb65b04986b71916c2ec034551116a81cd737fd0b6d249392cc64a16f8c4252e80596e6ef87352c8deb2dea387808aa17837d472c0f0731215e051ead752b0375c1c39b6db3699389b3f718f68c9aa4cb993d767b4977931e83feb248b33ea85d02e71dfe447d67efbe59b2f0cbbbc819e12876a40e6317360ac71e1bc96cde969529ab4600c117be9f0e207e1f0548398b92c34acbf59e810934cb3b8142bef4f7782dae9c8a31e893262eed31b5d3a57a7d0552c0ea2e1472480958f6e291c5bbb9e678b65f0751ee84820ee3ee5ff9afd9f5be41f4d97ed5811f6991b6fa70ad98f5ff55800b59395ac89a097efa1dbbba57a93a705171ee647365d2ab59e5933cf9421235d74d81277018dfb5ec6b6baa39daf6043dfec60c5c36319b3226e1f3ce0e486a3206886a456c1b9fd53df0a716e8d9f302528a13d629c4f65bb0f9db95e9b649f50e490e184809c1c9308ab6ac2578d54910f802812c21249204a1a7e1c47c8df39a1a1e1c330d84c605a61db820050c25760650a2de0040c223bab24bd75fb275a3d93bf8410f2b722a0a93d7da7a36351f1c915a5980fc2857b9e6c4aecdce20387f5448f6842839747ef5b16ece4d2f1e0d02c27b27b1998509609860a019202a409384d933ef4c4eb52eee0e520e074f61d4b001db98cb3e468b94533db83e0cb6ed9e1930b8aa8ebcec20888c538ee71b0762ea510be9e01c6f572009111d4c9eae0fb6f67530ab3a729bc490542d010ae72ccbe749abf197fc0b3102c61acb0403809a29e2d5b9625190e0a1b4f708eebd552dac9044de1701fad7f1c21bc105a91aad0ba7aeab25c863f65718143f3b1f4ae6a9df79a153e3049a17a2b74546e02cf569dd5256921171cde938f512260760830f9ca518cb2caa074d399bc335248df56348c09143cfa791891322ad4648156f2563872c63953e0589a56cfb9c77cbf848c31923e05a181b9a363d7e18d350d3403cd79d349b9d0a39566f675a2b9947289c98e24fb3c65502151f4b5a067c5b4665438e0d1dd94d5b0d2987f48724b88607713ed792ea101796e1b40a21772cf3f5852340367858e7c0ac7cb475b4189eb274870080d2f2902645b82f7c7f124f9b4e8853f75c4fd5c9844c2b9662805a7fe30e17b6106de6288c8631d4d505c2ba4ba896863e432029328ea26f1a8aaa03e367b93844adc9f3146828fb039bcd91643f99e1ca784c2151778ad58cf6917b32d0750ac42e78d8e7bac13bf6ec64025613b3a5b299859dfc75a6db2ad543640e223190c108da878c191d3611dc6458a93e296c00ce41d6560ecdf17c8e55cd36420a9ed04a30b58f7a22b9178362c6f00afaa153ac65aa3821c247db34305d3bc1ce2d129c03e2c972b777c2ace26a79c4c3e4d5541514a171eb6431dc7c4adf057119a774aa36410bea2ef5782c5c6a8cfd9111d24885b000bcbdd85922f1d7fc0b0df1741890f83b0e5a8cbb9e4bb9434dca1a1faf11408a46f5e4638c32b89f0d2c011822009171fa23ac11d61f07aec77a4e164f2a68cae989057ba094b86f29370c298c3f6d9e2ab9f13748d4348a5377c0efad509a422283206211991a089391c57272d00908bd0594fe9dceb34784a13ea65a8380c67aa7eb0e9009386cca61123094dc3d08f86906c49c09ba154a409f6e53c442fd37e02d06b9ba88f4c1af057878a8ac5204880ac9321487a181cf7a96735ac0600460cc4564fe22e148cfb066a4d908b2adf6c21a4c0c5440951b2f7655feaf2522b5e76b78bc9329436e2fb5767aa34da99070c2d2a8baf740594d07fdda4e3e13b0a80087d78c17f2bec3839d0a502a30353a2df906fa680075824a3fccba073f4cebf39ce676985a7c69a6ccd8eea5b75643b4fcb09eb1e91525c4cf10d72dd33b9fd8ef429da033a2b4ce13c92cd27aa6cc1369c7137d353c1539fcb0d30119432a33537276ad29e79f9c21a500274a2cfb9da1529c15fc0ba71c3acbd74db38361e64ced74d30d96b6eec8944f35123271ad851c762bbda58f2ff09a641949e6438734bc8812efbff4a9fc1b087a7ee910e46cbdafb85e993d0190566e4a14080849fd4399ca7ab5997156af424d2916681bf191e10c021119d8edbe9c39942312b6d7f071d47d77f2f627f24a90f048e9eb53a66de80dfceecd3be3263773047c5e4bb8ece7c8fb9f88232c5e229de53c3fa8100b084b547db5d52789f301c7d056c25a6eb7d1d43dc08a78a494622b98f9b9137e2459f048c224c86fbefddebb6fbfe9fdbbdf7bff7d7c4ff0cbf4710a388852afb64f8708a29001efdf9f462e77151a1be433cad076bf91ef4af94ef1c78cb06e6244454254b90d1616a4009befd577252823b77efd1c604df2c716e8da969b12e8e5b2c9b4254108580c5733f0dfdf43c01fe5ae154d8a1b4588568075301d74b612a234a04e48fd2c50580d8216e46d2d88abe963ea66bc856f6b21a24a8fa999e21d8edd92cecdd271ff48147e1c580642b5622cc799096563fbd8e7a35c938e850df315560b09ad56836b0def7dd29baa5c8130dfe3a97171a2e7a529bba6bf6685b1ad78e7bf5253a0141aeb2366c0d651fda0476ee64234843f6273b9aa6befec27aa937c0d26909078677da775f43531b3bcd6b1c2aeb196588bddef64d7b416905033f768d79c3b038853d8d19783aaf50d1e0d0196870e4d27a1efec3d9c1d281090a4ba385dc4596bf372c051d38535b511189e806323028bd23872791abda0d0144c62fc000e47d2b14de89e53292d65ef98ed411d16487a44284f26081b9a815d7b673f12759f32aa6f1d7d12b74f40009c37b0f1c83138ad26280f1fceaa11017f273033656d866fb249e01129bcb973f12f23d1f693deb9611569928c579e390f543a893ea7b3c95709b4b8c22e99e61a7681d3e475ef444736796e2717d61b205ca12af55c1c09de8fd7f370cf981c072d16e705644c23fbd6b5b185e78054fd248576bccccb057cc81aaad465ba148d9c032e438a9405472f72089f2d0a260ad920637940a481367b2447f942ece10b37506b3cb5a6aca60e53ffe331a3e09da572151bf73c01c7ce8e53b227254e2c87542b5ae4531845df766613fc9cc6365d109dd7101a69023252e3448c962d886162b1432f300d3925c3a24aac7094a39408d1e3422adcb163c4300dac6a31a4f1a81ef5de9adec8f6e78d73fc39e266aff2784b1e8486133fa5f58dfcbacfdc378bc42ed09ecbe661f03c5c3a9d44a6283a650c189e8023669f7d6dfcca1fdb9954accfc4e23def650ecc835a8c048e783ad6fb2052f3114b4336aae47bdf489f8297ddf86aa8f9bbf96847ea6f25f824ed34b5cf70d8e4079873a50ee38bbea7f5c6f8366c918b4b0e84fe5681486c9fc54b7116998305cf4ec117dff87d42ffdb492a61b1c845bb6c09c8392816358a3a09938c117d18fe2330c05da8d3c30b92f54207d15060fca3edc2a658d59b6708b6bad0c8f426580e39c9243f99ccc0b60bc687e184657c9dcc1fc947e1aa10e2820eeca25fefc3d9a3c2e3622e64cbf5a8e16097bc88a88d93f43d3156d056d2362a857df283bac013786feed98c94ea7a7f8bc27968ae171350cb054785acfe2a36dd195ee3d456bea5f54291abd79c57389aa5ad6ea8d645615d59482f1a09b2b13e0b0cd6c7c0d653e8cbdd3c80d5ed404d003e47c0e812ac8e0a966ae753b1a55261577f6cc8ab1834917e57e7c3e2efd5e4bd85ec99cf12772615ad7eff7a66fbdda718e3dbeb17628b399fff9f320cfc6143646a5b48dde583387c443a1c1acf8ec7631c3f00622541241b1edf3f845e5518b9fbbe1c8eb2a908646f551c3b452999aa09c450b7ac3d80db6ce319c034f509ff6e2488f985939896d21661ed9fcabed10bfde9c35030cf9903c80c006dea0db1e2a3ac526e9055803e659cc6a44bc2c7e0e165286d9bb88b23babf1f44c8204d1339a20225d68180e98f38f0e68905dd9c188e9e27bdf219e36a06202de805e957dc388f2ef8ee50cefc56d4b4ec72bba1341565a4ece0641dc23a436f32bd00fa831b473796d8585a62b9860a111ca9035836e88d6e70a0278182e8450c069ab746ec049a166b88c548f166886d8168c42c31f80aae27a8d1b0e244fea1dc054f85de263ac56be9924ede4c2bd58df9071f8fb8aec1ca06d3d415163d632909ba695006b28af7caba20c5e2aa3a923ac0a868c74326695409942f84281b142510010d41ad318091266596ee97ef7c1657be822b2c244668d9145a3baded617ac74d46eba21ffa4d735a83dc08abf7547305b95e653f772995e2ba50d23c674a69acfa03b4d28bc6ef3f9c1e43e0ee367f4f12d55a163ecb65bcd9ff647bb764a768116f7bf83ceb6b876d5aa5dee20023001cf09fd2ee7a758b3f359cc47603fa80f2805c30d819a7036d77c3f80c34406e0161225d70a37a454a39b233380a303a2165f20070de4e6620e76479ad04f8b180739f393f7efd02d81f43d8989dd911402d81e86561d0a0dc55dabe975f8119cd804f5a48db7bef2db79432252903ec071b08f6076fb2e2be89c995117a92af69ccd71494af898a7c4db07c9fdb5a46a86f44592463c5dd52ae7c53ae2de5ba29d7ccd408a0d2c91991930296ab17b99794527230ee655fd9ba40f07acade6cbfeeb8b2b5e16893b0b2e560d95a8bb3753b67497c6cd74ac284fdab4d0ed63722ce63dfd8b7cfd9e7a89045ee0907255baf2d89334afb5c8cf6d03d91046bd56d349c4fb842b6aa1f644539fbd60325951d272f1ec561f135208d911339383cd5cfcdb620dd1e841453f213525891e7cbd0930aaecb91a155369d9a3f6b6ae40ab2ac390286e997abd37baaa74896a15096630ea218e5cc810bb82eb0a4b38e761584d9c15d4f51af04634302b966303cbc7b7fb982e1d13b70df2f57e28fbe6dbfde308709264729d72fe5fa397ec3f6f5be0543981cf5863a34906b56ca1694402e261c0ea53c1ff71352eaacc3ead1d9844fbfd8c120e50b5d04ae3fb3fcb71564a123b8d22a62880632a38c99c471895521f24396ef44f61fd950165255a3c8d490c49946b022000214b2bbd3e6c07ce9c386b5d55f431f338b988258d2f8bb5c3baf20182c2543040d39f919a1f0199a69f10592225cc6219010411b45fd845928ad74888ebea45d2bed6e9d1c2ce4c96a94076afd39a5ec51f3034890dcdfbd1481c529ab2f49b03865db4f99d6ddee6e4219bb172270ff14e7686f18638b5abb5f86c0fdf3b74fb3411b656bcc278d7227f404ca0de440d9a824b02867738854d5f8e8492f65b7fd68550d2e71fa9dce2132e5ffa353fea4509c4cb2ff28142510be509c299828c81e94b7509c4364ff1bce22d96b38855010071f603bc5f74b284454c0b45cdd6741c96e0a524a29a5ecbe19964048a6bc0e6da66fb4d79e86f69af6357d4335ab7d0b59136db2f69d94e2497b4dd35ec4dacc2f69b4ffaec0f3a527e18aa1973835a6acfe15f1290615fc42f54f27ebeeee0e244f278daa453ab3d6fa526092a6629105aeb2daefa27ba7ce5326d3a76fea56abed2ce863562d87a2085891eb36642dc907837966f16e46660b05c8551ea04a29b9a664aabeac4fbf061b7a5c60b2bec855c78e58fdedbeccf3d31ee5aa0a648122428535c85a4ce637045b39e6cebd0f946d8029c47e47ddaffb6763e6c94ac2435b05f6cf09ad7f4ea3ac833888607f6971f46b44e0fa32dbbed1debe0c7de3ff2d2088e819204f9a3c59c8b345aa723c85d32a1c3c657ffe1c738eabe6104262f0425162610051ca68b85094422c6ca10c2db41389a4b13f3d20601167955c9d66b2b5df4dc913b44fedcbcf7f8e4466df74b7e739d3a8da4b38fbdd95ebcf8633fe3b94e4fa38d429b9d61c19ea57fb34c854fd201ca1eb15b89f2505faf7c27a340a0683b92a03948e7306d9d0cd294ac054ca60f7627c3afd4f58a635c8d4fc962c6af9056c32fd6d08d3af75ca341ee9d9bd46d1120c90ca14bdf606d8bf9f7e4d0c40486299be0e2a24658d830f0bac83251092b1b1c073ce396768d328779fc9711f9d866ee33bc8197f5a54f40b13dc2ffe0c8ad3e9650cd2269f66a40a9f6266d785369d9a38d89b618c451c19dc4e3660e9539c7650a5f640f109b3608967d6094060169623474c175081b251e14112d65a6bb9a0d2b315e1faa152314223c10c82ca12940a0b88e8228b0f8426b9881dc9a214f2b228ad003ac2aa098228df2c8182c8e2fe748bf79b6156d14260b1fac8d992344e4749e32449e3efd5a732a9b02aa4cdaa93d64f8552836aac5a416793ea4e55429238fd334f82846796d4a707d12aeaf5eb747fbe779e7cb63bed2a609466a5d2475ae8ed39889d3d847bb5daada172a968546c0d8e9c08e8982b4b05cf9e45275b69ad315dd45a2b156cb3043292459e8f95c0a278e3c288155b9640467cb0c41236110875358b25a6d82592208210882bb338011979927196404698581274addb166b2dd98232cf25dc5b6baded74349965d930b5dbb13c6dd3bcb016615cb39075e62a6e488b2c659aacb6baa6f569139d8605cbabd65a6b4da2bee64d4d42a2a4ccf2822df947320afab05163130ae70cc252d2e425dc2fd96a6c41c8fdb7bf1bdb0cb798b710988e96ab41c89bd1d08809fd444ee4fe2dd6bfc55cb5125b89c5b6d8ca161b6a26443122cabdcd5c720b6aadb51ac922695c2192a9feff1369f415225f216261490184270164718548368b4eee5eadc4fc5e8cbdb36f2fbf1c6a2ce97e87af3afaa3638049c32d2669e6b3bc3e23bad57c19ee207fca9f210ca57285aaff9c0bcf3f804cf53b21a5060d4983032cd2f82cd280e9b7c15530f4e54afe0525e834f27c49530064022d3295fed3874ece8873d302e30024c75554b328af3e683fa7abfdfe1a30b39c548ef473e869daaf6994b4a133a19333df14983efd7b29cb566a2b9d2c1f09e5421183949bbcf29b02e388912343f7ae92f7d6b0ab51d3a8a711630b6ca78df9d8c9992f0a4cbbca99ba9ade3466d339c34f01a1a8a3474db6e10d39e8e07909f772037bd81e4810106cdf75285ef7b61f1264b58543baf73acc617e5f50e609eac85ab8853f6c3f84e3b6edb9211bf743e410190ed95aa0567ebffde9e44c0c457d3cc0f4fb3f703a9d48291a4859024639916205096472a1b856f3478f0427e5054756f3bf15a214d149f16141c8c862cdf764a298609362a43b4521811654349f7ba15bccdf5caa6846b82d4c28e520cfc74956f33596237031986fbb284c27985fb9283788c87cea33f8a830dfdb051b17add5fc9e4890a2983f7b9cb21138cff79e50c9714e155d05f179622208cf97347e4346f63088cf1d9f944fca27e593f249f9a47c523e299f944fca27858b1109463a231d2fb50bc519c50023cdfc61e1865a6c4a0c083887460c7d23814ec024d78f4045798d6ae51b01a617674a2fb2e0f77a4d7f2a9d6aa88358ed56d72c5e9c602713204b202366b923d5f77effd1d9fee8ece10df6fd3bb4e10df4fbc7cc2d6dd04fd22660ff1f8fe58fdc1dceae42c6bafeeba713ae9a3b757ff0ded3a96a6eef76b5d0ddd2eaee524a89a9162d7b3e05be289d448b318a163f5946d1428b9d2ca3684124d72ca36831247f59466142519eb4031d8c1f66463fbf254b89d3b2f2f3e74be2987e967e7ecff796c4c13f493fab3d22f76b738bdc7ffb49eedf80c8fd9c0b21860a7287455e8d22a3b044cc23ac123427fda40720ba1590e54de0ca775d09347dd7b957024dff81a5ef6a0bc8f22470f4182455abdd8deb3ccd1b81f4a7ff3c22fbf793ecef40647f1742f6a72ac8def2d67f04c644c9fe30f7454b44f62ffd088cb1bd689590fd47200c517392fd376f049eba176f0fd97f0564f911f8e2bd78a7c8fe9f37025df2f7e2d693fdbb2b69fa59c0155087a4996f02e74bd2cc2f817306f62869e69346738a528a9e3c89c476c2ceaf60cbb632bb2abaedcad87ccd7af4968cc268b5dad5ee6bd6a3b764b45acd6ab67a8b565bed6bd623adb4be66d4e9ab3525787e7793a494775e1cc8e881e989d103a3e7d4f3d2e3d2d3d2234366851e979e961e969e951e534fa96785ef29f5e01e52cfa8e7eb79b0e7ebf17aba1eae070c7bb89eade7f68400e8b93d5a0f00667ab49e19167a5808408b90d94eabd5eec675de3722e1926985a5c5e5e50423068ccc0a3c32786278607862f0c0e039f1bcf0acf020cf89e785c785a78587856785070c7956784c3c251ecc43e20901c043e219f17c3c1e0f0066783c9e8e87e399618187e3d978580800cfc6130001f00800b5795d8b136eb6d36ab5bb719df78d48b8645a6169717939c1880113c392bd583031609c5e5c5a64c8ac10f3aa31994b0bcb8aa9b4c2c3bcbc55c2a4d1f7608cd9b2b31e3fafe3c010464b1b679c1602e0345f7e8cb095fbfbb60030e35159de6057fb6cb4e40da621b1c15c728c2d300b2d1babe5878ed404dc59021931aaf4bdd6dab56bd7f975d65a6dadb5d65a6badb5565beb73b5d6a7a3c469c9b53e176b422767449b59bedf4919587692659834eaa524cbbc7c5c32323bf92611926574f24db9523f37756552aed44eea15ca284a31c93705cb5746159f362e22505c36ae2622a204dbb8faca70c978e5fb35b6ef2a08b3a352b02a8145d3eb5d62a621f80231cb358b3242a2e935d43d882fb3a02cb28c208b29252c594cb96414651f3c60605eae2808c323868cf1e5eafb01d69e7e474198fefa4382acec6be090202bfa3242ae82e997212373154c873034d08ff91df463be3f2604d2a46584406a7783183c81a9bba29a0c9d1842905194efbbf0d3236f6c8248226f6c74a40b2f8963f37d175c2ef8b88afe0cd91884927c451776f275019669a4e4fb344112a725dfa73099162b5f19223a8414b96a07fbdadfde42181a62be3e8f98afe10e4d76901136d921e3e9c784325af93e7d1931311f4343967d1b6a614c51d581e1a169a15c7528ca60e5fb1d0567cc6614792ae54ab9faa6a6825254b42aa6955292022463ca49ea2735a6a048f98c3d63e62afaf76714b9aafe7d19413484e161b5b72f579a8c580d633ee6e58a8716ca080a6578caf4929e32bdbc57162dab47a3eedbc0428c18312176f27d29c664d1f4a2a2096633d472b908f27d295a2248ecd6dcf6f7bbd2ab7e9015cc0e4d0b4b2e4fdd0a96464fddd24fa96803c1d2178dbaa52a6e62798326964988ce069a741a65eabe412f55e91bb0f445a9a854a5517765e5647af5cbf492adb27179eafec522b6195d3057e965f313965e363a6e8b11331e99c26ded5e10b02833e6fb3663df747fdfc6e5aa1933ec79dfcd6ef752304953afae7a2f25f5ab91dab156d3eedd368eb3423a17a0d47021a87361f4bcef1b8d483ba4af46eab5a324c52405933e92e67a292535f07783e6d44bd27c5170e94b5f8d146c00ad012069d4357d35524c1a75b9da04de3ec739b00737a67c1a75c314ac517285c53371dc6fdbb66d1bce2927a8d48fcb772c9ecb5723f5a451f737b0e55dbe1a29278dbadb77de42110239056bd46d717179f15ebe1a0218a55c92e6becd0f0d6d7e6c60d406e6a9fb41563504525f0be5b7437b1a02a1af85284fddff8ac0a51718a7373d798101e3c504ac398057118cd38b8d8e0d91bec1261f13ecaba1c3345a01fe522f4fddaf60cac753f73b9fd365692482207333667d1324df9f61c6cc5533843c75ff723366db8c990d549e2134059651be28cae20ca17c3f461633d437e28c59becf8d594cb966ccfa46b4d1b1d19138335f1b57a36484522e89c3fddd5e262613e34299206ecc5b2803c52803452666e3ea1be9a5eec5f4a403591a05f312dae8fcd2159179a329880a166445c67cdf0473155ddd7fa1d212e26092e6a676faa6abf0ea1b16253e7d33629282f5cdcadf4f39e99b6631c0861ea0987292efb78062ea27df6701c5922bdf5f01c5d28f580acaf727e8637a36ae7c4f19833e68164da088abe48b43a3ee97824c2c37edfc94be68d55dddefee975cae92ab984967ccb754059645cb1a8562c927df572eb1f27df171150d3912c142ae92ab0bc33ff98e333c8465a6575b3194ef77b191131ce361bedf036dc0a104433160b08e40b12ce7365691ce504bc80ab99648be1649bedfb5f779d25530a7191bfac6fbfb3dfae6fbfb38f44dffbd5f83abb4bf4fe35e1af9d2e0513fc6cb8f077d98504813ae4beda45e8dbadcb671bf813db871498c0064e9851c68752c9156be29576a074cbdda0097e5a9be6f7af58d9ce281465dee3e0cc76d6f7add3729b96ff2b96f8add50e4ee6f2866c0210c7e994b36c0e274356d94e7fdddc1dea8d14fd7ce6c88e6b4f6243088e5f23133a8fd26f690b3fcdde85c2369ec74f5cdac925bcbdd60aba1d0604a6e0fcadd4316e728abc111599c505477a1be119d9583fa46427902859f208b4e45ee2564d1adc8fd95d53712488956ee77217d338b64140a27acef5f04531a2e3171b99a7ea655261385b15f821aafdd1e8ad32777cc0937588588bbec344f7e37acfd6ab4a669754a558dd7600fc5538ddfae993f6ae8801d3db3873a46803f8bb7f5338226fedc6327b07865ca46bee1af75d8c3a653b3e6f459eee06d2b4db94d41095696402998e57ef9449640296092658f004ba014ec64fbfe540976d51c653faad6a0823ca142f80647a11ce0652dbcc1bfc70cf6fd9f88b3ebcf01f3e9d79935bbb5d0a9de4a8051b96dd0f5086fea4f6bd0b4aebb765d835e28eee06dff795ba771da76b5eed9e4250916717eef31fdc01ebe1f795ef8e5f4e8fb6dfbbef7402efc3ceffba810d2a5b4069d41baae08ea35481c996badda46e9b65190a394d3dee35a98c993946928a3a0a095e59783943d8b510db043a0a9dcbe61ec5b7f1ef73ddca1c98e7eff1db6b0c98ecac377b8bf7578df43dc21cc0ebf723535184db394fee36855cc0ca59452aad9ca4293a8301486faefe877ff0ec5d30e0e483f1762397178bd0574aafec9ab9d62c9924e3ae92399ad3b41c9da264b48df6ccfdac0055c19249e70c42002eeaf5f61966575248ecd356cb283fbf6e7ba596d4377d75c7f0ad1e99b0ef6a4553164404aac087ae53a9dd866d1af3dd4865d1f1a896ee17ed64c0d1d3a0765b1248d4fea5f230765b136d9d5f9d51a3237a8436bfd31c06b4f1f758757d2f8cf5c330d67f69b659952094ee9a99fdc845455578549e12325cf97b26f1c8b2ca6f2fc6dcef9609e3042b194a795524aea606df9d5255f8af5556511b0f5947544804e595353838e7b3923ca184744c73d4cd75dcf3ea62143abee8b8549b636e644166bb2652151842cc690adec36ae0339703e0793237337a7b9d1259595ce09932377b1cc71ed8dc4107c4e4f18cbd271663aa7b5d581106406420ce1892a8e90c110901b51851d820ff608f50a11d45a6b7502165a48273c3165144160b5000a249498b2829527710213b2f835b60949002be409758d40586badf5e9748ad0a95f5d30d85c2f9d5a6badae1d54576c480be99175dd10b23fcbc9bd2c817aa2e88102853965ee9ed41d35c19965101aeaca7e373f1d9a1602e16165c32b695ae0741e743e6e481f37da078f5ef57f73d2505793d2cfba043b04c2c36a86d279f0ee279b45ddaf274fb588738ebbe3beb9c15f4e61809c929d4e4abd76dbec45044b28a84f3ca9f024b85c7d3b382ed49e0bbf22f07d0ed49e822237eee8fe7e3bb8d74220dfdf03e4eac4443cd12be7aabb74f6d7d0ee1e74ddfd0dd4b6d74220a76d02dcdf100847835c5d26b8bf6f6ea84fbf57f273c0cf2e34b00506665f25100c74341718d00b8a5e2f38228f62303092a95f209e25e4eef72468c3983ed19334c201bcf08288e8842fd07577bbd75beea8e73777d5a39246be566dee34cfd6dc5d4fdbbccb795be7719ed77d36fa29b775a32969e47bb71045517a9dcec4544dd3a85f774cbde709fa4296403d48b2294b201ea124acdc91bcbed181e61b9eae70f0d4fca21a8674d01c518e948620481c5132041f1d2cb1336545c31a4f1151e3cae2a9882ca288c8228d21b228839064510a09918f6408d800095558413e409179105926c408515ad0022348d084d5fc77559012d8c0044f206902054960ad26126640841f50a1084a157856f3735c15e48813b098b57c80928405ab17258400318328963c71b29a5f83ab563208bae288eb882a50b19a539c4062054208d1441423584d56ce690a8567f13e650974ae8ed4044c65a9a3e936b9d1d0e22ca2bff3244ba09d599825d00e14b9c63fea2afcf3bbe1f967804319033c5fe4e1abc1c3131e7e723f0f3ab947cb1e40c39809c3ecee2ea44ecd4be46502cf9754280dc5ab83659652482ab98de026020704629100c15af1f06d01a4634acc563cd41cd1c1ceaa09ccfc207976eec50e84563cbc4005082ea0442760ad7878610a44eae9029959c080b5e2c14f20e51d753144115e2b3af312ddc8041f0f70b77f901b384c7d1f39d93f084c95f9067f977999dc2f93002a57c8b5d62a06e9ece0ac426e50e44104b959b96bb4f4517dd9208cbfcc3780301ece8080dcef438e59ca2ae48e7addddd7880ec67ead2f254e5f4f4e185a041386e98d8c5c8f6bbcc28d15f20d735821dbc0398739cb9f7398b2cf7b642b8901f5b977707b0edc3807b82720cb6f867a2301f986392420df49dbe968039d75b0370c67a8e1366d11a220c1caf66166b05f492ededfc459851bb30a790b5ffb9cbe0eb07f4152aea1df20cd1c449b73069d7c500132571ade9083bc2fb3f7a03d90202bed2f08024db4dc739fd39aa685f227e87589f69b16fea0fdd5b4bf43b4fb43e490107b4afe102d3c79aa4f3134eda25bc099b2647b34aad6af410ac5cf204c0c2af89d56d2cf7c0079e35f4d2f5ed5e8a544007ef194473f5fae5a096bcf57a7e68b8a1c340e3ffac6bf4aef468f46d5fa0387c97295949225abf440f1d2a0e16372241b701899008b37573b04d36abd1a93d307d2fbeab7d5f44de5ba51ec47cdf6518daa51c02d84358d8a8dba09f371d2a8cfb551b198167eacfa6c1eac51d5497dc9fef2cbf1922793465525febd44ec2f2398be38a967ab38c198e9772fc690a90132a5c994854c65cc17f594773a4001b24cc94d9624f8f3a3f3e5aaa9844945a7ea0744444444444444444444444444444444444444444444444444444444fe843947874245eea7b10a45a39ae63db5d19db62a5592fb2d7d69d495fb2f45b2d16df39e1b6d592bbb53bec8fddb6c8a473dcf7b7a328e83794ea0e4fe6f1cfde47e92134c31f69e18364b8d24f79b5a8deaef06d5c9fd2c42640b6d69f19e2d1e3a0be6b2d66886453a7379716a2fab5fedd3b0fee9b1836663504c48e63056c7582c168bd542b2a1990683c16030188bc562b1581d36b1b0cc8a58df2d54bbc6a098906c1cc7711c5bad56abd57219ac5f30180c066b1fd8cf68eb6c369bcdc6711cc756abd56ac16030180c56627139ad8c3368c6a690ac358ee338b65aad56abe5b299aca859add32d1fc7711cc756abd56ab55c2693b9bc7830604cb3355d2f9f17ac86711cc7716c8dad56abd59a4133368564d4c7711cc7b1d56ab55aad180f966a9043934567b3191d670b85fa3f9d309eaef99a3e13e63dc7711c4719b8e6d2188362af99a750a8ffd309e37bef109ec5e6d7d74ca3334b6795ce289d399dade08d6638c616f855e3aa1af32ee6aa1a8bd5570c75635de0f92329bf2c1bd5c5c6802a5db5daddee266bcd71d6af8e8dbc1879512365b335cefa55ad66b5d61c67232f465ed448d96c8db4d22a9b2d97b2911762cdc80b2628a5e17524593e113be9a4556229a7f41fb2f4abf21f64ea6a4ebd6b67a5e8b76fe8955a809de8ee5e95e02e323b101f4df11b2fb9861da315894e035bb8bbbbfbbcc26505f6ddddddddeb9c48c0d935cd1dc7e955b9b0001774886ad6c55a5bbd095e9d5af1d978c91ed6d9174a82765055fe15b3af4629d15eb392a469bc437f2d9261397be492bd6d54ed6a3b74bc622f25adb24c7c3c1f6b2bdd604d5ce47571f1caea29138b18e3ae12b60c0b979627d95c47e250d1135b91e79439c3974cc32a6b5423a16189d454f92f4e8ea451a32260d15b5596a3ddadcb25df2122e0ec2f3274ca5bb95bd6a500eb9af9eced0584594120d2082d10c25a01e1a1497ffdf6fc5e0a05b300f96419842ca14089a2a2625080698e0c43793e0e1cfa466eb205f48d046a22cb93c2809a1065510ecd5880644e6985376ac4e2d4e96f1460f1674b0aa422a422a422a422a422a422a422a422a422a422a422f33ba48d1202760f41597d2a9329558814ab4e9840d1de5dada02e694ce2b4e47eaf5f8a2cb96372cbec3098341437b96dd2e77449fac993a404963f99e429a524f9346a92a05351ef46e9bc2258fe02babb717477b70c4dbb671be9bc22d8dfdd7d013864c8699414dd55d9ebe9e0e9cd29dd5d824fe90dd51dbb8c58a459de2ca584c23fa1b39430d0efe9e307cd4b58303ce6aafe5cd550c75bd587c941cafea4bc040435bc9e92eeee780a9dfd6ef64fcfc083260c1dfa6cbea003893343a72269ac27e7e3f7febe9c37f8fef194fd7b313e9d7e867e340f5a094de128fcc2efa5148a1787e275093de8b485aed5215c9feae8f82871bc6779fbee84bca14924ca3e4be8334fd9c72fde506ce10bc516f2cb75c12d2796d94fb65e485d92c6fecd81cf2e3ebd100c8f16966f79b9ea5ac01d46d0f22e0fc4c5e55dc21d5c80b4bc4b885d474b0b18a409cc95d99b493c7da6cff4f1993e1e282a2a2a2a2ac2215dc5592dc85df62f3e3dcabe0b0cb0e82e9f155116d5a12d57b924ce848145e2482158eca16c87dcf5b2ef3ef61d66df7fecfb485fa35e5982ca1dc95a6bedbdf71ec101d1eb0ab1b38545329338518780820316d03b67500c8a908df2fc96dd48ee9c1316cbd46f0f940d2f921ad250c41e8a271ea199be3105b973b4832ee663e6a49352da14f410bb12f43bd93eedd33eede3d33e2de41e0479437f90281d5771a1cbac76b7165ac8a2c3be7b3d8c5da633ea01d6aceb4c18b4d0bd0412c7868e044913529d21d185fc5e8c4fa77fda429916050505050505cda0e9724d976bba6cb81bbe27edad1cba1bbe27cdd2b8a1886d88ca2e30900dcd8a288bea382cc88abe8f41f43de62a218933b34734276ac2e0610ef9423883a4e9170740a518b19231649b2c5b8899c95e9843d22dfc707435c0f351a710f503e5aa1c32d52f85abe4aa1b8707706854cb2cca193dd2f9f8fa1d0e57b50d2b16dad7c0d9c0853b70df6487dd61b316f4aafde7b4a6c3cd396855a002cb060da90db098990369784afe0612c1a0c3cd1af560e0727b353f61e810c77cc1befd181267860a9034f66b5ce5751ce925093cb96a147ef77a1877a713f7a76c51a8bc851ef0540d68bd420bef13a7979ffdd93bdf1482a36f7ab6baab116bc3f075fc9435f38b1a582c8b29763045137c4882a3c087fb02230e256b32b204720195cc6509e482a12ce2ec3cf8237048bcf0267de1e55c08b102ebee4e61f8902077df8bf10d8644a18411ad1a2c11e43b42d8c0c6f8b0723fb53edc7bc228d0b14a7c6e0a90d424605a134466404482a4d0344dd3823c256f115a4a66404bb83892848ea764ae2b005a22a8ebc19534c911af538d2546af30b2043aa208996609a482990a3a52153c5f963a3923d2566e2ae45fc39ad277e94b4c60df481cc6df614c2b89d2bf72966fa07f3912e9bbc949d92590aa95b04323728752f691dc4cecb83799c0347f4ce09a3f26f0ccdf77d69b4c602d7fdf759f37bf1bf7a9bbbbbb5b8b4b5dc996acfd3a77aaf4923f8c4fe99be9b1bed1867c56a59f0a712a845ce5ab56fff48dd83aedd34cfac6497f3fe9bfdee32c8efbd669225e02dd43f11d44f90c5cf610156302dbfcb94fd71309c5274b0905fffcbaef2f1ad5316fd277d3eb98b3244d77d1ac5158eca088a894edf635390b158d040040008315002030140c084402814010859218ee1d14800a74924476504618078324485214859031c8100500010000030333234520004bd4cf6381dc9aba81f69ed2b9eae59bf5546f4edd417b4de958f55ecafa39769037b33b95bd7cb75fe5cdec1665af9aed5f6381debadaabaaf740dff29b645b270609d81ad48f4b902b7e2c7a61649d5d049c09a43e5f0e83562e418866411f3a2d1129d598333430287c1d26386b920eff5f68c4b1c69ce1aa5bd11069d16fd77088de13026a11e04e6b421025baa0396911ccbfc4090207bcb4ce90986ac6d1413962c40968d91e7e122351a6eb6a4461eb7bc041aca11ec54edf809c8e67983675f91590325a580d95d785480a1da8e750b758d82cd4844ea50bd589614b356cb5b7c06a5ee0c93940a46b720b6080a2417e833f582d3e9f26aab29adf8747b82330a0a8536327e04f5bd0f1f340b937fd962c84f16f4173395ffd85e88cdb7731a32e533c80128f8eb543c7faeb4677674870fee827fc30c09b8c1fead91f3a6958f7c5bd009207896da10ca6b340ee8fa0a6ee2901faba1034618f7fdc389ec74acc374bce38f3acf3deac9bc8fce66fc8fc540f23cc97bcf33c1f5ab46107c1e8291320e91a9a048cbf4b26f4cbaa77585fefed6498f6a71ed9a75bf1f073b985cf9a979801dc165ff2b080c431bc302232c13e8ecb22545e10420355473691ed6c0d37bf7fe95fb73e8d51b17845155d6c065bc47ffdf5b7a34a79fa0fa3a0676e37fb5ec1c49952ad727c5d6a46b361269a66a1791864f716d57d469b356810125c7bef85926b195cd588feb3f4ae61f57800c178573beb4d78d3b832db7f56dfcbe20c680c9eb41b35f26c015b2cdf474fcb224978e8d7e975ae5f96bfc34abf63e7a988faab14908f28aaced58b5fce11e302782ba02a65a1883a4e83efece8850e7436b66f6f743b2a2eaa88a9795d156d36988ac4c3f021e8f77f4f533d0593c72fa4f4df77a3ab747c8b77634c4d6b821309b015f89bc666604ff58f7f313ced2606ff9b11f33532631df78b95f7b3f23e990349f750b277cf8a38b3704403ddd2a863d1e7ae42d614fd5277d2309ab3430e83468c158e81e0d4fcc3e21a81f21d69d70a16c2fadbfc128cf98b43a317f8c1193da08e1760d8f176f5a43de86e790d07a23fff749a8419a2913b47b9e5e8b19ebd19054f448839967ce51d4acd38ba005eb8054c32a717eaea423fc17be394797fb27e4fd6f39e3b2d5ebc8d7b4c7189752c93822482c801422339498df1ce41832698aaed6035419ac952a429836b05376a3e6c22af40dfeaefd9f098ca86fcfe7815433d01fb1ed3f1d4101e21eb8ca5f0a8f13c783dc3afe51af05841b5c69640c2d6deeab16d6f105bafc97f8a5ff0c4dfc6267262dc8962e81f3e5a787a7204f58ff577971532f43e35b3d41606c127516028860831dca26be18ebd2192e6fec6aab021e2322362c0eb02cebf612e7fb2b333590e6ed5a7847f949d5c806a5eb64c0752ae6842ee68f83cfb14c6e1e0c8f7a7f22a22c6047da0f6abbdcf0a022f92361e133eeb63b3874737019da7288e286ccd9b7b118e30c08940412058fbe73fc2b5afc1300c6f3f14f143102f459bf933c2984bef77d014f0c0e80a5dcad2f26b435a566b5d2603c04b552cffb4c21fa3233e54675197e93038fd6f4ae1f94d22c9fa2113f19463edbc3560467630fb0b205449c2bd50dace3cc6b1dc313050734b469c2f048ef3e8b13e314dc56da36414d349fb98013ee47111fe7b94ebef555ca5caf77b940c310100a54fe2a72ea71df7b72d35dbd864c17210a663e8ceabb3f36e42eed2ac6998ecec70f44922664441c65265f8d75a5926d21c079b28416c82b6b452638802d7962f2868890d2b72bcf58deed7f78f1afe34660a3674f210375b2d3d0e36405785d5f8abd46dded529187214f08ce57dd42dfbf11d3ad7c925e6766f9cc9e811b8bc99b4a679ffd1256974ff5aca46f37e4479a9ada6794ef355f64ce47a6bc25ce7b6ccd25a6bfe46d40595dc675fafaf38e55b494bf964c31e161b265520622d666376ea5c43071244efc3527062dc143c18582b89ffea3d1b71e947a3c8124bf79421b62141d5b22e1f11cf54c4243daabab7d0289b02c2ae1ac4366d8b6f3b0995bc875855c7f353662c2111025aeed43f665d27296749cb1740abdf207415840252928ff62c69cfea0b1a449b42c2ff3df34724095a30c5bbef6f2c38a087d8dc2fcb999008f8e484e8622d8d09f9c95191da8fb9fdf4d7f9fb704e46785c252360694c50b5c21286d590591d6217412509c2ded79b68e935593a156a271726ed9d530eb18cc68fdf6738966038d1859d9e667acb1ceb948cab2029fee8b5a56d93a37729cdb2ecaf25e3a739a7f612fe2dfbbdee0c5f6c91568969057f51e84ec5fc29a8045236b5c964ec77472732debe4602124ac0ff37441cf3e6c7cc9a892fa786d9a378aa49313f931083a4d8482d27c6088a1f7696b86275c15a967e2fda40734397ee37f09d2f81a55ee813334141875110c32c6b231816e962e776979992b1d52bcf121ca15ffdfc3d98968dde3b315db3e2b90e27c4113fe51eecf887b1d19806c00c4e74cf48f4836f54e148c86b6ce75404f8b6212c8c064e341a24f108c53d7f3be7e092da0046075a238d68d803f9ca4dc34328fd7b6453f8d375e65407a1553625c3c6a07c4461873fe776579a09902f0e7fcd69c23041935a813334f4303a6d97b7a71a972a45c0c1369e2f817f50c97858229cf4520bbbad43878a8f25407eab08b869d04a4f5fe855ce84e167abe725a26a752b0df667e31eae8157690b91eb09b635d02c88025e5afdc2e4e064b186c5be7a395c807be6d502d9377c68bcb75cc2a4e4c5bb1a00d8cf6c5ac0a119001c6cd12dcb6c926ef945b4dce717696f6da4c4c007f09c4d397c7d65d17b626114e16bf219f7d85c95d746d7cf0066f0a84a6d7610fd3b3697e91bc05d9533453880e34cf6aefc9521994bf35fe01722b6bd5bc0ff395b47236e0e834ec876f9a4605baf2bece969bd3f367995fee0c80c8a693ae030828b434ada41314ff091adcfdc6482b569444b64927501e2242ea60ddcc6741545e0012219931b868018720833886c0efe10f76640dc340b34b56ddd329a88cdc6b489fd5b807951dd75fd7c3b94cc6f35c8c4563330ecdead362f62011c5112f35c85ff297551dabc4a16406e026d92a2a0841bd0a6a9014a7c6cb3818b9087e2e35172951e5fdd4c0e98e774948864a8f4b445c9e10dd601afc21c008552291de884ca489ca199177e5045f01577111517823f9abb7ddcc71fd5fde85803633c44d2e8988c6be9160ef074eacdcae006e91cc9e53ad364c90580e626ff926b6a3b4715c4bb400adb6e00b8b3154ed7587afe53f0449c9f823b4d27dba2588fb47dd9d5148f20096842899d81555573d21af44b42b0f5a665010cf2c414efabbbf20ae727fc0c723a809160a1d3407ecabd0d877af847d23fb97b2e2721368ddc8e34ba511edd1f6024eb90ecd0f54d4782132b6f1b7acb2c6a779bf3f4b2c8e072904b04182497052c13017c4e201983e432a99008f08746a46114b718b316856c40d8497d97f6d83d1a24b7e393f42a3b39fadc59d7ad7e246547ce54d1c26b631b2bcd2286d95573ef34ab3ca20a884b4164e0bc731d92fd6fc255c9e32b049a5c30ac08c6c4d1ea6b621d04dda27dd27926df4a6425ea60251b4b285e9c2c1bb6376c6096410b0fdeee705760c3a66dfb632f3ebf172bf77aaef8481072330d16082c49485a4c3367cae94eda7f699f086165b21fb0b4e93a746affabbb5258ab97d54e76b9fb16e82c21e27aa909707804004e4133fafa174f77bae8f580c965241ecd5f9baa212bde48593164e1e74daddc0ff7f3d1686520378942eb85fd0f709146caecfd1e95c29957ec919867dc9b0a21956edf6dd861edbef46d43407a058e68531ada28337e559d71ba11c2c3498cacf3612fb9dd13e19a0b7f157a6b8a16d9f9e6db85786e84a7918526442d01db2d098a3a629d9fec0b955307790bd5b707f9eae72053b9ccccc0258dff793ae31f547246365219827f11470242e3bdbfebaf22e26e5b31b159c45ed6ef6c29e1f95a6b068f659346202e77366401e7f6da8395e5ebe39a91281730087ab847ef718f5580a6fb3e2696b8a1a02c209b167213792876fa8492d38b8986ec4aaa8ea31ad2a96f1c8f4111a75245628de352f920c9c5ebe6fe396151a919e4f24db8ddc21b00a754cebd9056a5fcf3984e2258f83afef54521b958e249a9f94c2342e5bb2c804807fab47516ed99f4faebc21d611eb27382c42cf15d9ebc5a68acbc3fea4f2a29132a260336fbebe50f502ea6fb9a28d30741e7aadc1ea5447eb73fab7a01f61a47c3a7b984ffe41af98e83c6f8fc4bd1d1e3bbe41100dbfca5140dcbc93f3e5f4eed1270047050621fa896b98d301395e78e0f73117d302ca7a2c206097551221d1ffdafa23fd51d62a81ed5941cdff4a6d433de195b9a90afbf191daa36416367226a9ca98b89c30a87526a183e0a2d0690605c02ceb540133890849818aff6335f361840e6aa4e54bd2387303cce6c1188067cf14280110861ec4efe66b6ae56d09ac213166c375057d01b95914481900d21b750fcf210b88a9b9b4559aae842d0e4df0c83e5dd8f30994da3d9cc93d4698303d947e0eca1b751b10fc2d11ebbe1943ce589056fd8f9d52c986b2f9df3754ea26cc6dca94acc49c0fc14ba69dbaf3543a505860f4366583f9bdd251c135c1a214a8aa9ad37aff16525ec7b2678bafbcb8cfa60067be7509eed775d572a50da09348618aedc058d2b8a537ab2cba54035f0cfd45b2eb1d10220dfa728ee41831047b1f3291baabcac82142b7f3a8fa5198f3a4a151afae490867ecf3480399e0caf58301ecbcc979cfda0dfd802b4ae384c780a35fee90ab88e4a545a1b50c9db096ece775979098cacb8b4577f38c7f5a274032f961fc82efdadab11173228a5060f4ae92f469f8e27e82adf64b2aa1125e3ee8c2a321e9bc8208bdfb125a7fef14aff85d96b1eb0a1b596797c51f66a798bc3d6b0b2c74ff44c7f59bbd09d4d77a685e89de9da73b51b578c2bed5f2c0bcf1276b41a5b57f4c14945aa4fc4cd0258c9ba5e1a79f92f9c0d8abe35bc27daefc4f2fcb9fa8064f78c5f94a515676d880a844a658006ed2968f454e0a7349fc5cc953482a28144d38e6e350165e1f05f6aa82c1ccdfd8ac9b674124f6c41537f7b11d129d313a8f72bedf102af4c9e2a5644443325e3f45db0419bcc9bf0d57d7b70a9b297299809a69394edc0043937a41034b49b0528d2a7e1137ad3db87cb1c10412f427a2c7dd7efd83b9bb29388b5bf5ee4ca0c5498ab703acff909ffb17d7ef5e2de4f44a76222e6b911ace96ec7910aed39e0e12cb6d47db6734909c33b271c744f562ae1090d40c104fb385149e29af3f4b0eb7b3c000f0b9c5972c4fe2e58a58c4f67c9ec80a05f092040970c07eaa553abf19d8d88b0508607e2cfd5099a33c4d8df13e3d4ca10400029aaef1bba0330f8a0761d68ed020f72b4331b2ad369ed5659d5e8fd3ed0ef01c406a8efcb768082f8ccb570a17a537653edc636a559bda6816a54b818bbace8c4925e8c354d847645bd81d228ee840577d98fddaf6cfa51124762aa2d23cf67a77a1f451590702bfdd5d87715dae1150653cea8a03cea1158af77c6d9ac195cc2808fa65854a6b9cac2acc2787efe07e86e5892108bb0800e18f984d3ff6423d0f945a81d298cac899eeb36d8879f6984d0a3e7a192585cf53565124d38484934c65d4a097017351e082c1d769741e37f9cdfdcedebbbbf9b13d49f69772bc91629291a61fdd3ef2e104d7ead677b417604c83ec9c6846c8575daaece2f634bf5cc40b9eca5ee6e83d84cce26abbfe31d101856f8fe4c12325452671c56f9f8b1d39162f6cc1ae12cb8dd1717460c6ba8a1857c5f355cc2dcb932a677f060bd20bcfa09c8f6fb5514622c95342d5fe745c1d444fad6488ce5f0cca701d1135743c3b1ff579edaf413b6f8856148cfd49c998585728dd40a7ec880e67d23d55ba8049fe8fbc4922bc2e4284f9ba018ac3d38f56c86dacb1eb992e326d2daba038f6ce40e6e79493a0637f1b661646dec155de2b5357ae03e30c84e111c89daf9ed8022f035eb059370889b4887994a23b92b1a9cf9ca52ea5f4e7ffad9937b3b5c9675f9b600fd281f05b6fe4696638682d29018eee84c3d8ad0e9bd7260954b090d3588b152c791c51b89c115eeef9720496659042ef32c399531429b0dce38c29f20c494ed89e875d36f5401a09a378fb010676e13b8b7d74d99c8068c4a6bd248f74bdedbb1de44a4bbdde7e910457d8c60d8610123a75b21293313450db6120c45f79c41c26572460dd945428a99b77341fc12e70af2a961b41b33ee66076866b1c03ad3057a76c403ed20c6e87ad58b96cc1ebc7fb8f3dcb001820c1c5440a893487734803cfaf9766a86df77fa599775f2d404f410c9a7c5abaa3117b74fe65219d472fc428f00630198192df948aff7659e00fe169e4b04c065504abddcdc70990352d1e058d28f443d68b4f2c2555662e77a4cd79a33168e690d1213ed0057faad6a39acab7bb1a99670c2c712f8ca76229d1782cd8f8fbad3e262933c1dfac663e3ea8d6b2925c3d41f187ee648eba1c1da5f5aa37c1a4a875b05715ae93a1c983960b421180977913da0415ff3e76c85e3a8381059f4468637e98a3a0ff98e87c196272424c2e97f2323218b18441f0e4cadeb4a71f56118836a94fab28950dfcc24673d3eb7ee1a77217f5dc19361977f17943456cb8cb0f5e283882a0d2e2308006a2f6b643d646195bc05106440e0565501c9683f8edd5f09931075ba9915400bc35e3013af2995481716aaffb33364f70ef96eae5a4f818fb129510dd80e01ff9cde358c7633ed060a4761e341c9c05cba56eb09e325bfa5dc731d77ab7ff5f5b7b0a7a70cf0361d4358b8e2766758ccbf2314a685e3bac70f83769aab57b25d8f3f74f7bc2cefaf57185aaa7fa450af3af7f3d45f6f7dc0aa22bdbfb7f1c7d5e7a54891b3aa8cf82f6813db70578600d9cfc6064a7943445c4c3464ef1e74920cb5ebaba0e4d582ffe0ec72251aafe9e7ff3e991aba124b2a259c16fd5e3f98758f7b3d3c343018aef2e88a882a81a271ca6516886f0fc630f879306ec473dda35a8c77790fd257414ea0484b2a096c0d8286836f0c232d84885b84211c437ac86cc3632c98f872ee7514741a442b958386c514fcdaa1c79abe404540c79d966b7940b971a0b641019d12387a7e3d767a4a10e25fb86a24a5faefcda393855e35ef3d85704e3285677e82e78641002799c2335311fecc9fc1c93643dc46d8d15dea94322d280568fc17ca779bfdc1b46ad2b5b88cc214be2dc359f826d9e051ba12ba88cbf315d189de33e33351baa7bc0d62271823fd6176a800a813f7f213a32491f1585011f994dc17c52b6b1b00fa00e52093f8cb236f40b98ead64c1f59fb6bf9e2fe358e32b92ae1ef90c07c6a35d547a1c27df08dc97bfbfe54548d61888d4149c7cf22463e8e38fb8e5f9d227a3ce1ed1160ce8b742d1f9c43e10754faf6149b86aa537c145ab5e13cd7d2c97b5cbdff8f579250a1b0565bd8672af366fb002e048e6e403d6f69800039a18e21ed999cd7cd7c065c15ff47a1cc314a674985096c9706f20f892b134dbf76e32079c63ac766da9b955843f4ebddba451661ade1e4670f3bf3e186180e94df3ca3ccfc0348a646e5cba4ca46a4e2e7d359a9b74b271b76f1285a6b838be82b659b99fe4fd7b556a644567f459d0949ed5f9f071f96292bfac83f261da6942a0d107c698f709a8b405a9063ce7821396516a19c8fbcc10e571dba17998d34c669262453db6c4c2e0fec3232339c5062788a6891dfa6a19a2aa4115c1b6d8a9526b649aa767daec76d166a00e05c85946d26c9df4822333850b833408d6756d613164f1d4830584695ac194f7c18c0ec346a71848f5f25761ca97ca5567b154e3a492397f67e3a41253dfaa87d44482458c8b2a09a15123b3f31e1d1b7690907e022e757da2abec7afe0373ef300d919564545b865e181aa35c29a89889f87eb3ada97cb0215a3cb75b2e21d96d770015282d3022a9c65bb336515fb7130383c896b5a9c4241c3b6d3abe359984f49db167e980137a757ceb5d2be16816d6f7e5ccac4aea5f0fa6aa03a912882ddb42c0eddc930f7521689062898520d4d4755b000a5d546e9e90f0f03f35dea13830b70e37ec01450ecc04c22012cf8803226b8319bd1542638073fcbfa0156c5b08110b15c103e4454566a90843919eed4efbfe1b3068a24b41f70d616f2dd3e24f10f015b70dbb90385872264befb2826ea134f1e2c1b13dd5d1677760e117ec535d25726b4ce8400f06d5e19721d871b2a6470e537c45494c54d444cd879c0880db068434882876ceb6ac47b078123a8f8582579481f0fef33fae970ec0091a35162d76fb33e922562f118bf1a78a38c42e71a2fb456cfa0f32091415a5b8a1d0fcb13761bb67a634be5f5991a82b948add57f7be50de00bc500051a91618df5e5912658858490527de0f62e0a9e61831441f36a906088e5700c6726de790c9010069c4f196592c8be34c9fd5989ced2d652ca83499b7072091f971e87ca42c0bca50adaa7114338b2403fe35d4da872b4274b976302b908aee106400e4ec87ff265eb8031a4e5ff5a17045d51525b6b901612d11f455fe2edec362f54adb2e96911f81ba10c880d572620e3768bb3a795531110406c51b7f79dd36c835c667195edfdf2f5057dabfb74d6f3cddd6a3cf5adc5661b774b96198a1136c7a95babd67d9221afcace8c1e02a8fb350393e819370a380f168128b417b6a03e4a80110f116c8ab6ab772b00391480253cfe0101a5153fe2f662bcc94b1f000de438a5bad398efecda67f4cc14bd96b5119af64e66271e4d3e02e37207caf930984f1ba92bc11876f3cd7e2591b5707037c2c3928cf3bc11eaab48a0b1a212234bee34267d0e571008ba5d0ef4e2193958960fa0096610bebcb99f0d6e6b4c1a43e59977bafded2010aab2cd2efbe0bf14ebee1df516d8fa4feb97b3024a7548952d57181aebea043a6f76db93168e5920dfe8413d9b517a2b5ee030ae27753b7fbf7a5a4a29b405ac8c1143fe59217a207abe9c0dbcac45f40be349c26068b7cf03a6061d1f5bfa38ea1249798b943f4247fcf24a45103324d320165887ecdfc27fea526fa0b36b63ce86aed4ad9b6665b40879c3d52a24aeec4e569938c39e286ee77a9fb3a060b97cfd3413f554a34f6edf329f02e223b245e4eb82333708d9ee2adce21aac033133f5bd199e9f196358ae56051688be29646cca68281b7752606ea584883329125f4390f9066e3801bd8a414d48efe2e34e15fe7804aa0c856c6cb8f19c7decbdbbcc1d53c06afeae6fcfec001876cc99e5322aafbc49b9d6f5d27b29ae62983a99ba960dc90a0b0be8729c60b4bb0b3a488600707a437bde31d435bc944f4c67d61ed6158c9e52ab5d774c7b23e0cb623d6fcb78e93bb2a55c3e672432561d2ae0b45ca6a88296c18b8695113eff4cc63fd5d607edb4266ce011f11a0baf8fa934336e8023f5c3128ab651e6b7c1f989032e6296380d70c86cee8eccd446b2566f9268dd428d402ea8cf0c457f21d370d3639aabbd2670bae538c11d16e47a0453252e3f6ab1e8c315652074308d50fe02b7692e2ae1184de7213971f4cb31b4654972499b44941d48532020c7673e7cc39ca798657ddf0c1ed411f770d469bb500e93943243cf2a802cae441563a9371097975ccad76e21d9751828dd58375a7d27b47114b839f96b4c4307aa18dd9440968317fb5d933319047f32907cf88e3375e68cfc003c25c3a657d676c0876bc0bca412e0538d7872b05fdc7deb3c5b41f3069589540ccdbb94fab0ca8b49a45fba28d58250d8bfc148cfd2c92e458eb31368f46f165611b315cebf81bd1e043b0c82e80dc18411fabd3479d1c193bf6a9405ae1135ac56d7d5a1110e6aa0a2a986de79e852625b1ef98b2c72e27f457b64756bd47a94a06e04c6ba8de72310552c61e8d611cbaf792622031001c962e498e90fbdc6b0b459fd65eea3bd67840dfb51416768171d11069c9ebbc9e753989142a43ed052b191134fc2c3f0e990b740426886197268a9e97c12fe604dbd69721fc8cf1a8f51aa08d689a4a04c96e3978d6db062fdc9dd2f20cd93a9e26935832f91efea94793e350ad76cf5154c558b80985353e040a90f6c894c8cf04ed961e170271bb694536b9232b02c0a872ec0c99f61aaea1e7298d959c1b94c362ed48aff9e908d865c5cf192e984a9ae1a88cbcb4a55b71e5b82f17029af27b58947213d45214c2cef0d2041e46da641ac631ab40ad546a9947b92162bc66778ad42e1020dded8386b5a50031629b484bd0768108ca73a6c9bd0c1596f8eb6a39f2ce3e221ddd1ed7e430b5f7a6c56fa809ede8b2811d175da90236d4579cd417be58d8b7dd224bfe8752c45faef94fcd0c406d6945004c09ec8e05bfad81c6404ffe1b371785d7379583bffd063064659384b64730f0e24c46854ff32843cee9ea5ad22f88d4a570f3b1eece6359c6993ef1f65f84d7607f6bb6da4c3561ee1d0b67d9ce55d65fe7488244056f4f601bf1df3a53385f8a9469e80cda83395c70ce2d9372edec2ee4fad635d3bc5d0f7c193467903d7f9d148d28f2acac22fdeb0b8a4fc67a58159259f2336bb193df1fb90a343a7ea287cad0c141619dc8f5ac8ce45211c451a39b33438882e60d9c50fadd45867cd1ebcfa148f0af375f77774b052a418c26f07e4202c2418fdd28823e5583e30f74bf5508a36fd14ba3a2eb8ba498bfdad9df668cd871d90c246f41380d94936ed6fc862066fe5c4c13c570fcc0c67fbe04c93049de9c746a990e04191d46467e2d24733641863c732a6bf369117cd77f2f317b0f120d4f9557274bb6ab2e0f7fff9abb74c710c6e2ce5b1e183e5af5ec915864a80131e17d5166b371ef26acfbcf4591401a19425ea7cf9864be12a766afb1a8dbd2ee1d14a14dd937daea17a5b63e9ae6c50114a6221dba7b876e84a72645d2320050abda39f798d295944951fdab52cdbf259639a861609ff594f54b20360c3780ff0f3666471942b2ab54c979568ca00358528f356e350fae4f443cf0484ac65c9bae1586235924ac98e63c66eea9f0ac623bb81f89b3b113e364a7a36826afac4d93501345caf1d2847caa06aea53ef00c4c8c9f58e727a7b5c097d4ec92bacb4689c74c210d8f132f8363002f7a39c90ef51bb7cf002b22bc06659d427fbf5647164f6cde4b9ca901b680b970a93ed4394c12f1caa60f8d5daf771169689ec5f0470564af43956c0e0138ea6391b3e5f250e9fa456a228fd02153f1ca04aea702236d866141c6eff9435a320c1565af65124c9c09d058330913c3ac4de6e9d81e3fc7cd62a4c4e101cd9458fd4f3de4deff3425aed85b440e1108a498ed76418ce0b3f85628b15495589a63c3c1e7f8ea882c3833d731037164f23e26976d9fdee5917b8dda4fcc95a65af1cd7ac81f9771f3e03e8632046963e9f6d28c567e90e8cb4a890e9d6ad808d0c88441b3105269634908b8caddb474761bd679da27682a06b86c57c60dc13b233dea17c20a3fc2f00177940045ec790459713e143872c86dd60a3b911cc93c5a2fe65d8c9e407e525fcb678816186daf5e32c84de78a2854dba6e00b1cf93709363685f11c29b58604784372104f63e159be38b3cb36a1007aa4e0ed586ca495d27daa861250e89473874969c0a67ff0682da74dc9bc6f376d35961548f4d351f65173747fa8cb6573ded4f3cca2700e27ebc87cbd695dc4468211e93b8b66657cd270882c207179fdf626b2b925549ee1605b457c05d3b8ade92a7c62d12c267ba85e2df574a8ae91bb3d295c86492f43e4a6843841678c09bf6ca0ecb5792b0f099a1dd290b299d16a940bf783e7245b0bb34674d9d016544868315043be87ab8b662ad418c1832b1199c5ae8eb501f927f361badb8b0eb39eb1a555b8a4647afd2853764042fa715a8de634f2a45447c5e2fe26c3a52a06f7fbda153f3ad0385815331837572d736defec97229aee16c60426ee9f422ae355f95c450533640209a8fc7a7d5f3d7e6043d8948f1b1aee8b2e31074954bb43296fb0a7f56b1e4c77bb79494c82a4e77dff9d394022d210716c5bbca84582ecc90250418e769f774c866f941c7a35128216c2ae08eb66c797205253ad134d221a720e95dc0b1042f76546cd9ddca63d567560ba361ef676ece22d095b5a8513953c41f9e4afaab1780906483d331d8ee1b63a56715e790ae65d08315b76f997aec8aecf85f5512bcc2148fce9578e5fdcd0459bdab21640ba87f27e67e4c95336ef4baec68c2d49d41d39faf9b18e3b43085f5031c3a2baba488b6cfa75a2eaa30cd907556592c9cf581f91d4c75c4ca6d8664ae881b99e3af53acc8a2d56738c55cbf6b06208fb8795ecae4aeb91e014ebfe79b84938f6378db2bcebca4d497754484aa586d96548ee9dc795eb90712ca7fa93e1b5923ff6c58bfafe171cff535a1e4763e4b99050032267983c4f1423bffaa4934ca33a78af7557ae6b36a3729849bab660708c73bb65bef598cf86d96dd368dfedd838c675b15a28e7bab2f3f16b0aa3b754172868c1c75e5e9b69a9f7c1a516dbe04689054c71630c55e2af3593903cde53bcdc45450d99234c9dfa3b0a5ccedf831915e8c557b42bb0a2972c2fc4637e53af74c28f5b27bdc88ecc8a3d1628dbe7bf8ca4ec25d648d1140d17e2ae4fcc45c3a41bd3cc9309c78e42a9c09f2ce6d7f588fdd09854a5e022d02d59150ae292849e854b8c286e7476ac684cc0288409e4727f64907419d160bb010190a649b3eb5f414ce2f826cf0302fd6277ce790527049a5d19d75eb8b256c34fc00d30b94891852fcffca141709ba6e56f61afbf9730d91521c9e4d135dbf983c5dde369fa6324d61883bc168597d82f9e998a6203be620cd6ddd6ec0d21ef8bfe1c524b32b1bb1acc3e266a47f1469d9f1259ca8f2c93a1d271369c68508263577430439c253b4f45f4723d71a270dfa16eba895f76d8dfdca250d4efdb204899ae90aef66ce5f005e637e93a0bda941fdaf2d9b01f4f99a712619355354cfc68c0007f07ddc7470f38700980b8bcdc75b31a2681c004137099fcd444d0c9287923c08827e229ff6dee6b07ab6c7e5c71f9cb8494678fe02f6d8121e7a8a4aba7a87b56df01d9fe17ff6cf895d518fcbe16b5e23fa2f95c223c58762679f42062288509b40e38577ddfa83abe1e1455b38cc466b245a3fe54477f07d1990fb3b0fb2be91bbaf9c147652f12e16e3f87bb749eb91661d6228ad9cddf804852f266072290ccce9702810012d978129dab0569d6d679376244d118377475f3108d3c1633cc10683e23add21d1c588e105bc473e2f2b84a60e9dd5c589eac45432baa7d2b91c6d581dc20e7d2136a09bdaf844f6861cfccb34c6b312762c52b4c6d6a00d34d2f655c3535cbd6cda6fcf9c06689b39e5bd0886ece972a1ce46acd38e3a28c0df53253836a7b11816b43f74634356162db5f672a1dcb5df9f32b03293d6e985ed4a441b7c4d559ce79c331484629482456b17b80699320d2f7b239e906fab83222fa5a23d165d6255dbe7d341a1bb9978d5e836ea34f963aba49b2af716f1df5a4f411e149bfe17bc99c2a715bd40ceff31a15cf8d03404653eb455a19c5f53afa832ed894b041983841a9eb98e10a0162043bb15049965883de572a40b87cd37e6bd21bf83138457185a715011a5dc6acaa9e6a075b718c421aaffcf8eac26a38a53e867a46a97e931f4b981603b181022e66208ab6e2662bab70be4d90b49ea048be769d66127b93881faec9b8696ca5eaa14dbba511079cfe47aa8e4b350199c8edd910c69ed62867e3c95038dfcdf9743c35cccf915f825295670787b14e0737a1454fcd42118a8e7df8fa9efe58674f27bb4db8358cf04bb69c16f27207f888d893be4b5b08e4b021b60020bd9ff326992f28f211cc49e468c4e7e53fbf708cd39bb0cad26169a43d092a40045bd147ebd50eaa2da3e5b7fd71d8e6688caea0048aa411e09c653b5bb9664086b8ded20bea1572a7c49533dee8e72ed657b28f387d6b64dd74aeeb5c88f1dd058c991128be58fc37e12490cc0c787dd2833bb4350e436544e1d4ae5c967b8b3caf42680833b17d5d360841ade6021154606a6f7bcb5f61a190208a5ccb452be60ffc92faeed4dc89578978fc8ced8d17bb718bb81b483725cce24f093e375456a19729c7e788f6e832aa3e9bf9702f92475a1341f7d4ada17b1a4340b4b180cb04382f6757f0f07005432a595f735faeb518798e4a7843b1e33589ab8c3f18acdc2f0484e6ea0eeccc324d4c9aa95a6da928ca68a2af3ae79462bb5ce3c068962bb9936dcbf0eb296e320b9b3507b0363023192ec0ffcc0760883bb25c2b5e9fac810c4ade8f41c2047e2dd0c1ecb152bf9afb37b6c11c28bbf7cb4c42a848e190d064bcbd247c5518785f173bb3630ac352f0bb95002991840ad7fa73e4df4dae99ff4f8d41b27017cc7edd1b0b9b923d90ac480c9d5744837c3576bf3a25e5422cf05effea80c1a58ddf1cc332dd85f81a32655812414b659ede1c5e838984bfe4f4a41a35450935cf0efd58055186329da8bc2a3d4e1f8392f991e7777cb29c892047314ccf386f45a0564a2b05a33347e9ab0f1a71c62aafb15ad1507fc0621b573f843d8ec24994c7cf4009757e7d9a0dde30c7978f73c0cf7c92b62a803e969ac5da746989869125473cff6df5ee4ca2874c0810b58add8d9a88a38c96aa73ac3dcab3c4389caf7fdc1ed78a5c1318c433d3bd15bce114ed7099f91db9853e71bb46af0c62825f9ae7c5c9bc6fc0c2db6d884b33b6e87dab710cc43597ddfc2691b7981e7ec8e0b396dac071f089d6aac5554aa08fd0414b693d04cba189eb389a11cd86253b306db4282c80af1baf733f9ce9db271a8f6cea39df380a3b99626e5e9faa8d9fdbad6eda925ba32e295de1d6faecdafca07ce45a3844e81eab5022e0eb2f5a814eb144286ae4e8f257809778d4e6892bdc8f0f41d89af03efb064f5a3d33dc6e1fadb05dde19428dfee9cdf22c0f3addbde95b11f462267e878a2e5499a6416c1c406a40ee85347fb21b792df72980126a33de58660e0bdcc18e155a875ae04a89cb7beba0a7de6eb6ace49d30eb8883116505ee182150e298c9430e040658a18ed9836b90ebfd2a3cf20cb28bd086eede4f447cfdf10ca6209baad91ac0aee09d16cb3f65f87dbd3f27265f94b6785dd700326055bcb2da07ddb9a7f7555d9b11bdba8039ff89603c98505a23c484ef8cecd2d226d4138858813932e189c9aa0849b98ab91d4581c35a70398a7d73e2d9802ae342d789319d3b47780d8e619643f68bc7496717de502a8c09793d44adcd3e434442880a11dfa6285de84e66b7303e5f88382f50512cd98099fd3ccab6bfc14717300c28da30d32058171dbd64c34d5f4a2d8080ae696487ac2aabb280c1a536944c9e319042f3432ef4efae7a444444933f489bd33489ab44f3b60b6ed315dd230743485a384569ecd887e69450514551b90c72c6c29bde8ec67e65ef1caf1eb9a4f98460e8b694169ab155be032850e2916e9357cc912923167a02a9655b5b401bbd8586a93bb5b702db0aaf5c866950718f3482ff54b4035fca86a1b8b4620afab252b773de9507b4db14463090f636da4c8d672fabcd11602cac68630f3a9e06b1d95f9be63c5eb8fbff2b4dd50329bd742a18c558c12a807da00f76a8a7a07ee8fdcebc25a1589086e32b78df6063ffae4a3ca1a200320f9c13e443aa0a467ee00b63d83310ddc0b9163594578c5e6402cd08f3b5f0ea22a27052791d74cd383ac1974e596868efbd8e525562a591c72ad733c93b08fbf3950e8bf165a6c5a71ef5edbb6a7f57aed0515cd91d6bb58ebd215d5756ba721d3396b703ccdea008e5d1e7f4c4593651ba99cf76ebc47a5e5e69a4447b9f8759cdf09d79f658b9c5a194a3112691b4cde534d6d597114b66311e9cdeb53118a59b3c8b1cce9e6280e6dcc3b2d464d056e7ec09e29e842dd9bfa9ce860f503b360df9210f0bf1e2ec6186625123a870b6be2320b6d45834bb11807c332b6bf2121dd113f91bde199cac277a5bed1d1ff8e21779bcf98a609a8dbb6b72c432cfbe4bdc7e56a5676223bb5e641fdacf100e12404d23aaaf0cc68a6e2c0071b8e456460e7483a443779b4238f06670155043ea144e88dc4b83cdaee1ed82dc29ec0b038de5817eb8f8e9f96ce31f187cffaf098e0193f73f19e1b8c2ef819b7f32a92c6f7dbd84972e31519474471a1f29bc494b87ad499baae0f14663a8939775f201fb7987404436d6fb925d1b69125a3a3132c56ff0007e3cf9b705f80380037fdbd2a0410ce959cb0f97c44879b1e51e253f39aa577eaafaa867933d88af47042dcd9c3ca34eecce3d010e4cb2e5d79cbe58fcede2ab578cc38cb4386574c490bc013034cae2c5eca94fc57d89d5c064981cd1330cfe66e2c6e3a885857984f2edc7da3718035f618454bc0795502fc7128195dec666e37872cf791c667ac2fe72609496a4c7f47bcb1688c00aba52f7abbfac408d4b09d7f605c4bc1c132ad3ea298d2544d1a8526100e073250309510747c442c688a801a4a690502b3336d439998021c3df7616a989651408c38327f58922b7fa7636c691ce2652782478bf3db6d626d8e7679b1b8ff3c33c0346faaea79212a8f74e8049d2d13be13ce83e7fbfce5acd37c13d6e1ad9a1aeba99ca288ce3ccc7d8cfdcf7974de778072e6820c3e8fc56607e811ad66cdda3892dfd745a18e2fdb4b751fa61a04071ad2441e95c4d31f186c9189d9fd22aabcacd0e4f3725f47ab82da9ebc9ad645dc7f6159db397e470c380258719042c39d430ec192b616fdae12101130e0d0998769ee4b257ba95a0efc1ad245dd7fe63482f71f8400089e329d7209ae180d287532e937be278caf5e67488966a1d0e066db3e90f15a00ae0aa4ee62a678d8fa452fb71c96b7f62d3fc765a751abfd83cbb1d96c788b596fa35ab254bd5ad3e4fed25ef78722f59df937b09ba9efd2f3a672fc9a10601480f31084872a861e0352661efc4210301a60e1b0838753ee466afb82fa1dbd37d09bddefee7905eea90818052e753ae41348301244e875c26b7c4f194abce71883b751d625f4f3b7058e34171f638ea11f0094804e06007f9700f4459eb78e5b43ef1617239ae7a8d7f6c9edc0ebddac5e680d62ab78359142874ab4f08dbf3b70eb6de5355929482745de8295da52b552b39ae52be7bf23af891128283789d2650d75de51995d7c19157670183664aa7e4a02467a58637766bc98970f502c1633eafc8dc49bc5cb8bc0df7434fe9a9d26094a60f8e8fb250a1ad7e73b2a60613b03994d398ef4fd028495229613ec1197c2a85557b94707028bc067801a365c0d45473ce2c9ddf462ca1659d98c3e40a548c5d7f72d2c5be8fb3ab5011fc1966b1898a54769dd986f8ff2aca081203543ce37028fa926acdf2f50de801cbf29dd31e9a80dd16c63a13384ddc06f0a457535fdb93b4cc2975474fc2d1716617f2a406c7802ad8abea0ebec0f0de269a9e5778699e987df18def95b2e048d70af8391ce7568d66de008dae6fcff5935dd7dd2d6487fa69398cdb9de74fb9155f7af5d63002f51a294ee19503730b3ca99a7d8ff3a455b7c03d568ce99b8741dc42f661e6525c8c7264a114cb99dd6353d7ac1899883a9cd6fa2997b6893911893a3ad3c46923ac85b64a8cb99c94f27d956081833a4eec52198a3cd56de042981eab8e10fdbd3916882fb4cd2788b099024224911aa68ee6280e9cea49e4d07c4165a7fa469a92377633eb590a8663bde3b8a95bc369ea2b9babe9834395a824a0db1f4f027a3e42b61c19b0ad186907349e02758d961a4c6136c9492efd84711501e1689476df56b6ca16053bd006eb0d9028e74792cd186cb9542b4090c72c2bce9525a5547dc779ae1c047aefd32d2d084c894df6de6b8325e978b035d53cf09c1ff3a4208a520c9a11882338ce70ab30398796f761f00fcec4595d269524c566f2e493a12823e13d661da5c7b504cd1d7976c7b5c82a91f6d16b863841e527b8372b1e67871b62200a55a5871b6552928e02aceb43037e9e0d62f0298c09bb15c0f1444084a2bceac056e5d64f3791dff0dbd807dfe5621c60f35f164b453f64e68f6aaabfa40ae2615fb0393f399436ebf6a8521ef178c14dc8a6a6145d6d4057b7ee14b02208d1c28b3a40b339fb46f03ff5f74b56b0025ebf074fe00e861b3ec6c52082cde8156a7ee7a95f1a8970a9d227c0b321054275c1ea075e14fd9a5458a8f1795a5ba092ba6ff4651890a44704fcb9b4e83136f5aaed8349c8f68eb6daaf5dd058b7f7d82e0a605399a3dbe28ead29780fcdceacafd7c38f99a72cff52b2d664a0878ec1c902a153e9c63dfabd0eb8747e503272d62c19c7134ba124e8ce4171fcec835b7de6134fe7fa20a0f80842a645b48170239e49220ff7360fbfc96bf44b430802205993d97090d25dc4295710ca03d282c02d95f4a6f46118e0249d98922d0ad1bec5fef76c70a4afde5d9914ad18470dde8b65cd00391dae800628ed85f2ea2b5a0592174fc5315c8a00a3a338fdda105626784fe6242bc39c1ecd8eaf410419449e0fb10568894d9805a3da916907aee8b549702f2edb78b92d06803b40b10ab30888b48c7253db271489196c1b7c716128446b879bc8f7899a21027322e8749ebdcd64a41a9c10c7b4c512c046f0efc20ef2ec6f26024e5511c5f3a3467130a37a2ce087c104fe1314d8e348be7e74b0cfe9ac811ee4b07e57bb216e915d0df4d65f60ca9018d67c496c84fc17fd4b1587befe237a4ce1862dcdebdc089c983785734bfdc555893d75ab535f83a06cecb1c3526e86fefda7c9b34af529b3da845b54a07af5c624395c9bc05204fc6513ca6f31df52a94326f0db73ec8590b406533cd99bcad2f5ec0eac12bfd7e9e48655422f710cd436f640d45e47d68a830d18a9cce69dff93496996b1c924d79b1953c187b72d501d5330333e043e6fb1feb1fa70bbd96f6a50fe90a1a6c755681348b4b10ac00d9656ea17a2864403418ac1a6759c266b93656c9d9c5e4dcbc8a6d352714315c926c2a10d3e9620cf73dc023cca1283761aca5f6cb9fad5d74eeac55030187bf5a0a1915ee62893a0598134abca2da2be2e05a64677c64fe182533869671e0494759d434530676631071f968b29698d3984eb10f9d1efea6610f0d778b0468d092c07d6a6840d94e5f6a713bf093ae7b8408c5c7380d7938e31a5758c287ad89e9b55c10cdd0cc4aeda07c1b44cc2cd60f6ede78c2347b3d538f0ca0313312853bc06e05c5497ed2e7690508844a7a76cb3cda7d2920d0efce8f3d333f4320bb376420522d39c778d4d6dabf1dbda056a1a31ff4bb14204f9928f60f9222300595cd5f1425b2fd04f14fafe790f7d21aa5aa3715a46b417def70891a0f0089b434aa64c07c83f1d630bdcfb101da86aa17bc6df96a66259b25e4144645cf120e2bc8724702ff41d495e672fd610078ebb9fe1eb86d9a99c846978d916310947e12c97e1effa477272b172fa425e332858ed3a4d723641d938955acad92aaac4315170a00f2de39f5d9ac16cd3329beca0f8a6f0fbfda12bf766ba978302dd71493b30172dd8d95c32e42f4d1e4a9f58818d63ac0bbde8a8244952b201ed125dbdd84f3d001e8a899464e883a89cff3c4b4ced47b13a476f2dbf4f16ea33e56681c1b87aa5e77eda6b29c9cc3bb8127fab6431c072118f5065b30113d36f02d4cc59be8578e802b2ae779cdd3abc0bb1908d0a5bdb8fa5b7f56e2cf6f6694f189c809d38424d49b7fe61b9bb078ab76d21662c08ec5233f3a791d6489631a3ca384310a992896b89e541b53249fab1bb150d3cdb1849b770536363939f1c1424e5d44e0b61a8329d96563458b3a54f2e4748081d1ae280a8a653d89b47fe57b1590000f69acd5e2245a1ed3e5b5fa4403d43388927828bc9b4c97097529d988df7e4756f4e84bc518e9792a3ffd80dee42cb436a1dce0e61e34bccc72e5279696abca180bf21b4a91978ee85469e7d39662d0f913f016333fa42c3686f6cd1c492685740847da1a1150e6df295d8269dca0aecef36e148ab481efe44c42dfc0d593795fc51101d8a8620f543d2d6367bfe7433193273932d54d1482d878a860990c22df5b9145f42d327626be8ce743ed42d75c362921fe463439ef84169c487a33e7ff2c1ec843a22ba8c235aa27444d791c6056bee1e8915b9bb7c9d0c8220fee611e1dd67e5c588781c4398ad626078f004719d02a71c23d2fbc61c5609eb9121acbe5dcd2fe37fcf03d8eb338e3f4b3d5f057e6d6a5d7e77d29390b69534acd8fd4eba25c32c4802b92d6ff8719f9442c13d91122b0146277cb625f6c235dde011036326fc20a8d96596c78e0aa1a59df0a4f38e3aac190bb496d3566b1ea1711763ccb9fc5074aa13217ead47c4a9bb16e83e50391d239102021183c1b11d5221e22bed1191e39b72f2b7de6ef2f661bfc3a155f491004a423f7255ac621176bbc047d30b1aa899965981d8a9be42bcf70d0298a591f97c14010a448a2044d882eb31137c8d85a104667fd1956b10daf5a213237f810277208dac21205a040be420c2f7afb8a1cb0b5a2c216a15ee8b1e12af75a00c989b0213d54b966ca38c7f149c22ec4a3cf3dba9d5f1086b48c7eba0ee50130998a580b3b75398454fba3dd53a0d71e2056f5b272d020e1720119d4dd4a57fc13fd0f3def7f42c42bc3429144498bd126ae10024ae5cd3ad47bd688f2e17b78d18bc4c43babcbb5b66bc2ce56af1311cbe9fb7203a839b765fc6571a6ce3185805619d7024da8a4c6ddd30c97dc1f5bbfcf1bf188b7465fcf1e93a82f774a5cac325cb815ec9901b65d431b915c980836501f5cacc915d841564fd7d80dfc22746abb5db2aa4f900db2abc0406358413c7f754714fe960b8c4d2913fbc842b208a808a6fe6b4680aaa88b50698d2210f661e8fda379bb90fd0017d9c89eb55955f903fe48158985d4701b9f8bb42627110f69a566217ef4142742078588ea9ef4d21ad92b79a9f74d6bff821beaf6396fc54410a9daed76f8b15934303ccce69f225244f22c7d951a58cde2034300ac0aa829a4b00f98caad291807b035dbc6cd3b190fe8430d8f3c2f0bbfcc7d2f4ed9e5c0e9151ca83a8ba9810a0068d347b676062431972c5bf839287fa9facd4c41bde0b16534ff85409ec4b24b2253fede7f6f732498f6b5e9418856bcd9d7493c1f55190a7eca4a3059ac7d1ac2e83797be5205b57a977f4489032d7997284a5fa566aa0c020769aa02016f6381cd27eb563cfc15f9b9d10b05ff894d249054b438170b893fa4418133725041985233902b6557dd6de87dbbb47ecb32a2917e05dff53a4786495ccde27e21c3960c33b253154f41e944f056557d2d670c681d96972eaad5ad96196553e0b6f3818c8e550668bb086328c7a3bf941eaf6c7e4e35ff580b4c886e6ffa13fd2671364c4eba63d1de7761cc29f70a247ca1e896444f2ddeb6dc3bbd8cda0e76126cf143229771d5029b722f0910638b3a15cd42f7a9098735e8f9deba723e75ea43579cd64ac3dec0cccace96256b1732e06684707faf656606b19cc97adfef6d44e81828310d9ffbda10143aa1e2462935f2cbc56a4c12b6cab67880b255e86a6dbd5b5401875a1899a9949ab0178606de84603d141807802c28d37b5ab53a48ac74fed7f967e06e806e91bff43766dfc299f858f6fb21c577b8836ef40826e10e747cac2a92f585d31b076a7f3a7292d3744ca3eeb85b4f644c83b44e172837bce941736348745a542c6fe336e7aa4b2a9b38d56f48ba8d5ca422fa107eb62b5df4f2a240994692f9f68b389f663bf98701a8fcbcdc6bde474603092c07af7b3c9f61a16f5be1d7e5205d4072680fe87b57695c1e07ff76f570fca2ddbf37be0bef3746246361e7ba7527344bca20aeeaa014e86e47628095b8a067204e54b761913810ca9e6a9a4ca0d30a903ed6ebd31fb73f7cd0cac6eedcef0bc94f02ef6aa36e00f2878099c04f00d6b85318d3b37dc28c76f44ad5c7a09c8fd1ad282318c788faf9d021b516ed5d12cac961abfba2f741b66b651006195d9b491854a30861b017fc47415ba5a65a3ac0a93fc0abc07cb51a9b59554a855e1746dab4ade0b940780b66086d20d5753e341fedcd2bee707fcf015a07afb81f2466e4a3a7b935948fa0449f2a81d7f6614b8b6e0fbdf211db34f84a478e9b0dd9d11e519211ac3f4e36137b41cc46d433b295cc0d8b26baafadddf1a1fe7f958e38d4a1d6977cab072bfef5b2cc39e65042c887a93bf5bb90e338aeff6f4b5652f7f5834842864da5f7f5b8220ca46ff97f3656a709eff10a73c6ad095bd7c6fd92532f15ed30f1a2283dde770779457c764d4c379302329737c3fbe70023caf8a4aadbebeb439b7d8888512c15c03aea5357a5522c867903f501dd75250081ff625a1e6ca533843983c0a058725739f6686d396b9040d8e319402e0809b28653b9c8e33eabb4a602f868a1c18bfdb6e4045d9d65efbab30a0a348ae487e717b9f0dce14f82c2270cb10880b1add6ee807230479e3e5d06405cbb6bfc8b66e763c94ec48e72e1f16d35abf4844d30facbc40ad8b66bd3b258bb9a26e8d11e87bcd8abd70e836f8331d57b1505b3d030b91bf75959f4c42977a71f3d910fea312369a68d213d3703a7f858f0401d099c1bfbfa913efedfed26c992d91673b6d1145ffb5dfea22d4d6e7a260c8a6332cdfbbce84cbdd5994bc23a8cf6711ee8e646cd6cdb85b3e81a10530fecd8b8347706cec12150903c786eac53140be9d22b445dd8cd980b41213ebd23aee9d3bdb6e04aa0a267b18add34a02f9765985c651c3f9414f55f7f46fe594767c43a3fbf86996359074fe6928bd088e4da3be8ad1ca2cc9529ed040f43fe54adb50cb305bf3565ad24a95323a8861a82e280230ffb94bd22d3238af55f55391101e426446f34ef88dc948f4e4d2ecfdf6902ab66c97b06f1f338d5e98656a6b90be74eeebfea2c845cfaa74181b5c144d0a60e29c70d389bdf9d916e40bcf7f89e7041d289026c887aa464e22426d335e53c8a5366e449ad81889347dbba47ceebfcf8f03f5bfa3cfd09a106df8b9dc6fc45721112033a43d5e39df4abd90dd53cbfbd1460aa1dc54ea6de517837878adb2092f2ce3551efa35c0109b3f253ad81fd99168dd519826401b23a3b391aa6b420653249a6ed8f936e97cc82b9881c338178a6e877fe0b34c8e6ce1a136aab5d6517a03e8f478f4b96517908b00684b20ce4ec196c799b0d71810bbd5c3fcb9e76991d0fb0f1e38d10c9e6d81c499be2b0dfadd08a972128e127b5ab7c0423abb230945e470fd1d71b99376a5ae5f5c5f1ac5712e0a0024e4503f0637982d58c581843672f111cead1bf35d7819f6ec04e02fed18b6f4806f473919a2168fe5e38542f18a4e4680f335f3d023d8f985841bd4cdc87af0e277b69824d5a4083524df900f1322a8b8361eeba075ef4eeeaab3080616aee61c916c3f89a2dd29f4b3b29032c91e1755e5c5af50cc0ac35c3fd453d407485c739bcc13d4fe074c6aaa9ba30f78295d9f12525b6467698eb240e608909481ce9f90b9d4ad37296f95fc8cf16271ce5c46cf1d204133af8a3b642ec46513721625a36c65257e79ab987c3e01345c0b9dc0fd785c7dab21b809df593b8727bcb3ec64205c784b3f929b2c1a53bf29b3638e73a369f5cc6f3c8cb1048773b362b486d25f9de187f78ae82ceaa3052bb91abd554363eea4eee76e6488dae8f7200c50bb77614730137ade5c6af798bfc64f29d0965b875a35befb115be1e7cb9929d803decc20b850ff295eb023b59482687978f9ec56b234582eb24ba9f442c206db0773225a5aa1fdac8a45ac9148c47bba75070387846011402181060b1df71292b8e8d28578cf34a7763c238c5dc9edc4ce99db1a89ba9859e727fa408a83cc6c5cb8fd4b35cfd934846eebcd1c325d136d41aacbea3ae0ba90b7f9b98f960e87eb59c257885057056508082d1a23943934c248aea85b615426222015f37c2ce821b296d08f7e5d7335665e205c763c565dd3a404b4206f5374ffcc77d0ddc82453119b216cf7d4b084d5bd726b0051aa8c7162084115727e6df797a83b4fd12b053be0598eb8782663c28b8c6c814239926455aaf3085129e5923f6104761af8eecfecebf441b0e8dfbf7930b4c4fe8da421eee2b78ab8bf421ef906cd13d30db1a3b1679d9adaaa0c5ebb25c17d4b053eace3251f7e18ab7e700abc431c66f5bc8e6b7f201930581d95217029c14fc284aaffd449d474b796af3acae4550300e87df97adb625c46c88b7e22df06c41012861df28ca91528def035801327c45effc97c7d95383334ad8d42b288a0b95da07fe161f670b55a5f8674b1ceabcfd86f483f895405e22b4d072674b22624d17fbba22f454f36f3369b90d9e3ccc68321a5a45eee0cac8d32e1d3794e5971e5e974f641981bd66f246018f1cb77b7bfe18c5a1d2e6adef525a8ff24d45d9371a9491e1f840879156c0c1dcab0fbe2d297f16a7edf0932e1eac76cb5b72b6d37ea76f50ee82493500e419ea454ded2a3662e00b7601452236ddfa75d0943afa01fe3e9ca0969de2e17fcac6e8c785e234b8b4e0a4b27961600fae1450917d348ef6ffb66a945e509050371a00089a56187881f20fc19185649c1ba07e01230fca2850d3e500968e016a96d5559529a4a0cd16d29c783d685e8701e462805e90713ce55d096fe39eb1cedcb4bc03031dc2f6acf2b4590e322850c6e40db9f45722fa49dc830cee00f3080693493913ee30e38634fe6211a11144ec54ac31042f348fa70391180635a0ba5680b08fee13a6e4974241518c66e6579551b013d690c6ffa59a0bce59e78fb148cda79208aeff706a1cdd00fe96c8f7041365cb1054a690f2608ad0f7cfdd16b9d685cacad9dbcbffb93d8dd52711ed52b22f19fd16d26ca07ee19697102b1b49032039f0f170076d47be20ba494247dab0eb48c05d4eaaee37aed7aa0392c02eed9cf67b2c549765846ebf4e1aa1ad41709022265182808f4838244c3022cb351661d2e0760edf885d4ba468cb00bf9efb049b629e304a9c67c40f7d3572c52da8366f3ea780570648b7065f8ac7d13b65239d52a163fe1caad9a3df5d3c2fe8fef46e531ea03d99b3d7f743fc7fdeed9fc192e4d7947d2573d7018d3df9043904d8c23e48ddf937b6b9945ec6d90b39cbfb183d07417b5f72022020d6b0112f2c9c1316ead555d1cebf36dc81132d0f0c7e7c115ac9775da9de10a6d365c95138b159132c27326e919c3d3f46261180768b2ed57e72555dd31e24b7d431f71246761f0a0462b4d9a61c2e140f51627c94401d30ca24365efc42529ebd1cf06913112180ddac8503eff5c58ea73c6c1991da5538740687ac726674ec0b45ed0100956ecbf53d626ebba92211570be82ec941227f549c28205e6a75ffed55ef3b1753804317ad514b03188a525e412dfb88786b9337631be5fe0ee6269d37384912cb147097bccbf5bd9a35d21fe61da06d03fe93094bf5c9b26ba92659ed10ff79f99a0eb43d8b4f9a65ff8f467707d546d4eb03c77bb8a8267c358a30cc1a3d49a297d7992a35f3c86731be67dbc2bf6e18078e0a7dada1dc3da159178557deff998c35919617b9ec042776dfe997daa2dfa36bd7625f4d873a6809f410c030463582353e3c54c4c06a17d00e96a8deec05bc1ec8b07e36c711a98a72b4f5d9ffd75d7eb5bb969dff3eb8b533dc9c7624ae21409cf5827c7b45184e39aa5b33d928f8bb1bb34c7d7619ca74ba79b3910c89bf1c23d49572d2a99348e2ae588a4546b18474f16c00af8c163d59ddd3ea2b568e29a5527ffc051bba6afd653d5a0d0e605dcc84a7aeb7803e53c2b3bf8ba4edee735dbe88e4a99272134dc5a89a86583061ebfeae0a039a21e11cb280fefc43ffc5e20bccaf9e20c5fac4ba267c16c03c37cebd61a11e21e98705722aac97fdf162293f4665ff47b37117e10a50d537f0b30920f3ad810b647cca1a71f8847e4d0b32ecbbc963f650eaad1975d5e0fe55012a811ccc89f88a40971782246443c0a32a3362f0e9d55a59ed6543e6f372984eaf03c5f607bc05dd331cf7314942b232b0c3b28cffd076a3bb765b58d4be92efdf3581c4516fb55b4ac4b395bd8d41b57d6e33743921515805556f18cf2ddf79b04b2f08e137fe3d6f76fc07b905d8ffd6d0a5be1f36e87238d71698f510e42b05c8ebe0367d839fd7d47ff35a5806a7d918b3283d9e9eb1190485876b98fc3f9dc129834121a161ec51ea1ed2b72a1c24463c08acc1d66e5c98e984d706f7b60397c20404fae1ddd71fe84c40da509ac6d193266b31c8ed7131a81a2a430c12f22883aa85f150d85388d2f87d60248dacd9ce39b3fef0f6479fab2f3b4650a7ac9b60578327ba38dc0a6ded30b03019143b15320447f1785fa0aca614392d7acbe01759234c8f7c8b1c9e4058fcad60eb85956399daa294e225614b627b552a3b95fafa73ea661733e643604273edeaf17dd8c5d826967fb651ad729abe046a983506a1bbff876e2ea0ee03f9965277e464ac44f64690e346378c8dac38b2e9a121b61183cb13a519b9f784f4ef0b77222c55d4e405a1f3818c4dfb75996f21250b1615ec92d8020cc246b50e02ae0f0f82458b120bd81d6fed4f025e60c9cb237b312dda2aa35fd537e4cf5cd40266fcbf58b19d3c55764b19a08afc68106fdeda2d068c16e0584040b1b66878a566810e28f326e0347875fd0aa832faafaabe1b529c69ace71d6db7eb0585941e1f7cc7574110771a2d03a1fbabe72bc1f13ee9a9cfa6fefae8d916d8774f25a99c3b0ac7bbd5a172e8052b8ae7361890569983160d8ea1ede73f94428f94080429a6bc53ab441c55628597b1a96d45b30f074809956578778ee7c1f50b747af23abb5ebd1837efd3a58b9539a1cef70d119270db90cf79f79851022462d44eb71206ede4a3cf3467fe37c6f8f3664af8aa5b76ee41c13932458990fe38ea98c6b60adc0e1047d9acfd21fc95992b736098ca7ed0f9b7d68cd17ae23b629832692b04bebe8af1a41e6b7da4a53a785ba0972af5cb73fa3399d1c4628d2d6424b63a653d5edacc075c1506aed480f6a5dd94ea6f1060d3beac885934533ce971426064b16df65d38d27b2e99c7809adc109654832aec66319744925b45282415b955f7a421edeeab77b3077207809c4d705ac79a146863f489898bd911c85c92445296430122a847d8a01e023203101d84726aaf7360131bc89888606e2faf9246cc3345384fd8680a50f4c148d2b5640178cc991e009e9e9b8564ceda878b61226f85f45e03ead882e0475c5914038e93ff5c6c7b961abe46b2518a97d80259a62d0de1d08bdecf86861bd3e07df64a2ecba2469c36a70b9e115052606258ca88a2c41b2628de65ea878bd46c9cbd2f1aa03d7ba300b82834a84b9bc0bd84707f3dadf4a4fd09403fcf70b60a181f462b91ceea6fd22d80c68812bb474d44f02cd05245cc37fdce175dc44654ea1b58654368ed3a66e5dbcf874b0b93b91913719f8044ed9227551fbe864a19f84d2f4d4255ef94a813890c89e01e61e4d98f864f77d2cc952a73be1a82ea10d26de5de7770e98351b235c8896e3a22f073c4441947c47272cec2ca634f009c0c6f2bf115dc62587e594e3abeb7539b5189176045724dc1a487eacdbb961c6471b9c1761f8d1d69c750ce7076d3677fa9e6a081ad8cc8a606fa2932e4397298387af1bee339612292eee191acb111e57a116b8a641a3c00d81fa21e47d5500ba084cb3fe549f75c1d2742b74aeef8a9f242136a74181e01209a1853473a69eeea67c2f76c910a2ccfb014b36bd03b7eab7ba2f08377a59ed762f8b339b1168dec1154dc2ee8e0535ebe9de9fda19694c20b416e5cb9b608cb6e7d970001b09a13fb1b7e07887a29b80ea9377ff99aa0e0b7b8bd8cdeb09016cbb03fabf2a89593092b24a07561a134fcf989ed9581363e39238ef00b824421ca38dbd1054359a6e20408de9860e055230d3b77faff9f40e3c42cc18c2887a5b7c458296ba5252f09a9f3cb022b3576c3800fa4488c84df6967bcb2da59449a6510873085408d35ae70e7a0c2dac7205264da639e1bcb425aca8a8a868162d1515d9a5a525252749f6867bc8b8410f2a4125cc659cd7ac737a1fe641a5a45ec9a47ac54ba152e32441eadd68b9992f4561ba5c3a9458b24e76a5b1d67a9f2e451bc9d34bf6aad8a8573cf44a2eb9b5089b5ebb8fa9fcf43e88e4bf1fbef2d2977a25fdc617777a51af647b5c8477c8dec26181849339a36c29e5ec38e79c734e39e79c73ceb965b9d2a79cd3a50a2c4b2957f64a5a2c85ced1bc06dfd13c87968b39f46be3b9a0c624e3b19e6d3c8db9ad1b0f7661d6c28d27e3c9bc66994e3bd6b5e0c24f17e995f48d8cbb65de98ffa83e3a86452c9eb620fc3ed02f8fd02f872cf44ad62e4a49a47198085679c49c5aefe531c4fdeee53faac7e2755d3df331cde3d54314789018dca007bbb8dfadb685c661316e065fc7e32e0549c68dee7decb1b229ec19f7bb7fa366add7c681465c89a3e8661e5d95433ae617b398f524add666b5da0ef3be9a61d4355abde6a5440289241d908be5b64320fcb23bba650881a084d00abe5ea6d671dbc6b83924841af489e305573afc2221a4524aa9e170db6573f1d2212dc23b62643a22cb73abc9969be75613a5b75cc718639d0dab5d25404a297dc372a34b5ee170c18d2e51602bc65d7e4ce3ba8f738cebaa3b21e6a0bc1baf560cc3300cbb1eff7a9fd063ee45a89fe0e58635f35fad95bb54d7c1bc6215ab98df9cb09a699c9ac69938567035efeb388aeef5b8da2ccb36d74e8eea6840390c86a19c613aa1a11d949f3a948772ace350ddbd1cea769aa338ed9479af32cdabf98cfbced174637b74a8e482816579c595e11e524a96d0437aa8825613a3af69240ed8c246102d6c706042c8cced7c7b75cd0c76e36039963feb2ae6cd541584e2b6cf67dbd17eacab35539a45bd8a2360fa4a53506b9c3c4ca3d9cd20e6510cee3795c4207a551473e2349a50ee349a39d663fb441273ecdb4eb60dcd54ba9cb03ce7943ebb1f8af49ce21cccb97ad483ad987ad9387dfba5cdf2b19bcf509860086f1b466e792261321435b03e76d8c38d47a5c6953e984b3e7471441669fcd00320a2b8a9d3730b074aa2d876cfb9d27b666501c70cafbc6c9a9c46155edc50069729b478e287034831c4022e493a2071469719a6182971155ef0900510b41802072cf0010aaf481fdd4a2925d6462fa50b310773b906e7b451b4912e030a5680447a98d23c8a3658da68aa68e466b8df7cd2abb8f447d1260ef19748508dff68929196fb49a47e2825926cd238498d032b9215d64a4f0efde0a6a2c94bd5f82aef4448841bad4900424c72b944104b2045796ef1408d6f2fa83f04aa0f523d6ce843101ab1760ef9d174e22684bd3d1ff6a64e1d9b0c1479b39c234719f74773c89fe6fdf8b0f343879d8c10083fc39c5ae9f9b0cb1ec29af6b567168b99907e5859f33ecd31d769adfbdab521ec27b79c74971eebb59ad376d8b5d3eefb097afed1be9d6ddb54ef631fd2ce9e4f3b9f1c7adfd05b4d6e2e7debb8d35cf382faa56356763ed6f9bd4fe8ad679af65a3d39e7dc389b9f3aeed5e6b16f5d75f93a31eb7c1eebbeeafd047dfb1050fc9ff89b74b809b12f233d21edec1b0f1b6d6d9f70339cb6e068e068e068e06668cbb786f8498fce9792870fbfe5c4e8a94f8f67cb09eb61739f662a2c82e51af6046cfe19c0e639b33032165b6b762fb35fde5ed3e85845412224bd8a4acc9123cf9638b0304229c50d670564283440fab8d35afbede1bfd4f70c37002342260c95acb5813927474a7619ea4c845dd5b1ae061e3bd794a11e91cbf957b83b95d2e92da9bdf17ce5b2c82562cc61666d3ddc11f9d2638eeccdcf06989293d3715aae0f3b0f8132fcd0b3db497d762b346b2786ff648440a39f5ef4be1856b83bd4bfe93242b29f1e10f7d25b429da7fccd7f439005591f6d2218160a0dbc78d58c37ecbe573cb7a238e2d0b8f3b9150593872b4c0ac674a14b666699ba628c91699472de182586c5852e99afc89155cc8c05bc520e81b9ca08c13ebad06337447af21327e354e2c1c38a0b7f642f312a2e8cb6a4c4035ac8bc452888850b64b9000b2850b929e30626c66a6e55aa8d7b70aa2655b57b2366ebf149a56050236c4678a4d71b764659b9d499820e4f8cd9b4d38d1b9b119ecc2f1c1042e87dd263cd304a9ddb7a32f0d2a9ec6e0a9d4eafaac7e368363c6d92559a3d0101765f715631e79c73ce69b768426c504e0a21dcc0167a61ee927bf8e5598cb16a37f5934a711876659336cda935bcb28de7d2628c71d2abc62276f225c4e35b68511b1582a53ccd683508b768db12f7977abe5f37a1078180bd4529b58be604991fe40a6baf0efbbf9ebe95dab454bbbaf8b6fad874b28b9eb8ec745d71b35a3fe6dc4d88beff63160c48c680442ee4347bf9699b76c10358b4f0a83167d52df1689386c72cc39955bba99f94b55546ac535d4ddb8cf0449f7e59568715d2a8a940a457ed416c701bb29427ead593961354c292b223e42286e208233447228b55ac3ac11c775d1e06fc2996ebc2f2818f94d25abbc08b4aac4a2d6890f5aad71391d2287d2932f5bc34c678255d171ad29b7d7dbdd0a032422b57102ea36f14e04d643513f4e8d25fc1abf6681473a8524401e350a65e3535836dda862ab5532cbdba82712819bc6a57328399f8f698c4363be09ceb2a7ae25b09959813a9609b29df54625284144badf7b274299b62f90b8297976289b262692944be348373261d82ab5458f41a5686318922e9557771a15f461719cccccccccc244c5a33ed743b4fc6a6289ba26c8ab229caa6289ba26c8ab249663b5d98d40dcf84a6289ba26c8ab229caa6289ba26c8a49dd50e5f04c90b129caa6289ba26c8ab229ca26150932349e094d513645d9146553944d33343a3c13646c8ab229caa6289b74b8d7146553945953e7c9d81465d6e499d064426c088125cccccccccc5cb870e1c2850b172e1fdc972f5f78d8c15837b63082063158ac1db88445a3021ae46064040046452cb18240c0577e09ab00539c601d590091120c2c9e42c90efb47829fcecc2d285b7c10fc2533f0951dcc63f1951df684d863f8400f3f64218317166ba77a2c22166b87fd13fae97dbc4da000539af8b2c3cedb04505c6c51833668f8f265875da763d3256c944c51105e754e9f93f60f938809f4ad458caa1bc73c46ead131ea95468f2a1c73f2b4104d5d46460e71516e2d927b4c147a357df89bf8550e8cea312773ebd379700fe71dd5a7dbeeb64db5a97ea7cf564161fd87c24fc751fdb9058587a728cda33fb7a0c8f233bdaad5652e99cbe31694193cb7a0fcf02adec10c5f29e6c0b28c6eadf48ea24b75090403d10c32b01ee81301118af0e5a9bf30f4d47b61baf7ec7e2ad10c32c80f868f3dd5fb60b01f844f658444f77cdaa50724f45ffc7ec25ebe391dfa6ffb514f3ed5f9b905a5a86bdfbaea5907df5a0cf3adc33ceb183ae67d98d5b4ec997740cd6a5e3b2d8cab793e9837d6d38e6d198d510779c3e30685e9aa2ddf3b33859f9765b0cc90196ec03245699cf2a38fa5bc74bfe855bfcb2385ab054594bffc021753b99e3ccfd8ee2e2b308cbfbc5f25c65fd7e5da16232c735d5c6e4581e4bffab58290e5c732a785af6abc7cef480fc4275a42da23c31b63ccb8dad2b77f03f8643934aef46e78edfe6c5412e3c727be7ae3d43cdc9ce802440ea8a471440b5640c60e9780f2382b2e6c25a5a03581132b43afd53a7a1959963921dc762d0096b929b75d3beda0f504e9851b104909820ed47082b4c35a94cd1415337b619863174c59ac579ad2677e05c5c7fc7635e6a0c077b86d7c35f3d0fba847088326dd98a2b69a0f8acf0ebd8face82bee116ba60fd1b92a6efd27aa27a87cfbcce4aab8d0fb05cb6d2d6b433107f70a3a93b5f2040bdc894c482d76f172db7b896f217c912acf4693c9134994a59cb04d38b1f7608f3dc959713fd5aba4b49c6092539c50fa2cad2696be3d470e2d57463a9cd213023d3674a28924a52acf304ad00b81e59eb83742de1c30f4527a952789a30f0d44a4c8b27dd8038ae1d9bf760879a0a4f4dc52327a023cb798e8f2744a5b7b4619eafda8d06ba40e967be24687fe45cf510603892ac849dba34738dd273ad569ce07d7725189e9d9996b022806e9710b963b4619658c3272675b4c44f9efc69842114c38f9e8a958c47f28f8b4a720646e2de1a4bb79e0e4b985942500cf2d27486fb99f2d5d83a4acf78721e44fe322bd822b401692460074981fdc0f3a7c92ad713fc8cac14f92d45ec92cb7dda5adf2b233029f9db9c504968f1db79670c24473b094083aca77c0f4283f19e1b95c736b4fce32fa968751da01d26bbeedc0cac7783ba6f10684959ef34e1dca3529f763d7a1fed5a43b1dfec71ee330d4b5ad073acaed2624c651de77f29818ce29ffd65d713f564ab9f5e83af6d4c1f741398a7fedfc2b77f2baf19c6a8cf7d58b5e3ad7c673f15fdb90e998e601d17c03723fc6afeebb9ce3629ca2bcefe751317e6d436036d789276747753e27ef3a6f3fb81ee8974ebcdd4f4ae6f27e68be397f56afca69f7b55b4f753eed9bc7ad47f3cdeda6e140e252f7698ff1af1dc623a55e613c06d5f9731cc79d3aff93a39c6e43a69fb857b5714ece271c45dc939fbcba75eda99e9611b239ca37bfce9d3ab8f1c438aafb62bc1fcc3b3867de7172947598ee3aaae33fc908e15cf3936b27efd2bc8ea1a7a0530e6a3b38c1c693e79e9d5803891241244161819227c03314255d5e8926bda170794b3bb01eca0e549ea1145df90f263d741ecf508a8478b8f1e0b8e1f2cb1b1c38dc1b635c18be7ad6d90ce8fa9a5255c8f1746f2a9639f4cc61e6411e7ad5c1a25e19e1c0e1f2158492aca2440ecf2d2588b8f5dc4ac2c927c124091e9e5b4924f9bee1b9858497b7bcf1e090c16db71c0e1f6e5729e5c530ec7acc75988bc94d5e94cf1b23df1b3b18efabcf3031315ffd89aad78cea7a1f7be59f9aa79b47c7ba886112c3e4f7b359158cb3dc9c3be85c77d36d5d91ae851f1074413008c11a2517bea45e0fc174e60494524aa984c52183861066b562ce7fcd89615e3bea7df5baa26371420963c346b2387ac0c1c3e5ac8988fa47d52b26ea153b0e14dc269ab009cb728afcc195d672cdd7561a67d37240e16641f9d6b59356eafa49d749edd549179d7cf34e1ebd4f6535d49543cb25515796d10d487ff53a89774cdf36ef2dda58e316847ff364aafb641046db3ae95a8772de301b35ace3d56c1c68b96d8c5f1d8c5bb834b11818cebf8ac1a52eba8e5dc78a7e3afc7a21f7a9baad1d7c88a557597a35fde2814c7aa5d3571a87ff4aafe6e63a51bbdd07a3fcf453275df96ff516b3457c581f0d57f3f2a0925ac4fd3ac947afa64ca59c9db9c69aa21b0fe614ab585d82c477521eb78dd0964a75dc08a8e9d5f42a970b350eacd36d916ba65753d5c5b5fea9be48afa68fc6e10b76e1e3c2a45ecdba8ad2d9885cfaf8ca5f3edd4711a113fa5b7d29fcfca44e520295389913265d37beb845bf7530877a412564d015cca1712e872b983ffc744c889f5ea992b73282128bc308268a94596e7429a32b651736ebbce824bab893739a33d75cf7f26bbbae8bdb54689ccf83340ee797af6a3c75f9cc866387dbce61b556ebd9ed68b88ee238effbb9b9ae69d7bbce759cdfee74729dc875dbcdfc6e99566dcdb07a056131d7aea34ececea7aea65798a33aef15e635e6c078ab688339b699713f1e974b57a580e17c2b1f8df3a554c03c48e3a01cf355cd63ed188639d7e188010aa6a301c6635028981818181847a11c06858281e11accf361a6a319e925e735ab4667104fa7579d8fa4db7e793c76bab8422db8f013b48a17901a6f25fdf60a887bea2a957f498ec8a757f4118408e6d15760c193c1eaea5ae3f24ef4c6b97c7a27bdbf2b3bfea942904749c4bd7c34cef4cbe755a5139785fd408927524ac9e5ca18a38c44d8f252d28e06eb1ab375d6accfbcfd805f1ecbb42cd31c72ae699a96a1502814aae39c7f63719e74cd35ef3e22af51d7fcabac556ae7463dd51111e11333191deb7264b999c32fff616ead10ccabf765de92188fdb1224be13e3c570b34384f4eeee96e9a92ebdcae8c1ec60db6bbd57a56a097d2eafb4525b638c31d21c57881b9d2bd055bdcbab1ed084b5fbea57af4fbd25d0a7276790f3cee0cec92b2a8524a5173dd22f3dd94d18dd54b946411dd4edb6b3dce8fc2d1d6ed17993293c0ac91320e0510b37aa0b7d7582d7a4b2b862e030e79c5554e9d1a3cd75f2f30a143670f4bc667b6e858183a983e51acada695d296a79c1e4ea208f4ead2b48d47061906a85b143184a985a60187d81746370b91506ab0506520b0c355a5f24c92a2d2f78e85b143d6e1b98618c31c608bb7b1ac6785f70131ba6e1851208218410c276ded15eb05a5db0f11c96db2e9f5b5da4f1f4b9d5c59657e1ac61b92a9e24699c7681bd97a0fca7bd603eb782e0e5de209d6b3e01fc3787ae7cf2c3d80be7aefaec845efa8c466cd9a91e8ba750f26102780b79ab404d648632a8e2040b04bf99925ef3e9ddbd0083f0639e0f74ac7ff28ee941f581f8cb0fcdb3ecad073dcebe8e89a46b4c476f2786f548d79c3721986baed3402eeb58a779dc7aaa43f8b507790774cc6d571952d86540974e80b7cc7da162cb53bf88b030050f71e74686ba1771810a2673078ad63c61c5cc5c3d06d1ae4a073eb7a6a0f2d35148717510fce5cd1e446b1a671a69b8f564a037070c9dc09ec536158698a019bdbcbbca3e1f157279323ded970f81deb1bbbb277abb43ef4b8a2e4fbb0965f8af3ab79ea0726d0a877af5af045f84b40c5fdd72b3aaf70d3d75191e6ea95d2ce71b531ffaacdbbc7643d65a99ea18510e2f7dab81ba0de2a53799d60e410d0312b2d6adfbc8f45c3efdb2aed3d7e9eab94e97f5ea16cb9c1fcbbc1fd531c7ae4879e9331dd3bc76f0b1b8fdc8b22cf37ca67fd2316d88d43ccda35c17bb066603c01d22ce6b60360075b8a31369179d03127ac93b1228f6609ecfe6d2b7cd23b54ebd6f73ebc958bf7c4adf3c19ebf554a7995f3eb55e3df5aa98f751b79acb60b493c1bc1fd3a578f2d22773eb7d9ae614bee6f38715623de61d980704bf58efcb9cbaa5f033f8543bdd64adb9204a951825c909a89820fa20e9d240512bc8a17119ba6566666666def247609e9999db08db6e399e4e663a43a69dcc74f897539474017cf4a64d9b7ad3ea5579eeda2de4dab8ed90cbe0a6d91e9babd06b75ea9b8702f85885e59b826bc3ed229e5b57e8e0db87e7561545bf7a6e312d0909a261cbf317821540c15d1b6e74e2b9456586874f9e5b3f58e24f786e610106dc8064525879a022bfa587078ae1f45f50175ba87cf82fe8c807dbc57f41367431ff7b218b2386104009a6ff5e48627aae2cd6c65f9e9fbd5d6081e0cf39e5e1035a5a2079e9dddf904ccf9cf2d2e794ff5e187ae91388bf7cf982e4611756befbee6d6bdde9f8d9cd290f37207e6404e805b5f7b44f7771c6e840a0472fc87eab0ad107f50f751fbbee3bc87eb7f1e4bd8f0edbd92313b23b78715f2eb7a268f21508f5da7d99fb605e7dfad5696e4f9dccc9f9afeeebf680b83fa2719dccc9e15fb7526bebf2e35befae3f5ebfba93771735ae938cc6735d64223cd790e725e949f3abe3223cc713b63c6d1e7fabf25ad77e3b6eb2cfe5d53f158698a8ce1b10e8b5f20f28040ab9bcca0889af797ccdfb869cb058df59b75c1bd7faa9b32ec35bb7b18cb7b289bbfc0bd71fe9e78011f8b608d7ba95db0fae326543584d38597fc29ae14fddcddbac6bbb39f38ecc6eae757ccc35cc83e86b6d44dbda35de54e0133076969ef7f1042f2cdba669dba6b9f56ddbb6cdb9662b82b559666de6985b6b6d1a18562b8655bf1cc330cc2bf7c0fc4233b8bbfbea6e5a79c725c67589710f9eca3db058e6b8b8f22f8ec64863e418e9e5b4d378c7e51d87e5722b8aa29fce55e31eb4bb9cb9e6ea1a586666dec169bc83f3ee382cf7e49b6b6e9dc37233e7b070ae718f76ce37eec1cf79735c584ec81579a2daab47a731568a1d811fbb23f0ab5f5d3cc5e8d1f3af9e4ff50b52ef138a3156d7894042d06b635dbbb6c3768e3b99d841742ed7ae6a244803c117f9ea9581b84ff48c00f11616eb83603ef31883b4cf8680e03b23400df8e61dd183e8b791ea41b427038fb90ea0063ce41d2af009d1bfa10afd822f6fafae2896272a4eb73352d4bd1c0a5dccecec17ec80841e02c5e74dd60ab98bd7972f5fbc7c6d8f5f3dea3cf3c8fd1fc992e1bf76a0cb8b0c5ffe48fd30f6beab7ddd1e909123f4a11fb9fe85a1871e0f536f20e8e5e54ba814bb234dddfbe025d4dd0d24c40e5f18028aecedd427ca8f1e3d20a1c7606541af5a68c37260dc3e71ab0752beb6d4c00543e31ed05fe31e46a0d21637ed748472accb7a0859cf43b0d02dc72f9d9d6f1ef3c99c77dc4821d52b8499cd7e601c7ceb70e3815827b323f0bf23f0314c420f28becc0fcf79073bfcda619e4f75eb7203aa4fdd7a3ee1c675b9d13d0cd65e0d7d667993b1219f00fd73c01013cf7c0274cc752290503b36243e50e4ceb8f7a3d31d0fa70cf4809eb0584f801fc246e79a385d00ff4d0f26e9d51354926c807b18b9f925ec430c864367f6a84754c38e1dea486276a0a7be9f87497a25fde60b2244d4c9b81f7ff1d285d86fb44183071df8a003242b2cd60e75b8033b961ce28619cc00040f76886ad8b1031d49cc0e3b510dbd733912062061c08e10112b401722229d3af484388d13f460891620d8800b2b767887875c1085073df4d004151c9cb1c33becdfcd0ace62edc0248d2300253f58e61edfcd10c731643fa58cc18b97dea4977f315cde07f8ca47fd271ab1e5a7f7019e227ab1e3297078ea2da93686ffa07fd37f867878fa81051049ef83e1e307780a12bc9c1ed3d1120598e284ecc1939f796ef5a0064b84d863080efdbb3e78a0a01384051450f846a171624ec4c20753ae6011e18514394339306db1c4022472a08415394331e8618d36a4d43083103decb4af38470229a08249922d82a0041b3b46bd82ee44ebf8385d149c71ee51157039bb09dc834e9cee8b80146e2c004e17f3623c4810d48c4e101f41500dd5681c2f8d33e3f949e3d782fab91a6d80b8fc9c6b28c722cf96c9d3963ad9678fd97ea0bc4f3eca619c04ff7818e0a3cdc7ee239168d3fe4105ccf8475fc63fad25f748a5f0d16f7ac52388ebf18834331d096001da657274900589da86593a09dea743e57daac771c31bc1834960602305a5a43a982b0dd001104c45b0614413482c8075c6154c88d82169ca4ebb8e8f760ce55a4ca7826f87e1c150d221261d4e6c857ad338523acbdbc1263089e784614f744992451a64304de1e2566cb821491415a4e0080f2211e17e500922edb4b340a45737374e500046132cbe60ed30067b31c28915ac216e604a622e2f6082040e4757ca90012f31a982e565082a5826580173e615639e911ff281841ef3a50c2af5aa5920a286501225d8483a35340d41872d31f0d2041a432d60810f640883c56484b4020e6864e9010821cc800d06e030e58c231d8270461350e9c3a104953ea884a39b69ca37f7b8be8458af0e7201a2d32ef20ea5e83d65fbe8ac129ab786f1e27ecc042fd042fbb79577e1e6a68b9c33a4a40c1c6e20c4931c94e1c54e3b5ce21c4dcb0e8660860e6b0471c64e3b64e29c2119743146134996f0a00d2976da2115ced9400f33c0028a9221aa606267a667ceb0d4e1ec8e737a575f9da435d0280c26be48c5c2f0b55e45141239b953a084a4b26d24ec88aa47a75563034cbfba1aea4ecc4fd44fdf1801d3ef922b7b35af159701de68d809009ae7113887712ec7a958cad92dafa4942ebd6301e408349cd2a69df3d3f1336e472a91a87956ce5aa7f78d00bd14efb8ac71e555fc91bafddf1e90d00a4c280d2cb735c11a36bc6a8d15f48a3b60b9552a954a5e61de11a5162ac598f5a213ab94ce79c4bdf7527a6bec8cc0bffcba6aedb61ae552a77eebbd64d0e50b596bada928fc4e3bfe39299df4aa5c59d5f206f005f8116ee9ee1861432ea494524e4a25eae79c94d229a18450caa93d4f4a88522aa7c412c3242b9430521f22a52c54558e9bbae8d55d4a2bdfca9d44b79cf3045d93526ab0597264666e8edc40681b3bccdb855e658e79537ad96c52cab2522de6aca8cbdbe5b7acb7c218af4008935011369c32afeba25d2a8714e934c68650934db9b28410c209258c50c2488fe6e446492979ee6808218410420821841092215117e85586b9d5349b49ac6a37054933523a51dc2b29b5c691b3ff4b492963ea99e97439fb076b31bb3ce9d28403c24ffd43b1d02bacb655c1bd3a841062317a8c90465aa9f026e46a0d8da5e7161a6aa081058da4e7561a46aae7561a4822bc6490999147f228e634924c8a392c2051914754e411157994a39168dcddeda5e27e8de41d11348d44434343d3483834b291a49412c370687c7a1bc139f79da6934b3f55f5481e09e172afd480a15733ba2cca816c43e384c6bf54d3f8d75190a8a6c3db88127c767b4de236f1b304ffba077fa5a9d0f8d75574d0d0d094404343d3484db8b89953a749d2aec375ba718a609853a5725fad6eb6309d1cbaa5bc7ae8b7a1cc8cb35001ee217dba05182773980e06866da0c378d645d6f1d03b1c90a6cba1a56a3f60d4560d6e40aa438c49867474d44848bdd438dd54da49476929f3c91321627d98d023797494b49d381daee3d4b09d283d69a4123a593b1f1d6e043e8d13e172f495875ecd591465d1cde2d6f46a92e0d18f723a9f2e95a64ba6c6b13eb727fec9287f9a4e28278fe4916422916ec80c877f8d34a4baf48ec0879e8ff488f46aaad02b1d1e8d4c22915c8958628e7b8c4b8924e6b4118d67def4ae93acade6c652910f11157c280fd248169dba4927d5dcc85c7ee67d2578aac38ffef28fd5e827add448d16696e07df5693ca31cdd073f87532f7a61bad065fc6ba488d27a35827fed8dd452647c7a5749a5523ed309d1ad91620e0bd1667abdd2fb541e0cbd9aae7212fc63353a89a446ea269dc43d7a4e0ea5ccd1f193d0dd0e47b7c4fd4637426704c6749fa6faaf917e3a4c67e46201e55defbbef51716fe9de7befbdd28a4c0ba089a5d619495708dbc6778bdbe2b2c4831697a2d61626ad2d45970a27671c3d9f61f40c8467338278e62135526232c2199164548a94a27260a62b2115480552911eb344b55b68057201a950911cad501ad85be56262b4b620f1e265a9062744a162032cda40a349941dcee22370a53051f34d2530ca95db46a45bece4112aa59043448416bdc7df7ab57eeae067de37133795ed914451bed62de1389797e7a8d36304e29fb994992793f9f434d7bcb8d49957ab6f91a90a96d88595a4280824274b52ac64e98fdd1111a1c9adc77b7beae0b796205e736ceb894fbe94b7dd2aee1795da0810fecc81c07e6ce3d93ce6027cb6a77b4af0d6e392dc7aba877af189ad1dd492c3b75fdb03b887712956c13ba20704e3d264c870ce9374da452991098bfb4525a5f8a471a612ad6b11501cf164ca7571ace6dfcce7ceab9a0bd0192fa275aa99163ea67835a5b30b1f6f0a63be98872c8c47442cfe537df54114362401c20d6cc8c1193b34979b72f79bc6fdb8971e23f7b8b9e875ddebbab566452765e30719517a4ede726f4a253b2dbc8b4ace399980bda2f78bab9a71eaabaae5d0725d105e9032d5abcacc2fea9753bf3c9fcbdbbfcb93e9abd65aabd75a6bad1886dd2061a75f31eee73fe78494d21b2fb224f90158692283898c20de8c210883582c578764342630464dc480955aee777f4e57c18eb204178cfb71df1cf780594cb040f821907be5426703d8a8c5332860b986b7ebc5953a2dbd6a43c4b8f2356f393a85c8e9f94c4ff68aeaf42de3b6c33b84a5385c6e8d2145be8c72c3e5d61845710c252825975b64e4f0df2223c94b2c555efa4ce3b0f7a53620d0b55ef174866dd4f252a5450426398790e276032e119708940d2d2d4d1c75827b63547adb9a449d20094bddba851984303b65d909aa3ce3d7ba8fc85b8e7b484e5eb750d334ee6659bf8410669965de71fa218275443ea183a864edd674412b15a21100000010008314002020140a078422a158341ae8c2dc7d14000b98a644664c1a48931c875114858c31c618400000004000604684863a00c85b1134f7b53c34ba8f42f662452dd143ed2e077655b711720ce7c02b757715edd3a1ed09e98d7969a8bd869b02775f0acfa28d6ef2f46067d310d5869280b23983a502c6dfd374b70255626207b1bd3909a313507c84f8dc4547c3279049c317d85a1a6fa4a526d242c5b5c4ad9c231b3623eeb5baa5c1220269219adb0ccd97f905483bdcab1f79e04ef9a5484c50327ee00d9376c9056b559f302c183f5f42d39d2eb740635cd08ba38fe6b46c723e32f4f65a84b7b50bdba10992c3b2332e8c5e5e88aca17f3fc8a5e61ee78487bf69bb6104a9cc2b21955cdccb685bb899e7920d5a63626a1820c81276e64ca858bed909e0ed259e86d59fe1c03f3f1442da4bca062258daeb545297cbe688ffcf9d5d0361681439ef650e8a09232ae8247fa80040e29bd6d01335f116f2a3962e620d9d8d85766e2b2150e5494cf63931d50a56c73e2067d6b492788250933389bd5c8c9ec926e8588ce7c2b4de5e56928eeb78a26c1c7b42868e3e8a88b838f7d287a11d7af0c508a3ecb090562454f614a334f9a00d33e99126a3f98e2215c635ff7789ddaef908cbe3ccacc61940bf092a9a73e4c54e3b6a1825c6fcd0c35571874e3ad5746bc88fdf41b9b96456d682bca9520ea552e32b01b9fdd6968591a55995c6481edf79c69bdea340c935ce002879150d3f72eda280a8ab7351f63813acca69f8c5a6cab662458a32c43ec6a1e70e8834df64ffab5a3286bb3db3c41554bdcfecda21dd6fd6d70a7980476ccc30c8e3a40c6e4080ae2c05ed5a85866905d379adec197bd8b5bda5125fbcb2f1893f37671910948fe80bb39be5371cc0bf07a95196481a03264114d819bc4e91d8d4ceacbfc274e6f7ca87808ad8aeaacb7752fc8d60f4af039d3feae8f9570e4a5454a774a4f0a31c9329ec721423b5f537f18d90d3f3016bcdff13cbba204c83c112c50ab2b81e03c689abaf38ae281b06b74d526f9a107a56db84776e7ab3495f8e74465ba346bef500794cc0ba74ac8eaff5f108b30470c64501b71e636d962dce92012268be7da0f94aecb745a61c62648798040ba90f2ce23f90768937906503207f5434d6aac16cb5ab01770f25dd3e1163aa153cd30ab06520177c23a1f61ad1f04569d778d80b7d8fba0e124e7d4ce1dba68dab0fd104285b1331ef0f93d43528882c9608ec13a95599fe55f698d5f1f6d7f488ce02abc6148a90341d2f517119642e5498b780f15df288be5113301573498b2cb9db702d5db418b762604cfd7e5b7814af2a7109209bfdc7e909d140665eb74bdecc61874caa7f095fa2ec691d3620fc40f5ea30c15211564316f0a4413dc4b0487248f73e098cb9b5e3dbd8ffc0ceefa6aec61a0f3d4d5a687d393bfaf892b66ebda458bc64ef77698244f44586d2813832943f8058fc0e7936f4133e54c3f4b1a74b5044035afdd95624977ea642127958450d18dfba4e4cf5a276f0e7a27b67c81cfb0df8fec03607292c252f9118a4bb22686e505fca4d0bc15b22de7608b2d99393d140d253f6eebc2a1175b48514d8149677b45c7afabfdf4b8b18fa25f9387a9611c8dd369913ff0399cde6c23f41e8bb1b6614a5f1ac9469861c534542296a398e8d1e8d45fb054704aceb51ff2c1e9180ba7884ea930a8e97216bb7959bdc6ce86647de351281db2271032edcc0a508c10b99c482353cfe169cb7411b282b1a6f79a5b48316e4ca2b1835c4244f0c5565ea0d76298d7a9424b0b0115fec6a7d47b3a55e64238cbac4a0883f009cec6174bee4cfc93086986373ccd9b99b1b02db42a845ae4e9de8a54aa6899faf5c7b5f5f2eb985425a3653c410fd6514c6e7cf38c8b6270e27ceabc5023e564fa979b78e27e5f8b84c4ae4cf0d54cf605987a34d077d676318236f3ea0e41f178113b5ab84471636d2c377170a549f4942bc81597551161c14cb3d99f1c351022be8fd578e740b88cf4048123dc01cf9a00cbb49b194f1ba6186e5d2c657cd5a010cb6e53105a815d877b254c1274909cc941bbb704f0e225da58e04d85ba5489be532ea7135853db890378bea1a849ed76d1f8256b6e1e4ce49402e04ebcd1c32d567d0d37e67a484a92b656ec5bde16535684482fd72e0204de5a809821da39a060befa8eecdc22cbcd9f26eb3ddccbeef4bfb074584b8b9e2873e9a9d061a873414716fce11ecce9f938073b7960867ced0723ff47caf4fd042b777dc4d6145e1ff4d886cd517c81b6d5858d5154e0e482f0a823bf5389a520baecd7c77ee4a5e69872f28ff2e2562cf6dc352b9ee8127e644a57f806b53fbbdbff6f577ce0f8e65591f4621400c9ef225bb61eef652b873b514b9d9467cf5b2d094009c03c756def5422580002cc2cfcb6cde4a04ea7913f7e3f962db6ea0c1e12ffd784152e276ab0f57ecab25f4c565020c852e7805a125273173a064ab30766c2166c7eed50187643e54ece3de7d95e5d806f463d6c3f8e145598bf4b6451f5633bb85616491eb79bb5118a936393a42002fbd3fbb9640601ad80c209b612e3fc893046196e8379e933f2f1a95e08b1da66a959d7c7a4250697660f6505960b868f8e5f520dbc57f4c697c3a78f797367012f2f8aeb16731a51c92f29c5af8bd190e0eeab1ee4e3a814de3e111efc6865e73060a571410ea07cdc8f6933001557dea39dba2d849051666d7891ed546b8cbad38081d1e0c7f275cc4d325513f7473882e679aa1aaa39f13fbba38bce054c20121505cc135ee62b4a14b8648dd35ef7965ff3f3c316ddb77ba9cef9b83a773a2aa5791221e84800519d7d2303bce990f4494922560d350bfc0460f1c02f34c04f34d682cc40ffb44388b5702e4592e9e6e084e20997677fe46de516c9aa113545d4ea3f1ae4e6351dc548d955aab5a7f0f6a23d4ad330e0484b7e3e7642d362b5596cd89167ab63656b1eb0887de5c4802b8ce2fcfcd7b964496b0252301085ee4015c14353391494ce8e529b3cd3e0d4351b834d5948d508808f5dddba678214b800679bbe9424fb388170cf524fa583fa06cce08621cf2587fe7a908a60cd31eb8b940961064172f02c3444eb485e34151f2bad70e1f9edf692fc7fb990e7c112046374614788686f4e4c3634f9514424080f9c9e96e988fd0f188f1e0d6ff63f5eb08e20d4396a8fce203408f0bdc8a18daec717ed39a3b000c926ad87b953cd3758854afe505417aae69d2a6563d571fec7b0b6e957f4f45034c4083e8c9325232e2103c1ffd364107790a76a86c482aa6ad9659fe5f175556712b9e5ade7ad99aa641e9e3c7399695b93689d15ab2c8f5db0c94077ad2240d7a7051e72e44bb5054086ddcf8cd2ac40a78628b5c7129858abecba66eec53bfecf531a29bda2ff1c846cbbb1b79445ef33b2eddd8f1ca32c4115012892c647a962edc6fdc274bc1b0f479df4efd9b5723a6ee38c233454022a0b704e019dd417371699680eb369fa6f28ef004c53a9014f1f8f8f38842c3cd6dfcee7cfe4833d239cce32bea595b9ede0d5b4a65e75acd1665a72c0062d43483a63e416494bec1430dd28c3dbde8357b62aa076c21b3c74db3f8c38e7da6af7235edb1ad0e1160980a73131b46d631ebe13bfe645b26fb8da7e770321f3a6b7cf2c9f82002477659b2c521eba40076dfdc6376e2220df2630a3655147c7e038804148975f71ec168cd776c30aee5ef2a807198432b08b999b78bff89a9930a6f5a52ab15049fffbc1b0534ebd07995bf0c2586b4adf9dcbdb4929ce92799882465f207f35848457c378af5dd8c0d02737736806e7eda0e420d2a63ec07314772225420f484b72d61688aacb6792187d17126845248e1e46c669001fa08b7db8a1737aa4354d23f91b07835935636f0b0a9fd14dea4296c78d642a58653494237cb2da1055fb236335f5a01d80cb1adfc3364672f8669b0db24bc329b1e3f1a64dd1d78ec558859bd7fa2fc8ec95744044b2b00d351ccb0ac68fc98d7f14d034c52da8455925f5fc9425e9990a26b425c72755ca45129a4c508160e40cd07a33794bc2df573eb6e1ddc6b3f50c389f1ba92cb941d406559d470ca29d430cedd6bf0c58d85f79d881d422067292ec5ec6f4d1c8077c4c74e8735d23524a875d7b796927d853ee646bd22ae17eb4dc1c5789702ae158fe6de0431fb77e1617c0adab3468d2bd688aa64ae314b9ef64624c15946082703623bbeb5b688109a918b10bca51ed4d917d13faa2cc4fbb2241744d4e95c88f29ca337e42c1f0b561cc0727f6d3afca510e39e09160165cdeff2f5e5e52ca9b43b20f3ac09481939f5c53a38be3571a43cf63916441b7b1056e492d73ca850b40f984efd880a3044bbc2460a97f328ddbd8a2b9b4088760d665d9df9239793de435c07655971050798fa161a0b3cbcfdc1648ce34860e9853986025925bc9e18b9f1259912bcb77cc81491218a3c0f3eb5716af60ce45c84e8fe35e76e9df268874f16624536417638588194137876f1edbead931517bed68969b417acb91dea798c7c87b960287050079c6fc49178aa32e1c14852fd4bd8adb7d93336c99c92d4d701ee6ed23882b363747060f8ed9e822608aa2a69250dc8ce13e92079ee1b49353cae2956088b40106dd9c56e81560c3b53dd9a127aef07462c00c77651bc54e1975d83ca46c6ee7a73313d802e4c54d0f96998e55db24fbd067c9d2032564f443007927e41b7100df1a265ab1cedd0e33de03a4ead45850b16c7d5bf35aa3bc50f410ad13046079c25d5b8960fd9b20e54cce92c7c461de3d5d686d44597197fbc686b81c2cffa92572308e5f2946ed07a0d45f7117c40a51d4389538c95c86d7eb82770e09a20ed20f8f160b4a41ac4230291caa5c0751aac2322b91ca9ed62fe8e112fbb82b3887e6b137c4baa4114a4d22538938f6d77a8a0eae008ecf4565c1b87f04190dd977f2802b733bdcc9935e191e7adb8ef319d026eea02ac60159c041460cf6ad12cf97024c348e0cff1485bec8186c54f44caa15d33c971cc4432620f1c0f2aee589db80ec86e39abb74838d8fd549599cbd2f4948f0525a4d2d3b213eeb2ecf3a1be4b373e4b875f520de5792d3b66c5f854bf60f2c399bd7acd45c53a882e65410b9d9caddb2d44e726f2bb2472aee2207cbfe2deee3e1ce3223297c77fe0099157b134e6556257e043b1099422aaf0db573b8d102e1ca280cf4f4061e05ce3157ff4cc003ee8d7ec582d9950a7e0130d900008b9800d8f474568554fd0ca98f22516e65a566b22679fb90e6d09ca9dbf59607216567392f7a11281358b4cbec23bef2f389394af9f0b040a1f48be1309281b441d0f75e9d8c8d84b6f6ff06c376a708bb7321c5930633d6e57eb1673d150622c79a7acd7a4e40d64d49e19ebac4240b99d421dfe98b1fb1757fe0d6cfd6a42f469556aa6c3056a4526a47748406a5824271e3f8c06423b3972e8d3359aa78a522f1c403f890ac8192febb7391b9469f8e5a4a85372a72d3ce6a312bb50d1725556a96ca23137a8148ff3ca0f4b8c41525c2bbf5057e329602fec776d818e4ce357e0a2f10598e2513204a714066e5fbb99deea9a53b7910a8c4650fabc610ab5768b48eec81418ed981c215fae4ea61a37884ca7dda53469a94e5ad455d72fbe43d2f7b65e90451ede4786805c2e4ad891e0d435996a9c859a7e9e4cc15a63fa796536d5e4c6f90267a55e33d62f020bff2d750e7bccb7ac63dc52f53ef0105f8871950e75c75563ffb4e7d389d1ef5985907c078b306bd5f09cab52bf111a1a0836133479e944aad3d0b1a3bd151e21b7816aab2fa0fd90482cc5455663436def04592795e2303fac3429da5fc531b1fcd48d4be67d14a035395c4eae1a4f145cfd5cf3b30337c58ab277121d90f77e44af7521c76cd56c495587236cd5cb06d46b64a44740a3a364824bc52b05950302c5cb7944485df5e6af14a97c5678a2a50378887293c416001c939592fafbee945f2b65d74129f3c2614dafee77456f752d64154adc852cc4378dbabc4cecb40656e34ac3d1b1c6a05fc4d1a82ffac66aab97ee399a0a42d28996dc690dabd18fa634e2935684b384a056fb5467a329c08d39d706816c11e006027de775297c3e1d556215236fc42638de88652ade88223fb1f17e7430458bac64e46a14b796f4c8423f57c472a4d100e1521c098029ea18a1be5dd12a3f9d454bdc378b7ea820d3e11b56830735676735a7c3f508638116b1a50a1ce7417afe8acf700d53205107018a02b91928492c372f0d6dc2b53868166bd8c9554dd4f111afe10cf59ba8431f457966696253a74da21baad4441d870ac91ce03f5107d294c01c702c1470d0d40898d707797846e2be22a57fe7889a23c95c9217e722c00f5c7ff182364b833caa0f1a6258a27b546c0803351875738c81ac9cfc2ecc34218a0e7c6f6fd78e5acf07f00637bd34a302a51e86b0aaa6c747b5a2445d2de1a59cdc21893447466d45397d99e19518acbd63417c0308676e4f9706c078da2d3c09e6af1737a886b95d1a62d998f4f2f92386a75ea7f1407902e17cccfb0c219425d37fbc9911a7949b17fecc478bc4ab57207178269cab2a8ec187584cb84940d3289934c63301e4b5c0fc0d99a1d8e46c51891d2ac5c0915fc5c0df05b638ebd0942e5b2be90733c75e6bcf9711dbd65d17ac55b433998c98c6a19fd18058515413a41992efa8ab72814e84ebe27ad1dd0407c8cac15b12a900dadcacd99089140ec58cc7a1d87f5602dc989151f5e16aefbb22134dff6292621bc65c4f12cd330fe32f661e960f1e8e224cde0697b6522a7cc41f03123ecfa008371309770eb0acd76f7369ce034c81581e57a84802a489c4cf67c3a79d12ac7571917104c7670429e44ae44e7ec0748092de07d9d48822cfec5010dda3affd04b1aebece489ded815e16d95eb8a5e8c21b87f31fffd740e858385f7dd6180a605726111c7f25fe601fec1eaf487eb5e272adc9789e1d2e76d4223fff05740673889cc22cdf6fe3254206aba14f0d38440f3ccbabdca484254500c4ccbc43af645b517846c75f95033b18494287044b27930e58ef4c729bfc2d4d10ffa1a2d0d837741617ab5541c99253061e9de2171469d120c8e2f6f598c03e50b70b6c8a84f6b96b44ac6fc992fcab2cbd4bab5cd3204ad02a8e287199569d6019c13df0c8cc91e194d5991159fbbb12c052bf73408f98000fbee31265217cf1c4b30c64470a4f89db5592e16b5d78102f050bea1ac4786101210c6afe66856bfc87c25400349fab3aa0e94029a07cfa533337fc45cd978ea4126f7fba6c083aeba514b9d350472e3a496fdcedb2ba5b47448f7ddeb7ec2a079a67614bda43db76ce0f8d1d2e619506a1fb0665746b9a4a416240eb7f6b096df2fee8c73f766e3762e9653735202bc15beb099a6b10f242075db8ba13a8521c5e3c0d18392e1418f56033049a9dc9c815f23ac0d2e5668bc8b56e21a30b21010dd72d938ea1e05c02478ec46f15f3a8e939a9a98a5a3de40e4686c4d7bf4c0ceb1ed025b35ad6d46c5b2e76c807bb8782fce03ebd596b3ca988ed1528748d5a803d69aa0fe3d83e0ee2c1ea0e81f0be1a47d5d2b3171309349345a9833b9bfb11b9d8d805a1ecd23f466ffd3c8fea77e19ef777b46a980df71f98d549fd88a8d0c23ccaa155d0faa82aba7e4046d0467876adf4bd18565ee507e82e998466450d564365518c17b50a8f3471f7c19d8c474554df88bcb7e5ac0f21e96a2c548e27f3a9c19e02e02256ed54ad64762266c6097ef5d4bfb6d968f0bfce517257e95d05088972e5f4375002f01eba3c6a4b34b636c44de4d717a714b9e6b56234f27976a6dbda1362a6c5ff7ad62f1d1d68d8795b3f80319eb3c9a660dc46c911e44c84e45c40c28397d947a8dc7986f5166c0a49e1a3139d44b2922ebec63e6df95cfe7da4ee415e629485223e43c75f4625e52299c13e622bd4c0c64e53c1c72ff2d920c144a71a0e1d98aabefe004b293160cdb70b60c1e3651a24d1ed124b7dafaf070005234270f0995231e1acc5aee481481dc3350b554ca4d52045c4aea04601abe2c0ab4f5e5d45ce47a4e09235e89854eb992f7bab93914b9933e8d1074828fd84aaaa03edd4264cf852f8d23343e949a6db4eadc7aaa04fcf7d9a3d53d36244cf8875a3aca0933043f1ef31f52b372c2c1ffaf92dcac398d6eee800a38d7a519b1b61b09c31e82d2297966b0858cfe6a3de787829ce4e125ec1d94212b17df2567b5cc42b921202eab597ce0766d004be6575cf40132f3f521826a3735e1599bc3f4474aa5014b1bbc3ae4363f3bc448ccdc6fea6769a004b5ca3afb74742c0ae31d0fa1aebb1856ddbd74c5d6cec4af4950e4199724b4d810422126250ac5f8d4050e9c3f5ed57bcccd9fac4c7bade1a4b5ad0a0b6a4188579eb3aaaac0cb61b030944de227f5411628dedc3ff93d050dcc5da718eb48e1a831b88d4e3cef1805daa8d6d0c3148871fc3df8e01c8e64d0536f96b301c80f683d0ba8ac0f331ac4762b622f030d19fa5211db87a02372720448368a7560b3dd80ae8daea5dddaa4b21ef9ab4c61936f78eacdce12182ec941f9590ab262b6e72b75a85311a3e2d1c62f46c41fb99147cec1072913c8f3c2b773e6825fa2bd1b1631f9a495ca467e5ae9e819dd25539fb1b86dfef90bb45dc655ecdab6cf4abdcfdfb0ed46b9aaccee89f8e25ee9bbfdab6acdcbde741fa80766718781e38f24c88af38c177a55930fb0fefa6870f71d7f2bcd79645ea062371764967d79918f5e18c34a37ca10723ef1a52cb92baf583cd315f73a15b1077e7a770050fe4ad38f270ce8ee39bc030d1287c6e3c921e644e279ea9ca53a926e8381fcb3fe25c6df6ecda8d3890c36b9c0846dcfdb2ee6eaf2a80379b39078931250ec160dd1d177ceb127ab8ed0aceb386b71791bf378fc3dda56285c9295b5eec7bc70b8cee6ae00953c4f8a08d853f9edddd62dc528e00787739fb01634c82c1429e855847f31d14052f9e0da6c0079466b80b0e93572ccc91cfeb76b5544c893c6c02c05d5dd6f99e47025e58c0ee64ef57d5d1f9509112a09f3064dd3cde638d023696339164e3b363305f668f95cb695f469afcfc4f9a83aa29c758b88bcdc7e3ee9405d20e2b5efb248b591abbd1058f4c64eeb75db84156b7fc66e3c454927674c16e5eb85579711761ebca4c0230f81d662e643ed6b3e0668317521ef2198f30dcd372cdc020d159d225f47656248100785a18ca40e7a3f927cf2685d07cd7d67308823a8aee8daa46626a4fac1e8fb9c047d355237ce2edcecf737d9a950408d9ac85d36594cc196e84595702eb8cfdca792f872bb0c17ed0caca7062f357951c5d136c179800c75ea99bb1574612bbd0ec09a49773269afbdaebcc21dc3e0a22a90a30857adf5c41f248e5c9131ab21c3bb8dd5ad37868fa97d34702fd415eac30b550826957fca8ec8e9ede1a8499e410e6118bf7c66c74c47ae701ada65e87d1d8850ec70b553b01c3ce690ae54cbe8364366b03ac2cf0dbd6937ac943bc98e7aecb3ccda1edfd518154faaa3eea88b0971e06f5657ac8d126b8a8bbe92528a2299f31ae35e59bdf9ebb7436f71d01d6b83ca2d04994a0c18786b77d22c53aaf3b0be8875187682afbc84992028e35e38db7261aec4d0fd48a134e0a343d20d4863cb24cd298fd8bb6178d7b99f25a2eadef69f4a6fa2ae09b3b17e9968feeb32825ae83dca5cd0de86ab3f3f6e41db2b251b4e66294e502015a392dd33407f83d40ed27052909a079ef69d087d1c7a857d79e3c32272ee1118f7027259a539f6c68f2d87641b1bdd75e4b9b9b218b6f5c99a0ac934b2e3333ad3c649c90998f696f17a18ca58ab27fcae00cd8d500eab08e33e6b6f1ef977e2a7afdc867c88077e8be75d4b906ff7cf963d5dfba212cfa6980fe4a02663106c94bad891e442ed16e855c6c0310b735fc8e92cdfaa0fc2c6ffc1840282225d92735e15fa810b5b241adca6fc2f453b87b0ec8fb0f0537230d5aba8ed5a7c007c8d444f64547d57187c4490d754823a4d511823c9b37712226f91a33681f503ce745d8780f1b58ad51e94fea029e5f3f72c5c0384ef035d646dc4b43eaab1b98fd5e908442eacae7898ff7c3f8442042783431322a70f223d6711233c66695282b2a901762a5f45f1a9b3368fa99b39c349ff39e696a03317ed27d4fc574c327b5c605529be448de6d0f69501ed12e188259ca7ec433f6f47092a71d52fe600529b3f746c7ee1a5b19350656acc1717c059f6b878cb67246974b2909a9f2d487d07b5eee67362da237091fd7af553ca4384ad6d467139e36574213c667fac5117bf4dcbb88f777b7c4f9b524f78e7deb069e80a866d59c6a587a50b81c39ee0dc1c480a8d629bfa093f7384b1665a0caf5a6300271a9a773d91ec57727f9901f230e21b17140f9c10853ea2f8be0f3740cc6f3b2a9cb1c79d21c021da6e96181c13160f29766b180232bacfd0637d01b3e9762bd3751681c1277d238832e47f5c9ebe54d66ce3d24aeb17c33282096d5854a7e33db0c310e4338cfc3f20a25150378161cf030033e4f721f9fe684429d45e481bde27c6005e1c600189f3dbe40391c6a8f233beac9fe71ef0b051e98e6673ca23c5355ca922f8ef34de29f4a3d04f2924844aa93408c2deffd3fe8c27949f1c194763ee1495f904863953fc9c2c5810c6defe7d1d5df08356d9045efa5db85304ab34b27269b8202c3bc5bca23c4a3fc3c3f05a8f55483ea0ec12721bc2844c60b59c798c3fc70013de76ef0ac858191c10b81de38d71a63d0f380c90aec1e2abdc28f8e651d66cefedcda245396684a1129f5d4daabe512c9f477d0d21c30a6fa64ceadf6ed3462f42ebb025659764ab1f08d3eaa723bd99b8b272e756aff559da5f2e2460eb1ddd01cee4d7dc17348f73c3397035d6dab5493db1a2d346100a6199ed8e135bfd407471ec3cd8c3166340572d4e5a0b93f7aee59a04eed69aaa0e7194d23c769867fd860bc4ef3e61c8433c7d117822f98c4321e3eb2754cf20d02d8cb521c9318caff93dfdf8a625cd0e6d520b077021b96852311d013bce4f039599e08c10ef158bb8b21dbe5bb00260c0e837714cf249e00e58f5217c047cb805ba6aaeebf98d0b150daed0670d6eed09f7e297a5229d0eaf7e49aaa7ffded55879d8bd047112adfee38229751c128d710526143c36eb8047dd4f5134836967fe17f340e338ef180b02377dc7fea366891b6aedfe79bb1822ef3c6c248ec4c30bce828bfa8798bb1ff1f8e008f4c585e07774ba0bbe840b7d3ac2b8921f4cd7e034e94a9e25054e621ef06601303d893fb66bf7ec1a40aab99dea47ecc8129136fa2492646eb06fef4d32936d2d9a80e9f2a72042f6882aeb82558e95a808b16a991ebe4df3b33e748a9b8c15fc48fe67aca8478cbfbec4603d08d1389890598be99f01ba2aef2eb96d947e037192fe29993c3c92a6a4bce13358bb7d62f2f1d8186b8ed41691a2b49eea40e4e4c5ace5ca1eb7f2305a41a1f5cf503a940e443cbf661634a4b7ab71023f0f76d65cf82e69d7e39600be4bbaf0c66f938bb552d9b645490d8227ff7257ca753a9b00849ac169ed269692480b193623c91f3aeda812dcf4ea77089478baec78786395fbac155d5bc237c4a35475ea508d4c6e4b4b679efc2a4a960d24be8f62d9589d999c31f5e97d1c478203fc6715bfc6ce43a669c59bd9000ae6dd20e1970aad04a1ad32d3cc4cf9165de384fe6cd5b898bd697be21f973dcf0d9cf12740d85dc0fc61e751a63982aa378426dc4e629b1f6280dbf8c76951923ba38c907cfdce58502fb480b9bd9a9115c17950e7dbc10f6245ce436f329681615e721213fb2283ce9702542823650b0458265b06d2152ec143a2f41a068703d8038dfdcf3a91ecd431b5a4e16a5787f6b1ba1e264e2bf46b60584bd7e00446576cfde39183071f20c4f4d801283d36c4390c23862bd716f74527be01ee82620070baf535e54993b761dafbbd926344357f6372599a305286ceae71010836b0eb72e9cb00e76eda53614ca37cfbc33668b3c8ccb78f0c81612209171253500c5b2938e0c9016cd1fc8a0b890b7bbfdde39c7ea638154ccbc968239779613a6a367e025dd852d85b7ab67aceb3b696d58579550585516116207e5477edc8960ac044ad5405383331b0884d7592491234b3767ad4077a6b640f8231f3263415a813b19962c85d16a1d51f60ce8f9102dd69019abe1c3b57aecbba89e26ed3bb7beaa98dd7969970c95f2feaae9bd935855973dc5f6c648c245e70cfa03d788202ac9da57062e09a09d911259a5986185c12057eacfec7e64c0c759cc88fc7993f6b8e71cd2b6f0ccc30066b83905d88937f707b34fc7297d40235125b285440b7b784bcdda63727e7ed490edd97895c4e290658605f9a5291f244c00bb28bdcb4010e85ac4021894f41b78aca00c54fc0a40df7fad52fe189f9bf6270c7e7e042b41cda701787a572c4c89687fce96946469935f5a212e23f4188efbdacef467da93657617bb0532fc8e9e39fd89bf009266fed5e6bd9eed2acdc59b29166541f97a4d70c92ce8ae68181dd4a7676025f05ea953120b241c9302d6bdd0b719f1f804d612ab4d1634dbc59b9dda6523ec3895881cd97772d6378354667eeb2debe3f02b1164f054e16413032d49c1bdfa3df9a65f836212cd7d65a407398ef2debcc78acb6ea6b58dafbcdff55aa3ef55224ec8384eb1dc3f51753232f03f3366f3a917acc9bb5b513a974c5d5727c3fc8a7791f4ad4f5a7126e3ea83bb44451a63a9343833f0ee9abc0e516727b0d2c4d827ebeae549a14a7d6d5abd83e0ef4b8c68f14a11a706ca6b7f35e3361465532be2746f43c7e14b576a0bfc36ee6ee8a43df02ce434306e62ebe9b9e616e08482d51111dbf93756297eb600ccb85d9cb3033e43eecbaef3dec2cc97149942bbaf5cef15749c15c51f9f4d20847acfe8591ef5b3687f507e003d8e9aa7f16e5d6dc40d971c6f8a8bc0f5f5121ce494434e64ad9faf78bc0afd6fb99e67500ae496b935d5cf2001799e4c271f04d0a46db027e20491a5e46266c60f48f9955048f02f847ee8d58c298944f2929f9311eade71f9f148693714827ec0f49595578eb2bd09bd44fcca646baefd9ce21a0b51c0e763c4fb675be791fb3a0e98789d0427e4b57c2899cae3fe286c0a9f9302d72a94dcb00a6706f988eb04d83f5ab714333a0b58e2c3d47cdd02f5feddfa9f0545aefb41e33e044c9e61acd834e7b32251244783ae926018c140b8a1bb2a745966525aeb5c485ede89b3174bd2da7e1e254f6f1cb27e4e555afb34d2207e8b540b1035c6af3f2c60719a795a08fab3e6a7120c2f625c82b511a89da41d296b9918726e5c3c5f3f2fd4dfb2a16eab1e57749dbf37bda685a66879462e1eea8063156ae65512f789b8c1323d772771deb7a3fdb96b05626f5a5326d6b025053ccf935f1a21375bddc22c11a1da0326003ba5cc00a91251a36ee02c2e9849919f4921e50424dd03a8dc130c68ffa3904ba25d19eadff9bbaaaa035629b35205188128c3aefa558c459cc4536860f82ac5747a208849ed492554c16d94dda7a3276559b6b7eeeb76f733f18fb9098395ee42627beb3f0088effae3570a20ecd4d45ce737bbd47f17d72237d3d13719a46784b6b34f427be87519367124c3c4d75edf823672a273d330509a95bf2a1a88636a58e355654ec21a1aa3deccb8d85eff8e2e3a846b653175c5a2281045ab401aeada168360ab681d65624f33236f45d32b424144a1b70cf980246ad8d72c41b888f7a23b98604b2226c5c6caa24e7d6a2cd7649ef604e8485726ba77db47a9f0259cfdd4354ea84c9ed167d904c72dfe6ad4874049512061a0978c9d3c2a772dd413791b73c9d244e466695f13cb01608ad3e92126522900e2f1be20c7682f976f42ef0c76ecb2fb00e32a8bfbddccea75f5186e1a3d997f69afa3c0d551d00bdd5b0c583c298b15af9250afb7117d82e549288508608c527f6c3c56595212c6e76e7e6c8db5850b661b318e119369f959f973ea7a3089265d3cecc56b441d5c893c0605738bb1fe18023c5f5234c8847ce4242a17a13d69a1e9214a2b68bed12abb94da9a9011ecca76dc4f6c02f321fe215935f0f9a6dc0e260d3c0f550b72013ea7e149f6342bccc34d69808719e0fbe5179ec738474a51d30793e5d279ffcb5f194138e6d23e7c5d1125c49721630de85262b1e01c5d017a351ea22a73dceb5ed421ba0a96036dde0da18b81e44775c1bfb300f0d6550d8e9403ecd3924c5841f6ba21e531fb42c4db1581840025c2c3a5869518a53dd831ddb01ef83838a8573c94eec7522b9f58c886b7a886c5166953b7a54648a6532ac8b79dd872b723e8d1f2a1676ef0f7f49417e75ad6f749a774eeaff1b867f19c413dcc353395852f884e8696d90a4ca785e8ac838a8518fe280f22902596069d6845307d54b824e343b23174e938aa7a2666d7cdcb8c45bdc8b1a8972b72ae4d5e96faef9b2eb2b97589790022e46caaffbb6867334eff5af738509f131e5662a8c1887ea2409f120a31e528187d8ce73e6ca2d5a33938ed4d1b4e3cea4a725fc712163b566a17cddc4aa92389210785ffe8ebda4ac3096b493f05e7d7ce863d8b2ce768020efddf9c4d732916a371103cef41d3c0efe6057b348b71d2c9bcfd4be7a31f3a36393bf949b8d4f7777437acf1a104906f4e0cf0649836832dfce2bce8aa22a3d434d2b33dea85c3d1a970ca8dba2257475daa063633baf4c6f9fc8d4e2238e4ccd1bb8a03a91730a8495fd95ad9040c09dcfb57df6d36c95be294abd6e5178a57149e36d178c8cffd2624868eb6f37c70b599ea5330bd02c0b77e502507f93ca389635248b4caa118a7220cadfd666375f007ff57419049a782785e86fe02c0c93b18fdc6fd631273c3cd74758cee03cd98b335c58088a6b5d7fd646b658128a993aa67971f7766bfd0de80c095a98c0670e8de5f27d0a20b7bab0acdfe3afbfb8196b041d80a33d94a7532af3ee10f98e32bf3010362e292c02444f6a093e2edab488832003d851530e90f4892f062e58edf0ae59107aa5f776737acfd33731663f63074d26efdb6f30b1b619005b6e9c064fcb6e58e3e6c02fadc25e2f02754fb850f0940936c288f5373af97555573218094ae99860845cf517502999a74b780cbcb41bc3e61b35fca6586ab7fa01578fb4c96ccf55d655578f2b6879eed4f2b97ae8905f42185dc5896551f2fef02fd0df71f33c31354ec3a80879e5cb5e688e673131542f6800fcf0bc198a5e2bf93691d3371545622c6f9530301a52fecff790a79b5a67dc09e4391055e9406b12f58c2eae5a0db2d20ff8744572383aab3cfdff6a27616b3cb76b8bc7861193e19739c78c12fe6e4b72e53e24259f5bc9715124bf5144772a8c4e836e85ae095ab8d7b0bdbbcf29ce44eaf53a1116bd419b2734bab8c827d335708896c59bdc0d1cafa32c734f44a131310b9343d0102287377abbcffc4da6f006bc9be008ca9fb401e1c385297c569e2f933442ac3f15f180b994a3c31be8608199620829f8b891e20ae29197843baf6873ff8e1759da1846693011e97e5cc95a2450bb78beb884c9dffb6c6b313555edb83ba276e4033c8b680f49265dfe3215b0f3e126f071cfad7029f61e7e54a6c969416d0e1d8a8d2e3f29c96c0dfea0f4ee4ce4abef7139f52ab2dcb2fa2ab59c29aedec42b1adbeae0df5cb1a07f114cb0e7bda01b6fc5d2af91bca814fa7d341c8d92596776115b406f09c06421672c9de4a45228524a1a6e841d1d37a714667d719ed4f0046dadd25f01f1e83bba0524583fe449c475e961cbc172c108852798921666c463cbd5b5976eda3ccff0d12ee2e329aedfb9903f1ca973c2d23f59d6e0cf4a564103f6b6169dca1f9fc4c70dbd0b37231f8ab8ef42ad77395deefc81c25d5c6af19fc621250688a5ca97773eac4f6ef9141230b697493596460ddf2cbf6b90cdab51a855bc04226e4831b5c681ee9ad6f38df4d11c0bf563971dae514aa98850189a9c5e7ee6ec00fff66a3005faf24dbc8afd81ab6be8d682deb69ce390cb3f6f2182070200afa98da23c676162b7234e336e6eeecdc0284631604fa712ea0157b00f7793b40380504c795c95705c8786cd15a4544aff8a60d07e6d4a3736c1da1e6db1cd5f438158c34b200dcf479165a95625765fdca3edc2da1e8b2ae83ae626393a76296747e69d6e3240d2de27a365f4e276a1b091854c065b613f5ca43bd4510fbc29ec7e71278b718384f260530badd97d17599d017dd57087f8af93c881bf6db89f9a4ff1ab622299e64e883bbe51d4132c7faefcc10e1259a22082ea08fd419560399a38cae1e366fbe3a63d3e0160846602f63c907eb708dc1ffe5482aeb3b476b03ab54338feb5e006ffa7b0445f8ec2c2c8c6cb5c6dcb852d9a76ebc5aa9ac2eaa482013374c55c8279606acb68e3e4ff20860ea63cf7532c505e16ff3eaa2c3355d130567d8fed4d584ae56bd57ee2e7aaa8d687424840af83e1cbb4156f1996be7cb47f4f45ece7affd367e07fcc8062fe9da6bc5523151b1aa94b2c9080ded840f7cfa08493a536979b633d9934c27dc68c48c87570467042261d2cf3fd97669d1e440aa09e25a87aa5e8db12c9da151a3e18b97f41f2656b45c33b5b4d99612755a4b8c0c709c181bd91edc2b37b6c017da5561888f2d62982edaf01ac7e45bbf3eba3ca7f29359feb8d5cc62dd44c5183570282ea541825e1d3b4a91520751e4dd78147f971c8bc9bc208bd4b4fd7f7a35a97e09b68b4818228b4615ccab036c95af6c788e99aadc54d1379c6060300c60a30dbcd1c3e32843ef3420c05ebcb87001579813d3180cd407f24a00b0604a49bd9bd4fbc8009b6485e6f7480837a97a039b07925fa102f0055e69887e6e51d6bd686a4edef36a15bce16ff0659bfa1b4654fc80c2c4231c6346478f11e4a01a47458d5b43da1c2aeea4d4fb95852e879ff5f6a49ae8d32993d8c057c2963aa9a136a1fadb64db9c98efff7da82ef06ff0205fd2e1cc1b545b4e50b727218c96945743f5dcca5f312b09e7b7a7cbad567755ac8bc70a0347c4f511e08687f585e663e55ca044afdcbec2d7d5a46f7152d56188065f0c9f2dda1d242cac7b287875bfdefd1d2ef3a1dd80ace52ad4b261815288623525c06bced53a8b16a72c6c84d3eb0e2c866218011e310c3e0b9d960e1c3b42292613d8a52836ffa758d5f4f61dc4d6a48b0657c6d6b4719d8e7159161c41ed5567b2675710f6c07d2929db0a4caa50b6bad355072087a718f34dcc1bb731d5fdf812ac46b5fac03d84647e1d1ba13a37c19082218d926de081e7247d041c086d5dd39858c2501824070446fb4e7740735afd26427e1f8148f0423118b68caad88e3bdd97ea7a220ab8c6385c14b668eb743a4a7fefa907fdefe4b3d09e7e3009e087f5f04f28f8b7f9efaa02b8c08ad64423cc43c0f5e2fc55598c4afb41f71c02e5d1b979ab0b7080259eeb4fa3201904fdcfb302b3b62291b90cabe3f264f167421e6dde94c19bb56991c7ba40ae6197ccc40ee47a76259f63e97ba7e09b26fd176325e67e0e52b8437cb3852081dfb0398ad3958ed4ec218140f0eddc25ae575a8b84d8a2bf4f51fd432c47f5c1b240819cfd96d42d26cdc7222cac0e964f96d02350aa86505b78f8d4b3e62774c5ff3a03875b9b1942065844939f2e348c80be8763e88313095e6326d8bbd27239ddc4f9c75bf63b2a6a44d216f555c6ead7e318d59176ce6e36197c3b5e05e71a32b0589c587952665006ec77b0c3a992af91c302eb602a3037ef7c22136b5efda6c27fc2654da42138d4f87a37945a0d8133c7bc57fbfc7496477d99babb30d365250eec64fc22d9512909690293da48ce9e791e93e19b55c96de3e784636d2612ab8156376eaa0c32d117a123d89ea3279558884fbbb7f9f59199c4b246cee553ab2f487b59ac6b2d5af2b9388982bec512b9160f84b20b846ec3da569c55880060131764f62cf2171f3ee048eaae90e84a129c23386e23735ef18d30a6b22e6aeaa6d2b1884621af8ce3ece0e6eddd297a4e0f4ad54c6ec1260f5ea2fa200f249f1874474f124fd6c80b0b99c1877c4490a9d967825d27c118ba02eea704d94d65dc85ae52578f206bd426dc763ca796dc7473042a6cad5953a2f5e53c9db15a7152f247ffc176f7cee3d5509884358e6a91bc227640cecbe722b8f0785223a3e81f31b0f825e68eb767b2661f67a28dc515d630d051f42c55ca3bb05b974c33644608d9dbaacffda46fe4abba119c1661e228f3b2b3c41c88ca892f04bad2b2ffcd2712400954a8eaf72ba2ab8e66792504d4ac3bc4766aaf0acea9cffe0d38247dc47403002e476dfb86287459a1250cef3d50065c92d27d43ec3458f4b82a9105d47563156269a0b526e45d29e48dadc8a25d0b78138dc109c09ca5592d1ad762195f59e16f3fa280d840b8a121498ed6883d50468fbfb62ac12514e22fdc50cd83d4f020ec5fef7bdb41b575714b4aea1e5b174daf0cd951b1a66049063ceec16b6099cfce370f7ded609c0880488c813e1567240f756b6b40c506f3619f11a19484b25793bafdb940b1290f30fe9764726689d9f08fd06051356d6a37b09c6a9603864e08f8ae1b912594351671f24f7329399802864e8f74844faf422c5963a3b2fbb4cc667f0db87d6ce7b9226623ce77c5a9e14087261d59e3fd26fab4e9f044518e4fb94b4480867654848c86f2b6ccade82392f300cd6b8646f7eed2f719933b24df41250f50e3417ce18f87ac1308742aedfe095da9b3f4893789572c8342baad4a35ade10b78f3f9fa964bf168982a00368fd6c6afb318e729e61b7f3ba103d89811f9aa9e991e58cc90892e8a94125646daea55cf72081aa2b8d04af1dab131dd6478f7b50a27f45952776ca2dd79ebef8a8f1d8715fb101652dbbc236a37cbd582b39a784e34dbeb45fbdb09aa32307b943e647aedbe78062b870127c055a2e4c170254b2b044f553812a52e733dbdc05f48f01888e21015fb8bf452f71a884f276cb28bf197a7dc274216b3663698c578e2288ad5b51b6bac7f2490e82d9e1f2030c3ac6fd474b730e1e0001e244c51c9f736b9bed0922e9f8cb7a6876bd3dfe7828a5ad2c8be4752e9be383933eb8af563e944893385a68500ba429f1298ba48daece32e5109ff933448b25a6951031ae0d2e5c184c02feaff9c3faf2d88b5bce4493b10dafbd5b2b1edecd8139dbddfd08b8e4707a5527f0ae533ed2dfbdf69682702385a53132e1a80c0b3e39db2cad1ba8335465b89b5e01f7e95ac345d4e5dd44b79d0e8e38e0acd18d16aa8c72375d01fc124f923c13081a14e3c0d402133c705885cbe29a3d9a61d51a497450d1f2a033bc645ec66a3519ab10b88b8cbd715895300c3939f3f48f50c75f61e35473fa94b63ddbad301cb7f9aabcc0c41561ae5c15e9dc4cad130347c057af8e9703cc7da502c2d4fe03eafad7f6356a00fa7db35c88e8a728b4aca8ba053b1965a2670187dc86626eb979fc416e79346c8934c5056013a4000cf038c692064c8110d3b756300407b9626e108c50e45fb8a3414ea0fc1e32298eca90624efd35e7fe8f7f8dd10d99336f9cb39d57390760d463d2d6f2ab855ac4ea85c4bb9208181f274f72b1657f1c0b016a6af3911921dbeb875f5051b7dccd6cd85afcefaa07fdc2aa34ef5a803729878e90afa0721b0de141b65bbce9b27b188f76e60db8f95b5539702f0015e71059d01de413b1d2efdf44e16e3e56e3f4ced904abd08498139ebc385098bb51eccacdfd0a431deaaf44a1b3867b2a92234a01ef00da1d8fa40e1069c2400d04791ad120c471342f2244741b597d74763e6bfb7e223f2efc014d455e7be1ee7c29b6a68395e7647625bd0e9750a0f3031f050489ad90583f8d72d33130fde8a947d48e98dba259a9dcc25016f608c3df5aadbcc473e85124c28cd24768f09dab0b089aacad2a0ab2913f7bcf04e064e3f4c2b1f868b489b35596fd8cbac9d5b992ed2faf1bd9525a15e328ff7ad6f1787dce2c3addff4d5ce2ccc5e229cb73aac7dea9a0f18a41c21fc73b6833026c72dd367833828d971efab9886f2cb63ce049a40c620ba9873fc41e23eb5b7fe0ce3015ced2fc5b6dd9c31ed10e7a00da4cbc266cc0973e09d5bfb1a88d7f3f1217ce35a409d49b7e9d3a4c5cd33f3e4440232d44b5a06e20914d0524e9c5a01bb426c6d530ab225c8d999f31759da8745e9b695ca770ffda8fcb53298c2ec42529163095d10a91c68c1ee7bc15335f02eb4fc4903352cf3d3e25a7436c1f2aaba97c0b4b600185e0a6ae98b815788135b064301ebd9dd5107a3bc1e4a6f5f711247d3b3e4c42e0d72384924667a9dbe98a6adedc94e17abf32ed8002ed999de09a8f1753a31d4ddcd51a190688054ea045748150d04c5c800630d0b7f24512d1cd7415bed6e80ca9c55aeb51938774c228ce34606a6e04403af396f317ed1aa2427c9d83545fc30a06ee43bfc32fd5c8a46409ae4589bf5cdabe9a77883a8428db6e3fff8391a5106cd39c1b6ba6441cf4c874a3f55c4347c36313f925cf2198a42beb4d8ccf06c1a7618a44d363e1b55521aab2b665198414cf0d657c15a0292abd86b448dda09f46fc395324285a32c98065c6a33a94dccd385f0e6a97b7c57c3196e278a9d2c72df0990a9cffd26c4ba6586da39cf0c89fad1640ecdba203d1445129626e2c839c85c108fd032ca9888df2a3ba47af1ba778f3e45d875fa307c030f8a2459df434b1c7e2ae00691358e28f0eed82f409b5cea1a0b31283df6c1825ce334f02740cb4fda915f4fae03ab568b32491257d8a62026bc5dcc38dd6ab58879342e2a711657abf9c1369a9da2d1241a5f75cb745b8b28ee1d7017166ed5be90ed5b3e1400442671886394a75c9fa21bf08c4d5d07703cf1762e43db74d13953cc691b01d98c27aeb54319f5a3d0ebdb30a9926dc5fb5e81c54834655c9fd5be9cccc02e63c34e1924ffd00f341519de56b4b34350024f21f617467495e293a9d3662e1bb94d0a0bda4185790782f31b6b50aad9bf815acdcee97cc64c8caddab5304074a20fa8ecaf6693682c3ed4dd9dc7be4b1b9144b925abfa82379cd031f2b8b01b85a6de0ac7945a15ec47a2f6fd2b3aca545fd64523b15cc59f562f95aa6944a18538477023461f92ed178e062658802b00646b6b9a62bacfd4670e3b48344adb5725d1afaa5de1ee7dddda0e07b72b75d425ccd525ba956b97485ef92fede70042e5fbfe57e8e61a52b439b34f7430f22b5648555ab61e752fcc4f4524bc1c8e820203cb16f4d0cc44509c7ee227c0d7e66f2dae08359d9f2f46af4bb1a4b8f79f584b60c608b84ad5c5699158a61c94a464dcd9ee392837b657bee89d7779838745a51465a18852dce06a6a3926ac15d0b5823df6f28c458742886c2424ac0f34730c23ee6f8c4d82832394fb83f2aeaf8a3f30c11d508fb383d825b4004cf0b5b6adbbca71feca7f2582d223580ff5da63c9f0100f9eb08f531e58e4ed207124243a31b1980ecccc154c5c7ecb42323fcbac441b328f48158a4437423607d4c0ef94084eb77f10bc3d879b603367da5af214bb72b31202a6183ed0fc3b8383c2d12de703cf5bcde1f6717f3066d8050f2f7e9bd1479d3c7c059c6ec0d02a40d44fe05f29370d4557da060f9277d596c976f93637b1b202e4fc8cc0aa91dd1c9304709a3e8c69bf7c4682d01506b6e7b9921df1b2ba3ade30deac8933fd113d290f343cc85c0c21b1873ccda8615d58826642ddfbda83f5c806af29224a026f32ddb1298c880d9fed35adcca48d06906bd016b5afee5c3eb7ac7bf4c4d699527b78cb834b6d78358376edfca20a07ae4dcaf9ea65015614d1e2b9e005c32ca2a1f2bdfb9ac499f2fd0840c0a7c6a8cf81f2c6e4ffd772112430c717c633831eb51e67071dbe1729530fb6ca0e408193904c233ee4780ca508b552c26d8c78a033908496b9a519d6d9585417dc10dfaa250da464cc03b030df5f2b1dba26a8c1ba57a12453c4127dfed0c40fde55df5572233f6e7c68c8d03e641adbcb8c587694abd0b764668ad66c19ad205ade22d8fbe79a86b4db6b005f99e8733a5929f9eeb8b945004470421e6105da500e372ec9089a58abb3e242bcf77bea154098331424ca1a30511050ac5326e39a52fd80b044d754e5a012fcce5ec9028ca18c0011bee1eea72864acf64ab0efc9f0f5c391926483c35bbb885d97709f35293d9ccf2fbfed870199c069364960272a199c10d4b2e139d574d3ea4fddb1ab102d02486b374620b9a8cd5e27b0792812aa9e1a7ba151058c0533bd5a0eb1629033c33c62980e64d42c92d1ef3c829f28e63788b81811013f12606668485312311280b3b5480bae0b8c962a3fe44bc4b5fad1dd06b3ae8e7f752a61c3169d7dc5832190c5a3ea1a095b7e38dd80c7fb8af700388cbec046278ad5d2b443e9cb1d3cb6192c08c66bd241968e75b0c4e4a420743984a9ff6a20ffa1d51debc87f0fb88dc25a67a09c8e28a1baf6a8de415e0fc42cb2f97e110ca300453bd3c78bb634b70357cb4e7cdf5983d8aaccab8dfbddd1154c954755228926098a90309e910bff5de138eb3f09e5a7be6a0025e2f0f0f6a4faa27797ae4a9f625acc250f1a6cb8534a5da46e88830c7929473474de5dbdebe89cd24c573b1dd5ef91043175d7abebc651ea847507b815cd1d425e0386eeb9a0a2e3af6c429475b6385a465b0c112acc464944d4d2fbfeac8487295d605d78b9a364307a1d6e5a86b2b5200f6d335887d57389113fa6a350cf2806bc4ff8a6850f9d97feb4762ef9e2b7cd1382e17b994bb3eaba59fbd27b32a518d90a99ee9ab3dd34f2dfb14b3fadc795b4daedadb252e6f1791a5dbaf100ef3f9e10db8d61486c430bd62b4190fea3ed3bab07eca2fb8316432d95f0b0839172a8acc8369268fa83a8ba07d69d02532139c1626d2911652f7865ea32003f80bf5271709aa8943fc2ac165bd74787033ab2f79efc2963b82ea0e56008e8e89a34e970fe9dbaa85b25832a62ea60c9b0b766e130481696042ed12748890612cce6d119e7e2e7b6e6eaeefb63471ab67323e6619ecc79c2421eeda3a388e92d3f6f5a83b0fe47668f3ee85239109b6f072d2c8c9651bfa503b896e8fec95ffb0d9a037011f6a615a6df041bcb122bb40561d9c4047b99dfa119eb308a41c2e5e1f3bf9924e3a642ccfa64ae21356d6ad6388584b9ea2f21efa90c209a3d22e35224532536c3c8b83380084e5d44ddc7081b4402f1b992237494ec6f41944b4b766670e3bbda5a0346881ab1b796c7451231ef541fa32812639cdbd8a09522eb75b164656273b145b797e124867da107c2d73b9ace026d337a438526aea1f7780fc6d89ce788b480915d37e9a46bdc60b805042bf9a70da0fe2f12ecfb0131784edc2c19ae39eb332f8a45133a88584b42d6668dd90219c420dad5b31b842b6e32e2a43448d678a92adcdbf030598b0b4a29c95ad9a88877a74a434081ede46793e4e9a60baa3d6fd6caf3acdbb8a2c4e5cb5b8e57033c4be11cbfe4c254f5febb91ce4b734799dade3d822d7ea904734fac301245a4eeec2d0a04d76fa15ce56c3b761159bb932c06506fd3318e1cc18bda6b40fe5082c8e38e2028d43ac82450a17a573d59063c81c238ee000c9df8584ace71dc6b1b58e1e1f2f8eb4437a0c07885850b62d0e7d7057a5f9d7529b9d088c1990836a531ad5e939ee8915847605524260794cfa387e6267c1d2f0ddcb0475ca4135f50c1c1bdc6eea49fa6b10caa9276c4fde574e7eb32777b0c72ce9e69342893a8f969778d819881a4da1d31f2564d2f1f098e2181c6ea0856c202889de737fe45aea1e006a7485f046377a74edb222dcf2c45e854d751d13912ac1a3609d41082938afcda5a736094c718570355e60104a7f0f817670ab07ecd6a2b1f268928343947dffc95001011f13287709487930285ac220638fb618cd192f8e8af6a98543a40928fb9dd47ea982642c7ac15e0be614dbbcd66ec026d7df8bde8d79d4b57a924f4b94924adf5f83795825dbd0d75bf55b9ca927526e8b41a8689b3e9c7e6cb06de906a70688087b50ff22bb6de709b572de93360d1e908f578568a734046364fad6e8ce5158e56e0663c10546622792b83aadc6cb86ad3c89dd4b81ed8bac461cc051e1f19285e45341b47f86f36a76ddaf8186bcc56aed4c0410b6ad1a952dbc6567bd81012f305cf2d67710cf47a60a14f42f55733227bd46d32a2b483817de026b2b06bd4ddf194d016ba2431a9763d9de6cbb2c615f8291501501a5055265189eb793aacc83bb31c9ce671c20467417609760df3c14444dbe606ce537de7a9154acdc65049976b252f89041172be023597e2b3c3cccb3ab2e4100d8339c1b3cf329e785a4a03b06900dbe6ea8186a079725288aeadbe4baae46388410953750e6287825c1e957f0e91f2d4b3e0804eb07f727bba12fa2ddb0b1b99bd11e23d778d8110b8b51aa263db3baee3a07f26df4a0e5e34f0bcaccae48451ceafb231d2a5dfc7b7b3d21b9b61eea325266d40071f29ac62ff45e70f4a2fb4b9111c840f0ca1efb3858d2dd2d765c8428d0b3ab76f81619d39ac488c4841806c6e6f65a0edcaa8184c468e9e6bb2194ce084a54d8ae6578137fe056d46a023162445abec36f25a01465f8cf550272906103a49057149ad545467032bce78086f39244a87660b557f55c8b910cc5bde70d06e11eb0d3dc01a359848415fd5bc810e65af4437c08576d4ebeb160dc0a4f0ab8bde33e19c335daa113ac735701abb94b4c361a2d6e4bc9658fa8581a053871a8317dd3627cb3039a5dc3b2ea09e7a9c562898f2b7c5a33e8f37463f7823daa0fec11acf53598e4cbe0a0bce41fa699cacdf7abe0a891f165724f3d1af3e5c7f1c09cab78a16a15b96b1d3bbc94df12e04febf7d1c843904c0d22bf9fd374467e2bd5c6a1b7b41a7e1c79cc8de8c2da049eb912ab24721108e847174973f6e8c216f390cf2c9d0350f146036f45d162a5892684550fb25b8e2330cd2c576bf271555a900a874c20e38bc54500564f5deca84f54adf5934b0d6f3890d4b78e7a0d663eedf066d89ddc4e4cccf60fb6432af324cd05d234bea7f6c866028bc54c8a69cae6906dfb7afea5162270c9c85a0b29a31fa00de4a32a4636896b07aa4b6311b19fc7686c8424983d0754da50bb384475183db0724aa3de2dc4fa8d4297a3c5b4c31754c0d659e4778df3d2c5ce3f5c524ea415ac9eb9263ecceb74e26f29d4c3aad5cb4101be1a15e7aeea05e250a69c90e436087b04cc45b766c8343229fc35581450dc3d398342484731a2a58eab1d861b4b6d9b3a2c9260f610cbb843aa4f49ccda326fff03e2ad388e368b8f85d5f76a3a44fea63d413bebf63cd00dd660010fa423775e14a58b36ed3b6cf3a92a6d66c77fa2944d2789cc397b2475a77750f6af5ac82de9b63e7880350a10be78d3b772d7a2186ba88c2845465a4255d0d2b2f42c3114a4dfc7d169fa72a9964936539252fa25980014fd8b8ac54b34a4687783804e66c8b912600d2b9d1d4bc101bb50017dff1b3c94cd1e50dcadb1d88641892a698afc9c1db50c9940119517b39a37f6a98ef99ae60a98bb4e00595e3320ab029a490dbeff1e6205383df7bbbb7995d484003c987dc7b22c95cdd67f09c01234e4cd50e780210157d034353d8aef147de350cee4c94a40c274c950c2822615a64550fa2b00120840d8460c11317f5d68518805e42b2d410e50892fabddfc2078b8b210adcf47b9edf31b5768b5a5b76ead65b3f531523aa7243f128e01cd66333fa49004b76b230303c4ecc646c33e4008d050cbc867fea8091e32c6069af4c13a6bfe1ee19d3d245882f0420949c7f1b01a017d015ce5ba45d17e4cb47c5be682b51c6abff99fc50f0b5596ea6d7e90ec0d1eedac9b2cca46170be8ef77c16739bae91c9f966e6ded894c87ed2bf8f9c90ff49c1a44038b96a090fe7092f5adb2df637cb90394b96192f3024aa50934b9646716a2d0eb2012d8bc07450b43b4c69ed8fa6b864c9ab5f56f37de2cc7483b4e0d671006649ce97ee963925378afd02f22cd13de6495d252d6fc88c0c4389168a2f516798e0b0c594600cea090901e3ad67222e093d13889ae65ae1957810bfcfe86bda5b69a9d39f9c20251c524c23a48de8c8460aeb8a8cc27953d081c030bdf826271e4b0a4b8f3f5f721131cbe90966ea9809326a603bc73cbff485d8c971ec1a8050ab1debcecd2bb8a5bb4952ab4fc06f69f3f8bb618621f043e2f5d4b59e5225d58db2f7ca9be146d9633f195c7f6753674e5635d2abbc59a6b469e1f018d3c1ef5b6fe01d94f81a7cf7f3f8b636b88dfdd4a266ce6a0bc1493dc1763142508d0af94d1942eabc717fbd02650ffde06319ad825b0528cc79ada2b7f476f4009f84eeeb1037b33d0117b7b1c14c36df195fec4ea90a32bf8fbb2490d8bb37ee05fa771119b8a126b3a8f2f28deff00a0f8543785d5bc380447979242fd8749485ac93c83023621077e225dd8647da04a4bd21d5851b460fe7f76140253b29e5eced3729155fe3343e24f7b0e6bece49cd3cbb7b1c1db7e7c9e431f5c815193255da711214fae67aa1cc45240b41dbce73c95808f2d495485fdbaf87b55362f347f33fc0dea0218f6f9378833a1b0f4c4b24f94b8240a8e43104e4d9ad4982388bb00756bb741533ca0b911e1fb1528611ba95043f3be56b380069727f0c0162d16877a8546b6c400abb99e0376c48a736796e892f0db81b02c2302130adc457c0adb90fc69bccb709bf4c71de060407e5774b757f94d41347bbcf454ccf746b387052d5a3d745b8a327bc8e01f2ac893a531d1a89b780a2c470851f5380d24f908ab4e10cefe60b1e22758ac5198e109e5d71f92b0eefd67084105cdcf64d6bc462f8887f2b0e49d1793ea8f08ac86c9556cdebb1e2d85b5e0c87f554471267e048c270a095847113717d724e70a78d6b9c4e99bed75b26d529a64ef51d92ad6a86aa51b996918ab021e32d0c6e7bf1274510ad241ebbed1c5686da2be042e7a6933d7a923a5cfae583aed3edb5fd0b0d67a7d94711a979a24c22a24b14bcf2f26a3c316e86987a904adbb5044abe816653aa3383a97a6bbe5f0071dfa155a28c1eb808f9029d28cb6b1066938162af905dec12714050a969ec827ea7b7cba2634100cc4fdf73f0858ee194cc24b264620df0aa14cb50550a94c00298c231d06d2b9c22bf814d5eefecdc4711de2b07f8b616ab9a367dc80c111f1d088f6ede636c987c892f7e79ce29d269596bbc39f7c624540393b79c0732f61d3016a50c147092cc347cff707629f5f0c312c0d4a81168f0f20d75c7bd48387ac2b7e8c07b256b86f37bc978d04bb9b8e5bbe20c15e7b0038a79cb455c184289add109f2b0992c1e8f592d367f6bc671bedfaa804928038d4f7f2b375ad81416b5c2043ac031d3c2b1534ec525577b0d1bf6487f40f5a11971cd2c6b87f482856182ad051f2e6889f1f0192821324e2a9e3a346b29f4ed4a939bd16387d7c5ff0908277759dc4845782b800d0d7b34ce067c5b3e64c19b92698d49543ebe9e94b8926e2d3c61be8d0b1de8ccb61c3ea6db24213292a31cee7b608a99f184ffeb2cfd53917c607cbe93e6c92dcbbc922d29436bac70c3b81a98fad146af858a7a23f3448f11bad696271e8bc13f71ff639aef1d69362e5780b1ddb366fd1e83d9853f1d2d1299ad538ee8fe6d068a535162f6dcd43de940298c04f6e2bbf21136e1831167046d1b243da5e6b6edecfedac6709dd516d517f00150849c37a538c0af0cab810d333e846799a101d252e3fcd6c387e09f1ac2ffb4e97c0d64901e09e4468a4ce7d405ee47ff14a3edd0774482b0b9eb929898e5b3f6a916977c6424197b3a5a6f8c2710d294d8329bd6eb271a23ca743dbe1ae61d93cf43b0d2fd56832dace5635b2abc7338f2a2bb73921b7d7cdb77ce613234185a07e518ae7cb2321fb9e35bff72467ecc4f7f533fdf672159cae5743afc4ce5d807eb8c44fc75486c4eeda768251a2aa604dcd93434479b0ab85e916ce25f615cbf98cd4160f3c99410059a6b0f6d5303d77a4ba58a475b147c5a3f54c2914347dc4b20baca66c3c1cb77315fd9c8498a1798b3ac2e963d3fdfefa06e18a8f8535602e6e6a01eaafd9aabd4c4feeadaf492e523940e7ce9bf342490b57993dbcb14f63699637aaabb18305229c1be7db0c67042940ca711f6c6e97c4888f0dbfbf700c8cf1fcba026967ae9a71644979ee95f79bd868770d42ce7f08e7405c52ffa0099b6781bf9b7dc339a674f4cd3bb9be086c3a3082e7f5acf19add604c1cc8b276fa3498d68861adb382c8fd54f9d6da760b6090007e7a2df5e8ae5d7c09cc792f8845e3dbc390c8fcc567e42d06b660d06f79ad4a68d1fbb863fec0c20aa9cfd96009cfc5e5642175be5c5b4439065f0a6e7a3923b02b4445574ad9c7998324f538207aa8f061b3c9a5c955e7a64c6a2df22e2b4f4e4d143d6017b0ca2e855cf24e1e8c79bd69415fd81c48588ba8b6a165791dc089e67063005eeeed0f16240470bec3e4f8339fd24c749f44a12484e00f2a89999147059cfe76cce553d08ff31aa7799ca37389e0892a8c9ca367198d8689d90183b8f9718af4f248a3c5a70619aae60e4dfb67de34f2efaa4346d2677654ea89450063b32c05749bad4539a9397f71a48dda3b7fab5db2f76e77e7af8fe516dbceb0455a8f007466d3a11264c76e7f81ed358fd9fcf07288ee7200e138c1f47bcee46b24c1755b397464b80017a955b671e5af991756e328d48cd1f543e8d2cd240e6374b685235f31fc07d671e291bd3ddf789165fe9a7a34a12fb3e28f5d5648856c48212be3094ca1919d8ee5d97735b3f9de6f31ed8bb402c326121e2fc57bf48acd3f82d633044c063fea2f01413aa30601b6cb8b208c8216791eb5899cf9fa07dccd2337596f72d4124ca59ac3dcdabd864d4aca5923dab0f84748185403f9f835107f18e28ada306d06ec1471165f12e86bb13ce05fb8c535e22497e3725a14a8fe96f3ec78214d08e2050d0e5e536efb3f6878bee3de943e9e71a40d4113d46edd56f0778a7e064b7384ab7fe1530728c32743a25d3e982709affc3892917b135b9bb83e4ba11e423cbefd8be612a65246838ac710ab6921988fb5f1d5adac85d6e13bf881fde2d3f44813fe0a067a9e7100d8c96940ae0d5574be9c153e045398d066443fdb3ab85a03d9d0256891794a7ee3254333f30ac5957942c65850d30e38c3658ea5e8b2a13abcdbe08fac36361154536b9dc77473580b0a12d3ce07b7d971f3ca0435372f7ababd879520ccc4bd5c29741d8c95e0404d87220ea5b1128c78ed1b7c5d532683574bca299191b2aa04572a1f2b4279b00684ac04fbc5b113f239f0b8807e441c5edd18dadf0e37edf6d4077b731a875a77b329ef355723606c9b6c0b68d371c113b244f02a06b4be5051b97d817af848df503b57d1ffbb545122899e29147ff47ea05b23a0663d883688fcd4accd4e51b80201ecd02cb5676369eb1a463b6987b2c38e1bc0f1ba643b6c5ce2319e76bfe30876801f4435fdf3f0cdb31cc1bcaa501a4d1709670f5c8d22743558b18fbce070d0f36a62db9f06d8dd4e06c4a48c5daf09d1ad471692d307227bc755917aa5f6ed9ac61cf03e547a3edcb5cde5a5b0b0d26ef24551fc7b32ffaa08f0cae2db585bdf2941b21a2aca6839cd88bbbce9363e8f629a4c783a4616fcc8fbcfd78a392af2644290890aa24450eb9ef07df211332482f9c7ca6e4c09c25e39aa5527354a5faa7a1a15cc73dd2ab49e2cc84bbca0630384c744fc2844ce799c1f92f1a636a401ed0122fad65c09c929c3b4edf97507c4bd0dd690d33b40d0bc15d401b28602f537ccc75e05758af89527c6518b7e4ddab4d7cd6b49943d07bdb54a065d0253e445115ee15da76a9e006572e820a1c95fa8c1190f6e4bde60ffcb0f14c90089266acbcdfc21752c324c602e38c70d55808d611865058678f2ec7c0832aeb46a10e0761a19b8d90d16dce80650b79b8d54e2f0bc0d0b55479403813e80d64ff922ac0d698f07b1075e3702e2c8611cbf651222d086d2af137e776bef07652ecd3ae3bf58f10668e6d2d4c5ad65891d5175341cf62412a5de6ed9fba0984b5bc7f82d56bc01bab914759affb6dcdba01b4b55975c98541f78c7d6db70b164b02e0408226133be6726e4a09aa5aee3fc578bbc03aa518abaf880f9f29a3fd4202dd5bf587807687369ea34bf6db5f7413396aa0eb000a07cc31ff6fd0873cf8b109e3d67ccca24c441194abb0eef035c791eae9e4b8690c1652e8dfaddd34817a587b495d0402018ce10ae576def7117e2f49491997a5873217b1d7e39fda075fbf48f283e012bdd8d04bbc9468cdc46230b37d100b49b68c40dd3a9c63e2f05ed7eba0a8aee040d26d630bdc04902e4de023a036a6a5e40cec1da1cfaa3fad06a50f46c1bb6c7e6715be80819efed92ca9f5b1d9adf431c6cb73f13ada53744caff7b009dfcd91f077b96e531b0ee88e640251a92f5d52908c28988e374c907ffe234de2b6cdd8a08b3bd62b6bb7b656f99a494320c0780069a0627809a223284030532dc34494e4980b83b3e82d4c39844c443c9150289aa8524a687cdc6906db3a9cd46d2b6d6e66bbde69cf33ba5b16db3efe43fafb5169b301f4bc5addfd10577af39cc60ba4685a4e306209494c05603053158e952d8389bda8e7650b1b6ee206bb7b50cd8f6d6f8218f321851e1a905639aa482a8e1e4e8cacea313127400c3022a3d9052b005885149fe6153da3e65fbda8e98849a52f0c20e2054a8e520e37343e74d6d47494b966c800b9a22415a008344c9f5c1e78a91246aa25e681aa2070aa4304b414c89236cb3a91de12227baa876444413b97b118d45041a3116e9206ad5e0d5f8e14343f4e500a221326dbe88443714b9bb3b5d330446882526a072850c1a222d3888aa784743f2cda636a32c6446232254dd501a41972b136e5c1119d98878a48031c6f80142b61849d3438992342df80197a046c9710965385b09678ec6213640c44d6d4648302d210c0d1e8af8750f92e4e3eed7dd6d463fb6bb8f426c463476b8a9ad08887dea9f3a030a41dd08c204a449094f4e98cd88e43c8bc5c613dc6342271419c182244fa89c8098a9c02cc82c48b5d120b2c74d6d432b6c2afab8e30fad37b5d110831dccf6d81edd46236a739bda68bcb0cf9fa5e1a8e7e72a37f6d01cc7d96838194d3821161b9ddc63238f58cc63238f19b95415e656e6ea567579feabbeeaabbe2af61aa038f1aff5d411446e372bfb8a46265d622ce1ff1bbaaac28125848584c584f58415b5edb382886a583458492c2696d3b62fa611bf8835882b10cd883f6cfba2177105518a6845dc22566dfba2131187c8431422221195421d4234a11a914658269c0abb845fc21a422c210a61927085500a912228cf5854141a1585388a421e61903534509ef1e989cc930e4f68d284794279462e5ca87099e2d205f40232813e4014c024e0d267e603e22b02340295acb67c327c347c64ca6841429fc93fa1f21f966dff3bf2d1f886680a4b04e64333ed2f6964d2e7df6ab55aade65555ddaa6e55b7aa5bd5ad7679fc76abdd6ab7daad86c36dcd0f56b71b0cf6d5f34253acf1aaaccc489f5ed5d090dd395935abd3abda956ad7b7ef65ec0eb53b940ae56159b1aca658565d58565f585663a2dc07e569e9d0e128e848a263051d4e40509e160b45b891e360c19b7e9081f2b4bed04046872f57554c284f2bcd132a53ad34544b6e12e5d14098805c1f402e0a4090564079b49494192920a48a90c2c10ae5d16434992d9a8c0c9a0c0d9accad6685509eb1a808491193a2274551e3d393a5f164939e2cd3539a2f9467e4c2a5062e2be06286cb0f5e56a03ca399d18c94d18c95d1cc96d14c95938a83f2b06aac5ae5c1aa5521ac1a12566d0907288f574575ec673434b6f56005e5f97217fda586cf0125e5f11b7d9ac2eed36f300568036cab73bbdd6eb7db57f411217d34bea171c73774bbe1a074fbdbe5f986dec9433d9177fa866edfd0ed1bba7d43b76fe8167b0dfec429cbd8fc86be21bb438b680aba69e85776c76efae45201a0701017af2e56c2c16f0d875c753d57e5aa1c56b16665554dfaacb7aaeca55afaf5b7774d68341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168b49136d2a2a29614b1a4882294ac5a1483a07bb69cb5b762c0bd9718a98a2eaa8d8a819b5db551a0a68688b2e9941aa8293526e81b5c37d1322bd3509afe49af3a569353d56f3f88a668bdbd1cce8bf95f5c9e1bd39a94ea882667e2fc6e9e386119aa4d804da75850db200eb1b8220cc37b82b0af099a30661b28c607ee7eba797a4584f333847c70fea60401ce8f26f9e4e3e0e0bc91900f8e69e47ad2f4bf6349b797ba7cc2f9168e68def2e9f5ae979974f346247973f32435ba21dfe8e65f6fe4c279a397eb41b83c38a62b67526bb00b59efe20a96f86259a2071d3efef0ad8c867fdfc3b053d2dee5a93e22704a5676df55dc189dfbcd5666ffcb32b0e5f0c32ebe49386f748373433ece27bddec8f572b96cdee865f37a3d4e12ec8d6c60386f73f3386612ccc7e8c64cca3e468f6333458496d9a694881a4e7953669b5749969833ddcab095619f521305e32d3abd44b41d9d406ac19cbf9c3db169e95becd79e95e6a0bea2565cb95dad68cd1149fb5b2a2763912ec1483412e912e8128c65c6a291688a0822e38efad6b9fc852c8dc5460b7a6b2d5b6a742884162160c8b5567b6fcab8bb636e4a082372d8755d97bd1b1e60f87ddf07869f1256288aa2c86a714fc6506bad479284e115ba5c2ed7cb86d5e5e6e6e60607e66248902041a244ce6803004213e28a6a428ce1264c882d2a0044300054a44284d92f121a3695e62a8d1af0f342968b0823a21441354391561124150f812902f5c4a3b665cd0d57da363454845e3247742171440e369074ee3888239c844744312149c0a653421ced9b4da782b8e26cb805dd5c7d1180852043479e9811a207bac30e568418e971a5494c51b8710e0bbb372e59d87df12d7358544c450be8ce2c6d0bba5fd50c407878341c01b9f10d91226408204439070f4378397800520203920a5aa21c71c5897ed820feb0cac1c38f11b07ed070c4c39014ae085933441a2a4e576a62f80183121f2f61fbeb16b6ff7881070fb621266c7053db901b3280a30ffab450b7cbc395a9575cadba3a23704361b83437a4ba549d4480eade1f571f2fffea70efa52ca78311f23b58c36e02d58723817bffce24817bc78f3f973398bcff0c12cc2112b8effc1dbfbf4dc01d4a030595d3414e07fedcfb53a0fa78e955d67642c016d4aeb7f5ac97f1f3bdf796a4e2cf8cfc9a02e2830f9a23902f5ed067fc6bae70328ff5fdb6eb7757d7e6fde67decc817f383e2832268e6d8f7cc2132c7a6b144ec527d2c03bf086691ec9e7cea03be3557d8d7bbc67f3d157fba77fdd5b1a5530ef7423eaf077129c3fe4febbdbf2fe3e77bd6df8fd1c10cf0c36f7d0733c4d7ff8d9fbf8a3fdd93ffa2283f197e7ed2ccf1bf8112e1ead41fcb21b771f22a73b828f5b12e6157a78650778c18322840818f21e327a783ef5bdf324700ffb32fe327a783d677df992388e45b73057efff1bb07abd801f823926399635fc8273fe8ad0ec01ff15bef3fe18f36a999739f55f55707fcca9c6bbea036019e192697f45aa1fa2468216cf309406a7f20f9f001ab5a0d768cfd8cf64d6d417a70e68e1d3c086dc36c4194f6f9b32a9aab9c0d8896223b701c0f4c3ac47498e930d321c62306241e524503d8d4c603088f1c4fc29f5e5bd3958dc7900f20b536262b5abbb762501140836c898dd61465a38db9455c0b524d004ecc47648d95951a3c7c38b3a6e986dcb44311c6186313884832864c1411443455e1a62f38c0781396262e60c24d6d4c364ce1fcba5f304956c3f44bfb651ac18d19a68e38a62862c09c5d71930b3bb28c61722a610626a2199850d8bea98d49880d4b47ac8d0929caa6030b7677777777afd804f2bf21086d77aea3293a8ea6e0304d812f4d712d4d61e905dc3ff7f5c31ce7d11105fab35ffecfe9f6ea3d3390ffad405cf6978ac5c2b8c7689061f625f625f6c529a5d4472cfaccb6e4cc3a72d1f94f7ab3748ccccb5375140bfe2e67ad61b07fd9acac4ddb62b37699803476ce649a25ba8ef48b9955cac2eec14e34b39575e6a9b34d02d21887cd73b6c50fdf8b798a5f1fc66c7f30db40e17f7e86e639dbe1c3de35be4a1456c7c6c46ac5d797877cfb30f20cbf3b7f8ba2199eb0fd95e70b6d1d0887bfebbaaeebba8e7ef7010db381bacf5dd9992c314c017eece6e9537f3adabc9e3eec3ff3cb279b77bdf4cd5bfbfa61a4abbc29dfcaac8c2ce91e4bd7913eff2f8fcdf8d9ea743f967a86c2caba67950eb0b2eec5728332022fe805ddd3ee6dad7e9a453643b732ebb25804b55a7baf3b2e6b79c6568c573435c7183435cf7c8ab0c71168fa9855451b5ed03fec815c88f17d8ce9d5f4d25384edf77eb3ae7224f00c1fa54cdc51ca9e26c00e03b11a5733f056f07e13564661f402fa208c5d82fc15e6aeeb822ed8e4ee6748ad8d0dc62cba3ea5b95619a5ce1353bafebd2e731f6dbabafb48025d7f94ea8901f45e56054d21a33d76070c9f7eccc1b26e9b3fcba04fad5f79df87cdbe6b631000c19714be2c6d18332f11b03296070bcbbac59e1e152deff2bc5e63953e65fbca4e1431c97ff43eadbfef00bbe3a9b8a1799a00cdf3f77761f44060c616da11271b060de399f55b144beda9b48a8352db380cccf26c7043cbd373755c40b4bb8268579393ed8874e6d37d6c3fc79afaeaca75a4f16ff0339a406740031e0c816067d89d13866c57114cce0c7217e805f86d57ba8e74ad4ee309f449af400812c1ee401db13ba7063d2ab2098362d92140628232b70d83de76e512503ffb60bd4fe8b894d2bf34dafd79efbd1d9dc94629fc27c6f77238a3c040802ae8051af46020a605460c852c2655cfa726c0914ad7bf5f39349786a394b69feb736f5e15d76d1548236065552ff69d4500c6acbe961e6a6ae9a1377af37aa58027ac8c62d9f631100321e834012386a24766e2aceff8dd524bb19817077862d6b3ed638cc30c23e614454fa5b0ca99f6ad7ba598657b8472c5335cfc27c7711c76fa978e5ef428357ad1f56d00c113538a9f029d4177e377771fadd4b1ca851a63bb71824d89caa6f4c3a6c3c99643698caa366a06757b1717d6d87060b1e168b22959d9701c11f38736417767a58d1d076badb5369794ea585798222e822672539b0d2fb0cff40e31e552d1a15f5a232d753d6e28c9feb2614467b391c38d242c9fa9bb5fb731b4bd76f5cbc6957deab739a1375c9541610a161c574d121657d20c4994503001a5bf7f97eb1e97fe366c95dc4fad5fee3ed7fc9940fee0e7eec5b1cee8b37ebd1b34813cd77a792ce839dd8b8fbfdaa819e4c75fc2da938ed9a259c28c0ebabbfe197437f8f8bd27cbd2eefc1fae0f04e6fab3e4eeee9eab10cbea29442e309bf590f3ec6a7655abaa8203e983f3a8dd9048345596aadcac797a6ddb26d15665c826b5c6c8ddddf17dc0757717137ddd1d7f0858ca6a9f9aca0ffbfecbae89e1a74fcd2521086d0f0860fb70f801427f75eee392eadc0fa1be7d17137dea7d9900f987e0a60704b0ebd7bf35c0d3e6fcdf973f97ff555385fd4efa21086d6afeeb5a6cdfefbd7e5e9abdff3a8ec3d8fd5e6b6bf75f768fd161af7257c81beea562827d6f0d546afbd47f25670a1a2d5dbe1011a6c907efd021a351ea70940d5f14182fca1615256a49e8dad4468589114926aa097603638cf1999ca8a41b54260c5031189870dc7d8d8de770e3ef5e48a2ce1d4fc9224ec142448ef98f2a6293d8d446a5699f3f0bcbd4100439a652d0962eee57f3c2c05b3e16efdb3287037c5613c8fe353978a12db46b0e072fb46fe9c202dd07f2bf227d5923a6b820250b7903c9022957a454216b08428a949428392455a0613fbb3d35d4f9661d058b14a8ad62cc0b1cb62579d027bd65e03ae6f91468eea90bcecc419fff96debaa245dd312bb3640edabe751662311bdc63e4edaf1831626262665e5e80a14697178ef4e8f2829213d9c59f10e15988ac9a29282fc4407e09c1c80a8c48a101439321a741a9d5204910804d6d4fc43c39c1c532685a86bb52c7d59226d0f4cf70534a69bd6766b312e43cab428119120531aa19d58c2ac6a5ee6aad87b67ead2ad076873bfd2907fe1cd8073aebadde85c442621139f09d31ce5dc7fd6d715ba03b98d21df76bf73de2880c2c955137fd4c29b5d40e8195d85a2042eff57be4f54a9142299552a9eb20a1905048282414120a098584424271cc75d9cb558eb92e77b52b4bc431d77175a976e598c335c75e97fcce4e7ab36f67e4927aa97d9bab662c5ced13b695c8269ada5a58b2b53034c32fd85658b38212a982a636166e3616966c2c84b1add0444ea19452b7f7a55dd724dadb3589ce6412dd9149344726d1789349b4ef9a44df5da59049b4dde40b9b3e99445732c9bd97524a290903ae9c7eb97a1c63c7979c7229a594524aafed71f7fbb017c08c8ca2eb53a75e6bada494dbda01a4b59a0d38524924689ce038820229452925a968fa365377422f6001a4f449dfa72e2e1075296d3fe7a8285b134bd6c82a641409033985b4425a21a57839aa93284da8a0fcba5f177446e1c91072535b93a3264efbfc9965c189a6636e63acca8cb98da9d6deeb8eb107d71d638eebb2e77c6dcd1e628eebba9cbddbe5ec7d1f78aff77d20188622ee01c3501459ac564fc86245e9d12e219d24afada45db3c62a59a43576684d9a2aaa3161a8aaa8b4d42515aa06a94e764d1a6a65e5c1a9813d35a0d5da7bdd71b5f7ba63cc39e6b8aecbd9fbfcfbaead5f973deffb4030145d14afade20786a128b2582d91d56a693d8e24e97abd6c6c6e6e70600e835d5b6117245da709d875eb66b6c9ac1c0ef60d6365f601b03d0abd60057de61d85ee250c8cb00b88c54811b8c78c183142840c626b42440eb135a1616b32a4c211334e053549964051c99d133941879bda5430b34f4d0ad19f0af483c171354cbf604b90feb594937dd9c76451ecdfc75805271be3aa648804a2f5a63615886c159ceeed98f860d2c4f9f003a7f11c4c8638264739b2fb5812c6f3388ee37038cdc039d1beeb72c775df759d0fdd75291cb13a94450a4bb2ee4c88b28283035d4841caee3a933ab9e35fead123d6630635f4442369503094d004c54212d904e5b4f3a636a8a51d3b781cd16264cc0c46b154149627fb505207b9a4bf4d6d4f48f55fc6e269e8ea703624462051b3cf9f39d11c472a698eabf258200983e4b639246694481c38e4206fcc6e904831122916236db8c7382354456e648d22351015a1a128a908182232c95624cbee36b515a95929e264d32f9bda50086373ec8b273ffe13d9848e6d3cfb1ea6ad8ee5ea994d1da4163bc6de81da1a2543f8e801ea2a6907cf878d31c6faa535e592029b0b497af801a405a4118433ecd05a732788400d58d55cbfd79d7268d8bd2728ed7befbdf7deb1059ab5a96d88113d6cbca96d88191680e7939b432430a1cf0408060cfad6fc60d7670166bb63eb535a6b2d2b172e08191c495469a030d5e0736b9c99c1e83884934703bf8c878ffd43813c64cf18ff28b2b91f28701cf6ff3ac46ac897ad37b50d99dae7cf700eb39955ce333343aca04608355486a600a1f22220433c204f28608c310e25b5b23383ef7d577a5d17f34aec799ec771e70ce30e2cbbaffc2086cb0f621ba87bee4357099a5a1936b50d18cc0898b66571b24fb76d99b26d71610bd586d9a52d4776ce6ec2beb62d4dfb82ad8b1dbfbddac5439f302676d664d382c3a6b62c3fec036c6acb12c3ceb16c5d469a5a59fd6ce621b4bf9bd9b543eb1716c0b5edefc45b9fc1cf34c59f00f818b783e2d41b772c6fb5eebd57068261d971dbc35b24b12ff725ba073df0a998412f7bbe73497d77a589b0bce587a5dd5e58561da1762de9d3c4be7fdfc5a4fd3feebbec55fb37e86efbb7b359bace7b0f76a62ebee5fe7e2de9d5e1b295712f2bd35686bd9a4b18b0cd59e72c8f733476416bb980f7c112ae22adafdfb042d91df02d0782ada73f8ee3186aad43adb536b3958d1f8e63c9fa5679c288edf159a0d6e3b32a8bc51a595fc757616bc8226baefcb17c6d9e26f4d7f2057b6a3f344ffde1a8cb13c5d60fda30bc629d425bfc2bae107f344ffa61eb55584a77ab0cb29b15be8a0b863d9f79ce5c2668fa677572faedaaa1cfea549daead45dad4b2c76c65a10f4dc11b20b66509d23d07529bcd10ea1657c4f0ef5a983238f85e6cfc3262541b367e15d7ee5b6597103a61e3ef58501b36367377d60f418845fd0c8254e4e07ef8204e89ffa6c40f56f196aeaadd7d0e04ee774fe2bb15b0c725fd177e4a2ff0f75ce4abddd9a66e1bfcbb02f6b7b4795cb21e7cef6d06ff9aa71028b6e8def5b974fd5802813f7eab3cc16f3d59e6c09eee9b77fd5ee6c01ee7e9fe5e8525f15f990301f0493cf824cc1c98c94268939f03019cd78ff3faf553f10551f5412af1393f4e49fe4d49be4d798a9fff55028d4fb7790a6d9779829f5fc52d419631a0fc3a3ff75e590281a0d97d366d0e0bc7f8c1eb5d79f983b8edbd0cef83b8fdddf635bffb5ea65d9513f93b5102fe9d1563d4cdc2bffbd34dffcbda2866495996ecfaf41f7002ffe9e78ccd82fe56612da532fab85e33c68cfa5f16fcd4ee58f9aeeeeefe4261d64e6ce1743bcd1b58d9dd27e805f685164287f12067ad61b07f99accc3e67375918dbc343ed1513c391fd9bda6a659af66c539b1515ec2c4ab6a15d33fe7cd231f4b1d8a27bfc43f77dff59a2b98c591997af8e75d92b085d7f76f6d431fe18b03b97127182b0d6f89647bfc66468ba68e89e8d83f07efdcde3ffb10089f3387cf2f1abd8c0ee7ce5abfc2374f874bb08dfe6c6cc26ec8e8d195a19a946d31d9ae10ba70c7f2cc356193eeb7798cb1c9a27f89c1962d2ba51adf7fb1eacaa1ff8b78c4141f32b3f98edf3c506fa3ef39cedefbb5a35cf281b4b5dd2d275a4adfe10b496f5fd09db2068ce5c056ddf7bfa5fa5b942b9f7de7b6fcd1796a6e7de7befbd36e45b0399e6d61b842b26125e81319a627cfa2a1c6077ba4fc0a67f759c45eddbffc92901d3170443cff33ca08f66cf0b43125f3da030ff9933c85ebbc357616fbdf7de2b9a270c14de79ff9af786d7d41b7342333077bf62ee832cd0cd93b06f79de7db76765fe703d13e8be0befd53d7706d9bfd937579bab33dc340d32ec5adbb24faae5eca92677d37ded2acedf7c5703e1f2bc065beefa6b962709d333bfef9efbc9314f9c12301cf3c6e400ff75615533b85f4def9e259efbd3af760774ffe65ba28b7063dc3d08fe94c455cb144d128f0333972eac84d9c2cff24cf1c58a350913df879938664b0c896c302ce9be37bcf7cb7b6f3038dd0adff15f65f798f5f57b5d9e38967efd1367bbc7688a3c7ecfe501e1eaf8f75cd59ea58aeb523d67dbf3aaa74d20fce17b676a06a479ce7aac9d995c35cf59f7f5430f879ee9672a06f5836c3573f277cf3d08150ac7afb4beee3d0703c50eff848162eb6ffd39db5da85f1c4b18bda07e165b840fa4cdb376a28b708724a8ce6c061d5d6e1828b6f72df39cb1443f533308bd074d3fc3f9d5fefc0c86d55fb266879bfb5abb82e58ad28e614c0c2ec460b5c15d1f6499d8f4f2904f7f40b09a423348e0fee71ce1fc9e845dcbf36eeec1cff9e7deaa33781d08fc4f3cedfe36a84dff7c0639f8dffffcfcfc0401badefd3401b98b2e4e5b972af8a7f71c679e75093439f3eccc207b7a26c79de2737fb97ccde7ccb3ba99f353916a06fe9ce9e7f8f8cfbac4125b70ef5cf6d1d499731d72f90704b95d3a189bbca8342d18462d648a68040024003316000020100a88c3e180409004bab2c61e14800b748e3e6a4c2e9805a3711c86610c04410c43210802214a19830c31863189aa2300d0ce36753c0cbce4a46cd798aeca2528a93d147dcbbfd8493c819978080e1831f73cbd4c5f469a61c1334628a42c1916f40af974c10568c5d8b0dff637e0db46b78d639c47b4e4a6439a0f1e42ba57649a342d63a982cd77d21a16de9bc9dca5c06ae19a2cb7e018a44aba086b46bc80be2646dab8c1848905597c1ecccec84efcdb18cb193d3f75aa1a12c6191d73d5e0868f391eb4f4a4d59774756cbc3b5ec862ded1baa3df1f4c00e2959a981b3a9f8f4c5e2308d903620ae34e601e6ba0a88108ec126d23f849871aa756a39b4e06c15f4ca992a71c678a4f4d6924b798c9d1ae1d8691569c5fe1ec65c32380ae4cbabab86c13f890318c61b9c93c759e7c486f9f2fc142354d5586ca219a0683c9121de15590922c964289b88c8f5e98f7698c2814371c3f5f4ddd0500493a10bf44d17281c70c8a80685ab222870c386960bf08908bcc4576776b0a620eb45402d014083782e33c51809f044af6e0d23b709e4c32bd8597fa57a2e032cb954039ea84b8a8d2e986a823f97abf21816c786e25009e66e6ebe0bf193f2c59434a1fd5c9af858880c74351e86d8b8eb0b9781fd1837cc337c27f8af291afdb89a81c00a31d2ba9492e5203b5c41d9477bec94427ed5f61f5359be6bfd92c3458708cc67c306a730ef13a92ec135e2f545095bf867952d3d0e52f8661bb0c310b7581fb7452ccf30045ffc205cf978af15238d2b0ec2e619c2474b47e62416e8ffb8ae4e2bb99f655856b1961fb49b3b23785f92aee4f8cf1182e9df63259cfc6ee647fa0b02aad7518fcf2b51096be6a5465fdbd2939f61886fec811545536983e750ae4288a8b56c9d72e69824ae5f85209a67f3dc85ae195473cdeefee0ae1cc520d1051d648686436730b061b2688e545248cca900c51f4118593cfa5a07dba946861453870989479752a837471158b28e052c0e88f2e46a61309e196a7ea8d884dc94cae30216168d46eee46b4206fce95409f81ba1f80148b410d1ddc1619b4430fc0f8e22343d2f1f1d3d51d1f197bb9d36a98a28a8374281116e8059ee324880b7162c09aad071f2956744f9983f479a3c7b55985d1c39047250d7d4580b607cb5f049bf9b610cafb25dae41df420414a001994ab5e9760c11ff9af2195f5d998e1e9a2204a8c26ce0db3c65f75c9361bb520c0f3a83391921028c86b0d154b569d437063647b2e1665654f31f580ea30c3406083ad32c5415d240e3091d47d1424f59972f7270067184999181fac8f5552b60d6dac34ce3e7afb848decff8c60ade4b637d5498de9b012d404952c40675ed0236faa2be46d8cea4c953d2ead0d29ec832fce7e7918059f625d18fdc37e7a6ca91b720879958028aaf18c96caea8b08b5cf5231c4946e14687a4a0a66e99a0d1e498666fd3fb8f0da62b26f52aecb0bb550dc4b485fb785c02c64a3c8ad489c785775692b282be0dd8159bbad0790444c31340fd1cc09aefa655baad98d335baba6a1d5b63f50fde1c0ef119d1a81acac861029dbd61ac5de0f788edad01aa81a7c614f2cb5b53927a639ad1c93c9a4d86c4470d5ea410109b05f95b94a55b7b2b30ad51fa0af70ae98e4265a6f81d81d7867f97d8ec5b0c5bf8230bfd2365afa94c14c85711bd924c8d57c089309d6330df21d184f128d93f65111a99188bc4145cf79d11aec5e1030ace2ff7d07c90cf582b62e9bed82a0c1fff323fd636a569b06b601f2c2df95dccb15bd94dfce0c49ad84610b342e34629a462132ab666c53348b182970492d382165e773b58c04640a01ee6bc0ad062c72f2f5940f73a9e7045bed334461002df903868a4d829a92d9e0edf434cdd7f533e5425f36d97041dd2f5c0a1dca7a554a0e1db1d634106d1839f8ad1344ec53c0ad5b40092d49010f618e8f671f62866a1425149988673ba9a437b6fbca1c94893c72f336f474197dbea3c5301f012776f5479c67b253db1715b938e66d11ed0fee89eed7662759b219259759b12c543471ead61ab3a61e72d804f155daa8b75657b2dc8e5f326cd4da9257caedfd49db6712cb4adba1d4136b2a7c23f79a9fa878e10fef95ad2777d22053d1bdae37742d52ed293c13528133ee19ed4a6538f420f88291cc693bce5833eec189dd99576798db29f3a9d9cc83bd12d507adcb7d887b443be719f379e71cc425e808a555f5f66fcd982e9ea50f347d60d6d430be9fb026e2af0146e9a807a3279dea054a17ee7dfb057c1be3728ef827187993c7163c888a05e9aed621d9488cfeadc5f7ef58fe0864b7bae2f8922d93cd58291a20d8189516928fb6e5c0ea36bf2f01817452fe547d7b03b62a3b87ee536d106779fd1b52e76e5babdbed026693915d4fb0aa9524414b53f70474e92cb6044e94009bb5d8394f4abcbb0dec3b9defe86029df4ffa7e4d97879a438766fe8c50ee0982846c79e9a38a0789f63fc634b8d7547a97dc7911a1f95436493a84d51115ad9ef416f5e3a89463f2aec7e42f0167d6e77ee86f7c986587f7f158f64feedc86c0d2d1d0360a489e342e8ab608e108d6efad0533b4cfdfe94c3a929d5908616fde1d3915e2fe9da183898c3491eefa95e02d21c502ace80e9d16b00eaaac823fb7ecec46a111137512d9d03b87c327a6064218fd58239fb4e132550a67ba818eab9f8f5708e90aef83acc7b70cc85d004c4737fc5202cd1882c502c6e1dcde5f1ad80230dd0286f8b7cda14ce67cbedf955a1c5ed24c04819c18db21c81370d01b72af7a6082fb4abe52be13bd1d5e337ec1214e07ff7727b8fcfe05cc8786d62fce079d42ca0b4058d2aa5422c082202e678d2ac929dfc7dddc58824678e021fe3624efb430f8d7364d77531fe2a1c16cda8cfee29cc07aade1846f1b22fc81a7fcfa820a4d3b20c594a30a4dbb215d3773d0cf39138dd18d5f6e1415a4c0f4c7c6d06e1449271ec56d15772d1e602b12c29a95400ccb1fa436e996659878b7cc11585f33745de6740c8e915cc880e3d1923a14f72e42ae2f72a25f681c35ada23bed71931cc86a5c0f2b8e05d14046a3c08b29de495d2e3be5c2b296f2b234b0726d65f774bceccfee510b70d4c5782d675445457852893b62df74b8d12cbe6a6809046a30747b9ec7ecf284185ba91c6bd39ef15c1c7da4fe31c4acf5204991109f47cff936d6b841afc27280f94bf258345e90f5aa1f174df676147dbdbe9241004c13373ea594a9ccacfbd7d1f0eaa2113900b643f48393ffd0c27cc7b4521a9ae696f872ad58101e200d1d2ecba62125c79ebc3cdc3f5ee526d97ef27a0c8a434257e07f00f3ef9d8d7425c448e4d0348c07db04e119df681ad11f440b8691318270458761e09921fc555b319e2002b7c4821adcd18f4fa8df0ffa5fe9272db60ab7a2ce5a03efea9f46e4b7d2498207a9064b0578867331dee5a9d42281c65c38b6d1452a70801765954b62e345cc45c5a0a95ea060d72715c2b1673d874e0522792cf615408f830f047b9f39eb5c633001ab3d748bf56df56a074788f6797fdcd73f48fc911e226af8a0eccb2f9ff2374a8a195cff97507af8b9a4d91a16c1ed0eee8e6dfd7e7fd55ec4ceb9bfedd065c62ccd1ae460456bc7461eac5a11ca92efabb3f4b127ad958ebbc5f64d0c90d2dd10d73ab962909801304975ad2969fe47134e893642d90489b49db62e4246d186ff7d049e6b1eebb1569d69290463b9440408931d5db4d335091fc282113da9c932206ea4b81d985c2308d28d54678f2decbe051ac69d999a9cc3b0297d361ed8664ccffaa9e032362f91088682b5a189772750099e398dcca7979144b9b81090daceb1166a502feaf3cd2b91201bbe2c7a0ee69532fab4cbb2a8cf85faf5cac917edcf0770cc221a3ab2d45048b6686e1df58e43af90d2841869457b657c52f31609afdadead93a0c963cb62d2d8132c2856bd571e677ddcfc5d55410d9c2bc8c76576a21b676d96a84f0680304089a7511deb848061f88cf3802fc00d2a1ae7fa1dcb14c094dea48d24bd0fb661531273ec10c1642700e495030ab9e37aa14cf9da746d16157d763846c39f681c1178766f0df4cd1de1fbe0bbdb3a0bad0048df5d55e5153765386648710e81bdf5d020cd788fc9264324f706db2ea006859e0bc9e725ba5c8880c9cb0483328493be96204effdcb2ebabe1140c9137400cb0500109de1e0df5a0834d54682f56045a30e71f7b4cf39a7af03f67b1a3790e58b66b403d17d7cf0c497b71c5c9e50b8d7b866702babbf331d04ec3978b8c56e306510d1e09cad5b1e1a065f4135c2f606f6d9ace1e5d275fbe440ae9a082feb55d440e07563fc7c90cc8ebd6f970de3c1b37e07afb3a10fa605ac59d2b6c3d096262099a1f4e4c10a864dec28a747abf9b38478ed29e6d2fa1cf54f99361a22e4c10a6d0985d7a937cd74126efa76e2cb8847bf5ee8a3c74cfa8c27dbea218b7d52d3daf84c008f1d4ca6d75612389747766ba71d456141d20790aab426a4175acccedb00168f91303292c59b76220f0537a343a83ae89da57c5ef2610a14c58e4560d9431991381dcb0b11bd7426ce03492fb70e052dc9f574333bc318d5fa7328dad2c94250f50326d34e619221617a7f1caea0fff8f0b82417097a84d9e80db31ca3025c1a4fd2e23708315b9ebbfe7c0392dfe3f7a34c61fac75d2045816ab2e3e69956cf6778c9c128fd2d8bdabf671f948e7fd361d4a252e3b40927372a99eb1f274358a50fa4359cbef5c174a88f094de48c4f950fed73f68ae6bbced3ac7e68da4b22690e3b9c8709db8e19b5d6e4d4c99475d72549994c450357d275d1320bf916b1cb42c736f4890293027c6686c6bd6d55d87734c1dd755e4d14d1cdb8f6d649c54927bbe06c6fcb02fde51af147846d21212fc8d2de286d13aa042a081f6ffcbdf90a2287ca553c8af2b46542a498f298b70e3cf05c9f0dbcb4d425091197ebfb613db429839d8ae401b30808a1b48fab564415749f152207570c12f523905b42fd8bf00c4ad3b20aa9c605b07e0947f2df5266aa3f135aa6b7700870fe0e454f7f713885e230a2b5a1486e0f2e23c03b25a91c1b3ea3df6bd3913a96998c696d5968a7376d53e9b49cd44c61e6b7ad9c872f1e9d3d7903893c480fa55792806f8f322c8254e5ef3d2e7ec2305f813d75856cdeeb567f7bcf6ec82ef0fe9c17e2a19fa9ffd7ad2cd6ddb5ffe8fe8af20dd8e26860eae02e686894c4aa39a7d5e16803043078f13ea6627bf58bb342402ce61241b42570782a6ca276b556bb20773802e2fc90abac9c468e702854f2ab799bd20aa6b1651b94002f49632a91128baac5669a02a2bfeb49565f9a1fc6a031881d30cde1c953f01dce724ca4a8555afb0a028959930fd2d4ead0b06d9b02a9f343c94c02767ee034421b8538f510e58d16f84b32b7597380dfa12c961480303833f2ef2a4c51139f2c9203a5a4f3a2d4029be53458602ad23f19588cdf4b7bf0c6b3b3524a4986d503a805eaa47ba059c233bf32b220e081aaf9472882e864da7def112d40b918a698aa148556022db843cff4ecd7dde149504a040c896df7657e34368c4266e07d95868d2e376d10917133e1c3afbc7bb0048b1b946ca1141caf3684b90aa972d4d7041e8f2812e816e057167ba9ed36b27281adeb07a0300362d38a4d7235f9cc6e2719fbac393425b68c4e0a2b2f696c330e54c601c29ced54d2fa81dc9a414b72aeecbb1ce85d636dd374a9cda504a8d4e4e1bfd7e07093266d1f6484f0d2cf53b358cc28800dca1a61b8575220d3ad09d1efd44d8a7f35e2341fdde858779f3db3a4cc1391bf450285015a52acb52736030fefae80ec1bc08b285476274d8478fbe0662fff4f0628dea9ad2e6ea23e502fc5f0b9433e18a7968da977e1973aa1580db9b92042cdd4dea2265b53c8afd85d6d464e7eec6928fd7b0803a66240ab4cf1236a77788ca6f2a14813b49b873faae8def5e5889d3242858a650babf53fed8a3a9743b67ed3742603ab0fe723970c0afb5a7e0372a23eae8651f8b22bf9bb51af02504006d9ee535b983f20fa2884875d0f3fa8c80ccff844065416fff255f2091f5c09d6af5bae196ed4f993f728097bff8b1b7de7daabadf1f131bb5199cc7f45d3aeac93fefb5665e49329e0fe311876639843564011594b7f0b2249af532f48fab624d677caa1424ab2f0b428fcd64932453c84da3423c8aa3e28f20603404307f49916b3d742b3b7722f2646c5f942bde5dbfc56367a0efbe79517fca494053f2c35d185d6fdca3541be41b9090c9a40ece2a2c832829b9688ce47b5f9ed27008fe1f8e23623016a4a329d16730afc0ae48eac66522826e0dedea5e0c127b0b727b35df6160ebaeeb4a47ee7683c87620c62ddd04f6e02f5c6cc81c7397a0b998403664919955041b93458887c5dd1ffe566188d665e31945d30120037bb3fa86298a8e1175f9b24b62198d3d67cfb6d3a6d49731c4cf2a56637e231874b9004c46353d88408aa43391357ef391f8aed4ccfc4074a52620c6085ace87c7edb49dc29f83c1ff7f93a98054dcea72fb191114aa95f3ab648088b2080de524396c90365a6daf6a7ca6794dd142d31f60060f850a0236beb6d93e519fb7f41443d2b332f13984e3d80281df08868259685a403a2a58a28ce7c2ce0064e08624e09cd97ac30e15a3092126f04ff265d567298f91359c0640fa7a8da91ca8b71d4029380420069da08ab8cf95a02f605754f11dd7a7b0644b3c4af63d5c26d7c55a61587efd09ec8da9daa7623513ced2f08af4bec193dcd73333ae3529e23af912bcb7862e11a81faa8563ea4b235b9803622eb1c672be8bf812417640cc9af62af96529250a93589b29f6884f4e04dc524c03859486496b7a6d22919b420d4b496ccf4af6abbc6d7fe8d0d92cd2a3048fa47400ac18686dfb64ca21ba3390d5eccfdcc9ffe2241801346630a0d9ef47f377b5251820b663ef30eadef702745e33cda3195f3e1dfa95aab306dfee011595f972cd38a17c78d3fbbcc9050fc74d5f78d41c5ca0aeeabcc6eb3f8468ff9a9462903d4a4170d2669b0a35adf54c3ca944a1a33a208bfb61070a415f95052c42714be091545658d0014c06a95b7da83dc6585945a76f13dbe1e901272b21d76ef54c44b8873aa0c2df884e58a487dae526ab5565289254962acb3d1134907a5b49ceff37ca969bbbb6b7a9679a54ab4a368fe7db05e83362e1ce323e66b2bdd721207bccd5aa4b4adb9ecbea12a0d1c88de18856675c93bb4184456d6052ff15b25a96e254152548ee930dc3d2c5bbf71088b4c2887ce8511ac3cda5424df15170d8c22115924f4d7de504a3c5cd3bab13e036d2a29ad8be0401b09784395335be5c91357b8d48bed02f47c9312a8592bf6687ed3b8d9a8ad02f3e93a41f309d58df991fc13b2aa4e09758870d53f01d9006f145fe2745fbb8a5806ccc3ac69d7f583bfab0c9c9b03c8a7b390123a0355f3366bae1d7b6a086632eb636b7228d6699881eafa88db482dafecba68946c6c982b5f11a8d5300050517d966567935ba58938e1e8cd74772194d8c7fa614e9bcf14f0e2734727fc8717e69c3320157ddee6316d4eed427423e26656c2322bb1e642a01e62b45938eac063d972bb8911f544e79b868e748d832e6fbd0ac373c43d521a47181dec1d51f7fd2e69621fa481615b547cfb0880771cf81be9040f550ded9b1c3d5e7eab48e748a6e908528d0e1b6b4c61fec5e8693696fb34f1aa33847fcaf4b6d02e25c45a39b528b3be28b79289b2bd6be0bee5ad670651821a5bf0a9aa35c9bd8caa392d08981e131ef886c3650a0bfb56d89afde105c6de7a147bc58b519786f9bc4e68f62855c86d59b9766a3369e4a8263480c082f770ef72f7c2cf5fe5124182bd5fb49a7f8595aa6c4d93220cd28062df5140a6559e848640f397b67d0569a33fe520b6d6b9c518865af524a9cb495acac8cf262ee3d13a77068c5e7c2d66181be3a98c279223480cefc0eab126890ed97a9978bd9409510a5dc9bba29c9ddf33f6e3844534cbb715cdb95ec9bc5fb1d26e2685b4253d17fd8e85557318025d42f58221fa32fce2401a2766ff4723164295ff33e278ce1cd86f232b9e87e9a0a420ddf17e702be26bbd2c5f84a7bea5c58645365869bccfb44be51fb53ab69c9f4386ff0c6545cdf8fb5896bb99ac90d3a23e15f05141016809c44b2f5c25bb8e85205a280e07638dcd6b1343258f64f1309ddf179a53c563080c6993f3d1bb8e0dda81de098ac36c3d68e217dae8392908f9584fa34310f7ae95740eb84695da3a0ce789afa0a497fe4189eb30c7ba325313f99c5000cc5fb5a23a0202d90ae510970cb9b804f5494b4d3a1aa3fb28b4469911494e548269df2c30f296827132184f13610e60b8c695149b14a170205f0f1c5f78a0bf8905b66ab5b0860f0014539e8c094139e574662941a250765f6deccb663fa1936b541e9bf71a6321c2bb66a273ea46588b9b63a5fd65a6098a1743cf6462bba2d84807e1919c687c00408947e80e129987c32c288ea5c15b92d7d3efb817793d4d3e01684402b3227c97ea77c40c244912427ce416cce72b93448057b8a1d63b49b4b46b13fe1e2300ad1e9fb419007fdf840dc185273e5adccb4319d33d6f482f6006e644c5ea42072f7428b6b615d74cca40f508c88776248f2d8e38dbd59d4cb391b6a79577f0bd5a48d1681d2c19bc57a688ffc15b9c307a3382fce378aeddb9d50ec2238f1cbae34e916719052096df22ff959ebb938c26f5ef1379dd7f988d8027094b4d4b0b2568c5272b9444b9acd71a4ddf888b35e8245108cee5650c124ed3e443d4d3788b5f1c213ad613663d23e3508ea802f05e82294e6f6a69db47911e2ab313495bb282a14a5dda685e059614a936d5ba7b4992f93d551f2db85826f4a2db9df3ef1e33aaf7bad7bcb5b9cbf85c3b57cfd9bdad256814c9df1c2d86f0ae88186002a76e7427bf1db0ce9a4e9f345bbaec86ce11b9a1bf713f570bd0cdc1343b8812c8dfa13d928fa795110d0e969366c10640e9a21c07c6939110e172cefe12cb4d7a457538f04eb46bac5d2131faa8487cfb175b554a3ff5ffec4cd9a001b42bb8b4eaf0edbfae6c82ad5ecdfbd92abb944dc4ba463501ea05f6167acea7138b6bfd69ddce9716f4ffba67b1a32bda70d507c474f5c42e8f5e95f4aac9343856dbb9448f0040ddebe4a5f9cb01e74b27f56e00f46b688ce1d2052c2206927481ae4b676c91f3895db4b78a0c74017baa3871115aeef491477324911c0fdcd00870317b402980ece518bbbedd1e9d561061bb04515abfec0b3a01298649b01cfc11bda2b2000ae3a9bfeac124a5fb201ee948970c209bddd0158c50f32c6990329e93858ce73e2fc8b013c4d7b7a245c40a22aadaa21664a8d88114e4be4d9f892be90b024d0f10bcfc89d0ebaba0c404af98fe43dc75d6c3d2eda7e5dd83dfe56de68afc054d814bb724e25f2e25594dd6f851d59cb116631daa5e80e93623969d0914461ee2691d305c12202b2b6a09d09677221cba539945ef331400ffb0bbd7be4449360cfcb1b5d8cbc362090a48b2eb852bf2640da20ad04ee47c11eb097c6042a368b3ccc5981518e484c3c2e67a6cf9e1b25bf86adbd9ab283d58e899b6ad5b7ea9d4d8b38fe96ed9d02166885ac8569d323995b5cef348f6b1213dc46bd7eb8cdf6eea832b80932463ee35510fa769d1bcad983e1f053d245866fc23f7496f626bafffe05fbbd0f236668570eacb369281428771dd7837038f02939d810683b81641f2dda8db6c8b28d1aa6b701880c30ebac9d2dd64e4018782948f92851be909b392e353e354f58e8e90531b7a90a3ba85966c6f64f1aae22e1cb4a0c24632c6ccd5987c8f20f6e8bdf0006cfdeafd6e2924034e899f24c552167b09f2d4e5eae8408b722293c3dc94c34eb1208ea7ad50fb708d330801b0cbda1d01085aecdd74b70d4ec375a9e7730a8cf82ac5e41e7b2f96c4a1e6cedb660853b000994d48eee850cb527d4bf955b99698762d7a6de86ff4e6b8307effad74ef80cba62a43e41e0fe4d3ba2608029dd55482b5680013556454dcbc8cf1718ae75da60fcd1ce4b8771076c49af864b071ff7457b386b8688a508913a90af8b5cffba76bd66f1870f41b44c922f6b8dc9f40d83383eae92ea09e7b555e5fd8eb851b21094db6b12793bf240e5f09a3c5e3f4b2933c35e5c3d70fe12c6d841b6ee25b0dcf53f8035964def98fb680d30827115f194aed42fa858589e6bc61877f00a4cb091e38b2666209eedfc3912d0833237ab4f6e41725087a73dc15bd55d4895e47c1fb36b26cf428b465abb1ad925b3ebe2153c3d815b838954892195e169c9e6957a58ed257369278655cdd39c5dadd4c04d0397f335067f3d787d88f96a186a539d673ea5a3c46a5814a833b3a90fce4e75445a099c63cfc92aa67e64af40001efef2798017e8579e45665db4d4781ca6609ef0000d1700f010fe4e0a70802f6dc5bbdccd11e31e1e8349f139a032d5c40acb1984aec50ffb4f9829b485829b10f256cdc035261e04fc9ebd0e1986be662962cf3b64db5002b40e76827cd9d1ba43300e6ba46c25b20403f3c693e95be78177102fb9c65cddb5e786c049203dc81da6451d76cbc02237849f68ed706aca8a55169e25a7a60ef926be280237c49bdacca5f10890a4763315b259c018b1f3a78da25ed0e9d9efd1cbcb17e27b569dbdc5f70f88993cd408caab15b42d38be84cec02395a801160f0b2ddb9d6f46f1d47a6b3e4f296d0b1ac7b311b42fa6d936eaf66460f0c4829102f4d3b705ad9eaa622599a0f6a66d0b7b634137e894a836c08ef5193767218c2eb4dde04ac56d1265f75f638c8c710e104d8f067bbc3851202618df9cee90336a839c03e24037a27f29e8b832b3b6482af01500ec20c5c5449cb415ba0e4b4b745f1906bd48bb3cffa792becafd76a1de082435417c8c349bd40feb9eb3c872bd44db787854f3dbe437d57b8be98558468f5a3841a3dab630b185ee918b840bcc4aca282a490bf5ab8578317764f18ef860d90d0a289050a7bd945a88ea1a785688b2db2581f8a08b41763d94666919d63d566b9bb11886948f7dbb87ffc1c837cf78812f9ed724917717344af1a33be0be857c114544f44ef7a5c64cdecd44d0c712ea6a00d9cb93344d86b20d1e5c06c2658daa4cefe6b830f42b1c421ab45b93176ba739261e98847b61b09b43bd705d4bb0d3d7ef8a6f1c646307ca8bbc74587bc4135318fdb6d1f24fd8c38075195619f19966e649d7f8d11f7d9f3b7481dca30a93ea9f3cdcbe2c05e972090de240b69b9b6345830d666dbe35e2ffc72f0e0a0819f75477acb2e8c0c2ec1e6d31147dbad9041d2ca60a5672cc70735a57566b5c38d787b18abc3879c4190bf5afdd2cc8fc4f08cca57e8d155278a849f893c01a4dac0e1c4a7ab7791db029551e0deb20871584093fed925a26be936fd7a97aeea6de1ee0384905eea32bcb3b2bd24939d37b4fcc92eeb671ff3bc2a220fc5faa0c4d8bb4deee421179252459654c70e8c8580705cb8b44c6282061351803e4e2d4d2be80e4b1a36b845203aaf13564c43d8264c7bdac51706a4b29011417b20ff0368a9db25c869de2024681e565ba1b07b66a17e56fd5435298d39e27438ecaffd12b4d5193f083854d5e2e214b9724e5b3268b8ba83e31eabda5238b1f139b80af2e1dd913aeec1c09fbc1ac06eca30803344a6b6c144590fc335a435083288b46a53b1f7e6d6b3d7e4b784d1a540679ddd84b0da83ae50147b9cb82a9c4e8610de7238ecf984dc59b7c948f0931009d0bfe4e8d18b79d627da4ebe4a4c80bf14d2767200596b1aba8dde6494e7a37c7b264b7a3ed6f67c0cd123e50861f4cf831840d2f6e2fd100afaa143cad1c1e3fb3e06c1bd462a39e8739f109e0ac4478e7b0cdd337a413678847bb59523489776f2b2be6cfb76365957284b19e9f66ebefe98a769828ca3a9a0b560a48c1bddcd7307688bf03d1df631b3cf0d69963c0530bf93410fd11190e3aa9a6e50e9f9e0c3a2a9a42f2238dac1c180bd5338abc4c8b85a80f758f7ae1e783e8c401a1def6c650133834daf4a75882333988d131bfed887ef198d783b3ac7842954348c350749cd62aab48d462a6b58c4022bbe29c4096ac459afc029c0fba287a4b144cfa33a0d765fd2710e7425a2e6161c01c9207975d2fa1f180a866793708458063a664047e08ca8a4274db31b748b14e2d1c0a88629dddaa97eaf4739a227385e10e41e9c7fc1716414531c4f9214a748629e7dec7038a80f5bebd1e0ae92564f0c9a06feacbf78922213520f83337128f1006d2e0acfe67274f1f75b9a40a26420ec5bd4d797b877ae0c2ac673c12818463518914f4cac6f4538564714cbaf365a4ac1d13a8b7e5b1f0b88d78a836484b75dfe3766b169eacf38031366a31e6b44966593d7962e64aa4aa1d66b6e616a209fa218bc7e3dfcdfbee968afec51e3b604f4e712a979f7f2a07cbf110e2a3829adaac3d254d1f7239b7a3f6f0e374fdf01d6739742bc00bd0c2c8c799eb30248366813ff499c3ee39be3755881b3bbed615ca42f6e3c913245686c3599ba2bad4bf2ae10ddc3b713c81ffcc232bb1c6a1d4dfb6d8c91cc256aad31266b8fea5de3bfc2933c10acdabfe5d953ff0d04f9e4e46d86171f228b587b5d0dcaf3ec7125a5be16b78098cd845094f9c0c4dafbc78174566d97bf4d3d9c9f512d873ea888374eb8d311e4ceff10cbdc6ad5751c7b66a5da54f229c89e1df431debbe59896c9798531ff2dd33475663ae0b35038fae646e00b3e11b36cf3414583ecb2eb42ac5a609290b8404f6af0946655c2da04a80a785e3db587a5b40e8768a76c93c382555fb5f0ae5dfe0e2a117ca20e23379899699eb965702cd761c99023c1593fc3b0ecdfd83b975e3befb1648e6c6f465ff83e72c8b9e08217e9a250564531aae205f0cf7f7e73dbef43b7d91606e0a4bd889e67cfad1f9e18da10347e82dc9643f993aa7beb93c332c2089d2e82065ecfef1b7dcab5e6aa3d02dafd2ec6e4c88177a95daba51ed07612cfc001f3fa646e1190c89cb0dc1506802e84e5427b3cc477fe5400f45f907d1a795aeaea6919db641e787bec83f29029f7dfc6a419c4dcd032204a26561338ff94537f8e2d1195c4272e59665b7787649c50ea35a642068c044975b5eacdc94283796759329c34d14ca1c2982ce2f8e8ecfa8141cbdbcc397bcd71541f2f7efc2ed748b82a2121c628cb760c177016fc26e100182b89c7c44fd45e7189b379c3801cf8c59ed12ca8616825ed19393141d0b2d42b8c17e8e22e2f2a35e3abcc9fe913a44e7a7980b35a5a977e01ceece8490c6e2718456631a69c1ed1788afa5a84dba96f371bc3e0024963f61ae83a8b5bf98fbccdf3a4b6e0378b2397798f83363a6bd356cabb23a7ddb878ffb7ca4d3eddb4addd75506803425dcf206cd79a428d031dda6f580c173301157af6f0b7f0c9b416e9cba575210bb0877c74ceae8ab8d0de7651433ec026b577e1e473385d8fda3485d550f144569002ff8ec39f4dd24c4cb8a3dd75a804609880557e3178983006108b119438804265d934aba28496112c2d70fa380996123dc8af7f2bc2c25b340e74896dbe11030fae41ebdd88eeca8cb4e308926d9f7e4289383c74a12d2356f456a97925a57e9887a0efe48c640697f8a3916fe3ea4c9ef2e917a70f775cf1cfb8d51ab48979fd771dd8ff72bb5b07c5ab069d4f80d7dac0fd6e876cfd90a5a1c9bba894f92a6163c1cb41c0147d8dde2bfffed961b2804aa81a638467efdb90bc098c605f9c682b813cfaf1baa3b484342f96d919bed91cb18fb86b6503fb5af0b1262d69f2431327bf1d10457b31ea0396457be7f03c54e75cd01791f9e30896b0674ea75019643e6585fe5427cf2321ee97e0005d80311d821002cc6c160dd9e54fb06257ff69bd5b11cec15b2536983d8643bd77d27f79954d33a0add37580d81e2e07f44663169af84372b99b7ec5e11b7e5b15fd954e86bd5b34be95fe97a6c3b44be3b41f7f22bf97da4ee3b72df060670c7fb6e9bb51afb2a00b06d1c22138cbfe57031577e2b34b294fc3b3d7d1ee66a676c7e7e1cc51beb61dcce25ae70637e22e3b12508eed8839046143993fc5aff2b99e78903412e278ed05beb3c1d09b5689de768dd946ebd1133ba885a60d440053ac06eeb6929ca49f7dca0b9658ec14faa52529acce9dee82f5e7914ad2665a7f5086c7ae92765a0e883550743ea4383f86c38ad12b54457c94c260e8dfe0ff08cde169640342db77054060a9c3ed839f618f764702c75511bf7d703da42fecb6687dccb82f39cfd4b2d7af2cdbdde76ec5970321013190f9d4acf84b6e789e9c225b4c726da8ea9a5e45078a9c8b5e17b5f7f05d88fd83fbc6cd4e347247d96b37a2fe0300aa1790480a5f388b6e1cf140880069370cb4705cab5a4a5da9875c3b007aa25f65ddf2ded930822f6218737704bc6387c7b906a5d65b9c1d5890c187e4bd21bfcb086e203792656f5d3e78677794ce1e2768464aa57199940620676c83136ee7175169390e012dd1cedc1faef053ec5b8e4ea4a122d0ab1bbd8cbb84190994b0a41f5cc1b04aed3f5cda2294e13cc9eb0f6ed2354cd9f503bf14e22d6cc0cf8249e9c451dc29299c2f71c4aebbf46242266438dcfcf27ce410df09baa8262038368b06953b335faa8667104e72502155465da0424255ed2d8b6740719a74faa08af15102257f7ca1e48012b2513912081e92903ad7248483e46f10407935ac81a09dfd7bd59d00521524cb921760831c3caced26c2ffba6e78cb6866238cd6d09e39a2113b162e28bc9978b7536454a50297c45b59db6a801451c12c51806ddab61d05b629697aa83e52bb5801c3021350c8790190fadd122e26141f5570c4ea4b772d8762a070da3a0afbe3ed030268c330e3ff762ebb557964c05b8ea5cca423fd7d4f815da92e89b237c0f40e0bfbd14f5df72016eb68d8888146fc8cba62e181d9d0f6deb749e882caf4d895deb79dc5c28b7e3a51b5ce17695f5b8ac535ee70d789e1cfc68ee13439809e21962cbc0234456f6359e48e7e53e0e9ab42d1bf744314901548b0be6d86c01f15fcc8baa624f9225abff879b9d5b614576645ff1a0599b74cf5fd8917ea59189e3395516a91f7706274485c0901544c162311a1653d1b058a3c323f633ad693ab3a8d7e90281689c6579d1cf41901b6381a528a581d17ced0cee1896aac2ec16aa0674c15171276a57f8b0096c776cf0c9518834525936079696a79a33da710e18146e9868a9c9ff0fdc56c16128fe5950a22d5aeed99103a99926b7a14dfbe6ec9fc1f2b1813bb9cf2e6389d0bda942002cc65a3947106e2764e22710a7966ec16a81cac0f4e9fec102b9b13e67c0128cfe8b4dbef3f356da7a9acf81aa68332c503b522f09d649aa955479951cc8c2d22241be942315891969ca0eac448640de8de91af0c50e21546c6a6c3639aba4fe8af567dff2f14c49d8f62cf0978a36ebb7aef703883db0b1013c062902f1bf09c5ff28cdbae88bd60972cf3c21ae50a4674ef3761f7efaa03cfc079cdaa2248e8db2b4b86635eb0f6eabe65e5147832b5e21aad55535b71e1a4c5253a24b207b25998f383de1458ff9de5b396d56be1f60a2084eb145709eb4d7faa0241e0ad930f351a231ecb9238625d44ae4a6560c3b649fe84a0a9ce5d105673f8abe4b8d98e920a94e16193b2c8d289e047b07b6957ed6398d454db60ebcb77e97441cd4963d0ebb3373bb3fa3602c4be0ebbbceca8ff19855e936c6eff924c21eda0f851e97aaeea4e6e00a6ef19325284baa5c233c7289994ecce76415a21b5eee43674af2fc76672e296fce3cabfd164f2d792892420585a9ac4bf5aba790025288f30a9ddfdcd7f2a485a94c314f009a2d0efbca80a2acade562c1f3e381d8202119f763b97e5ed5f832012255fdd8b875aee906b349a40ee58cbdf445ba76dcc6343e9108438bb3aa76816de858a5c83d2a84f4c05336f6ee308e2f03cca814fc72add4c6f81ea3742bcc76f87c78fb234def1ac2dc821b6702d17e2f1a6362b301d7ce6ea98f1b20f104f4500063c0ba38ea3e3a2c4092bddb168a44025baad15ee991179028079c52721f1952a5fa300639c532f6d360dd6e5c3d2c4328298c67c68d13bfc7f35a9c9d0e72c15acacc1694dd27a409f5aad7e7636afe0b87835128708a191bc4ea8580b796bb8ae4121543aece3dc906f17505ddc4ed5b1d7c25467ea857cbd5202688e5799879180e7cb18898eca57bc031624dbcc66323e1bc4903bb0dc60f96081cb12970e4dfbad45b3b83292b4047f3300650c2996c440adc0b18091fc64f2da0a29ac0e1d35d4bd201f3c617f969da946b83774e8fe373872376a26c0214f4a19cdb32d9efb6b2b37fcfe3b6714fd3a8c256b717b38a27af70c53bcf29a8c139784b11dedb38ff9564cf8ca42de90a57b3e2d4bf4e6c59a5ce025b7fdc96a656ede99ecaf778d442328606e6372485b0b5204747114b779d9a6277b7b027e96eb79113d0fc456ab157f3c041d351dde021e85f62d9d76e68abcd172e0d04d930ae942302c0bb220d45f12abe5c13e9b3a9e918956ca5835d3f80f54e4989c86a1ac1af476fafe73dfdf3fd73b5cdd9e69bdecbedf1ddb11238444f369378d9d059cef1a121cbc47cb30469cb6f986072048e0d578a067964080c4f752f484f5bf3cd75cd5dbab21294e6b78740d2d9a16d9056dd58be9a765f39a47d4a38978017ae4c57f17400f0a3a03b048125b7e6f20c6efe61fbe22f4f0c9a6b08eb86fb08b04712863d37e758625ef613321b736569c9ef55c45c94f60bf20c0d4f037e4417031618731b1e9ea8ac34f134ec6e53ee02118444eab0299b733622d9a01bbae504471802a1372a85f526d3d50d21c3e908f0a42dacc450f864edc893f0291e022fe27f0c38426e3b554e1e8cccaeaac3e29b790a2ff7ad4fd2660285c273df8bf434e883b6bbafa848cd86b8201fcdffce9c05f5155f38fbe39735ec43ac8eacc923da2cb42ec536ecc79aa2d72c1255381c3736f65d6fb7145087bceba392f1ac68556e1fed7b2052f8d2d696c34e2861d47cee6cfe25cbecfe236c6a794b6580955bcbbbd6a9bcea1420289c3bfd88f63f8c7a54180b585d1c69b233e8f76304fe7856d60e80fd22a85efde075592b172759eab8ebcbe7194f28c0f62b337bcd17902b3d61c0a46cbda74ad528517175c4692df1fb38ffb29245d02d77cbca6b98433324f1320fb0a1755f414b28170193b38d22cbc2a6ffaa5d41f409bf07ccdfe6e8125fcd934389d2cec5f0c4c83f143aa13f03062e73e13a6ba06e7abc3d53479f5ebc40a4efecd781476c757efe8ce10685761e4c2e292dfff00943169514aa9853c0fcc6efcd05963f5fabd0cfe29e9ee04a19b7ddf303edc17d8ca99f59c34d72c08eeb40ff737699667f9b621e93b86b22c126bd2cf1e3b5cfd0c9b9b67b496debf5148b65cedf5e6bf00fd6b090f394c0320decf269ea02644d4d5aee709ebd97374d1ef4c72de7952dd0abadca2f5b703da28fc8418b5de99c84094a959a8e7b7e1e7d7cf5620ba34189bec1066c46b3ecce0240cbd0fb83a60d19c1f1a091eb8689c0ca021791df132b26ce6723c3d4dcd2170c1df271ac810c1c3f4a792ca6710e76a78f5beab7f26ebb0d81545451d164629463f7469ad2e5f3e864ee6c7f57248ad406db0c59416db93f98bc275274b6fb242ab9758f18838b1b8a938979217ee43927dc819812c12846c34159a9dab6bb1f0471dfebd662d1e8fb3701dd7151885e3d762d13afd446e395184559a4fda4c79b6f401f6bd8f447ef6402e744356d9d67be3cfecdc1ac04f5b2c8c3d2f9acb1a734537493ebe2e9d3824c8bfe155180c79940f0000b7b36a2558879800ad0aa5955b9f7068a3608666ff76c8d8008280c84fa3cc18973f5b2564ae133ba6d70a75aaec24a4ab0fabc1df58d209dfed88097a137fdc36c65ad673d4d55eacb29df1034b127c9e52f8659a4313235813101d0f256910dcfbe1245051147f011893b1c4be5b178ee6a3fe158cc39d732c82d65ef2c3d0cf04c2366588f630217578e0db7eee6444baa6ea5283866d2093e822c806fa9492ed1649adf03590b0fe9f9490ff503c43e045c0abea1fa24f0ced32a3b28ae2870918ae1806feacce5d2954d40161655d3a0cce8c4a29625bce4210f089c9a334c8cb1c2053609a6808a749e4820dfbcd9cbc5bdf81eb71539060660cbb6a2e36ddbd72d4d600194a0c612643e25dfb90107bf993f4dc056ce15d7f4e923e2bba805c96dac5b9462443431e430cd5d842f61c83e9504b38667f067dbc22f98608d4f0fb264cc8dd1c8ac510f22240a0a9d7e710686f936a01f98d107e3f1207bf9012d0a91338ae8924b22372922e78e89d6bd25c05223d0af228424c51aadc6cd4152568c093c439892bd9f2f7190d42f33ea4118d3d4bfad4923b2972100faef699840d0459d30a719d10e3932048cd08636a2c60674bca14329013bebd41061029f4fd56143a212dc85ede4c0cb01257f697f7715ab84e841a959d903442314abfecfd8dcf825baa4713ae62736ac3e2c498e471d2ad4875b20add420c17b8412b5fcd2cc176b6a15983be9d0cf91d20dbef61c0ceaefff1792cecf80b0d2a14fb6fce2397709c93f464511c920d0026ce37abb510d9119cce3d300bc58a98f25185e745d2f6b64428a826d433c0b0f81a560d725547dff0a1306f65e948a5ae8296f99e1fff37cc1674a6e1163205929b082e6e2aafaa9f50eee5804056493f6003e27dc69c7fe213225bad35c0c905fe0a96cd56cc8ed139042f5bc9187ed13140b583804fe421f1c3b27f9249d2a02c21598de0b908e88263a0e4cbfe9e4c72ebd90524a57942fc361770fb236824db26813b89df7836891090b5163133ad5d8754c192316c588d8d9606071f6a954cd6aadf7d3cd562ab884ecac2469b893ca325b2f2860cabd9f3eb3eef573a53d8f77950ebcc7593000716e4ff2460930145085e9e99a4b2375e502a12ee6b7db8bfb5ee3c9a0640165dec512cd11daaa028ff3ae9e1944f38c162358c482d38c4a8bc0bb509a434e8bc942055142044727fbe454838432033545597cc844a03aef79ccf2ce89e3f0982ea68cc95f85d01027aec433fac83db69ba7bd88ba914e9f1160450515e710cba952e43b589e2e5c9e0e1fa903dab114a0e905df7c663a562631a3027911bbdfae65b5575923c05574c8b954548a0650a91e65958fa18cac244a237d50941f23318abf9c48e6166517ff9364dbfe30b975524000aadbb00ac08e839362c920768735da0809d9ac980df6d78edbbdfcfc1882e634f9ee38363fb9b3c59a9c26004296fa0cca5363ceb7cacf0d7ef0cb1d2cbbd15702006dd3018369525be9b1848b991b03f3966efd6eb7b4a0675dc655080c338ae063f5eeac173f7b7b7f201db00ddbf03b7e891361823b7f90031f1ec754add1903bca1c11b2333d7307da3e2094fc51933854830538f487cf9122ef7294800390bd634466cbdb30bc3c8eff78781453ccc4b9d5efa13b2a9a8b7f0dc74b742b69477c7bb2ebae1d6cef1169133d286f2d659c590e1190970d5ecff9e9ee422e4f68a0f0a363163d809ee0938d5deab9dd790476c1f43de64b4fbaeaba9e9b9015cd28c4ded19558272a7920f6ffc158698d4a679a63d4386cf9e7f7e187de276371cb9bc555cbed9bc89ec44154cd9a88cff9a30afada6b757279be9cb22ca3f6edac15f4d7391c0b1cc7a9104b7308e86aba9ecb4f7fb22855af00ff8f185bf8cda851c073f9b916531bd0a0cc9053e515733651c87621b529655699bf53d7f0ec299ee0d6780caf13cab9fcdcdada7eee5479a45c4c047212a3c844c57f3f25a86209ff97fd49608a21c0cffa24b10a8fd0faf753822896303977585154ae09517c448cb683a5b98b0e3e628f333560709e5863a084a7e3f070826f3a34d7384b96cc2a3993f43df753544bddd23644637dd8e2affa49674f1b42ad01239a90f0908c1a8d44ac7278bab9f726b3a2092a3887f1f440108d8ec363f96643eb9c1c28c2ea31785eca9e9841e65e2d5aae77d30b352d6ecb2ee1cede73209ea43485e7f572a4083c1f86856cbd82c58606954328f8d3cc96b0142cb1b3cf9567c890c77844f21ad2347b8c6480d4908ea1ef372efc500a1c09163b88466757beae43d2053bfbe8464d1467671f34101c22b1fe83d71050a34a39a20586c0db4aa1ae5290ed606de1b6190ab647ba5864dbead74ec7854d96d843997d1caeeeed4dff0aa156f0aa3642bd0e94ad5693f64d4c3a1bf051075f118325cba05c6d07c88311f5f613c0eb7ab19db3c55c1d5699fec381105d4adc4c50c61536622cdbc048c186572f211e00e3a03bdbfb96f6703ae26bbeeb1247d06b31d723b1196952de3b7ab38528b0d3e1ea9bc9965b0ebc0e79785cd6aaf8f66e1ebe294cbf4c0c28cca78b73403f285516857f35947a1d282b6d64ee75dfd4b2bb71bb939455f156e161fff390542ab5375a7170601ef484b6f8123f38d8117b86a6e23ba37887204734dd7c58d635e10257c8b18588e66b94f4cf7a25cbc583ed89019f28e814689742569960b4236d5f42ac2a1fb324752bc494881f579c2acf0e9ddafb5130e5d8855349d82d9e8195e1ba876ed2143771484149038b43c51395f6456a4cd8b241708612d16b4aea41ed4483bcf95c4f4b5f04d2884444f35b1926174ed48012f121434290bc9e412b59f705a3ceefe673ffa1d36cfd0b2199cb2721c63d7882a0329800d17aa7a77feaffd3b6f4f5b39c9d9802877c8a05f4b2d9b06cdd10cf60c13674aa9571054e9194fba6631450a42f3dedfe59844c7c3e94eec986fd1ac5e773bcf8ab4a88e408d85cd386504fb3f58e6eb53b8f089b1cb2194f5eaa2966ddd0c9b744989a418c69b75c3eee5976f2ec515d11a52ca5a56869cb809970b849e9d2b0a5ba69965d703bdafdc45cafeee29d69b5440b800db2f96ad4d0f3e9990829dad7a639e8e2b38ecb450f0cc9a6c72330448e6e9ca3e4ac985c63bacc375e984c08bc59c08f9e4f6b69c08c29568aabf6aa4fcbd6bae2e8bdea1799aa26b8ba4ff945a6d629ba5dba67792697fe2ccff4d29fd5335ffab378664be32ccd04a2d567821233577300a3b61868c6c4e102853f7078c0c1071c3e60e002070f68b88010f83ea0f08051217ba02b0b894cc0f5a38ee160cced7cfc35689d92e8b1049b3a82b7916a5bd4cbd780c7b603e26a41980f995a23f151d044eea10f79a620c6d3333174bc591cda473428efe199f64e996676879d91948af802484f971e252c026f3e0018f745a0a6b686f72f8f953889ed23cf11095034957c6735893de93cc449f3dc4306dce40315114a38fd9720b01d608aab5fbc0f64beaa5c8f4c66baf115ebf79205019b22d9479d291f5b021de1fde321acb67538fc6bb24ca8f28e8fb2618fcc761f2207b47091f931ac810281fb39893edbaf603c3a33ec41e37f34592b34f1b83bd38537ef9142461283030ab7c02c7e6f31998adbdd334df0db3cd2c2af823d641272398105a707af55ab8d89e63e14f8cf70f07d7b6f0f328bfb8908dd40f2c0e6344d8d59824dd51ffdfd5125a7b131fc75672277224a03008e1052a37c68032033e32b8a8cbdd2809c22483da031255785b3a26766ebe69c6f2ec4ea93f9ec0fc65e9857e4397761974004bba54e4b6774bbbfa39b6344e1fe9e50c350cb08962b4641c2c37c0d9c78c878ba8da416b890dd32a7ea1ac89cd5f73926b1b18a2a86e60333c816bef23b25b0f47edfa6fc1a1d45a95715375b8fcf3fde35a02472208dc4ff73d4eb4e246650a1372e588218dbbafffbc8be2793eb71906c3559a9c85c851bdde77e0c00a522a38055189c1a8955f7e2a6e9c34896733c983c4557ce8af3073ec535321c716a934e1b1a050f012d36a7a8812ff663768056b5f23b2763151849ea18b7aa3fa78e1c055384133d0e4a0302c716e07b77e56f022f1a6fbf9a3ced8fed724488aac899bb9e41262fab1e13020950eac5ccd864a13cd93ce45f9f594d49f148aef84c059544da9bea776aed6bfe23d5e087938ff4bfa21f1e5f1903f51d140070ac8f839a6290bf9d4cc91b7e4ec4da4659b31e9e112d763f5e640929b7a5514076790f1bee903999527d96bd4ed8295edb2765954b6a0e386c3286094cc92800a157037e1860ebe44f9bce4b617b3926b069190878c3b951236e5070cbd04be18e06eeb2bef65e25d63fe4fe13dce537241850a828023c3d981aa25bf292630fee72dfeda381951570ee76a9701edfd576595b180709edc1539b0097e7e50277b9e057e61698128f7e411d30cf4b454deaadd07b81ac1dc21b9799c22a5be233341d48f052689ac19fb7700f69ad376570602591b8e5e94925b52b54967a9805166b6e0518922b003eb4876d5a4c974464f52d5feb3c2117b105c6666115053c4585dd4c7b67d4170f8fd197d2bd7567a9d7eda0e2cd775bcb22e810f17e2e523788eb4fd1ba85587f8b4a07c4fbab483a22aa7f8ad41562fd5a245d08e260ffddab48f860871c50e080c06fd684f003090f2878c0c207045ea0e000851730f8c0c101d4c0798185035808ed01a559a18851176be2bd929047eca268d8a7c9de2512419f21fd4cbd95dadb4257d5e6bd76d085d253624a4fa92999d253e241b9da304a3cc46459bd75c1f891fb4ae528ccdaf6485c9f4a9f0fef20b0d557a39109e02ceaff642820fa4ad62af5128e9f92802d8d87b20d54605998ce69c0960607cad23bf3c2af41d874290ba75345d745995d8905df5365d652599da2a5ebab42ebd1465d72d1eb54fbf50866676ae1bb54107e0c432595681f47f973587e19c4e8af24ee06227e9660b9d0f820c437bccaf18b33998e7dccf1d1fe963896fb5223d1435fceaf29f423c1b05afbbb9deb21a9102d1eb7f731212154808780fb852e1f1bc51a83479628223ff9d620b776e9291bc2fbef40701d29ab65fcb0dc6d141a1a47932fc0af453d14e80034c4266300a6e6f5508d32f6a743cfb46ad0228202a51f551535f5767784728252a6974596c22d24583217b9bd1f2aa5fe248a1cd59001e53bc17579a5b0a9bfa044d4e63f80d463f0a75cb7b51d2afed92e2ad24c1c09a2e25f3a11b0412a169188ebf89f1e994b1ea73f357a10a3ad7e2ad78673f1edfa8b4bcd4ccdfb43835e45c93b639001433a4c7eca8cf5073857772812f96811d2f78e2baa0f0e319a57063ca3c760a59e0374b0e78f205830acfc0dd6dea4412869af6c714b248a0f338e57578b7f31598df0014994b2013a3515435c408a59a63942b036320e08c1bacec339485ea0f686234643376f7388cea01cf91dafb19a98f32f9af62f0e8171ceb1173ce38c33649d20eb845a3b54bc79caf2bcffa25f4a2d8af8f1f5248d14d41af6a63fd4a29736096d22a54c32d0030b048e044284e4724172cee170342018e3684c56a01459a112b2b2c505ed87d6e5ce8a1a2b5a54544c91416ba196a1721444f31135b5c35d775654809f6de38f75f6f6f6b374821c47fbe387e7099cbfe78f3fce932fb3a7d6d703f8b313bf78de1fed035f33ff8137ff67e94489fae33fe18ff1fb87e7099bedece0fc593a517b3f7f72d703f8b57fe0ac9d3f3d6ee6c02f4ff136ca6ee4f9b3a42301f1c73f21fe78fe2c85ff43bef8e17962f638e78f1f5d0fe0cfdedf4ff2fcf1e08ee369cf1f1fcf23fb7efed8f347c5cfd209f2fdfcd1c0f5003ef93faf731b68392a685f45389823d26e3f4b27c6cf397f5cc4f8b3df700b817cf1f52d84a513e4e9491f421207add399ae070e65c833849fa5095411de7f5f45886708de5711a8336dd2be5711da10ecbaab92b4753af8be022ec2135171e0e9e3b314d7823f72b41eb41e5ac60e0acd46f10eca2befba83fab29b1284618cd596c021c5fcb1b8c00b318e38b0b4bdcdfede0dffb5b8c75a8cb1fb6fc001d6faad2259c0f3a3ed4bea7b16f0bcefc8f33c7c84f191e7471ec63564e1afed25d16c68fce5e9764dbe764e53288a09b0d7b698cc0e6a6af704c541c05ff77af75a5c642c4bbbe3be5132cc09d3e1a324090e34204d5a0cec5f2cfad148fa264f9d0ad897fd04eccbce143b147fbca11ebe077e1eabd50e6fd5c3e515ad2d53abbdb79e326c62b6ebdf5bef4b81208f679ddfe69f55f101e621b7051783f0478f56a4d1dfef0e9217a4add03c197cf837a7adad06ed5fef99af9f4e4114a802fceff3defaed03bfca3ef0f37d7df099c9164c4b7a2a79c3487a039b457710ae07fb3d633a8311e4f7dc5bc1266b94cd16658bb245f564b041ce3a3c519bedf7ce4e2e5781891c1d51529721a44b248dda6c369b8de9abc2fe65bf545b102ccfa33f1bf4408cc40776c7fefe6ea5a6a5efc1071684b6d8e6d3667768a9463feac9c8c63fb3e097a816f8f6efc10f9e414fb5c0ab058e823e200feef1f7fefb9176cb399fbf20db7b1d13f9bf2fffca721efd1e07ccb7fce6a3f93f2950db7b50ca913d7ecef97cd3dfc1f27ca77fc8f944539038996c448abde13b581e9c65394fcbe59b37f4fb5b9e3a39af6382267bd9d36e1b3ee73622c5de70d66efae6333b777892e7f73d592d2073ceefe50c660f7606b30676cee0fd11f8bf1f43d9063d1fae1fbc9c06253c45693350389259c4187f80eb12ec80d1ad13fb56ff0c9489b67deb8982effdecefecf557d94ce319c6337c0bdf2db636c5ccef96a71e38b6f4f08bf8c4b97118a3719e7cdcecab0c67e63dcef9c1355171ea077f9276a4d1bc3dd988fce07d14b87dbff1bb7df75a1cbf5aa3cd39e79cc19cf38737075735b680b1204335444788175836e89caa42c9e04afd86c770933ea03b53dd68499bd202e8aca439dd97a3d4a6bb4057a32cf90a06e86a9b215569993400bad3050da7acaba2375df80a969334490d9652ea24d5f9950ae6b42321ad69a4aca95060a41d742f3cbd795225f51c10380a9e46c58f944d5aea6a4807a0b3aa6348412996b436a9e93c495d03822088a7aeb85a842196dae095954e8622690a56e7404640d324ad4ebe63c1599490e2745164a85a52d21c59037454aed40813435aa38852b11400574c4a8070025d55fa01d41909a5afa31b53ad00b98ed4b9914ae58c12096ab0c0d1384057bfac5c7449bf521da902743c6a29e8effdab25d96d4fef928ba062610002b90986647da70ddb3cc7b212a7ce79a2fdadbef7f3a8e04db382a1fd5d632c187577afb5a2fe1dd8ee79bb7bad3bf85d1b74ffbe27339181b3c46dfbe0b79ebffdefaf6e46595416ddecdb1b4a7ad766dbd1f675be33db2e4d4c778d06d0158f05d036eb6e4f026867c088d3157ff8a38de901680f0227ae31f48dcd38c2f76b01e88a030080b1830e5af20bc66ac7599a2c50db5aaf0396a151bdebf7b97b8d41d55270af7b9ee779a591bed7defffc4ba3cff3bc1bc3a8c341d7afdfbdf7defb1d766e997678dc0e04dac346db0333ab1aceb4365b7982a627182bed4bdbb79fc29ddc756765b42b00c65af3061267d8d89d6a25b47dd3c868f4b7d3c668f4fd7396070bf1c79115e743a3bd3c1acdf9e66c79eea963bfeeac54ecba318e4d711d03de6b77f05dc681890ef87876a7f8dcd2187374c51b6a3d73d63a68c96629785ceab4ad4bae4bb0b3ef8dc0eedcdfb13bf7cb23ed556bdde299de318ef08da32b388ef02dd3d7dc61f1da7567b5b527d87567d5c2aeb212df49eada338e7a5795b52318c550e3e8f7aea7efdf7bf2b0fbe633eba025f0c3cf21881f0cc1a025b7e077ea5ccb640475d012f6fe1cabc50084e3f3d35704f7078cb966724c7b1afca025ef7b34e38af3be83ddf1be4cedbbe7370ef8c617f3b83a67598c237c5b9d2c4776dd6509b211b0b37723cf5ca5d1bcbd6b6f1cf0ed79384bd4b63b2c62bbcaae78ba0e5a0abf46559eef435d2d1097426fbfad32561db46483966ab595342f6dd1ec33d2a6aac0cfc3d75289556bdf5b2109d1b6d91d9fb1d15541364a6e5b7563fbeb7a5a6b2fde551dd95541bdad3613c01481024a795ca9925403c7cb0ecd3c9192c5069114aa26f529edcac1228ad10e1d389484f4ae3b2a20544d18634c7ba26badf509875382312e096672ed05ae47d1f7decadd95a02b434ca0946043aa2848920a3f8cdc90d1220c7b7245ec8a110d8a0d2a221a9229af292e47701877e4489d3222f51443390505886664aacad49313185e7821eb7c337ccd0054248b19256892cc68c22102a320a562e3ef8031a60df976523aa46e702112e5961aa1a81acaa831678c31d77c0973552699a1c48a620a59622abd50d3ad5073a142190505f384186609695e9434d2ace8c1c67c51868530b512b49465a6ca189ecc2c32983660286b30adc0c32c72034d0952d0105da1012a7db8893263b2d82abfd0904565ea98526a6952c2d0e44688a9f3610225955d4ca0022b3293c05880899555c0ca3562cc948bc96455daa8524b7756484a2044cc2b203752285da05133e1cc9139e54c8bd2c99b12491a313af4aa1de9d08bd6951529afa71c4e499a4cac215580d44e509252c3fc8a61a26066a8dc62064848581bb05249970c5ecc2057e69854f9e3a9c9c9746a2a5518528b01c4a4a1f4428d26315a7c0d7d7d014185a50133a97461f1524eb92a775226d7d30ea71b4d6386944c8098424a376a94493182ca0cc128031426acb602ccdcd235c44b6de8aa9c2165a27922724aa1c9cb90168044512adbd44813c35481cc100c64806a248499456045ba4a285e4a1aae4c2352bba72527f348530d438c0029c92805a9517b11a3d41a3364ba18031423cc0aac4717172f2b5c954e52668d27304eb5164d269921a50c404a1e4ae6129d6bb0d03906112fa29a0d2f1625d31b2d6b4c1e5fa61457f942977286ab5d43a16b6aa3b9dcb539db05b5efbdf644f392038c717df9b8ca90e071a521c26256105d313088c4d0101293a385b8eb4e4c8f8ce46331446e1dbd18b7905c882c68b3055d13d25b688ebe3368c833d2616d336bd0d5e332e2828b0911d714165f982b425f16b746d26f475b48f7de8b3d2699d2f77d6086129788641886a1386e7dd9c2d25b6882b88c66b3d94ceb1e5f52191af11b936db33ba54c83b2c426e69ae29a221bb1b4b25a686911a580b5c06a4a3a6829ac171e969692a73d1b1690872534422d29e76cde15942c583524b5205dbed12b4c1c61dc84f9da38bbeec274d9e86fc776a71505c5c84633d3ae3bada49dd6095a30c29dc72f5f19ae342bc4c01043434c0eef32d69cb4b2765a5af543063521bb5c6e47ce665321675b4da99a413aa10891991f5a5722ea1605729c38edb440617cb9588162856a0b0418fc13e4cb5e76fe8c2ffbaf1d6cf8f53589ba77ea075b3fb80c57c10e381ceec10e2889a220f7f7daa6239f3e9f97edb56249cd6107b7ad6db74586e3decb5632faae18e721300b1058040d86f6cf7707e71818ebb6f6ef3d2b073b2d28d47d1ff0a1fdef2d3256bbd36284c84e0b146b79e46c5b6a387026fc4fac1a8edaa5d345d1e05358956b4791879952cbb809f50b99342cad004aba000eba1929d873258b950d196f5c187385f4226966009da8b31f54611ab3f4658693a22c554749bec2949447d77583aa80f188c1c50db03158b08c86725cd519dccbc16a58a5e292da104b0f90001d116fb325cd8223c5d161a0ab5c9c0d98cac47d542f20b4ce4380176fe11b4b29d07dbabaa57af9105325932575c1c59849b1ae47174fd2e2a46e3d49a5ea550459e9989bce832c496b95a9742b1d755069a5014c2a009d1018d21ddda9ab4f5a2d526722434a23cd46347ce97c50b561d26485a5c328879954842f516a501a9ae106a94acb8b3489a6fb5a2849a5ae029223a9e92d493de8dea427f80c35abaa496184092cb31bb63bb213fd00dce0e3bc205f9044e40b9c94e30f04e5b828145a81f06379c4af56b82a7b19876b69d6a66f18821f86f7e6932b1986f7822179fa5c9ca7f210e183f9cbc739cb13f43c2ff440ef86e197d08a1f4e7908ff106ba31f68ed3b28fee73d07de8736b4da1f08665d0f167c3ffa42110445d03b08450e3e8e59b9030e32f88e3768ad79a299164e856168155a8521954b205aa66b7eb5bfe1cb13cd5eadc401410bbecdba202a5833cf2814058973489906a2d01eaff76dcfdbf7e679393c432a2f9cdaa0ace7e2883fd61b4a6e99ede082f025d7f2d85ddfee59167e1b1313eafae6f951f7daf67cd9a3e40ea9bc507cf7d0c55076865432cb84b1fdcaeac06681c068065114f54bb965f867376d7764df41fdb2c1c7396d16f8e4893fa4f2101e5289a2185aed10044130a4ba34d701d364937bf676c908449b825d9fac98da4f56e8d83bbb3e5121b682c81eb7f8f6e8fe487efd9deceeee93dd3dcfb608cdf668e34bc67376cf2e9e28de1ece369275f6e328a6f81101846ddf12618b5af1e603be081b5b9c1f472bbe25f210f6452b43cc38a78ff8e086b7df636d9187c8ef3867c389da0d7ece895a7ba4cf535b11141f7c149b007dfb0617446e0c4bd8c7f6b125f29cedf7e44d2623317b7c92b36f83c6d65f8f3212f67dfc445d944580dcf637385114366c671a7c76c91e45501445b0c4b833f627dfbb619cdbf73dd7daa21d4751d850cf1e99cd33773ddc97d96cdb07bff8e0190151263b75c0dc0511a2b06df1511436149310df873cc5dfe092d7b6719187104f34fccf1e6d07bfd316b9045e568e966bbb636dc6c86cc1f20218a62e5576547d5d7d6d7c85c6686c0bbbbbbbbbbbfb59d60d80fbbe93f766d086399f75a782e4bdddbdeb6e6c6a8fa24c030e67f4fd5046e2eefba3781f9fe70756a3a22d0f99dd666b35a2befdf49aad77f1bbbb7fcdd59f787ef1bd634d34eebd7769cc852f6342ca2b633eb2c6706c9d5d776341626e90c68aab25d1686ee72ab813547081cdeee42610ebb2efae3b311a760eaa8de6caae29260d4dd434d58a84c8f0619e4932bb4c3023563426c6a2042386032c4c8c0e2e5356e5095554ec6a4648cc2744c480d454a47085860961472693b0162ebca9c94883c4cb1cf2d2254b8964c56403058a921a920ba699a5231da5580df34d6a56b971516671a3a244618db9828c8904a6648355a321f524c54c818909c348ad060b25d78e72898dda08324c256d86bcda8c509e69f3e4ab46a425660bd41537502515a7524d0c435a3089f4309be028956694556c60fc601364fa08333a7384cb8c21abdc5135860a959372ea08d890117e34e530b99c60625963543ead21a10634669280c674d2555ae9527ac1626e4599333c294b48529b51c40412c404a530a4524a8d2e9016a874eb19125ac7d0cc0000a00800f3160000180c080645e2380e4331aaeee903140009639e32644424298cc2601443310c04210cc03000c0000c00300800400c44610c29fa005e65cbfc1d8071ded0c58153a3793f9355eccfe1ebef4b896f8164fdb091b0532fd13720a05f0890d179158d217da7ffbc73111378fa8fad0a990968936afae3e39ce5c726233693210695342e71a6c5159d4a915ca710650cd54ac6605cf377073c6a7341c24f861e9611043c375e0035e8649bc0ac3a64b54c3564288b935742407d3af0e87aa560ac69313ed3797afb24a91d52cfac10301def2fb1990b812e00d5e8e70ae75b8db601c36315fd22766f0545f6df2198901960fe0904383f488f9b30477831b454413a327c9abfb31f9007fc03fdce6d2b643a23868b5d573cb8d7076a3749401fbea9642eb935ccff6a9bfc72f133534c6242ca45103655f7dcff3cfca083493708fa1fe0dde12e986f6c4427a5b9c4dbe47550600c974a1a2db72b0e0632f5d691ace9d11ce8fd675f2d488179c1bf5dbc463942952bd70f781eea18e89d745475a5ad30b843d416d17ebe02a5821c22323c946460351076d4cc3623e53c2ddde8b682107863c166f2de3f6b051bf57f5c589584fb749dca642a8b860566086f07dd120c40dc347c2417f5aca64f6b24cdd908514e74e05c2faf6d81c610359c56d03c10e8e757213b3dd0731b8168c3fadf0307fb960e589f61f2addb10be4b273d6aba49d44b88f28a89c84a4b56937e6f72ba9fc7fbcab7d3dc7f3dd5dac9cd8dd2593d3b0cb090c1949aa5b00dab46c032d2b669190e01ff1de2097b7926edbdd37f52548711d1a442b13b3a8a282e575d851f6fc84c7f8842bfda82526c8f58383e81799737a2f3d95e06114ff5f008ade3d9b99e39098388b09c09d3e2329e16bc574342349c167d7af5b0bcbda1369f708b94f98576fb978fbe1e73c3f3083bfd48655443457f0d92c481b5d526a1142291f67d2a9f1f7e544c8800ae1f365c7ec62d08fd82ed1bb6b6542961ab18151bc5b2874e13173997a169502921b9900796f781ffd20d33b180cf5dfc0d581e00f7f97c3590ce29c130541743afe1ef126a84c07caba90e8a782274ebec064b09e3b988fe38e3a6870c390bde68978664a1025eb4414e40cd751e681114a6061fb41c56fd037c0704a2e91521b906e38703d6af9860d336d96302c93c818677f7fe1974473f76e1625bd712f2d659111a5c9664e8ad4e918fd88652e25dce85d85ba1bd2cc1b4a2ba8a14f26c9290109bd05429fa336886f55833cb9b281481664cb52004c51451d579c230b1f650f27b433cfc11e5a32a157e2d626b587657a15f0abda69da30273b56b033049ec3a25028d158358214cf3fcc1c775e7a6a97a2b62416632d52a1dc76571dbffc82d872686d4de310261bdeadca682ee3bd5f3f346bfa900d4bcb92184536ac2d111df3369aa2a53b6efec3cb06e7e82189f70164822eec93fb878624c5ae0100692f8fc04754493379c6d73ea7e9d17489c36371ba9a97fee6084c8e484ddb07ecb1bc2a9798434510ba51f846641cd0e4ad87351bdc8646fb2db6f319b21d03052b6900b71243e7f70f3a6142f018acb21b19c362e0e272a6e92f4129d8250eb17133349eaf57f1ebca0613fcf48b1368197bbd527f7935c48e9139dd46a44d414ca5f554e81153ff88824a76eb69cbf6ec804d1624c336ce04d1e00402608b52ac9904023e91b56635e2342cd6a1fb347b3b215e1ef641c3851612b42e0e35cd86ab7e17e5a72b906cbe74c77bc2eff04f5084e23f85f1b78a70c4814419e1e1c084843a5097ba7c593701d4c8d9a6018af2cac4e8eaa77a2db3c65edfc5bb426838dadaa93f000370b35a82d2243249042a0bd422296314268c08406a50c5986bef0b9db64e6b67a413cb14935ab331f72887034ae58a81d2aacef708bf55a520827f8eed1569605c0ced6bf0fa198afc3de9b25312002f13bef4ecfd4bab5bd4fbd7274b9cef2956f1810a1ac9a2e23fcc13a50b9ba75ac2137b992c4c5626781424907f62882f850cb296b9d7e58c36649144568558be9ec303aa6eef6a64130931dee1d00393e30a30facdbd53c696e0559c890c138c7919e9069a4ea20f76d9aba10adbf6eaac0d4aec5d026a99e2fc670e828bfa9a4f08f061453975ee9c884210b2b6368dca7407dc76d95b45387a00d7fda1b06005ebbe9304416b73123b3e0d4ad76a0237e86c0fffefbe5ba66730f750d31637b2c72ec370ab557283add67c8a068ffa5df150ad49f65129b5c936b47ebd41f00cd6106225b00c02271e9c75947db2ec0605f43c57c66a2212cf582beb85b282060215f5f9e2180db1860aed2c091d8078219e5790e1e0ed03165a6454f5123378f850694c3c4bb784674ef64ef4db7508a44c50721b89033d8a7379179dff2937bd34121734ce9e0bdf0f3518ab03bfc5465aa68bb84fc59d76be89afecc237481a915b93728e4b102cc7121668afdd8ab0889b9c549cabd7072cbba5f8dae162dc7d30f2dd559dff08a32e3be11e26c44990151669e5f17c2ae01399665868897d1cc51c45e80df57d79d9bf472a1017f97099b7be2bd6307419751cf461196b614fb63f7a0347cfea9662e8d86c66ad823ba1a8477c533ab8859c753e49c0e1fe489a1297eb799ee22124cbb3aba1d9dfbae35f96b3ea51a9f499ca60188e7bb9737c58c642fa4abba49124143f464b02466bd4109557f2003e715a71ffba1cb10850fa128bacf998b99d477f20b519ec60df7d697abba738bf7f461251c9522b5bf831ababe38a9146c845e210ec46ab31b1a1ef690c727634335db4264e8bd7645f5e4710a511731fe0f980f1ba0a8d48cda1e93f99bf907d7792b15015e6037dcf6c333ad1f877466d05cc67003a7c8eba0d96204f47149b67845405d0d6db117b2a454cb610aa05646f43f38ed353b38e326056f66c303d8ccd0dc208d1badd3ea3a4603d733cf0dd56927730db85a159ba25b91c57d74d326217ffd187cf18864cde288684d4335b68118a51959ff2e2380f7eef66a431af3be4080b232d5b76e5420d3b54a8fba2d6f4c8b316a79ce5b0e600db73751c7daad4c076d1f9940753a63308c31fa457a85600a49e7f003060ad6030e6192c58303b8c0fa30f8045494d003f2ea992df0172015fc0f425fe4b0a5536a2166bd09c711db28eb66f674be076e561dd61a467bfa4f6c471b8f704f320bfcdbaa2eec76c91e6a7fe113f8b9584d98f2329e52bf637990a5a7bce46359efa3c790df234d0bdc66dd7b3401af29ca23cf5f79cb8732cd41bfffe68a3ff1419775b3ab2e78b57017d6fc536b24712c1a6ded5027753deb2f8c8fc469f8203d375d4d962b6c39952fe8bb425ec170c1bb80e9971ca0a9ac4e90af08ffa9eb90da296c776a0b566d0cc219ed4cc1905b3627671c3f1843e697ace31ef2a41cfb66a3e41fc2248b87a5cec27e95fac3b839e20f6c2daa84b97e66c10a3735a6ed2af213ff8dea41e7e9b128f605cc80c12b5c09afa6dd20798d794384397473edce256691c51a5c3f05e610d52efe816189f3c0d2a3364cde813e6aff902962b0ea4b88680925a8d18a63606fca07ccdb780353f7a5792c185976d220a7483fc945bfbed2cbbf7ad5afb9762d700fbdec901ac23a79ada60b1083b5a5dfbe8a7f2b9c8e450e125921732be81468f2e4accb2dd58747ef23dad94d640750ef8732232e121a5dbf7f97938a31ab1057106a27811539b6648956b4598e96114de3b60a851bfa48bb31a95e88b5b6dec1182d1f08133b02bac465acf3e1464a3dcd27b9be42dd10a063266bf96cc2a41fdb5155c478e9287f40bcca6fc3ab58497a9c9dd92ccb46764d810ec6011dcc577043fc59543a2431d806257e1c81b6d42f20e0292dea3174b63b1680ba31269c208341a5337ae7106bd5677c44c74f8c9edcb566052258f5942f9508f0e394853f11ea38d7d3b82fb3e39fe706241c507b909bd65c7f497257baf756ff979c22fc067fbaa8fd4a2e5efcc2d03c4c04a9dd3f0d93bb1b0673fa3125127e1b08fc1def896c82d59065ca19d4f5fc28829e8630bfe602661138b6992e0cd4f5ea74f88d3d124c8736648cbe9d5bd740bc745984eff603b3b40eb1ea0c66791034fa06fe4dc0d251d3e1f005cc1f9ac58a4135c71ce933cfce5cf461167079515151c9bc908cb5bde802fe1c2a02c70cde9b67a29af49162bed3e501e453edc27e3d5a9203340e9058f8359c265d64f10d7e99a6f6079e006dd5407e9dcff25503f0a1f6091effadf2fc32f135492dbad2fa178ff25fa51a58d4362a5f968cd9fd4f31768f80337643abb7782e8457a942e643212070d39877faac380f603f30686f521de4055a6e86eecb5d06f338ac5fa5623c7aa253e4c6fe0355ba237df172182230b8245ec376f14a234ac46a2ae52fd7d8660e8c29af715230601880f300b9fdc424b94b03e9e21e81e1931cb501794feaffe98e4995dba4c6ae3c4ef09a747111b4936c0f60bca2571002fda32fc37ed09c14c6bab3b43bb4f257305ee21e13a399ba9dce9b7245099b6038a531d6f0fa9c50091f06ea2d3329e7724b5ab274768517466f78eb71726a31e2a987087ee9c4dd8425e72a8d2b95fd033cd356a805170cbc8df392b65e26373429bb6d48dcd7eb34c817166d2d5e55f0ec96cf216395e0aeea05d3d882c2c90e20ad4cd85e77a2c8f98a670a6e73002376782ae04e7c807730272eb7f4972953da133e895882fae0e6f52f9b3a415328b5ff81577c750e617fd4ea9690090b6672523d4464b1e6ef950d0e4f4babee75e9a071955d052f36da4014ed4bb14ee57f1eee9fa6ac901cf304b5f4ae88575399c6887442df7df1cb75df490e2c54a86005f0af552ed7e889173075928e1f38032889dc267cd6efc0edade2196e592b4f754826c40c65b38f4227162a26811faf9cf8ee47d786129171ceebd93b0d8a4fa042951af210bb6880e789288da686cd7188f2eb081aadd164791ae63151908c4fe001a720c9a6ab1217276ae4e89adc65aa76676a38d94ad9387e5921dc75c46602c25082500ba2c8d9c3f24a98361941977df4997e9ccec0943719dc7ca826baf42e6d92b7cec90a9c79e578c197cd4048a4020b3bfdce8e02eec27190867c7bf65288848c5dfe215d89cbdbd41e2c725b56d0d1117fa1caa88681513655805da72121b67ace933c685762d196114cafcac62d316588241aa4cf669998b31819197fa0f4ea56cecd339ebc1ee9bca958fa9dbb0fd8a82fb6b2361eaff5487b58734d1fe1c23c2587e5d8fc92484066bd36a4800293ed71aa3a8c82f54caaa2bd0dfcc3fad1c88228af533c926ee6297315081d1f5c08a20f780816c488070a083d0f4e0f220f730671a1f538c6a988ef593754217a827bdc8d230f16973e3cba33600647698267d5161189ef0881e0c530346c413c58747892a131e5789a2d386648d7aca358615dc2e081b64988449d1e6268165d4f86eb1fa018be7ad58450fc2cf46c1518dd880f680f1d1f5c1f083c301e6245abc7ceed0e1185bc07d812fc6021c77370271fd4855821f6c03a1e868822e799a36671f22cb2f944793035b81f9e10040fb81fb4fd73b1abf5f60320fdd6bd87f644cfb085389440f72d0ff1f440f4a0f350c19663bbb2363cdd6f165d4f656852703d0c5ad703a1877888e6878342aca07aa41d990fa18090c2ed21fe66d1f564b81e82d0031e040b31e283512156e83c492ef583ff3035089f723c0717a707156f4f8f467d889f448f01ed441052e83c84e054a43d8e6d16f23ca3762b949edd2d34089ff39e01348bb0a7b03b11449e7a0f21358b94a7324d851ccf4a5b408021e472fca40687da2120a0e1f06876c1d91f2ac58212df0e0cdb4cae964f3107e3a8bf07a6d7c521f63029375798e3e5b430ac3ad845dbc1f6cc574c7976aa9da4ba879c967f0fe0b1ca25c11f5d9e899eb5b684906008c62f9e9256fdd8da9c41a8f0f2a4d72c727b92e17e723dcdaef340f861fe0763ff1c47ba88defa5b1dec1cb31d11e49c630a185a12821be2880f3ef19e83edfc830b31e31017668f1aeddac3b11052403defd12c3c3d3117ee41f11017ac9ed23b155bcff0378b8ea79acea7ae270dcd22c7d374d18528abe8e941b318f7d4b4a930f7946b5508ae8fda36eb830a21cffb16090128888baea7d74ec5826774cd62eba95ed7d43bd61d2f0aa72d2ff0a76359b9451380713a8890415ca43d6b732ae4d4abb1f834d6b16f2ddbf3b97df26086d842e01fe2ac35cfe03686d083703cb011083dcf9ea9358b6bcfc19921dc1045103b415cd07a3234fc87d787e2073810db428402e2f16fa7e2e17178b310ee1981f329f2ccb459cc784a8ed20307a21d10170a9e113a9f62cf9416721f15496a02ad786eb430ff5c246e8bfa6c930c042a9f449e643d49ff047068e163150c02a052b2201fe69e9d1bc84a55f6cfd35ba5a805768b0311e5859c83b52e06abf481857a578987a03802e733c153ebd0f2a082edd1d768216610808658d1f5ac688a0fc0212e1f600162c06f8ff59b05b747c37510051f300f411bed9e5dd31e72eec122e5b9b9a7102e840842cd102b343cd81acf41b0d3e93146d7b3e369b4bd0724404081f7185bf307bd0f16c49e8e719f007b0c5ac41e2cea3d491729883c7f3d192dfc834562cfc08d7fd07f10dd140fe63df8a47986b7310f3a882f1f9ee31f8821f00f9b1f0cf2a082e299d8e62194101f08310838435c6c3d8b712a703dbe6a16b1e42fb42cee3033907d8b6f19c68fcb3604a42fdc4a485deb0f594b2069c473b2db8ef4cef4b754240a5b5964647326a56c14ef589f97d9d6de6563a5c4ef7154a7e3082f1b38cc812c51edcbc6ee1e96ddd0bfabc7d61ce9b098d9d9c4595770a40a1e2f940dd6118849ceaae5110be29902a45ddc28a23221f0693954bba2005c2c459b3d39cc362ee0914551f4110a6bd81924633cc36648291e211e0a0186f47e6c3fd8825056750ac417fb1d3a93272e0ec908a445ea72485c574c80f0506d1e3466281b54eca99ff34a71d8c638c5eb26d827c804099d54ff9085372e7cef1e42f3065a728deb8bdecda360db8948fd1b7bee005be76941537f9a98ddf9235ef764a091dd9e92e4b38628421be0a3f31255118444badd2e1ae7a3b94e3630bec378793e03b9f463c73c37550fe9c0066ecba7460014c6597746def811b7cd4134347f162d3730b33d1a32ba87491b0d70a6c1b7282292f3f16067795921bf850b0c3fb5c823132458c5d793d132e905ea03331b9691980ed86aa52f36eb1ca0d4d88afc9147a678a8b3e0f1cbc8a8e2b1ac0fc6f6057b6adcd4b7c4bc675b466a829c93f5f935488425b77a612227abeda410c41515bfe4a429d4385c7bb917eb4bbac4e7f6407e06adf5c994fe5b5f130dbb489e027ed3daca78d62b53c00b3282904dc33c102f5d80ead71ff5a565373439f7c260bdaf2e81151ef20301e8c42e8ad27e991c3b28217bec63dec5bf794c2710f5d68cf8c014d44ee28b474614d4636a6d712652086bf9fb5609d25e1f22a3f2f0207afa878bcc5aac629fd2e886d30172d9820c092f69a6837332bf124fc4063e34a6c1415c0de95b6584db84307b8f1d6e10a4fef3efc1a3a559c06c421dba86ff86d9f54c03f23f1cd7c567693ceaec1ce8d87b0b85e5aa7c41ebc7a1dedcf8ca06aef4dfd7b713bc5b4e6b3a8ce0090648183eca5e0259df6a387bc2727da427471ff10292b0b40911071c549b8f41382bae04dced0c0917785f9e44e373ced6be032d6f97e82c48b00798f027d479a0dffd114b817a49b3c0b471af8a3fa637ed506f6a478840a360555bb1dc5bdcf9ad8fccb81a74849fff72dfcc4f8db8acc7f0777d20279a90b22727c62fd32682c18cd8426a4069737d4d2653529ac5882d2f1148656fca06b3fc57e2f3ee59313dcd5e671dee742d5fab5ebfac4edee610e45400176d24ff6e2081c324d7fa2026a56da8b31dcb9e0f677e61c1d56a2ef7104605c5832eaa0929eff62d8c1c2091550c3ce580f336fe6098a485256953715560bb1e2d2aa0ca3494c54793722eb23bc93a18fb8d87449dda79927ff34496b88ce116015f20cc3659e464cd07026b801e6db60ed2d4d6fd268a651367af2c0723801bb2819fe4cf3fd0f8894b68f19e3185fb8b563de0b5bbc0c706cfdfe1ffb8b1e83f2fb9b3f61a8d3b84fdee8a9156e8a7f6a5d650a8b20839a54d7051fdc063254720d5cf70514d785f27fe9e85536b287c5f7cb1f15c559fecf60652341b6dfbf25d8734e70fed07cf9203ea335f7a1419a22ddfb63531302980de905d8dd19506283ddc16b0f8e2b0db76890f9de5e14f25b1542edaf9026bfa493e35ca961897f66a969108a744cea089601ee25438903ef93d962cede2ad1b986a3609c906ecbe224ad430eb49e3b1bd469d26f226676ed34c8dc93ac793938f971da835a0b503f5278b18bb72b8b215a76844294764e1c25778425e4b2ded079d1122d6cbc870eca9e4c829f7451e99fdffd41b6fdb5679962d1d0ea60257a1779e9cdfa8d0fda46efa416763509621b6e141d4b57014431ec835907199cbcae2dc41a6b6fd480c885b5415887dd40985e082391b56fdac54852e723b9e15b00adfb8298cffbb6d477f51b397c1a8a5dcc817d77b33ca201dd31fbd7a9ed6212ddcb45a72531921a8fd79e3ba1e66fa184b57cdecd599d6853e51620e5929b759894084180d01b59387b76e12cdba8eec45c529597862266472c79c9f2908f21261f505300c479bd3e6647412ea340478507d9c5f376008d1c4dbb1e03b32665f2cedb484192b8fcfc1819437801446345ab84e65c9dcec244409d0390ff9483f313714d6ab0715106b1d11f5ef34e63d1cad6555850821177e391a76459621ece608ece7c4deb552f4022ec7613cd5c585a7dc1995519ac87b812c7938ae62d25bf7435f759feb831138c583cebe1faeba325cce284238a1b837db154b9c419418c899407813778e3c7c689c36b06cf858a521ce53f820cfa82c6301ff1dd981d607a938e7c914bfb099a4fe61d420c9e36559473b2d88e3cec55ad929d5cab3135da4c0f9b8695401ee4532173add25fcb70884042395822d8eb7818a327eea39aeb0afd20dcd4f8e8fafb7d23251338444d9f65ae3eadfd314aa7d92a25818983151c817d0347fe475500651256aceb87024956ef2877b592ba3c61db1e7317a4cbca4d598b20166c83b92620c3223b9d646b5343457e759146bd8993c01ab07c6d585549243a6d6bcb765cbee0c322f74d60104c832231080400209b209e4c67224bb0fb271a4450b5bfa05a537057d94c42bb5011759b9467d268ff87cbfeafbc874cfeacd9757411e5a15d181b5d2c99a7706f57d5f4078653b1a68b6cc005d3dfb475c88acce3920aaf231e25247bce1e7053fcb993f684e28d01e57ef5c4387d2a5243f5f0daf2c940566b05a1e1828a4d550aa2b312613dc1b1d1305f742648a791fc58df404c3a8ecea289995d3c056fa579f15bb5334e153daa843dc32e2a7d49e676b0580aaf6a81f290526888c668060590c2a0d6f822cd6b70bd8d853e1379db94eafceaef0aaeed063e921e89842745a81d086dc2bdf198b0bde713f38a72b18d2f9ae6aeaeccce5bfcd882fbc5073f52b7880ba6bf13c39b93e823b2039d0143c6ec3a3d830ca50c4542a62abc8543a0e594144697a293358921ddf2a426636949f2dcab020d039217d10dce6de61458538f83ef26fe87e6232fdc34580c0864cf2b34e8b37c605c2fb4f0a8dc4f838bb0f50eff7d2fba7e44a9bdc9c7f1a36e6e7e7e58677604aa1d4c1ae17d5b0f443fdab72ded20dfa14f723fb3e6ce1fdca3bd6fb99b542b714d44f7a436a20c156aee1161a2087f112470d22adb442270bd067dd5aca185b73c62d787a2d1408d47d3910b9ac0cd0de804d8a2460c921eaeeddbe3929dcaaeb53ff1a03d72488918b2dc81e8a838ae3cdcce09e3cdffa00487d2e5925e6d6db613163eed2a43f9f4bf87f818ed3ac3b3e2e8cb339530ff7a1b568ea903c5885bfd4046cda3d66cbb40605d6df89355807e0c2927b3e024a5c8760515e3bcae3a552e7c660c4ec9485e0719e1b305b137e90362612829365e6725c6fc80dd2d7aff2644fc091d006906e0d11a70a5ccb9488c29ca15481335dc46844a801bb932c63840df83254dac3da8028851b8bb9a43cac2ce3ac7e722618f54dae5c1c4a0f52fbcd950e24ec0e921e25173f00f9afc5c91cb89b9623c38dc82df6a669cf0e713b6b97a78949a42c2dba3620c9a07fe26d98078b0f18d6ac12f1094c9d865f33c9e35bfc0f268c8baf345b66b49dd7973506de8e4e6b6934a1799a2764a4fad5da79ad9882fe1720faba0c366993c4acce1fc1d8f2fdc2115633662ed1312e99e1612cc585c5fdb359025239d13e9e68db2e42d60fafcbca2088b89cf9913ba51ddc97e5abfb1b41672e38b6d44e940c62cb3aed1d44fdd2e5e837619c2b772d2176aba4548bf3c3681845373e00d7e84f6a6e3c98e6031ec7e810c89654c1aaad4bde4a29fa869ff867e04da646e08bb5476a39dda86ada070025c019114d38b1efaf68dd51e3581b9a22db850ff6a9aed65cd632d548898b49d64ce3af898a815a852548eccd1a82897aec6a987fba081c01cc66dd00c659038943e97d3a3ded0d5317a1ac1b7b13fbdd1cab7a862da21cff4d86831f5741a2d7c9069eef59b67b6a5d64ae333d32ae295d72442b85ad7477a3c37bf6028655d117d120a3b6e4ca01e73cd4247432c9c949ad37f31a39211ca1024380372c75b02aad76daac52d1e8eba0db6164479728ff03fac4ec18ff9eb5b0e66f7b89e44a1d28a596d0368cd6305abc9074ce76286122652caa05ab860c1fdfb7c41383797c25e6f073dd7661b122a5b340a0fd97e77b09490eb767d162972ce545c8ef1e796d601d1a231a5597b39334e179e1829a858fab28f7e076a6902c04d5b4977933bc303a3b495f54d601d0ae35248deb73abb89ed40b48a9a95fade5c98b08bdf5df7cbbe4bb2ffab8ad0733f4783ef91ac94eb44907497ffbc8fb0ea0103399e8fe8ae5b2ebb4e730d176323b4a14d216dfc6ba190bfc579f645092fa280422d443d1946b571a24a8fcdaa750e0824309a468206a04a64215552a60cec24473cb1edea10a43c140a7b5e4d41db5a2cda0d0a98a683272396937872dccdf08b1853e5b3f8c0ec74b05c2a8a7f062329a6d3a0870eee8bd06fda5dca6f3928b64c7f685d68a798989542c34da30961ce28b515df1be62636f5039564999ce53692164fc32eaed216868df6cafb6a96907304e8f32ceb5cc08b78ed7965718ce2eb70917967668350f3670d9081a2a0cfa5970d9e35e6dad9c1420e5c6b814138b5d7d9ed71336e65e6d8f98b114a5627bb3eaafb4cdf8c787b0a6d38261f15655c90bab8ba6e622e25f7dadbf7132eac64548ccedba42795d2ced65750afddbf08ec5ce6764d573d7a7a4ac4a2fddff070a25e676e793663e070396846be2ad52715d03e259654caf253e013c0a498e2389c0acc3a48227e0dd36abff432077fa9b6ba45076d405a8286df756578e1de4adf832062cd0bb3c9b50f169d94e35fb892e5cf5f9a49bda958d7961742da4650eb0a265d1fd996d2879816826fa733e5f166d37980cd6ca06343607d85da4578432eed35f8df270e05a3782341bd28fbcc308dddc1a7c06433ff2681e6b256b9880026f5ff13079321cb052db6621fb21b119bf886e6124292062929434574c8e13db51aae0982fb438e4d3636cc0900f6e6e8e6d2c3d55b7c3375b69528e22e03328f92895917c057354d945655848bf128a37fb4d96f2ffe00acde7cf650508e8c886e5120c547a0c6d4d4f24b1bd9a1feac59a7e5042e9d7d505b4de7938b1d0084584ad8564ca736d7db235adccf588cc81711ec950d85aa6384498fd68a7c81072c797568a8604d65fd92be5d2c64b57c26c0b59f89f72a1034a665944aa62517f47d3199a522053456b2a5e7124d555ac8b5753c8ee37b50b68895a0eac951586d66160ca21425162b185414ce04988b06ce1254ee8b2cab0e7e0b0d74c3f3ee8ed41035e2fd7adeada2eae6629624d353592e0117d71f138e9afb5d776da00929dfff0f11a8f5674c77c3744d92527c5335b0049a63a06ba3a364ef0321aac43d372ce0de34c605deabfdf627da01942f404077db445c2db7964a373c307196c7f6c646e99b7a0be32bb07593dd96c438945a350729197df60598a6c0cbeeeef00804a5f075f682be665112346b2dce5b13385b9e3205b5b0fb4b9e4a0367fd1321297980411a0006ecb80553c70e8d90c85924c62f77b5a92a6cd3cdc1f216d186282127732f4a12ce1d63347e8ade8bdc2b63e0480b072eb6b40a0b271c700c67dd398a4dfa50f1b3a1ab92f19e4fe66ca1f6ba83f454056a84a68b811db13e54e0b7b87402ff93a828b8fc0f159f5d65bce6de6eeb65b8a7b622f41137757fc06d0daf9e8f9fbf993452e6eb3dd70b82dc08b2930a87bdeca77c9de8f6bf403dce68d57f26bc110e77c1326c7a9660dcd609a25b1390d85b6d5207a6606dbf29eb05f19fda0cd52f13c44845bd42a34efd2b62c335b1963bc4a0f775b5faa2c37a6583e633c6e694e68ecc9ef13fa49ba3bff3ca91112d21c91b973346fc6e104dcc635a4199b516c95d4e724f4e8868a3bd9082b9771affae4749262930dc10f6652383ab4796259da78de71d95235e92c80da94d12613b51aa362adbb9e5e861f6f117c0b45f4249becf1a22ab4a2540099985511b3b84db3c8624505dfaca5eca50fbaf084d3744c0dedaf4bb00c7ebca19c0b2981d60a02d14858a4925da4f88db75a650a57807d466aa599a84bf8ea1d14d554175a9806643a1374076dd5bec3dc3de04b4e1824bdd11d5386bca0f2886b714f4e45725fd38601483aea623cdac137b8e7d0b57eb3ce9b6eb0898416a71934ac5d424afd646ce43b85cfc7e87efe2ca9784ee0dc94349f97643dd29f90b7990755ed54fa724d09ae240ffe438639fdbcd6cf0524c924d11034682cce9e173d74a248a52268518785b2595e9f5696c8ce9295575a6123aebf7efae47d7f26803ef4ccd52fd84644064195ec49b7e0e544b9bc7c6c52670d5ce81d88d88423953d6cc8da66ebc42eb9cb7f9422c1f5cb8d4fcc2f7eee2f6537899775c2dfa4608754a671df2626f49daa61af424a1a7638684e0909261075f23044619af5e87e684e402e333d6cdfcff77c8126377d6c9b00a52635bf6550dab11c047be40de2429a38217676961971d6ec95e376a09757fc9090c32865e7654033ebd942facb5aa6d1d192cd53594cb8dd3fa2cabcc5bcb9aefe26a49603ea9579039b80ad00c513cb8d91f863dbe0a36479e5ea7792b5e4c08c7e54c3f04399f8bee42a97ef97988a1cee229da0bc2dcc3c9a76223a26080a06015c3c035a169e685d50d219a70d7a7a43188b0fbffedc1ba666ead5a2c7b5f38e74fa1bd6eef30eb1f8a7e8a28d44b371fde7b95f21b40a8691548ef5e46806fae217380ab47e8e01aed8e9ffe5431cdee88cf99d90f25362e1ff88d2263791c8eeee9d49061f0625067b06de83a7074ec6dc967c04a92a839443b6cd543e6d819662985f1f9b99fceb6b26639619bbc99dd458a2c0add9a74e583808b170188143e5baa4323103ccc160d8fbaba9cbb5d22460ba82f5bf32ffbe4d9f3aa6518fd83e81df4f79d9962460ffa70f5140503f2e0c13b830b81c9fc6a7b29d8be27317cde7c124b3780865f8b6445fce446f17bd694f45c0de7bff6c7aabc934c68be1738b34517b5260cee73ba4547399a94fe3eacbb7c92fdb6c9d36596690daecf9c0e65426b47ead3fe372d55c607df855833639669bcd31cfa7997c77a74d9e990d9ba556998836b29b0acc61ceba43ecda2cfa182e7aac94675c16bd7d772900ffd23488bd7f14692e2eb82cfa1997459acbf534a2977f895ebe487b9b8c7db5c935b351cad467e6b2cc066ba7e227a5da49bd6853d1be46b9a7d9bc51cca26c8e4f7eefda03e2a6f7cdd34204ec36870826c0781a428d86ab72d39c6f95e3b3806f557fc6d742db200fbcc1b056807bb6dd54432dbe6b3f6e8a5af3b40ce167f36ad0ae0eb421cbab1ac2cdd343e14a16114aa976726b2c1833093ab24292448950103a28a814540a2a351174c465d92fc953627384502abd3c8c29e6c4a4469b1242a9f4f230a6985313b873e9e5614c31279b635541a524a51753d0915290cdb1a852502a6f1e54da6cfbbceb4205d96aa9cd112ac1fbe6f117f03507a35bb3f45907827dac7f764b13fc9e52ec72672eb7388169ea47ec578da42536fffd63f298bc261383b96ab089b8c9a77fdaa75b8050a3fc1b2f4a94962160ea13a113b86584366f9db7abd30a686d27cb67dd046db87df0cf15a9fcde05f93deb666775618c21629ed55ba17dde8b8d61da5633dfa569d4e7be219b44cfcafdb1b27277e2ca4a6ae5fe5859b9a9959595abf2d4af78ea4b2a2938634d65e525e35779aa92024b57e7ea5c1ddcd40437b472eb901d0ba7c95f4de5fbde8bdfa22e0f8d0df94a8cefbcf5efa458d64bc669ff621515aca2823fc6c3d966796844eff0a73c86b36c847f746fbc14d16395d1e88e462aaf6d9d9232ba30e2143c55b42d04362929f8e1fd9176fd7c5166735a01d7ba09cb97b6c9af2efe74620ba1a8466f4736c7e68c46a3b7a8d1686451a3d1c8a61a35c256241ae1fc56b036c7e6d81c9b33817610c907c88eb5e3a6bef71ecd361fbe0db9e3d562c4f1f19df33bd7bfdec5f8627c3fc6bbd76734d81561fcf7dafbf6fa1b2fe3cd864cd331607f3f867f8d677b69f64522ad2f197f74ed1de1fefba3a7a3f7fb22ed6adaf51ecbae4e2be0a2da36b5d2d326107e6eeaa6ee4ea994f2f3445a8abdd6dafbd6dd3d45db28003ca5a4e2d75e9d12ae4abc27ffbdeaeffdbd3b7d0ce2da5f6db53c34f15deecb1dfa43abcadb6b1ab04a1c9cbc80ec583a847094549c23383bb5d67cfdcd861d558b7fe47f1fde191ad7b6beac6ff7da95bf2a292f4ad136acd9b0f9fa91e85a4cab99f9d2361b2f61dafab9aa9bbaaaabfac1a29f877f783c857f78aab6e195afcfc2922b9df40190396f515932e72b59c94629e35ab5cd53a252c953a5d2d5b93a57e707fb646113baf7b2a15b6a6d686ee4b8bddb60aef1adb51adf6c2abf17ca0cc88e95e3878e950e9e8cbd4b5f072a1b203b568e21cb62f4d7bb79bfaab4cd66774df46f05959f54a38f339bf13b4f79db028b34482f0dbbae86cd6c36f06b8ecde907504d4ea9bd80e5a8f560975210f5914e656cf4e22feecf2ca594346ea594d6bd5335f524954d4b9946e7448f61eeae51ced334f66dc8b05b4aa76f47dffe1283f421d636ef547e4edffe062d949a8bfdfa977b2a95ebbd33a2879a15d511943fc2447fd90d764eadb58f648c5a9bb94c29b52e27d6392fd4da5a67ca5f6a67774edffaf13fa7f6f5f3643ba7d6daa92c3be7092af7aa563df34d37f869b8e27d47d18753aef75a2956ebc5a8bd3a8df9e5222bbaaadc31c68b6ef1b7a8c5182feff6fb63faf33bef4e3fbf3a579545dfef3bb965d3e050a0e4776356b5f78e7a2b3c9e154d457b33e24df555f555e579755a01f33d003c9617bdbf8545445bde0f7e7e75e69c7795b1ebbaaeab7353b91d3f96f5d52a1ae0d38edef31e8fc3ff94ace9bbd6f7e2522d95ae4e6f3533c799afdf6aa6bbbb37aea58b4b55bb3a0e4a7ed55379964ab326a92fd2eed5ae4e3fa0afce9cf3aaf2556bad574705242effd17dc4186374b7ee35e0b7d8c5becb6eddbafdb66ead751b630b12ec5f1f3397efcb8fe122914824fa29fad153fb57b6dd91e8da9bd9648b99b2e4991a4ea2ba51e9dc64c7ca0127c3d4933c7230323a37d11ae63b6dc36eaaa15ba02e6a2eef9d8b313e8704fcbe61a0e31e583c28f98e593218dc241feb1a1bf04077777d1e2ba5956ab4850abc99aaf67284c1c442ccc95dfcff89fc4105a9078ed8acef020c1590b7ceb87c3d56e7d42c7d2cab3f2794d355afd5ba89253b2af086e98b6729c198a406210a8b38a70634b45182c14dee025010111ffca36747958283aa8106fa20d8400d192e00830b31242002ec9e48e563387c4f248a2faa218b2c1489de5a6b45be724329ee53c5eaca1a201a45fb22081fd4360f642844c5465481f6c1d18bf1e28b2fbef8608c37d2b0b7785a7457065af8f1c5f7f0c12bf0fb186f85d30c32ef65e2632fd25a6377b7e6327a1acdfde8674ddf64ebde7d7763bc75b342541e66efcacc15543409780ba7538b51c56aa522032cbe83290194dc3ec88e45829e7c84a4036ff4bd574b36dce41e7093337193ff5392c41e5901fd60407c7ef0cc57354edfc8787fbdfb4b1b364a1bb8c131d26b6d6c3639cac48fb5c6f72284b03b76439efe9191c14d1770933b0c32f5a2d79372ded3b4e6019b09b9d946a9c6337d2247de7d588dd7c229ada1616fd157d3e8d76205ee1a32fd3294ce7fd95633b30d37f97ba0869bdc69d085281269ae6d780698cd00738d29e0e7f2b4a741edd2a800942125ca4db7fb6ee7dc47d7b576a52c99e668edd660749fb9ac7e77b4913a774a35773aa93b75b5df652d56e08d66f736e2c41c768e84020c0137c57093c7cd547f7b19176680b9c509aea7d722c25386809b170b277f416bd78c3521f5c0f01fa359083ab75c81e36f35799befe2e8e9dc58b2b3a420a84cdcb0f517f14bd7f5d86834fa1997479a0b7e9ad1cf1f69f3f1d7b7c934dbec56932fcedc156536f966366cb6d753ec9a2f9f521a6d432828719284c2d26d356fa394a53b1ba96d69e1cece6516f3bc31c82ca5fc962d5d7e6744fab68641f9d8b4aec98f2a128f1a8f5e22f1084265922f9474d2b204bcf54e7e4fba014b4d93b2325199fcd0ce33997ee71c74dafce87ed26953d93ae7dcb97317deaa0127cffea697929b6474f6f748eb957173bacfd952da87d3ce28df5723bc278764c955b4dd9b2f7395fbfbf717f0dde47e8a00c5a40657a46a1025490da2f05441ca015f36d183ba37c3287aaf665374f463d4a94619016fa3faf36badf7de9f71f9de8ff7e3dff8a2973519bb16b3c95866c3e6eb9dba1e38829b2872961deb2689bbce84602f33d4b7803dd6d66d2eedaadc3400e7e23d7da0ac89788bf715889b7e344f11f03680fc7e7beb037082355fa5300cb32001c19bc989e8e1b340eca1bb867d267a2cbe10d18f324929b5d6fe8ccb56b33fedcfb7f16db2679bcd5e7333ecaaf23d8bf144d05bf85ffe8260411a02bb85f0fa19ec69e25f9ac3fed564fad586cd33dabf19f416ce84b32005c11b25e2bdbbd7d1776e5beb5fd785bfd47984b31997f1fb75e1bdc7da7b8cf1cfb88c3517d1d3e0972fc22f1fcb5186bd15953256bfb318efaa16b39c5e1396a652cffd41f8307b0fdddd3b2584b9127695ab8656371665532ea84b2a132430979d7bd1ce39e79c730eba76ae1fe0dab97630bc5d3bd76d05c6f2d104a5c4c7913cfff241643ec5a295c1cf9fdab95d4f67a646a3d1d019d74fcd3e95319754e857f2d27cc1e5127d3b67e71a6da3b9300a3b96ca896a09f6aedf68df19fad7f5993a180e66ea2f66f05ca983e1dce49c7c169784ce753fa07a7ef5e39db99e6a2e33ba7ac6ee0cea19a3323a5f8fc5805db4ef8cbeb9c96e95e90cfa548335c01bcd9ae62e2530e7abfef7de7bcf39e8dccb9c9f5e0b7faca509b8650aecbf9db2d35a78ef3d2b30e72927d9b17ab47276ac1e4cb2fbd3b8df9628607fa7a3542a954a3a743c174938b864b3dc96e2771b76a3d9db9320a5f317b1ebc79c27d9b1729c640464c7ca09ca49f267c7eae193b167dd8d30bf1b5f9034ce4c5ab7824a6aa78c10d4b770bdcc845c9a0db60522fce50b9ec5af3163cfcacc7fcef0ec8fa3039b4d8ee13148f92e63cc45c05a863e5b82b466f51dbc32b56af36d7d7be54b73ff5670bd519b6b361f734bc2c126164a014c76f2fb5704ce1327d9659b9f1f5900d9b18ca822d7f4d3c768cbeeee99d9a7ced159bffefd1a98ad94d8959152be73717f669784c9137b99517a9f5e19fdb1c2d76237fdedd2902fe5f65e4e9a7ef953dbe29dd152bec79eb591e9873262484bf08d516ee7e2a90f4019fbcd26572280649731243b38d965979fe4eb2b114b3216e32f36d163d8b2605766ff62d73a982cca36ecafaf58ad1bf6629471c06cbf06e658b22fa5184756dbeadfafa2bf19a597c6f598d67944a59ce10608b2c45ed42d5f249bc6c5fe62157b118639865dd97c110693afccbde85e78695c19c5345765d45c8ccc8bfa4a1101cafd4e044876d9266323e75c48c746580c2c403b1afffe295f429a2d043699a669f4bb160305e660ccb8fc9ec84ed6b2630d6965786394218c1bb5634bfab55f66f42bd51c4c8ef11732da60d176f7db316428c3c88e350488115118c1242606c60cfd6efe94cec1d8484d7067f75e42eb1c4c8e712edcf340053d39be5365ff9e990f3beb2859fa0cf7fd334e73c101af6fedd964786388ef341c1a8ee742b5199346d23ccf21657587d745745d227ff705f9762646bbfda080bd7f998c9acef34939c03e6427cfbf547093e1c3fa4243192ef771c01b3746d969d88da67169383adf18e03b0d4767ab6dfdb418cfd12d4e1ae3a69acef925c1bbfb65e7d45e0723b600fe830f23be1ba34ce3bd7398e188dd4660af27cb9faa1cbf5370931dce3194df431fa1117d6debfc66eaf52e373abbc70173ff8d91bc31c89f1a8ece55db9ed3b6f7fe6e8b3fc30c9c43e05f7fd677e7a2f38c5fd3f59f460369aa0dd9655b7df73458b3adb7cef4de18e51038e762abefc6f0345823c4d1ce65c6fcf753a3911aa4f11b9de9d57008067ffef8f8ac327d092d3d9d4e319e0a905b6b000bd211f009e6c5fc620c3607e4f73026bffcfa450763980e863f0b1ba1c787ae0b905ba3914fdfb34d3e7cfaf4df9ddae638da7f48ea0073fee246939cc01b7cea83a3f3d3680684e010238e426e804274f2283b96101e28d08035c4102b8813483698c2a523e258c5102dca1a028a0e12120064c70aa2832cb363054922059619cc40892924c1811c502ce1032a0a5324610a417ce4d2cb8e15249537fc2c21a26009714352e208d70939e2122b3c50c0818f24924459c2470a2c88031e495823ec0f294474400881ec90030e2c21aaa82c2037e4404ae21f861524471665c702f2246f7fc27440b1a622f7e31e30b0031fad212c22300106508e187942304202a27185131d5c00a4829d21c0284471b17aa0a0030b0820649b1d0b881cb07a9ab08060c2c64276242008055211ef290b0825b9c4020249144c4a49e3f6c5150461f7f01d251d81fbe15b165a1d0cfaf0af83317f4af911c82ef35da691ef324a7637fe405a01eb0438ac13f400b18000723a917e4e5390887842d801898893fbe89a0ba145b8162e6fa3191300e15ab82c35d2104ccaee03b9df414aca3d84a4021fbc61fff77e40ca014ff71fbde2395948412b0c9d61260a5a7ec062f2ac84856013efa9a75c129692ebb88ea75cc75533837998ee8631f5c7801a2ef5777b0633144b80d525ee48f6efb9496d8bf7852bb77bf975494326efcab897d540839bdca1e6a3798671d3cd12bcb54f76b7d0bd2b1c2501c1dbd390b190c2dd397720a871301a498c0cce45bfcb2ae0a67e981628f0d642dde461aeddd01256efe6a61c4b96f20958ba3a57e7aa7c88f40cc5fc3081bbbf9350ea5e7fbf7f373967f1d40bccbb116299e086f5c3135a7cf04a3f662609c98ef5431439e0d88acff292a37b14cee4f2cc0f4c70a697b393921f8e64c7fa81488e41762c1f9ef07fd247fa078a83d150a054a004352b8383d1f9fdbb323817cfbae93df8e07bf039b7e33bd97dab307f262cc8b8162878c3f0ada0e8a1858dfc1d0cd697a40324bb27edc01de4505a6eea276eead93c4d9680e9936ec0ae8a829fd8fcc6c9e64f7814de22f9c0dd3ca698939bdaca16296048f1e798917ce07e41dac13ed241fd432d9e5363811f6729cba759ccd1ca173795a0e0cd9459883941208674eda687362cf64fbebf976e8953926316a22266241db0fc49df8b31c6f8a2b78d02f6482aa752b294b2bfdcbf2ea5fcd17bf78ade9db332f15eadf479cb29e1e909988321a5707cf927fc4e7066242130cc52a2d1e2b7a31768eddf7b539e863ea69ff2d7db6c35b9a6644ef4eed6516693abc8feb437c3a2c56c3629a55aab3c8d2a2a710977779b1c3b4b2961847e651e84f0417724609c1deb8726f9f9433917fd50f8e921a5f09378b07bf159c8eee4b447909c9464f7def3c457a8e1389ef29d1fd97db7542a25aa25aa262a27aa28b2fb5ef5ea4703210294ddea4876340afca40af7edbe86bf90dfe49794944020bb181772ef792d1c6b7f2a18838090ac8280e6a475750501b929ba2b83596badbda2114e812929cf3b056b203d1be4d9c13845a5678507eec4bac124484a455656589608b5c02410096dead8b3144618e3f38e1800b0962de2647fd24dc9fa06a1647f15e0131690058be7cda2a58564492ed484890f79971c28fbabf0e3a6e81281bcc49797e7fd42ddd790e3cb46b9bbbb9bba8c954e091fecf19e56ab8573ab25b156eb49abd56ab5a2a401a094524a5797acb4d57ad26ab55aadd50ac96ab55aad68c5ae4a6ed55a6bad4da893ecf3dad77ad26ab5ae56abae564856abd52ada3b4a59b1d94a6eadaeebbaaeab06b5aff5a4655bafd56aad90aceceaad56ab0c1b1a72323434343494624b4554585a4a2c08805da8c98925575169abd56ab5564856abd54aaa542ad5d09093a1a1a1a1a19f1fa09f9f9f9f1f922d1529b17811c06b05b0a7d3e9748a3d3586865a432a954aa55aa956abd56a0555adee6e75b7ba5badd65a94625c2abdf51ef8ee42a5f9e0cf95127b70ec19c51e51ecb9d7507dd26ab55ab13ed50a2219c19508ae2e5c3db88a89a1be822ab873a1ea41d5055515aae89bdd1af217d2c91d7a43d7501da2d2fe740f0674fd66ebcfcf0ff6ac6579818189b9917173d4a2909ba610124094530055948538904241efc0814144a203072894c8a103101a8320202034310327a0f80173a0747098e2042ae03982c7d00f3b5047521712285cc22c18cf233756c71254f461070b28e9010daed8a189283be84127bee961fea70a16592247cf0e299468810f2876b0de0d70f0415bd1a3072e61168c513190a81ee9e3409650f1840f44f410c4b31344ec1d8e28412788e78448e706392b1f744815892500ea411de148a074709c223040a20394e1063ca4287284141841021218e14179e421091aec50d49b1ee6df89079948d1a387fee9328212407cc0299a4710ad019e225658c1831226a6b0e3c3a66715058f1e4b2861881e8c800769071050074598604708115cd0841be20e479ae41044027a6085143834f14942083a1889a2130424ac7860c20e1ba07850edd03d3d4520628a2476583ff0e023fa300294839452ea1802e59f68114684e400045581216ed0c31022467e04e9049944704002453b40a408a01d842c21c21172b8224f2339529600c2440e39b8408856ea082f0265870f9c154f7a08717a98201dce070f28f30809b244a263c88b3d8ce8c0a3af26d4800913e430d48420728c243172041f4e8a25a848f0c410563f8ec0e1083712031e1d5148a0e69b1ee6ff4f950600d0a143ee1042d2f009f20322724419a2069107939e1e9cb7a308ebdd00856d8ad011850c7250438648c10d4582e479e4043a30515fae7082072958437838691e88e0d013670fc9a3e72501041d209418810e4174c441a223081804f5a687f9a7a2e79c37480927113b62d01295430710c725cc82b10dd00f7858f980234509845a9851479e13350399440b6ef07eaba80397a0c352c29923cfc74ae42228d08131fef7031c21a2088ce4f008a225cae38d911e1e1d855564094ecf69aad0c3c3b8e961fe5110c2aabd9493274f561241502a9400bbfc5f5f8041cc391848b49010426295ddcfa09bdcbf4d8be3c6cc2fce85cb9c9b5c3bd250e7f7171b0b8c6f2fd98c197659976df32d8df90e3b8d257b35f063861f317969682c396b1cbf63f618fa1f8bbf702724d7f5f5babece9f95925e92ddb3a874c66b46d5e0a55d97fa5686e7ecf7851974d21df4e7ca5fd06f2479ce3c351652e0f91de17c3a636a54739932d3738c3df1a9aa07e7fddcb1caf3e97cfa3ec6972bb2cacab252575436885b89bf782d5746aff2a454dbaa4a4aa4a11f3f05df1954839acb7569323ccfc73cc778d396604e107041861a3668c051fd0022c56b7b6ca525eb9c86fefc8d454adb4aee0bcd7281d0358362cb527ae1cd901ad41cb67b51b41af1509f2378b263011d0152e5a83d77679428519e64f7239c0f657fa09becdf2d68657fcc5d7fc17dff8d999d0bff9a1b33d3e8df6a9eff62d3903fa7e62474df2d85a1ec320b5a985f9e39e70246ec2698fcb2eb635621acf375762ede3f6d931fbf63f6227d90ba970326314230fee250c2acbeee9ef43b3b65a98273e14f6797a0d4188232246164ce85ffd61ffd494de0cd0d3d089ce2c94d6e8a71793bb915081c8cf70e86cb1146a87a41536a4492ec58450c1501047f94fc10893283fd93022e47fa5b84216d6c7f48e3c364acada4910fbf0030d9c13ca88335fd0dbe74f041e7a2c2e4983998cdabd20dca70f8f227a43093ef328d11cc756b05ab0c3fae6028bbec68f80c353766a6ce45ff7b1c3766b6f1d2880f351cd9ebd7ef7706742cc2ef7f33982f47fd90b404bfa7894f628221a4a1f9fa9add18e54bdbda511af2a746614309a08da8a4eef644b55433240000017315000028100a074462d16038cd7264770f14000d858c48724c980a234110c4308c618c328a0043003106100280903236490176612c4a9576f78ae36b02004ddc0d598665f3cba9334f0db3705c6935f84842abba364aebebdf70bd1f7790bf5d792389eb47e4668623678637741b9d605480592a38a3d8ffabf363f79840414d106b422202dda075440595d8ea76f10aa20e28a86c70846d1bdec6720d141f8b0ea58c27b599a5877203599052ee5fcf310458d52e22387f7a5c681d53e85e0325615b8053b49afd00a07d67ad61c34cae5ced921093085762f8790be8cf4aef4d60c2074dcc5b23e750786017dbfd5effb740bb18f3aa3498c2554cc45f3533803b16833a8f4a3390ba7c58080557f1811deab4d32012143ced47370272c7051f5e806dfc70538d8f2dd06dec5a16aecc3ab84e9950769ae7a8e3464e93676b758a5652bc11283077df1cbc39fd4b48d712e2267bba44ab61cb82588121fe6690aac008359fb1caad604d0e3aa3859d75e02cbb0f41674b841fb7d21246b56d395234811d21c5882d61dc39818bcec388a6b44ab0407ba33686a4d62d0323a9eab2c283ae10995191888996d138b68fd06e3cde26206650699b1d980dd120250c6021a391299b8f653798b44306fde5576a82e70595d651e379989cf742e46aa6111a94a56fb0261cd1426bf947c71676e9e31022b33316f2cd3f36714304535abe49423615c92177559fe3122fa0f0e38b2f5b38ce872dbc4e91596aa447a6ab732448066e09f4b03446719103a5c53226a112590a5b389cf959601b674c147c8c4871f1105009600fee3ce656c4389b664db49f76397b23e997365d81b52c7e8dc21fda137248605417cef4690923d8529641ab42397ada368f54caeefdf5cd4cd0c385650d51fc32769e84186288130142cd39794d244fc9f8dab0177455b0938d98fafa86cae7e24f8813ec86fef923c251368025b84b49e94eee223defc436f207238d61f7078c9d8e1062a3bcfd9cf33d860e1a51082208c42fe400bdc2e0742d370d5433d932f75dcc1d1b917a426215f63654dee9e4a8bc18f6db6823c71b79bc2e25ba7c57d525acc0435ac22f2b3c8a2bbb19b9b15f387722a51bb3502fa2707bf333dc7e6e6b8aa322e7fe0d031d2244231e04c87200e32473be95eb71fb33ebcea98dd5b270e6ce0851b195581cdb862a829957c5001c2a14e6ee0241241ed484faa6495b4d906f3aa8d51494bf9cd5ca0747cdecf7eec4ee49b8b2b08a09b6ac248a68b5c8338ade1c14c411942c429caab747c3f6e15a5b9af98a12914051ce93682f844a6ea3e36d270ad594150b87d196ebaedb020b4b057b6ce9b508af58b5ca706f36895242afb2c7bbf4d5b0b9b531453be7fc59f21920e573a0cae691eb8e718ee3ec0d98889864a19f6d0ef529ef0364717ff06dc4ff12f4df5dbecbc8442ec3393a10b5b99e13bd183ab4937b9dc58be62f4e3fcc1fc9c123ee34d4dd919b4894e59cf99ac5497de64b71b4353da8118f0fff0d073a22882112c4f929074cfdcb74ba51838b8c5f6eff22824cfc1b0a62110e62150e2296fe12224f0ee18e8d9dc806bb21b899cebd75c1800464d2b1db0415a0050f6284d4319d288520aa33212f4e71a098094637151af4b1897eb28577022480f4711442bab4c0a3780c70f56c2020fec89d8c5c20228c08020818655d1ed739eea800b983a843c83506bbe3e0c15e377ad86fff0b7b10b991b0187ce663903db9d6134179ce3d190272c48842748486180e940f995caadfdf9017571761f8763db2a6cbeeeb5bb00d0edc2013ce6813c3f7f92af106ff1b9a0ca64d6fb6052ca16be0dd0f3fbd1773cfc9f0a484424c8aead84d09a11196ae42ac0e76ea0cdf02104cf7b62ff48f4d52168c1d1205fe20f689e15c4d393d35c69f671f90c8f7c3ac52ccbc5c1917d1460e937e1ad70bc185696887d495725b663982d874ccebeb19e1c781cb36e3fd3c4145a12245c262c08a834d22d13882e40e2c00413926596b8f2ebcac05c5323307778c9c8e500060fc90dd64db355c9712b4ac4070029ebc100cd951bf72e16cb2f50e2323c34dc6334943504b2694cd44f24f478b39745400c0fb48f36197d2a738e33d9106d5867d896939a14e1ad1dbf4432bb8cc6ff394791fb4985d6c87021629d61cae05a268b4666717be971407f569dd99ea191abf1d2d09c93b04a653be02bed321580bcb64bb814234ff389dd4a09bac4a91109d9d23d23425ae88fb3b79857dbb6f4d63a949a6df4e528fe84f8256129bc528415100b0bf5e3a52acfa2bfbab50327ce0b4e02ea4c432cf77440090a59961f9e92123f02ab7e8dca9e181fd0c14a30c4da559d2d39731c5e69e5d575d4dfb23ce84183d9e8ec7205996dcb5f5dc7400f4c7bdfc91e199f04377284eb00f1a8fa81aacf0f093fbb3f87558df0c0c24d80be5d3e0078ab888c15d884fd0adbc03732aa4606573f47251a28a09b0137c1a9d553f11cc9c846adba1cbe8fcb98d230cd068bb7ab593d8b82b29c6b8feac937df82b0c39b09401dd9668751278bf6a673d8a58e8bc4dcee759207eaba3d2cbd102fb00e3aafd480bb7c007e016fa71ad314a46b1bef90d64df080e41dfe885491abed830e13a86df40b0c0d01231e2604ab091bffe3cd86711c16f5ad6c0ca67d86fc5418583534d80692e5ed9ff0771f112c7b73ba952de8569ab3a4a4ea98d3f7031a05a48a2264a56e71d7ad36b2a75e7b66552a98f0e1ed04d1b9f2aac43b5fd6a4d0a2506572384ff614b60da29b3452f2b6f4ed02853cf100d9c8c2c9697ae1c9dc78b706bd4aba37b8c2bbf892803b80413ee945c367aa3ed4a43dd9a9ec79ecd01530dc57ece8563cfe887371a217a41a7292e6c4e93125734231f4ac158bcdfe35607efb721b7262bf081ec8e9b6dd0d4f87000d5d687789102f91fde168e2a6312426ff8f9bbd4be98e7e93cbea537290878ccd84df3d7f2f03f0a7ddcad68a7fe07957fa30d4dd17d0d10f4db42b8bfcee075e9542bb68793aa100515e79e91905da0ee4f3c2c606d941ad0575a630e4709536dacf4b7606b5cb943e63919dc08adcdcf83857cf6cc77238c4d559f626a5cf0f50bb3f38262c3664cfa5f370f1ec264d60c5ec813959a29d180b30053e480b6b5cf27888f556d7d672a2b9adfabb7f345861ec3574fa1a56d29ceda27bd965869ec408b562fc73d54bd428cef87ba9f7114ac69a331d7fdc6b57c70b07b8f5e3166583d05855f6d14fb790af2e7404b53f22fb34ba68ae7878d9e4b7771b0c6fbb58d8b241a1aac7267408de52381219cb41fcb5b24f11e07866848180e0f4b2d287c830434ca85cea18f490b860b094dc5382328ef1cb436bae4fd1e0c01034f91c5d5932de95fb41777165754dec913686eb8721917b5df7ee54e0b81d774e883e35007bd09147dc5fcf6d3394405347ac08de465715f50046612b76acd56a1d1c9df986d3bb398d4f9993a16d3c23291dbc018372ababf9e4d71f0fd0c6efc884e8c9db71a0aacbe29618df657ba11a8e3195ff6409c1aa8c6cc64fdea7d464545dac6364a360a31816c616973a043f20354e819034d88f328d2cdad56406b1a4f63b0f6974c0028ed0ff0a364dd354e0ec363dfccd357abd39552bd91570d685857f5b9813a5e9a7c1a2fbfead8dd3eaecf07079cdd93f0d44a322bb47569262c850d8646a1984f2336a7dda1def001670c3eb17ab7e16de2067112f05a088784b99835ebe7138721b23a13b78630d60f961c3daf7551fd1bf086392348523bd868ace011ff6334c35449566de4d2a9a458d7577275ae66c0baa975f775f0f0638234bb74828fbdd7faaff67920d605d5a1caeb7837dfd8ae17def90daad1877a5d819f26d8f3cfcca9069aedaf3e0313b838bc0df54e87ff6ccdade39a9c0410bae18f714407cda5899c2c4952ae61c5886b3115fb5f9b0a10d78f43e06913b1d0104de08a0037f0031bb6342ff91c657ba19cf53926f8e54d4a10187f1de30fecea32cf4945261fbee4841bf6eb738c3f7ea2fc80635adaa3ced062491fb067562b5077ffa4813f64f05b954ede2c04c1fbea8e607363e50301e54fb83ef20c96e14624075bfd751a70bac3822431b476b0a9e1cacb2b0231ed05b40d8695a771f4c99d9ef5663fe9834b7ac5d0fedee2c652a92208f26c96e300d122d62fc156d2380e13c37a2df3a7df58e17ad77089a049031551a27f8849911043cdbab23546e1f799a735271c49ac8530f36266179402115fb294c3bde23e622cbaf538fda5d836233f3a23712743809642a26e7b9a0e4253450a2b35680fd7184e1e33a5cdd89b20470de9587c8e87e3742bd673896cc8ec082f2ea91b321e32cb3629ea586dccaa101fa5962fa39f8ac3595bd6278fd4b0215417d72d5f0fdfa5baf62e3360786ee3588a8c846a726cdbfcc15dfc5dfc7fee2b20aa6e385d5a8ab811ffcc1c1e296caf5e9fbeaf86d8a3a320956a529b0f82ad90cd322aa6db361fd01db19b1947122ec4ee3d1bc8730cbc20c1a4c28cb916876686a47e62855128b886c7d9af83065c88c2a44433ac606cff847b1373eb2d60c94bed652cf9c8e7e3d86299ec2b0ed322097eff89d7973ceb39319d74c8b7b9e88dcc629c30136933be12e2cbf2fa87c76478178281e521e9c14160759db44df02a486022a18a5dede4a7281e48e3d3f31828a226f2e0d5cf491201b880b1edb5a8e6deb55bec0c5c73d9270a03eb1a5560c7314ff952fe8fdd55176aa75a8c9633983c102a642f525fbe80204ec6297110979a78a2bb2c4f9944a8c600e7070a34282ed815a248e228da6452f2318e491102eeae92830c703fdfd471627f3c4004b8a90815a7fd45c9cc9a77e54fffc154a92146d3079bbc4986babf716e07628a66a83ee6b416ef0e7688a6565b39c1eafd69e6c64f5ef4c36bc395e8ef7620df15b6bbe18955085020f4f9a807ceabe5c6db0f7f99ea1527f9e75de1ff2b6b3d9ed31b8f1d07ea0a7d5f4a75b835dd8b2bbd98c2735d2582523300477a6dd8fdf892dd13d5542df621a633f9251307bdbef3a98798eb9500dc96d7cf9d0aa92bfe9107a86600ee8ea43d76ac5c077656db539de5e7edcf42099df915d5d626a94754add216bdb117099079168716be83831ca70d748b2b77d9cc106363c6284658f9ccc53c458ca3a5d21a5b2060b086ecdfc9e466624bdb2c1b193db519437b22a37ee20d25db526bcbf1327ac4e291c835749fd659891b8353c2dc6eb407fcc0d3adaad1455216a3e7d471c3ad264eed54b4423274082f15735ce9cc44f5af4b6b91ec651ef57516beba4372880e70ea0a7a19a25295471364fcb6b0442a6035ae69609da571c732823b45dda3c194514caaaedbc8765834fcdffa828f7f237b566b84b0cf71d694b8db6772b35838a3cd99af32a3a7ffb40038cf1bafb048a602c3ac9d8e9891735acbd498f298640685ecbc928137322289a1297358919f4e47de3e92ea08e5e59dc773d3a5cbe011d99956fb71aca4a0809715ec0f3cf5a35eba31e16c996c5a5adcb78423b0a07215988cd6d71c0b1a127fb303206e001d1785d45479887aaa3164054d2bea7aec87655ddf8ddb2cfac4571878447b1f92f8c9f1db2ed552ef448e6c51fadc18f5b186efadb9140df2af363178e200ba23124b4405799fc9d56c14cb7838dd0fe49c8d69bb72c0dfdff9d7056934a77fd5ddad34103d6664c9f7b5280fb31ab24e2c580c58613f7cec61c43470d21a580c5382e532d66acf1b888b6e051e667fe805812dbb678a4031d46e07430095681ee31c94ecc9a2c8d2cf98e222c2807a22206aadfab5a26955748ee7cc8a46d2891b3705c8f4424b73923c34c3e487dc5619b52b6c0cd7dfac4e7680e5c2bc35cdb881d42f97ce8fae32144dd75b4792ac44746e6e1da5a83d086480ec4445355b4763f3d3cbc083302f7a05c701c34e49b8787ec3ecb6fb692c7dcdc7020f2925f3db6e91d000efa66b101abd4c73e9ab7af8be281c9d489ab28021c861d9b8717732c17d9b940cd2ebe0e40a8ef29b743e99d94bfd0c884c6b8ce3c7553f08e422d50c2be867c72015afb42902ba28f0f05575888175a16a79832c4c187edc096e231cb946414f8c4f73e86eec7992155295334adab1a0f3a179fb355408ec650656460cee0bc638186f4dbc8e95aead789bf6af6b4887b5e3935ff3f9af01b119fce9056df94d7436be03f8e9a18b4ff2adf92c5e46b8528bf0d61f3ce1eca653356fbf3997dacdeec8e7c9bcde1b3a4fd290d12016afb66d0b9536c0b18e54a8ac8386c3e4d9c83888689ce5b4872ded48e7a8775adb01314280583e144c46a479d1f3412c5d85ce69138cc00247e5ebdfcce1cfb5a5d816ca86b71efc10f81399e10482b94d556f569d1bd198630dd715fec73a84a597e245491955163cdb4cb88528c8362aad338253ba565ed67f1a6b29d8886cc3011497356c281cba80c382ef0947c5287bd8b5043406890398a70aa705e77a9f7e2e37986ba33fc27e128df6869ea02323f293996670702ea2720547505ecf1b3a4b38e8735daf2ad4cf8849548bca8f62a04ad81faa77e8c233f033ace0c60ff4651f432e150bd305b05b84d2c0c2718e52d7af4635f6fcbbb4bead5f1784da5ed15d8ab1a181cdf1b52304d14dfe02a6eb16a2ae67ef9faef8883de8b14016084ed913f0e98e368abea016b1ccda84208fd4666b28b5929b4ee6ebc4caa316301702996d7e4e58489ab9bde4bd41c092a547ea8183f9baff15afc18a633cb17e57c095e8e3efa5f969a1b599429bb1a24f89700bd2411b6cb4dc1407685b94e13c5df9c514572d8efa43d8309d27532364dc7dfd7831021e07688adbca4c24fb20b0b0e5140b4d04b4f7ef8652c526a47809e53afcfd797ad2a02b2cbdc4329fd44ce29ad7f796dee62c69d7a6939d8360207031173b3cfd61258bf59efc8c1d2e632597ef2ab2b79415dc3bb0218cbd0c0e42ee0974c023b6c6123c74065664a267a3dfeeb29678280a12db21bbb922d193f728c8a8dff1ed36470d6b115041c436869175e9d7c03649c0d40107f69ed746489e83592c61042de64d90fa7f6d2251f404bf46dc23659ae579e32390d1baaed871014e19158f1b6cefa5af9ba247fdabaac28ad3f8613cc778605c7bbb315d4206d48b7bcc2ba6e013266f4d022748ca037c9459ae7afa7b198f935f30901e411f10ec907a8ae9a6b9e20ffda2525eba4f202977fcb3222bb361f3b23067f6a914411e8436549d7f0d5d87fb891c0ad94d37d0850924be12d5777dfa41358dad2dce39910ca4287382861f898fcf061d4a53f6de53535160c2b9721b150ba1c100f2a72647b85d601d8b6be66843997f20733b713e20a4260712dc735f30acc75c4fba03b884aaf0520c47be314cd7e6cc8a058facac75a4ad7a3e8640f61cad89353148c47bd3c3dcbb3e48c64979d5c68bb582153abd55a08520180003c36ee607a4c7e2efb0fbd013d1e8e24acb17bd474e93c1116407ea8d0af877e83e23d846a76c1f110534f1b1cb97cac882a4073666900caca6c1da27307702fb33f7dcbbfb7f6c33b8ad72e56214e2ab6b2e2e3932e551b85bdd6650afcbc34059dbca89ba112c136f304c17357174d29b52714c49019e7a191e5b0715bc8814651ad3b53bf7379a861b16489f2a189f9b320ceb6590fa8ea8e8d3b828bbd07d136d62bbe00174d1b6119590cb38f444c1ced3dd34620ce1024fb366e744b6ece4a7c0f715e7c43a30bcd5b4ff59460095915e60cbe295852bc984291a500aa5c64a46824fe9eae4534bd1fa79f3761f0279f2d66f761528990070c650e4321404d427e97008092a934f0b9d0718bdd6eb1b4f9525b806528fe99f9c76b03335aa02501050f9607192f5e1e2b487154bbe6a7d7e9c01ea4d558868f2f2a2387fd702f1d19c08ddb2f89dad097bb487b201354114b6366465f8d47aca0ef6f309640f6abf49ad8fa364ded1fc656743877a1faf03905d59d2c47050cfe55158657b3020bc9e255ea97e4a283d733cc3e5ff18655131d1ec65be480655c48c30128231cf03ea82c1396a68bb700eda2a751ea54f257c67c918750c4f513b166814462b510ee699aa6a99da95d3ea2a3420f5ba11cff37714438c51f1ea18bc29fc74503993dac178def16a2d1f704d08e1b40689d407a27006c1108b04b9c330a657053740afa77130a26049cf5cb40f3fe65435da405c0d70f70585e56d648875504b1779b00a6547487d3e5d22d5467a62966e3075178fe45b2e3fa55a8e1fe3066093671dd4b8195545f28b4da355e59af97a725374c956b6f31bbeaac8b1c715ae1f994a0baa92fc47716039959644598a953fe5fa431c72a04b5639195c15345df3a212bab6f9fc12f7ee4aac4be312dc4ac4d6018742ab0ad81dbb8fd489cd02f9b4efd1bfd2134ffc3b9e447f6c6c71003b634e34a5e2d5f06847cac005019e779ba17020703f19921dc0e2eb2c8d8ffed2d18a9daff1de219d60177b443adf7941f79709bf6696610c673fe1daf1302b192d0216350cf2cf3476529328a010289b33bdb9980360df1fe0c697b9941b572c0fb925e0b6d1fb3cf742fb6be8a5f156cfc2ea311155f0d2e150dd45860f87700aff432c7eaa294d8d878e5edceed1dba101406f4ac234d6c32cb1808e455824648b95e6ee659ad593fd1cbd993da884ac81bd9febfa21700b374f636d77415d4ed8f17fe1287b6171857ee96bb5e8f6f43dfae47992112f78c35ec295a98f392d59329712defd085b0527ea1a543498ca994e1c54b6bf08a46975dfa9520c7fcc9982cb8c1bccc112947080d37a2c9036bed71a725a555864538ad19ddc75c47af5522042786b9e42fe9c6a30acead7241804268fbbb7d762a082461c86b94b7363ddb31fed98c54b0cad31e82f33199b0c2171a707e9e171fbaf980ca510ebeb2d9a515658348458033bf3c06e54008cc0d0b157da19c80cab43057d02b4202f3885e755a6ca1752c1459031ea1130d98fe517f7eff218e1311aa0b34eaf589e49bb7359b255756b2d1a22e5d0a9d47713ed67a9e9e18e456d6b6cccc2b2960bc31a60afedc497a1849c7aa600a7f45027ea94afb83ddc2948f5b5add14dad064835640961a0491664cddcb6085c411df1945d5f721f5e443717bf7c6c413c0a8fe0b28e2627394a7d814a80652630291d43052ea0b8a0f4b309628c7e853834092a441c949828e58a5c22f153d7edc84da475b90ecd1db13bde68ccac7f3ab2c53caeb301c35b7219c6f51cc338fc3deb14ef51d657c519064325ae479cdfbff6ea7af8b7a51bd4cc07a213eb98e2ae19d106913f46fab1e5ef514b9fa0280460f1a4ec8042dc4eac80bf2d615389f8eb699d96c1e8d1742ee0a160a4c774aed80846cd34b91788d18947da476ee8e96409d78456769d578c3ebd4c9d24658dbf4ad83ebb43f5538b8404e2f8892049163a2a7a346d9a653c1700d91e8af300dde9611596c0760fa48266725a370f26ef2323ea5b10fb7bec0f5b5eabfc9fdd4f4c9054c2321c21f664e61601f85a156aa476b50ce524d0fe31153c21a0a21833743831fff4248cb260480748a04a32b0155f5b8aab9e11ae30d404d50b4304b56f78b5e017fc81a338e9c8ab17e1f7865cd0cf1bc965ee5abbc1ad07adb37cd66b03a2607d43c1f3ba46bb5452dd14299a79049c3c3b83bea704a6eb952b388df49ccb02bbcfa7ac1e23f52ed9432fae5535b4cf2d9e93e153833dc9f973737fe459cd5a0f08e79eb373eb1dd7cb88879ef5037d9b9f9606595dcc5ad511a4196700a4c334c0db4dcc2537047a71f4bc477513ab9ca73874cb67a9a317231a9dabe5347a4d452ab7b313425ce7f21d5313fcad4afa38a75a49c2549f1f664e4d438213755e4ae124f8d8113355a95a481d32f64b3dbbc525f9309fdf4472256b7a91abc4b7f18631af5641912a7d76281fc48fbd0a00ee92bc7c963724ae0649890e2ff5f7195be4a678d9a03367594d2ef471b84f84e9a0fc9fd268bde5153e1d08f983ae4c35c1bbc43287bfb309a190e354db267520a6f540c5a1bef30e533777d4dc5e5017d8bd78e2be8d0446be5e583983fe7b88fba8b2045a37ee7cce95d458f3f165c4f9045ccd2db660687a6587b8ceb3026b20d90ac847e73e7a88e23b1a1e5cbfd2e6b81d1d8084eb5459a4660f831f877af4f05875a66214d52dec17d30fe3f6eb3437b64774da7af47dc11c7c03d3f89a062afba5178774c61a3d781ec5c7db25ec577a51b7aaa14886ed563a54068eea1d6fce4ed33d04d415d7b2402533164381a376523dc3b3429e95f20821651566d69c76680763bc10f94d02f9e303b2268c521ed18646b0119cfc230d5c9b3cc3500a41a93f4aefe0bff9c6d7580f1923a8581830ba9f3b9ac5626eabd9bf639126a64cb94448efdddbad0ef926df671af5c12ff3c74a0e2a706f76b939d081d3a3e8f5ad9ef8c9a8c4da31756d691323bdfb538dc5f61028e861d90b32deae144484baa85e88720acaaa55b9c3f55c44031075b33fc0f2d331db029c31510ef3a1c6d119e5edd614129b7b3a1f4a848bbd721f61d3f1f5960f6641845626a2c0b5ab5f80a5bb053a55d073256ea02e3cdea7e170be1a2b9f3b60f759b6de3f663354f42d9567a1abfbed6f64cc11acf4a20b2bad8cf344b5cd416126ae402d022bc5d16da0658ac38293d2c6553f64ac278deaacd851d30ffaeb8af1b33c8b7430eb7276a039cd153426928a9313c12b9c9eebb4efe9394ca56cafdd1109b7f9cacbf5dff6ca5ae1de2bbc2c080ccf290695d861cb9083690e81d1edc7cb15599d83f4611227a1cc4d25f77a93fd225e3eb5bdc8c4477b8113cb08f63739655278166b609037bb7ac7fd140d8c1d3539a5e9933d75080ed6ff0ab305937f93d6c447cd7eb7255b2a38586195e80d98c5ee52ed4fb8547e75cb5664ec5da7cc8c07d1b07f2a082df6a835923b53f27088a5a3ccba163122053f921b7932217d427c9070e452344c457c01c3fd498520f4aa8537546552ed5f95fdbc16cd30c04f07826bf0a04377a4e1144470971aadcb6b2363f308dc14b268c7ff01facb0246beea6f71cacea9f74275d8726ecc9fe6b9cc6e4d6fc8871293a5c023021843ad2e36fc94bd3810b205885a954d025420a1afd6073bead840b8ce670366fd026b0dc3a4da46e71399c0e183cbea391521502053fc839b9df415d347d7f2fd28d8c869bf384adfa3ea4a59381b450a61101a694efa07c219fb88834c00b983bbdbd01072fcf1b3541282c97a50d0fa23db3fc5a4be7a9bb5bc7d58bbe3aa24f13d9cbb3ef6cadb6c97d3b14d60593db92d188bcd19ea1038e82eae47e6dedb1e3a5b4f1b33e1c2cbbdf7caff8db8658e602870d25a952db7f9817069b9a75a85aebe5a05edf08814807cad5236ee3d2e59083d31b5875f1c2d1b08ce68c29f75f268d7bb3ce5f59a487ea0b937c6c47d15e6c872e9e7e47a4434d6c3a201716a6de22b10b123c9d1c6803ec816b4aba6c0032d4fef71c1c46ff5b4957020f36227dc02686423b36a1a2793432f3045b19a87ca25eef14c3db64e90a39c7038c9a2f942978d66a0323c4279cf20de9a195c321a961c62b6fb99a697dea7416c7d166656e00494a18be9948f22a4c5a46ee71fe2b7c7885fc533a526a43ee0b96924f2ad9375ef0d8af50738e7f0896588715d627f62771d737e89336c316e983475889b645b6b9d7fd7fca083e00b7607759cb2cc4b014fca1f2d94ae4c7a30f7d532a431dc8302a2c74ac187fe845735db5b946bc7413f9f07073f44f39f033d3f598444c525c562939600abc3a20c21aaab077d145e79169aed58691359764311aaafe72a7b03daa51ce67e7ba1fd20551d54a75756280db88eae130904a0186b4e3155f11d4b37260e79444df00733b6e94fadc572bfff2d207b4377aac909803bbadd0345dcd52f38cf148f2ed30c75b8ca5d897a9fe612ccef67c0eb4c7b0632924d3acf92bfd9150a10ba0683aa8eb15b9f5376a159ca0741a915c0b6f95d75356c2331ff768695184104340cc51c277f0c2363de978b4aa6c2f001c3d7c0f6a2cd2237eb27a752068e40b2d94bd4af5f0b08797d8e1cbd6d9c19f14bb4a9920b74b9497e00ae7682f340f8938d0a5ba645be8821436a7c504131a98a5ba6cc124018e2cae813846ca5104922fa852fab3aecd67880d51e06481194aa2651516d7e7835d1dd39d43c68ddefa3bc492349736db3c38d12d81967859538f0235cf649e6edcdbe318bd346916d68ea2c8defcccd4ef3346ace3fdc54905cc5333afc46e000376f4e48939befa97d9dd8b189f3ff62f3ce23cc74ce153c4b2d5b8b6484dec8e206f86a2e0e0c49db8e76568ee89a0af7c3638823397fba251ea4ffbfa39453c6adb3d35938db33bc3d3f64cd479ba091679642a6108a822f9518bc2b0ec1f19a7041d9029a86ecb903c94624c3fe4007b637f43bb61ba8ce858498634900759e0e127d47ff452f889a8d26b74ab8a6a42261cec4a402d6f5754842f9051738219f0e4deef405c688f81c54dc461bd4149d5e3f12c5a531128ec3e2bba8885cc0304dec1c97ad84879b0cc1af0bf44fa6264efafc3d6344c1602162c7e7657470a4581a3f7fb873eafd85e3891756796aa53a1aa1502568db0ef4cdb74e88076fbeea81bfc065e263d8bb786c69423577c950195937a26eba4a07904405232778dae24ae6a20461be8e251b74c105185decb9311c2880f0adb29d47063e322b21b72fd31a57be458a5d58cfa46501fd1a8d35314a1b992df06d74fa744326f8089389e3f15dd50b2e88aa05ac24613d2ca74443b8636986e36e90132047b1f15848aed474209127a5271e4aece914e4c81f49156e8d6b436987e042a4e6703567cff07e52ffc456ecde91e560c201d4ec11a0996f3cb8a1503e00bd7bb39f3cb095cabb66059816e29cd5342bfdec0f3792cc69d212d992a467e2100bdc516bf575c1367ecc2263a84acc0ca088c63ec99e36b9cb076819d0fcf8a81e3a0cd5f3150b52a08c64429737c0f178a0a57145174de4f1199b8b402127ae1b127b2b43313f22256e568cd3122e96c37d0edf4af1f872e47b7e6d12a29f271d954a92df83c583605089e3c634d9786b362d3969813437da40d866beb54b175fef34d600c1505681c5a4d4e22a458de20c40938b27096c78923342257660c3b2a62e14920809555d59c040fb9e7a40a449738c6b8cb7ad0b1bd0fca7f359564bbe09344720834fe7630aed30028624f16eb09e5a6edac9c98142916ea685b40a9e9a6f7ecf27eb12e2ad748f7da7a00f2b8387459543e7290bfee6392777da0661cbe0823e068b2145b87cf6c44d28df8bd92109f1cdeb8e524d441d934e15a586e06b7060845bafa369db3c8885cde4c7d0ba5d0df990eee79cf33e5e8afebd5e63841337b108e89ad5f491bd234286b7b4367a3c5f7884da26fffe138319be46689a8c58cd8c419be8acf787d33482ccebab5ad4fa0ff8619573c97558feda9c43db90607c7c873b757cd263d6182318205eead06c9542685d74e76cf003150b55c742cbcc31a97a64fc3d3afcaca6f6b7d73e69501f32f2f29a35e9afca651a12f8d90d1916dd82cbf3fdcee7b362f7caa2a599aaabe570a0b75a992130fe279768563a3532274754afbdd144736d3fdd7cff0bc94573b7b79d03bd438643ea3a73c53643160c14e0595e07c9dc8c4f7373aae24c446799bf209853f891357eac8ef56f6548a6443de7d140c1bf5f4e1d7b6c074b8545adad28d034868b03c0491ef84bfe5d4146d01bd3489fe3cc350edc837f2c3adb0c85225c3d4125ad77dac8fcf4862fd97c1e6534b05ffc8e1fe5c0c32c84d084ad6219a2a39600d74157772fea828ff4b230668e5cdfac25c97c9afa4bceb05f66d100e7433936d04900635aa5603d61d4a5c6c6de9ffaa98c133a0712b3015cabce401abbae177292a81558f291b83ef2386ac856e02a855381b22fd1036134f598d04dc964a6ca4fbf3850a88bb328c01ac4d1647d14f9c338b69988d4f0abd244070f2f737d5b4be6611badcd2fb6d9a214d90973c58b5aa712d3f37c176aa597b7c7c95dde451457d8cf35b401f431abb54b890e6fbc64840e4af2d5b7e2d4e6a25fa4b0f97af75c6fcfb0c57e05d2ab42b00fb05e8cc6fb91da6d42819d1e5270b583ac4ff579ec6c0874e57b4642839225c501d05fbe8c25e01bbf5620bcda3b2b77500619615b43dc6f82b261fabaf2bec81c66e5b9708d34efee727081912d75683f102856359e62db9c1ce6fed84d2604ef16bf25307a8c2f57d5869004ade73f6fb5b439701d82661cd72740fe55c28c4e3e5a36d7d86e8eb0d11b4896eed7d136547ebced2bbdc3e8a22a4c20dcf45b97838148233c152e72be435eb8f4ae7baa31e961e5c37bf81ecf39955154a49d448d719a6a9f04f4d53dc913fe3dd6482d932503c987c70381124dab660844ccbbcc9dcd8c1796b39624bdca6e3e06a82dc7281af6ba26618957c1263698b3228c9a78277794174290ef7631b792d824bf1d96e8cc9a2a08279e51980f2e7af42ac252acffed81f595ba8cd39c73d6a2f3c652cd0708788e099f8dadda20d727ab2b995806779684428423c86647d63517027dcf284b5ce37d7446c2a8beb8e0655207366769abcd7462c4c15db8ed1a2fd5814b37c0db32e2e4af80f2d2ce064e8f18a7c9dc743d4721de1ea36c32438058bd6c8073aa1f19262dc5694f09ede600a6391d304fafb2b17ec41f6acea4535d76e8df5a67e5460f9b00b4b34c6ab2466d46066af32de2e73c0be0ae6be215d577a18f9805e5e93591aede86b65e607c4f7410c38fe4df5717b987343e774d482ac95e4f200fec662b62613e9c5993daee4522e52801a3eaebde6d5b46798c6fa7f51adbc31e39e5392af2351962a958a6535d3db1d4681d0d463501cb1c533e3f031473ead454b317c2915f130c3d2f827e7e66c10f3e0c6f837c144805f39b49f744e81f29c57ccba73cd74c74522f181d0e7124cfe22f0dcea323f680b2d07577287444c0c41c01664d69b042c5b4c089c58d771b9efd3e65c1cbc92e8f8365e40c8c94d4442d18ccdbb2980d4d33d7d829304beece2babefc9beb3239c0e4eaff9b8510c0326c88b2258ee5c301e1767969f595e668986de5f7359bfe23c049b1ab4157140c05218d32780982309a238abe9b040da8010f73db03cf79cb9bb435beb12986fbb2af68a04a5a72b2cbd1104c95319769e6d206c2af9f0973d8190648f99ea5ac8717ec985e84c35d3d945fc824175404a8ebac08ad6deb9f78e11380fb443b4e7029732d228a7f2d971f682207e8b5c81987dcd59334c02fc10403bdf2c7533a0d7c8bd0d66a68fb384013b40f7884d051a6fe2f8a93893d666167e5d1ddeb82a8683c5fc8963c00a1dfc7a62188c19a7b76d5f63d380cd9456dc17a689f48b4979573e6470adb6ed8735f725c924b3c5836ef2e5618775e9dbbd48d49b976543e1d8d1198d8a4519ec15f3ccdd420552f8d9e1ca42077715f75d504860a2bbfb96f3d83712a9843d22b40f070bd4cf2296d7de10a46e8d2ff9db4e0efd8617efb0188cc7f44155510fa137640e20a511b35a0a9e0908d778451665c55ad0d952cd21265886162448301e84ec7f0db1c8de85ab61793809089a9d216dfd6364cb561179117974ff72a00370538bfcc32879e6fc84a1cd9e5b38ef5b65672df2055ae82769fd4e5f57aa6ddf7166e579a20d1b697e79aeaa21f95804385cb9a45db457aeb7938710a5e156d7ac5c52584c2ba9250cfc419cedeff30b496af027639a1d290e86d82a6facf8e1e695a55bccb0a358aee0d8e8698d1d452e3c13c1f1964bc1a266e06ffd6562f37340ed18247340dfaf99c346cad791d0995e55e97b85844b80d5b9ac3aacdac5f98c3948ec1fe09e1b2aeabd1dfaf21e2b5cb929413a5000288802d9739120774e2d39e202dec6c904b11144f196c706cb5d625ba9c8d9059f126d86a46eeae915b0ed97afb747ed1210025a6eb7b588591c9f804652c5d34ed5c48921526d1b888e508b07c97b2fe3fd396fcd93054036171afda44dd53fdb9d38e21af89d5fa525e901b1f954141d23638ee80b8208e89ed0173901ce02b4ec79da9f44001964e58d966a5e92513b866ffe864342be57caa775448e0344485831d2430b8fd28e0859e9f871b1d4990e4c8310fc74b38f43c15a74911f81b9948ff111189d1a127a9a02808f9dbef18c42be23b17040b046108042bd9ff97ef6935037c9aaf4b82bcaab9b8043a83b4f58b29bb03fbc28bfd8d16dfa9e9cab6f8aba095e941e5acbcc52a434223e2ec84240ebd299c6fc3a2a9be8467dc57b093c9a595ba5f19ed9e57a278096c0572418fb83fe24852d62e71d8c88d62c5d658a38d6f38a82741a1e93b762061277526ef396bf7f40c2d7c4ae2cacd18d3d94e0fc44152c68c44cb102ff0ec215f9322efca17e22436cd5e4a56f551b6af61250dfc7cc42a1b33b7b28c4b5c63fb3420ef6f371c29cd2a46dd5f5b2c60fb9475f26c0c1db0574e706c7ba2bcd81b1fac4624c0a080c6ac3b37122bf1151fa8231309b9a01fae049b39e4bbd3c38331a77a2a6e929d987df93e29ee7d00c1922dac2f90036d8e896695df4814903156001d091d7b04c2c81abac43c3649597aea7ff1fde58b4aa4e93b3c99cb03f5a6f7e07402d679fa8e928ab6838fd31f1547601702f0ef31b026bff3e4e85521616ec0f5d04ac9929870f1195673a55873e3512df4e11f7d92b9f28d23185ae3f2f8f136e7efc8de7e8a886a89c3fa76515f03969f1bfdd25537867feb9a87ff79f66e2963d91b4032d2456ed76604e20825bd7bbcd1f1ed6bbc20f15edf5eda7cb3243e3f6b6140038aa0b3fb37f6a21b95a200243076bee2e450ff780b64b231831253c16866ac087dc52c26fb5578daa7b0b1754714d7fd103439512d016139485eba735d328533433e9468e748552e31945026247013dc8f22791c9e429863b2ca19eb978b726aaf48627f6d947beebf1669d932e4da48171a80bbaa841d6a368c3b11fe6bf367f3387fff5320abf4a84cd4615c438897f9d2987ccdc3a47f3d945e8d7f44384cb09f301a67b2f813154e6d75ee25a76247977f5c0a444f9693aaf2994fd91c20136d3cf33ea38642a5b904f0592bcffca4b872fbbccdf7f5cb81b68a5d7f8e012ecabdfe8befaa03d6701129ecbb8d7daa3eee3685caf8816d6ab790f3d5ee564c36d13b88e4fde44b67bc979f53b10efd6a50057064019e44fdd1a2b926cc52e300b7814a54abc8497470dd0c70f570a243f0d6440dfec8dd2694e5558653c58772888de90cbdc41fbf19d3636eb309fb4b2f97402e71702fe75884c5d94d27f6e611a84cc07e44b88124b537e038b9410e32aff17757b5b8cfa795361fcd5bdf7c97ca3dcc534eaa079f06e5362edcb6852e3c450bcbad045fa872c5c6d52ac4eeb5a6a46f3da1073e85e06bfe5cca193de5bc7ad443e1a49800e7070de196401390f5ed51dc980098bc0b11bfe692a253294796bb38e792af889e63d88b98d346d934b8a4acc893e61642ab5763d0147c95b8f8dd5a996aa086a09f66c8a491e5c7f69da2cf6ca27f8972dc6c602ec570e58f1d3f30d1b0ed2052c09464605e716577897b83ec682c3028e87f0e2a17370cffbf137e6c5aa1086eb00402ea5b76e1b8c0cf2e216bbb0526884e386ce22311a0bd4c87f0080105f55ace20098f0e50eae1703d7c54023e23c97f188a047cee10840739385e6c4f6498dd9d2aaaafac9c5b2d5e1ce787d43c4f751f6b02dce040c27bdac43bec785d3b5d92b11e0e9787a673c8d69f265077ebf41a6e74d1d8c28fb42d2f166bdaea0ac37c523c834d37ac2f8bfb02bdd95eae92779834635df1120ce2d9363cd8ca77e8161e89faf6f6b6373c128a9b988241c9f3cee11f470bb5afcde4d2d512fbbc6a7958e027fb3b3cba3a036e56345d57c2303cd6ff7f24243d85c96b1343e18c5fc78de1eecc7832a5486b4bcbca6e718bf7d854d99df0c3b3f3aef11830515506378064ad452eee207cb15ea88bd14759d351cb7fee6354ed6b1fb562e84d4ea113bbb4114fa68ec07ce1cce7e33e27d467c4a956e9e42ed5c9da4934030757b45bc75e8554fd3bec29d158354d20ad6c35ce810d90751f2a5c588e17db10f069b54b5f9c7baad8531847f1e2c0c78ec68453a2cd28705360098c52341473002e47f5e8223525547e7888ed115806887c94ec290b22457b30ee8f0f968388efcda96f974e4448aace9a9bb255c29a55851c5cc09d8526b1e7507f8386ef4fb75d4882970978da2b67ce988c557a43aaf18b523d74eb83b164fd627f99f6e25cc1d1e8e880d9b08152a8c30585422515d428ba3cb73b5d41944e510f1f9a30e0eb76146585ccdb01d53c9911b70d03e63f6e6b25a70dcfe5b1730ae5b74a232a8f1a038c242123ec4ea60e9291adeabf30e6109b32aec6a198fe2a4c7a598023ae37ab2fbd8c3c46c2cc6f277b589204a48a55f6009f3c3162f8d6d8aa106f4e5d04bd0091d75c05c0a9f9dc9860f0491ac477d633eab8a53137b419a804e215149223afbc5670edc58cd5aed935ac1945e8359292cdc4cae0f0741fe132cb73ee69a8b7728b8299da345090e56b76bb0a4e4cccd682f0052b49cd9352805047bf5c0c10fc9e8f551456048ac3705fdc4a98a3a08703b5102a3e5a00ee114d84c7c24ec439a1e54349e73611cf7d0a8f60a1ca5fb1cd4466ed8b902f7b9ab9454b560bc4e0d6e6c2f6fbb7539e8261037751aaed87068f19812b36b21428b63da8b7b713172dc476b39acc2271f85566a7cd3503ecaeebaecf60334589a9767ae62a4075a1777362a7952e585a9370d80494dae2663fdc01136f8bf47d63c6632d6f79811d086baa499235321b48cfb91efc03556c9360d15e4b1171b93fd791d969858b08eb86a4f671ca9e7811daad834e2d1a4fbe002fe2852a96f0bb458bc0c5dc20a28d9591177e7a5cc222a6a2bbd300cda483f48c0b91075516aed7dbe12bfd899f9aa168e285aadb3a8de821d2302dbe2866c01f72bda3bb843d0766d826823f0c8107b52ada853957d1f835cd523b4ac9554bf2a877abc013367d994e472c0b5be95f69a50934e8d5e04dcfbb6b2707e922423706d04ba1775b21d40ef38daae743e2074ee22544d885ddbb907fa4f24c9684daa0ae91dc5a4fe3aa8b5ad3af6fc1f5cbbbeec47d22d214c3013d5298e3a162ba82cb450da5b088e88125dcc0ac5f494dd6fde7bdc3bbf57decddbf416f0ae7f3d5c1672fb6aed737925d69d7b3192d56220f75b6e7b2fed80edf5884e1beb8cfe32a3eba72408a83f9f6b349471a341b30ea8d8f044177f118bc7442741c5e17472a365099a73569bf17266d7581b12fd06d67ce3baca8f3ee93de7b2391464ba6e7691a2aff5864574e996fcfe28d0884034da7182ea2558de8a8a6bb7eb9d1f15d044d0f2ba0619a318ed12c36d69b090cae48386db8a59b4cb270bd4f8824d3e4d919fa3ac4fd00803f03d23d0f147901cbb9428dad144463b81a6341d38ab07d03f092bbbca3e7c6c9fa2fdc5ee7582d5a8811d9c7a8d247761cd4bb570543118654f32e58605995daa7f9c59c51f26393b2a362297b39bbce82badc84be395b9f83be867ff482bd02b75c058fb0469da053e2b6d07913227fb2bd7a4a2302068c39c5df6e57f63b6f41bcf010710bbbf4e996cc668cf23a7697c6311929dea8454f29dbed29dc19ba3920e4e64d19a1bd0e8412c58ff89a3732d8ca1c88ad5c2c62c5a2ce0897e80516d665e49710add66a85d3f232f2056b09e4ac7c1bf7eaa8789e17fd4e49b1c8ec6aea06fe60bcd9f47c91ce606762c60c9ffc2d4b05aa86c7bee244e85e8e6d1610d57f52a498093951372d6f8a57240c4c356db69c2657669abd710414d9ce63e21805a895bf0cccb6263a2b1ff1b42d1cbd04cf07f8a945a587035c552f9fd91ad0a0d7c6b32bcd0a436e372902a5fc2d0d506ee4543bc85ce16abddd2e422c537a3911ce6c7cb2c62567600b858f152b8d2d96292bbae1479afcb01f629dec2dd70b6323d39f9083a6e61af24b1506e65892f69a0a46ba8146e58fd476c33c072dfd27eb53e4947d0adcb19f9c0a644f845c412c4f589e1351f50d63734be51131b4f1596bf7866510abeb02164fb1dc04a8352e87b4e10a12c7e0fc4c6aec1ae7f65fa68927fbc8244c5d2af8995264c21bb211167c55ecc0ad36afd0a5bec216226559fa417c4113e68f0ca158b72eea1c29ce60e6c550e1c4da0568f1248fe4694aecf62e77839d5a66e38f72a460bf4f9bc7f604e02c63f780faa2805d87a50ea8dbb5789e5b97d3382a72da1c75504b1539b99ba640c037f63437baf473efe2ee39986ec51c0e81e5f129cf946004f128e53a20e7052ad7a143073a45e6f645b15f522f3cb9337990a01741fb6d0fae887fc94557015c5fa8fb13da8f29e047150b05d8d29448d92adc65b7c26be00894f8eb50a0f22b9b7fd694b05e3eed8e3b3d101a1f9c07f57048e67f3eb25549da997ffc29d0f6f95667e410c643746ccaccb0fdc49af05acfe9a3a836cb7c725070400f74b75dd0e723233556cba478644ae08b16e3f10ce4e82f823c1c79bfa2d2b87c96ec6ad75405f1d3b0856b81af1bec60618ff0fc30580e04d105c7532f92fc01f773f15e3a4012b85d31fe5922004077e7d6ad535a6982bc02d48e51d8e04580f97e873fbf5f2af1daa4891aa26c55005514e6bd4d8b994da58a4b4211b4e0b28d325962f3d52ad4089707558605a4b9a1b0366c927802d7dd511d19fc4952ccd403e429f354db601984441288fd3c4be6beb3d81996e4f0cf503b91063796b826cbfe092ebc379bf60a60e24c176849d8d81fc490712639c16bfc35719d806026fb7200302a7ad45c01e52b4b10f973db8cd61ecd9546d67a2f958cf4009feb4eecd6ccd257aff489c0866113e9def2a55ec7d0e7162412c162d8aacd46c974a449fd29f8c6a4227caaec2f71556f54c547230d05c9849ff613a952dda251f65431b06cfff84254b7e2aa552953389177c70a63bfa05c41991f7621693369349163b0bfb699764e4ca4dc5a8f80f111e6f4148f9bfce8d239381de26bbdbb9cc4bc9381f9865b75dd1dada7dcdafacaeca0e242db8a509b469bd4bdf3a3d46b9fd282e6e408ae355995f314e40c1bca7bf122dab430b1d78b7645bb5209a8234baec80468899e18212e25065b1ee81de4c1a72a45670fe34ffaefb51647b626fb49fb58ea52f34429cde08569098481126306a837137e3821367d4fc5db28e1e14b0ad1c869a7859a37d00151e308a06091371fd4b7410d5fbd029aabbc763d5560359666168c319153cde80eafa1418f6c849d83b5da0e36df83e6872b37cb9a535d414c32ad52524dbc84a8019edc6852976c2b0e2bff4aa423d064d7bd30041ae41a17230a1b556b1207a2a87e0ce236233776694efb60b819219918d8505823901a80dcf72983c4358f00dbab024acb598b683ab20f1e1cb76607e5cf6384e840aded2f5d9091badafd89deb7430965952b745b47ce608b00f17c16bd40c45dd2f0d23d787534b7d4f5353433394135bb98fd6e1179da164e8ae2c3890f19787f1e7d8408155231150bc2a76102b525146717bb8da04448c3fe56a1f52821ee1f6e80c6c823192185d18183cddf8cb971d17977e0498122851a3d2f9434d0073e6fa3e41c1a9cfa8462eae83f44315069b1c2c0c81151456fa8b99f8059ef6af0dc990afc7046344f071295ebb0d1b9b708bfe61db71b47a17a74982d0a767964f6140f1c1d24391e0e5b8c093a1566eb253fd884f1382b44366df94dcc0106e6257ee9f25e3e351f7153e11153ff6cac0cbbc2f65c06bff0ee09fce2479e2b9831ad548f8da853b56f67e23e89e17cf8ed13edcfa900928c80181f95fbbe20f3f05da57748fa6527ef347a0f70a8e37d25df3e30eda4865194e134aadf675b3376265dc99d6190111238e41fe82959826e1c188e330745c283550b7eb379c69de7f60080e033f116ab46e149e9874ce6e06d3cc5c81781ee05e79d4e178542028554ed4820e5991ed893b46a04130cb423e66828872448418ad9b637a6723e75caaad31cb32d99d1260e23d0b2d359018bccf6af4e5c348e00e87a19e8dcc70c98f2a1cc6cb0761067435ca4a377250849bf4ff9b2e63cbfac41252b3e3ea5a511e3a3c9e687490802d3d35fbc183c1aa1f3640c465420d703becadd6f44468f088721b4ad2ceaad17ae1dc524cce2f445f78e022d59270e0a3ed42b4feb010e060f235bb2649782512670af48535917392080d31e7d6ab9b68bf382e03910aae87f91968cf0b05697d27d14a95176af48a2c01367e00ea7144836c6fd022ae0d85eafeafc11bcac19b597bf2c241173b04b7edd573c901202435f634d419810d137c81653619c0a1cf40f596834c1b3c2dc008452baa58d32c7c024668ca5ed55d8aca1969885251562b833958cef70bf8bf17c00e86bab91ed14f636118000f40ad0b8e16a17f9fc4bbc0c99d3e25b765069a4cfa68a548eea5837b4a3e4aab3b4a43f714d790b17947d12926ccac1b8f3063f6a89ca797f2a08a5493e1859f0fc7a310c27d911f9c17430c168b66970be3bcc3469a42dd007de0d27701e4ed1e149c26ed943a09b51c2040b2684b77de051e1b342ad5d8faa89328a59f1e2c39468e838aad1525e161453183485c870e527350a691cf17bd27a486ec31da1399b9464584d914dfa13e7a80fbe66a20a87d0692880ccceba06851c0d5131f73780b04d6c9b3a7a699baaa74e983f057f9a58e029abde668e65648a1e16d9f87e9eb0fad7793820d1cca09a85fe3109392ad8dd1ebb44d97247219d5f2ff84da00873141a6b97ca364c24040fe2fae6f518674b9e606765b2a9921ceb17cc74512d84922431ce93fb50746138d99255d954ad40e04938e96fb3f2b6386d10a69c29bd34c79a93543326dded8d858c7ff5c6a86c5c90151fc15a78c8c8d5da2e5745946b954bc29ed449133b69520fb36f90c3523840a74814f78be1cf24430689edc156a3569bc8a085a0b6e418a2bd54f3ac88f13e12ad04b54948d70a17ad78d1e06321f2bd2cb014fc7229c0f68122da138241ef107d0462b05a5d00eaba5f351b5f9b8b88a5ae1dc72d84fecd55288a468a02f336ff06c2dfe074ae80253c3824a1c7ede8683246fd14de6bcabe23a197ecace8193fbc589c8277206811d390201406d298e611e022949906880c45650cb9b63bf89142f582f27cc0b2777caf8d03f559ae8693d4e4e3424845d63976e3fc422b7891434ae5f707de80d10ab90004e448bc0b473d358f3cea1184311896b55f1f73852ed921924106cd284e2a9333bc4bbdf0f993ca99da5ef46d879044f4f51a108f7be6687855b28de2503999e4cb52233c223a831931c13562a2f060b518d6728152c5628aff1093d7d6fa0cea693d9e29fc4cd968dd2cb9cdf2f51225c1a401ef18a83f8130f971a7989f580566447364876d118f67c95b9dc5bed30d7c3a0e355e7ba98880e4e269e6800858caed133189a25ac4110a2fe54688939c34deb2acd2b641b64b1daf3fa941bdb8fb6e488602a6d17a2d96b709b5b34bf6fd35256e3eb4a68cade7d38e64908990ccb5f87cafb6b376d049decaa13a643428623176e725b53ea4f435dfbb4029850bc46e069e78edcf1eaebde33a7c5a2b8d74501b3da52aa4828d819237964a9fb403e9e4b6b9d30bcb6804dc99cbb9a938d8915909acd893c8c4fa9c3a9761d4fe07ff26299d506bd740486fb619673c73f6ede08d4f1233c6b94e7744c30911066705df7551122b3bf900a34c886c1a66e7a86d90b23ed506ac5a94b940a6d15a8a7dc16a12775630a002018696bfe40c6dacbeb7db9fead94b2a5a0a57d76c5cfd73cb62615b9b6d707070a8fe7b9d51e0deb9bf52d96f4c413d86d1af16bc262ce13254df8b566738db6f3177a215b0c8b7070b78120982c04eef2ece826f3b820e2432f13f1006398f0a5ff5440c743f1106a2f240cae22124b7240d48955174cfdb51224ef945c438139c0d2f673acb8983640c00fa56d69122a50c27add2c97b2d92dc2553fa8d55982a0ccb1141ec871b4a8eb7bf7ba705803046a482f8a471df38040459bf73a757582d4f6f3eaac6f446d97c4e33d7a71570a4fdbf43215ef94089a13002be47662a02ee2257941d777cf1d49baa86948036ceaab6703ea7dfeda7014ad5dd603a6ce83f02625ebfbfbf670fbeb7404862875bf7e83bd0d9699ab22af4fd962aa489d488fa0f916be3489f2bee47a1084b8b9399337dbc56b28e63e6a2be1d72b53c108952ee2101d3f75cbee41d82406697bc0df7809d793baffc9e4cdfb8e9fc25fa33c4374e65697753c65922efb1a46c6265f4fee1faf00268d82e8992931108bbc646dfc5b9406727586cbe679c7d96e779b368afc57ef3d1dda1b71aa85753c84509d0a206f58ab06db043a2425c58a3b0a075c2ac5bad439a1ebb82cd9f048f2784b417a5988f7ba523d2cbe7d1931505e11712d3f815b50632d4214b0507a3ee4e69d3704a4f3e8343656e28c3c8821720d6572da58e6200f8f10fecde282e1a457751cda9182bde816f9b932bab65efedd2f16ef2a570daba8adca93c807800162fd36c52c6560e9fea225fbd0f9f1c2094fda4c175451680ff67f6d2a24bd6e41f77aeaf5f8a508be57982b7ad055f02b2ad269d57819c8761a40a05680497593fbc74d2e4d49a4ee52b4c7b193bc1118a187a3e912baa5cb48280a794f722b0e87a35e4e526b20aea79bc6bb4371fc800810610b3c854b1905a2bfc59652963da4af0252492e7077f9f0a54970be875871db25b26b17f654e4f9759ae630b2fde3fa91bdc1c3962b0c82f375c2d02012a492edbe172159dfe76ba8506116dfb0f49e6e101662fcb38fd2cacb01dcce6b0e50752ee9f182c988105d460cef54bd9aacf08845ebdd983d66a995ed844356ee8f3205eb57b082943f0f56b127dedb90ae83aa1870f1b1bb84c8471a8cf6aefc079d7d1020f5437a618161c6c942018be7cd27dfe384507e4da91192efb9dc02435f70a6e38371ca23add94e2c125d5e7c1185a3d5c5a69c386f1fbb620c08f3b647bc80295bc4b7a8355904bb46742ec3265153595dc5de7fb952fc4e672158190483f45608e85ca0c0fb52b54926bcc6cd4d90a17511c32df411ea9c9226b59bc9f193e4a9a4f23b1aad8ba0c3b0e1a1d16ebab38c585c1275864c6ac4b57df95e7a5d99bd08bffd361873b1cb0bc52b98843051f0db465749641f683c1010416aeec7440cb807edb71b07f79223d598f691822c5bf6a1bd0f920e005290ed221422fdd22e5f3b30a8bbd8195a4cd45da4854959eed09bbbb3fcadafda8710f1dd62d8aa8b72fa4b2cce427e95b9c64359a514b3c383c6dfb603bdec3f4984b65b682474f77e7fcf16b79209c8bac5ddd8d4b62e6693649dfa733d5081f165a9d24c9cd546951787f5067cec587162bea51dc95cb755140d2c6689a89b20bacbdd633a1b3ddf4366749cb0bffffeb6c447fd319d1761a905ae8cb43622b49097d79f555e473d664b74e05940728ea2bad7ab2a4907d507dc02a331d8e4124c919674acdfc1c0849761ac5385020692667c07a6b08688b7376d81281bdfd0ee6d2d18ca75d2c2c20fafc8987d9cb500dc6535c5bfbb62452bf57d26b08988dc0fb1b66102f84b0b618b41dad4863ae121ac74cce1ee7c0d4bf106c81244c0f121cb640e85293e745ab5ec711da0f2f40588a34b642c2947998f7c1a10a07ce0d6277ba5bfc14bf2e1f26804bc94a56e8cf443fef3ba169ac7152a9d2ae6db121c04d57e34adb96f3c6984403699e5f1188332b5c5aad3936c14d8a6cf92c5e2530b792a58466f14145576cb753165d1a10aecfe4a942236b0ba2ce2b25cf20138e631b07d2ca1d564efa3ade4744bb04935d990fa72741d78f7ded20a2ace0adb6e906a8427a9cd5e83bc7b44633eef1cba42c172d96d611a43f735e2787f2406464580ae9c42200475d5b1534d9cd05ee04be9abae8c1efb7fdab2597905c5aa6b79368a5eed5aee792bb00d2fca5875e525eaf564e813c098a44c61a01c2af7c4c814a2abce2411cf8d80c534307d35a233840b3d93c90c012d3b6bce94935641a23410f72e67578c898669af7b8f56dbaeac237d1015f689b420ea217b7cf2178745a05f3e173f4c6cb9ec1aa07f11853d1c4cb930e5ae54f393648b14ad8c22df7b428630fa6f682c7796db4eae923868ffa3707caadc89b1e9a0eb9ea04f0fdde78ba0f824144c8e0d7dee2b8880c01acec3d91c74dae62dcc0976dac4cbe9d760aa43dfd643495273c10044f7ae74c568d390c0a9e44932c491336039db99995d88dd4b8f79980d50142109fd44f444512f5f7df07a1bb53eda13451e225aaa2066f9aeb64abe22ab283c2b196c57247f5ccec273f575f4769401ed2341fd405339966a11c0f8171a53aa41312aaf177f235061777fb14ed68d8e13e50184abbc0b75c4548804321986ced3824a012fdf958f3a2f59b4d9438cb22a8b2eadc2b4a805b8df904ed13b0f8c66299a7f3ed6f4307b13dd91e4e2fb744cba91bd83eb9059ffd671e566afba76204a58ed670a3ab97393b121cf82b7dfb1019fc361d00cf08dea7c411de5731079bd695290755c214a5d40f060d2b74f74e5a3b23e2e459328125ce3edddc668692c500d7dfade18e460fe63aa63873dc066e24724947918c2908bc7142113fc27295ab8c1dfda99d8da8033cc1c0783441ce5eb0dda18d4630835a9e4d158a89f6738a1c10c4cb6d92be1812566c1a117428a4674957d094cda58cf508aad8795ba1c5b4f03205b0c48193f59fd842f4b3bd95a4fada2ca9634eccc33e4fd719c4597b342b3102e440a9ef346cac1d70bd83a232c94899501558e2f956a2a784a87c12e5542a04eea521115982de5b4a55d3737c22e6dd36bc62cfd3d9e0ddf9782429f17d8d93852fb8893ef6773b63857d2fbe02332a7f1e27400241080daa05ec5724822f436347a710ca82d1cf04dc53e443fce9b562d445d1c1731c048fda12f3ba3aae04a0fd4b9290c18acaa0c44adc6cf67fd753b551fc5624386cdb6af8471bdf073a380fc7b2fc8df643aa4ddd578212131dd241be3135cb07c6084ca668048242882d8df0d38d22bc864434482662910b0ab7c97d2b4a75329ca2138aa864b4a4b140d7e4b4ab14948a84a1ec0bd8dd92419c7d5615970f6ab44bb80acee25482e09e6000d43f4648017440c9d422675a943793229104876c773a98d24c680a28490c236027ed150d56f43ae2eb2f60e27d590ecb103454e49c6766d323068181aabbcdc1c7d88eb1bd2d4a76b19d8e0916bccb64c65403b546864504366bebb35969039f691e429117eca3a3eb269123ca4bddfda0103df650f35a4f85a7ca9f22c0a1393218b07b03bd9fd8e1ca4ef303972cc2e24225966df8e1909002b2712623c5aed3036ab5a31dbc88684ef187e39a466a9171259ea0797253949507bb2fd8bc26310003fc1cc96c207d133e055f27b30a0958351ce9dfedf30bcbffaef0858f4309d868d7abada4ea69024b9f2a02d612f86d8c7191791776d7740e56b7e53f99bac81c1eefaa31dcaeb41768fa331c24348bc33273064d5725ee0025ae6805ba75c7f92bb10ec2c7dd365e60220becda4cc9676a208f526e1d15a10f609614386d31064f99c175cced07db103894be6afe42728130cb902bad345605f40d21d370731096c6042d7018b0e7206e830e7291258cfc979da66c96cd4a6284a39b44af4fa1cb666d909a493dc3d96dcc5f19d3c28ca09f91b5b7728ae994e870b2a2313f7895525c63b21645329f06f86567b4422222464e596522629655906ea05aa054048f0821b7cf80b75e5c402d8d012f7a4836b290d435d6043465c25c22686a6f420cca2ed091baa8110edae4d31de16056ddb9147cfea32a2ed6f89b6ad4115a8b6344dd3344dd334cdb5bd9ad65931639c3dd5b6715c6737ee47d559d1f3ff400b825e29d869cf829d15c330b6fd61401dc2782a989ded1f136324d359524c67454d022215d9fe25d7b61568fbeb194fa702a12a0a659da2bc1819d59d9591d12c2644540a09bde80f056a511fea4359938bd1f6b733bb650b86a1e3a2a7a2f8e9c6e314b58de334a7bdef03bf2ee44098981899988ec4c9944ca619537742712894578a427533281a9a1a9acee686bbb9f14a6f6eba9a1b152a56a8e85ee444d12b15330e0820841042674500a46c2ae595a6c6ee3d1d2b7ee0a9e87e2be2e80f3a103c15dd34041d42085e6908d93edd76245b00217f79e3915461e3d729ed5a6e3b92f4e7d313dc6580217ad687992d8a6cd20606b4c993cd2906dd75e6506f98132604bbc2c1b8b8bbb5b19d4ec6c7fb827c1c0f60b72426254614234226b685146302169bc224e36306e8e44229219148a452090a514db7c506caeca6a322941ea88822c38a2840a81825484577737373a3424594178c51863e8852044e47a34001f680d0e1e0e0a070421040209da220f901c0a9a6a828a5072950a808935245001d15a51c3100d49e30294db438ed091b224047c521a0020c11497d3035e8d31130211f00805df911028c8b0e104e2e8029b17d7e7c104486918718c4253c5e4acf0aa218541091e3668b0c36312676d4c4a6f0a1f1f10305c4e304c525c38c126badb57615da3d61507ed8c28304652603a507ac1819648001c2230c8a017c41cf3744022f4a11347451a01881ee9981fba1619332a487941e66b0d65a2b054a0f965285862be5081e564a1336f8108f9f3a04d4830e11e109c39034a464df3d614333d864f80080756e7d468a9087f049971e4d87f028dc21e4417882b0152e115e580958d023ec12ceec20245f86f0490f189e8c6093efc28b58b7d60acf26840c19091d9a93190f76e265c77d418887b5d65a3bf32524412824b46383158a15e1d63d68c706831d19865096031b71bbe8b0b7891c1e3aac49143cf554248441684930274df60c72689f3929ac90b77de71e86debe8941784e33baf7c49d47524dd14e9c1301f9f5cd719a3124bfb656c76e3aad7f35b44d8a60dfd1ced05bb705e93e7723d75d7073a2cd9d3769d43969b55fe6b616499505dd9b47c3c3787af6d35e46cda327ce199bc8eddc79e29c316fed9cceeaf6c34f5dd4db8a1fc8fb8e5603b5a75bb3313bdc2a1ed2b3526ac589104e90703273e2e5858d87a669393b904b03c771ba9b424584840809f5d0271ac4fc4061b8d4e93e856eb085644251e4e9ce05f684e7098e7dba3d3423f44988fc44c8931bb627433c29da4f629bcc1b92ccc19e7471776b392728c658d3783cf93227c7b90f42807c3e6c81f920eb908025cc051f8c7258f7843d79b27d287d88c174ec534db90041300c8580c0460093449fb4541de41a06944be9435672b10c1bb14f1d159b7469d284086b1205e73fbd12898b931fb026a5131d3b2495668ce90447ae39dbb66d9c86396939716d99fbb428fa9405d6e4a7096b4f58931513a33d614cb6c098d0605b095ac148c864498fde13c624469f49906684c2982ca941479ec871efbd77e7c811f98812f642d1e355744d904378fa1142119e70086f085f433b794fd8ab8cd9bc44567694d25a971c2d99596bef5552a4f1d0342d6720f007c7719cd6b0179257918e8ab0d7d066c4e789c40f2f3f92904284144966581cb6453265869034c3259cd141b804880e1bec921c78fce8001460d331d794266af735beaff1acb59a3e9fd1a536f55434dbdf6ab3457d6aa96b33c6b43587c59e35352c06b68f5e3d889e75858a1b9b1a1ad469c65422c9c4c084e0e7759adbb286afd570f87a28a5b5c29470812da90148b538e8f950847893594910fdac80f97aa1d41c6a40575f0406c850c093b86cd2c606674f9892a24d1e00062b3d9ec8c4c084e0e7759adb326c08217609231cb6e4055b42643f117be13a790189121868fbf622d941c7bdf7d6005be2c2e6f68429f12203eacac9061c9c701c71e281842b07463a38a540894d863f5b62933fc34458f7842569c2891d8bb3ed094b12c50e6c063c60465a28220ab43a4283ec091c82ccb82e1cf1c94780f45c7ba4c7be1755434e024492265ef4c4217149b4a58bd1d19e5fcb9a039485d4223b939636c7d152d35c9ae665599674e69a5b0ebbc59d76b9ec16e7d9757cadce9ae3d75a4b6b692d992e75da35b3c874e058d489ed5585663f72ab885db5d2120142a33aafe9a816a716e9a67bcc9eaab4dd5a6bfd8553cc75655776e5d7955e57765d3992b5d595bb3e97b37fee7907722cab6959fbcfebb491db5ebbbe639c3bfc1cfe4c5ff32eeef248cedcdaf5a9763c66fd588f630a7493dd4aa7b4b7b1ab4148eace45a9766997766917adafb53ce7303c9ddcb66aa9b566fea2b68266ae9991d96b169bbdfc059de555c873623d66d18fe5b208b36498c505b376fdb9b220994b6644660167419fcbcccbca45795c1b467e85b1135d994cdb57dade2a042b0c2434820815c866a228a286b004619010092b4958e902b3128595597ded281f21feab826a6e3ca258aab9ef8862853e5553c92c5b74565f2cd26535354adbba48ebaab47e240854e06bfd235958a1b92ddb8f0cc1df8f6c41c41f298251fb481b1f8cf9236f6c8d43ff06a53666436b2a8da3ec89b4da3e670c8ca2a9b1b951f1343fd561fb87a113309df7815bd6217462fbab105da642b47f239242276cf4df88f66dc4128c50cd16edd788a6981f343ba688ed5f23da9f892902f53d294364fb7728f1f43432444ee0a3746b066bf92b4dfb34632a91bc04f356e4cad9c2639ea4dc6ab640cd1092ba25a3e9964ccc2d392adb3f14c16f09b232d9ee63abda2d75eb9660396364ddca73eb16c986ea297735df6574e6533633edbbba13cf915ab7c1a65f459bfd1b7755a4d9a87dda33db5fd7b1aeb614e88943ae98ad668c9a1afb7a7f7f7c4fb42e0a81dde1d8b7bc8f63bb668bd20657a81e214922953386f7feda132f4dcca699d1b4660b2fb5503b429266d6dabea2455ad19434c8d1cc481a14a44037492ab915698994f6f4ec78572b66d686d6c8bcd2b8a3dc9efc7a75cd18a63dc7e9baabd29ed655ea596773ce7981215cc09021420426304434847591c22e5b4a69ad445817306488108121221929ecb2b51ab0f75e2003b1f982e1024482fc0b68c0021990651730648880338003bc9095216791c22e6f3c38918aa82f9b138993e2b4656673d251d818415b36a097b732c465d3d20234b466a171c49495a18dc3e2535692b040cd99a2952edbcf59cc0f8deac9e1b58f81e4c8937e99c32653dbcb144c0b2b57403011e6a8f73aad28214e48747d13c671ee1b94ced013279740a50c74586b4f3e6559fe286f501e5136410507151f544e40a5055478a0a2840a111524a8f0a04a0c554e504548952355846ea842848f2a4a58e1b1d2b232c44a0f567840c1e0f660c448c7911f3be88882821b4e437e4844d49a5db4b2f01115853b69aff639319e282d61b9e79c56077a679ef881874d8631f8a107d80f32d8a63d6140c468709f29d7b6edf58599f2277d67e6d4554df953d751905139deecfbe3b2ae4c56daf8ef8fcbaa57c6537de6dccbaa2fcc1c6d87c65353fefe3987e1e9f41a8de6a93917c7bc3b668ee398299a7318565263919af631d9eefd6c7ff2ca3c2c76b21d9ec653733c1f29a3ef72da12721a8bb3e3f7828101411004419675e52bf317305b2a0bff21f296b0cba91a7d6a9357b61dd45edbbfc29c7a084990b5fd2d91ef356368efceb3e993cee3f9d8e2b1660cb74f7a3edb8fdee8d425dc526be99fc5bbc2622d7de538f6e98990fa17c30a63381d9d8e4e47a7a3d3d1e9e874743a3a1d9d8e4e47f88e1ed81b0d340d16ebbe5e272f272fb3d9eb75f292330efa04c5090aaad2a973dfa89402d1f57515757e779de37709388964631392b6b5368334aca73a451192a4aca333b7cd336fdf7d1ddb05e5420b3907fe6227c7cf18a2fd90fc29a040bfcc93bfe8deb3ab2a720f3331ad62b73b71876a7148d5c6b9009e3c437fced6fd9b1a1e83e8d15616f46554acb5ae8adbee444d0c92c5207acc1b8b74730ecf4947ac6d4d84515359f4ad37bdcdbc7da48d9d670bbc3b1186b3a8a26fad67573fd24615ab8a73179a8b391eedcc1f0af4cbaea9c18d7adbb037b48a81e85987bccc16f0b080d2397faa4f095a6248072c70779e2946f6142633534c893285688aecd482293b90c1142962f881e7871f3f00fd104d50491c950495c4bdd5c22c162a092a092a497513e8ebdc69479d9b5d476d073d71c812ad2fe67859fe62e6e9ed9939df1a29a594857273ef7216f55553f53ad96eecbae64c617c2977c275ed9fd07e164da2a6dd7dd59cffeb64eb99a9fa2009a59ec9a23ea865b2c00fe2073d1a11d881c1f430ccbcbeb4ba9da597514b3ff18c58e37ffa1b334c628d8f351230fdcc9760fa99f79f195b18e26309337f1a5b40fdccb77042892596483d1aa81784f749aedc78fb974614e897120f7d19fa313097072c0265d3bbeee7ccf960a6ea873f670e981a4b3fbbbe8c48aed8f8634498912cf5f8064712d4b2eb7f2209925c09ce4a2d16ca7d02d5bc355ffbfa1fd41bb4b5dfc6d4654d16da9bc439350b44e8effef384ebda54091325344a2e52d54e62583cdeaedc4cd5a70eb3eb0ddaf36f6b5e1e33879b2fbabf3d3301f4c7145608ef8e3d1f64f98b6fbc3267512fc84a0105fae5bed6b60bd24d6fe99f33b6fc5db7e7e83c1d6bfbcfa60520bdc7070da5d46b156ff69d2ceae7ccb1ac7deb6357d6f70259305bea8b4a546164474646740b5829c862f980a30d7b63abf9889e3824d8e29931b42edb6bb6b08fca4148ed8ce16f3f28f627365b58925bb1c0560da88bea94bab5a994df12b6ecaeaadcf6cd6e9bbb0b176eebbcf7de4b6bfeecd73b92360af44b451d09c98eee1b7b7a34aaa7ba6fbfd6b8b67e1ded6c2153ab0a66fb7cbd1a096c9fbf84cc8df97aaa70a4239d2db0a70261e4ad7a22cc6d474e97a0e18f84edf367af846d840163f3ecf4ea53ef0173db4dbb70b1ab4782483705b671ba4ab3d65aeba9ec43c0aaa0e2b67d1547bf549a670b0f54d5a0a31d370d737972dffd7ac7b18af4cbde414f9bc339d230d1d3a3ef47def81a968439630706efbb87c1ab9180f7dd97e04d675182a6cf5dd69eafc2dbbe0aeb5b69cdeebeb3b536ffbdf7eefc18638c354f85f715354dd3344ddbf9adcbba64b2d96c440dd9bc11485b7bcd61ac7d1ef15f90ee5c631bef6ad4b95141e7666baf73b3ef7883af0efeb2ed7879668b7979f0d64797d68dc8aef5deec08f88b9befaaf4bb7aeaef4f5e1fb30a974fb85a7133687af2ea994b004d41a3576be1f61b0a36561b73af31c6daa4b3008e37477d478b30b7bf6a6e1f7d4ca5bca684fcda9390c71bbb7a2a6d5b95fd9afbf86bfc4715b7555c0bd59ceeb3c8266de79dbee8f944b82b96a3dded09c322dbf443d49c5976b2f84cff327f7aa549b174c1e2c2d2c282431613c0b2e4606f0c1aa583c53edd47db2184084808c91044441cc7694dd4c5bbb2a384460111f9e424ae1c31e1220276c5c89521b512195d8961975d7baf9d028924bc0441e4c8152266dc24fb7a0f52765c4b6fcfbef7ea90d91376e5062c3f887057dda1c80f77c9705034dc21e81381a2c1561ae0ac78767c582b9e9d159d468a5ca1fbbaae6be416b9aeaa35ebc707a8c5faf161c584f00bcffcefbdf862effce7cc62833d391db6b3a8134cf6fcfaaa4274891903fb0f14ecf9b4e54550d9f3233063e89fd362edceae6c72b95b6aeacaae8e0f500bb37eb00f6b5a8d67ad20a022ae561050abebbaaeebbaae2b3bfcca429868d7df70896358a8a62a7e69da8eb6c233ec051be159a6deb4b6a3fab5d655bbb6575ffd746bad9c3b77b9c50115d9f5b5ab15045453aa5247bbaeebbaaeeb3a3db5927ad35aabad9e9c56769e26fbb4228da8a6b4562d925dad20a096aab47756d38eb9d379e6edecfadf0acc5eb2519ea94a7b7b3d6b7ddfcaed35b7d826545375eb3aeb455093c61a89cb405caba66a0a76931c6b92dc0fe7c391381695c9381927e3649c8c9371ac1f777b8521c7e2586478e25894731155854e7836d366f46eafed95b7d7f6da5e9ab27e66ad59d0cc3533322bcbb22c4b1769ba29a2b4dc6a3d9ecdc2f074faa7f85e6d396dbb8dcbb9955bb9456b66b4b4b3a6699ac6592db772cb5f7465199e6c6ed1dce2b0d66ad18c2f9e398bd047323c9de8f6ca9452b75a59966539b3d99aa489549c01191c49bac10f43f0bfd79f98818474834fe6dd81a048378967dd467ffb48926d79f554339be6afadad3d45790949ae0506cd18f4be77bfbbafef6f5c8b8e2bf6b6812bd884c05203d213879c59ed7a4f49841b70d7a6af513508c9fb2abd36feccaa39a65d3f700b376ed3dbb67d3784747f578f640e43901bb7916e774df206717f6d78415e1f3076fdd26b77e3f6935f46cd33ff9cc3d0576cfae48aaff5438e32413b84a44cd9daf565cacc72d76b579915ecfa5a37b36a820a895124d75585522027a4b63f103838a812588b83c241c707a888197ee8e959cd59059ed8a027091b827832c48d914081bcd6ee22694816caeda9446d02075afb3e8edc48de784ea4af61b8b67f4c4b8f40f77760afe0db84ef4b3f3d07c4bc8fa6f7ee49ef2329f3f94de0de3e27de1782b5b93709b1dafe3135c2f7913cc1ffaae8174f8fee71df80eec1776ef4de137d0498b71f8a240ba503bcf7b1067c7feead5803be7e5b038e3adcebd7cfb97e2c02ddddcba83023379ad03d389a607a17493b8ea611e89bc6591a57f01df373b432e30abe3f2a9236b6ebd722f56a3877810d3ef66a580790deebe7465b53e40abebf9114c1aee15b8fb6a6b8f746fb2b3857b7afe0db9d04a1fb6cb6dd8300b7bd154916687418ea84e38722083e38822fc343980745fb9ed8c9a830e17b9ef7a1b7fddc7a34617baec63672dbd64e9f0b42b6b9773214bdb7f603df633d027d8e7b16ca0df330a3087a56bf15bdba3d91fc468de35e0591d4ef22c942891212fa9356f436ee6de8e891b4b1b99fdf3d276e1c9879a035c3d6295ce8c1a6fe01baeb142e4cb1696997288865c6092d520481238818b0962a4021a8650521e6b2831d26b4fcd0a2022d31d0a244cb132d518a9a1445292a2aaa41d111454c14f140cb8e961e2d3d70510e39bc68053c95554424062f14cd6093e15fc159662f7896267ab21cb18a78e4b0c11601291a011318a8bbb53fe79c7386dbe774f1926874936a9a7fa48d159aed010fbeec15ecd33d420963c7f6bb8f3d9d00ec893f7b3a01d82b68766a5bcf8e1d63a7d3daef8eb966d77047100685b22c598a6429b3c4e66c2104ce117e095f08b3e4f002cea243eb460ea0a3a21c5ae0440c4e28e9010b96c285302771dac104161ef7ca901df44a8c04ee09bb22c4938b82702607e12d7f7a4213843b6112e111e1b55776ec3fce951e16ac39dbb14655ad7f6569fb1a9cd66a90d25a5535e898c75cc7fa15a856aba23535ac751bda5a7b6b4ac0b7beca2b6d82357b9df34a74b1e6937ea6b456776baf6b36df0d73da6aed95eabb612e779acedde671dfe6719f0e35d8851ecc17d3c1d08fa153246bd0a6b41a7931f26234138a0911954231a117f5a13fb4fa160b1ca0527ba9f5d1c5a4d5ab5f7b71eeb4bc6d9ad35df7791fa8030363f2543233274f55ea50a6980ec6d399a28ca74377c9ea692a994c5ea9e99efc2ff58f3461fb584bd15aeb3a73d6fa754f67666b1e8dcc6d9aa6699ca6594dd3346dcb9acdf59ee0ae0b01ebac1c2ca6d9ae33c5e3e1d5fe6e515c1c5cccc59bcdc5fcc5e7c559549067d7facdbed9377319144411b4c9bc37f19bc9b466bbbe49a89a5e35079bba54d3966a1aa29a8846d2347434ab39d7a8e6582f35c7f1cd1a37c4c56235c50dddf29bc5563587bce5ec33fabc1c9533c6c4d934c3494c2f9e5d63b0c919c4b62c2697a56bbdd91ccb59df979ffc5e183ff9bdf0124c76fd5e313399d7e76362d51c9779c9bc645e322f99978c8c904cace660b7a2ab4cdb4daf1e6ddf5928c9ebd271f2b2be58968d9fdca66cfb17f3ea223f28274cb05567d0f73568559a04eac1a85f056b24a03d7e6d1cb3b308afa7824121c13d84a4959941485a4158375ab799b9affe1d6b5437b6ad56065a837524af6b5f1dbc8dec2a24acde53ef6bf54477f7acb5d67b7dbb4ebcf7dedb8918638cb1872a1272af6d2c597e396b565f5a6b56d2d62c514542fc557bbfbdcaeb3eef4eff7663d7e87e7b5537ced962abe9defb9aed6f6c6f54a11b756ef636eadc8ce475d95c3bba059b6ca8a4ee5437a96344230000680053164000201810898442491264591ec8bd0314800a687a3c6458361aca84a124096214c5318c310610430c008800620c3246562000f2b9d0f065af0041fed8d4f336f1c9fee9c578efb22fb2c798e34095864d23a274c15dfe5d162e290c94f6e0a4b90214174ad49d7091edfde31351104a0eeb1e0fcd48977061556c4bcbc36901afe34862a014faab8050259e53671eb0803763bf72726ae3e2958dde76ce85fed5769b21e749a71a3a38e7a2ac5e684f9f599599c7d1293ec95af03ca0f3f84b82c32cfbb8a9c47c319704b8c7a7207e5fc5b2cb590ec72dde64d1c2daa04a62cdbe916859bed18a1cf50e7ce0979e5d5b55558106f21c9a8ed9220a6181d8f56e6714087c99bfe6119c1391ee15a25f2b60504eb72e6db026bb6655a8ec3980a0e469c809a8513f3fa2d86c2d7c5a102f01684fe31a31d664d107207dac0f53756d596ae246647d7126143ee4a2197dacf6152672c4a19e340243a1a877515ba24a000977d2002258bd7be8838117c5e3459b00014a00206ce8c0d781e0d841034030610278f8cd56742816c335a920fda96a32aefd6c245f95bb35fb8a50ff656c2366c013a10fee6d8e82ee6a870fe412dc3ddfa001fc4da598b677af6ba7f39d8d903d28a39de2ba735086d9044311ee1416c4ea251808f00f0dd029d8173cd8255f6e47c9df3f0de78026c674d365bd38c0be5f8274830d4c5e2632f6206d494ae0ecf672a250b900adfb53718ee2a65d3368f5537f502a5132d9191510df329c29588318f82ad9e766cc3007fbdc95f1961398522b6712375b697520598d94bb0e27db8d38097eb3be44d6311ee150415989cb95fc05538e90f0aa48e8a9f28d4dbdc8f0babada9b460f9e10cd7c3b6c9aba54452108f79d641b0b6ef94993cc0c172cb1cdea8359614aca7f461bc805f55c9ceca6aff8eba078df7a05a897b5ae3afbf40d11cd68867d3ed2420376ce423064c0a42f943f76039f5231bcba76cb56bb24cc16738abd614505141adc92da1d055199bd2f35a2832412b5947f64fa7e2f018cade52f9cd1659af440c7b7bfaaa60c6f92e3514e827825d39fa45384e296373fff80e786fc6e2ea7cfd659ecfdbe50fa1cddb47535aa9e693bab4e10d046c545c78b278fd0bb1a746b803a64512c62c68b66bef2a033f1157306bd217fecffdb62bcd436f339426641c8d77a0529cb91d6b3f08d16b6f8b7d3cffc483cc7476b0bbf5856f2128e2f9c720f65fd7a652e9691e1f5d2c61317834180964cdb100b392e6d938c6a460bbd3e833c9c42b88ba9f313c1e0d88a1d76dddec797fad0f72f7bc9009e9b708d4888cf34910d6e7dcdaf35e82242f3b5320097a223477d4456d0d702e4d8b02d50f245eaf2878514728a53f0d80289e1a41f213945809e21941ffc952228e2726f9dc422b6c20aa4b4b8bb6f89ecb85777e7cd8dfb6a92b83aa5d8d2fb61db74bb5bbb6ad044af3e007f907ad8492f7da4973d85e8c4c880f3730962c349bc5e410c2c09e794acc802cceac67b57b4f4eb6f85043e1aec020962421eee0143bc52139a4d0991b107fd91ff2c7c6beb942883de287e6c00d589c333ff2f22c1adcf922f7dba2555dac561cb65b7f60873cf3a9f7a741a08c9d73799ab3cc42b7e0eb125a8b2ffcc31417aa0ad86e533a2412426107bc2e08f3d2f06aba85bd41aaeb492551730cac0bb04de9c5a76a1ddde391c064e44fc20c68cc4e45460c4c4439aafd94260e584bf2d4a07380ce12b6dc54bc0c5cfa1e018d5b54fca2a8fb6cef0a5e8ed7c6f98f1085b7f389ad9b43b885f62dc33700732f3eddce57d9e8c95ac90fd470010cd9a2a9cbce577c5a261ffe73c2e4be2332b88a7ef7e3ab3bacf4f3d8a446041acc2f19c1698839b8f195fe30f63662f3f6b8769ac392d68a85298e2e4803b6f4589d82a5479e18665f171bb45a5b2f20f66dfa5cab8da3193e49a2fdc144a0cad11ce1a55ba71bd7d4e1644dcbd6fdcaed1fc56ab94f6bbaad060664e01a2892c6b31f900e71e2cd7f2a306ec15a74bd2064a312db6562b4cc62f53374fd549764b283daa810e4d36f6311ee5ceee2b2ca5da89b4877917693c1b2b81b4445ac7d887b4d9c833676c7c492c04f243e0d758f9f047c5590f3d43d832716aa457b6485382176029705fc87efd2dafdfba33eddfadc42fc1f4b1ef4a468ef0dbae8bb6d00689dc945f7282a5048d7c495b90eb4bda4847661223ce0e3659ad53063c5b96c1d21f1d37bc283cfaba437258392f29727b392a0198813d9f74c33d0eb360c8f71eca4231fc36589dc2df12e01b1971c23affa0b1c322265c8ca6f444441cbe8436d2f38bc196f0978091457a88a6beed231e3a0454f41c8bc7a858101016c0e8f7121da580464b7af881388493b4d9d5adeb42ebeffedb82ac8f6f81207da8601a2bb498a1eb03a72041a2eeab5109414785938db324f4305b5d76b8aafbb5517d4d33722de1de94d3bba4d2b8deb21b8edad633e62091b6d68c3a312566fb43705ae9166c70ce4ba26571e0723adab3c75c2b53fec4cd8e05ca347c6a40013a623d35d0eae0e5695660aa5ee1d2880f5b7e610f78d61771bac396fbf44c8671bd34ecd163d0dd302a0a90794549c8c19a97088666d6ab5212e6e2d4a7db3dea3571d0653e727d41e9985c080ca394bcc8bf4689a773251743789ce035092e3cc8fdfb3d6c30b1cd9db5802d4e7a8c95adf250ebb5af2e187f7944c43ead16a57b26e39dd793f1de191f52860290a881cd867da347a37329dd921bce0ae9664ee11f7cbb6ec9644a98d926042e001935d189864c6e08db202ae2850382a9c7f03ce460e442f464506457551f68bd28f7718c65e3dca5413bbef4d64f763265a11602a4aaade81053612d4ad7230324483514bc451cc5cbbd158c49a3958a8151920b1cbbebb84c41eb718debf73e300d6c4d973ad9ad13f40efa889829c54b518e94fb76e1df0b3d072e94f435379c37f0f90a161177068919514381cc0b5e0310e3f3b46d8e0a1eceb570b601f6efc2ddf1f8cc5f0288e4b85990e033b219414724e7fb32092b92af2ae34fdaeed168c7649716c1db1b712ca324657bc72fc28e443e10bb55817f6b7b9b8d96813524b50ee8a4d18f95d5d2954702f460644c829c01fdca437cc94898354997d23760bf41d616ba282c407a91a8a1f10c79ec22cc37c60bc7482f0900ebafe5114623a31ef21e3a916becc2aac2d90ba39ba369fbbee1da1390f427e6bdf8abcceff27cda1ce00a99bec398ffc904fbbc98f92dc7404981ab8580871e9e7f8c440b7035128b000fe2dc2e8f6b7a2db8f7742614a0e4f1c4e6664560a907bc82323ceca2fe9ef87baa692a934bedad6664d5e815a4a283a67fa7fd0567d6fc6c9501d4ff604181164581a9d2630e8516844d1088b44558ace153be011bedcddc0fc58b36f6e28bdffee614f841a38fbd5a00ad87b4c413e7d66018cc929a34a30040d5088c966600ee7e508c59145eca79a0e13cb08c5920f0695c18bb470d5a040e627cc11caa5febd1b72050908491040faf1ed415d51f71c77bad57388fa48725887f2cf2f9094e9e625dad5b2912f37ba48b6d88c7c6cd1561b9b24bc0a3c2be6cac1d389cc9efb90dd1bb573914f5c88f41510572d3da383cb20d977b2e4e5e93c8d91cd063bfbad820561f051a7029f106a7ecfe6e2fee5297e04c68be9e4036f3966f4a28716a0f1bb407db4eacaf7be32d09aeec516668b6a6aa94104292f562c34c5e84fd5e734b1232954e8856196fb45608aeb6e7497fbc12b8f1ce5f2fb551124ea70caa24f4307cf0d0d8e42a1110e2e97b738b312bb2a88d2388add29aec9f92ece1551c8c692092c05451a91e7db249b3e26aa3978224d8188f3b91dbcbad11622ae05753442fe3a1aa969e49c6216325d1d00b4f35ec9e142d1cacf6ccacc1fc839413836300a269897f0b7ffc7332d126139804fac862a99bc29638baea6816dca27e2a21837c729852f3c11a94829d1ab2f72b40fa8deec0bffb4eaa4eba4edccc5a2a3efc878b36c83e4d34883c7a46c1e1c9bf125574a6c1dbdbaf5f6a89f2bcabcf9b65f4e4717c2c8009afad6eda91c3d8de7248ce3d1fa615ae7a0c6e955cfae847956f4fa924f67a27cc09fd57ba611ffd18e36f68efa8f868522bcfba8096566cb5a930e56bdb8e6892c480b5b32d86b00a4f08d879845d1878ff45a346caa7a6c7968c91ff7b7a19545979bf06ca3a55a26f4cc308e858a2881282a5cb843941330930e770dcfa4b260ad73334b2b39af8e88433bc0298e878c914b71e8624872b820c152827ca34dbd651e6ef184a99dd93d094a9e0366d35a7163cfed025b6c9be1360256665b88fc164185a14dcd377f22b2af4d28777a4a039653b407551ef9c071ce205b693c44d79c142ce3364c35461bc1a2da1868f24a94df780bab1e316d12b8aa038b40f3ab3aa7e8e5df064031179ca32426a4e432aeb71ca34520110eb4fd8e0233657c3fb11e8608db9a11d84cc884e193e298b4a83df80a86c7026747ee7f1dff810aab69c955130afa9ea152e945712317ed4b8e6c53db35f747df34be4e56d856a9c6d0ca1b9a9bfcd075a5a8fb864c6c458275463c33ac191b5611341e57bb6b46b13b9b61467af0e4e6202099802c4d258aa610b072b2e59306000b0348058cf70b89b03d2fa801e23fdffb7cb4cbea459b76e5615c76780cc6c6b4c5123c23e184153ed64c740f222d6317f67cc6ca720fbfd72ac88ab44b2f7217e67d6b198e394ec5662a553684ff9e5502e7d53b80ced1f2750bbc868ecc7dcd138d4e5a076131ccf75c204ff299538ad9af8cb771b5a3e9c4443cbe9993b9998eaf27558287b6caf6170e49ec4a0282476d52a102c364b3ef4d01d5d1e5259226667c272fa13348e3f50b6ca42823d0daa2ec50275fc305004c869d07b2b2841390b1361127c25043ff3fd410832f6b12ea91b07af1f8d4d5329a7066241da4a5e030cf5fd310d511448886b1a9403081edb21195899ad455d5d2c141a36964902d60475b94d738b1702eefd2f3497b97951f203e504ea4884f45d4021653a52b74b7dda7a5a9b289ddb3931bd9092b7c8cd614c21745700eb5a238cd5cd6da8d12182972f2e1abb61ad93cc9c7cf9ca986821fa6a0afa1c00b6bdcd56f41d0085d953dbe2a76c0bfa8e7d47c3cc19096c4a487c01d097b323219182a509d032fafeaa954728473861cba95b73bc6247dfde7f90b1f8aaa60cb54b8a9b1248f20bf469e8b446213f8496e628d808bf60b05e266c5f04fdf049d34a9f381cf57253b8cfe84b1c4e557475ed7208386ad59e87e4ff1481cb5d66205c4078a06a6e7470ddd0f0fb0f954d17e24d32b9e55f9b18c5bd5d27593315b581375c69642dba67516a5f65c903f8c4ab37c917df5b8fa477aa50d30560f38a38b01f9105a0272be22e6a4b0b7664b35d81ac60c8d5b022ae2f90bbb8092e9994478a2be210e311b46053cd54c4814be332086d38c98a6ac20e895dbb0501742d5896114b11076493eb4d68ebfe4ab90c3cf257e94bb02fe7699640a040c24fb52648026f8880063b44a0d59e75c8e08b3bd8602ecd2162385ee03f9fbdd967ca872136183f20091d6f7dd049b8a59149db2117b6ff9995363632f36234f13bb09e8efad53c5e6496fb8a7753826e9b33ecd78b0b61fd05ef2f79f049dff917ad398967a649dbe1372b3b6f956e0a429e848cff04352337dfacd34df3036f00dc2fc3219d2c906ca09cde3a7847c05112975c025a7370d68afaf35a827ca90e56b2ea40ca7543cac62062d22a646bf0571b5d216a65970a99805b455132566b6e755598fed049115a0b05656a79b877c73703504c44688a534b743664b2eb13dc9d7358d102982cbb6a879e76bbed0ca6bfbaa2ce633ad8c212e3b08449e801b3ac26c5f91e94ab4edd35cf679103e10201e3491a708a47accb66d1acc39eb900ee47c7bf2e00c7d0b211a23e1cbd08dedc5abe35fd2310a0064800a8f8efca8925126fd32405930beec06ebc5238dee07fd28b1f808b6295b344dc77d67953570257fc0b709054eb5ad51933df453596c6ffec03468ecceaced6bb02386779d535d394315ad48d03ad53dd60c8c6b48f8d984cf69f312cb449e34af1da6348fe69f6e7390eb8f0dab33c8065b5f6854ae75a7da9cfa0060fdc7d16663acfaa5493ac558cfae9659047cfd395c2ec6660397184e981bd36d4c7b552b1c87df308a460a45f9efb5f5e9f7277d59fc0adda484d862cac2ceb02f3c39369fa6d4e24489f9cbff5ea837e07725af5e741b7108fafe069f531de3101231e6277a9a52046efbc5063f9d3fe21868bdac5f2b44b33c0fd879cff0479db8217601fd497d176ca992bed3123f7dce30338cbcab1397e415451ff133a93bfadb8dad4999cbcc80f1f726fe54834d05c38cd67ed81e6d022f973db973e92fa3cb105a03db98531c8d648bc29f2e1b880992139e30eed80bdc273defe7108c2e432ef14715116f817b6368e0777236090134bfe88228ba3931a9ec542803a26411bee8bd7c3b0706181a35aaa740d6ead809d0a7889716ebd27e157654977e8dfc433f005353fe8c16bc809e8bfc007b8b5bfd0841842dd09d818a0bb52ad4f3380ae7055e8ec7eedee38126f9fe4a6ac7773bed30869c9fc027c8d873b0eaad3f10f9815fc8567114f7a6c50e55b7d9dbc556f4097b8a20f08f10c9606673aaf9c92bc48500bd13b8a363ca8b119a1894b772cb2d3c087eaea4557453df1cef78f1c77977dd0adc712df3ccba41bad5aec058e4800844ae57f81430b519a83e4a31ffc81fa41fd27f9934dea1ceb299e907c561f4bf8461cf41fdebe0a0bf04861fe9287a0ccd18caf2d6a5d90a34b32a427e0dc3f03078292a47879055674b78e201263f5f62f5a25d50b9569812c0984cdc85d4162e7fe9a22e0c89705b5752eedf5e688a14f7b5b9aecd379c61edf9f1cb75357221c123aac2a2bb62df21a4297c313cea674f386148b3317253e78d818882e094028ac50238aba00c6fde5e6f553cb9c42cadb5ae9de56c815014645edd1e0f1a2b12bc485540cac3eb3c3034da15c2034caffe1c3b6545d34b71e2d34f23d46f79a3b02ed6e7fdd962a1f2fe0fb573d1521264ad70a40481e410f3caf14ae32cd3fa015d1b50c29212f97f230a3325311d5eef149f2f81920265b653a48bfc4c2a7d6a621182026f9fbae40da5ff685d51c23c1a30526b62bdeb4f7ba5ddd709eebd706b00b4a529bbd8c9a09780036112c9ffc64020a3f67ac3e21d7dced0289b8600c90a4e32cb645ec294054e18c25dc2af8c35e0eff7b5c5c66144dd8c759481b45a9e71cbf545c68a456387bc670f09d7fcc7f4a69d51d42d77a08092d03a548b0aa5437249efac51687abbf3d02180c11034f1f5628f223f15ee27692ebbb0a825b99467a366ab412c2a5ba839c2442deb5fe5f3fd3c3e4dd2aadd2eff13ce20545f78bf9270ac330448096387d084ce3543bb698045a7a069b90ba17441c6aeb1aa8b701de80af160444cdd9426926cfae6790d3b94a5e68f75a92a635fd6b8916c3dca88426f19f21076af083700168a02958377cd9b52c44e7211f20dccd1a3e99dc33f8fafec24e1cd210e86ba0e2df806b64e80c31cfb16a423254f4447acfdacf8423e65d52e45647b07883224ec80d26dfc529d8d89946166a2e29ec804c88576133d97f466c7089742ce4080b4111b8f4c513482fb79ebcf1c7cd458c4ad6e31899bfe216b405f0acb684f75d576300e058da1ca53eadb601fd23757c6aba352a4c18c83361b5231f6faf6bbdfed52428a88b15adc5cfb6cee6a91a93f10b2a2bfe849a7c9433b07b13d6a5cf5334ee3bc28a12421caf9e7fa7de51283557894e87cb181951992b944ce44e2d95128b372472d981a3b8552e5c69601ba070fa638538f7888bc7d47439ff4b12c65dd5769a9400edb0b261baa100db425050a9965eeab47bc3d61e78460098cff37dcf95536a9478a040de29e64fde91964b69a477e87fe245e4abf0059deb3d8a9d0fea9177b03a13ff62cbb32fd62946e8707f40aa9e48fb54e5ed9ceda2ba562eae9b2ce3ca2c3de550644dd9900dafec623bf193fd582db44692e6627fd0b14b966c27a44250fdef66eb3c2eb38ea3d842e123392642ed0fe03f10104b614ef838875f3577710acd8b389fc1210c4e8a957b0c1bff7849ff1b299412d19989d105345a7b99197d228591495ab8cc6e19ca8f99c5497980b10a3bbb986e2f55d593fc9b166c618426f836ce36828552304c613a241858a4ba0f6b140c5c13251a169d45e8b0418d849f2364e8001c91b2254ad51ff35c64c4096965cbcbc0d01aa9a33319c93c613cb62080963ad891b9c16b873d69ae040d6b0c41c701689d8d69958604e931a3d7ccd0a55a61096d4750e87af95c59e1b7114e856c0029f96a79477091c618006614cf675269507b53d915281a52b50b33ff8002a3929f23260e58c7825361fb9cf6ad844a0c52f93fcae432ea7ba7382298062fdea2750c8775929cf2e9269a13d766eb7e8a018cba0a6446e61deb659042adbe475cf7a5047b05b252ea8f09853b51901cea3c003269a240c6d4481bcb28fbfc323116f965e461bda9fa44d89a6bdf711eafc6218c063fc6c64bf6befb1237cd077d4ff0720469c76d0ecff053166383ca077999406594f314ed3dc17add88c01a19d3786aeb12bd57c309f3f58dda26a8c668546b14514f472c6027e01de08dfa0256ae85f8a4a3e93d65e9ab9c323016ecabab47471ab5b10230d8959cd8c10dd7935835d378d1d379d25dae9bbd79826bf41bef7ed339f9e8130b58e5fd03570f6d4a6019578dce6d10c9ec433faa45bf9df1d898ef74474998c1f10efba1165f51f0e56acc85dca258610b9ddfc31afe25e1dabb3448e107ced8ae1a9eae85e9e617f3e73e036c7cabc4e0e4a1c049eee98f7d22c76fd7c8fde8cb9b19fa3180551b9b1f03bcb43ff8f1cc9147b14573732378a4377cf8c6b07e47c24397f5c90f476382df6e15e9f1c745e694decc797862042bc490aadccd5fe2521e3f2c99139961e8d5365aad8dfe6f610349f91e4d84c0afe7a6dc505af85e306838d08b8016608190f190ea83bb37d587c7e6a4ee6016d7bbdf09441329ba34052c1a0df89ef463f5caae33e788aea1eaa9c8c358c4f2fb5d582ab3b222c4d333c7578ccdaa4b99e568267e73834531fc30990bf88c1ab614cf8a292c3f7197efc79f655aadb35a109b433c93d90d3bc6ac1deaaadc579990833c3dc616b7dc320c4afc2edcd982c3f63777541ebd78ce639130a08e70c83c990af058b1f55be41b9fc4f12f4540e56b61e1301771c29f71c99f7966b17e5cbf1ed004b674e6e4da2437e07a1c0e13761238db48e1e2f5877501281b4054ae103feb6202bd0b10f2cf1cd5a264ed3ce0ac1a11e42caa262b796cd37790b11937065f0f1c9230a40fdb7b5e9790e88613b5928eae2a8051955924ff304079218bf08a8383b6e6149267e6f1e4b368a87529cd7ca4ae5d376afc01860b4a448d2a3988c7ffaf34a9addca0a848ea8baf885fbf78cb79f1c41464dfbba36923ceab1946e24974029a1a6d99fdbf65ea6df25a68808b24affa186d7ef0ee5275194f6d7a7411058ff1bcf072c46591fff3080bbe969aded1537792340c4ffa4d0c1c9ee25963dc01c07cd27fd63cbec11eb60c5b873124c253b54c1e6216c5a0a3b95e7061690d88589c973067fcf0cab98019523a566b54751733ad1c9f028fb40b065424f4d11144b40aaf6c35c76629c111e980ad92ef18953d20b1ad814d484b23e9f6c3cc5d8b0849b6056d88713643f8ca5776abf57f6e59a3a29a09d58ab584abff3a63c010d459f8d1b18ee2efe9e2238908cbbd5fc745f11bf1b68052d0f9efaeea11069a50f90c22dbe0b163a14e1bafe5b88e6985da4589ebf7ad5b3e79059777c140a1119387fb269bc010745fe8de70b2eb39aacf55785e43f9abdca7c57040962b8d02793bf68c60053fcb380e3dfd44d93bc34801cf71b5c3b483f4a43635b9e99fb5046e9fd6daf30e5f0184511899debcfbb39ea8ac60ea30c08020e9853f278c435534371ee5eb601031bd0069458569c8a9808f2ebcb26c86fa536c6e2b2c42f6ab66c435816a8155e6fca7c00954061d820e167ebe3bbb0cc28b0ae6061993f4905030c8fa1683403b461c9e01d0f36ca004783cfacfab3fc273cc5dcf9339a100e1e1df9caf738a20d769262f88a9ac20a8ba5e005a0288538beeab08c24f596a5028b1b9045e2000904c57304ec10c299765ca89f3376b473e907b19d52074b650fdf45e9c40894f5434a06428babc2755689d53514be6d31df1954c334c63f5e72fba37d8fa4cfe69247f017de96e5ff526f3413a08a4ee25c67c4a66a01790c0564a9d11db904db5d9b1129a5e8bb0947a4c08c507ee2cc960c960f52898b1fde6f01e65301f859e6f387ecc56326642309b2a186bbec8774a4321921ca1f884121fbb66751940ab59b7d93e3709fbc30cf49905db154672e7f43b331d289f68572137075087f80e039a6ba320068d1aadb558d2e2d56dc07f9f571d1df664760633986353cc6c6b54e6110ae3b09b136901c656881b274e5d1d95497c7931acebaa081f9da50170263f72d7f615dd7c41f8e0f685fb65e6b664cb9274194a0a94ae571a63d28533695a2cc4b79b4b1d9413549d2cd679fce5d6c9b2b1d97c43cc215d8dcba83ba5bbbfd25e3d182d93f6522c557af044ec317b5d2296ecba76b5192f859faf27714b9d0c378b9cf690f482adbbb3f762ab56a2c6e9cf117113c40958255d29c69d254fb6d4f5f312e7ad61ebb80977a569d191c92629748bb684353a318edb3dd4c91a0965387a17610fc2e873d6514f23385f8c9523a8b89b89f14c3dfa1b9ba8411f676483932c75ab4cf4d063cfa6f5312fa5627a960bec70c5aaa4db6e3c2b8d4083ffe2d1d2432b80204c9c89eecb77fa0c66c98ca446ed7f790e29c25330e43111fe08f34292f7afa29642844aa8f80c854add77e61aa9f8227bbecdf2fe7161f25ef534ae96b593f5b6f0d7d90c667cb28cc001503026f055049fa145e5ba773ffa0a67f17e50f5ca4c168a9387b54ff67251cae0dcb89e0f2d8aeeade31f0bf6c9c0054c09fa117f0e45cd8c915dcc5544f1bef5f86fd5547e420960641d67918ae3ffec73b37e13b9053fee7bceda77ad7f25206c8cc6b6d6555fb4ede1f4db00f525378a08ecc4a11d1ab4b6fd7da815aad231d062d26998332d66a5c1fcb138ebf49c367f4666cca059c1914beb202f08a503afbdad193d0ed6aaab89ca185963d4d4f0919bba75e9a8c520ed0c2280832b1e6ea83cc61678e3f9f2e8333dff248d86fa765596941850013bb05c069b1f773f20fc05833cf7874678750e897266e97bbefbcef09186f4e553d12fa639a4d8b2e624c9377f0768f93ba17dc9d9b710709e20d72aed416ca230ca35802ee5af9eeefe2b1881e5649fea8d2c13ef454e6621412c759cee0cd8c29a464d62cfcfddf5957007ab06a120275ec1d0c8e3dc95347b3c7f8eb043c766f512fa77b0b895d90d2eaf61cff8bce8ac0eb54503146a117df335d0bea0bbc745e7ae3e283a2133dac0595074df948371bf7a1901317a7046b27bbd10f3e6d2362a41dc2b99315817378669146d29e3a7fafe7f211ab692d3a0e8454a67c97b042049d40435d60c50ed606c0a7e89d7ef9712b2493fed3427fc3f8a92e14e75c1a5ce0ebf206b0d2a18f407c9871dada190d2b32eaebd2aa6b3b75a4cb2d0b124aec84b2e3cc164816926bc6093a2a0b430418746ac38d3c81ec198dbc23b27a49f5f9924863c41f92b867048d0c7043cb1e4fd53d0a51061135caa8aed0b479e7af4db8496ff04671d7cfba135ce57786474b79f9170081b65a35cfeeb91e06fc90f5c3e0c3945f44046b6390b68a9fb5caaca7fc25a3427a9c3e567535b62efc2e94e0ebae5cfd22790c220a04c5c5d6f4689fb36aec1861ee832e2ed147a2274941982867c61b4f09ad1b261a59e58e1fd579e8786335f8db95083c72b6b870510999879f3694ccf351c725ebde6d41052743289430d4d92335d93a8c8ada3b89711e22bf6c20787d51c1eca446784a406b90b5bef324658f226214bf0a18df8ef7d90af5a43970531dc2eec62c7520796a2f737a6e6ab293c731b18c2d1e78a34f8ea1f523c2125e962e27b02497e81633270af22a458df1a2c9064cb93665320996300629f4914a62ac30b4745489f7cb6687a44cdd2d70ffec6ef628ca28e370ce8230b8c403b9cd513ed24a1e87c5337e43e2693113b96f7b4eaaa10a3314b44570825e2d9e99906f482568acf856333c05ffb70e6cdaccba0f52ead21e1bfcfa8eab19b68f47971f5eea3bb15b53185a950cce4ffbbc64ae5822493f34b70e3bae9142251386ed8657d446c68a83978ac33c5ca8bd50719d72cf36b10c9ff4cc0f52d5662ece646f5cedfb7115d3914b7ab18fe7f0f393d43f967a97cda24623d942ae3e585e17da76332df59c99c92a18012b59864761bbe702cba0ada4ec979dd89dd56899e4ba9dee1bd26aa91fcdc18a61b854804ea55d64ed1869060ae3ec51d0b8aa6d9c093696ec84f0a36da88c376744e229c2d0c9284eb59c58d69fa2dda319c56b2ac005583588be13f320769c7dec0208ff3623294491b9d9b290d6fbd9308875c03ccf1b27dc0f54da13c0e7df7c33ab4e7e89b09d9b805388dc035c4c67bf4fab6797f7a677fbe22f88cf038ea12d8bde4e53d0ffd564a8f02b98f5f45a69b35038ae3c62ff3213e625fcf0a9420b5dc5f21e891c9f8f04b1a468abac34af02f7dd97e1bfff8454351ca839a5732ba0ae4bffb8f4102a66d9961792e6adea976fca541f368b95cbec3b29a9fd4689fb60c4a9c5b3eca202293f111508214722c6ce22ef269cdff2c4651d2dc2258b3c4b34ae8c0a54c41b4a1b0c866bbf9ccdf207a0de5d0be837be20f1d4239625878a9fd52bc2bccfbc50758e24458fb16987eebac633fb7ba058c227e5926b351287fd65c0483d4e7058f68f85086df4b19adde2b20b3558034a900492ac2d95cdb46a886064112090ffa147ca3c048f8c43d8bb480e8277b88943eefc66d66b448c1a2a5bb9ab1d149a1faf2328724cbc81fbe0a8e5c5ac5ae910590b2190ed1399504a4464668e734dc0f3538a051af393751c81765c1e249119b9eea0d70f092adc70d68d6c4083a0260f15e80f427296308e16f83433ca74b417da370117f9cdb0753cacdf55280aaaf8b68b9ae44983b76652c5c3ff65f4207f4d86efcfa7a8c73351706c4bb84cea991dd012742636e44d91003f26a39285e1c8d5506a0aab07010e8e32948abdf910b13b38abf20db071bf1b06c61d1e523963762c658b3b93207d63b01d2df7e61ffd9b644861e211382d259c02e32203fc8b1601ca215add953b840a61001a6cd49e3f14d99868719897c31a4c1fabc104d7ce50d31e7910c2a0581148fc91e8d444b545ced390ce3428d75f01071b253c0fa35f1ba0800696935856a25014d5a0d2ee102e91941f0a3cc155756bd443ce7d8a60be9b869a419ecb23c5db74cfc6e2bb1238cd17a6f941232293cf3e114e5aa7e847967b4a1be12ad762de3fcaa80439b3988ca5bd38e141152c2e9ba0b8b4f2205759c495303df025b6b2d9bee0607bb375d40cdb4b50918968db2141485b3e016283a35892ffaea2de2d760b5c5ae1ccf5d02a5f85ac99af336300777651f2ae521b91e3e25312a80d3e1461636a8acadde2440f52fa8a4d42d6d137ed1ba3b6e457ca7f48d94b4b8f9c9822cebca93f3e9494b589a0c134789482dc42b5482f1d09c8bb659d77fb6bd4e4a0c3f4c64c3ff38a87e8c03af10556b1fb11f456e1f48dcb708c50f3512cd991609eddc068bf53d6b2e4ad5255b70364b204d9d9c4471c1a1eba4c4c33b66bc89fb7d095ae2f45e45f0f0e2c14e8c5407484a7b44e0f49ddf36e4c059be7db26fee5e6cedfd410c105b228a2fc1605d58e70fc71102abd6a7ce8020a8edb509d364d74801bd218d5a384334f7239cd2e7b94f56e6500df481c475b4a855a76a548aeb0e06f9cb93a5a80f521493cb2118c5168f0812873a6c44968462e0e5382a2472c987de00f5ffa485635296cafc2ff635953a65206ca1a5874e8fe01dd49783fbac144b7f959dcf1e22a59322669bbf41683ee436d921c9661ba99fbab02da52956724f2e0c40ab164c27cb3cc2d48aa0ce7f999c68141cd85355f0a376fcf51de7aa28b088a30958e7dca7760ec4a244d724e8fd78c9792c6221640618986e8e0882a9079a53e5644402c4b534f745cfbeb3e22d37f82c0e422f05de006cdf110b5c37dd6d049cbdd12535259502bcf2d648a76940eb55ac233cf8f0647bb28e97d72725cb215dc396c217e93ed5915e1baa538a134f01e42ff0d3482f79d01893d42f66e0a3426a234074c3ed77fdca14be3fff2030d6bebc7ba653f7571b261e3c2e84865d898b439294a62537eb0463da4c7f68478825e1491fa518a97eb04d854bdb6e9e2c873847e8664b90cc433b946901bd55d0c8d90714766c0da8a992875651600261567404122ea288768ba7ff92a04ccbde6923b9902749ca07132e832ddea2c94a6fac4c295a429237443e635fdcee9da3793e5e0999a1735cf5e83bfadf1a2e4d13ede1df8b7fd9c7676441b679cd18262a39ff255af9cc5dc6e18495ff78d2d5c1bc69e7c5a9e4edba688baed52078942aecfbd06a56cc3757f981e0a2dbdda7f344ef358ca2b96eb11c78e16b7fac47b8427d7af0aefda3b13510c3e1f665a6557b3ad6af18c9dadb783141e7fcd55041e3b539411d29789df6b98624f182f34382510e0a185289c407036e880d1b3c12d86d31ea3d90587be7188e13c8928a99ece62371dc333557b2793b64f84621dc9308968ac18a19b552a453695fc658f3e32367c4e11121eee0624e390998d0c9c3026b98bebabd5295603c0ef078df12b599ae1fde4ab5eb27947e381b3fb05c1f54a96b2e53241cb803db45477be19f8702d0a9715b55c0836786c6bf23800f2835c82cda8f7e2addb2f88f7e1426e01b19099354257feed5d1fb57ac4bf9baa8d1f8575d2df17757a3f75da92ee1775b45b53923b495a2f1af502d75608f56f39bdd020e52c547215f386ba2fdd8e19720ab63c5d6f4f12aa42b42d10b3e73a5ea1e432d4e32d0b23c7184a8b94311ff29c9ea0e67fdd2905205fbe46660b2de8667b700b188b902cf29ada0636b4617a000d3d5054ec4253bfc87e7517714dfac8c284e2faef019b74817973b0a3c0c0f20c4a475452e781f47d3fe0587f80429b0547bdc222109ce407740269ada56e40391ff6393c907f29bf5d27573a99238753d136a00ff3a0a0a68fbb3c5b48c5041979893938ed78ff94ea0488ca368a9a1e74be7dab6b93fa12aed723f156a202a4a37d1447889febaee2b64e99d0c8e53fad8b1a2e6ecff8af19e0a809ce958c7d6a1242b15a1a070d5293e47070d94c829604db38cc48af17f4838d4e812947208bef6016465bcabb7b2a04dc6bdb5c2f6569603d91743270868eaadcbea99c2ab5a819be90c9d19ed13c98ec41844a2cf1359c3f2311d9afa7918cd1a5aba977f403da918c29ea5acc6e6e66323a057c945f9f8b1c46466dfb040c49770b69a4686e006d5cc5d885ddc67e09d71f4265b1926e4c613a9a6cec8a5c0c266fd04509b0452b39b6ec5647d8e5a4f793e316253c31f33990736b396b87f326780565077fcb321057ba4995c70696a0a9e95647a2ef66e21a0e47f70c27ffae25bf420e4a091cb61c96a5d420ba948f14bca42936676683c51875d3ab5812014a700410b3c571b5842dfc676731a946ac391c125c2f5f8b6ebb7b7592504147001101ac80dd0f0cd6231e746539b5ed2ca4f0435475d9214e700a1a654558a14bf5aa6138519f940084814fdffa9c005f7168f155882c057c5ccc5ef46e0a0fb647f8a1d185b797ead2428a1ac80aec3082ce1067dc070f28c8ad6533e20adb22fc0884045365fcc338a6c80f765cb460113bba3bb188074b3b1bb5864f75bf878b2dd9dc11d42ae305842bbfbec878bd83216e5e1ae75e02e7d3e0bdd8eb3dd4770cff1263b60b23b440aeb75db1a96d31d720d750fe1204117c6cba2490f04e50cf72ecb0b1ed58640b57e4020f1ec61eb2b07a7cc95723f80aecaa4acd04f4e37f000135597bcd8fe9a7d8366a3f44eb8731d0f13a280949cf84a08cab37a4b04520a885d65236f13ad7a371ef2333109cf3e989897644c77201cbc018cfbeb82f4ce7e06ac5bdec4582e50f474688580f2ea37264b2cad27aaa93556c493783254516583c706056efd5e3607c28c2722c80637281ddea36ff8427a58a58e1854949ee20fcc3470a41d19509d0aade3f04dac26a0e4b89cc2436071c592adca128eb709eade4ef688f9a32ee8b82777b4a9d4b769e0b82634c86bf057662f103502d5e494cda41ebbabb923b4489bbb870772c35c653785f03bdf8c371cab1cf2be4cdd9b792dbd1df229f7223e688f701aab363b7f8439c7edf8410a403618bd92364507fa6460d30a5d13d3f5d9fe77da3f42aa3991745bb2a19263f0b21ec1fa398f636010e6c361093c8c8577cc546b4d922f3592eef917bbe82a8970a82e3ae39a5b5345e6d35f6cc397f28745c1c75c219019c52dd5f16bdbb64c1119afc4cb7d4d3e97648ebe690ea905bd1acc7b92606d5949ec538856037963d815f3e2c40f8a2109cab52214298f4dcfa641f5ca86ec2fae8355bb9ef3426a527f7306430415e3f98a28bd084d41e3b95dc94210fafa8d69052cc42187b6fd8f9a0e842bb4e3752eb2856b2df1a74024638579257d50b060414275d348814ba682e03f7ec3c4f20ba281f145a14ac2345957eee1005799facfa69192610728d7554f4a91c3a572c2865b744914981789b835198ce5170491e648ff2bd5fc47be29fa3b2481207f10ca8c5224f49c5d4dd202dfa310c51d97e1d90f9d3fc075c32f24722d459d05f317441f51b0bc7e0afa79a240d57e115b32e04e607779d1174fd4e33bbf9d1bf8e6838eed7b90085b0ab69d8cab804db7958ce8ac7e4fa0d54088ed41caaf2cea7930ab8ea294648a96d5c0be59ad8ad34e4ae42e58559bd9457594316d262aad11819330096bebec8844c32e830b4fccbe7aef21d1439f2e3026772c2eebd25a94b7fc12a146b2d1a2f619080eb74322f5996d1c84a73af69c52832a1e6c27d6719610412ecbebe6da21d6d953679ff1baa36644ab802114d49a57c6d26640ab5eb33f31f0518025ffa075e85e8dff98803ef489890e11e18e89a79100373ac6aec07a8950420b1614aac1d74cb855c7299974ff516a33bf7f665f29696133aa1a1f19814c2f685e2550e86c1f97e120bdfbcbae7eed2ec8d5fb3ee6e875146d82f3964304b3df2956771fea20082d716aa22da440756bbef93ca10b6d79c0366854cfdf4db7bcb39390a5aab8e00d3d6148332cd674d6d14af49cc5c4ea4c2953a08e128ac54171096f5d02436d240cea6f4e4bca171d8251ecd10f322908910c9866802ce59dfccdbadd94ed5e28cca8828ece6b10c904651b0150bf61095bf0d297af0e464151e2805c97cdc8c374a558e098cd863547b052922eea6180a4975b4132ccd5458bf7b8a6fce814524acdfd3e30fd099b419858fa334c0b2d63e6d60f132ac78a3280f4a21ec00da80f70835f9b74f20cfaaa77174114fd0d0001e5cf747597de28c92a53c704e04e81789dd2b7c6b6ac16d62dbf1e0a5e8ca4feac7585c4b82b2cba865560f22cd52c765c3db21c64c5c98efa408190402375304e124a165c59147edd288ab51be401eb841242a1028ac885435eba946c50336edbcd6e9063226d82683fcb069e956e118acbde0e98f550ec6672cf9a5038742cff337a389926b295f332d2209790236a51a09be3b9c83af64a3d70841db63c704f5c65dcda342eb55fd5a121bac8cc4c31279535e8d0af5aa08a08ea3818ad628c8ee433c8b50ff61b5485472abf8205eddc7f0f768ceb74adabc1ff09a9ac3ed94b45ad69a1df2cb1e1d67bab9996c52c31b6ff470f8985594c0932d0fd78b660f94909de1e2bdef732c0d0c5a4cb5e10f5c21727a657a3ab0495c558303888ebb13e3020ee20a81ef397694cccc325d260ef681da8f3e4b9d6a9b0676b87de4f7aa30017f4230f4e80368435402d3a8f0ad4383e07fbf5ee4c4d39ba6ce75863462fe1291d7e44dc758b11cf8de88b4974960bfac378bfa47013a803d2d87ca74dfdb690bd2f7313245f813aa8174e509777294b2de74d3e24f7ae54d81c54e41b4a941b937f783d7f9bc54200c0cea821ee24d708389aff935b94694a80c44b0ba1225d33025f0c470f835ac40ad06773c2c646972463619f119001808f7c2bd10dfd830052ca9d2061261f4333e10afa566066814da8b15d77673bc89cbb4263aae7f2c2794064c711d94f525dbadb125dbbf1b5e56b529389f3739484029c1a8015630318e9b7024846ffdd54ac0ff1899fbc69807830f1ccecf392315ae9ffffa86e5a3dde0448be7be65a90f745087f2801d7a8ec8f785b3e4bce80f4e32cf72291b88dee903b919ca803443922f671dd0412849e047751c3518674c355ef799ffa568dbc563697f56fd8763321a35e83f8c837ea5601e52259862cea5ba1e103192778fa9e8cde708bf1a2311cf13cdddb633dc00eaf2afd794535d90a34d1061e37f8c9b9a011f0d1503ac62ba441bb606f02b53244ab46d0ae7321d2b81090c013cc25830a98f795c476ac4c72bcb3956f9fcfcf462c997f9b15782de00d1cc63151b3cec9ed8b9a03b6bccbddad0a1af0a10bf782a859aac62550ed499497cc817ec66481a37701e6c53a78a972b66c8b72bfdb20d8db8c5da0d2f218fb61c343c2f2fb65a7dd13889203558e55f1ee84518dc948937230a5d021dc00c2d1d422441b19a8148686cdd92b3bad5d4790f7f35be916db97282464fe63f33d21820c95910621db97845a396c05d356e7dcc548d8de45ca0c33c564e12117807125dcf7c25e919c1919bdd36a80c1fc30104a916c54668e4cefb4326040fe4c8442d16c54893909bd696584c13659b06a8d6740cef4f59440bbd7b9470e03933150a063c9d9fecb549ac53414da03b214f3d6fda73dcff336baeaeb43042faac106f2df60a889b4aaca99727bccf2a881fc6b1abe44b6a9f266a5f632ebb106f1d7e0c31720345ebc49a3d9ae47b48e1fb08d271614c7e00b681056ceba04c8db94ab58c6eeb7c95025dae6d5f193320fe9936d1a84e8c8d26ac51b47abfe86807cf2d957994e73abe22640277f2852e5cc40ff3a54098b3eea13980cf2222bd6f814b18e2291bce0377f1047c86735b492db8b891f0a0401cf1bd109a2143cafea0153e363ed67b2232bbc919a216b43bb26de49c947f01a745222d3c92378ea565e8f792bd74b7ccaf206e5eb2d1b732f9d1b04a578152a3cdf8661803fd29332dae59f40641b4060cf5d1aa20665e5f72e603dff58beacb9a950167fce6cd0c131f21d34b17ff6f391eeb966c999b9d902050c9dfc331ea640b0560137321fe9a1ad80ccb9ff08687753cf7199aadce3eb565809f9d2a195c589e86402b9472bc6a64a9ed323e128614c8be070760db57c05abd4de9a8d11b592d9208321aa5342374466e622aa6feb1075054416785d41ce6713d254fac998391d99b446b55815ee59797a5b47b13b579af1d09a08589d1dfe20096a78aeae22aaf21f14342b87d930606631092509245766c801b72329cb6ac14d55423db56fe31df43b0a4151aac58fd492b4aa8e1d92249980b8c5410764e302e123d8dbe0f12550bea4a46ece8af525617beb86480d5edd555159e7d4267041003133ec498c335ef461cb1e03d07282ee0ae14371303e13a528e4947140275f5895f5728e78ed3500040c710e30ce3c1f63cd0afd842962a00711c715209b8af246e98b1c4a5346ae796644188b0147701b4a41c1f410adb56d13fd6988e8127686cc76ef565b48ec2db9b8f26986b1642af3d295128677063098d67cbacad2362e8dcc416b66e477073e82927da01144d7ef275c275632d0242e261950efbc897d31773c4899400d97cf6de721dd87e443d733d9acc7c465592a42e263ada82a4bcd29f3b0d399464eed85266cd93690443e7c85312ec8ddda0d18f3c6132b388f27a53a0155a9eaced6e371de6b485c6f67739cba01683cca9369fabf7d867811f1d7984db49884d290a8582adbdb1b6c3e856d1bd5a3f2669ed535b0819e7c6c1ccd6ad4d3ffe22940dcd019d93a8d5204bc2900d9af6425139df6e065614f00fd498f78accdbfcfa1e1830ba2c145fd65448b472b87ef371e3592305bc1dc04e4e7fb172d31b4e95d9b33141e7c4cd2b23546485eaa44fcfccf1b941ee9b1cd11f2c55c4b84f82f057ec391e0220bb88b90f48516ebaf381b6d7f5fabe2c7545fcc2ce1c3b72f889f86a458f42e61f3f79b75431391c668a31770ee15cc251818c0232b31ed7806324eac5037e03d51dfcf5f59a6c90909d64857e257a5db56a6310dd4871aef198e4c74820265c506dd0e108d895028af977f886d3370eec14aedfeab891d86c503ad043c83e1878e35bdf0fd05e210b53d06362a394898e84d95f643760a7c7ae6ede4299cc8eafdbce0d04c4ff874cae3d2eef8c435f3a2d8377107f35dcae849ecab06716df9db0585188de38b17b409c3db71e41fac3808eecd16035241e9507ce11b98fd42cecabf7d35dc08d49f8ddc1344fdc7b97b6d394090951fbb21c9dca1b6cd44a6b1a45d0b971610e4936a7780db2ddcf5727cb29aefbdac438ed05f8350025deeea470d4839072796da8c2638d4055f3eb4847f399ba0004b469c7bc820ab3725127a5362d96f7dd125aafbd63fae99b0f696b14c047a5ee45d5f981ea92cfb055f128d9cfaad0974b25f16b334c6ae514a31d29530c3fdddce2bdd2e2bbf21eb408528d424d6baca8efc58ec42d8e28847b863c2fa45d5463074a9529f8468b8d37c2362802c1110c7afb40e4067456f8dae60f426b366b249a04993dfea28dba4948bc4a667b02a88e5fc8c3c47d688745a05170e34e2c776ae7952b2b9d59b0b0b2c1e2f6ea01287c013c7086b59b208f57789b581504b85ee433115ba8d1c797120cc99a3f41ff2ff623f8c92e88b8c3d86524ff565a441a7816b31b30496a9966b67cd7e71857249f3530ce49e168746ac760e11a024d5754ad44a37ebe721115f76793abb2b51c44f475e4eb9a6ccfc4c536be155e50001b1c9b70a125d5ca2a331debea8d7bab0ff7ff78b0ffeb675d579a9d4f422bf8b077b9dffbdfbc76f3573f5bdf7c9c6442ea2e20bb3d1ac59b20ddf2d8c05a2ca2c4ea9179fd8ade61d64aee62063b499e5c26dac33a990eb38f89e628a620e013bef6266bd16f65fb13cd2408969b02df864fe7e5d26dea38cfc7e456dd2bf9cd415d95638c303f55cf2e0cb91634dd55e08d845c8a980be53a80a07a037b4b4af75cefeb89f1d1a8e946ddcd2fb8ec8f2be14a7f8c140fb670c74b54185a66a2850735ba31534f041ff42ddcb563fd859a607cbc593496da5472ef558d80db943abab4588464f53dc44b4b51cbf3ae3a2cb4e18cf3b203041e36159748c3b5db04a66aefe928c21a3ba46840ed38798478084a8e83301861cde32fc3cb016fa2af00a1d9628b23d5df77d168e61ae4167b99c54bdb3704600d561b42eacfd98c776e304bae31e7c6ced32f1f4e19c89d71e39cce0dd7eceb3e4b73f973379da9bebcc7cedcd3943fef6733a2b3ffa58ee16e591710907a514dbeac94eef5b7498e24cc34c1acb7377556c1fb8729c2ffe6205a90abe2af60cb69a683d7163d61ac9880c8ff223ae454d97171c2eeab16f541ef636b1e050661e40d4dad2ff305a53e0ec4dc9a6e7eea2832d121da2e8422c8d8836b7cdacf554894c2e15566b875915e5c8642113b400838e692dbe25d15039840c0d42f36eba4a0eaea7677ba75ff2caecd47e3bd202a87d421d67f95402136b1adcf7b503a74d7d4e4d9cb2ca2cb1cd7c547125c6db727a6c6dc534f640ce45f4f723cdbef7cf82d7be9ccce66347ee33f0b1924ea0b519ff21a35cf129210f82850a5aef567752f095cebad3a4d29422e028599f7db55e1d41838bb5eac210dd1bf52cf09844d709535aeaa670fa7e58304ed92ad60180961533cd3a3e134c3cecb60cf88756ea0e9c0980ee15d3dc859fa866bff5526e982e76438997c559116120df13fa3f0ccf132acad1b82037309458fc7b6e271fc08c85037a1e4f2ffc471361217205eeaf3c0baf6727e474ad3613c8e9ffe54093403191e7151adecaed57c1356c14f114f72b11534606ac8c1d835680d0fb521d9fd6a0958fa238b84cae707305f563a3795e0db77dc591052b4eb58dd25092eb2e8b23fb4f0afdeeefe7649640002cbccffdada555381005c5fabda0add4afed7bfc1eeb5fc8f6ae4cd597521497ee411e94a423bf83400e919321673f0947e28428a2414b052825ebb6a342287f313684f1e46dd25472247d39518334598b906a645631e06b40f1dc823b922be70c568e05ae8ca8c139d8fa1e8dda1d75184e45024c0904fa6d8bb75820d8556d0e7abf422ad9b79aca674c8967ecde6687a893a853c3512db7040d104499dcc9609f8677cdc768745c722b878fb569ab7f66c2b754d3d9074041b78dfc73cab502bf220da6e048c7f9b7b4d1d2f6922da5c89d024b0b5b0b580bac25acd9009e20f182c45a32e3c84bd20c192be8e58b173066207941622d29dae1a78af23b6ab679b743d5521e3cc2362c442de0114b14199953c6013061212aa15888360bd18985a8f42616a24f7299fca8d9671a77445b4674fb869a91f905a946e64fcd60a3fa0589cc6093df0299ff7b411a80134da4a8020b285890a87774c40a622da911153d311ac046c2128e904fba932328c87bb7912dc7f5baf7563314aa1b7be44d89d9adf178c058ccb1bf536d2f8707faadb9a3af64bf4ae224f7ab99a7728e074862b00b1ddbc848195353d89996390e7462b5c580443ee108e942ba93285c6460fb78afc9d4935b932a329232ba359c14a92a6e0d1629a29b72b2c34f39c9efa7fd0294eca4da50d00992253c12c391697b74258a1864dfa32c331a292ac73122f8e87e010c482e93532819993f05c546758a88cc680c51c8fca20aa5f104059190f941221a4664fe920a8d0109323f88e47a1954426626c8dc441332e7d744d8e6dee4078b8cdea1ab19f76310ec415788cc78cb1f035238c63e9d4e27f14f27f14ffb74eaf64ac969d3297bef5fad984851f9984ea8d329e5f429226aa77c8a88daa4a0dec3362a8f1abbfd29af92f23252506297655b9692c9564aac945829b152229f6ef78428414e40b2b3288a62973951cca5174f1af5a79c4f623ea1ac2650a794074f27f151a747892926d39f32ea84123fd5edd3ef537ed612d612d612d6921c06c6189bb4fecb5a62baf7bba6d3bddf9bc237dd6b6205d1b048bb345145a3dd672d612d612d612dd1342e8a28584461a26718637cd25aafc455b85a7da1288662b80a4d6118fe69258aa1783a8de80a3d99506f3a9d46b4cdf8c30fc3d56ab5d2b36e28e4f04ab64ab24ad275397732d97dd0246bc30c8220188e2f2d13c5103c7d639bbbd5ca9b8198c31dc6b8335264fb8e35eb9ea5a4633591594a584c741d2ba8094f7491d4842fba2670d18426dd6f62a8a24a4d6197c0af632d69d9475c9891e06ae6616f35fb56b3fd171c65e063cf1b519b23d438a26d4e994cfb546a33d98525707c6919d97df94b258cb795122b25564accc4cb293922bb7c5941db0ebdedef88afbe971554620591f8b948e2420a320a0943ba932e8848108bb70b1a2903e94eba9091e00d373154d134b49bc24bd3be0f1d5f282e8dac25ac25780c23655b11ad66a44aa6e9a05bf33df79a895bd33dc7bd6ee2d680cf71af65d846e56570cf7daad27fbf751a092c1a2952c44ab6f2564c882a9fd03bfd467a997bd17b5189785a29217eb885e2af6624f7db36861bb76d3ee287cf719c91225ee7ad9820d1eedbeb73bf08925389abef5749564a48b4f356b30ff546743523bb6f2fb6c1efbde73ddae5f7b0e779e37b9f11c8fc43c8bdb7a9b8f1e535121cf71cf72bd9adf9defb55928dc5bdc771ab19ba9a91df974af7e3bc4ff9bcef4bf144efd1d3129ec785442428864e8adc67525471dcddb17de93b15f7e16fdd97545f569556b28f03b7663f0ca7253e0e6c5be93e6a2396c447574a6caccdd91c91dcd8a16dfe7edbfedbb691fb6deb9e434f4b905affaacb9914fff4a88d11198e2929ec97f89d0c95e3116db38d51279a4419e97da77fa5c4c65a81bf9281e06a467e5c89e3388e7bb2b45262a3e93c1521d35d0143fcfc9aa6a1d0f97593ecef051992dc73455c40c10430985005139a6002141224c1670591e0e71929c2e91997e3584a2ef8dbf52e39e339cda4c5047a098ee366cc187fc83fe379b81b6bd6bdf79ac6a292b2afa843d3ee887a7b1bd196ac69db4811d68ca584d504a8f2f966b094802c26c01933584b522f335e46f492202b88e4764ec92a9925bf46e2e5f3883f0e011f37be7c60686a7161cd584ab87b5941e08cff38ef8515192e8fe2ee0eee7bcc5cde71cb3b3685b96315cde0e1b29490dceb1795f82915e8bd8baa456552752a67cd2e8cfe8e700cfe1746d46319516f655419d1dd821af788d220b11108869a486b4e6fa7bfe20e8efc8eb0cd465bbe235066747a691ae9933b177b6ca7f1a57bf0f50cdbc0e018fc1eccfe46b40586a481774da6bff4a24acb5c067c1fae4748820f83b113cc01ae46e2672dd95820f7df979e556205911ec7711c6bc946a3c795d4f6c2155a5eb073181838aac026ddc91112dc07b67002b985175b5021698ba12d685b181d4142e8084da640c2089808c21640d8c0164334b0f68214b650e2892d966c4102ee85242d76406ae1032d80a005165a20418b232dba40a20b53802244c386b7cdcbf8e3e2c6dcf7c2fb627f60b42001932821ef07066150b579d8f1f62c422e0031ce417ca5d1c3315745656f8df169471e73d65f7a1cefbbafe475a597ed7db2fe317670dc0e4e636cc44673fefb46382eff0e3c8e18b89a7bafeb40b0ebbaae1b518ef35cb2b0518f34ba352c5f6c0ffc93a946760f5e18efb49dee3d618c4f9f73cea7d75a6b7de2388ee3b8d3835d6852b97461875f7a7285b4101212519e1d75df9946972e6cef3bf1c10ffcd383bfe334bef0f048d37ba4694459527c704459f27b23240fd383bfc334d2c037fde95fc037429e46d634ea582145ee08d93d38de2764f728a6e5e70173689127e40bcfc0259ffd88d18b20cafa5352d85846e61b446614384c7e1427c141d7869be1982cf478763917784cfe99d0ade1987028f01a6e050e93f3835ac866059edd73e098601b2cc331f999dc1a2c7301c784ccfa93f0313f968df9f106dc7bf4d491f73ed1506e4c7e2850b8e0c20b2fbef882cc39673c6a23172b6c94632223ef33015dc2d8b67f825daab0514fd49fb5d644447a36e3380eab3822a2aeeb3aaccae1799e87552e5a70d473d182a31e89844444b4cdb699fb9116b6c8a394236585bd63dc17061f9189ac8e956b746bf23f81b2a19ee7799ec742e6f13ef9c0006f10e0dd9b5351c199c32ee3321ec9bd112f4080ff3d0ef89548eec1938b11fb233917318cb8aa1288b3de1192dc6fdbde777431c2cb9be7dda8878031c618638c31c62f186fcf711863dc755dd7f9707fbfbb17e39cb3d65a731cc7715dd7755df7e4c915ba42484844445808b18e95951d5cd7e12ee40088ee9a960bd3c3636ecc0d1fc01bd8a605df20b50ff8baf6c187dbc36d64404fe476ea38cec78fb00f3e9ca5d83eab56b29883db461ffcff241ed11c1aa90a56b8c21758c8821692b6c0852e801186187a8c2315b0c00590187104066448642089241a70999b631b39255ce67e8e8ddb80cbdcd71a09494b7163ee57e161d1c28517b7c645ba305f5c98a451239157236d4849d059ebdc234616482055610c1f4801040f6000049e165dd88207de11f23e4813024d7b3a6b9d33f00511141c142da94112460cc10220f0b478827cb281fd1d711ce067318b9c18040c8ef14e0c4214b5b8237c31149f879b4576c7478a37704c7e90eb3a8fd360177a9b18c4c58e31c6d8f4e19b38d3e8b94c387a2ed3893bb6cec331253287df07ee50b930fea1b80366bb5f0e2f4cfe700cc51df9b5c3f87bf8893b727619b0248641e4ff80d8e28ecec3300cc3ed7aa6f03d97c91f7ebe7da63f8dee32f94de34686231a23c57174996d9f8f8612a7836c638cdf932024123bc90289742750aa7002050af93db142e873d1c0aec08ad07d957d3bd5e989cb60adc115a16d0c72bbe30a79f2b2eaf4edafe4a517e0ef341272cb23aa2b40fa3d42a2dcbf20a0f3f1be438047a22f08f0e9c8cec97105891303f4ab0513249ac9ab8512f214e56aa1012d8e000144deafe2808b857f91f405d2762fc6396b9cb3d61cd7698eeb3acf2b759e572a7d1fe89bfbe6bef9ddfcba6fee9bfbe67773bfbe95be0f04c350bcfe60188aa7eb8fde264cbef99ff6ddfc517efddd1dc9dd89dc3725dbec7e8174affbe6beb96f7e37a7c1b77b31ce596f17e39cb5e6b2e6b8aef3bc52e7954adf0782e10786a1289a4c27d1743aed8d42a5a4c8505159596161796153a159c6a652f195fb3ee41d8ddc8d260acff3bc52a9a49d4049e292854b162e59b864e192854b162e59b864e192854874b2094625bf267408f2a654a77f4185629265443512dd8a8ac64243778a0a4d2981cc8f7a9d38d98551714854dc910b039391c8a2f098fc1ce0c0124b98e08e9e84bd7147b22c4cd21b0beda5e638b81228be3b688463f25f26a011b6318da8071a89234ac3280a6e7ca935d9a82711297244766bf04d32db82b8ab4a39d928b823b5839dfa978cb62faa971a8ec92f44644e1db98c0d360a1ad1c8fca0d1adb9508e6e4d945b73bdb835486012f61ebda3375e18bf9e3d5576dfb66ce2b831245d8ef4c2723f8b599090a72e4e51e919e857cc218a3bbee7b2fb07ca781c948cd1f43829a39ee1181327e610836c63a496d82a74882472339db2ca08b99dc237a9509b2232043f5495f248d3354d0bc1becf792da4f72a57959ac2d6b2cdbb47a5a44de362831f6ed9ad49b2675bc98976e4d620b935323089919bed41f0c32e7c713472d36115b7fd37a2a7179c68a5110567e45581474024a00c4c7261ae0e360a1e79021a619bad0569bb8fafe7798f55da08f9d232526399cb6c9aae2255b4512f4a800f3e502fdaa8176d5b2a0729a2bd71aadc19e1825e37be00512a796337e294fefb6f2c521a8ddce822dc540d36ea45336ab0d1ffd1e343027cf0e1d7718ee16f406f905767e1865ac8b4053f1dc1364c92bcf8381661817f11ef4ba3e3986d7c2ffd37fa8d6ff83517dbfb922909dbf8cdfd131293d08754faa29404c61636a16e444d2620efa3790b262197b925a4d217a5a4121279555b289f00d4bf6df78431ce3967adafb8e20aeee8e88a2baeb8e28a2baeb8e28a2baeb802012a78e31eff0e0e1b2137fdf87768ac3b2b5256a4ac485991b2226545ca8a9415292b5256a4ac4859810516437842042c5242e4f6604a0721593b117db5aff6d5de2509db68198ed97e360b0a8a1285fd041721c7817f139d9e406e2a9b88dc5c845c66534122b7bc958e5c66fb11a784320d54523bd85ccaeb382cee0000693a3a394146711cf9317744c613b413a71a7744461497c11fad46e2fbc465b40c133521a80730b842d0516a0aad535364c10a5ac956b2d5ec89e7ba137b80e4b6a936b147d697b5041c3defc3cfb4b569444551d444525c185de483fbac259ecaf3bc6ddb671f6c56d03fd151282981a604249206d29d28610a51ba103c9d3c4f6f3d4e27d5fd6c63e43c5cd00b5de421a2a53785defeef741ad1f6e56def346a71c7e9bb0757b2538e4d0be9264c2acdc42f4c46d918e5fb9ff79d9863a5c44673bfa4daa1e77939bc2eecc15ecd382a4e3b3c869115c42468a3348ec21a1a8ec35321d05c17d824822cd801c30782b9a66738a623f177bfdd0dfcfc46137d171b61f29b548a8b9d1f7f483ed9ad495262e238eea36e9493c0d04734921bc736f77edf88da18819caaf49f0afc2b8e68c989121397d1426438a25a46aa341207731208828fe6bbdde7be7bbb9cf4cd70182078a48b1dc577f471f145f9bcb835befdbddf14e47df74f07304db410ad537d5f7c489b8a23bff8c0202fd28509c14635ed43c2365f144634ac6899420749a46e2244d328f0cd39b092ad94c882fb3ab0b3d7a0e16ed707ef4ba552c6b709a0c7c00425a48a74274b4022c12d5cc9b89163920241a7410da696d821aa659fc78ddf938b851917e62ac94f1c078d5a13a220294eb0958091005fac205610c92a62cd88402dbb2f2db339d24ce07c31a85578255bada0ac56337245b492e59b71de1c9b30698526605cd4c68844db4cae92ac644ea4e085132f9eac6632a04113a9cb01e79e034b2c61021338416edcb6bd9e398e4e56caf71b73d6e0d5de0e8c491073bbeb38cff34a79d429196ceeabb9cca5d14a50684d36aa6ba5eeea2e6ab55aad56abd56ab55aad56abd56ab55aad56abd56ab55aad56abd56ab55aed768fe628c82dff8d0eba91c12e15b9cccd18aba04bd960a35a0a3265831dc4bde9ee0d8ea14501b638e172ef038911a111e1eb198e015f873b0c1681708fd9a136896338bee8e0c8778c317eac3f1c4d1f3e1886611882efa6f0b58ad334322443b0e338700c55e06b1afe4a1d0d837fc1ffc02f99c01dfc4e044350477e70d4b50bb33d3806d9b4cc71742a9ad64d8ec200d98d4cd1b614ed622c249473d65a6b8ee3382e45eb52b4140d092945bb5e07f4d1cdae99f1290fec8ebcaf9fdc9aed3516e48542e6d059954db0f16f638a09fbbe3e9202e8b2835913434343434343434343434343434343434343434343434343434343434343434343434343e087a10eadd121a290794475086eadf5e77144c150e5a42908fcf2cbc87faa397d7ed42359defb41c67ffebcf2de85c11b7cfda08a03c17f21bf0cd4e70deed8c6306513f8e2efc7e09b9ecb0f82fa512a7488283f983e8f2ffbf383af552ffbc3d72f7bd4017ef8e1838ffa300a4a8586df81e2a78c3dc407471ff1f7e8f3c28fe30b3c5e189d656c3129e3f58323ba326695b1c5e429bf8c51851641e6300433b8b3e9c3074ff9f50fedb7986c33de9ea9d8f833f8dff71aa7501d44a250bf893a4c9f1fb5f7ef71a7fc56e937a9c41415ea4d9f425b4c8f1a511de4a3cff7208f6f44c19c41f0b356a12d5a657a2d642351df852038441432e55346f4a53712f5261dbe56991ea5da5b7549930a3d8da10a043f8c9242c1ce59d4a1dff48168112914ec100c224551f5fdd4624f8688b231ce40174d20b7209c812ebad0b423e0284489825151148aa2503b81ec068e29129c52244851c1240a4c4ea79cc5511455a7cf3b478a043be75314825224c89122418a0447522a48a520e5448a89fede882d5f6fdb76deb6cc69cdfd8e3c6ad9a865db7671d65a67aef3b42a25b4efe394d0977f8777bdd7bfc3d3e38bf7a57fd16f842c8dac37ea18836c63e007372ca64a70c99c2355024ce61ca91264326bad5325d064e6388ee3bc54097674644e9560dfc747474848395225d8631e770080e400406634d376162926a0f0044900d29d3c41bf6756106b46837bb7eb343054a1def446ec1720506f7a1cd4f7a6c7d9df9f1edc72bedac3dcdee164f89de88393a13671cfc3d51ff210c7d412fb1bd1d2dfc71ffe932a482341e22f221bf92e5e02984fa911e09cb5d69ae338aeebbaae4b8de0e808096913da845223d8db3bcef7f5e7bb5d910737ea2338df0e098906052b881544a3d1682c25ac196b0917518e2e8c5e425bb2354d7f487a898fa6f5f779b5ca5f52d97c7944db9c472d5bad56b2d5d7c4c7e413fa665f10a9531fd0b2d56ab55aad56abd56ab5fac0be587b345d05904683a24643025462a3baa808db80325911282b2a4a62fb945e8335b35ba3e4d6704c8042b7060499804cc0275833d612d60c8c24f0481218e0910d14251555f1040b232847e0915b836e29244a7a03454945553cc1c208ca51124545553cc1c208ca116b098b095096540406251555610406280393148132d6125d44a3d18a584b401a48047a0c5a3341769be937b165ef0c7cdff779290d6c540b619baf8663f07bde164a25f96aabdad7e423faa4b835dc5705686404c55bc956e3f7c485617261681f93ef09f0a3dd9a6e2b7db45bf33dfe5406b62fe9d46c77ef24aa859824d91be93d66a29fb835f96b6aabd5128ec84fe82bba35e8c784c446247eddc4b5d96ef07fee64094d48fc5f132df4d556fa5723ba95c6d488b2e826b4fa8ec224ba4ee4b8aee3baee579bc9d46353719cf8a14aecb66deb56326e35d31b97bb4e9f34b752e2059dd67f220a1fd52f2031cac97e9bc1e92648eca9b6bf628a051bf56eaea1f9059b57731c3090a6288ec37bfca12a2585ed4e20b72fd548d5e7d1541caa83f0a8995c181aa47e229f8abe1a13722b326a8ee35c258c01f7600a89edd3bd26b91b6e220f4d76ff2d23ca0acaa18aeb0cd22e0ca7a120b96d2ba9346bd63dfefc78eca1f592205d7aac2a6d5dd775deb366da59419d4aab4070cb8f7e48e496b31ebdafc8655ab0b91f5352d89a88dc1eff983fbf0e82492de48561e25841a78d4a4941edd3c69ab196b0824cdfa94c236a84b5843573d6125610ab8835632df16e677a41dac617246c037aa8b7374a23ece982c0c3d4968df5502a953e9c555dd71c4970f7d27788c4fde7ec6157b5a78d959b8c1abe431e66d8d4fc5187a8af57f9ad9a3e7b7e7a96ab015e6072771bccc051e0ee15f00d16f1d6a4614d9eb4ec690171996a7af6b44a988cd9962d4bc39a42cef6849deb8fcb14a2c25ab67cb165e94b55957db67c97f9f3a3aeae77a5e5bf99aadfb2a5f9fab6fc9ef61cf22eb32dcdb5f52c5039e4553e7bbe197b950c002a5fab29a4c7a7a4eb60c673b267fb8ac1a27ccf9aadb47c953a44dcfdc67757011f819003b5e7eb6c635786520d9eaa27cb9a333940da566c6dd9546de5b85ce5b732a46c39a42d7bda67d3d2843dd0eb55c6d8d8b3670fceabd2f3dfec695d694cdd791356a6af2ae07aee2e01df5e0fb3658158191a9a1a1b3668b0d9a981a6061b250d3636b46e70d960c30d3768306d64ccb65c5b5627c6b6a909032a7f80946c5aae2d10991f3366c68200f9e9727077187c7730b83be99bcbc2dd3bdf5c11dc3d27e753f5645753c89b3ce5aab6ecb7a9b9aeb1d6b3423e27e7d3b3ec69c9a43d7e26c6fc19da1e9e1336c3f7b4ce9e2130cfbeca7435dbf47cd65ccb57cb74fd6fa04605a1102c613585a840ccd6296435632d93880904d622e24acd1f36c6fea8ab0b1663cdd5f5527b5873ed6981ca96e902d2b6ceb565cd15c81020af32e63a859caef40442a48401f981b5880031dbd2f513a36171e080b5880001c2c65e3158acd5aeeacf4f8c953161e5ba830387093bdb34b66a22eefeabbab3f29cb057d337828925b8fbc97dd380bb4fc0b7f6dcd97546e77cc15a44645af3f52a7f68602d22342d1b7456ab560d34374c1ba579838983cbc6c6ce0d1b68b841a6555da5cf4bfda161db98ead3327b5a34edc943a3f2ac656b8606a83dd7f24787c684a93d34ee9e0addddc55d66906799439cecc362b09348097bb3a77db5fd57190b62bea9f36afb2e73889335d767cf77992eb5959af7bb09707720be3301bc2d794e21a5197b95423ec74c5505e47cf9a9fa3931303fe53a248de1c091aa67fbd323e75de6eb55b6361d1a1e89b7694c6dbd0e05f8d47c016977cc1710d74bc54f2cf1cc000e8b9675bd0e3a7c0c4c6abe665a2b9b04066a78999d97c9be0e3a7cdbc3739a3d33268fcb1cc2dd21e0fbf2e0ec3a63bad494c634d75687864dd5b36d99af97daa2a9c1c4c146cb061c6cac68a8c1a6861d1b2bd70d375c3670a8c186f2868e0d37746ed460c3d5b2c1c4a1061b34ad968dad340ec0e1d103e983ece1737822aef371b8ccd759eeb0a57763c5f776e4edf9fa613fa72d73587c6f35dc3dc5f70685fbab14a2c2ccd5dd45773db4f5b0b71b777fc1f7c6babb8aef0d88bb0e444c577aae269b9eec3ae35261342d5348ccb327cca7e6eb737853e75daf98dac37e8cbb97dcafcbdd5b7c6f995d675ad80ee7ee9b5f5fd575353f2ddf65a66bac35d74fd5b32ddbd48499af1fd8f9ed59aeedf3a467db96b055ddf9f272ee3ec3b7137177946f57e2ee43d4d7ce6a0a511fa83d5be54fd962d799962904c89072a569ad2c4d4b7dbd4a1aa0b55c75ce97bb6b9cddfdee8084083290c18ed20b444fc4d0608a223eb2c001ce8e106e7842f8ca01a36ac28d27328678335c08f242012f249a28dd18634a50c313192e1998c13fac0162d80195198102ef8ace0a4940273a728474dc61a109b81db11d8144b6fd11a92878d8067cf7dfd84654dd07b7ed4624a288fbde78e4fea6f29b30fc52f7e5ff44d5bdcfc3cd2a24f9c3df5444947ebb2523aa2376b8c1ffa990c8b61bfc47ec7093f38b8f83c307557e03822f8aff812fdb6e3e2421107e534212bef89b8a88efb7efb72702fc2dbee87022d2a71b5500749f1b5500847f0732bf27fb9bef3d15127113c7232312228ac0ff8d473012d9df888fc507882a228ac00f8e47f05f20441cfcf77e2ad976f37d4925db6e4a0faa901cb1c3cdf7b2ed46c4628e1720f28bff00fce17b2a24a50618b91147229e88ef89006fb8df6e5257d8417c0c921b7d5400745f0540f9f3e31720f2dfc7c13eee7b2a1ff95df4811f5f2e8a96ad5355f81cc0d413a2a4a0b0ef83a08ffe3c1ac11b0240bfaa20f8fecd8e23e79c7fdbb6cd67fbfc5d9022e8f60730c27d2e22e4be6ef1ebe79e07acb12e720023a43766958f1e8314214ba30fa73f8f18bdbf752a1f2f678c71c639e78cf16f22024ef77d7302f46ddbf05505c1ee7a5c5b21f7b9d75915a485f4b9a393df18a4880f1be97d6944f36f639022f735f7f879c09c2a8f41f0f5b67b03d0c336458a14711f7f11dbe72f8244f637fa8ff81b16e0945e7f11de7fef639123fe468f458ae0fe1b657f83bf3416e18db2bf2982db5e8ff8fd8be0b61454f9cda692c990c8f2c882203b1cc182203b903ef89dbc41b6ad01e00c64cd584a3cb366ac25ac202d854a13dded8b2e4c130cecedf5136ca3695bcdc8f155e9265080338c852a80818444ea2f95ae739cbff6acc46a56d24cf4cdb9e6329a7661f0a764fbfee6b21be3efef3646d8667bbf3efaebd74a6e121e9c8a78e074a73d5dd244b43edd48fde0460e443ca9f324ce93849a704f70348e5664da34e771b45168e368d8cb1c8dbc474245de1d7794206c14356309fade1d34da7ce4463da234669cd1869a8147234b5013d48cbc4f24cc40ea07a92223f0098ed962e0fd8637210d163db9315c98ed07b6018fc0297c43015805b9116db518524e5236f882548e568ec87b03c7dcef3af475a38abd913b72b83097e394d0bc8853e25ef8e0797bb7b4fc7bb42d1f91a92d90d7c9576483f17404848deea2222ea888bc7f52c257e40591b786e7799eb772e405d2119210ae804474da66ef95543619a8bfef23e5517fb237f6d02dc34b5959595919575461d146f76cd3c83dbb35f735ba761324664262bc6733a14ddb421fec3b85a4cb75628e95319cd17ca77022d8a8473d2430098c5ba35746ad837424f8c585c160d285c18e4d20d2ecd674a91e6c944b0b086edfde29a3986353a19e0cd556a17b443588946345ebabaf8e6273628feed19c0b83ffb5031795e3187dc385c1516ca45b731f7f78447f9114220965b766766b5e345e19b9bf9b7eb0e55d58b616976f791c976f6979179777198bb8ec1919e4382eb6713989a7175b5cbe65a58995a0152656846ecd0b8f3913a810398efb5cd29e6d25b766e5f1efa0cdc41226203188944462fd2e7a7c01a2e55d1ea7e55d5cbe0527f52ddf321669f9d478bbfb28b8840a91cb60f05150b567aaad6407317161f0e6a27ab9dfa27a01e28e382e9f7a9c976ff9976ff9ce45d522850e856251e97711b5b2b2b2a242ef779fc219216fca8f0b8323e048492aee088ec1df823ad20edab3106cd491d03dbbbf3d974737b91dbfa8bc05857ad49152563ee565a85023321ec4a32cb5c4d68feaba5f595951a9fc8a4aca7729cf03969182428d1eaa6527131242a08a0e5e9ab679363fb2df9b4d1a0d2370572e0d19e8316c9ee28111e19fde08f14d4f040bbc2722fcd373e29b9e3b3d4ef8a711477cd3e83886f354a4d86838a2b90482606a89fdfd7dcf7b2e7f496584f4bafc5c1655aa2d6b01f418d097a3a2f6f5937242c4f2848596fddaa46c5ede7fbfa8c21b9352f98df107578c5674c882aa75a827a16aa81aaa86aaa16aa011cb8ad18ad10a9495a395282b5eac20ad24612f62a111e1606f628ef57a9bcbdcabeaa1dd1aeee65c1829c85c744757986383230aa6fea5654bbd7cea715e3e95fa97192f3f435f1595171ec5e4ca3bcbaf641a0fc38b14b726ff4bede585e8d6b8a47cea085563a1b140c1526369726bbecf464a2073d2cb1bb9b9efa97f799cd4bf8c4558c07d111a9f1a71524560f8d468e4864b7974c548c6a39ec442638142c552bb30f93f154b930b93f1e603098d87e1c1140f76fe917a00fc8f979f41040b7060f8194f048df1857b007cea01f044c030bee01108007cea5fb811070063ea05e75f7ec6582a852aee5d0c31c67fbff4e2e7e4279672b08bcbffa202b1141bf5200dac75336779017320987127e61065a92536776fc9f4e1639511f29a4a21182b189f59cdf675eedc309a7199adb9febc747270f60da119d607f6aada3e5bf6e8e0fb46d996ae577f58735dd5d69be48d4f4fd86ab6a6eb4d1d56069ba4191b2656938dfdeb75b6ec9b6be9327d5aea2b8dbdd983b36d5a9b186662cc9e9635d71f22e70ccf8c095313a566e6be9a3b3b319d56f9c3fe8efa3eadf2f525fb53f6aca68ff4fc981973e6847933c6b2a7fa266c084e0d0f6cac7cb6ec79205769aeaff2dbb3a6c5959aecf9ecf9eeeec3370e4433a9ea62cf210f14f37a95309f0e51bf55d3d54c87fce01b871e779fe969a5a50c0edbdd4dd8b76abaaa6d79b6a7eb2c7f5c6b0ebe6f28f2d514929e69d9cac9d937b8c0dd1be0fb861feece939e6d4c5d7f477da072c8ab698dd25cd3d8b3e51097d983e3ee09f07d03f69955dd3977ce36355de7a7660f4e0e0528000e1c0560818478b67c9c1c0a508018981c60ad1fed093b13006bfd684001481b36c40a900097990311f5a6654d970dd5c66adb98a106239f61bf65cdb67ce5bccc8ccb743d4f7a9a3acf9e3beaea4a633098fa7aa92d911c34d068f8e133e5a7a64fd9be5e650d9799c6623dedbb5ca71075fd614d7387260a9a1f3436cc1cb9e9624fd75a0e59d51d9ed35c4d212afb664fbb9a3bee0e84ef19bd65c49059814c12eeeee35be665ba5d63a8460f02784180136c028480000698c10b77c7f13d4390017ccf80e33e63b2654f6b8dfdfcd0c38f1a4069f93be7d77819b35561e66aeefc03953f6a9b9e323340e50f3f63f6b46a0bd4ea6961667ba6a6cc8c0d1b5c3c5a64cea7e5af666af2eca84f3e8e1ca0b53c5be78e999a3a392f330353c38f9c9898991998afd1a6e65afa80b1f123e74d9dd6f903d4feeb7536e067d89688d9a6aa011e474ecb9aae9c979949cb21e5eada517fca960f7baedf96a6ce0395b0d759eea86ff6b42e933d73da1376be80e400953d3c3135355f6dff27f6357260667b0201629a3b39bfa3feaab62d53c8e7b039a6ab84b94ef64d53c78cdab2ad0953d96f57f5c77c9938ee6e83ef181fc4f8c43020c661866044e0ee42f886f161c3a8b8fbccf93beacf60c254760656aa9eadf9027ab1e510a0195a359d813d5fb11df6c9c79103a78702664c570953539769fa946d1a536165ca9aecf90333dbb67cb63d75fef53a877c0e911296f3a90a7b55013340af57b9aa0ff4325bf3e56a7d0e0f0bcb19f23ce9d99eacfa63ba9e3dff5372e66bb8cc1aaff2b70c51b87b0fdf32a05b8607b87b10be65f07cc65c4fd674b9805ee65aa6e56af2a4eaebd5b475b66bf9f3e57ac68298410c60037b003a0308dd7dc67ce994ece94abf064f7abe62e58ee902a20354c2725e6626261da2a63e69ecc76cb5ca4fcb567ab6ace9fab24dcd96b97ecbaab037757ee8e107cc4ec97ef92d037c0b40c9160005b60028e0ee0af02d0019f719f63475ceb5c5eac4587388da3e8e1c550de287c791a3e6bccc4c7b9a3c695abe2b2d7fe8e1c75af298ebb3b107da395b357db56da9af2fdf87255fafb207d7a93260355fafb287205c444c20e51a2bcb1588ba939e407e80f09cec020c006bfde801d6fae183488e728d91e51a2385e881f471a3eea43c7e6065cb9ab013c78710a6bbbbdc75dc1f90e3ee4026e02e81086c7b0cdd630881bb6f5b95059d5307b50a4cf00014dcfd323981133e64d8a0c8c6ddb71d3a00811e332446d0c4ddb724a2402366d539acc0dd6f0272ecd045123224a10577c72b1b7832051004351982bb7321f840d286050e317870f78d0b2c70a008182060828dbb6711e4744bf4fc00ddc2dd372c746cf420021a089285bb03d189f50061814c0408e17708eedef2ad8a80cbe8c47a644c1ed7b9ead0b0342c041ee0bea3aa6babbed87fa0f265aeaed25cbf55d31e720ff926e7906f649aacfa57eb7cb129e1c9c8f7c909be4f5bf07d1ac3f706431594c90b4799921c752a39eab4e2a8930d479d12e0a853108e3aedb0c8f8dcf70d9cf8be4116be6ff0856f1c74be71f0e21b0732f8c6818d6f1c90be71e0836f1cfc28799d4ab851428cc051420c394a88281c25440f1c2584158e12420b470931057717412f05b51d9595382a9bc05199e6a8cc0347652b1c95a1382a73e1a8ec85a3f2188ed22a8ed2037094b67194f6c151ba019cbbe8eea7175256761847bec3a082ef30b8e05b0c946f3152bec5a8e15b8c1d7c8b81c3bdb0b94002df5c50816f2eb0c037176ae09b0b56b87b28c353281c0670140e1f8ec201c451385647e1d880a37038e1ee5a86bb87a1bbe97377d14ddee29e3be87b0a20df5314e17b8a0cf89e4289ef2954e07b8a18f89ee206bea798c2f71448f03d4514df535cc1f71461f8a6e2f34dc50bbea910806f2a66f04dc58d6f2a707c531101df54f098dcfdf40d001822a68d97f4545bf36c4f22393092d47cbd0e05f89fb2056488996e38f8a6c3dd7ff87e6971f71ad63547cea7ed2bc69a4114c065fefc9c6bcbe280b1e5901cdc9d0677a7719711722780bbcfe030ee2e83ef972af60bd100dc5d002f610cee1e00771fdff74b1177a7f1f243c3dd61f0dcfd8586191a6a98a941a6650a79bd4a184b63838d1b2d73a5e35aad6cd4b45a660d3230b535a313eb694f9eb5654f1e73e5e12a77f7210582192f3ef876b982cb946bf973963e4c5307ce0ccbfe9c6dabfc819d403be7eb07569a43be8de97c8d9c1cf55d265beafc0f2ca6f3e5b7268fa9ba6aa842fc4ccecfd9aaecab7cd63c5f3f3fe5d9f6b0b13787bcd94a4fb65515f0393939cf8a21c0b356f3fcc13475fc0c4f8037cd1d20a97ab230afc3ff9c2d90d67cb1627ece16a6f52a5b4074f86fcdd7aaea781a9a375735e5396bb46c6ccdc9c9f999377b5a9ef474c55eadf47c209daf11f373b6afa6302f03f45acbd7093bd92f3f8dad326daaae3b39af12b6c65aafb255be623ce69a9aa9fa73b65fbe9e3dbf2d7bca56477db5fd1cd3dc01f22ad37327e7cd9ef6f5232427e7d79355d5f1e76cd753c8f8661bfb81a9ad57db67735ea5f9d3236735cfd74f7bbe62b037cd9d271fbbfb017caf70c1646556b52d5f2fb58503c74a8bbbdb10f26afba6ab5c797e623ce9b9c65c6ffe00b5df43f95ad59dd5fcf9d4ec19d2b6cc1f22661a73771ebe5588dc675a279b9e6b4b0448e74d9d4fcb569b96e75a0a61d3b36c53b587d7abecc125449aa34d4d217ef881b57e9437e5cdeb2c75b0acd96ac58498617fe8e1477a3e4f7ac2d475e75de6b3e7ff6af6b4664f037ec634d79d375f3ae5eb2c8594df1231d367cd974e4c75bdcabec89fc9c971ad6acb5c7f358598cfeac062694ece97a7907799690903327bda7f9d6d1afb9f12c69e4065cb3e6bf2b8623aff4fa484bdcb7499668b88d93a61650ae47aa96b9baaad18cfb993aa2d36257f2635859c3c5f7e7ab6a9c99ee590f57c33b6b6cf9eff52559d94e7641fa83d57f55c7f647a78ce9e2fdf959aac999a6cd9faf47c97296435597535877856f9e9c963ea3cfb2a61ab9afeaaee00f1332ccc6ccfc7c1061c70a8f9b4ec697fe57935fd21eacaf3ac098bb16cf966037e26a747cee7f8f4c829d918eccd15a8fd81b1665bb6ce4fcd9ef66bace5b366eb74a5e7ab435a1e3fd3c6d4965dcf1d22a6ab064f7ac2d496a9f33beaafa66b553f3d5f2655d3377b707ec6a7a5be74685c3ccab5f4f1abf963ea3cd02b553f2d5bdf9a6dc963ae3c3c258f9f615f669a963dadf7f1430f3f74d2f3cd67636dd90af1aed41442c5494f9e73ed016bfd709537444c57caa387abbc694fd89980d514d2a30136667c9f66ee0fa4f32e938d95adaff1f36afb3adc3dc6fdbae00677fc837538ce71a2c1dd1fc70f3dfc90f1f1430f3f9e273d59d66ca9ab0f771780fb7dc0ee61633fdfb231f4d972c89b3fc44cbf7c1650fb036b6548cb96bb03c01d7351e3dbf4e33ec3939e40af36355f27fb339f9e6ff2942c6bc2de1ce26471ec50000f05044136c008130d976b2d87a4435403b8cc1c0c7099e90274b8ce572924e5e1ee3dbe452280744aa5d2e732dbf684990f81377b704aa5d2d7a6a6901cee0ef31d8a512a95be19f6ec697f472d954a5f0c0d2bc3b6a929c4a471bdce980e0ddb525d32e959c268d47366866da92e1a1a1cec4fdbf6c04880ed69b5e54fa25ca8142eb366450c19a2191000000000d3140020301810094583c16098658a966c0714800a8d9a52684c1949e328c87114324612620c2144040400000664061b10002fec00b65a5403301917eaeadfd4829a7eeec230d252dc87028f465ee5e00bda802312d4722be235ca4529b3221629d4834e3ae8b0a2e3a076fca6f31b12753a3494708765c45fac90ba9d1a508ee9c676a83a50be9d9431b615aa0eacb959fc01c90beac13c0899b4593bc3c9f213dbcc22e7742492d5d3e85cf421196f2d26ffbcbc2a8eda886295ba8170c2f98d497ccc3aa009f6ae661d7e24f93571217f4687ca4df1acb7ef4b08f0bd988a14cf50da06d45658fd12c1e544df3884d3b201b0e0ebfd7e61406cb37052068869efc06c048f5c0905173e55c8268f110974d420798d87e0470ef6a063c4ba769f78802c4b65028e1d889266b3973f7bb235211a871445c803af6e00d7244d5c60608ab8710a630d904025096bfa08eb7f351b7f50e3989a61d8ae66475cfc778779b1ac83d1823aceda644392b968ef8c1cff7b1e08c884959bc866e21a57e7a3ff7e254c0db2f253c3e5290c1ed16de3a042fabcd4037e3d06831d50b2ee0681d67eb28e9f2e54511f03a9f9e4baf1c0cfe3319d2bbbc3155f79c5a6e66b7ec129054347ad6437840004578c5e63f1c849a0ba557abe953a27297248a0177210596c09834deb285742afb3c4a022b9703d6f2fbe7b0732a59405a5a2a3274ebaee4c0638b9f5698505c30810bf5820d9e81d24aee8e1e44aab66b648fe7530d03759ffd7a08db3a1f03afd45ed6c504f1acc20bcdc88a6868701116e4cd907de1f11fe082741c958d9726f6913efa91d0ca1dc6aa9d87b1aa636763e7333103b8f611f8db5c0c50ac088c5680c59d70ebbdf6e734b0824e035b1f6cfb6f18b10174e6344016b7e8f2809943bffb825f8859e7a63d6718b466617f0969ddb3c64b9ea04dc1bab27664e9b115d6c5f68f81232c18654443c95db1f360adddae09e8283e8cb97fd74acc0a3c7febadbaf24dad05b2c9c2f3ec33e9d83ac070787e88984beb3e52686a66c5562793a7a44c8e97bec5c3505fc3beb69cea0b671eda4527ff768cc5125c9adfaeaca400572978a11a801918e72ed951918b979a9adcdbc1d63002a3540434ba9f05b80bdee190553671f0109f7b719c61e3a6e680c4d6963a36139e204c5540f8281254b5e9a6d1bba4da86290346d4b213e4f3a6443f9008e21218a856611a94964b902f9537a883237fd00cc41194f059df5ad9dfea707b4ad3820e90f0c5d2ac25b77a1f100e56e28c638595c414413ce72ebf0a194ee10240626cd1aff2840871ed2bb8adfd385f36650db3c5ebbc7844c7ba888e6ea7eeab5c0cfdc41d5673425a738d8bc200733a520c1232382b7c00a12d6cc4ff462b250228a7a3418ec99ea35582ef4ec3902cea64fbce68180cbcf6bbddebd75854cacffffe8e763befd59ac23d829bde3c3378196ff69be3421f101f53ac4b4d47e942e46e585cb6ae93086a0c86974621124d51a59a3a13109fe2b9240a9bc4fb311e7d0420e41e78d05d6f401b1d00b4832e891065716f73ae1181a5c83ebc09067f6d9f818eee1265bdc5d0c10100f503940817f1865957778a1d2ffac4c2b20deb71ffd3b7d7628a4e96487070190e6605b3a3f4a24f8f80d1fe8fe392e25f3ae49485cd534360b1237c080f3cd00eec92a070dede572ed0fa0746af5267a16753b1030d47d51dabd9644a828bbd82c334a95c2a7b3f0d1632201c157c5ac379cfc41a35b1cd5588b335cb6be5fff6af5f29aa5a4146a4df21c3e5136e488a1d31c37fa2ab86b31ea07644d88dd4abda32fd3c30b93bba5c6d2b2cd3dbbba622f50296e8a54783b4e1be22d5e17911a4031aa39bd1ae2bd8ec35d789ae217cc4f237287684294df6a46837039f90dc82dc03d2b6d4892212508dff4aaaf5183392a7d4a8b0e64198fcb51eb8d93b3f6145157905542451eec9fdf89fb39f6c19c664553f23fbbd3b68c05cf0156fd23b74199af8a8f13bc86cbfbfd1868d658b165d4f70777fb5688543862cc52524ac86be5f8893d1a7a241bac281b11dff0be63308d1da21e7c8a6f882907cdd3d8df8f8bacdff75c748e5773695cd693a7b41c583d12ef4e32f2c2d6d88978ad21bcde9c4fd3b5bf617f7a9f2f3ff1f1fff9e3ed23076375b6b58ef13a892b261e79cf0e291f23d0facf45c6543e4f187cdc7b0d3c32d158f2d99dc20f6732f467a61c90ff4434e386bba7b93f4d9289ff247f14e10ffa7cdd630320f88f2708fc00d8849f84eff25e0beb1e7bbea8bdad829d3b63caf497f943abf4653883af21261a55e92610ad3d82cc3f61c4a3a1a1fd85bc753a090b1624b0853fa1bbe529a69ee3ec4e04ec235e0df0bcf8586ddfd938121b1462bdc3d7e6d1177d3f8dc8a3975aedb12eba93cd86c9ae8d3067797e5c7965fc44c27b5e1373f2710517e8bd64ac17c5a87fc26c28cd60be3cbcd96f93938e7392f71431ff3d694b460c400cc3535fef3cc9f18c62d50ff46262fe85d4f4ce1c66c154f257ee040c7028411d414ce739cd0deebb4c20675009422ffffa8ba0313003dad681baf55854487e15a2e605f83b6fb6cf254d2487fd97e8567da4055ddd981e1a5cac582f6f626ff97e934863b866658192a1f42f25f086637bc28c5ac86691644f9664191b541019985c67acd0ca0ad665bc0014800ae6c3e4c655d2e4374c88d8f08b4e9a75f4a5c5c1f555493bc5d0ed8c5ac0bfcf22b5434c437214dc7ceaf41a2570313cfe3f412116ea61d889b17aaf99ae3d3882191a0726b57cfe16889ac2d500c307455d42b2ff41f14ca9dc4d1c63a510a498ef9abb410ebcfdd0c1d6be75ae0711f829d91030bc3ec3cced8b48f3ade53089ce94bcb157b09aeaa3bc6c7402f2c3dad5b5f851541839b23b427a0280b78cd61464f12aa569edb9edd7091fb8cf94daaff8928f3903cec115a2cd972f53a44efa99283d9e1a0e0e4339e8a91e0cc4039c358c21f40e755c681f4201f0e97c0d6604d94b3274e8e05ce805e20f95c4a239024d9ec7371f46a30a5c6e81ef96ac2414c39675ae5666449c6ed7530f042096f256b01a5b612a94fe308103a5f32b07acfbf4355c29fa650ee9155c17053a6417970726e3028fd3a480530fd88e99abce4cc416bf446e865f70b8b068db4f2d9686942618c01143eb693a89981ae3076a1a4435ce21c9e286cef8b3a771caacfcfeea0f427423246d8a097fa911a3df5c660941759e6d1137adc749d8664d4d4621ceb46d6675d26ea43bb70f159663b988ca22ff20867b7568c55f4c618ea9037a5c4bb1751bf27fb7f63d826d1c6b41a50ed282ca0c3c11d8366f6ce3b6855a12385565fc7b7a2deac5114434c7a3c27191b0fe0f6348fc469af82b0638f8fbaef4d2cc264aea370bd822c1f7a56c80a6089be5d4439ed151e0bac3764d8d2375845fd3d74be0f7e66b4b100ddb4a2b0dd9df6899123f19444a11028c7d302fe03ecdc0e660470ec0d3ab5c87feccf22b3f2997bbd90a172543474bb56c4ca0d0dd5c3102bd6c76966629a0ae5d834b34df7bb49974523162adaf1539ed410c6d9552638db64c70080c9e941253231687c1b828c42c9df292d2da3abeca6fa3f94f97f94717808f020fc22ee2f44c6014b85459f89c38bd68331a32b86ef9adfcd340edc4b6c4d3261d88a5b36123b9fc4b998ac384eb27f6214abfdfbc71335540f6af6c46e74ff28afd7f0d7bf2c66df96fee1bebd0b73c06e663e20ed559ce78923b0f6c19012972cc72d4fd852e587fdae059198d1bc269eedb36334577d66d0177c02c33bd413ef9261c62ea2a33fea30b910de2b97d03467588178e057ce3b62f7948ef7fd4dfbae93b10e6099c8be32ae53efdb352246dff3a9340fd48c038e3277d6341884756a4fdbf69ff83ffe34cbf47033878de2ab95a6882c46d4e033f64969c39738c7bc6e17a9dc5948ec1b7fd05a961140d44306b5cd02779f2bf4b083da672e5d175391358b9df226b2de4bbef7a8d88d866975054a52a52ce89cc9faea2c68a5e963d4880d88ab32c5dbf03e011b1535c0e113605da9f59899bff905b3b132765974c1d42012ed39e0321da7ef31b1414751c211032030411e7f8c03bc60a6b8efd67b7f1aad477d1146fe628f8997507c19dbf3a44c204d0b0a5fa678ec25db3adaa511779fdef1eb4d4656ed8c8e012b26fe094e67af03749ac0e887e3df223c3992f37c9b0a426a5fd3a31c12a99e33abd480575da21a22acf43d0ad66b190b85099a2efc52355024d5626c7f0196d0954a48db45b660c6f6ee823b90679b828ec6647439841dabd2ab29df4d393ff66b7f5141446e996b4542b58c0794583750a96fec4fc85fbdc65d2f551165c73fde2fa16cb1861b2d75040ab74991a3bd8be8bec912e9612fcd5d6ae7667f0ef68aab31f07dae0daaf0584ff8f5cc4a8c3a74c57ee0c9513f12314ed2f6f52bf8decfa21427e17a0e9bed4476083c7029ae5011d4086035a67daac7dbc9ea245ebc954b1e33a02e3d9077033df625ef43339f52ff60bd6cdd86d9026421906523450cdd930458799113177864136f31149c2ac5267cf053aea13d3f5f8d837cb84c7c65f50c400ee6031ffb4e28d1bd66d4710742a571f6f8f4acc154244c916b325fdf5b5475a35c580a7adc95a055d9b92bf00a91d236a7994ccf44afa20b1f15b51643bcea12ef7df7176f9c92dafdeb69894d8d35d53843cd5fd34ae7684a9ee0c8623b4abbefe482640e07fda5b187a6e28ce004587a467d65d2c9b412e526e70ef8b0aade46d17a23c219bc865fd5cee9f81ab4c7e8b600753f81a4230597e4be7b5f53b2b5c21f7ccbe8d1e0a5c55e3a227263f740ae4a9539b93b34c3e4d1f5318fdbbbe369ff27df14aad0d79b7d2da347634ece7fb29a0c574033bd3412084894848303ce670af2860a353c513b2b33100d9dccaa20934f8f7d586233dab228f8809f280d4a6b2bcd257a97675c65f2d08a8e258f21c1f2b441b92b380ac75353871361492142831bfd8819c3436b3ed5812570b235f2f8c27cd29e06d7330be2d92059209e9c6c6d79140081442f005774fd9cd14f3a1c8384a616a339d3e0d41bf1600f08f7c48c646400677dc161a808a6284f6fcc86abaa944230184b8414edf4f38c6dbb1ce763eb9b555a1de3e4c63a33d6403d9c8ab84256ecebbfd727b7672583650196e6ee5208510196c56d4d5e78bb3fb0e3d39a242a572abe680e5aabc526a655ea14754e27c4d2272e1ddb250a04b3598d3779a8be2a0bdca2828e3090f1e1662b3922bdf5f4f4544a388ee3c4404772ccb6b823dba01529726015088834d4b57a603b721a6356310e40d475b61ccd24f99fc56c2ff8af5dbf0b04870637fde4221c4a906b7bc72245c0b8b142fa2987270feb64e9a898ff64d443382c54d3c6688e20ea3e5df9b157c90aab91c9daf9e79e49c88ea0be949c4212a1c77b0052132721113f52cac64d822fb6e47e0b2cd6eb5376e6ed4ed06c069b29e10555f2ef96cd8baed4cdecd461a38d351e57673a99dc028eeafeb1671bbf2112a3b5c9e50744a8842f79dccf42e67c360e4d3b8c09665a30e9610a644f27e888321560991e7857449c826285a721165e35825815f24971e3a90c8d2e4e1ebdb5e52c30df2069e6c8292414ee698245f9b50baf136a407ae615763a624bfaa3d6e78655780d0a6e92a007405cac017bfb2618e8a91a8f2ecd308ee7a8136eebbe08965d43f7ac7f0c839e1f073fe45203ec96ef836c919fa16712efe44fc778e284fa95ecc403f459ef56bcb0eb197e7387e561193d777236e83968c499ecf2831c2f2dac8cdaabd69292d71c1fa1c10580907c4a5c873741b0a30206eb5f60de41cfb8043ff940c4b109471f14a3fe5b7b9c61573b972398c15b38f3c77cb1d70dbe55e61fba6b4f5969e3ef27c9d60f4a8492caded1579a6d0535efed89832b7ba85323d66f317f6a8bc8cb7eceae02ce4990ece75b1446d3ee9e655055b5d9ab5107215d09f0b72c0d3400de24b534fb280520d93b90e15830860a5dcfed49a2cc9594e4a4953b161cfece56531ff7029b4aa33dda239ec6ecbda2b3c8e121a946b5df63d898c151f23061ac5252f3527f624bd36c2e8aab9b34d558beeb670176caac07b6a4f5c4bdb4b4519acfc1514450aad36e36d001753b2a885e104a88bdd4462a80e73fc85efce0d67ed4908742685cfcfafa20f31777d31ac57b442475cf1e2da899dfaff35495b57ea7e042f324c575bd44e29f94102ec8d1c310271a59ba0618f2c53f85ed8790152bc6435154a9f15516c0bc20657bd3e8269ea20fd5da3a4f188131d12eb3046bd823e08707e246ba27046fa590bc238193305b1e52916c8abc102c44051fa40cb830eae4f5e378ab88cc29fd637f6c4ccef3f39ec7ba8a75c61b851b70e53dcaef3bcdb974bfd62c7f4cfe54c75c0e0d5683b4c2ee30ffbff2d2dbc004832af72e1d4e5cd6981d558c3cafb7f26403bf152de7c800088107a6f7e1a7ab6c04bbb9be85a0a53982be11c893c470077a18fe8de56b4f8e0a1bbe752747e5b008c2ed81ac18285bbce5ed1890003b82659561e5f000381217ed1831d05c50c084077b4ae384a5d5c9f52b9bc9e9c8c8840877064bc33e95ba5adc6cd9ded54f8c731eed545650a5e363e07dcc3b675d413ad3a5b2fe98a45b120aa84ce57e43571249393da14af2cb2b302f597effe0a009b239b820b6d2016402537bfd95371700d25eeccb058abea3d837cd36ef31e71ee1442bc62a684e38cdc589153fdfabc9d17c5ef2762f8da3b26ef546464d2f243738e386c53547355712e098edcaaa00a649711f07fe4f3fd3a54211eb864a473fc3cbcd59a63c403f0dc2d07fc740bcd6b2f13370b086b290826a343eaad574c100f64c43a2a4bd6b712c4cd0bca5a14cde390b9775ea1e1e6e8908e8218237edccbac9a47bdc6cee0457df333ada50817efe83501f409fc17e0c0b047b63d1cae417811898f97e66237df82c2254ad61c65b422f65187b0dd2e0d7e2dbf309d3b79cf2a49be92421a94ea5b4aaced36044d3b79f12b448222276668b2b108dec4ff61b2867e7e0bf7a93868f40fdd197a10b015ed6f1005d408be0de540c44164eae3cb715b76c0b6e9c7dd7f75755ca4b0db12d288284c578b49cd01ad11a0e1dc6adeca88e6d622279e948c8124ce28c36466c7a3b91f5de11a2c5c701561b33e52dd50f85b76cb3217026b1c8afdbe3b53d272ad66cc5f36b44d35e36f288f013325644c1cabed5fb6154d34863dafcc7c676c5753f551849cafdeff183142e300258bb068a882787e4997870b1eeaefa31723033a042beef6ec49f04559743aa2789701efff090182fac65a24d86da555424b19172774b5eaaf4cbe4d94107a6fcbd38acf72e286fb9446fc66b4632bc48f263e292414f78c4a1d0f09438db56ac8dd6e1b0cb10b7b4acc8ab0e27c37fe69d9d1229a8a21a4b848f5c05d9e8109415be82a71ae7acb39f2055d332a4f4f4f7af9087db5e5be3fc4a0c6dcef98b3cad9714ffbbdde3561bb545402478de0e77c3a1e97a11457322c5e08ce55c6c9c960b87f1869e862b9cb00a4095eb06dcdcdbf66515406db1dd3c4a8abee4f7e2f68d5307d5b80fe8425896849140539504c2124165382a487a8f96eae46bf8913c809fff55a76da1f49124590573ac4a074cd67549a3a25389e07f2a935dfc9e9f859364dd4c5832d1fdb854367a56b89423b1701351f57e148e55243bb16107ad75a3586d87848af38146e166bdb4665cc260ad6d7a35558e10ac9dee612c15450a63b8c3a6b68f6008e3ae7d05a050005b54a1754d9736996fe12bbb496ebb70a209b1d0d2bf2dd56cd6cc42d75506601c1d92f1d94d7feef83d041c8584c3584d1409cc20e6fe0cb00752a07508435845c2b51f656a78eff273b42e8100c190114b08b2449a5c759189b896a858f204799890cabca542109c8284a4cd295e1f05509ee6f847d1651dc445c128f234d8069023ff5f95c76aadaa32913cc76e16f04d425459dfbb8ad89fc58bd207ce2483354d60d6002c1a7eb7db441842f2c179bc4b0ec6c40a148ce1f1666ea308f19eb9c19dea6188f44f5e0605180988b896139125b28434fdc4666a1cf3e3b120286b61635e942b980f05b5efdce3cceced0307dd37db059ee57b3aa323f83163cd250d1d93d240dba07e0930771cc75d9da559a7a1f9ff9eee1b6d5174364bd193a1e5e70161bcb938938d808adda18456fbca88c189269ec769dd1c2ada92813fb332e094d953af39b6d4f9f4799e8de1da804e1c1462b132477c4206c20d6bd1c71716fca74376525c4e1bd67e33a86b14f432f18a5f8a57ab00e5f9fe1d92394d645008ddbc98805f1c5aa22980467d93a11917f13aa1b0e7ddbf20f2830105739c6af297988d22d3d8968818727d4f22cd796b221380e2689c0c7f831e0af5cb5506e9e4fb607b1bb1ee1f22d8ba6a1d6c97b42adb87aa1d7315f46b230d94172dd5cb3f40dca3f8143eeeb9dc2687fbc5fbf4974ee69fcac54f2305a67a33e70e283f90a61927e4f1254569544c3099ec7097619192a81d18a80dab9ef1689958911f0fde957a3b373cda1565cc94aff6abc86653ff4c58d5f20d7d0ad1c91344e5aa0bee89dfb35d10ff8776065ed385c40170d14f280ef50a8dfc4d14c552469e4909aef8c0f49261c9fffe305f65884d606f746d26e69c6326ff965294a51f470d35ddb1622d304b701885e732cc4bf45e66a15198cbdd03998706401d57ad7b74c0cc54530180bfb63915d674fd2543a51d5534b2dc27e2870da83e01042074306a53343a5764a297695efae35c9f275d4072fea2f8e88b02a78f1ba08798322159450862e296122157f53f1ad10a53eeefd39900653f37cd10c40414a30d178710a18e727cde5165652a56b5f7751d72c36b2892e736aa917538b330b4938c957e1af01a208dc8dbe1a286045e5c73e114ba8fd2ad63e0f545056479cb55859d4b98d9a605876ddc42b845eb3a23a02f300bab445d290ded36de7a1893642cb16bbb3eba2eb8abc62cc3647a08005f50ef0e1e779e36d03de28aae29f0927aad58d12e4b838d3bdf9a3bec37f4c40b9c4b81893ed7e5aad92fa91cb42711afb58d4b6c9184c83f7e065fed9b5caa40a02ed11a092f265d74a4e15d873fb51f318c64c86e2b1ccf71e4893a95db03c6516aaf8b8f2f391944b0f903bb83fe4ae94d006612d71f6993e6b6d3f142c0aa5ce102455e2614144d1187a516c7c62747b5810c313b1345a4152e060750731370b53d043f986a113ec1d03c5128de5e1b0762360e2dbeaf7b8a85182f8a0760cc4abba4d156bb3c1828c1c7d65a773e00d710fd2d26f66d00dd6efee67a1243746de5084183a2b091eb12816ad9b78a38beb10500d247b51ffaaadbb13bcc8a1daee82a15d1284a5159a50f297c498ca15ad8f1c85d83999b05eeaa9c20b4fc6057099abcb9f5a8a4308ec2750bf112b0976b6b1ffd9fd3f408b72a6bd97182a98d8f8880382464a8dd930f261ce98bdf29a1c3c7ad6cbec393306a9a850f1cc070f6a84e6743b8a940d8174f56fa2e083e05e09b8a854c212473966a3f2163d463cd2a80835b0f583e863a3883229215f1b87d9b36279a4d05be1d56ee146b058c9016dd40b87dd54d7fc5b5fbda7b026a3df3efe93ed966b19fb317c6226a97d44b6eb193dd707e343ad6517cab13c657d083695bfa2613dc38bb9e0f437d8de07fb9880b9e4320df70f3abc9657a5d17fb5ff63f0a519c5152884946d971d59a917e805daf9e02c5cfc9a5f5686d6bb75baea979710be579bfc8fdf5ad7f172a192f3b8de1767f2fc6d12d03709573d4efc6d320becba8de616e9982270b8724aa2e9d6c16a782dd3b07f98359ad1ec65a845cc76e4e373e43ef38ec04c9c7e444be1bfe20a0e592e09928ff12adc8d8fcc3c7207b2b551c931e309e8c87a81d23f21cdc8f924b4e80a6c962a735c1b63b1ad20bbd20f78ce0263d4346dd9783ef3179fe677674b12fd5fd9d82b679d190805842c5b0741b1bbc6001d042c8c5544b33a6ad937ef563f6ab94dc9ff78c711bc32bc425a577a0e5cf5b329c409013c69127b76dd49d681a98fef0433833fba85119d2f6527f2ba07863c8a8a17a3d26deb9834ab4f8eb52244009c8841aa9237efeff13d6fef6869701871e9384dc3618ce9b12b5f6600c3c4114bccc0271fd048dac0f532b0bdfc1d92f1480d852f67dfc864edb525235de8b7e0a9a7b7e93e7b0ce514c6dbae9173c4c0db068f840e7781d920da20e3a4d89bb1021e019439a340f8993a3be108e0d06ff22bfa5727f7bfeed58b0e5b564ff2dae34c2f8cb286b263dba495f268a56d5a42762610a4f90a9eb82681af5ad0b524111172e29482c2744227a1b23cf31d9c9bd4a73b53c8228c3cb219a43196f72daf0cb0ac2b995a5c14389ff9e54bf65a4921d17645e0af4e365b420c2d325381a3d461797b91285ae3767ea954995e9acad208fa4c2aac35858d2a386040ff925ae41f06ff37de049b985dc418c73847294a6e2a8ea583ab027e23b3b65e522ae7150684c21e1018a10f302b9f8080206b1db003522d37dcc3e116001a642c056fb8be624f68bca82d34a26f6412efa0e803134e2b2da59463feeae5ccf21e05c9acc923ad4a8605522d0bc0ef5c87364cfd92d461fe266c052b54238813652397904597b6c4096561f81274df2d53674b2e39216b402fc9c82336d19643a9eef99d73bf836118820ef30a67f3304adcde310659796e257891b2ba6efade7004e72f9872f439276f295a559db9fe5f2808954b8e032e27666ae5ea68b2576a923c1f182a2950d238554b1187b13260ae78a1460b18925852d00c57a4d083788c39928e6404488f49461bbf4d552030c5a0ecf0e022c3cb82ba159d9319b3355e079c5346040ee81b8c4b48a9660d0f0e38e0800d1a86f99b03e63d96c2d52ce1c007171ce30807021ae864e633b82dbf4bed2be96a90653b827b07ee2a3404d5c99f3ff5af09c83bf4cb8d95204ed64a70083d030f1b7a4de579dddeed709de5de3ddbd3f9d8459e85edb1158e1a059d331ea79251f2fa2a6a5df443b2401e843c3989e7fe2c69b49e7daffeda0575639ab77a014b57dd6b622bf456e8cd7540d346e7912857bd1f3227b88f1bb240d5e3ba4ed3837ad0ca1a5cca03ba948255ab9e0409e95fe3ab31797d0330b89409fd3874727d9e4790e0e56b0474cbf0f8e790aa0e89d50d2c83aa7fdad5e04d072828cce88e9dd127c5b6a3f48a63ce231bbcc53a541d641a5521d6efe4beecd6ddc0b8d8f539e8fa130845e57a2ee82f26391c161dbe09caaac57c43fa43e88cf93491138cc25e1d1531a4492f94eb7af347d7a8675dd5dbf44a8af239f3c4e48068702b9d8bcf2cad62b06d1fb50a15f1e746655f4f6d28dd70a4b664b799a947111592fcb77195f06d20702f8a1f8ed5c5b4219ec6381b12c209eb74e2ed78c0d795ce526c2051e133d48740544386c91caab421485404b2c2a12a2ce097d6e9f10e976334e8d2c64e7ec03b4aa7012b908990db3bdc286405dca4adac7b69915e887a01c737925ade58a9e85f9059929dba9c0a8872a82c5331828c0f7eb367269412c2cff41a1a81c10764a1d3804ba22616d0863e437650712de48b62cd43ff0599711e948bf981c3a1d24cfb2832951990f069ce5fa465caaf94d0a0f299eb0e88c5d2f1c92f03af7587afdb76a9d292d568742ed92bbd225907a484e8ce661a7435f8a438c3a300fb935140174bad222ae0546b0c10c406a226c7ccb06000750168f719b63192081fc1310bdf7e939c9c581d5a0a8ea5c107d248fdaa209d04a0b08199f2190b99ae2ef06fd90aa4e45c884d7440036752ba6c02ecd02565a14ac1377ce0c4090a3fba6db74b2a55d2f94459238ce4b494ba730d15d1eac54122727e8d7794c83a2a95a60d544371cb2ac29e67df4dd1ac7daf6e4428dd2de9be13e7491706079f0ec1b2a4a2d337a68d7892ebd18965e854552802e568606b6a810353496bc1be6f3218c579ee5a6a0828f285911db99d1b3bb6364df07551a7bf258b5c5d847b3c67874e08c66e30c0488570dce1e35ea28127c610d543c4e79c88d006862154ae30419feb78f07b2aec0771e10b40ac1812899ef3cc342e646f735097d4a88978909050b46ce796b6d07aec907307409d111e441fcc4325f873bf614fe129abfec55a5e0411753232de190674ca8256c2421076218aaf21e022c8f7c80898e73ce88fd3ceb3064c7d2894d678d81606428c7ebebf1ee3f3206496ef83f0a394d6e9bbe69115c0837f88a9cfa22d5403b77570ad9fb26c957f8ab011b299a14b3f00e7d0b5f371a894a7f1f5ec2aac7fb667b0803a5ac76545d3f902e8c2a7d7baaa2fa0995e654d22f275092c5ca90a72e2b0b5f3035a7a4124d6ddc14bc9b0f1e29e83b257e31a6492c4c2b3104406cffb1a0b3d44cdda1bfcd625b5e8f9e9001dc3231391a26eb338e6306e54e186c801115ab5e6a9e9d07e7e7f2a16d60dbb50750e1c243d19bb6ef8be2e21ec0d42a4bb721e40410d16f0ab78cb8ce526debea38bce41a08d307fd25b8e7264677c62e0e90b52b5dd3ea7326c21516832bd7e073d3bb805d42802c869a9b2b120d4c6cda530ae86e69e6d8f33677aec6038e5df2b3ddeb0c797b9567151ae5c8429c9c5ca35fdc26d4541380d79c0e059511ccf19c3680fef7fd1a2fb4af74363f38444e697130b7d16d16c42c2f6c21712e63bd02602a012df21adf0588e12ee4d963547ada2786589b88e61a81ed63d92b34c67dfac043da1dc5b9260059dcff5dfb4b1c789f7bd91092e9039fad3e6cc8b7b23eb2553d9dffebeaac69576eca9a7b40d5d6fa75bcd78558d74e52b4c5c62eee937c49beaf98caeeaaf4b98ce06cda967f98c0ed067169c3b9c1299565692743b20010ef791b3755d4cbdd5fbcd57b4b219852e6d19085870024b04f27161acb299626b6d8b175a563eed839ea53911b1dcc423af03b2d84cf0c72c962278d0411400621cad1402951796262f4658fcbc91a47c550258ac93e58372eea9af4a9d529755ea0cf63836be28637511c3ae4cad6da5efed4ddc4181e93fd77cf436a528e7d0f0ce4306e733d2148b3804ad204fa901ed522cdcbd082cbdc43b9eb4ff1e8a95b3f1404f79a60ac662d4439b0c8d0578d77501a30dff46664ef2bfe67a462968030bb42b1b9c30335b098fcb351eceed47f02be9fea0ec9604572f8e0a6ae73a06c9f9c2589301bf23fcfd173809851a1f3d3c3ecef85c4708af1a427e83cf92260d23a71cbdcc2be642dc6fdb38f227e4b3b224905c10534583c0a406f37fa5b8cb887c260a1626467c8126a35f16508f011633a7227599488226e6ee1f909340f811c0222267cbf239e6260637527116fd7678bc862ef3766c681e75633f3dc6bc934a8ce99f19ca7c3d1612ffc3e82663136c28648205ed95549ae5839858aac7abd31e38a9fa84b3ccddb17eca58eb1e745c0e5277bc965855ee9859943b09d2815fe0b763240bca93407a30404f66639fc403db63c666ede842625ab186261a4df42b53a06217ece70b45def68e9dfa52d77060b9cb174d014222d950f812b1635ea4eeba7bb8644207a5dca9d62365fdb4032b4eb147e1306e9372cea024932e483a26139324177880b5f48ee25924beeda0987d704116cbf953c4300602a4ff6a02eb0663339192c408d4f5d5009d8697dbb5ec8e3e21124a26e1ba43e931577953e960bbde552819af3aba559e87b1c2129164d898d4dccd6d0fbb6ec01b90c11d1ca3c6d51f2b8d93ac7741397f708195265262876ba295a559956cfac0a7c48ad688f24c32c480df3e6710ba9812f1552a260ea37508b0f5838a23960826731c9af0b9d19674652f594d9979c3a87cddcff698305b686db5cde442d04bb924f697087b880d320d13debbd5f17576d7a57fc877b052e034bf1555eb6f3ed7d0b829236584c1a4a9d5eced8592e543a7328e6909f180faf0432b94ac3e79146dee8f9dfcf34079e02a53c61b6f847d73a035583f0b7bc37de2573a0b74762e40cadc78b0cdb62f326aa833370679c4d7ad9041b080ad9c6c6df46208c3a6f7f34b106b627106caf6ca9dbdcd944ea088804fd4e3546e1c475a8c531273802c06c3921e5794c9ca00583b37274e767418feef32ca6b0a4ee93646d09a4ac6e2f9eb21825df44f15d7f5f820ef794f04ce69e743fdde9c38a11836ea4afc6ac34098a4b4c8c57001a92b98b2196472ec485df3831d5495fe82ebff829121de5854981208b7d37e2b10a6cba03d565735b6d6909e12c40ed2238294a1c3343da90271b892b8f7005cbbff55cc335daf4609238c191d5bba69524e6fe8d557debc787375264d996eb699890cd4a851736d75eba0ce95fc459303f9b901855fa9d06277dc6f178aae1b6ed81263bb81e3694c0c49dd90927fe05ea333175a0e2a8b89ebb8caefe89a4680ae869fe2bdd0fcd6eeecf0d6413b2b31ad574217e51e91961793cf549fe1632ea0f7d0bc3a2f8a06ecb41fc498e6bb14c8a05dbbcc0c8924283c9eeb88355bb1af04c0bc9d46b8b180a03e291a8868a18873e755192a30e7dd21fa1b2f812454fd6c95df36e9fc6c6fc7d54226d7b1978c68b814f54f5c1761b4318153038d34af79e10c901e211226220dd51b564c2739730c1d6fd08a19cc95357a4927077c5972595348387b2ef283d5506066fb89f3db68909020793a5c29edbd21ed87153cbad0483dfac18f359b8a2207889c7bc7177f96aa6f7c77469ba5afcee897dcabef72e793f53ed47df54b97a8781640c9e508a88b52568518c5cc943dd1827333b0a928ed30db695eecb29670864deee775c9dde82056d91031b2799a2dc9501f9c2034c0c958f8b3c00b8f121b15cbd102e04f2dae9bad0a9f349c02f51f4034a435ec6b73a46b671e6a30b62fff6c86a98252b2c8139069470e981fffc03ac6fc12def7940b71ab8fd71370f33025dfd173ce98e1de55866f5d29ec3e61b2882f9cfbaca061d006eed37b6a5b612ca3dff6298e3752fb04ed40809393dc4df69932a6d342d8a727838ead7382c4a17b617daa8d516cb1eaf3113063503c19f11387e02de93345de950b187d0ad9f8d49af28a31ae52042a4833aa8f5ce75346e3fc379fba3cf2da0115cd27bf6ed6aee11fcaae6224dc20645d2fd64ab950cd3579d83839229fa4bf6a1ae4d9fa14f2a982a650a8a09599a8f56212f834c42c390658a500c6e719db33a98413189e217948035a0bde2bb46c42059aebbc8f347306fe2a0563206513576684d527860ac35d1508a250413d97ecfb6a804f9706fe5cbf72d73b4957d7cb41d7877e764d13afe99b3f1df2cf4c1ca3a1aa1cdb9cc27beeedd3e59966713a48eb7a2f9a69bd65038738327b03d3abf84f0c62bfa91e3e076eeac97bada562a85167a2b0819813b27dc30db03f335055fdd4ff2ae699af55af8411c68c8e2ddd3429a737f4ea2b6f5ebcb93a93a64c37dbcc44066ad4a8b9b6ba755007dbdb46d1e57cd8df0098646d624674fa9899bf30320787cb3e491c463a2a50569f9fa730ad455ba92b03b6f4d3fb8fca9394de8332f18f701d7656e5585726247484c931f6a3d1d7f3758078d7b182453e345d191c650ba3d0bc69ba32cd593679487aca164ef37f295387fe1b46123b9c297ba83fc1c79012a02b33b84866a013f762e419475746eea851fa7e26e58873d0c05b50ff97e69c77fb9bc58c9ebd5498fda62b4344c236e3a20ba13817beb2d42c3770a474194baf6fad94a35ac03c881dea04897656e6c3af0a0f4c8c6322e75abdd01a044333f25bf3ce0120f0e36d095b5d99d61aec8d7316433ed01e54f21e788aa027e76d0d0caca3bb8037ca4d3c934601313077af691e0195ddecba32f250aa798f71d39c290188f3f4e8fe8648cab2bc63d32862be7465d68442b2a0a0fd1c1cfaff1ff2328148f164ae702b3b750a6ba1f02ceea7b0312657875452d9a3c7e2e20be769be9511b2e24bd3c8dde6390b22fc8a2e7292e19202f1e7b497a35582de96dbb7329513f97f985a47039dc859d8ea50bf53948965343acbbfc101fb56d6c699f1a8e652fb8a2c7bd267b470c2f4581636f06d28bd9589aa581f88937a3c62c239d8adcca118548ed2332ec7e83139c9df22913041772486cfe581c77cbde43466cc7c2b9375219aef562687c911fd0e674d678bd8a583dc9d68cc2ebb2ea92f27db37005744bc29d78faf8bec401a3d24b28a0a499a1e2d648cc27fd649183bd681aab510b18cad0eacaceeccad811720fe340fdc883bf029dc618c108604ddca34574c0251f3a64523f4eddccabb506450e4484f7fbb153c5489c9f8cf62b55ebe438cbdffee3f6f04e7141e2bf856418607c1e0b9ca6ecf12b9ab30868e0feb78b93ebe0dd70aa5a6dd2de798f52a91d8ab045c75fc3e6b0bb0127f58bbdf0f09566603401384952735c6ab7040ac54a5c675be6141a639eb0b56915eac3823f3eb4c0855d5f91f48a80a667e3d569ede3159f90ae01b5b56b41462cdcade6657c057f12ae28fa8e86d54dc78f9158f2a3ad4ab9bc7232cb70e90d4e908262d56756fbdbdf1284d4c19c587c3c331d6919ec439118e49a6e0a5a959e81d6956ffdd01b3db921b45a91c8f66fba201c65383227ca5b818283202e5b61c36694bd64d6545ee53012c0146c57018443e6de60ec954dd7042426988c46a8e11940281add817e28faf68a0e7382218f9f23fc8ce0c407c58d49048b40881c84e38865600b11a07f3b2e8031d8468007442ecd0d38e0d25a998aa36b120df5198812a8266a73272e6960a5fc77dfd270e7cad72703dd2980421f6ae02f98508f4290d83b0fa5f5149b35476875076e3524b3a42a20145b613300b6d82b7b3afa2f604c0b2da8710f8fe68a7374ece5966687ccbb5d16712d631e956a37706cb1b1bedb360ae0f8c9932eba43ae060b46952ca6f1cc9c594f029e82afc2aaeaf2b117f7f96e687e1bf9337bd095773637b7e49b1ea3c38b4f42148104b94e87d0d138781f5b24802b607839dea01e8eef9de5a2eeaa52518fa92e29aeca87779511d385ba7c97af382ba3f1d2ea755ec06beadf0ad3de46d831e57fdd8e3e43b323e742977e8c821f97eedd6009d6f2986bd11036a326fd83efd5c513dfd6af2bca408a47678e124db60fbe648d90bf58f40c17008fc55d3bb714bda8e368c093748d55a970e9c3488be3ffcc11f980762f223ccb89126dd0299c989a8b3ef2e752fecb26d6cd508669b63f5a731b63130ee8061206fe2a05a8f1a5305e96789414d9cfbb71d5ee19895ee9d25688c413011191cc4e7fcda719411c3e01efa185e2555de97a0c23b63e08fab5e9b0759e135e2f29a2a0b6fa20c0aa5dfb61953fdc736c3b7bf92cbdfd095b0d04fc1c51f605d9e1f2f3b9c450e31d8b2edca087435abef5cdb2308c0882de0dd3fb7e0f9b8ddb523f8b93bd9c97e38173eb4e89b4d28807811642d7c30c453551597d125e20583b4aade5930e29d619b8031cda6186bda750d5d851926cda4245e9b61b3314c493bf5c4b5126fdece82bfb4a3c0910dca9ddf1490294f390d4089a85c06dcd09b780c67022c518019c4d8fbc293f43cfc53429beb78c5c380cf08234cb7c2958bf85e6b5343577ee3ddb03ebc532effaa37eef5165664b4c24d7fcde0386f480c854c4e476cd60bf30a8a112ade9d03dd71fcdff9a768ee3e53b88ecb4f34704829c70e4f1bb86a3c99cf3d96f5a157a57f0919e7589a6d7008d20573b31cbaa791b0cfe110e5414ccb6ee6b81d7d0bb09d99e18cd6c53786d33520790e85a6d7952ed0bbeeac51f4f967c1860fc0f22949d7ea87a158c4e9c6621d341a11ea00e070ad977a2bde486d6194444e520cb2b07184feb2be9c2b548bde3fb892bc3f4bc0f361a9ace3a59c4eaf5ab157e5c65b2ecd47e462947d49a651b6ef60fa928c4ec30859d15efabdd2d72a9e020891ec03d1dcba9ad0df64c17e515cce2549cf0bd34fbd7b7e12338a3c62a8ae89279042e79250ab27bd80702c73c75d1218c5f1d4b39d638c180f7b5033c8902effa2465d37c0c7e33c748096523752a6a7a1aa5f151976fc710897c7123b83ff472eb1909441cd14d0035495a754b1d1c403fadc4b5698fabbb2ef0f83c655369dec50b7476e1a841d6c967bd4d0418cd8016118491ede067403064301b740ed45b73e59e76acfd69c6084187fc789d2fbbf78b386d8f2b9ff5915df7c2f3b0350838837c2754a555caa10d6a6f64fc3186897eac659284d99c124103bcbc19e980a1d93a373f1fd4af18af664631f8893618c48ba7b9e6971ef4423b47fd78810603f383929b82805a381121f2fae4323dbc6c7e832e36a1ec02a082b7c7437832a43dcbfc2047c0592859559cc1f93746d02a7b0238371b1c2645672a1ec824f249b4226c45a27dbb89dc09fccd07ff8807a9ec6242c1d346e99ca9864ab1612a9a67a79a87a8b9cdd4cc1c652d8ff6c131518e8922b599f91b88613fa36315c7be1b2e67b9267c48bb3c95f2594e84380750528a7e428a6c6ed7ed8b8f088d5d12304538e0c77ff9543af9be24b222a6cda9869904f312e2ab48ee2c1c6115a87d1627a4916b62186098468dc23041044d0c59e970460ee7ac3d68897dec8415b39cccd08fbfa7e2aafd515bb912629bfafb4c5a037ee775705580083780e3986275b68394f5e5904b095d56c5f72182ba46d2e981d0b3848daa5d5610d6e1203c55fc82cd3448a09730f23cf47e28e6d79561b588a241f3a1a23ab6547ba1eb3587f61392f5f8f39c19c947c1899a11593320fe43d6088b8ccc4a0be6e20558e7bd6c9799324eecb24639be7c4b09896678c13f7b03ebae2a464f971c36bbe0cecba6a36ead9c71cbacdc4f8ae0be84524cb0eb50918c260425d1e3b31d93def653d9f5fe318ed1ccd3fdbc3ad4c4c513f896517a98b550cf7eb82c72dc0b556d8fc7447df835a5e55fbfbc91b906795c1ef4d0879bd2cc96352ed9a8b0b73ff60ce0666b13b7e855c22026d74d2a95c5680abb1d9ed0754d838d05544a36ca50b7a3a29d09619c16aedd26b536f0c4978bfcafc87bca6335e9e6b17a458b3ddc49829d6ac1ff36e319530a96c4b69d18b9f9bd4a1f8a3293c925bffc7d277f2d21c75c7bc17189ef35fc6c30625820951cd76b59042f70aaadc135b8ab669248c6cc864d47326f70e79603a5123276b3b7943ad46409d15674227dc673a797e6c8a2ba4c23c27d69a127699bb4caa12252cb85d10337b7a3ae1989a0b2cd41c46483485b49bab26a9b0a82840dd9bfaab47e1a14720143eb6fd1ce2249b89f8a859d60bbb95a661bc7552cbde1ac25235654f968987f3fe25b8edf5dfb57bb057676d93b8c892c7bed1ccb0c28a65f97a9f973f3f835f3daeac15666a7ee78b96ae7c70bb0e39972871025dbf1f8b22583c4686c833086c1047c1c9305da06dd48650d9a136a24384c540eb0a1572b18139c0dc2295e4b1b9011b8166fa120950842d541117998143005d21799c8b33701cf79536af1b4255a690d78a89785bc55221b4f631d3d4f0efdfdfbf5cb551e41b5ab4a455c443747d2b94d483d0df4d84f87f8b6affebd002da1ccc31e79d811790db9bdfdb0b25ac8b3b3a64424172468ed8c68ede22cdb17dbead4d65cc66846144a165d07abc063e847ccd8147f814a4046aca395cb201268ee26c9365b80c668369ee6040a5c22a2c31c51f244e57cb90e943b43affc254cb17a45664838f31f2e7c51eaa89d4cc84f9a25188414c937879d5e4e3a8d90b15ace89354d361f04afd0606e9f57956e0a6317e233f440bd737f18aa953c8e44d7ca02f686caf1f9bc74b650854a300b06e2a3d4d8204f58a3ebe941124ecd503922404bb2a8d497f626f2dab8f81cfdf30510db10394efd817594e891326fbaab0777f65bb37c2ba554002c768757b7c1d22b49b4dcbdd80fb515c3fe7d8d4c1787beb53386eafb4f3660e0f8adccbb2b326698801d104c55b22458bb87f1a80af2b82b3f6cbf6fe4192d7aeda28c61081ee8f782e8332ae17d5801b3a2759f7abba6ad61836bd55163d6f0a63350fb07bf5b8ace28ca98555f5090f92ff94b8fa69efef8b11d6692f8424f61cc1c8f646c3ae2594051006e6aa7a65b38556faf14c1c08dbbbcc14f5f79f308a376e738253d05665f9a6fd7c8655efdee6a2355a11fb734ec1870aa769399202a969d3f1046f4e4032446b68096706afc6bc76170c4518462daee531b8f818ac61926094e9e5125f5ebcfb0562e5d5222080f60bd84fc7b6927ae9bbd4bd1aace36173023ca23a53dceb8c360b19e4529cad4b9cdad69e4e6a99d2ef0f663894578bf53999a376444e94b14282681a2e89e98ff6726d0c7088b068b36b2f026a2da6881ce3096e403fc4a3bcf0d3705784dabea5f2fb9fe01c0744736d98577d5d5cd2475defeaec49a31624c08a3880994d7446be1dabd7a696476ec4892443b6e35c8c97ea2817846d2ef3531d191fe550bb849d81679d84c2b478384f3317d57472c44153c3f670dba5480640ee5ec36974241bfb9dae8e66bde11c0c083e4b069ff130a7ffb2073e9dc651228ec4c58df3fec786fa840f1740e7b9d256cc8fb599da04d348c081edaa23b19ab60964f3769e9313407aa6c8b74b1321f1b2531f5e468f0fb80a6284436850791fa3e17a0a36e1473043b1d2b31eda8f2460e89472f53f79813b5a092956380053cb65751e065e5e35b5cc6cc53c03313efe7333e0d200e0360cecd4e9a1b1dd61529c48830530c5ef44bd50d27d6ae1b80de5dfa9bb426b69cdd395db5f64862fbd251397bbb61cdea6a6845252fbaba0317b326ec2fd7a4b455fe8ce23fde6987f66541db2b71b9c705aeae69638404bce16473401c0efe3dda3c4328cfb3e66fdfc6793d932c39f4abd86189a061dba993106702350f71c278788d220b9df075ed22b44765a559b9bee87205c959a57c8cb622d749fc6db536c30b33ddf11b7480233c32d3d1fdeaae9cf5ed27a35922bab3f85d4e69cf66702fe09edaedd4d85dd1b96523574f8db2fe049685c6e0c4078bcff24d31af42a814a841e72c19d0c23f438bbda8acada219ab17b02266d90eb41f681c792b56a8a1d65831eeeeded6c16d581c23871448cb6cca0d192e43cd7c9d61ab26619f4b825c2d4c47c6cb0803cb2db9e8901a5bf2664a1fba7aed4dbaf14f891f938821eaeb84c1d023030e3315c79299bd5334647389977d33a95ced03c601d548466758a749e584f2b8666b9ac3f5a439e67767811a53a9ecb3a1d0ff5d8e5722e2f0325ed28f279196f82e1ace9575374c027ba5e2599d2338f6e0a9ff721b14ea1b26230bed0e5f4ae0b4d8a47c3cd19c35230431653b6835e8c0146cd68da1305b8b6f8226b3ebf3aa994f8df981811cee7320f8ab5a307628e91c6d189da2acc5008abd5f81bd2ad346db86f49a5ff91b5ca4ffe19880e0c770ef6a0767ba60599d87528d54acd081d3cb047343764bee8aab42fe1f583c146ada8e58b5544bdde48600fc57338e4a5c553f7e65820276ac28a17e4a1c6720d1062cd539b4417861a74d168fdde97fcf5a8ffc878bd88094d629dc7187d46c7ef761c98072ca81f1046850cd58b077ff77e3d58f1821d46418730176812fbf86c7b50e39b953b76a7126073b57dbdea364f6a40d2c6456cb52d47b5b6db263fa5f25dd935eb96cd097bd41d33a4c8d36d7d33d81db2d008d030b0678fc7a0de0d4582de23a72484fa70456e05e99880542fded72dc3ffbb5c1c0b2e4e7fe1e4e040f6e426970c41965f5bf6d79d62159822a8910b61277a05b9e58208fc1fa0ccde23341240e7219bc0b095dfa277541e49349913d920e3b5a041a94dddd845c0c213399d4e956b27aaf02d1d2c0e459c82085a3343ad9db036cbf122ab66f4978b31f94aed82be0765242e38550ac67dbe47fddb4db0f0f9d5697bef5f845a1d215f2349eeb8d1d8003b735ebb9eb6ba175c3eb31aa50dbef778e0820b0af9b25760974c432888b03a2dc9e495c6bef71eef8172716de18b4953c94695a12bef3d62f28759e54c605d4398cdbf902f1b5f39c9b7256163276274a286e44a2d52dca77f8fa0f9e5567713eb1e4f5ac6abf7c8347d94e894bc3d189a570da48607e362eb0e0263667bd417855d40d53232b9315b844d4fbf70c8dd13fbcd4610d528f350e3417056b4c2333ade241268a74695574bb8547820f2a1cf60ae24b210af0f73c7390b9851226a4b7eff84fb561d7fdb8d8e2a3b08943080da88b98e49d2dca772951952837595f2b9ac2e22252bbe2a81c6538b14bb4db893785d7c133a3917830076066a20c24bc661470b1cb382d03e3eacfc0afdf4c721411692933917e69620fbc8fa4e5cc90bc1683efcd807eac5ed13be4a4b03f6b211d6bf11436f2e283230a7a6a78c7d48ab4da77c62ece3a690d9da2bda34dd93b836d767ff04bc3f7d84795d573ec82c074ba1a5db302baecc4a085908243322971a99df9d7e800b5dcbf9eb363f4830ac673d84f383a0273e1767c50db46144ac0c81465704a31fef0e87a9acf7299686a8448cbcd09b38f7d8d2e25650ecb3432807c806aa1bbe0ce90c52ff1e2ff46eacc7549bd05df00b804cf8844df4584fdd3e28563508f45c82b5e1133ee88b4da8bc62ec65204b5f54fd860aa3c378de0590296283ba227665c2c721f6526978533ef56800515deb59f52a3da06d05908e43733c213ad028a95ea87dc7d8bd2b0cc3aef0287c4985ffc1e4382f2dce9ac2a2caa0d62326deb02bc0a05547f6f040d197797303053ce3f2c29baa7432938dcc6c953d0820c3d88893e9b475a8a69e3f19aef0e07599dc9daef9e1449877ec928ca035e7038835ec178fb8439311b40bd017ff9d95e1b3d8b490c036e4687e9d99ca9f5c03da9009b005dcaf16df129be973080a3b87db5e639e7ad2894659544049e1a17ca10a10894fdf2ecd91418317c1c071a9c4ba114192a4bb1d068b4cd745d1556a78a0751e86e5d18ad4b378ae9f35652527e9b045f3a1e45ad62163034819f748a3b84392c3af27f59afe92f30c3dbbd1e24a2cf74b050e063687a64445f04986863b919cf04944d71fb929e1cae61a2d0d5727ef4c7339957ebef6988b2a28729af0825c8e294572167fcc50f175d852599729ac5706570a9673a9b1019e6755b3185a1276e8cd48db0b41a57f61ac76458fc3a3b7f58f0d0541ad74b6ab5654c66ef9251a93a16aad775a975e50a060543832452da31a9b52519c1cd010ff57c1168803a7c41153525b89e127359dd6e4635183f5a14c15db8056990257e3f0cbca3a228c3689eb06e2754d8d9dc08cbfbece7f5e1d540469edda8053f872dac7424c660da5b8848e350169b3c5274fad563013b1e9ba9e9d079c95d28e5914d562522c0724c06cd862dffdc2a2c9a5ba2bb25273849ff89c5402ad82897e49209340cab3ff07bc2364e88b184349c240854ee4b9bf135b411b4ed142dce2554e2f7585259c889890eb91d7f2307efa6b16041896e65167528b1b321a6fb99af19fd5d82968c7ffd30f0d0a3cfd6043c4541c859d0c0cfa9ecb55e24b69b6e771e9a8e8f2afbe662fcc94a1fb641737800b3f48850295407d0b29ce66090c219a333d0f32251d4381334bb2e1900c8e538a9499d65122068276de0d622a93bf2ec8c38c3c08910e44cc58eff8e1d4e32d5f2dfbc9f997c41c2d227bf35b5888dbf88f622bc6c52c1bcdbcd7189baf3a9b4d18a3669943a03136ac0e2dda70615acd0d60a58bdd8e39b0add8ab7e4fd631568f022fb4758a3821b4cf0db0fd850402c86a28e76a773ac5a198981dab0da42822d6119a9364a6873bc1a16b959e581ce6303a6fede6ee192842786e9c3758ee6c55e29931a6dec88a6332104a1f15ecb55fc9208f2bf423fbc5e392d1db1b0de7d954046fdd80552d77663882039ba7d81b9ff6b9e4b8039676de5f6ac941755b8899e9475972945e14dc25abf20016c99deb24bf0e522d7c66e5606382254724f298295de6912351316d4e6efb64e7cac6c3bb687980d9788c0cd2608f60d53f2dbf11430771a7e8e784aa82dbb3b022c7f6e965dd40c1161422bf272ecb60fd23c707a2a63baec8b19a9e52db166976b2322c675586c5fa68a6ad8342a413c038f846a82e4e867d8aa403b742765c530719fed9b8e82bf9dfabd3b69b43864684bd2f157067ec8f0a17e618c7475584d6e5a4ba5de831b4c77801d684cf31505c2448ab5861815c1c0a70d010acb0707f95c4598212d2e1d240f59196c338882433df94d108de2f80144b92087309eb2456ba3b0b9dae5bfc08c4cb169064c6258f4827925beab179cd306563dd733aeeb5c8a5fe5da7dbb1ff000ec604901c0ed550c513c77a1c7c0c6786539703fe49041745abd6cf7000701c520353700424fe3f2fab455cae8d4520c41a8bad65bcc4c5e85effffd266e0caf6ddaa9e2fc8dbc9a65fdf3140b92233e0d67813429e23eca642a378272c9f572f811ea3a97f6a0aca917b95a57fbb0065060b829c5fb8aa1008329102c2fe7c01a5634cccbca29a5999480441bec38025011fb03c7ea7173b1c599eb6d82858087028172e8624b13a7ec9714098ed48a3c64a37a72ee80f9e24e011d66dae41b2d87ebfdc6ec1f98e7b04c3d9ce1f05c975cf4acb20677ae28487eaf949324647aefac29055ae7ec3e2105f7436983e886bb4a3cd5fb0f18c252103aa9320b73e71db8f6e963a95abf40dbbcc9f28bf8cf5febf31ad8b29a5506ee3ac2eab2d2b34c07730e5b50d6a72ec80df64f15a2bc90152073280b1b878ffb09cf0c298c15ae8ea5c5e25e5d71091924d73338e352fa111ebd512c51100c20e5146d49d868ed6e68875271e14ce16afbb50832859f63602bac7f77d8ad3a986afd082e90fca625485cdc9a89596cda8828dd2716aa72d4536b2e62ca3b37f955ce297e44783d47fd36df9d0d49a9275e1806eeca4d2bd7966196900231a07cfd7f44cae8194aa5c9ee7730fa67cfd09ca02299c9e5f7f549b8d84b9447a6d9f0945210f11c317f478c6e940c888ab49b3dfaca3a6ede12e04a4854d966de1f1e6828d656c2ba59f0fb9a6bea33ea27f9b45f559853097bd0e17b686dd6762886b34a1a3da21c743928627b02fe21de5fcfb01744bc7b5db0b593fc75c788d65b5513f32d40226643d811a38625e345ebbb4c651095b9ecc5e5079ba82eb0c4bfe41dfda72f18fcd465a87474f7564fcd475f58315540043909802e12d0713cad08bfbd8022214d58c42e59dcbcfeac4c51b18b21fe15e78ab8042a1d10365f07da448ee9b569e88a6f0c1195f5571f899da3dcd97c3baa6831eebf59e90b7a188c064c8701f54e946eca65a4583b4de9a42287d654125cc1c271986765f26b806f4538d599ad271f61c8d55e5e930a046a00c3d4e8051fe0c07a59f52ac0b8b07c6df4187d262007248f9e8bbf2e001743e1bfd0f04d744865916e4c68982916666a21fa0a360d179175fc2cc18168d57727741b81c362c09eabd9d17770555a721c9a28758a5d2f25599047d4cf159745197545ccfb8eeba418f48468b1e721f952e19aaa7b60edb7d26d7a2bb365067f9959b6e66b209bf777d86d9a2574a65069e8d6026da941f87da007af4d9dad80f0d71cfb6610882280ec325fddf689a17565ffb64d1e612c981ef441ada84622ed92aeffd021941fad4791c32e71d00d87ba64eedacf03ca669b22bcf97a971eccf310273791959f48beee13bf242da2591baf4ae81432dcf3d7b78fc2cb124888e7b8af79adbbadf289c239945ba6433d20be812e915959118ffcae1148bcb93c8b6f951a384c5a75da84ca92b1e219f9d8b4e760609919111d3c5e9d991b213192162b59bd0d5e06ac5e6f4761793bab3cca65d910288a274af13988ce6db6e9e83483aa5e5ff6bf1a6a38a6762532b111139caefb8c122dd9214dc9aa5dc2b299733f305bd1df5475ca5993df3dc302dd90d775fdf5cbba5ae16c7d1bd111443ac5b3f92f253f93a3bf37a7d3dfa5dd29912757a7d63601f5b9f751ac69de55e73dbfafbf7361e01ea37e424000ed465b461b00b019e750f978d1a642f7a367372bf5b6e484d947c9adb3255c97d97df362af93dc9f038f09baa9c941a84a42a08c6f062dcef4eb0aa6228aeceb6e9a89b57187f151132e5d049a5bc7c942afcde00c942104e550b049225c9ce819aa857e0dac18e8a88e66485b6d7ade6945c5bcecd36746691a0b769434b07ed0f591a30cbaee23beec64c84c053df386253a59c775340870020cfa0ed4a9de454d4fca22c20ccd3e96053d00f9d55d68d66839adba745f1b5c5ecdf525a24d9250176e8435f6898f2b51fcfe5ae1d32d84f090f35032583a132217ecbd2698d5d556021db09454dfa0c315b04f510da1b33b8c54a18cce187b55f8e0d6628236a7ee41255426af97d350fdf3eb772cc61eef3440e2e38467f99e102be8d9dab4c8abc4a76fe1b459ca253fc6fba0fbe112a9ded6e76ece76b56cf32b296308aeaf3cdfb01dbbcb5e0bae85c9b5c936547dcbdee1053b7ce05c6a9abd1ddbaafe3adeb5adedaa1375dfb40cae15a7396c74d712d26041adfa876795651521a7be731dc76ac432b2d1a39f92e83f010956e6997fbc75df86cadd83e9c120bdf8ee9b7f1821806d3f42d43c7ed0a706fbc3db82c6be9b28589e2983611a09badd05d12b2b4bd9013df38b9af53442fda79dd9e6d842c27029de5ef90a6f1b9fca46aa52da5ea9efa2550abdd03bddac5edb15d76dbbe1bb65393b4699ab14eeb322d34c6df8898f0cf2684dba9b658d5b0e5e0581a98a64c186d3c20c77afcf6624cb62ef68d16468f26276aa34725de1e1db017eac043446bbd0e75874771a3c181b9421dbeaa1e85c82b76a1880b6970c12e4e82a3b3fcdebdd94c5f36a880fe94676cca5cfe07fc891e708592b8a054de87396cb0b3170eb8d920995134edf915f824f3d34e7b479198730a00df1a902ddac86c87b45897aeea984c7916b7744dcb5ac3d9aece9c894607a449e09bfc042efcb8d6cbc5be1035abeacc3063c6e4adb9b86de0baf35a299c2d311044e3cf2de5a3fa715ad609765c5aa66e2433c3815b092e7ee1817be2b3f81b17c10d05b06bc6732f852569ada0532036221c49060ace802fafe22e7626c4b61e084ad92fbe997206d6a4093e15bcfaa77507c47b0ff254fbec06de051c3ce5b4c783cc2a3466b54a3c1e5fb7e687a3106d24746361043f67bf85a0929924d7c3d89dc8011c9b2293a934ab20dd34602199e35b088aca89206cce9e0d2de496f766ed76455f8e36b6c9d148402e59eb3e0aafeec2621bfaeca871ff963623d958a97c38d9b46f529ac64f08f70b3b89d11c4939151adde3f9074061541a81b90b4488dc13f9fed01b0c061a17f070404249af6b6c6628c25dcac96f618a2faae27ba127b4bed0fe71cdabe71d17c0122ae49a5f1df6700841c2f1574ffb06a2f1d11653e2e5ca5a08f43d441733b3a613cdc9ae6657038d7774702c119273c1ac7068310fdeedcd85afedd9e1b53b8793f0c875bb59e16a7d3e1c2dce0347ab99752971bf868a4300097dd7b3bcd1db9062e00206ed82ab01ba838b63e950ea80827e4a7e26bce4d082936c5f4b36396ca1c09d4c34648b1f80daf97e61c9c3160166214dbef36e277b1389e200bf8e008699d39c51166ed8c7b86095d0fa26fdb245d88db0fbdf21b8b5df7c24b01d3e963e3eef07bd7bbbef13622e46d4be33554d541f47d6645a74621f429e0c9666f76a6fc698f11e91a3c88758e0cd311e4183f733cf7da8a4d07a50853bd1e39ec1ea975d74b0867aae440b8c8dd9e8370bcf236e06780873220801f03f755afe17afd4ad009d0b7c463d38a850ec6417ec72ffdd509a49e2b92a15e8bb0cb9b8cfb959fdf11c7b54e28a8201267d4ac1582d9413a26f6aa1e18d41e77905038c5463cd61a1b0a7cb448d0b1d3f9e3ba50e8d55418b58307fb9037e7a3c4a00a3b2bbbb55215fbd8fc92cba531f001460b99c73f4903dfcb1f22e63e0fb2ee97c3af9c3423702c98c2effb7859dc03a5e3f0562aef3dfaf1ee54c83d046fd59ba5035ad6ccfc4876ea54d9485de54ed89830d84ef8e950abfdbebcdf4d87dd8d5f46111749d74101f1500c061bdd4727822f888ead9657ed9e9fb28cb7e4e467bc706634df4746006c3c1cbe031b77729d90663608092cb944b281545f63405090ac85527c5be979f6c5c768a2ed3d53910f1cdfb553bc0d723a4c9dbd52adf4aa924709cf9384067a5352b626a7a3b2f3631ee5abab5e92495f0ffc4ef8fa6afcd8d6d9ef35e4be92d792e818b9d127af88abaa1da0051bc578958c8d57d4fb51d976c2e2a4890bc58ff0ac77ae6e3b48f57346523026b5bdcf79107ac08019433e7f760f4d59783f6fedfecebb03ac92f723396d090d63b70c95524da8d7167d3490c1d6bdbbf4cc857d188cbda9a60a16e8e3db20e9b3c03023727b530f87b2ed276e7e4954711091cc2f89887ccf03a8c1aaab02fa3379eb7655e4a1a18f30e639a47874083ba568dc3bf4e08998e20bc1c1badf10a9ffe26871b460e439a064b9ddea9daebdf00f1dcc0a6f8b923f63238e1d0bd0aa69281fca36bb0b96af9472cca1630bc8a1826fe9bcd184b613ac54f4d5268eda5c098501ecb6e8673c45c2eef98214c21778f8f0805edcfb910b0c41503638599885d4abd2ef6e5656e11f936a1c2b77290d9d2033239225e000927cdf36262612577616d05a23ab1eb68819fcc8cb7601403641a0ccc3c1930835bfd7387f4e8458ec53fee846be0880cad1fab9e9ad288a1a9993a0152102e4764735f7c0fb06dddd93b2281fdb83bb2572681eb40b2145da2730e8903b2550898626ff067e3df2afe8e3a206b94c24d1d038bec1f4f594ab3cf35f3555c8111ffc18b51cc726def983db953336d4038bce11bfbc8c046faf5e6acbff9533c8ed2b4744b3e82eb2a35516c29db8a5aa6d7a6c628d05e623599f328566c30eb53c032e517f06a53558344d7013aa87c0508283058062958063cbd4600a2b07daf99ce8cd9198c012ebb6cb4edd7ad20b3afa5915e1f14f3fb48b70c016c5442879402cb1af90ba876dd3b8143fcd80500616dfdfce56d8f11d987cce1164c415f73459c6de43aec25562e533f78b2db3d12338060cf161560aa2e6ef0e62fda742c67663307ee727208115b1a82f0e1ec0dda5bb1b730c2b9cc55ffe0e1b01369bf35e6cb8dde23532a00e8e68e1dc9f332f35f7459e90281b420c93e78c2bc56198cbd8299968d5df8dc000f711650367ff00e066a6c40a5923cd3075f542625167ee560f7833f86f7684bfe37cadeab41778411c81cb269afec7dcbbe2b4066f408cb0c33c85feabb4cfae07df5b34937bbbd2b099e0d2b6fd58125315ae007423f065ee943fe0bff66b7e9a8746d2ef0d6ed9a0db63d2421c1ad29d7740ce6dfd216c6b78c6f8d0f3ebfc30dc171da425a6100cf8b083a27c5e3fadd8ca795a76137c42bf33b2e29518805a799da12fb77a0e7a6b93e8f2d90f33c64f90cb51c34ceff6bdbd1cec36cbf819e8bd6f9ffb72c58f280ed33d472d038ffaf6d8b3c0fb3fd067a2e5ae7ffdf026f410ee19371f7df80626a7c619488d0a5d5b5e7b72f3b3662d516be73b203011857366a24514ffdd35ffeb561ac7ddf1d4edba34a8aa423c88a9b55bf200ba76d8593fed1e126c41253d5bcf5a90633a31d3916157ed100fb954449cf76f7ae9ae431be60429de5b0ad5b6f357ea8e82e6a6c558619ac6360e93874b9fc73580a2496898760edef9bc1b1724f772ebe9d485cc46cf2e79abefd7c8256ff4f845c95affa65e0c29407f4fc041ec78417105510488c6a730011008048604604208009544709aef24eb4986a7de01d90c9c53d0ce5bed39a88ec3059afbb6d490a59713fb26a23937c3cde9192af7f47d5581b6d1b2d8d9b79509faf38894f9f1a5bdaf131dd3b05720f710f8f11572dc7f494c94a28e8dde9a5bdeca6356433f5c13e41476aa6ed4f6f6aece903579a9b1b14bd3aae1d359f383d99fcacb6c71c4e3d265dd9987465fb8fca733fd209d3ffa64eba325999b475968dfb8e495786cff126cda70f92f29d7c4848642594560b44c2f87e6cb422c3e979633ab2351dc7710c3b70c6f8c2bd5bc7787563f815e30d3593d7c6480c22c4e8e9ca30f208e30b779fc1d2133d63348b1346ccbdc335f4cc4161acdc3d07814187c3d2f324cf5856676044008c98a7ab6af33e69fab430f5a296cc28a94f140c9477f87338bf3081bbfbaaea1c5bf5dd7707e752bdb459932f9678b187171bf0020c2fa278c1ea5e964b7dc2387b766e2f5aba20a37be518ed656be4e9df3cbd70709ac9a42bebe28a7b47dab28b1dafa1b1270a73192ed8e0027361ddbbdaa5e5547d187ebb2f4ef7ea0a839d31587aa6e9aaead3f4e96a348dd58fcf2dced822e6dd7ed2d6903416a7d7e247bab19a4b63a4c51e5a7ca1c56b21e3dee9d7cbe6fdd23ae909f43a2dc669cea9953aaf2ecdf691eea36fbbdfc1e7388e38cd64165fb88f4d6f1644b86ba32c625928f1ab9b6441f3abd64359c0ec8b4f9c6241c7feda8e8fc5e20b772c8870d729ba22a52716d9ddbd09edd32b8670051457ecb87bf7428faecc7ad6cc38b64b332cab33abfed6d7549f96518bd3c5ca3bd356d8618506dcdd74192bb0fb2b6f8bd1bc71157b54e102992aaeb8bfd48f6d75356759c555ac80003b6410b0c36b9f56fd6dbe4c96cb576dedcaf6dd67b9e257cd8c008e0a39dc7dafd988ee88a8f0a122870a9f828c29a04c61c314221c80040700e3004408d9d6abd3ebcbdad81a2a2ba174b32bb3add7cbdab47457bb32201d282f6ba30f50c40074f82c6f6ddf5a336b03c00c50838c143690620bef5edddd77e7b5aa27edd397b521aaa1fb2c4f7496f416d7ae2cc3c86b75f7b2555f592dbd52945298ba97cecb6a7d679ac80948078a2e52b3aa7eeda24fb4efb8d3d737317d7b642594187ebd16a08c024029000aee1e851d1d796a4bd463539c28d688420acf1648074a1449fbcad46c4631e451acdca3b0dee19b03051dbf87a048a3b316df1cecd36a958fd46ae1adc79986a5e7885faf23f6c1e7383e9147f7c415ee1d4eef1350dcf513340480c3ddf5490026dc7b3e87538f487936265d59d078f7ddc1f77bf07d27f4702748e0c4179ed401e9407162a86be204ead49f3eac893c9e3c6d13719c4d9cd135c1847b879b78b9fb4e1f2d6fd4c7f77b46daa74dbce0ee8f96e96acd7cedd04dfab20cd46a19d172ca841013342c018325a658c25cc2c9122e4a7c40891d948075dd6bbf1ed547717a63f6c734bfec1fdddd6a35c1e7cecb9a99c67a693e6b5e351ef9da5f940a691afbdae9ab1f4b7d5e389fea0fc956d9999e40af1a694932b65fdfd82c87d396677a673e56fd19fea38c949e2f3b372c3d61e919d3b70745af8e12ee49c491c415ee2b2c8997a7f96559e324b1f24ecdf63342220fef764e9158c3696f22317327ed2692eed31e31424249b7efbe47dce1eebecd13ebb8cc1147d67cc44b9fe86974844c0e32e20cf7530b1931bb34f5f1fe9a3de94bc331428977bae6d52ca3b1b5f41a41cb28ad08377c6e6e5a2da321b81802698829430460007b0ce08d01e801b020c40884604208ecae6dbaf4519ba42d45caab0645af9dc116d108bd5eaf939acfd791d0eb93a67e6c0bd9eee5bdfeb4d7ead3f8afb4894f104280b001105f00d104881356f003143fbc7e00e2c3037c00c307293e8c70e5035776705bc4ce60cffde6895abdcf6b7ffd7df72ab35e4d112ca334422f1abbd58f95ea7d6d6bea4dcf57de6baebd2c17e9d3c7faa0e897a99aad2ed3ec63bb979a777979b45ed1993dbdbe392fdbea3c6b63cd7ccdb33cb73e6f0f31e8818e1e22d083eec1d5030c026081009e10801247d1ab63f58a0e599b4f73908ec5e9956267b0526884ba8daee8453a572bddbeb353551f456ff9282c3db5bd3617bf4ce6c383911d70e0821dd8d8c18b1d06b0430e3b30d101083a889124a343d601890e2de480811cc6c8814a0e2fb5396a3eb8e374359fc89eaad829f6d4c2d7da56ce8eb5b1b16915599bceb32d21233ed6a6fb54c8cc32d8476f9e6575767a15255da097ad91b7ececab28b633694f27adef4ccd36696e626dba98be311abb738c666bd4a7f953cda3fab16d5fd6a64b33aea5383669b627587aa25fa657e70627e902d91392f29de468f422dd1c9519cd41b2d333cf5e761aa51fa3a9598f79ffaba62cab6652199e94e4de25a1ba1a359f4837f6a43e65343bbcaba19d91330e4d0a9a917b5793f74afb8174c6acb61fbde9c9d3a5b97c8d94d4d5e0bc692c2e425ab2e6e1ee9dd61955f79a9e765c76af244de718cd5e5acb65d632d6993fbae28f951a69069759573ae90269fcb29b06ad303423fb0d476f6d9f5b0af733e664c76c5e9de5ec9bfcaa39d23ebd3142620acdd6a39c7f728c86e64cb65a465a0dcd8477464242443add97a44d9b6825355059a032e19db5e94a75cdfa26b95418acb4c08a15568aac0099dde1dd6be7acbeac3e6b5e5fa63988c6ee939a699f9eea2cabb3d9b5352f1ff4ee6cf4a2b1e8dd1945cf0ebf2c4eef35732e418e40fe21cf90ca9162913e494bb21cc85a209342a6652bb85c069d030d0335d1188ef070ef64393b36a73535cb5e66d353c8da587b627c6d7a6dedd28ed44cb3e30ba72b7ab75e77d487c14ea291f6e998e6568bf641a99055b3f9a43db1b636d676b57d26d9fb1ad35b8e2f6b636d8ba85b6d525a43f17d15fff5b136dd17d9bdced253ab3fcb27f496e73ed5d2ee9cea9dbe6c85a977c7da746a7ebd4eb48c12f1e9d4d7bfcaf3b2ffc2e76ae5448f9838228f8a8ebcc339b65f06032adbb1aeb3ad9d5edacbce1d038bd5fd7974abbca6dc221c8e7060e19cc109c59913a341ac8dd813b1206220ac0e5810b0ceac81c3606db7b57a6a22f755bbf55a83adf955dd3476f67f647fa757bdeb69d7d4477a5bf31abd268dbe318dd3d5b4287a5f287ac7577a1fcdd9a633cfd95916755db9df9ef449ab5f4b6f8dbcb357676bae9dce237bb77aaa79fdaaee97d5a77d3dd289de71f67ff4a2b11abde74e7feb33e9df8e8f9277dc3b3d2af30f914eb3beaffeabff66fa3964d51c4b7dcad4f721c2a799dd93728e1e6ab58c9024e59c51dff29d84defaaf87e14bb80c0c05bf94749440882e53fe7837bec8558ff8efe9f38a0cbdbc51df1a6d93d6f2b63acda7dde9a5596cd75cdbda9eb5a4acce5e76976bae699b5abaeaf4d75cb3a68f4d6fd7c96a69c6ebeb99c54f16a17219d2681349334dbffee844d326778afb2a2f89a219cd319a4c96f77dbdf15ac0cb002f275e2fef6a68f41d5bad6ca63ead96919de1f548e7be48a7faf889b5e96a7276eca742d6a6d3f8ad4d57e3d108591bfd4318e37077262e330a311a7937ee9c8946fba43e63357c7febf43cdd00c60d4e6ed8aa38a0ca4b89cb54b1545c4085092a39536630850253ae78e1df2714cde8b5a7974facdc37e7f5b13d5bd59b5e7bca46b6d35fa6776bd95aaa67999e56a74687468847df9c56abd57add598db45a9f31231adbc1d2d3ee35a759b5fa347dba9abb2fbefb65363d6946fc2fdbdae9b56f774e5fd6a64bfa5a7a813a3393f64e99edf8581c3465a5cf1c24e50ef74ed7fec8febe6799b5969d5613d9a7cdda9e1ee9445fdbda3391f2466767674c4bb9a2f64744516610a58c28434431122506ca03a08c50629ed0e127fdb35a7ada98be5bdb1abacb57cf1af5d1bb69ac8af1b59a487aded88e8f3d73f9e41769a2273b4f66649ce8e1a402324ea670f2c4090c4d74d0648c26daddd54f6942b567f2b22d7cdada1ffd3ed527e48eb579e9da33d9491ff4b2a79729847d9c9c5e2d8def13913b49a769f56963e549a3f139d6fea8d5d2b567d26a19bd6c9a678f716cf7aaf174ac4db7cb37cdb79b889af7bd9b965114a77be9da1fbd5ed3d4fec8ee2faaa9795f9c5e99117ad5c7e96bdc6a19a95955bfa7d5328ae91bcb66eab36364c7ecbeba46eb6594fe6c7663a990d1ccfdd270648c94b8bb1b59c771771a5ca6880eef64b9d43786cff25c8b8aa42842e2ee0e53d759fa36694e89ea787d5f253a8368ffd3f693b6fc99965da2138eb88c0d75b87be744cd6ad67959587aa2e82d4f57b7cbabeea4bfa93d9354b83ecee54ded99d4fec8061c6c18727fd578433d18c242664800432bdb998fed5ef390996f5c46e80df76e763f6635919dbe2ccdea8994beada1a4ecb5c621ff09ecce6484ae70f74e4825f4126446501841079009aa05a1412b00c1017401a0318c20b130a0e86ada7bbeba9fd8aea63e124ebf7bd5948f7349637f9f2acdb3365dcd239d3ab5fa6cb54a7dca5aad7c8e33fdb21a456f49635f354534422fdbf2accdb85f8fe92d5fd64c7a15bd5e8f7319dbb0f451fbd279d1ecaba6c8ce607568845ed6e6068985a17b9c4b4bfbf48b805a3f34f8f9c2ddbbabae65f9aafa385dadaefd11b9ead53e3e9176ce44aafd27b648912245baa4d37c75a6b77ab7aefd91bd287a3291f9b1b24fd91fa957f6ea1f5da0d73736f4fac666ae1b2324e53bd1e539cbfbcb34a777df9dbb2fd6eacb569de652eff4cff234cd55ef74cd3ae61369f5aaae56cb6867eb879d38a66f6c9ce9a0bdce62faf6ec9cd531e9715ae5036f562b92f29d54417df6c86a9d52012627d76ae77560f7d964333d6d1ebda5be76df21a156abd5929549b212ca6a0d555fcf0df6a961894f0e7ca8f06eaf79abd99ed0d98aed3df7694f292c3deff581f92ce9c1c351f4e674fca3bb5f36b6cfa3bbf1edf1804c0f15f812f5f89233dc3b1e9759e2c3729925323c6bf0c4bc0a157b3a6d74d5fac4e89a796270c5e11d8ade32b6cfeb72c245ba4828cf7d6579af37fd98510876ccf02a544e7b89cbecd4a0b30377d7fb947dec4c4f9c6e9f16bf9ad31ca3e955df980e0474ae70f72a544ea79d3e8e0e939c1ee45ce155a8ec2b931365e532394370e8d8e88a6b3e55334963f7a98d521c1c2370524aecf0ee5543644fd887e6f5eaba916ecca6abb91e79a1e8d579d99bae4abc5092839219af42c5eef84ca1d2a96bb679e7ac2fed5a7c633834e041c3165e850a2c3d6b7766a750e96a5eb2120a4ebfe8b5a6bfcd4c935ef56956fff3c8d030a341897b152aa798be313b85caecaadba657765eb42cba9943e6268d1bd88d8c57a1525e6b4fa734cfd6fb64de277b52affe8c938c91848b24427a2019034914776fe232484a8e4f7bca305b43c94b667566f5993e92fa3bbda9fa481966816c5743c953ebacd7ac3e2cbdb866aff965e7cedbe2fb2a4d277b5c43f59a4fa45767b6bce84cfdf3ed4a5a71c91c41c11133bc0a15fbb25cee35db2954ba4b33b3ebc88e9ee57d04484b8d2a54ecd6b9b4a729543aad57abafdd5bff6ae5d57f22d34a6a05b1f270af42e594f4f8844f3b854aa76f0cbffa5690ce2f5f7d6d6beaaf36c8b0d6f8327df54d19d695f49fb48f746356b3a074eafdeed74d42341f656552ab9566992c97a369c80744d64594cdd4487df57318d39cd284f070b72dadbefa52848aecd7ee4b045d21d397565ed326cdfb9af6d33c84096804de1a317ac6cad6b684bbc36c42c0b0c0040400ff6c118ce6d92db5da81483f33dbda8a48028923b622dcb7218870df8670df0600839b98e4f1734f2726266d7891bb63c0dd53373111999cc0a4e446e8d8356ce11f58435290c6d982d8841062f269237dad7f54c2e48376b63524cde7e7f850b12d9fcf8788daa5f9d4638f919e12dcb6707a1ee955fdd95aa47174083fcd413b67224cbb44faa23a3f5484690914d3929f2d0814d01222130f0ddcb6888488885c76c8902128b889c70b9e2e7890e009c2d51f8dd8167ed5881e4fa389e765932449e2be098067080f10b72df72d75296172fde08ab99ff84759995426b9765c9ec92583c9b5b97bcd885e6b5b27db8ae12762d2e471d6d949c2b4f345a69d118656aaa2a22e3d6f4c7d7df3cee4b5b49c1ed9aefc99b617dd2ff0ac545abff0ea4a555494c26c4764892577ba5beabb2f36734cdf9eadd5737d8c661a9905fad19d6e6919aced62339be633f67a359bbb86c6be462f8fed5e1fb8be5eb29bbebaad336a9f7c32a7b92ccf596a9e2f9f13cd2ba6dfcc6fea33bdb1f2a8bcea7ea4474fb4b4d931d88996e70c07c9357a95c6da0b645f3746485eb28f6d33dbec35db0cb33ba74939c77636e969af933c64a6a7cd1ba7abed4eb6ebb1ddeb5564bb1a4d44cfae8cc6da4e5f2058de76af33f4d6a4278ded767c5e7683ca9f15f964238dff83ca6ca4b393e6a0acbe943407e16fb9e2ee55dcb4328388e91bcb4148985848278c6564622d612931b144d60b269665b9e03ecbb626061adb32626b62b0f614836dcdb23dc56069ac6d9db4ad32c5b4b2816925470dcdf59611d3aa051f675aef35bf1e51f43c1a8fd42bcb726ca90c456fb9a14827ec48ff9bdaf770773df0b9e170c6dc37d8cb6eeaee42921e9baf86ac4c72dfb0fb56ba6f4df646babbc92570b797fb365671df6ea8724f14a73c67f98b1e6720fdcfb3bfe851f2fece4169939fad66f46af591ceb4897a1fd5d9e5cf925cea9a83a2570774130394b8890151dcc4002618b000372d20056e62808b9b1860c51288582726d0026b939e573d922d295bd5d2ea7536e69d9e234602725f82847a42abddf8a7ba4da8d79fea2e65f7d5aded9fea36a14eee9b942d0a149391323cbbc908cab5da7d48add6cc4ddde9372936289848f3c9031337d9c0384e5ea273d09664336c4bdd7dca06c5a7984e4a4c2716f71dd30c44e97961d7ea23f5ca6265faa44d57d51e31b23736e9ca7eebf5c6925c457830d508c1548385bbb7c0dd04413d1f52ab65a2e180bbbbb889460c1a2d6882c8db9e6ceb645b3454dc9d66c7448372dbca319a3dd104d96b36114981898806dcb6f68dd1ec694c6fc98de0ee3ab88988f87a591a084c323ce1aed17bde20a99171c830638a810635f4a8ccfbeef8e003a6187adcfd5abb65c01403093098a9838a69e68a8e4cf329c534f3ca4546ee4ec44d3376e7c70443198f741a31c1b0dd3bac67f7632d99563bf5f7ece23b52794104fdb2d634c40cd390284c439a988604b9d7f689dead6620d4f781b44b847d921ea757751d09b98cb6026c814619568ec84eab2f0d67d93dd56d663bcbdbee9bf49b12ae7fd7d054bdf69132e9f33807e5ecfca91a599cde568b94adaa8e6f3e985c286955fd7db2a007c7821deeb605938020746cc183143ea8707798a2d8c458344c0fc6f842ab5da94f9991529fb2243709f9421b8995bfedbeaa7d7d1f9dd923f8cdc7f6e6600cf76d681392c056f3630626210128c2264962d5b564a9a186e6288ffaec6ab4dda166b4274d23c30ef634d6c871ecb436b2d32fc2ea2df5b983c3d3e1fbb156eb35e5f5b2662e2d8eed3ecd3be755733669fbc656dafe5a1355d33aab4babafb638bd37a364b6fad2ae6a61e999774ccf6eaac9ab4ff46e7d3aa996d4e7deafcf98dd44d233569eeacb3e36fbae3c6556f6fbacf27a4dd1a7c66a4e7d6c876a9b59b6298eedac7aaa7b7f95973eb5fa43af29e6192bef5b333fb95a799de6f2b4336d5b3697b44f93d0b58a6b4748e76844d1a74da93285664f28be1fbb3619a61fe984e1d80ea37f9ad7a7092c3d67b35a0efe21d89993b3d1dd770767e720bc73500ec2699313bc5e5bd0f6e3be3171df6a70df7cdcb71ef76dc9e672df76dc371df72d6753e2bed1e0beddb86f49dc3724eedb11f7ade5beb1dcb795fb26ba6fe19672dfc0cd73df50ee9b11f7ad73df6cdcb793fb3683fb56c4dd4b5b8d6a0a228777a60e0ef285c7f41df1fd29a62023781237015962080daf71dc0f53bfa63e522ef5b9f3e62df241054c3f5ce0ee436aea497eeab375eec1c15907a3f85467b29dbbef8e9a79d4b722dbc1f77b4a2b40f7e76177e88bf0b9a3f3e8ec548dd42fd335a729ce0736c94698968334c6da87f6418fb38e93265bdf1f9c98be3dfbee22587aeef4223dfa4447ea95a9bfef93994cedd9491f845f0fe11d57fa3f1a4571f40578409a5e64f07bdde713fca80eed83ba0fb4b0f4c458fd59f781b53fda35d2be6a6a4e3434669ec1a65e569faf33fa31359b565f32fd59c61f9483d4c7aa9029b457a1d4a768e720589ad527b4fcf324e902b9fb0cb61a478bf0beb327da5fb475fed97addc14fcb38759958b830b110f149ba409decdcfa2db63b07a5d9fe2ce71d643b9c9e6e91d6d7763534cdfaf5d2eb4bbd2fab4d333fbeea9f39b67bbdd61c85076b6f6eeebe3bf6a4b65af654844476c68a661728897d35efa29fd574b0d63e7ace64b9cce9ebf57259186cde7a26bb499fee8b74eef23eb677ebbd666be64eef335d8d887e72529f473a519cd93f9322587ae2fb3b4270804b0854dcbd7b619f9fd58c6acfe4f54757bfd2fc52efa3a5d5fb61b4acb5ddb33f2a1f09252f11356ffdb16d4ffa89c5bfee33f6a485a56779ca729acb478d74a7cd9cd5a1da33c13bbaf64c72501010b0bbdf9d5520d8949653263f90c37d963671fd0009c7e71d421fe97f66d9e80740b6c5a3b5da19c9bad552f3e751ba7b2b0f157ca0870fd2f08119775f3c8efbf538e2f4f598f1aa47fc399ce54ddf079ddb7d6dd2a73e68e9410bdcb6ecbe35b53fa271162a7a80ba7306e0811b38a4a7965df5ce4410f44e5dd336b23249fd51562669f54f55bd240f46e0c1b6031cec800edb2ac7936d69f5645b277e55e78faed1cb72d1a739c848a3e80e58f66b776771df4a3980e23ee60089bb6bf4bcfbf1f86fe680c63d9b690e64dc7d073890c3dd75ed8fc6df6ab8fa476aa68da69971700511ae471ca0ae6570608403245e4367b38b83130e48d063c483068e071dce061e188f1f77c7e3cea8c6c3bacddbe29bb387bb7b09eeb801154310821e4282b057d90fa8d8000d97954957669320b1e9296b32939d17d5499ae1ec2feaf922bda233752daaad39b0f4c468eef9ed93e4224abfd4bf731fd581a5a7cea80efe3dfbb2c499c9d49ef467423ab40f9ac9d49edf79f221b55aa093cf89ac4c9295506800011a3ce1af9755df0c1a943aadd6163328c3c8ff00fb8cafe672547bb49e5dd508bfbe3f684cdf9ebbef8e917ed81d92410f9db6693e5d75c5b16ae6b12879eaf4b5bdfa3c52338da6579dfeeb1c2badbae628b6d37addd7ae38ab335ba4c8a57d8eedf48c8673c776b6017790e19eb5da193112d33796aead960c0c802003833c60d0027fd9d6cbee6b3febd0380c436030e4ae55f4967915a30b279478c116a9ceeb3c1bf47a0e0b38a045152e50c3dd053bdcc72d60c3ddd5f4b4b48c9ae509cb3f317d7b624bb2999e2c0062bf7e81ebb10226dc1d083e50b3bbb5ecdc46607011dcddae00468fb0f4548dfc6ae5f1583ed28b8f0a50709fcd5e5aedf4a8feac3cf7cb6470ea735fbd6f56cb2bb3475e4957366391d89aa42b9b316285063dbfb446ac951797729745029dfefde8631f972e88d8b83ce9606956692fcb45b6d3e4aa6d4e6d7ad51c1726ced95a96d99af8f5ea32a5051600b4e09629bc24c50e74504333eab3abfdd13884658f52132fb9c418b8fb1d302f3fb5f4e2ecee3070f717b8c0dd5b8082314ed086bb3fcee9a57d90152720223d5127689c00d5e1f846c559e0ee2b70f7120acaf06d0e19c8d4e15e4befd5f83fcd287e7d7637bde50d1c10477b5f8c736a7f7db55af8539ad063980adcdd0e1448404909e4404b70857b0a8690587cca50b0dd41020e786c9fea35a267793b22811410c948a9eaa220211f239da026358c50708046adfea975f9336d94b4938c8eca2f7f56640410378ce00d9dd5cf01df476dded63c63fac91c528c00754781377c32f50a7177d81c42d8ab2c975ff775a04df9389736325b0b1c73cca8bf4f236a2ecb78c3878843021bd026459d595b23ed56008e651b8108acbb0d6ee07e02f73ae40802ffa9ee6d95912300aed5aea6eef48dccae2c0448cc21025a56d54c764ef290fa482746f3eb93a6edd3f63e55f59ef68c95b74452bfc896e307f2704fcfa2a1abee24d7ab2bceb8b65ae5a97efab071e6c29f36e981d66a691f3c50800f94e0eefab59afa3a940d896dfe54f7e770a2639a5f70acd1e514e673d5f5c261041c31f77455b73da9e0a879ed8c16e9bc64fa443ab1fa788371e3c58fca8fe9ccae4af34090d95569366f1d7d87f43f4fda84e8ee221bd0f3f2001915e9a846e91f5da3d7eae31afea01abe4d76fa45381c6061035478ba8ebf71fa5a03b426afaee8797970fa45f81f256f139f9d836a7b26733d918efec137a7280715d1f28f3e2af34fd1de0ff43c385d33cfce414765fe79dd24f5919549234e5f0765a0c7b6b67eec25f8f83ba76e90eeb675d5ab5e608e0b74179069038e36ded85af8814c1b3fb32bdb4adb0f11e460c51150071b51d858c3bbf477d2db1ca4d5ae7c9cd33fd50d051a1618011a1148c202484611b8d7487722ee9c1cee8e83cb54c08a9ba90fc63841b4a77dd01a56dcddd7e871ebdb05ce80803b7af7593e526a6757367647e5255f2fab531edbedf25535eb2aafa40bf49af2640dedb6be3fb63bd5f699ae32592e694e9af63c391bed1ca471b00f4e0ec2bf73d0eccad275f7f8c4f4edf1a9a93b753d5aa64ddc065b4c1eae8316350aa0d50ea77f545ed2dd5b5c460d2b6af4b8c360f7b5b44f697fd91843036920c0d3e03142d1abd3e95376ead4d20b94b3d125575d9ba138cb1870c68f7b6b1c83847c8a885c4e46d7121c2221a3a2716c4581860a68b86d59239038400498d8496f73d5f546803664087a5fdb4bb4e2d8d31cc7fd1aa7991c6be57e7dc79dfe4ecff161ea8de9386132bb40ffaa518ecd192ad856fab605012ba3be287a477dc731b64f9aac8472634f48d4cc83a25707bd3aad560c3eb39356abd51ac7f4313e63e339bbe34cb75a26fa7abc69b56eca1325d7a1d90c271bb55a33565f7bd51507c955d7bb1fa6dead661ceee3acf364ed02a9ffb29b8e8fae38cbc67de280d3f3687c9d9eb2f1779ee779288fb51243550afc3c20994f149303beabbe91f23452aa3a07fdb983d1353fa165f473743e87acf2a44ddcb997fab1bd739ae29be3ce65a21ca45377e764ee1c9ae6b30951edfe1cb97338b87324775e8d4b970bdf1c1dad06e93d5b9fe8a6ab7df5fe89c9bbea95b43cfbb5c69fd2ee4c6f7d7eeda216bde96ad35b43ded4e7d575afa6ba6ed2c6b67a92b64befb5e4453bfcfb1e819d9a0c12dc39983b67ba73ef2605d060e79423efa739c89d7bbd2c17b973a33b77833b57854a1597149fa271c7b523a413e41a898488885ca3eba7c98e10d0080507a8d54aff281ba12bce40ab1bd96f1f5846b1cfa7272c75e924405643e33350b72fc648aa91a3d67726c405edf4a6a7ec544b7d622b5bd397e94bb3b907969e5bcd248eeddeaaa63136edcec9e0cec530b3831fbdfbf2b87330bce07e352e5fc55f25a50a53615c81cfec24ef594d2d3f10fbec8cea9dd1a254b8d631ce66b7d51a679ae5a9549faac120c1719a64f5a5d472521c752dcb9ce29c48e7ceeaf39ac020c00b35dc5bad71a6bf282264f282043fc9d5e78d5afd19fab1d5e7ad5d7021a4e3ceada0823baaaaae32a3280e173ae082ca1626f0a2132808d3165b8b32fcb728dd9991da4e813b416fbd125919ecb58ded3bb3288ad36ab973289ce00e835a12a2c50c435aa46841c294c5152cf6b882082b7810aabe1e9892b662072b76704f420da00a3d767ae6d9580509863ea456eb26a66f0f1298ae5df4312d6334e7725463a36c4d93ae0ce70f5ca9a0830aa3295a308506fc03d7298adc751199d11cecfa7dcb34eb609f562b8b030c790c06b8c3dd001f304019ee6e9320b1b6f57ad9adef0c095f5bbe8e1140180005299e90a249014ec0993819590945e3e097fdf691fdf6d1fb7c120519ab298a178e290a19773741b1863f6a2f8e090a22dcbdd3500475f80357284ceedec44d4fa8e19d9a55f551f469fa9ed734b3b55dcdeacf7922c83f27298ee7e48908a085bb890024b8135d3801e561b055dbd3eb1b0baa4113565014a7d427d03f8fcbcac44410eefea67de9741d918ed2474fd5a6f647a2d7a53a940d2ca341dc3920eedc0f373141858b91b2040d9c7655b0fb525a56c998be31d3126f58372da14636539f1a3a9be1bcbeb12123dd6a99a1c4e93cf21ad53cbef4999ea6cdd16aa7f729e35a1c969eea2e6ab5cac7b9fcc0f546fd213daa3f4bba32244957f6fa92371fb82249ba32f42211863b7a5b4758e15dd711d98fee1c84d4421fe9d1b1e5ee431c3182117ae81b8be91b338203ee5bcd316d73deadd7ea23bdfa2a8f4eff286f6ed3b53bf46f8eba76675a5fb42c820e5311003015216322428f6d8f217836531f20f40ad5ee90fe2839482422a5d50efb9121da70d76a978eeaef7394fd4c1b291fc934c417a621442128f03d373748d0bbd39cc3a9e6d8cdd86afda9ee71a6479896dd7df107ae4018a1e8ca938360674e6c0bdd7d77768e843e70bde888e64c8e1abda9b127adc7951c77ff9b1a1c7ba24152be939a0f5c4b2bb2d18a0cf7208013d060063288c176070c7808c21d2530f1d063da81033ec7f602771c7d02ed9cf17d22f4e2fb443ba345a7997e0e6751ea3393a93d3aae994ced71df5cb0b58005eee317d5808b00d421021ab288810b32f00509904c29c1a5071807c4981c004713368d1cb854070f1022040bce886104217e0c308489201f140830c30c9b1ca010050a1e1001183b02008191114950e0e2ee41b0c39483518d0e53521d5b0adc37146c26d84ee0bed56102136d0c5a520e348ba4373adcb711cc614212e2395b92acda2773d00f56cc83958668077b07ee8eef9f4cfbca7eed32e919dc7d77f6dd31e995493dc3dd4d6ad2885fc3ee90c98a04dc373942e01b083c859de8fd1c4ebdd75cbb3f34c8da70c7e3cacb5f642f5ef25292cd5faed8708b697bf111b6161336113698af243acb13a5165e3818989612cbb6f9095ce79c6f369468d8fce5488b8fe0b2f9b66d2d2d29ee07e7dbb6b1703ddbf6b271dbc6e29203b771db0b6702d1b6b96c2fce6d413a16cec58526c66e258e2b31b195b68d8bd978c06d3ebc652b712cbf6d3870dbc6c134e156e036cea5c46d33e0b6cd85db6cd84ed836160e868d169617113613b66ddb381657020ccb86808ddb5cb86de358c68d2bc5f8487140b61b98ad658625c9f6c271258f2586e3b69a11c24d8792f783876588f392735c6c25169a520bb7b1780b14db0a36e75c4646c637df4a1bb7d96083e18a6c1bd7c2712cdb066e4636980d08c7719c8bce4684e34adc8662e97ea40023c31604002a7005d85ab814b6d2c6b23937c4d998ade4dce9e2f6b525c1e243d8d85c891b1ccbe6b2955eb6201b8b141c07d362d9562c1bc7952c07c407cdd6b26d2fa892e7026ae3625c60b86ddbb6976d6b6d1c67021697cd07576241da5ee0d66d63b1d97cfce03698978d53c2b5c0b5c0b1c0e22cbe8db0b970dc16a424c352e252e0386e73d94ae6e66366fbd1c26d2d9b08e2b66ddbb602e7f3f2c307b79130405eb8cd860d66db58b8adb4f56c2c702c4e08f7837be15a36968ddbb8adb5b1c0fde05e4a1b4b0bcbb6891bcb46b3f9d8806cdb76646b818b6179d9604a1bb76dad6d73318123612b715b4b6963713f3616ae858d8585e34a5c696371dca60217b3f9d8604adcb66dad8d052ee685652bc194b66d13ed86421118242c33b46c2c9b8fad84c2e6c347ebc794155ad860286d1ce7c2bdfc265302ea47cfb6711bb76d9b8dbff8cca5f4b0e111c5066ea36071471c5186b480064fee0a14d0440576b8d190127811161ff8a20b871361a10602888664211bb0c0018fa19b52f283450b3ae8b942502c2c5030c2ba228821aa20c88c3824660b55b009217ced51456887e0dd2b082dd8bcbee04e7674914f165564862b4e3770e16581b8604f00805f11802afe6a69c26d0908df3ea0d5ce258898183670e5c5c78b8f920830e18b0f16168018f910f4020c8d4b0cccaa046484ad04c4652cd15882b0984a740071802b2e22702f3e4aa7202cac147025c609105c3a89e003975aa1a54969734162812b497e764c4070a598d24f8d0faebce0872271f8b0b5b44c2e28f1812ba9c06233db86dcb4cc20822b2e2e2e0c0551c2083942b02cf161882b29f8780284042024e4c053c20c46c7f4e00a92ed63c9cb0999171f2c415a8e4a4520e1034c49041716b611401f6090858f2273040193470144e07eb42831bdb04a4c7e4a193f04a0852686274606172aa5222fac1f2280c5921fc258c20419541041ca1f23dab8f26335a70022c837c2e64408cb919714421f625e582e313022b0883e4b585888e1e9c19598179f2045303d2bb878627cf40029c2482270e584d2298c71690520884bcc0fd70b3774712506a6a705f2882b2d2c322d9b8b0d2e312d475c8adce4fc587d1081e97189794921c88e8f9952908f13481022830a261481998109910c3ec4c0742f601050f4197a01527a51a1a5c512fa0052226295bcf8788929196961525a29d95a566019d26202ca074cc9c2721d410126c6041fa20f3a413f523034a599d28c4b18578a8850da6999a1a5051f33252123782c2cfc70a533b2b1982c362596161d5eb8810013c829190a88638d32c808630b237ae021491f995fbe6ea022058a932645433f35f4b456208d0c31c0604b6e5c608f1bd0000634dcc4f0820a29bc5cd1010e78d1850d2e1a5a2c9400e4874b1b6aa091802fbcd8420b2cae4040131a2246ba290e6054b4871e3b20a5dcc0061418b3c989254ef3e648cccb174d3021fa20011d607cd162852790f02306e645c80a10780095c7424135f8f0b8aa50a288210060874a026428208c1e9e3811431448287d200e1d38b94912fa787159c000d06040165110e0081daca8a28a2584826e8e1001b2058105085c1e253cac0db83b4a30e054d062c756026e04dc1c3e4400440eee031c1c9c1adc0258c8e08e4a386c339b0b302cb408099202770257c2468229002d00e04c9b4c4904ee474b0ce70306867b7969e14a1bcbb6b978901158566099c0955212574a3f2e45ecf6c2031f64bab8d2d202e4458612f850c2c22b9d00640b315c8cb852faf161428c101480b8e2234a490a4b0b3fb60b10181e98954b0ccb1114625a367005e68c2b2450f1c187c882801c0049c195963daeb40051618e2b40f60b13b8e2030511b897232d465a9e20a2841f2914e087121257461832c210161b931118144c7bfcd03203ccea0509cb082c4860b6b8c202e41971897119e30acb0f17154aa71f1ecb5602523ac5f0b4ccf012c545059718171c80900084041f28f830e1250a8b107e705181a58c1f5adeb812030e25991d6360a1d40232828ba9b4b1d8b0e89486809ce0c2bd3c7959e125a8a5041136971f2c2d25202c2c2c1ccb0b0b0c8b8f1821259697262f00186128c6f4e2f2b2b1bc94522523a50d260596157cf0e1428b18574418c307934b6905989d1f4a29f8e185d1fa1e43800109e8f8401c197863851535c1842b878624624e6f600323446446807999224528680f0fc80102179640495100250748c108e0c0000520408617463a19a258f7125ae5010ef0a84304725cc0013d08e0062a52a008052de171a185134c50238d1ec8508000781859109253174448010aacc8aeec31041ff480ca94134c308d00036e5480021078c0029650a288f186284f84827ce0f0801b1d9080143d2628011c18b8000526d0c516470801040ef0188108283001351810c495c73e2e53103c5cd0821464e00269a06106184d24f178bc81ca94273eae23ad1a5310383c9001044cd144108f6fa8c187c775a425429092bba005707840036ea48186190b00c3092582a852834f92232d31e5d500c054f23d5cd002146820036e5c200d34160086134d289144102b18ab50a1c148a747107e988c20c209843081c411509ea0b248e2885a52027cecc132044e082d41e080002346290c0e0cce8bede33c16d4d6fdb0619981c59ae00227645be14505961436144a276c26f808000000c022531a0188083241540092c20f2131261f2f302e2f9c8b4b4b0bcbe62ac4c47ca7a73a33f2389767babec0e4807501abc2044b7a591a9b9e569f35f5aa3756da0be381e5986029779b0489a54982c4c24ae60fdc778dacd275dd149f1e17155a8ebcd042c4dceaef7d6746d46d323d5348cd0fe1ef70bbefbe56ff1b36e9f17f141f8455b3a9c6de48ab9d1a2b652f33e23e7ef0a183fbafea76dfdac880114c03dfe270dfe070df3c9081cd05cef2ec8d55d5b52cc262ad58222b64a9582916c8fa581e0bc562ad562b7115ae54abd40a5c7d2b6f855ab1c495288aa1a8125322287ea227a24456b80ac5300c55612a04c32ff44254c852ad54a22a54a9542915a8fa549e0aa562a556293115a654a9540a4c7d292f854ab1c015288221a8025320087ea007a240d6b7fac42ffc545fea03bfeff33ed4c7f2569ee8859eca4b79a0f7799e87f258a8154a448528152a8502511fca43a15049a82fcb5853235b6656991273a289a1e1c1f26075b0f614738ad1c15a6badfbd601f78d03eedb063250a2b655f6bcca174a13ca92899cc1eb655b31a7d7cbb6b6f9a8b531af1abbcd47695e49922419b2692003a403ccb02722448e90706f9127e9e3569fbf02e59033ee5d47c6902c74788d4582c47a349603eefec21aeea919eeea17ee9b0a771415189fb92751b943978abb53b943ee2f9061985e3b78bd71949e6a4cdbbc55d3ebbafb2601f74d0df72d0d161eb0c060432302db19ee1b04dcb707b86f0e70dfcc70df1a408569fc197bc62cdc6d4b8f5aedc0ceb3b1499058f78d01eedb02dcb73270ca20819bcac8c34d0b60b9fb09ee478ab840c4dd596408711319a09bc8a8b9890c33dc444608dc448610dc54060c6e2a23c74d654471531957dc544604b815dce0c4bd85d314db12129ef07851dc54c5c8dd45af43d9ec9c550970124883010a0083f3624b40f73aa3a54dda2bccda59cee8131f31ddab575bbb2f8f8f98f46733992c97d7b4e83d2fd20d326c0ec40a800c7c04262957b631c408c3dd1be0eeab9ba22c11a585284468b53312054751e2dee957edcf72a96d7a8e47f76947f79f14958f349626283bccb169b181f185175d4cb1715172373d89a99d13018ca693242627a013144ebf5f2dd36ca5c91bee3e045bd5a80990bbd10eba172da7af976767b0fa655fbd76cf6c7467b5ddaf63b0b32767238c0ae1cffae4ee41b62db4f0d96a71fa7613597d03830875a221a293dbd669acad64aba59bf8083c287a67aa056c65b84c152a05922ccf63b15462884d9f199d5045860b14ff43b156a81745ef13c994025c7845a2c0675decad1ef52cd2fb52646c09703dab043199323d968a3471e8c5446f95806d8c55687a20eb96de4ab5f24c544cf4d0db755e48dbc470819e774bf3e2f023516248aa62a2a79ad199d199e9baae2b4f308c2d0cd7c75261f3417265a654abf25331d1aba9dbf3446f15246554b281e142e1145e9964b962612f14c1544cf4c219a325b2df3e5d3763b4640667c6e807a7bf935c5d87a25756d4756017db172e168b55a656aad51782ac9457829e189b172eb124c19b7ad04ba13e10c4ac98e88de3f7a1e4c59f36e9bad4a780ad0b570a34592befb2ca0bae7ea52a63a297e69550d7e9a39c635da7c5c6850b4c8121ebc190b54a5d1418825bb83e53c4d844919eb9baa6ea3d148b884d0b974a75434ffc4c5648a6ca0ba256a3873262cbc224419245aec2954af5df2ac4c24b89e1871e698a2109961e8b6581ed0a510c55aa30f52995980a57a81285f2545f1b9b15e57d8f5ca140735505eaae58a80f4bd163adcc9005b2560ed810a0f2cc2759e0836048a6c01beef4913c9437869f1b1b1565ea5b7de64abce5fd525f7e3a333aab26b6293c6f7541f27a26a812411ce20384e62792f85e958a54a5562895013c94e83dcb648558143f31250536454f65aac27fef7b92fc21a2999c199d199c99a19f54125b015421287a1f087e2b11c50257a22776322414ed5c9f892a57224b559aa9ef3f13fc596db3b02a9b69d7851a9dc94ed578c416852bf4443305822a120c9f146559355333464bba4ecda69a55d53563f43323cb2a4fd76dd1f3422f36285c980c31087ee1fd30897ad62a267ae37e9898cdd467ff92aeeb3aa3255dd7b150de01b6275ce5fd4fbca1c94a9565eac30470bda822511ff642d013c32f5fdda3f7b39ad197f244b039e1fa56e035c1540a0c57ac8fe57d132e90f5a14862952a4cadc0148b64c255a69e2453a5894bd5a7325177099778414f45967745821f0a7fea085d49d68cd1929999ec14bd70ebc1a6842b457ee127822b2ca23c932c71122e32f4be2c31aa144396893d1209d783e52ac50a591e88bd1be2235c1f688a2a507551a1e9a9bcefc6440f969e5a5dcb57470f865d33464b66f60ad483f23e8e8acd08d78a259aaa14c6efbdeac19417133ddaa7e08cd19219f4a6aa9079ff4767c6c98cce0c93199d99ae53ff48bdb2aeebba8ca26690f8798f739a5279de96c65684eb339f5495e2ea3169a658246b06abd699a019125c678c6648d53a138a4152c6bc11e1322f98ba8fba2529969f62b1d09cc995946d089779455185fa441c7a22699a5f2a1c800babc0cf14458fbc21eb86241913bdf0035731ca26842ba55ab1582bd3548162ea53956510aeef5ed515f15f14793f16a802c2f529f22b43cfc325ebbb1804bbaeeba0a8544152c671fbc1557ee187ffa5304a5485217e1f5c2b1ca6445115a6ca94ca23bd30267a798fac9ced8a2bfcde03bfc7df0af5ff2c30267a210d3db844cfbc2a16f69ec5125524e8c5440ff4c22502705d91fc5215e2cf0459f82bc198e8fdae91acbdce521f150e0f2e95697a61197a37fcd22457ac1d5c77855aa1aee99517b542ad421d5ca90bb23e72a55aadb0598a9e9883eb0bbd1244951755925785fa9c8e359757aa56a81005926678c5f0935ca992856281e4ea41f23d11d35c5f4862140bbc5e0a93a9d487e45aa93c904c81240a4485ac14ca5c5dab140b855a7d8af45020586ed7832aacfa588f52b15028d5d52e0f4485ab12b3beef922994a8ba5864f8e27ff771e98538b4e242792248a24814eb4594c8fa7ee602ef0a44a93ef18638a5ba9f5da8d4871e0b3fcb4be1154e5d98bcaf7a2f754b95e7892196b9c4142b05ae5477f591e42792a80b15a6eef7a07755f78a9775e40a51a894b822551fded0c4220e2e11b5c22bf153a93e925596a76b753f2c969e88b1f8e5978ab9bc1b7ee6c7124592f43ed02b612e0f25a650a80bb2c8f0fb48d3854b1387e4fdf0a7c41b9aefc2e2079637c49745862af3b10bf4425559aabebb52a1401297ae8b124b12c522592656852648bade136f0a85ef9b248b657ed7059ade278a21e899e2bf89225f2e32f5915e0adf37415588bdd1159a61088a3854a9c28b31eadee00a43144681ff66087a2cf2abb8bed46786ab7b1f257aa008b2a8b848942a15822b70f5a152ac6b4e71a554660a055e5064a1522bf3a5b85638557e22ea8a0fae3e5519c5c542a5cc5bfe3551aad5152f14d72a754330057e2a5cb14830b57ae2fa3e4c962b33bc2b16f92676e232cbcf53a9c495892a57268b6ce2fa5025de32f5a9af7c0f1bb9c25025a6cad4c732512b14b9128b5c2cf0de0b86aceb85ab27cd92c875458f5cdd9215e2d4ff4ab4c1455e309512cb308531a95285432e33656255f8615c8aa9144bc8854afdaa14432f753d144b04835c264a0ccd55a842852a930c512190cb2b51ffa1bebb125ff5e2a7fa71992a0fbc245e6172a5f2c49b62e24a7d793fd6ca63615498325935b854a9522582e297df0a25aa441f175691a8ef535feafb420f0c7b5cf7aa5462287aac102c4994072e71a14cd24b85a994883df05bf1b83cd5f7794fa61ea352e567ba5c26262f2bfcbed5cafb56e28eebc1fb7d89afa732491cae745cac17c1d487225524e8ad4031c7257e289a2bd344a1b017aac00fc7f5f85526a92259df6a954a914a5ca9cf14bd6f15e28b0a512b150dae3095fa4a0c5e330c3f93f4bc1b572a4491ff28d2bba2876295495c778553a82f14c55569a6421289cb4c952b930445ef9ae1a75a1d71858f123f14287e2156851e888a895efae8583ed2c8f254e3b8f282a48c3c2d1778c55224cd4f24450f1582a46966d60fcb75ffe2cbf258df555d1558feca059aa8efaa406f75c995c9c2604cf446d00b43af7c241fd175c1c7654a5ce1074594679a31d11b3f2fdc32130c43d7a7565e18962a168b0c5318e398e86d75a544e54ae1cb223f8f043d11c50a4533267aa3b84ab94211877f512b5478efab4a1c13bd952782aeef57e42a9552adc0f29ae24dc5448f965598f77d2e326592222ba5f2525f8a85f2bc98e8a95b7b2ed07c10af4ad49725eaff3f267a5b66b29aa05c62589628132441efc6440fa777ccd8fbc428465ce24591a4a9c2aa54e895e11563a217d3eb6c54b319e2cce8cc18cd18fdcc94ef847689589ea80a9232fe742e10b3cc0f55a18755f8b24430267aea8d9523eaf7a93ee9ba2d33bbeed55c3ed9ab6c44a982a48c4f6c5c2c72e5e1d57d15ab04571f68c6c4d53ac343343363f43333a6a7f8a97b06be9acb54909431c9c9557a1705aaee0d4553fc17bd98e8a99fcee052ddd223c112f440133fb82263a2a7f1bf1ef7c354de8cd1127d6750df3af3a5bae622a2ae1b6519a757edee8cd1cfcc986205491937228a8c7a55c751859a31547d4568d4bb891049410615622832a3020c2dbc90c210eb8d238d0b2fb4b0020b4284c85a5841cdfbaaf0420ae65e51f0c68f8d424e48852c98909469bb851242d56749587ddef8fdd145c911969e317d6336004400f0c160f2c618643e592ec757c7d13b0a55dfac7c2d8e30d288501b471882245d990b40bc31a3232c3d61b08ca6f0c3c6bce00344c168222fdfced905df57695a4ea5fd30222c9e2ec27da8cd1bd5fb6839eea4af7115767082093cb0bdeca6a513ea0802c80fc7000f9ec08183c88621a01f2635f8f42ce171ede8e4e028a1e1260992232dd64a0c5529d04319e96c4e3314e16a381a223ec44d4cc4dcc4041d2c44fc700ce400091ccf638a39b6237c20853b2cdd578fe8d56aa76138397c00048b1ee8c0858003411ce307e270e7c1cf8c690769e0600707327818b98ec63e5f6a157a644673380e986c90846f80019c06b80cd4600d37d5a0045d4b713e5909858b7da6a78901f47c82a238f8ad70e7dcc02f84a238eedc05b43bd746ba9aee1c1bf8ece2f7ab258e3b678147f1a7a7f97801094855c0576b845eedaa6150c0fd036b575571b43ba7461aeefecdae6a5464a46f6080fd73222b934027614480ebe20c774f7dd49d3641d19507256f0ec268eef91ccea40bb4e3ce4160ab7996d5b489ecbca8ce6723fdcfb373902b7b31bbaad1cb6ed0a3e4b9935ce8fd9d1c7454e69f1c843f6df228797310fec23f071d95771769973bf700e7ac70807f20f63953a119b53f72e71a80fa6acf8463c002aefa4cd025183d633a5c195bbd33778e0c7caa2b3ae4ce2900bd6446977c7966275a7d52f6402acfd6f77f36ce507a6346af6620ec732640fda333cd40ee9c152ef496671a2bdf08d527ec7fd07b96275e6b789dfe79a6a70ce3d4d455df578d70a8e5b87361f8919a796a395776f5ca04a7bff53f21ca652ef31377ce8b31dc65abebd51cd357273d73b9cf1c774e0c77e7c20043475642f9b4097e77ee0bce0bae0b33f541d135c89de3c29ddb82d34267e1ce6181df08bc82b3a20abb820929f8918217530a3877d7af7e8f07e58302424941514109a1885056505a2dfd8148add68754be939b6ca63e48ca77f2b29bde9c634cdfd8887d5a2df567ab96e5f4b12ca75a6b8c9e4f6e9094efe484a52b4fba9ad8a7f409bdd556ef500de79cadde19f6a9e19c7373f381483eb0c9d669d6b1a7d58a64f579eb6aad82fa6a7f940a577c7ee07a5387e732e408808820de83095ebed560b3c156824d8d4d022538a35482224af053a635bda121001768188204577cc0ec90c07de37e9012021d54d818c18c0711aca8820a2a9018c2872822082184506f4ef71388869b9ef6c86763b0e9a31665930cb1e9a32a93085048381bce66da41921e90918017aac83100133ee44e6810620a8117fe28499e29beaf8680e5431a5be34c83800c10600102266a6ceb6447f3551a235ad6abb57c27fa9ce1e8737661e989ce64e7079ad81ef001195f7213c7107e83443fce691ceea336da5f0407cbdd4d1e7880075af00344b129808820acbc8a64e2c0de12b067bff57e8b8d7e2694835ecd271f3e7cf888496f8eedf6d7b67ae2af591c9306eaa8c2a401144c19b05898deb0c23d061dee70f71955131850325ed94107379ef0bb35a731e086cf4075d76dd8e1ee9e156ea68d947b121b77b8673690b06100b7e9699370aad50e86f6694b131e522aa753929b24b626099f34dbfc9f16912ab4cdffb1d6da948a0e36099fe3c3f08f3a60c3022d0d00220992196cfae80804823584580adc61a2c0c93d547d9966f44717cd41ef17bd3a74d5bfaa4ba552a9542a552a954aa552a9542a0582200882200882dff77ddff77ddfe7799ee7799ee779a80ff5a13ed487fa501fea437da80ff5b1582c168bc562b158abd56ab55aad56ab95288aa2288aa22886611886611886a14aa552a9542a954a954aa552a9542a954a81200882200882e0f77ddff77ddff7799ee7799ee7a15028140a8542a1501e8bc562b1582c168bb55aad56abd56ab55a89a2288aa2288a6218866118866118aa542a954aa552a954a9542a954aa552a914088220088220087edff77ddff77d9fe7799e17a593a8a4d04907aa9c750c991901a8010010008311003040241a8cc62342c978cccf011400025fb870ae481a0ab4348951ca1843883106000000000444448ca60260203ab94bfd4f407c0fca48169c447a52982fda4dff1fcc7111a06e10ef197050c387851aae6243b2cb373bc012dabcdebc8f3ab45faa9cc8dd085ce888122b6bc2eb119aba92c829b0f7fe905a14fcbfa33079e82a7d897c5f6a6e266e3acf21b6084ada5f6507ec6951d7464780ac88b8bc4de4b1e3cf04100a7be06aaade4617fc93e4af246bb5543bb41177226b0ae163d6b2182ce29a36bc9144c702ae89974af2aadf5d9584b382ec703a5f95cd4502db42c6ef3a24b972fa3971bbcca7b4b5fb3c10c03a79d9b0cd29eb6024069035071b2374ad574b0f1663aec66a1c5dc2de362b94e229ab41aaa26fcd91a0b753bf42eabd4e249415b96b3a8f67ed8dd7781775c24b9dd10e4497e6fac85305901e5c336b68d1f23e509fd2bbb88802329326e5e7ee4a8f9175316584b48c6c6ca5e26888d69bb906d897af6d71df137f1e0412a360109844e2ab47a25e4ac0a910110550267ba5ba9138e0f07d97bee7734404f755e193ab5b3812257c68eb20b7b7638c3af3e54cef04029eb5cf2fbcabfd8c0343fca0487be185082141e0ceb4671d47887501dbc0fe5a0e28e04cc00f748b1a887d1d82241cc6d091e1d2124dc3b0b2f61e019c89f50a0637815ee80998400fc9e2e829bd7e0efd2f25ee7849d14fc4d4941ca06bdf44bca2a56100f32e37c05012c879ae4bcfd6b8ed1076da9ee9bd78be282f29e352c51b63bcdfe5de23cc5765e4738c560a61bb1c7201ad591fcb48b8e8c2b381a8fd5d0fb30b6a4bbd94c60cbf56cd2b518aa980c4d689e05ee9138e16406f915bbbcbdce6904251c94d08b8fb046b7fa83bfbfa784ce49d25887fbfb2edeb294ffb7acafd59cf04f03a9ccbdc49c43277c87a19670cd43040c4fcf2df6f01f5f517bc3ebd1946a0c4951a0a2492bf0fdcd8aef793f69d4870874935afbc4fb89293bb5d5b1af928b3314834ff32f8221755c54d8ed7e581c3feaa22bafbc15602542c3e79eb713945011ac9fbf8897c087637785a505989018d29e2f8cde655a6128a6c35232bfb015cc443fd7aaee8e9725660444aaf0b0ba311197911e92af73d1b43bf01ee07483e9887f422601bce8e546668dc0afd811c13ed3ecf0bd6e1ddb7a36cd5957eefc075c3f1e13256a096ef460996621ba0c1426cfd2d977bcb7c3768939ec172af33b71cee2df1dde04c7a07cb8d96b951707be7cf9d33b925ac1b4ee6b6e0dea07d3dc3c4bdb66e39995b827bcbf96e89c90d9ad53b64dcd0dcdecde78698f46e2c7722734be3de12df0d7ad2bbb1dc89cc0d877ba3f87acd26bd83e54e676e38dcdbe2bbc199f41aac5eb34cefc075a7bf5bcee40661f56c32ee05f786f6dd16935bdabac1c9f40e5c77ce778398f4ce2c7722734be7de888bdf074e3c06b63b097c6096830fe6d7871df10498ec4a6aede16873b98ad9499a0256110b8cb5064a4dd1c97cda2e13db39c6c05530c968a1f0f0f2b0d356ae5d4f6420889e7a6ce2091f2dedfbbf1bd6df3510c8386e93a3c501c9f8d07ea86d2318185216801fe9e9a6295eb53804a1b6fc812375d1dcdcc80b96492175ce985331bb3b12a4983c09f3d251749bed7b7532b0446d66ffa97c38318e0ed41a87b4ef8c5d0aa6f2378915420c6d5cc8f2bce7d001b67aed1f742f487d67d4024860bac858bd17b00862f8ae66492cc35d8899f1b7e232911a50446b023e24cd499eaefe150bc31312c682ee00353cbb2b34c021f2ef730ca3d0bc192b6745a3a28ed09e5776006a480846fd20e9c021dec845b07d5d3560bfb107230196a59c07f3bf542c9d642f22919b4c82d514f653840ec5263c0ea030ec128991255ff5b23c9c40727268d568a0d880050346d9693a48981dd31c2a96638b88f28532244bdcd5a298d5257988867df318ca8b6b50868baf71c735a5b6d5fa1d449773cd979da87500fbe6ea8ccb24f37398025b2c71b2cc2f21854a7129c61eb807ad4c068b252f959ec04b8cad47c011dd5aec73635e2eca85f923c0bda72d80e43e9a1b23a885a623ab67819ea76822cac5ea2b82bacd66d141a11e9a0ca205666fee4bcffdfa5704181f10671c6c6c44343e0dc823f0d88b66fe6488e7816f22908f71b09c8ddc20942647c13517bd319039cd03de485d7128f6f85ea097074f5b864f7fca0340559cff11fc2c75f3cf6692f7d0d0c29ec287ad217f1dafb10f76942703d476552f97e5d4dad93264763555e40db221b61bc0f3604deb5302649824eed17b53813fecda8c37a145479a9df86e5a533094371faf9ffd7fbf7a203d27b8346f55cd5f63283dcfd8ea7d907a6b008d83cc00df71374e5dbe80f2711ed09620136067cd08f6376b125e56703b1f9da43dc9c84ceaa3b5df98a90487a6c21872b3b8316d090e4dc36119790d41fee318bc87771e6fa689671c60a4802f7ec61d31a44f5b891337cf0fe8bf3fd990a137924252249905ccbe180fb89209dc13201c2b7a415cfc3aaeb18f2757f59fe269e2434e98e86b0e56364e68ec93396060180fd7c19c62e73c0c46604aa322df54140e20361567ff9d503a5896c074221b4cf87a30ba500013da340346009be98ead32776465fe56601670a388f0bf94c1ef053699c9da91380412e98724f72739e58e41c91af526cd6aaeb0b2e21eec7b850620cc0390d8b2475b992117e313d1be61f3cf34fe09b12a962f48e351caded72d5566d9d1d5dc354ca7e8da8fdc547ec0bbdcaf7e937514b0f801ce8e26fd51a913e12faf43d4dacebb466e7db42ef913d426179290f3b87a7e4e23d98e16a08f7af20b30cb9430a4fb7f5e35195808b0bda83ad5ccf535fb5e85fd73ca5f1eebceea85935db936a84bf60d199ed83f944625451bca1d67118f23508ec18eb58464ad142391b959e6f3bc1da345eb4b7588aab243e186e42417a4f1019976fcb4dccb128085f64d389bd02776e758c8ad5d3d3ebe764d8b5decff1fa5434f61472b7e56884dc03199da000f5778683d33f36ed526edead38d462a378f7b23861d8147fc9e04a275595c08d48d25a24f117d9ad0b6b2bfdec0bbcb038c4c4a59c1d295701608b581cb98581c7a9950a71dac469a73b116e5121179d664591fc9d8cbd50c2baea1cb0c18381cf3c5f92c0517617063aa7f196dd08ebc302ca8fe665049042e6841d58602e62d4edbfd707bcd9f98d0ae762d196bae4a1aa5356bdc030c10d06012d93634187f4c5260bea66a9d0ca7dbc2848e809ba8d4f0a72951e964e0a5f82bde76414264e7e62a9f9b0dbda5642592ad3b55c95b9a37efb14e17d90326985ab19741f54e64b2b7d3cb8c1e7b419c8240ad3c7d37c90d962fd9101dfcb5c11824e9c38e2ed3d935195d4c534a2122c5607553605c1b669193523ed69c233f6bfef7300d579ff0dd99f82eb6144f4472d9d9da578e781d95f32e23047c6331a78c77148bb41e522756529ebcab675ac27b4424a411f47cd07a2897bfbe1df497661e5f5b55103b76b39176596be937437da919febdaade48f17d2db950056f9be36a67ddc0cb2684ca229c7f04b0c7478f0f054d3c3f73e87bedc49569bbe2477a3843fc189b373bc072be67eaad9979cd266900886adb2d87faeba1d38db477172509593177dbe3cd3d55d8cad982145bc719413f70c54ac714fcc2e38ce324e4b606940f536832dd6cc51e077a97b57670ea4975b893b8fae2a558d5e5e6a9a0189bbd8486fdba2e9de2bc20ee5af2739da9faa7987aa735b52c205c1df21257dec5747d1f744e8958d3e50a1a81109c9d2a74231cfbea0ba023ac17270dcd1c7a1c34b203fe77d0b438c12fbdc835fc281994f911eafce501b166ee80966bd74853bbbde5deb4a426c2ec3a76bc472d84478b4b79a01ba2aed36bf948d5c6eba63a4842d39856ff5f32db35b53f9aeb46ab26ea13488e91c0c3f661517cf47e22931b279f5d97df2a6cdc279264b1615cec8ec2f2db907d46b57e721ca71569fc46006662e7ee590f4ec31e9c5dce413355fb293b19082c63276a204628ac1b1f18a009308eb5d497181697d4bfb706f89c70b72babf752a39f0298d6883cf2753f4f38ed4a0cffa468a00d61696ef23f8489d279e6adff5d306de1f176efefcb67efef5ccb6be6c97a033f19bcbaed831c902e744cb9bf6ea288bb3b7f1e1c327cbf3b42339ac6bbfdda719fa29b7c59923d77dfd60fe2ef684e739e4bc09c3a6e6c654f197c8dce3bca023e784cf49db47d3ed221d7abe332225e41759e5e1c979dcbf1e3683099d70db70228cad75a2d3ad8ceb5d8ee26f3105c7b4f888b610499150f15faed57f7406413f7a6f589c119d35ba270bf9f695073821bea416f0b34a2c654a289210b9939796f285335c8b7087b037b5c476f26357b77ff55228e40a0528748dc309f09e4b11571d7d639a2bd95899171a0d94cda101b1102bdb506b00ffc47a3e3474f9c407f157e653d9d11c6d5f2b02d014e52915f1388c90ac25c4d5afca164ffc8259c575dd0b2c1632018719f47df711ce74bf3c24d331576518e324575d4507299fe52503a598a161375a66ab396c04ab4bc00a8b91f8cbfe909fc472c17d5e300928d29a840f4543bada91bfd37895f5aadc46b8b039255a89e065cd5ba31a383fe518af638761eec912f7ab760451c957e2a0c5a77dcb28422ef4bfca67eea0448b4eeb0edf47ec88717a255aba3d314abd21fd3263b00d8da643150f29f7de0a218cf94021c9dd7ffc748159c950b96f9979bc8e48c44f1b429ad5aaad43a93c39b0e31ab7b6257b2f67176b9c58135da273700b5730b01dcf3a764fcf44c335fcb0ddbd99435239b534e7966aeb08f928c87d493821bf184c073bd675613a3ac50f9b9779b6c5dde2feff0f22af66d9fcc5f38ba36c5f5e9fb1642bcfa8a10ff7c75673dd3aabb8a50fa9fbee27826eb875f13b4eabc53c6de81e4b9505f2ef0dc8d6bfbef0abdc6faf39797c56915643eddec6b0c532386c209f0ea4730febd3c35ddd79bcfd070f3aae7eb16de587872b67a61424cafe91c05007618206decae433e94c5de322de963579493d59d06f2ecdafb8da0928e7cb20eee3861ff3fe37e80d34dcdc23bdc1180e751617f7c507d2e40cb47e564143d584e451f7dd12b8d3d09261e4f8c3f26c804cefe1647dc11b1572ce551f0a8877be3e7c73b90097d3549071b926c6e9eedd16ad8bc2f698015d6bda1caba395f662f86e767a09049f55cd48f37fbf73f7def847af6dbe19e320e1dc8e93706e741622ee830ebe82da25792f771270c427c41aef410385d7a53ff707cbe15ef2f06d06f7fb28d4033ccce9f6fc94ecfcfe6107eccc371afb3eab137ae653748fcea077201a84a5febc6e5e40b30069bc0d036780df676d64cf7debdd33f5e2143f6f6f10ff245b8e8a8bd4be9d58811d292ea391dbb6663738857c0248687c538bdf36ac9f8d4592fda8f3e0e794401b04487a8cf6dd29440be99dfb0a7941a641847d51e1bc9abc0a0107cedb25b76bdfac31802637012fe30d00650fc0ec19f0dd814bec5310493201a06f73513770c2aa3f806c6014d81672cdcc0449c21706c04b63e73e4a3c2620d2a1606c73b15c87038d7c3f007841980627338fc408876416ccd041f01cf148cb349d10300dac1f1331275781c832146a6c20d0f6730caff40b819404cc45b1f8570228a4140ff33f08da1310ed77804c00938c6401a4ec73318c61650abf9d04623590ee902ba9ca9a510dc8e6f7b489bc96c04b14db9262c6b47abbd4fcd7008582c06703354a8f9f1590dcef98478c3806220befd59619c08c42a90d6e7c0370d1ccb90fa0f03e2003ce660e9393990a9419882d76f7af02646b21f4cab01f08c89dd764406a7823212aefd28cc9b84643e704d03f039069b59101a9c5a2f29253a32b4e7c1c7696da31c73f265db802792e17c0ce3b0ac003681da49e8c34924dbcd3430d23dcfce3526af31ba051d39e2c37ffb701e62f1119f49ea307ccb31c3ee891bef96eddde0d61e96e753883ea38a05ea06ca3e1e75605abcc92baca7723bedde2c3505159ceaf57791f4b870f60f61bb6762e21b1f31be58bad6e49483bf3d33a3afad365654b31132760c2ca66d5c792410cddeed71c6c08e04923b098c80e52e43f28e9d4ee6595f230f2e9ab46e888e945b98d237f68da06c26c3ddf0fafdcbbc4f9bc5d3e47f6bc19b888e430db14e67eb2b13669723c9ba1aee71d8cd7a66e8dd4ffd68ad84e26c3d772f492ab71fc86f10bd0e55f624c856cffa5970749989344394b44a77313aaadd325e2fb4a5e5b08e20031f76108582455615ee51bcebb270918cd12a886681515a8140a52bde2ae36a44a3314a3ac859e1742d3782896247b9538fd742744ee2a4ec1a1125d15e7349239b4581561bbf5a223f89e086e24128da943f4e1cbc517ff726531bc3faeb38b6b1555b8d53df44af84230436892f069b5c1f7efbff92d5e5f42f8b7205f2942989b8cffbcabf60b7a56099c8dcf7d20f055a4b7bad816c89c933e5e7fbc34e9bac588cac829d05c19b972ae6fbc22245b2973b3c1109b8768b0be64818ad027b96a9665a4c571b51ed91f0046b8bbe58d41c07993a0e3a45dc1217c9f7414792d172abd7dc9d215dfcb6be2911d41fcc3cd57d1b4a4640334dbfb31a00a373676f9d8da4d1ce34052616280d8ef4ff9b7ed319812f698420b1109dd2c3b188261a2cd9e4614ad0747de1b02c6553408f8548f582526ccbaf8862851167bf8b673da4459cf476d72cf965d0bf83cbc4ccb367a3f32bd1272ca65156eee207442d9fd983c461e7d83bc593d2ffbf5b5d835b8107c04037785cddfc1322527f3b83e31d578cb2310be13dbdf2065100f289e3545b3143a7b9dd1716f6435a2133cc578df11f561d5db5921d6a55535f14eac71f33da85e5d04b2da33e50b9aeb46c2f00fa47c1c83a5bd9ede6476b24332ec9c1be24240df39d69b233464db28489ef8f08d125b588e2ddc17fd2ac7cc8e4ed4a5a734b6bfe205d54c8cd6c88a0d92d3b3d1d9f13096fc875360c897d77b3aa8c85ebab93609a875e9a0798e6ea0d7c3c604eb3e6f176fdd31a7d730c05ffa96741b622d9fd14f15fdffe40784d29ca6badbfd2a0b7045a9b89f01f57fc4ba8d05ece5b60f4fbe8583fcaed9ede7ac27fcb6607cee3f1d6436b62446c13de3faff43a886e10de969498f336564df5e054d022f7c04137f06efd3f2cc983583f607bcdd8fb12514aef5753fe15382eb823aae07c5f08d2e559afe31f3e7adc09d45fe57cc77140248decc2511481f8b2b51a82fcc621680fef3c8ccf2f2b1fbf30abeca394fe2cd54e7f0c8f97405e3bf2adb21f6f14bae9135b1c4f3c13155711f9f27c9cce8c826f6709e6960ed48f47ecbc079f151a86d3b0d05f41769e6a66e7e6637fe6228161b99bc88f7a8d5810c5477f283af2b16c4ea57f7947b8eeb989e41070330f191ba70e49058347b7386bad641d2e87e7e7b9234a93d928c3d36dba42c134093031ac3385e702d3794049a66fb104bf95a95d12aeec302e082aaecf63ccdde0b06815a2dc5f9d6691b6476cc608a5bee82f4ac3e0787d30d092f276c2b64df5ea1caff62557e5b15fa15a2a21c050b16dab375e8df0206a585ef49b5de1fe46ecad9465f3f8fead285f3abc0634a2f8d4a8db7faa0cca1bf09120cbeb3fd7a25032389fcf2655bb9bd4fab06380a9e78e8d23e08ccea4315ebe5267617d17f512bce40f4fffb7a775cd772fe7e4a7a9f97718a192576e586ca2d0d0060f6ba736da78a6c4fbf8e2541da7dc76382013a7d043720eb4d96d6edcbb5c4b9ef9111804235fa2392dcfbc2d622f6c2cbde9481b051d4a9b0eee93b92a04a555c75dc61e97485fbe1a3e8859b0227034d738f62bf07682a8ec646dc7d4c14a32a247075a83f0563e082480fa9fd0debbb75f9c02eea242a367ffcf037c1f5ce2bcfbb56c06ee08f4211c879b63e4c49f5fcbd472dd1d03124b7b9c2c73626a924437df71d798522e5fe8cf51e901429a8513d021b44d2ccc369cf237f27f77658a0c425a3d35ea7d153ae6052b734d15da25b0aa17439610ed563642531059958496a89eb9ba93f24513ecab4ffdbdd29ffa8f695a4352a6df5c9f38d890b6b1f05cf17ec010cb589f085a753788a80648f9dec9827cf18b1e907e2fda9b97d63c770891b5cc57c446957e6d51c92f839f5a76813a2f216b6aa243700a3f436ccaa074b8e1db4352bb209d3d3518a6e1090836020d20b101eace907c94010cd15789957f48944f3255520b052fd3fcf43a5757814bc9a375666cefbc7ef0d8ba5d8da65e097da57ef9c4fc04036dfde459f710e5cb2d1710f0923ef1df156e159202e1d593ab9715e464e6b9e3af341edf7aaffaae8cc29ab03da27d53696645f9dc00f8d91e8d81d00621b345c3b3aab0cab226ab1ae6a104c337bdffa3757f070c91551b9963af39ef8d56b6b148ee52be826fc04127aaba46346ad5a61ea6d047f69dd531e224e5a5968a0564db8dad532a67479a370970a6b23083ee5517d0bbec042a47bb09089a57a3d09fb38950ec06415ebefc2fead7212f7f4ab0626075168583dad3a051793c450e358706e53fcf40e83a84e7dc8c867ea302c7d343fccbec8754add3307821c2ced71133db6d7fcb8eae400b7d9ed00d888200ab43959e76e09915a3da083598639aa758f336b3e08e0c44866b3204bf507a860e7470088c7d2486347d2a3365a8f961e808a3adb90cf0a27e70554d8244574805cf3d0d01f4e210e1d8bcc6ad2733c9e63f49112e53502bccc7f802ee7991c7713b3758f13537130bde8b64410deaef95111c941e3f0851bfc2aa4120a0e9f40782357aa96d85a2dee46c1ddffdabe633e0ed410175d38cb856d2fad2cc10229cf366657497da38503df0c76d581b3fb45ab40033f5052c6a087edbb58259dabb03e05e6227937a3335ba31686c250bdbbc07e1f4b13cc279b2e0dbba526a0b7a4db40e5bc242a1788fd9291f4d6d6c1d1cbc77e0c212317594691fc45859604016c17d3774a6757b3df28bfff2b38c5ea08f704603d0739fb14d76ee31ff54178fcf9ec5fa705a80c2fc06efa0beca6cffcfa507a677f78d4258b160f92e1ba320784d87c76cc920ada7e9b48063c1e1b56f1a1e541fc6e17cc7eaaa971e8d8a246678117b84c8a9328e375d2c75d16b9c10fd75a7a0f724d3dff032a2007aa68824f13bd18534ba1d61eb5bc017299c915028255f53c3e60cb807fee74e96081b69e84905545ac569f35b6047e3309dd766314f4c08f6d90612e2791cdf0379be364400033199151499b94b28d03a92ee6ecf6544673e93e39dfb4314b38a4da42272b9985fa1afb48fd33a3f3f958855f1e30c86da16797ef1249c3c5c5c33fb335571345746432f145474bb2b4962de16c1f7600415b9b9d12fca0871a887311f86f7517806953d88afd40398a4ed7e39b2434cca035cf4f7d4e80c2b8ad6a720907036a76de573306951e8cf0433e16242cd50fc0a81ff5ea0fb24fc1c82e70a0698aa6f8eed99d70d319f37eb7e6a6d9ad39360c05ae61cc526310fcb6d4e9c4c2052e3c690200fbce4ddd391cd58e07c4a86b626e519c5dfc1ebd80bde086d1d98678d16e2343de9fe443789ab17e451221a459cd112ce189706b333d5a60cc093cf01c632ea62418202c952ea2cfba07f2e2148b6a48bacecfee75f8bf9f719f5cabb5aa8b4958386f47d313005a488080e16a9fa6d3e4ba13e6b10327e9c89588220266f05adc7e6d9b62883adf1a7c682795ce74c2300096a64b2d79f7f2d46784aadc55378c5586a09585f233a88e52795e1379dae71adb88d1cb9beb0d46d3dd4f3d13c2bc3c04a9e0a1bda4b709c6c4e9ddba4f4badbc404239c3c989650ca471f36c9cda0e873d41786ac4d235db17e672c0da7e6862cec4e1243cbc156a84f9a9ce5244a13adf7cbb1db647cf0b81ce708a8736e3303ffb042dfaff5a54f50ebb56e28d977300aecb3a459e976309f691d6dc45f9bf6b2ea715b9ddae44287f40b419aa4cf098f274781b3dd6708f3b8584e722eaea4a075fc3e7c48c2445e67a0c7a43ec203bfe0676ffe8af0130f45d9cc09281ebcc9355e8be1d8335ef8f8b062d293cf01ddd73b600a8b04ec83a120f87225c3d1bc1cc5069f76c9d666f8e3a55e5cfac309fc183586be61a40ef0a8f46aeda7dd798e31de7f8f78558111e414f27e687f3b20615c3d074588be0a432ab8dd14565fb61fa7f962827e6131141f7a8999b56dfdc51bc2063c2ca55bb5b873637d3b1b16892af2404b46bb56790f2464ab2a2e64c842068da4dd87db55ab5d23785b3bff938b29fd1e03e93e505764eaed2effe3d0bc9cfc604eba23a39f7566ae57a355fb6812abf435bd6db033d89a0426addbd18d71284c6cc672c714e6ddec3adee09c7a1facf8e6022f75537115be196782961f6511edf2ab19d942649633adca709c5c886367c9e9fc14412bf9bfc687600e12b28bf930f03f268e2e9f4428e7a780d9dc80cdf5c230751b157614b553d5dfe909fcb99f4a96978ff1f93ccca60c8fd1f522e0f983375fbbb2ef9a3703a31b9e0e07cc9d5e9d5dd9b177c039cf42e72b9871f9606f1f13feee6fb08cc106c93128b58c40c9ec45e8b25332faca4a651763ca1ed2d4ae4582668f73e2f754b7e35d1e61874ec73c30c83c0b1c2ee7f48f2584778e64e66e549db2c6c72d81bbf46635d997c93151b3690192c9a3f91805deabe2af5d30bc5ead064ae2e896707534300c3808094c7d1b56ec73f1051c3420f2e1455139e3e121a8c64c0bf28610bea9df419fda275da1febeb7ccc6bc2c99f5c5196c0e4042caf629af1a213f67cbeff819acd7f4c5c6eb7539e3f7a67f02911854b269002445c76fb6223e4cd24b4785e5acbd908a3ef02a0de2d88c0fc3236000db2fa8e8e4344339275b1a067d845e59fbf7673580793d0f26e1b6878038050e7c7eda8c7e4add8d48252b2ba6a22e49e9da98bd78b87932e8f6f46bc79a3b7f5aeee41df0174a22217870790048be515c9fbb1e32601ada0f202a13ade4f9d2c9934d05dace7f78b6f1f8d4331a918a9b61286ff534b41bec15fe3ebda38be20ad828225a10bd2154ecce57d36b1b8885a4a6a2fea073b48ff12b61bd9984b55cf538c269414eff4b2532fe9379e2b0cc8b8224f3fc8e7c98e75e85df8ecdbfd55ea16b1bd6a7cb06de684fa4886ca411599ee0cd1e9397d168f09fae3fdabf6f427ef6beb1e82f3d4bf23e5e9ec84c3fb024a12ee872ebcd41485b358010833b2d71c4e33374488033d124eaaca8110737b12a0f9d69a733986a7526eaddbd671940cdbd95e86db26db6279a6c52e330ddd8579aaf116f88c8c7e61b53eeacdaf72ba642915fbee240b5dba756f55c8aa4ee7580d0b65ac905a67e497f0be8b0a603ec6e3f92494b3fa707f4ba978590984c44fbb13434a1aab9d605092685ddae0211dc3d35acb603051503f583901601a84396035baf671f19efbeca61ea404548b97fea99a9cc06ecc079b8e39bdaf0a33d94955b0931ea952758cd2d7a2120d826893a754e4f117d36d9621104194d3ac4052ff35b34b12ec4c05f21ed06ffa8b2082de354dd0492937aa77322fe91429804802cfabb0d5494b0b8df49c0cbe2b732c315fc972bb16c70c027e71346907c223fa4f85db39b6d17b927cd3a42785d0c8a6367bb904ce53714e7af1d294a6f1c82a829a715cb8e62c3bdc823b7ae73a447f79b1a379815028946d5bed6ab1f6d0519915262be5ce94184d17dc3c20c83ba00e2773bdcbb4c56e459b5487133b90301fdb992e7cbb41781a6a8d6724dcdb17a1b47af5fbcb16746a00a7f37cdfc2e00ea1f85e67a0de3b80c9344509cf31fe966fdedcdc5ff870b6dbb07dd611fb6b549b6d503acb9d0ce253586306ce7025b557dae647105e40d015c5a490f3034d13465fc24ca9113fb4881efba51915dd7522122ed8dd85c72e5e9b9859f0063cf2a214f238f31ad2258c9301dc553bae22a69addafb0597b8d2b01a2f6b56fd02d1946560f3cdb241307df49f70cd8c7b8e947d637db85e9ed205251e7006d9a0ac14feaf5e56ff73be4cff9f175712ddf8a1050ca64b5038d2e886e61422361f81cd4da619f7425077c9aa15990bf1528eb514a5af578add506e63d51b26988d62375e5537d14bc611d449f2485ea38ad2cdf225f964ed44cbe3ebf0e5cd0ba1f431bfa6cdbd3a2686b962c8e5e7c502f319c340b498f251d3607912c7428a84be25a72fe0392678abf2ad5257819a619c60ad21a1e3e1e9aca3a92a7d7ea259c8c077000757b00f1d6d4209e5fefd9c081bb24f40cb50252b149c455d3d018763fba5630288c753a5acdf20062d2ab5f0a0998acca34d814de49cc994a1d480e64705de580dade07283645d7b2727d39ef38f07cbcdcf773f025040394ba541e7c6bbbf576ef402c72b68f03d3832410222bf75fceb84f55fcf639bad05cf0af2b27fd4bf2d9df3fd10fd76b7998d2416c9a8b97080925f12201566a8827c2c8197189defb4d4034b341b81fc45b2afae574cc743aa1cc64a5e675fe2b85fbca85bda9e7f96c61f42da322f220380d4ca9417473014c6c4ee46420a2b0b58307e42c41ad30bbeb9f80bde824c948e1b2ca63b3a50d8948cdf971159bb15170743346699d1f7684445443c6399fba1633d6803e28ba995599f05b3a91140837fd8c2946271b98889709dff20dc8c3ff8c8ac01cd36ee66ee1595b25314d935cc0ff1f23328cd094130d2bc32f354682767be21d3e8306371fe8c9d93c9a1cb3515a44426f2286479222bdb897980eee8f2491ee1b5b229fdfaed7f445766877a5162c67f6d2b88991666894394bef575da9ff5b03bbc0ebac6c14e779c4f2e9425e9466223e2b8c1c7384ce1146f62e598b4a540fb51f607bb8a76ff7b9507f9ab3949fe28d814be0aad06d1babb0d6d39212a3187e1324e5ff29314f42174b94a1998b4bfb8065e133a7b7ef556add27e77bacf715e0d248ad670690cc5d1377eb8d8acaba512b3503b4db7855de513a0b4c20bbf23364081167dfe892af876b6e986541a9635102dea9f62a6631e40c13c0ccb8546c4f1fb75c71405269437ffbbff61a04ef73c1e98f8d0b9b80fed38392c51f500e432096e56418a03fd4439275dd8cc65ed4469307438cee67c15e8360eb0e9ebce1d632b2227fe3ecaca7ceb67e74d340a3b40a132ec0130ab9449ae08be7bcfa016780145576afccb05cd2dfa22dfe9534180c95a377e22ac4ca73dd3924f4d185eca0ad018a17438e48bbd055efc8b8e84949b8472f204dd5d80435664683e8326289964e460696f72e1555c31a64fe5f7c05ebd51b6cb7c9d28f4eeda124b940645bd64505c846db7613928bce83f8186d37d2582088c24cdb0dd4c6a722f049bc124a732b3b6e7c3e2e2e8065e41b9b1cfdbf3fe14c95c090e5b01da5fba1b5230f06177d172b64c3f2889cab857c476d330a22b51815931e4acdc21af4997a788b9cb17c28e2f42f8cb94626b9bbeed126be7fa80228ac3809bf6563c600f02bcf46ed1bf801ec34eca32f47cd84abfeb3a383123e1424a042ec10c309813590ce9b6c12301bf43d842523f8652990defe0d6192f3ce5f301c497160c6f08e452a56f58c83d2227ac36cb45889c709a04d2b542d7828265ae17d898de604a92bf9428312db0286ad4236674b875ac4875138521b1c3d79c0208d0974001ab68ba71d0b6e897a3b5734de89663d540fcc01568237a58db7acdf80a47b372abdddcee8055b8057337b1718ddef556fe70e8c3f04d932ed087f241779fb0ed8ea13d11fd8e8fb1c01e5f749ae330e001e00005f272e5de8c27dc5c6208ea1e220d3e607dd58338d96461a34248cebd76a96bf59db86506a6a831f90f42ff3c88049a99fa94f0c4e10635d918c8c42fee741c64a40c58a161d0439899e84e3acb21927e88b909d5ac3407717d0b82bf48b60eac1e7cef821fa6f3252c264392ba85f30343062dfa0811af110153a1e4ba255d24446a3e7017cd073a48e9e247e27cd08022ec7636928faf708d989a1bcf0d01588c23193079b284010ef3120d7116d610d0e6dfd0adc9b7a598a3b69ddbd69c5a1ee467f19ebe58820d7805c38d33154eb8497c0195b84f9cc428bc9dc60b50729b040b0c9e0c58fb9c90c05fabd00528bbd3b90a10c7bae28d39b569430733394934e234fd2b04eb484c2492572c13f1ce971c6b11e804d39fbe4018b5c64a77daf7a990f48448b1f274734e698975e34713ef51a330df15ba7055328a4abda2185fa9ef7f07d658e61e28aca79b95f14a3d9c3b95bf62330721a315efbcc3848594461aa0bb093c4d85b9179df50bb7fa291c52ed8ef94681e083dfc9f2f4b627a4bcd08044da3e2d376071a44d63ffda12364881d697a567edd13cc5997bd426f10981d115b8fdb6e88bd5afc25ce2734ad7dd0987b8dac4b0a00316390e76d780783484112f07b84a73ed9722521dc30ded59e78943bd1ef2b24d328c1f2e7c2aaa4ee322e3284f21eec5e1bc4880a3498d68a1787609c512130f8d974d3264cc46300af640b3ff0f7789e53d9de6e94d8b98a6f3ce85f2d9a4d80225d8343f05a6dc19997508e8a049ae741f6289f9f4d5990f00180b4e31e9183cca4b888633d80911ada746e160940d259a5012a67f86a150c1e857a579a3173fdcd7bafbb5c8269e5815b859a9aab868abf71eb3064d949b6317b766639d21141ec392cd9916f3edf42348f9d309031d01da36bab6075532d3961e73a1b79198b7dd43f6a5439a40d0153be54d73aba2cc5ce3a237486201e0783ff4c9c1edbc1bd7e72cca5857dd7f45192e3cbb5b42c4f571ef87c43c4a3400c57074fdbec80cab1d76d186282e31b8486b677f468cacc7f6e07df81ef2953f9d42c3097f903d75b435b4db7ed24042f9dd56758611e1dca559eecacf5fcddbefea92eeaf7a92b5cf2aa2afa56c1c7afb7c37f05ee00f080b126bf026a7d2c97684da00bdf1e8532f3e89c809d0fc767de61c04a7636b856588b98edc13bf7fc68d502febfb6aeb95daf5e54eeb49c856843c22ebe4272755dc53dbc21475bc5e401dc67a2e676615a3615e223f6c2591de5f19804fa44ce8f3e4a9b47efc735204314e59cf574d1601899ee055a7e099357a23a9d03d57ae17f5f37bbe47a282c13c1ec6f78f9b19c9d07234296d90380ca6b1b3fdc7bf698f83d29181e396d43ad7f601e2e174fbcb84b2f2e35468c0c361cbc3b31ea02a24ee2e45f42ea4dce7833510d0fe5a95700e648b8b065ba3549a2f4d58514bc7a9c580d84f36a1f83138411f750cacc02fac6667d7f82101a12ba35e51da616ecde3e636b246fe9b1863b00273b7bb21db5b633a6c4349103cdbe3f91ab8184e8a7ff4283f311f2cf26ac76133c210477deb6c43257be7fa4c81503ad3d3c7b30d629d54496589061b4b218928636a76f2b07465954bee3c3ccccbc97e37c9eb2a45a03fb76f96a638fa3356138d4092277eda69441def62a70133b58143ce338a2ff330b9568a68c56a70659f630223939cea7d5c385fdd2ae519e5e6deafe5bf7723431be20bb5d690e39149284a46aaf15469fa989d10ab8f142124295e036aaf9caa312c845bf23cb3f670a9de9ae862d8d5abea0d208459487b3b3a81c18f96ab1720fe0ce750b8612786aa96ee033f3e72120d83cdabe20d9e5933d32ddcfaa7371cb014b487a6a042b30d8f9f7890e216e5ad1f6376597f9ca55bc2e7254b9a682e1ad79f4febaa793db24cf299b9e66a413b0c0ce2fec346fc257c0e2b78d590e7f10b2b86b38f3e6d7d03c62018bf3d79b435150d019d03e81fe6d9c405d233aea01488fca0596fd026254a13400e3f142a7491cbf7d92bbbec31614543d71afd028fc78aa03580d22626d0e2c2b230776119c3135c57826d5602af27c479f2d78232703eecf4e87f91c98db8343488db7cd04b4c79fa62fececbe2e14715419e7b0c29682a04231187cc047f4017ce6a97387c8422e4542d867505bec9193cede0c8a520417e59f4343292b6f81d9fb4e432fe9b2d95f0eccffa9815c341f09243c7e490282a9e5156111212a5176b058967307380a0faf8e1e9f983eb47943c05ab06a668ec86d6b42e146b995b5c1d5cf5ec805866f306fe84ca65bf478901bbb380172f82a69e9b00563f33728f8008d4c17d252d5048a80594930f844b245e1ec505fb402d3835cb460900846e30f8c80e8f68e002e62a877c11729d468a716719043a235ca415b78c7b8ec05601bcd378d7d466cfcb35b63ba3d9fc9313838b81566801286eb409875d0f8b3ed3de5e7c0aa0a49bdbf968190465e651209cc8108ac7dbfbcfe0eabb96ae6c2b58db7b5e081f840e9e22c151236cb095fdeac2daa7d72718e3ebd4056b5835375982a4109d314d4fabdc1c379a53e572fda1aacf153c0a01afaa4033e04e5c4337ce2de5eae8be5579c935bda1754c07f492a8c70a053acddba9f3db181450bcaf3e110edb881aa496645cfda9d8862d70cb64505297cc6aebf71d6e6dbdc752252228afeea9248b4dc3faec8424e0dacd63e048e846823a48a405c5113a2fb5b4e1d19df234ead4469910f8c5532a383baf2aadf4e6b14f0700fda0eb460ff0b5a4621f4e23cc0c2296ff9498c95db1e2d36e22e01d6bb1cf8cfdc1e002b0e666ec67c74be6d64bae787130330605d38552586b4ffb666cc178f0e509b28eabcd7c3f31d7e4c35386fa231b0a094d809e7715ef29ad458407e063879994abf90e65a9d24e51f657403b79df2420ef1ccbe51bf07804b3aa3c4e16760f754a99b8067d6ed30083f18b09933145ab8e9518c706be132605d3ce98839987546c37be9fc35ed3009ba6514411a074cd136b223be833a7f68e8921b65d7a0325a71d85c010ed8dc448c28505c4c8ef9b24384882278c9dec82c2fd6578dfd18c0951dc5f528ce7b425176b4f2e6adaff5fd5d96d46d034cb0c1bd4ca8870470c4e468e154680edce20bc35fb35b0d529ef2eddb062ac876d5a3c6d295ff59aa32c7cc82e8ef9ffc799ff7a8a173ff7a546adf945fe5d8d113798ed8055a7e53894b7ee5044220cb9bd76b55a93879fed4b75f697a0a123eee9655142b932a8c70222100bc0b40bdc613a5a37a4113e591af55dd585fb59e0ede2e7d813ff5dff1d78b88cd57bb78fda6e42a77b9ce785792847874d11a1b86788685e1cd6c5403c335f5ebfecba86760ffbe509dae8312af5983eed8338f77c654b25474475a4ce1374d2d043d255358b251b679fc3be24fed144b864f7af0d07e7fe0f8981a6e4528d3d3834df0ccdf8bc5ed311dcc24b6386d06c2c91c3be9edbbac207c53e3b01b5552172c4b3fe855a8c7c5b61053dfb9a203c0c7faf4a18435a97a3b542397301d77b6ee2b655007bea1734ce4266b28a8815a44ec86b87efe943dd6a16f857528e9c557048d69b5e05c0541873793cbaa63b92e2296890211dd6d6db5d7d2006aa7712691677a8162274f5c664c836dc2e67ea9b36a43f3df94cd98a0144555ba054cd8599ee31b4af9b06f5733ba0b364d4b47816043eb204b970221ff0393b18eedf0d23fe669fce62ad5bc370e210fba4a9d30829856c9c70359d1ae3d4e3485f872f4f1c958d544a699d7f91cb01b9b3601102c37ddb7182b84009edbd868123cd275def938d819000ee0559d6d587477555d3b6d1a707242644473a57eaa140ab514705d81203f39a601fb258c67034b3c0072791d3029d7d5611e072105dda3b9177e54ff2958723a58b5a8054c7820414168d627b4fb5c007ef0896e4253c24d4963ec8e3a155a877039016244adb62ba0395ba144e2e08628378ec0f90631fec52a8539f41215667e05d493806b8c7145c1fbb624f5ab7c1d006dbd60bb950116e1cf0c982376b17d73e1b11ccc9decb769ab4f534e67231562176da5960b0f0f190279c10cefa843b2537c7244886c1b48ca5a35d322c79bd76ae692136374cc80c752ac52de39522b962f7b66b3ce81a3788772160c3fd056ce361fdef52ff129a27f1808328527be0014dc67bc6d76fdec1c621e7b18c82a258829883c50e879f77a8728e69886bb2a10ba3e1c8e4d9c2ef72a4106a050ecc609a3e7c7d56220bb1193cd177771f522b6974f82300c5c66f4097a23d8784133792ff97b1e777ef8e1332ef86d451f312cfd7f703b964c72116054f44ec06cdab797e0cea263b59f5f9994a7804421c778480993718b6743eccb486dab7574b28735f9febda99d041574ad014e98828d5c1320054c3d68d3eac2bc919f24bc4de2ca1af75474184f9cf08838ae49ccc53238b9a6300868347c3387b20601751228b27e72760981eef4086d8ec443a3e4e3dde4fd3088e38c616306e3468b080d78c6017f463a626fd146d06a065b1a95bc87b4bad791320a243c3b0f880d4f7e371b34ce9e30c75660914d83a3504e1f91941e6b20795b0b3234c9d5225425a0e71bd080d0b1005498516c98c60b9444aa8107a820c24f1f4c34fbc6989b6c4937cb00d21a326cc277b9efae34a84912d2e9abb361c3e3b6f85754348de145c8075ddfe00a7c0cbc994f7d4aad3a859bfc258023908253bf1df67bdb719d655c2caaac461cf28ef9b81c7a3791cabf83d816f7edb9835f7af818873811568bfc7f7a7bd02aa81651860e0f0f78a487a90029838165ffb4076a5f81d680054abdfeb9053640ab21d04d1ddf4fc26b0d18ae9b6202243cd567d9bf1c9feb2141c9575d5d61a0c7ead58913942eabfdca40291e86b21d0e103d3ddbf8ed9023fc1a1c663d2e29ddde8c950a647c3ccd2be8080302d48697fa8159cfa4e3405cad26ef28273bffa8389e3caeba241132bb037d9e550d0d66add7071a68f947e0aebf08f447b607912d79ee9ac22656bec76823ed385fd33554a25c79e6d5901625f13bc31ba1cbbd228efdd231d09857c38afded7f00225a87cff8a67f7fedd06037246837c66cd9bfdd9d51c4da49a7c86ebd3761a9fc6ee18dcdf60675086a33be8cbbb14fa483af173ebca17bab3fa10a91c194087615c039d0aa973e93b1560d9c90f0982bc37c367a5f198f3d5c49a3c392199dadf9b57fee3f63d23a65d7db2563ce3fdef99f86d94a78667b1e0974272f696a09b955d089994792a94c15a85032f19baff651997d93d92b360291272c25d70bb4ff0a06259589d82cd1b7faf7bf2dc940330780a45e62da76bc11453c4762d409a24873c981eaaf5360328b174204a30011254b2776ac86bcaf3419bf94e04a403ccaf87db4b6c77c4754891c0b49f25a0e63f084c8fbbe59fc8ce1d5207346badb6201f6dcd265bc152266363932628c732d48a5f9a654de1afd56beb12f26318de87333e172fcad2eddd1db5bd6988da6a6b7a276e046841cbb8fe7c712c8cff11ef7d2c2b6c4ae3d17e81e060393943ecca0c8b82837885b9700dada66a37d3c882475e55d343aeb2c67faeaf8d18fb1c886a5f0a715e12cef9b1b10b7c3fe08d672a85f5bbf3c15f6640773316f443abc1a072bccecca2e0fab7a3cfe17935166f67e129699321021d0a1f41a8dfce589e0ea32100fbf6a3502654a42902160889f3e7f9f83c03a001bd2bee4a288adfa5279c120e2db91c1ec24ce2df4de40d17be86d69bb635866d1af0aceeb59c49756fadd37f72623d3fe36956f6d6923f72ffbd2a411ac171cbbd12a26002fc59833bf8de60c8df3dc106e12366040dcaccb485e92535d620bfe4bda1c938423adca48b7d8ad7731b77c0a01b4270e0a1b1ce54267d464da5b45f3f56485d8431551a340cd38510bcb3b51a257f23e7ff6de12f23e9b24c34eb6b64e42fdb6adb2985f76b0dda24835fc31cba769955bc7f8e79a0ca1e711baa382b8576f4e4cc775c513a1596b618f67c5cfe6b650b8f862f9341acd73ee9145e01c7a80b8642f11e46758f2648f0ff2418eecb872be5354f014f0c91527fa6507d1dc218e4651f507b682685a40c6adbdf193eb4d10bfbc8e247c2cb29e15a6d1970a96c4191aef1d2a49e16a2c2c44eb8c43a1713ceeca99f0b802554b81a378dcd95ef110bcc9280c096ab72a00d26f4797c99b9cc4ed9e6e3fbde0c0255e393c284cfa3cc1b1e968135a8d5f0f2838b8c7cd5ae0b5e87ee4bb1e6f85b29f3f3a6677b3c7750859802f86b99dc677e2f41721df1c24fbd1a301ec89fcd907c1ba813018755a45bc737051ea1cd8217cf3ca6f3a72e6b84a843c5825a25ad55c295ccaa25ffaa27b82d756f9b7628a260d7f30cbc3585a2ba8fe13651fccf2fceebeb2d82112b41e727b87df29a77fa8a59eafac8cb0f39deab98777f093a1a8bf790a7217696b5161f417be2f79dfd4e12bfd4140398832c6fe9021e004ae9908be7472b6ad42eba7ba4347e8ab6bc309deebf046b043fe6060237bac1ccc8f35deb26cf4b0be4c3d879c9225adef294041d904a50e76a0d596c95706038276822cbe1514b626d106fa90c26284d9a06446cca612b836f9559ab1053175395b25e925de4d9bf1b4082415f82058a516eb220078c198ab16111c7453e270c940d4e15dc4e4ceb043bffc3f683e7e3d56d66ca70bbad614e14c784e6fda5fb1eb0f69ecbb9795c2664e4a16fd748503f986822283df446f2547a920aa4898d7b057dae9aef91149a902b41a2a141c40132f7db3386c31aeb0f62fdfe88f50a3b24c0612e1723122960fdc67d13f5f1adc56b08094a3da852ddb99ee8af1b81cac61c2b172cd8944c0297a47ac49a08228d2d8f801ea7804f2cd0b7fd590b80e05bdaf7eccdf108e34b8be547ae67af91c2b1f66c765c46c3f1a15efecae46febde489ff0602035ccb6dcab50c89e41cd97d1e6bf10d54fcd8cb2c1fd87830a7dd8a7f2cb07597ec92bfac114baae7f94967a2c0d654db30712ac5b62bc77725fec38019c4fce7f4b40b5bc32caed2e3cd3814c0f3da206980c50a36531e541933539050c6e40f783bb1cd2a60184e7f6de7ac703172c5af639a2d5d14a7a11d4f59fee7c754f93e650676ac78a95138cc1d6ea1ff439c3cdb219fea5d784612c7679debae54c53e94c5f43b3e0210a7df06d380f462d299eff5aa33966dd6edf9616419d1ded00baa825f33eec425708d4a6bd15e4c86e7609d02dc21fc604461da93a72035d11fd2b61aa580ac3f09bd55ffb4089cf652a3b54e79b7dffb68ccfbd5ee8849e87939d03f684db2ad3d056ad65b9284d2926717be6a729d8a6ea50a32e3b4588e7e6d33a7b46f85510972b8bc147a28dfb3f117ca91e86ff70321ea0fd2b645114f489a2e3941eb8b063bdcade958077af23dfb44a046019371a0fa1d69f672d558e4ed186d577ed90c96e71db973a1cc30d52f620da99742c1fde9f30bcb9a3f071004609e9bcc3d43c41ea08c1a30f639bffaaa2225b90839323a2d0ee28430800de81e4229127e4ab202e3ec1b2e611f27924cdfbff643c883e5317fbf88f1fb5debce14c5a4a0c47eeed6575a1d085c276faf403e0396cfd41eb4db4d83cacd032a3faf3e3adefe01108c1f707b934eb94ee7581cfdf1a121a45bd10944170d0584ff640af97dd424103509977579ad058dfda8acd62cd2cc28ef839889aeaab157b783eade16147379e70e583aa2f35ca8902cca571c4787cad055c4bd91a58e6a865cf1a07d552dba386aceebe3b12677365cc2f57c101a3970f0d4f854d701ab49c73e914e369053eb5f72c285d39fcad6ce99a8ced89ff046c2a98f18ecce2bc32f4bb26615bba9a3a5e88078d05fcc080fd792c52ea727e3888a6c6b172f2ed0410abcf18b0401fd0ee0d6f20ed620834e9fe65bece5ae515d02498a05fe6d73cf3fc36e63bfc5e05a933587ce13600cae106594eee4aea9c6ea3692373f0a4581409948fd3898dd91c7b7cf6f12fdbc7e9f77910199273a07fd5f856dc3e79b3a9fdeb890213c1927d0b579f36629f5ca3967284988ca85414d53d1b33fd7f4dd64e1d1ca56ced2cf133f0c1d59f1c72d994424f6b831665414ad3e331af6b212879e0271f86fce8f9f998f29316f5a2540f166bb59381f601ee3e3a482ad6b6bd53bda9c2964d2d0b8f5cea421287cd965eff2937374ef1624e887d170126018d2a51dd2e8897e50f7eb8123c3340a999b3e374a2ffad1ffbab1aa9ce77486353df2060febf199078a00be9939559b9a901152b146ae464dd7f12c480aae0e22c0f39d95a36a7e0f7e67787aac14f6088bc50dee84794d4eb92f4ac23eafd50637c4271521746b213e4cf3e8a7fe1c6dec6700671eb717337e8328d249f5fc618d3ad5efae5e0400791e920da0a1220b927517afeb1654ceb677c43931afe4798da450d89b725a716a1a73ab60542195dd7220cb9bbb2d81e77c49b5abe64f93c30477d775b05406e3f17c16e8ae8234c40ee911a32ff472c426e1b479cd8dd20293a71c35363351278cb3373bb4a6a963866c3dc7b9d27620fa477e651bc34e7d5064766247ea558bc436e6911abd8596f3c2f5b29363c1b741082d9d742018303600d4f8286fb053761402322966e94f5ab011f254983506a3c2135ad0f5ea660db0dbf6dc4bbd5d327e5bfd099528405ee71eb5636069fb62a13693d5193b7729dd106bee912c3a36fc29f1fdc3f048d0112ac9291614ee39a4b101b24d82a71ffcce208cd64c11cb02f3faa48bf2d457ce4f7ee4fec7c4fcaa8372d54d52f113096fa1ecb148afd9cbf45c5be1acaca8a8bdf8310527cc2f1c391f14f787f6874db3fcdc328c61f8dc438b729c5d1eedf6d70806769f3ccb794d6453219248d291d6dd8850b208a7655ca355b3d90e8d680c0ab2f8666ca18b4a5e3fb03e013de05919c0ed9462750c9053e1543a9e6380199a34230e3363c3d01aa7462b60011f8f663ae884d37e1e6a753a76dd3741ade0d312279f3ebdda660f62689d1568dd310f71edc21eecb7ad4ee657b0e1c0ad6ea4167ddfba93626f8ecb7874dcc4ef5f7a8cd6956fe6e24a2cb4f22626b172232e6b98d46c50fa5d804fd8201d527f8413768fc261ad96dab7856bca11c48db873e6240cc9a574652ee8b5b08559787579c8c42fd1922fa926241f13f838ae7e6475e12af021fcb5efa057085d51b98df4bc2800ba0e81f0fba26c880b042e243ff1bdbe4e28af8d48a2d29b46829e46309dc81a8660712bcdddcb6e8e5a29e6d0a12dd82671697b2edb2832b9cd82d69557e57c2d1095d7b8272c0049d407c31c8689366084a1bb0bcc43dc12998cc51e42ef3fe4b5a42d4bd8df3242c18fe4ea2ca7d2896bc8d06b7f8cff38c22d2011b07cf82d4d3259916f15589ae86c2d81c951260628c0c753dea6ae91375cd3db8764d54b25ea2096ebdf6d2b9dccf38e9c972700d7b221320842d772cd5a5fe69ea6925fc25ad448ded7dd0cc9e032f6fec753de074ae6ad3daf28049a78c983597f1f37f666c1c7d69a29de96da1072fe891d3a5e1aa8b92f5744607c923fc48564de242ab66e49e2c380fd6f5a0f31861f529ce9a4cbce050e262c13a0e72415e61b9b628af52ed41ab8248db12585801f34359179eb7b48fb4e4b95a878159070f7a73df8f5e8d714fd8f5c35507affd6277ceff96fd18fde38fedd5b291ceba5cd03aada12124c59bfa7ec33b7c456a38f9505b57bce47b89910b182429512e1233673f172ce251e9489b8a378517512622277d2262cb42467385287a0193b620e62aca396f0305a27bae7e3400d08df0a77550795c27c973f3323cd0f6508526f7daa2282fcaa9cfbe1c61053d519c41f4326965662cbdd41d8f8c6139cce862d887b5d4c4b0dd96d937c2a53b7c79ca0af8de6c0c988b13feb707f966795118cc3685d79b2e854162bdad3c045e198ce925912ffd90058948667193d6339d40e1125643a2574c759b1ded8978bb12b2435b2726ea4b23d17c439d609f3176bb2894b8d106d162db6a29e327e935414cc5457e5ee435ad8e0623e009134750639b11b894740be4ccc6d02d5b1f2a249767d183689ad44c6dd411f58252bf93a35b7064af17c4c2190eb0f654469cb593f6a3c25b052d8e8c1e922f808c3ff1f32060ae15d99c9643b2cb35e2c730fd3d938946e2cc9da347681eab31c229e155305557d5546e2aed32d5f07362ba69471b1ffde434fa339376f8c445170935577df14efde7c10c75d06140958cf311658b750488d1c91f7396144d5acc43f6c52215880504d91fe33d273ec91d0cf6e979bd379f7c81846cce551c12a83caa88f5b5912a32cd0c30b5016ff08561d4932c46c2cecaa94f19424a59c9bb451038fde79fb54f80291bb465476e87abb82780967710d73d88b3bc97c3394a9d11d08427965285af9fb1117184afe6901d9554b511a8a176413ec4abd67d00bc144162cb3f90dce298632866bc9b0a1ffaa7fdd7c9c9bbbd2df224c0af994f65c5f0218cf5bcae1a86ec2a790aa9d02d3414a7118d063acd7273e937f21539a9ae03360a253305d29cb49edc3a04224c3d73b3a60dd7f82957468fda44b2c860b9c5a4049e1ebd47cc36de3ff6cca0dca878c5e201c9624de90f499fb6db17a26b8f803ef7ae6dcf3d4f590df3f41ad8ba3892d7d5c66eb433acaab61238d78e101e488674cd8e86a79f2462abb559cf1e1a6d9c547e7a0a6fdb88c37d4b17a12bc453d75cd568074f84c1d64fd1f05efaf01def3d40cad10c9eb5372f00c8a874278f582dea46a84bf228f615fc831be6c31d5e19592140304fe2b17cb87cd722628df1dd0933f57b0cb54af561a8805a85d499fe2cbf479bfbae2a1e90aeea023bae55a751b3ce93c5a021211b3c8e7a480f0ea05c7a9bb7d2bb4af0f89dcb8a74e9cdf56fb6ea1b6e394cb8cd431639334d353a268b7d950d2fab47155e02472c3cafa9ecbefe061eca56e1b83ca8295d07aad7caf332fc30db48e5cf3385fa6ce60a41deae78deeec5fb3098398d83935e2f1ab757cfe9744656f7cd5e4c892ca2e6a5cd3df1f56da11205203b00e778b0268c7312fec177bc14f2be4a5cff8142ccc4d34b0c4ac89c3c5cc245d0a24251aaa48f9afcc66f3f8d68ddcfc1a9903517eb2c3b187c9165b732c60e110289e3de06a0a7c5a065e9c120e772af110b760657c2fe8edff1f715b2978df37b89c94468a1ff6274ede13d59a19257fd76fb9ce2a55d96c4b901de0379a6558d826ddb4cf57ca5eb89869d47c674b731c659d4fd6b02d1e5357d75ef8c66f8877a6927dbac59e92cec0e12ee260c20b0b9b45dcbe2f6d9762d916780b6c7e59953ce0047ea96af04f10a8969a6b6440447e20d297fea30b291147ffef00265bd3ac4291df28a6ac6a861c9b797e559cab5c2cc4a526e4f6b2a10d48726de0e59535032c83c0c1666eaffe6f9e4d38dc1aef0d77231485acfac63477fc9ef332183de129a75e429257a89ce5177fb6be420558ebc77158dc0fb19f4d91ff2b4a380fd22b34a5ffd3ae1f708c8fece133e6eb2a0f7b537c9b48240f4bcfcd16e8d8edbb904610ee56ac022df867d26e0e1db189d15dec77072a3a9fc414e88c668fc6f30905ffcd8d2c5a01a00acaca262747996467f6827f61a5b52f6fcba8c7bbf3fdb5f47995758f32674de42b94579e66e114d18a5874d1077e9b53e37db4dac86e8a67b97bb3febc2c8b9b6ab64c17eaf9ac0d199db91e39e0eaab5ee31f5aaf830b9975041378568dff46d73e4f96eb14bc3b05c7ab764ae32423d086d5c24432b1064696590e5b49144515677e5c0ea134a75857dd4e35fcc22a696cea156647e39f65d61fa8766c5fe9bc21a873302cbce4855d8c8dc9c41801a7f55dec0fa76a3f1111a8472aad837d006426141997f593570237121ad56304ee0d721844b1451fbbb84f4b5a78d435c4d7b76b5556b2d543aae1cd438f34360f800566a06752ce745c883024025e76d2150ed4b64365ac75fd839c1de746c7760b95d22ab4850e7feb0accb968178d0b8c9dea697955ffb72870402be0da401084bbcddc1cb227dca033b579b8f14bddf637308cfb7fd00c16beb0d61ffd6b562ba40fa758c9c6516bc4374be344e59f7909a82701faa7a5d6f82a9aa8b49d522a22d9a52caa561d705406696192917cffb3b9db2372b06d6d63bdc78a190cc2848aec19abd3e691f865c526a40ba23a6f13a508cc0ebcabca658bb66820835f70f8ae6af80cbfacd0106d80bcc45315f5ce4811923e18cd337a0cc2e02db63b75901dace37267271dbd700182e0eed400b787181fd4413833e6ecddc80f9439837876c73dc02df736c02c175d0820786de3f260c3e198b14f9b481c94f271dce003b81805f0268fc5bed023a8ef6279e5377607651e91c2a80dba2337e39623452864c7fa866e8a26084acb104470141c423d56ae310c05955e8697edf61bff263672d889472a835ff634a9df7ed379d071e62dede1bb8517a024bc263338e3a8c4688c985f007cdeac1df92e0c7a2807c59897df99d14a2efea95c065d72591790bd225c42502b42754cd939210d84de0ccc2b571e8491c2c19619959bd433c86c9b3961e3110191e5b9403c7e3bfb1089c2e1b3b08a7feba86c147b0f39a9f33223ddc009c967cf0cf2f0147625ad8647f74c3b412e9df9a8958c90f7a6b6e13e5a70152296f7d9c152f4f174c4903d09fb055a33ea18a17bfb7f5fbdd73141530a35b7b0ecf1ef903bdeefcfe82d87665fcc1107f183afd03881ca037a74c2e10a8e2553dbd6a5b43d8158d6b041ac438bf35af2f8ac9e5e59412e83080a666167667ce751a17543f2506d1699412c74bb689003af97648f46e87c268bc967297a0a2a9315fc4dd1accdca494a4d06a7523925fc0bd0e9069a1410e2bb5915a2895cd5d98867864135c483c60f91b291e87ad67fe50dfff5cf4cfed8334c0c8d7f634d74ec9db176cdd8f0bfcad05c063f9fc53ed0df37cc38fbb12c69e8f3b695d44c7781efb26c6f400d88727a5d9cc64a6e7ef1912d3b19a18080153af75e6094121cc80bea7ee804fa94d5264fcbe83655dda65a5b7439acbae8a57bc83a839313f062cb3c11263256d1f4f5dd11b8cac3e93bed2795473e52e14c0d579987e34c057ac162a09c4531b256b7bf86ba6d137e79cb9222e8a93642c456d32a09ef8a9d8339439a9901df32efcefb14703e7846c55024c7fd9abd9b4c042a6e8def4e8c89578dc9cbaad13bcb545a7925e42bcb35f2045cc427d94c5834a5239d16835de08f2a44ac0070f581df6a63f4e73b0eb99e0c83f79be01d5ed91b2ac932854ab30a58641ea4cbbae22d8b1095186a2fddeee59698c5114f6a270d034aa70917d3ee4a570da86da4c52e5cef3b8977fb4d208b9379e86ecb470d122f4415fe65fb51f00af91e9ee16108c36ffff3460a3d3837c7268b82eed180a875ad9620abb85c65fff99daf6fdfc3a2ebb73f34920d9a3c4714a753016fd17faf7b3cfddfa2538f71b44cefd99b137c832ed31dad79c8bf19dbe9236b9f89e34f9a1c3fdc35bd6e839376c2906d0cad7820f96f55d2c6f9c4f91717c846bca7cd8c7b7c374e6e23ef44973fd41cce01260f4f0b6a93d68456e5190886419848e9d1ee7879eb939c5665ab7e3db628380e598436dbdaeb9e7336fa23d3d207b25170c35a8edbf95c019548eb5bf177ed0e2b2b0c13850d33401a610671eae13c2d7022792c093e58e23e6f5764f5ef092e4061fbdb8be49c591fc2816e7c17f9f94d65d2a3c678bfa3765f74833561f6a81299e9f10da2dfebfe8e25bbd41e075e805d81ba953ccedc67ba50b1dc57b22aaaded93f47cfab81b3c65ca9fae331376c22ecf9258d3379ff5986d2c581f36a57b654f3d96160d60dbc6a7ea8e97bceb50a7283614994507da198848576239b2d736fa8a46826ec3e6f0bc13aeb94d8a180e469bd05b8610acb861b27dee0bdb105a5278711ebe2195ad6cf80adc94e171cf0ce3e8855d735200c7708325570f7fc97b543f354733000984a4535d9bf7991b6ad83abad51eb72b6ea092322cf556dc2c90cd18931b61d61306002e73706414ceab31b529b29c8c3d7e83e077b9fa01f0fb9c9f2093bf997252baff4cd51955e23bdb7ffbed1bf47668f68ef433aa74ea900a7be3573e91081f0b726689274474dde5476d943698c47b22c231ec49bbe6fa072a5f5c4f608daa33dece30095f8e75a4dd771571a6ca4a89d8a3208f2681e5829680a37710f1471946b408d25b1e36b19c33c9c5faa718232c216615ba3ba6479c3bc7d0627c6ea5bf3bfd7261cc3ce196a9b930f89847e7139f7b4cf1c54eb0b4d3f31c1c0eb777eaaac53a31d3e535db168bf37c543282c4317c81a52a69146e46002604c2a3fe6c45c42d32c2fb78a1bc1c4ed39f22a424bf50c41814575e93b1493092bdf96505befcb0d307d10e12cfca69a330223a7964e09a2ad43f002416b5ceb0c466c09a0487ac9b0edcf996360ca70f7651f11e0186d47ed5568cc5527dfb0704b9bec883849e76bcc50cd4b34877d4c399a5d7a2fa3b0a2aca64a4357e84a366e73fea6fc6e8458f8a4fd517887cca209fee1fed303a9f72fad130ca43262acf619f2872feee4b324abc480de838a5a695ed18ea750cf41f7e02afb9a31f9ac243d8d33ce11cb50b78c4ef6345e9ac967a1f11ed98594502e80844bd7a973b5e15e29e2478cc52ff4bc0690c316629472e18475f4b5f19884b659b61a46c1ff789c09055bedb7bcf987cd416e9ae389dd2d7cf2255f8fe0d3a005372a7b9d225bf3d19015c3bdc41eede57668288514d44fa1e414e346bb91c045b27982b9cc7c5c0900518f68b9960d3166285c9c7f8d2e0bc27c4e9bebda06617f0ed0c73889d02ba03c9c349a23aea82764c76fee1d0b08bcecffa1e91e2f38ed1158960440c5e70dfff759c1bf508fab69927f2072866211d307556b1e964c8fc3a0682add09a610b4ef1588f07e7b6156354508b702a2624928e916513d3e1283a84bc35cdf94c6b86471e7de2e8162ba3883433cf1fe4bb98b26ab7037bb1293dbef4e82efc0905f9cf55dd83b761a9bd2dd216607a131c3a9841ee0269207cbb2bf0826288dc92cc2458dc6a828c992f5202d7f1067d393c65005640e3735332d1db385070481238ab46e8cedf1b2daae9329a9c2c09ec989a0d5d675c61257f9bac63638cc0841e3e7e567cbe3faaecd70201d4959f55ee3b890eae0b2fc364f8976265df2519541223f9f58611170dda8c9ced756bafd1dea60aa2059d1733e626a49bc14cd9aac65ebbd80d9f486fe1cc0c93ed9dfc4fce115ded7718c87779c0b1ef04396920566c7ce4b8e5d197117ef27fcb8ddb1fdddd43f5e6687862673a6e7ce1ed1f9b35f4dfdb4cb664fefa3be6fc8ff83dbf7122bc87edd6eb1d37549480904c445aaa812873db021e3a01743937cf14529c533a51894447ed9027ccf0436a8b8568b2494ce99c9fec8c758b20e445d463d883d9a1798d7a041f0c9a9462e224cf94c6eb28ad5461e8f92e1ab6a5f8e2638c3cf964426e1642866244877fb5b8b40dbbdcdddc5ffaca82b29680124741fcc42e6f5730f3e0cfaf32fc54369bb8c66ec8cf9feaf669a343eeb5dca704644e67654d5965be8a9f97a1e123d72cc6849ae4331f5b217e09595d9061ddab2982665b0e911b3f8c50ad26f56978550b725e7934d87a3860d08ffd77851792a101eda73dc8f12704c0f3ce6a57026236ae162de916f0a2480128fc03bc8bb7cfbd2eb574cc11730d707622c2989b9571414a9e6b48d22272c4a593358e92468c3db11210e4c10faffe9e68e17166f30551a51691cfcdecd880c1691865233a7d1f81636363b2a5286e86d0dbed8aa0ee0871be56ab8f9fa64136cfb51ac05612e2836df293db5237ab56479875db142b5bbb19bf1adb334ddb2e452f83c4ee6bef7bcf2e25ba709038c4f4c86a45517310be048cde5e5ef3a52c01dd101d5feab3edd557d3e5fa277c03580b7d151a846a46624c2ee30fb9a1ebb2ec34195cc140b149511d4ea84b4e10b5ed2da100bdf5f170ef7f9f2e9d065c0cde2772e2f509a497b029983d56868d29207baa98e68148b623a2397fb9e417c013d39197a0babf42a8731cffddfe67f29f00f325770c2dae532ecf2df5823c894eae514fdc4f4bffa2bed7633b462f8ac52023292a41ca4277347c81b67ece1b3908c358c2848cded1038bee06675f47a63907bfa1181b60b799cad517e51992b1190fd741c92bceb5c365181e452cc1dabfb1b05086e884c08624de9672f0159c7b13d07a51076ef34770721d26d27472c2ff9bfb0cc0e9eee7b51ca5ac897d4146336ce18c058ca99b72045808a36fb4c7d892c4877097bc729c0e6950cb3168137c1921b08211c2fd3c3b01d66f5f365f5c618d238db3cb38f48c9bcdaead414ced6f87d51a9d7c4a5ae1b026bb4495389a23d33681b0a1bf708a972cae8686fea310d10702b72a00025655fb53f0220ab4a2a4454d8552037ab13b7b28cc29d1be33f26cd45d5ac8094c40a1518138c849a13b18d94b2e1b26431e03795a9f5bddeebda726563726607131c616fddc7687f3ff5d23d7245a9825b8aafb462bab0b77e4be957532c014e1882339bdbae38f17589130153c150c2d2f9be6652600420833052c63734aa34eff3a5678ca0254d1b3d1401767fb8c861b00f59bb88385b4485a0a96b9e07bf2eb4ea1b5d5e63d80be1720e29f46d8385b91c01addb0e80f2a462ae1387e548f60dc1c00d2407c963c9ae9f545f4babf0bb98bbd4bd94a1fb376115fd2360c7e1f37db30f8d6f8a6bec59fabd41f353a3ae09a90cddfb1ee30b6136aef7bd4226447b045f5734f139f7cfeb4594b74f36b277069fb00142a9c028da99a39f3c9f18c185a4797ad7423c76e09cb392fd9c8bd29ea130f9a1a220f740a00ef49c68c562323f71fc301fd68793cbb6fade1988686c6d489f87189def4df8d7d62093a936a8f7659cf44c635ca1b28068e3858de3a215c0629ede10dbd9dcbaf16c17d48ceb2893d86a317e3ed9e59b1e9a5f7a65befc7b441e0bbe43b4b5ed236f34dfec671ae776e1cb1b906c35daa3810c5acfd6b5d92265694838e8603ea25d239e62dbf4295c797efc3b333a65bfbf4d62cdb34cabb8771e33e9ecc2884ad66bcd903184e8dbff71fc0ce4df4e2ed1819b3dd5fb632a539b822d4d0243d74aae5340d606acf39b2db1ca13c79ccd53595c7f99672dc407f24c2b3accf1052a352105bcacd665b4dbec67d2a4b0a69948d3f54a17f8623284c5fe410052001379d00abab781401cb8b85a5be326666ff440f961e26b5dff652a97139b9e0c04dc872b52d9cc81e245df5fa9234657bbad4e3e33e3d04c0077877b15f3cc47e1413bd0e33db69cdf4008638a6aeebc304c15322f28f614be31bead69627c5bbb667c6de914d0a8debc89713594d4a6af32cf8a7df0135ec7ded8b6a9af6d347c8c57f4990965fd422bec12cb52bf4fe9595ba36b483d27fa8501d9cac60921569693d409e3b2401b0a08ea1a20558508c46a053447b5a341a9c22660eeb03f5b18194952114a6e8d75c311f7b79ee2ad7b23846c08fe8773e160ec3d37bdcfaab99fd13ed6e4d04f73c793695352a12dcf487f073aee9969771e4dbd14b82db464e359bdfa60fc8334863af1054d6f807049ba6c2cdc0c72f0a4311e102df247eb2c6b9b96a49e8e6d83e3cb343d1cb8aee817d58d1069d90941387531df260e6fbaaaf0e1aaf39efe139e1a43566e747d1a34af8e35abffbdd572931bdbdbb265c02253db6a3198e896b39fbe57b5e09bcfec5c625f89ae4b1c61a4dfe617c05883eef39062bcb1357911e771711bf4215d04270ced50ce88b19fc1e03dd7581ddb26343713b7bff5e2a1920caada71a460451b22a4c5854ee98274d296918ba994d212d187186c89822ca4b64ad9c1749a880882374b00a98efd837cc88e8880b4dfd0e4c695317a40c816fd64a6a000d7f26c649dc95f19b208e0a99ae4cac2cb585c77ff469c39ccc46a1577d1c694bd76a811164f2914842ba9640242eaf35f759ccd07b7ec7eb5747851c78f71edf39f973984b1c7799b25aafb80f13f8c19e09e27dc3eb446890de4f4fcd16d27337bb9766545ab5b6bb4d3fab800402787ed9e7a52ec47b367c3ee28f090f31b83504218df72e77fab6db3cb0a7b3c6ec3ea1e78271f42e17ea5214ce50eee14efc8113ba2c71618bc5e4516171cce687caf0a1c0b8b5bf7a1844800e63ae400ec49f24f4e61e585b190fa90bc5b76a6a817b13aac636fb55244b3d09ee67c3c0fa6144540d191677e33201f1d4b51cc8ff424f11c1afcfe0a8f90e15e2147e7bf56babe85d2bde6ae10c6e059a97c1947ddbe5e1233ce6d6d575596f450695d953553d3d5f555358682aa3fbd1c7197d0789697d136a6f19bbb597fe6569f99172170ec60734f2558d0f7610b74eef5b2aecfb4856e330ab1378b9f6f3f9f1483e9e907e1b9545d0d1d3c57f4ae333787e41fc7412d9e8f8391b9d050639dd00ff39fc84213ca72f5dfd49194b1ec21734a451c9b9234f40994e1fde6d427d42263644057a6918f9a3fc2cd2850f98ac2a83a26f0e8521e0bf37a320b826e51ce2cc6f12ae20a0333f9deaaf21a60a310586e8d152f8fd8ffdcd5b34681c01aedcfbbdcfe8626f2f4d50e92c96c802795e705a3ffa1f0ccc36e23d4f5fc7ee6f1c1f32cdda08a81b8ee399aec173f4f4ffd873d1d3b291b740ebfe7ebed13fd8650726524f98736ac57dcf775dff0c728d4ea8ac6871ca89bbd204d1428a22ff684a50dd12fbe05a713009eca550fff3e4905c942747afe96d61e95178867cb52739f58f17b0022e6451537787178cf46604371071dc76f16e1c4a70f8b37cbf45bd0955ae7e34e2b621a4f91b19fc231600b66de9ff51393e8dfc7902269e0e1dc1d4d3787f5f62380e192ef8ce3b5c4f6d465b8d34b248f70f1c0d21076abca23cde122a1adb11d4b6163a3f0fc15c82978ad49e8fe4cbc36d823e5323134d97600832baaa19e22249a332e22496c3a05482dfd6db2958a4ef359d99e3db5d6f147be359541c676de21859c3834ffa28c9a71e043c375b3ca4d9371e6be10bb79b185ec19ee38106c0dcddee21377290ea6ef4773fcea8a3045746b755ae67701244cd13564962cece58ef2cb8a4cfdc7a550601519def2d4293f06a3caf91d4862a8ea2549bd91d82df56a03dfe6677129bd33310ee324cc6e3d88c0c631f7e54c6a2de95eff3a41ff2fbbc88305c9e6b5f5f0ee18ee90f201c64cfb7388a5faf8b865e01ae3e88f6b18273be1a829fdaa071729fa181e00cf56fb048f94dc80be41068c7576a3c944651642e8eec05f5fcd1ec0e93bc100a3101dc32bcb7d040931bb1c781147ea1e9e0f91e83e719d705147792dcf661fe99ad9704365edbdc168b4a8eee460fd9708dbd5c981b03c86e27372ced9c403ca633d18675930c5e831124c900425d6052abfb24c5ec9bd579acece15af3dea7b1bc2917d4feb1f834c07fdb9d936e6dc916c023efe5c6bef8addfb1c8ff55b9b1ed70ccd48f23713e94b32fc4a407f09ed5f74607f845b474aab9eec8e94d85eeacc6884129fc351285d245439da7dd98c5321e1278561696cdd05837fd280477f9ce789a32090b68460261b4967cb935def3290466f1a88c55fc95a5747590fa6c42755529c468ebab64e159a22294e28e3020dcbf13e3442a0647feb6c21211da431344f7e8e6c5bbb2fdc9dddcdb9ffaf9ab25feb11d774e51f080d35825fd768d16b8dc863733b52f0c12434fda31719c73cb431c6b265477b540db9227363d9a58f4ba161d74d90ee17a1f7dccbcf385186191908cc4425892abb90c28e23f4860eb2fe02bf7f76a66aea65b1637a8cf3d0a85cb0672191a9c466f853323e569953fb26ad626dbf84ff312192e4aa4b53627ac1c056c4ba13b98503b3644ea505664a0168f472d0e30421addf52fd1f4ce53820acc33b1a69403a9086a8d67a738e4b6cf6882638c7beaa5665dd2115c6d497789a960cf0e260ccf0d6abd90c57508c3a57643d520bf21ba546d8209e1a8c3ff41cf35e35fa4fb7652c44e899d7e1d035a6c2ca36be18f6357ab65c8c49c30e69af832c8c1944d3f6f1ffce6644c1d7cdcfab416cbc8ffb94b331bcf52cbc0c646b4405e07a388abaf04c3502be86b49780de108e4ba3e485c158c268fa585d53d9a3eee50ba6c52e51f5bd620c8cbbab33f6db24ab0cb2a1dea655486c042f6194b8d398454cd2ff0b9c776dcee02fe4d05c70d3640b0a6d0013c0c3c0c3c0c3c0c3c8cdffabab59925412699e61816fc74f240ac3829a594924c92e9ff6ba6a4c6819afde5feb636be81be0dce0dab0d6e52964208770fa7d4b8efebaac9745c3d9c644d336fe4a418bbcdc3c9d444974b62b824f88a87d3baa5ca60b92d54af773855f61ab9145bf7b6dae164b25b54b73ed3096b1d8e25c32aff74e993b1d2e1b49aa4bd11aecee154c9c4d09a0da6b255391c8450577625e5955e350ec77432e3ac6c9baa55e1701425d4c7c4243cb3a76f386612b3985497a84146dd70d868b2cf98463fbd691b0ea6e2766426cd993365c3f1d3e4c92b31887f4bd770123cf457a6cba76f51359c74f7fa379f5897e4330dc714838992ecc4f7f6130da792ba2aeb98ac2f3fcf70ccb3a4afdba7d9456986c366fa0d3d52af339e6538a83a8b22439b7e2549329c2e4c931c26680959e7184ea6415f9397d6296d8ae198a9a3823631a3c837c37056cd264a85bab9f826180e2aca5a3a3dbf746e7ee19882123425a1514489a617ce9767ad5dcf2e9c2dbb8d6a14794b925c38e5d1a4a3333c831eb770d0b3565e419364e2985a3867bed8fd962af97699859358aeac379f3bab2516cea341a67f0d3a42b3bcc2c1540ad555b26cda2aad705079524e97dc9c3355e178d9dd2ff7fda4984485534ca1844df2c96afca770526a849ac9edcc9697c2e152585afd124284280a67ef3699c4429fb220281c4cf6a8b93ff14e929f70f692394ede68d2aeeb84c37c7cf7981059719b700aa2f796527c7ea54c3886096327aa08191d9770d4ccea4ba56df38c4a386669c831fda74a76988483525d977ab306933388845375863461bbe115834738b6591cd19342239c647cdf77eec6480b8b70b22083c8d467a2a98908c71831ba24db24ad4c4338991283f0bb92abed0be1ec614a4ed27d104e9735cd6e0c0d21100e9a257ad5dc4f46fd07872da94eb4c654386900f8e0a016cf448dcca166eec539f42ec9587d79d2cb8bc3d7ea6728294a4e751727a14ac5a8273ef44f5d1c83bbc8d564fac22917470fd70ff7f2ca32e2e2b871a46f4c1125b6bbc5597d3bf7b2c82841c616e7cc6b6a944aad21b75a1c6336edf891a94157478bc3c69a92ad93252b691607256e875cff132b97c541a6d77892ac5227b1386548ddf02754d23682c5b9a46b50963ffdd67ec559e55a379ed8388b5d711c2f490e8f2da175b6e2a44177b6844a9d29b2e2247a76d28facede55671d256714b1c692757461507e1a304d378faae4dc5494a17645e4db278c6507150e228614ed5f8ac654e719261e3f4842ad96232c54912e5929594925b8f4a71b274bd20e4dae84c8a63d299d18b3b63a98fe294243365bfde5a51519ce4337f4c12b2a454128a93988adf275ab4874071d2527db9546fb7f9c449cc5f75e25d922dd69e389e7c3d2ac78c2ce9edc4495f4637253b2b9e9c38e84b41abace2283771ecf42ab1cfb38b514d1c4ef87889a3e4a99b89b3865b1363d624674a62e2a4974ff4ec7bbb1b2f7192eec3d4ed5b9b58e294049d51efedb560258e61db3cfd334689c389f66fd098499ca4907f57672a4921491cefad379aa4a1b68ec46133646d98d2e39d41e2a817e65b946966fc1167139dd1a2c9b65f3ae230a34b0a7315ef04cb1a71dc1125a624c926ea951871beb1ddd73f1594f41771124f198d1af37f23459c76bdc4c93355529b8873c7e60c2316648e09224ed621734992ce3c1f1fe2185cb42ed7beebb2863858dc68bfa1a736978538acfce8658c58a58438d7df080b5e774a0c0ee218434753a3d9e5132388636915a1a9b6f525813806dfaab81b26a5a401e224a7ddf99e9fadc91f4e4aa3683593cc34a6ca0fc7244c3c59e459c854eac3415f38315e2ca8899f0fc7f4254ec95d3a97427b3829939199ff047db5ebe194be26ac6c8f1e691e4eaa26bbf749f2f2d77838baad8986c55c51f21dce1762e3e6efc898af1dcea19a56d409527ece3a9c42f4e2f6c2a658d2e1dca74b74d49dc9cfe1a47974f39e289d8bc9e1246a76d2893e6392c4e118c22dfd9b946491c2e194c75a4c4565995cbde1e8eebdeb9771c7a494112d1aa809b430f0851b4e31f4540c8b9d29253d4d708132fc9188880f206b7ef8a20de73755b3622ae9331362c3614597346de192a624be86839022275ace4f0d07d31b37c7358312d2349c4c329347eddac50d131a8e96a2c788fa8d5df2cef0c519cea931fabf19dfe41336c3c94e458799b2d0a745e6c21765389d2c66e2d89f9b09b91abe20c3b1fe4fd2753d2132bcbdc2176338dad89e2e0b6a4ef86e446bf57c218683a6491b3d2b4928934464f8220ce7d70dbb51352d26591e43053a7af005188e31ebe5ee052164bd5750f8e20be73d1bf98c39621a4e5e389bcf5de5dc7fdb9a5d38053d26882ad1e4ba865c389f2032f6fea966e9b77052eabde4105aabfe3b2d9cb2cb49153aef5a96c9c2f9cb92d0b316b192848593e99359828a95ababbac261f36346ac76e9fbcc681e174286064c21c21756388a0c338de1ce47b4290b5f54e1a0f1a268bfa44348cdb2a2f005152e49db9a92e4e7ede9ca28c35ce28b291c2b08dd7df224934cfc063f822015be90c279fdc47c7da259be19998da1021d5f00e18b2824c95c4a8b9c320f9da160da2be1d6a374663047b474ac19e28b271cbb546acb7162bc54ce0927a9dcc25bb5fbc84919d12aa55f34e19cae266b92045dc76b800907259a1c324e86132f355f2ce160e2dfd7e2ae6e2e1bd1c21abcf3e8c1432448186184841172831f69c78f3781884809444444805c8da1021d02a8c3174a38296b13d7e72bbedd69862f92502238f802095f1ce16ca6949246ab35ce5b235a7b3f82f818c1174648e6778e3c6d96b6dc11adff7106901e65b88848196534421d6447ff2083cb7c918b2f8ac089d1a3a478c93d4f2622724444ccd8fa11c4c72bbe2042522df7475f99a464089a1c3132548cefa324843d55338926453549c92094e22bd45bfecc0547b442909e1162c68e112022340849f48c907209e40b207c9af277db37e76872839cf1011e1940117cf1033c3356aea432aa59d933080f59b72384984d47b4ca28a3fd7864c03af0850f4e599298d5f9975b33efc5492b9d927af3a659efa578718e51b2b6e92a965c9475946e81c62e8e256fb262d7e757a28b83ccbf25917993737a2e4e9226b510b25346691b1707132fec6555f19384f61687d1193341896f624ed31647350b3f7fda5e62aac5414fa9a829b343886971d27f4aaa89726996c48c6805f9d103888e87c18f37a3144a80c62c4ea23597c977fa6d5d39407a846024c88e1320cbe2986493ec32dba7662ad95146199d78ec2811a0118bf35d121f4a8cd52d2f8f680539c30c1d47e30734607172efb393498952d1e2235a09d201a44b01b1c0ee80c62b4ea3fd737c544a77a2eb8a8330afaaf439d13a335e5b7138b51bd3ecdec56d77445971d2a74728d5f49d3325234a031aab3825132af67866cef8802a4eda4b775e18b93c271cd1da549cabbd7d53ff5dbe243da215e46160c8080923640317c0c00890dec008901ed94048182117c0c0182ad00184062a0e2a777d5ece9c6eb29fe26873b2a6ac3e7aa2e44c7134134d6a369b7fa64b713093849d9126efedb2b2a4418a9334a543d5d959b20e8de224674c5e88dd7c930e52c6232c1d43053a0a0d511c2dfbdefd921ea5b5d42323407a0363a840870b6884e2702283dafb4c523a318d68150b21430330e0d12348fd62a0d92034407152bb97f654889b93ed112da39f388ebbd59a1434c5499a11b5418f0b8888a0b7418f646d40c313ae8e2c4bc236a2953742a3135b4a19a182a90b0f13bdb70f12dce03d2022f23b7e04d13a4dd0e04477f29b9bf88a3aaa11ad1ff10ee377fc20a38cf61e628888dce03d3002a4371046c80530f001119104e90821438c907381dff1830c1111114403002ed0d8c4b96b846c3c97ed92771e3d32e03c40c023032222222240ca2e101f3d3471cc192ae6d4c8a0974b3271de8b69cf2dc39838e65395cccf2ee5109581c119c96320032308b9c4c93484083523e357f711ad15a1618973663f954757e7c857b61e41a312c7a4bd3729eff2f45172943826f95dea2fe6ca8004493426710c5f62df9489e14b592da021892b29e1649da5755ad088560dfa878effa4e31d2371529b4f656aeb55a87944ab108106248e97a7a4d47232649db8d16183a0f188b359979c2543256962c5dc8186234ed2294194a5111fb2b476a0d1889395e676e849f94594187116132edb4f94536bdf224ed2db2c064b32a978a54a8722cea99e37ae726fba34235a59c8021a8938fb98e5d025eef67219d142c43164c61243a964c2e96d44ab2a8740e310c76426f4d24daf469c46b48afd002222c2081a8638e89c0b7de97f47a9d888969988883143d028c4412efee3722f8fb824218e6726c9d7b82859543ba2f5e369b0a38c471a428606b0d4200ef695374b101ae49a5ce602414310e73325a6eb2dd52bd93402718ae319fc84def825e543700b8853febe68a936d3da82fe7052f9b7513509bb23b33c020d3f9cad2ab3f743bd9229b940a30fe74c7228750b6f7288131f4e2b4a5f5f4c3b9d21b387f39c24661a74989651951184841152441012023142b40c1f66ecd0f165f83823888ecc020d3d1cff7abd4b32952bcd040c34f27090327a5ed45e4ae923ee020d3c1cc6729314356bdc8cd1d04044c40cb7c1eaa834343033dc06e60e2779a38688f49519132b658793c89e8c5ede5ea25ea7753858fafb9161347f651dd1da0a2143034aa04187637c59c8560a3db39a4682c61c8ee1350921a4855267f911ad2f03edd0c1a38772a0a82268c8e124a652dd4af395fdca88167a1e3bfa07ba0a21430338031a71386ed95b921bb4f6cc3ea2554c1042861821c66440030e27c14a7e91ae269a789611ad1b888884112222e24f031ffd812ac55af986630957bf20bf52b6243318ec00a223c807883868b7942d8c581d753aea214e21ab3fb6f6e42c994d431cc3ba67093adbb28735a265e5a37f9c4044640b71509924f195ab24a61d170b360871b4bf14e769996bd95dc1c620ce6e26c978166e57622488939404ebb1a8b9315c3c10a7abd126d4c7e80b7356fd08e2030a360071ac0df721664eca6926dd61e30fc73391a75e4c36d7682a156cf8e174b725b3e893bea2a57d38e5f72eb595db62cc59136cf0e13c2b9754db8bccaf9b3d9c2fda5a0c6ae1d4f5891e8e79f3e849c2366473b8041b79388539cdb75341999f450936f050cc10679aba7b36e21936ee70f64d2e374274e9a99cdbb0c35184e8cdcaa424d1a4818d3a9c9268de879aeb922b73c605b14187e3e68d35a53263d3667338c5705a54f6e5cb227b47811cce6172c269fa3aa2d5032df2b0118773a9b0d6b8b175c44f235a48061b703825492c2ceceae4973a0890fb216263b0f18683885fb89a93bfa4096bbae170d94eec692841a366ece832dc8098186cb4e17c263a17df97319c06063c76ec196cb0e1b86ba162488b715333234a02936d630d67954d1b9ae437833e59b3011b6ab09186e38f2a4154cf64737f4734710c15e838810d343096ab626976ad1896b2f2c3c6194e31ae346ad99934ea1ad19ac1cfe094d13b82f830c3c750818ec48619ce656f351694e4f7178e68f1e85186636abc3d2f0b3771ec112d0b54d920c34976abf0b493a9b4956c8ce15cef7f162aa7cbeddff1838c108ce0518f31d0f3a80108462022e23f362022e26f82314444444c156c88e1d479b9bddf213e7224c60dde0317c0c0106c84e1287a266b1c4bfb551a1b603829b1a4b85327f888a94d0a36be700a7e821825ddde84d30bc74c7296316631475ba949202222225285b0d185839e492999184274ce5c389f505277099a5692b85b38295dd99634aebfc6a8164e825a5653d1f9b88cc9c2419fa0b962c5bab48e856386c6669316ff355f57386cb5bb76c9aac9246985b3e9888a31fb6e688c5538e9edb8ddbbfc0f6c50e1382a2fa824275b644e26d89882154c5eef3ddf14cd266700d1e1a690478f32c21011791e3dcaf034830d291c84858aa66e50ba269cfacbe01dd888c2d1540e7991db9dd97b289c92b694c4240955e7363ee138979eb2fad5be25e3845369acd24ae115c44935e1a0e9a439319df8f752071bc106134e258997564cbf89e9af0b828d259c947fb78b1615754a1cd14a947038b35c7ee9e2647fdf3f8e8848ff7863230907516b66dae4d0b06e8e68f1e8327ce8a80a214303092a3eb081847388ce20279a68ffde46b474f40812022b531db07184a35a4a2958cc669651950579206604368c7010154f3cd96832f52b15d828c2a9bea492fe5b35be6e1a031b44301b4338492653c8dbb04925151ed112111111311a1c0a6c08419dcd69be6da2873f82f898818d201c63d02dbac353b6446f8f600308470d9727aa3db4a493c4c60f0e96c26d561bbfd85e62c307875793462ce64cee9d357a71de932c7349ba5a66c51abc38d58a58b866fc7b91a9b18b7389b53acb966ab3ea88162a335d1c46d855f8aea8185385ab50231767f715cd2746511b44848b9350b639937c3622e37b8bc3fcc915ab495c4d2f6d71b2248395aacddda1622d4e5238db6cd7109636a3c5b14fcc69cc0c23e79788888eba32c36d6066710a913a239ae44c4a620e51431627296c8a16958205fd3c1607b126e654b694d3d5c1e26052bef8cae81507133d73c4e3554e7c5d712a71629b9c1bbf35b40ed2181011d1516a5a715252ee9bcb93c4899ba8a8c18a838850822cf5afa13716111111b9d251c54a5163152749b4c698a0f6cde4068819fda34380831d66ec08e203042222573aae445143152741d4242f8d1bf3f289b9438d549c429ab4b49ec9a43a133bd440c5695f3cbd62bea650658d539ca4cf3039c2826eeccc1c6a98e294429c90f5676f41fe529ca40be2d2e8dd5dae8a14e7504912fbb2b13bf78ee234b2d56cb54f68851234d410c5b9674c6e0af39232caa138662637f9c48b5fea761f10111111a95dd400c5b9ae925073964b5b1511111141414818211f2041481866040172460c9005fe3380be588d4f9c828c1d4d62f9e9ca3c718cd14a43b5b4fa49f14e1c5f33a5a7cfcfa650facf8088480d4e1c2b88fedfdf8526ab3771ce985255c6142cadd50ad4d0c42999a04189266a3a59fa4c1c739b68a5c4687ec2686a60e2247c6f50b1bfbb4c6ac3082920080923a48c11124648f940481821458c9030428a0742422046c8254e92fef7bac598baf7d5517ba8618993b858266d49abe9af47b43e088f86011a19352a710a3fafa9e7a43cc2a47f9889a00625ce777ab7319d5292e0a533928a516312c739b51c7792b0294c0fd490c431d8eec78e0a8d31978c6895523d352271b6a8152c8d5f2a714bcc9c81669cc1c3043123b1a00624ce3daa52dc9fa04e88ca88560d9e47c1a079f407b21c51e311e731b17228a5ba3233cf34440d471c37ebf4cc49928c54932bd468c431ef5bd23d6596b14c469c5f35e7a850b267bad0228e797298f82f7145dca04622ce967249cdab75275cd5851a8838c5986ed7a42469eade146a1ce260194eebd2fae3c4a450c310c73853bab6a3421c6fe3881d559f10a7cc5631eab8c91b6b03861a8338fd26ed2dea34c8939f20ce1a54bef59858c6aeb66cd01f080923e406417c9871788020248c10c463870742c208090923e406ef819030427e7c08196284ecfa683374a0af42356da8118863380d13e34d6a0b3268448bcde8f1230369aa06204e7b69234ea50b6a532fc2812c438d3f1c55ef43d3e2e8f64ab3a1861f0e567e52afe4a85adc0a35fa70deed0a62dbb27c96fc8816901e3e0c1fcefa25bac9a3efe432fd88d6fff0610504e9166aece19c274f4c4144c8594cd2c3d9d2fd689f8aff17ec3c9c74d5e64aafd256c778386d09956e9456530bef1d8e5529fd864a4967c5183b9c648d2996b4bcc952daea703aa9ef9e6952ce0c961a74385be5546d5327cca4662a0c35e6709284caab63af25691cc9e12ce252cec591299694040e35e2702edd644ac99bdc33471de5861a7038881e916bb96d19321812860e42d478c331556a592cadf144edb950c30de7321527d78c50b1fb642cd468c3496e3a154ac5ec1f32cf867329393974c5a4b29b18c80dde036b389c50792f2b47e5520dc7d49462fa9ff02733699350230d87fd3351324b8dc6cda1e114f74e4c9aa4383f317386739538966fd498bc241f3d7e201f3d7e604044c4478f1fa847101e1ca861866354f3cd59ab577f2a3eda0c25d428c349dadf58d2848dde781821619021460892e19832d4dbe64b46b482d8e0453e08078a50630c2741d3a696d19233a43ca2f5417af0a80a092324840c3182f00823a49c2fc3c719648484408c906b420d3168c1a2854bb74c29c64c59194255680b1fe22b2222411ec8186a84e1144b776cc60b97c413188ea167f94acbe829415f3828417ee510d74cd1bd70523286bc1a31936ad28553cedcb870bb944b5c38e5efd0a7829560636fe124fb056972c99a1ab2164e923cdbcda19b74945938260b329fbc79bf36164e828c19daa645c50daf70b0ba18cb24415a5cce0ac7b4296ac9f3d126aac2c164f89b704a3deca2c2e94d1096722e83f84a9ac2a92bec67690c6242490a673d352f9a4d12bb1485938c290591fe96e6f250380559972dcd7ca80c3fe1206f679af64c8c27e984a3d86fb8c916e3dad884d3b978a87e93c15f269c44e91015f44389e6120ed2acce2d2f937c29e19873c2de6e7ecd8a49c2e9a4ac224a2eb1d28e849345ad7082775859768463345d92ca5c6a355c6f8463f2b360298c4c7a110eded92bda545712221c93a4a12dcb3386fc4338a9cab59222f7b1b910ce266fc5c52e8df1209ce4114b31369e90414038e94c5e727d7f357e707ed712f27d2ef79da8860f8eaac194fc2647b547d48b538cf6cd6f50b2af887871ccd3e26a964253caa15d9ce4ba2463acdcd51683747192e74edb7968aaca502e0e97b66584dc1274957071da5baf9862736bd0fd1607955270918d934db36e8b732569c24b49a2a95abd16e7b91b5552fcce53d56971caa3bdee44c6ab78fa2c8e39445a32b1944a31ba2ccef35a4afa1a0b2a881e8b931c25b357a54eaea0c3e224e66a9f8da6bb95f1571c2e474c4e26b3d31577c5694f438f7a957c9a5a71188b65e17f2bb64bac38de5978a5d1662649afe224bf98b05727a4f5ac8ae3e8329323279c546b2a4e6771afe34eaa653441c549d7090b278fc8a53439c5299a7482dea0b299a04c4c71d0392a5c08cdac0a93529c5a4595daa9586f2e21c531c7742519bd7f9325a33886d43a5933f332b34414a7927a2b4663c5d44b128a834a428a1ea1f29d5712501cb397d020a237222bc9270ef2629ad4fd2e1ffaf6c4a9a4135a272b7acedf9d389ddea0e4c44989e1ebf4586fc8de9b38cef55bebb556eab935710e192a895d9ea749b633717c71cd26cd5897a58d89d3ad6bc6700d9904b32f7190fe9bbfaab7d4866d89b346915e394cf7d7ea4a1c6f93a04c1c7fb12d31258e679252620a5abdf4e7491cbd2449f486ce923849bfa03d9bb5c5d41c89c3c678714d141d599921711099a2893e6e623a991f718ecb12425ad0167c65471c3e747ae50ea96d2937e224a5d121b3855a8c1f33e2a8f9b64c446519e9f122ce199494e451a231dfc68a38fe485136da32a2314ec439e3946c4194ccb21823e2f857592fe617a54f850f71924f89fa7c8d31d4bf863888c8b9ccd59638415b885312166db4dc5f3db48438551217cc366807714c4af6f22a494b6dd00ae2dca7e40ba664af43df401ce7ec4cd2db7d4950b280389a5d4a72e2957d9dec1f8ea13693b0a594183eaf1f0ea332a613ee73a7dbedc359dd2d9a5a4caa6f5d3e1c4749a10a65366502df16a145f49f18948589d3a83525935892a893822e713a11df4b7ae3589758e2a4415ebe922aaac441bf5eb2d67c261e906d010e4a9c4d5031cafaeb5dcce7244e314e32a192bd966aab48e2a44b1e319b15bf5fed481c4b7ac62eb924bb92a49038ccc624a6cbbaf2aef988c3af25fdce8f5db5caea1c718ab1a25dd5bab4f9a511c73b71f46645136c461c4f2559b7b49a1232dec5c6c0b18893255da3234ca60da2224e69996152efa65abf24e26ce2ec6e8d349954da20e2b01546efca627bd3e5106733dfac21eb4e1c991ae220cf2bfbc41c17e2a41d9e7a6267aebd10e120c44164f969504246f5cf7ff4d0f13c7694c163c76d00c7208ee14f67bb9b244d7cc5ca640087200e56a99214942a5961183802713ae57ed1c29befdc68cdc00188d3dbf7f9a79e922ce67f38c86ded9bba14d5b951f728233f80c30fa7f635b7982bab4997567d389b149732d7676355050638f870926131c958637152bc46b46ed06570c180c70e19300570ec810dbaa771839adacc830009c9c008420c0538f470dc7021f372ae89cc7f44d780230fa7925b37a90ab23554580a0fa718214e6ed07593b9295cee7052a744d36df954d0acdbe160a917d6bf56295b8a8e1f711f67e890418f1e65a88920240c4e1ae0a8c351369724bfee5d52694287b38dee867af9cc9c710e2582430e6793c266e9f211bd9d8e68cd01471c8e25d75597a4b2756ee070f48f3f4949a7e25bc55480e30d690859f209cdf6a2740342e5e58f501944df068350928b06937263520738d880ba799337eb766b152b31b6829c6106d308028e359cde335896381bbcd62c1c6a386d79491dea5e9a1a8e686595e0931bf4078a05d9c163078f33747c728336c3ca8c37c30438d270b6ae390d5bd27897160da70e936433b9e5328f14c7198e61835049266bb5ca210e339c359e785566fa625785a30c678b136db48cc925e726c37157d4a8c5099f80630c070d317ee2554dc4ae4ec02186e37d9fd493942e95f2260c27414d4bccafb649494a60385c6dcfdd5dd8d898fbc259fce2899952ccbc700a65f796949a132659760938ba70781b212b73222e9c92a0d6845ec6cd1c255b389fa964217d2c11112ee0d0c231dd7c29cbb9bcb7cc88569529535938a9cb25b69ea33455c7c279348496244aa38fd8573826911df15b25972c970938ac702e9956c733c52c27534178bcfff81068290ee0a882154d83c6fe1925448593e03e2a7d6ec9140e9ed964fe49574a9029291ceb4fc5ce7c256d4fa2705226899a820af74b750285836c8dc1aa945816ba3ea18b9947290bf22f29d709389a70581336cf2441fde6a5c80107134e49d484f58592f5f432e82007071c4b40e7a8207d4e25945134560c32675e924c42ef6f6d71623c652744c2eea77afc36f426a1239c728d4925937c23efd51b7018e1cb0ef10a4aaeb6a017e1682a662966126f314b226c6e322921434f4f66448bc9c03184533cc98295c818465e656675832f95071c4240fdbb34cba9cd2b671052959ee1a7544cdfe065a0632d8b0938808065af2c179fb1d162755b28e982163d4147ec5c1a300f848411525f46e2a3cd28f5a347906647e0f8c161dfe4664c7da715a31bfc2003041bf811a032768c842192051c3e3896955242d9cfd75bb24a47a5216ef4e224c894a637cac27b451db58cb8c18b635a0acdf0174bd3997671127a7c6328953233857471b4cad679b7d7a376cbc5b94eb6b4eb5763495c181707bf93a2e56831513bc225dcb8c551cc4586af582788f76c71bc525b313a93e873319b394309376a71983d31c8926da5c561e3a618e3e4cd2cce19d3e47abb539ba26b258b9336d34ba9f4344f8cc7e2a427fe8eca4d974766b038655a3a49f6a42e5f7192ab8d762f6a6f63ec8ad35a9734429ab457171ed142fd3f2e840c0ddc68c569e5820cf697ffea67c5e933f56ed2964df2fb56715017751f234bd7b6222241bc7d9841841baa387ea5e89da734c9954da93849ef1335a24ee8321f1527a9557fb2c44a9229a1539cfd64d7e606799784dc14e734e14f05edecaa9097e29492d03255b7796b9490e264a162cfa6944c25198fe2ec7f62ec8a927ad9248ae3fa8c34cb9d555167280ed2e63744af9e985982e2d82526f91066a94f053f71b4189338ad41559253e389e38d1c75310b31959a4e9c4bc954f55d8b675ae344f9456e638dae3671f6ccaeb949d85082ca68e2785b29dafcae8651150fe146264e174df68436356925488b70031327c9e235979f8f97ea9170e31227712ae4996c6e89639930fe66256a9fd255e25482ba66d917255d8c8988ece006251861426cd0539bff13e377fc20a3a270631267b1ad9c637a2f29d95d0f6e48e2a4b3c4cca2b35e36491ad192c13f101d3c7e24880e8bc4e1646c8c7f429e267b6bf03cacd2207152416d9a788849e9f8d143470dfa47076e3ce2b859b68274cbdcb3ed53155662e086234ea636945ceeaf2364ac112771ff9257cecaa6ed33e2686e22bdc41e216d35f5a8c718b73716711e950be9b2d1923cf9f3a8410f1d3d826095b3c00d459cd2a5d176829bbfe30719f7801b8938fd5c5a6812f4ed881b11c7927b597fa1923c7d470a728738dd5e4a824c19fbd2dc112d326e18e2f8a66fe9944c4a9c7470183f3090853889abd72525ce235a41bcd159a97383102713f7d624ed572bd16410a7ce5cb292b42ceb970ae2a0841bd194c2c5b43603711c25832a2564409ca4119e71a2528eb1d81f4e9aafb204252c3a860a74f0b8e1876388aa18b959e27d6647b41e061b4286067ec70f32d08c1b7d38b78dccc991e13c4e880f2725aabbc9c9a2227cdfc3d947a68d8b7df695ac1ece2526bfae649b87e3ab26e92439428e588887539efbaa060f0d427c7738bc58efc95c5722b762878396565992643b41b72fb8518783f7759718553fd4c5e97050997e16b4777338bca6db6653f2291192c3614c54d65f3739ef340ee7aa77cba7eebeea44381c3c845abda45c546e6f389c606292fc72a9564b71c3b94d5d062fed2ee9b311ed1b6d386b584b21eee4dcb06f44ab8c325a2d840c0d848c04f1f1680c15e8b0c10d361ce3c9a5a5a43c5ac3b12d44937ef9ab6ed5705a936e7fa3c2e43205330de73f259a4d08532a8d8e8693aeb32409992ddf159fe1f86f92b4fad99afbd60c072f414ec59cb1c4a865190eb7f2562955f5ab4a86f3e815254a262597d4700c0713b60431424e79c66d442b88bf1a6e88e17049d023c792249edcd088168f1d1de47f4ce046188e214c5ceed4547f99c070aa4b2144f65b464dea1750672aef58291f6f83f0686f13ec0d6e78e1745ed97a6ab3623f7a9432bbc18f203c1e7db4192eb8d185938c1f4a536996646279830b27176b2fc94265d93f6de1e06f92cad899c492f96be1947d4ebb89cfba10370b27b9041bfd9fa35953855570030ba7df186464fdeb57d25de1a09971e2f4de75f6b2c2e9476cda18ec4d85b00aa7936d521cbb7033daa7c269d5526b124acf9f929ec24149f2b549e6091a5e95c2714dd0af9b97c74ed045e1a40461d24f49496730311d37a07030fdaf1564ed6acc0d7e04d91bfc20c3dc78c2498f901d25eee8674879ecb812f408c2830321b8e1844d923c7674789b528c2cdc68c2b954109149bc9df50613ce66725ba526f6d456b734b8b1047343094737f9b4654b0af31548e38f203e6e24a198ba7994063b3125b51b48e884b9e469494d364935a222226594f1ae77e308071354de5778c308c7d917bbd11ea5e25ac68d221cfcc2a68aaabb57b98e6865a11e63247846483163b841844f1233064b11266c3ea2650231aade706308468dd1c4c490e1cd463c851b4238ad09ffed1694f07135ba118483c5f1dca07ababc6e201c2d958acdefae5933bdf18353f21331a2fcd288376ff8e0249cee3f29524e1ef90542c8104347fd8f1eee061bbd38c9be2593ada49049b6c1eb30c68b53769e2af1fe7717c3112067f8e05d9cc64e9c6cb769f94d5017e7d3bed023979944b754c0462e4ee2df958655993bd1c7c52966836a964c5339ab5b1c3c3395dc7b493683c5051bb638b597ec1583ceca2c26b538695b32934a2a314dd2b438591254ee6cfba5776f162749fc24e933e8bf6459166cc8e214e4670c4adc1f5129f68f331a123662712af184281713ce94dc8f6899cab2018b63ced1346595c34b2c19d11223840c319210365e7192d10495d24c725156c9b2e18af399593a29c3eca8c947b4b215474dd1470921acca4d092b0eca2baded6b7779e67015c7bc59a29b9e6c29df56c5c9e2455bff663a29c8d4462a0e722c6ff2f0ad90d147b4aac8f0f741021111d4061ba8385cb988bbe89f394dfbc718364ea19a36a156d5e6d43d50e9c08629ced7636a765e794a88b760a314c5f3baa44546884cad8e1e08cb07364871d2a4d208d113b4a9ba841152829030423810a4cbc88088088f0f12a4cb482222406c8ce25492b8cd37a194fa50b1218a63d62e25e78dada3ac8094b23dd808c54185134d9f3c6b7f4a7671b0018a63ed69d7d9c52499e813c7af177733314927cac91327b945f598948d49bfdf895349a14175cd9c0a9313e7b42e35e36bd9e40cdac4e18287bcf0bf71ca754d9c7da46a5cb598adf44c1c73ef56bb62f6f59838ebb88ebacd26e9522f716e13acb35d2cc6246b4b1ccc4293bf585f3641953809b2e24ec512bdb7842971b0dbb1dc0abdef969dc461831e9551c244988c4ae2245c846da598676e1489c35cf4b40be27587c4a94bece7b484db1ce7230ec2c4373b2909e3b7a3238ea5274e739570694f8d38ca752841f7b2df528c38e92cb317254ebebfdc228e3b9ffe1aad4d9f651471122a4fe869d86e3b55228eaa6f498a6de24c983da5100a67dd3c61e36774cb183ee17caa47fe85b58c5a650464d41402e08483507721fe224d8d70d50b0168c2b18409966736c39b247a62080013ce9af2673aea4a5aa602b084c32549ffdf9cd6b64a8d68e9d02f04400927c124b19458f232e529f1288109b2b2030148c2512b89d89461edc476249cee34b5e3b2ca5b7b84a3659e68e13d268cd208a7a07347c592ac44545d8473fc69d536a1d14c988970968b21948bcaeaa5248770f0d49427425c861000219c649a92bb84cd722522290420083d120f0e9451468f30c280400080e08000fc40c70e1f1608010302e0031d3b7c58e09d470f05e4e8c50272f002c80d5e060dc8b18b1d3e2c7002103420872e6000832603023972010417401890e31608c8610b1d09c8510b02e4a0c50172cca200396431801cb130400e58e8d8e1e300395e71b2537ffa7575f7ea40571c9395a0cf45e618e468c539b66a531059d94c1d3f7c5cf1e0c101b31af48f0fe460c5c1fc5452627992168bade29443de28514b3cb17999f1d1668c914315a7927be2de99588295fa7f5c95d5a07f88912315a751f3d0308d72f2671dc8818a5358690c93b4a8ad6a235a6b3eda0cc363a8400707729ce224a8b66896534d6604486fc014c7e475f29fbe8d6e2564d4a04720225283fe2122c2a538cb9b5752cafd4e65ca8c1ca438096d97ff3d71af5b4dc750810e18e4184589780e519ce2665eb59c3b192847280e17cb478acfc7ad76235a3d82f0e0401826e500c5f935b79fa464e6f751e7f8c4f9b2c5c4682587270ef2429beb9bbe9424e9c479f4edc9e4a6ccc4dd9c38c6cdbd7fcdba898348d7bd4c52c4a28b984313972313659fbc8f7fc727c8818963ef7dbaf79c24cafe1c97388dc624bb4a5eddcf6f8984d3b82d252aaec4315c3c49e3634e7a7129718ce14cae187d35e67bc6831c93384992e06bfa2fa812744812e790139e9ae299897246e294446db48a27588a1284c4e14bac53a265f588b3fbf7ea798f4ce6e52087234e29479b7c268612a2731be468c44993d0a444a6a45b278911c7a07dc4049947643b5ec4e104954dd0a5cd42ce8a387b8e896e97d44c09a7449c44dd5382be2f0d6a541071cecad315fa525dbe3ec44185c8aba44ab84f9131c4f1f4c3c28891a3f9d4421c93d211bba561452913214ead9b71e6822541fe3b88639fcd685e125513838238253dda244912f13d272510a7ba52794fedae18e18f203e7200e2542ab788106b929842bb1de4f8c3b1a4a69e3719efd296ab831c7e38a7b5fe9de813c4afcc46c8d187535cf7b92c5b0e3e9c2b8d980a797b9574c7418e3d9cfdc4055d22bf27e4d0c34959ccaa9dd49634a98590230fa7b3309b29e8111e4e6d97a4a7c8dbf2be7e90e30e0779d184ab6b100321871d4e5a5410fa2b9ad937acc3495e93cce4673a9c2cc4dc691cd198ad700f72cce1a4aaf94e7ffe96f426399ce43a4bff5b82e6937a1fe48883b3f94c5d5ce56954c801876ead549814b54b59aba38c0616851c6f38ab693d6956c5d22ded8683ec923e9489930939da700cadf9f7a29b24b46c38c7c68ed90c299b1a5ec369f3299f4dd5d56652359c4ebcd76b5610d5f5d270b8701bfdd353b15d341cf5f4267da162897a5912729ce164f216b3099749924e12331c5da4563a69c7b5462c22627ac85186538a39c3ab5a744c2691e1bc7d962455d2bce87f0c0791254fac10522ecb2f86b367102e6629a93dd9301ceb7335568aafa43504865365b7f8696656057de1e4e3b957155fd4d7eb85532a19d3bbecdc7f735d385708d71866de5e825c387d76c9afb70bdb8c6de15cdbb3b129439d301656e4d0c2e162d294c26608a1d3cec2d132868a2ce9ac400e2c9c84460b99752f2635b92b9ce7a4d31863669454bb150e1afebf438959234a23851c553826b1c4ac5d2c4b30612a1c6b46c3bb57a633e9291c5b2efd6c656a92d32ce490c2c92425450f7b13f339b32047144e96c4741dafb8973224c80185a30613b325d4c975b7ac90e30907b113637cebf311bfe9917238e16ca64493f9f25a7299399a700ab7191a264693c496e460c2e99498fe4266cf4a495ac241c61b216ffa0415b329b952fc7428537f124e8228e1c34f4ad57623249c469955b250eae7c4e808e73c2d7531254d5b2b31c2d9df2499bd1d3179ec229c47649569b7d5b47926c2e12d545057be5997f310ce21539b9c5d49b2a4720e211cad45febb768949c53747104ee92ada636a64bc777300e16c3aa367b308d9766d8e1f1c848fc566aed94b95cde183934a222a2ca6374d52b41707ebd48f4b6b274813797150ab31fd97922c9d24b78bd346cd3896aace4d90d1c541ec26fdaf532ece9a5b2fad5e28e955c3c52989d74653694a4efe1607510d93844a2652648ba3890b9577db1764ab5a9c627629d1c3526871d25c4a96b049bc1013d511e46170358b73588e8f4b5d132a4d591ce4ec4af63e154edc2616a793b9b104195a54a91e16a7aefaad2d29fe8a93d4ff9554f966ec2f5d71180b556a4d1e5b718c16b754f4db5773c48ac37de86aa99b13af180a60ace290a1a984ec3b9953459269af4ab14aab845371b43855d7a4bbaf4a50b1dabc090b53f245a75893bc8dafb1d312ae29fabf124a262b49c5d64b71d0519325ea4fd9d54a8ab274de4949f4adfa7e144735f13eb4b8288abb2ee8d39a7c330635149820327ec84ca149a540918effc9357393339f389b38d96bd56fb44fcc13a7d3a877a562ce34aa7522136dd3cacfff0957e1c4a9c5c5c43c25c8fc6313c0d8046b966412d5444fa6094e2acfac261d37f81144b90046264ea624f19f6b4a6b96244c9cc460692a78658a4db9d5fa6833cc15c0b88439d734559e08f5e15982ffccf85eb9de2c632400a31227a1ef5669ce7486ed28718c635e9b2fe3c76892491c543425e525588a29e92571f4cc184c8a991a4a5046e228266849424d12e4860c123ac078c441c993cd4dd4a4e34ae388539c91b64934f97209df88d648901d3538ef2186166f008c461cb3af6df89897e99257331c056896c06004188bd01580a108301251222e0003114713fe19b5cd8490330fc18a8ad0daec4b3a67431c459db0300f194eca15e2dc9e31e95129462ee7530083107a79ca5fbe563d2532c01804a2e277cda44e102719c3a9cb372564521b0b6004e22417db241997ba97bc3b800188e325c1dc9214f25e53f80fa760e2dcb28dba77897e38bc09fe6e829aba0a96d1018c3e1c36e94a9254a2621d33187c38853925e6087582e68ceaa8771e3d78141ec0d8c349eb9f583593ddddc430307e00430fc7d9f07a494d5fbca4f270b4a4ebc4b4224b9ffd460430f07030cb72f2fee9216488112222726800e30ec7704afa79a6668cf41daa0630ec7090f5f9ef4b5292d9278e4f00a30e670b9b4d448e7dfcce74385ffa294b66cac409de88d68988cc01a52cd54f9e93e72459278021879368d154998e8c4b718fc3e1745310add4e4fa277038fff9cd8a3a499f92526c60bcc1d9aca94ccce91bc070c349b3de84a92027a69cb6c19294a85c4ac6940d471b657949d674e1d2359cbd57fb4bb754c34969cad5ddde92ae631a0c0c3494080f30ce702ef962444cb8943765663875a6bb2d695d4d664a194e6e2f27a8bc9aaf929e0c279553aeeec4729e9f4700630c474be17279a598934965f44822223eda0c30c470cababb4c2e223ec31e063389aa87c6b0984a2b258db9e4d80b13fb227259291f6d86b1011860389b286682b8499b692e4b0130be70fafaf7bccb150760f06398b143086078e19ca6a4307e3f27a90675e1a0deb74dd07592e6df5c3865f34aad136fb6e4770ba75cb16b9964a3be9e5a386512e36d8e1067493ab370b2f2da74112a9626130b0739a661c3852a8b3d5ee1dc6fa5f4bd2965a3a315ce25cfe7665c2dc611ab70ccf19a6a6b93a54a1f154e4a6dc4b42499299c543ab1541025261db6148ee1bb4ef2924453a6b4281c739cb9f6083d22f54a0118503869f1bea092b856c2283de198bae41795774d6afc9d70b493c666b5344f75d484c36f75e61025d455454c3826fd387997b4845309a373d666cf624809e7759131c5f09bc43cf1241ccd524f1c69eda6491c09a724d3e624d9346a504a8e701abd4a3b155d4da76d84e386b64b417655523717e114d74c1c25a913173a26c2c166e4de7cfc9d0a1ac229cca6082d3266ea13c29bc94e369346837038f7d34bd13285ae28104e652994304a307f70125b364c32cd98620982e183d3a5fdf886aca4a4cbf5e27492d61c1d27a759125e1cdf4dde982428258ccaece2ac71e167c147855075714a36665d426a2ee1b35c9c2b47e45e49c2e6abb8385dfe9fa9598d5dca5b9c4446daaebc05f9ce16a7d05cab165f4d7755386a7134d1b77aa79434b17b1d1fa48b169a5ac86768b0f238395182129354769a2b566671ca7ad3a6b24247c89d08386471d4d9b0266354dd944e627132697272c95fa7d633589c747dd5c4d8cfa0bbe415a79179c2de62a325e9dff1838c0b82c3150719f4c85fd04a623f6fc5d9c4eacaf7971bce823b860a74f0c0c18a8390f9ab5bafe524398fa00539c30cc6b18a9352bea35f7f55c531c97fdede6614cb76442b15e79ed54db6ed95e2dca838e8ff90794fa7a73857cc2f8bf132bf436a8aa36a8850d9e443c86fd0e34710208fd44a710cff0b975d1663eab3c18ec4a43866bc7cbf12e625e31fc5e9c7e4fee885a8b378440b4591dc52ee9ea7a4e82a09c5616e6393909933e6f14071b224b2c692ba2655e788560f1dca383ea1691226a95d7b18a4b97178e29c49523b751983bbd883c70e10e0e844f1b766622e4f3ca973e2fdf3ca9a2431534a8f683d8e4d9cc286cda324dd8fe0d08459bf427c2d85018e3ea8a40f053351200c06026140180c06059096b302031408002034248d45c301a12cef3a148004433c304638301c2a201216140904034128180a8503a230180c088641c14028308a57e224db040cf82070a0f7f887220ebcce180b96914b856d6ce8fb5c95da84a485cef302beab456255880a5974447c2986204d75e767eedb39224c3db32baee86bb7260826d40ef368eed61a178b7e6fdd48ee5ea71b03c126160811387f08093e36ee9366749e8649baacda7bc5e99bccb10ad0c6e4a1ff2b05e9372b736a56b47c34181065780c34716b84ae4a147d89b064412d05dd5d74ba909f0be2bf63a3bcca3b99b0b013ac30dde19779fdc3c35025c0e7ed58b186b48b4bb8b685f5b7e97bea34636ab71078cea0bc620a6a2dd2ae7b5295d24396d3dc5397a1a703634eaebcc8e8a135fb5a3ddcd30d3398d169d89ed4d9f43216e91820b6356ebe81aa8b6745f678889cb1fda3adc2fcfcc4995553008af2c9bea2cb8a18e844f65cd6eaa8d4c8ec149b68079dad89d70b4c16397481aa49515a7c9449dc2f5bb1a78bfcfa67f5ef7931fb55a0c1bd41cd7f1acf50991548cd395878896988deda02138578c89c4da5744ba18a42cfe743f33dbf83590fea59e55f4c2694658466cc0afe7c8a3641327eb3812ac997a20d16e0181e649c7687902d4f13e13473ff1d38c61d4c5b84081de391abe8a9420bb330e2d49dc2d0896ecbe9358f52d4f4e89943b53d4b698990b5450ca6c7cdf4ac0f85e6043cf5e603866a1207a68f3b5f12a65d84231da6b66c60833b7d6980567fc356d8e3bc9d4893f045d79900f747863f18ddf282358312c7f670489d2c96be80398c0ea25cf98126f84cc0ba45f612e33820b1de3714b1364350eed405e60550df131c46471bdc83ce216241e07e228fc26dafe298b37f022917e319275989ccaf782340083e4b93c30b289a3b5b4cbc1760046fc38350d37b029d881e567af208abdf184e60603a1caab2e823b617bfc369d8d3cc20c72d0224350e445414c13f747b65182918abad6c4bcbdca3ef38b07f16233264d3dc54ba178c8300f7290023fa0540ad65459332a9c3b9216e04c5d53d014891db4a340d2ec95300005d0fde734b7f00545127918e817b967091631131a52a3a56071f87c921150224091c0bf24591b2f6b61af526e5a8b1b233e25f98be7740f6ade9c0da2ad06547b24e2f7bdcb17aeb523765712f5f4d6e0507f151596fb7746d3cf86728374d5e590fbe9d4c284204ea33592e4084f224405afd2b5b0a5e3b9e9ec49fb5ea398249ac6a41a96d45bb0a2934882ed30aef3b689679aea0199f8c856fc3930cae571f3614ccef1d34a578d2bc47dbc9b5b2e5d84b738a71422cb1f2adb83702b8c9d21420966554d646cdc23198fd942193ff52d39e05031abde2edc92ef73bcd3f44a94f403208b8137406ba3c75b1db12ba2292bd35b58669ade180560511bf2c5cf26237efa222ef20322173ab211e2abcf8aee875baedd8a2371a329196e2343cfd8d1bda382a6e51dfc0a35de9794367b772def4dded9e372edd62dacd813757e9d6f17102db7908e3f1212f39e18ee6d53b475cd711fa67d0ce47d3a8f808aa7e668b9527f71f03126b59349d8310ba3a7e26fea131bd8cdfa99b9b043be570f59474ee6c9b3de984b9552bef5b08f075829975ac45751140bd663e2f2d9398e2f9db4297420c634c7e03c55f93c1a4be6684878a472b45f7ae01e0d2cd5b2c0f2785f09acf75ffd0f917d19e309d4128f35e7aba48385363ab535a529fd3b2fa5c4bead359229fc812f95c96d3a7b4a4ee1ccb11fd680b8eb1f3a76c7ad64e86029f3913ac47da024a231847c784ba5a1e81a94b13666628fc9231889586655b0ebc4008b2c2b0c0de4c7626fc8211afe9b8ea7b3d60ce2290617f0f22cbb5d12a619bcd6fa36f7fb5830276092123a095a81dbe1e3f07313b439a5fc633a3f02b33feedcf37e169467fa74f0dca7dc4beb2c5dd6878d08e3d513f2e9b62b1d868a83ec7fec05f79c583377e8d5e3c69833ebf61d91d2167236782d6deda21d1d5af3eeecc4142a35f7e4e05207c8ea4caa45464f72d04e8a5b91327c85f26d90d70ade3323cbb6a6fca20a524e33fd979b3d7e170666c1048989929b876d2808cc5c50e8a86090deffbad2de28f4f3bc967478060ff9f61f933d7c443e31141f832566970ee4d0a21b531266301264515ec18c688cddc1e4412c54d83511fbce921b9a57ae18c139d085dbd1e1236d3d17cfa4b224e47f430ad7120858d0969df783f4305dcac4d4e04bdd9fc6f2ccefdcad58070da5cce241403a157605eae761af3ddfe2b1483e8ee65cd36100a79a35c150e018e32aee39f021e52487c40fa97c227cb8f372da7d2fe28f5b213404437271ed45ed1e9360449c01398e7e36db7c2832838fd0125cb612136073911c05a1b5c3cc37658cb30f978206b301f753285a9b046485c188fd01ec97576b2f995fcbef44ce27b99c490509ae724579dd560e040b409bb38777a62ecd2d6655f861296a279c5f86e41290252a4f41fb55488e1f91659c2729833031b65b5771cb9e1d1f7db6859d0008de20d80a0ff35d353e373fedf9a6b1ecf1964856cb1ab864198b5ae8f1e46ca1fa9546bb1ce84d8ee57d14f865b8e0e127cdc2ff94800f6a402d8f5ae1944971af68519206598913672baa287db3fda79209748ca62d3267a2ba9b1e07997273958ffbda5e7bd04130c713bdcce991e0638505258b2212bbf7e61622a44d2ff5b01e4eaae9d2975563b4f6b5210d750bdc8d3bcaae04bb7c21ecd785060353c7203b277d54a1b12147760b159f117e2f49c211917dca169c1902a83df168f085729017cff372363da1996808e7f430da685c0f08266640e9df8f8612103227fe049221a561eda03fea8cd903fe6c8fe88fc95274b114f547623171cd9ba90552ea313f385dc2b4109f5fead2bc4d96977e348431bd257ab28681717127f8f241671c6f31b2274c5d97faf13a9d29785110f0c15dd9c8e30975d17c715eab2efe27685bb6a43dc0578ee25007807c265db7de5eb247cb64a9fc64c63a0850129a38142b0f97b271a49a9e454622a3995804ab64aee3af98534737313b720975a0ab56a1a816c12dba66dabedd6a6d5066bd36a836bfbcbed26d1f64897d79a0506717b9c730bd54945bfd52a69efcfc540e89297e0132c64a42c5c216073fb80998d6ab3568151275d06a68627ec3b7ee9075d1acbf8acd1c34459310bfd8ba55a7a7630d957228894e7383d2a304cdb519625731ce82007619ae4bfc4aa284df2166ce19e8c487b8a9cc6b3c76319898ba26eeb9977a7c6647deefa67952b3a37f21ef19eca085350d366a6fc60ca8681587511b4957d5d6abcc21e0a064fc02c04a8b795929fc64baac696269c095bea936c2b15955df5b1711fb4aa432c432f56826ee6f772e82d148ddf941d34e32391a51369cf0899a1501e583d908d596737d6a20db992853bc33d9859a3128278f3540c40beaa9cd975c36eaadd6233061ed4aa6c9f628c312e3c5a74d352c8b2da5d061fcdb8f5fef69cf4abe07f9136a2961d6f7b8b0a13d1c2e54fcc936b4baf3f115b20d27ca2764aa14bdf90bf5584f6419b4b02a008de1b4c49bc9a33796f5bf89b08a436755c50d630f379853155b9015d5ac43ba8587208a544c4042c83be58b63653bb11a2e22822b472316dc18ae90a5c1f0a89601c7723a3d1c2e2970074410ac9a1292277879324bc24a67200e6831e18dcb131d63f421b93a4f8cc9b5ebb486ed2b9506ff40fe531663cb07235d8ce09dab7670d7d9164ac45cb625e0f6c2d760663c3c999251ff0dcc93143fbf24283a250a6b90128a588bc00c3cc0027403d83ad3c11e2cd8e45772d3795092c09f91864549cdd13113ff070e90278f0cec37ac69e7e98ead020c6f5cb9742ec7b4330ff8087c5c3ec3ab9415dc9f83ea9d1be48a2f915ef0b55380814f0a66984bd82209f170f99b8850a61b43d1bd6276505261485eb326f610c2d4df1433aa649704f887c5a918600740d2272944a388e3c7c4cd835b5d2d07b58e0f388e393840d15329734634ca55e64d15e2b544b9bc0646c139f39945e135d5a28e541d1df109239cedc6eb6c17b65c70e9a9a27a981affc2e7198501bb7d495195370e2df75df3437516a8659b398171a57b7aa33e0183f447e2fa5ef190cf45b1bc629ee2fdc8439943869a8b13ff05a2c7c1ce5b6244956189f4c090b7a5cca88e2e6fa81c3e2498baff6e851fee9e86818376b942a53865ad5dbe899734fbd0aaaad4169075ebff5759994834d1d200fe8b145747e319fc64e236e49e5e7dfc7bb6e54cc2b4c8efea5b95f01042691ea22b52f634ca6ee45ed2d739eb4256f43546253794714e2337bf570ab209cf27bd63df9757f8a05fe8465d6493451948229c7798f1fcfda0f3a9d7652091136daa52f7149819ab986c5adc6a602534bf34e46bb5e63c4cbd7ce6510844cf0f927e044544304b84c2d065cbc084cf7c06725447161bd0d30a499f57d185aef9dc7c9d020fc4839ef030602ea2be04f5e741f4e60e45419cfd543647013c24057b2645d896ba4206ac1d90600b06787d372cac5e9408b53d1559cb8609f4070020e90c8e1fe852906eee8b87b8e332b25135db949202203c23391f4d5da7b0f43a76ef16ac6f7659444a7e6b2fdc7dd56fe7f15a7df69343d36dd82cdcaf09a0d257ce0211694ea4dc45441e127a0d59e779221697a01d9fda7a086928fc9981f5657e7bd06e4e22a7e5a718b37af76872430f120c9d1bb785862d5776cd38a86f750e3ef93b033cf3f2a619c1616d953c3fce8ba66bf700a51030b0ca53baabb0d20a470e58af38b278d066143289121b00089847e78813a6b2c11c77685c01702762170ae334344dc63847e1fe50a1bdfc9735589b8ae684ad19b8fad9265430ef05c1a759f7c50aa820907fb9d1ca639454a444352e0a83c6c33abeb0b73ebf09d281f681dd4e4c5c82205b2422b72e85c49f6bd5fdd911b28921746327b319b1bb18a225550fcc6b33cba4bcdee8f3dc6d0a421b7bf922489657bbb36e084e634887e1e2259c0e68e9cae30ac229cb02e922e644585441b4373d052d1fa6830d206d51c6809680d3438b421349cb4c2d2aec4401b0a05946118aa3cf588af67293fead0ac58ec9d2692c427b4cce20320a67be9b4a9fcd2da0cd627eae39d2bbe13733120199596057dec4eb6404112323c75ad7f24aeb639bd61025a2ab9c52a6bc075f09e665373071cec9b515881c8cb03abf51393e31b4a30f6b763017981c7bd5fca2a5a38cf1d116cbcb8ef786782b7f9c70abc6ad57f525d05d61f7b06cf05a19ccc6105b2e7eb99ac3e84fd34ac6cb15bd426689d9f4544b82af20385ae88690b9b9a75f05eb3a3df4d9129a233256d4bd2718ea97adb6f35e7f699d47aaaa9916f90d117d478da3002fc2507395675344e076d2eef763d6de15b577ca7a7f472e4efdb9a266d85adaea707a1d9cc99c7528d4538f9fe723e3b111fee09431f5da19a1f0abd171ac3ecc4dc33fe4a6978da5296b7837bd6263027b90d21be2acd262d561ee21d3f7d4e2ee331be28f6627199cd0d61915e13a798be29573191dfc401186cefc61c1c7c62920df5be0b5168d1eb6c74a92ba37da0f4a5478aa1aec6440f7cf88c548c944221382838773d15d1393907444d0789f78543ef616d546a65fcbec4020564801f7aadce33745d7c0d7c6d58d7055a97028cc4f52a94cd2f41fc92308049c4eb60acc27d4f17a708568d43bbab824f73d03ab2de7b78827a3414ddfe39fb6acbccc72dd45bf61f9a0cc9ccb10eb34060da1b23c4da089b1d6c5a61d3879bfa715adf9b999ec00d47f6a83e79c86263be84629933ed99fdc5064fca7b984e0e3e8b0b0576b0aa0b2825a86d86c9f15484465f75e96a7ed2c036f83c5aac8e8ea7cadb4bdd845405a167a73c70d5982992350f8e4eb8edc20b8f6f63d0ea706d0b73e6e5cfe0c3a136207240f063414fe675241a548ed3ea2c8cdfab23766418dd3f0d916681baac1da6ced54b7b52f541d69382080a73f6ccac02423db217b5ca11ebde4dec8d4495c42fff363bf429d5b529dd45a0a42c3e99d1a69ab2f35e8c7ef80de88905e5435ac756eedb990826f26bf32429222108fd220edd100492358dba3f300f3fef093b1073025bf9cb7fe43d9372a9c4a197be4555763a0c50f06ab79c12f03d597876b326ddbcf25587d1bf6a61d5cb13cc986a4c90f421ef867c1d485245aeb8d1ac92220f19b0fc48352e2a6ba829a06ca8f8ab9a4d3a55188689db705fed2891ccbd2b53c4d3f646c07ed1ff2d4e775dcfe36cf54c6f5590f85c6a9dd4ab7074ad19660ea2a1ada61789ca630569e5adf84caa93159fe300d8e7a60e96cf34ed0836a48df87c026b8984e10164e43c456e9a070af7cb4d506eb4799b6416e8ccd80c25fb611dcb5038e68c39beee6c245062d33d65e00773c5a06dc9dfc9a6d342bc8a60d12cd01d401b792b56e489aed7059ace731f4aa7402c05dc53889c2137a995056cb299282daaf2544f17185d41fdefc97ea93420c0993e2b392ec9d112c6213019a77539692037a27655f49c2f49c517ff3f72a7dc2890b7b99eb2f95092680a49ff311ee27bf5435254ed4a7548250b938ac9a5d7cbd8aa302e582a1757a183822468f39219c1e8151631b9b8ac1aa65f8ee254253a267355a8c5360ead8b65a7066f5a71d69a7934f73a9b6b05469dceb01ecebcc06819820e3a8e14db2a2e84098b9aca24bf86be12aba8d28903cf75e558069247fe2670562b1f88aebc2ea1c4d27758280d10e7265502591f451a8d2923cdcf13a9d323718bc8ecd493c63b7f4610367e22cf05cf5e58bdb81716eef101b99673a4de88ad9e3ca4e862230de5bb1c22677926a0833644229e34ac53bc28d4275c8a6ec216e058652a7b0c573507a815f5107b94e1609e0fa93988a5a69f9b44ecd2679412a7eb9d6f6c2dc61e96e5ee4411700fc595e6425f0edc211717aa4db2fcc2da69cd08f48f4990cc1c1a65190978b2c8401174ce9724efb8a7074ff06efc86061ff276f94e08de370e0f3ef6db0f9ee6ddf286f43d00702f798a77c737bcf071f07cdea1d2bcc15b9e411a7f31b65f75c83623a079fed744c322141a68bdad95f7a3e9aaf7e7b7166e4e2279b5e16517e673a0997cc247d9446a776a87e8d986bc3d4003961a944e239fc1015a8baaf909e657e8c06f85cf6f3d3943b12555bc6f672e0489b6436768bb13f0ea7f7d0ea449a6adcb30c0a00cb87d5baa94b7087382ae06a6097ed663a13e55861086d52fd5e640d8402495345a30c5fff9fa2d1f858d56c643ad361435c85ea1b1ce98a3df2de18e097daf35a9011bbf5fdb9eee63cdb36892c57e2d9edf2dfb85890c48081fbf1746a82ce09b42e41e9c22bf1311dd9ca8116958acdca1aefecc97788070f02e5a192288cb20e4eb642d4595c544b843db4bf561575a6369c7bc938a0aaa159d04537ca0bb9ff049d23a7f7b19ba08eafa8c84ee48602327fb67ebead6cf4248102b87e4cf2fc61aaa00b596cc322d0e7222c3ca8e11eaa974d63d9626f6b2ebf07234d24e31c5e235ddb0af43049b3840d40e7479766be48166a500bb1dd0d5780b5145e3b23db3691867dfe21b66f96005df8741016a7b881000e11da2ec9d96693c60042adbed1b87df9951cc6a552d77b8d47c383d217bb393fafa26e6dc1f3581dfcb813cd5b7dc3d3ec610f383f2573b1abce7282cbee0de2f405d98ddf9d0112420c31d547dae2a04f62be4b214bcfce32d9af66a6ee3599d7a0dd1608245da1f5fa21260482621259a7fae48ac7b17218c46d33348bd3e73562a9f6450ae6d3b135109c7e7672aed415bdf4d27183d8e269a3b97e0bfba4916fd828220502526c5cb14e0b8f18b6a282d6785f4e71e57996f38969a80480740fc95149e85e04adc738962f83e28cd989d87bad5a18eb03c43016814a3ccfb7067220ed7cbb1ea2297e8cc4849b7314170f9ba8ac24b65128594d633d18dd03f2c135f03b4d767c2a880852c95645881c79018633ab97c54489c1b520ddc477ed8a0f5b22f390340adbb1368634972c3ca3b62b15d6f099eb88a72f2f8fc1cc4a790a1b79a64ee5529f5355250c1aaaa508ef5a40e8d2bf0ff8837b0593960f4ae4c67096fec0dcc0aa638ac353560084a963281843a2235174ba8408d05441c0dd19ca452fcb38406db68a17ad1c2facdeaddff62c13319db28cf41e95224594c40384dd3656d9a266ff53d1627398292c7951f270e9b9fe915f6b5cb6ddec5e0729ef7912c161508c80c4e7380af7c8302e2b7cfa6bd7e38c2ed64befa8a6812fa522fd0a420f16a3d155c867faa480a86faaa7cc637f3bd046e9d7ec15b54106d41a684ee4ae6c3d596409cc60b6d9cd81cea7cd75606ec1c1d695c4da22a1c751d91d67a2707ee57b058bd388718592591a532688b8569b31a911409eb10fdf978c7284c1f2c35906a1b13b697a402e64481580d1d6eb61aa76bf2d99b5b7eb2267932b66448c89969abf9a6af23288a12ac46339b8633f8c38b8b76f408ed1a218f6bc651040be7cc0e666ab505a9383ab337452b9701469f9cb7dbce88cbe210e22756338c9e9b333aa6a94c4776008326bd43d116f6110836b47081319b58b21f6cb82f7c04684bff88c42d527c911c447a9d484a7d1468a8cabbadd18f335e34d004ea2c61bba717abdf41fb683e01d4158784f72e09c7641351ad6997b2765dccf1f8441a2cc8718888a495656765d082b134ed2e534af40638031fa567a2abb1be315788678fd33b31b040b6a5c5f9fe06c24856607a7e49b2c3cd04cbed9249018c11a833a79d531e2d76667f7cb7be796240683ac114f5ef86d6525438673b85a2c25a30f8557c365e43077188127bfcd406436d8f9f828a9f94adf68d8bf2af7804907a1bf096237973fcdc9a97cd9c4de1e848f325e41be61d42373acee7c1a244308b35083e49c27489d6b9ad60958c142f4ae0ab9cd15d455db473dc887c3f7a520160e442720200828ffff2536c6d2b165b1d5e3d2a8c4de09724428f084d4f0dd0366d51e4224a7ae1de23896d267ec92480a9d645050ae7d3750aef3205bbe93f12186159c74acd461931b52ee2552396148259b092cc491dd41f7712c1906640607fa4a3189db23872746aab3270c49b3512970ef6d204e162146091f2d0036453bcc34e0b9403f26b6c461c624f93366413ab89829d8d8979345988aab48accabd61999706b439719640f740af20451c50ea0b2969c639b523162075378f08116572ca8b390cf5ea2e3af5ffad6cd6ffc2f590128c26d729b9dda1a1889a45582c283d41236a38c569accc319561a35eee91fcd2f76681c23b97a17170c1155c3f3877d3c33a6512c09f062f478d32f48345faad5a3a272df68e3d393af8c340aac97eff3822034757f9a6781d45614ecd6c3a784c1b67041efcd1a3511d37fcb49ca20c7c05487a034a6e13b983cb470ba598da14175974cc5343e58be1f46c2618afc8e32f0394426a60edf653fbe7ba2f4e3176ec210b2a892ef91ee1c28c7c2040befd75377e6f891d1743198baf4f6668d9d1a990d5c4bb9ae1436297cf1ebb379e4fb7e55aa05e4307154b9b5c2e99ee72dc0834321223535dd97ef2f92b2d86a08aa82afe5b1f5d259554244ba6d9fcce28df31748eb1402e9fb960bfebea1fe42f2247909076b90b64b326212de04b56ed32596673024b3023376966586e3294d97bd288ca53296c96775309a742031d1841fc9873e49902e3edb0f8d3751fb0fb5b5c2f035da061b65c3edd4866efe98a47dea6b4c79b1bdd54e9bd6b70049200cffa4fd582b02622474e3ac79bcb18141b4cda57a1c7483aa92cac66a18be4fdbe23b1528174ee58be4847883b6b2bc6be15c9be93013c15c04c722d889e09504f747a0a95e820676f52f32e61ea7cf34c2457a1b6bf9ffc90dd27a5b309776db7a94069666f5c0e9b5176dbdd3e8a70dda328c9c6dc3f9f277e414051e612506c07e46a0750f0d4c85abe18411548bb867d97719cde8abbe1a4730c9659eccd44d7adae0976f38624d2196f9b6d3f686e1ad4874bf194afa4ed8ce1fce62954fcaa40a19eef3e1a1a5031e2d2920fbf23344851d2d0fec40ad8036da436e891608ce916b28c14278aa3edd74acc1e07062b804823aea9aabe7269702a0e6d5a59f5efaee29442eb11b2362ce868e8ab5d95b61211079e2138eac004ef29821925644cea37d8df459881e02686845afafa21f190618d8a57eaf9fe36ed0a4f086a08de7d87fcc64824bfd01bae10e245027996bbfd882145604356ce3d536e8ae8a82e1091cfc48542dead1821111ea3489a4887b6dff332421d2340c4608424e46c8b46877835802a2fb5856d34d00847b8727c2891e66224eec00a8925f48812c8487b5a8bce6e7ff35b3c033d98575912ce06c74e1589b59b4ba54118b224b5e1557e032b0f6981fb6cfdeac7906b62450b86a141bc8b5d842d4182015ce012c30d0634895a9803250c3ca6d4dd48b1a2918a552384552606aa010abf595ba9aaef045b462aa4e05948dda281735523f6a50504aa7c4a892114d18d08443898e549b4a293a1550052aa36c5427170b72b3a7b925270da6551a4f133480de681c3dd121dda3034da5cfa3e6a892de428d98480fb9915f7290505227d1244f02c881c491131992eb9d3a5cdaf4114a97444c59a99d725003f5a3360a4489148e221494da290cb55009d5a1428a462585c854d3cbcf85e7f4705983fa523b05a67415f6c5ba80aecd85f39a5c89abf34a5c0457e0aa5b1965a23a4666e8f4862f89410d7fcacea1c73e429c07da7d8758265742b55fd18be44a580559e0b2bf7697dfda567fd6fe0c6a535f5817e902be4617ceb56945b28e15af48af885591052c836c6ff961fbeced9a5b6063da0dc7e2cc40aec516a29601549e6255ce9095912a11a0e89a11c422591a1ec880bc16cb03f0d019f809ef803f6607ba314b524793114e888c0c292c4287cdb179b8188be4f3581c0087c0c027612dd0c60a414a1c3b2535bffcd4ad343c23c6f3ecfc38f9e98ee39785c1885bdb2353ffaa7c3a94f0bb8bd654ea67c96090430edfc020d92e814759f22a4ef642385ed36aad5c5eea84cb89da96260f5fe6e6cff821d72c648e0a0646c8df8161a68bf95d842ac0f650848bbcb01b5f95c1eeea549a4c814a83bda867befabddca007f068e0fa7d1ea29cd9a4e146d1218e658401a90f9d799059367cb456ab8abe097ec8291d298eb65e7c495d65f4758ac3dca857942cb4725e1c73516d680d1b3ecef28851df0a5b0dda78f14d1b7179a99a0a983be0db9b6dc38267d9b4f1e1659b1a999aed9a3a5b490dd31a011bd3b501cab79bcca56b004ec80aa405671e23b71f134f164c24a734e1b4e87c9dddaf147349dc555241c5a172096208fd802d3e2db2cdc154e7dce0c2855eb02f8460aa2b5f9e0fa0051e83dc69debf46c13eb52e8ed105e83467ffa9adfbc252cb09f3e436c692d3befb88b47c71e732f17dca116b1d3e73f3228ccd6996a728746e12cd7616a6ed92124ee83d4fd86fb268e16615812dc30330a24ae3738452041883215d7cd1dc44bbd25820dc0a5e45e80192d951c61e9ef4d70cff9a7103b83141f74e5a24cfc76ff2964a6447cf3e99e5fbc4dc8cd834a9cde696c9ed9b592965841dae437e8075289802bc97e0104504feb8667936481daf421b9baa4cb33d2dadc9678483284a9ec6ea86d98d1e2b3b707709f8e2c8f0daf5653ac98b56bf2053f5c13a57779ed7f57414138376501c52f06e0ba3494c6863ccb45a28cdc6531e983e30e0d5e068a42ac978002dfc68d81a693d6af41550e04183407049a5bbc3734b6fac1af1ff4a37897447e41af4c2d2c3e54aa286673aec2639741878a6e296c149835175f6c240e14a38c4d8e3c255087c4bb632ee4e4013bca1154c79aa51fb21c3e14ecaa281bf4fc4524122adbeacaf7da4dd8562eb17a542649b3560f7709f3652718b91cb76757cb0432f6ffe7f027f56f61bade0160169c790080090f6cbe7c1cd9900eb223a9fbd410c8266283e05777d128f404b8cb2f597744ee54f19c6ab2744f12cceb0dac2e27dabc23278f8284c818f4a1d03db8cadcacf33c4a6915ca7f999337df09c1ad6e7627e4d922c701db069bdc80cd6cb4e1fe53b71643faa7f617e75135ccc5416477811168062313e2903687c16500d69c02ec664b8e961cf00a2bd12638d2edada573fbfa2a4ca37a7d234725913bfec445a11d249eaf0411ae5a8ed064e00458ef65db3c92afe39df973a7f8178501603d46122aa05a1349924b5f47484323a597982dd084742eb2fb4b2b215f3ef808e02ef1d12c1da53ff064fdf71fce2d655969687f712843d6077716294cd6a32f02d659689faab0030fdf7a85fa1b8406aad19e6e2e1f94880c3ec18cb0716c22eb1611ed99fcbd7d285dc7d43ec536f2addaf7cddab5239a92cc291fd25b622bfd7baa4dd71b217b52094f66cf5ed3b046088bee500f05a0cf9c7657642b13da7dff9cd9699fb57106a0ab2fdaec9211707476419212bb885898475dfe0501d52773f83a42a246205dac4f62c6e4badf8c867caf9499e8d48e6d652c5ff73326e3fb0f4a5b4f671819d8b1366e41180a2b1af6d2c3f98795fda19ddccbc2875410074ef0a2de509fbdc0d6efc0833560a8f33e33b20439edef953f1df191a9698154beb36fe89d1d5aed8ecb87efcd5058c713657a3f5862d5273ef74c0dd09c667b65870b155026af940961c55de7d5ca475ac027592fcb22cdda980034d45c1e64aa7cd9fab18052e582bf36a4b5478a4e13348faec73650d4e321840dd3cb7f777968cd042744c91ae8c2d291ddae021e3f8ad0df6df7f9cc30206228c9ec5f182698fbbda955226223d3c9db4582647a009f1872866d6d7a37cc384c5f09ed6f84fb7ffb893afc688b47815aef19787124ec10ebba6dc9df36fd352978b9ac751ea47906614c70214e00dbf993c54e2f9bdafc7b64d8df1a63b58ca8e19a56997f884082c3fe359305436c6eb8419fbb824b6419963062e3532367015584a673efd748f619194c6afb61555b0abbaf7cdfb356d2d39c6b0d40c49dc5d09942f2840526a241ea2ddb36b1e1c0e48f1227d767344f1d3d03b6255c6d3495173a6e442d4534cbe575259730b97b91279afc7236d34b59cbf40aa2a4bca6e69ede4684e15b0baaef96329731ffda80047c187a8de52d9d601104b91683bdcbb0a67a51c14c47a3b80873bd1ac7186d43fb6d4f09d0bee4fb72fb99445079c86698545c09c2853146cfb065b2e4d210d52a089d0eafe828a274498bd9c5229c9e0a3e216ba01cf7e0c6965bac4e6a4ea2aa479037ee4df755271d8a661224ffac464a4108d0bc7d52827d93d985ec9b6a14e15b5de105262478532617e0d99a22173c3968c15f1b4906dfb0a42fb904a70104a4d812214a2bb46e68b9cb57cbb65d6fb7d4fe93a038f5f85d6f607126e8d28ad5fbd1c99cc912ea8031d51f900399c7b1ba6e90b3f3f3c2879a42c29b8bf99a9ec6c32397f4ca29b80cf5ceb654fdc1aed37fde50216b86a611f12a7379035c00d0f0d6776ad2563ba461435c4b9e921138c90bf4737715b9d202e0053900339a81f3e0673e0f873e6de246b302dd209a1733195efa9e55d9f87b6dd62b5bc0138c423d18dedb17c3344dae56f087ae42227cc3db4566482ab90a7e10d0def4be743a0acf6e38ef873e190f03a014a6fc1e2d237e3ba33a3f2ce59a671206b51cf0b382dc4c9d0138bc7dc5771d8c7a7eea2136658c6dbb5bb4b8b1a58b573a25c443a2058bebef60d7131c695aa812000093a9e3970147fe2b4027401033ee844d50c3a50b224c301c33f3f3f3f3f3f3f3f8b50b66d0bb6355168c44a99b66cb4da93f048a494524a2945a2b78b8b1a0500000000248410d2da16300702aa0cde0c0f0da5ab60f44f3afec573374b970aa618f24b5f897317134ec1d42427e88acaf7d0a46e86140cba4b7aeceb9890bb316046144c9e9d937b9775b9070533313d2895569b20e2424f30a7abe87ac2e575cadf0c2798d4cd07278c104d56cb36c1f822b2c59d78b14a2d1bb0c20c26187443b30956f14cc5a2c28c2598c99e27628488160f232598bd2a848e6eb1fbc49304c35f8c5c7bdeadde4a146620c1144655eaca3985685270671cc1fc84cfe6a521dac4d44ab6cad00c2398773c075b71c295e9d24a87d68c2218acc91dd36e35f4e97b06114c2a9e3a31437c43b83704c3e7deff934b13e7aa53b255ec0b338460d021a49793a2792628b7642b08c65df1e095e1a4c68df3c50c2014532e59be4c5019e2c051826c7c0db33dccf881297d753a1721decc193e30eafc45318b972deb1666f4c014545051ce7c9487926f51b2a3460874d8b0e1001a5bd0a0b1058d2d686c4183061717a061b014cac2c20c1e18634e55afddf4bd1d606880061717a0d1011a5bd0b8000492060cd68c1d98499dd3cc6e55b4279974604ae3b9a3654f6ba3cf81d9b4a9862666ee5f3e0307464fc1ed7df4765bce8c1b98c67ab4b7790e326434c306a61d15915632e2440fd5c2f09d845d79faef92215a9849676562d6b5c3996661dc30edc412912c4ca6a2c8dc2acb50c5c2dc962de54c4e323ca51e1666925795269f341d61bfa228a362659ed8c415a698959e974f3edf9bb4c22cf6675a5618b5d28c3a2db3caf92a4c7ae60922dce3d5755461f410e282aef5f9d8792a4cdacac79ea09f6e2b0715062d4a43af859d6c824e610e725bb989d5a75226a630139de4848dcf175d2f8549e62c8f8a5ad7a49014a6f0e4d1a7a64d36411b85a9542668d3db1bf1941685b945ebd8fc9350184f2d9cedc91f140651affe5337a72c13fe8469b532614f8fd0726af68439dbe94fdd56425ee54e9849aa6464bec56570c294a5d392dc854f714d646cc2a43a7a9c354d126d4ad684e13c2b5b778b4e35da4c18bcf47a387172de132d264cf951b4fe6d13762b7b092c5526c9f38a5ac2247bfa233ca5c52f2b61d09d9ad4a9f3133fe874fd3095e4ff074dc2b41f26174f94cdba25614e69272ee9a51a45c2dcd1c5fda496ee561212e65dcf1e9bf4e3238c653d366bb7653a888e30a677867b67d2e54c0c1b61b8d4cf7182caab131d23ccc4989b99cd6f11e6f194734a39fe493a7c8a30abe65ef78ac8d3499608b3e9d449f96792ceca0d11320e618a25cf7a43458dfd98214c97423641685cf7d55608b3574ab34db69c2e9a460833298627df8f07610a53494b85fbcea99520cc1ee4d55d4e7ab63e8130969e51a9f3b39c0d08c39eb4ff20c30fa6649937d263e74f75c501197d30bd7c2e95465f3cf005188f20f005188f7ecf0b32f8502e9ff3bafcd71e4bb6b4303032427203ad00870e0a8c8c90e8f0c20f32f660b67527bd9d9de57c5e2864e8c1784dec7ef2ec6f69e62e38397e6484c61634764c76d0e0e202341c200a1979307b4ad67d9fa266c9111e0ceae457b61173c9a203aef00e6682bc4c78927da87a7c76b04777d87fb2772ea11c5507b35677274d304b273a311974305e6971939fd7b7e1ed1ccc9dc94f4acb96a293e33072ec6814c89083c14fc7cc2ae5ed7184255b25901107a3cb6beecadca7d2e474d1e0420210282ec88083a9d446e9ca332ef29fc7828c37e8953c2eb36be6c4e482d5a5dc57a1d54d57271121c30d66626d69a29c3ef12094482adb6026938915ac749f36992c1f64b0c1f8a34e463fbf72b27b0de6fd20572db6a7067337e9499a945cc3cb838c34984ce654f98a988c93be00fd0d92b237c8408341845ed229b4bb9658b6a0c1c50f649cc124ec947ca2c5f8a4936d0653c7fd4ba633397394b80ce6cb9ba562ec2583e9ae9ee0bfa6b535d43198b3429dd6d004c56092236bc9c3bd3d39e9c260bc8e4e8a97c916184c3f3a139e1cfd82494c863699642677b2f582e94c64ee6bd6849828a30ba6e4a6abf59b2849c9e082d9b4e987b520e240c616cc71aa71e7ef294186168cbef2ffe47c720aaa453e909105f3e97062c32ce74c268f8a20030ba626563e1169966465bf8251cde22efaefdea8b8154c6a5febeff553056357a9e0adaef9991ca68249479393a9bf780aa6f96fad203c934289560a260b4a9e67ab5839a8340ac64ab9214693cffbdc8482b173877b52234ce978b540c6134c2a4fbae4f2e1991c4e4e30a9fdd3fa9aa91a2a6a8259d45c4e4f7b71d633c15cd1c456f2ec29ec3a4b30e6e7e8512aff72b45909c6fa7211da52955c8e26c114c47c47f927b6c91c09a61bcb4e26f58d2e6de7114c49c97ed2f3a4ca0419c194c9e49ccb9dbef2f726a3082631e53994c78e39f927914184faa458c5df17956c79816cb40de305b2814cc6100ca64bc549d35ade2e1282c97c4c78e8d3af5d7d06fc348c9323c7492f6404216120030896db8d69b9c7ad650f8b05327e60167f92bab7d0bbee26327c60b4786edb493729e98b2520a307c62aa12fa8306a7be57d41060fcc84536932ea64cb9fe4ae0b327660ee934e0e956455b2655290a10373d626abc80fafcb39131d6551909103c3c855f914ef4999a4c5de830c1c98625adba98fb2e9a7d3838c1b1847bf5e56b6d2252f48860d8c17eab575a7e293d3530b53b2b513273a456babdc21062dcce3313dbfab27157c9d85c17499da2627d371178f210b938868a56cefe8d0a2ba21462c4c3162626c5436db10031626ed3e3aa7ca8adfb3962c96c47885b172fbba52df48bbeb09315c61fa94e149d7ab8e45070f22462b4c96aef293905f7ebee078018818ac30aa5709253d56c848731546f1b01494b2f0cf2dc55085f1ad494e107a2f761e150362a4c21cf55694b03c72fd34418529efe752397af2540fd110e314e6cfa94a8d7f132ea7cf8918a6309a504f26dd69c7679353b255c59888510aa35c3a5391229a202729cca754eb133cbfcf2a671446bbf0a071f2a9a4484561d0347b9293d3581c3586c264aa56f1aacec9731f28cc29799deea0f33ef9bb6d448c4fd4480c4f9875d366cb49a145b7b78b88d10933396752b6281f6e6e89c109b393fbd3695b6e13e63c17459c2921befa9d264ca29da02c773b39790eca8499341f7bf147e5e4993c264c3ad4ce3a7f9987ff5cc2e4f796df1a4fde4b17b384a9bf7cd3bcf7539c4c4a10a312e6cae7f1471365fec2a7093128615e512637bd83d0249d99106312e626ec7fa75b72a27b50c9d68ebe11431235122312e6fe2434d18925725a591b3120611211637a43d5b3ba47eba2868e47186ee6c9a4701bbace3b8e30ecbe677d322955d20d35c278c1737faf54a7bb28234cd9539a92f5995b51176172f2e57572d210cb3f156132a9197a3b690b311261d0fe4cb6fa4f735d1e22cca7a1424f7a4e8320c6210c42c771b2583cf1656b8c420c4398ab8935effaa22fc50e0a310a61de3c6fc288d8d327a8255b4808b38f4a97e4ccbb56ea4bb60661d09259f216ce4c874d15310461bad2ca41094db864ab0c07310261bc584a5ad55b683af192adb6410c4098735ce4e768b952844ec9960ddf1d13f405b2e135bab80146aa3f183454939bec66c9cdc3187e307b9838a9c42fcb93fb187d30ac85ce612a4e3810830fa6fb5e77afeb63ecc13cd6248b7e4ede2b5f63e8c11c9412bee9a7c556fd922d121c7f2c889107d385fec7be0ae5319f946c91e0f8c411030fa952cd738f10e30ec6544f699fa4640763b99926b93a694f5ca90e06fd6959c544dd7cbee86050994c129ee9a2474d83187330d586ea5c935dfa4f901c8c9a3db22bca734c88e2601eb92447fcc3acdf091cccc450ed9419ef0d264fc24cc63c13647a8e1b4c592c5ecaf1b3c45add0673f8cb05e1dbc43a15668331ad3a878c96aa93db35983a54df9a9b77d79b6a3066a91a4d1a4ba6c1d82eb31d54939e78613418d45f6ffad99eb80b9ec194224c45197596de323318948aa2573c67a6995506a365c27d10d2d73fae852406194c6a4cceafa817ad6e19438dc41083d9b327a5de399cec940f83399d5b5b26d8bbccc94b6210030c06156c9eb8a7e63e77413abe602a2bd92bbaa6428f9017ccfbc4d5917a23abf4dd05c3d85aea93a7eaaf6f2e98caca3e5b9ef77c316dc1a04e256d62ee05936a6bc1645d7afd9ef466c14cdcfb50a72aa74f2ac582293441c73a68c25fba31590231ae60bcd1266be3529bca05c61756309a8e7b9ed39e728c2a98b4c3fbe834edbb2f4bb68210830a2661e993bc6cbe58743205735cd116a4e98edf152ad9eac04819007e10430a86b3f194d5a4770b69976c45c17851b5de9b145f6d9e5234b89040a60d6240c134f62964b459a8eaf75a34b890c0c8c8c848d72c623cc1384a5f1e1f996537096a810d1c5b701813d67103ad00c70e15410c2798c7b5d32cd7857f53c76882412ec5914fb8eef1b03c3062955d88c104a36d6bb67c7ba738cb17622cc12ca34e9758767285ce79218612cc366b71af7d4d82493ca932c4b20b291d65df0e1d376a9c7d88414b26ef65155b95ddf5ad5feb75428a50e9976ceda8e1450d1b18a0b14508687071011a77556130e5939e9ca3dc6e8a2581c15839d7667b7af213d4e80ba6987d97c444cc840f2f9809a6426b975adb1b6d174c5a458cfe4e7a94570e170c3a6da9d72ef5f9526ec174e1e4bde2d6ca561c19e90f2d984b5d48ef4ba6b2874b183b6ae0e1230be6182ae83a7bd1d70863470d926270f8c08241c8bcb03cf161bdad32467c5cc1683993ab3a45490234b6a011011a5b40608b0f2b98c92435a33341af55305997cee45cd24205e39b8ecad2e0630a26216e5a41b44ccf2f607c48c174167469cb79566d6219200109053ea260d284f99c793262f3498182c994e98d2a278d16a5927c5d163e9e601af9ef33faa40649184e522c078e1d1e20f942c7039cf0e10493f20fde41eeed8191919191474d30af859ed8ae7726c74e79f0c1048328b1ad952d9d5c418bb65e604646ea6309068b1f9da43f846767f2fda104d3253f155426d5985f34061f49303e99f86b9749a5ddf735128cf799e83daa4ecea4b9c3f8388239787a332d1d42b7621f463013e5f3faec8e7452132ea9fe2882999cb39f69315ff041043369b7432b1345255b95808f21949de6c53e4fe81c450780c102048109024159d7f81082695e9465ace64130f58b168f636276a11541927c00c16cd1092af7964a2923faf8c17ef8c03e7a30890f1e54e16307a67c7792ee987bf6b9890ecce48a916f959736b4fbc881f1828aa35d647bfaf0068e1ca9948efec0814165514efe524b335149c2c70dcc29ff489f3339c2c4ffb081f1f7748e7d7d6a617c828cee54da432865eb680f5a1834cbabc52bff07d166613a1d2d675d90cbc230426898be53f9d2e74ab62c16e6f2181fb1fb4ab6bc98bca0ca8b89084c5980072c8c593aac8c9374e74cfcb5091eaf305b929977fe599eb562123c5c612e4dca3a15deb1c9c4b628103c5a61f4519a77a6b7072b4c2a36d189a2e3b801c684c72a8c5939e9dc44bfe02d17551843e4a5f078aac9a47242838b0bd08884472acc9ec3d249eb6f11c6b181d6111ea830eb79b80d4f35739ee26e737295ce25db99c230ab1ec6fbc92147121c3b3a0c8f5298cbc772dadbf15a7f420ae3a5a4a48ee58cc2d822b5939346136d4fc9a22847f79d4b62629f432b507b8247284ca1beb22979e1a3be5cb2753a3c4061927131569b1c842a173f61b01aa523de9fc39897c3c313b538f0e8044a65f5e0e4f8f339562aaf1827cc64d2934e8889d064d278940f1e9b30fe8bd60a6df7e0ffd51e3c34619a2fd99d9a7872ccc9c4231346d30ba5937af8f05d765143471c3c30613031ca9d54173f6d6b5c785cc228f7e31b63969ddad3f9070f4b1894d41725de2ffcaf05078f4a98d7528dd05aa9caaf2d2ad7e04109a385fff4b1b4557bcd67f0988439d5f6794a5a9ca044cb228387240c42dbf6737fc8d3501a8347248ca7c34f5aae36b1b5645af08084f9b64765c7268fab6c59f07884a9533cc94ac9b7504f3bc2f85f95c64fd32cefbc320f7834c2b4f3e94d8bf2700f73c97ee08606acfa1861b0304266a9ce163fa5601a3c16616e4f422c7abf6a97a80c1e8a30ba87278b7c3549658f60f048c44413664ac5b4d8840f1186b7a04fda9faa8e9f3a8469ab2dcf074d4ae5226408e3a953f7c4901d9cb84721cca583bad5f3bc0721ba111645e5208f4198b385fd9c9e68e6a637b7050f4198da44e5fdc235b4c5916ed4481d683271008e7483023ab4aaaaaa54f36a5e06484012801c7804c2581f2654eb8f3c005123fc871ad1e1e107ab3e181f8c37dfe55566b2be36a403f76026c8ed3f514d0a21ed2cd92a05040f3d982f5a9255d9a792adf3c883494bec78d2313a7adc30f156121e78303b29fd4b8fbb7576021e77309deeb886ad5dacbc4a164d3670011a3ab6d8a2a4009ee06107537092d88647fd9ceb0f78d4c134a66374bee608a16b0743076ec0830ec633511b52e49e60e92fd9b20c78ccc120ada3e77b94bfa03e3570ec9083713dbb5dffc39214e52875018f3818afbb3a6b858baf2082f145eb20f94287f18083f1725c4b6ddacdabb32978bcc15c76f35de2b3a388c80d263d75d617fea40da6d8592f3ce919699e8282071bd2f6e420b32a650d866b827cd2f8135c2fe5d5e07b68c9baf8241b4b1a8c262753d4e58bd04dcde08106e3bfbd5fe80f2fb1a8083cce6026c54f4175aedf0ce6203b5c7c153d1fe4698fe05106c335f13239d77cd8081e6430fdc95f68827e357b27255bdc85c7180ce7254eaa48df1cbd4ab674e00b3cc4601e6130cd3cd9840759dbc4cc5ae001068372c24727b68f4aa9da922dd314787cc1dc4e1e8ff35652eb89966ce9f082b93e9c9a27c6dd8cd04bb6acba60fcb3d0ebbe30db29a5020f2e982bf56afacfab8e326dc14c0e3dba9f2cc284e8275a309e3df172904dba104acf8239ad36d9847634eb4bb160aa9c794e7472139c24e3154caefb64d321e6f74ece0aa959ac7a2db5ee2abb7127eee7533ae955b7ecb8815a8092081e5530f5f593f24a890aa6926ae6bba21746a848120d0066f0988239b659775a93fb8e2f7848c1fc24b59f3e5fa5792b956c4d0a878e91910858a054c1230a862709d3a749655d63d7153ca060b034379ad4594f8cdd99e0f10493bc53f9b9e8b93cfc3bf07082f1edb2db290bb926864ab65c10821d4802363c9a600af204ff9076d242869b011290240f2618755ec709d232b935bcd20c908084041e4b30adca89972a79269af885c04309a618337a2dbf25f9ce9360b6944dd3f4adeb7fa9010f2430df72e1b615cceac2638f23989410d9f3fb77aa834e7b18c194bf5a7bd5752e6d5f0483cce798cee46b31df89603aa5c9393fefd27aee2198729a8fa1dea4f4295321987c2d8bccc6413096a927e5b84cb0105701c124de9f703a677d79b078fcc01c27f2315d9da489e1fbc0dca2923ad5c47b606a7288c9e77026f3c23c309cee3b71a5dac9f9d98131465743ae5cc53c75502357018f1c98ccc9ebf74e2cf5071e38305d1ef139894beab47b6e604cb3725276e23e996cb1870d8c15dd3e547d2507336a613e539a1c2d2d5beb7ab430a979ddb950e9397e666178bdbb4cd059ba7a44b230afa77059749aea20e45898cda45bfef02257428585d109f273657cf015e60cd32f2aa5d1e7048d67b8c2142fba9f2e273849b4c75698c6f549994cf058615ab31b4df2b230bf7015e626667512fe22847aa80a33c189a5437d679393f653610ac24ef7af6d34fb830aa358b998ee0c6fc629cc979fafbee5fad9795398fcfa7b35b446caa54a612a191544b63e41b73c2185b17dff2d3cd11b85d9c91fe7a279509f2351182fc47ebe549f4955413b23142655fa291efa49a69fdf0c50986327b7cfb8ae78b13f61f27115331f6d3e42262917ccf0846967b5ba53a65b5b7ca680199d30482f21acb255378313865d7d278f8a9195de6413262d327e2ee705a5fd2611c20c4d98d22bf567c265f3b45426cc9928729a242ffed893c3848dccb88469b45493e43cc312066141a77b6e82ca7a95ac19953008fd29dbe2a384d144a753a709eab5c0664cc2e4ed2133f49b5832479230a6c69dac7d3412263d9b364fbe24a2ae6a0b6640c21c22ee8308fda4cacfef98f108d348db4bb715467f5e2f30c311c6904d162554d60b7a946634c2943a8b125a42a48c404debd4bd5d4c552b404847d51adb98b108c37ea949f3f89ee54f4ab6c098a108c379b4f49195f191e4468d2e907b71508e1d1e4884f99aac6135724cd8b793198830a725cf396d93a467fb1cc2a03b9ebe8dde27a957330c61f2ae995b4bf24218c69c20f73dd7843037c9be4a4f49f1d27910a63e55179be404276e6905613a1566cde3685dc53210e627a9d4f146888030a750ff928beea44eb23f98b3e5e5279b26fc864704e9075326139d94ebc9dba52da90f669295bc12b1db0c3e4c9ab1aa0cf599ccd883414fa8e04fcad90666e881cfd1a2ca956edfba0a33f2e09c5b0a911ecee387877b43e8f80b4e1c4d90e6d8f1c5d560c61d74861d5830a30ec6cf27768ef3a497211dcce924e1a1a2c8d3dbfd1c4cbaacc293e35f0ca5b4197230ff28cbbbeb7c1ccc64f714eb374e1c133a70309a1ebda43f7bd0417833de607ee28ba794940aa6ce493661861b4cfdee1e6bf382132b36a30d069923c49452e9fed4638349f4077dcfd1f4cc89d660f63822b409e52776743598627f9d6c1ab2ec749c06f3899031177f1f61061a8cd5c49ebfab3ed5a470878d1a112867305c9a0e1ec6c647c6e445836086194c3a135daec4892e4a9349194c3a4ebe749bd0e4266a6d9861e9a989f8d4cbb161c6180c6a96159ecf2da750a76186184c6dda44cbba5927efce0883d1546ef52aeb0d06936992b2937bf1c2e3f3c28c2f1844e9fcd1c45317958ac30c2f1865cb3f5d303ee99c94def7c2c969c6055350f6e40f23e6a2ae4633ccd882398518b9fb4fc1892d66800c33b460ceffc427a87e1fd37105c38c2c98f327f962f1f3becfa76b06160c7329767b50e9ca42c3d19c98710563581c4daca4675b4454b2c59b9861059374f5d6eacd3e3d939a9c8318d2053369944ad10ecfabb6b960ba4caa9257e9f27e50876cc17c63712645fe647630440bc619cbf83876ea56c12c18d39c24a6fb9954f63316cc9f748bc9cab9172c1b728564444cdb2d6db3e5cead45c96d27a5a8ad60d21e2fa7deca6427a8ca1342aa60128f95dd57cbf5c4674208150c6f966ebe720a4b6e0a998261fdbb2c55b0eacf6f88144c3a9c7e8811dba79f5814aabb51b7986e224a37a962c7c837f5a443a060106b232fa94cba384f30e409e6f4d1922827891f7382230871c2d93e3b27e35b4813f4d8ac1571b3b9b8d8d9da413bf9ab648110269832c664bae68ad8f696604a3d1d291f274f50f7094294f0769dd02a4f1a4d3609a9681345e59b68dd610812ccbaeb4ed031ebb252ed40c8110c4aa79dee91a96ddba38618c17039f53ea9c4cb43ad75428a603e693e755cb285ba2144309e3fd977333b9bce22aef10234811cc805382e602143309bf7d79970ed03232338722018dcc0716364c40b306e8408c1b04ffaf4e2fa96c4fd892141306ae7141f3cf98c18518700c1b0ee49c9cff1a40d3707f2408e1d1ea8da1c3b745c87fcc0ec1d9b5ce3bfa9975b2f486e201b5b5fe098240af181a92c5b13c4f8a54cf25c6e11d203830cedf5a4ad91f73cca813e070e6b40080fd0a2f33c58d6b626640766515d4a5f57bcfad4081f10a203537eaaf8766c495a0221393055ca22e2c2f7d3d37403d920b18440080e0c6a3de714df1b72b1731308b98149f454ccd3c4b3cbc436c7299984d8c074e949a243cb9e9b102ad922d1cab143472d8c63419838592c95e754c992e8a861d5b430c8ea09cb6e6629e959b27f72749165b528078e4905406661b826934c949599b2ce0e1db230fc88a8d70725723e98b1307d8a1f4f2571da89d5232c8c9f83f28beb3feb2778af309bd2a4944b6bc7cc1546fdd2a9739aa5a315a673d51d8fdb497424246aac306592ccd6960a3df69f2f6e046415065f37e5695236c794160110559849175f3edb24381e2b73ecd0910ac39e5fb6c9e85161f47fc219029053989f684e0a53a2a413c6098829cc644f77529efa26dfcda5305e08cf4945dfb9ec4121208529e8777372ae134d67e3e4e802edb85183e4cf17565ee4c011816690519cf293c9e14ac8566090ecf022b104404491d43013a52d2a182448478ef305961760dcb80c8084021ba93ba7a74e93cf816edca040018569dfe72f59a7944f98543d546752e5d173c7048c1c3b3cd005188e2050c53bbc48a700104f98522727af7ebc6d1c12ac4ea4cdf5b63f1b1819d191037501c209635512a7c3bfbada61030c1d28c7264c4f76511f54897a5ddb0119200189084034512e29a7f3d42f5b7b403261ca79d9f399a49e2c795d0900c1041f74da270515ee2fd400c825cc61bf374593ede3b34ca2832d61cc4e2ba6773a1345f59530f78636d1fc27279d7fc9561a008412a6dc96ff63792134c19b84e961594f133bcb3c13104918845e8fea964cf945bff0a2c645c2986a4186cea743c254e9b29d60422cc80a833cc2f4d99fc783a9f3265c931a37ce060ec41106ad984e0ed5698429aef525f1d96b9574ae941126d53221374375aed84c00b208e3ce9e3c759e5284e14de839e19c5c5fa7dd1b0e181909e3c6b90c9080c48024c270d7964a9926ed25738717a9002088b89182029043987764c5382987ceeaa3173c0546465017374e8e073184e65d76e92d36d3ddcde2c2676ebb604c6ad8d0f1a8c617a8c6173826590029844165fd69e7f627f9e50961fa9531111d963251c7843aa05d80e1e8738717e9be001984a94213534635ee2f7712098e1d24072208e325d91537e43970f821004820cc6d499525d359e4cb0608b388b57bece09ec91f0caf615bfa3e8cc9abfdd09fd97c29f11f477700a40fcb5b5065227a9456b2f538f83071dcc4e2c8ff71ecc14a4adf496df7a92fe601103d189ba05e32ddc9e414dc2fd97a94e394e8e005c983f644930b6f3aa8afcd3e00820793ac5359f271cd6a2f17e0b061e394e8d852903b3826bb66f44436fcecc0e1058e1c5f9471016207b39fda13abf3a50a481d1c956247131f63c9e2d8714507a3ba968cd524931a3bce0e1d560532875fbc6fb49e5cb2c50f0091c3c4f5e8d979c654b2b5030c1c611c1b23232071a82d6c9b697ad569ad0d02870f9037984d2527faabc51e6d6bc9d6dba80186973a00881b0c73d2defde49a948e01481b4c5d39ea7f6f598af317355c806180b0c14cfe7bf9ec64e255eab800dd4039ea9600b2069356d5bed5f48b9100a206535f8a6978deb114fe922d3502481acca653f6d639131a4cc92fe8b0174b571027255b673059d6cb4e4a9bd9a533290288198c1fdab989f3d10937fa3298bd2df5d43ce9be2436218090c158a66258c56e6b1f0fe91883295d8a177fd38e275c0c082062309f3e73d23f000983c9c246bf4a5ae7af24184c499de58e6762d49de50bc6fcf804e927673b386e909875064840d2205e30b9a67e9e7e5db23200e982feed4d980b460def50c147e5ef53f101c8160cbaeb096b29bbefa4b0164cbfafed5ad1d456d0956c8164c154713a9d944fa6a43a29c18249fee9aed14b3e9a94e9401d805cc19c837c922e9d2346ccd36105d393494ffa4d8b8e1a36d08e1a252e20d981baa882d1729996be4a413a993408154c96a36f27bee964a760fcbc0a4d115326749782699b28e293cccc9a8603902898c48717e525cddbaeb30108148ce24e34257b569e3f09e409668fb127e6a7537479e20483521547e7f4ec27a94f130cd253881d7597947d09c20433c96ecb536ffcd7533b4096605a11e5c9b44b29f5978128c1749f4b4f13c7a413948ac2012409060f4f8bad34a79f1c9e8d000409468ff64f12bd9fbdc23e826944f32e6b6c048392cf412e9df22765ad08e61b19224dfd73934c05420463071982399ee4e4ad52cbbbee4184604a7a4a09951fd23349664347e77080d5e446183a1001204130c697cceb4a7946f62040309eb0acf0c9ef639302f981f19ed431eab249514307e203c3db393167dbaddd6a2e2e04203d305dd6c92758de0f27e94078605a11de04194dea8e0b2a59921c3bbe28387228c80e0c42ab5f432dbead894ab64646464646464e0e304ecf0044070c92833b2038305cd549a7ad72136f1a5bd0b00323021da081f606901b9882858dec24c22080d8c09cf4a39572d2ed65137dd4c260eaa97fb449ea323382410d1d460b83558c25d3a57c6458b33007134d9eafb8f7f44e6461f24e9e63c90a636192f97ba72dd908b90f2ccce41b3d222fdc574c503d9ee47b7e0fe9f97085295a8f57755c1019b315662d551f2d27d38aeab1c2e0b10923e789b74d4eb15598d57e47c5d3927761a902259f342a937377d013183e52617427e8134f163d4f2676a8308915a5ea2d65e275529f22e9994c52b596ecc08729cc1e6375972d7a7e529a7d94c2d8f6296e6cbea4309c342d39ba8313cf340ae36a989f69baefd866270ae3e7345539aa6f3aa90f8529b8f595935f2e056f020a33e9b249a59ba44c566fb38f4f18d5af736e499327cc292e779ecc136a3f9d30133d3f8dd6d2ef091f9c30933bc8d29f4ea68fac74b449e1631306154beba4129b4dd8d7ec4313e6144dae52f0d9b013cd3e3261524169928e25c4fcb68509e3e74cb6d271f94b982e3649e75377a5ebe49630c6978d10f359a5cfad448d7c50c2b47d999ce3abda09279b7d4cc2584eecf0a594084ba134fb9084e1cfc9a97baf3ea524387690a0cdc0472464f0010973dea55c9da1cde51c35ce06ea151f8f30c51fedfb29e81b4d26ef08637c2af950b1ee36f446a449deb9fedf67c00723cc04f524cb5516bfa7f622cce4ae4e2a257f72de5611a6a0c36a59c953261a26c23ca7ad1fc7bef3daf58108c3075d4d90a13b73f83884f1a4cf93bd4f2e6e0873aefd6a32b1fafd372ed9624b7c14c2ec49e9203f6955d13f08611a8d2736b149af9deaa464c11884b14ec82a615e02c58720509adc7fb22d164e7c04c274a9c4d7c989edea76131f803089d68a4fed36ada4b4858f3f98f209e77197e5446e3a3232412d20a9dafdf08349df72b529711fcc418a0e1e5459268efac607d3a7efe44ece39ebc8f4630fa61072c22d87926df2d183b934e1c7f3a4a5d4a92cd9f2a206c9df386838f8c883a9546c58ffe970e92c4a830b09288e0f3c989c7ca9ed5f5e9426d6f9710733f14f69774851d96a0c7cd8c1142a5c58d1ff992cee471dcc7dfa79952ae71ce638c8c6e4e8600a2574268d88302db9946c4d8e8d2f2e071f733097f75a88cf44efb467c956d595f99083f96766645eded16e96407cc4c1d47695efa649e757f192ad2bc4071c4c6aefb27d505d792945830b09e4a0b1050d842280830b15c4c71bcc95c9bf75aa2e5cb0df868db345044a76d4080109aae1c30de6d3c1da9a94fa4d9ab864471737d0055a031f6d3085c5d76c82bce4a53b1f6c306addf81394c73971e2c71a0cffb9e3f1731317e008e30682400e2e6ea0122ec2b88120f0a10693ceb39d6a455e5ad472e02031057ca4c1f89d73ca52a66c476ed060ce7d4aae436dba25fd1651f83883e14ae8e415aa3afc3083a952f68bac4b5ba99b94c11c5495e9ad16255fbf81e346d907190c4a79e8cb64e238991cef2dac0a1f63409c8daef801950112903c60005f3089778212dd9fb3a82779c1a4635d987c3d496782dd05535893fb32572d64995c303a49a8526f49a5b4a0dd8279f3b3e2084d6acfa2164a19b626da95526efdd79f27cb6ea9e5b3607462a94f39743f1800168ce9d9493a74107edbe45cc1fcf93dce93725229c8ac60d0e4989be96a57619e2a9844d343897b2813afa96014ef54a73f69a28e7e0ae64cfc93eb9d827eac540a466d275d324dae53dda444c1f4d1a3f89927a160b2344eca4471f190cf138ca23444bd3b890e9d7282f1d561b25531e54e35e5c38ed01b95b4e5fb34c1b062a6bf4b96c98a4d4646be2031270c8009c6beb53b4d96537a4e5b82793f66a55f5f9570ab8a5bac39b7246b9e719a981f22a4a59326c1a4c9592f9b5d799b7c820433f1c35a0eb17161be096100473097cac16a94679e3bf90118c1b4f965ffe4cb8a604a59a5f3df4e9e27ee44305d13b77476c911e33943309ae85ae7b06d3259c30108a170a115c3662c64e4bb3a2f54a7d249e6ca8d061004930ea749f6693add8f6c004030d587ca55ea951fd86ee62d569d551a1b2776f184e82613ad1d800f0caa432ddbc577003d30e7e0b533aae291111d3718000f4e51e5c49fca7309fa828464003b3013b72b9598105127876ca4acc0007460982f6571ef9d202ec661e3069003b3c68fd2192e66296e255b5de0b8c005068083644564ebe3626b87ea67cfe9eaa20b1c17f80247064646bac061e372ecf862003730fb5969dad64018800d0ca3e296ab82f5ed5548c729d9c092541822b530eb65d3619ca47d3a0d86173732a2a386e7401b1819e10c90802487082d0ca3bc09ca47474b968accc2bc256fdf3edab23047cbb1947e2a4562612a27135fe34affa914040b3341577f734f76bc5f61caf1b6bd2dcf2fc5de1506d92fdace4d6efbdd8c04915698b45d2d74284fb3dd29116185793454fcd47f126b0f11445661529a6dc99d207c40abc230d2535dec1e3f9bcd4a2d155514b98c2bb53a11d99efb27d9bbd9deacc30522a830a9e4eaf9bad32caf28720af35593f3ab42660a535f8b8e3ba26a54efa530ace593e2c9526e760a29cc49a987b8f52cf2e4330a5356269349b13dca49eb4461d29f9def64a9f0e9d4a130a812e3b55929ec8e090a4c2de59457711f153d9342eec83f611c79fa9f9c159ae8a8e1057ac2984d7462a8c7fd26c9100b443a618e5e314d9a938213f6a3b500114e184fa8dfcfe4f86ec24cd0df4b397ac7f7491306297284525bba3a2c15c984296976f84cfc7ccabe238289bb4abed2bbd22d995c87c628cf6de721914b9889eede04572765a2a6892d617c52ccced624a98e63630b268854c2d86a7a37ebfb657ca4238cb381218850c254297d79dad40fea44229328c9999dbece4e2461b058d6fba952f6fb6c24cc62ca6beb343c85aa90306982133fa598a22da9ec116652876c8e4a8b238a99b721df43da08d374ae944be71823b8599b337b8bed65dbe6df592e3cecbb9a4e2fc238dee424cf3429ab2751441126952e2791bdb5eacc13a15f576e89f120c24c9cbf268b929d4fbd3c84c1733aed8a7d6eba3f1143182d452fbdfd9f8f733dda8048214c4dd06472ec1ce246ef7304114298d34da95cc25eb44813425f84c1c5200c4e38f57ba2b7c91f7f0ac29cf4b55372b37bf1cf154402610e5f49acfe054ffa92255b5f5cedc881630338100184f19e789de4fec9daa36181600b913f18b753d46792f2de9ebbfc60ea2725cb5d8f1844fa6018d59e7316f9237a7bac168c8c60b5e0900fc6964d13e19d13d98349b5f65b6c8e306571113d9845fcdd25d3f15572cf8329e8d0a410957572ec2d8207939c13fde7de2e76a5bc0d5423022323a661ec302c88dcc1fcf95eaf522c5a1394403032323212c68e3076181744ec60b45c99a0c277570793981f6d6dca9a3c968bd0c1a4df54ca4fd415d90499c81c8c7375a7947698517d119183e9c95af5f5279becde04d1201207539f3db14d7b583979148183c134695de478beb841e40d2629d69d54921c44dc6012aa93ec9117bfcfb90d6672760e7257c672be50840d46df93fb2367d12b5a226b30c8bb5cb0306a1e88a8c11cce3c85ec7576a25869305d26ee28193b2797c53a44d06092622ade4e5ad37e51e40c468b1b4df0b0203398c2f6a7a9b83dc2b35d06831265252f586e4b42480633b1827a902377eb9e8dc1a484fc17e9f1adfa898ac1a05209bddf9649eba70ac3e295aa4de3e33cac72882c21be43658cc82c200206739a7fecce9d5db4ae29887cc1bcbb61ea79e1fabce3053329d8cda68db0f43d771644ba6070825698503ee22ace5110e18229933e98123e5ab1520505912d98f59e20a7bf29fa36a405c37626f8579ff7e5efb360aa12aa3f7c3045b0609eb3aacee4f4e4f2348b5cc1ec1f94960f4b5bc1bc7221166bb597a35c0593c75d2839fefdd992a850f9768e14d1cf14b6aad876d9c29cf86752cfc9d29e5493242285b34fdc65923e939720120593109a94f397364140040aa6102af23f2e13e74349e409e6ffd5ed7ce7d55d9e118838c158229fa48354adf1138934c1dcf5f76a27bfc949cf4cd0727599a75714efaab5143fed9726688892afc8128c6af194e5bb5b44092655af1dec4976ae8a24a1466e8820c19c2fa65e26aa56a58b891cc1a4656eb574699293497a23182b549d70b2dc5bcaac08e6bc72b2bd055559618910a1dc6615aebd2c65d6725ba9e86e2bd98e3fafc8104cfdbeda4179ea1dd3976ca1175e50402d112242306d76a73c4d27c65c26120463e839a94a9c133d5c0e2844805018d58e1ddab79bc80fb8289b5951ac52d6b52533756a49a6cbe99d02111f983277ccb35a9a656c13684c83480f8c21a3bdefda3d37e122c203e37c13f4e8caf68cbe7720a20373144ba53e4dbe65716d88e4c0f861f99f54e6e4134b51e007223830059d9f54ca597572c569207203c378a7f3e42654da91d724446c608a96ab5effaa922d92ba1d84d4c264529e144df68272d3e490e0e882847110420b63ac9f141fcbb9a0fc922d129b859968794f4f654fff242d5612220b53e54ffb44994d8b6dc6c21cdf5a478cae3f71c6020b334988bd4bfa7ecd8b400732c78e2f5e61ca8e26d2e789da6d4aae305a2865a292c87bae8e39767c11d20a7308797f1ee67dac4aac30e71032a76da2d42c6815862767cbe99d64f2894d5e15a6dfd2313fefeb349aa4c2182a07514967324185398f10e3612ad9794e61ca24bdb4db2a979dbb290c63e2222f2f854993d2878e4b615298beff8457fd3a0a932ead7a9554deba508ac2a0722c278eca87c2d8841362a4e99dca5e82c294d4accba87e5ae73f61d2be31a257be4e87e809e38db8584d26f7fa67d7098393b3296d4e9019fd73c274428fb5e793473db74d9863afd742ba9f872615a209b35b13f48c49db9076c98431449f14eeec738493490826ccbd23343ca9ec1cf30ab98459cbef74f56c8d7c72219630d65c1efd5ca192eb05032195308eea78f259d041dcc50908a18429373f13b493091f474676a02e4646687021017f929111dd8b42c824cc64532af437c17be4298548c294c4f9db934d9deb3d098984d9aeba75bde3b613ac104898f23569af7adc0a7984614dada81e4f359d327184c1c3dc9d9b484bf9b28d3097f4729133d7d5a70b6184f1532de63b6e3d495f218b30ff878527457f828ee62444118c995975e5ae530de1b2622d9a643a1e9208c36772d0e3b9492d225444189fa8d67ba9a9f7e90b3984d9cd4293d3b356b6ebbb9402420c61ea642ee6a6f4218530756af26872751027699310429853f64c279f07613679d1eb5c2c44b72e8894d2a2eebbd606c2a4b24e7cad354018c4ccf993d45ffe60f42022ee9236a972f084f8c1b46d234cf354927da33e98d447b7bda4ba331684f0c14cbaf5ef2cfadd3499fccd20640fa6643b2a94790a6aded483d935ad92a87cef04d1e5c1686146a4c5953e6d1e3c185e64faf7e8788d15f4ddc15cd2e5d45f95268cac180c42ec60bcf8f256cb69d4dda4a30ec6276c7ed67f72e860b013b2c92635f77d9bccc19c37ee3499149a6f9f561821723059f62c15e5723bc7ef62101207e3c5ce99189a1fb22554ee05217030286d4eacce494f3f292fd92ac311f206f3be88ac95fcca22746e309f09214275d59b93d3341d216d3089b094c966e5b1c1a897ef82f2ca441b71adc11c9d704e741f114dbc607b11a20663a969e25890b39652db451acc246de663aaa6f33c795541081a8c325fdf97b3ae5d104974e028d95a41c819cc9e7212c23a85ab14b564ebec386f3942cc601ad304dbad4ada9f4a37082983b964d4d693d313e45a4c8652c5a8d57999d5797a56e55730cbf9a549f27a0e42c6601abbaf1cb43261e6471b2162309a5f9349f2f58684c198f93efa647236040cc65ab3cd0a2a5ac950867cc1b895922656c78a8cce935888170cbe7f69b2078f7fa8b410c602592c0c86c2a1601403512c39cf00031308201830240bc662f190542e4d3f148004573a264c363622241c168f4643c148180e0402a170200c0883c1188862280e635aa8547b3876f1e9befce8c20c612b09e96614440dc9caa59866821118a5a6f17b1f233d0d679d177ddee291873cb674f2411d2301ea8c210784f187ffa7c9806bc43d1d7a8444fca59665bb464a6488d0805b9e00a22f31b2f30da281c3f40ce69c138bbbb43c890f3414588368108652570820d29850c1afc6ee20bf7235db7457f121d5a479d7b5228720bc2071160bfd46376e4454a1eaf80f15ad939ab4159f8dc650d86420ab66a41138641c7b14c52d35662439f66978dfd3f75d5087553487f3d06563601b55523a9322dff22a0b193430d8e8b45e0d6d202c27d77eb7116035499ab81a8b6fcc021721315425dd4992ffe10963b894b5e35d5eb4e6f55c776e7e18ec0a2d1e04fac3757ae81a8db24b14144b33a29065425e3f4d4475d39fa7fc704efc322a86626b5f1eb266e9764be0b24d82ebaa3081625ee8b67d0e37e219f799a80c20225050ba4412daafcc7f1c345054687061b65541a87e92539fcae4c173d52ab75f9e00b5dc7d4ff5ffe849500e369d1ad40d343839d5a9fa721bd8704fd23e3661cd53a2d225792ae73a12f0f7d2e4d0880cbe96bc7d9678d07ca13443b669e2c99c650a9d486968073528b4c8350e32b59bddb18cd10da28c24bbeabff0125ec674e3d604cd80b6e43ae7901542a70640aff9b6e0e7f3dbe5994631a192f2a94ffb69680fb1f2a40b9012bde9544ae1010ddd4cca40a7f8592ac60634174e2fa5a6631f65f5b427890b08c1bd247b343276fe11799077a025acedf2a260292b3706b904df3d289ac993d0edc919428fdd47f0c218b87fcace9372e78a612c9fcb100f2c0c6538a5e14222ab45fbf7fffa37edb836418c09f09977b975f334ef2890d270849fbaea50d1f1401f919493a024084daf20aa02cce883e148dda9bbbdf8e1607463a04423b1e7754e5fc2f1bf813a3b610befb7ce08eaa66f02040d184ea1d219af7481ebca012b09e9b7cb6f2412c50438aa4ceea125039510c41697e95a3b37762e670de5cac91373f9160537128d010b1a14fb700085bb078d79fe88cea445375cf8bb1d894a6249f8923bdd053bad0bc1edb7b79784027133a100a141a4a1cdeafa4f675efea87b7ce35875907170e13c7f567d3a3a6fa2c21787b65ce1ac9c7f2e9f725f04569952fd117a71e7c40374ec4068b421ca81d28b31120247e3860425ec6ce10855d466b422df59a22a52d34419c03a0d907c6004960f5179afae7f0d0a094d877f11bbd2e786d9ef0e730102a2483a0946c4a4267b3c35fe1ab2a9e1faf58fd2164103366931cf5824d4c07e17b9723ef734a8276d97fb2c715f06a17ae4284d00990a88ba7479235162ba3b8c604372a030adb52c744bc07c4ade2f76fe915b0d8d1717d9de83947e204240a2e2e0fdb7339eb99aaa07ba30c8ec5019cc4c83e8349461c38ac3e51f9a2e214f277bcaf7b27d6611433448b458c880ae265aaf248b99db77f3d3dcb5c272053ff3f4fa46dd993e9edb6cf2fffe390d3d3403394ac8b96ca05251b0444564762903f55e7ddd73af4c974a59a3c16ac1d24d164e4f086467dd50d2ee63c2a88cdccf01f27df287bf89219d44668901020c01f7fbb23b91a436fb0b138554373af35f0835daa9118de825fb20e152be80c58a57083aafbbc2e8cc2baa7d04636dbd64bd18e5cc7a195176b1dfd21224f2029dbe2725e680fc74eb8be91f797b25715c52ce72fa19572410ad1ae7080fb5d1c3749d5b1b624a81b3830be3a80b071aae0d995f97f6919c07eda3ed1b4d75e5d8c505d9541bc44ac3891596b3bde3a048650718dd23b91c955bf894ce76b8a7713fc093d9adde6174048e9f4da7f54d24751c037ba5c65127f9799c6f7bf116ca3b60420f51fb1cfc41e4724e0c0ee984f7657e0556b1a808506e50792109a82de3a458f22bb5e9b17352e1fca16ca985058b13e38afe807a7bcc51db16991b687e91a209b4c94ab20a64f08cf85bd63cf54f7a7c384dfcb5ac79ae63103d304d35e0dafbe4d0761122a1276ed6e14ed59941c035f9ba2fb6dd36385b126697d556b08951b801f87415d1cdce0e538a2d0cbe8b69b2944bed0c658c10890413cda40a12dcf8527d3b114e6bc71e26ec166ea06de85be5efed6a79cc263e6bec333e4a488c0da0e1fe19f91b97b1c76a7f0ae0dd87348410d952387587d7f004a014b7e910ca0dc28ec4e16cec64d830f40dd2046102910102ac293bb23cca15b9f75d43a7d9fab2a6bfc357d35115d4b866026b2a2e9f782b97719708a41b909f0981aa39006e0f7401a525ae598ef3e62e22159f768eeb8b18ba3a616f582ec9bfd33d24545d7d2c2df8e32153bc91cae1ed4f70c030396541c0623a3f1589fc726d2b861d5f1f4378f8854f0ebae0157e3885e03af906402043f7a49d69e73e2bc941b0598ab5a497b51704cae974b7404d6dc36b70c429c7d097f67e68e9072e5064b883658741a01cf3abc533d2483c0b9365d1c2b8e5f0d4e05f7bd7793c824a0ffbe5ddcbad4772f15578b78c77e8ddd00d7baff3908862240b5787bc1e2fa104aefe5688f0461ff27333c3ef4c2cf9352e038aafd8a94f1b17f58cd7e53612d00bf48d88295da2283061ebb665f726204562bb742f1082c4b2626fe4837b4076203a97054cfd67f3d90a7f3e99565a25bccad8f66866a1216e80e494d35466d988066453f787d5fc27f2576a249c078b8f575593e5f14485347119011d343bfbeaaa0455c0910c2b71c09c51bd99b11a62531543d06f1c7728dc59368b5d1ed32a3d9c1f217698dba139f01f0754ea7eb0b3d2618cef7a8dfce021a13632b8f6ee3eb21429c72e489e1a0d3e748af46c8ea383fb1243254a0789b194378077b4f15a812600299349321b957834c0d046a028dc0cf8d2d1417963cf9fb85e5d8e6a7c921178e00e9bf3a66923460aa0dc8e13be5cecdc41513bea9d8de611662c08d141bfa42ba1508fdac05c842b560c7e5958b29eaf310ab365b25fa69848a4ab00fd3629e7e8c56e7587b210f7f2258bcd368f5ac74822581ba098174291f6a55034fd5afaad48672ee49036bc3cd329ad9850aeb0b941153516d782627101ba11dbe9ed0f00464c0daf3e36bafe687d8291d8f97afb10fff4c2b6616323fc5bafe85e5930f8f053021e123b35ee6d7561b61568eb7eeddde17119aeee8c913901ce963ae25264730c12e82b547b8c01ee11afbf15a9de19132af2a763c914af427bdce67d9404446da58170a2227e9eae9b5aa6958e5a16a4f93990f462de915558b110e32a58f17bfa0923a67c159f98b264d8bf5101811ae4b190fedfcd1860b85a7da9feea5f9c8dc3d9f388fa4e4560ba7b14f09560240e772313f154ce340be5c0d1f6cf95c4e65c94426a4dea5da01c1ed628d4e22c1eb74094abbc92b346e4d2b9e20f7175dcf5da14704bd208fb7e20aca835fc62e73fa39434596dcb6cf323250d3b0d0ca65a3a323f6d6357378869e8a131a37366be79991b6cd5e3bd79accf408a048219e3b499cfe18c01f04150e460078aac490022eb42438acd893eef94c37617665b8dfc0c1232372ec9d0f6412a274e6cba6a1762ce4c01a2e787a174f30fc44d14ee15e4d8b840a62e699c95d29c44e0f5b64c98bbb1001427aca64219acf47b2af37d70796802be5e2d790036cd2c8eecd257865f9bded5b842caeb37b37a1a5415c7c63af6a4527fa5a9e790c88ee469a1bcd0009a17a3c010bcaf01bb7c7c18dad71db0eb898f94c911a9b0ae529f184985064cdb6e86d4b1c9bb05b110cabe0d4615da0d844ec7e31fb785bf4de5d4989aae2b28269ae3bb0a03eadf71d3607df142727198104500a2bd1eb411fb2e668f2942243ed6513d9f071d9e2ee268417b5c7ac59c1786e40cc4ff0cd66cc7f48d54193420b258a148250821207dcb954949a07459d9d23e856cd86558d017daf98390d1934257e9ca07c27a3dc45a604106a6be5116397acd5979f54f68ca1c92fd3694bd67022210cc0a7638b136734153705fe49dd4b952397bb4883d272883aa9a86ec5d8910cc8e1b10be7261b286c41dddc509197ae0b258a3dd8344d1e14cddcf417c2278d0746b320bf1b6fd2506a07489ce35c0ef6cfda100f45878a78c6c0aa172d114310181d204baa514c2ea348ce1e0a78b7cbad2efa19484848ab1df2ed7b87d68d227277018837a2e6cd7489d628b92f71bf225bd4781c2687350bc5f60dc0bd45b7bc4a53689974430d1c03c6efb2b0daf2933bc1e7a7822c81128fbf553d30f508d1275762532b2c4d81207a7c7925375d5366a71cbb04603ec4bd924b9d5cb762cf5b18497ccd1463a07e37d63fb29640aab4103746082f48dbf633a852ec8a0383cb34de0006aa0eb2c19f7f04de24508d8938f008e72c53983827f7eff47ad0475cfa370328e63369a87d1d72673999092cc5ed6ebbfadd968cf8ac413020c5b754e3ed838e2eddbd4a2babfe46a145f17e163bc5cb778ba13511c891c619da9c0aa529a9bb99c5da980f0856f952a4d92454915c120aca22eea00432a51e3f282bf7d933d7fa909556aee96e588df298364ac71c21c1d2c4348002daf00daaeed58b1b4cfd1c0dcae8bebfb9b79bed6433ddfaa9b62580aab980b4f2dfb6384d6dac4efb0f5b49e95abe158316f6caf7f4d89f50b12f7a5e4f1e45fad87763e75507d9a65f44115a170f0d85090b4317d8239e48061f63c72db4ce2731423a27516895e7ecea38a6008d55a7ac138345968abfc5ae4c12f1325ee408019e59c052abf6ccb29998645098783eab8e07a8dd5c51da8ba97065537e182c3dfc9ae3700702b22e6433f5d9a6784eb81d529ebb51341a8a2d4b24087d116e47a8369c4f2c109b220407b3cd1480ce4773d5310571b8ad852d3833bf30409c21d641d0cab617ce95b4cde9ef77cbb2e74f4b19b2150e5796beea07b23a8a4ae4e86d644234de30d3700c16482de028a4781659c223919902c8046b1568a4c199d82199d5e82373cbe7804ce80506250c32a01887e03ee16b378a84d3433d2d3017fe4f6b74b6c7aa202d926a7c0d495a77d0b953c2a9deb0659d942295dfc4b69a834809146d0c94d9cef00e39054aae369b9fb7428b2808627e69242517f780b04c1da3de7ff1461934665879918e6e0bc88f2bca584ded90ffbe0ab114f0c4d4ab212ad0f182ec27c56f60f8850d40d297fc6254058f9735cb8d3ec4c879bcf46d735c72f338a2a0d025789ab097834c847696d1787cd89ef11f489649a6b2ce9c2c32c71e166d5d4102086d97ff34caf20debd6975b6d1f79dc214786b9ae9940438c9615241abf311f52fd4d0829e2fedf72dd09c21d2db81fc9c099545ecca37cd46a3b8f9d488b0c4272fac00ce4f4601084b6688c9889cdb467730e497ba8467f5d716d0c5559166c4577f46988d7310ecff2c05ed5d7c103fdac0b1e8810b6256d7f3e288c7d5131c2521360c6128b50218ed1d84129bcb6f7d7d395fded10a594b37a75b436a0a8a8c5296050a6a5e067cb8eb44224bbe110db3aa782d1a1bb41ead14be6c3175893640dd6958e24c2c5ed9b0744fae073cbd0be0260885c674aede3de7a25042a1d047a8dc1feee2eeb6359fa8c41dc3503008d8c32512ed5c09ab63502e177df96b44ce142d22ec95161569891872231411b20cbda4627628df310edd07f986081022fc7d7d750f2177d4ad6bda4d7659e219b8bc5d94af87f5c6a19c886ca4b6f73fa537abe99aa362d982357f081c727511f0e83512a41df8244b11b44603797a8e2f81578407b5dd2ce31e57f69d010607346180599bb1246bdf7a8038f0cf66d634d54c8e7eab6ba3b648ea9e076b4638814100b660b048482868e87736d0a285ce1cb67f959664af2cef91c28607a82326e63406f3de720282c6fcb3758024f55b21141ace5edd6c7359baf7dfa8f73529bde2c5f8dda70dca99d4a6152b025ad22ff91f249249ecc6bcd64619c4fe7e594341ddb34fa6a74da0ec36699515f631feaef6630836def1fa1edb9105d542b9f7386a7acc71c83ba702e4e65c1e0646af0a2e1e2f8c66e202e2ec5d80fc99e9007457b797b6f21e0db42abd8f36b3b4d12aca1e5f618c4b9adb38756b3d70da90505d174dd3ac9b0f501a54992289bd2af0ad3c224ec1903c0d5ac2461059c02f3271e0a5a551117da8659cf04039d016593a7e833f719408390d56eaa5b486db33d2cd0a4834c590f017a91ba448838dee55eec7d384d23961a4f70744e81f4980cc9c0908b2012792f7422be848ab2331d82a1fa36130f48edc589a1563e85b429a240101aedb8bb69718dc94ea0a5d7f328702ca052e293c6aea0760060d053212a3b8511c802f5681996894c745cd09f4c90e3786345377847bd95571bb06d3df7c501f3ac3a28f28281db48d34151bf9fb822601d88fca11c7bdccacc0e2d4bae0273453758ce4a59e31c358008dcb38bd1f4ba3eca50f3903bd72a921402e2b260ce3c88230a785f0b9c12b6acb40bfdc89150e221c9468b434453d5e21b32214a1429436dff3ad72d6f5336b9e36b614ecac472ff451e7910362fdf902ae13e19adc58ab98e0e63190c535f1bc8c6e8e79bc9a0be4bd2f8d6f238a0268e16f67e38146189c6b30b15b83c5f8b566e7e2a47fba8ecdda6f3af5cadfefbe20fb167cebb1a7f3c676910e1c0b684486e5a778ade8ce4313f4d9ca86334a491a25b3350a37364ac5f349522d4f99c2a33718c8b2e25541eb33fbc90aa9a373cb066e034cc286d4eaaae4bd13cde845daf8405f9483ac00576e2a58c6e64245e78f5f4fdedbbee1878e94b67f69cd1db7249b547b0521f1581e10306f6ba183c72176ed5aaac0bdadd090c6866b68d3687310150e1447cf69155ba5ebb4c0e23bb711d006766df2938b688b9a9d9e9d2305180a7fa566963f078ab08c63c0d1b0022efa912296da5808da449b371a32465cbeb50a54219d09b0f6401c1b1a16b6fb5965f1c360a19736866dd81d23c563cf181284ff52cf9e957b0270fa3c679fe2b886e0338e48fcb58059335731770a2be89c9a2faa67e3015c272caa0c760c523e67a97ea0439c06d50337673575602e62ef103b70058aa9c27eff0966abe1c733141a2574edc8c947f056fd825ce8514b4e16902c7ae040cfebe4181c7742d9c3272e6a59f077e11b5f3971027fa81422d2863bac0cc14793a3509aeaca4f46efa09950401343ba6ab4d63b084faed66f3f3ac636441c98182424cefd96d08ef4cbe544203e89fcbf5e8047aba4f601d33cad0892240812567032105cee04ce59185fe99eeca64dbbe9a66accbb32292264c07c30a3c6801e1052ba87a57cf96883d53e9964d91913d420d13490045f0bedca71c18f2ec282297212d83928af87498300e63363915946e734867d3c815ce72e7dd2cfb41d9c53e5eae2f5d157bdd3092afdc00c3713d001a702c455045e5b72f092f82db442606234a1805a0a86996df6fc490a36a8c3ff313c5d688a9681377a450ad024b3199d2d82a202738f8294bad029ea496b6f1b370b4ec782147a50f37806541d1ea5e2777272c7d547c025020757889f10b0b221b09b59c1d7ea4e51cd63f0e78fc1907c8d06d124693b70136aa6451e64eb2753a30900c18392937cdabbf0405836c88af5fdc95e45fe488300a625a3c635483156e31193c4dbef390e0e4223385ec439f5fe4256eacdb741b0832481ab39daf838e46e8f19985842a64d3944994b25603f68929f04c09c1db6b94b3f394fb739e900238898a6016684048b4887f788516d9da2d2376839813b68910d50bb4bf2dec60e2311059ce46070880b246032198f3ed48f81ec47700cb4a27bd43f5a262aa3a47c7b49fde0584d05f8f45885a6c33e13d38f478f58af794d3686f863aad7cdf54e38f7e1c5e5279fda0709bb3853dc44221a89a238460eefd9c8e409061c7cf04b63b0400dd2de73421776cf2c5792647619facc2fbc0195b9bceab3c6ebd83d9035de51ce4e7e5984108ecbded402cf8d8eb883a2d4a4e07b610bfeb1fd69d5d600b88992263e9ae3dde615a717ce2cf9bbabfa2bcc0796afc658952d067e1631fdfc30f84b3b612d60908847bfcd340ffb63111e09213166130384b9c2a98ea4ef4964f04a8748eb8f353bb100d939a3943cdf6afc8019e2ad6e84dc67c17190258eb5e16fc65ff10ee15a0c2a2caf6680168de4630ee50fd6cc70c6b11bf8478516dc261b86e05b5d8e0100500f23f8b0f12a0b341d1938356af1fe0bf4327be1fa079a5cb9779fde617d981642dc9ac1e7f46ebac35bc12bb4c1251a1e2d3359344b00ec1470140aabace8704f813fc253688008e1200dbfe228248148e25f88c827cbd3e0a0e45a914b1de530a631e7680dfa862d9382b1b84170e01c12c9cda4c879bc6ed4ef6cc088cf37fc8e5d5d799e2b7ef63d4ec43bc01da049427cc525e187aa6f519ca53971220c4aa19ba6b3434d6555326fd72c194aa153a4b3f57f7d57cb249f3ed8eb46e541554f0bef6748173aa3d4bd3ff0095879540139c43b3a297ff671af453d85cff86eb7ccf0392c7e68db271266aefd80d23561ca6d1fe5607d7119422ae98e654e20fdcc0125212886b8f5cfc365818281126cf897c932a91304ebb2a984cf6588a5d648355741130a9b8940ab748f570497e8706a9f951a5f367144063400b60c58a48c20066cb6e181c195141b5f8c08182e03cac2fb5c4489b08d856103601a4d3e44a928af30f469277ca1371b49e3342b8b4b7179fdcce768dd8ec5e170524d8edb8c916f957817f302a4d2f45753a1bac14b1768a216fb89e3888be25e398dae5d1ccc7e2a5309a9b67de7ae2b05f4388374081befc6a93aab9fddc59531c84408a190bb51cd6a4d4e62e1dd8234d2c4f653ca36260cf750a47dcb00e44a4c036190d8c124b318f3e0c8c2f01e145c66a551a8b919afbdf2a82d8fb7178ffd2920a3b2a6640d727b438c3299a007c824d3487b3f5e9f52e21d12a752655415a286f26968b5535163d05163cdc1085da6a5adb58b82238286aa7906036c9b63418c7afc481395bcd6812bea224f6a73c11b6c7e233bae6e78efdbb2edb25f88df674b2413577d0a00fc5d62df59a39ad81ea9dbe0ef2c75564a1925fe39e8350692f64c9a495aae33c5dc00643a96057806b83fa09c466596ae3bf0b052490b6148c31002a1357ef5e6a1229c622df1008bfbecb9443f21692e2ca96b9578f51e44e67ee63d06b6626c6d5fe9d18ae612b0d80233e08a56abde42bce4a57491ebbfcf69ee86198e9ebbf620b320810d73bf392332fb680c5cf873ef9d3162859f80a79d91fc8054761b54a6d9d741595a24bda25ea26bb8d0779c8a68173ee84c65312519a87b956fe0b674f103cf81d2256fb5fb7095a7f99afd79c6ead4dbf2c06366757577232617349b54d93620b9552c414dc4030b18deab98d7a176ddff775c1f962c65bbf49c6ec1fcdb523cd06c0fdbc644fb7f898138d14e66a91860b16fb2ce6c2abf5b286b3600597a8644a3225ef8365b429a7a1990521b4741314db5541ff7b9c00098be50eb103b3d21a5ff60c0228de7577af6ffd46f30a852e530290a093aed7409e08147f72e6775bb1d564f689b9bae522d436cd10e13230318ef75ee417739bfa11734d4375840b8b535c2b931fedd4509566456685d54b103765cc7e249c7f843c1d0e57f72ce87f9ac61f393fa3b0184f9ac989ab98934ba986c4aee317b4cb978cf5af5d8e47bcc09bc67fee4fb42644e6b65fb3688eb8ba5c2f65a28ca791bcadd7d828e088fed315fc1cf9f965a8f10e260c205acbaa8aab640c488e6e03993b6dbdd746f9c53625507d3aaf273cb82d81d51eb45077fc75f0e9d6f59b65ba69f1dc0b60c937db32b591f683cb757d6338d01132087909f00d215e67884cb2d5e64cb5b860ab2059552b18ee196f4058d71a6a2d521850ff1e81de3cb4a4d79cce47e47dc043e25fb416a0e28e7923949ccc369e7ab32a35849331a0ce1b2f91f513f6f3621af04ad3cd5af29862fff46da09152ba91f45974dc1dd4408ca0140c85d2224254283d28ed77fe0c9839611d09719ad1118d6ff38d69f88079621ee0134f7109fbd23afbf8988ff395e300058e5cbaf235e97c6ca513ba1a47512620100193788dfce164ce6301491fdc8b724dff51e5c2aa054715e99282355b38241a212db3922e2fd410406f6122bc6664112c4c32b07441e889249172bc9dff8f141e820d7cf53e9881d176cad4b2aaa1667a4ea4c457655ba029cbfbed74115b040d905bbb3891c1210cb83baf66299eb8b133a9f78687db0315ef588e0c8b3d79c874b5025700db929949a40ac805746f9d9fbd247e74084cf4c8e28c58264aa0a394fade198d723f8408f3ea6371febc587d5bb8f1bd3fb3e92410fb38a3218a5ba779a36df574f1f37f422d22e5513df17460ff876b78700b9a11e014741d359fd2ca06405e23f96cc650be16e20b9d4bbf71eaa8463115b2960f7047e29c145a8bf10d8f1c4e018f07d4067f25341015bf458a896c31d00c7727670e122a1a60d462fcc392d29d26e502336a63dd8a991073e6a5e21051f5b0d40056fed031cc893d55b6343bd4f98867828642c037e28ed75d54f4cdfe3366e09456fca43337843097b4b72b784dc460dd47d5fc33e7a771fe9da8828c94284795011dac3f28bdb6ca62f28b59b53977866576d80397fe7d8c6c399aa7aad23f86a2491278ced9b39d80749cd37274e82c59ddcca0d13df0196bcb402685afa387fedbdb61106544535adcac926ec666641b5aabb8c5e34b047b14495faa21fde798e23a97b73ae50108a6b6ba96face8ae92d0d797cce25afb2aa4aa58bdf8f402be539970b549c584126a235675282d3ff2917d5b2c39660856cf5d7877656bc495ac9d34368500f2406f249e13c9718b14c28555d24e888a11683452e61e51a8a6f880dbe6db210a135cd94dcbe5c516823d823f1922583c5bce928088228a076901db4aad8cfaf4e0367a1e343b61e9184c8f7ca789605aad1b6d4b2fbe069629ac924bb75351704d9e7abb94a04050b9e89c5cc066caef21f5a226c450793867e5d21dd3cd14cc78187c44e0093a6424dbe7d2258266c7548a46861c712ec1bd21f4e30d65241db0db15ca323330cbea726cff4a5f731f54a5b7e9bc44f0de902539c1abd20438f63881241585dcb92c8012be3e0c61c12d97f7390a15b3adc95669972dbdc54fa68e5b6559fd4b185da46c82311afaad5a64852c74010a042ce5de0178c786d1a97835a8ab8969f531ecfed14a8ce65e1f934d32474aeaf0dbcb7c7420ad47c33cb33564d08986204a31fb80a9da0a611230521b0ac7441b443bba53a1791014e7b99965f1ea42af5d098f405e738c08ff7d2a7ecd2027b6f4f91a161143ef4d628c6eb5c6199dd90edcfb39ba95bd6209fc9832db256600bbe0be7b1c1918477cc29e1ba0ad304d6ef996c181620c1e5e87f38f039019764732a4e0d492ba3b8a9ccbf8b802a5a533afe57dbe367a39f033739a3af0d6fec9bc05430d2483c4f94fe149212660cf89ee1c824c083eded659917e7dc42f6d017ad82a323e155780fdd043852a31bcd69ac7b5a3e7ca8af241b138d52d3ee5048395c77c7594941815cf61adbeac8ff7aed551b3edc5b9a969c67fcc3160c38a837874616b6592cb58addf10875be03237e563eb0a3dc26d43f7e595aa10a58a634cdd689bb210e100ea67e0bfd80cc32e4ae256afc59c5161479ddbabfeac385ee8bddb0dbb70e54b0480f37efab5e09a5fd59d48519df975e40c649aa9cd8be142a4ae4f30c85b834d564fbdcd5a51cdbb24d0f5f6553bccbf049ed42baeb368f0f5010193f023a9ca7d94843a6c0100f714ff04107a296e74472ad6130f2c1d2fbf23044cde3d3c152003940a8a30a56a3ada62ac167e7adae21dbcbb5fd9bde6ef43a0e4e1f0600a822c709da87bb3006a569da2b599715596d6b9a019a57ad4ab351d94c75fc525f9a3e8fb311cbd321270cba9b3e9c0a862da0618fb3e47b6b2a06be70695d76f7d55b20dd0651192d96c9c8eae23af8334d001fe05072abdf3907d61ab7798c90c0fc2e5fb025132ab51837c03ea32db85567f01a08db016f6c255bc9f8d339481a7d38576fabdd5813fae9d8506168252f7286d69476efc0f4db25fb8ba56aadc4f63f9d881b119a9a6c00c96b40c62581a0a7d203a8124b7129f0dcfa17310d74cf7ff34cc702268c0e31a1b3eec9bbec4a164ce54e285c633d74423924d2be2a23c2aad631336653ae4c2f8a0b569e14636d2eb2cd793d1991893fa726daa2a223363caa1a53d16ec01dab865c95be4f5383d5144664ff27927807fedbd0502823042912d09cb7f34790ea8268abf4f21a2a53082a80b62e44d984dee81833ba2b7de307bcfba2dcd9aca49dc78c151aa2544831a8908ebc92334819c2ab6553af7844e10509b419eab9e01cbdabf471fda8894cfffa1ab52a867f6a425d756fbd59b85fb66ef4351e3579a23c48223795f71e65d882b0458577b15090ac847820fea57e2a672304f42f8d30291adf66a11a9c2b041f08af245a26da2b558113cb302da5d05267b99fe855284cda9c83c86b83e9d55bc98092c379c3cbee96b62c118e8d0462cc26185ce634873a167fc5fdf6a2819d87248453876c4d6123fe2db74fc527dc207e5c30235e09ae2301342c3855dc34c631fcc958447509b667bd1944e61985dc9c180cd64e5af0c7d411a96e60e7ad2f56efc49fda82ff037905acd14b0ba507efe65fd2004e8e0ebeb8746b239f4cfbe10d029521edf57a0033ce34cfc5f83e1ac019e1ae63770061c4bfc32a351483805924a43efa63a6a529079f57a50eaff60100be4f9f9a2769217c8d8e500f4c7730df91f1cab21bc9d012970f2ea053d976b07f1145421ef89bf1897e91f82fdbff14e801e31f36533998db9d39dc4d7cba53c737f7473828b5803c73d7f49fd54450c2883021c0e9ea881e5545cc5cb93eb02f0e00e3083178fa4df72863577d2f8116f6db59674a6c76080de9c38036cf30985804fc7ec1615c82956480668453bdb62a9160c8bda7b00d15290aca13e99f3af85e544959665d4d43499ac807b63c5d2574941ed0a5d7359a485ddfbf3455a8c2d54ba1dc723db68e2df6a4ea2c5c2dddc875d3ace9f907b062f3d249376483039904434378e23a3aad6ef9085a71d5f3f38e1256ca57a6510591f25d15b4fce1bf4a6b5fba91574b8eec6775872e12e3bf55a55122a16e2ecabef6cac36543005b05a092a41baa7d01d61d85b649857bb6bcab68a974d891d45af36fc9171a57b0622908cb48d0f7a7f8752e9b51579ed398251ad0e948eda037d86a2db0521a7d0044131892950c3a8e7cdcb0c8c5ce893cdd0ae28f591ac4b004a0a431696f96ff15107e2ac71831de113b6ea57b580cdef3a6f4514aeb9e8b07ba134e4595ceb5268437c8e177e2450aa5c0c92027d572bb74bf53796e8a70c99c046913010520279e0f7d42f6b982a4179da9e29bfc9f651f8f3b0a283798f2bf4883bacb8c6da5cfbb75798a3f0c85621b5cf8d9e1c8329bf05fa9e09a0547cae5fc26d8ce850a8a1f57cb2e243379569a4ac5ec349a738089447cd3ac058a48e2d12f6d4a5c871382b13c38b4dd343effcf08faf6e2f93b54c6961017e509c65caa667042f505e12d77c2afc703289ac309003670588486f29f0ee65254b8bfc0151488fdd9ab60b88650e9f73e1952f142d7fc4645389fc15e0c91954d7b3c78732bc29a3b28a52cbf8a0c75b92b78ac112f1c1a823b23822ca494c607e7cf9f352f414c7c574c9470c8eb1731c89f230c8fff06cd7e556ef1fda814e15d1028e48f517bcbb189f235e0891a5ed8b5f68019c70165c0a87de294d3c68fbaca7efc6bdf12501af1e9c61c239e47216e68c7734bc0f75703342fa420673e141b179d7d411315bc65ba8474e252d500604322e2067983005fc1002d4032a7c11807e863083499d76409dad8340b5c8395c92186a47302162217300e1670dbb948756be70c00606111a05e2098f6cb88900cf821d33f22c38bbd229efde8533b4fc31570f031fa48830a736c61f6d12aae0aee27bd3044bbf2805e2317b8846b27121ed8e9db764b8200dbcccab785db05d33d1403644cebd3b06458d194085720153e8c883e13d1fcf78936139bfdd58985ec9ba1341a8be22c0659f72d21e298600c613d157a296352107a78052a8549230c35e045cb625bb58f112159891be8f96db84c3f8722b4a0efef64c3d740ccbc91f596e70104d63cd0183629a1e9b0d64125d8bbeec3f187288752f0b159417b533eee7557fc715379fb5a40e05449be1646a50523541c2e236ebb8e4749dc7496fb9cd171c1e562eb3f9423ac99b8e0a9b48062a2ea206b24034b9409d2c64f3018a60f05802a97d06dfdfdb8f2061a46376f9052ecb00e1032a8d9f6593ce157fc22052b4926b1a2cd2cfd65ecd29d3597d4482b310b91cbdf32f4b1a14b0b93636415acad7025fbcc18a13c6feff5f51f965781d7e2d66da06b5fa0792c6033f6466aae32649e522634ef2076ca909fd6ebd9964d8733fbbde215dd5fc54d1702e28fbdf17d3983155c319728c168c5b96900281e5caacd363987a4ef5aa7ad84377ee05e7d5a352e99654d0a431786a759423a33f8ca3cfb8ff6af49abea1e9962744314e321935efea8435c37cbb49dd09817eb80f9d3889acc49bfea1fd69372c8db6dd7bde6bfa6ee78e531e523c5614606c1a13df026831405fd3d30417413c904d679fa1b1f19903ad667eb86a29cb882707e773a4b08da5f18272cca0742099050415e58986a8a63406e189d12ce6bb0d3f42737a27fc3f91adc3b7c79dd799b9dfaf1348273c634ce17f937cb7b50fe70c04ae8828031459b2a893677c07e595a6da56f341eac752b500cb4f20214ab5daa7095e3b6a154417fdb0ac66b01d7d346e433cf0e6cd5a302862de6c11bcc96b280d30816caa983a210ec512cc288c8e04bf9169caa7971ca9822b9d9897285f0eecae3c1d43d8d60b268490c6edae5c274afe81c23219ba1bc265c6cb12f4116ca2f5ce1a142b6e7a04845778f80c17dac421c27b3f94e096d269440a368bd21d5b114290460227180267123c21a1ba895a7942b957e6ac909f9d5b3d09e7d6560e4dad35a552c01f3714c6b5b9b56b885c1c8e6090ad5bbf962443a93ce4a63333107753a95326e211762fa4b3a155a0cdc32002fc128e99dc61173f5de3ed7d2fef51b1147e35c55d3d60acefe9a50de2a7a39defd78e07de3f381537dbf9f64862a5d30249baa87b1c423854358bc9b716b2b1589a3f66de0b3f378edc904ce6870b955dfc00b0ea11d40c80befa71cb69dabc7990a42122bb799c2582836904f36d61da12ec9c37d766d400eb1f4ad8ee5e8205e1c2059d296fc0c9aa3c66a1d1ec456fb4abd921e10764549560f748148ec6f3eb21015616af2b7525cfe01e3b37f90d68a331236baf8cced5b46096be18614ca414b60a7c1d865ae79628255d09a47b7ae99a34946c96c0931c9268920ebe69ffab18b02a6a223525b33436290049d2385924757b93e7f89a37163f0358e266f15dd1dabc1f38053a12254c9291e8b5959c4d0372b09fd9c80c938931f5850a37be8cfb554039e34783410ad7770aa15a079bd91ad8129924ac02fcec8ed6b846359120698a1aa9c06499e7b5668e3fca8677dd3506117deeff4abb8666c53001448790c8c061b0d5fa2a62c4a1ec124707ff6c1e5ae082f6938a3bfae84a470df51306cfdc873880c92c2023f0a2b2b3f4c62a7f79388cb661656cc549875a46e332fdf1786d707201fa0068776af17b3d7e32602b24400fa72557864d0c09a0ed6a7cb3bad1a16901df471d61184e5808db540de54fbb308c01c0383ac0a06900064904159d4ee11791190b6a7a6333da05fa232629540156956576f49cd88478a6e520b624d99ae91be363a810c0f2f8f97ada06b7e189e5c390471c2060ac466f96eec968acb8003c7d068819047ad27902ad99022eda44600c3240b0a6d0013c0c3c0c3c0c3c0ccce3f9d6ee9bc5b7852da594cb97ce0ec8a594524a29a5eefeea48f65d40a4d3a8b3ff2815680ce30b440c57e88c3659cf5d43614fa833cfdd6359991aca1db3ba798e37e99486d22613d5badb04354ad05032f91932b89a98a73394c424c770526f38d193198a49ce1d647429e972198ade49cc24c8d8b589c8508cf1ef8475d3a7fe3114931c7a4a9f9241f42386827ed09931bbf5b80943b94a12ad8e2b99440e866258ff1335c60df84239933069b3fbc4e4b4015e28c65b9a8c6d13e39c0de842497fc65fed3422bf6c00178ac964145ff118436dc0168ac1326d8eaf0b8daf6ba1384298e039753c860f65a15892d4689e6ad67ea50660a178ae267f4b4c1a7085f2f888f9ff5f8953723e6880154aa225c9f3bbb349ac6e40150aeb31cb59e8b1015428a7650c27bf370d9842d1775c74af8392737738d8f072f4f89152284651d2d589c9521e646c2e684014cae5eea164464484da3ea050929e557552f84f2877ea93c45c376361daba1834c00965d1be9f4e924d30f549206840134a629a5be326916bba6e00130a4afb84d31d7af5f6062ca15c52fd47913d955030cf677aedca7488d70d4842f9bc4e26a5944c039050124eb51f82061ca1a04d7ccbe578f84ff20d3002ebebe79ea5f37ec5d82c3c553cb5cdb2c32446e9b7566ffde336bc6811704108c818630440e8800f1faf0217d8b061830c20c328981a3561c4f3dbea9323496ed8084000021fef031b36fac68108a32497fcf13685dce8c184836d8c0d46315cb4632c11f2f924f548d28151f6da13a7a71afd4549b7c7cf5975465fa938d87c51f0e82534663f3e728c91bd28eb88b5b231eb126d07e14549839c519d363e77ea78172599fe9f3d4a521663e2606b1280e8a21c44b4e61919b4fc3a1c6cab978b526598d2399da6e68a7131060f1e3772d0e3c60d0480dce252afee5f5ef2e0811000b105da91c3073bca6000482d96f793344c3e74a41b3d78dc20e3c730d31a80d04219b51beb1aafda3cbdb2d61ef335a87dfccea230ab9e6dbb6b53c946878e1c25b061431625b1e4ef18f48e4559ce6c9374ed2842b8b0288a5282d0cc41ad368771b0ed2bca217dc3af3a89832d1181b82249c90d16fa648e83cd5b51f4bc9ee7eb93ee383138d8d25400c28aa277cc5a1f2db3be5638d87c15851327e8981cf65b3a07071710551453959a6d92d71380a4a2245ead23747e7409775a0a4050510c39aa4ef6a86f6972a728c750599f631a933f96f83045b96be7ff94c6887950294aa2d597eacc3ef2f34e5214d48f1af526aa4922cd1e4539ea9fec9d3b7a127d760188284adb1b63fd64cd1a7ddb50946fff36c9702729e51e501444df950e422971e4a8376eecd9f1c871830c1ffa89d226c1648eb193707256104f144c9334137327d1a475a2f441d8b89f48d9284a38511e1dda5f3fe6a41e369b286d6ced8e6ee698e36aa22469d1c137d56f0cea2413a5919fde7cb4a4facebf000413a550e359269a9cdddd65808005116001c8252eb334fbacd31717178b539e5e4d77f3e27e06b1444177d87a49929c4137d6041ce8400a4c108245030148258aa52f37c9bf0a51d3bd0f74f886bd0f7492160184122565663a73c7aac7e42751defb9c1b4326e1b134028824ca15eadd49279363ac8e0d1b3750e24814734e77e7f1028144d9aec49b9c2da366ab8f282859347c7fb8de98294794e76e6436c3d52f5d9046143509424f765fed247818519093d4edbdea062dfe228aafa2e14df451ad1615510ea1dbf49612cf9e37904494a47af94fe7a344354d0e1e30d81b360608224af2d36f4c3ae927214af810c5d09ee4c65bd1a61e3c4e12400c51d8e8a92469b25698588852096a7f36c91fc4594e88e45613432083f066dc6344c4f3aaacc644c88228d75879c7d4791e3a5a60c3462b0124108511253d3fad46b32701a2187a3b684fca74e611fa4339f878fb88a9caacb11faeae4a4f8bcbbcaa7ab12b6da726f6b386fb504e93afef4fc61979921c3366103e14848cea2554f75667bd87823cbb0f3aeed143e9640e9f7abfcf83adef6ed66e972a4a0c5d36a303c143b164ab689928dfa19c1f3349f2d66a378e76287c1293a04dec4faef9d8b0518792ac1cfdfa1f9f639c6cd8f802081d8ab1e194fc6973beec410e841ff03ef3349c43e9456b8588deccc97c3994d45349fd900d240e85b72e37f9e7b4cc66103894d45949baf3469d870ae40d88e88c9c30baa7e59e442f1d047143c9244185ff074f1b4adfd994f4f45a9e25ef811b80b0a124a322c2be84ded9aca1d4b1f95443882721572703440de54e57e79a54ff656ed2504c62877dcacca3a124be26f16d9d2da3c13394c5e4cda0e46cfb339ee50e40cc50ec92af4cde24f99b945107206528e712c53eb99b7a3d51070f1e46070819ca163249d524f699b9061943c9ee32775fc3286983c4505a3d714da5aaf9af7b0490301464122e26e995af9342206028ab8ea7dac92aaa94d883c78d1d3dd208d87aa44601c8178a75eac13487d5102af74226e6509347b9205d2897244c7a1d1b93f4814406105cd003102e14e4a737d9b47976e6932d945b2ee6edda4c89a9d74239ef6564cc60929e128264c1ac1d2f914bb51299eb3cc142f4a9a9821c3ac868418f1f3eae008285d2ca6ac88d714efe9fae50ce18b54f14db536bc256289b922e2d4e52f208918254a1183756a353b59ae82c07102a94f7833e6da5fd73979839804ca1289f2ac7ef7412746f1c3f5e05366cd800c28f079142595e94b63e9949124465e8483dc8e006894241eae6ae4979b35e7270fc7815248e1f4f4602e1c72508140ac2463ea76aee4ea2c6c106021644a0409e50da5819a13e1a88130a4a970cd2ca3337c8f8315804204d48c7db56d1ad01c20f3420f46041370813caf94f282d9e4d0c651a1c6c377ef828a3c70d1f39da7ce8c8f1a30c0c802ca1dcba9b3c99f05de226955034613dc9fe7b42ed0948124af6398409db6432ed09828482ea3b3f25896528a9047284d26eecd16782c98fe68318a124c799d82bd22469a3a918a5daf42ba7313c741e11a3a4041d4e953e3127eb3f8cf289c5279d43bb86b38451123b428436cd6f9d3d33825192efbe39641031d718308af9b3f34bcbd5d598337ea1b58c5ed9bbadbb6768c54793adfba254a54f381b91313ded5e944f4e5ae95163aa4fee0c5e549da4cde99e9b19bb28d998bcbfb23339b1344317c578f26e0a61fa1f5fcc45f9a4daf01f831ed7248b8b62dd6a2961e549ca776fa1b7ccbbcddbb78adcbc8fe8af9f932679866c518e15d7feee6a9a7ec337ec865a2d8efd6edbca2fd5dd6f17a1e42842ade9577d66d0a29874d00ed6663a073dcda2183ccde634a2b437e646de8f1d3978a860cd6ecc904539359c6e13b4971b8b62183fa561fcc47c5b0fc30c58946e2cc365c9fcd2237631cc7845f1bbfadf849d0edf320d335c5170d324c91dd66d45c9de7ba37f5a796773e0b8918290c3878f00b1a218f4466f3425aea26421c62e73d6e859345594b6a48e1aa3a7e81c8466a4a29875f6415534e8936f5414fbb3a97795b05bb2768a72ecb98e25da5b06cd1465cd79c4e69344f1b1ba14a551929e8c1016294a9fc4459e5c9da369338a72086592ba90a17dc32a8aab5de76aec423ecd654ce7913106b5d33b09453999688ee134ef79d0014549939e1d396b3a47988e0ce030e313c59851e49bbe92abdf040c333c510c17a26f74e69351d7b2199d28c712a399e7ed0c4e94c7935b8bd56b49d2b3899218252891a7d7ebac9da189827b96e9e71c4f89f3ccc844f1f5437f46ab3330514ee2f369479a7189f249371bfb4f55bc4a962868ae667fb05835c1ac44d1bfb4eccac235c610254af731f76992f9b7ea4928ee7a215736aa766af3499fa0dea9fef32a89829697ec9d7392482416ae6795ef721a2373e2a28435295e72ac90286814d529aa641f3dcaf0c08c47605dddb66d6af1cd7044618355bbc99ca3a43499d188d2b5bd5ac91fa5e46b6730a29cbbf76bb3e4acbba2198b28269d7d4c924fc9b17ba288929b6de6a07ea4a7ee3312514cfb72dded3949de9e8188c2896be8a4b25e2fde8c439404ad396bdeca1835e810618621caa94e10d335f1947d6614a260b725478e384f4a9485198428dac6598b13af3c07fd0c330651504a548b4daa36b33c4310c5cf0d3226ad66f6fd1b3e8519b79c74921a10c5a0e3dcc3cc99b8e18c3f94e4b7c5b6f57333fc50faf4f9833a2563297146ec43399cee116f27c8dcce66f0a120f73f4c123526951edf8369d3e683384ff550aebe9337939244c4d47928c62467f30ef1ec19cfc043a94da62d497cce54a799718752c875ccaa3d9a6187d2ab27294a52ff77623ca30ea59cef1ca6e54149b7cea04361b666a72166556f9e26b87b0e7a83527bc61c0a4a99585a36d73c89b91972285ee9923328c1746ce83766c4a1e46d3fe6667d82b8cc0f1fe9c79b60061cca95b13bf47c36b16f0e8f3432511cb5d0a754eb249d37146860a21cb35cc9417c78b940e3128513e6e626722b8307e9cbe041d9c149383c40c3120559e3c9aa4d294d65e29528587a49f7d7b8d716628153a2a083ea798f9d0f1a932826edbcfd3b2587343d070d49944dec9618253c0c028d4894832a9994e849a84f9218116840a2603f27aa1be3c613660d683ca2a44a7f86aa8fafb3413a9e86234add566da7e46472bb9842a0d18892923de7d3e79fba9266046380c6224ae2aefbf82841341451eafdefa4b3670bf9b80d1b3412510ca24c7612c48888b27e7b8ce3f21da218741c0da14537a6eb18a278c29914a224842ea973ff274441c99319994ddc31b3e6406310c5bb8e234abc51ed4182288df610b25734028d401463ea67d89c67c28747031089135d36baaac911d0f84341c48f92bf0c4dd5497e285f682be14c9d1cfb993e94fa3d898e5b321f0a2a631b43c76f0f45f5f2d1d3496d3e391a7a28e81c15351363be527dda91c36c5d1e8a7af2da75b69ccff0d0c0435194ec9a64d12dd93789c61d4a4a74c94e27b434ec50163575de1fbb437e2c0734ea60b6c7e787b9c99d3219d45b3eb6edea917290031e3a8e061db8baddf6d6b8dd5d9753f51031a27b549598c61c4a7972d376698c7eaab720073b72f4f8e1a30c1a72304f92e7e726e8cf71c8440ff7ddeca00187ee35870fb6eb9b253268bc8157ad0acd751bdb6bb5f1b0db41977eca887440c30d451347fb33bbc49a1243a30da55efbff351da539096243b9e3fb6764925f83b3b6314665ccd5507a8f6fbdcda2515d9d018d349434e7a993ff8df16e84867289296d92982495f8fd194a9212e375e29ceae4611a6650c462e453d6d264dcf5c36b2c314d89616da25186e29cf424e284eccb3c198ae9d2e24bf76328a87efa882861167231946478e8763d0ce593719dd37099550743b9443bb12688cdb3fb0b25494e1bf5b4646bb4bd50ee3ae9648f61b4ebdc8552e7fe9c44837be65c28c6d238f2bc4b0cee168ad7aa2984c9d91c570b25b9293b8ed024bfda2c9494f664d25a74525bb1505292f8e4aff6259b7a8572cc6fc7565bb89a56287e099dfe57b35ac32a14938e3184095d4285c27c8cd1be1242762e9942e19376f8c998148a61b47c7f6ed35b46a1b03bd79b35e92c572550288bbd6c49fbd8cd3fa198ff1fdb3b73da36714279de5decd6947c9a9a50cc4d62ccb784d60931a174f27f0cd131ca964b2858786b0cf7307a1d2514a369e98969fee5938492e736b1efa63e7948288a4962d2265a9456e608c5f421a4fec9d33042417a7ebf4eea621446c9baf1b7ea3cdac448dc9bc60de2611435a3c7b31493c56561943de633a55ec424f10d46499224a1f9d6266014377fa7a8d987ff35fda230d7d6793a3e853c932f4a394ab2cc3edfa7c2d48b92b230e93af46bd25de2454168495a6295eca29c6fc3897af32dd1441725b1f6a5ad847f3049b928899fe64a1283e995205c14cdade44ed2417e12dda29c639ddbb4e4e6bcb145414ec5e6509270e5732dcad14bce264c857e8b69514ee149f8dbfad9686751da64a2c47b6551b8d924c792d23f751a8bf26b9e6d19e5317db028895fb3f153875eb1cd768c1b94865c51d43c6bc2ed37ff24694541a9fa30524cac289a3c7f42be53b6765651aed6f978422c3c34aa28657fcc9934994e994945418aa7f213424549d6472f93e4acaef953146ca46dc9bb199d7553142e47e7d327da9d505f4ad7c838d948518c252743c791b7158fa2f07d9f2d7b223cb6a22887895ba7347942514cd2bfbe87f380a2fc769f2b9bb3e9face270a729dea254c2c394a3c511e3d2262aca413c5749ecd743899994f9c2887fcdef73059669d4d944d12fecac3bc696b345112231ecddd534ff6992868b2926752c34449aadb7e12737389d2e9a01b63c2fce63696288c32f9d5b69613625309eb4c7d36912e25ca7239e3ff6ef29be4244a525929194b3efe8d4612c59861723ec8dca4642612053739ce7b5cd3cc492051d0e984294d2d5b328f28499a3166ec7821f5e488725a19b7de5323cadba6c7c306a1fe448c28275533eb3a2da29864e7de1cb389263d8a2896f29224d9f54494a468e724c7f8f69b1151f0544abe2a37d1d33d44f9d4d59ee8251b673544c934951cafe45b916a21caf5a75c748b76cdc9274439c7f58dafef07519a935bc6c4103ac57b4114cd4f3d2875e2c6cc3e10a5cf92bb49eafb0cd503a238b274c9f81bf7b7fe0f45172d1b3dc4d793247e2887db89b929ea4349aee9f02d429898e543a9e4248aabfebc26cf1e8ad92b4f4ed927c99fd7433956cba89d2815721e4af26f9377b6f1503ab992a4ec7c8772b8fccdadad8c36dba1d837d2333dbf74be5e87f268cefdf0940ea5cc710d2e5a4e32cfe750941fa165ec6fd72d974339a81f0f967b92ec95c7a1fcb7a345f375b64c7028079f5d3921f486c20879e731cb9be0416e28275d651e94244c4da70da5f416b19373361434bfe8889e9de45943e9a3493ad62841556d3594f466433c93eb7a9c869214231e4666db0168282949ccd5e5fe491a693be00cc520d663ca7a3c71c67680194ad2c94ea23194d817b603ca502cd99b4bbbb3dd7bed003214ed3d94b8b1ba34af76c018ca1ff44d50a524f15cc20e10434134ca26d946b3f9891d1086e28e12278f4992947a620780a12c1e1f549f18cb4c881df08582ba1a1d94bc397e72d8015e28f629717e57a3b7c8b003ba502cb14589d934cc85d27e9a97ce9bb45fcf5b28ccff8ac95e6ba178727f724ef221e5cd42397ea6c98f06754db1503039849f3cd14d8cc12b94c424c409bb119a2f5aa158c2cb677f878dc1ab42498ad031dc7ea5f946859267feacd453e2dac65328c793a6274c923da9622914b486f17062cc5e6f144aa17192d6e9b35a1328944a69ca3a359be74b9e50b03e65e2a98e99b971427183104a6c879cdfbf09a53453eabe59f1d533a198847ec7dabc0d8f2fa15cf268fa38bb120a22ac2deb7de44e9d8482d692b3a4de48288fdc491ef3c94149da2314ef377ccced184e0c3ac008055dff90f75d318ad14be710f5ec2fb2254649e6b0d9db16f39cda6194443b26b1348930ca6361e141738c3f09465147ac971e2560146d4fde764ffa45b95a830e3bfb6779f24539442f4b84f2700bf5a2f0176e557a635737bc28e8a4e4b85ba74aebbf8b62ae96cfad26af4eae8b622e39e71221e449bee7a22489bcaf3c392e8a5b725ddd1b32d7be45b9ff24e926b3c9b1daa254ebd994204df251712d0abaf7c1739cb42829d942798cc15914e37b58cd18aa2c8add3e7afdfe534b4e63d17636298545d104df3e5b3dafb1f4152553e57b6a34c83c25571493a449e913745a7f522bcac1e33e56dffa4c102bca39b6242ff1aca2fc25930e2932b65b4715259119c7f3bf67644c2a0a429fac38a93e55655051342b25ddfde43efea728c6859b98b9943aad9ba2189a3ae9c509e79797a2289a24594fa885f03429ca5efd16c2378917f7284a6aa3a98b511bb6675194fa638c482b99e40d85d1474f1c1382a29c4ad059bec593dced27ce1e6bfca493f4c4ed274bd5989dc0e54e07df109313c5247f4c4b9b287606355d95b94e3e4d1436e6aa7466060fca444149b739e539c6a0b3c444a92ef3dd524dca4cba44495f59a8b687ca7a2c511a95e9fb9fe4e025a612a5b1903e624f36934f89925cb34c235ee2419f4439d47c507767926d245150a6a4b41ddbf6aa235196d11cb526d7fbc59028bfc7338fc9d4e88e8f288d779f9858a6d20d1d518c99b3c70f4a7c38259c959e17f113230a56720923b55266841651527dba499d6ad12447112539446b9a2c62c46912514ce2e824935d770721a21c4ff3cc69fe10e5d1b8aa76bd218a1e4793246c8874b90b51fcfc143d9a49101713a2a4a194ce5769d0aa0ea2681dfd4e680f93a61444a993904f52c965f7c9409477afc4497502a254a2bf290fa15a62fc43713ec9e1eaad5257f44339a96f93e4a4f45bf1fa5098f33ef978f2be88c78782d0add7394ac856777b28efaec8d2dd9ad3c44e0f65fd30d99fba3c144c661bb5215ea3a60e0f652b31534f3af9933ab13b945cf6cf948d143d266687b29fea7bef86d310b23a1474340799ceeba4d2181d10b23149de393e87b2ada632e1c7f2342d87b229c993b01c39fab371288ee968276b8a6a131ccaa5e77cb4d39ccef20d253da2fe838e6b32c80dc591419dac9d468d16db5050a37492374ebd336343b10c69dba093b41f75a60d6a7ca2249558823c31f96bfcd81305ff111fcf24c19424de353a51cca2d395601d270ae2d773f2909a1bcb1a9b289ec8bf4ff9987dd4d0443194f64c66eff5992b86418d4c94d38bae2731337ff01320d4c044c1e497eb6a8c2d19352e514c1a52f42779ac6189a2e79c6a449d5c119b6219352a512ebf3b8fa7c1fed39b3da8418962bb856bac1377bea31a932826b184da20be63ec4f9f0f6a4842f558e286d166a3c4c126831a912885f8dfbc274f20514a5151ee377a44f2a72e21c3c71185b9fc9593274ec931a61125994ba9fa10fa77f4861125c9f3c9b03b49a68bbf88d29dfc4e4a5329a9a22ba2b41b22f63f9a88b285ea3aa5e3492a938a8882dc3ebb0e4f0f515062ce262f4dc7ec493344c93449fdcb5385a0462152919d9bd379d79d33cbb44ed2eadc76bca66a10a26452ab97341f9489ce638f1a8328de5d6ca90c66156a08a21c9b37c69383d4749bd6084469ef4b1c5326eba306204a724c4f9a3fbc3ba615075b8d3f1484bca61aa54dfc500edba3dfe6bff99f3e94a4c6ab6e86ca2e0f1f0a7ae544c9df7e7ecab487d2e792495613c4598c490f25ab93d9503ae93c31e5a1744ae893972778286cf4d3be57b2fc86ee50d837d144666c0e1a6387a2091a459467eb507c4d72cafa0bd1a1603a835019f739147309ba3ef3f7a273391483e71c3d33cafdef1387b22913254a45e993cb038772ec46db1e159f719d3714c47beb6af96f8c793794e4ff3935d1c13de3a60de528aafd244936f7fc1a3694d742ffa5aed968d1aca198ad47ad8fcc140dbf1a4aa28c32d5749fb3e2a7a1ecf13df87529318512349484ea859f989916427e86f2ceca499dba39ccc8cd50ee9c2b5ec3ee65285a6f34cf0c33c9f36428681793b497faa4a3dd6328c90b0bb311b7184a32756851a2bac41877180aa3a6c2d38de610256028e6c5a7095df28552c9a372a6cbfa4ec90be52e4fd28796247492c35d289de87d76efcc85e275275bf753f22ce52d94dfab74d24b59ad132d943c7dc927cbb459288b9fe8b945dc49112d160abb967f6b25478abe5728c6bb364f82859526d70aa512aef34c27b961e356a124a6656f47b75428a5a78f0ee99f6452ed144a3366a12fff4406252914fe4e9fd8b1925584a250bef2ce92a4d3dcd743a1bc656df24fc8a4495a9f50b0b7ce4cf377ef517542a94dc45fba8c2a2db50905a1e3a60f91172a3713cad5ed5a21d2c2349c4b28ca9568a790269649a6124a92dc4cee41984928c7b92f41e388d7cd4142b9e36ad072e6a1b3a7c611ca497a0e617a4b50a1fe400d23f055826910bf8b51ac35ed9f3fae66958951b295d39baaf7c9db61143faf269733855112db7234668bbd303118c5249d9992748051ecd4f999841acde8fda264725a2679d48693fba21c1b7ce694f4d19bf5a2183b2649bae86c6b0b7951d0f9932467dc7aee925d94b37492214aa48b82c9eaac31d5978b723693b3cefdaa687ab8284939afd63177b72856a7b9c72ed39d42b628c6b8676b62e6e6b24f274d95c8d6d768514ce1e3395e8cf213348b923a536d264d9eee5f16c5f4947b595277cd8e456156bcc4382ee2b2c2a22056f2a6134e3d3ff98a9248d3556fa3bf357445a9aefdb2428ae79255482b8afe31c698539c695055082b4a1e357572eb7f8d69fd4872e0f0e13ec8e071a3425651cae4e949deec70ec781d2a4888070a3a211e3b12435451fa247cab3647e8b80c8e4b4571a3a9f29413435091a95986a78b8a6a6abedc852699b7649f7e2ce41445cddb51d23c766f89e94162810d1b3d483d4c5138c974ccfe5af51d836c434a611eeffd106a1bf4800a4c100110b020026a98082185ad71f5f6aa9a1b6a6f1973a7cd7c9de7f51b4531998ee3299bce63100a1145b1a4af582bd983f63cb3212414053573bda331f3ac487780604762c34608288aabf70db4e375fce1274a27c9a426a4b56548d18db41d219e28cac9a913a519e1795fece4f89df9781da683104e94b3cfe7e8c77afbdce26023830719b889c2d7d86b4e9d6193f2a41eb8268a639e338a5835bd9331c641d423054808c94441456783c6837427c1000e219828e767dd491afab84439adef5b888f134788250a1bdf777312848e49653f72dc28e311528982ce34b2d5f479d06ba23942285112adb34a896aede031c6183c0ef6089944b93a8f4ead921b94dc50fb1122898276d3a5429bd4704de2f1c34f0e1d2d48b3a4c3981c3b422251de6e4daa7b2f4208240a6a83ec27496c9a6cf7238aa6f44dd493fc18fb097144e904f562bf279ddc492aa411459356947e67b8757b429069d744986f281751f2f7a47fe2bc8a50bbd4bd333f67c6422c4746d3d3e97442e64414737667c6bc99c454f7010f0fd8b0e1031e3d7a2822ca3277a7a7b27388f27b3025c91235a70a8518a260324cd874a204113f8514a260d66d4ac9d7d2716642944b76b4cb741fd3ac0da2d85974cc9a98d7cf9308a2bca594f832e7a9e4180f44639f5a6be36135da49c666958e49cd0610250df30eeb27270b217f28c8d3a57a44a7969109f1435164c6cb5ae6a036331842fa501639da24cb249f749011c287628ddbbd7828ed496746e04d08d903723ad5e634159a43881e4aead5a6975bb2e14d42f2501439be4912e2f908c143316597b049ff9d24f9e60e2569dd37376a26c93bb543614f3ebd1672931ccca40eaa962842ce43a74355a5addbb6adbbfdb3359e1aeab23994f4578ed588acdfaa8e47b2630448470e1c1e700f84c8a124f64b7fc4d23db4290ed76a6a9bc9979878eeda89527ea16166423894539968af0893fba237f05d99f6e6eda9d9562675ad87cf276e2889723abffdddbbdd9ed76d28c8c99b94497b34c1c30683b2ce27e5d6216b289e3461a5bba39ea73d440d0593f27532c6457f5a7bf0c834144bd83ba544733ca51f3494cca4bafaa8a14d863ee40ca51d0d76a55d76ff6c33947246683ce1fcbbd6c4c13dd28f1da90cc592af73de4baff34e92a17c2274c9499d8442c65050657b65d99f47c627866252d9d18484a12c32aae4fc5427040ce8a0241dcb36eb0ff9423989b97d67ccf54688178a331b4349d9fb99efaa4148170af293ff6bf48c1fb2db20840b25df8e3176a9fd28dac2321be322f39d5ef97325e34f7bf815d11542b450cafca94d901e278fbc43b250d0d3b91ddc446dd8b061c3860d258460a1a44d0c3a9c68997edebc4239c81266bec365eda447c2e103b3408458a11235c52ffbc49ccd56e14e82ba7c877df0d071d834840aa5ffd17e9bf3b97e445328691f259a701bd51029209aab5a2d73f17aa9e94963feb9e770162a228444a1f4efd6266c6c64e436831028146b4f94cfde67b70e853ca13442f5e4b4b531aba3214e68eb53ac42dcbaf6b64b68e6e838293fcb214d28c7d441d697d232a1709b515de5434b28062174ee686250f26327440905dd6032dc67e35f084392d08bb69979ae8be57bae657edff83695275cd886102494426637654f8e50caea5b9753e2c895156284f2497dc2c5c9d5cff9548ce285f45ca34eccd0af2146b19430e932675c934f5a8751f6d63c4d3959d7f44618e50e33d92bf306a3246cbe0da54fb859a0018c8252fda3b2b6744745bf28c88d0cd19a363789721927e8917e8c800a347c51ea700fa9224cb849a99d0868f4a2f8729ea93d65344d3238a0c18bf289990f3610767c0f1e88b60b33d6bd534e63332de4fdac6410ea2ead947451ae9195a67473d0211f0eb400edc70f127a80462e98ddb3cd30cb32b5ddb252bf41bd9cf2be69e0a2205affe4661b69dca22478ee6ab910fb2466b628281df38312ac369930d7a254b95ab5694fb211272dcad96d3f5ffd953d7e90416316c5dd8cd5c984acda346451b8127256e23fe336a3118bc2a99a1fcd5b728627e978189c2668c0a2a419f4ca49c2d62f2c1c6c3e6ea41cecf81e67c2a0f18ae206df918f55797f42649051862b4a564a4ed29dfd2b84d28d1ec9073c74dc403b722427071aad28462d194ee4fc9898765614bcfc6c3f289d3b4c98c62a0a3aebe6747926c81e2d0d55144e36216ffec3ca7d92549432dd4a08713ab8dd8c83ad073be8b3a1a0818ac2fd06ad2f4d728a926633b1ce14269e1eece046f249c78db412dc246898a2a4849f587b62b814c59252a36dece40025e5418314e59a4fb32bc953a8d44751ceb9424ffc4d1222671c6c3772b023c70e4e0e7aa431ec76404314e598a9497ddeff6ce21c8a92a4fe27472dd37d37a1018a923cf97f620e267ea6d027cae65fbfa529f77497241d37747cfae1e3c60e749461d4fc12e2b1233d51ec0b79fe41fe8a49723a51124bcc4c27f13951d6a8a5d1e4db9b28c955bae41c3ebb4acd9a289fd251b74b0214c0aa805905eeea1e3081070041c70f1c39c8b1a3026583d78649e0fcf051468f02040008a6020a00c00f1f65b08000014839f83272b0e3752040003e7aa45306e2d1838c04bc20001530c10248e0230719af80002c01003e7c181b0410c0ff7864a30001f81f8f78f4b07100000c2024013cc8b8b183f33f7cdcb8b100000460c60130c70f1d387cfc8d1b0918c9051963e0a264da37e8e8b0d0f97f1cdc67659c8d917adce8410ea4e3dd7eecc8b182915b608e1f88c718b6c01c3f7a90039571e34602466a7180115a00818c338b1fc9c718690c038cc8a224c8f137a1ad25ecdfb128c8c93496e1a964cb0c8b62debf9231d218bc23af286a922af54dcad4521e1c6c4020638c3406fad891e3878e1c65981b3d74c41578e30602465a81397ef4c0e143c78d1b09186145b9645866923cbf8a72b8ac6686fe465451ba4ce226c979cfc494a4a2a02778e89a1c94f8304245c1a44c7b1ab78e9ca2b42e9b4cbcb418fbe088294a42e618995464d0d3e848298a69f3ce4cc98e1c63208f90a2646aa61bb7d4437d8e83cd94e1c33630328aff04f36830228aa2a80c52c355fd89fed10f8c84a2f8b29ff6c9451c6c7c81115014b4a7b90f5a636c93dbf5c0c8278ab143a6d02f39f1faa130e28954a9aa9758328ad6239d08c208276e13664313b799384cf025ce12865a9aa6ca9d5d9956d65ec6b734693f9f100eb6b4837741258a1e3266d23cbfa9394a144f78f57b8e7521b37bc2c8244aa5b9c4a0351f6a4a5412e58c6d4a85782af943391289c2696bcd9bc603094bb5dd6baf6bc66b3f33d5d73bb969e4110525d8f9a9eaccc7a41d7144e9aabd42e632b17e4efc08238d30c97321a3bd841199e8aae99a9eb86cd8ef8adbde1d8f0d238b28af891aaa942729a224cde95822ca4173d099e47dd80811220aaf222698969937313d44417c526b533286288f8dfcd7ec93830617c748210aa635a8567f3f6f339d11a26ca6a364768c394ecea11c460651d4cc7c72aaf4ddcc9b114194444dd886a633794f8e04a268e57d63676e595d320288829f2a6d829efb1264ce1fd00fd807d6848f3a1f4a731b37ad9d73b392af8c913d94b4e9ae9e779710f3fd20edd011e4a0473a015e8ff423470d46f4502e4f928e3999891da1e6a1b09a9dfb36c976b91447f050cd57bd9698d86d56aa4853a63577925ce23d7287b5435176e3548792f0d05326975c822879378cd00151d5f9fad4f2ee3093cf416c5252ba9aec381e1427638c333287629247a68993e4d4881c8e39446793ea8d43515cede45c499bdbaa1138988d1d236f28b6c9275d79f99ea73ce206b3d106b3b16cb8359c0d358ca4a16c6726e611b1ee22563414d64e357c8e6be40c66638c1133e84819cabf5e726ffc6e840c66630c66c3062362286ff0f9912f3a494a5a236128a853da645fc8236040b5db34efde66bcf4f46cc63ade8c9af48f912f14a466f0742632a2fc1df142b13428bbd3b1b326118e74a1f4b1271b3b6c46b850ce52ea4d123209aaf71fd942e18452a2e49441f69aae8572909e329eb41393a33c9285c2aadcbfa9fbb1cf1e2c94b5bb639ac67aa41f3998307285e2e62037c9e99ba6c4336285a275d05297ffef3eabf218a942416a2c71e9a62dc4e8a950cc9c43d97a121f9942e17b5d74fa1234228592c99b564b9cbc318370240a25d993b5d5e615917332028592d824e828a6c37cb63df284a2b5ab2741a73f25ae67c4098591a5f97309ea4431e1912694cf5de694d84c7210f1dd08138a5db27ebdd449cf6eef46965050d7b973ec24934468b80a234a287512f387fc6f89356f1298d1f7a0045d9abb1124943fee78768de35d13468e505282bcf8249510a556ba1b3142e1e418991d74bf36f46958c916f967528a021adc58810831cc860c4486513093f94d92e418ba4b8e278cb2fe66d9f8b1be60147454bdcf78bdff121d304aa7e6b7da7dbaea3bbc5f94da4a743235d5195dc6f385d9b85e947ff653f626a55534e823871e2f4aeafb4f07d541a810d5eda29ce4ad5ae6fce8d392d34559ab04d5d17027da4ebc5c94949e2ee9f499f0e4e2e1c2abd7d4d339dbd6cbfb50624999c4e47975d203915b94467b3079557489794cee6c51cc4933886a15ed49ded520528b72ce341ba38ecd6b0a310b22b4285a8709edfa63153268162549639e92640d1e4e9224870e32c6c8e1a38b882c4af95def27273df53f530f320e4920128b1888c0a220e7344349a74ecc597e45e993aa926122bf94ee5c51363d2b414dc8ca51bd1585d538c9243d615694338dbc9d68b57fe2ba059155944ba633f5eb23a74d5451d854512799cc1e2b3fa928eeb7c669fb24c9558f8af26ceebe5379a100454e51ba98f3d4582e62bd123105fba27529e765322b76594a6828418a83ad5a0a22a52809fa445151f99202454651cca7b5ab5383ae8c57441445d3c94f0a4fb2e71b86a29c4989ff0d42dd6d2c11505cfba2a1f679aeba1ea7c8278a9da553d4e369cea2f544d1479deecfb1ec444963e892bdd4c789f2bf8927f86fcc966f37519283d5876fdaeefd730e229a28f7bda6891fa1470853268ab9d4ae66c9d1754f9828ccdb86f7c961d4cf4b94e43d49fcf8db318c66229628c7f15362d99de76f8d05442a51fe1c35071b8f99465a773e44285118adc9c49cf5e94bc49328f526699e3bee6d0afb4e441225258c556c79fc38aada1d2291286eccd96363bad261d277c38e07229028478dbb7d9d9aa141e9441e5190794be94ef330d7ea8938a2bcfa27a771cfe18934a2dc278ad2583bdb0a228c28a9d431bd39bb7c18177320b28872ddae9cc8282a561551444979523bd2caceba2e1f8928093aab6ff797441051ccebe825e9b5af31af09228728977091f1f29dab20628862d261e1d9e49eb42946914294837651f24df6b40821d2880ca2a0c4260f5da72963121244696d44ad6a1a88d2e80c6d113517116e0e11401453f5758ce85f87c81f4a92a0d7b1268c3c7028e28792b8399774279488f4a1dc49ddc4e76cc520c287829c70a3b4bbfcb4bd01913df0417e9e984abc7720a28762eaa4264afd4b2791e260437d3eec052279289b8cb9cbbc3bcae8ce8be0a198a9eb2e4b77a72ea9c81d8a374a8c28abdb8e8db143b9532619aed39c2731538792d6f45932299dea80081d8ad77d723b37bd8c0889cca17432997a4d1d9e566fc4f69eea94481c4ae2b99f24eb49823279158143f1a4d298c3c79c6963b33144de903ad1f37e0ac9107143c9d73f66decc6876276d2846cb37a1637013fa4b66434aaa8f1af3690da5932421af322fa286622949a4cfbcbc69ce4943c973f8d371cae5c4e7d150da4e33e224d9f39eee33147490133dbb67cda0bdda8b5ce9b568696dd558ac693cd757a40cc5d5b45ad73c42288890a1a425c4e7a628d94fdcc7500e1ee63698b46e1b1743498ced99214b109dd3168672d6f45f69161f26563310014371ccb3ed94d69ea0f942316f8c8bd0d7bf4c1e2f14e3a80d655f3a88cb4d178a9e5e5ee1a1feb1a3225ce052d76d66afdc43376e6a6659640b85fbcc27e5d77957e6a06941440be5f0ec6862d44d2a9e48164a75823e49099399d61b68c7ab0744b0804010b942b94bf81cdb3bbd8c884e45ac503871bdd5633419a4777ae4484c03225528668ca7c48896181e3a727063470e1c3f72f8800aacec6968db65c5798a67ecf0a1f7276f083de21b884ca1ecf976648e959fc98d1cc80111291474c9969eb147a507fdebc8804814ca1f579608140a9e4a12139bcf3fef49e409961495a1338747c409a550a132f3e813cbe4078448134a9b8379146926a8bc7ba41f39924598502e494e93bdf9a46fff6e180e16a01e294874a416a01d65f0e8002b449650f01fcdcff8f34e4409058b53d26d78273d6f8b24a1982b4767e4954490507eb96ad11af3d94f8b1ca12093d0eb39d63a2819c4c16749c408e54e1fb37a4cff1b2bae518c8236bd6a6268484d829c39a8410c21d41806d61046929c33b8f5bcdc5f841ac1a8018c5249c2d6c83525eda44e7f51eeb93d8fedebf9bf2fae462fd458d32ed1773d1bb9d5a0a77b84306bf0a22499f431ea7392470fe2eda2705f3d67e287357451d0b09dea9330262f27b928e77c46ffddf51875848bf2ad991c46fcdd64d0dda2984d94ce694a6430cd6c514eda74f47eceef6a81f65272e9f6d7d84188168912a3c922ccc3f3b3606573ddcc6c6746bb54bbc63ad589b93bc755861ab228cfc9a7d649fdfe85b2462caa30b31539ef34797bb304bf0c7ee36003420d5874066abca2ac4127417daf7d444e355c514ad950756fe7214cadd18a9258dd5892d4292b8ac14adfc486dd98846a0835565112e4281927fbdfc8ced650453179483f7152f4c7ce5414de24134e7a2bd97bea4e420d5414336a8a3925c956da696b9ca22cca3cf5dc09f72be91aa628670f22d4c7e7ac31c99f146a9442ad51a1a456d3d91aa4288ebc0f6b325657831aa3c84f2e499215f5923d491425a9d459285fd911da50f09566b7262a3bf23907e9a6d793bc791cd40045514f018bb7a834ed6542028248240e8804e250301052615d01e313080000401e0bc562b18040d7a57d148003582c1a3c382a2020181212141c160983a16018100886c18060280c0887c28060403899e8383e2f9e6fd0ab2d69ddff66b3d4e2c677e13eefac4842b9f0f19ba0774394022a62818d376c527f7ffd5f2a9ff64fd0348df06ce0f01aea3ed6fe10df1a72ffbc3242f8fefc6ba6ea10a0dd453dcf5919bdd0cbc4a9ad4b587cdd9d01b9ddf7e66d4cb1ffdcf6aeddf8a7bb7ffbcbd5775d820c2e06b0dccfbb070522510689cd8a4f2a279bde709f6e819613a41f27c56f1747ee3e0d1a954560bbcc95305c57b4ef4adaa531b907a09061811271ee2d3ca086ebaa7f1495690194ac5720a4ccd5fe0653e48ab7071c1a54a543ed15515722470d3f51591510764b906959c5da92671c87c78241fbc98ccbc43e0dc35b15d9e1f68320f9b13d55f1cf472fcc8070e57adcddc07f618af1d803c9dab558669024e25862c0e1b5702749b0fa56a4a35440148d3b238c5e8693173f33ed0a675110ce54256df23270c0e379b0498c779c156ea42528fb2bc832b547ea10246339e10e7cb7f195987e937f0e37a667af5e53e7bf90fd32448e1ea99a282b9954138e43c07d091e3bb212badd8078cdd8754a2fa9eec758a3e0bd51e5ebba629ae1aa7a10985a3753f15b80980e7100dddae5317b6b55d1ce4915a1d28ef7f15c3e545eee2a74b52fb54c2c0a6d9346522f65da6f23ee583a926685716d25cc35e11397d223159032efe5288db02d5c7ab1c7f135f6be1668844b41287a4c1368b70f92e52ea9de7ea1fbd20b9463c0f503c6cfe58f1f3e7811df365714fcb3b839a5f5706f6d8db6e6cfa523e70be1bb8822a820b1b0eac9ace8dc330fb2e2230b8889443a01078b21d81c2e95d6d2066306a26eaf58be54c8ee7d4c2ab3bc686dee81f4c75482c8dbd06b77ba1ca0517b578ba03213789caab8369c5acbfa998d148c1081886f980d02bc518d86cf2c299964838cf9c7612f73d410d451ed5867079c2dc6af381a39eb9260af3a96762c10b11777be9065f3e9b93930161838b0c4b79b5bba2efccb5886076662a27dc850eefce6673f20c0855bc0794b46db67cbb375e4dc492ca95926284662c3dbef8d3af27f90834bb5913631e3cf564e7f719d6a073770fc58e0ce49fec54ebb037ccfbcca0aa720f96a427801571cbd42adc4f309d288fc8700d6de7dd0ae35dc1809f2df9088b791e0b5f87278dc5cac6d1c543153211b483c493d6f52f38e55365b1484775e2f779a777f4bb94fe5929533a32b5f6f407c6b546102001822ba16e7fc43b64b2502056873ac5e53db2f6f05306bb7bc58ec2701ea073e9bc0cc5955f1cdc6ed07c3dc326e5063b5c0c5e2dbbc53acfbf7d39b67b665b84af14d562b945e2b94e3be813f24f0eef211ef3922ce8fbd069780fddbef56f0c8a167aa3c8d33e92ef933d1037d372ac27eb7fd29aabae077c262822fa72292362d8b5ab8f2ec0df90fdefdb5b1861ca7c05065229b7f02c9b8d19a05e68e8c53e7cfbe3cb049987d5ded705e3bcee985aa3a54293b9ad66b84de603e6d230900c22a578c8394c505c2f00563e1002eae821a72a9b165f262c5053b65be8a60359b81893b5e4f8c868838adc0971bd7a60015d0c34e6f320ea22bf352443df2892dedf216a5cc7b1b944a32ffa2cb1cab276b2b345febdfd220131bdb4b225dcf014872e19aaee03e49530c17fbad42e33026d70918c9a17938ae5890be9513d275f0ab11414883038b60655f11c82051308a17908b39a83b66f0b1fe3f3b8ff41d1a0bb5314863e0e246e0e444cd8a291d81c31493299c80a2a78f1abe986a2623606e6c3d0d8f725733df1fe613bf9cd38e5317b8b2cec78a0a2be54da8abd4e2e44d9afb009744f470f9829bdccae9b43bca0db9b8f3a2b7464470624d30cbc8f395746a91cd0cc40f321d40271725046477553a6dda03392897b649c45a377dc5b4ec078736aecad62bb3523fdb84691b3c6090eeb9fdafe44e17321c5e60a02a7b8846013b61d40252763fc2627f6587c8524a28e046dcb321e77b7806822ee7dff8a44ae27675d3f812478957dd45ab8134989dc9776b0bfe387a3d9f9a1898a374a9860783a42d29a19689ac04c4b6f04b6d6315131c6f9ac9b303a37389dbcc2fcf48b45c5676f456b738fc1d7ad8f0660ed4fc749bb95358e2e59ce59aba13b973d415d01c3d78ff4f3c180213d259d9765fb74cbc0da49e7c3884e076e35aa8538d8151f10993644a4dea2a7c8942d26509573d71c68b3364bc1dec25b22f58c42240a547e7ab5a4352d848f1370137b684feafc78b70d271f28e25435c5a565e7886fdaa9eb7977ea5881903196b03af3d0667324d6dd5a6cdb2bf93f72f8b92518b1cb122dd712a13107ec5175bf21e256618297ca765a7f6bec2360ac988803d8dfcdcab6d0422abbe678841eac797880d640a86c1965c811a352bde1830e81682b35864f56b2edc332c96bf546962bb2477bc1e56dcc214d8f052d3b2bfa4a83d332dd99c747599e3dcf59451b39ea7809f5466a2e348b46bccd112d99f4d9bbdff0e55f74adb18509c31691e85c69a78bcf859644ca3316628d4ea1c3de23100abccdcceaa9301d6fa8b90d59aa02cb69663daa2b215094ba380d90d9753f0cdb9a45aeed19d3490c211b18f88b19319bcc43a8f36ef68cb4ca30dc1709900693a21576392929c1aa0df356e5a0e4ac710dc44b19013a78d2b02a56255c1da8c148d295c848323a00a08ae60477d7c57e0152b1f70f213d057dfd3f112e747556143bad5221319978e92657d2a1ba99469ef73f3f0edec0a1325e6dffa047b1f0bb289be2d9878ce984a882922e83c8250274495b3718384bb753abbc5942a0b056b07ab77423e50d74bd51969fd75574c1e1ee095e5623360e386d0c89b7d8a40cada64e93984561ae5406d32bd861678750f436f21ce1a254b98d350cffa207b9e3aeb2ff7e29e4f1eb2182cb3f9614b0ad4271fd4f0a90d53c47d2340ddfcfac5b030d1ec90149e3454cc29ba57276f2ed49e356a8e99cc7a396fcc962c37a0dd64e867562b0a1e336f5bb7292aa879ee119b497dd560debed42aa064888f01a39820831b67674fbb8e319936a70a3c9d3d634e31a3399721d96281ef5829978621eafb170aa09a12e1bcdf76ebf66f1efa9a7572623924d5464af02c25214c84b2f610eb4ba88f6bbddd12160f3e183dddc2b496183d2f634c24a14d65534ab8edf76700e164bbfafee8c3b8c8f7e5c0175a83608023b383fd926177396f15b62b786107f258ae3260d320a599d364a4e4129023d9a7162d87efa30877e967346f09591e28543eb3d7bd00c77faf3b8d6a975f54ef7bc3b2a56eef40aebecf028f3633b212741e27e4ea7b048b159eeab2b801b636c3e01920c731e5c599c0ed502a50df088d4a0f826b6a43e7e80bf935b1139d81458d5bce38a2eac3f92f9c0d926f37089575713f6a5b12996cbe3f6801b27e3a7bb6b8dc7a954305bae4a7823e80a3e7f1d945be6019edd40902e7eb54e9f97d391e1d4b0dce04104d206bfa7465e462e0acbf9fce8c1980cd87d9202c6670d65b8722c9cb0d99bb34480f0715c2e094a9ce6b7c4570053a60434e659d80157a776be1761722dc9dc72abb00e7e4b9be27cd2573c6afe40cfcfafdd3971bb174a6516ab3df75ff5be7761242651c665fe65bf04a21de7d751e2aa4263e1326089f03559b1d299eb9901555d9998b7bb8f6142ba6057e1e4924800a6531052db459f2345fcaeb726ef8d3cb56e8b67f5d3d96b64e14f32b7629a350914c24824ddee4c8487e85e0bad95514519ab2a856fd63fe545bd1dc81495d780a35c81969a6b321a6530198994275884827152dedee18caa4be183010fb341e5e06f9b7d4eab784c501efe221ef5254c2bd939cafebf7e64724baa50b55155cbf354954c6aeea2d890a618f76554fb88a46fb94332a2229256afed311ccd9511403a211723e559885698b5c2666e68c1bc19e846f8af2158bc1b068e0513d64af8254d71cc8f79a2c852df712cc4a0c23887b6240b0b1b1bb8d06835dd1a4b12b8dc32c193640a498297402dc3969cce346f8a5108f3a04b934b5891d4cf613068814a73ec3ccaaa0402c24b20bb3b7c44388f24d19fc7560fbe53150a2cffb8d14a964dc5c37303a58b41e026e3ee002de7861380d44b083a13d25fa9d27f7d94d7b8d24337061669e1c7d5607d005bf361536e9fe439e4f507b8ab7e4194edd196cb99d87d089170b5ddf061981ee04046983f441446db6d911c880d5c104a4b6a4e077d7126f540386eaaa0a747aef857e6e6f5c4eb7bd181873706b19b4793cd3b34eb7fdf2cc9dd141f79bd60fe488e9cdb11767367d7545a05e7d461c4c5ae91ca0e80b9a326003219237ac9069713dcb652d004875ba0c8e05a101056aa9388eed11f306f25b179fece685d38dd6793e989fe685e54dc90ccc04f3770d601437b82e8cc9ff571b2d3824312293dbb860dbfec62b2ed1f59a0089480984ad2b5e4fc25fa3632353b2cce60026a70c5191363ca5f2d54d43d0e235db8c7e6868cd364bbfb440779a5f1b364853212cbd82a5cd2a6a5b54589f56b8b2486b29c4c3a2e64889733f16b5c28a2c2141470c4ae0660697bc5f94a8088e0e69ec047179a9e2f492b266df88fbda9bae6958addb84a6a2b0f439181b4be305d1a19f1ea51a31163bad5b1516b18a0660cd8652ab45c79db064009be5b4fda81530c59b903e39f322458aa44a4a675dd8548f7fd22b3b776c52dbbf586bd8054eeef93b959364caecb031b56004f7be7f97d8c374b3793b8fe2dcef5e30350ba45467124675376538fc7b754353953d63808d95bacbba919af896060f6db3a9316b251b0ba07a4396ce5aab5857be007e97f396dfaa08dfb21d2cd66d31e7fc77f7978fe2abe5d1db29e879aabf75a54f17d31d1ba7446fe15e4a6bee64ace914f02174272e82b4d8336fea6eb6049bdd0306aacfb81d4d512cff6a59e52cd817e0095b18cc3f4603a8a30bb0cb3123c8d8c446581c002b1804c7fd820f9b4166348142947d7870651ca31e8abab3a345f62d1834770a1c667c98a4746b0eb1e43833d3a7fd8fad4bd56112025093c89813b096d8fe0f3d93d22741313cc755ad773af2d0388ecab776468a2a9e076c503abac8c00d6d80b1aa1211e0e6dd2010612a666507cf11ab1184184815b6e01864e5df5c87f7267876b31f879c22e87f014808d9d9becbf60c240ef07ab34a2d0db73799355542f2e5c6aa0b3896487a3865fad8bb16d783d894281cb0b9c56fefc4e55a2be32536c19b68484b6c6b3d607c04eb11c6bad07c1e9e57d41a7876cb08bd5231fa0d418a302ebc6c680b23f032cb50dd057915b9d25e10bf3bcb7de77ee80a103f3d9b05a4a5a194e3b8a658dafb44cb2f5b7c7a9f06ce1a9a21001524cea1b11ef25f060916ad265803c9c315a6504109fea547e31d12a6292dea6930aabaf079d6e3cc055a585d95c88ecf6329f0f3254c01a39bc1727b80fd6c80ff0e639d46829dcfe40dfa141f47bb49a8f0efc3514341f75121e0f83e1fc2c4640d3d683348c2d1bf6adb402754fbe9e91ab2a883d60b41d434213b9e74bdeffa4190152c5ec64b0c2e6f0f74782eceaa3f87ad2421ff81da4571f54319e6849816eb0f283269c5bf59dfc1da81f1f9d7f98c088f34cb680a60034c59d428572a7bd8ea5b2ec39f7a633b549475c5ba43b423b4fb30a28b348492f6d73bd07cd9cdf010b06b646f1f58983f53044af35a424671225746185bdf8fbd5d4172e69039bb1651da3539c8db11f0a265d7b1f4134bb5f8c11d5b31b22c680718e3005682cb3ead0f7e74522cd19f79297c252c90677ea02c687ce064cf0c32cd8944423cd56312f46ff8730a765ab474edc52d6b13d597093e9cc621211fceb47d4662ab731f87f0b35ee2862c0d943198577426480c0fc6c51079348b5c0187458882bb2ef0bbef5bc04312e6e39509e7129cb646d9f47d7c6939de0a67ad7b0f0891f4303835c0a8e769f8119cb3123d6c4733f09c3183a248248d51be0df98195391a88ac93b6872d41a758a01d77c60da1283fa055b465a1e6dac5e55a5f80d88c0aada3ba86575f378104ab68a6fe4f99ab904033f99bd3eca0f05542b503e32df1ef62a552644e2b88e281c7a83c71d9c8e787588c46ee7aede898d95063ae6654982fd16b43006100ccba41f630e50b52a29ac790f80322285f30a86257f372161a424c8c71cc821ec7621f30e855de14538e355a73226f9829d9d87c96527b142c6567596083925fcc4c01a4c1052a7f1a44886d734d09dc21f57db79cc4d1200a34cf76c375b7022f25a7312a86e4c50082061d0f8538e6227bb297d5100c22aea379bd631d00a5c1986267704d26fa6ce740a099840129e423d0807f07d3498e05aca2139132938e2aeb95d2704510c63960bc4933bbe729de9b02abee938f7f88c17c44a87f5a572f199925f5e227214da4ad8610db0d0294945c874266aa0b299389c931abeffbdec25c0816192eddd46c0e8173bf7477197cf1e83e4a60299354be657113a0da8fa5d439fac6bc1f6dd6ab96ee08690594801f6c7ddfb9f3ca5f1665ba8dcce471bb5d0973e36af9d729f6951315cbf99b9aebc7884a5383c7af44f39245ba1acc0bc482d30d7ce24996e83e9c0acc284e8b7f0e298b02109c79d4fbfa4096963e721df7db2cdae5820468f430321e0fd4014d090299d123d6a1ca35a2d28099a2d9a4742b5525f05e611d111a2fec1466ece051f28451e130fb0e60f33c832074da5621ae781d72733c037befc3accee4d3be22477e3fd50689c845a9c35877a845cec57225b171b2ab7beaffd5cfa65ca75af616cd86c55ee95887cf8f393641059d255732373c542092b009057c44563abe703f9a3cc7e4fe43610a78280f93c39bbba49013601982d074edb80987184c4f69eac159a0b83d2b79339e5442514469fc694fa4a60662df7f4262fff427310dc883c5b3b2b7b34d78a116bc9426590c096541edc5866a85da29a094b6c8c208e66f4ceb0fb230a476fbb0e9670bffc61646dc6beb22035598fc744710df6ebfb5a15bdaae680c164de9430cadba566275b75a186c870a5e013a8dc499a9cd1fd9eab60f58f33b4c99020bd3bc28abe03e8a8e48bc37839c9f1246dcf36d1362811242ebea395f6dd0a3ef9b8641ab1b4a09f6370698a92aa428364b7cc534e7588e8e9134aedd855ed075a850c840b9f62a26ae959be3fa29ab7782fa1058fc6f6c4efb3aa285f123c76d1d48f77609406cf0ed624480b99c1e33ba83a8cd9806cc5848337e17da96541b53c74ea7caac35d0e23fa8d481016b0d5833326bd398e251e33e30903a9ea89a0846492bcad046c43309b16b56b8acbc226800fdf7f9e8d1671ed8856607c219d28a8440de40c0c0bdd9d07c613f99c46bd71fa808dda610bc5b1b30aa9da95259c4d48537250925f77d4bf16c8746cc81aea4c0a1b95cb95bb8ac3284879351c94846761e718a65890b96c1a169eb750a278dfa74d4e2c63d135a0000b5faac5f44acca669badc3b7c79136fef923f5f5ee97a959a9cbc4c055e380ea6ccb7ecc965e99e25092c9fa231397d38bc3d1d609e71842bf3a4e27b72726f56a42e3dd16262b83e42b1e3c7a3eeadf2ad549f42b3d81ef2decb9a93c0e4ea63e4ee350f85eb508f7b3ea32aa9cd231b676bd3d93a1bde937098acad9d6e2aee05e7d7e28839cb44b719a6ae900dd0719bcf451d3016a614befce7754a64b6316366b4e27be857d0f3285a0c6431b7b1a5b6c32eec1cc7f8804a5526d73fcd97a427bb0e7959e0fd91bb6b01d4fb85eebbf0fe2575c2ef87dd6477ede735f44ad1cf78a8e478189a4f70e5e66ace7ec95f18bc0fb076aea61eaf3fc8c256b80cfade37027b76cf3f128976efa0ddd9f7bbb29bac871f52d54322374b5fc502a01362b0ea365797153b7cb06e4c53ee3f95c8529a6c59cc7595244809221d77d6e58d03569e271df2f87cd0caa1a5e58122381a88f0668092aae9899f679b8c94dbeffb7744737fdd6dab06605c8dac90253db52719e5a9fbe8aecc2e0bf5e34f13e6c7715c5fa4addfbdbc43ee64cc9ca3867aedaf993c0371339d9efb638c52a14cb4591b07a9d633f9bcc6ac59bd9ecdd5a609ed9dbbb999be8a7505f24e17a586436af11100e09a0e821597a8fbf3f2b93f2d2684aa99216e9009588c37de822d03664bd7739d70a14396ef0381ed3edba031ba85ac9c394466cf2d1258dd2722d7466d31722606ef3c9697760a32d15a6cb7d9b6111bb08c8d16199c02e33c835d2baed4555f25d1a336ca989615bcefc45c53e4ed609e2c95229ce01cc945ecb064176b4666d96f33adb739ce7cccff9accfbf196f19d08fc258731885c491e005ded5fdba835bb94d5ba77d7a907b77fc1e6fea4edd085e849e71369c970987350dc12cf69a6e1a52faff82cbcc2484c515c91719f1cfde938ae2227238ffa31fe36c40f8fd5dd4993965e738e1ed3e708c91323808239be19d0254a140f0dd94ba73ca95d5220f86fd1f46c929b3205708ea562cd825c49abe1b372f0d62d4b04acef139da5b7e5bb7e6d6eee1f6de399bc3c859b309ca9b28a6884b0e1c82291780ab0222513156b02d2e5e2cb4377639d1864c1f02abb99bba3fb7ec0e3637f7ddc89dec371d9cb0e30dc69dbebc9bb2c34025c69a832dcb5a63de5076f966aedb8db8d1215647ef9f5257d87b7bd8764613d2a29455ad3d46dbbb8ef2e88446b4471beab1fe0e7ba573e4cec58cd3bf19a5d2493721f423efb46742a9c6c4d2c2fca6dda99c5a9f328a5f9b7eaaa1033aad6d761081f79cbc6794c34b08be2fe40a04403fa1ce359293ae59f1ba56ca5aecefd7781794c262a4a258634f9cbb51fa9b52e6c6e5dcee04ddd3addbd79596fc42596db1f5791448eabd2ebe84bb60d578a228727daa34a89cccac38425053cf7862291b9af0b141c97265b2604f9fa2bc3b40f27653fb6279a9f178997f4ae933a1815ce5174599c1b4d6352f21725be88816aac254056976350cb4481769d3f0b654db52fbdf76f666c4b40f9dc7631305169bb08a99126035a7d9c2c5f80017e321603b3c4e8d1a04d6ad5e97dd87e449a8696ac7407eb0a41579aaf04acc95cf53bcffaab689984ea4cce91289d33eca58b3cb6f8a9dc1d10ef7fb5903997b7ef935bda8483bbbd39c7f5b7f192837464768c83854a9c7e68fc5647b1f5aaf4547f66c0b026d0eb27c685c2649196d03ff1b002e46f319ff0b440ff43acdedfbef92acf50e11cdb9b4cdb87e2b62945eedb3044bc2218ac2246f1e5267ddfa5037b856fd0431a2f0820e8fd821e78d0d49e6e951ad75b22763190e38929c10e23a088c24e75b1b684037377c8a4f80f19e01bdae87f0b81214c2c913cc2b78c3bad189b49c21685f5b5484c71cdf902295c00b9ebb4cdf4c7ea177aea1efdf6c76cdccf135000789f3dda86140d88f6a572e14e99fc2605bed9c35a0bb6633c83ad220420257643f2071b91cd73afe01564e9b5a743ffc88490b6d38166507b8159805444fe523a0196dcf9d73288caab347bcd6aac67b8a3fe53c52993085846e75ce113f2d3cd2cd8b8e2aef771e3003031fcace871176c4e92835f3bc16bac02033ab82c6cdac941a326e8e0db972e65c18b466b3281e0dad029abd57de149a6eb895a3bbd34f7f01408465b68975732bd21c7880a60a4a97b833374793cc261aca327dc31c2ebe598e6ba061bdda7419024c70406d9f58ea75d29b16ab37338ab540a29c53b9b1cfc28cde1b54db2c03d8a4037a6cae59cce85f9bd6b5e7697413c8d0ee39610dbdd3eb4909a5fea026382543887672a89240d0606c466edb09a859d4e398e8a9b95d894eaa529a121428d536c65ec59fc787b1d1b012a6ad6adec75f0f000be40845d2ac179a1e006ab8250f33f507424707b837c9dfacfe17b03ef3a65efe68e608802ad6539c8f1a4b170a290186c7ac5c1f720486de981f742cc9a92875d4a29e5ca92cc6a12d3138f94014a9b9cf0bb3018b1d8c2081ae46f17f883c039cd70ec25d5aff7088273284baa5094c934a017c4d7138a47e74015298d56f4cc8eb53da12b0ffdb1203ed99db5684c676c00f985c0d7657a9f35021b332009b85c0762c4360e51de8cc242aa4688623db90e05f7340c0a32936a49e2c2a68722c2790e14c940bb34189d13c0cd2da722456c4b7fd3d92f094c2a194167cc3f07389fdb1d91487831d7f0800fc7902e06b51620a2b1ba7352592b4fedf55dfaa3715ba078a812fbaee73fa17092b0a494b07ea22f1c2a6ca3c1c9a421f07e7c801410d39c7dcfb050656c30bfce9d3918a6303324c01a32318cfcc084e469743e673fcf36bfd7d7ce0b73651aa10125c54e9376e7b1b137131d3e5c216868d7e69f87d25131907652d01232408e18f8f95c6f703584e7d353a8ac93e654e3a49844ba594ca2a6393449bcb5c55a52c730e016f7a55cf4361db901ddd68e33ce5ccd31e7281e8adb0526403b14b987b8956fc3c8983027ea4b495226465c0ab1b137fb4b05c75ee2e7d84c5dd9d593a21422bf815a2880dd6a68c74e9c9170df616c946190a9b94390dcb18e121bacd0af274646620a20a6549f2403510f8d390bc54ecb2e505a6d34abacd1ad2c5fabe8f08676c68c59b1ab7e976566f7e9a910ef2cfb55cc55fad8dc9f313d3cd972eba7692850307041c5409508629e7acad7adf2468bfe56aa32c6683d9036b997eecd2da42247778f680e056f903580ba092f0350832fad06438e4044a0125c0832cf0120ff12d3f6d02d4c3422b18480122885dd76e1322558fecd34d4a3d83d06d780af4feb5b4ac20769ffd6195e2dc75e033c7794fd87f8b1befe97a147b141b6a802f7b74b3408af05abd4d144d8122d038a72a3298ddae9eee2f547f1b502cbb64f18d9995e05b6b93e9bcbf538fd1d255a1db5570abd875f9e221b8e31b09cf3a4e45b285832b1d438b39e01da1da0e1bd4c654a88591be5505194afb34d74bc32b4acbc40de876e927cc411cff2b749c129d057dc9a7054fd8269a316e1bb1b498981eb678ef82fda086e77e064e5a7ca5156b1221ad4ca1f3f2e299942d08d9e80e6334dea5b54087913d2660b4ab6b8146f8ce71d991a3e23004560a72d00c6c7f09cbcf47b7b02c3f61787cc67316aa67288430443b4de2a24d491e60267dc83356d97cec0161a63da106b8d843ca341e58ba92014c710f85c14edff8c2dd208a0aa482bc23bc51d00cd9a990be0556b35720c8e1c4e378719f93054322caa5c83c350880d53749aaf3264ae46f91c0530a44599bf0b0361a4284d22c82b43dd0c741a3e0b75527771e6b38344e530e620ae1477b5f73c5d84d40eed8ec2089c187a8d5fd7849380e19b981abd7c1263650ba0e6e2b1ecd4e448e41a329193ad18e24ba4cb6135c5710f0522e27734c2c4fecc999c510c8a6f1ce903e940615482356dff6ce541acc302a95248413e9a764341c9a68de8c2b9cb382dc770c301b23552cd8cc91894a8644c30cc5239f1a0658719f67b9a5d1561226db24234f8d2b82776a5938009591e17aa0cb67d7d2d89ad101fa935aa6985fdbb3001d57ee07c878cb852816c698c9851158ade9835087257ca900a07694f94c393565b694ea75d22b1316424d5f64b197228d6a89eb36e3ab1743c7aa093050e1c34e63114ff06951c11c5b22e1ba9ef61c9b81bdce3f2c17d379c9608dca064b5e218e3324d972cf0d70e5f68ee293dd7eb00dfdff40d114d59081e8976097c333227e560e58d362b02e772e0bee04c6d7c295007c5286f2af6d21bb1713f5cae41a69be9626e7b74c3d2d03ee37f4271de9cd5d95b8221fbf8cd740320bd285b0ee22f94d157887049626b264085697e2634616ef914622b18d160bf9a3292895a34e9f10cbcabb76302c2ef13537c919092bc8a745709fa870cd217e5cc2af5d2e4a9287637cfaed26a939fe5bd006a2c9e426bab3ce774957e188436a010f8342de774cc144644dd427f7085b9748264a2175bd0eed1dd91a4e9875ae0d", + "0x3a636f6465": "0x52bc537646db8e0528b52ffd0058a4ff04ee24062c13521068789374086c8a09b146729cc19a3a00f0b70c566b8fd8314d221ba56002f06409b933ae037c2e03f3526190dee8ccce245707d3bb3735cce81f7778285a9bbf7ef6d0faff1b698d1042c8267bef2db70c761401123213308b39e7a42ce79c52e0484bf106560e34410eea7067a8a35d9e429d0c4a4e165a773ec9671df3496217cdb1528a8d7f1c949c1b582c010b1a2507a855b4a11538c6baa3c4efbd6b6333d9dd98c1c7cc5104c5c6cab7653db3ba4badceeaa0667599e4d7308a987df4b5895d4349a9f5cbf1f5d8460be6d16888b4b39ad807fcf4c17b6d63e37b3382c314634cc1467ed184296e54d9c0103664e3a50cb8786c081ba202fb418e951503a33901038381c186380a6040810ddda88282691d522b392b99e5e8d764a5e837c74a39adf5f9ccea689bb870965573d3a85e538ea8de1c7b39205bbd40b86bf552d2339ad255ef91409d9a4a532a912a18ae5e4ae9f5cb597ae6ebb764290f59c9a7ebf4aaf7b15e2636dec6ef40dadddbcb60ec9456c776ced1993367e6b4b10245d5d6128d07ff608d575e95ed17888ddaaf0d369e6cec6ca4d70d973888f59d1d5ca07125a8c3bc037584802746319bee0c567eab77062d63ac5e0a4f9786b1f09487da5a150afb80cfa0c0bd5f0e13638c58a01ab70349c84b153bd857c5320daaecc52c8c0903d5ca848183bf241bcf1c647291c1d4628795750e4d610e4d79f6cea1c9050b182d938b56a6d3882c46083b1fbb6bb2f13e3646ce5228261be1a3b3e3b897ac5f4e077b3469c13a206d822f411deebe4a4d4b6d952c3cdc7864dda14df05a10b8f70b84da0b647ea767bdcf46d3cd1853c081c9c636318ba12f5e4172367df9d7c927df7b37f66bd9958b5ca97471a5cb599bd2d54979fa276ffdc9d3cacfa4253fa5ecad88ac5a6ff40adcfbec984df22c2bff58f9f7de8a442b399bd2eb9e2d55c043b2de22ac7cec6ec946cd725176504a564aebd7c646faabd9181f3bd60ba564e323165c8cf2f04ceba59c95b766354d817bbfa629d15e5389004bc06209b1c443f04c3c4722f17dd9b54da9bb7b2ba58cddf589b6df26d95dee8827bb58b93b829b1b352fe569eb5897f5ca2b3829676775257882b769133c4502f77e39de789a469f68e5df66440167ce9ce191f27d599388d11e9621aea8f6ea0512b2ef520aeebe2bf799b1319e379eb6cc3ee2794bd22986a7cb646cacfdbaee68ac1ce5b85b8a2f02ea588ff56179666c3ce55ac0c55f6a35ee0959f95b6232f6b6d0c39204a6acda65e0095e9ec1bddf16ba5cc6de16a21af7ccc42a5f083d33b6876bd37b5c59a601e8a962c7151d718f8b71b130b60976a08cedc7ee6632055c3c6f447858661f3772b1f13bbd03bb8322abd886bf240b7fa30d6c7ce4c241e463bd710b17a30e1d62708c869dbf242ef64a2c652c7c6f43006065bdc0b00f78da857bbf12cbec6eb481bd124bcb28e7ac5064151bff36232f085470c2c68e5ade62c529d2b14691556c6cd3c3b858a641151f14231bf163eb0071abd5aa89d4963e9fe57bfaeff0b193f13a7484c1f5d9c6c37e6f0e506dfd22fd57639ba00abec703f82c7e76d18a1a5faac3f044ff9e71c65a7c1b4fd7abb27d3b0fb3df12f6cb313c5dbfd45a67d6e1e009deaa37d66c7617166e12999572f3253b9fd55be2ec3c56219f2eb5f357bdd4f2acdc2679f9d8a8cbc4cecbefc04c6afc34b915b99d35b649be379e3e6f46689bdeadef74a3e2e13cb4ea7d96be67bdf144eb6fe381ad557da49d7f9b9119ce9c396367c529d29fefcf9a84b4b14db23e7b3dc846501533232eb8fea516c2437808e1170b2184b007d4801357bc51fdbea95137daeef768d4b3ed04151d98ea1adade1db6cf7d2939232f381efa001596879a60c35e93ede36079a88921cb1b0fb7d31ca7358adff2969fc98e2dec9ecd1807eed90935d9cdbf8d07cef3e600959dd9db8ac8cf7ae5e5b3de8a70569eb7d8a6f82c6ab07b3683daece4dfc66dba36f63dcb789bf5aaec3cec2e9587b0bbd1ceef7406bbcb000b9ff166d5bb84b50ebbcb43165e7697dbb4849422980861e12fb7e922b1f057f260e177a0ecd85add11f0cc993366ac3cecee0e363e7b1aece265c796b7239685b33bc2b2b2de67613de29d3973e68cbd2a0b1f3b6ed3abb14def39966950cd179dc8f834e282e3a126b858da281e6a428be56badf352fc52a3786865c6f277583ef7e09d8c75b8b28c1bc5cfbef3b311378a63a3fafcec6551e346b1bdd4329388a471a54d6c613c7c1f6e3c5df99188a481a54d6cdf61c7b1be8d87b6099e371ed8be8da7bfd38f0819dbeebfeebad3aaf71c90bdbf6e44036e6825c6de68fbf49d52863adca7cbd9f7cbd9f81e11f0c17ef03bfd208410be43f8ba4f6d571c23fdf87e45debbde3eecf7c064dce3def633ce81cb18078e0fcf1b0fff6d439658ad564d58aedca64b6d3f6b8d1bf5de286e537fa76117dbd4bf81bb9ced7e566a145bae517d9b46c1f74b8d7a3c307649cc60915051fb4eedab3846dee3df63f5791656de785ebdcfbeeff44e738fae3db74c830abe67848c2df7b89ced67b45157870e31b8f7abd9fe85e736fde0dee1f9bc1d79efe136dd68f93b9dbd0eda4d8c4d4213654f7b5db41a0799f2cad8232c9b048d7def6f1c64ca5bd923146093d0ec7b5fc441a6bc953d4201368969dffb230e32e5adec110ab0ef7dde8ac4d5cabeef74d61a7390f70bcf6de2d346dd67e1f919ec689bf806e0e0f9bc11896de2c34adbc4dfe9acb5d7b5d538c89437649398f6bdbf7190296f658f50807defbfed08b7b2ef5aa3d8f6792bf256f67da7777aa7779a3b6e139f7b74ede12cd3a0ead76964dcd93b37eaf25fe536f1f9aaf76e643cb4c262d9cab88608dc3b9f311d573c2b380803d311021d3bd0a145c7133aa8e810d211850e11dc6471e38452144a612861b901a3a482521ba533375a94ccdcac4a6428ada0e4829b266e667073a5948392144a502801a154849214a51f94be28bda034460906a516947050d2a264831215251d94845062418908375f94aab80142690ca52194a628597163831b2ea52ba52b6eb028f9a0d483120f6ecab889c1cd1525316ea070d3821b1adcfca08446e909374fb831e386073756dcf4a0a4e5468a9ba11b2f4a61dcf8e0668a9b1594bedceca014849b2e72f0200717395e90438a1c2cc831458e2b39aae410410e2a38b080a308388880430c1c2ac0e1021c2cc071021c2dc0f1011c2b1c2fc091054709709000c7087050c1e1c48d3338a2c0d1040e28703c81030438826ab2d408e188010e18d4c8a02606385280c30438aaa859a3e60a354ba821a3268c1a2f3553a8095353460d18355fd400a166a8e607355ed4f8a0a68b9a1ed4f0a06607355d6a7450c3454d0e6ad4a8195323859a346aa25023a6068d1a28d43ca1e68c1a27d4985103a6e6083546a82942cd18354aa849420d126ab2a8c1a2664b0d0d6a6650a3a5a6053554d4bca0c6053557d4ac68ca40a306cd1668d2a0294353041a23d0784193058d0868a8d040411203e909a433484e209981438834041218d2114844202d8124041219a42e483f20ed80c4039217241d907c40828214054988440212159208482020a18064853bc3b5c19581e6061c19b82b382b381b7020e062c04d814b83430227032e099c161c1a1c182e07dc16dc0e381c705c7059381870419c135c16345f8cbc30eac2e80aa3354644180d612484d1975110463f186531d232526384c5a88cd10c465d8c7230c2c1e806a32c23334653185931aa620483511646564658462f18b960d482110b46538cae8ca418a96084021c6be0b8028e2388c488a6205243faa0b34824c823cc362e3266182498c702915096846703894624c2d382de001bc24684cd0bdb17747429d5601b336fa045a1594112e1468c1b186851c8b1821c56908c404202290ca90cb9031c34104931aac2768211998d04a2283c33b431af8ccb890c0c99992c0c1a1a120c9a14ac2ab62c58566c5bc8dad0d4905f906c685390429062889a10adb23188d0905ec8c830323302030d970c0a121a5a17b632db1a518dcd0aa31088ba200a83c8cc48484486519551094624184531a2321ac14804223188ce88be300a12c560f401111b23274620108d61f484a80d9116910c4459445788c0202a83c80ba3d5080a9113a220d1073032d24bdc8206085c19394e8099c9c47058b817702ee05ac051c1b1805b0137057785938253019702ce0a8702ee049c09b82a5c0938127023e0a87022e0a29043d886b2236854c801830d0bdb1568ae9855e09041cd0a465b6a6a70055d57240f2418db131e0a6410de0ba80e2e31640fe417b4049b162c32ac2c2c24585c2c30d60c2c2dac1a583bb0b6585bbc135c41d884f04c603d61396159d9bab071a1c48524038d151a991a2b6f0a1c584420c0d8b8c2d0702075a0dd807e80367179913920ad484dd095b6856e42c6408342010830aa8196469c822606a3c2c646acc284415c63e4031c56d0048186058f8a672516e181e195e0128204c255048d0b1c1bd78a860ca51d5c5f6e6430cd94b028758181a1e485080a9aa00d0824205c4428a5006b83060c4c0c2f05375594cca0f9520a53ca525a83d4031c5794bc4c2fd4b0a04403cd079711ae21605f209940f3e22608372fa019832c82c6c636846b0c2c0c3754e4c0721d4176b939a34d7093e54608328cd2961218ae264a5626186ed0e8291a8a0eea271a04ad8216ea1474085a049c191d45c7401a01f3021302f683f805a98d08463626b342a6c66bc19342669158482d4f05cf056f05740bc90ab406d109110af18c7705ab01a6034c0b8a03cc0cec0cac8c0d05db0a362bcf0913cb134373e661e1adb189b185f1ce7865de169e161e175e161e1baf0b9b0eb62e5b0e361e6c38d8bad87af09e406386a4851a10d08081460ca40fc82ea4175b15a8094a43f4049a164843f20be60539147330bf20c7a82981fc41cd14920b9a30d0b4413a018d0d5e959115727cd850c3680b4984ec597e99145743274834b9c012294d9c14b16449f62011519c2c59828d4e209a5318628911188852040a142316e033841328508c584001a61a45f864208a132863d889130c2c31c267894f111978e24489d394022301e549131f27442c71e20403039869b0111888f2640907a638d9c0114b9e48b13e519c6880034d907c46819d0c11c588284b9a2c7922c53a19228a1110f089b201238618c2f29862883062082744cc30d1602438e0a46709124870c0899128463c410209273e74130aacc41329768a939e29460471a49b4f60273e4d887802a549124b9c6cc0c906922821c2490632d0444901e6198c44cf104e8a18c2098c844f1427539c1411e5c9a719519e60006796c1433c4122ca93293e4b3859c2012852a4345932c50911509e6c20d533841150523b6618d6c092263e4d8868e2e3e401a4d9840e3c81d2e489cf93284f6e4c2670cf104640b9c012273e1b18c2c9124e68e612788a110bd026198c8493273e4fa6185184cf069ad44c257014239ef83499b2012296f818010589254fa4d8265336606ff07302e5024d7ca26c00034b7c867032e50911519e2c5972539253b082908618cbaa8c87562bfb54f066ca31e4184fcab3a249eed8b143ee30bd2230c2ee8670c21cb31bce39678430079c0d59ce9edd3d99e7e4399b19ce397bce9e3c67cf286aeec931c2b8bd37e57bf4bdc7a2191bd2c873cad19c9452d81d23e46608638434526eeec9909be59c7cd16ed9d08a6d61104e8b36e489031fc3ee19bb63532cd2502adaa22582f01271431e6ee684b41bc248244e9e1a6c8673c2d8dd52ce9edd947273c38e0d3b32e59e3c39c638a4616466e6c8b121336d9e9125b38c94f2e408657c30c2399f7c70ce08e3a458d3607177eb98cd0db91b3277a47113d188d150cbb220a4dd13462cf2e428e3e4813032f7a4dcb02303e69c81be271790b233ccb02347734e39e700149000284751d2393738e70dd9168c316211c608796618737c8f6933a5a2b8e98031d28e5076531869209c7342c698638fb01e80860052001ac21d6e6e649437982184338790daac71cb8d528ad118196a91d42d636cc8734e66ca0c21c60cadd96c4186f0eac9dd3d7b4e9e934711366d6c72cf09a1462977649e54eb86021080c6ddefbdf728a5cc936adcaf39088c1c0f0044d381ccb0a1c5dc1cb9c8dc28e6c71a37b786a3e11580c910728c3de89c73c2c93cdf7bdd1d63b7d6ddcd5c4fe6ae1ba71f0eecf728edd910f2eb86b02373472999658c18c64c29a514d218b72d6e5b8c8d61dd10521a23a510520823a558d34067f786619b8e39fb3ad06e0921e41b489b3684dd8d8d646719ed39e77cf375430dc2d1ec863ce3d6cd5b0eb0453c98b979e210218492524a23c422061bc238bb617733ed9eadddd0b099fbbdc7dddccc1036cfee39999961f394cd10764308e19bb0bb658434cad8a552a9444303bb21cf391936d7ced1b0b9236c1c8c43638deb20e50821c44636e47073c70821843146d8af1bc2d7ddb161c3eeb63aca097bf27bade30a1d328034dc1c986284069c68603a49c20994254b34d1c00c3832600494251988f22403193002cacd0f229c4c7142c4142396a074b8c1c993293e0418c0cd0d1d3d4334b90014284610c0003a00000000dcd4583e433441224a93293e4b7c9e68400346986c2a0e298a1329529a3cb641030060274ea66060c914237c9a0c610414284d00c03668e0894f940d4ca91c067c36c0c349114b7ca23c992265c910483cd1c08e1c503c963042091f00a074b8e1356c03901b6c587283939e26502eb02403519e14814493224e3ab7841322a23c5912e549932286c000068ca8384081f2a427c7071203a8816ff031c2085301d886264ea6d838e959e2b384932835d8f838c9c000ce3620e183c493259c1080007cc3124f30e0648a941cd294264ea00cb1c449069a4c31c207892544407952c4104b7ca06ca009069c1071b27ca634f141620037d070621b9cf83499e2248a930c4c41220019df40841324907032458a068c1862c914274918318493294b9a2041c4104e96d8d083d2e1062943384142e72a62089f2617585204124fa23cc1802989284e200fb6614914239e2031c549124b38808127539c24b1e40036e8a0c30d44385962848f140e4c196289cf124e6848228a134880ed8b563d2056010101c18d89eaa99e6a040414a104a2aa0904c41148a59a2a20958a32513d0c0848a5b298a86033017a2a2020a0080499a81e1010902a32513d954a0504a49240404f95316120205601351315d00352412020555f4c18085349c804e8a91e13a00704d44c540fe8a9281306026a260cf498a89eeaa92c260c04a452452640ac9a4c548f5592093313d553a9221356a9549009ab54cd44f5548f09ab1e930644331e333f0d20d184034d48a3d3e038cb43283843060ab00006b7591e4281989c130055610b24e802cc1364d046cd91183421042a98410cc4a841c363065244e184952d508982f4c51621a0528ac1ca962c0f457106d7046ad9947634eaf6b0d7aa507a58939712c4150c4d259c004e2146aa014573259bd21466225fe13debafd21584810cdfa766ad92b5a60083b51ea9a4acdb9c83700fcb6de2aae0d85e2ec582153cb1951ced6c6ef56585479826a8b145680b4f400277802a60f1654b09ae10c39651507b9145155010a65a1e2a410b4e40c6dee758e15432c7956050ea0462381b1d9687a260c34acb4326c082bd5c63414b3940d8cbb3fcf8da0cae47a3e4df4d3534ea42e961699b5e1c81089460dfbb0bb7c3f29008d8a082cb5165065c8e2c4d7037bc4802575282139c8de5212a578045e06e581ea272c642311c8de5a11158b1f731f56ed2d9b1c20c3cb1a5f63d3acb4324e062a3e5212bb4d8fb9c1845895bad564d685f7c1163a5d01a20b0b15caab13cb445c86e9687b210434721e391161c0341e88b25590602089c609f7cd66f0d96cf6c4d8deac3cfaedb7854565431d3c5184d08d2a28c94c8ca7340088112acfc8ed6e1a1d56a05454abe8709ea702a567a65c1b1a5a9f778c8ca0eec35d9329cc00b2284e0036840a1456ab34326e08285b7d9e93ebdd34881bbe5212b5358ccf2909512d877eef16a0f07a1d0ec35e5ac562b2790b0420d2b76d0440fb458e5e4dc202ba2055bacd448838cd5180c480959004212ce18d30426d85b0a12edfb6ab5fa40ca085120610b131c61044268428a5a212508d2810c6a2085316c21f57ecbdb7b5364dc3a6fb55aad56a99b63397581f097206d190c62084317a6c0620a62c090e2738db22cdfb4d33a31c5e71e32863ab0cfe79e10d829601505a15402ceb4404c2a6bad3b1c25f507014143295839787a57a5326e08f9125d95e51f4df86295ea8e5340fd9680562ccb32124f4f249e569585b493f05365a14f5b596f783f5a25df2ba3bbfeebdefb4eb7469ff136e4595a7178604b4f842dad3a88c0517b1f154b0fafb256f7acf58e9770a72d95959d0fb4b1bf0355f2bd3063a2181385485e544522a128c688a2182314c59828b6df6827094681cd39cdccc9c69c65e65c634e3273d63746f4fbc64c51e5be6134bfd947dce47a3b6df546dbf56a76abf3db693ae6d33661c77c8ae74e87181c5635fec8075a2cd68fb0da7355ec2c3a7f24faa8de4765ab3da26398b55d547be836e7d3ce1b4f463f2fbb292f29fda4dab5b173c2ebb48b62637be6af6750c3baeb96c56559e53a9a6f9df52cdc773a6e3dd49c44693aad4ff33b70eb2c9a8ebb3e491df7899eb3b0633616d32c761dc3b873a4da8e36bd7350e77d7a367d1a33664c0e07c6ecd8cecf3a5275e162924ee5398e548f90e9428654afca924e3b3a27fd9c64462775a3c705a5afcba35b4c2e5e9746cd47c6d229252ac7d29bc3e362be299f651df6ab63cb356a5a5dcde1a71c237e815e7a887661e716b4be2e6d9a5decdd6e9ddeee42f3576f76d2f9d8b9431d9ac3775a2f109d9abf7a732c1d9d7217777aeed37558afeb65158a6649b1de1c6b5d74ec6ed5a7b1f76849b527234dadfe76c5ea8d8f8b278474ebbd1921d5c7c5fb618dea5565b5e7bdfab8b0ba587a2a376c3efa289596acb13b8287cc63cfa046d3d57c76a267d967979da6ab79169aeff4a473ce476f3d6b5a59849ea2f94ec38d08bde870e3b92aade9689fe6b3ee7256373baea63b3c61a28ea6e33e7da733da65bfbad8a6ecb3bb9ca536fbdb8660cfb2bf8e7697e3e1b40cbbba529bde0f7576f4e9d9b4e99d9ed62e5c8c9a864ba692124ba4025e692bcfc65a45a83e2a6d92f331fe768df59dd27ae9af9b233ae4631775dc27ac6a1df335cd6235fe521d6270b442d12c7d76598ff53ecba7bfa495bd19a113a3efda6359343ecee2a4d53d8e9a35245e46d16c4fac54fb79aaf7e47bf3d625ea72e009ce7a2407eacc6a7542d68be251699475fad9d17a55f659d6ab6c9d9f10b38d7f5464c7d1c6ac754497f139504754ffba67657d16020efea7eec019c5fb111f2f77e01150ca98b5a809dc4fac616f7928088bcd386b8db79a9a77535353f39d7e1b4f0de9394fc88d93ce8d22fdc6e56f78426ed42337ea55d91b2775949e44a294747ab8f1d09bdfe86eea55d91a12e96fe32165dca89a7a9f259dcf94cadf7068a551f492d4d19aee3e5bf31bde0f4b63a6f4ee7073b0b45e199f0347a986471eeaece4c05192ddbc173b00cb4320a0a28cbdb13c0402326c0635a9255e01b13415cfca7ac5ce9c2784adacd04a9be673fc5dde68715cfe6297721bf2787cc72fc5f9e574d44b7acdb951377eb96fdf813a3c2a137882df51712ac353a6a3323cf56f894b7ce6ebcc3a67225faaef7a4b5cb3abde1dacac94fe46c76dba372e7f4a730d52ed34b7a9b77475dae96b3a1d6270a4ea236d0d4dbd396c9d0e3138aefab4adf9cd4189f4d0475b537b48b5e6d749bf70549fbe58dda4d56a0fe935af7937b4936a0fbdb4703b222dad37bc1f9abce1fd90d2ca46e78d47f49d7e7f1b11ebef5af72c5f5836b76b44b64f1d263590c4a3318117cc6e0f3bcf04eac43ecd6bd4c6ce1dbd0dd93e3538ea445ddc3aad4def5ac7753650a7d4a7f71cfb4cb7efc7cecbae5a37bc1ff2f2b3bbaad9a6585739ba4605345a171a9588e5be15e53e3aff5979571a85fdda61af6ebbd54df825a04eafe0099ee6192465d925655f939ac559f775599a6665ef3a7d22ad8a2e8d8ab5a49495f6af9455caae3dd7e9e52f148d33a861aa1f4b93b7b42b58d7d30d2debef61d7849e90774cab62c9d6a868513c21d8e7b35b56bd1a153b4fadc746896eddba9665bd5745134d6b094b62960e28cfadb3043c416afd55d95d1684ef15d4814236a7e99585525e4aeb9a90d5ad51b91a158b711b119afe880683b0e63650deb0115995e69b052dabde8057ac43cba6a6421a6de3c1b42e6c76d1ebba5a6a42d6da81a26e74ade39e75d8b7ee8a5f02ea402133a54651d12849a4ed281e0a411d78e555211bff4eea1eedaeafdbaf66b3d6b428decac2cbeb6359f692c7fe6abf0bfbf5ec3decda36f9cdaa9afcd6d1639fb7abd87878054678c5b2ec76d1ef13b218767acb8cbdd46ebf508b8de73a6ed3f65117dbb4d5eb6359eba2ca9af5ac6a5160d8e7c6836954ec655996a545f17ecc88c5320d2a9a972388f4daca7b63b21d6fd4756eeadce8edafdb324829855d8f85510ae1a41846b94bba7552bd6de11ba393d3f03e6b5d280d6fbd698f4689ba5eefee2e73753df440b6e19c37dabeaefac834a47fdcef1b03c7748cf073c2dad31746cd4ed9a7af9b3007ea7076acffb60758dd5d1ff851f7bbe977201d33c65edf3ad14684f4ae3d7dfa8da4750d8d467a166b68fa246ce3b9acd80c766cbb21ec3a5ad875d3b95d76cd75d76dba1b5b37b796368f95833a36f5db5fd728ea1b2d7dd4aa3dfded34eb1e11be6bbd50b4ae37da404b6b4f7ffe3a7df666531d9bd3bfadc8f6dea7ddf581b65fa4db3568dfaf0fb4dbb3b9c9ed71d3e26ff8404b9fc531dddddd6dd3319f9a87b8ae09f320f492412b76d5d7e6eeb83d22ad21a751d6b57e5d1f76fdecbaaeeb3deb7a46f4bab20ce7efa2f4f03b7d937d242f6fdbd1b17adb66df69d95d6885c94757be5fb527fbe8f2f77a16b51c1a75e32c2b67e154fdc83f78ceb1108bbdf33edd731dc84aa892d27ace13026fc12bf25d87bff91dfdbd7aa1153bdff455a883569fb6d9fb1d559fb6b034c6652f7707fbce7c73b04ffeb23ad8bdee76650275b8742dc7311ca7e746e978c03bacf7d9ecb2bb38f5aa37da577146b73e2f3ae93545e0e5e5df76045ebee73c21f2afeec09d9617e7f3175ab1d65bb4117997b547fefaf6ba1bde0fcb86e60c3909df79c05f9cba43db88c0f73c9c67db11cdc233795ac5eae578d0ba03cae3605e6c96c969471ddb4ccaac939d1c5df586f743e6d8f7b91181ef77f33abaed379df51d085f770c750e4ff1a57a29e939eae56a8ea31eeaec8c7eddb0a9b754536f89a6926eb92a8a17cdb067574647cf30faacb51b9e90fb7268947c0e3b58c979b13c8695753ed3a123084f878e20d4ecd97b80f56b667f5b9151bde1fdb82e9f75d7a7adbc2a0ebdf5f91da8c3049ee24b258e8bbfe109b93ea5b4a38b7e73b0d67564a36b9f1b91ec3da37a9fbd8e5d6e47349b9dc9e8948e7e393bba2eaa37073b7f4b76ebae6bf5862724bb8edd8256ecbb3a392dedd84a29e5d5454bad7ac3fb31e55b59a641a5e3e5c08117ab59d1bb000115ab83e52128c8b0198f74c0f11014575893e5a127c66087a0d8c266f6fd51b13b1ab59daf75ee39e794efaea7b539a59cda6ddbd15e1ddb47455e97b3de47c5cafbb48d74d239cf9b91f8bebafb66b4b264a14da3acf329cfcefaebacb308da1b2b55fd00bdbe4cd8f8aeefbe2b769e763dda816cec2e2c026df6e83bad0c63775f15fa7904b4f7d9acf6d06b47467fdfe917c513d29fe746653eedd3d7a72df751bd6db573f5f6a362a7a85e6aa1d5e8b5c71bd1e65fdde9382b8e9603753e3af680f7586f91f778e43d7efe093d21f1b3bf036d773ac4e07cdac6ebd3f751b1d7ad6edb88881e6b4f7c5f1375f7d977611fc5513645c7661dd51be345571736a3725aad634ba33d226dd4ba677b2b92d98e1dbf1ff709d9695d76f1b393cfbaeb3bf0cd67518b3bae6725dbb745780eea90ea766e94f6d8a77ecc74e808020745b33df1f4d6af66ad78846e8f76ab38d6afcb6bf5f4f242d1acf6ec37daeb7423f2dea31dbbb51dd1ec7b8ea6d167f545f184bc7a9150597aecd7afcf8de7a26267c7b1634b3b39add5b18ddde5808dcff8758bae07ce5b116963b45691cccefaa2783f641535d7858c7ffbf502de7bcf5e87c3678b33e4597ebfedb31cbfbf21b07256059f125007eacca766c77c52825ac829d9bd146f47e8036a15ec1745c6a32744f86c04994d17befb1eb0f0f1d91e5839213620847cfeab971f21e4cb4386104208639bf8350cb7d9086706f6c15759b6bc0180c70e1c1d37a51c386ed8d4d090b89168d332eca2d69411f6631f7cde8e78676c16f89da6946f490756e6d33bdf3ea0a7eaee3119332a46a8d2a1d482273ed07b44326621fdcbb7dcd154c1b5e5bff366e4d91eaef4fde0abde23c29144448c9936b18d1c638c31c6c7c7183f1da08a36d61e8e4cf755361bf11f07e98ed9c7ed1b81ef27eb90eed8aae24b82ebe55ebdf35766f25dbe65a56dea5906ae7f350baf35ea556694fc7da7345570d1be43dbd3f075b44dfd777e50c8a0bcc20be69cb3a5946fb29c7342f9031347fabac560cd796959b846cd2b4f4f3723d6e7ad78f98cdeda78e8a4dd232715e80ada38030c4d464a8a9a59289ba66627ed984f932e41a1685c97f94235ced44506667cc1e6edb0cf14a78ded78245ac9334bf7f0046db438d4c999f5529bb536bb529b72da042f04a79daff0648c7f1eb0dec663b1659bf57b328b2df2bd2927a453c2a90449352e8e996678640d669536784a389f10e918d97cece67cf34fbef7e69373723cd675d14ff9792bce5bcf2ced48bcfc4e67b28b6d9ab71e371e0bc6ad48ac5a6cd3ac3cab10379ebee46c4a5d784146d806fc9c8f1f718d9a7fbff17133023f0fb722f1b3de9652f644188407468585c5d878290517cf626c374f165303f94b9a554a97a00c97e148590cb6042c96c0621e182178f125fe9c8dfc7becdebb5034fb2ea566e593dd1d01dfe34a2549b9528c345ad3d2216394314ecea6d4f11d35d9518d24401b403ae11326d5381c4829a794528a216f20e52307993ed04a39034e6e467a4eab6336cd09ed3c63cd24a07cbd8559866af5422eb63f21151b61156b159996d9c78542436e34181bd9ce0e0ae462e3dfa31c776d9a0c1bdf601a05b9dc40e3ceb06930f6c2211c56d659a54df022326093612fa41a075b8b2d4e00b9d8196990f1e809f1f723343816c30a2a56deba64473fbbcbc44ecbcaa4263729ad5f1d63d9b47ae5b1679cb51989a7f5dec8122bdfdf81587751ebb22c4a2f6abd6fd524a49db547d61a21173800667229c3e4b2058bbb2e4f39c8bcfcc541a866ad2c4150e4a428e3201f741d8aa7300c08eb26e320a995406d6995ec434e2b553ccfce1ad98794aaab63d621fe44cdca25448d9b0dbdd04619327e46d94d190f3f3b1d6170f16ce533a8bded08bceca29572e3816dac7233f28cc0ead3b67f04ecc7f7ce78116e3c196796c61b91f7dee7c613df7b2fce586d2818b8f1f433f980f77690bdb5d84528e59c734e28bf8009a1075819eb576ab151c2c04639858dd204365e8680753829548170b1c1552acd3083bd9c9542f6ca210b7f81587656ec0b1b72081302172f80e00517acccca9292ce6bce296f3d931d6d1316eca2d39a9694334c6bd69c3c5992ab523e74384a7cf8043e81fae3c355a9ac0b0febc3025087029fc0182f728d1e70924ac12df99564b003e0d7b7255dc625360a47bbca6a3bce56fb8e8eb66606b5f101b5c2dd8c8b853a1638bc2403757e5eca0215473ba72c70cd02180ab81112b66bdff10cdb7876d46c0e50d9edbc3da0dbd13d4b3723d7b78a63e4faf6adf674350bba118b0ab6479be09374384a92dc02b740fd497255ea32833b3ce9c2d9b48ccbd5d9b40967ab43da6ed733315027085691820a0f4941e5d99b301999357438ccd06ab56a22059f7969140f4dd18585cfbe409d9782dfb42be3d2a82bc9d82d1a7563e15b92813ad9157882a75492d98410e213386f4004710afc6d4038e013f8db8078c02950332cf0043f812ed3f2e07b8fa5e852c06657da04ffbc704cf87021ce44920701af589809e1fc6d43da66424ac8842cbcd6d1fbd0712a090e103ffc704e09d1e100010410e754766541d7c5c35dbfd9cac2ebfadbae3a45b3f18f7fc49f1dcf9e765defc73e1ac85edff10c6abd1981577d6c8acf56d703702b12ed8ec3ed08d4ae2e89b61a43d1f69ddeea11d06a7547acd9aa4dd9a5652bf82c28c3b4deae679ae6c3f5241da7b2d7f1418dba2a7cb66a148fc377c1a3c3b9feecf508743857956452728d3ec15f62e0b2a19a756913bc150507808afd665d22fbb8aaf64cd3ac4ed39208d1ff397220ea4f104ff21f3a1fce1b10ef3f48ee43fdf1e1ab0a9c091ffe9274ab0a9c8920de975b124e55c0cade96a41fc47fe8de81e8eec38f40e2d9eb231ef546bb63479b7890b84ddc261ef56a76c7699b769c371ee746f1a83bbea36266ae9a44a6249930b89b752153c5ce709c675da04e922791a92415c9d5b1ddcce0ba0b07c92c26aa506c6cf6ade6b4091e8915c84e1fb92a0fdb11ccca4dc991e300d14adee794dc9420390e10ef499ea432d1c3df39b5037de8381544c7a9193a9ceed27797b315e87e5e0a02cf72da34b51e3a4e29e938f5361eda046f9debac7a9fe52c29f2d649a7bf488fdb1079ee5b179ac35b34cfc604714592313d5cf1c31942683e9cd1a84b45a32e196184c8c40471c58724611a75b32811d3a89ba5875f69d4cd02c469ddc06c581a75b3fc70ab6e61ba10397cd6c590c367433c0c387cd61d3efbe1b3190e9f01e0f0199946dd015cc8e1b3351a7505f020651a750ff08d0c1b8dba40bead919959c0e1b331a45636684708a37255a1562c2d8dbaa8eb64d1a89bc375e082c31637745140170938bc368480c36b5e7638bcf6653bbc368676780d8c46069946dd9cdb70786d8d465d03fcc7e1b5323e0eafb151c3e135338dba3587d7c6d0a86b73f86dd5a87be3f05b50a32e8ec36f428dba3acee3f01b9546dd9bef38fc56a551b7749cc36f561a75735c4ba32e015e80c36f5934ea9a7e3afcc6a551b7c70370f86d8b46dd7a1a7e624a0287dfbad0746c33de68ea55599acfd0754d4e3b6cc9b36eabc0713a1e9d12d604feee41fc40821012c40c448218522f0d627bbd433e4310428e5395e0820082b331c98238009a5c881ab4e5f27890aa04bddb0f70009e7a67f8190080035425b8076d99a1de20d6907a19f0035425a8907a0f40831012e4330431c30cf5760740103300e0415b18506f96202e448803047120421c00c883b604a97786f374f502e00cf89908b151217032ec9d10f4af4a684274cf22c471986c423c632224c883b660f5762742ebfd87fceaae24375c9ceb54256892ed415b16902455ef759a04a33c922ce05b921b52db310b5cf562a7496e2db97cd0b90e3ef0380e38d81dcbd2e1385425381f1eb485d6ab73ab2a6151cb1e87aa045d40bd38d0243b3aa74928ad37bb95845a0fda62ebcd92e43b3ee090e4375425381c6ea0b7d6777e5920d3a15e9da77ce0417dd061f301ab37fbe503763d688b4ebd597cb80e16e0e1c3712ca0a3c383b62c20abf77aea5aa7f55083b65c1e6e0db7a12a417be0f1a02d0a4840bdda96d9d0430df516398f1e6a48008f6f14d0eadd9ef5f058014d490dda7215707f501b10506f766d87186da8d786fbf8f1a02d59bd3b583cdc47558216a9d707ed01013b3ceb21cb620f597cd0161eeacdd2c311a0c4470faf41898f1a1eb465877ab323207e876b1450c013a0c406aa24014ab67a71ae29d9b4076d5140bd59943c0114b041c97f50c0861f0fdac2a3deed0aa8577b02be23023fd05095a0948702ecc0f981074e030a5095e07e30c2038faa8465ebe5719c1f2eea94b06c9609ec00a2066db945eee901a84ad0020460070e91a800a77a0bf000542538204e38f5deb01a701c3fd070235509fa038e1bc7f9010747f4038ee8415b1a506f961f1e002068f8e1388008000d0fda72a35e9cdf101dc77754252c9b25023645a8cd02440128103cd4dc06081ef5da7c475542b3f589a02d3c763c684b917ab300711e2250807ab3083d05c44f5509ce3e11b4a500a7076da9a997c76b6ceadd719bef4022437818b08094dd51400210b083906e000fd209e007e87a1c4857afd3a174e8727829091c87aec76fe8ea6de8727e7406e89404eea3ebf11abafa0274043875a61f9892400dda3280ba8969133c144f6d1140ddc6b4093e005d8f9a2502a7a1ab11a81b197882ef3a1d7f77f319bad201d0e5388f4ec7777437c7e94a177539be753aae7537cfbad26397e358a7a36e437d53372f5daadb972e47ddc6e87c78105d9203d1f9f01fba2457d2f9503730f004df4397a46e61308ba39b6534310436ec8dce2282901937b0361d9ca2892f59b035dd140110caa861792bc24396a66e5d20a9db6993e561d41d118f45ac23d2367bb5bafb179b42cda2bf36d6a2bf96a5bf3bac657d07d22396b0ec55d1232c9b7547c48de7d779f3695ba457abd58a07b6b4fab49567b62e8dda861a651d7ef3b27d69d475f86d8c466187dfc0342a3bfc4646a3b4c36f611ab51d7e3ba351a2c36f62a00ea7e046c6ae2cdb9b75e9b21db0099e76990f3803029be0b12e0b834df0599709814df05a9715814df05b9721814df0a22e5b029b601711776cb18eedc5677260af3453c395642cbcdc78ac6a7a01774d599936c123e9b22ef0047fa4cb86e0091e025df6059ee01fd06561e009de0199180b7f95e16ed6e5220317bb8b0dee665d2c1459f6b2b2c2deec8b8559171d622cd300844355a479b690710f0abb1bc4eb90439b1e576ee6e6e608238c3042781b0be1fbd9c74cbab1fc9fd64ba9352b6f3c4d77de7bf55a3c44eb11ae0cdca5b1099cac40daf472ae2d7037e7ba48a41b7b6f1eeb5c7c7a67f67189e13e2d7b69828b1dea3203dbcfb29231d461eeed201111c385ae80dba1513846faf0b0e2c447d8f59aec2b5114701c95ac7bbc2a70a536f55fe5dad4a72be0f8943b0a4ffd0c075e6561bd6c235f6670b73dd4850d7b4f51c05d4aa10ebf3fe405aadfb3ee92e82271b59ae2c3d98c7dc05ffc031e01cf8ca148af629d12ef43edc53e60c753c476bdd8049fc9b7c967538b1d0fdbee9268abb70740d90f8afabc0d813656ca3ee0e3799ee461c64844c488b1d25e6a35cb3d6027411ec3300c83d8b93b02fe75fcec6591524acf2c648a761f6ab5f33513076921f17f4262455239c8ab3db00f791c22e08e04ea882e2f04d451a5624abe08288dda2e2fc567090ef2ac7c1146d19c1c1a755d1ec80e8dc250d9e519d02878791e388875f94b54c626f96c76cf8a3a1e93da1eb7326814ace42ad897844ff2ef73e37972e3d934db1b12f6217f31811363df23c7f8a2e8aa980cfbd86e5d14759cea8d08b5cc3e26ec7cda241fbb22da249f7552da248f7550da247f7544b4499e764cda84049e780c569e036c925f827d886ac0c53318fb443678abab29978cdfeb87060761941242880677354bdf8f86536b835e5cf6e0a50c38782184527236ddbdb74d2e1c8402f7a0c05dcd7276418d07d618e346e4d92c4a39bb5b0391b626f6412d4aafee52229db114cd6969310b77a985efb667a0faf08f0ccbbf3bec0b63f93cb489790c08a94f8c94fbc20cc662e1ee0e54a354bb22fb60cba21a84107684b093d0e6d2e6160ed6ab61589669daa66da267517af5c0b48705774b96b94ccb726c3f28ba2a4bd907b375cd4b4678f5c3708a64f0d0c27a3960bb32fbe0e7dcf822e31e9762b1f1d97ba71c979873b0bc2aca82bb3c745f98db5d9a0cd4113dbecb401deef64e02c03c2c582857dae1209b8def2e50470a3cc553ca71a5d2ffc2409da7059ee2395a7a61ecc3024fb1abe06e7709d3527097872c7390f752191c1284d03d4b5750e762ec7d616cbc14a8f3d0e0533c15a816b832b14170c5c6534ed6cbd967ad3d2cb8ec098167ccf2a53c21b076974fe120b4360fd8477c7cf68424412dfdbd2cf32907a1e7c36dc8b5040e6e44a845c23ede455da768956470308bda43831f159e166c7c60b0f19db1b1414057f0144fbb0c3cc58fda8c4e7781a7f8d1b57a4d59bd27fdaa97a3b4d2701ca954e25e6654afc95e2e93a453a2da64e0295e44038ec1acb074b1f10f0ba51c774bf7b49ae2e9caa2ab49577465b77a787a148b651a80a6eaea11171cb3a73dfb9ee114998f9f8fa79736b8c2f2900dacd802581ee242c652cd06666c10c66631839bd4a4cc2c08b0cd2404d84efa66fac841a636b5b711998f46e63b7677f2f4c91e16a748db7e1219b82adbd691f9d6e6e3ec02d0f5b024c86c3064832d6cc659d46410fa1b3f393ef6717dc64e6b13bf87951d7f76d86317006b615707e9b3d8c95825fb788fdb90fe11f938f9b19bb7ba2b8df4b0dce3f4fcb4703ddc5c59f80c09932488795ebc764103d9093204b98091306211250fe47c0110208d8ad3ea52fac5c1f26db0fcc78e7b42ba92f807ac5cf385ac0c2153229b65f6c10577594c46354ae7a109ea98984008219cb5539915eeb21833720c8dba625b1e1e09d499871702ea30e424536bca08fbadba495b8c11032a62c0058c2c6bd81d96c1c81202c8c5ceb6384834558abfa37b983858c2897ff69fedf43d70aa34bf5d957a0e3cddced373ef8153149ee6b97a5a2f37facd91294e893e5f87138f049ee6941e38c543fdd981a7794d957a06c6ceade228d14eafd5d576edb46e8992c2e98a2301faec4a2eaefe6ce9aa843eab3f2f452f0ff1c88a23ff2c4e9178f98864ab3848ace328d16e5dbbf597824938a53d8b5df6981f14919ac0f5d06a655b0d305aacacd6bd2bf0349f9009b8cb66e2777ad43181a77951372f05ea609f5f02ea689fbf0007498263f28474cdc27d7e08d60982c294da2e544a719f6f9500a1d215ec3cf30e424052db2f6bc1ce6758f7525af7aac027d4a6799d9e64dfbf4f0849509076d183b28fce7538f1dc55a9addbb6c76f5cfd19d537f41f51fd62e7b5ab5259d6691d179cf8edaa54179c58719268cf1e6355927dab585e15789affd162e7b577c54eed09c1d3c45ee5d8473c897d44788ab7aa7c8f597b2017cb340061aad71714d99423de19cbf7a17704a6ebbf2e096a8fb0ce946165fb031c12a8236fe2203a2ca6737d523156c2cc64e52f7fb1f29db15de31038ed38b0e24038eb6532f0a2fac3049e9abbb659d6e1f0456070f8a2ab5261ace4ec4ab067e767f5670b5725d945f527079ee47fbec8cc044ff29d08db2925f6d127b18f63cf0e372deb189ee0e9651d8e12edd9eb631d8e928cc2d33b567b78a9ee02b1fcd95d1ee2f8c42fd15b96b7642fda71d756cd812796b5674455dd724bc63daeac62a98ce7670c75b628813adbf9def24d5027c37e732c77154befebf2b8a1e88877c66e1dc3d379c8d26b1dc3538733af4a611dceac48829a0c3cd1abe06a8e004b8a535bdee96ba0e038b595d9c2041ef4a0ca6a95c27e78a2dfa2a47f29b98ed51faeeb6d320c4f54c710c7a99c2d4aaefe55b7dc2cd7817859c8c11056292680ae5f15284a018b29524c00d5153ce30a5656a97e571c25d7fbd7fbd815eeeada0c3cd1f709b8db642ca5b54756896564d6b3db9de2f313d22b5bb27c93e573d72f0f597e0ed4a1e7f381401decfc8c762f8575176d93752c0b8e2d0e92a0fe3bc93e8b23ffa31d3b3dad3fd9afab521b0f92a020ec5a1db241d7b3ba034fd6af0eeb7270e4b3ab52407064c54982fdba12ecaa3f5b6455723dabe7e0c9fa8f75ac323ca952aa54f634ace3d4d5718a371e24149e2c4e3d2b388e7dc893d8878427f979ee610149d56b48052ed653fcccea7e180d2d8256a91fa02d7debd0bec36863198c32f8c0c27a73ecaba14d396d7a6fd37bedd3a6772957191c938135e4409db85aad565852ef401a55b2ef3b7010b633c6d81d5be6facb59793ebd43cc32186324c1765b1d8361056aac526d6f8b78425a32195944a39ee5a12b5616b3efefcabba275342c3e8de2a1147cb12f759fd0d01551d8fbaa6058aea881bd8f8a97ba6ce6be201e22699cb1f5d0a9c3d3fb4e6354707ff60878e68ccdbc5066289571936cda84d367314800c6429cae43dacab3182518b2115a1e0ac11816877d474281d6b9b8ac56ab26523c44822a96c9d8f7bb034cdddbfba058e5f297a06b680b0f910009f63219a527a489a411a62382c6181d1134c0b4896d118dba544aa32e8e251a754b501a95c3bee37842e0d9c0612f8fe14a83bbbdbf6179c8042eb05d218988187b6fdb1249e38c36b1dde92e4cb81e976c060cc6b6fca5ef97839cc3a73e95f552eed5cbd986f5966ccf60736ce31899c1bedfb2657b5fc529720b7f0b7f73dea63eec4cf03ddad4a646c17aa33531a3a6144290842ee8c4545b06039bd06206638880860a5e50842f3776bee0e2021f60414119d6b0e19eb0a202e885154164b891e5a12abcd003eeb23c54c51a6d050eb33c54451a65e0a2e5a12aa0d03ce02ccb43550455e86eda60b0200b0b1f4f447458373270f3d9ebb3e3ae8a0d7916fbec4667accefac6a01a839127754e904e032f127ba13018d29986f43949a4c3ceaaa48eaf0756365aa4932c49e5a49432a04dd46241175284c0beed88f558e9796813a55a70daad297034dbe977c68bdda2f9b80d8176fe69e12059340aabef8cec91e1b4bf54b2acdb569e8530f73624da595f18f6416f5981c33e4f4fdb846597dd94c73d2d5aa63c3beaee1bc3d28be0b3ad7b54b4895eeb6e8ea57f62e06e0b597a581f9636d167f55d6913fd0c0247ffc2401aad9c46454bef8046bdd32b69549f5e080ef22cfdcfaa51d7a320ebe5aa70790b96522d86ec653096be204b5f152b3b589a83a561e089d25f26e028f6c2404a9b363d6fb1ab5c3d8a42c63d6e63b1f091f9c5c85d3feefa75b2259411d6af4e960f70190896ff564f0c990344c186324e2cdfea55d9c1bbf280c042b8efbd823a4c20f715310f067c1263030bdf15cec0c2bf6a55e6d37d3bb0f0ada67df561d146c0757cac3950e7a5805858e53201d75866968cf9c44bcc78f927ace360c355d9cbac03eb707fe2df7bc69b11ce76bd526c9f9fa08f7fc2927f225639697d82f909e6d395622fbf6f5592accc36f07b23f252d2c8b3b67fe443504a3d113f6b0868ea09200ea3850c4f9031660965d8927a42d62dfd58f9dc1548aaba651a5d6aa0c516c0f2d01616747763163b8d0ad5a8b429ee40cbc203595d949aacfc7ec8c34ec8c2b8f13c2d76308af7035e5e9e08912e7e8348106158db7ab007553878860c2f90459e21bbc99a8c1e63dfa19826230c1992490e2fca69d14829ec47dfb4e835b5f7e885655ad434d84fa3da7b58a66d5e44512482fd444398f69ef6b637ca41e66822d116f67dc4c5be67a32bec3bc769afbbadc5be93fa0a9a484303fbd1349636bd9b61a3837ac5861936ca7cf14206182f5fbc0cbd2b1e9667e55d79559a0dfb0ecbc031720c931cfab217fb0e79c8e60024e7754318a39c714ed86fbe86304629a7152d0bf6b3a29cd3b228bdb08861b01f66d1ebc2b02cd3b60df6dbb04cd3b64d241a7191e3603f6ed35aa4f568a435c7694d22694d53136b6a60bf9af7ba4bdf8d1bdac381437b394ab15482fd4aa48ca6a646ebce6623f22c67a375776323f26c77383622cfc61c31470ed82f0715e114b96cffd9aef7c7c27a838a708a5c246c8369d37bfd4125e3ce72c87ab200e5a4b6c05b9d13d6a9143b7b9280364b07acb3953faa94ca3612ab5a9fdd646265653c6f3d70ca82b73a2754ab212c5584823ed0c42af5842ac5f0547bd8fa9e22e3f3c8091c8791032cf6ad74ba91185c0f3cdbfb5696c3c80117fbecfbdb8ebc262cd7fb56f1dc25118d8c2c1f765715e4c6e314c16cac478c2c9f9b6073ece533f6c23777dc8da8c0b50efcb71d71cec2ca648a90c54776c272e5c83efa196f90bb11181c7f91053036721049d29ee53072f0015b6ad37bc7f57d1163fb1997b1cf8e80eb3ec741ba29cf4e79f67252ba04dc7d606cff8169d4a58f0c4d8c1832f05ca1091578ae20a40a4dd37c269c10ae0adca1681ca4350ec2f0b09e7b935321e7f513d262812a5491069657455ad6a59452525a92d37a5520ad3a94e34a26139b6e8ea5409ffa63e00cc250a04d2dc403b8c8547855a00e05c6d87e15215e60823a4c844ca6bf54e2848882f5e60d2216ee321807b40eb783cee10e03786814fd5b27079efa3b6e0f2e7b55f27b4f5ed775ee8ee02803da15d111b15d41709149731f09d421a24ffde6356cf3308930e07ab0893ea75fcae83302ad752670abb7a475d63d2ca58095cc267ade8adc5a4510d1a6e6e1b45f16a33dab8c8c368a992b71ac130f2b37b23d3076777777f7bb1ba855dd3d052d36f2553bb841155cca30d3852e6491a2c1be7348b0ef363d741acc6ab54a41eabdb423530202ecedc14ab0b7869bc30e237bd90b672f8f41c31937ece531bc8685365c1e033c3cdf67c5c230f63e2a44f6be2b627086858ff0540637b0f05c49063eb0f0cf52c5c29bb214c1c2e768c162e181ec682963e179d072c6c2232981851782c90d2c7c11330882859722020bbf441716fead84b018aa62c5c2bf2b8de2211a5cc1c23f2c8de2a12cc0b0f0adc5f68b61e02e05cde322908417b49183277c81c61a1506a557650c2a7c30832cc0f083125851a673a20d52ebc414b57dca0c9590718f8705f75e11f084d3b7ae4a59f527fbfc0f764b96ad0ec9d5e1f4b1ab52383dafe49ac760e959c1c94a4a718a569abaa573108e7dc0f3b9221a065cacf75db1eff0b02118734e089fd499d48227ee112f3b42a859d137ca8bb8e0def9992c739a15dc3b5b229c2296857f16d62b047522a3cf6a6e46192f84104a8d368a3b682f8410cea68d62aef49666172884b2a3f0c4e760532e71c6986916a56b586b689bc8a2740d6b0dd1c8a2740d6b8d113747228e24451b8986372dd2d4d8dcb028fd82d5319faefcd43623f0f1d9664489cbc66f5b116a7b6e68d9c62387c8b662302d2b0b330bd3b2b230b3302d2b0b330b734e4b3e36c9b3847f715a1618f8f494b0f0ef491f64fdac2f243cf0172642449a6332ed00893c3b8e3e4b099eb0c0bd6772ce69498b6ab151cca6773e3fcbaf51d036aa35f97933b393024f5d846686e3135de2da8a509b65d855b9ca313cce9ee658265caa2964d046195480851f78e1837b5959218210c278d1c613194c1520b0fd8d0aa5ce704119585ab0650d16cc8084512a5edb7862a33a7b35336c9f4e0106546c3fdb789ab3104208218410428875ff328266841d2fa00210b068c1f2050b4fcf71ec05325ce14a0d8270041550010065c8681823c0927aef0d61088d2aabd43b12f82e44a3de5bad52d7f4822a6c8761fbd6c6d354086d982cfcb4a6700111ec0f0b2fc5ac562b28babbdb7e800a6a5c61861457b4a49a87eda6b1dddddd71e36932ecd56c98e0c5de1e167e616f0d1666a1092c08838a292ca4420b3cd482302c1c7241082c3cb4a4e0deef392d168a61216d148440a0ce2153a863841a52d872a5042c600307a91d163ea751f039348a642184f0adc0091b80f8381870b1f3db07b8b703d619f1b0f0f3ef0ad4117dfe61813adbe79f96c705ea649f7f5d38083df6fb90207f9f1074e2ef03829d37419d518d945eae522edb3a7951873db3ba5773da94d23a4e61a5ac629d56ad6ec78b9d1775f35b67b2b4f44c16eb72467c9aa75d0ef631ff3a93959dd605bd1414341504c5534150702911db30af3d1ce669eb30ff84a04e099ee64d6d9a5b1438f9f8f922a0ceab97d27a39324250a075300e9259d4fbec323ecd6f5d0d9fe6b50ea7a3c15a1d012ceca63c8bb18f79fa7ecc675d10144f31db700760e769601db0ae863ecdbf59439ba665bd5b1d146c28a74da63615c13ee6777abe807b572e94c905bbf504609fd6adcf17c141d8ce430b9ee0651de7bae89f50a3a29d7f551a7563e75f172fadc34658cd3f2b8de2a12b57d869b2f3f75d61e7f951e18b5aa646cdd7d0289c0740ea05077f29c7253636940dbdf99aeb4a3632e0eec8f6f91943d89538d86782e78c5c84b534e2203dba7190c9c7eedd803bcd779a74ec57875dd764af67d745c23e228daeeedad811363a09c37830925837eab8cea60c5ca94d32b3b1eff2401cf6eb97d7b82ce6ea6e6a93bc1505273a76268dd22e4f44a6c55ea779f63412a95e1f6847cf46dd35036e746ed348b3a4ef344d77a325d55bf32317cd77fa6d4726181c5b8cb3366fedd9bcb722d6af6a736b0a9eec5895370abb1e43d175559cebda692df3a15d1da59674d263a338085b52bd506c2ce91ca92b69c191a43ca996fa7ae420dbafeba48fba9eeba467571747cf9e46ea684615c7c8e8d8898c2ab7c9a6de9a0ac5c6d2d47b3d896747e78e5d65777ad471a35a6a93cca8f6b6ecd9c5ef41d156997d5cbfcf5e35eb902869d3cb70171938e61e55c212b6b0345806830c2fcdd3831c29aa02d7232febed817f7fb5c7bae8974a9ff9ec892a146dc8f52cab97d5bdf783df8f1ba730fbb8979567f671e9ccf8ba1e06ee32996b5e66d7f69108675487b41dd93e0f3d1ad537ed401d4ef59128e953a0759e50997e0d41b69fb3437fa4898ac427e45d7e3e21f3f294e9a9d5ae594dbba69ddb745dc169d72ab7896a177da7b72e0bf7d9e16c9f67fb3a9cad0e798f3c8b88e6ac6f93a86ebdd5b78929155c7c9b1111f7ed588723fab3224c54b9944d9ffa971838537d9bda82827bcfe2f680f789dda64d7dad2b317c50c4614ce032acbbd887fcebe2fb213fbbf97e48796d483cb7895e76d76116b5ab63fbc2c0413acf9b9c36bee3e38395622baeccc646c63daee462615b86961b95c5bad636ad4353fc1d9dbcd2492b6d82afca2a5b705762a962e125962b5a871ec63ef56387f32eed630d4c6c1ddb904ce214a1369eda588f7867ecedb1516b1d4b0a75e120b109f6461bd8776aafb057b34378442e1c8447e4c23ede2597d83006586c9f63a3ba67398c2ea061398c2e946171e42f3bedd52cb37dfc7b6d1fe0de13acc3f1a906db7f411ce45dbf3c96e0203c6c9f60bd8ff59a5a60fbccf5be11d87e0e6dea0d0c614332c08680d88ef1ef5d96817b5026971cdad43bd8cee1c1016d12a24d146813ed81994763d9cb076e6061c7847ea77f38c0bd555da24d7d28cc14d141913a7edf8b68533f7b9d94cb0b4efebd226953bfe71d4a9b9a8736f5a548b952dad42fc272bf08a8f3527d298d62db9f4f48263b22eca31fbbb75926805f22083f5fdeaa5197c9b0fd3612df8ff758e7fbf186a458c3de6079488a2e568836359346bdcae409e158af7c66755716cefae5304428d0a6bed55d1f7bb5fb863cd9090145b35665d2a63eb6e22e8731f28ec42ab9356fe4f5bcdf47e49d91e78a53049e9e083c85b28395f5be27f15456febd20ab7b54dad49fddabd2a6beec9e9536f55bb5a9c1f4a917eee6d8ee13e1206c73a04ed32fb83e3787456b83cbcc391b524ad9e0342770f73a281b8fb231297d421e6543ca97023097981a78884b0acab097bf5449c118ec65327276a02ee02e93d9b80ce5416c66cae7c028830fac8de503610012666614db1863012cb4c2030be110387ebb2063297bfaf152878b6f1f69fbda015f9649af088fe142a46d82ccf11cdfc391d25ff948e9af756a04da7825e3bff817df7bbf9aedda31c618e107ae805cecee662e7244f52194afb364d132a3e0bbcf6deaacfbbd26b49496fc8c9b11231eb0f2dd5d196d8f3c7c776ddb169187f7d948a4ad6abe9746267a028c30c218638cf1c6f3cd8931be11a59472890feb2dfceb8187f0dc5dfa2cfcab94fb311465c151d2a97ea7bafe30916278e2067a1d8b90f1880b8ec5f0024ca3580c2fb2b0f0734ccf328d62317c408585930dab4a12ebd771e2e931ecf4184eac4058bf6efd3a3f53c563ef59fdf9512df1458822340ec3c388c97c21c36122e9d86355f2337a7615d6e1c4abc3891527c975ec40bc679589eceff59d893bcdd814e94034ec3f5b946c27d59f123c4125dab7fa63d28094e8c8444d165ea5778e4060cf2a135b948c9e9d09d2b1039131317a764e5d2012d0bee1445287132b73c73ad169ae4af5eb522364537f9e962b5db408bd2b349ca8fbf75db9a105c74b57a5729c53a2dfd7c5c2d74041f367069ee0ffb3454976d27fb660ff62a192d169eacf5342faa8fe3c5265787af5a7febc2f2f0cf6050b93bd67c6c28bbaabc391b7709258efe3c80a84f5c60182fe9d5e8c13b260e30b5856ab94e834dfa284fbf5ebbae84aae8b2e2d16d2d49f168227f8abb6962bd76f0b5d7d450b14226346884c9b297539ba89a3bb81916933d93995fd42219bf77fb6fc6c5152f3eb3ff0420a48d15c547fb62811dda6fed85ca484bba8fed8d4e6c2fc744d85e2a568fa0be99c22fd761752c59157a5a699d13935aa38b2220962788af5523bc5c013bc2a35cb74180b718078a9eb2f759d74ee5b94883efaa8fe6cc149323ae94a4627d59f2d7114ab92d1b9fa0347157681b383643a329cc27ee115ac32b18553176a6122ab384abe1dab384068dfaed59f2d3848b0f7c029ac0231cda8e00a2d68c197d52a057f843aa51d28fb861d76b1f03a84c0710a86815f2c845d8820074630c298d52ac529ad320194d5d5f5eb1786b1f034617008081ab24c047b21190b8f75934b0ab80b078c85e72c83b1370a591885a0998e460c8e5358ead90bcd58788b4615dba60b0fb3fc76b0f18b8d349e6bd466e3731a159f43a3a68d07d228f8780634aa1f8f8483b08df542e13036461c7031426863a36e6c9fc9b0bdd39d45c63dae0e3116f6a0e4fcccc48036412896763d506c6c4679c0f564d78e912c8341862b39b4095e28506c76ebd8b3a7f146ebb58e7da7a1d8f036443b3dd655ed56776db4de78ac9db6d852ad02f16226c8b2172c7b4103cb752a85d4782b92f9d0fdf0203a209e591d0f3cecb489071a701703d6e8ad873e10efad87f71fde5b0f9c0af2e149f881c13d8bb18feb3d743f3d3cc995743f4aee4376201c0f5d39c3b2e5315aa38dd27e69f5aaec8eefa8dca6abdec8a35df58abed59c1c1e1138dbab665db2d6aeeed90b888bbfae74c986da74ec728debdbaf8cc15edfc280a28bbdb11c0614606c17363e7bc6a31d703c74258b8c6ab48bcf568dd282e876e4b2da6347afd12da57ba8444ad6e98381a0848e3135232341081a03150030381c160b47e4114994851f14000f97b45660220ab428c9510c21648821c600110010000118cc060d0ff62933bf68d2ff401b160a2dcf5435a72c62ef8375a5b29701ebf2affae0792edcd89e22d6eac7b3a7a46daec8097005c14f543031ce44c1c0c1c719de22355b8fb8c9906fd452fc935a40472dc90045a5f7777220147c562739d0cad23215c1b49ab1044b61cb92106d0c550132db4a8bacaf187e80ed926dc6ccfab123abb408011235777f43054632d45e2a1aff69a624a105d76e923bce0963417ad494e03d6e8b7691bf90964058ea2c30d15e86e888333a89223fa912615f6bc4e53790195c7e036e564e8df2f589f91f4ac8a941434b1945da3da7f8bad53230ac41cce1dac146a67f498213e6dbe3b945295a29600e2ebe4e6957b82513c744e5aaf2108b07e0acb797d346a49c64bc317b742030083fac5331563d57c3e0f35cc846b369d5482834510786e729d9e8757d7d612e1d7909b574700b020605b196e176b4a774d6bfafbb0a26b453bf5bb0fad18ea02ceb31944dd88777d861d54098b99a99540bfd4488089a5917f4b63732dd3405a3ce6390c4711c389670515ca230eaf79b655257745c0662bbe43c631b91443e74518dd10efdb1ec8befb13474e65a2432b553d0f2eb9dd9d61ee18fffa6978f63f54e90024012c0101fe8d322df69d0d79a8dff9cf8d25981adf94255146d9953952740fdc32e731349db81e8d390282f7718f8897eaf3fe208904e9c84c816fd4c6686af603d7dd740ec4a522c7e8d848b68e9f9fbf85214dcd1ad1e4b7f382153f880bca63c01b0f1aa31dc51b6175765d6c1b8ab84313582fc6cb66376498bdb7cabf6eb2d97cb866181199814387282caf343dd7fbd6cd51bf8e4b5093e1654c1e2fd78c423db7159ede5911fab01a196c8b30760518c917c41f3af0b5635d967ab4d5e124b048b8aeba7849c261366331489248bdd2b959557cd9d89808305c95838e99259315c22c16230b6e0ba6f80ed6235a0ea729f9bb7b3c9e3642e2c02fdbbed404a411aa56243e9402f08e6223bd1b0958e5db4535d0ff52f6e8bb4f0de71cf8230d1e968e642b452b542d6c24f20139c267f1f426cacd2cc462304357329219188aca881c9665695a223dc8690181ee0cab0b8bc9cd60fb9353424be6b5cb2d4ffc20d1d4722e81e06f965270cb8434b89ada1806545cc6c174db2a9122d25b38d668b47344e98edf21a13f011770d46bcc57bbf78c86ec7cf0707eb41b4fdd0b6cf1dbc6cc7500da720cae072f6ba6f735c85124bb98b85a96c48ba9fe46fae874de82dd1707c0b33b7b57b5b54d0106105c2964e71cb0516e7afb9cb204bbedde04034a02f39138f59f4e8590f9356a2c05dbf650485724994ce31e2c49e5e8f94c311277a1054956b05950e10a287dc8e20b93f16e8d6044b90d2accd070ff26ae3695d9b7c4c6221ef61b9ba0cd46650c4427246824b98c76dc2b49b7570ec34cd12438bbe2349675962fa1280c5b8531dd192b09ca0ae23baff9860002a799734598e2299c44063c12c1669556e0aa5391c856b0a5b2d4ea64ac4a5b84d52424b7937ccfd6026b8a6666550022a17060cb8a6876fef1784ab7c62743e702f57f56e9ecb2e51250bb6bd9f38d4779f3bd9fe3be27bf302c9e7e961c857a49d3a44188026f82f3cc50f6f3208999798e8f7d3a5b3a9407d3c9341d499ea322f137b2da6bda537325609383c675eae6386d8ece255192ae8ce88eaafa30a8eb5f2a175f2345cb96bfd6608cba3e107828ca3c7f53b332023274b1e4df23c096176b6a52ee1d11e45eba7680a53076f950386629f741f56e3b803b948270bba726d79147e8206f1afea586af813224860c69719d09712488a6aa2835a874ea31f1026bf2f3d385bef09cfe61d879a5a398c7a1a5e351f8e5a46739a18e886061d7ba90cdd3161a40d5a348d7bd8f774da756a4e8e76f4f5a59bda0fd6b57b849f7fd997859c0b41a12c3384d17c31e022daaf118080132a6f48e2cb6edf0f232ef0cc00fe66593c18acd22a0b47d286977a54779156465c5f672faed85f0239274cb59f0d7766cf73c27838d9162505c6defaec1c9df12050c934071ea283de36db6a0a1ec1149f1b3b3c1902f2017dd41a941fce49a6d88e19f4115d32759708af5bf8e83c2f3ac10743aec3d0ca2bd31ff969e0ce4490e73004e80ba5a621bf8b0545a566ddd23ede09c3d28858b12dfad7c73564fe95cae43ccbedf74068b29d29f0cd7b5c89b36358cadb45c10fe41697a457828bb095bed2a47ab3177ccecfa336639c7f5ee193aea4d8672492e095fbcf4708e25dd5f521268436767684b0b4066a089964b0a560856846e6d1d34dd1c9fa12ae8123f9bd0da92d11511e8f3c44089d2076ba8c5cd6a4f8a8650691e3ea70cc4511ed66c115c0c575a95e69a20473e168d5eba86e372b6b460abb2d46a56beef0c3104d661ada0b347d8d106f03093e3343ca2acacea7c0a4d2d717b5ce30adc7c92154f0bfd2b530e5663808ab5bbab18309a983b2ef95de8018dafe54aa6f4fb9a480cc07e79c2e0fdb48f9bcf61b6d7bb61be1ab22f4065ae2e6f1d4cd3219c32a0114a86abf2eec390c532ccf35c6d365741e1046a49045badf1dc95d0bb9c0a981f49d39fbed4390bd4aabdcdc3c9f6b3930e27c8f4869b084cbf4296140f5bab383d77f5218b6729e28721ea43600f8c8994b465b710502a7c91deef74555e9730e10e26c046a7659360b140b7b445adcfa37478f02b158480f18dd0081308757ea5455e80eabb3d30b24e1c8b179159b87bef84e8d5c32bc42321699f8b3d08ac5854eed7c823ffb54cac22b267db846d4b5e9744433a3d4d22c4f6431ba9f59da5ae6dd931735f76e60b202972507ec77dac41255a9f247eeb9638a66b65fe035d600e2939ff405167657b3b6b814dbf5563a0db1ce51935712a20bf4c70eed1252dacddc6c94a08c45912e0e07d2ea62f85d86794f431068eb85ee98be21200a08579fb642aeac89f9bc4e70f378e81e04a204522489f0b55eeeaef83cc9591a98993d75e4a37d11be382d10659965cdfa1742622417356d984e6bb619604319ceef293a0f30c957ee44d3fd3e06014be51722472b1315caa77c419c917374daa92aa18b995d04a1cad1b66f2ee0d4c78d9fad1132fad20f2a5b173ddc4cfaa4bb23719e5a58c3cbf00a5dcbe94915aac97d0f40a154b1a3f4f0db35195bb49c9bf1b446106c0db3403171eaf86e103799730e18529d4d92bea45cd0bd173a379998dfef059e5b828e4aed3131cd281c447f88620032b016a06380df4ac41498367ba20aa6429588840e9d080e6d1fb4c020d7cbcdf2ee791bde31d82cbec4d3da612e1447d5e3621ec99b2d7ff48642f906574e95ab6e90dfc550c924bac085e356740abea8e7721dd6540de2d24228bb52cda031ed0019afc47af0d901e84ec1f458a11d1634e5e208562bcb580b9c2e9cf32ea2ef6457d4e52709f9f4eaa802639b9e921cebaabb69bf2c206fcb53e3672d3c4dd34d46a27c798cb88bd00fa94f31f7b9f8f4c997e3abae7e155e658d2b5231c2a541d4e68c08ada35e0b09b4b5f44504ad343aabe417bb91e51d7e8977f1e427d6d5b2720bcb6b48b30cf4ace423844a2a3c07a72a8147c13f892c0e44f5b8de97d9d0ba11b2dd32e9c9460aaae74e82e13bef999cab1596a34eb4471131c7f13b3230f1f26257109d58c8690708c04f8c4e1b77ccef3186521f788a90a5650e53e6c4291b0aff75c7c05c2039fa66fc33204c4692e1930bd2444df76a8e11b1e66b698c64cb712e11e860522aa5ef99d1830aaf2f43888796209f8c8d09806e429effa9ae00ca66251c28c7b024b869730bc019f93b97497d1009c054ec10612d5de1e682572663ed98b0503bfae9998b1bf6e1c0bf46c0b0b514e33f089ace9952fe1ec0baf74f33e4d538a49a0e5d24c5c96e7411d361bbe2d1c4188a2b95dc7db3d2fffdf66d0d1f440c2e75880dc48f4d4aa86166d68a5804fc759be57857ce3d705f403cf3f2698647bbf1a0b69004f4bcb51371f06fdf47c4b7dffcf4091c0a081a0c5a31b8063574456d87a65ecbad5529a8d46569b897494e39296d42182d6af58d0cf604c4a4c2513d2fe0ef6294c84cb486c7fc60a58f3c24141cdf3782a645d6e737270712924f287ffac049d56b76acc02462aeb1476f4d91b1b97b464a708efa5630e2b0c2aef950899032a5ea544d5c29cf204bd528785159c784c6ddc43f41ee38078426469deab44d3336d23611f1151e1d942d98748d7d1e3756615ac9a5b0c2cdaa690d57162d21ec5d2f96c09c1e39598ee4c35b085d06ac62c9a96bc6454e6e77ca9f70f32d542c1963f2d5836dc3d76d6c7769802c2ff1f87661799814e974b11c39b672da52e1d369c811114460a74158342b507e26a4c60c3ee720922b0d0afc9685c43957906957586655dd73e19addbd2b2370edabfc4f729e7275ff79104500ef4ef4270735907ead21a58735fde16353a55b0a6f916a2bc4be889bbb80c16b74c7c053e9cf38f10508b28c64e7b96a896ccd302a19218c394fdae8f30c4b06b9fc71d906c209521f98de4ac7e2d5a9914b56d5148016b8e4c163c33784c2f90fb74dcadf642c87ac823ac4817c294628d0ea41a2be2ebd60fcb1edac4e8eb987f77b30bc4b55aae1f3fe5f2849269b912ad7c9b5b1576ef788e3f9ab7d1227fb3a263d8303dedcc72cdf788715e5741094856345421209178ffb3f711bb6965cb9fd27640b4fa0f6d0b650f09ebca7565a4ca9e489190bf76c1dc9a2e5280fdaf35da0603f80a4620b6ccb57499ec930f187959808368deee4d8b4bb826d10e545128479e6262d43fd7858bff5098f0d0e48545a8a97c94b14d555d8d24e97665a361faafbd3db6e9b35093acfaea4ece393d2ff41c245f31a609dff54017517f4685bd86a18bfc09140423ec49c62f48efa6184664252fae7509dfcd871e426d9084d84770013be82861f7db051da6a363f9c0538ec7c8d8d286113f5773203a27b8244e8550e049ab006ecbae22b3046638a568fc226e5446df05d4fbcc88364697033b04d65bed5f717cab4b93a4fa751f20e7ec870f36bbe2bfc3b826890afc8d7ef2b4f235bfd35a4d0d2e0a3d54308f94a09bb51a19494beef3494857afabed5cb6e444d65f532eede37fb660f51bb21e4e4e82d901f22f68c12b19812b4082388de39851a0436c83823a059c5b85418f1334794cd8feab6909bd62a0093794219ef05bcd3fea0cfe6dd3df46a5a7d4f6ea9c236ff526c47b8e6f19dcce1eeffb5098926c5dd68e2097e2b06269840d92ff92fd93b0901236582fb9a0c559d788733fcee7401be8c0188a31e41528b84b589a841be2b2de27b7a58cba11c6a03af912241e036bfc77384fc610631cbd9b08b1bf334bc11db8d10ba55513dad177f1bbabef78188bb229580eedea500ee510a538de2f6684f4d50ca7afd425c56161b94ee1078964c656a11db8cbfbd65a978ba873ca6cb5aefde5d3b71e3d07be9426edd1d41036e37cce56365187e9a8fa7e511d3d6d6899bf0eb90418a923e3712f39c73ddb5581b95790202cf1c7429f7dc6c388be7e4dd40d45d2a23eba2dda1f91bdfc875cb7ccde3c2c65700974bce2d34b796c531d5515942a91e7fa8fc32506fc37b283e9b03964308d7d6866e95212c05386cd89f6f280a83d800804ff99f000f44a1bc814691854d3912b1442198ffeca8240d6052e74f745e512767d6c31254313721820fd113cb5830b30211c4743213da813ae7813a29bc452b811e62e303adc121e866a6cfd06c5e854c1c53834933af84a19ea2036a346b4a7765575e647c02c0fd20c40e5438846e78bb305a0e4f573700468e06f6ddd5a3d665a351f64aba1852bffed9170708250577c4923e4f986b2c6d936f9d7eb85b5efce107d30e210ed2c99dbe657fe93b74b8ac4d197953659f526b782b4db60e2259afc0dd95ad52f17e0193e88559b0af0686c2bc80cac953b2f937f695fcd9ddf8dc3ff92f11b0af69fdc25eea926ccdf1c5706b80974fc497173fdc1683f04a1d1b84e0d667ad3a725ea86d1aa1f54c192652998ed41a2cb1c2618107ca2a255fbafe6a4d6638e64197430ccf458539c046955028c28a48b3633f59c314fc22cefd9f0676d6cd90eeec1c5aa369f09c87f74243578047b0e04f8a376682d97a1a19878da20878bc53ec9530550c34643a21feee1bc8c60713a84b8de2c893cae65aa2851af2a105eb7183f91ddb8296247eafb5103c78306f05f213bf35f54a800cca558f492b37275572a4a40678c2fdaeae39e9cbcbf2618a6974e7232a380f8a689a549809ca109cf18dcb7dcab787f023cd9e27aa6d417529188f8c5fa2c500cbd285763729fe1f0677b12dce0d5e3f28fc1defb75a827d343100ecdbca7de5c05725444932fe4185ea039cb6035e6dbfbe75b8e9b6fe1914056dfd157ab36321543c410168e8a5b9dced53be4db3af4b7206dd07816675c1440ea5995a587c84cf03e5d06efd20d994c582c38def2e20a74f46492fad22c78eb2461c3566052d534d9409bb037f4274d0b474998c218e233661e267712c4ba94f5c58e33c794dc28c648834d7002cb490a29e4018f5767d9bb7585ac9eca7f8381721f0727a83101d7d508ee39ad49acc256957598115416a8330908657a13b6d68839f6261df9870bc21d442f8eca09eb106da7cbd350301b175859159656a4b5e4a743daec640478020f1793b9458aabd801efd43bd6ba728f4547f9391d97f4a81aa1d1762949d930d0ec106262741d1b786b081cb4b0aab3be402d16883468eb0e4773263accb1697789f01c4e8eaa06a35bcbc636a0532317838192653f74eb718fbe99cb77d17d065a96136736a116989b3c6ef4a22b79c8e5329eadd6c96162631ab79fc5b8a96ebffd3aa7b6ec7a55dc6bca07da4f09692ace4b3a52d4be211f4c0b10766d4dbf9b13f2e53f3403a9c053e1bb31911763120ff137ac5eb8fd13dd95e80d7aead681ff3f472ede3b77f5c5a37089ba16e2dd2c6f55cb6c18f4cc486b7ba693e02740d57eac130c4f15eb6c2b97b68ae6a14c5f38829a82ef8d2cd8a4ac1bb85c0986bd1b5f92e29d4d028939a8dfab71d92ec2db5890861318a13de0dfac5d20497dc52a6442dc01380158fd9b027b3992132cc2ce004fb2c82b2ba63c64dcf7c76226a0baf5d28739c25af1b8e378e1a46c504b08df7ba0e7862895a7c5fc0356aea5181745cde5e638723e2befe9fed7b1d8e725302cfb30c1c2f505eaabbe84996d33b779a1366ff2a2b2294e99803ab7d13691ce38af7067dba96b07a5b46f06d1af427b0bd01db04d1c3e3fcbd2309b26f79bb1aac9b875de2d205009d5797c70f1cff89852c0c46c1e0f68c1ccaac2ecfe42360269058cb470eaeab14d3d3b5249c425e2cca8bf6d307759ba578a5cb757f8077cb1b37a0d2264980899cbc70ca2fed2685ab2e4626d0608a9a7dac0cfdbb7e6ac96abe913278c1bc3258e5468d65eb3bf40f6afe00004a98fd4c509a472bda83fe932a1686bdec4f984fa903e253c59dfdd71b37a5165728aecc8c44ccff0370e23b554242c3961f2708b51454d4b61686355787812a7b1df9d15c3c3b435c0fec1158e94118e880635dd826f17f870323e867810cd95c3e30d48156df0a86062e2c942c3cd0f63a6fe52443d0450b4054112cca2318037a5102e92307ef600e6f284155a56b063a190b8333fe3eb7c7761b8a064715d5895d360dd6be3d18826e65048d652741822e3ed33b8082d638688c55df625cb5068af745d8ab5d9f65eea728acd310188dcc3e476aca75dbb0e44b69f14d04a382cc32a69caa1dd332b0f03c64210f23426c30a8824f00a44e4c41da16d3724014c0f6f805ee01a57cae2c030cd67b0eb95ccff706a9bb0e4043d4e5312a7108684964b35305af1c2630b2dcf82166d2f676cf6587651facc2e943bccc4a12d13236bd446e746229396172a067bcf59915085d99a11a7fb24018efeefd157a0908dad0d2468ffb95a98d45bbbff3a4f681d405738756dd2f707e67e07c7fa6d4a8a6362deae6419e37e6d0828b5d5343343779f8d63b44a34c1007830116a3e20d1683868b3556a1addb1856c74c360fdf973d353dc62fc1a3286bbeb2fe3b3ca380fa14b0a7e6e614060c30965aa2a69386a34bb032695b5a338cf7971057eaacba7705ba7fb17cf24b83396ebc5ba4cc5a96441250c1deb6907744b7b4f54d7cab583dec91fd090e45de1e34825403d0cb00b4fa2ca2b9f68c744776f1211558d5ded46a44029e4065d3adb9a249f65b013d7721fc9618fe25f26f753df26b8307c4a49c5565019fc45603dab771fd89ae1b50bd182a247ddcb4c2c6c0b3e1afaf36d75c4ecf5e244ddb06fa4903bc5c39a374dc6cd56012e2d42a83797eb4b50938aecfe800eba7c120b8b3e373b147553c18962344a122149adb0019ad9bff7f563b26e02a5c817c86ae40604c62eb6177b8820d731e8d80ae5fdc52797e9bddf60282d9d404f4f3a4417a85dc46135127620d2f1ec1b0d036a4576f1f0ea660ab93b14fe9c9387cb9d67694f2f693df43e61c643cc8260abf5cb0ec49652d95e3b520c76d903940f14a6fc513e1aa08f3247d9c6b7d40c49fc83b661e41ada9b6aeabcd53afb60743fe0d869be1b1eb1b5d6a5b3c66ae4c6c94ff65e6c648133527b38e4ea511f0116488318c9eb3cdcc3abb9873d96adbd83f5b2a9a3f52dd3e56d12902f4c71e9c51c0227f347e5f7c840311157382d9ea09153023d4e1b35f5c90839b285cb347b40c464ec595f1287f097dc660c9a10a6a41d2a868d1574b65d4c12da501c07b016786a390040addc6a27b3e1ae51861fbc6a5b0b3b44f23a63f11d68e2aa629c2c93bab219c73a2f0d15256196c7ba26cd7631f352c8507b6e8b8e89bd67df70166dae38358e344a3d83c7de9c0acefb2e93fbda3442815493fed210fd056dd219456a3adc1eb3f3fa75a564737e1ed4a9801cc22f6cf7683bbd6547538011b7cc3420a7722e236b85ed4ab208e106b370c961cdfde8437c6643245cba5b1a783df288f48e3b29da7c6b1cb6c3f703baf77c714db39c76d2e60ac525dd0490a7264d8b90224e56e2aff89c8ab1f59bd62e371301a87a3d3174a200775fb4ddca919fd30be14cee9d29cc142e4ebba9804a91f6a8e9c34ef9d9ca4233c0f632e3a2d031ba656fd4e3e38eeed5c97d1fbd7658f0e05014d88799d401b2e7bb33e7e3bb7eb2d24556b9954a758fa7e70ebe20d52490ee4b94cf2bc34d801d9691a7202691720f5141cf060a423e5d0aa0113f5eb7e4907057d2e2afb8fbd16abc6c308a7b3c15e6ad44552cf87f2d74f2a4c2b3339f752220d6bbfed397247ddd4d53a96f600dbfe905dcb17648b122513162cf6e6c6f032a571c455f41a158910cf462954d9ada18adea34fbbd2620f80a77a1efcc4b1cba45d0cd50bc4026155e841754c3c0ca6e0b7ba6e0d553d98364ac9491cebf34d4e642895beacbe167c4de2ea3c2c85f8658b4b78a2c1c792ff8bb5c122c6d653ab71468ba5eb6389436c1484023af502d16541eeed9bb86db5b1858dd71bf56705389040694e6209fe9343912021ddfda4af51460f940ed43884bf211fe544bc6e7f8f4a324c9c7124b65b0050d77e635c32d4ecee1e8018811d419a160aa0f3523bf69b705894a9d4a1bab282c10163db68a0a416fd7c6479a0e1b16e06cfadda3e139f316d9a5131f5a2899c76c4e97457eed15f4060fcbd220d87f03c2e51fe6b767b06cb3c27e442ae939fd0c229bea63cbae39b260dd3a3a916967adf503d0238dd3bf36a7ce6159beed78352aee79ead57464ba9b35305da5d343fe8878782377ece598800a5aceb0c337bd173df8ac33d57022e7d417da90d0da634a7740327931e462cc4f53b575098094c8801611110cb17d19df75da24a5d2cd691612703709560da4b832f81d092c1d655d519734354be921b2a6506e1dfa3f6cc5939419b32657e19891e2c877bc99b12a3aea444fe49485132afd436b10f70ed579dd798ee2ada2630f5b464689b99f361648cfeb0adccdf05f2716071dcb092a44e0cac23d4e2d2f3422252273817d13a769e06698884f6ac5a60550a13ac2c804b80cdc597de574c0d68b42ae9780d47eefbefe2aea74e2cd44b794e196aa65e208965fea4a69a598de29877b94a5c007beb5000e9bfa7105c650dbc81cd1dd53aa18a0e532765827ac10f2d1b81877daed56376b24bf3b1de2a08563f101facbfd61708130797240104eb03f60270bff4d65ba8815753e9c4aab81271285dcd53175a9293160ee89f84959704675a844945de8786b25e69238d1b9696d055f6272256a2f1e11cf05aaaac437fb3ec7d8be591b246eb7be8f11803dc3ab1170398d0d6e062a0998c111987b1a86379964f3e88ed67ec6eb9f5bca7cf43e08860a50126d99bd98b4c5ee9ee3633919202573854c4f10411b3e8fc8c45031b26927e76940bf8b178014a56b8b27ff0f2cb4002c5e50ca1f12eaaad0dccffa2a6767abe723dc774d4a6d7f038962d080e1bc91d4b896ba179414321156281084cd8f337010d983142f7f92b804935f14aeec222b38eb6e714a2948d13dc0fc0a96200df19cd1dee45a4bc5bc33026d4295989f2f9d54327f87efb7d0b3669b179943889af3307c8c36a3c37e30de182fc1b45220e5bad4a33d24e66dc4b22d2a4d8289d85b65d26c6da007d66cc098a93a6b8e5d68914d6ccc8b46c6651ec4486a1e82e9014b5070aca9305dddb14e508e2a6f62b57f450596591044e1169c45a80907337e28e9b0f2d74f38e09ca33ffdf90235241e36ebade30b08808c6ef56984e0cd6d95cb24198dd00e67b0c20bc1c208755422df2e33ffaf7ea12185fd9bf51e96443e9a6a51eddfeb0b97b5fe10eabf03bd227ba30dcefba18c312a803c63d3214ca53265022b00fc95b232ebd04338f970a90c36cdc0c034d0253cfdc1b49e4b2b545ac8c0cffb82d15f0a136ec279659c2d3b63cf30c4a9a6400a7aa8658e1d4dbcc6a536c6c349a3ec50a7f844b5bb090b446d60c459cb929fa22da5ce2deb52d48bfa3b25303fa7a2cdf0af2ce41cd3c450a98661e6b1feecf240bcc941830a1cb6fe3d1344bc568019e3830e1e1ffa66ddbc25eab1834b76cb4ccbbf054c26d3b66510c8e7a3b447e6c5a12b6a5ccc4a4e7a765acc1966e94dbd59e8d3359ae243daba204802806daf4369e437c197e6765e69cf734f7e3770c90734ed9268c627fcf6d4b405d2de7dfdbff045e38695598eb1bc7b6ec7ea992c87495a5846d38e96077bfe8d79c28a2287184a7cec4d5baf4c0b0bdc0b494f2cce8a76ef236c12bd190c6b3a06e9fdfc67cf3edbed386ddd8309fe66e87fc843b2c9bac5cd4a80915738acc9eb66d9a210e138429a1155f0672b9acf651d4dc668b4ff63e5b0e0941a57570971c7e225335c9944a380eb62d6bbbaa525063c146077741a294f4a271fb8d47138b2008e81c043b285e390c75e8876839e8999c853b816fd5c16e58c28bd29502081145d22cc1d30a07d1b044eb5f85874b6748b689320821cbf4cd55b9ed6621bcc34dab18f906d3fbfedfa37e0eb7da1fbbd88177a53bdb936ce8f7656eaf78545ae3042bc051a93a288fcfed0130ac723e497b2cafb49a4e988a0b8e35126d9b861da81aead555b5aff47abf95e0730c7c82e3893a46391151e29f02e27c8f25d2be6fa2482a409f51224316722ffa295cf69c4da9a28c5e8087b044896bd9bdde971f363f1cc2071d3df6e52c4bc2d8386e9434f476bd0e809ac13290b517c4929187c2f2b9d6a091a5caaaf130d3e96288b007ba9f631d6447f007957e9d9b25e538c14e954843da225692563af976b17ae896c7297df5f0212a3857a4e01d9f5c972c4df5516e75e50eb8781393f2648d78fd85d713e6741e16749722baf70f8e7209370909345f30e5b466bdff50cebe96d7566c50b858f704bae09286544d353b59ef7fbd0d5341ef70357c6f629906cc23dbda86ede01c7a6b5fa709bb1084034b6ce530b4936d6f81877ed5cd88f26158f4933c380ed0d13e57b49917cd3f97ca5b1b977a7139d00d939c21b029ace4ec23c28390c14442612cc7bab90176a52ce752d9d2ff3946f888bf3c17301da54c84cb081f7b02a6c7ca84ee516bf5d3620091bc90b442b03595314878d917bbc06dc61e9a2dcf3a1abb0dc98785d1688d7f79c17a5ec4422b7d0d4c378e0f4b3488aed767f32502ac7a2033e4331e37eeeb56aa313a6fc92bd27b9d8909365a7c2a6b8525cdbbd047cabdd46088b9cdbadedf5ec04f564147186d048a8d0f0490b92e10c2f620e43b1233fbe0c8a414f0d2890f9c5e1ac0058bbb5e2271750af42d5d3a8af839a6b7a942284040f151a6081e31ad5b926028e716f8c0b30411a13ddaea50361a7ec6e585c56f3b9410a103ef894df4637f1763528a2dd5eb1299b7bcfb533ced6d6046afb7402668ccfb9348bf8b4426b4e3e2f9f04189cf9a4e51816147ab18a29c0e736fb2c77614e08fc966f45d291a7125946b5939828f97eb0740371f6ae586b4d4567196cc600c5b6160f616424f826f6122b0e4f862ac014c0bd2e9c37dd1527aba708875185f310e689c495017674a5d7365a03971fc7012d7df7385dd16c6e34ba4110457d75cc22c9d5104494fbc0a2672b302089a4777868b2fdc521dfd464128edc21aad7ec40a4a82bdec552d2f470f86d1d3125a02a0d1a411b760f414c94a0c95ae6dac8ab0a28669d86f6666ff7a2b8b4cfdfe0739ff79a82f2f0948388d17de83c31b0b3888d3d6e5ede45a91dfdc1662d4ef4f5f5a0f11a2aa9a68edc6b68535936afd9e5ce0d03720ae7f18b340833a5338dc5b0120859ad751619a0f5b7bb3acc09025edafc76b1ea9d7030f9bd0541941b69b47ec2a498641339ce883b81a24508ea58a0535cb3aee8f7a13af7ea9be7fb4e15f476ecb110eac50329f3ad4bd811bba1d10ab6a50c6ce072d5f64e3f0d656894e374f56dd9309c131a63b8107bd84b99da6d0c3890a44b76f95237c0abb15a42dfb98d04de9afe4717e4b55c329d0802b57ff6ff6063a41a4364bc4fdb54b32fd99f8f8492c5a494e7741dc4573d79bf6ac5ef7912f9a2ae4a63ff30fe872e8723f084927b79706e109216193fd87d01da002d2e45529736b3d4e103fc63f74061fefe41ab54b8cd532063d700a1d360a72c6d99431bc31322e78130fd8b3202d99e988bf1eeb8bcca50cbfac1c0063c97c91174403e33b07dc85030966e181d2fbb6f679525a2c334af93b2aaae12755464331b801422ef8d330d42cffdad6fd4a8fa67c2f838a9188a7f9e7494246c4c6e63cf23ccea27e831b8f544bdcdb294ce3a2b27b56ded89883b482d3bd134507642f6ddb29ba1a1bdb2f4a21427ac271019c36525c590b012d547e00c8bd479865644352eae340eb44f5036ff92ce3cee87fb19bccaa74d1c9a9366beac031966c95d5cfc2b02a33c83a47ef5c2146167c16ca4b52fc6fdac158af8006275bd007aa2ba74ee6d31b2c3ba0c3dbc90b6fdb8b8b54921e520694fb3169455ee25c3cc54eb75530a9bef86c2554aaa6690e46a70e8698cc8ea72e0d54908770eda862bc4d133da4869d2cc7a121aa522d8c9616a057edcadf089ae5b152c82f2956dc9c98ec616e23a11e0c95df30d0afd809c9d1b6746ba8774382022b35d3dc8805956db461c2e4f34bd79a184f3d063d7e5e48cdcb72cb8e07752e4a25d2705860501bf6f63a00dfd1aee078d49aa02715287617481c65e567f87bc1ba956c553dbe31173f4c105704dd1316f804c9352161645b48d70ad591e4af78f7718ed31fac5d0df47dc2c6bf5f2c1ac8ab79298e33ea608985d8c1c244314bc4717537820e52702d6748541d1ca97ace47adeeeab312b058df14182e067827710b9af16405b43ba1378ca6d02d26e4d134011f3b088330e63fa69f77f75e0f17022a49deef0663d2ea717e7300f7a5c70dc6acc0f681b86c231d468df190c697b85ffb01898a9a11ea4c6399be277b182ea541df9ba241f4d7fa409d3367544a2bf5ba302c1b5c784805d18b3dd9f26e5302ff5e9691873e5cbb0a0456e66920f0e93f510b1142738dc52a66cd9c12ddaca77bb077e99ec7b618d3526b7e73baabf5e90fd5e0f6a57ed00b9cf49645d086d79635f955c84ab32b2caf84cec53960b6785b025235c83be745ec87b8c8f72bee22285fb2a07d939daa1bfdd5787a0ac48fe2d55a2b04e3d17a67e65f30f524eb64883101ae386f5dfe539d39bb44f681fc4447aec1617d3e8afb1915745d55316351158af038421e92904fb0fd7c28a4122529030bce623c4fbf4044e7b3edda1e50b9c8c08a9b1df0856b043b9d3cedf7157d0c534339f0b6fd246e0e1a53d30b05de9dae08672b032aa49f58552e82fa05c2eaeba41a291c72fb013afa6a82552c24519c092195a505de2bc7f3d49709227701a6ef5ab3df172b7be5d76b8a61d1748692bdd514b1fc3f4dea0f57c1a9081a27fd874742a094631929d4ff5f98d62c7f136426031197255f8cfa8106efb00fa1e39391c3845c5096c33f07d9fd0069f0c6fd5897f359e48ea00672e395193cec916f357c5f5dde720ab4d0c9c857afd4c0b74e66e980e0d1fb276890ae81a6b04309fe049d171b1060f195a35d50f02eca43bd6a85619c05db91d07f771045f634029d3800975b7373b0d79efbca7123290461152b09f7007c45dc900d5c5746f9683591363ed5f84cd0cb72fb07047addb83fec23c1f5b26a72c9a9f47dda9b099487b0d7925b26b2e154cce9e84b8f5d063cb98de30281026d170f6415a69bd4799a41d27153c5b7b431867a9c204b065858ac90b8dd330e480e87ad86cb83019b51f5aba4f166436764e51f09e7e78eb5570f7391af042e87124366bcc456155ce16092c8ce52f7d250c378bc490090f8d35838e7e5fd3fd8b2cc5c063c7f0b8fac1fb3378065ffddc2b0db9d081c245896f0d042b0d638eb63e286e51c0c8810f45453502eec507e38fb58c9063565bdc1d9cfbd33619f34b7d84b64d50e544bbe6ea0429709a919f366e4a386a6961862a499d011c37a1f64fb9a615f9c0a928f75c0aa78251761829db48c9ca676811e4582f6cd334bafb2664e51d37ddcded9b21a80c0e10b5e8b2799551fd76a4ed2e1b430bccbfad19d02981b0fb34608ab1a5db792e38971bf145b5d4f7f80143eaecd7b706ef95c39e74042ec947771a36197541e6c6a838415444ba0c0a9f2845280bc25ad44e9a883979ae5d0e8730a6a20156be83f1736f625b3d7d3a26644f7cc14c764c43465112553ba7245df30c59bc4eef75652205c6a8c19d3efc8f3e5fbd5ece265ae62851c31ef189f5bac0efcf0453edd7c828993292013ac7aef611e559764258b6d6493af9f4906aff54040d12ff505e0807a9aac087f4b840bfc631fa543c286c2ffc13ad5bbe373dadf4821a9468cecd465db2c961f7d0ea5daade21f1224cba6df8db328ed48c93fac0a69282083ce9da89fccd182326471b90a41828547d212d60b7d44275e1f1a8465ce4f4f9314eca7c464fd2d98eb75e1a292ad9e6d393dd17df3b4fa570c806fa0ce5e9097232008bc525b594a8d05b4e3523ae7d02155189ca3b3f3e7fc92008c7e9345a3e4963e638055b7b29a13db78ab51ec165561ceabc1ab9e46dc2a90776078e15716aadc9ed66be96d98832c676e5542ba8a52c17987dbbb7dc659a8f2ef2aaf493c1371150ea5fe192bd87c219912fcdc86d2e1029017652a40ddffb0e700ba7a6d6d818681bde29c2b938edc00f848efcdc323e1c843bde809e2cd374d841ec3dc8c5bad01084e49caa6537d4fb40ae9e38c73c64db230fb53145e82b781dce7d2cd8b12441d8fc4badfc10ba76efbf9e5f9bfc098081c8e023c18daa2113073f8ba38495bbc829f0154ef8f40e9abf53cbe7d3a312922501675cd6385330d0dedc991ffa7161e7ab2d587ab881975ff99e5ea54fd143138fa209542317e86a3881069cde4e64a066f03c90bf29b78984b05e1b62201555ea84e0609b92c55f0229713b303115d65361b01e696e7ab3f017bd37a97d21061f362f590f6d6c4d70d35d89b30e84f9747edcc2dac6d4c531351eebe0efb69a371807c72faedca94ee47e45b20ef43f53bd4334e1d59e03f599baf72841338afd163046700228946317f6de0d529060e7d4b8f05ad0081eba88e57b3d35b15a9481694f53c9786d1ddcdabb35224a066f9c989b4cc78f7f9afa9f4f130952302e5f53888ba384f00755602880cd122fad93154ead9c5df4d0bae2164a90c825b595c439dc9df3e8c2860153268777ffe76c5e3cd6272dd32c8902e1a66ce25a211664935f49a90ae310b02cca1de46b66ffbba093d1ee5557f1cd54513d8b55fa05640ed666e03e608aa8881146eb35c259b3f5b066525569f36652698d155183bfb9d0c2a3ce3a4a96cb5db7c9de591cb0336990b6805b082dbc5e3d0daf9081b2e9e10d001f5596ac7cb96a8808aa49f5b9848876fa18aa13b67f1adce483994da9cb8168c771743c6b8974f78475755aa34507fd15b7a050ac62ecbbd514dcd741267e82447f51b7ad3f2c37bfb56927ce5608fc482ef9a70ba03e95ae2342d92a617afaab7e82176cd2e8169fa68453bf607612309af367c4c99ba83269afe7c26f04c7e7c0d25bfa921d265bf01add3be155d4f1c5e6268b9e56e70636ca95c217b115d252d034567c74f0507e002aeccbd8498b624955f93406c6c131c0cfc6c40531a6e81e336d12fd0b16c5f33989ef72db57a0c8b41923f5a0558c18c1b7ce34311109b248cca0b05814ec48cbed15c83e36cba424494ac11a6172d321782a4f34b23e43676742d8a3c95a591bf6c99490ef676dc6402e7cd4d877664869d99bcd51762154fa83aae7a39651f7e49a1331b050cbbe0a1b9e04112c08eaa0476360fe83ff735e495dc4730935258d58ed5c5a78f6be885310640016d557fd86aa875d88b46711490fa72788ab906939065633246cd893fbe8c4c13f670c36c2c83d984eacb2e67b9c958401ca5020806a100cf208e93ec336ae97cea6bfd27048977041a7f7cd2fa71991d4d1c78e267072b8ddd0021585d54e694326012063e688edc8bbd88e641ba3b8cc594678673a2f3e25bc4f51adf521eb2f3e9abd7611f403ff151e18d9d64ba613aac02c7d1042aa09ddb53a453da39f481f530ced1156538711b8cafc224f8b16d5da81e881595dd73458e28fd1dd433618a4d2d8314cb9f535266bf1101f34bfd19d95546211d334801eb7d11d4f24f22f62bd6228a5d3c1b72317d5a74b87b6564b8990b510b40894f0ca243a80564615872cad7ef3a336e0aa27c5060254dc014c3d1e2372a4b7ea759aca058b0fae479bc30c2beb004e6203453797de253123a6c4960b6e19f861ff5a247e6edb98e11d492f85f33b006cfc3bb31f27c77e607b4839fed44d266641b5d5b4ed51fe4b765787e24a7df592de530f182ef6c672fc821114c775fe020b4c411b817d149209142c9dd4e662a9180a333335db48e9739b8d8764e9207b1908c8443654591ab417d65d2404bed2af31160c24d2faf07308dc49d496032ad6f360d27803c024570df5673f0fdc8480655793cc2f0e268d380ee0a1ab44cf45c3f69bfc202ff46f8e8cbfadcbc71215464b6fdff745ed5deb894e6f97e286ec4eafa491df454d7d0083ae74740e670ca91ae3b0c5a195c8ae7abb95b14a65c18dc6ae84521cc1e86ad24ad9ee1e095e042f3447c38f0e5a8f28436332907b48552a4be42961f6a91c233a45acc1d53e0261bdc41038f15456da862e286a83a791c3a9c993266f95595abc934d7650a903553d825f362f806615b13e97d54059641064601bc9f7f73152886c852d28bdcaa80f9f09fd8715aa2919ef8c55580214b34e8619e5e3c5f7b90388376f2ad4f590cf5428dc189f299538ec9a8ea89130fa12fef1ed57a74872bd4a4882504038352c2e126b22609563326c5cfc41573b51afbfa53619bed4cec5f4dd220a8f2c4b1f3cf734053d19a74ca89685ec0797d40ac126ea2ce3a546f9e259afb5c2c748ec09cc3c9452922f7ba099cf90e0edbc64959777cb9289af8ed8138a9f540e52f3589b5bd55165fea93748397c905e0b1b61f07cdf6e2f27290ca8960044002ad33232e35920466f39504c4633228d3d0b73276280f695654c730736f7b74e3bd8409daad4230ef96b82b4c4eb70913e1560e1fa2c2548176df3c0473766416e2beda052d47473415cc9754e957cdb8209a7f6c8f9e1f2670b5241c66da1d835baf8b30cbe888e05201589c41475c8f78e3471933dfc07a45996fde0e78bc10ae8958c9faf53103ba3e3a1106cc4b58a9948d51934d0df9629aa4ad5a67fb38b531867835930f778075a07a1d59dc0105bdb1a3e8890c62ae755816326036967732a6a595e913c036ba70a18c03dfe9d8a7acdaed6a22a858e0d8dae45e6d949b0c0de984ab5fd371b96bf762fd64752cfc6b50381ae3e6a54a14075de16c57a2929a692b5d23085f592d59e47ff5881cb50ed6d856d09a3b9f418d5548855f7402c724ba012a1c66c33e17617afd8dcac570a04381149adc62ad993cb7cd436579913284f676c465a867e4cfa98174c99ce0e0349b5ee9f24fc9c60e9ccc35cf6c36037fefc84f6ea50a30568ef70c7875b954a3049ac66fb403221c42c96066c91b3271f7d7dc0b521b78268f3bc55042e104c6e143cc69328e6671777af8d0759d097c1ea8cc559a554cb379f462b081c5b238ca7d654f9f2b0ef02d570c1d9c71611f2a1a7c02aa63f78d5732bc329689c546f120530123ad6cb8cc7d29e44bc9f8ddd6c8a949a1ac305caeed9ef39dc6a486715d99080ab4e208cba173143628f197972da1e66a296e1e064555b0e283253f1db37c196e5f7c3a4b91edd77cf2fee3735e156ab651f66913dd8f21001240067feac4b90bc25f16d45a6105d45c94b13e936a4db821fde040a01596e9ec212260719b2ce5d9c3b3a0c5eafcaf5bcfa4b87c564340f52a4ed65e89cbc535fd20b4ee0bed1e9ce2bff0cc2b7404df3239c45048330ce27710f28c149be9262186d3d973ac44a7bcdf9a56042532ce1ce60f9170f97a7ce5fa2e2f23a67ad4b26cc9ea7af9045590d2c4d634c60d8db029cc05e36fafe62ee8ab32182141ebb12187497c40a752c19fd101384ae726a5f6531084f8a4266086b1702158e3ee9ad300dc0bb76fb59a907b5ea06b2e09cbda1d72207cae05c51738ca40b2946eed4cb487464ebf22cb96affa8957b4b31705a65f0c4bfa8aedb1c43ff9e26ddffb608327b75c8f1c3123d676de2880f12719a81fc0c5b1074a0665d5acf1d2b128992b137643fe960a58955d8d8281b838170961b043f68beab9cdbb64f6fd771ae1ada62806ed917b78a81a07607cc1d42c784aad82ba0338a90b9a646c61f6f505bb219d96e9fe3e6ab7c3133c0ef77cae804ca7e7707a04df4bc5c4a725e8c6f69e2bda63061588edb50b54f05b055f7e0caeec69b919577a6e957b18176848974b440c9182873ac8a5803553646530ad1b402bcc975d86bd5b9e92e09069548f584d08cbc5ab1bea6ab692bb70b3457ad681771fbc284f5fd8e0fca61845623ea10c6b7950184e8109de2bfdc3416a6377e2b054e7c2fbcbcf5b5aeb849168a6af361870c6540fa0d860b3c3bb3e725fbb6df2ab576ca83093b859b01bd7ab492a472828d80f18a1be5186344e7fca5f6667942dc5fadfcad548c651a69dfc933286f931930f372792f00fc0357104829999cffce1867cdd3e2ee3a524dcd95444a5c338128b00427594388ea041cb513b7d08da34ca79d36f95fb2982e6c8d0dcfe72f428d3f493ac9338fca7e590025a0683dc9d1e0a83f47a55161e9966a654ed9073bee1d56a2a72afb6503f61142e203acea4f06bd17ff28222c2205e1af0b28c04d6f7ad60778848f917786ddc01628c7f2ca0f67896f0f05faceac42a28293fb031046cc7f27626c02341eb7056ad9d08a1012448987aa8422cbd94a4ba5fc6406cb5c3cc1060336e74b0388d70db1e375a0587ce42c062e6a21345b90b228dd41c038ae3254ba2c7175d33eb51a906afa7bc55029ae5907d627fff35c9ef529a137b4bbb5216726d076bb5451c65d41a0309d7be4b8ee4c16ca5e6064b9850e2d44217f8e288e92d8e65af6a20db9afea5e7a4f2759593fdb0b2dbba52854dc7a411e02aed504481c7170322823d9adf8a88e9f137d71988e6600ad9ea7054d613ae3f970ce1bfeacd98f4a8763a8345acf9dd2bad273ada3e7c046eed852b2514cce313ae94afc95bb107b1c42836c38a4725de8cad2bf96e44e0b43628827aad1ee59a7bac01b6f351918ca28ddcbf94b15d05b471a29a156e16bd671a6395860469ac94a0259e51c7500fd529fd15aa01fc18cb7c05bddc8aee091683b50219ada20ec6099893f3e41048d7f2284d49f494f92b02088722dafd397ff67e2a3b65d3c95a9583ec86470dde66a288437d9236572a080a5088e177e3cb1d03e69601488da06c62ef61655796cabd9fd1dea9ad27834c4b38f187a7026c190ee3f4c244bc3e51d0939b52bf1e0795d4a447488db34a924f0d4cb02ef12de3c323ced9e117dda29eee7fbfd5b33fdd4b017846ce3ff64ecdf8649273801d110d89e2d4fb4e3025789d9b8f6ef20604151556650b59228e928440b05d01950493bd42d62224139d8e0b3ca18ae837871374936fff0f7ea41773408ba1f194cefa79ab293d95e5d8707ab4f5d4b975eb387615e04baf0a01fa15f854a4d09b190b9dd2a88f0f0860c19b51fcc9ddd249c9bf6de6a3a215998b603633ad13bdce04cefeb165c8b8b9efc7a0248b4942704be8f739f3af5c6e11a4c3592a73dc9c025246b91faf2788930042b1b0abb92fde66721f2d773d2b3e8961afb393053e8009f60c69cbb519d1afc7a34c3839ef581dcffaa0467f17b8a959ad6d48374bf65c7b597206007ed156b2e0869577924f1c73ba738d1deb0cb89f899b2d901a1bf01974e840a176bc5e8c3a161d024b06822ad2300278e7539b3c588aba1e7bb8493d1d3af567d49990171f87c9e6920ba321304bb58c096ce7441de4c8ae80063fc8a874867eba75e85482d8debcd00491e408c94de53948a03973f5bd32601438b0504f4b844f337a567b563fa5952bf532fa9ed5911ab3ff033a2eacb6b1ef55597fa5a3d1cc570c9bfe8a4a795c87d87767db86258cd547b6c8272bc1c7a65b656e046d670b3787d6eee2729404141f64a07f394c9e0e20a92d1307510608209df1c90a1634d53fc8635f2f2f88876c6f9663509b3706e00041c249c5d1e74dbc89283d3cd7a1adb6b7ff09b082000e18e44d7d372bbda81fffa7a3e2f682f79fae5947a6aab4a23ca840e9cb5c69f74caeaa309fa8042c5d78ba433d482c449b539e22d7e525a1e070869adfcbe9871599fdb23a5e30073f8ff8ea1149568ad774dd699aebf11948d6a3f1be867c3d05ea22e53d453936109ebd99daf20dfd6cc7a54a1c228929dfc9a250c3077a7ff843af41e87f4c51a93ac8b4e165d3b100cbb71beefa55c7eb2bbe3048a6191f00da362251181ad188b4ed1d55e81aa97318546618eacf32b0c860abb296eb13606d21249d9023667d98cd5888ac17a20dda107935be2caa5c5dfcc718e67d3ea8a71f18ca4761089edf75e7d8d028ba5bb9a77cc2c7b8d36c4a8837837a60668210bd14162d17ba78a4bbbce32b7c7057e45ec1bc20461cf4bbfa7d60b74aa03b46bbd2c9db5f350683194228c9360baff5629a4243167f392b2a3d857ce77183f2cbb3ff8cfa5eeb7ef603c2f7530f413697ea20515c04abdeca0802a326e2e3b74f6271a1506dd6499aa05ca31df8eea79a84b2d618e0b3ce10561f355384ffa0d844453ce772659b77a1c6848ac4220160c453d12d9560644f4dedbe2140a39a8a2f684e698403d12d7011d5320523544593e5402c002baabdb6e9f7c9728131557b1bc19ea1fc561c4fb80b4364de96a2f6d7ed0f0e2aeed7b66473aa74881aba9996d01a16559bbb273ff2f7ce1f2e27b5cefa489e3e262b880f8fc476cccc9d63287c900a691f385abca5595e41ff4cfa8d1ea6ccb64a676dc9aac5f1a1c3d3a4201e92c79466ec45c50b4ebf1958fe35e5e6196a748db3506503d10ba133c177445059ec8303ca45bc621739c3822360a354a102017dc54a1d2c3fb59f493f6270925d48ee0226cb9de91bf0ac76d33632c41e0b956e990016384c33f8679f6240e606795e8e10f28f0303ef482b64929d92a8e749698e034209f45643230a211cdf4f8146dacd3271b5ddca438988e9d880d606e13aeada1de9cef47918fc01fd935a1c8a451af670962d4f26a8287de4d025b910a46a97d93b2a6e4c77fd56aeea06e6a5b2aef9768544042a89afb6b307bc5982b92fe10f17ca1591cac21754cd7e9829843807491d21bd4d8e1f3300d14c66b9462407f3e605a6d00d11e51d0f868a664e92587a88fea5587f2d80a86919a7de7ed1ed54df8005868a2475e61bd4d5ad4ecac46955476bb42af50a1c3cd20a0e42e9adade2702a2df14443200c051a4f1c7c22d18755a7411487217270c8851da839d96b86df925279a1d429a15f25be2055a8cb6904fd7fc36450c327bcae02f71ae08d9ddba4d7b357c76c411558534462031758d7f9c963bdc28aaae22a28a1834895c20ce38b0cc10c654f398b9cc13908d110b3c3c54ac33137c619446ae35f7c50fdf4d81820947b750f01828088c65cc50fbdcba217dc5667d6ca8a87fab85e19b04a58ca0b6fdc498dce7eb3e69b80266e099ca319f6f476e33763344d1776d3290efd2e40094e9e49232aadd917ba749c5c1c65bb7748c9175b5829fe8420aa4dcc2e716178007a9f7aec6dbdb8e4872ee5f340975fe3b69194cbf8f87a80eba858e1b343dd37d57c7d94b30005e0ee6747a93b84b11af60dd39f4878b85e2d391437f63fe57d207e21c2c5f352622b614ad8f9d39b4a3860c077f748a715f98666f406f13f4142248604b71bb4123f79dce39f38220b41541da036ecafa39df7006f077e100f82f48f0aaa26422de2fd0923164f1cfceedaff7321b0068b76d63f467d74b4dd3b58dcd5cae777e0fc274ff0bf256218f72947010ff3356851df66b2fdacfd6cc4eb095c9fc143fbdab05d77a23f847aa98fc37eeb9bcf815d8b67b56d742143c4ab8656d20e493d92ee49a7773368b9e7f6eed6717c40caa40d17133839f4ee719b91d76fceea69cfdbdfa9015bcbad0bf5e426e4f7339d26419cc75132be9954cbad310bdeca01641e57d56a153b3ed6801b10926c09e58263e04500b6d757c59af136eb9887258211ffe0b4954738746d0a1e960361dd4ada4a27e4407b90d44620a17a0442c0ef0f528b4cd68a169e172bd1ed5ff03f74715f17d53a72eb9d1e62ef4e86cd9aa7de94a785fd34d8ec3c1678f2e4c00d8ce649c9dbc45f8fe711c97f517dc0433e4a57e239f0ed7f614a525b6cc0855d2c09313817c23c29d983c579ee551bd59ace3c0865d44329a8a1aa85bd743e523eeb12c993a6992a6dd7658c1822dbd23aa5bd2e3c9419466264f7728c71830442db7a8f10e3fd4dfdc74b8f8de1a61ec6726f46f83448cb4ae9cccd0235ef5d0545e9123c7391c1d9f95ab19097bbc69314cceccec4d89e59fdf80cb58ab7586a8d6ce85960ab3497d1f32fa7b43c89d96c16bdb77f8af5c665f72dcdb0a0aeebc59d98d98da9807583cd83efd8c348473ba4e51e348e94e0ce86ff6aeca28a1284c3a3c4da9dc1d532e0111a6debe399dd834ca87ef669d02ae843d3675c380a74f4fc72ae7d590444a159a76469ac807e63f58713bfad6142d583579f92975762039b3c8391ffb1d7f56980baaabe7d626e42b0249d233a9d1e03b9a1f2a89f7874898f1c7d47a6e453e37444c5f9e5b8a15c36627a3c2121b5f2e3c0d9786a44bfab89f08264f4a0829c9e6da3181f075593afc67e857b89d78730a6617017d0db0e038bc96bd092bd56a57aceb568074a71259c5903217968970dc0da8019fccadf10151f8359be10402db1986a00c77693ca9b4c236ea08dabb9099def80b8bf6ab604e9c9ad77bfd46981d4ee1beb36b19c6bc607ec1ee31aa5327bb372a27e91dd399671f0c0bae331790179649229759a004a6576cf20ec8b1e3663dd01fbf59a8b475e5862fe18b224ce140365bdde62791981f73834c31d7e9c6885d02dfec358a5a577440192e66730955479460cd2b19b32df8b759ee646c5bc09954b5f5a4343127cc4f90772f670777cd47b4aa913b480455aac869559cd399da1b184258d2256f458c46aa34e64636ad24881d4305a270e2e162bfca76cd479999be9e1ad62de640d6788ed28c77b9b4d2bba6503cae9f7d1206d247eddda13df250f982d6559c8a1d6ecebfdadc848229754d2531b416ea61b6ef87cb035837f2e96cc00223d8a3528b184d7354b8a9df944248f2f821c5a6c99986063adcdd2f5aa577a86397cf8eaafcc8d841be53e2fee56eb73cec0fc2038243a42fa1cb922fb50d2eb00d519f41e1fcc964d4e56073dd528749e069c40a562007d9b6f8e3db04f2beaa90ac60794456ea4f5ac9b1f36c8521a9b186337bda594b160655a542f2edadd150053b6eaa75db4f60965752ccdd2e900122d71bc7802e9bee1e4701a88d970ba08e12819fe29fd036720e6d6c9703d7db715b28b6f6e84537e8887ca3c6cb19e7959794ee6b647180b5889b5cc2e499e670c15674402a72c4df2ed10742466d4c29116df236dfbbd6e2d1135342858f8bb767e35e7da85303b5363209564b2b9f1ad2561cd50a094c926892c69fa471fb2316767591f32dd454103e891001a8f61661432e5b93aad5a2eadf296e1402ee18bba004644979f5c97acf2612db24230013612f6151ab6d0ffa8d0a5e044b30cb531d3d44594a04c4504567e2dd8c871da4a12967d3cf0e6d070d49793a414ed3759f531a34c80bf646d4c126e4057a7cdbef53830e6772a5948d0874388d11786d20f3ea1bf4e12a949087fb0d7d5bec27939b9143a0d35ce179f5992d0dfbc01cf96a6354f869e3254fe5f0867fc71c6ccdd4af6f1e9ab83453283f6dfa19559650d998f56a173b99b455624a58da5b6fca8be9ec98041e702a7e4959a5a9917a4e7013975894ce3d048f475d101d3ec1015a5d44755b5fd53674c3890aafe93bc64e93902c7d055c182f37b10153c6ff8f08ade22df21657052c5623856cfc7ace43494fcd88654d11abbc1d885f40d0aa1e7720f1b94062e4a6fecbd4ab477e4e8c09265fbd2e0762039ba3970f9afe27a458b1b09a61c0f322b078a622d96580184c0e3e5f971c4e81c099475ae5d945794494c006f002659bddbcc276308c8a40bc9934abaec69880427cb8a89eed09cc04929aa428684f1cf725ee2d99a796e8fc8450899ce43cc274d8e579f9ce238b6fe10bf26428142685442e109f1a0de4c84f57c9072d3f42dd9844c62002173ba1662995892b702bc38ddf190432c9c0f8c3d980a2403105d93fd102e66784d0b5492be2d6ae95c857ad69b54bf7fc5594f206452fd645c8ac3eb5406872235416ed256a4f17aa1a3324c6dc2ef3f19a7f60f6f8d7388003a40d9768da606c1356ce0ff1aa09930a2b4fccc952104de97f15ed3ffe00b92f94168e5d10846d6ce1ac10cf94feee3072b04332328929d87286c4edda3a55c7fb4a5ac145c782108f0806299668a022de82a9478688533ba4d109a5ce7508606e523d5b0d54043315c762dc8a3111d9a185405a42ff7bd2e88133d06089c497922caf759fe092247efbb867a377daa6fa3a3e168d19d65d428c5aa5e0aed56ac19ab4433aad2d59474b8d9c06b150b492335e34fb4131d93f40a0ba14c2ce3927c4dd9de16ad89d0f8a41b22fd604e32e6d804251889153c5269935c50bcdb23a6a0917306eeafd28ac40b909b0b40c391cd3905d46e65a64d5c7b0723c0384600f23cef147eb0d9d7d78afc5e2cdfbfcdce7c20c26f7329c05dac68bff3bf019ef54b2b3c425360bb0ce20590a7b33af1d7e00bb6917462cdf27536bef60b7c7d69cdb1ad96336b18523b5c365be44f75fe12be42555e54ce533b00e7ab6c71c476a7534ec6b952f311221cc3b14bcb0720c7bae14b88a8bfc2a1e03bc8940f3d04b8ac3587c32b8dd7262f5a01cf59eaa856565a897f97ec56a8e2ae216c95bfd73383b08cb07faeb778168575eb495208526c711205c027e74ab6bbc68090c1cd709843585d64e34867e2e7e0d9383da2db2b457eebdfdb669bd040393513ccaa3028b7bce678737597e4d37c41bed65c71fe3b848dbf566e11d8508a68eb9302ee56f7ea7d8e0063e6119f59212115b675e6e58ec38d32682d6694b932d2ea20af41956e3552545ab167836dac6c4417ac28561bb045a7ecfa6e6f90c185c9ec38af7e98ce0f7bc4d90b696491ff8371a70d5d0c1718740c87f420b9ba294b1f637c0fefb2ead455e2bc83b3246ee201725d7d13bb0ead5726e049e6c6cb9d327df294b001f360792d14538098ffb9bf11c778e4f369a7fb81cd58fffaa417ea59af7c265298fff532d765eae530d5fd22720566085ac7a19429656ff16415c3b8295f5e0d1e82079fd9615504ce117e13fb192c655f9ef9499ece9b1908e085cc0b2819ad0ad2b401040c07eea633bd46e6bac0e1cc8d3b6d01d1888e9430a56ace6387e32a1a34dd273120a1e50bd51911819b620b8304f4659f46a6151d555c55f6a8698e9a8c13e0eb0cf8e3905e5fa858b72944bc76c73c7b19418220b8bc3ac0c187892347a9be4ba7e1d8ab10e6aeef9e4575805be98e0fc5976796a914599286de881490973554e2356e861d948eff01d37dbdda82e41b4cbf78d5fce2c4b1b07d9711350a7d818557e0103e72ca7bd915d6ec4538c46f0b0871f665045b09827070c45532c73ce7792f6e3bcd87c23cc3032934e3150c8072ab6838f0e6322cc8768ef4fe7afe7b90a1a9c6cfb2be7806b9611bfa080f9bf9251b364708e91f69db7ff04868b24e70f5a84cfcd268f9b40349534ad5ea65ebc0b19f264314ef6a421a00d63847a2b4351522db2864c3b17ab4f121985f4ef885c6b09666b4ce4db9e488454d9f258cabf22457669ab8e9342b6e8a7d3446ad8e34c970a3ab090397ba21a3c53f5d6f39ab75cf421c28f104556a4215b4a295ae290ad1446bcf88d04fbade997cb08835cf4cf74182ac77b99f0d2465046287a4a4f558731b3897237e569c5614203e4ab6250eb9112829466c96822ef9f6df87e1dbf7d8be60f693898864b0933902e024e961e83a257692733db0a318564e3e6a886f0a7503f4f0db4cbb84f782f758e1b12821e31823b5e0e940b2e60070387d39226034060ada04226afd80e8bf447f3c20e45ca2dfe7e38720b87885bef84ce41e3c81e12f4119949683ced26f953bf01dda6c31b98634ee64767b070e82a0ac7773fb8fdf151de38c0e1680116d0015a8c7cec602e0d4222802805c0990aa1fed451bfdf2c09e0855345449f92ff55a5371299e2bd5462d760c963909ef21af4055f53782c17534697ee24f53599e1aade97ddf5711bc7f9cdea8ebea421910421750a0d204d2ec42679ac4b080421fc981ce34687a47525bc8d3c7b66e009463c74e4505e6d3dfa0d5257259e03612a70192d35a00338c2b0a49e5d220c0e97dbafe85e48a84a392eb74ba1cd2cdf4493997fd2b4783465e71191aff802c5a08192db268d55e0d48478ebd7385868a66f580928298739144d83572309b47728d462f267d89e85a2be7eb83aabd2de858a1eb23c46d41b70dbb8a8503bd092c821cea39cbea7a1260542fe2f517aa3bee87a3e2275ac86cc47dd0f69210bf3c6017fcacc9ccff99149229189f7c0331f64d73d8bf7e9040be194632717b7acb08272ff7163e9a819040600ec0d9569b99ec9ee18b97dda38ebacd4b7a8aec51f018bd282a6d9912cbe9bd90e26782fcc3c4b382e45334f9dfad10ffdfa2904a427d4ea63e6d5c4dda978f0ae23c3df94f3d198a7e391084ea58c698e82f1cb47553a00baf9c528e370c2e8d905fe97c6f0b42454f4c0ff0a6685017b8329a5357406615bc13db2ad42652ed0827c118bda89cfec1205f817ce086bdf741282a01e3b96f140bac98107338e4431bc847c8cadee0f4d72afa4da560dfc2bc3526a703bd21ae1f8821465968998cdc3581aca639f1e3629313bdf5ce4c78ee337cbeb6e9563989c0e921b5457130fee2c3a98d8a099befecc5b1c6298468214a2ac25e3070a12a61a478a5c198b29d5ffeaa90cd58578b715351fb6eb24e95730e0aa710eca74b2dab7773f67b03a82d2ff9d9791cc40bf77f6c577f938c754397445d26ef55c44429195606ef4084840876a0ab1be41472f01e4db8358ebe9a2b40e77fa55b27aeece0d4ebaad7317fb8a6a82b8a17cd3551a7c336f488139a44148fbe46cf02ad7126b9c5d8987d2e05105a500ad7b5607150a097303fb68fcf499f27b34200865e98d7abc8074aefc1d3e7c3d9734cdb941345a89b4e44b9cb832cfc38e9d4b640d0ca214f272323380aa12fd4ed22bee466f40ddef50fdab3456b54faea9cd7f87b7435e0c9988c37aa29446e5e6b22c48bcc1398ff3bec52b73143fae89762b5e352285ca5680424441ce0d87d069ac20a46b29477fdfde209ba9a906f5afd35c74816a644fc7402c038008e8a8b4afb4752c57e9f51e65d60f54f597f4ece78296544706e23002d2077a1b3712719a0511b6bbbc83898b3f006cbb2fd4909cd4f99301dca9b12ef4c6a17a4163e6b44d494f35c7bd25a87a2b350820b3f053b30abe63d6a0514aafc58828c37c788fc64c8f98e3e0683a1a96665f74cff21db7b44fcfd77e8a02122cf2bf305215fbf68714ad636109b17cd866d6a00185287a013955dcc94e9696bfbd49939b31c769d70f8f3e31ceacbb0ae1366da69585bb0ebba2d1b2c705a5c570c314a69de95de95f2181fdaaf58fd0980a6be71a5f79b563557a52e2afb5b728a8b43de07d7b97e9f349deaff5676eb9f079508ad4b94f9041267c854820a557f23ec30eb85a116246847e5d9c3e951ba80bb9be316d94720180433b0bf3809d160b2c748a6d0a2483e33084b135dd736d7faf62096944b92a0dbaa5199f83836eba34cecd0f57af2044fffadbbcf6111f4ec84cc098fe552e9679cb36cba9199383a1b46092b33da341cf39bf86cde768419cbf3ef4134140488f5f2c2381bcafaeb3f841295fdc8f159a075fd37c3137947fb23cd841af80addd07dc9e5a73a903947c59a64bb06e8f2b7ac20f91f2544bd117febd24bf99dedc8d13fc9f63d5e9a2cfbdfbf8a9ae789dc5f121c0cc52451f7acbac569d8df1bcc72d85393641abf90abc190924ce1d4be7e68e43a847763c3eb958b86999139fdead0edc2c05a6d53763b0ab521e17b95b1ba34b959161db630cba5935cc324e38331f955d59c98d76f9add1d0c4589adabbe86670419f4a118d532cccc0a81341c7d9627525250e9fc54ff8f3ef02a678592b220e28fe071074718e1b35e003291612a127a7c78060e0964cee5bff5ba2360b6da59b4bfd64e588f05d3fbdb467db64159d7eb27a621a124ae179a47856417110f1821d9c5cc3395866f91342033483915fc0b2379ae12756ed64a782c01fd0c46e2eee292901ab48d628773586a8a2666aefa0d2ecf22674d54454a55f9780a5b2c15adf2d8e22e097e2ba332e2eb337fd27e5f60e6e4550cd8b21ecef1690f9996605737136bb07340b3b136e309d1547cec1d01076888593ca458717dd42404193322e0dc10d575718305b6fe3a94e537d32b98edc2261c9aec15040303aac8ca915c3010c29236fa23c22b7950ffee24cb3d44a586cbf5fe30359b80b7cd2fb71cc765160bff0ca7c470d1dd48af96e9005d05a2f8e09856209630802a40fae738d4802a318803f406a6c58825adc9ab3fb6d69a484288484288447677ef26084d086a09a3d5fab3b50f7616b7a068ff1bbbf8f2e7b4afdfdacf47d70b2f053af0edd88148d0a2f8f6b3387e0f7ee2088adf43c32de9ab8baf8930c36af3db1747205668f3beb1ac3014c50f57e0f7820b4590f3f2fc7c3aeebd3872af1a3b10576d5ff8f643d0bb07ddd15e1a4208de51f57accaf2b8febebd5f38bf1bd94f7729cf6f9701d10eb8a2f3f71fcf1befbae7bf143f0b56a94f4a5f55fd7af76075fbeea5d63f8128803b1be7105937b5fc5ef3af1bb11888b23184a314b8f7e3ee2ab5e7edfeb31fc3bae7607e2f7c5518e30c2d73e9e37760fc3dbe07722e57713ff83a1fffe2b0cc1dd69f0eee55f2016cf5cde1c374e0900dd2494f8f881259350e2030b9f2dca32f2acb1cbe02c9555856198ff47bf2a1c59da5afd2ad62839e8d9d8acf06ec477b56cee87f986e1df78f9ed17feddfd049aaf0087a720887f7f5f8f5d73adbf8dc3fa1fd57fcfdadfabb44a7cd6d7f0d37af5e1abc62e83ab7e7e24e8b71b87f538acffbe6f5c95370e6b8b20f3b3f2b33e6fd6f7df8f5d86ed2ab1df5f5df1bffd233e6bffdca8c22bea9bf06685f7f74357cbc6b3b1096d42556813aa42d5ab7ea33c2cee08e2abf48aaec417370b2bfac307c16731de0904711cf07fecab1edcf6556fb7ddf759f786e178c72e03e72feb7146497558bb6f3c0c9f45f83d5565f377ec2d116ebabfa3ea459b5f85aabfaffafbddfefe66fc616d10fc705cbdcd288a23e5abb1b754ff651cd683cffa6f5cfd1dc357b1c6f0ef6acb07c79f70eb57bda812c74e83679cf07feeeb0f370b2b1ac7e7befef0f50e37f83774f54292f739ebb7e2dbfe8228507ba1ddfd5ef1ea7bb7e781deb75add7c2cd5dbb456faefebf73e6bd6f756bcaf63809eb87dc09dedebb7ef7d4fd5a3fe50f5e057bd3d2ffc4b82f776e3806f5fff1d71c0cf7f5fc401b74ffe7c5fdb17bfa78a5af53d34dc7affa81edc3f2cadf258ac9bcfa6b5fa562b6fe56530bfb7f232e8c5e8b8f777ecae8cba50fdfd4b445dacfeeef07318863fbf10f4fd7064514583aad00867e9f1eba1ac31dc7a355e22fa526ddd2171bd3bd035f2eebddebd7aec20f87a045f6b6fffdcebbd07be06ba46def5bc117c3df61744811ed035f2367865fc7bf9ed3c76af0227153cbd20caa7aef0838ccf97760593cf157e18baada98bf2f779ec32780eadbd7a7719dcee7e5ffca72ffd77cc3fdf4fabf58756bfd62fbf18a0a62fbdc56fec41f47e4085db6f2de1f6599f5f74dcfe5665f01995ffb0de92d07abbfa9bb7bbdb7c31ec66fd80ff191c7111aedf5372c4edb75ef5367cfbf78ba11f8c91ff7bf0aff8e2c609b74fdedf966fff7eaf1a7b1e61f5e2573db2a8a2c1bf7f47fbaad7f323e1bedd38e25b1cf1f3eb0fbf6f38e2f691f4953fef0fecf93511265f7d0fd563d7afda967f6f63acfedb3fab17f78ff7da8e1ddc332c5fedeb6de9da332a6ffd7dbdfbcdb6367b46e5acbfacefa1acb1d3e0167cfd598fe0383f9fea6910f05c2d09fdb3f4d56754ceda3d06dcbef7bde8de8e94cb2f46e59604705bfad2ffedbcfbfd1995ebeb43bfb7d6d2a0ad1593bf7b2536b84fc7bfd763277efd5e749fbbc7556f298fea559f5563d7dc866fb706c1efa94f5ff6c151fc3b7adfaff8aa5ad95f315aaaa36758defde4dffee93e7f97fb0c2b49e0f8f73d54bffcf42cc92c8914cfafef088e5d06075f521e16af7a4979563c087ef82c464975c2dd37f0efaf187baa38ae6072d58363ef5efbf68fa6c07ccd7a705c3d6bf4590571fdf2c10fc5b1cbe07a7f7f47f15563188e948b63eff637eab1e74f4110bf2fc407c7eff5d86570fde2e8f36d495ffac1bf639ffc7ed8f519361c3b0d1f705bfeed4e83e79fbccbbb87766305ba095d0697303ccacfde395f9e40069f315b7cda500d443ec1e42b903f8370b9b770f24c3f18b4d3e0dba5f5d6296bad967ee5747717f051f2203a672cc3907c441286bbe66763dc455ff6e7092c275bd8f1b356ca167223e1a2a4508a96b32432cb4910249720c8b2cc796db494db385cbdfbd2f2fa5d0a6c8f378d046dcd9a356a38a65f0c6dcd9a35546c2f5ddc3ee783f9fdbc79da0b3cced06d1aae2f04fa1bddb8b16ffcd2a7f8723b267c3977e4cb55de9174fe1cedf782fb9c97cec8755dc76d35ba9c83b62f7fa7eed03a7639e78e939472d1621b0b8e8796d182ca2363abf555250bbacb59fd9e7af774b9f80b0770b92d7dbdd5fefea66ddba66d1bcb929f5eefc341c37f7b7e2f3ff75ef63c2f6f6ed3f09d6876248b83ff9c974e67bb9d28e8d371f23cabfc96e8fe28b0bcbe66ddaff6eb0b2937f7dd66514573f4f3e19e7eee3a4a27e7f6b6f4654e4d820723a51a5aca63a98efd6f89ee9a5b14589edf3e8bbaf8151284fb76deefc5646145ffdcf47b28f7daf7eef3de7cbaaff525cf2304f1c9bbcded0d8f777c4a44fd2c433141dcda9ae98701edf1a681938109c33f6178cb3c98f6320bb381ffc666316061dabe2114c2f053580fd5f8a3c017c2d829aff4c30ae02d25027abd6ffba431208104993233de7deebaeefb0a3e650fa5f6b1b5f4f37cba6d3a827baaa1af4e8f42fa456bf54b51ebaddf8e77f70dbffef9baebeaae007d7533e8abb358d217deddb780be3a13e8ab03017d752325a2af8ebefde92441a0dffd04435d709b124dfbdbe38b2fbef8d679eb4fbaa94cb6e85e5342734f7fdb1b7dd91febf782e6704481bd63dfbaaf230aa61adebd36f619ff8df3cad8e513ef7ea6e9deeed9445fdde73d99e8ab7bbc8366e2dd535987657f13a80bcbbb3f81bae8befb6983bae826ef7e1ee97e2a5117db77f4bb6d870fdef5f902efa414ef3a25a36e2ee19d13decd19efa82cc1bb97f408debd943c54868377cfedd07d8777769c544665544665f8ebb669ad79d775ddcb9c6effd09976820412643e9abddece4be747b0069c3e9d8177ff7a5d1b2e7ed78a8fdb2e227c56c1affcfdbdefae4fbad85efe2679389e6fcfa43c1be9115487fe4ca2ef72d1a706680ee813a73f3f178d55978bc6fac8b107b87d7e41295b602ea90b7cf796edd326696c098d715be5e19ee3f2b9afa3312967429cca169d98ecd2224763f2e990e499495587fe4657a03d38e56652127d05d1f3fb4cea3297372de39b6dae7416804669544c215315a80a54055a6ba5447bbb9a12695a7433244b29a594926ea14e5ba4a6a4a2e8b5176b58db38b9715d965df63ee97d6028a79453ca29e99492ca39a594524a29a5a4524a2a5f6a4a2a8a0a13952d4d5498a8cce691fc3b8de494724a39259dd20439a59c524e49a7dca12ff994652f95b4566befc517634ddb366ee3b8aecbd9cb9ef77d2018ce30f4a616456faac66e592d1b1b4fde5039e594724a39259d524e2af994f20f3095a59c73778fb7204b3ae79c93e6c8f4b3941e0a6054be4d0fe6c3985864d1d736e79c617269373e67bccae653fa7acaea2841114611466493ad40954d2f5858d19f34f22ea75a50792c2075ea7b8915517fe45d364d5540b628a2eff0f95d365dc93395935650ca1693c6f8dd1b7d05a1ab7c3089ae4f6bf06cb0fa722644c7830ed30b6a4cd2410f014062638b68695e7743c77badb54a49b7ee697e4364c76d5ad6c2c46cb5b68ed6460e425db4a6a6f6a03729ba84ce62ec0fcd71a9525aa372458b5cce96945816f40a4c98a009c344096a46632e674c8eb8385cce6e8881672e674d94d8b9026695152d8b87a13701f0a7acaa2bae08dfeece02bdb103b1c0cdd39bfef4a6c3af25b272063fbf38764f0c33d087238ef8de872a95b8f37bef79de6b7995f3fed12fee9fcf1b8158fa0bbf300cbd9cbd70d3dadbb4d76d5c521e57d56185acdb5daa07c7cf557956882f2b4b73bd5a6d2f877a354afa02552aad0af9eac151f440d5287a2c2f0cdf0b41a0fb61f85ed881581e0b2b7ae31d88d5815812d0009716a69241093c7f969483d57796d6368783dba64b0045a0affba0bdf6da6befeae600e500e5782d4fc5aab67eafff1bb1ea867fbf18e2e7ffde8e3d875bd08216b4a005c59df7dfb7e0afc6feb13e7f05df3e5e9560ff6e9cf0efe7d7230ef87d7771f0fbfe1cfc247d892fee5e02d79f3f90b562e5fda302cae1a0de40399ca502552ef0c6a6d56ae9073f832d0d82593fd8d260064be0a0757356df73b87d6b800538805b17768b228863f8a0b6f4da166be7ac764e0e504e093ce739f8fc72c02f071c5c3dcbb51a5dfcb656cf1ac3115cad565cd56bbf6a3d38b2be35fab05625ac541b28a704a01ca09ca0a3a0a5123e70c208a69c0f9c3082073edf86b6b6b7e964d771dfb9bebbf9aef51dab5bc1ad68b558fb67abefb2e93aeea6c571375fffa6d5da3dc866ec9752d70dfe5e6c370070b19e039c9bd58b7935decf3467ebe5115cc158b138584170e3843b84d5e707b5d65da7573c0cee5b9e57bd15db87fbd673ad5ced082c11c40a7eadaefb9100b65e1c71ea772faa541ba7ee105aafda1d88ab3ccfd3568f5ec509c0c360f12b562bdb7d6dfd2a00db87c5af7816ad5fd1a5c08a5f4fe0f561b47607e2f9bbdd81b8f841fc136172ac17c76e9fdb2caae8fa3906ebebfe617db87f6cbebe6a6401b12a005c6fbf72b02dce9e51f9cde437df436ff2e77c13e69a6bde37dff762fb5ac1bc755c8c8e774f5ddf57bcf5a26c80373da0df6abda52e6ebef51b75b1e25bef511736df7a2d41607dcbdbadf1fbbeef9aef0ec4bfcf34e78d931fc747fcf061881f06e50f1f46fe301c65b7f563f1375f4790c5d79d378ecf09e61acefabab56c91bf7abff27caa371b609fb6bebe56aedd29ef1ea7adef9aafde8ea2f460f5756cedcee2ab5f7dbe192d7dadde66f4462d5bacde5afbf961d82d658b2d658b20fe7d0f03dcdf0ee275ec5baf2fbe1d7bfd1bd5cb2feca137e3eac571f5a16afbd87c7d9bd5d795dd383eacaf9f829ac357cfda5a7f7d18ba6e167dade6f6f9f4d4bc7933887b8e77b91b338ceef5d7aff5f21345b1b57dbad7dfe9ef0bb7ed81df5339eeb72c7e0fdaf03be8e0c10e7aaaf6b976fb677b8edb9e0b218f1d08e77b1c9fd58b0f63256e295be80ffa5e7c18df8be2a757f4ebfe1be71a2e3f954a7cabeab64f16bfef53f06d2d5b88dbcbfcd90fe2dbf63e1cf3b746f1ed086616e75e841b277c18aa2d650bd5af3e88871bc727fcef6184ff7d10b7631ebf311c57a36aecd6ab9ffefc1f8ede3edfdbbd53106e2d5be4b75bcb16df0771f9851b06f8795be6dde507f16d94db364e200dd8aa0140472eabb1cfe02b517fade283bb7b1c0c779fc1ebeee0abbaeec3f0c577d157f8e0b8fac2d761f73fe0833b0cb7b71a25578d1dc8f32ea5f66bfd5cbfc555dafafa96e6afd4e6abfe9bafbbb35e7e31ea6e859fed7841f06dea672f06f8d67bfbe1d83d1e8aa1e86d9cd5ff88effd6a7b2f7a35f4be1bbba87ff5d5dbe1df70ac33c2af1b67f538abf71e7cb1db38ab2d82e438dfff74bffaaffbd5777b7bcf1bfb8c2a3ef6ecab368b2adaf3f68ffed5feb1f93a76bb813cae776803dad4fcf6c1dd6fb665d9fab9d5aaadb08662f51efcb055df725fabb8bbada1a5767334e8fab68ee1c83d58576fa98bd6af569f5763f7f86af5a24befeeb144fbe2768de0abc6fcabd76fbf35aafea7bef8aa5d5ffc2a7a9cebbea782e14b1a862fbff07b68088edde333b8dd7d5b8160ebedd8598f9f869d0da75baf02c5b72fbe7d6e7b6f33fe88abf0e57f0f8eaa6f8d5a8f94abc6ceda5a178ebd13df1357fffdeabd51f576045f1cfb0c1efe6a04df3ee8fd37fe842188e1d8813c3d761abc0bc3b72090577b0923e833b8dcaa9d3508510397ba81bc5983103508c1e7d31bba52f2c60ec4bdefc00e9459fc6a201e03a4fa8e5e07560f88d53d2759daf7826365f1c32c8ef8b31eaff8f58b11bef83a5bb66266d36c52329bb44d52f09b4d7a06215b744468b36936cd2e92478618edfb24c3699496415f40740886520ca12d97b326494ce94e890a04a9c9d316de7fe74917a3f2755fc0eb4fac6d7c659353f97649366d139685770e090d01007c6e4e49b6a0ff91d1b2c5ad31a0754a0a5aa4d1e8ca6eccde7b639bdf9f1de0f527b67bca1694df9fb38b612cd77e2104717abf7ade3671a0baeadc23524bdd5f5acb1653f4fceda340fdfb5a52cd144ff9aaf3eb4f10578fbebc33d0937295566ce7aca0b66db6955e6be7788dbae4c944cfaf5fbd1be8f9f65fca16b2d65a3f2a3818a830fa93cf40f70934aa8c5ed15c065a53f3a4372922dd2901a6077dc24390a51e49b0507f784c4fb963d2b1b6073d9f4a296598cb8c37fc55a2e777307d0800a5944a6ac7b4e60f1987ae2b62861f929e4f69f63c8dd3dd49b035a9b56a5cce9a44995176bca7263e93d0a1c5873330f9220c5a8ae1413670e971068b902f5d78c0ba554ae24a950746105676f8a194a4a808ea4286e1f3ed150982e52578f19ffaf4bb6b465dd467e17fd5c763bf1be8c5efdba5baad127d2d51d235a916a946a80b914f8bc3b3383c1dde3d6be4756f8b4df266bc7b4c9cbe17ab3c4148a0bc3885e1c282922f44f0ee1d0173844b8fd81a23c2c0ba0786776fa462290c0d4267cae000ebde10bc7b469496784b9e1327d038a1a6e72538cd512fdef3d4540633958fe0f47352e5916b5228620d12971b4da4e9d975c41217b4d05045890db09ebdf09e7f2c9181861b6a8e489581f53ce334671e0dd6735522572572ce23efd92a75d96659e541010b434ed434a991821318ed98c6781962e3470a402c01eb5d13a79d5302c63c5143d40e33454c60bd7b1282f70eaa8beaa4b4743968e99c7447ba25cf7bb7e44475e6f72e08a7bd2b02053544ea499a28aad4b801d6b9284eb9a90f481143ac86a2288ca2c07a17e3b49329c17b67d4c17a779403e725070e0c7785dbc229e7c4e98c3ae1b47254387d2e5679645394a93242d8e84187140c08de39d90c4c489952458a2b5770c03aa78577ee06590a32cc40f6c4992658e79238e58c704a3c19d6b925d5079aea43cd12529c6e53356973aa49db534ddaa038fd2da9f204e15003151b425e9e50819285f7cd8893d49a28747c110305ac6f4a9c6e4b456288a2030a2b599a9882f50d0bef1bd3d6b46d41b3f940b305d988b62317ef1b528d4dc56a4cc6e404c5e9772d4a93f2a2e5e04573a21dd196dcf0ae2d3d69484f5a9266046a4a9359e15d33e2543ba239602f34070c065fc15b6c78c74eb3aa33a33856794200020a8a1d580822cd10ec0aef5836011dba3451d3c419239ac03a36b2c23b460a7af2c44c9021457670820bace3241f78c746a8f08e9534def112ea030df5a16609294eef54d2754a7a4a4aaa3c412818515162c214058a1a580fbc5f234143cac43065c6c4cad20cd6af1213ef77090d90188c922461831b3258bf331e78bf4c9c7ebf4d22ef770b9aeb03cd0d7289ee118bf78b446353b11beb57c6e404c569b7519c5aa91e6c0e3d38e1b4dba5267ba4c92e79b2484f36e9c948852a00d392a531b3a72f3c60bd4655a1dd1aa978b7473eaa171f6038759a49f54adda2549766538989d3afb1ca23a768d1e10488a42d368002465ff62a0b810d889862831614b45881f56ac469456241d298269204a106470bb05e9338e5bd1a5981f7aac4695dc25140c35150439790e294caaace13949125cad4b465a906e59d82b100f521b504e15403449c1e71d908a63802e46b7e9f39700438e1f4e7acf2883558618a0a4e50e18309189d4c4ef4fb8ce2744a710aebf308a74b389d4bfc8369e483aa33e96f40ba98f2359f563a8fa65114dea74c024f6e20d224c817251eb03e63bccb2933513fd820f38411300cc1ba8ce211e026549e201852484283111c8ac880048c3e75b9342041903c02429a8a78848912a4051804387d5d79829424f1218b0ad342163230fa2eeae20121ecd00413125daa009103e6004e7f87d2ef66ba5ba3ea549d6c129faf21e95e9df8fc5ea7f8fc3a455da89922050f03e0f56f7daa4e9d1135acf8fd9c57bd2fefbb38b846c47801aa742185a881db9c849e3be85e93f8fccb84ee35c6e75f27dde9139fbfd540773ae3f32d11bad3243e7f2ad19dc6f8fc8945f77945f7f9c4e7774874a7a4fb54e2d32ad9ed6efc0af17bff837b257d59abd4ad123f82d7aab4dd307f5ba2bb21f4e7c2c7e389dba69c218cba6c96090a3b6410f2b699c3a7012a94301bfdbed311404d980db05b941e8ce1f569e65cc032eaa2cbca791c127aceed4da1a3f856b935a273d3319f5a6b3ffa41dc3ef84363de9fc6a0bb8492b56f765f23d982debb4fa001a394bea0f4440a381808c2331574e5c1b15231606182cd1a36865852a2fbc6358f9ba2a7152986cca87c808d59e5d1a0605a8230a59d5fb598ef78824c628a223d6034c0a8136896a629188d9d214272c06cc0991fc4e7eeb346ed2083d1f0400a1776386142e11083d1d8412166c47555baddf10429650821180dfb032629033a8bcf4d6e600fe24d10018104b3a384d57172a5abc3921291c911980bb794854b345cd65a6bad94d65aa7984ec89c1e2671fa793ead2f274cd20bc35febd36c3f1262e08f04495f3326cfda94b4829d06f7e8ab722b5bacb8942d5c6674ef90387d7b65219204814982d0ba8084e1b7a38cd3bfb2ca83ff02132614ae59b3660d4c7bf96580c2b47d020d18deb2ea84494e4c4a299d4bf89c72f22b9c521c327d40a661e55248109e650eaf51ad73d659674c6c70faf47b41e735aa734291654ec7336a4456d1b185cb2a396c3c7159258714b746128409255bcc9f1449c4a2bb35c24b958752e1040598feabb45479c02a40f86034ab3c741663ba4d95a76ad9020495186cfe75aa3cb2291633c13ad9a7cad3495121c515a8ca33a36231d8fc8dcb6f2fa6dd1a3971bdfb7d82e2f34da83c362adc517c7ed3db79ee7e93fa34aad7089faf31f16e8df87cab64979ee65f28a3caa36aea71440c36df2245559e29c34b36e946d959e591b00660493283e1ddaf6c7eb74617a9ee7e6374773b856777cbc4520e6139e8d6be4ec22db752b0e0c02d1298b576f7ba8176b84bbb341e59372065c932c7ce406b6004225017944f1146a840976078f53c249a03c973f78b85e8827600bd41c6e56c898c2780cb99922d5c040942e5f57d2aa71f1d0103d4457f69a0f2ec2c21d180072037002105ab6f003ab9fc38f03d74867bc201a260340e1005931203771f200a464748413f973b1ce184d3ef9289474d5ac36499d3e9ec22360d35753bccaaa7079607e9923c39e4afff0f76388cbfdaaf52b6089f354d9b4991c435ad088a5a852ca97be2180bf5307223bc217df0b881a3c6aa8edc643ebace4847e4c3b843bb344beb21fd550811c92ac562b11828129751d05041ea6ec80a60450cce7105aa05ed469a1c9786180d321a8c6840a221e946a103cd10c715719c1185dab94db158cc8649a1b894126ba250bc876e5e84ba27d27965be3411830c3159114c4bb2a1426843c80bda17d1cc8e6c2305ae3d3942a88997f452858726bb1bc61a6b44d5c7d2072406a2973c9834cbd32ecdd2faaea080bb7517c618632947a88e5cb239d1545c577ecb0b0cd5d1b894233e9033de43392f44bc6ddbb6cd49cd96a31e116d1ad6344dd3a6d4501d6983a807cd91eb651072248a1c373063260a2230c8d20cd5b852a464aa82f88189920b35740c99462d1c8f694085eac82b5b603400c3e11b35051d2f4f474d5618b23485901e2c3c804c90180c8065426ef0410521596cecf063069942c8bdf75ea725a799139353939393d3d33dba12dba172c6a5488c0bf9c8402c1420b869078b51f364e3736c3832f4e385293b866c0132064a35668a1b18638c73fceb73fe8d8851a22846d4b0d8cba5418ad3a0c606d111af2188b6836f64207666e90a952764c6fcb04eaa20a2dffe8031c6b119c4a4804298353c7cf098b31f846a9031c6b88a91aa23372624deb281470733a0841962070f6498242161199274613b18b1c0246563f26147d721a5c937f45ba18e638c31862a4275e411ae076a896ba8cccb2d59d4c0e001161678e8f07a78e29a2654c4715f86d04c188491c2a1091a6411d363f6d8a1e18b31c698c8a8eac80d1f11111262c7f6ac998ac562b298d1fd0d638c311e4242959888783a4448f9f2e5cc6bce7befbd44982c91264bc4c91279b244a0ac95a24651a108d3124318636c0311d59147418ac06c3882ab100b1abe18638c9f3c511d0915c5f53c99e27a7488715c006cac31d244123d986670e107d1490c0b2d6c6194be22edd22cad8d0280796c18632c8423c0248d0d514786c8f0c2e431857de107c7693ee8b0e19a10c7417161052451d8f0030e2560da1151b6d223c78ea6699a56464675a4514f1924570b43488eba202645d840032849a84892030b378cb051e45e28472e9425178a13d711919d5a84d2e71cd9fef5396fc4e620aa4c648eae7d62aa3a72d341867310a1b09142218eab4116b2c2240fcd8638ee89982bf43b5a131d4566128ea18429a281005766d872745119693a76e8d488e25eb97173dc0d6b2840511d19c551988ac9b66ddbb6cd4b8d3443bf7367211541a82842c5112a960ced18dac18587ed304587a7324568396274c58a0a1d4820a438ed88c2400c998121c814c618afb03385ae086d1102b3090d755d91a66945bf7365b063918c3e07cd0d1ede4032238547d30a5d87e4d449411a8303862c63ca0d3041a6301242c85cc187323c868888d608cd4ef85434241b578ed061a5983fa2aa8edc4410e5c91a2a5ba20c8144851c1f901edaa5595a9ba981c98b12189c68f9318b80dc00460132a5e8354dd38e9c501d093bda340b4f608142c599a3a921269194a3a1aed3344d46c50170d1c8a5698891568d29a19890cce62856c83467cafc582303152090a68e22421d482d59c6fca837302162c66465568316660e2d53a868dce5388ee39ee3388ee3a01c4175e41250a4341435ae998d9f11511d897730c618480c5a0f5bbc231abb563796501de964e337a86897a6693a8a8a5e5fa478616289a9432be28cd0608c316e018a6b210aab91598c95ace11813d520803158641882c5860d25609838ac20b183831d9e0d66efbd37872254471e59e2848a85e570c5da1b2e2a451ca7611d986b9aa669464d54473a3d7123a8fbdd9126a4b1157ca445c886ace18b31c61863294c698e5ed091609a862072a5824815913a22b544cac90d796f6c35fef539ff02f052a3eb866e3031c72c8c593a528589264f6a7a4c99152e385e984cd528168bf9984c5c4609426932618d8f6efce3fb55e174ab78ba5540dd2aa2eefd2220dc19293e661c9410c7fd98c2421c77a609271485ec6a58a346b1586c87a6699ac6714dd3344dce8270e29a3665fc7374c82fa0108e918f232a49789802c39019ec848f1c190a90aec352e6c70d219a406a326f5828409cd8344de49aa6691a991926c384c93461324e98cc13d5c12f1c644853f4236aca86312914f1b8f7deeedea20ed20c153d859a0f6396b022f3c1e889ca282d2c79c24740868660328ac56238a494a2c314130b19f410260b133c6451326de0d0c14a8132e3a1abe0e26406863245baa4994243b38613ad88e3246084d310484e5c9c003151309ad2f0c51b8731c64d94aa8edc306eb2c489b8e81d4dd33427472eccc9125da512c590ba410b0a6654402365c69c38e996e0200a527fe722b1b122254b111e493b9448e973a20803431235a4b0658624d61459c15a5430410f323e1001a5498f1caa50539444366523fad7e7fc2bf145c99a27bee0a0426889932214c547d77d528a6cc0fda882e8773433bf5d7cefbdf7de7bef354275a4d2d28ca92788266d477312929d8ce4e8ba24b208d142181e57609052e3c4639b3939c102964dd3342937bb01317237bd8d2c2d8a13a91b2310a1820cd0645961062d6984387952841cb1428dace18b01b0652acd0f489a2832c6c8142fbc52d08c501da9b434e36033607a75d12226880e597a10e2070ca3e158490dc7332f45378ec2bb711ae5c2447564d3e6a49f5c50cfb944511dc9fb8b6b1a2722b95e6ce4d8b6ad87fef69b3dfad7e77c07c2951670c4f082111596988ae26506519ca08e7ee79ed1f0c518638c71d8c231e698be4419b204859920523c11729fc040044cc618632ca97002d2c3860f6788a81105c74335741491514fb1584c0558774919c56514190491515c93a105ae5dae0d759a025ac6d4702293210b19987603ae45918168e8868b26b32252a640622222258198d203491468b4241183820bc658c318e3b71b8bbae01e5f8e31c6786f3c3c0754d5919ce336fb3222a6cc1127453323a6c0f0131cbfce81e36745397ac231c6f86efa2b4d5f164b0dba5c692224430d489c28e229e9d02ecdd25207e11033732465cb99242451556c0f39b4d65fbbd8d776df2eadaf3d8f8581daf8630e7d4961e4e9280c932322524df430a54619aa61288b8f1b3678e28c102758986862a3dcb8522455439a5ef8b18388cc923355745042ff787ce1efcf73e8cb3efe1efa95877bcbedffe2e48a952a52506a4204d396e05a17335c7b167581b926c5071fb8a67d8eb63bd0ced3977d987db983936448594b29a55b7e0f9d5332e86b4e6d2a29a592ca6bb1c516dbce9276db13d41968d78bbad8a4a7a90bf9fde9ce0da26cdb5685ebbaf1f54cfc073b7d87762b90f327c76d4adbc603d7654fdbbcdc719bf6c28cb5d4524b35bb4917f6376dbc956f23953af7b98eab4ac03f1fcd31fd7c2cd760db486d501dfaf77b61378d8da059f7d36670bd74cacb93e86d935f988df6d8b4fe84602a2a995dc4a62e4ddd94aab59e1e582ad54a16489ee914f22ea3866653d5c964765e3a3f826bb62daba62f925ff1353199a6e4912175e8f7788db215732a0592676ea13a13480b4be8984708a5a13a6a5eb389be36252d9c13a814ab996b7bda29c5484400008000f3160020280c08888482711ec891f40114800f6a945a6048970da38120465114033114c32008628c210410438051ca599404003e0000e9406d6bd40a645a472e82956c9b68dcacd53c5e7f353ae06eb738b4ff2b555292ecdd3af108553343c8d010ae71a30c4dbc61d6d5146bf67fb202308c78fa04b7ec0da90ab4859ca8cd58d7887ba5ce1ed05a4383181260833d895c8a44d04e3fe8971a8f89d63aa9724ea3b33451321bc53da7f559616e812964dccd4554deea46ffba6b50c0b1d5e75186e8b25ddc01d8a45920a2653d859b32337d2bfb594886a0b3412636029df84f2376037c9126e04705682b1fb4bf09e7c89091d75acaba05223e8511d15803daf90dbaaca190a65e7367440f908971ad9fe1b885485a7bb84e8f00df5e8e28d77046376fa59c5cae44fdb9794bfec55b031fda8ef7f41efc949e1b829b37c55b3d07751fb893f8c6e7f6bc2e5ab12d6e2972898191b7bf6bc4a1a50e32c3d8d0e726695421d8c4749ed135a00b2d9ea94a118d9c80897f664d6399b612a7ac41babd3ea4b5cca816dd9b243d68558f9a117acfeb1220ba506345ff2ce2340613dd820c9b868823cf411dd411205906b0a3a134b5ea1483f6e168b62f2142508a6b9e95c802696c8ed81a841d2cc4c05e09f3f696400536137e39b6f6796e207c6d028bf6cc35705c844daed05e2be65e05b4d8df2bc9c930de45f18f7270593137cdcfe5fcb8d12926c76762dff57a3218f34c7643d02637ba41cbc5faf1b4ab242ac3f50930bad312fc6700d19ff27cc25d9d78c29348116bb72141c766b61de835146f2648b7193b02de2761e50c9c819b3fb3100f977a00bb404d93fee4df11a882fcd48b27dc602c47fc6b00dab01aa754c83165cc9bd3746d445d80851bffcbb39984ffe60ae15e26a1d16ae45ebfe77f8296dc7a9900510ff1b729a0b8c332fed7e759e86c75bfd548aaae2440586547c8afc8dbac69bbca0dc55b4693f683ebfc15355b962a737c59305dce43b741ffeb8e465ac5a174ab5e80d218ce3a100560c13a43f13e88bd6b393627bb0dc98a97931876211cb016997f1dfbc8eaa68a9406a2c85d27f0f2dbcc9a92bd9af4115d02d7eaed42213c8112fb2ddd8fb15b238cf1bbf0609819104b0289691c0b1e01cbb60d1109fb749404b4bfefa6c28864f774eb13e418298ac8dfcc034ccd6815f65bc26f2b5428d5576dcd53a11a34364036354d0b2b94400afc08dfccd31b9643037ea54ba91d6e5c88c4c9d03c56b7c30752dcc80fdd0db6952e854e505ca9eb0612ced928880861a481cf22e9c0f6013d14e19ffd10648920a1fe56535260da0516552b77e23f1e0eb7903945a6373e9f1bb3c9883e1b75ffc228a007d542912c2bbd5369851586c4e2f4fefc426c8b557f221788fbe085ec5b5cd5c9e5f8d17798c31cecfe83fff2092b06f24fc4d04e28290b4a8890dbdb0385e570858541bd05b0a9bf9b2f189c0b5c2dcaa2e42da9d21c261a6d1922353d46fec41ba54087a9b3e2a30b639509a920bb70e8b07ee4b8922a3a2c53d991593910b75673fa92177ee293e45846b7d6083f49bfe41591b06388c668990ca2e281c526f5d5cba2c285e217231cf7247ce6f2671a0dd504f2bb06b0fe0cbeb815a6c9e581a650574cbf8118b8a628d120bf4d7b152a5a4a54aebdc94fcc38a87d71b868d696a10780fc93e62adc140725fbd0347b913c361b96ec6cd3e3b17aad5792932168c6388607d78f78b2caaebd36352cfdfcd0e319de5e4750762cbb15beff5c60072b1151738939c8a63c0c5264974db405901c74dee756d18e58c3d0b914bc7a051c5d396473ff1433f6a8983b39103476a7b81ac1cd4fc53c496849a423f3b2464513ec3ca8d3040a345a1b3139e68f6c80f507e5bd1b3b03de3ea0f3676958ab1ceeed91fb4caf2b062219a385851e414bcfc73e7ded1198431ae7f04e2dc6d7f576304d03b60dbe617ced44e4b711b7fbda20026b253922636986365e2b5a89bc568079758dfa8e836e41502c7ab1f08f5a607669ac0485c6848f4c43eee2770f0dd0822b2f0377e21a1dd3cbb4f3140935210c84a1e13abdf0a0f904cc37d00d42f857cccd10cb805e11fb61cf04ba30bba3c789e887d84a0fe015c43c6540ff93db24aed08c89350086d8a4977a52daa926e835473bbdfe64a37d27a1f3ef76d11814b165a7b028ec43110e3b4752b6624a735c58a79bb1c36279a36a9ceeb2fe90f77ceaf8ba01719d386cfea17c6228f1dde8fe613d89ce2a0314ee957e400b67f5678f9082c212be92c62aac676da1cca189aefbc3edfa099b00fc2815e67db5894fbea58c9e999031e294aac4e6662565f3dea0578ceb8c02765b2a13f1a943c9490491ca3bee7cee187d476f5a23e3c4cb6bcb44b0ec094526ab1dce474c4f57859e84a351fdba75738ec2d9d28c12862cb1edde65b59821e5a7f9916932dc62592c0ee2e3297509e0acedd8eeeb994ee5311909617ae80a78b43a434afc59d76dd11168846789ac99a0407fc0bdc063f8d0ee1c849693899138d97cf3d1d68320cdd142f47f1330546e3042c43161d3427cc5653548632dd23dbf1fe5db4f1ba016480892c18264855bffe6c03708767961cd7019d1cda69e6220d2aa7250c57b74ac47fe40f339505d028aba050f8b02279a97cbde1f0b97e242424b3a2eb6f1695762c4f416bc19382e4523d6d63f44136d1db1131aa3ffed1faf13b12e24d60fdd73311c5116b98d3496b07be8e6c70e153f34f8f02a303af31c8d139b6024c07a017daa1c8a5faf028fc9942dc7e5c885a56012fb0f31ecdca9246d66f834392e4feb125d95bbac3bab621c0af859a9008161642981ab8b16c021c632a052e84edf09c955e07f6251fb74c92a47eb432070c7d85f4e0438365f9739d70ff68d07396cbe1ac615b36de440dcc70911516c1a090d24f45d2b39f46386ca01794ad2724341caa8c0f966933809dbc6768641ebef2902de76dc356dcd849f0386eba449d3b01a0bd972fa9a6cfa1d2d78eaee4b6a1107f4ea849b88e9847fd4cc67e640b664412ad7e55e3195b22728ea8d3b6462009d208a0e25325d048f93f968cfd40fca4d03ba3d9690066da02d944b3408306683a60f0dbd7207d0b7f1819e46d0684bdaaa3bc4cc50a40496eec496a1e4162a3a9c749b322fe922943864880e5128435eb26f70f5229b9465be7acfd44548fb520ff8f7567daa0fe151aa5700dcffc4e8f79f1bae8fa5dc425f8068cf1f2e5cc3c622217b1765e827bff6898b19252f5a9ee499b32eb469e48241992572621ab42c49fb70897f91d0d1dfec9761d66122070b4a14638939f82ae114e94dd826e692b629bd714c74a2d226f38fa91f9a0f2c1b1e5846e057a508f6a7da8a16f32bb0e9276e7a1ba33dc114082b9b99b3d4709aeed88f2cee9a60502d5ac20df0deade74c27f6168b6dd57bafe3d9ca3039d95ce92aee2bad666cee8f90dab17a8dc90c183981992614a5812c241d0fba8166f630adf9dbb5a35d603f10b389ae13582bc42785c25b5a917656d839fc2ba4fa5be01a8eedaf2c7e0362e071e3a3c21728544bfb4eb5416f919fb545861ff2eeb9ecff0a6342cf04ff84a6a25858410fe63eeb8fcd22afdb1874373da0df52e596c7142280f4ed513f6c7e144c1af9feef730dc3a4a9966b0fc35aaf10c1ef30543ce17ce57c468d09a5a7d088d7d56106b2dd62c1592133e7b9b46180d7a01051d2b23abc08ef798cc6d5be2b6ad45b9d256fa258f3a0f7628fb1f8651130505f0d8365237c275aea25254ab10811831b8e792180765e46b00d2a88114db6c42530d1dc96714710ba6a78642dd03c96da4594e94b0f241c396d5d961fd86b17df023bfae476ac70ed8a28d58e673585bee4c181403d09af14797859e735044baec4426293ab1ea7a749fa9688c7662227a97d3129956993061aa126c7e8fa11154867a38c1ea7b8f9ba7231c7502df898f95d5bcc0a645839b832324cc0de68c206e48b9433031ac84f3b58fd8fc2468f02c1a8dec6a186f79faa11609f314ae4ccb9c33c61b3a3851c50a1c3498b4434db510d05d79a5c356037a5d869c9105798cc89468c211b3a7ea3703c8af9efb8089865adbe6080e6cf8d14a083544ae472aa7409fe9eb8545261b8c8905f547d5e9406459ad9e9dd3abd20681e33c840495395cc3026515e597cadccc7e6d375c6e779a878d155ec23d482a91d3317a37d58515eb626ca811fdc2224ef7136035815ec64825331d04dfbff563667d1208896036a456777ee82a54eaa1287492e59c42a1c68330ca93e9421a187c34a74cfa652f01ad1474c1094d840042b4313cbadaa4328f23bc9c6c5a48636baea3a661253cb41621d14562e0cdb8d4736eb5e12e8bd0ce86cdc6676d8c65b88a8ef4f5164d38f3a4c1b60076e89405752980c37d0149377853b314814c35213a8dac74f8e9376d73be2d261c338ceb72c684d9e43ff63429e8839c7759c76003cc7a1a4c277a52edb51d3a84206523bf83b672fd533853beec631264432d5ffe5989e071240d8aedf887f7a8125665aacafe4c11b3d68e3f416e7305ff10e68b7ce6921af63420ab378efeb3c68824ee0d71c89ecc64537d6f0ec21f317ed2833958da5ee400478e966d68453eaa114f182482fb9414cc7c3a0d10fb7e2619b1cec5bfb74250a0a06aefda85e3e1eb4325593ef277e946e916a8435e17fc9840a6bdce2456b13ee43985e927a3f029b11296b3628fcfefd030a00ba8037c4063da86fc88df2fda14b507103c9e506ba6b3c35d2b7988f04688aaaa83b826d0f403fffc3c8018e4985a534bb67350399ca61b24d539e4205e2b1186dd5b7c2c809b4fd8123ad660efb40a5c69f183c66c8f158894250459e42c4a0a10b97a71d93621a6f91669237238445e8abf76728d78b0f580ed03b3de7724b5fa2eb9788b0456561787f96ea45bcc67c03417e4b8731bcc120048cdb7350f61f9da620c7cc8f882161c14343e93f36e3258d938fd1a8da6d30cc03438bdca712ed1caf25f824af5a3fd2dfa8297191b7e4d75a3ccecbb58aa218a065a4e32aff40b89f448abf2a7d6bb4e1d201390f17ff070565ee7d5edf6657bad0be0aaf989cdc10eb74f230c215250676e74c81ba2875cfe165a3340c996dc23c3b38dc092f98bb0f84a3c66e1435d2a873b5ce9b4d241873510f1a7587a699029791c38310c91011ffe0d00c0206ea6c80cec871a3970f4107d6c95856df2835aeed2c1c3233ce34063d99c65fb7bd03adcef0304634dfcd72127101de4e10f84a8ad893b84a979913e299b67dfeaafe892ef5636d675f179aedca4ebfc9a1251744fa63781f22f366b6b803144bc5d8abe2fea3f8ec31586010b32250b3011ca15921f89e990a9a043d2674fcbfc7080f7b0badf91cb1a006136493234ea0c9c1cd00525d3149d9c9292f49e93079bdc5dcea208cbded72441bca1ff94f195f9989d2f2b487b0eccb2cb14da161451d1f7bdaf790b781c2ec02b8ea887e0962fe8312cd7c07b1befdd02f6242c8ac80c32c616815ca98156ed3d5d84e8d482631ade825a16c9e049046adf6ba12075957dced854190a353334ef8bc5fdf52cede80652d640a6d059e19145a9bf84b880a3b7c7050005731c43c08fce79d68dccf47d0b9cb8d30352468320d7d00d7a2e99998141f33d19ab1b2efa874148144fca63286a50b618d434388406794034c38bcede814bb54c7304aefb77cab1fe7cb59e4f922303ea119e83b7f7e713d518d702c74dc19385eaaff00e2190c033c94a2e400a1c7de92d5f831438a1cc868ad7cdc5de032c04a5f0ca1e34c229609f17a2cad4b2263c884a747bff9243832700ba1be52aea4d7b0d3fef5c725ab772e487d751c7011411dee14de3286b99bdd227916eb1a54e71ed2a58d86d88464a151831b653369c83e565892eb1983b203b72092f4224829174560d90c29378e8ea50f0edd7aa5deb68766a3262a299a7b9bd2a49dd8bea76829b358835aaaac2d02cece6ddbc1fc8b39f05ebea2f0aeef54abaece03f2827ca5a00b4e27b7153162ade1acf818217790c4821432efd3c728d0b6eac9098d97602e0bf678c5e5781f5473829d0c9f1d07d1c7b27c447dbcb5d2caeba8e2df580d362efea6de1a048aca08a7620ad44d7c40b7c050a272c41d0ac1936b941088b2f0b39107cbfe2c9a790b88e236390e9b09a78e63166b01007159b17bd57cdecd47bc10b4e8ab7a6f3929f8b9258823d518e637b361aee047739af5ce44c8a28c222520c91d0f8aec06e6b46134ad99b9fa0b5e1ceefe64c8241c7b113aba5795123108a7512afb6b16d205b7d2bcc02d987f0b5e2a322d523b8ec138640bab107b010c3b76f92c1cebd67ac156c3bc60ff5e8bdb5941bbdeee925640df2d2e58ff2f0c2032c4aa9144d7c0ed92aaa812e69d9908b4a9a27c15c6147c8667a277d2f2f66faac8f7a19770d40f9e6c3144d8a10fbecf3e93f1ce11b1aa80b301ac9b139e533768667c1dc1f468e98b2e5e3135ea79c414114301c6b3d9852a5d5a917077d246d407976a776bd64a70062a9949a5ec82a3c30b7f8f6669be45f7a6487a67e702d7251bac149a29b0ce4c09e26fc5d9a3cb44ad69bf42afa7b640b4defc69dc0c952f1aa629ba7c45f2880915a67d3570b6e52066034e9b9d3530e1acea86c00b227d7831be08fd73ea3215583cbf70f8f01dfd1377110664bd5adc5e490a82d9ee5619e9171b3c46a7759a609d88bad96097701c03a6f159bedcce3e69005c838c42e8b75045486045e3a25826829e91bf07d8bb2a67eed98cad3b3ddad8ae09d1a4f74b22a6dba046f6009c2ab56d19ed5ad8034c817d5e50be7933c2dc8f3ab624553bae9a2e27e3cbd4506e902c520431f17efe3b154bd3bcf984f03f6f8cf36777e30b56e0f69e444a7c496f6b5a73ef7401818a02c02bc1774b84a3a0bb3a9e860f170c326a7e48d4acff9da05f9635f504d7818ee23fa2d52a58c513940ef8dcb42152cb5807f02725152cbcea2bdf439fa02ae5d8989fd018a2214a28adfe892801d2513f145f000a52683fbb2808e4517cb84b3d34ee207959860b482d160c82ca7e46c1391f148cb7c3064bed8834cc75505e12dca0ef9abdca0d8427dcb0c91bb7eff68d92f9d318c3a82ae4fddf1c789495abc6075b79657d8d67e5db2a6b5c7f58729455951f98560d6fbbb4b99230b24295738fd513fa33eafeda1a4228e6137be0b95d30c04697403c56ed7d48c38683f613e859213a4723e11c1eae8f479c6e594c08d3623289301a7adf458e28fb72337aedc6632fa10b78e1f223c1a9bc14192c253425144b2163f79e40c389c9c6e5862b42b4651b6aca6ec305c147675dbdd92ede01b026332211543af79e5c88781e41f02c68341cfa91c8ccbd7e0c6c938a5c0dca8a19f1a4249a74ce499c8ee7d45f6a0fd98c86c82528bc15dab23ef290016339842ca88a2c134144d3aab6201db890443befa35ac03f01685e80f5b1e8430d2b4240abce412cfd4a5bf46e11b50a60be5dcf26d3bf8948d678dc42e8d33794cbb1d363f6aba5d146c1264f1561ffe943487d2a79d312aa9aa6d3254ed9a580e22b0c4db37628c09f258d0a6557cf39e4c35db4f9f0667c271f0b7e1ddc12a0027cd771e1be09a2bbb2d298427241355aca2b8bd04a72ac15f0b8ac23937f1b4fac15b18564ec0ddf56b16b3ae468a81e00bc601c6cea56d2969edca94d5eb9e86501c98b72992006a0db9d04568ed183b85383564c92c1edb6857713668db8ae4899fd8c43071182e20061962d16f28e57e5cb1c61d7184459856545e020bd4046ca1673da63a92c3a7648fa6b881d8885a18b4e293391d276dc9990c3f6b42651e4d351c4a46c20649c685df9244aa26738adfafd9d49398ebb06635ab1c06bec80caf996224625fb7b99d3d0d3402897349f88e7c30488276daa762d56409fc86bca7970e05c2ee3ea888ad4a4bbcee25f86452f4a59ae48731dda77e319e3ef8846b4e62e463c89e758fc4f7ca2253e9d07769fa197f8c8d9f70773bceef6d6668cfb021937360b83cf59c56744b0f13fe4719ac1b2d360baf780e8e2bd18cc61b88db3b622de2cd6b3e6619dde1752ee1d1d348e894bb4b305b6aa3c4ae61349d0a5762dd32aa3cf22cd445b0b394fe46b46c8cdb0aac35f41275ec21dee6a316c64d178c05950294ca6249f56411fa55d654a7047d80163f7b4905ceafc8daebb097b013eb348d0e1656b9c70c532dd8c381d4e22aa9b78020a34e37469fdf29345b0272c505af0f762af9e24e3d90c177ed16ab2e3cc505b8cdf6dd0ac648cc55a67837c810ebf7e8f4cdf7ebe7c1e103fc37dc84deb595b8220971ff89b997bcb788c548eab25cc2af7de946af9bbc8da3385badf88a82faf36598fdad7312c466744ab44920a531babc2496ed2764dd1df6765359226fb8d75ef78213048c6599dc7b8c034e258ec57b4aff64853c56cc69473f83356ecfd7e60a7e4b332647a8039a2ca914075ee326f50f960c327f7da618a70ae1deea410bcce8a77eba5c466aeb42ee33a35fedbf09d6271fb6cb2ddaab653fdace0f097911235d353f0fab0397f30e71d9fbf13371df695897745884295a861973f590218f26e21011a04fd41cf1fb10191c83e1c01badf0fb133fde90cbf7cefb476362ff199fd95d5baffe086156481def56344a89b46c11a5d4695020d49589782c70ca6afc6867292f409ec43aab372ee4a06d31b6a329993ed98eeba52c905cf43c61c0bc9e2ae9ee061f7c82c866b8d1b5f66215e4ce4368b78a5e146e2b78ed22e76141c182d323d4604f7bed180339e2b81ac97eada3d3c22846e9992cef8b31ad366d11ac1eb081b65cf6c10fce00d5b3f8db3a72a719cb3efa3a003c720223a7264813ca9c68dd134a6ca561920f204547570ca594b652bec00604e192a24b5fa69d0d94e7dd9d0c8b8049137e8f30234703af652f2ce33c651646d4f20b9020d1b43d2e2ea79172ccf8f12639e19eb435af80763aeb2999356c949f328b5319414525572bf1c550761a92988714a72bcc416daa9ee1062ed9aba0ff12965d92e17822f117d30c3800a241a46f41e52645142253d2c069aea48f135873c5387e25063a23233ef83e0164d59c509482d7922082fb5373b376f536868535993f4d8edf0f20d27135c66aca67a15b038aab95d536e5fada11aded62c4e93acd3a3fc3a7ee9547034709732fc4a35dc43cc2ddea884ea6c2df3321454fb2397f6fa4aac9dc1e0708a7035310cd75e324f4fd42503b418400fb6be384963dda37d1dccf9162a2377dc78128b83a3104426361df54be51e560912a008c6dc7fbdf05a0a8c9069fd1c4c9ac1525d51a087c1eaad78d59a9b7018a8b406b1bd7830759a7cb915908cd7c70463030228794fe7c3b2b2c5acdcecfd27968061f7d0027452d33d40112f6703aa5287c90e19ae42540218f90ff2e870993884d4aac9431b5d9b96b54ba1d5351648f4d5fdb14f25220c630199e9c0493e45b3b6f607cf39038a6579935ef09a87754ab979b31147dec5b47bbfc2d9d8df46875c6f26cd4929dd492cee2b249dee888d9907abc5ccc46a941c0a85a0f4c6d6d7a24fb7b3867e2d4a06d316d48c6361a648f8b2f53c50eff1d89f800b56c30a079dcd76607a33d70934b120ae82a19ef829f2e033108f114187c2c8d78be8ef480a114b963abf2340fbf58bd25da774860022a7ace2c1c521b20fb7b0da58c7d777565fcae4d5dddc865b53101882d80288ee00689fc5a82101f825e79bbc62d0ef5a30ca87c6831e9d63e0a729ff6fca27ef770fcb458023374504c56347999e0da354a4d30bebcaa844703be95d42241fd2faafffbc312b8ad25c548074608a3e5a357e6299492826b28c55135207296cf630dd7cc99d701df663da2e2c6a1f45d16b4b6179b01c6c11c23606889ec13bda89038569502f8030027bcc8b1df9d844e111d3a5e869aa49f1bf70326ebb8bdd4f1bfb7867fc103a25caf2c53feed5844875357a5ec273bd4a96c4266f2b1508fa99721ff6e5587ffee2ca882c2ebe95059cab987c3f05006080fe75209aa9e584dab655deb8aaa83ba79d04939f01f0efe7704cf178279705e570c6ba7a0aec554ddad811b2c400c78e0b74e946553def4ec342578856ca270c054f91aa4a49f8f8806e2a8f3ef73dde5bf62195aef17217496640f065b18836004a4fe067e2c6fbbc96b155522c881a24ad78004f04b2ef49ee64959dfb0d28ddb4a7966452fd3929acff3e054b013bfce8a2adffbf392ff6c39f8c7c0f5712e0f9443c2d4cf2cf71854a5d2bece6a9a050f63c2f193d500454c7bdd2060a93a0620baa65afb90a11c1d72d3909b3316659446f3c1fa0f7cc7fbc6a12235f82144c719d941a2a33fb50a5d42a3b3253cd0df9b01e026fd6b3530bdaaea758c7b5bc220f1083ca7ea5bbc455e08aaf5bfe8593d9afd129ab722c8ca793276ed7b199685a66cf322c84d3886120145e0ae964aa821760a4d1c4cf261a1d0a81d2d4db7dbe94d5a99b0a2c462004815745a0b8cff13b328e19d4983857e379c09e29bd12556794adc4e460f632858ef33c5abe6df5f924d44928699f4a8b3dcf963a232d1092523b482e58465f3424a3e5a51b4372717c04b53f5291899c47157638b8b153f353c2e83107aa8e6320a00233bdea056c5d541cdc58568c50cfee325f382457b4a027b7ea52ca544260f29e1ee8efff0d0affdb015b418f58345fb5f0e5e8be4dba5773f5b068c4a0ab589f050aab04837c37d42faf3d193ce26e54f29539e9007f3c37979317e89b42a8d002b4fe9032c81f7f85134a793d7b2a720f4cd94eb5000e3b6c732989dac2bf1c9c457de212a429f100cb5f172e139b5c1db3f5b1008bd3b27e01cf06c5e09c18b3c188d5747087290d702b905ce689cfc56728cb4bb9e33739f05e29be472cc37a9e908d3299f7a2e16054186fd471ad19576378e44611a0c9843c03617f1f05a6f1245a5efe383071ac13c6958426f463bae93972344541441c487f1615deb5d28fa768873ab6747bd21c90a233cc1327a176a8b1230e86ccf4e8a7ba04348ecc593f72dd36a89fb464c7830b480190212587394e7325affa8b4a940239780fc759983236917860eb7920c4096abbec224ac0de074e991bb65c5074898b4cd467231f681ed2c66cb011fbbc8c373c7a69d384164b3bc57bd9c6da32d249252ce443bd2a456b07ce7ad05c67c73d62958b55294671774d49679504dfe66c1a7976330cb6e0e6b46d27c71238e948ec33c5d6167b227a369e883e9ae5d13512518fff3ef8284d124497e4f5638ec6976b5f254ca5ba5a4730ff01834fd0b8a64b959bbd14ba6bc4d4bdda8ae89b7e7c8aad2349f3dd7f9a37d8939f1d85bcec5c679c450e259a7d78c1391e154cff019b4dc0e38d89071012ffd7050af6f1abe9f0f58c44846ab9c8d5c4b994532486a321b83b8991b85f7b698ce8b61d84f686fdb60beb4367f8025064d2bccac9069a7cb01b61225d4bf852b6e30226bb807591735ccfb7aa5e1b7321bd615513a1914035211c061ca03bd8dc27951d373b88fa0fe5a830681730e64be715714f8a8676ddd28e722b004d1dca55f81099a46095e8750b3943a98ceaa47360cc7e71574e01e09557532896f45901431976d3d5d183f2e0ffa3c12a09ae712867017880bc69cde6a1e14c0b6d5e3be5012c58c48a2838aabde05936227e1d6f77fd53af8bba540eaa9d01b6952acf4ca5a437a00a00c9218a22eaee388089fecd2e799107021d584a158eb3f40b463b651e09ef64cb0ce4f30be706f51f4d9de4c583862d5f1de24ed691ff2cfee893eb115e3d8fe6ece0c4e2da67e52c5816f03affae788c89cbfd5d29a80e4b03e47204b09c2609cc41df91e3c4ce0d3ea6a5d3bbe9a5bb6e67581c70f677f28e0d61d894b742023ecda0ecf890a3939e63da27b04cab9bd4daddbdf7c721a074bc2a0b2e4bbe58658945039b3011d85e1a4f2b7d6b8f2f4b2c885100ab710a66f86ff68fc751115f405d46025c196722a7f10f543a0b8219158239e5c52ac62a3ac6ca31cc5021b05e96c0b918000e44c7ed11d70abf45d9d3376ed9d8f7a6171428626b2eaf3200f6b78a62e46273df89e30009e04221bbf81a06b5f76ec9c7576f6c077ad6e09c343aa39176b47cad696a9a9d5cb7898bda1a01a1f9bc10481de52f94476b08deacbafc70b93c1ed275f0b57bffe5eb977c6e688cccb8ab1a71f322d925ac196aa84079a0728f69c92aa1e2270e194f4447657ddc259feed9db269422edb1447a252d613ad3daa20e29959baf0bc4676d8d802ef25c053c08810c105fd4ba845110e797492ece6cf19100a6bd950b3a99342231b0dc4158c12c8914f80d5088bce46330e7f873801764f7393aafe08d799f392247b458a170488559ffaa5824173302d94173f94e3301ef0f7ce5a7b9ba5664cd7a606fc0d2e94402318c2675b05266a97032499330cb41c0d5e8f47908a191a891f470a456a2f2f17cb9b1828743273fdc3798add1d3b096b3f53e608b45d9a0adaa673a78fdf32f3e2ac20c376f8b7b21d5637ba37e33884ec4b46097ec353bcce4b8255f96d7489351d23d6ff966ab843d404bbe196b405890fb2b1b03f970a502646c0f8b49b2265005b14766a1ce376c464b7b7e4bcba2528878db36091a4f3a9eb2e48b3f7b718a6f0c563906b2e566900411fb696dda2d4fa6d9037440ac6bb16a0f57337c6d88287d7567d39d97059b7a0b3110643943853ac9ec2acc97f225e2a50c4985e13fa09c22891e139ae58279d689347a697fd8d02dbffbf8e9a978210e15ecee50903bba4693bbbb1bfd68c527a003351a970dcf83f6288be20a958f2ea25801c9c24a9b7ab4922b3b75b09228211be5f42a5203c0ced9503fcc8733e34c4148dbb2a9962f669eb7da240c0c211d085014f50a191b68524ab1eb516228fa32d10d2aa9a05a9688276d36f0e81432bc496b37b0a401051d4f56ff21df7ce1dbd6736698359437091de0b5d586574c8fb94483ca464f624ddc005eca4ddc55d20395edf0ca1030da729c270fae8dafa172b96f3c17ec3348680a59dcdb33de606c60100a1aa1573ed2fd138f06c1c75faca38124a1904d3f4d608ecba0159b3c7eb4d2b195f65a52f80fe27b543a6b447b54786ef339c95721c07aaa98d022340f944d4e631cd19cab90e6899006d77dd599df94ca493f2a7de7c5ae00c72c15e157c9275d8c61ccbb8058f04f99b1b1711e32275dde54b008dd38fbd28d79d6c215d8c80e695951947d2d4040e9039eb370491cf6e17b2b9217c387a8fe3497f04b8158a9f7d1dd00b31a0f8856fa0b076ae3a30e04044eb9e35e1505bf36fce31a5457d51f69582f73496162402727c5b81296bce37fe06fcea2e8e55313da48eb41edbf62517fbbf9aeac11b7afb14a4f004ef91fc0b0af4a6f4aa09b589bc27a56def15804ba4f32718e595a348c4578a28dd161e7928549e6312b26018b0e7b4e914f4cb200253373e4fead0c35d2ab4944822c9930aa73e2d282252ace741862c120ce896cd87765e339bd0dd10c88f3a592c360caa63e70cec7db2170ea6007320118f9ee880eb1ccb77a62b5d6240832331e4c4270dd4026f6caaad061e016275e010070c8841d317d1b748a3bb2cc4dd42b42d3f1dc48181c37139aaa9d18e1f46ff97d6cea70c3a2411c6df812c42831b0c5f24c820e31aeb86c2b75233db0a7a953c0333e6f8550a6a2c09825365ddf6437b81b2383c7b46d9a01baaecafac97f87328cad0f061d4a778b14d69352e26f9d1c506164247904ea12451dd35a156a2368910468078bbe4c6e831c8ab549ca0bff0e464b9981123e2870c0b0de86d68ac8183b95765eb23645542a29ffc2a69e859b5ebe87221e149fcb321d87e55d8a68021ff271ee5e15113601da41a8a498a84d439aeaf322047b7d6ca7854276c6dc476565dc86dbf1fab14030397a9c7d4db1a22d2bdfb6cfabe079f69a1e3472a7d40e1e08f63eeb834606368e2d7c931342a70323d8c679a30ff073cb5c05ac70961e6a7142e1d7b64ebf7827e7dcc05c00e30a318770ff2809464d4b47eb370336ba3b9f9f77bf77a6fc02be5ab02d6645c9b962ef0eb4fca785dc5deef905903ee75858ac3f9097d2a0c59257794795b27fcc5e58a67f01aa728dd33f4b96df97fec766ded69b0b2e732b38f73f268288cde78ba514188005bd31c4ec05885f212a1aadb4ff1cf01298b3a1d69dd36abbdfae4ae059e266793871f9ff9922b0903bbdfd7cc330d78cff726897474aa8a75cf06bf86923190ba3e67511a322126d095846a6a491bba5af430909d6c3a85e43fd7f7672b3e9c8cd43bd3f6550a7fc376205712cac8d31a74640e75ce22cf6c5e2fb85634e64f07535f7a0be759d06949dfd48400aff407346099659a9c1f83662be8d0daaddde961f5b3702adc035b42a17140a3a4b712da0a0c82869493452b27e2c2e35dd798ff4a05bce65fd017dab9e49015992b03dd19c5b0613632fe8edc4619656dc078bda1d129a8d8d6da6fbf191e0c775ca1a4e8bf2b9549a8d230ad37777593d92d401346ac44741d9c05ebf1676efc65cbbbccf5115adb5fc2c6561d6d62ef6fa30b3787c119a1540d68d25c39025f138467def5b72ec5753fefcf32c54ecc135e43e111e812c606000dfcf4937f46ef06671705902266386300ae8f76ead168dc7880f625a64a8406cacc7104e9696fd8c97caa068fd04d03fb669377ca6dee3f50031c8e86ef489185214230ee1708d28702d29a4803c5a6836ecd651ccae62275ead75ef02503d728116cf0970f7580d4686f3985fa23de5eac3f56dea9486f341276a0cb404f3dbc86cc44ee7e3d6043d8cf6ebcffc04b9515f46120618319f9a5e522112629e4d0dcbc29a992a681964dd7e57a8ca81795f9d07d591c8c5b55e90c824e095fd921fc7417d10d37534d81664c90c144359c450d125dac4398eaf9e44334f103e5b5d20889c614dc7877edbf194c098ceaae183610649e079043463389089acb74ba4d80de2f660c263f68105cb443b4c69ae26ee5d03673134a8e3a8d527bd168eb88eb67c627201e941d23252f628e0408654b1ab25486f46439a70b9d277a1b892f3378b1bf7853b79fa495e9efa578c9a82101ef667e9ffc70c39da0b99a49151893bf27c39bfbd441f85d7aaa0236ed2a82fca72b3084f7e6b3b4729d9d5bda2824175106e48121ef328e23a50d1d28de1c1116dca679ee05952a2a7a4dcebc4fa309874d7fde8db1db81d459e677dddf2d2dbe14342433b4c14b15667a8fdc8551cf4f37b0250687f715ecb3757ce13f43432c4f8b1958e45d50cdf4746be7bc9d8281d457aade8958776104e8b41c9b6d022b1e7d13dd3bee71dd68a60515c4501c4780f083d3d3b61241c6f2a408c441607b00c5ad1bee5bda184cf843e18b9394acbe5d048fe494961284b875a78291d010c6722c090ed1a7cdb84c85ef3e3d8cd49c925912d3a8db721a1eeda164edd129a1aea123ad4cb730a658a71056e5bdfd553a4f33baa977313725184c701ca54828a83a45042b9882e53ba73c0ec8281c2e5ae8c2f5a0fe04d466285088937167d6de5770137918043564c44bd24884081ba4dd2bd99883e0fc0c8005d94f6f9ce01b70f912b6c2fba3b77144633b39905576d9fcf04612b599af422adbf1e9e639d8057f37522beb59c1b5d87d293bf42e42eab17f28c5f2296bdfeabeee8a027b6dd8599bf7190689bd2bff14d9b0770d4af2d630104c5753c686243b94182b151a1dd3dd5ad693777505f30650a95db348f2d07ddf3faf2f6f50e01a79cf4c1cec5b08d16718a19d3548ed9e7429939b08fc4cb57ad4ae004dbe480ce74a8e193ef39a097046d471f4312a801d34393aba238cdb9740916906d90712163f9017941d81c9ae867fc28e3bc069fca6206eb5e4a9573c6c6a72e9f2963c44ca531f1f982a682c7540c5b0a7d9fa655e54cc5e530ee325da6f196bcda9cfcf77b9695f2c2357bcf743c41b65eda87cec5281baaf97b08754b8bbcb3d85559952d8855f1ecc9b15bda9ecc12650440871434a540c078ce407bbac0125344fde5b60ce5fd6bede8f2796ac5855a13c507ca045dc0b61dc2beac0a7cc06ff9cbb4cf401617d8d4cab5e8cda63921879c5fdceb9bf585465ca2275a7831e29324e236b9fa922fd5a3276e290e79a04fadfa3fe71925b0d12048b2da59137c56324cd841d58f9d207e27f3a22737d6a9b40e654c360846581d2f55c782ea69e07de92f0e8d54210c9441a2cb03ba238b8dabb2bd20a078dcece9b705d56722d0003295370ae24546b10dd11b0579619807737093c2ff20c92076bfbeb93810ceaf3c6c407bc1963fd7ed6c317da2d64981d62ebf326bd4abb7f04dee8f2c4546a1249edb4422e02260af24967861b13287563e977055d70a45c43e18c506b8382ffaadf441e85722cc9fc6edd9ad9fcb6d28097ca06c46bc12314f66aa3f8bf6eca11618d780d87757e730ee34f3bc60e206c47b9d37271dde5733e85c0871c2e10df5c105b79e8efe9a65d64d6c278c8750d182eaace3fe42d9f0334c04d8a988d99b37a0b05ca006a7abb8d336e9f5e995349ee264f399220e0480a58b00cb61d416132a36be04e5de4212ae64faa342a50241774830abfb2310158a75a611e1296a1a443fb55ac4174fa2bcdbd61c8677aa2c96888fbdd103591b1ee1cdf44eb126a999db5db966ba43d71d39864b19910032961078df5b6a71980153bd1bc4b73d5e15895b7645d37b5beb3c11869809f08b940edb214367becd4824b912c48541e0ab5bd15305a927d43285c921d5fe778cf60dfb1439029a6d1d0a6a3bb3495f430630780d2114c0cd0030c85fa826e29376907d7af5087512a04e7d67101ed347752f15cd7d111b49a752751a9a09db5c404ef75b54c4655f3a9404d3cd36293000f50ae8bd8773462eb403ce10ec42952ad3565235266140d3542936ce8983a57db9ec38ca0cb625ba8b7aa90d8b330aed29568e7f116c476de6ad781c4e0acf570f032410763f0ade2497d3ee4303b7372b0265500e5626c7e67fd5357c6e3529114ee0dda0cc1ac5bc02555350dd84f0d72fb7dd0e730d47be8c1ee9031ea0c9affa195b7a5730113fe8ad91f71428591b9b8d56bd710f287231ab4266da7527b8bb882ac5ea47750d0ef99181f32cc0534204245f7d99c0a40f69706a5169193982eda949b1719a366a3dee73748fe946c2b5c6d901bf972b38a8f9c5092a9d1b14a31bf579e52618b92822ac1cd267d1eeb4993e3cb1ddf6ac86874b323398a70380e5c003aa8cab7a9713aeb65a98ec1b6f9c71338fd8d31ebb2437fb90a2ac40bd331bb7e748facd4816c59592e6642925d4783c70d5e5c7a6e3d857b6f295bdbf3774643499a4ac863d37baafd3ffbd71cf92f269acc97e655482b0748c27a3a14af66f50db28fe44d6603e0e82d9b7481a0335d8a83ccb409b8a9da841cdc392fc8ceb461eeb6e5c3e862ddbd89e6a8ba67532b5cebd6be30f302c97af1480fd81d8e4eab06870078fff6ab7332e1c64e3895929ec2e539a2b0634312802f9a2bf83c140d70584c738534c7f87fb2a28b9b6910f15e3e02304b5fc675fc4f744029850b800c4286b2a8d0b0ea4505df68118e556f5d21569f29263b4a0e9932630b463d291d8a2b2ae61c072796b3d8ddcd815c415e2582397bda72f21b666a306b575c1cf67d8b92b49164f1771aab36547782b17c49dedd0e12b9447f08fa235068fa0b04807bcdaba1105dd04c3924c9d395cf0318ee0e0787513beb23d6ab379c40c8f00cb015a670b290da87a1259fe6f4780678c9058f61e9860991793582870fa67458416a5678855fee77c5548ced5f1954c501ee2914e6dc815b21cc8333b28a37ce3f8e081ba12d7de9130a32b637b4d3008831030b2a14da46d4de9619eca20b62e0d5ba9fe7eac7d6ded1a9398ed54b86ce0037a6e5ffc51211c611f1fe1189b2d852d2baee9330be1fc710b110eb6f86d49289cecf68ce1633944d7dae8197c89c0b4111cfb6a63e23d402d257a9c6660bc170df0650c299266a09e08507631787f8f19f10b6d0658cc9ad18b401f37a1d9e0e8c533020420651902fd3dbec4527e5e8687fa81315e5274034c0de62531a89fe4a350eccda28c807d36c28296452251ed89ecbe38ef8f043cd84801e1158cb6b1c88c06d2cc5d053d1f32cb055be0365621ba032401962e7d1a0c48b8e8827608043b9d68f0d1c463ae77ada45e8ba8b50ee244103fd574e0826e73f01d1950fad8e1063f236293223736e060d8b785ae6f2d9c5757b341a76816c75b7d83b803e8130839c69f35db7267e5036c075403f2df8378e213c6a9ecfcb685bce2418cfd421188f621db29a9d99ac4b96398386008009100ce9904220217e925fd2674114fbb0f847deeeeade8d65f692333d93342e02ab05d2fa6c27136d33bea5822c90ad4ae4c8b68c412fdadbb05dbbffd15462d48000591342482b725072dd0800ccf539ff21e46851b430eb5fff16278bf05ba30540b6088256ccc6fe1f13226e8b14c0a9e964a7d95bb69409c878507ae409415a2e855f8c9353c1f4797c63b533321d4779ec3b782c1cbde36c7da7fa29477be5ab7bd7472f59a654cc970215529021c9ed12e6c0db2584528a2a378bca7540a618fd84b6e239764d7e75907783aea4f3ee38aefe584c2a940cd4125f2f51f824452c5179147dd93d3ae7739a8b620d61ae62768059199a12672b7e75f15df3c99f70f44982a91abe15be42a0299ef4be6ea90ca76fc77640801cbc19d52905791480b91f187906a168a589156baec000599443236e29310d8a084ba14157f92a37e6460594720f18b862328792f7551b134dfe7cd9b89ee243bc75e2698d9c549b16e0a18a6cef9211fcb55945415816af78f39235929725c1372ecc5c5a8e8249838d3f078d8a0c2c5f178aeb11c73ac20ace35e5f1ec6707a1fac2393bbe24f3f602de8be01dd5186aa465546ab54e2b80d64c4cb45dafe03cdfa872f603723d98c778be0a2d493988a5a70a4073c91eccbc4fad0cb6a6d51470628113fbe12b48fa7aa5106e8239c18548df926ebb36e040a33403343ae000437eb8d35c4bf2149efda542543525138c54905fb94fb5734ee1f3835700b9997c6bc1ad28d6c0f7364fcf1c24d2feebc9fd81d464c233ad1886c43a3953457dc689b40193179eb338108e017bfd266c7bf4303b2af7120c576eb3de281a42ca43a0cf62fabb1fdeb145e20634fefe05bda18443feff5c0cf20bbefec3d3accf0a4e10caad901db6e4ca7bbe67feae9c7157e71f7bf26a35fc1ef3cd21fc11c8eb325cf87d5183130cbe472a03f779ed53503ed4e04da0d8c82d7b2d2f113918ddd310b8ade7c857942394a53859fb373065b020a1e70107d7fb5338af9276c84d0832a0a3af9da8320e4119cc4b4081cc193d343cc8ba743a4feb73dde0aa2926a34654941610259c969080c3e2953e34ca8e416e02fb31ef55e8684886e048435760e24ed1aca734d86868890bea2f736012ca30109a19460c65aa6d858d873d35d034d6b09254582b2027224f01dd2cae2341126050c07ca739853d950ea4427824bb804f465a9f4ff7c326f7d2553dd00af4574230a9536f19a83124343c867d22c8171cb0a8e5480941f990f84c17a5d2c331f88c235c33627331fc8d0abaef0787e27901e42e4579d7f344292d8fc662daad486b54e8a83f53ee8c861a49ad6c80f7f74408c0059ac65afe92e643cc197b8c0a49e702dca7304553f690efbe903d8e906bbd24dbefe850408a443213597f69edc9c664941065698a9f0401c535e27e2419da156c30302aad884d1529ba33cc8413a38231de1e92208345867bc067a281ed5a2558c169b083f4c063b70dade86a75a171ec5f4b72585c4ae5b784465f32f2146eb46627e485e35f14859404c511f63a75bd6dc1651efed8c7a210fad7d6455c223c993f3089ecbcb38f7e095cf72e19f25caeb72094bd7f69a7f25aa708e17b40b0840c22440e98b07cb609388d965e937166ce82e9c1c6d7f8da94efbed7833400da33e4b8b2c9999f82b250f3ffcfa77aed6d7ce92a766a38cfb80ce40c123675feed69b728fc85456071c964593dd37464b771dcc8a90e96be86102fab31db9f2e74a33b0777ded467b6a37d055871299bf9815239abd9bc419d1b9bf08e67d863b200cf5fa9d07d377038c802d009996709a75e9c7e4d813a8e71c6125fc62bd01088878e046f43c71f4dad2224803e78f9abe346e28261648ea27f7a88151fad700d1f086ac27d5374812250cbaf37fd6b4651ecb7b9c9d09b1f4db360035136e63851601de6ce9d8511402b4a2c6f9cdcfc03817ae75bb573974cb13b41a80858d9bc58739eb1026820ba61f70ed406c6758de7c0e4601d3476a23011c1256bf14d9e186328b1558331b4363579289f50b1dd01d498afd0852aa9739ccd42109f6afb419943550a241fd6d86ce06673e04d1b9a84ef595171c80b1d9cb0f672a2a90d87856eaec19881e4608ff1844be581afc98e0d8fcc7da48955b3354daa0d9d00c1434636eb3efd4f4416252b04daf80da462cf3054d2a02ae47a9a0610bf00a7679664cc63f723dc40500396ba7554606553a74f4bad9dac3ce629b114066ea4a29f3895f0f2d1a29088e633bd768de0f4a65480048cf39fa9dfe579e8212e086ae96dfbbd26de288fc693abd0792d6539fe6b02fbb9d5e0719ef768c8ed9236d1a8c400862477bd862ff9f3e917f40566d062062dfb9eae41915e80568fa61f062cf7fb0eef07f58f59052ec2a3a6bc137c89623d94283a18c164420bf0cc6e55a086123fe493e9d0208b26162981ad907041e5e8883559fef6d10fdf4f55ffc3601bd945a10a80e5e4290c03656eeab4ee237d762ad26d1303f2cd4bb80f17e1cc0f22e45bbba06d837a54b00e9f75c5cc1e62eaa03d09f1118880e1cd38adf7400072c0300f8c1763163072c9f475e20e1fa35e34fef0013cb9d4a12bf55bff006b13eee8ad665910eb0200692d0013b44ec60c2bf155e4f3dff20c95bb49598cbb948497a6b32fde8f40d1cda22cc5ce54d03e62f84ad0aeb0b026d6d718a1076cf293fa4980c08dbf4e47ed8ce20f03d021b3caf05dc963f1837b1d822143484e25ac0a9137163dde9479ed595bf9e6d14e5e5d0f65b9e808df3e0c590948ad8534cfbec30ab5cbb1888f87a885567033c895f83f0ae954d1fe6dd05f0ae1cc98afeb5956a0f23bb945923ff016e18c3f3f50b94523c796c1686655f9146163136ef7fcab1f77fe721a9b30f12a0c1635a14c6fb2333295f760550ef5f8e41076c384cdcb5c2da71076ca6d8091efc67cba805d133d0fbf07ef5e61103dec64652c24c2e3255d5204ff67ce7cf883d0ade3c54dc9574f8ea17595adf0527b969783418810e2f63c0f950df17619554f1caa57eb70182241693486e76abe397f737bf1fa1370b34a015ecce02fa2d4e6e5c40d0324a07150171283a1ac1750a5728dd21d47048627d0612e2f246e1cc8865c54774db76136b044ca2c7a173d0fdc1e780d833f48cc5e21f61f8b97deb232ac5bfd44c301538265bf6ead2137bcd12b2bbedbdc996524a99524a016807c106a8061e1425c334828a681f9a5e8007e560fbf64b5fe921ba9a93324a8924633bd7f219a976509cb2634b8934a79c72ce2991a69c718628a3f4c848edb98cddf2086908183f1b1a80c8cc80d43d2958a2aa01950827845b218c114628617c28258c90053621e028b99ae3eaed31e3e9ccfd6acc678c1173775e8781f1679c99cf542a27559dbea494e9ce6ded8cdfb9e8d1dd5dda54ef3e20d815331eef6ea612679cb119eb29a7300e7f395d72587b55267b0b45984a7b3e6374ee20e46811ca54880a6418653ba1dae84019f8ad95dadadee8670e049a9f61fb40e08fdf8f2342a7188429ac23663c1e39193336d436c526824d08385bb2f880c4a11adda7fbd421d4ed9f8ea0ca0f7500e9c88139c8c5a22e582a02ea16ad86ead518bc611d42cee91082deeb30dbde7ea71e2eb181175e55fe520edbb7493e3c060a7c0062879f8154d89c6624f679f6e91427b577b4c3f6b1cf51fb18d9529b290f9b0a3cc4b6d58777e61f91a1014f7f777c786766bb9909b8962d37e46067fe04e4d38e48113ee6cb6e665ffeee4c603e7dda75a0033d0471e9d999ddcc7627d09f9f4d65209363c99542b0752ab4c74f81b6cfc6c66f5458f64e05bf619fad619f6dbb0fb5cffeb0fbe1decdf0f8baff75ff639f13dae3a73320819111507c80055aa876befd13da4361df070a9ddaee831585255a7c51f7f97df052caabba0470c18bc4a64438d1fc63a5ffc51823a5d4a2947e2ed49d1f25cb6e1907a5dc469e01b6c03f3bebbe4ecbc975250ebc2196d457044208218450c228e3c308ab8047ce45055b96fb8ad4e5dd0a2151929f8a80ba443e3df59b93bf1cf3ccf4f34fe52a55a7afed2ce35929bba57c9d9e922b9c81716c116ea1f63327f79983ccda957f392e32390e916a9debc9a6e3371bd56450cc6d6511b8103a65d35e92ed1381883f9e20824d7be468d2d8e0f353b17d4b94fa349d1176748a7fdb97c8e2088c4da4c861552d6c4208b14e6d8ef5702f0bf30e85f6668cceef17cd7824d7cbe282ac909970653c22e45290a2890f553e204aee82706581ab777cc4ff9a7da53d1b476c489dfae897bebf933ad5df479b737d7f73b139920ba2c92f3de52e13e45b52e8d053ad97f27d2c8e7f5c722c70a5dd29c93bfb57f48e33b0caaeb330b16d7b28744a7ebf0536c70f7080ed151285c4faad516def60698c129798b410bca2a0820542402954581811c00a5ed003181d4c011424002a940842ee48e123a5944ae69c3306475eb354ceb0a136996df39f973ba8bc66e91871554f7a7a7a66f07562882cabe201c6092e5860e061890d3feccc229870c26202053820292d1459b27c018952f0c4979e3398d0218888283188881ade97e0b2849725d030c111089378b58425cba0810e6519d2328434c465c8cbd6f0c4a754fab13e0aa9e8b52979cec2a86671b4c9b93d043212e42acb08242f301aeae9e9a1c19728055e8caa0c3390a245942561fc90866a8879c35012c8d3c5861e21bea868504508249f271ec319385825194240b1f0017ad2d3d3c38402d5255255015a2d92642003366b60d2c4c84f121b268af469a40cef3dcdbf0daa4fa934e79c4a6093273f3275ce39e7ca49d7ac0f3a2b225625a5943f4690ecca0b0f1b6a93d9b6256f33031908a521c404110e41b02088264f50524a19c64fd76c904e184e640d82b6740004216d19082184d189275f2a84441d60b1a2045c5a9ec0054886781b49c651d76cd24a878c2f57194365502983e8089d72ce39271a4474cd4a41a3ca868615141a58deab41882473cea924871f8c40e28b1827c8328319653c714310ab15202de10303013465944b03105db34354882a0d5790dce03d72f16359a59fa6010a7422a4640a412191b8a064850a24781823490fd697538c110b080c88a50624503a3092c402e3678b7e5061322809b2ba41932641404ad8204a5003aa10c3cb0d0c80e4bda7792530c0e10c2aaa48638723a024f1028b4005304c152449326594524a59b4048d2a2513349c490eb248428c6c49110f9d98e2cbdb7004062171242a9be84f7a7a7a9acc39e754d575624b529d5355759afa943c60195901eb4024a594495a0a0ed70fc3c0444a29ad38d235fb13a4638513eb3fe050ac40c102250b142d509076478a0a66891574ca69c539e7a4e2354b7f9873ce241e96256698a839e7a4486c60b2c3ea4a9313eccc1fea9c464ae0003f0003548c3146f9e99a8d1244a338d9504653b8c08932bc6444013a383172440b7c60f0c18729c6f04192a4eae9e9a98193ea3a51e527898768847bc10b5fec971e25fca52e911441fba5c6152ace0802ca7b1023836521e96122043402c986da64b64dfec04063a831d48003920562c8078b53972c5db47441eac285062c35ece0d9442ab11b54e99ab582258bce0db44c1a28a594d2196a28baa68c524a292502aa94524a9982a22335a63803084a746204020f5025a51dd098203002346511086e90e10a0dac691952c2080ebc68d103f760f4f3c43f70a4e4dd8ba8e3c5bf20879e24678451444608b0f0d9509bccb6b1500ff5f4f4dcb02c54d7092952586887a49432496f510b6800467619012a40059c243983891624698203142aa825a5945390ba66b9583b53bc589609aab891313e4e392707df82dfb090d7c4bfba6fcbba0f153fcbb2c1ff9a688deafcf84d64e54aa7b68fdf2aeda3e9e3f7d1c6c9c732ae6bc62df65897fd74bffebadcb1cf858afd725b7d62d95f977fd6ad95a5cec7b08f198f4fcb0ac6313f7b9dc6baaf858acd391fc330ac5e19372113d5f8d6e4e0b7e72be0c4b5620697f8d692cd4d0c93430d8ed0c04bd5ea16cde04bdd53d1eaa75a6ff973111729758bb8f8a0aa5bb4a58a8a82df60f3b3a0e0371dd8a4266524edb8b02830220a27768af8315f7e7f0aee6373ba36eccbe2704a9c8d129bbf3524d619a40139c8410eea7ce6a2600fb928194ec6f9fc0ef67fa33dfc8fc2741f7fe9356e77338e9fbecc782eeb7948ac56e9fb6189731edfd3d353adf7cead2d896076516787d35e3fc6d9784dbf04c1f6ad910a403ac5efcfefa353303e3394cafcb746db0e9d11b86c8cf10ca3d029affd29748aabfdecd3809e0b746a8b66d0fd714f6a8bb608fa888af8f82742b7e9d40702ce0caa7e10c250fd44a8cd1dcd370fdbf7b51b844e3d29b5550221dd53d2e127a3fc46fe97feead292ed8845ff883f11ff39bfc84ea99b59fa3eacce87773310904f7f663b1ff2e98c8ff8f3e3cf223ba5bf28b73b93db9dcbb1d2922d8b00d78bbdd96166f687709dc1de87bff5d973a5dccc3e9122ae2762bd3f9122b2ce077cfa44fcad9fdccc7633580701ebfd7d58efddccfeced5f9a00f9f08ec66b643b557fadfa15f12629bb966aef913b07e3e7d22f0ad9f00fdf9b323e2a528f375baf4b4b4b914174c12def7cf224c12e8bdbb3049babbbbb73d86696c0dc3b6ee0e9b6153201c7a7fedcd38962f896db6db306cfcbb2f85e82fe4170e6394d9249cb07b043153e862427757e2edd44aa10bcb12c3dda19c130c0986b711304a0c6c913e9d1a21331e97434c8a812dd4ad3642c58b035a250c6c29d12de016b8056e815e402fa017d00b084504aa1342b1c197dca33e948d17a5558a321beb58d6012bc5fa4b190f04aab38b2aaf692130c75847eb80d91e55ced883a8ea225475717cf165c9ca7a10f1de9be59a2f5a51fbf926aab86663157cb3c36b52f18a1d1b9cd2ca78948e2c134c97524a5914032f5546547b4df4346a0632454842596494320649d153aa80376c57dd222cb29061b3ea16619184822dab5b84451725b658b7080b1cec2001ad0c9ca8eeb383ba455aa65458b748064cd4ef6da8b860af75b4aa46f509265a9eb001885ac4454f2540dda22d4820f3c4cf939aa3ee133f43950b2c2a228c3af53150e5ff5a95a553cc4595de61471a017fd1d1517555a7b6e8e8a7f27b163fead41665a1a53252e587516c9f7fad5271cfb7f10c89751ffed7af874c58181bb626a253db4591cfaaf6384b7b0c4311fbf2dda81465fb5cb5353ce84a1aa6f0828bbaeb7ddc7ba36592f8999f7bb8faf1139f2980582054190695ffc9de10da84c0279bb3358afcc845f1f91bf9dc59ba8619c86f78a755d697ed7395eaaa6be5852ff5f3a3a7bdc3d6e3374ee43790c86bf85d55f74bfd5a8546ddff5c55f92994264cc4d635f84d127ca2535f3caafef1088771204ec4c1f1c7e9deb94cb07d382ac78911bbc18575f74f0335506da2060aa37f5032a82dfbc980321b32a00ca86644195006f46591802c92f641a7dacab296916585656419d5928f656419757179807db4b11f0cfba95895eef686de32e982188e0d944285ca142a54beb8a28fdfd0efee3c8862f3b18e2a7c7a633404c2a1cd11408e9f1c3e39806a0ea21c3e3980a41817ed1bfa6d0b6b3e885d9a73f29b83edd2b3867e49e9483246e62adcee1e21ec869c7f376ce736e3811036f4eef686605c4bf3c555f5bf5000a0332afe819fb90755a316003a7486c8e9de7892e477226c1da0ca53d9a83c153d62fb56059f71f0ab54aa136855792a9b139caa3c15ed2e72d49effa564fb964867845ec938f857a71ea2cfe648e8d2ff6392bdf18f3e9d07526cf17f2037a18e20a803880419936c8dff92ea1ea8ee503e027180e8b337bcfb80c42118e79c7042ca33c2e9ce5598d91dc6e87e75e460d42154755ca93a0d391d401e23a743a8bd0825f4ca0fbdfbf6f8e90c324ac952ce266c40023b66e62db2943209addc03c695998171026b9329da22a866758bc040027ab1791a658cb2c80b3664612286166049410976a21135c608e96b418bb4a08272a48dd62dd262a87e1b11d7fa4d7f0ba61cc9b0c34475451a3ba92b868c763a9063055a78b1e34206c40ba06095e14698af482a0a2692765c6016c252980aac1f10ac81fa67db86066a202657e4309fc566c07ea6f4776354bf21b0ca07127daa7c08298431c2d83980a2c36f2ec74fed8f397c72d8c0385a72a49c03c8a3333f0958881fb96566eeb3a954a84c9132858a0ca20755b7b21f65c6d31da10741b8000f8a012578d96256757362389a4dd964fe14bd742a66734cef7f9938aed18ccd09c2ab98aff1fe26986a703538afdb1a5759c623e64d7fd5307120b4e7a61a9c3471510bc702575357427b276e6b34da98182e76d91babbd31c656e485a86e8df90bc30060aa31ff5935266627e639e389798dfbba6a1f8da2964eb507bf378db3f130e6753a1a55e994ccfb47a278c5fa56e52ba9c376fab8da9cae3e8001a050dbb6d0cea389d4a9d3bb8d13b7b50607ab8de7ac868d0e8857b77a9930d8a998a71be3d598d55fcedcee11668607ac351ecafc89e38ababe03ae398b892bbf69a1dda1a6ee4371f7fda9fbbc59653a4762623bbdccfbaa53357e1efdb607d963489d9ad5bf85fc661e798dc75aa38bab79e437dba67954fd6197edd4fd888979d39fde015c776f98624edd8755df0ac30981595c7d32f5f3161202ebe7ab2f62a9feb485847095ff3425f8a3e6cac614ecf0dba109fcb2ebf14129a2505ef75c0de116d7cb2f2ae34994f36188ea6733dffa0da3247c8dff1fa4b19b894fbdf63aca4210adf26322ecf0910290168e003901420a1116a34e21750a86eb1297bebbafabf2b3ce4ca0694fa6f3362fb6efabc71742c256fa2470855d77717cf2b947f72052af1ea5bfbaafabfc1ea58ee66381ebc755960154fbe7fc9f3c16a780bde1b30bc25e7bfeeded1c61e04b2e84f68854d8d9ec0dff21b6ef9fa653bdbcb2a45c11834adda230866adda2309ec05982d71901d5984d855e851f54f85789838994962ccbb29e862bb2edcd19d96d55f5c4059fab071287ad6fb2efc752a58f923d642cceeb7a12b65edd0cf63fe45fdd3ef6fe452a731f568754ab961ee32efa9b5945aac56d563deb2a28a533222121f5c71ebcc77a2eb6b5328551b5fe2dab542a21b5d7bca86da44e3a3263fb7ad5ab4ec18fec43bfb7b7b74b19095f2debe9c3bf2e3691108327a58c02457630cba3606f619b2aed5e0f3be3a15fb22cebb2fe82b134cbb22ccba252aebc7c597531f29ac6d2352b2f5f565d4ede53ea4c86029c506d2a3333046253f95b0540d59919ce40c8afc20a9e03e4455c8eaa03e994b343ee142ed0292681097c82dfd0f72fa153f3fd7b6c0ebf3f8fd521df7fc7e6f4fb151cbfa1dd0a5ec33a649781c5e13ff6c6b7563218b6207bb3abc2e6cc54ff15360756777ea1fa9a51fdbb53616f6cd9f8db8134b7029719d9fd9899bfb50478c576c28e4d52c13f54854de95542a13e0a147b2eb9b4ba51108551511fd8a078db288858d5fe0f3ac55114e1c39cfab0ca617ce45a9a49976e7ee3d9d8e0e834110fdc2d931ba1bd1136ac63f45f2f6eb4000af5feac7ae15a9a8f4768af5f84f6fa7d0bc7960b3b89220442f5dbd5c74e6ab3cf0efee928a00cd5fe21cd4792b841c9c7d910aea09c66fde70eafd9eae65d125b37d1f6767c162c331efef2877f9c5978eff01b147623d61e4e3fc5d170e01ff0233be914ecb6774ea6bdd3936d1a7d6566eed89dbd8d31c6c810eedef881bb5c77f7e9dec418e3945ca59d8a0d2ba4cc198faf3f1d12dd5d4ed1be2bf806634799d3858c7dc6b534123a776ed1ac87064c5be982df8303115e1726811a504c463a935a1002f76283a95b0446900bc03872c42653b7e88bd515db56b7e88ba32f8cb8246df59330f5349151b9a912b00586222fb2d4fe886262727777282380fecd06b561509b4ab1f1cb50a95c2d62644a0c4da098c0491058201144a9a88b24b597088a30a4f082892b513c21c30e1f1143f6415da64125406dab09a4d8522b3958abab0657e84093302ad5a0cb0df38827d691200944857e62123ed3072024545266400288269020910405d0114445492e58b29304105b8f8c52c6566d58dd222d9680405b8dba455a447182ed54b7480b2ca468f1050b3653dda22d8cd82c71d14eedbeb7a1e8def4c3ee8390bd8bb00bdd4dc3b57b03bdbbbb1787bb62dbff2877aa77f9059595d8f61bc2666666761bb900861ec4ccccccfe1b218cd03ba36b69beada30b29fd767f6f302f6f113d850ae3167777ffc3aabb94db098115764362ed34e4c36e8bcdff83d5b22c0b8808d57a6841082d68b97b07e1bb654dab931dce3e84b18948b1ed255309a17e43a25b56a988b56bd538bb651cd64b9b2a7f3999f12c20462b46696d8d3f392a2544619b03a1a9b08b37c485dbbbddb7bb1b61b75eddef5ed9f943d8452443257c08a2f9fc498d4054a8d84fee9a405015fba3df6c051f1054958fd444fd946e1baa899cc48c877693f3cf3898c7b8aed029c94db9550c139aafc2b48448220148b7427b4da73299ff5035fedb30acfb62baa1f6e2c698bfba8f5eb3859719cf6c2a9d1af21bde89cf42f1a3c470b07d2c6423866dfed74f6afc9a88a9ec8d189aa6699aa66951b01070e25f1b87b597bd89dbdacb607b198c46ad9a755bc6261ccc67fe52ecbed26f7bb307918b6984c887efdc10aefe90f3bffabb6dfa759c5208d3303030df913e080ef04a3bba37e24f20b6f95c359be654c8c0e6ccfe6851cb7a9b107030ac3dec4fdcd61e8665cf2dbfdf39ae5ab7b5672d9110ae19f75915eb240957c73ee7ffe8f91f733f73f7938391d761e433b394ad546a6eee17b81dbacee678f5694d482d3a7f508b5a94bef593fb41bf1f524b8775708d3f029d14ce5e96dd49098410420821a49fe781804343318f12b920a594324608a394524a29a5944be47c29e54b29a594524a29a59c52165d10429bbabb0c3b6c6536a77d7d1dc2860db9c398c86c4e8dbd91c0d6c011ba063e1441040630e0c68d0214a0c20004a0c2d8f9d81b50c7868d1f36712dcd175555fe05fbe64811becf49bbab2f72bd2a17fbb5a9920c2b96bb474333fff395af3687abfcf9de25a8534bdd0cf84295bf0b935409c204a1f2370d4d67d3e8081ef1a3ee3e2a61cfcad7bf9b990fdff3b1bc748d7ce96854f925acf39510aeb0cb46df7a6b6fda47f6932affe3aaecbe16929dc4fc8bd5037daaaf7c62106b4fbefcf6f11b5f798d7c146adb563e15e55547558714cb7828cbb7fef3950d7c69f9cac5d81c7ff93ec6a64a2fdf6d20351b03a8f4bf01c8d7b8b9be1ec5411fc646a59f6995be73957295be659550a4bae5cd653c1eb3121cf0d5f22eaa666740171952506dc2daa3ffed00000ad654b8445691192ab9adbd0580a932f366d084b58772b94e8551920936842d7e31c61f719d39c638e38cf19b4747c8ddf1ff07656ec66c6ff0c7e6667af4c78fdd0ff9fd5be7f7c79399f7467ff267bf64391b2362db9cae504619fb174e22ae3d994c9a767a4dd3344d7bd3a986a69d4c9aa6699a4933993493b671328f327135994c26ed61d5344dd334eda4994ca793763a994ca6d3c9643a99349366d238faa6983769da6f9bf6db763a6ddbe9b49d62b49366d234edaf0ceb8c4783980cf775ddfca351a77cb597e16ac4d838d530c998b6ca74f09cc97460facb74d234eda469264d93795865ba8f08571b35b816aa51c3a499344d339db493c9a4699aa6fdcc7834ed64ea18d3c7c89c64bab86acfff64ea7e689ff6a78c87f6a6bf34ce015c2fc634d3673c272e9ab8ed546bbff1c8b40d34fca15cb95242e9368ed8babf9fd7a709ee1f21e458e00a3b8ad9286263a32bf276c708b3ffc3b5216c59c07c24aaf13355fd2a7f737afe765ff6db03e663f691fbba667f4d8e055a83380ad5fae684f410ae73fe257f3df0208a530836f9032e91e4aa7cd74cebf1a59494d24e3efd205e69b75c35ae8178daf530ef01f61f0c4c13dbf530bfff03e682e1240eae86e9e6fcf9db9e942dcbb26e9b39ca87de2f6cdb5c6d0434758bbcacea51ddbab58c2114d6c802bb37588b0d2036b7c1a6d3a999ded1a9affef127fdc8f5b5d785d19ffff57713abd3f34b9903609e3ecc5ea73122b6fdef5907d7d2c2642514a92c702dfd3597360cc6f55fdc578d2bfd1086f9f992fb01f3f42f8b0ba2d5f9309462305ca40bb3b0c0b5d4d1f6c8586dee456424557f9abee11d9f52fd75b254ff115aa67e4ba43367d71fb91ff287f0673dfd617d7cff07e1c6e6ccf7bfa6351f725c3d33617e8c3f2d1ef3e34fda1e8dcc13aff5a6bc116686478d9dc3b00c0ada87bad588514c6affe7379ce435fdbc3a1a8871f477ac05b647bd8158072f8e7eda7da86d6f74bbb314b5dd7de3bd6122e727f606768a534042f7cb34b68f8988d8ca15aeb273366a8fe16355c20ef56d5fd7ab033a188971f85fddb7811aff6ba146af719e181941753e84cf447ee3cf48ac631747e9b5ee436d9e7544d54b8f3152ed546c1dbcaff1667722d0d6f80dfbf507aa5f1d27ed8d34b606924017c76d98af4815c216274d7ec90fc4eba155d8b111ff0579dd613e17fc61f5ee23c2df1a5b2758af9e3e863b39961ae3aa1af3f9518d79d65263624ecf5a62b88f57311c775b903dfd663ca70ee5452ced4555f5cfe288e9745222c8f431ef45552946e317ec93913ed53f1a88c570d10b1c633321b577e5f48e02c0665a6a79f5f4114bf680982e66e9e2151b23d87e0ce1ea5edab33182edc7e987708d791b46f817f7d29e1b81c98c841803658b89e950ed91b17dbf6a7687310f6b4cf711a9b14a7b4e3307ccca58da8be93e20bcaa31bfb517d3a1a66c318927d24cda9cd389e33abb30c1643a9de651a74cef0f73994e27d3e9d4059a7ba8b4acd844390d15a219012000a000c315000028100a06440291683c9083bc1f14000c759e4a5c46960ca38120476110c3301003300003200c6080420428a514464a4100cbc37fba7ca2ca6f84e4c63c99037932843c70fe9087c0ab3808e1272d3e65ebdc459305d20078086e6e041f44d09ff21b3df62c7a31038e2263cfd8050e855c828a66b62c926de820b512154467b33ebc2307ea59eb509032c5bd3789ed3b5c22067a5d21c4bb065cad1f16b29a487a0be1585a3671ac99b311a505935f1c8dd2a10224aaa8418399f6c532c264755368815062d2e780adbd8161336a5930063a03eeb4abd052ca52233be04319c44f20012e515f29ca11fa8a6c0fa1cf243e19c7b969ae206c7f213e6fd7d454012fb6c2035b39406fe536f7134fb50ef11a9da9cd7c2b86b2534771550c1afa40ba47afe28d59d45cb496eb033cdeb0282cbbd55da617d610e40d0d15525e9578194b422ea2c41ea7b2cf404b69a5a49c0eb204490e3ffeebd75808b3b1a7b56d7fa1477b9ef7289a78b9e20aa773f6b88709a861b257c1d0f5c11c9fb2f293eaab05506dc5a6e4d64f21e1051774b96666dea7742c0641957eba83e97f844c7495313964f2a86cae71e728bc59c60bb5f3d6105008c2b5d80dc3314a1c336ff036909e8d089af518bd20d31a60ac44931c51bc7ea920a1db90d772b6ac6fddfc5414f647a6c43778d0be5b7761cbb48679c061ec467767e2b3cad5aa4608768ca6cc60cc19328634daf09dad47daf93b94a4e268e3c9cc7f7579baa2cd91626cccdf872e924838c73060e33a1aa10d5cccc15abf6a03be0b3a93352a069641498f74ea1ca611c6fe2b318d03e99117b600114f07c53e9716ba310d3f2fa88c939b827b4fcbf05de9651c1e2c3b81a00e44fa6b90e19ef46fe85a45f2479abd378cd29b93725294d9e7b99ba46c5360a294bdb22876d74377ea0474383efdad0ee3e28fa0488ea41dca8ba8ed1667708da7db734cc265851b4c757a5287ca9a1ed10543f26aa9e4b53a5598091569d3d802977d56a80dee4b1626f427f1e8471effcf38be970cc9b2c13329251fb7b3c23df7045c195398c28c1b0e44ba6505ab6e2198fffbfcef931576947510610d34c86a904db670e05e22db6ff9a8dcb8f4634c33c131890c15035be6e3ce09212b7b5158e0a6ec212e440eeea6178cfc77297eb47006e1927efc47b0a4df64711fc8cfc35676a9d34cb95082108ff854452842859864c0c53a0d7fabb4ddaec011c1b0943aafd6a23398c825b6184d119607696255f05bc08fcfa9ef7cc1bc21e8ea5af8c6134bcde9ac6e76435765b6f9726bc0adfc28505c36b5387c6de134e704ad17c7bf99511505506a99af811c31a3aeb711a7ec362187c0690b688ff18ca7ea47a93a00bc267d86bb44e6d9a07d0d33bcfca321d7a48863b17825710d2dc774fe289cc5dd105d5632f1c9c4621b0a028e4ee134dd2f9f385f8a381203f10a29d9b6a41a1738ee37001846aef544bac0cdbe1b33ae2a50d641dfcd55c5c1ffe2016b88cb30c1aa76dec68a089b7e17909fcde5674b5fd21114805fcb49c26dcfa00e960e94f1be4dbfb4d03efaa43377f23a80e825356d85091416c012d5d38d4bf5a544e75504c07d376b9a983e13f21e585ab86650d24d01f1dd667cdfd6f94ab1a891914321dc86bf3f3feaae2214c868531597e254d3d3f31faac3f3372995c07cf1177edb53a029e5a79238fa7fafad2d42099563f529e535c232475adfac70abfe862d450989836d699670dd415e18761d38b92cfd5c25b6582928812d3a5fdc3c165481bc449db362782ecbc7ac9a2b14b6dfebc01772243eb1909ffb2b52ec92f47c0c9d7dcca239a4ea42d5841a52995c7612568e5e5f2c70b394c757026b566b2f180dccdf5ae9f44972d63e2ce71f0b46c352171e652b9569909ae4574be2e9be33111f47747df2ae0fdaa7a8cb8fa3763d429cf35eedafb7bf5aa167cbaa3e0e1214b225cff29951efd831f6ae62116dfb31b7315428500a0a201d250d5471010539278201f3b769276197efab18d2e6225c413199a5354a9403c92da594a31485da6e9cba170abdc22ba2c74541700a53dc0c63875d5f643eb5080fc1fda1963acaf731e839d79fae02577f7555e47d853b8d0230744ad955aa044b592b9d37e933516a4dc0fc7083022190e1180a630e80e26b237a7eba254da0fd34aa648185ba06a55058b4f060f8162bb48e1e38007b99e84bffac302726c3f95e1389d5d638be820500df6b8899dac675badf1a8f5e4c0f2a03f6e45230f63ae28816c53d20601731ec50639d8d9ac49a3e0b8dc3a689f11c4fafa636bb7a8319dfd16ddfd9c8247e5ec703373f39caf031275b6d82c5ac2a556e1d4e7c50766052eefa51fb303497c9265e26473bd7facbc2404874836c7a37d974cb26f0f612c7a2923e0250e2ac149f3c685f36809d7f64d0c30c54c23780068780fedb2e8a1bdec694f1f61931179489fa272a64bfd875d14a28b7064b0b676bf9c8ff26f9dd7157e20a6da50d14200436b30a2e8b6eeb44a3c35ddd06c7a7ce66f0eff2f26fb8fa4e4c54a008ff3faee4713a310958af7a7420d01fd532886862ea24d5bf17043a13d05a417586117dec5659f61b6655f610622a6a477ae0f1bc7fcffa990fb75c08a77deff51b4e51146f283e02ee19f3896e45a8c5274968bb50ba2d85ae78bd11c5c79d42aaa5556cffbe6182aed2ab2838001303e257dd4ed8ffb85948ff96ef6a75396fff0e9b924c4aa4b733f0bd70848ba5e8f789b6108d5744fe7d10cded4fe862ba24a53cacffe1fb501c593d948395c000480b8d8cb69a96076c56d328eab521c04ce07f0433a76884adc801cac13abbd78d673ab51e9382a272c56751daa3db0daa74a11244eb7544cfe75a28742300f73e8f9e9ed0de022991f91a450e32f7ae12a698ef1f1fabac44dcca59cbdf102541b66c9ff81ea760e00d0c2b80d2f98f60d8a35db714ef69eafdeee541841b6ab7bf834ab9008d631084c0d93f6a628ae8348d9dc5983d2bd53f6638d30b4fa7969030949da0c02abc6fac7aa0ab73ead45c2f055ec741840b0435a10ee299e3681b9e476d8bb08b7f85e16100ab7848218e29c0d0681ecb7d9802d531cb4e5cde241751153007f1bb6bb38ae1cd363ebfbc524dad1b8100dca74f1ae332f7f5f48807cb26d05c2609de9fc52c5b3bb6497a39865ced493fd2d75db6108d8fd427598cf85e1c7767f652bea04040bdb10aab687e10058d33cf3e3edd0a4bb28fb7f00c0b4b3b63881c0fe360513868de976d22ddd18ed9f48ff1ef995e3e023ad201d0e7e8b6bbff1a75b874f36c6cb5fe228ae37d0dcecb2ce181e0cd297734c09ae80f0b681cdf0f01c1fc91a6a34d2877e883390ba7f5cdcc966dac7bf13ce9e781e668ce40d03e4154029339720b1da130cb061db2535e0330d49d2467c11715337471a7a44c75b415e9b98407c1255037fba51958c8c7ade5fb5a71166360f5f74cbb5c5a4369349445812d724c90046d7dd9e5db089288301bb306588938a9685682b1d191c91a2128854841139dfe04bd42942d24324dd998fa8685f0956f5d4b5bc50c83b57555838c8331e3fad17c39778a41dd034afc366c8664871e8671abf23a7602dbc7ba2ae178399f41cbad6079e271f2cef60ad81d4913319b002190c744836628d3f4f6b8aa9439a31c9fc52b020003244f91b2b283a50608f7232f6aef498c26f094cf9ce503f2dfbd23d48fd43534e9b964e315e32f3e09730c680079bd5f0b07a1fb58556f7b0fb817f41236570df48498509e1eb5b371dbc58665427ae9b1c17fa0a266cada38df2f334d541b646d588e003e5797302a79428d9beed8b4cb331861f9c5937f01a1cfccd264993fbf5b8c4511827ef2570a389a7c0a713f5e7b4ff1d65a9e6ee9f7717a248fe9fad98251e4d78ea380998b3f60457dcb251771ac41b62cdb6d8179dcc603768541dd5c60679fce3e4ae58739ceee1d0d0ff82ddde747b57afdf2dccebbea9a16327be450a0d23b03909511d7b9ff8a7a152e588236aef6fbe989d1a0a37dcdc071e166a8fc505a604627ea94155bf2bf80bcf0f33c6ddf08ef73b1fc60e7f47ca2a00add07815b0dda8c11a90db3242cf8fac4b4e4191b087321a91bf98bb3cf1bfac299e3c7aa42841c2f5cc6697711b67e4022936e182846d127d09c808f47f879619f14c052fac4a207b05cff61d226e37e0b4b3fb46a4e7812476c03748e0a575929ffd6e807326efce450b097b7bc9370dd8adc4e31028bbdcc651647de8d80047cbc441a01a93a808e65a8d31028c2e9de4087b89335dc55aeb7f73249ee61eb400f77ef7e29b1f2692e61cdff7fb566268be88afe891fea828fbc487d31298dc069fd61c688cf8b3350b90ad009bd397435ae809d48cd607a340169a6386178073e75e353315b818e3f572f0408f3b462d2d9fa6794982d3fb374330868afe69180836f8171097589921cdf3271b3db48f96ae409ea7dc97fa2fe556f0d4ec47a8789faad2b1eb3aa8b79453f95c9aade23581e41a7ec75f3d5e5af041a11a8ef41370aac765e137a3b0ae61a4108a3d518afbb8038b76848edb09de6f4a80e37b772800703e4ff7fc623addf7d972d07f6f78167663695593922f5b8172694ad23486d59a8b207b792b1c7a5ad84bc2b7cd8f6a5a1afb40de5989de72b4b5fa39702830283823fde8dd5710d947398677f73035da2d91f5a98b2e4f17fc6c411a6abd2909e9e75f465b4c059a20b4396505f68452102adf554acd04b7501224ed0c2ff53de1c5834cd50b038118f4004fb8ba37da45c99b305aedeac586f18e6b101d3a8175f5b71999494e679696fd13189cb85520f5d05d859faa3557155165c014c032a4dd3a2dc0548ab0aff0cebb6b93f12de164167d932f3f0c20fed67c5a6f9324f45ba3ea0874dfc53f748c61993e4f0a429c6f6a4bc346120913d68d8ef899652bc0aaabea1a319d2d2a2753a893bd7f5d555594a3d8d979b279a3d0090bcbe507d9b1a413f1b3d6619d166ee3ae17f7f4dd5e5df62e6907d7540feaf3cae22b030e908e898bf4f3dfc39801503a49e89171c1d38c13519e55111abde6278f4d51c1410adf281bf6e2c121e7f31d0ca0bab1e6c9085dfb7c0a06b075a71aff227d06350ec7090bf8265f0bf119ce2d95bb1bd0e543a79abb22d2bb2ab9b01680d5930f5c62e81b5663fc55bdd73acece910683d732796c210873c9c14a9079c517cec5f808166df1b0d769e49ffa21426d8604b125591eed2af2c2ef79324dc0523e33c813af0ae1ff8dbc4f272dddd1d1f3fc9dfa13d17c4e2f855ba6ff8ca0ca7324ac6b4d800b856826d84a3b9bfb0e56da89a7d616a3a8f9317119c3c750d2280f0d2f0831771b26ad8458ed3b0b2c2b279bebcdc356f9e282f34fcd4a2955c41882e2592a7831b0ccbdcea9339883dcda760221fe6d228e2826535e2bd70f947fa32063eae507b8ee60cc11deecd0eed64ee140886ebd23ce0f2b6b38ee3fa64d766cbe9ced249ae5302c2a6020b7be0b79f87eaadb313341bfcb17451490fe7d04a76a00e964dd03a1d165eded0258bce082326466e92e9e82dd974a98f1b863977726affa0103146cf06b8c054e22ae31397ea87e1db669fdbbc0d5ca6c78eb83102dd4aa5b6e32bf68004207b881eece5ce562907e68d61df7f169658df84c85b77ccb3ed41c4f3616549e14d9f112d251762bdb89a2e9822b7e34cd3aa4b86d4a51b37a25cbb24b8f2d2e3531a17794f7aed290e7a56359fd3e7dc2134ed3087436070b32913291420d7809ae0aac1ad2c01d75ab75bd3ad681abcdb04227bda0364db164e2d940d86a560b05916fc166ff512ae0d11eb00c9ce341e2c1e59c3894acc71b24ddb6be813aab7be882910d96c0316ec66700bb21aa4dccc903edc988945e992c2b2618923792a90718023671448666831e46ed6d8304677ddc75459fdbba43d191416a9ce2870e2c2bf11ec58c9a87c8ba6063ed378beba80073591f0a7f24f48374f1e3d6b29208a451960b1344cd55cf521556ad73fdd63be1b264cc51491c028cfb48a3a002738a030e1c52dd14537262dceada0b9bc2c3a0bf4316597e722c1f5cbe79ed012c34449d02b026f7ab091b4c36df468b7bedd9ffd05563b55e47b51bd50583b8b495d9633fbe58cf297ce76a1b4a83f2ab27f318364c68b5569e2eb0309c48b3f6c30a7a6cbc9caf5dcb5e628cf0cfc32e1fa55c4c674181331e16796c3b1fb100a8697c49c81e1797d60c6d139a6bf0e8897ce261dc936f8ca2d1828f299aade4d7ed714600ad4a040a5ad744f36add73ee3735ac07f5e18d2a361cf4082b8153146798daec82ab487367ace6f4bd01bb0fd126b56615ddc5ba30ee68e66f191ad71e310cbb8dd03ae3878f9bd8c5a0dfcb9c542b9359024c3d714c9524b3674f0323794c0ffe255568731d6538a5758870b85343b8b165acec49913d6e70414ae7a5fc735d33541d9e1458c9c64e74128ddacc2b39dce349dec64bece0266e5f02fa841c753218b83197e347939a588d5bf2e28ccd63d6607f5b0c160b5ccc29f0b68e949ba82b1a6e2eae6420e7cdd0f01c77a305ce32a9d48341e667b5ba38177b89eb68020fe4b562a3fac28032a43bc08eb15a759d6598c308e6a8a024e90663a792324c25e9e07fe44c8e37ba495227c694f2f6be8980f197f75f926b3e031efccaf7979ada67e391abc91c8f9584adb9fcd7c65ff1105a5c32a66f831fc459ea5cc3bc312b08afc88f4e30ac171a5e935e01c558d5d7f7d62b2a46af0789074f095a3a3794623420828c519c39470324bb54d5d56a630a9e5c030e85c343cd79460808a9a6b45a3d9ad3343e8fdd77c95e58088b36250b391fb7e4215cabb1b8924cc35776d378aeb7f26ee98ce5676513e50fb1bb0054622fe61a80c05b0e2b95f69de2270e40f870d6e2fc131150458ad704a6f37ba0924d34e5058cbe9a80a1057929dd88800a3cc4936c00444d97f442f68a0357f941d8450b61ef8fb318593a302948d3c2769a32de54d9fec30d6ecb595b610473e541e819787da1a77cee793c2d721c7769881b8c3c450a29b6819d64ef201b990014fda0f52dc9dc58311902ce8b6b437f3acf40161f3344290198a73125b8c1228f9ebe8f2406165e10ba6440c7724fd86c519466dc789ba938e81a1139685361c5dcca8dba219b19868687bc10ef33a3ccab0568523d76ffb1b5de0aee0741f87baede2a07d0badadba92ab1289528c8f3dd3be1fb97beb6c58f7dcc506e79b9dce99595a26a2874b45f3017bd007671443098ed3006dc1921bb91e412f5a89e33ae88c530ee2bfbf134a73ca5b9a3ef01bd0bc2ba267d833e96716e1ee7384955e57ccaf55751d1e67d56fc6ac1d1d9eb40c61d5a9cb4f3c8228b783e3b1d3e688eecba4c97bc674f703867df35134aba15b102556aed087d13583c287280287c1075f41a5d5c837a9c30c4d1b8d035ec5446a4f1c462b35ac96ecd7a5e8aecc4747946d5142b4bac99b3a77fd1e0c5aaf54bb13cf4688d670ab11ea105e2c9f57b5510599ff816c21f9184eb062749bbcd64503083ad851de0a2752dc996dd50e38ae8a110e1917d9c5df7eaac6c8f604bc88a7645a72ce716d8edb5375afbb857b81007c928af67e90c193d77464112e1cf702b54f839d6275a8cbf70c6c6b9da761b4dd26b7b12b4866707f676c7ce41c19ee6613dbe89ae06262c4f7ec4460bc2895882a839b47c3863b3f46e501e8f46b5b465dc613522692ffb552263863a6db789a40f64c40bc5777c09e34fe04a184ed9edacc088dc123de2490a1a1496c77e8f7884f106cfd6660a65c21a7237059e4e757439948d864224a3821d89bcd00eb40d3cfad6c66b7a949f85f0afb6d9f2ef4a75741768f3a969e534ef60af242d97a6d0fe809c88733b10883181095881e7c6a248a0ab7b1c99e664b56ac31ad8788d4068ccd2b1c2b87d3d50b8aecf968b253811c2b5c6c4c0c601fa04e26f2c286921bfd0e8b3d21ad51c212458ed961f4c5feaa7f2baa31a96e4bd573360a440ee4d902ee7e83edeaff67d81b95ffd3fef1d3290e0a51651353222cc93f3e2da42b7cff8d35cee0f7bac3d7ccca015ccc50a7222b6dae3f12066f4fb28c76bcfe53fa3e9830c524679e6a346db1d30a58b4666a6f36c5fd8df792f42212e7632edcccea0e19a32d040295f2a43e244f404bf1d46bd3b7bd2bc7ec5c7500dad1eed408febb20950f9cffb048879ed7c1d9fde0a5cdfa172f8f1216788432b29e0a1fc2ae3ffb3f57e24eaf1a6baffc7e17e5824b6c3352ac949d03f2422cfbf99de109124807aee8f4390c760d107d802be880966c91d34284eb811de80d2ec087cf732cfaafe9c8c1cf32532368055f980e7ce83769e667407351f4a7910615cd030d9f42f77f1294c3a6729ad143b91b7f364ccb1db55081ed572132364450e04e263151f54122b212803d70cc41600934de21a8e23800e5f29919b50aee5641a6883d07182eb891428e3af5146f7b555b5789212e1ec061eb5b42addb1de1b57bb8438631f33db60d3f218d19880b37c1ab859599151f972dab7dbd1cfda754582b0ab6c71c470a7bc62625bb50d369046c842acc8bc84cb1c50e6e1fe45d1e445c7728674dae29ea8da686cf54cc0ec4ea717b8fcfff6716e951f9ee31f276adc312375b8a223230f0835715abea884bc8f8be9104ba0b9752c8724304e18f9fab0668e252c5b44fa933854e95e86b22bb3c52d4dbecf2f3775ab4e5c3c733debf9babba3cc85dc6f61aba44d01729dc9a40f2ae8689acda3f024ad6b97bd7691d61c724dc012e7234f17e23c3a07bd03ac690e1168de1d64634ebec018c332d5aa513df7f5b63110b7383e16044ef258d04ce8f4f7750c834126bd170d0d141b55fec5b9b2c176606d3f50f6b123aec6bc17b9c5e504584f28dfe41d8748d839a5c3279daa15843ebf52ce3c8f3f07a5888f4f06ffea6bf69aef83cc74b2dc152c2d869845301d44f1bfc46f7705cf161a52a97e03106ad503e49d945171669c5ee655f6a344fc9e2cb0c87473e59e5c22964ff718777d53b134e7a0d2a13c37e6a1f00dc3385f81ea9dd2c3cd16f24edb4e3c5647e7f3e2a3077bcf92d79b70078e9a404aa0ee583f632353819c8503789d1850ab51ce01ba76b4842497a5ce5ee4f56bec81f1ebd3cfe3db70719f205cafc32eb3a215fccda04c38fb65b7d81e8545782abb94b61d65ad96026ebec47371f3ecc0ec62905f9d28d80eaf587beb23682cd245d7bac432d39e3baf7975ced5b1ee689515bc066377331cc1030077f349331829ee9017b5af39e2ea9503409b15cccd8dcaab5c2b3f3216d3a40bf32cf1e304b42b693b06d6743954ba65e6afa8a35451b3f3c47bf50f839427d049f1d2d314985e796a8e539bb7ea12f5dd47c6d6db1f44d124b1856bbb72ee928d71cdddb163aceff2d1b9332bf6b8ed5a9de20574a5515a83ac839865260e5b5c578ec3cb8658c3076d9bdcdc424064c8b2aa807b8b6d4bcbb2d0813e79e1c562e9ba4d5344c525ae2ecb8de84676dd61e80e9f5c9675fee277d96e52a68592d3beab520b0cc426065b5ec19922dbc1c6a43870a091560c6b580354764e2335d4ba6775051d7d96521eada5615c48f91f485b59570ab8bcbc8d64a2f54ac1eff48d7bf2b2496bdc6a30e4b4e389633ab8928254efc38c9fc08d7e8971156eada43c1218b66fba80258566e0ac873a3f4fe0022ff85e9299ef8074456e6638aef45975b8b2b49d212c7654f2c5c3158a1d00cb514e42f93d984912c00f5c65243605e57220064fa785342c6cbe7a2eaee59b870dc2cc0fb0c019621f940e3d3844af5b06d14b531c27be062a36fa46d703734f951dd8b1905af21eb8a42442825d29e6e2356b621000f46e76984fce8dbd7853121061068f1f3b524faa3300fd358b8a874af0170af3d592eb6f65ab710e3c3a45d888edfb36e6ee4cd5a4c85275662678ba55b1874446787eee977e0a8ade4887bd73193c15e8a2527cc04554c92afa922cf45925463f82c17c232ffc50a9f61b4bd01d6c34694693b7408d9cd48a2d202b60827f541f9fffd88b9d742977a0ecaed91bfc690262fb895591769658c919d2c4cbb3799bb99d5f658a9aa13b4d8d85921355084e0d2c78ec554c85117ff73bdf471a7a040d5e92362214005e4445df805901020a45f2806b15e9621de1a09af57cda51d83537a9a9988a2fe923e3e9d0c8e6fe402025a0158cdb67118e2b2ac921c862c33d83f4d7d6c3a64541fd6ffaffa5ae4d4eeee7ea1201c42ed552b51aa7fe7ddf42c8ee9cbac4fce0c449f0a330c5230501006c4ad4a209fea5b569637af0f5c522e094c546dbc436d104457c640beaf63e03f8d0dcb81a60d2a9c367103b8a5a9925ca67b1f98738aa69663c0457f1548c598f20e1c689385737c2c6179b2f8db7896c34ae5283817eb09e2b541fba55b1e6f291718c93188c50c90ac9279b9f0dd2ca6b47de5c4c29cb2f9f12bff598eb604ca45056e2a6b2e17b7cdf7a9a5f3d5c37a83d61b8d1cf5f27a0c65d3481c74507110926778e087041d1b93f294ede901658bf1c29abe11f73491299b50346bb667178e1d3affbdaa5a278f8f02b1d3f06c982a0bb007e92b865b6c68aa27ddb9b3703f13e1e8d0f718b345cb70a084365c4019df4f81ab04ed9a483ad411c4945131da08bb25e33a2a495d915bda9c8c059a28404c25cf0fa5c41ce43f62da4c22a36285c4f7d48592f7506de7387890d678c4c2dd81472ba967b39a3e564ecfd245b08d759ca23f83054e4377bdb60fc332c014ee1470a5b74514361d34e44aa6137d9e800f2d721ee060d6a45cd96fddc4456a727e4e8e1f95b6c761040fdbe3e5e306ffb4aafa68845105381a412f1784875781b9b9919f03fb7ab4d24133bac64f8f562cc28166f97ea3a998126f4a31c0da36feaa00d9df8c730c9b1015dd0835a318dcb33e5e4216c9925c19c68117c1ba46fecf7ab1b426b465318653c0ba4a17ea692281f190d40d376c3bc9fd6b03710d99961e7f81bba53e031c7ca06189e51ef22283424919a84b3e45b3e2333e96b4cea06d2e6e1b0fc932a45be200860275bf9ceceb4e96f56f57eccf99dd56875237a210c449846300d583d99f7cc446485be9c3c50490d9d832525849e80b53c9deb0c0a74c7774bfb06486d8f1f9628ae707c2e10e6d7324dfd2392c718d2e5a24354e481152c14ebb5e560d0fa4ca3e10c6811e9f9f48dc2de70effbfc934b56afabab80909be525a52760326231faa48da80fbcd02729a7147d14d59eb2a14b24f52e34af27d81e60b164f88eb091f3f05bb584e0a8a8e654b7c2c78ab1af9a7c6ea225fec2a63283405a488eeac5863983c70f90624b836eba9fe59b109440a293602a5d51148378e4fc4b0a580002b8b16ddad8f1109e8f6242b696023beb28e6647ea32c1c65d23875ee0518a7ad3bfa0b2d14a29897f45c6557f0fd53d8047a4c87935a94c5521b4336208ba10b8df17955cc3070d614f25f6ced2587040203818eb245246f16908f098c1580abd5e0b31408f3bfc5f0c626ea589f414891a0d33273816f19a5834604011c06fd27a90e0a74beb362a182ca3bd38065e2b50100e400e191d88b4539e7c6f9ddb9d9db55c5466a4bacc3028354c34a1ba40b8d1fddd53b100e84e0b0a3286d8b95018961dbf3497c7a773050a929f93f8dbd03c0a48dc3cb3ebcbae33f61acf66b3532518080e6c254f417cb2f1eaeb81ef483417301ed0d3df47df3fc00823c0f40af973a414f5eaa16f7902c08f9e29a08b42d399114ce0f7cc5806a6b744f395d77c80a884977de7f23e514eda0e971c1ff54e9f9ae80f660135e2f5b93bd1f9b68d6a1979d97ec9f39fae5916e0ae163345031b5824ced552b22ab2cbe2969a22a51c224d0d5e74a8e2bbdd0b30d62782d249270acae5db66e250cae0758f72ee6e4a656aac3c8e7e95236e6f21cd1e2a632c6e750c6b5b90cb5a61e4002668875810e64009dcaacd543cbc85bad554ecc3fb6e3ad65fe1ff664fdd30ab0aec0863b5fd98785423d830edc19406d099090645f02682ec88491e843c189c571f1bcde9f9bf05f0fc67284f14c1aced138033726f490605e6dd88bf4ba47fa51dac0b7152d7c401df8b6588837810ff0058ef79508fe6d363eca568aa1f672b1832ac9239c8b44c42d738af11409852e2752f7e8966b91a9fc840b19df8e90f1ad3023f46de47b8c85ca2f7a676720d543b6882216c2a7e31402f26aa3c3b813cf5183dc9d522e32c704bbcd45199dc24f81a2420263d79ca32987d3f9c98515ff205f4ee48e6eadf09bb11750f7695acac45d8b5e839b2ae193f3e69186d6fb8fa4fa28693c6a7e4578684872ec21711193a27cac3201853dc193323b59e8e688eb7b47d5938bdaac0e653dc6cd2d0becf54031d003be1448ce113a2a017d5734f224d07e6862be509c16e524fe3f7043c5caedd8a41a5460de4ef760813d2c31621fcb76968bce28915adfc676de69a1c1cbaf6a701744353dfd63415bb7c0ecb7262f38be848f80259d12c5754f36d8217f275eaa60afa733871b4ecdc2b4c2d51f6974961b027c477a5aa04a902f94e0b013a9fa314ba67859014c1738d0ee8caa719bc94b13469624b17b43dc2da6c9e9e644b053efd8c210aeb6a4f2f85687db37cca096743070d229e015ff94557fba2db8716556f970ea3d6d8311385d255e2abf2fe18fc067ee2ea213c48bfcbe83b452b7ca257a6e8ceea4d9e5531d2d7300653047eb2197c1418268f79fd33b6cc1bf9bdd37c47b810cc5bdf952ae8a95e7cd517a337b2d0c20b1455d27f505761907bfd6d74d4c57730616eac030c5747b52ef8f7319b86d2b262ae1c1f48310f30093cfc3b5681af616fec93493948005d8ac483931bd61a459f4a05b6f6574a10a490c9968890621a0c36bed6b0be129ffde375c0b7f28b06ab6f73041048b924d965542040607dbe60814db60718bb3b531d3d5079ca68f3f4254ad890f05e30677b702d8962787da2031827f6b80c84433f7c305c30c51439129c2d8777d52e41ca8703ca567e348b7bb3507e43cd96a2c686820e457ab2ba9a6ebec88a4bc3661b5322549764334bfbb91cdf1b200105d1d394063fea6f967a215dd65289cdc8a683dcec9e1e112295c4105c7b94c66eb1c8fcefd49e581b08a2768d94b789920761a3034fd7c831e6c928b72a535410e922679d7f9870103a10475c082c688492a2351c93dcdd7237fba930ce55737b9048aa9bb9a8384cab83359e1e77f77ca8423ea248ca89d687fc88646c1870274b5bd2b1f9ba8265280e04c36a92643a2b7da9584a5918a6149d4b677051b2df4152e8a22cbe7228aa65bed62d359a730ba57d4d04c76370e09c03db78ee07e60b1901ba2b2c30e7f0ebe2ec9bc3f10fbd54f97e0c06909e0aec379cc4314a0ef70fd571d7cb554b55663a24a4c16ea98b55adb95d17f6bf802858f050c94fcc3d88030e9b3a70e11ee6c6076d242ebd4056fc9c15346e22e55fe41f97f4642f517a6402509f802e76ae1f7b8a9c80bdbc451da42c5e008b4fd013bcbf9302225908e0c34790de81379ae0e6b1e61f3fd68a829ed24b8493e8ef09d400f5414cf47d831d529536c7bf7528effded70c2b9a919225104d110cea09e184d20c2c28dfbab816989a53461a6a6473fde4d20abfe93ca7c3f212d4b3dca3fdb11676254d53e218c1cbe08c10e07d9af5f63fde2ee0ef7cba05e6389a4251be895e2bdc99371e20f1cb8d4bb382352cfe615dd2b477e041d52b416ef1492230e8e5d3ccefa45db1fea9f7d7e80a8c5dd2e73f7b87931850cc73e39e6fc4b0f15ba66026ef397dbca5346c87fb0c8412ff8631229d6022e7aded37e38a73d23b5dea417dca08bd7c7f660bcd88c66f72b045a476d1169288bc81ecea31e9394b2ba4d87353bb9b264d93689981091839e5fc4262e6e6f783f59a1c7925aa35ea0e157fa8c00086ce9a89e2adc749c01236449a5dc643892f8f3b495df89b094990ac45c84c83dc519ccdc9cd7e61a70b811bb91e622eff6a944d841998998f7fa5f8f99d9fe5607346d8caa4a9ddba3b38458636e1f0bb1f4f1fe7d6cbc0f8df57765bb03a34a07b82f1a75193d15b9b87787fc65a8fea0db185268674532735d47d7f8a57485b8b962219295757f907a22738b588d599aed117c980ad1cd8403ad422746b3c8e6fcfabec8a73bd590b9b37de0b465d5b427f4bb993050109520e158adbc292ca7a9c24b42314ac5d689bcefd3be7ab4f613d38c11a847fe152805316d8ac8c9c362ab972d0b22218bcbbcc106b37f1af8dd370b72017fac4718fa00f4eea5cea67e27db247028f79553e886a1874694e87161750660048ff0c2abb5183a09cc20313b4b678479b8a79d9d0682e81f8094b7bd22b4c84ba4fa1144a5ac2e95e02967c140ad6be9a344dc16e3adda52a5f95c0a2253655c02705a1e10f666ead9d3d4949e2b13764808e4d0431a0b8a7a81221a8a85350869c23991ebe7d517bc6b23d777789e1b20d733aa79cdd2ab0a901c0053bd2c7c4b771568ee8bd7e235e9944ce3bb2cd7ba18d5cf39800886828e41158e824475f9a6d050106329081eea615c97ff9c5f0bd7cf748a8072bef8e3781ba2ca3bc34e1f56ec0b4405bfcfdbb84f8db44c6abda9d3e98ae19eaf02114330d9d8873298e2af115a73ab3874fab2065d44242afbbee65a0cafab1d2249b7c8f21191ea6c9e7a0a0254e703e4822d848a8197ad58e242c450c4c92694a59fb16615b5d06b5182ce679206b295554dac6851a6edfb98df895cd779c21a87f4e6088d3c984af46f0f846dd6b0f3b3249599b5c1b3f56fd31cec3f31d8893fb62c6fc3bdb6a914e4917f4cf925c67290fd4e74f747450f4c73fc1154db0d758a11728b8bae35c1a760ef6fdc030190247fbdc5087048ad7b17fa17059214175e821955b2a7698c1162f7cb421057c1aaef636689d9ab45c48a8e9dc430138473365da929104ad42487ff0171b86b7f37fa072c623fdc376167ae6e80896132e4072d995e895ca155ac36e4f19011fdbcaa685e4510f721f7884643e71a7b072dede0005b1b953219d49e5c85c2dbecf6e5295768ef5690b6cc95edcf83db81a08d0ac4b7c7b40359e7cae426b8f5c84d640975821ff44729100007db1289d66f9bcc022435f75650c1024694fee664d66fa2949d32edc3cc8c981ed3277824820b7246d4837c2c8e08244fef2d707d31ece4d69b05f8ce60568069ed67e1668a11b09b2f15549418be3450eadac83405190af4a5d150503cadf9cfed4db1496dcf129c36c1c4eca87fb9a7d76a82d45fcd8f8bbe3e0feaa1483f1c9300677f9d81e6a915833840c1fdb6c6f110540d7fae437729c1dbd0eb544c190d864623381c03c5865505d2febcbeef54f7634df0e7ea9205434d72f4968690466ca3e5a292032b2c7af4f5f6ff2817562c53e428837b0848d6c06bd228648e1d9a42e420561f4762ffd2026695c87e4e62b6be77989624c262907cd6afd9a6091f809afaa4c630833c38627b97fa9a67d79cce0114ac053a6ee67aa10559cf63e7c7d281e2ffdcfb3f650a358bf5a614c4d80609255b08e23083a1ef4e1fa44288692213ba33ce2d5de0669b6dc32382b1431ad4973dfde8d0892648fcacd4e4aed08e85e79981007dd84f2b443eff4a29ccd633a5c342d016d901996c9f3485a05c08bd3bcc7f7f4458b9a00fb1515725423d21ccb0530eb5138cbfa95e08c25c81887517089e9cd7be5200dcc5a781c1d8481cd519c1e60a32e1fd78f3c2ea629c19ad08581d680c4c249eb7f4af23f9c94f42f2bfd990f1d76b98b19c7c6c0c6fc34266091c9960fe0831ec6daf6c229547d15561b23b262ceaf613d9b415fadde6feb07336e677a0d74e720250630146fe63f7ecaaefe01728ce941ccd0440f814f0d1d7ee8d4cfe5f00640093005001254038a099aac545270009ffc8b948be584736008ba09b7ef7641e80522d02c9786be47f0e9b86b5881f3e512535378222e024f4d9b227102c41433ce8ed8093341f5a4cd4d5ee982781adda9259a6c440cbd0d536c311d161dcf39881c8e433b4683ecd552630edf7110189de66abd17cc6e0bc5a2c4d6c6752fb8108b3ca629cf3af0e251dc413fff5d130a4c5a97b6f4403286d63ac4b16b0711019e22cde54ffef068b7d8268549ea89ddf4abd4f1581a7d2c8f9d007bc3fed7d03a00a2d4e5819ca1b5408a3f8245dc8d532ce5794ce40bad84462658fa3e60a041c0643899c1a9a8e5565b88c8f5e788307682e0f763846f8fb4563f6980f3026e5bdbd28543fe3b6dcfc34ce002d410c5f3eb02956bc0e06e4e7ee144fb1e7260b6836257a32a1a78d4002153567208aef59ed3c8ca172e809e447e22a510aab8a5bde5d2101c03c27952a2530e8b18addee1e3e99130a38d4bc8662f02a0001e1ac70fdc5fae32696b14b27d8830c9a70ca3bde17eaf50465a3208a3ba1c80852eaef1a275a7e31c393223511dab3b18f7542613e320d23658ad2f251c4c04543d513fc947606289993424176598c13f64b4a52e56960f278f0fe82b7bd50ed1d419a374316f03cbe3a18d069e5ae9102f7e23ad7d3d1fd2d5750f5ef8f9638e82d28a3924a33f4a163e1498a1e28889ddfd0e88238990657181459d3d0213a76c0501bfcd03064285f0681e3b4939a60a8adf17112a7b24368d00cbe245a1bb8153e98b42a4c9e95c304e7b7c6d5ea1d2636c36584cc21334b2074cc58df317d0e245d3eefc49104056493f4af0ec2cf462dd080a2b934c1619246703125161f94b0f9b3070c45df6ea6af7bc33a3481016c434cb6acc7f32402a10bd6d914a67496ae3a29ec960dbf193efa4e892c93cf284d408d2f9e48c8d52561c9bca27d86e6c1aea2d632da34010852e508f18a2bf639e01054255f3f492aa2322339566abe1fb7378447047a243d002958c7dca4d400dbc4542af2244d9a6dc60dafd34659bf441a93e8fe3ad152106854b41fd4ea1af84f02bdc2be68d6c8f48cb4a688a6ae4ecf57f85629b1479be84d176197a3f91896d89b5d51492af581694da3bd4a5edf5e1b760b8cbf9103cabbaec38060efec29d9b6b71854ab10b02db2088b05ffc37e60bafcd3d5a3aeba272fc83f49cfbdd3d5d2b2e2fb7556864f3c54ab4c6b01ad6fc630dc375cb04061c44d1d38cac3558235a5fdc575cc87aedc7ff38276a71f2f9dabe21adb0f33e6117ecb8dba4339c25a29118d1aacb9c36afef15df53678fcca8a6d8f2d2cfd039c4faa727830a0690b121dece67905a7e67380ecf1aedbe914cce388760033780f40ee880a143b1830a0e2593ed4b439f48003a5dfef9ddd2f02dc1f1bc79233fc71e5a9ceaf89ca1bc58127ea1b2a835f4dd9f30d76eb075cb0b54490f7e964cebb77920a9372694a7f7187def5e7d10fe60d83f2b1b69912a0287baeb53b621932da68fa4b70b08b5b0ddf828af861bbb84141c14ed8d37297241ad5ff52d2d2d1ee7700c5fc4b65865fea76bb0b95c972443101e3410e1044c5eb0f8a9ec2adfc0ac98a631e166e7a954f277ec0a9b133cd82c4c13a3030fefe0d1fc31119d781fb64a70026c921c411097fcb1bf94a571bd784e3996c7f0d95ae76ce78d56965f2eea89721e281564b335d88ce3cdb1ba786a3b6e647f1866937c3e68d5dcbf706362ea83aaf951a6c5ab2ec7611ac637577d7a09ca40a4c29db00a170b1aa511d49ce922af2c54b21ab5a5e4059638533f1ceaa4093e11e4438d537a771fdbcb52de6b4202be0de7b2c86a03e64908209f4dfb7ca1062c27d473134310f801b265604be0db876e4de65a3733cd5ea2d80b60f6cdb604d0383cacabd5d0a9a70b98c9c98428f3e809fd83816557b5670862f0785ae1d4d88803782e102619dc82aed453a81facbee289e0b62115c526903505621da3f0fdfae4581d7ac689667bab2c22028e36035b8398b2a66728e8592aee291766e1511044a864f019f01573be8188b3a9f4b7576cbd67f3e10e7cc251d041bf4eb66349a520c3a1309e5c5e7c90efda7083a8c684333b39bc5f6b669ca84914dfc146093af77c89ed8d9bd52f0ac527041f411fcb9ea29eaee1955d477ceb16c541081c468095d5db9cb4609f301a26a4477a35d8672a2eb865406c3a89500843d3af1d469fac0b918ed5fae6c94e043d0e74651f5ea0818b34e7aeb175037cfd10fe96cee937cf40a6830ab1ec947cb3ffead05f67bedbd2b0018e40693f87741b87a6bee3c73374aa732431bfcc3f12b8f48b6c40d84ea0472577c5154f74ffc3890065cc0c44cb66deb10de7bc8728f91a1c3fd77ae968127a19b007169003ccd599e3009deadf143ccd6a3de6fb2062811333c61da5437e914c5d36deb998225f348b53d5efd11d2fe2a374fceb23d7196d4a6c70bdba41954f1876b1be8c4cfd5bb3e7f05acfa1b32f3936e5a577d68c2ebfef8b1ec8dcf7bfcfa65d43d0a4646b442b3dc7ca76fd14428e599f8c838cc6abdc706b63baf4c4301489c3ab09627aeedb78f7852556838f3fc52e49742573e944974bc1bd044029dde8d23acb0c1f4e0b963821725efb501b59353eaf850f70ab3745b2296b87d03341f278f029fbe3cbc8f3d91a5fff2f4f96efdcf3c29e51bb7278bc0f6f78b9b27362ad421336ee88cd5f2e8221c2d2420c7fc2c50a64fc7abc77068b3ed81eb5ce64313e2656cc097163692107717bea07e2b1d2b41a7a191e2c3b360a0ce304f9a4e179bcbf892eed986caef5c14ab8fc85a2d2626c6314c578b21d74793f963aaf3bbc75792e05bb783b2e44ff1ceccaef8e75d1876ace4530aa79fb2ead3af6ec7f1fdb92cbc05f3311898eb6cd65c20725b016466f9b5b128e9daea251399273dcaa346ffe87140db7dad381b32c8d2cc1105d8b8adb8ca78c4798935a75efcd67ac6cfcb347b956998503a5a711e06f721264be62f5e03aea91838a933b2567e409d4bbc7d2dd1de4ffa982a6acefc70dd76c189571070cf76fab5d4628269fd51f389b4249d64c8c74a633e80a3be44620e348d569a733003f288760307e5b0f199d7adf3a11e82ebe4b0311c14c5d504522c7f5b69420d8958d6d738010aec6c2ab3a2d261075255e13395993156308c941ab184468d6ccb2d89d5403e59451d5050d4b382cc8480da0d3dd8080a20509082142325263685e806bc8f4cdef71f7f7eec3c11bb940a314ecd16c810a15ec28d666d4cbc1e05398224ebd40a94ddc82b50e305054d4c5921b1b546cd0c5b46fb913970fb4fb730f05b717e01407e3d57877d8af4a3d7ad6a591a4f503000c23652c559a314a24b619cb32a75ac7c06c2e9a8ee250e07974899e27d9679621066cf77e0f834a8194f888ce16627a3ff5c3dc2adec24a3027bf6b30995797e6e8aa02d2465376b3a51b00f6b936943f8549caba77412375381f60fe50b48ec1b5f025e8b184eb01a945f5c835c1064fc812fc865b47f956fe684468a97c1f942037f03a5a7de74318d48c4aa640c4e5290e377d0f3df719b142398b43bc3b49501776f2c9435c955c9e49a38e2ee216f0726f5a8790e2e3b44b573e1fbb3f413c0b00b0f6f24f30f4bf04da1252c20f8bc2e2c11871508d7cee96842ffd933e1efbd5d21959691591134345144c23d99a76570d1a0569021693d4a4e9eb8bebf72920bd7129913b68b399d3170ed96fe7e0fc66e4a9f0a3a0c1c37f1415d9b492cc080e89794cfdae5d5e1e2fa0828e0e03062fa2c4396cc0d3aa80f33e6427d91299f38c44718e264480ce7e5e517d7283de3d2be6adbb31985595cd34088a62a79675b66874530620e4c65b45c2fb4cd0119b2f627baa0924b09073a1e4280079bdf3eef06690a0ae6ed7e3a2bf4e8dc4ade24ab82ad89be1e66d470ad60d0757133d54d30872e0d1beaab797efff8185f318ef08db6aa3ac09e16a7da7286550bdef631a5e05467c48d1440647a829370c4eceffa074ebbe215ef709ec9a71c4e83947a7038264aeaeb3149a48c736f699d9664e0123261c6b660b57fc16fe46b5e92f5c1f0fa5a45f75ad7d2e6e0ddd82bca53a1241038712130c04fd90496345324f5a317170c427aac046fba57c3add2f0c455f79820db709734f31ef7520a9652e01b62db251d6a1a1b4c568452d182cedfc56015c5150149904593954373456fa91c42689a559f2604eeebdd775fa88d8af296a435db397fab44195268fbcae9b706e1ed6347a1e82cb3982b6c5fa9e42abc745f767ccb23044bf3268cb8937f6d52b1345dd554a568808a1a533ffe3ebd4568b750efe2c747d2d9062334daa1cf93ae2a90be5aa9a589608b20b930935f0f9bc0f7b7efa0b63e7521aaf63a4e7affd0057b3e7db0fd0bb5570327c931e4ac7fe18e24776ca1599613c4b8ffcb67a7141f508a4cd4ddaccddc8b79bfb338e4b14842c7e565d7898c6ee3c705fd911ec2ca254548b6442ec46959fe649e4e7a826b20e2f68c82462dfc1403b21a1717a5c170800c003a8bbb2b31301d25e86d6240ca1d80491685025b71b4d1848f47caa83ab0e288d31adcf836c522c436fbd39e9c3b1c007b6d0950234ee5b75ec3e513824925c7115a0cad607e569b30c1f3b5e7bd8e818b9ccefa105d82af18571405e8279e07b9e2e6268ab02d2d6bfa633b1f9d008002c208206b9c0fd4bbc4b979e8e7dccfe8da9018e90f7e7996737e8df2bbf84de034dab3c4da88cbf5e3a5daf888f419d022ffc48ac53de0b88b0d5e12df0896c3b138502607d7c15ebc8d5edd673c7bd494ecc63270fd08bf73bac988978d367985d574984c455d8c7ae709d8c1c4334edd890754976b009c0111379665e600fedf7d04fb3cb53ad4befb99f16343a9393f76473e3e9a482ceeb396794f8fa9632ebec6b19e8a1ff2b23862272ee14c8001c44cfaef5be0e663dacda75074853ee8b1206909100d8599a67363f9538806d70f2d8c40ff2124e51a8d540f97b6a3fbed45d775fabbc3a65e352d1349d12e3418858ac2ea1ff1023cee56d7c0d054d702fb3e165b22c2aafc410127736b429eae68f32085ab58ec3ab7ee0d0c8072a15e0178f0708b05455458f0ce450addeab60cfb262134d60abcfa86adf06df120283f72041d9c6e8cb2b2df1cad1c327e7ad1cb6592fc628528a00598de058ded34e9c01706d65a5826c8fdb9b8a0ad020260fa6c549a50cd3a5cd0cf2d761383db82cade6d4aa30c170dad4694ae18196847230827164da38880eeb21ee124a200c803f2ba9b9658d9c1c65bb02ee0769ba8c46a6cf93fcebb93223fdf326d4b643a29aac45c5349326285dfdf55475c2396a6ac5a60437a45bef9497ce3e94d391824ec50cbb10f75069278002802e679088492f3fe3986e112a760c197a156be025ffa9909797091960174cb575879480f42a95e45a6f4e01c775585bc6829db597cecc9e6a44dc387bdacae6bc1a93f4e2f9e0787eedb05ef173ecb05afe972446c84b1810320a076935a3b5455f963cf83188bbdbc01e82866dcdf341f734f06dd22bfa85f8535ae4eee5680d4735a35f50f00f09c0eedddae4cba43a77c4223d0c97a92b71737d93d1d7d310da354f6ca8c54d443aa7110c8d893d3300386c34e391041eb3cc601621951b9f7c0be2c15547d9f143cd7e0eb72d18b21fe41806ba2878936436c8adc724ad855022334d348031a749c758bd07a1a189fb51ab34002f0e9a7833af2e9eeec13f67ae59de7d3ef9a6b4820811279ff183e6654fe95f674b6f28ec95f86794868f512d45980e1c767560ed76902de86d647c8c982325f0e9b9cc648a7a38a8fb96126de1a862c33fbe78675c541188a5fbe7f0c939e5a3190244c908cf756ae9b18e7d0cd949bc2fd910d739f073a1222cb2516b3151d047ffad38cdb8a2e0d1aab5b277db2840bc2c93b32fd1dc8764d035276e2f2fa345cf6b5d2b6791335259a285472c486258b4a29c2a86bbf0375dacfe62aee06648c7399a053565de8a9f4f472f7d119cb425b8e3df9955d7b4fd41fb2eacc499ae161383595a5c0a2b536f2ba33819f47df59c04e68139e01e5e35a62595af10fdea3c520515bd28d72c626c03718d6c491d3ee63edaa5b2db64b8c91f99b25d94101b5a8ce077e9c5eea25bf55d0a3c92056980df2c94da3765ec8a0b93ae93dcc94a0b1996ad87ed0b4d2891d7a616cff4a65c0232a475fd8aff88618b941c5a21c379d06c567145aaee68e64444cf1c2d476bfa829281c777be02a3d69518930ff2b32637f3e78fa58c2b715e712043e3db3480e5f3fd2f535c430e151d8939e5c4b4cf00603e3c86e24c60487d209c2e49c5911f75cc370d9ff98c7f8f407497f05f3371edf567d847603b8021cee03ba55bbab5620562a5207a9c758778fde96d3281d9707870e7e4f64ed67cf90fb456f5c72effeba7157c06028cde519968e9ff1d8211faca8c81e2cddef4a82e8dca5dc0f8192f1046d099ef8073fc08f104bf6de4de4de52a62465780af10af40a5f5972a725c595afd2ca9dd1cfb72dabecb5e012be9edade03bfd111971b1d71b72c5d2df804e429ee4b413a9c669ee27e04c51d4fad96132a64943c3b33f29cdf5991b91f534af28f299f3cc71c66803fe608caf3739991670c4c849979eae5856c92672cc6893cbf462677c05c33cbf3c71a28799e82f2fc594c6cf2c4c8f28c61e519d352f931c695678b923cbf93c99d2ecf6f59c91d963c7f6cf1c9f34484ccbd144f3399e2e69f8420459ada898cccd9d43cb067c2b0ca3033174fb353ac5534b593175245e3c6169e662e965e34b55695624de3865495bc90288e25845962536bd57cee4f509efb154c13e429aef4729146c853b156d1144196bc28bd724d02668461663440495c9a9adc2965ee6b565f33933b5ee6be068acd4beebc64ee534072e73ef7aaa584f2890a26ad541132f7632a2873636de5134dadd54a4e54d4e7ea8f35abccd557b93594b92ff3c4a13e69844552ee87898cbe88cd9fc895395a268530408de260a0c81cee3f4ca4c8cd30449039dcc38c2163e0dec19e19c2cc6060949c665cd76a15890aa922b540a2b8eface8d6c8e3e7cadc7b1efe1ec4de93fcb927b9fb1c1d713b5054bbd9852ff2f7beb24432b9e384547dae8e2577bee75e4ad5d7829aa4b2463f62597247f463098ccc5556e6de13e1ae1e915f0b6492dccff591dc3fd2d4c612181daa8dccfd48aa652e071032f7234d2d732fc2396632e75402e3349339dcb717a24c56b86f64d113993033b9339ff3428a7d2573fa45a2cc7136c4519339dcf3e08ea759e67e849965eec7d36c86ae697e3a59260de5ed25cd0766cf3f0e8fb26c15f73d872f75da934aca8d6ca3b627656f7e6017786c76e27b838bedbffd0f2ed2df1e0810c9bd41eeace4ed13a0838b3a502326dc9147de78d8b0bde4feeac8dcebb8e8cf3d0f1787e40e8ecc75b2cc616efb4d05086d16ded0a86d9433d29037019525b7baf37d879f96cf531dd15b0bcb637db9582413d5e8c1b72816a9028044f5175617aa95e4f9fd006092e7aba5a7405cbdb0fac81c4b7f13fd047f5011f6b7b83efd59c47390c903307a30a9cbf69a4ee1b5ccb94959b78abf46d1129dd985ca1f6d785dd77dae4eef9128b4ad7bef0cab944cb9210e8bd228caa351365827dcc9639c630d7d348a3e0f1e3c5c9c3cf4e97b3307923ecc0d6efd910716dd77210f1e2633ae0d1b0472b394394468ae4e6e7f0dbd158d6c881fdb14cdb2ffe546dbb3474378ae22a0c9456872e5b0cc9e6b0444b1e4b8bbba46a8c068e7eabfab6b44cef68d43a8e9d6347505f6740966a2c91c98194c4c7e071393e10848e6b8fc49e5d3c468742055a417490612e53fd27c917108c91dee676272c7be8ae82da64f7ab513241934a160b813221ca42db2cfe860351393390e138365e7421c4232c7df64850bcbce85b2ecacdab9b2f7a8ce4c67ae14e68b46398c0c26d628bb82188d4cc405cf23b1b2fc29cbd26619cbde4fe92c42829921a8d34cfe995a6725cd344a52fa3ee79c73ce70a4df3ec46133a746cde4693dd5a33aa90b3c6ffe4044297f435079ceef5e97f33bcf70744056436e488edc0dc976644372b723950677fcecb7ad6e9dc1bdf88be2fa7b28027b821862aa52ac70e1d1196b5dfc3a35bf51d21480ecd3fd6776af6bcdc9f2b727eef8651d5f8b762cc190e5572777fcb26d558a7ad729370fe92b0056f01a48f7007177b928905a4120dbc6626d20102efb7ba42d8b4b61345a96ce7256cb5a363494c59d2f83585b37ce67fe310ac91ec264ce0e58be5ea5e97c535cd17bd2e56c3aea66a9bd249bd249bda6737650ca9850aa8f1e3ba06cbf8cbc7ddd416994ddb6b9d5914c902dd3ef4cc3d101b99b35cafac592b3a2d6a5df5866beca6f7fb1cc0cb1786f5bc1a7a013cd538d25cfc592c7abad5befdbbf71b9a8f2f66f5e2ed6b77f0373717b9aeddf28913bdf12b923fa8a4f414d83fd155ab627211e9aa78627202bee78e3339e80b21d6b62a5a14ec11d6f7c6a62a00fdbabbc047da87fc31b1f4fd91b5615772c0d592c6ed3867a68be2e2ecd8b062677beb74fb385dc11bd7d9a988b9dac9b654bf3bab30cd4dedbbf9954e6297be3f3bd714124b7e5624dcc53f63ddbbf61b9d86feac2f106168e37af6cbf26369a2a0aaef7b5c99d3f69aaa0b982f424ec2434248a2485e40488468749349963439026736c1477ec682c9963df4bc20c6664fb3304c5f052c191fbfa10589bdcba9239fefea52948d509a8242477bab72fa5ea448644d91f4b6964fb34415364fba596dca15f1a5a9942b6bf222477488f4727a0d6c1898cee8b6cdfbe680a5607a32e96d241b63fd2046594926c7f2c0da17c644e93fe6d2cdb9883d9fe0d93568d9ed6c4be26d6aa893925d7f378e3530380235b2b6eff8dcfecd147c61b56b63f41921037c2e0b2606d72e78f302e20342e9963291ad9fe88a308d93e0e20b9437a4b833cfa165564fb332eb9e30f02a1c922a16cdffb60c8f64500183b5ab6dfc9acbdb7937d3880e40e7dfb342e4bb7c8238c2bdb77f0078e4cc3544ce6d83759e1d6c480e0c8a490e6b06c9fe251c736ca3e98caf63dd10722b930b45cec6f228f35b16c9fc8cc373e72a7b3ade941f712fcc2217eccdc85289963ff878eec8558dc777aafcdf68649e7ba37ac46d9efc21b9f46a1b27dbb82db3fdef864fbf26443213b60b671b8e1c9d3d8529398b3695f1d62526bdd515ab555da8f358d4c690d6292471e6d48b1fa409a214593a782e48e976b1999d2713b92e91a99d629648ac64c8ad6cb63f541a6a3bde28e35883e35652f8a924f0b777ea5b56a0b2b2da851b406d595cca9341eada20fb3c4521ae3c51d6b50a61d85d6f6e9d7345ac53dfd3ad42afb744aabb61593566d6191997b58ad123dfdadc9e6a455321d5e1126b285b66575044f9ec6cd95fdbd1b8008026dea6076c36c183831f9c66ab58a3eca6795db9ff01fcea04acca73ec2a851dca01fbcba794fee2869536a76a3d168400041a3d180a0d168564ca137e8e0a9c959195851155b9256b58afafce1863366ddeb8e9256739126bbd1e66a818167bdef05d7df7b8e5386b651eede2d4f9e4639144312c2584dd69323b6c85ecb34aa559ee7eb9092e7ebfc90811655683b5a25c3a83d79826a57ad0bd3a3b5c1248f324a9e95fac4c9f3e7e3cc1e33cfff4eb387bb4c148f3c51797a5398b8378b43c2a4d6eeb66d4335f8d4e053038bc9f4d9b68fc9c764259bcadfa4941d8e434c503612b46f5572ee9b0ff95ca601c47bd00d6e437629dba1d3797bd48ca9513f66de3cefd9f21636933c16e1b66da399ab20cbaba237dc83d5a3559b6baed65aabacdd75dbb6ee29b72e3c79aa49f4f43bcefcf44eb4bd7c153c4d555cda8970e5da60a20926aa4082568e8b1900598eb3631ce18b15508108b5c3325d48040190c084c5230a8df074159736ea45dec4e378b7f007fdf93e9cebc289293c44745f443731042ff068e16f84c7136109f6705f44deb04c0fa20e77a18c1712f146788cf0f8f0ed0b79f274434c793e8787987986e304394993b3abb81bf57088e9eb6ca6d8e63904eb244ad6c9527644167972e18beef340dbaa21df5c327bd4efc01cbc0c769d8fee46596549902f1c67fe46fbf7693752f991e82df8742eb1200e5d06c3b90404023ef7de68c4813da35168924f9a0ffe683467373388bbf7e1acf1cbcdc47273725836ca69923b99f84fb0d2f9db199e4cbfbc5f7fac2bbae0053234309cf942e9a971fa78a1f41410909989f88072f940833cd51f93a12f4ff58f42daf254fb207dd0610462eb29e9a24c0fe07f6028657a203d6884e77bf0c19008f049a1057b20fd1712f13d29949ea2b191be72b7b2f712dc61f28c4294a724f6e129f920a69fe779d89378dc5aae2aab330fd391ce3cd572d1adbdd764fa1f5179a4addc51dcd185727f3f415d2648fdf9359431924567dc47c2441eefcc8fb46e9c11aec12d785324bd4c729b06ee91781ed934d8ef943d7d3fc1d10894d862a7b4525aa928fc48d8768afb8925be8db2dcfb68eeadb5a18ce86576b04714f2006917777ecb46a11a352dc77de638111e871022776f45ef494e148e42703f6c184a1ad256715447d6399d1a6cfb041d9fbebf10e9f2bae3cda5567da6d9a65695dac31de8a0e56b050e2b7b525c4a61c8f2c7091ce451963f4a2899487882d241461e798c918d904709f40412f22883b2cbda136264ff92c95fc745024cc1074fb8c0064aa002143cfe37b858a489377c9ab821e58c1f1e4765f9f3c40af24a963f4f30b9433a745e7ae47a963f4a20d184db59fe289164891f258c702ce896e5cf122f78f70f483b8c7c20c60f8ef084da12a05084096cc1441557004d99820b201e3880021d2ca103d816d09801114a3b9861031750018c26d0f081154320e28916ba5083284628e309637c3b4cc1460aba60e267052880412181138ec0cac2a7096450210435ca50421a3518c38d266c0481013cbc087251f1022b204101107858d9810152980c7581c4166e2034e3e1892fb2f045cb096fb4b1051bfc6087151396c0411b515e5848430c232f68420b2a6a57f00212301f6406cc275dcbe6fb5a5b4f1a0e26fc2c093289965c99209eeb7baea2ecb7df1163e451277b97023cd3287fafd9fff4ca37598a330c971bae3cdae05e5fad1a67b2f099564d5a42714a3ecff7ad07edd2b3c5bb449dc5722bad2b9f15773ead52b6c6cee5ae62379feb6ea1808311e89900c8cb4285bd75daa8d6f7893a8f65f9f3da0e8f3c4e59cabbd95651af03459f159644b9bba9a0e81d3fcbbad23267ca1cfb79e1d6535efaa4143d8b2bcb53b4bac88f0cf92d1bed5a79acad2ce574f9464b9052ba4b4b896545e59246e08ba86168893e28eece6d9febce77f9b2519486d4a935c3dd694b955377c29dff4d7b8685c29d4f1be55264b9ad76ddd1c093a7d1a394ba3bc9051cdd982e0137cc2e0cc92457248b2c4396d103f5fa438bb5566b52a8d66a4038800f215a6462642c47e7533967ac0d3c1af539c1f1d956d5aae2bfb9cb2bdc49f3551adc9a34b83484e83aeba1a323c8cc602fdd8b03d37c7506f7b66a36f5893fd0ae6a6acc3ef4da506dd6bd9e40290d699db9cdccc53a05c8c35a0b1a9addda506dd6bd648e7d422df77b4f6f25f303abb5d65ab95aab0e6f745544dd377ae96ca9ce2aacc22aacd2ca458bf7495e7d91fb7dae8430579b8e2a7279b12f5f37744d30d4043031b5862b9d95a7d3ff89685dc417a3237385fb261dbaeac01ef792f0628aa1f198afcee0e2a8b461dd1a77d6cec331e95ccd9ab972b17201cb3e3024c0baa12b612b54b8f7f4d9c6ed50f6acb57bdbbabb3b1ceb7b9db391684a299dc1f556583a0f7ce94097af653c9d729f5a24d6599df5ebecd03c75160489dab66dc534eb045f4c96cb0ef638cc1793e5d3ca4d9f319fcc67fda5d3d1485d11a17a32132482a826a5ccbeb4d274fdab833d5e2d25c39a60683c8646e6ab33b8337db797dbdc4239ebac70278e4fb6aafae406e9ac93e6ab995bff272748676bacb3aeb3327048028585fe24b0c77d729dc966b3f58326d350549339fd56caac933207e87d306785c29ddce65fbfd639e7276714eefc9eedb3576d58d98525ac262cf199724d4341d7e58c309488f1e48eb2fc5112b3819216f415942c71ddd216fa07f7a50960dc9620ac71c11d2ce10343c3678a273e4ad4e002162e4b963f49486921dc9be54f12657812d766f9930414efe28259fe24d183a1bb92e54f125af4142ecdf227091870e18ab2fc49c295440b89576581274f6369829b94db53b0a752f74aa95359bd9f39a15cfcf0fc707539f823860f8ceae3a97e2ea42d0f2b4b09a3eecf6787899ca7fb24b5c61110ea93d69822f77f69b4a8e272b04555664d644c626012d894dc2aaf8f0d1520af7d354b23f6529935a438b28acbc52ea3a3a8b414954e43a5d950e9292a346ca0963d4412e593fb19c5ad4f412038b2bf376732a73e888313296273cb9ced457e828ca7ccd9b62244b37b64432973b66d76ad1f3559f4d5d51ab9d6a730b9e35f558072addf65b448f295dca1a4d914191bb1346052481d25d7aee58974b0466eab04c8fae0191bb19787a2188723935c2e72513ad52fe595068c8d586e6e8a2c779259eeead3b55af216724145a074c769cf69a4e46271c35e6bab0bd8d34a8e605902ab85891529b4520a96a8a01163b9028afb8495afd82339604252824be5c8cf92111382ee91319880660891cc70e2f3f104a0111598f07c2c6106fe1ca929d13561d604a0ef1ab144040598b7c412364aac4bc1129c8f282c11164c6c42f60647541f67b0b82e5ad48794d6668427dc071356558a4ffb50024d8316c5074dcafd41a284abfa70c20b0997fd39020b1c4f7853a36afbe0081635e2d6acd167dc2f829371696ce0ab0b9382f6e2aa64f99344094de27259fe24418282fb92e58f1155985d52963f4644c9f387708332358011403f4620b19269963f4620c9e3fd30a634516b6bdd368eb35634f158b3e881d15c5f9de77d967e2038b2f493f9ca9c510f090442b3255d7b55e69cd25359017b56c0eeeeee9b251e82ca3d33f1b7b8b84c97d2ec796979797929b1acbcbca8dc979717d2cb087c79f9bc4e64b9971cde141e8c18f7f3e469ac5965fadb4bd797650dee480a2205b56a46a1b9e83d7d9210290dd210890d10c9ed9648147d2abb2532a5b49f648614492d990a923b2d99925840851449b316e4a0288d727247d22c88048504d42a92ac51148787492e4fd1ef30290b4c8291b820c5485f348a3ee9d528fa2d4c72d228fab34651288da24f0222cdc02dee489a9166a459a6db7c992d94623411448a3225d327d1aecf6dd2e2a4c1107d929456c99f551a99925a99fe4862a396e974638c3cde55a69749a624a14c7fab93d46ad5486a92a9ab552369366b5593568d754572d2aaf913461e495728c0c7ce894cbfe9a4a4a04cdffbc11dd2c9beb83123a909b5c99561b811d41847a6ab5cb312c1a073cdd90e02f1bcee1389baaf9bd96b6fa7b7cd721cd843a4fbd111d7b3b41da6224ecaea238ac99cf9262bdc194aeeab4fe6befa74aead8939e79c4e1ad5d5d5a8aead46f593b2d75ff7cfb006ade0fa8f35a84b51682ed62f6a6c56835ab3564d28724726cf7ee7b2122d2b87c293a71186965b466b168daab046f5d3e42f83d9ab5da7acb472a3fa6a543f295b719920d279ec62b3c7ac33c8fdb4f653dcc53a1988e47631b9c392fbbb2f5a45bf42e954ffac515d5bb96bab554e5abcd2637cb48fb6f5e5a28c0edb6f211193a786326f84c7a1b8df593e39028c4cc3b19be5e672f745a3c22e76e48e77ec6230b428229075b2dc5fbb70877432e9004f9ec6198632f7de17c5c5913d0781e0c8f6dff3306d9494bfc9f7e4d7b2ca30acb257bfd111b713edb4a86774c4b53e9e4dad5136531ac5fde8884bf369760282146166a71a6a8dcc4d21737f4223732af95484cc3d0c116c126e134c5278353217c27021730f3ae1aafccaabfccac75a32c5bdf5c2d1de091373f1e4738a650e55933bf649b52f7665a3e6c907c5fd8a0a9e3e3ead62d21c8b966bad36dd936e367640b9aa541b11d8534ba552a9b4b24232a3bea4587a798afb59f2a2499e5f9d902cdff2a59fdf751d2928cf3a2edf2e3fda5ccb2d1f539b79cdc06a663333335f43bf6d4e14192c0002917ca42cc228d0a289d58e9a970e8fd51d5b5a3a99e6c3f049abbcefa71fd3923be0770b242ac615f38299c91dffd19b5a72c7fecccb2bfd1853ab41332d312d90312ed237cb8f315665e5c7985aeeb7f8e62573da756a4c64dcf1b240ccc20a4b3299d3dfd13aa16ea8abe1ae06753ea421d2908b246bef250191d2903b6fdcee47125027e67e173cd6cc727f0b2ee1d159481f263257544678f4235b1cc1a3ed3cf39ac9026ce3ce70d128116021e41a6f50c1e5a34124770c45b52cc6bc3ad531afdc1f66d12acf430801820f78608890b103417060031ac800062e6001202a4081094820021078c00f0ef0a1013d3080871d74c861010a48000e08087203901f3d0730008f4df65100020cc0861e3b35f0105534ec98410032e8c410809cf0b10e00c0d072bd60b11c3217897c7f8e59ab48df1fbee48e938672bf943d484332867efb1e0e3efd0dae7914c6f91cf8e661c0a84fe11caf03c3f000c0a9c71800ff58c73b1e652238c98fde7b4cc3e3cdeff1c7e3f5f718e4b9ad11be4df088e7b21e9378bc268b1a5858f3aa7909819384e08d1062b55aad7844f043e0220f023cc47b0083e03f80857821d8033f047fe03b8085fc88873c0770073e083cbe0630077e033888c700d6c067006fe02d8031f017c019f80a600b3c10f8023f015c81a70006e2238027f012c014f807e0083c04b004de01f801ff0386c037003be07dc03f3c037003be07ecc3ef8019f034f8f43ce01e3e07bcc3eb80797805e01c7e015887c7012be0138017f041300e8f009c80078283fc0d1801df8381fc0f7cc31b00f73c115cf307c03fde061be079f001de07b6f98c799e00d8c71700e7b70113e007800bf03bd886ef8107f03cf0ced7807bbc0af37811d7f03bb0ea69c0e20b00eff819300daf8305f032e0193e0058e763c0327c8803f0393886c738fcc739eff8cb31531ad56318be5a35d6bc72cbac626aac3b86af31a6e622cdf7d7c05cc4df5f13ab9115c117e6a9fe10e01b6b1a2eace655f3aac9227cb938c4f787301785f8fe30e62208be3f94b9f881ef0f672e7ae0fb432017877c7f18e4a290ef0f692e8edf1f0ab9d881ef0f875c0ce2fbc39a8b1cf87e9b958b1bf87e1b1f1735f0fd362c1733f0fd362d1731f0fd362e172ff0fd362f172df0fd36301781f87e9b988b15f87e1b998b14f87e9b998b13f87e1b201725f0fd36412e46e0fb6d683642364336b5d3eae473629d5a27d7e975829d6227d96976023a059d6827a1d3d0a976b372f1c70deba675e3b209931831dfe0d1027c242c8fcdf7dfc06e6237b29bd90dd0cd0ded46e866e8a686b3c2f1c161e1e0b8705e38309c188e0c6786038413e4621826d1823e129627fc7e1c9a8b3abe1f47c845007c3fce908b307c3f4ecdc5d4f7e758b988fafe1c3e2ee6f8fe1c2c1771be3f47cbc59befcfe172f1f4fd395e2ed67c3bcdbb3b7eff772ce34ff346785a5a8e7b88799a9008f9830615433c319efd3d106341e487c0e12b8485b15016ce42a03028a48542e15058b359d9f8d8b06c5a362e9b970dcc266623b399d90045c0866623643364535bf9b05aae172c269b0105d184866a37ab1b9f1bd64debc6e5a91bd84dec467633bb01ba09baa1dd08dd0cddd47056383e382c9c168e0be78503c389e1c87066384038341c219c219c5a8e550e9f1cac1cad1cae50f452ced03d8e199286fe1a9c24026f44112b9e9ab7c13e96874878f3aa4142e47c7f15723100df5f875c8ce15be75b86efdf7c5c14c0f76f2c1767f8feade5e28eefdf5c2ed2f0fddbcb45d5f76f3017c56f1edfbfc95cace1fbb7998b3bdfbf01b9d8e3fbb720176df8fe8de6e200be7f13729100dfbf0db95880efdf6a2efaf87e6ee562fe7ecec7459eefe7582e1ae0fbb9968b07f87ecee562cff7732f177f7c3f077311c8f77331176ff87e4ee66290efe7662e22e0fb39201771f87e2ec8c5047c3f47735101dfcf09b9b880ef1cbe9fabb9a8c3f7db958b3b7cbff5719187efb72c1719f0fdb6e5620fdf80efb72f177df87e0b73d101df6f632efef0fd56e6e203bedfce5c84c0f75b20176f6e5a37ac1b9f9bd5a9761a3a099d68a7a013d06976929d6227d8e975729d5a27d6c9e7b4b2a9d90cd908d9d06c823c65036433b391d9d8c06c5e362e9b960dcbc6c766158643a150480b8342a07016cac210169ac8880036b5a40c43e01621700b0870cb07708b0770cb10dc2204b78cb8a503b82508dcc201dcb201dca201dc9201ec8201ec7201ec6201ec020476a90076a10076990076910076890076810076790076f901bb3800bbf8805d1a805d7ac02f0cc02f3ce0971df08b0ef82507fcf25a007e812900bfc412805f6438e0971902f00b5010fc1274037ea101c12f423ff0cb500f7ea91d009b5606c0261f1e6c6281d8d49239fd199b5c3eb0e955006c8211009b6203c026990dd834eb814d3bd8540336f1c026119b54d8440386d9816166c03002c0303260181d0c1303868179aa3f00182607c3e8c03000c0303060189aa7fa5318068561863cd59f03c3d43cd58f83636e70cc09c7b03cd55f83636cbc977286ef4d53481afa439c0339c3486f906180206968181a5c31ae324ff53fae334ff53bae2d2d930a46130b32bd411ec317cd810d5f630e28630ed112ee38f39ae16226e6228eeff7b86854c7b637aee771e625792658f19c9ea8e515f3fda6537e8c451c920d89480a359ea831b934343807cc539522b992f615af4639fed13a0d7e56be77e62bc29656a35a9c4040e66342991e629ee6694222260a9018e3c513f346783cae89eb99664ac2f53cd6f0950316d343c7338313247344516e4bcbc5ff9a1f2d4d4baba595fb2fcbc50fc31a6b69c2f01526b9328fe16bd4e1c03158f2cc6019bcea78c298a73a7ce5ce1e83250f0c963c222cdc966102465eda013ff0e469b42e347bd0b0c6660cfefe4e05b933c3da8537ed2acfd54cc7daeb0304cbe206824693349ac974af1b71c739f4ea2117edbb10cb7fec9abffd186e68ab0db9c83d37b4d5d82c13a179e4865ed9a5b835367b706bc818ba903b5c16648e3f37a4c51db91ab7d5b6ad56c3f151190b7227bb21c54fa686b2202717a48afe50c988ec5238cff63e3a8c3c9e5eb8792c4d149bb53a523a29fdc2954fe7386582d0d5aa669a251864ae5679be07f95a356b70fb474adcf922326eff4c923d8859e3e95a7627b39ddb449c83405c54ab10da28696d1322bb71de7522327cabf89b02d79bcb727bb541d0e40be1e295ce23f744c16c3263e8e7beeed03cdd7b5c95e26e2f830315724321b9697247f4fd44e69c597b6feb366df6984f660cfdfd24f737c1cde3755f102e3a8fcc357b01c13a68c6cac8cde10934a1346af664f698409031f4b710644eff38c5c8fd1e6dda232cbc97a00f93c70b892882a70b1be62923cc1060248bc0948b98721d42bee132ce4747e706d6eaf8e30f9cb210ffaf3f26468c71c8c9b3d87671b997b96d0e2398798634fcc0296fa110fa35fc41436f25bc6f756576ee7b1cd2c9f21797e3b6504815d2e164324d42a0d3070155a8428b35c8a8a2e585231cb182d7f646092e72ff0d6a2266f2d1842c0561ac960042ad8c2335efa70915c8e4168344bf622cb6a748b498bffdc4e2fa9473fa7079722778feb3c796e5a3668f6f9565269e49411f401f52b3bed37f130eb5d29709b27d7f8732a61f4db7d2d932b7c2eb2c4f5ed7e4ce1db8df5e823c88ded6b72e9e807b1196e9c1bee8ed8b420ecbf4b0bde8b717d9506ea1f5d49c3d95a83569030a916f95b7efc97a30ca1de90cc9933c6574ca7e3a73f1ad7593e97fbe87e3cd74962d0baea8bb74f643a77ab4e38bdedb70d4f13d178ea73cca32be86e34c1e65194d5b52286fe49997c1f10e73d1659e6a180e3cf33178cb303162dc9967799af744600fcdccdb199a99b0c2d030717fe5184c330edc92f13c83a5cc81a10965a364b0cc9d6930132562185d090c963906cf8c2394c14314b1ca33211661e871dc08e66530ccc76099b91c62e9298c5b39c3f8bce0d2bbe096d2b3bcc954faad642ab1b47d92456fc22ef3278dea2f619fb9e08d75c565f9ee5d70296f575cef5d304bdeaeb8dfbbe015599e0fbe0b56c9db1577f42ef8ca77c1a4bc5d71ef6f575c173ccadb1577be158d6482d85c7a9b4be118825c7a170ce6162c654e29940db4813d2b2bd85faaa12369ac71cac639d4ae06caa3cb3e3bc467d3800b28dcdf37594dab5451bf19f9253aeb8886251197bb336d557f4377b42d45f2bdfe7cceea93ca9c52294f6aafa5db675d34cde44d3453e2e69cd3abe7813dded50dfc31337dda54349209926b381261abb0adb2fb7b52e67410b4d62a2a873c445129ba49b3644e77ad279803cd3d6b79a4ac1d9ca78674c853bd843bf66ad5aa24ab154faf867eae4003e2d55805e143d2460e3e246de460ca32d02a8e522b32d19929ada220648e14ee38595288cc1d196815e771dbb66ddb36753a2053fd47641b720d9d20a47059d6de6b32fdb33c8fdb82274fa30e58177a5e380ee964a22feeccddf74b15ff7a72726649452a4754bc37ee073658ed02c99d0d0644863ced8f2a47ea06d3c9339491c91c2eee882323cb38abdc1d4c46165a1db09a85d590c984d2b1632679cead8bdcf3cf411f79912dd737e9c8eeccb5513cc011e585e38bc2d1d497d36995cfc809779c404976cc24adda50a69924dded3a54ee7478acf29c4a64aa1f0c1e3afd5c771553e49e4eccb63f474eb8720299803e2c48efa349a1ecd490e80730321cb4dcefd1f9dbf785de772f777067f6be5f7a78e6ede54aeeef3a18591e57f29ca21f37307277b2f01b92396edc91c53594595c7267cef01b6271e57e2efc70d0b2b431e2cd8a04cfe6ed5bdd0f74b22ca43ef56a0d472e468cdbc9f21777ec443f746a68df87bf4886e7155cbd0335e724226fef6df8bdb833d36e1b8ab8f73a9cac46f98bda863ad9f1389b1c4047a7ffd4e2e5c2d1f41bdd5cf9061783f054bfb5174f2636882c725f915b683ae9993e8ddac29d69d4947156909c070f1d1d14ca526bc1701c32245730873bb72984be3f7d2756ac5a6f94470d3a328ca911e7c9711c37b912e48d0479a3a395f50b9e3cd971b6bc8bf8329a5ab009bf60172cdb1be9cf935479dfb1cc8ec5c3a709f67024189a4d574d028d28dfb622f21c8dd8cd6e5c178e4548a05ce54c8251830cb9fe98423dcb931e7c8f0526d71f55727d299abe7e291c6b32f72ce158d3e2f22be1785f4ce14b2865ea86a470b42ea194a91118b68452a6be901ba2886c8798795a4e470f416591171268a5bb24a40049f1eb9bd7e93ea7140eff8cf5143d7d48dc6ed956f66422c5db29f9d4f137a7e47e16692679a352466b9db4d639e7cff0709f37347da72477e4c1c3c33997cc1eb3b1a951f225103d83be675f67f610bdb5a337a1792c62826243aee1b823d7702c5205307b88dc4301705f757c0ac02de6b1c36d68d4115787d952eec8f4ad84b24300b3c7ccd4b7f87ea6b8220320cb9f562bfbcbd3d8b45cb9af459a49961f85be1c699e1f176e200e5da6db734dffa3df928f49abe873d3c97439d8d3248f367f3faf48e28e73169bb319f3397fbe60924adafed3a745c9e3d999dc46999ae6a4bf491685ca9c8f33d9c753768ffbfa203e8df08ce71f16d1af9be08f4a61a044818bee22a691af3d0a1e021d329d55f4351ca58e94b213bdb5960b6bfd2d1c6fd6691b48b9494b374c379f42ed736edbb66d45ac9c59f08298a1376adbbebe8ff6e7c22d1c6d0d8798a617e656df5bce3995d45adefc5dce979609777b3bebf424744e296b9d620c194bd75f9632f5add6ad96320da960a594544a2929a5524a2946e528ad42a8bb57afefd57ee13a75f72234d3300b548eb5d61a3e27b7975fdd9da343be5c4321784e6fc9ffcb2829cbd388cfd9831f2b28a5403efbd3972fae3f9d2f232e499342d2e49c73ced944f0a47cd9547afb6814d22b6fcea651d48d524a69534a292545713f4a29a5df97aa58da2c5978b23d29d9c84050b278511f9a440a4df6853bf1568d8d328060593493f61192f244365dd3c9945a96413b74e6cf903ec952d628f9739276e8c81cd00b9776873a8d0a72037ae1caaf20901952ead4bdb9496f8ee6198e45643ad4281521cfa32eea644a2da80c2e60ce72266908cd9e5cd1ae5e4d891214e36236c99335344442b9a14eb9232a9fbc29974e397d347f861c0c481e49bea01b45ebe6de0577b75d10893acf3fd0dddd49a311a936c574dddd9dc432e79c73ce9eb3594aa59696d9c25222b5b8b4b8b8b89458565c5c54ae8b8b0bc96504bab8b87c47f0ee9cddd3c69de1489b64f9ee2e3f284bfbc61dbd1545ad1bdd2cfd5c97ab6f5c6bed675f266f65f9f58d3bda2ac59dff813dde0541b067db866cb0bcfddcbe46714933a49f2410c84cbe574565e55bd9b6af1cb73da593658545e5b2b0b0b0b0c08cc60d9665d83f6483852c32f0e877d8d475fbcbfe3dc19eece15797b87bcb0068a6060b468c4bea6443d30854ce76295c235e8c18b7fe00a170a7fb943468997586f23dfa838232b2fc91228b2c43963f51fce4eb9239fea0d0ed231dd0dc7eec8e9080648eff588f905632a73349b9f64b3edc5e57a65b908ae03bdb8fbf0abb86744aa016eaa273ce39e7ac5bf56aad75fa4b91945fe79c7386f5b99778c8ac514a8528428256d9974fc45cb5d8bdbc1d2ed2a91682c89008172141a37a00f7122104098a34aa7fc4b25dab80f22613f238936dc8e3098ad70d1463e49f2630c83f51249151507852ee4c2907c0bd10ba23cf6f2aa544356a4a29a5fc5c70e58b985cf9dfbbe45e7252ca71c837c5208d96b872ca9f949256ac9074e69d56d551ee50ca9ca986675b2559e64aabf8a5a43ada40eeb39ea8eb449efd38701b5512bdaed22b7386a5d16824d72e5cbabb7344a0dee7c5b451ae7fa5945e77774aa54bf72abced67ad3450b094d6215b4bf5fbeab3d279044f929620123dc7555a5b25fa592b88c3f6a2b7a3dbb7608fa596dbb8af6010fa5c387a11e656eb9c9392a063e094fa4b7feb9c735c7507837848e97beda994564ac38f56a1b340daea7cf9763eb5cfcdf932cfc9cd193e27a43e8d11e3d6e7c01c68adb48653f01c48afe2067b2cc77150b47ea0f0c9f2078a95a9c11e10c8cc52fee0a7052b1e11156e7f97c415bd0421207a1117ee7b1d963cdff635acb6566bdfb3d556a74e9d7a89fa5b91cd5c68a5b43fea73361c2b57caf4d7b89c0c40b93d0952faee2e3a7245df236f82384829790b857c2fb317e3df178e337f3f5055dc317ce578c940a2fa49352f7b59384172076c69dde878987bc7ded7bcfa489641fb2a7b571f04df47afb283a187237dd1fb70cf361ceb91da9960280fa92c21fe336301f3343dc6a8816c76c1615ef41e0caeb606754cee93239ce4318cd16af81269befdab94dcafd3291d3cbefb0e63cf53ee6aa851cd86fb659564de5f68f104568de9af578393d4bcbc57535363c235b0175c93454dcdab069378746802a24ba874ccf4c6494b32a566000000000000031500202814108ac58291501468c2dc0714000c7fa24c70501acab22487611cc418638c3186106008220411a099a1198100752098bf643ba9124520dc75e9cac6fe2622fcaf8e802a75d8fb8cc30149612b175614ab84742da7af034bee5ebfee10f6b6c32d8cb5314b0e761357c4188fdda93721b79b6507110e695a6ee194d670030153bcb3d4b5d48a25c85c792dca82535a4df304621d7dc64a8bbe00322a54f3cb67e4b9dd37b6dfffbdba4cb60c92ecf0031b5ad82bcce40e6eec2ef43e4bb5742918584a4ae1be50bb3f072b0ccc0e09905ab38cc8c57d27e01d2226d6120e4710a1fa7a8ac72c8f8703158f01e66fe426a8635563eab8e9882392cf7a42b9ce2a7608dff22f6be16518c5ce0767820b0a3d628c7d6599bc01174a441966160038f65c0bbd006113b95b834f30d234a11e4d30349d9fde716521034fdb3e5a85f4c63c342047ce8ab7fd306ecc6f343aa84cfc2f0fc9d4668e2513def3dddc82ccd97fa72dc8f97516b52e8dc7d2a2fd284af3bb2c5a4a4f53ea9c148fa60af93727eb16de43d5eb9d96800ae645c9e99930c7526ee7639bf1b20225b1cfe6a942980211e6150f15646b418830aa16e977fc5fb9883b5e82ab810630570bdac2664a95f875b4c7866f7d26746dbc480a5422a74b149ca662b1d1d8ab7ad7f74025902d27bb2b97be044b71cb064934096c49b34dc4d2c0b7408489d1745e0eba8d9e25a290adea43e32b6446f78c0cb5ea616e0cdfc3d77222c8302d48a7071f59c0cdbf11e6e7629c085273cbaeb0daf60188861cbfe5a3fef056878a7a08b0018a1a1b904ff29ff242279a6f89bfe070c41f791cf3d885ed5d71b3527f07d72e4d04ae25cfa0b88814666d20d2f7c8a5ecb7722ebdda4abf370551319ff6c2a59a9450ff69d8b196e55d240dee5d6bda248167408cd208e49cd1eba254a0c6afb3d53d94eb3b276dde501f5f697626994a5aad59979d757b4e77e0d8cb36d71cfd983484d82b767742a7356da2717eac7e3462036e83836410317706e358add4265553b744360256cbe524406b08f43d9ec23334de74175f0173a65c1a61a8a204d2c76df8e37d92cf178c3b407b25d11741d2fe6754d126830ddb15200b3070723f453fb3895769df7f910d688ba1db821e2731ade5aa9a2daceebe7dcf2e9f99ec0376379a551956533ae8b8152937f0c9f43d57e61e5e49a12bb938625d795880b8edc540e4a7abfef76791a29bc5d3dc3dfbad575d8df487952c0483379d2b47611eef00f9afb3b964f6030074faf4af454f39fefd56f21319e98f990e072bba381e2a1aa18da8bea9c5761a5922dc403b2f457bb5b27a52f8bca6018f8f8931922e7e75aa83446075275fe4e8eaacdc44c6802e3e7db8da837d148abe5c02196fa4f1572667eea061ab1d652a2dffcf0d3ec6bde467aba9b6be8eafc281337627c1e09f7bf9d100efdd0b7cf919db0dd0e249e29396a55dd8524560ff6b9dc51cecd3e11bb7f2c8361100dd39e0cb38070a2f4890c35db2f7a879847c69bed47a6109f3112e38d5e65066520777fbdf403d3d3fa0ab130ba9d4ac2f108f940017db467c0bd95b6dfbad7dc92c1d27962c48285ca23bafe0a97a293a732267ab10fe0c7bf4e4a2433f99ff7f391edca79de005bbdb33ac187189c72766bbdc2721ead217bfb262cff5a4034909d4f371a89250087f7194a97df2518246bc0b146678ba8a16859b1f77b36414ff809f2782254ff9339cf1ade469788adc7b94b256900740be88184e04a48b1b70c46a42ddd63a6a143773c3795eeb2c349b9c772e00059c05ed5f98cb2c34c1b4fcf84de07ac0d8f695712a5a7cb358ae80d938fca413031fccda43847a57c4458146f66c5e6920bcb0895c2f1a8842cf928131d0511c2ecac61ce1da80ff936744bfa3749165a46a3fe9b70c47ca9c455600892fa7cbdcb875644ff4e1e9c2e3b485b3ef0af68834c7f4aeed8632b2b8629994d4c4bdc3d2a6c0a1e69116eca65a64872ce91f85390a1f35216314b5951624c85e44e5ad826a2e6f52f241cd7d709b8391e4086f831ba4d9cc986a10f2724225d721ab9374620812e7647283f9f71218f23babc19aadaa06981009bb0ce2be31846c728a88a7feaca6e2283090345c0bd4f60cc7b344b8d8705cca9436715f2d5be24751a409d9d8d9b8d32f0042dcf2b3cde5822c8ccb422dc2014404255b77092d57dd177a2033f9643f29840994e26036591d826ecbe4ffbf38495f6b9fe0d1343504fcf2aa1c26d03450fadb9b72c91edbbffaeaf73a4d45d023dda721d6697559b2434b1b587f93c13ee4862975d89c8d81b17ba63fdcd0aaba2a4b7996f9f6fb844749a21cff94d40d680501eaf5b4ac1569e06dc00d6304c546fecd2eea1595cb0e7468656a52d68ecc8617f2835ebc551a80cacbd29eff8e81a947c8a0533763c407fa87889fecf415bd17f45f39d01e372f8e07ca1a8905f56c9b6a3cbc13936462270fc00f751944c1ed3d34e9c4ad744e3d0f575e985e2898b2eb286192e339f120cdf62428a8f4e5ab73f50372c2ac80ef1b32111e0f7020c552e5cb44ed28f1b428063d99a37228c4519edf353cf6f7146ae6226453a67a7b1a26e7e0043dc49770a5c88b0b97c689e43b94c443c2cb7533cedc0163c053ff1f3b596ae35bc22f89556169c4a252e6aacbdbd9f64d34fbc91917e92017aa72fa31f372596c0ade893623fd102149269379ec5b9cde0b825ae9bb48e850f3089aba3cf07865900526e705c688e7815f568fa35ad7b93ac2dbe31d7888c5eaebb23c00c93dcc830d678cbba8a75b95f27d547a2c86452a5540aa84027bb689a1ae01efdb17b31f5295c9cadc7e6b13bb39d01db09847d890355c36fdda701e10a2f779aa068d783afbaf632f4846d8916af6bbca5582e25c694f5549ba76a10c7baa50e4459db7a2da05982fa4993c998c00afaacd43a925adf0094f9370e36df7b828643dc83d10bca44beace96ca478a6a4e883a2b9f0544b4a9175831b6079da93ce2dd5ad8f08d32c62501686250d2cd154c7ba84cf464423f741c822e2715ba1c17201db4be57e86e184be88cd51011230a364cada20eda1075031c93286e223100ccfa8c66fc80fc2461a8a58bae553568e46f28b808d8a00ab344bbed5a098154af8c9c575ae82eb836768691fcf962cafd8b3e68d230d69a405f7623f39dd53e1825925bbf7fa3b92b60be05b1fcc1f462039d6b73552ff5d3fa636fa5d333d5aa829eb49f350e26618e34b454d52b0dde18e7c01b51b5647f9bfd464e61f215af5cdd26c5db6bce2a11a06118f01a5657992a5d40a153b8ba5130563c9ec8a4172722f5f43ff244b28248f674b9b5d2ad2241dbd20286bbb66cae1469c8cbe9b78835fb68983a1fb6200a51f38de56d26bb9260b8e57b10c80f22ce51fcf43c523233986eeadb8a960330522e2416f9a2e8f12f4be8865fba79be392194d76ee47841e35c33af0e65468f64f9ce4e7e61bd2f22138cbef9222686010943c8c0f5188f5199d2eae66ab323333878cc6203487ae2e88f11bc6272d1cb2a30b2e4be6ee425d694d35cc6fedd2a438431da43254064775a3a513e734a7f0756692a75f94249d8d3632965c6c52add464ff0ac139626d5696de608c59352c2691511b4a8362566d65b3df6856fc2a972af71a4045d1dd565707faa0c730f363286418041c6390fb8421a93d5f6796d5a11b9b0420054cc66e9226189a2d261e2aeed0887949d5d49da75fe1ca56243d3e396af5710dd4ba6b54f2e7f5f1dc3c46adfec1b5b90909a94017a7014a389265766ccef24172bca8cd54eb4b156f0f90d091f6e81d92fa195cc845b687f1f4375382b7ca8a9f43149aa77e5e37c631aa3affa6328c1f66b678dbdb947a4ca2edb97f6d09977dc86806a5559da8305e5452c3889c4d912eee5258df8665c7070bfab60a8350d74a9d1044a8bd559a4da28a1f391734bc2d88ed420a2ca97b5875304d57098bd05ba9494321662607a7817b8acf48c7dcbbd293167a7344a62d19da3c5edbe92c0f2055c3868d9bb34723a663ce8abda3aacc91842218651ab20b9dc7c31bc6dda796ce9647d04cda1de1dd731b48f96517c5f07975042ca7c524587e784a2f7b0bd5e63ebfd30c87b8168ca7bbb98086408f99caaf9b975cce052ddd6472026907ca56c068a4c8d2c26d6078ae2bde2993edac6978b2b663c82d7f6f6320608729bac12c4149962fa7279417b85fc2b0120d88bda32e1812b531b30bbda47ef06f78e662d3cc101fc88f1b406da8d05b0df0ea125d88125e96069092a53b6503869a1b9f34421862c669e3c217b15d6907c2a2fa8c2c3ef4100701cd913c29e105715c8ad23b6923928750e6645577d7c9a964a82048f64da2ad15fa7a766e6827a59af58d3ef00f1aee4aa480c3f3a0b3c4a30943235e9b5a17d3bbdddbd4c7edb85b923b1dbc4d6d81a3005d82a85e47809a3b4faf4f2f488ac1f0c9049209fafd70bca7d896ece3d59bc6e926d8ef17cc8b55daee3d9a4a407187f4147954adfe00dc1307ddf8d3061f7e673e7fd0904b2bfc7aff004c600f246b1db1f47a86d26ac25fd4f5452a3be3525aa9165aef7ddb4f8fe67266cbae00aba70e580c34f4c01d9cf4e95d1cdc32a1bd2517225bade8a019b2aba4dcf26a1f5a725d6d77b3d4022071450cd266b6bdee272effeaba32b78a204c172a380eb941c4c63d043c769bb84c5bbcc8221bc895afd99b74624148a4546027d3f683db5e96195ed59eb3ca053f27d9bc7026edd52c48390e916aa55f7742485f5927ab9ed0786d305419c5c983c7690b31417411c48113cf01a5804f414aee54f674fb806b5285a67a1ef2ee2c3b5ee51f6483cdeee22a31578847a028cc0950a99eed45e85267d31f531814dc25e880244b2c988d05357c921ff238b33b43a959f461cdbf3c88af8fd90ad933315878d77f44a183fd16681e2aa49dc807c1621372c09fe400643ac8ad8c456174b9ae085644db510cc84bf487a2676d115855877d1ca0389cb8d586728f782b213020fd7a546e33b3b67b6ecc0c2a938de511d1cc70b170b1ae343b41398c051788eba905954f335edd39c1bf53417a5417834bd30caa2d6a1882457e83fbce1f980dcd4c31107f798773cb1cdd63af91b8cff9469409868edc6431320a487c79fbc4e43e78a4b0a18f3db4c25953027155396d6745640fe8ac7314548e0a12b0366805f924b834a6c01097a3001b041d4067c0f27d280ab502802d425212fcd55bb2460dd43d18dc6b581ccb26bc403b448282d1eae3f9660ae0572d5262c6cfc02fa7aa7e8aaf788929a91676db1b743fb75c09351184b06276204e29ed350c253de22d23e2ea18203e29cea710c2c770004c8aa99d3a4cdd38304d78c2e9386177d7e489e469ca1e037acbd63f49e7f0817fe47c28ee45a7c9033ac411df91ebd39276c0d037843a2ba64c98c791b4f1b77a705075f9eb28f7cf001429c829b8f2128c1f222c42da6a95720078d30cd4397f29681098b67b14d0755182cdfd73a8057e69454b03bb6b7c85a378671cc5f1f37569b6544308186f38ba0567884e3c4ef6f88f60cc0233d1202e82469779b33a5ceffc51d96c876d6cec9087db1da108956255c74271c47a38e2fb35a2e611704532b9a8b88c765bfce1764d481a5232264a33456cc91cc3a031e479d642207880b8c21fb351bf65381d7e24590046216a0afe5143f1f8b8e88d17077ce7741355ed04660bf5398a54dfabc7be0acfdf95847fb350c0aaf5d7c891145047f36414839f6f37181ff6cb9c2d5e9d2aeda32e69a10e604d131c6d26cf2cd31ccab5c993c9e01d56f725d16e27bce4a4538a182da6a0028628c275d78e7f7a7cbf0f93691fa67396a95d86ac7aa814c3eccc21c07f39be5ab9bbc66180f0ce77c94c1426789913fe9c589f2ad152bd21bf968869d65e6ba067eb076313762b2043e73d69a788337c46ca571846561a995702ece6937cef9d0fae442edc52d95d746edc6b8dee0e46ce5dc34468a63e9291dd4ad0506b97f212b4329dea58e45aef15dcacdad82b241bedb98ea5fff1a250c9a8fa103ab91d2fdffe47891c0207fac2bcb47a95e7d5293d5347fac1bed9026c011cf4e01457c029528f972839868c38208f40987922420da52867525365e34295cd18536d037822fe416f7cf1ba2ec458853cbae9b89c4a9c44655555b4c1c49a66a31a21b60c5dae09354603a9f13d84d1c758042c049afb4deca7275f43cf4ed06fd991098c1d64fe2a0383f8335761bc6138fac2816a0523c8395a610fbf45470895e598b0f236932d0726c8c5b21a779def839d9aa40457d530432c4780cf1745c00de77bd475c48eeb01a45413a66e4dd8d090c4f7628fc7f33b0647a418c77fc9d99fe0f7a64462403d333480b5361284a3d0aaf85158d429a8a8215348a358d471a8b8a353488350d6195c69416a288158d6195c69336a268ac0ad4081ee718f9a83439f2b256e4e5845180d6d9031e4e01f5190c09c3fba5230b80e9174cc920b8870cfefd04d00a5063b4c05ac43be8f2799a2a8fd2e652eb03ade93f3df93aef30a019a3674fec9319e24a47fe2cebd904928a9d5b39b807a92885e91a0bdf9dd00c9fd55d60d64d60eb2a00b12e1fac9340d65120d521ffcadcefd655e0d59d09947fd6959db57569be7a9983cc45259c17f95338ad80b94f290fbd0936abcf6e9bc1ee1d31738b93a05f260cbe8471fc4e9757cb063751c2ff14f8c72e3db68be88aef8d2fd543e2ad4fed2b97d9b7dfb79edeae4676d51f719760c8684bff966b50653c9b8179cd885ea6039e6a13e2a8eefbe44159dbf1f2b3ec11082e05e263e41da128405b2612e37325414b35877daa98ad27a5daf09e875c67a8ac93baccb2dc59e0afbb20ef179183908a9693645d78172ad77ec2527cb28d87b083917bc343656956fcfc1095387d6c4a4adc1bef584a40538eb60848950ebf058c884880d70317f74e60fc9e71a17c7de03205b79c3374064d23e25f372d37b64110cd8acf688484f2eb391e7196b6fdbec723a5cc38dc23f695ccc6003cc51302b33a4435e0d1997f460faba33a521561011b097a62db9838cd0b679c10f7932b4cca7e2a3f404b1969b27ed6812e7ef0240c82a408cd61a58dcbf98b7d253370e742560ebebb4670c8f1e3b55122946f6d19abf053cb8deaa11b49e7088ab62a709e1ccf24694e93a3b9a83ded86bfb86b570e33641cc4e5e1c4f5a04e1cb87b10582923bd5e6dd53155d5854161c419488cfb044a2c29efa31c300e28f346477eed45eb8eca886d1a68e0959d22c896c27694cd75748cb926bc7a3e892ecfc7add2b48bb4adee70d63c830679c068d6d5c8dc2b2f8ce331036a20c1704d0f15a53f677dcd76d5e2b8b55212b9f7a5f65d056b3c7835fd14c6ffa4ff2ac5aec035f8531a172a5ed2a25649955561d8b24b39f894b7c5f99e6d4cf89a5b1974db7b4ef413b1cb7c71be6e7c17f20b1b10fee77faf9b0afbf9b2f87884f2aedb72a864c25702b8f982528ff6a30c05a4904560581f53cf20a16ab84b487da4dca58ae41c774e4f3df8cc9dd66a278e6f1577856819c938f6955d689cafbcea4783bc9bd6bc08da16af31073f78a9a9306e87d5ed1fc25bf1cb1f5d20d93f4a051cfab7560cfa7750ae08ad9094cfa38429a7e77e3d7a378c845454e12bd9de93889e8e96c3a5f7e5ba72e3d0dc6678d7e35ee6616c8fe03275c985af895143308184375ebc4a0c47559327b4c5ff02a543efaad653a8d53cec9e8d7b85871bb71cf77d6c5de87e9bcd9d12bc29c052b6d2c2341a0c899d1e78287b420e4a6674a073626b9270cd30c7e969b338283f196111f4a22b98b36c184b8403219b696136bf31958466acb6b2087c2e76467ac5e2b696e6eb1a6048c533b445c151aad75cedab938fcf7fd995983ebbbcf488ce0ca08cc914fdeac875a2133b9ed608b84193907551dd6365de0f0ca49cf5686f93ae155c7004cbbd34eaaf11acd64283e1ff2a0763d733a289497d49f3dcada885be41414a62534027c2b4371fbee95ac1b34510661ea82118417d0dcf328dbb4007c7bdd93683328d2620d0430142a7a820e14a91e98bec8494556aeb9964d7dab481c046625d9242ae8850265d885d6c039933d04b9a0994649e2e209a7088d78cafe311e50a93451a999583ab52e86a8ffda89334198a8410ad8d7003902c62c576344b1bdff312ae4ff9a060ce38ffcf11ff2df0b457faa7482f8cc5d3c26bda6e76dc776d4189c96574900f22c5a2e281b9abbe8aa430a8804c5b8a63801e9ed62cca6256295085921841a132120b448d8f8741b7c0bec4ef0b3899e837f09b456a0bf046215306d143b2706f81f77106a9784c6c1bec7b09cef410d943642161149d9b76dd59469cd3268b2d46debb4c6a365b6c049b04aeef0ed4d1ae49048e882ce005ac4823f0067900a60e2f1283cc55d82b5bb987740e7eb334be780cdf51b0dd866ae1a8582b58022838ef0d169ca08d5ac423b251a97d3d703f9c806b89a8ccc06546ec9f9305f5f9fe50bb9647247f55f108a2bf6a7884f607359e20f9538927a8fe54e12184bf14f184e0ef0a9e40f557058f50f47fb83ec6d0f903292413e1602de8345be0d82456406b48e620fbb5db38fa9b8541bf5fc5f0f823fe74549b578d4bf8e8cec896604e6b8a68a2cdd78960fef044a1a445091cf185198c94a3d051f3ef114aa86b7ea134060ecebb301feabbc36e9af09ccdd302b0c17cddc0eb8166a7462792cca62f7ec79c7ca3256f85518bb126c593bdda055ae36d91c6336eba8ca4f931628de781e8aa3b412684148f9a07931d867e6f608600954dad473c2a993a0947ed3e11d9137abe96fad3099cfc3419be1eac3fe23e850e162cfe5cbe738d0fd33ced39aa86428a30877eada8662f527652541fdbc44fb5226b5e9fafb4c638fd41ebd8c7fe4ae777f281abfce4bb3a4f8ed5f9425a365a4b37083000d214f8a5015c7eb7a73f09474cc107ad6e0daad5832332f50b109f7e763c725907d09f30e8571c3c2bc309f312835056fe29f9ab6e9820d7cae4b45a0cf265dc2adf01efd69e74c3dc56ac151e86e88543001b38ad0a4d51a24bedc87cd9060b1e465f6f349413088cc9aea2cafe6129c1b7e7084cf5aca04a56c300ba033e4f9754f15200962d137d2acf16cea61a33e8bc7d3418f86ec60eaa695b1eaa40d9c026ceeb859a4875717e051ef7305b9d93878bd30c51ee8210c06c70d7bb270dc328deee3cdb3ab04db66620ad2956a166be79889e7ac4acbe060e784a09ed66f1a66ab03440c6644e50d8ea2b23a4a0d508696b664f9e08e17f157f0c5f6e21f2de167c555112d4d5c565dc78d3dcb422a145569fd1dda398e32595c1c692f9e7a306ff6d9fb2db4f208ad2b5c7fb72b05b4163e181f68a74ab22505de9f779b2235c9ef1d434fce289cc7d9c0262aa7200570cfd00108702024859d480c49b9f49a10592bc466e535f7408e2dfc727ec08e9d5c1bfe898f39534d1b08c8a8dab83f65cd99e3a638ab294178d6c340bf06b3a51f060935820b93aba4c372d6e49196d250009132417c9aa99925de905c632bf69191eb0f749f6923365f76b72bf6fb8d6c1e22a7daf91418c2acec4faf995d9d388f896df4041a6c8389fbdf61b049b0c769965e84d7188404c597f7cf51768bb8fb9e34482542160ebd51f98c951e2c68900ece4fe536fbb3c4465d8da1f02ff75c6be0187b393ca804202a09f31e50ef48ba2841f696aeb760ab5638ab0c0117e4ffa4262a3c2bfa95616e68c74b3dea9ed21449a7683ce512fcf9f88b0076ab5977f05f388f56393d6f683bcf53e12568a47bc664b0c30b4305028a5325fbf321da66e4fed30d8b26edc0aa19783ba6412b32809dc5cd058ffafd1a3e5088a5e06b4bc6db158bab896a008d76ad5a78570a33acc437f62772f529a45ba2654270cf704af7ba8053ecafc2240720b8bfbc4b9cc6dd4e9fd6a034237eec06f9ef4565bdd2d8a51fa50f5ffaaaef50dd3598e1fcc3800d1d6be466048f060a7043dd13a21690754e488553540346f074c51d798a83adddf868def6c08f0c065c0daf1deb4de6863a60fe4fd2724176cfc6cbd9236b34bcb11bf73fa559a33256c5b8215060d4e93af375bb764c1bddeb0b437f1ba855e9f691a4854212ccbc1f9a79dfe8324ec906f12359a6992c46b7df2ce2b3708a99c3553cac6261f6e797d0989123792ab1943407e1636975749fc8a858d52b4faa52e7e673426230c082e1912016a4caa47408ddb7d783f2a7f09a72e74671587ec08e8b720123c2308df435c88c10f9b3516ea595787a102ac0df1693a231a75b37826725b57380cf2e0ceb49b5398aa5474a274410ae02f2cd68380a6506f672fdb2a363263432f42575153827fb7c481bc77a87a65661d305f6f0e4fc75e8861ec7e65f1032ddcd2213716d24a84643c44907e2e14d1bdde5c69b9ea580662b72f722a47876b992a585f55b03e0ffe66f90ab08c45742780afc27817d109ef8ab8c26bc195b089b191d7bf85b29772e60345ea06eef1b4604de2c219bc46e85b9549bc3a7e2969b811bce71fd5fb28a0d3c789882bc30b20422d7331a23ba5a52e411f22006fa04aa7e61a87ae45411d2f5876fe4b972dc5a9b1f9292fe54ffe5884c448cf9641e8835028bbd759a16f09ee532848eba1530117f42142efea5da34502c81858d51834e3756dae7516d35b26222d5f1db9c93c11943a1d72482f69e52c1d07349f2cc3317db3421d3cfebdeca637dcb9c7d11b41aff1edcdcf1d052afb453666e6213765bce3f443a352ecc03b23d79d3247bd866c712919cbb36488f6d116bd2418ea7e25a641f44230e441f0eee9f31f9e21da32ad522606729b4e3e06c56d6e86320355ef73357ca0f7dd7c940b6fcdfbd4cafd83aa59d57fdc4ab7bad347fc3f484fae7dc357b4fd2abd333de14abcf8cff05a5baced2259707d302aaae2175ae06c87bc81b38fb7c06a5afd1986170760ee5e23b5a6539c8b6f79298a64b2f1609c3fbd8fcb04585747ba4482cd17480b173633d944f0276f0c24869e434b9b0db173021d8c790cbc95227ba62c5ef819e48c3582dc878d451f35287c8cc5028f1d86f8d54985de8afcd61299217df182394afc1c29923098631085bdcba34ee2078a5a7b55aa904ae95c686ad5c9a44cb054397d910faa51b7124d51a1f002e95a5f2a97c7a43ab014377d6d0f2a4db7ca4c5161e24e0a42cb4a71553c2b0aa8a665292b839f423408a0c7c0a33538e6a091393034872539a03007092000990cc79b83a10f85090121100cb40221591030000090e067079e8f0684ce0cb7acff764cbc2614683c021825f10a8e4e0beb8a8b60f6a7795589c89bf390471b021907ff3d56d1934c9b2a86438fc423c473896338f4483c42e3afeb4d57216317c725bc44f54785f7b67b5e6a6e9fe56b2a7b74949c1a4fbefb76977aead57dc572b772a5a35ddcd3ac77ea16fadbc53dcd7a9ebe4be75664cee323b9adf93df915e945cb0b1c4e86aa63369d71a4f6c6c853a626959d3fe38ea4155f3e55d28f0b3af89f7a3db6b6dc546c976b36fb4abb45fd76b966b3afb45bd44f7b1345d6c037afeaa8a13496d1c7652d86d21effd858aa58daf8ab21a674e39b1a8e5e0ce6296f24d38e653267857b9a66833bbe1c047bc6b18c7dce598e6dee5cb62ddf748e76a09a31254d9cab4a6b4befcf193fd15e9fce495024f9038ae4a02633e0c4bee2cf66d9f04ee5c0ee2733396283d545d38157fabc163da6b683e8f523c5fa9755a7b018bd3a73a23bf400d4b135cf55ea4a2da1c2a115dda3c5bd35f78755586edb80393a15fe506b0ce3f031b7627b9b4c876ab123119147d762d36a2a7ae65666936ae04f5d7f814969761410be3babeeac9f919fb5c305e57530ae5cde948dbad944292d1445f3c4926cca2de16d924375c2d95e0846d5ff03899a47267a5c0ec65d77917a0ff28b9a7bba4822598c0a11984a73acbcebcd5cd49bcb446a264229ec3d648539e48eb40f2c2c1dd29ddcf586979942e44ce2446e7b88c6ddca9d00b090aa09173f2cc5f6e1264b282c23256fd4e1b90bd2f702dc546a894e9112f616e2e9610c1e6d9a204f1a5a167a4b90f7bfb3e92e1bb5c0cb2e15547de1deb71bc863df6a70388d003c0cc0534522b0bf7851ae94d20bdd2174e5242b1a68d72d28da836cdbef2ad404dfd9e69770d268e6fff5ec00a9636bdaa399aaad66bcf82f6e69a3e2a45df853ef97179f8a4f8e2c87543c9e58096a90066fe7c2fa06fb4d419976d625f884c90d4eb57b472b884f8f89345ef306e91d599515910d83ce726fa8edb493d03c13895b89a983f999e9dc74379b0b64022a4c5b60426b0543b381327be11a2697c4d100a84618d936a2106c091b08e8f72deb98d22bd810bbba610777084ef0da7ca29b93977ae68e495fe76fe50ce3b873cb116740f5a433e4c77d3db90e2ecffead743cdee44691bf5873a3887b0a2cdeec8d78db74a303ab8b508bf9cca56fad27a367d695c7d3874e66d04901c0de40cf729500071d2978018b5f1871d613c02d063b275dbe948f2acd0a6dde5293fa45186d54558f133b0e8f5413367f91d3a3eca67231d1126e48938595b07a3fcb470955e26c527408e81d09111c38afcd99d8c59738ee550031a86f332abd0965ca841fdd2f796afc7c8ad2514da5a2bc11d0eaa6dd5e18aca4167dd50182fccccc4ea6f91d03bdadf6925cd7ba481c800be37c9e4b218001ea267eb0e152132ddfd5f9e9ec8db2aa90eb6ca0fd615b0f7af81f95795ba4008c8ceb901e8403087edfa9dc9be27d9ecb0cf03de90d9c38b2961ebcbcea9b9ddcfb3209a2f486d9b3842c75412e74af50361cf0a7dcb7b62daaf514970fcfce51fe3d5e21e789324f141a5ce14f6a75dfbe98d0204d51253f8a484991abc19c670ee2ac0518ab0380e24d5132377afb9ba57190b5e887f18cbd0a28d76798a4aa4461f76ff3f6eedffaab5277d6d16eb2a4763be229ee2737307beaf18d3b6e6dd8e890805078710b60666ffc7ef06af131db86945a03dd82b06e4039f967d8a59fced39a987a210f9f0d4bbfdbfdcb0b3f99062129bd67be44b121699a03adf7cd6f3c152cd0933cf76a5d11ccc7a2798c747d6fb8122f815b1bb33f577e0e012cbd9e68108038ef2e059b0640eebc554e7b8235b23aad4a86f88ae832b7965bc6be3cfca1905f78c46fb6194d77d592553aab1d654bb2ab44ce2791b48234f43b1691bf5bd5435e2878f68591032588e2c6ec0d1ea12f7d13342d0bd61ebe378f8c40e768d72b05ea148f1a329d0d6ca909d4e90845d08272f45ecf1432abd58dd8aba8757ba2e9aaa0c02a538bd87e927c23d602789eb7cf3d213feb2fbfc6aa080a0b765ab2ce27cfc441cf06d1555600f1dd1feeb61fb41574c92879f6ee0a25b3ca5243d0e3799af9cd50791e31aed4a0eea8316adf4b63f296576fd1315bb4e6654db2f176c535b4556dc669eb9db0fed291c086b5f980d077f338ac6f62db71a79afc7f0892315f87c119414f0f550b12a036d10fb7e2ecfd7c55bea35552f827e81a51138f6aba94b501a46c77a1c5dd7829c44c8bd462ea21b5f737d43b5528739ed04437fbeeb4f1d8947d29105accbec8363234cb6a642b19f0d548e8d55488be77507fa701c4c21316cfb3de1ab88ba3af9172ecb6463cbbc9d1b422697445ec27efffb315e106536b4513af613a5ba9c307e61d5f06d2879c5945f8051e1bb3ed227880b7a8a815a25cb9242e9ce231ab3723c6ac27734560fc32061e248495529adc4adeb1808e0157aeb7f1adc9e6d00ad8734e282ed91274d17b7afaa57b2479917aa57d14dfac17d0cbd64d760b85fa7373291a41c18c717d30f15c0914748184b7f97dd72ea060e42f3135033b28f8eec6327c9bc418f20fa2e48391e6c227427fa6eb9695c95e3984af0df15e2795b25d6647183e3826deaec816059e85f03409468f8ada9caf9c765488926e2b08410db20019fd6ac6835f77d77673237b45726791daf682d77839d652373c42dbd137e5ed370097aef8217a5e558294be1337cbc190df0db5539c3ba7fee1f360a458c40a30eee38fcec2701ea573e3c2147cee59e7b7296ec459fb4aec456ea773b87ff6c55bcf2a5cfade6d286e9b115f152833005f93823acbbd9fa26d1ec47736f7981d0620256975217f928d42619494983eb4736fddb6d8360a7d8e24e8d858a8b78995efcebeabf72dd3bc292455170d7ba73a8535d63ca0216d45370980b993af1343b1c419879cce2e8c5ed28c187e40758993b28c2995af8fbb80126448d080c520e6abacc9efd2a6c383bffa45b5316bcec3c6b72b52a5c030cf29784949ad02b69dbd170674bcd7cf7bdcd8efbd1e8191e33a19569050073c13f8c5128fbd5be0a2e5437be0dfb277927ce6925cd9c6b22c306f58753dbb60be5ea3ca4231ba87a180c048700808636c5c6e198389fd09a3449aaa14d93e61e013a089d879f28d673ed2c94907a68b5d074680d02cba55733398b5156368a579b7921e34cb1cd1b7be359e7389bb418768e1dfcc96357293294a50a8cd0d2dfc826b408b91f9e04e9bde17d038b5e1bff50975e8882b56fbe993aefc82c6afaf896b8641d180117d7d51200446e6768139aacad947c63ae86e2822b3321127895ad1e3a86354522e31604604570303832a536706cc1a1765c3c6b05f77d379c630766e5f7d1569e8e7aa18428919adecb6f893daa8aa16a51161a034aa2095733e58c7b6431ec79982e947b8527cffa7cb9ab439be9e449716303e105f84073ac7560cc2d3b6bcbe17976ed339571474180a5e8800bf8f3d19be711a364ef585ffe34267b93e5a393d7538c4eaf2b6aed39590aa265f72a2b4b58d65c26a5a907ed202cca1bab098fedc4a2eae24582fa5b42b2751194af329c4854f6839b5ce518a8400819b201e44fc162bfe43c83eac5bc0fda3099b0d17c6d2a81511e9eea452c5c6b64a791ecc127b2f8d7955b62e386732eb18c855360eb2c41a1a70be2b4586c70d94fe9b3385a5f67dc31b49ab0c479a273abdcb5f753240075c241fb106e70f0ac410d30166d57fa8fef63e63dcbdcef175e6d985c94da88c25ed4272cd9f9e0cb08bfdd53b5c3497d1511f7d33fc3b356fe90be227c43cb451555c773468279e460884f75482e7c78880fd5817daea93a7caf99b63f1d41d2967a9f244f8b27ab5c62f7500454cb00f0c86f0606f0986f4bd1c4d789e17fba75937f7b1760bfc6b22c2361305eac7c0f54d46d7439376e12c971b9834199462415601b59724c340d25e827a629b38aeb1592601d58524b90c88f019e4bc2ea82a2489b54ec36e42e11bef9422eb7da648fd8c1efccbc799089727855dfb32f8892c60e13594d86e53661c1f014d4c777e0bfd2fee83ec0a9238c21d1281a6b799c029daf93a71912bdc9e602f22d1c5232002ba632537d243388137ae0695b69ee3f47c64b9309290ab4e782cf12616bdf75f070390bbb5e8ba5cfd8e2286e60a846aa39a06b3eecf961b319c68582651d622a2bd6bf0c8f35a65dec558cc3da6166c677631745f63a92a65739f85946ab957c838466ceea90e0f6e4661d0d8cacfcf7690178ba6de9a003f011e377a3ada1e6874593690b7afcbc23ec18f0d7daaaa8f3b20f11c9638b1b42878ef49aa6485c62742ae7c72b212516f1aa7a60ed616d899b7e829e5c14d5bb992cae82119ca09adcfa7031ca2fd5b4b56ae8a760e2116e0d73aade8c9c5120aef7385d51785a6824a8143fc09c1b20c086d307ca71ceccff7e9c8fef0d33dd1eb1e6e8a1ce78c901a4f18ec1ef2110e162cff2751b7a45adb39c0bd66b0b9716d60a9e4384b4e27d09e5221951525e281c8092723c532ce8679c3afc224e8991913d49575d6092d0f56ac7efb6a0bafbb9dc1cd2592b6ca8da4c7b591962fc45c91e9d51f511dc8a0bc9220d7d6a1c6f864ae3dd82b5e1c453d3854ab9a534f0b4331ab3f3e0cb50bdcbfb702f69010e7108352b7632d0d527a2d6033654ca29f7b2d15947f80b3fd18a319dd505b220d7789116bc65a6a97a576b884a1655a45222f04284f6011e9472b56c0b0c97997007a60a1745241bdda63dc7618aa94234e3f1812da97d560eae370e563579919773e3695d983cb769fa1f88a4e0fc49088935d98b7855ea7b65fc584acf21189cccdee2f1a37c63475904dc2a560b84169b6e8d95a9fb346f4fd4083a00cad4499c8aa36184f5bf5d0826cdfda58881a7235a5194f9f1030cb01d2c7ed86e6fd5435edd1e0027f1200219d2826040df02f42a585fd597841bfcf5a93f15560349f319c468825428f6d9aba9542619af97ffe19d1c0c2d927d7617bcd6c5bea71022153d0a7db478ef8869418b6ccb3f8588e67e290b4f64da2a3649a6fcae7c17c1547a335a5a4b9bb7845754dc5404c4690d6002b528e241e61fb042b146c3dccfbee80a2b2b52d8d3f4b728723ef68737591b087afe51b697c9686bfeddc84ba6f9e1cd1b06b3e246b3b2de5bb8c1c03601db0c983fe37a7d30cdddad71a93591bc6995dceb85e4d2b146586bb2811713649d30aec94c987dc0ab13e2bc67e75e2fa9e28c3901045f2341da7ab29413bf2e63e62b260dc2f6abaa8f3a9c4549b0d5399e049289ca0dd80ce4100771964d1b51a51ecf2e0d4bb379cdb2320b23e51aac00000012efc34e3bf2eac34d6e1d11fee8b0c491c46942628c806766fcd16b9a8aaca206fd61f0a93523caa85987cd8bfa82bfc0fae55d3d3957bbf7159a363f048926ffb6697f0ecdf49de984a4f39f2cb0ebd5885293074f89f6f0f307855489d5831aae731b244dcf8df9cb9cb2441333e388f19fb971e4f80add5db9c18f4624a4709013532312b6f138cf4de2d48d437ef4425cbd58fea54e428cf9391a4e9103fb969574713db618ecec0859fce31fa312e8e94464dcbcd61a1a470dfa0446babf93384c616688db3b2a70389b9c193fdd6117aa5a76bf709a133773f84386ddcc31b229f22c632ef3606d1946f9315136104e206668a2254414988ce90c044a68a4d4db57a52b530270a65743744e9fc9cb97e0c6a112382a8186a6678104b146443e16d90a5aa29b82ce730d5a12156964c4f944a21639e2901e7cd9d033a21b68edd838d79a5965bf32d4838bcbbc1328b8c8f84db09553a9dc664e821894692c3cf741ce172d7ca70d2466e8d859ec5c75dbefa8d074bff7750fc6ddf7c5936116bac44de46d96dfd62eb2fabdeb1619a84e77fbeee4b41964e91b8f3a22a2885efcd1511556c7347b535725c50069df269d79299ab1c24bb2cf479d8b7bce4e90982742f498f75a6224f149df400a6d505afa9d141abff488db2a6b0bfee16ed59a884c6711fb617d63b3d268980a5940d712ba85fb3a05e34eaf7da5e138904c953e4e1ddb7b824ec231aeb5f78c69e505925c8a8cd20fb3f27e9d3e0f701449cc210321d1bde8844e9d408be9f40399dc20ebb35e88cd28c0a000c168fd7dd79aa934209708e5bfc3cb3da9d716dbade55a6fc212aa6da952ca91f744e1ee8162283652a43c213aa96dadfada270a26126258299dacc0cdbb19fa0855633811c7eb865a9833604b6e3a61e05945068b274faf2b76818bae713f7c112101d9242136a9895caa666ff78768b2864ffd490318c9a544be127530f7a344612e56543601c683699dc26b918fd788123926713427f47b5ee22d6c2b8f4f0e94654a2ce535807e373a087b71f7727aa5e8f02591a5596d1aff2a0e074abfe05a80a0c9a2e9d52ea92b7a42352d917d210671ada41531cbee281da7bf0ec6860d47736a4cfe3a24f6412cfd6f9f6d2530040b8e815d281ab203a41ec59fc2ac9b73c77e73bef9436d773a83b6997bf2a14fff80840ee720ad88af4be1e6d33e7f2417a8a3de6f453f9f0df735ef0f366598103cf01406759d334e6c53690164457a7dae3e9447433719e0b1b2f7b76a6a6e1761d15d2ad8d2417c8eaf924a6372aca0de401fa6a8d7854da5a02cbca67f3a6508adee43546854ad6fa598facb20f6c4a93ac1298d34b0296bac12f1cdb848c818d249635f09a9ff6b247c8a71b001b04802622f40034d83ab0dae1525653a1e7f46227b7a201722cb98e37d1528b593985915674369153f0d56b4eae78fa1963dee53c4a0c05c3b23e6507ec4320aca7a76d3e53993db2333ae624d777c2538483542e3f153d923b862c174d790ae1d1fb233316e2e90c75b92540499301ddfc85bc7f38057194a349289833ac8500d6a021715b5a9f5f07391a143ec7e235dab00a503c0ce09f1617da85d85b6bbd45e4ce11f6494fe89ee472355697b258a22a6944d2fffcf6d4b28ddb0eac6f50c0c6b5df748f5c175cd42aa247fed2e432373c8e2e26c61f8efd24927428e5b6aa4af6995ab37c4d541c46cdcc443967f7f91475b74e3857b78524a03d19bc12fbad9b1c8305b0b7b2d1e650428be46b698b71ba0e05701608c359814ecfeba50ec63966569ea7c3da46a27fbcc11cfdeeaf3adee4104103482256dd2ddc0876742690a1ec45fe986689666e865fc987f95d3c3a21b7579ec8f68c979e8c3a7235e545a591cf1e86ca5bfb158562019ee47630359e62f55b48ac54984836fc045625b6f38be0ffd27b9b9a3384ebc5e199d26ca630b7dde6c4a21a443b52fe089f54679cf01f584b65b084c60d389064a31b9f38c7bf6f12c8a988983c4a71a24c04c2c96782633cd384b0562fb68df474b96949b4e97e21138f04131b4275d2f12bc6850529a1834c74bbf33fce1a8abcdeefaafd88c4eb4d48c4e73175308dec1349cbe7359b0bd8b0ecacb70d14ab5a8847c918162a8e94787ff36c0346759476a79e93902e165b243472687dbd61096e1516a59ec6c18bdd127dd9d91e9bb292419b3200c8142826bbd6dba56a5ef766663e71b613e37d19f1569ee6035b2042510aff57706741be43891b982dfd9e0114ba37bff094f45a3b5d6ba88959f5f07231f69ddba82139dc64e57cccef2403f580e2af8d1700e58bbbca6cd3f7ac0c7c9be42848e0144363f33aabf278c7acb0524cd893bf63cdcca88081114d6fca16773d188dd07bf771f3ef8c704ee52876eefa00cca3470eb596e75839b674904ff64dabcbfc2e7b3cf4475e794899d12945066c764950f4177efee031de156b706e059930ffdc4a5f72f7063004f733bc9c1e5537fd81cb164037fd0edf74aebbd37382f9be554e21c1c2d064cb2b216850bb7a2bbd519a6f1bad53d2b96eca8e565b6efcc58ae10ae93348ba12091121b87caf7bd979c73c023b7d6af756f9941b3e2b5cedf80a2ffa126974a90acf23ae56488b70cccab458c41afaa253f1c65693a2f894ba1c7fcb3f5533ed1cb12a59412599a05f36df6fc1b097c542cde0be312d5433750cee410d43e552af518bbf7975d40fdc1e4a55c911543f25ab17f5095966f476d4792dc6ab375f632cbd489d867b74f24374e633a42780467afec769f10fbb0352a9724a5966db5265894e4a55e8d05c7de4af2c0d1efc239de2d0826a02bd91d0681dfebfbdaca925dc2003600bb30d7ed040dec08d18f4a68a379f15cb8d4e68a30ab61c4badd1b0dc6b8122667fea8c9b0840fd655fae195796e5104dee4d803b83b48b7d3ded0aca60ff791105cb61a2bfd3ced82a55a471051d8fdf9d42abc6334706f30d2cc1da05afcc83f3ab448f24a86a29cc674f6154ef6d1bb9945d1f3cef1a5f66afbf07c9ebda294afc6350ae6ac459586d4ef614e6d6c869c5f87ac80ed2de211298ae15544e83e964a53ba9146f3debc6cfa444e8b497e4468f1a50d4ad8fbc4ab6a2b373aa6657f390140cd7df6d6708f1f60700903b92af6091e93d3db9d677f7b53fe83786f001923710df74a150e7533a498edaa56ff145269a04d70fa1ff4e477e27f03e7ecdfc1871039e36e9fb85474f64291afac07e5afe344767b3cf37c9c91e150060392695a9d12675e5fc85c92c40ca73b6ae74b11755c074c5308702406aac327faf724afa11c81d26060611bd25c171094e29d3950bf6252038c89fdd7306e411f876c22afec2d4b954c005acb19d155bffb81f40d92733598e3507a1ec23f9465859703a9beff5bd823098fde476d3e3f09a7abf14e436f3a6c7e750fc95357761ba818fe0e755f75e91c66404b840ab4b297d7a816e27a6dafc7141a7b637bbb59e7c1adf55efa20b9812adc97862a23dc5bdbf28917c3688d6cba1a9643b163be024016a8a9907dc8a93c57eb5762e15cc24827d039c34eae502b928a37b292554dbc116940e0065aeb53da592fc934294a9c81c5caf02c1730b5e45dc999d084957aa44542d87d842e7ff03aa25f01060f4ba3fb84e0dc806a34c7066fe481afae0b3e06be46c4e82ca83d0cf724cffc582f135bc4d78f20e948c6e9dda81531218095a06385923152f9552208a53488eaac189870aa9274b78a7a1eac7aaa91b255de68193b2b0085676704fbfab1d22ed2058cde878d3c6fb050b1776bc528d2646b41a5273938bac0ec73950173972cd2b383aec57f204d76c2dc24c94527e76c5bed3cd139421296296f326c69d63c8859bab416c1f8e6c35264e2db1ba084fd87f2708f5254c6f7fcaac3a76dd615f775277a9fc20a7edecbebc7783e1138fcd0b89c86768700074b075c3afdc0303eeeff13e93c580abe1ecc384934fae620305edd1903378acc3443ae82344632a409b47682a2c1789b21d7df6c557638a951cc9a98af09ffa8475dd2d7440a9e6adec4d39a614ac259b5c23d88985795d49ba1599793d4652580868e366012076a71a5e824aecbb9704d80fefba15f030a8e878f9c0d7cde6545869c2b5dc40ea5cc3c57bf860ad0a965b6234b9f899811fc2c1590168a285272bb6b170a4eee01046216b54a9c4657c4578406833864e91f1963f2786a6b71ada7358ac1059a6083241214de5cc6bb6423b0134bb30721a5906ab0009f431e26f1202057bf88738adad092aae2e12542c81ddededeecfe7a386f1a33c038f62efcff4391dae934ac1461c16f159d6f7439ab2fd251b66a040dd9269ce600769810a1363142c70917a0aee1152b413ff0741b03cd64fe94bfeaa0b2ab7fc6c465bc391f3599472ac7b9309ae5c28822cd908297517cc5fd5f4a13b0ed6db1a8e9c996f0d860b54beb1507de974065da4e1bc0fbd329558b7e6c5dbf85f275393067f0f32a35b9a2a57ed48288e102519d0c98efc259d93573454a2cc8a5a9b7548d5980b1824a79fc2cb88a21ffb7b906ca77265cf182ac7926f91023980265b7aea05ef46139a638734692b9334f12c06fbb664931c5d31508d94a7fdade00705df1c260e7e05cf510d60ff034a9e82ef35de9e7f246ed083fb703d7000a55255d5eed0110f83ea6fef3cdc64e73872fb9fab8eb78dc77a590ac443370f59f3fa819964780bd4d9e000413f304ca8aeee5b05d73c9f89ac2b459c128865e9159674dd68823545f1e7736988f2940b4509c9bf07fdd3ce3b4f29e359d4ba81b4c6ba1ca9e1b16edbb7d0ccc77f422d73abf05c6c3f407cfb2c23405d1ef781b19078005ff85a56cf156e9810303371aea0893f5ac9864dcc694fb9e004249e10bb38af544959d74140510ca91c878d154b030097f576b698e81a6860a47df267f29d4981a714d953624704a8061a868a22e8a7830f1b1304250b6565c5772f275f82a4679911084b5dad8a85a009f562caae58ed4104c299db9e5853dc442df7219ecb7f96849d01dd24ccd4b82519837308eb74ee3b3b5405de9b7d5074ef6727700ef1da39716f9e6faa305375cd49879859bb2d421d7aa7254aa4b333e18041a3afecb79cff360cf2731f949d2895704d0b1b47ec19e69f59347b4ca7ef44521ae905b501589c9ac1a96d41e01a427431ac346e733aee3ae40dd4df1980ca246e1b07ddb0ec5da0c22894cf98a25809fbffdb31f8454c1c6bc46e21fa6c4f38254c070ceb86697cf77ef578fea2fbf35ad9a9b0c50e8748600612619d943b1303b7de8c9c8166cfea24e822718b0eba5c0e16ce76ff5d7fefa20244cd4b747ba41b7fb2b081c4cc541d71b3166a96d1a02ade1ff84fb25153e8c08cae18bb0fc952eddc99e13978c0eff5fa2869387de1201f2bb4ad05200648d044ee07594f98ca1a414e7e912a44739cfcc164336e2d63e4e258b8f28235712dac793e9ed58b663d986ff406746a704312641f677109ddd5c31b2498a51611875ec76dfe7a4dd94f527c582e8f14328da6d864bbf75af5c468bc1f54857ec312226f72e0bd7c8091df3489f47ebfdea5e8e3ff473205510019054035dd8094e4e6a8a9b9bbe956d39a9e274fdc0bde732c126d85f9e3635e5dbe4c7e8b795d222176ce6372bbd2c6ae5adf9be2cc8798e8857ee061744a2863eed1d3d141c0bb0c6fd00cf3187d41de7ba0ece78ff29d8607755b131882a1f05d4dba3b853278ae15cf4f82d6f33d5ad1990d801f848b2af3f34b2836410b33548ff97bb49444e291b629041df947fe304c80f81c7e1ce491cc57b312f3a553d36c3300c9d82a13fdcada6a2145668d83c4b046ac62376a3d5a2facea1a1adfdae99140246bb837fcf399ea9f032dfce7b8104241702607b9a14684c7621addd03bda53250aa94e930cd4c7e05739fa7d973631ff142c9c4ff290553fb81d1b1714574878456ae22b5be1f12c5cb64e350d1350e2d4066834350c3166d1456c47dff7018c5928074f605190bf3cbdc6dd0740b03c2e95fde41422da9e3887b42e752f5c72f8299244ea7a23ade16fc3c1452514ca07213f577cc0551f9dc6ef4e6e7c5f1458046a795d9a824f5e1fe4083eea8a5d4877f9f42fb81de5ca9f9d11cd56091c945d4635834b1deaaca245bcc70569ae793ea876122c8c9b8fea15048ce210b28fc4773aa0134d676b2a242186e06a1242f97e53a3e8fc9bcb7fc42f2f1cf3cbbced552447e87b52a4bda88af38e13ea2b4fc3537e02dee95eefcc6c54543c7b17376ecdf772222b7b3d7da358edc4378425545eb0a036a7f75b967714b78dafed67b0fe1085624e1874f33724432ca20bb82b27bc2d14b82c77ee0b39f406f326be02c0f75c23762c015480e8e045b92d14131ff2d213979c34e8a408590c756f90db9e8f9a80f19d4fcc30e24b71333458febbf055966f784525e059a19665a2887c14fe03c306fa8831c9785683ca64e4f6cb54e0203bee472672a190f8acf4cccf9d905c79f498d5ac7587b2a7ad48aa0d4907e1cf87a6a50f1fe35e5a742f509cd88a48fc46f3c7726f9487cb898a9250725a47b78294e9d71bbfa8fa5e7ca2edd81193cb5109a2f90166ad7dd2bda9f161c746958d8538abdc3bbb155d2e21cde1b4f57f3b3154e5d0a7375b7804c512d8fc10d9f6c9027f9d7a9f000e11e82e331c50ac4db1bad91c915324ebf5d1a84125270fa9f49d740b2c2b50a72fffaf425c1d70850bc88919796a671882abb224c812e3857e0de577ef73fad7efb1a29fa0f27127ddd5d11193cfa7e4c309a26e225614dbc83ed2d6c53a2d7f03794c2de9807a8bfaf1cfded1538445a14af87126f4b0e93e6eba74faf23e06cdc3fa615d3fd368653a3611e81a601af1bb51e950922056631542f254481bf28f7a5c781fddf6e86e02abbf6a001276c6143ac060b0fbce97b322b968ab06d16835d988ef318c8b802a0cc28a8229d72d06612b691476da5eb5f8a5b016a77a7d4758164886fcb14d1962c71b7bc4f1df60cc0fc361f83d6d011fa644dd50b044c2a27d6817c62c6a4a1c9c0549203120809f387772e4b816cd5f2d956066a13762e90cc35d5b517d23975031804df5768e6eb54cd4e0ac9228132d2fd38dd2595ddfc2e57ce258c731a425d19145988201eb6cc0db6f96320a12859dff292294a0d9fb54125e1bae44165886f7ae1da6a25eb35f432cee6cc94bc5cf48a5f3daa69ddb4539281a08fa935eeda1d574052c35d166b742789288442ba884a6aac56b427315ac024b9e78057862c675f25e04cd4e8ec3902b3ee12542c107be03076d58dea0f5908842b087564738a6e9f02406b6c05f81260efeadcb0037ddf80b8b57063b261a5a04f3d009b9a96ab2fb911423efb19d538974aa2247103a0a748db3c437bc8fb3498c74707ba7f6cd99c370db7122190414dd44ea570a5ac1f5cd140cbabc53016d06b9974830b96be651e12a5035c3094a4056146d0d46bebf6f68bfeb9c3e3ea5a56fe209eab8c0464de015021badd069030399960c982634e33f4005bcd66617e7b79b363201c6de67063bd0ed070c15fc2dd12170ce7e57ae0b94725edcd8c6d3e4864a1c3ae40e345576915f47b8451fac010adc001d29c1c4ac2a26b17073410b9f5bc557cb85c8525582128e9338c65184e88f8d17491da8cc01764ec1f7c905c0ca42a3085e113a1ba5c9045f960f0acf9704d07321bc7ae3c733ce9f843d55fb9430cd70f4c5b2c8a9e9985f941c2fa2336e70e687788a871d1dac23950b3c6d538fd5c7b2966ebac866d6d586f2c2b2964ced672ff04f64f35f6f51ef97b1c23950d33564c84604dd553747a9e9f2d90037af987143ccdfa20822eefc72bed314e942948a1cc3042941dd599c92ceb743dc40fa1fa5621b6cda6f4f82f9033a94f3b3ce5fdd3633695d78eb1357cf89816a06608081581e620f7eed8e1b08297c47b224a037d5c2e5c63c60d8f59e423b3af33e7558718b1f06064e4544c68a06fe56a309cf1741844b63901275067aaeb246d1a30fae96fb2c5f101c9b91c265d695a5d03e2bc52b3e1634f58d337c905e38b89c39750e3c92a15365a7b00b0cf3f1e48fefef5d9da03ffcbb3cf10e480d5b7b72fdde285d2698c5a0d27dd2a080e6eb48fe70ce31d6b97a935bc0d3e509b0b61657b163d572e86bd21c0556070577403208215cac7cd6e10a5f24f1194d1e9f6de22cecf09ba8e5a1c35720ac6ce3d083464a2b8ec00a2fa409130c0f7a48c7b0cce9a1d237d1068356ac1d343c0afb17a779d289b036afd1fcfe427ff71110e0bab36a6a7c422a6b47a222e780ea8238d08b5180ce77274de1e69c9d1ba7affdb9db898022faf42e272aaef21ee7731a01ed8a2fa0b103ae17008bfa43f5558485273c97c11351f960b98a74025c50fd551579ba3381b0651cbe9c20c79d923d6482caa76a8126227eba03a189b840d3fa540631a8535af62baa5a0d4de468c81c178597272ce8ed4155d2834ca82d73e83f2845126df61cf127e8fbc991849b7ea9c5a7bb959ceefbb77942fee544aa1b1c461146c178559e9cf75bd5fdacf71d8e27c596225b0c649a7601f2be1016e5dc4b8d244d9e2bd358d21729f828b95e7028e98429182dc09509a9e3f02e376a61fb109683d1d0c84c125f3b803335c337eb136dfe4cb8f77c491ecaeb4f1ac4694e69c5154841832b04fa3fcb2c88acc0b8894a44da2083328ca24f4f3fd18e6886e5832a4ec4f1386bf9123d5a8895b49e3fdddd859b7937e49e9c3f63373cef913c1e622b6bb8938a153de04deeb8fc3a96e3f9e062cef1102ff3256cbdb213a7c8c03b272e9c45ff3e4d45183f123ea026c12844e86c2c5a5bb4780da3009fde1a05404de9c2b615da476e0019cdce14b3713eb5c6cfbb0c2791ede221971601f60632008256d4fdd45b676c7f85317e29a4cc48d769378530407889e97ab9b91ce9b915cd583cec5b5eb70a0136b1d56f4718df0f7effd80f7d752a70aab947a5f86ad50738653962d228eaad2625b266124c41ea338838181faaf04add9969a4ed54b519c833a171fc4a5562c828fb88b30c621c95fba06fce950c38131df6349921516bfef48661a5970ede7913cbaeb45a1e64e6778e9c9e69c5ea32511e783abd4bb71e074b90a893ccdeacf21ff5d52e79d1e8feb6360eb45647c37baa7b442f16cc5b91d91a80e247364d1fe80bb44eee96a955ae6c02e86cd350ca2c41d83464c008d0ec82ef3017a986e9752ece0b282665508c1f62c51a0af723b878064f44f340aed822fbaf5ce62996c54093a1560c2014459af40df6372eb041cffbbb6004da8272074e5cdd2215f935da9d26211e2fcf1a3ba228f861f1b740127564eb7cd6fb59d7ed067c4576221f99a0b7f68a7297f092ba964b8346bbecde046971925704faa46360a03370a2bbc505398485f0e01d82784de4a69c0b909e25c15b9c4f57940cc741a6a8f3fc87e98e30c20be8464a33822f615b63fd18bfb20e888b01477cf9b1b5f75d938011e3ba2f5e94baeddb43038e6e79c85b8df1e574af54fa8c5da0348e98829bd8580e0b3625c6581640fa88400f696acb542b603989a35b4a4dcccab0a38a5be83b1ba52d4b8f907e8deac1bd403783601c97590519cb2003230647d5fa0ca49b37e9648a81249fda16613feec9c07afa6dfa1e45336286beb4494834317faf8dea8ed32d467b277401fdba7e2f24836762e398a502dd755bfdf3034f8b5db8246943ed4218f6303fabc2b99f3203612468a44d85adc300f41f0fad6c210f78e4211f66662968ab6825a52b911f5d9ddb20a098f5d2d37864066203e76ac5082f64c4ec1e21765390deb7d045c252b1174871ae4f9281d4ed710300d270c2e2724c478222ee1560cfeef7abf823102b27913a7436bfe33978ed6794c74150341194cb1bb1b4bb06b02bf2fa888f9f249254cb321e982c5395e2b77fb6914f6f762d23d1afef9cd0e37a611400efa813ee9589313c00a9c5d1dd7eba2ee8b4a84fb7312399f37c48ca83b9cb47da332cdcb1f37ad82e6eeb3dec960dd65b6b17d4ab8103bb83156b6ce1964b3fd775cee91b45a145c3ca6645ce69c2120a2f38ebd5b44811905354cc3771adc67f208e8e38b20954a0ec76d3d81007f19eb34a1bdaf3c444b74eae2e9c7b9dab83aabf213bfb157e8b095c2cd583fd62fe9e8bfca5eb17433bd52072ab0f09c71f4f81149e14e5e07d116a89beedb36121cebbb42139e0d876551aa78b3b2a251a15036667df500eb8db4ac9330f0bdd1977074d8508206e4d28434550f0f0f60b383b556d5cbcf56f5ad20fe485b9b8839987f20aefce0914bd13ef2372c1dd82a0b404f50c987818495da5c950ed692228a1147582080c5030760bb19c14f701c63234b62373b46a4d8cde2bf4c900a49ffd161eda956d80da8204d1853e5c2dd41645af969e5486e300378a083593689ba701667c070755b926de7c245d868d2840ddd2348c6d69c581f6d4a54110d50a95a1e67b5f44534b9f19723a916c66b8f9dfd976206f3c5c1bb34057e5fc3dfb64ec0c2638d2f584ca28b0b9adc1b599b50149817fbc480ab071198a41c90c0b3df9bc988320733c8b01831e783402fba45b44aec41eef6af71596a25084c7c9100e0347f4edb38d02a12f39bfe30dfcdb20cf14d0aa346ad47fb71b6f3a13174c297ea0a781133c6be8e4bd93de6982879491660a5618af77b12cf3f7f0cded4129a1d402034ae6c2cc7c1a28018596c25ae4395fa2c5920fbc83225c67501a8dd8c57545572c3baba0c3dd54c876517de2dafeac88f31784ed14ca155ca79010528598889c914920748d3fd5d90fd5b2c3c8feed4bda44f3b7f5da26e269b044c0e543581cbef1bd86cea11bc5ee0c6272b1a7faa004893127e78e8ab3d87a5d430df5097d4e9e03e58d0b844889253c596e9df5ac031d9a62d31e146a3335a39bd17eb76f30bf85c2548964a46af01ac45779b9dee3aa1a749fe465e46e10cd174ad330a62e7cc79a55450f8c625a4b3822adfc94584d11cbb27b4eb3441118d72f51b7a973faed90ec24795967f25d94ed82a40a21af3c170be76ac2eea573c4fc530ef49946eeb5a9553c2b5766236b6a8278bf0f0f96f61b5c18e1dbf67ba43c965bfa58c49a3703aa85a4586fbb6295d4d43f2868772ab2dacbe7a6c11715191aa7cd3ca8ed2486a048d5e5ec302471b9e51aba28465053c864482211c98da82b9da1a8fd6ddb02f58e66d5adeb4a4fb344183a28dd83036eddd83229898b1071310f3cf6a6c33fd042acf4afe0bcf081860907b7fb67a28bc651c11e51a42ac01f3a01b676545f3771545608ae7153ca05b9545f0e5612e1c0ae1f85cc2229b510e1f0f7c45652ecc48c1602a57100a73996eafa82981e0a310f7a3ca0b9607c45230245aa94138b2e004142e226a8165f5891f5185e388408dcf6919094ce684a170d641479a29022637d50da92eb71ee1798980ba54c49206050a2db4017143cf857e438613c2935809e8c1bc53e41400f96a9f55dc938c95609d96025a1037308c32b39cd73f6299cfdecceb452586ce21b9888dd436ae7a3bd072a6de0513c161a0dc6d3290ce840ef04af0ed84f430db5342ea0403066991ff087bf6129af0ccda6dfcb668e0627a2172b30ceb5e98b1c2040ac5429718b91830af7d40d99745cb072ebc20982342ec622a6893bc1ad07e84ae0642e364304c1f4ce439a224af16e95418e2370429f955c8a7dea613e91780a0488a92188e78a3a86d4313ee1474e3582d58e90c2587f13f044650e99b74238cd4015cf8cbc4124125de5bb92581eef2272047a2ce588abe99096cd76f429563274205025cc42a93a9a406f9ef98e8b2196d373839fcfc222cecc337500e71aababd5c5462ee05f1019ba60a6458ccc11aeb2f24399b32897be0b2afb3e8aa948edc815279e750150d187f8b10202d80ec76c54b452cca49cee209226503ad7c27c9af8c01bc69f6134a0a013060ca0fb000103584c486e53bb632ab7ee0a98c42913780981c6ef23c9aa0e44a5f2a25b239901dc51b0baae262dedfb48529c58ce1792b288135283897029285e742616cc493c02ed6b934e50064be45362c6a2951a71529642e4a76d29247c46a96dc583f52a4ea6011f84b8f81d4ffb499216028c149671193c9f031ca7ca1b8178b3aa0df275456959de2c02a4863006a399eb65ca44c04c1dccab5b0f037e6f753fb1720a46f6e80cf40cfd46ef9be74a5814a9c152065a5d7b9044863319741767d2c5d7fa7e7b1bb0ff242ab3d6fd786fa9ee1f2aedc56fb92ffea7f336d5f45b07cb667d6f228aa177572661fa1c3414e914d7064d0b770a63fd0f74d7a510681e3ced74c8a57c04862f2ebdc0b7bbb8c792823e74319c11ca38a367f6f10496251740b98f6d7bd2270be3b74d1aede6004513c895768f0bdebe6b0315ae35029cf10e12d8f17a3aebd46de913b019c30aa72d4b26c9389e93a3ea1e91fdf02189a0a39fa4f61027dfa0f40c54b436688198cc4030ae58505b403c175d8e68fb704a526553b2fc810b6a9f8ad74a836449299283a48d17a2d53c15d0c32657fa4e2781cd06f2644c3ad72416cbe2da9a4e52d29a08f4ea9c9bdb746299de22530b9cac07ca78d1f15dfd380928f98efad228fb358c5a094c2cf7941f88bc49387f7a1a76d6ac4a01445406d69e1d6e4d2ba9b3d788b792d240f6626449c121f853a6e658cbce46ed00a20c06925fa0e649e2481d7aea5692a476c2ae5f97c3c9665c91d747d50f25a96147023f56d3398c4234c0d14967a74c9eb9ceba8cec9cb80cf6101ebdd9a712a48e5c79934c1c7102a713d74a83a939f37951656185125da0114a2d66e851f914d94e1f6b074b714c882d4e804d8bf13409152621896d049c4ef82e356315be915d0b0aab4b8fa70062a94681a967bd5085453b6c897dde629cdb34a32c8178166043b4771b923c39874f273c5559d3836bb360f2ff2fc5decf02f82df392ed8c18047a0c9b9657401c59a5034d6aa86b838ae808eb46c3cbcb4a8a1baf2660e6781f5041d792e00cf247d4e12027b1c02ff18fc5e3442976d4347a20f2f7ed00b6b0724b28287080bf02627b89be18ab35852e3fd95bee2df79632a59402570956095e0941a8f6f83d477bccc2384158a73d7e16de619ef6bc1b4daabbd1fc8a9b1b38243becd81d8b8dda1d4b3f90daa92595fbbf3d4e55961716992160d501a484a3bbd7ddbd1f63c7ed74c4e662c70fbb1722942b9c01a23d5662b584559a16160695413637d5c7f7e37a6c08d4471348b0aa1ba56e1350abeac3f307518acc16d752798570b89494966c7cb8c15ec31efb89410c4ac833dadbf678fbe00751aad646c3dcb5a4e8ff3ff38582b930684c8c0ae8b740324340388c7f0c7c2015761fd71cedc5c06020864a758166c4c090895d84eea9807eb2cef84207a91fa38c403fd92d5bb6e439838c0c1b26c4c0c93221064d6a3f47e99c362d138a50d2aee34522684c6b39bc1f8ae3f35ce4c82e0c3af41c7ef2e1306d6ddaa5f9cc2e1f4556a962dcb74f3e9995f964aafc2a9f371a1f40158eb042e5ef0154e1882ac06faf89a01b1729a11fe7e0c4203a3b6d8aecd3a6223fe558156d3e1b1769afebd5310fc742786708517bddd31e12daddad9395607f621ca961fc2bd6516c0df409847f3d6f97acc21155e841b5de2fefe7b782e4340c0994453e902a6770a4aaa89b04064475b62639961af2b7dfba6f7b2904fcf819801fa3e4263b33cbdf7efa46e3fedbd649c9d1d8ba3ddc6aba6e9d748bfb686cd511047c9901f8d1371a67f9d66b1c8f1e307e50e5ca4a9cf0c31d4b0d18a3b63edac14f68dcf5b34ddd75fa0764665c57ad4d9f0846d0a859b19fdcfc6c07d7f0d71aaf2ef7053fc6619c6695e80952dbc64708b900688baa0f6f8baa8f367dde0f2ffef05b72858684a6106d0c68414e769f7741644035769d6aafbbc86894d2d604ffcb94644b2a674c2a7fa4d59eb2df328e9652a846371a122dc5d49742e4a978845252eca9fc11076bfac8b331e0c329547ea8da18fe8e838de1382d710831b530fdfd31087b5a150de380cca0d0228a8d261e69af632afeb4c712d482a099ac4b299ac1382033a316d014275cf44f214a8172a4f6a714b569d67ecad3a6227dc252a2b4699910a448ed20a924d48feed4d6789810840af5a33db529aaf6432f52fbd90ab5bd489b6878a1c991fe986a137fb758274f5aa23273a6a43269958286da29440bd382ca249dca5bb4c4caaa72fb9461776e34bcd590368d995d9b19d73b2b2043ceccbc41cbb856820c2750cd4c00681957803210613533536818c772237becb1ee07087666b24e5a6f61d0fa941dc1bf361afe8c033233e7460387ca10fef3f7b7e06f8fffdb2248c2c18a13452b44fba286279542e4a898624e214a11798e4c959470d4be60981a6d3490b94925110f218528a52842879c96714066b4cdeadac7a789f639a510a510b56907147eb47840e1c714a26da361390d39826a450a068e3b8c56692dca97f3e0c11f32c228e3c26e310c0bbe8d52a84a2965b42a74d3780556200c509b8e428b9b0d7febb30c7bd8c1d8d1309048985c87d1da6d2995b699444dbea797761a8e2070cc1d3a94353c6e8cc516328682196756c402f6545a1b164c6a7c8e362c7b927198f82d6afc99056ae32799e1d009b5f824140b78f65b27137b6ca38144529cc5dd7a9b36758defc3508d7fd3a6adc6f781d3271c786eb46993102154e36f8c43352621c20c35a5061a54b74a6dfa6464da6411c163e21a3d2fad371b8c6dfd52ab2182a7f633a0df6bbcfb780514e857eb593e734b8348cecfa4742cfc3bd3d230f1fb594a4574856aac0bf403853ae1e89993c1d598465df69ffc4afd32ed45ceb0fd8d0fb936f79539584bde7d250ae5c79711b3ee9312eb829a46d6e0975922060b3572fc65ae70a3d9bfaeab8755fbd9d2593961862218e1e51bad5883406d22824a5ab54488c9aa49756ca8b67758909fa4a4b4e4a224a57ff4aea6e37f95019326d0c049857ffdb4b41a395428d49e7358940b2bc2822e28f4c3824a5851ec1a2b1a029439c929a29a507690682b1c9f251b8368246463745c03fd4ab5e58f24c52945214031a70605050505711dfdf8e867f433fa19fd348150e013089dd0f82ae427f94d1da6234b8c5d4dd7756e2b50fd4a1fc6d8928d01050bbad840b1a2367da31f27436dfab0a0daa64f6bd226abfb78095c059564e4c0f159c244427eba09aa27c89fe8c0231ba36bccc6f0df8701ab9494964aff5894f65ab5867dd1327dca5005581eb034ac0e5dd3d6cf0585609388d3a6ad2b92a090a87e50280af9097b9f120fddd1a95891105624841509614542589150ed9f2d7dda8529c1f84ad6f72990d0d8b996c208651902d6eb77a4d4abeb86e0ea2c365887afecc115624551b29e362d2472385a0120b5b5459dbdca522565e9ab37a442214180a2547e08a54ffe0389dae44f8654fff1d3a6a461fa6194fa49d50f8e0705a99f54b9aa4621f5932a177a5279c0fa49d50acaeadd06245544a0ec2b77d2275eb9af34d2ca4f9249af9834a9ed9d54b5e70495aadacc2c35dad3d23e4575afd7c235f97acbce31ff4624bfc084142a10862098801c21d114826a1b86044c1a5b7797f9889f60a359de76c0ca2af605ef33c993c84049fd34920a5ada189ed09cfc9d6a2fe5087377bb7569d2f3164208bd97f6766be1be967fa1d134d63238e784737a4f9e0b002a9bbb178ebe1f55bb2a771f067a343684c9bc0be1ee2e1f3119a7ee4fd6da856f8d1c6abb0c8cdc2318fb62c28d868cca355d93ca3d72997dc1cf705413ebfe072b3b43134ce6dfdddd7d1e730231b9951a98fd33a586bb8606fc80689d5703636220f38ccc9ec3f07b0ed35b03fc1d766e3d8dac7a036464a275913e996d5e1a6f0da0c15a6f0df07577f79855f8341ba091d5d8d1c82aec640ddfe098c004328566b71aae15db6abc9fd9728fe0be803f533ecc01eb30b00134b6ddb66ddbb8e508bedc17fcb093fb627966a3f8355617596a645c61f771a07a072432b6056b81662c908c4c4ccc27298cf1e1439aef61b15583a2502867abdd070b04b94f4685058041f1a9a8cc1b6b9592ea93ba47d1a974322ad7a74f9f761f7cb9b5b4ed4d8ee1a72208192a394a8c800e81521a3ac14a79002bc24a318f8a076ea5d8dd1948b30e6cdbf82355dfb2ff38fbcfe573f76d5eb71f8db0d1c68df148d1b29fd9b6a56853725cb36dc4f1d07e87085075b4fd7cec33f9d9dc362ee35a25c7dde70fbfca8de6f28beb7712b30164b0240cb51f921ac888ad1f6440fe1613343efbf72e910405ec406d6821a5b4ff7ffe9fe7540f52bb47f18be23f5f416595ff1ca706b15eb7fcd7515cfe6b282cfff5131cfe6b272cfeeb26b499d41bbef40c2b7fd2530ee3df7d52b2e83e4971e83ecad25597aea553c1f1d8c14f549757f11d876384c70e0e39b8488d2f69e9bd158a9129452fa646201c590e28ff481dcaf1f725462bc09297a000ea26e98952b5ba497a9ef044293681536364d9b3862b87ba497aac50b3ba497a80ea47df7188648bb258c4e8945a3c174ca4ea57eae1a99f2cb5782e586eacdf7aa35133d8533f5d7f713972c67ac9e19c4066c6fa1c3983619d7c8bbb84304018ea764458e0ff58a0190f58ef810b9aa0f73f7cc8b2ddcdf5b073c0ce5c1dec8884113c3b9b3da19ba4278911d5882223786adf68d4ccf5cb3972e672225767fd0cb77c54b83a7a7485dd105ef751d4dd6c08a06e47c403d004bdfd89279a87dd7de28919eb67f42e11eb77834002662cd8643eacccbcdb3cbaf200fff3e6aefb6d639f78a2eeb7ff7202eaba9018b8691ba669cd3cfc4b0e1a6764885e800bccc5bfe4b0c11d366e67608aa67170ebac59832e40a62c4052c8b13460f4dbe3186d1ac5d97e1d66ce8c36ba332a2a9a06d999b93789f1c298ac2f171861ee8b1149b9d6d68cecd4b0aaa2011a356e67247703f2ee1025c7d280edb5c7b17538f6572481eed8a21daa406680cc348cdd45391cedd761b2154be88e2daa3bb35b00eb5fe376e62bd58e9f082ab461807a5dfe71832fdd728fee0e37292f2b4277ac2390ce5c3f19b96ec01d206cc73a5e1808fb19e38c400819422831ffeec3c10ad0c18d0690daf01301b481a25a0cf02a35df8c0cd197bbcb3892dd101de10be6be1881f306dc010437188542cdeee17780e3562055ca3935de6cf8134fc036c1eb391c394676c8541d3dbc62ef55203333fb1dfc44bdba8fe54f0e67fe098cec90a93d0af04519a7a6fdac19f7411b28ea650463e62c8eb06e888634aa925004505bb2afb6e00f1879ab1102589b5044aafa03a9bed10072bd37b7555e3fe525ff5a40e415cc6d1364ee8757d70e7958df43561d623fd4e010adf95f7f753bbc5a9c77ac04d609eb3eb709c61afeb0fbfafd757847b7e60a37c6d67dd13098b10b40ea8c0be02758877ed81af3302f8dbf72a759431472edb831e47335200a8542799f05ad8f97f53e44f34787eca3f8d1b2de2b854198d7cb68af5d78edb53cb3ec01a1a4bb25217c3ca11fcdbe40799c6842e061ff8650a88b66f8d4fe1e96348a397272ae81b2dce872388c8d9f586e581fdfea56467bd06ae293b9212303d5ed635005e5e0097273c3c92aa877c002e523282f510579ca080a85b0b02f1aaa82b8fb7c055705d45ecac687950e4cb54fefd00faf40a140f9637c62627c66dc2006861207f88ceb388c11f4f33c1730c5861c42386ed0a4f6ff20b516270bc4a8ea9c0d0de8b74238a4ecbeb2b7c0728173bdf594f41332fce5766c0ce54ef0332516d08f961c87d2dea1df29a9e3116b0fe8797ea2eeb487ae9494963cef064a6abf0b4a7a2162bd153b87abe4a5cadcc0c77321c348fcbeae9494eec7ceeb625c7c5efddaa797997ef85297d755e27f5e75a6b104cf8a15ee34eb5a0a285c72839c35800c24b2b1818c8c5dd2d2f242499cd338d356b550efd03f474470102ae4b58a4914e8078988fcd4290a89a01316a67f0ab51f422cd4feed145ca2d4aaa07de13fa331d02fa63f0686ce11cce3a9940d98d47e12f370cf9196f6f9096a1ff6f1e998a791d49e1dc64099e3d8c8bee06ebb4eb54f917dd1df3e9e6a1f504f31ed213d3ab47d8aa0804a2d42993846a0e5befbf19d0b828bd68be91dfaad15d0fe98527bdd92a25fa9768b57656c80c4732103f680cad8786df2aa8b986f81482e607847d08fb65092ea0ca8920f9edaff83717e46febe7cbcde39bbb3b35bd6655dd6657d24f6c12324f493130af493ac533471e2177110d53bf44726e8d7a81944295cf9093eef34aa73604e9b36890d70bcc8a3c0203b38392838e427f8b917a16007fb29498b443089a5a4170d3e2cf50efdce5123e8b741362a3ef4a3dd433fda4ff0b1ee70e3c68dcbdbf5f8d104fa2d51853e7e445ed5554dd1b2113a840e1dc2e8cf6cb1c51633e4d8fd10c2478fd16ae5a44faf1d3179665fbe4e82f28eacbd931354fb3988d45a361ed25e0eed6f54fd78679f0a1b2423538354ed97d1dcd606baa46196896c429d949e3c9486d91948446998ad5f4cb743e19391b2063cb55f2bb5b82019f13fc1cfc4df1722f067f4f70efdd00a9448cecfc08ec57f67b486e9e7aed44fd400a7f6574a3224480a1a3ca9fd90af50bf171c46f96f6135d3a44d49789ed41e5d370031151a5e48b5377b89aa6ea5d105559b3609d5111a5e106a138b3f57ef687841a836f790f95242886dcfdd273ffb091bfea6bdbf3f16358c06cbb0cbb25efa46935dd7635987310d6661dad5ad18e20a64df4829e5753dbc2e79b3cb06f99765f9d8eeb386905d6d4198d9c81e7ec3ccba2c0b01ebf166c3b20182bda017205ce5d06f819c33c618082d26470c0cd7bae681339343d2bd2a391eb0e70839b164458bd4e2dff2e38493961f27be90433f599ba7bdee69987e24a5235da4f68f8ea09faf8278783ece09ea39420e5cc92f9464dafb78957886c3b48cf6188657bade2fae93d19e8c1a28a93d1995f74ca84dedca9440d900b486d41e775df282f2fb699dd9f7936086bdf512ebf6a7647975b03dcbea2474c2dc976f1255fef8cd3c290e82d7d87d18a82d44ed15df0756b5bbcf6d92403f1ed29e0f961fed71cc981ffb2c20e9eccc13b11fede1c081a33dfe6faa3255946f3a61ae2aff0a1b1f78f88d48c19a98a7bd9ca8e327ed3bee7447f8dbdb1c4b8dee1aff0a6790aaf24714d0fe9616d0cf547142959f8d984b2a3f3f0e3fcdd5e439e4dd0cb2805ebe97ca1e84bad48c8808b4e3ef4994994025e9d7a3420c426d463f18e85729ff7aa95d97aa665cc961fac140ad8ec22ca0dc3b3648742c35e25bb1639cce870fbcc347daf4d3a6edfb19499b2eedfb398897fcc0ba1f8cfafe8de31f8d6325ed45ac931de3b4d747da4302d41ea94eee6321b57985a494524aa1fac5f82765b2ce3af3ccd999a5863fac3a60072386bb9413da16002208217ab87011e339bcfbc10240e040c20ab5f7799facaacc06d843771fd5b2acee83944919bc4a15a324d8a6d39cdc4bc3f43563bd0c1af672ba7bf7612f7f4ae87ef9c5995f9957a16c21493a3babfba15acfde668345e5eda011d7c377cee6c2ded280b819f05b21dac3be078d1edabb64b46a7c643d6edae41627e5075192553e94d19256b43ab837edf5c3969a71df42a994aaa88a52d5f660a32dbcae5d19961add978152d5016580d4de6820c3a7cef9063b18ed451384511b467b0dfde35bceb9bba444e6cf8e52da149515816f1c867f7f084fcf4e8e657110c6f97685a34ddd317498f8374878db199873d92f3059eb5de6e932bbbbbbbbbbccbbbbde04235c128b3c29168afb44e0d1a9d8c318a42af62cfeb0461e87699aeb2d2350ef49f9913e451d4fb509fb8e3ca4d813797a624f2c827591c77ffe8b3c7e84f238d6c1c8e35fe4b1fef3940f0f2a03b0879127f6f86c8cb5813d7c0e72436c7b92db0b0bf3f201c5dcfdadd2336c314c5aba360500a9f0e16e0aae1ed0fed9ed0d617770fd07b30774e38fbafb823b12a45075975037890f90d479f5807e9e1292300a8c828313a43b3f827e2cd4264f499ef688403fa94a653c7eb25e731f87e925b5f31ea912aafd92499fb294c3749ba05465293ff9114f65a9da427ef2230dd3df8e04769e4a654032a80215aa4085f93dbfe75b9ed5dd1eb7c756c75f2568f6d3b266c67167cdd794d8c3f7cfde45ccc6e00254ebb97f4ede6af4e43987e03a3b179c0f9d020834be15bb90bd67ef9915e8e55dcd9bc2075409fa7958f7494969a996dc57aabcb4273f3e7cec5dc46c8cecaf9ff3bf02d4ebe3b680d86959b7f57ab8d5d0b82fd6979a759bb9f02105105eae888407456af65f336c7e96d16418f69f4ac59e3196f1edd7d7b39f32321ba32bf63f007100ec310cc3300c7b52310cc366e7b587c5ffbc8abd0cb675d8cbf9d8cc3a8c3b1a5fb3f94fc3bef900a466d9cfe89f19d6e958a228cc12104a485cd718bca442623011c03a90cdcdd63031b96b95e1dadddd5db8bb574b7982efeed8ba5f6df076771863f4eb7a6786cdee1ea165c1be76973f9afd700d6b8262959b884dd02b3641adca4dd058b9090a2b37415d7e807a13ecb109da954b40f96313942b3741b7326c79b9bbe56e41a11c77df21899250c8c018a14fdfddddddf59581b07b165f4c953c94d9bb9a55fed13ceca6ed42871ca829ac908ad913f625d2d6314aeb5028253413abdaeb8cf3b11111620c2a2a60b80140a07a2f4c7cdf6c08592d4c894b6561e2771378081b420861c76d590ea1c584c58457783171310125134c780c1331ce44ef0e1fb82ccbb2220520562a119578e4ee032237b8b808521024795930c65446310ab58c823db12aebd807b5c77059307acafdc42a0ee21f943babfa252dfda35435b3b67603caff352a25e586f8a9ba2d4410815c7d830a26b7c328377ac7cfb2b9d9421d703b8cee7366358856cca05bb05a9c0572ac820062c8abc5ddb8f901475b5c0f33381f6c64c8c86442ec0e57dc1928b1e5772ccbe6e43c2703bd813706f3d43c28068653410a8284c9cb8adae6598499bcac08b7914308633c8941c6e465655e8399552c45f3941b9ec46097dcec5aefec7238843e2d7d07304933151b14e03e8b2f985917566e40e1638b8ab6688b48751fc872f73191da3728c5801651fb774f9251e079bcba68c028f6e19e30ff01470eafcef96073e386ed66555d9d932123d30300b61930b698180b03fba21fc5b6832b10fba2dfc7d0094a33467a6c4260376c2b4328acdf16f900c0763682dd8a0a8a1b52682a546c5080abd04f18c639c11b03c5ca0aa0189820198c85b4d9d04122a1585981bd5451396ca9bcba558a4295ac6e5b0d90ae61d92bd456712515352615e3d3cd06053ae5279692d252292580fab1002af4c0c2f48f6028054445cc93f55f34a06c653565345b70d0e6c6b8a1eecf6c62d968d34a425041149e2c894218d260e4085e4802a97b200425962401832814e92c0164053a8042113de069030988e0151298eff2004d50bb3b06f56663f0c2efa14fcbd44f408a58a20b481ca1851f8001670676a1c27fad4288a24208215401cf2c0f19096ac5418a7f0688c4dfe14f44a941ac934a647f0839b25f6bde7048a05133dba1e0ef43809f98891d0a76f07906864004eb6406b54e661802bc4e2a9f0109213b60b203a28a044edd2442c0a9498ef4549b366d1224a054f83eb449257ee488a0fc45500222febed1b0dcacc36cbd413b09fb1db033ddadc340c0bb92c3582f3b961beb591cb03356f7c3c80deba57c1608f08c7c9e91dd0f230ed8199c1018b921bf3f0421909de730f0fbad7720ab5b114477664686a501fefc10e81b1cf7264c084105014806fbfeb8e3a7ecfb234fb79dd75efc11bb73d19edc885863a09fe7c5a19f2588c16a01116a7c0fd2a70be86763f4d091951711f21e950f01722144324e2c4109560b80369df6e20f15110a022222fa622a500c0c203f6d42b621415b8f6a2b2274648564088868d3f9622a500c8c181919364be2bb00f2be56be37babb717fff1b387657b5efbdbbdbe1b8b9c112facd0d1c3134c76fdc7b658961d27ecacdcd3a739fdf03f4e23a2deecbdeb2ba122565bfff61df6f751f166b765f5858d6edbed83a79e77c4aead3ec5e1ac6df03ed2ee0beb2ecbaa66565d3b22636e7fc6d53f6329b989c33c3e465b9bb630cc9009578f117ded69003c74d0efd7695c39d096bdcef7f1141bf5275254cb893cc517e8d77779f7fa5dcc8b31a754c3247a108d49eea2bc50854fd8b4b98b4c9bfb8242e69d3469ec8b3fae9c9b3930ee354f670e3faebb9cbb9be5f473fe374cecc396de28ef9732c8763547b38ed39e69864549bb8b65f1d0e9b1937edf9b70554380d440ea296ca28c6e120abd5e7f06f6953bf8e0505254a94f4d0261446502556d64b84012184b0839e7906177e0633b85f77326cc5d09cee06c2f1038410420c098b8977660495edf9e7f8539792d215ac5e6048b932dec7b4a7ba49826793a8611efafd5590f8ea314137627e68d397b341364910429b7a3db873840b4ae8d4f89308fa4917ff893971891434e9d3a59373fd384eeaf2b9782e9d91125c50630b96d874f6457ce67ea2f8ec58dd08685fc4dfc270e1502f1d3f694e1a26fe931d2835c62835c60d2755e316e4a7c6ef02aab1d356a329d0f85fa6a3b22f78a5f2c70cd4fe68d17dc1af814aeb54e1c226812354b936a93196e0c8a6e8584468d9027f777741e5829999b999a5942c999999633c25d07e777718140d52d5440fdf7f3dc6ad65611deccfba95d23febbe8cdbfecd9a6babb39199d19edf40a247e774386eda5b2901fd341524a8102b1f3d7eb4e9f31b771a87b849dd6fd9185b2164e8d7f7755d3652ca85e9bf66e46c66f48004fa75b71a392a779b187a4878321f8c1e200f0c1d7ca17ea5d5dc36c13abbbbbbbd5130e18a2428acf9ca3fadd66aef3ab38d5f491db26402d434e6c1423d56b1df3565fff56318d658cfc7a494137bc6b0cfb80f888c1b0d267f46c38a71d76b7fb5d65ddcd685d8b55b0df91660b9b969cffaad590e2810ed596fbdd4a1fddfae96480693078b8dfdebbb7a9dbca3212c0fe9938cf179a74d1fe3f05349d2d2afd0c547da8bcf3c7ee29e2ef9293228c8498d3f3316b91da9f1487b3e4a2edaf928a9f127b602c6cda7bdd855e6f47c8ecc913957d753e31c4d1d151dbb6f1b720d491ce6210b621de2974a1476d7509517b70da1dc3cf2e35910f3307fb03ac48f5355e3e7ccd40c42c72f6d355d53baeb0814fa69d37198f843b52b26d4a618bd499b38aab309e9d3013efe3664e3d97adae4699ee330f1dd7ddc73726abace999a47e64f8e9fe6921a67ce545263ceec7a1d816ad95036943dc9f827fe64bfe934025cc268eea3e3a7997298f85447c7c77ddcc753385faf7fc45dcb83ab0efd33e5a7b930fd711e0145ed99a2f175d34142e5f7c74da74ddb013e7e8a23f4237280c71e7bee78c0dd766a248016ad4d07b66f3a0480de4c8038d23a961ab06a0fabd64dae63701da561b2eee7001c236998f817c74a388897f0b6e9f8897f7e6489379dce71fcfbe3cf237d721f8749693355e3bbcf86c33f40355adda6534744309a739470f9891149229fd2134916a296169c085ab4e08cb4fc762b3ee91b0db7fc8c668e2b3677621a9cb38b442222213bed2365fb7491f6912fdba78b4427f62484b77042f8a9531b61fca1db1ec441bd2525dd185b4fbc302ddbf25f8cd2f21fa95bfeb38244abfbe8c47f6c9e36f5cb98063a821a3f2b05b5c7daa92dff5943ac8da6fb16aee59739f81847839fa566b9f2731fd716d9bdb4d7f2337a5ecb57cb6b2d5c51248a50da8b7f1581666fc5554bb7b1977dd47dd737341b8d4612cb885a7070f91be6c1faf80e78c09aae16a417922491feb2e44b8b960ca3b444d43e50da745522f92ddcd70271349803511065e5583ad64e8c6205b18458280bc7c66663715957d7365c9fa45015ae054789a48444443aacee6d6891f6e2a76a6c1f9fab87b27815bfe235b8c3d3a6151f1ffac0206dda86d4087b462f4405b290f2671049293b9b1eac2e3a89abdad326ee638b8f4f04a5e8dffa17ce670a8b05b2e9a18bb48f9f7a67194229aaf159740f6bd77d21a8d7739c0fb5f7a46152fcb744487e24d7477ac74fedf3bd73750ea57d64ccac0cc5af7cc4220ecfc222bb4884c3b3f8482464a74d380c29954abf5b7ac8b5b417bb92cbaa887050f12bd2b041291a8d88dab441291a69dfd2c26d95edc557c195381edc3eda0d9188c78582a8c65fc96e62ca0cc82d176786494fe5d25e14eb2754f994873eb7717e28ffd067ae37f7aec69f3eeda033775d17125e624fd4612c16033bc169a8d6ef053f855b0eb6171373d57971b03d2150bc46fae99ffd0dfea4bd3846b22b2a3ea55f992a3b0ec473652a3159d683987abd3b10734ed6f1a73faf2b8bd049d012c80436719212a4046834624a59c77aeb81a0cf6fb99c535be118497bd6c7f889811cc6fa2f95a8e49f1faafdd7395da44db4b350bcf52da487b4a9a74dfe29bfceab36d1b79e2d9d6abd7fbd53ade6d13ad89ef528b89b1fdae3d5ec3eb9753b299d4af795ea5c6fe5a7ddeb7186aefff87aea4e9ffeca45af1415f71c2bddc74f3b17ed5daf833b20daeb2cd09ef5dbf523cd499be45bd6e87a958f57ab8d81d3a66bdbb6dfdddebdfba13deb67744a6fd21ac1e79f26488094e804b5e96321d57a4b0849d74d29241e6c55eb85f0b7dc7358d052756a6b9726cc9f3b59a374cacdfedb209b8dd1757e103edae43fbfc6fcf9bb53a873ce39a3d429e75ce68e5852f749dd243c58d5c99bdcf6a0d4ebf9618c059badb5e4c32abb4f04f5ea20d1d4a40a29090f96d44fa6ceff3648a64d1f95d1a6f933dee6bfe427b830fc9aa4b29b6c98df6cd3de7c5afaefacee6dae9f3f7f5fa68564ee468303af58979fbef42b86d60a5ed3ca7fcdf29f55775477a52e0056f0f4e5223f05e0bff4eba71c9ef4eb283e001c2f0c7f0e1c6f6ca09f85aa316e34a41516978fdcc7220b65e1cce69f298c403f2eba2e2ee228ed45c890e322e6ae862103a94c223d17719436959ea10a6d8fc5cb467ae15e7e96b8959fcbe2b2aa7619190bb44a366897acca61c4603de021e8b597653c3454af5ff9a96931b2b8708f62059d5c7209544126500836812be844062901da36785d2b2bdd10ded5bdf0d0507bf1e3d51511aa2bcff2d6e534178b0bf728e04b1452214724877fe1727e26879f1b1be80ce60b82614d2ceff25f1403f75f6ca2c6ffa2196a24954ca42f7dfc1516178ecba9fccfa1e076bd1cb85d98aba3a4277d892baaa40e4a651a4834ea205e2acb0eae2e3f04ac2bbf23a5aeac3c4b37045797ee837f752edaf356ba97f6a2a6a53882f20b816e92224175931401aa73d31842d8d1b816ac909fe33eae1cbcf67ff76147a54acb6f92224516e5225ff1d04d9b5cbaaa67f88ce6b8ad2d1ca93d16ff1c0fae436ddaca53e397ba4f92ba2214dd43545df17ad7b370703d7e174eaec7cf71da7afccfd1f5f85170a4f5f85fb8d2c2f04fe6b5aeaf2cdebf37aad0f684d4f8445e1e151ba2282d95fe59304396874ffb14572e3f276bcf1b0d0effcc83cbc76fb126eea3ac37d01837fcee0dcf71bebb3ac0bfb81cb8170eba702b9260e1200de8ae749fa4a52257d2a6ab4216ee63799767ee1f49edfeeb1cc515179572a02a551154419d1cf85fa3e0bbc312ac17210a200adea075600c3a0716d12848825e624f10e530f173c4a05323dc4943b584d468e57c5690ff20ea2ab5e973f9527b51470fae10c705a220ca85e3fa6405854ae5e2a2727171717151712a2ab870dcbbfca368064084505c3847d25e7c8e73a0f6207c174e07f73cb8b2f85292239a54145c0effa978098009a2fc1480ce575d29870ef5d2ad78f026ac43fcafabafd7e25a98162d3e16a5204aa92d6a0b6f52bf76ce6b582ffe13db8479e022d6217e8c41511144350ed5a8867d11ff732ed4087bdab46d1ac1a25290d3821a5b47063576ffc122ddb7f88f8b5cbeab0be9068882288803736ad4ba5e0c61ebb8ba527bf149ed71ddb6c73d8bae075767d2a5d80115d2a6fff8f229ae87ae62f15cf7c9f82f9c236998f82d380fea385fb202b71aeb53ec807e74a5a3d41ec99df8ca4f3cf4d14974c83dac5cf785a0babcffb04f2dfdb7401da473b8c6692f72118baee6aa2e9d2b692f42549baef795c3c45f71213d8af795bb74ab1a5b7e05f7715d71c5ff969fffc5555c6d8cd8f251d2ffa88adf5501713898d35e7c6b5bf9e91d267e5cc515ec5a3a886a2ffee83f881203ffaa4d19bff32a3a89431b8387e067f919be5505c7834bdc578a9f82fb3400702b1e57fd9e072471ab4a5a81a812d32ed28d92da83dd272bbc58340d2466d3eccb8bb72f98617bd3990a735390589fa0da0f6d66a659a8740dd665410d15cd00000020087314002028100c874443d1683ca02aabfc14000d849e4a74589b89d328c7510a19648c414040040040000064244d40008d48744b785f85b502eb30fd78f304c9a55dbf852c07fc45c0d222c615aca0e1b66ce25620148e67f42a5c112f837fe075a087df79e319a1237e3de14f71f00b6c4f750b69a054ced477aff88e3e5fa03654279f64f5c815194c2066cb53ad7bfff369d258de32284b4e3a2103aff3345993ad293c76d09934de6e31ff67302ab39bffc450f796f0ee6609779da859932023894aaa621806b61262789d008f826691eda0b3ed0f23b2e24f8b00498d7d078954068c0e41a1f0ec5aac7e3d64a89bc2d6e8963ae14d0b89cb7620ee0b231c62d05464375a62e5661c9ee2a6fb15df2f6186b1094f31aa425978ded5380140296239b6c29d2339aca7c274a415bd48a968065600e99560102296a23d9b35d938e6191a7cd0ea30daf7b54e4f37b303d259e2e8bd70b6010f7b3bc32512652156e179eff2b8587ce00d1edc10970a616595193c188cdd1d337d874edddab6e4943c7262f3880815386f7c8a9cedbccebad0c5f666cf1363fd6801c4b1be07659b281492ef955491878cf8a38f174e8f190d765d53c0311b734bb3eb7d999dc9bf7cfd25058e3337e35fb20bf85673a657f13937fc3f99a0eb0015dc67e55a183564bceb049b7d0773d77e131d37c712dc2af255e628c2e19a38d8256704cd0f0600985431dbbaba2483fae48ff1292a8a5643be0ffb9ead944ba22a4e370e87cab210bcc2c0bb0a854f6f301de64ffb53bd2f7360bf5f0191af41268a9b0337860b4f80cb6dd385b2a1bbcf7b9fa8af56534de476a758bca93aa5c9f9a3dbe82c88f1ab537707690ea9452d73a605fb3277514564a7aab8b1fe3fc28d6a401551d7f5a9caf675fd96b2d8110549562e0f31e750d441aaadd84f45e8f5eebddda89279e939b46dae45704459d8a73a85595000a7d70d6e1964e5236676012544fec14f6d70e829a194cfedfc472581d313b1d94631dbf596a2ccd12e14905fff41e6475b31400c252b953c364a6201b3e465604eb5ecea4836595157ca23799526091a986279f09ab115230f9106533986e6f2cde969d490928e8db02840dfd2c9e85a63552451c3230dea2a9c80d343c374d6fe6a1a9d161c46e31d1c9be21a21c051c140cf0f4329459cdd8a1e15cac125baf3c65c28c570649b5a100a79e2d775336390334daf468b776086e88c9be59138ef97e2e2258702c4b847c0ef984b329d589c72c610a7fb6cb4cb25a5aec37977b238bd478ccba0b9689b6630400d44f643e73a0028a3115291c890198ba8ac25a3298fb031a68b36c40b906f4afb706925b6fed18659d3ea448dc2b451170dbaca543a6c2bf4be73655e94dc7cf3a842f2adab8d289f4825a2db7d81d9e2bede558e5f3cb6186e3606e4d769193b9d5ff0fee2095aa3ce8c44b16952e092e756e3551caf483d1be57c392122a76f1824e86e93c1d0fe02c0b7d4f7a1f04cc1118d17257d8ed28335536db7e0e76d68bf32b4a969d09372294414e10f386cb006bd054a31a4bf6b2cc735d59f63ded01a8d6c2fbdcc1ceee837c66ab069702e8238f265568e0031292e505603b2a19da06021cc4eb797992d0eac9ab0f1fca1288202b4a026e224597e9ca6cc60d181d69f4636bafa3b19e1d8e56486080b4ad6fd6ce9f018a186c8d3522e6125494e3ce67a9b1352624cd417128e4ff3f883d8bee72431935821a970dc07c3df1c1fbc2d5a28dc89206ba6696be1b5de104e2fd07a3d7786b0060831a65b1e36c02734e84072d3a69882cd0b980154e598e88b612cd3337c7e18890de24163d880b9655d7186724fc190a021eeee02aa3b18ee763eaeced968e5fa1709bacc846befd4d735f2c978b7455718c34c4dec8ca770e7c0c8a3354f0547a9f447b54d9b89048f48993835ea24be9a0b5e008928ba085db0d1528198f6165cb8b5234e639411e943b58af76ce2a6820c4db95b2783ed516c887ef0923101d85e7354191fdce4b4e42f3be0b5c9dfd886bd429fb977b67c973423cbf81bacc25f30fc4672e7363857d3e6c1f049e326fe2c544593bcdec1b2546fff6a4df36cc2cb1a0c5311cf7e29fb501c9adf172a62a4d6e04f1ac968123d5a4941a64ec1f1c7464368278de21c7d6700dcf7281700736ffabe6f11da2fc280e5b298601e215769f560e4db0d01b9b3c1fe05f05b53db28c14c4708563f87b07698a1f48a609ec1d2358fe666c1fc18383b0ad1d61238d1608135487cf357849b819d3427a870075eb78e05aa6f61223c5d348c9b29748df99edddd1d43e51fc14e297996c692f8a7c2d44b280907e0d38bb3c2317df43275e205e2bc302a40f942acf8f290336e1fd025c5cab1771818134feb6573289f1abd9a5cf5f0d82a88ed72cacbd183b8fe995c0d6a09961f90145240f40c31ce3f9216ba04d42c11602c6bc759464081d5b5d6edf217cc29dfd0769f7a3fb9e2fa664889de5d7b28d271f6bddc4dc57bd20429ce88d7810f72eaca906a0a5519055592dfcb07497ed4eafe33d4487eba3b09e1b38c4289719e9e05080b91a580ab9d98eb740fc38ea802ff4e66bec00598a8ec3506ec667ac92022e645d595f2a8b5de7cf82be4e408351590c3ff5a0f28554ec103f89207b215c22d0fba9fcd38920938d4b914423fb0564c7ad4ff2c9cf1bb5879eb828dd608f36f449a1e4f63b71b1b6e5da5c8b3ede513a47f796937794a1ec7dc07812bee414ccdef248e19cda643000fa345b9de9cc620828f963f4f96ea617ca0811dfdab5f1520dd7b2d2980bd7a238484f785c0810e80f4de9eb6b59a6f0e332bfb9d1f7a456b5fa75b8cc1f9878b655fb0b7d09c8545af52a8afe57de25bb0b6c58d0510863d20cabf36f5c4cd9590d1a1c074b2ae3fb7403ba6df3c3d173871797c8dd60afd874049c5ba96379f926381b41756558c347b1b233445fa98552c9a1e55a72be68883c20cd7264f798ea0d12ae03d6e6b989443c0b8684fc8fae55ccfff490e6cc2375b70580e8a92c013310d6a6ad9c3688244b5585a111e6d100fa620122e11042b0482a6817ebd27d9aecda07399047855b0ea8fedb5c020c773e1c21a6cd6de1bf8e81e6c4f3cb17a0cc8902acc0561b371e0ae7cc89bd9e9ca0e38ffde9140c284159d38c1ace624b07c212b799298b146ae56482092ee1630749501aa3be409727576c494fb0e508a9c2185fd0dc796dc33488f47a1ad9295212138d358bdacf3461ea7062af3306a56dfbf963e014d6a6b40c158198eb3da7134aab6b3ae1319b0d2e59452bc6af47dad0c424524a3eb1b310a2387e72a8fa2494600175d11b73366f5823eb6b841545d66f20df0658e312b6de1961169505dd5cba9f572986fb21729e894e37534a03b162c2ce31ec7efc7b5dcfe11e4e5671228ca40def8d11f387911281f2a0929b18a2172152404502a24ccdc4a0078902e1a19d4b4a77a3c4f3042655a58d87a1128435264b8a304d818600bab175072b825f407127b15b1c9d08c8c2622a59c1491ff51817fd7b8b91488d450a2ff1ebdeee1618098f31c8c8f4efb9106dd016772fd7dac0d4b55a5c8c93ed2c72c24b4d948e94848c8051074dcf658bb45458924618a54ad9cfac6fa53bbe16de15d4be173d48390cd8f34ae32801cb3cfd1a021c5e81776a7cffc1b58c240798455a62fdb0c2ad3a3bed82758cf48207e74d87567b14fd8555dd27094dec235de80bec0275929ea1bdff721ba03e81ff58297500a764f3602050ac62461163e115fe4197af4f7b6851571653f83d9dc02b4e7548ca2928076eb788982da1607c9891e7c8514454814b5445c585975b38b38801d1b3dc4a0fa12770c15ce08f21766e6eba91eced832811f15824829d3262be04e4524047dbe9d752779835333538dc00d46f8abb77d30f1c787b59d4bf4be5dd635856d12a7ac4fe36aa0b69852ae470348dd1dfe98266f9b7a763e6579c10d3e9f3cc217090d2757455dd9845e7a95d8c00abcb1dad899196c0bae7a81430b7aba315811c99e7a5470bc71152832afc24a6712fdeb28c21f1110f2158d9a713c99b370bc442fd4842b310b48e5b456168a9d4630fd7c4a853a3f12989c43f6ed501f22d9bf819cca14d1b0718a16c3c57e3475e4f7b2d791a9b2cb1f9f248fa95c5a6f7fef18e761529db479e43b52ab32cec291cea1f6cf5815d82bfc54cc6d20818782423a843ff077a646057a235221e789a3b7daaada08ee21a0d94dc202db7bb06586e44fc42075e55cacb68348252b3868c11ff51ffdf4ff5b9c69d5e6f733b2ab68b4b6f9c3682c1787a762abcc68e2ed435b85150811e4cd95d6558307980c9f84ba44cf740dd1466f96d1ea51a6331faa2f42821701409844cf7867e3ca84348e55197fd499b1f74f3ef529c3437447d5a2bf05915216618f5fe0391188f13af7d5057db550e68fdeaa97fc0750a8a601ae4a3136a6a793c0495e9d1c95324ae382cc240c841feda58b1c10f23c632246aea2e6f80562b7d10ccf94bdf9a05c76eb1971dc3bb1df6bd9e756fa0296d12e9bc50d36926daeada8086d22913301226f1c0b6bbf85f251df7c3a790a7e21f571543cbb6d56b23b3ce5e066312537ddf448070e9b736d005c641ae44fec51daa6d20d6b54b480faf7cd21f89efdd75587ed6b2b1c5b4b8906dc2fea5a8509dbd3bd4713559fea3f08ac495d21ff048c5ea652c620ce0e9402d30ebca5f7f9e255311dd03e5ec2878fb89afd0699c6109e1c09923a649b09b90c43436fdfda08b40b59f6c87a93ec9c97cb0400e6c9f681aec8bb0c16493d7e49083015d8706d8807c05070492824995efa3ee1c1e224b6227a171b8641862df053892d2260b9b52ff615995838a21c815c8e32c1b2e7488df1685c8e7ea94c1c641406dea40bafbaf8b281dacd2df56ba868c765a07fa97a0f507f853f1dbf670f2dbad0e109c71b0bda40c1f0bf8458b2550bce56e212151075a8a8f26ab0960fc5f072ceecabc43c3c042bd253652428e54e00424573236a4a92068a1b0e6b014305f2238b603a32b318264cbdee561ea7cac3ec86867b9539a8c981d795c5f3c8946bcce42e7a82d8062644cf8157b6a621ca9c00e855ea0039edc9dcafa4525a0ff21feec667276ffb66e4a2cb70acbcde443c5c1c3450e045372a8bf984fc6940ac23b8398684ff60995876c8496991f6c24d2045dd35f73566ba8f30de47fe1906081db523fd5933c02294872611d71eb39c4a7912d185601d327c3bd429ef14e065bcaa4f0d5205980a88d13b096902ecfc6378496514dd027a8011d0144b5a822e29eb95401f275faf321da38262fa834bde78ba0b9d8a3024a58e834073660f1974bb1df03dd32c05da40eda434c92eb0a0223043e099da2d4fa64a35f452dd615b5dea601425aa5b98db891c773c48dd0181a0ce6100587a7ee820405f1042c50d4d0bc99229fae5db742c507473a717d244a28761188de9b90408cc8f0c189ea7a7149e5d993a03fa896ef8d07fb4cecf26f8bd90c099e981247678ac9cb6ca5e4b5ebd443b811b9922c12b28898334e8d5d29f208565640cee10a1cfb99714b6631cbe993d83c51735dbd2ed42261b0e8c23497f313da3de4bec63a68e023ab9d5114fef52b18d2bc98e09347013747b85db46abc7294b1af56e12d0e1c0c1affd240faac04847bbd85a4e86f2606387848b148188d023ee6ca08cd526804ef671a0446aa14a84adb87ca8ca44dad20efd2e4188c6dcf505eb9c3f9739f7c2f91804be633a7627be737797a7e1fed0504504dd75d4a00ae03fedf5f588d00ba7dcf88d59dac8b06cf9e520686184f4c1fd64456b066cdf7218adbd5795030f2ac1690f25f8e728b8150158caa51dd37ad073738c9d9bcf117a17e7aa7daf2557e62a9a1d934d9096245b45c4294470637b865bca8a3064e079fe1c96098bf8c4e219574e2b8bd4ee62bb8f96a18275b0e1b154140b0105836f44f048c4bba449d4f2b3294b098770317b43886bf0a30963dd7d1ef98f7d820c9ca3654dc9b3a58dd782c698dd7b38911fb64b759c8c4cddd25f6b289fb0bfe521bab3d17bf3be37d860023233835ebc5f45c1c6abdccad4e067eef718500b5f59e43a12626fa09da58329422e7676a4b682c8d62a0fa53a116ff35c8928171b4aa1272fc2d6b9f8b23fc5a0d650e82639805ed15b086d346aa8e32f12178ccdec7aa5a8da61087f0bb674f2b41c11187081bcc35d102c8f17fc27fa9b4e984d3949b8506440a0db0e94382f27d67c280e20f111d766e144c8ee930d1c3d75e50f665531e758b1f893e0eb54535b36023a0835ac41fa4f3954804bc7b01aec54118e45d3dea920180b2a324167076323d356a730059670d965bc34f2bf8691aab7500e477287df6a699a99df17fa4bbfe109c812c7c572ef6874698b98dd9a66d78bafb006a84a78cb438d015bc729cdeb09903a4b9a62e5bde9075adee350256bd3035e106bc48d95fba8df97fa010afd69e463a0146420d73c0383ad23d18fef4e7bb9c67e9a887d7f02d4fc326762e184d4e6f847cfa685beeebd8e7b2895504f6c3f574bd198cbfcd38f1c8941f4fc31d100068105477657de2e8a1d647fa55f28e52c0ab3186b5b871b0aa9d89ef4c2f645f3ba14e4f11351cd76b5800b923d5c3fb7a8b28dab9ca17960bc02cc473af18f6a5611071494f6cbaf56852081a0a1cdba324bc2f24ae45e86f8c4247e87492ac40a2723194972d98e32f210c4a65594902dc298f38e0006d0123121bbdbf6068af5f76edb0e369cd5d4519b69c50d20c5e4f39cc898d95d05692453cb0080c95d016a5a7b5981892bcc5c4cd18abd977eadaf4a5a64d9a7a2bc2d13c6080260785ae79b58f00c80a1fe51f3e12de818006cb02360557e08811b366ea021b9847aae9a5c56530002d3856fecd73f7cbce0a66b3073b93cb6fc446d79bfc3d4e75597348605ee4ba4540a566e943be4c0e617fc06aeb41ff5463da11750e5a986a8ec75c8a35b7b8813151c8253daa027333d513537adce1d5891fa24f70b8878903d3add88028001ad22e062740c8e944f5235cdcc1d7990d481834c74f5357684d86be080d75981f0723fdea989e74a4347eb533c39532e298c0fcaa123fcc750cf156f899cccb043d9a3d346d07d09fd66f0463c823c5b0acc058a1259d0732c4c6fb5270232f21fa631caa75019f942daf8ec010631903cdf4f87ca6779e0dd76ab8cad4640e716887fc84a736e59d4d41e8e48e72cb43e640f04278dc7404d78f5cb0b6d35710e8f076470005b3cf435b11600d156cdbc9746e6d5a0afe98940f0ae084cd22702057b1b22d2f01c47f63992e2974f3fb13d27fd524faa58de879d393312df9052080a2eb5867c4e189f1446aaab994c815f8da054fad00df2116a575055d27ceda333fcdf50ae554ed80f331a130d8dfe222f4e56c536fc5dd7819a71c69fcdea3bb9ce61534bf0b0216f1e3450a5ba11b4143b53d4e64741104a17058886518b8b7c0d6f26ecc347303daa64d8181ba62446db6869ee0a8f82df1deb2d226db7a89a87de33a7cac86c2a14d8901c52beb44e3e26e19251dab3a6d017edcec466bb2c6bd0d307c4757005f214667e426ed6605ccb23b6f4a3875db55216ec60afc33ea602b8c4693fa40c51b9185c427aed788fd8116c1bf68db8e1468aa6d7287a9c81368271218b409fdd322141f47a3ec69167f0e50e36cde5ae3f644997efd0334c4c1c99147a7ddaa83bf444bef9e74a67abbdbc5c9ae8f598603c227a9ce3f2be3568891ac43579aa24914a8ca1743315bd801e44f51537caea95f1d7d766e41c1c8ba65e629b55ee03e714ea2bae9d412980db1c0760bf44f126464667f91ab26346a81d00346319ab9dfe8b8ac1b6a9700065bd8828d1c1a96cf6c2a958c526b83dfca1f38f013b4d02f7f03b7723dc05f81cb644774d0519544fb38ac67acd9ab13f9d2fe5d4adecd3fcf37dd268aabd2396814e99c39b61e3a68994d8c1e119385a1b1d1f685a4e2a0e83e30e6bbbea1eb4dc9584b392982e498777b00f6617868f3359de6fa9b10a08b704d1a7851f41a67ac102d259dc1e1094f5a61ed8db86782b783b3ddc02d65c96985de9ce194d48d9982c9c5c927564c3fa848890053b14a6ac017ac0574cd9193e0074a0ecd24e617e07c370a8983855f0ce3c81333968a8da2de3e7c92b50a80263da83a44a8562b9c2aad4c52fda6593318215699e8b2f47588b4812813582483facd501d74296d5a8e580d9a1c2ee78bdcae3fb6f38a9c8f9a53fdf4c09f187d490cc6ad7bdfa5e637a54b981e633f6b3021ad013fb36986a97b138d85599fea84199acfff80ee8f57b183a4f364bc8158e8b8102f46a55d7cf861f5e4509b5766ed9b905aff69538d52c82d6074413be2270deae4562524376b473314a670f47e8e7c0a48fe80279e8515f71adeef7b6ec9e284bb7ec621e317eb9650b8677e3e79f85dd2b0cd5ad5fb570928aa344b7187f608c7de609042908025dc8af706a375f3db8b9074d3dc8efc59e65cd0f10ee9c512a79d179a36a113d55b3e7b65db0c6547522735aebf488b64e1df1fc45874d59680684cf3fbd92753a87605d672f75067052e8c0ad806ce7bb43aad39aa987052dcd333ede7e6544906f0800f598a25f70cd5ca26c68607676aec725a74d04ce40a98dff328fb1e3a2a7c3396d6c73d141dfa0bd9507f60e1481030e7228c2f65a396703adfc124a473c4f50cf9e8fd3597b5c587169e85d47c654f55cc127341e84b8f0f2c167156d80cfd4b0f4119e47ca6f1c1d308df9ebd4a8f61911c62dd0b2fc5850d233476ef6a4c746e6ce22f6d2c4cbeb5d18c09c76e7969b7f1663bf8bb588edf595c92df0664ab8cf866ddc28943433dbfb5c52349cd7a0bf512fe6e88281cbd1b1486279c89feb4fc93406dac18959ca94947d137d97da764411d9e3b3bec8d9b9f88fdc44d6a5e1f10dc0d45fb773d6ebc00482af686473bd55c011d3d9f9797d66b89f13674306b3903f8b35bccceafceb623594fc15362fca91f6849d1966c56aeb9480b907484c43e10dc2eb0c004bacf85f6d9e2290b3c51afedf8f3a87584be5d652347be1e62757fbc7887db97e4082abc350e8b7ad52fb59e1360586f6a5900f2714edf33b06263a51b37c1b6506bfacbf15f08d0d8f83ab1997af16a26dbc6fa690c67aca94478c53e759c551b978c613c71ae0c090d2d17f40f01a2a25043e765ae15ec9695dc27247ffe25f28a01f15595ef008cc3ecdebbcf404b32775185b1552c131ea7aaac4c5f19aa43c45711d019f0467780d75fb63103c926ebc23c1143b806107bf4b91ba8f7f668f22a34b02a28506d18e690ba9601010ed9721c3683f1c0a2b40551207608cd9e5d016bdc3f6f280858c230040897c62187f9d17f8e8163ad6c00a07481db9fcdd679ee4f915c478dbfdda535c99cd39c87c8f5dcdfdaeb140578fb79f366baf949cb5ab05c0de5c3855c5b29e59a6ec5dd39e71fa49052678eaea4afa2c46e732113db80b34179bfa09a038b13a22760d3207509ed4b9adfbfce71f353140a4e11beb9cf570abdeaadbcf42fdbf187423a52a9bbfc5e8810663f87432c6358ae822d1bbd32747dce04770c640b88f2d522610bbac2cf17a4f4e49bc52060694dacf0691b8e0c73f4e94e17d49e1d0840be5161166cbcd58af685eb0c3fe748804d6d659bd769509c371ba562e8faf74df2984ba0fc25f767a6d45ef3de764362e07be37e05d1baae905e239940341d5b94ba3923d50ca5653dec0e24be6d6dd56fc464a718d070fa0a1ed15a1f9327d80f30d7474995b477a61bea6178b948916fd3be5a37269d11407d995665c1dbc4a89a0ed552fa11bd1af27aa4a88116fa0a4388bd3fca4bb9f6cb8a45dd645b8cead14c96f3fcdb649009000d4fd58c293f2806310ff539ec62a972c2e9921ad97981c4a30c139e8b12a0ba946b988c92792c081ca48e02d912d017ef1da074e2c46c27a1fe51446aa165b29511d216f25c57e33e10d71502a5f5dcb35a0c3139d66a5783fd20bbf062b74e1d737858cc40f86408ec2507518b9b570d57811c73f942477977c2128084e53c5584c1844a6d7b8300139782ea573ab30b58999b17ec256ca44aaab4f4681db8a4f5ab3e2caaef123774603d6fb674895a1c782905545bcc96c52167c682ec5ec4afcb6347791fc1bc5028d5eb812c4e79f381c385a33a57868ee299c4cac38512b78a2c4ee6324e1a439de44d86912303cd2e9302aa109603f87a8aba68220c310704570aeb9624745422299c78b4a4d050a0503d0d3778e6c5fb148dc4d4f1b91800c0ee7475ae105a3d46cf4d5c61738023ef145be521a31c827607951621821342a51bb4188eec8512920c12ae0b302a8defa6eca44e601636c27836502f870627584d162d6fd55b3b689f8bb95868ac49215a9a9bf2387a29c13216a8e0a0cc11e20baeec31d3e1dffd12343a68983ffcf1ab3782e25e089812c7c465e056ce39dc14732fe00c39b6ef060f7a3993592c7348146cd69d1e657b1f76e1e7c3687722056c251f39551fffce184016c6146fa5f3bb6ac88108d3551539b547657d98acbb8140b279d9ebdf845ab6266c3152ad8e71eced3bd758c90da09de7770a9e6159f4da7b47fe6db772e480db483e137aeba7395b0fb93dc979c733224ba701141ed12b0e6f0beca64c8476af84b5fa5760239c4390ecba733c37908f8c50883c4b5891ce38f207a5115c803b55b3bf2b198415b4cb78c35ff83ef7a58d56ea7a95d60b86329c17670b14374fbfbeac5dff64b01c4fc864541247338f39947ab9164958b8e5af7d6d81806f241984398ef1a2c8e433e3ceb1f9f106b90b8154162a071fa501a352df0c14566ac3b012b6b62a0b4ede1eedd59e0113653d4d791f8ffccb5d2c4d6e6c4c008b445e6212b425533dd88555c01ccaaca475c8b3188104e23a58fd9f246d6db0c475506eca499d7f9ebbe382a9b69ab4d242bf3e2f9c55a002e845487aec5461939f7ed4376b94e093b648fd72eed0f14864e08cbc59a378faaf67d772fa28f63d1a710ed1d24aa945d8db5c69f5c047e56a966e11d573da165ae37b31b811fed94853f3ec2670e1608bdf2260b0aae40b2245ec4487ef8181e149ad128a6bac82cced0b1b1a67a185fe8d88655308af6317129422dd9477435bdbc8c5d68a4b2fca33595c47c1403686bcb411f6234934b06dd42d93cb510d2c7ded7e0d44f283b485076372e32a6cbe1566331c68e41ac4e93fbd2bdb4a6ed2db89682e7b917d2fa0f15cb2b03e9f4f21cc899bf6b3382b9770649d08885f7bdddd3cbce664f938c9339107477f423f8400e0f161b0d4a0f556c0c841ebf7bad8d671032b8689ba6efcfa300a5b8b763c092961a67b7373f068069b00ecd19b6650d4f62333df1de606c4012eb43e53046d8a07e713957cbf030c69a1a98d3eb8a80842366d53b62def2d670092d03fd3872aa1ca1ec0cd37669df79b8ff54462a5ea88979b75b6e6c5f31aa9bc82eb103b1dec6abdfe7cf20338a17ca080e609a984a6af3e9d3a929e7bc34626c9db3e05ada9201457b270786b8cbfc6d300472a5c386d1a0f65a3aeead37ee1e9681326226c28fa4fcf2ee7a90f785d8e97ad35e22a34472a016df8f010e8d8195a4efb8041c00be67e826aa5c36b3010659b6b4d48f320f6b8460b1338ee404ec973d2f084d2fea2b9cf2b09e62fbb2abb88507fd62b7faf92fec069ea2f289268f2eef85ba680e2107fa11cd4cdfd02f4821de2d30a9fdaec9ec44f5df3e63cbc61c900632369aec92a24ca0fa6db3b11e15e04da034cd0d099e2ac99e9f270a6c73da7d2449245147eea1e025273d4466a31dff2a64192417b8710698c2932a1c9c7878b20747b3963d3b2a852ad65af5f5594c386683ecd7bc87494964b8e72d50dec03c4e82d3502ea234a554f5a4ba3e3719ac9c57f3eba2e85d06dc40da5de55225d175a2d8056724b4426896aa3fc1dc28778f2ec1602e4cc70ea7f560c75a6c17ad28611dd144b8fd86028721ba5f4d83dd62a4f1cffa29f878d638c8f0695658a1bafe6f695ea5b70e6565f79b7d677901eddbb3389259ac710b95524199b914509d02ad6fa3d4da6f5c572a4b1e7f4a77ab56e010ee9a845fb9f2c88a99db7d9b0e103cf9f5062019c391af0450a4157bab505203b5ad7d1ca82f7db1192408e657c8988ffb77efd47eb80855d04f71c38d9b29724f668e4740c0d170fce67adc83e7f8fc0c8ab69ee837715f618cbf06fe832c8b422aa0246e2904c20fd58c19b1dc6b26e4e95e3a05387468813c901bfa4a0efeb6da4dee90bcf1e3fcf86508fc54625475edafa4da1d8b927f6c3436bfd1455b95ff03e60e82a12acf9f67853a7a281e65f9caf9e6ac22c73580d7a2d3dbedac65981a30eeaa78b3736533b8f16ade00cf8a91a90f21ab44c6f626fe97b22b6d7ea5e2d4ae96dc32c3f56cbd07368027492c31e620668efc091e606122efe1b887210de013e5f022ca1281b9329b25373299296c3ac2783cfdbccb5cce4cb8fd46010e2a1e7668daad2cd403a3883a2bbf2afc02c0e0b164a17119a28f2c79082ba1738eba9967909a2e9c145b249efd001a72fe23adcf21b70b6dbfab42589d26ea346ad13f2855b2287b48716dbc8675657494a2a1194f5d1dc6ca95e4faa29a08487ab00d2e968f49edbecd1ec1dc1f3ba5ebfc39a8343470be30cee4d92bbecdc05ce0666662c3d2fd22fb3a8ee7c378e78bcd97a17a40bcc938eb4d7ea023b8f759e570fc57f87e69c0855e7189c23735256b2bacfab514e0f8475cc65731cf315c80ed6eddab0dfdca53286b7ce59f570446e9fdbbc0a221e34319f0d616a9671be3eb3ab0ecc80641ca88676f499244dd6f9dbe318c43f54f12d8e47765327e15fd4f3228f20af5e679143ff7ed1bdf5d649a6e2d37bbac311fb9600abb43c97823df0af918db34d7b22c841a7291233c1039935be4e683b3d2f57b5a353e23c3a5eb20e47e74e14f13b82b9f39e8da0775f33bb8bff26c0e1f09806d67d8e1892ec089024ad03f64ea2467e9bf1921f73ce9482a8c6b0b631a186853df74dd6e3b781950d4fdf05593726cd89a596b297c883a1d797e0622195730067e1551d78c3d18e50f311ffa9feabda8eb9d0123772a9bba4d2441f1bb12b4666a8c13ad38fa020dbcf9351b91d8bb08ab79fc3757976f6a6b743a6db9e6e004a1bfa165672923d87687ff6d3ed25feb71247ae08ecc527500699d5ff64ace1ab8f98b250ee049ba2dc158da5e26fd6687ebfc01c80b63afeddd157a4b08e4b6e2355f38cb68de5d3f00d334d0c098b5a32dc6f59ac575ab1192d6c3550a49807ea7d0b92cfdd8abc3882619f62ac36a75f8628b1cbb573aecd54901590f6213981c6557ed6dd2a3892b631bf8a87d3de76fd9c199a4b455e6ec41b7f5dcde21e8ae213eed7d0c8bb2a0010817c4c0021936e5e09e4bf35e93ef97a58c0deefa1b7b73f9c6d503f4672a551bc79108476e83b066cf60f4b761d9ab3763df6130da3d1903f73fbff2ce922400c3212126babd22bcfb32a468e0ba5ab83050d35666fbccc1fa7a1999fa897081ebd45c2c6f1d06f3b7104f8f708081bb139034392a5bc0dbe70631dca8a1ff0962a2db6d51405a35e7238f03a829ce6a96729cc6f28400726cfe058608fd0cf1459bdc9da7dd366c5e1d313d6fb7e10b17f0f0b9d28e11cc818b6b70dc8423ba4bbe7a5807926f7e899a8e48e275ee6e63b77a18e89b7961940c4e16551af82e4dc4d168e182e7003cede80455801f6cefda45cf73b9342e2aec50faa07856503eb9d51975ac85a694a2a3980672c437a070a67dc06fdf24cb01d3425715d7dbdfaf8af03b3910f75743093c8d5d26822a1bc8f74fc2063234824d65e2e89e4b42820337fe9d782714abfc20c6ecdfd6337cbbec16a23cde2b0e174a581ad62c054fbc1010d521ab70a594696f7804dcc53974eefebca820d279281f19f73b041088e7d00d057f0caded88a6c708735c2ba1a74468da19470f085e3e424be9930bc22b3bb688fb736275461800ec7aaeac6498434797fb2fa74cb03bb853738ad0449929732a664b9dd15754335b1d6febbb7c8e329e9409eb1b91acdd111747d7a035320b4c259ad78679a37a6c5ca55cff07733663456a5f2c427071786236926c93d8bccace9fad77e733d80d6455e2a52630d579dfd513833c2c7fc9630d410f9a81e161c42f2b34fd5329b74bccbdb6494d493a92e160c6f309e26ad778911798427360609dc0c15d33ab39ca9dff15196efd3fd6c6ada8ca6e798d281c4a6f0b15131091d58d7d02c852005d5db21f3bd8dc2b2b032673b96f9bb69d94f6e16be8f0f3d185fb47c0c9a79e110f56d554650f612c155f776913efcecdf51e87dbfaa5ea4ca2b4e6ba410ae7c0ffa2a316e694481e4680c0c58625d9c8b9d19cfcd198bab412013ab54a0b7243de6e2fb10d738d83342c735060d9f08d37785ede584573f0096693d615abe163b7370e177c2544660a570ceee2012e5bf6154895caa0de70902b25809d8b2fb4580af2032779ebeba07c96180f23d8a48c3fc80d08d60c8de9297d11450a7857c58a3ec3c08336d60e9c454158b8fa306be4ad6e69e7cb498b24b9f52319b07fc619cd7247966ad9a333a61caaf357101b755adf9fc9bd4e48741aaee2394c844d0095fb696d056476fbf48f1afc1481b272a75e1013ddc485dbcc3431eedf21bd42e034e193b0d3a485cd107ace94d86a370c40c9a6bc46a734c19d6c7ebe97af264db65073879332277d8b6f761633991cd8975f10e8cce512e4d69d080cb893e28bbb2648176466116d5b9db424945bbf7b02cd8d6a56056460902e3fa915ad99c3d6d05806612eaeb255dd312ea82d15206177058639063e40a9139d0ced9432f6689aa0ce7dae404da1b0e43705929f362f07743a048b0a3be837788c57ced0d8146856c1991e7ab77e64338f26f95b1a1fcce6deef4fe91301db957fbd83439d3d226b3f4e5cef82af6e1c9d8fe4e003f15d7164e203c18f4f5a249eca9009449e22afcc19119c726b5c23ef001ddc1319be9715c6bccbff4e92077a2e397efdf5ca42aa651931aa6faa861c0b8315c33405f73a5156dba512e1f738c9d6024d7366b47c9c10c4dab62daf85bd14c282c8e9d1ccc3b7d881be3144b9436ca103c712e8b00b35410dd75b2c2fa79560a40b5064e4e50e4dc5349d02b38a1bc17c6883c27617630edf8f4984c2d5b8504e48e65277778dc5b76942da55b18c85583ed8b40b60341e75266d312b42076bba8b2e44b2ef08412ce26ca5269f81e3b2738632c96257d216e76a8c0c6b46199b694e8a0c0a98f0209573ef6a1bf38439871e325313da8be4c36bf3bfa7537db1326a132228901eb473484c71b4349ea5d240a067b261a4fb95390e0f8b5e180638d678df489dfd1f011b8b7ed5139d5eb7c57a58e46ca95e949fbe7fed1c2358054b6a6502944bc2cde0ac8d08e7ef9521f302ff4774051d4300f303eed3a5750901812c62a8cdc30de4fd4d1a445577e402fa0eb9f041f57f81dfce80b59c77c8b6b4bc754ae489243a3bded49e39849939a31b2d1a23ed2adc89ebd8b8ef74c27bb954896f09f3d51db2db7bb976c626130e10e495dea5d9aca18d8b6908aae9d5eb41f3f51e2302e6c6396d9ed7c4acdf4a02502921ccbeff256349b9e31ab17d54f63aa24157ed3ba76e4af88a80f185840b600f494ef5ffb358836db1a3869e8ddd74f4b7c157f79e71208e4b9632b21f2114ceaa36364ebaf1bbcde5c073f32d6d42cf1b8d571800ef921d649193ceb6fd99128bbfa2489dd554f989de98557835eb6ec484f9327827af28728fa0f9e8205be0726650af968806cf9af325f1eb3ba13ff90f940bccac26beb11e4f44958c84075a8cb826bfec807edc1d3867f579e50ffe808c21dc2b35dcf0f0fbc66ac05caa47b8f4fdf604fd8e44dd5768f9f45802c3c9426416fab2dbbd0de9db9d79e021f2e0ddbd45ceae4fb0fef6cc63c934a22e27a216aa806feb5b267ea5de7c0a49331fcdec25a6dfb76a43fdd97d5e98ff60fe98c3b3e60b78164139bfbe1e0e62bc81f1b774ab668107138264d3a6e12ea3cddd4ad0036e17ea9d4889d28debd618ce4b2ffc0e667c5ff601da1a23741a6641b5583e6b015bffba258c4334406b88d5873ddb920e2f981ed1f800dbdd405c0bb81be8680f274e3ec2d0ccb02d7193d9eda4122e713aa93d04f6e6f77bf3c23646fb7d953d636ee06e482f3aec6f35a5a988dded12e2b1ddca35e47a04c4ca74de0466ca3a5b80ab619844d187bef82bfe7894da200fb218995a566dee3b86ce8eea0612db79098fe9280c0a33954fd74c6e5f60cd2f9eb06b1fa772bcc6ebd2c7a1c526ecb2c63903c35a13c08d59740e7851f658496bca1185a160c4e93639c1126068adf3a8e851a92dc1d0c26634d308139b12d1e3399a5ed27bd15597708f9fab7b2894b548bea26679a8ac087613ca2db09ea76ded8bb910ce279af1cb016fcca8cdb8fa1c50dfa4753c0ee314209da956c4554b5e74fb1734e115b9a8c714f0e9a0b1d6c65edeb98e23ce9e656046233fda70d04332d654182d0a8b14561620b6e60077aef3b76beba0b263224f151731df98d4cb643a444d8d981b184db237d1b0fc547ffb53c7055b2b93a0f9c51cf4beed16855d5dcb89b143e2120841e5e6cb55693c2f4f96d0b4c1c3ec86d35953c84232d18d0e51244fa25ae2cc6995204ff07be428b4593b49137315ae6500cef1fdcfca777e2a9e12263501f352af1c408788b3371e3681803a0761855da89f21cdc1e66a6d7ff982dad8db887dcf7f6ba36f227e4fbbe89d2e72269b7910b0fe4d2f02f7afb778f9e4d590cb5d8b848b7b50874362d3e66f0328ae05ceacb3c706eccd667ea1913abdad3c5a1f7e3dfb4f39f024af614b171e472a5d036a1f4aea50e629c0b925f0d5393c74891d356e087cd10c0009ae7139027f53aab0469076a6ecbbea71f66b9a905dc02be52fee6cf98fbbfc6689b26b04eb73aacef09b5552aa848e13c546759b272124c3d5dc6957877f855e4c75349409ebc5ebae2f6c2fd17bffbb9040f349d118c7d8b26ed116c70c3ea0f272378b1f2a6dbe49bd8bdda5bf7066d368cdaaae1d5eb6c8c1fcadec16345b24338c253002e494855bf7dc4e42449f795b11bb134d59e99a1c0251b0c81ea2389c43d8fa6983e152465f208ad3c7e840f0ca25f2f1bd8fab6969c1307c603906185ce7d3699fa65b1e5cee30b41801b9de8e501fe895b4986a7b0f98c9494aa32743e26419e53c76f82ea900f050f3de4d48ddb87ed26a433a9259a46cd4934ad293cd7069b09123be3fef425c063ea32b763f6eac9c448e9c08066ba2806d7a5b0ca967014590e7eb4c4210f10ee92c023ea1840b8e21f624695fd7c002d4b9d2bdcad214841a674bc7e9bc9d9758b8d942a318c8b72296a53fc439eb2b79f857b6a22e4979caa87b092a4f5d77c8f88de639aca7d8dc9618dc7dc81f6e0f7732c5cf7f62d8f6aae814f30362758cb6e2a640e317d5d2fc09293a01229c070c784ca68b406b59ff52a0ad5a79b3c3430868d6eb2f6a3d4c137ab605d1d09ef4fb3afa5494eb054a80274bb6802ee65785466b505ef774df3c800a9b5e6b00dabfccb3a7c65a2622cbeae3b02ee11c394461e45df21903a1399b9e509f6ad682711400629f575b4ac6dc44413859cb21dcec7b59c8b1a8cddbb2d5d4ec4b66b50081dadc645b687a161a17134e6a38bc3ccd3903a0bf588c723777bc95fd2af6a43aa694e4e61729a7100b3065545eec918249eee36ac7abc9b525d3174cb7ed359298ef80b9d203b4af19823006f2ab4430aef2bfcd38f69b59a0d236824d3b82f5c285f9fa15b785bd313a3fd65ebbecab58f0b74b77033c669b9b66f77ad953b1cbd5daba3255cc4458549613b320e58a4ecd291ece19e216f3e128b9befb5d18fc6839e6ad17d1fd69eac87e90dcb753b8392cbfc1cda697442af7a23b1959423d8a19e3d0eef191e9b19fb61a4f353758c0190466a4c11f6aa7f2b36f3e1dfab1131792adbbac5c12d9fb5a9ed42ac59a2ec0c05ae440dbf8bb4331d1ac666dbf43e354ff2d58a2844e146994228b320a9b790e27a1edd8980cd88b8b8be606e51a4f9d413209317da1e824b321856c9cb0c8f07e9e3eac1d62d25797120e00e2e2f47055aec5c0833b19c73bee24551bff7524a44b870e8b55aec72c0686fccb160c6b300ac9789c65e2d37f6fc4460b3d6c763d7134352e024c8d2b69390147835c75ef9786d11d0f297d52b429f2f14792e40ff610d9d8fa7713d0a94f48e7330c43696c80a2a30dc2b0035b6ea1d6d408acb322c0bbefe5a8e53a54b8bcdb9ef19734b02b5b82b90733e0893074d488024320a4ddfe7ee2d31348d62fb3865666c7c6bd73c4596f5ac8c8d706f590d0aa3c75683a6046ae9026bb87b85a75759eadd5d44275a74aad31d79db69983edc5c6b43b04ca44bfe500aa008917cb8942ff33df078e820a94088d907c210f5ba6d3281905f4210c783df49aa382d62e7ad1d344ffc1226c07e6193534a7e3957ad545264ccceb1e496a45a70571d841978805a35471ce6a6019c5ee1e5668e2af1322ef615a1e80d7c3f3b09d9ccd32609549418de458052e170053516effb9a006e80a7a80e2c4732d9a65a879352e52a94f5995b327fd657e85fc51fbe27c8d055748966b519953e13446ae3b7bcc96263d793a7a68ff991a22f7358a67aaf90c3e07601a5bb305d5f7e55073e213dd3fdf36fddc63754251d1a8f911159756aade194a97dc022639c145b66e4ddc43655bba6a7015bd6a5650d1c8f52c5df6f1f1bfb28015a3868156be70a7c1832be1786167ebc3ddc5277d860859e917d62e08eae2bc616be78e20bc4db17ee5fb3b36a97507cdc31866d7c1f97dbee58225deb3f454b2703495e57c77c4bc3900e126ed2b8e00cd4b3843bf61edb4309ff3c91a451be3a8296914e0287e215b1792ad9fdcf85b12028ca4749a46de5073c64d243f780fe150dae249dd90d6cb1a24e1817bc449b966d0e65a1449b0183374e92d093493752e31e1d13da29962bf498f74810207642300ca20c351713c1be538d0b51d2acd17a0b5f372e818ae540299fac35eef9361237d2603be1f87a11037322848868aac079d9d6e3e6fdccacf10c1d8ab5a4237ec712c7e8dde9b14a38cbc2007536e4654476a4c2f1e34729b56273247474aca6109b441b858b6583ef4e51358b95b6ff8852f6b2a5d3728c3e1601cfb860bcf05fe16abd952fc21a9971f0bb751783cafc2498cbf3cbdff266d5672f64f56215ca583d398f4cdd3a3c1916906e37f865eac1d0976b9ab2997fce39b87926da871ebf8cb8c24824959693c64b87717c8e2d41d7b0914d62051087b968379a2b8dd685f333d9ffe7affef8b414e7944c21cf84c775fe9b9117655db369604914db3661e9318e0147217ea84e64d2aecf81163069c1aa47ec7cc59273528aef9749d8790792cca986b34045a63019480b2c778e1a03a48812e243ec3fd8944b086b37cdbac8c2f54d8f1b7439c0a8477789805c40e4536cc4aebdc17355601cebf12f4c758fcb6fa7843be55f7a19e3edc436c77648c66c631a028287296ad2d6867a062b79502ea8eabfeb89d260d74cefe349c2a67168cff4b2ba07a015f2c3efd048d6eff8cba7335ef2fa2ef2785fa872c37ba00e3a79e5618277e2ebb66dca48ee03eadcaa8227aa582c9b9ff9fd350a8e7b85a6959e434b9c26cb3511e6990191cf187cd9b57519c06e6e3ba5b80b2693da81aa4d7be12dce6784d2d8a99363f9cbbcfb54fb26a089181255a8ea08128211c69908ce62e4bad7c63dbd828ced13ede6e5fe9e4651fdcc2527c6120bc9db1d1276ef78787d18874e331b05dca58498dd7621e1f2c372c0570c67952dd46a1148480010b4bda990ec722474efb19a15015f523919ee65c5141b80e93ae68c4c8d716b3052d7681b7ac3dd21008c3de452407676e294f7830148f7a554135032b7129ad73c349a6dced4ac3114a6c354e19b96d285e59911eb33c373fa6f92631d10a49262d71a7636d2611336fc3b02f6e2378bb2042544dded21413a092031e33fc59a453c6280a580fbb3b062ca682525323b001670e98804ea19f83b1f951cfe4c0c48cd9a80d3f4e6afcc2afbc04cde1b340ea38dd78b68f58c5bbc61639a04907a553f77bd84aba9088311c53c4e9a06c9ec2d5a0eacb0756d26657861832abe96a0017b915342095586151de233c87cd898955cd9b6c64d3eccbb9e535c4475d8c0559c53b6933104a700fcae7fc8569a6eed37dc8237be3040193598461303f5d0e95c3428682bd3dbcf1823e111853955a6c0281fab6553af09cf0268862ad99ab7ddf9d99fe2383d3766826a534175a73aa82b611b22b970949c41fe56221e3b5f6820a56ad85d5ed76edba024930c176ca30bd0f9d15a4f27009f37fe9ac95431108e35d4434f34d540dd2ef03e83f92a38133092ef7cc3d88ea3e6fbd07fe6a54099188c202914666bc32501fa4ee9644de62450d45a148e8f9778aa13432c88238f4fc8b785d598cd6c381d3c80f8a413d18cffb53b86f667fb5c5d05343f5b6c324712b27740a8e844e7f4ed97e29ed6c206009145d452e1dd5fdb29ca1779c93e0dc23cf16059d4239a7c2857698f5f9cecbb55e9431a92ad9b89d39fb0b4cff7f6dd07bb6aa1da605fd346cf45d2d466ffc76526675f6add32001052a68f6b44f1342a3e04efd932102dc57ccb2d5d066cfbd2281a4a4b01e0c41b4b9022dc6949cac48ec52b496a74276715a916829feb902e981e140296dc592cfd8c60873d97dfcfc86b13c4310fca6400945334bfdc19d331e7c11aa23ce4b23cbcffc30dd073a12a7a14bc505cc4cd7361097326a66c5b0f7b6f8b77d23f34272caa33b9b3f09ba78b77681be0f1483ada50b0027d09121a49ee4497ad96c1790204ec09e4be158d8bfff28f3bc9e15d62d22db26ba14a7bdb9129fa435ea179ca95950bf9f5b26086d92e5d5d3a42eae1c6d4c1bf4d8865b13e25344b802b13f399e2b1c3a6ee53975c745f434ac2b81af9ceb0b26b935daf44edf3b444bb6bf27368463910d17828efcf12e309b9e179c9e106078597e86f0756383e7c2f85bcf22fdec933bfa42745e0c32b542a0d67c81410b0faf10a2524e10f282310ed6416465787d38297b06d491ee11e4d4a4f39158e1a38ef8e71a83f08d23e542a02d21f95f16ed4695315bc0a35d338acba60ff98c6c00388cd03f7483808c29c0aa488476333b4918a7750734bbe7491f9edc5b8a5410de59d2970bf6727b6ff5bcbaa3519b0fd03746e29662b53d153285445cf72200a2b09e14b5799620544506aaafe825b42c59726c99d24950ceb301974c9c037ce03b66ac53113c8e91bdb1d5971994ef31dca7188c34a6bdacb59298bfd62e7e28aed07b13434a66b26221c1a5abbcae637c630a49f1c0949816ecb065b0f4db3620fed460e9b23294038d6531bc7abf39f2fddd0799b48068de2a58cbcc07d0b6266bd3e4f0ea4c65e19d1e6f649d950dbf1147070db61d58111cf66fedd2abd90966812fd62995db945e5f9ad2cd1e328e1d7aad0f7ff3286ae9c5c4995d81bf14b429be432e6ef11b20d43d747e78c67b695526c8211f5c64aac6a1814fc0276abc13bd891f9c662510c29c7e3bc2da42dedc23481cbaa5334890661586810972f5bf413f475ac1d32450ca988052db64941e21a19063365d7801640998502232c90ba9d8435d03a501a9f490eeef08c8ecb019b4ff5c1dd34674328ea5ef169b4b3bb2c6b4bf71b5cea27a5ec98aafa2effebd4da690b5ba2c378d08068eb5b355b680bd0d51e9d6ca2a027902ca89ade68d2e39198bf0a2fc160327ce48a37b06cf72af3b7ec5088eec65e5b123d04f140c181a4a6f056f5471504ba01055990452d6bc05d87c067d7a4f9cda6591eddf2ae7c271ad3ab5de349f221db7321a88cf44d9266dc9e9e31eb9d988d87e0c16f8b1bf52faf9155698112533f2ddca325e2a3489af94f9584e8783890cc37e6fdcdde17247defc0baf88469c0efe6bbd7df0970b49aa5f74091546a7d07a21812e49631387142741bfc263a3f5c7910aafef48f50b03234bf51943fc3d2d6e11cbdb0742b090af3e1f7c939d6d6ad68106fe1829e6454036ce8e2b83bc39c3e425e87ea791ea7e231f80b0fe0c0339d2840c968f7b39a0567955321eb6db73b4fb59a9d1bbbaab1a15ca4afd774800504d159c14f7c4a3d4656a345fd813c33fe5e81e1ff1dbf1fb5862a948782151ab40e2987ac5f39b18ca9218dd056f7ae8a2538dd28db62dde23faad65f49687d9d771e3099978d4434879675d921c01bfd87140722338627c74f297e7d974c3085eefc2c743b932b701d03c513533c0c94a801b733c73e8cfcae7e583633fca220b24758b371344ca303f91584ea970da1e088974b0cc37c7ebad779d08ef08bc476d30c5ae8d7e9f736766a02034fb5b7ccc4bfedbb679c2946d25cd02ee60f9bd5c62b71827e9fc265d1b59c0fdf7a6a092a1f34cc9113aea630ceca7c9442f446a41a5f42df23704cec0cb26511a7fca3a6b0a120825508b8ce6e207b616d3c184a7bdccc0d91613b7507a8f0b79c9a3a19e841db014971721133a8d2d292d912d682790d7a2ba22bc3cbe9742870d8fad3951a39205124c1086cd5d7f390237dcf83904700c47ec67878325e3233dc56cbc75147eae99fe837386257d8b5a5d3e5143cfc5bfcbb121246980f0bd1ed2be26adcb347792613b1ec275ad1f9b17e9621d407645fcdd59f906138bd91cd8238bd6d4d8901d4e6bf511c878473d148447b4115336a9c0e397bb464d2ba310ddc6719a2dfa8004ca96a450ca35478e053eb50c7ab45a556995b31c514f857771f4cd0d107b44abcf4413025346d2398ff457fbfb50c1bda7c0823f61523e7564a97cc2d6f531381edbf83f96b5c529a22ae1a1632a348010677b47b879c62dd131b565b3fe1e29afb01c414b22a18849193dab948ca98ec4f1978b6dd536aa2c3fa769b3772d57ad6249ac227edf90251c56da5e139c29424555dca0b9054de89512c013a45bf432d5724545c310286d3c73ea0c10f46d663bd3929cc531d3708e4e862f59c04d26f677339994b101b0d573a1fde510d50879152e3ebde2a873ccc34fc889edfed54b50ff25b7b0d636f43dbfafec22eb5e40b6f98ad59a37c6cdb99809c791e616fbd278bf8b632c824e15f53a1f81a52158b019922108adb55e0718451b99407e8ff37c65471cf61357fe88ad58c98405177324c1c3922dd99b2e88e225986f358fd5fdd29311d5d0a6cfb71a543cdf9fe9307b295f565f40d8441717da5c450d6ec4e49b7f3eca7330fa882d0aae583a43a418e67f6fd81ae20cddb9e5a8b97b4a8418ca229e8a28a47ff2e7e306bce55c73e25342bcae69ca27088a2ba449932a1eaab97eaa45a1eac586faf6a991ebf33b9a3654e3d5445de531261706cef1c671097cb88231bcc778abe4b5549a718b726db7b092e99f9bc4e731fab2ade99ca6a61cb76fedeaccb6fd467808303f53b29b4aa8310052d2eaa8a2e73bc69665643535df186658f7cc570c7a5542bcd16f10c4394dfdd47953bd351620f016e9a1de28789eb2496bf8be0b197f2b205a6fc4e90df25f4394253c79965fe0514301d8b6b3551ebc45b39990bfd4af3eb3e335aa02703dbd727f253400eb0978a86afa4a1b05fc9f75e95c9bfd831c7eb30105032e9014bf84fec58baf043973aa3a607feda51dd09d51e37a1b7f16b2d94c0dea2697214da640d94eba2301fed428b6cf83aa461e7707af53a83fa9f7bb7ffec024ba8cc6cd17b11a1ecd811a40cbbc8752bab269492e72c123be347d2fc9f69f6b08e6bad548a140d828ac4ec92376e3d6410e2f9691c7be386908debd9ce1541e3a6b0f4a1a7182711a355af38bcc9671144f8858b29afda12c919a80eb5c02a233f46bd3d2c99b5680f51fdeaaac06632d5eb721264d70eea711b50474aa17afdbbfe6304b6282bc1de837715034fa1f47f63107a0b6db149542a2cd9569dc3bbf15c452b0706532f86d0439e8de11fedd7497d9767f81f0134a9543c20307d0fb6cfda890f8196e91a26cd717459bc0b27c339ff513504b118f86b4468729458a13ade00413d9546ee50428489c074e01576813ce66f082f20586cf41b5c1b40045252faeaae7931fead07e2feede07edd6ba58c87261cdcfaaf1fb03c9d309a4b66366c61497178ed5c5d1abc17355c9a4760485623842842693841dc4f313f6ac3455fcc3e5125882488a7076fe2003de7169626ab5938e04ccc56fa3e4ed1fb4427ebfbe1219ea3c2b7a5835cd8d5960915d040b233c86bca835eb7818531fe017861628fd2a1d76bf966d8e2da05faa4f1faf10bb3d27b7a652d59bbf79bf8e8a2b0fa11a109096c1d5d783c6fc9fee02107d0ba64cc67c5f87de9b4fe465204fb36ccd299affefba8429e98da83ec5e9e7447a41778d8e8fd31e4e384e61661f22a0fa7a522f52df79e5f77edf7bcf6d6627071fad63b438ca3190bbe8824c8894c3a0dc926c43e7b041cdb4d93e9ea4ec7115b3a33ba1ef1f1819960012b0b2b176313137126cd9cf5457384085d2d1a22cb85852d1fcc74f1192ba21ed85d5df1a5c48155113781086afca346f34cbd4e7b671e73047a605bfe05f1eccbd510daf4f2055594699c9c2c15db4bb6674b40dd303e62baebd2c60a9d544399c938c2aa27ea9444996262ae410178d74e939d22119340b13854582fc58075c99e0345e47f2aa6920537cf2e635944b1776a9ebf4cac480c78ff5df20087342fdbbd156fa20367ac5deb8dfafb8869f66befc1c99b1506466e99f1b54d8cfe5c785dd9868521c536b28eea7f1848b0dfa7ba514c31c970a392cea89cbd5bdafe5e4f2fdb59a5be96de89631608675d95202287c50639b9bf5aa506d7b246c0d9d60b5472e2e2d8222e50e1a59abde00392ed1ebbd17bc32d040fa2700274a92571664a5240a800895b82d2774024a15d01ef462c1fe72abc54dce63baafe92688de9cfab118843b2c961c2946dfea0a1f58252ec660c72547808f45c807c8010eed012269cc437402ea173077270454969f610adad8159fd9cfaf9f9e8d68a75707bd89a2668261a06145f3a6a19fe5cabc4b3b3f5a8c8ceca7ba8de2f19cb053220a00381cadc247756075d36e97c5bb3494a40b81443428aed3ec6ff231960cf2cc2b6425f6b5b7cd1c8df5df8b4186157b56d267c2ad599aaec93713f041f8d7b81892b538d7e763e43519aac9eb754ba0bceb249282e9aa677a2284db0f35b04f4efa50962506792281e0523f6974bfff66207afe07f5b428f433e72cf9446fcf3384b17ec0f49c8b3765cdb277e8290e5302496a1a3675e1922cde489a0f16297efba49b10d89b521ec8dc2408ab6a1804f4510ded08003c6054a2ef1bc429548a5389863c4da2f528369e1ba7edd50eaba1f5649b0788d92fdde4a416989096b01535089e24d342e800668f6f9006469c569bc5c944007f6e972bb58b22c307a160ae72da06398f7dec564adcceeef281e9c285a19befe9db110103e66b95413a596a2031cf6dce6b6f55c11289b8c97a350145acbe3cc72a065d1611b74a3392a0bee12d4c9c95900d3c4767065a41d4828bd0a0299e8cbfc9ec70214a09e1ce58b320bae3f13801740d8f4a376289df0789dd0fa6eced05a67934f7627f16701165dc0bd67c775be155082f532485307bc8f5c3edee5e8cd44c2b21bb9185dce06bfdd1638409d6881f0768b2a806af781f3bc4b4c6b74849c38240732758bdd29809eaaa65a6ca939624d5e43b4f5ab4e1fd6041d27e3dfa76c652814d4338b62f8d1961d647df9f26889284a0d2581c2928b79fa475432b8bf30368798f7d06d48a6e587d5ede3a2c90cc126f8ebe7820159ab9451fa72339d65a0323d8d7efb3e42581dd854ee9a8e141fa39157799c4214a434f73599c03dea3d56208a4619c174b55e13625543abe59d2dc463b1fe0cb2275c5972425747500298e885948fa5f80888268b63680a69f44145e55d937fbc85404a6eb7f22379c63680011b7be1597442d10f32823cc73f94713f16211a1978b62161c9fd401ef765b85fc0f5c8505e7ae4261b8d02f389df13fed05844f3d65a9837e1fc2c99c33e3851df50a9f5ccf965d71dbf65b554215fa55eab3d5e8594c756f0a98e9d4d0e13843100aa4477da334ea16a5def73736740d88d6d10eb16db6efaeaa151f325119224b0b80be0574bfc8a3a5f6f4bf65c8ff907bc767004ca28959adcef24da05a91a18f1260e4d89d6838bbac06a794fa53009812b10093285878c30ad8f307799620e814ea120eef4ba4c68364153892622d1a28788f0bacfb5140c08a39df72e6c87722ac7f757c87b52eee7709f8f9a1b3c6e5f0296f3a04ac5044804e42321d69ac8432b9a8d8534d52ea99075a59d23ca4134c38f725b5bc33cfa43116af552174c081f6ff658d84cab174ab60292de629de8bd833207ccc2bae4df1223b6cab8f56a32f2635f3523fd39045c1b377466b490599ce384678be8803c5642a74a6523be41d02887512f8a41a7945a87627abdc3f876393a71fa6d16d73c874663f6093223096be7ee20b4f6946c25e1080592224af0d88fade9d1130e320008e3a0a638abe03aa45d57d2d0e09283489f200684ab4a71b34b5a29dfa83a79b592e9db7360c5b3e84ffe99524dc398e2977683045d32dd219b1218136bfb43ef5a913c169eb32e7cdaf75136554f94517e2bffe94c3986b82d113580240751cc3fe377a16f1b5864f612fc3eccd1b23a0f5e3086a4225026920e3e9396273ca26459cb6d7ffd155a89f4b5a3ff11fbe4de331bf164a0c315be86c6bd5837d121e7212f0b850cebba179b1ce7f44b4694b5a7192bc55f77ed565e4b86657d7f9b78ec9aa8a95ddda3b26a23f6e982781364c05dc0eb2e79f321cf06115f0cc85ff51b921db8dd168940b20bf34921eda611cc5d7741d671a0062bb1cb385ae2d152967a3e3578aa451f1d369e71965f9ecde2e3363b755bc294226df9a3f5dd94d81aab60cfcabdd1d73de6c6d07782bb51f61df8c1a7658b78158277875803077999894a980432269d0119496c7cbfa233abc2b783b362db66b1189eff146ac3f35537802bafa34ab58c7395d830991d8d5e6d8a6abc1f82152fc384c7d825a04a13a8f55dd6f6ddb58cdf732b8f846dd21e64bc64528d417f81a56364b3de00bfd7772bd66323a0811515c509ba4aeb8942d8a774aa3cfd22bb7fd7904a4604ac046895ebf52b1047cea436e63296c4cb43939048219119e1a75bff8c548c77dba80348e7708339c5eb32b1d28eb8eef6b67594411bee0b795e4ae3f6951f22060a449ed86006fefb42f4af187af1905a9956d17d8380437edb18f0071588c929a11d87a8ad304ccf62c02e02bb05467dc799b41e7833f3276ed9f12bdd803204ed5ccd6f9c982e2dc142831b6c15ee63e582118e2111f24548482d98a9f90a026ccfe341bee9d2115519749d05209986dde8ee896a1b432f18cf56b112b9465f352b60f23a730d491a376c3de496ca068784a33297d6324fdd7ad3c1123537f63cea3c963be8abfb07ad3bcdfd54abe7011702d51dbfcf0fd7650e2793dc4f4de36d29a939eafeb9d87b91714f265aaf25ec8fe5b877fecefefa717f3920db2aa0457377d57f897c5d03b2e0f86c5101c74988ebfd4d6fe785da7f825aa8faaeff6d8941827d0fc632bea6df864d3a2f47060e6e05e2c35932aaa9caac9fec3365166a2f8cfe4fe3f473edcd44829c9f9c1047e94d7294f428447652d1c402cee44ba72b2a5e552e71589c851e2370877f5d555db9e4b247bd8cb96cea57ee918d8e1db0a57486ae5d08db5f37db6dab3e89b19ac6cf53d5930852940a96adb276c648c95ffeae056b029750f9fad9cdf5eb6a057f68386b5501f10335b6f06aec7ff40bd50e94b65e3756ce695d43fc51eed4c0f8db77192361e1776c734cad7fd3da56cb3c1541252defba23346aa62c57b6a8f5c0a7a19aa0fc9976a9b7056b81193de2bfb6a7e800545a584092ed886b3e9763fb850cc614e72200c36a61172692756aae157a6fc767c8616c9317957e01d46d428358fe470249bd83b54cec561c416fac769d477229f93869c8e1a302636c26467390c8f491aee5003469e7d1081d25a1b2c8907bd64d596260990ddb01920112a92c5f38e878d62bb74e9e5ef40027a4dbd04e00f2cfe1341fdc786c44aaa76416aaba484b0d9ebe4ea170f0887f7b1c0c6206c90b7f886b7d926e5d6fe2138924dc8dfc7492f63dc6494a316b60706a6d73e3a5c9492c9619aedd0e550c27cd5300a0a89ff10d134976810a16f039ba2717da7dced63ef1c9cd3740dac5a59c8622f0e074d4a3291f2ec45b9567c5ec1058824f15a04202de5ca30f5024c43a7336b8ce2854a3dbd5a198dcb85a10aee6d5d428267c3b9ea74b713a6e1fabd952638fd5ef85518c6a518d0adf64c9478ff5e8e6db397e1dc1906218afd4601073ec83591f3e572f594611340f07ae70dd47181dbcdd4b7e65b316248e07d3fdb0ae65e12d130d4e7b2bed80103e7e6b4e004a0b643528a085a7f8b3155b67bd23fad4bb5ed3f7cb793dcac21fe126f2e3babbf2b27ce062ffd6bec278a7199400a1f4c11c901ea496198fca62ce95f2d940134f85d25dc24474b229db30da7be57b4f079ce30d40bccfa6f4dbab1e17b389bc29c812baf99636c2182702c9e3edf127baa641ced3d27763ecc984f8acb75c67a870bcb6684af2da38515260816e2aecd404b49d67e07714d3f30466f9c68d7a6741da52b7839161a9f9f25ef4095b31e739292f3e062d120c1fc6fa66827634365be7533ac58020b2b9c8c6cadc74a760d2817571be5bcebef3fc12350426b82c75f88170799adb151feea83b569e340d96fc5c93bdb8c8b573433bf80ae3e10d31ff1ee79ec59ceb9ef9ee5035e25771ebf39842c33a46ea85cd20cad73c06afa73cc113b1b0ad37dc2226b0e7e788698cd1dd97e7ecf5754851cb9dd17d26c809b2600c51f50097037e14d310c6ccb9b34eb762da62395a638373b2e1327a81e6f97adff0cfc663a1da68a59627020d6f60d6d0c43f4b6d3f31773c17d60f68d6a9530a821c3df7ba2130ccb9a90d682b490f9cca72bc1f0e9bed698f739c87501a84c9e59c2987c08c97417bfd45155f4050452061c83ddfb251b909247b6fba5935e74f697b23ea8a39b167432dd419ed8ee7e61a6ea0444b53d0aa512bcee97607fc0e4895d9d155b9036f70be7632581ca8af4d63f2d0647a42ac72ffe7949af254083850eba30035194aa19cc951362212bdebd59557cfa615d8b88f46dffdd22af9ee9e6dcb89ac90ad03661e8843b1a2b0176552dd94567c63b9764b2024f420657b22597a43f3e061449eebf1f8822616df65076728c1d2f235fbb24ea99a17507829323f850d3d20c20c0f4381bdc889b669c1bc8ba8c2f72fa80872695ffe93d0420eed916f59ab37a2d03c0ffda55de979b76400a8aa79cfea2751a71b05f18f9b7c3511204daaf3fb56dc486229dad02abfa33adf75e6db9b71d3ff3da7334aa0064a7ae64e4a08795db0e4aed52d7b77ae8ca62346854d6412abd927fce240b014a7a8ff4592b28ab6c4be3f89d9674a5f339edb6a16531ed8c925eb05089a21f8e439f86ae7ed4811c424b4bc052ed87ef8220b19a2b9cbf4226a2e66a1ae9ff8e3edad6ff92999f6b685ed011bdc7652e012637d02747cd262962602bcfb917e26c018e25e651d02eaba29c7d485cd9b918faaa5757ff5741bbe697d721033146fffc3a4b3f5909a4cdea07a5fd2205d2d270d03f67f7139d925145df61e0fff1dbb7201518f3e95f83e424c32651f0e387b13a582af96a5e5a80d5db4c0b8e5ec15dcd26b4c267792dd2fcbcfd40bf55ce23493ef3d0fd971d4bea09d45361a57bc37a99d7eeed639ff1df1175e24ba339f0a5d47d77c1e86287f82d050af175b032f771b0ab3a85ccb411048858451c48ccbdb82a02f2216aaf5127ff447cb200a8004043bc0739081fa9e9c40c033267b132a2c79665dbb22c366420d82f9962eaace186a941acc66a909ad358039bf2829f3fafa3196666d96f76bebd952965aaebc786d028745e97d452b8188a66707fa3890d13282dc51732357e4ed0f23b0b14ff115120d3faa779a2a284e90351f27b80b7d83a851dd785ac701c1524dcb0a3f1cfb6e5601493c88d071523c311f8453a6d2c70f311ce785234f9e4c46d06da73b334cd27d10bbf69997bd7c87ad07514144cc832a8973e6e0b8ebc757e1edaf66b20d99e72fd4af806ba2637ac713b8a508a38483ba248b11b8f21acb22595783f26a46247c7cc3c7d31dace98622632c69526850ed120cc543d8343df8f8e199068420d2ff808a6d48b2277a063e89c74967ed9f379c8cf758d38ff6140a214bdbbe0b7727f38ae2ea3a22c56e5e64080f170b110fdbdf5fc3cf01947df4c882a1b69985929d081c4f0ffd426e8f43922056c0719ef84b3c6eadcf14c761204ce6db0fca2d2bfede07a1df6386df39386bc64ad4bd8f65df4118d67e244a9114a3c7f712c757e359ccc75ee05e9692834f0578c0ebde80ea00e91aa89335a44926d43e868a9066c37254227da515b0ffec4da79d8146ba1eebed5ec96a4c69641f129d34979ea4a21a02677fe0471faae36760b040696dcd5a357e1cca24ebd9a766bafe8d5f4b22948793c7696828f9ef285bbed335b62de545accdba331504ff2799fed426160ca26ba90c020753af37236943e0288e316aa8c4609919f715a020d6b3e89a7add7e23380dd5c854b6d1ba69d41b76beaac6b17f114a76a54626c043d3a1e943ec71665d67351c3f3c7fa865e7492c1e0218e20ad4e7473989424c10842625628dcc608723f10c9f95fe65cd7d1b9ada9cc78a287e6d0a47a456781fadcc8c8bbbc4d57b88a1a2d00c0c63f10d8ff81973386f3f440a643417c4e469cedf76e75b32d7acc15e5e3ca8c02acec016c3e084fc29d5112cfa140c0fd75fb41de6fd0f8807057bdc503cb331beac2423ec0348e6379b0df1e231a2caca509583e7ed3921c5c405e7ea45cba78cc1db32a930fcd4bf2892a68e2e478da3e52301ac2aadcd728c78563a9f0498401238d9ae8ba202ca1bea17dd6b12f0d2af0707d5951df35b7cfa9974463173754d6add4b919b9749346093ded6296600536c66f5f4a5335c7ce7b7117a2d729a5a389bad8b98634e64cb1bc6732e7a3a576146a3fbc4802543928acda3a20ee9d25ede146e61d9e8fcae20de995dd690440503ed5d2464ab9b63bf1c762b978309647a0bdf0ce9d372e4d596356b4cf36f566678a57ab43ffa4ce42e8c14bd47cc018aa964748ff041a11d8f9f3b8a5660f656153550820ace6eb91bfd016547cd4ce204bcf173cc6d4af522dac018aa91842e6532945574ad0574fd0018206e04e5ad954ab6446a0b6cc0db34e28c8ea157c67afa5f5ff038261ae8b733e79316bce1c2b345f9bdc07d2e615606dfc2ee972bdce447eb01997785ee3a4e20045da03d67d3a8b993454d88d7de2320f70d7fafb83397404e9d8e769c20e612138ee1d6b040a1b01a48d57831401203657f4e6709cbe11c0006808f0784a85417294340ad42448225d6919d1323b7bb340e8ec7b588ebd2b3aef43e1fb9ce1abb41ab03585b47570ddbcc4033531211ec0c39f7416f7d9c00b020a5d8262dd2e0108465a752f1d98a63283e35b2073fec4f476d65dc8e8485872cc441d47906bc0ac23591378726f00004e33259ef66c2767286320c214ccfe9140362119fced515b8ff7ae9370f5d95427a7654946e803d5aab24cc8833d210d60075b24b07d9bd2bda9df3b72f4eea9eb6a43ae9a782cb4e238b14a1d979b7cba8b7f122b336f2c5de5054a9dd6f3ae01856a8631bd7b227b12cee94f5cc2e4cb6c544806552635fbab0f6cb8cab9fbf30643e39e4fc68e634ed39e506b7f1301bb56edee56a3968a049b9b4e6237525edb1ad17b55fa20b037d17db785c905c3de223dcf73077bfbfeb471bbc538c4da821092590f831e1d45c418360ef712514bf25273ee06a4ef9ed2089c7862cc3a830868dc8e17c4f00839bb1e68d588a0a8c88bd20551d5b3ccc45396c44005d53a508802acc86a51a10d22d798897de82c2cd7bcfea07a88c00d0e029e47cc4c876685fb63a06e5608796b9bd6a44804027e8b12827a50982070694c950f16928cb06e8a291744e9016e1cec47a4c6b31b6bcc263151af9228396a8a3c68f5045a5e6c47f58551009601f4d24bed82a7ce2f487a93ec095f12cc4ebcb5174499f945da15af168b37e85dc8c7181edfeadb9cb315950b5cfc9d92892d4cc82a1ddc1f18bc4741cf20b9405b7a178b8b1110024dcd12f30694151d8226e2370ed9b8e0d5f7ec09111d4c59655b8f9ce099f73da6015fe5ccc281462cc05f5ab9bc8ace1869e43a786244083ba2f53faa823e92fd00a1d3417255242fe81351416ac8e18102ccc188e58120b75e3185618b8974256694f169a1cc595558a5714a7a1eaef5e919b224943f17c78d0ea666de2ae59d187dd5e6ecbc76d50fea02cfbac8d1e4dd09918aa121564f292d08c89f3deae43ecd0d027084b22d8103807411e78b2908896c8c915b69df0be2d6ef265742ddd1d22cb9f751396a7394005ac061168d92921a00c79067274773ab229e9cc35cd748183a4a2c1cb27163b5dd638c07b331b1b183294aaf2a5dcc81a5f6292b2f2622ca023a90023bbe8caa8a1f791bbe30aa6419cd74b1bc6cbefe7214b823fb93c3db7d0aa51d64fd6912df5c144b9c75faf13ed9fdc5ae46097ef4186bfef969d58444494dffd042f50d59bd60f7822496f5704968eab142d59a59aa6d8f0a18d349996ac3a97ca78c67e0905e1936e2ac02e30b44444d7a76778537c204714e17064f9c2a50c07930d1a4879215448c7336d3beba12fc7858549018230f287ea891193c94da7f36819790cc38c3d768b8d62715b2b4bc9b8bb8e0cc074b4df303200b2efdc7086df5f8c224bac84448332a7a14de513cc3a586ac42a3ec586366c45be7e809e180e639942a90a6a6d5522e908a47dbb963c60db15fa0efff5d03c6ec6b59f5ef8b927ca70ca738a823a3de37122897ef23c38eb41245cec58562469b0fc2910ab3443a2215d66b6995fe0c70372f1b7780c2df045341f819010541f5a941eee665c9982735b53fb6c2cbfb63d0138f51b257eea9deb3d7c62fcfee571a04cc6efe9b34851312164d107ca33623499b6b8b19d8f36a50ca25fc4ce4346cfdbd1bc4dc38c96b3ce1098f856f1730567304da9e047985cc319570294003b1a005d9153afe226d731ea3cdc421048bc9e6f2f2910b6189f496a7c40ca74fd2edf735f9431386d196b34f3e30afa5d9e647fad98ebc0a4a5846b1da0472c1b3d267b623d6e4ccf207a4c202aa5b9a755d605655493af9e7fab8b5e70a448c7432f5dfeed11705a2ed7fa691d2785f148901e2dcda9fa9e72e8d80b20fb40d7f6970e80ebaf9b5fd4b9685b968f4ba3f44a06d416494f713e6429a2ca7f2aa9e8fbf95c4b609216493bdf7967b07870736071e07970d8e87c1e595588570e072bd81cb9b0d5c2e09e1780470792556d501b85c0dc0e50d73f135707925d69b0270b91280cbdb0066ea0d8e7fc1e5156b4886cb3586cb1b0da9211c0fc3e595f8f68927cbe7c4e56ae2f23643fbf8e078175c5e89efa178b2523270b90a80cb5b0c3df4d243383edec49335d382cb35005cde5c6eac191ccf82cb2bf151154ff427b608c51300b85c61e0f2d6c2e5d20f8eef54f5052ed7cd052e6f2b58b8bc82292ab6ecc478155c5e29715c2e6d97cb5b4cc1e50d85dc51e1f20a963ad72a9e664d6c894fe1f24ae904974b9b092e6f255951b85cb7125cde4eb85cca482fbcb4491e9247c9b5a3841f9f4b353454721b93b6cbe6b2c19573a5ae1b22449e0b14ba4470a1ae99a19c9cd16dbca99c00f4e31375441dcf05d69b1de8e4a456abe70245b771a60d5513d49a8aaa333c3ccfc5470a2ba09fbee99be702b5db38c3523d3b3a39478e3c1768cd582cb06cac1a0bf5f3731b633f56105a01f9f0f15c7280a0dad18135cfa531a5283a04bda136b426091ccf05026d614868f554309e0b6c4c7588e0a3dac92c98e5b9c06bf55ce2135e4b3c868a01a681d415709c028eb78e682c6f9fae556c89cf2f2acf2382774e55db4c58c85c3bb0457c9e01bfbb78315996dd5daf55cb905c6f3c5b7f05efb582c1f0f1d74e8e01c3676c06c786f1ed08e1280386cf579017141b6c5373f162fa7800f8bd23f07b48e419b246b1c1069f25b600486309407684081122448810214284081102040810204082040912244890204182040912040810204080f0284207de703f8b879758c2d183d835efbdaa690f06fc0eb690f159af9b9773ce0e4b1f3418be36572b5785d8e0230b0ca1115bca0d13bf8c4306e47264007777156716589ecac94194f5030a4921196ddf133cb0a1dbde701c6f63d7ec78d2054c9b4864fe5ea34ddb6b5475db4aa577a758f3a24da2c78e7252ab5e58a65911c936923b382b31392981523271224505458a95dffae34c856679c45881ed8eee66c6a241162da66add36ca812d431df8a3331734990b7f62cbfc762110fc017774747238b0e50c856a938e3ec9e86439590ea594ba704a61a02da79452da9d5218fa534a295d39a527ca9d524ae93da526aa724a29a529a774069ae294524a519c5217b4744a29a528a754067ae294524a4d9c52015093534a292d39a531d012a794527a724a5f28e994524a0f296d41e129a53b024029a594ba502a4f47a7db29a594b2a09452aa439bb2d3d37700a09452164a45a7d49e527a136b0355b1e2059893690617320820869716017061010017585c6081e1a4a57bc185152c2a4abe721277575fadac462a5a8a2a48a5a24a516d2950f0a8a49094502e3a6162555aa1acac492d5105a9542aad847592e23129c9483bc0b8ebc2e00eb6b9ba85c99d1da90a5251955461dce8dab64dd2ac364ea5dc761b67d51259b22d6d2c12f188e6a9e561591b991b51b165e6bc982871fa14a3ec11a58f1fd8b2dc5eaae0c9489a9667c9026c2f79bc98eef672a64f1285922894ac41499b236d7ae10a4f46e2989e2316865ecc4a913ec9542a289544cac84f9b520ce1c9489e199e231188bc98abd327a952eda854aae883eda38f36fdf6d1882723835c3cc71960fb98f362526e1f77f449ae78e0d8c79a369db87d0cc1939934323c471160fba8e3c5a010ead344a186507106155149b449e5094f66e208e0b9a1b07a312843fa34532922a922a920559b4a1cf164264f0ccfddc3f3624ca4fa3455aa1c958e2dddbe5bf06466d0cb73bb00dbf7cd8b29b97dd3f469da55efe081ad95852743695a3cc32d1c793127407da228d40a25841a2ad22693223c198a13806778046ce9ede18f3ed1540af2a486a488601b6f0f69f064280f6c315d9ea10db03df4f16248b787367da22a15bc51a5ec218b6748026c0f47f06468d00f7da2f5080d06c0f39302b69fc093b168a07d05da84dd1ec78ba928207b1efa64a162cb84e1f9fd00dbc77832160e6c31ff78b617d8feb50b6ccfa24f564a87365db787f162e4edbb3689eec2f30bd89e7b8ed87ec593b178585e4cdfbef6c952c596796b0f9f8c15747b17ac0d76074b543c418952815a81c28132590f134e2a9e32944ca5523c50264bcdc0a38a276cb552ad542b159e97415026a3712183f0bc5cc513a652c9954aae5472450365b020196850f184a552a8142a85c28132188f0070f0c450a8542ac50365309c1878f0bc562bd54ab55241198ce66506e1f9b99a2bd55cd140992ba8050d2a9eae540a9542a5503850e6e209000e9e170a954aa578a0cc85e3c283675dad542bd54a85e7691094b968e0c58206e159552aba52d1958aae68a04c0d02000d9e359542a55029140e94a93c30e0e05a2b2a65f140998a035de0c1f3962a9eacd54a65ad54962af31104652a0d6c21392e37ce56107e5c3daee2aa85cb3d1f3b9217a04e0f17b8151c8b0a8ed3c97ae0f9152ba214a8d4b3149e67b9f6ab8c66659562b5ca68f0bc8a14ed842a28457542a50ac2f31c8a4c054bf1a460a913580a4b5d14ac0486c270503054090c6531148683e76fe22aad301a945589d50aa3c1f32b25d5520595a8acca5205e1f9142796c995e229b952f64a595c8a07cfa3a0345e17ce85ba50170a07cfab90e6a8ae2e9acc67b5aaab8b06cfa7e8609338c79faa0ab254397d8d83359613d918d9ebb3ec429b0b775835b06ef5cc8b691a94f6a24f35628bc52334842d38832d93f51d18141c3be390e7623ddea8fad9e81ba897f04ef0d66fc244cc3858b0ee9a65649c96fb9b8d81bd9bbb9171d0a6727047c31a580377409bac76ad90488d7882e996fe4ef501fa7940405735e206db18f6cd01016fa817bd6dbf5ed1fd0162cbf5606fb4ebe2b9f4b37bf30cb85fd81b7b332402e766981b98a3a2c3b2d33328176c0ef57d6a73401c7356eb56fad5403d5c1b17d3ae55832d0e6993bcf5a8b25e2d0e3736edd5e2d0dc8d8cb3d19df51f20c6b81ebab35e3994176c35da84dd7a0f36da047d32ecd60c8b802d4804dec4938b6ee9bfa83cdb90129117b9c1d6a14f5fabad5262390bdcb79e99346c3e5e79d22d42be2f10f5259e3aa85bac5b9665fd08b64e832dcbea5bf741769065613646e4b6eeac5bd59239340359ffa03344033ef0c10b7cc092650d96a787f4b00f0fdfdf81a365c49619b9de112c69b0c4d12df2cfde3071bdeadf6c9cee300b89ad1f7ff409da142911d986449d36d9e0c5ac20d2e0c9340fd842561f3d544bf80217b0de87d8730fc5cb67d6ee60455ccc69530c784a278e94832cba8b907bef14735e8bbcceb5836554c113278ed86ef4fb86ebd46b6ece6c39dee8c49b36e1f449d4a62c77303dfdc3bdd33a3fda845d6647bc182d0789e534ceee000f8fd918f07d28d449f4500f5911480836ec080494852df71006fa49f428ba31a85b624e0eb8053c8428279e44dceb968edb164bf1ef9ed4c276a381ba9345bab386c8fd2369da94fb074b897a316f2709959123581e25b5e5fee9d54f9bba489b1e50bf7ead53ebb6b54e6948e4893f7e74b702471fddc118d49dcc9206cbb7a4e94e46a0e7226f85ed46fc0f3dd43af1146fe24c9b6e740ff59136d1bc18ebf2b1032f067b760c3bbd39c338abdf2b1ba33b8916fac1963b074bf91b2cdf2ba11f7127c71b60d95cf41183e821100482401af6d132e658e42c2595ad71e4fbc686b65ea17ce7f86893bc3c958f17eee84e761775624ef4f15c64fcd1cd03ca441abc16f232163991d2908d074b6983e7229f7b05583e433162cb1108b729c703bd9825bc98be11577d6a77e843f8eede016fbe604d4b58d39d7c9136b18839515e762f6df2112806bd98d70d5b66a2ee6e0c2d9c91384c5cbb9306681adc2f3bb429077d0dddc17764b36ee488b4fb9735df42c6c9ee3eb0cdcfadfea5bf783b38a01c8cab038cee68cae46eb82103f3ca08a34def265ebd98b6bc18fa3dfbb827a5944fca4b29a5949252213935f8f430e83c7d29d6ba6df4dd146b43f9b1c95b3e5ac0c10da2d05db79149a96aefbd2775a4906281363e7b355e1c1a5bdacbf09332466b12070c8e1480c137b06bcf220c93e7f7f37e7dc68ba127c18fe0377812d16b81b737a952d31e2f76d2cd2f3c974437576c7f34aea402831ff797ee45617b3141bc185833a10f3cf34b7c97f871190318fab85288a64d0ee86e762f95e0105b7e8787872ffb8556a0c82718c61618eabc16f3d96586c5f04f56edc5340c862fddbb40e510eac40b7f3ca8131f39f9a44e84b56e9b8cf576d78759b9aebb898aa713d46c143d7dc12f7d04d347fa86607a696da09abda131a5cf206cad698c3152fa3829d41d7d57ebb675d7c9e7220d304d84c46007ce1d7edd8c9f7753fa0fc399ee3a6e3d1a328494524a39a7b49173ce29a79497524a293fa5bcf5824d4a29a594734a1b216090839f1018a4f0ecf7da74fc6240839f10181cc16d21862109c31318be740c862ff174bd96f9399b7baaf9375db0c0bc38e0358c223a230a78d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3c383acc61384af050a51217bf2b00823f8092922099cb5562a4264c81544a66aab550d0df8dd05cc8bc1c2165e3739f05a4e2608308c5607234342dd0dc126265c96292c69f01089a47202d08fcf0fbc6d5c8e36d888f591c20ae847244af5ece8e4f4c09ac6e546e11f2b08ad808230067730e4812da02d0c09ad6ad521828f6a873e2278dabce0176c6663c1f0bb8994a9b045bcf2070f08af835208af254aa02ae078042a65c4cfca1d15bc134c039ea5100c7896452ce059d2808726bd1faff04e35643c4b0d28e05906b1c3b31c810e5d32847782a81c9e231212f01c9b10e3394601466f46bc13ccc1e139dee086e708c486e7d803047cf47e0cc13bc19f033cc71218e039aa003f47216a68d113dea9670af0dc5320c0735f6100cf51032f4e72c43b754ae6b9918879ee21d0f0dc488069edfd6ec13bb5cfe9b989303db711333cf70d5cb4cdc23bf5900ccfdd01013c77086278ee12bc34f63e2cc23bc59bd812dfe2192e2100cff0092e2c3aeb9e2191966788040ccff008003cc31ce03ea4c13b45556c892ccf30071281610b5e381cc13b45a1fabe54c00edce797855705dc9fc08b2acf6f85e21561a51fe39de40e8e94e7c7330013cf33e076c19d6f6274e1fe8a7792abd812e5fbf04d6b43c3c4da002e5706700be060ae1d195cae0ae0f2b603a70397572e9b1cb85c13c0e52d062a35ab3123dec67c3a4c4e39232631f913b16843c49edd2e9e76543e939b51650d1a113b42cdb2cbd65a8d50af5a6b663392760c236958166fecae5aaf63955eb5ebbaaeebaeab3696323b42adb5beac56aecaacfed80b672c80dd19346a40e00159b7c5530f3eaa9daefbd97e36d455a3a3676254c59868a3ea34605e0c7d3c0d2fa69d1796519b7140c09376c56337e28ea55a3b214a8913931238e7acd126c8e334605e0c76f81725d0049ec0121005960e217c09a5c48949099c179c734ed17cf6ac3db34f13659f9307b401f2c00d50847c41655c9d9cc478d4ca012171f61c24387bb4f4c22886611806836118866198bd306a310cbb628c31c618638c31c6186386c238a843ab99f1f3f3f3f343330c855118adebbaae83379a489465a28c3483e4e7e7e747478d28e3c073d1c06b81ba892da9eeacee5bcd3e27075124dab367da853550c7cf8ce762f5cc8bc1b0f5d6c08b79388d7a337e56331575040cc332ecaf5e1727b1ac56a971b006eac074d4601836e3e7e7e7a7629a8661d8ada17134347b5d540dab1a7655ecca5fd4e6703cabc42e8e06f73383468d9a6135c3aabc51255fd2333d83f57a7f803887e3793b9f6e07a683564a8c8be7b5b64091ecb1647803b7f3105bb2b0354b77f049ca3df9ecf9f08032f132de0a5bf0f0542598ed850707bc985763e9b934ee9c013c27944632eb596d5355f95b79ad2bf5585db1d12728149f106a06c3c3949fb80953e9282f71f8b7e9e4d0a4e4a4c3bfb469b41d1ec61e1e013074e0c1018fb0ad0c586bad42f1a402c20ac4930a0ed670f5722fb658299e92e229f23d0323b8849f901914c199d450dc95c75bff7b2fef10bf2ed56e767bb58baeddb693eee8259774935bf2936bf212f7e428b7c44b17e5266ee927ae89f73df194db57b90fafbc868635f10473503c97f0bdd048b7582b8739f1b7e25170b9a402735252eeca213e719160ab47f11c71523c4721b08af51eca505c8853a45ce5d2ca48f194c7144f79d61a8a1c523ce535348a0301318a77915e1949790dbd924dad2f3492d23fd0279e6ca8dc1417c5addda1b813ab5c1bea532e3462fd847513b767bab35eb28e721b65fde4f6ed92db36cde3f6769be476aa7bdcce691fadd33f6eef344f77aadf1ed24d040a3deac8aa49d997d73394f755ece26ebcc0f0f2aa734e9b854dc217d39b4911eb306ba02560eb5d64462b63befba78b3410148ad18a3b26faa426b39ec1b0de038d3e91fedab28028007e5103029e69be0ce0c974f788b1227bf668e760ec16bb865d84849a1c7b92ad1fa1bd88de40be65bd0f7cdd5e17e1e0faf878edf4063735f5fd9e120061173a991b2837506ea0991887c8d47f7254c51a8b054b0301691cc7558e65450365353496175aa4cc44cfd76c479f782a712b0ec52edf246f25b88bcbdd09f7bac5721a579f2b9659fb161ddb300c136127c1441856c230ec30188661980ac3306c8595816918869160d734ab711c76162b03b35caebfcfcae8572d5ef9eccef8721d7610762d7849a09e4105716f737061a1d11b793aa6628e0ebd5105af85f579234ebce98ec773b17edd68d341bd6201b692d8a1c308508c3e2f26e22b5e5115f1f5ebf0c944156c61fdba44cf418245ef67da655fe09769c0d692d86f9684e4fdf83c95fd8b3665b732d89e86670ff362b4772fef4ab7b7f6d6929cb3322c89b576bb406db2489eb79390dc151b63c3241ab63509d7dddddddddddd2844b746779611351806fc84e404e1cce5ba0f6771f6847996b8ad8cd8ddf301d59ee9a017ed458336c4f9cad558b131200704c493b3f156cd8425645a298b4193a6a0eeac062282a4e9ec5689c7b643eac0d663169ef578e4c5683f419f2db4a92da124ac223912a915c5c79645afd621918dcbb5468abebde1860cf7414222d0080e10bf3f23dd59ef71d047060dde88b1fba08fcf7565bfb02b43f18b4866d2e08d75db4a5775f82b2b568c29ac0cf98e286c0e92934011fa401fe8d333db067da0cf73b166b80c46fb31015259411643d87a76815ff589f2eaebba6ac57e61f5dd4be6422b82adbbb031566048a43bcb9ac196b9d0e885a40b676e8de7625d4e1f7ed8b0049e8bf508bc16962cc5138e6eb1fe931ba881544a871cac41b13122076de08eee070365de4b7790625086469be41ba8d42ba06eb11e2b561b28e35e07ad4ad8183487079f348c9e749f01e28d58564dbb6070a621c6e81355bdc1bc9867928fa4e79712931394c7d3f06464703cca8daa6eb15ee2be6e39b9af4deeeb92fb9a745fb76c97092be37ad11d54915c8fcfa2e7a8b2aed9c712368688030262122e8baefd7ac9cab86e3920206ea0eeacdc403e284254eeba1eb55f9c3d1012d7e720c1f5548bd82f21b68843d08b9488bcb01ebb9777a55b33d64e8cda4fac8cc86518fca24d395e5c1618386a7cfcc023373cbdd291438407c9da406f626554cedadcc01b78139fe9e30c4db43eb231a808468bb1fb4ba56d535945d8680653da33240293ac8cfabe813830351245bb6d9d8d16552a55bdf61c4548e0e472c86f324a294b18fa18b1f53358457f4a007a114a417840687827981811670cf090dafb7bb37bf07c7e99c10fdc023f213248a2561d9286e4d9df5f94fc99fc9df84bf963f953f933a5e81b1904b4e1fa2652abd23b923aa8c5a34d97c49129d9a34dd8678feeac246c10e7d26c13898f36272c72623ec320ccf20c57d0e69ab857137774eee6266264d10a835e4c89cfc326bc9893cb19a01f1f6b926cfc6fd52b1c1b3953391b94975e7a863657c569c5e7db47cfeba2ad87b4097b98f41b2d6592a3a2c382c45d4a15f9925479426fe8ddcbabb8bc499bb8cb97da64e2f22a679167d1a6edf22f2e605ed4808036955c1e469b4c2eaf439b4e5c9e0707b489e5f233da84e2f234fab4e2f23db4e997596249faebaef4696590a49457f98adb37b185e5aa3ce5b2fcc44db9c93df1926b72ed963cbbda49486e2ff66dfb7545b7ee65e2d273d7c4555ceea3aba2debbe2364eb7d8882df3a48951a468d3cae76b68ee0eb1e226ee1036ea2aa3370e5957714d5c742f7bb763d79ee462cf2e49bda4975cedc435f9bdf529f7c4596eca57dc28145b72695bb9ffe89a788abb721437c5ef1d5de5a238cb55b98a1b57dc68a45b2609269e6c748b54c1c9735cdee42f974bf2a47b7be84e7ee5d6681addc9a3b833ba9357b90ee84e3ee5f27075e84edee4c240400df74577f22417e6ba7861d1b1bc55a489ab09c5d3d62d528e543c234992925429894425a9e294504ac49c7c1ea200b200a6e09946d0063006f370244952922a2591a82455ab745348a7271de5a6902e5f631c428a3bf591e7c5903e1f8f78a7de6953ed1d04e92021270ea15348e079d149a29348af383c7c3db3913392467640e24815c81284a0662737470570fdb43bf8306d0ca8511b837411c48156467ddd55d1c5e580b802c1d3ddbce8c56c31a41c2458f4eb6ef524d26b3de935f4761f0602e28b6ba19bfb0a24ae8da014b10121710e28842f1423b62c671ea612f5ac0c58b9932e673064063d46a7a34b19cc6016fc84c8a00667552b41fab1031ae81481e78578313ee420c1d733e9dbb3ad925e6d209138adbb49b2dfaa7ddd2cc782e1101be9f4252ec43f487c3df2902e49249214aaff01e616c2f3928b33462c2b49a31b6ffaa4033cdf42738637df11a491b4e48c9cb9c1d026725b2471d0e6f606cd4ac2f6706e21a189c43bc10787bc98d1a14d1278c2264024e079f90c8780a70df4d138a3bfd17dcf457219c7e50cc419dabc980b878849b4be897dd337d77545d7b5d7d5ae9b5d17bbee75dd7a5debbaf4baf3ba705c24d1df7b43c0ef0f094a2dcb9a61646fc84ab49292ec0169262a2c338dd3dd7f764e71c7c51b9df499916e0f3c49b989905ce3dce86c39e69682145eccf609b1dcd1a752a9c7943353eaa891413c1917b0c53cc9a7fdd44c20682121a1ad54fa8564500477f80991810f9cbd7e0f4a110936394422d13bf12467666ee6cf8e9c215d5ebe17f3e2091ee996f9a6b9691d3b2e1cb2037974425f9532b4c9d006a7f6d87c947ee079211e3c4b94b8908deee608f2b83b4484e691cec89328056d4576545df79784261e71d04609dbc8f6e8b611246cb96f84f07cdfb409a7532f46f4f926e2c56c407ee09de20d079e6906cac41fb0c5bc0e0b724c80e7532218bd74b703fd888eacd1c8ba4a2cab64645d29a35ba467d9e8cefb3049a2d104dee985cfdbc0f162469f6741814f707e2b8bf35b411ecf659e745fe0a00a5ecbbc0b2735367259dae0c9822397250b9e49173dabc2667298dae0f461bb26175d88036d26ced0c6848336dd4d165c72730cb18d6cde8b79d86534ba0f471ca3d1e87234ba944fe61b24ff01e2941c58b0bd3d56e30ff95992ff81e7e9f6fa13d161e86bddb65289e617b2cb3b3ae966f91a84475c66c1f23858b0c4db25c150f2782ef52478bba22111deae2562f176b51c0d6f378b3a32bc5d6c752f9e0b6fb7f64dc5dbb58e5878bbf487e2ed4e1f136f57c21a89b71b71c08878e3589e4bbd8438839c6c98e7d2b7190db85f72912deecf52b791e07681a7cc4c3c2a7dde1100f283a7fb2e64c04ea2db48cb92901140f80949e9c019a2840c71045bf3756523d6ba6d3d47f582413c2c339032278e0a48c8832dbfe02050b0071c0196f00458c216c8181f1f3c0ada902395eea63c44497a75b87454ea8e06c399ebc7084640c2b66db6c447b5d37515ebae98454d66d9b5ecf6a218a376121226b559b3793be735ecd1625996657093588d59d7755dd719a1d65a6bd5ec95619abd32ecc2306e8695588d59d7759dedb4ce0828152b31392981a1d412279a892dc17e699acdb22ccbb22ccbb2ac66d95f961d26cbb22ccbb22cb399cdb2cc5a4dbbe56664194743ab81412ca18451e5633debbaaeebba4b4209ed8c533ece789b837c7cbd91fd070864d1a811a7b457e3ece62884adc71ec4246cc906b11ab3cea7ebbace08b5d65a6bb5af98bdaa56b5aa55edd2322dd3344dd3344dd3b493b41fedafb5d7d0da5fb4e9ba2683b5d3f0347b4dd3344dd3344d23699aa691368d3483b46935ab359a45a8844b592a93a0544423000000146316000030100c064422a1440bd354540f140011748e4a6a549aca83611244290c23c8304208000000000000808088d50034b8510572719f8be8b5db50a7552784556f27ea84e95867887d69683ccf8046168b068104f73fdccc581cf635fda6581211a8e16de0e23a52c7e7f60e1b325b3c809c23f67ad9a5f8fddcc5b122b003841980ae794a711fde668a4ed34fa32c909417319b2bed1f5ed9a57859409437722fd7dfbb92d094bb31e33154a8d8c231bafd3729569a993d9607f872c5136793968d1954c4cc05a0709374094f431163392a40165b517e3d8c3e3aecd9993c94cdeee3e359a926a69ecd40c4dda3f000db2bc5affb8097b060426136edd9dd5f00c162f2e975c1e606806fb8dbed7eeb2096e432e132118f821ae28847a48656e221adc15d01af7701de2c869279439a14b33458ae1fb89f502578fb3ea2327871bbb9b823645446361f03cf8d1bfeb713c40478d71cf4ef2b2d2f80c8f772ea3a05cbffc272e6da00f61becbf4ca2aa3f39964cf8f88790e2bab73884b2f315f4bc8f57d03daf38ef9ad6f7b342ad0b66695828e796be2e0484a572da08887abc3eb4ae08f12c11e88e206be909559a7d2f6fa2e26b20123fc0937d21e1cd00ea68a29cb7af010e3deff9a436059481e316c3c37d12aacd13fd78bef2667aad60e5353b0e62a250c90964931086056a6d9181567cbbf6364c177560944b512baf5eb293d3b9750ca0d664dbf52d6accf645b7b77067f5268e030e1fb2da81cfcdf162d2ab0bf1943b992a8632252ec74d9323560caeb0206748d2ceed1a768af24d982f802da8f699b7a96c3e1ba85e4f44e8f633fbcabaeb2fac2dc5e849860ce4d34fdcefdb3ebd699429b380cea731d6c90250cda68c134af3a7b9e119731e248357b598b286a2aee2c98ed5bd384b98233e898174a95a281b2f87e258a2fd774b52a5097ac49a3c02681e04899d5888818d72a96c1581f273830f00674f3db5d89e0f1f922c6323e5ea8d1a0d8a80b0f411ad9a4281bb464637d0e959d5d0e1b85562419ea547d64f860d25776c9a22d90ca68cf5bf8c0385222dd380bda685ffdb18dcf313d30032909db5ec424ca6fbf9166d7ec0aa21f0348dd19a6611c37d9fe9e2e9cfed8d7196b8949eca340a6105bb43806edd868ca043663aca8f710668d1878edac3adc34c50f2909b7e7b5bce7adff27444a3ec724f0ec07e010c53e266800f8a94e7cbe99d13fcd49e4787bf2ab1c8c7eefff1acacdb6dbab52502543013401c5248b8d054cf7015983e28419521a0aaebfc404735dd076bdf06afb00f12c7d65d8c96ef963f9909e62b46979e29ad7d9778b49a21fb675c524ba2ad7a7d1305ffcf9fe2ed61e2a4d5a3934927af5b01be6c45199e771a83bdee2cad5f29dd7fb47a1ff96229e9e30e670d7703a00b05df9f33236ac1d0bf1b1871971fc0344fe3cc06c809064647d433b9eea3c73bcf9b707dfd186bd750de724043d69465980a607d2e67806ce11914dcf4353030352969597437e1227e2a0b23bc291a61d648c54e4d75b8b56c1e13840dc6d600f19f99e4e1c83bc80f4e71901417b7e723f217cc4b01d06408c41973b1d8cbef89cded19a1cc8c8bdbd46f2fc0811ce9dd1264493437881ad00c81650b14ef93ab3c0e7cceb7f6b241e28b58612ba75b890354df975f8590c3bc578f04dfa8972269ca1170dc6a04cb0f3b68d9900ba0d50a8cbf29da8a9e91c1bbf19a83d642007daee233d10607f1ff745241b019dddda275defeb85e2c7f730965040c16f514fa0b7c74cdefc1e9ac9d363aeb7da8181445866b4152cef436c54b70348b22bd49f89c70240890053a7a29a643b006bd217caef8dee2166d3267b9b97d9328cebacbedcd2044ac009d671297c6e6d7252ca5375a667263540127d1265712cd602e181116a441a89b0bb6a6d8943f5b4142aba1533d2a14a7ae37072cd78a0bc89c77a476c7f94806d515e1e8808183bed319ea7bc76a0d141156d90dc55bc3cdf6cc2d60b0b315b946496a3dc5e8f76e8d8249da5ed3e5e749a81dfbbae715c313122992d8864388f3d758c4ce1d5ff117b14b885eb8bc5fc89f9e47a8387932b54a917fdd831119a2fcb121fa34d2538aa50c5eb666092927b9a96174e410e0c832d9eac297782d1f311dff72c34f1aba07b190098faf15328e65a2e2d033649b06b6a16e03df900243822018eb1532d4e14916ca62e0e4f0c950b00d40a471d051368ed4d790432d82ac339ccb5559bb61bf511311c7e19a298890aa66803deb6d843b0316ee0caae87794df2b83d7e8665f84a337f584d3ad92f17beddb6bebb83c043547f55a31b3d57b59e0241f4f3ca3b6321a4f617ead7eb7eb778ede30536d59913cb82225438ecec06cbaa515b3e9ae1f9c94fe07d24a09dbfe6cad696c50291c03e7c372d256f2d3ccbad8a08ee76eda7619d13b75d86765db1bd96c135cf67f160972b023e73e52919c0ee48cf66da83428c38ad38a831750afd86a8630e0d9032407a1f7096c4056d77e5d481185182f2d2a4a15b772bea284dcbfee636cdd0a77de18a88723b229b15ed44cb368320ef4d5d194154a38fc86c0fb17e43cb25ae3ef2a5ef3628890f0dbd65a25b626b584c04cdcd8681458058c77d587c7be96daaabf580db0ff696ac166f317e5eb2383a343b85e5380a714157a5566f0acab62a4951d5beab6a406f99610a3b703c101386051530f62910d6229fa63a899b088a52108d0da20e08b1121be715c2166fc9b2190bddb214e3e1c226e3f5222ae3c9c22983f90455c3b3246acb38e783462240347c01704f8d5070209bf45c289ec4dbd16eaab942fd3f8b66ea54d74a5dd9cf7f48cc1f2c5e3a41d369c821b41a3f9d99e1ac64d11c101552be4fac7fff02ee057720998eb7e4dd6c530d861806933303fb12eeb422efa436c58b25c2c900d75cfd204ac29602f865b192e2d85666fffeb6d7ebb8ddf4011850d1b8b6e1beb7b487f6f09486b345e50589beb08e2eb62c0b6c2bdbb26a698125bd7815e46578f738dd2ff6c7dc77a863bbb69de6b8e3a26449eebd704180ccf7e5111871342eccaf06bee8a7cd43c357cb7db88348bf5009299206e3955f406ea0325ee688fe8c1f03e9f8fdf33a45c22bc75fad42a77a3c44262d0ed2a45496479b6d64842402faa8f992d2187aada1316bb740f7b91959502cc31a908a877c5d4636a1b3fee7897bfa96865aba12ec9f361083a7c929ca1afdf027cdfadc7be16b5d75bb2ee17cbe8dfbc41c1a67d347797dbb2fab9826db75442d98473c3e2d00eb788d1b0317d5089bf88a9be44f0ab7ad1822581b26c3eba292b3205942969c2ed2508963220676cc443c74f44779bc7690690416d8f5dc5c59328259479b0cbee100186d14e90d7d8dd27e8bc8dc7bfd23a9a25ff431015f76aab1b1a828b19b2c399b03aeaab8f9f45301567dfe6368f7875d90492dc756b735bb240d7fececae4376b295f90d84a6389944d3822e725ac96f33e2ee35f31107eabad83075bae0015ab20d6e707c8d3dbc2d810bf553e735a75976fd6722464d8e3c56e63ac593ca21e384fdc80f313eab2898b5b9e3797e8b707521d9d9a7a9b68cfc6c8d5c62523315b6a6015a82a2531c5bd906978e68fb8ce248d77c20090ae7a57179259f81bdeb3b48c68d76a81fc8d2aa89197dca0c58bfd4c0b9c2bde0ec74314e3d600af10c4c8c79f4d747fe11081ccbce9bdf4e54f44d18ecca1ce0d68f3d669e706680ec267e6180f955b231eb080d69d1a455352500b28c0a952a277fcf03b44bff42955e56b48583b77be81b4c919341a11cb8d1d96546974b5e8554c7a43c968dc3fe44161a6aac46d6543ca3169a74d7b2e3b2adcb243850e89f10bd7d8a800321aced25930473cf9c4f273025aea15aea04887533a8d24ca7894a86489e680a0c4395e3987e4ee10f719d97b3c1dc1d7d72f9d4d79573b10ad6e6e686f851e9022674035e48957020699f66a98adce4803d4776c293bd5d4fa7a47d4375c65efb77e7f87d35fbae3197ade6fa1c7348408cb945d6cf64acf8a14626a7c9d381cb07fc913cbb494c82c481de911ce298296a5b2877c160d4e107aecb7f234a718a0e94cbe266fbf7632cba958590dd70c7bd98b0efc6d515bdf216b276ebdcecc321f4e6f6390724f2ba84c8cbc86c2064689ae6c294e6b371c8f13ea763a18c4ae2547840dc2c52745da7358a506acef6d7232c04403797cedade60af77c665488d3a8f5649bf856780bc8685a9d4ec469ad211eaa7d467d10273b1adc06ad9b39dd82d882a754fe3c397a8415414d0e552257c69538d00b8926d90bc624c9e4660c2c0e5efc82934cc3387474368d40dc5e33d1ed6b03f2a1458f6b81e876b2fae9e09cafeb84c5fb74a3742ffb8d1b3ffd7aebd9deb0baf1561309bf47c0210a47d63fdab89ce3964dd1b84291f738552f1b51bb60bee9332c9b6a66d33dd0d4736ca1e77e6b65a328ff25a93e2d62cdb93ddf49a949a66b09a17da569fe32e08a004f63aafcc584fb19a6c4d491cab19a2e6366e45f2e85e3147a3686e8a916da49248609d719084391546bda1a836cb16627782d86e9689ed197690b9ba5d70131c0f7fb1a7fab24e98f8b78a90a6c3b62741712c91c9247570f32b443262a4064c5d9d0accf8428c54f9b2f2f880116e85a90f6bcc3130f2277f97e28fe41551ce1391b8fae395ed9611855083c17fdaa1dd3f24dbc459da6e5b2733cb4b9afba285f7aa9b71f28f6d91c08f7596ac559976bc6a5cc3fd4bce713c388e20d94451e90cd3c6bb240eb96d8a2414023f783aae0d118e3cfc890979ae9957977c6e3702ee139b2b7186c98e8900285813afd6c4710d290af9eb744967cd1ed7c86e09b48ce834a40baaaa250c11756ef1b7a7dd4f76acd5824da924610448c0fa8b022206d5a12e18778fd919248639592d63ff25eb316e012ee6009e27c17286b651170054a24d35b3ced1d8c6d7f314f0c70c9a354c8527f9634aa20e81c5c32f1f1bd023a172ef90400f9b0659b8eacb29e02ea0a97f04756bc0dcc3cf13ea32abcb66942b49f1107f4755927534d8be92f3bd568eada52a382890d69e4974635aa71e62c35e022fa37497b600e1d17265298ffb150663e9c61deca22436d64765f00c30708cab0d821124f441b380a913a51fcf17ac225fc42c0bdfd8183545df783154784d1cb732772eb282a45e7e2f91ddb734d29209e4be26e0c3bb12b6928af1a27edb0d5b70ee6913f7075390ed1284801e87d1a879cb15736eb896e5f81b24fc49635c8c4bb0d2aef6beaa468298c9f4bfedbba865e7becc53624ca03d85f4b82499a9e8d2c65754029fc6b1721e0ef9ffff8a3de231fa6f76adc1669c4b7126ed0198ac7054ff0ca51422c715dc80dd7255c7212052f564c1b819184da1cf03c0120b1330b20d217dcf5bf046bdc2494b1f7a977234dc044245efd2febea044df06f15bc1c232497720f8d4530aa5345200f441a82cad029554738e08004f88842cd550bf83479967060840ae11593aca074128bb8544c284cd40e9589427cc03b3c8392832828fb37b51615820a15c211f7a05ce6ede6d0e3bff7810ea87099a4332e40b7b49236aad7796146a58073743a4202f47a8dc02582a1a08527379ea927b50aa627b1708292135130d88e22c1a6d23115124fc2ae165321b9a062b974f739fa19767fa084a28861af422c273620066ebe1da1b50cfd4c8aa78c19289a3702ab90a09506afc9025096132e51a109a2dee17bc1644af39a2553471df9c75335b0429cae66ef352776a19ec8e288baf26859213f5d0d1b556c8f778780580422c9f26793478a2c80b2897a0d58216b11033ad16078219a5edfac156221981ced9e2fd990a6eb103331a4231ddbc2c7ce440340194848f3247f297f1c10cedfebb294890a60090490d2cba805dfe2fe619538067f0e1406daf28e100bfd81970b13883793bbc2a0b24cd403e871a56b45ef2b34beb54e0440d3746b3edc02116d7cc4055bb73b005e1e809a1b4ca78c2183c6733798831b1c39c6f1c178e413a6764f901bf7b4bba61a26fdf0783e6c59bba4f32d503d8e3d111da738e70296fad8f183c85b8d80ce5185b75fa29384eff1159cb3c8531e3c9649ea411dcb43f1d8f12b985629c5922a4b9e3b124420f4909e55aadc1d28a33b0a7d1a59bf0a21d0a0df2e25ed28766653171e2d1df27eaa82405dbe80223881eb8805127683853e106ee02cc3f1b503086cd81132fa5910547273c456ef5035e91155a8d0193bee8b72e5a5920a140473b2746597e3fc001f24685f494620c54f2eb0ecaaea8f30c8d4033713d3270d1cc8622cca32bb5b48580eae6657aa924fa2fa49a8b2491fc1314f48339c103586de829f4f1c821c5ae01eacaa2996df939b0fd508ff98ac4bc36c4a5618c338dc1a1ef0185fe02fb26138000dfdd58915568ba1f51fd39cc6b4f6c61a2be917773791c368283b8b285856548e0ee6fc016a460b4d2d8ae6f844c5f40934a4f143329b186093272050ead9671ffbd9e735b6e65439b1377e2cd46dfb633d1620ab6f448a1003e82131389fd6847e509268f8bd76d064ceca4ff58901de9d8d3b6ef009d70cae67217863c01d88cb97c6b852573c2b2e28e6f6cca09430156bcd56d57e2ec3fe799a19d82db280f1a15d64831f2ca2db0c01ad68df2c72b04050dd37142a2c51d222e6891b91e9edd09d374ccce294507a90c76460b5ddf7932ca81ac81a348e4fc3c0ea7cbfbfa238d778b83e501743b43550ee4a23aec898ad348aaf14f28d7fb23c21c6a7e2ed0e0cad31669a39d243f3ccd7929af5ebba98c60ff2965b2be772da34104246606016413ae57af733bd0af97caf4d83eb3a1087770be58a62701d3353d25a3b6a5c3cc04103fb765ec03a89ec82cd845a74b1e56b7f958bc2525002b1bbb91d912504b82c33be62416d7aedd332e4037cc1dfc8aa8a0f851d271b67624252930aaca952dc594774e5ecbece476a31d360a0c823983282b928a1c30de5f44be6c33dd6d2664c28b296cb504587cb18302a9606c433fd100a0f56b14918afa9ed64739f7fab5f8c9089c610be92224f4499786534abb9614df64191d675f31eb0984cbfc1e53606d20108e696006c159ac4df63bcabee24c53a01be5000e47cb6237d1b80a703ce14caf7c5d1ec266db83e4206a9a83517aa43fc4a146677b80f7ecff4edc451b920c4e8242749c4a4ab0a661cf69a2b2067f96339f7bbabb0db122b0804e6dc35637d78300e86b3b2ad3af85642824320c12e8c3e20e910e38600cd78811410a6176fcfa529651348cdd3ae7ebb0ae03870808e0de85e9cc0e4f3ea91708fd92a599732d3d27290e8231d929b6dec53827abc54ec5bb0429df4d2a97e51749c6f1102a28c731b35e3c6772074bf87111616d98fcb3ca5c4f24e2f4cd755a4045eb159a88e9cbc398cb9a428917f438985097ed23d295b1c9b065659126b84e96d23f8a7f96c3aa99a47574c97b4c037379623a75ad5b49ab9f1bf284138cd7cadef650d81e9b60c00250c7723d01302b20c7fbed239f4a37dd6550cb39e84830ad6d395b4a442b6f042455a4663e96e4234d66d4646ba7425903a6a3d243839232d754db6a5afa79a46143b8ec80fd5c571fc6338a3632975dedc12f953ebb48d4bab5dd3eef59b2e216580fdb36f8d300f13ce8f90c89a9462894dd72f324e64998cd48dfd314d681f1b432f4396c2d540ffe7d41f56966915f95f398257d0a2dd3a29f19f73deaaa2a5b8293398862f422733fed01d63a1a1e4bbc3b224e6fa7874e539392839c935daeac3c5e3e8905e8acda475205d12d31124af24b3b872d8647f2640a812d117907080f3617d50e023c53b446305bdbf55531ae23acbf8a272cf003ced6a8a4a462cfedb8be1eb17297a28230149b719627410cb358730814a5d61f242e465a0781364e687cb6979fe0dff4c01232d65aa5944683d6bcdb42ce2ae48ccc5c5f74d452653c204da877fa1c7e486af4b1156af84c084b2006e811e012387ed17564174086721e5b18f9bc67235343faf4f1f27e43374b4f168af75bf605628ecd327d3d6f7b99ce3582cbe69f98b07f6e318b68d384e673f6f33c4a5e3be784c8528b229021f771f809d19c97c82c346149cbc3f5b5431aa70d1e919f29dfd838cc2ed42c59e4ba07c1b436488800a668aaf4b006cb554c49b5e1e42b814882e786a5e6edff64b5300972c376b39852f266d454936e574e54bb614f28ddeeec84d851eeda176ee7093dbe965d3cce06899419997bc7f61bc631888c70bbd0b8bb4eccb5c7d336e85577f03819be899b54357c5ea864e04ec12d3759ae8e91978febfa8717039dab144312875d34576c60f28b8d7a293a13dec6ea0ec58f5b8e3e4b97e48e4898888f011b4c10c604b8e5eb837f1e14df8f84d3e68ea808789136e2445dcfc2bf8228dbf618e0d0362285bc4427e6e09dc628d5e59c8237bf9322cab7fe28d520a2b468ab1ec6afb96ab719850dcd8fc3a4857493682cead722758dfca45b98fb33578bed6556d00ae4f09d9f6cec16b548a37da46e4c7860eed5867030c9561d70ecc96d4b9b69f7522d2c1570347cd647ce1644c5b98efc6c3dee89a6feddd82ee29699f06752e0ff0ee68b8104bf20a4204790aeea0e72c2bdd11eb71cc78c1ea1b0fcdfd3e6e3acf6ad4c2fc1cf35cc3ecdec0a1e7a37bab508e40ec66f53b529ff0194c519bccc3aa58a738c6a60d55b57a3da7afaa87f26c7b86613e763c76a9c0217b76b04a428a1c982e312347afc049c403523ac0cb9e74386c2152f5b1faad8e181b1d9631c831c18ca686aa9d1a16038d79424999f4cba57c03d2c3121f0b6e163f804c3631e81198b14b7d75975a69bd67f0b4e503771eb59fa096518ab5b6d21ba97d1d8c34ff2a7908561fdfd542e43d5416d7407e082797ad2ab1c100467d286b4c7172c70a8198077bab2aa8ec6c5c8a2e25e5953e5708eac8e965170239a617942dff628b137a1f13325b91853342da830dc2bc08b00d08d69044a7bfda0fea088e806e5cce9351521607419bf8ed0e186940c737ef73b054839f3a4d1bf64933749c984ca67e6f65d25118a07f78d7c5166b55c471c3954daa9c3a0c01f97228670f2456a24a9ad51838e9e5c18159fff4d85bb9e09f2c2b21b6ced8bb57c93d5f783ef6df2402bb8d80b228ebd7198161c67ede11182eedd71a5850af832644654282c3293f62a7253a7f708ec03170b3cdb0520a5cc37938056294c0741aec322340706a248922992f7920a5e12bd01fa2b2706a281b4051033d2393648a86e35d488dc18ac110514f8db2c4e385109be41891dc5fad247ef85cb8537271393485ad77a0ed3c13b2dc114c31e3556565816291cae49478db077ee294b86455f249199964e02f4290f94ba8e272f18df8bc7f85e51d6d754aba7d803cb89d427a8e478cff83140d724b925c90766b0f9d1a79ba77ece8124529e0a68f13dab2968c4040a532c9a10c088af91d0ec1c052bfe8fb774ae978c91c6e1f13eeb1e43b889190133e8844af31a0bbeb4a5b68e23552f7573ae27515724ea1cd688ddab63ee86f683045b7223e330e8bc4a1fcd2019957ea7ae09ee90d66b7b5661b7dc0129275c54009e6469a99480e689fad4e5a9bb86d18e17966d78322754521d7860f90643dbe6acb465a3a006494f05c696970b7fa434f3c8164237c1889c2a16b72b965365857183a2eb750bca56e5dabeabcd2e1fe30e105754bde9dbcb1c74bb426c077d91b50abbe480f46a1531d826368f9a355c06857836bdea2bec28b1c81d6d40476c7ed7da5b5a1b831a0372b04d836de00178d58154157112c2d3b706d822f70312cd3a1a9d1728203d5163fad201f7dae47fc7a1c0cfc40953fb1e02ccbe486f5f8d565d92adfaaf727c8a15b279fd007256924bcfd3affaa0987824f83668cdc79341567be0c5a329b72475d06c38569dfd488e9ab868e7299d08247cf44e52dc66bcd8d196eb4f8d9c85984b49de6a1744016b6e25d595102d1bfb5bab5b68280a4a4965b6285c30dfdf4bcefe927771aacafbf98281dfc9176195d42790f86d7371661ad33f5b30e110c401d35203476e23d504e2237316d4a4c61fa45ce5d59008674a6f2dcdada671ad1c48590c93ecd7743a9b122d9544ea58ca64f06edb0cdd5dac7083a758577260c5624514e2dfe6aaaa0c406baa8186e688b953acb9887b9e9aa85e67113c21ba34ee946403926ff038ec5e1c7ad8103a0e160b9c97de5a2c93c7d0fcd55820330a728ba4a10ed5eb9a44d08cd44d17cfd235f67e8353db829a346f7400ea5747adb0463d10b4203af40fee4821113fe18d829bace241a75d0d7226641218bf59c1524ca950dab871819d8c54212b629b8151d18219f8da3c7f1aa92f56437fa95d4136c15091b2c7d480f5ab1876eec26a130f339e84480bdde1b94d6636b804d131b00f93ff44271641b46caa82fd48b8e9dd4ebe1653e1240b45ded8ae84929787c94c187ec7f50cc90554f2f405d65240aeac19de5036c1fe1eb333ca9f557ca138a6dd5245fe6d10eb894710057ee020aac88a08fe121abe58dbd85ab897cbe99fe1d3aad48d0548cfb4ec4490725c5aeb0061bff29067140edca95325923d4d3ca6706d5a03a07414322b0146a330a0b0c080a787a66c5f10837cd285171382e28d6150e5fce9f643c94585787d64bd40074428379e97721f51b18b103395c6ffd489b1243d5cfe4f418fcbfa2a2ef15ed6880112c8921656de2509a7cddd010c0c86f931eccb3504a5bb8f03f08a5d30d9a30042c6a2ddf3f7eeee64266801b5ec3ebbdb090905a0ef83981af0186ce41718d37a36f2225800d9abf46649fe4b45670d2c95f65b87732f8aeb75389ec602dd1fa8ce35eff08cdfe7fd0adceaff57bb66d8c9572848000540220a45450161b5068deedbc707373a3333237ceb71eb91feaad25782e31f87e0dda7a36d5c503d17e4043bb58a9777dcbf22ad7078ec13864b3cd127d469038733cfee8d8e8fc07ce7d70c94db3893b41a0e5121f9b751ee64c17f80a2cc239fbe6e19e7f231e5025c23eb44c8251ab485ec7c2a1e79501cbe48f2bb9b3332d3ff32cb21b5eec26c0ea733b514a434703a2cd6aedc33cbabb24891135f617fed60a6e840715c2dc405bae488c6b0496fc45e92016c73942d124e230f40fada22c202deaa126b7812b1e49b8cde2829ad45c4291fe7703e320c67d66048070de67bb282faa3ba7ec608950fac24d70b23e2690108cb7cd4d4038b6f397bbee518b2353a973476cf9b8edaf5d62d88d28df0f704c9100e376039750ff65029c7668d5201a3c4753ebd4da1d44594e32dff625a376f21c016d99bb5d935f7d817cc790890360e4fc9d34979097a261a461f5bf3ccca934932de01c6c4718d62892817dd2316cfdda66bb18a8aec3528a4de4bee9289faa27075960b07d5cc7f3776467ab2e64825a99225c82f18a3903a5b0a109a114bede3ed2e7869e7ef7d1d7d12688e023d647d76a7a75544a8dd776aa765eedb9e435f528166ab1bc292152109cbaa65448291c4a0d4e616a0b43efb4749f6b41ed68e1bcd8ed3e78c2bdafa558a09d993d48de27b4a2726a263830cd82042b41d24cf25b31209a87fc211b10108b1790fea28cc22f910cf0e3f72ada7f4703eff563ef5e4173af481177e362de8196de5b7008957d61975e52ee09fcd9d179a56a09610eddd91e5ef04754e4fc60e1253f7d36ece4fc9653e19451780bbc6cfd4d83cd958c0e124706fa367c43dab83ba4b284cc5815feaf0878cdb59f276f8c50eb5c85b288110cfe46ce1d71987b46d6353fcd0a4d85f7a7d015256f137d96ae098adede59cdd1a5bcd63fe1913c99e93b0b2d7ada902cab04920a7af8812bb96c0b5ee0a829d783ff2477645c223ea709362945808755f0903aa7bc220ce06440d3022a14a32b43e322a7cb7138d376c21159889bd1938f956324609a7cd4176ed587c6c8e0c720dc5fdb8048bf288644123621f66185cccb80a8e7a0339e5d88c32b06efe8409c96de2e1209777f59a12bcca91eddc7cdc724e81b58c2159bcd6b3019556ee5460db2f76bd5c1b5e897b18a5df9da7d2c10a6a7cd97511214c606c33075274a7f854681a650e9fa490343bfd09160c00cb8ac1ba1e220a42571a747af46150e2149fbc714f4387390a0d246696a521f49c43866956203ba22d03849080f354467423104611de2f85f68683f6e0f57d11bd99daa78ba3692799b70cda72e9d9fa0107d2d42a734e0ab701acd72c1b9305c884c252099878877e4e1fbc494f006ec4e5473a310ad841d3b439694928d8cbe8baf26d406781ab04bfcdfa94add75707620ecae2332315f1692b09a052784fe3194467215ebc9b37994afd0d6ff889b853446bf7372a43edc638a4ce318b6e8f53ecae9af588f63787a2657cd56db70101868741a42462f3d8b07412f217d42e8f586f1ad931142c8802359a3989ba5a8e430575e5598f084464e6b092f5bd285aa967f6709ac166f9991437a2428e1d6b17150146878e9d20fb9b44748ddb1959fe358608f34428c5ee33d8242edea5a4caca2d614fb676c9becca3b4fc7cd11444bb54e305186a88172e9d127ee408e4a19aea96bd366823f5115730d28080f5805a71954b52fc16b4779c4d3c388edc64484997a19fcafa981833291e3f0101f680ddb0467a7ef702deaeb6d2b316260d0b8f1153f8db4c8e1b396cfa7b492340cc56d0a64dee24386a720110cd73916271e916630d0912c1fa7748f890f4aab3e80a0518907f67bd26ec4f2419c34b37f1193666c2febca427fa5421e8ea2790a3e91e494280054c91973bfa9424344429911c5f31131c949e8ac5c056424d403dd4e1bfe19c5415241d85d721ec3275763548f228ce23228c841f08a31f8c9ed457e88f3dd0879c485691d3e8ae3fc2d09855a6831c31a0b3c230c333380d2156e613168049444513ac4a7dc709a8da250e87f3d5d5a758f910ec3ba35e3fd16c6415dca4392c67e7a801f60c6165ab2990e42b024da591a084de035875b35b5976011e31ab2cacdb425b8f7c3cdb5a6c5e8e80db3dc02ca9cb09a0f5d41d2a3055b497eda870cd410213da6450045cd0538a0c31d6e813c4b574335a7f8f67cc3d8a45caa217667995a74f38a2cf6f093c2931cde8d9a66cc1001221928951812835dafc22293a01339075e0df44901705c4910096130f03c89f89a549be77fdd771f660c42da9037bde8ca9aef0a3a4fe3543cf6c0661af738670af8d842621713ae19030b0a24f858ea5c280b62d3116a66bbe341c10871fac6ce2314145724a08d0454ddaded04cd5d2fbbdd16699c8f20b4494f890021896cbe0f36a5ced3efcb3099cb43209e0ae34d889c83745a7f6fe4366f6e71406720d9418c93d0f5e323bc09874ea25c7e585344abd5c1287294ee9ccc00302d5135cc3632c91048388f0c78b534f04f5b145e0fe1e076da56bc514dc616b6931434d748721f91057aeff9059f70af07e2985b803ba630a9e683b78aa4639c72a758285e3315d448a35f04fe7691acc585e10f4c45bf569fb8b012c285033fad62bd21328022eaa969e0280240068949e01a39a3f265896b4f5c8e41ee951843cda64dd2ac4ce8d7bda285394e2e46725ae3d702a2e9e325748ca8086047bc6fee3879c2f204749d445c7f538c5064dbb69772fa57beb01024b8a2a9fe140929ce6575a92a7f1cf2533b521cf2bab80a7ccb72da8834222fee985cd7bbb248376696c5a2aa327542812667e11571f53e66c62d10b50d129ce97515db509f89529959b169390051e55b8246c8cc9c536760d008daf16bdf32f8ab51bdb73252e28a44998f89953c999eb0bc06dba3cca6f2fde1e53badd88061880538686871661b637f076c5f36680b9c5a3e55cdfc646491e58b5c03dd112955a144f205baf75385574bebaa738931bb8eb1913aaa14578d13401ffd575e4e468e0f85782e5528498255130241f8dc788f23adc6f5e539454f3c3a637586414df09a36973e24c4a1efdbb57834f56e9a937ad9223d4c98602011c88af2c085e510dc04fddf40c65c7646f316e05e5289905dd0f7d40b8a4b65285d1ec16d03f8652160d654230b76c25b9e45a216ad4f2d226d273e7cb19377cb53c86221901082cca3ceb0d5090fc158c185c168a768aed7b0506c5032808e4ca906fa613173a713c5415282f5f219f3644673a657bae23c57d824f5b73e7cb360fe599fc4c25d582c989ea8e388bc40cace6c80b98f0a9f1338b4bae29d893a86727b685c8f82c26031962bf5b5119796690228d332462a1d8bf888c1e5948f02695f789584ce80d9db1aea7dc2039d7b67c3f29191f4974e3fdf78e1722b8c48ba2efeee2cd47d348e81cc9c72050325ed0e404d63b72b1ef64e839b1519b0bd94ec3d7a1f2f966a899831aafe4b6a0a5d4fefde5dc3e2e7754939d5bd28f736f987b670568d0dacbdd1a9bd336d3db019c0703af3ade47c66fcaf09b85734264e0da80699da411e9f9e80875477a8bb566d8b556010d2b58b0ff230993d3fdd668a3c61c468cdf21c434f77bd790ce2f0ae67459df184045158432a116f8805f5eb1bc212e601c16fb4e6843a2fa2008b009a67ef0399a4aab1114689b88a1cbcba509ba001417074131ef5659a612842f66f28ca937c285a18072056690468cec80ee6326f3b741c5cc259784df4b2d928e9d7ea949218258104a55bac88aa8a140ead77eec9c1a50ab2400c0baf9da5c86d1b82449f4ede05af31885c63b25841d0c5d7503b4e5f4e4118ec0b6329b2f3fc7043826f2b802dc2a0862e67fbe091636aa120b9c9711c807445a88a2c35770a2f01a760a2af480871923e6ba049a014774bfebed6afcf3266b8f4523a032ff2df3f803dc12440fbd288b025615b26cc55b0006a515931a4356b42820b84b625c5fa007374d9442de409f45c4954570b2c0933d52e3793678a486bf0fbe89df3d1a11a137fcaf685477d4ebc68025091642faec961622b04ce662efb466d7d4af1b38d3f455e7f47212354789d97168acfee4356eb639e1bd95f3b97750d18c8d2f085461056134114405b97e7e4bbef99743bbec8906e661f928076733f1fc06352c0f9c4a00cc0102b92b6e1b4e067f3d13f4a3a719c12261067c7145d4b1186328d6cd49c50077b3b85d64dff76e5c10d846182e100eaba334eeda5087c8660fbfa6e1c6edc65e4f29356dacd0a46f554b8c8e119caa856c4038c290ea5efa0398f00da2d55508047b0bb62a0aa013767c956ac5589c318c063783328594b7fa85a075cadcf4b2af85d5abbb2251535c2862b43d3a06f81acbdbd9f0c2f6ade67c3b1da0fc06a70a29f203c6061816b11c717f342f5c58d2c46d8beb800c2ba1d82b29ea51173a37106bd1bcb3863f0a3788b33ff4b993e90afcd5dd251757ab5ce18e2d70767da2b46e3b5fa7db62582f88cb1066976bbdb743066be06645f5a3f12943164ea3b53c78527afaaa7c232a1ae2a5b844f05255f2de0121f64b205116f40cbf963a53412333804c0c12c04f7d0cfe8cd5d190b9220c65f60ef52504bad4f1c43195d50c84a0970a8161221549a02c4621f3202068ce09f34955505216d3dcc18bca6645dabab4086b4dbbd85f056a98f86b20d8886fde35140916496a665917fe4e471298b9b71cd2b3b8765b15b61667d10a61fd1d4ade44d099bc5469b5b2ba9c7d56499faa6a6eea2aba9718610b85dd5b9719742f94892a2ca2d392b8cdf2aa0817bcdf5b7d80a007aec13c00d23064007fb0470878901d0633e00dc31310074b10f59ebfdb2ea2bbdbe1f3157e9f7b988fd4aafcf47cc55fa7d2de2bd92eae33bef1551fbd5dee255c6f74f5bd65a1da5f89a51f35899959ea32633157d05a91182ee68be3c0de5e3dfdc328207ad551f414650e6a5e1fd53835761f1fb2aaf7501f1b50fb1fcf61f9e9ea3ffee04331ffd9074d7b54ca0f82a754f3b4f2f224e14dc7dd053dc0585185f5550abe8dc9dca53dc3289a80550869bb4fa95568304a99a9c4b218dd5a5dc9242e155b5c12571c55511ce0914c8ada202025921e2f15a012a67979cea143f23cc9b2ef59cc2c0434bd236181358a70c3111d92d8b4ec8075542255328d5a9b5d9adab78101547e24b81eff1df7fd7a572804f030b345aca95b27f4f9c2c55d644ce81b312dcb8af14844d62de6d7cdafffb6f552a05f832b040464ab952fe1ea28e3255fe8aa907264f55e87352524e4e60542e9ffcf3bf35a999e2c380012ea94bfe233815cfa77ef86f490a45d82165003f9cc218296a65fc75a1c3b140499d7fc5eac36b8a4c7d1f35c3e900b67aa45f15aefe4db604b42c396ac6aee662f358320a4b4247a21405a6ab6fd3a29609d42a2bdd6daa534cff37f04938d3d48c3c9bcaddf8b9884dc6f5a5b432439be48b30266f0069838d73ee98e81ffc79974ef64fc643631f6c91df0a6d69f5327c24c8d27f0b8585da92b3d51410f09405550cae152499dc0705341702835a4bd71401fbf79b8df88e0e5af11896573c5cd1c1acfedce92bc63916197575909d26e1818e2cd88b16a0e32f6d72dfdf4773f00723d76d715cea45f5ed6957b7c85d2ee2ef32305ac722cf3514782ff0220078d534b3f89fbbe3c54053fae2b8a98f7ab4470f7ef19360ccff656168edc5a72583914bda6174d07f9b720e100a3f06b3528821948c61541fd89beef1409d8ba8fd3a17383e24af2d2a2ce79476e85fe33ab565df24c633a331d2c6559df1fe4de54a4204c63e72257aa01c6c505390fcd822272b761c2daf8409e903279005316de23920b8e2de62cb4ada0510a64834aa2f20938d0dcfd446a037bc1961aa2c806f9e58f7f59ff81a23e823bb0db5d132e93b48356e7ebd6441be177f027c697319e678ef37eebdf0ea60bfe86c90de4a680b27771d3bed00e41406deb712f6966dd7c1ba217e5cb34394948ac5caf9cb8f9b0054c0db9e4b18bd41c8603e9f53f48383bed35deccbad9ef6da07afbb7d65284f8aa29019fb844f72ddafb77aea4d848fc2c17bd2f0f54e02f889c341289866640e661b7bd341f900376c09cf51e7515c5ba9a537d69e321ffbcb91f5864a1925408c3502b981b960e95bdfecd6c60acf37af9b2e43a341ed5d1ac3eea6d62ac8ae7bab490e406763ee515a6118c0201b5b53bbd5f7539f8b43892b6b1fb7c8b8901122f781be9ac4cc5e20397d29c41b7f605b2c766d9d3170e5745e0e4e8bdb0260e292477b2533732f377cf625464cfdfc59160e069a121c9bdae8df30533a063700d4dcdcb293b0e650f2b763501844d34dded7e6826a0e3d5e116e0089a7a6b839c8f117086741d208f7e659c5922fb36477f3af2077776a1d23a57ee2eeaa9a6f8c3d762001c04e1f28cc2c22539718d562c12e30e745957f3080ba95d5e6e9b85e4166fdddae6e9085558ab279cf0b1ddf81f0951cbe861ff6381336827436083869fb18f2e1486598b87ba27cc53bcf3c44427c5ad760f70d82da143a78fe95d57969e0de7eabaf41979977cfd87abb3a3f0c5cab1f136adb16bcf734bc39e9f0271c4ea62024e66dc657c3aff0134fd9a17462a20e6991e1882f2eabc97c6b12b49ffbf73905f53e0fc5c3851f408260766352f47194c1c3cd313ddfae33071ad4bed461818aebf44088fafd40a13cb469ab6ec7ac3ab8c0cc83a760939b8d1fa4c270edd549ef3562c2ad2ecf1c3167a942e75e281690365941eb67479574010c2162776e4d36ee00e1fd5db3ae9165132c948685c80b1a2570d0c3cb9a62b1f3d1947336fe1053094eb5cf455f56f4e3da3a0e51401e51d381be89fe905fab01ac829b302a8b44fc9fc3f55865afd3421644a7d09690af42242051715f681956a4fc83c4a0631a7fc5be12db6b2f8094f6a447d5003b487c21e82bee297c390a5487494cdcf57016d3fc4d48d7d2b7c8dc11a065ddf4d20ea6697932feef858df7b37b0ab28ae40ea9a64498de845a923e06d0d16a3dd1804aa8ba8d1eca1157a8c53d9f382f5b891030e76307420aae2614b1cc18b2aa6b061b62eab4d0299b0148a49ed785378ef682ebf8002c77973185b1916314c446c6148a19115b101b21d644ec017af5d06391de407a18d1ebf1bd77c47c565cd07f9f17ee3fb10bfacfc78bfb2776819e9c9b45bdf0e8dd522f1f40fcac142aa1c6e6c7e9f60a0b44803b4667f88e6b7867ae22c65b3ab7628575ecf39ae1f5326af2afc6b0f8c6fdb3d0407478cd1faaffe10ec332dd52d2ba24c50f3350684d09cf0a77c67f920494bf44c2d5ded51e55466c6df8b972f06ed734162530c324e0ed57a5abe37fc8c352d59b53f7a0aa831c769ce29f25ea096f632536efa0ea405fe5da42c2379838394422940b927f6e8d157aa127744e271af8620733e5b65d4fc1d6e78d4d9d3795c9d34c328b533663452510f1272dbb669b949a1509dd245b0543724aed593f9fabe3a85ab01ebf5935949b9b738111bbf427b04339ec82907f9807a1d29e81a3b4160cdd7921b62c90a707a1f97f0407d782ff3d12999df1e0491adec1896cce1824b7db171395d9f91a777d8187c3998f76e71f8811362c508d364311d1ac22ef2116da305667c075f94dc7887443a08170b44c16250e35b881cf1947faa8678444a7a4ab64f6284b444088b3dcfaf0d651712cdc4c89027db4639bc1e3eb4877e7b4e682afab438d780775f472eb0dc280bd0403640b51f7de96d15775547840594e14e273ef4e8d4bb6e244c4ebb64e2f9aa153b72a377d3e9c84cd0460907415e06d5eedeb981db0bcc12c818d362c96fc1368898f552ee464bdeb31900e37f4c8109d0e565ffa5940e646442cb722db9123eb828ac5679e46fba9c5b6fb4858f500612a6a1e2276403692c9dec36d0eeadfbe9f19eb09c98bf9683634eb8ceacb4c56292fc43bcea4b512529f4af92af549a9afd27d94fba5847d6a5149f62580bc40cc2725fe4afb52ea5b691f257dbd123fbeb25292355ecbed5928e85e7a30e905201446de46ff4d0379a2af40e2c355d081ab42ab3c708bc2192ccbf0c8a602a0020077e1247c672fe4d021c5e5d6ab78d8277ae2a576899f74e01f4d1456a7cbbf4127b723c7b438e7523c1b16e87e3919290fc2bab59e7fb9d301cecc796740797a8dee709fbbe8c15a68d25d69bdcd1d404e57a55e49a286a62e700c8731983061a2214c4860760512c699932840c2072a0188b144268ed8b1fd614e53469820fe0a12c633d32982c20e2c015063d40c8c70b0fcc344539390a27c2a528c31115302941d4402501c0f547ec230c601cf76acfecf14958d27a329e02edb8f67c39568b02ee7fc2b586f4a43eb6c1649546acb8486964350938c738240e5b5c942541eddbc732c0eb6cd397a920ef3e4a287a8d266ecabc224eead555689e56b89b74a2c5f4bac5562f95862ad12cbc712cbe2e66c5059341b589840389ba58e0f65c7414e770d65972d22f62d339ee1acb11da72ceb0d3a61583c34885376e93f9813888b0ac4a184eaecf111a24f0dd9141c0f38e1a16cda0829c1f5a8812f31853d1d04697c887580715fe98a604f13ca307ff06cea1aa75cee8e92ba7eb9dee594595a88c305a512c27e436e6323e43f9e0f115eca42a2769199c650366d1489e0e2d8a01a31827e0d8a4985c43b1fa0090ca0fc1e2eccf11679863e8af63231847b4ca33c64141ee4294b7a37f1314f4107e87d3241153eccee8e50869f1eccebead06d72cfa06c478360274dee1ddd77e464f703216a4005620fbf033d0106872837e518ca1ddd8a16b73eb6c3180d41cec45d38c0d2d0b1353273232d94c03f37b739ad6c740b498f8d2d5aae830444a3f008311e08f289514cda80a70be4cc641841626996edfdbd0e35604b3264111f65fe8a3514214ea67b139b8829840f90fe1b058d84b9e967ac802e3ec6b8b17e4389283bbf06b7102536fed8ed177bd857f9156243377a265d4e9696a29b2f8340287494bd5d64a01316d403bf76be64217320c6ba4ed0eb0543aeee1789377afff74ad35c27d1c6561a30b8691daba62033b7c8e7b84f5fae9f8e43a29f71f89ed80d7171df2385f4f633bf018d3d0ef991fb1d15b05e7bf03b7728e30192cf7cb1218e9160e778e1edc67b10d88ad31df2b3f46e7345ce4be1255c75b315f12fec4288c566affc22462d1613d16eaa6e5b7e730fe41620a4e059c75b7e941f20fbf8652526640138b3780b9250ff580881506e5a5ff8054b802685fbc449b776a77a37db438d7f7e4981ca85b04a0fa8894553f9c17c033fa7ce742851302e4db8939602d1d0181f4051329afd6ee5bba774d18db9a2db7607f3d2d0bd84b7646df894cdcd05679d39428d66b2db4fb4175ade400257c0386c92fb5b38e2faff13ba5f5bdd4a0400a4c047738afb5de7e22d6858d51aea15b61c5be03b7934e1117c1f9e18a4c828a8e5d95d71ee1193cb63fe3760d6303e2781c7817d7c17bc84208580bb3b7471ad5ff33888a65229586a8001b1c014d28b817a0b6598f68d1a93c301b02f3c00d5ab08950fa881bd60b75d38670711ee4e3fdd4f1fdce840c8b8f60433f70dbbbb6ae3ace1f02d8bd3cd1f0f71824bc2c619b8170ff095508442a2069ba43fa767d6214661bed3703102fb5119032375862c7368857dcb715901e78ab326a6b03e77052f177027ca02fc6c120bd3f3d300bc6ec20ee90fbec8ca25744a712d99eadcb74630f7d00406bc0c158aef0bf1bc0f6d433fada520423f45cdf83b16b96a02b123399507e2d65f5d7fbc156881465e3bc2569f132b6019b06a86aa21a9144c4fd53e6e49f076e4e9da40d80120c47ed0378e4185eb7d47db04f54ff9267efe48e2409f65ae872a403af3f7be6180fa205dd284cbb80ea7730f52b4b95d98061147d552869d411a86dc5880b27a964d2b68790d8b80d20808061a2a27c9c01206efcae9c482d1b62b63e8651988113b6e3d4cbd37b8a2343c364b42dc60001e0d02177014e087180c30f254f071a165b445c565662b80538845d9a68c857b42225b5ff1921c673f5d20d14094f571e23e75306336b54a4db01cce4eec212be41dd20e900fbea21981064c186112709c9e79b3d76cad9ec949813f8fdfa908a776604c016cda022af75d635b401852a503cae436943b928f0c909b0ad4cd4bf71265547610b92d2a12f309ce01b2d32bb3f8791899b5a369b7abc2ead6b357f038d038d84747ffb89eab1ad55703283224c1576ded256e18e2737bf2252144eebde59652a6245307062f062406ecc575e6e2ba0d3c03afe6d4a6baa8041ad1936568c42fd63a09a452dc7dd69e3af85a2781f6b4975dbbba0e6acf63188248bff08d61089eceb58d3147923dd81e796a198c28fe6c4778a622e19992e94ba6ee8371a7f28d3b7c8a2c1eeeefc9c36018a8bdd621694836f59e23dd9723b92af6f460496c4fcbb45ca5d24198034fec893b484946475d74e1afecd8b8137922ab888a9256a974efe243ce040a2969cf47849ed45e1c82c430f0157b5ae69483f6de321c8b78667bf8b10b9ea9bc951ea0bd7fda7b8fc6ed00ff629c0f284f1c96d41ef41f9fbf3efa7e8e14864301aae2cb5f20510f5f0ce2c267a8e258820b6d9ce017f850bc927cd1e8c22ab652ec7981f5e70b5fdeb4cce73d17c6a12112076a5a8ffb4c1772577bd0abb8d0952435f61a928684f45557d27ef42ea916e8421de45fafdc08f4814220fcf15eef4ac187dfab26c247d84f4df339e74bd7b48757eb72f0d73a0d1ac1a31ed2327c31978e39741c9bf6a2b3c6aeb1c698945a6703c3f0b3c8406f7f0feceee0f7df8585afc98dfedb090bedd5f787462da33d7c780491e00d17600df8f037eda471d857ae0607b4c703b8d85f0ce5695d4138e3e133c31b2729ddf72b8fd27da9d46bdd67b5195c00f845fb14a7fdca02aef632382457fb135e72b52ff5aa42fbedc997a1d52083936fea5c1846f341e5790042a3f292a3da97ba8f42adfb80b0549eafd7a0d2a9bcc6cd4e85737f1cae7153e53f48030f3ec6f99057859b3ef8b9fe917b963929cd020ab42882165a14410b2db428c2d090107eaefc8d8baee408dbc4cd83612a1c12b94dfc389a3b8f0cdbf479e032cba09eff0656a1fce0caff5c80617605945815432bcf9cf8f36f250ef2ddbc520ede13ae4b9cdf18a3bb9fde4fefa7930f39131814ffe43f58c5d54a349c3eb65ae6e483788667387dcc618bdf486823f00deb37ad4279d92c59e2da86b6174d251a3614ca8472d242e2198e392d63fae6f89676a0d7f44fc438049ed9c15e7ff92e04bee196674cf6f4db9f6c278f31614d958b98fbf52b0c2f4c150340ae690957155fb3be667dcd52f197bbfcd9531b0797705591040a27822ef6fe5b8a72f036eb36cbaf9b4ca7120da6f7194c2693dfca411e270e8738ddd4da4af64fba19f351138579abe527272ddb7d1009577ebb4f77a781d5934339de645477f696b73ce6f43c2bb5b37135dbfb472805c324e11a4d9cfef45bac281c24fab9277f8a174a91846b28e9a1548bcf95dff21b4603fb41c69036a413926dd64a12f6f3d60bba5cad568b61e4d3a8958317c5f98f7bf421fd229f088f1137826bc83771aec330de434429b85cfc00882b1d0461b4a91483bca5ae5f7c3fd87af185add832f18c5f97ae78238b1acb82489efe6b2eeea943956838bdbfe210cf70eae29fa8cbe5dd07755845a99b8d83b7e2d05e3ca131f2610e0442be7c09751846faddb0a66dfa3e70b7ae8718e6b545cbf72cf83bc9eee72e9e31fd8cfbb9ebc3de6907f9e5f4a8eef4a50e69eb90ba882b5f9a4e6f3a994e272ede58a2e1a48bfe54869394a7ce4fbe9dfc746a23ad15ddb1ac54cfb74e2c96f625aeef896b96118691ad6ea2d56a3593c662490ac995ff440c39f80f789d49e7ae96d97c9cbc9fb676e2d4b511d8822dd882ad666d5d07d91857b910f885658d40bbb0605ce95188373f7039138629fd0a1256e628751b072f4c8248a7ce5dedb1bf6cef9c8f53a9e45b74cea4bd13f7c3ded3374b3e8b45440aae7c3782615cf22b3d7225f10b49c8952aed9055a469477bf26b5f788467b42e86acfb01a577f1c7d432b03676f9fcbae7380f37bb8875ccb9528514bc8585c68cd48a0c951414d4893d994a75d332dadd3d55e05678ca75c615f9d7b4168ee59d6bf91438af10c771da3bc755fff25ba75423755afd37f7e8ee35056e851d09c1802d9802a7c305b6120d297c7c2d858f33858ff3218fcf5da123112d4369709c026d136c37613f650a1ce471ae858346600f077de0cf8a0c150e06b5273f8583421c74b5c76488a8487ee5e0114482496df35cdff48b10b84304eb4f3ba791fac86b1cfadbebae7eb929462936330ccb2836218e10b8c3924bdc9d96d96919863c90c5333c03ed22ed1c499b62946233c3b08c62d36d585a069217939707ae15911d99c5a73c736d2aa8a042b5f672dc9c1209cb8fc3b987f673bbeadcc9dd6a920dafd5bb5fe6ca324a94b932177dd19df67858467ae48b6e417de44bbe24923492afceba15225f93fd9772c4f95ca541ec275f395235c88dc4565653a35d0fd9eeeb21535774eabaaa7575874a9c9bfb49237247f22411836fe508f6171a01a8cea1cce0948800d3d0a0990fec65369de9e8e8acac70dca911da437de8cf4b95716947593aaea247321d1bbb4c67e248a469238938f9ca88b2178eab64515323576546fe62d3325916990f2c9331e1236a6439784b0230bd10a01280c5420b957275458487abacf6da6d52f78d8882542e963281cc5ca997ccb1176af39e38c83050a8b716aa732c77ab519da37135ae08ca4bae080d1a1d0d6a06d819577245503e76b400d5b995bb61d8d46a0d6a487bbd81a06f8e61e7e370d44a66ae1420b54ca65517aa7329f73574aa337a50ca416fd6653394d80fa5a3e3aa9313246a637152a81c94cef59bfb65ae1b1952d80fa583d261ddd97d54f6a0a850502a321250e98dfd64905469762b2bf9998b67ea8ca395d54a2906953bbb1946f525875a8532331d7fe95f31d9196215f51cfdb4e85016448b64d1eddf321d232b1f7b84a5e4f6eb08fddc66d2aa4359503694b9daa351772896316129d5605de6c2289555cbb603541307e98d6d29cd0ea5536fb0cc95316915ca4ee569d5ca6a6565c4faa4bcfbea91aaa475fbb7eeab42b757822a9315571dca8656ae4a29ea97fe94a39d94247bd323e4f6ca8a889596ca90a0ab42e4f67f2baedb282228154a31acdcd9a510cdc04209335bb9281c6a48bff4af50aac93a94cecb663f7fbebc5b67658625a03a67ba922bc2f291e5a550ab647c3f0bb7b2a22f7f59fd1cd9f862e44bbe52467856f7fb199c44e124925717575ffed2f2255f44358861fa295775ea905ae22a11315886b96b15ecf51f7d51ca26e53b990a97a570d9976248ddaaa17c0d5289ae568faa125050b9e01b990eacd1bf42a45528dfbfb242e13200946a6497b92a1795a865e8f7d7a26ad432b26522cf186955e5e9977e264c86868a8abecc75933ef9ea5fa11483ca8dab4ec39e727155df7255d369940b5fa77aa51afa5e2947bcd90ba09443e56e5ddd69af3f6502db52c72bc9d037fbc961997ccde6a2746e7f26396c65d5db852b37aa739902aa73745b40750ebbb732cfb4d8930945a3851a2f78c393980218e0002e20a0c5c40c037f7519001fc8809c340662a0c266208c5f01fbd1105d621110b6103f6c1b84b1695489a7219824bafc34889534089692f2b29456bad3d24294da3888edfa4d83d8987a1ac4d64c9685dda994a3c59e34fc16192dd5cdec9490cf5158296527a57448041cfec3466552b26cc6281fab4f535f7eecb6adc6fa292d33df63e90131377ba61185cdb4520d56abe4a0ac5d9a21e6c6c7b2a7512363ec56b800f1374e061720fee452608d98ca5eeb6a7bdcd9e811099e1bf43401fb02fb623ec5b626ccad9443fef69173b9f3292dfdd73732df7081353670e73cf90dfbc2727b281f0cb9b661bb09f510d569e0624fdf73813760f04c47fa7e2ed5734fb9736cd3f781ab83dfd8e9b8816d8feb8d3ee09db53dfe1e2e2c33d88bbdbd5857ca21bb68e124c11446461352613f76c91871b846ff07736100be142e7c359d13c39efbe3dbf0977e8fdc9c3c19326428a594524a291db26c394d2c324c8e65a58cfb03de22389426fb8fd6a03d8e76a1656cf0fe53a91bb822db6f1cd971de07d88426eb342162cb2cc15257dd28e103f237631d330cf6cc51cce6ca9fc15e7feefb80cdfdc17d3d5cae7f7c1ceedf8eeb4c04f39c723e1665d8d190869f32909224bc367661f83a5cc5c21d0b04e4cf9f807fec3c10df7f761e504202f17dbe07fc65c7c24cc385fdbe74f9c88d117fe147ce39d8dd4214a1bb6358dae6e12f11420af9253edc81174cae8f78230bddf85202edc58803c3c41d5bd82fe6023d72886f01bed1026b74f42e8667fcc67f178f5ba21b45156e7c99338708c2f411535cb8f3a16598e93d4f1c1866ee70d9cfded9395cc055f37b58806fdc006b4cfaf36d6acedf280771bc6e8037b2b87006ce205cf81f6b712766c3941fdff28cdff970058225b1c94e6b67e7c65ff3d75e7bc7308f91d89f30e938342dba3e7dbaecb0df4a34388639e6ef983f1331449ad086075cb590ca7f01188832f3cfb846fd21e5cc326d8799651dcd32c05e0cf4c6ab030f37ae3676d96a6cfc8f3ec09b3491ec65198832c46863835d7fc935fc69951793f47fd02b19c67f7e1cb8d8efd097b29bb22c328ccbda811bbd1443bc31ca4e0a7299d37fce87184387113af4181d0e707777ec32d09211dccfbe6073c7a68c1ea3cdc19cc2e832d092a3dbbfc265a0254297bdbb9bb9d6f638c605caf9403ffb18bbaf470c7dbe1c0f406828ede847ceb9e63e0fd8dc7eca4d976f6fc6e6645c3b9007b284a878dd0feeecb854906602d940e74e9f18ecb43779da9b7f64febcc18ca8b061b5cc0b773e9c0f5d2dc3aa9bd20f034d7173552a2f6864c89d34ded3329fafdca7652013eef495ab1c67ae3c27f6cc9751cbc4a1a396e99fdf9325762d74dbd5deb4b1e19d4054d8dc17ae776c269d63e763b3834a2c1676a79fa0e412e0f20e8c583c1dabbcb1f25d682fd674e497f82d37b2900d596766667777af91b919eef84b73f716a3bb74767608af73db27604ecafde939750e11edb9af88340bc642b5caf22cf29966eb95abaad6b1c4ce59eda52e1ff14105cd45b759a20996563ae3f2111b2637ba11ce594996d50315376662d83f6223c58d1e7fecd72b938ffd604e522a2553ed4199225326171be6c09c5ec5eb3fdb099000717319c90f49487ee0e207470748abeb52c6da32402a8ee58fd6f66c0cec4ca1915b06487c2e69adf6fa9570d45c5a90bff8c7f711c2a3a273fd831148fc21a116046387ed6441b2205990a64168102a444c6a08420873f0f5871d5966883776fdb263a9e6475f6f6f6ec89019f6d39a7299871bbf25906e76663ea10cb5f8d9f9d1f1110285cbb39dd8c51988f4aee4e2002e971ea05dd931c34420d73f966a7d81a5f8fde84a035f28945c0612327253978184865c5892016bd2644b716e0289a91a0a844f9806ac4993264d6492f6820cbbbd4629e7c4307728b87b96659ba6b9bb7bad25777737994cdba952212c33b4d6dddd4f4e5028282929100e8069102517d81feda73de8b9a4bc5c07c2320f88d073bf7f5524f087062c65c2b44113e0ddd03ce8f3036d24807a5fcbae3dcfdb6b229532d4b20842386d9e883c444c2392f4c05f0a5d62c5921b2c2982c49dd0458b61e3720bc618894ac0e250b8c225842b844460b5cb4057f4e0f24f102bf78868c4154de8c09e9090dd15460c91c2c4154314e10a10b411acf5a2b1b02b4068a0252c2b6ee035b0f532901532f020ec7619c80a1798c08a13c468851037aa228d66535daabd282c2a8c248b7284cec2ce58126d2c45b253c5125a1091a28a22b8b0322e0355018227828aba89a021c42d0807d865a0a02577bb0c14249431c1320116283f9aa01b12117537ec6e47c1c62e2c13e001268145335ffe0f9046090a602f1fd270c7d282110d0f2d18d16826b0ef978ff81084fbbd0dc2b89fbdfcc2a71938f1e304eb3290132b98cb403d46d79ef00c18146219a887e8c6677f81fd821e9f18d62931e79c514639a594724a8feece10c2ee10d81823f69bb432c56e73524ab34cd3b46d83b0a6fe562bfc0abf9e7e2b956a4abf994cf319d6d8df4e359e6cd54af4b7934a7fb0ec9151726234d350ccccbcc192e9644f66983278b7ad72f06e92ef26eb8983d756fa8385bf9d9474d874f06a727ff0c3cba5197e26118e21e285a4e68d4d9247975f16b58ad2787e49c4443bae6aa21e57cd787eff7115ca73ea79e55b0cf6fa49c0328d24c46f926cf8bba8556ee3cedfae66d2af1e6a22dfe1f8b5a87ccacb207fe993ad268e65a864b5542baaa6540e75255784a564e5108f7ca1625a9a8dbf645946e462ad3ac733eacc9c83190767adce356a084a27a351310e5ee75c1342ad7067ac885c65fd057eca08a912a5703152ce7aaacec58b615996b9ba9d9337c5d52097bfd0f8564e7b44e8d421350991f695ebf0e0589597bf0cb5d6c91746378d9eba6e6fd7d65116b5ab0b9f66285b9ddbae894b294a313a424acaa1a81f948ebff4b05644503c947229af94a194a214a394a37ee927c275502cd40e4a073504a5532fa710a1a4b2ada56a1cbcf0a254e74a9415e379ffa99494dd478dc44c9b89235f92c828f562985a6bddc287c96d8f0692d16ba828488ed4a518952b47dcce36adbd7626ed4da59afaa68d0681351bfdc96da8c91a63b2b46f2982f25bab946a309e6971ee7403ab127bad51c9e7ee6e4db3e4ee1e774c3b29539d3a974d4a2c7ce97eaaf36713a0bbadbe3133a3b2f9454af5f90556e37feeee9c9473650393024d192977776698e8ee6e9ae2996d8cee9e62c2ccd2db68cc68161a2d3c04999638ebf2b3b87b0b0b8d19a9951613005ac0d009763875601bfe1cc376bf77145b7743ef5396b68dee768163da4bda68cbf0ec98518609923fa88f8dcf3dea8531c6ea83197b8ec0c6199699ffc118e34b2c62736233e5f66ba32dc32c71c090d0348585cfdf360cc31e7b88c5332a4008fba88b2e84f05ba855588e7cf81dd4558e6bad12a7c74180c333323ed69384b18eba0fdb29c25643dd87e974776f51cae949dad131fd308c8cdedddddddddd1d1bf6074e391815ecc295a32e4c1f6ba3bdfe98e799167fc833f2b71fe0a6a30607c4a0f5c2101ba3bde0020c2ff04c0ebed8f76fdc0e1b6ec8c6b0367c5462bf66bf4108ab03f6395ac3b17fb34e6b1b68e3420a326a11fdbc6c7e705a3aae9f6f790e19320ed7381d5668d2a4c9cd7ec8796797b250b09f3db236b48cbcfd37207110101446ad1d2d637780737b82e89ff2abb0090f882c1c1b082e9d0e5ec08463a375a9064f798513946a8a97a48beb575cefc18f14455c976209b705239aee21a80dc2c8de068c0c3a4c929fdbdf71051f82e031d2387549322406c1fa6520279070d04412fe8bcf9739726d276c467262f563e1e2c0ba1db6528e314e198d9040ea45688f6018383242115c704194051334fec5f5ff520f4ea67ee681086e7f89ba4dbd8301a424894aaea51a197f1b401448a8e9ee564012382e60828916467c68da0ba02808757777c794eb2dd7efe78224e73a12d675244dae473185f73894d4a007c80b253c8187c68dc6786136ee578f0041c511d7ed9fef831625ffeaed29805e404025b8fdd136a93531b68c0a3b38bafd4da909a8890e34c76285db96052700e222f162c10f3f2f1802870645dc2246403b48727772fc85afb4a9a0d64e464404c30648467a7a68406b05c403a11bc8e0c6cb403c08badf8f415d60610d3ada6b46f2fa6fbff7c22a1ded4ac0ed21dcfe6a5a818d3d36c030fd3a5cc501f8d2df90044308e2f6c31e3619bb0bf0688f26613f7afb3356414ea5f8e4c473b0b1cbd741a5aea6155879f9bdde60ea022279ab955c7f0cb26c4e5776dbdc3ed2ad560201a699dd0e1ba02a7b7e17a8ca3a98d42f2e033b21d79fa18a766e5a81f58b746d60187f6620a48dc892f325a50d6d6c6c6e7f773ee0b581614a94b29a5c48a43d67318cff12fce29f24058575c23f7b59b80357ed5118d80fb258ddd9abfd6912d6df863b3b3bfb90c1def9b186e81089eb23fefed11dbe3f6415ec20d91b9218838585df83fbd9181f6812762486194228828eb475f0066cf41a76d6ba4afe74c1acf77d7bfd5e04e769e84bae08fda6d633316cec28773cc432fc23360cc0cf3aa4813d3229ae66967ab03cc3337ebbbb3ff6e2b6f4c12d0efaf4c0d6651efed25d0e1136c8426f77fcc4c62e6ceac2f6f37fd0e7c2873e3b782ee578070ef079b4cce9c287395087d5c3e7e642222e64e63c05798e5cbe5f8a69b4236c77963bca39f0c77d00bb6dbb942e3dbc0b5dae57c3028c5e7b2de59c2e5dda6bb9d05f5a232289acb6d3692bb0dc3a2c3198e1534aa503daeb4f3e773b24c743f2688f5f9ac78e1d38f068dec1a3061d2d2401f63c4aad4da5d8288aade95323ec676f373c4232a147ab6d082c6018850e2374c8312b1b404a5cf0d3c3c4fda8110823f37f0c0b2ce0c4987c84b64b0389e5a0c669d8419bc9cd39e7843836ddb354339da61fe2340f9b96f1225e94ca29e30ddd7e849f3ff187cf3f97bdc62d94bee4049ec4c6e2cf299ceaac11ffff0391d8f800d623c6d8a454c69f54d2965376de7fc7b80a7eb7d00bde28c11b3cb3c233f17a92eb9ec5750845edc2c68734fe38f068191fe2630bbb54e3433ef6db9c33fe609434234b9f9661201f21d74fd71f12c1a356c12072809ef0b9eeba813f29b81f7c5d0ff229723f58d4bafeec1fa12cd578c336cd239776df5f1c9a478ff63cfb94675cca5ffcb5236cecac7dfd20db2208061d2e3a70e8f8d1012594ac03070c3f3860d0814387f75f0c0cab18d8c4df9905c8ded5c02fa5ec209450be0d104aff7615a4f9cb5e0d6c0d2d03df054612509ab1570a9aa7a8448ed535412911cd000000009314000028100a07c482c16824cc1359f40314000d83964270529b0bc32cca5114850c31c618000000c00018909199c170008d97b0441567ef1c7b43755b95a29de6a172e6a2f831c643b74721c1986b11353e2be00f0c69528083a85713b6904cc0d7ed5171f7f0b48672f0ce37d68a0c25d8ed6ddf3fff2c0d0a2150107cb711c1da04c86fcfb253b65f8acfc80341026921112113423ce02e9c1510054837c02894495413dcc0fe02b1a2cfe0dbf995e523ea0544b9f1935e0b9aa031ff7903f9808e1f666f5a1784899b9e9cb74f96a7194d2985714cd85668ed21c2c5e2278a2f60cbdd428d4a52029f5641181df81f231fd75985e891202548e70b6a73b1447049bcc9ee2efb635e6eae891bf0a31b8647be9d4c053bc50b1026730f3df8b01e4d7c772c2b2e40ca87aa6d6c75cd21bedccc4b2aa3d6491a2535ac84dac961b23bee31033063a5230e0674260eb1cfb98649e15a9e10606bcb12076108985081cb7934cc38220985130be5b8449e59359155ceaf257342550b860707cc25630888727f0ac8a8f7de907bf03a67658fcc98c1e12519b669de7b530284ad2ef3314d0409a23af84866877e8bbfc783a5abb643e329868ac49d36126235365d10837e91dd19bd359b1c9d6e36da98f4cf7719aacc41eb5f0c4a01c906d4b7e72b4be2e66c04acd21f1afb5217152c35fbbd1e08e8053fb1cc9ccfc2bd876ff25a60395ee7df332414325a793552d44e626b8cd607b625dc3241fc0ace7ed8c353d8d1abf508bf952821d5c035f79f3276bcb5708feaab32b28db196300825941b7ae122937dd3f236bee696d2a6b90d2b01bb05a7ce5cfe87881c230e4157517833fb4bab7592ae9c08405eee2adc468f7cfda227fd159840f35ed37147636c8863ed6047bd16faea5d9ff37f7918875d9fe69c918442f7e89fe7f06db9ffe6ec8681d0b24c94ab56dfdd98f77acb0fc8616ccdb292e237fec6ccb4384c69773cfadf5085fc7cc919b4c7da4e651d6467cca4e3f84bb5ee2af393b1a3b7a53ccd2dd9b1866840cb51a976e5e7d997ec1e455715b78502538d30f1d6a95df1decc67880261d18f941a60ff73cb80a536d7bb066610e82fb88fc4ea3e499a59f40d5040cfd90c58aaf8460a2f33a49c2bdd192c04730caae4bcbcfdc0b22278c58ffeaea745d96fac4ebac160f15d6c9f0120727a0ba745278c18dd696efd6c5e74f91b112774523ff42769132bc9734625f1371c4d3e55e262663effe6f77667cadc469b49fe69c867ff394594a8cc4108296e6bf4eb58b68c44045c9747b36c3aa42e7f6169a09c67e5c8d285d5f399eaf341c18c1592342e90052a71e29b3c7cf197316958d8cea83634846f2889d02c05df2827f125c2c69229cdab22e21b4e4df4e2086de672fbfd2393330a72b1f3d6850dd97745b1eeef88d47942009a776f50d23bec637264a1bc3988aa3b340e083cf71b79c8c3a55ce7860fecea02c2f2100361fd7602660d7073d18e14420f38367012cd7f3b2088de8220ece91df0ee4dc72727ba6a0fc2f214650f014880d24f06c33816045a4a79a926389b162b7865a85805169a6b0e5ee682a42246d9ad2a88c0c36bae3dae294b46c98ea251a21c22991a247854544568e9a9646bd0381a44282a990e183173d9d8428dd381d56441d1c4a813ce54bf81c3c4286fcd6314936d8bed154e107746f43ca55ef4211131cc78dc8e744f4c30f47182fc84c505717c41c64d3abc033d14e5eb33a35d4a07189233a602a311b0f388626acc0c1765f93483ffe8c5db10aea0f7f408d4f8a3b95be5c8349ec6845e9814ab8441d7bf585cbd904ffd93ea3168055ac75b73c59e027b26ec7795b1b40faaa1622a7e96d0d8f54e0205858e0c79d364ebb9315edd2d49438c950a16f1f981568c7767e3ee229cb6b7a8087b0f42849e0af5d3e8e193fb03557a1d5666f47ac80c8a423d8dd3ac1f0fe5c6ee88f006906879b732110b5ec6b96ff13087528d7a79cfcf010ee353088b048887fb0506926f9642b8f115a96a8efd87ab81206daca777bd94e860702c5669d1409f301ac89ee2ac05b48c595d82dbc5b69ab8b08bf2409d930dbcea26c1ee3047679f15342e53bf27682dfc9e38a09b8dfb9ef096e246889410030bb605149ec0d7abff07dcc5f13a8d6182e2be4a00538047e9c31332c7abb5b4c62f2a8616005b8c494f56e22a9f2362ac68c2140e2fc71c8e16779ed0b1d93e1095cfb11e2ec6800134bb275b2003ad447cb846466efe0fc606127344bea6b9738e27ac9d0f205c485c78be8a5f3f7272af7dab0ac2b6ee2173e708ddab43672eeb034afdff9da8fa5a8daad3b653ebbdfc66d61e274d099b20914fdb22fb9d611f632a0ab8f20e03ebf5e5b58ba5e4b8060a0855e45fc67b99fef285b14aa79374fce07abf352c7d937dd63a29520364f8c591a3f216b454094796757268ea079351729097a0e883008b54da05aca8e083f458d23ec2e344cb4dac32c06c2d2808fd063d252c37ee012f64d3b13ad43f6aff054544f78f251ebcbf54b4d40d65ae0f85c5bcca97cec57cbfbf85c98b1a6ca50d51287428ac7e34b1995f36577adc4ba2cd96b0885ec33992d0931d021869c46d45aeaf961e0fbd7229c68aa80e1f21b9cbd99d2524b08f7581fbfa5cfd0b786dd7939e09e18a0a006eee177692a64a8f4f8c49209096deab1818ddd784959feff62e0d83353bc6a026b8600979a43b6d569dd4e84109e8f04ca053cbceb794f84085e003222d95a2ad7005752c23039eac82897a030eb10d62a8a6d328e8f5433780d6df949d81a7cb317bfd88d7fc49d86102e41efb43fe2e90169a48f486c52a7bd43b3d407dbff576eef76b6d88fc62f30cbb01ba27c5003bec04f736fefc4857f96cd0fb4ec411ff41449c100b2c966bac1ccd3f3a319da397b2a2136c830718ee0f1a487c850cc151a95221c502426e22fe8db8f9cd15d71096934ae6cd9cd3c89ea7cbac520e88a2d78bc3be9ab750708d3ca2d081b8d28fa234e46f0c57b63cd521769402c895429ed4378605b50b2f696e51c080e8f900731955f1487b60e07935aaa7dc724bd65184843d709e680dac428da26a13e524fa22fd8d2018b551283a3756c3d5c2de11cb3563cd1668868742f6d22c25fdf9d99798bbda63e14d068b44a9fb41ca89bd2aecb5eaa0abf0d280112544a1f5f8f4f09f086bdc5a91024d5b8d254e55cbce75a0e71a347d5a8a826248ab47341c6b24e631722fd4f0885e3da0aab2004c4ae5ce38661a9977c56ad3e4880534c4eaa48c09f90839bf7615831e4a3182d761fe68df2701ead18527f7b1bd6a537aabd074eeff715a6ea7c4170ee55516ccc44d95f442a3fc938599b887125f90e483a92d5d23669ed50c2c26b9848f9f806c2890b0d0582b016bd6c0ec0651acdf8bc7db3d238326a26ca12ac17baf895646dffa0643258f07c8fc3b81fe4056681ad41d58bc1e521facb8344fb8af879d7ca97ad2912c02d147eb14753e35ca5744678c20db0031a8c1386cbb1467e03de039d2f1fb6f9f0be050141956d64fe92353595f7432742e516aa0dcd7638eb75ce6b6e5a7391045dc14ebfc9b965bcb03605d3c3076e41c90b2be71f377cc08b714ab18d1f13d7b917069132e0e9673a719c189426765fc0163cf08ab90bf968d567d136c4e6502808a4e29ae3c08ac4ebea393ffdd0c28fba656e7cee464be8781e72c7acdb169aeca621decbfb8c5450e1cebffc488718897c4909da3a2806b7b9e03cbb23b6a5468c2e2fe569de91f2ee948a2a5ae7b2155d796c6268c8f262a5839f7e2fe2dd96b5d1871b575f704bb00ae293a3a223507780ae241c09e09fd50d2daf0f4910578ef11c0ce7b3db92e4e1b70012c20c4ad1fbfb7b326e07e8c1a4a93e8872344d92b4455e8c2badb0fac5dbe63fdcf8cb3a5ce48359f6b8714c3668c94c43ccfef4931c0b60603272d085538be4e26c174a030b6b545eb3eb19b6dab520d0fc6ab653a7160ed1cbd32d4e63cc4714d6a825c20fcbc12274b87b0f3d4a40af9db2abf70b626ca0f28cbe072f3087c374d98b71d5d8cee91a870871f0c34bb8ad022e809aeb320a4e7aadf80a0ca0d3afd21740b2c3b5640ed01404917f029cf7c636c84500aaf4adb8084fc938fcd6d195a2515a6f5723ce742096314db8e3a0196e91b19ae4ade9cb0a859ce3786f8fad030c374b4c58286194c1f64a4bacd4709eb822d8fa5fb8dfeb6839eb6c50b71928d4c4494fc69b8d36b7085d2586d6d681597862ca34ad540ce94a4e436ba7f9d735bbf185b04f8d075fc04995222b0f560c186a4228a7da97117aa47199919765fa2c402f5fd177e486811b2530d46a838da6990e0e97e42b195aab10209690939239374126f8b93c7c23040e2d9c02bdd8c0c46d82a1a188271191ffbaaf89c3a097f4d801571c9732ff59218c40fbc1438cb10e94423760c42eab778037593e5f9d71380f4b9638a6e3bb4f59c797ea148ddef3c9233e3bb213969bbb38676d651f553e77bf586688b5ad6a35aedcda17d34e5d3dfdb64d692a0150476f5ae859a8447cfb44940e6d805396610815043ae41b1ad124f5a53028f4cfccc538d04a9e2a7a1ac2b075c708c42b7f948ef059cebf20b883383a6883284be513fc9d60083a3ffeec9ff4bcea1bc3e2ef1c892aa660c1d14211187c7f0409c3cf0a0c8da771003d83ef74da4f05886a497e4813000e99031a6ad294046622a327d6a11813621c995aca5f4c1be1f10bc9784e153a83e716869a01efa885ba0e38fa90f4e9538487d4c02d0c835c1cc714defa17b389a08bc14b23ee8a7bdc8ccb6dd5fcc800de203a22bfb2327e3cb91b8f68cac9f876784bfa0fa51966bac46e57c58a35af08bff7c5064738a05de65b3126fb2b571e5cd37df149cd30be1a06f8e977fd4dacab56aaa34e45a4b91442fb98a45544c4bd004d00027ca810d8f2cc553e384a3b5a04435809aec2505ded89cf4260ff1987cb6fb6bc7a74041ca9a8b483a3f19a1dcfc728c3ba2a402715db5c82f999120b27190da4fb8ff0e9289aadc729c47074aa3776613405c3a77f35a8c4def20ad04b99d1d8a0043b5cae2048ab70325ac1d089d201a7bc17a6587acd0cb379381a8f436d516be11df71b636e59f1b9cb3bf740353bd74e8b674f99bcae6cce28d8ecbc4fd22f102bda363ca42e6cecaac66336cce6cc93ad97f30f84634f42c02b0c382b7b27e311a4d867c7b2ad893c4373a64584c506ab3b66739252ac9e2461499e628da210c5d1418e8cdb83330346ee339695b420c058028e869094cb88bf881e132b07fc651d79b652ea0bd93f85c594689f8abeabdfb26c96da33a0d3c3fca6b4f84cc9a07bdfacc6a79fd5e738d63128aa766351c7192a4e6753b65c4e72169f0a26715bf4cb31e6c39103ab5d31888dcd3840e4f43c2cdc8b7dae09eb8ebdc2b65fd33e595a681e032c6de90b484aca33ca2a4f26b0bac576506e3b4440636ad2c18feb6da73d87634bf3172d206043b288fa1c8abdfdf720d70e65b06a76beb46385cca3575010a028e531ef66b7a212d2f2837940735bde685ad6d881aa1d4666e0dd9bc2f01a7a64755e9d11d0212831ea00b25bd5d03ebafbb1fa8a79e353e3396ecaab6810414c6a384abe1bb01607e4686b33217c46c19fcc84980e2b0d248ecc23be550302b575a4446362b2d6d94ead252ec686efa3618c29a3cd6b953ad032facca1c239ca44b7e89555135be39761b449292b887d72f59246ab5ad5813f43e9fa3aa0fe48a1c7703ba12a1a57710d9ae6c106199e215f0a291bd2c768f585a983b3ff4c9900187a19c5d854cc0d29edce21874629250080a4c63b817142d8e7e7f550c44c5eedf476513a381891511fb5702008044a8399b1733637091374fbdd14653061a7274c96178c4705c521acc90d1e8f49d4468d7bd0e95f6b92a81225ab84fa942dd733c0189a5d14fefd4c7a8d2004bd8d7b5662b6d57b7379425156bd10c38d9aef741ee5cf9971ab444bb86acde7660dd4accc4c2640a5ce26cf288c248ad4280f9c28444c46bf1790264c8f0cc24f35ed56d2e0c0506e90d1d33329625fc9c2d6178d8f4a48944384e1b3b2a347e65cc0f4b85d4f8e43283c4fa5f40420c99cf22a7057c982dfa80606710e0757152c53df13f423b54d72af59b84ed75da8d0c55631475d30d38b1d5031cb089fba2636bda96f2bba85aa2635fd11566b6084e14014545d2279473645b7c7c4e015a7990ce44f43d8e358648849b2fae09d1e61c8dd4f7863f68f03f7794f9117b7ca37e455a5d5d8a23d643c9af47505e46e0494194d811285f4be94daf555166474d85507a8ab4eca05ac2e8ea3671116c9f06862f84f93067f9fbf68dc3b97b368232021e9fc4725959b4dbdf930b9d0fcfc5fa8aa32bcf3ce49ae2df16f467c0600d2555624687c25e05ca4d28c3f70f6d939b8080307c2625963983c221933b53b1cd6467f09ba943e3256f3a29f33eba49945b830be279e5a9b5af35575cf36b8d936cdfd741a96bca195446b6d7ca68caf6addbfdf09236d6e05a64f5d776337c2754f3c4d8ab090d45f326cd78334cbb1dea4bec01f16d61baf61e46aba470b7ce39fac8cf43f70c1288df1b8c8f144ec417ef7cb53d65db74e401d886d503decc37001bcd26667217ac1ce2abf7096550a83f524b8f30213f29f2fd19f96ac8aeec7729bbcdf9aa5b88a1ac5c6037c35364a1e8451a2701b17bd7fde7b0cb055abae3689133d660230b158b80bc52d1506bc07e144c0072701d3015ba2b07711a48b3a1d0371e0086cc24a52a121c10b7ef4c31d4fcf936300e2bf6fe4c87209ea7f843025978f4cf91b9b0071c24b3153ab66851238564c44e00147a5c6244926af4f8d40aa82019be6d3b81f02f1f894ad395499882a9d8776edb939f31674c34eb4d09879cfb173f797b6b7c7bacd656034cd1ba36f88754416a7000200cf002d123991c9d740430c5de91d923b58bd2cb98db89ddad14a72f1fa79bf7b762860d6da4c0c4172b41c685c90ac04b386700168a347472c4ceca3dbce0c9fdf94d3a6f753da4a857cb20de2aa85db82ccec11623a840aa97fcc3d275b2dcc164f044b9e49b7665fba63e9ceaba70f8201c1ba7635f6c8c32727e0d3b40e686da6eecf854b8cb880a4ce664a1f46f165ae817e87b43a976ed60afb204a8feef303d36740bb15f676d7559d5ceb95d74920eb6734407a9aa34d095155c47acdc75bfdf0b2c3186fa88318fb50d0c506d005aba4e72e4dbcb7a57231df80e8da71825e5896b70cb77c9d3f63b7f0a3462775a0e22032893e2145520067e1e84b1c4af5f0a20cc10f0b13a22c0b5ea314559dd19e9509f2502107a9910fc77d09b62b8c0bf80d63e732a62d55211b20518fa1ec1aa529470ce6863c8424867828bd7846b388481749204cca9650815beefcc49c2e13040c6fa583597f5a65d4f7280989557a665ffc6905ddd7693603a35f96e8a458113dcfdb3c71718ad7f3b4d1c0f266683730abbe07992aa15d685ac58278a908704e2c52111b58d496961cca83ef42f00ec9a92b25d0c69dac9eee0454efd293008b0743899bfe39df63de36f74bc1f16bca3cf43941220bc7113b8519fc5e8597c54f0f69d1c54bdde103c4108687877c570575e1dab9b4650d44fba5b199698c2a572bd29630671a1624f9f0fc70b84411eba3a309949c85ed37d0dc653eeeb4232c9b913f34024afb16098cf8afd9717e142d023279059f00fe8698540bbf430bcc48a6f20d3d7fe8d6d9d5acc86b716b16381704ebba24915f896eb653f50622c065b8c3fb28c6c1775e55034ed64a88dbb596119d81bbf3bbc65c3042289e7b3d2be950a32e836c9a16b3d5dcf484c60b23ebd5d24748bb7d3fc6238688e877b3be5e0b72bcb8de85b3ef1346d915d22d82f4da72818b68a7941e5ccdbe1e34646eb665cfd4eb7e8083eceb4de6914edeb7447b4fd313ff2e1274e492bb7b6e188e02fb4e81ee5289a26965459cc6217562e11c134922adbc39b82bfde652aa8c079080e653a31b9ac3a578810cb5616bf6c9fc9f5b41e36ed5da08a88283a5013327df99dd66eb72c14176daf40e3201587548e9fdde21fdcd4abd61454665db8ade3113e852044dc5ac9b2e79cf2abb551a6142ac24a34ca54e17d64a13ff71cfcb854508e6c4322594aa9575106e1b8a1ef13d2941eab6d3204671849d6442e81a6bc26d917cb4440ead4bf3b3ce682e9f98f63f8ecfdac1bb48ff8b4e26e77fb48b5d31b78e8e91e3e19bfa97030eefe89a6776696c5c769799352d207b38760e2520a9397a33d24b43eaee3ba0398b73274ca5c7036139e1865df29c9e7b227521fd70f5e90556e62028771780bcad5305efe8ac9bbb29027a0390db89db58bdbb08b7baf17a4bd3381ddfe6ce8daf5bd772980662dfced47a4918bb373b2b082b740074b93aa1d5f44d0eeab235db1c86f35d537a12c82a70a29d65036a38bd011d2332cd4d10550dfc643347680cfcca52c0633ca92e565cad16644abbbe3f6572da62145751796846b64633838c83bf9c8a659de67aa202c04e54a39e5ffb47c72962aac91c8b432af7420d9fd57ad2dfbe328afb25ead1e4d4dfbdf56d1722cc7b226c3694cfda7ad4320c3a28b64d28a933f5d31b1448d007e1b047a7bf85321f542471e47b152c09ae3687846267d9d5b0e3d9a573491f0e2d6923618635dffcf7563a7ae7fe90a3e88e5acbc9c450400c3c84548752d4073104886091556101ff633c4ec6313906e2aaa8fc11600ef156b12e064133422d415d942e964cf4c0525e496d7dd65b02e32f9e1663cd316c0900bbc943898c0beaff75bd6cc8d3abf338b0597d8ca8429c4d79aec463077c65d996f508f2008bfe613a4faeb84ea0381091298d051fa516901e01ba1c4c1761b8214ab95e445905726cf4d8c15ff1eca11845bc1903b1674a7762000008e15f773c7c34e8427aef9f53a33d29e46820e92a835fd09b0f66b83c5ac0c890b2178f1900bceeb883a10f0da7194483be15903ef90d7a82d6ab93ee8156d12d458e3096056378ec70b03a75af4addc7d1c10c611280ded7a690016d10f073343a73d0d12e82e0c8a98312a1f5edac705db749b8b1150ce2b39e2d4811942eb753df390db9c49039e62381a36a71817a57d400c28a7d07a9d2993ef9935ba0eb0152801a69f1b4ccc32714c610720fccac4a2ac25c9dcd9cb4264a087ddd33ab992b9f9321f12e9baa7c00c29328ddf531ec928e3dc2e4a37fb5e21d23ebcc19a3aad2353a523dc1832534c38ff674013350dc6ff7f8bd03b31caea671437837ecd4004303dbe56e4efddc605770188333281683d4c4f56936cfcd2cb80c58a759dacb3510d5960fa837a0e0d11dc0939a1c5da005e5c1c8c4ef0f72ab1898d20d25d7d0b60711ccc8e8c348cc8fbd5b9706feccf1223603637a85f8ed9f20201c1e738b551c7f55c225a4de6a2825a34c88003d0c2c70294f6cce8e18e14da9b7ec466a0e193f8d09314e94500fbd401fb599d5c90844aa6b6250331dc9b0c8524d0dbabaab865e504c8562e206df315e2b7a38887bd814036230833723e337955574f11eaddddde2419442793175ec2564cd3ae92243f97837cc7ad2cc938480f4eef0646816151eb3b61cd65222b503b268c20c1d00f1eeb3fc5079c9361dcb8f2a7173d51732db971aaeea6fd84a4f7356d002fe016fa78c7f079af838bce590335165152a44f6c0e88f885b9cbbdd2c244c22c3a4676c6f913405dfd5b9b9d958741f5b3791ffb1987ab414317a1109114d46e52b6575046742ce660620d3808dc21e2c5f97c99afa4a485e9b23c918ad93f079299651ac9a08753b0793748d548f8bdf50e51d1986fe30c6993fc7c70cbb3f5419cea5a2799285351993de9879574ea92f616764219405487e8c374fc3bb2481254e27ac7aca9de08adb6a665b2b81ebad14b8fa5e926894b547a43ad6774f777d4a473f259902b4d7559808ee37e51a032db6c8b555e19b8cd204267a44e308de1b9fac8aeb9215e8fa7e2b4d2b4754bfe39cfa52168c8bc75a0776cef948edcd62d1cc1dd27102e4f9685cda74126fa4d599914f2a7968fa497a277dd63f0a606ad742f6709c0237bf3e2c20750aa6c7639e8c8163250e2db9a3d3e63dc491f6f5dbfd5f2efdcccbef62a1e409125c8e5a96e8b7fdd583dad833c35aa80a4831e64cbd383055230fe9090e6e7087d1206c5e24ca6f5b3006abf962cfafadc467a5e59f868397acda42025ac69bb7d65f8dbbd76a6c58cd9c77ae0ca75e720650fafb93fb78f949ef3648bceb233d1bf46925d28e808706f276302a78731157dceed6ebd7275c6495f28ae10238149f17217f60ba90e3bc25c993f83236296b02be867bb117a93c7180c7c69dfbcc9be28ef020e4f5ece0121ab3dca1fa170c89e428546aa1dbe82b97f820fa4c14fe0b28140e6d1bd97b9e4d9d04020b1df269c846417c0817c9294740d5e65a4a5830c7fae7ad65791d40d02c89084882409892ed8f698d0243e6fd0294aa001b37e0d33d0905d293055f2aadf8b61d4e1645678b309d4197e0f7ef950b2e3df400f73b12056f8f9a67ae28532111849e6f9d6c50277c53bc861186f833e9504072a56cd0d519858cc5ae862217f0c288c353a91e75c60ccf9a0e9ab3675a885f8709cdf16dd003e65cba030b7d1b110e82ca7e716a3472f1917c62e4e020fbb6eb72303bd7027c4accbef5e8773dfc4a51b2f314b7278e0a8ec71b473777554eef78c10645899fdd6ac6eee948a6704729210a5d6a3b48c3c80996f43facf9f65892ac75c7fb8b7e05e3993be44b0dca227cf5877c8ad1af02edad0fe129e1340e045b6c54eed8849e58f7bbbaa380e659aac951b0fbd023b735dc3ac9e039d9ce40d1ce9648820269cd1944afba41fd18c05613dc1ab15f06e19c50b1e40dd5ad06b7fb8a3f8eb9cc41ccda03fef452a01cf599534275e811fba48cb99156b2d31bf03f15d6eb4a5117a6f9d653d9f6bfab641716f3c678f307f2cb0cf780536d93d27693bb68d1fa0ad4f69798f3ab130e6c195a1772486379493ececae6c0f5acfdb25232e0e9e890c5b140eea5f10c96e46d15d57d222f5d338b7b009cdcdb71eacc2e55a7218022d60b1a41729c649c6f26c229e27cb1797b0d47b14fb99d75a9886cc707151480fcaaf3e7c600bc4b6ab45b05eb958c9e501ebcd06d7d95b87a0545f617e3dacbdcf6dbdf11481b38046f4ea378411d8f29e420103cc65ed35e3b5082e2055f10eaad188e8eb4cde1e5e20f3fa58244d1355ee0ea3632ca714e4a6c5989685120543dd9a1e02e8440ac1a667f940c6a9753b2ac11b7b21a85fe1c2137c21b1a539b54462bbc846411c27dc840b6a2b6ab7c34289786cfcd443565fca4f4bdf3ec27a0639c92d7ef12463ea2884049d14203a04e84237bcf458d96e1709859d6338c8a00c1d25ce083a44a59ee82049d09ea9c541d81a13b9ecf3627b5a701199dc2b627c26de19eacb6c0837fc8b5b392991eff97ea23858670dcf64546bae66c74cbbadad9a5b1b4038f8a01f8143ee689933fb7d2cbc0faa634bf8cb84707b28d1b205f2da39abad5321c53511643b8e299473a0ba7c91bcd5646a0d40f7855860481b72a4ca7af487ade4da5c2767f652b7e2b0b3ca6c4b86937d582e12d1ec3a9e87c3a571813559297360f356b26599c01ff7a3d66890377ad8db401807422d751dd3e76c070259ce91e458731c2fdd9ebbf29d024bc18edd730abbf6a4cdda01b49290d62bcebae5edbfad8df708690277ba138fb722d57f4ac862c91a66c0caa27586102c36e66a3bfb03793605b932c9eeec24f9d4e3a196f388a30cc6d9819e34ce778f3c204112d6bac1aad1d9b56f99d861abac60abc8b46cacd4e47b63ba3edb5ac1c82608624db01852dc5a92a843bdb6c44bcb586bad3d778a3607d18ed7384d2ef18e17f8aa0d4e55949bb7b3ba0ca8bacba51a085191b3fa6e534dc5a7c1662f05a56899db19833f2ed892315fa256dc312116ffd162c8031ca9d2e9641c6f8298f37ae429dd0606e84d3831dc6637a1154cb059337abd40e804ae6844a5ca77730f1864e71c0720adf0e752cb8a076ed187889b7359db43ebac8d94396eff9a084f15b086cf08f5ff9d4a0544b81d07660a6ffde7bad410ca84487b9b201d54ac86343d510f2a80bfa51183699b11f3e824c75e9f7a402bd49a5f635ccf71106578acec351b41108464cf299f618728e50c485e19568fe3c578fed4057151985ed058e7c44e5c9017065294fbe47528bee0a0cc2ce4a93a278d93bc4fb29a77f08d1e7a8550ff4509758dd25eb9d69348bf7f1e4a62afa31d114d91771e8a9fc56cc87805c3b6aadf0f543b21075162da02a047d622e19e5f4b45df251ce4a9cce4dacd3ae80a3f8e505706e833c35d59cd3a0c4af9a45e8e8c591961945332931fac003c8b8653a712c82c034478d65cc114169041b42f8783b815e019dc6c4439c11390805481af2d150deda84a52882ce2711d7fca5079930e07a6dad3b6a692c549712d8ae304c3484c97cfe97fe40038d63ae7883fe433afa421170302d3e3f05d43231981049d17d22d4128829392b482a4d066ec78072c07448e443237c8e180cc30d93f30c22079ec748264422a2d33d1ae5147b054ac1004d645970a111c09bb596bd01ce04c4bd35a185e15aba52afc96f10a713b65b29238b86e3f9e8277756b64c8c4838fc02c368e8e392fe7debb184a067fe992fff5aef487a64be32da0ddf334bfcdfd4049da03272fb35585b077a750c1976e1df1f90bafb29acd7a40de40a91cc71654628086b3a05ae22b4c2cd2d35733ff08b8c3bcadf589fa3fcce38caaec2dd1ec910877e9b894d452bb8054d3d246ba99829ff5b0099c2757c23ed5564c72df02f2824c9d3e60b551c5dccb07bd9b4f94d3ae451a33292e3bba8bd4852de107cd6ba01daaf8f45c928a777445b92a5dd5aaaa8d721192fc53645685060ada14282a9a236224c27c8036cd4491fe4a641a62593ba91b4001ed8d705726049edcb2c50c0ec6664bd67deffb98549f27636811c17fa65951345da13ab46bf37608d4cada603edad23373a28e89b1406c051057918e9816d9b42f88817eb7504797dab8b42b910b48f2225438f48acf2b21c6c415cad861d4b9ce6c9ccb579101ee14b5568245326ec43226808ed9d6c05ed13ac87c774770e7d59d44c2dcc2392db1c1920050d084638230fc948a8f33cc927766921b4cab1b98518e079929996a72b582887e19c06a669beb26b5374c8841d10ff40d0b947504c17b406f112241cd68d7e3053bf8a4ae4b1fe2fdc1ba293daf012a96f8d40c7deaa8f356390f076fa774dccac6354d1e7e5ab0a3c770899f486dd0133ce08f511d9a1bbabc5b6d1a8b41dd31bb8f1360d2842336496baa93e894470ca98371640ca4683252e09bdeb5bd74a979dd59b0d2857923a6693522d86560d13d345cd80f9de7c09ae239371766b9651c5047c9507b4ba86476c574ca5ccc6d9d187bd17942ec3c4530450c3bef3143beafec57af245d5822d483ecd1cb0b45f33598dcb8e990f47098e98a676e704cf0c0fbfd7f231b5a3ce032322f8463cee52de0830e373b1aec2c8f11282df1355ae9979278ae7b08b0744a9a61f32af9cf07e9f5a6b84af49330f625f656a545e1dff30934165ef890eb3d5bf8ea092db0519880378d7231d20534b9052f76d14abb22cda6f0960f79d659cccd7fc666730f1c512cea0366a1d41bdd15b3e77257c6ace1526e78098aed1b1f3c85049585af14640e452b26911b897fec80b457dcb54f1d0157299674de10b8cd6feea2dbc91c61c18e1edffb3047fd876d7b6af6f07bee46b4ae837758ff08eae1f01f1842c68e2ef82f44887e0897c0604bb58adf1f40491ee275b552f7ef0a831ed07dd10a3fd3f1e55549606f934744432762a8ff1405e9547e425723d3c954187180ec9b4006be837556ee891a8ea02bf2ad582e5bab5455c0507631e7af44e9873c4c83be72d4b6bfcd0f029bb11b348a6965360c83a585115c17d1bfe23918352fa24da6a6543af93dd0bc38a18466e62ba252e468528d30cc69234c064722146507eb8d6491d387469adeac059275bb650c319a8a21ef0b2a1a4b7bb3c794a599d1f2e54d0f2abd71737f94a28388a1c9d742af432542a3f9cfa09ed7e2137896020f76beef476f49e65ea9ca8cf5d454d2e5c6019218219ca5c44d9094599584078781f684c8b4073b1ce14550952878f536d481502904c9331417446c3eed355d6a851b5465180ecf0d1d27b4221816238612bbac818d788aa2d03ed9a5b5c27835fa74695e0ec19cbc538a1590d9ee370d33894cea07a4ff2641a7449b71960c8fb3b0431e322483dddfb616ee1c6312cd91da9249c012b63ee90265d23864abaf2bd477103807c7f7a76d790204f6a7b7fa11af0078a79d4649d212f7d5dbac95f39e5ba2711bcfdbb800f9a8f81a099d5090402fbe430ce8f88506dab03a8c44271b907e2894df53e9ad97c7a93ebfc50191f8844389a1147098bf880aac377c3864a2340e446a4159d6536f1a9815fcc8601ba2accde23e12577f72c9648f3a330d90c672ae0eb91863f5730340b60d7b7baee53c5d4c99c4e91a14b3e707756e5228ff51bd7f0d250fe29bc6c05deab535c5bd59cc774c7f933f377a1d620b64f2903a0750c11bca9de244701b81e84a51ab8e277a87fec4ca964772347f18c21425b4282d81bb9bc94cace95b5f3595ce213e3a63c32b600e028d05225e36f0d7906c43083092eef31643125d04e7326c0a57b31f907d8fb85f0f673e447536ab56b2ac47649e0376d661081d9f6407ca3548625ba899d25c90e46a818206be7b17203d0c07bcbbe3d64f6f8c6ec1b2198a0403abe78fcd83c9719675a702d8922d85736d74a73361369227352d90dd08049c7e6be5c3e4be57c46e2fe2078e8038f507493a35b6d129a3f9d915bda35487554302b101df412863b2f1baadc4a6609dcc7c90a0cb4c2afa6ece0a5191f3c748d0bbb93841a2b2e545f0a87cb815c631929a87865d1745fcfb23ca0e699ada445fc8d641687c6823e1dcfec7fd0a1c15c001896a2e19a740955f2c39810e414776d11583d03cf9511fd4ba07450a0b2ad91492a08ab8aa59666b1f63c4459ea8da6e335302d64c7618b696607fafb0ccd8f45498d9ff73f10ab2827e61171ca8759ef8875c6e794dcc2692a113de3e4fb9f000a41e4698d4c0d3a6011198388bd8a393268b201864f96a2a8bfddfea81d6db602300b1c72dcc031bd8ce9bf099346ccc2c2cd9856fd2b6b46a6f02d85773ea624f01334dfbf41b5d95444af4b5b7cd3f60a286e86632fa1c634dd11c8762d5e4360d0a7ffcfa160abfd02a114711fab3fb59aed52958cbb91c461662006ce0e81f449ea9c6e40a891e6f962427877b7879856a7a989589deb14babf8a1549d74f1f681aa8f9a795736b856ed2bf8993a54dda8be26621a4714630e1a7230288a84d24054cea497fa40762be6a81267d55618ea4de72788fed6055559d77dae71e76a34e7f857c8296207eb2f61a5bf13e54843a7356a5f62d668b26f0f47edfb286fa6b906703422cafc3064f436d32abc09da3da58a904f0465420f9df7a5aadc8aad9b967c9e9d7429bb9c308bad4ede25121159865dc88961878d4174f2a22044e95c1c6a7546f3b246b29eb349a5c4940c7ea4c5ecf8ecf337e0dc4fc2393902e58ef33748a2648bc002e039f848091427a428b7c7dd5ae1d85d4f30afe8cbd6a6a295103cbf4e5007fbd4a2434f5710fa8e7cea747a9da946027010ca1fed4a3dc9744225370ba0550516d43fbf655599022a22143067887469160113aa8782ddb7a6357cbf0fe4494a940e64f67dc38444cdb088b9dcfff9a705ddb164db7760ad873fbd4484889113c88d90095e6220030594a0fc29434c820366981b4737bc284b6a6becedd622e42ae9426d4a934a6ae7bc135df162f48d8c1603ab4bb28a44c875eb2db057c505dc4089047c4d83a4f0a80cc6425edd8b78765b9e1096a3f81dbb9e143d2c5fafc2e23710c4f514b3fc06e1de21e3e71b8c7b8152725c280d17948acb4ae126a5e0a2d271a334dca144dc560a9794822b958e0ba5e182127177280dc21d878ef43bbf0a7102b55f62f9401c1f22aecf88f301f17c94583e11c367c4f529e27c0289f93e25968f9f7eddfd546e3888bf2bb050de7189813406935ff09cb0698457ad492c8cff8942035ff6e80363db0a39c0e83d72be32d0e3c506eff3c1b276bab928f87412ef069df634d39eab2da654170cebfc4dda0090c7e1b7303c499787a19ab3db6173a24f68ff3f974d19140d1c43134c766e32ba02b7142249f20f3555f03a3485c60a6f5698aa21b515f45629d4edd178c2b5b3f29d9dd1009df6a0a077fb38594a17fec3c094beadfe80886bf4aa9ec7eb359e8e1b91e7f0aa84485b9015f714552035e4c829657928deced3b2ef740665a41927a0643f03d1806d2574a00903f250829a34059d87724746878395d00e9d2ab1544e71e47f462fb0b119913eee2c36d00a898ef937b9d006cfa60e7da0f756ecd144a3251fa37316061690a5619dd8c387301b5c07f2669ca2629fd92742d2a44e6c96d0a7cdb6718df23a9d4d51383f5e2a7c6cd9e56295dfcaaf9d0e916b312b7623a89d165def80ac03726d6016baa6a76313775a848ea0aca60ed870a7f7618388a3fe1eedcd8ac405b8d32158a4339c7cd00b201e8aa562bac307ff5e36a050cf9744c7bfc9ccfd0150cb3bfded30f1ad7fdf2edd69a41072718e9ce55917119d4235cbd0460a2ab43fd9131e5ce9d7346c85bd0acd0a4b1302451bb8139def840c1236c8b6bca2b77f10bf0266949a6ca70b77db791f03b68dc8e13bc086501c0c7a2d2429ca8f89969553ddbb0150f79f7ef0cbb68cd3d8ac92b8de7fd22e1c2aa61b8501a0f3f1297a30ddd1de9f945f9361521207cf214d34c5d1b88a6f18b06adc7735df2c10f6c97e9b9158139e165c1da23cfbea9577361d2c677b7c3aee9ac53e418733aa3a4e54f540c6a49236aad34009eda6507051691ad8ea4dd15ec495435af0497d2e5619e818c91300af06cd3c335e4afa06d7ea99f82b6854a0534d2ab4b29f36bfac81823089d27b3bf71b4e14b82737629a267e5ce63cb26f2437994f74fa997037355ded6fab490870d35e4325142dd84680b712c01a6fe48f17ec1df5c819c59cf606388bf49b207b2624af00d7aaee87bf957b6530722264f46e90fa4e38378fa90e28cdaf224260b0fe2ff2d308a6a840434d151ca8338c121c05f81e5f05b85bb66ec83a0a701d02fcb9d26ca54ff85b88a1a76456cad8ac9bbbbab0218603e89c9469c880f9d2992c80f293876cd189d60bfcbdbfa33a124f2d14dccdc12e0b982650a764b3cde95c2fbbab123af054298384ebe22a0f67bc77833c38b72909a90993e83b0df2d7111067d37b47623a9ab98fed93ebe3b2d08c687c135ac6bdab90f2ef954efe784f9047810908d1b7f9cfdf50675fb55ebcdf38f2fda76070860a78f427c734ea6cd3bb86f798ffa23403dd14088af08d63183f7f16907783fc0150d9f62b4817f62f4eedf113752affe48023b7b898b89145c4e67b947dcc469b88984d8da3fc13e221f36391152190dd78b54c228305e31c7276b60cbf96155482d6f5f4c33c151bb331111435d23cb38060fa75a6e893f616ac7ed94c0f528f8f2a5f0f7739fd77667492537153133c74964d81f6dee544317b9c65dd9e271879542047817c343987cfa2cb54a12df051e45c59fe3cd83943d2eb9a153a018c00dd9fd1baa01a7c2f6e865efc3a9312778c7cc7261d4c042219eabe129ab238a3ce07c1e17359ccc47f088dcc1095ef62b4deef52c7337c460bf0777de58f5b3d670736201847e6021709ce4e1f938e12f70857c384c5ca6504d252be10577d41f87bf05a8783ea6f6015bcc485dc0583cc6429087ce227a6a848eea48d9735578f936bf672bb5362d642a9bc982b85b00a1cbde93a1c50005f7c7a908859b179e345d510819654f753d6700a18529e2a5515c7f9ec8a8439d6ceef90787ff35a89ec1e86908a29ce2511a8a0dedc276ade7e22858b41476efd41058f1a18746b624257fd85589f3c7ad1d363e98d7ea3fed4f8306cbc4b1b458a20dcf982ce02ce169dcb97e0f175dd6cf5688b50f7a827ce3227a59e532c69916925483969e944f9caad7e2da923bf3c0f01c9188b2194d0df0f2fc26667b5335c4392ffe3c39003f25497366de1ce15b3b37eed44906046b00ec26ed6061c580fdd47d830ee5099e0f3b2ade0a3f9a15a039b2aa5d79ffd9960639328f24986c933574efce2655e65af9cbf36c15b46f99bd58ccf9b4cfd5966588311712275059aaff82ad96a2bae147d1e119e1708a531a6b76c0cf4a3d3208eb672c38b1260a57e78a49427607f16b7893dcf9ab01596aa9d662c171cfaf5c9a20f1665bdd6e83a08c8fc987acbb3e019e1a341ba8e41f4a439ea1633e899447a58d19fe36871c121debde6168f29aebf7e61774d4b07b7480647cf5ce10e07530b4e177be12f9ada0a7f18e732779044fd3f02a5b7ea5b42124897feb7e8d2bcf083507705b7495479406ad33ae39920b4f6dd5b48842b49e6af03bdeb24b7b3c583d611bf815491064be61cc0df52703b56aeda8ebc22080a500fa83d8c6d18649b0a639b8f9153cf9068377731e7a3c76a46a78e0605c38d89dd8301a53e02377350a6ae20b7794252c1f956692b8b02c0a2026eb9afd1830312501870e903fee2f077fbe00b7f4745120e8df395815c07adc36c32a9a1943f8b1e5ae4c3093afbf76315e5decb1bf5e608478d62825f4cca1e96f8e9cdd1978b58f9314ba92de28474debc5b6f2a5b00e2a6c5160ee3f68496f492a1bc9f0dda09d0d6508a6578ed386ef45cf02b03cb78735e78bea21cabd509da2ea7f429a90249d1b92cf31053f982bae9ea908c693d2b03c670932ff156d6685965309d0e2ef979f3ceb2dc75eb6cccfe5e0cf3f99a3f24ba0633b2e4393c28203b7f290a6588abef13cf5f5a78b4fc0408c2f5aee40594ec5bf30731db8e71b5b572c0137075638481e1db0119e8aca6f083660ae0ba36c93f7aa0a23d1a3605fcf3ca2222823039d23f0f6f804e7b371daa756a62658def2c202d2629637fa4d292c66e42f9626d5481c5e0c39320bfb2ebcc01797014170c8086c753ed75696fab7871cfd3888fd8dd8b62ed5edad0c82a83275499276b0205c4ab10dd98add5970b31f8f6afc5ad2edb070ca0d03a88a2420e91b306786878cfa9dc6d7c0a756078b18066a49aaa991534f734727c99f4941a4a2e793ad516653358078134eb15ae26c72c2ca6cb229381c9bd9bf78bb7065a7572471d9fdb3a3cb8292911305b7a3760d6f26734f75109129d6af8433d149e7888dd2ada2c5a739616c6dd83db2d5ae3459e259a2d456697ef9b56e5924da31d281ce676c22edfe75cc06bdd7e3631fc3c6380adb27586cacd719a7698f7a52c1434d10e9ed6495a5aa3647a469175ecb4a12198112df7c4100dfd79d4ac74c93525fcfa1bc210d7180e6caa25411bad98f7fb1129608cea2ff801605a630b9001c4cf892601626f2c3301b9de73a448b694d6888bf59f17869e13105ac80157a78b7fba98d5e2ff8b8ce80d10f3df615b33489323b912f47df35d324619c0bf1a8af4461d813ffcf98b38b64708c12bc95f997ff1dfae94ebcf7f9702dc5070d2e394d2f2f50b2865c7fa968c3f5b90cf49f4708acb6eae0afcc5e632bdd2f92c2e5e2c240784ef457de550c30fe16b76450ae92615f9db519289e760b6820cd35aefc71047ab0208ca12aa3d7500c14de2726c43c946449bd87ae17f89361a1bf7c7b7ccddf95f3f4526293cca6b09c2894797c2ce7c2271498c54da1f63c4c4f5e60fff914d8350b7efb56f886b16a7470aa455dcaebb8ae14a3336b93b73b61224409b86379597514c6b81baa1adf19210dec8fd64f2419af7177be5e84ffdbc82600804e95cbcc010432bceb43747612c5d84dcf6caf87998d4a00050b91a32bc575aafd05fd6ee2dfbffae58e4fae18e6a882e4ba375a47f3063bea38e8a8ca88535231f8117cddf374c2a91626b95b2a01d11291faf2dc405977a73950768ed1bcdf88c050619fe9c9ff84acee5eca766521508dfb294413937c9cbf31353c621ab8002d475032269c2ef6f54c9aaa645aa89c34fc8741403de3bff8e9004f15aee9a209f60346ab4c451546c95f75a1e01b6504c40c7a27afcca14263b856c46faad587a7ce89512f5abb19ed2f5aeacfe70453f58d4d7d0fa7efc7938f4646b7a31f99f95580bd767c89a4c1da2954a83fbd406cc47fd9f984c6260ce5b6deb08006b6cacc0baa51325783051a649ff65cae08b0c363cd80c74cdf4f2f47842633e46572e80a442162ee65619b0fbb5755ccbe71c7069dc85dff97e93bb1ff65ea0c4adc9ac0b3327369e32a918bd10272ab61fb041c5c4e588bb43653c409e84ef630a45b697ecbe036bed8634c4743721cf899b3b2a2647d0c4a130a87e8fbc4fd04d54afd557ade36856798cc62cab68d48ce40faa0a767c66ba4c444dba595ac3abaf93299eca776a8761ec70ce1e2ec44d72291a1fdd8c8e8b913387220b418ef78782e7f1e4b7e939713723023740b9b07b9f34ca9866db20f89ff1898d94a574a2b08d323203060e66f35b993fa68b6813100e5c3feed29b1542b3e579634ad2f986947ef4883f08fb26ea74918aa66edf999a776feb62b597a36ea2577fc2ebfdddfa8078417e546eeda6297fa4d27bd18c40e23ef8da0d209131f92dd9f50244ff241439203c9f8ef1e63502af1608a4583840723e58c262802409a95b52d2a5716e75f2a9c370762807b0417f0c963a862384e37814d8b2d144c3348feb03121e55486a6ec82ce305948e8a20bc2086d028c9f21b6210c67314423b76acdd44b7c0d85ac6c95a442652cda2457623b71707c2be00d84bf8a4dda1c555d0b4cf074ead9676d301308f5dd3e4a40f7315be8ad558dec59277e7c7786758b19524175d1e9420207dbf84a8b677ea326334138fc16f0ffdd47d15085b40c40b101957e096c39ca8510484e526b42435cf1f1de70b4529f0cbff5f0865da56592b17a702167a31ee8c734061a6ef76ad858de4954c7b705ca4efe2044434c4dd65a6427f550375e662db8ed00ad0530dadf4b0d154cb49d5a693467f427aad7db670831c4ad3f685586a13915e6b7fe79bd6b9e8b765188fcedd45caaf5995b533204fcbb135b83a5abb474e7118520f968cd905027e7ab70b9b96923e3230d674ff2c030d8b380d7f1707fdd83dfcf0c41d1e588c3d469ac25e8690d3d9b87ee8f222489101914bc278d6deb31d6c6037110e2454e23e3a906de937fc1f546f4f1416b2e8d9dd7125120b9e20123cb6aca0988a7d948c58b82fae9caa91f6a5d25d01a389516f1d3c68f678898aa9e50be4529fa62fa7dd476f0ca7e20186d282e2daae1229cc6442569aeb3d2c75c1ab02be42901d43c5b01198f1f6c8b5c907efc9095ee4d922e19da90d3da2690aee4c6bf8c80d385a26520f5254f0515be5d0288ac6d1281d905b44834eb64dd0200fc12f8b8cef7831e84a6e2ad0d920d568519ba3ef9dbc0b0fe2e5121078c76f0c5ac351c17b989deed7f88299f8ae2538ef526e401cdbeb67666b84bb17f6174354dc5c3443f0d663ce74a04ca84b4ffaaf88e1d3764b4e809028bf2d3e46878f4076091c99f4e76cc568ed35a26d1f45ef41c4ab267864b12766ff0929538c0b7d31e0a7c9435132be1298ae780c3104b708c84d16e32b0ab836482981e8367a5a3dcf605f92899d43facfd793ab2f201dd6541c52e747ae925c5c4d6a03f4bbb11bd88d387cf9e47e1aca39371dc4e27b0c6efa1df1c8cd86e10c7717137d23b8a8f753ba928431a3ff2b8e66dbef99f82d13b75ba5c14801090590a7145f7897c96610689fb542d1bd4f7a3367ae2022cee7c25b1c3dc28736499f0fb0a4fbf808099abe9c4d401886f32f41a9f664a5ec064078a32f764ff9cbf7c912905f2447781dd208874330d25dbeea0c949217e99e5a3ff82c1e6d2b158e6bcf15b837814f4988425355eecb77f9f1b927d858e16639a73b60ebd50d680b220d039eb37f78d4b9720ddeff13d50892f43d03c39f4b07f8ab0bfc894be3e54f8067febf4f96bc8f8eac692d9468120309b6202910c5074dd6d1e0207497bfdedb7d75e409b7b46148ccdf32598d37de8e34efb688fb43253016b3e9886660a484a87e4f1839b61045a5fd4fa126cda8f1373143e67865fd54a980e168d281c719d9a3dbd4b3c1cf54f9e4352182e9a11ccbb64d16b74433bdee8bdaa0039751ce722ce12789f37f7c73d002935a8526060b2eec5bc7da63269cb4a29bf8487da203723dfe1b644b9e06e6a84141dc0f111e29e8f8af4404937ed4ac24c3fc7349e847d1378c413ca717e6fe09f675048734ddeb4cbd6249e7fb76bf1b29e1306fa20cc0c5c4d10529377c08038005f97f08e816265091f6233ac172b2196c7eab58042cae08285fec08325a1be05bf543b27c524b56c2e5abfb69533d982c857c326aeee73a72035220a6609fa2c7326ba2870c92542c6cc07bd2b7ed2089c2f2b5507ee752f4e8982c322b614ece88836181ad945b65f75102635513682abb23398917cfad45eae65009d5f429b896f973dcfeac151fa20a776a902cadaaec1023a74963d358afa2f4d77cfd21ce396427093ea3d224d71eaef65e10ff9a835081998458cee39f403421380ea5e871277a2ccc3d7e5876d2176152202cb362986408d3bdc303475ccb5c4a320e0c1329a4cf3ca364a2df047dda312969b68d2e66b792e5620af916fab1338480ccee0e0221833524b902921489d7ede3f140aa46581ddada5ba94e099d3dafc97429e9c81879af46866776c8d418b5f26dd93b01536426cff101e13e82fedb24702cb6b239725c90f94e8128ffc3c5d20bdd327bdb352c7575a864bf507a07bff2cf31bdd4e396cc5639763d3b2c9d6ba5c991c76ac502143963a2281d6b2f2c50fbcf0aa6bec309567c8d06efddb2997c008dc30538aad62bb7f4c562099fec83d6c583ab345a8162d38c1c19511bc8598d7c3a461ce81a9b3ab0fb7160b83690bc087c099c5bf58493c18e4229548cb3358ffdf2792b218a7b4b0363a30e35db32b0ba3e353c65dd6d42bc403c75b3c085fe9b61f3164855a4d904a0171c083cda170d709034f2e08ff8925ee538b8714f0162549796928cae60f61d92add157bfdb65295a3b6afac87a37df34c0cddaa34cd6aa7565e6c66fa679d756a13f4f99b615dd00c2c764443d1cf19eca22bd55085bde740b3f0e9ba3b887a3e9305778fae0ee6c946e3409d9de7867ebad0e341f8b033fa3d64f87e6903a7380959823eda7929ea71200a0e91ae3a2276c0b9f86f228fc04e1ba1ee3810fcd043f640bfc907a47e2cf7e3ba6da9ee1e00fd841056fb41c3db219a92db43eea7498cffdfe0b7890f6a2c261f407f1f92a7ee60d1a85d67df5eb3ff7044b6bd873d8f6869060d2a27bbc10998e81815767b9bde04c3f8aae67a1821b934dff00fee82f4c5a4f83c94f1e9848c87bfcb90410e500c64a60acb04a364bd30a9f1e1650288273fa8b6a78cf1459a112421be48d65e3645dba2d1c725bac8a6fd8ae74fae056c96b9c8304d4c93c1193d93f5251ad016ed6294c04b06c4019bb0e07db39b37bc2c561eca114b6c6801afb30b8856f4022e477d2d864dbf204bf9eff7a5cfb0fe42bd78a88e4d4cb357dd176fecb3cbfaece679c131cf2021a0f8a6a5920d8594d0772159363ad32123d3344f9c0a813478668c67e064ab53f8b20c5777eb4d5d1a120fa3d11c2e499d77d658fc7faf8e5ab76b3c30b550095af2084be0b3a3cc25eedda4b4724d8050e33b525bbdb965b4a99529201000761068906ae347b2091249244924812492221d1b9d527481cbc5ae96870c771fc3f07e4fca64139276b31a7c736aeadc518e5ec628c917a8c55e8da49b9c54871b05d2a1989eb689785669d6e4042132335299591656691513367969a1a9b1ba7e254b0b9999165068d2c346afca4744e81e689948c6f529a250a0d953993a5c6a605f72c5466a2dcccc071cf4265264a0b38ee54988952e33d0078162aae3413c5fb00e0545c69268a0d004c4ab3cc5099325900003601aaa4db50923694dc86d20b37dc956e485729499592ab947274a6f314286ad0d47825410d521ebcf7514da35ca49ca8b1c1a19a86a5285585c6c07233c305662d556214d1a86183594b9518452ed8605e8a51e47d2da8a4962a122946510b382a594522c528025554d3b0c4a84269b0a85e98bd70c32588e42092049172749891745cde40f21b48f20652006090b48a27852041b8c6a605181c4b3f4e2bb0da69b194a3936464e45270ab93c98ca450e96456863fda03fb9a01d52816cbed7235f370b11396b788b3077c202561668e00923b71339392514335cd060bc562734329969b9b19346415b93483460d2d355ecb7b1fd534ca45ca891a1b1caa69588a5255680c2c37335c60d6522546118d1a3698b5548951e4820de6a51845ded7824a6aa922916214b580a3925524528c225045350d4b8c2a94068bea85d90b375c82480e2249102947c7470fd24cc7f986df903752dea2334486219c44b7834c416c04b3e98633a843e204b5c15223b708000c31c8a0a5cad26a15830cb28a5c8a4106aab9d4b0b8bca902b5c12283009604806309c70096065083461042269d746661239c4d0f79e3897932a0c446b8bb6b4009a841240df6047ad5d9eb3569121f1d6de1a5a5c946339ed5d4d8dca466d0cca0315397ea4cf6839858d1fc583605d9cbec89d76bd2179190502a8a9358965894a012bc265010952841af0a459dd52762ab5f758ad72b4ad02be855674a80fa45e5a5244829e86516e5f50aa2129404a6040b7a694951825ef3e5030f7169e695e51554673068e2b5d990366c541f0df6dc909a8a474986830d4a453328e88915989282e53a0b2ac1abce941889ad09047482d7eb95e535bbfd32eb009c76d4290d769d95e06524b6eaec04415a12953af31a4485d7a4b2d619245f412f212c963f9c41325631740c32b000260c665054f53c22b6bad76b06dd8b0a2f54ec6301171d28c69e35d801f9d3c57167135deda252b0b1fb25bae20f3108101cd7dd5c9ec2c596b5cb0d36a9b699b8eef482b2303736295bd34432760cb59093584d573ba86135353637a9460204641363064dfff46b068d9969c565990b6f8951b0e10673272efb414c8c975cd5f4e3a4aa9414a399d2a5bafaf3c198f169888b8a609d2c85049aa3d3101b718d4d0b30371d0cb5845a322282a285aefe589ccd051b2caa7a5b416cf5ec88db3d33aa428d9e25b9e13472225851852293a1605e7782c29d3881a590c0d9e8ea110b804e7bcb421c34c3b1d310133100c012dc701a71af2a5ed1091bffbc5e48806c9c18c6b0176e74b20e69d087f852871f472a21aa130f395d5c8271a7114391434fea74835fff52395d3d62753a24379c460d45c7df60566e7f3f115b2d6bd914b76549963fec642858cb1a0a6a0bd45207a5939d0270da31449fc660e8ba2474b2a8eaee49ec9670fb89a0b0dca25f4fe9d906db605b12a7810786ae22d9b093c58f0f763257f5831fbeb7a691512733b2b7e654438d3b8f76649c8656ab550c7d934ac52003cb582b8300bab82569556fb04e266b16946e4d2bd3c801d328c61c37336e64b7c0055504f78a59f8cbddddddb909cb47903ae829ddddddfdcdac46652ce6a06103f6c8cc9c002466e608207de1eeae002577770d28b513cc482cb0d282ed770bc7ca012b2d9a09dd850c5aa5a814a28809b66f7c3263e282383327b325fd44646657c2f2c7f696e9d8a6c7f52fbc802b81c68ddc5e6bb0b9b6c116d81a373746194fd870d5ea5af539c04a9b1bbfc6f466c95c3cf10408eeeededfeeb69bd8e0c3c7c5438b205a7c8162660012330f48ee9d830d6480f902b6bb2523c47a873f48231cb7cbfa17bcf1c3d5ce8d9db77295ab7ac01eb00beb52f0d350aa46b063704e1fae47f7d9be83f92ea9a4140047702510e642f2fc387b2021e78a175d1cb1050fac68d24517b3daa155ac3c33e80113445784187a8115701e0a3b574590128513ffabe0095bc76ae7e792b181604db589115c0cf1a3a465092eac4c10d84bbfb0ddcf5609b1c695ff4d70c2946a908a4c10b82ef1628294c38077dc77c0e204533451c20ab440c225b790d2a40e619b712059feb0959f7af960b34c526600c392496408ec949123478e1c39728c31728c314a8c31c618636cc1932729183cf16405e3031bfeed07fdf9e3627e3fe7e819ceab2c21b0929f06365686cbd40ddddd638c917ea4d122a5ee2e73c318636497b9131943b54c4d0b0ccd0b2d25aa9c09a6e33a39653ef2438d8646bef6309ebe369fd2cc87313f9ffa0dd1d0781107a61ff511c60b83f87fa0c84585a6d73efae2f5f093174a1fcf67c8f5377940fc8bdcedab498295afd1d07cb17e3de453d7b4e7e91fb8088cd6a2e07ef650a70c05eb1ff6dc9e72cad9fdd1ed977255fcd8b97d0a2e0a8046caaa4182adcf5d6ea8fdd643f3d142fa0d7d3f3091cfa46d7a5c79e79cb3870c84452e07b42bc4e389877c1ff61870f2656d1610fbf216060c183060c030996c970bf31c5b09f39cbc9b7b7e6bed2b4f5fc83de705e9d9bc9edba71ab8cbdd38d3fb4cc9499ff91f00b2bd7d209b699ae6d7376d2f63b6376d9f0fd7759fea7e26f5138667dff49d673f5e7e5dfbc937991ee5853d9d8949f7a63f9d764c7965bc906b905556596ba57ffa40912b7f7b1fee431faefc7a907179939f0ff761ddb8f7785cf2372444cdd77c4c4ccd47f33132e4c7f823a93f32433fde974f3d47ff445331bc2334332f5ed8734f5f9fb88fdf79d5eb64bc94abda8bf34d9cece8576f0df9895f7471c5bc1120cd55bfb0be69fbefd38eedeb415f9e14407b68574ab97df5aeaa36e917f2fdbe1681695b834e75cf8d39d7df677ee8c3e5af0719977e185fbad4344dd3b4cf87fefca4b7c0bab30f47c9f1f391f3bdb086b1f2e743bfa1faf3df5bb1bb56c5ef88e31309b702e203a47ebc61911b0efdc084c9f6f5fd994041931b5a29ec1a2276bb081b6797b17043f6d30ef66a903fff034edf47f3af071997fb909f52ed433f3dd5de9fba9ffcf3e1be21214e7f7aed2902620cfca78fa71e54ca558dfa628c218c52180a36ecb92fa7eff42f27fb2f8f3abdf83c7dbf4d790bf5bd7cd655de3ad9106f8c39456eabfbb8795626e5c9d0efa64117589b1be8f3d37ae34c7e7fbdc26dbfd5d40f8bc46e1824ce6ece8ddafb6c1ffa703f9fd8e50ecd3c08bebcbcbcbcbc7c355b121b3f7cd0477eaed270c809f993925fde98eff331fdf69aef905ed8757ffa9679991b70aefd981f52c415239f8b3a13e65f1ef5f1c403c6c33cf7e2c1f05ee67df1402f07c6b35fa4ffe2857fe5c7d905e2b37d78fa988fb77e3cf5c47c317fa4882be63b42f332a7cf677bf92e3dd3775daedc3c9a990f48862be61322e6636257fb5cf08c70171713f9313d3f29973fe68bae8a4cb8fc0c05dbef9f4c4ccccb44fe2331317544e68fc4c87c2998ee8eb8e82dbec1c9b13231861bad4cea46193dab0bc4c7f461fd1efc0ec98f7733e23fa488cb5f7a22f090fbeafb69470f09d8a5bde64686fcd0a508554ca18b2c78d1c5e57fa488cbbf23f4b5eff3317dfded79dce4e10ccda7de0fec3212bbb88064b8e62784bf747f79c4bf212618c4a00745b0a0084b1072c93fe27fe44bcd1f664f24aefc2353ce775505ad1442fb2354fb28937ef9853837320cc3742de594feb8a4e4f647e661c59406e39545bce515ee8dd0d762a41f2ffd6e4a3f7af28b9152d95fc76c05ee62b76dd8d6a4e4a45182ce481977e22d7722bb0ef3201722326a222e9d22c8a8594e4404a7882c4f12c1a64436f424971f368b28220631b84a2871fb6511453811d28920e2b20779ab85a8f6b29984e8c76d69d6cceda744d6a95326a244aee2af4272d2192d92398911512321a29813192da2336a747d52a794cee9f47320130c910d821d5921148c0641b0a36a8966ca9bf2cfaa792e3435396590d4a6fc38b511c13aa29883fd999f5ed12d6a4483620eede56b4049b417922df467894b123da246dee2b8fcd0a30e094d4a429794d02d4968af25400ea344967eb811715b1aec0d0573e6469a4b6960698c5b3b0f72159b2a0c8c980625373843539e3aed983178323579298fa6b3ddda882655c286f68562380cb611a1c086d665cc04ba8a7f237255fbf6d41be2dee419e1e1f5da88bce5302298374e0d8d4b3d4b031bde105dceb9a3cfef3bbff002577e269bbb795546d7b0ec96c3822ea5817558177b410b6e1bc2863d938981016351ab971b7f1bc2f6ac59a74d4e09410f56878b3892fea95f3677238143bf00b4b6aabbae4167cb9e468f704fdd342be660af6b294db21a986493e9173416bbdf2715114c4ecb8c3c64e6b1a75f442070e0a72cd5f23bd371789e1b91923d7fc9510789d4cde3bcc691a75083c68c1b9b1a19a9183433323130602ceae5d471a6ad6a2de09af3d8c603bb048ade98042448893a0c34c302ae88220b2e7ea0e8e20a46520f5802952a30418425495170cd2d4a480112358acfe99d94b19d0492bd658c51566719639c32059c2bb9922bb9922bb992073d5c93ac6af5f52ac11552eb17a38e875a426dd160e55ab57a74059699aaf1cc0c8b51b342d4d2d14c52b342149799293333f551589ac5c30a2bac2d9a6532714159411d352b7ee1d3475dd1acf901e19ff30895d4acfe706890c7dbf1560dd2e9e1a8f5f217f22ce60012bfde391f051475682ac98633a928c4d38e9412b7cb49b56e7ae134bad4041475e85f9351cc2173e99b8e620ea29883bbf4b92528a09823c6a53fbded0a6b028a39682e9589451dfa73c9cecc2ee7c26d9b1e370c629281f4a480c9452fa7c19edd7106c625a9e3cc59ed4429392b1c3b3cde92a76984b5a961c65dbab57ebcd555f57778b8c9a8416ab2d2e02784246b22a7ef88989efbd33763e42afadd77f2617a6e1a79333357d1df5e97becdb6d5b72ffb23bbf42d50cc2ed1adb96491342b3e994228bcb9a17d095ddab3299870434b7469279bc28a1bda2697861676e96f55f378543163853b26a31fcd0a6766973e9d463e9ac54f8edc305af9b961bce2522337bcb9f24d9eff8ec9c86465663663348d407ffa94be9569567fcdcc9371feb2a90da5b3bbbbbbbbbbe9dce98e1fceefe0af3ce0a885ddd98922c6a2b9dc82813d8128356567e9c9138a6e188f9e5861e286110b8b67908ee372c8ba1ce3f2e3e019fc716ece66857d19112fb8bd73d9360b7504a574d219ed90a661c144144aae8c1b9988e275395434bd9a9b9bfbab75f1c753e5edc8eeac1afc70652b0bac7f43363e505dba74e9e29a1e9120e6d31fa23dfd6c1c40bf7efd88689f7526d1c5a79e195db549613fe555e84cd6435926a3b22e8216a17d6e51849883a30e1fc179106b81ade2254950253d92ce1ad830ce90c0bc355fe31d701667741261c3380ba92ca95bc20192796bbe3f2df2e9cd648e40615566259604455674b4b40517293327cd0a2950acc9124437ac4ea20e8e6cd5550beee8a04126258322d355994c8aacb35da5b08a026e294ea170c26651129368cae6ac5953a695b9643305352b9c49b79334ab95c0684c2150c6fa2b1c3abacd34bda3adee9b424b344d5659a3c645562b63ffeb16b5ab5bfce3fce7fc0d382ea7417f305e4eb3d1341e1a9a159f64f173fd7918d22d976181e5fa47776b43b3ecf523f94ae2a758164dae46e56a0747b33a88eb1f431dd7b9bd1841c669d07fa8fedfccf865e2b637719ca9ad209484f37858b1793caa903263bd1a88fb848aa3cb69dd69c7b41526f5f581989efbd0f4dd733798bec8357d365cbcb19bc2ccb7d93e329102d9353d0e36db5743dfeda771244173fb7b7ee8d0ad9feeca96db1fa45b718bd8ebf502c2d5afa359f1491557dc7e9ecd345b767eba893afc3a9ee3bea1eeb4c3d4a6eeabaed2fa8780ded5fd6cd377385ad5dfa637d595cce54d085c5c8a5330c01890c2edcf406cc925dc307a0182a88a3a7d25e946266e7c7245e8f2d0840db9a888a5348b8706fb4ad0959c844ca33f281061f077edeb8182e9fac73d5167053664a0da44c65353bfe2d8084d665bac80d32acee9816790da5386e1f1d66a47c6e37d0c033ff55a498c3aa142cda249749325dafbe7e02dfafe3e78cb6e79afbd9b5aada5da03456bdd418e0ad125cd92ef94284a2a7bb901a7dd50be40b1f5b6606eb4a1fa6fb1056e3da28e83de3a00abe8171a408a6ba313e1aa4b1237b471e99ae051dd174686d7a71dcda72a36766f31830f9c209262064d381105774162e40a23a86e7c724590143ba8f59389514a29d9dd9d39c6984ad55aa710cccc412ebff32767bbcfa0f4328a04322333db7dab1440e239a9698b338a192790ebb3dd617ab5e22ab93969cc2195ac48a0c40d7f077613ea2ca440e286bf849d373e9122e886d6b1b07de313295a70c1a11bbe1426b8f58914405cf74fada2508ae20a13b89414950a194968205246bda45ef92272298210164b9a0c01450b177ff11264e3478d8b93111c141abcae10bfd146752abad955412d9dce4e7077777e776e777777e73e727777776e2a70dcdd9ddf9de71429777777e7ae42c6ddd99bddddddb9fbddb98968c439210841d1c8273f153356678c5a1a858c94b1128f4cf1888a09e32420fd4c1815d557dd9d4a0971217e059ca0958e4a7785c62653f1a31d7181fdc8344b888c3279650746124a58c10e0ece9294322062890a21937bfcebf51232a358cdd880ca0d563aa40e2bbc45c28e20046fa16233a2274fe14e5e845907eebfa686098fcfa7af36e856a01edd1ef5268f72dc695e18c6bc946f250d510fe3397f9897f1097db8a8a7afa15ea37ea95fadaf3633f3cdf9f2659edae7f197973bbc0b8cf791b4bef6305ec60b63be20fe30e47f00084761d02f3e8614f131a4082ba1566b53a97f10ac111492f47afdc49640a2e4052444d4645604f47abd5e1f035fa723581f8634abbf200d7a4bfb7248d261e523ca56332c702758906a6d6a158f24117ff9d538bfe8fae6e696e294d24967d5fe06b6f1bfb1735285306b9c33bc300cfca1e9c6f8cd21eb2f3c83fdd91f1ba435c4209de965f99bfb0a5cc48995db0b6d8d3a3c9586c8ca7c34abe3f6d12c0f7cd5566b1423339b5060c3da813939150736bcd9b6f04d1cc75c57db64922693b7894d91e685ff8f781c1111c1c6d8831ba26637a264377e354c5894ec46a1c3ca2d121694c46a07273a605980a63df1628a4c0af7394798d0ddee1b7051001cca43fecbe07d1cf9c48b2c6e6857b4e7a494524dd368fc3c20effc640fa1c6679ec09413acab9d2f8c73ce8fbf7e321442e9953e84c7f9cbf48b1ef89aa669524a7f49a7d49ab8fcb1b3904bf0ffcb1fcff97d83208ec77f0f6cf0793a7668b9284a21cbbfc2b1b39a810d573b2b1c1d6347284020c902375960e3c718c8ff9745b07427ecc6af40b0139673df5bece20739f69206eca07350f472c5fe7ab4df5ebe5eaea8c3ebf5135b02899217901051131e643e1409e1ca43964ac18631698720cdea4f020d7aab7e36f868909f861adc70f5334904c6418302e4bb6b4f8f04dcdddddddddddddddddd1bf4df61bb1dff86b4f7d7d1acfe721cc7ca085d816b88d5a86a1cfac4a35e1f1fae7ff45ec974403142851ae06810890472e81f5650fbe80a58f9e14ef7ce0e7f39600a4746e80a1cfdfee872293d46da1f0d1c81c8229780456ce2e0971e51fa4307989220b3c86507667e3a7320f261a53982fe5c8465f4971ed29e67b59239e77c91035e41ff48aab456ad6af487b77890ddb65d915ab8f811c7eb38253333333333f34f1979887ef12b4c073b4009e205a828704f3a67cfa6be8365bfdc1c9a154ac0e3cbc9979ef21bd25c3b71551c217bd8ae41a6d2a4566b53a97f10e4f87ab942f00e21e4faf8abd8a33dff34c8408cc409144e4214a3535623d9d99ab29f025a315075c2863cbb3cd39e9fa70cf97670956f11a2033ff1e28b1b6553c4568d7523001078d201b4e3aa1fa26e015aba4bafb3ae92dfd0f69c9ffc296defee5a6bbf0c692b0d6c8fc755f2d9c3b101c8e2e0cc1868a9548ae2a0dfeac8f4f5e9a65e466c5120aafa3b95baf141ffc70bd00d5f80aee7d0b36a198f8ee477145361eada5aad4da5fe79899df3060de9cea7f4fb1175a6607d5eae7ae18a7a61cfa59ef6d50eb2baf3b35e8588f473ef1e11263efab98f887f7415c73903712f4a2c37699d0ca39e8de0dc9ea7679d73d65a67736ec4fefcd4d7fec7d4c3c91c5c25dfe4fdd83c1e6a927c930cec7fa906a5abbd6713b5ca671e842c19c23e30075dd6e8fce144079642fa00f6062de9caaf63fe86eaf34b80bf7ef62f5bede37982fdab4387ecbd50e286f1a855bf94abba8231c7e9f6e74c1a6cf8781aecd996c5d6df9eb5fe9a9a24d8f9e14a6bf074c12796f6dc15fb873d37c8eaca546a26d1de0eaa850d772ef798b77fdefe3afe5594bdab7ad1b579d1c5aecdab9e6b37ef4f488f2e8ebb172520882d99a8e2ffe11359f3e5cba7406c6d2f6fbcb8326498679f3b056129f023e688577e0e31878c2bdfe4c598929bf7ae92fd32b43d4f6fdf9022ae94abe4ca5552ca77cf065749793a6243ce41460232fe38d28bb8d85fdf01fcda47647b261253ef2aff4efd0fff1dfaf97df0378449fc7cf0d76fc8f65c7f087f7f36b188ab6e4a567e36f185f8a87f795a3e91fefa4498d0cf87f6fc44aa4dfc6ce6b780fefa3efaebe7835f7b22dab7da926cff4ab6a4828bdef296ce64074fa0a8c3ae22fc833707c1459c501392f1708c8d78bcc54e3cd6ddb1c811b6bdc9412cc446b0502361438e15358b47d61375fc5968013c4fc8e0fae73c4d6cc8315ad4cd62b1548cc562312636e49896a45b8c4403e2244aae03512edd12d22ae7f2e3ddcc6fe8110e4dca59c2b14513ea8cc08d4383919b3673ea10a3078931ee1063fcd9cc443ee20ef9d13044bf95abe249c747b0599fd3acbf310823956354e0b48f3861cdacb32930c6c87cb99eddd18a580c5db2022665563c7911b202a9e3b4723493fa5443cdf529c08d5107b5341f85a56777742106852d1de7cccccc8c2708988eaaab60b8f1432d35c8c363b4af577b451d7e1496195838f102e8cee72357d1675795da0902a6a3a25beb4f8e23bf50bdf08597ac21ab21f39957d4d1c299d7d5d8f412069cf5a8f46c5a4952ead48c040040001316000018100a864342a15816c6a11cfc14000d708e4468583815c6023992e4300aa2208a210619030c018618834c110d9500a4f521d19d574a986d0054dbacdfca10dad604ffb644cecb907f04c87a0df533898974be16030523efe95f439eb1a000413829fc4ac4036c9b86151cc8d60edc4e5a9b9d8ded5b73f147237e7583d3082a608434b2a5cf49fa315f69cd16304c5c6d74bdce2a799c9ec68c913667d91e3ab21d097c3b85976d5fd5865de98f42249ff4046cc36339ad90fdc18ce59dd16230e59fd91444f501c347307bf3dc410d34c001d537d828cef9c402373c0c0dca981285fbee996b5f52e6a9e1a12980c52e2a4266c143efffd278a89dd096a1e1541af47d88cfc47a1f30e378d9ee99bf69c4cfef4ead4299d1237e62886e1b6d99acad2b80cf614614855c98441bae482462485ba51cc161d5442be1efa015908894e4982358c689fe26488cda1ca72e0473c41b7cb04cdad332cce53c7030e432c54419dacf7d64ae22e3a68dca98a5f264c73ccf9ac6fa5452321751b5915963924d2914901e85189cdba91878d8006dc7a89267cace6f84aa183ef9f3fa982b149e13cfcd2e60c6078584ad9c938e6d8ea95126af7c521ea89f58d238e36af1bc05af37c90d32a4cf35080dd381eb9aabb5c7de02f0bda03474389e30b6c020cc3c2ce3ca259667c29425969543dd62c887a7fb8d87dd4f44f60a8dfc740e919c1102a8e753240e48d647f55be15072e9edce82126fb04d778b0857079faad92ed9ac27b68742efaaaa0d3d0244c469efb2160409106f51136a3e7a783cb7918c6485a2781be6b1bed8e4ae020c0f213d554728a7b050a12d5f241b160c657c8a98963012a0f8328c4c5d7fffd53a1dd0b22251bf90bc6f30277b162ecc3b2684edbb952dba5b0d72aeef4ee956a2ddb089910e3f6b660dc3bb9ca2263fc50479f5a2dd91be20e25fc779ae25100f22c05df75f387c22de7617a157269fd386e2c9b2608bb7092c0c5efa79a38369e833c48ad72d0e650f06267483dff590c2d37193a84694a2396f99ce3e3a9f5bf1558a8c3616784ce298e507c9e441636d5d2a19941bbae497601a382fabf82074ca0c190261c963775ac54f07242ea27f2b442d6006417415035625025dc8a4f10e940138ae1dbda3e9bb51c325e6066bd1133902d48f84aac634e4ba8f1f582b3bd8f495c76dfbf3df95aff9c1c7397f7d68b9def28bfd5a90afc986bc0844a50de2433ec3bf0d36da2e5525ebd43bf7381acf1ecfd6561625efc0460ee846ada578c3192e3d22ca0715ea9e8e4091211349a8b69a203ee72e45136c2ab813657326dcf44c24934905c235c41270a603aca9c25a735852907c13296f479f1a9f84a34c33b697a6bf253b71f7c39ea8c3a8ad95499dd9cb97d9c183e51fc80d89b70fb358eaddd9366c55a6f03e0f3bb2a4f0f8e0c49e8c51e59661cd24aaa92421b3ff36873640e5180ff5c78c10599036a6060ff9fd1691c0aac8f9c6036e2416e22f0e86529300c435c0fb9a9336278d833b94d0cf032c2de1fb597278d52e0d838edb0d701e38066c8775cc44f91c2e1357369dbaf648ae117567565040fd22a5585b48a2a717b6dc4531ab654b11b27d1d76d0e28f96f6c28ecbcd850bed31cda584673b45840ae8a3e9575b9aab45d3eca960380dd857349ca7ef75400dfadf742477222d39e67a97bc631600eb1efc26821fe519d5fbdf3137e419213d45d573bf5bb51709605627d38b32df13ac01d2aa91d4b6c83285e25892d277fa058b3415fb1fabea47183c70773f68b9e1f4dce1b42d5a6db264dc03e4b61327d71a95df354f2742eec6cd48fa04aa2b94c4a92c18aa88ca81956a103f4e71430dae5d049d407e4704b4e72973d1a2f3c7d892ed46e8bea35dee3983e2da8ce5d15c2bdc50bc108d3b3a5e5c328343f42fbcb0918962cf9d5de702accb6f1756ab30ccc29bc800825a75469ff14a163815aa4e999f5f9eeddc6dd7b6b05b8265e0e4e662f76c63eddc26f66a7e0295ee14bd90b04357210078212c4ad21a69b7891b5ac25a0905077112607a91471fc5cc3506b6feb7e6c9bcf202804d5b99c8d30f27e1934de7f3ad9922cc91cd4b59614c53f1232ea23308816b8a2d2dd38f177a1a675d43131d70d86df04b14cec2abc2e673f683402e7a56a21deda09257813458cb35169798355ac5365e9ac03a8c7e167730da80b646b728cba9d2bc57a1b1b18146a28eac5a1ffcbca3a06dd26f429b7b4f841ae056269ce8264b476d30a5ff6a48349747b990a1a5178588d8195031240ded2e89e22915c67f49fdf0a95161f3819c92cae2bd0b59c4a246c715439cb9e9080b4f3cc354356977ac8abaa79e0ae99ebc0bc038d91cc8e4c2bd1556527a8b1367fa6d9e7759a9c92cb8827d54caf427092aa267c5664a12f8958400ca72852ec5a876f37b32855f27340fbd593bc984555ae9cddc9d75363b37f4592eef9728079ad8452f73b048ccc1acfcbeae59984b0a27636c2ed4568cf30e3401df40e232e1c59d859029e67cbdf3d73d03c59cb1c1a8f4e8a1084d815a899e57b621047490abc2dc989d14e34154f6c94f84b5e63dd1e314045ff94928985b04c6164a0179800923d4a8a2db3368d80d3f41ba49fa102c473752950f4cfb5279588e17c0c4ff5e813f976496bd9ff5eb5cf81c7179fb7e3a9f8ff98acecc888817d0abb28514c2f741271b275e1d307e6f47068371121b189b8334f06d52dde010e08ea37c67a7429b27559e836c1c6bd2731f302870f50b52c8368b4c4b3917fc69c4a72decb32b670582e6e73fb75efd0175953fbb0c4d9ee6ee50d862e3aab7ba8f5a92bfa2a44fe5ab5ea9d8e1b477e54a8b9771ff740e1458d581da6b8a09d731a24f100074a58ba91e7d2c38eb9695bab70ca7340c4687124d5bae8e4a82e8eb6a0423bedb4890be1da210755f0094b000cc85dd4e7e1ae0aa336cb4839ff95f176f4c67549641f481f8d8a40701d524d3da168ec2cf429d8514d33662932b8c59b7811ca4d9073724a6b5af68d77b78996d8e5a5018dfc1b9fa35f726b8ed62e361384bef83f8a3255b7ebfa2b10e13b9718432f00380129646b0a94beac416fb979de0c65eb4776befc3b57c533f9611ed26014fa8c7bc1708c3b71f41b8c3e2c2d3e687c2b25ccffb8b50f3a54efbb0334091764cff6f881dabf8c4415a00ccd76e37ae878cc75b66f55f27da5f1bd04561ed8d02e16104f3a723803e43a27a76b8580b6782f92da96b051682a16eb0c9884639963682fea262bf77ddfda64e6e4c87c5e9269e9c504f25e0975e4ac86b44f35f0cf6157182a079be104a1db6a2a3b8816099970439578fa5824fbf9646829264221bac1cd40c4493628a1b0f2dc863c7456f0534b1ca54675e83b16660035fadf8f9507e4b14575bb1e345b857a70f13addfa253ac1b4d47117969ba4052b245a4d9d1535b344766dac1d33b6c432b49ed26db88834e6865ce62e2c29610daebe45c9466c9158851a271033760255c7ffa9c6c2258feb40c7bdd243611fde03a78eb73d1a24f03d1bb8eb44503398f7dfbf741e9e5192268e76ca1071da5cb9052d3c372d2a75cac02bfbbc23d342db082cdc3b927157e7b1e2fe05210a0a66b92fa235f9af3bbdd554446bd379a2179650421398536cd0cc8de5d9bc2c2b63ada485e9a64802f1f35a7112686b46267a7a616eb1e1354add93f5cd4e311033da665c43d452471e9d70e975c16be330529f7c0c60e99176ce2d3f55ac3138932a0971fe84b8eb82348a40ca40a62d25b560234da595d66dbaad08e05eb23d3d9dbc8d03d8833c12a55ef8c29ecb6f85ef7c7f83be49ff5d922658790c05bd12ff8c62adfabbb281833d8e5f0b0fd5c0fcb7b3b26c8a09768fafb20200b1a0df1159c9740746762484873fd0554019b9185e42a237bdd27d6a3e44343ffb79a03026ccf04b38d631c4590b686824fbb321f1c6c92446c5a52aacd597b19d8d42155a7aaba08383eba01fd7eb3431fd1759f65f1e8fdd96bc96d02fd61d9d1c8c6a094c5ea9f527228712673b65c0585c590c7049534bba132c1cab91754f86b5ad0b5ac0cbe73b2922828ad279762418a94029897fb68ed05b202b968097a954a9cb06291625849de81b7f9a070d81ec31174c697f41dd878538c0c8267340a6457bca39e0a8e48ff2bcdba2f8f209499c3b5e82bbcd3ccd5d2b02ef27f8228eac0eab3386a12ffb0b80a276b9201a061e78874d941d1c8d62ff1a02a2df616a861f59da12b4c58af0480c2cb35b8cf7c1a2e53a6788a758bd4213092301941d9308f5f623cfc6033cb3b17a8bb6f7460f762d23f72c5c5f7bcba7a35101ba106024dd64aebc91e2c32c512bd2f0aaeb67d9546e31e93477c429ae44d48c9a44e90f59c7f25ad8cf0ad2eda71104f1e0276f7c1b4cbdb5c84ae6fdd4e734958b45632dbb388581ad2df35472b3ae0eb3ea89d50fb7e77e117370980fc3990902b49cc6e814eae9f47262d23ea920f95a66f38f59b69744db3b4682ef6ba1630fe03dcfc9121f053cbdebe74d6ac428d786549c5c8e4ea6732b9a977fa959a336d480bbe956c637112790bb0c3e3aac3f0ab97862c7c51c04e5f80a5e61fa78c8cdf68985fade4dc28acb879caf84e75c3db19decc5a1cf9e799cbe4f33862381d40253d68e7fb6230eddd4df6feb49ffb9633c5c1281967d65305d78e8b7547eb41f05d9f36a635ed2b1dd69d98d70b10e8196cc62e276bbf5203c742a38c15161670bd65482f45990d915db5bc9d02473283487fce236c07efa931035e5f079b3938b06386982d708f2b85a0d94f8255323c12f76c1a53ca85589833043fb77e00c87648ef5f15a8e0193d4ab9b1425bfc3fecbd591648542107623f3aaf7706797ca203d1f2ce020066bed84672f3d9a65825f20062759709909edba28b911b28c5f7b12987ac0e77718d4dd059fa75daedb8fedec68359799be4237524238569fdaca697d11250a8e07752770b16deef88bff35a5c1d346df3917c696485fa2085f4391395aa18f251957a3881114f5dd960d45cf11959074dc2ba96ab3ae0acac12488b7d36c110ced67a9cbb6391c4d218ffa5b62c400032a37138818dfd4236b6bafdfafde4a3e867a66ba673015163037a1bfd3140c05e7a508017d34f916b81e100d320402161f71f02e1b9639560d26dbbb9395a6d64e0c076f051c22f20ab98e5011bb65a6fb08ca7e1c4d6e9749e831f35bb43c486a78eb9050046998747498e32710f432eb0bb2c338a2082334000dca9a548cd86c4b5260b3f665363fd6487d097234b02ac0796728f35f3d21216f9deb62ae2b5b46cceaa2f88d04ea55cbc09d0fe93b7f3d488eee501bff791e9977ecc17b3ce9eb037c9b2c30b272623b4624886b77b0db334cd39d2a3d01f3c06380813fbe916ec9bb91647a6293e902c94254f01d439ad3b50ebdbdc1b025ecff3583d963b9cc54b5a2747e73e37df3fbc2121b75cbb022bce7bfc6976bfeb5a2f77d8604e76100e1e02b4debf052f13e2e775c2f213c1a4a9189a53ce71c3f823e87bf602db727201439e421df2c18ee98875a4632810dadaaaae8dd1a26d0c2178e84c98017d6d0b1c3a583a98a8cf9ed275cdc345371235fade8bd641072dbb019e022406241416f1baaef18b5c8e8ac4118a1ce928e861fc9a605a203e3235981a4bb41195d880272ef5a45b6d13cf05de5a26cb714c274d647648248a604b9fad521b376f8e10a78b47dabde3e3d94d886e193f42579de4324f4083f810e32dc37f0fe2deb0cb0ae103192e02e0e421b886396cd3b187867d57c4f1b34983ece8029a5012226df3422a3796dc8898ff442cfd6eb6e0a4433fe534b986c3bef8489e1f5eee49c128b275b09fd9c540ad1ce6af58a700e681a2a0d6f3d493d994d23fca234cbee14cbd5465f2dac15194da084e17e880f4f4ca084fc5d3730db733649ec6968df0b32e203dcad5a310fe33b5d2bd9dbee02350f9457c8d9ba6e5bf03246ae193c691c74a3bb6bfbf3ab759c7fe762c6a9c9484e70fb8f769f19ccf7d22c48cabb379b03a3558e8ac1dc560e6007435e0e18ec7c830c233906a592118b718172acc82bfcfb8617cbad21ba717701653b03a73f84898afb12e4f5ba8e1b7e85edf0029fab1726e21a734bbe9d34f9c86b7f40fb6375b08c63f8be6891e94574d88c5cb0cb02087908dfbcd0858cf1b8ccb013ae92cdbf979a55cbc014bfd2e59d63a4a2129fd45e6de78f987cb2510fb9ee69a32b0323dc7c361a3e9714ffda74f1e47ccc71db018ce1a40e3c9878e32da8159ee7576a2cc34e3823d70ec8421ba7585636887c966049a7a0964e8951f4dd540e692e8723c7498e376838c86c17f63e47f4bdf6961cc36cb0b232a22c8d3ba0a148a374b7e5987c38522437a73c58214a3d842c749c3e8d5bdf7fdf9ac8349114cd4177ce058a9857b356e361a9a91d1b256adf59da3bfa1168ef4ea2b0267cffcbcb4dd3f122218211812ba546f2a7b69bb9d163861884fb799258e3d6259b04795c73a33e6b780849ff0722beea81cc2b25ca3e8da558a1033b19bd65483fd8c0acb7fb2d38527258f09167b8dae9e841fa1f0ebd0d0e2338b9a31ca74a01f2791a8e61508f3b24d7e5d192e7ecc4253d41a3a994a0344efbab53aea3fbfeb2473985d86d5664b01d52116c9b6a36d4caf796974deb65e321e1b8e4527737858ddd277af69ac5222e9c51b4a03add055b012822bcf866232b71196329b3b69370ed9b043199b7f2742967a3541389ce50a177b274169fcc98d746370e031da9557fa7ac6e122d4d7ff04b95a92988ab820e270d99ac89256766dadc3b7000fb7d5a47f43ba8a2a34c44bb9916bd914c80e8856407c4a73c07356d0afa732b150f6c52dfad00c70751fb5951fd69a4cd53711c5727e64e7f6b8feefd504b56a5495f489dd5ee61aecc48a39da72bc26732cecd794079344e9f4bc7f79f95a51dbaee144f03d90786dbc905328059d0df092fa0ef2d4dcec57397aa3bc491406ea42962c81cb01b8780b29b0d2bacc0002b0bd5aad0c0333caf2230e0dc7c75bed38e46f46446606dd0f76ada5388415dc99b9e55db565b01d40585ffcb979e26a91012dcbb2d8438663d7d3e056923b41293e20e658bcab87a316c466852b263fabcb46376b715a47c6357596481e6ad89d748007c257a24437a8574561ba5b8b59b1ff75bdc2430f8660254dbf2b290a7706859dc2d18599b1023139bf067f45609db464eb98670ad4233c1fb3572c38f14b3e47415b3d3bcf22a6f4a48ae4ce6334b71eeb27f65bccfd23d15ddae75af5619a79963bda545fe5632dc4fd412eaab9a8375ddc1f393af65e74aa7bab0345e003ba69c304c62e578d7f3561c360a3a95950b07df4eddb5da817bf1db1eacf2e288d1fdebec2f4d9f3c05a4fa72b690f02cf57293a60d0fe3972c586ff96c018ab585aecf14e9419599a8f4c589f7bee747629863639f4578c070e7277e00b6e4e0dbda6bafa8cb5cc0d942ebbdaf9484d76cd53932ebe7bcbdd17b5b2f116a134fa9a2b9ff3817f0c6462e5512a987bc0ecca46a915bb1184af2b9852acc9567971862fa6d2344a49a8854c65cfb70f8907aa58353638f7d249720e999cc0239cb729d0c0e52c8a9cdbc5b3489ac690441d5f82dbfc15f43585a57a464cf074a059192b11dcb13ee6082eeb6f8e52ac7ced71916f016fa50f28a2dd594e0cb681c0d70ab54f2e4cb387d26ac3d5c99062febdb17c9c7e6a94603d7af49f9c8ed3e118ecb03af68590c0004e1e461ca09ea2ffc4411a2f9bc56c60b00afa4f1adb9bba35b84032f3596f5639a3468709041835ca03702ed5e7f64f9ca6c22cb34c28f23340616c6964693a8b84da451838c12a3175805800ceb679389c1fe718acbc7c562b848eab0bca3e5d05eaf6dcf047f4248ccc9a13f70c13f70249002ea3b5736945bf105f64752172af0d70cb58a67fc848c4ca7cce4de321d1d4d4f228d8fca476d44b4d4ac265a86f8c53791c03e5f34c6a8d23a6c31b88493cdb654dbdcee6601baf36538e661597ad921c611a01f5d6edfe8539cac277e4086d21338acc2b096045cd1dafb437ad6e01d14c4b6f0875253d5afe78fdc94b62bf4af35c99080c25641a48a93c63f0e30b96ee4078eed5b2eb7627b2a38129a9288d4318bfd55700269ebea10d19c272a2377c6aa25271d8abe5159a1abe4bd6c4718c30626706a917271af345c478aae64c4c98c518f14e6e212cd94f9d4db96d462e40ceaf5a7c1a8fc4a9d542c07d62407988e2eff4ea986e78857b22cd41cfca7ea50980ba063ffe916ffe324b6662040bb59b0614710419c070815563a11931688c8763b0714b41fea3dadbe2d88979fb43209803b70937fce72af0333380cb831a66b713c5f26cbf7ac6c7a76237af32bed3e3d9172737bfa13894f24c13e3f0b9e95b26509fe0fbd36dd4a303b2d24b100c12c4860e40cc24d09e0901a6e915a66d3cdd464bbb4a689b8805cd70a33cfc222945f4a659a19ac58553bb8ae9449800195fcff87881a367ba16288384dcdb2228cc2872ffed253522f6acec2118071ae01e10edaf5581eb34c9fbc65973dfc4529842c11eb97dc4ef121bd78b0f0894d5e39bae0780812c02fabc4e864c5c07f051cce74862423555f56ad3e1d8f4489860630aa2a63a89f238ec4528ef97cf12142877e593c453a768a99ba0c69c9413d356dc24e13051c70103134c30ecb877f81bfb963094c54de9026047915f7a9787a02dc7e62a83b20d002c2350214790856464b16c28a88eeca7d0c25083e5e7896c28e820b0c09f32733edeb7dfda9337c83c7ccacd91568015b400203818bc9185d73b46b3f786431e3826ead34e45c83ca0a1ff57e5c9701f60e47c574b0f0b235114a8cde9d449d93caf20af972c904f3edb0254ddd484d082ef9f9bdc545aa45c651825689c7dd2e87834cd755cbd664bfc1a48d76ecbd3c041a004cd19202b0dbb2bde13504d1c3d5f89cddb5e0770c51d9ce0e81ff48e943d324f33a2a60916e348b4ed3b14507313d45c74613175fc78aec7eb67b869b9612ab713393afbe2022bf9f1988dbbb952230b7aa08539642a9968462310925d911ac9a7282b13690c264e0a953be040b0eec310d93d45b1733836b689830df54e9d3687e1cd903d66897750efad33853c691f0e1d2e226c49c999051d4c47cd2e7245494e03f0e6e883f689f070d126dab198d40bccd8bfc1888c92e5ca024db083e7c2524d7904f8657db3ea2019c4dc08c8a1b94359427dd867caa5cc33e1d650fe62359cc8c19dd1002c522e0f452db4a0592b1fa57670cb88b1ecd6c4924e4fb349b093d1fdc0d25616363094a4b2b38eb87bb4289db9ac24686f71e8dc76519888a6648a69cc548479dac66b2e9c565a51d3e78259fcb0c0204c1738012b30122f4f38f59948a8340a538b4b436dc7435e868f3b3338d3f52d87fe39064738e0a29520da84d181ec5f2876d251b57c3e69373425aea784f1e6c9d8eeff3678048b2b9f138dcdca23ae7de550d83242f58b9aeb5fc43c8d7417d9bb58462d2ca832103e1e5fca51d3e908802773e6460db9b84d15f126caa06a1246920fbc326731efe0d828c07d54832592a1daa5ce1d3d84f8ee010dd131141a6aefba87374d79a7870d2e7579daf93910e1479c58c26bb0e226ba3a17994209c2023230a1e791ecb29fe64b5c616c71102e819a9510cd7789cc14708352b3157eb307dea7d72ad86354991e8f825340f9c9ac051a20b80cad231bfb6801feb3b846b7ca08e0208a69b4f041dd985e511447d56d617a26893fea74040872ef7d19405b01f357b752fe56c37c11a820886f2f2131db939894035084c710f7a82665752f867d39bebf50e57f63eecfef00101a025a7bab5e64026b5d6a4f0c81240197074ecc126597752ddc7987efe0a19b07840612a109f8c36c02d1a9368f098cddf0dd0e35208636606fe360ded006c41c1c364f6ecd85f5d85be361c51a297c64d4cccef84833e8c8f0222916f0643e2206cd02d20140c4b3b50899caf9581d73b900977bd66879a31c711bd2c6ce6e3c3abf541bf6a701ad6dfd00b23a6374e57b5f9e9f2cb16a1002b69827842ecb502909e1cb10fdb44e6c7d29f9e97b3ff319318e78a87980c4528c5d2a0852906f8357a8fdc378394d13832dce7167be032043791cfb86c446edc2f9382dc08ca68f59c5d304da6ddafca8bc2cae5d4b10fea13c640877a9f8a06b98543432c416b0f3888fc84e172e52f0db6c5404810016d341576809700021aff4944857ca947160dd986bb7f6972a2a12dc1b7055a8049e1671cf23a68107dbe9b70043d25b3dfef00e4a24f7fa736b33c86550d87269094948c32a78f12c32655feaff8508a0e0035712d348a838bd9fa42949c5b78c7ed5d19e78178df9a2a473c3a1fa9eb8344354321751393a1328c6f4a7c5763a4cf24aadf305009ba2d833f9ce21ae5cad2469afdf8679ae2b93e0ab01db1164048903db5b424bd69ce0ffef175d93e32c70fe132d74cafc31687d72ccc74c31d5f7373a3c1bb68ef340c540b092539d99fbf98d1b607199e8f71006f6e628293d39c9d9dd11dabb63e160bb6696ab83225aa587c05268aa9a4c3ee8d3cca0dde02bb8417c99c5af078b9829d0e9877c3b79de44698f9de689f204942a877d14c12f5b017be7ca96a1e1e654bcbd4e7dfbf817967b370a17906f73085302c4b3380093a052a75f5d3ed93d91509189e56239cf3b674071b276a2f6ea4c25c8fb1116e5b190e0251d998071a5c50efb464af3fea3b40f0d58790dd1a7ffa2b6692f75991629e2a40b8f0419073c97b7e1af38974e7f13685df5675b21a91b87ccc236fd91a23556430f1f197864af5a3ef04d90fd5a0dc1a3243073b0c310c8d9d53e883dcdfcc0b4d8afdbb6b10b314a76422bfa7d6013ddfba9d3cb3f3e5016d822abec6b33bd7bb0072ae85fcd575b1a5f203a04f30af0cdd495af0937dfc0eb8f9340a8bd41e61691bb733eec2d1e1b034bc666496cf2f3cc24023bdfd713f4bb36fde33767b93705ad94f52e76fde731d18495ec2b04f8cbd0f5ffea3e52f78dbd4c3befcbf1ffd6bf5b0e703b7a2cdf330d2cd9f08460431bcfc3a0bcd790f9c825882c64dafc1cb7ecf4a2f9ab90d46c24a1eee48e72be7da9e7d47e0f81e1fe493057dee7fc51d8e608b28bc3babaa3e735659ad3827257488d4fd6a977904b3fa1e5413ccc58b5429e2ed784985f5152ea45c0bdc398fd69b399ad65a95ffeb3cbbaab66a4e1204701e103fa5675f21f17958d9d772bfa2a38723ec3d01e865d12561800072e8cada6e8f0adc1ad348827af90ef445c58cb9408e85a0850775f793ed625495c70a0d745031267e0b4eb9723be7b173eda2ff51eaeffa8f58ab958adeb3336dcb0b988492559a7f79d79c3985308463beb672d25fc37d58659029816a4b5eab279c7eadeba3c9a091ed39efb2b0cd26982384aced52107af84bab6045985004b9ff85ac664d3e1413e39f778c3fe5d5c53b43c350ecbcab36ecc9dbf9ce7c2f03ccd0b84c38af91d22dc2cd70761738126d6644bcd10e132f92011f6d636e5764c7544736ec7a9d5b72d53b52f9f24ebd21765a2bb4b1745a5c11bf786bee120c4ac68f085bee68453b9c45fd184e9ebe6d8d37fbd466c05bad3b552c5e7c00532dc5ab7fa0fb577059a58bf41d1dc44cfce6ab9ed6cd00b0c98f639d194ad68b384c3cc19b108ea6a45c56b7941a7c2d919b60551bfde6b2d873645d75aa8ba058bef1a61b0b340aff5021e7b16b378d0203af52a99045eb1a69a76e99a78862cedd3a37e9a40bb01f223b46ed987062a3a514b9b6ef29b94dce86d985977da4ca779dfb2d109b41b88da635ad84b88b870f8b9625a99b5a99549bdc7473a548f384cbc1e65ef204d3bef58059c4bba7176de9139d8e092d4dcf27c0105f811bf8d1794c3aef31660d70f43a95e44cf62b13412e5728eb89453148032c90561c3ece7ee907f4c4fcf2d552aef238c5da713d47e0c371ca8221d98b1cb05deeda50dbf57d578fa680e48d30585d32aa9f2c08b10e2ba98b1e8279597a5e4ec67a4e24b7adf9f6e68591799da8e3862d294f61622b8ccf0905e67bf8d8ad1acb92dd75ffdefae9bb82a1d37adaad050dca7981447f3062917a1eba9d0360a6917820a54bc9c317749b82e927ee66ce3162c0ba1a5e3926501426eb80d0fa6fd49867dd42f7126526b86b0f4719b13aec83a9e7674238be899c5195a16bf70e8567ad764f93c1dc64031be4a827c5aca97b5134a66fa91afa1bf733610feeca9ba6bcc5fcae45f849651ce90a4e70a65704c13141d618eb26bf23ad5b463821104817d92218876f4ccac06c4ac50c736d1be08e48e4210bd2c171f2a99862a023f177a4d732eb8872288b99b23af94be90d8ce61eae56609f51bd972b0ff3002d6a021a6622a2e1ef42c1360738cb91fdb9820f228dc0a6223f94da3b89dc50ab6046012647d26daa7d88913dccbdcfddb6c8904f065dbe89af4d484b93dfbf9c383acdc856074993b815edb29c6045cf81282291d3e78af92818c76aa0a9597ed5beb72501bc0c57af34f89bff3a48fe8e0c02453a389d590a0c4c70c6226919a130c9011359d86002b7e9854a82227cbe8395bc35156097ec8b8b2d019d74c38290258331449c00399f63a29c0bb4f4b7194f9296004a5558afe14988097ac7a8e8364f1fde80355b6029abf3d0e72d9e8510ccf961a058d0c36238e03708ba408816f802dc30ed08660b390f7fcc72d622f2b0c3e9053ed5b55b2f3a5e2d0999e659c329b3db81f24a1ef5a1b629a5d098002bee5b1fc142cd7abb516ca9418cedebbd7e670a2d3941da27afc29912bdf42964581263bb9a6e92ed1d525f4c5630c6e407760c0504e521ec50d1c7ab6311e931a0dbf50b6480a3fc0e973e019f75f37d283b9298a63d7814853724572136d760e941e0f69f84c76e287e9a99b2a05a29e85b6e05598691c84b2d62b29bffcd57b729eaf8fad8544154d110170469b115a31119098b497e5f068ce86ec99b6d0899b607c4142dd010e441e7081330ff978b0e06fb3ea99f7d882b5d4454dd037ce04c7a1f74718745325364bb7877f91355cd2211dba0996361a2b13c732fef5d3c57b22614f2547c533b9c94d1a7db80b78ec1290cc885bc4aa32f91c2984636600a932c75e267a492a0ba5cf18d4c91a4c1adfd998a2a11a89931097b03d1679bc88d30a7a4d7a1397b9ddd04260ddbe0eeeb980e588b9062f332f3296bea235d89237e69152a7ae4ef8ecd3b10d1d365d01f0fa92db3919b5878eda41fc118efd5032b9555c81d21cfc823af40b58b49cbbbb789051321136a3434f2ca464ba86b844f781016f5d58e51d803a2aa3828ad10cd037dba81a28c8164b68ae273776f62de6893e74a9ac25487c269fc800e9a6f542b30596e30a6e1d9bf5224394a4a444e12780954c4d7188cbeb311980abbb0ad169a715d9eac580f1575ac535c9c2a8fd81a1fa529f558e7b4e11c4c3a8f1720a3e3b73aae9bc7700aa4dcbfa4e242e99c50468d779135112211d014ca63c63cae9d1fc1021bd9840f2d6fa6ee9b80d85d7a40c115015dd22dbd4c794afe036b9955ad62c6c138d4fead1662886bedb1dcc8c4104866f5ab0413e3f89fb27b8b18e11764ae40fcc7e6822ef38907bf1c2124cc00b380a17b086e8692e83eb8c310ac27ab7435646a686e8dcd66889353c550f4726dc77e4c5a68e8fd9da05f6c84d6fffc03d52059b6bff29d0f8ed3db9b36b2f2f105d8ca4e99cfb504401ba9b66b1852cf69216565f60c3847e856b80a5f17fef489d2205b3401089b731891f132051188e98a68854806fc424892b319f811f4fc8f0b9e7c7e77944546d8632fbbd55a55040d5c9ecfd147bef2c8b40349a48e3b26f8d1a3dde06688830bc9ef94a94a45649099a326665d14e7fb773f01e06bb31d7c26880354a9b4564d54b0cd2ce5797979d26fbe1641bc8bd03a67415827424253db35bf87d637514e43eb085a4ed6fe63d1d61c3346b3174e083b9500ac4270fc0111e7b40498dae43f78056769e25b05b5447c3c524ed82534a8d125341c8a2d4588b94ec3dd3f8b063b8c2c0678181c5138a03a0a32c3ad7d7c8fc8b19c46adefcc4d711bfcd2497ffc2ecab8ca3798dbc485f58859fe1acb172990f4a0d7b17b2c779a546068248d08344d0d7c42d7eea687a320edd7f8f348faadca5d85436e174f60e13573857c0c83f73893c543357c78b00aa67c86d0896db39b81961188b7e0395c38d29fcab1b106e897af257e7c620c281a7023991e4f4e628ce5877b07d290499e3aa8281ed2de51b97b4b1b5a9c458b7658686d9983b1c25c40fa74c429f464bbb9d8f9ce25579703064848e390f8ec0f3b6d612ee6e1a33b3cd7f4ab16e033d022d290c3104944dc09257c7fa27e5514de9a8bc2fb2a9238039b3d8f5643ba24ec22b915a73f4d51a33d938c850782b601712ebec49a177e8925e5eb421e6c58938cdf11ec56c894c97e7421bee8bce2858c77a12bd485d5e70672efdede28f771016070eecf5bc196c570268409e2952ba15720cf66e1cbac737047bc294ebfa2dea2e103283989212f66e802310203bb4377c5b0643258fa52a6a10a9ce4ca55d2ba01b28f1f70d7a2fc4e18fa0dd35604b95e3d40a28e4885f3ff8063ba38ec6af1099a0375ee232930784d399a4c0d97002e99ce43674ec6c68b5e7905bbe70abf7fb18ed313200dc044402ec8bfbc94e126005a83ee5e044090e3c27b7a48111b379aa2fb3810929fce0a60691f09cacd79f0603fec989e1178492b9b5c87f4ac8e60b2794b2e1c5ff93d3f21ed1e317c7750257c6d0e8e1526620757bf6b81664a6fc3a577cf9bfc66dcb405d2757cd9adf218eb87350f6a32872d31c271128afcb6362c22f7b11d4a6871a34d9f0306b36043a82347cc9fbe4e1cd91dbe6dfe74a2f82cd25e858e1fdbc042a42dd745f01e3354d51dd22d0cd3ab985a1fe01ca3bbac87ca106d0eba7694c761a1121df0539fff0616d7397adc0509809c7a3166a82a58960f3a189cf19bbe39cac02671bd420b3b8145a6583a1a30d1a381caae9721fb1a67404e0d6365673fce6cacb330ae2ed07065afbf5c3fd6275d9ba1076ccb2aefd72ddcdf033bca519d77e4535652bdc02446f5287a32b3f98a83d1c158ef10ac4437585a608e6cd62d2830f007085130709812dce4ced012502b5999e2fab74a1114adb88218a298b5f8f0bc25372d6e6f414f6649e91916b107027270b3f95d1053652a8c60d97bcba881b26e7361c5009a181f507a7f14a28cb71a6197ffd616fa56157ba1c3e6ffe925f438d3ee95b6bf78198e6317b906bb30db46828fe5c7e3fba4b8f322fb6ea3855ee6838c0a12f691942595afaae6a1f1c8d19742468c5eb31177751ccbd2cb23afaf4ecaea7f0cf6837315b45e28413e506b1d690666aeca03aa6a286dd433c134d193921782fb801a043000028bc1714a5fa191dcddd7d141af3ee4e640727e147a1c7f719e7e47e18e89e68fde36dd0038ea895e9893ed5bf410f9264145a565a2aa7a0eb3470e8bfed234040e4f8320cfed135da76840808e2bbcbf0b13c2a2f2ff9b92d589174b987ad37e56f1cca0a32100204c3a11f3bb70e29cdc8249417774353a26d2c5f54158ce82b81b55a698a7be814f008c3faaac2f285dfb5d0fa3c970fca9e25b3b7edc3a01002d304306df0628340411cdb3a84b941e6193f3ad95367eae3790c6e18dbb4a41afd2fbc2182cda94a024639791820580756457c121fca544a931bd1635d604bac579e0876e25f0a269ffd2c723910855166f2deaeb94d745344266e6c93776f48075e925831ccde7f5db7335a8ead86cb01b3da1800b0719e0bfe4160939b8d67632c3a44de3ec1e7ad6da881a558331f3238c7d14ee8d8992f75045b4484c712efecba721655be4d98aaebe0c00d4474a10e0e66790f9dc9eed9770435178e53eb4ac8cda196e07079ae1420ad9114c2c3658fadcb851358f89da0b95fccf5279ba68f15272a2b52df5e7f50292d04f3748e35040065120cc7c1b9776bdd996c9774e290ea27eb08ed676e2b14cc02c71693e10bd20dcd4604697a843d5b08fb8ece89888c50cd7eb847064cee49252399228f62a12d1128a51f2ee95243e19ed16319d60f9a76f108882c44515d888c93ed6ed94a4b2aa56c99071a18929011652e6c856fc03910b389982eea56ef20499be99a3df783a3d5c8a4254a37b0a51a9ad68750cc861a0d5b5d694d3980f5988a0091aae9ae8738ea2698c72227dbc6b068878d8bf2b65787d60b41ead2f18de714180521ca22b38888d8756f76730818e67f7d45545e34f92dc8e30ef49f6cab0105dd5b42cb67d2f39a1c93471637770ab7892993636f0ac8148026fd279d83cc553bd822b28d4bec70555d8c1e8d244f92e5a103f50b716095f4acc934e4386b5fd38cc13487d36c0176b68b3f1d0cd71f7b2c952c4003bd37b9ac541a61a8bf7e6f812c4bf05d383e178c42967b2c7ec15462aa6ab066a7c3ff8f10041f7b479ada6d54dd380e88febc13524e01f7b3006979c991d042bd91c40842bb21e6d7c3fc4a348496ab15679f83f78f5533d05bac8f2c5d0fe9295370ad46b1b778a987c89c1b9035918b9832bff3f6028d5f7a7125ba7511624b12805f18c6c82ff361825f05f32594e5b2f3c4f0ae8ddc8ec8292c652cd83d8ec41935ed00d860ca9dbafd03bf5b029b0fbe8d313a83facaacb3a0ee4e8fa7010c428fcd0d15b410d0e2a295108bf34ea8732a0744110fbf7fc9f74d6746b43e13d86cd25538c0da29d2e89c4d9b25e184206e99b5e8af8013ccad5a2839edcd8c445d9c3e5b0e76ee417b681dd3f0c0637596bbe3ab13d06d7967dfe7a0830cae82063929b08add295cefca2448bab0a38702297fc7e5fd387108f948c0501550760e52e5f5272d0faa4b089ac441544468025db3fb366350ed2cc69d478a63ea2b02d320201c89766f474364be456ba8af6e4862f1c152bd7c5853f3d75d77b19b1a608a39538fd85187bbbffb321e721bb3783113f33562f39da5017d05b8428ffe2e7ab5dc02186782af209df9f2c6bb7941201047353fdee1c4c54822ef463f8567df112a224cd175d8d26f0b5aa72325c8a254d393cb6a868c70352180935e07eecb0cc7ca210530a12619cac45a892bc620e951fa1434c797b2c5a4fbf3e6172b173a25cf825e20a3b04b1d5eb81c47ef82031f7cb8c1850317dc70c1850f3ef8f0c1096f3353bef8d5aaa73e6aae37c44b3b5cbd63dc6c9d14b750002a1b528db82f56322e4cd5e93f70631b40b744ec1439c41aa3115a413d86d5bcae9108af99560a0e51aa40db12d1e53d074525db5924db1108f2b9bebebcceb83e3c70cde7ca16bafe84023ecbfe11c5a02a869b6da183e46222f042f74728214ca5373844d80637a126198a2445cff34d714249b01a7ac5e3d9f4d2d4b0607db7173c5ff557e1ba62776420d7a0b77f7540254a06c69ad4bd21bfaa4581bdecf8be434887933b653480fc15f0fc80882a88564e0a6d01194d00a61f7a8e4b291ce6c4dc5472139e711d02d0fca186c79431726acdb52751e4416da30619b03b5cffc73f7195c12794620288f828c2327a2452add02da80ab5869133f693e7dad5296e5414adc6f8603481bea5015880fcf43001a070beef3ab107fce1232d1716c571c6eea059b1d613f640b707697821d56015c026dd84a1d70e67a69c69690a4f2c3431ee99dada45578e6facd8501d745b200ca4f548bb56d3141d6617037a6c19f15a33e0e86e106aedd4399dbd1314e1b85d689a544c02546eae2a9ee6492a3a15d1615283f474cc478fbf3adb912755e19d45de1fac2001605ed8a12af1aba026111248e0caa12f0490ed3b25f34fbfc96922805ae4afbe1efc1004f14ffe7957b7b76dd4c37982c262d43c1b6cd5076c42588cf74d5cda25e9d7654d33f483638350e145de08acbd6a53da11c1f103558d8c988d34e22e4485e739076b66b9d7f202ebbed8555d30107c4c7ea9146f23841921458c4f908d47bfab99733ff9353051fd1bf379dd6dca4e33a0e5106a6228e5a1557c98123babb461bb47d9e46e2332f118b5b1c2de7f5f68fff44359f835f27a3457cf21cd6e7c934b3f9a3a8931284562c9125d62929971ad4f0cab57afaf063493f1aa570cac29b79493b8cd28b6e53cd92b478e9bb9fb58a94d21ad3599f47e0d46d92de7d10e60365d140648549ef7e6b67ad2e0116f17e534658b581964bb8f5728c6e7e235da715caf809a9522af4e56e206d289440c8cf1678bc3d0c853b241cfe385c73dd02155cc13588cc1f4ab8b20083ee8c6e59ce091666c150af76a88c4ce7852277b98e2aa1bdc15a7103327eb9072a7a3b8d4e648656d43346e239abd04257a9503e71e772796ea194a354d4ea5bfc188cc255ca4c398a710c2302ac1f2be597b472230c41db51c1a2d19570a71e7e20d0b325474da1b12ebdbd4caca46801bc7d418c11aca831af5d0b73fa162a392f59b21bf86f13f180dee82da010a28fc58f6400a1254d05d673737150742fe1e0d5117c4d8aefd0290bdabff3c25f872b218e05d4cfaae9fe092307554aff705cc6900d723154796ca7674347c0490a7998c1217bc40a3b7e7272376a166a8e78206e584399d9aa2e047a7fdbe05c2d76a428d85b2b70dd4d6964e421947a9611cf719eb55046a56a9f4282acab0bb794915e935c8a16f0ab287dd35f78bdd2597cf31f8abb7806d9eee572db040c3ad2aadf2a5edc39cf11e56f7702a8865048b76a70f969bc87d8282b02814a4a56809c014ad1c5aaa3fd9c2305a7032ef341ab94b44fc9fe8af545a16908ce40b9a586e82e8340dea627430cd1cb9dfd15895cbe26e4df78ae961ffeec108383dae0369726395a98eddfb9fd0deff0b6db86be8e76ba6364594bd78264feb68eb89c3309ac01a17b58869066355af185c57b5be8d54e6c6539f18a8be7c9425e21b212dcb7199571d19f7f1f7615d4dc23aeb64a8fa0e0a6d2dc7a539cc6c3a3106a4685cef8d5dba48c362ce56e7f2b40e4c7d9a3d291ab0f1c1d82007b8161287374a6534b6d4221a748c4ecb89d2bf85140d8ac81a73556516342aeb1617f9837446c56c8d900a80a6a820b50231c27c6c01218f2c76c37651fb51892cf18ed1e66a5e0d2e0f417fac140a9fa0a1873d50261f4735968f76751e21411034563f8d3430af96f79ed0bdf70bed1ffb861f65e5e00036d4d159a668ee8d7aad4579f7e63e132fa284b136052e1a7d0d6082d510be4704c415fdc5b351538a646f0ab9568feecd604b3f153e92c6947565e9feb86cdcb9d9d915a4d4856b3f6e214cdaf7d6ce534081d9e14da2147fec61b45a2659b3156998e7c63bd8ca3a680bd49c754d800169be889ceda1befed2e63a467c37a5cb813a178badc9eeb2a30568133ad339353db7068626d45dddb503fb1219a74fa77e7c803536d4b1dec2041c93c3a232a6415508a8c05d13dfdca19a46041c374e693886ecc1f1711d24d2da6602ec4c3b0d37cbe26a2bcf8f21616d2557be163725d792a6ea7958654849582806c2bac258aa5a8b51c6c39ab845811501ae0b4a2ce3df7b8a1b21a94cc2c22c5b9af1c4fb7123a5e45afc610aea8d1b2b2f1a912947c976bc36d1173da46a8ec041d90c79e38d9b09db98cd3be326247e06d31ac9f3e4ab836f7b0e10be3aca8899cc7fb7f3b184cae26fc02cf7215a91c42ab3933834d826190a61f2784aad17d6aa9eb1a9713371c736d69abd89d05618c654c6f6bae09522a275f9b6b4295747ec251ed99f253e5a488873e328c98fa28689ed8161ec24cb1ebdcc9bdef2ce586acb2168a994b8406a91209d7f5a42b6f5d92302f7ca399b4140b0a0bbe288dec8e6d9db8b3d339d8a389e80c7e3a4da21b9af49aac101b640e5553052f9bb2bc881b5e9a84fbe610748229553b35a3d8eb425f49757fa7dc831f28c6e65a38f44e6d4d5ce3f3d5bf04cbf2518f76e4a7100e4c94e4cd017b4cf9dc08abaf629f53d1b131f58eb4cd7e23fb55a176646b10c0bc64d9cd8cfeda64bee22e95764a3e73f0d3163e4b4798cdff358407f74ea807f1d5abce915aa556508e38012e6aaaa265ff4a210f8d906947d6be8bfbaf0f19cc063a2da5ff1be71faa2d60d59e0f4ff77a9aec848555c9ab017f1dfec15ae457e5dd0ca47d7409da72b09cfe9153d5f715dd14d988486b191e4f415a44ee056c9ba2ffe4c5b07c5b9585e327361a8f44964b371604709b98a27a47a8a8c014dbf803a1afbbd2d11b5e505960678baff8fd0caf66eeec03a08bcf759bcc5aa9464821ef9a355225747fcde4b499bdb803635515706b747e7f53ab6a3eaff908688b0e6510df7131af25e5c961fe2bcb6b8856b285d8cc3a06a86f50f5dc57678f93950e96c389d98e9738cb33c84bcc2dc3394d7502a1eaabd9d42578918b6fd3a21f33d174ab8d55453417afd95d5195b0aee703eb7789a7e4e3313d518e7b7306b3df3b1f593a6ed916aaec918fff023d233cc01ff175568afdf410f13768a0cc7abeb10bf1024e0fb7223fc47a0e9a9826e6c674412a76c3599d207e9661db0243e174b774bf4ee687315c88c976286a0dee8da8c1b82da8225061b7c8f9b82b412992b3177bbd79c887c256805e4164b9277c107fc03a20b8a13983decefd1ef9c835fb0ac67223752691e6a2e7807bf7fdcf79e2655274783e6a4137103244e2f2874d41cd8f4839c8850530fa4ea8ab382f97c488bcbacb7fa6e1b1a90cd50fa8848793dbd3dfbbab76cca6e5825bb42c92fd452fb42244427698fcede54f34284954f62e6e0882df130416d317699ea881ae95b2301b997f0e254cbd4e9c8c6587fa14ceb680066346888d0fd7eb551c1a6b06c13912ad26d41adee9d04d30287b6c94745a649239fbe6d01f5e281943e6dd04dc5f462113e120916a3c0d4ca03b046b840f000df47efc1fdb688239051e16aba174db9874016c7027067ce7b052d0716598b5298b71f061be3e6822805e42d9be55a54c44c7f3b134e2911656e2a3150960f62da67776ed8ac534b5a6453dcc6c77080be6dbab6e2988a1393824f721c6dbd8d382083cb7a3020ea803a317634f36f913bec87bb47355b4ff1b29d0171a13389d335aa460a86dbbd584307283589bd1c3c7a7378aa106e39086ff4080af9aaaa897189021a7ae5f7193c20a57259f543c8d8d9283f6fc80497e53e8baa1db59cf5e27e8b99668a0ac13556fea89042605897720082765488479532d338a785cc2163c083cf83a775a2c668fbde5eb93b1d06e3b4fd77aab7dfe6e5a2354d9f7b1769ffff3f47b65adc3130778bdbe111138a439973fe1a3e64f312b1f55fdec7c3954fe51e9d03b7acec1f281d7af823ae740b989004c325f73284d9af021ea04b0ae2fde47dfc13fe2817af09c4e52cbee7e48a693966f437c826106dd806558fb008eedaf00e9cf5409972150f0158560161183e0212007953c72326724f8c0ddb8c71abdd74f64533d1f64a0dc962e357faad000da61b98b825d99b700b7b42380e466da4c91583875ccec5b6da74991626c12abcfd2a54650881b40165767391876f27c726d877ad0ddc249c336e3e7713dd6b34c5067b134fbb94ed2a842cb89a42dae4ab5304a191f1110bdffbaf5fae90498736592a36f98557def28bddf1d8e5f99e5fde98835cf4abc0918b638332075d139b26fb3414d58d2a67db35355e1e021a0428287fd0e0d86ce21335e01d83006b38349b2cd75ffcc0529139aa97dd599635f527e49a61214c1d839a8678d35d41f706c48b637dbb1dcb9e7d2e9bd06a15bea28a496015ef2b299f5706ebad58ce72e53f951e564fd05342906d2682686eacbcde5642dbaa7dbf0e619b2acc20756869a9bc3d3cc20b2b7d85008f90f5c8d5818e5ae1c1041d46d53912e4b30f29646050d99c9e95ae35a8c7620741336afe1a5801fb1e82a4e0b87520ad72fffa2977bc7bf50c3904deb2c7e6b6b064663341c37e0291c4a044fb4b12e2dd1befd863645b58725733e10b10d5383c2765211e993c1f67be2f78fcbf80ff7ffd4f13e87e0ed81d74c1211f7b41b5edee82f5e6e10deccd4c8da3135ce0b576de4fc10358d29be241479885d4f4ab98faf492331c028572622081c2e98b44e2f433ae8335b4373b9a001445aedc8a2ae03851ee4b090b31cd8181f06dcbd7427143e64a7f0be8dd1e3c25c24a191f88b09b231e5e6d06ccde262fb870f93c2b24c01ecc3a558e6978718eb105d21484546fb6f77c963836c28bb01904a112a2c5cc0084149ff0715271f21756fc52da05c1448f52d34be459b5f2258b9dc7453a3e685abf59b27e154b0e307444412970708c88bfbc3560de13b668a734ba3cef2e694f728038cceff86a280b6761c1e0fe06aa452435afa14037bf480bec31c153beb3ab6f0b91a7d8ca2113d342b3d2d2ba51d28d36dfcb88977e22278902ba9fd5ee9b3fe4e2fc1a93532298861ee4803a49cede178d02937da8a465ec395bdee13f376bbfa529c2daefa3919200cdf4a49151256e20faa024994de4c981a805bb5267c3ccb48b096dbf4bb884a6ba04b11e26329039cabc370ecfa0eefcb1a5a6dc98f25dd40e806f3ddf36050c6d6c552989107cf812b3c09fd0cd013ff87d8901d978b1ae9d172ba4a24f15ffbccdc15c1c625e189f1039965849ea0fd01c2f84e5fe13bd8ec9f0e3c0622e271dfd2eaf48e977f6af0185c418f1a7db5dfd0d70ec2035c04081bf0590b9300af0b9192a11647f0f062c6dd799b5adc02414a396ba0dc66ad92579a794e240083752e5a2867dbe3fc8c206fdb06cb26c187354304068df01a71dc40d8149cb29433804847f054cf9e971fe844d6891c1c1cf0ffc21a411e69490d232572a495543ae351194450c368d5c7b853628a9666fe3e21c93ebf466fa1de984880545d99a484fb207e5d9073403e195665e1be31fc5ce7b09c53854fbe020011f02f5859375a8eaaa81ec4a59f78f2ac2af0c78762c9fc7ed7d32a9073f988b5a3d32e1fc005b3f027351c3e5ab8703288991ef3876e4799c9216b713f29db360c02e688d10255e68e44db0b84b052b1801e051d0eb7d87caceff2a12299827dbf0ea7875220981189af23ccb0ed5e4498d16f33a48290fe0ccbd5e6adcd00e82fdd6409aacfad077a646f064c5993bfe98be18738d1785e885ce0b410b8f32eddf0c5fdcba1dc6fb89e047af806ebcec67583db6fa2bd65cde3c7818f36fc3932a08f7269d6ef1df68b8fe56bc8e8b80efa7b47d27b573ad0e39b815aaf0b2d148dc681edf78cf60a4bdfb3ddbc05173f20cfccacba0f8a2527ab0aa27c16f83a8ca2166ea744dee323fb39c0a582ca04982221c0d188751f5f0b14120bead013871401c0368a8cb0e6818498fff586db2130898e668bafc848ba0af0119ced190de52574906f36d0def19d98286324e48a66ee97556681c6151c96f997554562f0a0de638d9ab238c802426a034b75ebe69de182b34cae2445b9cb6dd74f16b732dfa417ae9c3d8686fcc19d1121c520352e31e959833273c7c664dab2c3bf8718890f65efc8155c9ffa5a5e4326738bf35ae26bc2e0e1639fca7cdecbcac15b09665821bb27623506141178872cd71d11031235bfbc598f2628da1c5e2cab13e55c2fa0c1df26135d78a2feb9f95628dd0278a909e2e0a7112101e546e75cbcc19e4b9d1e9dda0a2a120391cbbd446e909d7dcd92014b69d66b0f839ced2a7a8c2982478924a3bf32dd39ff6732442f441b0d8ce2250bdf787b741900a3456d7aabb9230f8513fe49542d24f50c3297f820964c36a67fcb6045316b56b20e86499bbf54a47004c7240df396de9d1db23adf8f88125475a09085ab06010b72115336b78a45e71e27b3859d1e31669a4da737a04d91ff3f8927c8c237b9a63c49b64072dc0449583a232fb17b0a07143fbc29314e0cfea5bd1b608fc8e5ded9213d9d206e35919fca0f032b6808225e7a4f6e1a5408ea8d34b6b9ca5d3123b01b0820f824a43291c311f90d6c20c09c1710d4e1ffd459c23595540abd3171e8707f94971fb1783e7f9bb9031e60d85f971873cec50aa21b1deaf04b9da938fafe66b89cebe843797cd3f47389211d514352ab481d41377b261998f015711f30c0c8bbb6e869cf1ec728a6e63f37e0f8067f63d04211a54cbcfdd821f95c3a66d921b470c344162e6d4769d8fefedaba7b4837884fa03ea096f9a5b3054b24a078e941c1ca59f546b3b09c4afe6b21ba0716dca46f2657a0464ec29a9da957033de88507a9c8f9eb13e9805cc9145060c20b2f9821e8cd491bd05d7e0a424d45cda696faf8c9521aecfa32f09d97bef2db794522699027109e10996099a179a13cd895665ce2e082d42776a7faa1ffced3b30b849e8d72fa4de01253fbd6f47bdde522f08efe0b314eff0773e7ae3d9e9342fe91c611dd6914a9004124364465290805b42289515f0134f039b8af0760ee1ad7f911a015f1f38079e5edafaecd2acf835490e8179f0932696cb5b32debaf6c4bd27cdd278341f0d170d4f3524c5a34aa15dd5699c86a73e9ed87314650c170f0cb7896d8b2c5c543257e2daa68b87ada082831d5c3c309c825c544c0e835d01142e2a9953213b97a4cf49694bb360b8c743fa4a05dd702259c79cf44fc768b2ab5c6ce33ef4e72a37eca4ee43f7d8353b1d212ae9d5693e692457d6314f259dc6278fe4caba44922b3b91e88fb4d4e829100d7a4b270fb885f9f7d62796665db7306e7d6ae19c76ea636b7e7ef116fb26d2cc17dad3a3bef0f4a1f46412eb90597865dd2ef9e0ad176f9d4a22affb36e28613c97aff7043492405b76e2411e744992f4c6d91c5dbef8ab79e947d71fba70a0f98cf24b9b2ce9d0ad567d849b1ca95f1b0856417d4e90b6f0ad3aadc70223de0e4618ce768d07a7b2ab041ebfc404e1f1289446a4edc1e7aeb2d040a35687b89b745dc13ccb773bf0ef2b6df26e79cd3ce6ea7d2db2dbcac931ff6f150198279f5faf1604f80c1c4cb22452a825e2e76cd20bf7c7151b1274ffbd87183f3e8e7ad5283d6e7ab41eba74f7669d05ac77a6eacdf538cd742fc234930f69e6c2751cf94def6d25bce3947739b5fd22beb610ee9a557b60cde6189c03aac8700301571e9873e3f745311377edbd0bc89c43a6417b9b29e4a5d6bade973a141eb471a6c196ec84b6f5d389284d46943b79ddb3af7492f0d5adfbc2e3b9d75ad891bca2e6f7d22496bef8d486fbd93ec0358cb67b6c17e2412f532f58d281bdbd81ba3b738569f3e69d6c42ce246e713ece7ef61cf9d03e2d7e70e0525ef4ea9d72454ca26a1c4d39c0ef6633ebd233853a97b31f70641cc6db07ac69df767c02b7eac32600837e015d3e89b1b2d56be5c5b24a35cec09e9c38d31c1f4a1881e03880fbdcbd574f8f0fa088650c3877e03972f53062e5db82c717955d9b6acbb2df6aca3d2c9dd12e323d9dd2da594922953f6426fced9eddcdd92d5ddddadd15c112f75d6c1524a295b82b2f9684e1a411c2ed90c38073bbbe5acd362956a61a79dd36a61a79d58a5604c8b55aa45a5989d956260d05a29a6c5b4956a61a79d608031ad1676da89550ac6b458a55ac8cc20953c8661961914f2ec8b5d03826820bc40ee17a9330b9b4d6d9b9546c73c0e82b98db4ce2ca46b73e326955a66b1aa6561486ab13ab3d0aa6b76eb4c934a2dc3aad5b2302a86559b85a4589d5970934a2de3366eeb4c3ad24d330c2d0b43d29945a723bd9ba6d3a452cb2c56b52c0c492d56671658a39e6c6c63bbe5ac996b1e67473e03723f7b499a43636459178a2919bee303fae33727a5b46213e875840847bb9dfeea5208522b0201f58032801c372be611a1c41dedd55f3f2bf4d2a440508080da637dfdd0ef353bbe7eb0de248e771ec879964971cf078e0ea7b9750fb167bf9479c457dce15dbb7463248a45bdeac8233661c509d6d13ebfb05f7e71283b1aa235c9760c9779a7bd61e71b6f708e6c34b2c28292108458f231f67c18488f51616beb43ee69029e8601c4532c945580032c4979e9ddea8bc5c94524fa7b4fd61a9db1fa89c58d1eaff89003a30602fc0463053f6fc846dd29f9015a42841de8408907545c4c62a0c363dfdddd5b0d2ebb2c91918ca89f363922930f4be8f1b3c88a0b3ee42b587e7ac85a2673c931e784f23346f919a7fc8c4b1ccd17fcf4e9f6a61cfc01163f1dc7c70f2140c0f2d35760a1c94f277244043fdd851f1cf1da52440f0d7c8080f4530323a02d5004f1f0d3a350b3988a2fbef8190416fcf449140316775e2fe26b0910ddb457004a5d7cb3902dd2300cf341920e1896a1cc0760e050b740b23e30831a61acb403173d4a41f07003a5293d6049528ac2072c2fa52b4eb8e89212833e5321c6ebc3eb5d1465204921b7b8dcd10f57060b0b90c02802a908465bf43040085d8450821c1817443f9fa91002125b3653e721c79e61ae79d4b60ddb26c7cd6e7257ae24f7f12871f9fc31bdd21a58586102537aa9dc86d9acb2808459d36badb5d6596be5bcd615b4aa69b57af45038f2875cd52e86ead5ab4fa07a8d21526bad2e13c33933f69cb2b14d08e3f3d5b7299d4dbef50edc8a3e2727f1b58bf8da407c8c65349195abca79e72e57d53baf5e2bd799a0dc935fef64a081636016f57a7dd60a64721f5d8fa4aed7ead78b272f857699be282457d58b434264dd96b44f49495acb5109fb849864b86170ce4f9551a9baac27efa97efa7894b8e24bae6afc91abead4e369b07ae74520b9aadd921b46a5afded5e39666d51047e4d2ac90a312cf74e91607e750189fcc49940ae8cd997b6b37cf326db398ac4cbae70d1bdb98806e77aa14aa4b5781bacadb53a5207d93bea95468dfbc3d4e75427c1592d8cfaf72498f5d9ca7726dd2623e6ee40af3e8099198c5308c9750d07daa1430c7dcf4bd406548f7a95c98bfa08a9f4a88c921c02e93776efa5ee0a1a242f7bd80b9c94d9f2a7ae64a5c2f0c3179e7d1bb8f874afc86749e7d3c9b77cec3b9c995b8d8c52eebecda62a7d3029220f1a743805d99b7a0535d48e6aae8276797f554d13167d710550a26c75c059363df0b548660def90baae89a5b37b90a9d9fbe1730ebaaf8a9a0b955a99039e69963de399d5bb765de8d5c4976718659b99244e6c7829d3d9d88208828b0164f4ea71d6becae0274a280921032a1bbbbbbbbbbbbbbb16ea31f28f4c0014b00592e24cd486118865d94e69cd9704b886742af240a383fbe5d62de83c8fce6b536554f90baa00f6916c7607b3baf64cb07af7a52cb603b777884fbf9d399e7e3e47c7e6027e5aa37ad0b737e760a1b0773ac70811234a3a21ba91935eba859a186a45991da95973f7c0bf1419ac40d358d482baa4959899a5a52d29cd279f668973d7f90534aaf724e593f3aa79453c6a51898885f800f3e71430bdea4da9bbca29e793528e67845a9c70e48eac3242794807d4796401e49c6f4e67ce04c1470e6270573eadbfc6c70a409369e8b6670e28b686bdd821a9ca2093518bd560cd38234a166319671f4871aa13e9f51b9ed6d45952e0f3e5be18497df24a7396157f2fc8531a43df46784cf8c8064d700dec1cff06ed4277525763aa91a5c1fd6111df3b9d1cceedcf8ec9b44ac233ae6ed49d15cf3a84de955f42d5eab0535d8e4865a50a43f27a127e49cbe79a1929f61922fc26e847bcc31e7b8239cd48d70cc3960a7977e8b6630e3637e70a2c415fd0775e9435c4a9f1fcf741ee94a6ee8f1063318c0873948f0c18b086cf043097c80c1cdd2ebf5aa41f2f082970c637021030aa2b8641145e8412a7237632415961ca90f4bc0410f36f490a5a8072f4f907c5041110f53bedde2fcbddddd5f70a8c156f0e0a5d7eeeea6f2d2a7952ca48348a0650545a8a0c90d505c0df4dddddddd7d05065d115fc24bb73478b903d0a7a290170c60626a434a8db0c587351b3b69b7447c77910e4f7c17f988e0ef8ddc1533f6c6949054cdd28728207c58631303962d6a32e5bb280728dfee454e6af8ee6b49c87235228c0aa0ccca0e55c9e280624537783182e9221aaa4c8290ae298228109396e2c82505525f249e14bd8a7068410f454729315242483ad82246d21231927c902289ca83424865313aea31faf6d964fe4c28df6e54f35cc4248aa21ab63c53310499e7a21a90de053f4bb8e0678a0b6e88f2feec021b9e644911e8238d9119f5d4a59c72ca2965888a5064fb1c9ad371c86fcacf25821aec2635355d3c51a9b0d8b0b1a5468da254ca0a0d8d171a34aacccc7041a1b4c8c864b9121353040393b42549a959f76659723a613199a6745d158ee3b26d4b689a952cbb62ad972ebf93a4e57792929e39871b5a244622222a32b21225a8c1a636371f8da49ebaa4f2c3a2208998969a446da84915a9a75ea9568e72a8460d56a25ab4c5fafaf6c219e1a8976fcca859f1b1a14897be1d1bc2aa6044cd8a4e95302bdfbd05dbf2ed23f80dc7e1cd80c33d461c8ec36bc581c3a3273f1c1e531c371cc78d1b5a7e840f436ab06f7c18162737b456e8e0ca5ba2a3a2667590d151b3428b7405a959210dea496a56880dbd96c883bf1dc3d2ac1fce61a12122a32321ce6128df40dfd890956fc7aa748b5ded58946e4d175634a51685744b1dfaaef2ed3b5df434ab8978fe1a6fa78b9e264dbaf069560ff1fc2a6fa70b9f2e9e74f104a9593d82e7b7e1ed6441c28245a9590de5f96b783b5994b66c216a560bf1fc296f270b51519151b33a88e7a7f176b21859b1d2a5590dc4f3d3f076b274f1e265a859fdf3fc33de4e96a12a55969ad53f3c3fcadbc9b2c4854b52b35a04cf2fe3ed6449d2a225cb51b3da87e78ff176b21c65b992e50a51b3fac9f3c3783b49444545494acdea1e9eff7a3b494a495b92b6647935ab7978fe93b793e5956549962548cdea1d9edfe4ed242161c112d4acf679fecedb490a9a3265a859adc3f373de4ed250952a4bcd6a27cfbf793b494b5cb80835ab73f824a12596306a5637f924232b568e9ad5383cbff576928eae5ce9d2acbee193ba78f1b29394d4acb6e1f9a7b793a48573e22769611dfc3e5ac92ecd2edf419ea494d2ca18463dac1b4aff34d856b4dcf985d1e8da70c3d9337bacedf9f9900671518fcfd3a12a5f7483d0eb782ebae1f59476e94e881f6d84c08f08f4f287b6931bc69feea15f0779f7c8160e6fe7afe55f8dd2b38b6ce1f8ea8f5cf592e77b69fc31f96043d479c27083dc109d4f9af450306e3869cf4fe4ec462fc004f294c4ec8a2dcbabc8a399d42f4c71f1ed389c93fada39f20b7c248c751c10db490a6261d42998e3a6db461597ca181a60e5714e497487a99af38790166319f2f32d97a8143101f23231399b5504736bb901b341ccc3f8d8e7757a45a4679d3fd54ef4f9f578fb85d23b1095fc74cfa6c1ab1dddd04e15582e15e3771b6c7bafe579e996bb96bbdf9798df4e61bf87d22777b4893b6a3e4e5ed1cfdeef6e6e236227a70de76cce4ee4880bb2c5dd53c84601c8a17d2dc4eb9d3c8e26e73e18542a4417e7d1c57d3d9ccbe43dd3b5847326d6159904577743a6cbf43199e1e4e2bc5ddcacaae964dcc74c02e69a14aff914503c0684a5884098e887c4c1b9b90141f754eadeea5148bb555b23e858175b8c91120189c49e296c18f5458f5f0bf1e5b383b21583301b0f92ad483414bf380404164c3724f568b071e41830f088410a885c54a4d31cb25143744a4c39811006172f979c5582f879b9b83ba1332eb7e5e4a26b6cb68861d813222b50a6f8fc080d6195da1b51d1277ab41263fcd172c3d8336d9206a3d378a6e20b18cf4449d48c6abb1adeb26dd3362dbb284e31285df36a18949e79ce9c6719944e4323dd1f121e2926538e2f39f8306585e80d5d87807b2aa2a1c99fbc8b9678f9f072f178d2b19ad3ee6edaf9a4becdfbf40b8f4c4b74fd2b821a82b657efbceebaebba7aaaa8ae8647be487b3d7d1e1ef9da9dc72f6c9f1d765f92f9279f9e9adf45497155405ad5397f77de33154550c153304eef6ad7755ebd1584d070fdb1d06f02ad2554ea49ca9d5d77dd3d3ba75c373d1b55dcce4323dcb79b7c7af54e4e976cb6d3e97ef0771f769a45da4fd79be1fa8651af73eebab36d69ad355cff214236d9053979272952bdf3f6c2f8f563cebd30fec9a96784fb934faff35441e8e6d4f9394f0564769f2a48f5cebbaf08e73aa7fba93a67d7905e453779aacee777978f6210a2c6463bbad5732f627163d041df32bebf53c3fc385727662421a4a4430a64d033c30aaa12352d9d8fac100f3350a20652c040010e5cb28697727b29a59472d28ab96d0bdee03c13f9e0524abf2b90524a894d4b6db5d8fc586e41819726aa24a18317209a7871b24929773aeec15d23bbbbe51529a56cd93dbba5941125a56cb73695ea696d2a3557cfd93392f8e55540667f7f610b6f616010638cd1c33cac4ebf196b7579d3580e9b9b4f4a59c5a88972a35bc963b60c373a0bfe3295b2d6717c91ea35099d52ce6ecb494a2975b8ec41ec73a595ce39e70da7553a3517322dd378b059934a65daacd46e5d172cd32686f9bc959bb3335d394fa64aedc69d4c5db42a6efc4ed37c725aa665da172ab15eeca135673ac340ab573a27d63a549ae385290a2a5262da45d1ccd098367b98e8937d5aec89afce48f6a06a505d2a150323532355c3c68de9ec3e7e700db60173dc9480f38a8172fdc3e8e2bed06e1ff6a164625031ddbda6ee6403c35435234cccd4c9ac5a5337865674a3f5e2929711167b4c9d4e955d043a1fbcf014486f355ccd8d29332a32be26cfd3121b7be4384616d8434e8a343467352c6b1cb8c26430f36d9b9ce59827cf56934a7d91876c9d9cfd876c999c616cba73ccd94bc03999fc0b5372f3b869d967dc866d1d86c2ba7b2ba755b9b563139f4ca8d4c93309892f32b4296ef44da30c66ce9907be3a83196721b0dac7ac23cb94607509e56ce41d6fea74a89f224bde4e27c6579fe0b5c48b3d2f14e2a99570dd5591ba3766e8b07152f49b1711863a2f2f13115cc083b550d4539fd42df56b06186604c1dc9a6ee595362f73bcacc14bb75da678e95776d9c1cb328e78590618646cb9c19e008309ba833b042e397436009d62d081a301c9e4d3c3c604a83bc289d6b3c48da1040ed9cf3646951ecba48b364651cfcf18567a70f5fc8ca1031f5c358cc18507970d486430d9c185c311193fece0bac1888c201d5c4b96c860818f8b869f94183350a4a40d6c20454eb1011348d8a00a59860d64804a6d510512f33e17dd20898fde9107cd0bcd8b53c8d643c6e78c31c668313b8534383df6dce8d3e0b4445c19173265361b63b4d6312c625eb18d63bced070e0f2df5f98549e6cff80feaf98872677666be1f0dcec81ded64f078a26b046c04a0a0aeeb3a8f544688387cf6708effacaee9f9fc7cba4f8f339532994ceea3593434c099f219a7de0c9da194a6525e63662635e3353c249c72ee7452df8f191d1a1a6ebb200bf8f2e5cbd370ee1a1043e3cda7e1a9826445623cf31680604aafc30d4e1b0e005741e5eeaa2137dcc66d6ecc53ec892fb99aee9e0b7275c3e3b9e12bf0d4380b723585c4e77c7bdd1997f1ef53a9206b5c3abbbc4fa542bbbb7f2fdcf07619c73a1d29387cc78d6c8de0a3c1ec91c42fcff95c1433c3e87067707cb657d465fcca7c13731f32268c535a98276f0efdbc0dd61dac63fa08decde6a34df831c3785b711a9cdee386676bbcdb81f9f62b827daf7db9e18e9f1edefc5479291b9e7fb965dcf0e6a7efe01c7ea14d098d8e09224211a4251595a0e70545265454821cb0228ff8435cecd2b7fbb6f1c791992373a594d658a9df970462f4a92f1daac8213449441c028ab9444a1be20f51f40bb808189d945eb9f3b928091c2aada1155fd4515f68c4e68d983224c1a4288917516d287ed8413a79293d25514a70e182f10d6a0e6f90025110d1608b123ba8a106ad850db01cd0cfc8cdd75a6b85a2a7b28b526b3f97abe8b16504082cd081972f39107185ab6601850f0dc5154e1c93452920e2f45ca4c4971428f1838d73e4d112d1d26f1997a3599c639d7d88fddb730aa5aeb82cc583ee429f1009dc9a4927e7669dbe307e4c9a72660680754cd96a1fd03de52374f2ead5dba759bc552fe59da69d945229a56a3abf7c9ed67d349bbadbdddb5d538df1faad17c620a69f404e3f51fde10bfd2a20f243181ef5f1373965f4847c68e4e6e7a771ad300029b7b65bedd3ab76fb765a22ae756a23a685f2e9a8b9f45a966541491f47f05c2405e837d9edcc9f0dced83ca749054482e04f6e7d262d2dc1f8a9f3d3d29ffc36f1c4fac441e7f6e8ad9f8e2842e2c9dfbfbec9c0a066604e26934d8e19eee4d9a7a172f931df3ad3f4909c3a3f79262ffea96bc09cfc276f3a9f4e9f5bafb3ce75404e56368d1237ecf07a8cb7f74fb38a5c87f1f6f6e91d38e7e421395d192f7ed735e0e4303fbc1ec64f2718f7d13237c60baf9b1cc62b72fde45b17a4f3936b1d90fb9dbe2dc595f19b9fbc86e2758cd73e66dcf8e14c02faf6eb53cb54e21ceb3dbd38797b03527ef26a7c49cd3a01999eaaf9dcdaaf4783313ccda0661539b9f5ceba20d18a2392beebdc76404e6e9dbb793d21d9b23e63ad07e0adcb16bbec6d8e86cabd8e39cd092e960a8d707f3d4cd227cf3eed829cfea5f83c03e1b9088928bfa9381a14dc307e0d4773828b797893c42f828d404dd89bc2171ee6433538fd7a15a3a8113af208d3341bb45edfe475e18d0fdb27bc1fb64f18913e4485423e9cf918d36ee586562979d80a112710810b063b8420b8befaa8560441c6112e18b0339eb8a8d78f87919a8c81c505434684858b7edc0750e2da9a73b952813ae6b4aa54b08eb9fd2a75ecabdc9d29d6d15ebd3b845ac9c34551683002170c74898bba12d701ba881b89a083537f6c9f429cc5c7c6da766bbdc53efa5e867ec916f692abe836b43785bd3e3af685e087fd8a4ac8f0b18b218beee5056df9e989261f5489bd648bbbd2abe8587ab4f87c8c1128c6283fce94c5659f2ce7e9b564e32b999965161eb4d7c796f1633b0b7d485ffd651d0f2e7b487b4eede5c4a744f52a7afc6ed2650f6f0ab870d1a2e5e4445814a5e869dbc6c0f63ca9b3db8c73e9715227cb5c9a32e73a1d53175075f2e9349c4e2a37e42b342e4459e257cf45517a7eabe1f10b7b7c0467561f9d86848fd105bacdd0a4666852311d2b0c4c94335e68534b0885467a7c7b547956aea8dbf0ee1457255d7e425c902beaf12557f47ea111d49b3cf34c8b42f381296ff07aca332fe5303e370441188661188671181d6ee6343c158dd3f0193f792a1a3f79fc8df3a4579fdc10044b78948cf31726a15f4283d46f1aa42045c998c01c6e06f618b9c0b384abde930f9570de8c4baf88f45adddace3bdf7ca7fb3657f29c17cee75c7a210b2f3b8f1be46a38773b463e942e95bcf48cd4f80a107754e7a251ca0b519f398dd782cec983d0f099cf874479a195f1c2d49f3cfe180fc608eaa56745477479bef25c744494df9a3bb1a7ac08c525bac52eaaf9b7b90ac33a07a9e7a0bec2054aa0ce94524a2975acd3c1116d561891ac501a8d642b8791f68173caa5dc27c586538f45cd925f5cc2c61725a5531aa421778950c2ebe57a83d46b1528b0407da31ce71bd76dddf6a9826caef9ced6715efbe66972a6e086e0d32cc74d0f1f3f9a653f15f64d1b3ad33472d8f8e4c4e5a2239e7c688ba25c79d9e2188d006dd4a747279d7346ead5996bf5e82161ca833b9d7647648b7e91eb3497fe01bac3cb185e3a5ba6b4b23de3aaa86fce47af974b453f219c6b2eb3b8a245d1ebc5831d6916b52edd8566d1cf7ad3ae4044aea4742d8aac5f27c3e59c99624d97533adf2b6575b9a9b2cc4a20a4d8c40529a56716bb3f139047240a0d4ad1fc876c691f8ebca15f20ee4ae69b0d786ff5f9d555d5d9a595d0ba91ab9b664953951b7dcb6060c053da74e64566625c3ae577337f36b6092f9b8aae74fa5b732c10e19c0f5ce9d37b3b955cefbe4083cf9d0e0b212f7df3db6a2d66b10ade6edae9c413e2bf4e67ee43b6b2ef26c7fc24fbe28eb8d1253373741c52ca9b1094524a39e59c734a29e59472cacacc98c932e173cec9cc129b75d239e79c739ee046cf70b8d1e71137fa0e6e743927ddb2f188dc2c250f2fb248c1a6c352ea00010b23b6383966ac72cd4c8a5bd1c8a711f70d3e9cf98e48d1c8281a590ce8cbc428867d3c454004275d087153cf4546bca0e7c23461c41042b8dac1d06d40171849e9736b3c1719418317f1c58f1bf9d8dcd41c52f6de6b5333e53738e0bc61c10f58b1bbbbbbbbbbbbab00c2c1cb22a4bc742fd51d05869d00402878e9386c0c4cd418a106446cf1d26f5c2e6306276c704e4d2480744b840986b8f2d25557059e8dd963881144f1d26b743af2760c42cc88918a2c0419b0e8ae4d646b1a0d802615535074e182c90c5dca60d285ab9118a2bbdb5671f9270f2844ac6828d1cd804290f1d2519d8e4cbdb0e84c1e1fa20af0520a51e5a5b31037bcf4984e47a68418600a1c9c88220a2c7aac9060861ceea472915aec0a62480b184fc5547686c9affd1cabf4a62487aa01e286ef2220ac0802a85d46a08ba5247a98d2022c708892831bfc10bdc034030f7cd0c413483488e28a23be804183bb9847d5d80c608b9f137cfb4d3978f3030dbe9dc3e12f3d8461430f7ad083124c8c88a1c98906d55a4be448fc89519218893ddd6e59ebb6d65a5b535383c176bee248fb7c6c8048e4418128c21a60d6a45188c0f2d9b68be086ac64bd340b5322927967d4078b5080aad497edc176c676c676c6d664f3a1616bc4dcacb65d9ab5a45bd9eb8a5db24ad68b45aad11ac568edbda00c2292b1ac80190fad16948716cbb7cb206bef4da568b8a33e9faf7d64623a6e3e37ba0f596b0638e98b444fd20e02ed9a711a28477d3c281a281a349c86060da77194a71a927294a75034348c9832485a7b6f2ae50e823726226af51faa27db72d817b20cd68873bc6fb7569a2539d5101994cbb812578ca71a12e3333ef3f1cc6c282f76f1fa25579e6a080d47398d2f76515947390d9ff15443687cc669be7e7d2aeb34be060a92ab56d92f8576cdf8ccd73e5fffc8551f71436b64b9ec3473bd3deb7460be93c73fe34dd7f5b819949fbc0ed8cf360f6590c7353813141414d44292eb19ef886e83364fdd1b947d3333a846c04ff4424e9298e78af1d865f2bafa4365bcd008277d1784695002930f17cb346f8b691986695a86999edcd01a3d92446a21897dcc5b06a33e0d4e97f5ac4c8c635e07ec5b19af5d3248b6acb5d71a055923d960cac81e7ddbcfca787c29321f0f0cae98cfc81acd48731b4711aa5a53fe63880d8e15b0724ca56274cea9bcfaf0866bacb5d6da3518d4bab853c62fc53a6eb8f593627da6deeba73495a23ef4c90f140a2457181236a886d4ac7ea269e9edf5ed1a16adcbd64453d2b8303316df1eb72811d860f7c7015022d9d278d5365ea86944aa6fd79234a5505b7aff5043a24632bc1f9d4ec1839fe7213c4f91050bd03d6184efc2cdd951eda8414ad43f77a343cda2557cf02480377c050240b96a0de97b0b6e316b489c53b9352f422dcbb73704a82b46d7b48f070657e61a9286d4acec23563d1baf6700703988714a1d1432811c3644dd544ae96d5b134a29a59147f63b5db7323f11c956f659fbd9b86d4daef4b6345cd509d847cfbeb327a2226ee8b40866d1a18e4e9d688fe2db6757275d5dabd2a013ccd2a260b0bda98862e3c1c9b7144f3ce6d58bae5569d7a2682a78c0b60fed6741c5871b0f128875849c14cf3a8e4e445fbe7a0bb1fd4434853c8e261fe874f7668595c69f18a28dc9c636210dc0b7af9095d039180bcef78cdc724ee6cf32bb471ed973946d629bc455f13ba13f3acb1693e8a2b2d31f3f3601716995d860539fe844666012ebce060c2e75bb43fda252ddd2bed92be937b5c54e3a866a304ac99c7a527adc957db357f48476ea43fae81a9ddb41dbb4d35571aa22e643aa631e1dc33e55b4ce535dd53157e29a3c534a211bfde01c0c00e1561843d2162c84e93738a00f2522468efc44e9564a280914a3253d3eb463c84528b062245ab21c95467d8cedc97c54c5f654b1bdfb91e6e3c76e8fcd7d6c2fe663f45454451df5b53ded63f4a89f6c28712b905c4d67b1d0b295f9ac3f3fa787d4cb246201661561706e993d42a46d283267661ba702fd74af40b2a58a6e9d5d53153f550a996fae82e6f67be1d33e55bfa079f6a9dad99539bb7a665edcb8e442fcb613973d27611dd3318f03ac637a7bdd47ea1d6970ba36c57ae68373903cb75a88abe9d3869f73b219571c611db3c71268670fe6912433dfb2e1c3d32c2e6241d1cf39e79c4e3bce1e264c9c2ab4116d3584487a4aed7d9317876ac030ad6ab54621ee166a16e7ed45d1287a88cae212ad552c7e3d97bae4bc300aa13e8c42420dd670a9b7839ee3c64345f92d7243bf35173d1917fc26b9f654d5b98a2c9c3c577184f4d153d56fc7b37e9b5cf42e145ed04051c623918fa5a2f0f98d7211a82806441fbf24fd48b0dfc07c2c06e9378c8b1ef783df2c17bd986f8fab98c118bf655c7b2ae95cc5959e978e7aeb690fe5b78d6b4f5ece6d2871c32874245bd147ae9a18e21c22d93239ad484f8f60907a58ab3c0d6af0086645133048dd04d4bbfaf5fb4cb81cd8aceca91531d8e2c31c4f6f4cdd99909cbe3ae6492f2e31d460155790f8d89dd07dfda290d7bd66821bbf7393877c04c9d2d2120a4ab00eead453e0564c415c51a742a9fa851126aee217c6163cf530eba20cf747839dd7835b3db442cda24f8b98307a3af3d463528d4fd1d092252b472a789e72442356adf40c281534ba093f6ad2e98be78fde714e741b550437d43cb3cfdcb29a77ed6b370b6f8c3ffda66adc06dca8092ed8fd5fe3cdd27c736fb12bd39239dd68a7b36ddbb67998d23c2fd49c7a187fe62979eb25918ff9903525a7d3f6ae631d9189c2b8e11cb60e66cc4e63e08f5f4863f8c83e198b496cc44424749dc943d9999c314de34212429c8f270fefc3609e218075b4b3635e02188491e2dbdb4b883cb22f27eee8fb31afbe2bba07eb680f59df1e81ee04b6d7b82f9523571d99074edce1d6ad6cc7892db36cc339faea45a5203c4ee46102133ef00e7e1398f88175f08739dfde53cbdc7e66bf7893d5df4e31341fbf90841ceacc198e9fbe135f4a0efcfcf88675c498653580ecc6ee3552d7f62ab6d8c5833f14c008ae90c6b787fd99c0c41306f9e36702133fbc83bfdb8996be584715afce12e4568d2b493d1400eba641e9710ecb020c4aafc12cbb5980592a06a5a71afc893b4a78e932002faf742b7b45d1721446a29755d0b0e5e590e95505931d3e8c5682c2b8c44bb75805d25f31186ef046c5ac200cca1fedb225c4149a5e1e297d8c21be5887f42dca483ffbd3cb3e4ae1a4b85d3db6228928c88d6c4519e2ea030c1251c04b299914ce7d340bb2d52ee99bd72e229a2bc9a40cd75f5a97f418247482bbb9e609893f72f5ba5f04922ba945280d4a8f1a11377e3741dcedc5392e8c20a8598cc1c49f66c5339e7e304357e6b98a255cde47531ffaa4c14854bbbb018d1e7b809cba0bb29539b54e876818312ff3e859df38324b939476458f5d99778363f3370dd2fec06e07b71d89084ba594c47ce6e815051ba4396ec00629751f5d894882196905604e9dc81149998fc8960c9d08e7784c3533eeac2e3d231a51090dd21c393a9d9b326e0bf34310ccd12d231c9106e90c6ec848d4a94fa05b725e9fac061bdb847c04e39bdd1ac66357d53a9b65fe999d9917decdede64e3b1d2931d967ca5ccb92ccf7f9cd6d5113afdf744cf8e103e77b34ab88f52dc8e64c6e166a4edd84cd4fbe39f785479e73188f07c6afc773fdca158d19bf38950a7dbddd655ce67b01c6a3b38b7e617c934feb27cd4f9e2a88f699675f11d3a77de785dc9764fee6daa6ca7c7e66428ca7ca3e764d12dc1f9f8f0689b8955df701d8c7d1adeb0f847edea871b64e23662d8a9a866ea3caa8f48cf7843d0b19a2110c000000d314002028100a06c54281402822d2644d3f14000c7ea44478509a4ab32c876114a40c328618620c20004044606686660402877307ed8b8334560ccea41610ce8160d270b2b2cbd330485183a400072eba1382b1e4760861205b0baa36aa81fd256c69620dc6e364bd52f1eeb92050d0efbd5204d6be66306bb36a36c86e16a7d0c937240bbcc9a703efedfed5f08899dedafc41f3330ada51af9210b5587f5d4e00481ba81954daf3910d40b604ad11a2bba808179845f821afc464b3de626a25705be2b8030949c67172f1959d035303dfa0e1636f3b3176f6ebe2061f64ae05eb59f5f8bc0824a049acb41fc35f1e68d5d275a0f8a3cf4077eecf412861b62fe7a0c460b1038ccae309f398aa8dee0e771adfcfd16e3a9d051ee4020a16bc3f3017a67989c97f30b035e672298acacf9ae9c7de042e61420de782ece6633f162bcfca9ab88c96bec6b966a4a56b2cbd7f4361c4f496406249d9389bb5fc95ceaf171014b9b90974dc808938ee5523fa18f842b8d271af78f240eb4370092a92e025b0dfa4960c0e11994ab53bcd8ae4d211970f72953540df4f904391f057fe9f3ed13a3e945d3f0ed85082ede7346f316230fe54f607c5edbf19c32215dc697397c130e3fd82b5030a7b50c3473d19b84ae5b6553048b281b7cfe980e8f9510f85e7de36e60233d9fe386797aecd0510fede4654be41e948d1e3e15049171fcee857733fb29500b5548d61bb132bb841c09186db0f3e5c416aa33811b13398615e4488b50a4710971d84c5903d30c08f9f55edb1b082f629ff7405fab1ad9a75049844c59eb36ae6c2d55a11ca8be5611bf56c5641a44a807ed5b148c36c9aa871e907ad0b3a4f8ab4e868b069857ca01b178e59cfcde6c5373cd13453d0f0fc8a9aea05b361fbc0e790f4906fd6857550c21bf1b6a060da0f24657577d13e3c8ca25251a515dc54d07cabde3b60408efda2f50dcdb704e55ac8d722d34460c41849cb3f763f333f49e4e6f1d7c0884e4e45e77663ec270f3c7b6904c2698e49d120ea277cfbb5aa8872cb81dc9048f55dfa0d3ae59ba86390ecf546a2da1f8c397f79867cb672f7ffa8cd9c234909854638c825a6a201a028d62049058fb3c8cbfbc3b52350d0bf388b5256013eb6067cfdc7416bcc503cf0bf0ef23d9d86a331f0c5c93e8f45e26cc272cf550f738bce274506e37a257905cb89513844074c543dcdef91431a48402155a8410370960305e9c943370eca6c9384789f0ed80ae5496a12a4e91a3bf98ff451f118c5be947530d4da0348af8e4b7c5e11a8f59ee738d0fa1f61180e86735deb84facc77a1b69c83f8f9900ea80b97af83860ad1dfb186c09d42fa10abaf1723d6c44e11186488c5a4b783a4776b8805aad91745686782be1e2344b7690b0c772156ba07a57de3de86a486f2c4dddd46160e28d24027c0ea99e01c85f047bc0c8cb5cfc8bacaf9494daf1fc4363ce33c3d437f2239d76767a0f072bcaa5468134b5ea6594208856cabe09367b62b290eb7f58943357028d400e806ba3b3a1a879f5b52f940a8dee0e23f1f7ae68305e18c10f0263f6dbeae6fa2a9be78151dfafaaf32967560715aee362cdcb7c56eb1386a4df4a06f0af2419abea55b71277008c5c937f40b591061b254569fd2f635b4eecc865e184804084fa51ad36e1f0bcbae722f849d08060031ba8d57b1fe7f0b93dc38e066e8ca166a92939a21f1733be8554f9430c77ee82a42c90d94b0ec11ff7501341e589f279c66d9c00d709900c62e1a1617cb1960ee43b7bc6a2cac59afa94800548ede08f7bf1422a258c9d569fe5f8ac47d8dbf0ef527625d1304d5f42f8269f4204dd002286ce30c162d298a69f0ec024334b54130d1373c2e790febce4b28a2cc2c4c5d2dcc5973c5596c6c0394de3576e9f91ee8fc8db331b2e8a26e5e5447b766dac7b1083f89d773039e4fdfb6d778715523f04c574dc86e75abfb967b8c21356af50e92db74e11fdf01ccfe718feaad885fdf47bf6056a65924e5c6d52c446de0240242ff358bfabfed0e00fa71153fbc7ed497001ead78ea33145ae4c19e35fe288582238b33215c94a16627cb96c11e6a09b598e8091df2f39096cfd400ddf4dfb17d42403184437b69de20edceecdc9ad421bfe870200888141a4639b85d4092961c1dc694e530db8ca9e24077ff26c51a1a6901b7d7d848737fae61c3d4283a5891fe5e60689ac1a70ef0001ac6d130bc423ce62ab59b43c301e7742edb3cebcabb86909296a444b7d94c7dc0a52ac56f674dcb79fe581e97c22fffc27f787ab24d7e33fe2d31b8218b83aaf7ff5d190158fb3d8c54c69c08062a0cce0390383a72fc69e0bdb20891d6a183492d530bec184a91ca5ce31cedc3ef60f2def1318d6c03a20d04614eb006bca7e5217cc19e144ab964278b52f89e514670f45342095e3ed3c78c93e9602c10b71187d08cc7c6f14c24bce2f52054bfa3ceafcfe302054598ed84e4f8d29c30840120ae161a2209c80e056d0dc562314c8666550b468976f6c87a613363b6cb23d049cea435614afa9d815b5009d6bd47898a308549c08591680158197f5ddedc391d0bde11a8fc317a5bc8e6fbfd0646d0d5f25afb5d115a4d409eb5549179fbaf8d5bf7b87b6e2a8616f004abec32b0aa7537710a71e1f97866b375fac7e2f58cfc18e8d58f139140e9207a9306a0c0befa1a82e4ae2b458e74feabbad289323fee22822418652e2a3eeb0aca3aa18c2226b44154ac780050c4faaaea5e94926a6eba412e718ddc1297ac4230b676f749f545b2bc2a6bf0488ab5d2c8328b16f5dbc5c812712eafa08057653d31d72023b169f850e6dd1d0efa29cb0c404d2e3ea1ffada35b288216d4237a8a965233334aa19989cde89df6d61d80d0b64877273534aed08b286f2579879ed3631bc2759da65f402b1517fbe9a413511830f67645d406bf34a7b348b0a681043550e3e4f8c38925faabe62773630df374780ce3c3316942463b688e5f6898f18f52e02c0bb455bf1f6bbcf063811adb896c7e45f26f7cea92e8a767397450c773c4380048b889d223dbc278a09602b16826b9bff52dbd7a26116e8c66daa56b608c99fefa6cc79218ff14de8abfd244973702444f7597e8804b7324ca624d4a656c629d837a37b3bacf8108def439e3153a10ae03d18124781451bf554d87b86d7e100762d368409a7e770ed03eb44f74aa9a945b2f0b05ce8e9bdedad79d5ac1dd3576657b4ff3834d2861c60930ccb75d29dfa7b8061cf6d06b3a3e5c617ecec2a999fcdcf8f9d516393e19073267d224e214d06610735e63d6eeb4a49fe0e333a0b771c1bd87fe9ab98fb29d0b4a8e9487e04616693608e5e292afc8d46044459e4e993c8fb45d4e950714bcdc9054fdf4c4567e1771628aff91d9e2c8a17384c64c6be29e4a3c2c4dfc0590f03b9365d03fb900b39f847f782251c50b56f028c941f121539f26eb85eb60f47c203b9c8d05a3e86a2c35ec02ebc3d72a7e5c2e941a7bacdd5813d12e43752c711a8b13d33ca5d6167e548008a43148698146e8465ec19731db9d218b967293d78e13a4a0cba475e6d143464f48ed9c1888ba968b0bcf14d7a1bed7e360b65d055fc095b3aa68e81da4974e54f42905d113e69e33d3ed2c35c3f121628a9043b47ac036c5933a517ab294b195fae568818c18933c8cf50c3175acc08c7b0d587e6adca90e2f094901d8ab0095b008213b816df0b99c38a8a758930c4bd15ab18d1b9517f1fdab6da0db5c690e26f76bcc0814197c822909f80917d9fa23d5b1e10c64e34dd4ac21359efc2f13df89e6004a54705a0538f8311ae0ef0aca1c9ff51d934053c1651916cc38db41dd46f6ff2ffde8570654560ce9041c0c97406c126e30b3b8ccdaa715d400e0656a44932b348fa97257878287e600b1aa1633c210a52ef91ef44f769e7d16577cbdb5117be782b45de7586d99cf4118a72fb92b9703849c1a8203b7607906ea1900e597dc7dd08f069073c1217da952f1785089aeb826d7239e31ca0cf33cafc36922149709710df6f159c59b67c7399b3242e3926ce2ba023093f50b90a8038af07aec7f8c6fb777df804e6a6f4f1d89024dd27c4e30c2392f230068190739ae3d1b97db90ba1ec178aa8c70044afaec518e531dfd0ee21456b24ebfb047e24fed10a1dcfb40ab1aa54f8060655a3cd41f030da2f6c28b0640b881692bf9f5a9970f0a14f2a4d5e40ac75fcf93f30681f49b508ae0aa3d94aefac90725144cd7ea5edeade5f4cdb7ae0506335bc79a8f53ecf569e17aac0b108539cae5d79e772f8b8d485af1c4d993b1b8e94a167cd7188f2a0ea54678159a89e4d3c9f86ae27bbacc89899eeef309554a214ff37e2d663fe79a5ea98745401ff3c5a1e8563fb6158c2eb008da8a7bc7668346e8e4fdf4911e9c82153ab972078faf7d70dd93494c8003747b88b4ed4db4cd5b66aa5c07ef475a9722297d8580955fdb101465dbee5ea93e6ef801fa5034cb548756f3ece33621cf79c8b681e3dd18691a0102de7fef6e75c516fdfd2f7825cd093cb45066c995c1c9a47b832f0d8141ff2c3849c3455a3aebd6d0e828d9b8100d942c67d07e6ca6765cddbc63bf404f81b2e2fa7da39586aa2315e864664e6ee2a1abda62a99128b6c18ea5f4a9ad007e6a2cca632f62beac96596c99c72abdf2e4b1a340580fda6459848b0bc3849e77fab9c03a2a872b5d8a72a364d0dfdc4dadb1697add77994444fb7ae4b1cb40bd16622d141d5e089112001d1389177c1f96ef8afd2e047f8fae29e44c8a6d012628546c71eccd004729d4250b51b032c81176df1f94099c645e711fea77d0af9b62222bcd1c7b3c4b0c8ea9d35156ce2e369e542b2b8e0c74fac0f891a7804f1dd01ac0f1f1d2e98a8580cf01c6d0cc72d67230c3c7f2a80bf5f3583eedfacd06dc28606bb16842aa2ff90b183dee4c76d69fdc98f48b550b35f65f3d3da1936d6d3392a7b0e515845d9ef065104ab468adfae0e83c8f38a0ae257fac6fac93b87f46e243038d1966fac3df052af4f738c427982976f73105b6225c079d3d25e667ffa29fa90e5e2928472f11f7490133f531da345f9312c07754b143b0a43b721770f8a2b3033cb90ee67477414260116df7df8b4fe150710b463a91887d1faa2ef5a5277ba035181823e3a32caec45abc2b89cf70246517ada31e24cb4204b0a6f7344eb655845f8fcd4608f735fe1b29d36a7c15eca5f05976e14af5840825c93fb888d3f7d48f5d19ec02a92bb47ba7505f9ee4cbee65970ad406768928de229104115cfcffa3e43a0b1163a357a6286f06e5efa88b7266c8724651845ff0c13571a28554f79a88f6c45caaca74b8ddb13570387f4c8e73a46c66bf8a9881ed1cc9cda2fd98ca0a1e2a268e14a4fce4d2df87d2204962ed23f9e820cf8344ad6a9c1d9c4054ba537b02e6c369693870472fdec3548ada467b7a01983a4bd76a28379c0db54301a4316c6fdfbb9f645af1e97d3d6faca4507341c874bae13affb7581b20850ef9981172c5b268ad2fdf017069e947805cd43a44eebb15c172ab66ede934f280a3bc389cf1bcc2d3195f7e1e01e9e4a345a8f5089cf4e44d76e0bfb82011e8504c881be19d87ee4b23771eaaa8ce35c9b5a10d90be1dab7a93b1f06612681af984e172b70e4f133a2e5bf0bef1bfe6847acd2d864258de21a0d2140752aad4ac120738f31f8d75182b319131f87b2edcfe305c95c9e39540db8f26f24cada85a21029054c777d19e62c4703dc2e70f30a341a6a19a5eb22ef2827e2344d542146bfe3c2782b66d056fd7e5d1311318bbd99881d86afca32bfe49c59e30b255b9f53cafae7e67299f1f8f0c7253080e694462868a46be3c4690bad11ede78f840210249ec29e604519c2a0710d98a0d3c96eccc1adde30a5f2e668227b0b30e72136735c71db9da18918d885b4160eada49869c510dd6968b5621e06ade3eda12724e4fbcc3ce1f5c72f9ee051b1be545cef1355696cef9c44ad0b0e3438834c9ec2ebb568a479cc9bb2ae0ed80837d054c6ac04be3c9985bbf366a366421a53c907a3744cc9a9b2ff6476b7146d1990498dd14b8dc4449619022f3623a349ca356224b156cfeec06dbe59a08620f44200a57943a971c740b68464c4856c58aed27ff6ffcb93f24455e7fb27016290aab036c547ec09022aa0cc1057a60b1872fc912af5d1e3459f78b1a04f6c202084a0fdbe13c67cb32ccfaae11db8e16d57c78a3ab3438004e4367efc9edb20358a2360339be5f43f14410846c6857cad9377d51d0bbc35870c878ef7b333d1a859543466634015feb31080a7e3f45049c2c2674462bf675fdd21c20df12a022d5346d75936f32feb06936a566a0ebc6c8aacb81d6a202ba78fa9d136c3a7434ad7485624ce4541973c5e8f232ba7d783a2e5482ff9bdb98ecafd930e8df0a0fd608492b8775646cf9c94c1ec5b80844f9798bf2bd629410fa67a88f200f82cc448a9264e0fe33a3bd7e60d9c4e1e47c5498c0102bd14056d055011021a4b606ec36b124ec9c4481bcd4166cb1ecca3b3e06a610ebf44c2c9c6708b0130864eff8d5ba0f83ec36a502318438624ff3982ca5f6185608e5fb811a66def4bd532ccbe0f92c370d8d876225c4379e3669cfade531d01dcb95d25be59b26f72a7de710b25cbaaebdb6c13b51b000bf480fa58bfb83cdfdbcca06e61bdace5d9f08022fa83e03dc26fcf6dd2f701e3ec10edbb22e4dc9e5501a6af5dfbc8d620531467f40f766c0ea9034971f95ffcef391a1e3a997ddccaafda1da96f440ec1511fc3802e565bab8959c9127367e16261904491837595ecc6f0d8d5f98ca8c2d2d350652f3fb193bcc7816240bb2b2b21123e6b5400c062df3cbe4bd2ebdbbf82cf40115986ff5caa0bed3c42e2a6a04ba96ffe9808554afa1c1989a154ef464f39b99a3f9611a4db0b8ec07f6b50f8a127ec4887d82402931cdc4f41be946dd277b960adf73b8f6b3b27d7e265069709f5ce8607e73d7f64f8b2e8733ebd6d56ca36bd649cca96b6ae1a5c247602da871a6509e0e201edb7e4050d36cb77969e695801129f28ab0cd3dcd5803e8d4469d46d1d298ccc41cffba4b1430817403107fe13bf7f690e575f75bf39a062f87af7d146ad8d8198d58b6c0f461ea30bfd23c018ddd4226f82bb4b2aa43c025f3a4afd157baf7f0297314dfa641a94fb3f289fb47b555d7f78168199d9528e7b9046e4e42dd4128c4aa3c81b3c16d4f2f033e12a2c15b0522369a992a84e1397b6aab12ab1cad4e039a748d739ce2a884d6eb65673370f030832753d7f69df5cc568bf940f01e3fd6a9aad0a9de5bc641d55249ec624fcd01dcbcc1fc81fcdc81749fd2e8f11aef22ac25e87d0cfeba10e977f8ba3b2d52fccb19262c3487573b79bdd92d90d12e08be2f38938eff2e7840d763f279dcd8fb1bae8ba442473476c86f8e843af5b8fb1ddf550ae32900028ddfc4dec54d14c28193f0f21e150cd50a2949c1fd406f1af8ee3967e4ecd5f71be094126b06d7ff785ceb7f757b74157dca0d6d69d8e91b30032a5d02cfb2d806f4bddc53b0c5dba8ec8427662d6c452eebf40fc3326c703a37120b8c4a36c9a8d0ad2e5e89fda06006658ca3b4d59c4e079f0014cbb09fdef1f5c253345be9e91a98813697045a83206acca9bb92a2549dbfca3d413819113299243abf92c0bb8193c84aa5850463bcdd262639a252e1a84e8f539a205be1a2f84143d70efd98888940b032b4b913cd27bdc90847b7f8221481df5a8c6742ebf660dae7a713a4216bc6af3e6f907a473de904826a029fd042ccaacd672dadde13633b71fe262517852b53906796862adf8c79d4ad82ceb095d206ad9cce7b68363d447fd669ec596f2aba543b60287d4f4b9e8570c039d04cc597b407021e982614be9a4a34903c9faa51e08b44218f8137a66ea6a79fccc47598c2b29946dc58c6b7f4bdf308483306c2c69f85a8769a1ab72d4e531df6564331fe33e2a167c93e81836a9474a4a426c484a82e7383638b791d9da9e834e79b670b68ed8b51bbfd19443976666aad89bf089244a53feec7a4f3979734f99c464a0f573e1c46c16e064b8aa52b116202407c699cc789032d076938d5f6d0d683a0eee68b916247757e971f4f7bda393d9ea28384a18421ea1570b567a505751d67511de1d37847ccd09fe4b7f7933a490888b7f128c9b22caf5766e9b4f241c243c53da0bb2f01c42b4e75b69f796f5f3ede6ce63fdf3b4b0482983db52c880e62f14f4af58a4c25f5cd028d5a9dc79a099f81fa0c4c6c24102c38e3462fb328b6a2d9449840abe64073d9cd813c23e760b1366f56c455ab8967f81948a0d49f688664f100a78b1fc680302b6d2d95e7011cc869c27ab88d7236a4e13e8cc6f2274122555ab5f193338bcd7f3a35c36662d9d93b906acbda0de3e0ece800a4bbe003c0a83d16b2a9a5228717aa3e875c9e295311c512f19635b7d6ba4c5ab5b43142001571f2cbb5e86d6ee030dccceda2d236738e22d5b8c340f78fe3993cfde37f7c36f0629580b077b3ec6fdae0cc05259471c82c2e5d9f0d02c98811232cb411f534f82b6a0184206098e7cf876c25e10cf6832be1d3af86dee7f065e81b45448734d81236d0ebd48b2c3c2fd206aaa547a1e2c0b9c9fb815ee173e5c1d038024de3343294797dde67793a8a12a915f2d103a866f9c268fc26fbb57e5414e99482bea1049737455e8c48d7b9faca52e47026e35dcdb44fd7002daede1fbcd324a4c15f9303d7d719d61bfc69c5c7b6c510d76d875e81cf9d4cd5c1d6a743fccb12b9f8c3d9d007e7b6b3bd1c519ec429b9384b630eaf20e9e05ef0b8e8a4b46e3cbbe948c19ccebcb8bb2124c993787c4aeb6c88254ef17301a9343a54ea7dd0369863032ae7380c307b58ad7cdd509b3a58d326c1bf625de1023cc701c1e5787d7a9de617d39157ff4f9b4ac2ce9588b1ddf4e559eac5110b873ab175b4cd2b01ab1667ba4345421a3efc53670ac262ca4f8fec96a70761efbee9b5dff95cd6737dbb1bf5c48af19f43d1f99ac6a44608b273a727455b51d3e112273bf921239f1a160bccf47e770d43bc81cf1ce20229a0dbe633b78406d48426b4995c0b89cda1a29aba7bcc01eeefea8508ac76894804ce493197dcc02ef4c5b35ca864b840461f004b015c845c0f5fd9c724590c16c8cf786602f6249c63887aee6b2615541959abbb1791889003f19d6105768578a9aa1d3c2dd09921ae9b16582c863b6500fc0e33f6775d9782c5490a1792d91a7286d07300c62c0f0b9f974d63b3c42d092ed29e064e51423e62c0d69ec113dc4092adf8afb0323ae56bc4fdeb4747f6fbc2c0664e92211d0d3e4dadd9fed80340a08dd94bd821fb881e91d213b8bb56413230548899e0b96bab993e4c4f095b9fe894c89dbf12fa43894634e6f74e0aa7967de992bcb6c35bfddf76866835324ba0edd9e3e9c8750d9355dbcd8583f34448e0be337e2bf0714a5d494e80952824266c23efec1c50a91c6993056c133c775badae7bc5d5d7d5b516b72254b53c9f7981faf164009fdd5d57f67ac13bc4611eec86f5fc8572879c21d0419d0a3d1d048d45fcdcd0eb9177ee0b1ba0eb977991c29e0811b1f5851826b9505eab6216b5c3c7eac4af4757e52b616cf58d3bf1cab1b1a89acd9449d8dbfc10cc6f409a32790e26beb293011e6440589751d0e2398d91ab4c5eda3102cf5d078748d6587f674aabbafa45e4ab6ebf79c92d21f89065d8796378e34e4c1267bd24f4235961c6849abde56b9f66eb4be931638f4982f1817eaa021a10a17adffa6baeb639fc562f0b0da967c155c63f7e66fd2f4cc2bf6f319b38e9d25ee8f21a8867246089786b028b04f57b195bb059331c11c56195c1c18bb181f4ff0c093f22c5aa0d422ddd79c0453058e78d61219fb18313b36daa277faf02d74b092b18bc381edf380fcc21dd0eb9526bd1f3232aeb6cd33187a88dc3ea1eaac4ad5e271877a5e257dce727427edfa6637abce8c064123a04ca7e6a59c2b9b0c5625bc27c6671da20e6ec7975b8bfc2e1e01f88489d2f40fdfdfbba688945ba380c147e89eedbad0b88d8310b005e1b9058a17e11e7f67bfc8f1980115e11c44c082aa535597509612f7927dc7319b91a20dac92a06d01f5a31bdda9c2150c5c2ed01fd1779985a76e2002933d829ae0abb541b06b431e13689d4adc6c4bd8c93e020d41cce78ccc43267c6d07dd1f499bdca8bcfbb50d0f1a53c62f794fcdf7d22ce6ec5935a7e0438bab54e82635d524c256ab22e909ad8d6c152a1fd076099d0c68c7de5488f9043ae341d3844eaa88edcf7d3c9829b7ca060364b1acb12649c41a0cd7cee4c04bf271baaab1d049f9e0c87de92393722382370340e2c038c634fbbf6c07304be9db30e632c6be3830490ccb41c97dbedea17dbffe03a555827bdb17eb57da6226bad6e390b52b6216d69ea68821cbde4230437dcdfc5ff94dbd172cded0bc5340fccb68fea6c9f8ddb1b935b86dca712d299cfb7007811531a0fa7bb3db377ba5e138d25502c26f0d968a3a0ceaf3c1e02927e0a2075a670b9cfed13a05378c6cc051cb045a33bbb3b9af437534b984f96db550da3eb8d66375a3451faa80ca1dd0590346d12b2ee924847a9511600bbcb81dd01556171c7ae4d3d7641a3aabd56b5f80ea8c5f31c6027e49efa00ee29183d55a25413df243c18e3563e8e27e05e8f8ab1dd7fbddc81b784a777c18b362d8d4ad8a7f555c1652e8216f6ad00a33b9f0b8380ce50d964da43b6468ddad9534617fbcb7790f3b0b47a744200324f472ff222e65ea77419bd5a4261f22a625bac2a283e57e50c6a8c38fdf4312ed64d7145ebae0ce059d87b0d95bb216cb6356c0eb9441f5d4eadfeccc29acf2c1b773307e2df84d3da6b2ef0f34b8b265adf6326b30a9ace8943252b5ccbc44d81bee23d65c28c5901e1d9f290b9c0cd30b49d2a6706016d17a101189eff6288ddf18270f3bd0cec28d3934bbd0308b5769bd0ad044bd5685d523ef521f0655b1e057945758df0cd36edc0a665a543976d0619e71ca8c91fb80d1f3beee0808840b9c67de075dc6deb414a560b89e93815e6eb79b358b45dc8ed473bc5d4dcb6acb07db926afb34bcc9c50b9a986c488584f39ee7937e51414401746e03d2753003882f2a6d703fe6070cdf2d8e5389dee68be769b95202bd15336513a772b7bb84038d79c163e6d4963b6ad22bbce3637871a5b770cb3c3d0e14401fa9c69d15303cc122c3456a48f17aa365728ac08e9358066947df6ee621f9a460b797774aa2e360ef8b0ae237a00fdc6d9bac140ede54ae7d9e2ef1440a1567d86c8bd5cc5fe88d9b93bd600f8fff669e76dab4a4982e5830fb92c5d2c0a844ead3bb2e14173da9f798e8ddb06309289fca1ebb4b367864343518efd960b1ab0303c4890c8fff5315ebedb4e3242b96c44b5d995afc1bd0c50efa4c35f4ffb9c2a1e382af112540462324aa0dbff24ed3b6f2a12eeb4f34af54031bb78e8499a86c861dd05ceec07e022a20461e53d8d0b36a9d3b52940243dd0dfa74a8d1416f08e72806e88db59bfed915d9219a2ca19b9c7386aeb61120b8e5da0ea022b91d8d39b303fcb1c9a13a4fc5ef02b5cc0e0a93fdbe293540b5dc08ae53e8878572cc62787fd227aa12b7d54cd0177a4cbb344a594e0c75e4bf95c22e1616e0f68b39a48fecc3aeba3b7f6fceb48cc996d8ac67d7777e4ace38356f42248f3d0b4c1b241f590d1823c1e103db0c0db628b6f632a010c2bd3a7b9490e3078ace3819d9eff61f261318e82e5cd4ae6af691fd1e3b69f630f6c2c672db83848900352c5985075da0fa14f28ef462834ec59eb12a4aec8d3c745dcaca07efd88a93f6fdd035b91c9bc6b55f6101eca0b852bedfb8ad0d755296014c3d5655575a01590a37a05c6040534d5dc4c1b1553bf882b349497cffa9b7313831f725b1347f1057f1875a1833ee04196586829a582a58d68fd264eb81e34e468fbcfa68743b65019c721a47a41d62d778fb7f5b32fd11bf70d3f545371fb487ee1628503d11798ffbe11a35994a3ec9f0d2317241d24e9e721da66a9d48980f164e8e5eed3e82fc2db2654f5ef866a1f2045c3130a3082d38a1d15ce7b8eb6012206940f480eb6a6104ed7c011dea6e2f9a791b951517a232f4db2b773784b292bb85835e32361eca92ffa710965b55dc00b509a164263228ce5c49eba4bb4887a7966aa8f4adb2aac25dc207ca0ac5deabd67094fdd19c9555fdaeb32d7a51747335b6e1d4dd80b37706b541fc0c0dc6e55afc26b4ecaa22f3b3524ab8d1be211b387ff74a05769dde1b588c1bd51a791dc0a678f8c055c983c2f26380bb0b59bfd32258fcd43d0150d92c74edbf26852947ef4347984b5a8e608b3fb908beb1a680c690de02a8d37c4a7018410ff4f77eadc793c53a7f6e3d8b54a64b4357a3441d92bb045c72ea24d8183123177b178a36778f5c04d07ed74ea087cffbda23fd97325ad316ac8ef1f4a3eabaf78166e0ef4d54a10c51a8da0f17c43f01b60cc22ac0dd8233b0b4c0c3902d389e42045370d16a8f5ac6c76417aa40465f4a0f60d7d7ff9361fd42a2c6c6785625942ba7286ca0c2b8a9654c971d34712f9aa08e81750b63c611b9efc8961de53308a153559a834247c41fc782791cf2a859352a92338e920f836fc0a5eefe64734513277c5f19cf92ae53a15f7cb78ac79912afc56418828be9c33b36956057dec091b759f1aad77d873452f5886afbea7a2030818e04f81802a4aac1d41ada6e40e619c2a69bf8ced869099d185970bf99a2136b7a3716342488f96237d4f07825b0bc291576a810ef408cc90845ca1662af045c5a65f9f4ec001b869d5fffdd8a4a1889729b276fee7fe546208b9f45db8dc654b4097b5ed5100ade55efdd9ee3a2de24f33810202aae033ffea58cb54471154c83f703777491d6562ea9b8e983964bee8afcd3f6c023f494246a9f02b84f78b960c23215a5228cd28d5c5488998e4f1ed214fe9f371ecae6ddc8e019d1644d55c16a5c4005876f3e172660158f6af327b34a2c1f4a8852d7cb9e0a1850e5d732048ce83c1965d8fe4d5d4edcdcaccadf5a4eb1c64b621f6564fa37d90fda4447f7d149b3fae1e463b37a34b70f3ed9af4e14f7717a4790ff73be8a601221b2cb1e9821fa08dad81512a0a6c13fbe64c917025aed98fa978774785ccced4efd24edd58108b23b74b064c18c9a554e02494b1f4805bf00a1a55dbc028db1b376ae20b49acaf2bef9c0de17194211a2f5a538709011a0d77dac2aeef1ecb20e6e5060423675fc9765b596218b1a198ea1c5fb7064439344cab816172e18e35d9a96879b911b31e8823dea53858c79f094aca942f4d0c2f859e9dc966722f12d436d3c2c15fe4172d9b8c9288f70802ce92064163dc4e450e31ecd7871360e5c4248a8e22392f2b465ea2a1ddcea53cbccceb3ce2610450c3b4b9b0a8f890d50ded49d2613a334409a0752deed6bfbd70a70e335d783615b4c81f5f06a57082829513ccc12b86d2998361fe2bb17815571cb80f0eebe8828ac859c59d62fb4709cfc40bf4c4eaa99389513126f33a302bc1c73d758bb24543b33cdb301ace674c4439bd048136c1c46238918b90978e07326392145780cbf988e0df81d7d433583ffe89720dd3da5da344ea7f97149b383017c67b3e703c929e2c6c8b8a05c13a9360e097fe5df2dba29bceee1c1e1b5c84e8281013787f283c906f7eabbeef010b9e3d12f8019239d371bc4eeb8f4dcade6c14bc8cf89da048dd6dd9adb4d101ff4d5acd04683ef5a2c55ba65bb8e35f7eb0d097d48cdb6106d8c4a249de52ef6a210a6224cc546cf92aa32fa5f142bd18a885703e0d5ff6266d917a7c3856ef9e7f08e99960e9277c7ea395cfb1ee8699d0329b29850a362672c16000010beb926f186261c85f2bb718a1f262be2784cec9bae2e4fdc3c8e21a5933bd778271f21856d969d015b0e2667db3e3b309fa13a5b6cbaa5b93b7351db8d3d98a36d79a4dd87f7d84091544257e7cb129cd49c46e71eb54ba5db02e72f2b7c7a7748ca96cfc849e12b6ad8f6d0755b7fd107a9e7319036adc303e32372ae139a8dd930363b46a40c49a7dc0d08a0afafde5a597ba120ce99b11395e492717c26db9a7419dfdb69be36372706e0b6da0f4e87a50212872fc115a1991881fd2c6063a47ffc934c0373fefdf193ee8a4fa2179998278c9607c23ccd3bcec4ef3f4a179accb05e2cd0d39ccb001f11201494898e60cc1fc54dd8ddceca5133e0c97a2961b091a9d6b4cd405854e66e0d1bfc9d721a65040d30ec96aeaf7aca4e69db87ee1f10d49bb1259c6c801f87aec86881afc7af89c375f4ae791cb13405138953c35677e5e6bb7350373ccf22ed135ef7007c90a9928a3fa8b0f8d3612911da2d7bdea030c9ee1872f0481ec5bf23114f2b51c8992bfa9d99772b8f630494c51cb6bf330fb1aee54c3a9c14942c4667c531306d2efbe81ca5403dec224095dc4fc32ad437bf884852866eb946770e36576cc1979ddcb344dfa2e3ecd4308de486ddc5492140afdea6fcc9f2b2a58c64c3c78a68d03c5eaf57b4c1f2326f94f97f383451ce757a92a129ec0f18af3f476015da437a3a3b1950890cc4632da73ff5ca4742f19a4b004851dadae5d589cad902e29040809fcbf4686779397d09863bee98c50ec38229699c96232a9e780959c2ce8333f7ca0d03a8741afb755d402ac36ec345752edf38a228a793e0a46ef35be3d8c22fe2f284eb6d330a53bd1d36979586f46110f0710619f68d1f175a0d4ac16476e0b8f209df13ac9a347528d2e99ed247d78f72b5e6d52287a5c3923ac757f47dc3a855e5460c013e0d7ef8dbea19a77c16f4a6f8b1b60b2ebd71bae51494b973795d98a3656baf31bf75f3bc54706dc77f911cc611f738f79ae6989aefb35de57ff4b6ce750c004eb5e98555015a06b984447520099b8b0e9b7515af7466a5d171e578d278c8667cf2b319aa8658259c5935e40057569ddd9a47126423666bb906afaf09cfd3368b83661597b1e556c189f2e70ccaaec8cd20201999a93a5409dbbda78e9f2d8016a9b8d8e9d7c0509720257a920e93473a845aa419f7c7db2b29c5029afa5daf859604d06ab5ef891afdb94f46929d444542e00303ae18e31aa7add91292d35c4b0ff5227aa968d0080a028d738eee14e6fa1420bf6caa50788d0abaeef7ae06fb126703bcdf4d0b00ef49b7264a6db50ead75f296a6b254c1efecf9c89ded3727204593255e58706c7e34bb45deb3dd8a958886eba189e8288b53e6d19cd61251eb18cb7500ba1562a3778f2ddfe44afa9e029582a5d5ca5154b89a8d07358c0902366d0b5cd8990a019b9e41c70a62dee4ad91f8f20188b51277879a2188694e2e79fc1fc2ec84a6ceb1ad8f1116c272a3de85da59ee5385200f399239dfc3f82bd48d48c62ec6029e42d4e0cbecff58f431fee94555e2320ed15cdd10863499b7eef98627d96788c24449c7785e4b0455ad98dc74299ecd1e60d052a8c5a32cbf206e7f47cbff5625afc7f818c15e8615bf3c5815ccf729eefab2b2df456f6483eaee77dcc47f952f478ec8952f857133c22ca1bd8621e4ae76db3595d516ae1c20b3e9f5f9a78d5f860e391289ce9f66ce12b5d3194995d0ca5c1ea415b61fee5aeb1f2a0978061ede139317f4faecbcb04c5e03d790b2b53505d9f13d95fee470211bf3196723e5d36eef62a6cca4ca5ef125f601d6f948c24da7c3b59e5093a75b639969119c5dc422cf77f0731571d1970898d7f1727287da8ab15400ad304b48afb568ef9752c79e210827e8d09a49f0b9a842676edd641b42e4704c310a557d96f9a2a6f9e662ac19f7e03945c5b012624fc8de6d77cc0bf99c80c694b34a2ee34a73d95a7d24ff6a4530270caa0ec591cf19d0831d519ee64c59f1d20435a375f6e90d0669802a9fa23b2aea443e07410b8c17f42f7d86473534560136126cbf9f0a28cdb0d1ab8476f75202c5f4506e4d610fb91e575de9dd2d08c518d5568d191ed69deb9bd626bbae48dd17d13f893aa1199b604744760bbd7d6b0c8340361fbbde4779ee6c137242c85a3876988fbbd59a6e4551e54c3275e7b5bcbd48e05d349a897efdeafe64869cdc00c03cd62f84f1d105b50c5aa6ab46973295a84b63eed7191db210586db42c152c507d76f77a11ff6428e0fbfa6df8b176b29a375aa8a77e444250c8d5991610f5708348a7128690b05b3930e4afcac1a24d8fda38e288fb62a014ccec760be7c70de6693302c79bda1de11cecbbf164dd3f9e942b75700c8187fa19530611366a91b8ce5d8c59bb29c39f86a9a81fbd7506e2b0cce5a92ade1b6091614471564d8c64ac26089aca6655dca6d46a31498cb8718ba39950c98c274833445078762c674e93063a6363500a1b53fd6d684ddb32013daed806cdece488401bb3d4739eb016ab01957df00177a8fbb56fb0326dcb97cc06f50e8e87855e3bef91d70610098f365279a622e1488beaa933074f0265711de0e07b1d1098486ff54eeb002883f5a90e041c66f9aa05f203444d5bc2e5b71b440ae09aa27a116335c2abe08f3279e7dda2069624c4e8f9eb06d0c83ccc88a2dcf824a311ee39853359d28213072f8851c05e37ca054e04095e8846e33c53ebdcd8e427aee44a6a00c9bf6c040d63986ab508096034e40d49d1bc5168b5a65be1751739fa821024ea2f85abf65993274f2a99e09a5e67b90f6b2b3b971c062751195e276ba7a103d82e3020a8b3253ff76218b9b44f5ce632875ab4e53c29aad59fa367fc57e9f17b066b30c1a11dc80b8f98f31d03b2fe0b5d7e3ee4935968a95609768bef3efe8168066968a9d8747a8862f4570250123029a99aea0ba70452c4f3058cb584d06adfe4581a23afe4b7aee285779aaff00b8cf57e83c95d90bfcbeddd15b782631bf7f2f00e169797f93f3ef9847e7b6dde3db8a97417fcadd8c0fbd014cfb129b1761f3a360b2e4effbd71b36e9b5562ff2f7e0f8e1ad2e07fd832d5b72a80fc3a12cfc87a7531fb2bc7cb876da43f97b0fa52075085dfb0d4e05d9a1f3d15d3075ea44305f2c875af41c5e437108131a3fd444629aa161e133ba96d134542f9d28605457961ee14128091729b3ff451636c15617e0bad229d183d16cf02714163a35ce4ab67026c08324957a55b2d059a3d3f1e45288423d9c28c37a60ba7b9640928f13d4bbc7fee141ffdb155360485b1a0c8123d6ea7615584e965f72d094e5926e4dd55680b2e8bcb1057be0a0ade75fb8349a15400f0631320f4097891299ca2d240fc738af4c4a94ca08db5576ba6e7a847c0fdae254ef5b1db7db1c576e70dce333264e1a33591797ac60825c6df09c7df6e6a1b84c25d095836fd65f57fa7eb6b3876c22bcee26f80f782d781480409714649b753c3f7294007ce42e4b23de74f416eb93ae8a8eebb30d83d2e994ca3f1b911db7f10b55a51054017f6715ff7d5609fddb23a4c4cd88836174d26e0c5b60e4f2d30d78bc2e299a3276aaa203cae32c5fbe66c77ac7d91e68e6f8c8ed81361e2aa82efc36cf4fbd7f8e2eb818456ea08859430b2e0e6032daab7b5c02581e1051572f51665483491aa804d2602e97ee5b67e069702f788574227050be8425245833eb4b606520698309b8b527dc83f118f42289d48358b8e2060829fd856d0071a2f626ef0562719bdb3e7f2ccc59e41a558c4688d686ace305814ac02102ad3de562c59a316e1fb4d07137d5feb4f16a57a0f1137680e9a9961904e32b75c02bf88dc98f1de5e38d96a8ef13ad0e258ebe702e4eb897f28ea16d44c95711bd35d6f4018e7bf015b90e46f7e56f7d39490b9f7805523542724a8d6023091384aea8584659dd95e739a7e5aef15e1332be204a48dfc84977a73a805c757afdab29e3116157b98a76fa95cf1072cfe2bf31a4bb4cc7d05f19bf6afbc675612b6a66023c99f84a4c7508537d7c7752a4c87af6734e09bd05c7d96ec068b9b0b171cd89a2ab4cc474341725773c80156bc2c65171f4c4e7e502242411bfb9c98402ecd179bebd41f43182909e392ae09e36973fa74e3fd5e2df46d85eb550f2f35b6a80dc165f326b04b9dd99d33b1fecc0c09cc2db70445b3dd8b069bcc3c80370a1eda2b801211d6cf35626d56fc0c1faa6b1a665c02d2e2d1ec1ac6ce70cd8737c0d96b0ca8b0da27b4d861dfbc259c7486cb6c3afae3560a924f7a4a3d53c63cc32c6a0e94727b37af39cb51e2a13f864921415c350572f1c16da9a27580401375b0937f13138d7a8ce945d0b241d70cf9746af755ad69d0ce5bf84ec7a8383d207a86ace5cf235d9acbd79cf66dcc147228dedb1aa9eaa8b11aea98b495520742220276cd3e295cd7f3fe5ef9d0d98f3b614dfa5d2c0246574f8f32126f28ab78357bba5986ee8d1c721774f7abd5d718db24de7064c176893a10eaf31220a5e3046e02907839e4cf8949e237029271d8dcb6d0707738549a8b18bc31247c17c3297329cbdcaa6a99b953ba9c613cd15906f6c8d45ac02ef90844e0943b00231ef0fd6e4659fbc4180201aae3abcd5035843b4bf20115f424803be1bc5bdab439d2db101db8ed8fbf16aafc4041286e80b4f4c321c933f6c2d1fdb9de87173c1bc04caf789148ed31d1265681aea07175fb5fde75b6d87bbf4a543d2962418c75891b928f8ad67e10100c3cdc2d8aea014c5baea9a0242988173873376eb8fe2f4213f82f7c3f0a48329d69f7ff34cbc2944846bff15d8e7b64360b21f26c8be3b7c980faac29a63d4d68f1aa02bf570a547d6cfb61ea7d4c94242e3c97c1139785571175f9f85a6bd5ae654b4b9253fc9f6c61bfb21ae29800dd4771ae7456f785b1e29c422d3c0a9846ccbd7cfc69dcc0cbe946c276bd16cedad93e6b03a96e84a16a13f7b0a47ae2b445c81aa851f9f344e36e48d29cf86e282b288d78d94b8cbed22b834162ca7dda9700aab5f68641b967517b5b85dc3fe29d59254e57d01919268816b46273eb6cda14adccbcffd19ee3f8092ea4d54a868bd994bf06efa1dc9de762f1413cbbac2266865c67efe65cba1db0420fbf2104ceb3d5b18c474e038556a7bf1a5a6785fec6bc834a809e969aabb6273d0da7c1bc32faed286c4f20f026299ca66db9e0b0fc451434c8d7ad275a078a9643e6e9792efd2631d9249985fd42c3a675052dc97aa3392a3b074992df364951ed5319369155725c4dd23b0a8edf566cc0c104902d52d99b8afef08ce5188163327029b9dafcc3a3711d66e179b8198f57233594e775c582875ee14938d54697ccaf659619509f0684965e23b6d885ec42ec8cf2cbd6721a70d93d9115ad2a296b312be7b1157db6d1460a2de1a4516e0aecab8493a8d305a3d39a6beba53bf5e97e583d6106ef9a3fbc1f58710bd7f9284b31042479ff0328350b46501a9d3285bbe35d7f941634e897f2e20aac8e48def82fe7d786687a03e7e6334640b4bceba84301896410a0a3a91b593102848c479e4afea1143d3b424bda408d231b1b52afa90a37ccf7d55eba0afe121cc8b4b12dba8849a5bd86c1459cdf4a037400007928c7072c72cc55342d45da5c34a045da723d969caddfbd334f0e1fc78caab011b3eab6a4726f24ed53368881d18e824f9f775434c43a5f47f3388a621e3a3cad68413d0f41617245895c6e3c897835d9e83406b20cd6b88c6ad3a07399dae2dcd106c574d47663d299798de6d0466fa835792d2912619ff548040b477493229498382c438525821537502e24e39c59f188c0dc360199ba79c836f8312564d5f11b2d0b55437505ee21d05e94490cbcc744be596ccd036b64e540eadf9bd93ac610fc6f96be2a76bf648a193826b54ed8e1759031d2fdee871f2aef07800ceb9064b2bac5ba51cf77cb6d6adff3570d8968d7c2c9a8b2a997388ce15fa46ec24af38a222c46dccc3bef6ab1ce82d8bb94059c2db178c8209618411e0bf741934ff62b4a085b017e0a53d2ff608c2d282988a8f6f121b4be0b5ca8df4f48162d3872c09624ef87bca7857745aa11e3d8536e33011c35601420ab6364dccc728f821cee296ad02c273548f75c166ade2dd67b9b05f45afae306df65f511948e3b9632cc0239b0596267831c5345937f87480dd64a8fca2db58f7d1bcea9cf8d0cdf2093d93e60a73b9e930072024fd2222fb752e86665540bfcdfdaeaffc9ed1aec840bab64272e39da84f1a68d56793665506835b271a25704054dc039d0c062f95d7d594c76eeb514d2a03cf83aff106a7436fd9c8767f099d9463e7be2802832740df55eaffa0fddc504659ecf653706f6d44560551e2ff8b0ed0b695a914166d7bb62884ac36dfd1859ee417838227a5de0c421b65f7aa1619103f8ef2ead8f5a43563430abca9e485472394b2a6c020cda5324b110cc7e8b2c9e7400c55640225fdee676b9f3d4afc104260cd6a224f1dda87b5300900063e526effbfbd5f0410f2531ee8e370d124a3fd26d446c94cee7fe68e991484337c24b693d6dc53dad31ebbbf31449e1c8a2b200fa91620265feccf346b45afa849882fc0660eb36336b1503a160a23fe998e97de31b38473e33cdb86adf32e96fe064123d43fc71e79fedc4744345f17b3ace6be4e2c02f75eecf902fc00e6bb3ad496f6ed4e4a1bd15f30b2a6619f60a03e412a2ad2a12843a007263b54e636134eb6bd0a3fce6c63dbfb098a9923cd26002ad038c68a409cecd83c4675b7fe56e541eb13c78cd732036b150973b3ed3f5537deed16ae80400956973623ff6cf55d86f2dcb7623e3d8d5cf0aed9389bbbf23ba40c0b73573e7b9dc86b6ef9b3ba9057fab509024fce5038bc58a39d1fb31d3358a3dc1d10ef3de703e340ac944c951c0ad1f9164e4ef16220c819d00773491ccd0d15d9c06b8a548bf1c791c7dcb993be3714e2b5501feddc2d1187283ef15c6354a261430993efec00f8773c0c218d056529a0e4ded97d1fde67bba3989c173f222a1c36eb3c498c4e2e9a793d1f2f2d00cb9cac0b80e41bafa5e2674776fe69727f743c4adb51bceb5f38a90f6436057011f414c450133b8dc3b3ae394366baa64401234f095ba140f405e5ee60e82eba53803bf7d6a3d67831f78f8a484db448f4e2cf26c069162449fd2501618d5bc31839472ef2df7e20a50e2a9ff938cccd689b27a4d20174adf46b50782f1464693361e5d3064b7f86218cb893119f16e193df3393f603111194f192ac076eac93b0716f3d6b105773516ff185addef254e3b253b5895e8a237fc902bc0fa17c33d08a7120697f9a0a06110cc10cd9bd507b295086b9c2b7a64ae7eb38c9a017e585b8867d4ceb39692ad4e2597066e3bcf5e38519957bd40f0455de9b0fb62e17d331a3a84e953cff8c460199eea3120767e158b591e724059d87253c34367d14db62c23e3c9d36cc04f523c380d23bc0abed6b7d988408ca1f3b05785ae64a4e647b4300a4fa07cbe841d5ca2cf85d8a7ffe83ec8b9b3dc0d2fe91592a61ac6023f04354ec448a46f015e759b43c9b0b175a83a712311177a5c2c89f456c276e801e561302a0ea8728b06453474ef866454d61f86420635c39acdae6407b008682aef8f5790b6d215cef668ffbd57f6ddb6cd90d3b3e95fe3b87bdf625c33fcb083cb05e22345c041acb8a22ee4b0b348c612358f1bbeeba27396cfdf46b91216d50f2d3a2237114afb2b7b64f1009fc80ac024212d51bca19f13a904e21d825051b58b531dc8d7a4dd6320ed4264468bf0ef07ca4a661be1eed608602855f7fc310dae38eac520a8ed48a264f0bd07c3bccab556018406286cfe96f063a7eb807419a32eae40b14ecbdd3adc1145ea8c5ed42dee62ae19ee614dc6249ae599666b2b5b3facdfd9fd731ce1a553ba0ae5e875a1462e0be0819254fb8537b2e92a744b9c5393c99364ec37460ebf1655a2e362034e8c6d77f37d308c70357714c4ecd33b10c623c3f08394da2e5ea9f72a90eb72da45ce7914c187aabf521d84acb25a0cfe34e9e892350a83f716e0cb2c92d8ce76950cbcc191b38b2eff7134ff8269d7d63033c704b60eb20caba34f5b4436a198d0962a59bad2e1f3f2e196a075f9c4f725b050bff41932651509831f4f4a27af99220ffce536d871e1ce21a976f06d10d6010dbe7ecec831f5f1bd084f68176a16e47de12b52f98b7e7471681c6ca326fed8875f4aa451061594790a0f3cee6cccf9c00891940ea0f6cca93796df0b8c42a8c171b060938ba08ae74b6d1c119a3a300257beab164c7095ccac717a01265f4ede61918afe3a341121b8c5caa8fee6fb8921d21dab1148c4779b4990b108aa50638987cc28cfce69d8d700a0ecc34ffb85214ee156fb789b496d1f985c364c794f98dcd80db862cdca0ce8623ce3ca139b557f3c63bf244da6147688b1162926de50a0a49cb9459afc4399e62d88762d7751219d43e6f25b2b271cee857315d84e438d0bb8dd0d657f0c9b8888e016cefcfc87f12d3027c663d05fc9210e0d501c5e3517483438e64daa391c35937cd6fc139b32f74a72cc5028d563b4a8b668e517fcf9fb75a1a056dfdb93139f4451f9dcf0bc8d10c31943366c2c5c2d334b9f9adfffbff429dccef919467f8888d8a8cb6b4a28181ec24ade1b333fc701c0f7c38c74f095568f278bd999fbe17cc1e55117eacc35e689c9095b69e81118bc3c63cf7f43645de90afcb050cefcfd82ac0f3f61b11c1734a7f9cfdbeceb9d2cdf5116e02de0e85d282a9eab7692788672eb5b1364d8b2c5d67bf25599fc5b6fad95818bd7b96cc297926b3ebbbdcb1247288d704433032fa70bc78e33d0b50f66176555a0cc1c24220382bcea624e8b92bb79da9d772ee331723bd516ec1b3b5eaa5f058d863d2dc9cecb8b245cb2dc0266004f42d97c9a54d7f5b27f1f29deb36545a0996c43aff0fa4b5b103e1380883980a9bcfba56400757b6f1412b74a22275868e1a61316e9426848b1b350543e441a344f6270dbfafc34c97adb0b21832c61cf253eb4376d8408289d34669337f57acceac69134609dffa809bcd4f3c42aaa8e8994809e692722ac64e0752eef91781b5d8f1a2067f70b40c4bf5a13876b799d100b799ae842a9f66341532c5007b8de602a77199215bf6b8f1ade9898710883571e3b3e1c053feb75ad707e5205c81e1b7559ce36476fa0f49ba5ee22657b9d1e9c58a09c0c4b1bac4f5a0d6cc7c5a7277b5466e43441a01a1c8d670df60605b5798b8bd2233a8b743135b291488a1b9ee122c576fb5ea4d36a4e26db974ad14f0882c5aee7e23dd658e09038937e7b20f9d8a1b4ee8dc5400fda7747ce807350eff801e24827346fa5d08c19d109d6a2f51f48b01fa2e64fba65e4aaaebc52af60bf224d4d591ec3755c1ee301358e68d8c0bb086ae18445f916ad31c209e9f94710e94730bdcdbf3b8197b6f1f7153f4d8aec30dc1bfdd19f784ce767f6e8f5ddb41b9b920d8d058a6f20efc5a461d1f74529c57e29a7b4efe55206eefef230ba3cfe4b49dbcef72f4075496893ac97fa09a3570869f017ec653637d1fdeecf41e80a66cbcde8543c8d0e3a9ceb17ae01aafaa74f5e964f16028e178a98533d5e5c5ce0335fcfb21097a719fa38b6f3cfa8cd2ef7513007a3edd5bdb0c79d3e2166a1f0c43cf0ff7488064248cfe937d1b6e48507c1330ab04d2fdc88c55ed50788270abe3628d61d7f5e82d2b80bcf1387e337e88afd85f690410c13cfba9a3c2e11aa3a31d9f17a19d3e8623f76c49a77e41cafac1378c7ee02396659a9bb42e2348454865523bcc056b947cafc7bec6f303d7889411db8da175705fc489e25a928ede435515bbade1471c7a61c4cdef14e38655828a3f999011dbbcfd90140654f2de8df682769e140840b996dd8a4298ef2d6a098a6c08a406347a4643a04259f03d48e562fe95b8fa529d0cea7a8694675c9d132a5c0f93899f33026808b52119cd48437f818f04858c015f971dea93b0d2923a2f77c7cffe3803daab77fcec9da39d920f1b4e78214509a4a904247ea72afaa2c8374be975679bd1e094b895054db1f8f44bc306636c9edcc4a276ca009220920f675a434ac61dc157e100494570a86c240653fbabf8e1f06b59f56078cc36b8bb8994a1e35e9dd3f42a2eb70e302ff058f289810305497f7286d632e96710a9d2c0cbcbfdb3394885d6f64391bb817c0fcbdac085cb6f0d866712e89e20c57d909a4478760f6ddedca11180593ea096f76de9e7b1dae709eb857395a5b1b07c7f82a248095f03f96c9cb1397c41711b24f253f2408b965449f29fffdb311a419ac42500523b32771d1556b008cb4fe9af2052a2fcee2f16c4588c815dfc6e744af754bfcf21baa1425f18695fbeb59b10a6506e90c7ddd9719b3de0e1d179ff1cf036a26bbe4d24568c122a2d0983e4ecd2f0c65595ef2296a41905923a36d27f9a51409fd9a9f76117c0d33c0180da7c8c030a1c3b2da3570ff2aebe8c90c9d68318b6c141205f39393d4e42f3e07b1674750c833e1cb1e7a4a4ca53b5abb6e7eef1ba83a96a0c1b9ae97331eeda10c4db8b60086e0238fdf26aca3142f748ed3a55b04f2497a3f7a7e09a1f393ac15e746eefa917222dee820a99af6a66e29f8a5940a98ce5d7fbac856d8cd1f39685b241b3a35541422ffe1ac784794e595cb1440ac4e25a33d118dd7cdff4494e91b9e32b6acd83ae63067587d69632ef01d0a0c3df52a1947b8d222fec0ae514a81d79bec893b91f0a86e91faf9427b01399906815591eada5cc320efd7b085bf00420973d8469037a7139affa77ab5ee5921d03d0d23d8c93e83f385a81bb75e9f3829713e05b486f4e61bf8ae0341ddb259dc0dfe2057db65795857d9350f26d60ff6573317372bb9c9768cc14f6d3051b64394c63625d1b316499694a87576aa14c913e5337c3e63ac6f1de0cba459d0291b897555b5a0818f532239dcc8a2a572c85a814e89fdad71b484a517cefe06e1d3a5c591af3a0af96111b8923674ccb4fa1edfdcb95d89c0000d8d728da01f6a6b9efc4152926001b621221cd484ced33a56194b69343941a6d046a65d14029a5b68f69b32bd440d55193c66c1561392f67944c34841c640476d24afa12cab25ca781b184b8077e2ee17155ea1aa06c117d171051dc5b217a1677d90f09055cbbbb306d860f8a830c796f5a10cc7e65ce0f76f509d193e700eee1d96ff1856192394f9aad584fd90087b42bc14c2a63ba318b2d6cf48011f17ad844f2d66e17b307820f445f956c5067860b1a984de23a26664464aec6797640537cf1e67e36f9e9be845fb11f209a40428897971f73e93d2876935ea8054f2c27f530383c2fecbf96533f26a444b03d94cfca2c469be928ace6cc7446494c008e5392a7bece2722ee70c24fa79ffc3e129f5c07536e0cf50a8ea08cafeea52f1177f934417824d06d1a521284bab53beb8b2e5b38897e71f79beedddf461c931c28fcdce4065ddb80179d8629cbebc6af1fd8f11884a008eb3e9924366059f32030c620b882332fd690dcb5b9b8cdd36d53a5cfac8cea2f8e15475975cb43ccfdd53cbb0341b331421dd441d66654088ce4fbb97ee40bb0f5dd58880001fb70be859a25922acc43e7ef1466f3810cb49d92e34c92268a26d65fa388a7db545a909c449ae1bdc608c965f0284260cb556582c9f74f3fd8031df784333348fb5da25bcf0ed34ad76eae4cf5975aaf14339e081cc16d7f7b43243749b51b6041947bac6e86a892c8a80b589f7f23f4fdefcdcf46312d75236a012a562146566f6a499d0bb64bad2ce2194a8ab7406fe98fe71e13c43ad46a5ba7dd7bdce8b8a010eb4721c3b20b84100683f5c466da5f09e57613ea09a2704c22fde50d400be4640a2f7d95e0ca6e5661f1de8f1e800b0f8a39a13e56215d1900bfdf64ab6fb1e8d63c997422c33042c413a07fd0dbb1636e8f842a29c50aa9a611715a7b29ce3c0e29f0b08a172b815bfa6ed3211e8223bb89255d1c31dfbaf4d3456810353d5a31f1990820f937ac4b48ed1632f5e3b42c4070af000cb7aea152d260d8fd000ccbf809de59bfb563470cd8c8ee2257c6e4eb3cc3dd75ced314ab7c9d594792119f73df134d2ef1e420e4327ebf6f1b88699b274390303da7b2e5dfaad9600856fb7c0e9dae0ee79a5a337b8e81627518f570e3afe1cb3af1b125bc5383cc311b690c4a1aedbe9b47015575e664a70afa4e69cf8ca0fbb6671505c2a64bcef7457b8792295d51bd11ce66c1fb64527123c3ed48ef244605746831b748e4ba9d79844da38e33b092db35d191de6d4fde0890490739e6a6e9850dae2dedd7514e8a8e664780e2b80ce820f03f4e3a78339a406b6c818386f5d9b957fb084b600df719b199de4f0455da8f1a8bdd79739ba007a4714b12aef8fdfbe256d3c00e0d45d7a4b3d224d39170040fa7ba16f9e7197c8ff8067248fe33edc9c660e22c7d24ebe727b21031f4fad21cbd3e104051bae85013f8b9a77b70a906b0e9c6a230cdb9e23b34c3a430dff747d37c3d659f93c07fc5777eec49b44c66c5ad87cabf28ade173dd5ef3ee879a0505f04b85609be5bd1d59cf6e0a702234709d74e3b235300b6f0564160718c7cf4abf8536fad3b25d41004d60a22a644797bb0d22af8b0384746735b6196901071fddba3faa0188b6dd46742d94f850d6cdef2201b928f3979991e24e8e4bef5eae323b830c1d37ee5a69c6936a32e45df7af86432deefceb137928ff3d70b2fe2a495e46a4ca61603b533e14286a088bfbc23ecf73069badd2cebfc15bf026bc8b2882713d008d2590e7bf335c0a245fdd5d97f0255ddae8be431714ae3519a5d05161a546eda83b68f29afeda455eee73a5bd00bd581327e797a05f57ee1282d490a38a08410c28fa5cc0d9098ba8ce6099c414359c755c49196e9ff4407ced3cf1fd0b6c44958303ccf39f38992c44e57dee388f184ae121a8ede1842c2f0d0a29c94f29e898d7fecea205419bbd9d5f8802a2dbeef2a12a9c2888f405a71fd59d29f6ef66b9ea26055dcd953ddd59dc9d3624745d56a6ea3b5e22dce9514a1f9941458550612dd073c8e4e9f341cfac168ad2c81ba4c33e4764714ff23930700c024b15cb9e85253d457e373d4b7b7d200aedca37c6e90e9c05f4e2c541d167fb63fb72459b36809bd6f3a74bce6ee66a80773171aeed2649e0725ef790df568934c4ab6c344680374f92bc31a0494d532a397baa1ac6ef41b98f4ebc1e629a2cc9715126fcd19982faf2d035be287cc33ef250ce9f4cf4ab9928137a9f2ec745271984b5cad7a45c228840877fead42d96dfe8d0ea92bba713adf44ffae7389004c65a870d569d9c7b95a86a35e31db87c775ba4599f331782a10423a34f60838830bc7f595c224398faff2fc09d418679d841e6ff0354dadad70b5628f16aed15fd089cc5c060d3db13d907488e556dfa91c798525ce3f54b005979d2d501ca8506bcc7715de36dc37300963b6450efc0f6d059c49fdfcac181c47da7fea1a7f2c5132ae25f37987212d21bff164c1cafec6652159e1cd1bee1a43e0781f66b4b2cac0afe2e43f9993e23b85f3336e44af7764139c140849ead0ab678dc2047ea1a4e4836c0426a18a857a7197f38848651a76fd008be4acd303e242a8aafa7769d964dbc35abe57dfa88f6ded05505afd605c74d2dd76c5aa04a6bd8866b4294ac55dd2faca9f38e5f937ac699b995e42e0a1ffa05181fe41702e8b1127782f446561ab409bfa8ce8ce438380b0dd012088a063bbf453207c9fbedb1049a434b0f7feb642602d0dd641f4fbadd1ed81de6256f6479825b77a89fae95248ac6bca31c4d31a2f78561f19e7dc092d1743e8da4b859f0436e0b04103521e5cf572a3054d13ced24b7a4d257b510caae6ea240325ce8b2994c5f9150c2486fd26264edfdc146412285fdd48bdac975181a1bbb654a0d7381b734e0765e83f80ed1676855f8c4621b3c9ffb0f8a8516633ab1dc28565ab2596acf9930c39429c05cfe1263bd1e1c1603ceb54e626935e9daac6af4c555e700beab2e77a2d5966a730da88b534cc30dd4f35aec26d89ef2991a75f323133f3519f8d445dff80f04a8992dc4d6e075071cd2358d3f7ed5c4f7cf77cf567411ec0e025ff7d38c7e75ae747b9e3ceb7f7543d697340f49cfa3f1a49311637b9e267b16b9b3ab25df9346b3bc9f957f68e1c72d668ae17caea023eb39eaee279b261d87429e5b6cb15f94243c9b9e50965bee054653478446ceb1742418e56b6926a6241417976fec132d69c18409b13f10358c765b3e0e2c27a9e0dc3e2d4d24d24e689fdaca72601a09038ee9a2cd84e660d2cddc9a0f370096f28d9439e7487622067baf86a2583ee6c42e5889bc3e2c3b6d3758bae0bcbd9dcb85d2a6c499d6cdc06ec9f803e0c016bf8fcdccb20c8f0796b838d72122fef7c6777c2e59ac420df43ab2103f1da8e054d032b89416848cf14a7f9d978327dec49d99e003ea7a8955a317d06f53c59b99ba349963d93fdbe83c33ff5030b6d2df3def438ef1a5593cc5fe8b83c2d8b80f1a605c10ac801a87f363d5796be7536c0938c07d6f34b1d9983d5fac116306daef94c3bde83d9d027a04d60cb490d8efcd27f5652b95860af5a58f07b830ae970dedf0f674a493def4db9aa44597a71489148b4f2b5d63b75c3d2ff448b60b84902fb041d1cda03c91e2556e01338d8c32d8562ff926ec2d3a710c330386da68b50f7a1e7511f8c1b285492459f446168d734390524808ed149ec488495d84e537888ae657b771f43c1309c18724591bd6440ad4207cdd970b8e0e7d172de626593ec42b6d583c329c43e018d4388ec3fcf346c67e3c1b6cdc1888f209b2d5f778d9b89b242fda9f4abad24590b10f0fd20d1bfbf67996da8e899a900410a73efe08cf64b1c27b19a17b114a87a93c4fc56c084cd33e218469e319b0960415cd006fc4cd1c9acaabae10578fda6026aa29d699c469809fd65426eb578da4ab6597fb32114b7bf291b61bf80b094763b7707ea6c5864f55a9bbfd4846a239d3cae84aa1f6b2b14cadf8262b15e83920e28b7e77dd122a8f71bc71dabcbe83004a713174b48a3e242513acf47b140909d81a7f14c00f67b000a0602a7f1ef7aa6b82e9d71d15c4dc29cf0efaa6e4b79b2e9aea96f6f4471dbf9b1cb1d0933c691704e49816f5d1cf942ca37a5ca2bbf475ffb704e34aa8d3fec9e3de2a6fe289b2d9209cd0796d97063f44959e4b6c249493f63e30c8c8bafe69037e0f936b9873a900d08539d8ae21394363f1c99211350303c59329ff0667bda80b82ac43bddf7fb48c2e233d9fedd56d4cbb53c8c4a40115767ea5c3a873997cbc998a6f38b366aaa4c4d43d335dddec2435d4ac8974c65ecd1eccea1d78d27320c22b5592df1f616c26da48c6d5480bb827a157a667092e3cbfd2ae268b7576e5adcd54b812294555b17170138e555ffe2ffc1ba436015fa3dd9c83a620244da5275229fac5816d14ce1fa9e0ebb3b76fa517767c18422a7e602618968f0acc6bc25bf5d79fb314b79cf793e82106bbc04c6b9c6a9038700c968f1ae0d3504095ccd7e400a1419d84acaecbdbd26ef50c54b5b6e70f2c9c298184e6c7a8f4ff8a0ee8d1cc16e94cba37104b663ca544aebf132243b1937951242b6a55e3a022a4a635d2cb08b084da7d02b2975aab8da39148b94a90b3e12ed2cdf4989714c1aa3ae7f4c004b683133054be7d89d27316ad9f0112efb72d54a94024107242a5e85c90a2c0a8092427d76cee6bcfe86abadc14db5bbe2e83b5cfc0f3b602deb1750964eafacb7975463912eeb705212221b14dc427f2cb2c0118e6eba24088b62e39db1f65b12ef37fb76d08b2503c0048b2280885e493be4450fc4c799205c685e2c8a25c19912584eda520c8b073800f1662346c4736ac05c76536ffeb590fe14cc0ed0ae51c861f50b784d746dd2f9289892702cbd9505333d3b2542360d51a0b38be0d767af3406b5df8f7c8b9b0192472d915ca7bff78764010fa417ec1e6cdd9836eabfc443524ec927675983ff754416b3117832b945c5fb47dbc58457d4432314c352aff0e4d09d86de57f31dcdca1f1942a60aa836307cb32e39952d1663d80970d2556cdccb4ca0c2018862a9ca7faec2d172458ebe56f3bb8911a642c81cffbb793399273a39ffdcf2f07af69967a4d85340171b6f9fcf9d449716ac140c54d85d4baaf5d8c04760011360bee69391bb8d3823edf6c117e287327a017a36c98bb0ba8de9db40b863a980733e3695fb80d480444a0adf9a6aff7b96490fcb143fb24b585b2130c53ea207d7b1d7d4de6897afca6522a1993c6ceb25f7ec2edf4b32b28555d009f7d338b043e1d834de95de0ac37ae56b1aa58e3cf0973e88eb90014a7de78774f7ea1eaefef926a929f970af466addc84c5f2df96d8c3726084da17346a964d37311f90c7eee647fa895451c168b184119289023ddd7d77d4588310470a50f89ed5aecbe3b78a6f87483cfe9474b4fc116e4083bcd2c622cc6b9810fbe0768e5c42e037fd780c977efffec952270e26956d10d7e1189a1e6e938fa6b2d4e45a7181ce79c43a73de5d7b285c3a225b8adb2ea5d4a564f248670d6e995d4f7ea59a47fdb433b35d066107311f25fdb73c2cc5f45acd571ba5e5c68c2c8b13a06abcc9193f55f6b84c05bf218443a6d76c2f20e5a7e321d34f457ae26306a269f5386f0d96d97afbaf1e459ae88f69a2a957fa316c625599676f9e000d262fe8073699c6121812ec87a412c0e82eb71a5e0ee4e0a3c488b65ff0de8522a79e2239b998f90a76e4aace5fa2d81528517a46fc513f5691c86b806f2796f5ca49487559bf278384fc907c55e6614229f25095a02a48f0da36c8c064ca73eda97623ee897297a79282e2b0fab6d03195a704c5217e8e6b3496824948d42b3ad694930458b6fcfeef15917b3d9d9fdeb94ae6c4b44213ff139c723c0e55b780d2bc7a72d77362d817fa1f242a9c981a825cf8025bd8c721996f1891d7ae375d85b79850c7adc7e880038e9e6dfb825179bbe6c64f93ce6c8d69e20047e0b6b8404465af6c11b2517a5a53b0b0300dfa9cbafd84587f00a2fc9b5c6fc38cadf1aad30015b52acbb1106c8e25a2055eb99893a34916871fc1a38781490ea89894ce2c467f9b98ebda2ed6119e85b94ecc67d647e3a669862c01a38431b151e206a1cb7cb3e9becf2dc4c8f536e534a9e6231b0cbe842760cbcdfda7a36dcc14a312cf467326e459aec3771f2dac4e7ae33b3d08b3a2581d1e68148173339b457bc9ad554b88690bd531ff301e568750d23c75b26588f80540ff472cb14d5d0552aaf1e90f06d72ad90413a49f5e0140a0298aca81071d08e12d94619ecc4d66bc93f2cb0b5fa1d36644413ecedf147c0d9b048f2034cb195584afaf005f83731d367f9326ab2a1b3184ff64283d655255eb76a60341773e669af4e541540e36bb102a72b84256257f47261480c31bb9425a4f0edecea83d4c5c1c4ba8559436f1874aaa9f72a432cb11b4faae1413e8a9f3fa54f7e11cdf9ebccc70ee6237823a8a426003d2c61a2394130b30074a6840316c6b524025250a90ece2daabeb59f23d0357409c0351d4c1d14053470d8c4373504f26831d9828ec05aa78557be07e4fdcf65dceb66e4785426f26971fab9b47d274e6aa7cf934e8f1ae70dc5b2a45c1c0f56ef5fb02004bbbf2790962c04f8c0ad84ea2e7d5c06ce9283ebd5b8c2071f2cc276586d21831b2dd81662a033ac2c52662d8fc1ba15b3682c2260e6e7fc7bbc823349abd919c587044f728a99b5e72f2670143dd8829a949417fc127581bb3e3719913bf2fa64c416dc01147e8fde8919e0d2cc7032aa02e8459301816a703f929a183a86840d81ba4f20f093ab742084337dd62345be923fe86f505a1aec06b35ebc23c989a139b7c28e7071550c0073704e9cb2d4cf9bd3f9862eb7ccf9986d94b582cb07c2bfe97ddf6de7bcb2da59429a5580848082908d305e7fabbe0b8e060a4d6ca16d169a89f842ccb32d7f638dcc43de7d0917d08806dfb120998148404a1010cd09520ce441388e52ed75b3be4f081ec730fc43ef7fd1cf720b04608d07bcfa57c8d105408c17df7d6be9053d72fa359966599f720ce7b503f10eebb07027a691007eebb9f00f71d3801d07be00e41bc17727215150fac1122e5ed772b5f2304154278dfbd0af8923d9f545ec869e424ff15954675a3b0f9b4ebe1b70c2b041540eca7bc10dd7bef42d84ff997ec8178df3d9094b7dfdd4b06e2e07df713f0c009a4806dc11c568da2c286ecba3eec104da71c74f8f8c47d3a4493f7fe394453f772430d1540b8077d8d0702a9e9408e6666016c62d6c1255a9a1918b56aac7504610f42222b5594365346541cb364c7e6686ec39873f2e45e21d952363ec7b8fbaa552a6ed5942a958a529af3537b6a85014586db387979111794eb5fb9a707073f753dddd33dddd33d291be7365bce18fdf6bc4c351de5fa10871141a34182ce021a5ea47bda279ab8f7edfdfba75f4c933d7522a2f631d7f118d8178493bca7fbfcd43ed1d4fdcf89fbb6efc09a1a061448a082be905307eee03e1f377c3940e149d8cba6dfc1343d530406027fd1e3c449fe3e25e8e1be436abea7a77bba87fa889247417a5c5e7ae225aca787fe809a8838a11038841be1032d449d2b2343fa30eec41ca794621cc5300ad62c0a4a2d058140206f0e615a6f5d0dda6f9e57abb5a31189d4d5a0b17c2f40585ef4229617720a7d2f40422f7a115823fa90a8e547d8b7fce845df0b109717bd8b087cc17e84895ed40205a6224a5911a9580a02814054d4f22aa04ff938177df29442a948d4427744968f4fa150037da10dedf0dad309d86288e56acd22290ba52c214a290ba594524a290b4b88364bb350ca12a294b2504a29a594b2b084683755f13f43db89a91867ca4b0ec364326fa68e91993379e62ace546aa6383553a994e6b1d9e7d4628c71e620c176f84c45139fc299f30da162b6a6c4615c5332a7fc99e324af82637ca67242ad0a395fab826958ce2cac0ec76461c399d2565e9a2f53a9d476849bb972edff6e592b73fd59419ef329ed5aa713369c3ad7bfe9fba96259b63a823d615951f7120c54091d425754459350143542bb9b7e4ebb12584a049beafb4753d71d9c2f0cf43c14c734111545c10eb4bb1e850de7cb97b03d5f45bc34e7eb355f18c6b26252ad1d4d3094c198b076b4a3013642323c39accde6cf7c327f7ce708253ba9296e774dd8271307c7fe93268e9d993858f663a35d1db1d61a514911638c5d096ccae8bac3dcefdbbdbb8e48504a7f4077301486a574788ce4344e2f6915c6dd8d611886f5b6a5acfc8dd445c04fd9d78a035b234ca372563427acf78897e623d13a061da209840186f1ef9e5039d01f0d1d503e2a2f61374e438642a16a9d471ca61fcbe84c92b383b99604ff300f8939be6c992f07c7c4308cff0c32d48631c04c0449a397a48c08364e2a0329a56c661e31d75aa3a9566b47a3ff1d39e8c0345ea3c94f32359c051748a189d3109b144f9ce83fc1a62011c65faecbd115768a2b83ff36e704e9c0fae476e4f03834212fe1ba123c465786554dd54dafdceb0b6cd82a19e734b2b520455f9406b1c15132a44695044583d4eadeddcd0218451819e7d75134e15084f711400dcc31945f230802835b0409847029be649c1a8e658ea120925046865f459c86ec9df22b485f9a71cc112775bd8137e7e4c9580a96d2c367c7495ca30bdbdfdcc347c749ddddd4d54c639472b97e32d5112859ea4986ca6e5ed91097abd56ab55adef25634f9a905ac6979d110de04147e10ba0f49f4a1bbbca7ba5c4fba9f52fa3b6237fded9b7acb5bdef216a5f249f5bb1ae4b3cf4dd9b02307d8e7561b4d428cbec604424e2edff22eef2f337aa6f9d8e456f08c578debaec7f6aefaa3af46883190b0e234723d69a9f135c01a976f89809f6afc0e17d9781b608d8d17bd90d3e6f2b9cdf7bd007979977f01dde6457b977f791b36fe06e8281be08bf62fa0e3e468200e7eaaf1355c408fa27b795f7f6a506fd560b140accaaa2c1787c286d585b92ce6e325edbd47e583a877c59d7829c4c2c2b7c6274f21951a2ebff281a05e15ee55befa714eaaf1f9a9baa209738556523017c7612e0e7371984ba5460d97cc86b7e815d368bc85060a59893e3eb57c7c4af9c2ed032ed0a20a27bbf29debab8b3df7a4ace5e393e8e3d31762208390b050a4c8e572fd88442daeeee5add78f2b9a44505a246a117d7ef25634d5da72b55c2d97cbf52312b5b85ca3541512f2979d960ccb78c961b83dcc80006e31193b4c6464b288a2032d8ae8208b21779b732a59a244c90a5437945941aabb5d046c18093ea7fad915ec0e6fafdf20272b909a02fc9cb08f35687243191e1a3ce1914192ebefa308e3d605f671d07f9b2adc1ca41b1b9264ee8e97e64b1919194a672bdbc2362f0c9701a11946b3bbaba5c0baf777570308091bd69b5a2b9d324e176d15a52b56932337eeee4f9b996364766d3e53dd677c66ceecf00ef4424ed80c9d0141ef376e01ae7bdfbdec9b76ad0596bb1aaa111b4d2b7943ee619e1d0fd26d158fad1106082cfbfa61b3c98708e31f0226f96bbf7d21e092bf0fd13419c67fe6062e6cbc21f75caf9462c1bd87dc80dda86e1a8e645f33c1314a700c2a8eb959694fd89a84e508233f87991bdca74aa5c230bb034a599f1d1794e659d2e35c5f7874b799ce56819eb02aa6f11aaab78a69bad6a92a5fc9b45a8769c0ebdf3c4c93124ddabf462e1d1758f9a18c839eb0f5aa2aa004ebc0a199601a09708cbff7f084c53e6c5557430d3018ca8ddbbd8169b07e1d8ee92657b0ce0c332000013972e0d0699d160a62add6b28ee58ec1c11b38c6afb061ebb44eac55c7b15eb99cefdd0fbfdc313468a3090786f12fc2688c275cbf8163fc99380dda7bd5c9b269c4616e564e3a8293c4fa805e1c1461a9152836c6b1adba08ccd35ce9acaa8e012ccce772fdc60da54ed5b942d380705dfb628bebcfd86fdd5d2b5833c40903b3ebb5e44d684735552b5693233b5367329938fe4cddfb55a815d374373746ae4f234ec4de504be2a539e7c430d54d6827051a19d24b9a0b87bb957566e6dab5ce0fc627c583858b070b174f16446eb869a136bbfbe1dd390073819a60956ac56a7264e74687098e12956ad336191912e97f34da69d08755dc3ed4a7d5c44b18ddbcf7dae5e47860c630feaf1a529e3facd70375b656cf5a10b873773ca361d3b46c3b824333e75690c3cc95eb280a765463a4c40bbfc02549bb4b0970fd73292b76b302839927cf1c387af8e46c42e80ff14a0ab2ff10a58c327ad2936a9d5326078e5187644f5929a564585177a594b246d3065cbd4312cb3b333bcc497356da4b7bd9e02819b2bafe5a946ddb36f6f1f1f1f1f1993eae5aad1d8dfe79ba7872e7cf9ec149323224d26864ede65d095e6c98668897e4cfec3b82404b29ed7874f6cdefa64ef229771461378d46ed15a7cff4c13a6e9bfdf5ed9785376e3f75e91a8eae8dd0858b813ea1943420b00a601d140481ff9c18136e834840bfc337aaa9304a29d651fae3f39a3ecc7ad189838f1bf8093c46117cbc3434587b6d475cdf885cdf88c03c4a29a5d67ada4b7b65952388739529c4f84b38c1deec3939483333b30fda4cddfde4836998668edc258559f1e38f3f7a66cd1ef92c1f5814de0f37b36c7903876cd75c1c8f94524a19b13a310cc32686615bfdadbbb30cac19e2541ffbc2ec36e5af724cca88f7a319616629e526ada8c6af2c8ad16f04fbeb6e9581ddc1e50ae78debcab8c39c4630227228a5340c1bce555d1dc1a1f467ad15c372747eb66de3edb7cd7ddbb66ddb389b456018ff39c67475770367cfeb8004782c6ebf3f0058005c92cffa1825cbbe13073ae00c0ca712b7b5e012b6e96c2b379c3a7d3d82b2dfe1395eda947849fb7f8edbb4ec6609c7ecf0f838e927fbd9da08ff7eed320f154b6eecefaebda3743661e3cdcbd9b66ddbb66ddbb66de3ed3b17a641fb1b3227edc317e86f2a87f1d586e4634a29a514443f6ac3574b636ae1fa4f345806ff8d092e313bc1264a8960923f4d21b9dea7fe90805efb50f5047acd4fdcf702647beeb9ed859cb6ed9bacc97ae9df9e7bd007eac0977e0ef4d76ded3570fa6ce0746da5f935fbf8e1646118866116c749db916df56d2aaa52824d13a799aa70a88a36b1e1b6a9bcc45c28818cebbf2d691d376eea3ee4b6249b928e4176e01c8361fca70f6afa8073a2a68fc5f112a5aa6de52520fafd3755341df112f6d973cb53d534f7135545d3a6a22a55acd56eaa0a6edf17c9ff3084cdad1918da4db5a9b20c9b42aa5b2cead7afccfcbd8d51c872554e154f09c648c1b0563007534a2965d98217a27b2f3bc46be2fd782e2f8ad7e39171fd675c799ecf3ab039c0651e2e98dc269e9394bdf1eb27280e5582435f0dcb8f7ee5ab697911b73ae2a40ea74b82ad7c45ac7c28b4f252aeac7c7f7325aeac7cf3e362890c9779b81872e9bdb9fedec9ee08053b9593fc9db0402d5093d1c7a2af36c172499cc4b9e2cf0fd41a59323caec77b98b90a0fe5f1a04da05584f1dfdedffb8269b40f1f0a23255823dc205c7fcf89d77292d76408f65df871e1e7fa7b2a9e67bdeeb3f7c2d00d41ac1b7a31b029cf812b1f881561401e2a82e1ccd56660312f85dc0ac40253402cd003b13cd63f0904862419198f35734310cbb344b0a0553479a89a8156d7573c269fd7038ef141c3f8bb2785268c9270fd319447848e5fb39c04850d412c10cb4bed34a0feb4e2b5aebf37e831f1584ebab944ac478463b680025ee6d9a2c5a32709f7d222cae55edc6b8b9d2d7490acbcd744febccc134591bbad7c5e118759013d540d12f45a5ecf8e93cb3c3b372f5ce6d959723d5634792894f48e20f9def1881e118ee1ae87b261d8d063794f3cd40b154d1ec8425d1e2d9ef0689162e2263e396972438ff5bafe1e1337f589777004239e93eb5fbda1af4fb1721289f57a5c1e8b1aa145e8108aa2367367f2c418e3e7316971463c271ea7baeedd2d3b72a8950db728d79fe524df985c9f436c7c1ab95734714ab8d78b0ccbbdae7fffcb7bac975c12277146fca6279a3854e47ab6284ef221dc2a9ab656edb13e23e756db0febfa4b7a2c8f65c4861eebfed01c8fe5b162fcb9fd422ac503f083941c29a5a3bce43a3c6ec4df8b38ce1257398bc562917cf8a8d5dad1e85fe5cd041c2534d9a676c35ef988263fd9308b6431b0a6690085132d9c86e062e073c29e695e9826fa144f28214377d6753bcf06f4911c1ba2f8d14f4cd087146ce828d7f152d828ec23188e48f62bf8d2df6075140eecbf018ef2b137f87054f7b098a67bbaa75e2fe224f914e4d13fe3e7282779ca1df0129faffc1c24520b6ee82a044c1999991992a0ecddf18361fc7d380a5379e9c64bd1518e9ad3484a8e8a1251c8cccc4451a7ca61fa5715a7e628d159529720b5a20b8e4b8e4b8f0b192e4a5c5ad7df25890bcbc5898b8e0bcff58fb205a705a705a7c5650bce6c2945c728e356642b626fdcad05072794c449dedd38a11c2799c0bef4f77de1416f832d49ae4a6dc101c01600d801000f78c6f5077fbe2daeffb7e3c216758769e6b6e4fa8d275cff1b2ea6e977b9e2fabbe84cc1a6996218ffbe9ec475174c265a7038e6880d432f2a850d43382e4cc125efc65dc0f19c7021c9f5a2b8d1c334d9146c4cc134daa73c71fd99663671fd7798a65f8bc2f5104e2809d34c23212ab834916092cf542a0a2e382e385868e539c1a55014211c2f8ad0cb9b420bce13f5432bf9fea128244ee815b6c8ec862d38d7bf7aa30838d7c6142f1b381ce32e2d382e381978c3733846fefc6a5fa9d244c86344414b718c1bd18ed8e2fa872a555c207aa638c6b39d4e0b1bbae0b8a0e32e2cf1520760924d02e8878dda014387a57dd4888d26a1134d5387e5258a02834b54053a3a53279a342798a1c39e67add6022df097a232150ed85b51d1e40c33df3510d44b515e7226cd773a02792b35824d1a4de2fa6bd84fc5c006e356e98d3f722620e7bb71292a8e46d67e17b85112413d1b4db6ea0ec41082629a0635166b422872f9e72a9ab49d49844b9a190ce35fb52b683d11466b7949733949130297b432b49e9d9e689a3fa009c3c39e355bad5957344d9d0893559797a68e93a6ced47133d884bd7685eb8f6d677052461e18d75d0d370ca960fde83dc3d666d7c95c1cb39d61fb371bea8499594e6ecbcccc7212b9ecb5629108935846a7507aa6383694c8cccccd5521664688cdcc52cae6aa60fba394cce38b2ca564301c41ebf24605db2f274bd6747a6423336334fa6067cad85fff77c83ac1e6907ee818ff5875725c67e84cd93948396dd296e83c40c709dece1194523abfdb79a69465b419b28c18a319136c8e9943c8eeee0c94d183e66e2ec6e84ba089a36df69ced10f0dbdddf35403d51b0de1c254882d2646364d292388c3f0e04e6136a5a8a2920b139d5f7f06b4e172918488bbafd3b1ae0266cc5c36373fb8e7afaa8361e9e2e5aba8d307e85259860730ab9e7e6d03afaf663d249dd54eea0082bdca653c64c099fa88c316c4ed5092ac022e52eabb2851ceb99d1b2568c4884253dd0b1dd659e253b4b7472c0f2819c36c6d823acca97527e1d4929254b29658cfc02849eb0f78b04036b8438693eb0b5628c858f1889ad327af7c96b6d2cae68e272c18857e8e0c6972d82132471848929a460822d10e1469e22ceb831bb31c6184158d4e0faad3646267e5660051244e82209629ce210864871e32320c6183d2b340cab2a5836a77ed215abebd77b9e217f88bc2047070d149c5ee063473998977970c01a028555b9cc3385110cc0c10e4f0cb2e0b9220a2fa39473ce09f66c4c5219a594ddddb1bbbbdba5c71f6c5162386e884dd69da9f3cffa9344ebc4bed10459c713e20ca82786f61856da3e23e5781c2c3b1b48c05ac43e6b128580f6f36767c3052ef61a86fdc84948c0e6d3ce06123805ad63c00932722563c3ed84e12a8236c1250d22e69c7352248aac7081841344e830238d2b72b004183bb04113216c5c1849024ad331a305529009e38a2ef3e8ec6411e728babbd338a38c2c973fc68e3164399f3da5d8424ce3ec258a558dfb1b2cecec32d870e373608859eee4e17e9649a11eb28f93d687fa55264dee4e8c878f5468f1b9c14fd604fbddf83394586efc1d8270d34a8b013937926e8c314aeef83984f05674e3781ba390e5dcdda383ee2ec47bb6733333f7199188ed2e43fe774b4967ed22360ea4f48fbfc530bbdd83ad7aa95b66e64918c65e746abb85c821dc9d0c19bb9959d29f5fec98f913ccdd1d3b7273fcc9cccc1c475903944729a59c517616e41326f63660464a19fbc2bfc034cc3fdd839fdb839b5c156186b0694784995f8b58233f1a59cbad38798614c4a90e3477cdfdf9663cdc986c89c99f2ff2e90fecb66467e3baa7fbf92d2cbb7d7fbda47738282f8e03c33eb2649bafb506662d5ed890bb12f3a28826ec45114ce63b8e97d80b1b9f3b93dc29c1e66929c19077fcc64d7cda1143f6d909d96727649f1d1d22ccfc5aad1d8dfe49241f57b5221aad33587146574557bd54493024cd1b0cb93a2ef32861725d4e9a59cafa7727bf7d624f4fabc5ba33333a231d1de4a703c7e068591c387e4047b619f218b5fb75609a8ed8735f11dc77dddc73c73d8671dcf747b96da3dcf665cfd59bc5dfa18212942d3be73f6747dbcfb7f1242fb99ef4cffc8ee236add2befe0ddbe1973b4fcd29b250a2cd273d8ea7596c73ce3993541cc902144871c3bfd8115bf512b3e79f94636c9275cc9dd631c1f6e9185a09293b7fd3a16273590636ae38464e30641f2bb3975ddd26c2c8475d399360fd534e32e224896118c52a56b18a61d8c4c048a3aa2362c398ba3e577e4c45933cc98faa17195357be94f3c3989a619d291c9671cec920c7fa847d100b2812cbbf7d615ff8ca2b70d7196189907147dc85eaf6c9868d71746258fecd0cffc8345e234c12eccb04a210f365022e84fc9f014711cc41ca441820272127076fd09068f72266048370db23ab634801d334d83ce018ff78d9daf88b068763e61433a2e05a71fdfb762bb0a1bf5ed1247f228ccb9f97fcf154ebe08269fa5b080cb3d33a22d8ad8ec1df354d468600040000005e5e6e38512b2b146cd6143f39371cbde44fcf68e32fec89f56f5484a1ef2312a959ce62b1a20d27ab59af566a630458272f28d23d7a8c9e69da6f9aa66952823299cfe040ba13b6df5dda0b6ce8ae1d13d73df7424ede06be00d91ef420b006f4db0be97797fd7cec8830bd63bbcec776446c28c37da38f934244c521a02bac4d377fb1c48e0db258b9fdfeb107df1a60d895fb127fc706595cee7aacdc2f96b8fec47f1c8abb9cd455b09d0aec363373bd59c77c770b863d8466d0b0fea10c02c01927f557ede97cea58df38a34c9cd13c83b2318e30a6b8508d93dae6b6bbbbbbbb8c35d658638c353fc42155f854d193739363a4b915d629c68f18af2ec0587227f8ca6992c30475437ed9dcfe9ade78e3411010146c16d0e018faa1609967063e37f41714bf54bc62915ac5ea86fe629e2a5411158b307bb7b53d98497e6357030c2bbf878cf2e34b903966b6c4c04630f49a87c2713f5eaadd1136e41767293dc6487d61b1ef8cb0b4c6283e3782e17caf1ce8d70d87407d3804ea461ea0eb2f8ee9df583673e1104f19287f47fcb9213be68393f8e917448e93d88a26d75f95c70a26b7bfc64d7dead710a80fe320357dfb621ffd84dc19f6cd8da0dbcb1ec5491d4d22e8ee0e126d407f39a92b123614f2622f6c0cdc3e375be4294c1b3925a54bb6196b10bf4523163f973bbaa21f759bd8472510d7eb9d31c618638c3162d9ad178b31c618c1c931f24770bd59064982ebdf355e6412309573d26d900d483030317e140c7bb995939fcb1d5dd1cdbe91ec90d896cb72b3af76489808dbef5fe8ae5c952fe56e19273f7b378d939f77370e74378e935f77b76e0371f2dbeee671f2d3f824bfec6e299cfceadd5438f961775be1e447ef16da5838f9c9bbb570f28b77138db89791a8460d10fdfa147bf985f4ca8f1836658d9797cb4e6cd2147298ee80e5ea0e9bbf3363580f3297df4b1e923227acff0d17fb9e73ce884d6787c1dca347ac1b944ee2a9b3f9cfcb1c65f6cd09b0d8c7df26f68f7df5dd3dfbc21b2e7733cf7cf06d9007d983ccc55ecaeb01211793f57beeda07df08f62063038b578fa007845c7fac73007d211e445f1e62f813047ef635e30103af6ce752f6e5a736c61152dfb89bdd134d8eaa292a33447fa39ef72cdeb3b43c4b88498b28fe8c3fe774e1052c22d1bbb4b4bc28cbbe79e0e432102ef37ce1ba9b00bee301fa20481c9370b480dfb7f22e2c2cefbdd0d9d09ee742f783e53d76d2fc160270cd34b7453f127d4b8dd18b6a7c7d5f68697996df0ac0f10efffe5db871a3869df3b539e7fc5c461d8f01703e1a594be98fe8534a772e7dd1873255849e510781f893f68856565c7ee5298f97428fb276bcd4d9d048f8f92c1fdf50f7c3fbf9dcb5b088ba27acab68e253b5f46dbc94d2f1f0db12dab8610fdc1d7dcbe8c3f9359e87f922a67979faf208a66179fa1b0bcbd7f8c9f22f5fdf94ce012c2f123d0b0bcb8b7e87bfcc098efe07ef8e2ecb8fbe6fa6e9165161bdabbdc80a1bca9408890da5cd65f94d4624850d0f96dcf8a3f7ee47fcd177c7c33e773d7898a259030c5d44200f2e2f7afa9ee841dd0f17110bcb7bf783e55bbec6c737763ff4153dcb0782be221018ba3ce8b2fcec7af020fa20fab6bc0bfdb05f978a4030140df1520bc883e85b9e3ea8e5bbee87a8e5005c330d0f1e401f447f22296cd82f1e9d8628890dfb2555d2889778e8cf9e7ed7d9503f7baefbd1a0c7e66d82d8492d607d99cfb70bc170eb8d5b59ba5b3fe4eeecaa8d9f2b1f5f50ca17d6ee0bb9207ab6b4797594eea13f6d38a2e07c71cc448361e41f71e583c07044c45222aefc8c0353f26d7cd288c3c80d943732e524e9a81efa8e928ebab23aa9a7ca6729e5366ddcb61a18da1baecc9d5996f52073a9cfc8c1265e6ca01f63fdacbfb0c34ee3d63476788500fdfa7917ac3dbc2bc11fbcdb42b06e1cd8dccdf367cb6f4333441cd171b8f4959bb4ec492e736778e732abfd25f8838137383aca5df96b9e819ec4573b2f777c27478997e6bbcf687377f80e97adb9c4f49edd0e3ecccccc24e077f8f752030cfbd76b94d3fb047029fe54f9b09a9806fbe1e882be573f57de2b87e995b482fb108497a27f5c8f1e9c343f823bccefb6893636da639356d00c10fd0531bd2e0d1b76ab67f7dcf9edb2b29b48ca852184c9753393f1d2d436508be4a4b9b2b4478e6ec50a7e8df3b7759c84cdccab634ebadd8a30f3bb55c1d8ad791b27678a6e7cee7e886e2739e22420e48dab2858f961af2e47848d31c6188bb0a2cb3c5facb60f67b852862b63ae84e1ca1b57f62ab4512e019761b214fe3ac90486993fbbc90c5ec810d33a305430ec56834d468b05369cb9b332e099e78b22777e0e31e423234d2b3fbf3a0d2a1fe248f93034134d2b55e54729a3d972d2fc29d8f99e627941777337e7b8ce9ec5c638a6cc820739df5dbe4b904689011144957ee5b3ec0fa281e87f6127c91df1e56f61b97e3ffd1c4c537f18e2fad3ed297d18a6d19e7e0cd3644f7fc64b3fb4101b2d58512e7dcb2a72e9e390a16fc34b7d834bbde8b9f425a5200bbafea0ebffc2dd22b77d2fd9f3e5a1be64a00d345c7f2076dc0abefca0e1fad370fd855ceeb09de9842250c46ed3fcb04a241387c3e8b0a1ad4fb0a16d191ac95c216a997b333333a86dcdceccced84bd9b2654b2931f98e613e78496b3965b79ad04f871d34d03e6478c9f5e3416adaa68768520636e49fabf96bdf292f6d7c7df092bb7f7c83f052f7da07f112d7691833f7d77d0dc549f1f30cfb9e357b777777f74c6a52939a942eb31f27c59731b021fbfcd438297ef6f9e0a4e84346bb82705214ab811ddc4633829bb36bc5187c911f7f56ee296c8c23dc562d2f8d62119938c4a33ce1f726ee3ca7934a867d328212e5fa87243aa4c8f5224e1ad20dce167501d31cc13a9a63e8293f324d635f1ce230fe6e13f6305346bc24bd3429b8ad86b0b1641947e09202eb33e7721773ee05bab9f803c52ae188e8ae86f8855552ac6e9adcba4e72f1b3d64be1e2a722e594c2c6d7e40a97d2ad7473b29348386cc48f85858b5ff835b08b442d9aa0971f94022cdc4a0b1712712cdd8865341a85565446a3143b1a8dbc11a81b8db84dcb2a361280b6a3ed68606cb1db9d76c718a3945b115ba32aaeb022764e2a69955c95a1901df9d85a2b47716cd818bd6bb415e9dfb622b6fee65cd5b62236ac97eb8e31c6de8a74778c31c61863c7de8a74778c31c61863c7ee8e31c61863ecd8dd1d638c31c6d8b1bb638c31c6183b76778c31c618677cd9b11be4905fb0c2e6124df2c11a2a422452be0487a02fc410f3e5632053908af87c9aa08d0439c26048583ec1a012a399e8228a0cb6eec13c5edca860e4241218838e99435ef0a4b6cb5ef00cb1c2e6d244fd98c5186bd68a9ed68a5187d8ddd607540de25d2b6646f5acca9e188661e105aefc389b40279d603603afe598b6c910a39ca8a44db74531956a06020008001315000020100a06042281483822d664c57714000e7c8a48784e194ce45110c3280c19648821c8100306c888c080cc600400334e42b9370e3489faad6892c27c50a267266458c2ba0afb09585d427711d1d1b5585e52ea97cbb1090590862b0f18ca016ebbc27a05a54ea2a9febad55c5c8885259415bd56381658dbf82d0321f639892e4e056a214007b9780830ff504e09d5100e1795a01cd510f822088e78c2ebdfe344ff5dca0b636ce1cef81b06c0dbafb052acdd5a4899232384148a1631a1c73e47f66e2565a5633ee239f09603116bcabe50937d155a5aee641b9c65075a5a561952d85cb825f32ce4ea05e1f077b80162553a96fbdfd8fab936053b87e6a1a5dd92ccdb0a7a3e47642c8efffb89616293ebd5975d0120070e3573317d0d118b8d0b82afd8dd25510bdb08e80d0bbf4691232bb5b47514568c03f9b9e852a679b9e534cd9d956acb975e4422a59cc271ab1f8e5b119a0ad67253fc6f9fab8af979d5878ed51b5bd559404bcd8978b5fc6b7a392896df6d079c041d5128e1e4b9708d5d41309617be48cf8894f14010a1b03905339a631795c11bb92264b32ff09038b82eb2917ee827da91944839b57850ae91aa0c995f3dbd003850e8df72e648fb145b2052e5922fb0482c06b67ca2a81d9b84d4ebbcbd23e5f268dfaff9ded4238d9a4cf1ee2cc19afa326a762c68d6c3db8c836964d772854624a89d9de61ae38e07772acb11aaf0e09b59f78dc3254b5318da63849cf0fd120e92f88e2cb2a7a6f0e015154e835d9c8d15d69a2a0348199b76a69fca0a4adaf0efbf96a373e6a32e5f23b6303ff390c3148332c21dcf3ed65b4fda47d28240aca16a476e60954c5df66c22a39671f0e920bb08e5bfaa9dc9af2cb1f3621a061d7a7b4d7824aa671affa4d45f6b5ca8332e4810bef93e2940bcd6a2be77545c123d08078fd19e3c77e8fda7af1f6e6186316dad35212f56f404fcd6cd794970e36464956fb8a5f046c293de3ce17abcf79e6e2fb89d4d9c7ebe02f84f6507adeebb7835c04e0e806da1cdd96c2f1e05469ed171cb7a6a5554363c6330a8bcf96febf942584be7121a6d6cc49db893da11bfcc6974ece53fd5492b4178105d5bdaca706fbf17cf847fb95134bf68a2b50d665c9d3e70d7f52af1cfab3ada57a9d4910a44ce0f58cef082258eb00bb69737156439b8a3349bdf8e0ee88d51b888ed5684e01ede37a006b5e5560af6fbb50555c3e5d23638646e605407d481bcf3ab94d3d0d0051c028758a610561fd4f662cfdd287a8a9a37589fab7883c8c491da9e64a1cc215ec0d0b2a6786ae8661f8a9a19939ece284a3a629712a79d7c5f79c0f59abb82d05d801df6cbf71414646b2ac0dcf31ad2a80bf2c0472b318fdd2b3d4e0df35303c41914df1d4ca3cbf8dd720687c9549e8c97249349246a27b89c08e8c100d6c8513beb287fc4b20bb66080142b609b5b7c24c4fa15f30ccf56a37ccc1fdcbf711f1dcebdc96181bbbd684be7cb0da2c8c81c8cba924b53a8c79db1132234cfa8b362f84766dedc50d31f66efabc36884660dba8a1d9c75c2ba3fcd1b008d66a7dd5b34e32f905ddc654141162890aa717b64be15e3ce7207fe5cd01c1a9a7d16afb723ded582c6f46da705ffcd7316f1b292c83a82c54a7f85174fbfa7415effad6f02d356e53c2067a8af0ac95b1d2fc48f52cedc461ff9961c8e983c37b0b9f49fe50f581c0a6db64a219f908f348bec1d86a7d268f6c9920968a3517cc391b3797f92cda4c91945254f52386ca007fdab45453ebd1bfdd1c0997f748002a7b3128f1f02473fe5c33549b6a21263cd39056a84d8b4406c53b999b6552cc70767648b4202ee21011f130a490dc982ce9ffc4efddb7423fb7fb677f5cf863af33a84ff70df7f28de787097a93a7c81f06259295fdf6db5ac1a27e8b34ccc53c6bb67002dad2554a0897f5ea2f371a4ab653b0da9174ca6fc0340131a436255a267590559fa0de1d2aa12a0ca1f5c3f46c5ae25432d80d76a7b5b3e5d0678785b79ec29bb2bec8f1ddbbc52fbc55edb744aef0de8c79e7e9c4a742663cea51bf41f733b60cc04c1cf69f790720bfafd5c26d0ec646603daf9b00fc72acc0cc7981086edb07acb34cd97f24b803e67270a66ae1cb96a6323d6e7f1b625bd79b4fc764884264c7a9d500adb5bfe61fb13e7b01727d32d0968953c4e56b09b980f62787a10184591dfe008983ab849c1a45155f26841afb498877400a0d7e22e07529f7d5132247d8390251ba661be8e5ffb0a2e4036f660abaa56883d7548124f523a957fc08c96c7348f82b0d910bcaf56d70d6435202df4ed4bed13c1c598d9d8d0d353fdcd672d007da06250097a46baac851214588340cf17df027d9cf3094054b4326d285e1005f2686f12648028e30fe20f8108414d31499b69425714fac27c7d9b0c7962683d2eda915c68fbc2835963d268a61f1fedf2c858436303146a1eb912e3e8ff7ababd3975c8d294df80163dee7789c2dcc6e7770797f44e6c0a64b72ce9be6ea67a78e006980fb028e3a0784b32df48b107c4cd6f8f66deb7aaf17004f63f31b711ccd14344b4303019b34004ea246646bc4048d33fe80e74119854b60c79b04e2513a6b4916c008c15011b773e3fae08ed452e06c8d2616afb41596d2ac2c4f15c9432ceac436e2eaf85daf43e605c2263f09d3630158a714aebec24ae5fd09f7336a0c1d569d51f6dfc3443395a8747d8ff1e4349efd86d943c155f342a74f7d8d5a6e8a0b9be07655a206f8d00f61eb928b077775d2b10cd0bf13be14af6772d6ee0ea91daef4e89affc45cc00e40d06ad127e2ea992509e73476bc1183ec0ef2eb0eb2b5bdfd2bfa00f30f20f092316b9e2b32bec4c635ec91a881fd46683dd092b8946081e2ba061154d41901c0d6b1bb7f4a9cd09c632b74f9261eb1368b7b937a304275f8967b085ac1e6d1926243602ab8651968f2ab07a6894999875094797d5da6c7b0706b2f98fbf5376c2fcc54f2552a4fd298625658df5724472278cde14872733e0a13e03c01c1a0600200d50e6fae6f6665a38265da2edfe7b7203aa94babc9fcb00216702a1e8609943b04075f4a55127a832e7e2b87ba857bb42b62e2ca491d41c7b0f6ee01b9f4b416dc7c0452804d45aa65b3650b84f81877bed08e839f22da9bead5bfef0a0f2981c2c654d255b11e50c235f430cc663ef63bc6039b8fb3d694db7efac2336aaf49398d9c086a0c9406b48bbf5670deeb6a2b9a34dad8dfbd3f9889dc1cee7e16a5790443f693e0e31e5f2281294f480cd8736eca5379e27822638a26d8c427cf10f88f847c2c77e106a6ac8077b635f8a87f885220fecd26f8338e0234794dfb8dcce15dbf4485906eeeedf78ce87ba4f9603e5c1a2bca8ebd985c2824af461810402d7bd52ee7862e8e927b668acdc262aff9afdd6f43ede4dfe6398968e05b36ea02b6ea29eeb827200c8fa0065f1e8a0140aa2a09eef88d1042e720d04539a0899c7f501eba36f0de5d8b23be4227707d4740269de6a057c7bd402f72ca0859e163cb88016f6ef646480c60286dd0aba8a093644ac87ad582894f1c3701728df66dee380ccffbf27799cdc062f80c0ab8ad5376829ad5142c236a5957e4961b7b2d6318d37f58f69e23e767f094d645a63dfc3aa4ed197b4860381a0a97e5e0fb71aaa8c40cacc232712e22d49141b3f45744ff1c7daeadcfd30bbfaa495ff50fd04808684c93ab3412c9e135d8b41d0d54d47db677f759c50648be385da2f780361331280952a70a338aae03b8710f039c928500dbf6b0c8b711a5189d303e8105b70dfba6981d42095aae15ee1f46c7c8db901e437e9f44dfdd2ef5ffefc20cd625d689eddfd75248fb3922135b654101fe3c8cfcd0c09633140e94482a4a725ad39cd26311a1e696d06cccd24520f8225eefc77b543de83820b697c5597f4d608114eb3cb88cb08e88684c610fafbb24798f1b1104e261a311773c5c7058660c80fbeb68c14b2d81eb65be812e0121fb7294839290d247d26d6afa03cc8db060118cf22af05f13c47a179fc85881f92d70ce6144e476411f2cf06994665e727ac285e737c98b8c1ebd6613493f4d329f71f90d4d41f1acae47c63cb0d3784037c065d4caf6f901ca7576ce0922643b21c1f8dd61a29ff65abd5b46e56875f9675b17e4d7c05fce848b71af1e2857518f168a6d5436d2fad0b0e9ee7488fcb52ebc3492572d254494359b842fdcae9873629429fb7392d7c0448c087bff758a7b258396ed02800d9352e390b496825f1eb7e493217738a5cae61bcb58c6b171f487aef811639be1011cf28ee4a1a94d47382cf2e3a41a75f30094bdb3506c38e52a8349c86b9e7b1a085a0fae79e6cfde37e52ec2a7d655c844d5788c8cb8c3bb98cef21809caf84e8fb70c1492321b4fd8f82436067b19813ea7b63c8fbd0d7ce5b18cd06dced160713f189dfc2bca58dca6c3647149dac93d93199ffd70c9b9e7767096ad5f5c8ef15240a6ba2059508529e31e8448e35341856c1dd31f042c6c8f0ff8aacf95b2f7df302f591f9a81f64153c6c824a002e9b2b0de59fb810213e33195b5ad97e92af3cbd2548d9eab4ee5a68a6056bc9a945c8e23c3306fc2863bc0afdb6529c2f7d46681f7947c953c5d6f0e7da5b548d5a96a27a66cb164516edf387dc81ead7773c9c4389a04f3870dbd081b66983e4fa570fdb4c8a62501925473ce358f0195b2ef6c8a120b62bab87cc286537018fb1d116c776a58cdb37a1d33ef011ec30a25a22ca47d09d588da706ea311db7a208bfab06e89e398abb7200eff78a428293080da05bdc7fafd7a42b0bcaad56b6b90ba48ed2477d7aa2d3393c0d684dcb63c8f72be70cb748c125cefa89cd33ba6f57b89357d755d4185ce41aa575e3525d0cfea471f80778be4fd2483be18d36b55c5f6d045d18504889b916a15e826a4fac843529290ae0c16c996424e2c36fe4cbb47a80c3b47a320df4b06721f2fa2d67bf82d1134ff99fd0c369cff0613afbd697bf7f181acde01e048cedec2711fa72bf067cbd54be2a91330c130917db0f2845fd4df96dec0899c03ced84fd46665ac3810f905ab0bd5e2e8398fd268c8a7ab1106d55728e1b892545f21bfa37cdb054b5d36fdcfda696cc626a5de72736d73c0becf3d62d19391c72f53305838623e8a00eae9258e3460254f24311e1768ee1807ff6cc47d22ad644a088e152a0e30c9823cecb7c0d26f2314943391d2372a11661498f17299d92cab5dba427b1abfba9208200fbe4b4fa8dad9f2eb217aea37ce8c54df0699fd40a9c189cdf86ed65bb537b2ec73769f3cf00c18369fb32dd552118a1aa74e8367e43d6a878c0a2021d84b6a5378ea7e3a07794b037ad48dfe1fce574c418547e272376ebae2253fd22b7309ed99f074d00fe1f511830463282d3ae5608fd2a348ed57c9c0c726798dbe2a6c1b23b1a52aca1b73541edc9395725962c6ba5aa06496fff8cc3d06134acd87102630d9b571a58d6ab4bc5952848ad224cd6ee2dd883a425e5960a241a504613b91a7fe3f1baa8eaa01f5642cecee9563fccbee49a6635289f35f0f302670b1de6217e0bf7a187570b7e2b5e671eab6337f3bbfd53ab16c1fc5f5053de6b351367dde41b2fef4064db2c46b21e04cb042d62087e4dbd392df4555c11d5f6b61bb6793c20a76f4b548c217d24ed910acb6dd7ae8032224b9e4f7152a2f7d481844ea3e3bab0a4dac925b7028df7b1b21199ca4b728efc7905b8c795148dbc4c8a9ccb36af67e0af7daa089ec7202385e9fb84e76cb75691e3198d216409cd2fd47aa197d7730b6de358f7e680345aadf43f3cde28ef7733ca2193d590683691b29bfdc1bbfe916de498b9adb4d28d8347c36fb7dea4be37bda074e3fc6237d0ec442094e303bf6ed4e36af02f0f10523ac945a1421468625ceed6717a0e0cc2930b0c53f77fcae8e45cd120449507500dd375cc6d962f2b4441ab0ad2eb1fc603089998f9e14eb7f3fa512d946db86a80e488052d99c4b837774e836d3d47c14c5c83bb793aaea7448234e97033b2b8fa34067fa293bb3e4a6f76b5573207458e373118dcc26e6304b4eb300e6c6ee9d1ae50df022609e79d0ea450e2fed220ba9d1da9c18c0b83cfaf8fcb743a355222a2fe3413db2ff00b643a9c414b1e545019094eb4a72fc67e595fc2125c481fdeaaf207060de28534574fbe14ffb8435729f69fca53b9c7fef4509c17ca4c0c7117659268c2bc2d745f3d58c52e282441dc7ec5fef433e866e1947756245870566376b825b427ff7aacdc8b4a7346292d486aadebec401b9d263b10213c1ef6fc15495b79e173260036a73b3a448aeac205b869312ec16c85057d813138329cf4582b45c5203408a1210aa3e638556bcd581efd17924d30098cd2e6f179f72f3c5791b40f085e6495c121bae5d2e7758b14f7626d42c087a102c0e8b2bd1698c92b0570c976ccf86bdefe4368c2ebcb11db03b50fc546d16e070750b002844d74110a1a6b640a83c7919a5581e953f9906869c008f001f8021576db42090a2537a82bdcf25b43139fd43f632e881e276ead35a6159955cf98417998db3bc0e59add9098481cdb1f651b5869814fb5f8263db8663e950f5c6e969da000b5e9c05e90a051acdc6d8b5699adaddbd753eaa9eb26aabc95ffcb6d8a0cd4e744e196cc0e18144184751356b8973fcb1a20936b886f7db26e304aaaca724671e305d5388f89cc7190782bf212be57f6fc60eb44c9760f64c77a49c00ba6a99e1526fc5ac99521ee463ddd65c7e0037b80beff63221f0db03eca80675c0e0f7bf36710497284c5dd39fda0f9b799a894c951a49cfcf27afd0051806a1835cd15ddbca5f497d730aeb368d8607cda577203cb70366f803ca2ef663ccd0b82992558ab2f707ea23633228d15cd509e5ec0aec12159c7f2149ac925d6b32343e251ffe1606d04f2ac2812c33a44c6bc22865e71bed39e6deaa5dfb0ab39dc80e3f40cb590128ed3b48df2056adffc093fb96627da46bfc70a9fa3fe74b2e721da2f2f62a614f217bb0c918be957eb3a22ca7bc6776668df1c3040f522224c78c19bed681737bb9b95e40e5fd4a3077dfd54017c744a23c79e44894c2a1f49dbf0113df40e02e0901bea2c6334e6d05819f2f4ec167fa3e3537773310311dca746ddcda237c3cd6acdf129e2e96e4e1466de31ea2a96b0a6d63ac706d7f29fa0aabbe426c27bf6baeb80e09b8d4f4a58ecedd1ed59a09b2f60341c2afe639fbda1d7941c6ed030d9a711cf17b0b8e67b25a59128af2433c4ad4c1261f520997276f9c9c9120269141616887299268a4e64619f2f7bf8a929c769ee7c3458cf2d3b4829c7b05afda19a65c1e80eea3311b56d2acafea70d8809774270c2ca23ec42a181de2571cd2146ce64c014b6f7f946f48f9e54c721c1ef83a10890474f68cdb85227bacc86a8da06dcfe84a1e6bba9a6b030036055b7332b51b3f39ba212edfe101ca1f882d87f9caa2ee20379ea3af50d5b976880293159f2ac0362194fb5898d32766d264edc570d6b78b9615d3ff621148ae8ce2b1d36562962e808b411f583243a388393a63cdd5a6ad211199610e4213dbc79a492904e9772c566123ff112f21563cf288c1b369d9d90b15f0ef0c3ba1c1b6a09e1158dda215a4a1c8a435ce6de15a050551355791ec98bee66825b8de05694b9810013fd433ebbe6671a0187c1aca6a73cb892224818a217c08c1b85809c618ae529ebeb6021e37a7f4880e32de22bc07d2d87f70e6aeee3673b4788dd1559caf51f125d7b5c797e8f166cccb9aa0a4af2c5d0a335ccf64077d103423068c3a5510f8fd139eed0de945ccec948167df64af6aec6382a239bca11f77a2b091f2e298ca8a854b8c10152ee071c55bdb4fbc1729bbbfbfb64fe0d6862902760d5acf1cb3caa1e6c286c51e43d043d9c6da2104d8bf198fff2d3fe4a3f44a62fdd5deb0f29514fcf1ac87a023a74d8cf3595c2d1a4a0c4c46ed12411c032c2be5ee3a71b4959e0ea18a3c31bd56b73ca5326e0fcd6376c86b1ae5c4af540ba5e3db23cab445fc0f09ab054646a216cc868fd8e79f5a33b7e24722865ce20b544bd0fae8c8cc278811186cd35312474df72d85e96d9fe58b7ae009e997357303df02606100863ab953d820bce8ad6b5a6e8c1380dbd0146aea4c46d70677ffe704da98a39e94fc6dc8cf3a4df009ac65ba6a20ec78106bba4b4b0dca71244a2411989e006dd7520738615b2ff516bf934cf3e67e2268874db376a48fbe811e9e9d9ea9042224d619583c42c958f98c78a20841206f6edc6d4cc466920624d65a9a4a8d69a0914738064aeca2404990a5b352b8d9fa89102dadc981bd35624ae15ce5185edd06927cd8398b73104df610aeaa3e39d0e846c217072534f1af304527a273b1e4ec3480e21f9720b0c96b793b363a935c0b21461d3bb44ecbae5c92ed537105d184813632792232501b335f48120681d15545ac288668fc8194b8018f5b6c5422036f1cd8d203c58f5c67d62233e86f5069377e516dd07c951373e192d6068fbc3ea56072859c1862862f0b8a32b8ef0d35bf01ee30e6ca4899d4bfa4fe3d9abe4005179c856901020b83fd98ac7b2f071049a24fb63799536e6cb5170401ad5d2a820b1a17176a31468823c012771461dd908861346faa13dddd351cfa238db52a15a5a1be775aec5d4a9a5640671ff6d97e907122b9031db7cea861b77faa021d73110474a292999a51f63e7646b8b0736256bdd2652403cb480397ddb3ea59d46a3c90fd3df39ee01c0241a22931db2281ecde0d8d5c2545b35c7f9e5e447174273bda0abba7e4897f1c23fd789aaf18bf249e45818244f8e076ddd6ef3eea73dde507c3083fc949fe7be1b2b384d44ef670ec5d2cf943d25ec9d71375408d81b502b2e490ed934d0a1d2e199bb462151d1443293a634aad1764bf5cdc606a267f8017325733e247c48cae46a0f6b6a36e8ee16dd0f5b9e7a58dabfccb1ccc756514c2be36b36326810fa0d6c57a5b22c8808f4208520225e6226bbeaa8a8b30ebecd747616c41422557f056f72f037ca9f3b9e614cd8e07853e257df1f0736045b7416d4a5619c999ee908dd21a54bc9bab0be5500592ca430d532204e2fbc8d40147f6462273c602f86b262ead5ee89786c5cd6d24f8b870f8dea72580c6362a9f29893ed8c5999582a569369895537fedd0e12aaa80e4ea853916a8206727b82ea63843f2d63f6af0038a2670e02a4caefdc374a43c3419a1406fb8d6ed78641842eea63533b11c4e343ccf3560ee91ebf2ea270d9442b36f710949f22409c2a3d680d909de54b98235a67cda026a498ff1269f0399d13fb8ca4e70b685e1d0db1df0203a1045ea5bf8557baeb5b1bc92aabb93b54f72b4c71a032ad8e0916888bd50baca49d08ca8b3cb234e1f9d0668773c73e8d3be3f058257ab2ff0ee73ec4e6d19f58b183d7dbbdabc8478af5ad8060a7f6d72720266b51a5b3b51575d33e97e5812d536ad99096e11a28c1ab2e828ae55307373623ad2631ba8d1b116e9288940a568b48498b3a3f93977d1f45ed5ebcbfe180f4b87870c9b9de29ac8e8a1f40ebfd115f5f73a4aff71301e70dca527b47d5c6eb48e737db106cd7f533ec82ebc9dad7e67ea93c1b7dfee2e28c4769ce9bf11643fdd3e68895909309b2f529d14a353bd63253200d1e7bfe0dabc02b192ccea09aa0edf76a17232711cda4286cea744d0b4dfc6dee8aac5614dc5778df0e839e92d10e14ef475afc3b6df9a2cfad33d00d2b163859cbf6e0b6d1211bf7bf9495d12dae444ba8111c5e6d2f03162ef6adcac1019a17212a60b6e4bf62ecaf06fb2ebe9443b172ffe014f9ede7b65915c653a0a65930975eace145f02281a680fb1deb225c33f68bcfa263117ad63a85b22aca799e3543c56cac32a43377d9d7802ee60c914404db7b0ccdb08354c70c303e569322f5d84e982363f9a6f3f83e2d6d9e2ef68442fde08022e5a25f2bc80786063559a0bc547b1681474a12fd7e413b214ae628d6ec8fe3e89a8137656357b8fe1052763e973c961a9cb80805c59616314019162049ff6132c079588bc50a3d75e9358c32c819625d1338198d1eb4e0f78e311d54f000318793c6037d89ac324d66d931789130ccff50f29536157e79701f655517c1270354a179192c2666e6cc8871d7c4902896fcc58fa614b57160f0a10d8c17b0cb7a36ecee894742ad99b3684c3181a3b4d23a6ee0a01ec8a9998143de5d62379e9489a713a4544233ef1c978cc54f1ffaaa44fe70eae8dd710b23bc93639a8253ebd9ca48b1c958be458f905827ef61708c45878a55a55f146e3f6af3e82e2125e2c6bf6620b9ee3a6c6109f90c6082badce461006e81601c97b02946718dd4df74725f0cd3956dcd4ffa339dd6db74b367404148c5eaf57e52d796ad2f6319bd6f85aecb36ddb5306cf373c62ce9d40b499e3fd2c59ab01b7d6362970a797c6621caa2493802fe8a5ec2cfad9e14e21d3bccb193ec7b3de7c64a34f4265a831210e4cdd068759c6184ae4820d5a3d39206dfbc861b68cdc5c40fee4cd0d7d7448c7510c48fbc45f4f14d1febdaea1ef6112159ab5cc8cb48c10846f4f48851e0082a43d85a09b1a33b86c9f90891cd0cbb27a983d3aaf917e391dd62b5aaf2a34e8ca18e538752e57de7ac6dc04b63905cf49d83dadaf9e5e7691549d5d71d3e0cc27989b78b90c82366c3e41edc2d4a8acfe551308fd03c745e4fed82c717772cbf4ad814af0128c6c5c7475728d7b49614e430ca032862304cc796d8853964944249bca7735f2db271036d2ec51305a87f2c50142fb0ff2f4606214f090e99d3e1296d9c1f215656466945a63e3541587089a0c884c66b8386556bc3f6f6aed5145d4e372f4d21278b163ad9c268a9c8f6018b948d996687cd47d1b77e288c828cc6dbf57430ad02fd20149ef33b237b24fe6af83f7d23c0b0dd571f9a84c70f006b76b963b6097def00b91830bb9c6f1970b0b73cde30970cbe55ec3ee5b7b2638562084d8107a08c7b160c3c206b236a8847fc9e18ea174cb6c943c637f615f3dada236bcda052e019e23f4c872fc521c544699212b42226a27e401dae4130e967c7be13d00c2abbc099b25d78b12a0d0a068a0ae52ed2b6f87dc1d30709cf9b76e1a14a4a1452d51be31748339057a18da44a25eaf08439eea34c7c585de7191ce3ea1b005f559769e85d25c56121c8544d956968d9eda18b9fc6c042fe3560412f14fa63ea5949372fffc94124cc10e0f1652b2f36ccba7cb94c64c563d4192a31c70d11bfc19365274f92bb085613ff48d8418628af7a7e91a441928a6cf4c790614ded5466ba52cfab680da542847f156f14e94ff1d5c764f693e22b965afb6a0b175d4619c2d73453d7164012b4d7debb8617353ecd057cd7baa0a9cd4d3123cd6a0d6bfa9b67e5accfb02a6e062d69b8f04656e5e2a2ba81889d7a7f1592c3e33e8c9a8679544262c7836ca6c05af9c6ea1107925ca71e616192249e052fc4df0cec7e36f07ad0204ed525a177cf3e7cd73f8f8820318e61e7015fe9ba68fa0e7f0f508cb0cbf40662ff684a4c1eb80ea65fc27447240429508f89695bbcc80859ee7ca027276ca92f9cba82f927d4392ed922875b58a09e75046d1c1fd3c53000d1f974785506f5ddf6e30c302ddf67e26035140b3782dbb21be946764310379814a110e10b7845bcd75abc4b15d3363c2024d14dcf7b964fcca63515c95e4ba9b78642bc632ee5f771a597bb580807b496be348ddd617d6750b78886ba9e4d0617f64903802e0bea11f6c2786e05c06d6ddc4f07cc9d4bbf808331a505f08a05d94efe05514a4b325b4cf0a0d9462831553e31a6077af0f730a9157cb026cf1bd0fe002a00431c92f470712f1fe789cc961905a9eb33187d6eaa4f31ad3e19e976142a700318d36d6771324ac04e70944c2d02ad4a117728b4d73bbc26fa0bb4da9a751821585b70568c4e0f6c977fdfbce98b8f11dc343e1a0c42090638279c98851b0e6fbdf3684c9cc0b86a0a58e1a55633511023d8d35c0b2b2377944e38fae15a8e3546d63f5900a2ca4db6b8976b1fc5a0cb1e8a3a247bfa4a27725e9f24f6db637590c18819693f624492c4df0fcadee005a78ad05b80fe8150fcb4c8abd60b1759ddaae7da2463ee1b79cd88d7cc6877da54d46c8e2215f8cc34c471098d575dfe8218b03aa790ea1253ef45d18fdba3897b6dad30124601617b4994bf583af7f19f7a058816661f8756c0866f8e6e9b92de8d99a214cbbc486d3dc78f20ab34f085f4964e429015a7a4ca3cf01e30c5b150bd8d425a80e5384915f58cb7b2e0a286cc759a3e6649ddfd7630237f22aefb1f8978bb567f2408238caafcc64166f1f7f5e2c384655969c0916046c221d5ec1d204285baa341cf1dc29c461494df880a902810ad03aab7824062487146ccdfdd9647dc5b42b1f6797bf61f14eb2b77ffc33a1a5cb3860ac432ab20f544a4fb90ba33af525b73746bc9ceab992b0b7519489652bbd43d1cc5637b2a82db750769e50421f7559a8fa38d8e72924b80ba5aafd60eee296d96890080358ab64f8f85fa51c210228acaab930f76071f1be5dabf7f902ce8a2a94c8ce5734b698a4822af3069dbd4ab9b2ab8423b432f5a933a4bb318822e4d89016d1e116bf8a62b00660b972ca6906cdebd6f475764eb4f7f624b3f0a6a26284624f2f7231b49693101836fccf476f894450cfda4e8e6b243e77676d5e3abe504ecb0e9ce940d88591f35d2f9d866a4e476e3440500130968931c22dd2ecbe499133db4a00ac3e315a87df285b1c8b9a64b3369a62a0078e5b8bace02fd00384005b306821cbffa59262901b40ee97d75fb24772ad690f68cbe0f0b69e471fb1a9a016f41354fcfa5ed3d782260c5b242b37ee96aa9f6cc7f38986ada8513a10030d3475a2a84cfe16a6042c5f898d5cac33d89f438006fa738955156bb7ff99de19d2699bc489865d32d59221022028bd766b8ded9d1a60d4fbec5e3a06bb036794c296eef0d659f52e8c3eecb093295a6472b1b2a49f56b61602c39e9083fd5ab02c0deff58eb3377b2f4a9eb893654a72e2b72bb23bfa768e8e882c380a32aa2ce906b617403c7c8c35287d3581f6f68e81ed432116f4c63281b786a4ce567e012d87dfd6a85926f6f15e86a98e012a9d0b7d56b1d4fcae3a7b1905480140a100287496493611203c6ec1e2e74700256e86b9cf79ece0127318f5afa398e4d4495b0c90afd325233cf22382f1e7eb6673fe1a578a5bc468401c7aeab9313b0344ac890453dfdbfd2b14e76c2b6136d58d63e60bd78a1ad579fc350c893d79c1a0e293946021cc0a0d0ae7346dde2afb7c05dbc12cf8befcef9c3510a41b6a7d125cdafa5214a1d9983b9aa19c890c31366b8889e89da73bcb5f1a0d977107166c5c39b470321c88a0bebac488ef95e9ca1c3f3191d59fbb022670ad9df061f4ec887e3d46fab851a0c104fc6431da9f1c23bde06839b7738b09e6d30ad8e5b4bf54cce45bf9cdc0852846e42a4bb94d57b85706803712542d1fdd8881041128908a31829887de25d9f180b71a171fb9e982e08c32d4f6e5c68e01e34cd8e21b7057552efc3f333118ea080cad7e0879c2b31f1480fb23ba2e44f75e853bed2d3d0170d2acd237d3e92c613f8c723fd8ffa22fc78672b47fcb509c983b92b0f35d9d452cf8b74c402830c30eaaa89b51dd7b4b2c79c2f7ce5901d03579fb59113998c3e39aa5b2df33b9aca4d472f60110d0d1bb89e503a544e3b19152fe642eec7047e8a57b860cfbd0ed633b07cc261c95d5bf8a8e54eecfe408ef00a83cf874d0c706a9ea620992cdcb334f1a16b8ae8f8426fe363b2354db5b996f4d8d99fea5ab7fd734568c329ee6443afc5ada014b0ae86af1a5718b2e3f33291e7d1cfda557df8ac870abdb021b874f82cc67ba36f85c6b305ddbc06fb1992580d2b77729f4952fddcd7d73bc4c9707a0e2275da22f42da8037516d4902be45a6be20020e20f4b9d586daccf1b5aa2d4e9dbf1c5208b608b34ba5bb0416d2ed11fa5457bcde55f57663e280e41ae31c0a4f8e63cbd2c5602b6bf0edc04c386515703b0fd74be28d8b0bd0f67431201cf888142a392cb2c460b44b8610455cf645fc0cfe36be9ba7681edd9737d86a601331b20d869466134634c0745b9ede38d3473b52c19762a41f932ca2d1f6496112e2637fe716056193803fd88f7a8928fcca57b2e5f6ed7478fafe76e2bf4b171374ad2bd17c24d20a290620d2c73254ac08798275f8a2991af88bbc6cb2a8c87bff47fc67d75f0b560c798064302d4ba310d440775ce5e962c2478f19698a71b3bcfe2ecd99b894e539832362260ed46c089bcd2056093bd35c42e4c84c10ce04555778adbacdf5ba5f9d67d967c4d8a8e3b2cd31eb18e94cbe082e6da240b971711d3f336dacfa300ff6ce48a1d436a4e0d5547c9d323bbd625a085f9183838944e6b505eb847100e622d12e89f7895f1a090a5f152e3c3eaf64d3ada56300a10daca55aef708f07285f6222a6a1a42887fd17a205311994e78015751de112b337472c269b051bb4879a7cc74a755d23e7614a1529d969225ca2ff92901bc034d75907f28706f61431970d04cd3a9bd964d85c33ab6cb1b7e6c7f36ef6c9ae23ec415c1a8d9d3f74494c4e0a9ece70cc8b36f5d90a505013a6d6145c61148072b44b57c13311f37279ab00d92861fe3da4635744d3c88631a11fc595bb3fc319723bc7026f800d28d4b36adf73ef09858e60b33ec32da635b3cf9e0c6ff86ce0e8d605aa64c628c139fa6846e97fc16a47026cdab023f70a8cd08f6a35ae32f38376873f3d3c157e7fee99c62d136b9b8ae044025eab2edadd23b03a89617db3616402ae6d4b5c1d28cfe85cf44b1ab2de31240aeb7b2c68160b902d80aafb51b6af42e4d866f7c64f25418defc4420d3400954d511b4686457e09f6fa263d619cf500884c5ae167ae542260ba4dff3a11b810c56c0c5eff795675ad620a447e4f91bcaec90ed70d8f4f84c04fabd942d1ee5afd3d80cd073980bd2becc45e21a8faa847a6341d99fe13204ed2765b8a3d03a61574f530d069ea3607270c101799b701634d5ec098c052de838326c74af43602c02aa63353a18b0a9ebffa8dc48c94615400466f242ef11f62165f0b6f8ee7ec9e7434846017c60c2f17de42e0220a2d4f85458e340722f240cc82d53166c5000e384e5a6b25700b75a5ee5e56a30eb47f114f8efd373af78f2b2403f2acf8087b33477adb32b9062c38b2435fd84865300e5650fef1f06b404920c9bc91c434ecf0c408fb65272ddd323b91b9ceefa60c1461827e3ff87b1d0551dadb6a5255b7396ea2a5a458b6a50135962a4eb5136f5ce473fb4027e028062bcb7ce36e52a6cfca2e0abc20decb4f82f2fc9446f5136fa80cd6fdfca828234ef347500da04f6ff2b19f315e01e9e8bd55ee1f44d31a01a24da9b64ff8f05dd833f687a5238851a438cd34c1d34a330d0deb204236c6b0f708d8a1c47ff3270918bc8bde559e3ba26202445c02410f1cac67d0248cd2d370230c13292ba46d2f1f6856ccb24f40a08d7951e9b5e0a45dd6f0dff07bce57d6070e6d37ce19b1e452b3a2661afbfe2fcd8140b72b669511c69abf2db3a9c8cf2d22cd0657e7618391323bc0f0028743dba7f67b38b6aca1c610c7d3fa1f3c7b02be48b65fb836ddf99f00657b69b1bde18122f073fe83d19bd4f9c5dd8b282507094270019145934254dc4e05f7c886463a231a075c4158b9fe248c5d4ac755800e5771f29a8227c471eeb1c2b94d690726e1d86dd9d3c2d4503ada23beb5f80eeb9411c953ad8c400d510e7beeace974698a4680a12b64d193ab0a689f4bca39fd4f8ca196a7289ea09ef05a090b5afcda1fa41b2a9ae1a5730d8e00563429eaed2fc94d8ae03f414ae52a229889457097f35659bd16c8c6403153680418205c68b688e6540afd1673eab01de47980b3bf879d6469142a30501a5a2761af19009964d9e46e3522d0447f22e4bcf9b875137d46883ac7b4ea1034146be2f4309be31db2926ec008f00c148f5466c230c692b10c8f84270ce1d48ffdb982b92ad7f47a9c261282e079bb665c1a5352715318cd3eae27e77b1cfe7e50f25145917e0c337901c40809b27a61adbc60bb4781d5417affdbd524458f1ae624360930e2d150b5f634b5b9e70aa7eeea84fb608c023cb6f7e584637e013118a324a11e060df4115763f6d1c49e123ead84209fa5144cbbac9dba17043fb45b4d8529a23ec6e5e6c8e3ed65557ae8779a623a449fefc3f5552441283879d88a3799814ba2a071d485293fd65411d74ef067874e81de6ea75c1f5dcdf1a8a25453dac63a011e77dc1fdc4c8aed5f0b33a5a51b25b65330d6fd9db6bb4a0520b40d862987e77fb5354b7fbe21f42d705431ebcf995ce318ed4452cc339a3bba5a12224f988b180dc0be7a43b148a11a71094e2de09797b693122cf0d1c83ddb953bca0a9a0c75b975268c4c6ff949a86aebb525e2e3adc0a03456ad79d9fe0d9be53d1b8be9ff69b2703b1e538e08dccdd96171950180cfb8a21b75419583e3c804733c4ecbbcb237c87db542f93559df1a7e5bb8a842193948887db25a846590f4659854b464f641712e26e214fd0e313fb813610376fc885e3d7c0f86bebe1bc80f101b9f2189496df7eab553db576a1bcf865d4890c6294e1bccbc7602652b25b9aa8da9ec398b9203601c7e18be86586042792d919ae3a7744231b6efedc23e396a27dcb48cffd4b877120967f4ed82e30a5a9dea5b545bd7d03bed8ff306ee7b9daccfbd04862275504d18cef5768f1829c679331282399e4326e93449ee6835678dd0349ad2491c7667136d85da5df68f381e4b0c2ac5366cc549ed461c68c453a85e680c6ede34ff85a3a1a9bc49d3c63f365b6908dc25dfba63dad591a7c013536d30e12e8b106d93119e8b3a9b29b56b963eec533a2a859de26c438608eb8c58d00f509a6b3f2aef1f18fdf7d4298ab3682837179e1e6d58a0262977264faf249beaff0ec1ea6d0de6f1cceee46c556ef367b370abb58a86697be1ae883c6d7512900b749401479150bef2123ed1602bc53176b32843aad9d76ccbd304580541318e33b20d615eb6234358e9f63c5e195c3d5decc1c4378d51a470dd6e458b4b9c8e9a458202c628015342205c78c55b7474f9eda5a3d5c7a0bf276c7a15937f515932a9b6fa0473de2b1a164b21ddc8d3a456c494c6ec1674151449eba583a5529ca81a90cc8d1660584e6680bb3b2c1226c4233510c790cc0127d40dd2c20f6360aa03ff52552694b3417e2d92a277a0e2281d74e945deab890c07fd98f3b7ce24bcc996a6ac0d9e8febe4d3879f4bf53fb1130b9f024400384a39725622acfe84f7b49c4580d8af75ff48fa4dddbc060e3bfe6691c311c1513cf9738153fdf1a3d977252c0806547130f96e79ebe8cde90943058b78bf3cf18927d33f8f992508e78e81d3a632c08e86899a152ae47d8d1b7a3a5452b2aa41fb7eeff1b152bf5a19b1f209983c5afbe398eff60f3a7c9670bc14624309a4f905703120fc4c53d49741127764bcd901d5ed57c86e676e474a88b8898408d9f580dd1049a7fb4fca257ebd5f8862d080754ab0906930e11723636f32e00718f65ce14fba49dec0cbf65c397d857bb34ead442c1b6e2e58b9a6136c6bccc44358843b5f539fca17faced355e67a367db4962631abec902c220788e3fc0880eb25825c79f2fd807f8474e536687519d9104d7ed74e387e35805bcead4275d888e1fe19f737bd024d8dcfec888faed762cfd19083d053dfc75b3164a9a7d344c4de586ebf4a2b2bac2a42a9ebe8a5aa441c6e7eeeae3bb3de1ae81a271e79dc36440a1fe5f1fcc2f284107959d0a058e68a28c68f5e51b14543288bb4154aa6019498d101acdae40a0535ce85dfe0ef2607f6524423673135cd00b34582ea8b1b0ea81c56f3bfb71f6c375c6d5bfcae1fff7ce989efa375b91d0cd80a75d01b0648ef5935d770ba0f6cf18b7922261e67c814df6a56015b7cc4acf52618f0debe1860a5c91c0d56310093f51334d4084c71115865e6fcd4fa6cf39840369123033ee7e53390478ba324f06f9dcb43d540d6c45b0a7981d84a418a2705dfe7523d9b4f93c72a12d0c30c02748962d381c7d07c8920e58f1774c53cdcccad61b663305ede2292e298197107243bc2c992ae656dd73d89c4457a5c644bc311f0fc58417cd84e2e60c98512d716805ad800424cc35bd000e6978b1ed018141b7e24d423ee24bba9aa9e0516c8722a0e22f111bed1d1bf5d37d16fe9bdb4c9ae3b7f2a8029a600bbc0e043fcda811e2d0454d28fdb4c84cb3911c6f60925a1a16296896a1f10818ac07d4341ade5718dd43838e275e92c44c584f17a4a934389eb348139e1dab026aa16f1b339ac1de50561bde2bc66972e2ace3e568d3f90ad2f65a74217750aa93ddf6b891b1ee7fd71a9211a2c2900dad7fda4712a935809baa7058455fc8177fab5d169c91e02618ce323cad815e450e122ab1de5e62c7872cf4d31c0b810a632108a14614049d06ff89c6bf1bcff6ffb6d980c05d53a16eb1d6e5d3afe8e82d395396a3c2a1cf27afb1fdf2deab93d3ac18ca6267ee204bc395911cd015cf4ca9bbbbceee04995b02177f4373838e9e0f3f497103a9d0cf5a5f9c9dd7e6661584ed8e9fed0c7bf560d736bf77dced50046d8f0a0d35e1d8dba91b350fbbf8d19ab824fe3f74cceea123d4bb7d077d0140192ff47ae6ed46484fb3e9577c681bf7320f6aae294ea8a5ecc45fd63c0bc940f00e37f5d2a2d8779e902c6791ba0a64ab17521f27f18fa3770bb93ce2aa494de471439b1b6b708cc952e469b06dea064a97de074956bfa172b5d58f1eb63c1477adea3cd4ef0a690939db5c2d5e0fd89339f8d06e904c6fe7a7e7cb35f37d1266584a18b221e8242a531d0aeea53c624690fd0da49828a016ab08883e7bd36b45874b6fde211423453aaedeaed60d5c3da49014e63d8332827199632b80caddf22ea9a082b1455218fe9dc1dedfd85d8e5d16de287aac9891e3bff78164d325e8aebcb4abdd10199d3b5ea0770982663278fce9de8b33f0fede9344779ff9ea5e3284242b77b1078abf77d8276dd6108ee887e521e152aebe936554588fe18e7b8bf24fab8495ac8a9f9d756a16dd27f7c30ef5f1bc6353aa1159819b9c80fa2f74d97590032ec70f8558696a06ed269562d54b220de86ac74c371c45cf991c5f1bf4b2cf5d3f7a10b1d8087c373da087edd2b4ff470a9000a04c9d5845fb598ecc7c7225e13cef031326bc2b00f488cd07677a48d31e5d7a23c2892d0f3f97c264cb1b839f712ade772292b25609bd5aa9ceb069265f31024c2707c16a503eed498ef77958686a10f4303372df9ddf6b6ce11d623c868ed744c52aeb70f74cd94a369e782826bf3660b3915ed2e7fa857f88594ac32f8e065007cc10d8897167a8a48baefe22dbd4980cfbe537165d20c2a9f73ae00b6b681e85354db51665933b45a0541b370dd8abf05f55b8113b53c5b3488c74e968f051cdeea551d145c4b58165a6fbb70ccaa1dad10f49e1354e7063055b30af650449527385bd665373082c26a9508c606f0ccbc8c7ca58af886815cf45546a1941f42131dc5b1af416a1670d517a79eb7e0d5c69dad960b11dab8e192b3b8bd17be988b4a680886a885c681157f5a509904feb95d6df9b053e40c879eb155f914ea8786a030bf613c3412e0d2b00e1e5f0ac68c948289c18a1181f93f8744237b5112a394b0ee8c536072880ba43808a87232b1f872af3016c6f3e5805336423bb9dc37cfdd00fb2a2e32895a00fa34d19846e57629e93d0c7622a029075be95d6839e1243cb9fcb40eb054a59d052ef092eaf40791638e24a4fd032612f921591f0dd22b8c9146a7185010ced658307006e0da5563980572dc7ab9b1ab5dc41d7bf47863a28efaea0122a34bf74a41ca068b4cb01d31635a03b061a12a6ad68c9e6758bd87bbfc00954308f287ae0f2eb251ed92dbda4ec493c5f50a5d1ab8fcad98542d0f7e9f50a8dae3b4d2d900af4405cd93ae3ba83329a4e4ae5f6bfbd8b5ec54bcccd2c7c2bf62511fc3c6aed7489b5d6d8d843406ce133c5c88cad20a3c65aeb450f6562410031f1af57db08504d81953649cc90ae859401d0a0b44443c79c2a3236ae01648ead052323afbf39102efbf0056d42a01c3054795e13ec4cb6ddaf09b19392353251b50cbc6f9fca6696541ba1fcec9ea8c68a8221328e8f2d8b282b7fbcbdc50a8cbfaf517e4785921d17005eb2b84e4c887734133894af3266773930bc7f9154f3b1e6967f273bd7511edb82e572c06834d9967b71808b0cd88657c57c392a3b6e03be4e3a37d65cd8591fac40d0a31f6aeb4079f643744f6d692678d6a4d64bb62292e284490fac07c3fa919806961b8a34f5cae03cc6e0a6e836d65176c3eba1f86f1c94f4eb5fc1e17c39302f8cf7e07f40a47947c03692e621617d7a93b61031f44234a020d378707b94b2cebec36dee621ab71b0bb74500c65ea63cb2c6f106995204d0b552ff8bcea1fbe8ffe1464b39822ebcdd74623e748e098f94069dfe67cd987ab8ed805d5cbd0cc9ca43596ccdefb8e4e970db4f434bc8a6e0653d6303cdc26c808748b4199101044b7de846c447648b8461bd6c1e154a7d139b5bff3b255190d8f4e2befb72cb39230e3bf29262a6c14ac1569a76ccdef0dcedef3c27a93ffba0132dd40afde38078494ba885b8db468d57125956115d597ec1da6005511a2fd9a368aa1046f21df190e5ee13699bb44e5418fc50c0d3083feae7b961676d73aa01e5a1509d40013106a8402b5920a00ea8e6ba23890fafea8d988c2c6b1a82003f926f674f75060091b37400dd24f051c43c59648f401a798d6608cf255da7874f6c6bd5630f80f04421752f2d450993e4b91b0cf94aead6234ad0dbd6d7894682913da9b5326721ec941c7f7a5bde1e5b9eea0b14ce2ec7c812a4b54588a13480b86fc19d540b1e020c2bdbe9421fcefda92c616e2e39fb2d2e3cd32f5f7da248e078e7dd198d549365585ab69f547877c4afd3c0a658bc158428cc73b412677033244600033b566041c9c87ffabc75934de84e03e8a1d77e01e937c29be4bfe4dde19e91ba418d40314a78bb2b02352a2727c6b7c103fddf65e6ef34e5dfd1ba086751cf107c99f445703e8ea253e7f33c44ad63827a85c13222b268cd2b80607d11ba5372cd99f58ebec862abde6b6c67747cc7c278a69c098b08d77e26fcd0992c07dd684031d0dcf45358f5b6599f86a6bd2d3efd59cc20831239467b1bebc8ff6337e27a2b64f70827bfe41e57c1732dca8601cac0ba609d8faede5ff6de5f45d459261084137b6c0a28f3210e6742fc7d2966af1a0d770d4d5b96b0f68ae5839770039873d0e1799780d82d29ab82fbfa3c34d0dfd3c5203960bf919256d65c54317e880d204b4085d04a14cac71e2a8c3f357a56d3f4c542985101f84134abfaf0a55ff83aff3bf5921afca1c4e9f8a93d9509d0a3da1fa1a03fd666036ac21efe825684667f6998a2ff606c322711fba13cb94259c1fb364dab5e9cd6c3221ccced68935f44749f7c9508e0d200478691d52531c3aaf1e793506715a875caa006407e3e5f7b0e2ae3830a04edae021ac8ca15bfd02f869c945ee04ea66bf5402953ceebd6d7b0243473487aa2890217fc8745fd24f3cfb0c292ec575b120748479b73c6bd410c7b734533432611fb186de95c772e18b3d0a5dcc75d8cbd991be10e8af633e9b6b7cff73902ca3e981f584f57ab58e0a7ae5df544c7999c61e665d601b87469518d24881e5f9b0ff237a6f536c2543004c49ca8ac8554730a2d679d2479f5cdce0f23a321623179ff0810d42278f935b2f7367423f07ffe18dd9477cac2d923d8d86ac1c5149b703c4da92a19b5acd8368d6e2957f5d47e07fd53fdc109eaea1ae2f59b9e47a39ddb187049adc6dc0888c65653db48ea7351ca6d08d92f2e3438816cfd711254277540c5b95dc763c25083a9daaa84bb989c3e1686deafacac05c90d811cb223edefb993d33b5e0ae5ce1c7b27570a7ef5f45fd65b80808cfa40f8f77f6b1512bcbf1344e7534c0cd84325e234d52ca9c523071e15440bdcda62b5f5da2044122df6c404f923a7cb7cadfc1549d6ddc0f75465f5816f4cf6651515ec833c65045921b42074412101997476ba69171a7a34c6241ca5d8a485ced9b6d55c0883112e1890598e5e8e03fa7bb5b8f4405b8d016ca227ba2da507b5ee14ff3885249d1c8e834133087602b86f0eb889b27dfdc400a9d8264ee7064b08379017b9576fe70a47ce7bae61d62f5c64bb1a6ef8f5a7c1ed0ea695e951237fcafe75c8521600d73d31637f0c8a930c9922ff0ce05e9d6b07078f48c8f3c855564572b0b42b467dae31263b5dd5e9bf3cd481b9f6e54a692ed4051440f1f3a8dc84a53e7978a2c0e09679bc62500a56f39b9e4fe98c9f21a225af6b1d32d12c97b6606a1c98bb5096499604ca60ff8d32f4d471ead35f2c3bc402b6a8fb8e35c2499ac086f48007d2b9b40b11b3611e0e82ce1b88eea3c7bb2232cb54251bf36e54ef5393abd4e101deafaf578e1ed971eaa126cd865dd0d368666c66d2dc1d550d95d280b203d27ccb3ced5489d3de36864d6314ee6e9ea06a8a585ade24f6d12cd1bbb2c359051e9cfaa9a06e6a6328484299647ddc1ba27c7fc4dce0739bbd217f043a725736641f49d25a1732be45d56feb3358792f012a4d17afe28ab6df2369bbf124fa5150f3d0907953b9854c633c067acf1034af73bceb9f3c3e014174e28ecf106cc3164d4a256f1eff0ee24a42cb5202d84d725a79f2259e152250498ce0ec5f348625ba2d7053f10eb95f2a4f516ff9a36d90be73f907cebf554d8e09ba1a35e7610fb6949e8cb3fd94156718cbe9fa6376183f1a478a78237814a2d8c1cf14024565b8efbe4fc632765a9de1fc792f3f223ae46005c731e098893bcc90897fa010a902d411fbf252f9ead93903964de82569f5764a6953b95cf2e0c1ac306e94ea26bcd2e4701b05a68dd6018952b71294ff8cf9e964aad1feacca58bcb343f20aa9837055d58bb8bbebf3f375bf0db57f53b0ea4e4b4804777ccfa4c00bc601a54b3e474c6d036c91274955e6db407ce8addd01a30283c7d2e04502b5dfee0daf9146270985bca3e7534606de2855b93319a4c26003a1fb2abaa1a3394a37033d52d815618831474f4260c62ce6930b699e8d0b76968093a4943810418cd962516ccef3c4cb3d9cb5d7752ccacdf1a42a6dc33a64a5d6b86534e6be627e93f7a3a689713913bea03acdef32e1d86b0c136df973a5e08ebb181817b64958c942e9e43eb17dd305944bb22d47d547b56f475b6ae5dde310b75ce19c4c8b9946dca5182ba9e3ddf4c4b894be4228a4a9db68726eee9d1b09e4fb4db57089768235f831af6ad3fd140d688a0338ff9644f5df29f7660238d828400d9cf7bafbf56afdab8a103d2d9122d22f417838d12dc80501c6ce5bd15b4ae3e5f7ddf0edbd752e95fda6bc70e831348df9644f9a2cc3575fb68e81180d6424c93ae8aeb5549b9e6ec9fa9c07fb8789c70b49be157fa8a0242d7f5ba1c37ff9b6bb46f1eb6f31771dd1e37813f03b75d245b55c9456ecbc18e4e4212187ffe692ca23248bf4616f5f2e5af49a7f601cbd8e12626232fa6858661e507085eb817d159d26a1e8e1a05d68e2873501ba081c7d666956d7debf6952ccd9525f5d4dac4d163f0297b346c311c4e63f9ba88dd4d232ba5c888b8c4e6513557b7c068b43697f3310f2509b9f85f70c3d7ab5889f9b5358c1083f9d604742435d6ceec2b927701cfa8103bf7975e813e32f8480e18e732f6eba260642c02a1e9ef206b77d8455582f7b8235001527e9fbf0d65f27a60339bf01bdb3fe9e165586106af9a289e84681c9b103e88003f0e682a5769d590401e7b014408dea9c4259029d84183e85d485f3a4dacf939e0e9e7f4b21f5c19175fe0fec846b4961a75f781a83611bfe5c051212bae167ecc81e939ca2946dc76346415be0b56aaaac6348f0e636b3445c031e6e4dd04c09c7881691d3bd53dc0eb02441f04af9f0a1570df5a1da81db31df9cc91274c055f192d6e2a789d52ed32a73143bb84a8da4c87e567cecf5a9cf921457526cae48dc28b96fc88790b77ddb85b5044d21a6df8b3ae33529245c33a2b8cfc508241fb448ea2f8c5bdb59c45067c42873559990d4ebfedf13f639f3db38bf37f853410862339c3e4b38f5e5458020e5598637e55b2e78a01dc97d26d9b70d0e140dfd4598a7ddb5dcda1325c674f228621b6e2ca9f8602f0720038f829dfea6e237d0cd8f23e0bf4b43b8109899887262cb4d2b6eeaf8982ca1558da2801d7fc402fde3581b9e593300fe64b8fae3472741ed2ecb405a059590ec6961fbfe6a48ad547ce8da6b8955d29999b49878918076291b49a1fb26f1523ddf61aa6d411a956c07bf168c09f23f1b38a737485ca8f120dbc3fb7f4162cb6795d0d9d82bf7f271ccfcfb3239cbb882513432c3e4eb3354e1685a030e7023e62a936afa704e1fe553a4b637a2c064e3a1204235f821bc6178cd1c6aa4ffe733cb59e69f737e4708eb983ed81c7a9cc150767a2605c92fedbce7661b55c55df7d5fd9e7d4b206922916b5456d61bbf1d93ae1179d485c1d6467e2ec20ed141e631a0fe8038702d08865814838314ca24adc8198fc6892a45b8a54021865e9cc0b718a51188b58332c76654f98add7358ca432678d8ad42b48df0c62997090915f1c6474e5e02c90828068fa43cce96cb4fac08a81ee12ca9593f1aac27c75279fc68c14c81f5683911ee33c7c7d48fec6b49a34a2b4098135954afa27cbf28d2f9dccf837c8314fdedb1d823763288752b5c59fe1669fdd6782b9eb1038541dd17932c1519c91fa4be9c94a2135a9c40234ca5fe1875e4707d814c6f3b0e0cb3c8539c1adbe390785aec115959275b8e5f2ef18007a844cb1feb075922427e95648475dc22f2a2a1bff8cb79096cfb5ae81602ebf8a1fe4a3709e284050a727db602eb875adbc41d6be3a9ea0791e29fa460bc7a96761b9030b6a95bb8af998e4859d6895b7e246ff440cf1b86ec9cd79267a5471f88231bf1f10a8c4e9050b402cc67e2bd612800d5a18b01614571a732b11094c14f8babfbfbc92ca4e9af3cc1311166daeb3064018e60029991dc6fadd7acc0f25ac5e5c4d710b03ce6066f8857afa21255c8924613baeab123c12a4348c968bfcbfae7391b145f57f2a519cfce05379a4e025484514336d359b721423ff6317347db9a30940490da816c1412b2be8151e324922518329954a9956503c2541c221d649a368ba11e1342ad54abd966a2425a7b0bf65427858e816b293b795e08ed92fae84067d09e115007d6ab7a20d5e33edeeb455f60df9ca8df1c5478030eec31e8448567fd9c440102bff19f9ffe8e73c576e22947fc68ad95748ffc8668b10169f091d24dd3d24b24f1bda08ffcdb81519ee7fdadb666e08fb97d96d9bb1057471a75904ab21cc4daa17ffce191c3a8e667f7c6415d409f75567bdd93f077db8c55e8f37cef1b3df95746a0b1fed3daf547758b6e2879eac0db094f8a9479de4e5ca768e0905e1710b84d348054ef9efe45187a862d84f68cdb1d1eb77c7331bbbdbd0c20b0e4f9d65341b9c9c36db28f6f823e0f7addf07087fc8657551b74c2073bc5e34c826e06731c98c901792ca280fbe4380463c7a3c73ee4af03daafa9a022d7c35526dba3615016b85e636e9d16cb929b58e574d74d016c172f089a3e7cdc6dd366d45c747549b5fa6c7bd92bb56f0890479c77f696dc2eb8e945938b3de5e9fbe76c6314e35b27ae91d689ad6058654bef204930bcdbae60c3f0d65d977d17dea8763b37e25ca9c7560cf47c34aedb6de24ed4ea56cb29ea62acede6b00e83d4f74c65cd29474f7ed30180993ccfca15aefdc66b43eaab114c5a1f7725a0e3eff778e556f36ff7cd4af2a0edfba1fb7db6b9031879daa3f0fbf01ea75c3bd2dffa35c262526beb95613cbc0a3489ca60bc79f3461341b7633978023b6f7b177e11dde1ecb5b62c0f626d00aa02bf76eca5685f337878193f0ff89e35c490189b9c677a311510090dcdf4ab78b2e9a770f17cf4dccbc4a41d795b1b146c66f6610e2437fb5cc642320020fc2d7ed7231b18007df730f70534687c0c804b5d75f87d82c1f00b8b26d7544376e2008820ff23466dbfa1fbef31e2efa8ed079d1caabf89fadc677954e3632f3505e6523b32c4b3b610d3cc5c8190550e43e302e4ad556736dd97cf7a55d015fe2822f2a90e57524da6d75925e75f0e654c54304862b268322cec588426bf6801ab878907043790d0a5435c620e255860c3a8b88130f87c5a3b5724eb83d50af902350466da5fac8f1a5e334d44f12481423bd281b36055f588786bc2af8bfdbf1293e84d16f1cddec897e7847c1d65bdf537b6c8516fcfe876ad1eea534e5c897e2a744054f4f975b63077efc9ac52fbf9a4c432f501a444c15e70b3d60d33308dc5e1407f3809138042175ea0dec764af7bc02899874b0dbc41aae268d769a46cf356098ca0c8a562421bd74a24bfd32fa890a068c58a8144572f5ade85290311ec96d7a4da1a088039102cfa8eab5ab603288461c1050176b1bf46f62f5148ab6f305ba8ed9f6775208a717d7702f91f7421c0f0ec08f9626891882f45b78e95e4356720d9aa5018e324a0148a4d09a28c033514af8941da9905e6d0ce07bca2839593a2069de70f1a1f0324d3e75653f3ae426801a5a003a7e3384b6ac6018028a1f5a3e6b78ebcbb1c0c82542b87b25d3bb61d84e6522e5779cc8c5b9dbbf5201507c5447c7dc1023c0c1aa0a43acc30ded5382f2e0d6366bdbe666b22990926c7c2385e85c0c76c65d0c81c73eb58fa51743eee878972f01a79b688dcbc2bb7a8953f3d37d35f41d76ff0cd310e055b9adf2e13f3d9f1dc2dc5c50f44299aca3d4a55385476b449e260902aea2486da9ea9be33e9296873e86b80de512d92baa31d31c852059a24632c6ab9323c4dde9a98a950e533ada75259a693ba76f8b5674d7fe9c036cc8a011f4ba958b453ba3060c374721a1c0c43791346005c21c5a1558792eae23cb49ddf40da5dcd7bcdfa641099ddabddd6da7e8eda5f778805258fd291eb55ef1bd1f890d1026e4160e1462e7b24b9e22a57527b6b0d677095348c9117592cb0fa76a8cc6b9a5835937755e36f3a5e49b728f65890aa1c02bc1c2255890195cb58022ed251f16fe05b26647e0faba85d2402969f66351ead90d00e7ca3cbde6ce843dc1c5256dd1287c505128ed6f76401ce47156317ebde108476e3887e5dab835997fe547e251825625188d1605549ed81311610aef2fbef5b40061b031508fb7da702fdfaff3263e5dfb2e98df7b0b5f02d98d7572134800573a0cfcea0f9d009242abd99f077fc1aac60801f60dfe59c564c8bb214b89f2abe0a196bb63c1461c15c1608a9cd8250997537e1b35f5e3b899ac5bd2b360195f57d136571a89cc2cc64f61c7434fc780cdeb2dc72f94857b0892300e2a42bd67f4119f5c8c5b8f2d5e8fcac5b64015b3ea71d32f20c28d824541410077d8585c43a414bffeadceb19c749c0f8bcfbe2ad9fe48fb634fe7ac3c021a32d3d6d664421863db0103a36a02dbeb98bf7f6f940bb9429ff45acecb853d4cfb9a3992052e72f81fa6fbfcf56d14ca1df7c4ce9ba6e4207fba3bf58f261623c109ed949146c1cfad4418d1ea2420a624ee59301c75b4a6bca78dddf3a65480e7e7a396305da80a7a615c0551c499cfebb07b81385a48f0b6599f801772f03154577e4c3e76b755bd75fd65abc83392d275b7c6c0e9aee2ddfd1326123d9c20116f359cca47e87a744aff545f00bed676b688e4f9d5f5f9e5e3b0b56dd2d68c324536104271d7626f3b798a450c9d24f5fbf67ca16ebe966199ee5db3f2a95c1d2d9542890b99d42be21097f205a1514dd4cd0a04e3e421367c40075fe2566d28c977da0b83d2bb94f9cd7ac3a8b416fc0b0a807ff17776a389d12ab3f3edf3e0600779712dabf5d028542f3d66445279c03e3295114446acd1188a89688501393155f9e6219f0af35cf30a713ab52a6cd1b425030a41143dd8378e318045bb58cd5348cc0014a930000dcc38c7e64d34f52d3945cb72abb68114be9d3c7f2f2e233b7eb7f61fea4fd13c86192ba242c58e4128b8cd15b0975fc11b63f483a6af3d7685d9120d835631784ba4c3f625936339dc45ee3358e97c6c3c4d0a389d44313fa18f88eef7cf9d218ec944b9d856c34bc68d5d3dc2b54fe59c7ff7bcb440fb91f70276ae38c26703cb3ddad5dd53ec7a0a6fbeeac3728d44368a6dae0cd753e38870d3db137a4967c4a36e3c795ba57bed15e7dae40c5273af9d0fabb4971a76b62f349fcb23f74c38431b6bce511087dae87b0dd11da8156f525d3abce9e507982f6c217daf7da0ef8965881ab410f95e2e549ff873cdfba77a090db6cd267182c32e634266bfef02c35c46b6f58858d0c76ddc5521b12390d55c2367006445488a151793f02fd7205a3cc21b69ef071c92e72bf7083ad9a48edd05a281e4a8c658d066bc0e7d5b053c31db99a58ccb700b66a14a650a986a321106ec1bab4eaa2e35db10618fb385d6b3aa24f60ae21dfc96a2a13c4ae9063accce95e4b47e47f040923de0504b06af9b9050eda3293273a9b88428052cd26cdb1c9a2b9202238bd9547c76a53fdb66c1b3948568f14a2b9c4b928f46c66ea0d3d8c1c2b6f028b90fc0293489e52181bc15123f5bdf8161c40b022b2423b53b874f8112c9d4003ea4c77bb643a2c9b4d818106e2f07715611109178d74fd1719aef39a23953b78b497b1a3c4658add6b95a93b600d38959f81a3ce9416a1b14a97bf1d19cdbc04db0e5141debead6419a8eb019c9145c77c842a3ef8cde5c532e0c495a277e85e2506edc684da23dc2ad2eb4a366057963066b2a0bd9a1a0e1b8793d7cc740a090662fb39e586b06fb768eaa334f1cbe932c6f822b741d8edd29abe47d8837642d8ef93a78a0cac6891cf4dc8ad9b52fda5b669c95df6b9b9313773176a8b16147e30527dcc0ee13e9435abb6a7ecbb2aabc71c26e66ee59037f3162a7ea16791e04ccf773eeefdfc389af59313d14b2cf49ee771ef6507ebfd7c9cef4d4e339b332994ac7d1f6d352d4cdf812b025f2f856b9b0060c6cb41c5c3f0b87c29fdcfd0e76464eb0607a892fd4d5bb86eef14baab47ef568bc300410ccd288ff172e6129942b9923dfd121249fc69d91e593b6816b891e0c7ff7aee6601d824c69d9f202d90e8e3eaa814cf6501b05dd8bf0497a7dc9510ffce0d5bc46a511b384fa1dc8289cd600082f2104e3d0e1f84c10625bc74c33e2f2a82aac1caf905bd82ee59696be897c9a63234b40c313cc2b988bcb78de36f010a0e96936598f9c58e7efe6d3f0558b8c0acf7de1a7e78447c14967d00d30bf64371be404e5ff58259afb79cc3284655a763e878936a2687df3dec4cdcc9e30efc2db5e9f96ba3b74dbf5bc7b91efbfeb0c21e3c3fd633420fec1b9f6274bef5749e6cf7d4ccea042f4f078a94e5e8db394c96ca313bfc7f1e505178e1dbcd8e51ec23faf6793b1830b355f7f3ff181e284f240bfa0e3a7bdb7bcbef12cd7153ab8166a198a7a0ce17005fa61805c531d5e7c1866dc68a0681275cf8c08be173c50167f8a3b80c027f5b8d4d3abcc1dd2972bbf9cc7b613cd935f4f1c30c45926e1fe0540eafa6ca28ca201838e58a221a0a074f36cf417a62f7491bd7ca49c4895ad0b538732b57170bd8faa00505c05ce615597801a2bc74e66633549678a7126610921cb3c5a4823ba3ee7e3b180d6a58a7812567fdf248f084a3fc342d43146c978fb8efc38960a7889b3711572474d5db5ff1ec4b9e0aad083aa2025d787094de973cd5207bc36f5f1c7550074d36e49d48e9aa1aa8bf6d43c8a238ba08855a61ed09699809eb2e28a4379c62a43d3e041be4e4f1740e4dc00c554a6b0dd82ee26505b3818406d9ab55f9eb482e43c7258871213185215aef6a7c2cead5f2c8a060521a344690c46a08ec5a529c5b07473f262c32fba9478f636982db75639d764d43654b47b9dc2de7814ccc711fdc2652cef018d160f3c09e27534c009137b01c068317347467ceac6e5c3b0b57acdb15649a358626425cea6eb7b0b05b37156acaa79c90794fc6fe86b40c961e911216a02bd2f593ed633487a839e1def2b10cf39a35d224aa4a5538224701dc968a88b85fb22c1e18c805631aef090e148ebee13ce8c1995dcd8773e9f371703d2538c1da05bcb19a861a95f5c70bb8768fc713bab630660f5601ca7102714a8e1f26cf8b734ab53b201a891127268d3895835c7aa2605dbf389385f0808188a918db6d16a6717a7ae70db9b1b85c8364f508c5b6315506a1239f45378bbcb8abf75a3dc449da5ec485d39cbc7a66ec2b50cbf2645c9f132dc8dfd2303001f118252899aee39ec46bc578f38696fc53b3c607aa2c23cd0abfb806cd70031a5292105bffd53d6fb8a6524ee89fae3cc2e13111cdea86975d8b5792909445d86f880c1367b15f1ac666036c2eccfcc99567d8eff5e2104c1e828a695ab55a5d29f6fffacc0d9ee04814831952d9eff5279d4e35272a4c10d571dee79f94a3254bcb2f75439898ed870b4adaae98f0eeda50b8072884600cb08b9f24c5aeacc16ff36c887315c8f2f6b5528def1bf7d78fbfa76cd08545bcb3939a6452f471d9b306b69d6ecbffa23c688b10bf820ff4f316e8733e0c69938ef4faacd115934f8c53848016a515e4ea0c00baaa7beb801ef54c4e62bedf3261044f7828e9869dda208bacdbccd3241c238d081d2384502afdc9057ce91dcfb3788281a583064b21e00e57a0464139d0b815cb5e38a1f55bad97484e45c50f5bf2e1492c1ed8c1346c27c12df9a9255163a2a742bc3a867f9a9ed3f6576062ead37035e53f77a7b1c92f1b7744c55458693fb6e3f1aabb3777842dae7849380d5618c57653a77a9fd192b695e23ca2182bf86585bef840556ab2e701676b9e212cebec0de2845f66dd42052f3ced3b23ede8a21bbcaebbe4c7a79c1a2ec7f03e8ba6fbd16eaf4850736a7e39e2a93a000202090df44cd47d541da6f85caeec4c8e648d0a46be6ca25a63377e3b1fa8867f95216914b53f5994fd965f405f3fea39835302bc6dad11f86f09d1adc8b9f5430a699fb20e32e8641d81ddaeee7610f03163639c7c7b665574c567948d565539150626f9e945adbad77e57f117d95c9736b49db005e029b0d141742d52878af51c74605685d0144b8f77b13d5e55301763016dbd965dee2bc3dc749870420b9159a2b488e93f0d6d99f79be02ecaaa4e1f92e2b932dc00428112ca2d2d41200fce0108ed339cfbaeeaf85cfcd4d62c7d90a03f7be859549a4efaf015f54114e1482cd8267f94ea6fd0080bb41702ea7ed15260409099750395728621ac9e8e130f628e127dd81178943e02bdb581358c3b1c0d77325657cb51083138d93c006944f8ff1f896c7a1f8c67d05d61df416bdfb0ec7514b4c6e1a7e407560b8f0cfb28804d717122a81a690ba1647bf2774a29a5140505f904000537a5cfa53188e1675a7ae3c6521938949403edefc6649ff274ad05c4951101fc42579669ad203796620afa4dabbf93f2864879c194f74373a82ec772ac5a2c2c0e6bb12c33ce1d73379e25c9c6f031d9eef8d8a7c072bcf0b14fc176541df8d9bb54ddd332ec5dd4b2a646a562454d0d0b16a64d7b8c6f66315cfe096bb13da8672921d916b5b3972635d4b294ceb4716baa1a264ed7543ca9610776e06a984aa5523c52ba1a16349aee258d66da7a504fdbb312a6d20973ba66e24cf4976929a4dc8b5c5a4a7863435deb432dd3e91ac96a99aac6ad7523539769aa5c366bb834158e1bcb29b01d14ada27cd5f0e71d72759e29dd8a9ae6d45487bb31d9a3a8ad261502123853c214868f9469a90b37d687bad6727265294f2f2295f1f3f0673f426d015b6c8b6475adf5c39519fd7ef6ad205786a3e5fbaa5ca6b580b448a3e0d902826dfa3b288be2406fdc99ec47158d4145752d15e5b1a8680f5db52c7b1a0ccdd5385d33b277dd68c0a067d078a2672cd949794968fcdcb293f27ef6292fd38032ad97691c55d39a691b6129cf26b5316d29508ea53f292ffdd9a7bd7df6e98fb8fa234cc5c46533a7557285ba738c2c69fd7683a155f17715df18ecd1ddc3e361ac7852ed5981dd2cf3fec54ffb3c71518565c2983b18d366ee78316d29cfdca5bc94178b994081e2848c8c6953e5c8b1ec634c9bb9cbe1dc4173ba9f3dbacbb41d73f7732e065487e6c8b41d06685ef6e6eede5caeaa2e258af42aecc503996b1da1424a964008340d8450da7beb168ab000040e86861d88b9718efffa8690d6b394818ed3fc0dcf113d1019e2f177fcb9347483463244830e431f102ae20598a15345c8e4ec463710293955565d43071d08d9d04368044227f9af4f08045c68850fa4ba054cbe9f10444ed4bfbe9f0dce1874609583fc7e32fc80f87e407bef9d7138fb6e881f0e9f5f0b793d574b929ce691ee21ca3b38fbbf3e222c0b67f9af8f480af211119e8f48097cccc3c47c445ef011b91d9de01c8db40c4e15212ea880852138084ff45fdf101cb9e85cf9d737440379890f4e62dbe7c30d7c3ed4e097fffa7c5042c995256eda4148fef5f980fbb07f7d41497fa63def7a00dcfb1ba37d39e31c790aebcf3e52e8a5c0f31990dbbf612ab905e3e0350b515e989dcc2375bce76a59114be386ed90329cf75fa1a59ffd49f481271e730812200cc0d165a13113c06cc53294597b157ee8947b08e87ced55f829bfff04ad5ddef5b377e5ecfbfa9c739e7fd62a2e42c6cfb79f6df9ea11dc5f147011f784ebf55dff85ed227eb97bce7914412afa2d629c2c03d52fc6c1ddec3576c6ed51f97cc578fd1186c2eb8f08e1fc28e06108fea380db3f7a53e7112247e900e01ee5b54a7a944aa2fc686e3faa397f277f1d23e78f301472fe8877d67b4404f29f80f84718ac84539c4179b198b3de9b8f248903140a5596a2288aa2b9478c220aca79363d1145511455a2e8b5d65a6bad354fe95c85afaca0284661d96707a0d67f42866115446cb6a0e44a4e16d60ab5005772aea8a4a85227ca08b39728723c897ceb8cb992f3b28cd83ee7d6df77dc380a705f508ed841bdf7073fe618c65889d639cb505effc791c5d2f9e67b6fa681efe873be31f9d2a0bc17e79c8ff87b59bb86f2d79fb824d551f7dc9c3ab19c64aa88124771dc27f2ca448f22151b59c47de2b0fcc514701671f97553b937101682c25ac6ee896e492e09976f3f1cfe2863bca9a75d528e276f18c9bb7d978fe4e78c3b2df9f909879d7e421a03aed70b755bc1283e1cb06b6f8673076557608f0dfa11f5baab547b5a2def5fde85f6501ed656654385eb485db8b63f2e4d0aee8aec5daad9e3b2c89e45355793fd9937b327747b351298940449d04f48908b93e2b1f7a6b3280f411fed655a1ae4c6521cd6b5c79ae2d25bab6ba90b57664346cb49173e49776d4a439bb6ab5bd3b0f5cb3122a096a12dca36f5d85e070e81c0140a7ef62d698d8a6d59205edbb66ddbfa68db244849da368911db028dd8a01f915107f6de94b66c075e1a154ecb52ab96f5dc9aeae7ca744db54359a5cc35c553cd903ab2ae688f6d59205edbb66ddbfa68db244849da368911db028dd8a01f91510776986a655756d74c9daecd34154f0d2e4dd5820aa76be62db5ea1a0954fddc5a8a876aa76b291e2fd354bd1c2e4dc583a9c2a970abf35cffdad3b58e84f6d8f4b7a63b550b2910f3a66ba90d3db3060ee62de5691a02752de5408a477a4bf174ade5848725bd4c6b0d91ea84486f005317804dab901b13e4ce0c91b42ce8a7652850cbd0966d59205edbb66ddbfa68db244849da368911db028dd8a01f91916ed7cbdecb31dffe56ef47d55b9e005535e9da6aa76579c5bba1eccf9e5c7d2dbb025b36e847d4f67a3e5ab6076cd9a01f51bbaebe1ebb027b6cd08fa8b7fa7aec0aecb1413fa2deeaebb12bb0c706fd887ac37f5f52e82aa4e40a18751d5cab89336130713f7b9c4916d5f3bd1e95a262f8d7a36e5c1a2bc774a8dcbd49f9ab0a9d4006fdebc92097b600f27a92bd372a7feff0babc8bbfde6f6ec3aded9d83dd9463b906bf3919e2d6f86dc55ffff2d7f3ddbd49f1d7739e3dbc3728fefe209d40fc20746b3c57e33faeecfa0de4d6784f888f7ffdee71699cddbfbdde1bd3f3a69544891bf5d77b5d5bf9eb63b3d3095de93a9ca338eefd49b5274d73300ce672ac2c6d3da9a9d2ade82ecd8e8cef08d5c4992f7460373275660d48c221199465be2c7b57716a98d2a96aa878b44a54215597cfd223aacef0c15e031e069a23b3c83936f3310cd5e55809543a5dd39fc7a2c656260a8a69eb71b57acbb4f5b8784acaefacceb49759643fc6f628f268d9ad853443462b7865ba1e2fc8dae3ca803e0e37d6feec533ffcec4f9850efe79c6ec71b91f2ccdd4b3d5daa2ac7895bca959595d1a5b37a5cae1a3cf7e352e96e69e9ea5d070d81526525b400764573a80edda13c1b501b7b97af4aa92ede8dd169994afb634fd84e2be8931d161461ba4461186aeece5eeed55fa60d25fa542c61a488d2e60bdd08a52104924d7924ebe25d9a1535cd993568581faa603b2d9fb981149a23bb2e4766e1c2b9a3d2adf0326d7bdd88eae7ce7bdfd255d5b461af6a35a5aa9e95a6742a9e1ccbaa1652c31411f757a403fbd0b461e24c9d59c38d656feed41296f2728cdc00caeb54909fbdaa051ebdf6d01caa23e2446980f5bec3f9527d52ed7979d48b645125ffa52935e5b931b99446ca8154e782bfd302f2b33f556aab7763b23fc1c7cfad1e3796fdea55d44545792ef4c695c1fc14189ac3a53c9408c3aff394aea8e34b4aa2bbba0ea76a963073f7d2cb52abe92f73475b23ac6705c6f249b56705368a22df2814696ed54ea5eba20c22dea715bdc430144ebff4e54cf7299f547b5a5afc8a3a63c5c3bceabd173b30ef1c5c5a8fc18df15bcad3b25ceb445c594e0d738c0bb9b41413bfdd56399e83a9e6cfa5c95e554d9fbb227baf9a365c16d9a7aaf952cd14d55c85b8a609e4cab23fc1588199bb4b933dcb0aa80f1408ddf14f14c7bdc91ebd7171543c78e606331834edef0c151cb1c533d9979f0331108eb7a3c538d8863ba303b623d2e0e35d39fc307aba4ed789607cd037f06f3f37d306b80f40206b8e74b68e6d16428a1c8b85d03ff820fb0f6288d059bad6cb8eeb1fc0b8e38054ccd3b25993991062f4127a8bd8fe9c73b88efb75dcb90ed161e8b98e1b6104d3a667246c9a76e143f066bb1b4620a1df7b3333a1347d8e15c33b0ccc61deae49c7e91adeed70e78cb78299b20413b20900c00008c0cfcfbb2bcb58c7ad75dcc5e5f033ee8600f419cd6c858ad4ea8112254a82c881b978d2fb7495c4abc4afd2dd472ae89c6740f1f848a3fd984ff98c7912085e6e799a489122d7b3881a102c8008470a08c64041b83957da4a3e735154c295f81ec493988445eeb1d2d1d111028e107074140c06718238c1a078cadac3ec5385d59269289faf691b51bbc6a6e5b26a6c608431cd4209b3745b585b5c3a71d6818023041c697d127d7681cf01473b058a3cedd3d661cdb14f8e01384291a2076c429b50eb10f480f101843bc51645208c314e8090af50e2dc479df369dbf75f8d6346467f9d15671d73ffa972de14ffc674b4cc842ccb22e470ded83ff16fcd6c06429609e0148363a6cdb43c072b87df0a98408002263f49336041670518e410c492140ce9c83210424308f4bf3e1fda19ef65786230c629eecde52744d92976796489db6c66638322f183e92fba96ef55f00853759ec5d2372e1e554a5759e928cb8ac5c35ab16411a082326d87012bca9769236e6ddf6fe7e845d47a6fc671a3d61387c1d27eef8dcaba6a7c792abedbb952aff3f4b852e5c1c138eea5eb4a9888dd2b0acb197079827b7e96dee6af332d23754c9659b9a90cb3d6da8ff76a16d65a6b7d3b0b62ff7abcafd6baf79cd867be4ddbf55705df510479e461ac8923ce9dbc31f81c47181af57d4a129cddc98967bcd6f7ca681df353fc1dadb5d6284e88b253bff75edd638af5c6d1c488224fba137b5e62cf40a284b9b7bf882d5b0566638c613b2637fbdc5b73557461dc39e6ff8ed65af79e9776a5a8b4d65a456b6dbbfeee68adb54a4f37d75a6bbed1ce846f166b756f0fb4472bbdf7f6eee4c4d7bb30a57051e4e1bb972be55fe75e4281a9ba111cd6392af7af2f974eec37cffdabcbe5adb5d67d6b0dd33b937b2f893e66da0ebeb70469a28b4b63ec744f7c634414bdc889ce84a3e89d09df7cef14bd93c0a6f370622f7a91e9a4f72d6562b4d67a466b2da3b5d6e5accf98b6ebafd65acf66646252a038218b99284102e605a6fa97cba5256dcd708ac6db7b9cb69c451847ad3d0c753974c0de81bdb75a52178b4bb913fb2bb29f4ea5aff4f54ab587858573dec4e6586769eab16b6fbd343e4a5fe92b7d2f5367d6a0daa974a03df4478a478a4722c9b2b2932a56e152abea47b52b8958f6b7b2ebfa5bf596de82da599d48b13d06ad5ad6d3325e0e08871b57866a21b52d27493e1037a64aa1482dcb36b56ccf453d7b2daacab7b2b2d2b4b2ab4ba9f6b4f05a70587bb4906cd3caae2c6dd9554a602a23bd39691a22fd80ed0f4d3db6edb537e6a7652a4dc227bf04ae6ebaa3d81ecbf6dadedbde3b8c1451ad21d01fa81009645bd5d55e1ad6bc9936d892fc11651628cbaeec6fed6da9f6bc5e3b1d2bcac36e6bd091cc9bd963ea7839dc58f637b397e2a549d216a5fbaac3b7cbb4148893213a446ad99fca068b0ab52ea5dae3e24202354a4cd71eebe337c4102929880e915a2d03b241d8bb73416aeab13d9676ed30b357963d1f2ddb03b66cd08fa85d57608f0dfa11f502bf6c31a21b714a11282828282eae51e87ab95e4519806189f02a468023cb57967f7923488c246d564a4a4a8a57755b655d595959516145bc5287d56ab582bd2019bb0d2c2c2c2c2f30699aa63024481060a1154a982861a208693c994cf4d7ebf53211038e5b88982c26133fb06d20eb18f55939f6f2f2f2720245f92361da4890208122c505366d1420d8048a91899129b21601ea11f172a3cc8ccc0cafc885d1c431339b99ed1d228d19cd8ce6c4a371aefef5115942a382460551eec88fcdc3e671aa58a162c5dea13b8956d4ac58712406568ecdccccccd4d418e18d29a0a1a1a161c182e849096a36b51ad97621d50b362d6c6cc87f7d47dadfe2a6458beea49fc1d1080b0396a31b9c1b13055c0456afbf26bfeabe313ff0ec1d584f803a200ec8c2c77f34c2f10007c708ce088dbdc3ab08f1c085071e24fd9d7e7d475ab08afffa8ed0d82c0c84039cff6501500e3ecb850bd3c66fcc8d2982e4f4af0fa874d7a227a82433201130a88502e4bcbe22e01ffff515fd2ebf3797f5a2e3e0e0e0bc7881e270e1c2858b9c9c1cd3969393a3a353b46ef28ee5150091b203618293d4b9552447c64d30c64c4d989a3035616aa2f5501032c450c4b7b8c5605004da403cb8372fda1c68b571c3c7a7498992bd39d3e63e4488bca0495211df434c9b27f13dc4b4799228f22dfa6c9ec4f710d3e6497cf32d326d2e261505b1833b18d43ab8833b182cb2f910d3e63e7b73a6cd7d6e34fd50e2e3e3e3c4071f748e8e16f95ee2e2d64a393a4674fed187c1f50b217f21d42f841f80200481eb2fe45fa8bfd016823e8263848b5ce4221739c7c1852c89bdc418b6c46489c912932526180f39a261044644bef9160a370fce4314722e1ae1228f1e4680e3e787082525cec5252efe0c192284899211910f59e2a292c8872c7151696f91ef1f2e2a897cc8121795442ef2bdc4c5ad64e4880bb95088b1900bb95068840832035c1cb2c4c51fcec5252efee0200288d2cfcf8f0c7a6fbdf5d65bb7e87d636bd50b5a5c5c4cae570ad3dfae76758602638c5518d3aa09ec8569d5e4058669d5048604d3aa0989125a0fad82406528612206133159914ceff1740a064f407b64316d1a88153c71c2b46d147a176d9669d3402852ac29626cc4c8dc9099f19999f9cc685434b994a858a164c50ad3b66bf466dadaa786056d88561baad9b478c14b931637492f452a5678e062eb21a6ad936a58b878b1f510d3d649349a693bd55ee49cc89dc791b7638b34d049362d7274b61e62da3ae9c50bd3b6fd0b9da3a337d3d649393a453a3f880f63eb17c1fd22a85f043f0041eb20085bffe0fe41fd83b61034914c538c5602c126c2087a0f316d5cf78961dab6087a336ded134304126ee8262df32346c90824f89050824f0926f89800444868c4aa8f77453848c6d40a3c773a0e67bdf7e69c8ba2a8fdc98c3192a8b29b2350ce942a65366bb9b8581dd76ddc9ad8f69e9ffb0c7a47800c2388ebe56bc8f078956bbcc33cdcc3eb0b8afb02730286848c44895809133c4cf078584cc44ac0d05eb1f5acd8b5f97887fb388a2ddeb53b2cb6a87fc21193dd23bf95930864302750f4bce88850a0f8d622c9801c1bbd4d0239f6007297633b9cd20b50a029458a1855d7127788e17192bee372cc27c362d991f8e7d63aae84b15e7f07efce1f3c7a2ec7403033abe1e2e171e566342e37d0a868b941c58a9a5edeebcd1e035ce0a86be5004460c182c6e2aa69db2b1bf467d362e5d7e20687470a8fed382deb4178a79fca2dc1f1a047a5ebb88ebb31431d891a162f7252b45a8ece696363da46df4267f651304d1c4fbee3441aa4882dc61938b11f4f3ac4f606a7e3300768dc1ace6118c4966b9eeb5317076be0c4bb1dde610df00c75747e9684a824ab1fca94b1190100500023180000180c0603491485391cc6a96614800f4c72505e583c180984a14820845118054110c4600c8420c420c30c530a39740500d234156b099006d7abfbeb0cea6225089375b11e35795157227e0d638dc45f271cd606d07dc9d00bc1b02bb527a560afa2a22dc1d2b8074aaa0a5a303ade617599dd52b0550ec05d27791ff21e7c0ed41f714df5cc8cc4e959ed8ad85247b544f53da6e64416aa746aa367a56a446af2a2af8a54ed0452fcf600357b90d712a3a3ff1b17aca2bdafcb4c1e44bfd2d77b09e590666e867785013525b06de7697dc0f380366a90b0b06ebc66ca02be6dac7bf8221933f7c0eacb845cf84945be8cd2090c0d21a62664b6eaa20f3e2b06e0c2786fbc5b38275b1889d47d7c3c02107525df8964959f8db37dbefa73603737fca86bcab8ee43800f7c1a5c779933566211c215ca24e8ef49cedc09c7208a4e2a209f7087df747b305575c09dde44f5422fa429dcdf35fa24728672581d80fd7dcf8cc2549606b636c60013b03137d475c204bab11e3ef6c228340b18a7e98f19b06365e0bd70384270a904e49bfa3830c69e8ea113a121a9da6051382afcca72ee2824530849ffc818610d16bc31e81e27c1f78b418ec9e3cf91b803dfc119bd3c91ef0e34489a616da431fb6c1dd1e25573f64c410c83cfbd4d846c6490c4556ae6a61f4df2556f2ce9ad11abfe8542484d89e41946c20bde4e039209ae4ce3cae3711eecdd3854eb49801d176b5707de0a9bc84f760b54f3863ae6046fdc3fb2f12e27050f3180e62cec3b66cc0e5a19f8540bb2db0b60264dbc5bc0578c738fdea69e5d7542af65179b9d65c2b2a114570e28fa12a03e9c3ccdfd2a1c4778609a7fc65475a05835cf2f67dc6677533c577130b24fc2cd77386926632086f5c48f40a0ff09492790441606838f3aba989255417d22345a26ed39c69fa1a4cc3d3fdf76ece88a54b4858da4a24d7d4ad66acd4b6c94302c127a3dea91da27a481bc6ddfeb67c45140fcbee66879a3c00d8e71f1f56be2a61f4dda3bb364f74a7844593161acceef37d1012f445009a25da636dc1f655dfa39b31aea0c3d858cdbebfde4ec7a4147ff1a6a360aeece1d10920dd4d83e95541c9df815a9a52185b4e13ff0b48a2845c3660f8e26617f423e2a6590a7ba132e8afe5ba7a321ee02b745a3c69e7fdb337722b43138e4216402533c307dc66146d8dd3311eab320e00e1128d901aeaa88263ce943546cb9032baadb391297a31e353d2e8394442b1b74676e6b65b71d7969520f8c1dca43ecfa117564ba3fb7b1d96d475b1e620ff42f80621533fec291f11216b4b80ccafdfc2c6882dcba0ab2ffabc3ccedf62b8b3ee9864235bbcfd032cecf8226c8adab78725b155f792d4e03cbc032107b050a5f6d0a8adb02a8bf8a99710b7dbb6f6d3c1a1e1d80c3bfc4525d5b17efc0caef3b32f428a262af3fce401b7419e96f54ea1d23ba955e0fe71fb7d4016bf75e40e6710cc6577e83c3f87d51b36d51f3657143247907efe6850db99ba9218cdd0590ae87aa0936d69b9ad1a0fc49fafb0bae2a6c4760e324d9f87379fbbca925b45ac437a1ab8cd7f930d402df89f1a7cf5ca33ba552882d952ffab300e80a012ccd09ac5ec0131ef4202eb6bc03abaa5b3932d7a31c313d3e834aa6160dbab7b735f2fbceac24b90fc40ee53156f9806a65beb3b6b4b3db8ea63cc41eea5d00c42b66bc0523e3121ebcb80cc2ddfc2e6886d83a8aba770bc30bc81f08046cf0e03094bbf95dd000b1f5350fd7d5f195c7e038a01c2883b1af40e0ab4f4371da00f457b1b2267b4f492ff49c9268133c2effdedcd2caef3a32f42c2262ac7fee883e50698a1c94d913cecf4e048abf8e416f19b99b111565d26e6f1afc5ba15574aabbcdef2493537229fb7632e7c860cf34c674a4b4f5f6bf36583d1ca6f8154d7ba33a214954c239babb9fcea7af17c8a9c97bf929bbbd5e54245702cb43f1054239d5a3ea73412e9a5c08c1fdb0664fbe99af8983fc6a17f4d4d3cfd711f06db6cbd25cad2453ef715b31b7a140c7dbd95efd5e2c05b59ce44bed136a8274534f90a273c5f0026a6d0f3bb3c7f46f1357211ede8ac48e4ad2f4336ff553d7b553d7f5634935793ba9b653405c5c9b950cdb98d452458b0366343d9ccdcc9d49ad30823ef9f4d93a067fc59699ca8a70285bb111de7c65fc5235367890b9d818ef8e8ed0d35351734f0dfdaa699751d5157a8c7b0b06345b44f38f39494cc3a5c0e0556b52b3ec3972a8d36ace6f98dbad0e587d875c92fe4b3a585339055d78205ba1315f3c3d26075da97db3d201b1fcb9bbdad4ddfdd0c19617f85eac326177acef9cd0f6c74a61421c395390a105779f3dd703c3ecc9df081a372b96cea3428b3c25476c29b01251a346c92c1331af43073aab77f3c677d756137bd80e3218232babe9dd1c4a9d86c7bc22a8219d9f6f0fba0649e1f37ad338ff9052ab46da0b7fe28f3b09fe8353b643c80c20c9d232aef8c5f337179be2ef2294546ed278e8bb84187f742193234767426c3994846b9402b3a282db2aa0b46ae1491a9f69799753e231c1fa48a36270e5e037b639b41f5d693567115759123d07ad014d4eb31a5e5c2fd3c1edb4f098f3ecee78dcec47b048134eb181c85c31ae98d833c1890cdac17615db8a9706d808e73ff25a0dbb9ac3b2c033916d03c427705c9bcd4491e2dc862a2735124d509592702f6922e5a50df604d832a1cf08b15ffa5e4e77d2cbe0c0dc134fcb4ee24dc5e47e4ee7eb1e82264a6d90c66570597adf4759bdfb10b23e332512f5fdc9ea87c713e9278e117ba909e9edab0941d4bebf9ca48dc9a0328d39e14a413943988a3be9b623c3f11bd1c48e41f4614f0cc62dce5978a29c5ddd067955d1656386c1f6d21bb35de5040229aa011bebccae3cd8d35ab24d88b15a40e0c0ac185979dc7095d1b823c414915db12b4fecdf5178febb355c0ca2e5c768a772833762346c457a28d1cb8b8d01038b06acabfdf8932657beaa5c51297e8429fd11bf05d085f1fcb246de9549973802bfd222a9391b1ce4cde55f41a68b0da97214ad34c940eaf9f47b4df51c1eb0fa7c5c38b985a24414ea9a30abccb20019467d01ba2a7c8aa55f9216953e9ded9c9c2db4c614c4cbce485403afaabd51f75f52f458f31b2b369b37fc1663005e86b3c4add2f2a412522f5c14b1c3a833b9b2b031c8bf34f04381b05aa687afe369e878a319cba2c970b13a34d0ee920769fcc9d15a7395182815ea49e8deb7e4348ebb974d6dcde0227c5a0f2d6d9869444e35db1e10fafea225aaa1cda0a427adf781f75d844564652aa7a7aaf640d236b82e522a6604fc976068b52d4a10fc4975b5e5001568f1f3d66e1fd64489268bea0964eeddc2dd75c467698c005bea1049091d898f8f8908c8b2c9e5449e96a5a51ad152e4d2cb67712dac678f9db1b284883d347a84363c758b970ec33bbf4a58080e6031891f4d4a28bac1bd178203409b72c78a754f65e2c9686e4449833eb745095bf838ddc1ce3f90aeb4e7e91c4621ff611aaadcdfb32f57829c964f79da67c7e12b88696e6be903da314226264b586802182f20e659c5503f4c97dade1ca8cc3b78167abb63fd8c9b841d7662a9f4b92d4184d2e94ae9246b8a0a91a9c850569319e03836f2cc1d1ce5d570097b63d474bfb4902f492af6367bbe626b11aa7c87be97aa145993132e690ffa31bdbfb30b54e5fd7d903bae82a4216d6bab6fcfa8f9badf274ded5e5ded5eb7b17992e005f5d67e45e32cef6e634f9ca92605993617a4767826fddec8fa07fa25f62e662052af1a9009f3f780797a75fb115ebfedde072c23f873a70d249fd5d9aab36bb002c2bc0ea1cabd78c546358ef585400f05c1297827699d8174d00e6d62014f6739591e38daf53a0c8bed1a97ab822045400ece77d65c8322eabf14edea4222034e9e8b50bbd8788dd6dd3e67ef88ffbb0596edb8d65a6b54ce901f7b15036465ccf254afa031f68ae1352cd46772107297a4048cbda2b0d1f91cec39a049391511414310e1b9e9f5ea62a9bfe3f805ecd03b77d38165076cc2c8a962861acf4db0e8fc7918d2b65cc339143f518c0996d24876148a51ca0ba3a7aa0673a9e98e4f20f70862917537420a138384de410b5762d6629376b08d323bded5c31f170da7548ebb61f642c2cb6225a280e610202a120703f29f6e1519801c9cd2f1e770548681b8a493c9544a41c802294c5ea26fc389ff987b91733e0dcb5530cfc5cbbccf7c12241efa1ff19c6d966e778c6882578e951a309c192c67ae2679861dbdc660a540394d2c95d99920a1cd200476ca760350e7efd41cf44e0e34a3100898eacb9dce3d2bf7683b0c689084b0e36906fa2cf67d05bcde54bd185e80ea2233f832ac1c4d619eda8804ca49b3370c4664fa2d9bbf164422c8822ef8574497a23ceb33ac7311ed42d7cd90c09f52ee7e7e30831448576557eb524a1f8cea461a006ac07306fd374cbb1bb699a4b32a15261722f92c81a045c1317ad3c30f3120065ad4058d1eeea808ce53dbc10da90a73340732981620ddff1d01a0fd987a3e3de01613c0efbd6efb667a41b17c67c654339d15ac3b3fb20b95a16723ff0d1e7a6159ebfda10c46d5398c0fb17ad1881b82f9e47de15629cf1c250a82bc1066a921c121fa9b7594c2fd89b52ec55c1554dc86e9ed2050382c7471240ff36e4949ff8d424484be3b9d2bb260608ee5281b69a49ee409dfa1393264df35c7dfd2635e6aaab55eb4d1b2b44a6d341d3aeb068b3c3accc97f55dd589c752b112dc7181d43da616592db510adc8e5e5a673b757d881da9d3f6da22fbe96b42ee68d5158fa1234e351610a82c4c87d896fa01f93dfa25aaa621b1d5c9d7015a0d3c436b1129dbb5b34236928babe0307c44ce762d1659bba117f95fc33ddaf205339a08073017b8a9ba53bb85049e9cf2ccea8843c50990b0f86d7ed3b9ac4bb9029242ad7061c5def746f784e4637f4f240f4a85b5fbf16ab0e183537df2a7906934b94693aaa16df513751afdf4a9059d9a6526158fcf6d4a2fd52f9cb2698004cebdf090e7826311d29104612ce83353a0d329f8c0a112afb8d7c090ab9b94cd6b0e0ab31f08ac3ba20f6cf9eae9f07b6947403d4110c37a122cbcdf7dc356c174af23f175c123877b7e4df7df3de5064a6ab3681e8561c62dfe13580d9fd902fd4d09742fe4b98ffbfe01b1acd80507a0a4e8068e724b271d0e2bd8f5d0735107c5e1e370d319f7d06933cc6f7c4eb1e720fde796a3e182ef1b5ecf96dd8646e7018a711608696ace03446420c2a220258e0826351b27945b82292b62d70ad284e5e0fada4ff4db02591b34216868a3e3323701d004824fd80c8372187d016d8bc8ccc334aaff0a848ad67bf7367ae647c379fd43a1b7bfe0543fe2956664d7741f90ba3cd9b7f17f128d630d2401e277388b13fb72f1a07ee6a519800aed8ba92983ad72d036013492fbea9be83d0a417dae04655dbce0f06a9d2032c3782314dd1d6611110c6fc4b9a36b74ec4f0fc372b979f6aebcb748001b4c5b1375d17a520fe78dc169f0d626bf5fa9426f401427140225b28f2ab846533cc78bc73985bbf9b87b034a724b2ab99167b3d9735ea232a4f9f794cde4f6737a4ffb961474e3c234fa1fa454d46cc552c9a0c89f54940388e39d50627a0902706f5a1450c5a13494a9e26f407da6ed91b85a3b8c2847b93b9b8b41fc75c9ea80b480042f9ce21800fa431ef1deea7d8156f5b612c923ad85e7ba3c695f982b43fc02a9a821f044deeaf16ce4962dc577e6c46c6a71876a68b0544a8c9063369d9adebb054e16eeea5efa50213a036526d84db6d465a16ea0609fdae392fcdc5db85a3c9bb051bc2be36e25bd0c411f59339120ee7905266a60a44df6a38514d5a605b52c91574f0e31f91d726a8c1ba35c0238218d01e5f0f09be930fb6725ad805840a5c438051f0fd095baaa30b759a5d22925a32432456b8df85b5b5b6547a8ba83a833746db40392597df068970da6791c54c20b865097279e976b4b036c0c96c83f58fba54c24b53eb3e64970cb52314afa216af7440ae0c4296b48fa4855da42a955563b45cd89348df99d653b5287bcd4ea90fa838b027bd15797b40e794acebc59cf047a99c0a9ac46eba58372afa4b0ae9a200b91ccd1e21265ae2a3302453c5610037f675e6b544ef8e872b7d8e46182edceeefe9bad1df40d8eddfbdd385c0a9c20e8cfd701d9d973da333c20d3dd0e4ac7cdb1116fd49f35a297f2a5301eb49d2778b180ec03cd400e1b27ab3c473715b83f1f5ad34c5457c8de3d1fe0f20f8c3e8e135c6ea1324185ecb437e7a83e4ffbdc12bc618ecc0fb1c9af00851ed36c09faa942b690ee77e75010db2a4383e7e242bc2728acd8f4cd437140755b9da3f43e9f360ee3b3b9acf6ac2251bfa4a83a2ace3ca8f7a3b54eace62249a2ccea550e3160a6cf5b8068f4f466187e85b7de122314ca84df8fff06042d925e94eeefff1c05ae1434a7794659ffd8c582edcb15e160d41a861f06ac09c6e22be19aeeb28f4b85a874a162809ea763cac00733b3ed5d7d8eb3c410ed1f4d48a7ba4a7cc6ad90641be222ad6143004ed2a50250621e1016443b224a2dbed04734402c1188503d1a980284a02ec61c4833b46f899dfaec8710cc7b8b81d3491b7de7333a024736de7015517867497324589d8021f4bbf418e51d76ba3ac6192752e4dad02ed7e5753d331a0d651971d4390ec29b9d999f38b1f62e2ab7aefb031be4b09d541fa0cabe6ff5ff145611aaddc2b8fe7d357225cf7f522abc8365a13d4785b0c26064a76b5e3a7efa65847111072217a8703f911e2031288d335b22a226b3a70f46f3ece023d6445c11e2951015eb8811c95f4a866fae248f9608d20b27fe736110a97957ba8ae114c28f6d1081db01dee85c6ce86a306875e5fc26bd2b08eb72c86ca321e291ac1da2b6290f6d50306bcec57b3d63e95f4ca84cd471df3758554321c49830622e0aa3ce96cd099b28975521e489e83de4f295dd3c74afb022e056e9e69a5a75e9d1f3339660c0604aa60083fa3164e901803370d3451534b7276492c9cbf28faf04062eb490f69deee5e6ea42f8e379e4646612f99e60c99fb4a59596a70f8465a57b531312a08cf51a192f617a997a7d02b1ebc9dae3385512951ff76221321bde3a18ffcc279984bf338ff5ce715a847ad5ff9dd5cc350884550115fcff37b3bf26810e726694a94fe8426dcb4ffe2fbc01870f9ead950234d6e1c812b39d1868cba351b6384879f604961b05377395e47e712d15e6d2aec8f5441097818e925051290ea7c13572c585aee3d2d2611c7e1dafcd614609cd56eb061ef260710433c13ea3df08a11cf0b57f957e6e0d61ca0d8259cd56f52154fa7f68600bcbecb521e1c51b06db88adce00f89d969975477e9bb96c6eeb4ca6ca32f3bd8c04c3350f987950b82058e0a7fb41d0f62a727f32f19f567e3a894a63370b67ffec550078bd868bd612b543fe87442dd76062f46c8b85bfc5f90c081dbbd9f13d782414b79d32495b08cc82a06e388bb45d54754d6172a13397a8c5b8681ab7f0ebfea654b0f2082dc13226c2085c714a01cece2a1d0ab6629b39a28043b9099c6efe4c5de7261e5d7ace527536fb942dd5729f1d11da6b20c6c5085157dc55804987f874b95912a056639ae563d36adfba69917aa4c7e42599513c885917f8a7400f4269b248297db3b58f9f2c3d5347d6da1d86a7e7701cf9ceb329afed40252332b37f697378da99c65f379b6a896c8fe006be59c5e6a3b598e21d67f6a711b69e92f7460ba9083ddc0140430ea38f1e99f397f31fe7dbb58add80d96c5d644b641d7e5812cd227adaf0489acd6bd86f15e6a800ca001963c75a236bb466999cb5bdde0e58063b602a23cec21307c26b27faf7015b28acdc73e779dd0d9674d52d7a6a4432cd117c88bae984f3a49772ee66d55c7b58d6ac7cda6e1f70a53f4c2220f142dd365404c08dc9c4916dd04d1053ade005e2f8167c81e2de9281a9a4aa0a14cce6fc88489ed0a647ec358a2978e3019a446389da8a8dacaafa512a19db1354fe04360388959b424a1c6ad345a853ba9e0e1d9d332523946da1e967472b18e5a6e656a7b71cb333a1f00ad6f79b7dfd1dc778e3ebf3025d9ddaaf9f20a7c85bd0ffac4fa037101a75be95e9d45f1ca03ad38edac4bf66aa4ba7f3c5f09e5f48ef9970ebb4bbd7529391daaaaa51d6b4bfb2edc1a04a3a91ab1c5b557bd76e6e940194aa83a8da079f71f2ff3f19e94b32c38746206e47da53f2070a3c76980a5bfff1bd0d5351ef70b9cafd5e15e39b290d80d2e305e9d908e53bad192967c4ffe01808c354a3ff3e14ceb5ac900375aa13f27c8bf6ff5101f83cfc099893fe40634eaa96fea85a7d55bf5392255e2c1c2639fa6f556b387b07f8a0c5292d6da63c20a34282664423e95bbadf1ba4ba8a99660097158b40c7b9a670391cd1c8bf399ec03873b620d7f92144ae4c7451d4fe9c032e897953dbacc9517add29e190e4211366c03e8243999ea19ab000c8a03997cd5f41a332a5b190141a89f6c9d91b282c8c1362652a953f0e5af4159d87a05a51a68091b9d4a3bb23dd22938f1b4da5dd4ad9ae2b2222b039de76bfdc33a16f10f2d2d6ea5e7f570da605f141a7603a7718b295398d5f0fd2e082e7a53d161c866a84211255e7aece5f3fa932b35c87678c9bcf1597dea0a6bee92658966c26c55adac2de01c361abb9f50b9675e74fe5732fa94d68ee067f9688f4fc864baa7875e125c4f3789805f8bb5904f7394e043e355a3a0c5fa35e9d9036063f48fa0720001a52c1651695f5932bd1155d7a18d75964ba0c67fe7c971a77147cbe70185eb4d6b5d63a6a86b27738834506fe39392edac4b765545a7aa7768be13a2bf9ac67f38551e1ab2d856be8d34451d159f568f288a3c273a8142f68aec531a37a515407342eba489c1a9c0632b142654a8ea2648589910f9c7e89a2980037cc0d36307d3a549f7dc9eee979304651cc757c1bb002d8df621d57b2a7db281bc919d4aa05c3b0c7337aa11f8812bd7f3bd85b75b8acf017d557d654106e515c8d751222478467b27280a8c9039ac64e556c1b084455c17a35b0009650b7e263e5269dcd6a42d9c695dd6fa7b10488ca5a2463a54ff774f617105537575de377d78f71e62bf06120aa3f0c58b2c9b2e1ec1ad2d3efd877a4e65979b1ff1c248d204fbe288b9527a6fccf42e1f9dd88f2b7f96e48c11f817af8916a912b5365900e39dbe271e57c027a67642d2928d540bcbb1a2e8b06123cf922a5c6eb41e3d9d734fcbe3244b1a09555c5fa56fd099a2a6f20bf6730fb470d7d50c528f9b723ef2f157a6782bfef83e4d31b33005762ac02d89abb98e45322bbc11ba9b54a4093b375cd2b20f9a40fcf92e298dc72cc4a0d28179ce904475130544725b41ce7829d5c6c7d473e99fe54876e89ae1ac343c77c3665ba17774d3e99f5eed8f4096e3729f6e48284da77e323145e0a018253448e27e39d56418ad0e439762b37f61d70e0e3a9a3e20eba32e90066026ec6543bd1c49ac29b28137bd2771a610dd3059dbda61779c67236938a2beca8bf830174fd0ad8f4bf24bbb0a92a6d481c861719da5cef18972d29649dec932bdee7ff22c9ff99afb40a48565c95e549915d6f27ff401e30f6953b3cc5aba58535a37dabc48b23520f50b628c175b4f33f65d1b6d24e49127dc7e9520f0177dfaa131c5d4d3548318927f97ae6e999f80003b453da43dc9e090ae36ddb33622c9dc60e6f616e037012f0e38d539795ccd9acaca73553a2693d6af5441a27c02462c898bbc621ed3709b6b02891453ed838b1dbe1f66e66d052488f2d52f7a07dc98e4cbc71329ef180227692ac69dd940deafd8c1101e6b335b58aa05d003e93a5a5971858b2161c155b61abacd795417ad0acd94a28cf9b6a9585fb00ae837a2b8e0a928a26c24b808f58a870c06d9ee511df64a9614b69dfeab5221ab1b0a0104da6ee2a2e4df877ba9f909d9b9f1cd30628e811411e6c101cf4e16f387dc843eb637e775e4304d8119c9c6c149e912470a627c0353441ca351337471c4663aae9e734433482a9828cfbb7370c76579ccf4f9aba8e3b922bba348c87b49bfebc009966d4abb9ad9c3b780d5064c3ddf448938b20c6478097489878a22daec523bec8568396d39e95b32632b72912cef93e4cb9e6023d7d3889127417adab682913d0e9b569d6e8ef0f933f0e67e2a5217ff19c5911646db1e75b2f497e8f9a171c8ede0dc7fe4e1aaedb558612150341eb323c3e1cdbd974a91ea2b67005f86b0668737cdc0af06e3ad9dace3051ca6390b6d641f676268f50b9a54b636faf45ae33bdcf78c909ae6c29572e7ddf64aaa72f843136ad7c9b294904317e223c84c2851b6f712d5df941b61e949cf6ad3c8e96a72f39db3c4b6ce971b5c4c8f68114cd028a40c21b06ca567f0f19c7e170e617fa74a83e2d2342dcf99424591f4ec29db961a7ed8511afc3c6d1bf5fa512745a460e0fb56a324cf597605a75b4fb3a37e01cf2e8b6f9d13ad32391d5b5c0b7c3a5d762359e8c929bdf862f9dceab57b6237e75efa8ad66d7308088453cb0c7d2442c579f4721787fb92a487dc2bf2a0f3d661a04c2251b70c11332e773f7fc7032e02bf806c7950bd35b6a9b011295dd571d2830ab5dd6681122499d1cf82f9424c1c453081b6e72905b6a0f9af9b4245dcdd21e4fcea6df1a8c079a2fdddf3642d39620466bac7841388659facef6fd999dbda70ea699e3dc6589cd140d4e337b13ae0f7f107a2e6aae92b779b6a0393f0a1f817c03dc9ac3c5ed958b6e97191660c9e8d75f3b4f98c5404b332211904745da4ba6d37b3b179f6f249d28a926d109c1288f0231ed8a3865746e08df682dc7f88dffe5e1917f0fa28dec46c320b709b1b5c650f83dfd456a023e8eca61ea7b84a481f700b87a46a9210dc6fc956f2928f7c24ea672a08e163ce984aea82939034f3a8cc71df29bded9f0a616331c2c692fcd22e605be0e0642b58547118025009567ace6a64be7193d2deb5d785cd6e49720065ccd69d31db32764cf8ec6b1fb8d6dc48bcdad3ea76593b0c4ee289c8b24d716d9fa3ffceb1bdc5295622a7ab32a655f311f00dba29d425ff2f7f7c9e88d32e3130ac0b63fa55b702cd1bf5f3a3dbb34f9a2fea39430cabcecbf23b3ddea8e636df9edbb39fabc4c1282d585fca9e7e5c59df38a7ad31dc8064633c5fcac603f32e90455c21586dfd509acb920c205051196c460456c94218c435fb3ed7a9832e223373ccedef1457d4c755292248cf428c820fa4ac2408b1d6f765722ec90fb2dbf4bc52d8055a541b1c88c6c9edac3e216c8b151894860ab2ca21e3dfec44facce276c5d4059fabdc26d2c712ec01965992a6fdccea82a7e7cf23f2ba5cafd9240dd55ae887711acaaf2568a27e409884551ff6c54be1f9b0a35b08b97ec726f34541759a9faf22ef0c411c498c213965cba835f6d5d80bbaf7a93802acffbff9549e841745963e325ee2b2d41f6335e1a7fef1bfa4e9a2bc19a975dde0d6df16afce0fb0a802d922f0648de255318ca365356882842bba622df6ff99ffd34add6de38ebfefa6f7c65abca3d01656464059b4812415c9c817ca26081c3426f50041e0bcc5b9416625d091a48331b89fb742b911f203f1f494c6374e48685654686604e82777010a0581843087992a823599a387aaf53c9309192de82661c4f3db4412f8ed8ce5c49d23a43a09a41a9cd54b645b1304b54fd1782430655af802a240bc7ac32ea73b7a1e6b7b27feb2face356ec45806bd7e6a9148254bfce5951c407867a7151fa20c8c1414e1c2e1f43df7543ecfdaf5d3139f573c436b7f50569ad065b43a470bcb2258f465bcebc3033075766c0e89a89e1b26f42f18daadc1f4cf26ba26a50e2650c70925cee23651c0ca010d77eb64bc0daae778688c426b7e1b530e204b8b37d987b2565dd5b2b26e53e4cbda28cf80acfdd096f3796e562044db5446c72a165494c1248b82efd9cf1fd8739bff0cb1ca95a7dfbf7868f46047fe0ce70198e878fbbdaca6f6ce07da5487bdfe0ad8786ebaef7ee270f072348bc79395ba634fcf80f495a89493b2c7ad3f45735705470ad1b9cfbc962dd65801d7fad1218993824d6459dcf201050342bd465fbcb993f259a4122aa694adb619aa33c41b0330b0f118ecd21b2790359699b231f25fdb6078ceda373247bbe1c4b7a3c765776e0bb279db436661604a8b6024876bc5c3c6f107913b716feb4cbab53e1ee0c4d92383c9efaa9d86bdf148706d56793c4e96e5bfbae80133a8a40ba6ece6d6886b809158a78a4e0373aa59026a5478a8069b4e5266a3fbd6621352345874266901bcc0a0ad9cbd11d76434f015bd8f370fea1ccd030466a839bc478c02cf8963ef7d5cddf92464aa4280ef8a7c34ec7e25846526a93184db47c33211a340f06d23e18b223761e9be4f17569f06c01e37a538074a9a29bed001e186988dec3e6f009458010cd02d3742c613cc123d51f33d470fca446922d193ca2697a1a27df579d39cc5271ced1f25f1845d45be3e805bea4507ea43bb3740231e5a9209684e6f62a939c6937cc605cce27147052fe51cd26d4fb0106809fa71db960ef758e578ad02a14b7f8f3833329c917f62eece478428e85405d4740c3373ddd761439de1c6bbba61b1e5cf73a2ff60acb06d8a515246e2af7548e044494fbfba4c94aa34094588b54e9c9051ad428ff38bc179dae521e94217ee99dd81952a30c75975a4fce7e637c5fe5e1961303a128deb4310f20848a603437ae3191775b838d4310dfc36717657abdb6760ec62d3a6e7ca70109b0aa46a8958d5efc1a27949a22491a895cc69f895b4954b7b46d2b4671bebbae4b5aa7ef20dd6dd9510b40c2b907264fb0fec1c9895c4af0f4b5ba124efde38e9bb983df88d370af3d9492034b9e199c9906123b59162744d5aca859c0a245bef4a79d06a67c086fca97431ab2292b08257e81381cdfa6f8e66ba8b4e4d9c0939b934d5c0a0688f0ac0c012a0abd235948b52023c6da21b45c245066e040e50c8a55b94a2cc40bd06783eb58a8d26101f6332b631e1fcb190ac3274694eea01399ab4a458fdc14e25fc05f2b9079d280de0e98c569a3168cdc6e46b85533d5f41ead8bf4ff7a93ba815f9ac3176510bc86426a4ad91d23b76348b64986776adf1d30674968271f76446b4aedae7258928b696a06c76622a38064bb26afe6d85131133044412444779763599a227d12fd12f960d169db73f38acfda615cfcb299dc06fcb605f20214d3fd335579f9b8b55c4a21120b889f6024e5a6e698128657ed7952765ee953ee587edabeb7e34c9f5ab51acb5fca9a9bfbd34b2c7a4978c42945fe42637a7b50d7acf27abb2088a5d05e97e80100f424c53d49fcea1d4b722b7bfc1460148706a305004a664fd4d789c3d02c8b5372dd72a19dbe9517d82fa8b69f907aac0c8df3f4fcf07fa012b68ddf95489f2487aede96c6f2cfc93624531528e08c62d879ab98fa0d5bc9f49be222ba8ec22d9ea222f21bc74bb71964e2ca064105f520b31fae9b2506adbb81fdbbf3d0da8e293a4d3b702d4ae8257b71d561cad70c470ad293e36f0ffe7e7d0dc221464629c66b14c3a4dce8709a3f5c9fd3b353c704c3a00cfd487095465b7db059c76fd7dadc80fe4c56fdb7d47bec23969e6d2a949e092ed65e4d63628de2be66f4039aa349fbd567e96f02c670777117ad6be9bfed67a050b81bf30d884e64e1d6a87b997283c4fc557caa5c718a8696f2d5f725d650f64b4b0afcf1f39a6abadd25908c64dc39cd2e0a13d8a8f3714666290a6ada789f6b9daf3b12426cc23a1bfd89c66c3e7e0833730e7d2837e9fbd8a1e4d76e971418b4906aca22532959a76e5fb988150a5f8d5a941266ba01950328fbe49285b8d1dc2212382343b7ed584fa6a61ea9072674e87183f33c57fec38c1bef52ad1129ecab04be10e836276092b5c63ee05a58bf7ce7408ffdafc59de43842050483f5a36840708edc07ba441152202ed37e936c74ae30cad15742a377e5860d2242527158af9e23e068fd8cf891e7e9a895e662a3d89354c6b3c4b0a99a9e508bcd765c5f878bedb815a73e7659a65789eb72cc3bf06c97a6b9b611792133033fc8fdb9e53d447496dbf873156ab837f3d0c84d1711bcfbe12611d415bf7a50d03d7dc40395c5d7ee540aaefbf273efbc29ab7c6fbe7f3fbaf24f00ff50e59996ad49b552e3be87673844eff1e763cc6ee9e163a357f16cf1ae13669bc43c3e3793eac4e7c67f83cfa569425bbecf87573adfe8caee55e86f90dd37ace99ab08348e08cac4842c24b6435483d57597e941d0d5ca1be510d73ba0c0d41779bca82b834dbce29bf8bf30af467aa07f9703a73b66ec2974d082a2a26e3d1d9500b421c3fcbc615198c6cfc5a25305f0707c578a4fdbdb0b6d599417c566cfe5f43d9cce35e6938f9c28a800a3b44632c83bbdd4ec638800ebc9ad0cc1c3dfb778398bb1efc461ce28717dcd0795e38e52645e0a330f29685ac7f6eb298cfa8bba264a309dbee4270ae332d50ba2040313fbd5fb3afc65d843ef0c6e575baba6a5cb627e0d8c9897f56a9b06d022430afba52b3c849db3a457a2ff40c1260a4d8a9d50ec03facce6621200d374f875b7f2eb8146056be8234c0720e1bdbcec0252bbde4e614aa2bac076e67944518f7c0da8286d5a0b8aa1e31d4ff0e8b80d4548a27d6f462ac19bd421e4cfd2855f9569df2ade0ac2905b545c9a7c336576e452c0540c65657d849ebfb4c4e3211701361c034e365d00d67558b5b2a9e4632a646dafd8f185a5fc394be01bceb9f1f95bfb111ca93982a13231bb627d8996e3475566239eefc7ec8a5bb7d938882f2cad046fc02c5289756c41221c1dd38d3db50ef54dd6257fbdbdabce1389a8ff2c25cbb2e2524d7b07f44229bc936920960661db0ff946bbba76aab0405133ca7362657aa87a244368ea6d7858d126cb0509a15206927a7a19ea10217c296df8c755e1f7694a4fdde16911b046c53f798fce332527acd130c712809a154dbc4cc839dd3720acd96b3c395f62caaecce93835780ab163aedf8bdbd0b4633abaeb6962d60230a3798b27c60925cc4637671afff70a572af2e5522cec0331eb2df079b9ed13ccaebae20a767da8a4268bd46b1eb6803bf745308660ced5b98bb10bd4891ffd410ef11d587f85069866a960e9c041611eb5feb72c2cadd85ac0938d8379826614d54360ca196c755f673dfab92308f590a320feb1b1c373c3afef4de5c92085e234a3535d8d5a3fc1e4698a32718b3aee58c0bed4e6bdd4e8b9f99edcbf063596cc46a1ddf08a2abdaada80419c26137e661adb167ad0fe1a332fe8cf480746fbd1d42aba4c6111a19f7694556131047b228ad7c87ecb342a2fa905a62aa0b2ddfde4066cdc196e970d8533b15ac06d4c762849583efb4d254601dd7bfffcf84c04af631097fa0ab3969d5462e52c868ac30c00edbb3835f0e7ae494f4a6f3d185ad0e856b30a034a880cf46e8d34a7fc06f27c652f58cf5dc49dcfadd29be369068a5f608b45418acf8ceb0f3aaa887922292c3ae08048907d4ea4063dac9bf4e4ab9ce8686e5c8f568ce5629d90d25ad635fa3405167bfee850c24f6680e8067f927024e021da08a1a47fbfe0927816ccb312dce635a20e7a22bbd944545e9c81d49773e6ad8cf51a123c85b55e4e9863640fb5c1002d1361bba187317f302288edd3860bffc2d9bd69b20824928a6494169efdac15b52682e69ac84a7bb35b473b4598f6f82a2e8db1ec171879148119078956e69b01b47981a2a6007dcb0493a06485ce3fa9a6a23f8e53c89e98147c3c5412aaa039d24f3de8432a333d010653d35bc0fbd13e39fafc62b5a061b36f69cb9262632b8079a995212135caaefb7ae4ac974d19b57ca6f82bee0618c4fcbc470f08cef1077ebaff7719e0fdc9c7cd76f3817a7a1ca8c4fe8d414cd0200481772f4771844aa35922f1a0e666b19f5930ed69d2db3019745d9321cd04e4742f8b8f830338b271a016bd2bf001b80b27a80ff1298c62c44864886d4d3d5ee02b233e5f841bf930692837d370de24651ff436408f1836eb74ac32a727c51a5e346b51ba5a27858bcbc41a825b95191d0e129ad1f837513febcbb3039e29b7ed2f0f924fdc2c5838b6e60962e8e59e227b06858ebc86eeb6f532ca5850725face13471294aaccde7350d39d4828b8c18795195e843ebea72daa64f55155de772a51262a4a330e1286a232633b3e7077de6626a41a5198300ec1420b3f003a4958389fc923e199f570cf8c3e475a7c23820d8fa13e3dbcd98035181a5fd34190dcf99521cdb7a830d62e5003f5f7ff1ec84db9ec8c332fdddd48e0a7585624df790609a529a6d87edad1df73e46b43b53de8533949b86769ae44ca507b29f9065903e08d0d1fe121904c19573c31aea2ba531e04b367a26db354ecc5fcb8b2b742d463f54f72a003b977bc1b2a32a2e89fda75f2ccf7544448df63ced020893b8e5bcd117c00047af436995a20562a520772a5eb1d80de334c97fdeaf45d187bc6d704b07de69149b7a20a6bfad3207988e4de34e6a4180ee9100f4d7fc0c4c2f03617c8e1de4fb84023370e5dea7848699caff76982f6e09756f442c8de726fb9a594324919a40982095d09189c3a3b62adeaa22db28419358d66423181369e4174c5f2b434ce98b766edd63914ce98cb88710b0ae49e05ecfe049650b1d807ae242b68d3590a674f87ae264f8de59ab1099b3f33a600ce13fde89520bf902afba32731419463d3c3a1ab94f4c21f9ef75d98923fb2a4ced170d4b1d3dbb8153336633308d38a199b31c9e508f88a86c650f9a8991dde83ae46df79a46b3a853939dc7f9fd37de9fd86faf74da064d1501a68680a8738394c552f4c551e5c7d1f5fd8f928853dc21d3486ce1f9a55c0c9b2a0962b25e9365838dcdbb81652d6d466189bbe94ab2e266b40299b6c3a5db3e7f5b5f438e712578d1368c698b8aa3e75d68efc943e9533fd1a9cac1d74255941b259cdf58f5ef49ff739a77bee233083e68ce6ad299b43353a63383b5ca434a669d74b5bd4ede7146243d62ab6d0789f024fef92b22d60caaa8029cb026a2e4f175da580c6d477d52d14c3274d9efc2b2f83f7a4f007f7deaf843f8ef0e0e40f9207ea306c386a95ad0052a61a60c6d4024899baa9904c1273bf42b2a7d27b9644dac290443a793e4a367ec43f7b60ea663075c3bf4058b9be0e237bdb757582b9e01304287b944057f050eb76818c10d9f5e78eab58762a06d2e7e741fa1cfa3872bf0b7d989e14a62cf75ee863e539077154fe04fe38f2c314a6fc49efbdf725f0c74a988a81f4dea73ce4414ad995cf9fe2b1f2f93d65775cac343b7ad0e0d5d90c8da9a1cb04c4faa7458f102d5da05d86ecf9290c71958f96b838ff1332818290b1653882b92af502f53d276b8e80f60cda73f4dad2731043418f78cfd168684f590a3df488251cd800673275ce14b2e96b21a8a76fa347148b94adcc74b9052c3d0af49e0534bd0a78fa151298aa5d965fcada780b2859289595ce46c66c6233d43abaa55bd3f668ba6fa863e8fa791b438f8fa231f46ddc67a8534a6f48d98efbfaf3b3c1ff06ff8a72950d1590ac9c1cd3973ee7f4de7b98b2214ef772f3a09b0b534e71549efe4ce9f3f328e507c21ac54df5a694e60ba239407f0659a34329a6b401b2c69ffe8d5c5d40c6d0f1db432f7cdb3b2574e9bdef9ef4f8f42bef837bd3af843e56fe9433cb5717ddc7911bf2f0bcf007e957de87a914fe38721f83384cd51bf22085a14a9893e37d9793b9cae56fd47922cd61a955805c17fd204b988ca2ab2377da7091dadf3159369ef66caa5d3ef552d6f2f405cc6f03fc3e0596de05343dcbe85bf4a3549e04aefc0b2b054a160b0a94ac3c4357b3e7b5e98f343374255994daf051a8df33a2972cfa34a2f087e8bff7c2ef937d99ca70506f7fe4b65c71e95656189831f2025286dab0071e42cf47d1d5910a48164a9f7e7e37a45cf429ff0a48162accc9297dfe1cd37f49e8f9f367ca431c2fb4e1111cd2e7e9498d42cd165c6753d1458ab23fa2be148ef715902c2fccd59b39973ebf87a6ffecae9f0d1098fb7efd70bcd7d183c61079b94863c399992d65b86fcf4819faa21eed7b9c8921bff7327c7f7af9e1889cf698adae061a6747f7a38ce1e4dc144ecadf7b202cb97978988a41f4def310bd17fa38e2ef4352d17bc88345d3186cc1ba315d89581eff07fe38fdf719fc7164fb1fdee7ef40eca56240a1bc478536e42112853594347bbf853c4ea1a4313794617e1ba7db04a6ea4bd6f7253055c39c9c95cfd19f237aef73543e67f439dfe7972cd1671d1f380255c0e912d1150a4ad60894ac1e2420d84743c8331ec8752165075a5b47769fee2ec2305c7d174e083d4e1a6d4af1d5e8e9cf29aefa9efe84514a3b4957303aa2df4d7d6ff4df733ff34b5f8d4ab0bb1fc104e4eec2e9e282d0e384cdd08523e6e81c8130ee813988de071096e82b38035d49c7d9a217897e8258e4fe2211ae9fe7c3e40042d3d05b1c0e2d847133865391436b3bb9241541685b479020361539f0b047b9a4526c0424b6b36c078037b4e131fe368e427991254ceec1e471f739a7ad4e1305a57121db50076b40d1b8487d50bd16b12f58c2ce629b47279d52dc415798be8cc91668d942838c002630a1094d90ac3a591dc8d5de0d7398eba1398cba66d5a7dabbe10df7d01c465db36aef76b71e9ac3a8abda6b6f0fcd61d556db43abb4f6f866849eefee524a3cc563eaa57d81aee3190941d7f952a52773bfbdf53a1e3ef0df07c202c202c2929ad6a40a1a1749682207dce2419e4de164c914acd3d023ee6981141ce4c30bc440fd0f7a44893347e851b494e64312aec7872db298a226b4d1a638a3a5e333c519328880ab76c8c090006d3d9ccf144e78ea145eec30a1528392e0b9603da0a14407e303eb0168065f0fec872862b0d2c4a7a5d5e445eb02462b42ec07ec349f3901947d9ce8e227c8c7336a01c109176d01e1891d782d20f480c70c6ecf2f74f6d9c35575cfd7c090d3962bd4ac03ae92405dec6c297b3a6c893dce56501755ec710aa1ceb24368cf9eea29223890c55840581404c2cade3304182bd33a832056b64ba8b1f28505a1b13c88942056c61e052713319f162b735c7cc1c3ca5d0d76e061e5cc458d953d257a00fbd610c24ce451b0004b28e287359370832e5aacac3d0a4e1acc5e2c3985114562ac79844f0f6b22d1c4c59a44d2e0614d1b04b958b30650d05873073b3be0616594f4220739d28b1ce4cc244028e169118204175ac0582c984c2841c2c7658a248ae0a187c582599305e16563cfd40b291e4f4316c82a8e48d2c392cec258a2e05ce206422ed6d4e2498c956f78149c4620f961e5143c0ada1fd462acfcde839d347c401dcec022488fd144c6ca383c0ab260ce8830c402592081623f0862491c383a0e6f17070e1c2a8092c5029f360cd79d1d881dc646be04d022488b0fc25c17002fe61357b0f6e75afbe375335bd2b8b670ec7ab63f0d471106c7d3d5d3184fdf6b41972af47dd277636fbda32f0240f6dc1b58e9eade154d69c5f846134db0bca06cb4b8a46ca05e6e9c5230d507b9cea783c1ce9614bb6030df7db8aec77b695f56096bc4fa582356893ded8ff5a99dabdbb1466a685f1e88430546ab30ebb601c0e3d12a2554f54da5f4a892caa3700987a3ed59e1d3b67351df97727b6e7f63bcce0a8e56f45caedc0a800072c80c4000df8d0d03f04500c89e28edabae73a17e65b5cfd40274ae285bd2b6c434dbbabc8fe2c2b40dce6417f6016c974f7d43b521b36f1039f605b58b01d87688b62e0bec1ac66c0ec406f003cc5af724000b5dec90a1c6f591c18ef48c32a2c483a32cb4548264480912275b2a41b2648f580912a02d952049b2c7ba1d89125b654b254878f674599d50052e191415c524c320f7745aeddd30d765ef13a9aca8ac3809c2281757be39e70a698a7c0609e562e9abb5964c53f090e9643a3111928f706239b15cd817c4826241d92a4453a05a502df70adce2d2e2c2440b1ffbc2a8944bca45854c6142633263d244a33ccff35233282b56d069e9e14207282b36a52be84819aa04ed3fbe046dfa6328dbf45f825e64377a6e10095bb2868513d224d8a6ffb2579839fd9616e811ef251acf171b10818a5d7a7870eb1683dae508df43682ac4e52abbc36389b8ea657dde5a2158d69436cdaafa946553981a74b374524a69bd34b4d65af954524b8305032569add4d2ea78534aadb5d4ab556618dc8c4169fd49c34a6fc6d0c0180c18e3668c9b3166bd19e39691bd05ab7578b51d08c35e088471b716c2d8700b61606e86723ee5ba16c2e8b61648980b34aeebe39796de1d2efafc24707ffb6e03bd01a18e99195aef0d3a8728566b17a061feedad365060a036ca015779594a2e66c301cc79dc76b197710ff8de4b45195fa45106138a84eeb6042a2308dbbd6544b1af0fac7befbd579495e18346193d2f96c103436342962a5226acb56a2983a19052cad0dda953a79452ea94d2eaee1eba53e92ea594a21ef47c3a47141152baa5c9b6943f3e72b6666548edbdf46c02f696cc3f4ea1a1598b32b4476f6d7721beb37d269930ba72a11111f34922092023d6d8e38cd170d8e30c72d7d9a3a489dc5d021942c4ce931d8e30997da1c61e270f19b23d4e2241302140a2e707426082060f8ab0d2d8234d135e7b94b0fcfb04562461051a6bb4c808c2d24ed8ee42904b6cd07476a52d11a51565c9ae8f318aae7c36db39fffd6eb20bb3ce9a190129b3630717f6a419ca3fd6f7d94c0d7de6e2c45ec3a10f0915a147981d3d8a1f8c141787f2833ee4b33dfacc6b4e73719e7650281faae29e93664f543881c8186273dcdbef867b578df5515fdfc6bbeaf3136830d6f872378189bd6d5fbfb5ef85a9b103a052043dfa8cb6125bad561058abc59a5f414c574e731a137eb0e95757e9f86240b36744a7cdf6a4abc942f56c4ac202eb298368ea9da18928424eec200a480882460e44d22564c290eddf827b4031a1055098b8715c6b7d35c430cdd31663ccb6bf49a68c18c21550624328418455cfd8b5aeec5a6bad59e7267a0c1fb6fb971aa0837000922240818c1614914614ccc8c94efa6e5c856a438b3dc220608f3974b8b0455d42132bc0a801184a8664300465d79fa14962d7306a1b488c2b767d95ef262808199d1ec01270b0fd4758ccdf6349c71e6dec5a732c608f3a9ea8b16b7dac6db0eba38498b0ebbf11a0d8f5c523940065d7177d3795a6d65a3130c41665a4b1e3f3e384d788704faeefbba9f5c9142e6c7fef8a2736b0817318e34e5557a7e0301640491062d7af157f41060076fd2dc80bf495415f18b1fd6db74497661aaa70d72ec707919c65b1fd7d56eb0cb5d6cf033028630856541104cf0c58350abbd6d7516bad4fec9910aa9a3a6dfc80d21a858d08b144b8b69f1f2a4fd05502032a048fed62063ee4319216839ac7c83d6a141012a250c410b219901740fcb085a8ed215aa82127c4f6a8bf536306b5f9bd170cadb22550131e2128e14b682f49054267589026574cd1240954a7891850f4dd12a849cd0951a0d0c512519cb0c79f81c2944a82a06dcaf2cf81b2e1f96b28ecb1b4832061c896404810323fc796404798655fe197dcfe255f57c22496e999bf68cc5c61198e5c59988cae76b888da1b87b6b11317f12cc4321737b0c6de82ecedfda58cae72eb734b0643125a53687f7943ec8d78888b02a6b6972fbac24d64ccfc2f76187b7e943d7f7418cb67cf09c3b21fb5f530756f6eb92a678ef6fcece32a287c355fae2cc4492de6b1c6cfaf3d75b0463dff6e6e04c7a74792199aa0c189f9c48c4265b2e7cfd1feb0e7cf7183b2e7cf111729226bfcbd0c267b4e293128528a8e3dca588e909d27ec2e08cb700cbff6fc0d8aab681b6dcfb73fdc210bb33d9589ab64350ab2661b42a7a48bf8e7ab26c41c6727841e27ec0959e3bea5eecbbdbdd0be200ae584acb1a008e4932d024a04160e6bb5b687a9ede5dec087f92664cd1541a5b2f9d8c9a480b7360d45704570c3d4dc379442fbfef637148114dadb6f4f43a16d4129b42b984374514ccde8f014cda451a56c1ae0e2c4322cdb93e6a0d2944cc399459692fefe1c1f7c4e234c2c444e0cd1e0aa19a6b08b3e021a640d8bf6d9f3b57d469aa1718871b1e90c0c0790cfc596596c6f610301a4b60628a3ed3f275090119c6c9f19270cc80868d84afd5d0a7919db9d2043b9927201db95dc973530c87d034acad457a1abd446e7f6dc7374facff671ceb68f338899e281533c4a4037fd94a43158bbb00f329deeb4dad117053d62cf45eebb99f3dddddd7dba534a479d09dce7bc41249e5a4f207b6e2c72e60cbd0a51119ace39a5acf9be9beeafa8083d3f08482b8ad8de7b6afe256dfbdcfbef2d672afa5ecce1638b9e6e5198e39380ef2fcbaf024064e083431943547184085eb044a00e47e058b7e83f702cc1fede7e379f8f9deabe0b75ccccc0408b39b8a75d0a244077fe1c3e36f7f445d1c31c2e52710b676ec4999992286efa2e521ba168de2274825ad6fa8f6badb55ea11e88f05ae484fe5d434a6d0f154563705ee9381d4360363b502e940e4c3683d164ad85559e0524bde9a44bcea1e86aeab81ef536138642718f3117fee0388c611d86c170f486c158dba6eac72b9d674e85f45dce96cb59a523ad642a533160bc323f1cceb9159006878d3339dcaf7c07fe58f9eeb17fa918f2ab3c8ffc2a3eb8cf7f431e2a4f0a7dacbc8acacbef06732b2ad9c68e1e34a4206846b3a930eb9e11e8a5f4e529a537688adaa02dd485b2dc00f1bf80dcdb004f9f024ddf02a6aa0b8b68e43740c9a294527a29a594522a03fe2efc919ffbee478735a5b452ca72293500bd94e53149c6dea6cb9625ccc9c17ffa1cee4d5d97c39477efe3c8f63e4e780b7970a6b01ec1d15fc22b60aaaa803acca914a4d9d18306fa1f38a29852ca02c47a3e9225cca87dd3e1dbbd8f431fa2bf3ef46f9bdfcd631c7e19567e7b1c6edbdfebf8ba8a578f4665b4226a7161419d482517f07e0b38c27feabe047e4f02bdb771d27407b8ab803939dcdfcfc13ffa540d71b66d5b0953cefd1dfdf65be803ff4805942cd1b6e9982d6c7f9fc7f657873cee8f421fa250e2e47cefe5e71e6f7fffe2cedbb8fc5dea9f10768ea48ca66cfaa3292e3cae51ce4c3f8ab19c02f1bb80dbb780dd7b6f02f39340d19fc0cfc64d2717cf0e1a4347b5116d44db74621774780cfd5df70d758f33dc03d99e07deb6e7421f231fa5c740a6dc7018ebf0732fc3f65df843e5b7e7c26dfb1ffa319eb129657580940f90a135dc2165283d615d5ad954462498bb768fb5be6198f250eb4ebf0e7d7015c4217dc6e0e937d0f425507f41740cf47164cdb6e9a780ae549ebe1c65c57f7a1ef84ffaf17bc8637b53e843e537c9ca223c595f0a47bfcacb2fa77b9cc3fdb63202256b037102b7feb8420e9e7d7f05d70a3c2bcc56101200ec62900bd047d6e0bfadeaf3b225cc0d4150809eef899c2d0f7a84b142b4943159c28c2ac036e5f0f779eede0307af1cd7c31cfe1e4fdb0307af4ddcf0e773a94cfb7c62fe4c5b3fb9bde6135a36b5acde25f7755ff7755fd5a576976cfad3de1f57d50b85ab60377697b80a073171951357e13bbb42a9595d2e5eeef3b19fec6770d5f6ce41a1ebbb0d6be8603d34205b5af02ecf628b73f7d9ce7ed6765a965d7a72ce420ecad21eb5ec087f9f777d92ff7928ba4f3bd14e4c43b2c67d6b195d85585faefa7cdf4fd0eea0bbb73ee81e7e4333d2ec1c9b3fa3dec2177c6f76cae66c4299527c65ea99405bd53f3ac7b44ee22adf22c7b2ec0a1de3e122c5d27350cb8ea0e7d7cdda7baf126d7548a0a4a10e8f8a36fd1e74a55f9ff771da887e65999bc6d8f4eb6784ceb5dafcc9408f6dc66df56a6bbdd7d3f184b8483fc76be5da07c3b6ab4b467bae10b2634e93d0d8439c1ce86ff4f6986b7a8a57af6111532d52ba7edd735ccc53e6877b441726f40b222474e9493f762f529892e1f4c364f2a1ab140f52294cc950fac122e5f9f5207de9e5278329cca730f3d09809f6f8d8fb03f35ccb52b2943ce50776cfb82f00947e7e0ea22b92699673bcd69e5ecbc5a9639a619e6c32994ae0f3bc8bc600a185b6756b6b92ccd18c44d143859021d8aa65ae9a45a8e37dd50d9bb6ec7898eeeef7873c117beb1c4d522af82e9edfe971d1f4855cdd97dcf6c50113ddbbbe9bdfb6cb6927d1e3bb9ee7e4b9ccaa93008697eda1e7cd2f06d24b1a33eddf9c635fba5801fa5580f4d2d269adb56e4334a280145e5c73715a12c0206e18c45d3f93908372aab8c8ffe4f99cfeb95ca1ebc33002d945485f434f88694657a4909a8644a22ca3f4e75dd4f5e3227d95ef2643e1a2a85f281dc54f6cb4e9ebd8123ae3a246a149184ad4ef4f2333cd1f18295c3584817d3d7ae62a994d3f0bf9ca24648202c54ba4f736e9e6e81ca331babaaffb8a91bef4b214ce1f0f7f8c58f0be5cc4efba44f858036ad777710b95e80f1e8db896896a297d37b883c0ca8f6010bd8afeeeefcf0f069ddfcb5fddd393002ba79b8f6544edef05198efeb506d476d3ccc5cf477ba58771dfc084fd48302419b9d672d500367d2fc757a619f6846cfad9a9e79a51156f88ac994ff2381da834b1678b147b4ea9c4349d58be1cb8b8502da8961697ec42292d616c03bb0c1da1eb8f0f1a72c8a6a30a44a8d0b355786534fce9cf1f2a450f7f6c986bec113b4fca4b81a36d7f6ef13bef7255aa9381916bfef367d5e3797ef642303059c3c209699e3da2be1e38bc2d6de3c543a25d06bdf80d3b033ddfdd1d4cd51b96067a3ea9be3ca2aba631a8a03d6d0a7fffbbd113078eef465b6fe24fca8e080984acdf0b5b38d20c8e298ca87d710f7b34816396d5607d6e3cbc3ef7055e232eca40dfebf39e6bc763a887ffd5409b6674650a4d421e437f34cd42d34ce6fe3bbe3285a621ff216eaa11d9d434ab811eefabf4a7a72c2ce0bb68cc29fcd045da8196f7e5e5705f3e1e03c1d0888bf4c350e7c06be59aee81e762a925a1bb00ec2c1ba54ccb96e86aab4df929c7559b8e10d5c6731a7222e2aa54adf8a78707a06baf0572f01ea1472dd343baa665b5d65c2527142ec25c74e981ac27fc8c681cdf4dae4919998bd4c9a646b40adecb45fa2a7c37da88f7130480287e37dec77c6fe3390001f86ebecf0318c07723fa5caba7e408b42d953889ed036ca9e4084f6c1f1dafe3bb11bddd4c3513cd34943bade23cd86bed66376bf3d6e59cb79cbbcd5e693deec39cf5b80f8fdee33e3c66d95883f5d9be1b1f895860e1bba92cf959a5fa6eeaaf36fb7d1679f383a17b0f471726f45320cfa038d153051e59e33d4dc1ce9fef7b61db5e68757ea8fb73fed87ff3b7f739f0e7470522f2b87de73f7f541c4f7115e541ecd43ae9eca8d078f083fdbe5c7593d85d73d5a8655b14851eb5acd68dfbfbde77c37df7d50b56173f1c681a0b033dbff4a64fbdf0b2eb26bdfd77d195c4ef0a51dbc525655255c266ee8bae50f885694ce9ff4563e8f73c0f8d51f1fcfafd9ef7f99e77bdeb779ee789fceb777ec8f33c917fcdef5ddd6f600da3efa6befe5c776026d5cc28a6922c3615b5ecbb81ce356a9be8d134dbd904a57befe96b008c4dbbed3fe5ca349331f4fd4d4fe4689a39f7b5bce0256b4a279f531297ac61e184745e41d0dedef270b2eed7ef0dedd4721536d15ca4a6d9679a9984864c524cb50f340999a0b8484d432629a69a69a683ae5f83f5d12fede322ad1a4c55fdf21aef53428f9987ae52329c7ea4fcf492450a33cf4cc940fa91f2b008ea496f7ad24b562904c2f270cc3da08986024d3367c173793c7bbefd77a5eacfd6aea103260edbc3e7d9738b7ad0ffaed7186b8d427d154d2cdef7d22bd7552fb30d4f88aba46b4f6f670b41817ae62cd06701258d3181b44ddfca8a68171729aeb22bfda2a6195d99be4e314999959e149aea2703e94fa16976841ea58cb6470dc58506bae8175d6999762d7b69590c96650a4d331b68fbe3bb5e353d83abeafb3f118fa1ab77790c7d273e4c5e4b7a8078a048b2e97fcf7e1e13940a9a865ca47f01a9327da101a9320999665286fe94e931d7eecb3fe5b9364b2dbc6c71cbb7343dc1540d7776c19372657ab9865c99423da331f44b9a874d43ef072d9332f4bf24f47dc99aaea7abd198f92dacb3277525c0fb8878130a8fb1a1cbd0bbd0e8aa54a331340352d5e3ba76097419ca361f91075dc00cd47ad4a79e6b9bba0cf1406f3f9a6653b4cc5554881eb54ccb5ca42eae26f4a8659b8ed67547d36cd4535cc21853ad4d5fcb5c659dcc5c350445d36aafa7b80ab7725484b80aabb854765486b82a55c3ef79222e823fe47778def5c1b06d1578a40c7d971de8b947d3ccb5299ee9dcd7a69f1530b70072c80c8000330530c00174b0a05ad1c0e0404058d3820b09005f010bb0d9d55ecc75d9fbfc4db34d3f75af69661262b2e99b865c85daf44f2e570df1558d098aab241014966cea9a726a89b1c7938e0724050a7b3ced98689bfeb5d5b5e32adadab4aa00d33e95886509c3835bebee61516e4cb5ab6cb8b82ca1472cdbf37109e6ce341b86d845287b3a199bd5b13eb2a6745b37879bc91a96bd9216084b843d624bfbd281c30e2665a814af158e20c2fa0df6a7850aeda59e526d44b39f612d4a84b14bb5dcf29232f4514ad0a5daa63fa28d6a1aa6814a3db286851b9232f47d5c5a48b2841957b8b1795bd8b9fc86d86efad58736d1b9443e68628fa31dd7a6af03910f58684648b09d4ddf82a4162ab4dbd8396c01d201580728490081041f4481049ac3163bc81e4c2de68c684b2a82e4ec51ff1231b034b75e9daf3da25c12c0b92d036d7f6e796d85915cb0276ec05e68b2e61434254b98f1ba84e86c29c5a63fb3a130e4ca2a913143b2667a7171e0c28c4d29ad6e82f9f2861b5ab7e10d938767484faca545648d9ea1243fb025af211a14293b3238c1d4803284ac2e568ad236bc54ab0b91eb4b9871d264add65677d771800a7bb65c4c01cecc9e52d63053021f2ed29981ec13cd9e9ca0c7390be27eceb68cbf9bed6ef94486f69fbf657cb14b15dada5313f4b7d5fb28b0f37191067a94b4a9835ccd50d18f5eca2f7325c89975ea2063e897c063e88fc2711ad9f445e128b9f8c27126b1e97b610ec739834d635c384e21367d1c4e17d870e654700453b474f12b1a7ad650fb4b2023409172c9c25f12e537731a524a29a5cc5f11b40452038ac78171d5f6dbd36cbfd5df5ed2ed6e39f6a6636f33c86dfb6d9bfba5ccf6df123d5fd2276084f1b2e666dac728972bf4cb6a341c31a59452ea23898bb6a6031963bf899614dbbe15ae2131b47d394ed97dafd56a356c37fb7714e7cb553a77ead4b6dd6ca8f5904e84ee1de1a0c13df788b91fb284c9e1a22dc0b608b0d28a6d63442963bffe0c34d4d081d9b252360e8f2011639448571c08438c226ee10c3397912c61f267eb909e977e60ce11fa3b3c4b3a0bf7737d61eed9a2c1fc1daeda41dfc6c5fb16dc9144d37b7738b8c345ee071ac8967b9477fbfb0dd8be9bed8b0090716e8f853d3b15f67cd9d324573634a6c6e74f1bba9a42e478e128c160619433192953810bb71d29737fb65cbcbab5922cd4cc85d9f77e86624ff07ebd2f3ffa132664dafc6131a73b8c8bb616e9eefbe76b3f0b006175df0d61de45fb38aee2c164db1f8115dab6b6ad8dabe685b9bc1f838cb1df64db2f5e75431c29639768ffd94263f6184bafc1451fbafa808ca91fe567c694b0045de5385d3e186b8d42bdcf16679031f3a74bd65c1dd0b1eb7340e8fad6ced96684a49b56155d2bae344ddf7f9c19ebcfa8f1daf571aa4cce7c8a0f8bd1175a02a9c1e358789452bab2a961119d67511d33355ddfa601ae92301fd8a62cc9c4be8b944507ed3f3ead2eb139548dd257df27434f9ae083115c2aa101850a0439a3820c2562f82056051076d0c11323dc931d2071efbdf73e91713a65f4609f7cb1f190c69320ea93218618ffc9f689b147e9040d599e41c38a8db70442430a3cc47f24472cc5f183c02442963031d0a37d4917de0e9332d4c1517dd56a8d58d946b3495c16c8c66c907562a7d3911d62898c7c5224e4a440f8aa7aeeaf93a7bbbbbb4bea945277973244f06f5199b64a2ada42ea7403b9d385907465518f9ba0b5f84f3333b383c6b84d0f9c59c3f3da6aad194aac2db9b8861952ecf9da0c1f686e8f2533929881831ba0b8e07098657b83ae1432284268044f4acd4099b1b3f5964066e43421bbb06b6a9a60916d5a6b6dd699dd160df3b6b6c3c07d91bb31e6425bc3f86a3d038daeb699d5a13294d9b5cdc02231c3d102b155160929da1e990568da2f9a55f086176e3859a8e777448f9ccc45b2edbf8b745f84e39af807c3dcfec1c0c9421be61ab30bb920ea31d01566738ed8dfe1599ded0142aa44432ad11852f49762fb7341fe5c105d91485c10890b227141433e4616f3475194ed1cedb4adb5d6feb0c7118c1445c6f8ffc328290a254529b5e408b6b970853d92a26c2fb9b6eb6c771629884a5290fc6cb829929f0765e51f1d16660db920b0d4f315c19a2fc31ff2a7fc19a6eaaca2fde7c0d0f3112063fca518b282e6d347cf66a0ab943f0d7495aa189420cd764ab3e7cb3f4202d5806495f4e7dc214b982c3921f4dc367455b7fba3e8f76ddcdef76f0273cb1be270f56dea566fbd3fe3a2947f2b1d234b98af095d1f63b0d6d6b575c2a8f45705c24b5c9031f36513bfc345659fae2cd6f6f3cd8c8b4fb36bad6f6159c258cba23ebdfa7c80dcb986997d4310d8307ff43f01dd453a0ecc817b1f4058dc77e00ab8cf1e8e987adc73af03101617ea90df0b431be6fb0471f61672610fdc771cf7ddd4817b1db8d741863a70218ac6d44bdd85fdf7274b982cebcbaae59744d777156409936507b34107b3b6be95528698031dcf28b4e731f3dd55be7766b22968779e9e173bfba4d2aba8c54a2aca18da14e4f6fc6e505ce895f47ac57c3d6d20a5bfa49bed5eaafc71c62e8654f460da3fd34df77ddf1c88b10d3ad8fc2c0fc697da21d6e522b53d1448571ebab22fdbe362123d5a1feb93dfdf4eabf33fb2a6be5d6522dbbeec0c568f995fc16d0a140a358a7962092d4e7982c80894829f10325ff462746704c19affa5e045a6a990036bb5e67b378ac0719151596c4ec0e6772c57542776309f3b016d4e14c12626549c78c19eaf8960cddf4a4a746900c19a7f730c569eccb7dd0f98c9fc4abf2ae6533783e3c17c9f628c6260046bfeac0125fec8bb67133eac246cce5545f5e0889e2f5b5286c2f0b26908844e1e1f920fc987e443f221f9907c483e241f920fc987e4ab7db5aff645e18bc267c4524a29a5d405172da59132167b0fd381363cc63e076a31c7bdf75e4bef0d5116c8454b690d1dccc25cb4166661d6daa00a849c3f235aca992ca594f281cc4902af010cb47f6bc78dd8741524482a70686dbb471c33578d37623fae1a31ad2589ab68105749a03596ec95b3461c525aa08040113886367d1c339ab137deb8e1a55793518f2be9788ce09ae17823e893697f51cea8abe36962e390d19897282f342903bbdfc41e6fc4268803eff146ec8237623486e298e1f842aeb8a78f63266b260e337044d91447189b72210e8c425d1c33d7ab675311888e07c7acf4125d5226073ddec031db747e8b8f9489dd88dd58e22a097446cfa67f23c855a74dff462d851c5fd99e1b4c709082637643e8c6d0ec0c1eecf1062de80c267bbc31e5866ce298b96a6c81e11872d5d8e28343c85534c8a638ec110794161f59e34f455a869225cc58809e2d67aeb5d65aabac95564a2ba514d7acba1c763c34e6bee670adb5e6e8d9f7472fc790c9712a2a5be62042c6dc1c3cdf127a7c69bdb45e72fe4587aebabfffe27ad9f155fefb2f435cf532047ce9c0179d971e1789b878bf2ddad2552f3a2ecafa363ef2f0c5e5e2fdd64b8e8b379cb9180ab97829a5600d1d2c1c0a679f0e74380b855670d56a5369dfbe55530fb43a34c655af14fb5ad7be37f6b66206278528b62f0f5d91823ce6fed5929282f6fd11dfcfdbb862c6be2826a420fc234b1afbfe06823e52e6beb498ecfb1cf8d272f17e0b15ba0a002665eeb700e997d60a2eee6762b2c69f0bc7aa831ef61dc3d9be33312913a3d0a8548d956645ed18d1000080009314000028140c080462e168389485c13c7714800a7f9e467c5a9b8ac3208761945206194308210411010000189999510a00f47ed792c26d6b419839715df8d19f6215a843eade5c69a02fe400785cd66005a78c4dcdbe0e85af23168717e19726d560d983e7bc56f800118805e06ceb807072d06035c3879e0f7857412461c3af0ff29693ef15bc59fa4a47e4f0124ae788a0df9181bcb516e4c4c82586ef54ee243380e982ce641eeada0760f45fdab1464ff3d8b7cace78f01604850d57b8aff1366b1669670d09166c126b87ca72b86da1a928527c9e37c7c042ea5dd276c7d7604bfd0275225653e927ad0f8606f413b5c99d4630ad453910d7761aa384cda40e3b0f83aec6273d59796f98e12dcebff03be00e806a1642873c86ebfa5fff5e7bada0de0a3ee190e7f48f35197f85569ab4f17248042be705b53969231610119bd2c11bd04fe578a03d8b2ad9bc51c920846bda1e779d4bcb3fb7534a2ee5e131b5ed06e83459ab3a010b3cf6c815962452915bbb31b72883c0948f53626597ba715596295f19f49a27fb99e5b410b194d354fb9e42865e86be9e7f5363ab1a4a1280342eef72a573892ba6e892d08d2cf5bd10661945160d016554df462f922b0a7b795616976058d34cf01e6316c60981ef787e49c7227010bb77cee4f2866ae5d913a541da88021685271dfe593cff3d85b31feb7bef258c2c1f96495480d2542d5efb22ff847f0012f55f2541292baf73562e079c249c9dc48f6edd320e007d7ba902ed7ed38fdc763caf1377d05734a5e3c3efbb1afe72c31b15a9cf68dabbc987bc12856dadd393e5690fa9bed1c5ddfc11ffb5b527bad4c15a48b54fb74b066a439c971686ca200e88aeb8530238f06ba360fe2e41d32c61d8ecce0e410038c638d2459c224b510e4e53b36588518c0accaeb60c8633660c4c327ba7aa367860a88601824abf74138c7b9420d4dc7aee61d37b4b994a959c1c3b2215b8739030c8f9e94a70d8b852df89223ea21f0e73d2111e53fa4f06d9936c9c2bba223f86e1eebfd08ad5824b294592e000f913e1b40f096e6a60b6446229d5f6f39accd67f5e40e155615c85b9ebea63466cf6fe0c55fff789be9054e9bae9fcf8661f36a519d26f44ac29aaebc0b512f9c87a06d048b6be70c0921d19f183c1085978e0bc8e8d36630d6e4905ecd88f4463afca1a13c96aee584d4dce37eb3dbac5fe93d7a1ea3ee15b902c2c51a0263051d16602ecd591e126f38752c48314ee6df7a988ddff73e847f98db7d2193516e12b771ea435f8e8c14b6d1bbe133ee39803504c906eaf601022242047c0ae5ea75e250bc75ab5cf342d3332cdd347002eb13c02ce2a9918d42d72bcb3140d1c4fcef60a10bad132a137b64b341e005fded82ff3c68b02902f85c70fff9b3e5b9d02ff310d88c22cd00a4ea481844499d0bbe6345d19431e9e6386af5bd4ed3570f5e6a6a4f54ddebf9ca9eba17c8014470914237302d702f6ed33644bc5fad0b0b37aa644d890bef748b9adb1baa3ffa274958d23053d5b37d30fdd3f66fc718166472534fdd6efdff33d8b7e9059c1295313026f0d46e3378cd7320289eabdf57dc0c58c5182db6b5e9bf7c268516f08836cc6424e2c05f71a81ba2e68d12f645ffb11b27b7a601ba1b447e306a55ddd1d5d39df49602de884f927953e76c423ba0756d8ee811017b2d181f7c07eb7e9769b9a02d07b778efabf71eccc3b8dec17875d0b0d87cc72004ed496230a61f23613a7b130914f01a40b6e64cab4efb4d4d6e042916ed29cbd44e6bd62b7f7b7fd52799de1fffd24d210eee65820687cb68285e1b92358b57366e81da3bac507586ae3d4746b17c94a5d4adfe952849249e8b42254910d0af5abab668e28133c2b6a37448b5d95f9d4a1090a7885b84a9bad6a53fcd08dae468b9c8ec54dd2b70ec34a1080082607350b1b5ee30eacf212fd2182951887b9136fd7999a59743e059714768eb63c15650adcbfd10130c3cf73513610d48606e8510ef3539684676e24d129e41d1ca42447a95c2be8deceaa59e2f38c8308c472fa20b383774ab83853dab8864bb3a676a5684fa14d2c80e52c26a5585df11b4d32b0b1fac955c1d01de6d45dfcc41b045b8b716182484d809944f3c040ae2c4d4da87e8075127483a77df6076dd1cb15d8fba25c0e9b471bf77fab627c1373b9352bf0750884731bc9795e2b09a4288c092111dc6a382a176ffc8378da373d58e76a09eb3fd9cba73deb98dece83b06cbde8aa1c09e66cafcacfb1e48ef47ab30019a593f651f8bc29067876638c03b65643b92fb18e5224e2a77c568e03c774b09782d40f4bb6c6ebdf2525bd76f8c0905301ca9dfa50d1936da6a326782a903d2abdc76161a9771789130472cc758cedf58ca7024e6d5cd8d8146b802c33ce63436e57115c499e0a64adfa698a120546059e3df861147a2013e51804e73587159b604f35daf4cb6e5e971b799efdcde3a742ae5ea0c458fc2c9ba7a036e6f6005689fc743547cc2b2e2bcced6b7ea7e35498986068d610df39612b228f7b7e901023006fe2e3f9fe7d75cd1d75c3b4d22316f57e2a7bdf77ba5f9486903a3aef515b33b2db10805f2e1436a1ac407a8b85c3b3756992b449a13e170e007dc93ad8e9212c9ad986f6765a0e1b9ef32b80ff208b98a31cd09fe403903f0010d2d06cb57680fa814c8b456667256e220113299dc203466b4b0230505a855edeee87040e8b22258aa3780ac3e010786a512adee0d990c6f06bf59a05110327be3054fb89013deec55cd1e90157e97ece3e2a2e88d5d7a8457ed3cccea16000c1c36454e5b2392c8d301db9444b3ea043d8c05b91d35aaab064491f335311dc0b06177ecf22c2a38b3961154709144de3430174cae51b0d713e3d8822fc5453d3533a586d2fdff6da03bcb35ca7a4257bf16b892f80084b7f5d3fda0d675f0190ea55a199b12e0e3d5bf19c94790aa7a3c19624b20a820897163524d639746e472ec7d99ab76b0b5938fa22e67104094e3ff30af3347dd87902fc1b3a6d6fc70e90969bea651c0e7dd1308edb3de6ce51e7e61673608a4359531b69255e66ebd66dd7ed37683e6a586dc98f9ad8079e57e4f3ac7dfcd20c9963a10dd02342c84e46f71389971a2fb596385a7cd15dbb081b02c7e96e1c9677fac128f7c3787f75fda7f13ce5dc21f7cc228f0c9f0e455b79fa0aa79843066417dcf89c05377bf9c043259157019c7066971a6d4c78193b8d32a012450b284d0307087b16b0471c1eb0c6ed900dbe2a35e43e8bc455a59e89f068ca9632ba8fb9911c5fb5ce9a787b0a5045332095abb1134277bf2064276bf3bfbfe2314ee4eb92b5896256bd28d460e0786bf64d5ed76bc0df12bd91ac994c217c3e0fabc098e4369eac636b3a80af439e4c419b7a7cd4691913c2036c4d416a2a6d5daa9b41fd373a18cb10e272ea594a43d070042faa4caca9b75f39171a64aa39a59cdb11e09a8f8785929ac0158492160ac9293d51195cea68cfce548e52b9c64334c4280bfac59d984d74468ac736a152ca66257881f327a50e114d8846dccadfaa82b49e6ab83bae2ad063e88ff9271237d9ac82337abfd24ef661b2c25581ae2b010f246b72400df2508ed338a49ce4e941582bce9d80bb1e7ede6f5e959be2cc1a60c58e603d60018be230c608c1e0bb9364bf972b7a39a3f512c345f786db2b03011533a0e588866c9af3e9d2c93c26bfef9f3ec9bc6f387f4434906205214801dc4e11e3ef6842efb850963a63c968036b617d9bee9e00d3254f1ba0c2211e4e63e2b01d4d9852cd24a468c6af90ccf08cbc063d2abcaf5534dca1d6b8de93d04d5666df889ad50c4a033ab0ba1a4b90f72b21e729061ca668131af754eb2803b27c6f9a1b7a1cf4661592e89307113228c5fc818fef9c53e61dd39b45dc8814c8a5b8242e62452c12df8e07dfc632688f57a6cb5f61172ffcfc3220cce5013167f508a75b86355f683a26ccb377c654adeb66a5d378d0c648c947239e22876f7321d2f436d24d6e56bc6faf31eeab49a355f1cd4c4bded12d480dfc1277d43c80fd2db4e102c6a946c74b31c6f37c1590044ce9b48424681e2d054811c165a55776610ff2f0fccf4b339f8378571350741d494fa5102ce524870b13a2482ebb2d10b03963f42fec4f84eab1b66f07a59ef0421760e4e1a0e9b34b58f0eee72411afbc5c993945bbcc0163ab4c96e9e24798b4c4f1e4e5e81d78c3ffc3c9ba125ed76573bbd74051587eefaa770c9d14aff5fe5883ef160d252605f80d1a94a43f5c0c4ad8b8e61a9b3b3e9340cfb33e79d38c281165ade6914efe46f9879a082f58e67549585c9513baaa1d8668674c6fe858186a3fe9fe3cf9c64eab1c889c505080026622d6ea1e4b26c1d43036bb3ea4d85ff81e4e72937fd65288833335aee8a6380d4dea2a10ee091fabde5052711a79de94012339362f26ff901afd491d7abdd542e178ab2e0b660d570bf90829207790eea213760964639bdb6e8764d8892b72a789497de139a7a4287d5a8e399cc20b1e16cb533218b7e5552e1bad59a963d8ff5dc00618db8963070d72d45174b0ab6b4372bb061bf6aa5b6ad7e1820059e512fee12545636464ad864dcd2e66ed9101e8f97304c81f16a8999025652158987064a00f21c21571d13c374fc9db52163c159f56c7f81df3a8a797400bfff7c647cfa2a77df75abf4d49a4018b69abeee1fe2831478002465b6daf03fa908794ecce55f92ba20603c44364df8c9242d6d11f0c99504bdfdf369dc01d884c1242d209607d5e0812d422914ef8fbaded303981e751a4bfdd41a3ad313a81194621ac5c8c391049647768c028e74269509fc518dc7ddb232b4780627a4e7bf323e4a8d8a6d2d4bba24e12f000dc3dfc9417da0e3477063c132f3427d921670268d0386d022e434329430a664d921c65e178606f29e59a5da0451c1afafe4cb0089e70cd223529a19cadbf6747a14c23cd79177e9d5d4a216ec96427ca89450c6bb11a9f97d0c39767793a87da13cc14e10f6a86313a43e71b16a644f02f3e907ca7d2516d32dac7ec13d03f87daa2051daa92b6d48d3e06f2575d9291b104ef5e8d799e9885a3f4e38b4d2bdafbf665709a9ae9c0bb68556e2a3241da2ae7cde0dcc382233c3b93a7f911eba262fcf87cbbcbfc8ce6be02da16ba5190527a2df4be24687aa4bbf91f7ef26df60b8f4c3f32eb14d54e3c082e277ea9a38dde6a9a6ca3a7b52e20873d4a11b77870a0337cb8d5c0ed74a2b05f5bcb9dbaa53bb8a2d1951e9440235bf65f67b576cf4a4ddda11883a327cd3d6a228b523780b17ad9b1e82d5c92b1d3854f945c5ec3e5513d8fc4eb031990eb7dd57c50256083fa160a64e5a8ae30ce3906b5c9d60be72ee7cc9dd453cd21052b268d74d62607467c1be1b1e4abf7bba60345ee3614efc059673e0ebc69e9d00b2c6937faeb87bdb21df12b37f89aeccfcaf491eb5b64d4e2847572082ace96fbda061242e2134bc4890ecfc23a80a7358bb2c80d4df4ab466e0e84a7f00d26efec59409b719842f25e71602f31ab14e62c413eaffd9d5afb5d17c5d5fd39425a9e787bd65a870d1af49af51b4c16f06130f876269afe973af75c8990433980710c6d61cb0d7879131e24a9f0c824ab02fef23b254f9c5e55518fcb9f53b74cc2d8ea76488a563a96c1e036ebfc3ecd3dff2bdf60efe564e1c12118e862e04a933bb4843962ff18f1caaa68ecb350b1f399f8316e0181f68b894d85b6f1a5c259104a64fe5fbe8e0cb9c212d3d20e1b9e0d57892cdae0218b88c393af83b66e2db3a689d59d3cc7bdd6eeb689272a63300ca56e19c63b75bef995961d0c6c6db0479cb25e06e02093a59329cb24180682c84a930ea8f4a6e37af91809c630b2ac72f4a033a58d7b6fb0a87eae1e2e722a5c36087c828ca5eb510cda820f35e3e409610738d773c5de338b059036549fbf25e7747814cd4ff7cd5d004c1c0854f5f2a11875b7c3d6acc8e288509dff5cbc8dfc61b886a742b6c8354c1217bda4075a9a299f5f764d3fc873d83795348d93f9ae3b28f92de725ecbcca8a2bb17af5ecb9bbc5c031edf0cbadca59e787f1af12a5f6e3a063ce305eaabeea43457a44131128b85174951003e14d981a8aa551e357ff305fe6c6a8e2e41813ed1b51763513a2048c5dbde0c0a9577c857edf9fe4cd0d8b360ef63db7391fad6913281c6d31d430a3dd9a17c26b03d0af0e83a114f3cc5aee28d9901269fdcf46444d1dfeb62d7a64a9b9c21b3bfdb8caf993a603f30ab18fbd155b1cda3265bd95b5785ae6d0d895305777551667713f2540c6aac9140c45e5892122ebfbfe0a37d4aa0132f659fa559032b09a20138ffa41bba44bc76a27744f6aa1098be13d01816afa37a7183392e1985fddb12b5045669b03b1540405aa6a053133f8da6b4a22b5be814b06d753124b902095876fc0a1f62a1ad599c8b132577e4214b536215bf2862ceb27bbb8a95806abaa4768d664db6737db386d5adeb53d5d2fdf18aedb6e990bb92bd38d7b566a7b3ebf217470e55f31777c4066687ff0f61bcffe5acf10afaae2e6d702306d96b5b8cb94cd76283d1acb889fb35d5e9707eae03591524148b6f3e26c204bb88bb88cad0dc581b495764168d838046fb586f97168885dd74b98561f303eda227ce3fccc60623ff6684d569b02901bce6063f9a3ac850bbe71d80331ba440b93b47eaa8b4543d43a3ecccfe6ba2d806093b7d8efbf56e1adc15e2ed39af65f356051badd27036531998864538ab9144df47752efedf99cb63f377a11ae76a2df79e41154e597f08fd990c38984c7c0417c8be3c8d641c5343e4658de7bf25dc35b5a0028185b094e5d2aea3e0e244c2edbf3cfc1185d0678c61a1d396a080594eb3d17d5e05b3ec3c5f4a2b6c2e3cdcce86944ce6a1ad225bdcbfee61c19bd3b353f825ec1c849e6c8badae93e2fe9e12f83948483707f90c1b9a7336f78f445a3bbe314779c483620b0579a45e28ba279b73553ae33f63f66272e0c4639326375eba00921559f9ba783854814fc2e93be2324341c056245295a83d78966d5e89efc14f823f1d5bbd57cea81cc6f95b0c85621ce7eba6249ada2a9fe8e216c2a6bb0b0b03010ccb53aaf8467befe48e2b12043841d224abc5b9885b61ed03fe9bbb5c2e99006e2abb2f308291a29ecb023b44e462868c90c2a381e40f85dd53c7213f3dc3c8c74a0c13eb03d7a200c037d60f1d03e75ee1a97dd487510eb1d38bd47fcb97ea80ba919191b3b34938de7cb38b440ef47b74f735c3c50153b97fdc872e2db9fad097c9fde49e60c6c006c43fbd7fe355d658ac84ea08ee4f09efda28ef470de9f704441d98d5407d12b82d96f53ed1d591c3ed6c64bb16a174e6ca3439a3cba57ac37058eda8d6efde15851cf0b4cd42fb14f4389dd09028280f0b1bb0f61eceb6c123769ea7d0fd4d26bc27e843331ca3a410c061c3f8ee315f129187fe68da947bd538f94342dcc8cacf84ca1bf161a816872d5a4daf5347553f8b6cb4f224178f922094c4262a9a3614b42ab164ad0525b72b219d8ba961bf5c0136e4739b1373d800185a475745eb0548864a4a2d0451255c25919040ae15855b875445f4e745e05bc8f436dc8369dae440ef0d5a161b3d6ee8983d532c822628522ef75bb7813dccca77714ab6fe500aae7a38dba6d55c359c027fb8841f4bef66d07204b13ddd38e76786440935e00d5a794fe6be1ead48e9727686f556cabc57d572f379885a63c5d820f605dcc308f049c4cd8d176c82c96c0509e60870a8b308ebeeb2f7d46607af017a58051c0b3cc2dbb4602a7031d399cc6ac84800b8576679a15281fcc259852adc73c25424eb5ecfeb05f014033258c4a3326b34971cd6f686ad0d917191439e2c2c7b479b01b8af12eb79ad33922d2b33990b524e689d84eb8a026255aab93b6a933731041e79cce89a93b7836335a4e213d2faec38a6bfc326f87f44b8f96e1555121842502977805f1ca92a142a64b43d9fef74f5c97aad88082313a433351255a90b5838486bde6cf029e5c5128613da4e0c5cc018d5e8c8d9e5893fa85bc364fb0149dd72ffc97abd8c35212a83e5442c8679596991e185aa536ad3a643b45b0079ed53e7b3599c2e7370e5de361623087e7de2a7734810b1d56b14d6a89a157e62ed82e373f62e340a2961754f9bea113c08ff8df14557443df340ae8c85e2c44c01c4cac31fc31cbc9a2608f01334148c0900d8ba59ebb8c065be09d56041e010e846b5507eb15446b7b4087baefdf79b493cb8dd3bdccd69de5690b49f949945b3b96a615682d582290c6581483667999c4b3bcccb1c9cfbfd95547130250b6a155a2f159b5b91784c611122898d503eff28595a8be7b6f4c7fb2fa528cf35652b2d0d7f4510295a0dafd069608804c286b67cb9a60422b9d03f112b5082a71b96c9e30d7f2b8de58dd8ad172efbd37ae2905520ebaa57e296dbbcd6815ab9d4c4e3eaf629e6bf8d8cec1b50769546285aa33cd8c3dadf0cf22ad07d9af156b9d84db277b2febcdbc150e57c5b5386f87dd69233e12d9eb0bb30c9bd761b0241de940272eaf90566dff2e064f3ed15852e76d150044bbcc0e1e302705004fbd200e91041f8fe7fa4aaebe868c7da6183a55645e291294573009c999cf29a9a5692fe7b84e43747ab364cbb269828f88618f3c3d9e6c9b588e9d9cf4391398ab10e40ddd8ed473a008c5c94145af8eec5b6b83b0821d8d43ce8bea532649878956e0b4b68bedf9cccf2f4f40f0e5e1e0aefff93779c2859d131cdbfca7b327dc5e56e0f713bc1e095b1820c734bc7ac2699f705e6eb4a524fba0dcd3c0a4b89c433cd28eb4a1187fab4c6faac151f6fcea569d777c516d34c3386e7a0d45f9179ca1690f0d568c359cbaa46337fbe06914d73944689b8286fca939f9b7a3e5e644a39cd9e9d4a19e8b3083bdb5b36844c3c7e10ea5f4364288ba99f57c41d4d6af9c7c265c078ea44c784f60a98116ad82b0c35e323ecce006c0f180912a8ed3243bc9a1dc48c9c823526e5134a17f1626a6593ef44ed198e3471eb6f1fee9127ced18bc4962f075432620a520aec25128bb2da98717e99a6bddf1debe66b91b9b9ac7785a14962ba04a897763a33a3ea10ad08e3be623de41f5c86d945232314f91a2d65f2ffd8c890f5396175b74b68f2bf9d7f191f93d33544c9f2f6309c962784b27d410dd47590b0299d5fb7e1fda5ce3847336e9d963678a54e7b52ed16ae4fd30fbf1008b1d52020cefa6594da76921680bbbb9768362681968225339ee78dc310d78cc9188750b7ca279597433bf7c7f0af19743b99d3133ab52214880f85fa589d5de7bb8a143c8ed800fc1aed37bd4d424bc2178eeb43e1bf10a119b5810d974b8bf43a45e1ec887445e6110b87d237a69a0e7f9e80668ec20e5a2edcdbecace30748a9cac4eb9ad433f571d8250fe6ade299748ac458929e3dacd686e56b8a5322ab7b672348623c092636201372f52409d7838d9c2560d038e136696b3336f5e869334cd612b4b5cb3b421a5f7cac52f651e298630b1d631b0e4a392d564c430474abdd4d36bb8f89122b162825a8800c93269d902edd69ac8de7fea31f047cac082617cf6c6a95adc15b5a8f9d398df215712591a6806990e3732752695e0ae23bdf3d620309e544b09c0023da378244a8fe056e3a951b29955d8e81c995791209a2bed8a386c9ab8593ed195d2d2bcba65a39f8d0a954f8198cd73e8fd7ddec2cdcfb5a779ae54cf8146067e1377bcc7ffd2ac1c0ede4839a4b262b0e981170ed63ed426341a5370b8a6552be07d8ebc2bd1cc2b26b1fb315cc246ebcf468f71e8a60d39306e8c4632677271a3c2b2b8475e0d8bf4a9ea832f4e54a09056f8b75a8e947f15210d456840fbd2f843fce42a2e8bcdbff362e2d04edc307e27ec156643a1a00e78f6b036430185343b12d939299ed2cb45ff92fb4672d97bbe5cf528a5ea189cee495288ec9368584907a6762a74333806a502b8dc621a7dd7ecc53b7a1da20b837b15212b5e234a0271853cfcbbb79a4948ab80bbe753612622aed5d81060b32e530cc3f106bc01b9a219eac10c868060cea48696b7575ee18a948f04f35fa3ca54fccbb1b057fb70dcf3ae078f662359ee0473ac3a645699807709f1eabba0b0da2e8a25987a28a2da1f561c0977ea5755a3ab28bd2e6a010bb929dc9602e74cca5cf3767fdcfaba2432b0ac5f0376169acc47b7d6ce0afce87967dc874b080ee24f9a1cf6760562a0616d901040460bdeebc9603c4dac15d6baec8ff1d63344e2a24d3501aa6007c6cbc9b368908c9ac7a234c27f2786eea6e8c72e1e52aa19b9297fc2002ca6b6699ff9e89f36edd2a84250d74da14600ed0af648268304429516a4d0e33b20493996867349218ab94c1afb1cecee162750e3b41cc0e6469de6a4213b6d602c5b7963449278825ad0cbd2e28569d13938badf8f692e817c9668519c3afb62da63ec7e2651a83a8a09aa48b4a4074ad2f0a58167a515f4b21d01e6e2b8f5263f980196a11d579140a12bb4230b3c531eb16322fd7fdee3ad9980fd924338308ff64c245a2c597ec6db2cdda0c515378455dc9bc8edcca87440f2df0894bed5a5fd78db29c3c360f8982caf96ef93c32841cd1823a412cb3a7f7a4c6f26940c7745894c5c486f6014ec3822200d8d8d80ff5ded4f0bb57494dcfcc2247e75100f5bee55cac2995dde0bfd88a4607fb8095b9f80579f7b9820811a4efcb6bf679066150aae7c572186b5e8d2166523b2b171432b55ca7eb3e7dcd4ffd521c3929739cadb0bce0046a13da42997b62337139d140f7c29f6011275c1ad47163bcd05b39627e4bb18333c523ebec9fec67969fc1c444582664bad624d8ea0b1027298aff253e4d7c4b659492060c255cef42d2fe36169f0d8b0594d051c5c82da367f4dc0280c2132779a676f8e1063d7e02c4152b96e69002f51d72d2944ee4d8c9d31d27c7d3fc69c13bfe617d3335e5f06a72ab2a0ac7876feebc7b494bbec6b9b55f205a0ae674165e638e410112335d7ed8c112f7d446ee6c1f6437a27adc6d810d66f4b236bfed994ff6f19a0a0ba1e01ef33ef8db224d095f436b1092deaf9d08b9abec18332acdc0fda4fc6071124ddf2f8b72809e7635b200454ddfc4829494eeb381974141fcd163e2f1f2de233ad39e30b6a059d7b438f0fe1e966304c555ccda85dd16de7f077e464f2b5b9c9538d6ae146ec44f6c8cff97fd677404d87d073c82b23803dbc994ff4f80cdd987f47abbbae64a1bc2ca30a0d927257fa9b28349833e1de664845507973a3206815453af799c02a418cefe88d0c1d857cd50ed010d4a3f7c4f1c1b7f69adf01f83e3fca196e8ed2c4cc376b3b3238b4c043a7059026865e64ca27cc9a9c5551f0c68b31b1aa8be7ed0ed6d1cefe999d72200706a1191c21d7a119a63ce15871c223d6b7eda09ac30e7b6f5594a7b1f02f7ea5940c2baa2101c10dfcd254529ac1f0dc15584348820df150545ec0e67bf94df4d8277d546cd7e536e0cec889bc5b2eec4c8d03d8d9659adcdea1b85db3c988fc015e570ba0a2615c8230a8c0e41bc51a67cad71fe085edb33e3e39f8b0405cab8f5143406128b7f58ce349a414fa0e4bb3ed9f7481759ca64c4eb1da9f1db98a20a1e3908d5e1474892dbd3a16ce2f099038e610063f8e2bc068b94429b3c7ef5da1a3cbbcb157bba3de0d31ebc12ece8950590108bb7775a9f1b3fc8607b29e43004c62574df235a577878683bdaaadea2d7c24e7bcb1a271394a218ef4f3901e34f9bfde3e91434d7e461966f1aa250698e108a724b9ec6ffa96bc616f5db373b6aaa68344ebe3d780507684f4733ad2e57dffdeadb5f9430348e6109b85b14988a1016f0e63d63fc6a4f92483237a6f2c4e068124ab3f9aba22021f4e44c06f8b39565de17188ef943e7a5c129588c853f2144fc5b6cc8b1d922e9b730b4762504e6bdbc546c9ea50591b83fe7911771eba0c7a46486fc378558d7e6ef0b9cbf3840405014b9efd4a172722bcc4c00edc816a7bf4ce083b398b8f7243acdc54a5144193aa70ea9eeccdd2171cad4b33c1e9e0593721236debd4cc2a82d8858a2954d20b46811d70a6343bfa534cdc9e600af83da14c74e93dd06d34d8e58bf2f79ac784d286ecc01d2971c52e43daa26a413efd46ed186158320022fc10a1d9353ff404360e9d94c263e21ca272ca280f918d8e0b4b30bf5dd8fcfbf3b64bd4903b0fe4caeda4f742ff758af5b0bb59149f12c285a48529705b16c8cd3aefde8b9bd8d6d60d49ce64c000ce5c2ed066d90227a58533130b6f582b1f287cf6a75d07221c8054e50078ddef891c9418e0b4257febaf6156ceb1f1192cb4189aa1204e1014c53f5ef1e1d570bb40623b3689298ec723d0d6d72e4600a81f7a90e9e0ce15e1c4a26565b34d3c466037a6d0d7a3c872e531e457f0798db422f3bde5361cf449300f0d60e1af4f5030eee1d462d241c7081397b42943e93347477756e076a9b2924e2040641906241c8ac43e0a383610c597adb90aa76e1ea7b31ad493a00189982623d562f6494c30c189be20b43f3c699968868f94f290453d84c02a48b787946ee3a030bb95f8e899a3aa6e0f4d52480abebc899da458e63c89f606a2deb10e7a5981460c14e712aa9c94adf79f15a262ceb6f3c5979aa623e921345984604dbdf92509bd06bb224d09ddcadeeb75c40aabbb8f9f94f3eeac09b9e75ea86df10ca66990bf1c41c63d215b54433126bfda5a1259a117c1481368d560ed15a9c219b115ab79cc48c9f5d059684c5c87a0eca53c04d7b550388ff6f03fdb06602ddda9969e770269217ee68fabaffbcad5437a591a3dd916595b9870f6985576c31368c2894e16b75392369c70fc227963cd5e44ed2ce67ee3bc0d01b27dd2afc53e89b18c5be05e224f4729091a4237662d5a6e902a409e7e9fdbe38bfdb6df688e27f58e5ffeed63495971d0f7f9b27e4dedcc49c0e90660563da0f63e44bdafe936c83e95e1d21ff9947b59630409529711bd374cfeb537ff32d92e42bba856d3b31881007f1b0b4438200420e4303c2391d698d9de7cdd3acfe9a5499914a5044d392617932069c52d6894eacf984011862529e39e5433bb53aba8b31925543c729f3be62538fc2d1a28c6d011db098d683ba10306486cf811805159749c88836c4d1ca25c3e040e21421435c248ef04cd6a7bfed55691e660b9d29efccceaca718cd435ac5cf7f4d9d3f6e7598ebb42768ae19a7a3fec4d8a4d216a39a4d1dc25478954e8fd1c0765dc33d9660f076919ebbdc1584b0e7cf40313733a46057c5261e6a221accfcb6ce4396741193b5bb9a634f996b6a2fca84c96d666176c84fa36bf4149b06735410e645d7e7d38e7d47add5ac11e1db7ed30bf98a18ea0ec59582636f9aceede0569abd71b7264bcb7bd4ff12d3130e323d4aa5b5cc25d9779f68596087a4e05da542017be9e1a5d48d6db447a2399166f2094f875d8072f24ee266889ba3a4d9721cc875c58638a2402cf6cf5902ecb71a79928d133f03d63964a42b921504a871c2474e140c5455602347038cd9265180cbcc59dd6d104cd23dd430c8d5d92cb10482e8d858a5aff0ea932f8090c166264f5fe04c604766cbc383e367eb6e6f5776162c6787c25cca3dd287636161ba4c4bc616e9a238c4385a54b0f95b726a383581289458a4737aa04b05643cd35066c13ed7e5804020ff6e4af3d4bf015b95216a0d401eb7bbbb95affd8b181f1e08dc71ca1e3e78713e7258d06884c03358036e3599dcd28b13e8470fef4485967155abbfaf99c00d1ad5b22237fe01fcfcddd5442300d026e541744d592fe92df7ce2c86418c64d5816f188ca623c785ce2b22787154b4ed76c2cf67860a8279291250deadbba5a70c027ca4a8912ea20db38035150950cff6bb631166170f9f02ff40d14a06996a193ce2ee068e9e23da7c29eb3e0523d10ed4e5b79e10e7b1d0e62a018117a1c495e8e7a918cb2ca4d3a4b05d60dbadc247001555292811c487e2d9df8930ce510d88de88f9622875ada9dacc66f758fda64bae9c43ab1ab85963e7e49559c97af6494becfb3a27d922043cd6745711d7b1ef335f23d6670e482149156fa6b51ac67c909c100b08c48b8b706bef606c68413b04353fb28ad2bc84d72dc49975a2b01ebdb41b998d5d0e270e86139a1580f872e4119a93653428c5150312992cf8edc1e1e4ba697a2dd60135c4bcaa7fd15aa6c90023f01242cba19e0f024d5bb20182befbaca88f1d989d8134209d9dc81151a5e0c177f553d49354992289cc4333740af97079008fcb0abe1501759566dfa63786c985c89373c65246481dbf0598b31fff062ec50e2b25e182c49de298192e35efe54fe37f1a7090d6f070d2f84c1294b8862c52cffc7f6a6cb1bd8d46af587e000527d3b487ab405d022badc463fbfdba09f1f078492fc72475bb6cfb51df6d8da523b7692403bb32cf14e65e18d7c51d3cebb652e531fdc267d4ee2ae6edc291fdd6aab852da538d2da652565c6d102287f591d08d59331057f813f6d03fc6f7856fd5025571b0f1b295623e399cffc1153adca4a6086d1e930058bcff59a9af8b1df333a75b342a8b5712caa0e052c568a6af94ff4a936cec067b515c0ea7dd0f6c170fb584cb34eb40a7d9abd9d81a58669d3d65914a5c54ff7bb37b7278f6a8cd989efe5a84416cfa4f96e7002ceec89321e1194d2b244a2e2c0c193305b4051e0e6bd903d8aeff83c8226edd2a86d952fee23e3397bf627bed009774a13236d95896a0d399e2814c10887bc54fbc1a55e46dd570743b1f9548681def11c2cf1ab1a0a66e9b03304f055c8bebea84c47758b0ddd1a4e9164f63ad9438a1bb409d270076a21e4353834836c2d35ff15a703b4ad06a13a65c863b5307aec05c128e51cec44c73e4da678ebe8f74259c3d1eb0bb6ec8511b0439a9d309bbc5f336061b9a4b110f713c595d9caf98fedb9456c3afee8aac66efbbabb8333035633f1070593c2ace8093b24dda84f53b46fd7b8b5a5e2a841a26f7aca85f8147ca6a7a9dcf6b74033dc18e7975ab15759edf483d74e85acb853eb49ffb0cdc020514c486b71ec2799feef989a7c32ea0ef85ad9d202b591bf381a4565e74be4ca732710660041db66621df01ed7e84558edea7bfc8eab695fa308d82bf66b95d7bafef17b6136658fa410798c6777084be8b716e1fb603f6b1772a07d803673cc86a8c44d902d09cd5fbf1fe04530286fa56e63f80ecff1152ee169d098fdae30e6c9bc39b69342323cace03c0c2836038d8cee379f26a3e69b8a29e8402807115c004650c4acec330d482231611c8a512a9f200138d32207da77f07fe3e71bbdaeb70fbdceb2f3d80cf16b8557b439e14b983d505601dd0d47d5013827d4aac4905e7ac1bccfb914fcae7037ce91f5f2dc13210490b430eff72061f75d92a9b77a2d3016b66c527b1379895e3c3b4bccbb8201569352e57f7858447fdd0d162fb4b0d3ac781ec81a3ced7b7be41d56d7bc1e4aba60c77762c6f3b286be40471d7df88174165dde2a166adbed22e13e8b515eab67e6b20594bc9e0a75c2d44567df13b312cde5c8a1b26626d3aac3dba8273460adf5a5952532a72145659196b0276969840e52d84d46f0dc64bce608fd76ba5fe2949c6c5a52220078a6e8b464e43c89181e342ba67fc918c4ded418084ab7ac225b008cd39ef21f09a9cba9766e528ccb067af8f99d2fcaeeba918204ddfa4258ab158ce38f56e131d305ba527faf949f3c7e691a36ae8f7f1f96156c301038c3f3bd37829f7c7cbe616a8e668ed5724a8b0e776dde33e59133af548adaceaed7c6fe4d6490d620ca764344242449694181ace8dc5eacbd03aa7d4a1942e9da4abd6857d6807b282a03f3b109bb7d28953f73b491a30b10ec4795d204f8a3d3e2c2ce34af3bea100a7e2962cb571a23aee1580d6a0d8d62e3579c0e365e1fd386487eef9e4eb8a83777060efd59c727745f62115607526ae924f12226458b06e4a6363cacf3a9886d7d4e23630a4cdf29e0d5ce533a1289d3200e2bbc07a4cf0f2d9ffb76beb399e3b0d460c38816d7f1f2cabf5f8c273535d227e3eebf7cab79ad173c8ba04b311a66cfc9e75b4a6df28a6bb1e7878fc2774f58ef42f0fbd1bc146bf49fade74f3db039e6380978ba2cd5c49b642e5d031c9b73f96355c758eac4ef92e00c487f2753c4365cbb2587450870111b9c4716dbc3436fa18b6be22810a58fbe7b13ff1d34d6f9488834ba46b9ca4d48a5e5a76dc15865cbe2dd2d22bacfb1dc9cb9be49e4db10bececb2cbc344a339b6e93997551dbc5d22d72c5c843333cd7038bba8a08815e028c9e7accc8f10547296d508b2cb7a7619d549358df06e50bc3c056176225ad6bf920ef3b41f1a2734b5636fd953db7ff5692bde1660e2eea18216ce2ecdd616b07cce0a133b5898a04e7a04ce69aa863d7f881919348177447d2782cc6376747648477df0c4bd60f5329ea76e8464a7817a5c292b2ae0f3e9ab0165896c41aabb1c46a88f28468074e4171dde6e289a9f28b57c6ae6074735196b42c121ff7e052e11e21cf264abf897d73025df7e431b70a33d4d4529b7b6a9ba71ff05567bec15a680a9b9864a1c6662d19104f7da84e0d677eb83d66260a64502b62ae8773264c196c97ac7aad32e48a0a8e5379887cf6ba42a0593b60d84889fc70eae010eaad42ea72603e26ae852e0b10ebb1d67f870345637a5486b871b28adc501899756907943384d8bba119c7fc78ddf88f4b6fc59af33d871e6fa76bd24403426bf85a94e6b4f8d8794581d6b6b80dfdae930acaa019b94b4c021b42ec26ab4dda6591553d96f4c2c4a66aac77f0f55b9eec0065391ba4e94c8214394658729a8ea138f5fbeee3f4dd8fbe682bdb40ecbf47d2f99af6073e0fabf882cfdc1355c345cd9e618462fe02ffdc986f2b6de66177ff5b4f17bc771c3eb53b8fa33172dd07a51af2f64a067d24030c5695db2bb77937639a94ee9b10dcbf22bf549e13127034f726e20d0dbb9cb710c4cf04ea40bfc8ce382cd88c02c3248a7179794c33c5c8913f41a0e56335ff62dfb9360cc63e01c6a4926704526db7191801be77b21ca49511678c2585af673c3400bc5e297060d20cd341d810df224da3d0d218c725c13688346fe6649fb6ff73986f8a94880e32dfed65d73b16a1b24ba4a55a104158be81cc14ed4662f3fe4956415a2b42c1fbf212e78b75141cf6356321f35aaf732434174cfc3ba3c6dd032036f3c3a6a09c367cc43621dedf581c34d5c302512c819417b7e6e141c493e9e00e0e95afc288309ee4ca16c01715cfc11537fa04cb32a7a183d0fb2843d017a259c5bfabb2b4dc40962d0dd6218cd009b7c327248824f54cfda4f42740209934d7c7261a0a5b3c9c0bc30fd0e894b209462daede4970be7f577d427a7d915d04b262d6583bbd6aed3c6cda20301d2d3d565742b725006f70d60283173b6284a657badc857d0c2bf4e3acd38758231f2cab7d194f3153e6a188272598e67fe6f35ec6e5c3cf4114da9219d7782ceb59ff7f7784ce7ca7d24dd1f129a2510ed702880a8bca251d21bcedda7906c539504f522ed3ba113032fdad8ba61607e466b4188c218031793c33285e73621f5d047902bf1e8438d15f1b0230d1ffae117fc42d16839f51c1ab600b2494b9375f77391a1d6e9335366f72423feada2f94ac41887eefbf9c4580411771c1b940dae86757fc7b4a81270306b7a8ba37e46d196ce1d1f8fd2290493c62771eb177e726863fd97ac003bc0c8a335c33d1f0730049d441efdaa4a66528ed00f856747f431bd0c79701e20a572149f989ec056c746040222aad3ff6032370f271ea40b71a5ca2a9a30175651342cbb1f2985ccf0f550a90fa99197f5412f1943e53aefd93277db9015d1ea95eeacd801b01ea219dff0653705cd50eea8da2bcf192a4e24620db3bc4e736e0215e0ca430da30dc51e03a7cac42d551b06c8666c00b5ac2efe5beb97095ad43fa711bf30d2b60e9ddfa9fccfec0d9150801006a3ff0bbc22b901f2e4a7b8386170f7877dc33ede61a70512d3a7791a1a7efb177353a469ece17b5b4563334d97710c749b7cf4a36537e2f91442766fa07ac38c8806aa1f4642427ee121a0c64240723ac126c11438a84f2f1986e175c8e16589a1d7c0ba28122eb19508d5c23e541bd54fcae83e7494ee057def8179cd37af131f02ce405fbf4aef4e660ef3b02b1e8a333e3b850466d4bc9c8e30b942c91119d9c0c6df0840f8c66cdb5d585f44fbeab9306d13bb9998d9ba13d6b5b0ea748c9ffcc0c4f0a928063f3fa854bbf52747d0e060c4c862628cd3b61a575462d7581f44111e6b811f25ca9609a7cd4095b14a923ea06ca81a212e7527558e30ac982ae600c49fbc3227a339e15a43644f4e12f071aee698997c1938c497fc2a29d10fe75356d44eff3d983b7dbeb2bf101ae4dc5d5b66a485376fce72e4beec7392b424feb96c2e2f15929f6d3b8591f3bb1536da32cb2764e231b512f417706adea62ae7300db29e5406a728bee78b93ab8bea287c906f3d0d2bae79dc46b79df4e79ef12818ed1c08cd895b43182f1972a0bd31b53991eb75dff5dc7d2dc687695eb7ca3a0e9e0956d440e6df7923d99a6c8573917d19756eefae132d910e04b416279e1e30bdd8e90a1c8d3ef7690677b3b35b07c730c1515a17a6f1a3f0f55a8e927460f5890ce277b2f5b0dee4c186fc7962e9f26ea3d5c3ea0e4e935aa642f52587cb562110e22b4933389a09d62ddd4ac812dbb02438b940f7c1e53edd961f856da30eeac72706dc9e9a6983c4daf50db5442761c2a30a46d65d27f19ccb4b87c034b3d4d772b868e5f0365a3563295696bff3fa31bab3b61f1cf25da95e5f4aa1eb5cc7509bccf1d0935c9eea86e33968fd50d7c278ba737668a7af6992c55b5fe109fac5ff4e0af876320a90481ab66f05d04ae4bd960b846cde9db1df088b1388468e12a505c1c94493f7dd147e8cd6a46bf7c8b928556be3b7e9dc00662ff4aa804ccee89bba6ff3621abc03b7f625a4e889d6e4307de4f69cbb5cb6a2d025a8e0b416001b3a64ddca23d9440b104e5635f25b8e486440f1c078d643b80dc92a786bb86e892e128f6ba25a3700b76e896ac8aa38c12dd8f4975e7b0d9bc1160f29d19091a3d67d535056537ca0adb0543a9b8462ab2c500a3f4e70456621ab1deb98b07db5c60634afb1014c7c3345d49c04a87d5ee5a491cd89b94a256294cdf05d44168ff285ac3601f6266930f912634688e2e7f4544ac8574caebfa71425b4869c1596ac61c97a2a5303124c62e3a90015458d8b836be2577ae5ef9f43a5336afee842c75c0528ad1ff3c7ffbda3ed0761f5244fd83d8b246165daab3e8ac884ab68daaae48a4e7f36ccd50796ef0226380792ea8e76f0ecd31bea46a19150a7cb1f057bfc0d0f28bb1c1da5adfd3d2e92e3b8ae90ce06ff80d8d8df75fd69af62974ec98feb6aeb685ee14105fd70abc8fa77d063b0aab6e3cf8110314a9033a31206daefa4a8b722d23fd464abc2bc8e2a04ea4ac5f1310fe4af1c27139eba37ca50d821dbd945f55494c9be90b45fd818262c221100a676b31a4de9844ebd316234021fa09b1000e434225e39808ecb91e62891f1049d59d95fa746cbf8ca38a4f38647eb08accca0d92aa40a7a56f6104cbec355bc8fe748bdccc623282cd69c1ac4a211e39f2bd91ec9fdc3f752f46d492e8df14fb291bb8cc791b2e8bde2cbf5eea3313d7b7e5d0d4de1d62096fbff817ee68cb18d18f7dae6fe70cfc5c8dca6d73505051b576534e244951e5e1f27f49d1b5d3808fbf24542b2e9ba138921595a8afdf01827824097f35a1c0352c8ed710f07b1cd12c89359e34de47a350d6de4d9117b719b9279a747a5bcec0a9596e07b1e5f414c5696c12b1432933aa0c1400ba021c74efa9aceda89043fc0346959d8dd4e7c2a91c0f351a15bf5cbe4671591e70cbf63d058af0f26efb5a7ca5d0d73aa85a9db4d52bba4ec5de997f7bd6a5450e6f211073a7e8a69e66b02fc614786a13f46e8940b058e961293ffcc124c419693ca0a24465bb943ced427f2b4a894ab36ce6993dced64de0c3034c2dd6c61162d7c4b0c86dc633d5d66069c3684a8f7cb04ac61dd2f3061700b044f6fbc90f82f1f920c7f392ee72835521ca2bc8c615bbb7e4e08f251f9cb65f0091eb975743affaf9c2544b1aebebef547e46b6587d79c254a2991fcdfab9edc8dbb590e1d2fcb59b45821aef73c12d7d6e5ec634c4592dde9c44f1682fa9d2adac8a04f63682c10287d2a5cddb6685e040acad6ebdf99e84e22f76f71bd1263772bf72b57e0a8c23df36029277be26c6ebc9379ca257f0f870f87c058a5affbfe8dada52633f2b2f6fb19cbbbfa223cb02963fa7abd57208597483129b5890c9604181e8f7f6280bfd6cc6d18a88564d8b503441e980247ce4d3e890d89a1e820087cc340f6b1f96a837f09cc9ccbe0fe5c08dfa442de04ce3c6ba6ba54c8b15a94007d0946626d59db1ce92b88e92e76ea20d5ce76b4efad1382c2476563c7b4e3a3bf17433c41dba0c8e73da8e88be47b4e02b75132b6f2973948fe8b4e046ed0d71defc0f517d82d3750befb9b4ab2ac6c70d8d78230f2d6126af9fdedbebc0a0718c24e04d6b3dc8ea0796c17300d16bd5839dfe7d4bd15c2d867e69b8a4dc3da7cea866cc91b19dfe7aecc6da340a9ef8043995590b1f93c45a08333bd9659562651087873502756dbe3d9ff588c4548ee42cbca5743ea5ea14f767a7817358786d87fc00398658ca4a40995f262ffdd4d9745a64d84722ef381e9d086e07717616fc38f83ba3e18d390a7518358c4b3abaafaa66b538fe356b53258b7968c34c9ce6bff14f3f7cd67584535255b355c5780d73b69d523863099b0bbb0088d302aeb33e897b7f2fb397d0902d6a089643bc2cf2569cbf377ed22c4110dbf41eadf2a2b0c03f2d74b9d8aed0c4aef1f265bac547d1f0f50d09e75f9229d295591cca69d17c178e30e907fa84575125ac7bd34a1887478936f64f8579422496bb0ebe633bd9db46f16a1bada8e54c6bdd3bdb23e539d21e6ff70e774065c6598e5555c9cb2ac53c41e5d2d5042a35a475c50cf2938808c8d6757d5e6ae74478ec512bb3516fe0d2cfc3be64b13a3bff5433c3535af9dc8daeba6e45666076eb116c4e86f7221026e9999fb00e7a97ec1ca616ccda37fb01d33262f2b9b4bc946a97ff34e36c78170356467e336c109f12b6bbd850e79e1ac5e0eb1fe5108216b970379a88cafe3d056cde8e0a58bbef87a78065f48e815599b052c0a6ff8beb627aec2ee9610837cc01b05f25a2dd25063153331bddfed05089075b3e6c7e962006f4331e620d8ee69a9433d725c8961742cc0c5276d8b04f9324875e9cc5d35aa81462a15ac44ad50d64009e79f5ea3a1acb63a87c737d3b1b2a8cdf5475ea43dc13c3e6087c2f34e43ef3156c38098646de5a4c7a15eb2c9667f74f8c0daef966c2d73ed8182ba27d2fb39d162002e243621e28aa337bdfc99ef2668670251b19b09f4c61901105f2c1c94db448f05ef299beba40712a97a7653a07da6336a31fd61d0146fe97cd24f99ede5af7092c239df5d3e08a599825090750ae5c55ef26648511b1cd75e73d20bdbd6b83eafa66061d33056e3ff034de0e4d626d48537f9033657b09d2458939eda834b1b775247de9f6c39f5cf80b59fed4809039a21cab2cb8b881a4be856cb809c75499ea42505bea3d9ffab46abae16180a288f5762f39b22d009fa041474698c512e9cd18d8397f32e01f7d2a31a128f30378d7c656603a27ca084b1655d5fb14770e3f19669c5aff0565e0009e5c01a2ccb643c19abc05a736a896db86835b5bef4b009106fa31073ebb197b23f042d4a6e705b00a750703cbad7a6f29c825a8fba69254341fe92746b5b62da95df6bb431aa7462608c0626d0b95821c2088ca2c8d007dfb8b67bef7f924a15f53e731648e1d32d612e815a900e1485ca219d4ed9b44e8acea00609f22333c4bbeac268c61eb54d0fdc5162a0ff35c931f005ea1e8d1a0560567cf71267338ac600c4819874e3bbc0747c552ada4f819adf7df2c25feb48dc4fedea3ed477037df9b92e056fc843eabb84f358c6bfadaefddc0e98e79f80c5d7c38994719d274554fd38507599d188d5a773d69334002fa2d29f874474c21c8b91c1435a9ae566b760359a84a5740de51a6add2a55de96736859024e593f8313da9eef1a79859da67aaae2ed041b5e7c2d53b8c532c0e71e003be470440da7854c852b47c064db53706398f65b9ca245e4d03b450f1b0a1af9a4d4d60010c80c883e8ad873366fb3302ed4a6e221dd1c5cbf4c1048536cbafb127bd1f6d6db55b3584266cdc605aecf7a20b4dba3fd15d43e257842c5b4de8f74cb2575fe239afd48c5ed6bc687c4f73913fc1bac2bc90654fbb527c2a59d628ae82ae31ccc4694709b3e90427a571be20c023fc3b8ff4bcd3d7f4f516fd75eddd0eafbdd673699376df203bd5ee10f25cc7747c59f9f0b401bf431a496933670466ace863f16f733f051eb79ea2fcc24d8348cef549a49e36344918be041d690bc61ea54eb4e532bb2dd85b0720ac05f9bb2f2d472610cfe57bc90a7c59a49482111a7d7dd3f600bb1630059b06aab385b5309d3f7753340bb84f0e0a8110ff7cea2e1054edf05913970acec97c25bc844bb88e7b3fca675adf429d4718b7385b1ecc1944ca3106251376727a8a9a1b831988cebf7639037006f2c784e5b9443e4b1ce46f04602aa0d497bf1315b01ad53011c147c91fa1fe8c9809082d5a13beab1621c7a82549b42fc43a7b857d3335610c6dcca5ef4ebb58a4c128e1925aa3763128be3b6846b09216762e589cca6bfe68c7b000d1dddcd8746ede309af5402b0ee39e1e39c099f3f31cbb5a4cc52d6764a0ae0cf02ab56f5af65d96b623ab5b444ceb7ba4d299e481a69ea2d8ce842c11c61e1fa122f5f5e0068266759a07a680190ad4615ba3f85466e02a3f76cd5d46b3418571c74ed6c5c950eb4f4f20330d802bc30185d9ef838a2cc94dbb3b655ff1864390cc36b9e951e0c4ee6877234f866500613061551c6faf725f46547a9c9e331e790a197638cc8599ab0d2751e9fa65b12f43e4cac843e4696bd12ec8adf06c76261624af5d0fcf6b2ee6ac44b2e8440ebe7530fd022a5e1458cbf29d90abefd3f2116435e2ff492592ba76d8fd19b9db010bf4e65a3c6fb0dfc8b556253305893ffbd74b388b1819a1a683a72ec8b76e1b7f95bfc6928a4fdb79731de5bdda06a1ad66fb1d6a574249ebd6135983fae348b05d434c0e136107fa28ee35772f65b9f90e7c5f224ba2db631a457f62b38aefe43a4b848d300def8a60d901a8db48eb0966e1386fbc56debd417fc0d61e8547dcc53a1b061f5e6379ac831e1299e56b77f855901247a3372f84644c61b132470771a42956fee1dda48391d77d1714c86aa8ea094c5dc15446891b349504e23c8c4a4cffabc2b261c57bb64813b2f3ee9520548de688af93e0b483b9199fad36bb112b7f55d4101ac33b9a633194258370b833866067a7bafde8f6001ced90e2a50e13cdd0a49eea3652e36133d37d294a5fda81a4df4172698bbc3204769c10677eff9635eec72b30c4e6e61a738e357a082d62ec8a21e39faa07d0c6e0566f8cf2019fd086bf787cdc3a03624475651ac5b8dd4753270bf8e213a1572ac4e3dc1bff3271f13f49499d3e0ec0a2d6c507b7aae5918127084c7db8df32e13d4a27f4528beee359975cd54e6a2efa36c8096eaef03de2d3833ed995943f27e00fb7ea1f1aa6ee23f3a4f338bf5540c2b1ef50edb875f171d2bb8289d78fb2911356e91df91c39b472e3530bb27be975d0c1f46eb01f02b3af7878ce8bff37cc76a3dd25a7bb0794f59a3db3872f17b2784494cfb510a668ce9664af02606da4d4b114f289c509642fd8ec2e66b74d74299b7529852f51bdf149371f9798f1618084cf0c38105dcf937b5b7600659a3fdc53564ea2789881a20fe8c300a94a734af58932ee506b0d119f128bfad93eb4a0c59d51989a575ca11a41885be50bd492e2a379aee73e0bd6fe959e618e8586f412cc0c413653f1cfbb6e5856173ba0251c865224fca1c2babb1f6ae03e63e25e2b7b8ee5a1872310c07cc827ba60ebff50032ea09cedeffdbcb0c0c3154d3c2db05b004e13bfb91e1638604c911dbc070bb0cf19a31cd4a871c319ef586eb8bf3d01882f3a0f7e7cc3642a058c6bcb9b07fa7ca957273960c7c577a4b450bc041c970c44e0b27c402057844304b9fc72451ac04359f0949c21b262af813ebe2a06e16e0db8547ce30ce5fcb7f79e374656fa6dfe38da2c209dbffc9ffe70f6573caacdb859dc35d335c2d2b62b9ab712c59d283142fa8cd3872d686a9001d8b0df46bc057e5f63a1d8167c73f813cbb17c924711587dc49116d808c91442f17097b43baba6e7b041a3a692329051c3707c1a09585117eedfee508a6a7cc213c5682dd7abf1d045d26d0094bfc655dd954360ee64fc5b4b64076b212ccc8d50179117d0bbc8e4f30a4269b52fa32f59c8069491a82e880527121ab5dcab08bfc303ec8751827246b67d5c0d548538d3f9d316d65f8a07286169abbd12e256569d37f9a1259d29108379577b18dd0563a02106c66689d2a93e21e8f4f5099ed771a24797a4f605a1e8b4e943029a5a2b67e829669e47f4a3a9c3da2f7b5ddfdddd87c3f6245d38a194aa67cb42695c0ee91c069993f273556d5afbc9ab4f1777fa8ca1c3be37fcf0103f758e12ede5b56f78ab399501413a81b4c3874aaad53c4f47f1c6f8f83613c7e8e517a409fef70a19bf77ddaded3c023631c7312ba1a22834eff2b0b1380b094eab6d0106fab3860c39ea2b692cd61652e41fc4cfb271fbe1bd192ceb4729650af6be84000b3580d00e990185eb6b160a1589d62d808bc9e812d240c0d1068e7e14b29416049dfa027d787907220e12892d06139dd70bdb9ee0131ef0636a04e0139ee9b3ff5540cd41c7aacd5e9a02240a814a10de991291f73b2b3cdb38d0dc068330beedf2c5794e0dce440ec1820228a1650e200f5c0ef2e46c11c1b28c143d068d85899bea10fb438cfafc91a668c3b3b1678b163244c67a36c4cbb343168c2b45ad603fb60b1494d9ec1a9f7471ed1d521e2bdafcf890dc29902cdf256e911d50caa60fceff4aed65031a1981d2ab3e5e05663d16e3820bcaab4439c2e58d0f48e5942e78b1ef8ad4d90eb9e15f9fd51b2d8c8d08f2382a0caf0e36c342785126534e23282fdc5dcb96c2e2863a67463ecc3d14b24926e0f048a524a960ff5e6281f75db5a75951638678e2a269f48753fef552e83106a95160b12be06f2600d16e486ab335aa4056157ae99cc04d1108515b8b4ba6a77d199b8f6f41859721c7d8348881ba322c2ad01c2e8127715914b97067272149c789d5f0bb2929f4a8ddd85160f73aa055e56bcd215840a7b49a0f3dd5d1fb83c0ef61c4c97a5b4492bfd61175becd58b4667da3a55e19a127d640f1ed3e07b3329249b64f9f18a4b1a5f3a7c2417503640131d7373687ad1f8360f6145fb8312c01415874c1f573d709316dc017f2f783b45ae5c84dbee75d5929d0476bede9de9ccef5d1aea9a69c8ac9d378d55ba8bc720f18bce0e642bdfcb144f2c0e3e6f8ebe0bbf45605b4ddb60cb7922c66060f679f8ca6e9eb75b7c2d9c1aae39ede45042080efd60d67953b8dc3f840a5430caab8dc2ed3730e0f11d0e44730cabb2e03c21e687a14e8b0a3f65c2d46651d9873d365957c95f4ea2d9d2ea3a757f171d0a06d043ef94e2711c426fdfa40c4dc8f410622ac20a59709e89454f43a62002f1de9962ad16b390a76e046db7b46342bdbabe5b5c6b602a9f313edc5cdbb597b9e7e626ebd085363db4958ef04bd6b0bc3d08bb5b2d6582cfa62ecb0477e44dead3d3b668e408702460469c983969c50333658c02036d9a9dd15d778068e2c52c401352f9216766b222df04b2c0a61b028d7404c0821f9f0eadf19d433f670a5f9ad8618c80092c3cb6a33c211f5ce3d1392907aa7af34a08506aaf1184f3836a90ba3e15410780ee192ad95a48d80e4392a023ab4015bc3198aa828469badf40368e8f95079c0e01a786ef5f097985c686925a9d20da8f4268e9a38affb9ad4366681d9aa28c6665f244708f4f8dcff2b4417c4fa17fb297f82436f0608c044661c488746dc4333ea3091db3f563d90557225c4240890293316ee78879e6c77ac075ac7ff88a3107803608c66070312e2a6df11ad6bc6c2155a99edbd55f0f1bb27ac73b942aba5c290b7f2ca27dd418e8f92805ed72d611ad6489fcf19855cf4f5cf168e7a23a8eb8e40739691a7b4d74c858a0db91caa5e4314df07e8e484162c14f5687e6c90f85cd6795f2598a327db1ad5d32424ca604cdcdb89e11a3884dc172d1253cf699604306ca57d8ed6adefe5683aa8d7bc8b464d283ff21bae40d2add910079386fe3e60b561e7f02f29bc5b410077cdc31ffd22325a5d6f1e005c8add5cf5ae2b8e630759df9a02104b2722b3364e16b2812a6a1c63beb2558b86247d568a2d7d538b389336cdf5b45a53ddbdcd270cdd6a0260d5be2737a2dcaa24702da929550a47cf68624c0609d34f70ce41bcde1b159f3c7eea29d3072fb4f151dc326aa7066720f17e6e954fadeb7802b9de34fd028a96021b64f86d657a5436485f3f2a3dadcaf6064efd70c91dfee66b8af15b10e8368fd281baba979510ade8f93f84ec866a538b26d84c8f5b649cd05fa7d09eeeddbf5414a83f20870a0e3ea41e46d6aaf9e6cfa3cf9e7cc03b199708e169b91f5021facd219233b3fa68caa0f047220bc3a26bc0c2542db2a3c16c76aa378d4ac8832311bc3f79c1f80a0fe64160c7b08acef0adbf3631288a39eeed611063b8fa64cb0da8cfed65ebf13d700e70d1f9df03dd26f50ad201538867c84557d7fde1326c2aeccd8f42c5f2fa01ffc066f4be6f13c377ae8c894bd1f9bf248cefd2d8076f25ea0322f7dc13a2589fb21beaa3a897ca2cf2b5d2edaa6ffecad1e6d424ed5f336478f6bd053b0dcbdd1f8fae8df6da48f407d99cd119cdf0a0ace0c42d12736e21cf0b1941ed834a98d86d9614bf6dee1ccd1f039f3c825dde5acfeba1a12d4a97d297335fa2187203ab79ed0f0ebde2d6a1cf27c0a45c5e67675c0d97f53000135229fd2a6428c2787879c8cf832a39a1eb7465f8e718322b3eccc5099d2d4667505d04cb754291a9a8310d9828ef4d0d9efac2de61433746220859ac8f2bc9346b694634004ec807a40be2454927d06e97e84ed70b8569ca3c6b2fc44e95354e5f739661cf39ce9b8a983c512233e1e54bf4c7724b0d2c38491a7f23e7452d6d7aed81b0de5ab974a2ae74806f859ddbef6d24cb5106c43accc03b4db037d2aed5908fd7c6bea50a1d8c60d263284714f258c635d2e19347a85a1b85fcc7e4b3f07e54d000cf7246b885c3b9f0068db82a9cf81b60578474cf066463a7de1ba8b19b8f604a200fac6608bb3e951e5668e219d67f833deb40467e18ef77e7ec71d285a43298739021ad318dceaafd38592826a25e9a0844d2d3b6f35e40f115875b28811ef819c0d457ef1c47ff249f05afc34ab3f519e82ecf17d8ca5007041e0fe87bf133149ec4e2a19a3850021edb257cdc3b95534a6d0f3466d517dffbc8c59a72b21baeba2e9041b1ac9fe9bb05d186fcb26f03d834f1c422cc13ac7aa7327de024646643d4e556640ca8df5406a15400f8aaf28926d8e3e152974d165b5dbade5fa25dd52cb5149f848bd95b4d28ef5d865691d5b177b4c5f911daeec8c359b3cff42c282d5bc14ec96a0d98cf7ae30e2d766b0977e4455e78987a135cafa50ed3fcee501f8d0bd20d02e9768d269a7966ff2a95c30bd738140885983a27b0d0e26d1cdda9b95c13a6a69e84a9699d28f85a6208fa5c74ea5ff635b62fd90afe4a8bba1361a54e641a3134188af0be73b65669758762922a8ad6a5f7a651dccb7de4b09d1920db2240d3a312f0517346aa700dbcfabb10b59bed9297c8ae6fc036f41d9079a0e8db4f73d910c8eb71a25488d755b6e069cb82a260bed7f0fb634a76ed647544c69d9bd85c143ca0a5cfebebde02e4d33d1a35b01159b895ee134b3f019053d9a8b89b4f24c7ce61204c778df83aad946886ac9b16fcc37eb4616b6a37c92c8a70a978b721bab81621e20a08e6772b1fdb5f76ecf3912e67c5d01a866f6201d4b700c4e89fd7aad63d56dfad0655024915d22288c7f55fcf6d11afbcfc74d50b5d35ac648db886d935185ac3f552c5a222db2d5b8c44fc549a3bdf16bd58a643f4ea6590f53a1744260056b5c7d3cce8dffbaa1f6c69f5eb6c3fd817b5356d9d2b24a6974d93c92811510297adb483f6950f8c7b208aa98143b5a94f8c903f27e7261126e8fcaba469c0bc341dfb7f4535272a02714f4215d56be2d2515acfaa705ca99318cdfc0cb7af3c5081a4d478dbc0467b4b6c4b89eda4662f643f90e9a30f185681b5cab363081918d2f85b303868cd0035fe2391c36f0fed615643c6ff1973c0a131f9a6a78b0787d0cb76fb2a1573d7cc8ab5a14e8ff2dc74fd61ed7f8510d363942368172ca551d62580b773daabaddac91362c840e6e84aaa239846a7abfebe46e2a10945c438df979c636f9a5b0ed6cf9a4284cbdd94a7dd558f730fa07082cc40c40987142898197c3d45187d5cdd463e346f7e7c70c833c4692dd0e9a16d1ed7277c8dd5d32524889c9db5aeb2b8494b7f070b06a1c30d0b238953673691f7a41602c3c49da52f3f941e74c063d9869908d068e6059a544a7080806132014b897a4290df9a7fd20bb8b352c6397ac18b161729cbda41cca2bfd66cbfa897edf3b3b15357bcc156e85614d702bd8d1bcd7787ccdad2ca5453cc0e8cc0b4c485211422ab754c5129e83f1ce8c54ed9da10518ff1237a039ac26215bfaad6a39b7824b8869f3544d3fc9134a76595b39b16e27a391ea0263e26caf34991fd1d1a19c7aea91f9f4d3b22b8b3b8df5843469f0d271453b0e0fabba5e65d0074876152b9c563a61ffa5d247c4089a9d573e58d407aff3301048f29b02a5638805403b94832d3cee2754c6315a38ffe8e9a282b0882453b84d274cb62ba182afbe3423640007369d36e5d45fc7648ed9f9ec935cbafbc813a7757eebef3b32c40f9012f308af88bf5ae6cff9952e3b2efd683b861cc9741233aecfe659e51adb73377742f80ff002be7152c2af49238480eadc92ffeeb505c50aae9c49b93f56aa808d808e2eaf10b812b8ec9e15c5b319ecb1e5904a760eda388402fbc9220a42b19969d685fc70cbc1118cda5ff8fdfe7267e71035affbe8fccd5c0782ee151c85851f2f58f07944c0a64c3205380eb4447e51d4da7d4bf2303b64d0f9d0e2e967053ca6d07a7a59f72d215ab0d92019d78e846f7ff34ccc73d8537058d83ddf7b0c4dbbd4a75b93739bc258016918dbc756fb2551212f12d33799760e7c6a2f02240c543415f68cd475bc11e957f28984a82ab07d2e2fcc6ce9b7007e2a8b8046d80d24517671fe9e144a64a5d18cac510378cdbfdba4997fec53aab0c6a79365f4d03ca7a18d23c7bca00d570a66298c6d2914a8a4a2c5dc031a55bbb48071084c57720dd478c36f491abf6eda297cac045dd8510e457ca922e8644fbdad929cb2b7b3d93c353af59df562658b628eda00ab42851bbcb5fac2a80dd1bc4633cafeb7517e4af96c7b4db9a09de190fe06999b981608ba20fd8826dbf16d22e97897fe1b5b88c5e0b1200c8cfebc0f45f588469e8f3ecc39e18968be355abea531c8dc2ddef56906cb22c872515c3f80e9bd307ce178ebf3826929bd501046e0138ef100e00173c6073d257c21e709ce041d0fef50ca31d3981ef971dfb25feb9ecd36a6cf85506d4ef45fb62825c8708b1498b49b5660bfb5f060be8711817b7eac58242f04844f7db9888297f4cfda23983441c2c57c38f7a5a4457f311fa0f7f240fc872159060711ca6326ebf8a64beec48a74d92447da9838570689959c212a184c7ef84139b10e00fd2bedf7010a6c797e14001d54f0a0c2d05ec9e5b7012004ad0c7a0443dc2b08387b6abda41a2c9565f616f961e74d81fa7c231596f7169c4601d5a53160401c775a24062732b34f8cc1fbc92a4540836daec76ec4e34e01fdac05c51337e27a01e86419f65e246d0a41686e870965417f3dd69f3183456cf2f74354b2a9d0fc1979bc83e0ce7d11b29c3a5e55b56082aaececbaf7270bc874d890278d96e57c009c918cc33280008fe1c1cdda9690f1b810b607036d304ca10c746c5bedf2731d0018e8c3a81aa057af747d73e12a8853b2a7a8d6067bac0c2127419edcca4d142b0540c89332bbdbd61af3f1ea198a373aa64224ae4a5c22ece7f4d37a54e470fe8d7ab168245504b3dd909a35a0b456b47ea7f1cfe3b99bf00bb1f34511c997abe9bd3286244fe69a9bd01ad734d07acfe82353e09b6ed5ac6c208bdafc003966f93168664225b06ea0e9c4c4d76eb4ba395210209455420fe40c5d631329b25ec8d11a3d7d237a32aa3e3b16afab6c6960ddf847ca0bac85e418d431002544afa422441ce08ba64b3efc4a5222746c5b40f8ef0ac41bf92f3465aa20df9f11c598247c8f1bde6e1430a2e5e28dc49dbeaad275a106d59855f5d4d56474e962046c418697f79c41a856eb63181714905b4bc38aaee78aa25776a8f598a54201f66aea02a02fa594b0df1359bea859dca4ec3c6e32cd9f0654894c6028baad9b4ca8a0d8a58920f7bec8ac267d9f10a6c8c59a2a33eaa9d349415e6152981c40e665064606adaa88c999d8f228dcab0c29d247304b8b88e5acd70edb07e2baaa25687424fd67b68270ff59eb75eddc68c9a15d242675cd8eafa7408bc9800934a00f24018a9e100f2fea844bd9601a81086aa8397b4b0db596891fae8cfc5a5904285acdcf0a3e7f32cf4d20a145f010fb4971e043e1e2021c7e29cce431bc9f35707390b49d41c8ceb06c7c10b2e61d552f26d4959bef7af0296cfa88f22a3106a0d05e4a531fc7fbb76531bfaecdfdefa035eac77704f575e505cda35e7b3bfbb9526a63ce01a01c21b9d090b27a9e0aea6aca0c07f334a152c82708dab98a6729e1a236fd24412bbfa2a227ca8a36be6e7a21443aa513426ba864508550de4c556ecb96512d5a8cecdd53fd64c1df0a7267699fa18bfa33442873652739cce98a0e0152cc10c0ead94fa10818832c0f8eca480b21be0a1b760b96f6c852a35e5173298540d7ccde21f27db0a5601b8d4b922eeb97f16d384affb184a7141c3e330f1ac2743eab1f15d7412e2161a154a88197aaee30e9c00388ba0b439f3dffa3a55b68665ecc1d24dcec3a9ee76fe5cfcb50dbf494afdab5cf7e304e013b37f470711704bae154ed4c254028be2abcfd832810ed9bd016f1ffacb0f63087f0872a8bce2d49b78fa1b16ced77c6721c8d2d64f9c07f80addc5daf7bf867471e9079161caae38ec0037a4151137a2ada173944aa77ef046124e2931c5acc28e3ab875e682d2f55bf30267c2e316bfb53d8af5f110a7052550c2a93dd781ee633dd15d92bf83fcd8e3b640d7b04e0e05c13fefb2b3024df06fa99e30e3a4de0750b7183bae00a033a4921f1bf08bfc68006b127364dfd9599103f5d487e42b336b53d71531c41e130e233a37a859c4a2b24f13c806ef031d098048052371c7cc4d2543f5df9831fdcf43f55ff2e6ae3fc31ab1e3d21caa159bd7418147f03e9f4acf34bdf2ec80e1171e7fff8d0c967d603ead937cd0d957810b10eaf395bf4465edb023f58db8403990d8811c8c38813c3cb1c03a40892908ed7d2e9c697b55c27ddd33c49d7d44ec66a7f65a1fd512d5b1a1b22dbfa92b19e6ab70b83f9bd7cdf59893d513066c9d4710f54b3abc7fe63adb8eca6d92fbd04c90b2fcdc7067e0919230241b42c81c2ec3de3521bf134725efce8b548841236e2798bf6b25cc6d40d1227949de0cfc20ec887e24c255865888b9c9daab4752b0642a26629b53bb7a9ea474eeac2581cb6e19c0036e826a9a81e1b39a7066848aed46ff1140f455d0ba27b6e92224fb196850edeea7edcdfd1101a55e4ef213f654e52238f95e722b28beed7808ad5e97035e313497124e328a31c902dcf6026a24ea6c59309c15a70369f22a9d43ea934e0ddc5ca31562d4393d89aca447c8e5dce3d7ef2861d3c9c047415a82205181d65701008034051b015a96534a1440d36ee3f187c341527623bd17bda2cf7e023de9256defbdb7dc52ca94640af306b306a5067f92d2bd689d70fdbdee0392bc173519708cfe117802e2e018f245a0b4e118f243a08c710cf91fd823c7900ffa800ee31852942253214a195c0906b1a1a812458b9d480e0a3535353535353535353535353535353535353535353535353535353535353535353535358e22d33e69cdacb6719df7017d21d1c9088594526aa1625a71c132b154582d5825560a8bc44261b96079c122b1505823d6094bc40ab15e3c2bc4fa5820d687e5b11e6479ac8ec5b1361618b23696c6b2ac1006cbb232168c1656c66aa98155830d1a4a10d93e69cdacb6719df7017d21d1c9088594526aa1626279d1c16c54b3e562c5a4d2a2445f3cb862435db0520a0965740286261b5f9d88421f2884a1225735d623e8e375305a5aacb231d665e3eddf5a6a28a984abdbdfdbaa061b522eec6a2d980d94abb590f8e48b9a0da4ab82848ff90694ab6d5ae7edd0284538d0145f5fc601c273e5f387ce774a2965de6ca8a494564a29a594524a29a5953e2d427fa394fe1c9906caa574738d81e3165186ebdae79885e72ab92c49faf4da79c15c2c4be813926b4d70a44ff69fb8e3b528172a762d8b913e315f1412d48ba5854a72ad6529e252744386265c372d06320c6921ba6917ae3e5917af6b3f467b8e82a61c7482a61cf3a3467ca2e8f537d77ecacc143efb7cf9c8185e975ef1c54a14bd6c50ae7ee920d73eeaa6756166eac56ae68aa81d944b64695d2074ac08b1f29c9aa04987c9458fa3ec9b9e53de10be0c34f5d307f223553f0381fc48cd7fb17218533fcb0b1a8731756872c07c17dfef8225f441bf86a6ee064be08316e5b259ceb54f5d8c2a3cf844144beb5a11e5eaa187bc2c3946ae6539726d0b0dc7b0ff99c1e7a275edb3a86668d2515319cb8c0f17ef221422a5230b59548eb25f431731475947895eec28d1abb3b9629df9a186cbafe262227a4d51c4232387c6c6042570993af33ff4b0cf856ea84d16866cfe478a82a11c47d9098646910a0c35e99315c97883a219d190559f4e4eb86fd04532a12622954866342a5dd0eb65edfd1a14b96c469bd08d28c751f66718bab1c16d9acacad8e4894d6b22aeb5c127b2f45c2b72f50bf7f645379ef79cecae018a8727eac5d1eeb543bd1814925ab3cc5a4ddb36337003681243001537809eaef3bccf078404e4c5a05e48765049503c0ce31876a74ff63f2f06f50a755e135fe8435e0c8a0700397d02c012fa64455e0c2a499fac07445a834fe3b18d28589fec16a278f864d489b6ed354dd33494121ea7abfd89878aa53c37ea485e0c8a09487a92178352d2279b922253b4efab8522042e8aa74f1685444ae95048bc18948b63d817e538cc0c4539a2718a4647d9ff91a2a10ffa59382347f633f4313f0b5d1c65bf53f289285749a5c58b989454544a3c120036b0162519e3cd917e6971ed8b60221e47e1107d54f08932501444712ea573e82386e06ea909724ac64dbffcb8f6779071e33032568eb2bfc9b891b1927163e37465ac867c3256d7be0b1a1736fd22cab8b9f62dca25e3a65f4419a30c2bbae953f72817d3d8debe98e9170fed16be506de3d5c2f617323d2c4dfa657bfb2f4437fd72baf639ee1027454c387084454ed773a21a52030c8b9b6b5fc4e33033655ffa6a33c2312c0a49bf389057bfa0ecc0fae59304c5d32fa3b78f52d22f2dc3801ffa64eda780224ac9b54f024554ecda4701c590cdb53f02c5d078ed9f8062c875ed772010d203453740cc1b42b940a01892d1422ed18c8b9418434d1ac6a6ec732da6c1d77ec8c66138f55ae55c2b92695db1ce7c4231d4bad6e68aa1996b53600e5323d4d32f22229fe5f962d7f67cb18f47f4ea24b16b45eef579c167fa95efef6af40f411c61e25239d284e5a2579d59c5607588b595d579af6966d0ba574c2d3ff44bf7f67bf48bf7f683e8977efb3e60a086b5a30efaa6674fc7fc9550c6890d442141bdfa64356d7b6d09d3db807281755589d05c0ba25c200a499fec9b40d4ab0d609f3d1c75c65175e6da17bdec736d37d1ebda376d9bf6a2977dd18e7d11ccfec98cfd1322f64549ec8b15936b453dd79ea8ae3d1972ad88e7dadfb417ab7e11a5ea0511aba15cd7a25c1a88725994cb75d2348ab0c2c7294ed19f2f6e36fc5b8b796b6d3675b3b995c63aaada5b9fb262b7d670ac3832af5bb7d6ad95d2dcfaddea35a6aadc0a074811f56d26b7d6d82ff5eb6ff53797b9e2f6c476e456a72ba63156de5c738823cc4095d2421fd95399051123a9ff916afb3334e598f527adc2277bfcd0a77ecee926804fad50b23e50e2fb4135a3c34645b71b9162889442e64af9039a2be5068461a44cc99f11be0b1f2141ebf2c6c4e7ff1cba7c289a4ffc2e4b0e35269fdca6f8d8d5938ad39463cbc15947cd2e64b2c1383239261dce75a110dbf773aa47dbae4f5f7a36bc2132dd085dfaa14b77684fed573034dda06f9fbe0d3fd077477dc691c909dd0a328e8ccca5e00fa1af8fe0f201b38a92c8a55a0525c8a9faa5af4aa65fb497afbd4ac5439fe85b9af3816289aaf8e013a58aa7ae68abaaea0cd3a897864ee4d8fcb76eef6f0cd076944a2533d32f5ceb89865181310e91560e4b16b9d4561ee8e36091915c6a1da6658988bd9858a16e7256a0ba99b9b9d918c706aedb017b3900baf2db6f8c58c951e954adc0e4f24bcf6b7d59ab3fed7047d7f9d25f863bfaa594f2bb0c2ab0813121a928eccec9931d65e40281b6a8b891e2ca67ee1729a2ae7c8d61982528c5d09595999929111a7eb0d5e246a43614168176e188806417172070db738bc82eed0a1f7d6e33719cedea7f3314d030d666f4c4add545c5155d6eb529e20b5744c0ad9cb6c5f0c018b3c9dfb6b777b3dbe83c994e2969b7996e5cce75b7adbb8f2882afd13253d539a680c9f7f5cb9cadbb44cef540e98a41a854aadba3742567fed29bcf9f65e10effbe7cb34b7f7e0d290d77f8fbdd317d5a223c35449672a203aa51a5521199192285036e213b9e9d94b552afa28716786107054988010eb270180461021135c81568109e2cac988234427293192448769085235849a49c958223640a84d417542288308d2084fee95bbe16c1cd3431439f06e981160489194a29a54192a0419600d244a440c56d595cff51a9bb8c8382252848b223256b2139ddfd441d405335cb42cb3156eece040e881c18881cfaeae854bf940ea029596bed97ca32641f81773f512d584ff669bb7ffdb2c39f933080935c9f724ea79c16fb78bafcdaafc039a7be2de4ecb7b053f2d9dfc02c07f736f47172949763fb2cf4f1ed3d8053d3d6a7df2c53dc94cd2eb37b0a8efbec6b60a67d16fa286912d8de863e366bc4d7cf631b65bfec9029f67aa0532e99b2aba655400b930174070b5c1ffde95b6b5df3f6ae39dcec496589e783f1e3e0d1658675e11e8d921df87074bbb8b8b87c3e2785e27fc5e3d2773b6acbc4e7a32b5f301e1c6dbb7bdad145d6307cfde2c7f4f35a06cef64b77b777ad5d6e766e2f47bbc931f869bd5cd6557a39db655a67b74ee3ba8deb3aceb3d13fb98fe418fc97ebee17c72df36467d3d962eb8b592667f55932c2503014178adb3bf038dd5d26407a378fd7daef2b95a4749931634c00f785e2ca1f4430024321b3ca23bf88aade0ebec38f2230147752397bb84e72ccbd314f8dda2b76774fe95977adcc19b59379f3f8c4ffddbdb58bf63277dca6791f6d88c98e83822b9426012ee3a0a0c8155dc619a2ba69b0a0ae5f3e30ef8e9fa91f1c25bfc7071e1caf1aa0c8e374c08f248c5042e7260936602549cdd0c5512e7079c1154b485cf1e4822bce68c115f975c41599e74a165c0f9c404706415ed0c40f50e044ae0660af300ce11192849c145391841494f4408a2df4a088078ae0d242121ffca0092c52f26b388c054c40c4084e112b2862488a033438830e9870c40a603085940356108418188ae042196e52f27f701804e4e08a3118a1043a70214949d5add1730c31404248ec328e10d555c2659c1314b9df729a43ae7c9c1aec5c19f6e80bb29ecb3b4351fe7cff70877cbf7ce97d0fbfd20ef9f3ee903f92322cf5a9b9f04581e362488df3d2f0498ef38a7cfdfd72013eae587770805f94dab30587b0efe34708ac9885a2bd99b5f681fc48d910c8f65cc82f9f2f3f8e5bc3cd8641ec03d1346b5f632096ed03d1c2cf51fc406c5872943b027c2e71e20d20dfdd5d06c798de11f1c9175beeaf78589addfdbaee17e795d3c3d23799a9131c779bd906ce0ccd0dc0651c1370e17ebf88fdfddea36f9defe18efafe1d863be6f7f790b7e7d339c39e487ce2776fb44aa5525dff6ed950e8b7ce9c4def41ddc15aebd750a49ff90b4b69e85e43cbcccc7d7ad1e79c4aba39ad9d5daa4667d1dcd2a5a400e70ec3eca138dfc10fcc3b4366678ec105a8e20a551456f45c8ec20a9e2bdadb56ec5c8ec28a255c71466105cef52e4761859113082ee3fca009688a8f5ec631a2baf20403c34c6b7d9e39be54a574864bd4af5c7b163810143ef91ce24a5688620533b8a51518181012be1df327c8ef5e0f9204f7c7e518537d96d1b267501c418e56a5ec6b2011335299e986b4b9347caee28ee0d61047f67c737c29fb627dd38dedd69003a04bc325ec7315d7e57a31fc355c942aa9ba16cc40389f7c791d358920c76fd9fd044e23428b5dffbcfccb4c03e58469885ebe8c318dd0cbef9169782fdf574ce37b097a496bcdedcfa4176ebfd584dcfecdaf5061e276d8d3d128b809f5085953b19015e9278610c29d80a3178127cf712150f41ce75d0814bd07869ea328e088d6cc6a1bd765dd079cd25fd65cff7ee2fabb90ebef575cffc9c47594ea0faedc28aebfc9be588fb8fea1ff802ada8b150bd7ff03b610b322d75feb3e60897bd10e713da78ee2137d4561b2d2f88a742d0f123ed2ed5cc2d4140534aa5b3ca1574ea4612a8b66561ad66caa60b16c00bb814abec0880d5436b8416122860412267298d8617141cf1123b1cbcf36b49b5df088cf92cf92cf92cf92cf92cf92cf92cf92cf92cf92cf12f92dbe1c3f776e6f1c17ac6eabdc6e908b16a1e969efa63bd3599c4cc3c534506e7fd7a3db2bb779506d286acfa0a6696cab740af6a00c32d235700635711974d3276902ae8b6232b3656666666666666666ee3a72dc141ff3305d01dd35fa248bf87a4e9ffef4fd7750f78f840489c8c75f6d6767b8293e7f1e7450408d3e3115dc0dd20666b62d306858c1eced0b8d6573c1ad74264fe5d30254fa529843244addfd64343a41119142295f09d4e2a3e299ba15cec5c6a2bdb09f8135a430668bd7d036c81b3a66bee1f4419982ffb8b466563bfd2c91a1b4719df7017d21d1c9088594523af196b02aa615172c2f1e0c61b4d460c30d277a391400022080930d314e1f9bbd7cb7f1c3ab08e674c966ac36b709b6dccd6a588c2c38c40f9451f4d20ea0f8e56ce8cbdd7083b7e4d3e933c3c931e8f3f4f762aa0e6064b2e72fb5bc16e414e79dbde1726ec3e5660db7e56a608571b92cbc9c052fa7fde5b61797e3582ed7b9b89cb772b90f88fb5a5c2e54ba9c28e57227231b32a36c102828a3cb91524a2dbecba9802e67fa5c6ec5bb9c0b8e85bbdc8b0743182df47235dcd0599053a8d3e9e321738cf9cc31b4ba98c8bfcc38cc9640f49877099549874cd197291ace7429fa267f794d3740d71f749708010dada3d8dd5d0c1cb78853b6910e42cb1c8943871e93044802d390a18781762c45ff7df7f679d2700c1ad4b7f6fb4a25233c4632cf390945e127f4422f147ea1e7780e17f31ccfb9f53da351f8e8cf9ee9999ee9999ef19169743ffafa0e05bf4c17f0a97efd36e230a3d063ffa20d450178214d8ab5a4ef4329956a174e9a26cd63bfd237cfadaf6bd281327a94e71487020a51029427bd0f12e949a110241f284f0a3d1c2828e00f274cb6eb537d8fc5dc69e4cdcd8dbc09a2a7a7a7a7a74707ce61b4ac64bfd29faee834b73e49c8273a8dc77aa66acecc95d3e0303a09f189cd436353df6fea7babbe1bf171da7cfaa406f7743950adb5566bad65c178821d7b84901670577eb5f2bf25941829cd153b9856fe278d502209dd95ef4804f95cf9cdd67e9f0541368295ff95842471adb5d666a10dd9089fbc34e4198a9f871d8a2fb2567ea4e0567e45ca2f79775e03ee9bbee99bd6cb7ffbf96e05bfcc207c9a71982d7498a332ab09400057f496676df77d5ca93473670ebeacfa8cc4210bdd4fc0346ae81ece99287cfe6eedf7954aff3daf3b7b72727272727272248da491349246d260c06a9f2d655fe90cab7db694d519f6b3a1f895be86e29384c078623d533567bcf52335df478799a9f99ee3309c9aef2e8779310d793b3048799238787823dc010052209162045c19bdd2d28537786aa1a5c2274ff3e4c2235f9163aa690407440fcbe9e0305d6b48a1f0dd1a9dbd0fdb738ad62d14627bad6ab55a6d0b1fcdecd7681b33944a30143e79efe64b386ee170f880bd19372fbb7ca8832440fdfa2a4c43860be018f55d3a6e038140cfdaeefbb85269fbaf550b837054122794fc49917c34ac59943c07704aabff750cac10f575e89796ab141c110371fc326c7f96efd24190922b198604c71176216086005c5a984169e5d75d9fbac51fb77f82d26563c16665450c5c51ab1fd1b307c4f79a06b21644aac207fab741bf475f5008fa1a6d43d05390057dfd62bf0bc5d0732150f8d586b34f64f8e4d7358ce8ed7f16f43c4af77bfb20b00536979b5cc62112bbd2038140ed2d486f08fcac7deaf550af7d4e04ca889e884f894227ecab7cff79cef3623edde7f3f93edff328d5e45cc68101ebba5cc66175e1725af7817ca9f785de8d0a7a0b7e40937d69b26197b25e151ff7e9bb0e04cafb7d1ff801ad36977ca2bde2e779749c8cf91ee47de6071cd16bc3ae4f5c57f089b6b375545ae917d073ddf7dc179a74e0fb7d0e7cbfd014fa1da18a123ed38defed7f21f7e97bfba1dffec70585c0cf7bf63e20f0c7fd803cbaeb71af819cfd4c5a6bc3da750785f7b49d651ce5b8063b8f52afd3b86ccb349b754b274861f8fe9b1e3884f79faef33e9ee77dd7bdd7759e3765e68c99fd8323c5e6047da0549b53d326b8cdb965df6d0268b9167467c8519ca00b97bd1ba0eb5bf8d0e013bfebef0e81d6a8aa6a0f63aa5ffd75d8f750082772f4fb0ba1854ee4a03a5c08fb9a7d0f3f213a34e5706b439b92a62cab73ceb9b29a4478ee9c73ce99553a9a33a0a6699afe39faddbf7df46fe1c7720b6dc743a3b8906e9c63e70cdd7f178a3cc4fe4ddbde7e0ddf6ef49596bb50ec3a50ecef7e82e2d603ff73a0f9ef6e2fd77dada0c8a3c7651edd6ddb281b8afc3df473b8a345fb79198a3f2ed74defe77b60f732ecd177beb6837bbe1c7b3970bf75dded40cffd323f20f7c9e3f740fbf3d6f00ddc713550b4218f1eb7ff07079c87b7c75dd30c6ff4f3b317c336dc11eec3f3e1f9f07ca2f868a17bc77c3ae712aebcf2e228b1732b03184789272e5fbe9c6ceecf8a3d430b54dc223633334f99190e658f92584f121892176c09394f8c459a9f43b9aad1a36e763c4a5c675dd148950fb9bdaa54fc01bc170b806a11badac7699871f8fe9a0d899f9499e99333f1b9b7bb74da730738ac9dd2c8b263f0e3184f5c710587d5c4154b2b25a621e54522631e8261b49047c844c8953206a33d7f38a3677ccbdbef766106b80c5f556160079f38838786b1ee34467b62da962ce80305fae45cc8c316ce709433126d860e34e636b5888f0f9af9e3033ae7a4a53967578186cf0ccc9e71f539e9e73e7de43eab18d2d0d6d9b9c4cc6990df9cccd6dfc7d55220bb33a759504a29a594725de89a789356299bd42c96310df9767377db7d231ea31148cb365abb963d8298ac7377e60884bc1ae268e292dece755276a1a391ed73d26cfa0b87e5b80cd4eecd6ebddcec32905e8e7619382f57bb0c74b0eff4b2fa016d9fec33a735b3aee1c0710697d5b46d034fdabf269f378e52db7d231e238eebb43a3d2b7db6f38088f1a71ea5d4edcb5a7344e00c2eaf86dedcc2c7c5b54fda2f6f87a28f2b434ea27ebaeb30b609e5c1c676a72d03a85f3811bfcbe85243e4305dc7794c83472d23db7da4136f871da3912884e2011133df5aa73ef92a00d421c64fbcee43227940c46c9fa59cfeb35badf541de0e16109fa3a0dff64f01a00e7db2618d2c3e495bf29c1f7a3fdeec17afe3d82be23f7c4e9903474169c2275f253335abd91f6459966535cb6aad21c8ac8d71d750b3318a842138ba699b5684412037e246dc7944b76ee0bb59336afbc06d3ed5efe71bf3669ab68486d22905b3bb695209d94cbf747195cf300d19bad41caf4f70b771983a7a107ea9ae258cc5edafa3bbfaa5f2f4e909fc52fb352ee1225c46098161b2ec08d9ca075fbf1cc69bc05ec5edd775d0fc9cebae16eb57791cc6ab3b4fbf78e64ebbba8461b28a85b744a9a465555ad07a4b3018a64b3752a5f8e467363acccccccccc3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a0cc08299999999b905ad76eb3e1f184e7ff97cf97cf97cf97cf97cf97cf97c99bccf271a9142182f9f2f9f2f9f2f9f2f9f2f9faf9311a9a412c298fef2f9f2f9f2f9f2f9f2f92ab530b90861bc7cbe7cbe7cbe7cbe565cbc08614c7ff97cf97cf97cbdf8f0e5f3e5737b81e1f497cfed15c278c1d0bc1d1ab08494a31f4172fba78b1ec9669679cb6c74a75389db5fa74d3627116d6a9ab7d4e6aa56984da2c59274b3ebbc6507dbb65657e4c8edf7c60fa8489fba050a35911c64bb2a073973fb47328c325150bc258a87ae6a396c355af18933464af1596ddbf44db7da488f9d131b735c2f98b754ed52a9542a55bf603cb156abd56a49573d739f68348af5b4aa6756638eeb051bc7711cc7d56ab55aad1cd66a9b56abd56add74ab8d541a8bc562b1711cc771b55aad56ad56abd56a8546a4d2c92873a44bbe603ce3388ee36ab55aad560e8bc160b09e56f54cafe8388ee338ae56abd56ae530879152447765696c6e64cb87711cc7715c8dabd56ab592392ef9824d1fc7711cc7d56ab55aad541e0cf9c03c9a54b9c44647ad4ea7ff52e9fb248db49137b2d5721cc77174f1b9d819df58caa1a7d37fa9f47dd65a9e2f567ad5170b67acce189db139633e632fba8f159f8d8b78eae668536af394da9cbc4b5d577cf23fcedee70a8d014db8cfce67c7e5324caec658dbb86c26ba880c93ab31d636b4663583ade418fbec7c765c182657e3a4936172c5ddedd2a2cb67a7bbf907734ec94ee4b20fa972ce2927656b3fd00c72d92d8c076194cddc83f0897f7a572673ce29fa8afd6bb45b251ce833d4a97fa698734e677a7df887099e43caa561bba6a44970386cc1dddddd65134873dea024dddddddd9dfa0a369540bad4b3ccdd33b085fa55b88016a62baba44a29f5f93ba7242e4a66783652ae8734c644891cd6a9c9bb8d2b91d9c4421ca3bf20fa698f145f7590f4a36dd0cc663970d8b86c946898dac4cd04beee466b3941727d964472aaea9d9d2449be66c2a44993af61245fb980e3165193334c0349c37c3ba524afe43423e5ce90c2fad4492a911975884b9367525a39910e9d41a8144d190541c9d08c00000000005316002020140c884402711c46324dcdd50e14000a6f9042644a4e9586225914a5380ec218830c4086100000010a3043435305026c01195919559961e84709ae71f207404989004de3f761cfe64843cec11aad3e2add46b09e13cc1b6177fae3c7d5fa8cea620fed500ffff8d7c974be2b6ad83c6746809aa7d70a3c6264ff140154ba663a44a6c7b5d5dfa3b870400a548f8533aa90260a5faab8639208f12754242f3eadc6fcf6547e7c11fb390e33617ecb6cb6999ec97745aeb920b890f85736623b4ae7a9181b8b59c6e879a7431d5057132076906d4b3036182cdd8ec505ab885f389f744d4b43f62f2147cff92ed5c05c053268f1196c4fc37fc48d765b31b0a2da2308b79270d369247c0d68cf97ff37ad36203ddb74a7791dec1a8eae15c4cccbd86f6a1b77f22da643936806e1f18febbbecafb1797a8da5fed9f8d8968b3ab5f25141ff22b9223c0a6106444931120e1ed7a3d5f3dc12bbf19592de97d1a1ff93facc217d16f0ef8dbad1f54a202b93c5273bc8df5cdf29013f64a737901fc3ab31475ba73ec09dd0151426b74a05e0e8551cc03cffbf2570ada71fee9f012c1259fd8385f5ff57221f4b3d4bfe724a28be0b3b248d04ae23c453221154490edf4581f46afecb8b35b05a5d522e2860b1857938f37a11e28fb36f07adb548a0998da104b4865dce8c719dc1b0cc241a2a1d41596202c9a65a3c191810dd979f9a0bd34f215500c9ee763a419735d62a010aafa96ea1ce49b54f976aa11b4f125eaa946bb60fc676181b9b0ebe4168605d60d4b4194b53fed1948802e14d50002514f7295e14331a3b36a552e01ccb128a90507f99aac4468500cecbaca1855dd9fa365391620ac22e221260d958227279969162cdd7f828cfb58f667a5e5141e76e6e44bd6b92affc224f38f4a36d3b5bd3d6c3745300e02e46d16aded3fb1ff08133b85676088d0f9844e46e5f409ab3c92dfa05df49684f6b5989c6c894c2a0814f07311db2489c6ea13507d3d9471fee964e512cb3c7e9bc827f62e3d2b86d16a12fe2786220d905016c306aa4940d328ade316cc05fc37e370a3d7c102b8232afb6d200bfbcc8478125b170f02484354f9af875097272abf2679d604bc161f6afa537a154d806b6e4821a111451132a8b9933b1ba0d29c1da8086618ff201d71479a7e30fb55cd15b00dea0baaf878f2ea98dd1a8a6f3d40cffb0704a50fa078b9105909f426b6e0a9a382a1799c22de112de3fb442c7320fa2ffc166b59632f3e813cda97d649d1c7750935bada07ab9d8cbdcf598529631b555af6029753cb353d80ba288c70be4166f93f2f9aa906603accd263b702c3e0873ad07f7d7a56a85486475ea11ebf24fcf7e904c9d3aa5e5c7045bc0fe99d0f2a8790c2e47a524212af8f00e7e73a8d3bd8c10f865537d521ac3be5bcc1183d2b1561e0b18ba7b84ba7725be669893d5196d0d108bac3e18ba2b0e5028e50d22c017c9e3087ac2186265a6f981efc2425fb41862275f71eaae00f258507ea9bf8827f86812fc74d9592816c2144e9d422cfc5942619127803c67523374c894a6216d048edab0cfe56e00bcafc2b91bcfe1f2a5cb6742c640951e2184e92ca03c6d2dd88ced9c7526a1d9a32a1cf437e585ac9f39e81231d3e31a2958db157eaadcd3477f7ad0ac24a32912bb689c1a10392ca5bef34d85811bb86f75e88e3a41814014b14953fa5f3986c0ef6a8ea4968e67f6bd861d9d8c1b729f0b3663c0e04daa2ba153800cb569da86424bb057c7a76739a153b868aac1989346ecf63aa0abacea75b6ecda71d63c4427b0e1413ed81538a2df69fb6e92cf96d399ba87240ea14fa34358ef66dbe2103c383ca26595a7f7e11d4a7458d2b416cbd6d06a2a2ac1a05f924ad1c8cbf88ce1034d939386c6e4707a8d94d465bc5b33394a0f34504e8c0c7439b6310371c31bf452032b23608f60840e89b84eebd49c82c1589de69f72ced1883f1337370da771826dca3111e39583d56b940e424470fa54cea4d32924c9a10b0aeb52976e27bc59f6c40b2952665eb225ce0c107b2d99fac2184e2da28c9662692e717b390ed08194350357af18ad6d78dfb6246ed8ae977b87c7ab6ebebe5a6f5bb7b72fa3ec6c8d9e0a7f68f361c4e8c9134896fd88bd5a1555ca4d9b11babaf85d3ca6c1134cd02ecb37ec21901e21af03a8734e84051228128b0e91acf25f11c98efe536b062a46cd80243ce18cc209ff6cfe0e2cf0cafb0e15a09153b78358783872b92d0db6d5d20da692a36d4fec52dca4339fda28c6913a3548a8d49fb0d4d4feff1092057109d821d72731116be3719261c6346ea7d86c80e720455f38a5e0acc2a37a5e3394a61b8bc8892bb5a4e09d83c828f8fe1970780064e5d228d2153d456013c17d889d106514427968fb18385761de9b4848baeee496691118d9e2306f820751955bc9587caab796b90d1f4e6721dbca446b845c916fb0bb8a28f90252a679e87bc0e08d06eba0784f38195667c2db8aeaf48e2a370f813a292248194e30d0dcfd018d2cc7ce0c5d179c5706c95cdda04d40dc5ba5391d7e0547cf8511c0165ce2498e1dd8941bd93d2588bfac322765d513a901c9873f8cc5007a12f915faacf20f399fc4d880163a748d9038e362abc338e9e88e2be2ab06606110dc5b0920ad719330eedfc4ae9420b77d4a00e8ba318d3731e104f2d99f6858f870852889a69a22336294554ce447873d98edf374e3fc3029912b690670c1ac006626dc03bb97d7a8955a3bda8792435eb603a067454bcd27e1ef306a6c9ef57a8c19299060fe556c919da83441005026d5abb8f4383846bb31b6eca406fa8c6d56260d3e7dd47c52bffbfeb389258426582b4050034186561a0164f09e26812d999a1d2b958b32bdd7e7e8ea522cee4985c48f16d9c94dca0129800a9df5166a46c19f09c89d64c6e01449a56bd99828ec866356af519fd09d1929685cb4968a13b0b11d02a0c742339c2583d221ca27a691a2d27a0602da4a090559835060f0b44e1cae2057d214a14e0d044193ad175f62aa63e1105ad03c52718a7109f75d600c6586b3d40a0824c91a51fe19484dcb069a8c1d9b37837041e19e127fed40112f543fa7355e6e7e184c28e1645593823aa916a08e014c4e893464d668d00fe2a0b92040e3917d325ed3bbabd7c2e9c81b1db47a2826cbc90b8375b6a6939a70cb822cfd519d541c2a236760ac721479071459085b4d5229ea5a5a0008947bc37182a30f85e5c746d72583057683d3b7d0f0c5bc2870b771005bfa56102284ca08198aa5bc407661c3d58926fc36103f2b26aff3153aa0d66bc387f95d8e39348335af97cd7c91e3134f846dcc6ed3ca3b494aed220351601da5538b195cc0dca379cddcc22ce8e8d66302bb48ea06e623190f8739d0ec82d056707cc5531d766210a80c3ffe797eb92314a62725ac5ffd8a2d8ae4572d80c5a409c8ddb71c886109e0514e3224e49560f0fd2cc7e4788ef6870a6f9942051c241823c784c4311ccaceb269627262bee08c4dfecbec329412009d609fa40ef046c2136d9da0cf6bd9138a32fcff0b9788f5a9d922b0402edc3fcd07373caefe86dfa1e40755e88d2f3664c346237e6bf0f1430e66ba020b8ee49f2ad9a42e1deec5d5964c23d85e297063ed96eb475a54a714a31b715d96e32be97af52fe524fb5b631ef4ebbcf64d090deba3712837184f1c29378ebb0ff18fee91a080b7a0c85842d1aeabfd370a75ec78ef617276c468e6556b980e489855fea488cb64fe9a1486ee9dc1aa69ba3593dca1f6fa28b885d08a8ec9fa5765ccc1b844a0d07d94df4e616c0c1adc3f9e93cac7c6e44887cd7f6216e76d988ec47e3b2af03cc4f62d49be9d68bd138de02c5c7bbe06fe6088f883474b744dc6b03fcf32f1639e882632eef553fc39f390dd7b2dd82355cd344be197c9185ec91f72266f7c851b5c424798a0689046ca3efc0c08924ab232c5280a1f04e52e03b0b4dd66a6981155422109eed0bfed05016d69f03d04b07e19c1a8cf75cee1e2905cc52f839e896bd1203889a81654809ba990e10bbba15c6288f9153297f9b7c90b1d97c7a697cad120b03466e4acdb3836487a5bc18e034a37be4226a0182837fa5e933b1fe3e8c6102dad59c54c0be2d992d1b015786505c4f3d75972951b195808a71780623b230a222723d48ef3d42c00a136108fa7309d0f08789205ec12dc6290cac28c8028635b69b347302b9758a0571c66b89903cb37f710f4461ef886f7aa7ad3d8a0fa730c48fd732cac5eb0c53fa383ea4d6383eacf312ef5fe2dbeaade3436a8fe1cc352efa5e2cf6820f5cfb1aa7a7d9b5f557f8e41a977cdf9371a48fdd7f4aa3d03df5fe2c8eb3653c9fa6ee44072ee8ef86b4d03c0c1c41a739343026ef690e1e638b4bc99c3206e140e88e5c4bc3634a1c2f7808da6fa49f9004ddfc237c51e28de4188dd5fb8f6af5f72a6bb021db7b3e26d65ba2bd0713b2bde56a6bb02487dd34e51956bbd6a231afffaf597dce85660c7d74c7c5b8d6e05767ccdc4b7d5e85690ab8fda37dd564fe0526588ef0062f72f9cfdeb2f99e9aec08eedacf8b698ee0a62f9547bb3db4ab4c46ffffa2567ba2bd0713b2bde56a6bb02a995964ab7956ea960e63b80d8fd0b67fffa4b66ba2bc8b4ab9525b8f9ed5f3f97992b2d04fd9eeab22fd56d2844aaf9ad9ab85af71f88a326be29490bee531bda707d2874fdb43c903b5d25ce04d8aff7190c3861c6e4d64f10ac284cd8bd7840438d873f8ef9a71bd292eb6cc25118a932df2f531e21dd0bf3cbd8e6a42623528d9db16782082ea248c264f338429a25aa4d83f9d951d935b2f3d4b284ca1a6f2ec874cecf149ad1e44cd4092976f841292650206985130e962b8a9e8dde628be801855a3f0ec535490c692db3ae536eafc5fa9a05ce8b3ea255e729c5e67e5cc806b65292857f1d3caf014a5da0f9b86cd97180f77957a313f12d89b69ea6012b41939665d163dc971338ccb747ec9535dd27205364b723c6973d7f347792bb33f18effce7236a8376cc88ad3f99ecabb341f89ea77326336806ef4864ff48769425063a0262b05d9f6c90666f0351517a0803d9b5578913d0b4c81493963891202b38480a347fc3fd77efe9f01a087a4d5f12ef5655bcfe6dd3420fb73fa5085500c7752ce20ee00d841f01b386876bb8e60186fd07ad453b17cd785a9387900cc298c6b6f915168a5ae3c1349404da70c402eeac71e59ce1236edd5f7c2775c29dd01be3a4bc925229afd8729ff3ad09d72f131c804b61e96e176fdc5202154badd846d5ac28a529eed6478c43cf1eacfa217560fb3e261ee73dbbdae769ad28254d9dbbe971ee8d0741f06b8a7404c635fb6b9bbf4e8772d33bdd7cd69fc5fbc4052f0082eb07516b3777570cbe520fe2e2690c24001d97ef2ac8ac8916bd80e8d39ba131129be6d3f773990ff8b09bc3811c02e8a43fe55c952e4496ac301fc2d07cbb749c8f3c350d56175c63009ead850c12befda9b221497d4078df3225ff991c1cb555fe84b7ecc54d784ace619490237aa95ca36e9583362f44585bb3299aaa5f548ca076521b5dbd3147ce67fb340a5f16097edcf450428ba40cbcdbfabc35f7e02daffe844f558ddf19b83579023eac50ab2abef8e42a090a96fd7ba42b2b0a0c385b306433d960d577844a73faac0710f2966261d67a6871b37017d28a80e75e2e8e506756f6a08f182153bdaae5e720f9b259177aa4b7b2293449fdcba43a7ce1dfc811613eadd0a6c47d3e7c0af9c08a951a70bcc842fe224f36feac0eced5a9c7276a03f8b16b0c80be65e71b0b7097b308659972161e4af00575668b62ae9be5aa8f2a6f0cad2611e14497596e4a3c5f1f7ca4542a12e170daeeed9ab31cf3aad7aaf36435079efac384f9bcfe1a102a8f657fd078ed7d868ad17aa32d4228f007aa4509e199045314e3d882da4da7f568a82d4b17754152b5a7df48e7d99d8238f4e9d76a9ba3f8b10588a90a516537b4bd56490fe01006617b4e8f173be1604b5d7cb9e8847b9731daa91dfba1dc77af36679a9a2862e40b859be95103a9b10259c2ad14a45f1bf1feb5ba77192abbdf1d99ce21f6bb1b24d5287e9fea8f1b155caf0f7e2d2dba505fb3cc4273c183f2360a619938775349847b8fc165919495263398fb07935e2838c26af087512d3334c69530ce2c824998aba9f7099718d3e6750035f8514ea9c06092a0c3b59a64c66d69adfadbd32b6fc5ebfaebb71b93a4cf133c000b9fecb366d5d8e7b7fca4d191df483e6d90124d9818ab6d1162db745bed96e8ee8cfe6ee3387b147b6708a394b4500ac970904ec6df7954cdbb9e465db56874685358aab3ae36875d66ff2dd408e665c56379c51a14242aa770de6850ed09ad638c2dc24ea28d83917702339d2b83999e5cdeeded40f994235806c4415406af19752d424b0bfe3d426a3e4fb166ab81b37daa4ad78bc0dac0c77a40743a1370970513906bbb5092a82169c9df57c8b10fd3c91e5a2a15d1efc0d98f2c3fe16c98143eb864567924451ed511e0109cc85c10907e50101f48e05bc8c5b7099ba01c774dd5fdad8242c7c6a1ba476fafc096d9033bd33530a403811d72d982e90e4d7a0679e63b84b0bd491969aaa099c1ee0cd0feda7d3c63589370b9157bc7188dd215b7f382a09d2e49c2f2ab8606d726a9381fe0beebcb80e5bf00081b9e0e3b68d93d0b67beefff6d0d435e15c352e31690b53e1175e381a0553e73f2f28a70a3af50ea85df0bca49dc6b5dd22ad1558590435841a8a305ef12b0e68b1636eebbca677d243cd2bc09682a5007773086b2b72fbd24b314c3b7aa92ef7f00f3ad1980fee3c0c1c02f037f59f4d8e80117d97fc4cc9b8311d1b672f00e59be83fcd89238d0a1d0911d51a49d5aa650564e3c7302749288751724ca7c6109c27fd8f24663682938dd9121791b9303eafd015f955c60da402ed5b6dff9bde19e5f5a715e67aa23781d0a8e8ad0637b856bedcd6d0624e60bc750d87666ab61256298db201fca98bfbabf1887c29814b53d89dc6b74c08dae1f5734fc9167d3e6cecf9b6c1182ed0b176b8ed10f2cd2b5fd8788de4fcb5e8bac6ad60976e99b4629f972a18045c07002e8cb17a16d80152b781c0921f304ab842a2c64c50678052db7ca679d22f4e6690b3068db08fea16a1218895f817a6227c2a65dbf5f8e512e450208b101181ec1979c6e3d9a687f411815347885e4c48c8daf95b1368eb9b254d44b1059c9f1f11a80ee4b8cc65377aa0509350921adc1f35600486a02bc5489a184054f56841db09724bea215ffca7b3f3905b51f923f296c31d7840f077e3fa5a6eb9cb34eb57f3f051f14fe272e003a82d340419a88e0a6d905249c08b42ebe7d5a004eb325f9fa137c315e73b6ec7e4ea16710dd802fc11692d9df93d5e255fd827ec2705f86a5e729a9764b80eefb579f07304c05f8cc89f07e92d8161e67300ec106ace2b7454c905c901b94fdde9c49a248a811df89ccbb9dc6b6f5c0e41c875b184a25dc1e6ac5fac3b5d29c54904b66b379f355dfcd4a7ab0256800110c02534a0f1292f63e9ddfe8ba3190332c06117281034b606dc903f319ecb2144663b0e586a7b0004dad335adc797f9723c0db899d71ffeb57f0824fe1200eec1d91ce269784c89215dc8e2661cc0a329ef78d7700be3366302549fca2dee876e8c522d3192ca0103446668912cf99b2f8dd6aeff394cd3e4349b7c423d6dc6fe879736dec84e86dfc6ed0f3d27b6b0d5684fcfd866c09af81d4324c9b9bc4850095765ba8bc06b3b5170558185ad910281fd16a305f4ff8ef2a9f374b146e3cf8159aee2eb225640294fe126ae56928c00393132254193eb99a0a5a2c3ea714c285a4d9c062d1bb79047d28741d8fb9a59843675c5331377ce0aa656c97e433f54585d4797d42c219c2ce8dba03a91ad3a578f0f2494a7d5e37664b2e160bb562f1a014badfe37308dbd17068a4d28b720921fed3302c3b5b026462fcc1b1c2cb030bacf0a52710453d71f3745ed8f851eec765c2ec0f922242227b27c65390528f8cea3e9752b40cbf81a11f1ea7aadd77a60cd107de8e79d29b1f339ce347557508be52500d9096d0bd9741f8d960a3342ad29d4691f312c92a3cdcbcb74968def623c990001dc292e48bc88ed07624704ba524bd0ccb6281414d20782f205c259e020c2db317b53408a869b1b9070f993baa7173915f43d1152ed3cf1f2920e32f47ce809d3881dc3c0a9f2ca413d99898d8dbb44d47651c4580fa6b13e41b05e209363e09e9c63797850ca0f70ff04e1d4384a47f50bb7186750c9d99d1b475b8a2502067615ed2b31c1ba5431d9044352e15c4afc59cdb0a4e335e044889970425196aa142b76c4b5bed45be3881cbbe5ba2476dc362089ca4dfed172489724e69c4f13ca197f3b155c02158f15b02d828c30287f81d350fff730b0ab27e037395764645262b32864f4d3c9b39a402dad0ac432ddfb5c81776c4f9feac2be1d3026863f9aaf67ae1cd0ff829f18c304dab54c004226fb4bb67ce5870592271fef597def67ea353242eda886ba8a81feef5d27f2b53c739b24024b2e35711940c451f886aa44daa870d3c2d985d831cf22e34af8cc389f568492c960b11d9cc7c27cfe8d3168c83d36edb9e052e43867036cd71195b44eb604d169d1ab088c5e0bb76eef7343fe259817c7b6819df5404f6146af4c29e081cb0a47e2e56cd9e84cdc2195643764a97329028ddac4445670929ddb6790f66b62ea74778b5a6a288a6fcc53203c862efe733020eb35a0d1cfd2041a951aeb61640b9ca93605c9d470f9e754fd31e064ea818ccadf5e7bcf9d613966b0912af048ab3c59be5cc586ad04dcec168e18a1673b793edf06379e31fe405f26c0458ffed5a6b23301aa9250760ef18a1c169c51f495769569338abb50400a770cd3e23f05d6e3ae5078c405ffda59ca079d3a82683244aaaee0c043e7ea3971919640b50b3be3aee0ec1845d9492d05382c03c8be21a86a5b1fb8b1f0290c87c1188217ed920e70a531453df9a87bdbc1995fafb6d1b37ab6f6835116871dc1c0a397b419b53ca5d9f358211e529e0fbc99a5939b6a09ca0a0b364d0794cdc6039e9deb4d2f303d27b9b86cd33a02c1603b5bb678cb7a8f48bccb6547a47dcab25b543c65bd4724dee5b223d23e65d90dd17be6842d2444c5d1c1adedb8702d6ed1fc1ab8f1776906e16bee3a4ef0fa4a6dce067e656d4e037e6d2d27037fb5266703bfb236a701bfb6969381bf5a93b3815f599bd3805f5bcbc9c05fadf99c24083ebc9f3f787d3262fcc0e62113c0aed1dafe4f1d8c5bbab35d5dfa6586792e42c07f225e6dfcadfa0156e9a5aec8532be36d27837c60a9327e5ab38384b997bc49bdb2da4c24706afb73ea69abfa0ed4e6acb3d2992189f9493e6ba1baf2511257b914ed345637773b739808d4ea27f1be1752e85999b8158f2009fd61ef5a5b8fa803f30dd0c9dd050f23ec5481c58c126103d846cf86f254ea55365a92ccea1dae37e22ba10bb501d023eb119b0ff68319c47d1c1a5e0f40d3bd39b0db3b07f30118bd6a14c23d969bce7fd7b5a7d66bf4ebdf246fc0a25ff00216259220cdef5a9f594abe06d4b3a09cb28f8b7431a5e596fb4e76b34e398b02c651247d72599ba593c5b73da0371148a399bdaa45bb732fa81225747290136ac0bdf16ebbbea92f801d10d81f8a75a02494df4954dd044cf98cf8643509857fd4036931d60df9db0362009eeaaeffc340cf9010982286ef68624fe7af2810d3834561462ed3abfaae561fd2e941f0a0d23aeefc8ab91037890ebd31b1f9232fa3c9abf8774e14b2024f25cc42ff11c9821dd69142c0044172e8ddd2219a9411b1e44f11bbded6961f1d27fae4ee41b8128299a3415176a22872360502aaba97e84f98b6d079fb93772b688abee248ea5d008fd85dd7160428113d0d70600fb7e04b1b220a784f921862f90c53bdf632376b1d97afdf21701ab8c7874d5a037aeff774a347c186d90ffe04109ff855ead33fd16446e2a81dc0841563ad6e38dd7feb970a2ed8668162104dc531246df1a231b30d2033dbb44b15b6d2f080b3d06b44e86bfe0ec7ecb6fcb412578ad023cc7935e7cc3997eef1ba675de64aef9c1f7cd663a3626eaa40ed91ec925e3664fae5c81451fc16d46553c2401ef597d3df8de82525bfadd8a701b852433dd6e739ff50767d08c93d842c0fa13bf499fb9f9ea86787083b2cbcc280061b45e90987e1423b50a7cd425fde23fb46ac3dc3d455400877fe9ead3c442ec85dd453147f6f9a61d3c0e280cd30178f05ea118b2504babf0a9d5e0ef9a8ae35bbe20d4244d01935a0cd4af4adf4e5f33bfb5a54a5c27335eb2a764d67c8262b05c2a0feacec78fd058374f8405723aaae37418f602060a2e3c96b5e694bd6c5694c6478b18221bfd40fc6d6f3747b5c074ea370966bbf82e0faf23e44dfb0f67f72a38e1cf1df4fd4808f5d7815a823f8e794eeb89713f90655f0ee0391f89d85ae20d235ecafccaf37ee14dc41a5d88433d8264cfa79c0c379844e78a690919490314db61c61bf602d64d8d6dcd5593d9bdbf950f338dc425b4a370617e682c5e65c69c8a62a64b6e0a71e950b418f79371f1d3e6e9f08811db52036757f6ded44909c2b18d91676595127fc4a2504b00b30981fe52690127301c67e6180697b5dbb018c74ff320a62038d50de8f019c1fb0b80c2229e0538c6df69211341cf2f68ea2d1b50a2a696500ee6967161382c6015db75e92f64c4c1d1bb0a6eeba6937dd7a0b962ea78f282fa19bc2125e024d5320a9bc52c23fcef74a4fba2262438925275c7a0fc894071c136d0670d6fffbb58e39ec688c89ea784b12382272c4f686451c2faf70e09a689285b253c78117279c7b3d2186afe77c4b70deaa51b3b67860bf1a4fabcd2b040fcdd84580030b056a365f5656f6099f8f7b141db2e8584f28d034b33f7a8b8a90a1010c46f89d764f8bcd07fe6916fbddf424a7206e617d9e2f1d8434040e0810f6543de2d62c861be8143999aad396b98bdda82249943bc44f6ef2fb17d1d070035168b2167cd273aa93659e4fee66e5eb456f12d4727333347523c3c2030aed53993e90a5f01be837cd66bdccf145b4caeecb9d43f06c14cbdbbb6666cfc78c2edb81f745619e1141d79fd75d4e9d6f5d3b463815f9d537a3411fe0bd2a55b75ea64b68075d1687772889a129ba6e7317435eabaf515dce035037920a40beec0b0096b0833f70a319285f4a7db4735920d6f6bbff97510eea0d3f19582ac163484d6434ee8e750f9430f04ab4b728ab9f9b13b4f8df3658219409141f0401d130045d6c4d35528f0068d6cb592f81a3302683ab709e6e7954e35a59990b7cb66f07162d1cd08a3d9e58e0f00f2a0f88ae0ff7e137a4549535da60d293aaef99173e3e4aab16c5c60cf2d38494a48aa3e50250e7792ee13218e8649f92c61cb37047460ce42c8511e1a5601f3136f725546bee6795fa0a792aebe24aad0b508ea5307285e646e6d6b7a3c19cb73dfd0857195108fc0a920685b78af9c81e7b0a14c4d360740afa578274c956aeec89bb758d9fdfe8c0e1f98caa664dca689cf9de60a055b1ae36e8334f73203a36fcfe5104f7598da2c7de99e9f1716877886eb8bdafcc40f9fc0b411ae15693c0b5cf8f1f2639f43868e1946385622edf73db7016275c90feeb4a6e4dc1440cf5addfcde6411b3a6e3a0119533962837e6548bebb9aa1c74efee1b5182b6972d990dd6331c1fc2ba9da97a5607209919c4acde36b1a28e993e01555ee58eb8dc0de8666d1473c7cf6cdf2efad194bfc78bc762208164ff625563cca94653ab65fa839116059565618a0627a3ad2751c44f44973296543b4f8cc2418bfbcc7017ad67c02e5e657e6c3d3900a73841432cacf0a19ad29e40b166c1bf8ab733eb6940cda6605a40880be3d84000e4336d886162474f365a2df21418f6aea1c9fbb4f162a19b9fdf3edf2e0d9d3b56e55a68379a5dd2dd3fcfee993d1f78b571c80135c906f320cb1ab198a410d69611423f64efcf86aa01149d05c1e60e91543d2278a852e2345cfb60d0b66b3f91dc0ea8a21ab6a1ac631230db9bad26800e52254234326b03df695d9149380c5311364d1e57b3faa70c0698e240e2c3252725578774fa13aa58ae54a3bbef83e68a58e20977a022eb112c17a5fe7286059708effe21368cd82e324901487cc393f3d008509dcdabf22a41ac171867c06b603bb03fd190919d993845f6991af73e3a8b3106aaec29a055d0c4505d2c27eb91d25b51be82534da7ddc47e88f06fc8933a562a505ca318c72d55e4149f48c8f848280a9d4385518d69fb3c5d9fdccde64dea1ee350cd2f95499448e09adc490698fa839218b669783942f2684201a141e9839ff2c1711b24a1a5b2de6599981005cc8a98372ab12b588b19d8e8e8cfe0abf0bc65f56a19127b104dd64c76050bd37a43ed11cc82d2547af15c0c9c9036155f760e56992c741e64ffd70dc3c17c7784261d49091e8a85dcaf7df1d9008997edbb1093db845bf3f99b7d16afe3a76f09933b21d80c89db4c6938d18f923d4d40bef892e7680f5d1de31cd0be42f1887283646d9b469527513f56a02010ec3ba6a66149367819e73cb31448829cc8d074a2812083c249d9674a09e68ed337e8e8b5c6ea413c7a4b0286b20205f7548aa6324dc1ece92a7eeb1142a28ed491b505e567c94b537e1412f5a8f599eb2100d0f071cd13360269bf523099ef7cbfd66c03ee91c3149126b23b9ef35a5cb263175b0f59ab57ac7d822d543d3195d7ded9028eec0a0898a70f21086c7ff840945470a222f0d34719b96a43e2f90ce58c10f853048bb55e45756ab42223bdf0f8c04ee999bf37cc842bb841f57875a409e141efe9199f0e3780063c920812b8645ecb9c2a747de5e27e5efcb50ad4b08f5d636dac62d812989800ea2dc5591ba3ea5474e51f224b995435dc5c72f0942ee8690bee289c52835f1f37b96afe75e91b631e256e3147eb55a63c9b481dce04d0b65f55264f7e4356e94ce9444c3c6852211b43e2e87431490ca8c93fb6621357cd3f2536305268a98b0fc72a218f578e800d780316e09c72dca6f9ff5b0b8ffcff82b27abccdd671bd78afacc1d084dd3d22e10ebd24475dee47c4e5f0662ebf0a05846a380568db85c71956724a6fb6b32bd451215aaa99e6c3b85b5f191a759074e80eaad35a0f44de0056fde685008427bcd7bbf1aecc82d96445cd3dfc9e9880cf49f2bb3d74d6143c6bd0ad20f16e6b6cca0cbc586de7a0f515bff76e0b1801f1322db63bef45623b14fbe7989d785163e0204dda990803273b91bb79d71dfe7d28a4624888aef89d92b4e66ba74c1264b978cfedea91470704306389eedea42993cc17a33e15828bc1398b36a3017b8dcd5dc41c0721c6f018e68736ffe7cc231768879abf0af0422819fd131f407e229eabfc40d746a8c1f8e807cbf51ed112ae9d91be6387e2dcaace980c859eb034b503eadd15593f75061d96e4067d05a23e7a771c3b6421f4df3c23c40dd0b4f44ca2c83fae0f7a6c4f0946115e495f6496a2f100f5a80efc340ee745652ae21cb8e6a3698eff33dfc1e50585c646de4bfaf1dbc9f0f72116bac2fbc54c817fa972755d151d72dbb4ca3e09c999799504c22754a582b990c2a215382992313c58532de3a05df30c95c8d790e3bb40f4681dee7d4da11dfb9a1b2c15de08ec3bec41633ccbdfca4e96366af7b86c52f14d2f35e4312670b65ccf43a0ab965c777ce179fe882fab944750826067d3ac0301a3edcf24963e2b1a9b201a8d658529c91bdf851c0279dc6be62ebba9d490d1f7a332bfb24466cadf315471b9bcf5f2c25afa784da911ca8dc166382c4d691caaac67df401b1bf40e81b1cda03868a01578db045346da264bd75580a5f80a6541fd1958b6ed0e6938ca5a4d92c01ddb1b8b0df18a709b5a6a45eca3c348f228f880e16e63cac90d6c94002fc62d509093fdca8523e543240bbf0e5e9ba39f3ece72db8ca16f9329bd49886c518c485efb11689007100bbe040832ab16844953c0f860146ebc015fa50e2de4c35a2c52fd27229cf617cde79c563c96361ba966ab0d956de16c05763e6199fc9f0bf587ba690695a1a178c8108aca146267010263033b427e499ff3e9717d7f2c347f140fc74eaad9c4d975cedf6bd89f977ca06d86dffbf5de2ad9cef4d83b7e568eba76794cc2b7007b12fca3b7ee30c6b11122ff910c225f77262a1a4e20d90c265fe0a3dc5566846dae60cd931d419928f384b5848add7d039e174c6b3ee2b2f85f19718e121a7d556702fae9b0557aabfc4337c2a0a78e428cea813669213f4e771338225f1d0aa920f757ce5d073644ea331545e0034e80a8ac6053ba0f8121f393126131b3be189c7132d4b58f4f585dead605c866b54e47f051f5ab5263f4d1c4a9a3e9cfaa9062900329ed432d39c3f4b7ffe289918a4bfd27e5a42cdf270d2d0e5ec8e5509e38a076fd25eda8395e3dbfb4d633908ef003493c444535861c04931f4dc0cda9b93a39428a167cc7426c813e608d41f7ac21b0f09d2682a486ec639e7d2a37f2d0148b7da8f96567602406ad239f0c0c58bc4832b5a53438903940f1e80ee69acc9c98fcfc4119cfc981f2a08d2c7f511875c60bcddd11e8348050b49e0fa73dbced64dc4d069853af0b04b53eb93a2540d33509d6b37f3da800a756602ad7278d8c2eafd059c8fdeb5d8bae4b3e2c4590a05c5d766cc1bba5ac4d4293f50a2105ea344ae0dfefcc606fbbd64b57c4585376680009a637ecdc13d902889041cf6c6c58c0707c4eb6ba886eb23d58068ed8266622b0ba43e0fdff969582b0668ce4af471ff1bcaf5528470a73bdb1a50d892ded893faeca780b08654927a31e3f745170bda17f941e4846e9449c25144a4fbfdde460ca9f3065941e728b75cc695c7dfdafe01045e8d4868f0d63f0abf44d74d706e4f6308089ae4b321d2422212a18dd7818e907193b1aa31442a1f2c3b9b73ab8a84c79b94d1d3b7244d173b8c72aa31d6d50c3726ecc5310b12a42a7063600f3282d1838c9e3b2f89fee8b92d7528ff81fb70528f84e738d21480eaf8ff2f752e04dde2176df22512e5ef8d8d5efa1cf846f7eb6b7d2e016a0cd84e17782614eae4db1fc331681e6207854f65991f590473cdfe7bbc20046141af07ed438c7dfb5c506c89a4cd4bdb0d05c6bcdb16c353a8127f05e705dd530353d2ca776d781352b01a2e66693ee41e02c70b3f6545af86bc8b4a5f3218ca65e2ae1d6d1c4d37d12d0c791ac957a4a346aeca72429d39ac238582a41c520c79b78011854e5d4c681d2cef3c52fb7a29fa222553f9ffa96166ce0ab100881541791540210493a55f410b9b894ea2b500d6a384e046a8ba76843db48a1aff2e4b2b395a3d5c97526b433de4ffe6304b8104d84ada531a92d29411b1d83d8f7d07f22a32a4089acb9704045ae8723664a2f649acf26dfe52d0ecb9912b00615b7d7f83b313a6e5e0389759b57f63a88a66ea7e0dbdccb93c2ebef93062f5475c710ddd520d1ec375534696a266d425b2a483580f472461a1360c37e49a04e3b22bc7b8623eebff0412951b81103d236a62c6e8a57dfe1924c9eab934c5c7255a582f4baa293b92d2b14238a2cbf8ae7a42cf9ef8dc8b857a9d8a41a14d72eaf2ca5fd073824fc73136d6c79633bda08d957b2e1a73b196c41882ff1bd32c3c80a5b922571eb0555c680f898b729d79df1506178099daff04a0e21afb81eb3f62a912c33b83998da82dc6cfbf318a935db4325e1267e41f420e6f6fb2d7c37a6f6cdc62248f4549304d9a4de9da40dc0866225f95cc2b2e2188f9c559ab1c8e1307a12ea52f0fb3f202de141564c0e4384134c91510bf995ad0e7d6ed5d735de66c689c944d70c2caa5fc71832822529e2c6cf5c509f31093b7b68bdc0f0eb7483f786bddaf93a6e12331f3a782d4bf9b43ab9ed5063e62783063b59a02064d6446bb16db7866a8ff82e2fa8c142843bab3ce37f30aa5105cdf635ff551961d3d98370b487f3379a824be791d2354fb9a324d46a316d27102cceb966a4d30579e9bab91600e0a1709a13b2b93c3c0663d030820d0ee420d01d204ed221066a794ae82b6005162424ceff24483704a0e31146cca5c86340f10e4d7b2ed6219b8832b964ba4e61f2f20d90f068f0a3c8bb5c0eb390a0d46b2fe52439da116dd806e4228a7a23cc6204f263a3dc9931dc95b0af506250e70f44b4f970232c101af2c3a8a5a96575480dc9e2af49558e057a2904af23d281285f95a7c096b1341ca0edeb10ded2bae1c7e91716d44cbd1da31adce1983f71f9274b02990d93744487fb7753618f700b0a6227ba51d9b89632045caaae71ceb5c0f2b5d9979bfe9f9c70d0ceee6860cf14064bc60b05989e51a1ca9ac498d6dd7f614dc94805dd1dc0b09859271f9e1d14deb93e2f85fa05d1ff0789af7a8fdb669051437fd040a60f74183b0283735422d2813341112fc1e341758366a55cb821d62c63aaeaeab0fcc6af69ec72f9c49497941b4c754456d3545c70b071671d8efe80a05e74e583e7240206c2765349f1e3fbefd05fc78ee841b6fe96c99d763bd1d8be8bec6b79732e825fb4314bceff94a2368135fad6cafe7ecc5eb449a638bcd1959472ba2d3ac7a2134d59fbf41df8c390c0c5809188acf1e9a69ee6869e64fc34965d9aae215bb73ee806c616a64615567cd3448125d1a49869995d37e89d2b30aa83db42d22aac58e40125531ceefe2f0570cfc261d6794f7eaeabd4937ddce7610f1b87f10ffebda3a42e4144e2ccc0205926e23f17b0c9c1ce6ba00cc77e16d12762f62231d6f6977d788133c10c7d94261f5ee6a441600c1e9a9c2f8294b9e09f6c4ff938aef0bd4089eb780ebde6dac6b5ab1ea052d3774caa41244b17a8db5c4c112e6c81e5bfa237a427e7559cafa87f67b3dfb2029fc94f2ddeb6e0bb3fd4d3989f01c790771593b2df2b2bc51e780a1f91b4f4f1d335ec588eddecc0cfcf5fdecc600c13c8f9054f10f8b0e2e4de8aadb6c8154f076d0f0a3b73b8739e0d3e090539e5eba14e6e9afc6161d20f11b1b8f4202aac3d2a3bc69fbfeff99b0a649795e37064984e246fc333fd6a80dd84c0504d6a1a9770a25167c78a7c278f3c8845180bd2f8bb3e2ade6d72dbc30b4d7aabc580bfd0cf450404932c1ba26d535b16eed5a429885f9a758f6638cc7554394685e1aff538a6445d3ac17f9f9cc205d6bc3cf6029a56ee16d470253d9d17481ccaf3f9f4e55a11aaf5d62c15a07a72cfaef5be53592c8a05602334e6cf081b89a8318ead25076c3fc8a52b0cd9ad3abd579e73391570d6a5e93590ba9abf897b57e6e8023357ab24031b7cecaee9cc96656df2f7ae6999bf6a687417cf7844b0bdde1b301d71bb32ce6b942c04fc023db7cc7c826988979ecf25eab2f14640f218d0f96fa29dc7c71c8bcd4395b8283f1255270051a1968e4458ae04d0acd2789aa8d2002fdbde57f609f7aaa7087c401df80c58cde09a7ae8a615ca87c3bec10c96e1b950e0b44e4b56bac859146f00dfac3f4c81e12fae41014579e82a83feddc267f8d773accf00a8e09019d29de1f3cf0cd8a59ddadfb7fca97c37ddd7190ff27468d06e860aba1e11e6bde4131ae98f8304be9c4325119af9ffa69d8ff4e9bc2b476694a41eb2d4c98281025b6af59f8c2bf325a4b5c8f2080edccfcd1e6a2ad740ec7dc38816a2bc7d9978ea43462803f3092461f08eed08618f9fa051196e490b7ed20ec6d7b32dd4e92831368e22c54d988e6cd220c01a478f4714888e4590e1d43243ea3bc870c985331baabd189cbf1009b8cbebc371a64cc71d90cd323f6b6e342051a9eebb63ab49b589a6cae91217122efd128ad7dfbdc911c34ef583378190ca4c5e80e22f8e07e58d49bfacde71e1322069ef7b8b92f1740fa9c244f3721ea5063f81576484726ac0e69c5a17c80c3c0beb631727252b0ffa1d52d8836a2fc8be88146d3c277aab21a66664c5c0ca70a34df488746bf22d1dd27a27895f6bd41f4afd87d3a10e5989d5e8f79cda8b28a132a6cf68b47a1a34186856707327b3272decca0efe8e8cbf3489ed77389a37f568612d3349ca4c4b2b9bda480474a6ff9262fd499fe29785d5b94781a736cfcdbf4320ebb0ff16ca8adc9bee49450d0e9ab88f50da6ed5580bfbd5ae53e657fa510a69766090216372a6ebaa296860e9731b60da52416c27d4167e1e3504aa9879bb340fae2a55ea558e32a2e5cc8ece2ab320bb22a7e2d8587db50ccdf3e018da476c1dfe2a198a77f79e9c6bb2b15c48b6b97f220638e35952644a41cb1a9f07b41e61ee9ead523569a2c8e20a93149e3a7b9053fa362bbcaac07dccb39e77c0466f189c1ba9e327aa4d9e45101f8f2d21df8af90becdd36d84ea2656aaecec3e092018ff1637ca766ba93040f9ee1392cf3ecc3b9137215b5f4722bd03812434c4abb560ab49417f6e97d31ee022d2bf8810690322adc3a9b6e2cf936255fb38312ac09f577e7a5d9418413668132a9c1a5a403c8a1393282181da44f3f322230a65cefe8a6eea532c97e04f7f85fe3ce4509a604c6cc29378d0690630df6c8c9f3252f917a7f2897fe2da0f93cbbba92486c5d07d8bf904814cb6f69337c8f87654898caa396d71921e52e8762ee8155c26783bbfc5551f48f5f00e477ea30ea4b5833c1c1a3102e56c5a1e7732f5a8ca006e5a5917ab64899240dd884fb5c3f2b40f96c1f7ac0904dc8dc622622d18fc3c97f3f18920be150d55364976a52288b15431a20af10d57dc10181d1350920abd66d736a263c2d18b47cb363eb49de13203d3eea550ed0c34b307d43c1836e44c9cfb871c3aec673671e67c1c7c70ad54bf5042530f0fed6f9edde5bd31bce86cdc6b6b3a2556b5bca6726732ed7ef77d448ca8b1632ae5209d88c46c32174fd368b3ba991eca18a245486c0d7980ab590f80aebce76f1972746a4aa01f457059aceae19d50a8259b61f51ed0cac10709e3c45873941200aabb2020637cccf0722bc5242c8aa5e8ee7992b2e3be26a3e2fea60b34222855c76626a2eb00ce65a9f14dd62283fd462b405b2cdc4761c4c8c6581f6de9716208f5b05328505917ca06ec8e6dc8303bd9bea6d7867655c19f9a209e2b36fe9634f3466e26688cf5e891541f14d246b8e202e1237ddf411aeb7158fe436a1ad648b4d28d071debd9221d301560966d0cb245e8c02897c2b6723f96bda4e61a66cd0b200fac10718b15e8091c3d3cd4892c168c64c729ee8c01565f0734b70a1cc3cf876f46c7c2ba58c63324e72f3105fc86b35e625a1cb0b6ce5a36339684ace25a60ab6c754a81715c97fee6ee17e0971afa8c45eb816bbfc1d2f5fc9ae9e16353970bd1ef0f1c3dc90a5528066338a0f6965bf1cfc17bbf19c8310326f9b9d4365d283bb791f7d760dbeeae2a0fb5df461f30e4b5830383d489e54aacdeca13e7d40bafb82e280706a50af7a1b9a207ce911f6a39a0dd00dd96d943c2403d2e93e66c76077c416459766343d2bf413175afc9278d113bfecac86c2c2b2c5d43067dacd05e4b8a6527e0c356a09ed254c9e00b6564cd8951b7ff7e2960216b504d43f0c4503fc50459d85db13463fffd52997e13694c2e7d05e25098c390d870f7ce216d587bf2338da03f7f955541650ce08e2f420287926f19231a789182f53e3e8b15407fa2a40b1e54652baf3ef199a6b09203e5aa5041bc78a263f980c35c6815155617d7256e9ee68f69de02c7f3d4d896d0cb9ffa7f134a63430cfe2d6d57f79f4999f0885589a8271cb495208ca2f6844af4c68881b57a42b13007591e1f2b94b6f32c7afd2f50b2b32b444e8e64bf5f7652fa1e0ed3d6201fa99d36a488f38c40af301f8363144001b11a1f548a3ed02d47282a5e538c0c3bdad8f6c05eb464a8bcbcb789a033b01394f7147e03911ad0f3d66d00b449de9d92c060bc8305a3a19f3d48bc25a9f45e0e44cee4af912c79d9469139428bbd14b78f35c62a1905992631b9a20e0dc0a2b32f53b341d79252cab7e9b412a33bc8280f1420cfa2a28fe6fc3f98e5cf8f1e6569b188cbf74327f059649719d55c67d52739bd09a9df853c80828e001b12f40b4ced67d53029d25f1ab7d6be59b1b0f945b9e86b30bc5277d34b71a30d59003617da7e84199c005e2b5a550a66b4a9d141dbc3f5a351ce2377ef14fbf7f57bb071180be902c567cd1fc7472bfe5038e32c0f02db6547989992e1c9790210b29d9659ece97cf542c80cabfa437abd595255a8d22fa5628b37e93b028d80b1a61068e36478728b4b1903304a36828522ed850909694ebda21a79797acffb6f7acbdb6f7befa17ffad2937efad293fe493fd9a49fbef4a433d24f36e9a72f3d13fbfbdef36ea2ef3defa3f8d2866a94a81665a1089db990891596669e789bb4947d7594f16884649e97edd73f77afbff95efbf3ddfae7ee35fc41992fabd2f7e6fe8ebb9bfbefeeefbabfbbf7eeff62754efadedddf757f77efddfd5df777df1f31f1b6f1cf77dddfdd7b777fd7ff115bddc73f7b777fd7fdddf7471cdd1bff7cd7fdddf747084b7b777fd7ff119ed6e3bf5ff358998baa9a62c0b12d6fbed3736fc420cbd5abdfc2856194f885aabd8795f96fbed7fe7cb7feb97bfdcd77586df60dfe603496076e8ec4326fc093f11003c0beea8d40bdd05f4dfb00bdf5fe37c9fbf1f55bbaa43d62ac31e3e68174baf9bfb58a96bb2d6440bc9eeb22f88fdb7b99d2a27439a77d063d5d1c346153251a28850000736545b9fa676f747b9749d2049bd6e0677c534832737dd3bf565fe8b301b447a25fe0ff96c4f71d1f97138172c4d9be28001ff257104aed1dfa5cb4966f382d980323fc57ba62122d75a64500334a51e5ccae2faabd6ade7fbb73c08415285ad2262d705638a9ccd096cbe655e2c2501e37c5361fb79eb30008877c08d4f825d71ac74fafce8269c3b48f16a7df4e4e803bb946ff66ed8f41f6a56374dc1505db52a0cf86632e3ba119081001ac8ab8ce3cbcf911ad60919dcbf8239b821f6016feac7471a7996469cc497cda050784167e53e30f4041fb2f3459f02a6863a9bbea1fb25b4f43924931f9a9c3c9b3f08b20d4dfcba3a8b98e4ed0afee2ebcb71a9dc49f7152db81ae96367fe3b7e0de180382d3052faacdcb1763641e4950b0ae1c2a8282a4cab936f69e6a2c483c8e810d256cfb545fc205eb225ca23f4ba1f88aad5008a4d74c218612630ccd0c3be004b94b37e2d33028abce10b932deaec78a5b352c98b1d70839210285b546204b328a746090c7519418b8cbda8f545228e55e69f708de328101876af1e58b01fc2d37a3d42228478f6b901eb714d9b8745730dd40d6bcb7ec1b149e134f30b2c4f63d0c6b98dcfa24ad9bc9581f000ad697b2e57f197db83c5992078c8604a3faa4f47068e4731db68855f06e1dd6c857412b029c2a4e61d63dfd38865ff60a593290c634b78e0351f8204b6cad7fc93219f928c38b820679654a4c700982a4b254f8965090e2412e0f760181ff8791acb8e910b10c3aa593aae850d69e6af63eaecf39505d6322b06edc4efcc90ac87b153a1c9532ea209d3bd5c7d872c8bd1a1a877231bb3471dfbfe72ab7d0b7a51edfd73ecdfb82b5cfe8d7b39e77602f578da89af62a85475c10efe691505b35aeb20bc7f39909f1860cd455ecacf33cd534bc1569281c548fae827da2e4364b68d925e26dbb5bede38fe67ace68704849087ca6cd2e1d9fc7fbfaec6fceb210ecd0913052d6edb8998109e5528fda846e586b759eb1b2b0316fc18510b7ec3206f58420c035f4933362e4b490d3fb3070fa787f606418c9f72fb3d86c967f40423216ae17c93b6183318b22edfd4100512b4ef5a19e403bb6956e129122af8405cb2aa07236593280f001a203602e150e013374dd6060da4216ff6916de2319037c111545401c7431fb6dfe0536c561c2119643d881263b9053a76965b976d9237f7e54f37b43b12ebdd516404e48aafef4abf4c4498e5aad43488b315c3674e069466f5a3b42c5ea528de3610159b1d909b21288fdff01cc178601f10f4e76d6db48d75b489b25d6db24ae36c57ec509cb3dcbe2efa9517b4d2120521619ee78436cb3a370a281cb0fb5700cc940d3590adc175f742845d9381a63aba8fa7de60a284bf6a48ea238d98e3c69a34a8629aa6d1c61e1d80476ceb5df4ffa397cd1d9a9229babe1a10232fe42cf20c4805076de05098e3ccd62a5b252a36a91fd1b8c5e8a1854a6dbcf21cc8fac4951424731becb46e0bba7b3d99dd92c97bbe44bd1d86d5c0b63519c847926d1bbe4c9b13eabb3cbd40d662b19e88ea042c2d26dfabfa7b32acdead37f03c5d20793852af0f001932f12a46d65e3197cf4cabb441163f0294dea4cdc00e40889967cf125f857659f2db4c65a9c62ae72f334dd2fb40ce9211b9b25a104ab08322fc206812f90ff3dd00dd7bb1e86268be153fd508e0f6cd2e6948f91ed85ef1cfc6f37b1ebe4a0910dc7961430ff15f1aea03c2c01c1d1af2b3036127ddcbf3b156828938d98866b2f2ab0e49a4ae1424f757a052fe7e110391e98592df2639dde9a65191fc204d72a2968a600ce6f17c07732d8da3e220b737cb331fa928e9bfd7f0b44c6683895e3f8d9c99f8c64b9169ac64feceb13e89d91d6a13b2fff7eed03ba8ea43fa77b906d6d1f53dfecd46a16992cef560b4fe53c899adacfec4158df1488f6c0f4e32aff95c7682e5bbd79dc0468d6bc14d3575f4c6665ae5331d1388d4a9d4872f09251b32c1f204f543b176f262074767c2d7b0ccc18794d90b566b5bc0c4a87e30f6baf921c7b32cb299b61711e279fce0c99d4f95bf616c924b52c19a9cba183fdb061872d1a34bc03a0a49e0b6f6850ad6133ec53fcd39f93c086a4fc5389bab232c605993e6326c4a404988eb3dcf1d708a107c3ea5e619a2ade30d1c565a8c13cdd3f941dbb8d0f3c6b14826b82801d0fbe5222fc1151a473c306ac79d340508583f4511ff591f42c7eb3d79f04889b890978f23ea06cde90ce4960824e4a15290764cc8683d82cbc599015249402089b12de0623ad78816c5d512a08cb4d3130e6c016453e590258ce58a182b15764e5538ee7d2570785a2db2abaf7061ae44c656087f64d7634a93006b81865836bfb5e5d34027e878ed4ebaf5b893208c8a078084b0f24d5ee901896bd66114698871035928904547418074d5c1d9ab8559445f336bb361a12058592baf1841a2f3010ff80b528e46b6fe4c9207739e4a35255f962c39a5a035f9935f0d4a44cee1d880c17b1aa36648a23db2321820f38a985e069140165b4d22b527d7b729c9dfbb7b5b97cddfbc8163178abbbf5539229ffdbf21c820af1d96f1442240998fe6d4f384df7b0e825047d3a2dfcdb66ec87a684e258432309bfd18f50423545966d924449bac371d386cfe76037202082f6153a0cb67ac2bd4f04fabf99bb9955176a1e6bade866d24b4a66f23e65ced0620e9ccf5aae20a8e20d44197b33f143b68b00603807cf57eba867ac755c8f90bf30e2eb972de76f46fd2651434a8cf844ae7d176aaaa5216c9352280d7868d5389abf2870d64e2597633fc2d7dbb10096af88230ffcd8edb1deae88eeaf83d13d5d50ec92c8965bc012b835db054fc044b5ba50ad0309386d6a00f7ea37819ba2ef9d9b3eeece0e4f0e422f83514086cd6e4a9495a4686b7563c7a054b9026d86fb79d32525b7691647993b43f115c93209865819adc82872231cf642b40c10e35944f86917904ac087be508d4fb9a2ddffc49ac9d680d4519ba85c1ce1ede9951a6b30736026582d81ab3d4ca202c0357c6c06714bfc26990a5956c15f2f7cb43dda006e8d2256c9944dd812f40d86381b5e88c97c428c4f7b136e82bf0e4203c7291a0c43280668d0a3511a775d17d9975e5a17416d5e86e3b6c19304791a5f8569640be301d0052bef00985d11631a4cb61d1a0c82aceb81bd29f098e2769d24b2c292f4c41ef6395fce36ca6c1062efcea620ab35d244300de413d8b9f440a196eb67213672daa615bc5dc4e3417f26cfb27ac93ce95eb76de59a7103ab38bf84179362680cdaccad809afad0a5e4b70da395b63dce92902a37f5e1e36109410807cccf4519eedc9cadb619ec0a6f09925da12f31e7b4ba66fa55a7f897108c2d9bc3a56e6cbb7d6f04c34ae0528d64639dc53abb84c040aceab9e4c8038adaea92592090c24a0779fababe6e74357a341e0581fe5c410d7a74acf0faf575f43009f8c2b2cc5b726c0a0e7403319a43a41e96ee6614b3bd02b1a81c8fdb16bcdbf82e8c2124c903ddf85efb101bc7d61249c8de726fb9b79432c914a308b808d9084fbedd0697f8c4e4a3623c34799f1e239d608fe8b2a311311e969e3ec776787ab66112275843706564af01493f6711941441034c9464b71183472c3c7bd81ea3951d983cc7a29c79023cc7a24cbdcc38ab4da597f164a08ef899bbcf8cc1b69adc16470fa5771231f20e39c2a459bb749f469c0d75ebc9b5ad1d9e3c3b7fab05472ca060b9a59c724a39257f3616c5c93f89e2239f5c5943c6e99a5de4189425ed5a3cca38998001ec39d6048b009e634fc6bc6d650ea44c77459ab35e201c63e4ee0e3b3ea15f914b881186a41110dd86871b46a928d5e5861106f6a4e23efdfc82448e45a9223f8e415912a9322636fb12dde54bef725690228de53c2594b779819a8faef90bc67ce75eec4913bb75ecede0a86fb9657d2eef966ec83e24854e80e1528f1fb2df38673699779e8fe82eb75e8f1b778121cb6f9cbda21bcd0437e4281cb72e7dc8b2bef822648cc5bf7efef559f7592d16cbab57c4aa376058775e1bd2bc22ad3b1609d4b70edcd1b9b7e3fe8d6b5fa879ab75e3990b0c81bcebc673cd23c1c6f321d90a59ceeefa8c58e0f5115df39b8fe543f27e407078345047e79ef37395b32f6cb78ef319b57b2e3d1f9d7b6ebd4e47c9cddca8fdc6c3761b97ce2ccfdce6e31eed37aecfbf95652d975e518bf5f9bbcb33e7b72c17ab7610cbf9ab25b82c677ded383efa797a78ee72ef3aeb0be3b33c7a4537eefac21b5007f34fcb997f58eef221c9faacdb7cd75d1f3f8ba747cb3b6779c702b50efc389ce8592b762db0628a0d555048acd9f2047846e206506f4399f66e68e05209a41e4993e7248e387d18a13e3a8ee7248c90f9e815e55871f927508e981b738eb899f7acf095b3dc91f61567a74696ac0bb4711ee3c68191a95f4e72c45cd6e8f7246a7ab181ea39664314c79e6335a4f91ac4d4d0e53956c3d487f104cf311aa0deb25794e3c56d7fca4973bbce39efb66dd76faedbdc6d7af3ba9c5e29f95ef9d980371fb3cdcd4d585d3ed4d66e3d3bdd0543f6ca407c38e9db27b74dca9d6d86403c2b3de70fc84e0aaecf6d007d37fa15ddfb4ef8500002820f698521fd8ad147cb8defc9cf5e8220c74eb269ce88d8cd39a71036c78bdb3146aed6cdf9354ab7cdeb9781dba7659ba47146d9b1763fd91c34395d5ce65a49c94135fd529ae272c368bc6279367167bfa6963bfbc53e6157791d3bb9dcfbba4a47f58b3af7b5d4d750fda2b5ab3413cb3d90e51ccb762e4d0612d3e545e7b80a3614ff50f73c6fe940a426b5aa4d0fe4a99c57ce379f369df74def3e5795f7720b35d49406d6296e8b765b9c6aa6ebdbbd0db541a9e0bd919b55ddd62f7e14d3af3145114abf86daaa83f8ad3c1f92ddfd9684114bfcf0b55911ecabe3ab5fd4d34035376c2811fa45a78d8db33357596d863af38a36cfb60d6c42e2443620778deaec391846a5a7d6a75f9406a6dad3af2127ec580f77fe04fbea17d5409fe2c618a15e9387a4fc82cc29ea220cb1d1d437d06a5ffcb8843ad4922ab4a79ec625d1c3868a4fe5ecb8a45f39455c2690f9bd2f3259129768c9bca1987490e61106ea1cf52de2f0d46b5cc23fd43370f6abab70a6b0395fd8d08064ce26aef439a547692d96b7baeb759ab7b4abb9e6699ad6f234d734d734d734d7787450cb357ff9388ee63d1d34bf1c2e6e7b6babb55ae7ba16102056d7b53e0f0cebb7fc7e2c960fc9d6e75dceafc775d5566eabda13cb3e5d78dde5ececccfa7cfab5b9ebf37e6d5ea5900df8923536dfbc276e88e337afaef9f41d10b6a0f0254207f1e820976ffef2f9cd713aa87df39dcd5b5fce993b5d365f111bbf71b96c6e6c6c6cdce5721b97cbc686ca894aa9f5bc2aa5b5cb280f70a8fb44e897f4160cb73dbe06e200ea57b6c41dd24128a400a491b4293509bea6df7ec9ec3b6a7d363d9c22647e26351964bdba741e3fb6ba7120cf06ced7ab5f2f1da4fbbcaca6b58fb8664d360252fce9d4f32139a5dc204d0391e2176922741075cda96bcea3d57ecd2b17b641f102d89c7372b9534a297bdac04e31d957c47ac70c5ae7b74ea9b5ce5f471bade68c50948ad248cbdc304e353f13131313659a62629a8aaa02658138473f8d608c8a50316af3793730464141554d465923464149a10c0472628af3292c549a576d3e9dfbe667bdae5994518bb5cea28e53f65e303ae9d76cd2afd982ddda5b06ce90bb7c0884ada6c7a97e4dcf29e25267ea57b78e91ac4ceb893494cad973ce9694524a299d94524a29a55e13773a9df4c555f305cb530677f66bda245aa87a56f3429d0c24eee6d135af488b9d18cedaea156dda666df48a380752c479e52427ad6f1f0a2900f1b45c8f73e9db2637c9f278f073208ff4e8d54de8d7ac7cbd2209f28f0ee21f5bf52159ebbd38343431850f3507b253a4699aa67520bf5e361a8c5de616bd08c6296e78ab4581738cb8218ee82f7d0e811f0853cb950e860cc2b82c3607cbbd9db55e3b8885c350e798b99c4bebd537bb45bb5990b999556bb95aedb78161e5b68efb32ef329f9fd307a86f073f7bbc59ee8e2839e9771493668c4d5c27dab5f43caa3b3dce18bbe834478b3b3dae99917b4eaadb3e7b4e333b7f02ff4c49c5d46a29a5ac31da2031013c250efe99ee65b9d2a78d7ee5647165f8fa99a4e2b43e7e6eb9cb79fb5e9f0d29e40281c05ab76ddbb64dfe05c321bf79c87e420a1dd49eb90d3540b09efa5afaca67be561fdabc6e5b4df35b75201baf9e0ef2e9209a73c5edbcafe798b917e46a398ef3bc63b9eb2be2721bb720280243204097f5b940976f5f0b747df7b69c3d083091eb7e9dbbbed617d6ef40cefbc575a0cf73ad6f1931b8b2a5c7251a0b2ccf2c97c7090938d1812b9ca88015ec13d6a7976e23d31cea998214da7c7a4cc339be60a1269204869f0d6e51d449d668277447cbe4b4e28654aa5f72ea9d640d12fce753bf629ad79c7cb9e17c02e7d39cd241501d14eb5313220cddeed255255e51c7810f12ca721a284a4e9e633a60f946daf9d8d193620ce2d152128074527a3dd81b34626f8fbe7d61e61be52309c4b39d479f1cfa27718174df39871d08c4889d3f761ebd8bce6dd9048d62373b1c071a510fe7d6b951e6d349981dd881d917cecfbcf5c93ec26c8048a4d4f223cc06c83c120dc9a3213fa5b73e26aa9f8f0d34f27cbae7b9cc3cb7208f75cda98fe91ec863411fd533af9e71ae19d5aaf9a85addc03073db39cf967d3c1ba883ba75cb4330fd34e2dc8261fc30f3aef3ece3ef9ceab06e41e69fd0baf40d3c8a6bc090f3cc6d163f3eeda0f6f006080a6822cfce02c2c175a702219e645515142964104b5e32576c65b9cccccccccc2cc4e69999f9ea6829b6fde3a1ce913a671f0ff5f89a67aee91ebc74cdfba31e3bebac33f6ce2ae8e5b9c5e5b647ce628b76d96e69bbe54c7bb11ae8a3072fb5586e51d1b2bacdc373ec8a09be69788e1131e65fcf31229af4402a52e6390c010c48b45a56571af11c8b41f151ea39268582b7f11c3b4288e7e8ede098a8faa313b83233fc110bac0f91a6906287860f919c68b0537c88648229e8872a44418504020841f5a10a5054cf1506f378cdf3b3b70aec51fc4929978f0e60fe0939b684979f1ebd797c502e3f9d72f95085a49f7ec46bd6ac69b75e3e524df9efbfb7ddf547e3e947b97cf476b890183e5d7eb62905797a4497be23ba0491ec2bd1e591fa85c4979ef4bdfcbe6f24fb7d03a607e3dbd81e5d1631a3d6e5720c0ac9d71d99731e726eb47975ea5ae796f5f1b09c5ffbc26ef0a8f542bad6c7c3f2f8d7c37eebf3e5db1eb1dbdbc15230d875ed63797fb26b7d93bbf8d627d906dffafaedecc8549b19ab73ede330bec534f664792edfebdccb775ffbfd5af46d2b3e1b695e3d1c21a988eaecd17bd8661db147744deba179e5e921bf73f91d1826556971b9d6599f7522d6adcce2eddc82cfbc0ada0be9e74090f8d6a757d482e25ab7d3d3c15ee8ec182b0058d6590ad6c2b33ea0b7dcd7d6f320472158cfbb96bf79b73952f65d07e9bcf66ef3a3b886bd11d8c6c6ce31734d107c09eef48b1535319ed7759ed7b975cff33cf6f1c2b096e3ace57c736badf562db6addb66ddbb6cdd967d382bbbbb5eece34cd08ce5154398718cb2d216e2b9332932c65a679f675fca3b9fcbed695cb3120c63cf519562d736d32fb680d03cbcccc3fad8e7f5ade5febca75ebad2b97f3d6959b79abe52df738077fcbbb05c6b67a6872cbbcab4bcfa4acd92624befc84c4af554a97a07f058daa036accc0708894b2fa903c1ae2b58f64abc51f8ff4e8d2e5c763e8996d849a779ae6436d6b10a40e047fc257afda17563792120c72c46560b047b279cea544ea9e7310fc16e428846ffe918e947d07a98e94f9c8c06f4ee328848ffc3302db90609854a3c7a961b14c5d966a7188c6cccedad1908f47f2a3d71af993b2b5356bd6a8f97a2433af880ab90f64c2887c78a4a921a2a921b2e685d4706330bc5dd80d1e0511a2bd0a491fc1a246eae73ce3c0a3a8e667d44bf621a9c94f48670e8647433e6a43babb8f86b04715343692f3a54bf068c8162b0afa85c20d6cab88db2c8e01e1a4815b44f7512f24f358dffcaecc1f692fc4c6eb5842b28f1e24c2fe28848fdeb00bfb18618fc646b72d7606facd88fbcff9a747fd2a67391d9bc722ce5cb75f9c6f6eb76f724262dca6ec28252b8247f27974c88f1e41e71ff6f8f5db40a3ead6a777543f73eb1ebd1613573ab881f1bfb0462e7ee1941dd946f4b00149453cb38de89b0fc9a321ed1b09f28f640bcb95defe139f86942782475230d813e075b0d25b1e7c489736c03982007d137b1257e1d199c10c543af2439439921ba2e813e7a7cb9011bb2190070af343296b49dd302e85f9e943d8afacd14513206800e2a90a0623ca3c12c50f367538c10b5ab0c10a91d2911fa2e8486e88d8958e3491e6481840143dfb90308068489412a20ff931244a09da742d8243d88b1228d144660639806982888938490558accc30c3952e3d7041c444ec2150090e8311c5a50ef260490d96394708e4dc1f493aa78754fc0469a64dd7c00f646098391029a5cc5330f3707a94dfcca2e433b0a95aea210b1f4697d4812435f9ec030b508afa006759f2d4c311fcccc00fb0d55390ca89880fb81831412098bee739f603184d43d85968ad59b3a609d106cb91424a912b6030a2d8049bf1c20d4c9c040980131ea660482060ab6f827dc0c5089890052845ad00e32c4b88d8c3113c75668e51e9e191e237b5c056441b08632b220687b0b3f081196a8882881a985238e42918d68f7d7ed2db93c0075caeac2162674f022e3052c0e00645d6ac21621f6ad9445839a9c7a8554a9dd2ac635488fc4ebf6846bfbf58f629a503f94b662e7dcbbc66d2e58e0eed303873651e33e7991ebf9f67aed132fee12663d9d98773d01bfda2ce850c6bab885b5d0a714efd2585ac53efa94e1d07e770fea94edd7eb76b54e7beda35aadf0eea1ddef2e18da7ae535d96e1ccd5b9f4a8efe957e5d15c7e3f8f06726c0a9ae7d8942e7e9bfcc351d207cb53bab5d31b6aaafa3c5a41a90522b03f0a45608330d67ce62a247d06aa409d7e40aa520b4466b8c24b1fd9c7d343fa74e93394df4758cd3d67cea123e9c3ce2bcba83a3fc7a68c79da5e9dbf762fbeb5dbe6dcc7d13730dcdabbee8b1f3bdbf9d7af15753bd068db7cb46fee1dc53543cd71fda68c6102e1a0d46f50df91fa26a2203cbd9412b1cc91596ec072e6eafa35fbc538ee839a90b7fc74d7324dc3a1b9091dc4b1294e5e730b68dc85a55e0be2b9a783b42971881d2baf6965a4586e0d71390684970f6b1853a27902b1dcfa614a973e95ea9ba8c703d1594241e961b9f5c30de22b6f94b85d938f21300bcce9d04aefc14aca9750dfd5db277a409cb1c1872e5e5049010c57441cc305b674b8e1eb1b870f4b20743f04498e60ac07353fc19d7e4598e516d46def0460b9f574db3b9692580f4a2aeca0b4850640a4a9f244c49d9ccd996bf60b493ee73b56db3630dc9cf34d938e63a3b7435279ce3524f99be368fcdc77fb95c489b86b84f37b3e8261e632c6106a671e672eef8fa2bc77e7254cfa8b73c8f7794a836ce550a957296abebddb9102e5db7b682b871bbd55b0dcd672972465b08d4fa64861aa326576f24e7d7b8f537dbbcfb75be9c3770dfe042fcf4f67284cca52c673d2d80060b1e7e0d9d2e1faef38c59e02f76659d534d7b4aad57ac3cd1c90f914baf36a324c194672bf283395f30b8df38a33606ca866cd68985654cbb21f994d1a2719b943e9fce929a5a472467945ab96d19b654ca346a5674b4a595171ce29ebcead3b3b33f60c628c2ac4971d5ddd2da38c605a4a2ab36c47c6c5c9b44cfb684627edf9374ea1492912536e1d1c448cf1898bfbc592999963472e926a1a8e0cd7f449e9a4b3769563e6c426f46be3acdd6aa711c978ba2cd09a776e35afa8a33146dac9c85db6d5a95196dc366a2ecc3967ad382e7eda75909769952bf7cc769052525a5dda9cde73d2d8b5944f6494535a3da159d694528e59167bc61969118ee6349bb522f567d94e53704e2a664ef1348593d60e7eeaa1fcb6e94aa15f9c6fde5d4748e23e292588d44fbb593ba9f629cf312aaca8d842c593e798d5d2873746c51929e794d3e5ccbef0f44ca7e92485fa69424921139eba74994e5da6938c7e9ae1ee6eafd30dfbc9bf2833fa69c68c1933fa2968c6eca79e73ce2d6886536f29f323e833be09450acda9a7ae39dd7939cd907e515fa15f54ba0942916bcca832c3439c9e119fb28e86b7940e9c760de25e79da8187adc453eabcd1b0bdd098316346073366cc807aead714212ee7486650d7edd7d2531a4534c05eea20b902a7e1349c86d344e7224f8f9b4001ce319d7a05388873ea1e56a1cfc39bc3c6998534ae11ddc6b94f72fdbecfbf38e39381446dd960cb74b8ad5df476548f1b14eec9c9a99fbabb7495c6d25ba8d4fff861751841c99ca69353fc271eab45c369b03a769528a97eeaa0f68bf3ec33a2e141e2cff01f1d34420d987c6d35e91775767be964a6dbc3f5e917e5c0a53b097d4e7d464d7510074e7d52759075ea497938b1b06895ac359da6d384329f24c77314a7eb78d84f24549fa090e93ffa4547e817a50172bf389fb184445a75100da72ec54821f71b9f1389146a271c48fdfb26ccf3c9f931c26c3299a4503b713299583da5a17c72389fcf8121093e734d2a56e9d793ac413b98013a91f185f16578e6e9d03e03a51a1c6e741eeffa15c3c37eeaa7dec2e3d4db0b0e8eb770bce71b423d7b925576e9a709f2802bf48bfa8e87fdc481879ca68380eaa79ed2502fe3e3e7e0bb3a5f937bce17e3c3f982c49b2fec3eec279b2f886642972ece430a393875efbdf7de59e5c1953be5c6c03cb99ec717881babc1142bb11a28c5a4608a49a1749db22a60983c83597a96c1f39725cf4c824fecc231ba7c9251523e51f09565970ce3702b873b9c554530b14b97c9397c6c3e65557683bd547c4e10a8af887d3913c3c22a4eadb9809223a8b8c00a2b2e6421e22c0f811b2562b1723bc874bbb15c8220a414a593eec3df7ab5cefae27360d823bd1d697d4c2bd9d5a696735f1312276af9d43cea2b7539b5c39ff339399087730a76de81728a036b1572d4faea9ea4f222469e812d313d79aa32b5a56acc4cd3af14a59bd3f391f90443f02deb8bdf3450face37cf87940a71c0cdbb39b4d7a383ece0e79cf5f56f5e9107327f105a1fed83046f5d4e7550e7a37d64a094b2f58b3338f3edd17340eba39c925af8478247514ef54b72a49435a7679fdcd22ff9543bdc50464549a90e9aea20a64b2a0f48bc000a9076836cc72fea135a20ebf113ba6fa7078597383b29dc4ee3156c9454e412350250845162862430a62d3acbc571f7abc40d5b3f9d73006999d6d7881bfa6bdaad3eaf8c664060e840024b53ca45dc8bb333e79c5f92d89994d22262bfb2a21b75c39dcf767adce7553be60854b53a39d732d73c730d34d2bc3dd4409e1eb4d65aabd75aabcfda419f0c24ba817e684ae925e286fe94d2d8dd548cf90144c5208aa728949e63475c1a93b148a00a062cfbcc256e789f52dfb938940477ea86ad6f2900d81dfc31820690520613b0ecc3debd7267470217a9f7798e413125eb312968442938af95db1eaf0eb55f57cce55897291fd670feec02c58acb312e69249732f78acbb12e67fe635dc6fc8462ca4fefe92006a3772c65074527312ca462574065f3a393ea0083db1cc23d728f5cab180d98f817dfce8eb94a46bd6dae9a1d84cddcba8d5c8c9163711c0b0850e73bcef9c68363f7853fdeb638c76ccdeb36765dd7ba1cd73f63e4b8e99ced78e33a8eeb3cb6baaeeb3897cbe56a79e7ae96f37b2d707ad7b9f7853fbeeb3cacdc69757eb3522f739c4f298a91e438304cfa28d2b74f46ec721ed77cb8b9edc1814d372ebd26244e7403b2004414657a7777833c3eaa4faf5382362db0b51a55e79f6ea479cd6a5625adb5c64cc66de14ae77aa45550032b7844a987f56b8d19d8149d82b3851922752b0c7e655af411d7ac59b346e3e9d11414d23fc1d957be006182f005524f8ad45fbef0225188f5f4e84d06e15d48a46cf8e84527a09d4b25a5a0fbd08872ad28d1a476439dda9cd4eb5df2b48916980008904bd07dbce7d8132e7ce8403406cb3e19b39631ef7a8e69813d7b5bcc39e58c6951c38a35e1c211d92a93ed3cc7b66cf1dc736c8b980faf969813679c506a9db91cdbd225b605496c0b55cc89a5e9258c5195f95a69072c371050cb4cad404f411d20b7095a5a0049d1d2020849025159c518638c31b6f34f536da1caf2ad2bb77d3ec7a896f81895d4ef7c615b39c4aaee14d8dbca5779a015d0e7981254b2c69c1e7c48936838c190859fce94bfeaf49b1f9552ca10557088879b076f635729e0c1b38f648e32e460c31ec56f2296be73eafda91079f06fa051f4ad8344fea18e54adb7a7a3738e73f678f05b30043b2073e1c75fa6776abef3cdada5dbe663fae69d0ff50ecdfaf6752e3d1fd563d860e49fe89bdbda1e3d298b9dc57402bce556172b529fb9f6c38421ca4822c993b9fbbc4e48c10a8c120d2104b5f16266ae2e7998704207853b4323005581f2d46fd009f414870410bce6cd8e94f974100dd28e94f9c8407b0d48b2c1a0a763f346482a22e332cdfbab499f1985590f0de4f1d1ae79fcf6fe64777bbbeff4d821a63efb280e910fabb3c5c9bc7a4882353d9ac857b7dcb0d73227f2b1653d635bee71b63a273df7795ebfa4b7d65a9eeadb17313fddab41e65688343f3d1b02c94fb7d3ad4d8add7634e448bef59675231e1f9a53d7ac0fb5c6d27c682c8d73fe8d037554df7c8372fa69447debbc7ef1372e3655a41636c81b946437f36289e6050b4c005ecbc5d254a1a5c992c68cd49c68c424b9386974f8f07a12ae24543e2c61810d6640f382551668a0dca0290207aaa38b2b2670c109acc8a204920c1a181a185c30e7a4367831039717572a18e3c594961747b020cd11346690984b64cf5a6bad977d3ebaacb5bbbb6383d34acf704ee97a61ce2a8cc8e274458b5598581765cee4103b8343ec0c0a625cd820049625b822880a0d2eb400b3e265cc55ac0ba6d8191d803457129ad19bbdb003122d6048a93982c553bf3b2ea52bc0e0e20b0aa0c1028d1a22b278624c8c0b33128acb48520d534401f3430e5e802142cc016678a2e90452569a9cb0c255c455e4081947e80e318e4ca65b30dd2d9c8e6c81a40807060b4d11ae0a971934455ab1cd052f5c114a29a5368b8da2889bb1e299594269ce39a707926869e2294c0ab84c518599a717cc346d5cf000c6063aa4a0881998b4004393a930646e1839504a29a52e485264054988c4c089145895f142cb8059aa65a8b232501cb968623cc7b868c10c5cbc40b94c94164ea899724e502949fcea9473ce18172dfc9cf37ac1c1736c8bd8165f62542439a951c2862a4e68601aa2055fdc344c032c5c8874d122aa6909114ff111f0e90208a80b1ab54092450c5b4c39a7bc5cdcfb1cd3e208eadd3513f173fafc9dee23e339a6c593cf9e635accf0a103a5b159d735de3237f358b32ca605d3d5c2898fcf3533a7cfcdc2c7e7660164b384aa4b959832555452c89dcaa99ccaa97c1c841b36dcef8d91415255c529f5eb6271a50437aa2b853b072b4365c5928175032b0a8b0aabcab7b39a785fb088b092b06060794f785fbc301e19efccb77b5b3c295e10de154f098feadbbd27ef054f059e0cde0dde52774567a6fbc223e221f9f64e4c17eb98e89ee8be74525d0d1d0e9d942e88ce49182ce45252ea8c28752f28752ae89aa88982855c4d4d609aae683293a60b1516722db1849525624b3061b758186c0cb6068b835dc291e1bae0c2b046ecd21825382d5c141c18315337b047712a569c93fa76ee094704c639dac94e0c1786e7925c2c6ee85551515151511b155515551555155515555594149a55555155515551555156556ace8ca9aadad989fad0a9a8b6a8a1ea57d3e0861b150cd641212b6a4cb8859d15968fde3ec5741077105b6121d618d698186b0c13ac314fb0c678a9326360a1961225b30625382891a284a90b166af510c634325fe8613239a385855a4f4401e68a27ca504561a1561a2a5662ad3458a0c8242c745d20619031d4e002246158e81241041922ba20220c22acaeb0d00573c12871c168b960a2b860aaa25a0616722929dda01445898ad277135753531369ea244d0d43539a2758c8b5c4125f9608b3049925ce6c91c2422e322e3241b8c85c719151c24526bec042ac28565454012b2acac08aba811505e5dbe352075868a332f34524b2a550c4425c65a2fd8b081f0bcd2aaed1fde1acda49c035c0778daaaaaaaaaa2a4e892b828423c2c1ee180e565565b554e555528883f9933bb91367e260551cac8a835571b02a0e56e5e320b80dd7a97229c8c13818a70445b26c9614c08936792654c96aca2869357764a5aa541da9c8dc3056c9a85b6267d42ba3f17075757575757575757575757575757575757575757575757575757575757575757575afee156b383c79c2e48ac995121667b6b4386699cf59bfb894652c849a6b367e90f9fc2892e891105d881f4c2d36d493981826cf312b98c4ac68e10e11a9e411f322b9f11229a3b19874def17a3b12e768b98e7bd57f48a11cb041ae3a5f7d82a14e07c5932798de52ea15755db5f2e307c49732048197814080dee8687a28739ccb14d1f12149443a9ef38d40c75d366ee33a3a3a6e248948073472e336e074e9faf8e7e75f938eb7743c507e4d387e830326c97123363639396e6324c7c68de4388e1bb9d1712338370e0229a403ded46a736f5bad6379eede272306b773ea3a32b0f37e71977561ee268522d10ad9d29cb55feda14f8823086d2abdbdc73b4826d17123393a3936aee34970dcc80dcecd8deb7892186e0427060e8eeb24d971233176743c468eeb804976888ce4b84e8cd8154f7c0514d7f972be1a03e7b3f92875319d312b9e50d8cf09ee98624bbff8a5131793e5b63ced928b683e248948f3fa8d400b29d89ca6691a6864738ebda964cd370d4ca279d534af5ad5aa66e34f6079caa631fbd85e8317cc9d8e85635aba5faed3f572bd5ca7eb74bf5c2fb12bee98e83db3ca75ac2b458a18bf5613b70b13a6e9a3df1863cb9c2d73ce49b358182c344dab5b0e11db711cc7d98e6301abf33ccf63b5b21a5cddbdf7ba6c6c9a70ba9b9b9b1b9c18ac2072727272747666121c70c0010732785c3198d1f57845b1c77b7abc1d7186d701c7c2707077625578e9c2586eeb58373618e3e46aca7dcac285960d1abd2103952aba14e1441120b874b9626c98734a28c850e1804c1617d450149061eac83c81410d029e63565b7cce73ccca4b16a3d90efe2ce210a08726b02754c8a0d982b1c0e28a0c2f60c1114c68a03467f7944747bfa49f8e7e49234fa4ec957035b077480ae244302abc218e1b433c6edcb87159483e11032e4ec0a250c1845012132a29a650f0830f423441d4ee2c94e48219beb8c196232de0300351fb8b8522e0820ca02c49410321c030624804d675c51ee71c55019ab303c0877350eff9fb8300100270e33c78b87a867888c0c3d53da0b33afe4ed6688171f95bdeb97c931d37bda2db38ac682d5beea8a7c30586f35d6ee33870f48b030f7118e0658d97df4be7908397ce51013d1e662f3decbe030fef4fce81e3120c8180f0d281fa85e30657eeb88143cee8f946103f68e7f9222c2a758de91c80218d0775c01c3006189756e09ff6bb05c7a5e37cf1c9ca0d01081ba8780043ca951f1600e3c20928515a00c585c8e5ddcdf7c2b7db0075902cda5cd3e3363dd2ed790aff740975fabcad6d3be2cc52145e5c517131e3552638c11296175ca022c1f8e4c40d634fa2f9a35f404055925431e58930b01660c16aa4546902a6c309a8a0d8cc0aa0fca0c4c92a0b19780a8a16981a1d64003352c2e61ff3e40d0ca263fed190df1c6459a3a3fa65c28f344396604f7109473d0d1dd9024d0c655ca0e64a17492940410c885801a372f25482922ec6cc60430d5e0006039470e1c229061a707185a85dc629ed3af7a36294e434312a883f4ee997e5a1961d78d5bec81f48cf3ecac59b2aa183f6daa6ca8d1640a1833a567d0775140b252dc942c90e3848f990051544ed718a853a3243a0d122862f9e7041d41ea95828498629b0b8b2d464e5064c10b5c72e2cb481195ef044124b74d0520451bbece91e2e6ca4dd92d2fe18d4ba21c01acfcc273a893dc1823f818558821cbf0343b9aaa9a042d8f0060dc07338e35906691b171530e79cce7d975f33f2073306d7987e83c6cfcfe089f3eaa8a594c653b75c3ff39714fa213bd04e5a2b05c3182f1dc4e19fbb552dd381f373a84bc86eb01c67d788d9a7545de31c92a537653ed4d400d4b5ef4825ba79ea7aea1e2380fa85ddd92f5ac45787cb0024de60d72f23b1bb0bcb6dcd5481e677aa08833b60b96fa1f4a8940d9675392a19a21101000400041315002020140a074402a158341aa7bada7d14800b8b9c44704a950883510ee3300c32c618a40000041803882133425413071d3a0c97c4dcd7fb7e18a0db6be5de7aa9f947e4840a603a9a692c0c9b368d90a2dace210b6e6fdfdc555e2ff097daef8147a85407c2950458e7d9d1e1ef41b525e74ae535f3c21b0bc333d44acb64c4a14c02858674b87d02792b4fcfa4be89f832b8f72f6d2f040ed8aa4a0074572eb4175b802d7265c47bc1ab04197efefce85540a83841383b461d62c3fe12e21fd622f840d1c407be59c4ee5ba2c7c3fcfa9db6ab029ca4d35be4939b716149592c16318998fa87cf9bcc580cf915e656af559ce036d75958b0a92b74e82bd80568dfc56d247356efe0a031d244cbd45937b6ea08b5474b69a5d5adff66f7f9a70d8c2fe1c4a2b87c9729eabe177f8bb14f74f7f0241d42e44cad2e0876f3105172bb4a90d6695f784761fd9fc7303ab1dcdd42e476d20145efcd1a3b7ffd1662feda0bfa26e6317ae237c7545f34560619848f1d8892ef725da7422f59ce952e7f9068f144ed13cb9b384b890230ec0ec7a0e3454053b8e50cd5f17c2f333331b336506a99564473a34768ecd6ec2a5eefc4d99e8ec6e0632694f6dcec783f59b1b5ae81d24391bca203011454fdea6e0779d0f69294d625c9229b21d995fd540a4ead0b87b3b13b63303f15988e116e0d0545cd11ae1e5eea5f23452761d3fb8801c5ffc29f84f5cb7e03fed45e9614f026a5b12b9731915e441aaef692c5436dfe3876cb9d4f65bfa94189709ba8a08ea77edc5c8decba9dae1876c7bc836eada23684efea4a0646cd62af0217835d9369a1fc802edf0a3b091f6650920c0359e2374b6fbb75883530c0614e6ab99fbcfe435b429f00aac5ae7bca8837518fa09f81b6a5d3f3dd564df8ebdde42632e1d1212e51b09744a5f107deba6c27bcfb86aa889bed33fe0a2e05fd99c7ab5281f8233bf40528738f2ef4443afcc2354a237890fb61be0a1d6d1f986ae0bf6836418b1c6f6b91ab8ee0a2cc73032811226080193d552392c3f2e79184f1c93ae37eaef3a830c3ba2a10f52af1dbf8b5e77721715debb9b4960c316093e07f9d88c267559d24e8ebb4006bd4e9382a0852eeee2f88ba0894528d0f3366bc5971ffb3fd07091154394b975ee245b2ab5ea33470593698e04a05758836e2e5e916e68d77bfdceda47dda119e4606085454da3b453d86626354b61b4829b53f1a67ebf9f8dfb545a95faaf7dfaa01a3a8d6b36672324c1373ee0e8db65e01a67df43b3b48dcf17652b790df2c57e38c082d0ceb7d340eb6e2613f42acc1334e13c725111782c3a314033f82064d286f7f3f3115b2740a3df86b1f3b68062a7d66608d99b1bbc0ec864bd11774ded2a47ee95d763b30f0555240502ff3135d6e7b6351c470dc7dcd07fa8c7f62c403a9fc6ed80407b812622a367f90439ce90a09255607689032ddad2ad577b4d2c4eb52b6691c5feb040439413821c876304e7f129bd83eaea23482a3dfcd0b93b86d49da511ea52108e9ee3d92f7759cd5a6dd58fa553219cac59a770af244f1b8975474bd2f7c9165ce0fc191e1b81804ad447034e758b51b562003f5090613e11cb403b847eceaf9dceecb8cc1f4dbf2f518921313eb9dc560cb2812bf0d9712859739d4077d7fb00d694a550d686c4cdff15af174e22c3df3e5c93ddb6dd8cc5a318ff955835119447470f524daaa79a30a40ef75c17b1c7df0ee43eea8bd65e29254edfabef6fcc18a1375ce6a6cfccbeeced1433e60f11c8bc35e2fb902f77ea0a8fdb4c6ddf121fadd9d73ffd03a3de6dfd8319bc83293e3d2f27f1b1d1e448b27e21b8fd4f7f8d6dd3957650e9dbb9487c239cd30a3899b41e2f5a5218dded4a4bff949690430270dba19d2b93dcd6bf28620b3fc6848233725c99f111bf90977bbf052a1acdd17da89b70e79b2bfd46d4d8e2636a4c8e1f1bfa1b84ab944e6b5db9ebf4e7502574236caf0bab133eb3d81d10dcbba530adfce83bae2279aee46360819500a0f5278f8018f9b1745a34870f28c125de95587080f9c98335c91980ef25242c11326ba4a13e9af3a1fe0aa75b1502b8b8bebd9cbb91adfe9c97c78dce0c85a06efc312390c8a10d172aef87068da018b7c94704038b47e75f1cbd15d0af07a2848222ffca1c78e07ffe3e7d1c7359637e41c77ed9c6f5ca354c8d69a553ed7c48f5afc72f4748dedbc80aa92752f8fa2163f78a7a04744fc723e251740ff1718232c81213e59b16126c78292855474778caa109a0531454ad9c168e304bc01a32fbd3eb8a51b1276e64d4eac02507aa5a1b48415c13e6a9ca7e6d549e3df92a18660da37cdf4acfcda3a6ee2940883a1563cd7bf7e0d995bdc761283dc64bc9c2990a0f08851d5084f6da83fdca84caab76ba002203e4a34fc316b80ab8c4a49790acf76e11d6342ad15c952076616e7939df9b67ff4b61df35bd3ce532755130bd392803712f5bf48e118f27a3770b8eef66a6c7052ed4e4dde1a3553a2c00e0398f3015845da15eff85280042873ac41027a28c59000e71aa714bdb21ac42e5d10702452f321709e19cb89db5784dfc3c793305f516f2ce4a97d7b9899d2893948306560d2d9c51c785a6241edcfcba2aa325f5992941ed778e83721e1519302f4da90a338b66af70aca604e57914f3decc18d83d12d0c4efa818ef4cb993c674c11282769754b5ad9c5ffed933d2c3d692ba89e9f418f9cb359938b7dbfdc506b46a7f20861b2d67e6c35dbfae8ac3c729c008dfeee08421bf297b7dc48a08cfe7edb3b4cb5cd5000e1fbf31c0c1921093a7256fc1c4e31e47c201a274a48e008f5f58b2d207ca7d2eb6de86f88a8ba924326b92cf8acd8959c0e918a12d52ab181598abbd8e3ee1f454ef9dca5fc428e5e1749bf66d56a5e9ce297c6b18368869dad9a0b9466b877e6fff2c8b94907909c1c6ea55aa6366e160fe49091e8b068bb915e462e1ef5d78d5acce9af6d87dbc1981ebf949c7b1b0f71dd9db82d67cb1c680be64f5f373b25972bab039234541f6a22b592136a6b9d505b8b09c55a4d2856e54469552668ab7a82e2edafe4343ee8afc141bb0d2e34d7f0a1ff8d0fcd6f30d05863838610eb3321378cb9e5005c9156e3d269304d0da4ade1f41a4e8b06696990468da6d370fa351ce9bec6d3ace118eb29dfa1c9dfa879809a14c003aa6167fd92e4b8753eaf0d5a4fe4a1e8049b3a889b44aa21506f80e1eaca6bc6805c096105bc17e902d2ae0df113727bb27cb223db14394cd0950bb1fdc9905162082c9cf6ecac7f7cb5115ac3d0b9cda320bc4a81df1997cbf5fa7a943b7c81f0467fa744d8167f281d7a0c13bae56ea79b388956bfb81c246a2a9503c3202c4e1e9a1b1cfd3a55fc1b381b9cd058bb6faa28964418c84290ff52490d627cff8f9b5321a588f0975ef9b2ff97610fb3fb7b4795e361f6b762b2e66e1e138eb28adc3593a5b8c009d299811333f010edb49c78b2178b708f9abc3c586eb6d040a40a21692e2a7a414222a174b768760e9a448f31082878cfe67a40fa481f89420fca36513a4bb2ec4d06079486de066194ec05bb14f2ddb386055429b624f241319246f9cf5b6e204de873fafdf2b3416c5460a699d686ca079d974f2c7f34e757f72a39b9b9131b48e43abf585f668310d6c4e15e2b32561cfeaf08b125e77c82da615b1231a2dbd6cc5fd79c4b6015b697c6763c1ccf5bceca8a96cb56a74aa5d3d2e4b08736d12b8acd65ec9b009fa19668ac408c0207ab17a28a82aef6bbbb04dd14ed0b4d40b7e0b56b09846dcb7be8b9512fc590056006ee065a0d499e4e46b22ceda3fc551cc57ed681b22b635e461f6278bd7d0e23a1c4f24980613d9710284322f8706e0e23fff7bbe97bca568fc311b73ce36a8dbd012f80ac8d3337df039d9f7f5b639a334e8d1f54f782a736dfb851b992d0a5e98507efbc8e0714960a46d209af8fa20ac172458b28e5ce6fbb00ad2ac3293b839555aedb590040949d7954cb0b8d8357522f868f45d35dad1f24c9edb03fdd5b75412f591f7093b28b34175f63253d55026554b247492e705f415906cf2139e7f7a5dc7624cb7ad0549cf592621417d0752a94abec2593c1d7f0117b79884718bada07258234bd18eb834641317c99a5f48b70316808cf19f478ec64c272c826d5f5aa122964b472c870081a0504dbb4a0a78df4cc52167a0d8f06892e5eca75cae8fde5b691d2421c32b39482076e6e3520d52c38232a12d9a07fb8918bae869bedebc2c48acefd510c1ba249d8f4adf525b5fae71d808f1e43088058727f8fdf6373cf5851c49d478f554ac66a30d8dc7f24fdfa151968755e8b501fda7fe171c822468f047ce77f123daac0fda1c63b005aeb1eeda061f66356e1cb30a13820f34f91419f20a1b7e3bb6aab361065cef6d243404fb2e2a694825fb3bfc5237114f7069a815e6fbf0daeff4b2d98f429fae1496aac4fc3b19ee1987a05eccad4ba32e04ae5a659425ca4605d94295e7bfd458078fb050b64d5c915a797785fd55bf7eb96925a02431d37beaaead5db345253af9659aed7d8db2ba4670fb05ac61d5aff72d4b54cf596b3becba97bb9eb2eeb3a9651d732d4bb9c759677ddcbad7f19485de0b20671a40a3cdc3ae0f77e184b696a347d0dd3af81741a4b4383696a94b686a7d5701a1a484f239de66b7cda1a8ff19ec21d3abee64256016583cb124c8e1d43fd3f2816ecd5a28cd614ba76bb449ffb109ff9541ff5291f7f8fa3f98f2c79018bec3ec7891b52707cb46f79960f74b79dd30aadf4e9db1d2498ea6bd8890bfffd7bb1ee8e44b18e9e4f8af43948a21b2e17e03f95c222c8ec08afe81af4eb4ec74af0426d7ad4f307ec65d7fecdb0f96de880b1d6d53d33f8bf9d9fc114b9b84786f477e3c3f87517cec390fa65f410abecd2ff198f9db7cb4b5ad924e39b9e3f108f395e127c7682b974e13f88410aff8188f8ce37ec0e4997a854bedfd7a89ab7eeca0548d59843e872fed82b558fced4557f1cb0415ce3d7200e30f23ae420beb99f87b7515d2f17ac41efc9024ccc8c4b4fd9107cbfb1d4834359f933cf3817490c1a021d049360011666a021b0982ad6a9aeb6e647730d6b66750d818157eae097a0681c2034f8cb14fea74d1846fa5942c45901d9cecbf0a550ac749944c21c24f8ddafedee5f841ebe52a83a8af7130b8e0ed02abeb40aecf8cddda14e21ed1627cd00e71c5bff52050256b3f84965ae63c358e47a3b661faaf1bc49392471287009eb2ff2958a92d484b162b46986c6000943b266fa290868453e455b50a4970e5456b4c6be3d432e00bf76b60c9f9205ff09a6f5bceae198a24021968f72dcc1da4902ca259ceec266c92ba268dff110b7f820ca6aff363d79e4214ad7eeb62b886c693f59a4aebbb917bb7c49aa82395f2e1c1cb4d4144590659cf5b99d87bde4a208d3eed19e8a0bfea0b6df2be5b32d26cfe770bedaef83f5acba6328d1bd4256c4c46887213b92e33677426ece3e850d804fd98fb0efdf0a13284314e499f1cf66e90a0afd1b0802453558121dc0a2965ba518a4d23faa229d90273b46e2f0cf087d3a86512c37dca9f2638859667c777a9e2efdbce2ba631584d33e9273091ec6f32369713e6287ab170ade06548fe16bec94d356ae37a9a35d0e4105abd478ebbe4521ae424e315a6d2f42840f7b3ab2d615b80180bbf7364c21afcaa91719fc57c8f064f0a5e80f7d796c58ed31f4f247672a841c30d237d2881d4467084004db798a2f11e6ae8486a2a6882b41a3218e6a180dd1b8ddb690e30d7fc9080ba14a0b1fb3216fe5c6b34bae4870fa8cde6e01b425d90726f204df73286b5eab4c694ecf278fc86631b1e32e459baf0c57640d3a88214eb72de0b15cfa401a1a8fcd286242a1921437690d369baf2cc19acce34c3b5cef49aecce173bebd3c1e3548b20d82bf72dac415c7ac8808f1cdeff99fe3e04adae305af0bf50cd282d2ae0629141e225d3504c5cea9abc73e16e51d0c8953637c2ea4da5c5b928d2c9305de02f96986f65ded1950cc15ff1340f4cea9fe22bb50573b6fed49845591e5cee5b26545a15f42a50e664f0cdc39b1b2a0398de7bfaa25f3c50e6296d79219e0d1b56b03e9eeeea86136786590721c46491e90a30e70b6f71a02cd198a20b7eecc88c3437cdb7b377cc6ef5872fee12d197cd37d1265256e8a3785866e082bf7830c672723cc0403e17302d920c371513bd3f8828aa11911acc76c8e8725630b38984121050befd28017ba9e4d64a85da23003e08ddc7014b8bbfe1847898938f1c7286089ba2b1e62c886af9f740e7cebe52fee384db83a05114ea18efe218f91bcbb6d8270d30471e5264867b9a0a08847d6f956f078ab030833e753ff4c8cb70dba643c2bdc0bdc212a0f005461a686b4ce3314069607e2cb8cb0166ba80f34a103fa70a1a41ca9f43a0ca11f6c31eafa0345d48490c3dacb67ffec89097f0af7ce6dd4ea36446e53b928696bae165558540d453206832c45fe9523cd8d3e5c73582bdf31ea68f15c4553f058dc86c2078f593f1edf9ff93606748d36c7af31ad62ccd001dad3684168b75a35221c087192e43573832467b9156258a91467a9807a5c907c4bc75c6a50c6e90a42cd19e1c5f26c2de9fb9f905c96127f92be85ea95344670b71bb5825710120e1dc66fd69769268be36adc1ff3f6eeded9797446d36ed987c39922585cd4e8d0e3854864e5982b6ecca30d49f76c0e23c59484e22a25b5e525715ed0e44119a04a51d149bc1664f2961380a88894e7ef5d3c86fe7c1c2298748d2e8918622c0d49ee66c68d03d527088b215e800fb7be3adc000aacd3ebb81c328b347c641eeb2a2f68f05595ed8e090b82c6ea12a1c90ee14e50b25bc147429063c256595d048877c9a2e87550809f0c4dfcf1c8c968bb44ae87b0c9c24fa0d8eac02b69848157b60433188c584c526a38032cb2732ef3a6c37a359f364da8e1500962d2ff3e040a2eaf637af4fdf9bfbf3cd0ba4ade0a33c101716eb8c6add0a0a80168a733373229bba2ddfbae1fb2d917378c25a1490829d9bbe403b890c56b2786f6546de40c3567b7f436d1fdc395725ce157e0406a314445202c0bfe3b828a71e882241b949829792ee6b54ce841441b458f3308c516aeb1f4e09c61b3f49f043975b2f2ddfae226aa6af1609233623751c5e3bdfcaa23c8d1dccc6800bf025e13d413539c3330f371aefe0d708544b2f542b6bd46ffb7d9a7d5a01e89ac42f956815e8bd8dae58af00a4f4cc3de9f08f9ba0440dbb110658c4cad5a4efc5165df678187bb811444e073ec87a27508151e1bd3edd42e440112e5a240073117451851f8bd7fd13c4b1cb15f7606bb5f60eed8e1e233a4de1deb56fbf74c93ba4d058eda403fe8f73a4ab8dd102354a2bb8d3e1afecca40869176bbc58bd473526161e16de6bbf8b2972bfcd5c52a255445b17efe0450fe5354f1022d69361b4f96114389f44bd2d1672da8399e553baf03533256e120c60d19b0b034e3cf81d5af1a14ee66951260104471d1bf13cc08bd81a68644621b54663e48a7bdc4daa9dc30650eded56da4e80e188da2e98ed438b562f16dda2b2b2a220d20bd9823988247e437d470483b83eec2b57190c6cd71f7d8d05e44ab5a793550cf283b97ebd45dabf1a4d003ba7a599f87e6de3ce608ef057a6c161bcec3352ca0a21d41d67e1ee1771a16d95d06f62ec4e421ea78ce82ce7898b64b37907262e2306df81dc82d9a386ebaeee6d56c742fb88ee697a971ca6524083e8c380add80f2c4da07a07352ce21493df81bc0674bdb4bd4ed93a1f5bf014aaf5cf044105278a99820e791ec4e0e152d59e41e83790cf509aa240bfbe89964f787d45d25a62bfbd6ffa237f7a4a7c1a6fc523591e863bb45f013df3fc29c8fb1144ee3c54125fe4dc9a32b280c2d9c1530fbd7c113786ac0939263612a8c955ff5a18bab10f2d5c787f6487f6d5d91212b256f9e83371ac2f26b1e6084840e6edc173c24d63d1f9064278c1dd070317606317cf4d886eb291ce7795273827044f4512440e2c09d47772d4bfeb0533f3f23d3c7662417cee382ace8dc10965293599da6071492f4d7ab4f46ea8293251f0508ae687ef76f76898cf167b9f0fb8e43aa3f2bfed850ddad28e667b745d6626be16faa04fdef6334b6a55a20bfb511ac38044e17bf73197d5e1178bd8d44b794821c6a94daa6494e351600555005cac5071f6638f77f6f2b90a495eb8863592a112daa0760019cdd55feb59892d9309d6a78725b3af783a50b1120af38e7f22f74a144087522cae9d6885598674d669e16bcda4c2d4a582cc34d71aa752fe792d7c79d4da0c9d454ff636d373643edbdfa7806072a8d01718e46745fc7381f16cbd772bfa5d2c77799058f89950af1c6f8aafa2df8e8ac65dbb7fbe326198d2c9a461ea8cbeb0947d7f95fe6a3581e76834042613f90f5b744495045a8db2a32c088122dd16abf6c914066aafb4caaba86bc2611081942be52201baa9c305eb8228110ce92f9937806d4b70c23303d7f0a012fbb63ea0009170c10eb75d2d4fdde37a8d66144eaccf3c2831bfceec342d3248c100abf048738d5a3fa54270edc98e77d03b38e4c155fc7724c24cc3679161c182d6d64b39bca4704238351bb6a9878bf6a8782b3dd701705e91c42a5e643475c97b9f4b4ea3b626307e3421cba5b110d89ac63a499ca598b6dd835ac5748e92f09242ab531f510251ea8ee50d01be691837f86c727fc026855b53c7a70b6e17112016bb1a41d26ae7cc4bd5d4cffdeb1845f2297648c706c64b6163c7656065f8424ef8819300c3b18234a6aa4a1ddbc9ef82f95aeaf12d7691cabe2b60ddd53b180ff4c6b803e838ae09972c30d1691982a250293f3aac919b36621d849ea82ec61b9011fda2d68a1c4352115789437312235dd44d30f5facd70c4cee88817f303a01e1a82475868c1bb8f30c661c68c720753b43d8a85012618818010cd600df8927eb7e50c0c52220e4610fd497d0a1d83118f61362eb85d3781150144ce26ee6c714cbc651c1fc4666877ef7fe55e01c039d043daf3ecb1d38e57f812feb962168d7e5fd5f9461f9174d378d26e5a4960d5f556cb9757d3956f16561f95fa9406427237c35430b5d316412c8068bfe8eea312713b98b1af11ea282e31f09b8ead49bcf9c4d6bea314cd2ed1cd2775ce3fda85f877ffa1c747a613f368376941b81e41ac7c517f32fd69db0ec22b7a3f4e31a74a0848eb83ccedabc524d168ec13070b12920169d13c7decfdc9e5baf26702dd4efd7cfe05ef6bc932afe894709e651840305a958bf973ba774605759aab421c9afdbdde10faccc9df94b728beec96d13cc4b9e9da6b4246db74b3011e475fb5cfa27ed5cd36c7e54e33e888d6f8b390b01e584d076546b3f95287444d24e6e7cc3970dc669ec90eadbec7162258491d0e65b51e3a95fa96244a2313fd42206246855583366428bf608646618243dc2d900aa05f4983085990449b1b652c4149a8b265609ea456eee0e8d47710813bc199f42ac5b1c71215cef7082d99bc7db15c82ffcbb84ffefdc462671c27223eedff49e96c1e056a922c4d88f077809a88183aec6ead7b55648c8037ab122c6daac31a6b6be1a53e1795de6332f701ec60447ac20feab567a7f6ccd01a12f4a9d555c90fe5dfb8fcd6052efb5d4ac48775b2cb166d970144f0f58e83543ead16744a121f46b7ad06ba0aa250ad1db93334dd973156c8b38f6541b5dd935802885f175217b32abda6159d9570e9949ac2196a3746a8db941d42b7259537fbca2d53d3bc303552d6b7e4487b77338a689d8090f09b3ea7d03c7b362edc11bec61a2fa88888565eca8f85fd8104809331bccaf36e2265e3c046caaab775f296f6d24eb7f3c8d029254993b78338a894fc1da4aa11f4a6df6012b17c523aeb8dd77b296a7e38fa732c4c5c09c7b3832dd8e07c447e7644135ff96f33086d26023f651edcff3a43ab443d3c4068b54b6c5c1196ba1f312f4bf766af294106ccfaa2b8dfe43dfe72e9cf7afb03ed819d510058ac047eec2392512ddf2818b6416840d0833985a755c20df39230a8be864b853d09caaba51facaf88748d9e98f8ad4821f52d54323aad12d4f928ff03c655aa52f92c176bd43d570d7bbda23865c60282869d285c3661a7a283982ef5c50dc2a1dc83d370b7a2f1039e1c389807df65fc1c22c002615d2517f5d7b48088e7589e47ff99e131ad122af301a7faa92f1fb96e17cd7a0e2418cfc3e742ac1113b73dbb7569dfd32a41135229697076796d7ac623f5708b5bf39d2c7c30a1f55d8f376ba6217f4c5c8584f1b2328e835354b61194de687ce313411a8d1e54ddc0fab44a28ce7cb04383afa286dc6275c6cb934712a65888d6aa1b5c8df53a6412553eeec26620bd989b4e90c7413815e14eab44f8b71b55a18f76a4f8e4932e8139f216710c608ad90bc28fd371a1436f96231574dd89e8bf503c57b192103b31d95b90fa46dde432f240a159751a7322bb839fdb6648297ed99853eef43e9ff0525e1e3081a152051b9a01c45fcd3e2d3e397f6715f5fc561d8c7802c8145295bbb2087655dfa8959b296dbb4dd8b2fea9ff6cc8fcca1257188c91619231aaf99577798a20ca82eaec2d00b577012ee05c38ad1e2822a8763289231b25763c7dd081d55dcaa1339bdd6f3389be565af829855cad47b92f9dc8a566b12b350929ab9b14868cca09c29bc40e6a3f54a140673eb5216b49b43bcf7f330ecfdb085b748fa5018d81d2d938c8b33f7c0d20b47b04e0d6a745c9157e7a44e9602f47ad67cb858980bb2c197a4e2bb7763dd0e1069750a896233a0afca0626edb7143ff8ff087e2b17a2401f835ce8e41fc58285651c6283163b81e314e0451befdfc2fc8cb6cda71a3d54abf2f338db098da8f5d3309b85bf9d128234157108bb8c251e8f9c577119582d14dfe8ec48a07015db2432213761e990d95127c54ee98eaeaf78f3bbb4adc855ae83e4b675dd66bf296386db0b7c3718d3bca0eb6792a7d699bd4059e77826e7a41cde06068bb5d0f31cd775c0eda3748f0af14999485d8080088d495bcc36b253c067c0d8c86044df0124275d026112aa96b643aac6f435de57f067c5dcac1ddf7fbf76b8f574c2fa5cf66329352b57108eadf344fab386ec4ea008b9feba2510690275b757434605b89a38d8431479a41061bdcd5b355c3cc9e86269aa342ff1c4393525df809aedbde208982f4d8b812dde685362770ef2f445aa9261c5aafdef5e886594f2ba9f48fcbeb2143fe2a36524b9f97b8b1d6e24a9c7e38be77bad1872089a0bfffcd367b993d959b56885bd0047dac72252efab2f56445ad70b0086b2c7584948d109e6e8e5e1b1c0b2b98070426382fc33d9cff57644bf35937cc551173acb9c93a6d852319d42462465612c81755292406af6f237397bceb7f3de077157e03fd3194f5892327b67886845c2bb09312e163ce8d77e7a5c79b3e7af90564c36d110f2fa20755bd34652809bed254a1958501d67a046c132d87b491350156053934c45dc4b9e7641af6c5b2d026336148afc13411d2e2689a8482c3f446cc48127243605520906a445e5657c2bcb02abc4d8820de5e6155e8a5f0d12cb39de70c4462119982a053de2b5b19d643fca98dc3aae81c5164842595338a16d0fe7f40cc1d9814d873d690c997ab042683a2bc3e59f652f99c254a16e8bf291a3ba8af2b23fdb222d20b949b5af3a0820b304bef6b0cd64dc070b40a04e2ee6e8e9bd60e0fe7636303ef8d7826a575fa727b0eef660c8f49a45766170b82f63c72d69789dec4c00621f8402a193baec852699039a81d59ed609d69b48a6a24ef4be3703e1917478726a7f0be352f51af7892a11320ef5b875034b9feff6b460aec2d4291386720e522f1c0f40a9cf18f42156e7c8ca27a0263cb4d97f2dca0a82ddb828292b88d1b40288a004ba51c5ddf3313cb3f9c2d1236d0d98645d23ad610683b4f6923c214ef3da80c9e33546724eae6c0252358c756509c548e680608384a4beca7e50ecfeb05fc0590c3af1c048794c14bac173c8d4118f3a57a6d855c63edd53179c5efcd5b3491a0c6c2939a0883cbe3ddaa9cbca63733d2d6018f51ba565c692832fafac08f7b86ecb04d5cab43ac3fdf849d4be8e148744a83539e1e0f15333b2213d97b76fbd54ebd8e310937082df239dc3dd2944dc0488abd61f2c60f56595e79934b1410d5be0d070461a9dc6784144eeaf63ee7b38703b1f49db2dc6e29eb6864037150988f6fee0145e9c08d728fe0532deb478a6157be59a52e527a61f460e504ca0d7d56537631a94ee54342dfadc8354ce9dd9c4544a360c510bf4403ee9e47cc5bc927f1b802a08890a471fe007ecd9fe166c96b120390d46b48c42e5afff0853d0cafc3db7bbe890606db4f1f37dd379949bf1fd0e359864f5e74cc4fe0b17e052c23930edb45c61e5539f1c5d8d7bb6bb315a5586ebf4d1851953cb12d7bf98d9343f3d88ba778971579abacbdf04c040d81d1ce6cc290ff11980ebc6efa9d859bc4bc3e2a8c77114b95e11d158c250b4db4dc7b57f1cad7c0b9637c758dd697bbc6d66cdecf62d42c64a508f9c3173bd71ca57038dfc0ba12753a9d7615b16ae69134dadf5569f7b290e96c99913bcaeb4ec630303c1cc9e58fab77ee160fd6638ef8ad0e2b077bf4849511bb68bdd5f742b76a2ba3ec69260618a324e989efb561fcb9fcbf0ef14320f835699440825256a2dd09e1515d4322cf2ed071a39b0b13fc446dc7062c5fa4118e0d466a6687464619679754682589f18de60dbbf4b96a95a8cdca15a375213fe0906afbd06d049cd836c66e3f27f0bf3c540d13aae7599defc5962135487c5c0d8bf61d59a59d3eff8ec82bc7901da1b66e162041040a84dfb9c85adc47df9b8dfa27486ec88f60566f56a905eef4d4faab6def2d4ff6b4e3a3315114bb76edb8a0f9c9e040c8bb1e56412e3034c5b0922b74caec503dc26aa7fa262c087c6e4cbee672f4a086c931aac3f84e443947c8ca6a43db38a6c274c41dbc7b98197095493e79cb50b7f36f1d14af1d854aa6ad5ee5cb98b8d832514ac67857eeac2c7476a98cf29f1fd023536ee886758040b4272264d690607b513d999a7d7d206412b4c265f65c0c01eaa5967a553a3ad01b70cd349815258aafcd5c50797c8aa816d1cb4d40727d18bdbe83f4988f23d1f9ac08ef64bbb99500cc390018ba74c9db4f3c473aefb458e21c34e17d348822d0c1f39af10fcd1f49e35558ca7df0100a670e9fdacac6cafcf624111ce4abb9c80f2c48e350e474753dccd5521639b421b34c69b00d01a02d0d5dadf2b120db447b38750bf8ec1a50c6549c6500c04f79c2686ea100e8fb5adc2687912b4781c80eed3a177b7a8c55e11784a6e0a2c359fccd7060533a9f0d7ec705c07cb57a9c446c9ed42865435a7eeab32801ac79b903ae9187f3263441707fea2f113ddcf67a3be0a8ed0519348e7856a6bbe2a5b3dfc2b1d3419d006d1ed0ab6e00ab2106f7fd3e9a536150a9d77d41c08c86318a0345d8ef02d94d7894714830b595328ccd440a8f0de0626ff3d7bcceed9f49385e29460f1bcf44787f9d0c4849b5627878eb60f4f42859eb5e078248f62f636fab538b6410d6dfb40188acad1c82df1288cf389c532f5e0cbbcdfbbb1ecbf93a55859723b81c20f37523f63df24d808f45b09550d6f549c9ad3df1bc2fc949fea980844fb61d7e36da04de91a2c96282e28162fad6e0cfc5e3e9b84a3a810c9dc070a8f5d4e76dfd88811c2b0e540391af67697a9d27c78fe413d72475a0d80fa083a50a53694d5ac3fd16e2013455e6825dc7010f543b39e81835a40f72b48b93143d900515cce91504d8c7b1b5dca84ec07200525e3bfd712ad3b597a30c14fb78e8a1d6bfebeb29830279475ed6108a54b388479e261c6c6388981345a1e172de5cee069c0adeba74cc8c4bb6b33ab2b9147745bedf2e687bcc7db771851a0283b86bfdbdd1f5d99f6fb8e3e3e60bdcb214772721c529543a62b7073749e43f458daca3f8b2147798f0e292d794f07c86040ed0338abbd22a4007b3621e755c34c4cda1267cfa33d834a02b96e2aeb66f71779c0f2b401a88716d807b77a53112d21ab2b09d81cec5bf92a27c5602f6ee3247ed879635f1caf5c85f59d2931e306f7a3d4769dc743b88b7230ae276172b6f74d961c66d543bbba48a6dcfbfa4537e4753631712d40a57643749ba3f25d3ed73c9ec14cb8966eda707beee5a5711d06c688747da2af1b3297cdd611e3bfabcb115c16067aa460996d571161be73208b00cb75e83e05764e330a6b0db1569383e76b30813ff75c746c74a9dccb03b3ca100f60935b5af589b0af4c014e680debb102e538476c81f8c94a6ca0b8450f0a1c23da76abb327c18461f4a5abf0503d69d9d873b23eb49b4fb1b860c2a44de389760d53eb633de2c43772579cf82410f64491cadaddad7f38b114bcb2e5066c31bb6b72ab955a5c794854b314c1001ab34ea1c254adf2c7562250479e559ba9605dc8d8d5e2b22e1e6d926144347e8360e6ea252ea08630670c74a70674f919748287b08ca972f76f3b198397a68f6899f7372a95860ad391ff89b6c95dd1d008c83f1432acbe04d3cedea3ca0e8842e5192d5e8ba4a50b0490ed4df41d1e96a2e30bb4fb65f213f059a539a1245568a085be283f04cf0fc98038b4c1db74320b4f8326871b361b080e6399792b44a9791d4c2ae761ee88ac21ad954a46efb3fa11e39ac9a6d7f7fea674c0b8feb44233d216e49b58029ca595fba52846daaa79426499652dc5d210753d5f31ba8f5802c43f9f57f2705599ee58ccb81a9a3de3339da0fe8349d1418251643fe6732ca91f58044251e084b884e05e178520621e5eadaa0c2987f6f108ab65c35e5d84daf8234eeadb642cf06ff08316c396f2b5c8318689c9321c82a836ccb077d55537057ab96fd6db67c5d1f1a893bfc5a93c2fead97aec2e3cff77be1affd83b5063e8ab764e1536ef9a611b0098064e3499c93167981131ef931a63585485d0d1c6e70c888ff45aea1711dad3c918bb4b5ac5478a1b94cdb4ab09e70d55d2685c11e06f620c7747a34eb87bd71414c4fe49ed9602b19dc381d3a3d7863949fc36e27e1bfb5a263237721daa3d9504e36dc144d56d4a1f1dfe6e3002ee2cafd69333572475638ad2b0b4e1eb7f2e02bdf7536ae252bdc66aa2359ae6e4a19e261184ef9a58ebcb4a5874bc7808ed8f2fa7582cabe2174ef91a7f83ec9effbf2d0b59ff211392e2cb66f5ff54aa68c9ebe57b544a02f41ea82234a0d8c201d9b5af4d92afbbcb7ff40cc842ffe354647edf3d630c4e8f016d3f640a5b59c176d7e863e6f09c6cea09f3200cbf702089ac1994bb3753a08b748d22e5fe7104f01e114c42be6145687c44281d6ab2e7a4538a9e1d97e89135f92af191875000ad85e84a4ebc08655a753fae32700b3ec62602fe912eb0d542219d09a288d3d5d9019e3af174d7c3a0ee3fbed84905b53cc6150f212b965ea20f4d2ab44e6534505095b23ecf71ef42110e703e46c4fab0de4118db2f6546200a0517438258aef7db5dd834f39a8aec6085ac533143be2a0efe9359387642bffaaa45fc4add1f59889bcd123d646a3148e232ac22ff4aeeb4a2925bad2811d425c003a6f6d9a36d83a26a8fa603019f24ba97120a53734f13dd817c7db470f119ce006866143aab6c42c47df0ff6be354aad13823c2bd96f64a19eb88a12466e08a6aca2b1a51745cc92b6de0e700f153f85d62da49d3b1f6d98ec245bed3102e58927304d1613a6673f6dfb8cdda78f18868d9dc7f2cd11b5d4824320dc44e5177f4f2509554ae1ddf794091d3265d9810817803a20d1179133945341b75fcf2d6488f5bd565bc2379449c6c02f54a1db329b2111c931df48075428d0a23f30201b8b6d039604af8d60f2b96a6584663a289f85a59f8587da38f2cbd42ef82bfbf2020f54fd19c5511e16183a93164fc26c12316902119317c924523651def5635bfc4361ea3e8b24393c3040cabde22ad21fb748dc4566058de967acea23b0e80a99e5694bd7821b9cc5d1fcf778fc35a1cdbb4ba062b11c1c7f8b3955d61692e09d9a90f3979f44a39331b9a44e5db79a0ba8681135bcd1f73bc804c7a6c1ca51f2c9b97be4ca192333a65be5a3014617cd69a279a902c209fc97c4b9d6c303c592fc4136fd8821c4591ecac9f5722bccb89de9d13ab12ba013d892e2c07ed7d6dc7c47e508f55f59a279c11f6c664c2a2f7f3faf24929a10fe5c8a57139ade35818a6ced9a9fa3c517be7de6cdff877a581bae46b3a913ffe61171cd22eed4fca68a034b6e9a13f80f4861066c4c737ef6493a361047088ab77a5e613c0cc1ebb8fb0d1480cf7d9cf2dfeaffbe7f7045c4b811ea51a9795300f4b4fc6c9411832d00ae7bd997cf71eb093d76c85decee676d1a758bdcfab32c4c38baf78b67c13e5cbf97753add66c1abe0b06957e13fcf73e58663fcf09e38d471d773afac7deb601dde815ea29a678809884b9a876a4069aa9c9ba2a4ff6da286c192d72534fc293feb124a218e9eddf0e21b95ac78c5d43803b47121e099d3de5b7480aea7dba70d7a4f300771d64d9876eded81471a02ead03c5a42dfff664b5b8639f579c1d39bf4fa1eef0ade480ca00ef02f1942fab69830d18a5ea45ede1f3b299c34a214dbdbc08f9c1730663269813187e1081ecb42a09ea2930464f5d67cf21f4d7af2455ddfca1ea824341fc25ccfc1a82458d189e10d7f21f01b5307f6ecd2ddc16f707e1109bc9d11506b6b4b8a4d95eead75534fa53918177c5438e638062b05129233c43e2da55d817bdbe4db4d46860ef5abaf43f00b193c76e45c66912c69abed7a963838cad88118c86fbd32a8cbc7cbad2af24e9d45b3b1d70570e0e98a0e08f0ff43de291d4ff2889def1935b0d3acb864d22293e3d0a2cea2dd902335ec2ecb2675a026f521cf2402d53e3941d8bc37c4c08386ad6dd095daf2b69f41ec982b8e1fd971c27db65f3a163387a9df3f701c26d5494604a9739b9c6ee7d134ba1153106744d4bc15a85863d2272f3ff81b3ea8dfecdd42804f0a52d5553d7a2eef42202ee22b3e9b385339ef0321cce925c344b4c12918cf14ae432c12bddaddc438af5c5fcefd44cedf1a41c01fd066235c057bfe1650c1a156fd1d1ae957cad874abd562a7b5bbd50d347ad3b401a4b94e2a7348058f10caa2f152a456c5c9a71762c680a62a08a1b63108a2703bf4962d40a441b2e1d211226bea371c484214b7881e851b85fcf6061390c9013835ca55c6473cb4e99a6328e67e955d92f4884011a14d7b908b78b84668eb0e19064b1de225b4f62632557152c512cf4bd89afbfa211c3f10a4002a294b5a962c722f0112c51d4474d5a8bad7b51ffcb88889d86b252a53d31773c8a4f71c1b4ff4efff54a154dacced351b6b97a5e1db9758df5b85858f48563011b70148292cb58e4b15f05bb5e38e7db212dc69b5854961d28b102b3156a10aeec3aecd728ca209af83a1478b5c55684966ac8c42482c3d49507a1ad81f87dd159c4d2dbc9f453ac60037cabfbbf8b1c703d40944048a6ebe6aa6d249632b64703ffe9886828ada33a6886206d053fe2f70fde533d0d08a151226662247bcc8fb8fbb67ff6dadbcb29098b98414544f69d16f5036dac8a5dc2709490dd8052935bb385f8f7c0e0f0531c4d610925acae483d7d700eab39dedc308f8ab0e3b7675285293c990d9d9c3c32974158abce7d72be051fab7030cb67eb40c037cd2a950d089b1c8383ba2b6e2acff6d4bb620be993492f8ffb683131fa25071470b64101b39a3f33725e91924a59515ae69ad5c2812bd9b3df5342a1201e5fa31e1edb430b1526be9c0a7a8f1d494859941ed0c4f21f1fcdf2d3b163a8858075844120c805bf52efd231a8ad34e5166a3bd2f25519ac5b4380aa2697da77eaca7aadc7913f125c8406796535342d65733011c4718241c79069691d651d503c96ba9fe2eaebd547ec4017213add76e2074bf1de5d808881269a1a5259011ff431f610ec7de7ff9ee1e74b5b112bffafc3620804a5cae30dd9e76cbb621a2bf4a7959a00bd36763289586be04cfd96496101eac33949cbcbb1dbb5b25a74e72b669e2b181f477f0a7e8692984ab04f3a8b96d49896c8af8301ca68614045d14c120c0f18bd0a9ceade2f35bf9e2df6eee242f01eed14a7d1104013ffe1ad3e2a0a4ed46f118f85ab90fe883b02cfbbefc1a500c93014fd934ca5784e975ca98845c8cbaa5c4f1476700c53ca014b8a289fcb398d3082825e8594811dbce8a4d701c6f7b795fb8c46b62d17fea0585dec32910ce33800a00cb7c41dae301d039cf3d132a0470b9b4a3ee3f41822921aeb876c5df369bfbc49d21ea8a0963eb934812ffdcbdc387f9ccfc679d1d5ec950f784a7b2c739237d6f42ed3157992ed644a1718a5e434433a49b51d900038d96f8cb2074659b6fc9bd3d04ed499b4f78c53da693e18002c386a3f18316d8343204a399d7de22153d4c1daa30ea38e8440bdfcc2650982f2f13813505480af79c2ea876ddcf1bf7edb0362282ecb675acf80a31c968a938f0013e90a8b803eacdb79d37b35c584877058090b83e17eee7a1aee211e0e21bbc60d8a6e7c48012be4408a4a58688ec0f17f29d828aed5b3b6709850b4c25323c8daa03d819683ba2ce351f1619f70f40841a3025996f99fc6b1134e7b81a3853d8d270109a8eccf1158a3a045c5baa4313233827320acb8838c98eee84d7b7c32ac814f5981b6179032c2c06fc1f97e2ff2da69b596e10c95188eaae932e64483717e81fa123b4276d75e42a1595e51d143fff2fa7ef8b088585820feeb27ed49ba9d220de332c5cbfcacbe9524b04fd7480594f97a8973a973595a8feb599504e572a4f868c0e9d695709663bd55a75fdeeb35fe8f8a4580010dc284af8d6f5110eb6e62ebf1143fd3b4a172d97ced098408300bba24c7c5bce27798817bdc4a54bbc57c52b3f2d9fd6b501ff64ad9f198633d140ce886109c3d709bfa268b2a7805a6edf0250b8f5c3bcb4ea4d9706f26a71dd1359be3b843f11c8584b09b01915ddfe16f666c21d334309592d40180a86f8fb5b356e42a7332c27573ef7fe9dc61f16de2574c8ef8571677d838fe130c6ae8306f2546b4b7803fa7b6439a26bb2a391726681574781227b2f7ca86c3384eac253242e964bdd2eed3df8624798385a5f4896172df8ceecaa6c335fd01b3371e2f2051be9094d93083219edc76fd7747f84da30c4e5ef4e744db094acbfe86347d00fd3784601ff181c6d508c68925bfa3951c34fce3f25dc9dc6eccd2350a509f13b80309d8b7a5ee447e919dc53c7d016ee65c3059742b70cb9c9440cec401af1464984498a17644e21bd755f08682ed713888299b6a2d7be448e92a3fe531b35d7bc48e4e23e1fd0c480260090e4ac6d8dd16b42c7bdd21c40972cd80a1c402170700e6fb27cfec3b9836e725ac1d56054a83896e3f3a3c0ebdf9305191ffc5b09b3f5cdf5ec0bc7118e3147d0d28d72ca3cdd28431308c32c97e6f5d395f4f16b559a04f80c0e19d77ff168b78d78b0d24aa001f3ac57560e15e539e5707966494eef91bf7cbb93b2b7154fed9c83c4730d487f96cee3463caa768300e5a40357dc5e83a9e5b00771192befffc601eac6eaa2d3327e01a4e57fa302d2294b9cb20402a0c0b2e84b85f71112c476a4357adef5a7cea0c7bccee7588e6442435d39fdbf8548b92b65f17abd7f807f9d6686d2aa9a2e7ea8655d8b02d482fa83b7ced2fef5107785ffc60683eafc56c67707d6bfccca744b925e621c5cf00ae0e9adbbaba0304cf3349d17ea77a84de20cdd10c1d0ea78fddffb628e88e10ffce9285a551e16ed0d94b5ce9443cc199e5e0588302382775719d134ed034aad019a2de161422c8de77d2b11ab881072c861e0a41aad1e9c624b46cbad5ced595b99e793c9161e42cb235d9e7520927b4da461362a5e9562d76dc2dac7e4d4423ab9c7fe93b26870e31fd7b891dd16d38a7632e0ed19509f067f933c6e8481467c8d9e0dff3ff682d6deda492a1c7c6354386637abebcfa80e1d259d2bd2f89ea5712ee20b756396266b4d7c3496005b5856d82c755b5c563d562a34911d954f4b330d468b13412e0a2eff40896b5ba8062cfeb6d91eb82c5e38d60afa4cefd8cf6057780f80835753168ac145b23b2ddd54f4bff224877410bfff4ad6e04262039db438a5edfc840708977b29017b89dc427e1daa591b1b4474c293953e639138132cab450e36f8e59e48820cdb3fb5960b2ba001e983a60705e9278cab10519438de41437aea08f315ac67e57a247637cd094fde1dc3f585f5967820acbacf7760919817e3b5b175a26f828aef9fb08d6efd7ec19d007a2bc545aed647cb9f280719bad4263f19f7fe961f7da8c564ac7252edba80550b93a3416e81bf5cc23e89d380a430dceef2cc1aa851538c2a0cde2f8a825a529594c3f844bc41b4e284d110bd022d78a913cf2bd55cb3eab92f997c49f55be1716dffb9fc39843eae632eb138935e47d9c4c67b43d7f0254ed51a6089539d7c20c47d79a5e7ea968a28f8301e635ae3a5da51939bda3cab6ea08a23ba9d3f69b7fbd981b483e784052d335c5d8071e1c06e944685d31cc5c5a081388707cd4dead15916a4c01d88b75751457582fff39493af14b95ec02a185294ddebc0edb5223f12173d3e04f50a9b801c9afd9bef3e90b15401b45b403b18c27f4c491ac8fd5e84a3cca2d41610d986b4ce46bc8654d15c6464b3df3565eb641ce5c7afe3743f322b3cd7b016ed152b57965f3dc2aaef475d90e3a6cb9103a823f593a7b88a1c30464f3fc77fcb3a19a59362bb5a6fc250172a433d20f4c8bc615304629b7cc7b8eb230ae60b37cbf8998e59bb30e0c729f3682bff8a625b183d54daffbcacf421ce5689441b87103eb054714a39aea0d5ce5a7a1f01f9d23032fd9768e9b6929852819401ff87d847b6ff270a89dcb63b16b4d86caac42750905f706d5f5c997569ee908aabb10e616f7c21ab93bb9ed39e10dc6b531f06a9714057c4a9df76c9b9ba818d276b3f7f234120449e59486a8d0a040b07cc6d56a10304b0b24d0f1ad4fb410c711386000dad726330c6dd8ed4c2334ad4e7b25633a2df4a903aec6a2644c1c2960d96c6dd4b1fc5fa5f5bb81912631b5a585b4bed091ed7711f1b6a01cfdbd04a0cde55c8d11a16235840fa9f16e98a68f2ce4c7b91dfae67a8ddf9e8430546567f8d3a216a4d3919cd64401dc0e27b139cbff9b4fe4e666124767a3b854ffceead061903975af805869b629b924abf5e157b3b30ea13fc16c7338b83b822492865f6875f4096a59850604daf7905e017af0eb16f319c4f567be73088a73f4c279477264a8bd6011b9192538c9959730f722af85a2d7ac2f55e526ce01290067b9cce4e2c285c557d61721318df1d1e5f85e233f85aa36d68a84e9989ee2cd284a99923416b53303cc27534c61698f3c64adaf7ab0306ae35d57d952f4cf74774302e7c521a4d2e6f1fa0a6f1fda2a163af4b457a37f4012e89bc383db5e680c03c422c4dc391c3d6c1b783f886324a656caa0638f48f614865154e61eabb558d30842d9e23ee85e8e6f81aee61c0842c4a39c732e75afdb8b1ad34ff0d0c0db77dab249bf5323b5bd80370e76fd6da75e7d5963b534cd5ffa1c5ad7b1f7b3be911620f3ef7bca04c29cd019dc0dd003b4e774deb38f5bdb0f1d3911e8ba654a487ca8002827d38a09b1cf874ad49e76439dfac78f99aa66b4e6bec13f1c62c3e8b7db2ea81820d7942b67ec5f87dfec837c9b6b0af382dcfde25cb10ac4672482e93636040741e8797bfb39c0a62e8c3effc4bc665a81894813e850c28b7e2fc5a6bd2f79067aeb0d564409761124a3eeb34f3cf825462ef38753923294361f11084774d49f358027951ee6d7f792d7a6b671c369b17cb0c12961ec52028a80861ffd5f03f711f36004fe5ce3a17c4fd5580070222e7c7fa60f977edc30a12e3ebf8e1c2d8dfbed98b5ace424f0e3b30641dd8aa6a4528e744c9bba4e15a43d627c05334b8134d54ac6eacda4137100e912d3357ca24389c3faa85f52889ef435d2860aa38e5e1fde4a57566996c70b1869f6e3de1533420a32aebab24d4f133e102136300649a6624f2e879f8e5a7844c3c43721c68146cccda8b4b94056565652033fba58ac900ccfce1617d0024e5cd9189a31c551a88a641966e96867d42a12f8a9ef8461ee33d337cc287e0232985e29a22c4055f606a9d4eaa59b53b58d4dfbc4a3a568d36aa0cccec1a90a23d4dd09cfad22bad7f324d09eddf1216760834179e755ce839d56697d0deb5563aa29482611645f4de03aaff5e90b2a94c2030613225c240003b1ff421b1938b7c69821cdd8c3464ecb765a4bd38cd95a3fee800f73223607a8e2833ffa96071a1e384880a9d6f01502d62e1155cfd71538a02e90a8674c3b1320a9240c43a488fc02d26c580514b9dc4f000898f2c195a3412e92ccb8c826f7947edbb97bfdfd7bb11f665c88c4761fb6be281a14c6ca79df38261a1083feeae5be1d06658bdd7a172bb12d24d594ccab9387a8f2507933984d2380b09bd20fa925b03132c2b501fe04d1f4956d7fc0acd60243003b12ce91bab347570941b6057c564f0d33a7fa4ba3ce8e943103c7631c3258d2907bed0dad3e12b87a3065618afffed853a492ed4abd333c76e4935bd0d0fa86d5e9198ad45fb48ed3183ba62608ca39a9c0217439e9c1d091a17f489c3d8253b51bfb7ab8ed1e6531bcb68e046d48f6518db07c2093400bfe8defcede8c9de31a194e596efb9505373a147c8d5d7e373424ab3ccab5f203b4a8243e531026f6bdb9a40c1e8c52f1efd680462b312955b0334ad32ef8ef53e66927df2764d71950a7db89030469b6552e7ab637ca50ed0b3784060845b410eb0e76074c5c67bc39ee7d0648b7e8130719315a71af62c878aee908f3988b3026c8125a6a3dc9c4dfc3d2633ac9a30ca35152d40bc94e4aeb1853081dc79bf363292604785c517a9fd5b0739426ed7012b612771fe620fcae243a32008598ae6894ce8c8d346915386c0e98d5432be64aa97b56d983267f28449e8151e4bce602b47f0f3ec8b42446487f7ee4fc80e805ee1be05110ac2bc3ec2fe049d0e33417c0024e6b4dfd0d803c740fe42c1b787565f7ef6e83e3e780fb1322cec89fe39d354e8da83c47043c300fec7e6e163f74cdabe4147d6f48cd25682a955d622a9003ec0c40c484a2c4b8616331c5de56494568a4681e0c645d9de23a136d8fb095c2775112210bfc3ebd89f972d6dccadbfbe4441af85026ca1f738f4d57b58a082d92aa972d0a4b888d2be5fa4f35315ce298f9d2153f1b6274dfbc9182316e286a0fb47724fff60bdfcbe18655eb4e436f9329755b42d4cc7839304c030ef9b483661ac9b063855ff5645a1ca47d15b017a0face48340fcff4eeeb457384d903b9e60fb343b77d4034a1fc4ebcf7dc0538a67ec39e12261fe3e45784f669bc051c25d8b1fe03870beacc22ad2d619fea9a7be7f097103f95fa0160655c16229afda386d75862a6e577838435b64162387324f53d7841d8f8dea791795d57f104c5fb445a701ba66e65a636f2400a008c924b21f92ca974f92f06f1278ac3e1db1bf7338c8eae96efc7f07b551983386d1262bc90f92f9897465554eacbc16d21cf229e8fd5baa2a4afc85068905edb6fc96ba3036c7b65dce1b8cf959a0beecfdae0d28bab69493455f8f3f0b2e836de21100078ae0f4e744bd2323d992bef4e9fa2a1690df72ef70456fe1cf1d8c0eb53463a2e8edde2dcec818423c71ce7a02f34a4c289bdf5272352a097d2afd1e1ee1d8722a6ced3287380ea20edd9ea8f54376e79397c2a542de4acea4300ef8e4c6e6c0804fd7f268ee2923467494c5ac0143e9856a76d7c9141eb20435b4c1b2b7495223624343c34f831a3aae13b007133b1fd76a68d7a5f6c897dd0276744db74697eab1c571bb018e41e2174779412a8afb84b1234f9e09f432d8fec489c0d1e8992f3d7e044ca0072cf1d096c443297e0958d8f99698795b81801b204fbdf5681d0c3bb4aa73324758e40e5c6f75f5cecfdf19b5e73c5e6c8a1759f0922fcb8db16bde2d315abfc45cf3021edea75d60ae6d02b01c99eb52a8f610816f73d7b69d9472de3270a3727219c674ebf4562b6f9694269051b38caa2e59785c0c748bcafd37bf6f885a00684b0d88f2a146bfd3735d926b09af81255d340efceeb7a5273194715cd8dab27dc2415365c5287517a53ae2cd3dea9c234cc8a23db37724ea430b760bd78966b31d506ba99954c38504606f58185a88c36031500ba8eec66ba1ee0624a6888f4c8bc0a4761996aaa96093b38b46e71ffe6e687851baeb8ffcc54b542ceba51655db7d013112c1fd5c315298d399325dd936214eea9f80388b3e3fe0d4d3b0a1e767d8b5739eb4ffdfeca0fb05295a12a99b914f9c2e876dfa600e2f248e09536e9a5b366d892e02330fd243785276431c17b04d9d716cc25accaa909916e55d1fb3b0376c7cc69448148a644950fa860724e910a0379b2be9c3eed9ca5c3729195043e67c7d40fdf7e2d643260d86bcaba3bd1154c6ac2012fb7c145452a7dac9886a3a5aff4ae00634e6bda15663223d974c1259c90fe268d60eb8d9f7aa528807e7c83a898473a8856f0772ce32982809b8b44cca81af352405f7d93005818770eb762b67666a358ca2e2a0202aa15896f7b2faaf60408c17937e541b47239c22b9c4ef59868d765d7cba7a7458ee82a1dbabd029c361ae9e6541c1af7fc614a5585e5a04f0dc8a98c297821d0067ab928b3c80bf0890cc826c4f6add9ac897089ec6f5bdc24a4e6402d03daa46cafeefd1ed28f98c104ef264a07c6ff8ca58fcf8e18458de79f7ca9b95d07c3ae39a0c8712ce88a77c99f15d34219c71fda8edb5ab6d610401307a4ff04cf187eae7027108578031ad70a6357c4bb1841ccb8c30b929b288e7a908cd3fbb11524f43e31642470f4910ff15ed2064284a67dc5acdc1f13230c771960a817ca0ba9fe3ca309fe86bc1e3451d5e73067d3204b062da2cbebb34047e773ab0f9ef432b30da746a3fb2d48605506bb8a2e514e8d8a07c0e7efd6c09d04465c9a633ca314a719621dd250a298599638b7fb8fc8eb4c030be9ef2709b06783a66708a4a8ecfc6d9bab4ef3612cc6e2f0ccb2433d5072f6b15a23ba7f2b644065750128545a50265b9c8cd38b66fb950cd618e5aa49b8368b54f4e0d5eb60e1986615a3d4d4ce91205f2481fdee4a50edf94421abb6ef31a0405def6790c699014d0e7484bcd593d1acfcc852e0fb92536caed07c97603405514ad975704b57cbd205b1e4af0f7ca7b3c9d4772426b75fc96f5a53e52579c76d5f249264e702401e86a9a4860d0fa1b2825a64869d73548a39126a5a09493f0e10e7db2f116e8c2db17ea367ae817c83d83009dc990c097358198bde237d4a8ae0f26e75185456f2003492bc50f8314422737f231ee53909b56a74ba6b5969817bd32645f04f0287edf3f14e1728cc98455544327d93859b0afd6446704a86bd74c5aaa080d68d028498f07e596077ec6947db8bccd2cb7e5e9bfa18e6941c1934c35d61d649e458195a0c5bb1a3ed40607a73230e380de1df2882b75a18165396ee4c155f6da4935580f9d45fbfaf7ef00a7ac618dda0e45bf688fee12134d0581a7c081659d0301b6839ef34365e0825c16088d1ff88f3fd7e122a35c662a6451a7b34da58bc98a57915cc05516bdf2c47d1c7c9f9fdc9454a5bf6c59ce44ba6d673c111c621e8c89deb000cd18a306a31593a9105c83f6c17962c7b6197a87240e3d5e5bf279fd8afcba5a1b17dca8269283d80729ecaaaddff4e7b30cc4c06d1a5f89aecf2954bcd638fa1a624b4f802c28857af62b4bcb248114cc1ba8a324db7e7a28795d0b9244e9e149a254243eed9e57928257620b55d20b0f637ba1d18e80ba2829b8db9df4c3dca047b773a5be5f27871552c0121954fd436dd10ebb14f4e0c7d218bca1c3664db2187838c25172a8ac4f636c910dfc1f86faf900ceb6513e0e8321ef023ae4c0cb2dedec591393a25338b72c098b753a762f80eaab14f365ddf35663dd0126da6a062ec403c147c35dca77f8b7e00c01b08895d613d0bfa9fc032a2bcce3f6528820eab2cb9036939395408101c7896a839cd00e3d096571d84f6a6cfb05c3ea9647c1e3eed23995b29281ea89f477dfbf7324387586af53089f0fbaed7a9a6147ddebe7137b173aa88da2a6e38d5b044a0bf1a37c720ad3d6e977a750b46f49a14077aee2aa9126fbc0d41783bb2a7726baaf88b3d99a26c1077dee0bacfe0366df97c4ffe4c7856ad3627a7b4a55c0299026799dcd518d5d1431a712d4818633185f3611df2b8ba51b2b320184bc113ed2bc89b5bb47b347517d92663cd426326d6573102f515e2ad86ea1b05fcadfc972b3ae836e115fde2bf0a469d2dbe1a9f7c0b43365ca9072f23e290b819fc0b650e68a5003ddd38b583fa27729d9597ccd058ed7bc06d5c75e2be420cc0aa89a3e547479925d702b39b18532541412c70beb5ade2265b92f429afa072df44a289268083c8f236efc10a259768ad38b56c1329d0422f11b2b05aedff8b088df01c47a21d7dae21aadc84a2e9f665d10a22887ddedd505fad5b385a8aa3b02872f1be9f1d16c2a737ce0d75d864725829904d8d74c01f9e0129014ee007e56251ac02be0655ae6531782cf47171e9a3b427c19548a59fe3dfa8cd2733449e766c038e1dd734c1bc0c4d8167a6ad59e3d0dfefd53c47313a09efd85c981e7033be03ade99650fbf8c76390383988ffedc3b020ff9e5ce802fe1f56d069c7a75138dfaf1103380a3f96e851815729b71dc576e7729d59dca4ec7ad195e4f3bb170ede43a527e6e68268ce566bee0c9ae4b02a4aca0068b82f51f8b0bcfb931068d5bc40620d5b0f577f57a1a0065f4d0d5a61bcc66eeca7a8f3baad2803c09dbe029d476fa0237fd42f454ce199fc61d8825e89d3649b8f7b46adab64bb2881e0198fac42bd554ea24902972e1b97e9ddcf12984571b1f55635e4c3e8ac195111afc1641179784c0698a8b547244868a163a87f473a6ebaf5460847065948fd00348085d88981c1cf0424fbf90d65f686577ce6c9f8c827d678179b03e9bf41a7cbaef27c9eefe967721b5e1a93fc6b273b46e2c5e2409224f58edd86796a00616a2cef9248be53a49c9d6f0c6e23aaa21accd14fc7df70ef399f79b92842605899c56035c9a1a3639549e9154c664ebaf244d5cb938b2e8a3e9592b1184510e337a713dc1caa1e1508c84f357b88cf19d9cd9a709ac9ddc168eaab30d3f057ea4e5dd765b6c02f23177bb1b3031dbcb66084a57ad2d4a2579615d24a88ecfef4cdbb2944ba82ca1d31a661eabf19264194b3098c8dd9a8620b74af417adb3bbeb3e794240d24b41aa6a9c389b8f5d5bca0ab1397e5bf523661695473f2e4371888ec92846457a8e825b26ca64768e19ae11a45b297de4075c2b1df8119251cabfcbd3a0541d5e4ab0a0d94aad2fd5c0b887de48e5f70624c8e8731c2f55df906254d2f90eaf7a334934876f4011f25a80f818551a1142b25d061801cff634eccf01c873d92d3f314b125dfa3e36fa0588f9a3af985b86a8545b7a4a063130b2238eab9f333060b30640b94107c0026927a1b5ebf26b808349347d1ba4e43b23da78095098a18c30b3baad119c83054db6bc71d3fc0569ca05b80b9b0ed66d939c8e9b74f9ececbe7e611ae7a4b2d83267411856f1421cd86cde75adc59ca2745abd6c6532075191376a7ad75ca564a45e19e6ea8badc4ad8fc0ada105ae4edd83a88fcf67098dbdf1ea58abc0575d1f9dadc82881da42945934e5349331071f5e21e74d12105ed4666a99978874c8c61dde1dcb98d8147a3927cd06e0e2394c097a115e0fd8f0d509a388f13e4f44f56c034a98d37821caf8d6c494295ca7a38db04ee6c03a7a32604c9f651db0c08cd982ad15d890108b48e45ae161d9f28409d2fced8fa534fd9d88168c89ab62ec669b15d45eabb85a893a9e60cca7d910c22bc36d9cc7b1f52d7c4c673d2f853c652808ce2b42acb4e9887ed5c21a13e82ed5d30a57aefb5903231a64e4fd9850691511a405bb6fc19088c12f80b589771387b6f2cb1cbf64d3820a8050f52047402a9b77e4c7a6eb3978c6c268a7595f35259b721801855c917dd9d37a7d7ec1324ec00fb0861594f8500fbefd834a69992f3d52895a1286f5794a54eb8f1f1df7242e7f430fea2f54964d89a9ca253c3a80774ba4ba485af2c9f77afe7895e292c67767bf9bc30dc470b89c3346ae28da69c48d0940896f6e4112dca2d58bc2e76281ea3037d592cd65500c22397fddc3d88c54f588b8d7d6618c9bcbb52eb7b970300861b327ee649d44874db3dab730271e4efd13afb76367a6c307b641e2da45587032a4da920de7fa49798299eaa722596ef6accbb83e3651fe90747c44646b4d6b468ebe543ea33378357eceef276f51f8709c1ead32f4192c2a6997c726c57ddcc5d9fdd15398fba13125464e252cf5398c6e14f0744ce609b27782563465719451bd628ab5d01aa3ba5269e351dade1b82cebb8ff1eb51347742934d433b10d734a56ba3117a692225ddf506b4b29b456b8004e8a82dd9abf6e2327188bac390e1200cca51e5c63a2db966ee0092d0c342e2c90e44d8bb41a742192b4e1d352ffaa815d4d7d3f01befceb0eaa8367da774700329ce5a41d0351020d3ba7921c97d34b4f83a28f5f472dc522b6492c4e616ae3fc3be3f6d29a50487ea7822f7f8cba5370aafad09a9821fa6019cdc88d85c16abbe72427f21ef80cc713151129cef9efec722d15558da60a83ebb5412829c95a04dd49219b605086454cc16f2ce8db210b9c1082bd1851bf107b4377e4abec65aa5bdb9fa7938688b60e9bd1b02397e90956884f4638348cb4327b10a8695084a547a941c65584638a011da57bae95b93f520a11922071555789af5776e2112da400a698c1b43870728b4afc2a0af7e26db1da26e34048c072831637ca63cb09d3e880486210531756661a8649d0db4c4359bf3a64ebb1c23f22e0c9ac86d7424e2097e681bf989acb1de38f37c8a229d2b367fcd5bb92a6fb9ac485350c940762b558cf312e0f25851e65086985a78ace08bca9fc9a40fc4945860d1f07ae9e0b22f02baf1520bb98b59c4f0440c002ed16926e71e7b821c2e8e4ca5d01a80a1e64f8f613c247d78c7f37ac093ef131e668f21ca4bf9ae86276026540c3414851e0ffcdd4f9bf1967cec466842a5111dfc50875d3ef1cfedc05e323c6c082ebd258244f35584df4be011e7ce79e88d5e6f5451f749e045207ca5b06ce4cf37d028ff21737f3ef2e8b7f36cba3386a99c89228aefe7431d8c34775ffaf717460e0b3c71f6a2c4da84557b3ae02226cd821ffd189e268479d92586dd24c0ec44d76c4d8f128159484677c6f59312e512b4228150077075dec9715c7c1bb25d06d5fb085a5f0a5cb725b3f436b374f10e8854af2e652e5efd27b7ad8372abf52ea756bc8c7718ecde0b74ec06590f1688a393e9c89d7d59407aff4577f114d1f0ad56c82c97f6ce72ad8ed000b229ebb1f8a47e6dbd5387ec1e0b5d85fb590f62b27a830762e8d96916212dfe415be0884be5cb77a849895b7ab3c6f206f2d244c4edd6f1dad9655ce4ad1a1375ef5ff37a1badf530a497031fea30d0fe8fbc2bd59dca9fbed26c4b00da5b25145fff370ba18e074c96ed3d01c88273d480f4b680a0ad27792f5308b835d1d567156a351be5ceb86f9ca4dc472346853431f65aae8df0862f902a3f928fe8f967f9d1f0f81b2a6830ac32d3b3c352b669bf11047c21f8b627580696007e088eba1c909b3ef109001968393e9eb9260e48d7996b665393820f3bdb52bffa3798c00ea0e0ae0f5bb88cc1a4e51fbfea49d49352a343df74619639e452b4380d6b6225ce09bb98b10c34ba42fa17c8f484bd8d01bdc14e9687a2097e58c6857ad841cf7d218aed4195eef1c116d5915ed909121d9c48bfe71e22961ecc4a7bbeb64f1029b78f89eccd4ab83c5c28d96302cfe8f9b94fc8c00d40748ba609f6ae0e8166cb01d67227ee8d5a0ef005866b2e6dc0f69b7a12d6d239722afc0cc75f8dc150dc37bafc35baba23e9113666c94c0e5cef02da00fe665c3050c24a07b686eff9fe7be36964856de2adf5fc33efcdbbed69642a142597d22674705fea3ccdcdfefd15080883c1bfede2b8cef33e067fbd9737697091dfa3f4816e0ed28a4135c172e5468d4283904d24217befbda5945226296584068e06f005cf9aefeeaee292513b864758b0eb8ee11126a4d8402814293e528f8f4ffca93db0e5e3d8f0c499534a29a594f29347e06afd4ad197254f4cb264a162c7cfc05a2a2588b220425b905aeb916d891809f2323ce2253c6282f008520c5cae254a5da1121ba8a1490cae90020597276c506485acc80b36d45a6bbd419665052cb4233628410576614b75414629b51264062ec0e8a0040abe9821c2a523e2c5852d44804011c9b2c296d48ee111222e46c2a8940812220a91972486e8a20591d760060f89d4c044b52534c2c5de760c8d6041bb64701eed2327af61c5c8272b9bfc068815fa62cd38119945281c1181798dfbf3c11c3026c91dfabddfd8a71f0940f0d39db86301b973bfd2bf3a05fbb402219120c9543942e8e903a560ff3ebef5e7b73a70213347e094b2e51fd5905043c28f20773eda34e7a5614bc99011e679b4a5a71ef53f78b4cf7e7ab1e301c29f47e87efb4d03f17cdb51bdeb1bd4c3bffaad924f9db6fcfbe42f9ed23c555def3bfc5bf75bb7e99af999166af21bf9de979a291fa5674c7efd51bfdbf07bef6920aac71f773aefbef77167fba96f4cd6af54cffad8f1dc5f45bf99f2bba21afb413bacdfeaf7633e4feab3f7ffc1a33deafd7d9000b43df7a92701a8fbdcf1a878ee7bcf6308bfc73d7e4fd7d0a73942c16fe4ab3e21fa424f617df2575f8db522bfe6afe537f204b97df8f831c208efe3074f0d09daa73ea5816cafcdffc15343420a48e7fdd437ead357fdfd4df5b1e3e93cd557333f6807ff4653246c3cdda79ef270af7dec78b28ebac61fd5f47eb3695f8d6b1e717690e92ff88b3e83e4a79083eac44b6c71862c3c852c04512da1620a8b74b18512d5c215162993642d9155296961912943545b48a0458b169716d890284486e43034801dc3214384d0c043215f422162b0d8e25cea42c85d2a403660055b745589c0102e8ea458614c15499439022b31546bad35e8890d5a98e188172260a0816361a59a00c9142a2514f2836a0ab7631884043658cf2d8fa1c8ccadcccad483b86024089115ba1d43a12db284429c844178505171424828f4c410550fa150984d770c859c5e494b5d1c352d75f1e44f3e8f4c2e9e6ef0e40652364c29a594524a29a5d4c7dd55f7d0f7138236b537dab836dab035daa81e6df88c36a68c36acd43458adcda2ea87ac7ddca14d4d8b4fe3cea4773af04b0d62d963bfd22f020603026398ca07180f2e1e7870c518e92ba33a0f8afc1d467daf799fbb2fef6ff7359eafabc18ca70e5b74a968c8d96a30aa6ec8f8c1d89a11cccbcb776945a55d6bd09837f52fc639b75aff1ab6644f969e37498e64efbdf7031aafcff540fcb27beee37b519c8ded5d9be6e3471a5fb03e7eebf57f505efc8a95697ececfadf9deeaa3f97ebee6cbfbe256fd7b8d17aafff0cc1f8cc67cdd477d1398affbdd97e3138147e42067dedc9fda5ccd9a83ad1a84edeeb9d760f7f27d60db03b0ddc3bd46414e83b0cdfd8d5feb571f7c34e6cd747572769fbd86f7f35b9ee6fe82bfbb2eeff8813c76cfcd38b0e6f2a4334839a73ba5f553cd90a3ca498e1ac4164441f524c7afa888bbc9f946b59ac518638ea07ff408a2b0a96b59c0aeb4312a107d4a5dd564dadc125c315889553264f936f315ddbd1539884f73f8a19bb2387cefa53fdb122ece16543664f91163016718651bfa0a2242554354da94aaa064f9aa26395ab6cf585327dae8500fbe7266f873b74efc58870ce6ccc2bb05f3e90a21044c446122b67d605e44982f54d6e23eb9bb9c1c9dd487592c55940cbeb42dee2124fc2bfc4e2a7b4e83369b067f6bee9313029011444fa66c9ff825d3a9a824736293150227edfacae13735c76fbc32997a59643056914159248be635ba1aca949aa9b3e7270f8a5c3f078f4a4ad600073a2064c2049a38e0c41a8c5ebcbb61f50fa51239a83f3b28f2a0c8d55b5bb54306e393093f471307ccfef5e5938903fa7c90a383b54f54da120725c4386d9fe8b425ddb683b883776ade33925e88ee7e23ecb5a99a3c58abbba551b3d83855933c416ba7473a9b3cc6f8443a9183f8414e09ae11f8b868bc5c4d24f8369b0a07e9d15a214568929f94f2b545f0814da5f865cb1ca69ce81444a50f91b3e7d7eac260a49113593fd55a1de94727a53256d4ccc1b236b1c1a2d29e5f82cbb563a491f3f2c9d971c6199582ac74241ea9475735512165d78462db6a8cb17e4f047f7cd7a7512543cdb5d6aa2a3af22eba70779f71c6a8e37c2dd14269ff8e4b366081ca921642966e20b4b445191593133859da22ccd2165296b438b3a48597a52d8ee4b9fa9285199ac599253ba997d182a169b48efa4ec7480ffca5cedc41196f1fa44ffb3ecda7ba1ddcae5f6ffe183aa53b1de361b474cce5b764e8547d540782fc9e4c77dfc95a730ceddf82a15352831dd7ddb8d5686fdc1735cbb9bbd380744c75d5b3befb15f552fbfc81306c4e4c3e086353ea8a36f0fe1c2e2727268f621284ed2c9359d63df5b9cf1ea4948cf4c0d3200ccf0973a2b1c990c145c61fae02f7338ed3944cf6813f53ea1afcf7ed9b40613ce5ec34f3a1b1b9077d68ecfca907615cfeee41baefabbe56e4403eee40e0be276b50de6e07b7b918b4899bfc6d1f1a3bfb94fe9974dba764a4075cf69ba664eebdf4696b599665948c5480ad2df952e6cbe82f8084113023603c5841ead2a5051e98881c21c50c12d3d4a0a421d25191d912134a094355a09452fab13a057c28af56c84e29ad7f42955748f1b2c1bc0398edcf9a615c514b3921688340003bb652a07ef1c6ff04f9f3572b64306f8f3b483df44fa01a0402d8f2e5fb64618b1307e3d734fc1ef16b52eb4c0d8c7f42d08eda6775f79f1e71f6f2a376adad9552f7196dc8adfd0531a53eeeeea1f5cba4dd52bd12387577f71dae6cf72ade8ee10e471bccbfe56bd0050c9ee032c51151762a912849e0282b38726b142e5a9422b2283ce42846a8284bb8d58ee10e4c3215bc2b675a466aadb5aaa046072b8ce84045eb1073d90006a534cc0b8a029a773d7d4a8437e4a887ee48ca102f882830d831760ca39ce1c4107941f8b7c35f7a6bf3af8766fab5d3515fea9ef9ae757cd00edab2bbe13fbd46c77ce9df0ef7efa13fdf236b7271e4044a0f5e09bc24283b4081e2557128394031f288c8e06f075bef7a98e3e0cce5edd873900225a6a3b4e74f60f2e8b2a7174f2983d189beeb804f3d21b2c592c1fff9fed1a5dcaef99a1e963c7fd21f5cae212875c16056308651712a302a5460545c1e0f4f6e60e1c9912650c21bca147950e80d2fa03d0c99512c8538844fa27848948510872316bc1c02b06378c3961b4ab0c1fc61a5315f8e5361517274d720b765a47f657de9ed90e353d7645c2e1d2875c160de11c6b018231055784064eaf27080b93c1c60154a788313cf86549c3ea77c7963ca1778347834601df61d040722e2d41871688cd38319e38c714e2d260c5b4c3d91278e7dfb3a3268c3e574e9eeeebe02954e44448964a42f78312fe6c5bc9817f3625ecc8bd16a2fce7013adf6e29bf4348d68b5d7263dd16a6b12ad54c6a8c3c0e8347f4e4f05f91337c18cbe6cb0b5cb782ce4181a99098dc4d420c21184a9a18c4724c7d088291c8119a3a41ace784a92c418e97456a6590ac9d9964232f684e4eb09c9d61392ebf68464baa590ec5b127942f2dcde0bd91392a52724473add5b52ada7c44b8293c848dd3d2207c14ec9608b53024f6e208584354c41c2850db408af498c71460f06397f98425e933cab9063229e84344c2f06afc863e22df19478327832784406f83800046c097eb0630d463450d9b10b429d52f79064bc63484311cf051a567857e884ccb63b8634086df061f387cd2b922318273063c480710273c64c97a62e60be7469eac224e774a7b4ca39dd29ad1d704a2bf8c1c514639f1253ae5a7b2fc6d9c538cb346dc35ca669dbc6711d93c66d1cd77528548ae3502822b2943de79933f3c82472660a9d31d3d405cc972e4d5d98a49423e944164d3733664c07c00f66171a73e49cee945639dd29add5d26aedbd18671ad5349f52bb38cb346ddbb88e769d4fd9691bc7751d0a95ea50a954ce2a95e7ad58ac172f686860b468abe553b67cf356a04dcbe9a4dbbfccd77caf850ce26d25ee9802b8d81ed0c5993367cec0602d1a64a7a24c9e5380ef44cc065fdb9d4801b34ea2681283e1c9a536c822733b864e9850d5c00912f98b40e2b99559ada7ff9c43d1fcd7bb5e3118cdf71a5fab93a25dabb4428c999c770c9d1079391172bf330491e18cc5028bbff7de2222f326e2288ae17cefbd48ecbd45fbde221af67d79a4b47e8c261519d5221c9010e16a71c8e0946576880c62ac0c645cb8a2092b24942b963c3dc19e5c302c6102850a263808a98289932255844c846cbc63b8448b31ae316488a624516ac92c668aaced182e79c2b1448cdfd850490c9444b1c1874dc9d6c2205b6b65dec48d4349d2bc895b09d3b6a112268ea86210468a3061c2b8c0c9c995844a8ce905b1a52151c4b20c45112b62481461ac877d770c634761ac684726760c5f489a35f3d61af8ebcf88d826bb766d31e579336d9324b3c5391f47fa81a4333b6811c315474f5c28913911836b1f5866e57c0320382c4af4964cb36388c4850de677337509a7ee1489900bb9e565b67b91837a43870c624d3c846e9c4629fda1318946609373297fea769be6ad6de31abc5f3ff59efafcb14b659aa2344531e7999c74cea094f4160c11434d56a53f35aa519f8c30a39e035d14455139e2466954d59103f91ca6bb7637b2ebefe3da2eed67fd43b0b162c50b50d2a5c018638c2ffe8b31fe8c3ade3efbfb6537bb599665f8add578be6217b5deedbb1a7dfcf5f3806bf7dcb7cf59ed448ef355756ea1d55201c6ad1c5629da200d85400a8570220495dd9a31218c6c0f8338b3dd6bfd49abc6f3e591c9606b0849fa9230882e3b8655c06c06ec185689b2a50b4faf05593eae1afcf1ba44a63f26f3e8518f36fd2934f5787bfcd9e3b7d90f02e0f7f6da336034766b8379d78b51349572f7d7b671dfb53babbb8bb1ddbe8cbb7decf0663fc319ddf88b74dfcf86fbfc7bee9b9bfba4980cda7099d59a228336dbfd3d1964fa9acd7e7cc769b9dcec3b30e77cccd9f797ee16cf9765cd97a6f37cd50c7f3ead6de7bdfa87da5983da1a5dbecd794492f7440623530eaf91fddaa72f8b8c9ec8a389b375a82df5f1552a954aa5ca397339e7acf17ca99e53a93ed4a73ed0c7b555afda72563d4aa2502815eaa5ac299cf7f7aa2f6bd0e6633da7c1fc9c2a7f208d9d7f9b1cf7c5f9ea3e306877efdd8dee39b97fe6467171be366ecbf16690e383b22887ccb9a599a4539e40f366fe90097e332307dc1539fa8dcc7233b2d5b0cad07dbbc5a94f90db07fd2b41d03f74683c76fd1f3e2414bbbecfed0f4a2c3a64048d60d7c711a1d855e30bca3f2108877ceccffd06e3ab4ff3f9b7b2b2efd784e07f3fc6df1badaf5f7c56fd1839a0f403fdb31df8cbbe21104c7b7bbfd17aff5e7cfd50317290fdc4dbbb0683b60e84fbabc7dfea555fcff6aa4f7de0f6a9f7be9ad6c74df3343ffd6a5a0fe3e3d65e67c678edab0961fb18bf7d0c5dd3d23882b6f73521c0f8fc303e7ffed8f118227788c4b800b0be7d198f617cded37cdebff8c0eef1b3be1ed5c72dbb1d417ba5c1edf1ebb80cef73f5e0cf1ac46f3ffb72be9e4e737a7638ee635d43ebfb7782674f19fe1fbbb3ff91fd8fdd9ad376ed23023beacccbc98e02415866e0bf5d05e8dfaff321370efaf7bb4803e6822a3f236883aea983401b47fcad33678caf48754f7cffd6d4b8d41f239d52aa4116d5a0d4f2fa471a377dc29f08397ccf881cd48f47fc720a720730ceb9d5fa7fc1268fd7a0202c7ed9f3a93b7164ff8e210f4d3d9cd9b01dc31e90d854ca0021664b5c1f83114c0d41db1ebf7620dcaf92276e8fb1883fd7576a335ff3c56acaf261600e18c19440e5a6feb1e2165b74dd07374fa966fe5cdfe3b4c7820cc69c5d7fea663dcdd7e7e9e1c1f8cabdf7f575724c1ced6b7d1399fbb87770ffe275666be2d0686c33715e686ebe268e12396e4e73ffde17e70bc6176707aa8ffbfc719fe21ef59bc31fe634b8bdd59c9337a90a526ada6f52dbde3f1f71d3dae701d80679ec1e4dd3206c6b7fa5ac916ba85eaa2f7ff1f3a0c8333f17b739b58e77dba63509a33ce4bceffc4c93510ae152babbbbbb7428e84f6d1d8089282a682591e33d3142490ef627bc245cfa4fb5326943d9ece8dc77b74d6a8bc11478e463ed53d8f2037ddbdfe8bb7d97196fba6773fab6677bad03e7d6e497357d8c374b5f7b6bad75b2c1fa3f734ba7d75a9e895397f8eea1dd0e70ca987c307b6b35286376d33f735ffd33c14c5b0b5ab7f4ad0625d5353c9288f480bed54e41d5a37a2ca62a8d2de52cd6ba1b19a5db4729752d5b900ab0f7abf75dfdd46779b6973f134bace99ecb02237d6f5abeac73a335f7bbaf2f5b901ee0af5aa76584f9c7b77cf0c7f7f6f5b3f73ebb61c913a394524ab10c42cd7c254c35f241caee60c7704a991d4e510aa73809a778d9dbe69ea42bda50cdfb1decf87e4351da377f3e4f8d8c56f66de3b22ccb7ab488b38ce362f470af61e9e0b603eb4d837373af335dbabb7ba7411f1a19e8aefdc1cc37e83aef6a838052a8160452edffcc1e9a4f61fb07faf69d8dd1b48c67bac77f47f6f7ed6fe0cfff4c7f9a4df3b4ad6cc229af20463032496d37cdf57ae567f934af33e595495ee3f396fae8355615d0b47f600c9d69edef5b1eaf2163351a8411486020923eb8fce21403d12771820895448a988454820149a252912588a6107549b420a24940922824134411062fccd8175ac897b263181e6d1a3b864b56ecd8e9b0fa95a3ce66801c3239d93326a5545eeb33840c6cfafe815ac7b77be8cf2a7fbed5597b92959895182ae704b9eaad5601326ef94a05998a8d0039d2cd955b53caa90790a503369d23b5d4ae9ac85fae223c8d3f640198d970c81d0000e4486d6ab62124f9c11667c874644e6a335f1c954cadb555fe9463b6e8aa311467072e65adb5bafb277f3585bdb2c568e5f8d1babbbb7f6bbe7c0584cdbb5e30324c6eb1d1bcc83eb05cabd96a793d3655a6b1c5d5114152727ac77029053b02608b11ab4070c1d17cc525a62df78a2983bfe58a4b069f834d1cf91f4c1c7ac39692c6966f649b8e9341bc299d383e6b9276dc74cf12b294f76b9571fa8c61cba98caaf66bf5eaf2fd5d439958a3f210d2fdec71765f461cfa370f21c979adaef19965ebf21012adafb7382140bf86a49acb9e829412d870c45c1379cbf78790aa7d106bd1e5b299afba0262beacf2fb2137a5ee7466193655d870c88d6be4bef4e334ee21e35d7d7e3fe4aeb56a28daeb4c4a77f59b8790b28f4d11c77e96b56f08c9ebfe9982cde621a4398414636bab39521a23c69e8790aa5ee1775ab30367f990e7632d5b7445a98090cb991d432e6312b05f67ce982fffd77cf9af64906bacdf0f3935949029b6e717432e44ecd8593d730e1b0eb9658e77c32177ccfe2fdcf76a4a5e498192353f098a36089b11c19420028c06103b5add7231c95edf3ff7cc98385467a32ce39ceeb6a2404e91a37c116c69eb965f98e7e31ea531bb355ff24b2591978e6c90db53898b2d3feb39a7d370c949b824e567a80466535a45c85213f1632ba8090caa7419420485891430d9b2056a4b125194ae442488a8b04105235ec8e1c912a5214a36e41d43a5244a4628a5746514634402062bc218e67235a1d4452f90c527065cda90e5bbdf309b5221b39080090d4bb820c508872856949461418b135bc06899c18a04445bc6ac60d0d2454b16264c5cd4c524d412665929118096a321ab245a7ad0b2c312512cf630725c455c63939ab0bc60e5020f4c3cb1058a31589008932439bdb03a1266194ae2220a180c09c63023465cae214a5d30d84a05d8aa052c472e6009820896228aac86743b86585480854b09c45c39b32a22854a60666825a4082a3bdb312cc2e93edde46f31f5f30342eac16ddbfced33dd03f5ae81e4e72c8389bea67d9b309ee6c5c3f8170f84d48325e5d3ef219fd2979fe91ead96e6a181907ad0bcd44030bfb94ff330348d06d2912f60f7595afbb6eee3341052f640dc6b9fe91ea947692019f39bfba9972f35a7814cf09b07429a1a480af9cdfd4dc7e64b0d14fd666a2021a98134e037f7b907fa0c537ddc894eab8f3bd7fbb823efebb8b6fa80907a6cef6920b9b37dea551f10eeb5cf1f10a41e9c96460fc4484652b6d16fb49ce237f7be0c264e0301421a21eed4b71f77340da47edc01e594cd11f1b463ec189a40686f71c6898252c3c33e0972a7eec85490cf1b05b60ab20a92aa22bc02668334bce205ef185ee9125e1943916c716e7827ea40711ab62a7c503dd8a8cbafbbbbc6f2eb477dd24929f5f992fa88c09c32cac053656ccba4ad33371e1476b5b15a2b8d511aabb14a69174cf46957238f06993e25f9e18b0f44d00dfe803e34c6ece9944c7885887008fa449fe495b4cab358f325e506b9ecf3bce4ec416ecbf0c0646e4260be6b5f7fab9cdc5cf723ccef74d0ceb4df3e50665fb3c7415bfbe2979d7d91f57306314e393dba2f712f8e0431d5df9276ae805e0d72dbc68440f6af5b79ab59f661bff1a4c8e0ef97d76f928e7f8e093ccdde7fc66c3591e547d7d8a5eea0e90addb7f56bececb572f7508d3916a62471338726a59492be0e1399fb9ccdc5a6d66c6a4d2007c639d3604b83ffaf176ca3e037f36bcdf19e184124974491595864b0d56ab56c1354ce8982bf095fb2dc3fdcb61feb856ae449e9c4ba355f1e1519fca62f43186dfaa9795f47b421b7b47fe50474a20d196d48f0f65c1caa43e5d7b7bfad3edc793613c72ed9f56b42c06f9ff5d57bfb81f841fba88b3ffae241fcd60a955dff5a79b2b7c7dee32fbfcdc4b15a3aae3b8238970a77deaf30eb5f7ca07d67e91aef6b425875dfbdeabd0f47d056e9fcf5a474dcd997335f5273dadae7a28d13e4de24f7dbc5f86fc5f8621336be58031be3eb8f83befd2deb72e870019b81a8442e166539e910cd0800000120004315000020100a8744e2905828ca6379903d14800a8190427252960b43510ea33008622086410c0104116388310618a310347625008071888b7a3cb869337ff8160ff440143d21f2e4ee39749ac58f07d2733efd7824fd66e1eb998eeb330f7b1f63d820d7838a7a3cbb6d328780b71017f67a70ac533197c7a0358b9c1e08bd8b02d703dab6b81e2cd6e3e17264c603bcf90b625e0e8d3243ab23e1c90c0a522bcb94624341ef6ee9755195442c8a2fe502db7da8c6cf031b88c606c5d42e7d2af271076d0f47bf244e34f6736512452350727498b6cd37461f5c2a7badc36b5f58d55d0b11c7e44406772d33e60149c4aaf7691f844b3ebb0f0ad7efa03c7aef7a350aaa4d9a55ba4ffe35b21a006ad0b4009f16ddef75307a801362f958364c3678565b9b87fd2b100e10254a16bcad490dda887501efb26f13b26324c3c4a57a2b74dadf908a4234600f7bfe4296c113cdd509ed7a73bec3272bfcbd0bc3f7fe9ca8721bad77e624fcba213676c741a8003d2fd5c8082b808f21987bc50aa8b0d69ab7c6005523b97a5958c413b52ac39fc615c1eb1ad25e8b209d5553dc305eca36044144c56eeea53075bdadd231369c9079522228a4f4fbc929ef199fdbc1f8edeac121b3240e4f2cd0076aa59bea6d78211f884cda2ee776b8ddf2785d1f3a3c79f273f797bed99094aece437f2c87feb11a83230e67d7208d302f31e7cf74fe3c5bd6d111e48511aaee0c2b21724400726394a955623593a722d4776b80c8d207da89237bed1a73df29a244c36ec251f56d5b16fb213d88c19f8ac25a79c36e896a5d56dc7b168db1cda35b03e8c594632d2f7f0215b7ba4ee413d125596d2db6cf5a449a5664ba8a7ad0bd72069b0023e5f49d1aa53482e2bac0b36521561d17ee39647a2a5fb050631db5ba9e3aef5a65b022b66a61e52bb6edf37ba7c927efe2e2c37d5711fda754635a12377972ac1064a4ff55e4bc01a74704340251639122e12f3a1135873b055db2ef008a9478b8d3a373a757166ecb626c752932fbb7c32e0ffb91a08e86e367901c8656958a7c69406bdf18c0f56b096a887ecb8d5e5c5bcd17ab8fe78a0dac50b65822a8e322d7c3a9e48ceb3bdad780d37893af67540f1faa05f236c176dd02a34ecbcb191686a89069bf9ffd8f00045bf695b134b3fec1fa78fb966912a05877f59e627903cb0835990cea53fe981f29fb36567f176003c26210839e18038e4ca514c868fec8bbde3eb033f870a5c5f37a124af303857fb29aaa25569e38e5f718aee33b0edd112fedcb599d7ded75ca71db82323b0cd3085e30e82d149326ba6119abeb6c18d3e0a9f467d3fa6feb403d3f6596743bfdc93f9aa51f92b1e27d1afbe1073517401c9a70a60fe3895e4243fc305de0d822dcc645e9e54318f9e2d4cec6df9849709c6f07b996c886774150afefde0979b90a9af9cccfdb6c1e865c5288ab0b50576b62b0d8c709567e36508c79284949b1097bc91b637480c4176431b5ad0d9c9b115298e465132de052cee26b394e0299fbe6a57fe78350660d6a4a797b86eac183991eebdc258cf733c7df202da0b70adbfa94d72b745b18b8b7bd8f4082ea6d6a88d644b07b1fdbd6b63b6a9d382616386d1cb203fdc69ee6ec337bdd00bed0087e780c1a503088a48feae7768b316462aa167c466afc4300b6c590ef02912e9f9889e427442a9ad479118440a37316a222d160a65e7f4e7ece044f08d0974d2f9939726c86889923a2d683bada9b23c522493d475af2149f4ac4eb89c4b4a3fc74b0a840062476784e1a825538dbfe32d6beea3813ead81b17afaaa45695b6d989e2785625bb1365c533ac4f2edd5bb43d6d3059bf90861e221cdaee85370bf322bda8bc387d01138912229542736ff4cc64ea05340922ac2c907e8f836caf24d405b27c2b703a456b991a78bd89c4310085cd6532fb734ea2b6a59e5ac5ff4e4418d339433f0bfa292692160b57340a18fdde2ebf703731471cf96898ce444e63de90b900c757628e6a03c467de70c132e151bf780d61d40705fc83b777d238e53adc4f0725bc6102e5a4e5d9eecfeb49e45ca5267578e0636841625caf0ad6b11e0128fc3a883b4ab8e7ea8badfa25da2cfcdf7b491b106aa70fdd0fb940635914f02f72cb24894ab4f1031705c784e4e666283a011a2362a398a8af71ab982d4c9dac72bdabd216f8177207481f9a9f4d4863d07f5a80cfa2dbe12dbf6abc35981c7b2c9ebfe005a3e52f4a3d86208a579efff05fcf9f710fec66587c515962e278476074cc551ab3d3f4370e51e0b49a552a4d8e7b326d92339c1ad8b1a82c0c502c369a8026baa08299b4dc99255e0918e8a8cca2d7a3d64793956d9533d3664f837f0d16b9feb1097bda8cebfc902dfec3d873826a015d3fd911f5b936e17a57be347c32eef82341ce0c4ad6656baccea0a8c2c4dfbfdba9711e8c646b93387d0dc4cd3f3a59d5e9f869f7991354e61e199f3ad0c89ec364c034e47af6b312725eefeb457ed0161468886dc5e81d480b28c9bcd3aa4da59b430a3400633a1644990b75bf711cfc0c75d099b15c4eb71d06b03dbeb4bf4c2991e8eb0f017965b5cfa591b3700bc1b7f525b49bc4f9f9631a8ee0ee092cf622d5f911db05e1c4dbf8551d14fee7eaf1027edfc2f261aa47f79a248bed07208f245b41de34e6d18aae6c1184639a9bb6465b6f46c6849bcddc26e0285632ca2599714d2385ff8428952b13b9634c7f80c287c9c079e9693d445431598b27facd25e8cc22baf91549336f2226feb7856d83e94b2e6d9452883a5cc1285860cfd63ff6ddcc3e003c39c5a170046bb2f0bd4be0239c2acd947b4f4dd3e5d341d6e182d6436862cc9bcf065c0fafadaf15c6c4d07bb53f1351b7aea962f0b14fda0279d28cca80abb304e0f38c1dbec01a4ef110c28379153fb8fbb27d9c5ced700d9903e06def6e43c41493c19f3b4d82bb7a59e9a51c6de90d3a6f4df88362c4651f4af0595d8a05a1b10a4970bb0d493e951713e3e634a64b9cf8758bbb214fecc086dc9833fc008fed620bfa86af4694184ced271180995adab2cff947721073ec4f09778a1598d26b39fc6dd05b5b069548b58b784f7be83cc66d1172d0e04ca7bba00947f2811bf7de80a00227f44f8da0530ae6498e0fd07adb5a1e30ec85d8062f8683ad37dedcb76fa14069fcec072237bd4d5b02333a8ae1027788e9467a07c63a032cfe1a6769c08d117a7d4cc2be05057eecac9aa28fd5679f416c8a300784692804e8d2e3bd0416b9088fa8753e17cc0f301600ed2bd521a8adc25fbd6313c5277d8ad5143fb24d610a1b4efd0a4e02234d33d48982f928108bed63e9d909a714509eb91d8fa0e70c06080b543c5a0af216a5c868c4595eec90730ade496552d721e5c9428d45d607f48691b375d6f231e1d11940b99efe05b4071641b6d52459d2e8f47563a1024855592bee32117a09d3a21006cc98adcec3f248c2bdf80927a0f957e4b877b6d881258f7c24d784fc59d8052b6b4a17f2933c1f448af2e39f11e79bc0968c6be7c9e8239612f51ef1882fc81e47b761cf47092814139b3d5be336d9db5e0d2661a3eccc9b2db4cbeea3ba94c605d4de50f4b488376593e0d7db53fb66bde341f15eedbe6e2dda77a106347a7c19c224d02f72115ebc333cf0bd84257377acacd70d094871eaf771595be545707dd826b3127b8234cb39f3edd6d8e0be7497c4da217f1041f43d3b3c93d1a2f3c38463fd0283c8c1e8323c1bdc24b5dc40d16ba22eca98bbde0128321f89fe3dd9750a3eff38fee30ba18ca20afa0a6a373a4afac35ad65b3f97b998eda2a24c2ec44695947df0f0d1a431907df86bb15914df3673e62033d858e36cf8c059643f9daf12783f6a15c4568555241630633035885dd98546d789c92cd52f54cb3bf3bc61f99fdbc0bf97f7c06177a677a1f203b2d43e3ed9e919d3f0d15964a8601071bfa5e6046e56e68ae5204357ba92f729cd4bf0840ebb6cc80616878b8e7ead6d2b524ead0bd5acf9645d3da1308f89bc59fb712caa3b37bf8b76e1236f68f2f89d0e039bc69272cb037cb90074af9e351878a31836d2c618b6d0d2cb9ec58ab1598040ee601b2a457681c22be69144a9a8a54479b0ddb26d17ac82960f11f8efcc7d5b8381e159072eee3e8c2a42f652e854080c8b21a70219e4a9840ec1cae965868f8f7e16ca7688ff11ec0c043923aa81aee78cfc17a8e8701eaf225019afc362082680d9942ca8a0fdffb74314062a2e88911169af8c05473e0b9e32c3f08d9335d7c6ac6e47e2d7043b1349c43a9349e27fd874a31024ba3be833ae7762b4ff9845740234236750d058e85932e36de3c8a64fefe73cb02366c9289985bd127bf338adc8a26d3bccc45c3a2b13052c177348fb290cad84f3bdcd303a312c94b90618b498712c60cdf280e7530dfbc52c4addba8a2d6e7a43571f0c60ea977bdd27de8f7faf169a60851b4207dbc79fdd3fdb8db29849d2bf64326068fcdfca05687914960b7a13a54bc90bd79ad43adc5d578c9a77ebdda4f11c5c0d6d8a60a9ca52ac97fb3d49c043353e57c122fc841476364b40ceaf85b892136c5a7a63fd1654932d2669b1f26433d11f28f9998b9e6a9c67490b00ed6f470b5e0de93cec22365a8dee6f6a26b5f0bb055ac0ce26384180af958153961363bedaa0dc642363a44b2ac8c116f61d8a74cb99294a592dbc69f2686df9f4ac8e8f536f713d04774a62b3db65403b976de6c76f919d3e5c1eb9bbd529b08fbf9ff956697644c54531c65baf720bdcb69bb505e38d723753406b9404a45db8a5ae5f5346dccdbee17f9b9843d3a82e6d2214a7f7e1558b9fffbdfe8389452b83686ce76057e0494c5cddc7031360d82d47ba966633fd181d46b936e9e1bc2f9880f7b55356974c82ac8cbec4c322c2c0b9c7d28912d0a8b5165e625f5ba30ec994c2d4c748033d6fee648b2cacb1bf425cb4e471ff463c849dedd39c7d571aea727e0a21baf38d818bb2d059c4d87e71cfba85b4491fdd90798894ff0d599fa18f4bee0081e0d9b09302459084a164f022b00a7e42d0886b5b8a8904ac220ee7de0157a7dfd14e6d6d35c80dc48b2393c3b16d87ba5d46ee1fc72c7c39282f22d6aa051d1929008f74d421180adfbd628c4d489825f2739ceb1355920f3de91b88df8794211901ea2a37daede2cea657c4c9a786556d10220aecfcf87d42e4a827393f1d0ab781406bfd8da14528195a1ec43011e56b4d1a5859c1efc1751f344365be4ad23af985f9941173d1a3c1fce849260e082fe9231382137f9b6c190d497b928e8f50405f14eef6682f71ac920637cc7f0f9e36426179eb62d0682785f355a045541d19b33a14f4b54b02eb50c2273b6b726ec0b0991c06c58ab0c1292f6dbc5d514ae0571c692eea5d82816c801719fc2e6bdc2d649daa70078c4620eac57c13e8b4245d55b17092c61897d9b8db851b82a18a2084976c3e14fb82c23eb13db5e81492bbb9a4a2d9a4465a0f524762c899d6343973fcf512241a43904988f3f04d7f1240991076b5b4f49acd88433a155a15692841f4b015e28bcee35d6fdd7c94cdfc302a6165c6f758d9d7685100e31c68e5f27765840d5bf5ec6b18d2bf0deb8f2cf509d21ca12418140a18f4912279eb33d3443e46b868d332de4f6ff7b05c00b15bc0d9370637760177fb4781f4554fa0f580a8625faa7303b766426f0286e63cb75f8996ba54ac655436825b516e651ef9d0a497a02deefcad71aecdc08232f1bc3c0b961ff30713520a1216e55798acef2a2ad67015e056e68406316db9a2c44ae59d2a45bedb72d68a64486eae7c2d4ca9836cba3288fb09e9902ecbc809a817e994d5855c31908d3b612da68cd8923621c2c4775555f79bedc0e66aeacfd9f47409576e51cbadff20842014f32cbbb4b2789c6de229b8ea41eddb8fbb266aa9f3b1b6a8507aacd6bbedd916ea711a9bbcbce8f21d83c2b180953c1c067e7360157f0a77d6fa7ba953d7e5db012eff5d0c7b28d5c03274ec5c72e8534a10005b8ee7d726851fa3eba2d8ab7c2d3998eefd8213602904d05ea31aaa6f97960e0192d54214a90b95339fb667cff71d5a922131b989cff4f85f4c2f2f450517f7e51eb016790df158be793f225163750c426e1cf756f2797be2b39ed662406546114a9691510503ad79edb13c83169694badb464a55538a2baa2c80c211673ecd411cb3cbbbd1df8bbf7e44157490e7f1fb9cb23e66d8410f6800e1d94482988a86811d1f65bc9bafe84a9428f2920753412e2b5783db3cd7330f74103715fe0aa9aaf3a1ba882afb846039ec769b94590a6e0c43481fb0c8ce0fc87a9932c7eb2eee3147c0f4431be17d7ee1d907bcd7249ef522d09642462a91728926afca33888d87333ceac1f76d6a3535d1a61e56df3c241043c0beb6c9eb0376b89aeec5fb0f4f157e3517547e976b92f032cb9c9f26e028581e97adc473b3a8a89bc340bfad0c3317983e84130ccc849e6d4be0c12e9581bfd858aba7fa96c9ba757c35674c9cc5cb899b7ad094f0c7eaf55a4769f1d086f2dddfb9748b6baa040f3713636e278ead41aa5cc309e3206053cc631a883d85afdfb567777e059982f44a9fb907193a9fb3ca0b1e2a0443c774789295e22dcdd94d819c8ca07ef90d41845336f16aa7841eb68839fda2dc58ae8e6dba77ac4d915054db31c27128003e435241aa18ea5968541e1e20326ed13b3686d5f7e549da56d1c5aa37aa50fb4eb1c022033229ddaa65165cb3394accf5735e3597c66de2eb260628cb21ad0d43a8712605ab4ddb02333e82c182ff6d47f4ca607710ccc91bfb0f2d6325cec252978a7a9d0c1ce326c61b253c1da998f7cd9b124266059d1b369e17486014c90df3ac625008e5cf7c3b229009f7e6179fc0f097f53374514f43a912b5a5673bf00c89c192c6d4c53ce5eb717ccd9b75783a19eaa240c68c7db7fcd787a6055e4d7e57d723ad14e63d6942348a40b375c09345142c1e3e3f7934584fcaf2bdc43e16817d3cc970d414b547f8798d3c0738e9813109dc885975330dae244272403b79f3fb4d55de02334a6c05c851d77b36e47b78d48a1412178f5b69947d9f98fd58041378629b7b4b99391184ff926c10dc25415b0d5c227a201035448aaac0a428927ec5e8a15e884cde16127e784a9d14a022e8ebf8376062955c2b508f44f9c0c8874c37b60a3d2d319ffcaadd0cbfe61154228e397dbbf8452f69bb0e7383c0fdeae62e30ddc485e8f54f1378ad3b9d2d175808ac3ad1f367ffa69f2a88cd822702eb2cf78001a54d7ecc1417590b33ec288839fb5f6eeb9b1a9d4e48dd5efeb2a5102cf1cde6716692c685c852e09378e13af62af9f29dfcf52a1fb62c607b31520aa83070c7ef4ab93c76b7358e92eb592c1e56990c3e1785a568dd92cb3b7e7fc8d047007d138d99324ccf8fec9713e1b2ca063fd5142567d6c6d0ee602eadd8a59da2c51d3747f351ee1b9162330769b96d513a5474296f6120e40bf302f392e8ac84f8ac65020b14475cb44e08ef863ca47ea091a7aa728c6b293004253affbbe18498f76764beba41baa5a1f85da5d6fbb0c4d10121eb0865e5a8f524c08a623f7db2a67efe5b962f788fe840a5bf04997d5aa55ae4b7d080cd10db76e7f7949bb34a8896f4e59382db796f03e062f496dcabc63a527c50eed4dc3b05b4867cb353e891cba38971be20efd9e7aca86058eabce65c19461074b9aff2c96420310994dc5c211151822992c813b4d1485c4b6495287893982bc42263031417bfac20dc71dc42c9a40526770e54fee1819a41c30661947a484111c9fd5c6f3b9e3a15147fdb60750128380baa047832a47e3c56a04111ecdc3e3494645a24a9df77cd5d1ca52c4923d1a759baf27b2a0b7bb58b94374bd210407593fa05c252a0d71846030c1fa56abbb854c4eed16f81ad0a4ac09827fb15ee0b5d30f1f1ef4807900af40f8aec2859ab8840aa2455bd3ba92a29537613151aaf35b4141ca54357c1a13948921e50d3d0ec89f6cc51bf2932b9f7e7aff68fabbf547fb3ca82b47ba84be8a8b197bff2434fb78fd4affa217d21a541aa66b276f9d833121b10228226ac5fc1f4d3c29f08cfe3a7d50e42877d3862410d5f81da41dfd47e2457d9e14d2ac6c8444b252019a55a5008274f34ee0f867032cb4cc7072a8b599a65350a7c37c59245658556ad28842635d7de5fb5a2620527233c12a797119e2dc68d11bd779c0e0d8d7acc51fca8c6df350192b2599d15ec802054702175b6ba1fc2f76a4343063b76202f2d0f91794ebac40330914c49de4b12e1aa076b3a502b54ddd6bdce0d7b4d63134d7610a9531d23b5f48458f4cea92a1c5f15b66e05ac7ce163842c5c7916c1e73f7d2d13e250ef2e217689450c8fb492813c922d148249cf4da1120d825852756ec8c4714bdcfd3c00f0c5dc6a5721dc275f1277383127e0631fe077539d242301f7195272f9088c009426b71452c819adbb006d76a8db2ff3a8a8b24c42add5c2ebc425d7d5f0bdc44f94a4c33ffe3c5401351c212fca0c1a89646770b8ecb108def7201cf0a4a0994cf2069485866c4a3ce38411d3a65caf8bd260fc80da00afc9b9bb9f0dbf43848036c04a002838a2ebc5c5fae1addfd8bba2403ce6006d96e7b6a808a401442b8929b557f2e1482165fe3003bc30b6a5ac9396fd0c3bdf14cdc49dc97ce4c7f2513b436d18073f60ff890c1e1fb77509c1dc7e49e76955207c1734354d54d20cf0a1b9cf74936a36b0cebc089f3571fa3831d9167ff0306ecdd840621caf616329363b73b751ca639a409576e8ab6c9d7e2364fe20722f8f3b524902c9c96e64b6ee668da141a65caad510b81334b36d9843026cac95a67347ab3c5885e62ad780aa6a11a965705fec878ea5b5b849048040af18e61cb52f59415d544f545505dd2fb2a0a24009965c819787108fc43c05bb99514c4cdea95180e3f98ee0df5b18b41f22f1788741749defef33d3d31d856c5354b20730e13df69dfe92a747842a3d7824ab1fa83af442559df6ae3b49ded48886c87dfecd89d1dcdba7309f1623b51f0fbbd1e70d39a1844e1e4943523452a24f0b7e6f923403c729f9dbf0b52dbe608122850fba268875481244d6b0dd22bcad3db63962eb2070012761c641565c93322ae78e5d853eb2b680de6773425e7f1ccc2eede1229deba41ad57733c3a5a7182af86526813e64ccb47723bded866c31b8ebcf783ae42551409e8d61e9c4a1b3587abb61c8cd6fd463931c618d6d49e5b2f09c9a8899c4c549530f8c9e9330f406ec78b7c0ee150d9845c350e314f0020f39f05846a8133e0364b12f00c5c7e4956acc9c958735edfbbd6df71e30f4e18bd427dd9a6a061ff7049db46691a61708e269618b1077a4b3842dc60eb6981ac08859c61282c0d605036c7efd83e82ee39da13988704908e5096405351e0eaeb0c69fdabd3e804c0526ba750e91f4a33bdf0697cccb247abb035c30a39edd1303efa119bdd059bcccdf23535833e1ec8f4a0c41754089866c752fe1a196a3d005cc602187133e7b439e17067a7b8f0e29af526fa817e78f0d891575afa5add24a7429532b41a1bb269e988aa1fef70c588eca16e934f74e79ed46aad59fdacee75f3c66849814de40644e7180573eb0c66a40bfb28cd3619c28760ee8d6b550d75e13d3d0a414af25b6061334a6d20f1f6d7bf0510b1038e8820daa9753a3814e953401887831924b739cb353f1fd5b33bffc22456f8eedbe2811aacca02add967bf18466560ff1385ce35eae6681f9f20ffc285ec073721cb3835ef3a2986af68a1c2b972d1217e923756da129f0e31190b816de4861b8282db9f0db98518064288d078e22c7c872bcf57893ae70f4c872c40e856553162d3f12b406bade7b661d7d5652821753b116b1f542f476f24c60f190dbed229c61612e3da3331b86de640e377125d71eaf53f02b433444572a82763f1b24a9986f4ec5755a541a6a554214c08ac08b0a16d159716f57a7b0c7464f5aa8448be990418ba42d3bbf50731a8fcbd8c4f416b380a833c814feec684a231a058d914eb1ab7f355e3a626d8a3445f4afb1e5871a8e31ec5e051fc7710f927f19f816f9c50480bcad97d9b12e5cf12904b7ed201cec186beda8046712629de986e09daf339963304beb5d67694bbdbaa579113f75fdc12ddf00d75e4a68bf951b29c9d4f6c8d708626b625c9f97ac91de05796ccbaad02aea03a58d3fa5ec4ea31be72334377e7b0e735c261380f2ce041dd25873e3fc5470a2a6f1981dfaeaa84fad9de2ebe7b296dbe7b681ebdab6d8b334554c128ae6138a5f36caae7f16e6156677a363ab84cf5a912959939e2493cb91c56bba1283be82032d36130929c51a1d721ae097cbe531ee97c7901f56fa5d38cb32cd6fab8012393e72adc66b9e6c432cda72ab9e677220dfce129f1a6e86201ddbdf0446e95c9db154b92b07b99397dc83fef7bf34851bdb730a0b365281a8a2984fa1a14bd49fe2b583dcc0778779c09a5bd352d084f721ad263610621ae40d84daf9bc53d8c5126faa775c3fa2ad49f5baf462aa14dce2bd6d83b98bea030aecd49a163f288ae0f48260d5147569b6a2044370efd1f6b3936f84d2dde4733d510b5bc9dd8a9a4b04ece9835648b62a5a29225216d5e445e9a2854c23f1ef4eef7c102a1ad8c3374a5dd3c2bf7aaf93e60078cc6737eaf7ef25653ca5ee22e4b942853205336da3a8b424cbfcccf3ceed691a0f298243dab5a803d3190aa140c45e1afd502d60ce99c26ace5db60ef0affc1a277a30df4f7f1c5e86bb1f47380f3e6efe8f7b4fa44f4658c08e05a444b5d6d7f711e6bfd6c5612309bd8a2fb8ebe6ca8a49192677474731103cbef3bb2ec87ec309992687005c8f4ed69306a0ef9108027930ad0b05cf731e4cf0213a92b7932027912fb616ba32432ddc5ed7a904468e96fc24f599e56c1e407fd174ff7c70c1a50481b429199e4af367f6a51ee60a38bf447629016fc47eed49494e4c90132bb32d3f2672d43a8eaf60ec536884e2dcd8c687c3c933763246ebaf5cbabee1ed1414d405fc44407abf7f05335fd05736b39a56763161182eb09a7d980f296219d8edfaac02c40561a62e6cf99dd1c5febce19378977b8fe633b8892ddba938ccac4d628fc84ce3e8a94d224d71e7291bf7013979d1ffd7b089f3bc21a55524d0cb2141a567323c18a210d89af78ca456bc84a58ec81d9b685e3847a7675beed43ddd5d09fb4bc01c94d79cd1112de4a591f1fd4bbbf3091c13aa63163135c0801235cf8045e2840d58f219c7c0a697e1024a2a12d179c8a49355e4a1b31860fcb145613f7de596a139f8fa7491a7836bc93840b4c59cac213dd7121779568221ff26bc6685c112a20e0b705b537d146b723ca54a0b86918c9ade80faeda96e025e4fb3542cde072b1283525428b7bacdaf468857428f1e88886c95f40ad10c4e414b20e48c948d1eb6f8302cb0f94f7e10754f1893586bc187854762443ba3c1efe2b146cc7b82da3ddbe41042b6165a431e4f55e03b8fa7b4c04dc9e32dde1e4ec1efd7dd63b7caffc80360757e27704e4f40bad3e3ff79f8991f5e83b5498cd67d2cfccea451c937e1ec09c6c4730204212d8028b41133695f31052017391c8183aeecc80f3b383cd02f41989c6f8c8421a3821378b93901c8162318c35e70ecef6171535d6e47f92254257ee11638f0da5c88c3bff7d5276445d67276d15b195c33fed8b77df0ecc891c738578f1dea1d7320cb0e01fecb3eb3244bbe0b2a21eabe9be829b3e0d40a7ac007c41f50c85d2bbdd5adf8e60a3c24ba24ad305fcb1b7f7d4c1c2b245a2daf854b98a8b6ba5a1c54fcbeffa73cb5713aee380335665c25daa07253ef9fa0385b5672ae6d4073ef27bedee99727f093201abf7de2ddb721c07b93500828ed280114622810413744a0c719d0a3019c126700caf418af22025a3c8eff7791e93f3c0c2f92e99542c3914daeec8db88f9c7e82bc6de61ef78c6db29e70c660aa88855182b7afa0612ab22fb9fbe91fce65a95b861cd747fa30f7bea508bf66b059de124c82a64f5c7b17eb33639b0f54147224445877349f91ee3df31c479fc6eee21efb71c09046465e8cfae162668d9bfbdee543e5e877fa3059e2ac600eaa13034d41586c5280c86bc79ecd7643eef8b2385b78f4046dbd0153cff4cdc7742597d1c8904881313a0387799499a32c54e48e5502576decfa7547b3dfa9523def77a4a54fd01147e468cfc4fac857c5eac4c28e5267ba71c561a6aaa151dcbe169e5a0a402c4b961247c41243fc77bd3abc3a6ba9b6fcc522e22b1c9f00c309d943283735c5e6db2bc548ca53dbea76f6ee843146ba6d1585e5df3ff0974ebac69af32b1500a797de015dc3fd01e2381eea79f5ed755c8eed012dcbe7e8a34cb4af46c310e757cdf3782929f7b70838ca555d4d805d4736bc495bc25620ff705ee49978a4773afe723297446a98784c0960731f3e21dbf6e9efa8cb672a55150a7e2571f96078ac2fa02ad2976dcc116cd59c1102daa43185dbd312a27495143441611550ede11b2ff2c4d514f5b9523161e8b09808ebdc324e1b910b69a369ee566757b63b1eed285e0eb3f423963cc36e473986773d5ce72038c48663dd01289453c32cf4f6b73ef0885333fb82cc962fa043d1f799f81e78e9db0e838befc38372f4182c59d68a89d78e535f865e6fc936bf68e6894925a6c2ccdc80daaeb654c8f34a81a51295ca8ba10236462ccac4bd99582e03f2b286e54c3dde8486c81392b519f58e046d4a0aa8ec4fa19645cfc0b8763ff0238772dd4312760201e61d0c5664f3d6a38315e5e3031ef15146d61b1a579ae06d411bd485ba346c06cf236d60f74541cb5d98f99bbeb01f36b6504a56301a2098e41f6987c2c231c86aa8e4e223a16ef77c54071a07c74ac076d1aa640828fa06caf3ac568ff9fc55f8a961d4d1ebd14099ed43eeef9b60048c378a75a9630864398662d686b6b7ac90a4ca9cf47a193c03e7adfaef97456e546096bfd497cd980d8ad61953e24d5f4c78b0c120abf3836361a45ea61b36ff5852841386461df9c18a081644ac7ece371e1d77f11688076d823495c5309c60df220470a60017be39e1004a898b1121af28913d2b0c3304fc327e86ab3764149df4d8a35b0aacf7318438d39f08ee077fc1f9addafebae6333a10c4821e87113eb308e01cca079b217f226310dec66ee25f48b7749b404f197e09c3bd572728950dc0754cff0b78140c998739293a0f90187b0d6ff305ed74ce51b9211495c17056729e8d7030bca6749aa7f168f81c0c8d08245822e2d55f3605c8ba3b55a58254bafc8a17dbc9b0763c0ae86131d6ca8a05047316b3c014b9614e333f5d9322ddeeadc1a729b64d26891349d9ad0bd72d5728dd9446683fe6b83c8a0c2890b2395fcdda94c9e8c235698a14228374b3ac01cb8984844b356cbca195e665bf7217317ece205068e4069f1ec9ccd934d240ea0f5183b9ac472367853a83762ce275134c833a2a52408b39c8767356786337403fa553f1a8a3be9020cd5ef6750127b109c08b882c517f87281a0ac57f52687d07984ef40b7b89b47cace0c625159852035af4e229f5b090e9e750af851299f453aa64955b2895d77b54faa0e2d48815f24096e5c1ec24d812043fab5690f2e27c4c1957cd3da403c5345f2751d150e1934eb4c2bdc32c525c8cbc4b970e7e48964458b09bf8aa34375d1e762bb4facc29972746dc648e5f6c2e8313abd8fc9e101b86634af44dbc7469603aceb20ebd7e08a3c0cd3aa56c504604780c925b4a2e25304dce03b69ca960a3236743aaa511ef4666138538213fd86e24d4fbf6309a9959ad7b5a505982e068ccac6897cbcefb0754a8a3c2ab1b63fcd84b7342a09a648354ea4292a01ae8bc7c5a10ab11144b10a9172390ece4d9445f2961a725da4fa7cc3c9efb912be1bede0d4222199c9995ba2b8df5a14c847cba1ca0c3752e3eefe82ca9e170fae23bdf05f1d6fff884779e6b0499afb9c581ef1356e15d46bae212eb52a8cb4d55727c835b76bb9b94156333ab25000d62e6a57a7e7350f9a940f0b0c5b6a85b9264c0ea219191f8b6e857704f5134c6ac95605249163e90ecc6c5e1cb12c2429fed5cdce34407af62cdea030496ccd4ecd24f0b69084cc2ccc3ffa556d04aee961fc047eaf03e3848d878d25b6019476b00e11c42da4ed902372acad084bba84bf90898d171ec3d3f0673f4493051c8fc3652da828ecbe301aecba3ffa5e24e2023e35b53e901e16ec7b1c40c7e39259887e25ae30f558fe164e2a648068dd1faa102ecf6c4fa800dfdd530ba223e20f658c71f79db9dd44575e7c5b832bc1f255c2e6307db04639a945c659ef77f9f767737f8e492c1f6a75e7ac832059e523fb03087605202fb6da60063215c9b125b274b638f9c3dc20ec5488c5ec8c5f1bee2672c8387017b19a7dcd9e7903a2ba41faf801d27366dd30afc6b3d9d37d22e588c07e4ee2f2c7f4bce4ca42ef757a9075bf96ee0c1b6b025ec038f2eef2647fb566e50fe39897a8a8713d4814a9879c55339a7195ef84d4ee47066d588def4545c5b6a52cd8d5dcd208b752166305bf8b3f5109b4cb3ed1b8108c600b3e7dac8ba6516821b568268ec0763c6b4cea97d4dff9aaa5165d7007ef0c200276a02f88df1d9dffad5ab70fcf7531e884a0541c3fc35e2e3b5b78da2509b9335782972ee9b72f987bb523855b116b5eed68680a3f3e157d392e9e7b11d28e274a36ccd8100a0bd9267a496d585798d134635587416406fcf087d51e1ba51d158471d924e828a6a988c9b5e7d0f88d58cf61e0aa9333ac4bc1a5d3c00f46f081406274b3c9e342598da6d2269d84bf1201c90b02832d7aa779c7c4fcd97780b216529aa1bff0021d39dd31a2be15a8d38a9ae38ef635ccd56fbb2bd7cc55514fa2405fa1aaeac0e99065c0802396a105f788eb7af8f92f0e2a8b5f40e817ff3c60cc939934259ff5e0c2478122cdd2e0ee4d6b16dcae892cd62507efea0ca3a2f65529f95418846bb3adf1da06e5e5d6a734b224299b9435d771942e82db2ebfcf24e718709c2a17c83dc90122cd69bfe23ba2964cf0cdf1067a3b064fb8397b0e846fb01ba6d2196b55384e52033e6fbee0ea340e745aa2436428129fc5119bb02a4d2b06cfef3e88751b9c75d44347ab469c50e28cbcbec8dbd4fc674c9ca1ef00d8b2e035f6a011d7859b60628e891270ba32ff85fac4b3344fcc3ee878c1f746b337e59a160adec68a6bcfa9c1d4223b893ae601c320468ebbf3de21d86508e73f496507fbd389f07b76e6604a7818940c37865582faf81a72277b2729432c6cd6db10adc99665e44bb6e29ee26cf1c0df001c157fd7da0d5eb7c8f0b355309ef162e4b87433ee0aa030dc9ca9e3a4815e43458496b4d39e74dbd70b469d5852f828d8ac2ab7396c490e476976f261b6dbf46016a4ebf77b341e17ae7ecb3da7bdfd398a8a6cd3be0a6e7ec2977ef4bb5fcde4409379f33b2ef06a1cf292c59ecbe6756fbb20722ea0d5e51619518e88cf538308fa7c00b740a48c61afd2dd7718d1b3a4b9cfdfa590c15a8a4792aaf330ac4361a909e978734a490ae9b96d91502b3b07990938a02848e6bdebea7756aa1ab7d22f165ec95bce641ba8b60e6eb1ff66252cbd6065014804b150fb3abc06386d47e5f6421b793fecc7b24f4d8e9b2468df7dac1871df539a9ee0e15009c00e3ce84779e76d4e415d21af12c04acb9e1d92fdd900fd4c18c8ac2a4508d16bffd1512a64d4af3f37c2cd1d389283d44d9d00f6571c9d6ebf896a6728e53a8844ba9aff39264fa08b40ac4aa70ba781c01e68d83711a06f7c396721aa983f0c46e156646074e9f762349e9bfe366cf5622bfa946bfdec1877c926cef1025ea388e787cd3a07458921048e230acff880a07474c7bdf31168aa08a33db465d5bf8e5d5def483f104048ebd899255130dbd4cae60e527f4f7fd01f2757f20832a34ed3c6ac534e416962ae1fe2a9a108ba1900afb00caa9835103074b97495d758754abaea27b7b96eb5823c02407d842ce18640ae9dc5ece2b4cf6b05e9d7f23dfee2b0973613b08bd902c8566e70ea9f34b9f8f22fa9201a66cad73bf8377ae55f05fe2daa57ab5a129d3322611bcb9e89e54b95cce7fcc6d46bc68f6a91183212d8f72f369a672b8fa2dddd7ed3c88f7cd0104ac24566045d1d4b505fec980aaafb9302c1252587250dcb49988b2ef30837ef6adf5f0f210848855b803a840d549ff2e5e5087229ec4579108d514656122c9a4d6b2f3876ed4c670bd4bc7f0ceb6f62892f4f73897fd4371bbdc4e3128b7a4ed8b247b2d811488f40684bac2c04cd8f02d34c0862241407e2dcae51d0cc133f3f73beaf7bee028763da5175e66b82ddc7851e62da48a0f8e38ecab0e5ae314c95120bc44fe8fb7f63f88d5c094d2be4c5fc0b1ff8cba83c140570370d2371e826103824ff32e2bd820e0f543c1310401fa059dfc7aa22420871ce351dcd48c79d957adcb19d007df7208ca5555cfa71c01844fa4b1e55686c23109a0458df14b09d42bec872b6138c4f9a6567d3a38f893e0abf746f71dbdd1754949d9f902ee2ba57dd9be5d77d8180e3b77feceea883b4ed9194d9814faf325c37f8bb53409fd2cb50fe620025d96d12a2ff815bcda80f7d7615b118ae0f408bc39964dbc961a42f72d57168654b18fb2bf6ea25c264cb622bb40e796d6fbec65e7be3629b6d48e22f8acc9a60b92f38efd319bd0574d5040e4ce7bf6470d2caa790307333415392436b365ca3f92c51704aca20c2a054075773d012888a11d3cd686413ebd8db04e42e2648ffafcd500008b32a5908605f75c1763718e14ee244f36750bcf3d7c71dc299daf0ce5990423f14081408470279a8b57ef503fe9355fdb73497f984b280a1a394614a7bbb2d904ee2e77fa793d139b687b0710d56f133ba78e40722bee6ec023d9310305c43b72ef063ac86a332828df103bb7e081f61ebc73aa85073bf2c60e341f1a70a350802b24ddccfa3bc068d6c34c454f9c8183c54077f0bff51121a9920265a71002239cce3ab05c55d07dc9f988825354a555aa4564856f3173beaab456680d621cf19edbf27c1fdfc9538c99bf92489594fd9e999b399055a136ef763b7aced22e52aa7f6b276ac1d8d08435cc973654fbc670153009cde5090ecffbde51f4f1fcb89696b8ea689d1f044694ec819c7834d6e6925df9ef0707249cfe13de3aa0f4aa0090fb600e8019418db6d40df49f1d4e5bacad38fdfe0af0db4238c90b8d6021f09e3eb8cc0d1949d2dde24f10761e21da4015af1670436cf1d1462f968ed7e879bcbe43b6f4be3ebe29c34c06e2dcb4ce5fafb1895a2828d66395df877284c1439d5e7a542da38c9b99505004ea124616c54150d93ec3c9c0b02f0b40f9426604e0e4eee6c556489a6c20b3b02cae095c110750c51eeff5d54d95c6794e419c434ffcae390327490d917f61acc43dc0bfc3fb84e212b2395957a515ce860350b946102b006bd9100c141fa6b233b027147fa7383ecb9d795b688368f1558efef3a58987dd32b7ba78194a5cbec914c883a6f4bbd307080c2808afee1230303ba8a4f90093af02301918e776e1041c012e724752375d4a819aa52587c7b93a45c2aab0190e78115489daa11474ba028606f19768bcd59870794747ff7f72acdc7a167966e789d4b74c536a6efa2e74caf8daced4bd06dad79aeb9516bb3a6c0a684efa3aae3860df0d2a41c75d7ec9c4301f09e316ceb7ee9ef216aff7baef760b631edd01d3909886859dc9c8fda15cde9bd2c02474c3043a87da6b142a61370d2b210040f67b021579001c66a1c32b2c3623ea4df7030875aca89093e7647fc67aa2d02d4b3eef93bc827fad5ce261c0f62944168b52f1cdfb99fd02b113d883d3f2bf1cbe17b87187f2d8874a0d6f5c80baf9ef63413f0626ef80691f59d740eeb76c4eb24f866a0f06b81d2964f48fdca225740ad0b83f0c344e0f13315c75ccf1bb5c87265e8721d16b78901b7cdb079e04e8db707a78f670842f0013bc75f7bed896eaa688f67b88e2487778a73df4da38dcf47b8546ed91c39d2898c17f048591be7010589a9c9a8b63408422115e88631478f18be226a18bd416b112e77d1581aec7ac617d8b7c3f76c595b4d63bd144ddaf20f37031918d61a91bac9536a969e250d95033d343ac5ca7dd573edf31b4c6c600a966f0f32546a60c32c99c0fb803e0c6bc54efb170066ce78f9bc9dcca03ead270645134a64ec4ea2a8c1aaccab2857d868f57217ac47b764ebb1dfc34759d32dae48ac7500af58c9dff6c554137f4c26ff6b2e717401454354979df19d06d3c54f086588fa7e79c26b89996a8b3b1350d6862c5759cd7eb67d3bb7b910fec391ae63d1bb3607b9de359df22985c599629b5b846a37b4588184d9465f22522cff025d9dab83bb40e850df76711152d41deb652f782970d79ac02bb13f5e6dae11b95ecebe67223dbbcb914e9560df102fd52df5ceffe6d3fe99e43b2147d9ab43b8bf4375a832074b0775dd7f9e78227824519bd93fc4e394432752c4e85c98601d1323e010679ea52d367355723236efab3d24b145b6478884aa15452e130794c218c94cd57f8af149b2ea9bb45a0d652b097e7f3488bbdf7e3d51ac2598b5b1cb0ec8d38035e84575a0fd18c81744e5fa90f346a555d922be985c3d065b4e417a067360bc0bcdc3da8c289b907ce606a313dce924f7537a4040925d3c22a6413330099dc012451c62b4ff1e810ef7e716b278ae33be4d74a11ff975e4040814311d886dd0e7f53384c2b9251d45cd562576620f2268a58403a41145a64742ddf72944a19d404fc02691641876c6f3d6f33b30e193a6bfb17a10719b0acaa9d571894cf9262c1368f91c869312a2307529badc2a606f96bcf5319482c8e3e37c2cbd1993f059bd48598f6e6437931eced6a40f1369e643647cfc71e718e92d12dd4d61b1e49e1c153d62a511fc0d08265d65d564c0cf5cd5d4226dbf3673c3e722638e4ded9e296e43a984fd8811668f4ca83d324b37420d7aa204bfc1c37ced5ebc2d7525c69cceb092a0d1f51286462572f0b6bf10bf6088cc3421494e361695147bf0ad18104ac2166d473bdd03ffaf0ec1bae29ad8836903b753269d9d393702c825f7121a276838f0593551b2fdcefce9d121ff2a03e7973060c9c64d5bfdc680266bed913951bc5b6de8612d3484f735ef8110bd350c289b489913f09880838b0056ed2ffcd8bed7c1741234ce616b941f3acd122e03157733e81c779f90529573bb49ba571aa175656bea6af5f0ea442148683aa4b9a41c62311573e7d70bc47b9d35b5a229c4d43ec7f0da7cee827e3b1addba4cef12b411e1587d45c9800d9224ae63f297cd1f394a8d9533c08a10d22beb496f07533b2c81840be3fdb2800507da4f33e41022e24fa7f2266ef6fc637fc4d86151c3a9563e6992c7c30af88804188730eed074ed6de15047527e1c333622a2ea0c50fa26bf38416d2a7bcc5cd17bac60e1d1de0a254bc6621e8d92ab98358733fae58e5d146e72cdb730b0583eec231030b03a200d765bc4040524ac39b14f01b9ea881229e9e4f5ca6001c5f8199ad26ecf42bb38db50e83b12ac65847de4c0b47034eec9a64be454f808c1ce5580e465b52c0c4e5c591956f38544eb934c942e13e1dc91a1a2b333f94d0bb9f0aff3b38d932596c3c644327d77fe70e6a2bb0a103afe3f7f21862a3230441e69ee78b0bfc4e6c9ce3a3bc58c3dc5e13776c12e3bd54e985622e0eb108ccc72e65738dc7458d4fd2c7a89b8e730b97aedce1abdcf53c761985b5625c49ca894d917658416e5e6e6b5370436662d555a79e1da1270eef8501c14bbe9dd3e9c90c57bfb352e7fe59c5b72b37b0727e12a03907c4f5f82f776b884c684edb60dc43712d8a194ea42b9b21d6757748e411fb02109f55cf7acf7de0975c454b39e8b810e8b5635a56b7a8b089518dd44275eda8a491a9a5526e10e87419013a0a8c2c7d789381e8964cacd7d3a72a98a88f8d0f436b52a9b349a51f6301d1235049323387c4e7c5aa79b2d9cd1b6148ec556690186943eb8ea28987522e875af4c1daf027f759c07633e0cd95a2152019e9a5e04c13a04540a3432881acd08afbbeb4f6531a59f338e07188a7d72da4963b6ec42ab553ca3a5d7cf935bad77a1cde44615e0580691323ba0b8eda63900d71dab83aa110c851718beca68e19d3140719854ff654f5cb6eba00c92321c9691261169213dd32576fa8ed823eeddec778082235623234d5ef8645b4b6782fdbe900ef80d7fe26964d628bb7648484a4a37ef5ea2c4c3190a67ac90d4ad82c4ca7a897b83f45bc04fc0d5a2e47edb0b47a26876aa7bc1f0bbb5f5ddb52b543ae2db59457eb3d7c8313193ec0e09ea79be362af4a90cb3dcc2d865ab19283e5a6fbcc9681283d78ba4690ec409f3564eacfc8fff79cbedf8da72276da862f106d5936621ab81a0eb61e82c9974bef6059e1f363e02bf12e9b028f70a9ecad43899f882856d748022d66610d2ec943222d118041e71fc8037c72aca02a22b9352317ea053a03fea2f82a1e863222f773648f4667103ec55faeca601c41f547f7966e5e9c876d18b1f5acb5d0a1b1dc6581d01ba0f965c09d4140170d2ef73cf8623e89e8b6b3bcd11e1db046f3c80a3eb595534ad8052c68b78ff2a8f23462e5a2fdb3adf7b52b54479e79188befad9d60b093a5e8e57c260a2afa06995d806c9630315e963a954c3781197b1263f7abfe49d5196b5157d99f49dc1ea7033b97475a025742e1bd0322db4ddc740c8d9b48fa2d4c31f5b24667f40ffa43c393cfbe386598f7be7f794814ff21dc4ebbf9c38b7d92a196f1f3d33a75272f6e6983a608a163ec710f7b2a5bb62c2ddeb32016a1f01e2e1e6f02c1d32af5c16dd1ce04fc7438354e68ae65a2b627a0914591b155f95b69c6bb62df38fcc5b61146c069b2a2484c946975664188664617481149fed58937e42a78143909b2331ce62a0c2fa71e5e9aaa4ad7b530613fc83a79c22c8bfccdf46925783d508ed1b53da44dc50318c1e976e3dff330042244622e12c4c66d62901e10c25cea5118456efd3e211743f71e368401a31f6cf63c5f3232e445be55cf116b693b516f5035733bb591a365a9196cd7e54d8097c928e10ef43082e155c48a84206e5ba5942f355395fa8d7bdab0efc16a0943d13def00bd7da0c79859c3ae6537fb76db7c5ff22852ca6c08f2ba95cf538c2046d92d0814e1394bef1ca26edecda1d14d16cc28a14edf78eb1abe385b08693b8a5dd80b620ec3c303d60aaccd8bb909827dadc0620bef3ba5375f37c66b2e1cbcd75753a88fa77b5838951a7cc7f385b1100cc8cb819646524f6745d76fa51f6703e50182ef8cdece842e18abe1bc3a7d805f31e7b396dc04b20985b021b1c776eafac23b7680257b0607276f1158b527152fc92d18659820c91104d21cd7937b22e745c1999eea08a826dae65dadce6aa99724604052c08784bab199871b3055a3b662bba573273c3ac70551fbacd6ed39512050f29758a52a4125ed85351cc80081ab5de8374f0824e5be668d5de7b77ff7a304a975f76996c5d0b68929b004180767c235183729423f4201fe111461f9f8383518b62a2e552d3d7206c8832575e7a45c4ab15f0f3509acd8790905cc68b1ea7a3cfb50d4c07dc5d2d878b7dcd1737eef52b5423a5904b857c0d54fe2ffc3dc5ce32472a6549133fb3133387c384e1df89a41a51675d25c79a25fd07edf14ddff07fae8b7c5924c7f266a2082241a014c3fadc43cee07ef07f971bd14e3ff64cc2ad10aabb0632ecd5b675a803d12ba7dd0c8ccb01e6e5dd62a30e5a146669bfa43d87551c634b69a0a8b890ab8fc851e8d66b239c749dcc5487a8e045d097e242a9173da7614b4c97e008232b144ae2fcbf212a0feb713ca38a1703f26a0ec4beb8ca45a73c6d9ff0ba493b3455f56b1c18af90278478aa513de530fa5b79605062c91eed499ab1915fa515f49b27374910a8f5fef415b244edceaae104d7a31a83a33a1c3a660137989514a74aaaebe9e6067421e8136d8f0166a82823b08ebc2a7bdfdf27b02bac425694f02350f9e80104c32ce96ddc3c01911354a44fcd8204fb5903b559b768e7383b11ff3c69627224ef45116ad351963b5497954a1fbc0567b9bbcd0b158c34c92fefaa5c12834780f95c4b3779e6df76fa8631c6697d73e10f1b3bade0c0ca452df82740e2931f0e5ed375e9a2d91a361bbec431c969b86e623d90cc56c7532d19bcc162bfc5a8d78bf71d03f12ec9a976c6bb136be1b373de1ee013d3f3ac5bca8184e85ec3bbc5d71979cab53375a8e352c666b3c6f8bc92f869dff71bf5cac658e4388f58b3d3153448363088d4f15e074fb61b2fccee9323b48e5c1668654536a4c76fec77f92613e9c3ab42d5e156e81a16396067228f33b069160cdbb7ec0e237e468a870344451fca5e2f55167bbc11fe540a94f2fd40fd302d07b02d3ec4e04e4a906e6f2bc2d386edf8cbafbc4ffaf98d56793527c8f08081d4e257f8858229d47c4f5445c18ae894434da3c557037aea240ba9e1d2abe868b84a6d07ab3cceb13421c9051832f8d87e2288072863bc85c2050a63a51015010b4e7ab88845a0d6804f0b8294a8116987568e90bddbd5b4ece4374de97293fa667318a3906ea453d887587b744deacd7d236b879f237c6cc5a672006ff4a5982394ee918e8485fa22993addd9b81c227111714e1903a05e57b442ed9b76768d504a83351655b1a58c0e820ffeb82e5d8617c6cd0f35cff268cd39c03923ab0f47c8141afeaa7832039dccc4a0ace6a411f704d2e93b4ea626d9a192ea004548193410303d0a0813e06687ee18dad9938b22341c063d25ff7a3a7c2b7911758d85af37fdd560350e070c3c7a33c08326f1b0bb5c918605e0c6b85dad7978b750f881f4141e1b31438707671e0427defbb81c478b6a88200bd73f737923cddf683438fdc9f253da573578b379fb0909e35c4afa4fe6c0049c87888187ec0a341852a4a7a3aa7d38bcb10bdbea33cbbcf9a01667bf97eb36166feaa5d0d9e98d9e5d0021a94342d1cfff24a3f2273e9fbf3205b95300daad59fee913467f91395f6185ee79b2573f01558dd7737ed980535999f10a60de0ead31099d5a500057a54187b7f371b9f4718bee7a836150d1057a0380e0ed6b6fa45d6f0dad3db5b36c220ec2b631fe32ac58ee89f02c421672bc6c7de6091e3c3b234bf9eee2b1ee0265d17fe288315edb1cc17bb31d8eeda3ce47708c9814db4b5683c803547902fa00bfe649a7d6fed74213569c5488ffda5d5471509fb9399ae01b21e0f0b42912ff0f01a4ddc8fe91c94c4e01451bbe511342033dfba4f0b7de7d107c4738aa011ad6abbf6284908a7691ea1a8572f41fa5306d297106e428da9798a05dec434f8cf11781ac8f75d721f5783e5d36d3a3532dc58d05a722a6f49aa2007f100e46e2fed9bf630023f6d8c807e594cda60811ad31d35563892c68266f8b00e938be1713f5a41b4f207cac2cb663ee263b330c5ca161dc81d52f8d10e25837cd5386de2406c3fb3fc5e6a0ec36a38512fad6f4c207ba5632b4898d513d2aaee7ccc76b4707fff45328851a0660ade0d00ad4c3ebc531f3476e96dc4925a7f6eb0c1da34d237dbf956fbe0f1107be7b864c02f8cc5f30fae77beac12e5afa7ce0926f3a831c7d39f6863e03ab5df7fdb32642b8cebe96c037ee51e9c92f9caf78fdcbf478b210fa3d3c1a4f8fcffa77c361821c70817d6e89fe43d815cc8b3de8e879e3cfb2cd9e87d8ccc4d1aa288324b613e83fed7dd09c333de878b80a461e7b261afd31eb673b376be0c2f5884dcc5a53b8013570cd0ab4104582fb7f585ca909152f997143910b8b4579ea6c31ee8bce4facb94abe3af0ad0f50c66391ffb9df7c74fed0298b9f033bb147e115c804fceeb4f59cf2147b2f3caf48d97f0b4e9f49760be0d2b86fcfafc4dc74eefc86e4973e78b53877cf2ea556d459bdabb9cfd7640e9a38ffd68bda63b36043503c81e61a7ca56f313a8b1e0eecd77395188e8c553d8b5fd752183e593266b1970d6686bb24f09e84e2972c8ad57b56b11dd03d21aa6a5a2d5b49b071b3a27ac083428922adb1433e965abbcce161323c035f358b351d22220f1862f6b8412337a3448646175a604b11314eceb8d376ec58d1680540b1ae17ab8d1b833b000bd6b69ee3e22ede09e8ee18dbec987d8250557f4a25a6b32f772b2850b98154583f3367c7a76e7140319474bf5c1a0433357ed39b1ee2b1feea2f7edd1ca6db767a84c8ba65a5330c492e96e07a04347bdb215f1174785e907ac5f02b6810543ace142122d22af90ddd2d5a9c01bad59adf283261a451e818e4d080633eced017a5139475f60cad14a07f166929b900500408204b67524cf19b6a07868a08ce4e8ed3dc54133312a72cb361cc5c0eeeea9ec34b2043dd5980c7f91363a9d99f80a61d09617f230e043c3f061b5d269ad6c729d6f7b92bd49902444cabda5947b6f29a50cfe046504fb033580017fb21045099da240284640204961911bc22345200a36c4b4301543051f24522e9848a9882106344215fa4c21b304dc697261e199483803cf462f7a28e15842238550b8038cd80bf00c13176498ac705591016f74919a0a8d9ea090248c9110871218c40834a14718c3e11a4303744188058c3087172a96b800c72c5911ba20134ee9529ba27a522309c8831118945c608cc02f3dc21b3858a0712454c2005dbc4841898b1e94ac0842263cea129a30054a799224090c23a00fa5908751f8410f57181ce0121aa091500b305c542f4229512e422a512bc014c88021746132c5f32454214958c30838a4043619852bf4089fe0008368b8cc08854a30c0192f9292b8c892640578039970459710680a9cf2c44c12d71623534a2f1881567ad070842d68844242200e18ae322f5c5d90b878816405d8c33119b009c75d421b57c22f51c0a225e00a4f21084b58905404096be8d1c11e477274f2e6a6da2335bafdad5a7b73534712f703543dd1ba272510b8a71d62db939298ad12f3b253d5c2ebb306c502ff686ae242375de1f99abe84e0813c3c5ce2a1087c49d68d4e522e38a7a9d9c6c530043eb9279f109e62c49e5ef8a063c2b1d361afa9491729ace94ad3176badddb858ade94cd775170f79409ece3967ef73a2391571a7252729a729168bc5e29c85531930fb50588c2e561b709b001f04c36d7c227a7ae18b7a3c6d938f164d46b1305b930e2f1338242b5cd210210ee90987444545380617117323420069e8c8c7eb84d00b9702fe6002eec004c53115e9ab3e6b4c74abb5a61a33faac35f9741237c5faac3195a9317d619aca1d37f96832fa689dd20e5a49eda9ca9397a72a27df0be825abd5d4546d5b8d288665c4d04c79a32a09ea060d54144c25ad148c946a20f9800c01d151036283062a7fc0a6a657b1b6b444f14375201fbdbf470ebed7fb7fd6f40f1567769b29419d12d05de3dd0f3535357fb7cfb0d9c52a82d4e4091d92d9c69c6edcec0edfacdf0b054e5f3e03f8660d25b17d3062a3a02585534bdef47e815a5299d9678d0a1abe595fe9c7a7a634f4ac263ec7d78b9b1a310473032ee0042253c0104c0dae497e001962d2e3051b1e2ced90c980c0ec0519ca2265acaafcb0cd86ca2ce5910725026649a504b31ee8ce48ab80994740cc66134a837a31615ed9b2628b97f206cea7dca19c4cf0066c2822b392e32788141d92588c104441e052ce224cca086632c29413cc521cf9525e29271489193d53b666744812520ba1a01f31caca80991033627cd0b2294839a1e4c844c81440cb1290fee05086b8a16c51f2d90ca9a43a0c10012b6500662266f3c945c9533e600665a352ce27139851aa16ca29a6dc515e9d183d847a7634c120825091313c327828954a9bd994ea8187313ad49652e0910392161732b09434dc6c01b3f9c06ce64075904d250098d127f4832822538b530ed388862717680c4cf3480886726654862e1b6e94a2036653660f419c783da6ca04cc58002a47cc6a98414352da286b6638ca5965d63280c3860a3346b3a424222f846a5471a12f547022801965316934ca44a2525a296f664c10cce8ec92426943f6a566a48528a615945890d180d96c868171c7d029da538685843a7d59a11ce1efe56e77efbdf7de7befdd9290905ae47c912652d12cc890d24c8943544980d95209a49c640650eb6816d86c62995129f30c2d9a543409cc34a2a48226d1b3590605252509e537932a97941298650a6ca4d0c1828f274382b6a3242b65d00166530a8fa50f19d81194b6d9258e4a55a22a1211d1e7308a497aa5d771637db5ce4e5ce69efbfb147bba739fb1be6376aa44a2b8b46550a5c03ba174fafb57fb52b0ef272b15af36fb33c0134abfbf1aab5495eadb67a7ece4795e86eaf9de7bb39385204a6b6f59ff5841f76d5270d6061eb75fb643f37d5ece39e32fe7fd61bd7baa57b7ac538ee33c4c72dcc8715c1e73bcc7cf7123b9751cb7b90d54f377d0b96a39ae6e1fceeeddb365bd7b8ce2d2ead3d10d72ad61383b6e0e96476bbfeed811f6c735b676bae5ea733b4649704f77f7e4966d9cd673acd6b5360c1fb45ca5ff0257addff8658936fbbba569fdf3b8ae638ee3388ec379dc3ddc8ed5df25ec8aff07bbd493fd6c354335c8fe6ccf49fe93eb48f7def9b9eede5a6badd4db9bb3208fbb8786a0334c27ed5110e7b9c6fa15c59b8f6aac77fb49dcf5eea124e8eed9b2ddb3b968008468d9e9bab3be569a96252d3f3d0b952cb42c61fad7bdafb2ae7fffc494529a8329e52a856dbd83cd2ee3bae7485c657d1b7330a614d313e2d6b99a6e1f4ffd15a67fb2ded3e1a0831adb2a593d58cefd0efa5657ff7dd5fb1aa324ea7bd5c77bba1a73bcbf34b58792c04fb7d6d3b446b256191fb7b17af78478c1a59d566047dc5810f6cb16d4df30a8318a71ed5ec3f6c661fd366a5647c3b74a9f7f1ba77e0e1d49ea6d0c74af5f0117b7ca32d1555affbceb791eaeaf298cfb15acfb12b6d61e4a82b3a1e409f1824d87e38d05617fffb423c071137bcef6dedfedf1fe6deb7b84e0ded811968bdd7bf284d879d9fb0aac16fbd643497823994d7455d6e9edc6da434370522d25b2173c4256f8324254d4160569a96f484c234c1dcd8d524a29a594523a371a1c2654d566f691a41adc6e9fea6bf1ad19e371daccab2dccf63e6b5339fae76d1379e3d86efff326ad765bd9b1ebf21ae21bc594d4501f1de9c495b3dbd349d2911b3205e3046badb561aa04a6a99284a910c018f8990ed6ac40b18204856fd66cf4f5c3c99b7ee300064040bc6140cd4a906efbac5901d26fd0d1c99b1d31803acc0073c088a17471b112820e2b2990c034c9824394302a2a8c6204a42581456e782a0a673668b400ca8811eef884555c803aaaa8102226744285c394284bc0184d43888425188155353899c1a56508144185904809210c5444905161f10219d087cb5395b026e5c113d843911970c8e203dc82c3e505069718193cfc80204c1921f4600a085baac0f410ca300596e0043ce1888ca5d0ca102036804234842ed4088b84c02b283c91320b9ba4ec409d015bf80256c112fa8012d290448a072448600b1a086347d82343100b5e8042a2174c5178402a513c5811c6d5831627292117252017a625252541c02c3c88aeb8d025855046821228b1235056805ac68036b6844954c21f4c40224e36e410f61012d503e471039cbde03a13140e99102679d203b278f2c108658c74c9c14a8e2658a0c2143ac8500369f8017e90838a4678c20a3f27b8be38914171d2229c6126d4c10b58e60ad213282420093b84558ec2214040201d346208b5cc2861802c943b9a84108ed02445dd67a12c948d2ae21c143f7c8dcd6b86cc6d5911e7a0f8e16b6c70700a8a1fbec666f76c1f1a5fe2e0d38470daeee1b49f4e561aa7d12aedfb68a227f2dd23d523467d3a1d331d41ce6fe8ffa8bea37ed180b1d85f39784e7eeea3453e288d0aa9223a2274a98af8eedbb747f6c812b95fa2d2105bcff44bd88ed6a836431f1daa226a50a2d78dccd1ee5f3b38fed9493107a79d14fb07ae93b4939a47cb7af758ca749216d1a32a82a443bd876eff83cd52b7afa3db59c3e2a3e8270d41ea1d0e038ec66a91a643b61671d7f34612c525391db223ec883b985dd22604b93690cbb57d38972be6da402ed78eb95cae2dabb177d5d88b2d1a3e922dd787cebff5b845b3f1ddb37b76cf8663e4e874d6678d4bd0f67b6cf1fd9cefe73f3964f7bbe37cdf9d7fdf47513be65df63aeeeafd9bb75abcd5e25fc2f2fdb09c15a769b59e73167fd66eb5be44a5593d6fb1589bc5baad1f494a43c3da1b979fffac3423c96f6b243ba04343c37fe3fb599bf7f7577bdca6bee0ebde48769f21a88fefd871618238df3d9cf3df31cef98e71ceb7acc6f88bacd5e61f306b358222efbb67f7ec9edd13748f74a1ea07e8b3d64548ff58355b6b6d0e797ffb0e3ae5f6c871acd7ac8dc9add3cee3d9cd626d16ab84ddded3cd1af7d6fbb5c71a35b09d4576d0732806dfef2f51598fa276edb17ed4ab518ff7572bd648f26e47ec71c47ad4f63f98e6a121bc71ab367824ef28da51767304e91dbda37ff48e96e998d6f57710ddd95bbb7eb7b6766d5de98ee611394dc554f6b33657fb75dbaf3647030e743afe6fa39fe9e74c3fe7703f3baddede464bb7dc6d39ea0ae8b3b6c5878b2c7349b1052a67149f9f3c21b2727dcd9f45f3dbc6c9a923493dbd1a69f4d65aefd7b5d64a434353697e454333927c64adead6df88e276af8a3cff08d231bda3633a1644e21c24c3746715249361ae619aaf56596bbaa3b5e6d13c9a47f304f1da8d21daa6fd8e6e55e31dcbd18003ee31b9bb9fe4d6515492daa7f2e90be8b3a6456a0b0baaa8fed98da9887403f459a39aa141d6e3fdabffd1b756fef5b6feba3e3f08f6fcf8438d9fe641d8ac205cb059471034e309b1f39144713bf64614b7dfefb3b7c71362bf1f0ea9b3bde7593c76dd78c1d7396b8978bd433cadbd3b747fc5a3793ccfd3b19eefbd57f304b5280058ac28f571c393bd1b4d7972ce34d63bcad3c5dbc95076030eaa08ef5fccfb770622b739e76c75ced6deacc71cbbca4e9444fe8b1ffcd548d6ca5d8ee32e776dce5068bdf729f53e335112f4bd1c756b7defbb7b01ee73cd50bdbbf7e7f53cf27a97de4b4fe8a5efcbc082a8742473ade14862d7d8aa99e966a89ba1bad7ca4e34844714d2488d24e65ef7c94ac5a5ee2b1ca7a6d9c9f33c6fa77fd65a9b9d3253bfd4fb6f2e91baef491534d649593b6db5b06abbae5a6b3b6cabacdad8aed6f9d7832ae20a112c4053586257a268af241d12da0f75e1fb0eb6f3147cffc379deb8655c0445b54605613fcfa83640f4a7072723d035026c0337d262441dd6672d4becdb1b567bdd7bd4b16ab34d09ec530af4c1686cc7072759226b4ef0f773ce7befc7997defe7f673bfc7d57728fab7dafad3e91face271ab41db8b075e6778ada06875d7759ee73dcef739dc7b283af6aed5e9187642f76b3b4e6fdb564154a7075e66388963b05f6b156b6c10b091b97bf4378c1469673d857118ceecfcebaec0dae7a37dbeea7ed53def4ad4eff54aecdf587b6888fc1456c27a79bc1d076f2c12fec0ab8a93367d83c2812294f17bd8ea3f132eac9e05ebea3681b5d68f33bb1e21d89fa3ffbe1e757a859128ba47ebe79dd0d5859da760b55510f5ad0c91575995497db5c662b158a73e36a0b1251642f48e8ee9c84c196ac747e79c73ce39a7884ae7a4242a9dacd9e99c744e4aabbeaaa02a59ad2a45bfef95a1ba8f3f4e9bf838fff49d93f41ee3dc3167ccc116787fefa81f775c17033045e4b717b675b18a17cc2ee2d7f7fe47bb91ccf11eb39af0593333d4f17b667e3eeb3d89e9c6c1ef795cc77382b9755c4570a0ceef784e30abcd9cb3f3beb50206dbac935212b976bb2f981c0416d05cfb67c184d1eec16aff300568f7fec3e0f330dd16d014293c0beae371f37e7cb3d2b7d65a6be7dce61c611ad833df2b89e379d36fec8857115e9f1b2b0c84b5d6d26cd537eb98a13e6b6272f43e6b62807eab9f53e96b89d79f2b445114c5a8283ba71d5f4a28c6fceb8949eb946fd65a98a23e6b61866a60cad4c4c46a61ae68adb57662b7096cb558c2e20c3391f3785fe7d75ef7288975cfb0ab84db3840ac61c21cf5af6a917e1d9262c96a8f02af249d4ef798022c62703fff7761dd636f7e86755df7dd08e2c0e9a8abcdc4506a607c6a5f9e767a66ca4e46dfacf938383d8a67cf39bf681c8fd0f5bd8d76fc2f1ac7db575c39ae6fe0f6ef6fdd6f18e6e9178dffe3dfa84859a002dbb6c0ecdce3efe8ac2bced6babaef05a87bf1e9db6b11ff772bad2b7b7f8e1bbe71f2596bdf72db04255174dc7d095ba25e92cbe1468be59bf5a6a060cb9f33f377a446912fd5e91d6cc31a669b325476f256ffad6038b3af5effdc1818b76fb55aadbe5b7df7abf175fae7e9f40c3b21763cee0a83e97cb48aa9304c73ce8f337b1e21d8f26f9f379dcec148ddb97e75fa859dd0bdd3e92815431493f9c42ca7639c25b2bf6df6c2b426f1a77734cfd08c6a637f5e3c38d65cf3681e1e445d8cef876edb0677cbaacdbddbc65dce8218c96dfbb923098a24fd49c1ed4943d40a2377ac6fdf6d76f7d0105bcdd1b9afe368491dcbc1b87b6c0735f0fa1384375ac743ea0768d431034dc811912526a8970e4e69344ee3348ec3fbfb34937ea8548cd9535247b5011403170000280c0806c462490cc520986ee60314800b73a63e6442105045711c05510c03310883300cc2200c0300020030042144b8f6020b8abc50151a2d81e117782c33678ce177ac405fa1dd4f44863046ba4a4214223cb60dbea442dddcc68e56e3426e7459ad0e3a7c56d7125705f2089c53b7aceb185518a9100e40a9179efebd876754969999f36abea163949c46e1a70ce5dca9d92afa38efb0ca63cb42656dd9a6837c0a9bdb1997a44f209df2dea5d155d8e67b9b31b6e6b26e9242bfe90af69c3a9ebd3ea2b7e85a95c102669b6d46169c031a960f1b6bd10dae2f7c3e0ca5a66d2ad8e2b01c92b074eba4dc49f9fcc524d5bbd60a03bb903dbbd4eb17dd73596bfb055c9b472301fa4ae28fdc47e1935ab749376236fcc2a083907cde65a51104ca2a92102a153860193a74cc91005bd412463d1f5a9c21d9170de72ffd6c484be55dc1c2030c509746bbd30563084aea13c3be47842f62fe22932fd06fab41928f22e162da6f454e4c43528411c70a7ed136d7c3a55a4c1fe781539cd807e1497121051811e9027ea13c9c034911afba77d9d8613626519d6055096fcb8904b9ab695c24b485d589604673bd5f95365155e435ef573b65d82b2bcc3f9bc103e6fc3394258669fa24187192d50543b1f750a4f967f4a6514dbcc797f4fc424c63517664b3fa28f0aea90a022e74125630cbe4f876ddedd393c024f043bf49012d0694112db30e0c15dd963ec54e7292f95205171597517003966d935de30bc6e0b6220f7971e7b48a2b8850834fe99768a6b1e9eb8facea425e734143d92d158d35aa0f3e69ff409ec348be365b59166b1f70a2aa30d23f144978278a7f5719feb19f5d9ecddd7dc72f5ff1d8beb4a413e3f31f7269cd5069b154fb281bfa5796da62aa8c50b0786347433caa22ae8371ef1dc228a4a4cb328ab56914a26122db514180397be68f6e5c8d7e0c1168cf31321fca56c9ca72b22326ac91b75e1eac1dbb43a9b03bc7ef880004372fc224ae813700678d5ba9d9b37815bc2c23dd314d90cb8140c4530bf2b2326db5e5cc68e3bbd979e260bd6d4db943d7d615b32a58cade5dd5d9d0e8db014bc10cd57c87f1cc31a300203573558d84231b2a09a339a8a530a460e7c0cfd64e096945f5299fccdc9a8349eaf49ded73d8b20a75967539b967a802ae189e119aef1e7a5eda655d778df0921044bafe999a2c1c2b5368a4ee775eab123130d0d384f6d8835c12da512b4b3fe356a9f12b4e91069e177ba51fd8269a4129344379b77d26f3282006374da336f903dac1ba7809a79f1264206df0783b48a335595af0e320eba4ecbeb74d70dbd27bdaa4bebb05138f25b3b07203b7f631e0fef884d3810858bfafe1b825ef2175cb12e51c107cb1c8c58a98a902adfe73bb2559b262158c344b1ab7daf59821d6b1f3ff083202f5445d2240de2fadb257fe3be80132abbce6d670ab76a31d521b6720e70ff9dff198812f463db60e5a32d7b47d73fc41a31694aef044c58a66f120d12408e2a3daaff79bac4bda907fafc74c7c437970511b98ad9bfd955ff5b9fe20cbae45726addc2f200ade52bca05967ae6c433c8ebe61f5f5d4bb8763bec85dee3a22461c0b39538b466b357e7750e7458a611a5f775091584ae2ab1af04ac4925631dbe7c60b88588c0cf88e573da8e52b8bc3ad7efd58d7d34cdfde87d00c301a81922508c8935c734edad8e71d5f16a0d944f9a5729c909bb6c33433d557832eb125b9b6da52e593c8918242ddef2c5659826596a658dbc0458b95e26803dc55bda6490cb099fea80b7103d18b90b95518749e4fc8e4cd727aa5e1e80363a0bd5aec2a8c45b88cc611510ba063a119262425afa4bd361c50289519fba39f10d187096a6299cc348cf986ba3af0118dd88b74255213e781184243869d082b6b0f5604016989370a7cbb0c1c9802b82c983c0c524de61da98edf503dd4b38e3a8e9d6c9305171f956668a56949dbc0c9269ef8ab96d27c3da93bb6a91aa1de74e7266d3a4969edf07dd03b771ba71426633fe7710204761eb5a9070b9a9dabe2640e6a280836179b94952b6ae94d1daa28ba534d4b98db33fbaaab222341c4a312c88aca6d024786ec6f616e3a51b510e269b47371e2fe86f2c55db221d3d5af5ece8e47ae1128bfa0166059c641f5b842d58bfb99238d9ec2a22eb44ad07965e97dc56f9e39d0a87d52cdb010b2d370c57825fc792d99fc980b6710a25503d23f35dbca12f9f252b348af9c1617e9d522958c9c1e748ce5906749595a4011b2c04c9754913d3ae70a0be9f9e6f95fbcbb1a3587eee0015b4db8d5047c04f69027fede9babe8843f3c452cd547a0a37a2fb3510f66082f2ccf152c52200ce1e2df031121a050455f4dd9def67f1dcedd7b0b607c881672ff095d1c3e5875cfacc605ecbebbea419e0d5d6244798a304c14ca037c17f363fdb704f589dc1fff9ebc62c886b7a69ffb8f997a63142933fc47f3fb3d456ba5793c8809751a912e51fd3225b482bfe758b6ccb8ff100996666b7863aa5a7299226fedb2e38833872dab86a482e46e025bbab61892b754c4cc732ce7d6af42beb0240f7685d17d816b763247f792273ff506e7fd8a44825821b22f234aca2060e17330e39ba9b2f16fce1bec66867e5dc6981c7795b28445001dc4e951620b8d18ae2c7431725ec41f50e0112e2ba1edcf7fd6d2bd80abea1a6f67ba2296f134e293eb52a476d20bc4e95300606244126e118bea9349fb23aee8aede54e00eb454640f8c7e413cfb35dd5c8e35e461aa2727cee5b195353c49722c0a503021dce68b983e56558af9db0852843d16c770936ab5b63e9d8c87d75f30475f7a1d8a3643cb8061dfac5df6f88cf6c814bddfd770201a001bf98292a6961b04fdbd5b49a13026235b4d48325ea5796129b7161899e06e6c5645ae1009a586d5c525af3c7154bbb7cb9e566a5f4d4241c47affbf1c6dd66d9d7f35cfe6cb3b8c82f600d8e33d9ff4a90f521b6ad99d3c35c2641e9841ad2107f23154219cbcb6fed2219bf30ed7c972d0699aa7b5ae8f867bc0f589831f938465b6c207375ba626ec56ea7a39e121bdb4d10a1692d8eb545833ca6341a135c2783e2352c1175bdcc0547a1cd3674d489fa4ab21251870620cd0526ff1468462cc4f8f870160bff3af519618c09a30226413a7df0c8c57d5891a2f86dfe658fc9194fccfb43c6838414bab546b7f677051da6b5a64d6894cf7f32093f165721a4f0a0f77b6b322b9936fbd97166ac9d2ff7550d2215dc1dc4bb4ccf14ff9bee7e14fa49321c62925d160c89e4b45aaf8d934ba163b641ffa29c8f1b8ddcbeb429304f714760290203195f619818a9807a0ffc4afa225a665054f0d0861a1f3745103f0b1f7d4a9b52d962f01127076209caff14540396a27ceb1ebf701da75657f03026fcfe30829f3a088f9ec2de9a173822fe4e64511a285b22e4f47eb9d8c2dde9382b77656f498e98b32fa9e570b416ead398eea26686040f989a09c9f7a5a03b70e0038ec153ffc632fefa17c6ca79208b8efcc2b01e8295c6c4eca842b88ca7dc2e91ba8c9a4ae6711a7d0e166927775653e3d671a7492f2b6c3d80819e99322bca8385de6f029b227b6a6ca9b007205d30c22cff501bb8d8437e475de03a1a0804a22e1c68649c742cfa6110c93d2c020951b03e15d3e5059eb1c4dac19034c4847f88601cb86efa46fb2d2c65aba9b70dde067329994063ec49efe5f3b72739c6ba720005b8fe825b3f4a2ed96d1a18b48d1fbd176823f57c931b2fc681432dd304bb3279698ab6a3b21c6540594632bfd5d1293217e3374d61596cc4d9066fc38861852d308254a8101dfa786c5444fb028dedd13fe88fe8bf84b7f349aae33caa36c6f6e4575e33768e93598edc8202ae5808b8a53e495a339b503fdb155edbec2e04e2d05cbe1e3869a338d7dda3cb11bffcabd5cf3332eca338683f3b1544143747023b6a2150d8e91cf8650b7401539b6fed1b4b3a71f7a910da1a8f7f42b774d34ee107df0b5d2a9e59ebe0b6f0cdb5f5e58e8bedafd353a5098de5607051ee2e88b7752ec1587f9095d7ee17067f2f8d6d6f75bfc75be3d9d18652253b32f04d5b2ff0829dcaacb82a1d486a295af17416da35ff5f9c6351cb3880359605175cf97085f2ef94944c86ec99dadc036a1432bfd164975218dfae5620448a42fbffd39d7c23f8db4aa4102764f8a55d291a42e77df276050e22c163a7681c8305d1c91436f3e17426bce07d99d03168e92e35afa7b748b1680d22697331900becf28b264f4f9392cb970073d9e4622f7560eb70e1860aa76032a240b2d642de466bbd1f36b4391db0475787888d93d5a690005215e56543c9bb2ed74d0d97748a4c299e2ad3515b00aefb5a74190a9b0c2cc1644fc6fe1305d06f40aeb6f2edb89183e7f13bfef67121294d8bff4690a97cf5140141ea0284480a745a672aae86f3bbaffa8f9f821d2979738417e08961785bccda7641a845a82252f7ed4972ea84c2865cc30c97582a8a58f0d6fc99eb56598760950f6eba95979e110799a31305426c96b3159845f9727c88744ac49793509336a2e459f6ecc92edc705bf0c59a2d52f2ebc8699f1c60cc1ab8c25969355c450a9f59417b65428fb415f15468b2e2f64f41fb842cb5aa506ccda17051a11c5a536062d28bae8e1ebdea4cc9ae6beebc76ee27f503350910834b354b2be3ad8e990152389b25e5a321db28199257869f5aee0309a9709b61c719e25430b72402f97507981f4c271c26a074066eb9306e1239e7b01c470115b559f7568a8cdc250621b0ae7321eb600d35a8e01840a64636219f3f353d907f5d65b544e2d725139bc300354fcc3f4bf229fa0b748c01a9e0a51889bd8b630ee3c0777dd726b1f2f2a908261d5250ae2d60a779c802a54dd986ebc356a7843b6d237ff54e4772ea449859864ee7cdbb70aa508292084a595cd5f48e6d09cd21c7d93379675d3ec9c13b1b02cb1eeea75f9b64d790a2b6e1036ce5d1cb6a763ca709b05be0b4444b494b6fdb47a2e0b08abfa757ee90726499b63415bef3430a2ef62778d20c1a13ed7194219f7d9cc6f0170bbb64d20d3fe3b1c82da3f031d4583690f1a4fcc8277caeab3feb64e530674e545fd2602b9d71b1b286e9c763faaeca0604f3f23845ee8981b8183beb9dff44efdd35e20cedd48e4246a60979e99628386062214a7e16ce2168ed3e38e340cf4ae784aeb50dcf0c738dd6800fcbf86463c1d995ec812785688ecfe589b087815ea733038e2077f0e820aff279bb470e636d76a44e4e9e195f6a0def0855023b56b6e5b50b7cbd8586665cb6d166dd23128ea2e0693433b8a9d00bd590829fa219ae1bb188ca30c36b6d9ceb91243a91da5508d80e6d42527c40e1c1ac0958761256100182c233fa50332601b4780619bf8e05bdbddc257404f40881788e297b1dc1781ae3842128eb12c84bd9f4e665c7b1fcaf29d297ac8ede65def6abeb5c01c0cb41190b9476824cb8871757215c44b99372e8d7a89ff45bf8062626d1b2cc650aca745f1c13e405415c5d23553c289eec4e188cc98a97a7fb901db592945a5a04d80a0239e0a015e8a60d807341bcf26698e73a6c1d602f82e998c50055802f9fb10beeb11465e9a54feed52e0984fa2e526db9076194cf3f96b1743ffe526069d5de25cca9be24f2fc519262a9111cc8864f7eafd06c5179abee7decc32c54fded320e042728ed5814aca5013f7ce93ec80db8634fb678378059bd01cbaf5e397e320017b8937f524fe6a7629bdd2d8047bedfc06d6a25febda842bb8bf8abef866cd902164399f4e97f2b9d12532bf66e6d4428e3ac44d5cd10203118347d7c745f8c2d34dd86573bff823d2f5530c4951e57abf80c007af367b27b5885f3542faafd45047b1a46d433f63f60c72b6f7c414537141879fcf4590bc3ac98470cf79be41da1a6dd6bd12686e8e611ccdd2bb1ffa07b64102377584e467174c7801eb84f816a11a5cc443d968ee9581e8c5cf398d0ef94183a8bdb30cb0b1f50827de3832005a347ba29c1833d92d4aa8ca8c3ce840a3887a6ad737a5dadad5eb91f7e1d9e39aa24d5a389a39c2e0c7e92331109bfde0b80c9ed7e1bcef27a36e304636bc04ef8196946f1afc3cfa810268558625ecfa08dc754fbfe9166a05f7f522399d362e6288bc38752990d729b512547a6cac1d79bcfb6b8a067756acdb20468ce037f7d62dd7f4583bcb4cab629e7cc1239d4b44945d9cabc10e3befb07b4f4f589abd66c6d23b8c043365cfae3f41ef8deafe01520e4def7b4fdefd94f389db0238be84da70de1928e133a9a5a313b8e63f8fcaaedae4c740536c330e5c3ff7b3f396e244923f258eacb05d9d96aef92840d40bd91415c24bc57485c58a1b06a05e465c06db1125de2158fc161f45d221ce2377835179fef4a67c89b14795a20135e6eb480a992856c4bfbea4d628a23f882f44e0e7b9f00cbdd75ee76013c26de6e76deb786fc0ce0e41d3563c3774c5b467ee28ad177900dad5b51c28eee6b95b4e59c82c4e277e9d583d95ada014acb457d583b9774ad14467bfc815507dce8d9f962c70bc886b8dc19ad37e65595dc41d2163438561a23dafea11defed0eb5a175bb6a802d9c3594378a27b31d12432caa935e6b63a3860ad5d3233aaf358c315875b2f1a91a69986cc0e9fca4d70e6004b9414e125eecf17c0dac62ae11177a6a7241a8729303d8fe5c82a237a4b0896161f556d71ab3cb47bc80c256c7541a00446eb5dfc47ffecb8a3165025c48b45c7e90d47c3ba45f72a1ac1cb3d3766bcc04ac664804358a3985da7b31a94013c8bcefa1ea9e84162bc97e255474f590d53b6e124a636bcf9ce1dd854838cfe814bb85ba274076f5e689f7dc3a0c28d00c5790daf38f8bb7f573d3975badffc96fb337aee1226a2e647d6146989cddfd38c5497a6194c7e08d47c47a4afac09df21d360cae826a51fff7f9603dcee8b9c4c762d472894559213c17f9ae9562b4944cf4bbd63e389b6a4db812fd19ea99faa242c09cab5cc9ca8e53c4eec08a08bb417994041a61945f8adf7f898e4dd660b49946197db34286900bfa5afdfb420f92980193e02f0f0556d17e74cd8ac7273f8d4381870b9eacd5d78f555601492e382604b6d69d3293ad3342866f6ba5ce9d08265a0c5aa4d1431e1d5e35dc4617a99ebee098b246694a45e578cd92b057a579d3f4a7eda8914e6ed06473c42bd2125a3ca12374790fb8cf85778e2a8ced986f10e8eb2e2329ef5cfee0b272e45d12a385d6e0522e0036906d229d47980fdcacf5574374394b53e8d0d9aac3369fd1b5016aa1faad965cd215fb0a21dd22ecdd4bb792e37b8fb66aa4534497d0d7860f0b507cfbbb0e8d03698047b828ef8c2b9aa20234563e1fb964ebcdea17617a207e662566dd10eeef3bc3f85dd9a57be14f7d7304317fa77f16fb5fce7f65da309c014e69352ea8e8411a73a2357bd38c2e0ec0ea0861055292a1a7c029eb691411c2f308413cbd952bc0813c51fb539a88951b758cf3cb35b4ce5097989a9e449c2713f0b7de2ea4378964b71fa12dd4411f2a7080382ab79918268a6440adc62080a596d7580364445fc07a23208241418e27e938298d05e1fa52a14bc095bc000da92400066461ba28e8bc35149c5502f82ac78851f2128752f51571631796a3c52ce22080e47795e8f0621c84bd2b1ef9de9bcd8a5a72c75cc9ab57ce2bb97cac98863f5f827c310b5bad3a6cf73673f474aa2290f19ebfe047b49ad4e6e41857a68536a28ac0bad45c40465bf9cb636df2454f5c7bae31111c7db524db07716e6091289476e5251be3a96de35390e56866c59f84f28085c157301e51797d61bf3dc9ec6d213b8e4819ff6446917c1791db3d6de500d4f49f2ba16dd18159ed0a18a544352cdb71c9571375ad72cba8a97e6e7e7002dbfb786cde9ce53da08e0a257ec3c8576845c1bbbce280ce1e82c426ae93799b7a5e9fdf396c5b03a748dff8ae18be182470f196cd7a0d76c3fa325a068ad34a0effdbb3a96757487c8c0cbd2d1904e20f34d0bc124abbca5e849441ebb55ae5acf4f4e0333270ddc890f5c7aba475d01fa18fdaf1ec40c80525af1227045f5496466257d655578dbffd40f0a1e26a70a6b122df5183d5d4fb44ca00d2ba46b1deb8708e155a3de982b5537e7753c3eeb5d60426ae0e8667452c8322448fbf8b22eba443f40e10b93bce0d47107f728eb8f11084d75fd80f4252bafdabda6fe8f8014493b2bc430d0e235d42feb5c3bfd29895a3a09717ecb635be4be5350601f6a23a56ca12a0b6393c0ef2dc7002ac91abce37908678dfba715c8e66cf015bc7e403f6077d33b0c02b239a21d08511722a3fceb4e7116e3b0dbef5df3d06ad3762c3ca356f48e1fa08c7555f3fc97ff7edc9ee9258a61681a8aeb5a1ccbd53ef56aec255d5babdafc3419ad0af96eceef5d12230f55504b142d516d80b0b2b9d44774e600aa79d57592ed31bce05f84e501d655ef58bfcedaa84f43595ecd3104c0b4fba7c1caa9b5cb6086aaeb4c6608d8b5a94f48bad80421972552da4a363594a25ebaa318babab2d615951f9d3a124eb147dfbc122226bce7e1f0d2232f016d70970998a974b505663100b8a4666ffc95e3f27d96853d447e2c36088be6b8e3eb24af5e606cc5203e02df03a4175c9c5a727e0536f291cb08deb81d3a5339a53b89f10357b4450ea9a958a8e263c4d3a55a6745b678981c7f8e94153b43973c788daea292b343df51e624a376e461a5b2ff1cba684ce3ccd05e843f0afd7d65a8cd00c04b5dae43e0666f7641496ae7ba4ea7ce4762cfcb53363a358c46fdff1730f98a5062c29769002aa90f6a6c18a2113fb526b059c6f0948485606ef9c55f10ba843113ace5f738fbea188d62a40b694a357353117559b2d93b5ca62c26bae59e9a939c83bcfe9cd82a391f285312ea8aa696705a9f5688e8809effc833c033098e90153a81220583fab7d98349dccc109306111edc14fa71535a03c5116a0a646453772c6014afa1d6ddc1ca7de7b57295689c05370096c2b0359b7483d02bbc5b3657f63e8f1190a469102028309ac1ca1d4f1390ad3881bd418daf620071b4f4a21193c1fa938cf095566960f42e8031b27c061f1023332a1d2a10545212598db06c36a26ed454b627ce97e4818ab70631cc8ac58aa63d43b999938e6216d6527440e7d1b8f8e04ee71f4a8f4dab94e5986df67955c0980dfcca38d749a3afd91c156fd3ad03cabeb58dfb7f81c63472048a98f6ffb99ccddc9d5c4171c89d19543546966a71ddd85265a19754a909a823d3b07cf12b0bc43738fce8706bdbc106d91510a30e6177182d8888bd94e003c43ff9a7e15cdc106c9dc6e867378b1acdae8187a576a64870c62b73086abedd86f960319adc33703d90729425e837e6cdaff7eb72c7605200f30275676882083bba677f71d90037045db2c00aad29d137addccdc09c9c8509c11a7dcb9498f73f822a9aa4de489e1dfd7977d1b4da43cf13db32e8099f7216afba4bf273d5cde6d4933fd140360aa71c0842b2442b82dc5e14227acd294275e21d7294f2c472265e55d515b50ae6954692c379e6850948010a81f5f834e0e2c425984d595e677a296207ebad7f345ce1826aab2a914c16fee4f1a981cef8dc66a44e5ba75d4015eb948161e829032f1b64421c653d859526535e34f4870a86495d5f43e5657a7734ebc2a001268354750c64f7e896e81e3875ba374633ca15d0cbe2c7a1215970531705e713e4f5a446e812b085d460974d2113b2a175bc6e328cc3e0c3cd4b520e382ea55202dbbcc55060239ba7d8d4a251e084289982510ee6a61e82ce3892722487155ae1c12d29a8858edd9d32696700098430c03da2b19bb0218eda2401a5e8b1e902cc5925776c5fb130e7c9452646353b785a17500b8d466aa10ad05c0d35acb9868dff702142d19d1c63113c7246422a088d3bea7c110cb373a34442bbe2f5795380b4ae1fe010736226506f0bdf3d55b86c5343dea9e109a40eb8642d8de0ad7d06161344ad3572dc04e69f8beb2b2ff3e54e79894d430cdc1ff1be6742a658bbe89946aa079379a3e6b6bd54e3fcaa0f99a13a7a3e611cbc557a78f0deefc17ee347d297e5ea26334ec19ce66acafd4b9b006af91f2c305a82e1a678ba18c8074f0a4a88090d4487ce787f133f748413e4653031588ef1c11470426024c62565078161bfb9cee5bde5f788ad060894ca7deb5146ad19a37870a3ad96bc61951659dc65dccc68265d6783a21fef14c5f4886afaecbd77767983d27a3ea2902e34ee2a682daa95420273172568612f454d42715822fd750e99828a6906d229a78a63088100dba9168253903ca417beb2362a4adeaaf3b22be8bf70eeb3085100e37f28c80a4068fd0b4d55b7e643edc059e287d9d70c2301c089ebc1a419fd8b83f6d5766eed709fb67ae2ef9e371c4f98ce7edc37b2a0b73c22a9c3a04c8be849a4745d63e4b5d57789b167274b136e3829137a87a5bf0dcedcf5db38557ed7382823aa9469807d9bdc901151d5df93a7c4ae81dc40723bf8f4f2715642ae986a29fd8efcb1f5caeb34cec4652a3909ea323299457a754743054d1a0d372b3d053795cb771e9130e48b084248086fcb9e3071c8869b40e8ce4c1b18f1f58aba0104f4d5b63eaa941631172f317ad47bd073f205af975bd07c55140d4e007070a5757d422370240536b46ffe1cf5d747939a95b1f6c2e54f19321a37321e7dfaba12ef31a3d1f4ca5d2c398068aeb58b2857498f0056ccd05882ba92318698c43443953d405ad2536683c2a226e07a440bfae4c829bc165a4a9eb708b4ab8086a461082da97bea694e690e771ae27597aa34efb92ec5371be862f985829c4863be069f5f276b9c5ffbb70582c5eb751561620b51c712e89f000a0838cce228f8980c7b33827b477c782e5fd54a7f19f85311122ccf0a5d9f5cc69f841fe914d16cb260244bd89d0d0c183783d378ca515a73ec0e98f396dcda49ae6e146286050ec50b10679234cf5f7394976d66488a8dc11297660a28e1d98dce2a147679220af0c40043c5495d6035475c7cd6f0e5a756c05155e4295c08856343acd3ad3e5904414e94f5da957c813a8d3ea603ec8e161c4a64537dab78cbd638a2905647ecb196809467a645048db0893c09bf6bd362e30ec6a2f86076f7475ca484154e6bb5c7778434a7b6b5158d05ac2b2aa2e2d001b95781089f336754f410fbcba881626faec771003371c3404cfe83e03854107190bdecf95190283aef0b20db31d851aef224b9443ed743c5dbc7b47bc1d92f64242aa4bde2412639898399e2e7e97236b07f90e720e4326a1375bea80065eda8021c706bd2ac8f9251556a2c99dbc6612b72f48fbeee5af8ba8c74905d0c5131ae78ef5b1ece3476384487b122ea311316b1a5a913dfe1bbad4962afbe0faa214b264f916c9b3d93fe3cb9915a40809ebde7308c419ebaa6c6324d60df919eebeba2781c20f6238393dc325acab59fdc0acf548977dc12f0dee889238405704cc6e60ecce513a4b1c62ce545b1e3d6a74ece6d1718be03018dff0af16a45e9e74abd7949210ca4e9f97c8b1544f67084d0ce121b2397a83e7d8fd89d14c57cad810c3265fca894a4dc1d067fad1b3bbfc7b9cff2dbf2234674642735671e7e81d6d61f9a281c297e18d8d8862f20d9c4cc36017d74257768f1a8c03499b50b0bce7ce60059decb182655d122140e84c36a41fe4062ca0cc663188c278aa48488596fb8e9c4368ee5180414216e95b25b8497d0c0e756b28ea30b9c5069325cc53977839aaf0506d1076ff93dbe6df3461763a38c196c31b350f061bb1832e6ee17a2c0e405b850b4559157ce0d3251a12d0badd1f292a3df5d3a567cd211311dbc3fe76e1d1255006374f2c16431ba3a5da208eee8b60db36a67b5da2136721d2b550b394d60094d6a6147d5bf03d942f6a79d739338a90179aa08e347e13bc30106c0cf70efd6f81a3ca85ed52135fcf2c0c9a34c8c54b7d5de2578d0bd9b5127fd669e07003a393ca0736c323416542dd66fc4fc812d64bf6299a5e24a8a3269ba0e7227f4f9b74edd313d555fecd7d25685667c36bf9f57a8b93abf8f7bdba70945d1b0b91eb706c3670481391589c22dd135e47709a083d189f1c681dd0b3b879537d95e41c756c50b52c717291d3c9d7ccc9182f6d7a4c986b5cfee10fdbb17797dab1b0307a9269e07006e39bc40d0953cc874d406798e7c37294e38ae6b8031f5f94060c1bdbc416b8dbf906c825fcb90b9fad51729bc8ea6f4f3b1ffd36199c79fd1ca8bbe45f7b01396c43cabedd7886f88ae999d3cb59f395d2ca78afade628aacc5077e56701ee176b5be390749f21df4a7a00a45aa1eef1a8964cd06a05ab3646d3db2480c3629c9fdc9862b5fc6d820b8fd66f1b79da92248a75f28393cde152e5e1e461da5bf1cc60ca5873c6b988391a2b2e6d5b1a73eee641c5ca2c5394bf265047551ba22fa76c5511f86026b696e21ce1af1f5658b023bbf5564e0e0ab62e6cc63dd7c928a92e3cf11f847aaf1519b7f37d429d49e6601b7f7491786be267c02fa19d62fe955cb7a6f57065a04defe4e773665c603096a9bbdb682db2a1422cfac9b190aca896db90e8b9cdcac64a5701c92c3ba6dc43e08dc9b6265c6b8308e21bd587848e054d40704ca20bf4a60b68fd45687d45f92140b4995823cd9f840c63bbaa4afd543206b4380d3719b17e6bff0248077f1bdc68e6ccc7237400682ced8d2d6ed5e51d14b0d2a78578140da9545ffca1bc2d208301b56bb6f78680314305f982a1d0e81d872cd43ffb94b6b80fef11d0530588ebaaaf7feb44dc8ff202e9b951c72b9fb621a19d1bcb1f18907dba2638ee510d2410b64907ac7d2021ededfffb29442d6c568b1705f65399d0430e363e8d0bbfcbb76fba947e3c558dea0a8490eb8592046c2f9ef6bd0f4bad515581a9318620e41a1f9d5a503d09b909c35b10395d5cbf20e9a4732189246be7e49fd25afa147ff31663acf4a6ecca2f822fc5130a09e8e9f0a72f95ae5692ef89244f286ddbebd4e992418f949ed5490df1ea94e9c35a190f8192cca1a0b43e3194edc10c71310d3948c53cdd956a3c1f2052e3d44494ecf34c05c94d22335bb22d4c1e29a24b1e34290ed074bea474067fdb75d680bfe73400ade1a960310d31ff6111fdac3970d2288817d95f70561558ca5fe97da14cbebb775aa9c45aa97b70187cb9c98d5b483c079a80a538852f508dc181a4e86e7611ecfbd819014b2d55a0f45ad46fd5fa48f9e4355a59acd2df58d079d9dbfc4acac0181af38a2636af34e562bfaa74ecda484504594b5f8341149858b851a5ada1a7475113d0370cf66d3a948acb0dbe63762c972e215fcef4a86b69dc91a2f436663d9b7620aefa8ed98d76f8a208f28bc2d5e6057991cb3067526cd99ed318c4f17600e4566948405d4b3dfd8ef769527fa434d3c5cd0b43ae0a2c6955b056a6139ca8881313454da3125203c72ae2dbe11947fa10e0dad655c0b287707d4cec96cb764c330b0fe6b8010bdb25e8a2629565010a03c40a4294d65eabe86a2e761669336f2fd7ac1556fbcafb9e80f249a4ae479e558b3c4799c5ec83917a9e52f033d2eff1ace00e762785e96a616e27cc21214acfe48ab985006454443435a2544b726849a0a8f8509d8b4fd8990b047df05c1adb29d43657caf0884e041e828f5fabfbee1e390115868f516f8c2d54a8eb042ab62e8de89087f21a8776ce955cd547fd5f4603378585adb443a8ede1b01db5182131fcb9400c8f1baa35912e1765e8cb2fcde639e1f1b507962256cb3cbdfd528af11bfbd1d222bb4267cee4a3dbb346a391bd7582e9984778de907a1cadd63e6e1db22e7ca81873b4eb68eb2f30bba864478297737578ad38be32d52d523ac7d016c2b01af16d083afcff04adeaf4963d8ba6d2a41e7e28b3c9571cdfa28b7aad722bd1371472f4bc8de9f09c30936fcb6127c074d40d9a208bbebf5e5553e4411b5e7f253919a2c6c92576c359fcffd053f3743a94ca79ea103e4a8582503e7aeb404434d2f0a16300b71f8f2255f677351e8cbf128292651946da504aee5fdfa637e10ae2a01ec71159126dc39e4765eb6fdb5b96d30a27debb53b3a4f6d73249f0e9b57bc083ac5069d76201558771625e21578cb55c56432b11654234409dd669682ff98fe67046495edd51304e1a892ef38f039f555b938e7782e72b6284a53b9688311158c018942b325e22c9d5fd637a00e84a5a7d2b3e06eeccf33803b9608d6f7d928f3081b1dfe09aebdc02f6eb8b30b36a919be69535738d1ed698d678f8dc98b5afe5dde2d79e68f5e87cb3387a8672a587b8507a46902babe9b13b0c0611c5df836c38f56011ed99adfb59cbb34f2745da43c92d17a2acb687cf9ac5ab67b6ae715a9e7a360b690f25d7e5a1f5a0e4010591f003a23c48e1f6b4d5827bf8f5d08250f4300511e29f9f3d070b9174880b893c792ee3e15250ad84127561703d4927a50c31e900721abc1e72bc49917437671878231cda6fb883b8587a0edeca08e1b3e361a566f1ddb371578390a2be4779cd02e319ec3420b40371a1ef1901e793e1b1df30e8830a9f0759c3e9d1693940c9da536f8fe6866b26946c484fcb179c5698ceadb84530622d8fec4e1f224a88c6a73da0dbeb1e2c961ec14e03a20ba10f81e2a10081d01017dd3c765b10c4ef811d420921f5400c110df17ae0fe30ba103e539ed026fb109fb8f46cc0f5dce0117bb3d041fe94c8246b776e5a5be3b1477791f250de741f5a1ea084e829e541d0cd42ef195353e1daa3ad611de2a2ce333dae07309e116c164c9e9b0b7e187e50fb70b3ddc5c5338e56c607155d0f522d5f102bbe7b6cb5078fd78f0938e330f5f6d4b41a93990f42181f0618a83c77e1e011a8d37cdf43cdcde2d593b4dd97246b94201ac70bb2bdeb193f0cc9dce2be79360d6b0f16753cd46b2ab29ec12d9a103ebb9e72ed9b872f9f9b03f2e17c0f3ed93da7cdc58717085d885d0f28882208e81edc103910fa10691e0a10d03f7c41840b62c5ce43d0a509220a8e27b97dfb6c5b0d026a20de09e5a96d46ff6041e7e9bb6c0f53218a10500fef10d68580e7ce53839b85a6c7e61e1cc22cbfa7259ac5744fdf6520d0215211e222ca93da4e05ad271ecd22dd43950e74ee0cbc47ca68bfed7c38c5072a07624161619aa667497767f83e2b27903b2f08f7cfdd01ffe087c80281e58359284fd0dbee87c50fa91fa008e24294471a17452d0f75348b94a782bbce834fb6c7bcb906916e888b5c0f4a5d8ef77dfb2d5b5e8beca4bfdb72636f4e549966f1e549ad2baba6e7414341e41fc4dac72c874bf120cfc30542e603fa3f8e44b8090f5121d40db132d783dc798d34d6110f14bd6a67b142f1cf531edf48b9167066b03ec62d5c84bc9108745362911b53096aa05a0541b9a48d50c80be5da0d932e38d2bab3636f0ff48749d9a990102b14c5bdbb78f5a4d64951dbf3709e82f089e389b866d1f0d08d5b11e419952bebc003b2e93c2c20a21f083d1cca838a6ecfad86411f65f59acb33d0a307c466ffc3f207540f451ea020dc3fe484d041a43e2136d87950b1f40cd69a10830be262ef4901a782c113b76611e4a175371ca3a742dc17fa9e3a370b73adc3c02ec2cecd1a58de4a80779d9ec5e322fd96cdc9f9d2378e30307b53a1ef39d35c205e103ac03203400484bc02aac0e15c5f400cca9a0eb6ff0385712166015e7cbe76c3514c399ec51f2d60caed36f76ccc27f333d6fe7e1f64a626be7ee7b8bbd9830f0c2ccd8d3d2073cc007ba6c318ca0b109a3f61a60d7137d5b026622fb950d1112c32696defbdb794524a29a50c5705730503063a8fa1065ea7f3bb287a3b2fdd171bf24c2b82409960f4e7044e52a65ac13badf84a62ee560938f9686cad73d679011c4f3a1d4c16f4a7b8801aa30f6b3d7192425130f69b748ee0b438215a3690cee88cbf2ace088fa72e803e4ba22add3ed68fe74fd1fdc95960cf2349c574fae4bd79def028a4515aebe4d6b13de1943ecd4229b5ff7756562dcaa9b1f9f607caf5d3674964eb330cc73f3bf9f859b856db8ccd2e8348ca8c89321ad14f9fe52cd759e8b39c35d5298a85dacc4c1774f2d71dc10ea60bdac16461c11ab3f6da6bad9d13a952a43e2dedab6fa40538f90bfbd7de46e0f4adead3ff68d8fa41a9cf6fe9c0e9109a6a06e76a8c4ed518d534094cc9f7b772e0342f5c0c59cdd43135d712c3294d8ac9ba580773ab0bc7c13f7b4b0ca756c9bc140bb5426d1be45a8fac9bed6bf1fe1671c760ce7971e1b1163a320c5ee4495fcf6b03fcdedea8693fe37e04165b22e0f9f5b616638cb1fdbc6eef6e83467cb605c4ce39b372bc0f3fac39e75f596b43ad3b2ff6b35db76da559e72b23e29bb0960f1c7ffee75676b5d842c359af2929ecf1075739170cc3508b5da7b5ea67d8815d05be0643f1c3e08bd7529bb799b08b69a8b5561d9df69cf3c5b7da7bafbdb5aac0799f2551addb6ae9accc9454cb07fe2d327c56fc2dfa94cdf11f571f18638c6b056b05813fc871c09fbd8215ace053b0822058418c5500df7b3c5f54954aa5d2af52bdfed56ff03d71a50ac150d4d1c12fd673d2d43c4bd453140c483cf509c3992cfd9eb1d2330641ffb42b28e53546298c3df188637f7ad0b19de15481bfa0bccb372bc7a1dcb125d3d092e29fce60830568adf5fe4fec70fe9b730bdb7518771883dc02fbac172c96efeccbcf591bd49848765f630234ec64cceefdd75150ff77439eee6dad5db777b7c7dda281e36e24bfe3170d7c83ba437e6fa123ab3875fed48771905940af8dd7061938596962e2466a48b49aa0190818d87f8109d4e8c0011b64f0220120e0a4ccaa966cfe45bdd65e950abf0a84ae02af4af5200882aa7a9bb89aca1475b340b5c2aa7bed1d490ffa5db2b1816deeb577f5c262fc82d715167ca95423b93b781f5b7cedfdc2edbfb8c1639f07ff8bfa59bcbb0e534ae988b3fa1efaf7571a47c73f1d5c853f431c7624b864f3577c1bf274b2baa32fb019135057d4fd22ea66d3c2877fc27660e9b4863e4b20a99fda02c3c96daded5e363ad1831a8baab1faa5c6eadb2d59402c3727dba7c464244917d558a5d120fb5ead9f6dd8784d20041ce3fde110b4f1d251f74882f6b1b5f8de4b29a6147723a9575b07355637e001b7f7ad1ef8eea1a307a0b814761b2f1cb5ef1f1bdacfdaaf865d51f7ded66e5b63e47505056d7874d3a0d6be0d795a36705ac35e90010f7d9ebd298943771b3556df831a3556a70d5fa51aeb1e497ee3f61b57d7a88193dbe2d89164cd90c602be2bbec40e6c4d9a9614bfffdf163fa0bdf585eb8957bff5d5fa5b4870fcdfdc13e460ddc1fff2bcffea6ab57a19b3af461cfe3dabd7bf1af5f3ef5e47c7a17a2eae4295a8a387e2febc1330ecbd6520bd655694cea774cef978d2aea3dd66ed4de7dc1dfd99431e4ac78ba7deb37b4a77f09dfb6dbcfaac75efb1d6ad77ad7b76f4a7d8b28193bb93f337d5dfe473b6ce700c6aec458d610bc08ac958f7e4dfb8bdb502ef360ebbee3dfdda6b21b3603fed3e3040b4d56cedc0f32471bc8d57cf758ab3eeb0eacee476858dd7065b5a38edb36611771d72907bcef969a6393f157334a4f93f0df2313fceb4160e47c5f5d5c2e1d07de9de2c4bb54a4e52a46ebf9503cf63cedd972274f2d05ae79c3c57633d5f6f0d167510cb9cb3ce3a6b06f666812c96f3aab118b4d7b7b5d62ee4a11b2cd29ae60cea39a7ced3feec7ab0798e367f6fa72dedf6ed48e6c74fb148767de26dc76b492b830ed4153b4b29d5fba92883f57c3359d4dff485017b418d6c278bfaa44b8afd16bd6220c3b21aab319d59ff02d385fde962767cf1a5ad90e9dde591599fa5915a5964aaefba5396501e1983419cc57b15303b06f793d84506f1cdf877ddb8e3cca8bd7e8e0a903afa8bca41ce3fa37e4ffefb2a607dc2ec3dda4fdecff35addc13a16e715351863ba206fbd9f5fdf9d7ff6a460a321f9e9f731925a9f7dd2a857bc81c347f73d59d0b79fc3477770b2c038a4813f8768a9a53be4e07e9d717fb2a06f5dd09f57f4afeb09b7df83df8502effe7e59f4becbef8d249d9b467e6ac77da999a4a86edf3e3929f5d97580e929fa2c8f60e93828cd9452aa45f0f7d6dddf0f1fc7ed60ce5fc89373fec9227c2d7a19d6f5f759dc3bfc1dc6a06f451277f7474ce97e32d3c89f33693feb1e4ae28fe66c9f87d230868eeb09f759753a59fc2632d5bf2775f44eaacffe15092212f5d46727e2d4bdef8a20f54fa7ee90aaff38c8fa3c11fcf00bc109eb2a91fcdefb44b2ebc89d55cf713bf8386ec72f30e785f14a470747b2fbf03bd587e2de210defbfb1af4412e71b3e17e83e7fafa234bf2a531ae1f7e137ceef55df57bf395980ff79a27e95b85f158637a4d17de3ec321ea74e8dcdf78aa63afd5a0e915ae5faad3e9d3b43459d3df5e9ebdb437ea0a3d789c71e1af4eba83382cf7e541ffb2c87d87a8edb7d56fdfad08e629af777dfed71c2ba4eddc917a4d60a0da975177d964952479a8e24751d1d1737e84ffd3acfe902c7edf449d7144efbb49f2f38e7d5992ce6572e24e03afe09d5eb5319fa2f15699a9e6b9d319fbe8c397a4f47aba3df90039cdf8e392cce1e67e89e8c835611721602d5efcfaed61be2a83c4f556da8417e5086ce18525be6b36fc5183868d7ef5ac26b5254d7effdaddfbf9d061ebd3170c2cf71bddfef43737dbecfaacff1f3a134bc3107ad2107f7e79883767024a91d63d0bd3d91c41ac03aaa5363744efb437dbba2b45bda67dd60385d6029f72d093ffdbe0b4cf363d167d57ba561bf5e3107a614ca67713dbfbe02d5f1d31b6addfea57dabfd1f497528a3f31ec787f6f9396ea7efb3ea74fc3e871ce4d7768e93c47f6306ef1fd4ef5e775fe9643159d0aef1e3a0dddbb1e7f6741ae85324bb9f64f7f5bf2b923bf459f50fe66461430eec783b7c7350da7166e8b7afc79e3cde9eea43fbf6e875f2ddd742722b1ceeef117efafe7c416bad4c86b1acabe874b4e0846b05ee437da8057507f6c5e26e310ba401bafdabd32ded96ee9c8021bfc5f372d09dc0b78e9752159d8e3df9f75791cc3f7138438f64cd41f30cdfac3b3ed4e5c4c9bd23a00573fcc2459aa1affa2c91be9429a144aa9541a2b84ce080078439268364db25921520d711137d96418e7aeeb30c3293b5e87332c08891117248141061043410991951c40f39201fb07d9640b62451fe682a6937d7084ac228226020404adc7b93ca78c00707b2a4a18109061e02c8d005d263088921c01b6ac6d06084a52b7fbc60e442fa8795405ae8aa3e4b204e9d7cd937c3a6420c81c0077ce49c943b0cd10118330821ae2032571097118d24a47e50716a82a4c39826af3ca2f2a3341ad2c13e4b2323a8f2c8486904e5e532ba23b8ae99fd5d1a15f557691494e62373ceb9a7bec5443ff8fcfbd375c4e95f1f0df4babbe962fffd70bad0af731e7166a4e8f553f4fa08e838fa67efc95ff34c53c44554f6c852f6c04d95455232998bc7de322084b8c85c42f4c7fa813b1fd3fb6305b37b982b6627575d068fa8b962f6ec0ae2ae3e2dd0e9cfbb5d9d3a7101b942e0247fbdea4e8e09fa073aba0db91586eb7f5c3baeb5de1d6d4161c5ea0d41adb5e8de2cac7e713dc2b816dd5a8f2aadee5c2dc2ea08a314166be2e4bcd17f415f7567528ac32478b3da45d9692315a91ac9d59deea95e4069b42db4281a189a146d3ebdd11b3542959a6e4e372c7dfe04eaef317c0acdcc15d5a83bf9c17cd46b0b9f4f18f4a9535f39b5d69aec820a8569b5b48bad383dddac3869bdbb9bf7cd90e70341100443d58ad7dc9a1a5b69cdfc90946ae44d42e2bcc6a644d245c25fd7752279b33cbd809428c18a826ab936ddf5e28bb1ad147f26be1689837a7dd7cf0bace435d3ebdfdca913f7c4095be98956cb05ba2a54fd527195beaa53af7f63ab311ccaa01d2be5e09c1c5b69ce56e1cce873d529a594d25ac6ddd6f95a9c5a2ec77b2e97bf5c6e2a97cbe5722f207befbdf7be6dfef272b773b9a95c2e97cbdd6e4fb7dbed76dbdd17daf4aeebbaae03b3a57aa5e910b4b9a95c2ee7e572ddedf674bbdd6e180c5735254411b46289ee799ee77935c00ddadc540eccd95c2e777bba81377bbbddc40f8793c2e170385c0df80262c36abd4e5020c350ac8ea6dbb95c2e97bb3ddd6eb75ba65d1a8d7669389c140e87c3e16c36279bcd66b3b9c01790d7899c143faa006532994c866b352a2e87a3d16834da8d76bbdd6eb71ccdd1f1c6edb95aab814fc63a596bb1d8ad5050bdd695b6d786956a708de3da0ad754b8167ab86e2a97cbe572bd3eee2ced769f56f7a6bab7f0deecbde9e8ec7abbb48b746939b0277534cde1ea4e960a7116e7e13a9c4ecfa08dd66c75e773f29e043b9bcdf691f6c706556f244190959303fbd1d119f10c9ccc503905ce3a45a70a3b14058a8468e107d544ecd041080111e11ef9630ffb3f01269484fea00d2d498383807eb8849068265e7a0e0272b263f440c20b112a416c00893603c10b096a70026408121e7c083591f2a1449110b1238904848890a0048917a61ff0d19451164aaad1214c694d981c7de52cfee22cce672eec7986c98b162d4d8e840061a3a515ee520bb3b94310518ebc50c20d3b84c0454b5684f0cc8699ddb0956821530313241a10dc03a9b66f98e930012a85211d822042041e475308231c54cbb8a14f8616b8c4e001a5334d303253078e68fed8c3fe5fb699c2cc1e1f615f4c861c21a978861b1a024a32abfcc5599ccf58b8459c6942848f243903351152420aa2458a609a2a72d40509164aaad5ca183133918190dc0ad4001ec62859b17139e20546de4163184a82801194a67c381282192438c8070638042102040823647001030df19039fa696206ca072c5884a521bbc4e3c79ecd8c0833ebe10725344079267b189319a0a9c44708432fbb66689e31d9e2f1176771ae99dcc0a520a0a8d952095828bb081942822e38043d86c80b9e7dec61af6915ff2cc5307466f6b187fdaf6099fc6020fee22cced19400e8aae0a5ccb243181c1051699a1849024484da4e119a939a114172584a62caa8868209093c8090c814f128c11252d0069a74f99124ca0c1233a03084120f4c679c7ad48b66090f40b58a04931d484c410825b91dc43014c495304ca08c70cf2c7d99d54860822104a91b6c40227404d3cc3229f171c469044d3b8a84a890c54c08439cf3b736e8f9b1873dff1fca7009a1f64402d08f6bc4cbba1764f66135363ff6b0e7ff00234448a8d085888810189a26e99a29ccecff65f74b47972c19439484de3245d42546cc2e28b295b9201e18a304862ea25c1246974c72f8616bb8534b5c866aafdc2c533239f57891b9362534a84e7f2ad1600e1fdd73268b29ce1a9b74baae70f2fbd71d92d52b9db46b7c49ae1fa4a17ff239b2f44fd1e2b88fbb7e1f7f39a431de69431e9172fcf4e6bcc29003fbacba33df3e79de779ef75d2e479f42d1a83eff0409ee4e24bb19b87bef75a8819dd18d17a77b3046edb9d75083195b6f1df66bfad4b5ee5a3fc557ffd6e31e71348fae1d0a0a8783c2bf7138d8d73f5dffd641ffde4089dce58e55a22b61435e4eb7d41ddb672b8c416f5def9dcea666f7ecc75f136a30638f178fdb1b63d4aeffabfd85d524075f301906197450c3060682684698a8930b8720d8ed1738ebf7ecd70fd22da106b454a2799b83ac579f91c73bda7ae9b458755b256d31267ce9b34c82260954bf3e20e83469d24cf55aa7cc5aebf5491dfd9b61d5603e7d1fddebe3f0d19d067db2ebfa2da69fbf6a1d753ea5676a7df69aed7e3b835efd1ef31a9bb06e45efb1d89136b9da15f00e4e4bc1484c0a24e83ecb1490347d39df3bceaac54575fbf74bb78fa3faad4c4eb6aaa4b5d65a6badb5d6f6bb38670d5e71e7bc43191bbc5de779e0edbc241960685fb5baab95ad74057ee18af32cdd7ecdeae335a18c9aa06edfc666aa047859364cddfec70a65d83771ab52b7ffb9c21855e9a6dedc5c4b6fcc4c4dd5a09fa9a95c96a728a8a7a71b4da24a358a4491286d8a99eaf66fee4a49e51631b215712883e6a73d8f738b9de77dde17aa542b15c8bd558d8d4d091b90e59530d16ab95ae0ebc6bbb9b195dedc80ae9b1327704e8039283c14286ca5285080382852a4982005f8a2278ab65271c354a8a8a002f08a0088dd58cc561a1bc10f635c91825006ed7f45d84701a82294413b492bf82aa8c0565ac1be4ffb7d155b8533a3e791fca0e7cf6385ea7724e9cfa736ac8d004fbe59a74a27a9d967e9d4432532e79420215398acb5f74e7902a74485537e504d999286773d6a3c249b5c4209951295282515155a25fa2ca9707151917a51c9dd5049c204c862b158264c20e1804a392a1b0abe0215abcc3041153054ac2206050a142852a4a84282b1554481091360365554685101c2603058284354a122e4b127aaa0b1f20500af1aa3a295332b3aa200980022007049e7460a0b90befa2caf6cb9225543c2f7ba4d09fa01802942825430856948c5ab680a943ea38250f0c3d138a5081ee2943445df836802241e294a1042a1749413a5078e0a4827b804b9912a7a51c91db9a824715bfdde7baf14bf7d96558e948a58b6122bd06c6638aa0153c4ab88e1b1aa42022255d108a10942c02a403e2d3ebc2f423a2b41185939e3e3de7baf1daf1011e52b4084e02b4b45f78a9421f6ca96a47a45ca885e2133bb9244c77d96578e00404944f6c2dc5aeb7281bf863897d244a48fe0de9432fc033c07fee2c15be03770ec7443931e3817ce03275f045c861dffb04d43275f669daebd37c8ac2b72b4990c69db2c5be9815d20ba16852df7de7baf2b068ee35182827237f7594699f160afb5178a981e1d14227aecd78cd7f212dc34c45fdc6229429697b62bb3eab28187e1357d962888d08f10fab69d596ee0d8fdbe957ddd5e7109fc4e5c9abd60801f8aac1a03c5390bb0ffc3422f184ff67fb786316e17e9bc56857f86ee64063a86f17560b704fe1e3d10afba27dec92254f5c953e7a4f5aab6d73f915557d0de853c61ce33bc2afd2fea1eb9386174a2d7ed064371c298b6567b55f941915bf1eb57ccb13b1eaf5ee9a75ddb74ded5bce59b35ca982821d89d14235292ba945927771434db2ba534596beff5a6d09cb3d65b3ad0759de7d952ca18292a27255b2ba5a05939b5a0726ac16d29658793d38c65c2a994edd56ac5b9130d352a7c2f2ad4e688d630d569eddc40af6f6bfb8ab52c6489c2427f459141fbf0bd9caa180b85884bb7109424706d89ad498aed8a1da909160bb62ea58d662b59266c2cecbad3755de77d369c2da763f85e5128dd41b0aa48d64cf4b6edcf4ae742b745ef6dc1e01a3ccffbc089c2140a63a204f5578dbd6c25942f50a0fa2ca1dc7a9f2514a73e4b284a9dbcbd4239022508138e2c3c0dd1ebebb384323b41cc09663e5a9e9086890915218c31c6434b9b09948b9b543122b391bc7eb80b8a7fb61c7769e11ee0271405ed3ecb1368593efa75ee27b5273490525a2b96cf76efc5b829496fd15aebbda5565d3ccff3be0f4df9640aa462794251e7c301a400b1030f434284b0829b18f9e0ac21f82b04de046628779b7a284afa02d007d0a91635fe2fe3fff2acb5b6547405d589751aca38015e7a69bd7567459f4f816e6db54bdfac2a2d94d25acb26a6b2c90630fd55e99cf70814cf9ddc4ec4d0df95c4e0f54fb1b9650330e7c57c1653277372604d499db46047099b1a32d788ee30410a143938276e5eae960956099b1abe5285e0e775fa48a9a57cf253369129337fbacc807013202026490011f1ddbf98c9104318634ca66c6aa17b7d964d566e9eb87050e27a61e965c4a493cf6b70d249fe649e74f2391a289de49f06854ebeeb0baf7d964ea4944ea604fdc3ba3e4b27573af941e5922da512dccd09780853d4660243c42443c7f845663bf1e144840c152535660a4d9f4abba93a6179926de9f36bad069a1a548b029ba2a8642e18252954430400043316000020100c070462d15894864924ab0714000b718244664c301c4623812889711004511485180308410620428c310a419436b6ad51d025b063513221cee4b40336a8609362dcc6c5722a0cead13f1ac816290f7c939aac778e0389bca87ce8595b7ff813940a91ce052a78227c1955084b0d04ba2c46f020d010c6aa2c18a2c6bd6e58a15bc40f0448a7ea6e758cb77bac20a9aca1f571067189fb83ff8200bd183a95f83fb027f40f6eff2e1d20371d893b5206bc414ac0379112e046a272a5b6c349c3d9d72984de1b9320fbb3719eee36021c29c85591141ff83b2ee4593798ce444cd3485233ac6b6dc4dd59e71a420542435129b763bc442ddaf1d409ad3d60a90ca642c2d95ea62c000437c24ded06fa0046b71b02ee82e9612056f452778380e1d1b633daa06062bef8d062e64421ac34372b2ebbfa005cc7f69bb1a73643b066b6e5890a00e6d06b6b652dbbfbb9ea521828ea39ea78da44c75eb71fc0318f2d1e6ce0057b5ce0e821cd2ea6a141328b9953604e76f5e7e064b76036a58e036f01f6a180306e0fb81ba3a4e8e375abb034ba13814a4d599357fbcf7cfe161dca9f0e74e013a8fe6825009a022bb7ab184f2b819b9bc7ce3bfd4823c53576df97352ffcf5d951d87f581e3128be4c4918d418e915174bf1924ec2041ee7d2a3a818508de4e9d557b9879b89a61e3694694c1a1fe7d1acd36b6db39a3f5d6b3ad813227ebe15d9fde45d301ef4d1c60a866567c1310094eb6a8ebc4bd1dd7c1c81b62325fb911e7dfd71f8f36a4ea98db651223f5f1bcd10262fa8bff9a503eea7f090812c38dedc9f063f7ff4024f2800257eac934059941ffff448da621df7d8da45090a784af7a821322412cf87bfaf0f80e2d3838f14899f3dad45d537688c38d2149ea75281068e9185621a79e0620b7483fa4e6e841b9da1342c34a41925f235389f945040ef4db057e4ce35e7048f45d407b4cb5b0180054683d9724db279de648f42f3bc2faf5e9c8518fbb318040201f77bb3acd62f43bfb55f1c355383d740611c44bd6208056e1a001b8f44e22ce5a7bff589460df747bba8fc373998b4e1a235752827d81a718ef09b95a6b0a63dffe0fa9bee9aabb5dfa4fd09f537a6ff63a98dde448f2a65c384403cb10ca23e6fdc51e42025c27a16633948928e98a582043007df9768529a5d5df92f850802bf4c4ca285c3ab2055c57c8d5abb8cbb1a0de1400481a0863a96732c2f0f15324daf40ab5e2b6705bda4410061b38989b7390543d7e416ff5eb7bae5a0e39be0a860372fcb4cd33cd54b8714469349b4d8cf09f5545d31aa88920656b5a5fed8eb3f65232a8351a38188cca07554cc289a2e9bb4908217d3bd3ca9be4ac389ab2483886873e8d6e01d08d6131034747c3479774414694e108b92141388819676a6af305fa711814057317df1d51c451aed23ea28ae91bdd5f60934ddb01d4809752cd27efaaba64a2ce150761803ad1f4ddeaa46b35b6ca4cda5a9838197903ee19054a10590c0610d410d9a01c0a0f0c6a941234006c134a4469a80190cde20356804cc20b8c6d44c1ba00d8b0fc922c0001968ba29e3222237c025864b61a05fbf3739418d8d64dd712b3e4b4db6fc647b18e09a060006da9399877ac6a1f08ce6481b203614cec8724a0380c3c31898232d401c0ecb688e3401725838325e80c04d397a2abc808f964a0b0ee8260b2b25940b94ee7892b73ef2cda28e4ad25b17e55e5947454900858f6a6968124a2ed3dca570318566d9c3eb72f9b2e46c3739651ce1f01e7b7a0a5ad208abbc5b98fe8f6a325cdf76875fe298344c2e9ca6cf8f938442e824ab2a43940e9707c2c34417db30f97135efed9254339a461302f7dc1bd69bb0e4c45e153356879f4a47b39bf5954d8a0b0fff52473f7a65725198de87a37e152a8ccf0ecc673ccf4378bbf48f5ce3482260cf51f2dc91a53d2ddb2d619f67bd4d258753c60661db92f3bfe313798e7cd101f785e515c07e0eb0445a65418051460954fd011dacaba137d0b07a24ecb579b0662800135727294bdbf783eefcc81eab7f1729e7078d3177955c16bf0ad930d37b0fc6707a49507699a94565d2ebdab4042a9392181ff410d42ae5b53a20938deb785b84483466a46c6abfad73ef34cd27040c2ddd6a7489340ab94461f45a377609a4a6d83ae41f867f20475f649d2b3dd987e51b837403ec272afa664aac8fd6d5476addb2c903d352cb8308ca461f8ccb0090b86370fc1ad439c229c8c59a9fefc718beb4a57592ae9b251fde19eef753385948c669e91da9f65021198eb0c45afdc16c3a4e5dfd9189adba8b22ec82892af4b27a02c8d51fc4779c1c9b0d104ddd4000c1c5dc3c7f0f82f23d73314385c76ce57083988c4ab9e11c7f4535b4ecb7420c25c2f4d9425d1fe539526323d6cb98f951aec8f222e50b437875fdfac4bb308860681a8cfdeb4202c2b3ed5cb49482a2030b9f5477e14a4b48088a5c6d96678667df8b7f7394caa398814ab09781ca27bb2d33f1a653c6de127fb4fd494403552022d3fc047bbd4a98ac8744c6065693d6c4c424a88d90fd73091a6d9d67661f680f35dc3ffc9421be3cbd7b2032488c02e75884073ccca9186f2fec7a9e69356c081beb74a487df85112d635e78067a1acbc37a0ef2526433a976e91896899db1fa2fe407f7451a11c8c0be012c05e9d8777f143e1eea20f384fa25d8fc135acf467a043fb9cb55a6b566a08de1eb863aa09d30cff121797f24e674b61ab4889e5e83ed7a2366a945e0312e150e151c612798adf9cc3f214df8ca1a1378608b26e45345a6628661bdc9d8d26e3a0fe90801f4a12d2cd711e9677bc13039f24af4a80d86b62ed5486339f3160a505b7cf9ba54628129cd61c734639d9e23600207f30784b5089039e737d6dedefdb5eb7c7151841e35b73b22469b174bc393308ba85272df3bdeafbfd3b7420387c881be1f4f7896bcbb52509204c4512a184323f555e58d4cbde924027e46b8839f062ad2f7c8dcd3e2c53e7b080081aeb708a9aec033be89a9ce8fd9ada26581e3290fe00cb85045294ccf7c1f639cc5bba60b4beaef2dca15ee20ea2aa03e2e9db85534c980f63dc5da87d5c1fd5708f8743659bd1b4ab86f8f6cd82abcc518093fa9a87972d84fe2f851f4ea76202331de4bcadcfdf2c07d4f2c2d5eb081929482113f621fc213efa8e629118f98ee779c3c7c25463edd59ebc637db7f895c8a29b121f6956216873bd90d5056a1b230e758c88d1ed3423445063f8d559df4e31c0ae6e75c6e4491dc201f37eba84a74d84d968f8acb0cee5b1070f8786cf6ea8a2e4b082ba276fb1e0a8e89b2f6273d6a8d3ce8fd09640258aaa3e253c96712bc23a5619a00044fac221558d61441bd5c7e02497c40be28026b733c9dda332b8eb8fef4dd8c8f180f93e7e449c3423e30c71e04b9bc528d1e9001556b270249a65a7e103739d3833cf833fc6521e58256423d9eb43b7bc18ce7d020da91212f544da2eb8099df431c45b76b98d23d4d0e9f32196cd54bba83f808ed866b01f8c748cd02b554968e13a672f21847aaee8a5b0a95f2075ee2b4e186d0f892181faf939b35904fc8349b9e164bec270de8d22d715f52f133629dc5e604c72c0ecdd957d76675f75f0a2256f52f3fa8f335970204c0baaac5ef0c44ce9e4a7668b9f328a75baa5ae76db9ffc1a722bd602057a7ab524bab21d1326b034c1ce5ee84e4b4ac93cb2bd0546106b313502d00d09fc16e92d405757ece6d02ea8502fd3dddea4b134a76ac5b71020f3648206ddbaeb5d4baab449ccc3156ca86c96626ae16fa58c6e1d5b6c4e762add90d1c397c104d161267bb9606ce892fcaac85f1b57e10f33044444cfc8d14b537575a355dcd36934ba17465bf533336ac9d8b2f2f2932f126afa3cef6e2d28ae735a5b6bb3c7f794a82a98e75a17d611d88eeda87daa83bc292f9f2a8f09303bde8bcebcc27a3afa4205203f6dcada1f31955537fa26e427241672dbab8381e6cb12eedddc47578922fce6abe27ab83e64d9e04fbe2a0282afcd5dba04b1f3e4166bb90df07db0f65528ae23dd57cf3057af1df386f6126d115be1c4548c478bb278e359f16d0d9c3c22167ebfedd784bf6b3146dbe42a9aff17d863ebec19cdca6b7f3d989a8993f5098c2d30a156e7488bdf8427fd71f4a6820fde8c162276086cc7519f83de5f88ce4568962b138d841244154c2807f21911c113dc3695f34c5688e84f3cbfc6cf7f5a1d8bb3cf2949dd8d86fb031fec039c25df94131dafb0ab88f286264d455c5f53fb3f94da64c272a55da56ee32b8b4a47a26e24dcc4c3d858700b31daacd0e667d451697c4ed45c0b231b86520598d177969c8188c6ceaa175acab4ee680452eac51654c8a51ba385c29eca3790c3bfda5e7721ebc513b835464000d7286240d5ab0bb6909b4b752e0f1922e76bdf6e8cfc5ecaf19a84d8baea2196ba251a38c3266a4514618359231e3463362bc716a32e5204d9470420950225f9824295cd52a0e572828d5af74ad1d9872886af03523801bc51c1a75ec87f7a00df22645104932633aa838b8b582729f873a92e402e3e74ac84b72d55a01af8f063387580cc7228ccd5b2a62563a258d8bb458cf87d0c61709cb04d8bb06a0b415323fd8a0a7b5d78dd4719416111fd908210f40b90919cbf0164be0cdc715dfea002e4ab718c20119216a4f1008212ba75cc0e4cc384035de5e94df4a473c95cfe353291234f52e304fe18efdc76463878de238c50578124e99c1afdd840057f10847037095ceaf5a269e20b8c7a0289d16c6edd68d483e4b9fca8adc485564810869ab23a01ec91be56438d8fe22895ea68a9634631571ff1cc5a9990f7150dbd357e28d324754b6ddcab0683a5d3a057fcca3f811492f2c37fb567657c244399cda27de28145ba919fc2408630d0183bc1f294dcb1b256ca801df580becf1a56d89e092ea636d7137ad41aea8abfa7396be3c06272133a899338969f77300dafdb62422da2dae95efaf0582e3f313d94cc81cc9d43944985bd5273e9ee4e858307aeffee53d5a9cbf83fb61de33fe9ffc68872f901c70a80e0c48b2ae1773f1c39ef23e9b0a083fa9d2b25924bf09a2a2ff75feab39a35f128aac1bc8f214454b5910494ff39008a6e218405825176c6542a71e58f92c8a2d15a3ee980427197d9add7ed06422e534ec83e34adb93dc388d7468ba953711987a832611dbf18afe6fc03f9d0e4c605e3b1a18d9b2212aa700b01ba24153a75901686605cbab809df4968d9e5d060982362dd98ad27c49feceff87bbcccdd26ef4bfb4d5d4c22c37b9d7e4305fae8a361fb3113762e01ed59a275a0a74838951fff64ebcf9cc94aac516658afee005d73cfdf3801f9141ff3d816e63ef5d69f49fed7de4fca971cfcb4372c45e84e41b6d15d5640b72befed58c688230d5b31e88dabf23931c9b8cd1dbbf2a901ba70377150c02a011be6abc277e28639ffa6a378eb0e9585f85a919dd79598ab2a169afc140a69dd1f888f26f3e463009734685fe53fabe7641e3f067493dc0887a2172fc02cba3014369763c314238c500b82050f38d873a150f8acdf568ac5e533a770b280413dddfac66367be2903530082e71ec14bb99b912fa513b97be058cd648a1dad676f4f3440e0952442a3277450e5e1b0e2c87bbecdf7d1ed5b01498eb66ec356343c61c8a16aa5256bf1c5bdbe6ea3fb2804d83cfed3b113e975fe86ad4a2e64a2dd797f08fb82173d39bd97aed4fd171f3471cbeca9898db377c3b0306ae54eefda383998c001722376c33a22a449046aaf4248550464eae6508520690ece0681b341fa3d444a94516a647e5f414e7ae3b33f522026e79a61beeb239aa6ce7f4cc13c62ed4738bc863e5a49110c25d41dea4bd3b045966932a2569947ef122cb866138a0525fb37fdfeafb465f3cf580f5caf2f24f65256ce4022226c8d3479fdc73721e783142da1753304c0635a42be50b4b9d21ddeaa7071ed3a0eb8d7d836317db5e9893a45ea2aa5f8c4c1ef86584115ad12094cc66489796344a203b527049269263d337f6d12c4cf616b646d5f83734319de5082d0e0253476d3a8dcb1d702252c8dddf24a455d137bdb79a15df345fab8925f1a36f563b07273af77b2224818aa8235639b45945e242da16cb849666f06081afb205fb27712899002e238a426aaa44b4f973c6103412ea36bc330b2924547214eb4512cf75c6d8916b9a124acbbb2889137ece04cdbdd9dfccb83479ecf4a33d91f63aceff279fcc283f777e36f7b697fccf70eabce9246ffee970a877e458f1afe89825bb54815e5fa8ed322061bc4253ed9ab73b274817692a092a01d3a4cccfd27e8815c98121bed9249591313c63d9eacb9a01af7c56787334e947a8bdd17548b267295d3a692199ff450ed48fb272fa39becccb5dfc0cea4af8cf093ecd86dc7f8610abffe39ee54056a243d62428e3e0c370b9089449e18a88a444d2c0102753cd46031137495cf7b0c23fa94b6408125c678a42e4a91626dd8d6172830ddfbf7a46edcbd87dfce8c70f0044c1fd252471881291dd3a70cd14ecfedbb409612ff116f63c67e45d4693097c196994f6680c25a319524b258d520dd1c8e0439efee73ec0e5f7f3f1d3626ff7abf6e4648d196ecbefad7670f0e2294db25741ea7c248db46aa9c7c33690b996ec1b163f9c2d5361a4a3f96177f06919603ff5f869c799676ca78e37454e5e0fda8e44007d9ce452eb98c341937d2bec8f9a63a5bbda3b411894bb60e25096936ac24ea57fc919e387504d8e58f632e523f12526194bf1912f9ac15aa7e0abd6fe2510ad4d3bad180593aeeeb4e40056d5fcd6c67f8c54bc13ac375b162bc81107b0321e13e41946803b9b01d3231cab3393caefb23ad3bcbc2edc1d361ded0118424e1910e2fffee183774ebd5097fee8a6475d25e8104c1ecd3d7e5b37228186f518cfc6ad0ac971a0d562cef64fe887de7d30d814c876224505d73d693a3d34459b3f09c6ede904037ce49e3dc32b0a9b39c5fb189f1b656d24251339b0f79276119794ebe1ff6edcb8cf8b5c4b7518669977c5a3c3d4c7e936b24372b74b546b990c8c064b72a9ff4a07a14c3d9eaa68b71dd7c72078265ee92e4869e031a62a6e45e4df125a2cd4d7649c456ddc8d4e55220f7603f57c82b3d9282d6ee97edb22241932fb4eca3400a7cf0140e6114d69fdf6df23c1b6485fc427e96435ffa59eb3e1327ddca1d22f3c1e09377d7197dce12167c6ad79b27fbfb797780bc9b44d31753f0dda6bb41902adcc05dac296180c35f00da5c9f2639b6bcf61aa6b9d77ec60080c78b1b29ec30fadfa38646dc238aae2fbaa06846e1dcd9d9382af0dca0c83f3b511ab0ac3f88b9cb1d2bb3ffb9da1f89b3608154c4b5941f6ef20e056212ac52dc5bedf361c07d640a06fab9f086c2f5bb73df1874205e201df4ca99ef4c80676dda285907d241148df79a3e0b49cc196b91e19aac11126b6ca153055ec3f7731e3293ef435f6f1619327b54212f51adc359abcaf0229d160643d0ddb4178645b092e28409f632a3e64e523af30c3420d07fc99d63d5528915872d5ef5bc7b2e135faf57a1638ef983c7782be016e7fa370c68992bed6a7655a9569abf849d8d82184617654e9edfad59a2bd256e7571b29e8c39ca0ad76f8bab9d51b2b40aa4f30c70cb3dcc73d098431dd413b07ad7f7880e8d1622afd05eb78a4c5ba514db155f7bd72ebdf6cc329469d6ac927b2352b3951edb1a559dc606ca41798088a5e2fdeeadeb351b2237dba227a7f3bfa7439498d1ec451e97924488d6209dc954423fce58e4107683f32634cef5908140ff85bfa74e8faa6166719bf393497aba21a7c060731f1b7fcf6f9a9f950a5ab0bec02fcc6addfc230ab67e09ea61f5c278bbff318aba6fbd94f8ce06bce7a3133bef40b10b577c5269734f3c7d7218706a8a434bd81487a80145e3adb0ed8d7502c11331525adc3394a33712d7a9a5886bc567a3c7b5834901d0ab499f198080e76c55e45b7339769e2063c3127aede0d8d4238d7997c739bab0755eeb7cd7d8378746f3c50248908c7d0f8cfab1bc6728a166832e38bb44096e667c2de4ad1c5d2f4bdf50f8da5077ceb1f704f6f1ef22d7e68788d762628c3d2ccc318e466d008ae8a722b278d00f343497e671824a9b2bad7b0446b5195aef59f53f568e0e0e4a731dc1efac245095fa31fc10ab61e9a121f25ee16050fa9b4feee70a7f5f287994c6c86fbd218f11a3ee6a7e653fe7f80c700410c96e64b8d69eb375a5ab713fb925a8fb44dea3804ef1332f4d2634805ccd17fb93214c35b18bbdc16273e880679a3001d33adcd757f2a8ab4b771d5b00f57eec1a4822cebda8faecf85a490603814b3099fef73704996d088fbd550e3bbc671530687f7a8a7b830ff34ccf1d2b575756336fcba5050b20e16f27f8d97507e627a5a30a9379c57b0f619e11ed0dc761f776487955a2d13d7043c0a23d3c22dfb11f5d98a23bf4f3de8ab018902cbddcaf0b6e1e1e98139a01c5f9132b9cf5b792a101cfefea113197ade841482828654838babf6f318f27f82a786fd0aa350cb48e270b67e04df771c93087623eb13ec6c3afe85cad6db39305b3c92bfbf92d4a4ff20f160de56bdbb8ed537b2be77cf6485b7d25e30881c33997a3bcc7aa38c462d755384333a846ea8c9afcc0923054612c3a037e8b1d809b47076f4deaf6997b15531b19d2a306594f314372f36b9f762f59b359f02cce4806889a099c6dfbc3a06e989377d5e8cf654f5286f5ffa9a3e8e886542bfd7a16244c1ca5bb467fb1a50c301b687284cea20c0be205ceaf66de6b358e43e7a8dec0cf89f23ba096bc401ab37c648736bc0393a257cd6495a8931a25014135c940b9098887824faf77451984b626b2f8179f993c23c04aecfaea14d0e8a0eb58f6d7d0010485ea704850b4e3be0aec9150737d4d01af39c5a2790b473b87cb0c1cb38a2cd9413dae2e15b71b9e2077d1e49dfd38d6c2b87773481a8bb2c78419b38d73849f91f228859ffc636ae9100234df982a2500055146c46d31f5726992807ce6f1f654f06ffa63049bab58281349bc6f0821ca2ef0f8a309a2d2a5aee07315234b22e07ac4a7915cc130aac012bd301d226596e271e2be88afb928bd2b5e692ff3be6872d1d5e7b314f6b96fabea8a74f03e170aa2357a24282606ae8e3fd68d3fe1c8be1379c58e27771f8468c4e9be94532ea80383d3128a5ad2124ca42ada76be390911f5092072761bbe1be8497113e920eb03be697fb9021bc7b3b713e963433eecd4da8c52070ddacba99f885ce1ce92c53ea485937b460f17318bbe09f77c1241c715c5cc72747f3de426c0041fe19afc12734d0afc728d1c6ecb1fae4e7c9580f563f86a9c07dd6de8e08794d72a8a7a64446935a7cff093526eeebdd13242fdb9751509715d81cd981524143c27592deeb0bbab226d24dcf6b9d1a5215a89139c7e70e916ae6954cc338cdfd835a1e3a1da02e7415e30184d32dcc5710355f3a153e56d04e915440aacfc9e3193f27f689782f4c19c8b860dc5c8b37bb1e6715dfd51ada4a693217dee6d1d39aa72618c115df8fba303ba99c6682405c0cad63d3098ba72e4e6e12dc12a04c8f3c695500051b5909cbc088271e39310131e330a635da59b0e40162c572dbf216d3534e391ea930c954a1b6fe8225a36f07e73617c1c19b3e2da1762ba5504378d13e7711fba69e3461bb1b2a13dc728bae99d91d854cfd3d51848710d2ec62d8539f15142a72a9164e76ee42eb6c1a65db080734de3a906e3246418431d36d05125e593283f1464f2e59d0f9525a035dd3105dd73329cef5fe046545d828625499a2d5c3eb134348264585dcbdb39e1c11975c6ec501b2be4d26f7589db53e60cbebf4210aebe7e6c0f38f7ba246d141d4630e77eac052b0f7436df966beee80489038d60a0660342479cbaf3fa410eb92245aec80bf3d986cef97dbbdc4149a9d2840262fe4baf20379dfcacca254ffa997a47895e615ea38efb3e94cbebba3284a512a7141d2068844639402991c43a54cbb0991b7a1aaadf3521c5bd4cface1b6f2830cf10159676c185ddf3a878861adce148665369b833565ddd8b3943a9c164bbebd54b3d554ba760a0ba2a1612f64e7beef751df7538ffcf263854999cf394475860d208a9f8df90f35eac9d1834abe2d4ac19db8736f3a1099d0d3692dbddfdb0e7fef1be0116a03177cbc910d2d9cc3a9b5957f4937ff6f50c1bbdc90bdc3b4418c3070baa5e165f6f9d0d1e3ab1ea8e933100423cdcf5f4b5cdb1c30cb476039d6bfce8c6cdbce67665f21a756f2b79179ea751d6b80cd17300d004e0d8a8fca33578b079ecc46a2d11f71f3a2378e0a453267f00226fb1b3c9dcc378eaa5e9a7ea85bb4dd7483b8da4cd820e6a8f7b28e2302b9f16743e2be54fbc1a7e506a2f02755bc449db582141e61a726548f93cb0ad8543fe1c9581c0f9d9ddaa519284803afc610a59a4f6fe008e2712e659119d650e72d0768296da245e6a5cb7e85853e0ac8020733923a02db95fdb159c825e950d625a8255a20c20ec6d4d8cd033d3e7b2e81b08146dbc47e9253ff7063db43d0c11a08e01a68addfd0a81d0aa6ef48cce6408a9ef6df612144dda7e120a1054a43bd70f2f9502556aa73754f1455d64ee9ce985d119142db0466dc2b5f76e6e86b96c90e042c967b109abbaca83cdf2cd5cc4d6969d38726079c0a01dc765cb6692defb609f98a3b5c669af7d12d2c0fde363e6e914149fe15724b58f02822f674669ef4e84d06100dca8aac8e0ef54f2f2f4fb67953c76d4434ec0c8d16eb0b8d0e29740d09d4fcded02161bf9c1c89d41a9001c9d09c79150209a523443756de4b7f276ee61f510639600622509724edc2c50ee49443df901c43dc73cc636277b2a3584112e4090a0e386803ffaaf1ec6d632089c710a76320844448f5caee18809b94fe4540e3041e681db88959a8ba503196a61dd75031d6034766c56115d8ced6329aac6a4f416de4b1d3156e771c0a809da9d2da602e0455cf5e820b3118169cf3606f27611d955dbbf8368c5f8e8f922995f136094b7e050a63146c7c35d7f1122d490e3d30e9eb10a42f73b4aa1ba13610bde6338ad2b65833f526347474fb42d64d0ec24dd0204faaebf6361957bfe98eacd2e0b4670460f7241d30701d5a521d8d3245deb2c48c549cafe3b1e33fab0e593f4830b169c8b6af2a5a2c7a30bd151b629c100900520483325ca889185df5654be33cb0a69744a00e93e7e0c6f4ff3f6bc2c276d65ea4d2b769bd147e79950dfe34fe7604e4bcdf503a37d8312702aebba5cc5b9dd2f394e85b6bc6858236d3dd42f473383e5f11e614dc298d4a4cd5153398a669a3572e061d4fd6fcadb8ae059c5509b6de00b5d3da7838be10783835d7700b9e598dc3b8728dabb9fa78839916c37da849d4677a80884489a638409a112f92bfafe451665ecf8ba21595d06974bd7eb6df88cd512dda30805925ec749c3525d04bba403df8c7b99143a1992cfb432b9813412aa54183ab2ed2f7d54e3ca9b5806d947b30c58e52bf163505371e023b961d82e8e146c18aeed25057eb8c88abf309ec2b6d7b2cc00e0626a7c4b9cd51f871a35d51c492faa006793461b69a13f322e964fa575528638245340fc828073fd820af2db37ac27feb36cfecfe9f7879d2a0bf03eb9863dc35cbe9288b7e782f2d3f0dc556203489b6fb543c6f4122680f52119a981dfdde60b8c6285f37e12c97ab7a4c5ba34ab0402aa3c783b07504e286424dcba9836ced3e31ad907be1df4b08b9183694d2e0a5bb2153c0e6ce60a521a561690d1af9f0aea7709fe1beebe7594e790cddb5637a1d8998cb4a4101cb44165593bcd31d24b1e218ffc9456a19f8b8937994873421af33499e25b59a9e1fe0c1b195e3c2c3ae58b97b969b8856e7df164ab3cc03bbbe10709ebe5cdce875dc04795975f474d39a282ba2a720028c61cab2f40381150abcc17f91bda7112640e66045611d02bb357946f9d0d1ba421c987c1fd3549e37180a184da41572e470aa65f1a2b5b5fcfb2af33e0aa753559dca6df5e1ac63fe7a63d1a6314d4d16650d5701e552aed064a21a979fdd003987f2105ea6793ceedb2c390b841f4e275d421f37b14385eda0d324e80a45552b703fb04fec19f01a6d5475f89dc56aa2959b9cf12ca0b8bcd7505275e36ab8d3bd4f8fdcf5b8e9b6080d00226697c0ba9ebc5ccd239992bf114a725d98319d65605fa93c527b56a97b4f078c8709157d3944490819060cce34b9a676e19bd8d58143c06df807328a89b14088e21cc85bb1bb4e6f7db32d4902ab259e225c2200c577e2f42ad7492c3c8db5b312dc4670991ee7238b8ce6649d63892cde94b15b91cc831e40a3ab924c5122654504e9069b85ed03eac3a11c7e810202acaabf584831b5ae481027264de469ea36eeec4062f747080d6dec9ed170d06f343cf94ed59dc17fdc76b91978b6f87eb4a512a339f2fb8dfd5a8df587707802237412d2126b497ff31f242f7fa9a4bb187b7db5ab5e724c298fd869404f317f87786759286012eac6a0e6d2640f29d8e4a8494148a5907ee56b60b63fee1f5470e20ed2c635a67f8875dea72fd4e38804c3a087048b87582f3c43f711d5223c2d9a5817eafc25b6e96500a6b6eddf3fb904494f44eb0c9c50e299b76979af52cd0e75511e760c8014332b7685f783cbe0be9b8e0e16084e222b969c27e621e2d770a8da56902499a18a0e9562937f94a6637da9d8f8d492136dc0378bf61040e67b034659f33281e3191fa96068f358e540fa83383e8bee84c48d8866eac904996aa7cacd5d1540806c8a0fb84bd61ace1fb3af58527752dd8f9374808a4548264d02fe624521e49122f96ab8b6396dd45364948d3e13c46c6b8bca6538accb5afc1da306c801724a3973925d6d3ed56c9311793f40f90c80963411a59ebf0e230736e7aa8632b8b41326dc952a6dc667d95d160ecf18fe9d704a2aa3c62a90c2de353c29588b5f7e6cc69bdf0029875c79764e74c7f112864d59d713828c2ba14203e3215069d052ff3bd204ca44d59799e6403a5944ecc4ea6831248c3aff6f4fabf00f4755cba078bbacb745e913d9b19a8863b60669db0e2aca198b04a7652277bfa7fd2b64e2e8fa800786ba5bd2b78af6e18d397f8d34c75737e7b91a169ea5cbc156f78808890b4f1774b1729e3071fea4f58a4788bb983ea81605dab84998764ba5c3c1e12f618a77fc66fd8fff4ce93738f0a54bd8348e5f431888546f7c9d32dd01f1af325450ee8cf8f3a52c7f72e47188ae92048a5835377848fc05e71f8651790d4d894dc24aac7d4a0946d36d76683a96f3731eea2654f4c38210dd2fa6ff86054ff6befee895e630f0e393d06088170a1f0fce036158330f8223e021e33ec7a40de8e6b92c5d8cfe42c68f546ef1fbcd966433f6b9d78b003995e3157ed196814cb1a7c16995bc458f5e513fd430b5ffcc295ff704388cadaf0fee2dd0ef69f8879ff024c7a5f9d8ae294cc0bc63d1068081ed99fdf253eab414545ba10d096564b86b05a518ac44e2f37e1fecb3a80e359e93d1b8115386254ed0e0e3cb802251a650913f7620dba781f492a0fb69e2050c5351a7495616dd1b9fdd4ddf3ca1468905f28b1b6e6c26fc0ad62f4c6b676662fba5ea240f9067bc704a44035549dc2d5756f91249d9769df444031ddf1511982884b4bf93cbd2e478e7423128dc76885341266bdadb3aea865af00669cd18d526d744562e286ddd9674d5b3ee3d1fb0e9c892dedf0b9e73b3e5555943231bf8bcc2525fd8846761f01babc63e62ee6f5024a27762328be4407386b09ad643f7c86cdb72c832ce3403139e012e2533ced5184c6a69721f638fe8609eb21e5a967204e99a74604e98c857c48b022d70ea6b3dc8750beda1eeccf99b1e236c53a168f670567e19b4d355eced5a6691723ec8d05798d2d0a5e804ce546dcbd1981dad1a0b0d59584f1c44020cc9ddcad9ac2d64ea4556dd8b5872fe31279c8700883458de1dc55b2ed70bf067a93f6be8c5f6200c49d94192fb86d8716742205f1c8252da02f34eead8922f969f94fd4fad8f11a5747fc00056b902f5b3461ea31fd58726550b11de9141248d55b544427a2911348e48e946791cda31258374ec101f6f20521d4f8ff75ba2283c8663c930deae0758e6411435f35d52a734fd25ed17e307699183c8f4f1c7a2497e288a024335399630b623b89477696f651c210cbc24149106008486fe123047fb4149d0f622027d295ce0802e1d91b1cdae9345bc26d487d77918f90a87d1bab9a472abface7936c5ca2f78ae1a52dec163213a2ace2e8fe6c38667df069c180875a068ad1c0241fe2c5c580065272e59a69ffff1ddad746a17c40c004d75ad5f01a6fff86ec692c04f62be0f9330c7dd5184cb7a16195c42a60af38796b5bac47900ebf5850e776504b8d9b512993c70e1bc8f2e1355e05041f8c29134e0fca31203c73eba854cd562fbbd9092267c7410a5a0d7e96b5a7a128b38182faf24adc9426472d76ef42dd1a85336d90c1015a5745bb5bde524e6750e75a964bc15856cc2bb93feceaa004ad3b52bd81de54fae0a0ce3a773812575532ac3389a4bf6e4626341154acc01f7f06a94d753d0627418c313e656d2c03842fe11bec3ff88787862b96f8dd6f46549841ee120a9e32bdf5d12b45e47780a0ff8021a3e48593d1415ade4c126e839a09e1639da9b7236dec7fe0249df78f5273676add6d9b7b8bc2fb8f8a19c3703c57837dda4e4c7bd711155e744c283516b5f71a3ea1927a1e296572b5d632136757528a19ea5eeb015728f94f322117ca6e308511f69693d3d8fe05710c401d51680f89e092cf49a551978b71917e274d60e35e26fab0abacc93e629bc0d59ed281a99771de9df23a5fc9184abb33987fbbb9f1b82d469cad82786e30f2d590519986e3440c72e21680c7889fc6487cdd0ea2a352087ef1cfa9e29ca81ef536f81713a77d41cdabd8c0875d401bd3dee87f472d7fe200acf31d75e646bd8b14a02481f308f4080508bb4f6616073df1ae7c294375499225b5e1df024082b7fe4fcdd367a1cede83cb613fd5f1d6bf420076bfd1e2684ffcb0fa350692df0e2076edc0c095e637a30a92a4f26cfca29504cd29469809ce3573826a22137cfe392bed12d0df48eebddd5458edd18153395e1105158714a01826077f4d1b5cdaa642ad1cadea32faa66af3b47a36f6d98cd911c8476baf3ed289fc2001b5afd78a5c3f7262d4aab831398c4897d2e547ebb9064b712d1d02412b332db413b9a31ff63a8f887bde8a2f51bdf60509d39b3880a0c27474cdafba7e718ed7dfe7ebd15537b3291f13be5f6aa8fd002d178ef5f42310c693442fc180216e4aed09d2c312547e296d0e204eada88a6016862cd0f23ce8c604fdd9ea8b68e57ce2aac772058fd4c44a7fd283c1703aa6a82351afc58567e9ebb36e0e3fd7a2e658332e4b33f12caf25db11ec7cde9626696502fefd86d01d335b0dc46ddd5541c0807735d576f7e1cf462d00bf4f2cb1fd72fca2d6e276e5e2aeb05d262a47537c4997b1ca21ef4ce03b02c6c878a4f2bf3a9bc6d3a0c6fa833660256f555c73525c4f93f3399252f5e713b5407b4a3db80bc31030c58936a63fd9071d0b5b1229d23925f2a8c3fcef63688cc509d1dab7dda206644504fa60e4eafa87fb3d39237af408093bdc083153eccf71f1bf50d81e3f09dfee6380689cf37c330207670dae35f2ce3eaaf84a9a1473650a48ffea36e930fbf4eed38b2ea7399e213dc9e702fa00ab151c5a418759311416620b5c8e2043c035b0c7164983cb1a00a23bf3454259ca2fedd0847898d6172fd1c319d010f90475b70c4ed062c9ff05b979fa22a0307fb508e9112e4668c6b825721c0320b457103cb9e3256a7e44d5d3934ec514c2181ab8ce1a2cc729d620937544337bc1825ea4c2fe180dd16336542373fb33a939efa84e53982aa9a842944371b60c2bb5f7e4cd8bdebb44d48f1ceca8f8b4cea39f9ac436822d149463bc3b3263b89ade3c36fe0b54be593be154427447dedea77dc74bcedf877ca72fbe6cb16d90771cebbf1c711eaa5488713b21465e8bda53123f34ea1b633064168f08c73f9a5ca7ec12c413a6fd75181bfc2e217726c02aad7913b39b87cbd80bdedc97ab94065aeb1d2ae6df41359a70a8a259570eff7bbef305b86dd5e57fc0ab2643c07be5d84efb4e6e3fd8dc2e9517d60f21a98a99be38286347c9ac8ab6c018aab993acb4e00932311657279532e091dc5d3ffd97e63614321af9697e965f749b5862e3d9b29eae84736cc756ca523b927700b92ff6cd8271658ecd17d7802ff8bef3cd493b04c8f05978b25651f5156e5b86dab823c3d790d24beded347b7bbb0aede3edb76d7d841ca0e7b22b11e8baaeb7733b42c579e5ed3d37dcdd2554bd4d90b9280fc9458c380bf7a799036c6277cb5577d85ecafb86158a4d373cbe1c32b51485cd218079c49d7a919a0ba8e178ae9c589db221c92da12630825c9eab6d497d934d4e037367a432f1003d4ba9a6271718a8fc117d574da6b904b6e8418aabd9ad360df736e084ca546f2b97f31308500a07a76647a623e77104410481862820f8634ecf2a25fd6747b5544abb7c961d88e504acdd61a636d988f4d07ae5274d4f0babfa3ec2b178f30b163d6db928faae715de612218e62b3819b7b6ac06e0155edac76165267a51a07c1d9fc21670e2e69ea8686b671c1837544c12b99dff6dbc8146512a067219ec57b091fc5d8a53c5235c1dbb19f2f636f6c3e31118171c0fa4bda172a7884962d54fb9737bd7b7cfafd7d20ec14b7942c4439aec67b5de5fc85c729a8d26bfb33c3eda85e128ee74eab1313adf5331a518a87e7861e1749372ec41a89139f319c5a29f1f3f9fb83e2908054bb0fbd327d3aa18b54aa00f05eded7cf43b47c1aab63f072eb56b1cb50bacae09cb62c4766b07374681863ab02609df5c235eee0b18259ce22a16ef1f1831cbfa449af10285526c535556b6a765145302ba6f68af2c72bb1867f732283f168eb065aa405b1310156db1834aa67b602e815ef330cd902f6a3d2490c8c85ce8b98834f80331d81a4c1d64ec215b83b31338973ed074ff23536ac5b73d83279e9114e0acce538224ed0c3a1b280172d201a4911debc2a160a5aa3082c361290f3f599507dd2fb951e649d5f925aa52550e51e335dc0f91ccdc99cd3c5eff6176ed61d914968362667f872cff22884552c267b4c8f0ec85ff9b0f23516803d36d20f4e4fc7fa8a0c349a00f4583a8e4b721fe5ae85a3958690f09965a4205d7aaa65efc64c066403be8ee4a59ae493f73abac5a47851259f1e6e3246c0e6372c2a5944cb646da78a3e14a07a0513e05885192522bbfb5834aa9ffe1190152579ca5c3ba470610bf069934c905d84db413fb2b1b594a4997d2bb35818cacca6d24a0e91e6dc4ccef7b5117e30ac956beb897a58122f8ce076a34286749cb8ee64fddff09a27a2071937f9e78a21dd59fcd9d20ea39de6c3791b5281bab7062469c4c35888261bd0ee22d0d97afece00c4e5b484f1a225a369adf6e7587621204dfa75c871c7687003029c12b5472de8076b89f03a316ec52805b5642bc2c592bc0818ea10ab7f0a549428976d89eac7228d7b69fafb911f951bbaa22330665bca470eace85b910a1ae2095949bd16e05dc1cd27049a55c87f1965f62b2809de7cc458d4cee60ebc285756585b647cb8bdd3dd0309b824c4969a15082ee50f5c632a3ca57427feab0d87ccf0951e8cd57bcd88f4e266eb4e71e41236dfa2062f14019761aa4eb6287c14d406a08df039e6b6a036af968f075e67ca2e233b1be29d68349bef5c8e3c63e9a1e5e36127d9c6488481524956ece963ce24181b44303eea928a0e2d5da5bd4a3e2f3cfaa6f3cc506b74c1c57266340c5df20a3584d54ed6025b97bf460fb5c939362fab9c8688b7b44e4f66714c77f8254a026d876c7f4637e091aa087ebee456848848bc8141b6e293a491c3ecd0c8f396175071923fbea4eed654def3b7af314b82758fed87b085ede1b4e48809c8f18486877905df415a3238f049803c21c2bcada082cca26eae7d0a0bcbc944e31880e0a345103c627c1edcf314c9d78aa43cf33fad238eb88e2fadab33850f1b353e4c2a194c13d116539d14d2636924f5cde81e37bcf723bd24ae7e6d3ba33352af8e5496ee2c3d6cb3abd4788c813261661090f3c85a3fcdceaf0f816938422d3b40d93e7151e94d78aac18e4057717dc1b447dedd3d42eb89b19407282793d625bdb1aaad4862dd31d0602883c183aa2f02cfe4da3b2ce088a1279bbf3edbe758c498a6c5393646cabca3a02ee96e74fdea630159e60be3ffe114429c21ce6a311b8e1f2614e1deef074880012080b40130b41138da0d1ba1fb23e6efb839a9d6b3731aa62a414ae3f867770df88b772b772980d07176c2912436a64f996582041b52766431da518afee859ad03bc6ef5c4a748d4f893ddcd380d6a561110bcb21f8ecd68d86b8e714618a24fb289b57ba4fef114e75db2e789350a482d609fbd1948df74fcee2e44f8b79d1c10f99c3c74491ccbc54427410e897bc2014f63e9e16f5fb26aaa4188ad91a372663edc02a8d3b6cf3ad2072c853873a6f51a8e4dbc4a07ed6d111be1746876e9eb041fd1ec9f314aae299247cee8b46a9e2c0f18f2e5de8c24b29fc4527dc8c86d5aa828b19928753452a64267cffd2d804c2e60234abba66b0caa6ce427022696b17c34b4d9b450946ab861aadd5b2ba1100e76008af97a175460fe1186b3aa8db52a9ae5ca8cab82c60db8ecbd35cd9a3ecf6ca0f25d8a7fbea16965ac23db5b33d793b1632959832fc31fc436c7cb8bb110f5dc1dd5569b87973923fc63977ef1f6b1b692026d7b8c913df4a434a6f4caad83cc06fb45067ac53d0d17e1f0b0866ee700eff35950b4fb562665ff4424fa5bf6da5754d378cc91de8d7f0ba338b2df9ba4e1ab8e5f70fba80850f96d91caf291a574f21f1693a3b35b7323e99a13fd8103a14c44aa4ff2c71ba4aabffb41ed3d096619d50673a132f2488573f73f5529424f6b368007572eb0bcf218cfeb9371266bf15d3047623a878ca4e30f62532e015831bdb88e1f92fda20480378709649c9c1c5a3386614b95749ea09318a0165b0d465a09e93b8ebc143615a5671832a64ed36a57be0c910b88744f43c94f9a75652bb0364dfbf20dfd32dad19da345f905a3a7bd123476523b34cf409fcae9c08daf822395fd1d8e8081a73a2b7c9a0c228b96125552aa1c158e23f704504da96ca65ae09ff16902c57e360136d53f74dd4b24233c72769a152e1a0dcad87b09aaa16ecf8cc8515bf741da9c2d50a016c13dad15ae86d44b5144cca34608eed800a9543c8fb0e8709d95a3cfdb6a9b0237fa3355e2aba010e8a4988cac89c51bef9aa5fe5c86f56180b785531d7c9bc976026588380cd5a812d9eeaeb643782a8b0d2393e76c063106304d1e758292291a2d0f8af002a6787390450e70a4094bfa7198a3d4b8d586fea8604bbac4f12849d8096e43ec9a7551cfea64eba19e415cd2c02ed63e27d6876819b73f98024cacb25ba98ce8559edcbd7388a6623859e07e3c2d1bfab8555ba6295dd66a4149b0d1c6888a9252b02b72681efa39c2404f9982d6eb4908676775848a3f262e70098f275a50987cd6c65587628e9b195e078f3a7c9dd5b8ae88c45fc07747f8e1acac6dfb5a16346c63e71a14e7d16180e3dc890c51dcc34baa9525e9496616dbc8815a59110ed274e4f269367e46673d486b35a8416664850c4332483dbd39f77d5f8849fb1b9628f34d02c7b92eb872de6ee9787340456785c036a7f7d2430698900714a2749a8766600aa217d7e10fd8802dedc39aeb910f4e779da9553f29b96521b466e7809129422f7aec9888bc8545657dd5e93e64a5c107de45017ee6b32d38459ec5d56e09b9459132af03484ff615abf175e0b4a50ef4ea737f005e9315b86c844276817cc7612d1d1de40ca8965ce4ac43ecfd794f46377a8526b5b84250f16aeeee99ad9487bf5b1b39e6d7ebe361099b0f4a4131fe46a92763486bbf2ecdc6d2b608e9148b70ead89ca27377dd0300bec56729857e78bbed9286b6d5af596dd9b38adc40cc053c46a66e3b60c9dee092d76b28b9edab3416d5e2e82ff535005aeca7a87db3dac90906901f079338a8a5c3ec83499121fd5b37d8893304a8adf1a580b9a6d5e99e9a414ccbfaf53a10fe9d14e2a425cbeec27e83505c7c3ba1223064d103e59e7171b9e12ea862f4878ded48f7e03081627195ba41c023661aca5005b8f041e61b3eb9c159a0d84803871fddc77a8b94bf3adae8f6c4e21f6e04b78f831a294600af897ce24bac77c0c8aabaa8aa414703cc3fd95ba097aac1677bec95e22a5e3cd5d1448172dbc1d013942091f06b96477873cb4cf4a0ca92817ca5904d90b6655ac6a0598fb7ad1f61ed610d746b4eccd16e7153d0fdd3b63c666a008986345c65fbe80fa3882b3537d17d65c71c0eaea90c79d153ae915ad8e0ad94e9d5fd70707d1050d0cec205ccd92bf1d50faecbbbd69e4ee74751c0fe59fcd4c947ff9f6c9088d544b9d1ddcf224c0551db3c9a52c3349cf5097a200fb7da373141cceefa25eff940d9867b3d1186cb516dd4e2d47c9a4674b69fd28f032c436ee97c03520bd8ab777d785af8ef3898b3d89fe0dba29470d021dc554d9517849ce2ed16d9182c6fd037ebff14b708c9697d762ba1c4232ee0b60ac092e0888ea9ea63778b57f86688fd14c29486707147ae6cfae2bff8e68614eb2e940a54b5b67dd7a7609d9c9072eb2ae8264033e6d868cb79e7f4300b7d41b9430d438f2bcac567a9edeab08968388aa77ab97f253df6fabaf40ebda1b101c5c0af10cb537937ce9e2ca8b60bc656d18c52791dcb2898e85169cfa7520b63c9fdf7b6e61b30493bd48b90eb350d4b0b2e9ff70a32e1abcb9aa86a03129fe236cda4caba66901429ecda21dbac4a7fb64d2c88a31d60db4c92f06ab97dc05a6e08c0c69a9596afe41ceabbe2e7cf4f948db5b707013f524241841f78b132f9c90e3a8cf76c7772b107210009c2ae65a455320342e5620de42dad83e8180403f957b34c6e0c64fd0d8154e09f0c10cf4426fa5e3c1f48f0addb6065b74dc6a69394ed0a20e8178657cb7fb63936d4c2e9a6854f4b4dd97b3eb4eacf9dc8d557a25a3f8a36e4c83f76091350b9012e0859275269e745b568bfaa6211b653db511cf0cb676826714a0a50fbfea8725c827593ce0d81c892dc959bf1ee905d8e1cf81088295c9b3036946317654e1020a132c4f51cbc65b02f3e4071cb7329ed53cd6403e8c1e29d70c2222c9325fcaa8f498722963e8f3be3707b94b97457c2ebb091418f2bb7919b960f2ad639535018bfb3fa638ebf2118a14c3e941b8d207150280cb382f97a57ea69f29b9420c91b494d8d13634a458f010991810de5bc021f0ca0d9cb055360b24c22934309cc92b0e5a2a7ac2f9a82d6d18532eb4753673dcddbcc974bee701cade844020732f8342ced812a81fe4500a13e9672704404346b81598d771e766389eb9b7a5fa08db993d746f118b4fab48240bf29ce13b0ae9cfedee7a4dbc55fb099f15b42e652cb5fb61a349d159281e0b16f0fc3cff260e7fc7e2f5de1a2d1556f757be69963d3356c780bcca9eaa1ba99afda4df2b1f447592949aa12712d84905aba54b44f122af713f4c88085ee4a062f370d6f3f25f14325dceb8a9600d4d00442158e1670fa5f27dac5d65d469a79dda85a79f5686526a7999373335f6dd909f02c68a253e6aec71298ac7cefd1a9343e52bd1ba3111cbcbb5e7bdc54c87a09b793227ef9c26a82dd89af3880f57e5805dfd6b8dff79f8682dc892fc4c8701c32d7710535528bb3c12d31a7139da8fe7351bc33b17602234400bff23d1722327c315a21cf652a7d9995d27d13717b4d5fdac50f416fcbfd5d9af190094f1e608dc2674bb7807ff89bfeb72cfd3814c7c9aa0aec6a481a1745f131e12be2e1a755150c4ed605781329ec4a8440ff0089efeb20c24464365af4979d28a6736aea7713482db60bf4f86e8c7d71113026ef0f47320e3db61ccb89e327ef5aabe5d08e1cf1c712263ecda5bc7b2284ee55110c4716b216e293531ba9b06e2a445fed0b28713f3f29933751c568bf9e8482f4d1f5f5472681a6164bdbc92d9a697f0009297b49770cc84946dc56c28bf9dbe5c209314faf9917c0035cecd239af5c73a5280c4014ff21efe7f8de987b2852be199a7796faa61ce3c8f6c4e6c2680b5207dc9064738a7086c00d5f8ec506189efd7254f5195287bd8169b3faaca5c8f74a2a8c0572fea3dc33bb0029952a2b7fb0a6fb4ad7310940e80701ee1953fe435475d7240be7df8c150ce5c4dc021add3c6d0546caa7bfceff53782e8ea5faedbe48f6f8e9bd6f15b89082c51b3ac5e088ec8211182e738e46a4c4fa83b0c21c5a27f4ab7825d09ba552d73b1d5658b011add15264c3c13e6a43fe8378a2d3c370c9a17dc9b90f63887dab51e5cc9d61af752685b65752f5734e07f5a3238062c7cc9a99f542713b76a45dd7141dfe4b3e4e559971b2cb40bfb57e4978c8e2107779a950050090cd1e32e6013ec60c4615667e9fd1a7c743997e6bc0c8f92dfa0a7fac4c9fc531b0b1865ce534eca83d8fc8a85b95758d64f38b8fb7f404bd6406d3885a5b2bc84fca0ad63ce69b6e7ed567ff3ccaa183fea6408b98ccec5e84f0cd2cc70414e8178310a3e9df6b8e42b12042030faf4e59baaefe798161da4187219e89a0f43d9ef81b88cef554bfcd1bf3356f340a3b749bd40a3828baa4d5616d19a400e4c0517704b8b591194c0800833d6528b9d26223ddbc59a24c3415575a8a1d1fd8eecd84d9cc2ae940719025b41a9d1bbb896aadd321f23fe82e4e0699defc7cbda9884f2aadcd1024bdd55d6a143211848542a0827c7a7d159866bc1f0652eb6b4569960a2124458d67f5085faad6616acd6020ae7b5605e50d219a70daa5e9ba8674cb820920a034c378afafe363266563b9fb13b5ac273c98c57b836521f06818a9cbf7d8bad2db0b4bc260608400042084035807e97432bdad6d835d5d3ff1c63b931924c059cf6b715ff134288a4d0caeecd953b3006d105f305f1a270b52854bc95d696c770ae3d8e64b5478a97eac6187ddad56ab55a59986dbbd841682d8e315ebbb22bbbb22bbb6ab9f5e9d567c52ed5de9662af3753af74e66bbdd2cc62b1582c11965330072c1ef017a3b85472a7f5634b5f62cb55dcd95fb0d8c59d3b98bbb8e3d6373b89b6cf39a7d378ac185b612ba781ee115b456cb5f2248ade7b6fe6d8d578c3dfb4f26a196635be6abd58fd5bb5cd6e6b4b5ab1ab3d88daf263f6aa6fae5953fd42dc1e76b3da97c66e88705ec65231e6544ee5544e99b6454d8b9a16352d6a5ad4caa25a4e23513aad548b484bd5ea69c529f786c3217dff394decb9ab24eac7aa5f13f5db327e3187a5c34ab188b022e031f19bb8b0c5c129a4546abff098f830ae8aeb21adfe6634ba34d1bed9c0cd14dc112740028af481141441c80e2785db0197a487243448921a82d7a7309ce0ae9a348413dc549386c0399cf0085ca1624baa3ecf592f33447ba6bc9962a101132a9dae7932b4c8f8ba53f336f054f366e8482e2351a8a56a1e07b4d5bc1b00d0d9457c1c31ce1e98f82257786992bcd0cdf65a5af102c3c284fb9187edcf45b18265da767930a1739609dd7c165d888b0266b3e8e6c374a2959d97ddcd7fe9462c3f566c9625b6ff4b37df85658992f6a45fd102c4dedb9732cae5daabad469be43212853aff5cb4f2b3c32b28e32cef457c0365484d705e46b5d88c6a61a12bfc64fb73dda63db16512cfe19294ae326a5bc11837a3322a0413b3137ac38210c56a8d3685156a91ff60c7971dccfeddadd8a54dda2bfa596a7973b568ddc0182f3336cd9ebefe6c052cc7a62bfa39b41494c137ab93686f372426382f145ac118d9fbe7aca32b5a2c7b456b050acaf88b501b88f356b450db5ba0600cfaa2d08d68631ddc79c32b5a2b7678216e2fb4c237de0442b46136758bd6273fc3787c61b95ce15ef24972ea234f8b369ca9baca50b6608412d0e1058c13526080037c7ea2cc5488c3ee8c314a7902d30b1827a4c0801d9f1f5688c3e6a4c0a4540213e8812a182f6620657b2f010a446002a8fb02c60929b8184001de67fb17e2b07bfd904229902a185208234112d28221e5236078882898edc927b94167c7ff08c8c839264feda23325b961bb88795312174440cec0243d5cb0c5f2239396c020a414c258128288cbd1694d5f290f5178c0f8469800809120bcd892c788ca48101c8f0ceb35220423537460ce49ea7124c7911f3f8ef070c40547861cd939f2736489234e1c99822407121120e901c911244e902c81e40848aa50758004aa1d725005a12a420504554b45856a4a2906f4070d04218220253a9ed041084620df86861b478c28108147e80434b64794315e3a424a086b85109682e020d49e949307ea53248aed71a41c8a4c5144097bb4218f111c96cf5edb3dc79991354093bfe739e08cbc91267f2a3a412829517edb258ec7f84acf8ec5a63fe847592c9614edfaf407fd24655116c5910e6728fd284bd60067ac0f68f2776b3f8ff1bf97e37070b6ab328e9ca1d447fce839a0295ab79f673fcfda24dbb31c56563b8ce503ce40882367b21ca0fd9c063305bd14121087ed875d6b2423702b2bdbb66d9b9ea94b594eb312e5027152486fda1e65799b556d7fb9c2fac179dbb71d082034158c61df1d07677b38073803a10948d240997d30067d7fcce77b1990ed543e8824850392b7a3375026bed5b58332f2c7f31c9b640417bf9ab061748de5e36c2041214121412141214121412141a9df77b224289c3753330585f3cf3f28726a2762c61afd4a3506f6c5833c9f7051c6f751954a06e909e949aba552919edc1b4d90492bd26afec493cd3d491db2fc2c3b9bbcd577163c148281e138699a73eed864ccec443a82f342d9b59931b3817b4e782f8dbecd94428a728be0343a783c0a3ed8f7e1fe0b2ec42a90841f62bf6df34676f85a8135ca0edb58a723e6ce0769b54400ce4521ffbdd92374d7a0d52ec4ac67cd1693ddb5b1ee7acced5890f5ddb58b57c515c2a8abddb683214db7f39daf7cc17b69de8d7da14cdd5807c36364e73b678849cdbb21bb79c2fe429a0a004376737bd5135e0d037beabc6f4c1c56561d329449b880c80b7a5c903d84433401841cc20718b87b15434cd94572906a28624311204550241a8ac000872243e0a0484f11248a00158912040a57b9fc600792920f241f3c4300417da0d387e861938086e021bae401aebecc9f71f6d79f32ecefc6f25f38f60cecaf3f611a4299eb05fbec5faec7b1330d03a66d58ec4bdbb0d8daa3a97925162f25a5205c7c2f0529057147a1beaf14a414a414447a7c1b38b50d8b2db5fd2143179e28b565bc52d3cf695c3ed21e70e651a61863cc32ac36fe94c748953449baa487a62034d54abd168ec0cd9f9de8eb72c4a84acefcd3253da0c9249f86a8078c91bfe900c6d4dfea6f990c06e8d831fa1da2ef338dd22714fd0952f4d0a57bf1273d0e1446dd8beb171646eff23546eff2fe2e7a061f5cd77079929ea1f42e3f03a9d489be2e66324a3e38fa22ed42ac22c289df129f65a5cbe6cbdf584ee3f212030034c9e71ec299c7d114c7435d4be7b5d8f5593a8fb4ebaf74a21ebe37ed6d3ad8f2b5cedb3cbcda5a22d4968f3b4f86d56e81a6686adb77147cfbf20160ffd238dbbe4b473f18637fd441686d4987f3b71a4a93fbc316686afb912447648852219997b0d89f9fe1952da9ce864f5190467bf8f406483fda03d6c4d72fc4c0511f1bfef6398da629cb63e4f6bde042ac42739ed8858ecaf9210ad77d0cdb503b0ef679ce8e04f0bc878f1dbd952d593146c7c18131ec86b663b1298c917f2ffee6ff9e396ca9a9b66f0548d2c81fb9c2a2126504da64c476dcbe0fc8962367e6eb89e392b7086acfd46672a9a0ccfcd20e17fd274babc1cce98132d3c3397b7e1b2afa20be903ea7c9e4b4c675dd4ffe2ef1767ceda96536afcbfdc50b9fd9c9ee4921a594d228af365fcea03ab44b40380f4b61e3d83093215fcea053bed4534f28d322e569e5fa4bb38bf5a5d989d351472853b3d3762f99a580730d5b351ad7dfbf598d4bc37018573661263f660b807b5ef9c58b2d331a5ddc0fb834f4939d73ce79b3d3fc15260c27bce79f70ac221fde0b65b2eda42f6c2bbe106bf4259da1abec1f329c97839af6e891a9e6e1f86cc6a40151d0b1237bec77642f2c648f7d8d4c631a7a4c8dfc6df8a7bae79f649551ca7ddd7ddf3927a594d27dbfd65aabcd4e75d3ce5a6badb5fb7e89078bd56ae9128f2b5321b4ed677c6bd5f6afce5bdc77c6a5e90db46101830d8b6ddf86c5a69a45d533253b7f5a654f8a5377a6426fa48e5bcad9b1d80c701a7a0363e4dfcb912213ce86bf7f747d4dc037d46f7086437e2e925cfac535f1051b69b69cd390aeeb6de7c28d1b8b3fd75aade682dd8ebb0a09102fd791619602dcfe27b85dbb369962768adb4b8dfbf669e070e8eeee515eed34317ea15fffc55f9ff03e612a32943046172c212288540ff2acfe5344122949807424a1a283122018e39c95f49029d9a9d71132a98a6f478711446c6c439e1dd48ecf95e0cecece0ff42af06126825d28eef4b03dccbb3b3dd80102b521939600dd330c2e09dade5cd2da4b96f08004abe41384b014e31425462845299508b104a76a67d149e9ac3a0cd18316a08068304283c0711f3ee88c9452da81276ecb863c4a76b004097fe1eeeef1dda364919c7031250f5e488f51484ef4c0c50d8e0e20df0d8e0e484408ba43553445895021684ae6fce5001182fa72807c3d3b55555bfe94d24a2daa838e39ccc10f36c43c6cff608cfb516c095faae44e7c02c6a8fe63870d3fa296781223bf9cd5d21665c126289034511b204250f5cba9403e38736da17484089142e90841611886611886612bacaaee4efdd9f2afbaaa3d75479a645559abc3ded4569d52836aeb6689a17484089142e908416139e79c33cdf96780fb5e141622c4969f53281d21d284ba321b0c0863612b2c09ec075b65386706e79c79667d5110db159659966693b03fd264614409b942dc144a47080a833a6ee0d417cbb795e9d8f2b59bed4eb941b77512edeb33bc2e795d7e5d2a78f55c3bd2242f0c9bbe441ce56a4358845f98dbc31ff4700e068243f88b98855998855998855998853ffcd14bc571a48d3ffc79dc4ffc45ec5d49ee906aab15e9a5ba5497ea525daa4b85d5bc8a5f4e0bd5d269a55a445aabd56ab5f26e0506bb92bda8afb7755b4e63572b8e23915aba52ecd2ec6e638cf1a22eeaa2e0f6eea51545fb5a7badc5d35ed445390db65a71a4795101344af73929ad93d66aedbd97bdd78571ce18ce1896659ab665dab671dcca0a0b4b4b2824128d462eb1258644ef516a386424000d628cf1ce11f0d4c0a734a434a434a434a434a434a434a434a434648390db9ee3b6d792c0c5bdbd7737b6b96c5ddc5e6d6157fc4bf39d8972999d5ca2ecfbb585dab1f484f3306ad381104208e963fa174645dd82b4afad05d78e75b9d9f2fd29690957014f9588701e558954bbfefde4cc68cb2cb5ede22e7ce5ebbab4cf3e67415cdc1a6d656ec3fad2717b0ad211d07834879b89549bc3f495b3e56df9dfcb71de62c7f75a68a82bc7d32d3a251cce6b59a1b6fc96d5fda4497a6ad36f69c1966f31ed72034594623262725306356cda4d281323159a7af1228a7b5fb8704182624e17f0882522002209523c61e2060a1a1e54d0008a8e1b20a1841aa131e4a6084094fc180105040ab0d500d596ff39bbb7427b33dbc0db9cef533f8e9f218cd6f667616d7fedb30a71fbdf0bec187cdbd05ef450012cef33a377ec43efda6bf96b03ff7cdc511ec4c7bfdaf8473daaedcff233b877edb5e04f4fb14a96b567f81380fdf68e75f659e72aacfc7caef3645829207bd72fdbfbe39fddcbf6f9e7cba66df0e7cf8f9ffb8c3d7f4d21ae68ac6d60bf691ba3f7ce9b5a8f1efe4843918ec137cb87f46cd131f8d656889d77637bfedcc56c866309eced6b36632ac0cb3ebf17836f4d7b1cd8337c679de9f931f8c6536e8fc1b73b1238f7546a7bb602be7efa8acc71369cf670ec6edb7ed3db9fe0dcca6fddfcacc34e902bdc6759f65c763ddc59dbb81ecfb834be76f6f8b807b5f13b363b2ff3b82efbf93303dad7ac6df8e3c7f86558ed955fd1ddd679f96797c99d759ea62dc60f43e7e5f7ce936155dad16517fe1b597b37367ef8d877715f97055a1840a1e053524143153b7a06e29654d040c58ea28d4314371c38c133044f121e1b541e102c8167042a1e1d18e808a209124d82d024094daae0d9c16343131a9ad8d024a7090a9ab0a049104d8a34d9695283264e980081873319028e6482c91349a8818914dbe31e0a93540dce24069209115f64e2c323c424cac61bf2303922c98e38e743082184dc7608bda32119188cd6bae6dd6831e3bd552ca1ca8e617edc9c8c11d5ea756af46b6623806daf09f56f6623803d576cd39e7ebd7aad4ef57dd922a041dc0c4282e336e461828a7167ca4e508c514a261f131c086594a83ae06cc035e176805043dd6102654412447670e2478a1c31d00952a73002172508eb63041f4b70705a33b46dc8b3a4044ce80d38271c5df2e550c1b9f07016280957a9fc7042e0a6929df9ef428993383779efcb494e7ff9e5f9798373e62d4629e529ce885a5fa9e54b2152ced3cb8c39fd469e73d2971a954ef927975149b5933a76f9432bcbca18a5749f93d208b89d975e15e799b3cb98e955b1cd17b3f9625786b52bc35ade302e6f1897ad682cd84a7c96083b2fcaa0294153825a3b3d3b3fab9d9e1d55041273a20c6a4120af00d20b708a3046d72f60942e7d523a69bd98bd974dce38639896699bcd0acb0a0b8bcbc832ca4e2d2ea4ec24c24a23166c25b3815d4b0e612d994ddca2f93e128d462ee38892fcbd79298dae7936b66bb9eae69c9ef5c59ec9f0399d7a66e3b2e52a9371b1fdcb5a6bb1b5d35a6bed75edbc927a2df80ad3bf191c6c094d724b9804476da4971434c76a7ac762e31ea7d1a6788cdc70b496d6d25adeb2c32585d6f218d9826a6df9a31d3952c9993a922247407214458e7eb6fcd9f1bd914f0b95969ca14172664e91335e69f51bc7b93aec2363a4c63d3dd2847db456cf96bfddc89956d0148dca0ac68072356a1919a9e81cb23db883fde56fc68ec5c69f7f9a76dfd354b5bea7a9ea1349b6d4542cad16950664f4c9196f51b5a85a542daa16558b6acb6f69d969e99133d567e7a7d1f691aa479eef32c487d15debc9815bffe85f4aabc1861b4ae290e9e76d9e328d98c1802135b9fdb55a5f8fe168765a298580f3b0fa83f3660b08b8100d9cbca2bce0c59a7caa4f38f6947306396f527b34b5a94ddd44b64771aaec1d59661fb39732ebdc3d9b73ceec33c5b08e524a69566badb566250f70f8edf5b1aecabf9645b55611e5558b0521d48600b8217168524425fbf9344585a0f32911137e0f1bdbf56b4fd036c0863c4f887872c3366dc8b3027aa2c3ce3b7f4dcecef8d64a6164ad354064fe48afdc305fa90e69073a825a2b0cccd50a980ff327c858f3d9b75f3b9a1a85583899d9d094d4ded5a2f6487bd214b771cc20a5c7811a2179c27c0d9058133fd7e82061606a82c41af9f505e6457b72e79a9c5db9c9324373349ff678f9a91d571570d52f19d39e54aaf96a8054296b726a7232cce3eb226a29fd4a95a7fa2b60bb3ef7951e3a49c3e655d3b373c639c3d400d9f5e94b97fd8a2e7fb4ddfd5247eab4aee693268a591ee3efa2bd3bd2de15e990f6b8ed24d28a6eb11da3385455138456fadbcbec543766390de791302be36c99a6b68da9e70a71d32ff6f3d3cf694c1ee3cf7ddb392238f96dd415b09ddfe434b407843c1c91ed5f1324d6e4faf8afafb96a72f6adb5d69a209100548b56441728a6383182c449122735f081131638e9c1c90f3e41f06939c98145e8684539420e24d8816489130fe8e072109cb4f2941c3750820f0e680f6a143e346c1f1e3e1ef001e243021f94cf0afe5df8c0204a8c3146771a0c84a5e0204c25ebc83700d9127f9ea3438f3f42fd90dd270dacf5f518190a711c75b7a7a9e7ac71dfe2ebdaeb25be0d9ff49338d51aabec53a5ee4a70de9cae71d43affe45a77207799d6bfd6e66cadb5567bb5de92119c77f7c809a77dd6329426edb3d66dd1a5dcdc7dfb39e7dc9e524ae9566badb56e9f2da675a51f0efb8ba25a2d956acf8f65df6abaf4c3ddb7d9679c7ffbfca74dbfccb85bfbbb35edc1b0b3cfda8361e3c7b167689fffa4e9547e9869fa45fbed5ff2e3d89b8641d336a29d556d23da72959a7f82576f86d56ec1fdcb4134842ebcac8a7345136eaa009aa6e7489afa79cc4449d394f5070861cc87923355a7aa00ced41740d39c9f298ae605707ed5997f80aae3348ee331f375e48ce3fc5075f6a4ef036acf71f47cc701def7362a57348a8c991f250a109014294173cea95dd3244a45705ed5c1d9b2eae4120efc8bf1575eb2c1fba494aa54f4fb6aad55a5b2d65aef64dc7beff5aeb482de2dada07777ab155551e5c5cf7bb1571c9c71cdf793dfe06430d88864127266fe2a4af4eebdf7ded19e5aae30952c6964c9713514f2591dca4099bbebef7861213ffe1a195fbb7ede484a7078d7520e9438659fd8ae1f23c7494d52e2ce78a1b59a1ee1eeeeeeeeeefee21e1f4677776badb536eacbb752bacf3929a5b4d65aabb5d65abb5a499444b55a2a15eb0698db88a0b56eb11c3274ee5fdee36648317c051823bf763052c830606c9a824c41ceac006902006324eca971b3b5da80ac26b8e503d8f2efcf4e343319d586ffefecda9331df69eb092440111445129430458a299640858a2a68959b1c34d4a063078f0ee0f4b0c1c70d1e80325246d4f5035046be8c58718032f229853b3246becffd2101499103684953909ca2a9ea87a4add85202025484c8a1870f40e083204ae88cf489eb53c4490df7868534825e3a299d1758c2238a0e537c504c8043115236a9090edfc018f96736b39ad130790cb4198d2ca3d909fb0ccbfe043933184e7867303c667eaed6de4a5714c18532ecc68c86d41e7bad6afa42194c5f2863b353b4d763ae6c6218e753489ae063d9c914259e9834cdc734969de65368820f319c9de68432f9ca301af3f1b3003d067ece4e1662188661515e0dfb0b65e6631846acfda6219499afbdccc07163dac3c0ceb4260d81b3815fd84a3d1cdbf52a2743173c45a436e4b1c10d3c36d061e3d5f6048599e0728850f2435c96b6db5650c629cd22545c516547b955906f5fc3bdddd96d1888f3387cc1eb76de04c2df6a8fe6d812ca9bedd57f51c1fefdab6ddcb72adced59b8a916b56a15194ae80e8b28e2676f4964114e8a506d12bdd9f186460bcc027767e8218c51cb1fe873525aaba5b55a7bef65efbd2e8c338c1046082394114a08238411c208658450c278619c338665127ec6b06c93f03d29448311fec6c9087f054af810c2168450056104123f18218c104628238412c2086184304219e10b18a5749f339c98a8f4aef416316434230008405000f315000028181089c442711c07233d51cb0714000b74843c665e38160a645912e4288c72c618030831040018002033525204024a0fb26ff31005c52a52c7c6129641a4167a760829f59b097c1aa303e9c32e4eb8b70d0c1f652190fad9bc65158f793218028d3524abd44b89aa71851961c7f72a48fc32793b24e27f71aa49c6a7412eeb6b67b195cbd9aa95d7131096ee4c58f690b46a6555470f2f7b574d22147e606f9a49b682848b01ac5651112fdab225e2dcd080b04a74cbf14b23341acac8238489de505abf07dc8594a0c4100c28c988a302205fd66a6bc4a2080ca341e77e2e381021bdb26a299d5eb5aac7ce33a665649969c091aa18f31072f18b28e475aff9f8ee6df002fb41ad13d470d26b8b4ad01a01589b717736e79ecc16a3155fc361aea986e4fa607677a9fa290aa4e4108c0a5f33c793b9a9a670bde4dd3dac93ee7e0af4b9efdbe47b7ce7fd91bc844659c449940925e1ad02014f8ce1615551955ef6f5bc996043a3435a8fcd9dc318732c8dc72036bf24990c2a262857169759a097f1388923cfb0412b14f868d83b98b24f0b2bc4c31cee0af6d33f5501b62cec77b10983496ed92b2b04794f9dd7df3a9f5b10ccd425874335b34a3d44a4c6ba28598584923572e07bd9382800547c905b6d26f82659cd5aa30c19a0d934f1557975affad16e048e926295fd3d708bf95794c4d0180f899faa1ab7453d9de2050ff8ad9af0b2ab8b3300f9f63a563e8bb7414397ef1ecefde805bb7f12a182828d5a791a5e7ba8282aaa1dab74e4e53b92bb98d4a324491a9618b53fcbf455e871baf103e213081beb4739bfa328f3be2be3625effce213ba3ae9ec8a5a9b46e46ca3a390a6d243952f9567e418dd3f8c2970ee9c429a73f09885c865a2d07709308d311ad1c9156c1dc5343298709b3eca2055014ab8dd3e6a802c5c5a8629b945da2656a8ff73fc066b942494b640de573eded4c3e8db031600fc290782461242e5ed64221f596c229e4572d5e07fa6a6398568cc9d1ccfda61993281f40890aa90a04b873874b120dc647200255154aaaf43912b31e9465542655a2c5292f60201e30482625f90d4ec6cd3bcdb5e138ae242db698e57f4533a3d1d01b9b0d089e82692d57844caa82fe6d4cfbac0182471fa8e2d0acdf26a539896721e9c647004c7b9f437b287bd6e797a8e70e7ebd9ee527c3682859ff3be401c46f7892c317061048b25ff5b30dad1271176cded37669453544792017a755ac63105fcf2bc7e01b5a53ef930e31dee34797a3c424e0deb6d172bdaad6720dcdd4406d90468f3d1b0c40abe5a40ea418436af7344d28a3c12316063c7c35b04ab93a5da4a4e4c849d6529a9bd9588f77461c4a4bfc3a59afdbe8217d319311873c32ac2901e9080f37a8c58b226b0c25e1dee63f3736ef53fafc0ec2aea89e020b86c69066f4478386fe234860a604abe9fafb28c9eb5e9692fcb2cfd2e4cc32be58c62db8d10185978240ad81b4916a3b46e78e9ff247a7c66aaae074a705c6432379847b096a8aedbf84b2ee8291ca6567c8551c2ce223ed2f39838e5a05a9bb9fb330e46dcbfe6b2ec0598cad15f44f1c2f310f75c6f4d3080744b1d7d890beba1bc8aaf30631e45a9c589cda01b6400a44efc939461287020000d0ff8d6b242fb49a95be45dcea14f292bac3fe9e32186a3461e4f44e1a6ec53c4fdeba0c9114b743cd9a73c5a533aee61f2aacfd25fc53c428f77734ea63964f0da375fdd005fa6dafe674d085fbf861081d15a1502acf857a15a2579b0cedc7664b2b36e704e6b627f41fcd8f4b81a6a711d153ca0864c9dfb656bf801f64d2377b3924c49aab7609e528ce86e6351ad0ecf9e09b1ffec40d3d2442dddf53aa70dccf534694d043b86510d3eba07f050ca51aa1aad225df9fb226ab68f7d8fc8cdc71928bf2cb70e0f0328e1998889cf5e08d503a0abb78d882de15235dd0a9d8689a8855f376c772aa08eb7b76590f3433757586f2ff45338c49aa9958a7afe85ec5ddfaee6e08ebc9017eca7b7dc1b0a095c7a26b59a352f5293401122349168dda1595c6103ab60c4484dcb368bd7ba8b0552a3a47cb9ff049438bc611bcdcea1335e6b4e4caff5ccd17b568aefb0869e59e8b494711e52cdfff0a58e23a3440dae17fc682e6902f04720c8771c0367e2324706153d2ff039b4a19991abf8f660d3725402694ef35897e3dd150a5f3d4b14cdd5105f93870ad6aecdcfb302ad8818bb8d88fd68febab65c4655ff44d1db9d1768773164a8af32e10291e21a037a7742eda5391d57c529dc501696a05d0254a26565854bb10a1b12027a77cbf2cae87254c06b1e234ef2a53e18a07e59a2c44bc36a8bbb60d687a332ce1768ae2b3c798e143c4742fb44343c4cbb69aee6f110d567e25188a01b2b3989d5d757f809a1711f768344ebd76931abaa0282def5ce4978ea42283c88d72e49e82e0d390264cb337cd7cf50de7c49696adb3d1dcb941bde2bba1fa6a34b51bef4a6fc8636f68b0106baeaefa731845da77792da53bfa8b0939247290c97172a11dc78952780f8a0e6115d69fb6b76de0a72faa2681e66bba4c322930cdc4224d8e441fa729d18b9f639b5c1a2d0faa86911cf3787aa6c8ed935f1e332e720be1b11df6d06704726055a220a8c78b81bf0bc13a6f2db9c4050c4623e57fffce2a1c4a6d2c6fa80a911d5345eb80e45b740e4085977b44da459e759d82a8bcd0cc89d097ba951bbf772cd7e55f150643462c1af4a00145820b9cd1b526e091aebab53dd5c5e3c9bc3f7c5baf8d02c0b53ab09caa9049324f95dd69d1533a1b569deaca32dd5f6ad07b3e15135f0dcece52460ac0eb6c9dd791b2ab1d762efbb14346d0d26aa35e98646ca860bcd1bd226df5c72536b9bb05b2309926b37938d7ea7cb21f08a45841e772d83219e2c917444ba8b1b56bb72c521def17a0c03ac88a2c8739a0139db7e041ebcb843470b66f522824c5c81d3b4f80aede637a6e566fd1dcc73d21f49ada3db18e557452cf587f306c54ea9366de59d6e68802d771892eb626eb2d3086216d06ddfa32e254cb6db736deddda60f0d636facc4bd103c96d83ab9c6ac6b93c1583b533b654ee6cab3a4d1a0b4807da3252479ab4089ee41b26e1822a0ed20d34000688a8e0b46f7491096ba9f5349ee3c37dda3fac366e27ab78e349df32b96a4b2d6cf086694fffb90708dd138695f6a62de21be8f63540a8451b7adb0ff91fcba93e677838a4ddedb961a4d28a2d35b13d7561903249a80199d5d57626627da3da0636934eee2d7d26f9a6c24e256fae51b4a6c232e4c420a1acf3c13d84c86155f478aed8053608fb8efd1c8b3b5a10dd5e3f571ef4bc51b5f3e898447ae7d1f44a0a1e082b9accac17481a7834f4337881173dfa264070e726dc87ee3e1a5c907b91e0f4fb7985cc817d6488280b9f32a4553a3bed7e4263338975c0279e18c31f7d8c636e833bd980b7aa8c7e8a048b4ec6ada42c42f13a8a2048f2ffdb98e176f83aa98e60be9556e998e22c40e13429ea6a189e0594a3011ff03902ff80f0225729caf662a2100ddf1295513b5e9a5b97a4062ebb5b674a8280f6ea08724bb25575adbf898aa8afcc9263070c760317665b3c67071eacb2781c2782fff2bf74c4cd2d0896846705d37ed84ed44897584941fa86091e16acf12c2b369333a376b8659e19f8132a354ec10fdb4dd62dfc7d3d0a30b3c769fe2cd7552bf4dcd0832a989e534268438520a9e7bd167896f9e8e204658c78d3d8e464fef470025e04f96ccbc6c657e5fd521e5c7112fafed3247722ecbd17703654044e68e0d55f9cd0e544ab7b2a71757bc28214a110042704a0bfa0cc47f837a17c2b87a4d2b88d6dbffaae1dad17e5760173477807c0b752da75ed02f580cf10edd9f943e7c767dc627803b658ab4cc2cad0bf32fe22da5355d8e1f687fd96392a025ca95861c406c36d5bc5a9e79b61a2b2e0e582248c9f515b04e508f072b91604c9d51526dcb9781db9ce1520467a02f7adec128fcf71a519eb4f76c368c63a26dc333eb3de89a3726714f3fa09de19c1b47ef2b78d7026aef644c908944100cd7fd63337406f932ae0b2f4d6c0b5094d60ac77747a229a9ec5b5e4af31bf5bb2cf829aa7d7c2eac1161635b6ec1a5baaffd3ed5fb974085b6ce511b63ae8af4fad000069bffafd2080516ca2354f77442ba5609b080a418a8fdfd607bbe2d19f374437718f2403dbd963eb73545e80cb6f64ded27e98dd312fe7687064f2ae03843a9a9d6c7bf32944b565702eedbf56bce24bc3a6aaacbcf4fd48a1a94a8a75a8583c938f6bd5489d50ba89559b6867a308d09eb8334046e6692030718c9a38365857eacc31e934b6674c28950013b172a538e746e891e757189e2b100c4082ed4ac6e23fa71d7bd5d6e70f3a668081bd5163fb3054bda7cb4835205271f6ed74fe68d81156a4973e47612be9549c00be4f77df5da1e5799fd3a0d2a100a8a54d75e37332241000b2382c0f57a169af457212c0126810c6aa38fd5ff49b117b320d9eac9e7f50ae5adfef2d59109a7a06a2aad504388a9b89a6dcca95a2e29751ed70920fd699c197f6990a2dd9e69bb9f5fb10b3d487f1adeb32c09e3112f08d044c6dc295620d244a0891f9cb6ffa73da4d2304663d1da6de73f44c8695572f5bdbdeafc9f65a81813aafb12b2bb0ba059fe64c9302b2a73b62df1b66ac8590a24b7c780eac59e6fb8a3be0a0821090b7f894d137cf9444cf683ec9d0d936be9b36466fb7d3e075aaa5505206ff27de0cb7e93399b1ad73d00b959eb84a0fe6d4d784002c2a021d5e00dfab6a16d227b54984fb31358e85f82db0ba04c9bb1566e1581891f649387aaf729f2444a092aa266f4eb7744523cc188490ac2f60cd77a60a701d8ad69e48d02a8c3f2dd85190140260953161361d9261e8b278e2205fa1822ccbd604767473846dede918ba1c8581e3e6180a66a8e762c4dd39b9e551f4abbb1191830d99a14661bf96ded06fcbec815a2ea44b8c69749a69833ad38e0e60e78a5d2058183616dc7b38b037396d307206639a913d4c02a63182fe4d30cf8d61c5d8c388431ae958e81ee286b25376d92c16f3efab7ea615620bc86f912c857945bfa79552c1c7a85ef051f8237ab9d62c840da0a0955b5383a187d5fc649077e58a7db0c2f809e1a50e5d4644482714e35720a35742d4932421aa48c459e96fd07550ac462e88fa2fbdf967d0ec06cc6c8001d2000333d00c9854a1fee98d74f4745eee8f8a1b9a76b9da1211a391111f357f6cc83b0b23cce55d8a10dff585da7700e864a2250f782de28fa1a9a06b2a3c7ff846e50b2b55e133c797f85748a63220572d59a937b2d11febc82d83be41bf7df4eed36362d028f3c0396099693af663c9a9631836f8385118c107e117d89979dc7bf2586eec4d9b5d9a8e62c84140cf6102e6c1f2983b792cce044d45011ce723b30b2c03941e2480392ab83779e154bd051d0e6cc76c4d762b58eeab5ed2abd3f4dafcebf5f7c336a16da800d018f98b7a77fd11b3b278940ac77d31fafef9abd0091243e452b493a90f3b3ebff57379fc3ab90c639601c82de6ecaedd0018f280e472eaee2184055f91862b60288a83f01b9d5c62de5a5a39df7becf65ef22d8c7eae8283207cf2ea44daf48ef9d4280c25b6826037b5d8eb372f4310a327842e56a4a528038427a866cb40cfd8d8379f23f2b82c58721c84f727d0e60665d005604078ba2d2959fcb5a52e088f51681b99d448dc76f19793905620861745efdec4c6921f4b937620845572f71c4982f01b74cd4da5b9f7f4cdb886c2b06e64e6182c9957152487df34051700d5dc6b4a66b682db38ec104ccca4a43c6b3b15d806e1274170e8efd37759c50068c900e1b26a8cb560f234a1d9b02426201a919432b433530fa1ebee691e90968729ba0672660d8ddb20206d8f69ccdaa3dddabab3292e5e1922fc8a05bb357637035cbc3b05782b17b9b5ece66648781f4e116be06db3103e1a774deac45458ae2d3afc14cc8ef36d7b0d4b73dcd6b2c12489a462d60aecafb3739bf7b4e74891ce12d1615804eb173c23675ba1dcb7052729569b911210854db4c18ef98bee94006df19910cd827db853129de3d9011984a3e48d118ab53f8d9210cc2cc8448c12aaca6cb724d482ebca52a66af850f52abbd8ea9935587d4c6040972647c0458114f9c1266b9eeb454be9aa45a4efd904f1bf3c7fa5787b60a811b77d00d7d12f38f1532495dd4ae492d0852530cb3dff9391110309e41d634fb704653da024d943890143d5bf38745d0a0f2c17740affc7ddd6685e7609230c94dec449df0314eb946c3b25ced9bbbc13613725a1d15892c72430d9429c072c2d41e1d9752ff51e6b52d14e6c92ced94534ef2a6afce340f895a756bb26fe0e7fdb975488a5de45800acc5df04cb638e22f83ad5a8266533d8f23ad3d4483f78d0702f5c8aa822ab36d60bf3d5c263b8c28c4487c12f08f12a05ea002f74410b566965f78b2d2eb656167508eac36973ff4376f3443141f6af5e2af036857dcc777c237178ae6b4bd79fa6b8164c1fab30863a86706e2863be0441b97defc1fa0332ad65cdc73714e053d6b517cbea1b67a010d84cd5c826f96da4b4e0ab7b9f544dbf15f0148bbb23e1ee5cc579bf565b6501896a7555048d4be4c631ad9cd4b08998c111d8ae06a5465c93a02686d47ec12410befa1a606b2a7ca7b5d02cc53c070f1270c4df9e0b8630c000087275013ff921f25da43e548dbba9f18b6598eac959ce8f09b0ecfdf5aa2bedcfaabc8a57f82b3789be9a13b3406dd3dbc6784f4723ee79ee90730d40c0fca0251b1dd1c940138bf40864bfc80c88ef9853dbed7c1f782fdd47b5dea362f357b48f4e9419e1145a2fece1dd1c46bd4f6e0eecd0d1598e4c834f6e75cc9188ef73350b4514267573987f826624b6620587fd01d4cd464b76e7851a955c39ba04d66657678b032cc163f376ae032c067c09b0224d9b75913dd25387770b27d02b01dc050a817cf0260a5ae1b56d03beb878eee27d543c3ca0b11033fb93cdb0081faf47a10108e9fd81fd695184c8da8c74f44a54083f8b44a4347f76e5366c46cf99b88df242ac3eafebc28963fc0c7215a3d56978f72289094fbcf08ad5522ecd24f1fd4ad10bb9c61f929284bdde2aeee2b3611c4b94ebbaa1e1109dcc828050c063bb703465f60d21bca09dd602eb2bc949cce91597e08954146af5a7493d28fd609a182c44105a241723e6e294d0ffd9e21de85de6e2f69d98133689226993fbe95f092caf7260791c9c9c5abdb7d8cb27f272e8b2ff979404d2074b933717a5dbdaf92a5d3004defd1764e185a4751716163a2d28f97540326736bfe75f42996baf022d2f97f2821c74ed606f7e1e8f7490dac3c97b4af0005531dc2d6962b101107edd002f569b18b1f5ffd6d5231604aac5537c6b2ea95c8ed225bac9856ed4b322532865eda24cbc54c8da3d5fbfb22ef55f4f0b91972a36a254f35824afa71bde8fcaa31204d5ca1c042145ea80f94f672ef0cd03a0d2519120d478eec0bece3e0be70fb9827165434df52d30caff62c09270f20c5cab62014400fcd452ba4a25e1cd4a70a906896829363fe94180f4a85db6db5fe8ab70eecb293211ba4a2f71481f3bbd1b1c29b3e8c1ebe8cf234a7a5abb9ec50abe5959ea61c26858c7660fffd3c44b20160e9618f7b2d223d0210ba00cc1597cfb5d30ba7a9ae306eba9c49568b804b94c51b5b122eebe096df12a40b804caf6fddc0854e491a9a55922848217f64ab69bd17344194efdc28e721a0e489538ffe10bfdf56b6f225bcdc232aad28ec8cecc6c65bcea4a3cb65a7bdb032e308e68acb7e843eefb5e4c8317d57fefc74d9cb14fcabd28f87755c437b5307f2a90040253cdcbfb0624b0c32d4dead087e6fa1f3f435166921c27d009791567453d1523915eb00e848b6aff2f95f0b792e86e13f25557809f95ee967b4509d05a32c3b05eb8c6b93edee1d31c225cb61d20200944693700affd2488c8c0236d93753bf065f554f6653580ce98f14f7ccd2c1290718fcaeb7b437c92dab3732ab8efdc3ea1cb36a1bc0f9b80d30ad8f195e21ce392d64bd6d6d6b283d66dea53fac9ebd7cae1df4de4e66b0c5aa7a9a23b873de2a9ef454a877811bc9dc233f864ae5f803aa1ef3aa7820b558d61f9624b9020ddca42cb64e4a78fc86d5d2b5e29c591770bfd5e666e5dedffddadd7ff76ab798175e458b7fc65a6a97cedcfbeb2b372f6fdc0fa78b7593623a69b928443a7d192879fa4249ca2716af3821506ccc7f0d30f1f04e8d750758782eb8fe089f9c755a76bb4163ac004efd1f7931c266fcd955cc69b803c94704f2a5718993c30b8c256ac0d888aed4ad1ff65b20393021868d29893eebdb64c0fcc5fcad103cfae82cc67201d87ded7bb22f342cf46a32ad3240722a22998b7cf554d82d0bc46028f24d50c8c07455ab83cefe6323e72191c8189f071e49dff1384f9c1711b9eaf100f855640fd20d89cb7a749f5800c6d9d054bde08949bea986fcecb0718dcb5137c26c4afd9f53f931b4ee926df6d07b8c1285a528298065985542ab58fc61d7d6090fbd85aa4bd4f91b0a22f4301e7198f2519b93eebeb1e5f78fec487500f1a119e8bd528ff4fae43b74312053d08ca89393421bdc69e128ea3489de02e925eec72ba99ae1c2a8152c9d0b6473020d0433aed9858b3c9744b3a4673b588ce581e60420bbe01506ccc0bab957e9972efcc971a7770c097c3d94315dd1620d1f4fc90664a825fbafbea5a41ae01039b19f7caf8c209e361062b065c616e712c1784871ab89ad0573604b9904022f5407e2b7d95bba7cc618b16ec7c88c1923371f7a79aae5a97549e450d294e2cf884a8a64ad66f7ec14ea1a26bc5d80fcc956aee7da79fd98410271676ec73e286e807d38ed751a85775620b91005ae24e1c2f972e518f6b06a9335d34e609888ce5110512b3c947d998587fbbe26a09d790f5a14c8346cd18ca84214d9e9d344ccece551c2715b32a74a9913736af301546e4bcc3623e335e1a7ff4700784eb4ebb8116c3bafc0aae7d8d2ef65653e3458d7c28363505c83750d4854942938b4b975506561dfa14a22ec78eeae7ed29f29d3e090758e72654193ba3134eb8efe28e8362880a8a5b19a9f2fa940c6e12bc60d1599f1920f68e3ba593cae35f8af04ae8bd6144eb96e379f77f28f3c9944bd14f5a1dc455d7233b078acd08834b7bb43fe9d04d996aaa9990f8f1abfe02ff8c084682d4e9be9b98862ae012f5fb57f1be18e2b3642dd209210c982fd766392433d2261dd97efa322b16c87488799635a588b68ea8d18d628d1bae7330d036dd752a4dc2a32c3ad952f7347493a86b6adb2fa50f8604dcaf3bc1170c9834797434646a4490a2bfd45cb0d2e07e01e27e7121b1a2c34a8368f3f0b4b1107c2b1f7daf47da6bbe1cece8700f41998202c44d0d7d6b2c4b1812a6f6cd668858a0a0388f312b36c3ba3389e956cf6b11bcea56102d66bacf005eaf1d38ef70d07c4410fe02b465f1770359ad87180e35c1336f2583156cb4d6e57eab6b6b7eaf2c4dffb686a894138c6bee98f13afc01f91678e585a9e6c66e367ab0cfc7d0f9604a806fd398e3dc82734589e39204214e1100c6bd086b3f76b0cd29faafb9a470b411ba3fc9adbd7dc739279fb8cefba04eb21dc21ad4d077ed82f4ad15f7086790804e8b5f12d0124f2fb2a8a899c94ffd93c70b23390ded32cd4af671a640ed4c7d4471ea05d3a7d29904b3b3f02d0ec1a3e368fcd9035bd680b0bd4af07129031127e2c98f07102fe079c36f01a22b8448ad14a6832dbbac712626b9e87c94051cfe1b40babf86dda69e1511be9c9f77eec9a8655cc8056d795bbac52cab2b69911d617da5d349125eac5caf47b6cb9b7005c2a48d354b8cff822d9432fdd265f47988f6b3c6fa02af7d60785fff4485677d197bc20e0f0d82c09c054581cb05a46f25221fc72d2737eb9ffb46340ab57ed34496cba1292debbae033fe4d7cb8627ce9bbd1b03cf9b960d18c653357914aa0d39c18203016e6854b5e693ddbad2e8c737804702bf2d1f8c98f172285bdf0fa89833381933849b2263c89cf176adf0ec71d4938cb405bb0ceddd957f7d6f6270467557f85770710fa6897240ac57a6547212dabc428b98d5c5a2b0d51ffbe73bd85ef21d0b2aa08be794a6e5fea92f2fc1a65d1439fe6ba9df9cfb7b940c321ebce5f133e0e49ebfea38642ddf7ffffa158477ab77b9b559a00b8ddc95335f029905fbfd46496c328d8b4167ea7a342e56d59292d920fa59d2b3bbf23003fdb3772a5ec876e18f50750608337bf76ba6ca4b3343acbef9d9f5c5142778e238d313f10a3226590bad79117e87362c2e3a2148e759a0a7e7bf69bd8b94ca6ba99a4c1cabf71d4e0c5f746e28985a73684e8841b88e63127f2526cde6aa48833698c32d93caa81b8a0b48c984e661bc0fad49e0dbe8259cbaefe9d21088b68e3dec4d0e7504248ad4fb644e982d28536dbc893251f9df51269538ab823364ce94d926541b8c7f4f37f9322d32ffb48bb85c736d3dbde61552bef78ae184dc58d93c3ca05a60dbfabc867a52edc5536a0973f0236fa4615cc1aae4e99f21bc290b7753e41a8e9b5bad2082a8bca5a0030b39b884489826bc86dd1f0fcda645144fef8e34f96074304ab79fc3e5e30cca633b1364ab228caa9eccc939101a5dae09825e46ee7cdeb2bf4132d51ee7b0a6c1a92a49098e0ec0003fd1b2cbaf0415304a5b71b68998dfa6ca71606269c57069e712e3b83a303e74d258d68aca3e5f412cad7a77125a1abeec67ac8ddcf1fcc3274bf348535cd071c0e26069be7269e1588f0302b72f4686d1ffc6bbcc397f96811a66d501f8cccb9d2d997ae77da1c3647fe6380422446a5c6d6003860e77df59e5de2a2a7a5fe4ee8c9ee13781d2a72971ca401ec7c57868376734f79933aec69da879669255d1f1920a0861a953c189c694cc1dc0a73a272d5e011524353469464343623433bb5c983af3baaf903ddfa3614cf6e425e5875de7eb0a364ff2319bed24671cec426435599067eaeb988672d42f643110204aa5a560d9214a382c31774ebbcd5b29efe4b4d9c2042495b030262f9f102cfb7ecef5604309af2c8c0daac9e964b1a0c54aded50b45e8633a58140607d7e4160e608cda8121583042405d341c0a24d74f9880ab568007c86e8bdc051c894cd9246a2e53623eb24020472148f7c5459c958ed31fbd2f2cd606a9151f8d939f6ba7d44c97e493b5ba11ab376c28d76d8c9f2c5c4cb4c95627558f7cb1c28c201ee85bf8f3817f92eadb31e88b0c0adba73cea3bb297e88bd08e06c4620a519c9380faa36fe0165289c6f91750fbd1d7898c31de732f7325d5a8c67d2989be04017bb1412ec0b383246de0a4ccdc7a08056a7005a6c54ef81a1a7e0bb81223a95e286ebe800e8baafb7db238041b242bae7cb224627c2a7dffadecb1687c8a3d23caffcab9955bba215ba885edafe6e52711da7dbf277dd3e9e1df17c8dc6bd6a3c8bb53a73413841778418e46a2483dad34fb82431ef82fae5e53f3e24be16462f1d6951f11d748f956aa314be919804ca901fc7488b81c5bcf824fbaef8b800af471d18e8843118880eedfcba05d802522ce963cb014b028823757445c4b78c96190fd6b8577892adf26b04df765299f88b8189b1c654b775b415af957943770a51d45d8e7f86880768d88c38e3fd62aad231e3668c01c9a9fd385d9105e5bb0873167367e5eba83d38818b2782c019646b01de663c6e6a30d7500389cfa24c799e03bc41adcbda9e23e49392021bb0da1527a81842af6c13e7c5e66a8fc197cf6f163b3359ee9b3b57bc6ac3cd62a11d47e9e29fd4e8a382313de6ce919ed219471347fbfdadb1a00fed5645bc06db12dc00b8c5b33d8127be55810b534944fdb8dd0f3fa41bedd0c6dabc28ff264e2322be798c9095901fbd56357c91359538d60bb1d6066f3dca8d4b99e1d9abb46b26e4e701a15c9c102ffe6702731a1c97999b42d90ba21c4dc62db8e8629acfe92acae31688cba2401057fb5204a5b63b0ec5d95f0297a00bbd46443bbc7349f53418d67422c93b38e0682e8488a1d138ff3cb8486a1d033b9e5fa91f256658801cd3b50e041291bbf86c9742f1d4b0d2edb5b3d09ec8bfe7dc9b0e498a753c61e59810bb46447d8c6fb93ffbbddef30e6a78a6b619fa4233eda2327653346d774f20034f393c48b5e4061b5398b38e9aeb68913e9028773300708fef6be0d99085aca88114cff058b95e832ae692aa866747e364a2aaf4a1249159a92c43c6a89332b078e127e91caab39036f9a1ea1d0aafa4d2b948509fdd4c730a7828f2e5e08e32cc939bd9ac701299b63986cfb9709edd8ae8705cfa86b56b323180b4716d8776abb466fc335c4fa68d3cde51c6ac4d362383d3322f460e27a1d1d69ccb9834a818ba0c6c100157f0cfb7e5755974020140439fde125b24faf32806672e62c6b62e0ad27b7548e8f665f3808748aac43d7a0dfa61ce038a9c251b8b05baa91605e7341a7226d439943d064dc126b19624d6ce9a1656ea105d977da578b7bb044a0c42067034eca3b15beead9b3e46ea5bd764ac1274be17cd37f49b321c9482026f56d0f317aa372fe2f4c13d4530a6dfe20bcca2ace8280d014a9a00a336eb5380985274bb670ff9b26a166cac38b8a5db56cf4ffe40b04ed1e606b7fbb12a2f8dc295e1880de7ed194448a47bbadca81ba6f89651cb1dd0c18f579cde89d409f058ebe13921b54ec01964361832aa05892726ab6e222c393741ad44ea277f5a16c835f4ff9fd81b3cd663034c140d21641cd4477fd7670094a33b213673525f3e5e1b2a396d6d7025955d9d7cf7a1c46cf932f95650d9ddab61a753404374184f509fd3d21d76af4796a843e08fea7efe338627bb7589f54489f073d809a04c11b96f3c3bd0a2539523181e441d5c5bcdb5e9be880d619027b348181a7f2ea136aceace3f42d1d5262066fcd84ec7102af33b154dd8ea0552a544919d06548800614303722e0ed6908404d988f918581f8a9f5aacdd5a7db420be0a07e76aa4d04e3b29be1bd4abad30a24fb6711c5c58a125863371a1bda9b10420ed438c6ae2b10679d390835da6d1f5ccc26cc65517957a826a9a412e149e8a6d82a59b0eb2b58b9331cb53717188d82f4f0b6136004a8dde0674a681596369a166b7071b1833cdd5630e1f10071f1b0ab553d2a9ca1072dfa78b78a53fccbf8723d27c40a8b9c12de5cf61235cf1402aad6d593789919808aa976135438bc5ee20ea969a5e2fb00402259c4ab4e4291281330e12742d3eccbecd8d173e93cfed6065e18748bf6518c3b62710518fe337d2e0d5dba32650b4283ccbad3d2126f0f771f9c80dbd196c4cc7d34e418d9f4ad843c7839a7f244a16851ec141f57beb9941b3d49270cb9a0a796b53c3597ce14e67fb8b484b7cc8e4f11241ce89f343ec72184a22a061007ae7f0f8011872d294d7ec4c387d189b478852b75e5497338bc70683d368f8aceabfcd960189ae423b3ca499f4e8f17a295d2ea60c24b41c5c56c2eb360881b9798bb0a6c0a8c874ee23b67b04a0b0bcc8243dfb00661d1deddf77b630f9804d142ff28f0865629409f8b7961efd53bd951cf8b49281532897eedfb7bf1579b6dea3d88c273039bbf68427bd9140da1939c592ceced814c5606e7869e3d058616728932d133ccffafdc35dc178a7ee7d8659068450747375a97ee6f24d113ad29592dfeddf86b39ca8bc067b23cb9f170072ccbfdc215472700b229da5b971f97561ebdd34b70f5205d837c213cf81594a3e830eb4ddb44258a9efb08630b42cd70076456638df1aef13e2b3b9576b5d23ea9ed577f4403940f6ed78489d460d494bff7d805351302fec5b2c93feb71b5385105c620a8a877106a1a34a401cab23eec0f73c6b9c9674982d831475d75fb7185137ca56db570e91a23fe63021f752c8ea91ea05af5865be634e48bdba621b0ded3e95d0171f4a4156fc44ab7a8da9b6a74d538c0a42cd3f8b4be5e71b5abe71bc763772af68f0d89e3fb06917b3d381b56ffe6b8b59725ec13db750736446a673dd7b5b816add283e683d2d5aaf72b529752af5d180005af528460fbe5996886b429b96a1706c37c23f8e7e4e4cfc8ca6863cd8f90d599ec3a842b2d788ecae09105d51d8eb19e35644e5333dd0febe6b7798c4c8e83a4bede8985b82ae506e074ae2a99364e255b32a8b76f69bdbe8be45870f4609cbf44b01a3309ca5a0ed806df80919997fec8cc7e10ec24b8573a799a5f8e11e64709ebea588f168286e775d180da985a90b80adcf96314508ce2baaa3fadb0a3b4380be4903840b34f86c34074b9ee93ea6481e21b48baf4bae9f06cd880c5a4ea19b894fad881ccc9c77360d7d7f41495e258f5bdb8b47b4ca7be49f1108f9495451a6f6e4333c74824303546029aad0cac06259ceb515ff4c337e4735b23dc49495cd72b07a720bc9ee1ed9a30e72b863b31fde5b3f07802014f77420d57e0c94f35cec598bd50840a4fdb3ae9d6dcf7f20b734ebebcbe8cf4a178b852a4ba13cf2317b2e78314c5df5228adfb58d1f8c77d611fea88f435d2053d3890257ca2c7d2fbba8208ff357a3f7e9af7bbec0404dff2aea525c4353f274b8ea6c9aab55ad38e520dd9f211691d75a3d4ed4199af95dcdad71b5237ccb193648989059f18914e33f0a0be8eba90c4f2757fa312de0e23ba4c4d763f170379399a56c91826cb8ede09a0d8b8432ff4c729d02054cdf7fe43ba1491f0e69c14721139fba1748b9306441cb0a460e19124a7c5b0facb4f51997e07ead4f910528a48f0f12a6126300aa399aa55acc0e3809406e07d49bbe1bd843723b832d858e2c4bd1c1ac8fdb019175beb2f3258ea4ab2c81dfb3772b2a2fe900b598d2b7155d990d0c75799aad07955e99498fa1d418583fc96ff835d0fc6929fa26a34dd7cfeb8cd1ab5b335d11eef2b3769f71910d192e5f68a98795499113e8f7889086ca7cbcb11c1a3265f17c398ceb875329578cbf9945f1dc097add07ddb5b4911a440ff964644eb121c0e3cd52ba61fd0d3ecb4b0a932c0b409ed763f8a059ba84a2864bf0b4147e0d129dfa43c020b39a75a284b91b9964ec29671f2c52ee362e022ca72d5c59bef1c061030ee9467da8bc502df12a8693347991eb858a30c4af8b81e0165bcd3c68b6f1148b1a0d3236cbdd6b94d006eb374cbf6e79c5153e26b7439b9cdcb745f2612134bf071773ea5dff1e924d001bdcda529b0c2c1acf3029c5458e99f9c3ec8749352356096116b9ffd40f849932da85db9e2fd7658094cc5e6243ddb8b23870c33a3a5fcb0cc1a38d87f4bedfd589138e75386d0c606d24b31719c24efca71f8706561d25ee2a9816fa9e3bf5f840089f28d0f4b9d5ffec21ffb2398b05096752bc668008c1bee773ed7802a728cd005b079975bc6c880779b2d9e5b07866c230fa5456479e759e7824dd3b3a800ae7660dd22bc8e1f382586084def18b1793525b25e1d5a1c135bba8d261fdc2b7dd64b889dbd98535027f2ce3b38e0f63a0da5d648e942f307cee69c6e47097ffc55a0f5c881b882dbb30bccf5fb4ecc23a2abc6357363058dea57daf5a2fa55c8136272eebf65dbb01230149b93f464aff75ec87782a8111d9bee29968241cbe372b8659e1869e7daa138da5febdfedbc1d671a2d453b33bb6741dca61efedce4ec03a8084afb8f173b44cd9ae039d3d63e50f425b57f638b5fb9d97250aa27e191f7df72120487ff03b2077101af818df6cb7b31854e1b202d27092d9d6eb20e887e7e7a7eb48836108e24e3e63a3908b079cccb5ff740ef7277a7eb987522c34f664f1c4e11ff3bc4d81533d818374ab1b44c57dd6ad8c275f91b11444bdb3c132fae189d9c330f578635f0cb495e4998e027c087cde784b1274523b96e399e93f88c171036c256602ee8c6006f4c7d15e30dad2411e5445331cec35e7cba5b407a250402b33712832971e68e858b2f6e034fd556b265ae91393676aa29d907774789f99d12bb4d2bdc2011ab94d37d2512c995663f33f5efd35b6dc0a2a0cedc5d18e1da84d2a40e97785b441b1731ea0c46708c135452384ef971f10670c8c4168cebc1614a7e298f62148de8d0783c10830dcffddb648885d827ba78a8e4efc7cee28beb417675f5041a49ec4904813e413b1589ae109e37faff011eee6bc62fbad10364d540284266a2d93ea0078c9f239e25db03d6e0049a933ab2e4078aacf7398613aa1c94318a5ec703b8f46aeae379def72680587401e27835074f19bb98448456ad1ab06475ac6ed8001ca050179b8af243880b7b1fb3b3ebe3bc7854a64106b6fe12856f3c51694c62d876636cefa4468bf7404cbca7fe7a85cf4d84e789572874f0e76fba17e67847ed34872c08a5a80043f50800f101e0f245777a17844f149a0fbed9b9cc23c3db748271874e914641c56d638b581d0940b263dc7ed0b437a72957f18672f068defceffd7b6242ebcd88da519f6ef95f92478617ab8f8ce9bacfd7676bd162635081363bbeb77c3f1ce9960286d3646e0deffe6e25bb8bfd1a9284aedbfa50a46f685609e6e764941cc392fbeb211486ed7799f710c7f24a6861c4ecc81569ef333157754592552fc046d058639043c79ee8f0f16296255cb44b4a1f70af4cd807486cba7ab0840c9fc49cee22a6c8ef131b2a94f10394217ed47f7db7111c9c3747d036833489396843e3e63cd339310c68648e9831426cce349b36441e4bfb6a7073c37f34db2185c6bba62ef080114f440c53ea0cc281b61f004e88814ac9a17ec49fc55ab6d3d4cbdad2f9966b64c8ee161a8544b1b33c8449416201dc198982e0e5be95c8929c2ce99c58d6ebcd3c799721c448d3151d6f27a6f95ee3079deda31d4ebd9c4e1585ec0f83e8af7bc79a9d97ae768b002fae086961c9163f6f30ff5c2142b39c8b5ae32d5acea8880382cb64912fa018bb0ebf4c0096a58238fa6476c43bc2c31f9c4a770e2dd200f6bc024d1a073913d1f9bf8c236faa7443da4a612cda98818b03a35d17b8a01a6d7d11068e1a50dd3421867a74b8d64326d1e2bdbf11b8d6db0ceeea09d29051eff29d58a9d429d2f45415326faf2bb6e02fe8c2e19c1c3e9b478b0e2d7f2e2ba1d81012aea977604dd6036934e82f811219feb18d6ae27c25c2fc34cd1c7e71baca0d24f46a874255ecbb3db50cbef4cdb7b7fc530843bc57d1345ac90251bdaac2ea77568fcc47e68303b874252ec1c990900cde3bc720850379ad5535cb9285cec92b9207645c845138937fe7a358d1f3e8a8696b4d28a07cbafbc0089cdd7045142826d9dc188f986e15ae5bd7c5ca07d59a6772ee2ea26e2c682e0e071c32cd9ef3bd3dc0bf9a9f1e1fb161d7550f71ec215db333686074a4e44aabd1171ae2c3d64eb378a64a0480166f1c80134e0b2569887bac2f987b3e6d35e3db24c956c897a16948faa0804b3aefcebeecbea28264d628349d7e64c2ac5d52573140503288b33922385168595b6aa75ddccbbfd87444094b0df58b01f4bf19daaeac031333f029e6a117bf2d1938eafe830e412c25c3089f66be537d75d59caf940d48f3e37be478b7ee216f5041d3df7fe24be49944200e844b80a4d51e56eba536a085490d03ddff4d11c89a150d31c996b88207d7c92bceeccaaa4a33036c219655a5856fc00febb7fd0e248381397e8fa5d0b987608f9b4d85b5304402454eaa9f6764ec92d5ea60bef23249fdfbc5c547ef27d4d938947133f72841c78e446679489b85d8cbc1e8adf3ca97f81c13db337381d28b19f7b0dce3d4ba82c6d38aba5966436516157fa062ff4262e9b289901c107cfc6a24a9720bf273b1e066ecfacd141687233e7129de74f791776642ca35d5a8ea0cd5f5ab12dab65ae274266d8a12bbd306f58f41a6fd051af647c5b948306cd91b16938e455bf213f192843131e918cb24c8db842b282d4c5049082558102909be88850421c11c4161e8c5d84f9328323c7e760709bed8cdc2c0398509fb2f7459e8e1eeab349b803fbcf4f1c0717c9bbc72217aec4cd9bd76e0ccfe191813360d608f0e881423e9a31e55992b8b698853ebc9393e15f0294df3201cb679bdc4e53e7ac3aa7f08567c3ac91f3ac4afc2f92f8b05f2473813487505286556570566be918c8b3e510f302af8768a7ade3a90416533bec1b6ef0aea7e4e793faca480cd2b1c2d48df1e9950b40b541a906a76e6e8c650af9f6442a8357efaddf250987bfd79369f9bbe4bddac2872d1ba890d35b491788c6e6387807db1340969a2a63e6dc9761f899ea7c6a4895807cc0cf776818218fd1699372823795c2c62cffa00bf7cb9bd3e960ee3c8a506db9168c61be5fbbc5734d723aa370b87a4cd9aa70dea64c1224e21411352dc2da6311b241f4e2126eb09f0fb08831c95c7344fdbea0d92e2b10ffb4ca224859c23fab2cae73f8d06e51c719a256d41f7cbc5f54eae1743a4162328201f165441542a8167b50413bb5524ed7369651bf1632a14e42c43d820c4ce60d6af4766e79182334e137793d884f631cc9b7bd7464772380a64b2bfb2229f0327112f7069d4b2efa367e46ce918415bfb6499392e16470705997e6d3c78018cb202e7e553fb3655f27c4c88f108b73a7ca5712f91e9a7512d9c355a63280275bcdb23b612e75f23f3c108df1cc550b90af17de7e0a11931bee7a1259ecb0feec63f363886059fa125036818d3d87330afce1bc130ec037688943f6ef1d7fe8bbd775286093c363f1e7b883c3431487032a47087c9a24189c05305e2bd82ed2822d4b3aaed0749ddacee72f6543cde5d6eb114719bc7ad34bf1e660ee049df67823c0e727813798e945fe72634ec125d05d488006a581076f29e7054dfc2c9e3e7ee7ef417df6a2c44c028ba2dd86e043f6b351ea6a7fe1d9be9bdddf3653df4c1061a6ccaf0fa9117bdf90df13dea2a7dec10faac5557260e79bada4b4f4ce8d97eecefd4e17cb3ed93f1f5dfb73ac05c3aba8e1e7958e94b626d1857cc30f97d9df3b08e92317fd9b677499ee71fa260d8a75da37a3b2e6f97f28022b8183de8157e70a87dde49566a87e5730451b79807c0929f7ec4be26b67a0661cafff442b0736e61598027d903cebec94c35673c4cca6a7fb3cadfd8301be19ff6b3f58f64401c861e5c39b85992d5b2f73f60acfdabc4a9d9ea0c6e35150eb07705bb2c1fd45c2214ad9026e3a545585b2dcf05b36c18ff854f1c71398f1cdde247516a46692c9aaeaec44511caf4288508a5a7bf5013e57a34a1d6270dbd93966c110eea344dd4983e46bc366fadc566596cd8a0688c1213ed083da3ac4a9a25e11622e3600ecb4034441905722a3ba844fbed92c742258d1a25ae381b6c739e9f0e88c2692763bd48b359e705a81c20d395a5ba93efe23dac0dc89c5dedc215acb7c0102a0bfcad2624c08c97543d81706f0107fae1cdae3d275af27efce9f0517bc45ef23205d844db8ae2ae47ac2e4c5ccfd316ef7b54351e5810e3079ff30f71fc69aecfc4e2806c3f4d13853c75f63f34d4cb85120e168061c302d1733ba4e0adf4d391939d237f3b96cd5e3922c60495c23b55ddf76cf0d81ca6d3de49fe00a51299aeae1e3d159fdda0b2e429fd08ed6cbc97cc0a3748905e1c0a5ff0d729c490c92fe5f455579331a62a7bfcc229036d94e36234d4471079089be21eba48fbe4a929cb9647467c7b160d059a9d482d8a0bea7cf3dca9500e1222a480824f0a13cf1e545dd32b3112d1446a9095b614d125c83ffae8dcca04014ec76050c359410fac8645b6dc1851f6758d35e117dd331bcd79d360900d90e655142b7cfd985c3222cb141284e01a09f86d73342683a409bda0ba9269e144540a610d0596f16c0dc6095230c4d9a1061e72c5a780ad66cb4872a3d16eb3225bf3d5b0e6945f0ba387db650b4c1005f525fdbd70b75e412333392caf0462e4c3282bc669602139e5382765d3bd1a5ebad33db640d5f909b80189304ab5cbf5669e5debe6a4e8c8361dcb3dd03da5d0045a718de9db8aae2b3f1582125cb16cbbdc460bac4b86f2478d501532b46b7819cddd21e28d7bb4f7479173cb64776aa9c3c95e089bab0fe91e0504f16dda0510d5a611b24f708858db36209c5184d645330435ef0c46e857431c7426517ec7bb26f92bf5bd3f4366161a94066a10988642722943be8b64badcaa8a5b0de3989dcdf95ddcbf5af31079e21fbaa55b4bdae18bfdc87b952970dc78566acd5a9ab2f31e9a9ad2dfc02eb963aa9a504efbf15c692bd8ecb57d445ed82621afe4a9847f81e97a7307a9fc7449b11535225f9fb52174c762a3f988dab50c21abe161603cdca77e210afcc18840c58e6af57560afe56fa5ff82239ee6f5ad8ff917165b9f6767c316da8aee2de7289083191e27a5637c9ae634f89009c00974c2a9337b234932b850b4ddeaddc2596845db459f2b1d2e97e1e6ba67fb5136a1dc5dbcd100b5c88423c39183413a82a33e28e67ced040c67353206176c69a2391eaf548f742d486470ee641c5965917a90c7ffdd623940a2984f7f28617f01392b3495e96dfe86b0405a6e7fb7708e5901d2e80b9346250568e0aeeab8b798b2b3712d7f4247581c5b1ecc3c9da5e6ba81115d64e59073fb0617005136f891cf102a0fca13030834054c72da860785678671bb73f8606efd075276d3f11326178d91f452a28eb4174a149a535357882741efa7d505909616e33f4f321a377d5036907a002786e7ced04517e9f197705741089c49c94af0f563660365d4f9c13984a918374369f8da3152acba4c34b5ef212b6c9dc5b12f41182984f1dbd3d476fd892e22f2804e409a3ce2a85d221970fb6fef568836fae7d94d8b9cfecc6291630e86236e73b59091e0c60c8524f648e84d47cb71709aea3a3e7eb6f864bc1a4dc66263b967a0f19d2a7f4b611c09a4f27e0e11749c6f015118957e97751fcc02670da51685e77a4b6dd323bdf1936c74ac00498e75b4dbc1000dc1fe307b36c6b15ba78ae3e82b44119810ef7319107ab4b1b349bbb77c3aef97609d2281c8b9523fce8977f0b5a58185987211d7c194db899f90f06906b5b9e48e61c9ede82b42f8f275b8d82c13ff952fbdff1427dd42b4eae443e8f46999d7c2d7760d819af6942527305989c0d73697c237e1a448d0073f9953a8c9cbaa93e5cfd40452cee147b30bceb5ef32a04e916d853293cbd9803f95abc5378e88a82261912760d0ec1827b33c24604bc641c1e78184215fd421e0b37fbc5f63d89f4e86cac5c19f3eae10ca7c7c247c52b9fde76ee5cee746ddddbf7b55b73e772ab7fdddabddfabb53bbede35ee54c601ef55592de8f9e8a8ec07adb62a7ca9c790fa0b79c62cd7e255b3e8cbf7a44b1a53afa0015b26ae18a72078fe92aa2a662e4f114f12f72bd83e636605ee838ef1995596f2511e9b2c1209f3ca9b1575bd229f9d122fb30e771c8d2962edd312a824f3e675acb36fd61bc5148cc6520d951567964f56a411d9975cd047646caddeea013c331217b03603c7de462df48db56474a5aa7780ae4d87aec86c4acb6a6ad569de1407ef6d53d0830e9e2dca9e7e07064f64a221c7826470afcadaed0ab7f9338277099e4ac0f0c3b5e33996b149cf7084a3548cae07989fa2a88eb42967b40e855626394fc44a9d8108cc9092aede8f1d3050e29f08ba948d78d2d30374c8cc2d14d93b3df864211cf6956732869f0ac90eae07ffbde507668507e90f0cd5fc11d99f4049595d5baf08ebde40721460ec0f3504d54a78ca1b9be34c87de15615dd672cd98c331a29b96212bf40ace35475153ab4c0f30a387eaa3dbfeca90905b11e1ed2ce378ea064f66d2e07b388e50a89663937357d8e7102dbfffed4d4288a5aa3b8f30faa5959aadade8f9a6346cfa1739149191e16734fe8c218feae9bd2b0661d8f26cb61cfd4ed2fc2c7502e1e8c132b82cca63d4a1c1ab53f004b63926423a07ae0a53d1ac93cf084ea7224339787e40c0d4fc6a28ac57e62f2228927258d7a1c04af2421ed6cf6c2f5ad080efb7d1f4e638a9d80b55d6e67803bf09381417951c2a828769456c2cb1a75412203861f2ef6dbd8dfa7a8943b1f388083465e7fd4a64188ac3ba09b226ad1462502f4697631eaa57731075a4e4b52b2782aba85bb20886499380717a138f1fa05b88a889af1c405cc1bc747ad6dbddfadd49a5abed4a9451607c4862f80b3648568c198a09f756bf511949d5248c1fae18933029e10bc931836282b1b705a5b8c162b463b591e57cd8261ee6407db05f367d3b481e8dee7001abf4b2017c9c1c9ac4fd8c75afc9ccff1ae7f8da0fc9f9ab034e37a801df561906f5e55578e49c277b96d1707744c0f7a4086c8047d8e5025fb24d716d913a7a59159dbb6e8be2f7f23aa03890047a6fe99642c4a608e63164711c53ef28b3a25c5a39d265c3a773a01a4a007cc042632dc0508efc35d983d18b792d145f08acf6efc77170360e75346ef89ba078a1fc8374e296d7f7e85b142e6dff48e61b88ef64a6a3bf738b51242e4c3e020ea58c8d1c83f9aa8f1fb25d06b136f8f686dc44838273807ebe0e578a3bf17f4eed460babb1770504ba0aa641dc55c7bbeb216138b942c309aa3c99a6e32bb866a3e3620d8e098ac1f0973942ee32cd1cbbd25ad43ff15d497ae8cfaeb7452edd0ee950a85819774d438ad946fccce8f5a1d45a61328a86d4ac581b5ad7bc75636c2b3d51edced7c85ccabbd92ce3c554752787d501aa79282007569dec6e28392522883137f783088ab26bad1d7232633a1bfefb9907ac848d6aa548dcf7ea3e9243d6853a3f605ad37a770eed6829e5212e29380d8f42226d938a3b13f0d91863ce9194ca0a1783388b4b102502c01834fe8dd20d85e85420ef650d42db3e5ec20b50ebad3556388435a749f87866b00f8b12641e12448a4cb8693401ad73db433bd79a8aebbec67c46836ebc95e8ca45449a68508cff2d6341230302fd5c50e58ca614a82b2045b4089ea87434f27e4bd8f49a89498ab521af26eab698e02f55b36cf4c89608e0208747837ab67db7d24f6722da811988604f3531192a0a3ce7c0c99a684cd8aff3dbd18bd53d2f9c445fb0d53bc6686e9d6049cdb21cb63caaf6fac0760617ea1bd4f4c9194f53dce55b57d761ef480f20576f860f1353be015789497eea029ff216d138c80c008687b4bf8ed111625b82e0beaf94f3c35c92092c8134a27d56380d210c7435875104d812b89239a10c39bda5189f4df9b9a618ec46c8641921bb9aefa6c6a644679d4070c155714766b83a833609c0d0a1a509c25ff7c32ff2c204154ed608ad9152c31a2fc818217d071a21ed07e4040100d0ffcdd52e59124296ebbd049183e41a1eb9ecc516ca1e7fba3e2b44553c0cab712cf9f8648e81e367cc9ff85a19eb8aa63c16a93c77bbaeb2a421b7797d84e9566c6e550bc623fd9d4ccd4eaa25706d9b5dd13eba96ea19416ec10e91bd9711c902aa237824b3af34e9a5166d1be81611cb573e7b2b7371103c3f44606f10559bcefb3dc66258dea7ebfbbe9cc2e404f648252df6df1f2ae5a94a3a0a2269afce148aa4587eb9adc148328c7abaa38c73114b8aa64aa93a62f658486c3f2114801106b9a9a607f3f7976b5ffa801890b5de93d704a9f3665b257f6b9bb8efe04e819c3ee8f7a95e5cd00e9ef7ad34f077cdcf136041f770a7cccfbffcead9b4ef15e60b69d784b0cb87dd321c6ee474210b7f4f04e00594710648b2e28622b33e03df568841bb7aac18382db08328ebfec07cf25c63590de7bfa8384cf090b235243b7acdc17738291ccf315fc62de34dd1362b13851ec482d2aec1e32c20c20dce2047e3b44350e56105867c53963627ea4bdd0f70f9f3b58af1131738180df7774ce40e2f5e1edc031e1c1c98be54fc7162d6ba1128d1d2fbb2b774b5af354fc224f11c59bd3a3fd735ee2d6cdae621da965d1ef42acfadd6f3f2d2dd929e20e530e460de6f77d31a2b8eb5319995ff73d71d7f761d0d7644564763f8eab150550a6f72723559393d1c9e86474322a7930e0bb4ce95e4868686855e4ad44d18264820b5113972998607632c82666e742e4aeee24438ad9d94e46a62377b5be15118882a35506866230822a0c1dad3220044f248561188634432ea6e049c941522a6734bb8ed5a572c0f0a35932961e755a29a259924aa5c2265a7830a1130cbc8df41ef4de444add94baae7b100324cd10aa0b9d60ba819422d306d3b7c0c1112f98904695aa540abb9c50c5f21ecc01c579f0c612ca5338299be9575025f24f2a55cbb6d512595285291faa27fd18a66eba9028a4c283f93e64e21e0cc812b26c39a02821a56e4c2c12552a752dd405c89750971269a0f2218652bc4533d479efe114485b0d9457c361ee4285503493b0921aaff0711a47d0c85ddfab48e6f7a4efbcaea6c9c7847bcd6ab582d3911392539037f3446762e230ef6d0e059c027e111e0991d4f897c3f34ea7962d0794516499fec41adf4bb56c260f9898b82b2432512d5b181422f160c227b17c14c129e338be0d9c623b792f9ebc13cb88e981534e4226efe3c238b2803c61e139fc3b3a21e114e5f4849391f779a71998debb9f5c007e4854349258272b9ca4742cd1b4c2e90bd3934205d216169da47c394e58b843a991031a3370c114d3fb90a848031daa6b028d10cd1250095d17d339810461bc4e7ccf0753e9bda71182afa01b5329f48430fa0c4fba3059a66ff1a4c81c3bd42b486c892a262e5248e1284368e486e4520512650b834e2523a6d83a3df1ae0003146a1865d1448ba12d9059844fbe232acd10cd9049e38446a8c9180679add08b0ffcbc2fe53d580297303f51143df10ba5f8c2ef0341b07b6fe67b90f5bde781dec77a058d20e8b15e42ac8f08c9f4de033bff56be07bd99a7c2175978b61c504cdb06cdd713af202f08560041a8fbee5140e6f7125a090d79460e0bbb4f0612e9f35649485b382483c989bb3c19bea1219216434a485b4844fa628ab05841b1826205c5ca83c2c587228a28a610bbee43a19ab1438dde81de8af8a56c61d1cee88160387a61c9c7f799e327922492582a954c602b5c25214f46eeea80c90b0990b6d0c8ecdee4d574242f4cc248a38937ba54c0cb6107e1d10c0c1ecc13488f647a1f3ef1e2260459a016c8efbb550a48dbbff7ef7d788484ce5c35d1ad9af0be8f880804c1300c4351144571d50469d5c4aa092952564ddc9420f0419030816202f5a1d01733a67ab8c37ca920dc634854b8926a79a9151212d57ae921be7fdff7858f5a79140a85428def2ba80f59625864a24cd448431c5b28d6f8e1c9bf12292cfac6f7c63f8d6f721f9ff4b630d5433453236aec01fed80a8d3c98eec716912e0c72188915865998dd7f2c910b425ca852a54a952a55aa54a952a54a952a55aa54a952a54a952a55aa54a952a54a952a55aa54a952a54a95f151a81eb6952d892826d8b285bfe283fcb06724c3307cb0d5b28d28969b2b43e309fc18e0ab66540fbead649bf1a51f31fec1075b9e1c3ffc91258ee3bf007e0c9607c9d147d785157065fcd493ff8dbff22208e3c36761d99288f263e5c1d60bf9e08f1fb25ec8477df842b67a8c8f7ad48fcff228962d091e3e16960df5a431f5305a39a91f5b3da9275b3d2f7ceb575a2fbcbfd7a5705e68f98cd6fecc181ffed8b2b5b44019adfd99aa0f3f468b655bc20451a8111c4970e5513faac00ff7ef6f0c490f06d400f97de39f500fb24e1f9e7e5cd9c2219385e5bb540ff05948f2c91649a328fc15560a068be5577eb5f22c2d5b3864aeb44ea856cfe9c753cbd6a14ee018b26c3442d6ca10c9f2e94c9627a15a3de08fe098441413c6c36881246b25447dc85a79161649b23c73856553b54ae3f8da4812515cbe204170e534da9630bf2051e390994a9d7046a6b74f9288427e1f0392a004b31bfa1890842484453ff87ec0e407433f0882324535ea6e6cb96441e592859506a24089a2528160aa954ab1540f92372e5920415005058a4b166eb2e0928523ab235d58256085801e2f8ffa9df14fcf44077a5ee923c1ae0b451f602b0c125b6150d779543e2a1f15900a4805a4125209a98454422a2215918a4845a42252215121512151215121512151295129512951295129512951295109592e5448ef3f2a27f07d945a464c2f15b65e704a1fbe8f92912e15b65e4a6ffa97f08d98a6962eb57ac4607e3f769f077e533e1304c129a009866138253441511445b144229148a4293e4826e83285f4fe3b3a9222650af9825332c32fb56c3da6f860cb470ca6188309dac022520857f0c113cc0198be450f9e98a3ca698668845030822a172c7c20188661288aa24822914824172c1c1d4991d21175442e5820bbf70ff43e7cd0fb3e6c89adf0c8077a5f0b2c2249194754aa6844b1587ee599205f8260f995df6139fdcaef90a757fdd881a017963e91f4e1260ab5227ef8289c54ab0ae4a96533bdf7dfe979f83c23dfe784f9fd12a09193f719414a51077a20cd50515151118d121a219a25488872e4c184522892425151098ca238150d75a0079e3e7c09915e4224f04d204822812ddb06c15618f47abd825e272a989827a293d069c80c5da21006bd5eafd7ebf57abd5eaf571482c2a0f0096f262c158553188b8a4a605464847109a42d7432964a4ec62027491867844625de8c28c548e4cd8c239391c968058d10cd121aa12fa68c47a67c311e89e2648a132e9e7401c58ba3f1883763eb5c8c600a6986a23899e2848b275d40f1e228094e9c70f1a40b285e1cd12ca191620c9ae2641c9ae2840b285f8c41e3134ec6209a254e8a8a8a9cd02c198bc626a11466d7ad7c97ea5a247984d3e9742ab9288134fa62be2f954e21910b12c81ed387e31b9db23835114f5c7833e27f2314285e9c5e41af24ad93151e0c130fe654c4e454e4cd90ba5391cb11ba37bd5e2e4c2049ef27264820bb12f83346af242f255b3c213a31f1666c21d1c98937633b3131bff72d9e0c51e1e5e86abe3f9db6c0c117e6f7a790e864f40affd4b275ab964ddbba5792d311aa0124120ae5a5502814ea5fa495b04496be0f552af1c8f7a107cc95d69744e85b61a550241209f50afa5e4221e90351a823d3e508644f572a85a552382485297ed87a05bd58582aa32fa62bfdca91bb6e5648c8ee6da7221f78c0ec8aba4f3503b36b2d413583ce533e422a5a21d1ca91c34aab2d485f82d9bd892c2aeac13a89456f23894a2f52e1c1885f6a85443e6a98a517bf24aa9abce954f4156989a2e8328e521e2a0be28f2e46207b481f9a6268925e6cd10ca16478088e451e8c1896c0143b93918ec8472344faff5a3946c270c950f8b14c1d8944ea4a4f23142ea11922b142d63876a014137cdb498a297660d82a9d9cb84b01a4f84dcceebf2fd2021ffc300c411651890ba4f8126261e9bef44af212229fc4225b3623af24afa0d7132fa157922f470c186249f5a5d66a0b122c025f49460fbc82669072845593d5939593159497d04a8b1517ab2e564d5e49a62051bf9a027c5791226009ea6ca307cc19424766385ae9ded682c50c414226f831583560b0fc8b498d6f23452083147781ab264126f8ab079033d86a3cb18d484cf0c72635a0cce004922794484145164d9abc845e498688981419cd2005d5051c3431dff42d6c6005d3eb8c74375e89f4259a2115c90283d4ca81c142aac0ae5b32e4cd94569ec45a2995be4bdd9468846894b8293ecd5089e5df4842953cd2ca8b94aef522e5cb3196c6a31729b61a37a2f89d009e98dfc474317d8b1e50618e1dcac508644fe943138623deccbf4c310243903723b63cf05face0cd885fc080c4c88b146f4544a27e4544dac621137c6711ea4a1e89c508c68f475f8e194d68d4306de3910d156482305a0260e22ef04da66769d96a902d1b0d72654613db8c283fc55de0b3083d383ea965abe1b56c345a36d2bb969009beb01899e0af1c408e593c1513fcd38b14137c13cb26000f98e08f5978252d462e4c10f4c204bb00bd1af0c7b148cb49344b3a3702c3262608821df802208140aa52af52a954a957a952af22552a12f952a2ea421824f90a22fff5040983d5b3a26251a960a81e064992301e46cbf612ca0183e54b5f0e19cfd222912a19303e060c9614090c2283564141af24af24af24af24a0ca2331610b1e40d9a20b2d4830954aa548a0984a81a64fa94254ea532caf0241d5d30881aae7e153a59e85d5b3f2ae82a152a59e45f52c443e182a9045c5925ad948e08aea554faac0a75942b3846609cd12900bdff77d2b61f81ecd9215cf3b792b2acf3bfd0aea573c6f8566a8e82bf28a52aca222ef6996d02ca15942b3242c12b1d8a2074ab6e04194f0fbbe4f159250a80fc354f829d409954aa152ff4af1f0a14e8f5a41a150af4aa55ed5b2bd846caa15965f51a95a2b2dd4a350af24af24af24af2442a40d8ce2472344a384860a1a211a253452d00cb14ae2a9683cb55a36232412cd121ae49116509f48123ff1133f929122a457d08bf47a05bd5e241269074f307198bec50e8cba2801e9bba0e28b144a8607e3a42d48efc715d3468de338a25a6a18944aa146d5a9b541d3d422bd92d0204b4242e6f8122a7da597d0e925c4f2de7b2d1be94d632b68547de949967f31a5962dc7114b0b1564aeac902ad3064d12ca34b6d430c8249dc037993ef0bfee95e495e4954428e5894a8e4c12e8d10c752c1b892a79adcf0b3d8f66c84433647e6f64de60fa163a40b2c50e986cb18323de163a9062d260fa163a70e27d9742c9d8420d8b4e2712e93f53eba35942b3840b30ba579397902983c80c7f144f4f1452e1cd8c2f8a3284c413cbf4a7128b143af195baae7b05bd9ee84ab6971429560fea9730bb92aa334ba0f8a9d2a794a454af24aad4a33a54ea5f42a6f85dd7427562d7f5a41ef5a2281a295222955e52983692f74b98a2972a9544960d34497ffad7132f2526a9947a099d6ca596ed2564927e7bdf97be542abd8d047ee92b954a25ef7dc0824a7dc7b2bdd87af9d0891fa2f8af206fe6f4a57f3dd1d1885f12c597d04bc83cbdc924b67ac4f74e62e9619c4a3158fec128a5a22895445413734ca152e283668a258a5ee9c5948f4e7cd477a437b14e204bc6fb2bc883219da030c3a390893743be0caa284e5084df75a6b7e5c811c5f45ab69429f5b6d7f7a498e3c8145b24db064fdf75a7ef3cf1bb8ef4a22a0a330cff45024133f5aab7e58062a25a2b1990eacbd8600e28262985024560a656524136951433fc57928e06d57a8dff0a1ac7979079124da2288ae29ba65792ce06a9141b77c38f67bf6958efe9ee31b87f48987172fce125cf9ae27099453fa7ee15aba9fef2d7f431cfd51adf1e27916a980f20384084984468b6446130d4ddaf9327ec8ec3e7f37e8c5e9607d7f2ac29dba28f71b9fd3c296dcd36b8c56d108f55bdded84c6331ee575cfb7914ef13e380f0dae2ee0dc528de57c52c8bf7da661b9d13fbc060b1d989874031bab6b90665efcffa937b40f1cd10285e85e881a6eaf55971dcbde6a4e9e6eeb999c9643aa178eff486df88c7b51d93c974da2bf6b971f79b93a52a984ca653a9d3da7e5a36994ca7181bdaa5f78a7db00d544ddb990d7d66d4b5a6f76623a765a9cf8cdab001d3b8bd6b3048e8dab92f4ea7a8117fcb5bb7362693e9b4c36696bd297bceacce68f9cd077257b9773cee0e8493a4201c168b01c9c1d111723344ecc6872924674727168395b2d83e5b76eb359fb2cffb518ca2f7370dabbe3ffbd6f6ebf5e2dbe754f5b6ba7d9dd6769eb5a6ffb8b6d1b5cdb4c7b7bb7e06e2c2c576cc85c32d6e89c4702494bbcbe0a4180577379d14af707792932207dc5d26fb35a79ac53e8f792e9bb7febd62966dcfd73e2f93fd9adedae95a73be8cc15fc3aef1a4b71abe76a6b51f98d7ea5d59bcd7f43566af7a62f4ff01465220a2801158ec9363f84c7d58dc9e1808c76e2710ba629c6e352eb3e8add59845d55cd398adeddc3d311adb67ca6e8dd9d84f4cbd2d9afaa4e89ac680ee2d86bb9d4031bc2f8a6b6f27900d6d0387eb7602c562ba55db5b7bee15df7237c8d5eb6577300f7b6b369a2d67a96ac3860d396cb06106bdc1c60d1cd7861c379c38a037dc80830e1b700e17de97dd7ad66a1b7ab7b9e7c4b5d3c64e796c641ef69ea58ddc4ed98b9bd9c0b75cb30183e1d29a66736db737b6b1aa5edc66330ed76a17be5d960683e15bbad79605ad70f767338de5496f9fd767420a2378270f08778f39090ec0f7e5497d2e6ed5ebf332bc6620b2bfbfe697c5c0e02efbb3b630d89ad38dcb913d8a55f59eddcc8647e27b6df3f93af0f815abb14dc36a0c55f367c512078710bbd81a7d1d74f8189815abe5c9ea062ce0c6bb682ad6af830ebf6b3c29ae959807c549b8bb114e7a3cb8664b8ce6d506c6ec9ed9d06b4ef78955359f366ee01c709c37e480e365c38d1c3768385e280e3a501c39dcb8e1ea98dda063a6e3060ef4bc01e77003878d73eb96b551801d1c1b338869f33b1e084d1f866235bd347d4b3a5a9cec8e7ca72a4ebf6c5fd90c273b197787e164570277f5fae41b66dd3de51e6ea0b321bb1a777fc1c94ebbbb0c27bb98bb0e40185d5316eb35d56c89e69b8d13fbc4bc4e617ec5eaef783c7b546d734d7f8cbb9bdc3dd4dd6938d9819a2df78d26ba7be79eb39965f1aff751bcb2edc6ecaf39dd77aff88655dc2dfd9d5e763fcf9aee7d6f6ca6fdf5447787c14907727716275d89bbff6495c6629ffcb99d9e17774fcd9627f689fd5cd6c6c96a1b6756d56b23c75e7696aaee1e7ea0bb7b3b20e181094ce0c3f442132b62503083224184c0821d1a0e7060024abd81612941c793183fa5520b434f00a23a418549472b0603379ec4706140f9e1740f33ec600b624203a51d9088c0c5e84d8e1c31fd2319e18bb16ba26b024950f74dacb4287d39461aa514aba6ab4929b184f7a5d611ef3b96d7a0506f229dc03fa5589ef73c78200b09f8a8ef584a98bef34ca9e7c1ab41b18c1c31b19ad8a1e6fb130b495057f37d133bd480e0a77ee743fdc8f29a91954afd69fca0aee684048504f5a9ef584a9cbe3b7df74a8c4fbef4f026660fa9d5819cf762ab03b9ef7728057dcde94b2c24a92ed53ad242a2c412df9f5a473e24415f93fa2f550479e4c8912335dfa7584a2cf1fdd83af2bd17446ae77bcf3bb182ba9ad39b58415d8de94716922676a8397d505733fee8b1529fba790902fcd417f13dea4b2c2426228cd4a45a4abc12a75762fcce6bc4ef6a565c9044bc0ba6d8eae940cefb0ee4c007ff7b09027cef77be20de975841c0f75490ef3f4fc4820609b25634d831ae5ee082150c48af277cb065e4eb7e18dd6311f93cef3df041100441f0bbaeeb7a3a5be94944c622b6ee0960447cb0888ff7e1fe3e7cf179f8c22f2c4200236689d402593d618b4811d3d4ea11c3075b9fcdfb8ec4ea2981e0f77de0078220f87d2cd577a91f545ff7a10746efbaeef358443e93f4e3687ac7f9d80dbed8f2f15efc106411a161f678adfd992291223e7466c9d4b281dfb588143149ad1e5164b5887c668fbf1b2975de0ac6d297a3489125bcff7e89eec12f72451124415f13ee983efc254a7f7a6f1569e26bc2569125c43fb582bee67b536b89522be86b9610bb0f5bdffb2f2176ebd80579414882c0d615447668e20a223b983ddfbb37214235d208d1280969846896d00c855ab0c2269f90bbba77e2c174ef7244761f3ef97284459d11946e2503f2f3586116fe42df158890c5108accf05f412f93c9739228969ef47a427417df4dacd00a0fa6f348620bf46040d02864852e45f0202fc6bd9403ca97a37bf7bc15864a9e80818ca396a32948a48f0ab2333ff14889a8a4c89d845f510b9471645231bda2a3294e4e94b454471d206da41371c889e9a98a607a27274a7c6879c26a03a622e3932fa62341d71185a2e7815e4b0dc1ef523d3e13740f6686d1c9136f060f669c81771a18b930bbefa2985d93195653ac949c86543974e870c2831892c252680a81c250a563b5011d3b80483e45f4292e5a21161589454e565a367f42a9443a71273a768462492cfa62bc8ea8138bbe12f8a158641e117964140e903386c4771f73f800c50754ebd47227a5968d8613b115b66c3584a074ded79a315412323d9952a9542aa118d00d8168080fa8c2108ea83a4fe84b26195d0c962030dee64f48b26423639460b4b4842d614bd86a61a13c52a82864b9a9b6500fe67b1b4985f93131bfda141e519137e3dea130407a61249252372d2d945051d017e3fdcb417a30442b902c6f2b4909bf08c3965618b674acd10a1ecc374ef1603eff564629422d4f5a5d80043d1816171a2cff4e2409a395bae96ca5182c9265236d347e9472d3f263eac60b432ff4428f145339a4b7a9157061f91713e2e0c17c1020a57833de7f8f3a125a610a0a092a0825048a3f486ff3bea525bed7b9e7e04af8238d7799d1d170791abfe3f23468bc8bcbbbb48ab89042e690c3bc2f878b2aa5fa140d97a7d14245cb9037d322450b9137f3c27fe214329a38cc7b710a29e4cdb0fcf7a4126fa6e5bf27874829a298c2fc462953cc2f7c97b0f512048d77f91d1aefe2f23476564fe369b48ad0f855d8e23571d737be6d94627ecfc2228558a41272480a0fe6eb5c582fded360bd04e1b5765c7ef53b2f4fe35f9ec6935c58346440626199c10adf532c2d2d2d2d2c9bf7a487211a313d1843bed611e114777defc2128fb814728814f260be77a1026973293652c87bb2e4f236d224fd7b61390d1696b7b914182d0fe363b048a99b183f7ead20972a90e1b39048dfd2d2c29211b2607c8b0c184f82f13c7c3160b0b0b44ab630c809a2cf09a251860bd4d210d03d0f5c0941282d5e8d20ef7c250513a8573d13a95f7925ae28bd12a857bd98fa951751affa1dd4ab5a3ba95f69f91723961ef46458800c997ca5960d348de3e85205f2f4de974a25f04d2c23668904be08a658ac27e0cb11d15671ab299acc7802ce2802ddcbb1caf1f2fee40b0be5c5ac64b8d702a52544cd603122d97c0a8b118b118b118b118bd10865460b9416282d5eb41cb5446979428b9496291eeb73272fb697263d264076a91bd6878f504c5ba9ebdce589ac5a91e77d4b36438b194e4c10156fc8b1651b57ff42a35bbdfcea775e7eb5fa17185e1e86d09321e385b77d66cbfb8c6f5981355e86172dbc19f05f8c5e5e9a78332e307e75c4623403fc1925986134230b6fe6f420942298e014f15fde488d27b65e8258fdcbefacfea5c6af5a3bab7ff9975611197ed5325223c2785b0b94186ff329338a66946086910703fe8935230b0f06fc3a301504498d97e1c7951443561fc30f79791894b862478687e195a8d17a113f865f7d0caf840cad97af15440cbffa17b1b513436bf5b2f32f0f43cbf4a61144d16089ef29d4f77de29b3e7572f39432c93eb41b8bdc05fe0b6bfc2c40b2fc58e430a32fc7cb8326219ff1c2278ee3f8e0474adda4825caa408a9e675a79d47f2c23a6b762428d504ceeadd89230bd154bf52fb06c9f39a325320989cc16d68ca2194545ab2298e0b394c4200f86a56289478e78302092202c3c067c28a088228a29a6f05a5e02f0bb23dedbc420d48a88b4f994b09b51f462e430d1e43946285f0cf8e108e5cbb1d2b2954628291a35a06021b65e8c2440da7c0a5091206fe603bf7bc29b11df45168a25633585cd69ac2a40aefee56dfb85f562f4c580bf62f917f3d2c4047f75e42e25e0db6640f1663c2f8ebc9928de8cf7046f46ca38c59b29bdcd6b955a1e8c7b5e6281ee5d07ae88620b65a29e4b7999e1bd10848486dc16167d2b0f0583150a8d7e934af938bd08ba9fc618bfc312eec06885425fcc8a98ba49b588745d70a902e97df81dcb96c414b0035946cc4e85fa15962d871313353e8a65025b45a19107e33d2915165181f45e2cd9c8928cd5166418d4b54adfd18a679a4216ad800cf2669e20854825aaa223de4cc9484df7e3f8282335a4962d07948f25767f6ad954225015b9cb33b56ca3d078644432068d4f78301e05c8f104e514250c9af279a552e93f5668c4fcc6d183c8a2908b714534a4e603103e0441c9306dee84b4b993aefb5651ac86c88e54e48d2552eb250893a974fa53ab88a965a466150212fccf5b4580b4b913182240da7e48cd07207c08e2851f7de00c8883e991bc100ba3870a8956a8b8ca63f2c48bb75a45aef02f527a53cb96c3f4a76e0564e94d2b53be1c5ee3bd0ac90ad1498ac90aa629a62fa874442ddbca14a6f73690ca0a91bb3c9314931493154c534ca1108b345d450466600cbfeb3cd5f77d200882611886a17874b4b26265c50f32bef7217e46cc2efcef7d841f2907ab2a5655acaa5855b1aa6255c5aa8a5515ab2a5655acaab8e28a0fac3c00822bdc93b1aa0029ae3a9278e4ae4f1583090138a6af0f30d84e4ddf5aa6ad383dc0603b2c4657ac7f0c71f2078cbbbbf9a384bb3f2610478e71b85b5b73806802930131e4eee7ebfb630231640684f3b02d6ec5ae35af354efea001f2879abb9743b099cd36b2e7595355bd677ab3cfcb6e20fc4309eb8bd913a33f5955716d870048200051897f369e9d18a76f77ddc14902ecdcf2a96f0d4dcfb4d5c9e11f78e4700f0fdcaa77881cfe61c78987c061a6c5683e719ac0b90147003ef0c007277cc0e558ec13837d52bdbe4e1f063b757a83c1721ac369d96b55bd27cccb62746072640f53d57bc636d6b1f59eb2a701c974643a3f80c73a3eaaf828f2a1ba7b79d9f63c598caeedeb1cee99b5badd390b611f13f135d450430d25504ac32c4e6ff66e9dc33d7f55f5fa60e991458f11f4c800d90301ee0e00277b18a0070d556d697f53cc6e22be4457fc5b639e14fd1bef2a634e8ce613e6f14ed99fbff1aedae659b1fa321bd9cfcb626c4a1946f329cbe8ef36a3f9fcc13c9cbc79e25ee22eaebda661aff8b66636f559f1e7d4d90d6b6dce30113c17373a7923c58d921b06e0dcc68e07802ce6064c8eec5d3c763c004af2c607554d7fb879ac43f6c004f79dde7ad87bc32ceeb93f6eb0beb52058df1a8ec7ce8e130fa1cf1497f7ddb787bb2faa597c6bf59a4fcde273cdab0d0d0bd17bc5e999d268adbeec0d0cb683048e1b501e3ada1d271e02091b703c8d8ed608208caeee2eb079826bb6bc51de50e27065da9abab07a4f7d7fdf20b773088f1c186c26071c3ee8686b90a0d115d73ca0066622c19138c2ec802924737f4cf3089374248ee059d3dcc5bd11479431b2db39045db18eac5df1a66598f5b2f8e735c63d7878010f2a0f34bc94c508791914074686d976fbdcdaaf2dad456964aa7a6d647fd776871bec0054ea5bdb01b6c3894716f7d97ca6fbdef26eef8a67280f04f0d861dbfc79f350e990021d502f779b1f65f3cba8b816fd9beef465569e35bde5d521067247127648b1d53606af6c9ec1fc4ef5ce6a2251c3c91d3c68a22071844c0f38461c91f3ebfb731fbd3593c60777a771f752052d276151b8bb104ec27aa8edf4f670f2c503f225c50b081d5670248e78191919208c6eb5d529aab6d987933a18a00307bdd31baeed74cde99a9ae54e1fc56c5e73ed47b7fad6727c91830a248ef8adf369c411a5d6adc6e58de2ad714b04b3980832c71239761c89231edff2b9dbfb43cb3733334f985932639343157220ca0108248ef8ccf33975766799c5bd4e57ecc3e2bdde95c53e99e77f7c89e29c3a4bb5cebacd2ce6592f1ab3db8c6fe9cefbd18b599812a33955b739f5c12ceecfabe23e871770c8020e44ee8ec411798de19ebb655fdb69cfdd39f4a2eb25715071d8e18ec41132357d6b6fc411b8cbaef7965ef5d4c16145de10c51d89231e4ddf88234a145f21372cf1e2e40de70d2a1c468ec411e7fd979141d39731e28872cdb816cff2967919f6b2f8861fd7f6ed775e35ce288b53b6b651ec93e213b3587f8ec52d911b1247ad44f1c62c4e9de9e0248e77bffba29f711ab36c3e1f9beebec3c91b507cb3d8674d65b21b41babd39f46256bdbfd31b36b09996d2d2bd6234fdf58a4ede78c1dd8970d28626ee4ecb9fbb3f9f57998bd9b57d7d7f6c50ddcb8df18dcdfba63b45d38b43591b6cb001c59dc5345a3b3b2f4e3f2d7fcf79d5bf1a776b2c0eb2a61fc3b3a6bbcd6c89cb14e671ab759a318b6b3b368a64650c8a6b5b63160784d392a7c430419cb4512ad7fca84e7f3e17a3aa17e6f38a6b3be59335bdb1786354d34096435ee273c52ca6953cb8b358b7afaae9d68fd98b678fe29dd7f59e3d6756d7f6716da7a4e1e88a75fa3afd1cd205c57dc578f6d8e7d65eefb89878c9e2ada634d2852b75cf7a6f9ff37e7d6bcfe2f527ff0f275d34d25bd379d7cef5baa4947bc55a0606250f1e30180f9dd3797d7f67c70ea05cc363070f1e31303b6ee790db39848789e38696071028de01946bb6c6e84e6f291044d400821a64a5dee9e7fde87af3eed166cc49c6b8c8181960b8f052ffd6785f55f6ae12a3cfb3a678f63aa565165ddbdb2dab6ade4138490313569ca42108342441d2c0d2008300b41000060400847b89f5ad9d6c8bfb61334426b7dea7a52fe3c23bdf30ebd218d5698f4ed9df17cf3e776f6a7a69f9716da7b298ecd94cabf1b479c59ff7e3da9741d9fbc3661a2dfffd9527c52cf6c9fa716db39846068005013803006486293358608608ccc0033903caddcbf469f96bc0b7ac6ba05973bab19a53517d7f7235ecbcd6a0d39adad2f49b0fbbd9c9015262f4ded69cd79ebbd736dfeedfda5b0a746fb8b6b5c66aba66fc7aa7b357d5f4e76540f726fb35df3e032973aa7a73ea9a9fcd9f53f1c62a7abe8c47df643fcfb3a63bd51987d1d7e9ff6a962f836219f5de078003dc5dc74900c04800acc856085a4bc8160eac2190ac03b06eb0c0b7c2dd779cfc213d38f932cacf5d5cde6b0a7395b9fbe34b8c6917b73f77d6f60def74c5ae12c70d28ce69ca7ebdcfe215f3d0f29b0f93e5d89b9e290daf78267b57097363882c26a62c615e66af98bd4160700c913d9e9d292eb75f555322bed41b08ef35f7f030d9d61895bdabfc6133045defcf65515ac6ddb3b6f5fd15f7dcadaa5706c56bdbd6f6a368ea93599c4e5f634cdbe92d556f78a7b118c634d9d3f2b3799fd8e7655a86d18ba6fa31ee51e6adde33ab7ae35bd6bfd98cc32ade216b60e1ee394ed6b091358a7077214ed6287989d9546354a77896b2a79eb5fa732afec9fbcfaccade556accb3dedab95ef6f260f675fb395a8a79d6ac7e5ecf74b317f7974d5b225888bb037152062848198048198048197e70f7219c8ce10a5e627576758aae2fc3b3a66a7b691885c962b3dcbdc9de55ee9c85fc78982ccbde55c6ac3f79ed595b1c3ecfbba65b63f4ef5ef189d9df3adffe87cd1018dad53aaa7a6dd0340fc16255bd36427852dd02e1d865db7b59ad63e72cd3d63486d3317cbb2c8d27d5b99daae916a287db39c4e6760e09027473d9d6bc6c6b621d36efabaad9c6d4f85caf7a6b326dc5c1ddeed6f896ee04b9e1ad733a3dee6e4bdd79643477c7a8bb9f3377ef4e4eaebaf01928e0ee5d0c27572c98a53ae4291c21024d70f78f49063c1024860a9ce470f76e0708189123e48405b270f7ae014ea811c3863b3ee0ee1e10373b24a1013434200beefeb53ce04914263094850edc5da48004a6745dc0aaf0e0ee1d12ae0045912f2670841cee0e5640468aa256031b11dcbdeb628623064738808810dc3d366b6b319dc33fac39d51aebb8fbbb7b5dac68b8fbcee8ed5133ce356b6b2ecc83a6eccc86b6a12f7b65eeb49cd99d55fdb9ab62f662f6775e6d401bb006dce1a00e076d802c772780932e3067aa6a77a70161af0f098fc7dd33f683d72e07ef7ab8fb10275ff0c1dd75b0ec8decd7adb61a0bc9e1ee3339b83b0e44ee7e83bbe370f71bee6e83bbdb78e10bf205292e7797410dc0dd6b7018f2052bc8178804e0ee0128b9fb0c369436dc286fb84eeca3aaf7a66ddc8043c7895f33f4f5c231739ef886eb96cf72d6d676ca9363b74e7930eb382c77f761860c1cc760b0db098462349feb4d0f687a8360dca3d41a97eef3e26e698e96aab8dbc53fbfdbd9cbc864f951acefec71b776f6f737e6c11995c93a5fbe0c97eebc3f6bf5bec6a98ac3dd67718a6bba7dfcf3f85c53bd339097c9644f133380a76171fa03e31e5fc30fe031a6c5d69c6a98d7e171e98e6dacd2c4e0d20d73aaf78ce9f0bfb1cae61e6fc3c66336af3ca9ccd62d2b93c9be7c5cdb3c6b8ab6eab9a69f9bbd4c0c2edd9fd7afedf407e69348b52ba7b2574d6f6bcbbaf69a59dacbd47b63db53bde7555b1eccae78cdb874ff555fa7bf6fedee59febc5f86312da6de35a5c91ed7b68a4bb7dade5ea72f933d9bea9c679ff7b770e97ef5b69b4d7d5a8f778bbbe5f3f37e2d532fc6e5c85215b753b5bd3dc6b4371f8ae7668f3fefdfb81bdefb3a0dee9e0fdcdde624a905eeee8ee3248b15ee5e9ea95e537603e5668f67bfde73af3765af8f5ed3bbd76ca3aad706d5596ff68a757ee06ee7905b736bd4f4f6d01a9f67ab53ea1f3643d6f479d6f49659daa3f875fa417ed80c7916d736ae11f125c62cedb13abb6a7a7dee6f20bcded7589db519fdac55f34b990c65f389d967b10f7e3dbbb5ab4cf637f57914aff796c3b5fd6abad7f671f7a6d3dcddfa35e641dbd9ff03dddba318c5f804c2677abb6b0ed56a66f79acff6d4abf9e58a7d529ebfbfa67bc5faf1ec737a7feeebf4319b3e6ed9fd3a7d35e7d9ca93eacfed94cd298b73d578d2dadf4757acf18af53d7f4d1fc53e2cd6987d9d7e6671124f83d7fcfbfe9af2e0d96bf5ded8bc3e9b69a5bee19d7e0e37e490c3ccafb7b69fc5fb6296e7f3fa3f99e5798d6fadd6f731115fca72642febc9915dddde1eb3b98dbb69bcef99fe8a6bfb65d4db12c18fd9fb1a9f29baa69f7f36ce97bbcdbff555b766531abade97c9279e6194cdbfa6ef5af3fab8b6f336509ccbde20cf62dce3353f9e7d4e5df3aff7fc8df7e5c12c0fcfc5f952ab785d6fedfc35d5edbe5be7d115ebe49d35e549d99cdb3904bd3540185d7172d05bb3d35b0a048b7d728870f7d249d413ee9f9b3d8a757bcf97c17ddedfc3dd63dcbd1090ee9f0f0efee156ee5f0f17f7ef068572f787fdb019e20af2c366c8f3aca9d6f8cc6c10770f80bb57048962224f83e29a6e71bf756b7b7d7f1eff0f5eff3e4d2e77fd0c640b2ff3ca8373d9f6ca80063260e2beb6ec7e991c6490ca7656756c64379dfaa4288bd1aeb482173f314ea7e7c4403b3d27aed9b0ec4d4fce0deeb23f31880177d99fcfdb46df201ae31eab1042eed609424d6f8f1f3b3a36ecce8a7bee0ed62c467328069243af107bc53a260c5c2fb0c2d73617c31b5db176c10284c06caba6b707ba621d14637576572170760692dbb8db0d1662a3d15ba39381e8fc642074cf9981d0d91bffc03dd0b5cd3d7606d2736620b01662c5b99d403174c5ba89019a0c79d8d6186d89e19dd715f8b83fecb25934c15d36e4308303bda1c3860e8ce3621c700e680e1c341d37d880832b8b9a2c6650c11154e0857732505181cc5db325eede3ab01b7950ba7b1244dc2de005164029e8c2cb156f20fc19489193ee4757048bfbcfcdbe9b80f7753e70770338890511dc5db3e589d1bc46410aee42f0c2dd8b70d24808aed97286e294dd38e0286d70cd50174ed9ed2e014f8191114d1c8082262dc002c53f9965f3ccdd59b0822c54e09e022c3cd3561c143581fce01f0ce40427e8c1bf8b81110ad4bbd313fbac8fbbb758d973de994cf67aedf1e53e31cb668d840ce8fe9019816739b5dcfa02f1a54c6ea76b7bbbe5134646ffe01e39efec0c449b288e9981a07867201e85ee34c5ab109280a4d9125d71cf79676b5a3befcd85f7ddda86c63ee94e6f298b73f7d0c91114610446ee00f87dff07af3c6b7a61408311c4e0227881fb8eaa5e9b52dbe4d6fb23e79d3b6b750ea7a2f9e623008117eeeebea4a88a22a187699ceef419e04f38058a64b86f20ecba6c7b4340c59dc5522fd67f85b4e6a7b4d8c61a5df32c963b37d637b657bcd73436c40fb8fb036376a7c605822a1eb6e28781e08be9abaa37a66f2c56dbe9cfed1cc2e36576b0b987aa5e1bf5dac0602734cd43c06030582cb662144d6bb1147763380d83d154ac79c0603cce549db541703833efc06033bcbe7fd9d6dc71d9f6f28879191c37b430280e901e36ff6cbcaef707a3d906cf72f7877a6f77dd9887bd9bcdb6cb6236afe92d86f765cfd89aded035ed8965da8ac3e29e33abb7730801766ac3b7bbc6b0daa2f9c68387aa5e1b744d7fc0b8dc8ef9a43c1ae8ded89ca2696ce39e33dd5be75b6cdf18d0bdc580ee4d634cbb9d406b4e71769c78081c3e3b6ee71018ec061f94c80d5dd35bb3b9b56b2c16d30014540342a50686b897ad066c3033f0e4de0c0cb179765db9ab66604889e20c94dc1dc7b3a66a5afb79730a26ae773a4b6b99c54d81db99c206f712cda96906427444e402229caf2dfb79a73f3a7d1ef6aa3fcbea4c13f1e049a41908069ce0eebeb6acceb556b3f70727049acfbb6f0f18200203aa0b04e102585c20bd004e896ff9d432a8b971e9be408b055a50ca72ed47f6b9990cc634199909746fe89a671678c27df6a7056690a20b2f379e7dcc0ce6d1f53e8a7d6e2de6c2ec48d123858c0ae4a00245dc4b2d937dde326db3a63f649fa26baec99d36b272cd8f7d2e564bdc0349812d50800243dccbdcfdc92b8b7950fcfb9a25665b1e9eb4c6b3a6ebdab23ad53baf308fd19402efa5fe18984fd518bae6591a8b4551e41e8590eb28703baf510c717721a2b0c1a3a081d31b8b830c4d71d7e990938d733de0fc1013df174dd1f59e3b4346dc57b5f559717ebd5a881fbc0e9d8e707202209800ea5eca767aa62a0e083f9abbb7cc33bb3f4a7c6bf5bde5d609884b4ae0b8bcf52fc9599203298127ee3216d736dbd2709945253023955051c2c4dd4b594e557beeed6f3c2d9b5fae9927b3b867f1d697c6e29facbe59d6ce8bd34a6c9494c8085021dbe9b378d3f0ed964fcc7eeede309b69678b62b68d800e774d838c0e04ae8000072080422006145940610228582874802225f4849c87c9ca7b93bdeb73eaed1c52e2eeed6132d9bb601af7dcfdc36688ec5d5ac8092155680877a739f900292e2befbe3dc85a36fdc1abec5d42f27e54cd1ba5e5075ce001390f607929b391bdd617b7db6c43973f6c866821b9ab6221fbc6f68a51ac5b1e357d7da8e95b4b7224892cc9bbbb03a294b354bf101f7e351de064df1b9b690e282a1d10d493ff87cd1007c8dc013e78e900bc833c11e5d63c5183f21fbd35280e0c76621f180cdd3a86d33c6b8a62ddc662280e9ac69ea05136c0897ba96f036aba013a18400477d7290388dc81e024521df3c9b818d0bdf9b0736663b1bb6f0fe8c53ea017d7623806c43831c59d30f2d689a0f287cd90bde25bfe0183edfce435688b201404c582620c61013758c0120bc069c20a4d10a12c651beb188b5574bdb5c7b135cb1ef7dc0d830981a6307f63cd698c2ce6c64cb6b1ce9a2383f9bd6216d7561c199a531607b9b5b7744d7fc872b39fcd6a58df1a2e89f4cf74bd389c67310ec53dd9674df12ddd3c6b5ad3d70755bd363c6bda04907bcbd3840e5f33be65dd44c99980623241e43f98c644900c8489f752c76036df603eb75e24475eeebc2261a25375070950b9359277dfb4147df389fbec370deb4e9f46e3d4c649051ca169b30260dc539d9380a3fbc36274e3dccb2480e827ab3f3b0900f292cd8f6327013c78a0383c60b09d2331188982911d186980911f233c2ce1842524b044ce122525bc70d7ae72c5aa0b681751c49aa3aaf707f03a303932994c86cda9ac2707ebf487c5b59df3a5ec860ca77f5fcbc4b06c1502b317a7889222b4227f001b1ce0010728e200a924a0248124893209564e07b905e47080ace05fc3eb5b43cb9896aaaf77faf7718bf7ddeded6fc4e8f06415264706f39bc5b593bd587f8ebd6b2acbbbcd397ccb3a3ac57955c5e7cae6d7e79a71be94b1799fb787d6ad8a7b19ac6f8dec61a5ecc6bb9e962f2ddd3abd40172808d08d1f27fcace0a7023f46fca07c8c5c55afcdeb560df22ebc6620368faeb7881fc0170193536eb555af4fda1229f7c5a52c567956ddbaeea3f876c3693bd0a62d122d4d5b6357d954d830d8ec068014522f4197402fd13be819d82e58232c102254dcd1b5a561212f83c41bf13230f4fec36a7a7897cbe52a6f78a7309d7795371e966303e75d255e736859008fd59b7199c5c9c87480ee0f190e77cff2653ab59d672f23a3f5c5b1ae350bf1ae5216a353d3b756d3b71683f99d6b3f1fc36298c7299b632caeed97bdab5cb36bcd2fc3b3a62a3ed76bc3661e26d0fdf1323bb47a7d78f49c59add9b1d734e3f02ddd5971ed07639676cb2c2d6f1d231293774b046754c6b039f5b9353cd3e90d279433d6262e88e3503168de309f619071b8dcc6ea5dd31e25bae613bfbe3f3a59877bb946f13246df1f14ac5a6795ddeddac3cd6e673f3ad77e7ee5c1bd74f70138b99634d0fda1517cbb2b909b13576f6ea7e4ed48be0571cf43dc48c76a8be2daa99fc7e74df5e8c7867a0217667135b11fbce6da8f9af30c06dbc198a5c57ef0ca6367072d07d7f6e40c845aea01424f0f5089e6dac63700a8b75d2bcb7db6ecd60fdbebfdc1b77407e0f5ba4818f1b8d603c3035b0d6c405ee6aeca629f7c75de559e6c9bf505ba496d294e0a430535b4768367093c4a7812c0b37960783eda0768341a0c63019b001f712f6f353d7c5e736cbee1dbafe9bb7afe3f45d15bbb9fbb3f3d6cfef9980c5d5bf56eddf6c0621e9e94dd42623f788dad1906fbc140d69c67330dcf1e4d51fdaeff32b753a0bfed2c777fd41b5bef1993bdeb1f26a46c1f68cda928be38ef2ab1ceef16b7a62cc66519f59ee94ed9f3775ef55ef1ade5616f0fef2ad92c93c9d0c0cad0b42592aa24da04540ad486ca385d70f69c36678cf39b8d6066c4ecbb575cd501f05f6ecda69a0616eb16bd98fdad5b02fc9731b86537cce330ee79bcd7cbde56e662f5f7dd3916fbe08fc15abd34187d6b1a5d5bdaabea8dc92e56737695b414979e65796efc325a46b338b7dedcece2308b6b734e26edf9bb599918196ed92dc33ea97a63388c7b6430af710cabb31bfbdfabac0bb226ee7ee3a4ec00321bb128312dbc94ed9c59d9eb344686cf3503817919f5a67bc55ba740f827abec0f4e99b2b8cce270f7636438eadd794786d5bbb3aaa6258a31db43766350c470b9939323c4a6c4e7ecef2a8410bd667d31db7366204e9dde569c446669318c6918b33416e3084153032cc17de646cb430781c1767600e59a98be271e0228d7a8ea3d918082440590288204cc114f8e3072441023b6401aa1859731d9acd531145f191c376a0822bb11d33746bbd65cdeafd79cfe5eefcfa3dfe6dcd69fe680328b93fd3edb9c73e5d656afb8cdb9a7e1a8ea3dcb5b6ecd688b35ee516c444716c1c5a661cd32dc93aaab10457c016c5000a002c80cf1c1102397d9bcaaa2f796d5fb32329cdab96f8d0cd736ae65ef7a5f26ef7cb9f5ad3dd9f45c531e9c1c5222c206441051c3103b18a20343c48698a1b489b181c9e9a16f0d0c0683c92e2e377badd3da0ecc973c6bdae635b3af531a4e1973f745efc6b75f5398188a650fdbeb7dfc3bafae1208e7d61fe79da96a66d55cfbb9e54dcb33219e10a215020921861062062f6360f48dc16099b6e2c0603b3f00f59eb2c73ee9be3e298b5122de55c6d4f4f078cd7957a9d18bd9779531376072de556afc821d25eefe83933b383b34bc8ced9c85c4749ac3b5bdf59a5e9d29e5e3d29ad6718202d111d26906a253cbe11e213a34dc4b9dc33d8ff74dcfacf52d7d4dc34e3feb97c13ea98af5e7f00f427242821032830c424a1056040114c48d2053dc659e96f5fec9aa6a96329dc33d1beb0419820c52e654218706396cce0f2054806400c80f2031fc7082cb58bcfee4e4f00fb287a1e9e7700f4ce39db244cc7a78974c46a673f8870d8481c85e4646cb41718680c176640fd3e8c542663dbcab4431504a83d1681acbe11e184ce7f00f30d8ce9a711835bfd418975bd397c5dcb0795759d377ebcfa9fbc46c1ac36255cdecdd30cfa2e87d4dc39ade5a0f3837cd279e619d7d621a0d6f1a580d93c33daf85a837c7e67dd1f5de76d8ccb201a7c0a8242f6eb791a0744aa199010000000063130020381c120a062442a158d3b34ee30314000782ba5c784a1cc9e22cc831658c51849001000000000088246102abe7858f13aa6409680e43c6fc32f8d01fcaeaa3a43d4be725f344a0be30474a9631c026c9b5a6b7066497366380cb36085405abd9526d90d5728547a3b3a6dd2d0da04456fe7b155cf8789720ab1c94f29bcbb3f30f31112e551a7d23fa5d0cb843a56545e725f422161a6782c7af504ffdabb0f9a7dd217a758fe95dbc9b25bb310992a26145a4127e0ce9fd7e28ca60c6640a262c4965d8bcaab35c17de6040103d93e61029831b2ab37b25ff76331a2e723ea5f30b532835b8039a3c4935d1f7fb1c571f938f2bdce0650a28d3ff20e13a7963a3e6cea99aa3438c545a22c4dd7b7609fc632fd02d3e96720dc556a66d6ae770eef4544998ba9fff622010b14c2525768f01e11a48c10c40d6c12e61198b91a3a2d3bb4eaa89370aaa430de24b26dda401023f8922331eaae55083c3872317f94bf670c57d82112b9b78cf20718ec8d13ddc8fe406caa9b3451384bb89d3c2ac07d9a42f82aff4b5ca3681c74421012ecb50fd4e2098e102b3be8c2cd268a2d8ed07689cc87ad782062e13470fc2259ab626f56338bc22841e13fde02692cfa98b0879abdd24eb36f8aab0e8e8bdb673362b60cff81053c6afbc8d6a8ee09e1c4dcf8a9fab690dd1fad3deeb86a8eade83c60d30a56ab51e6e808044d6079ac60f08b8e9079bb7ec6f6ace4f9de24729fa2829c525a736ce0384c041647d548c2dd430927b9d304676f88e48a34b18c954db87386c8f2c5f1795e083e5e736fe7eb54301e792726c9ac57e1c95c91ce9f9d7a17b2ee8e3d2bb4ba1abab03851881705ac1c9cac9d55a12423087613ca2da49d1d7a10ca0053f76a95629c40ca7150b3f74f2589e499d5169f89f37343b9b018f838efc97a1f611ccd0d097ddca0b9ff007d5d2a7aaa956271298216adf73ad3c0918fa51f6c89b9e4279ff1be525a67893178250629cf4f3468193d509550be2748b0ed37d51d03192a5e057e7d048e600d2da465b7f37d0b2dd448bbbfa5ad493ce9181eb62354e747c70dcbaa322a152500daf9a048a13ccb76a95510dcf71a0d5916cf188b1819b9560276a7ef98fed67cc2b4fe32f8afa9168394f95d07a028390c2d2695484dd33a1bf9ff20c17ae0c96e4d3a09a64d389bf0b4446af063fd513f204f460320a8b034ed4ce124967b0eab79b181c7dadc1e5559ebf0018a60db4658dbc1945fdb83c92d23d67910e0c454b6e483a68a4abf7c72277d659a8f17b43df6a4ec239ee4ce4369894f20151b0fc9baa7fe57e4e55c88d66901cbe4ae3ce1abdd6ab325b1f5cba92c79be060142e2082ac4f2ff6ad35c01c5fb701623183935929ef26ddea91d705cca1f3edaa969404b702df0ec0f23203c4f4bfa6adfb5efdd0f3b01d36722104febf7c2d448ddb1acf93a84aaf5062226d514d7f814d788c1d60445a51a1abe337624e23568dd11d5630e5a775c8547eb5c4d6031686c7ac11b973f9720967a746c02954fd65cb0147bf33936f9714de4ae11aa8a0059b173351725fa20d9b1d9e39a22c8a06c46cabedd7f2f007ba719d483344b9a2a854dce99872b77915830fd27f554bd2fb0606ee2eab62ec6ec847a188e6b1aa0169ba510969c9ec2a35f7b552428988fcc21e3e2e998c1f4c7b25a76ff14226988f8df24cf13e051aa2e608b86e0d02cb40ccfbc7d265445cb7fa80e2c4bb3aea61e78a3cefec8e92a6809f8e3a542e51be3a10bb01ba454348360c5d1e7cb2cc728d7f6ac310a15a04c1d6438a635abd2c90f88486087d471ab0168e80caa2c8cb0a3dffb344ed3b5456c5274213a50a01b780a9544ccdcad833f6ab3d85649538c87cb952a4399543df9fba3919e5700a50f86923358d3885e183cc762e4046986216e5e837c5ef52a65c2f41fab92445dc263c120ee79f62d456d43663146bef55df7b9eeb639cd7526bb4def65533649faa9408d1d3368188010f9e02876afd3ff39b9510ebb8f174b7bdb413faf3230f49116cdb44f4622a92c21babc443b72be8a78c089738bf9f332110a1e618f725f469a9c0a59f2b012e0dec87d2db99e8334b75949408d5975bfde666c83a0ca7780046bb13862b7c22f4c27d3ba3fcdb65b3e0a3c0490917389094f3cae0bdab9b89499706a956dceb18efc934c894172d85e4c313829ba3d03d05d97015b7807070ac85e26e16282da2c0e2dffaac82cc01bc46e549a0d439427d6f9900beae3ad0c8091812bf66f8e22e8ef7d55b68066b62bacf452409e022dfc1e11942cc0879781e116322674c2a908937c0ea5763ea0a71fa151db219c2a649ac03eff4071c315618d1217be71c6ece53418683a9fa9db5365f7ba03cc3b8f5d8f95717298ac76e8392f9bb7262ad7e03381e263977f39b45db7a885317bf8f3fe7e7259d9ab88ebf6751a2459418314d7301a7e66c82356bde28e86a9d28c93c325c2af810972d835c19856b54615a045555db90b9451b9d998dbb9ca87f6a3a13aeca98e4e279a660b49ccb87dd8a8d2e1fc892154034b40bf817b3f14b24f101ffb241a261913148b55e276a2f727daa40f96d281c40ae1fc4876fea6f1fbece2a7e26e97366e1effacc0fcc4e8ed4976e373f6444ef45c84c43be1cb9bb498d42caa3e40d6028413b940fe2b300371ff3f6376252627913e18908821fe8f3d5844a6cee8ca66cefee62da719304ceafab6412d08f5a73afa8312f8d996cdb103da2fd3f6f316ac63c6640575759034d6d5c084d326bafe4bb780a728c5f466bef3ac302b7c12388be625828d69be8b1a5377deeec904d52894f9f97f3dc4e290719ab2e8daa3e1af645a9044289652642784ac9be6bc5aaaf84f171727bc80f97721b48f9cdfadc1cbfc981d0fead31335b45f44d4b5688d43615e4e22ad7e3a565ce40137b9b184ed32246eafd53a5d7b342dbb48414976c4e65b5917e375442d9035714a9e3f06b86cc23fa633b64f5674f1e74ed28d9fd0d8f084de41f3280ec4baaba2e5bb3a94a0bfd274b1e269efb0235494966bb2646616386325f5e292cede87e9e75b3254d07602782652bc0c2af5d194f3d4dea64882ce873f1db2d3294c9118de813c6a68849539de92750291508b216eade8886f9461dce96fef9b92eda2640f74ec932a372da18e310ef0be0d103bdbe749e443c1fa925be21bfa821887fd0b0cd396afabc7076bd86e99935be42fe69e6ad8d13c76ce17f70470023592a857e62031de75483c9004d5ed8c948a48dbbc02baa520133450f5c961a4f650433154d149d97b309f60afe1f4e38f892a8d87356e10e3c00950bbf02f4e9db8b282782d36d06940cc3cffd0a223f8fc5c31390c174d35e34157e6d9e4d2b774f43caed608a32ec3422e0847e4e5444ecc75d762644f4bda35d7c4a65e0449d73a3798750705d8f6f0e449029dcd14a42a4ee000a7483e3f781f6d24e955f571caf11a551f2cf36b657be1abee727b1a917583eac5256e4c09794a24610c7262bcf5cacec652919f98c8c5dd449262434c086e9fa17480d058f68d41fe3d675463024be2f18bb5d083d18b0bfd5d9feeefc3b0e2922c751626f461383a2e5b1b03ee8f0cc442eac0da3faeb634d8842fe7b85718d14b7a04b1e8c587c3b98bb80f354f13f2ed1cd660c2b432274dc6c836dbc8c60d3a33a7f758d1c2bad328c7116faa07b1f9ab7adea24c92c9372e0a129ee212a90ae2330139196deab4d63d864ff002c8c7cc18069d15d3d635a80cf7c3ae3f237693b9a8b2d5a67402c241df6d4680e2ff37a029a53e5b4a51615759ad84a1e107f273cee3282ae6e48a0c30917d99f604cc1058e0890b98d389b73506c9a3a6cc65ede272fb7800345ce599832eaca37188072ff49b9c3c7edddd2fddef4781da0355dc75e0a3d3c1812c7c0a863ae6020de0e61ef4f127de6888cb7cb0e02f3bbebdac145b101da386e3fc14db6a285ad825123345245890cfb2a8b3f63a44b2b1cf3513eba9784f1e2c8adccef8f05069d12178cac73c22e4fc09b549a088128524b6ac69e9a4d64f17dd02cc0f960edb618db23085b4ad706c2abf5b4e1962fc43ca2887110d6d7b278052b5312ff64af1f06d8b1daa6d89cf960f87f7304ef3895ac66270ee3eb1d46fbd9230416169b8b9a03e6b28b8935670122ecb2d94f9e38841b00f10baaf62cd8ea1ed193ba9e2da2a8c01a033641356dc85be950e315ed076ebd11f00a1d1a517e7d285860897ebe54193c23a62c6cba1ee07f9940bbfab7e13c0f3cfdf4c8a5d52d28c4078fbf34feb3acd2f869fb0f1c5ecf509311709261d7057d10bdc0044d741ceb32db7351ed3e9563643ca83b448c523028bd2d2bea87aabb78f30926b611fef12fa83d99b927ff10ac812a1bbcd101a26cf16a038d79908d96ee0cd3b679df39fb42b63806dd8089b29dcd544dad6df165c68f6c9c4268e160e5a865dcb998970eb90ed0c640f994e7f233896cd34cf7cd71c16352b5b307720d02842747a9078060735886847a5da2a0db06beb5b8e61341232b195e41b8a352da659db0fb322f2d1c7e9ac255bda073958746fcd7254ea2bf4a1c6eadcc03cc783583a421fc73a3abeef6ea4de1b3777b7aac1700af570b0fc8dc0f2381cf7eea01a6dfd362100445b3a9cb7bb92f03de15d0ab4c35f8f3983ccab5804f8dc82caf5d47f83e385073748b6ad754abf02073ca5a12540473cffe883d97a1975d1da2ff2d630585641f8aa286db129461fa6c1a8d36c66b6e14f7224fc168c6740f1ce3ba884cb04677e1211ab29479e89cfbaaf964114db0c8c350c4677dfeb8f05933b661d7ef8b9ad33e800a95bb769b3d9cf20afef638dc8f4bc2c637c02b0f6228779ad442b89933a3bc67fee8c773345752e56b19ed02c5149392accfbd267e63363f46bc7af2208e44fe1b62a60b41d2c35131f2b90f6596925e5c1f6ac6c4b21e3ee91808a880b01519291812a0136f83cb2a37970b1454b54e42cacf283b0b1f9b2d4fce3d7494af0199636bc364409a8eb9047e2ccd6d3d5cd5d962432830665239d49152affde9516c12db454c21620472d835d574815cba4f02b7f169951dd44361759a1219a80e4294af8d8c8918fcfa869ce96b372b461932adf19735831a360c14ab91d5ed4c15e23dece1440d5c91259191a22b3000951a6cf0ed56014d5c9ae099a8411158f4eaf61f1396be5971342ad53e642c909c7c1cd47e3c83b52058b2dc240ec24b550e5fd35e44e9fb1989034f20a022191bfe3c1869b64360d79da17b07476b438817cb989d1d399ac99bf499079fd229304896546cfc1604c6467fdc3410ecf8cd778119c25ff3181a0f95b31633f816ccbd8e6c6aaee473a17121b18f0ee1d8dd79fa384e0e8640fee7ff0edfcf39ff6e4cc30db68bfefcb36e5a85dc63fc81a936e3aa5d25c9bdb84b13b48e60a3a5f846ebd567b96533d01ae3e02a3de70496b3854ff16b3552d78cdfdb0d2db72642007e543ba92cb8b8d458028cd81145f2a81a4ddcf2ea657f7330b8af1e4f0723e29c065c5ab2e6db0a3dc0f229e0106d5954ce0caa899dd3838b9568323c6ea6b96d027346c946f84bcf0f9832f1ffd4b36faf5011bb4debd8f8b5dd898cf3c9e6c7317224944f8e62e9ff66e0bf58eb26ca463bff707d0f367d38047689e4f8ecd47f85b387b843f5c4bc3785c0db277d8b225f2ce1d6fa05786b65012e34a9b3b547ecb173455b96bf14e41321bcdf7ec91653c65d4242d3ca84d19c48ddfff2688e35a4e60307666399a9b401a50aeabe4cd3e71b6edb3ea0ea744bde46a8238e0d859bd8567c2624d20761f94fd136fa8b3e086e9fbd8e4126cc696b81b2372b6a972edd39945a5d1dfcce270a6b08ed2e2e119a556dc2d7147473898fc211a9883f69a67174935d241c39dcbb61f66bc95f1d05d5b9cf312f7f9177a008c4c48461fdaa53722ad72db4ae2341b52056e6c5551f599d31aa0bb3eb8cde4e697b8089980418f8c4f2a82d91d54bcfa537687a2cd73f301e9bf50d3ef4add7792b1f7ffeee8c3dffdb593eddfa8d691cda7b47dc330a47c3a116ed4994f3651006cb13e9af36fcd095a732ca4a82b81ffa391730bee0923ffec71beafb37a1844c19205e0635002bea3a81c189d3664ec24affb017d08fa6fdd304ada5d61d28c8a34afdff13b4e5f3d8df873f4a6c7ab990592a883399f8d0464c30b1939098a391ddb45b4c2d8d9060204c7e42f04b21e6e2ff1b576fc914f352baf7fde9b91d5fd0331bcdb07a6a8d8f8f797906e50194d0f3cd0423d07e253f78cba045a5db31f6021ae4a5fa2ba85067cbf5a7242f3f59c031f18a6a14214e11f9ea7bb0294342aa805b3605427a50e01fbd3aa4282cba8d48a22983832dd8926408582d0c65a02bc289d1664dd420c4f8e81b4b1a5b207459ffe5ad5f65302c8e751b8a8b938adc1d5ad44bd2339a71d8a2d5d5c1ee578f277e65861b917324053924f8d15dc17c9e1bf6646fd2afc0a2f7d727e72f2a2634f5c4d81ff743755e8f0d0192269b2524eb1c8f9b28145cbc48382f9523d04a170826658b7c4ca3297649724d3d4245de58c40c31cc0fa655df2bf1b45446794569b653beec086e6dda0043fa47713ef217044054056f45a1bcfb374611a435db665314b7decf8d7c369799c3cff76ecea2db56e838f5042f14750441a3f86729f5665435472e7bd1d168534618e4128a2e2fcea0f41c947511706590c88815ac9071043dc114da82d14532615101146bfdfe089c9e556eae0824e8aab1eed01c6b6577c1d0e4da957f19dc91b52c31ce9d52523d7dcde563d08f21e5787c619552cde1039f89601a7fcbfe90085365a4b0a25d483cc4c5de8205ecd717772c3c4300e0c7c638c731770eb826052afe79fadbfbfe795bc9374d0912a422bf4814de187011bd30f0f009b63e153d989c3337cf0b292e78d7508808621bc25bfd869aa6bdfc979528d8e6201fc61d1456e587b1f08c1540a206740a1f8a9d00de2c6c9a8f9812df909c81b02efb161fd8a350e564163088beaca05b04a963e198a55676cccb965889e617aca20ec2e93c16001ea881f0a77e0ce7542eee0c3d50c1432be0353eeda531a720776edbb4a8ab1a5bf79f8b882995844c26df44b5bd2019487c00ff579fe145c70288540c0415a945cbda3c2ae89515e4182477f450dd73ad6c118e8ed42685c4cd8f6dd244ff54021d5ee0fc8e971348ed0cf0008550c2a24a5f0c86b5920f4587b8bf8158d34da3d0c92f92cd80643f0ac42d5fe3f0187abbc1eab7922d27bdcd554bb3ca82db1b1559ed05fb44de66a27b1d8d4787a1d27ecc2c8dc8a3bd0ff805e4803899190e3e378689a672d9e49a6b3b86c3f528fab31bfbc41d6b0fcce4d6f5d20c66f0db2c35727f05fc39ea5900f718ed4c25ae758aa762649d0f2fa10027e27b6f58972979b832cc5ddc9fd69714b7ccc4be1cd00fe0c02e8509247eba1c2f4deb3c82e3b6f7a738f8f30c66f76611566be523c75eca12ace8d4ae22f3efd025bc3ad7d0476dbb793646ebeb15e39af5a8d59ccec3ae5e2c02c9600e64b3005d82d6f36da4c24d2d479db891595db33b640233c0e34541ea663d4149ccba08793f0b01ddf0f51a3e586600baba5c6765d90fa32d6d5c191302d254f5d7ed74c5a3a679221df71aa497014e41a73280a8117a07cd647c2e9b1110567a7652a51062a54ec95c23b8a3c55957b09a157a1366e7a3cd53faf2f948ac7edc2fa8c9ccf480f5a7fe15026a092da5658c70e4675cc56d430ba93ca0502e4fb164adbbf36bba0f9536b96f43b7c8f4859d8a3f12188241168a16380e57442e0942e080246aa381e2170434b7e4da677197c7d6747ceac14bfa35da94b310eafe144adea5669508aeb5e6497c9efebe11935cd60d3c52b51abc79e36d3e6dc98b55f24e36e96c9785b75092d94540d364f423dceb60582351894b682c888802ad7aa46680668a5afc2b891d5d94636a1dfe054789059acb797b80ecaf5e155f71e0ff97cb196063dce45c8550a12ebfe059390154e564a3e06a2d8f4771e9cde560523129aaa04032d9c0e402b4ae177ce042ccb561c059670bc02a1abb676cba185117216a138636c084ad906d6c1bd603e6654962d7e9a206020f430a9b2ace0f4cea933e4e3727fe00da58932f3d03f551d13233ab82e114423cb9fd526528e9944fea0c4c0a6d2dfa278483ab27e0ae607df34f4ad83d38bfcf09c2979334b28decc6bb28b3bfe67453152bb39cb6377d4fd2d45339576e262941363b6c89ad8104970ed6662ef5c6bfb1e9a5ee99c9e2afa39f980f44b31166bcc21b6381a85c78ef81414cccd582f89ea2bdf8eb56a954d25600a807a7b8bb5dac730579f8e53528e617495807617ac80ebd90b8ba03e6190c3a84fbc2cd8b7124e1002b348558ebcb1ea7f02d516e7b3da2f59f951dd7c2bfbf0e32bfbaf9190cd2090c8a0bba3cf7d8936b9ed5658918d403d30c43778124692e9b0d38e46e72be771485c223a1462357b04cf97f4db11bf8f96c32776598ab49efeeaf97ebdaec5930f05a84187f7ece6504503f5f86b34346b8d7eaee93925d89c23fa214c10555790c04a088673fe282a4fd8a08a4d5acd3bb055cb6fb08fe7fc66141e6c225cec2182b5fa8521df412891afe5ebb4c45f2fc62d37c3be3c4ee6fb39c4784237cc37d8b26f63dd9a80d186adfb123526fa3333e6e2d28bcc2b88882b2c94a8b6b31a59dd49140c49af812d1c392c8a128e2f691c9b1f2beceb2668821d9ff887f6688a880bf877cd33c35111fd9b98aa7de125caf605d867662e831f25e2a4e0f28bbf78c13854bce3e71a3d883650340afb2cafedcfd33c336b166c93814ff80e0c69f58e739f36ce710df7b91b3c72658cd0c86bce44827f348a3a27e15da354809bb8d48da87a2b9df07e19ec95f5baae2f6fa5ad9d0bca7283f719fd54d4b89563f14e91ad963cf4e2166d88cc2ac9307fcf55ea87113c2ad0a86695689bb4d918e304712d2914b4d5e95fb550a9c3fbeddb51fd3ab35b20f8be1cdf5d1928eb3a80f284515d02a419b481a30e2259389212d6c7454811ab4bba22554599b2e9917ec5a049e60339e00a3a78ae24a062180049061999de12200b4aca8403ae3e20abe7e35020d76b0ce11f04d4dad1fe49f85063a530e230b810a0fc32cec11da83ff9b50e36b22b0d28231ccea19389965be09bcc848e993f160211c59768e7df3defe60d88037d292812ed043b5619f339574d2ef5a081df530cd4cbc31cea663c24bf3323769881073ef7dd8ab56b2569616d7beca8977e725a791e5fdf35641f2b97a9136cc0b7aaf0db1880d6b12a7a7206a34348840fec0c9758bfa9d890f91539d9baf752a6256cf5824d8742b0dc1a89ff0c7993baedffe81246b63f121c8c3e102c424a031b023bc986c46fdbfc4a8499033fc665407cbfc7c958bf4c144c38273808e1879e6624f8cc12487fdf39b47c8a6daf16ba9ca20f4492904e92dd769fe5e69d5575cc61ddbdb0f0d4229d8009747356039bba86b49bd8afcf2f3db2f58993d86d7077d3dd9277e2ffb0026cb4c9c9e485d4eb49bc3c9a104b34474716c389f2a131f6f386ccf80454c5f69138abe879c71da65a037b07a1e44fef5d3105624e6dededb0cf9b6ca2030e116d3705d1d093cf7a583117590a1cd33b23bcb5f6d7e613b75f7a4c3b7eedd0ef9c95658096f915e31f6a8672934ac5b81632cdcdd9b3f29b1c9d61a465d74159856d959d6e7694a824e50106bcd1bb0bfac0d4b5225e4abaaa619ff3cad37187f482f287aef95d50a42bb2bf1ce98c3643f841d2b3b696a1a1b84c872a20548386998ec55195eb7196eab6cf14df04c367948be4e35e018842859cef552564b400f43d1ea51ebca7e47f0227658cf3fd37b9d05c97d1f6d0b627aef0a9ad122f7c4ccf0e190bd33135a16d3677ebe37450cf21b307d0ce7b5f982a1b831346288584604376f5a2966e164f70f0df355efde9d1b435b98534b6d4d6e366d48bdfc3d36e3051c01307f217b6637d2c02dd0ea2fdfde5cd041c10c4d97c520834fd386b07b0c1540bf91e64a109e9e22491259779bff8d015e14c13af36b45d475e357fa39f0bdd764827549858fcd0a53df68ae65797d9bc43b2cbef1367d71fdaa87690a39f0fae00a9c19d9fe920e886608fff632c78c4f901467eeb56d3de74934894598c298c05df29055aedda9e3e90fa645ca875ec48ae74ea56fbd7a1bbe99680709b98a30a1553c267d7a317cc401d1879428d9e1ff090dc43c4c2633551401da7b2b630171cb84eb11d8afcde0ca5ee828a14302ea44b0f60a333b09cb9ad8bb6a1ee2d3e01fe26a92ce14915a9bc21e5c3de910572383153dc53e52129ed10edd024ade57d4a820c4b02f4cb13bd49151ddc5246f59ab54db9e21b00bb934ecf9c08e772b761f3953d4e8a19e432e7d970022f243ef9c77b98b2059d71e1175436aba6873ff4f67bb819333b8bd94785509176f3595db5fb78ae30a60353f9f801c112336a1f9b3fab183b92ea0b211acf3a17f7f2202c7c1588ae183eb5b81d14d8d0aa1e1490ae031eef5758e915b3b7dd64e07a57078e9a66bb515ea19e402082c92f6599a5378a3bc7c163241dcbc1b99a10db3de3844705e2a6b8434ff43a98af229119d75f518cdaf6ff54efa5d8d244cdcfd46fc547cdacddb764d1e9635d8000322b9144e5cb74f6eace54aa1bc73898501a31e3378dd280525bc0c7d28edb7a3e02fbf54557984edc128a2caafebef0a8f8ee337d47b2c64e5c50f0ebb8886ca3c5a4f99acaf13ad717faaec7b172092bfa56e8838317076e3ddd56fb6b8622ef0f084e4b65571d8cff73e532ece9e15f4b359f4b6e46fcdad89d455b333b3cfd0a01a568efb374793a8e2330fee652dc525ff78f9202533ed723812dd25188760da8afcd3323f3bb9b8d901b077b045c26a9568deca1c7d00daafc76f68e56791f62fd5043fcc4848ada77283e2769b0c24eaf8e37f46f61f6115eab798ffbe5b7ea721b901fb6e66f18119e749d4f3261ed0c6128346584536ea57895256dd16e4a3a78a6a53e6fa2cc919287e624461a343bd0341bfd6e5d1d5fe643def4e3d69de4f93eeae74844cbd8907a233bac6b1ada8cb307dd1c056e109ef27343c83b22bace246ecf2cb768e40501bdf4838acb08ca8577cb5a42c38b7599ed7a111dcdfa47062d1a1f5a18ca2ab52146d6113361e5ffc077e4bd8e4d52ff57067f1ba5ddb7dd448ed9a10a801ae39df64839f525fa4b1afa23b1a228fade01564196aea7323e59c00ef69e99c990d5920a4e273e4b63dfe01ea2cc9e37cb4167e24ab04244a52103d1171fd7c844d696d2362465babb93b5baeaf0af4035384e79a6390729cf8d6578734fa8a008d6351363410915edac29e39edaedaca8ebd920213fb14540e5f5011ad5522d141bdc4c60c1bf12f90e8432dfc1771d58083f82e8c72887d37205439f61863f4b07fdbca900e6e4fabe4347ea6647e2230acd0dc994a004c85d2fb345a26c4b112380e1cc70336e02225af40e5a9cf969c0435286fe3083456563051b40b3c3bbb17d076997c6262c91fb74ae9fa9264122285b020c602c0d4f174fbfdea441e26b58db487435c0ded13496b2abb5265e78a62863b68c1a8eb759a8ec0cd5c08d73c23f2fdf2dffbd8c409d7f5b52f5c63ecd69300201488bce7ba1973e54265ef03383973c36b6f885ee016b8fac4845217c23b7de0ef42ed46041fa634f786628fafaeacd333bef28c43415965cd861a364743b136885f9477c6fc068dbb7b9f07f833bf7d3efa09e2b5803e1d91eac9fe69047c257d56cb3c362b452ae61e6552a444489eb4cef9667071601eb8396474f83e6bc96fe92c28f9d2dfbd825e78f141b8c0ba2f6a34444024282e68132cc80a273d3ce0305609db89f465467532be6fce12e42103167c09c3df14faa5e909a9c21b82c9fc00c0cd609184640e7198ba14b9d00c106e760fc0adb19a0803798b93e20a7d3a4bddba898394e6fd007a39d5e8cecc18f3ddd5abdff2a823b10479dfa130e95974be331c252d28fc2db3756e4402dc6d1447e173decf04abbab6836b8478e6337e78e97d86d4d406b103391a25d4472baa035ae7cc7dafd96148d5e2a7205340e51985fae535f381d21e414349f26a388fd5f95104cf4002a0422ce97059f825255d2f4d3d434c08bf6f5e991e91735484c84e5499d355531e54026c969046e3c34dc4a31aa176830c8b70e95d3a9c8077bbbf8b5376f54969a27fa20189c52ce47ddf84b4be2a79bb2b0c64b096e6bf859a3f00813330d9cab35aa63dc909d82c84c1430592d852cc092de3f9c0f77f91bc21b9f507c2c53781eda25448babab8ec7bdad5c57c2f59e016386e23c57594d49b907657aa9744a2db9e4eba2760889f5b5b86047720f255c62346b72eddcc88c22387af1f89d3b5bff8cf2476a3ca47acde2e1cc53a0a00d883138b755e8eb3c92d78ff4ca8d3ed0baf33522756d6b7ca9d4fcbc61e4202aac2b1b7bc22ed4f1b4d1a1fc8b155c682aa185ace1da062c163176939dbd0bae9510feedc6015ad185a5758de8d93355bc11e0f5f449a839ebbefb29e527bfb6174fcc62af15170b8f0f57e652840ba9ba1e4b06fb82d3a5750b2b70a8aa4d233b3f183b9177a05bc605a7d418e483d1ae6e6b3a43d1af3bef4f9de11bc528a2383ef013ddfc59865cc92ea562c73217d3dfbbc9310dfdc55005fd85ecfc20a7480d442bddcf5968c4bbd8db3ca5a9faeffe2146f1c3b538ada4a5848f02928ac00d9c6f40864e7e074488abbffeb71a65f37bfd8d6b97057e55d3df280ad1ac1963f8b01b43db0b3f4f5682c41b38269000cd79eebdc223633f7ea60fef8b89d4f3afdebf2e83932f98f29790ba717df83281fe756d9a7e364345843b28060b5659e6552c11b580fdf5d43bf8dc3800dec38fe0150200b8edd66c5f7cada7106fb8d63b3618a9cef52e377cf8477b9b8bf02520da107308b2e760fbcbe3bc00649f0b8a804460b0ec925601128fae38318558ed12d49b5de402f31556301678a903823e8f7dac9d6be5042c4c800ecaefb5c84da813311329d670c93fc630ca82d7716e2f30579432353b6ed6b728248fd290c657826840101f7e8c4db318d23c60b76316c4c5a50864c795b1779ecc69b6abe0068416579addfb8a12442693e100af295ad945ca5f4d2eecb612a4c57094c245dfed1cf7c5c12e69a0be25ff42d5442d8ae31e832edebf14d8b6d6f778a7595c58af84a38b77677ead37f59e0ca5a8bc53dc42030d4e0765813e903166601fabfa2938335b42dc6bceae69a9d9471439c6323b4e230b8020b359ef6878204ded86e25500895a3ee794067593b0137ef307d8450ddf366086a0d896b3ca34a6e65bd5cbdb142d211ba9a4415f0183dce9e144dbca8a924bf5b2375bbcbd393f1abbda239cc1afd9e0088dd9293b92616483a46f628134d029dbfabf46c41c28233a002454347aa715f44d2779a065ec8b0b60ba9d188b6874a18347d173de8b043dec680d0e6a01dfdab5c44d20986a90333801bb9cf1f2b3bf24aaa75bee29e89ec71c0a6930acbb69d1f9df7bb46e0f51f438afc832993ccc20b4fdb80027b9ec5dc00803285f7a8d77c2c8c8c0e4ca8c7585d9f38fca050d395a23df1db545610cc9e80e415270a46e5246e87c638999234a6e5d3e1e957602c0e5c48f7a628a0a313860cc3bf15639903bbeb528aa6393719eb0321b5a7e12f18de25f2754716aad2dfdedbf4c061505b0337ae5173cc7f2ce3fee4e219b73fb7e54b1229cc6e8f803d336bd832b5b882616cdc2e302a1a03ece752c789c38de46c5cba74c8853a31b8b962c3b221531886166c7e10dc7ec8c02813b09f65384841cc01a94683adff6fa8a04250514086df3dcc56b28f2af23ec8fdb1088ad119f343be5813dfdd3205ca9133b75ff69884e2818c49e59fd24ae1309fd64150f53e52e78870a125a6642125b38379a5e1ab0acc03ae31a29512c7c449ae9daf52e56e4e62e8c670cdec576cc26f1bb5940053beeeffdb5dc47ad432acf647fee95db2fb5fe24d525e318ff26f9c3f8adc572a8ed1644c84e5475dfec2af04d80e7409f8c77f0f0e0142c1d9c7e5eeb43e60036871a00519b02a6106f3860b54b4c84850941f5cf11bde8e41cc057893784d3958e9b7d669d9a50314e1cd472b7910f38d069bcd6f77c0f8a054b8014eceb11dc1c4d8b9d1ec55d8a24cd6668d26d80f967c9efcbead2bdde58b012cfc87b83c477c8d143789d88dba7805b9ffc6d1c9413cbdef76a5b360bc0d4f84f75f3be809f95148ab84a7986091b6de4cfa6ac62a04c9b958e4039a3a4a190d48d875dcd6309367234e1cc24107a55644f3c48678fdce39aa81a0a4c809d8e13bcf38274809b33b96b449993ff859c51fd17d17e899b53cfd2be056e0a1a9cdbabb140aec150faa09766c8787ff77ecb2f1acb31a8a71f7d06d40240016dc20f1683c40e5ee46fe0139f03d5ef8e6e3067ce8e77ba267a170e4d91ea9424c31324c92a0152b9e23c8f445cd829cc5baec388ab28232ecb818ce5a6acde415c8fe3f61694149964df8866dcc2fcd35ba543b70f16faf59630f540f0ab1acd5be54c31b06fe2043072b7c671c075f9cb782f930ca64f94ca3155b6fb1b84e3cdcca7f303f5d43b830b9f956854be893155d43907cd4c4a8f6ecfc77b0d77d65a8fffb028780d0757054220f3dcfd3cdb6660418e5d52cbd655c953f7f06560c9ee88b845e449a13a11eb7fda7951eb0087cd2642171013e3b88f765c850f996863f3399f474fe73233db81e0e9e633b07cabd770f4c86f664e409898ebc35a9445381618cfd3dff1fabb2b17fdd0b3c45591d19f7656ae80cc571779640a614abc307e571d67303c308aa9a97570937d1f11d650089d1f10bed02cf26cfcb4dc446080712c8a9e848df870afe3bd25530f90cf52eb6ac7977ebd1efd5d436976e531cba1174cb04ffc211a20d2750671643175fe7e05e639f3e3e8c3da9cc9569fffc32c2b93daac12fd8fcc0cbfdbcc23f120eada70271159dc08a0d59d8dd236b1341267bcd9fb60b0953ec948abc31f5ae3957acf5bff412e8c067a09f459f87cabe63ac0d3ed15c44198c120ce18f4b130396daf0efcf9f41ffdf0af2f90910f5470786eefbbef75ca3077e04efaf6c3c7ff61461598d3595f0c8fa06fcf18c9f5ae0eed88b8d196cc44045fc573b6c4684b101c88d79ec2fbeb5f2988afed366ff2000f351c78e82a013625f5ae02560176c236ab1031d06a8b117c5feb2802ae975f0311c5caf10ebedfdf5fd2edb75a0385894ea14847fe47c9e4176b82963bcbbf4634efbb36ca67720b6d69e5aca3ad8955f41ea4cdc9f55ac735bdebfc194113340835a47815b7086cda55b81950fdc7cd2807f433012ddf1b2affc80556c026f72a2b163a8f75be2954777c306b3fbbe01e39088a2d42c7cd95f97005bf9e9f06f55fc7eaa780ab905bf0ad641a9941447f25f6790b11f937260fceb1bcb3b73bffbd1ff88f73f486fceb0266580cba34325bf5df823bcfd343bc8f8ba72263877f66aa01d913eefdbdd4a699ea668969a3db4494e91ab9e345d42ced134575827a42701cdee1d64396d34322dafb5e6af94ec2e69335052aac4c43db2ec810dbf4d1c3fe2a83a0910f347ab767a7022a27ec127985572e71feb87141d6ed72ced6ad7454704c9423ae04034f16d7e2eeb44f006c63a85a0a03f5216b83407e5b349d995505b67787de5a95e51ac2732b0e220a469dc4e73490189d1ac76e660b648046c52207cbc47978926632108ef9affcaffe885a7f8e91b924a4aca1c1a5c2e2c8cff36b384fe914fbd6c1475baa7ac2a73a8f89998b98aeae421eadc4b97fe13c8a64c2e07cde18a408dc9d8c833637bbbef5b56693e5c2c7bd00e996946b12461f76197f77f85bc14f342281dfc2d4119ae8456ec156f34a76ae887fd5fa45983b67764737cd95eabdf425d384c02426eb4946e1ddd9bef2b5d2941b10ae0af14b05b06c2ea7759e44b4a4f6f924fbfc1834d11c1970950ab6877116cbeb025bc2bbfa1b6be9f3e47a09a3f777a2323bece2742c60986729668b86a4e4086366c1bbc0b3dd4492e4b06d6c39e0a0f269667bd3adaf74a9f92c43cd20d6b42fb17493adb8726bd19d126cb4b8a4a724e579da8fd189155b80df2582211977e55047b7ededdd7a3c7c0cf8dc091d696258cf18d717cb85c707c323ad76d1a31706d3301033f5e9fed13125503f0a3a40cb41b398290e1e51aa1d3d05ab20a6d824af65553daa15049e2ae85e8ceff864e4a4f47fc1e810d815ac21e55c15bb98be33d45f17a63f605145ce1bc63df199dc43b1f5a4d1f192650c43a0cfbd8568a0132cdfa6cfbd92edbb1d04c343b316f4b4e75ca3ce1ab5f257cd5016ac8df8f421ab12d82a4bce3cb62ca7f56b63a97ae11b99a8b3ef6fd3a4b59b72dbe10394eaec90732390c171e84cd4eb9931aeb8c3a4b28298c6c5fdfb1ea2f9a4c1b37769964ac9c2e80f9b539f6d4803875fec0d3cf27a353194458a924102ed2585fb8bf26a16e2792b3712c5e084d30b20e4b1f39495d15697d4c3073ebb18dbfa0038693a9522809dc5e7ed989d6b56822b355fcf81a01bc170128dc26e8cb0df69012e9363e77b4b86e0d347334219b5d615b4c408276051deed65f8f5f462cf4ae912b84c903908afe50f27284222b2e85576796e90979868a7d9238b003e1e4be5c5ba799e379b6caa820c2527631d61950158f6a32f83216d32fe1d8afb0c11890582f72f3bf6c25a8ecbf6ee3c519d461b961718f927558e28dbd7b34be1739afbfced3436410ccbf25bd385775d0d3bce07816614783b3bcc295a81c74892bb9f07bbd81a02f35725fdfc96c48b0daabfa28634f8ee86d9260a372021363ede15f116a7131f5de9599e76ee294e5b117a4494d556f910de7e27ce062206ccd18db5d096c113d9b26e6c2c570a7971c262a5db77c0dfe28b33aae86fb4edf16ad171f469df9987f771e10e95d72564c9c30964089d838c85232d501f42fe7bc5860dc0bebab898c1b76b618cb86ebb2d3502d08003090daeb719d3644f208ef4c6de169a98a40e4ab51b2f95d60ca56bd244c8ccb4be9e6566bb8717ab7331edd910499dd44e9be6a363bc6d1b5fdb30b967f1f78ae21ff10237d54234ed559fd4607c6cb3465e1ca9a6219968e5e63aa94ac85ce6244316a5fa1101481458fbb4abed89e2d64601537755b25ce9b29f9621a41a23bae9f7e179375e4fa2c559b2458b36d9c156b1f972a255fd1da952e26c0cd57ad249689ad4a93da5355c6514d9fef73d1b13e1929e57f26e01850d392b70ad5eedf0c2b20a2193bfeb88af184a11f1f76772cb0ad0c62d069f67f625572bb73e09da5fd882e6ee3a7981d1693511d283d4a6f6358b9938e40f43f80d82dfda5e48e3953b246b34359f0a2f75393c1e71d13b87d9368818b0271369b909592159b2ca02a255f279a852b00446b58e38ae0f3fed5012ba54b4aee689f76f14385962662842c2a75d6895b2e91841a79a7180f8b8501e9c82a2b6b71850c6dba13657e659fed6d61bc1d6d0d2ea58ca0e14c3ef5674d07daa0b2f97ae7663a34e9f3295dde23c843a6d3e01cb6191303a2e2cbf5bfc088917bf1bbde3c4f22ae63c2d5ae17ac2d13bf902e1c009a22ea9b25c149e5f08a54706316709705587280bb6661b915f5f2abf6b3d5c906d44390ad0dd55cc44f5d9b472467a320773aea28484efd1d3290f36e63d64582998c7fe6cb45d268fc688fb6470af7c04cc6ac9edd10f4f4d525f23c503f1de3eee5b2b8a1df5fe9ce82b4cf31e6da245a04d723b644c2a94d9ae121f310ae1724378740afb1644246001c1ba6f969d6aee9a116e73afee5c9c89bdc26c7c58a1c4707dd3b1d49082a6d38c76039d8a8e7f0287b835b4a0ea0d9b5ee1ce2a089203b998c3b944729285884b3dd2a3710840dd063e712cdf3d9c0cf873aaeff979d8aa5705cfcb8ae83a7cb31461af220a3c16056614d8e2b37650747bc37047e7a5b48f343752580dbca49a9d65244b5ecfe85565dd38f1cf7714925a42224e43d3138eb9155bf6b8f796e5c67f784e3c532a448a6bb46700d75cb4d043a4ca937719745d14f164d7a328259371319f7abda5388c3c0db27a9390ce265f97ae955d0974bbf9fc1e6f77afa86c9b70202f4df7968da023283c257c172b577a9cb8c1e4940aec90ae52700134ba850f80977044c8cb21afa8392b4df2efad0fd8ca3652871a660e45118e1e3b2dc1b1f38f98d524c95b4ce9f1ceda47c4d1c6f4d1289ae5874d0434d80496e126982b6f823f2d10eff64860e062ce80e9dd968f7d42298dca89667d70f1c593089aa5a025cc68a9dfa2a1c708c755651b65534b4c9215cedc9b61a674bf1a25b558982604077e1d1ffb168e33a1091b540360672ec390076577aa6d32c6633e9c622b5f911293b4397857c85d09863dfc84e66219c2c69231a971ae816ce4ba62a2897bee86e79072f0f278deea293233adc48fab3973dc13d5d5d5429a77edafde72e9f8b4112e40c6306f425090b390f68bc6af8732e0794a60b7dde618609471012bd4ac547276f59d250acfe5f6b9dc18eb3f9aea07874c785843ee4239aafb0c1848e11260818d21f573304f4283b3ec0eb0c6f1bbbc7c36748fb0454fe45ece976cb28e3fbeb86f5a048da1dcdf4c34fdd7089b099d388565cdaecd01551426ecc6a79946561def3bbd54dc926f5a94255c1c2967f52bff439ff151690ab2dc77b3c2ba048aee5be17cf36bfa15815ff1f92c3f53434668a4ca11ad32062d233f5d472dc901d076f5a8dd75f3e4f172e086e919589f088e350396adeb2004e636cd50ce40876a08338ad82a1b5f46bd88d47d404bea7900d070e37667503d5b64cfcc5ebc156008a1f4a7a1b7f2baa7977c4652ea2e6fefb17b55929e10835fbbfef829d6ad8dd3799528e02f2f2bcb73b13987a016e4aaac1de935d0e41a48ae7932cf9f640e5a1785f09f87e3de4c3c711457b773751e016c4ed761989017fe08c25bfcdb4e20b52e33127f4465c4568fea6fce0c3cd2623422b993cf4f88c62df10663262bf50e4eb123884b20eb674e77797484268e900f532b5584655da2a5d58b6104a36d14cda8614b4a1aa2ca6ab454ecae8e9face953eb68d4e39b199072da78706440757b5a11020f2a93138bbd4cc74b661ae7e86c723d902a6ae58214e8d0a26f2808a498dc8f0079b414e9fc6c56a1052c3a3573118d20d2158a639ba43684184c16ea233915ee28714fe79c583cfa5267ab3a519ff204958671ca4882c962993b94cb161eb4ab590a101340443df82c38904c001a03d7a9b41eb9afe7cd12aca65f1cfeea9e4c977a2f25912cddf9628c17e85531265b104138bda2ecec3475bb3dff5eeeca7a950789d8e1a16a5a863a539813b83ae4e45a9b029b5043a33552e6821132e5ddaff01abcd8b54ca6acb5c6ca30e0468e1c97f7e4b6df56ea88ec78197b67c514784375697d4fc8de89ff47effdba2258749660f4a9022eaeed1de4efb6722a207d9b0998df413f21425d4d9c0c81a2a3307b0b2e250765389a4c54e1dac938dd5f91ebc2581a6e8a28d5ea9f450a703980874eea1f3288fc800de8053caac9ebff468a1af3d7d301b18c91d60c4a3689e434df4f0bca4c968f79c3df5945d06b1da3f9701dfaea5f6c2271a2939bca61186d68714b1705f1c120ba8da6ee2320bebd5db600cabeb5a34cf0b55d397c6a8e05b1d8008529df6509c2a204f6f0b8da7609fe92028b545109b83ec12939ea173b7f100f465ccee59c0915a984b979f92ff8516688112a37aeca1c5d19465d8e4879855c6756a05ed5a3febe6b0e5bd3b819ee153033beb2ead23a561e0b919e468e6fd7e67c1ebdadde6cf93b13e4cf5cc8e84b9416cb8466e32a5d502fd83cd26bccb58eb56fbc021cbb56d450fe8ef542108a577070a341689d62de45e8bca2cc0fab7f0136addc6f5aefa78c481909409779e403d2d8d996a66a8006ccdf07d359c4957697884b3f190a6b290feb9a76cb540d48d276fde6f650f87b16d73053423e2f2647efe168f4e420cf61e18583ba9c0a720f2591c6fb821447296a93c2a779594b74b112dbaf82e322edf193f0b27f998cf868faec45d72254bc7fcfa0c6598ff766502caf79b418e3bdb843d1f3fbddf3492fb8d7f274b6ed83ab34ac71b74c0f1af702de787f0bca40a5e71e8cf38041246a608090136ca68cdfbb8706b8f40f9a7df596767cebc7edafefeffaecc0bb71d6bde6370b8cafd54ef81da9735b548e9ceba7175c007be55ea539909f16f03150d78c585de274613aaeabc5c9e172f341e4e3814265c5f249a68fe2d6ace216da519d1260b8f67b529260e0562240f498c5c4e59644934626468df22b46752b2b7ff8f59b05cdd83cac400c5c82814263ce68bc41e7809762b9da1ad87a1c188a150ddb475c1614c528556d2f93ff71b96f25095dd6293b0c7a13e5c4e5bfd790832b8cbe3d5c9efcbc651d2f5d14b781355634d8a1fc6b71b21f4ed00f92076c3846d13d4f52472dabdf3c48dfcd7b852ad53f428d8cb228da82e2fb3b82c555544e29c56441d153b97928d08acb71064f080997d0d3de0f6b157b1d22141194d905ab678d1e545c05919546d2ed28e047c50782c69999708f434e23eed2a66a814d15a0639a3415290c3e8b2a0c3cffb53da78d089192c10596f0dbe7bbd8ecad8809b4245f31903c1b68a310659cfc0c6f6f45047de7968b3a5b185d1aa3e082be32d547f44389456481fcbe316a411f3e1e8a4366bd6124558a0bf4869f450112c90dabe3865d5cb77fc6464a3a3d6f6873b32a297adbdc1f86888c3043b2948a140408706ed600a332a701367064640e10732f92eda85b23551e857401ca98a41dae472a3fbe8e51ce74e0b0a03f94a045f140923a410d9aefab41ed11f3cb6b9be848b4182b4abe8b1eb7ba380e6da12a0873c4da38f8cb32544259707b3d5c4b57ce94a52ece354e8d81065723819019fb01be178e634a892e781207cd7ba5f87f58861b1901c8a574c775dbad481d89424a38ac5bba189a0cf23ba6ad4f72b016bc2d0027580a9f351c93af51b8dab105813aa2e9f98fd552733fcf09bb23ec93cd63ca2d2b0b43c67e56c1ee24b81af6b7d10d291788170af0f28cadcc5f3659d9d970f334cb4df4e469ff6937f571b5525abf47687828f04ed8e21479c64d971cc9d08ea8d149f141fbc7b5de7a2563b71980173312037e229a4271091b4e38e1a78ba413c7a290abbbd1a9d0d3e8a592978de7b5ca15a78c2095859f30b3b8669be7ba461b588996eb594937f5d86e74be94e0079382bf11e51a48887b23a3b21a3f304a9f7010359b46ed3c75943ceb93ff448ab5451d65a27f2fdef1489eec23e9904a6167ae634568de3bfc66c315669f8fd04b42ff5c56b877cca2efa42d205e10c053f02d8d56bf3eedfe8aa53ccb5689c5f85b848e9727f3d73ddbe38938296f9f97fb3771017453e8b1bdb0223ac8bdb254fa6ac742fcdfb856dde86c6bdf2c7671fd154ea46db27a3cef2db91cb806c2589e82310719c07cef888e6af1af86f27cdc52b2e57ffc804062c82be2e93037adbc957b5ba7e5e649cdbd38c2cf54e7c6306b0748f9b6d0c04aef09380d19434ab726cd5748b6cfa07f4c358b28b33a5449796cd32f8255b5792fbce078eb202d931c1270ec7500c02fa7c91ea88987d0f76c781e371d451e934962c893ba23c7cc8d4ee9eb1ffb69a37b13d176b84bbd345038cc8a8c448f9de895d4b5255e2dd1df1feb1669a724353ba391dc3561dbac2a05ee62575e657e21b0ac57b7c396edf90d360d4e452004d53c72413912a6be18415e358227e0f2b05ba8dd2a727972a141869178f98cb8aabc8da819a044760684100bb703053e5b18ff5c5e5ac7d777ba5c3187a73000e0b77bc66de86a3b74df8f2bae5329c7e02dfbe7e16f4ef788a8f4a168c9d74d67ac76529233cff2ffe2050b093490ca268ef2133a4ebf4bed8eb4dfc814a295873d11cd72e3cb61cf124a9c41afe536b3be53581ee11c37bec1f1ce5f145f758e1a6f01e731593fb9841d7774cb2a6452246dc7e005a17fc54639d3d9eb02a1119ab38bf4a0f7209446430d3d370e4fb9ba176d5bf34feca9e4e50a5197fd2da467c2d7d60231e0984a1fe6e4f57dec80c1a505482abd8d2c40e77d52c056668414c721ff3916630927314a3e33125831f20e268f1038b5515732da82150a5d6c9b1aaa90893bb1e46004f67f599472e3bcf9ac2aa06b085314d52703db3e8c3c4c9aa2421df6864ed31b9ad902b3b4e79da872dc2c9b0baa55c3cca5c0f6c27fd306563e2f2e290f8d3c13e734341224e75b02cf0459738c4c9d4b3114c1ade2db167cbde48a70f7a7d6c734d7054826dcf20e876e5234d30bd78651363a7371644eca555771bbcd8bcbaf0ee8da00e5b7636665d3572a6947b63c5fe745ca32b65217673dca0efd1873e8c4384e4439dd9587851fe512b658c0e2d22100dc0ab82d26af10e3177a9c90808763f1e44301c57acd6a31d483c5686bf52346b598f6d41e5a06238a413cb84a84cb1744755926d06580a4078c3200de357a014d06e3d24d06ec5a11a27498b899a18a4250e446e37d0173b580f09b45a08884c5babd8f8e40650f8ef4c27f12d96ec33e7e11fac70e2129c407b7eb857c22d622d4210ad31157c0939e1a382af3aaf0ac27cb6bda79d908085a2ccb8da5e07782769b1add545e6a26075b8750a7f6e27692b344b4edca853e44340d6414581220e02303e398912ef1d06402d032731458d06e2c05bdf7cf70a0c5c4dbe063d54ec56f50e1fac7fb4d81f77f2f6f27038adfcdc8c101dde9d6d775de4386b4bb95b508e6de9196e70829369ee4ea095e14d297ab7ee98dd2f4affbf7967bc2257110608e2345ab8455513286421d7c357a18b6eb5611a9f89ac6d64842c676b7ec0e872a6748f6b4826dca52b6ea4093abbcd0b2cd6ca26f8cbe188d7bd829b4f7408202008ae58304b0f0fbdfe6e0b7bd6a14f62595ea0549a8f7125646afe178129f024d81079346689d12085b50c92dbdcf514556de89741cbc8cd42a68c8049e4c68668c2e8c340caf411cfbcc570335c649b0a6b0f3b789f3af1c878716561eecae0b62f6fa02ac8ae06bf463fc04dbe848dd7c41350b0111c6b734bcf804158d0c48fec64c99334f161bf68372a1b60508c739a8c7e2ffe884fb3e2150308b02a5d3ff2c042bedce85d9309a7a789ad8e9eb3ef48874842c9f0b1db991e2599607a52c75607ae60af20eb059c1f06f90b57a4a65357bd093fd52b34bd0712eca3c0b8d6af1713d4fd47644d5a43396bca37245aaee77cae158a8ce61c3d5f0f42130a584b802634b7e3a3262bbcc95cc98ddc8f123b35a1590f80fb8b5c17c79da2bbb5e7ea80c7bed4ee120d91bb8769679039e545b17931ba1a1ac6fcd85d6af728caa952147e9e0863bf92a8c889493cbaa9e18986e7867a70f22b86030038d7db25ef0c7b664f338845dcf1ea4325c526e62e97b2ee94ad32e87c056ae78bf05c83704ac43804ea3602653b19ae943564baffb620a83b65d532bfd62e539a54bae626df27d91e4c54465a3d45290213336b039e022764b60002c597bcb8acce049084ef7d340e2ca17583556a8c9bf6eb55e2ee516e73d3a7d3fb9f46db10206f4e92ab0f947a34d4b1749e50600552667ed1e88634450be8fb49851d401fa1254a245675195f239e58d0aadcb6dda106c8c97af6a4061d61d85af980e52c5994deb62208af22ac7e6cd9a2340b6a47abdb1b6ca1e788e1ebe03faf577614a224f420e1b3a212968fcd10fbba989ee7ac8d2edc39551ce5ae5253d08604599932bd662e39c4f9c23147794292ac4809f11a2b6c09c7ec43ed8aa868bccbc9049f0cd0d4b0aa55afa84a7def5ae4ad28d907492b337ce797a5bed40849ed85dccbd90af0ea7c181b0fc36d242caaad5c3eb8701e1dc33045b10961cb92f2a490d984f788283eff5d34f1e05f42b656a2a799c9a3804c7e5d849c43a1906296c50403044b4742bc9ec666847ec5bd759bc1ede9bd97b33a11973da03c2710deae80139ed84e1e9310ac13c7f143145eba24b138b38af419e873a2232bd0d6f2c9db35953f51fd3ba4622c82fa13367fb8c9ac0ee7f0ab78aa0e57e70b6104f2883a59d71c6356be6f80418bbbf83bcec5a1c45b89b065b7426fbcc27a616ee3c6004c448286fe4d0c689d8e0bb8df91a3c551db2e959ce3709a2ee55e684c4f999a79434907924218384fdbbffb780c339f948982bcdb863e47c74e39028eff45a5821afc829120daabf2d8c5d168545d5fc6d8dfc0ad4288d85180caf1f650a4e4cb2c1d20dc32c2f58ca2e51eb6371e82c0768a2455206c9dc26271d1ce3c2cc4335392490f4b6bf55c91c89e86b3d3a534e2515e76f1e1a41460de737398feae0177d040f69bef02729d2cd1fa7dc05bac588a84b6028093b9131cb446a84ca43014c357c270ca703082c97f4a06d1f5beac6b92f7d4c3d2a44258ed6a4cacf7aaa429d14511b3cbd120dceb5b6f8bc87f655f4ef5eadf8ab7b7038a3c18b1f4c316d83f6a080510b52310239a9712aa70d49595d142827c48b50013c7d7e876ab397d3e0ff548d1a27b79bf22d2f4b56ea900494566d3aa97e93547ff3c48393f058438b82a06c0729f1c89da9aa6b5768d0c052ac1bb424764b6358a6daa04d7b151fcc496c978a5b0a53c88a1d5caca0321a87004a658ad85cf79c014dc0bf4403a6e7da6950826098019101f95d1163dd6df427b07c3201e8544e0ec497ae6ee7836ea7f0c58f4e0e85640d1273508aecb3b8a75a2d3c63fc1712dfe54a2582669b0c28fd1d1511df10fb706fe7b9008ab58161969cd28ce697e83ef958bc7c780b5e2628b6e2545c075ffff62efd9847f85d22ac9d9f8f9012feb4fc25723c06a187ae6af47b135d099e0a7f97ba164a30b3fc914ed020f0f4f3eb6f6ce4a74ba332492234ef125dc8c175eda800044b56b67672debb8f6b72b148f99163007e44c96b2988fd9967c3e2c55426d79570e370e777a3589c65320004e1ecdc7c7702aee5a738177c9bbf0dcfcd0845955af15fde6dece6e68ae058d2afd383d99e16c319c266e31e152c48481a343ccfdd919237b8c0e018388712558ff7d53089b22dd73b69170d7c59c0538282c261f0877b84fe42b9d72466ae59ad6878d0c138affd462d196fec0372ab3bd1825287fed87ad1c55b8e8dbfcbebb18ccac8e633b1b0cb64de7d1b328911dbad40118974c051ea1d05b21deb611c1297b1c7a4c3488cb9d28d9ffb35fd83a64a4cb783a4aecdf836f1d057b67d5041f0f547e2a14eb063c7d38d9d96255713a3e49d46c85a42ccec7c273cb017555f21e410b8fd1bb602710fec26d66528eae7f900bb0de63f79518c22ceb0aedf817e12dff178217e4121526a3c432b3d1d24dbd5741269fe6eadc5893f71b3ce9134e413cc6f39d7da0994199ec67994b99bac72838a030faa2e8276fb283cfd8a058a0e57a4ac863456259b72c1a514081722639360d29c9747bfdd18454082255ef2b79f68bef124b3ece86ab2feb934b7777192e571b74451fbc34422983215fbde56752c2cc04597dd10fc4cfda86031185a661576148acc59e6cd33d3c7c3fa435c1360392d26798649504e993fa6dce627940274919645e05a26bb02c99662f8084ba8295561ec2bc3ab4cae550499b0a0cb80a13cb66fb4b470778af132ea2d21578ed610af7fd3863d1a21734b7736f32e2c7aa63d13217cf7b354269b7950b6375938b69e4dfeaa0de6d576fa9fd3bac8d601187ea76ef7ef20889260e9205118e87572db9fd6d4d92bbc454266492f073fcc1b9422f9ccb7059f8035c2003355de9b0909fce50e52959725510e76eed76844dc9d2d2fc36e1ee5ad9fe26e617cb32494e2f6c70fc331316040c9a1acb2d5dcb4f3a50bc2df08bb9abda09fa539bc98a8578940d91aa9abeb90488151a20b556c04b4da540c89dd45203f7dc5a92c0c857e25660a855c884c9528dd845130e2eb6774b8a85dc3e189ac3bd97c1bd3523d71a83ad3ee399cc04120634d8c09a1872a3008036d84016af791340208d2e401c7aed864b23ea10c0029a2c203d34d43bd674449d144242db141450c400518300777d70f2566270f0acc44487e25150fa7a18b65db73c7c0bdfc619dc9e76b514771590983fed24a955211835fdc3feff049d805e4e461730b63cf03f95e08dc1594bcc61561dc22bef1b8ec1ba9369e32ce64d78d141d6e029cbc5a5b2b24b4363bb357526d123aecadcc95307ab40e648b5aa60cabae0618e07b30371130789521aa17bf146077c5c589d09520e4e0f9879d62d86411de30a5e331696e2125e77af5e9333307e299523cc57e57d687062535dcd0b1822726f0cd93c41151daa22b9933471d1f75fcc0c2d99a1448d49a93f3f2a88bad539f928f2a79f04842d7f76407863c27543d80c09ffd83e19bb20629cec0aaf0a5ce1800276c3b0f76ec927094d49f0d32b567dde055698b7fcbd2f53542296bf7564181947182f1e8b84c49c48a8166325e8f4ff29b7b5e9e58f932b0545ca2a5de37a4bc0e8172ac79d74fa22037eb60b0b52eb6d98f27454ecbc22752060c1c4284e0dba6312d36569251d740a017f287c5600873c23425da6a575685a7c010d29fcb1bdc6e61f92a9f0c166172c759d2114839ba2a6e0176440341f30020fdf9fa1fa0c18cf953314268bf12a3db4f0451bc646bb3a96a187bd91980c7522f60281e01e921a43f13bea6c4d3194fa206a75a3e70fe7911c188aff91e2eb7ea1b7871143313afa003fec8124175aff87ebd67d0b856e712b03ed73d1fc8f6cd601d9fc8d28c6427530581d2c94c85c9fa0b06657e8eceb23f77917918bd00a7a4c7c9cff775cc9d623b18f051b004ba15a773f51fbbd9901242885c625bcf4581b30ddd92944a13af068ff240c0a8d48c5bbada410a1179ea25357a1de8f6a61d8e828bafc22d1a922903a9986bf71f4b6dad4c9c9900ac8eb892a285201b038a5fb04e6ee792119db1e133ff9b620264ac764eb563c3a8d632c0bbfa9c9a113d43b8444a0fc00ddddee9f6cef2929670af2410d3f1b8eec1b2a53ae6b553a3a49a2c4cb8ec7efb25a9b604fc2bdeb6654ff64ff482d7589d90c39cde43d8771932ac9cc746635b79066781a4133716e18137134311a1124e8ee604c1eb3b2785d93e2dd3a95ce84b0334422959266d0479b95cfe2dc972e06b2a88fe8bcba9603689ae18a0412526c2d365ed3c2291b8d9ca0dd86db2892ea001a075933319e7a03dee3438a2955333175cdc16ce67f210eac95e00f46e8373f756d12af248f993ac93935c9689fe42499e1445b53ee54c6cf5a30dba23c934d9d2305f47e123ab801377ae17fe1522ff9d0b50b976ab11b554e4ef8311b37bec1f16506aa801fbb4f71ac58d286684630133b994910005aa1000d28145d2b58c71ad66a9d2534a6611bd3900668aa00263181893b81c94ce289b1d9cbebcf49fafe2b6080b189e00deab301ceba87bec0544bce2248575f9e7bd738a6e8cd82eda003a81f7d4e54661ffaf2643a1ed1e9600ad890ec975921c6d11d63f353fc7007d38701a8c684c8c3e997a1abb695165a9b48bf0ca07e894984719bf40dd8e0e1346a1b8023fb6d265447ceb14d54f2e0acaf7e99111165c80f285f451ee1f6cb2c9d6838e02f08b231f96be856807ffdf5b0c3fdb3ac19f4e6042048d92f339eb0137ae19e9223acf7cbd0dcc009d965f04fdf7ab88512151b0b5ca9fedacbe85dbc02f73cd05ff073d21f14c424ff9454c5e6c0ba70e44c906392613792d9c35b668428959cf7bd9b45f724c223f2facb86678d2874585147a8f834483d4a6fdb2f83e4fc94913912a1e1324469bf2d89a2585953b7c38451f6cb5c9a0abc461884b64488913b4028570361dc95b92142d9ed1017b5acedacac4a2ccf3b4e18164cd94f6c719d0701f56522949075b023ee052d97738b8471b96888e783dd84b397d8a77297becc5e89f6bfdf92d94f03a7af08a35bf9fbfebc9194e5040dcc3bbd2601b1290ad4455f668985c69da4301aac3ddfed499e9d571df1fa32cbf605e975d2f0c339cfe5be8cbfce6656aad218a6588ee12d11ea8fcb0afaf357a60aeff2408e50b4c52534d292425f267a50cbe629ac06f12492f958422ba89a8a704ac488e3c5790504fc23a2f865051a60bf654e0fd3858af03538950b173f075da62a82207522fa27d3ba8f2edc12e628b2d7802ca0b35e3a70ca50508d7d2d0745d054e1d097d9671a134ebebb4258ffaf94ebef7488ece5e1e56568445c29e6fe53d6931d20183236c921c0f94730a3f059009115b478fc64555959f07afa9895bb9fc4478db8def46b006e2807eea26ea1a7382bc4e7acdca13a9f8155776885f966a5dc8290b00c4a4f44fed20a911a3c11d83cb5726c8fadffb290ca7af2b73b7dd55a31801d30aec9968faf7d130acf49796fd88ad6e3495b41e75420e156c84d44bc95f7ea1002895278118188ea5e428cfd4f48ec0f4c3addeb6ea48f08a20e02a65f49ab8c8b07d5a54169fb2d864f57c7cda35a37844998bb49756c318bd27bf45dc321a3693dfa68c1f7aaa4f084525c9db0cd4d620b14ce2a63d0731e26c5e81dfc0babb6ebf2b53501984de6d03c204375ee00b19702304076a900e051a98940604acd2854b82f860d155c5c0a4c88aa70019b513a083cfa1ad028f13585811aa76f108a094d63f1622f058cd0b8222df46dbc7aac093207b5c191564a15ea71e68b9aae2c30f82a137e8a94f3da1099aa1b4f1a70ee97a2f816f0610039c69c6190f6efc6529b092b3c0f44ae083f052c8e976d2b233acfa508e08a68e197a08f651a4b947494417779bffb05448c053d23e2b76caffde2e3671ff172dd19e5a4cda3f28f4de6840566be1b04f9c6a940cfff7e53b640a03b5e3398084ea589f06c7e859417508cad19a66740f168a80cfb25d322fb94fb114107266327c8e350d27466f272a1812e323588592b9049425180b4568bf61bad4875f91bfb12102f6b2c5fc5c73e0afe0640611ce5602b2a8ee391bf16f9ea5dc49e57f544ccf285657be3e39f836dcfe11fa1845b9ef4d3b77577396ce585d9a762533b10f228865c8db6609a1c7abcfe68163089cbeae5251b9989454eca5be2ec73aae743f8dca7556f5881f9051256af5f708017c5b298d51bc2f85cd15a8f3646ba71d8ef17a9d5adc0b2ccd51b36f8a96258a93558c5b0e4d51ba263eae3a9cce4e459c9fa80aa8ab9bd188325b1c3ea15d844c27a0ba28a905d020fc4a46818ce2928820fc368396160a0436189fe19e3d1a4da2b8ebf3da8df928063c42d8ac3f841cb073d61a7254628e6cf55a7d8c1f4748e662af0332e76028350c9fd67961a90c8aedb7bd6c3f2c8684de310f9c199441a4908d5d40fd024f9cc4aa4ed2cfba264a7b27977b25aea404741e61832b69ed40453dd19e1ded2acd3ac4be9582b19ad85e15bf1ed04726dd5ea8bdee05c5a95eeca4084b6571212949dc9017f271ed56d24af2ceac500d51982e3a22aebdd6038d91e2851d1904abbdbbea86c48b8075b015f7323e6f61bf058a5fd07d30c33272acc426720f54443675f0432ee646c6fb06a82e3ef63b1ce18124f62e112603d1c4160de7059e5824132ade1588811e35df58c206fb9c9f0a0b4c924ccacf53fd04242f71ce3e33b922af40cbd50037f2567e907cfbd004dc8dbb9dce22027e186689948eb92ba8e4a1df0fbae1f75f1b1114df14b7de44c27dd8af9d7511fe3a93b44e683ca61f454d8026369a90e3e1159ceaf47ad79e9d1d2b79b496cfd3ac46692c35a13bb3355d34fad3742642d4bf91b95eee6851735139901a06e058da2d1870c48f042d58d4c42e06681270967f1c49903a1e81b5160948d4cf20185f4a49f89ec82c0648aa4b82be9b1f781c8603433902c84a9817c631b25689011762bf8bfeff07920933fe68ad1b11615b784582a11bbf671a42cef153bf010fc94088aaa23445d80700722974de478a20aa280c0eafddf21f82340b11488091bd58dcc0da188c62aa7270398a500ce8cddee6f24afb7bf2f4e87d2d0a7eff2b501b761f49f81401587f10537a520a334a3032cada6996091ec4ad01230bb20cc5bb4f63090fc0ecbc7fc6ab2f34de07c7550c6d5e969a9005cd594584d180767e5313417e3940a63e6068039c14af7e0ccf8c4cdc6db017d1384b61a6e00e3240a46383d184475e0e42f267c6ca21228197438c9b2000018181823040c38c43f6e87f10505445c091db775d9dd35b8b917227e0d4ed22f4970921038faf06af7f76fa212e93212d82419bd8ab11ecd25475c248edb0b3debf4e43914946922a5c3fdf86c1f5409a565d12ec37bfa26814b828a6206997c9328867b3fb9ab1efb671a136561c58954131792cec1d2b12fa14d8a9e6fa691459a15813c3c019d81d5de479511e05b69e4fccb1517956c058cb72db3ac641222582711d3ba1ce33578d26ce19043b904f77f5828bb7d6e4dd24ac755e2b4e96434d1c4dda16d03d348facaf6926ae46a12a2cdfa6dd148e5ddae72da6c0b0e0ad77d6445239323a7930a398081ad743527197276dd5135e196cfec9387efd067a946d8b0db9caa719e8184e92ced38e6545e345d46aa87782464d8e938c9488c7592d9f03007128502ce17299fede9c8b63c40a4cffe2c1027518ef3106502f3df86c97528287991c8e38f189c67fc00286862c59d259ff4e545e8e6ee4c38b73f7257080f3709b7aaba290de944332e249cd75e17a35fd238b461497dce44e82b5547693a30cbc051e17c5a566133fe6b4d015f85d99c1bb2bfe78456302ac083180fda86224569cf3047f50f46461363dba6eee7b16f5f2a4775ab780f21cf1bec9bd1178ff0129d008b098eba8daad507b99467f5127275c68e4ff60e3398fdacadff15f11d04c4e04cb3cf3b28e6ff2350f250a10ebe89126fed1751305190e061865c48fa5a630c513860b463afba6828c7375c49751833c5bfaffedee78bb66d98945c2c3970601252bd4227e33968367e245557b14628c6254a3ae87adfc37ae17c3c9c3f2baa3f64e36a885f7272925b79c0f655ddae4b0bed8febe710a6fd0622a474df1c7bc830f2b4a5ff58bb5f6927ef85427682e7d7d559e3b7bc44cbc57c3a166b3e7be2320098e8f63511ba54a303c7f02cc9fcbb08f60154ea222cfb9bf16e88b95ee1748a435bcbc365a916b9b3168901c76a627c30a3967d9a94d4c79993186d97a7d71fd2aca8845ac91232cac00c6e92ba6b280a06ebde4d401d2d9da35df32a7d2e50a8d5973a2b57df2290e8d6db770c8e7fb3e03da965c2cac951b55cfd58c879e6e625481b2abcedccb01f2f6dabd76329e1ba17908749542c69a7f7450a43baca1159aa03405c11318c1e0c71cc99bc54858cb945362058de66e5fb7e00895f912c08a8c72020efc34fa7aac41986393632da2713ae35a8ab83588cd4dd1c2ec078b341b0df28ebdae7cc49651ec4a74a3e030de94ff89c2e1b20d64aa0160c9ddf6537b1ccc88894a00789dc3ff6c7d76f805711ab3b3891e0c77fa15ca58a7c498b26aac110b17ad515ba45511e1220db535bead87ada96f330f670d9c801712e1ea87fbbb73592b0747ee8f050e08cbfb012310ac3c39f060ac26ba89b5546d8020ac1bad4e3c25ccceb28c42941b4ac695b7fb93a4e7563d70ae786a7dd32ecc3d22cdfd8dd0c4b71caac75200d43eaea04a819cf0c26145fe35a79cc94dbc8fb75e94244466f2b588d5d69c5467a84f8e6590f3c3715d90b61ce83ce802f8c062c5e430c9648d39dc6177b504231424e01c7cccb8326f84d6890e1eb57b5a70265a7feae6fc20fc11f7b3db31591031238ff3b0c3213a85eaea863d800e3fd0f7e92db1bb5f2032e9b9ed897d295013058ca368cff1649eb395d0d070e547da3ab2ffc058a57e31fcd9fe7dac1b4c5737abb176b35c2ac681d470e714153d0511218144ed2a60765c0bfc726676eb803354aa0dce01affebf9dc19dca2b0a81c470b9a42d1b08d4409072f106dac5d3e92aa7d609b99b22a380779a231804a079acb1986f8566d201f9f7f7c598550a1ceea09dcab76fa505f42533a1a6cc9122159610ebbfbe96a9dee848957b473e6641ba65027657370036a695ed8ea5a710412dae00ddd365c1fefcfa0068c044afd6f3edc0fe28ba76215e0db4ed7f6dc50868e96827f1ad669c8a8836a7c0cefc7cc29644a512c03c2d4772d35e485eca8649fc5f734b16c95c994e4b65ed7aac5d7cbb46fb776780901cb79ce3f9cf60986ada99db2ea044f52ce6cecea31d40324b7901a6cf060693029ea01b00408ff331beaa2af9f47adeb578afce2c6fc025387a6dacca88cbca017055d61f7f0822ad1bcccdb652e8a6f6c4bc93596894cdfaf2328452b056b9a9f9defbbf0a12aae08b97fa84f767babd0f9de7a37b7a849001ad36c2073891a30816bd663119fb8cb0d60ad68a01963058a0ecc33af16fee97fcfe53ae94ac802ac0c2854935da759dba5ab68c0110a566d31e58a2a333a9b54e45213330190bf81d8b88b46e58c57761caeb82746b8c8b713c007c3f098a90febb00a8940bf2ca7c38b78a3375f1641b03da1d3412a2f503839a82544459c5d2a0fb9387b7975a4aba4a57c12445227b9b12496339e156adadd086e8b9999c951186a1caac625ced781bd43141a7e38104975e89f7ee9f9d87e2474be208393c3d593a11720d0312c6b17288ec2cff4b65616dd1750d25d5bae0c302ccfa02169ff9c40f3b716548d6758e9d4fbca9d5529480ca92141d5f6761883521ea696f2a525fe57687676b4f96e2cb16f9c3ff1173ff3218fa1d4bff540d65441fb5bdff22fee1b5b4a5d80ea3c10abcc774b7fc2085d75605c3c5af23a33f83f7be0fbf8c250226898defb907fa1da95e28447f9272c53c713b30acb08aee68c1e87a2c25842683b6d2df79d1213aafb2e1ff0321dc782e980599f50479c0d48caaf3ddd4ba6dec74e8920a01dd14212b0c82ddf3d7c59e3000c8864ec33c796d4157ffaedb94afbe1933f591981d14d45f3335cbd93b8c3f07b0115e8ec5e8b1bc2b5a93b32f5bf576f244dd00371b81a8d043d88476dbdc68a1dda50d48c7c64d5fa2f6d75d9b1b0d046face55811e801081e749ae0ea5e3041111ae32110d9b4e1bc174b44ea08740b365958a5cd20b610186310eb3b45f5753194adb48980ff995bc292a811ff385cba9ab2e5d6754e45bff2e93882c085bf3a00b76f269308f51fbcfc3fd09d4269415faa8b45e25d76e82c5833422f6800e1d1b19b205647d85827644d091ceaad82adaf1961e52e92684a71cfdda004ab9fd1a286207b167e865ef7c7ed3d5db44a2bac0542185822f1d9f141bc2744127c2021c631c46c97e5c45ad6c11bb1a6ea6d2430b204285c98c4ba0483a557995c44a9fa404ae52ede822c651b21cad155b35664fd53768ff629c3f30cd262a9c2bfddb402a3e8696afa7376dc3a4a241b2c754db237847f7874011b3893d535716648f221b2e6b0370365bbee82398639b82990074ffb1c7fd39b422a5a5fdcfcd617538e2e0e417681ddbb918fdc2b02d6de2fc2d08a6a2b9342fd4a5f43c4e9d3724a209d3f93c12320851f54800b53040f7070768ecd11d3d211e5656607f1957e576c0c167ac2dc68bf20746c8106647531161b3481ba4f866000238470938136cc7b7d7f248a3b6cd456b73af46454c5ea10acbc977a54394d3cf8993d51df3a648d8486ab4337b5c594018cad758b307b5cfe9254970e0532d669da204a72aa7a2c3a0730705606b4d23da2e6798330ce68b27315eb5b2618315b0e6e97170ecdae65df31cfed6b5983ee8ee8bf8ac899266446b164397cc30e734b890538d75ce49d988b4b437014767ea2375a8a62058a4cc07ca51895700410a1f78000f42485f3c1d143eb4270423ea60544652c1b23179e72186b277cc38ba7a67045345fe6590103e8ce09da7cc327a81f0a1fe9f2a26056a95252899c59a2eb40ae8588141e3c67cf0b13bc9de63b51eae809a5c05c2b898cb0e43d4720527904f20f047e22b2418259d6194398970569e6e724c338e35905adaaebe5384e5134b5cedb7c10760f9253e2d906db51cb015128d70d0f4074cd6531e8478d3dee4f29b7c6c067d61994c8e5ef517fb25f31f3bb0bd105fe081c550097b0ffbc659a87186917e94dee996d9a72e45c2b7ba0f4679dc118bb2bb13f9db8c666627bb2926d30e42c2c7057fe032c8121ac2fd59900f76502989ff898ee3d4620d6cca0a80d209a8b0d8e861405a3c95d61190daa0ab11908b5111335cf18e3bb991a25dc63a956771d18cc90717830411d27367cd853a0ffe0879c10d2b16363f6bdd5cc3a9f84f689c711041e0edf4f126a5c499afccee7cafd3479ac8d961ab807c5d4401637b11765d13834bbd2f9ce3ac8378d06e1eca67d3bd9b7261d7e883748285be8efb3e9b00fedd55777d4d744015b99b94c823ffd8b2e2d8ac54c832930cd462d3907577aae53828edd752add0458f5f98704703cd0f65fda62d11336371659def9cca431d847e60c241eec3fd9ee1e72d0dc1222ff28b9cfec789645b1ca1baf6352a2987b717f98ec8d93b4011925bdfb1269c5b15acffb1d4935e97ad24d23fd4eec44cf4f0b66e8f583d4b9126a60d56b7040dfc2f367db46220ac5488bc2a185dc439a6f4a60ad1df52785c898c7d2e4f064960d611111219cb9c54619cd6d0c400ae956874da2e9c123863dbd7f0775d219df08583b1c7e2c61656ebcfb07b73c4db756546ad126d890759dfaa9a0b1ef0c378f73554a3c81c083582f4652f01ccdcd1665691d6db78cd074cb26988d616111acaeec67cfbbebfe367b81170ccf8e8bbf4d92f89f71112eadebddd05dffee79744e9ce862abf162e1f3fab8ceb17be08b28c82321f5bc23fc698f365411259561b28edb150deaac299fdf4cc6a9ce994d0e8830359c29f11612149921d4495cca2a3c85a4bc63ce55f0896c812ba82d6132c615e25811897a742bf5f7e46aea609d1f2f2592262f79935e63f98ac445e0d42a37b8503ce4bbeae58da715849d01425624831808818d26ea031763b55dbc2ec68bec735c5b6951c1dcf5ac14ef200c43d09ee4d27412ed62e9bee17e1a1c4376d991d6e255a473d951153942564f0046746fa5149a1a91986e73019130c9def37f48deaceee539a2ebe6a25eb7145bdb1786c401a94c8d93a5ae5758ab2fb28d6a14ae0a7537ff482146589da62c7cb0fcbe34f726ea7610ca77128361faf0623832ed8a955244007d0459377811a2efdc499d8154d6c2be1c21954ecd7ede75c91811f4d8d1f002fbff7eeffb1f114a52a4251cae195c192fc94a639b1855aa25d9b44f4a17aca493b4b2c43e11aa623631db001820723207a8e2117686a611be4891160128ab917b724badae84a55955a1186c96b5239b30a1c570ff7e4321e1274f6fb00b5dc29cb5dc68090a341051507867cd60b83be3bb383c6c39b1bee8d0f817da52b60e30e8d8734b1c044561c52d90c4e942a895b32e32dcf8c52a1a0df29d48b9f132f930bbca599123161b77bc1031e8fab64fbc46b705085a372c9bfcbbb5e790e14fdd8448601745e049e40c503114f10705a9303688c37ac37cc106e14a8082820c739bc8c5d11b1ea41ce11cad091ec77209b1072449d99992926d148efd5877388f4c55640fa371111111149713a3185f1d849bd4374ae6f6666ed6e198412e713140f4c844221259e3899c941c60810324230e124f3dba65145b28d0807624266893b842c81832558e0ae4d6ffad2404b707179f1dd2f518025b25c19f6339f93ce464b04d1b25036e226df038a1e0770ce6b25fd7d2adb9cab54e082224aace1aa183857c1c00555121c8657922bcb527c088c2fb6b8628a27963862881fc6f75e7beba5775e79e385f75d6cafb5b65a6aa795365a689fc5f5565b6ba57556596385f5554c2fb5b4524a27953452481fc5f34e3beba4734e39e384f34d2cafb4b24a2aa794324a289fc4f1461b6ba47146196384f1450c2fb4b0420a27943042081fc4ef3efbeaa36f3ef9e283ef3d2fcf6b9122752ab2993e134af81812c44790045c09b80e705d437c0cf17180ebbaaecbb9ea05ce556c3857ade1022d465c385a76e8c142124de881730e07074a428d9e9e0bc7c7909e9e0b67fbbe745d3e7a845cdbf7a5203d489020f9a152c3054950e1806b8810426c49a2c7399c249024c183bb34924f4559a205e742a12164e181194ec875e4c805835c6038e7809880732707389721c0b90de5dc5ba2c6e938e765892c37599e736e892c37ce01b13d80650658b8d872226523edc2b60c0b75ce552470ae1a8173d519305780b1a31241082a10385799e15cf501e72a0f385795e15c4546c505e8ca7565872bdaf5b16b1369590812b9901cb99cabc670ae12c3b9aa034ac698c281c610c381c6b0c3396783f36100ce06dc011a3850078ce0406208e140626c0712e3090712e3030e24c60d1c488c3b1c680c1a071a23e44063f8009941c608079281e240324c38900cc981641ae040326038908c180e2493460d0100e2c3399b12c4c0d994e007cea60453703668c4381b346e703668dc381b34a6b3412389b341233b1b34ac0000089018381b203970364092e06c8038c1d900c982730e861f352019b86005678347e56cf0b071367808c0d9e0019d0d1e479c0d1e3ace060f28ce060f91b3c16373367834c0d9e0610167830719ce060f14cc38e79c93c10600d0508522389b2a48c1d954810bcec60a206763851c9c8d1586381b2b14e16cacc0336383116a703646f0c1d9182108676384e86c8cf0c43907240039808a0c71a022d7818a3471a0225a1ca84817072a9285734e060890187cc02003801f54389b35ac70366b60c0d9acc10167b3060a9ccd1a3070366bc0e16cd6f081b359a309ce660d2d381b36609c0d1b30381b367270366c08e16cd8a0ce860d1c67c3061567c34677366c949c0d1b5dac3aa868d1c3900c544d66c0c20426e14004c0c2396761e811d9302c6b81d58215906003658c5169002bf1cbcb96f2b92e148695b0f4f011f299d6fc756d9a490f1f278f42994c18d7ff2a692e4d0ca072512a1c43005c131c0f403b6678f161e424dda350a46cd3704c9aee72048c2aca17516600038ad26570501c284a0d03a0784004850482228232c46f3ee327cc004858c139f743bfaa00207146483b791446d299ce085670820d808e7882db7c0f1f27ac9f4ed8cf7552728411ee889b239cbb7086a4360e8e66c5b9008b6a09a02797735d9ce19c258413239c1399b8171c9c136632615c046a2285738eca55d3c486dc338c7b2ad83ff1643ef34e884ed8290b3101c085a3653ef35aaa08642c9cab9c174e9034efdc153a689834dd85eb4fe4845d711ca413a40609a09c2a9c73f11aa2973094e6ce39d09226382d0b492e4b9c5c38ce5511908073d5155a6481c51556541170aeaac23997851e112220254b28b9ce85349f5d1e8571ed3a91aa70cf45b445fb2e5bb4c722000732620e289a7405640417ae8a73ce0de7dcc9818c9001548414404504c11539632b02012eca22a6ec684aaa075410d80194848b93d7342f4af24149744217ce0f276c499279e124f181248f2c74c2489a0809cd1128b80ba79f485bb454e651a92a9a9203547fc276360ca3d2bb682a9a2ee5f82954808e3cd0919bea012f8ad5c4838ce8c05d3854a450a192af1f7ef8e10607327285112b8c6c464a2ef3a222174ef759114d34440432e2e4428204897395028cf4c0b182bb709cab4e385c403805c099b291ba1799b817ee0567080e0e209c18409809ce3921a292be2e9c2117cee83a91aeeea92061c5772c07a71c0847a972b330e5d22a55b00ddbfaea829db65c21ee51da95e9d20604934b350d08ae4b289f5d5aa5cac9e70a09d1e4da3a21cd35bde9feb191a69d6c5a464af95ec28298ae2850b49086a30de0ba4223d475c248a31e9f61ffb409097279ada4995ca19e28533d3ddea44f3da14dc34a98178f714e429d3ea947c890203d23cd7fcc7f8d74d223be85eb6cf35c7c8954e244b6910fa974699c84527244fb2cc875e928574f129e233d26edb38f11d952d885f95c1b76f2822db942444ea44b5fc1a6fc13e9dafa297585323fc4c915eae9a9728584684268286d0a725d214d47f1c1b66b4ba14a5ac88914e4ba423a4f52df9bf40ef7a82a4f301ead7bbfc373744ed80e96792d276ca77b272305880893078c343dc2763650a8090248091d01858a848280423e847c804235211ae750d825248820174e914b4810d73524880b07855d4382b8825c17ce10ed62420910911d8088b04048102dc229021af205114ad3b614e63551a944da22da926993017680c24a25cdab53496f27ddc57321f99834efbf06e35c35a593aad29602385791bc499f9caba278f17de4f382ea3b5779e7aa2a5bd59d733a3818f06a575ae45cd523d2a492124e4261be8aef5814cd7b269bafe24b5bfb0ddbb1b2856350b60c2b692df35c48272b99f6a59c0ccbb29ca59648072aa307072ac33a5019a732ae7020325ae04064d4e140647cc13987c30f34385761d9f4bf3c4f1441404123998a708d64d2c2057590b411ecdaa654c62f2d851261db8924ea5ca238d7c4e1887a8934e238ce554bd4545ab8dccca065219127651b480045f0a46ce326edb34dbb3c29db400230c3b92a892a0b0cb0800470d16086730e732020bc70ce69592872c1c101fd8045b54545012c4e18290157c929c19a68d84ee5e5c27caa9312201fb600f9c0840e91240ed483064e24eda32f6d4ba64d237ef2fb3aa5b2cb08cf95e4f2a24d7ed3527ae42583788003c44314d00e5370cef994737538e7749070201a9ad87112b9e0e08076d8c13937e3403ae051051d74806dd7900b67c8856386734e87098074f8e22e1c6cd4e51a02d281892d8581742802d2210777e16c7ad4e51a223a696ec9e09c3b8003e53085e67dbaefe9e957171c8070a8c339ada449498efcec3970d840381cf9296de1d8a675b27003d00d5b38e7f475556f806ee876dc306409900d77843a699f309216900d67f038e78470201b504e070ac806e7b9904035c820d43594f6231c2d0b657e43e9ae455e1c880633b42223eeb76bd3d9e535ed4ba8cb48f7df77100d34a01998009a810cd00c61781356c59fb01d9eca021c48e30c2326d2a5e92ea38dd431932665dbc72e14b65d9bf6e22b2b9ce6b79fd229d397e782ed27be633b4b743c29e3c9f8898483b34da92cc7554f800090022d0b65d8a633bf916a54e0c3193d8440af9f9fc539e7405ec001c60d64a4c039e77c0c80869e295276aa289510545c48905c598ac31c2124c8164ca4914242b40b014244d7102dc80010700d11fd6c9128a49d4845b693afd233cd35928e1226a1aefd0807a747899e9eeb63fc527285fc09d3d9483ad330ec77096d7a94eab2f91f2b99d6257469fcd2bae7a2b5ab9fb4c64a1bbb34dd456797cf89846d230da54fdab5b5462ae94d1b3224db1ae9da36af9146d726c48934e2a4cc9bfc08e54324d3b531d1d3a38446d27a869d9e5ca19286c2ae93922b7465a46cdb98e8d1485ae6a7f428f14923aefdf531bf89a40c40ba707050da8573615cf39c89ac2325678ba854f25d946042892ed79052d77ea489603e9ae742f239619876694aae90d64b9ef4f5132b527e96743fc587b404c378f4a675946cd84edfb01d6ca79fac00a1a7a782e25c858473d511ce554f9cab9c385735a9b273958e73558e73d592ca08e7aa229cab9238572171ae3ae25c65c4b90ac7b90a3b575de72aeb5c55abe95c259daba2731574ae7ace55459cab42ce55449cab86385711e15c3584739510e7aa20ceb9984a08e750a098202ef4733608a60b6ea46926baf649806094707ad3fd025940f8a1881ed1e67dfcd75532ff93792e18d7483a5960036449f7c34f46da9b17bfe37df494debb603b3a3c8ba6752c67f3553a490765ca9c9c3c14ad5452d29f28d19bd6f1a727be9332944947ebda3be10688620093cea6692853baf89d2d9936657ed358fca6b72a3e27d276d25c7cc953c9d934cc89ef58ce9529234d3b51b2691a4a9456309efee391e81893cc9f30922fa148190fc6d34b56349dcc4fe1a714763a29d1da80c211be7084df521b094b4e17bf138af2f239917acf3c2a14e58fdfb2fdecab4788902141827c8c886bf65c1ac96b58c98f2e8d9465d8bf7eb8a6f7c9a3b0ee77b09dccf74cca97b2a5a49c9e54c9fca98b940ddbf1396119962e18140ce3f1a2a3749f619b73555509e14a55faa6519ecae6ab6c1a0665d3523add77c1fa297341660b0cd802114f4a259de34547319136cd5ffddab09d13767914866d3b57a89f86e82a9aa6afd04fe984693d3d5aaa27d33ddaff98ef3af3a42557a8a72785259180eb4a92446f5ae71ad2b36b48952326d2a80a4a474172f90cdbaa78d4cf01aeebc24e3d3d3df912c0856d1acaa4bd78cd85b471edbbdeb42d855d1f0b691be994e2a102e5f4c473219594a0bc47a28acf89a4bd4e15beb8704e5db01312234d8f4e291c1c2af4a0e7da349643852a50272b990a4b9c739da4a7943c170f0585f1f098a6e0830b8789a665a12298868393615e0ace399c3bc4b8c3017734b9c308bde92e126d5e1389fac96b22aca73451f74e90b83e7929a4e1ae4d5f5efc09074724852ca4807217ceb569213f7e4b100713822868c1b90b448189730538913493ce34ca4a0949da8f46c4c4bd645e64e25eb4cc93b24c6f285801852f504041018bbb70b868c885a365432e1c52f799dfa279f49661515e8cb28ba6d29f78f1fda49f8085734e2b958ae4e19c734bf8411362f0c3094df0f1c29632a9e1aea04c245dcaf18252b2f92a4e7c152d554265a92a3fa9253e27522f614efcf6c44ba672f25cf33ada97727c4e240d2be574bfa13ce74a50a6ccc9c9a3a4e474f13b2853e6c4778f2572c1c19157e21513f762e2599610003bee703d57e64960871a3938381a70ce959c8d1d315a162a22f219c64599130da5331e1ebd699d91a69d68de474f2975af692821ed3a614374965272651893abb449dac96b97d6485b32ac4b172da59dbcd7b011bfb21496c415d2b4d4a6af54c732d435c410ba8b5f7285345411249d2b54823ab238ac0e22ce21810ee7423f7e0b11574f7fe2513f3c3f1e891ebf456b3d27ac27d3bec42f6df33e5d304dbb3694dfc23d97d2d642687eb45d43342c57d7f4e8228dfcbe7c4e244e3261278cfbcbe744fa29f1685748f31fc3b2293f1e89aea3fd7824b09d9d2204c139a7372c0be204e0dc0f4570e29c969534c79c4b7d400c2dac2002173304439048496fc08b21c4c0b92148a17d17021c2e3b91ae2e58e973920f06854810f0d8bca604d705206ce19ceb8273aec2c339f7507ad34ca46df35a912728540f4d133f988013651ec5499b374581a49136ad6d1acbb8365d467abc68d3cd75e412e2459b6e8a18204889e4f955e432408f75b2344c0b429adf7cc9f7273362084164064bc8e784655dbc09ab7285b49dd22eec749d74b664060b122ac53976fdeeb5d48c123dc00040a6cb6420660b2b5441481091460afdf82da21f60f27031565c4cb65070ce3da18606cacf4977cc39e704e75c1398e09c5b0212cce08111ce39dfb193eee277bee041cc8954ba92c60ecc082d5129717638e794e09c8b41c219d50e9a60430702dccf496bad7b7fc24add6ba42ba44f9a37e1ac28dc966dd3bd63a7cba77a7caafb531729be633b3d3ed34970ced581841618a18329aea4831d9c43c21239e88096855026ee459b4e4bc8018d9685461b29d3453414a6659ea4699a0f8f46d2fcc9377940144ddc20054ec332ef44d7be7461dbf549230dcb1c55dca0c7b9279b88a64cefe01c13ce668e296c29d3ee1897214984fb8e712230ce55cec5cc01c539d19b6306e7fd17619b480e2d38e7b412496fbe8bbcff72d4e11cf64f72d8c03977861c5838e7b41fbf45e4c5657e4b867511fd8fc9b1849743c76922398238cd460e9b38b4e07e4a28948e630971cc11470a9c737190e1e29880abd488630638bae09ceba20d2b693670d801870d2e6ceb7a89005c0cceb90b0e1d4de4732265457cca00be8bb8e72223870deac8fc462a9261dcb929dcf082730e083fe84195b2418ed3b2d04fb69d7c119436d580053e70ced5f4e0c8d549a66a8b0d0daca065a122924b119e695576a43ce1c9d9b17284288b9228a2d0156c4ae6b978522f615e2375d12edf65db4859a6491769c435e792f92a1717bd5172ee44aa3245679b975c4589288583c349993f791f112a777fb2c23d4af3b26d3838da136de46006569c739a96857abc13a492e884f568a45a1395b49685341a9ce19cf506146c1006148c5833b0dc68432483369ccbb02700b90139e1004b88b1630e3b66c8d1fa93386f851b2b2d71ce6203948428ceb935d4b0c670411d5f1c080974683f2725d1c4b36060239d489f05251296524949f71370ce5a41f7524a2525ce596968ce592a38a5be73560a3a29037ef31957e29c85025fc276ba3f91beef6268609ec05d1354f8a3b32fd0702eca1f9d654a34e7ac119c11513ae3a9c2a32519c24dbc62e25ee4952f3610022b032070ce9d9e64dbc94aa99462724a614c4a5b6fd84e2f614ebc13242f3a8a8e7396195b86a1b0ec64c544d2a51c8ff168de33c17632c6054a673cdea477bce492f63ad8ce168e41c176ba3f59f1a5adb19dde85f3d8ce16aeb72a5a76cefa80b326e00117657f429ab58c1fbfc5398b8c177f3c12d61862e8cc23516ad24ba4518ed5812dd328e72c0e7452962a4d71ceda40496facd4c4731276653ba5b6c947c9986c9af6503625534e7ac4e3332c4a7f42d240e6b7904e5814e7ac09e492e6a4d3887b9e9246f2f1504a9ac4493d7584d74e9e443a914c5dc94f96d2b4cf780af0b3c439eb0bb725c398fc2cd126ada590e827bf691e0b158c631cc3e29cc54518ce9952d967d848d3392712c637d212e72c309c73d6175ee4987896ee4f56ba77ceeac2e2c2ca00f64f4f4aa5d48e7316069cb32e606d81fdd313cd02ce5915c8ddf3480a581390401180b0033a6a40871b203a5ee09cd37ce69dc02c318bcc32b3d02c358bcd72b3e0e0685172c1c1895cb8bf9204fba72747b8bf92612792c99bf429094934d2f448d49fe0e0641e95d24cd8c9771376d234ad974858921ce1fe0ac9e79462724afdfe843fa9f06e999ef2d3b1255ba651fdc94fc796244912e59128ad6cda09cbb986dcd4911b61eaa67efc965953a4285349788e707f05075318c01205380006b7001c5c1514aa28543fa85850b5e0065e627e40c50d80f0d38f568940f3a18829e630a246478e355c656d617a418e1d6010c7cb62f8c20b2eb8a8c2b929dc145448c100066449361848518ad027d265245e415c275fbade85e487ebe44b1454833bb828a99454202b20c18208400084174b2e80c5942b45ec00a2818ff3a5bd49a7ae7d366bea0d18442e221c114a7b037b43bf3145c88533e4127d9f05e1e982e56837c5fd158d8452a29150dae754429948332040750237e6704d92b8d1c42539a2f98e9d64b08613693c9bafd2c6169c73a0369c88c1111c062a506dc0015218c0675c60702b0d90507ed3b690b4cd5f9dc7a3a4603b950f653ac3b2213d7af4e8e1e3a4975ca1cdff6c1929a5840d30bc5823082035ea0803a406772e8803987143b370418ce88b43c0015a90c5e94d5363e4060b6250f938a7ad8003ceb9fb6fd2d082735ed230c3392c0d970613aea74adc4b3f6959a8a68b3fc95849c0698921439024417209f1d24941b6efa1e050c9a46cdf43b9aeeb3a2d7180cb4b2789bc4ff7a22ac0e0054ea60451203942c475f22551141c9ca0082730c30477b892f6557c3645675e6799524a29a573ce39e79c734a29a594524a19638c31c618238410420821842fbef8e28b2fbef8e28b2fbe8831c618638cf1bdf7de7befbdd65a6badb5d6d65a6badb5d64a29a594524ae99c73ce39e79c524a29a59452c618638c31c60821841042f8de7befbdf71ec418638c31c6f8de7befbdf75e6badb5d65a6b6badb5d65a6ba594524a29a574ce39e79c734e29a594524a29638c31c618638410420821840fe26b2b9d32c228a6272e09901931e8cc1729c2330ddbf1249d5e4a6158ba6025bf24c73b81654c9cb3ac647eb46dd8e9d4f512e7ac4e05dbd1b873cedace59fa8491ac50f9d1507a2c51134e6b9de77ce568d98eb6a1529e8a3ea52e9f694fea5b6ba97d31e9fed445a3b44d23f9ccffe8d255d2644c71ce5ac2394b091019419238a5ae9316b2f5e989cf525bea67a96d5fa32d23ed2b74d2fadaba14ea467c48da869d2c2c57fc09db71ceb2e24d5815ab8a731615023091b53ca922d2c93a527276b2888a142a54b22843b1a223258a288b9228383827bf05e329a53a16e59afcf6c4072bf527fe44f239e51c0e441112c4555529abc8d8c0fdd9224dd32823b6933e914ca48c6ba47e9952276fd274970b73e273226d19b6955c217f651a58c339cd394b07e7ac1c70d0e9bea437cdc439eb061b9cd35ae7ddfb8c8949eb0ce34b276157b00df593f128bbb661256dc34a55664d81c102110aa5717044280d434a63a67d6105a7c40a96792d3f4b4e4ab214e7d84909890b49e74668a5a60b2fb8700e074784d2bef02105d445171c69df08455ae651253fba11a6ba8880941ce72c9b5296658e954a4ab80002880b9d0cc0c055f13991348d14450a500696c0c016ce63e009ce398d2af2b3c56001d132bf69292a978fd7aed1a65157a9a40407c7390b0620ce09208bd9010301f841660b992a9c73521ce802a32decb000aa0242a8343a81b92ad02bd09df3f21a40813a4e240c25a2001bce4d895c7070928c34ede4888ff6a34bbe77c17a09c3b8281b894ca993176dea58942909ace12470440b1b68410217654a0b235536565ad2b3df343f6139fd090e4e8e0640590471561058ace11c166560e100e7dc85e4c875e1f4f45c9ba6515cbabef803a2c0c25d81802b9058d1863563c95831ce3913cfc2a329e9dee4b72726bf3dd13612960858001401274a40556801540519be746925a02a50ceb9905645ec51a6207005e79c15078200182e946159e64b25df45d3d7902757e8e7d2fc1208d007a4c0c52b2725f08aa7d2c5ef50d1054785155418e17d7c52da35c46b7ab443870392289594708d14c57b26dacc054d5172cef97ff568a79488cb96932765447efc160b4333f488f86025cb72ceaa4053e8e4a1a5013a705d74264311861e9153172cdb234d8f400d38e372a0067000fba7273f25144a89d7f4680a8f8683830603662019e9116598a867a4914ea47f2dd1b290b6914c7838e72a2e389f1329dbaae4e0e070df311e652a89a6e99228f3282fda74c48b36794def2451a68e78d1269e928e420ba765a19286620a170a8584d87c492b792e3825cfc5974438ceb9299ec8c213758c343d1a697af4041ace6d1936d22e0cdb70bc96792e3eeb3e63a29dfc166cabb07005e7b41f3dc5fb2fd27e344ad374897f51c361fff424ca8f9ea2f924b09d0588b1000e2c000bd773e1545498825dc00e5a16ea46146086735a163a8932bf9144268fd28a70cf05a4002c400af0010163f891a69d244972a4a4b713e60429c346494438389e946d229426f2d14c7ad37d27ca9413474aa514136cc787b464b449d19bd6d1d92225ca942e894a18b6455a2989906b88564797219c733e891025d790fee408f757844499e20630890c60ea5c5eaa0d2314810843a88410840d09a06d6a297040a880e09c8e128d1465c3b0ae3d959f6c3be592eeda53d9b05215ef04a9cae909ca9439c9c92853e6c4b9ea07950f7ae09cc8578142070210043a8ad0001392f006193e38a2040d330ba831810f9009e4c8e25a8113d6a90a27d8810148484110323000ca057ec0028648812ed0408308156ea8c00d71d051868e0270c0f30024439871ce79418d8a0e90018c40c50084cda0d28173550eaa392a1c3857dd600ed0698b5377e26422c339f783f653aae070aeb2410d40a52e38232a235876f98ded64a1a45385520d15b6e8c039d7b51f624b96cd6b19540018e84deb800a60032255e19c0391a078cd474f018db270ae7a6306ae72c39d7c4825ed9d20695b0afbd1508ae85b3877c7971e4763a271312e0649e568c0a8ba0ca8a271325432355431543531c63a9809c4f44063d5d4c8c4c05495b3c10a39cb55048829a2723446649c0c3395abaa4a46665a3f2c5755158ce5a4aa682aabaa60669cb02aaba2b16aa0525533158db32a184230d6cc4c101f57156359315854315565f9a8ae60553d9c4c1563c1f8aa2a805555568d154b07abb26662acca095655cd5815012a1baa0ac6aa81810c0c4d0c550d55555516b668a881a9baa8ac6ac6aa2a0b465459313e7a4c0b4895a4a692b9814152d158560c84f161599510196a758018f88309cc14cbc538ab03550c4c901819ab82713214a88e5039cbd9d8d8b8ca5531955545a1aab186a82a4bc6b260aa4a5645aa9a0a886559d64c4e258465c558d58309fdc0a16600150c00c8c1b2402563e150c5543095b3a658978f2ac659a41977f5541180713fc0a07246c8c082a966aa189a0a860a660bcbaac181a92e4c6559319705a447904aa6aa685e0cf4e155968f991aabaaaa8aa6aa702acb0202cc4cd5c38a81e1520161a5aa0a8648d5e38755d5d0549611560f560f160f300ec6553254339655c11063031363e16059563553c5fcaac74df543c6aa64aa18ac0ed6139a1f3dac6ad700a1b12a025435550563553195938a070b5b3b583f2c1a4ba682a9accaaa702a1eac1f164d4c0523035355b682a982543d2a20555519a97ab07cc0d054353195555538553553833543156355323115b67e5430560f150c8c65c5583115b6ac2a07cb47d5a3aa89b1aaaac2a978b07cd0c0543135315555d9abba61889a233044c85430558f2ae686aa470f9c1f4ae8d043258098cab2662c1a5fd9d0f07e38a92aabb2aaaa22e2681cca69594075471251705712612c618e247ea8e30958f4114260c50845703c3ffcc05509e306be8a96c3510983055d50f901934280300a70c7143d8d8012460f5570a27778388c1b8a601dc307ac1160b8b13ff8a8aa112a2fd49e3cbca8d7175ca8078f1e88f490610d298218d890eb0d41041843a4e043cf05c487cb0600383002c084eb91c9c25d3151b84a065a169a91c2471035f842d383a6474c0c3595a6070c0f40789ed801a226c88c8f9a1b0344862a06c88c28a60b0c0c30a0981e4481812f333158343d6286c0c0c30dc1171f5780f49821313c614d1d64acc45433475ef00509141d5014568c8f182842b2f04509500c31c713950c0ec807239eb06272802182aa7e482243041d5f66667c9822050d322c61004c9327a6f882430f2c4066003283134c6840d5683eb0f0e5c8d6a3498f1636343d606090d9124345154fd4c4c430c34325837cc20e0df418620752d468c10231583f648c00d1e01824bc126740110099203e98f818c0cc123143d0602854104613283c70450d364f0a18389407c4e0cb8fd4cf4014304419aa2b3bc018a1c1a13ee18306cff8a88901c63e6902c3830f2658f8e283e6090c556a9ce89099f8e8e10448957e44055f6c8819527dcce0040086191f3f32104d88f1c5478d931e3604bec8c0d8c854330498f12163646688244b7ea47a0851e364c6070d0e30e8f4b889d9e961c30c3b0c20871a86a82102092a0378c2474d8846c220ed9329344062687290c181a93d80c408711941d383c6474c11192462ae11958c0e303fc8d4f07ad470189c8ddc50e3a3861ef6899c9d1fb32648cc4dcccd8c07be0c11438c8e0c11323df4b889d9410608c303145f42452a980f43240646e600403421011760271184608e35ce10810738f0800524c08bb6e57bded3c4125ab25cb152650a94239ce05c1964004108e08a91411b7948e10976149124082072c081060c386c30861804c845e0f04003901f333160411a2020630c0e6c200c30bab012448822a10c6080a74a1e5db0c2d6228528a821c2405a5c41fa498cf8a021230b2c6c0f1ff4a00c327070b561861f3e6a6876d001052758c277293b473c6192bdb0828a29005004da021184c0030bc072c5d61b6688b9c11c55b8920449ed4133338206a441020d5440021038c0175e787185949d2446840052e101c3054b0b31775c51b09610638765049922543fb07860eda0071d407460ddc092c3628135021811585b620a50dd543ed4f020b3030c3858365834543380022003000b54d9c4c460fd90f161f5a8a9b1686864ac980aa6aa661c0c32c0e800e3822f3111f81203656688aba2b9c21336627c9191014233801f3c1113068cb10108073e30f3802f31507ad4e063871ba2f8d22389182d303dfcd86680d430a9b9333e608cdce043a6065f6a52f06586259ee86161baa00210227c91c9e38b0c901c76f005c806840bbef4b821068bc6884c1199093880861f3858008a982abec8f0830c3fc0100115a9b9019407143244d45c9a233032c01ca9e1c0179828b0c88c8f1933bec0fc98c92166c80f0853c5008919e283890c113449cce430e363a60040660032438f1b7ad44093048c17a098c901e60c286466f0258802c4982e51103cc4e0009161061453c11081c9899902c486198b060b8d0e343b3234c450cdfc8091890102030363c1d0c0d4c0f4f0b1430c0c8d151a00c830c507886686a682a18999314562aa1a1c607478a2870f321ff81283194f80666274a8d181228608500021ba5c1e5fb0c3073db8c11c6fcc20e553250b2cf292229058ec2485281411c246861a1a25b448d9c9230e1de0c0872bde161630020344e0811c6ea88102118c512434800aa4b62bb4ec0a53b8230874e8a00d132c40014d2ca1258b949d264c7ce8c1861a58b082058820040a488088871db0930f3110610806307dc9e30b59c0c2124ad8500388076ec8800d35507082115c610515a22692c02265e7891c71c8008e166ce104083f90c38d36d47081181c800003a298c21d3ca0430d17b08004527cf1fd4906c1704712ea20c21b6dac200d34cac82202be8b9a5842092c4fb2111c212018e488e38d2e32908514be3771c41326d9084e0c30c4b824d421471c3490c10ad240630465686185144c1cf10489111c3ba1100080625c1e49a86308347843066dac208d1194a145165644408a23889858a28822a12ee0010509196210c20e585401812c589e062200811f2f20e89107cc172c2fc8e06171a1e603311eb0cab0c6a8a205615e15fa4104860898ab061fac1d2a1d687280c1a1ba21c686aa861e01000000606c62640012830d0c3900c1e1c70e3e403d686a6668ac99191919181f4de8603b91325411df314e3aa5689a20a309279ac8404d40e9b9825c27d2a5917e329de911bf741339345103a8891ae72e2447ae20488e5c4cf48009389cdb7e769ac8fb64def4202d526d21c3bff5e7536a082986d38642a6afab84a016f2ee5146c8e7b77ec23a0f506521f3ff2ba5b1fe7bfd7e1c6221776be9b3d4df8afb8fb66f52a9a4ff89f4865457c8924e69a3bfdcdfdded96328966f54465853ce9fdf8de2d39fc983e3bb250a4e9073525b70a99735823f7f1f7f8ded39b0a79f629ffa35dfa1bb9867364a1c9db2ed514729c75e378ed8651d7fbe71d59c387adedb1c31ef7a47f64b95452c8fd714a71b57efe6e6795a92851c872dfb775d55e43e9a58c230b2f1472f57f5f5ee7f70f73eae9c8c2cdfb489e9b9c1b274b74469a7632d2f4c8c94dcecd129dfa843c39a5155ebcbfa671f2a8b31c0ae9ccdf1d2d22ad72429ef6f6c82fd7ff372147b86da4ef411d31e67332217fef35e697f757398d162e21db0b63f45bd359678df4c1582b3bf2b53dcab7a99f5a4a0abf12b2966fdf3f39f4706e1fe1c842bd957ca7af4a42c6555748ffc5b3ca5ee31d5928c2b6083f8665532294d0ee68111d51d591abfffa62d877d72f5eacf568def034b91969da494542f613d6fa7195fc3dbaa11d59f8e20d4f139f93a6f2b58742e5ddaa23644cf78df1c2de35a5b0feca08d97fa929a49a43ed3bb437140a8542219da534c409a88a903dad1afb8be394555a3947b65e22e4bbdff51ed33f2be77bfe91853c506ebc604b42a1eebd605bda2dd510e87d57eb7d2d95efdddabbe71a55e5c72311b2700aa11282d5baefdd71bffc5b6b4716fa11d7399e94f19434c7a08442a950887b2e3f1e8991a69de4dc541ab12e3c7e8b2e2d59a2132514da5d74c303e5262ff1a48c27140a512ab30d05f34515843c69d5b0f71939adf6deeb04494b5153ea2437d30742ee2f62ebebd54fd76835ff418e5cff8eed977dd2afe3963ea9ed759850b9f141aebe6edfed8c70dffddf1d59d8618c04a87a9075853bf6fbb1fd9fcffb7990fdbb7cea1a7587bfefa9779071dcef695f6bd471ce77e9c85a4a7f6b7dd1721e2bb43ac8f7fe5eabeddd4b78a5a439c8f44d6be1afbe7edadf8c1007d9cb07ff7b7ac779bfc4f706d9d38931bf3f6abee7bf768e7cbbaed1566db7ec94de190a45288256caa09223cfbd6bed1e4a6c3feffd41b8822a8e1cffefbeef48affc1a6f6d3be94d3bd1f82b3872a7774359f57bf0c1fe2213950db2eef77e5efdc4f2dd89fdc8c2071b50d520bf27a986f0de5f779d734ba8828a069962bdfff60f73fd7abd3d05d51b99cfbbf7eff3e31969bf7f0659c33d2d7c72e3f8f993de8d7ceff47c7f88f7e4135768824a06d9fe3a3dec94fb593dbd7089aa8d4cef7e763f383b9454f237b23006197bfaf18e97421df7f5736421849501150cf27b31de37eff7b7525df9c8c217332d1482328eea0599f3fe3fffdce3febe9e7664618ca1908c33a8d8c83c5efe2bd49553f835c663546be45dbf8c924b8db58e5f532ea492eff686a789e4421f542377bee3e3b8430f61eccf8f2c14619bc85b68c233ee6811ed542ec8965ae9ab95d2d7fa31c6334a28140a8542307aa16a41de966ffaa1adf24eb9b715fd64db83323651b120cf7a63e49dbeaabdfef0572bc857ca68ffd53dcebf399d326f1a79fffe7de5d7475a75ac5f05b9c70f69ac35e2fe1f8df551b9c9b97904b89902e5c696502692c89750a94d545390adef525f4e7bbd94d6ce2f0af296b37219a79f3bdef81ffea23a41e6ef460b2dd65f6bb8e7ac0f7ea03241c6d5fea9a9afbf460cf91c59b8719b73130a8542596e726ea254b9c9316d5aaa005d89f74cba7f53a8d0c87abe176d9f93e3b9b5fe230b2ba490a72a41be93f2ed29ed78763a2f2441f61beb8829a4937fc92bb53607d508b2d7765fff64fcbdf38ae3c8c27ac3d3a45a78469e7d63b965e7dccafae51e59e84b9d243a61f6091441d6f2deb7a7c7d5ffbf3f1ed910e48e75f7db7afdead35bea91d5bce8283739372729373937fd4442e226e7e626e7e6c72371937393f991a69ddce4dcdcf040b9b917a54da2ee21a495062a10648d31edd7fedd3bbc0fd307ab6068a55466645c7dec5df7feb4c7fa7710541fa0b1def7bfdf2fe23dfdc8c2920e8560f55279206bacef7cb5c678e9ac8f8f2ca4373937393739a15028c449a1d0f5405546a6d6463d399c1d8e2cfcc936082dbc3b5a44465464641e5fdc74723dfb7bf2ea9185d5e4b727a1d00d4f931b25373c506e42a152499baa8442528a518d9177e5fb5d1a3db778da4d47168a443196b63e590985660c4125469ebd5609e9dcbfea0e751d5978b7a83a90e184daefe9f9a5bfce7d47166a184a7a5171404e2abb8770f30b67b4230bbbe8ac72a0da40b610c26929aeffc768b51f59e83354cc5d541ac8726eeea1bdded3276fd4230b4fd895120a695b306c140a59b8812a8c8c6595df47c93db79bcb8861cd5281d16fe5ffd789a7a597dafe8587f6690e3ff61b7b88b117d152cc37d4557aa8fbad5df0d9679f97bea9dfb3f173c1ebacdf5788e3de53f307a108d6a0cac08c385a0d2ba651defbe27bb08d0a031edfbd6197926e4fefc317d0964f8afbd5925a3e65df4e9e0b7cd08d6a0bfcfd7db3620867dd90ee0ccbb22c2f3c4165014aed85f4536af187b1622c829546185415e071d77fffc6b4ee59a30c85422113f78245704213f722cfa828f0b97dda52f960dcf3c75a25147a5004b9e7022186a39ac0c51ff3082bee37fabf75ce4dced5a29200c4fc4a2be3d6b146dbbf169f5ab9adbed04b2bb5e759d42925977ecb89f5d7f74fa172b3e426e746c9cd1428d38a0a0b6ce57b164e5bef8414532b67c8c4a5540ae53befee70fa1831efdf4a8ffad93acdb08ffd532854b512ca44a2a22aaa2bf2d4f2463b2fc4fc7e8de9c842d1e67d2cf64f4f36df24140a85789a844221fc20062a2bb2b415c7ef25c45052787b04f2c5afdaabbb8ebefffde7c842efb34d04a147fdf0c409e9a8aac89e477ea997183f88ad8740de7def8a7def74575ef17e40fedd6b3d298f126ebe29a52253dd219c57cbbb5fc4156e29a536bee16952d2a74c0aca44b2b05658a81c90f18f1f77e9e1b6f64edaa7c8f3c687e7dc164b0ee5e30dc83d3eefffc3f5735aefc70cc8d5f229eda4f2f2f9fd96230b7d4e242d4b719f89a0f7e9f986a7c9cdd71e4acecd959b9c1b246e726eb654945028f35b326dfa9e8aefd84e28140a61a5929307a3efd86952082d2e2a2972bcde6a4ca1af18cbeeeb4da7a99b9d9b2d53373c379ba66eaaddd122c2aa28f2d71b5f6c79c5f6d17a6709c3f6d5524191ffd4b5637ce5ef74cedf677d22471b6bc70ffed731d75e8f2cac51a66cf525474be58fd6c627f1bdf12f20dfdfdffeb7deb8e196bc2a2053de6184f5ca5f699532140a85b250baa345244a40aed0dfc821df4ff73da34540aedf6fbfa7a53ed26ee13c40d65273f92a7c7a8f2cc4b6254e642ee3adf6faaa3784bfcb918512d6263f79c60f9fad7cfadf2f9fdbcfc65b0a757a429578c95defc7adc472c2d969e45df2f777cf383d8d77e32b3597ecf185d87fffbdedf4578c9d44a96cbfb6f37e7aed7d18fa2d5b8c39b74f471db9a558cb7e5aaeafe418c319b1cdf2f77ddfda35fef8634dbf0132e5f7cf4ebf8775c3e85159ef8ebbe6b34a1c2f8e58def43e0ef5ad1cd21aa13f65f97eb4b85e08779cd69b72dcd553be3f8e104e6f4b795e0ce5bd50bf39b7ac5bb28db4dffa3094ef464a7b0172acde7a4ce3fcfcbfda4979deaeef9efa7ddaf5e5a31cdfa677daebb5b456fbe44fb77e9b425f77854fffdcad7efffacea5c75556ee73b7b762eba5de16ff6a7bbe5a5f3baf8fd4bf1f2bcf95bf0faded7d427e2bddf97f792fdebbf359238c3af74935fd32feedf19e70f764fee1c618e33febc6de8bf2a5d5477fab7edd53dc9bc86f77a8abdebd461c2f6622ef771faff0de0be17e72898cebf456cb7be7bb574625f2e6dec6d8a7d4314afab4962ca5f41357692d95d0fe24f2adb4e2adeba416477971964cfdd4f4e33731b5315e2cb9ee4fbdafb24eab7db5f74abe7f420b5fc4d04faebd952cadad5d733ee3b513579e3cab8d71472eafdc9c57c9d3d3c879ffb4ca8d23b55432ac735bfcefb71eeebd0990b7adafde48b795f4c659a7645f31a6f0db8be5fbf85129f9dbc8ebbe7cfafff9e63b59ced775dd3be2cddfdd51f2a4fa52abb5d55bcb88a1e4efe3fc7a7a89b79c342291ebc414bee93dc79d477844867f4a6f398cdbdaab9f64bc27b692bf0fb796f74d2719d27fbde7d77eac6ddf4df28f7ec37effedbb4aaa2593dc6ff5ff555f61e57fee9ce7f552ef2ee19e17439d4ce1eb58426de9bbf2c19893edacd1c7ad61947757be2453d8f99b774eed77dd1b2ac97e47b9f5d43be239633722e34df5c652fe693db6ba88bcb99c5656fc2ed5b3de24f9eebdb9ef9aebe7ada74832a6d247783584dbc63f8fe42bbd86fb4a59a1a7de48f6dddaf8f4ecbf4bcce11b5978f22511f75c44185291e8c21d2d222638596acbedfed16e0b5f95fb7f0c43c1597bdd3586386aaaa9e4fe66f95fd454c2abf7fdb8cb918522096b85dc737962b396bef3696ff7d23ef8ffc8c2cc9f4e24518475337d596bf6f3c25a39c578d7d97b1f59b865d7089a67d77847b825b40f57fb47168aec9db9da5ebd7ef755ad3de57d64e18556e6e8efbe73d22bb9fe56cf91855db0cc07c698f7fcdbe249e18c133f084716669b06b3fc5ef6cb9fe7fc79effdc8c2cdf4b195976de5fc7db925d4230bfb498bb00ea34da248b6faedfd69a7b3425eb51d5938d252285186fdaae426e786e78607ca0df757ba682a185abaa34504259465c7df575a61a75d632b4716667ac445cf6fa40c4b28b4997e28e4338c63d95226d1a33b5a44588864bc2fec577b8ab9bc51fe91bda91b26546e6e78a0dc884e241bb30d257d86f1b9a345846448e6503f49b5aef65bef2d1c5998f91311996a0eb7e412cadfbdbc7b64a1d6bdd7449bf7a1f086a789a66f5e4cdd789ea5b02a5442219109eb279d85f40d0f941bd1c43b5a449503861069a94c24ca4188176df2210814612591cf89e4e3839570104254691c620099de840802879b1c0430041039fcd0c385830f3bf41084072076d041871d7230f58043866d7a871b80b0e16f291e6af0e247a21d6898958719bc605db61e025069bc0070231445bf4597b6c8e7441a697a74812e1b111032c8178326040c71c330205dfb2cc88f213e36ef23440fa80d51131f8d48c88c10325100315014044c34615ce43391086ea934a2b8d7ac15a482a21f9148b479f1027039c0610309bea8bc499f626c20011d407e38378ea003253168c224ebe42c519204c9112338f8da4aa78cf01509111942c4104282083180206e80f8e1f2c1eac1e261075783034d31c581a65803c6013f9c1b44b081122705256af08673ae824014b238e773da023c506e503a0a4a9b62c0c8737fcfb1be3fd6fea894a1d0e63507c47c9177b40fbf0bf9e6c587a0dcf040b9f9f1482cd1d97df718e34586914b2ea5a69d72bdffef22cf1de1dbd6474a9ff6fd7391e783f06d692fbd13e2fd33909fbcdcc2db2ffe18c8fb43fff79ed577fbe7fd17c8745a89377c147ff961fd5be4f9b6fe72d3c9378e5c7e0be41d1f7e5d7abe79d518fe0ae40e35ef14432e71e4137e0ae4debd959ec23deb8d13fe09e40be1b5757228bfe4107e09642faddf1eca7ae585107e2d7287d24bacbbe4f5f6f9b3c815caff39c4f17588a5f758e47be97eb2c24bfbeccffb2bb2ad5bffc8efdd1afad9bd1559c2f7a7b79d5acda1c63e02d94afaa7b4907b5bb5bfbe8a7c2deed1f7372f04f2bbf6622bf1a41df2671f903d953a52befddff16b2ab29f95c6bafdd314d75a1d90b7af14f22f377d784a3a45decfc738b58ef55d5d6503b2a7fff9baa5bdfafdfe3c03f2fff259bf1f851dd3dea5c875cfaf7fb555472c7714b9c32dadfedd4faf3d85225b796d84d07b89e597fc89dc2f861bceaf37dd1def982ff9515939955e5269edd479646d5f8cf0ce6fb7effb0bf9ce47f77f9b5f4dabc55ec853c678b99f57426b7b17f2d7f2d3b929a47b467af1c811d2efe3f3156b79a7e542deb03f0b23f7b76f217f8d5fd75e53dab5902d86b46bb9b9877ccbd9b390658516dfde25dcd7bfd8b19021a6bb5b4ce7ffdd5fd8af9063e77d526e5ff4f7f9d7ad9027ac1447b9e9a752d6d7ab90b1ae5adbbbafc6bc564f857c25b6913e7f35d492fa2964acafde7a7e29397e91df91f58fb5c3dd279642ae76571aa5dd78cf2d6f14b29ef05ffefcedd13e6da190fdf4baee88ededf1e2fa844cbfd411da18afdcb352276408f59f76e3a75fe7b709394aeeffdbd85b2de9954cc80f476ca3877a570daf5c42eef5fa57b9bc73c23aa51df9fe5bebc4534aae842c2bffb776ad29e45e479e840c29bd9e4bdf2dc4b4425e87bffed75be98e8f2321eb39ffe735d677840cb784efeb28f9dfbc7623e4f7bbb438f2893f9f9f17214729af7d706ff9eaec9c0899da29f79c175edfe9c57b0859c2f9ebeeb643ebe3c35b0879f7a96de7dcbeff2cbc3b0879efc8bfa4bd72bc3baf1b08b9cb6ef1d51ffafeb1adfb07d96a2bfd86b6f728618ddb07b94bfaa7ef75ea08bb8cbb0799d3d725e773ef78dffb3cc8ff7dfdbf94d8c2f8a8df41fefc410ef596d2ea0d371d394e59bd9f3d768efdb73ac852623ef1c5f3c2baa7cd419ebec63b6bf59d3f1e2d0e728d58fbceed9cb2c368f50db2c44f563befbe1ffe58f51c593fb8a7f618e2befb955a8e5c2f87b64e2f67a594471d47fe576229f5afb362baa18623bf2af9d69b4a8965ad50db20c7a925c414cb5ffb9e4fd720e31afdc490565bafdf9f0619c3f930b6d8f27827fc6f64acfbdb55423d23d4d4cf20bf2eb7b51ddf4fe384de8dbc25d69fdabee7b49e622c833ca3c59ce21e6d1bf9420b2d8cf3f9edf99f31c8b04f2afdbeb3d2cbf5c430c81572bbfb965dfa0bafc42fc81bc7ef27ac5cdfca79c46ce489fffcaff6bde7fe37e23532add7773e79c79353fdd5c8bcdbd8ebc7db5f17e4cdf787174a8e31d7d4df16e4493df56fef1b7bf5765f1664f97caff4433e71ddd0de15e06d6bff53bf5d6f1ad95ffdfd7fefcf2aa7ad5705f945fff1db71be7aa79e3705d96e4d63b574cb67e5971705b9727d6384f176fcb796f70459d26eb5de5fdbd9fb95d70479c75965b7f163fde385178dbcfd7e70faeaa39e54be5b827cbd84f5eaf760c55e7f4b82fc398717e2b8e993107f3b822c2ff6b26fffedbfdd7e7b469e74ff2fed85f2625ebf1541861aeb677d7d95d3adbd0d41c63cce0a2397d66f8dbd0541e6f7cbbd2ded347a3dbd3523cfaa238d1f5e4bbbaedb7e206f7fb587ba6f7fdfbdda7a20db59397ddf3f5c46a65feebdfdbedf761f2d195973a9f59354f6baef1c23f36bb7dfb4befa6f84558cdcf5f6f26389b5c6b67720535f6f947b4b8faf87930339e2ba5fe75dc769f906f28b97de4b79941dbf2d359021adb45aca2585f05a1846e6dc577931bdf2bd3d9f0523f70a6197b862ed75d4fd8b8c3ded127a3aade5d06e2ff2add6530cfb957e52dd45def2d93aa1b414ca3b3517d9deaef5f7d35befabae19c85c525c637dfe3f6c3f0632f653fe289ff736427e814ce3a3f163fef6fbdbce2d32fef5733cf18394f2192d90e5e77ce36ebbe5935720db5a7bacdc72ae3dbe14c854df7e299cf2ea5d2dac13c8b25eebbb8e91fbb8f19740eef4eb4afdc5956ffabd16f9cbf7f59ed6f33d7dec59e458f9acf5bfeb61a4178b6c6ffcd1dae935debf5e91317e1d7f89a1bdf64b6d458e7053cc27b791cf276f04b2d75e46f8e3865d435e05aeb672b8ef8f96c240204b39f5d6963e2af7dd95c23c20c3ffbe84d6ff0ab5dd95c25091efe6f5e22aab849ddb49611c90ad8df6cf59e18c5bcf4961a6c89c3eddb18d71d20d69a4300dc80f6abfa9be716a293da4300cc8f14bff26feff6dafeda3305264dbad7e51dacbebf6de4f9828b27db8ef2761df3d56ed270c14f95df93485bf5a49e5f513e6894cb9c7b6d30aa7e5fef909f3257befe59b8fef89fbd37de691a7bdfbf6b865f7b2e33ebf90b77d5dcf2de9b312d63dbd90b586bbcea8f7b7f1db3bbb9035c6f35b6ae3be7cbe3bf1c8f7ebfe9e9cdc6a78b79d5cc812deffe9ddff5eeb7b9d5bc8f85aaadf83d2e229ab9c5ac813c2cd9f8d58468a7b9c59c86fd7b8ef96fbf367e99758c8fb7a0b6b8ffed22e5f9757c8fc631f2b9e74eb0f2b9756c854d24d21c71e4e7ab79655c89277bcff8d7ffb2dad9654c81d774fe5b495564df79553c8977eeb1fec5b623cf59577e408e1b7bc6379f9ddd14a2964bca7c410461ddff6baca28e4bdb586f7763975a55c4a28e4eb799dafc6d8299f3fca27e4f92f8df7f9a7e78f3b4a27e43bed8f13d2b92185f0c926e487a7c7ff4dfb9990217d77424a218fd67fbf840ca1a5d3da7ddfed9f773b32e7b5d6fba1fe3df2ca959029be377ae95ff51cd39d844ca9c6b57af8eaa47eee3a72e7b56efbf0c316f3b8919071f7de62f8b8d6f3627d841c3b871c47be5f9fb16a23e419fda79b6e3c35971f1721ef1b3bd7ddbf872f7d980819d2b761a5afc27d5fb443c8117f2abbaf7c5f6a7f1542de7c3f5a67b4bc468a6b10f2a6b1ee17e77bf86b5b81902da411dbf9e7f75a621a7f90a1bdd4c2e8ff877dca197d909fc6f2cfbb2fee1656197b90a397d6daef2996b3fa187990ed87efd6f77ce456db1877902fd69262aafdb4fac718e9c84fdebebfb510be79ebd741bef4f5682fb6754acd7d0ef2efd7dbe9e3a394f7ed71901fbef2cab7f97d97f27e838c7dbc18566f6594f7f539f2c43f6eaae79b7e63ade5c87273a8abc69ed37eb58e233f7f27effd7f5fbd9d1a8e0c35dcf85209b1ecf6621be4dfe7de353e0db9df15d7204bcf5fbc514ad92de79706f9d77b3f7e7cc73879bd6f64f9f99bbc43a9a7c7f5ce20770ba77ede53b869f716ba91219df8575cb1f47c6e0b6590dfc534f2fea6965d7f0adbc8934afee9ddf7db6a2b8531c83cd2f9fed3fbef3be38430c8b2576ea58d9a5fef3f842fc897736df58b15d3cefb67236f8eb58ef3592caded7f8dfc27acf3ceaba3deb37b35b2ff744e3bf1877ae2e95d90f9a3f1e17eadeffccbde821cbd971a468da59cf37316e4cb2daf9e3fffbaf67daf204f08ef94f8df9d46b6dd42aab7c7554fecaf0a32e71d7e5dbff7d27b7e5390a1ecfb615e65e7af4f8b820ce9b75bd68bff8634d613e48ff987f555da65fd939a20776ba99e585734f2fbaf3f0b6bddf5dd384b9029d41c57ffaaf4953f49825ce3fd78c37821865dc61164deb1e7f5ddfda6e59b0b932b16ea5867643f697f90c3fbede6bed37a658928c3bea8c47d0f856e5cc31241a64feb7f39df7b765aa90f41eeb86e0ee18418ee8f650441a670763e3197b3637ae73623fb7fa19c30d27fffabf57f20f7beafc4efe90925bdd27b204b79ffee0f771edf875496619591efb67cebce27fdcf737dc9c87dc65b63c47a62192fc6d80b6b8c6cb9bf50533ee7ab51f36f862546fe93ebff37e57eda7b01ab03d95a1badecbf5fdd3bc67d64e1b5d9e240b613d388e38cd1578b63b73690a7d71ec71867adb1e20747165ebca345b4004b0359df192bf756d60fb5b0c2c8f456cd5fa730427efdd760e4e9fb7d1263ed6b9c91e32f32c7bb7aba6585df4279ad1779ebdb3197dc3e6edfdb5d647c23ac9bd3b8b59e5cd29185dea44ff386a749032c2ef2af9a47eca18c7ebed77bcc809581bcfde6356e0c21a43dce58a1042c0c58d83da45e7fa9bdf5be974a3eb02e903df4bc4fdb3d875cdbf7936db402d616d9c6bfb7af7343a9f1f46f64a109cbfe346119935028c61d2d220b0acb02f8eeff5ebc7d76de21ed15e8bd4efdfbfd77d2b9f1c842d18d33b028906fe45346d82385fa45eb27906dacf6f617377fb4f24f47163e98852581cc2feed5db492df613d3f744e49bc807196069917fbf5a3f5f7585b0cfdeb3880f56d8f9eb9bcb91851af53cb4e58442393739373fd99528a1909550c8492894f9aefd48c370c21d2da21f28b0b0c87e42db71b415ff2fbdb4645857c090139615560472b417c62a617f3bfa7a2715ab8a0ea5b41acb2fe3e3f88f2cf4594ac34a3c142a95b4a877bd9174c6130a61282d3c2c08fc89a5f717773e65f73514ca175a0fc0fe72abfb9fd1d718fba7c257a965af554feefba4d70157da6fef8b3fce78ed9b537459e9c5b0bef83cbfe9367563228db410979b6d53379e9fb0373d3f493931a99ad58079f5fd7fd228fbadaf54d2fc6ea92827269400160368844fce882996f0d98a61acfccfe9f59bbfcbcd771f59582a693e4f4ce2d550d8119614d97afd3ad7b03fff317dd28a224f6eb195b7fa187be59a3ff8010b8a8ca79f77fafbf8f77f478845d076613d91bfdeafcb2a61f476c7eead2fb9623f39f5f851fca0c53b8f2c9f8dd67ebddfbf166efc852cfbe5be7a5babc6923eeb851ceb8737ea07eb7eef79d8857ca5eef1d63e29ec965f3cb27df7cfcf6b87f0613db99063fdd6d6f8dff4f4fff7b09c12a8d48f0ad6a918c43008194200e05ccd000000c312003048241a8c0583f1a068bef71100148002528c76b83a968984d1508ea22006421004a118040180010419628881558d8d0090d0b1e62d6d9dbcbd64125b50a83997a25205923db23f9412bf5ceb4926a6dc1dbbb90c924c81ecd7cecc8e9331466b870a3f06b2ecf4527cc62c4e57c5e379fc88469874ca88f72716524caae21e1559b2082d89441faa6aa44faace28ff95ad86cb2916e9e0d0d4e8a2095d4dcd4c857624dc707dc6ec0ee44daf1dd9ba863d8178fbbc62b74bba866ceff91df605f3ec6f00ab29235b4551b80461e1389079e8fa93de683b899b51f997a05e695f22d009525c227b4027a5d76b4e6657202d7a33a81f6a5c24b00f26599f49174922152d0be3e23f5092034c439a403fb5be397eacb7de42b2420587a24641935019957ebdebadf6ddc15bfbbbb37ba5fd42345b3a2034897474e86af434ebc6efcadfceee5ada38b4e839a69738e8d4a9d50fb98d7a27c55925e0f741a2d841d349ac42bf8786932e867941ab4fe937899491f753b95160522823a04f55a3a7497746579ff646d793f68cbe9fe636aa0aa303092b8ee3b5ae6776182e98b18f1df83bf53b1a7605f5e4ef667625737fefbadb3ef00be6d7df99d506be9e3a8e48bdd23b997b335b49bcbfb9ee771f360b2a7bb2b8b6854e3e679b0df74fb98d604e299bd09f541ba4397536577ff646d793f68cbe9fbe8dce9306199d3e8d1abd269d327a7f5a35ba4f5a6774fff436fa9d346774f0696a746822867a7bd70dee99fc71d99de50dde3bf51b8d7b8177f2f766b792777f6fddef3eee05edf7d3dce860d294d1d1a7abd593be1bbf2b7f3bbb6b79fb7bdf7edf7167f006fe4eec46f25eaf9d2cbd09ad44ba1f5a37bacf7af1fbf537b33b9037bd77d46f6abc5686bcecb4fbc4e64aec44f25aefa5d4dd075afe8b9e24b1039217f59ab21445c9960506a262adafad20392e0149109f7132f862248cb629e11b827d098bfc420cdf283ba3121b4a48963624c902f15c8e4416af72917b9ccb2b7ab94b03a6cb79feb5cb2057560e8cd46b30b0d6cbaa4db3f51359b1c015d86f8ddb5aa58c2504be8a96f31da304d762beff6361df9963b6d6b2d9b40c150043e530ded92c0a506e69ac342e778814408bcccd6657eae0dd07ee323f017951b51284e82da0fa35171641d9645310e4c6830eb33606ca057925905b61b5251bb82e76d7a15f80b8aba3121e09e192683da90cf3279bcd160e4ba37c843386c850efd4acb80a575c236622dbd8745a727379502e447e76f7805566aaa8a601a79cf24464aa69223935eb8203641e6f9b17e157ba1721ed8a49a8c71b3b10c0e902b531b08249a6bd0d9dc8de538fc5741bba9b8c562d8861126c07bea70e0607a7b49ea1980d58bd6801e5e90412dafe07a70b8aeecbdc4927cf2e345c5fcbc408a36b9296bce29e857fe286726afd0d939ee7f6aa82eb15b7ad5642db57dc01186897c98fe48a6133be51a40e1b8e4a487baa8fc39f016c1fc675070c755978bb960ebc84bc300030a51f8ac7833ed62ae3031eee665893c1278daa023d35359461c7a4518b3ddf5859158195525d961021599dfade8247cc3578c25dce16af4f5cf1dd4b3518dd893e3efb916d59dad435c9cc3e4e337aea2aa13cf75386ed83e3f8c88a23c732dcf5b7a024ff8acb6de8fbe321bbc98cd6f3634649fe200e5861de1a079439e5a9c204e3a5d8f395f6bafe78798f9836fe2797e6c8d5339637ca9f2aaa073f77c8cd2146941d3bc5d118eb2c2707ebea3c94bce65ddcb200029612cc219d4ef1f68e498d3cbe30d48a49e0e2de94d82e4fb96be300414885f088d6f3b1939906b8e7204c3c802e6691ce7de1d0f5442af91652dc7c6ec9af6fc622cc36873be94cbd3a259252f2dd8e7d5ad969997e58d46f6cd9568171b522c8a525620c860dfc0d2f233c6d1eec126bd9699b9babcf76cc42554e7b43105cb56313d4731b09abfe91dc5e835f88b8ca620b3bc54a3ffe24b5f4b9e80cd32b60bdb9b9287d365da43faa1d8923ff4644eb3bcd3134f43436512033fc073033fcc73353bc8ffc2f571f97b2d055ddc09911c8e021cacf5015777d5de626057aff70dd0aa1af38e8c531ee161c681c02f577e94cbe5c98ba4519fc5ed617bdf797f80148576901a272a32a8e5c410fa01ec6fe981dcb8be703d3e1d69fd35b34ef03efb6de75d31f57d7cf800977e1303cb1c79286b5068485379b01716b4ee2900eeb9b0df06133a3152075ec7202300bf02aa1c41105169db6938df3d74851e2585fd1225100228338d22fc7553b927ec5ebf06b6072b724c9121cfbde8a2a06b45619977ecf462db054f25818dbc51bbdad464f30c84a7d87d781fc1508731b71cb0b8836ba4b798d00c87f7403e21e4853b0dc71ba26f0ee5166e5d5ed762174de7fb9676896032ef91c81fbe9d31043e4bafd2556c19e482456ba746b34ef49d0af3e0a8a25906482ed73b47d115ef6ef8cb9b0f0295b5bb5ed434ea8e31457845edef03be76bc19bca915486ededcd28505b02c65a0c0a45037b39cf2a420589c28e6336e1068927405fffd007027a726cd3f0df62576e124ef0a349fd32bf4c2c10d07eb20f6161dfcd6a49d0cdafee33e21195a85ff1698a2afd11d1db2106f46f36b29ffc115709b45fba70576f38f4c118f909ce639091e45bb86edadbc62849af689836ecd87dd921198e2876dc3efcfc2fe03bfefecf88c64fdcc356201fc92e6dab9b36329c8c1f0cbbecdd4f55054dbd1a517e399872fa9955ed92c3e478a6289148c823351bfda3d86197055db1e6ff30f65d4a397d209479e4a07a59c0cc2ada7ce7485a61368326c6e4a2bbcb288c762beaddbb65d4201221ebef5e9dad759d887bb908bda2487b8f88f5369154ee093004489e2a7222bf8a74f915536c9ba44678ee1f443c86ab859ea8d60c7abe2ff08d2ad0bc4225a9c6da37c5428d9bcbec04327e9e52a085b4804b2cf90ae0afa368890638d18e0a7adb28f513dbc4adb684b200c7e743d197dff80cf5f43f17bbbb0f955f48ccea8b22df409b103164a8c8dbef88ab6b059010c040546d8580819ed56347c6cb3e9b10943aa4d1cb9178d6d506e7b4b311190744a759384f9814b71604bcfe36828da1215cfc3fbbf01e9307e70ecdcecc0dc6a4ae3ae5bc34df177ccb315f6ddb0a99f8907765c382033efee015cf597dc53a29670dd6414f50ee3c9c4f47dba04a30b6f0870011f8816ad4c1ae9df4f004241e2b08d964955a6b70154f3114fc88fc53b82c542632d041b42e74354000dfd0fa3b52a52648a5edb4f4ed6f071d75654fc3f34e7f574df278e468e1b83d1317b5736e8556d8d24df639349e5a8d5a7f65bada9e72e3f4de71a4b0fe0593f337fab0aac880c80e42e494f584e959d7a552017a25eea5ce99ba4f4474b3b06569dc98dec406a98d523fc1fb42348dd2eedd0f1ca9e8d70dd7bfabfc7ca1e0e1c75e770022422b588e69d754417e4dd52bb2fc9477bd17ffc0883c16c863b24d1f30769221753916b2776b8786c1188809000102b3758cfe50e6093405dafc67dd6c179d65a07a72c782fd742566c62b09822aeac343c5d14b95cdeba044d27cda08700e4bb4bd0aa5a09a2ac023a0ec63fb0f94f322eeab43264cb816fc7cf8714d74ad4d190e2028b5c4fb61646f333331615eab4234c15c0eb8605b76c953246a28785a3cd99e89942287478b4b15a0aec11f23869c6b7b854cac2c5ff6aed3553d768f17fbb02bfa2b0682348a5ad4db8f22f7e1b4501158c13757b56bcbb5275d92b9ac5e2d0d22a5ad505f6d809a46b658896f3363660469755b417a57782e27569238a235fafb3e4ff35f0b8e5b5888fb5e3ddecfed233ede638bc930da9c5cdfcc77be959182653dfb100949a40bdff561be8c218982a562f879c6029ffb7583ddf5a052622262dd2230c61f74c72e93468f56071695c5ce5f2873c7f797974995890ddcf3dd842a27fa7d58ea836c40c572411d320b361e0688267bbba896e376e4116c079d2620b0611a8542755301d4bf51c62a576c23645cdb67938c53bd8c147d3881797a005881b975f003ca72cbc0d8b73f69d1e087328a408e43b33bd283f93c30098df503320e10e749e508b088bed2b0a56bf5177c33a663e062e97824451e06bc0c3843cd3acebc3d54fd2b87cd8969bd6550a8d3016a5366b104c4aed26dcec9c046ebfea97c83c282accdc449eb73da8dffaff0a549e99b5e032fef8f47a14c2ca32b0ba96908be818d901780893cc133e9fb3899c5e34657a637ee7166feb39b9cfea984ee9b7f9d30d22d96d0880d7a4079bc8963dc05080f5418c3d2ae7001b65719c6a1c1bf337275b141c3138b82acda3074468223eae8557a581ace4c84d5636118e5228573eda4220cbf8ac5feda658e84cf7813e48586ebcad31b0026a85486609e02a0ac3b8814bbdf677b103f0c76861948149a0411a780ba27c292b4cd44b25200cd13788106508619641542d3860618bed95e171dee5218e39e5847446aea0d7c1b0a4909d90bcdd428ea2a4b487023ca488c21aad1a492a52981223b21b78ef7b8c1a90d702e288a540227c79d41f988c85ef96206f86d43faa99f0c143d2c00a054922f4ab948b184f755791a8c1bd8dfd4720342058bfebb72b9844f7693c835951370eb8e5f7c830de2eb691b70f5e7fc1fe6e83565a03795fb57a6bf215a49cec9e3bae822d31842c725116bc284c245a02b114890bed6b12e0be40f5930fcadbc3002eeccf9a50e00b9bb4e6f267b1390c5bcdf89da81bdcde949edebb95049959d5343cbbb0b902dc72d1b754d89a2187c9e8cfd78d6a87c5c83a7b18ac4a45121e2af9e0762b5be4d719592c2ed9397ec37c727f64f96c9fb0153e8b1655842e52dafd62dc9d1d9ea09408344771338f061ba103c28114fc33255eefb16c256f82af1bc07e5f0288d3c4ff0e1e7fe4ee3882fdd89c87f13129cf44d7736abdaef9cc13cf038953b9279bdf864ef1e7905e6eef1badc2ef3fbe2b7ef79e020b893cf11cb97ccd38b6f7bab917730d73eef2c5f89bfd0cd1d0fc84d291e9dbb6a3e6dbc41bdfab757bce6b68bf735f96579963978f3d47134f415dcc9e3bbdc4ae2fdd5b5bdfbc037b85f9f33cb0399d39b471da7c6ebb2f4f327cd8627b5fa9d64952c42e5e3b2a3f2f6d2e777fba9291715d46b075de618c058c8b3fe6fa93a1d4077d934f6d80555132a57f0a8bc16b76b6ee9846e2d54f4638eed70e1a48dcebbe6fb3f0902f9db8e0f6a7d29890c7ba1d62bc1da0e2cf07f9fa7d6155fd14c34d602814e128eea92db34d5e51eb5f8366d532f94d9b90a342a78defab2b0b9a1eb79ed0265a9488cfde3fcc8b800a058681cb09e2b16e7b0a8bc852d17e148ad0bb9a4f7dcaa8ea876fcf90e92c246663632b269babfdf4db5dca2b5215f40e29ae36225bcfd04c234ef5d39c616dae1ca0286aa2dae08830c4361b792fc13408bfcba3881ee0c87c689647edd3d81465361ddc558b00163fe58ef9a6d68e2c2976a757a0403f9a500853ec8e1a4c24c581fc23eaeff90b0ef7114873504a341c864c4ed3036548b31323dc11a0de8256f2a246ecf3e80ed2b59d0cab4d4d24950e3612d6281df3faf40393b9652f074ede67eb7e7e632c38b20ee340789d6dcd02b361de7ab368ccbb36b74e6c91e04716b38de27114f399020d22b76ab52f279e625e4c6e59a2cd1c9989db018033f274de698d3d6cd60b43203209672f54e3072992fef85c21c7ccdce333323d9cc3e2ce17c96de0623cbb021b26a8be4439b1c96138102e8908658d6601f037ad04049a3f7ed369beee98e875b75befcd1f8cedfcbd4a58383fb1f97138b9e47ee7d5ecd2e383cdef8b938b5fc64ec6ec605056e9fc3eec8ab8a3276bfa72cf0a96aff8f908eae38653d155a9410acd83cd884ebacf3083a889ea0e687e42ced8df9c19ec90a0e974b4d4d6df94c8ebc81c2fdc802d01339c91aeca6bcf5f6cc1fa6ddfb394865fc57c4ed166d940bd5f3f135bfdd3eaf54dc5c0973ce9bcfe627d1ea04ec7d42e1fd8fffffaef1c33c974e5049f271d8160e36f4478f11a88fd8d47973b09baf2f91d39064b00c20b0b1b5e89194b42599c93e65490f34a2b410540d106010f90d06c55e52cadf588eedc0d3654eb8212b5bace72432f698bb18320db929d214d16381c4ff8787ec9d09320420a8573204f188ebe8c73ede72a5fe1407e1ade41822068ec16bb2444e9fec5b9915bd9289cce93e18ab8946dae74bc3303bb834aa1fcb18b8a12b39d9f6497cfd2058882e65a8f95e4b43c1c5e447afca1258e578026641b145e492a5dcfb261192c96f3b5a4c409a909114d82427101b54bf5e0dcc67d55758a54fcf96844a484434ef21860c2ebd2585589dcf3cffc6893f49c94f615031fa0278b2ead645efde4c505d5c998bc9ea4a11fd6c4fa9f1dfcc7b8563b27bc1f2c264ef16821faa6e89d6f25a52b52eccb2e7ad365a7d19f1a97831984445c8d5cbcc19be3bd602faa0ff831b264f0fd496c37265d6b7e061fbd2b73ee1fadafdab45c428822b4ac3535f50f244d501ded7534aacd10b01a2aa2af64b6cc7c1756c2da42f333389985c6476fe65f98d59198de3958b1de1ca11495d30791f9069b88f96f3b25a62a1eb20fc30b4126bf9f869b5d91d47af4dfec6fe1eff35d06600e030cd9f11139385d6522e6c270d3394c4db70fd31b59d77f54c6672324ba7d8cdc25c41329ad3a8201f3e9e156b2382ccc387b746429abd3c3353bc6b44168d2ba0b58c56b56a199c0d6b93175b654aa1bfb52053e5fb66be8baf3d2453363dbf8e8cb6f279c1e52bf66200180c7ce52c82a0a4b06ff06f4d4707a535d963202a636bc075545a4500a5e83222b753b8376a51b6dc1ba9a77fcccc2621c74bc5e5543f83519f064d01a3b6429bf8f1e50c825293a91eb07ca14ff1e9c576aad63fe6ab2c9e710a40382a50ab6f2bc6828dbc64c6161b1a8b33144a2112326f299426b8d2dc79afbc3c850e30a4a9f07a02a2fdc43b7b96f712aa432bb94923a05c35ebd7e2a115136508f57daf416237c443675ea529ec6480694949902302b6720b536edbc6c8964c2ae8a809b2ececc72f66685acf60f02e641954622975a5c169e697479d02cbb0cb7a9c89814d9fb4105a714fa8282d779d60f162d2ccfb6d4bad123005cfb31a1e91b701b63b73a2c5eeda02d8e848ec80ffed55217cc36f7059addf47edab2cbacfbc5f2161875e5e962cc86793538a088e9ffcdfbb6d47b6f826ac196ad485cfd0fe98e168b867c15862b7b263c5a0876ecbd9c859e21fc08785367f8efdc363691c8bfd5c23d3b1d03686bdbbfc4e5169664bf3df926f2439734532ae14d445ed9f7611058a475cbe9f7f848e0f628e49b8cb1c7724f385b5f392e491d96541575045f872118bf80fb372a2ec74b066a9e49bf3cb7b856ba574cfa8f034a47acb82f1ca9e8bf641d193c44817771d13386bd95b1201386ddead503f36211d82385b267b004ccc27f081aee812e8bb7be4c28e687f991d2df22f255495f25844cbaefc1d4d0a69ce126121c94edd57b3303cd4ed81fdfc529c37003c3e7b8f715450071bb45efc984f5275fa122f8072a37133b8274873ec0be779b28a62ad30282e99069d38cf6d6058e99bf8f0e3c2c8b91df3fedb2b6f46474d1bc4cb3ab1cb881f0a07c45d0e1a44f41b0cd0ce81c33cd20e4b92f64b1638e43d4199e3835ec6c07bf467d071738f5e6aaeb840c8de988a29c085ed5ef14ac93d1762356f5b046cffceeac19494fc510cf3866c4947ee470a50c8ec7883cd474acb1831fb0a4e0d8edf1b519f287a385e06ea2c63badbb3ed383c8e0a77e9ae3cdad783d7583a0968affe893447cdd2463d6a3b8cfdeba47604f78031fd7cf4f8e27b0c9c903860e00a9f48c2da4ed32c2f9c6cdcf54d70667d679751f5e10a8dba69ebcc4ebc5bcbf844a9e4ac2df5daac593796d69d1f5538b998a5f1ff4182f9125951ef85c313ebb204d86159858387514d37276e801f74fa0bb98d1ba546d6aa724c5b726a3a14259d27821cb69d193efef6963b5ef8538b9737dea407e0c36061c9c37d643911cdd38ac1573bfaa0c76c8a577ccf8044410384d203257d5adf3464ff4c91b7dafa01d6965e2c1be487a818ffa74a71db5599101b3e44b50fb87b126d0f259d378e02ef00e1d9a53b06d4f69be7cccdc64efc68063869268f17f5264f90f29a873b6edc092f929da871548ee77ccc22fe1c4b827f31ad743aafa11e7186cda1877801b22484580ce85087068de0b2cd3dbaec97f82b99f81015ece7166a183af66e41d27b6ca420ad064345b4ba2f289482c8ea5b4e9e036cf7e0b7f4696d85146e9f0415e75865836d389cd2df259506adc3e5a3d42a590067665166e749243ee1c9395e390415367b009401b1488ecbcf621160c719c0b92aca2c094ea5f0dde18439da7f3bed186b1aa57dd514258c3701256506f9cac1d766434bc9ffd02c03e872a02dde52b0faf83dfb52f5e1ad1e52b0b150410501dbe4f1e8728aa81b29444fc55e5c1489e6dc63c9c226ae0d6b6cb1f981e05968bec693fb804ddea6ebf0d1bfc35654defe7cad380ec05b1e1294e779b3c496819dd3485f38b8cd0d23fe4f15e70eb3d5cf274d69b5731e3a2062d39311a60166380c00367cee689f0da34af4753d0ce1e6c63477f50d71fc694fca2d636d236dcb95505c0afff9d55d8ec6afbfc28b21d2b9f772659486ff5c37db88f069f61ac4239557ae9da711bdc3397ff3f6263f4ed8cbd183ff3c92ff14f6f1a6f48772842fd226304d3747e639b56f6b313cef47b010a8fafe20ce2c623f2cc223d70bd19ecdd18ba7c582026f9324f727fb98780a234bf7ec0f690dbdaaab02b24619c83476042f9f88aa20d093e9ffb68d6abf18bddff18a6d3fae823cf43697a5f187472ebb488c69639078be26eddb9513c0c985c0b007d9e4f37df94f816a17b1b7db64df6c802da0e70a5b0ce66579be298ab3f1f2ffaa5ba4bdbb4dd196b98c6bd6b50e4e7a6852cc6cd77e797291e066f218bbc03ea2f5bb38ab5dbca1d98853d19ac1cff29737ed68d92565fbbec2cbc0ceb41145c0bc25c4771dd87250b3b3b3523a8d5c9a415fecc7e5c29b2900f8eb36ed7bb538c56b7da954f81053c32ba56694d513798bb853082b4ed8fbf25e050bd8b1dbd7ffffd57e64f6f3fa5bfc9c2f2c0757ff97bfc9d7ede2f27d7138b81a9ffc7dbe6e1f87eb8be17b06eefa787be3fc290f3e5fd78797abcbd7c5f1f86a70f0f9f8baff9c2daea617cfefc7c9e3d5fee6f6327a5a1c9c7f3c3f56ff936bcbd1ede3f13ff1b9b8babfdc1d8e6e0387ff8fcfc5d779e56e78f57d789e3f5e16afee37b387d5d1a01b9fcb5c2d7bc42d6d5b07b42565eb07b67cd7fab396ba5a7fa9c511d3eda29650d2101413afe274f1a3c18dcf8ba9cb27c736bf6e27163e0fdc7cbc9a5f7276b0f5777172f9c1e0c6d7fbcc658743bb1f97e70b1e066efddfcc5d383adaf8793fb1f060e8fee7dde4a2d381cdfbd32b2426111040153d093bed34fa31af2c4c19304eaaaa4342ba0e0e9e10fe7494f374207f2c5eb8e84e753ad39dd3481ad15821aea2b05718700d072773b8721ec9c015ced6b5267e9559de333beb507af0134fcdcfaa66dc98d1a39d62cd77aee1d125d78a91b1dfaf0de0b74c10a4852f4ed586b6dfcd359b4ec820ff5aed598ad10d12d752c454739072c4f022efac79dec8dd5e5e2222acd3408639edf9ab57401d43c112bb5255a191897d784c3a7cf97e9405d2539cf441d5b1da33f0e4079985187a59b2ebbfdc0786188b97321a36fd4daf9d21b1e58507a2c00e572e43bb2124557279b04743276a3be0c363b48bf10fcec9f1941c8b068240aadf95b223d5d30cbec58754f2b8d66f14923321edac1eb9373b9c24f0f8bd0814f8ad2c828c3844212112e29ee2b6365e64d0010805bc1ab872010f3634ec2762e2db5b5b64bbc9a9e0f899acd51724313fac0c24a62b35bff1d0d9ff677ecd457d4717f2308429ab86cf3fa65c4540c4b0c0b00a3d5564471417a12cd3fc921d7ac51bc826641cc72c49c6babea2c46de4aecb125c1b8314209e603573fdaa9eced18d6d93478f87864912dd234337920cda3cadc9701c3fc2aabf3d4b69919cc0c60b3183db912e21d12a7553e15b31da829ccd0b00a893863a46c7a4bfe1ebc8c42058f64c1c653e2d4ec7f66f1e3cdf1a4bf5f0d95768bd414faff7c671b28459ba0cb2631d68ba87973633d7112fc8eb8d269ac7b2f7e1c21420a6f1d8acca6c1adc99a1f28d443bce3a8dcb36503e40a45ea8feea9726390e8c246b8d4f1925272411136880635bcc8804cdbb9d1245f4393bfac9034ecc869a7a3ecea7f549245cc80430c2ce3ec2f91e273f29ea639844871edce7933df1270c3ccca2c1733d12d2f4bb59d9234a333f4eb31194dacc61ac5038718e36a1ae9ab1d6f4a5663226950e1158f2183be6a0d25115f1f121904e6f9e5332e230377e82a436c40f24655e381221463dd5b49548a8a3fd1d34ab3d9171d134034c4b8a72a95d08d432c4020bd16fb4f62223ec8e2398c666e5c5fc91b311ea94d418a774d4e2f92b1375b71145b40b75dc090b42b3e10ba3e3f1cd326e0a2559e4a09ece94b6e21f234e20815810b0ac06b008645a935f6a3847db85963a7bdc11c64a274bba0f43387840966e6fa002ab30cd7accdb7701adb12e7b3a25a090893ade906779755fdaf9af3f7d407cf343726a7a3f060bff11c8958083c2e572f2c25f32a2bd7412177efa2367f1a8afa7da21dbf460d57cc6f8508b1d19db2477a2db181ea06d8312c03f1af90357a7e5c1b97d9bded01a31edf749c0bbda9fb96b0f28c345727ac14be5f74b52ff6e787abf0f553ee3d05241d0293e70f12feb935ef1663b20bca338715441902c736e780d1b447823703133e92c2b175e98d57aa334fe2c957d7fc4452490b3f2961732cdc24f7be3fbbec4395f260f9f1f01f1f3a777d73c7d1e511017e8b824f0239eda4d68c582147e70d14989bc27f14a27794312ab9a50948f7a9d5c540f482f53f4286329632f2d8f9719d7b9db941c9866de8abce3e30efd05037cf048594cfa8ff5c2dff35ec9a5a9ea2932d1ed9ce51d130918c5f0eb160dc248c380cec8a0ca8a91ae491bd271554277833ec575f81cd41b777882e40f89bdfab7b9905789c608f95bd1dfaa7c81b72ddcbc8cd5e5a5136fe15531ec98eb941862cf2247a92c6c4c52d7b648f1aa1a0171d2f24640a9ec8dd1d9368c2938b38326fe7a25429f677ec740e3a107da578dea02de55301dcadbd843e2442d1074c953b3247ba2e119a8f95eb59c04f6d48226df94b0e6cb2fe94b35c269c3a92dd7e4e73c6a99914ce1529a975b6ab1ad904235a32389a5bc931b2d3d931a087fa1d994a4e466345481e67824696ad82caaf1dae93ba9670d08d4c0efa138de5fa72b3cd2976309fa1ebbb0515ba7d8a4ad1bb46b87e7f5e474456c06384990c59b0735a401016e6ab78df6161e93aca7025f73b5d05aca0ef4c31292765c1b1b6ce5505de6e3b984b33d7c6b2217ac0229347604dce7d260d52d8569b794ca74dd32fb9c3d226bf8f9783547f66ba404b85be7f44fc9fc060f46359af1a41bef58f9a74ab75be8b7d152384812b0b15d161fc7705ddf0e465ef05341a1dbf5aaaf1fbe434239c1954852d9760aa5ee25c7e0811bcc60a0523eb904d0bdc5eea0bf4bbe29c76ed663902dfd80c2314035256546036162a17df2782e6975a7c02eae238aafea3398de189eb4ea43431bc1261b1c0a7a816f48aae539749ccdae3f89e8a616b8ada59cecd941b3b79472f863ba0c9b148eea9c812a0c9f7124968f48e182d2e3e363a87091929b2c4de144fa43523ae275fe03eccba02e7f9729bf69aa7d14fa50e6f9dbba307d87b4127facb3e3e6e2bd38da8f717584283553ab9b201421130edf424abfbc019d47b36c0a2d2f7cfb013a87c70c1beb83e901bcbfd3d66c85a39e75f00ef6250ec0d75fd4559e87a20d8bcf68c13d1e285e388ab0090daaaa3ebde4be18c241b39c5874d0e3dc2f337a0621189371704c7fac505b2b9d47bc6c858f7b757313630e5c83bf2c6bec86db1c94894275ac4262e0e3a02d944ab7318b25f52a12f34361a5bf618ce37c5e483592132852f08e8dbb55296eda602569f472434986a4f02e5ac4257cb3f4fef40f735c67d79fb6a895873112d5e06adcb97688ae2ef4d41ae8fc1206967be228988132daf665b16e03bea201ee04bb690a04dbc2163be3c96703d6e965865a95a18d159e62991800a9d90db035f7030a5eb19c1edcc16c96257f192664c33f03d445c67b5325e3ac14c4038974b6cbe0eb87a2fe082e3f3f0a547cc170e6bba70295375b9255476cf8ed07e59e396ec4fcefab6e1b60c7fc3bd6e7fc277dc502492564f000841b1f8b32e32dbdfebf3625d6bc031c9b576b3ee01a353daf428495cdf76e29d62f2b52fc48621d572a66480b37912b1da5e1086c335fb1bf2ec30a1aee85429892d37abc54481500ed0d5434028f58287dbcff6fbebaf8dddb4100885dc7630034844f5cb7a125e9bc41002305e3f486507f5fb0bf23536ea1b4121eca6c47978154040f34040efc806b638d505b7aebdb91c4681bb38ea19958c96868fbc689d07c1fcaba7b337b114f4d1119bb0f281f1c325ff9ce6c142ff54de09f678830128e8e914240d5ec2468e07092e39ba038f2372cd2a0470314f033d60415d019fc77e43a9ba90dbcbd5899b16101b64097b02f98d6c4c421530df014a97d8b32e730b1b41e7c732489610753548f37959b1218807854237fa708111d457ddaff13a7fb55faffc0f1df76b874839d0a152a294916e8b9428a9b5fc3dfd0ad25700cba4b8abf4d215122f5bf425198dd14b495f7e1606538363c469cd92e5c5fa0dc47b45278e0feae30a9809e4b4caaffca67ddc6c85e75bd9fcbedad4b82470ad1ed611677096aee6631f1953b40ec535d36cc0f34dd9e9865e9791218466571af2a51ac1f11d10abcd8a19832b80c4e3e5e5c5cb50ba607a1a936122e3592304a329cf1484ab1896dc866c2fa4225a537eaf5e9f0e3bde95a4e9ac4ed1068728e2d475b7700f732e68ebc660f42e782f02180c916b4f62183897e05ff700b910b27f5c9f0ff5e18f27d6860d2b95706a67ad2bc97fc91f9f02783f89ff181c9266e0c6b4723ea59f2896e4b1a11b91e8ce8f6b08bcdced8a65de5bf3325df01f5321bb96e15b30ffceab08ad39112b5ef3edd743092b6ce00a15befc4d97f76c5e5a32f7e73743cc19ae94c26b3094eadc319eb7524dd945f46df8615cd6512f7d366ebb4de99f335f0d1705b12dd1f799db37f050697bdc3b907e2b0854a4a111be070e9a17f5b247e2619f2143a1afbcbee220633efabde87f2b63fcb2aa4e626c24b33957767c201d0e42569bc2bfa4849c69fea3582479b63022821e85a6c5b32ccfcdc34439abdbad73996b8bf9495f7784d3352499ca8e23755381e4d7d5025e353cb34cea8068d2dccc5822bcc69349001fb6909b0957dbf989f44396105ca110b55ccfd34e43e92a7dd25577f6105fbc2069031b6e99484c296504944cc1f8dbdbfe3e3e33256234079fd823037c24a3a7fad574f48b762dd80c0ef3282cddf4d81bdea6549e95351bad995d5c38d08ebd3958f769ca3b934b99003fb8520e1d8d70432c6c19f15ad19e4d7869caf02ecfcc2141b40fcf1ed9d2135e1bf0e538f457e0c0e859e7778a95e8178f2e3af26370122477c0253a6e580d8b7e639e5c0d764393ed7977b996732e02080790203e7c909673a43cbcdb37195dd71b59a3d81fdc9348bb1890be7491d7712d5fcb12209416be67d0e946781656a67a93a82b698c2d5890851e7e4b38debd756810a542d06ba4f20c17b5d727bb0e1aeb034dc0b737d6b1b4e0c18c75fba779698f0f246eb3df3e866376206a130ba35ff3dd7a40395b011b607059ced13a78c036ed5c2b60abf50af191be351f4f2b33a3e33faa9a0bf55fa89d1c19243f9ebe5cda270c99e88a22a7d3f78cba62be620808537d738aaf0022b0baf49516f7f6233dfa3a7d0a96eb0f7619ddd2fe31f16151f067e06c4aa027631881034b668bb5549b3abf63436097af62435db02dbf96a87b18ddf182f96c71cfe65727f58d12bd19053d02e002630b8a903817ffe2bb4817f593d76a714d17a82655ea9eecf17b0b90a9661fc13d2339f1f88be53db87872d0bddc60e27358a8fa696b9e8a5eea23d2ce93178c5bbe14481c946c665e2d7108f714d56844a7a9739749d0eb96cca6250a816693aef21faa39dbf77c459965bc0cc633e53856615f18fcca9e19b703d2da2695d3e8f111531b51c1d05a3a4a2988c2b16f658d9ebd8242a0491fb36051ef340f9ec462e2da0c18e6fe1db4bfaf9e5155d68a8486e01c3b05ba7d416ff09a746534785495ae2b19f8acfe504103dfaedec4c459d7f5879733ed5d8d45c373284c812f56eecc1927c6189bc6370d9aa5bccff7711b41dd991eb0a3bf9817b670abb08adfe98ca4423f16b53ac39c1ca0f0cf92c1f3d321c035fd81ccdf4183aabefc937e5496e0fc8a8665d72e4fd299b437d38c979516e9a396dc1ffdd83878b45bb8a0dfb23d2806774bed369053c5c2c51af9d0ff2e7c962d63dbd8f467d46e319938e5b6dfbd5a7a3df9a4e43eb315c6c161259d77ae4d88b03c6dafb410bd4cdd70d92cb2d9e4faf1c6ebea5f2c865170ebc1632b835c96733bfbea8568f28c2efbc3f2d011137c47eac12964fc6b31849f19e89ea220c5430f27c445fe9896b7cda096b2873c13b114401e0ec97e1797a1a899d8b2372ceacf32e868330b57c0facec6f42fca9fc30ab863cdfb8ef96a48c8368f45e62974e7bf2c1afb77cffc0af5e4e7c3ea802b7cf374c90a7badbb5dc39af86d3e13c6faa0ff491abfb47dca7e6594f32be877a21c01be7d5c0c597cd34953bcfda0414380fcb3f04eb4fd43f59ddd1103f3601c4b8d7398bff1d48e842c55278b9dde4433ea6d2f52c234081d276b78eb317ca9cd78338c4d4c0d3bd1b7e39a7fea9e876ab208d2daa9e49b61a557b8839fba19a07463d0f574309f1063f31c6411bba902bd2f9c4ba760e237d262c2483cc3de200c2fbc4f225cfc4fdf151a9560ee8f583c3e91367112ea9ae30a47b09808b0db9b96ac469f00f0fcabc0b14e26494ddca120d7a0afdb21c67c72e822322065f1a4aafa3b50aaed1d8920e9ca8929103f2e334335ca3ad5c2d9e607a4bf1123bf060111bd2d0e66f43dd6f8700c3b8d09ca2cdf5caeb9f5ba2d9a4f683b29ec1388fd19792161fe009ae8defd329deffa9bef7350d3e826f84d9d1330dc9decc6d31968fcf92e81c3690ecd74ff467e390d8b4da7b7a5b0482fcb40ebc81748f1b2e1e68e078d0c72c1c953f693652932f49515ee83b26478b9bdaaad46974f9614f5f909bcc3adbddde2a62f281338465c71e630bd13f29fc4a1231a258f1f4394ce35b919025c910b7f2d16e8fa78f0c14d8fa8b66c6057737448e6978cef145e2c036250789123f616796eed5f9238d1b7abb7de3020d15d6d679dd307e34623d317ab8cdcd35ea5c88c9abb0ad4b620e95c610b707b2508c58140f8c32e8855a9f1ce18d3d74aa98b873aa527ff291fc7fe32c7392db09808cac485a1e285a26c8d4896ba6a3108925fbc1081430cf8b7a9da3e8e0de9a8fbf7c94f33769f337920e86582ed3f1bc094588d5fe82b01ebd1d1d8ce0b97d1318fc709eb60b2e88a03d68c208943f7ceddefffb54eacee51043b39c003c7fc1a50fa77031bc267427f7b0e5d87bca8750ebc225bf9224724151850b24be2dbe3660305a91e6a7fc36256df564635e5632a131f30db9c1dc4b009d113998d0502df262f4d34e3265e07d4f7256b80eb543bb69ded6c8993d60770ab7f9851a46c4a2906ba2902c9216c7a4839d0591ce8e57dc8b0a5e5c697679345dbebe5ff47f20c83e9287d39e137faf338ed74dc23c0d0cdf0fb4abd39244e7e241a95b2c0691d02c799fd88a63e15b6c3be6e226042f8ab86f2fcc85336299b25d6ec32e719f8fc8c76bf13fd4f888dc1d3fff41cd487b7f63a1ac0853574bd052093ac4554eedb0026d2bf8e004770d67b882a06b7092c486b97949df0e61cf318e965fb1fc4a0777587a988d2e79ebe78c754c4c8359ceb00518e619b782541f1cbb8f65675d171d392429c7a9de48e6c1f9361a0afb5b6f1859e3feb789aae50ef3dbfead7f2769cebd870ce61e081c4e55074ccc41fe09dd8b7a8147671287e9d24de41bd7f3927ae080dbf76f703de02fe12b9ead4372409d631f551c2992d82bd8fcb16ef04fc4bb0e29911c934bc659e46b953cb1099504c2254a5d3094c920079e1e349b2bb49f8d0b7f208e3723ef53f9ca0a62549c84a8950725ca69406b619d5a67c05451c4b469ae5192d190bc3ab06212746656a1f46a049e1be142a98af1d523ea28f418b2858111e0428a46aa440ff071b6a41a7f52924b4ca5182c33648e7ee6a44b1035c7097194e564255f2afc52c984e21250698ce099960ea24de5c8d208dabed3191e354c2bdca7e23d62318c07df2e18100f78b1b32109d3012f9440485c3814b5a80b1bab71f5b45b06b606c34c892d1248b6fdf09e87307e1cf8dcb63375e7313bc4fad355e9259862c7240505081925b4b11bccacbd070b9d4cc49c04fe8059f8098e27efb9d8ea79d148cd67418eaadab5cb925eb082027eb5521d7a27fdc47f9355865815d657c1494b774b7b0c66b6b2c164694a4a51ba71bdf3bb287e213962168a13e65051bdac2a516a14457f8e0e3856cef41db449c059eb849278480dc0d5587093458197c9a200ce12ed87685758e0d6f3913b8f853e7683c46e5db14cb7bec08062d6e7ad208fd98b12a8ec8f92ac4b2f640adc146389323f92859d7c8b4b6730faeebd6cd57390670eb87d0a2fcfc440608dc07ba04ca3599ccadd4e505ad49529ed1eb2b20e1f92830ddaa409b6763e6c1b754bfda2ddd840a9d3774a94d8703bf4959f7f45c9fa5bb3abe3e54509f5055c204edcffac8f7b8635f61e2e476d9bfc225e6281d1975d972761666f39a2a0a8db085366fed94c4c7419404579f3cb6f0edec849876d84c4e70db90d073da51f09869b2c950c0981c5898008443deddde26604282385c1cb95d7af5e5b9f6482a313cb66d7896755ec96dac69ca1deeaded1923a8644fb3e4565b4851738836f5a411325a82aa8848aace8f45868db490d8e5887ce278319cc86a9d3583183d7a3c4ad1d2f2b5d2f680c3ca8e2dd643619e22260f4c029c683359a575a2f1aaf6957400fd4e9bea4c4acae0f0d03d5dd6796d535deeb95497fb5d422404fdd3496935d1c75176143e19ba9b2eda8aa96326973a00fd32d43596a8b20947b233f2b48741a733322bbccc9493a2e1e8423ca415c48787cd7c293c9905f35573de427b418c9db6c61429d4ed3d76cd505673e98a866221c68f26a9012e465f9a1d15c43756a39bcac875ea14712885852a54a48066324f4b13970795d295b8ff09969a73bc96d2a52fa50a96709fb008afdaec301af925b295daa82ae28838269e98f8bffb01fce9a1798732af07517b6349c05c37efc197e8c0ac73a0b2666bf6fc744b71033f95eb44bdc7bd0dd538971155292fdb25dcdad09b202e4bb43ad7be0df87347140ce56cc4c8d594cac0ff420c19116eb02641a538918b1301a33682666cc3d428cdbf0f563980fa767a7f68554b7a0fe2b776be813ed734a7f108171986c367ef2c6db60f88b725002e8103cf2510d50aa4c03617effcc43d8f44344fd7faee7234f9421fdd9a57cc2d4a241156d8e46360b3eaa6190c793fe130a54db09649709718f53e076ffd99d6be5c5bbcdb1df67909c1d3c6258f7510871b6e745ad3de05a08a828a8b0352cad41801457ddf9cf85529b086d68938b8be99f1c6239baede51e7693ea3ab4d40000bda183779b56559518e96246b9f09fa6ce465a425182c1f67ae289b00080d2287cebe33651473c0dc6033609179c58185d17e56483451f52b1e7d95e4c7bcd74f822f1163dfd6cdf3f11179dfe8cc394fce5a3c7cddb27d36b82fab3a33622fe7f0f17df7368319f64610990d21ef9dd2deac2fec294974fc473dc97b386a5d411c1620aa1cb49526bd3d83d5a28895bf2c204b43ba642f1dc73fe21f8d1e4ee78a1ed41f2fb981b1502e725ac3e50c3ebc4290fd19f5cd57b71223cd526607f8079124eff1549515407eca39c02d8310299ab721847e6ca48caa73a7ac82817be006334e85d7550a8a4f194187f1e13f09cbea3e781a016d49ae54534b6f7bc7b3decd80937eb703dbbfe8f82b0544304f98770c548446c1caf256369ee02c2de262ca8615c557d6d8367cf85c919c032e172310e739d76c1f03a2c566406bb17b6ea5dda3e0274d13387fc6786cf0126bad1044a7fffb678fa89b76e97c0e6b83d076605a913bad60798cc48b315abc04ec7fe2d1f5d1c4d4afe10389fbb5c3f7b8a1e1f62c7101968aee4d09dc3d95005401582b327dcf8861700d644aae30171809c98e80a14ad0b01539c02a30b2e859585bc02c6dc62529a2ed7d882bbb75f17e7d278e8ab2ef0ce2fc2d43bfa1964c8bf8ca7551e848c51503d705b1e64b94dd5332bdc36d242bf7a81c5e0a29654a11b98f1668cdf05d459118f1dfc84c90fa4a3b2f5347d1f2e9b3a9b0fbabf4f7db8b05997cf93f31b643cecc147b50ba8dab699529e1efc9e0f746984f01f66f072edd97154305971f4e1b9b002b7c8f1e9b77a399407fd8f99d8b74cd93c1feef5874d0cd91d8e70c34e01169b4c930f3bd2b8b03433eddd0bc42cbdc6ab80794fd7ca7372747de977f0e412813a1fc53d5dcba7f60590cf8f115c22db492b4b6c82ca917797ac13ec664faa31970205ed8d6a26f7b31ae99aaccb6ee7aaf5adab6ca3a44f59d9bcd3f0bc2eaad869b3f53955e427d26754cb494f8e7eee2a0f57d9204579eefc49eb91332af61f649f1dde4aba457c0f6ea24469732de826ffa456bd21560e8957f6aa2f490635b2283a1698da31bb091f8dc9199b8ce94d94b893bef5c3f2f159b2b7e161eceeeaabcb1379e03da8b8e0ba9db145a23591c4733fbb4d3b4819458e3b1ae79842e5074626455665b3e861cfc373982df15a3c96ec9cd7736c34684e0bf43d9f2cc536a0f858d67128186727cd2f2cb1606c466a64cd69c83d70904163764ae643b846e5e4a51f263e8608c3c67bf5ab6697f1725a3827030abee03d9149fa4ed1529c7d56a6a0080f70ed480bb210e9d71784e38918bdc926888e11a60819b92b9006c1b3bc0d6ba08d360f0ff370cb3c46fbcc4aabd08620a8fbb215379bf90c55fed190820314ca75885704a1c1e839e6ba972b098644317b53097036d7c438c9b2bce759fd97560dc864887853f7e2cc2ea9c5661312de8aae5263660cbb2bfbc6c596c4ea57e454c8c704ddb0e6fb033b90a0e15f53277168009b7edeb20606244e2c56b4eefd588f3c8523efeb87abe22bdd381c58bc5d3569d4730fddafdc7528d91ec2c9e375ec0c5bed976e5c9ace44b65ee0744684de02ebba6241070ee187203bc6eee7a1f642679b7e608459d64bfd02050a0be234d4d0edaa9840ec4950d6697a85a45292743f53219979facfd39e275c829b8bee5fcd2fa77267b76c07aed70430161364faaab2cc4cc783caba208c620a2a6adea32a80e00cdd71e224062670dd38551023b482da2bbd100de0e0209804ae9c35f8c80569007e5e91f3143449c33fe2df6af42b0d324f651108fdfce5f1f80f1e22409c43c423095dc6ca4b7bebc55c5350186aeac7d7667f2149dc6447039c73ef26385e6d21933b53307fadb53880439bee794a252acacb1d870050b58056a10afa54096487e530de312d883c9d9c110f0d3f129f3b5487cf895101285232f05e2219c42847aa3e40b05bab8539e74dbafa2c617bf83fc130f9c539e23f5fad571909194c13a252bfa5ede7504da5a940eaddf5a049cca511bf5a4302f9ded97cf0881d9f72e6326a42d3b5c36a6e83dbf0d9a98f1bd1d120fd3ad19a9c74e2c18e3d44cc411c312068b2dbbb48198b76ebaad9c681c00163acbb3ba88145d822a716cf915bcc2f0e8e0e74620884dd5142d67f2c08c9883120f31f2bcda9e490b99f56e015791582d700b107169f80f0136be878acc6fcfad0d00a146b15b3521a63c37da868a71682650255b7b59f3004f0e295fb791cee2b682bb6c0f6582a6233ba5fcb6908869c75ea420a39842a50bd4d5769caeb346210862d240b1e6f45709005b5f427e9cdef201d4d0202cfdc640528beb1def837bf9bf01edc14af35d3f32954b7cc1aa330cf50ec7aa87d5a4b801fbd58ca4b646209ed0fc39956ba7c7969885098bad321632690dfbe454c0b825fac3358d5c8e513ce02726f81d372b952d5cc8dba384000482b7d6c29c6552076a230be14c526384a0443e18ca1c04ed82c7e8fc039aa3102de2b844a7453eafeed3ae4781bbe364460276f6309a90e3f73f422a42309fa94dc57a6da7e0463cb59f63c44de48e385709805bda32e19285b18409711d900f23a75172d00034da9f55a3e3bf620bd5af0b7c399f94218d4247a0db6a1796744003887b10882437ee922cf1d5f08d2e27cee8c7d1a439dc2f8df725ae8b1b398dd21175c227098cb36b489ab8e411524f13adc37659ab8917edd4f43b7a42c7db98f38ef56615e6b8274f3eed8d95ab18d6cd4c8525e0baada36f8393e70b84e135cdaa9c2a3b77ecdf476d8acfffa71d67e1bf0aabedf0fb718def51b5cdcd282f33a5c7a5193269a9a6ee7fd44f44f345555af0e013e49c64e058ee9d941e32d166c2de69cc075318cfa295481b4f3cbdd05bbb12abc25b3b79c1c4914e5424c3e7f915d92b2b134373285d55aa8cd6c9c7189bf39169b8bb6dd5537ddcecc0c9f4a5f8e21386ec63ebae489d7bf4de675e9808a181276f3bf09923e47c2fd86ca8c08eb1f0f419be0cb714982f05bf67df1fd7b20595809981068276ea95bead39a8a273ac1075b1212746223770e957247f50afddd46357d60de8b2996c4f5c4608e80eed6cc914e55d5ceb99ca66bbf71367d902281074a3c2a6cae2e771088c71f6e3d06ffab51491f46f1848b71b7a9ef1bb010848792c9459a406c529d64071e7b9eed333a4c2479e32949ee5b1d568e0fbc00f60eb3231f49cc657eb70b4aa7d3b7322adb32e2e4b5c15324c47f876e0924fcbac6b5f8b88eea76eed285cdd439a9804209eae89bf272b9f26f2ba28a0fb63d385f81030057de520622bc615c02f40e9fa501147f01fb5b605d50bb6ad17fb0d0ad8683a7c8d8213138e1d5d4ec8b9a9645e61e09afc520b88430341a46b518460b48f2377e7f071e8bf5409a75f34165bab2f25cc83c0f5a96181175f3c8c3ad51139bea0ffa805c6b45a9b2b4fe23375b0d8089c5cf9204c2f45421a4c51c59466ce1b1f159f28bd93e0ce17901357a05b042b217083a49dee456949c21c0c7538c63fdab73141ae43a3380d363b9a0cd07bb240d8dc5e147b602f76255bc761c75bd1ba78211d1d443801dd5c3736b9b2029078bb40ea5dd5ba5a2b6f8ce89ba138fe8f8ed4fe297137127186ce0b47703b256232b3a508a00f978bb61767d46d66eca434bcf2c68462e7140749957582919611f69a0971bc59fcd2423352ca31919e691bb40dbe6a06f225c3b26ce56897594edb060af80f50baf973399e00a2ce75fc92ff18c650133385446b2460a347a1842c16c73db9046c8dd7085cc5c154168804d1587a7de787154486ce6070fef498b731f730b66f58c3cd54f043e616776eaa43d0de488fc008cf339c8a96420dd01d5a971357f7900c246890c091d8392c16fa2ca55e06ce4f8be927d12a73ccc7a243a0fcc7b94c2e8023a73ace0656e10a3e2c9a25789344c2a7e5014ab6b04aee714755e755ee9e6d62b9cd18601fcc31998ddc2919a7ac8fbdcd623a974004be77b07e75552b66874daca2612b7ae0cb61523d8f05ad4e555a80dce337e987d513c4ac0372f0caa7805b34d65b5dff5094623c8a2d81c45a8400844f08996cbbcb0f80ce03abcaf2dd3fe920027767fbf8118970eadda849803b09bfda67d404bcb8a54264d0b53a138da0b1a0ac07a4a0c56e754f874d946143c8a17feabebaa65e760779c4d825053bbfe01f23f158594223cb5d5b0500e0f033655f11a974539c369dd2cade86ba0625ea13cac1468ada1ca2af09cdd0bdb5e254bcf6181a2bf1030edd2838a154faeadf8403f60c2600849b8e7e213c28b1e84f483d95608fb1b5afde3679779ad82bc3610fe53bc52b3696ebb77f1be1741d016468d31849583a0385c4c82029018b406f0552724f6caddf5b0cd2a6867ca52677389fbff22608ed8e42027b59ce20fe184fcaab1c9ead71dee79cfedfdf6dca08d124b727f70f127ba59fbb6940b22bd27c61c95334aee52be58a463462435564daf99a1c4b03efcffbcfbcc16b38ced9392dc3d45de699d392ec59c01b4ab41c4df0fbbea455ba7d4c682f7e32cb1893cafb7c1a9151638391a83975adc5fc686f86588b849cdbdce80d456db25a61e86bd46a2ac3bd27cedce9838c3ad0f69fea49768d15de11d520dab17c88401680973f6acf8efb44f32209d40d654656a1843bb2ef322933ec2b2d388e51a977123bd666de43525adcc07521b91fdd8a27a247cee7b96b61415f92c5a51670f89108c8589f0a42caeb46f87f442db79bc3e4765e58b264e4d44b867f3770af39ce6e8d4a71d9f8c40b5ffe5d94383a9c4e964ce2719b15bf9ced949a6e600f1d2b8b65d69ad49565b13289991dde27350d6aec2e82dd4a203591e3e599d5463f2e392a794c51bdf1996ed4f0c8ddcbbc6ae81957655e8f872b149a3be0e3903179206b4d32cb93f0999f1adfe5df24fb6c16b89f250bfc1e1f791233489f021847bd5bb431e1ccc560f4403f4bcf0230b699bd203d4524399129502aa7cc4384778bcd866f13cb7e91fe548a7eb1890c24495b1eb984d4e83da1f2f81bba5b14c0e426c9a432303e9f45e582be452389c77c8a59cb41a099be213ece84f7d8c53384ec4c36d51d77f1ecad44819be49c6df2900e870685f5b99971a4523b80a3c6b31a3513511cda8154b4000d0aa174a181068651f463d87bbb845059d25a16654e8e4c1fbe3a11af3154d3cbd33d57d27c39562e71265726e723dd4e35866317e28d31d4efefaa0b3fc607189f20040fd0da13f20f840c11b6fa97bacae0baa833dd1fcaeac2f9d30792e30e050f7831c039494a1e405e825f460dc9410ace01a654fad17d96fe19394edccf27cabbb4d5e0474e4b7208f18fe7da700ef8238ee7bd9b9168ac49de307b5d0d5f0bd2ad8ce84f3a9940c4270e1842340c478d97a9ce93ce9c2f6067e4e686136a512878904cf4ee848054370fec213bd9834a743c75d69f985261908aad7cffdcacbbd20b22d8078a66b5cf7e60ef867fa4140853f13bb79d66d3e1f60af1352d6b651e29201c58c507aca72d88a9b00d3e278b082f61d2ac28bbd9e2dbd8d87ec7667a5637fcf4df2f0c7cd3e002a83d3b958ea307fc3c07aa29d15c8e9c17a65ed178953a9d0271799f811990d611b748b00a8e9b07f9ae3e669c5d71838542a7ead9a239c884cead8a711098ada29eef3eca719d3df012d9dea59055215ed964f8a4993174efcc3234f2a5d69cf860283d0718418c906f060a006bf3b01c288216bd05dd3570de67aef0f01a5056d4c321a08e9e895c1ffc170dc65eda06949c94f4d6fb59d5e463673a73eb1b2f550f53b1e730ed9dcc1a2b217f20362ad463e982046beb336cd9be409fe747a0ddad3d0cf4c213fa1b3b218e86133633f09019f079ae34ebb7806ea13bdc487772033378c58f2a5e0d71557e67b888053d6e7ded0ef85f30b1a68f1ee378c9ddf08c909dfeabc91ce0a8d67927a0b3d5774ab9907b33b9dec372eb00cd4d004c24159158eac61f48946dedb1e0a56c56a20d4a07e47e056333a46aaa4dfdfd44d4ecf1333c12fcb8d95596ddf7d2b29c0d37091eeae41f88c1f011926601f43c0f30112b4163e6383785a244367315cd7623a3553f40f05db764e0466b7c8ba461d058c9bda079d42ff5f611a5c169975206a0f1feec336dc7f08d0629c9929c12b063bb76590583bbf2dad227cdc5341488d739290c7329c55ccce2877472fffb4a000efc82e9133a60b7c987d50b8b8d2aa2506fb1c7931082ef06e14f9684d3e3d08b28b19b0ebad5507c4ee72a54069c4fbbfa64bf7ddb7b657ca7fc831693576a2210c477e482b2bfe6ee246d6080fb09ea89cd4eaa24cb78326e43b59f7f72373d0d498194fdf1785f8188eba8f5fcb7e5a2f30f88a6cf578137630fdeb7f33841f759ec1515fe4cce6875e609c8cf939195cc9507ad9e5a166704141bd3a09a7886fc6ccfde7c6ec35f5c0302e5e2c67f7da3ae3043a5b1cfbe8cdbde5a56cf29af356b190508080e3dc77bef9591bb604062da1a7189894c11b748d7e74aff26ceffa988df480c3143dfa34cd51a94baa1e703552f3fae5437ef8a7b4f922a259b4e54318d04e77f40bc4cbe16a0f264069ae63f3adf88ffe8c5c2ba7604f8f0581d511b7b3163027711cfad9fdfa596418ad4b46978b6f71cc870dcc6c234b9a0c2a3b7e58e82ef5a686d7ae7a4ddab50a789aec9cfd510149db96e636dcd3766a66a0a9f5f939381ef86c9b3fc1b9a036bfd9167f3a745ef5539e6ce930dfde2ce3f8d8c2191427ecf6a23b834051b92b5fb3aec4cfe317871c837ee43d7b0bed101b85a10e60e4ef13d35cd316acf2f93631c0dfd368fb52ec9d8507d80989da0465264e10de57d402bac3a41fa5100f931774968c8a8542e92f75fc523bb43c2971a3d09f3aa012990b302cd1611b092392035ca0699c9e8bf7448f0cddaf17fba233b020a5ce81e30f486f581c98a98d7ad79b37a1bd2acac478c50d4f5be2aab895cfba6189f70c5419ce567dc396bd761ff5293dedafdff4ea7e9a54696897d64aedb5c90693f77ce1f7d4b6c3fc880d00d287b24f0da246556e176abf3b0c5d7b5c843abc8f1e2fdeaa0cec35ed3a69aa8bde22df50980c48f39329ad4f3c3dd24bdc1ca37845955a1f9ed7f05b248ea7c5deb3c1061471b7068abeef76cc6e75ea3c8a6bb93fdba7e2cfe5c1bfc900bc00fae2f21403ee62269ad1fc9f592322d0f348479dd234f0de7c73d0e47bbcf31eec5a9282706643719b9ebc21506d665ce7e476ebdf7faa3dce63fdf179687bc1f09df1eb9b177b18f9fd7776bb37d4cd73325795f821cb353885887c7d4c7d54cfffd3e9932226720cb09193c73d321bc615379425d3fb8bf2d2a7af841391320909be7ccd7ce6ee16d2d7dc1c03dac3f146755d82aaa4ff03f96f403f07e85546cc81b13202c27d4c78550f3635102c367142539ed1aca89154155f6bb3154a1a6a0aecd18fdd65b3f4f248fac7ca17e306d1f0a160f6070f87148a60c8477428ae09f66c1ad3204886d9f9b071fbbbb18ac3f02f7ccd7bfa2fb62bf2d1941fbf054c8f7e479d083a6f3a802af87459918ec76460d8007676f6573ab60acd769926115f0bbf21ca29175c06b871f772fdf6428aad0301458e44cda086ff5d13493a217eab582e8fcc15b3d6c99a23a45a1ab7372593d52d26f87e93b6fa1bcb17005f4c954de047cf1c6a8cdb02aee584bd0c3840b0a6d0013c0c3c0c3c0c3c0cbcc6f0f7e66e6d664990292529b44281f6da4521524a322599228ffebfbb3fa971a066df7b333333f3e702110db60c610c8c6d84c40b72b393c5e5cc0f2a4252c7a4d3b89592da1d9600899098548e7f75b921246634f5652a2815748685905c72475debaa78bc340849d9c12c6ad54048aa1883ec69c8d9d44a8022357e901c634ea2845b955669b40c206070e0042224a8e183a4536e3a9498a9749fd383c789c047901e18f0408d1e24c9ee1c97f50e425dea34063578606aec2079474ce8dad7bb7cf2cd1a3a48f235293a16e3a5b09c31188104f9412317e9892b19b562be1515c345a6b47a8dac89970dfea0718b04bd9bda72e76dcdcb3068d822e1720aca34ffd98bb64f5d20246407185f8484f4f0c1234831550b63c457af9fd24dae3a81062d924a578de80539774d398d592485f220d40979958430454e89a058101e3d78f42043e451192c8695182f8679203e7a0434649198bbbff3d9d5fbf5c62231fee9d0d36add60515824899249369ce9e8d1c157249b6d3275ea72ecaf8a2b12e483e9963c19ed845a911466e173901e7249cc8a2499a478182d9e55247a65d84d23f2e28436925565ca9489816180862a925ffc63b2d8d629e98f83300544ea81f86835d04845d2e714bdb45166b919631c3881c80968a022392b9636d3cc7649a53708193f8290d181532446512a7ec2447dcf6d8a2411ea9455e753a7325c8a840b9684d2ee9ddd635402344891a4e4081d74e8a692293e8aa450d7a63ba623df3aa248506d8f29c6b8263d9eb040231489772e57797fe993ea419198f4638356550e67fa44828ef77a3966345d5af64482e5714be2dbcc84b07ca00a343a91b0d9aebe9537292b8d1134389164c9e23b5b2c63bc3592654a17416313891b732ae754264e4975246b07185fd0d044d2df26cfa1838e398bf6f881462612b49fd2333196a3f234927530916c22aefbf1a7b53f7a89440f69295dbcd992a6444b24c6949392fb508d197e2512458fccb731e98fee77d2a044b29eca95ad317fb8abc0e8ff11829010379348ce9ce2d668cfab568c0334249194dbca64b6aa4c3a68bc078f54de83470542421848a5814624bc7c5131d282ce8af8f0aa010d48249daa2577d758b32fba028d4774a934cd67ffbc9e63590e68382279dff2c65cc8341779b143043bbcd88181201c460542427a7c90201c460a0919834623926ef4936fd6eeff51a1c18804e5229bc75b93df86454a11416311094ad306a5da4593b52a5276071a8a48eae8a75da971563d5d2552a7c62865341291f479465e90329a80b936d04044a2c8304f51ae4be9d349c2206308340e917ce1ac94a68aa16cf48648ac72bdb94ff7324a2f4452da86a8f831fdbdc6099198b3ede75197457b458348ceeb1fade152506124880421744dc9f220c4ce8148105175e122d633368048dcbcb15673edd9c6fc21a963c8f5cbf352625b3f246dce5ebbe2fa41a56c1f12f7375e56533153b1f22141be4ceb8c0eedd0f79094824c279ac553faf9e82129f9b75f58c6f5aa9c3c24a5dc6d53a71e5f32e221396db0cbec1bbc4382f79d50f146a998f1ec9030d63fb369a63a24694bcf59ffd321395e2c0fe32f4a33ab3924b9b77fb424f3efd7450e491eab5bf4764ca15e8e43725e2dcd5f1be11664a9031a70484cc2b2bdb98e90fdf39041e30dc99bb3a8ac9a4e9e3c6824cbea070321414888fe80861b92c34ac618c65c4b6c8a5281461b12af3c6887ccb4997ba740830d89154b9a485111abb15f43628ac65f6d4fdd1cd46a48ae8f55dfb18b0934d29094ec3353ca6257f2a08186c4eaf26c7a6e53c5ec120a34ce90244d77d7d58350d3263324fb5ed686688a6936bd49a05186640db6974b99c560da4486c4d31afb520a61337f1531d0184382e5b90dfa723a15f3c672041a62488c6feeb25abab25235028d301cf38a88ce099dcb100c89265b2f6ebb649c8f687c21f1830a224d85d1af89d133d0a6e18504f9543add8795d7549f18d0e8427250ab24a47c69266122e382d0e042c28bdfc82d8b3176f4912c332034b690602554f6b424bd6353c4e8120009f2838616927f75cf449ba69c0fd7da018605b0078d2c2457b0a0b12d9befd83d928560a0818544f7ec2988cb4e418e19648c03625fa07185c44a79a6dc5489537993c70ac92bde7ba1f92b9b088d6459488879814615922ef362feb499938cb1053d78e8186850212964f4f0b15cde532e85c01ca63185e4d4317aba9cb665515573011a52a01185e4ca78f94eb2b9f2fa23799003271021010d28a431780c2a5e99c9a299f8cee99abbd9cf0909b14318d07842923821e7da93ac9d60f03048c2601e417e881112921c388108a2e1840439ef738b41df63f447b27af8684262fcca5bd919b35aef48d61863fcf001a44a8c9e41a1c184a4d3416672fb94e5d943630989a7a76aeb79e7e94b34949018b2dc6b2ea98f8fcb09349290b457364a955cfd950e0989a3c37bad74d29bcf1d2159a39510772a1f2e968c907055a9d325d1e2f276119244e6b2cb413667ae8608891def3c67b52b75318790ecba5ff196a1ec542a84a418a383900de61e2c280849417adc2c1697b2e1b2031a40488a1a4b97ccbebb341545028d1f20fbb2738f8c9f22630c9136853d7c84e14548c8f7f011462f0d1fa4dab35596d579f0790001a39840a30709fb2146aa974653aaf22041e9594de979ecae723b483e71d1ef6389522ac568e82041263dfaf35fcfe63f0c8478f410d95c24899bd58a41294d95c9ebc10c5c24bc06bd495cb26e131aba4562559c8edea5204d9423592ff81f43a4c78f0411315b248832915b3a562711d54896bf0cbe87d5310fcca84572cdc6eb7caaa26946235922407c88c880816460062d9293ed5ef27e3f25adc23ab3481af9399710759d4e889f071030ae01336491984929abb3b11323d7c41fc6de60462c92e4cde67c497d4aed2e2c923ce4c56a10a2b3638e64f90822323206193f8e04335e91185f4a37d77b3ece3b92f5eea347b9222965de247b513be8b776806101201438ad4852e1af665ad1a38e3a9215a4cf4a252b92eab4e79b4eb9f87b70183f44aa76806181a28319ab48eed839a34b7ea427c8b74077806181e701040c4c552469e55c9017837e115b59901fc38060462a1247a82474ca7b49a8309e60062acca12f8f107dd22f788ae4d0f1fd141aab64368da4b96086296c46292a448c19a4486fa538fa337310fb08668cc2e0674afc739e0d7b24ab46f0c52935cc10457228df14f463a7146421214398118ad2799d4abbb5152e88053340912044d65b294f69c49f333e91b0e2397c885598994d48c8954815ab50ccf044a2ffe54cda72f7ec74c6108381b00768c0430c1e417e742024e44ae4aa8c2766742249598d0919d34ce569e73083134931955fad89f3b1d0e5306313c925ffbcf37efaaa086922399c4a17c3b78687fa0d3332916015f36513b71b757d4c248579d17984a65367a54b24ea7eec20cebdf3aa6489c4de7b791d214ec69c21c38c4a24c870573232f5097d7e0530702891fc566184b492953f9826911475eb7a2d9aca202349249d989d9ecf5477f64622412c5ce4ac5c235947023320912076475fa9d9bc68db239233c9ef68fa5579fd32c3118959543ce9b9a4728e79b1a3746087173b0a077678b1a36c6087173bca173bbcd85134b0c3035fecb8c38c46249dbcb95c8a9bd56e23591fa4071b18331891ec1deec1dc73cc1f7480987d60c62292428e0c329a1e4b396432527e31431149398afe0e7516f457d048d6d1c08c442405cddb41680e8f6495ca4c662022d19256b0307e29d486cc9414cc3844828eac4ea9271e5364f03daa5ac03d78038a986188c4d3b82975760d19269f5382985188e4191d43d559dee0d92711efc122c6768061811e1d104107c0f862c704cae89010c342cc2044e2978b259934d3bd5e3b85198348301372740a97e5c20c4124f9ad7ebc509be7821f88c4534963a6cf35204466fc21295890e139a69449cbc20c3f2486ee3d7dc1c432a9d43e61461f927c33a613b10dbd4ce93961061f923fc766a62443c8ee3b92b51e10c307900a1c33ccd84372a96c62f4ad752ea6c0f8624748488fc1430c0cecf0c2c230430f09d2e3b6da561ecd23a261461e9232e8b85ad9d126e6e3213153648e7c669b85ee907861e6470925541a8fdb21e94c8d16cf9369dbd37548f2a4d34795da36cd3974484ef2f6daea744c59710e49f97276977e5ccfd1cc9043b2297115c3f68dcca6d285197148d2e9bd945c8f61647d3824e8a9d95a5f5e91691e03c48c3724688b5262f2532b3ec4c20c3724ea8a52a24ae44bc7ce5261461b924d8bccfc96de6a4fcc8604fb4c7f317cca554f19a38cd7c01a92e46ec3ade63f8cf6d590a43e321f4e0999941ab50833d290246f94ccbba62c557ed09020aa846ca95ac538f5191254a75073f7309a959b21c9a39628153a7db2d2962129068fa34f5efea0a26448926ec9ccf28cb4b0d931246aae5b8eb6e3e2171543620a6366b96b66ea1d1f417a60200cc997541e6d6f3a5e3697469801860425744fada55d0a23fe201808c28c2f24c8e7f26c2776ac3e29f2417cf4a8dae1c58e1d607ce1c58e927c183fc800638707bed8714998e185c2347a4a1633654fe229357a9d0c6acecf4a54bc30a30b49a53ca559d059b2cbe642626797986b0afb6ada2d245e58ca09a546c3fcc30710ffe1030805424242c6f8e123997ed02c2362d7d9c21f77bb1aac2d26dcd082167aa427a12ca432fd6aca167c335e58b062ddfdef46cd43bf8295f2a60aa67209af5821b9345bd060d2b2679e55d074a6bb2ca28249367b8ec8a6155d9a4292ca9e2a2f3b4d85fa9270430a869c1e71d95042158504d3e2193a23e57f6346b244ca001224b170030ae52d1fcd495e07dd982724c8f6b839bb79a8cb8f1392a2784cf993aea45b2e56a53f580c33851b4dd8de746352abb2ce23262c1664b76d5b6e198c1b4b505458ccc9734309099f938e672acfcc2e58060301c2782309c929b6b7e7c6bd2ca123213945e5b4eaf44e3a898e90a44a99e8d3a2ba59352354dd284292989271be2c5fba341221f1b5d346f9af67edcc48d648101e32b8acbdc08d212427394f9b726ce7cc538ad125404b3784806e04215170030807e4c60f2a6405377c90a442e78da1163cf885aa0b377a90f0e21ec4d98d6c0c7f07185fec08093923c30d1e248b9e0a594a933e21961d246b0a23be6ac2ebcc3320dcd041b2574e9fca53b3e64c23f941f88134e622f1c3c5ebd229a924636724eb4242709124a6f363ba3fc5d3e916c99ac37fcef311a35db74582bc5342dcc7e5ec8a59f3828d5a2409bdb2b32236d4a9102dda2453867b5a39999ac516e5b6738e3ca52a2a8ba4cf236a47e6a5d4a4138ba4f5bbb8199934330a8be4d738a377ca4366cabc22f153aea07e65336ac55c5121ada8105624a633e5aaa3728a6929ab48ec394da7573daa48da18f453d9e7aaf23f15c926e4cc6e4cfd6ea5b4818a64dbcf59fbf23692e561f848364e7166d6ec1463b6ccb162d4549bf6b27a389595fac16298326c9822d95c4fe752bc8a491868c1732024440c1e21213eb0518a4411d6c9a4bc26d5199322d133c7d369ee6c5ab3a348107552b5be738c11b72812dbc2e6895c768baa791e40c0b820364291ecea15b694963cbd3f289264e8bc58ed299d8e15e5c009447ad8f844527e92bddab9bc735a3d91dc595f39ae2921efd323599d48be135f72bdb7b7c189449f758d7675a24aae9b48d257b9dea14a98b25f1349b262094fb5318f2cf90012648cf7b44c24c6f89abc847c88f36b063cd26222513e8f78939996224697484a2163503adef59fd0129a1c254d764c53de984a24b8abe790f9bd6ebd532229c7051375da0bc387487ac0c6240a7da6b541f9eb41586459604312097a93e524cc2c83e5a3078f0ed88804c2644f9f862071069dd45df08eb9472407cf27efafd20613cf880d47a45b7e426816cbf946687e6af52c632fc56a1b8c48744ddbdc31ac83d6f0221234bfe457f87253a96d810d45249a5ef6b99dd2aef14424c5e5d4186a54cda22ab08188240bfaed771daa73c987484effbeb9779f35a7aa9421126b3e9aece8a3f39b2f44c25cc7678fd992a14684484c41ad3c07b9141dbb4124e9d16ceb7d62533e6575824858f39456752ac693398148906e3f66b9f7413f0444c2a50aafb441cfc7de621cb0f1878437d5418f148d97f63292857e480c99e715b4c97d13571f92bcb2b60971a24c490b1f123c6f349ddf8e65eada437270ff9843ae336fe7f490743a66c694b7bc42ab79484cb9dc8bd925b78187a48eb766d1620fc487c8f7e011460f1e77011b77484c4a3c4713222e2e2c56a60236ec901823d46ea64e7d4df948961736ea90e4419bda2615379ad4a81836e8907c3ac8f3ae2f21c45ce69064b23ffa73fc536a1b671f619c0dd89043c269efb76db1ade29098cfdd2dc8e67f66a50536e090a03d2d7c5c4ff134657018646cb5a0078f172c046cbc217d276b9fbecd42f541c6d8510110ec3012d870437298cea11be3ece7ee0c36dae06c182d93da67293624e69a29a1634a3b89b56c59437278a79d917e3a7a5b3524badf07edda4e222f2af223fd830c9117f8f01146da077678b1756260230d899ad9631f9f71b3271a9262d09dd736c5b7b23a43f297fe1c357b6d38df0c495a9bb9c7cc55551b6548fc718b51e5b12ea53692cf030818e7de60830c09ee29f6ae9669eb2c27b03106ed6bcf6212d798e71443213228cb7b9e431b86f38534532ada49c5c68a0736c050d06a167383a84ab13a5a5b031b5f48acd774212f4fbd64a66c7821793d099d726f5dd4cc2e24cbc98df9d216a72ac50617126fb36ce9f898ce63b585e4707dbaf94e8ea5ac4bb0a1852499773ac656947a6a4b0936b29014a27baf93ecca361316125563b4858b61a48cf80ac9c13ecc5efe55c918b242e2f748b10d5aedc4860c0936aa9034f695d2de3559b7a554486ccdeb96264ee956d21412444757ecf629f19f9142c2c94badeb5ab275298a041b5148f24e329b4c6fbe117b901edf5048ce2ab2f296e68f31eb4896a930c2e08180bc07b214066c3cc1cd20e4a4c6cfdef17442e2061de7e1d6df373d4d480addd92d0715322151f4497bab10bb5f731032c4580223f3f1f2c7a76b94909c2b69acadd5fea426213959afe82c21c1c6119257d645f9ce8c894a396eb061844411762ac7074d1fa217709063838d229864c98f8e3511ec149e997a74aa6908c8067167e722c47e4808091a841035ed1eb59eafc146103cb3112ad6af97e81f08a760c95a54f783c48fa35b4b8ece9b231f54bbb1fba33decdc10d8e841629a30a19fc94f3e4c3d783010b732ab32be541d6cf0e0d3a1f46fd66c0cbfeea094e39b12fd985db191ac32fe05226aa78e60430786758ce9a9a38785598c32d71eacc7c54f842c601ad8e1c58ed2c087817eb018a580f808c26b125123178927b6e6274486e6f32a10357091d431064d229ef6e7fd328080d1011078183cc810a35855a1c62d92bf72366d6b909634b6456225abac8c9ddac3362ad4a845629f8fdcec37edb92ea3871ab4482a11dfd2f7f0adf144aae850631649396df8a6bd4a267b9545d265dd670e5bb2fa3cb1481c113a07a91753e868609160b1572b86bbeb06957d428d5724083d7a4c2be9fd950c8f50c31509eea32ea64b3a660e6a2b12573e998c1b73dedbb567841aac48329d327474925ee2d25524c636737991e13eb6a78a641d4d623a3e5bd1636a958ae4743988a76c2a2d5d8d8aa4f6d9f8cfdd394582b06066da264bf7c53ba648cc7c6acae2522428598b974c2919e4c64991ec9f719573681b359e51246f4ef5516df3a9e9fc406e07181608091145d2fdc93ccf9f33c9bc090909d2fc438caa110a1f3cbcf0c2013540f1891a9e60408d4e88f0f8a1801a9ce0f16302df3d7c20a0c626125043136394f12f58408d4cf0f8310112a4d48105d4c0c4075ad00206c301352e61091105d4a884016a5042e400352621801a9228408d480ca00624baa8f10802d47084088f1f05a8d1882465327458dd70fea5c48804b9eaf9974d49d8fe8b48fafa4ea64faedeceaf880419366d5242572ca1f64424af6f858b6af9f62b474472521eecd3957588a48cd1f1eb748c714e6488c4b3db18bfbb35c8720b919c332b659f0f7d1a5542242529e23bdb06d3b07410499a72a953d2730cff5310893e427ad2ea9999e21388a460b7ba6939f6ad090191a4d5921a9959fc437287cc5b2921b3aaab7e48529f7f337fb13e249f5035b649d387aad4fea0061f12e4b52dc868f239a56f8350630f09424e6ba7cf5b41c60e0022d4d043b26db610f641de96def390a0f953d4c99c6478100f093ac713d3767d6f31171272831a774816b1ab29c4e791f61e911e3eae7250c30e09a7d2655346abc8d3d721497356b5fbac3e8b4e87e4b2d5b0fad3a0b635f5ee8303a735e6907c95f3fdb5c2e9adcff790810f111f41b04a4da0861c12a3e8bf185ec167f33824b968b27d0def2e4b8243c2a7758cf64e23c4d86f48daee8fa36df2964dc80d89e795bf3b6b69a65393032710e951a30dc93baa9f9d7a3e1edfaec186843db1a44fca26bd9e5f43827ebe4511edf23b223524e7a8a9d5c5453d2f4e43926fac4b39859051fda221d1e2523ce59be2bfa7c61912c4f266ee11232b5c585950c30c89172e9d980eba630ef2322429d51c7ef92da97c3619124fb7c58a53a3ec3d3c86e4e01de484cb2853ba1892c4c72cd6f5a9d3a9270cc97d49cbdd7b5526250443720effc9557f4b66eebe909439b9c6aa52cf156baee185c4381d6bab43e9a0e43d92251246189c2223417ebc772129c37ed28a9b82bd8fb890389fd6828e1653b84eb79018f3e49df0505f691f1e2d24b5bd5e65cda6e216cf4252dc593ed7a04ba3cc5848d85c5994d6b9d026ef1592532773fb7c29364fb542e2a54c5e69f73b1ac42a24a5b2117753faa2a9478524e5da7e49e50a32a7ca4896196a4c21a9c7b4fcc9cf1eb21e3c38c803390fa82185e491ad1f6bae1ec42b5535a290e4167b3a754e8242628a711d845bb691233fe14f3a6a3de49af804e9c1cd23d019d4704282f0d4c92da8bbd3d28f6401f151caac0c20417a3cfe60315650a30989a794a5b0a6a534cba50613923f2fe8d8ee0c5bc1b484e4a0639fd0e5d92b76af84e4534a5427f1d3a1a5242429532d174ff5b7e71a098975955d2da71b3f797b821a47482eedd895c3cf5401a65b851c69485a953591172673988aa1420e34245cf2ca321f1dec3b6924ebcea0e7303243522a7da1ebbe9350ea3492a5aec851866453aff15492cd564d1ac92ae3410e32248765caa743852ef5f748d6ea20c71892add35c1406e2d164f803c920fd3fea1639c490585deabff28c6b528721c13bc5d7056fc1909cd2e3474f7f423c8511c8f185c4d81a7428e16365e9e485e4d5243bf532bb44ec5d48fa6cb2f141831e2d522e24993a39d11f64c55ce116925664785afb550c931612740e9d34e69425646410c89185e4ad4d7963346c542d61215964a837d9312d3d9d574890e99d452ea5c58f9e1512af4cb6897a93bea385b138c851853ac5cefac898448564554d714df83f85a4d4b9ce8d5a5135a5482131635abbcc791f5ce528249c566c514a68583f2d14925327992ec9518e2724e88c2db2f36cab7be8044d555f6ec6bfa99b9064e1ce56d332ce2bc78444cfa49b52f7a9d07c09c951b48b363f8fb9ac282159f3a5973e71a31da349a81c4848d01a36773d7f466a90e3087cca99ae43cf4479398c9068313b96839a8c2dab8c1c4548fc557f93e96b537cf7c72042f2e83ab1915d239ed12124665b5d14f1362fed84909c253a97f694993fc32024e9d8e9ad1c2c5fa86d811c404892d9adac4285479bef0709d6b349ec272bedcd7c901442964e53f7239bef41d29676e8ff14de415c3c4832e1d1334fe6b71b15327ee4d8c13198e64a29cea183c4cffd499be6cd9ad29d8ba435719b93fd95562eb8481c9d3dec3a6a5cd2b985a1f94da839d1202f6a8be40e93c9ca446f30b76b9118d4339f4a576b1783688105b9da9e527eec92b3e852c7f646bfc232461689235a438f559a6c6b6391344aa4ee5f500b264b5824e5cb41fdc447e9e8e7155f94dbeaeaca4fe27445b29fec9e6ee65077c156248e1aed2f0dd3e1634562d2cb703a9ff0df4cada2f7b3fd8abd295f061caa48705fad1c44a94cfde04856008680231549298ed262a5c542444445927e6a1afbed9c37bc91ac0f03b105a008384e911c638cd5b4105a429fa6483ebffddc202b695b8ac4dd139671ba9dbf4b3bc0b0001a1de020c599d4e9caa817d91c11e01845a2b9585a988da7768061819090adc2218a24ab14ccdeb468244be46310860fd5314e097084224967d19a94b8f6ff1a47b2d2a90d8484888c8181901011830314095f41d72e36598c1b707c2249997766b8ce9cf2d7894bc0e189c4b0d3ec29be0a4188157622496ba73815bd79a9d42241be05579c480a0f6afd73fefcd7bcb131e0d84482d29445959a36d70e6a2259cf4aa9bccfb4a8489a8501472692f7fb5754f8ac559b13030e4c2475d06e6e6b616774fa1249371742451b0b31d2b544e27ece5164f49af6ce542241ef970621a636f2513510c04189842d4f97a6cea468b3708f0eecf06207184fc0318964eff1b471bd9d4c69b4804312c941ccac5aceaf1770442249c55d0bcb3dad7191dc020e4824fc99ac242e466cccb308fe3c2231c6c5b5cb7372f46f228580c0e1084da4ab65ed2f95a3091c8de04f258dab1daa741861ca5ac963766bd658d929658eb182342164e72f816311096e419cf4cdcde11d3bd3071c8a485217436a4a95cfe0bd87954859cd0147229283f8ce1ceae4767b4744920e3fdf5e3aa63caf0f917433227e44dd07cfaf2192d4968cdd15cf72985988e49163f2ae725217db1022e9ccd5528c6aa675b1412479f4cc9fd3e3650b2a82480e5effad9ef3942a53209232091994beb69caf392092a3e910f1cb128dd7250f70fc2131d86f8e95b6533d7a38fc90e09b95fbd4898c37a71370f421b1cd634a3327f35c92f3214907d51d73a4bf0891ef213973e62a5d2a45871ae921498fbcbfd3aee62129e572f02d8d1d62291e92827bacdbdc1eedf4bc43e2e5283d567a31d566ec90789622d46b4c9795ea90f077a7646ed0d16b373a24a9cc3d7b3a3c87e4b4529b46c620347d72484a6a646c7736dd2f8b4362c85bca3a76b716c321e93be47f8acad19c534c80e30d49bdb3494be791da96bb2131d3f589d4caacec741b12c4a57ebcbfcb912d6243821217717ff1b68fa23524c9fceda8fa9fb18dd59078bd9593a7ae4a3aad6948ee202d4c749b6fb58986e49453bc42d564742ecf902457eb6bfee6314dc70cc9b9c472eedba08459a70cc99ee72e95672ccd3f922179ddc2a728ef8f3908c790b8ddedf9a1528379288624213fe87f9d66ccf88521497785d9aeffef6c1f1892929f9b8efc5d30e97d2141becf540caa76d93b2f24f89608d5ecae0bc9653122646898ccce85e40edf13da3a6f52425b480ad95d69cbf54d5e460b891f744af9c22e8b3a2d0bc9a183c6b3770b21f4c242b2df5cba4f1b5f9fbc42e2c8d2df393765662c5648baf89de6633cbcae2a64e599528ca5ae61965cd3c63e447e10151247873fcfcef9b92482534894cf4bad49452e63de0538a490f477af1f84d614435846b244ae7af4c080990c18c80670442171a3faa9e7fc6a992a2824a6e6a48210175b5e33333f580c0ee07842e2cc9bfc35dfb6933d90ab321930902f703821290539f5ed30b52e65004713122ecbd85b18d59eaafd6031cc72e0042218c0c18444916eb276ee7e2b630846c6e00be40c702c214908d3ef3c559629be60c8804110122203061212b24a48120fe1d729e7cc593309497a2bed4cdec8694b0d07122ae4348e23249e25910bb3f3da9a1b21a9da625bf747660c6d111275357483bedc39f211a40706bc308703271049388890549be4e6d1a4773a734e80630809261a572b78a78efae01042f2a5ca25eb67722a8f2308c9d9a2be77ad95ca19120307100ec70f326959533ccd183fc628e7387c90a43676fb77344b62318e1e2466fb86af0a4f4ae62063031c3c4816e936a67a2d85dd7f0709cab552f220da422815870e12439ad75bea9c93396838b8918b0459b94586678bd14208843d50b8485ebdac163bdf22b1f37bae4c7a6fb46b6c91545feab285a7d422715486d02a37d5e0062d92548a1d2bb5091d4ee833b8318b244f4906a5cc837ed1bc2c92c4aebb63e6c510a58e458252d394b3fce6742d8245529272efa16df9db41af480a42fff3679cd331c4ae48de3eaf1c365ffa7e694552c7642b772363cc9a614592d5c7adebbc8f99de5524495325337605b5d7ab2a1294f09751d26408f5742a127b3d64579b9789911a1bdc4045627746cb70ba9256cb9d2271337c0ae26e4d6ad2291adc304592b8e554579e5224b55fc86cdb5abfa646128104f9718314895945688ee3adf13d78831ba348d269a2e2e9d8bfd9362b841ba2482c1d6b83f829156e7bbb118aa42094f2ace7b51973b5841ba0487eb994ba66f56410cb07373e91686154b35f8bd6cd494f24be5ac7bc6935e8796a07373a9134426bfa132a887c19970737389114bdc5feb5fad247b489e47fcd931b8fb21a339a48181d63c572455131a5360737329170e2de3a68b470fa4e984832153d54325131f14c07372ed1ca480da525e6668ec20d4b241bbe2ad975da1db51249626a49f7749212892ba7c9c47a0ca6e721e1c62492338c08adfe2979b52b8964939151b643091de44824fdf95dfcab3c159b8444a25854ad542a5bdef02392f7d3a607ed1947247f8ab1838d2869166345b8d18884d3a7b9bd2763bf75c47083118929866e2ff91b5b42691149b1f2aa660a1d26543a2424cd0e37149164af59b444462bdd26222966a60b42e3967a8c22223998ded22ceb26d37d8844ed8d1b77a1628c350d91a0396bd975aea7b1538804954a5eb0d5ba18442444b2a93416d2c2b506e1209274bb626e4d29d4524e10096b6da5357237e35d54dc784788aede1c5d032259bdfb62ca39fa43b227d910133a6d90a623811b7e48f0a454ca8eaa4da3ae3e24bcec27213a671b933d1f922b8bdab6975e92a9ef21412e7c3c956af3cbb31e92537b8ee7a26298ea5ca42c0f09e65935366d655dab7848309946665d2fef907c19fabc63d4a0b7736cb86187c45169779a2b78a30ec9da79d7ea549a8fabb9418744311fe9a7eefe72e86ecc21c964ab6ca78a9ebabe1b72a890382476c73ca767a9de429a75030e4971352693f5a314dc7843d2958bc7ec940cc10d37249dd685af986a2b4237da9014ac64e74f53ef9a3f41dc6043d269c7d497ad1fbb38176eac2139e754a173a8fe4f4bc9c20d352408a1c7936ef8ac9df50fdc484382507531bb8ae1944eba8186a45c6a67df9489794cb97186e43a9de21eb3a955c4871b18dc304352f6f69957dc2b51c48717fab85186c4ed963ded702bb120911b64b8bdcbc462a50b426763483af1b92a050f1fb2733124988d0a3fd74ae2540b43b2ca8d75fcd370f1e260480eaddf41674fa3d4d35f48caa093c7fce29ebda7171294a6cbe6a3b52e24061513a54c531ea1642e248602ef3ebac78b18a18b392466c8ce9c746632d556177248aa2bd92093fecf59e538581770480e8fedae4a1f673c3992d5c51b123da5d57091ad144ac4eac20d8915af9545894b1b1244ca9c9297a52eb46e62605db02171d73e448acc03a18b35248ba6924f976c66453e923546d60c9290902ed4902035fe5caaae4c79f63424dd8fa5df9831a672070dc9d94544ff3d9fa6e9ce19122fc62e170f955dd1396574618624ada0974e79cea263da451912f3c79c7e4c945ccd9a13a40b3224e6a83d9992f4944797c6902453c586ec3da12dba1892b3df8efcae9cea2f1c8624b3a453c5285a42e9160c899db3f937c27f64ca7e21d9935e65788cd153a45e48901ab65be3c5133a48bb901437a7e62f5d722139e6b0b999eddf7f3a5b48582f551d7e8b41175a484aba63acd6bdc5bb594852af1bd2567e538c495848cc9e2a5f57adc5defd0a8917a22d798e253ae4b642b296e9f805dddd64e12a2499eecdb030af64314b8524b1943d6fbb4b6c904e2131e8f06aabff73394429248fca9e5d95ddd1c28b42a26a7918b541e6ec2f14927a7466cab895e9e209493aee9e9e1e5d75f1d285139264fefef611ca4dec32f0e14548880c7c0001d284a424c23749bb774db93d5f74c184e40ad65e2a4e8349bf4e2de1f6cee1d692cadabfe07f8caa30ba5042e205539ade738b2cbb81bcf38f88bcfbe851db451292577469cedfa973ac34922583ef61d214035d2021e9664bdbfe8593c19246b20a025d1c2139e592f13e68cdfeac19c922a30b2324a620d73d6f0cb97a3a2359223d78b4e09118fc4082848003271081411745484c7983a9e818beb49d225d102139558e0fa1d7f4ecff212459eac9de2a993fd1114252dce86bd7753ab8c8ba0842a27e58cd68e1233eec12e009ba0042f2493b5d9742f5538ef941d2e5524a65a88a1871e9c207c96ff2e3972a4bcb64e9a2074553177b4a97c59772b3d0050facf2055deca018b27c37fe6b8b6ca60b1de4efb1635c3173a0231747072e74dc22b14ffbe4bd270f2174d822314bd99dd023ffb3e6bf02212128021db5484adee92ca5b6ffb5132d122c08afa87b9d366c388be424e3efc76db9a0548c2cf45c96949ae8582c12e574ecefd16d27a30816497ea68476a5b47e697d45c25b0aaa728a0e5724a77ce930dd9e417a8a8e5624c968f5fa25211674b02231fe6696e57ec655d12a12b5448dca583ac6eb549194526f4595e6a5bf4a2a12454344aabfa78e9747457250baa3c49b1a7d192f41c72992540eea74f66831398d2965aaa0c31409a2554ac7f056237b1f818e5224c79266974506bd2494a44850aa938ddc380e3a46915c39a5a0c173ad9254e1a043148939dc0713ea3e67145d1b748422b96490695d84921f13e90045e26a06d5395e6d979ef713c9757ef962962c0f9d7b22e1525f060f9e36c98ceba0a313896f7145cf534ca6999c48143d636a363fa2e2b38924b36ca5c407937136c4811d5eec40830e4d246517bddc6d79f3b54d061d994852e3b1e476b68d9e375b3a30911c2f26a56475b2921df95850e8b844b28f8a12adf5133a2c916cd2acf3ff275522e14ec5919b57af61e49448f6921a4c7b3d89a4329584d4d049c3bc2c89e4ccb5a7564b756e869148f87f53e79a1b84764e0724925477a82875bf5569d3f18864bbf5ae4db955645e743822f9f565838c7d1a91dc75f74997c5fc9cbad4c188a4682d1a64c8edb0aa8d64d9eb5844b28bc785b3ab342a6a56639cf29195021d8a482e5d97645f1adf4e8b13742422313d9cccfcd47c622f22127fafc2c75b4be76263d07188a4f9f8ceb93337274324b6c82525174d866bae0b3a0a91684a9576b1fd60169474102225dd2beb2ff0e163240ce761f6071d8348d2497c9f89e96f0cbda0431009df715ad697b9eff9828e40248605b7904b963b66bc1809c283043bbcd8b1c38b1d3bbcd8b1038c2f762457ea1110897bfac443e72f468390d1811d607cb103043bbcd8f1c518403e063c28903a905ce9f84362d2e1c24b7d63fa3ef921495f86b49f73dd4d531f92332bb42c47caf6890fc9da1f5ac3d58706d3ef2129df5b8948d3985e7a3d24bbf65c983eaf53dae721b1bde72b4611a7eff2784850b974c7e6deef9014de66764237c8b4bb1d92b3752c611736bc8dbc0e49da4d9b52b94336874e87a434df2c1a2e2f88cae79018d57c3409195aafd37248fc34e5379741e53c761c9282d82466367bff770d87e4243fb705b30cb55cbf21f14f7328d177f3a76937247ab97dce416a2971e936247fe6d3ffda795264101b12d6c27693e5dc993faf21398e30d172d99aa266352499d015ef97db73b9a2230d497964bed4a4378f8c711d6848b8914d279ebd225a3e43b256a89463a8c7ce8dcd90a0eddd54bbd2d4c5b80cc91be3c443856aef7cc9909ce665b9948753f1760c099ed4b5e7e7d24b9b15435267d131e7db14c33d0d4362b07cf174727f353fc1903c226364cfaae80aca2f24e668bf06af1a8d37bd90e81fc33c76a60b49e7f13736af3d1e4b2e24e6888866921dd3a6e41612d4a66c9ea7a76cb716125e635ec50b1e2fe69385a4b978317b2ba686f06021e9f6a39afcb3fa92af90e495216683b8184fad9058256edcd3d48f995885c43a5df5bbbf263b8954489afb51a3edadb192a690dc6fa9613e9d77c82785a4bc3b5f8df9fb1abd2824c6d039bb27afcea986427207a53bde89e74e217b42f2a8d41eb53e1f5b3427249a4a96b564503a67a909093a3a7b8c65b9b22613123feac5d4d432f79b2594a14309092363baf98bd7d9639290a44b5edfc854b12e564848b6981e47d95fda0e1d41871112ed6bd365a5da19152179c49b908d6e191c4685c13d7cf030f5011d4448cadb253b8e8943f0830c7f0afc20c3dfc5a06308c9a2554bd7e6dfcbc723694aa14308093a433b7d6e111d3b5e4888ff0e2f7604e9206d0a1d4148be14c7af567f4c3ea4030889d629b89fde68e9990af2638c7128d0f18304fb8be7a7a376b637c9f8b1a6c3074915e7215b2366935075f4c053f2b9be2f854bd348567a20b5071d3c488a335727358355ac5fc70e12735232fec5fda669a80c204176053a7490f8c92d58501a4af9a78c647df38801905c24750a9652bbbe6ad011052a072e1273c624baaf76fc53900b396eb156aed04ad96ab135a62067236f2a3c4614c1e6918cc8618be44d53e59a7abcf246b548cc9eee3a8e184f39645a247ab8a56717afce599d457296d3aefb9aaef594458234d728eb71e94d68b148cc263c6fc358923b162d3fc8018be4ca3aa23da2629a4ffa5724e9e7fde5e84929bbfa05ede30b27e47045e2c7f808df981a73b472b422a9e39bce9fe3cd54122521072b9272dc7426b743bcbf5524c846cfb51c35a717ab22314fa5c5fe98de9f371589eb1d2da51c3cb57614154942e36c2cf7341f913945e2c8cd940d2a8a74399922314be994a6cafa75c3a5485a1d65c16c346d8a85149863147f50a1b27dc68a29410e512478f231a931d77a0eda1ca148ac8e2956e5a00145f266d656e578d9f737ccf189e4a4bf4e84fe30d58e19c912e121624c18727822a9ac2be5ec885131f6912cb3428e4e2427f5725ed1cc324e249a7696d6b096caa2bd7fc8b1896435ebdfea64f2430e4d249cdc0715bd4cddb5948964ef1825b2a29dd8bf9848f8bd103d2d4297a8cc1e725c2231f33254b0d05a2231dedf99bc980b9332ca5189e45359349a7db64f6f8f1c725022497eca99d16247240e39269138a7a2e51221662d77237923392491e4714527b932554a5b53c81189e4d36a1715acad526c235941de02212187c80189c4d1e761635f6a4ba38f484cc1edad4328139b9b23924d7fe8b56cc2354cd68824f1981bdb1c5294ef012de4604462c53a25fa832655fd2828722ce25eb35c4a7ec5d19f912c1191b31c8a282695da96b54b3d2241c6f031a29588e4954d91399cf9694d8f645529277220223188d065ba5b75fdf64324268be3733a7ed84e6a43249c5aef2e152fadec4c4622472192626bdc8ced1ed359ea0c2207219293a7f40d3ae59852e78348b8919a333befc77b67049120c582d062ed9b37465ec811880425335b959d8048ca24be3d67f21f12f3a8f198d3942955213f24966daddc27ddee9fed438258d6a41632c6d1951c7c48debc929951a6a5c5b22de4d843526c5ecaa173df8553a320871e124b6f44a58cb6af1b8e428e3c24b56eccd1e94345baab50c88187e4ccb41511115dabf348d6f6c87107cb6187e4d4b145834ced00c302e6811c754812573d961674e7d11920ffc3478691830e4966a7764d5775368704df1c9fb2222a7de72172b0053cc688410e3924d8a7cce88a2f1d2a71484ed9fa37e6a2c8972bc790030e89b35bbbed3bbb154b31e478437259ea8d798672d3dc0d49f7c97452a9b35a14711b92aee269da644aa75ff7851c6c4890d7bb1bb339c631a5488e3524de5cf855cfe88e20871a122c95cc7fa553de2e8e78a86470052351200e07028140000c088347f6b30133130000000c1a92c6c2b1704c2e90f3001400054b3e2a4c3c30202820140b45e2d048140a8602e190200c08844101503010868238ce94bc0753133af96b65cdbe75685d26d89c53490a10150b5d581f0b31b1fc9823149b65357f8358ea401517f01cc0502415df7e8bfe9592c60838d69b2eb969d8363a3a7c76010441d4ad1548c4eeffdae40e84da30e97196b4e27b59398779cb17b5e42c09361a1e812687c13b88aff449fc29c8805ed61bb16d8442c3a50db33d757064ce4d325443029e17b04a4120857c8416071478b8048ef13446c5ba2744d852383e8e39e7ab2692ccafdca85f0c9d9ddb6098c12a7203a44af32ac444bcdcad1c5498bdd8a93421a020c81035085008b78839917a65c64508429eb9085f76387b39c18a15713b203e09f3093485bbc22801b1b05e189e01efb6c8c5989d8096cafd8d8a937a61b4c1c3034307b824a82e02310b4971954286a16bd0089afd1610146563e7b72a2fffb47a58bf67c6018aaee8b6fd5c84f84eff10f958abb84867b1ede487fbadfa7fc399fe3ae6aa71d87ace4718d0bbaaaf6941852fb62eb34ff86f107ccdedfb6eb919b9c26feeba26c94ebd2c54d435f963dc8d799d011bc08b159a235afb90faf698b70f6be7e14fd118fac2f8352da363b1940e7d8113db2bd084185275304abba52d7072c20b967037959f7f76cc86e0e31699007467135b0ace682de438281b4ea1f0796a096dde64844daa828ac60154cc37315b245d9ab1d3bff43059c5b9f7f1fb3e78ba3a5a76edb72526d20d9f7ed746cf155f887ced0279cfeec6f3cec94bb34ce24202dffb54f74a38410933fff45898ae544634619a4f88fc1a3139709e27bc68a06c54aba60a49b7a9c2ede235af05f3c9062f9ac1e63f93820e594da0e0d943fdaf662b56f61ed99398d491b21ff082a816f48a6eaba9690b489256181c5bf2c8025eb2200ac0ba53dc90ae2ebbd96c043ec43c54d228128c9cc8b91cdb31fc3a667b5f88dc0365e7ceecdaa6a4cf91524f692a6250c773dcdd19f7a167bc8c0e03f28ad6f9251ab844803e1fa47ba40d67662930bfb2271299b369ba1d50f90081e20d012c7be0214f6237d45c606ce2f7a4d2b2f1c02473dbe0322810f2d7996d1553fcb8cf3a77ac2fc2604a153adc8a9fa85a53ad287ad13b27ce71fd8abe4895a6d991e478db46246e234ebf5fd6158416c6ebe9a2fd2839b80ac626ae8ed9a25f53484203d205488f1e749108b3119915ab2c2e6193c4bd3503d1f4eede9c6bd50e0a7e9604e746407d691dec8d0e69a1271320a370cfc14cc889b5e56425a1fe4fd06e643b7b4ea66c677d554b7bc31859801838150a64099c95fc13ddab81a6a9111da1222d2152080ae012fb44629f85aebcaf83fd00050007a3e0ed1eed050c28a7697bc435d11893c91b36d8d33430538b34411ead1d46de29151d6d17f607eb46956d2c82ba9c3f0f736e3e91fb15d3162ce4a28726144313417fce3a0f2b31ef1b51e5ee1903dcecc42333c017e5565f59163ae39571f99d1e98f2e2701bedfd30f0ac4125fe3923ff780bcef96ac6240de61794ed60d6c6a44524c56769f5ab8f0b063688184a1606f0ac63563d5e3f584acaa74c882bfdc47185c239c17858a02451e499900b3a1272dce60d37e821cb96ed8998f2dda2dae5d4fd763e2da3c282804434e6634bfed79a353a65d708fb45c9fd811060f6f30d035f32644c5e3ba1326578dbcbef56a40fdc83904241c72ea0da0d161e974f6130890fe56be6b8984f318821594639bf7adc8e857d295f3c3ea788f3c9e7f5099cef3ebf4fdcf193df1fbe04a2aa9821896475c63cd7cebc37de77e54ff8621c57feb3f5cb1cb7f9795820931fe7cf0180d1e7e5276080184ce3cbe2b10603f171f10883497c503c361f565e325c109c2c49ae4ad1a7e7d89309244084f4d71607663d83b2e1b6cdf1701857b133cf6aba2a19f41d4bc7aea48236ce0b97e5db37f9398dcdfa5cddb6206e63a52e552e5775e77ded6e4ac68bd00c95a8998f213ea7d297b4f0651db38e73a63dcb5795bbc314cf91734a85dc7a7434779d004153527d188b3d1f8264c64bea4d9f912479320263531493c2250bb46aa02858786095f99630a7d125e1c99cd327b413f84692616a4e5b9851c9d6a077c48e94e14925c9e1d577b81911c6a1ae7a1cc93c57ef353ee37cd215eadfbed4a4caa3808cfcc81b7001e213be0c84b7454d579bf496ea0a1aa87fd81c46d3096dacc14c2ceb6456e590e6fe6c2d048e31949033ffa9ca08f125a866125c663ecfc6c025d158888965c10bf7d7736fbd01d79b31c67c471aadf31b754a1eb48fd2a87cb1e83a0e097e5c4b1c0bc2097e909c0661cfaac87dc9e4142e78110773254d1466146ec4fb3478dae043594d4f58baf7212ba061e2f96c029f55e97dc1a3bb105b3d0becda941fa2d378b990bafbca67e447923672d872b06cffe390772731d03550e9a4ca54d0a38c457ccde6218519bee5de2c80b7eb1050d00e7bd706a1896828aa6a68dd180e4658787bc12a47c8e855ba9216e0dc7e5e83db421dd4424382c6448034c4cf7e2f8be54b950326e00857ac92518e38d1278e32bcd2dc62f55a5f3449917cf8537dd97cf116f919de4d6af6d7c61447ce63fbebeadca609bb947254194375a8ae8c0ee34d3eefce92aa00f5b74096208b23fcc6c84b26d7f177a8de1a22b91346c8418677c11d3abac0bdee5e99ed5125d8893833eb61cd6db62a66737da6f79275640061dda8d464fdd26eb46fa756defc7a228e6bb4879eb829fdc3896957f0dd73f03d48c2bf98d09e2e10b3cef2099c395595dc10e3502b0e6efd2515483fe75c30440786343f9a5b3c2a21e6735aacf08980819fa848f9511df23f2548e28a76856d4506e5e463a456c0da959f76be9fbf83ad8cc01fa44bdd0c798ba47c864ad029b32072625c7d9aa01a2ad050697166819f243defc8c1dbd67d2a194a87a36e9595d6d5c7948b3969ba33e8df9cf2ffd8e90cd4a9bf7462c600306ed8c9691215e4b45115554df3d4c789e85e2a994f2c9225ca39b519112250526869bdac0894f40b78a76901f2472ef4c916511801c7f6b881659b8bb1c80e47b5c3c1e914fa9a1675a114c66b41f25c86ef363c9c2e1ee37fc53e9cb287ca89f48c60cd6e911a7ce36dba7bada43291ebd15276b4d824aefb4d6b802f4209a9e1cef81919bdbc5f3540adf69d20cdf5fe4a7b22592c37abc036e0a46355cc4985304a19d98934974b9f454a1189f2081f146f82a189eeb07f489227b40929e240905262800823af401c4626b702af3cd1538e228b5d6a0d6d2909382096f402407ea24311550015308d16008044a970f310815805e947552039909851c30aa7051ec08d374da139a3017f730acb561db57824b187fc97e5ef6378af13dfe82b35cf518f192f560f765cac71b8d69f296503965b91aa6c6030d063309bef07b40857b999433b495c282c5b02ad268c0f74616553dd1210cd26d0b8d89b102e437d5b6828f8d2c23d2afd1fbc036ee05e3d00f0d62d1cc8d47eb229f8611e8da1314f8daa30410c521e696e809936e98462b109b6df5560f46b74d70b6723b02cc0473e94c1b568d169bb12a2880a85f5393385b8da0112b29bd60ca8b986ec2e67119c996f717e5cfe400dbe455142c03c4eb24f426b251a2a3b0475a161f0d4d174fd00b367c1d30d15806c1d510807395d7d1f286770f2930478678b846f7ba11d6756d8d3e81a08974675a25054b09f4a9b8ffa66115bf33add57219541290bd9d87dbdf86fc217abdf61ca7be82b0a2b1bcb06845bab07e2764a7bd482d53f6830d3263e06670981663bd29e77a37fda2ffd8c7526ffb670a1acfd7e4967f6460218d6013506d0009652762dfb8993c805a1b8b0e50c310394c1891da31f25d5b08ab08861045fa6f39263bebcccff4eb463cc2ae23f49c88076e98ff4d80128114908cf494dce855eb83e012b29bf5aa7a0dabd53057c1685123953d4a84039241d4d2010921356c121e51688c8fa760bf85c6ff1409069a9b4c5125c75a0a8e4589a00d19c6920440243293252ab48c7981c23236a4480d204dc11ff0cab6b66393f30feb58f467d0bcf5367d526889c698675ee4f1d2bd3d60a506fb30e8513c29a6918910beb2ecf009825c8798017ae0d3610f390cc48197fb5c61a92f04e49bbff327ea554bbea0c36815874a66da62600ce43ff4c529677c7a190f955bba7ac1eff86345b2a7a56feadb8554546d8c9c88687c3dcbd6529d021028a2a6d627da754bee5ca6f00f8b26c5101115dca14e2503c55cb47cb46de332cb4785da140c156a0b2d7614f82dde3169132df25a7d5da2651f04444135fc2db4ba5420282491b748b8df155946b04a3c0daca52b67f102f0da280c060e0b1b88e4502da5d6da5c53c6f3c2784b3ca39318147703ba1479623084625418a3eb7e0acb2b33974cbd900b74522b96b5fafea4d373a0cc8254cdce2e9f2d3af3edac88bf05a376dd5874c753da98b690c5a78e80c9837c605a3a3bf645da3cf9a57253a087d9829cd1abdae7cbcd619941e7cd19d22be608c5d265b37020708386c9f5f70f136aa1e02d8aaa32a9f99cc24eb24a86a471abb925bb3ecd84e55a846c31c552cc1a68787aa2a0d90db9d641c51beca4ee504a0fbed3a927affb23f3ffd4bedd315bca94ba819a8c6f6cddf77a2a8230af1b1b54c5f354654883ce5ff331204f488d3b8a9fe337200a8510304bb47e0543f82d642a8b7bbd99952154d7d7f8f68fe80980dce85340856593cc426d9df41007cc1bbf75e6587747d5d3e011091264d695ae23d367cb2f321b21fddfcab4622301bd641a9ca2379c9c287b186838663e2d50581b6c549353507841b07dfd7412208dafd2151da28637eebb827d2ae5d245a862adee8180253d9be7903c99b291bdbedeb72305eb2d6adc89cdfd0fa28589aaca3a4f7e17ac771cd79f5495856b669fa649afda0c834b203f1a6935d76be5d88224985b269f2a558bf8cbcdf8f02c13131e5b0f2c5ea35fdf1626bf312065466406e7952bafb96bfe76ef72088fcf3e35f464ae6104ac13d6dc2420208ddd27fd1fee54cabdff8667dfb46e420d62fde12ef894b14134928e6bd6eec823602f2058abb4c340a9678b773df899645b95d08f86638d4b311704086ffa2857284ce93313ae4d6ddd7c925dc0ae6a204deda41e4a05cbbf77e810fe8cd49a203e6c28f26875278d60d3f7c7ca481fe224fb415da141147bba34d8958da2d6d8288a25dd0668828da2d6d42c4d377af5864339bf0472c05be7d37794821c2370b384c5a916e81ae687e1e38b92e04f4db3b4e3aca1a075720b6a4ae05a428e3cf0b91225282f280d1861458cc007c7307310fbc99252a7e00215460aedd4c0260215796f332cfe062fe58352f01497e93ba81e1c9e39b0bc9c4a8d618e308ebcd172d75741b410e4c063492031470434504ba65190f179e91967433f5d95d40043e936d0359de7d7b1f902b3702b8263624100154597e961fa6a4d3fc68889edc2443f4780a33212a7cc4315928cf8908d9dfc1fc6d984d79796f3f2a2a3c4cd6c76f17ad68bb8ea33841af0080e225f6636c208be7b1e1a8d569236b10eea9edfcf4dd95e140a20a669573a028a169542bc8ca967396984bda8cce828fd672ac73e11c2d0d103640f394790a42197322cc0a412903777c1de1961990407ce8fb8ee2c87a9fc0e0e39b9ef1d9732838630c683655bfb8f92169cb1a4197686313ce8c90180144e1310650e4f6acf5f90bbf5d0264c76b9544b61a80aab2f50a353ef49560eaf6a843d75493e604040041325121c3ac18f40615f655e23333311655c22b2d7ac16715bbccdbd4d40128ca628030d85aa507802300e6d102802a61e59dcae462836a23004b5bba8e39b7f2195c1e800f8b162ff016f05c3dccb716bcc4f7ed7107fd84c98b0920c9ac33a6fad5b8320f58e01c1f7973b7f8a757098d18367e83779c4c6aa48a1ca1f7cd7eb87840fe80393daa37be6ef0d552c2360b37315fd7c4ffee1a44ee23463a955b4377b2b7d46610111c61d77241e00eae7489adc684315ca7848be2b082550db8a7cda4156e3bd9d76134051a5d4153c428fcba77d03d92a6d573abdad79666e47423e1682d4cb9d2757d0b35c179493720c87fd233c17128da9812104033dd4ce990a36423e48f1ddce8ea1589ceaf8664881b88d424bb8e6b33a82ee5dd1208a00997859698ee5f7adb23c5274d21b43cdb18da0ee99c5c54e26ad8a618be18f11e262cc15a714082d3b3d9b31aa2ea9364a9251833c4e07603ac2e44bd142787140aab9fa26430f2a72ac9b96adee9e7ae5fbc1674215e977f772de305f1dcadef874e081404b35ce34c2214eb20d4535bc8592f7466d22b407be62c9f5565afd280db34b24645cb69a449522ade193f8a5d35dd200f0e4de6b521222d5b61e4762de42b3fc78dcbde3cabb1c7908e4a719425639be54db0c4531d101cad51d3532a3389b9c90ccdc5a1e07766e77d3e090ff0ca6ce734ea6ec85ed78c55522e639449d8669281b3f47fa8243621b3e166405c86029fe2693b9526d89dce055dc25e78f6d44b4dbb192116dda68a42dd660fe00ee1e41ce8c95a27ddbd4c43033c46cd8d17f790b01377257049569141da6d39234e93026df8d975ac862382d1034495541a609999363719258cdd3d041a0c81102fb5392591f9857a5540493bd134e21cf6a3041c440f6e6e46ca42dd70039b4cfcbc77da179041c4538468b54d9359e1896c3a3ba116214ee3618a2826ad6cd2b9a6b1c34a9f893d15b4ea22a1bf412e2b20fbab37f55817173c732f780ba3084f092ea2c03e022a99d7192eb6c6b04bf3440916e1a20ad06720038de820506c3bc8550da5214a492fb6743063b8fb57ba54af56208914b7e9971faa57e4b1e0c85ec63070e3108954ffa8b6096b893a8d8545d5b4b31eb9b78b7748060fc4cb3db4dd892d473bd27df49927850095b62092f5d4aa570e0fa9020b20c6eba2d1fd8505a60e6608347ad3c49825b1a0c8f26edf7ce475cd2c7f4a9989437db87aa7e7a445c4c3b81c476700e7a2d22b8b0ee3b5c90e25b6ccc73686591540fe11533d5d38d9b5f3301af8923693d6c7ccdae74240d2360451f27e0b715375ff4674d64444ed9cb46f91610ef36ef3f62d5985ad894a880675166af266bad3bd36bff9e6a4a3833359579ceeb7dc912e2ffccce7d9430d59a913ebc1293ae168e9e5a2323ba909686e6366849dd42fd0488681ebf8b8a0396c2612d5a884d037dae3f9572b0715f732b64c63736073ee077f6ae3b5cfc6ae09b23d4c00f4f6098455183d2d2b1ab5c9e752dd6370c1ef0b10de44d1a40ac07980d7fc3215510be792a78cd7e0d5128dfd00a92d0ca9af5418e20518872bb63d7ae8cbf94fcd8b59bd76ac185d73e7cdc4be8e3f8211c4f5d2c8c16ac6fa76a071fc82db1b97b91e8d2e315967ec199193cc88d95fd92aac8ed1d09325cb83240be60f6a5575e2750aedad66c419e436c290d014bf1939e3c56873e198e433cdf728fb5afa96d1a03f332064d7fef90bce5a7ec9c134031ae2081c733423aabee3b68cf8e942cd58ffe36aff9e4f68e6c47fe073f31fd00d89ba25e11e197848957bd8b77ed20d2a88c43f60d56fb031b95ab9dc7c6d6239b8537f6c298451bf668176d7d355b28c8f554740215d97d06b65c849d10689de6f1a00951702c4b4b7689fdce6c2fc0b20a66e5881d87f98f6a9297b6544fd8df7a7b03caa786b5c715ec2c1662022f0551375c1bd3cb59269456c024c73291130937df7c4828abc4c4314164803ce005babe649b29796a6c4d4b6fcefae511d96adb7b35d88ac68488dcb704c563e0a567ba8273867c64763643af63ec2db794f78c0f15b64a8146d7298631e5a8836ec23a296058928dbb0402941a48f975ae4a7419af5b8b472fedab1969192a53a22ba8cf10d3fd4e0a816cdc0e74de1417844327dac233a8eb948e34e7c32c2d61f4ac361bb8354a478be34418e4a5b4f71531b4902f452c16d724954480049df18c1eda0a7286a9832392f7f58b320a22a1a951ba6750819925a92dbbc93b1ec0f5f548162f00ef811fd75b1e493336fb73c55b704e911c1102916060bcff42e61ef405a751904bbb93e2e956400c9bcfafda572c8b8488d48fd29b851ec4aebe0a09137ecd73bd7a4f773315dd50e1d3f6660dbb57b5c4f3632311b9f86c483963f1d84f7afca41f2046bc0405dace3ae01d0a0342f400d3b5291e837196d7e8aa9ac50ff398303f009ca603610d5fb5df59b48712a16062f24716dc23466beb2592c2ee1aeff909dcef0831173e3b8b76188d99c00cb6a1e5314a3fa6fd9d0e6c96500489ab0f21280871fa4bdd604cbf9373d39e43488c6e1c2243382425016a6340879b69b04706ecf909cf2ec1559370609139f21e84928d412417e5b7c4e456ac0e24e2d199182a2f282b2485e93382125d881c6e4fe7dd69501c6f38a58126f97957d3040530278ff544714400052424bed371c2440d9b87400fecdcc2e1ec9bbb4b9015c001d58b092839ba64a23036df69ab64f60d0e5b6c9ce1d7ffb721b75e38a06063cc8f3a6494a3d3c38813897b138bc3a34b84935d39c332fd16ff1d31418d78f54e65b71d496b74380fb7025b693e583d03af4865ec05d07fd77d7af186d92a3bf485268aaf12410da780e7522f2fe3f1a3d31a387569ae39eddc292e190b0e305cefc84416e9b6c3c3981115b4aaed692f9ec92af68a9c1a670e2a31dd7a96e51c44f3c9d9a9d96179b746c0d13f56a00ef00cfcd86b4d3fa6c288f7994622bbf09e606e33d655829bf6310019eab1a9508edc0789dafd9e91c50480f3a0b9e6db86a64945cc0808cd14f46a06fd88c4a34aa0786715f6b4087b29cb18fa74f7d304e43f11a43ac981546bca57afb1207d4a6cd21612deac65ad0d935bc21b56ccdb20006f3dd44dc711381eb3691fb6aabca4441679148d2fbd174c0ade3878561b2945696f4001c4d60e04f4ff9e7c28bca14abf89381a1f71b492746c6b775e9255c01a3c864d173ff361a93f6b999f16806726d43c31e7cfc9e1c0ae3d392f4c531f92885a76b4c99323437661594a057cf9f94687e84128385fd42714fd7696ca87b45c9ec4fdbc255373a596fa43db89dd60e1d19001b7f09876a864b5d27da6ce6b20a9454f9d73d0dba7befcffb7887254d3c40d0b87c3da8f09ec67c0c251cf717111ae5de3a714d13a46750e654ce499079feae2c91f0e3e71a3960d0c3e7e70301c806e8014ef083bac1c83f9705d02a15e9d83f0240b822286105c928821951a008ea43803f04ce8ac2c16977a10ee4ec5a75b8bc9fe46e242f167763afbfc89ea48e502860f1317fb04780fa0e9746c02710995142fca6fc09a1563c5c844830d66ef72b4259cbb28ec2891834a4987490f7831ff480d70b2b2b23c2e7465690cd6c39cb0b5b10959239cb37b511dca9166ede484c6a6c594dfb3d02db4c5ee910478d2341391209f471a5849bac0ba2ebf2d966a670434fb4881c419f0c6e1a8e1de0c988a45415e21869469a66c2de813038848294444ffdec93a384d410c927f4c64246691160c6a6c80259c480b4eead3571f4d845bb0e9e3e817eeaa114eddc63a3a03d8c356e38afe01f66283176dd9b2941284135cbc541e340abed771f5c7609821cee592f3c0561e4d13f19de1afc6fd49067044a8b5c84611240094bc19177d978f4d3fec9ae828d89f5140b23eca08888c896ae72ba459bf427b9e4dbeea71e25838d18950afd82d285de43bf99e812a65ea4ef6824d41d0a218a828a44718b8263694599d19683d1b481326c2e6f502694615ff6dd78e843f65b23266654a8e99552b530a1fd8802da2a0980c5c03e24cf63faed9e069d1ef83819a9a18fdceac458d4c06721981c8a64422a3d8cdfcc2e696103d070dc00b79182975011b1d037a5916630449768c189584a1a55d4acdf3e236aae465c4ea772f819ffebc3af40a415170069fa4a1dc0d783bc0178ab26d2ad421c890a53866436b380ce5c9f1f333fde5c98563e90015bf2743aa2f13660bd20e4fe0289dcc18767767f453ac817fa874e926611e6913a8fa2f68c026c9a815e2e82caae7359611e6d00703e787ee19962f301ce07a89805b4a259ee43c6d04e5416c46515911d83386ffb111dd1468b9aed3d4cc282f88e1ece5f26d5ad506b1ce3d9e70f2c046ae710973126c986fd7156fb5ff9b20a47cd9baa4d349b66b6e9de867e9b12e566069e5ecf37883e62ea50c1727aade2d25e68964ef99dc2c144a2ddfdd893e7678213f10029c856ce89fb82ed0d65871a4cfeb243a783c0a7142eb25732de2abaf6baac90fc8ddf16baa4a404bc455204a48fbfbf5cbee83db2715ed5dc2cd263dd90a23ffb0e39e71f7f698191e6df806b0875bb58904409047d7acf907a12a19b5a1cd58964a9a2d1be1a6026b44722312c218fafa2c3805de62c278ff7b997dd2c00230c5bdb27b76009bb19111524bf6605692dec7f549ebec0e8aa6a4c11fcb9275e44f96382260a11ce1f9c6938e5df4a6676f9e2d2c6ea8c6f8b563cf31c2653ce419355eeb0528314b81e63d9e2515dad96e5772a7938dff13afa51cf2e44cc9afecd2dd534b67afb14984dd3c6b578686c94460189ad1e36c487cbeded3745866f8a27d359ea904965de5cbf9985a4786bccc58d12cefedfdbfc4d7188976a8087a0c3130ed9703f98a4c00ee50b89ca230d10c10b84631470f59a344ae314a743e3d8930c368400b805af325a265fdcd25d405b99882cf3d1a15d4dd058a81a43a9aefbae8db06ab717b275389d779418549f08a45904a1e60345ebc4fc3c11a89326e320c61e7aa02e8a98b91f6c9c08b52441143b684cadbf4c87f7ee07f8ad09e398a87e4fdd26aea18e2f15355be14df2e23bb4d0b471405962b9db2ee9857270dd36415fbe1ffae8f1d157a14a054f9af1b2c5501bd652a768b7a377e821affb7178f315775890480a113c64a00b8ea7ba06563d0880a5f00a8083f3ce851d919dfdeffc32f85936839a581b1fdac6d1783320e223489f20242a5bc929bf32a0e7308e218bd9b960a1fb8fde029e018d53eb3e1cc2edefddb1e6cc918d3143dc331f595c4afcc2a4bfb5bbb9c1300616f1dd3daa43462ef8472b62c8b97e24a9962d95d78c4383a2e6a9e437a639331740308d47b1dad27207168a9793962bb7d9dda2bd0359b3cdd11784eae306858f8d0bdb0ea02cb15e2b00a296131cb3e0cd9dfb5fda9c1c20b6b88cb22c28008f86541d5819f4f722d565979af75bf576768f17a8b386c83112d985923ed0138d6092e4dc7fe1a992e157dfe4bac849d55d79ed0a458f733ddcd2fa3fee265ea1edd188e59fe31d757ab9164cf0784f928bd9d21eb037962c961acde62d33fefe00c6617119213956aa308839ba2b3e773faefcf0844935a3ece98ceb2a0bf660228305b128189546b92fdfcf4222aab3ffe5c11fbd6f659846ddae7ff1e4b6e1909b08bb7d4e845ec6c474811a678efbc8aae75b7df5f9619dc3c04477e24241d75ad12568332ed365f70d9bfba8d0cfcc2830658227e0ba3d7951636f16e38d42ffd9ddb9e1a03710950f4bda77dda6a341fe95086f604bea004904be88a69de977d5a9456045d52f2018d1716579bb78ba3c7b7ce81f422d54e6101a10a4e7dd831b1f1ed0a687de03326fa1e26874c0e5695ddfe18a10586fbd030e67aa4c0d1e98e60d6ee94d68fcaf84b06fe97eafba0120d4343b5cae0b7c7c5ea0dc526f3a5b9d415a6c7e0255bcf06100b14ebbae4b6c6c8434db69d01446407be4e04667e59a707bffe050920bc556e884cf163e6d3ac663cf38705c1de4c44f8e660b23cc9ff6219a8c614af200cfc019870169bb1183092de94303773a0bdd099985b7d47042b9e1f11f83535d5e8480d59393601443f98b7fe740356409e74d853283f00e996060496a412639a768f804fbfa91ac85c2261b700fa72369eb0d7b6078dda892fce533379948cb7c5f9871139d4d5f5b12040f83999280a323a395e1c3c25e19c2281e9e1f3e67c15df0d3e6c13373660794a7fb9024832438835ca73f7a9f11a8be096f4919898b4bf4e00c8c70be46cdf4fd5c00b826373156982f8e30a59442c4a9231659085ee291ce8ac256d35e6b74b7acca88220bdb6b895534eb4e2cbe581a6c30c95966df3e2238f6b71d9803d9b56a41608673ec2114336cb69074b34bc9b5d3472567a9d3589b16960ddf21ef0c38ae381cb0e2bca16c6f7bf52a0083624ab6547ea0085a0718d7ab0f65a80a09314e5c3c586d7051ca6222113bb5a33b7402dd1285c6d8bfe3a21aee5c666f14176d75f63e500e85bd24dec7da19d00cea8319cae5170188a38f896699a0de23fe8bcac0de91636f24fde643814568dfa56abcfb4e69438ae38bdbe8d43dd08a78dfe5d74d3d58c46651989a81870db02dae8d8052c34745ea4a87d65725c4c5be7036c5767a85ab8618ef00128f7a48f952a658d93f1abb1e2c9e7f088de10004891f73b91bf081997511e250a155105ed3c05de23f92dbce85585086f08db94022b6c314d93f2230d57d0d4b0507b23acae81db99812069ead8bf9ed62172f1f01ee787aa648afa9515045814f6ea277cd029925444109e1099d28b2bcbb97838ee0c54648d09fe55a7a44be2236c9e0d4e61ef7cad666b7d3452ffb982edc6771075fca3ae390a0824c091124841f38d92fcdda838e0e070b648e49164ed5a2f66d26dedbee2e8a60a9461af275459e8877dab759253ea070a760264541c2a432ce69a2b1d0e253e73c46221ca5f027365f490c1f9b68986e2b8898fc8f287e34c1f4c19255d45a38512e03a60703342f09ec423f642f94a9d03c17b38b0621a8b05475ff2c42b0eefa228305d097ea287aef86862807dc7656a8711714add1dab7f72d4c8362735689812cba4d02b154893f3509c3f497d2afe86a383915ebfd8cd3adb99a922ab056981a8e7e2e9e053cc9683708c71495e5de97ad6e26c5feb30f47294e86c009fb77540cb32a99a31034fb0de30d5f14fc6f8650e772bf331fa09afe5783739d6bce40933740662aaeeaddf9683435450af8ae9136ecc1e3649f0190a813b12b61a3ee582cf3a71481d2055d934a6576421086bcd551d81342e7b71a4adaa3a364f7857daf8167bb83840e434efc4f21574ab4f0d63193126882508238a8683d4877314b13db6c1281dcddc263efc52ff79378009cec626857ec69b3fb308798f6c95c4e99410cf746f8339612e6dce8fb8d452975804dc93e3160abf506ae482fbd948c1086f4b822a9cd2968094900304f08bcac64bae8299278247ebe4fd40f9d4d98ef88e93c81960829661644e5ddac4b7409a459490d0699d9eecc4353bdda1d77289763c6515a57ac8bf8746c94163c0c9e18a196a258ce3bdb2a02e7c4110ff275d23ba3ffa93e922f60164e485d456131ee2b49f075b2d2d88ac775239fe87572531e116aec0ae5207705a5fd381e33511b8390e635805b35c66d6154003c7c6578e1ac563ad48b42edf36baaf4006cef9a3ca68774b565232209d13eee3a698b1df02386078675f477d7549ed697d69a7195d17618143aaa3c9673548c324a2708f02dec2aa4ed8357e998ae264549e1dbda9f330a19338a5fda164322e3c3d6448f58fcb58038277295e602c3afbc3dbd2becc085c53a673e9346f614cc21454ce4938a65793a31171bc843c4e5223f677d39525d913540c32292b040cfcd9a9cc6d36dce45ff27bddce668fcebd9c33a80928b321b01652a6571b2b99d69fc42f82d41190683b4cc523107228789a7a7b340bd0321ee70e04a0725ae72e2816a6501a9f28a9a0f14b336deff20846af3910b4db9b2e6404f43dfa036f96846a98e984d187fc853e00050ce3254f068a52556d52c75f32d29eb2f1eaffa874fcb1fc7a36a38ad60ec0a12181b35b8a8038b964bc1a3b506b85581fa3398ad9a5410567db88aae411367a70eb848230f250d30453bb4f3acedc62bc134a721823483acc18d68bb8476543d9bed589702bb0d1443802f02ca084c1c81a69e04d1d08cb7c95b4f792e1a9fd0664786573a90fb0a0ea5c86eb274134149d0f5d366851577344e94863b578dc08d98688b548fe82258a97b3de92a662b324bc66e22fff9e61d671190b3f568dd383486da8195e40bf83e4be8802ad3f15130f28f931e38ed6c4238cf019b9c1336ef7f77aa2b7265f8b37f22adf27ec63e4b51a4253d629821a125af3661188dc77b31f82f89cd624a2c86f82e0036645f8d13eb410c95edbc06c7b87d57ec8987dc9e74dcc6d8e5235b48cfecbcd87fe3d8bc38cbe21fc88c979f68056fbb9ec2cf0e2737f32dd54835fd96a654bb304129dce6d1053a081a6c6e61d662a9ad03f1de8c95051d37b01b818e87dac9929b7882f8dc0768e952b8360313ee28968a360c35a367ea4c69cdc67f06ec21035e9145460e3750b2a4d001c33f3f3f3f3f3f3f3f8b326f5bb0cd82501264929b5c9e3196621029a594524a4991c385e615000000c2d61a218406086c806f0e6f0e280e279d34290945394e3c39ef327ae6f6a028eea75297fdf393313ef089c28679b5beb7eed6ebc3136579974ff75ea544883a51ce7533fdb2313dc79513c512cb04cf92476fced8c7260a7bf5e993567c0ea2c4c68726ca3997248ece9b667ed41f99b853939cf25c9e846f860f4c9444d37f2dbe2f539697286865069d5fe2c478a325ec70d2b869fda31245fb205256f7465ed3bb0f4a14369bfece30f6c9f49328968c4ddbd364396a97443106d1d17a6289b143c64814d583d64d361a270912c5586a2367dac50425e81125f549465a283d39d805850f4794bb4383ce56265fd5a61165fd32c15485c888a2894d26c5fd8be9b0b10a1f8b287b28f5d366aa1d73e8b0f0a18862e7b75da56ab452d2771f89288b569351e9e5bf79a4850f44143ba6883897b9f8d21da294f51ab39327cd8f4186287c98cc31dd5c88626fc80f25e676c95e4208b3f13188abb3091e273d7ef721886249a76ed4556c67ac578128c7ccd09f32ac79875237e20310e5d4b53e2686e80f0575193af726f1aa72c7407cf8a1a4a67eb496e6bc1d94fef0d1071d38f8e04341835a8d92379fdc31cf71c380c06af1b18762fcb4b249b40b99b3a387b249534a4b6e69c931f3918782eedd73ed6061deee071e4ad97a52dc09e699e98bc0c71d0a5bfda693c80c372dd9a1ec99aafe3e37c7aeac43d1cc6a2c446e08d91c1dcae76232c933f949966a0e65f710a7956262e43a45f8904349bdfb880855f52ea638942cae94be7d1d99230487d26c34b1f1e98f373862dcf4264d5d1e3edc508ca146d78cda508e96b14b4eda6d639e8cb035273ed8508c267569ebf9688f9f11b68f359475e5de5f63c6240335945a4e281966cf5c436f8a8f34944c4535c6a41bae43a2f8404369f374cc49b346dfa31f67286aeda70b13b775758463c71837aa047830f8304349764c27091aea11b632d20d84430c2bf33214b344880932a3e81df8204339bba8d3f76da7ada3bc818f31146397a94ef6b104bd0eae18ca625aeb37893ff80843d1cf64cb4d92a01136b382f60186f2a69c8c0d7a4ae61233c2868bf8f842e104af4fe2464feb952193038c2fd0176020e2c30b052d535debfa27cab6d7868f2e144f63bc0ca5c3c4b4fec6e1830bd98b72d1499fce16caf5a934bec9d2ade1430b65cb986b74290d621afac842b17673d07c53da93e07d60a1e45697ed73f19df1a6018e32c6f80ae418c1183f328232c6f80a7c5ca15c625badcab66c6afd0c1f5628dc499dd362842e498c3970889c033eaa503851726687a8934f528e80035f20e1830ae5933e7ea5495257f898425945b47de7787af336981f52280972842ca95e64ba308942296c4f491335a8ccf21838c630bb0f2894c43cbbf9f0ea91b283715bf8784271732a6c13c1ebc18713d2b0d574cb2dd5d5cdf2d8ffb5e51b4eb6e3861837c2e8c0176098e08b1170e00bc4356b42b9cb4e30d968ea32899950fe0d266ccf83e7fda0c8cae16309056542c6fd135b379cf9a184c2fbe935cbd1246e64cad871c30f1f49289874994f95fe9da9890d1b65ecb85167870f2414644c4e5d79b1497d3ec2c7118a1bde2ddb94a4fbfe21c287118a2797f6f675d5a04ede081f452898ba385dcdb973d57492f82042b9c4ac12c406f1025f8051be00e38b0a80d149f818424196de32514ccc87104a222ad7666fa2759ed8183e82505c0d3a4952ec7dfcb481501437492c41aebe964a4590e1173e7e50f2ea357db5ae4badca38222f42860e0a50e1c307e5d13ae9233e9eb251dee0a3070531b5c14aa6da67f0c183529ba68efbbec9693f1ebb28bc6a34c1345b9d8c1f91319288183a0c0d444470ec400a78e8a2789de47b9d4d7284ef61e8f01c13384bc62843477ae422fd9ade5fcd24513f63f01548be04767ec30317e552f245cca7fdecd1bc45c14e7c4cd273f0d8b0d9a29cc413e5243984ba894f692dd88316e7310b0f5978c4a2ec9e2f4da6a85935496051de7cbbe1e464f2497af38ac286ac12ebbe0f196e57944d32e1a53f3cf4b6dd8a927c26778e6cc8308d595150df3e62f6649ed1c155944bd0784ae76e4eeba22a8a9ea34b5abd978a72a8add5c69c4275ce5051926e4cace9bec7f74f519073dbb9e939d74b4c51dc18f6329bf0f1284539e81379921c0d2a8a8ce8900119653a9c142519997c3c3cc3f53d8a82cba60a5dedee131351944b5cc3da29e9e49335ee118a92778a0899cc0345696c35733f7f282d493e517e531d26e47c4ce93c513e59e2654cf2373fa866622427f8828047278a3958e82a21632ef2dc297870a224680d4a75a6313361e7133c3651ccf0ae0f6bf25a237868a29cb5835ed3a2353f7864a2bcfae14d94ee7df5b407268a3d7b275ca78c268ddc9ef0b8445946498d3ba2f322c496288c2c519d6bac4cb6fa62041cf8e2121e95280926493f2b2a6358e7609461c278364a7850a224a6f0eaa0664ffc26a1769ef5f72e89926776e60fad62a3088e1d5e8647244aa553dfccefe718330e897250fa7d63b269306b1f51ce244b45c9a653ff84da114793294b28c15c3efc30d8ab824723ca5e17b3e14dfb9572471819510e32ea63c33c47dd7a1125497e14919de1354295c343113ef04844da3e4296589a933c9729d6ad7920a22427e7aedcf42f1bac5c41781ca2d83996a4b1448da345f73044a9e24e12cc733cd1340c860b6ee838bc8347210ae2f4493a28933ad90977c183100559bf5bfef9d49c8d6cb816c26310850d42e37c060d1bb5ece0218882d63d2d1d760343cd2310c5925c9375db26b5c1a40d1e8028d89a2955919f4ad4555483c71f0a9a476e4e3b39a3cd08803478f8a1d849f7959da90e0c1e7d289efc90ff27fe050f3e144fd07df7501e19377fde73bb9f877622f0d043a9744eb11332345b4f234c82313e70e69887b27ec9f626fc26dfe081878216f7547dfd41a5db6bf0b843b12d949b5af318111a3378d8818dbf1bb4097d76d7a1ecdf2b1f4f5072f256cbe0418772dad693257a92a40e9a391484126ad288891db5cb430e25dda524419cf0563de25046adfa1333e6620f3814433d977f2e79ee64bc285a183cde501eb54189a6abf2d4adc3c30dc595d13d6382521b4afa3cda504cb139bbf597ec8ee24863dc501d9f2413583333b3326f5e450fa44044003ff06043a9e40c2f79e44bc94fe2b106b3d11e6a301b1e694043c3799ca1bcb175da334b8ed3791d593ccc50f8a86f1bb23da68e65048f3294bbd2762f460f32147c64926492c6bd74d08d701861186381911d374c209270f01843f964ffa9fe2cd24a2849d344c68487180aa2eefaa3cef3973918031e6128c68ff51e6a7326f1cc11fe04041cf8020c1d608061c346e900aae0018652586b7a9813c4ff37236c4e028f2f144ebe19939e412f860c741c19e848107878a130ae72571a3f65ce9811b6f38047178ab9a79a5463b6b69b3770ece0423929cf50536ba7fd1c651cf0d84271664793ca97b2e0a185d2a8e791d3962abafb2c14ef3487d7f324160a3aabc9878e5bc1e30ae5f7bc97399d18aaffb6029bc4b0a1e3c9f13c6678f0a84259355d7ac8cc34d9ea2d7850a1702749191feffa94d6d8e03185829027cbb5dd4e9dcd27f09042497f3e935f4b4b63d47cc0230ae53d49deb90e1a37c1030ae574ca63ec3ffcc99bd34cf07842513368b78ea91fd4c61e4e28aaa739afd1f0d4b91a616b177834a1187e7307bbfc701b4e1e4c28ad758df853a5edd459038f259c8712ca1dcd42c3e63749eea411b6bb197824a1dcfde39e333e6bdc3ac276db020f24943f7f3c891f214598f4089b8e239444ddf82b2a7dcbe4c2f03042515d83f24ed73ce1b2177814a19cd4373506a5438482e734c24c700b4f7e0fa1b8a5e306ad5bdb314908e518c6fb44bfc4f4ff06a178e6fe39a737fd4d2b100a2689d8dc72cda44af007e6c6ae589bee7a96b787fb66d41a8db0a11fe367f0aa040f1f94da649a0bddf9194d0f0a7e6fa6215d93dcb14319402f9217003678f0a0781945bf83decf8e3278b18b6236d3c1a45a074f4a70e8b061c3021bf8028c2f30a08b5249b993b9b33d6db7b9288f72cfb02649ca5364b828690d93637ef1fef85755c18b5b144b4acdbc99dea348cb0b5b1443fb8530d98454f0a216458d5f2d3f3189fd7a68512a333b8df16544ffb3289912f95227285582d53703111ab88e2878218b926c3ea935ddc8d071a343873fc18b58943cc68e3f4a0e1fef2358945443eb8e8f9d3e3f794549f7de4b4c99651d78e18ac2cf78c93ef33615422f5a5110cd767d55e79aa515810d5614748c8f26dab48453df2aca396f9b28f26434bd51534561939279ccf32a4f6ce741f02215c59f13cdc1e3c3e79860c75f00158591495daeba79a7eed8032910495e9c02cbbff89c466db6a628fedb659f9c6f94099b52945bc3f4abd4264539e91c3e9e7a27bbd07ec08b51f8e15eed9679a59bb32b195e88a2b822ba53998c89ce3e1405a53976f375a9a80b81a2e06f4a888c97e8bbc9274a3b734a4fac0e9eabf1c21325cb937f9561739257752f3a513a91a66592b0a31773a224d63f477f924b8949df4441e612f67d4cebdbc65e68a298f394d614196f4ffc3351be160fd23ae7c62c260af3b13a931c83e9522f61bbeec5c824752c51bc3dc993bfcb785f5d09d380179428f597f0fe101d839cf016c18b499435467349c2da5f9b8e24caa731c53c9f68d28d23514e5782d7e6fcdd5d5efdc00b48947efb3e368f1c3926fd88824e92e9acf69284c7124714a4aa6f125dd2aba6a6118519d313f5e1e74b4819518cad8e49099f2ea254a34930a13cdb4435155112aa64850cd3a9b7bff622110559993fc9dd3f39f8271151d8fbdfbfd574926fce218a1dbbf54356e3a98d31447963c692358649f1d2b31085ef536ac4e67cb3f48428a6531dac84914178ce0ca224c2b64bcca65353aae885204a3ac926ede9dcb52b76208afb49729d2de90429234094ce74e4e3ddf76df4ff508e19d3fd896692ccb2fba1a026d5c9ecf8d94e6ffa50dcf22f6136c72c57b23cf0820fc5b4cfd3d9d11a79a236f0620f65dd51722a4fd923add643d1749db68ca325aa6116311a789187724cddd541f3a86ff4f01ce0051e0aa6e92c547a7c755ed18b3b144374bfe9f550e161dba1ec613bbbc7972b6da201eb96945603c1f95cadd64f9d79d1a43b6d5ef5e40d67fca020367f9fc828c22cccf04131e6d26219e3a6ec241686193d28a7f5f59f19dd31d7f32fcce041499a133aa61f6ed5ba85eca2a4dbba45966c85105d14e63e93ce1adb949b2c17e5f02749ed1ee4934c135c94e4a6ed8c96eddc41798b827a7acb60524d36eb6c514e82ae127ceb5a9463f698ed37d4a812d3a2f04912cbc4c7a87d627816e5f825c868e97528312b8be6ae2c456ead4d2d2ef4fcf2da4b92c22d9421b128e8d2f458529e70629a7414426051327df322d747e6f4be0221af28763e31094a69f9664dbba258b12acae6939eec1e0521ad28a7d1d1047f2f39a68db3a2185a4c1254934e2757ada27babfab2cf33f14e9f3d610a5145c1c7facd4c4ed259e684a4a2b83ed237a96b21a8301b21a728e7cf5efb4965424c513e31e62f57d1bd39a814857ffb8f49c9cc601b2245c193f84932de2849929051a4b96b6fb959a623e2e55da7dbb60d1145e17dc7e41053da4a4476d4e0c74831c4c8c0de23424251d06ae36b92c94240515a8d79574da5a87a0e06120e1c39406018f2897b459458aec86884433c5196d689cbe69c89ebdce8ba6dd23106f35c0b423a51b219e57baa4c18c8378470a2dcaf5a523dc9e9846e36512c33b1eee49cc3cb89347123241325bf5813f3553f6fa2104c144643d5e2d2c4448d219728cf49ba26499973eebb0e422c51104d1f84a718cd9d3acb4448258a638278afb1b0fb450c8310428992a4d4b4456a725d13343f624470b8a07d103289620c7b9f4da17fd2278962e7bc66ed415c37121289b2a8965c1b4dbbc47443a224e6297d9a4447dbe67a4449509218aa3b8497160881e6d841c60a421c51d2af9e6a73a61b51526fdd22a662942799ccb1838c104614d3e4d4f9a574b39c6911c5ccb99465f87ccfc15744695caf94264149aba924112559cbc5c453f7245809224aa146c7ded1f9373ae710854b0ba9495e3dadcc3144c194be519bcd14a2645521af74949c41a80951d853928717f5d6717b100521d647962cf193905941949326f78fa5637e983710a5123c9738fd98499a1410e5922c735cd6f66ea47f28c506794d52ee87828e2293bafeab4733fb5036494ee2b628419e60261f0adb1b165efa1e4abaf3d641e8d6d11feaa128e77d637f9937495d481e0a3ae33b8849131e760bc143397b697d2d9d94e99185dca1983a083db169946ad209b103a3e15e3277155287e2e57f89db36dab6dc11b60e84d0a1349a930ec2c4ef924a2c640ec53842fb293109254ace47d86cd8d8f12e10f9020c1b36c258be42881c4a2fe399c9a3ebe6c67128adb8fec6e9a7d58ae0500ce7f135b59c9b1853216f28c87f4f6d8207a95b9585b8a1202b22ae42681276fc36145dbde37594509274a7103614d784e93941b3968529640de5be5b3f613bcca8ed216a28babb5be839e9cbb70e49435ab5b3b566591577a15ab2a3a44f22002e84a0a1b827850cfb249e9fbecf50ecccb7beba3d5fb22b84103394b2c3497276f2b2d774078494a1b4a5468526f1c49f94092143a9df7d4e9bfc4f91766620640cc5dea03dd646697197c5501a4db2cb46e95866128682857e4f4f2b0d1b4d3094ca44886f9ef17bbdbe5018a1439f5ce2886fef2c0d215e287b7ffaf0ba7c1b1f8574a1a0e6ee372c935c2809935e649c20378850821783902d94aad32e4eeddd7e7a3107215a282941f474fece1df39e8592f8edf6993b394a2861a11cfdebcead47ffb9778582b291c964cfabd7fc6fc0c0d10ac5f5d8fcb69b37a9c66783902a94a4f178628f3293e4893aa8508af3526eb1da65ea9e42b9ff642a71b14aa1707b2509f7b1edeb41564648144aa6dae4ff9af99235f106215028c728a3c3fde78535087942e937c96b57dac47de5236c7638429c50f6e46a429cd6336d274d28c74c2789d0269e984d5e4f470813caf3774a6b8cd9a01d2fa1347f65a1f408256895503455d725a7125cf77631429250f0d46b1d3ec87ff5d805482885982731152d49accebe20e40825494927674febc031c206831023948448d3fbb876fa353b0cba1c214528b99a6ef236530f42885032e94b06216c3b8d49860c81d570d395cbe8e9b742bcf77a297f10228462bb8dc7ccb28504a1202e4f9fe823b449a1130284f2ba285d427b0e32ff26e407051d274dd84cf3dd9914e28392a074d071a64e910be94141f565d56a34e1fcb4213c2875897ffa7e4f1ae2efa27c9f04933d289374e7b82e8a9b2136fadb7710ff72511c932bc47c9e9a99182ecaa6549fdb9d584a52826e51f290a51db736105b202bbbab7b792d97731e1f359478ce06406a511e194e09dea3aada3c5500a145a93d7e2f4ec974239352009945d14e5cd9f6a5691a25b22885c5ba77a9ec099f82c4a27073add725f7f3d50a0bcf5ede3ef4332f2ce3b353a7da24ac268da9027945494d92d40893245936c8d300e28ad2ae6806bf93c3e405d28ad2c81cd47a959cda5db242b7eacc530f1bd32bab13ffbd4d8ef9415651ec3ad32ddf415514dba3e7b7b1b593775f01482ad0a1a7e7edc43f6154e8e6259bdb98ac21e6290a9fb39cbcb9733bdb3545f984eb09911f2a45e932864e629aa8f8be0a428a93781b3f956cd8236cb94c8618377014e5284a189dbb339c0c7fdfa8c16320c7d30007074e14851511baa6e44bf02b91c0860d1c39de0663e018c3860d3164300648288a73f2e14aed28414051f68cb1366914f577be7fa2f4b249e918ecc42f39c78f2439cc8b20c70e1198718e1d3ad013053d11ba3d852c86c8181f061b1938127d904e14d3624bbe1355256a50c100e144f97b464ffc3c9b0dfa9300c8264a42963c3f1e3569e7c79a28fc86490f9f4d3494fc9302209928dcb9670777139d3916714c14abe2fcb6440717378df161889c5600e412e57d8d31d6882ebbce2088258ae649752725c739cc485289e2f8dc4739ade5d8a18312e5647d6a269c656a8c8db0888e1b673e8992bd276531ab56e9d111462226870bd4cef873e04834002289d29624aaafa69ad48cedd01189d2283317ddbcfe69930a89e2a68e39a952274ece503ea21c635e91b521a486924447144e6acc5f4aaa30f199d346943d988c19bce48f59351d8c28aebce7a43967f411a211361411d95b44a944bbcf2fd9a3f46d32d00688224aa2e5a4b869fb4e263d0b8024a2245e8737cbbc0dbbe9089b8e1c662411c181d234c70e1d8888d24791a5f2e4c7da8f0e51d618554ec3492294b48218a2a06435b14cfa6993cea41025615c4e12e4de8428c73e8d49b5e874b179130ca2d423664df06cb2092f19610bc3e470c11b32cec4c881c302de208240c7984249626a84adcf6420b2438cd4170009c46a97793d16c99581c8ebc861c848f3000820d27fcf693dc9538272fc186364a0fe50fc306a546aa6ca0f4537b14279dce0df482a02b3de2146420780f4a194194d923de6b8481a1fca3947535fa163e5e3e7c880c0860d1d39de05207b2867953a612234b41c7a289e30bf9b377de7b33e01570fa440e4042079d84e787451b1b13120782885c70eb549748d96a25b0340ee60def849eaab1d597e00c40ec5f44174fb093bb6e11e61d3d1752877c637f57832c9be21103a1444f7ac79072526e141236caa0090399442b68350dab1ff24510eb798c5272587a76a129038947fb466974b93a25a32c4b88107040ee576eba033ff7b83f4bca158b91d279932ebaf1ac40dc5f190416932b962d296dc18c380c0860d1c698c1b2208d2864df03bfbd1ccb0a1d45943951a0fad553268bb86a27b9afedcbd19b43e1580a8a11ced457dfaa4935c8dd9b01146189f7820052228004943694e7934694dd0d113f31813b061a38c310c7a20052205040da5ddb82c694afc94221b61d31d62a404809c016d1488190a3a7fd69914bee1455f0394011b391048195611adef969935f7d4c16abc73ccc98d3074a0bf41c6df2003476281107c61397690f105103294b773a4679051a2a8100340c6501c6da7e66356257b327d08d60532388f74871809c900114331fbe4b673af1d159a24826387085a0640c2508e1dbeaf7458e7feec081b0240c050902b999626c37fb8ef0b85338dd99c4936897ba1349f9bce74ccbbe048d553a77f63d24408878700840b879beb4d351fbdde081bc2b1053487acc949d6acf307211c5aa8a48713637763e8940840b2502ec9c574cb49622a990c316e88a0cf614674348360613d59ed6a4ee61dfd4800728592cecd59353f46031c6184614674b02d88158e39e84fa643ef3c8a430c1c39c8b01b0148150a235d4fcecc1df24565054285e2a5e87cd5994d8d9d238c6307da14ca2e1f42be12496eec303b749c1988148aa644873811f9f3d116d971230c3274340574fc8e328e7a200522071285e326396b16cfa0de21031c65983040a0605c7dac7a8be67abe7e204ff8007142e954ee6806b58fb0952d00a409254dda631c993427e90d4098508e31b94fecfc7ffb907183065906c812ca99c2dcd44a549fef34f8313e8761144094509619b1af6a93a3cc1a61034942d16438256a6c3ccb04102414bd42afbb66fb64758fb01da124e67bd2f7fa9e212314d6bae72f4f8c9b925d0248114a3fcab3eb866b3b9d264249a5a8d54eab956eee1d12408650bc12ef4918ef7508a1e47f1a55d6724626519d114082503eb792d7d4e797743a2f0208100a6bb2c8bc76f7e84c7f508e417ac9d93ec767f6407c50f67827b87d12a3e7ba46d8708c2172e71e48818883f4a0b899194d4ef6a0648e7100c28362107ae27e869aedfcd9453109aba1f6d4ae8bb299fa245b59ddb79be4a2e461b9316cfb3bdb36c2f6818b92e867621c51a5915b14e4ec4c89af94d3c1a32381f0618be26cfe67dfb8ba8cd1518b727a3415193a3a6e84f13b6e8cd04064c7bb80167d7ad25e42277f16452b53d2b695300f551625fda0397e431e8b829d989f4ea4094de23bc2763ef880457143d668f268e77b370f3e5e5118f7b857e24aae28cb874ecaf5940e0fa35614fe44ff603aaf47b70f565c9f8f5594932efd233f7ccc7af7a18ae26d99ce172f35b3652a8a37772684081d4476ee03152549ab6c86d165724efa384539779b3e4c51d0c9acf48eb2cd9cf3088be4d84146e1c8b1fa518afe20459a8f517c88229eb65010d1a74e9284b92d79d742c14f1e75160a32debdd87db00e15eba006160a3a9c85778d7c034709444c8c1a572859669254b7fd6f49a2dc831a5628d998b811ab6692146d3f078ee40735aa50de384a6e3ddc6586870a25c9a4d3ab7232d7f53e85722a49d8958b580a88d5aeaac8677abeb89578e613c5ed43ec4e5128c89537f1c4e3579d7e078e304460c3c60e1c61e868ab0185c2debd7a85fe84d2f8698f613b492243e784820eafab41a8fea0476c82235fb5ef6efa1ef256af9959dec48f9ea833a170159f9ec30825e57ee61a4b28ba98c7faac2342ac5342416df3ac9ac90dfb66124aca73f018eb514bd58f843b3dbfc653d34a2cbd6d732f6c36b329f5274728791821bba4d9d8b3aa110a3ba7bde24dd99da0ac518452aea992e4441353ab05a106118aa146798d76935bf16dd80040156a0ca17cef7aa6e4a819df19dc405801ef334f0fd4104241eee8d3ff2cb1ee7f108a7962eef1568d633e42410d2014df6d6ce399347dd3ffa0184e88bb13e3094acc6a0d1f682bb2b3752e175a775dd9bdb994e6dd89cfd6e841c994d02fa62f3426c1a4060f4a5fb2ff9af45a9e2503060b68eca224a322c2be47c6f9f808eba2bcb39b53d39324c7da9d0c1ab928b69ac9d7e94c755d828b62278bf74ebef672b25b94dbf4849356b6e994a02d8a69e2aff2614c1ea14b18d0a8454166131bd9b817a667cb005f408316c5b99db34ed2be65500a03078e13068d5994f6b3f79834418cc91e0d5994d3e98c49277372dc3916c5b01a348babdb6893a5018b62869251a3aedb86bb1b7845f1effbe41873092664940387c818393e036c39be3d40c31525c9bee6dbc46cee986f45e9e39ac56cdc74ad39ac2889d669ecb7daa3d59bbe024f461923685e4541ae6fcd668c26c49ba8a2dc6994b9bcf7e831e15414eec45fdd095ba2838adee2acec35f4ee64cf336dd53445a5978c0f086e8441860872ecd0e1344e51b8ba4c51999338ed2153145f43e734bf96a1a4be1425d5ff25523c86344851dc9262aa55a29a8c2668a0318a8269f9d8df24b3e4f4a228d588df33cd2723ca1ad9614060c3c6c80e43231425b1d125474f3fc2f64806617c0e32b86980a2249aa041d5a7cfe6d0c80e03821cd961c8c832765cd2f844c14c937d8b1608c11745c313c5105a279f30a723d0e8444967173331eca8a67822641831180334385110b641a49c48cbd88156468e10746fa2a0dccbb3072534c2a6e3469b8e306eec90c1036868a2b4417fb6740c7521c399280913724ed3953430510efead226d2ce487fb12e5ddac639df38ebc3cb1842283d0be41e95a89d28e3831bec814b3fd2951dcd5243eb39f744bcf244a79a1e9426cc8d2de25511a29ba4ae8aa9128a7f549ad9b4a94c910248a269f9d678dfe495fe611a54e9aa749ccdab14347c311597ba99d8bb8e8d9ba7927f7cee193a46435a1469466bd93cbafc7def46144617c93e6523663a7371a8b28cbecdfad9c140d4594735042a7d3164af62e1a89289ef694276bd2d81713224a5d92984ad0992773598728b89d6e0d6d82b0f9942196d30b91fbdaaadaacf23ecfa2f394d526691582b1fc34fdab9d454c871a21dcb872b34e2d1b0b79d7d84edfa14c78767610c55862ba09516f9aa42b887288999dd7ca0bd5a648de8e316ee000c19a89d00844f9ac43e720d7a233e72c0d4014ae9454654a9557a0f187a286be96ce27742cd0f043c1437950db70bf40a30fe52f51454b9be4b164990f45ffb8e973f093443ac68d1191b7c10d1d9e01b48762ccd31274525288b4901e4afa93c5adc91ce4a6390fa54de29e584d224bf28b061e0ada297d4785675129dfa1fcf32394c72c19b2363b94ff2441de089de4b6447528dd4932497f2df14c52d3a1245afd9e1cce947d8e73289ed0a5e6457e1431b91c0a2608f5d03e3fd2528f83b9239a35eb6979babb6d32ba70288549e2685255ba4b8cbea198f5d36f69ee9c439a9881861b8a4155de5f937462ce1e2bd068433144092977192ca3c186c29a68e26fca87c61a4ae27b96a677457307d550d2b5fb1899ae948c8f461a4a9f719338f2b73fdf4d030d25a5c2e4d251d5ea9447e30ca77826115a6543c30c05693a06cf1c74a4a7b20cc52429cf9f971a19ca23537da8f75af939c75038594dedcd9577ec4a0cdbb7a9eebddbe97ee8977471778d691a612896a061622789278ba734c0509cb75653721aed111f8d2f94d23f3bc638217227f68256f9b661dbb6b955fba1930997996f7a4b34ba50eebe12b3cc8d413f8606178a416df57c1056afa7a4b18592e79c63bf9b5a9a2443430bc52a3997e441294fdfa72c94357dfe67139f0d1bd391430660d0c0021f5ae2f2f6aee55e22d280c615ca258912ccd24fa9f9f8b50e6858a124f6cb7790fa23a3897240a30a25cf4c3ac7424b2ca1d1a042717e355ec77bfe041a5328095193413c49a399275da02185923c62de93a74cc2e4570834a2504e0fb13f4af611fde124d08042e97395a8dbf424c6cd4f28c98b0f25dee6a4458986138afda744d3d5ce892a8f46130a523749d5e29e64bc8bc88492246a9930b78de3a0b18492faa9d8884fa2a184f26e3a59623a2175c35915a091843f98e423379c90500ab770fd24bb4a099dc6114a555f9292269eed5e2702348c50ec203eedecc9d07227348a501294783d4d42f6324c8850320b25989293cceb1ad318c2165be561eead2faa6f9bcfe4f823abe64d34845074539feb41de88fa9046108aa3a48f956d124be425420308c58fbf6772fca8a75f0ed0f84141ad7c7a1343cd5d4614a0e18362096ae7d673b48c15d1e841413ce4896994181a3c2849198f3fd1e419bb286c6a083db9cd04bd715d945ea47e08f5269acee7a2bad09313cdedaaeb94516ed52709611f74847051ac17256f44a7c898c3336e51f43d9b6d511cd9617d2e4d27e5a15a14f7bdc48f694d9e5cb2b4288e8c5ba6d1e133ba9c45e14ece33c7c8a21cc2367c099ba765632c4af69762bbd9469a68b028cf89a54ffadb5252865f5190276b67d12e173ac4ae28bba68d0e324b5092aa15657acecde6c95ca9b68c8c95fbb5b9f5861505a1a58312be4a366c5061c62a8a1faf3b9764a7d35daa288992214d90b9c4c9e94a055f7225a721d6b11df756ee338327f954a828972062e642afc78de3294a32889af809514aafc914853dd3d998272a4549fadbe6f8274f8a725272887bcff13dcf1e45316fade68e511645491232f3a60962d63b170a5ff575cde34dad3ef557f37acee281a2203d93c9137dbb7ee527ca62566227f5b1b93cf6443975ac1b5d42942a49d909bde2edb5cbd6664b85bc66fa1239991345cfa8279b18a5831eab073336510cda35b5dba9512af43bcc0c6ee4204344c4032910b1314313253987659a293337c10f23a9066664a27463e2e4db5c80230c9c8189c2d7e8135e726ad5b91136c6c1814b686f66df1d973a761d1fe61ec3c6b8b9c005383840060e0fd8b0e1021c61608e1d64ccb044b1947f29ef701f73469851897208ff1073ad0a59f23acc080858c4ca984189625c9793c2af3cf68d236c61c8400c1c0107beb061c3868df6400a4472cc9844b92acb9467cd399dec0c4994c2f4b604b97b6bca1489827aea86dea693159a1990288971e77ab4df7b6efd1185f19a8f7a3a88cce174444928d3a554d9a98d288b7e39d55527a6513e27cc6044e99418c446d36c8f1847662ca27099367eba124f124e3a4311a510914ff59a444dbb2314f04414935e68ea1cd488fd201d677b8858f3ee36ddeb2de65abbdfc47c82125ca3c3868e19872809530b0b315e21943682198628268f6632fda65937b910255f8f6225e6e437b22744f935e8965cbdf1c409cf184439642a55a63b8228e651d5f873a6198128483549c5dfce6a2c9319802889cd9de6c9f4c418cd197f30dbb6bbe56bc6ecc35bb5244155a7af11569d1f8a2384f5bea9a7273933c6c300c70ed371438cec4341d664f83ca73794326330830fe573f78dfb49b50681197b28ee5fe7cc9c348833d1433945bf7dbbec7a943b0fc54beb9359ba83669933f0508cd1621b73a4a6fcdc51987187d2c6bccb24e97dd1e9d6a1c38401861466d8a1287b1e459fa7a30c9384197528977825c6b2fe736539830e7d57cbb7ad5797ef6739d527cdc6d767cca160926c7529499ceb7228eca937514de7a77e4f1c0aea4e9dd0b1a3702867faccd060c2b8ceff8682eedef948ede4d1366e289624266192ec9441c9771b8a27c99cd63f099dc498c486929843998c41491f4c50b206bd744f3ce32a2b4ee684ce655a94eca24d33d450bed550e11a4ec7cc6d461a0a6fbf3b9b9352f39d040da5127556fb71b6e47e86827033a504dfec5b159e3da6eb3c9920cc2843316d65ce24a753f3277e0e10cc2043b1fb4daa53b2c4e9aa9b30630c0569efa13a7ca893b37e314c0e038227a38c11dc156688a134a3325f85b2350c852b4ff2a9d1294d9ebd0b33c0502a7dc2ba5ea8236c64d88e1c384050460e1b367c30e30be518353db6194d46d1d34a00c60c2f14f3e4b09d265fa26146178a9a4a6eab2c69c4076770a128ee99b93dfe6671d1164a4a6cebf67ef213b6b419d8b09136034c2d94c3d7c93449bf6f382533b2509ecddd246494787e262c943c6cd6923ad3952466c6154a4aaa6f19e1693cc7a030fe86056cd8b8f5c20c2b14db2431c6bd8ea6d32a1b366cd8286347193b4e0c33aa502a41ce6c6611e223752a9447f676c678625b7a69c614ca1e35a9fa2094895fea19522806fbad309de37fe734230a45d15f32a6d3ba0d6ea51b6640a19c5e4f3ed964d0bc570e339e500c9ede66afb14ac78d0e339c50103fd1b67ff2f3b4c7c38c2694ae24dd59d2c6a463989950743d1535f9194b287a8bb412a6844e25bd3394508cd53af9d4b7c74c910b6146128a63e26ae917ff9acbcc404239dffd5a77d53a661ca1a47feea478fc869a6618a11c45458c18ef0c6afe34cc284239e899cd9837b7cabf4428b569505a4d7c1b3ddd104a7632e25273cfe8ab6608e1b1f02cfed95714cc0842c96e469798b0287bda108f1ef7b3fc576063329bf016b9a25c55a2c53fc9373ad48ad24893e37326692a25ac289d86ce37e9319f4eb28a72127349d283125514beaac432bd67224d45f14cf24e13a496e70e2a4a621c25d4ef5dc4748a9290a14a33f535d5c614c58e61837e6ad2f1538a924a71bff41f211b5214839263ed97d267a38fa21cac043f31cd248a92091ee7a774a1287bd41825e62741890e1405fde1a4ccf0ddf758fa44f9df4cfd4c30b9664b9e28979716bd49de5852963a511693af24399512577b4e9453eca3994955a2279b2898f79e28ea1f279568a21472f3bfdb9fcedcc944498f6dccfe2ab2b68389e2c6cd922ba749b87e89621459a7cb4bfab0b1250a4ace79e368eb521757a21c45a7e7a049cc268952a22064ba66a798b0ab4ea2fc9f648f1d5ab3367d49143d98b8fcaeb00bef235150d2a62c49e9d5f2d443a224c778b86c9349eaa44794fc575c47937097be23ca2b0d35a2b4593c6b6bae919ec3886292c4dd860d4a4f7d165132254a0ee2454594744e42c4f632cdd58928899365aaf9d7e5494494f4427da76692ebc14394d3f548d7fa5192b4210ea23149635d21cabd795428cf224294a4ff2ed973b6ca68a14114935ce254e992204a9f53578c8cf9ac3c8128d9898ea1d5014479c37ad8be0b1952f387f2da8bfeb4d7b8931f8a7baffa3978c934bd0fe560325737f6aba8f9509ed12156657e3bed3d14467c6ceec87a285ee72f4963f2502c733d7963dc27c9c543517409574a74391dd73b9452d684bb139460b2daa15cd6a361f427fba8d6a12035a950fa94ecfd291d4a26ed4dbe8eb9c3a67328c8e8bb1bd38feea71cca733752fd4445451987b2c6cc247c1e371d4b3894ccb46709d1a12b63f2866256cd2f3fbd9e24b9c40dc597fb929d64491b0a6e1d47c7f6d6632c614331e75462c62a75315bb286c206d192736cfecb54a286f226b983a7ec2739494a4349941d93664e95ce263420d683b65f093a43e1bd6c2d359f60d28919cae6d7395896f2503a6528a60cf6a2171f83c790a1a0eec19414f2338672c84e93db6ebb49fc88a15c1b4e0a13e361289624d2640a4d993f05437937484bd1d993dcfc4251e4f9893a99d5217aa1e81a53a88d3fcf77174aef26bcff3478588f0ba5cd2735cca7b773eb6ca19ce4e43642e9f6a494b4501e938f63a24be65016caa5744e63528f8592ced1b46444572876c8a456bde239e958a198c474996dea2a146f34e89eaa351331158adb260999f57bd4be532828d12b69732a613469a450a957a62e4d140aa3b367cf2cf2a73c0385929b8c4f334fadf97f42a9355544ba4e282713ce45e7b609c5d19339ec772694f74e923ab32651ed5e42b1e664efe910b2474a28e7206d473f34e89984921246a7eec76e002414fb938e9ece2e3446dd0047287a7abdbfea5b09a21bc00825d135e2a9e4f4a2e4dc004528de9cf0d43a7682dedc00442887e87ca2dae8ca1873030ca11cf2ef5c6b7321144bb47cd3a82686681e8462676735499780501e93a493e48df1bd04fda0b472a269e4952447890f0adabc2feb4fc6ec9b1e94ee76bc84d00dc08372ce49addecfbb286da58e1cb941775417a5d9d938537332599b8bd2c9a83d7ea684a971518c213a5cf7247d96dea2682d6a26638c6610daa25423df9f732afb935a94c64c4e623ce95346af6951ce9a5235496faac659946c6328eb68a2b242b2286c52951ffba64d2716c5dc1b3f1d16c99bd192e42c79454912472649c8c715254d82afe674e399f556944ddea6ed68a14189ac28b6664ca6364d56935b457945bf573fa78af2d97b6810ea647b2d15a53cd96bff0c1505257b8941d74cd966a72889274f2343f4de5b6c8a9224bc7cdf2c2e45498c36b625a62db97d52ac27a6f2478a4651f053a28cb4b25282125194840899ec3a4928ca96b22577fd89301d5094ef73b4b97ff5fdce270a2733e92c3997bcc73d512a0f1e3dc37a3ba83b5132396613ca7f3d35cd8962ccaf4910bd375192574c4fe45c29d36aa224eb34c9bd25e6bacd44496e505249b362a224877acdcfa27c747a898249ad4ced413f8f698992aca74ee913f3d2042b513ccf20336692a544b1d294a861fae4fcb69328264def26f8b692288937d57c62fdc64e8a44c984c96f2fa9e3dd43a26882522748d3719432794449f8139330233e679738a218c2d232a376d56e1a51bc92ba834c9ec457c388c22641750ad55e52348b28a7339367cc047d32ae88e226316679cf5f4a9613510af56ca1d664dbc88828650c9b6d5d279b141fa2dceefa1a64a852256b8872509ff35c2a64b85b88825222df74cc11a29c74c79c4e94f8fd980ea2e4a9635ccdc3ff6a2a88d2e69d8d2bff512fd340143f94cc3193a58028f5a769d73229642bfd43c9fb4778d0941e44c90f4593e4a4db348792d5d487d28a658c72b1f736e1c349ccd92483feeca1247fc3bdf39cf8baeba11c3679125eb26426c94331c7278d26f7444e1a0fc51cd55a334cd264f51dcad6f7679da9c327613b9474d824e5e23a94cafaf446e8b28f6dd2a19ce4f5ccb9640e25f931c73cf76f992a8792925784953051c4198792895194defd9b8f251c4adbeff97b931ce7bfa1d8dd49dfc2e25ae48672cadc9c3d8913426f4379636a320d1b4aa7c78672dcf7cc145b2bb3ada19cdad7fdb3bfe6ad520de5642e9fba3587330d05254c4efaf3848652bc89d33aff0cc55a9357547f3394a44e624b3c3779e449194a6362333e98307192a1b07e32eb7335867259c78cbe510cc592f36d7c9f6dd68d6128e528d3e4299329d322184aa2a9fdd126ff85d288f153ad4e7259e685623065b2cdd7db4f855d2899d4ac9a31f8eca6900be51e31dbad915a25690b252508dd313dc6cb3569a164da6676d5a794260b056542ffc328792e3f160aaa45c70fea5fa138fa69627fb6aa0c59a1f4eda13d66922b40150ada4e28117b236b4fae0054285d9d6538b9f3c4247305984239b78832f1b09e74bf0248a1b81a93123d65652fbf0244a16027ba5a8913b14c5f01a0905ec9245949f13da1e85d7f6adf24d7789e134a3a6aca333daf09c59cb64a56371335c6634259cc049d4fec364185b784f2c7de6efd3ba9de3a251493ccbd7c9ce95aeb92503aa93d3b2aa2f74c48285f89dfdde613dbf4472899a84d4a091ba124092b42680ef38c7d114aa333287ff536b9132214d673d0e727b4b41b4271e63a85121a64de8450f6145dcdd0ef679920944c885127e37c7213209424cfaf93cc949bd87f50b43cbff5cfde986b1f9476e402f4a0b8562574cc76da4f05e041797398d25e7287fdbb8b62f6f829dbac2e4a62ff89a163336412cd4531e73135fba0e1a2246bef257c778b8279c80891f7b3add9a2dcbf2a9e5e92595c568b925071fd7299a63389164513467767e5da691625e1aa41c860d2cbf8b228c7539b6f327ed2612c0a6e6e1a6b323d3e048b62998ed64daa641925af288f3c5793a41b199bbba25c7ae4ea285372e8b815a5934564ae0e266fb9ac286aa653133c5d4549c63bb72c49668eb1aaa18a925dc82813b333d6aa1aa928ab5fa60c2667bb91a91136df400d54946aa47e123f13ebede414a52ce146478f8927b6c9354c519077ebadeeb34629ca76fac39f74294296578314c53d1326ddc9d91aa32898e611d5a5d54b0ede8d1c3b5214e57e519f557227a16e620b4531096b734aa8ab031405ab5397edff189d4f94e594feda3aa13e28afce13258d9b6f6d7ed489b2896b12312a270a6b9b971a9b28e8923f2625b5a78982c71276931244978a3b13e5b5133a268aebdba14b7e32eda7bd444128d51276347b26936389e2f2daa44c763a753976908195383b36b7e2acc6dd5cad41897296eec925a394dd1506196264a00c0ae8d0614030021b36ca38366c98166a4ca2fcead9e2f356e5e9ba919248062c60011d8606366c885c0d4914937cf3fdf66b844d8c8d44b9dec4d6a61df38db1940e89c27e12f4fb86529d46461f51f26a0dd1e056ba230aa37474f4a0d11136c7408d4694c4d374d99e4aae12736a30a2bc25d32b2f4f4e927ce24594f23bc92063776da855a4063868b0a335504311c5d178426b4ed3afe11c615bbd449464f7edb9fe16edf119612b634488810387880b72888810a0c6218a2d4277d0a937a92f060e1c78801a864063dca0c118329851a310491f3b9b4e47182f9203870819460c3325846396b5ea629daab6dd1b65ad45adc3acef102365a0c6208a3946ab87114d08c208e3c6066cd81044d9a39de8ceabd6d05c076a04a29cd3c6ec6126987e3849fb400d4014c6046d2527d398bae23f9453cbab8eac8dd63947871fca9ecd624766f09373f7a158b2cd9ed2694b27a5c487d2a63ef1cc644de29624bd8762ba2aa12a2a3d943b5697144af478aae2e6a1b4e9527f74cbf9aac8821a7828bbc734e91b4e34cf1eb52b418d3b143c8f89f3b74750c30ec50f26d7dcf8a69347568752895f7d4bb9f3d4d2a17cbb29a3ab5a6627a21a7328c921831272a633c2e6722889227b326ae79c4b693a44c6c871386e8890a1a3461c0abe6dd2c7d8253894649d3c3afe83d2f1d4371466b3bfc91c952d6ad6704349fe20433d53abd1867209629292cd2cb5545f830d4517fd51f179d28a4a0c1c399255a0c61a0a3295f4a084ca516252eba8a1867209a693789eca2f29ed964186a0461a0a563229ab3aef0f2ba1a16c371fbebedf44c6f0198a2fd2cbc6b435435d997a5ea9ddaa65363ff63988a79a6b94a19847b7de598963dc1011590e4c80021fe0c005f6c9c091e8c0b7400d32943ed6dfd4cfb4e86a58c4740735c650f20e212795929310a2835e0cc513be36bbb558a81a3b0ca5f7523229939352cf493ec7e7e0410d3094434df473cfa284bf518d2f145c53e3e49d385d7ee28582ca665ca6cf5d2867197d622a15dfae5e0d2e14444bf633d3acda028efba8d4ee05e3c1581c0c0783e1601810089d6e570133130000000c1e11c5a2c17040a4ecfa1e14800455362248323222201e141a1c0dc502514010068381a1302008060542c1001010870d91ceeb0183b60f0da958c7cc9b7b236f7fb41d86af67b11a15c9ce2acfcded169c3431d8149e4397ad503dd69762f8125c89f9235084b8041eca8f95537b701e1da7ee103f8e9f95612552d2ab403d0886358cbfd9ebe5d0f84fe5d12067c6200f3cfafcddcacf713389ca5cf8e1d9345864bbe7bfb0231a5504059ccbc69f146cadc0f59373f219319ee6457b971be71467bfb12cda55ff7466eedd1437ee36bf8d1f91fb7a2b3c76b76c73081b536bd6d39d24257aa553da6b51727fdac785048b15f2961e81b7755ee4073304abb4b64a10591cbcaf386d2fe5e1b0f6e5b29da81d35ac4a856e0c44f1c12ee23c0b8dd2792efb2835940683cfd54d34b113d6abb60d6c704c154ba6482caf1c80a2c29e3102ed83bf27116f9d5986283e542ada9d31c5a371d8a6d20cce36c81e873e0fa53ae9e337c38a6f5dcc537800cf14f454e9c340a4d4edb1850ff33357622c72ddcd6e34717d5a2439b52fa6a2b3668a16a712be3da9e3b90f7739d611256ecfa3e35ee7229d471c9cddeb1fd610f0b13d7f256637508405da00ba0a1a8b94bd8bdf81abc5d6ea4fe4598e3eb937f2f671f0eee71cb673ed8ac02b7b06937d3cf299dbaea5c7f05ee7456aacb951260856e5a391934c615dfd1eccebe2ceddef37f24372436f85c7ee96dfcc0f5bda47aae9ff54b44f6442e61099fde6170447a4616d7588de87d67a0386b59fbcac66634277c4cf8e2fc26af4594083ed6f41744339adcfe72ced612eb7a120b6f83297387ebbd4da0dabb8aa6e16909d3293f58b4087fdd3de7a2c9f745b15a83852c4a0a0619fecd68b271a4ba1a676049aca287866b633515f4f6f09c3219fd7224deb5c4edd91b0298d13d4860764fc0da86119b3c1cde7ece5921c257ad10b4d85419be9991613f775e9ed85136445ffae8013f98162adc597b9c2e64bdaefc5a72843b7afa024ad6359f1b2607291ceae0ab876c138a502cf6e7ed475f51e2e78b87ad346650dd25db0db1bf2dce5d67b28efc4ed9d53bce7230bb62977863513472f06911aa23ae6e281054e004d6e197249264e631908d91a4e45d00a4d53991217362be109025abe4ba30c56d435df0b3faa2388d6da098a4f73a5b62f0a9b9921243a36d5fd489141ccb4e48dee490d2693860a73da8617a18182cb5c98a6b69179921c66d4cdf017b4b233152735c1bd5eeecf80a7b475ed14d5c674db354500fa9956b02f7ac5a7609e539dad86f24e06d65cc78456fdf3e3fd54db738970abd66da5cba27a2721dcac0b821319ea453b48876edf06785c1602e13335ebf63ac526627fc051fe039c367b929f1eefb688cea6340ba560104d4b9070b5d6752990f50009d3dbd228c983f3e828ec1223838e96dbe00c88ceda473061b248a203a9cdb5974358c370ac128a6102809e73ecbb4e559a921f0a9742cf95f491df2da1d0c914a61e6f1385cca9c1e441581c238432a14c40e02e5f6b6d07c1b403381b6f42c9959bf30f15d716d3c027903df69f33542e1a03fc01ffdff5c7e117e1af4e173b13038bd79cab973f106de1bad9ac19ebfa31d72c3b5884d5dd508884cfe0e5aab6117ad0b769a94af74e854f173f0e9ec1087eef239aa70bd3bef3d6155bbef8f8375865f5e8dca7083f87ed3f010b4524fbcb6c0b0e6c533e10793d73f62059a4e0e2103cd37ef99ac5f6af5a4650712e0bdf0ea33b3aed5b604089195f81b04af924bd70ab568c1fcb2befa5464f6c318606afafa22e06b4f2034fd3b16f24fc1c3df70f4fbfac7846986a68e6ce3f272dbab9c649480ddb9d41cc7db5b9eb4a73321790d5422aa980592fd0c56a6ed61fd451a1a73edeaace5d1207fe2d134e245db7604b8202ec820b83b4beff4fbc685a6d78957a840a2e22c1e8cca5860dccb6e21c3de875e1d6d8c721eeae675bd0435d6d9b5707c37e09bbf3a0072cf4489c8f70eef4d86b1e7ce038cbf7deeac1d8dc47d60365020f77fb425f2b49d79814589590936460eaf5971eaaca9e5b05d827d9408212c46b7201d631a0c9460d8ebba024a588dd61234bf909f304543f8bc2614185fe536090e7dfb9560c1f2abe64ab456e3347c7248e7f5fa61f0a56cf004563444f9235f63361b24af4fb9c329381b950507f048f9578c3598d65284cc19720945917c3e31fd4024587db8b1216dc8d51347ba650ab6b9276fa3f819f38c8349a54c238a8574cd045c7331b477fa2fae19e4041af06932dbd7ce1d0a2827e321cc4d1c78c95befb4eb064112b788daea272f8956f64a424b8f91c70292af048952877da2130161495d7c881ee174f29d870c02665baadf285e6a51028b07002309cd4560f56cf5b6c1b143f686b91493480de7d33f951b2a821589303bd4ef0c006d3757c2517914ad17a2a2804f9c592dcf2a48a058163b11b6549f599ac0993fae16c5528017539f790cabbd2c5481a0a740450e2e908602f0dc55388e36a6ece7a3a2197a0118884633c85c6a1cdd5373c97620403f41c1ae4b082dfe4fd897a6e71233506f448e3de2d1a4213cdc41f8f58cbf5f84f84ff9781addad76424645f97494ead5229df7255b3b439eebe10803e8f826a5892687920c22d2ee43c1b50ec74a91a9ca3b038a5ccc9550da52d17912acaeb224db812e12d7a95859f02a74e82482730d5e87f6453b2ab0f993e5b6a877960e207a1550a91cdcc9f77d8fd89f07231591c3acd2af735028580017200c33f262fe42e1fdf3a7631759610e7c4c93272a70c5aac6ecea9cd4044e73e4e128fa56f37d61d8d090c3d0ddb3856c3c5c826455cdb5fa33dcca5fc6f66d3a184ba656923e908a52e49eae62fa3179c8f6a331d5d72a17d58e378f2f636a6e4e0c586281d4e2cf4a7259a875006db6c6f0b9b08ebac1e4f18f4ee012d3924bb2ec31037c9e18bbb1b215890b20ea09b90c0ef9def978797c022d6e4a89420384283314484fae2db5a1002311eebae7581580c3aaccdd9e12a54e8201c6064b36faa4d174638e488894d1016b16ab949252f4dc66e3fa963f874f16c85884a455a7f11ae2b610d92f13718e6e714c9ae3943c12a00974956711b6ee88433a4011f7597871c2594b27933e3cfce290e992ead8aab9451c91a5eec2f333ba2bda912c2695147ae33ddf74d8a77eab3e2a8920549e2cdda69b366a34a6252862365a664228b636261447a810a3694b41b9640ec1715632b45202f082e4ec39922178b5249e9fa1a37f3e7b4003a2c4640f7f2d10950543a033e74ab870438b5ab4f5981485d1a6764ab81c0bb359baed382c693fe86f7fc9911d6e005f6d665b3c1e76a266f97f05ff9fa8187d3ac029e90632e06fbc30b09e302a5381f7ace808473de87d112dacd10da3cfe5b447bc53f0a348b2889239c2c113673b509f4364a6049e1fb0e0829adaa988d3435f1ce4355a030369eb9a4e0d6649377e1a46025be4d1925efc3e1f915a27d5af68d43a80f6a875161f5a197c6f19ca4cc7a76e6035c69dab18105b8a971b1346d38e863dd9bff2a7e237e7ee7dd8f432bf73889d5bf035c7bc7bf1be224ad4886674e9270b351b7be11eb3dfaf85713f297a11e8bea9af56266e6fde48e15ddba6874f33604cd5d56c7ed0485c9ca9818567e6a8e2142f54d17b7504fd6a76cb2c2988aaf3472ca9efaae11c67455b2a09fe699bcbf4cb58ae6a5b966022a000a87a635372be89e95bbdf20a9ad069c10b1f70353556405e94c316e876173b80fcc515d59e82e983092e2b4c9a852415ecee3c1fd611096ea7de54863d5a7cfe4c09188fc9c9c228871df099ed4fdb4073cf770d64eee42ee283683b30146db01ed48853c057c6d7ec718cd57201146a987d89d4b257c8ceacd60674b357986d0fc9339fda2e29f9e1b711a7c43f10335a3347fea7bb97395e825f42055e7e37130902e26e7000614a1e10ee26622011a036928c846a327a8b73840d7ea85ad199f3240716c9e1fb7609fec2ac16fc9efbdb7fc58de6f90f01db01788f72d771a560dea06554fa455fe962b1efb6c45f5d2327407d488b8bfc97e525f3777a5d2ca168ef0c597ec99019c6532632a90c0b5d70254744f63c2587740f2989f8231db67114a28e5fd6a8f2d5837bf35a4a3d09c127ee88b166dd6c63d19f96ad9091694242b2f2f557726bd8164e3f022077d6a6d8a7b9311517d77fad7740a1d1382e6df06f2eea2368c93299b0e575c43f6a34c7f094ad88385ac44786e3466058e8254cc3ca89e34397247d04154bedb72c5165334164a7073a1a328e941ac8deafd4820f370b0f57af92eff006fdb2d96c74ea40ca9beed0be624543ebed37b97e55ee6a2cdc460c0f0fdb570a2b70bb444b34336fe029c7afad3e451c4e0013678a11fa4a89dd290e34ea3775e49835cc3f45a21023ce829e352221202825869faa308420ef18430bc380d5dc10b81768d4b2ded48273232f3e78007df2ce722399cc5b96932a7f86e9277f19f664358c9e8b98d99c03301f4372af6e0841aaf7f38fbf9e3b7e5181a88a33049e88462ad7e161b5052bc01c2b5454c84298b05fb38d31aef12e2a25a4b06528d4cbacbfb0debe977288f068e31142091375d3b0ba5e7195b4562cde2a6f8510c367014db927586ebd25efafac5f57568163d976a330bd8511a73e13457f76542aaa3065c8eddbb34bff60cf72f57625a63e344d8d2e98e34629e15e77647b99f06e0d2481d7a15e242805fa4a0be46c25b66d8bf89a0da9044b8ec8c7a55ceddec8de86c047c4e5de35e0c555b08a268a23e146dd96f8da2d9ff7feb9ca87ee0b6499c46db27ca2651f57bc4024fb17168baa26099bac638ab275c73341649b819467836239174a33e0816af18104561eabc71f0cb91ae52d38c3ef880c4cf260ac895b646a7daf334bbac335a730a4ea2827b3320380555e09a32c71162a1f103220b4a85cc094993cac0390c204281d9f05bb6be0311304438dea0e65fd12e9459c7ee75469ec3247277f2db79ace6e16e44000303b2db1dc8d8443536b0a293daad189ddf60817b0d4f83dd1fe408d7caef166e2e70c6448a7a70f6937001620fe29714df9209bfd96ddc66a0056a2845fff1ef317a012ff787530a3749fa91a1eb58603335f8f7c884fb3e8bcc4d6b809b08d589d2fa6d9ae50195ce3c411084f6525d36d4d91be052de736d41f412bb97b921247e179c6fd766f2a435ea1df5277707f2d8df4574646a3e655ec16d8d53f9e98402e95c99a9ada5ff3729e41b5e0a71c216d08104ff8870e6319816aad50e28ea48722eb5bd53f02afc0e37f4f707d9012945958abcae9939344a3669150947e5eee0a6cb7d5de2fc2f0b90149beaf54a43269b97f4a74f463af67126916e5a8d2065f490cf6d68f5a014c7d4ace97e1eeca7a88457d7329f83ed4e4768782c862fe01befd002c5e2170ea9e845ac2ea57d618d7d7c883c898f000c10dd168c24551a7af9fc896ca3d8e91c44bd0e755178aa00df711604ef7b4607152086e5d033248a813401d879bdfe4063a66f458535a93079f3b91fcef560df9e209b0bb6cd15f0217c747374201d453040b843121c5ae3281cf55df69b43ab3962ce78ddf6311c829a03fb1713fc335993a50bcf6a7f0e8ecd67727551b5757942e8dfca9ba9342aab44d7a95bbe790f9010aeae9a00d081ad8f65cac164abc3e28bec5554beb9cdf30ed811312e87c87a83bc3e347481a9ab5a9b58d79e635f6be43c2b1dad488bc2e7398dd3a585956e77d1011113cf3e14ede83ec7f90948cbe2eacfc7485b8d1675e4038aaa119265e50d539865857ceaa1374c0099c1f693380ea949434fa8efe98fcd868e2a79391b59621eeec353d5bef10323e36732896c5c53c3175aa0adbd54348cbb12a418f95472d840165cbe9208ca1c1185932e94fb236df8938f9a466f8476e4db9486b455b9cf9b8747cbe95892db51b756677d05e3113e6e35e134d6bc91717bca4023169e38c61e72b03fde1f20f0e7194984fa795427c9d6067a44f92b1782628af16cc23b3078ee151827dcb993167c33dae2700de2d2482a3382e691845a83c03d1d26b61887182302699cd7507e08e02d7546d037029d5242846df9189470e1b27ecb452ac9995bc6cd47ca8b7551b181aeef2028e7246ac824ae885b3328ad0c6b0e736d193bb31f84efacf94ee204b2c131187095e0386db81e2795d35375addda35154f1d325901b1423696d4a8d520cb1cf9aa15e3d71736103d4f51d52ec18cf2f201ad1fb744e95ee62100e1a275e475fc7fb2c4bec5a118624495a04da7840d20b21eba06f82b664ab5a3719f948ca42ab54b504d47fd6e444ac56042295f04e7adeb6c8efa111f834b9d2841b01f987db3cf33097d781248a1d41db338b36a6c3b7c53d0ef2145bcf971067babfb1e87c66a507111c50ec10dc18e02542334b5d37482eae1e60faf1777ff362ff9f360e71bb0609d689608d4269fded4a9570f9e0bd47c0313b9f50a61cef3320bef4041a86a4e5328efae1dc01908fee9577b31476049e3d64c911ac1cc6585a6a004b43fe55220c220a7f1817b3c45b25e1047e15f5f172aa25c6e8a5eda317d081dc46aebab6879197cb0d17de455f0e3825d241355d8a3203cef71da1794d7d1ba9d9e7f01a07684e912d4531ad25f1fd3b3282fd83780bfc8582219d49a192868b7b039bea393930261c05201bf5a108c0eeb040260749f7f48564abe8f25c4d1c1d1d074063d3aa6d802ef25554103f762791a058f8378d7304426f67fd163245c461149e342a75005cd74888322ff95f65d86524048bcf0ab2279f139ee1b60e04070a0e980eb4b2026a497cdb56761e12304ec3c54c596443fa09154f93336cae3243c86828ffead6fac55740fa969a3537b331e366ca6ce61842ca01e9c1398d89f1357ee3698c9e26bf527ee180eb63e47066e9536b927c5476449716e81cfc0a0ef40c9749255e04351b40ca444abcf898b00b47234b374b03f20be28730c1528b4da9132ed4dce67f1086c97c37b721de2cae48a9b7ad6bdef97f4ca1da82ba75e8b3ef670c29ab280d7212dca3a7ba71024fa860af0b63849b193957d8b474348020ae5e170c8086d2f01e60d0258bfd8df896782587bcf037997ad13d838022fa0e2924bbbfd8f107bb0470086b9b3e0387ab339bd0eca6ede9501714496d542988a8944971d1ef40f26205faa25d4c8a41a52716748018380106bf3820e9dcb9bb6b81fc76e20db5a14f5f5ab5f3a93f4386e04ecee166acf2e2e64bc8d698dd0c6251c6dbe4081c3e6eeeee2ed3dbcf8d17d81b850c69130aa6b075bd5ebc6663c07b587d22fc637e7421573040e553003ab4521a37f340aa1bb379643cd9ace3cef498139eb4240fca4a80cb06d063935d72c43e2f85ea9fa750cf30981c0d9f2c0957bb8b28de3af8b85b64ac2470142c8da8b56ee2a3c7d4eec8d8edb09a83a3fe49c7fd5c94ae98f9d3e7b19bc49865add822d4181173c54d5d61a3822f617f56166eb40bff8bea1880f10c0a23f6acdffcb8fc8f4d4a364a540277ae9cf9c7e050e27ece8cebdacfeee3635be653f08f05de718d526c3c4dac7339da992653fe70dc9307ebaef45a811f2692917f14a71efe2f0171192a551fdfe5af7e52be1059635e2864172577475d93a3c7b0a93607454dd164adbe0c5e4b56bfaace26c3aaea9b4f4dcb6eb076a6d94c52aba6722e963631e02292473699e6e2936a0f50aac52e85e4056dbac5848317cfe10438c83ad3bc931de55086bac504317ae96ca4230df4953ac21ec1043282ec8651e86fd04fcc286b16d6a529c7cd07520fdbf82da92148de0374b45971beb3f4ae5f686578b5a1238356492ecee406f0f07f287270ff4c96d61365d701daf4bdc6d55c92c5f67435682406cb141873c4fa53754f538c3f7ada1cff1913388aba730a85a092dface7b822d0aaf66263e4cdc785a239f45ddb9670823f68f783a40ae316b2bf481abd78ad029884cd2956d8609b823813d4773004753110d2b06d6e184f7fa84c33ce2bed0d8bc2aef528357eb7894ac74409fda5dbce8bc645060e6d46d1edd1963ed0226d99bb2d636f8c806b160ad43d81477effc531753aa7ad188f33d0737038e8280e909e60c347284e1bc8cb22acf9720ea77692d0c1e32486424bb319dce771370da5400d0992dea6b4eeb3a0be500b218bd77b2d029cfb6f3f98cb5637c90e6706311869cad19e39699808498ceb28b4e3d073604d2a9b7f2f779e40e45d1cb802953f7ad3f91c10428c99867f761a9848ae9b058187b0363e0342b8690e1049aa0b1fc7930faaa6c339a2892cd85744d8ef856211bf888223f9f588d4e3a1539b62f86386e31514587522876e89b78b361a3d740461408030b5daa5046f4f25e9422c1177ffebb2cc8c1793d327dab6baa7f56acd2d4989b339aab691df0c03c8e4efeba22a989a4306b618e4a05ab6d9f4fc01b9939b28d6a9de40c7b66d403ced2f938a1e6fdd29d7b3e65a4562534d6af59cde64e2c197f86351f395fe222c5d2eb14dea6d97e34c00b414345a80f0c7874f750c50590ad92216ba021ac6c3bb16b207b4e79b7c8d8610713b3414d4dc3736b59071b769d5985488be9a474c36a0ba37b44f669e31639412a8f623b394197a381b27fb82b0b351cfd6a4f9c78ebdbc666faa7cbbc0d9de8d79bd6fd8425dc42863cd790b7c1af9c1af89949f3af6bd3e05e110848191be6bf147984819fa2b0e8b5ca2d5237be214e106817d70b49831b317f938db06a486cae8bf6f3227fdb4fe1ec01c1bd45aa82246c0a556a84859ae624b33ec3fe6d02526b80da74768c31ca12813dcfe00d659177f595dbdfdf2007a40c691c4bd5de418d737af0c429022ec554463d91736796bd45f771378e2aca120473872092819620a4ae067e8324181f84b2c7f8586c37e8c8399927372656e0bcfebf6da332ca437090f8ce21ea1121e385a88a78638aefea3f5b454446271b7744e95d2ba90b0341f69f5edd9b678332e2504a7e8c83990f23bdd3af6f78a8beb51c2cbed1f523d4f2e893e14c206bd24e0cac562c98358d82162d40fcd4311475458f81b3db6d37dd39863286a6b60e58749257a609131ce984493a62ae8e4b73a8418ca819a1237e79b0ca79a63fdf90695613c2c6209ce8dc9083ac7f3928d7833c66a3e2accdc95dc978ce05c004fce9ff040e649e145b1bd240d94e9f0b9f237de5e177d4381427a16af99803001b54fc68e3cec67806e85e21e29072624143a638a7f97f7d938021553ed4d7294e1eb0d46b74762cb0cb6e22616c4d1847ac84930c7dcc96d2036bf3413d1b2d10cece8aa5933ef6b6399ad423e30dbbc11ea23316d1a6c564de25f23e5bd33f478e6cd45832ad001ca4390c25b272cf69b33c4bdec4428526c8091f41e9c67c8b8f39156a8feb44770bc4db29814d35d01f8106f3b039c7e96603bf78d5f569f33da3fc3b36ede1bbd590aec489c798ac17bd5e92d95c7315e68eb2047b5b0e0e2c622610b1d95db2128af85d3f131c6016218df72f65cb1414759be95635bb51dc0f52a87cc7767c2b2c66b39e9617ea234799ca48398e404739cfe5f5923136ac781e4d80395f2335ec5e211be47fa8acf0a683e2cc4c09f2494f13582289794b8f288c77704f2a22aa8f62b616d4ef90713cff64085f0a4f99f1c4d4fbb48891a880c3e9a71ad1203523cba1417b74a7064b5e5f32eb674358a86f2b19d1e04e500ecc29c790d6d2f1f986ead5801585a046241a7825a18e59a6afd9aa7218502075cab3f6f40e32e4251c4d8e15633ace6ea6275e9cb6d951a95e80d13992caf2cf47e16fc8a843680ffcd8ffa83cc3549d9e67d6572ba16895490b39ff0d7a0cff72d257d2f57d6d8b50822f81d8f7f62cd9605114f6c8213e744dc3b263d5222cc4858748377d7e5de63bcbde0aa514ae1c404de514879e4baa97f137f27fcb900417d649814e793b7a25b7ddcd195d8acf755c7a1c34f8f37d6b808a80771403099aee89b900947700831e3e2612aaa568425b60a2de9705666a40c5f6645b6f517094e4265e38ee14a406e12c05366f673f5b830c637c9d85215d466637290fff2f26790e67e4ad78cf9fb8ee7c4c1a47d2f7646b7a12a56881e5e8c02340a24365466545f11100454f01e8c1e700afbe369b6f858271a88faed938995183cc9b9e7adf912ff558e70ab51b25f2d7f2291bf2660fdcb22a2094eb5fee28442d172b0895b5135e968779ddfe1f8ee96db756bc8be0002c4d6cb241e830075cc4486e910a8250e1c2969ae5ad8dd26e9a716806ae75d4044fd11726915524852968515e655b3fde19becb6c61ba7e765f75a6fb2660053ee8a9b1f0154bb4c80b853812968c3193f435599f72144d3c154a7c8e391853abfdfb23e0754ac9bad1152583ad60554e411da75709c6f5aa31a889b29def752a3b0e53a4ba87d05b6d2656910ccc3f1e318d0317a947e996c6fb9fb3c110b3db3fe96c392b74014ae229a38c84e3c474829a11b5dfca18e440300ccc54225cd7892b6780aa6797e6053904f7f956a47810a09eb95176b6a221b62649ab8f2f9c36943804505b6c950ee54fc53df370348270d2450c8ada752813cc9865c5b1bd298fc573cb5414c4d42464dc9ffe16d0359b0d8421fc1c3dbbdc9d4b4f023700a8bd90a11d75c63522d451c221fe997026f866ff204669459486fd59711be360686684bd53210ae26f19c7795a2c1db60978bb807733d54e72e751d2993078e4a621da4ae87bd74840afbd687627c3ef06694ed426bfc4728f6e3632b1e1828dea82b8d71ad6731d007553425040736be681878d930a0e23072ec3004a45d04463b45447c14c2ed5a67868095acc0e30e81a0eab2dc5d3a4b9844189c75ac13e31f8b62ba193f7c55183080dd02aec938e246b7382ba323cedf84cb09c3d6846c19b04f4282817d92b19137130138073f00f54114589aca2590660aab639272ad26c2238a53d088a62a3689228374e27edea72863845dfc4f07d2d66c6f0ec2bfae2ac56b421e10f01ba7237eb3f7558566809f01d0d2ada6fd15a53e5dff57d0596ca2b1c8ff5b79070e203327d728ed6a4c39cd23f8937a0c5c275ee33f1464e39c8bb217b5017207f8a4cc064dcf113467d7009422f8c65343969d00364a86f3a43907deceb3215706cca585d136dc9e96436a58cf62bb68a03b36930caea219b99f2d17bdd8b3c7578348dfdb845b8582f72559b002c07183387cd1d5c6ff9ac044091544d62af22924cc6925b7400a39e26496baaf94fefe35c5ab05ed1c15bd10a0351b382730256066b53a69485a3f9f4fe3df691392a41a6428658d920d977fd414b16acdea9daf44a442269849ed7bf465a812ae7fcd30497bbf11e111451df6d5669e3b227880ba73492793186bc0dc1498de62c3a92d58fe747c743112d8ef4749688c01257e0e6cd7aeef76e0935a12493b6fcb31a5ae10912a1ef5243382372646766822ecbc88a09017106c02acf21f2be76168b93cae111fd75c2e1af037778d033352ff49ddba3450057c1679c2a152af1d5761efd1e2100ffb9f92194097ed62212756bb05b946a44abca29ce7023cc8b9ab098340667ee13a3d74871cea33d3ce4bdd8bd6d3b08ec103b8259e3c7f6c9f3a1e533dfdf228195ea6e6648dd97d06a5fe3c5b19a55573825e1e62fafe4ff06841c7491025591ddea985d2a070c97218876d176225cd90e64ff626c76a5b9da2ace489ea0c63d43c9ce66f1a546619183ea9b68b95f5c0dabba0df0c883a642e1d80fbe746f1870d74d4197428ca3105c4417fae4934739c670ccc717095ad728ac32c1b5b2cf56f48d87a9d7d22a2f31b22d74940a22a444d799ea0e369ea3a783341354dc0741a7c10cc2c0ae964917b50475426b22be8fb50b5b8243669dfd8a7647b4d0f5efc423f729cec2c3a9a40faa361025d8943a03f7a12f01d4ab47546594e38ec118f15f52a25ca300bf40ec1cbf356f3c0f237d85cb74129ea2743798ed0b89802dcfb6faeab7d94f34894808a63cd938267c62d3ed08359bcabadea0c7187accdee73d6325f1a21001a974eb97fea3de0b5428109e2f388f66e371154977da3a97b21427d6965e9a5b5781b498df31ef7d1d7e0ce1b5edfb0ef7739b9fb5e329138eeb7c71f7c91485c3ac5d29b3a4d89f4a3ee6eba52871949a72a770768f90b3705e2b576c84be8f58b71256bbec8c36765e3bef8721342001827ff6274db9c2962d1e3f0d903d4d30bac2877fcb382368b0dbd8641a5a608657e24c7c563fc879640ed9eb2d72490692cdce6e16c1772d02060356b70d83890ca9adcce344ba1fcc4cd894d92b3702ac9069abcba3975bf72b550e75654aa1a20d230e8e9d0cc5303dac986f37edbb87f084ada1f5a71d9b319c4856d37f7c1e0dc2e3d0d9410e46a1d5bae34640b987954e3b78abe945add6af8620855d3257a9a432eb3acf7fcb0986c37cba21e0ce11904a53c9f0a48f22cf13862eed84bdc656582979fb999800bfc16b871c075510f570211a61cd1f7497324acb3912ad4d6ba8a4511d2907c10aff561aca221ee3d3bfeaba2c6973340253c53936c127cb82dd3b5aa3dbbb2e1efcaf8df6260fdbd1f47031779a332950285d7403c00eb9df637b9751c741350b5197258152f799496db21625da72da9f65fbcca64608c385ce27d8d3cde0935841d5e91f9e8322eb68525c97705c506e0e43ae58d85bef9fe274495d0b1ef7e8094f262c070b63da8499d335b2954b715811e0dc01a6dbaedc38e4bcecacc4184e50958367fd2cb02ca0e3781297f29fb2f2312ae90ea32d078982af88501fe9884c3c651e24e128224016cf090cfbc010e5057409859d1ab78aa66215cefa34a44797283bb91aa2641aa96d9a4a67c849555517d0bdc201ff583e40047217b2037d8232ef8cc51075dc9c68067c3eb74044d797fe249fb81bbf9a51d320dd7170e78bd6ba395635bcc5c9eaf3e52760ea22e108634d506c01ce53aaec990341b2c64d05277cfb9ca2343bb8d997f6732e223df46aacc6ca89811c8c297d99f4daa2252ee270afde22ea4eaf3d09afe84b52f680fdfffa89fc0bc6ae22fcf0a490164e8a2466328eac54bc66145265c5ce73e87d885f502813889d21670a40316d762a7c44b754a585ced616f6b4d94773bf6b4fb13c040655121a8588a1956291e086cc5a2e58c16480e6cd59c3ffdde6be514186ed38a2b2152cc225b16feaa18f9dd7b3ad0ffd18a6842e1e55a432dd8c1e285e21d523ece81f28fa7bffb802ebc2508622060d4ee03eee3793ab057e7dd8aa30ea840026b5bcf2fd9ba42234f09df387948c0b3a65522b69fffea30eb4db4c52b321f1bb810c3fa47105f2c29982db9327744cb73bd6b1bf3df921a75152412472ad7fbd5ac0346fad24a97c44e9ad12f0e61c77e2461b8a00caab08fac139821b10d2e7dd1988371191d2f3a1c40fadff601764bdea66005ae7e70ab06d1949d3493631923e1a660a2d8a9ce4c4bea16e0882d46f768a06d43f7f01701bdf66bfd180a500925f17678aeb6ec65b7b04d6301621a856ed4009ee351234076c8eecad9035983caeeb72e1057d19c5cc06300ab4522c2461f74a053bf8bb7bfe34d78a91f59f051763d0c31b748d9aa4f1b7ee1deb6368eeb4404693f3dace8ea7b219df9fcd025f8394d29b9ae2b0eaae27e6924ab9692e2b460bd73faccd5a90ee1f06576da9457ffede068034b8d97a22b1f0f417ad3d162c8569e0e15d4bb2118a2ceaa70e479c30704058587563d23f2c1fcd657683b799bd4bdc8b71d5ddeae85eea229ff9f8f43aec8b52595893fb845d8151f01d89cb9aafe70454aecdf1625e6518e2e411da9f83e416e452cd3395e7ed5c272529230652de883317f9ca9d0b40dbb376070d9e64a07d696593c709c10a631a685abab79c11c6af3e98d4b69555a574634dd93d2ffac17af48cddb6a93ae3b78b826c091654e527a3aa420046f7f0f782c5b8932bacc7c83d4910871d3eb1f7b6722546e457212de5c1d4b0215fa976012a4d15dd5d526e25c12e62c2365174670a58d69e862c217809b37909384400a1e04883fa9654e98940ba021a0d89da81ae7a691a9ab0ef1a0fcac6b0cf2ba2588a7cd0dc5407d0906b31049f0101992d5301c270b4a4edf4bd5fc1a53accca840d6c844c756c0f5e06296db9efa2793eca992d08573e223bfc3da28c48342daadfc26bcfdb51c189dbc0cd0e9805db1e8d9e86b29cf318b10092ee0c28691e1d33779d8de998c70a51913ecbe7d28a73ceb90bfe0f52353cea5c2a27c2be85e5e95390f3e6c0e414ab06f0a0173ae293e1343508e567e82333c2b06abc42208172fc933d449825d1ff3c78a60cc50fba0b77ed02b20eda58fed9d8f9bdc2b3e92d944d3baea3ac6f944ec72338a5179ce3a062f57b6911a43fa7a2cdf037293bafe979cd37926e0cb50796b3b93239d8e0a559307ea2967dd5fd51cbf27f9a41ec8b2b7c13273e1a513bca3bcdd54d202290026f73a8563bdaf862d1197e7636fc4d20a1c944ddb5e45c9735d8485e9c9bd34db5b7111e6e7fe6fa5ab00b01b6bbb913d33696abc470709a1d5fed05c30ef0a64b02b90b04cafc567aa78cbfa8e4293b7228c13eacb2fab0d42ef20400fedc2ba925cd75917dd9166345c8bb55a9b1a550f632005d16ca4566385bc1474022c9ecb72cfa98cf2f5a6ff212e9860a214384c4f2a571e32c7a0ce70e00eb70cfc987850c6beb738b346a7861860daf0e8de2af0f502278d18a053277ae927ab3ab0c27f8c905358bb67e934de5dcf600250ce71440db666fff9027f8a99dca8c377d28e176309e830bd73f9b5ce21d03d3b16153c43d23fa2deb16ca0493b52ca1bc3c29c4c901be20f8166a400fc3c67a4adf4621fd0e6cc0a9a24561019f2d86fb2398c82d1b611434c7256a91b2a2e7859d62f9aca4530d628657b4b537fe658beb139ff48a8a0487b0c204ad32caf9b0021d70e35ceccf0033e5a12702e401bfe72690d8f2cc88656ab564acdf316350e6517e28575baecca0fe06a194db92959ba8b3608495381a374281ce639165b0c3367316c1483f83dda3c91cfce49e077d7a73643162a01a7c180213705771d2042116b44fbc9224f273d2ea965e11d4e9222a9c0383dcaf9a65f6c8e4d20e27913a26ed3f24d104570e06cd8505338d816600606117714b3d302f201410c1cb07c72ca6628f5d5bde581b81362c16006609e2108ae5550ad41fa845f1ea440d107b86287ea034a200bd582e673abaad7792d8a33c67b272497034496a610ac572b545e2fce420418bc313cad9d371801e6d3302fe2b960a4b50bc6248030705c6cc10e61957e2658b33a05fa427a53920d329020f80c8485c2a222bbe262d60bd8572eeeeff4d08c8d24d941b4abe07acb7ad0d4b589019aac2e6e3340b2a4d001ffffffffffffffffbf676d6bbfb5c6fcd6ec96524af30328429494524a29a5a4b8a6b15d60df4b08e14038edb684c506a906ba06b9c2285bfdf6c7f8d647304aa783797b953c514fbb234702a3d421c429398d473749fa8ba2a6d34ef2a29f9be5872f8a225e44baaf66fbccbd28b88777a41e38122f4a23dfe3e5bab929d9d945d1a477926af23f8c34a10f5d147c4b09c2e3bf7f52ca454965f8941f446e3e59db7ce0a26442d4b445e3e4697a8bb257a6923ea8ff1fb628c854319ea4a5343e6a51eed6f4f4f77a1b21438b6226335dafa53ca9d2d8e0631645134dc9fee9a3a3cbc2b153adf9dad192354f4df1f4c1b23f459618ed2a7cc4a23c7235492ea27450d2e40316053d429a94e1bdca947ec68c193366cc28247cbca2b496e15409d70aedb72bca5f16c233efff95f0d5604b3b528d1d98fde1a31565c70d5593f5e3c60a2b3e631e8f7f23d76063d35514ff3a4f4e95932a8aef993a8968effedff53e52717d8c9c6c08cd2427a651519053ff2a6efb3dcafc3845d95de63635d40f539474b98ff877de125b2c8533fb629eeb5633afb9a74d7bfcbaf6831425b3136d5aab641485dd2ed3535d97c924114549b4da983cbf9bd021f3118a62a9d9bf1294a474ecf80728fc16b15dcbbb0ed330f524e4e9096a461f9f286812a2f3e77cf244b1bf4ec6f73a4143559d286ce91f9d4a2e5d721471a2603adab98cd22f513e9b28a66de6db8e93515654187c68a2f0b1b3ab8e3cc944314c5092ba270f5713260a9a844debe1b34fde98bdc2c7258aa94c8e266752927c4d6289b269160d23b223e30452f8a8443937b3353dd6c85a1947ba6127820f4a94ed547df82c41763cd90d3e2651107eea843e9d69524c3d6cd0e8018edf9103d1246166ab979785e7d6ed5bdc759566ff7692f3231245d1102522336692fe46ebc183841ef8800473fa99775afa5561b1a2cd949520ff7844413c078fd3b1f9704449332839f9a54965938d289dcecb1a554af8dd981145d724d7e2715d4431bcd342f5e6fca4cd1d3d747c28a2a434f4e453a77d24a258fed1b2dc73473ce80311c5e0494c8e38253150b9f130384c7c1ca220fab3cea63cb13a35ce8e4f3c689c01e3c31025e944efd2d8c956c6d2a1838c42947492848c9e9f43e30e0e1f8428b7c90cbd3109da736910c5188366d3bc719eb3e94310259156194adce0a3b9f411887298e69029179bbb7740943d99c72ca6c92b2307bd9ff8f843d9e2b387183d6b3aab7e289676924b49e2892b13d6602b230734d26050828bc4471fca9b53b6f96f98a952f2a12093983be98b103d8a8192e6f8d8433978d9c6691ef9d9a60f3d14bb6f35ef468f38d1b0cbc1471e8a5b5b628796f7dedbf1503a51e5eaf5e324e9b11d9b7cdca1f0722a633d3b943fc8cf2a418535d87a24e9068d1b9f7af0501303870daf43c963bfa89da82c39e8d0a1a4a59bcab5ce56e33d878299ba97176b2b9d5f39947df53453dbe8d3d61026c71c4acbf8018762b5ff86b7ffea92794349f0506f3283549f4d224307e9c9d041f97043490c9373f4a9d3db500ee2351f9a4fee095216381bcab6d1949acd9fc24cad8f3594ba7274a88d496c7ca8a1a4258557dda7e7127bf4c1471aca25c727a93a764eaaab207ca0a1204fd09ad5a492f1dd46010d68d4e0e30cc5b86e62752ec9447dd38dff3043f94cf4cc75fca0a7c4f9838f32945a4b927683f0126f43217c9001031f632888cdfee0a3745b5589184a97a2664f34f5dc563fc2503aa979358c3c494cfe0043f1fc6d3fe5e78fa6bb2f944f297555ffa164da89170a32cf976ac925bededa8572c8db5cdc7a69f4f2830b05793b76a176429a10e3f0b185e2a6b59feca673ec92a385528552d1374da29f3012e1230be55c5d6252a61493931c19e807168a31b74f7bea4f557732c6c7154a27c88a8c2777d2f56e8546755dedbac3735c3b44e793ec6b94b4f0518572d686af7536f94d4c3fa850de98df7932c5c87b2b7d4ca178f2f4689a29c9d4a9353ea450902607fded908af11105ad3ef3e445764d3537fcd6dd91c41023c78dfb8042c13f6e34f4ab9bd89a84c386d9197c3cc1b87b97aff754cb523be9a75ebe26fa704249c77f38a52789b492e94713cae1a47be63bfdaf226f010f323e98907c1aeb7361327e624bd04ade75dd18c7871212ff4d574f549e52c74712743dddf8fcae2a5777cfcedf7d1ffe49b012eac183860e1e1f4828ef9ea0b3795bf4e7d1083e8e5010dd4a13d9242394becc4e75ec984d2e2a4231bfd563495bebd0fe42f04184f2971e6df2c7e057fa6ac0300aee6562143bf144f718619445e8dacbd69c441d7d300a173adcc837c1bc94d80060942429d46daf6e6ad2dd0c1af08ba28e3e79b25726fee4f8a2b827c52749bb777c4d1bd08bf2e8fd93dae4b79373ac01bc582d6b334c3caeeaf333734598e9fe1373299306eca214fa62b736663c79a28b52da271171a55c14e366c97a155ad6260eedda995088154ae249dca42a4e79ce56a1980419ec547ead8f4985620cd7e104ff9229943fb7bf7feea55018b5239324ecede9528a4271d4866d274f8242397d99d46d9d6be64d4f2868cca759c38fbdffc809c511cd2144f54d2858596651b2e68eab32a1dcdda273960a9126869650dc5452dc09fb3b561e251463e7d462b2e9afcf24a1a46386c7b4b64c3a8e84a296c9b313f77b4f7d8472e5d6fa29bd1a93a03142d14fce21b49614a11cc4980665ca0f21c231ac3dd5677f1805a93986efe0bf30caa3bbdc84575991e10f4641497f3771e70746f174467bf65c3da1fe2f0a326c85f8dd3e1994f8a2205488537556a7b2d48ba27d2849f224ebbc286e5a0fd37974103efa2ecade3a3a26952b61a3eba2a417ef2bd27cf6a43c17c55c25eb55981a17c528f77226ce8e0c427d8b929ca4667436d56b9eb645d9c6c420948a96ddbd6b51d2e14eba926e5a94fc94dc3dfa711f9f45d164dd16cdf3a52f9545e9b37ce4280d5b76752cca49c6d438ade923235814832e49e88a50e6b7bfa238da49f0b40e1f347445d1d3d63b95bcad512b4aa3f1442b39c61356634539febccee8c9a46bf12a8aebe3f9a16d2f56524561fed24b297d9a64371505935483a912b47da61615450da24d4acf1c5d824e51989141cf9fe95dd54d51927133c2bdcea3b5a528b748d7dcdf0ced9414a5933ac6da24a9a32889397edb682d8a82da68724eafb539e75094ee7cb543a810225c509446762d6376ada8313f51105599270adadaa6dd359b64d289e2789411235b3649aae444e944ed5dce0425952a3751122bdf2eb9836a33d144310939193a429889627cffb6f9ae92d5454c14cd3326cfa6045da2d4a9cee346bbddeca125ca32aa6dfc04f1159eab44493fd6347f49fbf18f12255d15915a822ecff44da2fcd957737fd7ac7d27895249c2638a0899adae8b44694d67506ef2bdad8941a2b82932c727ed50b2c71e51929d4ecc51b24e95da1c518e91db357659238a33a2574337855a88118591cd1cc4c4f4dcce220a575b3a77a632697445145456decf62b4483711e8e64cb2e9d822a2249ace73986d2e3187289d748289cbffd0b71aa274ca74ee734dae79218ada3eded93b42944cb787d1a22a9041943c6aeae4d6ff1ad31e898d1a3c9c878e1c34ea0220822865f2f4246f763570fc0d15249403059d500e1c892081287d123e42c7656a1c208a1b4dc507f7f394132b00f2874ccd323c5d545453f3e52e34c9bc25fbf463207e286ade8e92e6b17b4b4c1989053366949176781f8ed95fabbe6390992f081fcaf95f3f84da063da002133c00042c78809a2540f6606b5cbdbdaabd65eeb499aff3bc7e7a2826d3713c65d3790c4220792896f4156b257bd09e673580e0a1a066ae7734669e152908408023993103e40ee5ccd438aa5b546f1a08c7dff8433b944e92494d486bcb74d048c3015287c2690899369a4d4e4e09840ea519e1795fece4f89dfd0dc301c81ccad9e773741d3974a0019143e16bec35a7ceb04926c93ca90c07894371cc734611aba6771de3e08e1480c0a1a0a2bbc14fd8a0e920dd4930007943393feb5e4d5e491af27043399be5dbfabe85f83841da50d8f8be9b9320744c2aeb618346590e10361474a691ada6cf835e13b501b28692a444b3d07680a8a15c9d47a756c90d4a68a8f500494341bbe952a14d6ab829470f3f366eb400053366a459ba618c0d1c206828897718afcbd57c60082067282969d67de66dbc776486d276d0501de30e528692c99cf93e86f412d78090a1b0e9d78476cd87137359001943397aea753c51e32bae188a25b3f989d558e27a1e06d346b7b24aad663f5cbc4a8f89bd47f3ac0f0c05cf18a1aa335c9ca41e01e40bc598ea751e4eed9d20eaf042a6dc3d3e931c02e942b9f4ff6a07d1d61b0f840ba5506f62cb42473488b650ce2f49e34a3309524b5a28964e82d68e5b92856287b1d0bff324af4c58b8d6ec6d37d5e2e6f6527b4cc39ecc1fb6e1158a654a7ce710a72471fb1540ac507c2f33254527dfb70ba40a851393244f880f4aa7b3bc004285f27f9eb80c4ae6f9924f374c07c8148a59fd1240a450f454a2adae9efc99491c40a2501af1dc34375db31d058142395b771c99e66f3e7f78803ca1ac6665769f9a7b33c709c51c2d2b3dde07d28482a65172625545ef958030a1a4f3bfaa48cb7bed7f096acee5eed689a5ae89cd24a68d8d1d0f4409e578636a3c7992de24bb2e47826304e8868d1a1e700f8024a118d4067931dab5fe2b24b0ae95da6ad622f75dd9259a98b2b23fc711dd11caa94cb457840cc4087c57a6bd797b6a6ab56c5b87cf272045289bc9a7734c1b63b037af418850fa249b395fad9afa6818e5cb9c4e3c1739390c95788ac4a11c42c71d11728243d974cf8eb8b8fd28bfa1d851af452631e38662124e4f8e714c10259c226d28e6ead2fce95e0a88b0a15cda2f34ff26e92d3a77226b28bce854dd9e7e3594a3c6ee8d2549ff4f929c481a4a82f789cf583ac49ea4c5218286e2892f7562c73aa14a0e0d3b1d889ca12c3e4a739b14e64992732266287bf415a5f4866871d828c18994a16ca1b724b9c5743327c1132143b135d63f97cc95247b2d328692dc74e265f41fc5101143f1ce4a9eff791ba14a56240ca54e429ed0d1b446db2c188a9f6d4749721657d344be50d22f7a9a3447ce4ab604112f1447dd64171d435310e9425135bf9e74ea996dd3225c2889d5afcffcbf4641640b6944b450bef0fc29ef1fafe566a124648fc83c61c54239e84e3257aeb7217285d2e8ccb81ae47a43c40a25d94feccefaf337b679e01ce5205285d29b48b7dc782176e223830815ca7125c3b7475553427922532828b924a51a355b83ad3720228562062de7d93da5821c8844a1a4749f8ed26f52830d25d4c7c35e200285825649bfc813ca4950daedcd3d64ec459c5092e59bd973ca9a5034f1e543993e2965461461424189c13b93d09a293b581d105942b94c6e3e065d931e5a112514b7a4d92457cde43553240925ff31f33842864b0a224830b493d5cfdb2f72846267b8df24889493b34bc3cc448c609039089df9e2756a912294ecac46c74d4c7268488408c5199519167265ba738651ce27dd86503372365e88304a21939924d741f9878351da247d897f3a304ab7bf354afcc8bf409a8ce96caef64d5a5f142f2b749023ba8409632f8e5115fb921355b3907331492a31c798dc395e143696a4b4cb67c8b7c80921bb28ed2869f46a0961b62eca75b3a1cc931c8f4fe7a2a0c5c3986e9111391b2eca2546d7932b5321b7282739f4c8168513a5794f794c32979c5a944a63d025fe65b428ca865182ba5621b3c03ae45cac3ad33a53df37d375c67812a38a264416e5ea53394914b76e3963512c3165bacd0caa4f0b8145c1a3a9d0313b663adbd460a38170fc18ea819057a02b8a6a92526ad49ee7e7f234a415c5b8fc9d93a4149b2fd96123310d84b0a2f0ffda193762d05845262a23f7a57bad999f9e712737ef8f581525315ff67b7f520d361ac881905414d5f4df6acd29e95bfd0d0f4145b9ff36e87e4dc829cad95b5d2bb20f3145316e120d19d275f63ba52849a286c7d53f53f2cb1a6cbd23f5b0911c428a923a4df7b51ddc4a68434651b258cfb9cd474474ce9d28ca25565fe5e88d519d0f4539c9e56133752e0414a5cb7bb33e9f433e51d08ca9646c9a78a2545ab28cf8add0dc3929a4134593ed6afc0439841345ddd4d6d142067711a518219b08d104629b904c58b729835027acdf2198b84431e7948fde179e5cb6b644e99486b819cd55e24228c19e7b57e8d7ca87d686783b65a1e6f49049944b8e902f3f1e3c4994444549324d3c35f8302412051132d74ae66a9df59028491ec3c631993fa2f09ba5edc64d830eb1234aa1c39c586ab28d28c786b82af9f33b46984b72b3924f7a2e59849a470993d3e89946459467a3331a561d76ae73a91d26ff632e084944b174aadf48d973139f8620823d4f157db5bc4f394b7b37e1b334c764b2065bc82132106288a3785ef1981a5488e2d7896592b462929224430851d8ec27be7efa0ca258769eb1447bbc6d1e082182289dde98c450750a094441b3c3a7ce9ae47c9b0744e9da474b89fa49f411ea2384fca1fc26fe6f778985f8a118c45fe7d735a93e74217d28e7e8ce194d123a2884f021a167df9ac48dce84eca1a02657daec98089b5d0f05f5ade39b25bca44c9287a2899827b953c6aa1fd306217858364c296d6af477280659bba2346d12534d2176286e1071d53162ee93ae0e2569933c1717da103aa09b75566776276fdead73669d3983d94523640ee5d6ac4194cd6948ed42e4504efd79e4a4eb2cd193308f903894bd24f118062170287f1c9d3a6cee5557c43d087943d9e7c48d1232bc9e3ceb08714331456ce8242875481bca3a9e74bc75d7990c2219216c2858c9bf934930d9c47c6719216b280833f324c6a942d450acb0f7581ebe1d84a4e1f7a467264919c41884a0e10d9d3c7327394331875eddbd4d27a98c198a256592cff39a20d24bca50325d4aac7dad92ad4d6428c750aa2f63e888a7c7501c15637272538fcb8e180a6ad9b3623a8dcec784a124a3d4cf85e7db932e184ae2ad539bacaad6a75f287edc93b5cbac53eef48295a62532367aa1d52aa6f764d69c83ce28e20d42ba50be8fed3177f27fc91b17ca258a6d9c18fb46ea15b28562362d3a482d795c9412dc11a285b263f83f395dcc298464a124a7f451b39f84fe1843b060a7154f7a993a1e5808b942492cb967371b12c09a80d904eeea1c100107f4e0468f1a62d8c031819ac13bc320707af02063470102d00333010500a0070f325840800024319e0c3170fc0d040880c78e74c8403976e848c00b001000000000000130c10248c0c3868e5740009200001e3ccc0c0208e07b3c9a5180007c8f473976cc380000060092801c3a68e4e07c0f1e34682c00000160c001d0468f1b35783c0d1a091881848e311e5132ed1b747458e8fc7f0dee3332cec6483b68946103b9f5c0616305238e401b3d508e311a81367a9461039141834602461871809145f440c751448fc4638c34860146125112e4f89bd0d612f66f4414e4641acbf054b2653e4431ef5fbae8f4e9b54cc64863f08e18a2a849aad43729534b796ab0f540c718690ce481c3468f1de9860d1d63e4383a5208a481801142a08d1e3b6af0b8418346024606512e29bd4e8da85293b38228f5ab962407b9a324114702511825ede430d1f2499a00519229940aed7d1a6a74fe50123d314926abe9eaf946fc50d03767a9d1dd847b37d2876338294dcc6efb081f8ae65993a0c5c7e45b690ce4913d14e49f90b52f62826dc8e0611b18d1c3ed2faaad7b92ced9d160240fe5564fbf73e90746f0502e3d1b84dcdf1017af061b5b60e40ea5506d8206b527c639590f8cd8a17827e61495a22a65849c30528763df34e9cf081d7c3032879383cd88c3c1e1dec06eb89136b8655a17b632e7f16126dd2e767de39a72f02ec831c286c2a6fa31cfa5e464ccd750f4af4ffad5dd268ca8a13c26aaead3f59134947cf327159a56c65e1f4143d16a9367108f513bdfc819b0cdb36b7171d9f00db59bf21133144f2c41873b1d2e43e9b3fa95a919791146c850cf98786b67ce511e4333bb175afa79b5f2ba7e99ce4c0e1595bb8d88a1b8233de8afa7f7a8a230144ebca6e79c66040c257137951c845ccdf38e7ca1687f19ca94ea2da164bd508c398f7f123fc7f29276a118c366cf59f388cb51d618e14261b5cd549c676a0ce6d9160a7aa3e4bc2e9df9311ed142e17efdf343892359287c9239cf0635a5badf5e61040bc51df926e72631e6a0c4235740ac3a475332f52356c0912ae0d960840a254159f8499e444fb26da660bbd75d9d58665d67be2352288ff660f24a73bf673c4838740462ec4827c0db917ad8a8c14814ca654a9d4ccf26bb4d1214ca274e9c4c9b3e6e4c1e1c79822373f9ea56b6abe5e5315255198c38a130a3b1e546e79b5012e5832a4949b2e464c58492609e4d7413bf6450e21a6c601859c28e28a1a4b92dc3684c528dc68c24814f6fabb5f9acb9b692cb9232c8ca95984f743a28ae638c338284d2959cbac4203f9328ee61c3c8116c068e112314753f4c701591196e1d2982cd182182cdd8619c306e46304480514c422993aa4ffd8bd2676feebb9027ade97c6133b6178abc287a76189dbfdefc2422bbb019bab0193610c945d983a634a1f28390b78ae0c28f93cb5993d54ff3ff759af46588dca270a5e966723493e925628be2ce97542adfb45c9f6a51f4a4ea3f8a8745685174ebfc918f5b641665b919519edd4d5613169145355f9ba174bcb1288dc99abc517422b028658e5b626ace54d29bbca2f4da69e2446fffdcef483d6c9c12445c51d64c824c1de2f46d3289b4a2fc293a3dd34ec96b6222ac2899981394707d22b28ab29e4c566a62f6def8445451fafcc93fc8de88a4a2a4edb4093295dda5e64450512e4928315c271532945ae41425319d50e28acc260f6a115394bfd37e8e9521c4542d45395d577452cb92278522a428e86726e11fe5e48de9bb5194334b1e4f134d1235eb9d288a7726e7fdb72b14c5243a67b0d0a163893e28ca7953f4268dc146ccbafb4431e6fcf5ebd498b5e69d274aa349fc46f9d1ad7572d789a29dd2fefbff99d5624e94cf3dc73cf3b392de290a68406305229bb0193210d14439e9a4c5947c4f9b6ec6cb44399cd220437630f9437c9828c9fe1dd366127567b27789828c8d3d1a42cc986ad012c5511af21adbc7ab84cd384a944b5092d4a9e31a6c3470e4c04183870dbd4914b38f7bfca0dd63e27a9228281927a792396476d25c24ca3137b2793f4c4ef2c78344b9f3ce6ac584ffac87f708e55af3ea5b643736ff8352cbd4605332441c51f04da3d5655e379fd89513441a513c69cbc33f7e8a8d8606114694c489e14789793da9128328b288a2da27b59b3b2ba2984b49628ab4f9336df0e8229288a25588efa7c827f14ed20e1d8724104184c8218a394f1294be89214aa64c9989bbcf97160b514ad98e1025a9ccec649ac952c23e88626ccba01a9a512b2c114114e427af13e5a96af70f446194091b741c91aadd02a2e025b98b1211b9d7e61f8a63372ea2e3cbe37e227e285c5e9d9c275dc74f52227dc0f5e2cd536f2d4f4c4a5c6c68df5b35d87a470f1d227c28ca47bb3be9e13da0881eca4928a9259f7836d9312279287fc698ee8c8ef80dc24339ab7310378f267445913bec56da6e7a695f1eaaab881d0a9bebfe99de3a14c3a40ad37b92e9564a87d2bd5d56092683e67ccea1245c54dd862939ad04c9a154caeeec875ba813976928484118044110c5400cc9dbd201431348201038208dc562c1804416c77d1340c1ca02017130128b83a170388ca32006621884411086611084811806a2b84eaaec73266f78310c5fbd5d81bdc87dac036277280db1d774996154c501b64d80fd6512405fd04d932a9826a84957b09469eba9a4d4b322d5abd7fc338c4793fbcc5c4b3bb67cedc72549b3161d0bc178ceb566fb75e1daa0adcc437446ba1ddf070a10e4d5a5abf2f96e552870a10c0b9d2a7af8774603f48321d52b4971c63836188a692acda0312f3ae9781dfd814e61b4d0b7419c519a6c4e8be426b6c2ed4b96d1ce3a2420ae1354fd9954be8180d4f3d2659381ed5015e42886875788f44532a0681614334dc4b509cf09acb86adf79efe1a72db44091e3c6bc4f7906980cbbc746021309af950c9dc20849732a971a2eade5f34e6d0c70ddd8977262d8fecee277efec034452da1eaeaa782255e2ca0ec038bbc1ee45b87aa1837557170a45fd8c55ad0411ae42e14500f216c510884c59df5a95942aa1a7badc567e0170a8a7013cbd2b0dc72108434a19862a0b3eef19b350e690771c5fb600d7d60c6d80b3785dc300964ad32665911f4b9234e792ce980c5e8088631ad2acfa3e480c81355fabbe97dfb1db0e8ce8ae7881e3f9a70f334c9ce0c41a88b0918f6914731a0adfe7b479d6c415b1a4c0583b3d7f5c77c3c8b3695af39e40a8d22286d80f7c8d5a379d803211b203a14d736f2da58b4dc1bf7c317210c47d73be59b9a2d9a84dbe0a1f6004c06d551948275612527bbe057b59619a918b2934b25d7a777031f6042b3723dc280b19ab4bf53aa061c2c1007195a530818dc1f97be7279137c421301a87c784c8ed6a53422be5d713168dcf3bea9fb86647bd98ed00454c8ef0c0c7c821c53fee176e1894dde5c9b2686572e3a6cc175de75e1acec4183799d9bf75a82875b1a4c4b72177ba2ec43c966fbff9628a5891813c7f33fbf664424030c4b93081256556b765fd60c4cf24f630faa394d846fe7f40c9eafbc1df4635ab0cae3e6a59b947c4b58515b89d3fe022f35513d7314a3480093a1195d09a3aad8ad093a9f96110dea2d185ba70f461ac2b9ee1ef8cf51704b0b488417bd659ba9053d2b3f92860510f949392908827cd8dc8afe4b1b266c05b99a6bb019e1ddeedca955012937e6e6e150c92ee76d2df713cc1efa43b3b77bb6c101c298156ee6708da9f934ffe39cce8b9de50552eb7eb0ddd4337f239700662a80c1117215ebbf9c39cb36696df6ed386a6af1e3133856fb7ecc1955acfe3fcb3f645d6cbdb6d5a6e61e4dd5778b2ad7bf69409b0e586208cc44fb4d8c94e73bd060ddb88a11a02e6c6fa67cee7922126b2acd23f268fc068af60fa640738702104235927523e2d6901a4c14126df8c86fbdacf4e87fc89c6d68fe8bcfc78aa0e861b540dcb8d53b30d5e789c3184988fa3ddf0f625a9c8c2bfab27130fa9ac39567c38e4045411595cef808b85c10abfb5af3b7e5462835021e3bb3c207a75fb51989c8597e863a944851af1c4045e00007402a0198c78d8397158beaa9f130786cc5b4383d7c93758101b3f298424118d6a594397d6ec4b0931a7c14cceb0a9239dc57da6e2f6cafa8583c64c5ca08e17cd6206cfe5f226b8bbdd028058617fb117080c6820e9165beb9f9270e1579c48651081e7e275ebc20a1540a3aa38055415ce84b054941f970c5047cded88af63f68572a1b60e380f608dbdeec12ef894c8c3ad602980a0d7103875f180daf5128b135b418c80bfada839c805f88f4b5bd26ec59a1212fb3a6d722f79bb0fc39ec302d07d8410f0f944f40a3f57b59fcccbc13996c1183bbe7fa0231b6d66753d4274e0f6040a86d0f6546c90cbe95f43d3061115d314a67068ada8a9fbb229788dc99a3a8cbee0011e24cd235513ef1d6e092eaf75cce84daf498b7491617b9146cff1edec3e43ed8ca76587699f291b02fdda9147032914250ab746dde6bbfb626564ea6c95aa696b810890b817baf36dd0916e749c75ce4fd2d067d00d6cf2e24182c3a6827fb034881e7880adc267e778c2c0eabf800474517bfe0bde8ec726e8f461344c75abbc979ba9bcae5cfe21c49340214a6658d225a9a7cdca4e0173169ef62b319bbbd2e07030a781d15f01ef44e96885b61efac5c3ae96398d850adb3480f9f557346670da49e6d2ab39d10315d9a1c14b9b0a4f2488ebbc0a003d4c033acc6f0c726e0d7188a27d57d13c4e80b2f9a189bff1d4f2e4e3f01226ca74c25f7583ba63a85e5d032c2b764ae433eab17abf71ab675a83de7b95decc76c5293245a5e74018419b0a8a9d6610c423ff89e408eb066860470e833af1fe0b8ac77d268b6fbcfff8d5b3e15ca037ead189ab3700d8462e703282d15f91020bc591b909fc283d4ba21ca1947e49de9aa667917445c10e7ec8496be5395ea0275b670decf98d62a8381f8fd931b6bd24f9f2a86924f4eb10b08a933469ea5ec9800d2ffab1374026634a09aa2df3f7b3843b631bad03593f3ccec284a70edeb92b33266e158eac075220460cdf305bc286992d6d6d6451a2309311f40ac51a6e794f3b0fc02ae269bfb310fdaea34300ce72f1d6c92d7b140d0a4d8448934a18de5f04ee050cc7c2e17165a8c529c0732e649922dd87eaff37adf2d9cc043a6089349dcb06311a69914160570985c064524f04c415ce65bd628b3c33e7fa29978db69c8aa9e4c601fd6fa5e02de74dc0043564ad3075a4a76c8d7ac5df5c9a0056304844277135642774e1877d21ab2bddf0fb2856621ee9a2c92c80669b9be9d004bcaaac18f800e8e53425f201860ecbd19731b05461d15fa6d3298c84ab1fd4b9ddc334155b84261270ff57668970b82f16aa204ea804e56eb20106587562b744d1adc0bfaf88c1e2a060e94c8c9a7042443782476a56495a59d7e255be24bbe48a7245e344c0c0bf8cccd64590ff08b47f8d2543f0024d1b8b6c7d882c96f213ff236a0858dc9265683ab320946c749ebec3f4ec3525e092505c97b612f3392218d8ce9595c8317920375471304131be1c880bb597c3f5581c67e4d254f746628dc5ad6e38546abea86ca0f938792c2bad564bd9d84aa2c7a943ecf9f710a443df1c442cfd8437aeb2de974521113d47a783aadcbeb85c03c43628f4501ceda86a2b87ec6b7e03959f06a80da4de8488dc4c1dc52689dd14b3e189202f9ee5f937b7af2cd2a5350c264830b81ac914f55d667b18077e304c84c72f0a714d72aa30fe1bcc7255aeecb5f173728a7363e29cd442e7b7751181384787b52656e321d56af4a456e012a8f777d3fc720b3125041e64e146c9d293972c2c6816c1ad821c627eb694db3ebf37af0758fed56f9d340f9eb1e95cf83387936ae0796b1d910096673e4f7e001bd940f29cb40b016b10ed6d9773eb0d58d5ad3aeaa3940069aa57ca7e152af02ed67339a7c3af6be4511e8187d7d7ace4c4a6827b9b0b329b098a3bb9f8131e3a9ae49807e6f8401a7a2aa8f7da5b92212bb5d765e1add4e6f948cf0885c3c2371990019ac2c20714ff6e33a5db48207ad99bbd96a726cd368bbe316970eac904c4808bc556c60bdcdd0f72a8723b619ca715fabf25daa325277b8689d2c44b4c63b7ef3e4a60ba015c45c851d3200ffbc437830dc6ac51e7e5d6242f5c373b0bc18fa91cfc2d1bf026dff1a2be6366a40afcf04207a8c40f7a28e605e3638c36d7d7666a7512083555de6aeadbdb4610a6a7dc04e7bdff285b07e52049324824536e6087085b44d1315eec65f9ee841082e446813770d733be121071452cbf27522967b5b2501aaf9d2c78dd5cba1ea07254ccdf5372513c560f0027631abeb3f6a6456adc9f0d720620677be34aec6727246f28ef6da50a50c0e1662bd0922dff37c393a62ae9eae87623c1dd2d535a7e295c392fea1bb23a209ea3a393a48bdaa8baddb4ab3da19206571a1ffc5ea976008bd250db0846ae4968f530b5deea4d032df16e5efe0897d93c27185880bd729566e857df30064e8c7f9c9877c172e22f4b083833b60c114cdf97a09fe5d9b2fab500a45341e4c2de472ee8446e4f89ef2523146a0c28490e9756a6090f6f283bac3f88a60713596b01af0ca05e98615c0e2ba2e05a21064b4a74cc9f33a02ae67682e8830118c72566df725ce882d7e2d35935e7bbf4c7c34e7c6f3e609904787a77bceffc2659da245c016c0fddb35746ee0d03d7600100bb3298c354b1b16d7301726564ddd94565c93a58472bbcb5995985c9b982eb43cc66da5827636d8f172c5eaa23eedd791af8d964f915ca1bdbb754159d3de750c2936684064148a4bed4a2c711bc5cf2d1807089f9fcc6d9ed9fc7377a3b268582b361e8d6508bb194b164d3864a814de73c553012bac14551d53e1c2beca153e8327778e821ffb5714ef3ba82767931458519dfb02245a88c45550d4e16d656dfc5f16899866cda21f151873b40c690245642b8135f0f9b6952e69578e37e4e110f9be961b2f70cd6be5b44f23a01cc2511d207094e07619c9e281fdf1cb60ffbd24bfc28120d46c4411f7efe2c5598e8d121dd66d22512eaf9214da8796a93ad413d59cfaff6d5ec6acbd6546f5093b6fc7a5fbdaedea84e19aeebb10b511fdc583aff7d499d173b1a64f62cc8309c47b4b5603aa12279ac4ec122c1150cbd18a909952c57117294ecd122a245876814f92227fa89429acc9c1515306675f5f87aaedebbda071c27605fced4c9b537084f65a0feeaa5fc142c84b255919b908a50808b8160cdb776227f663c45def5887080f92bfbc4c582f93056f12033226b8e0f6c957c6cbf53f243699b0fe15003761a8a3197de5ab5189b24d2deb058409c09d5e77ba2545a2bbf14a0e0c60fe24b6821d7d28c2b233262311897f799c95e809504b17fd5f32deee1e386c756d1e9e5919770113b99dfc0b26e21c84ecbbc698fac15c3c4f36cc73181c1f06b9e47548c766026a966d29eeb464798c4e1a8c8e3ea762ccf0b2dbfab155c9cc54173a10a0da09dd9f5daae1421eb855b2103489984bc88d6f00b188e250f361443671b766b79848c4c39582a8fd4d1905a6b0d38343c03d2d38ec9c56c2ebd2ae427fd45e322de5d5922a465e2bb44700579e173db34a6c6888e9c59810c367e6d67d428013ebf951783bce0a9649f9aeeb103a7d891edcb664e0f0930e28ece1a03412ac1cd74be60549cbacd46657a198586d1ed6d0738cc7264e325acb05960f0c40720b20bdfedf16bd5ba4cfde5376363b694cc1174dc4f8321cbb18708ea2b192e24f0d95246f213e6fdd0868067d61f6090e72e0bc896e299b9bfd5799ec715e79436914502a9e2408d5ac32b80c3eddc2f0da61c6b80d80b607f0fb70d4811ed880bce6bf2a313d5dbaf9fe33997e66a73b2d770b77e08f212dfa07775f77bf661d1b9240461b93ac3a133141e253426ac5baf10e6ed319ef50bf5c3cd77581ff8f42fbb4330a6e852ce218e1869f55f7c69d4f3048958ebbefc155a9395823a26510916ee42e3ac710a3f28688f2b2b7040b80d5732e586e63918eebaefe48256ef4b96a2501a22c51759a8be1bc98e0362703cff2fcf82600e91a4492d852c2171f58ace8455f9ee411e0f3f1678febc19824e73599f80d1bdecb7e812348394ca0db7deb892d0219bbeaeb1f3d7e095f477163d8cbbef087b5c5eb9e56be6b0e7636aa1ac9bb0772a299a8437e8923c1602af0c907c2e3086ccb3d470cf567651744c32d71443cb78a15936c1524ae13e15e2d12e347e17c441e2915bb12cf52c9238ebb0243a4d734275d96d277a10cd93465c6e783ba1f9f51a778a472f4c72e7e217d7b66cd1e27d2f7fab714a055dbec843175e829d53135c79cc211b8c3366517984f7cfdaf20d5133ca081b3ba5321502a9123deeb24070c32734c6430dc09279bb6902948ab96e773d9e28b687201c10de90f4ee48e3421e90526300288b1e5bc1f9c38e0bd4fc3984b87691ae16c8a08fd36599edbefa41b0d0575c6263daf6307cce43cd5f58408a023f84622f8b5d20246417ac7e7ca94da71b6744b99f440deaa75f6fa5aabded6baa59f0708a8996a35509f30e66d1bfa8d8fa198877292849c5645466ae0c4e2ec5a523e677a6496c72a286084b50150f6fd133a057f9c5acd10a629916f4fb83f735b4d006fed8241b65f0780263c9c1fefefb2b88a5f605d0f6cbfe44edac2376c7096cc1b5b6f2c923b9112beabd9c4e6a522f108969ef0a53ed514d08410961e89c866da5cc8e44bf3a633c0791829b3e9ff574e55fee2dbc957b11cfd6814302b042dc588fdcf09a439a6def5b5bc9084211e7b8c3f7dc46af3f034db1bb5b41b1246a932316a42b030d5d63491988f6522a2524c75fb18aa8574e2896b5f225f54342a0fe6f2f70359b2a907e1e9a2ca952761f00529380628771432c3d3c7f010e94c909827a2395f4a4ddbe7535c4fb35ab2765ea9175d027ac27a027fd021e2f1ae1b491fef9881d6196cee81441c932c92c637950d02e24b0e1fcec841844be8a257081da6ba72f8f02d4abad26aef5692892ce40c8338b220aefe23c138d6b3b52584b2a2106e80281346e8c4742502592bfc383bfe333915180c02ab7fcab6bf31d9dc10b644f300ed162e8a477c1cd5ebaea2fd443d14ed4ffa32981c3a01e6db92571237b0d209f34d92c832e5d6d997128aaae0392a19f4d51d08edb182c9c431c660df852a7ff824d45290335812aeb3b3a9e10f01d09e1f7576acc3cc51ebec48656fa23cb9a9f763fa32872bb7288570e4ba459978492187a9af410db95301cfa55221f6caec49d36889c82d834ce8637cd0c8eba00dab1c843557142fe4534e23559dd3923af6a82175314135dc748c312c5b5786d4fa3948f16d7f534dea567779c55ccb2f03c8f875213186408508754c9ff13092cb6bf254911b957958b58b5618b527f7ad1eb0c7f1ca739a0f58a5dcf7b4bb3cc1439564155062bbd57182fa41c0d6608af19a8981f65c16e2cdc4d17ae8b61245a1d4a49200ba29fd581ce959cb26d948832e76ec0853f4f5804132b7da96492cc06580b1e6186d9c40c6ef692b5585122b0bf030a5fddc144e9a5410380126070d87d739ea55b97cc243137312c108f1fa18f9d0573797a8188e5d2df267cb3b78cb28371fe0f0bcb79e92921ac7fb53264f3777364419c5e063089e6e363126b10383c2236a36616011a50c07c75de9165b7b7ff1ad5843bd4934647823e15365b1870dd9120068d66fa06e74dd9723c5168c28bc0130815d9673323dc545c70f830777c213527924ca5ecb107a478bf4b014eb53143224f3570d35204acac54a2c8ca52b3285495115d547899200e2d2e6f705139666e3664dec1ff72cf91eb77cd49de22b00999239f940276ba8adb54f036ad4ec2daf239c0e04d414bbf25166360946d4f2213de84a5d3aeb9ed90558f53c56086a5b8cdcb6dfbda16fe4f8200878baf65485ed54601141ee09f441fe10da693d25e2c1b46496f0375dfe127a012950889bbd689569264df770e91b5edfe8f916a307402baa7a3618dcf324d10055c27024d7bfbff2e58cc6e8972c0d9732d83bec60be11d76b6ee4885487be287c2ebde1a13ab49869101b84c6e26e93964737971f85f996c388fd023ecf2b1149537b8e05c03f86ee39cfe9bb949d5cb99c173b27e77bd6253f587219ae81ebca20666a14a439be59d32e44da90f1751a9441505e140c17d0434c4153ce35abd5e921a1b9f9907b49114ca212f0f9b4efef8e95087b3be10", "0x3a65787472696e7369635f696e646578": "0x00000000", "0x3c311d57d4daf52904616cf69648081e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x3c311d57d4daf52904616cf69648081e5e0621c4869aa60c02be9adcc98a0d1d": "0x08d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48", + "0x3c311d57d4daf52904616cf69648081e5e0621c4869aa60c02be9adcc98a0d1d": "0x106c97f53e386c97a7217d23e3412bd98a37ebbd0574c2ae95de296548523235144217f1177620148602f0ce7e4787643f6da946b7c9390422b5b16e8f1745e8799046c7d25f9bc688e9523897ebd59fa7f3b0d44198a0bc6c88a580aa9b3ce67d324ff4d0173ef7f6e75e06b0151998924c1c7b8704f80f7afc3262018a195b4d", "0x3f1467a096bcd71a5b6a0c8155e208104e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x45323df7cc47150b3930e2666b0aa3134e7b9012096b41c4eb3aaf947f6ea429": "0x0200", "0x57f8dc2f5ab09467896f47300f0424384e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x57f8dc2f5ab09467896f47300f0424385e0621c4869aa60c02be9adcc98a0d1d": "0x08d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48", + "0x57f8dc2f5ab09467896f47300f0424385e0621c4869aa60c02be9adcc98a0d1d": "0x106c97f53e386c97a7217d23e3412bd98a37ebbd0574c2ae95de296548523235144217f1177620148602f0ce7e4787643f6da946b7c9390422b5b16e8f1745e8799046c7d25f9bc688e9523897ebd59fa7f3b0d44198a0bc6c88a580aa9b3ce67d324ff4d0173ef7f6e75e06b0151998924c1c7b8704f80f7afc3262018a195b4d", "0x7474449cca95dc5d0c00e71735a6d17d4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", "0x79e2fe5d327165001f8232643023ed8b4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x7b3237373ffdfeb1cab4222e3b520d6b4e7b9012096b41c4eb3aaf947f6ea429": "0x0200", "0xc2261276cc9d1f8598ea4b6a74b15c2f4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", "0xc2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80": "0x00000000000000000000000000000000", "0xcd5c1f6df63bc97f4a8ce37f14a50ca74e7b9012096b41c4eb3aaf947f6ea429": "0x0100", - "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb3518366b5b1bc7c99d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d", - "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb3a647e755c30521d38eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0x8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb30035be32a48e566fd2a621a4e8851a00566daeb02c845da19f19f208f52ec456d4e77600fc41c314": "0x324ff4d0173ef7f6e75e06b0151998924c1c7b8704f80f7afc3262018a195b4d", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb305dd030831957b6e5ae18c05a78be70e49f4495fdfca8389f99173d7f1b4019e077e24e15abd6e2e": "0x6c97f53e386c97a7217d23e3412bd98a37ebbd0574c2ae95de29654852323514", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb35fb54620ff2e833eccc1177642b30456ecd401c75684a9c1cc1c529879d65cc65c32766fcd6b8a3d": "0x4217f1177620148602f0ce7e4787643f6da946b7c9390422b5b16e8f1745e879", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb3e08a79b5611284ca28d22cb1ad64189d654e3a0270dfcfac27fdbacb78fd65a11584bcce1f01e656": "0x9046c7d25f9bc688e9523897ebd59fa7f3b0d44198a0bc6c88a580aa9b3ce67d", "0xcec5070d609dd3497f72bde07fc96ba04e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950391c80dfcd87103c6175726180d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d", - "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950b1f8315351e09c7d61757261808eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0x8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48", - "0xcec5070d609dd3497f72bde07fc96ba088dcde934c658227ee1dfafcd6e16903": "0x08d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48", - "0xcec5070d609dd3497f72bde07fc96ba0e0cdd062e6eaf24295ad4ccfc41d4609": "0x08d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa195063ec922e7fd49f5961757261806c97f53e386c97a7217d23e3412bd98a37ebbd0574c2ae95de29654852323514": "0x5ae18c05a78be70e49f4495fdfca8389f99173d7f1b4019e077e24e15abd6e2e", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa195093fb92453bc0e8a161757261804217f1177620148602f0ce7e4787643f6da946b7c9390422b5b16e8f1745e879": "0xccc1177642b30456ecd401c75684a9c1cc1c529879d65cc65c32766fcd6b8a3d", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa195098d10965f202a3d561757261809046c7d25f9bc688e9523897ebd59fa7f3b0d44198a0bc6c88a580aa9b3ce67d": "0x28d22cb1ad64189d654e3a0270dfcfac27fdbacb78fd65a11584bcce1f01e656", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950f0305c7924a3f8796175726180324ff4d0173ef7f6e75e06b0151998924c1c7b8704f80f7afc3262018a195b4d": "0xd2a621a4e8851a00566daeb02c845da19f19f208f52ec456d4e77600fc41c314", + "0xcec5070d609dd3497f72bde07fc96ba088dcde934c658227ee1dfafcd6e16903": "0x105ae18c05a78be70e49f4495fdfca8389f99173d7f1b4019e077e24e15abd6e2eccc1177642b30456ecd401c75684a9c1cc1c529879d65cc65c32766fcd6b8a3d28d22cb1ad64189d654e3a0270dfcfac27fdbacb78fd65a11584bcce1f01e656d2a621a4e8851a00566daeb02c845da19f19f208f52ec456d4e77600fc41c314", + "0xcec5070d609dd3497f72bde07fc96ba0e0cdd062e6eaf24295ad4ccfc41d4609": "0x105ae18c05a78be70e49f4495fdfca8389f99173d7f1b4019e077e24e15abd6e2e6c97f53e386c97a7217d23e3412bd98a37ebbd0574c2ae95de29654852323514ccc1177642b30456ecd401c75684a9c1cc1c529879d65cc65c32766fcd6b8a3d4217f1177620148602f0ce7e4787643f6da946b7c9390422b5b16e8f1745e87928d22cb1ad64189d654e3a0270dfcfac27fdbacb78fd65a11584bcce1f01e6569046c7d25f9bc688e9523897ebd59fa7f3b0d44198a0bc6c88a580aa9b3ce67dd2a621a4e8851a00566daeb02c845da19f19f208f52ec456d4e77600fc41c314324ff4d0173ef7f6e75e06b0151998924c1c7b8704f80f7afc3262018a195b4d", "0xd57bce545fb382c34570e5dfbf338f5e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0xd5e1a2fa16732ce6906189438c0a82c64e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0xe38f185207498abb5c213d0fb059b3d84e7b9012096b41c4eb3aaf947f6ea429": "0x0100", diff --git a/parachains/chain-specs/collectives-polkadot.json b/parachains/chain-specs/collectives-polkadot.json index 9c8dd6c8b9d..06ca67073c4 100644 --- a/parachains/chain-specs/collectives-polkadot.json +++ b/parachains/chain-specs/collectives-polkadot.json @@ -14,7 +14,13 @@ "/dns/polkadot-collectives-connect-ew6-0.polkadot.io/tcp/443/wss/p2p/12D3KooWLDZT5gAjMtC8fojiCwiz17SC61oeX2C7GWBCqqf9TwVD", "/dns/polkadot-collectives-connect-ew6-1.polkadot.io/tcp/443/wss/p2p/12D3KooWC9BwKMDyRUTXsE7teSmoKMgbyxqAp3zi2MTGRJR5nhCL", "/dns/polkadot-collectives-connect-uw1-0.polkadot.io/tcp/443/wss/p2p/12D3KooWPrJ9VTn3GEs2e7GQs4zoEFiTFcjXFNbQ2iDxFDQAbstQ", - "/dns/polkadot-collectives-connect-uw1-1.polkadot.io/tcp/443/wss/p2p/12D3KooWGFYW6hJYn3pkpJawyMk6souXh7sznK8yvPmVQ7ktfHbV" + "/dns/polkadot-collectives-connect-uw1-1.polkadot.io/tcp/443/wss/p2p/12D3KooWGFYW6hJYn3pkpJawyMk6souXh7sznK8yvPmVQ7ktfHbV", + "/dns/boot.stake.plus/tcp/37333/p2p/12D3KooWRgFfEtwPo3xorKGYALRHRteKNgF37iN9q8xTLPYc34LA", + "/dns/boot.stake.plus/tcp/37334/wss/p2p/12D3KooWRgFfEtwPo3xorKGYALRHRteKNgF37iN9q8xTLPYc34LA", + "/dns/boot.metaspan.io/tcp/16072/p2p/12D3KooWJWTTu2t2yg5bFRH6tjEpfzKwZir5R9JRRjQpgFPXdDfp", + "/dns/boot.metaspan.io/tcp/16076/wss/p2p/12D3KooWJWTTu2t2yg5bFRH6tjEpfzKwZir5R9JRRjQpgFPXdDfp", + "/dns/collectives-polkadot-bootnode.turboflakes.io/tcp/30605/p2p/12D3KooWPyzM7eX64J4aG8uRfSARakDVtiEtthEM8FUjrLWAg2sC", + "/dns/collectives-polkadot-bootnode.turboflakes.io/tcp/30705/wss/p2p/12D3KooWPyzM7eX64J4aG8uRfSARakDVtiEtthEM8FUjrLWAg2sC" ], "telemetryEndpoints": null, "protocolId": null, @@ -85,4 +91,4 @@ "childrenDefault": {} } } -} \ No newline at end of file +} diff --git a/parachains/chain-specs/collectives-westend.json b/parachains/chain-specs/collectives-westend.json index 13ffef138e9..70a11e0a80e 100644 --- a/parachains/chain-specs/collectives-westend.json +++ b/parachains/chain-specs/collectives-westend.json @@ -18,7 +18,13 @@ "/dns/westend-collectives-collator-4.parity-testnet.parity.io/tcp/443/wss/p2p/12D3KooWCui467sJqUd7GzxB9HWpxrvXQfHWuYGN14KoSQwJQ9Sk", "/dns/westend-collectives-collator-5.parity-testnet.parity.io/tcp/443/wss/p2p/12D3KooWLGeRp67Y4LTpDYW15ophkcn8VAbNf4mhw9MXwPUamCss", "/dns/westend-collectives-collator-6.parity-testnet.parity.io/tcp/443/wss/p2p/12D3KooWDVdnw4fU8KsvVmXYwC7ifqsXssQgQ5rzPpBNEJPZewEB", - "/dns/westend-collectives-collator-7.parity-testnet.parity.io/tcp/443/wss/p2p/12D3KooWCYmG2HhYQTSs7PHcrBcsdfte7SJhctW6PeTYLLDyN4Yb" + "/dns/westend-collectives-collator-7.parity-testnet.parity.io/tcp/443/wss/p2p/12D3KooWCYmG2HhYQTSs7PHcrBcsdfte7SJhctW6PeTYLLDyN4Yb", + "/dns/boot.stake.plus/tcp/38333/p2p/12D3KooWQoVsFCfgu21iu6kdtQsU9T6dPn1wsyLn1U34yPerR6zQ", + "/dns/boot.stake.plus/tcp/38334/wss/p2p/12D3KooWQoVsFCfgu21iu6kdtQsU9T6dPn1wsyLn1U34yPerR6zQ", + "/dns/boot.metaspan.io/tcp/36072/p2p/12D3KooWEf2QXWq5pAbFJLfbnexA7KYtRRDSPkqTP64n1KtdsdV2", + "/dns/boot.metaspan.io/tcp/36076/wss/p2p/12D3KooWEf2QXWq5pAbFJLfbnexA7KYtRRDSPkqTP64n1KtdsdV2", + "/dns/collectives-westend-bootnode.turboflakes.io/tcp/30600/p2p/12D3KooWAe9CFXp6je3TAPQJE135KRemTLSqEqQBZMFwJontrThZ", + "/dns/collectives-westend-bootnode.turboflakes.io/tcp/30700/wss/p2p/12D3KooWAe9CFXp6je3TAPQJE135KRemTLSqEqQBZMFwJontrThZ" ], "telemetryEndpoints": null, "protocolId": null, @@ -101,4 +107,4 @@ "childrenDefault": {} } } -} \ No newline at end of file +} diff --git a/parachains/chain-specs/rockmine.json b/parachains/chain-specs/rockmine.json index a300adb9e54..d774da8744a 100644 --- a/parachains/chain-specs/rockmine.json +++ b/parachains/chain-specs/rockmine.json @@ -3,10 +3,10 @@ "id": "statemine-rococo", "chainType": "Live", "bootNodes": [ - "/dns/rococo-statemint-collator-0.parity-testnet.parity.io/tcp/30334/p2p/12D3KooWRrZMndHAopzao34uGsN7srjS3gh9nAjTGKLSyJeU31Lg", - "/dns/rococo-statemint-collator-1.parity-testnet.parity.io/tcp/30334/p2p/12D3KooWAewimoNJqMaiiV5pYiowA5hLuh5JS5QiRJCCyWVrrSTS", - "/dns/rococo-statemint-collator-2.parity-testnet.parity.io/tcp/30334/p2p/12D3KooWA3cVSDJFrN5HEYbt11cK2W7zJbiPHxR2joJXcgqzVt8K", - "/dns/rococo-statemint-collator-3.parity-testnet.parity.io/tcp/30334/p2p/12D3KooWPf3MtBZKJ3G6wYyvCTxFCi9vgzxDdHbjJJRCrFu3FgJb" + "/dns/rococo-rockmine-collator-node-0.parity-testnet.parity.io/tcp/30333/p2p/12D3KooWRrZMndHAopzao34uGsN7srjS3gh9nAjTGKLSyJeU31Lg", + "/dns/rococo-rockmine-collator-node-1.parity-testnet.parity.io/tcp/30333/p2p/12D3KooWAewimoNJqMaiiV5pYiowA5hLuh5JS5QiRJCCyWVrrSTS", + "/dns/rococo-rockmine-collator-node-2.parity-testnet.parity.io/tcp/30333/p2p/12D3KooWA3cVSDJFrN5HEYbt11cK2W7zJbiPHxR2joJXcgqzVt8K", + "/dns/rococo-rockmine-collator-node-3.parity-testnet.parity.io/tcp/30333/p2p/12D3KooWPf3MtBZKJ3G6wYyvCTxFCi9vgzxDdHbjJJRCrFu3FgJb" ], "telemetryEndpoints": null, "protocolId": null, diff --git a/parachains/chain-specs/statemine.json b/parachains/chain-specs/statemine.json index a74cedf71d7..400699ad347 100644 --- a/parachains/chain-specs/statemine.json +++ b/parachains/chain-specs/statemine.json @@ -12,7 +12,13 @@ "/dns/statemine-connect-ue4-0.parity-kusama-parachains.parity.io/tcp/30334/p2p/12D3KooWLm6iHcmA3YD4xn2zfbm4KLF5KSUqJJAnmt2UGr9o2PgB", "/dns/statemine-connect-ue4-0.parity-kusama-parachains.parity.io/tcp/443/wss/p2p/12D3KooWLm6iHcmA3YD4xn2zfbm4KLF5KSUqJJAnmt2UGr9o2PgB", "/dns/statemine-connect-ue4-1.parity-kusama-parachains.parity.io/tcp/30334/p2p/12D3KooWD8Bma5qPbq7N5qdED3Xy6GXHfvfk86TL8aVTQKxmWkHG", - "/dns/statemine-connect-ue4-1.parity-kusama-parachains.parity.io/tcp/443/wss/p2p/12D3KooWD8Bma5qPbq7N5qdED3Xy6GXHfvfk86TL8aVTQKxmWkHG" + "/dns/statemine-connect-ue4-1.parity-kusama-parachains.parity.io/tcp/443/wss/p2p/12D3KooWD8Bma5qPbq7N5qdED3Xy6GXHfvfk86TL8aVTQKxmWkHG", + "/dns/boot.stake.plus/tcp/34333/p2p/12D3KooWAzSSZ7jLqMw1WPomYEKCYANQaKemXQ8BKoFvNEvfmdqR", + "/dns/boot.stake.plus/tcp/34334/wss/p2p/12D3KooWAzSSZ7jLqMw1WPomYEKCYANQaKemXQ8BKoFvNEvfmdqR", + "/dns/boot.metaspan.io/tcp/26052/p2p/12D3KooW9z9hKqe3mqYAp5UJMhZiCqhkTHyiR43fegnGmTJ3JAba", + "/dns/boot.metaspan.io/tcp/26056/wss/p2p/12D3KooW9z9hKqe3mqYAp5UJMhZiCqhkTHyiR43fegnGmTJ3JAba", + "/dns/statemine-bootnode.turboflakes.io/tcp/30320/p2p/12D3KooWN2Qqvp5wWgjbBMpbqhKgvSibSHfomP5VWVD9VCn3VrV4", + "/dns/statemine-bootnode.turboflakes.io/tcp/30420/wss/p2p/12D3KooWN2Qqvp5wWgjbBMpbqhKgvSibSHfomP5VWVD9VCn3VrV4" ], "telemetryEndpoints": null, "protocolId": null, diff --git a/parachains/chain-specs/statemint.json b/parachains/chain-specs/statemint.json index c929ce61f0b..5e0f3c16692 100644 --- a/parachains/chain-specs/statemint.json +++ b/parachains/chain-specs/statemint.json @@ -12,7 +12,13 @@ "/dns/statemint-connect-uw1-0.parity-polkadot-parachains.parity.io/tcp/30334/p2p/12D3KooWApa2JW4rbLtgzuK7fjLMupLS9HZheX9cdkQKyu6AnGrP", "/dns/statemint-connect-uw1-0.parity-polkadot-parachains.parity.io/tcp/443/wss/p2p/12D3KooWApa2JW4rbLtgzuK7fjLMupLS9HZheX9cdkQKyu6AnGrP", "/dns/statemint-connect-uw1-1.parity-polkadot-parachains.parity.io/tcp/30334/p2p/12D3KooWRsVeHqRs2iKmjLiguxp8myL4G2mDAWhtX2jHwyWujseV", - "/dns/statemint-connect-uw1-1.parity-polkadot-parachains.parity.io/tcp/443/wss/p2p/12D3KooWRsVeHqRs2iKmjLiguxp8myL4G2mDAWhtX2jHwyWujseV" + "/dns/statemint-connect-uw1-1.parity-polkadot-parachains.parity.io/tcp/443/wss/p2p/12D3KooWRsVeHqRs2iKmjLiguxp8myL4G2mDAWhtX2jHwyWujseV", + "/dns/boot.stake.plus/tcp/35333/p2p/12D3KooWFrQjYaPZSSLLxEVmoaHFcrF6VoY4awG4KRSLaqy3JCdQ", + "/dns/boot.stake.plus/tcp/35334/wss/p2p/12D3KooWFrQjYaPZSSLLxEVmoaHFcrF6VoY4awG4KRSLaqy3JCdQ", + "/dns/boot.metaspan.io/tcp/16052/p2p/12D3KooWLwiJuvqQUB4kYaSjLenFKH9dWZhGZ4qi7pSb3sUYU651", + "/dns/boot.metaspan.io/tcp/16056/wss/p2p/12D3KooWLwiJuvqQUB4kYaSjLenFKH9dWZhGZ4qi7pSb3sUYU651", + "/dns/statemint-bootnode.turboflakes.io/tcp/30315/p2p/12D3KooWL8CyLww3m3pRySQGGYGNJhWDMqko3j5xi67ckP7hDUvo", + "/dns/statemint-bootnode.turboflakes.io/tcp/30415/wss/p2p/12D3KooWL8CyLww3m3pRySQGGYGNJhWDMqko3j5xi67ckP7hDUvo" ], "telemetryEndpoints": null, "protocolId": null, diff --git a/parachains/chain-specs/westmint.json b/parachains/chain-specs/westmint.json index 4e0af339388..be1053ebd1d 100644 --- a/parachains/chain-specs/westmint.json +++ b/parachains/chain-specs/westmint.json @@ -6,7 +6,13 @@ "/ip4/35.204.21.205/tcp/30334/p2p/12D3KooWLjaXWhNTSiRVFbTJCKLRWt9XXHLGVnAFtxvnExKkVPqn", "/ip4/34.141.171.170/tcp/30334/p2p/12D3KooWBNy2Jdrjv2P7sdfb1mzH1AGzwjip5rW4N2Ft1T3Hdq5c", "/ip4/34.141.221.252/tcp/30334/p2p/12D3KooWC9YYdjQLwxTNVda6t4nmjAZG37gaRZLNi4Zuhr9xUveW", - "/ip4/34.90.92.174/tcp/30334/p2p/12D3KooWQcXpUyVqwC2zJkwECCC7ttLCUCLTjnbGxTVfhSgmH2sD" + "/ip4/34.90.92.174/tcp/30334/p2p/12D3KooWQcXpUyVqwC2zJkwECCC7ttLCUCLTjnbGxTVfhSgmH2sD", + "/dns/boot.stake.plus/tcp/33333/p2p/12D3KooWNiB27rpXX7EYongoWWUeRKzLQxWGms6MQU2B9LX7Ztzo", + "/dns/boot.stake.plus/tcp/33334/wss/p2p/12D3KooWNiB27rpXX7EYongoWWUeRKzLQxWGms6MQU2B9LX7Ztzo", + "/dns/boot.metaspan.io/tcp/36052/p2p/12D3KooWBCqfNb6Y39DXTr4UBWXyjuS3hcZM1qTbHhDXxF6HkAJJ", + "/dns/boot.metaspan.io/tcp/36056/wss/p2p/12D3KooWBCqfNb6Y39DXTr4UBWXyjuS3hcZM1qTbHhDXxF6HkAJJ", + "/dns/westmint-bootnode.turboflakes.io/tcp/30325/p2p/12D3KooWHU4qqSyqKdbXdrCTMXUJxxueaZjqpqSaQqYiFPw6XqEx", + "/dns/westmint-bootnode.turboflakes.io/tcp/30425/wss/p2p/12D3KooWHU4qqSyqKdbXdrCTMXUJxxueaZjqpqSaQqYiFPw6XqEx" ], "telemetryEndpoints": null, "protocolId": null, diff --git a/parachains/runtimes/assets/statemine/src/weights/cumulus_pallet_xcmp_queue.rs b/parachains/runtimes/assets/statemine/src/weights/cumulus_pallet_xcmp_queue.rs index b35d91d349e..80173f5e887 100644 --- a/parachains/runtimes/assets/statemine/src/weights/cumulus_pallet_xcmp_queue.rs +++ b/parachains/runtimes/assets/statemine/src/weights/cumulus_pallet_xcmp_queue.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `cumulus_pallet_xcmp_queue` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -46,17 +47,27 @@ use sp_std::marker::PhantomData; /// Weight functions for `cumulus_pallet_xcmp_queue`. pub struct WeightInfo(PhantomData); impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_u32() -> Weight { - // Minimum execution time: 6_767 nanoseconds. - Weight::from_ref_time(7_044_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_956 nanoseconds. + Weight::from_ref_time(5_108_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_weight() -> Weight { - // Minimum execution time: 6_746 nanoseconds. - Weight::from_ref_time(7_070_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_945 nanoseconds. + Weight::from_ref_time(5_080_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/frame_system.rs b/parachains/runtimes/assets/statemine/src/weights/frame_system.rs index 246c1ec1ca5..d6ae8200fd6 100644 --- a/parachains/runtimes/assets/statemine/src/weights/frame_system.rs +++ b/parachains/runtimes/assets/statemine/src/weights/frame_system.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `frame_system` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -48,51 +49,81 @@ pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { /// The range of component `b` is `[0, 3932160]`. fn remark(b: u32, ) -> Weight { - // Minimum execution time: 3_628 nanoseconds. - Weight::from_ref_time(4_024_750) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_524 nanoseconds. + Weight::from_ref_time(1_612_000) + .saturating_add(Weight::from_proof_size(0)) // Standard Error: 0 - .saturating_add(Weight::from_ref_time(474).saturating_mul(b.into())) + .saturating_add(Weight::from_ref_time(413).saturating_mul(b.into())) } /// The range of component `b` is `[0, 3932160]`. fn remark_with_event(b: u32, ) -> Weight { - // Minimum execution time: 13_918 nanoseconds. - Weight::from_ref_time(152_866_312) - // Standard Error: 5 - .saturating_add(Weight::from_ref_time(1_926).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_865 nanoseconds. + Weight::from_ref_time(6_939_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 0 + .saturating_add(Weight::from_ref_time(1_762).saturating_mul(b.into())) } - // Storage: System Digest (r:1 w:1) - // Storage: unknown [0x3a686561707061676573] (r:0 w:1) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: unknown `0x3a686561707061676573` (r:0 w:1) + /// Proof Skipped: unknown `0x3a686561707061676573` (r:0 w:1) fn set_heap_pages() -> Weight { - // Minimum execution time: 8_571 nanoseconds. - Weight::from_ref_time(9_056_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `495` + // Minimum execution time: 3_490 nanoseconds. + Weight::from_ref_time(3_688_000) + .saturating_add(Weight::from_proof_size(495)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn set_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_762 nanoseconds. - Weight::from_ref_time(3_902_000) - // Standard Error: 2_353 - .saturating_add(Weight::from_ref_time(688_828).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_683 nanoseconds. + Weight::from_ref_time(1_726_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_736 + .saturating_add(Weight::from_ref_time(582_823).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn kill_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_812 nanoseconds. - Weight::from_ref_time(3_983_000) - // Standard Error: 1_028 - .saturating_add(Weight::from_ref_time(520_360).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_711 nanoseconds. + Weight::from_ref_time(1_787_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 779 + .saturating_add(Weight::from_ref_time(445_878).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `p` is `[0, 1000]`. fn kill_prefix(p: u32, ) -> Weight { - // Minimum execution time: 5_474 nanoseconds. - Weight::from_ref_time(5_708_000) - // Standard Error: 1_233 - .saturating_add(Weight::from_ref_time(1_157_262).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `81 + p * (69 ±0)` + // Estimated: `72 + p * (70 ±0)` + // Minimum execution time: 3_428 nanoseconds. + Weight::from_ref_time(3_492_000) + .saturating_add(Weight::from_proof_size(72)) + // Standard Error: 991 + .saturating_add(Weight::from_ref_time(953_258).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_proof_size(70).saturating_mul(p.into())) } } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_assets.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_assets.rs index 8977d60c50c..c266dacc2de 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_assets.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_assets.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -46,229 +47,389 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_assets`. pub struct WeightInfo(PhantomData); impl pallet_assets::WeightInfo for WeightInfo { - // Storage: Assets Asset (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn create() -> Weight { - // Minimum execution time: 28_325 nanoseconds. - Weight::from_ref_time(29_454_000) + // Proof Size summary in bytes: + // Measured: `141` + // Estimated: `5288` + // Minimum execution time: 21_487 nanoseconds. + Weight::from_ref_time(21_977_000) + .saturating_add(Weight::from_proof_size(5288)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn force_create() -> Weight { - // Minimum execution time: 17_511 nanoseconds. - Weight::from_ref_time(17_897_000) + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `2685` + // Minimum execution time: 10_630 nanoseconds. + Weight::from_ref_time(10_963_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn start_destroy() -> Weight { - // Minimum execution time: 19_093 nanoseconds. - Weight::from_ref_time(19_875_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 13_627 nanoseconds. + Weight::from_ref_time(13_906_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:0) - // Storage: System Account (r:20 w:20) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1001 w:1000) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1000 w:1000) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `c` is `[0, 1000]`. fn destroy_accounts(c: u32, ) -> Weight { - // Minimum execution time: 21_732 nanoseconds. - Weight::from_ref_time(21_953_000) - // Standard Error: 8_707 - .saturating_add(Weight::from_ref_time(14_707_934).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0 + c * (240 ±0)` + // Estimated: `5262 + c * (5180 ±0)` + // Minimum execution time: 15_861 nanoseconds. + Weight::from_ref_time(16_079_000) + .saturating_add(Weight::from_proof_size(5262)) + // Standard Error: 10_732 + .saturating_add(Weight::from_ref_time(14_192_928).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(5180).saturating_mul(c.into())) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1001 w:1000) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) /// The range of component `a` is `[0, 1000]`. fn destroy_approvals(a: u32, ) -> Weight { - // Minimum execution time: 22_383 nanoseconds. - Weight::from_ref_time(22_657_000) - // Standard Error: 5_721 - .saturating_add(Weight::from_ref_time(14_841_010).saturating_mul(a.into())) + // Proof Size summary in bytes: + // Measured: `446 + a * (86 ±0)` + // Estimated: `5308 + a * (2623 ±0)` + // Minimum execution time: 16_455 nanoseconds. + Weight::from_ref_time(16_720_000) + .saturating_add(Weight::from_proof_size(5308)) + // Standard Error: 7_111 + .saturating_add(Weight::from_ref_time(13_717_750).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into()))) + .saturating_add(Weight::from_proof_size(2623).saturating_mul(a.into())) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Metadata (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:0) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn finish_destroy() -> Weight { - // Minimum execution time: 19_205 nanoseconds. - Weight::from_ref_time(19_758_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 12_819 nanoseconds. + Weight::from_ref_time(13_111_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn mint() -> Weight { - // Minimum execution time: 31_975 nanoseconds. - Weight::from_ref_time(32_909_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5262` + // Minimum execution time: 22_897 nanoseconds. + Weight::from_ref_time(23_386_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn burn() -> Weight { - // Minimum execution time: 38_612 nanoseconds. - Weight::from_ref_time(39_693_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 28_432 nanoseconds. + Weight::from_ref_time(28_903_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 49_986 nanoseconds. - Weight::from_ref_time(51_660_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 39_823 nanoseconds. + Weight::from_ref_time(40_380_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 43_079 nanoseconds. - Weight::from_ref_time(44_369_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 34_924 nanoseconds. + Weight::from_ref_time(35_584_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 50_736 nanoseconds. - Weight::from_ref_time(51_851_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 39_647 nanoseconds. + Weight::from_ref_time(40_611_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn freeze() -> Weight { - // Minimum execution time: 22_127 nanoseconds. - Weight::from_ref_time(22_909_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 16_462 nanoseconds. + Weight::from_ref_time(16_821_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn thaw() -> Weight { - // Minimum execution time: 22_065 nanoseconds. - Weight::from_ref_time(22_719_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 16_416 nanoseconds. + Weight::from_ref_time(16_758_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn freeze_asset() -> Weight { - // Minimum execution time: 18_550 nanoseconds. - Weight::from_ref_time(18_966_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 12_853 nanoseconds. + Weight::from_ref_time(13_257_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn thaw_asset() -> Weight { - // Minimum execution time: 18_581 nanoseconds. - Weight::from_ref_time(19_387_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 12_422 nanoseconds. + Weight::from_ref_time(12_763_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Metadata (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:0) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn transfer_ownership() -> Weight { - // Minimum execution time: 19_749 nanoseconds. - Weight::from_ref_time(20_429_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 13_950 nanoseconds. + Weight::from_ref_time(14_242_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn set_team() -> Weight { - // Minimum execution time: 18_894 nanoseconds. - Weight::from_ref_time(19_387_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `2685` + // Minimum execution time: 12_726 nanoseconds. + Weight::from_ref_time(13_072_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. fn set_metadata(_n: u32, s: u32, ) -> Weight { - // Minimum execution time: 31_524 nanoseconds. - Weight::from_ref_time(33_046_758) - // Standard Error: 1_119 - .saturating_add(Weight::from_ref_time(294).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 22_772 nanoseconds. + Weight::from_ref_time(24_026_274) + .saturating_add(Weight::from_proof_size(5300)) + // Standard Error: 1_231 + .saturating_add(Weight::from_ref_time(203).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn clear_metadata() -> Weight { - // Minimum execution time: 33_196 nanoseconds. - Weight::from_ref_time(34_732_000) + // Proof Size summary in bytes: + // Measured: `471` + // Estimated: `5300` + // Minimum execution time: 23_310 nanoseconds. + Weight::from_ref_time(23_724_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn force_set_metadata(_n: u32, s: u32, ) -> Weight { - // Minimum execution time: 19_287 nanoseconds. - Weight::from_ref_time(20_205_504) - // Standard Error: 513 - .saturating_add(Weight::from_ref_time(1_006).saturating_mul(s.into())) + fn force_set_metadata(n: u32, s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `82` + // Estimated: `5300` + // Minimum execution time: 12_379 nanoseconds. + Weight::from_ref_time(12_903_065) + .saturating_add(Weight::from_proof_size(5300)) + // Standard Error: 330 + .saturating_add(Weight::from_ref_time(667).saturating_mul(n.into())) + // Standard Error: 330 + .saturating_add(Weight::from_ref_time(2_891).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn force_clear_metadata() -> Weight { - // Minimum execution time: 33_022 nanoseconds. - Weight::from_ref_time(34_035_000) + // Proof Size summary in bytes: + // Measured: `471` + // Estimated: `5300` + // Minimum execution time: 23_531 nanoseconds. + Weight::from_ref_time(23_845_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn force_asset_status() -> Weight { - // Minimum execution time: 18_229 nanoseconds. - Weight::from_ref_time(18_920_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `2685` + // Minimum execution time: 12_426 nanoseconds. + Weight::from_ref_time(12_888_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn approve_transfer() -> Weight { - // Minimum execution time: 34_912 nanoseconds. - Weight::from_ref_time(36_084_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `5308` + // Minimum execution time: 26_365 nanoseconds. + Weight::from_ref_time(26_700_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_approved() -> Weight { - // Minimum execution time: 65_747 nanoseconds. - Weight::from_ref_time(67_478_000) + // Proof Size summary in bytes: + // Measured: `553` + // Estimated: `13065` + // Minimum execution time: 53_167 nanoseconds. + Weight::from_ref_time(53_564_000) + .saturating_add(Weight::from_proof_size(13065)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn cancel_approval() -> Weight { - // Minimum execution time: 37_067 nanoseconds. - Weight::from_ref_time(38_033_000) + // Proof Size summary in bytes: + // Measured: `479` + // Estimated: `5308` + // Minimum execution time: 28_120 nanoseconds. + Weight::from_ref_time(28_540_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn force_cancel_approval() -> Weight { - // Minimum execution time: 37_959 nanoseconds. - Weight::from_ref_time(39_050_000) + // Proof Size summary in bytes: + // Measured: `479` + // Estimated: `5308` + // Minimum execution time: 28_503 nanoseconds. + Weight::from_ref_time(28_988_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_balances.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_balances.rs index 321eb0b59e9..3435e6ab127 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_balances.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_balances.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_balances` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -46,52 +47,87 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 45_473 nanoseconds. - Weight::from_ref_time(46_486_000) + // Proof Size summary in bytes: + // Measured: `1178` + // Estimated: `2603` + // Minimum execution time: 46_493 nanoseconds. + Weight::from_ref_time(47_804_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 33_620 nanoseconds. - Weight::from_ref_time(34_701_000) + // Proof Size summary in bytes: + // Measured: `1062` + // Estimated: `2603` + // Minimum execution time: 35_020 nanoseconds. + Weight::from_ref_time(35_462_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_creating() -> Weight { - // Minimum execution time: 23_449 nanoseconds. - Weight::from_ref_time(23_897_000) + // Proof Size summary in bytes: + // Measured: `1174` + // Estimated: `2603` + // Minimum execution time: 26_282 nanoseconds. + Weight::from_ref_time(26_915_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_killing() -> Weight { - // Minimum execution time: 26_876 nanoseconds. - Weight::from_ref_time(27_643_000) + // Proof Size summary in bytes: + // Measured: `1174` + // Estimated: `2603` + // Minimum execution time: 29_529 nanoseconds. + Weight::from_ref_time(30_135_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:2 w:2) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 45_427 nanoseconds. - Weight::from_ref_time(46_295_000) + // Proof Size summary in bytes: + // Measured: `1174` + // Estimated: `5206` + // Minimum execution time: 46_969 nanoseconds. + Weight::from_ref_time(47_657_000) + .saturating_add(Weight::from_proof_size(5206)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_all() -> Weight { - // Minimum execution time: 40_497 nanoseconds. - Weight::from_ref_time(41_586_000) + // Proof Size summary in bytes: + // Measured: `1062` + // Estimated: `2603` + // Minimum execution time: 41_398 nanoseconds. + Weight::from_ref_time(42_012_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_unreserve() -> Weight { - // Minimum execution time: 20_937 nanoseconds. - Weight::from_ref_time(21_473_000) + // Proof Size summary in bytes: + // Measured: `1058` + // Estimated: `2603` + // Minimum execution time: 22_969 nanoseconds. + Weight::from_ref_time(23_548_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_collator_selection.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_collator_selection.rs index 40af9e66b75..448f90806b4 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_collator_selection.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_collator_selection.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_collator_selection` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -46,79 +47,131 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_collator_selection`. pub struct WeightInfo(PhantomData); impl pallet_collator_selection::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Storage: Session NextKeys (r:100 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) /// The range of component `b` is `[1, 100]`. fn set_invulnerables(b: u32, ) -> Weight { - // Minimum execution time: 20_447 nanoseconds. - Weight::from_ref_time(20_134_986) - // Standard Error: 3_657 - .saturating_add(Weight::from_ref_time(2_779_838).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `178 + b * (78 ±0)` + // Estimated: `178 + b * (2554 ±0)` + // Minimum execution time: 14_234 nanoseconds. + Weight::from_ref_time(15_794_150) + .saturating_add(Weight::from_proof_size(178)) + // Standard Error: 4_000 + .saturating_add(Weight::from_ref_time(2_477_800).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(2554).saturating_mul(b.into())) } - // Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn set_desired_candidates() -> Weight { - // Minimum execution time: 13_773 nanoseconds. - Weight::from_ref_time(14_165_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_190 nanoseconds. + Weight::from_ref_time(7_441_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) fn set_candidacy_bond() -> Weight { - // Minimum execution time: 14_163 nanoseconds. - Weight::from_ref_time(14_564_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_495 nanoseconds. + Weight::from_ref_time(7_666_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection DesiredCandidates (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection CandidacyBond (r:1 w:0) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection DesiredCandidates (r:1 w:0) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Session NextKeys (r:1 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection CandidacyBond (r:1 w:0) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[1, 999]`. fn register_as_candidate(c: u32, ) -> Weight { - // Minimum execution time: 45_443 nanoseconds. - Weight::from_ref_time(54_415_025) - // Standard Error: 1_244 - .saturating_add(Weight::from_ref_time(122_147).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `1171 + c * (48 ±0)` + // Estimated: `56784 + c * (49 ±0)` + // Minimum execution time: 35_713 nanoseconds. + Weight::from_ref_time(27_978_009) + .saturating_add(Weight::from_proof_size(56784)) + // Standard Error: 1_293 + .saturating_add(Weight::from_ref_time(111_881).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_proof_size(49).saturating_mul(c.into())) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[6, 1000]`. fn leave_intent(c: u32, ) -> Weight { - // Minimum execution time: 35_344 nanoseconds. - Weight::from_ref_time(38_598_457) - // Standard Error: 1_253 - .saturating_add(Weight::from_ref_time(119_828).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `536 + c * (48 ±0)` + // Estimated: `48497` + // Minimum execution time: 27_164 nanoseconds. + Weight::from_ref_time(16_901_858) + .saturating_add(Weight::from_proof_size(48497)) + // Standard Error: 1_312 + .saturating_add(Weight::from_ref_time(108_799).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:2 w:2) - // Storage: System BlockWeight (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) fn note_author() -> Weight { - // Minimum execution time: 33_849 nanoseconds. - Weight::from_ref_time(34_979_000) + // Proof Size summary in bytes: + // Measured: `135` + // Estimated: `5749` + // Minimum execution time: 26_007 nanoseconds. + Weight::from_ref_time(26_416_000) + .saturating_add(Weight::from_proof_size(5749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:1000 w:1) - // Storage: System Account (r:1 w:1) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: System BlockWeight (r:1 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:0) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:999 w:0) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: System Account (r:995 w:995) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `r` is `[1, 1000]`. /// The range of component `c` is `[1, 1000]`. - fn new_session(_r: u32, c: u32, ) -> Weight { - // Minimum execution time: 19_054 nanoseconds. - Weight::from_ref_time(19_402_000) - // Standard Error: 797_313 - .saturating_add(Weight::from_ref_time(29_250_590).saturating_mul(c.into())) + fn new_session(r: u32, c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `22784 + r * (148 ±0) + c * (97 ±0)` + // Estimated: `52737 + c * (2519 ±0) + r * (2602 ±0)` + // Minimum execution time: 16_056 nanoseconds. + Weight::from_ref_time(16_335_000) + .saturating_add(Weight::from_proof_size(52737)) + // Standard Error: 806_799 + .saturating_add(Weight::from_ref_time(29_195_677).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(2519).saturating_mul(c.into())) + .saturating_add(Weight::from_proof_size(2602).saturating_mul(r.into())) } } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_multisig.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_multisig.rs index 2e8bbb80584..b4b4b6f007f 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_multisig.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_multisig.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_multisig` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -48,80 +49,113 @@ pub struct WeightInfo(PhantomData); impl pallet_multisig::WeightInfo for WeightInfo { /// The range of component `z` is `[0, 10000]`. fn as_multi_threshold_1(z: u32, ) -> Weight { - // Minimum execution time: 16_858 nanoseconds. - Weight::from_ref_time(17_912_260) - // Standard Error: 5 - .saturating_add(Weight::from_ref_time(621).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 12_185 nanoseconds. + Weight::from_ref_time(12_423_059) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1 + .saturating_add(Weight::from_ref_time(596).saturating_mul(z.into())) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_create(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 48_937 nanoseconds. - Weight::from_ref_time(36_289_463) - // Standard Error: 998 - .saturating_add(Weight::from_ref_time(152_100).saturating_mul(s.into())) - // Standard Error: 9 - .saturating_add(Weight::from_ref_time(1_853).saturating_mul(z.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `311 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 35_394 nanoseconds. + Weight::from_ref_time(28_339_222) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 525 + .saturating_add(Weight::from_ref_time(76_810).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_641).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[3, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_approve(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 37_303 nanoseconds. - Weight::from_ref_time(25_143_259) - // Standard Error: 708 - .saturating_add(Weight::from_ref_time(139_194).saturating_mul(s.into())) - // Standard Error: 6 - .saturating_add(Weight::from_ref_time(1_882).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 26_605 nanoseconds. + Weight::from_ref_time(19_882_694) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 486 + .saturating_add(Weight::from_ref_time(73_686).saturating_mul(s.into())) + // Standard Error: 4 + .saturating_add(Weight::from_ref_time(1_615).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_complete(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 54_037 nanoseconds. - Weight::from_ref_time(37_523_673) - // Standard Error: 1_013 - .saturating_add(Weight::from_ref_time(183_939).saturating_mul(s.into())) - // Standard Error: 9 - .saturating_add(Weight::from_ref_time(1_966).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `448 + s * (33 ±0)` + // Estimated: `8424` + // Minimum execution time: 40_558 nanoseconds. + Weight::from_ref_time(31_782_538) + .saturating_add(Weight::from_proof_size(8424)) + // Standard Error: 587 + .saturating_add(Weight::from_ref_time(94_913).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_647).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_create(s: u32, ) -> Weight { - // Minimum execution time: 32_565 nanoseconds. - Weight::from_ref_time(34_422_117) - // Standard Error: 1_088 - .saturating_add(Weight::from_ref_time(156_387).saturating_mul(s.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `318 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 24_889 nanoseconds. + Weight::from_ref_time(27_183_432) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 835 + .saturating_add(Weight::from_ref_time(79_518).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_approve(s: u32, ) -> Weight { - // Minimum execution time: 23_293 nanoseconds. - Weight::from_ref_time(23_992_176) - // Standard Error: 737 - .saturating_add(Weight::from_ref_time(132_988).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 17_143 nanoseconds. + Weight::from_ref_time(18_532_968) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 632 + .saturating_add(Weight::from_ref_time(75_565).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn cancel_as_multi(s: u32, ) -> Weight { - // Minimum execution time: 32_721 nanoseconds. - Weight::from_ref_time(34_905_586) - // Standard Error: 1_106 - .saturating_add(Weight::from_ref_time(145_235).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `517 + s * (1 ±0)` + // Estimated: `5821` + // Minimum execution time: 26_917 nanoseconds. + Weight::from_ref_time(28_425_612) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 685 + .saturating_add(Weight::from_ref_time(81_581).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_proxy.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_proxy.rs index e4c2bb770ce..8175cbfcd0c 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_proxy.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_proxy.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_proxy` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -46,121 +47,174 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_proxy`. pub struct WeightInfo(PhantomData); impl pallet_proxy::WeightInfo for WeightInfo { - // Storage: Proxy Proxies (r:1 w:0) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn proxy(p: u32, ) -> Weight { - // Minimum execution time: 21_059 nanoseconds. - Weight::from_ref_time(21_931_092) - // Standard Error: 2_138 - .saturating_add(Weight::from_ref_time(40_434).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 15_168 nanoseconds. + Weight::from_ref_time(15_986_761) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 2_885 + .saturating_add(Weight::from_ref_time(12_185).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Proxy Proxies (r:1 w:0) - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn proxy_announced(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 39_650 nanoseconds. - Weight::from_ref_time(40_171_062) - // Standard Error: 2_199 - .saturating_add(Weight::from_ref_time(135_970).saturating_mul(a.into())) - // Standard Error: 2_272 - .saturating_add(Weight::from_ref_time(50_259).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `550 + a * (68 ±0) + p * (37 ±0)` + // Estimated: `11027` + // Minimum execution time: 32_310 nanoseconds. + Weight::from_ref_time(32_466_194) + .saturating_add(Weight::from_proof_size(11027)) + // Standard Error: 1_813 + .saturating_add(Weight::from_ref_time(120_725).saturating_mul(a.into())) + // Standard Error: 1_873 + .saturating_add(Weight::from_ref_time(32_578).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn remove_announcement(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 27_501 nanoseconds. - Weight::from_ref_time(28_448_215) - // Standard Error: 1_558 - .saturating_add(Weight::from_ref_time(125_757).saturating_mul(a.into())) - // Standard Error: 1_610 - .saturating_add(Weight::from_ref_time(17_805).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `433 + a * (68 ±0)` + // Estimated: `7311` + // Minimum execution time: 20_363 nanoseconds. + Weight::from_ref_time(21_135_277) + .saturating_add(Weight::from_proof_size(7311)) + // Standard Error: 1_404 + .saturating_add(Weight::from_ref_time(120_045).saturating_mul(a.into())) + // Standard Error: 1_450 + .saturating_add(Weight::from_ref_time(8_992).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn reject_announcement(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 27_256 nanoseconds. - Weight::from_ref_time(28_577_364) - // Standard Error: 1_944 - .saturating_add(Weight::from_ref_time(122_622).saturating_mul(a.into())) - // Standard Error: 2_008 - .saturating_add(Weight::from_ref_time(20_612).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `433 + a * (68 ±0)` + // Estimated: `7311` + // Minimum execution time: 20_086 nanoseconds. + Weight::from_ref_time(21_145_287) + .saturating_add(Weight::from_proof_size(7311)) + // Standard Error: 1_612 + .saturating_add(Weight::from_ref_time(113_598).saturating_mul(a.into())) + // Standard Error: 1_666 + .saturating_add(Weight::from_ref_time(11_520).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Proxies (r:1 w:0) - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn announce(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 36_113 nanoseconds. - Weight::from_ref_time(37_763_681) - // Standard Error: 1_973 - .saturating_add(Weight::from_ref_time(122_500).saturating_mul(a.into())) - // Standard Error: 2_039 - .saturating_add(Weight::from_ref_time(43_746).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `482 + a * (68 ±0) + p * (37 ±0)` + // Estimated: `11027` + // Minimum execution time: 27_819 nanoseconds. + Weight::from_ref_time(28_662_588) + .saturating_add(Weight::from_proof_size(11027)) + // Standard Error: 2_297 + .saturating_add(Weight::from_ref_time(128_485).saturating_mul(a.into())) + // Standard Error: 2_373 + .saturating_add(Weight::from_ref_time(47_044).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn add_proxy(p: u32, ) -> Weight { - // Minimum execution time: 30_297 nanoseconds. - Weight::from_ref_time(31_680_794) - // Standard Error: 1_656 - .saturating_add(Weight::from_ref_time(61_720).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 21_187 nanoseconds. + Weight::from_ref_time(22_430_290) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 6_530 + .saturating_add(Weight::from_ref_time(43_133).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn remove_proxy(p: u32, ) -> Weight { - // Minimum execution time: 30_035 nanoseconds. - Weight::from_ref_time(32_202_618) - // Standard Error: 4_659 - .saturating_add(Weight::from_ref_time(49_172).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 20_985 nanoseconds. + Weight::from_ref_time(21_852_273) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_662 + .saturating_add(Weight::from_ref_time(66_644).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn remove_proxies(p: u32, ) -> Weight { - // Minimum execution time: 26_077 nanoseconds. - Weight::from_ref_time(27_110_936) - // Standard Error: 1_644 - .saturating_add(Weight::from_ref_time(33_454).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 16_958 nanoseconds. + Weight::from_ref_time(17_752_361) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_173 + .saturating_add(Weight::from_ref_time(25_691).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn create_pure(p: u32, ) -> Weight { - // Minimum execution time: 32_562 nanoseconds. - Weight::from_ref_time(33_911_825) - // Standard Error: 2_346 - .saturating_add(Weight::from_ref_time(21_096).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `139` + // Estimated: `3716` + // Minimum execution time: 23_055 nanoseconds. + Weight::from_ref_time(23_892_965) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_390 + .saturating_add(Weight::from_ref_time(16_195).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[0, 30]`. - fn kill_pure(p: u32, ) -> Weight { - // Minimum execution time: 26_754 nanoseconds. - Weight::from_ref_time(28_254_135) - // Standard Error: 1_950 - .saturating_add(Weight::from_ref_time(30_214).saturating_mul(p.into())) + fn kill_pure(_p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `196 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 18_344 nanoseconds. + Weight::from_ref_time(20_533_110) + .saturating_add(Weight::from_proof_size(3716)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_session.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_session.rs index c286907680d..9bc140dd31e 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_session.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_session.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_session` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -46,19 +47,31 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_session`. pub struct WeightInfo(PhantomData); impl pallet_session::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:1 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:1 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - // Minimum execution time: 22_429 nanoseconds. - Weight::from_ref_time(23_436_000) + // Proof Size summary in bytes: + // Measured: `270` + // Estimated: `5490` + // Minimum execution time: 15_187 nanoseconds. + Weight::from_ref_time(15_459_000) + .saturating_add(Weight::from_proof_size(5490)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:0 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:0 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn purge_keys() -> Weight { - // Minimum execution time: 18_892 nanoseconds. - Weight::from_ref_time(19_435_000) + // Proof Size summary in bytes: + // Measured: `242` + // Estimated: `2959` + // Minimum execution time: 11_795 nanoseconds. + Weight::from_ref_time(11_994_000) + .saturating_add(Weight::from_proof_size(2959)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_timestamp.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_timestamp.rs index ec7634919c9..08c45bc99fd 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_timestamp.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_timestamp.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_timestamp` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -46,16 +47,26 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { - // Storage: Timestamp Now (r:1 w:1) - // Storage: Aura CurrentSlot (r:1 w:0) + /// Storage: Timestamp Now (r:1 w:1) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + /// Storage: Aura CurrentSlot (r:1 w:0) + /// Proof: Aura CurrentSlot (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) fn set() -> Weight { - // Minimum execution time: 9_582 nanoseconds. - Weight::from_ref_time(9_906_000) + // Proof Size summary in bytes: + // Measured: `86` + // Estimated: `1006` + // Minimum execution time: 8_408 nanoseconds. + Weight::from_ref_time(8_706_000) + .saturating_add(Weight::from_proof_size(1006)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } fn on_finalize() -> Weight { - // Minimum execution time: 3_846 nanoseconds. - Weight::from_ref_time(4_011_000) + // Proof Size summary in bytes: + // Measured: `57` + // Estimated: `0` + // Minimum execution time: 3_185 nanoseconds. + Weight::from_ref_time(3_282_000) + .saturating_add(Weight::from_proof_size(0)) } } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_uniques.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_uniques.rs index 488bb44aee9..147438f2436 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_uniques.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_uniques.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_uniques` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -46,242 +47,413 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_uniques`. pub struct WeightInfo(PhantomData); impl pallet_uniques::WeightInfo for WeightInfo { - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn create() -> Weight { - // Minimum execution time: 30_259 nanoseconds. - Weight::from_ref_time(31_743_000) + // Proof Size summary in bytes: + // Measured: `177` + // Estimated: `2653` + // Minimum execution time: 24_517 nanoseconds. + Weight::from_ref_time(24_884_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn force_create() -> Weight { - // Minimum execution time: 20_260 nanoseconds. - Weight::from_ref_time(21_157_000) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `2653` + // Minimum execution time: 13_312 nanoseconds. + Weight::from_ref_time(13_652_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:1 w:0) - // Storage: Uniques ClassAccount (r:0 w:1) - // Storage: Uniques Attribute (r:0 w:1000) - // Storage: Uniques ClassMetadataOf (r:0 w:1) - // Storage: Uniques InstanceMetadataOf (r:0 w:1000) - // Storage: Uniques CollectionMaxSupply (r:0 w:1) - // Storage: Uniques Account (r:0 w:20) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1001 w:1000) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:0 w:1000) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:0 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:0 w:1000) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1000) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques CollectionMaxSupply (r:0 w:1) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) /// The range of component `n` is `[0, 1000]`. /// The range of component `m` is `[0, 1000]`. /// The range of component `a` is `[0, 1000]`. fn destroy(n: u32, m: u32, a: u32, ) -> Weight { - // Minimum execution time: 2_710_879 nanoseconds. - Weight::from_ref_time(2_731_827_000) - // Standard Error: 27_104 - .saturating_add(Weight::from_ref_time(8_984_420).saturating_mul(n.into())) - // Standard Error: 27_104 - .saturating_add(Weight::from_ref_time(248_626).saturating_mul(m.into())) - // Standard Error: 27_104 - .saturating_add(Weight::from_ref_time(360_642).saturating_mul(a.into())) + // Proof Size summary in bytes: + // Measured: `289 + n * (108 ±0) + m * (56 ±0) + a * (107 ±0)` + // Estimated: `5250 + n * (2597 ±0)` + // Minimum execution time: 2_287_290 nanoseconds. + Weight::from_ref_time(2_319_526_000) + .saturating_add(Weight::from_proof_size(5250)) + // Standard Error: 25_275 + .saturating_add(Weight::from_ref_time(8_587_226).saturating_mul(n.into())) + // Standard Error: 25_275 + .saturating_add(Weight::from_ref_time(193_381).saturating_mul(m.into())) + // Standard Error: 25_275 + .saturating_add(Weight::from_ref_time(296_151).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes(4)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into()))) + .saturating_add(Weight::from_proof_size(2597).saturating_mul(n.into())) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques CollectionMaxSupply (r:1 w:0) - // Storage: Uniques Account (r:0 w:1) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques CollectionMaxSupply (r:1 w:0) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) fn mint() -> Weight { - // Minimum execution time: 38_436 nanoseconds. - Weight::from_ref_time(39_687_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `7749` + // Minimum execution time: 29_225 nanoseconds. + Weight::from_ref_time(29_894_000) + .saturating_add(Weight::from_proof_size(7749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Account (r:0 w:1) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn burn() -> Weight { - // Minimum execution time: 40_106 nanoseconds. - Weight::from_ref_time(41_523_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 30_673 nanoseconds. + Weight::from_ref_time(31_553_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Account (r:0 w:2) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:2) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 30_526 nanoseconds. - Weight::from_ref_time(31_376_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 24_944 nanoseconds. + Weight::from_ref_time(25_233_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:102 w:102) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:5000 w:5000) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) /// The range of component `i` is `[0, 5000]`. fn redeposit(i: u32, ) -> Weight { - // Minimum execution time: 19_787 nanoseconds. - Weight::from_ref_time(19_962_000) - // Standard Error: 13_668 - .saturating_add(Weight::from_ref_time(12_727_636).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `770 + i * (108 ±0)` + // Estimated: `2653 + i * (2597 ±0)` + // Minimum execution time: 14_364 nanoseconds. + Weight::from_ref_time(14_520_000) + .saturating_add(Weight::from_proof_size(2653)) + // Standard Error: 12_908 + .saturating_add(Weight::from_ref_time(12_176_880).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(i.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) + .saturating_add(Weight::from_proof_size(2597).saturating_mul(i.into())) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn freeze() -> Weight { - // Minimum execution time: 23_627 nanoseconds. - Weight::from_ref_time(25_097_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 17_798 nanoseconds. + Weight::from_ref_time(18_009_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn thaw() -> Weight { - // Minimum execution time: 23_358 nanoseconds. - Weight::from_ref_time(23_923_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 17_924 nanoseconds. + Weight::from_ref_time(18_168_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn freeze_collection() -> Weight { - // Minimum execution time: 19_055 nanoseconds. - Weight::from_ref_time(19_574_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 13_425 nanoseconds. + Weight::from_ref_time(13_846_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn thaw_collection() -> Weight { - // Minimum execution time: 18_652 nanoseconds. - Weight::from_ref_time(19_533_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 13_484 nanoseconds. + Weight::from_ref_time(13_715_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques OwnershipAcceptance (r:1 w:1) - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:2) + /// Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Proof: Uniques OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:2) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn transfer_ownership() -> Weight { - // Minimum execution time: 26_346 nanoseconds. - Weight::from_ref_time(27_293_000) + // Proof Size summary in bytes: + // Measured: `388` + // Estimated: `5180` + // Minimum execution time: 21_132 nanoseconds. + Weight::from_ref_time(21_421_000) + .saturating_add(Weight::from_proof_size(5180)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn set_team() -> Weight { - // Minimum execution time: 19_311 nanoseconds. - Weight::from_ref_time(19_865_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 13_763 nanoseconds. + Weight::from_ref_time(14_136_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn force_item_status() -> Weight { - // Minimum execution time: 22_158 nanoseconds. - Weight::from_ref_time(22_893_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 16_125 nanoseconds. + Weight::from_ref_time(16_516_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:0) - // Storage: Uniques Attribute (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:0) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:1 w:1) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) fn set_attribute() -> Weight { - // Minimum execution time: 44_225 nanoseconds. - Weight::from_ref_time(45_696_000) + // Proof Size summary in bytes: + // Measured: `623` + // Estimated: `7962` + // Minimum execution time: 34_408 nanoseconds. + Weight::from_ref_time(34_820_000) + .saturating_add(Weight::from_proof_size(7962)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:0) - // Storage: Uniques Attribute (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:0) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:1 w:1) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) fn clear_attribute() -> Weight { - // Minimum execution time: 43_596 nanoseconds. - Weight::from_ref_time(44_608_000) + // Proof Size summary in bytes: + // Measured: `851` + // Estimated: `7962` + // Minimum execution time: 33_385 nanoseconds. + Weight::from_ref_time(34_088_000) + .saturating_add(Weight::from_proof_size(7962)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) fn set_metadata() -> Weight { - // Minimum execution time: 34_973 nanoseconds. - Weight::from_ref_time(35_790_000) + // Proof Size summary in bytes: + // Measured: `380` + // Estimated: `5315` + // Minimum execution time: 27_303 nanoseconds. + Weight::from_ref_time(27_692_000) + .saturating_add(Weight::from_proof_size(5315)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) fn clear_metadata() -> Weight { - // Minimum execution time: 36_917 nanoseconds. - Weight::from_ref_time(37_549_000) + // Proof Size summary in bytes: + // Measured: `623` + // Estimated: `5315` + // Minimum execution time: 27_530 nanoseconds. + Weight::from_ref_time(28_122_000) + .saturating_add(Weight::from_proof_size(5315)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) fn set_collection_metadata() -> Weight { - // Minimum execution time: 34_637 nanoseconds. - Weight::from_ref_time(35_729_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `5295` + // Minimum execution time: 26_384 nanoseconds. + Weight::from_ref_time(27_285_000) + .saturating_add(Weight::from_proof_size(5295)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) fn clear_collection_metadata() -> Weight { - // Minimum execution time: 33_988 nanoseconds. - Weight::from_ref_time(35_000_000) + // Proof Size summary in bytes: + // Measured: `537` + // Estimated: `5295` + // Minimum execution time: 24_599 nanoseconds. + Weight::from_ref_time(24_992_000) + .saturating_add(Weight::from_proof_size(5295)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) fn approve_transfer() -> Weight { - // Minimum execution time: 24_613 nanoseconds. - Weight::from_ref_time(25_605_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 19_754 nanoseconds. + Weight::from_ref_time(20_071_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) fn cancel_approval() -> Weight { - // Minimum execution time: 24_241 nanoseconds. - Weight::from_ref_time(25_211_000) + // Proof Size summary in bytes: + // Measured: `525` + // Estimated: `5250` + // Minimum execution time: 19_376 nanoseconds. + Weight::from_ref_time(19_716_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Proof: Uniques OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) fn set_accept_ownership() -> Weight { - // Minimum execution time: 22_586 nanoseconds. - Weight::from_ref_time(23_285_000) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `2527` + // Minimum execution time: 15_069 nanoseconds. + Weight::from_ref_time(15_273_000) + .saturating_add(Weight::from_proof_size(2527)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques CollectionMaxSupply (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques CollectionMaxSupply (r:1 w:1) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn set_collection_max_supply() -> Weight { - // Minimum execution time: 21_770 nanoseconds. - Weight::from_ref_time(22_281_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `5152` + // Minimum execution time: 15_900 nanoseconds. + Weight::from_ref_time(16_182_000) + .saturating_add(Weight::from_proof_size(5152)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:0) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Asset (r:1 w:0) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn set_price() -> Weight { - // Minimum execution time: 21_347 nanoseconds. - Weight::from_ref_time(21_973_000) + // Proof Size summary in bytes: + // Measured: `291` + // Estimated: `2597` + // Minimum execution time: 15_789 nanoseconds. + Weight::from_ref_time(16_115_000) + .saturating_add(Weight::from_proof_size(2597)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques ItemPriceOf (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Account (r:0 w:2) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:1 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:2) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) fn buy_item() -> Weight { - // Minimum execution time: 40_614 nanoseconds. - Weight::from_ref_time(41_709_000) + // Proof Size summary in bytes: + // Measured: `636` + // Estimated: `7814` + // Minimum execution time: 34_557 nanoseconds. + Weight::from_ref_time(34_927_000) + .saturating_add(Weight::from_proof_size(7814)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_utility.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_utility.rs index 9f7df3a0966..32882466136 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_utility.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_utility.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_utility` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -48,31 +49,51 @@ pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { /// The range of component `c` is `[0, 1000]`. fn batch(c: u32, ) -> Weight { - // Minimum execution time: 13_109 nanoseconds. - Weight::from_ref_time(23_963_302) - // Standard Error: 1_571 - .saturating_add(Weight::from_ref_time(4_637_532).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_416 nanoseconds. + Weight::from_ref_time(18_983_305) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_082 + .saturating_add(Weight::from_ref_time(4_175_368).saturating_mul(c.into())) } fn as_derivative() -> Weight { - // Minimum execution time: 6_614 nanoseconds. - Weight::from_ref_time(6_803_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_581 nanoseconds. + Weight::from_ref_time(4_767_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn batch_all(c: u32, ) -> Weight { - // Minimum execution time: 13_221 nanoseconds. - Weight::from_ref_time(24_784_806) - // Standard Error: 1_596 - .saturating_add(Weight::from_ref_time(4_866_077).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_279 nanoseconds. + Weight::from_ref_time(21_320_216) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_995 + .saturating_add(Weight::from_ref_time(4_376_040).saturating_mul(c.into())) } fn dispatch_as() -> Weight { - // Minimum execution time: 15_207 nanoseconds. - Weight::from_ref_time(15_581_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_298 nanoseconds. + Weight::from_ref_time(8_522_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn force_batch(c: u32, ) -> Weight { - // Minimum execution time: 13_561 nanoseconds. - Weight::from_ref_time(23_235_284) - // Standard Error: 1_417 - .saturating_add(Weight::from_ref_time(4_647_468).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_311 nanoseconds. + Weight::from_ref_time(16_307_926) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_381 + .saturating_add(Weight::from_ref_time(4_172_851).saturating_mul(c.into())) } } diff --git a/parachains/runtimes/assets/statemine/src/weights/pallet_xcm.rs b/parachains/runtimes/assets/statemine/src/weights/pallet_xcm.rs index 1b862af5342..e089359e15d 100644 --- a/parachains/runtimes/assets/statemine/src/weights/pallet_xcm.rs +++ b/parachains/runtimes/assets/statemine/src/weights/pallet_xcm.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_xcm` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-12-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `bm3`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: -// /home/benchbot/cargo_target_dir/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=statemine-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/var/lib/gitlab-runner/builds/zyw4fam_/0/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm -// --chain=statemine-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/assets/statemine/src/weights/ +// --output=./parachains/runtimes/assets/statemine/src/weights/pallet_xcm.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,127 +47,229 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_xcm`. pub struct WeightInfo(PhantomData); impl pallet_xcm::WeightInfo for WeightInfo { - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn send() -> Weight { - // Minimum execution time: 26_577 nanoseconds. - Weight::from_ref_time(27_239_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `4645` + // Minimum execution time: 25_244 nanoseconds. + Weight::from_ref_time(25_671_000) + .saturating_add(Weight::from_proof_size(4645)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn teleport_assets() -> Weight { - // Minimum execution time: 32_703 nanoseconds. - Weight::from_ref_time(33_200_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `499` + // Minimum execution time: 25_183 nanoseconds. + Weight::from_ref_time(25_684_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn reserve_transfer_assets() -> Weight { - // Minimum execution time: 25_142 nanoseconds. - Weight::from_ref_time(25_808_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `499` + // Minimum execution time: 18_819 nanoseconds. + Weight::from_ref_time(19_048_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn execute() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn force_xcm_version() -> Weight { - // Minimum execution time: 15_036 nanoseconds. - Weight::from_ref_time(15_456_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_636 nanoseconds. + Weight::from_ref_time(8_906_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) fn force_default_xcm_version() -> Weight { - // Minimum execution time: 4_404 nanoseconds. - Weight::from_ref_time(4_598_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_486 nanoseconds. + Weight::from_ref_time(2_652_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm QueryCounter (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm QueryCounter (r:1 w:1) + /// Proof Skipped: PolkadotXcm QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_subscribe_version_notify() -> Weight { - // Minimum execution time: 30_942 nanoseconds. - Weight::from_ref_time(31_608_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `7729` + // Minimum execution time: 29_811 nanoseconds. + Weight::from_ref_time(30_291_000) + .saturating_add(Weight::from_proof_size(7729)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_unsubscribe_version_notify() -> Weight { - // Minimum execution time: 32_327 nanoseconds. - Weight::from_ref_time(32_698_000) + // Proof Size summary in bytes: + // Measured: `220` + // Estimated: `8470` + // Minimum execution time: 31_884 nanoseconds. + Weight::from_ref_time(32_567_000) + .saturating_add(Weight::from_proof_size(8470)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn migrate_supported_version() -> Weight { - // Minimum execution time: 13_522 nanoseconds. - Weight::from_ref_time(13_862_000) + // Proof Size summary in bytes: + // Measured: `95` + // Estimated: `9995` + // Minimum execution time: 14_098 nanoseconds. + Weight::from_ref_time(14_349_000) + .saturating_add(Weight::from_proof_size(9995)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) fn migrate_version_notifiers() -> Weight { - // Minimum execution time: 13_621 nanoseconds. - Weight::from_ref_time(14_028_000) + // Proof Size summary in bytes: + // Measured: `99` + // Estimated: `9999` + // Minimum execution time: 14_117 nanoseconds. + Weight::from_ref_time(14_383_000) + .saturating_add(Weight::from_proof_size(9999)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn already_notified_target() -> Weight { - // Minimum execution time: 15_511 nanoseconds. - Weight::from_ref_time(15_825_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `12481` + // Minimum execution time: 15_353 nanoseconds. + Weight::from_ref_time(15_558_000) + .saturating_add(Weight::from_proof_size(12481)) .saturating_add(T::DbWeight::get().reads(5)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn notify_current_targets() -> Weight { - // Minimum execution time: 27_062 nanoseconds. - Weight::from_ref_time(27_514_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10041` + // Minimum execution time: 28_752 nanoseconds. + Weight::from_ref_time(29_435_000) + .saturating_add(Weight::from_proof_size(10041)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn notify_target_migration_fail() -> Weight { - // Minimum execution time: 7_062 nanoseconds. - Weight::from_ref_time(7_325_000) + // Proof Size summary in bytes: + // Measured: `136` + // Estimated: `7561` + // Minimum execution time: 7_143 nanoseconds. + Weight::from_ref_time(7_368_000) + .saturating_add(Weight::from_proof_size(7561)) .saturating_add(T::DbWeight::get().reads(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn migrate_version_notify_targets() -> Weight { - // Minimum execution time: 14_362 nanoseconds. - Weight::from_ref_time(14_724_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10006` + // Minimum execution time: 14_381 nanoseconds. + Weight::from_ref_time(14_582_000) + .saturating_add(Weight::from_proof_size(10006)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn migrate_and_notify_old_targets() -> Weight { - // Minimum execution time: 32_435 nanoseconds. - Weight::from_ref_time(33_042_000) + // Proof Size summary in bytes: + // Measured: `112` + // Estimated: `15027` + // Minimum execution time: 34_190 nanoseconds. + Weight::from_ref_time(34_889_000) + .saturating_add(Weight::from_proof_size(15027)) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/xcm/mod.rs b/parachains/runtimes/assets/statemine/src/weights/xcm/mod.rs index c5ac9b80a94..ba2370bf055 100644 --- a/parachains/runtimes/assets/statemine/src/weights/xcm/mod.rs +++ b/parachains/runtimes/assets/statemine/src/weights/xcm/mod.rs @@ -17,7 +17,7 @@ mod pallet_xcm_benchmarks_fungible; mod pallet_xcm_benchmarks_generic; -use crate::Runtime; +use crate::{xcm_config::MaxAssetsIntoHolding, Runtime}; use frame_support::weights::Weight; use pallet_xcm_benchmarks_fungible::WeightInfo as XcmFungibleWeight; use pallet_xcm_benchmarks_generic::WeightInfo as XcmGeneric; @@ -35,7 +35,18 @@ impl WeighMultiAssets for MultiAssetFilter { match self { Self::Definite(assets) => weight.saturating_mul(assets.inner().into_iter().count() as u64), - Self::Wild(_) => weight.saturating_mul(MAX_ASSETS as u64), + Self::Wild(asset) => match asset { + All => weight.saturating_mul(MAX_ASSETS as u64), + AllOf { fun, .. } => match fun { + WildFungibility::Fungible => weight, + // Magic number 2 has to do with the fact that we could have up to 2 times + // MaxAssetsIntoHolding in the worst-case scenario. + WildFungibility::NonFungible => + weight.saturating_mul((MaxAssetsIntoHolding::get() * 2) as u64), + }, + AllCounted(count) => weight.saturating_mul(*count as u64), + AllOfCounted { count, .. } => weight.saturating_mul(*count as u64), + }, } } } @@ -138,10 +149,7 @@ impl XcmWeightInfo for StatemineXcmWeight { _dest: &MultiLocation, _xcm: &Xcm<()>, ) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_ref_time(200_000_000 as u64); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()) } fn report_holding(_response_info: &QueryResponseInfo, _assets: &MultiAssetFilter) -> Weight { XcmGeneric::::report_holding() diff --git a/parachains/runtimes/assets/statemine/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs b/parachains/runtimes/assets/statemine/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs index 9eddcfc484f..12da500d838 100644 --- a/parachains/runtimes/assets/statemine/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs +++ b/parachains/runtimes/assets/statemine/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::fungible` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -49,58 +49,81 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn withdraw_asset() -> Weight { - Weight::from_ref_time(31_247_000 as u64) + Weight::from_ref_time(22_035_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn transfer_asset() -> Weight { - Weight::from_ref_time(41_980_000 as u64) + Weight::from_ref_time(54_300_000 as u64) .saturating_add(T::DbWeight::get().reads(2 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn transfer_reserve_asset() -> Weight { - Weight::from_ref_time(61_540_000 as u64) + Weight::from_ref_time(78_569_000 as u64) .saturating_add(T::DbWeight::get().reads(8 as u64)) .saturating_add(T::DbWeight::get().writes(4 as u64)) } pub(crate) fn receive_teleported_asset() -> Weight { - Weight::from_ref_time(7_562_000 as u64) + Weight::from_ref_time(4_652_000 as u64) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn deposit_asset() -> Weight { - Weight::from_ref_time(33_533_000 as u64) + Weight::from_ref_time(23_684_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn deposit_reserve_asset() -> Weight { - Weight::from_ref_time(56_084_000 as u64) + Weight::from_ref_time(45_884_000 as u64) .saturating_add(T::DbWeight::get().reads(7 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_teleport() -> Weight { - Weight::from_ref_time(38_259_000 as u64) + Weight::from_ref_time(30_239_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } diff --git a/parachains/runtimes/assets/statemine/src/weights/xcm/pallet_xcm_benchmarks_generic.rs b/parachains/runtimes/assets/statemine/src/weights/xcm/pallet_xcm_benchmarks_generic.rs index 09f967bf2de..a0638f79ea5 100644 --- a/parachains/runtimes/assets/statemine/src/weights/xcm/pallet_xcm_benchmarks_generic.rs +++ b/parachains/runtimes/assets/statemine/src/weights/xcm/pallet_xcm_benchmarks_generic.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::generic` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemine-dev"), DB CACHE: 1024 // Executed Command: @@ -49,145 +49,184 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_holding() -> Weight { - Weight::from_ref_time(427_745_000 as u64) + Weight::from_ref_time(450_021_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn buy_execution() -> Weight { - Weight::from_ref_time(7_101_000 as u64) + Weight::from_ref_time(4_086_000 as u64) } // Storage: PolkadotXcm Queries (r:1 w:0) + // Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) pub(crate) fn query_response() -> Weight { - Weight::from_ref_time(19_461_000 as u64) + Weight::from_ref_time(11_290_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) } pub(crate) fn transact() -> Weight { - Weight::from_ref_time(22_208_000 as u64) + Weight::from_ref_time(13_288_000 as u64) } pub(crate) fn refund_surplus() -> Weight { - Weight::from_ref_time(7_223_000 as u64) + Weight::from_ref_time(4_270_000 as u64) } pub(crate) fn set_error_handler() -> Weight { - Weight::from_ref_time(6_187_000 as u64) + Weight::from_ref_time(3_205_000 as u64) } pub(crate) fn set_appendix() -> Weight { - Weight::from_ref_time(6_148_000 as u64) + Weight::from_ref_time(3_246_000 as u64) } pub(crate) fn clear_error() -> Weight { - Weight::from_ref_time(6_165_000 as u64) + Weight::from_ref_time(3_189_000 as u64) } pub(crate) fn descend_origin() -> Weight { - Weight::from_ref_time(7_071_000 as u64) + Weight::from_ref_time(4_222_000 as u64) } pub(crate) fn clear_origin() -> Weight { - Weight::from_ref_time(6_135_000 as u64) + Weight::from_ref_time(3_178_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_error() -> Weight { - Weight::from_ref_time(33_734_000 as u64) + Weight::from_ref_time(24_770_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: PolkadotXcm AssetTraps (r:1 w:1) + // Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) pub(crate) fn claim_asset() -> Weight { - Weight::from_ref_time(22_554_000 as u64) + Weight::from_ref_time(14_967_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } pub(crate) fn trap() -> Weight { - Weight::from_ref_time(6_170_000 as u64) + Weight::from_ref_time(3_186_000 as u64) } // Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn subscribe_version() -> Weight { - Weight::from_ref_time(34_105_000 as u64) + Weight::from_ref_time(25_797_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) pub(crate) fn unsubscribe_version() -> Weight { - Weight::from_ref_time(8_037_000 as u64) + Weight::from_ref_time(5_170_000 as u64) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_reserve_withdraw() -> Weight { - Weight::from_ref_time(480_319_000 as u64) + Weight::from_ref_time(508_189_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn burn_asset() -> Weight { - Weight::from_ref_time(151_701_000 as u64) + Weight::from_ref_time(156_147_000 as u64) } pub(crate) fn expect_asset() -> Weight { - Weight::from_ref_time(15_792_000 as u64) + Weight::from_ref_time(14_507_000 as u64) } pub(crate) fn expect_origin() -> Weight { - Weight::from_ref_time(6_146_000 as u64) + Weight::from_ref_time(3_329_000 as u64) } pub(crate) fn expect_error() -> Weight { - Weight::from_ref_time(6_132_000 as u64) + Weight::from_ref_time(3_164_000 as u64) } pub(crate) fn expect_transact_status() -> Weight { - Weight::from_ref_time(6_906_000 as u64) + Weight::from_ref_time(3_415_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn query_pallet() -> Weight { - Weight::from_ref_time(36_632_000 as u64) + Weight::from_ref_time(27_966_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn expect_pallet() -> Weight { - Weight::from_ref_time(8_081_000 as u64) + Weight::from_ref_time(5_019_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_transact_status() -> Weight { - Weight::from_ref_time(33_493_000 as u64) + Weight::from_ref_time(25_097_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn clear_transact_status() -> Weight { - Weight::from_ref_time(6_163_000 as u64) + Weight::from_ref_time(3_193_000 as u64) } pub(crate) fn set_topic() -> Weight { - Weight::from_ref_time(6_237_000 as u64) + Weight::from_ref_time(3_146_000 as u64) } pub(crate) fn clear_topic() -> Weight { - Weight::from_ref_time(6_206_000 as u64) + Weight::from_ref_time(3_178_000 as u64) } pub(crate) fn set_fees_mode() -> Weight { - Weight::from_ref_time(6_100_000 as u64) + Weight::from_ref_time(3_134_000 as u64) } pub(crate) fn unpaid_execution() -> Weight { - Weight::from_ref_time(6_383_000 as u64) + Weight::from_ref_time(3_282_000 as u64) } } diff --git a/parachains/runtimes/assets/statemint/src/weights/cumulus_pallet_xcmp_queue.rs b/parachains/runtimes/assets/statemint/src/weights/cumulus_pallet_xcmp_queue.rs index 35cd7ca3648..c281e25e23a 100644 --- a/parachains/runtimes/assets/statemint/src/weights/cumulus_pallet_xcmp_queue.rs +++ b/parachains/runtimes/assets/statemint/src/weights/cumulus_pallet_xcmp_queue.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `cumulus_pallet_xcmp_queue` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,17 +47,27 @@ use sp_std::marker::PhantomData; /// Weight functions for `cumulus_pallet_xcmp_queue`. pub struct WeightInfo(PhantomData); impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_u32() -> Weight { - // Minimum execution time: 6_782 nanoseconds. - Weight::from_ref_time(7_208_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_717 nanoseconds. + Weight::from_ref_time(4_964_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_weight() -> Weight { - // Minimum execution time: 6_770 nanoseconds. - Weight::from_ref_time(7_165_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_840 nanoseconds. + Weight::from_ref_time(5_074_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/frame_system.rs b/parachains/runtimes/assets/statemint/src/weights/frame_system.rs index be20f2c4370..c490a0fadd4 100644 --- a/parachains/runtimes/assets/statemint/src/weights/frame_system.rs +++ b/parachains/runtimes/assets/statemint/src/weights/frame_system.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `frame_system` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -48,51 +49,81 @@ pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { /// The range of component `b` is `[0, 3932160]`. fn remark(b: u32, ) -> Weight { - // Minimum execution time: 3_657 nanoseconds. - Weight::from_ref_time(3_832_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_455 nanoseconds. + Weight::from_ref_time(1_553_000) + .saturating_add(Weight::from_proof_size(0)) // Standard Error: 0 - .saturating_add(Weight::from_ref_time(478).saturating_mul(b.into())) + .saturating_add(Weight::from_ref_time(368).saturating_mul(b.into())) } /// The range of component `b` is `[0, 3932160]`. fn remark_with_event(b: u32, ) -> Weight { - // Minimum execution time: 13_437 nanoseconds. - Weight::from_ref_time(99_167_673) - // Standard Error: 4 - .saturating_add(Weight::from_ref_time(1_976).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_602 nanoseconds. + Weight::from_ref_time(6_725_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 0 + .saturating_add(Weight::from_ref_time(1_715).saturating_mul(b.into())) } - // Storage: System Digest (r:1 w:1) - // Storage: unknown [0x3a686561707061676573] (r:0 w:1) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: unknown `0x3a686561707061676573` (r:0 w:1) + /// Proof Skipped: unknown `0x3a686561707061676573` (r:0 w:1) fn set_heap_pages() -> Weight { - // Minimum execution time: 8_737 nanoseconds. - Weight::from_ref_time(9_003_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `495` + // Minimum execution time: 3_555 nanoseconds. + Weight::from_ref_time(3_745_000) + .saturating_add(Weight::from_proof_size(495)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn set_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_761 nanoseconds. - Weight::from_ref_time(3_931_000) - // Standard Error: 2_367 - .saturating_add(Weight::from_ref_time(686_029).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_690 nanoseconds. + Weight::from_ref_time(1_735_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_138 + .saturating_add(Weight::from_ref_time(588_449).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn kill_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_840 nanoseconds. - Weight::from_ref_time(3_898_000) - // Standard Error: 1_014 - .saturating_add(Weight::from_ref_time(520_323).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_695 nanoseconds. + Weight::from_ref_time(1_771_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 816 + .saturating_add(Weight::from_ref_time(449_345).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `p` is `[0, 1000]`. fn kill_prefix(p: u32, ) -> Weight { - // Minimum execution time: 5_400 nanoseconds. - Weight::from_ref_time(5_547_000) - // Standard Error: 1_501 - .saturating_add(Weight::from_ref_time(1_173_489).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `81 + p * (69 ±0)` + // Estimated: `72 + p * (70 ±0)` + // Minimum execution time: 3_289 nanoseconds. + Weight::from_ref_time(3_377_000) + .saturating_add(Weight::from_proof_size(72)) + // Standard Error: 922 + .saturating_add(Weight::from_ref_time(969_103).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_proof_size(70).saturating_mul(p.into())) } } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_assets.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_assets.rs index 8f43cf1556d..d1715011a63 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_assets.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_assets.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,231 +47,387 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_assets`. pub struct WeightInfo(PhantomData); impl pallet_assets::WeightInfo for WeightInfo { - // Storage: Assets Asset (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn create() -> Weight { - // Minimum execution time: 28_455 nanoseconds. - Weight::from_ref_time(28_985_000) + // Proof Size summary in bytes: + // Measured: `141` + // Estimated: `5288` + // Minimum execution time: 21_786 nanoseconds. + Weight::from_ref_time(22_084_000) + .saturating_add(Weight::from_proof_size(5288)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn force_create() -> Weight { - // Minimum execution time: 17_065 nanoseconds. - Weight::from_ref_time(18_069_000) + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `2685` + // Minimum execution time: 10_638 nanoseconds. + Weight::from_ref_time(10_889_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn start_destroy() -> Weight { - // Minimum execution time: 19_008 nanoseconds. - Weight::from_ref_time(19_697_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 13_146 nanoseconds. + Weight::from_ref_time(13_421_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:0) - // Storage: System Account (r:20 w:20) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1001 w:1000) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1000 w:1000) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `c` is `[0, 1000]`. fn destroy_accounts(c: u32, ) -> Weight { - // Minimum execution time: 21_673 nanoseconds. - Weight::from_ref_time(22_115_000) - // Standard Error: 19_356 - .saturating_add(Weight::from_ref_time(15_391_476).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0 + c * (240 ±0)` + // Estimated: `5262 + c * (5180 ±0)` + // Minimum execution time: 15_962 nanoseconds. + Weight::from_ref_time(16_041_000) + .saturating_add(Weight::from_proof_size(5262)) + // Standard Error: 9_326 + .saturating_add(Weight::from_ref_time(13_983_529).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(5180).saturating_mul(c.into())) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1001 w:1000) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) /// The range of component `a` is `[0, 1000]`. fn destroy_approvals(a: u32, ) -> Weight { - // Minimum execution time: 22_211 nanoseconds. - Weight::from_ref_time(22_919_000) - // Standard Error: 10_712 - .saturating_add(Weight::from_ref_time(14_873_452).saturating_mul(a.into())) + // Proof Size summary in bytes: + // Measured: `446 + a * (86 ±0)` + // Estimated: `5308 + a * (2623 ±0)` + // Minimum execution time: 16_343 nanoseconds. + Weight::from_ref_time(16_490_000) + .saturating_add(Weight::from_proof_size(5308)) + // Standard Error: 7_664 + .saturating_add(Weight::from_ref_time(13_585_881).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into()))) + .saturating_add(Weight::from_proof_size(2623).saturating_mul(a.into())) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Metadata (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:0) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn finish_destroy() -> Weight { - // Minimum execution time: 18_860 nanoseconds. - Weight::from_ref_time(20_054_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 12_531 nanoseconds. + Weight::from_ref_time(13_108_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn mint() -> Weight { - // Minimum execution time: 31_567 nanoseconds. - Weight::from_ref_time(32_250_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5262` + // Minimum execution time: 22_604 nanoseconds. + Weight::from_ref_time(22_970_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn burn() -> Weight { - // Minimum execution time: 38_050 nanoseconds. - Weight::from_ref_time(39_694_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 28_407 nanoseconds. + Weight::from_ref_time(29_012_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 50_128 nanoseconds. - Weight::from_ref_time(51_113_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 38_044 nanoseconds. + Weight::from_ref_time(38_562_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 64_097 nanoseconds. - Weight::from_ref_time(72_646_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 33_946 nanoseconds. + Weight::from_ref_time(34_532_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 49_536 nanoseconds. - Weight::from_ref_time(50_942_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 38_013 nanoseconds. + Weight::from_ref_time(38_818_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn freeze() -> Weight { - // Minimum execution time: 22_048 nanoseconds. - Weight::from_ref_time(22_795_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 15_798 nanoseconds. + Weight::from_ref_time(16_178_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn thaw() -> Weight { - // Minimum execution time: 21_987 nanoseconds. - Weight::from_ref_time(22_738_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 16_196 nanoseconds. + Weight::from_ref_time(16_525_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn freeze_asset() -> Weight { - // Minimum execution time: 18_533 nanoseconds. - Weight::from_ref_time(19_259_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 12_600 nanoseconds. + Weight::from_ref_time(13_038_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn thaw_asset() -> Weight { - // Minimum execution time: 18_932 nanoseconds. - Weight::from_ref_time(19_583_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 12_433 nanoseconds. + Weight::from_ref_time(12_924_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Metadata (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:0) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn transfer_ownership() -> Weight { - // Minimum execution time: 19_683 nanoseconds. - Weight::from_ref_time(20_333_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 13_754 nanoseconds. + Weight::from_ref_time(14_069_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn set_team() -> Weight { - // Minimum execution time: 18_773 nanoseconds. - Weight::from_ref_time(19_329_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `2685` + // Minimum execution time: 12_640 nanoseconds. + Weight::from_ref_time(12_846_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. fn set_metadata(_n: u32, s: u32, ) -> Weight { - // Minimum execution time: 30_833 nanoseconds. - Weight::from_ref_time(32_840_016) - // Standard Error: 2_536 - .saturating_add(Weight::from_ref_time(3_703).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 22_428 nanoseconds. + Weight::from_ref_time(23_549_955) + .saturating_add(Weight::from_proof_size(5300)) + // Standard Error: 731 + .saturating_add(Weight::from_ref_time(893).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn clear_metadata() -> Weight { - // Minimum execution time: 32_336 nanoseconds. - Weight::from_ref_time(33_540_000) + // Proof Size summary in bytes: + // Measured: `471` + // Estimated: `5300` + // Minimum execution time: 22_730 nanoseconds. + Weight::from_ref_time(23_336_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn force_set_metadata(n: u32, s: u32, ) -> Weight { - // Minimum execution time: 18_932 nanoseconds. - Weight::from_ref_time(20_027_542) - // Standard Error: 1_109 - .saturating_add(Weight::from_ref_time(1_693).saturating_mul(n.into())) - // Standard Error: 1_109 - .saturating_add(Weight::from_ref_time(1_915).saturating_mul(s.into())) + fn force_set_metadata(_n: u32, s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `82` + // Estimated: `5300` + // Minimum execution time: 12_289 nanoseconds. + Weight::from_ref_time(12_841_728) + .saturating_add(Weight::from_proof_size(5300)) + // Standard Error: 304 + .saturating_add(Weight::from_ref_time(1_964).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn force_clear_metadata() -> Weight { - // Minimum execution time: 32_516 nanoseconds. - Weight::from_ref_time(34_080_000) + // Proof Size summary in bytes: + // Measured: `471` + // Estimated: `5300` + // Minimum execution time: 23_203 nanoseconds. + Weight::from_ref_time(23_490_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn force_asset_status() -> Weight { - // Minimum execution time: 18_157 nanoseconds. - Weight::from_ref_time(18_692_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `2685` + // Minimum execution time: 12_042 nanoseconds. + Weight::from_ref_time(12_246_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn approve_transfer() -> Weight { - // Minimum execution time: 35_547 nanoseconds. - Weight::from_ref_time(36_869_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `5308` + // Minimum execution time: 25_898 nanoseconds. + Weight::from_ref_time(26_128_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_approved() -> Weight { - // Minimum execution time: 65_541 nanoseconds. - Weight::from_ref_time(68_434_000) + // Proof Size summary in bytes: + // Measured: `553` + // Estimated: `13065` + // Minimum execution time: 52_087 nanoseconds. + Weight::from_ref_time(52_630_000) + .saturating_add(Weight::from_proof_size(13065)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn cancel_approval() -> Weight { - // Minimum execution time: 36_411 nanoseconds. - Weight::from_ref_time(38_111_000) + // Proof Size summary in bytes: + // Measured: `479` + // Estimated: `5308` + // Minimum execution time: 27_731 nanoseconds. + Weight::from_ref_time(28_129_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn force_cancel_approval() -> Weight { - // Minimum execution time: 37_723 nanoseconds. - Weight::from_ref_time(39_545_000) + // Proof Size summary in bytes: + // Measured: `479` + // Estimated: `5308` + // Minimum execution time: 27_921 nanoseconds. + Weight::from_ref_time(28_386_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_balances.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_balances.rs index cbd976c0474..2f863d7b8a2 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_balances.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_balances.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_balances` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,52 +47,87 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 44_953 nanoseconds. - Weight::from_ref_time(46_145_000) + // Proof Size summary in bytes: + // Measured: `1178` + // Estimated: `2603` + // Minimum execution time: 45_943 nanoseconds. + Weight::from_ref_time(46_894_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 33_676 nanoseconds. - Weight::from_ref_time(34_796_000) + // Proof Size summary in bytes: + // Measured: `1062` + // Estimated: `2603` + // Minimum execution time: 35_842 nanoseconds. + Weight::from_ref_time(36_089_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_creating() -> Weight { - // Minimum execution time: 23_716 nanoseconds. - Weight::from_ref_time(24_225_000) + // Proof Size summary in bytes: + // Measured: `1174` + // Estimated: `2603` + // Minimum execution time: 26_219 nanoseconds. + Weight::from_ref_time(26_783_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_killing() -> Weight { - // Minimum execution time: 26_946 nanoseconds. - Weight::from_ref_time(27_944_000) + // Proof Size summary in bytes: + // Measured: `1174` + // Estimated: `2603` + // Minimum execution time: 29_939 nanoseconds. + Weight::from_ref_time(30_394_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:2 w:2) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 44_753 nanoseconds. - Weight::from_ref_time(47_037_000) + // Proof Size summary in bytes: + // Measured: `1174` + // Estimated: `5206` + // Minimum execution time: 46_341 nanoseconds. + Weight::from_ref_time(47_111_000) + .saturating_add(Weight::from_proof_size(5206)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_all() -> Weight { - // Minimum execution time: 40_722 nanoseconds. - Weight::from_ref_time(49_255_000) + // Proof Size summary in bytes: + // Measured: `1062` + // Estimated: `2603` + // Minimum execution time: 41_093 nanoseconds. + Weight::from_ref_time(41_472_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_unreserve() -> Weight { - // Minimum execution time: 20_803 nanoseconds. - Weight::from_ref_time(21_258_000) + // Proof Size summary in bytes: + // Measured: `1058` + // Estimated: `2603` + // Minimum execution time: 22_961 nanoseconds. + Weight::from_ref_time(23_413_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_collator_selection.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_collator_selection.rs index 1fd42e84fbe..4bbd5b6bba2 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_collator_selection.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_collator_selection.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_collator_selection` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,79 +47,131 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_collator_selection`. pub struct WeightInfo(PhantomData); impl pallet_collator_selection::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Storage: Session NextKeys (r:100 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) /// The range of component `b` is `[1, 100]`. fn set_invulnerables(b: u32, ) -> Weight { - // Minimum execution time: 20_391 nanoseconds. - Weight::from_ref_time(19_508_680) - // Standard Error: 4_352 - .saturating_add(Weight::from_ref_time(2_861_485).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `178 + b * (78 ±0)` + // Estimated: `178 + b * (2554 ±0)` + // Minimum execution time: 14_182 nanoseconds. + Weight::from_ref_time(16_174_028) + .saturating_add(Weight::from_proof_size(178)) + // Standard Error: 3_951 + .saturating_add(Weight::from_ref_time(2_446_152).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(2554).saturating_mul(b.into())) } - // Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn set_desired_candidates() -> Weight { - // Minimum execution time: 13_328 nanoseconds. - Weight::from_ref_time(14_062_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_843 nanoseconds. + Weight::from_ref_time(7_086_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) fn set_candidacy_bond() -> Weight { - // Minimum execution time: 13_766 nanoseconds. - Weight::from_ref_time(14_153_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_075 nanoseconds. + Weight::from_ref_time(7_294_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection DesiredCandidates (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection CandidacyBond (r:1 w:0) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection DesiredCandidates (r:1 w:0) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Session NextKeys (r:1 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection CandidacyBond (r:1 w:0) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[1, 999]`. fn register_as_candidate(c: u32, ) -> Weight { - // Minimum execution time: 45_632 nanoseconds. - Weight::from_ref_time(49_581_769) - // Standard Error: 1_510 - .saturating_add(Weight::from_ref_time(190_677).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `1171 + c * (48 ±0)` + // Estimated: `56784 + c * (49 ±0)` + // Minimum execution time: 34_101 nanoseconds. + Weight::from_ref_time(27_254_778) + .saturating_add(Weight::from_proof_size(56784)) + // Standard Error: 1_210 + .saturating_add(Weight::from_ref_time(105_038).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_proof_size(49).saturating_mul(c.into())) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[6, 1000]`. fn leave_intent(c: u32, ) -> Weight { - // Minimum execution time: 34_865 nanoseconds. - Weight::from_ref_time(34_357_063) - // Standard Error: 1_387 - .saturating_add(Weight::from_ref_time(179_876).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `536 + c * (48 ±0)` + // Estimated: `48497` + // Minimum execution time: 26_156 nanoseconds. + Weight::from_ref_time(16_543_802) + .saturating_add(Weight::from_proof_size(48497)) + // Standard Error: 1_209 + .saturating_add(Weight::from_ref_time(102_889).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:2 w:2) - // Storage: System BlockWeight (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) fn note_author() -> Weight { - // Minimum execution time: 33_244 nanoseconds. - Weight::from_ref_time(34_259_000) + // Proof Size summary in bytes: + // Measured: `135` + // Estimated: `5749` + // Minimum execution time: 24_859 nanoseconds. + Weight::from_ref_time(25_423_000) + .saturating_add(Weight::from_proof_size(5749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:1000 w:1) - // Storage: System Account (r:1 w:1) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: System BlockWeight (r:1 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:0) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:999 w:0) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: System Account (r:995 w:995) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `r` is `[1, 1000]`. /// The range of component `c` is `[1, 1000]`. - fn new_session(_r: u32, c: u32, ) -> Weight { - // Minimum execution time: 19_650 nanoseconds. - Weight::from_ref_time(19_968_000) - // Standard Error: 786_328 - .saturating_add(Weight::from_ref_time(29_072_359).saturating_mul(c.into())) + fn new_session(r: u32, c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `22784 + r * (148 ±0) + c * (97 ±0)` + // Estimated: `52737 + c * (2519 ±0) + r * (2602 ±0)` + // Minimum execution time: 16_296 nanoseconds. + Weight::from_ref_time(16_532_000) + .saturating_add(Weight::from_proof_size(52737)) + // Standard Error: 758_486 + .saturating_add(Weight::from_ref_time(27_694_526).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(2519).saturating_mul(c.into())) + .saturating_add(Weight::from_proof_size(2602).saturating_mul(r.into())) } } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_multisig.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_multisig.rs index c8c31ccab80..39393ac6004 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_multisig.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_multisig.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_multisig` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -48,80 +49,113 @@ pub struct WeightInfo(PhantomData); impl pallet_multisig::WeightInfo for WeightInfo { /// The range of component `z` is `[0, 10000]`. fn as_multi_threshold_1(z: u32, ) -> Weight { - // Minimum execution time: 16_867 nanoseconds. - Weight::from_ref_time(17_855_455) - // Standard Error: 7 - .saturating_add(Weight::from_ref_time(626).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 11_557 nanoseconds. + Weight::from_ref_time(12_087_731) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1 + .saturating_add(Weight::from_ref_time(493).saturating_mul(z.into())) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_create(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 49_380 nanoseconds. - Weight::from_ref_time(35_928_806) - // Standard Error: 1_262 - .saturating_add(Weight::from_ref_time(149_202).saturating_mul(s.into())) - // Standard Error: 12 - .saturating_add(Weight::from_ref_time(1_868).saturating_mul(z.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `311 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 35_027 nanoseconds. + Weight::from_ref_time(28_254_579) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 541 + .saturating_add(Weight::from_ref_time(73_609).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_530).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[3, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_approve(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 36_975 nanoseconds. - Weight::from_ref_time(24_939_271) - // Standard Error: 1_094 - .saturating_add(Weight::from_ref_time(136_317).saturating_mul(s.into())) - // Standard Error: 10 - .saturating_add(Weight::from_ref_time(1_903).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 25_892 nanoseconds. + Weight::from_ref_time(19_974_491) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 382 + .saturating_add(Weight::from_ref_time(67_041).saturating_mul(s.into())) + // Standard Error: 3 + .saturating_add(Weight::from_ref_time(1_516).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_complete(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 52_377 nanoseconds. - Weight::from_ref_time(37_381_462) - // Standard Error: 1_498 - .saturating_add(Weight::from_ref_time(183_480).saturating_mul(s.into())) - // Standard Error: 14 - .saturating_add(Weight::from_ref_time(1_960).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `448 + s * (33 ±0)` + // Estimated: `8424` + // Minimum execution time: 39_799 nanoseconds. + Weight::from_ref_time(31_172_141) + .saturating_add(Weight::from_proof_size(8424)) + // Standard Error: 523 + .saturating_add(Weight::from_ref_time(91_287).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_557).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_create(s: u32, ) -> Weight { - // Minimum execution time: 32_086 nanoseconds. - Weight::from_ref_time(34_173_675) - // Standard Error: 1_490 - .saturating_add(Weight::from_ref_time(156_939).saturating_mul(s.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `318 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 24_614 nanoseconds. + Weight::from_ref_time(26_554_159) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 754 + .saturating_add(Weight::from_ref_time(81_278).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_approve(s: u32, ) -> Weight { - // Minimum execution time: 22_943 nanoseconds. - Weight::from_ref_time(24_153_723) - // Standard Error: 1_092 - .saturating_add(Weight::from_ref_time(130_471).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 17_141 nanoseconds. + Weight::from_ref_time(18_191_699) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 546 + .saturating_add(Weight::from_ref_time(74_486).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn cancel_as_multi(s: u32, ) -> Weight { - // Minimum execution time: 32_093 nanoseconds. - Weight::from_ref_time(34_829_454) - // Standard Error: 1_573 - .saturating_add(Weight::from_ref_time(148_149).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `517 + s * (1 ±0)` + // Estimated: `5821` + // Minimum execution time: 25_869 nanoseconds. + Weight::from_ref_time(28_059_249) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 677 + .saturating_add(Weight::from_ref_time(80_187).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_proxy.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_proxy.rs index b906e641ab1..87e720632ca 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_proxy.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_proxy.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_proxy` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,121 +47,176 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_proxy`. pub struct WeightInfo(PhantomData); impl pallet_proxy::WeightInfo for WeightInfo { - // Storage: Proxy Proxies (r:1 w:0) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn proxy(p: u32, ) -> Weight { - // Minimum execution time: 20_353 nanoseconds. - Weight::from_ref_time(21_509_191) - // Standard Error: 2_505 - .saturating_add(Weight::from_ref_time(53_567).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 14_405 nanoseconds. + Weight::from_ref_time(15_511_983) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 2_104 + .saturating_add(Weight::from_ref_time(19_450).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Proxy Proxies (r:1 w:0) - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn proxy_announced(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 40_300 nanoseconds. - Weight::from_ref_time(40_900_685) - // Standard Error: 3_136 - .saturating_add(Weight::from_ref_time(104_312).saturating_mul(a.into())) - // Standard Error: 3_240 - .saturating_add(Weight::from_ref_time(49_601).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `550 + a * (68 ±0) + p * (37 ±0)` + // Estimated: `11027` + // Minimum execution time: 31_545 nanoseconds. + Weight::from_ref_time(31_928_375) + .saturating_add(Weight::from_proof_size(11027)) + // Standard Error: 2_022 + .saturating_add(Weight::from_ref_time(114_479).saturating_mul(a.into())) + // Standard Error: 2_089 + .saturating_add(Weight::from_ref_time(34_696).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn remove_announcement(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 27_095 nanoseconds. - Weight::from_ref_time(28_275_274) - // Standard Error: 2_432 - .saturating_add(Weight::from_ref_time(125_355).saturating_mul(a.into())) - // Standard Error: 2_513 - .saturating_add(Weight::from_ref_time(33_543).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `433 + a * (68 ±0)` + // Estimated: `7311` + // Minimum execution time: 20_215 nanoseconds. + Weight::from_ref_time(20_970_496) + .saturating_add(Weight::from_proof_size(7311)) + // Standard Error: 1_277 + .saturating_add(Weight::from_ref_time(111_015).saturating_mul(a.into())) + // Standard Error: 1_320 + .saturating_add(Weight::from_ref_time(9_988).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn reject_announcement(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 27_243 nanoseconds. - Weight::from_ref_time(28_318_836) - // Standard Error: 2_249 - .saturating_add(Weight::from_ref_time(128_387).saturating_mul(a.into())) - // Standard Error: 2_323 - .saturating_add(Weight::from_ref_time(33_123).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `433 + a * (68 ±0)` + // Estimated: `7311` + // Minimum execution time: 20_153 nanoseconds. + Weight::from_ref_time(21_046_064) + .saturating_add(Weight::from_proof_size(7311)) + // Standard Error: 1_342 + .saturating_add(Weight::from_ref_time(108_638).saturating_mul(a.into())) + // Standard Error: 1_386 + .saturating_add(Weight::from_ref_time(10_617).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Proxies (r:1 w:0) - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn announce(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 36_001 nanoseconds. - Weight::from_ref_time(37_755_806) - // Standard Error: 2_688 - .saturating_add(Weight::from_ref_time(117_562).saturating_mul(a.into())) - // Standard Error: 2_777 - .saturating_add(Weight::from_ref_time(39_230).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `482 + a * (68 ±0) + p * (37 ±0)` + // Estimated: `11027` + // Minimum execution time: 27_692 nanoseconds. + Weight::from_ref_time(28_900_223) + .saturating_add(Weight::from_proof_size(11027)) + // Standard Error: 1_751 + .saturating_add(Weight::from_ref_time(100_648).saturating_mul(a.into())) + // Standard Error: 1_809 + .saturating_add(Weight::from_ref_time(35_769).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn add_proxy(p: u32, ) -> Weight { - // Minimum execution time: 29_566 nanoseconds. - Weight::from_ref_time(31_149_800) - // Standard Error: 2_298 - .saturating_add(Weight::from_ref_time(71_939).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 20_726 nanoseconds. + Weight::from_ref_time(21_849_126) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_307 + .saturating_add(Weight::from_ref_time(43_349).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn remove_proxy(p: u32, ) -> Weight { - // Minimum execution time: 29_021 nanoseconds. - Weight::from_ref_time(30_997_729) - // Standard Error: 2_165 - .saturating_add(Weight::from_ref_time(78_568).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 20_681 nanoseconds. + Weight::from_ref_time(21_733_251) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_555 + .saturating_add(Weight::from_ref_time(59_461).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn remove_proxies(p: u32, ) -> Weight { - // Minimum execution time: 25_326 nanoseconds. - Weight::from_ref_time(26_868_430) - // Standard Error: 1_962 - .saturating_add(Weight::from_ref_time(41_448).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 16_966 nanoseconds. + Weight::from_ref_time(17_682_078) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_110 + .saturating_add(Weight::from_ref_time(28_786).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn create_pure(p: u32, ) -> Weight { - // Minimum execution time: 31_785 nanoseconds. - Weight::from_ref_time(33_475_829) - // Standard Error: 2_993 - .saturating_add(Weight::from_ref_time(21_123).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `139` + // Estimated: `3716` + // Minimum execution time: 22_237 nanoseconds. + Weight::from_ref_time(23_324_695) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_481 + .saturating_add(Weight::from_ref_time(9_284).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[0, 30]`. fn kill_pure(p: u32, ) -> Weight { - // Minimum execution time: 26_365 nanoseconds. - Weight::from_ref_time(27_914_914) - // Standard Error: 2_228 - .saturating_add(Weight::from_ref_time(49_922).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `196 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 18_041 nanoseconds. + Weight::from_ref_time(18_668_925) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_209 + .saturating_add(Weight::from_ref_time(29_794).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_session.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_session.rs index 37e60fd53fb..c82ad190408 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_session.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_session.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_session` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,19 +47,31 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_session`. pub struct WeightInfo(PhantomData); impl pallet_session::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:1 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:1 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - // Minimum execution time: 22_519 nanoseconds. - Weight::from_ref_time(23_717_000) + // Proof Size summary in bytes: + // Measured: `270` + // Estimated: `5490` + // Minimum execution time: 15_561 nanoseconds. + Weight::from_ref_time(15_843_000) + .saturating_add(Weight::from_proof_size(5490)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:0 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:0 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn purge_keys() -> Weight { - // Minimum execution time: 18_465 nanoseconds. - Weight::from_ref_time(19_234_000) + // Proof Size summary in bytes: + // Measured: `242` + // Estimated: `2959` + // Minimum execution time: 11_757 nanoseconds. + Weight::from_ref_time(12_093_000) + .saturating_add(Weight::from_proof_size(2959)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_timestamp.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_timestamp.rs index 1b96c0d00d0..4f5e507d9a3 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_timestamp.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_timestamp.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_timestamp` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,16 +47,26 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { - // Storage: Timestamp Now (r:1 w:1) - // Storage: Aura CurrentSlot (r:1 w:0) + /// Storage: Timestamp Now (r:1 w:1) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + /// Storage: Aura CurrentSlot (r:1 w:0) + /// Proof: Aura CurrentSlot (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) fn set() -> Weight { - // Minimum execution time: 9_524 nanoseconds. - Weight::from_ref_time(9_910_000) + // Proof Size summary in bytes: + // Measured: `86` + // Estimated: `1006` + // Minimum execution time: 8_399 nanoseconds. + Weight::from_ref_time(8_649_000) + .saturating_add(Weight::from_proof_size(1006)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } fn on_finalize() -> Weight { - // Minimum execution time: 3_867 nanoseconds. - Weight::from_ref_time(4_044_000) + // Proof Size summary in bytes: + // Measured: `57` + // Estimated: `0` + // Minimum execution time: 3_277 nanoseconds. + Weight::from_ref_time(3_349_000) + .saturating_add(Weight::from_proof_size(0)) } } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_uniques.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_uniques.rs index 3189a7f63eb..bfd60c91509 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_uniques.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_uniques.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_uniques` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,242 +47,413 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_uniques`. pub struct WeightInfo(PhantomData); impl pallet_uniques::WeightInfo for WeightInfo { - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn create() -> Weight { - // Minimum execution time: 30_159 nanoseconds. - Weight::from_ref_time(31_282_000) + // Proof Size summary in bytes: + // Measured: `177` + // Estimated: `2653` + // Minimum execution time: 23_738 nanoseconds. + Weight::from_ref_time(24_550_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn force_create() -> Weight { - // Minimum execution time: 20_337 nanoseconds. - Weight::from_ref_time(20_657_000) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `2653` + // Minimum execution time: 13_165 nanoseconds. + Weight::from_ref_time(13_515_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:1 w:0) - // Storage: Uniques ClassAccount (r:0 w:1) - // Storage: Uniques Attribute (r:0 w:1000) - // Storage: Uniques ClassMetadataOf (r:0 w:1) - // Storage: Uniques InstanceMetadataOf (r:0 w:1000) - // Storage: Uniques CollectionMaxSupply (r:0 w:1) - // Storage: Uniques Account (r:0 w:20) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1001 w:1000) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:0 w:1000) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:0 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:0 w:1000) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1000) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques CollectionMaxSupply (r:0 w:1) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) /// The range of component `n` is `[0, 1000]`. /// The range of component `m` is `[0, 1000]`. /// The range of component `a` is `[0, 1000]`. fn destroy(n: u32, m: u32, a: u32, ) -> Weight { - // Minimum execution time: 2_955_950 nanoseconds. - Weight::from_ref_time(3_016_040_000) - // Standard Error: 35_007 - .saturating_add(Weight::from_ref_time(9_612_676).saturating_mul(n.into())) - // Standard Error: 35_007 - .saturating_add(Weight::from_ref_time(294_935).saturating_mul(m.into())) - // Standard Error: 35_007 - .saturating_add(Weight::from_ref_time(502_067).saturating_mul(a.into())) + // Proof Size summary in bytes: + // Measured: `289 + n * (108 ±0) + m * (56 ±0) + a * (107 ±0)` + // Estimated: `5250 + n * (2597 ±0)` + // Minimum execution time: 2_258_129 nanoseconds. + Weight::from_ref_time(2_289_592_000) + .saturating_add(Weight::from_proof_size(5250)) + // Standard Error: 26_214 + .saturating_add(Weight::from_ref_time(8_416_144).saturating_mul(n.into())) + // Standard Error: 26_214 + .saturating_add(Weight::from_ref_time(256_638).saturating_mul(m.into())) + // Standard Error: 26_214 + .saturating_add(Weight::from_ref_time(274_803).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes(4)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into()))) + .saturating_add(Weight::from_proof_size(2597).saturating_mul(n.into())) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques CollectionMaxSupply (r:1 w:0) - // Storage: Uniques Account (r:0 w:1) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques CollectionMaxSupply (r:1 w:0) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) fn mint() -> Weight { - // Minimum execution time: 38_344 nanoseconds. - Weight::from_ref_time(39_647_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `7749` + // Minimum execution time: 28_974 nanoseconds. + Weight::from_ref_time(29_398_000) + .saturating_add(Weight::from_proof_size(7749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Account (r:0 w:1) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn burn() -> Weight { - // Minimum execution time: 40_858 nanoseconds. - Weight::from_ref_time(42_119_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 30_070 nanoseconds. + Weight::from_ref_time(30_454_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Account (r:0 w:2) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:2) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 31_788 nanoseconds. - Weight::from_ref_time(33_789_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 24_287 nanoseconds. + Weight::from_ref_time(24_509_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:102 w:102) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:5000 w:5000) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) /// The range of component `i` is `[0, 5000]`. fn redeposit(i: u32, ) -> Weight { - // Minimum execution time: 20_167 nanoseconds. - Weight::from_ref_time(20_686_000) - // Standard Error: 16_832 - .saturating_add(Weight::from_ref_time(13_676_811).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `770 + i * (108 ±0)` + // Estimated: `2653 + i * (2597 ±0)` + // Minimum execution time: 14_231 nanoseconds. + Weight::from_ref_time(14_454_000) + .saturating_add(Weight::from_proof_size(2653)) + // Standard Error: 13_135 + .saturating_add(Weight::from_ref_time(12_152_067).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(i.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) + .saturating_add(Weight::from_proof_size(2597).saturating_mul(i.into())) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn freeze() -> Weight { - // Minimum execution time: 23_705 nanoseconds. - Weight::from_ref_time(24_505_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 17_977 nanoseconds. + Weight::from_ref_time(18_415_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn thaw() -> Weight { - // Minimum execution time: 23_539 nanoseconds. - Weight::from_ref_time(24_660_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 17_421 nanoseconds. + Weight::from_ref_time(17_830_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn freeze_collection() -> Weight { - // Minimum execution time: 19_365 nanoseconds. - Weight::from_ref_time(20_035_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 13_199 nanoseconds. + Weight::from_ref_time(13_615_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn thaw_collection() -> Weight { - // Minimum execution time: 19_090 nanoseconds. - Weight::from_ref_time(19_631_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 13_263 nanoseconds. + Weight::from_ref_time(13_575_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques OwnershipAcceptance (r:1 w:1) - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:2) + /// Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Proof: Uniques OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:2) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn transfer_ownership() -> Weight { - // Minimum execution time: 26_735 nanoseconds. - Weight::from_ref_time(27_778_000) + // Proof Size summary in bytes: + // Measured: `388` + // Estimated: `5180` + // Minimum execution time: 20_850 nanoseconds. + Weight::from_ref_time(21_223_000) + .saturating_add(Weight::from_proof_size(5180)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn set_team() -> Weight { - // Minimum execution time: 19_548 nanoseconds. - Weight::from_ref_time(20_166_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 14_218 nanoseconds. + Weight::from_ref_time(14_680_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn force_item_status() -> Weight { - // Minimum execution time: 22_519 nanoseconds. - Weight::from_ref_time(23_074_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 16_581 nanoseconds. + Weight::from_ref_time(16_856_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:0) - // Storage: Uniques Attribute (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:0) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:1 w:1) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) fn set_attribute() -> Weight { - // Minimum execution time: 44_598 nanoseconds. - Weight::from_ref_time(46_000_000) + // Proof Size summary in bytes: + // Measured: `623` + // Estimated: `7962` + // Minimum execution time: 34_610 nanoseconds. + Weight::from_ref_time(34_994_000) + .saturating_add(Weight::from_proof_size(7962)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:0) - // Storage: Uniques Attribute (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:0) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:1 w:1) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) fn clear_attribute() -> Weight { - // Minimum execution time: 43_530 nanoseconds. - Weight::from_ref_time(44_996_000) + // Proof Size summary in bytes: + // Measured: `851` + // Estimated: `7962` + // Minimum execution time: 34_244 nanoseconds. + Weight::from_ref_time(34_542_000) + .saturating_add(Weight::from_proof_size(7962)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) fn set_metadata() -> Weight { - // Minimum execution time: 35_271 nanoseconds. - Weight::from_ref_time(36_457_000) + // Proof Size summary in bytes: + // Measured: `380` + // Estimated: `5315` + // Minimum execution time: 26_652 nanoseconds. + Weight::from_ref_time(27_013_000) + .saturating_add(Weight::from_proof_size(5315)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) fn clear_metadata() -> Weight { - // Minimum execution time: 36_587 nanoseconds. - Weight::from_ref_time(37_573_000) + // Proof Size summary in bytes: + // Measured: `623` + // Estimated: `5315` + // Minimum execution time: 27_427 nanoseconds. + Weight::from_ref_time(27_985_000) + .saturating_add(Weight::from_proof_size(5315)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) fn set_collection_metadata() -> Weight { - // Minimum execution time: 34_409 nanoseconds. - Weight::from_ref_time(35_576_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `5295` + // Minimum execution time: 26_557 nanoseconds. + Weight::from_ref_time(26_973_000) + .saturating_add(Weight::from_proof_size(5295)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) fn clear_collection_metadata() -> Weight { - // Minimum execution time: 33_706 nanoseconds. - Weight::from_ref_time(35_093_000) + // Proof Size summary in bytes: + // Measured: `537` + // Estimated: `5295` + // Minimum execution time: 25_091 nanoseconds. + Weight::from_ref_time(25_510_000) + .saturating_add(Weight::from_proof_size(5295)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) fn approve_transfer() -> Weight { - // Minimum execution time: 25_123 nanoseconds. - Weight::from_ref_time(26_357_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 19_129 nanoseconds. + Weight::from_ref_time(19_831_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) fn cancel_approval() -> Weight { - // Minimum execution time: 24_873 nanoseconds. - Weight::from_ref_time(25_653_000) + // Proof Size summary in bytes: + // Measured: `525` + // Estimated: `5250` + // Minimum execution time: 19_393 nanoseconds. + Weight::from_ref_time(19_569_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Proof: Uniques OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) fn set_accept_ownership() -> Weight { - // Minimum execution time: 22_708 nanoseconds. - Weight::from_ref_time(23_363_000) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `2527` + // Minimum execution time: 14_863 nanoseconds. + Weight::from_ref_time(15_066_000) + .saturating_add(Weight::from_proof_size(2527)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques CollectionMaxSupply (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques CollectionMaxSupply (r:1 w:1) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn set_collection_max_supply() -> Weight { - // Minimum execution time: 22_231 nanoseconds. - Weight::from_ref_time(22_654_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `5152` + // Minimum execution time: 16_144 nanoseconds. + Weight::from_ref_time(16_510_000) + .saturating_add(Weight::from_proof_size(5152)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:0) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Asset (r:1 w:0) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn set_price() -> Weight { - // Minimum execution time: 21_710 nanoseconds. - Weight::from_ref_time(22_423_000) + // Proof Size summary in bytes: + // Measured: `291` + // Estimated: `2597` + // Minimum execution time: 15_884 nanoseconds. + Weight::from_ref_time(16_215_000) + .saturating_add(Weight::from_proof_size(2597)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques ItemPriceOf (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Account (r:0 w:2) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:1 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:2) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) fn buy_item() -> Weight { - // Minimum execution time: 41_135 nanoseconds. - Weight::from_ref_time(42_407_000) + // Proof Size summary in bytes: + // Measured: `636` + // Estimated: `7814` + // Minimum execution time: 34_190 nanoseconds. + Weight::from_ref_time(34_497_000) + .saturating_add(Weight::from_proof_size(7814)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_utility.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_utility.rs index 01519564b94..5f18e40051c 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_utility.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_utility.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_utility` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -48,31 +49,51 @@ pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { /// The range of component `c` is `[0, 1000]`. fn batch(c: u32, ) -> Weight { - // Minimum execution time: 13_061 nanoseconds. - Weight::from_ref_time(22_002_014) - // Standard Error: 1_631 - .saturating_add(Weight::from_ref_time(4_500_655).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_005 nanoseconds. + Weight::from_ref_time(18_139_015) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_178 + .saturating_add(Weight::from_ref_time(3_979_226).saturating_mul(c.into())) } fn as_derivative() -> Weight { - // Minimum execution time: 6_100 nanoseconds. - Weight::from_ref_time(6_357_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_441 nanoseconds. + Weight::from_ref_time(4_622_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn batch_all(c: u32, ) -> Weight { - // Minimum execution time: 12_931 nanoseconds. - Weight::from_ref_time(24_716_946) - // Standard Error: 2_425 - .saturating_add(Weight::from_ref_time(4_716_164).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_910 nanoseconds. + Weight::from_ref_time(18_908_357) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_920 + .saturating_add(Weight::from_ref_time(4_169_103).saturating_mul(c.into())) } fn dispatch_as() -> Weight { - // Minimum execution time: 14_958 nanoseconds. - Weight::from_ref_time(15_447_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_957 nanoseconds. + Weight::from_ref_time(8_145_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn force_batch(c: u32, ) -> Weight { - // Minimum execution time: 13_003 nanoseconds. - Weight::from_ref_time(21_374_296) - // Standard Error: 2_304 - .saturating_add(Weight::from_ref_time(4_527_355).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_925 nanoseconds. + Weight::from_ref_time(15_056_349) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_987 + .saturating_add(Weight::from_ref_time(3_981_287).saturating_mul(c.into())) } } diff --git a/parachains/runtimes/assets/statemint/src/weights/pallet_xcm.rs b/parachains/runtimes/assets/statemint/src/weights/pallet_xcm.rs index 69729e7f385..a5b6ba47919 100644 --- a/parachains/runtimes/assets/statemint/src/weights/pallet_xcm.rs +++ b/parachains/runtimes/assets/statemint/src/weights/pallet_xcm.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_xcm` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-12-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `bm3`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: -// /home/benchbot/cargo_target_dir/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=statemint-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/var/lib/gitlab-runner/builds/zyw4fam_/0/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm -// --chain=statemint-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/assets/statemint/src/weights/ +// --output=./parachains/runtimes/assets/statemint/src/weights/pallet_xcm.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,127 +47,229 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_xcm`. pub struct WeightInfo(PhantomData); impl pallet_xcm::WeightInfo for WeightInfo { - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn send() -> Weight { - // Minimum execution time: 27_694 nanoseconds. - Weight::from_ref_time(28_545_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `4645` + // Minimum execution time: 24_132 nanoseconds. + Weight::from_ref_time(24_554_000) + .saturating_add(Weight::from_proof_size(4645)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn teleport_assets() -> Weight { - // Minimum execution time: 33_053 nanoseconds. - Weight::from_ref_time(33_789_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `499` + // Minimum execution time: 22_350 nanoseconds. + Weight::from_ref_time(22_760_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn reserve_transfer_assets() -> Weight { - // Minimum execution time: 24_781 nanoseconds. - Weight::from_ref_time(25_259_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `499` + // Minimum execution time: 17_723 nanoseconds. + Weight::from_ref_time(17_951_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn execute() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn force_xcm_version() -> Weight { - // Minimum execution time: 15_439 nanoseconds. - Weight::from_ref_time(15_750_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_641 nanoseconds. + Weight::from_ref_time(8_925_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) fn force_default_xcm_version() -> Weight { - // Minimum execution time: 4_576 nanoseconds. - Weight::from_ref_time(4_758_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_427 nanoseconds. + Weight::from_ref_time(2_598_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm QueryCounter (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm QueryCounter (r:1 w:1) + /// Proof Skipped: PolkadotXcm QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_subscribe_version_notify() -> Weight { - // Minimum execution time: 31_540 nanoseconds. - Weight::from_ref_time(32_380_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `7729` + // Minimum execution time: 28_650 nanoseconds. + Weight::from_ref_time(29_035_000) + .saturating_add(Weight::from_proof_size(7729)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_unsubscribe_version_notify() -> Weight { - // Minimum execution time: 32_627 nanoseconds. - Weight::from_ref_time(32_934_000) + // Proof Size summary in bytes: + // Measured: `220` + // Estimated: `8470` + // Minimum execution time: 30_797 nanoseconds. + Weight::from_ref_time(31_491_000) + .saturating_add(Weight::from_proof_size(8470)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn migrate_supported_version() -> Weight { - // Minimum execution time: 13_968 nanoseconds. - Weight::from_ref_time(14_356_000) + // Proof Size summary in bytes: + // Measured: `95` + // Estimated: `9995` + // Minimum execution time: 13_639 nanoseconds. + Weight::from_ref_time(13_980_000) + .saturating_add(Weight::from_proof_size(9995)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) fn migrate_version_notifiers() -> Weight { - // Minimum execution time: 14_263 nanoseconds. - Weight::from_ref_time(14_540_000) + // Proof Size summary in bytes: + // Measured: `99` + // Estimated: `9999` + // Minimum execution time: 13_954 nanoseconds. + Weight::from_ref_time(14_276_000) + .saturating_add(Weight::from_proof_size(9999)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn already_notified_target() -> Weight { - // Minimum execution time: 15_825 nanoseconds. - Weight::from_ref_time(16_101_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `12481` + // Minimum execution time: 15_217 nanoseconds. + Weight::from_ref_time(15_422_000) + .saturating_add(Weight::from_proof_size(12481)) .saturating_add(T::DbWeight::get().reads(5)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn notify_current_targets() -> Weight { - // Minimum execution time: 27_436 nanoseconds. - Weight::from_ref_time(28_083_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10041` + // Minimum execution time: 27_362 nanoseconds. + Weight::from_ref_time(28_034_000) + .saturating_add(Weight::from_proof_size(10041)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn notify_target_migration_fail() -> Weight { - // Minimum execution time: 7_187 nanoseconds. - Weight::from_ref_time(7_399_000) + // Proof Size summary in bytes: + // Measured: `136` + // Estimated: `7561` + // Minimum execution time: 7_768 nanoseconds. + Weight::from_ref_time(7_890_000) + .saturating_add(Weight::from_proof_size(7561)) .saturating_add(T::DbWeight::get().reads(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn migrate_version_notify_targets() -> Weight { - // Minimum execution time: 14_904 nanoseconds. - Weight::from_ref_time(15_191_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10006` + // Minimum execution time: 15_165 nanoseconds. + Weight::from_ref_time(15_430_000) + .saturating_add(Weight::from_proof_size(10006)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn migrate_and_notify_old_targets() -> Weight { - // Minimum execution time: 33_269 nanoseconds. - Weight::from_ref_time(34_064_000) + // Proof Size summary in bytes: + // Measured: `112` + // Estimated: `15027` + // Minimum execution time: 35_310 nanoseconds. + Weight::from_ref_time(35_698_000) + .saturating_add(Weight::from_proof_size(15027)) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/xcm/mod.rs b/parachains/runtimes/assets/statemint/src/weights/xcm/mod.rs index 6d0cafada4f..cf9423bc28e 100644 --- a/parachains/runtimes/assets/statemint/src/weights/xcm/mod.rs +++ b/parachains/runtimes/assets/statemint/src/weights/xcm/mod.rs @@ -17,7 +17,7 @@ mod pallet_xcm_benchmarks_fungible; mod pallet_xcm_benchmarks_generic; -use crate::Runtime; +use crate::{xcm_config::MaxAssetsIntoHolding, Runtime}; use frame_support::weights::Weight; use pallet_xcm_benchmarks_fungible::WeightInfo as XcmFungibleWeight; use pallet_xcm_benchmarks_generic::WeightInfo as XcmGeneric; @@ -35,7 +35,18 @@ impl WeighMultiAssets for MultiAssetFilter { match self { Self::Definite(assets) => weight.saturating_mul(assets.inner().into_iter().count() as u64), - Self::Wild(_) => weight.saturating_mul(MAX_ASSETS as u64), + Self::Wild(asset) => match asset { + All => weight.saturating_mul(MAX_ASSETS as u64), + AllOf { fun, .. } => match fun { + WildFungibility::Fungible => weight, + // Magic number 2 has to do with the fact that we could have up to 2 times + // MaxAssetsIntoHolding in the worst-case scenario. + WildFungibility::NonFungible => + weight.saturating_mul((MaxAssetsIntoHolding::get() * 2) as u64), + }, + AllCounted(count) => weight.saturating_mul(*count as u64), + AllOfCounted { count, .. } => weight.saturating_mul(*count as u64), + }, } } } @@ -138,10 +149,7 @@ impl XcmWeightInfo for StatemintXcmWeight { _dest: &MultiLocation, _xcm: &Xcm<()>, ) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_ref_time(200_000_000 as u64); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()) } fn report_holding(_response_info: &QueryResponseInfo, _assets: &MultiAssetFilter) -> Weight { XcmGeneric::::report_holding() diff --git a/parachains/runtimes/assets/statemint/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs b/parachains/runtimes/assets/statemint/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs index 12ae2b93e67..96127b68069 100644 --- a/parachains/runtimes/assets/statemint/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs +++ b/parachains/runtimes/assets/statemint/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::fungible` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -49,58 +49,81 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn withdraw_asset() -> Weight { - Weight::from_ref_time(30_230_000 as u64) + Weight::from_ref_time(21_004_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn transfer_asset() -> Weight { - Weight::from_ref_time(40_338_000 as u64) + Weight::from_ref_time(29_344_000 as u64) .saturating_add(T::DbWeight::get().reads(2 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn transfer_reserve_asset() -> Weight { - Weight::from_ref_time(59_903_000 as u64) + Weight::from_ref_time(49_988_000 as u64) .saturating_add(T::DbWeight::get().reads(8 as u64)) .saturating_add(T::DbWeight::get().writes(4 as u64)) } pub(crate) fn receive_teleported_asset() -> Weight { - Weight::from_ref_time(7_090_000 as u64) + Weight::from_ref_time(4_040_000 as u64) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn deposit_asset() -> Weight { - Weight::from_ref_time(32_713_000 as u64) + Weight::from_ref_time(22_762_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn deposit_reserve_asset() -> Weight { - Weight::from_ref_time(54_568_000 as u64) + Weight::from_ref_time(44_404_000 as u64) .saturating_add(T::DbWeight::get().reads(7 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_teleport() -> Weight { - Weight::from_ref_time(36_591_000 as u64) + Weight::from_ref_time(28_179_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } diff --git a/parachains/runtimes/assets/statemint/src/weights/xcm/pallet_xcm_benchmarks_generic.rs b/parachains/runtimes/assets/statemint/src/weights/xcm/pallet_xcm_benchmarks_generic.rs index 5c7b295d85f..38dd4d08bde 100644 --- a/parachains/runtimes/assets/statemint/src/weights/xcm/pallet_xcm_benchmarks_generic.rs +++ b/parachains/runtimes/assets/statemint/src/weights/xcm/pallet_xcm_benchmarks_generic.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::generic` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("statemint-dev"), DB CACHE: 1024 // Executed Command: @@ -49,145 +49,184 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_holding() -> Weight { - Weight::from_ref_time(419_969_000 as u64) + Weight::from_ref_time(352_828_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn buy_execution() -> Weight { - Weight::from_ref_time(6_812_000 as u64) + Weight::from_ref_time(3_719_000 as u64) } // Storage: PolkadotXcm Queries (r:1 w:0) + // Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) pub(crate) fn query_response() -> Weight { - Weight::from_ref_time(22_826_000 as u64) + Weight::from_ref_time(10_697_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) } pub(crate) fn transact() -> Weight { - Weight::from_ref_time(21_508_000 as u64) + Weight::from_ref_time(12_215_000 as u64) } pub(crate) fn refund_surplus() -> Weight { - Weight::from_ref_time(7_076_000 as u64) + Weight::from_ref_time(3_925_000 as u64) } pub(crate) fn set_error_handler() -> Weight { - Weight::from_ref_time(6_232_000 as u64) + Weight::from_ref_time(2_782_000 as u64) } pub(crate) fn set_appendix() -> Weight { - Weight::from_ref_time(5_977_000 as u64) + Weight::from_ref_time(2_765_000 as u64) } pub(crate) fn clear_error() -> Weight { - Weight::from_ref_time(6_015_000 as u64) + Weight::from_ref_time(2_766_000 as u64) } pub(crate) fn descend_origin() -> Weight { - Weight::from_ref_time(6_780_000 as u64) + Weight::from_ref_time(3_553_000 as u64) } pub(crate) fn clear_origin() -> Weight { - Weight::from_ref_time(5_962_000 as u64) + Weight::from_ref_time(2_732_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_error() -> Weight { - Weight::from_ref_time(32_598_000 as u64) + Weight::from_ref_time(23_189_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: PolkadotXcm AssetTraps (r:1 w:1) + // Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) pub(crate) fn claim_asset() -> Weight { - Weight::from_ref_time(22_269_000 as u64) + Weight::from_ref_time(14_569_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } pub(crate) fn trap() -> Weight { - Weight::from_ref_time(5_926_000 as u64) + Weight::from_ref_time(2_759_000 as u64) } // Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn subscribe_version() -> Weight { - Weight::from_ref_time(33_049_000 as u64) + Weight::from_ref_time(24_423_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) pub(crate) fn unsubscribe_version() -> Weight { - Weight::from_ref_time(7_789_000 as u64) + Weight::from_ref_time(4_575_000 as u64) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_reserve_withdraw() -> Weight { - Weight::from_ref_time(473_491_000 as u64) + Weight::from_ref_time(406_184_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn burn_asset() -> Weight { - Weight::from_ref_time(153_186_000 as u64) + Weight::from_ref_time(125_739_000 as u64) } pub(crate) fn expect_asset() -> Weight { - Weight::from_ref_time(15_382_000 as u64) + Weight::from_ref_time(13_105_000 as u64) } pub(crate) fn expect_origin() -> Weight { - Weight::from_ref_time(6_120_000 as u64) + Weight::from_ref_time(2_823_000 as u64) } pub(crate) fn expect_error() -> Weight { - Weight::from_ref_time(6_140_000 as u64) + Weight::from_ref_time(2_771_000 as u64) } pub(crate) fn expect_transact_status() -> Weight { - Weight::from_ref_time(7_034_000 as u64) + Weight::from_ref_time(2_883_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn query_pallet() -> Weight { - Weight::from_ref_time(35_423_000 as u64) + Weight::from_ref_time(25_695_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn expect_pallet() -> Weight { - Weight::from_ref_time(7_718_000 as u64) + Weight::from_ref_time(4_650_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_transact_status() -> Weight { - Weight::from_ref_time(32_917_000 as u64) + Weight::from_ref_time(23_415_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn clear_transact_status() -> Weight { - Weight::from_ref_time(6_010_000 as u64) + Weight::from_ref_time(2_756_000 as u64) } pub(crate) fn set_topic() -> Weight { - Weight::from_ref_time(5_898_000 as u64) + Weight::from_ref_time(2_702_000 as u64) } pub(crate) fn clear_topic() -> Weight { - Weight::from_ref_time(7_201_000 as u64) + Weight::from_ref_time(2_738_000 as u64) } pub(crate) fn set_fees_mode() -> Weight { - Weight::from_ref_time(6_120_000 as u64) + Weight::from_ref_time(2_700_000 as u64) } pub(crate) fn unpaid_execution() -> Weight { - Weight::from_ref_time(6_170_000 as u64) + Weight::from_ref_time(2_894_000 as u64) } } diff --git a/parachains/runtimes/assets/westmint/Cargo.toml b/parachains/runtimes/assets/westmint/Cargo.toml index 9bfcba6b237..cabdb3df62b 100644 --- a/parachains/runtimes/assets/westmint/Cargo.toml +++ b/parachains/runtimes/assets/westmint/Cargo.toml @@ -27,6 +27,7 @@ pallet-authorship = { git = "https://github.com/paritytech/substrate", default-f pallet-balances = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-multisig = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-nfts = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } +pallet-nfts-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-proxy = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-session = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-timestamp = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } @@ -143,6 +144,7 @@ std = [ "pallet-balances/std", "pallet-multisig/std", "pallet-nfts/std", + "pallet-nfts-runtime-api/std", "pallet-proxy/std", "pallet-session/std", "pallet-timestamp/std", diff --git a/parachains/runtimes/assets/westmint/src/lib.rs b/parachains/runtimes/assets/westmint/src/lib.rs index 6d2dad5f6c3..19b2c1efa1e 100644 --- a/parachains/runtimes/assets/westmint/src/lib.rs +++ b/parachains/runtimes/assets/westmint/src/lib.rs @@ -33,7 +33,7 @@ use sp_api::impl_runtime_apis; use sp_core::{crypto::KeyTypeId, OpaqueMetadata}; use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, - traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto}, + traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, Verify}, transaction_validity::{TransactionSource, TransactionValidity}, ApplyExtrinsicResult, }; @@ -49,7 +49,10 @@ use frame_support::{ construct_runtime, dispatch::DispatchClass, parameter_types, - traits::{AsEnsureOriginWithArg, ConstU32, ConstU64, ConstU8, InstanceFilter}, + traits::{ + tokens::nonfungibles_v2::Inspect, AsEnsureOriginWithArg, ConstU32, ConstU64, ConstU8, + InstanceFilter, + }, weights::{ConstantMultiplier, Weight}, PalletId, RuntimeDebug, }; @@ -594,7 +597,10 @@ impl pallet_nfts::Config for Runtime { type ItemAttributesApprovalsLimit = ConstU32<30>; type MaxTips = ConstU32<10>; type MaxDeadlineDuration = NftsMaxDeadlineDuration; + type MaxAttributesPerCall = ConstU32<10>; type Features = NftsPalletFeatures; + type OffchainSignature = Signature; + type OffchainPublic = ::Signer; type WeightInfo = weights::pallet_nfts::WeightInfo; #[cfg(feature = "runtime-benchmarks")] type Helper = (); @@ -796,6 +802,50 @@ impl_runtime_apis! { } } + impl pallet_nfts_runtime_api::NftsApi for Runtime { + fn owner(collection: u32, item: u32) -> Option { + >::owner(&collection, &item) + } + + fn collection_owner(collection: u32) -> Option { + >::collection_owner(&collection) + } + + fn attribute( + collection: u32, + item: u32, + key: Vec, + ) -> Option> { + >::attribute(&collection, &item, &key) + } + + fn custom_attribute( + account: AccountId, + collection: u32, + item: u32, + key: Vec, + ) -> Option> { + >::custom_attribute( + &account, + &collection, + &item, + &key, + ) + } + + fn system_attribute( + collection: u32, + item: u32, + key: Vec, + ) -> Option> { + >::system_attribute(&collection, &item, &key) + } + + fn collection_attribute(collection: u32, key: Vec) -> Option> { + >::collection_attribute(&collection, &key) + } + } + impl pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi for Runtime { fn query_info( uxt: ::Extrinsic, diff --git a/parachains/runtimes/assets/westmint/src/weights/cumulus_pallet_xcmp_queue.rs b/parachains/runtimes/assets/westmint/src/weights/cumulus_pallet_xcmp_queue.rs index bbaf095ee96..b3528805fe9 100644 --- a/parachains/runtimes/assets/westmint/src/weights/cumulus_pallet_xcmp_queue.rs +++ b/parachains/runtimes/assets/westmint/src/weights/cumulus_pallet_xcmp_queue.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `cumulus_pallet_xcmp_queue` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,17 +47,27 @@ use sp_std::marker::PhantomData; /// Weight functions for `cumulus_pallet_xcmp_queue`. pub struct WeightInfo(PhantomData); impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_u32() -> Weight { - // Minimum execution time: 6_794 nanoseconds. - Weight::from_ref_time(7_190_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_844 nanoseconds. + Weight::from_ref_time(5_119_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_weight() -> Weight { - // Minimum execution time: 6_874 nanoseconds. - Weight::from_ref_time(7_085_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 5_017 nanoseconds. + Weight::from_ref_time(5_231_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/frame_system.rs b/parachains/runtimes/assets/westmint/src/weights/frame_system.rs index 25ecf209494..7e9e0ef19f0 100644 --- a/parachains/runtimes/assets/westmint/src/weights/frame_system.rs +++ b/parachains/runtimes/assets/westmint/src/weights/frame_system.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `frame_system` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -48,51 +49,81 @@ pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { /// The range of component `b` is `[0, 3932160]`. fn remark(b: u32, ) -> Weight { - // Minimum execution time: 3_637 nanoseconds. - Weight::from_ref_time(3_217_847) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_737 nanoseconds. + Weight::from_ref_time(1_780_000) + .saturating_add(Weight::from_proof_size(0)) // Standard Error: 0 - .saturating_add(Weight::from_ref_time(476).saturating_mul(b.into())) + .saturating_add(Weight::from_ref_time(368).saturating_mul(b.into())) } /// The range of component `b` is `[0, 3932160]`. fn remark_with_event(b: u32, ) -> Weight { - // Minimum execution time: 13_648 nanoseconds. - Weight::from_ref_time(137_234_405) - // Standard Error: 5 - .saturating_add(Weight::from_ref_time(1_914).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_941 nanoseconds. + Weight::from_ref_time(6_990_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 0 + .saturating_add(Weight::from_ref_time(1_716).saturating_mul(b.into())) } - // Storage: System Digest (r:1 w:1) - // Storage: unknown [0x3a686561707061676573] (r:0 w:1) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: unknown `0x3a686561707061676573` (r:0 w:1) + /// Proof Skipped: unknown `0x3a686561707061676573` (r:0 w:1) fn set_heap_pages() -> Weight { - // Minimum execution time: 8_702 nanoseconds. - Weight::from_ref_time(9_128_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `495` + // Minimum execution time: 3_697 nanoseconds. + Weight::from_ref_time(3_855_000) + .saturating_add(Weight::from_proof_size(495)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn set_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_956 nanoseconds. - Weight::from_ref_time(4_047_000) - // Standard Error: 2_247 - .saturating_add(Weight::from_ref_time(684_153).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_957 nanoseconds. + Weight::from_ref_time(2_009_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_909 + .saturating_add(Weight::from_ref_time(577_980).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn kill_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_854 nanoseconds. - Weight::from_ref_time(3_997_000) - // Standard Error: 1_031 - .saturating_add(Weight::from_ref_time(515_297).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_921 nanoseconds. + Weight::from_ref_time(1_983_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 841 + .saturating_add(Weight::from_ref_time(443_784).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `p` is `[0, 1000]`. fn kill_prefix(p: u32, ) -> Weight { - // Minimum execution time: 5_336 nanoseconds. - Weight::from_ref_time(5_624_000) - // Standard Error: 1_121 - .saturating_add(Weight::from_ref_time(1_158_048).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `84 + p * (69 ±0)` + // Estimated: `75 + p * (70 ±0)` + // Minimum execution time: 3_576 nanoseconds. + Weight::from_ref_time(3_661_000) + .saturating_add(Weight::from_proof_size(75)) + // Standard Error: 919 + .saturating_add(Weight::from_ref_time(955_752).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_proof_size(70).saturating_mul(p.into())) } } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_assets.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_assets.rs index 298d73f4d9a..189a12c05f3 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_assets.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_assets.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_assets` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,231 +47,387 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_assets`. pub struct WeightInfo(PhantomData); impl pallet_assets::WeightInfo for WeightInfo { - // Storage: Assets Asset (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn create() -> Weight { - // Minimum execution time: 28_561 nanoseconds. - Weight::from_ref_time(29_320_000) + // Proof Size summary in bytes: + // Measured: `141` + // Estimated: `5288` + // Minimum execution time: 22_825 nanoseconds. + Weight::from_ref_time(26_008_000) + .saturating_add(Weight::from_proof_size(5288)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn force_create() -> Weight { - // Minimum execution time: 17_131 nanoseconds. - Weight::from_ref_time(17_718_000) + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `2685` + // Minimum execution time: 10_898 nanoseconds. + Weight::from_ref_time(12_626_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn start_destroy() -> Weight { - // Minimum execution time: 18_538 nanoseconds. - Weight::from_ref_time(19_075_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 13_057 nanoseconds. + Weight::from_ref_time(13_932_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:0) - // Storage: System Account (r:20 w:20) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1001 w:1000) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1000 w:1000) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `c` is `[0, 1000]`. fn destroy_accounts(c: u32, ) -> Weight { - // Minimum execution time: 21_562 nanoseconds. - Weight::from_ref_time(21_938_000) - // Standard Error: 11_687 - .saturating_add(Weight::from_ref_time(14_796_709).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0 + c * (240 ±0)` + // Estimated: `5262 + c * (5180 ±0)` + // Minimum execution time: 16_823 nanoseconds. + Weight::from_ref_time(31_002_000) + .saturating_add(Weight::from_proof_size(5262)) + // Standard Error: 10_169 + .saturating_add(Weight::from_ref_time(13_922_578).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(5180).saturating_mul(c.into())) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1001 w:1000) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) /// The range of component `a` is `[0, 1000]`. fn destroy_approvals(a: u32, ) -> Weight { - // Minimum execution time: 22_365 nanoseconds. - Weight::from_ref_time(23_134_000) - // Standard Error: 6_569 - .saturating_add(Weight::from_ref_time(14_677_669).saturating_mul(a.into())) + // Proof Size summary in bytes: + // Measured: `446 + a * (86 ±0)` + // Estimated: `5308 + a * (2623 ±0)` + // Minimum execution time: 16_683 nanoseconds. + Weight::from_ref_time(16_754_000) + .saturating_add(Weight::from_proof_size(5308)) + // Standard Error: 7_193 + .saturating_add(Weight::from_ref_time(13_722_963).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into()))) + .saturating_add(Weight::from_proof_size(2623).saturating_mul(a.into())) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Metadata (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:0) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn finish_destroy() -> Weight { - // Minimum execution time: 19_068 nanoseconds. - Weight::from_ref_time(19_519_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 12_892 nanoseconds. + Weight::from_ref_time(13_218_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn mint() -> Weight { - // Minimum execution time: 31_242 nanoseconds. - Weight::from_ref_time(32_104_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5262` + // Minimum execution time: 23_073 nanoseconds. + Weight::from_ref_time(23_435_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn burn() -> Weight { - // Minimum execution time: 38_703 nanoseconds. - Weight::from_ref_time(39_612_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 29_411 nanoseconds. + Weight::from_ref_time(30_019_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 50_156 nanoseconds. - Weight::from_ref_time(51_795_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 38_929 nanoseconds. + Weight::from_ref_time(39_602_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 42_757 nanoseconds. - Weight::from_ref_time(43_539_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 34_910 nanoseconds. + Weight::from_ref_time(35_686_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 49_476 nanoseconds. - Weight::from_ref_time(51_175_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `10442` + // Minimum execution time: 38_959 nanoseconds. + Weight::from_ref_time(39_627_000) + .saturating_add(Weight::from_proof_size(10442)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn freeze() -> Weight { - // Minimum execution time: 22_523 nanoseconds. - Weight::from_ref_time(22_883_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 16_367 nanoseconds. + Weight::from_ref_time(16_761_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Account (r:1 w:1) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) fn thaw() -> Weight { - // Minimum execution time: 21_672 nanoseconds. - Weight::from_ref_time(22_761_000) + // Proof Size summary in bytes: + // Measured: `383` + // Estimated: `5262` + // Minimum execution time: 16_361 nanoseconds. + Weight::from_ref_time(18_506_000) + .saturating_add(Weight::from_proof_size(5262)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn freeze_asset() -> Weight { - // Minimum execution time: 18_476 nanoseconds. - Weight::from_ref_time(19_347_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 12_980 nanoseconds. + Weight::from_ref_time(14_272_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn thaw_asset() -> Weight { - // Minimum execution time: 18_799 nanoseconds. - Weight::from_ref_time(19_207_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `2685` + // Minimum execution time: 12_510 nanoseconds. + Weight::from_ref_time(12_996_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Metadata (r:1 w:0) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:0) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn transfer_ownership() -> Weight { - // Minimum execution time: 19_490 nanoseconds. - Weight::from_ref_time(20_249_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 13_958 nanoseconds. + Weight::from_ref_time(14_458_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn set_team() -> Weight { - // Minimum execution time: 18_616 nanoseconds. - Weight::from_ref_time(19_090_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `2685` + // Minimum execution time: 12_820 nanoseconds. + Weight::from_ref_time(13_136_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. fn set_metadata(_n: u32, s: u32, ) -> Weight { - // Minimum execution time: 31_073 nanoseconds. - Weight::from_ref_time(32_445_963) - // Standard Error: 972 - .saturating_add(Weight::from_ref_time(3_646).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `5300` + // Minimum execution time: 22_433 nanoseconds. + Weight::from_ref_time(23_664_666) + .saturating_add(Weight::from_proof_size(5300)) + // Standard Error: 648 + .saturating_add(Weight::from_ref_time(2_428).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn clear_metadata() -> Weight { - // Minimum execution time: 32_815 nanoseconds. - Weight::from_ref_time(33_816_000) + // Proof Size summary in bytes: + // Measured: `471` + // Estimated: `5300` + // Minimum execution time: 22_969 nanoseconds. + Weight::from_ref_time(23_330_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) /// The range of component `n` is `[0, 50]`. /// The range of component `s` is `[0, 50]`. - fn force_set_metadata(n: u32, s: u32, ) -> Weight { - // Minimum execution time: 18_865 nanoseconds. - Weight::from_ref_time(19_695_604) - // Standard Error: 584 - .saturating_add(Weight::from_ref_time(137).saturating_mul(n.into())) - // Standard Error: 584 - .saturating_add(Weight::from_ref_time(1_840).saturating_mul(s.into())) + fn force_set_metadata(_n: u32, s: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `82` + // Estimated: `5300` + // Minimum execution time: 11_969 nanoseconds. + Weight::from_ref_time(12_659_111) + .saturating_add(Weight::from_proof_size(5300)) + // Standard Error: 345 + .saturating_add(Weight::from_ref_time(1_879).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:0) - // Storage: Assets Metadata (r:1 w:1) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(140), added: 2615, mode: MaxEncodedLen) fn force_clear_metadata() -> Weight { - // Minimum execution time: 32_553 nanoseconds. - Weight::from_ref_time(33_416_000) + // Proof Size summary in bytes: + // Measured: `471` + // Estimated: `5300` + // Minimum execution time: 23_002 nanoseconds. + Weight::from_ref_time(23_320_000) + .saturating_add(Weight::from_proof_size(5300)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) fn force_asset_status() -> Weight { - // Minimum execution time: 18_165 nanoseconds. - Weight::from_ref_time(18_626_000) + // Proof Size summary in bytes: + // Measured: `275` + // Estimated: `2685` + // Minimum execution time: 11_994 nanoseconds. + Weight::from_ref_time(12_256_000) + .saturating_add(Weight::from_proof_size(2685)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn approve_transfer() -> Weight { - // Minimum execution time: 34_944 nanoseconds. - Weight::from_ref_time(36_332_000) + // Proof Size summary in bytes: + // Measured: `309` + // Estimated: `5308` + // Minimum execution time: 26_321 nanoseconds. + Weight::from_ref_time(26_867_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) - // Storage: Assets Account (r:2 w:2) - // Storage: System Account (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) + /// Storage: Assets Account (r:2 w:2) + /// Proof: Assets Account (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_approved() -> Weight { - // Minimum execution time: 65_019 nanoseconds. - Weight::from_ref_time(67_234_000) + // Proof Size summary in bytes: + // Measured: `553` + // Estimated: `13065` + // Minimum execution time: 52_855 nanoseconds. + Weight::from_ref_time(54_006_000) + .saturating_add(Weight::from_proof_size(13065)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn cancel_approval() -> Weight { - // Minimum execution time: 37_173 nanoseconds. - Weight::from_ref_time(38_731_000) + // Proof Size summary in bytes: + // Measured: `479` + // Estimated: `5308` + // Minimum execution time: 28_148 nanoseconds. + Weight::from_ref_time(28_416_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Approvals (r:1 w:1) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(210), added: 2685, mode: MaxEncodedLen) + /// Storage: Assets Approvals (r:1 w:1) + /// Proof: Assets Approvals (max_values: None, max_size: Some(148), added: 2623, mode: MaxEncodedLen) fn force_cancel_approval() -> Weight { - // Minimum execution time: 37_722 nanoseconds. - Weight::from_ref_time(38_515_000) + // Proof Size summary in bytes: + // Measured: `479` + // Estimated: `5308` + // Minimum execution time: 28_456 nanoseconds. + Weight::from_ref_time(28_913_000) + .saturating_add(Weight::from_proof_size(5308)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_balances.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_balances.rs index a67e99a774d..b01befcc16d 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_balances.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_balances.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_balances` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,52 +47,87 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 45_252 nanoseconds. - Weight::from_ref_time(46_105_000) + // Proof Size summary in bytes: + // Measured: `1177` + // Estimated: `2603` + // Minimum execution time: 45_988 nanoseconds. + Weight::from_ref_time(46_507_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 33_833 nanoseconds. - Weight::from_ref_time(34_564_000) + // Proof Size summary in bytes: + // Measured: `1061` + // Estimated: `2603` + // Minimum execution time: 34_574 nanoseconds. + Weight::from_ref_time(35_575_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_creating() -> Weight { - // Minimum execution time: 23_543 nanoseconds. - Weight::from_ref_time(24_157_000) + // Proof Size summary in bytes: + // Measured: `1173` + // Estimated: `2603` + // Minimum execution time: 25_859 nanoseconds. + Weight::from_ref_time(26_467_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_killing() -> Weight { - // Minimum execution time: 26_733 nanoseconds. - Weight::from_ref_time(27_291_000) + // Proof Size summary in bytes: + // Measured: `1173` + // Estimated: `2603` + // Minimum execution time: 28_563 nanoseconds. + Weight::from_ref_time(29_082_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:2 w:2) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 44_122 nanoseconds. - Weight::from_ref_time(45_161_000) + // Proof Size summary in bytes: + // Measured: `1173` + // Estimated: `5206` + // Minimum execution time: 45_594 nanoseconds. + Weight::from_ref_time(46_296_000) + .saturating_add(Weight::from_proof_size(5206)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_all() -> Weight { - // Minimum execution time: 39_525 nanoseconds. - Weight::from_ref_time(41_049_000) + // Proof Size summary in bytes: + // Measured: `1061` + // Estimated: `2603` + // Minimum execution time: 40_085 nanoseconds. + Weight::from_ref_time(40_675_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_unreserve() -> Weight { - // Minimum execution time: 20_724 nanoseconds. - Weight::from_ref_time(21_226_000) + // Proof Size summary in bytes: + // Measured: `1057` + // Estimated: `2603` + // Minimum execution time: 22_208 nanoseconds. + Weight::from_ref_time(22_815_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_collator_selection.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_collator_selection.rs index bd035982a43..e1ea6d9def4 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_collator_selection.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_collator_selection.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_collator_selection` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,79 +47,131 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_collator_selection`. pub struct WeightInfo(PhantomData); impl pallet_collator_selection::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Storage: Session NextKeys (r:100 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) /// The range of component `b` is `[1, 100]`. fn set_invulnerables(b: u32, ) -> Weight { - // Minimum execution time: 20_363 nanoseconds. - Weight::from_ref_time(19_905_046) - // Standard Error: 3_970 - .saturating_add(Weight::from_ref_time(2_826_759).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `178 + b * (78 ±0)` + // Estimated: `178 + b * (2554 ±0)` + // Minimum execution time: 13_864 nanoseconds. + Weight::from_ref_time(14_046_919) + .saturating_add(Weight::from_proof_size(178)) + // Standard Error: 4_684 + .saturating_add(Weight::from_ref_time(2_474_689).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(2554).saturating_mul(b.into())) } - // Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn set_desired_candidates() -> Weight { - // Minimum execution time: 13_652 nanoseconds. - Weight::from_ref_time(14_141_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_556 nanoseconds. + Weight::from_ref_time(6_751_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) fn set_candidacy_bond() -> Weight { - // Minimum execution time: 13_740 nanoseconds. - Weight::from_ref_time(14_323_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_816 nanoseconds. + Weight::from_ref_time(7_009_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection DesiredCandidates (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection CandidacyBond (r:1 w:0) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection DesiredCandidates (r:1 w:0) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Session NextKeys (r:1 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection CandidacyBond (r:1 w:0) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[1, 999]`. fn register_as_candidate(c: u32, ) -> Weight { - // Minimum execution time: 44_874 nanoseconds. - Weight::from_ref_time(53_679_512) - // Standard Error: 1_294 - .saturating_add(Weight::from_ref_time(118_103).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `1171 + c * (48 ±0)` + // Estimated: `56784 + c * (49 ±0)` + // Minimum execution time: 35_423 nanoseconds. + Weight::from_ref_time(27_578_125) + .saturating_add(Weight::from_proof_size(56784)) + // Standard Error: 1_255 + .saturating_add(Weight::from_ref_time(105_521).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_proof_size(49).saturating_mul(c.into())) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[2, 1000]`. fn leave_intent(c: u32, ) -> Weight { - // Minimum execution time: 32_112 nanoseconds. - Weight::from_ref_time(24_014_112) - // Standard Error: 3_062 - .saturating_add(Weight::from_ref_time(160_747).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `541 + c * (48 ±0)` + // Estimated: `48497` + // Minimum execution time: 24_550 nanoseconds. + Weight::from_ref_time(15_908_548) + .saturating_add(Weight::from_proof_size(48497)) + // Standard Error: 1_238 + .saturating_add(Weight::from_ref_time(105_175).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:2 w:2) - // Storage: System BlockWeight (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) fn note_author() -> Weight { - // Minimum execution time: 34_535 nanoseconds. - Weight::from_ref_time(36_232_000) + // Proof Size summary in bytes: + // Measured: `135` + // Estimated: `5749` + // Minimum execution time: 25_675 nanoseconds. + Weight::from_ref_time(26_392_000) + .saturating_add(Weight::from_proof_size(5749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:1000 w:1) - // Storage: System Account (r:1 w:1) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: System BlockWeight (r:1 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:0) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:999 w:0) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: System Account (r:999 w:999) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `r` is `[1, 1000]`. /// The range of component `c` is `[1, 1000]`. - fn new_session(_r: u32, c: u32, ) -> Weight { - // Minimum execution time: 21_891 nanoseconds. - Weight::from_ref_time(22_962_000) - // Standard Error: 831_715 - .saturating_add(Weight::from_ref_time(30_540_729).saturating_mul(c.into())) + fn new_session(r: u32, c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `22756 + r * (148 ±0) + c * (97 ±0)` + // Estimated: `52737 + c * (2519 ±0) + r * (2603 ±0)` + // Minimum execution time: 16_612 nanoseconds. + Weight::from_ref_time(16_892_000) + .saturating_add(Weight::from_proof_size(52737)) + // Standard Error: 755_441 + .saturating_add(Weight::from_ref_time(27_658_379).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(2519).saturating_mul(c.into())) + .saturating_add(Weight::from_proof_size(2603).saturating_mul(r.into())) } } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_multisig.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_multisig.rs index d3338e200fe..61cd280d66b 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_multisig.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_multisig.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_multisig` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -48,80 +49,113 @@ pub struct WeightInfo(PhantomData); impl pallet_multisig::WeightInfo for WeightInfo { /// The range of component `z` is `[0, 10000]`. fn as_multi_threshold_1(z: u32, ) -> Weight { - // Minimum execution time: 17_386 nanoseconds. - Weight::from_ref_time(19_544_902) - // Standard Error: 15 - .saturating_add(Weight::from_ref_time(627).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 11_762 nanoseconds. + Weight::from_ref_time(12_267_870) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1 + .saturating_add(Weight::from_ref_time(493).saturating_mul(z.into())) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_create(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 50_220 nanoseconds. - Weight::from_ref_time(35_847_005) - // Standard Error: 2_973 - .saturating_add(Weight::from_ref_time(184_472).saturating_mul(s.into())) - // Standard Error: 29 - .saturating_add(Weight::from_ref_time(2_120).saturating_mul(z.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `311 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 35_352 nanoseconds. + Weight::from_ref_time(28_499_037) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 1_231 + .saturating_add(Weight::from_ref_time(73_158).saturating_mul(s.into())) + // Standard Error: 12 + .saturating_add(Weight::from_ref_time(1_528).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[3, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_approve(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 37_608 nanoseconds. - Weight::from_ref_time(29_930_547) - // Standard Error: 2_348 - .saturating_add(Weight::from_ref_time(122_908).saturating_mul(s.into())) - // Standard Error: 23 - .saturating_add(Weight::from_ref_time(1_861).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 26_412 nanoseconds. + Weight::from_ref_time(20_296_722) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 402 + .saturating_add(Weight::from_ref_time(67_954).saturating_mul(s.into())) + // Standard Error: 3 + .saturating_add(Weight::from_ref_time(1_495).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_complete(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 55_461 nanoseconds. - Weight::from_ref_time(38_532_740) - // Standard Error: 3_180 - .saturating_add(Weight::from_ref_time(225_534).saturating_mul(s.into())) - // Standard Error: 31 - .saturating_add(Weight::from_ref_time(2_073).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `448 + s * (33 ±0)` + // Estimated: `8424` + // Minimum execution time: 39_936 nanoseconds. + Weight::from_ref_time(31_699_007) + .saturating_add(Weight::from_proof_size(8424)) + // Standard Error: 632 + .saturating_add(Weight::from_ref_time(90_100).saturating_mul(s.into())) + // Standard Error: 6 + .saturating_add(Weight::from_ref_time(1_544).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_create(s: u32, ) -> Weight { - // Minimum execution time: 34_111 nanoseconds. - Weight::from_ref_time(37_647_140) - // Standard Error: 2_983 - .saturating_add(Weight::from_ref_time(156_872).saturating_mul(s.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `318 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 25_146 nanoseconds. + Weight::from_ref_time(26_857_601) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 669 + .saturating_add(Weight::from_ref_time(76_520).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_approve(s: u32, ) -> Weight { - // Minimum execution time: 24_122 nanoseconds. - Weight::from_ref_time(26_189_399) - // Standard Error: 2_483 - .saturating_add(Weight::from_ref_time(146_685).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 17_187 nanoseconds. + Weight::from_ref_time(18_410_072) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 491 + .saturating_add(Weight::from_ref_time(72_318).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn cancel_as_multi(s: u32, ) -> Weight { - // Minimum execution time: 33_607 nanoseconds. - Weight::from_ref_time(37_851_646) - // Standard Error: 3_163 - .saturating_add(Weight::from_ref_time(155_120).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `517 + s * (1 ±0)` + // Estimated: `5821` + // Minimum execution time: 25_956 nanoseconds. + Weight::from_ref_time(28_043_929) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 830 + .saturating_add(Weight::from_ref_time(80_119).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_nfts.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_nfts.rs index e4864b8196b..0ba3146782b 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_nfts.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_nfts.rs @@ -17,12 +17,13 @@ //! Autogenerated weights for `pallet_nfts` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-04, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `Jegors-MBP.lan`, CPU: `` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: -// ./target/release/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet // --chain=westmint-dev @@ -46,381 +47,727 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_nfts`. pub struct WeightInfo(PhantomData); impl pallet_nfts::WeightInfo for WeightInfo { - // Storage: Nfts NextCollectionId (r:1 w:1) - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionRoleOf (r:0 w:1) - // Storage: Nfts CollectionConfigOf (r:0 w:1) - // Storage: Nfts CollectionAccount (r:0 w:1) + /// Storage: Nfts NextCollectionId (r:1 w:1) + /// Proof: Nfts NextCollectionId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:0 w:1) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:0 w:1) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts CollectionAccount (r:0 w:1) + /// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn create() -> Weight { - // Minimum execution time: 37_000 nanoseconds. - Weight::from_ref_time(38_000_000) + // Proof Size summary in bytes: + // Measured: `177` + // Estimated: `3054` + // Minimum execution time: 30_978 nanoseconds. + Weight::from_ref_time(31_489_000) + .saturating_add(Weight::from_proof_size(3054)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: Nfts NextCollectionId (r:1 w:1) - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionRoleOf (r:0 w:1) - // Storage: Nfts CollectionConfigOf (r:0 w:1) - // Storage: Nfts CollectionAccount (r:0 w:1) + /// Storage: Nfts NextCollectionId (r:1 w:1) + /// Proof: Nfts NextCollectionId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:0 w:1) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:0 w:1) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts CollectionAccount (r:0 w:1) + /// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn force_create() -> Weight { - // Minimum execution time: 26_000 nanoseconds. - Weight::from_ref_time(26_000_000) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `3054` + // Minimum execution time: 20_101 nanoseconds. + Weight::from_ref_time(20_488_000) + .saturating_add(Weight::from_proof_size(3054)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts Item (r:1001 w:1000) - // Storage: Nfts Attribute (r:1001 w:1000) - // Storage: Nfts ItemMetadataOf (r:0 w:1000) - // Storage: Nfts CollectionRoleOf (r:0 w:1) - // Storage: Nfts CollectionMetadataOf (r:0 w:1) - // Storage: Nfts CollectionConfigOf (r:0 w:1) - // Storage: Nfts ItemConfigOf (r:0 w:1000) - // Storage: Nfts Account (r:0 w:1000) - // Storage: Nfts CollectionAccount (r:0 w:1) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts Item (r:1001 w:1000) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts ItemMetadataOf (r:1001 w:1000) + /// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen) + /// Storage: Nfts Attribute (r:1001 w:1000) + /// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:0 w:1) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts CollectionMetadataOf (r:0 w:1) + /// Proof: Nfts CollectionMetadataOf (max_values: None, max_size: Some(166), added: 2641, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:0 w:1) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:0 w:1000) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Nfts Account (r:0 w:1000) + /// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Nfts CollectionAccount (r:0 w:1) + /// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) /// The range of component `n` is `[0, 1000]`. /// The range of component `m` is `[0, 1000]`. /// The range of component `a` is `[0, 1000]`. - fn destroy(n: u32, m: u32, a: u32, ) -> Weight { - // Minimum execution time: 21_464_000 nanoseconds. - Weight::from_ref_time(17_877_474_846) - // Standard Error: 113_501 - .saturating_add(Weight::from_ref_time(1_677_234).saturating_mul(n.into())) - // Standard Error: 113_501 - .saturating_add(Weight::from_ref_time(2_499_409).saturating_mul(m.into())) - // Standard Error: 113_501 - .saturating_add(Weight::from_ref_time(9_962_607).saturating_mul(a.into())) - .saturating_add(T::DbWeight::get().reads(1003)) + fn destroy(_n: u32, m: u32, a: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `172673 + m * (206 ±0) + a * (210 ±0)` + // Estimated: `3347314 + m * (2694 ±0) + a * (2729 ±0)` + // Minimum execution time: 23_505_821 nanoseconds. + Weight::from_ref_time(16_948_157_713) + .saturating_add(Weight::from_proof_size(3347314)) + // Standard Error: 20_494 + .saturating_add(Weight::from_ref_time(7_059_571).saturating_mul(m.into())) + // Standard Error: 20_494 + .saturating_add(Weight::from_ref_time(8_471_367).saturating_mul(a.into())) + .saturating_add(T::DbWeight::get().reads(1004)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into()))) .saturating_add(T::DbWeight::get().writes(3005)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into()))) - } - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts Item (r:1 w:1) - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionRoleOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:1) - // Storage: Nfts Account (r:0 w:1) + .saturating_add(Weight::from_proof_size(2694).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(2729).saturating_mul(a.into())) + } + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:1) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Nfts Account (r:0 w:1) + /// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) fn mint() -> Weight { - // Minimum execution time: 47_000 nanoseconds. - Weight::from_ref_time(51_000_000) + // Proof Size summary in bytes: + // Measured: `448` + // Estimated: `13506` + // Minimum execution time: 39_850 nanoseconds. + Weight::from_ref_time(40_227_000) + .saturating_add(Weight::from_proof_size(13506)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Nfts CollectionRoleOf (r:1 w:0) - // Storage: Nfts Item (r:1 w:1) - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:1) - // Storage: Nfts Account (r:0 w:1) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:1) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Nfts Account (r:0 w:1) + /// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) fn force_mint() -> Weight { - // Minimum execution time: 47_000 nanoseconds. - Weight::from_ref_time(49_000_000) + // Proof Size summary in bytes: + // Measured: `448` + // Estimated: `13506` + // Minimum execution time: 40_379 nanoseconds. + Weight::from_ref_time(41_110_000) + .saturating_add(Weight::from_proof_size(13506)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts Item (r:1 w:1) - // Storage: Nfts CollectionRoleOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:1) - // Storage: Nfts Account (r:0 w:1) - // Storage: Nfts ItemPriceOf (r:0 w:1) - // Storage: Nfts ItemAttributesApprovalsOf (r:0 w:1) - // Storage: Nfts PendingSwapOf (r:0 w:1) + /// Storage: Nfts ItemConfigOf (r:1 w:1) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts ItemMetadataOf (r:1 w:0) + /// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen) + /// Storage: Nfts Account (r:0 w:1) + /// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Nfts ItemPriceOf (r:0 w:1) + /// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: Nfts ItemAttributesApprovalsOf (r:0 w:1) + /// Proof: Nfts ItemAttributesApprovalsOf (max_values: None, max_size: Some(1001), added: 3476, mode: MaxEncodedLen) + /// Storage: Nfts PendingSwapOf (r:0 w:1) + /// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen) fn burn() -> Weight { - // Minimum execution time: 49_000 nanoseconds. - Weight::from_ref_time(52_000_000) - .saturating_add(T::DbWeight::get().reads(4)) + // Proof Size summary in bytes: + // Measured: `647` + // Estimated: `13652` + // Minimum execution time: 43_534 nanoseconds. + Weight::from_ref_time(43_846_000) + .saturating_add(Weight::from_proof_size(13652)) + .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(7)) } - // Storage: Nfts Collection (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:0) - // Storage: Nfts Item (r:1 w:1) - // Storage: Nfts CollectionRoleOf (r:1 w:0) - // Storage: System Account (r:1 w:1) - // Storage: Nfts Account (r:0 w:2) - // Storage: Nfts ItemPriceOf (r:0 w:1) - // Storage: Nfts PendingSwapOf (r:0 w:1) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:0) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Nfts Account (r:0 w:2) + /// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Nfts ItemPriceOf (r:0 w:1) + /// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: Nfts PendingSwapOf (r:0 w:1) + /// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 55_000 nanoseconds. - Weight::from_ref_time(56_000_000) + // Proof Size summary in bytes: + // Measured: `811` + // Estimated: `16109` + // Minimum execution time: 49_184 nanoseconds. + Weight::from_ref_time(49_935_000) + .saturating_add(Weight::from_proof_size(16109)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) } - // Storage: Nfts Collection (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts Item (r:102 w:102) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts Item (r:5000 w:5000) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) /// The range of component `i` is `[0, 5000]`. fn redeposit(i: u32, ) -> Weight { - // Minimum execution time: 19_000 nanoseconds. - Weight::from_ref_time(20_000_000) - // Standard Error: 31_499 - .saturating_add(Weight::from_ref_time(14_469_164).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `756 + i * (140 ±0)` + // Estimated: `5103 + i * (3336 ±0)` + // Minimum execution time: 15_668 nanoseconds. + Weight::from_ref_time(15_762_000) + .saturating_add(Weight::from_proof_size(5103)) + // Standard Error: 12_791 + .saturating_add(Weight::from_ref_time(12_224_567).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(i.into()))) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) + .saturating_add(Weight::from_proof_size(3336).saturating_mul(i.into())) } - // Storage: Nfts CollectionRoleOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:1) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:1) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) fn lock_item_transfer() -> Weight { - // Minimum execution time: 22_000 nanoseconds. - Weight::from_ref_time(23_000_000) + // Proof Size summary in bytes: + // Measured: `401` + // Estimated: `5067` + // Minimum execution time: 18_861 nanoseconds. + Weight::from_ref_time(19_195_000) + .saturating_add(Weight::from_proof_size(5067)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts CollectionRoleOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:1) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:1) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) fn unlock_item_transfer() -> Weight { - // Minimum execution time: 22_000 nanoseconds. - Weight::from_ref_time(22_000_000) + // Proof Size summary in bytes: + // Measured: `401` + // Estimated: `5067` + // Minimum execution time: 18_710 nanoseconds. + Weight::from_ref_time(18_971_000) + .saturating_add(Weight::from_proof_size(5067)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts CollectionRoleOf (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:1) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:1) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) fn lock_collection() -> Weight { - // Minimum execution time: 20_000 nanoseconds. - Weight::from_ref_time(21_000_000) + // Proof Size summary in bytes: + // Measured: `289` + // Estimated: `5092` + // Minimum execution time: 17_067 nanoseconds. + Weight::from_ref_time(17_233_000) + .saturating_add(Weight::from_proof_size(5092)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts OwnershipAcceptance (r:1 w:1) - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionAccount (r:0 w:2) + /// Storage: Nfts OwnershipAcceptance (r:1 w:1) + /// Proof: Nfts OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionAccount (r:0 w:2) + /// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn transfer_ownership() -> Weight { - // Minimum execution time: 25_000 nanoseconds. - Weight::from_ref_time(26_000_000) + // Proof Size summary in bytes: + // Measured: `381` + // Estimated: `5082` + // Minimum execution time: 21_203 nanoseconds. + Weight::from_ref_time(21_468_000) + .saturating_add(Weight::from_proof_size(5082)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionRoleOf (r:0 w:4) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:0 w:4) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) fn set_team() -> Weight { - // Minimum execution time: 27_000 nanoseconds. - Weight::from_ref_time(28_000_000) + // Proof Size summary in bytes: + // Measured: `362` + // Estimated: `2555` + // Minimum execution time: 24_304 nanoseconds. + Weight::from_ref_time(24_823_000) + .saturating_add(Weight::from_proof_size(2555)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionAccount (r:0 w:2) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionAccount (r:0 w:2) + /// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn force_collection_owner() -> Weight { - // Minimum execution time: 20_000 nanoseconds. - Weight::from_ref_time(21_000_000) + // Proof Size summary in bytes: + // Measured: `304` + // Estimated: `2555` + // Minimum execution time: 17_173 nanoseconds. + Weight::from_ref_time(17_448_000) + .saturating_add(Weight::from_proof_size(2555)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: Nfts Collection (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:0 w:1) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:0 w:1) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) fn force_collection_config() -> Weight { - // Minimum execution time: 17_000 nanoseconds. - Weight::from_ref_time(18_000_000) + // Proof Size summary in bytes: + // Measured: `242` + // Estimated: `2555` + // Minimum execution time: 13_697 nanoseconds. + Weight::from_ref_time(13_924_000) + .saturating_add(Weight::from_proof_size(2555)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Collection (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:1) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:1) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) fn lock_item_properties() -> Weight { - // Minimum execution time: 20_000 nanoseconds. - Weight::from_ref_time(22_000_000) + // Proof Size summary in bytes: + // Measured: `445` + // Estimated: `5078` + // Minimum execution time: 18_063 nanoseconds. + Weight::from_ref_time(18_438_000) + .saturating_add(Weight::from_proof_size(5078)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:0) - // Storage: Nfts Attribute (r:1 w:1) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:0) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Nfts Attribute (r:1 w:1) + /// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen) fn set_attribute() -> Weight { - // Minimum execution time: 45_000 nanoseconds. - Weight::from_ref_time(46_000_000) + // Proof Size summary in bytes: + // Measured: `474` + // Estimated: `10355` + // Minimum execution time: 37_582 nanoseconds. + Weight::from_ref_time(38_155_000) + .saturating_add(Weight::from_proof_size(10355)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts Attribute (r:1 w:1) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts Attribute (r:1 w:1) + /// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen) fn force_set_attribute() -> Weight { - // Minimum execution time: 27_000 nanoseconds. - Weight::from_ref_time(28_000_000) + // Proof Size summary in bytes: + // Measured: `337` + // Estimated: `5284` + // Minimum execution time: 24_392 nanoseconds. + Weight::from_ref_time(24_787_000) + .saturating_add(Weight::from_proof_size(5284)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Nfts Attribute (r:1 w:1) - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts ItemConfigOf (r:1 w:0) + /// Storage: Nfts Attribute (r:1 w:1) + /// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:0) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) fn clear_attribute() -> Weight { - // Minimum execution time: 40_000 nanoseconds. - Weight::from_ref_time(42_000_000) + // Proof Size summary in bytes: + // Measured: `724` + // Estimated: `7807` + // Minimum execution time: 34_564 nanoseconds. + Weight::from_ref_time(34_956_000) + .saturating_add(Weight::from_proof_size(7807)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Nfts Item (r:1 w:0) - // Storage: Nfts ItemAttributesApprovalsOf (r:1 w:1) + /// Storage: Nfts Item (r:1 w:0) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts ItemAttributesApprovalsOf (r:1 w:1) + /// Proof: Nfts ItemAttributesApprovalsOf (max_values: None, max_size: Some(1001), added: 3476, mode: MaxEncodedLen) fn approve_item_attributes() -> Weight { - // Minimum execution time: 21_000 nanoseconds. - Weight::from_ref_time(21_000_000) + // Proof Size summary in bytes: + // Measured: `379` + // Estimated: `6812` + // Minimum execution time: 17_194 nanoseconds. + Weight::from_ref_time(17_467_000) + .saturating_add(Weight::from_proof_size(6812)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Item (r:1 w:0) - // Storage: Nfts ItemAttributesApprovalsOf (r:1 w:1) - // Storage: Nfts Attribute (r:1 w:0) - // Storage: System Account (r:1 w:1) + /// Storage: Nfts Item (r:1 w:0) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts ItemAttributesApprovalsOf (r:1 w:1) + /// Proof: Nfts ItemAttributesApprovalsOf (max_values: None, max_size: Some(1001), added: 3476, mode: MaxEncodedLen) + /// Storage: Nfts Attribute (r:1001 w:1000) + /// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `n` is `[0, 1000]`. fn cancel_item_attributes_approval(n: u32, ) -> Weight { - // Minimum execution time: 28_000 nanoseconds. - Weight::from_ref_time(29_000_000) - // Standard Error: 28_180 - .saturating_add(Weight::from_ref_time(8_101_928).saturating_mul(n.into())) + // Proof Size summary in bytes: + // Measured: `828 + n * (204 ±0)` + // Estimated: `12144 + n * (2729 ±0)` + // Minimum execution time: 25_617 nanoseconds. + Weight::from_ref_time(25_917_000) + .saturating_add(Weight::from_proof_size(12144)) + // Standard Error: 5_524 + .saturating_add(Weight::from_ref_time(7_538_893).saturating_mul(n.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes(2)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(n.into()))) - } - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts ItemConfigOf (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts ItemMetadataOf (r:1 w:1) + .saturating_add(Weight::from_proof_size(2729).saturating_mul(n.into())) + } + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:0) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts ItemMetadataOf (r:1 w:1) + /// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen) fn set_metadata() -> Weight { - // Minimum execution time: 39_000 nanoseconds. - Weight::from_ref_time(40_000_000) + // Proof Size summary in bytes: + // Measured: `474` + // Estimated: `10320` + // Minimum execution time: 32_053 nanoseconds. + Weight::from_ref_time(32_510_000) + .saturating_add(Weight::from_proof_size(10320)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts ItemConfigOf (r:1 w:0) - // Storage: Nfts ItemMetadataOf (r:1 w:1) + /// Storage: Nfts ItemMetadataOf (r:1 w:1) + /// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:0) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) fn clear_metadata() -> Weight { - // Minimum execution time: 37_000 nanoseconds. - Weight::from_ref_time(38_000_000) + // Proof Size summary in bytes: + // Measured: `688` + // Estimated: `7772` + // Minimum execution time: 30_654 nanoseconds. + Weight::from_ref_time(31_113_000) + .saturating_add(Weight::from_proof_size(7772)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts Collection (r:1 w:1) - // Storage: Nfts CollectionMetadataOf (r:1 w:1) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionMetadataOf (r:1 w:1) + /// Proof: Nfts CollectionMetadataOf (max_values: None, max_size: Some(166), added: 2641, mode: MaxEncodedLen) fn set_collection_metadata() -> Weight { - // Minimum execution time: 34_000 nanoseconds. - Weight::from_ref_time(36_000_000) + // Proof Size summary in bytes: + // Measured: `333` + // Estimated: `7744` + // Minimum execution time: 27_700 nanoseconds. + Weight::from_ref_time(28_291_000) + .saturating_add(Weight::from_proof_size(7744)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Nfts Collection (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts CollectionMetadataOf (r:1 w:1) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts CollectionMetadataOf (r:1 w:1) + /// Proof: Nfts CollectionMetadataOf (max_values: None, max_size: Some(166), added: 2641, mode: MaxEncodedLen) fn clear_collection_metadata() -> Weight { - // Minimum execution time: 34_000 nanoseconds. - Weight::from_ref_time(36_000_000) + // Proof Size summary in bytes: + // Measured: `555` + // Estimated: `7744` + // Minimum execution time: 27_483 nanoseconds. + Weight::from_ref_time(27_830_000) + .saturating_add(Weight::from_proof_size(7744)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Item (r:1 w:1) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) fn approve_transfer() -> Weight { - // Minimum execution time: 26_000 nanoseconds. - Weight::from_ref_time(27_000_000) + // Proof Size summary in bytes: + // Measured: `466` + // Estimated: `8428` + // Minimum execution time: 23_623 nanoseconds. + Weight::from_ref_time(24_282_000) + .saturating_add(Weight::from_proof_size(8428)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Item (r:1 w:1) - // Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) fn cancel_approval() -> Weight { - // Minimum execution time: 24_000 nanoseconds. - Weight::from_ref_time(25_000_000) + // Proof Size summary in bytes: + // Measured: `474` + // Estimated: `5880` + // Minimum execution time: 21_115 nanoseconds. + Weight::from_ref_time(22_036_000) + .saturating_add(Weight::from_proof_size(5880)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Item (r:1 w:1) - // Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts CollectionRoleOf (r:1 w:0) + /// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen) fn clear_all_transfer_approvals() -> Weight { - // Minimum execution time: 24_000 nanoseconds. - Weight::from_ref_time(25_000_000) + // Proof Size summary in bytes: + // Measured: `474` + // Estimated: `5880` + // Minimum execution time: 20_352 nanoseconds. + Weight::from_ref_time(20_627_000) + .saturating_add(Weight::from_proof_size(5880)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts OwnershipAcceptance (r:1 w:1) + /// Storage: Nfts OwnershipAcceptance (r:1 w:1) + /// Proof: Nfts OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) fn set_accept_ownership() -> Weight { - // Minimum execution time: 20_000 nanoseconds. - Weight::from_ref_time(22_000_000) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `2527` + // Minimum execution time: 14_427 nanoseconds. + Weight::from_ref_time(15_169_000) + .saturating_add(Weight::from_proof_size(2527)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts CollectionConfigOf (r:1 w:1) - // Storage: Nfts Collection (r:1 w:0) + /// Storage: Nfts CollectionConfigOf (r:1 w:1) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) fn set_collection_max_supply() -> Weight { - // Minimum execution time: 22_000 nanoseconds. - Weight::from_ref_time(23_000_000) + // Proof Size summary in bytes: + // Measured: `333` + // Estimated: `5103` + // Minimum execution time: 18_049 nanoseconds. + Weight::from_ref_time(18_431_000) + .saturating_add(Weight::from_proof_size(5103)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Collection (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:1) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:1) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) fn update_mint_settings() -> Weight { - // Minimum execution time: 20_000 nanoseconds. - Weight::from_ref_time(21_000_000) + // Proof Size summary in bytes: + // Measured: `333` + // Estimated: `5103` + // Minimum execution time: 17_166 nanoseconds. + Weight::from_ref_time(17_511_000) + .saturating_add(Weight::from_proof_size(5103)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Item (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:0) - // Storage: Nfts ItemPriceOf (r:0 w:1) + /// Storage: Nfts Item (r:1 w:0) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:0) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: Nfts ItemPriceOf (r:0 w:1) + /// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn set_price() -> Weight { - // Minimum execution time: 25_000 nanoseconds. - Weight::from_ref_time(26_000_000) + // Proof Size summary in bytes: + // Measured: `516` + // Estimated: `8407` + // Minimum execution time: 22_556 nanoseconds. + Weight::from_ref_time(22_839_000) + .saturating_add(Weight::from_proof_size(8407)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Item (r:1 w:1) - // Storage: Nfts ItemPriceOf (r:1 w:1) - // Storage: Nfts Collection (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:1 w:0) - // Storage: System Account (r:1 w:1) - // Storage: Nfts Account (r:0 w:2) - // Storage: Nfts PendingSwapOf (r:0 w:1) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts ItemPriceOf (r:1 w:1) + /// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:0) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Nfts Account (r:0 w:2) + /// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Nfts PendingSwapOf (r:0 w:1) + /// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen) fn buy_item() -> Weight { - // Minimum execution time: 60_000 nanoseconds. - Weight::from_ref_time(62_000_000) + // Proof Size summary in bytes: + // Measured: `897` + // Estimated: `16129` + // Minimum execution time: 53_554 nanoseconds. + Weight::from_ref_time(54_285_000) + .saturating_add(Weight::from_proof_size(16129)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(6)) } /// The range of component `n` is `[0, 10]`. fn pay_tips(n: u32, ) -> Weight { - // Minimum execution time: 3_000 nanoseconds. - Weight::from_ref_time(7_424_228) - // Standard Error: 21_679 - .saturating_add(Weight::from_ref_time(4_176_055).saturating_mul(n.into())) - } - // Storage: Nfts Item (r:2 w:0) - // Storage: Nfts PendingSwapOf (r:0 w:1) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_031 nanoseconds. + Weight::from_ref_time(3_579_973) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 8_727 + .saturating_add(Weight::from_ref_time(3_165_511).saturating_mul(n.into())) + } + /// Storage: Nfts Item (r:2 w:0) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts PendingSwapOf (r:0 w:1) + /// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen) fn create_swap() -> Weight { - // Minimum execution time: 23_000 nanoseconds. - Weight::from_ref_time(24_000_000) + // Proof Size summary in bytes: + // Measured: `524` + // Estimated: `6672` + // Minimum execution time: 20_161 nanoseconds. + Weight::from_ref_time(20_487_000) + .saturating_add(Weight::from_proof_size(6672)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts PendingSwapOf (r:1 w:1) - // Storage: Nfts Item (r:1 w:0) + /// Storage: Nfts PendingSwapOf (r:1 w:1) + /// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen) + /// Storage: Nfts Item (r:1 w:0) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) fn cancel_swap() -> Weight { - // Minimum execution time: 26_000 nanoseconds. - Weight::from_ref_time(27_000_000) + // Proof Size summary in bytes: + // Measured: `511` + // Estimated: `5882` + // Minimum execution time: 19_470 nanoseconds. + Weight::from_ref_time(19_832_000) + .saturating_add(Weight::from_proof_size(5882)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Nfts Item (r:2 w:2) - // Storage: Nfts PendingSwapOf (r:1 w:2) - // Storage: Nfts Collection (r:1 w:0) - // Storage: Nfts CollectionConfigOf (r:1 w:0) - // Storage: Nfts ItemConfigOf (r:2 w:0) - // Storage: System Account (r:1 w:1) - // Storage: Nfts Account (r:0 w:4) - // Storage: Nfts ItemPriceOf (r:0 w:2) + /// Storage: Nfts Item (r:2 w:2) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts PendingSwapOf (r:1 w:2) + /// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:0) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:2 w:0) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Nfts Account (r:0 w:4) + /// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Nfts ItemPriceOf (r:0 w:2) + /// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn claim_swap() -> Weight { - // Minimum execution time: 87_000 nanoseconds. - Weight::from_ref_time(90_000_000) + // Proof Size summary in bytes: + // Measured: `1026` + // Estimated: `21970` + // Minimum execution time: 78_114 nanoseconds. + Weight::from_ref_time(79_459_000) + .saturating_add(Weight::from_proof_size(21970)) .saturating_add(T::DbWeight::get().reads(8)) .saturating_add(T::DbWeight::get().writes(11)) } + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts Item (r:1 w:1) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts ItemConfigOf (r:1 w:1) + /// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Nfts Attribute (r:10 w:10) + /// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen) + /// Storage: Nfts ItemMetadataOf (r:1 w:1) + /// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen) + /// Storage: Nfts Account (r:0 w:1) + /// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// The range of component `n` is `[0, 10]`. + fn mint_pre_signed(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `525` + // Estimated: `16259 + n * (2729 ±0)` + // Minimum execution time: 108_373 nanoseconds. + Weight::from_ref_time(112_094_892) + .saturating_add(Weight::from_proof_size(16259)) + // Standard Error: 27_186 + .saturating_add(Weight::from_ref_time(20_710_983).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) + .saturating_add(T::DbWeight::get().writes(6)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(n.into()))) + .saturating_add(Weight::from_proof_size(2729).saturating_mul(n.into())) + } + /// Storage: Nfts Item (r:1 w:0) + /// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen) + /// Storage: Nfts ItemAttributesApprovalsOf (r:1 w:1) + /// Proof: Nfts ItemAttributesApprovalsOf (max_values: None, max_size: Some(681), added: 3156, mode: MaxEncodedLen) + /// Storage: Nfts Collection (r:1 w:1) + /// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen) + /// Storage: Nfts CollectionConfigOf (r:1 w:0) + /// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen) + /// Storage: Nfts Attribute (r:10 w:10) + /// Proof: Nfts Attribute (max_values: None, max_size: Some(446), added: 2921, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// The range of component `n` is `[0, 10]`. + fn set_attributes_pre_signed(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `716` + // Estimated: `14198 + n * (2921 ±0)` + // Minimum execution time: 84_153 nanoseconds. + Weight::from_ref_time(96_401_623) + .saturating_add(Weight::from_proof_size(14198)) + // Standard Error: 70_244 + .saturating_add(Weight::from_ref_time(26_866_222).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(4_u64)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) + .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(n.into()))) + .saturating_add(Weight::from_proof_size(2921).saturating_mul(n.into())) + } } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_proxy.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_proxy.rs index 4aa5e4b28a3..8f563c01078 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_proxy.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_proxy.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_proxy` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,119 +47,174 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_proxy`. pub struct WeightInfo(PhantomData); impl pallet_proxy::WeightInfo for WeightInfo { - // Storage: Proxy Proxies (r:1 w:0) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn proxy(p: u32, ) -> Weight { - // Minimum execution time: 20_824 nanoseconds. - Weight::from_ref_time(23_388_445) - // Standard Error: 4_840 - .saturating_add(Weight::from_ref_time(36_180).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 14_854 nanoseconds. + Weight::from_ref_time(15_600_203) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_181 + .saturating_add(Weight::from_ref_time(28_891).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Proxy Proxies (r:1 w:0) - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn proxy_announced(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 40_846 nanoseconds. - Weight::from_ref_time(42_912_891) - // Standard Error: 7_750 - .saturating_add(Weight::from_ref_time(155_333).saturating_mul(a.into())) - // Standard Error: 8_007 - .saturating_add(Weight::from_ref_time(58_122).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `550 + a * (68 ±0) + p * (37 ±0)` + // Estimated: `11027` + // Minimum execution time: 32_063 nanoseconds. + Weight::from_ref_time(32_624_200) + .saturating_add(Weight::from_proof_size(11027)) + // Standard Error: 1_727 + .saturating_add(Weight::from_ref_time(113_689).saturating_mul(a.into())) + // Standard Error: 1_785 + .saturating_add(Weight::from_ref_time(29_618).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn remove_announcement(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 28_285 nanoseconds. - Weight::from_ref_time(31_684_355) - // Standard Error: 5_548 - .saturating_add(Weight::from_ref_time(104_235).saturating_mul(a.into())) - // Standard Error: 5_732 - .saturating_add(Weight::from_ref_time(1_643).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `433 + a * (68 ±0)` + // Estimated: `7311` + // Minimum execution time: 20_449 nanoseconds. + Weight::from_ref_time(21_345_957) + .saturating_add(Weight::from_proof_size(7311)) + // Standard Error: 1_390 + .saturating_add(Weight::from_ref_time(105_313).saturating_mul(a.into())) + // Standard Error: 1_436 + .saturating_add(Weight::from_ref_time(9_437).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn reject_announcement(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 28_112 nanoseconds. - Weight::from_ref_time(31_257_196) - // Standard Error: 5_788 - .saturating_add(Weight::from_ref_time(110_430).saturating_mul(a.into())) - // Standard Error: 5_980 - .saturating_add(Weight::from_ref_time(12_700).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `433 + a * (68 ±0)` + // Estimated: `7311` + // Minimum execution time: 20_423 nanoseconds. + Weight::from_ref_time(21_290_701) + .saturating_add(Weight::from_proof_size(7311)) + // Standard Error: 1_398 + .saturating_add(Weight::from_ref_time(110_034).saturating_mul(a.into())) + // Standard Error: 1_444 + .saturating_add(Weight::from_ref_time(9_968).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Proxies (r:1 w:0) - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn announce(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 37_947 nanoseconds. - Weight::from_ref_time(40_424_751) - // Standard Error: 6_592 - .saturating_add(Weight::from_ref_time(115_919).saturating_mul(a.into())) - // Standard Error: 6_811 - .saturating_add(Weight::from_ref_time(37_999).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `482 + a * (68 ±0) + p * (37 ±0)` + // Estimated: `11027` + // Minimum execution time: 28_014 nanoseconds. + Weight::from_ref_time(28_864_371) + .saturating_add(Weight::from_proof_size(11027)) + // Standard Error: 1_933 + .saturating_add(Weight::from_ref_time(109_536).saturating_mul(a.into())) + // Standard Error: 1_998 + .saturating_add(Weight::from_ref_time(43_779).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn add_proxy(p: u32, ) -> Weight { - // Minimum execution time: 30_343 nanoseconds. - Weight::from_ref_time(33_272_330) - // Standard Error: 5_220 - .saturating_add(Weight::from_ref_time(68_430).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 21_285 nanoseconds. + Weight::from_ref_time(22_065_300) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_703 + .saturating_add(Weight::from_ref_time(42_186).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn remove_proxy(p: u32, ) -> Weight { - // Minimum execution time: 30_469 nanoseconds. - Weight::from_ref_time(33_147_571) - // Standard Error: 5_971 - .saturating_add(Weight::from_ref_time(74_276).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 20_992 nanoseconds. + Weight::from_ref_time(22_026_633) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_663 + .saturating_add(Weight::from_ref_time(60_910).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn remove_proxies(p: u32, ) -> Weight { - // Minimum execution time: 26_413 nanoseconds. - Weight::from_ref_time(28_654_279) - // Standard Error: 6_196 - .saturating_add(Weight::from_ref_time(72_944).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 16_755 nanoseconds. + Weight::from_ref_time(17_775_492) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_281 + .saturating_add(Weight::from_ref_time(28_738).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn create_pure(_p: u32, ) -> Weight { - // Minimum execution time: 33_050 nanoseconds. - Weight::from_ref_time(37_011_858) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `139` + // Estimated: `3716` + // Minimum execution time: 22_598 nanoseconds. + Weight::from_ref_time(23_639_320) + .saturating_add(Weight::from_proof_size(3716)) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[0, 30]`. fn kill_pure(p: u32, ) -> Weight { - // Minimum execution time: 27_594 nanoseconds. - Weight::from_ref_time(30_339_039) - // Standard Error: 5_854 - .saturating_add(Weight::from_ref_time(29_216).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `196 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 17_907 nanoseconds. + Weight::from_ref_time(18_737_185) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_069 + .saturating_add(Weight::from_ref_time(26_491).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_session.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_session.rs index 8ef0cad2a6c..a7c3be136f8 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_session.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_session.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_session` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,19 +47,31 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_session`. pub struct WeightInfo(PhantomData); impl pallet_session::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:1 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:1 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - // Minimum execution time: 23_656 nanoseconds. - Weight::from_ref_time(24_691_000) + // Proof Size summary in bytes: + // Measured: `270` + // Estimated: `5490` + // Minimum execution time: 15_416 nanoseconds. + Weight::from_ref_time(15_764_000) + .saturating_add(Weight::from_proof_size(5490)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:0 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:0 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn purge_keys() -> Weight { - // Minimum execution time: 19_377 nanoseconds. - Weight::from_ref_time(20_527_000) + // Proof Size summary in bytes: + // Measured: `242` + // Estimated: `2959` + // Minimum execution time: 11_720 nanoseconds. + Weight::from_ref_time(12_152_000) + .saturating_add(Weight::from_proof_size(2959)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_timestamp.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_timestamp.rs index 639bced3080..f12d9983ef9 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_timestamp.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_timestamp.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_timestamp` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,16 +47,26 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { - // Storage: Timestamp Now (r:1 w:1) - // Storage: Aura CurrentSlot (r:1 w:0) + /// Storage: Timestamp Now (r:1 w:1) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + /// Storage: Aura CurrentSlot (r:1 w:0) + /// Proof: Aura CurrentSlot (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) fn set() -> Weight { - // Minimum execution time: 10_135 nanoseconds. - Weight::from_ref_time(10_856_000) + // Proof Size summary in bytes: + // Measured: `86` + // Estimated: `1006` + // Minimum execution time: 8_384 nanoseconds. + Weight::from_ref_time(8_706_000) + .saturating_add(Weight::from_proof_size(1006)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } fn on_finalize() -> Weight { - // Minimum execution time: 3_934 nanoseconds. - Weight::from_ref_time(4_156_000) + // Proof Size summary in bytes: + // Measured: `57` + // Estimated: `0` + // Minimum execution time: 3_110 nanoseconds. + Weight::from_ref_time(3_206_000) + .saturating_add(Weight::from_proof_size(0)) } } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_uniques.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_uniques.rs index 96bf16ee203..c6d8f5ad71d 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_uniques.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_uniques.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_uniques` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -46,240 +47,413 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_uniques`. pub struct WeightInfo(PhantomData); impl pallet_uniques::WeightInfo for WeightInfo { - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn create() -> Weight { - // Minimum execution time: 31_545 nanoseconds. - Weight::from_ref_time(32_847_000) + // Proof Size summary in bytes: + // Measured: `177` + // Estimated: `2653` + // Minimum execution time: 23_302 nanoseconds. + Weight::from_ref_time(23_817_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn force_create() -> Weight { - // Minimum execution time: 20_268 nanoseconds. - Weight::from_ref_time(21_052_000) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `2653` + // Minimum execution time: 12_529 nanoseconds. + Weight::from_ref_time(13_079_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:1 w:0) - // Storage: Uniques ClassAccount (r:0 w:1) - // Storage: Uniques Attribute (r:0 w:1000) - // Storage: Uniques ClassMetadataOf (r:0 w:1) - // Storage: Uniques InstanceMetadataOf (r:0 w:1000) - // Storage: Uniques CollectionMaxSupply (r:0 w:1) - // Storage: Uniques Account (r:0 w:20) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1001 w:1000) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:0 w:1000) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:0 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:0 w:1000) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1000) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques CollectionMaxSupply (r:0 w:1) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) /// The range of component `n` is `[0, 1000]`. /// The range of component `m` is `[0, 1000]`. /// The range of component `a` is `[0, 1000]`. fn destroy(n: u32, m: u32, a: u32, ) -> Weight { - // Minimum execution time: 3_181_784 nanoseconds. - Weight::from_ref_time(3_263_063_000) - // Standard Error: 52_843 - .saturating_add(Weight::from_ref_time(9_291_988).saturating_mul(n.into())) - // Standard Error: 52_843 - .saturating_add(Weight::from_ref_time(1_821_907).saturating_mul(a.into())) + // Proof Size summary in bytes: + // Measured: `289 + n * (108 ±0) + m * (56 ±0) + a * (107 ±0)` + // Estimated: `5250 + n * (2597 ±0)` + // Minimum execution time: 2_305_045 nanoseconds. + Weight::from_ref_time(2_312_341_000) + .saturating_add(Weight::from_proof_size(5250)) + // Standard Error: 26_047 + .saturating_add(Weight::from_ref_time(8_440_544).saturating_mul(n.into())) + // Standard Error: 26_047 + .saturating_add(Weight::from_ref_time(223_194).saturating_mul(m.into())) + // Standard Error: 26_047 + .saturating_add(Weight::from_ref_time(313_891).saturating_mul(a.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes(4)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into()))) + .saturating_add(Weight::from_proof_size(2597).saturating_mul(n.into())) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques CollectionMaxSupply (r:1 w:0) - // Storage: Uniques Account (r:0 w:1) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques CollectionMaxSupply (r:1 w:0) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) fn mint() -> Weight { - // Minimum execution time: 38_361 nanoseconds. - Weight::from_ref_time(39_665_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `7749` + // Minimum execution time: 28_581 nanoseconds. + Weight::from_ref_time(29_011_000) + .saturating_add(Weight::from_proof_size(7749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Account (r:0 w:1) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:1) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn burn() -> Weight { - // Minimum execution time: 40_530 nanoseconds. - Weight::from_ref_time(41_467_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 29_869 nanoseconds. + Weight::from_ref_time(30_206_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Account (r:0 w:2) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:2) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 30_538 nanoseconds. - Weight::from_ref_time(31_601_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 23_945 nanoseconds. + Weight::from_ref_time(24_259_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques Asset (r:102 w:102) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:5000 w:5000) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) /// The range of component `i` is `[0, 5000]`. fn redeposit(i: u32, ) -> Weight { - // Minimum execution time: 19_630 nanoseconds. - Weight::from_ref_time(19_983_000) - // Standard Error: 16_378 - .saturating_add(Weight::from_ref_time(12_854_319).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `770 + i * (108 ±0)` + // Estimated: `2653 + i * (2597 ±0)` + // Minimum execution time: 13_847 nanoseconds. + Weight::from_ref_time(14_105_000) + .saturating_add(Weight::from_proof_size(2653)) + // Standard Error: 12_887 + .saturating_add(Weight::from_ref_time(12_017_604).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(i.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) + .saturating_add(Weight::from_proof_size(2597).saturating_mul(i.into())) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn freeze() -> Weight { - // Minimum execution time: 23_487 nanoseconds. - Weight::from_ref_time(24_339_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 17_259 nanoseconds. + Weight::from_ref_time(17_731_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn thaw() -> Weight { - // Minimum execution time: 23_348 nanoseconds. - Weight::from_ref_time(24_025_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 16_951 nanoseconds. + Weight::from_ref_time(17_177_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn freeze_collection() -> Weight { - // Minimum execution time: 18_820 nanoseconds. - Weight::from_ref_time(19_440_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 12_733 nanoseconds. + Weight::from_ref_time(13_154_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn thaw_collection() -> Weight { - // Minimum execution time: 18_689 nanoseconds. - Weight::from_ref_time(19_523_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 12_624 nanoseconds. + Weight::from_ref_time(12_887_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques OwnershipAcceptance (r:1 w:1) - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:2) + /// Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Proof: Uniques OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:2) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn transfer_ownership() -> Weight { - // Minimum execution time: 26_486 nanoseconds. - Weight::from_ref_time(27_557_000) + // Proof Size summary in bytes: + // Measured: `388` + // Estimated: `5180` + // Minimum execution time: 20_089 nanoseconds. + Weight::from_ref_time(20_583_000) + .saturating_add(Weight::from_proof_size(5180)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Uniques Class (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn set_team() -> Weight { - // Minimum execution time: 19_244 nanoseconds. - Weight::from_ref_time(19_802_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 13_647 nanoseconds. + Weight::from_ref_time(13_894_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassAccount (r:0 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassAccount (r:0 w:1) + /// Proof: Uniques ClassAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) fn force_item_status() -> Weight { - // Minimum execution time: 21_746 nanoseconds. - Weight::from_ref_time(23_012_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `2653` + // Minimum execution time: 16_035 nanoseconds. + Weight::from_ref_time(16_232_000) + .saturating_add(Weight::from_proof_size(2653)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:0) - // Storage: Uniques Attribute (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:0) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:1 w:1) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) fn set_attribute() -> Weight { - // Minimum execution time: 44_625 nanoseconds. - Weight::from_ref_time(45_781_000) + // Proof Size summary in bytes: + // Measured: `623` + // Estimated: `7962` + // Minimum execution time: 33_357 nanoseconds. + Weight::from_ref_time(34_794_000) + .saturating_add(Weight::from_proof_size(7962)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:0) - // Storage: Uniques Attribute (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:0) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) + /// Storage: Uniques Attribute (r:1 w:1) + /// Proof: Uniques Attribute (max_values: None, max_size: Some(172), added: 2647, mode: MaxEncodedLen) fn clear_attribute() -> Weight { - // Minimum execution time: 42_627 nanoseconds. - Weight::from_ref_time(44_182_000) + // Proof Size summary in bytes: + // Measured: `851` + // Estimated: `7962` + // Minimum execution time: 32_496 nanoseconds. + Weight::from_ref_time(33_068_000) + .saturating_add(Weight::from_proof_size(7962)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) fn set_metadata() -> Weight { - // Minimum execution time: 35_048 nanoseconds. - Weight::from_ref_time(36_235_000) + // Proof Size summary in bytes: + // Measured: `380` + // Estimated: `5315` + // Minimum execution time: 25_557 nanoseconds. + Weight::from_ref_time(25_923_000) + .saturating_add(Weight::from_proof_size(5315)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques InstanceMetadataOf (r:1 w:1) + /// Proof: Uniques InstanceMetadataOf (max_values: None, max_size: Some(187), added: 2662, mode: MaxEncodedLen) fn clear_metadata() -> Weight { - // Minimum execution time: 36_941 nanoseconds. - Weight::from_ref_time(37_566_000) + // Proof Size summary in bytes: + // Measured: `623` + // Estimated: `5315` + // Minimum execution time: 26_147 nanoseconds. + Weight::from_ref_time(26_386_000) + .saturating_add(Weight::from_proof_size(5315)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:1) - // Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:1) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) fn set_collection_metadata() -> Weight { - // Minimum execution time: 34_684 nanoseconds. - Weight::from_ref_time(35_567_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `5295` + // Minimum execution time: 25_233 nanoseconds. + Weight::from_ref_time(25_665_000) + .saturating_add(Weight::from_proof_size(5295)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques ClassMetadataOf (r:1 w:1) + /// Proof: Uniques ClassMetadataOf (max_values: None, max_size: Some(167), added: 2642, mode: MaxEncodedLen) fn clear_collection_metadata() -> Weight { - // Minimum execution time: 33_941 nanoseconds. - Weight::from_ref_time(34_608_000) + // Proof Size summary in bytes: + // Measured: `537` + // Estimated: `5295` + // Minimum execution time: 24_311 nanoseconds. + Weight::from_ref_time(24_544_000) + .saturating_add(Weight::from_proof_size(5295)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) fn approve_transfer() -> Weight { - // Minimum execution time: 25_003 nanoseconds. - Weight::from_ref_time(25_565_000) + // Proof Size summary in bytes: + // Measured: `492` + // Estimated: `5250` + // Minimum execution time: 18_197 nanoseconds. + Weight::from_ref_time(18_442_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Asset (r:1 w:1) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) fn cancel_approval() -> Weight { - // Minimum execution time: 24_048 nanoseconds. - Weight::from_ref_time(25_405_000) + // Proof Size summary in bytes: + // Measured: `525` + // Estimated: `5250` + // Minimum execution time: 18_606 nanoseconds. + Weight::from_ref_time(19_032_000) + .saturating_add(Weight::from_proof_size(5250)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Storage: Uniques OwnershipAcceptance (r:1 w:1) + /// Proof: Uniques OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) fn set_accept_ownership() -> Weight { - // Minimum execution time: 22_876 nanoseconds. - Weight::from_ref_time(23_841_000) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `2527` + // Minimum execution time: 14_902 nanoseconds. + Weight::from_ref_time(15_216_000) + .saturating_add(Weight::from_proof_size(2527)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques CollectionMaxSupply (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) + /// Storage: Uniques CollectionMaxSupply (r:1 w:1) + /// Proof: Uniques CollectionMaxSupply (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) fn set_collection_max_supply() -> Weight { - // Minimum execution time: 21_291 nanoseconds. - Weight::from_ref_time(21_935_000) + // Proof Size summary in bytes: + // Measured: `314` + // Estimated: `5152` + // Minimum execution time: 15_771 nanoseconds. + Weight::from_ref_time(16_013_000) + .saturating_add(Weight::from_proof_size(5152)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:0) - // Storage: Uniques ItemPriceOf (r:0 w:1) + /// Storage: Uniques Asset (r:1 w:0) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:0 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) fn set_price() -> Weight { - // Minimum execution time: 21_637 nanoseconds. - Weight::from_ref_time(22_370_000) + // Proof Size summary in bytes: + // Measured: `291` + // Estimated: `2597` + // Minimum execution time: 15_703 nanoseconds. + Weight::from_ref_time(15_905_000) + .saturating_add(Weight::from_proof_size(2597)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Uniques Asset (r:1 w:1) - // Storage: Uniques ItemPriceOf (r:1 w:1) - // Storage: Uniques Class (r:1 w:0) - // Storage: Uniques Account (r:0 w:2) + /// Storage: Uniques Asset (r:1 w:1) + /// Proof: Uniques Asset (max_values: None, max_size: Some(122), added: 2597, mode: MaxEncodedLen) + /// Storage: Uniques ItemPriceOf (r:1 w:1) + /// Proof: Uniques ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: Uniques Class (r:1 w:0) + /// Proof: Uniques Class (max_values: None, max_size: Some(178), added: 2653, mode: MaxEncodedLen) + /// Storage: Uniques Account (r:0 w:2) + /// Proof: Uniques Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen) fn buy_item() -> Weight { - // Minimum execution time: 41_671 nanoseconds. - Weight::from_ref_time(43_220_000) + // Proof Size summary in bytes: + // Measured: `636` + // Estimated: `7814` + // Minimum execution time: 33_712 nanoseconds. + Weight::from_ref_time(34_365_000) + .saturating_add(Weight::from_proof_size(7814)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_utility.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_utility.rs index 63faa4e1982..e1fb14c18a6 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_utility.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_utility.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_utility` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -48,31 +49,51 @@ pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { /// The range of component `c` is `[0, 1000]`. fn batch(c: u32, ) -> Weight { - // Minimum execution time: 14_215 nanoseconds. - Weight::from_ref_time(22_724_063) - // Standard Error: 7_906 - .saturating_add(Weight::from_ref_time(4_496_582).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_171 nanoseconds. + Weight::from_ref_time(14_264_475) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 3_826 + .saturating_add(Weight::from_ref_time(4_102_412).saturating_mul(c.into())) } fn as_derivative() -> Weight { - // Minimum execution time: 7_110 nanoseconds. - Weight::from_ref_time(7_386_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_750 nanoseconds. + Weight::from_ref_time(4_872_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn batch_all(c: u32, ) -> Weight { - // Minimum execution time: 13_043 nanoseconds. - Weight::from_ref_time(31_868_480) - // Standard Error: 8_254 - .saturating_add(Weight::from_ref_time(4_663_879).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_448 nanoseconds. + Weight::from_ref_time(20_274_161) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 4_587 + .saturating_add(Weight::from_ref_time(4_321_327).saturating_mul(c.into())) } fn dispatch_as() -> Weight { - // Minimum execution time: 15_483 nanoseconds. - Weight::from_ref_time(16_088_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_092 nanoseconds. + Weight::from_ref_time(8_417_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn force_batch(c: u32, ) -> Weight { - // Minimum execution time: 14_074 nanoseconds. - Weight::from_ref_time(21_194_149) - // Standard Error: 7_967 - .saturating_add(Weight::from_ref_time(4_509_461).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_410 nanoseconds. + Weight::from_ref_time(19_538_670) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 4_387 + .saturating_add(Weight::from_ref_time(4_098_456).saturating_mul(c.into())) } } diff --git a/parachains/runtimes/assets/westmint/src/weights/pallet_xcm.rs b/parachains/runtimes/assets/westmint/src/weights/pallet_xcm.rs index 457e551e52d..53d056e2363 100644 --- a/parachains/runtimes/assets/westmint/src/weights/pallet_xcm.rs +++ b/parachains/runtimes/assets/westmint/src/weights/pallet_xcm.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_xcm` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-12-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `bm3`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: -// /home/benchbot/cargo_target_dir/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=westmint-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/var/lib/gitlab-runner/builds/zyw4fam_/0/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm -// --chain=westmint-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/assets/westmint/src/weights/ +// --output=./parachains/runtimes/assets/westmint/src/weights/pallet_xcm.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,126 +47,227 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_xcm`. pub struct WeightInfo(PhantomData); impl pallet_xcm::WeightInfo for WeightInfo { - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn send() -> Weight { - // Minimum execution time: 27_623 nanoseconds. - Weight::from_ref_time(28_375_000) + // Proof Size summary in bytes: + // Measured: `75` + // Estimated: `4830` + // Minimum execution time: 26_692 nanoseconds. + Weight::from_ref_time(27_382_000) + .saturating_add(Weight::from_proof_size(4830)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn teleport_assets() -> Weight { - // Minimum execution time: 33_363 nanoseconds. - Weight::from_ref_time(33_942_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `499` + // Minimum execution time: 22_056 nanoseconds. + Weight::from_ref_time(22_401_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn reserve_transfer_assets() -> Weight { - // Minimum execution time: 25_113 nanoseconds. - Weight::from_ref_time(25_549_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `499` + // Minimum execution time: 16_901 nanoseconds. + Weight::from_ref_time(17_262_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } fn execute() -> Weight { - // Minimum execution time: 15_464 nanoseconds. - Weight::from_ref_time(15_772_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_467 nanoseconds. + Weight::from_ref_time(8_708_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn force_xcm_version() -> Weight { - // Minimum execution time: 15_375 nanoseconds. - Weight::from_ref_time(15_631_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_532 nanoseconds. + Weight::from_ref_time(8_766_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) fn force_default_xcm_version() -> Weight { - // Minimum execution time: 4_575 nanoseconds. - Weight::from_ref_time(4_708_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_399 nanoseconds. + Weight::from_ref_time(2_586_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm QueryCounter (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm QueryCounter (r:1 w:1) + /// Proof Skipped: PolkadotXcm QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_subscribe_version_notify() -> Weight { - // Minimum execution time: 31_521 nanoseconds. - Weight::from_ref_time(32_350_000) + // Proof Size summary in bytes: + // Measured: `75` + // Estimated: `8025` + // Minimum execution time: 30_956 nanoseconds. + Weight::from_ref_time(31_602_000) + .saturating_add(Weight::from_proof_size(8025)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_unsubscribe_version_notify() -> Weight { - // Minimum execution time: 32_589 nanoseconds. - Weight::from_ref_time(33_282_000) + // Proof Size summary in bytes: + // Measured: `257` + // Estimated: `8729` + // Minimum execution time: 33_283 nanoseconds. + Weight::from_ref_time(34_433_000) + .saturating_add(Weight::from_proof_size(8729)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn migrate_supported_version() -> Weight { - // Minimum execution time: 13_642 nanoseconds. - Weight::from_ref_time(13_969_000) + // Proof Size summary in bytes: + // Measured: `129` + // Estimated: `10029` + // Minimum execution time: 17_349 nanoseconds. + Weight::from_ref_time(18_701_000) + .saturating_add(Weight::from_proof_size(10029)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) fn migrate_version_notifiers() -> Weight { - // Minimum execution time: 13_569 nanoseconds. - Weight::from_ref_time(14_168_000) + // Proof Size summary in bytes: + // Measured: `133` + // Estimated: `10033` + // Minimum execution time: 18_574 nanoseconds. + Weight::from_ref_time(19_071_000) + .saturating_add(Weight::from_proof_size(10033)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn already_notified_target() -> Weight { - // Minimum execution time: 15_406 nanoseconds. - Weight::from_ref_time(15_731_000) + // Proof Size summary in bytes: + // Measured: `140` + // Estimated: `12515` + // Minimum execution time: 22_520 nanoseconds. + Weight::from_ref_time(23_083_000) + .saturating_add(Weight::from_proof_size(12515)) .saturating_add(T::DbWeight::get().reads(5)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn notify_current_targets() -> Weight { - // Minimum execution time: 27_357 nanoseconds. - Weight::from_ref_time(27_804_000) + // Proof Size summary in bytes: + // Measured: `142` + // Estimated: `10257` + // Minimum execution time: 39_510 nanoseconds. + Weight::from_ref_time(40_272_000) + .saturating_add(Weight::from_proof_size(10257)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn notify_target_migration_fail() -> Weight { - // Minimum execution time: 6_940 nanoseconds. - Weight::from_ref_time(7_147_000) + // Proof Size summary in bytes: + // Measured: `172` + // Estimated: `7597` + // Minimum execution time: 11_057 nanoseconds. + Weight::from_ref_time(11_408_000) + .saturating_add(Weight::from_proof_size(7597)) .saturating_add(T::DbWeight::get().reads(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn migrate_version_notify_targets() -> Weight { - // Minimum execution time: 14_204 nanoseconds. - Weight::from_ref_time(14_529_000) + // Proof Size summary in bytes: + // Measured: `140` + // Estimated: `10040` + // Minimum execution time: 22_914 nanoseconds. + Weight::from_ref_time(23_231_000) + .saturating_add(Weight::from_proof_size(10040)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn migrate_and_notify_old_targets() -> Weight { - // Minimum execution time: 32_809 nanoseconds. - Weight::from_ref_time(33_346_000) + // Proof Size summary in bytes: + // Measured: `146` + // Estimated: `15231` + // Minimum execution time: 47_637 nanoseconds. + Weight::from_ref_time(48_179_000) + .saturating_add(Weight::from_proof_size(15231)) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/xcm/mod.rs b/parachains/runtimes/assets/westmint/src/weights/xcm/mod.rs index 0e05a465794..7c2454b6443 100644 --- a/parachains/runtimes/assets/westmint/src/weights/xcm/mod.rs +++ b/parachains/runtimes/assets/westmint/src/weights/xcm/mod.rs @@ -17,7 +17,7 @@ mod pallet_xcm_benchmarks_fungible; mod pallet_xcm_benchmarks_generic; -use crate::Runtime; +use crate::{xcm_config::MaxAssetsIntoHolding, Runtime}; use frame_support::weights::Weight; use pallet_xcm_benchmarks_fungible::WeightInfo as XcmFungibleWeight; use pallet_xcm_benchmarks_generic::WeightInfo as XcmGeneric; @@ -35,7 +35,18 @@ impl WeighMultiAssets for MultiAssetFilter { match self { Self::Definite(assets) => weight.saturating_mul(assets.inner().into_iter().count() as u64), - Self::Wild(_) => weight.saturating_mul(MAX_ASSETS as u64), + Self::Wild(asset) => match asset { + All => weight.saturating_mul(MAX_ASSETS as u64), + AllOf { fun, .. } => match fun { + WildFungibility::Fungible => weight, + // Magic number 2 has to do with the fact that we could have up to 2 times + // MaxAssetsIntoHolding in the worst-case scenario. + WildFungibility::NonFungible => + weight.saturating_mul((MaxAssetsIntoHolding::get() * 2) as u64), + }, + AllCounted(count) => weight.saturating_mul(*count as u64), + AllOfCounted { count, .. } => weight.saturating_mul(*count as u64), + }, } } } @@ -138,10 +149,7 @@ impl XcmWeightInfo for WestmintXcmWeight { _dest: &MultiLocation, _xcm: &Xcm<()>, ) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_ref_time(200_000_000 as u64); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()) } fn report_holding(_response_info: &QueryResponseInfo, _assets: &MultiAssetFilter) -> Weight { XcmGeneric::::report_holding() diff --git a/parachains/runtimes/assets/westmint/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs b/parachains/runtimes/assets/westmint/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs index 23fc4aa1d8b..1f0c84cf23a 100644 --- a/parachains/runtimes/assets/westmint/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs +++ b/parachains/runtimes/assets/westmint/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::fungible` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -49,58 +49,81 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn withdraw_asset() -> Weight { - Weight::from_ref_time(30_357_000 as u64) + Weight::from_ref_time(20_735_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn transfer_asset() -> Weight { - Weight::from_ref_time(40_186_000 as u64) + Weight::from_ref_time(28_940_000 as u64) .saturating_add(T::DbWeight::get().reads(2 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn transfer_reserve_asset() -> Weight { - Weight::from_ref_time(60_718_000 as u64) + Weight::from_ref_time(50_175_000 as u64) .saturating_add(T::DbWeight::get().reads(8 as u64)) .saturating_add(T::DbWeight::get().writes(4 as u64)) } pub(crate) fn receive_teleported_asset() -> Weight { - Weight::from_ref_time(7_036_000 as u64) + Weight::from_ref_time(4_059_000 as u64) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn deposit_asset() -> Weight { - Weight::from_ref_time(32_201_000 as u64) + Weight::from_ref_time(22_181_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn deposit_reserve_asset() -> Weight { - Weight::from_ref_time(54_868_000 as u64) + Weight::from_ref_time(45_905_000 as u64) .saturating_add(T::DbWeight::get().reads(7 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_teleport() -> Weight { - Weight::from_ref_time(37_484_000 as u64) + Weight::from_ref_time(29_820_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } diff --git a/parachains/runtimes/assets/westmint/src/weights/xcm/pallet_xcm_benchmarks_generic.rs b/parachains/runtimes/assets/westmint/src/weights/xcm/pallet_xcm_benchmarks_generic.rs index d7f530997e0..1a00b81bc14 100644 --- a/parachains/runtimes/assets/westmint/src/weights/xcm/pallet_xcm_benchmarks_generic.rs +++ b/parachains/runtimes/assets/westmint/src/weights/xcm/pallet_xcm_benchmarks_generic.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::generic` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024 // Executed Command: @@ -49,145 +49,184 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_holding() -> Weight { - Weight::from_ref_time(420_339_000 as u64) + Weight::from_ref_time(360_208_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn buy_execution() -> Weight { - Weight::from_ref_time(6_826_000 as u64) + Weight::from_ref_time(3_876_000 as u64) } // Storage: PolkadotXcm Queries (r:1 w:0) + // Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) pub(crate) fn query_response() -> Weight { - Weight::from_ref_time(19_391_000 as u64) + Weight::from_ref_time(11_240_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) } pub(crate) fn transact() -> Weight { - Weight::from_ref_time(21_685_000 as u64) + Weight::from_ref_time(12_244_000 as u64) } pub(crate) fn refund_surplus() -> Weight { - Weight::from_ref_time(7_031_000 as u64) + Weight::from_ref_time(3_963_000 as u64) } pub(crate) fn set_error_handler() -> Weight { - Weight::from_ref_time(6_099_000 as u64) + Weight::from_ref_time(2_871_000 as u64) } pub(crate) fn set_appendix() -> Weight { - Weight::from_ref_time(6_025_000 as u64) + Weight::from_ref_time(2_805_000 as u64) } pub(crate) fn clear_error() -> Weight { - Weight::from_ref_time(5_969_000 as u64) + Weight::from_ref_time(2_759_000 as u64) } pub(crate) fn descend_origin() -> Weight { - Weight::from_ref_time(6_782_000 as u64) + Weight::from_ref_time(3_596_000 as u64) } pub(crate) fn clear_origin() -> Weight { - Weight::from_ref_time(6_003_000 as u64) + Weight::from_ref_time(2_750_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_error() -> Weight { - Weight::from_ref_time(32_797_000 as u64) + Weight::from_ref_time(24_921_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: PolkadotXcm AssetTraps (r:1 w:1) + // Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) pub(crate) fn claim_asset() -> Weight { - Weight::from_ref_time(22_831_000 as u64) + Weight::from_ref_time(15_880_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } pub(crate) fn trap() -> Weight { - Weight::from_ref_time(5_908_000 as u64) + Weight::from_ref_time(2_771_000 as u64) } // Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn subscribe_version() -> Weight { - Weight::from_ref_time(33_472_000 as u64) + Weight::from_ref_time(27_043_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) pub(crate) fn unsubscribe_version() -> Weight { - Weight::from_ref_time(7_655_000 as u64) + Weight::from_ref_time(4_668_000 as u64) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_reserve_withdraw() -> Weight { - Weight::from_ref_time(473_031_000 as u64) + Weight::from_ref_time(399_081_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn burn_asset() -> Weight { - Weight::from_ref_time(149_963_000 as u64) + Weight::from_ref_time(123_792_000 as u64) } pub(crate) fn expect_asset() -> Weight { - Weight::from_ref_time(15_212_000 as u64) + Weight::from_ref_time(13_056_000 as u64) } pub(crate) fn expect_origin() -> Weight { - Weight::from_ref_time(6_010_000 as u64) + Weight::from_ref_time(2_780_000 as u64) } pub(crate) fn expect_error() -> Weight { - Weight::from_ref_time(5_928_000 as u64) + Weight::from_ref_time(2_839_000 as u64) } pub(crate) fn expect_transact_status() -> Weight { - Weight::from_ref_time(6_910_000 as u64) + Weight::from_ref_time(2_951_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn query_pallet() -> Weight { - Weight::from_ref_time(35_842_000 as u64) + Weight::from_ref_time(28_130_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn expect_pallet() -> Weight { - Weight::from_ref_time(7_899_000 as u64) + Weight::from_ref_time(4_754_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_transact_status() -> Weight { - Weight::from_ref_time(32_752_000 as u64) + Weight::from_ref_time(25_584_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn clear_transact_status() -> Weight { - Weight::from_ref_time(5_895_000 as u64) + Weight::from_ref_time(2_832_000 as u64) } pub(crate) fn set_topic() -> Weight { - Weight::from_ref_time(5_921_000 as u64) + Weight::from_ref_time(2_804_000 as u64) } pub(crate) fn clear_topic() -> Weight { - Weight::from_ref_time(5_912_000 as u64) + Weight::from_ref_time(2_747_000 as u64) } pub(crate) fn set_fees_mode() -> Weight { - Weight::from_ref_time(5_840_000 as u64) + Weight::from_ref_time(2_736_000 as u64) } pub(crate) fn unpaid_execution() -> Weight { - Weight::from_ref_time(6_093_000 as u64) + Weight::from_ref_time(2_969_000 as u64) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/cumulus_pallet_xcmp_queue.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/cumulus_pallet_xcmp_queue.rs index abb2ab9dd53..dd9d3233283 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/cumulus_pallet_xcmp_queue.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/cumulus_pallet_xcmp_queue.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `cumulus_pallet_xcmp_queue` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -46,17 +47,27 @@ use sp_std::marker::PhantomData; /// Weight functions for `cumulus_pallet_xcmp_queue`. pub struct WeightInfo(PhantomData); impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_u32() -> Weight { - // Minimum execution time: 6_738 nanoseconds. - Weight::from_ref_time(7_394_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_956 nanoseconds. + Weight::from_ref_time(5_247_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_weight() -> Weight { - // Minimum execution time: 6_921 nanoseconds. - Weight::from_ref_time(7_291_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_875 nanoseconds. + Weight::from_ref_time(5_123_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/frame_system.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/frame_system.rs index dd1935b53eb..e5fd70a6dda 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/frame_system.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/frame_system.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `frame_system` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -48,51 +49,81 @@ pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { /// The range of component `b` is `[0, 3932160]`. fn remark(b: u32, ) -> Weight { - // Minimum execution time: 3_581 nanoseconds. - Weight::from_ref_time(2_072_524) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_541 nanoseconds. + Weight::from_ref_time(1_600_000) + .saturating_add(Weight::from_proof_size(0)) // Standard Error: 0 - .saturating_add(Weight::from_ref_time(536).saturating_mul(b.into())) + .saturating_add(Weight::from_ref_time(368).saturating_mul(b.into())) } /// The range of component `b` is `[0, 3932160]`. fn remark_with_event(b: u32, ) -> Weight { - // Minimum execution time: 13_070 nanoseconds. - Weight::from_ref_time(86_161_928) - // Standard Error: 4 - .saturating_add(Weight::from_ref_time(2_039).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_433 nanoseconds. + Weight::from_ref_time(6_528_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 0 + .saturating_add(Weight::from_ref_time(1_718).saturating_mul(b.into())) } - // Storage: System Digest (r:1 w:1) - // Storage: unknown [0x3a686561707061676573] (r:0 w:1) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: unknown `0x3a686561707061676573` (r:0 w:1) + /// Proof Skipped: unknown `0x3a686561707061676573` (r:0 w:1) fn set_heap_pages() -> Weight { - // Minimum execution time: 7_871 nanoseconds. - Weight::from_ref_time(8_315_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `495` + // Minimum execution time: 3_378 nanoseconds. + Weight::from_ref_time(3_546_000) + .saturating_add(Weight::from_proof_size(495)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn set_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_758 nanoseconds. - Weight::from_ref_time(3_866_000) - // Standard Error: 2_296 - .saturating_add(Weight::from_ref_time(689_752).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_595 nanoseconds. + Weight::from_ref_time(1_637_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_677 + .saturating_add(Weight::from_ref_time(581_830).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn kill_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_721 nanoseconds. - Weight::from_ref_time(3_836_000) - // Standard Error: 973 - .saturating_add(Weight::from_ref_time(522_358).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_602 nanoseconds. + Weight::from_ref_time(1_645_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 808 + .saturating_add(Weight::from_ref_time(448_210).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `p` is `[0, 1000]`. fn kill_prefix(p: u32, ) -> Weight { - // Minimum execution time: 5_304 nanoseconds. - Weight::from_ref_time(5_563_000) - // Standard Error: 1_192 - .saturating_add(Weight::from_ref_time(1_158_340).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `68 + p * (69 ±0)` + // Estimated: `66 + p * (70 ±0)` + // Minimum execution time: 3_400 nanoseconds. + Weight::from_ref_time(3_518_000) + .saturating_add(Weight::from_proof_size(66)) + // Standard Error: 949 + .saturating_add(Weight::from_ref_time(952_748).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_proof_size(70).saturating_mul(p.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_balances.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_balances.rs index b851b361713..91a3475a2d6 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_balances.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_balances.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_balances` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -46,52 +47,87 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 45_631 nanoseconds. - Weight::from_ref_time(46_232_000) + // Proof Size summary in bytes: + // Measured: `1314` + // Estimated: `2603` + // Minimum execution time: 45_555 nanoseconds. + Weight::from_ref_time(46_097_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 33_809 nanoseconds. - Weight::from_ref_time(34_968_000) + // Proof Size summary in bytes: + // Measured: `1198` + // Estimated: `2603` + // Minimum execution time: 34_465 nanoseconds. + Weight::from_ref_time(35_054_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_creating() -> Weight { - // Minimum execution time: 23_694 nanoseconds. - Weight::from_ref_time(24_610_000) + // Proof Size summary in bytes: + // Measured: `1348` + // Estimated: `2603` + // Minimum execution time: 25_670 nanoseconds. + Weight::from_ref_time(26_254_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_killing() -> Weight { - // Minimum execution time: 27_156 nanoseconds. - Weight::from_ref_time(27_727_000) + // Proof Size summary in bytes: + // Measured: `1348` + // Estimated: `2603` + // Minimum execution time: 28_919 nanoseconds. + Weight::from_ref_time(29_611_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:2 w:2) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 45_045 nanoseconds. - Weight::from_ref_time(46_147_000) + // Proof Size summary in bytes: + // Measured: `1310` + // Estimated: `5206` + // Minimum execution time: 44_604 nanoseconds. + Weight::from_ref_time(45_498_000) + .saturating_add(Weight::from_proof_size(5206)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_all() -> Weight { - // Minimum execution time: 40_239 nanoseconds. - Weight::from_ref_time(41_296_000) + // Proof Size summary in bytes: + // Measured: `1198` + // Estimated: `2603` + // Minimum execution time: 39_412 nanoseconds. + Weight::from_ref_time(40_181_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_unreserve() -> Weight { - // Minimum execution time: 21_014 nanoseconds. - Weight::from_ref_time(21_561_000) + // Proof Size summary in bytes: + // Measured: `1232` + // Estimated: `2603` + // Minimum execution time: 22_520 nanoseconds. + Weight::from_ref_time(23_045_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_collator_selection.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_collator_selection.rs index 9e795fd0dd5..4930e0cee2d 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_collator_selection.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_collator_selection.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_collator_selection` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -46,79 +47,131 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_collator_selection`. pub struct WeightInfo(PhantomData); impl pallet_collator_selection::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Storage: Session NextKeys (r:100 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) /// The range of component `b` is `[1, 100]`. fn set_invulnerables(b: u32, ) -> Weight { - // Minimum execution time: 19_689 nanoseconds. - Weight::from_ref_time(19_526_534) - // Standard Error: 3_821 - .saturating_add(Weight::from_ref_time(2_843_746).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `214 + b * (78 ±0)` + // Estimated: `213 + b * (2554 ±0)` + // Minimum execution time: 13_768 nanoseconds. + Weight::from_ref_time(15_128_018) + .saturating_add(Weight::from_proof_size(213)) + // Standard Error: 3_110 + .saturating_add(Weight::from_ref_time(2_490_861).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(2554).saturating_mul(b.into())) } - // Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn set_desired_candidates() -> Weight { - // Minimum execution time: 13_168 nanoseconds. - Weight::from_ref_time(13_677_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_359 nanoseconds. + Weight::from_ref_time(6_591_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) fn set_candidacy_bond() -> Weight { - // Minimum execution time: 13_537 nanoseconds. - Weight::from_ref_time(13_989_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_722 nanoseconds. + Weight::from_ref_time(6_963_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection DesiredCandidates (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection CandidacyBond (r:1 w:0) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection DesiredCandidates (r:1 w:0) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Session NextKeys (r:1 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection CandidacyBond (r:1 w:0) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[1, 999]`. fn register_as_candidate(c: u32, ) -> Weight { - // Minimum execution time: 44_929 nanoseconds. - Weight::from_ref_time(50_632_897) - // Standard Error: 1_500 - .saturating_add(Weight::from_ref_time(131_319).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `1167 + c * (48 ±0)` + // Estimated: `56785 + c * (49 ±0)` + // Minimum execution time: 35_190 nanoseconds. + Weight::from_ref_time(27_223_783) + .saturating_add(Weight::from_proof_size(56785)) + // Standard Error: 1_270 + .saturating_add(Weight::from_ref_time(103_824).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_proof_size(49).saturating_mul(c.into())) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[6, 1000]`. fn leave_intent(c: u32, ) -> Weight { - // Minimum execution time: 34_252 nanoseconds. - Weight::from_ref_time(30_231_641) - // Standard Error: 1_897 - .saturating_add(Weight::from_ref_time(138_396).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `503 + c * (48 ±0)` + // Estimated: `48497` + // Minimum execution time: 26_271 nanoseconds. + Weight::from_ref_time(16_336_190) + .saturating_add(Weight::from_proof_size(48497)) + // Standard Error: 1_250 + .saturating_add(Weight::from_ref_time(105_123).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:2 w:2) - // Storage: System BlockWeight (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) fn note_author() -> Weight { - // Minimum execution time: 33_794 nanoseconds. - Weight::from_ref_time(34_896_000) + // Proof Size summary in bytes: + // Measured: `187` + // Estimated: `5749` + // Minimum execution time: 26_583 nanoseconds. + Weight::from_ref_time(26_888_000) + .saturating_add(Weight::from_proof_size(5749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:1000 w:1) - // Storage: System Account (r:1 w:1) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: System BlockWeight (r:1 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:0) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:999 w:0) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: System Account (r:995 w:995) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `r` is `[1, 1000]`. /// The range of component `c` is `[1, 1000]`. - fn new_session(_r: u32, c: u32, ) -> Weight { - // Minimum execution time: 18_474 nanoseconds. - Weight::from_ref_time(18_885_000) - // Standard Error: 864_142 - .saturating_add(Weight::from_ref_time(31_155_093).saturating_mul(c.into())) + fn new_session(r: u32, c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `22878 + r * (148 ±0) + c * (97 ±0)` + // Estimated: `52737 + c * (2519 ±0) + r * (2602 ±0)` + // Minimum execution time: 16_250 nanoseconds. + Weight::from_ref_time(16_601_000) + .saturating_add(Weight::from_proof_size(52737)) + // Standard Error: 763_853 + .saturating_add(Weight::from_ref_time(27_869_355).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(2519).saturating_mul(c.into())) + .saturating_add(Weight::from_proof_size(2602).saturating_mul(r.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_multisig.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_multisig.rs index 505f461e3d1..68816d0e58f 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_multisig.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_multisig.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_multisig` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -48,80 +49,113 @@ pub struct WeightInfo(PhantomData); impl pallet_multisig::WeightInfo for WeightInfo { /// The range of component `z` is `[0, 10000]`. fn as_multi_threshold_1(z: u32, ) -> Weight { - // Minimum execution time: 17_126 nanoseconds. - Weight::from_ref_time(19_701_599) - // Standard Error: 16 - .saturating_add(Weight::from_ref_time(655).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 12_039 nanoseconds. + Weight::from_ref_time(12_378_049) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1 + .saturating_add(Weight::from_ref_time(485).saturating_mul(z.into())) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_create(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 48_951 nanoseconds. - Weight::from_ref_time(38_599_054) - // Standard Error: 2_940 - .saturating_add(Weight::from_ref_time(160_195).saturating_mul(s.into())) - // Standard Error: 28 - .saturating_add(Weight::from_ref_time(1_897).saturating_mul(z.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `314 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 35_309 nanoseconds. + Weight::from_ref_time(28_767_595) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 572 + .saturating_add(Weight::from_ref_time(73_429).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_487).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[3, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_approve(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 36_882 nanoseconds. - Weight::from_ref_time(26_005_891) - // Standard Error: 2_412 - .saturating_add(Weight::from_ref_time(147_551).saturating_mul(s.into())) - // Standard Error: 23 - .saturating_add(Weight::from_ref_time(2_099).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 26_191 nanoseconds. + Weight::from_ref_time(19_850_530) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 440 + .saturating_add(Weight::from_ref_time(68_426).saturating_mul(s.into())) + // Standard Error: 4 + .saturating_add(Weight::from_ref_time(1_505).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_complete(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 54_926 nanoseconds. - Weight::from_ref_time(37_006_728) - // Standard Error: 2_774 - .saturating_add(Weight::from_ref_time(228_213).saturating_mul(s.into())) - // Standard Error: 27 - .saturating_add(Weight::from_ref_time(2_199).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `451 + s * (33 ±0)` + // Estimated: `8424` + // Minimum execution time: 39_875 nanoseconds. + Weight::from_ref_time(32_057_678) + .saturating_add(Weight::from_proof_size(8424)) + // Standard Error: 715 + .saturating_add(Weight::from_ref_time(84_736).saturating_mul(s.into())) + // Standard Error: 7 + .saturating_add(Weight::from_ref_time(1_511).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_create(s: u32, ) -> Weight { - // Minimum execution time: 33_590 nanoseconds. - Weight::from_ref_time(36_815_588) - // Standard Error: 2_224 - .saturating_add(Weight::from_ref_time(155_799).saturating_mul(s.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `321 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 25_536 nanoseconds. + Weight::from_ref_time(27_146_180) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 991 + .saturating_add(Weight::from_ref_time(77_408).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_approve(s: u32, ) -> Weight { - // Minimum execution time: 23_241 nanoseconds. - Weight::from_ref_time(25_670_415) - // Standard Error: 2_237 - .saturating_add(Weight::from_ref_time(140_332).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 17_409 nanoseconds. + Weight::from_ref_time(18_559_189) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 518 + .saturating_add(Weight::from_ref_time(72_083).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn cancel_as_multi(s: u32, ) -> Weight { - // Minimum execution time: 34_194 nanoseconds. - Weight::from_ref_time(37_547_979) - // Standard Error: 3_750 - .saturating_add(Weight::from_ref_time(144_156).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `517 + s * (1 ±0)` + // Estimated: `5821` + // Minimum execution time: 26_502 nanoseconds. + Weight::from_ref_time(28_258_573) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 819 + .saturating_add(Weight::from_ref_time(78_480).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_session.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_session.rs index c7ce798af2b..d71a4ff3915 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_session.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_session.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_session` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -46,19 +47,31 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_session`. pub struct WeightInfo(PhantomData); impl pallet_session::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:1 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:1 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - // Minimum execution time: 22_375 nanoseconds. - Weight::from_ref_time(23_154_000) + // Proof Size summary in bytes: + // Measured: `297` + // Estimated: `5544` + // Minimum execution time: 15_673 nanoseconds. + Weight::from_ref_time(16_101_000) + .saturating_add(Weight::from_proof_size(5544)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:0 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:0 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn purge_keys() -> Weight { - // Minimum execution time: 18_850 nanoseconds. - Weight::from_ref_time(19_469_000) + // Proof Size summary in bytes: + // Measured: `279` + // Estimated: `3033` + // Minimum execution time: 12_241 nanoseconds. + Weight::from_ref_time(12_552_000) + .saturating_add(Weight::from_proof_size(3033)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_timestamp.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_timestamp.rs index ac98a4e0048..ec62b5493f8 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_timestamp.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_timestamp.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_timestamp` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -46,16 +47,26 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { - // Storage: Timestamp Now (r:1 w:1) - // Storage: Aura CurrentSlot (r:1 w:0) + /// Storage: Timestamp Now (r:1 w:1) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + /// Storage: Aura CurrentSlot (r:1 w:0) + /// Proof: Aura CurrentSlot (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) fn set() -> Weight { - // Minimum execution time: 9_222 nanoseconds. - Weight::from_ref_time(9_644_000) + // Proof Size summary in bytes: + // Measured: `49` + // Estimated: `1006` + // Minimum execution time: 7_105 nanoseconds. + Weight::from_ref_time(7_296_000) + .saturating_add(Weight::from_proof_size(1006)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } fn on_finalize() -> Weight { - // Minimum execution time: 4_556 nanoseconds. - Weight::from_ref_time(4_895_000) + // Proof Size summary in bytes: + // Measured: `57` + // Estimated: `0` + // Minimum execution time: 3_270 nanoseconds. + Weight::from_ref_time(3_398_000) + .saturating_add(Weight::from_proof_size(0)) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_utility.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_utility.rs index aa0aac9f5a6..306c34b65a9 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_utility.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_utility.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_utility` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -48,31 +49,51 @@ pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { /// The range of component `c` is `[0, 1000]`. fn batch(c: u32, ) -> Weight { - // Minimum execution time: 13_554 nanoseconds. - Weight::from_ref_time(37_436_715) - // Standard Error: 7_174 - .saturating_add(Weight::from_ref_time(4_470_828).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_752 nanoseconds. + Weight::from_ref_time(15_025_089) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_912 + .saturating_add(Weight::from_ref_time(3_735_986).saturating_mul(c.into())) } fn as_derivative() -> Weight { - // Minimum execution time: 6_430 nanoseconds. - Weight::from_ref_time(6_708_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_237 nanoseconds. + Weight::from_ref_time(4_392_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn batch_all(c: u32, ) -> Weight { - // Minimum execution time: 13_392 nanoseconds. - Weight::from_ref_time(905_071) - // Standard Error: 6_438 - .saturating_add(Weight::from_ref_time(4_757_129).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_645 nanoseconds. + Weight::from_ref_time(16_082_395) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_061 + .saturating_add(Weight::from_ref_time(3_918_503).saturating_mul(c.into())) } fn dispatch_as() -> Weight { - // Minimum execution time: 14_905 nanoseconds. - Weight::from_ref_time(15_464_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_613 nanoseconds. + Weight::from_ref_time(7_868_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn force_batch(c: u32, ) -> Weight { - // Minimum execution time: 13_277 nanoseconds. - Weight::from_ref_time(37_104_411) - // Standard Error: 6_972 - .saturating_add(Weight::from_ref_time(4_444_489).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_909 nanoseconds. + Weight::from_ref_time(11_406_668) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_399 + .saturating_add(Weight::from_ref_time(3_759_278).saturating_mul(c.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_xcm.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_xcm.rs index 672b3f75421..f9e17170186 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_xcm.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_xcm.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_xcm` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-12-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `bm3`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: -// /home/benchbot/cargo_target_dir/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-kusama-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/var/lib/gitlab-runner/builds/zyw4fam_/0/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm -// --chain=bridge-hub-kusama-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/pallet_xcm.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,126 +47,228 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_xcm`. pub struct WeightInfo(PhantomData); impl pallet_xcm::WeightInfo for WeightInfo { - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn send() -> Weight { - // Minimum execution time: 26_824 nanoseconds. - Weight::from_ref_time(27_272_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `4645` + // Minimum execution time: 23_601 nanoseconds. + Weight::from_ref_time(24_078_000) + .saturating_add(Weight::from_proof_size(4645)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn teleport_assets() -> Weight { - // Minimum execution time: 32_322 nanoseconds. - Weight::from_ref_time(32_760_000) + // Proof Size summary in bytes: + // Measured: `32` + // Estimated: `499` + // Minimum execution time: 23_225 nanoseconds. + Weight::from_ref_time(23_887_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn reserve_transfer_assets() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn execute() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn force_xcm_version() -> Weight { - // Minimum execution time: 14_919 nanoseconds. - Weight::from_ref_time(15_388_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_434 nanoseconds. + Weight::from_ref_time(8_839_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) fn force_default_xcm_version() -> Weight { - // Minimum execution time: 4_754 nanoseconds. - Weight::from_ref_time(4_857_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_484 nanoseconds. + Weight::from_ref_time(2_611_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm QueryCounter (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm QueryCounter (r:1 w:1) + /// Proof Skipped: PolkadotXcm QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_subscribe_version_notify() -> Weight { - // Minimum execution time: 31_107 nanoseconds. - Weight::from_ref_time(31_928_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `7729` + // Minimum execution time: 28_465 nanoseconds. + Weight::from_ref_time(29_023_000) + .saturating_add(Weight::from_proof_size(7729)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_unsubscribe_version_notify() -> Weight { - // Minimum execution time: 31_745 nanoseconds. - Weight::from_ref_time(32_243_000) + // Proof Size summary in bytes: + // Measured: `220` + // Estimated: `8470` + // Minimum execution time: 31_086 nanoseconds. + Weight::from_ref_time(31_385_000) + .saturating_add(Weight::from_proof_size(8470)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn migrate_supported_version() -> Weight { - // Minimum execution time: 13_855 nanoseconds. - Weight::from_ref_time(14_060_000) + // Proof Size summary in bytes: + // Measured: `95` + // Estimated: `9995` + // Minimum execution time: 13_701 nanoseconds. + Weight::from_ref_time(13_987_000) + .saturating_add(Weight::from_proof_size(9995)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) fn migrate_version_notifiers() -> Weight { - // Minimum execution time: 13_693 nanoseconds. - Weight::from_ref_time(13_984_000) + // Proof Size summary in bytes: + // Measured: `99` + // Estimated: `9999` + // Minimum execution time: 13_723 nanoseconds. + Weight::from_ref_time(14_166_000) + .saturating_add(Weight::from_proof_size(9999)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn already_notified_target() -> Weight { - // Minimum execution time: 15_148 nanoseconds. - Weight::from_ref_time(15_399_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `12481` + // Minimum execution time: 15_381 nanoseconds. + Weight::from_ref_time(16_770_000) + .saturating_add(Weight::from_proof_size(12481)) .saturating_add(T::DbWeight::get().reads(5)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn notify_current_targets() -> Weight { - // Minimum execution time: 26_582 nanoseconds. - Weight::from_ref_time(27_284_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10041` + // Minimum execution time: 27_952 nanoseconds. + Weight::from_ref_time(28_321_000) + .saturating_add(Weight::from_proof_size(10041)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn notify_target_migration_fail() -> Weight { - // Minimum execution time: 6_961 nanoseconds. - Weight::from_ref_time(7_139_000) + // Proof Size summary in bytes: + // Measured: `136` + // Estimated: `7561` + // Minimum execution time: 8_516 nanoseconds. + Weight::from_ref_time(8_922_000) + .saturating_add(Weight::from_proof_size(7561)) .saturating_add(T::DbWeight::get().reads(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn migrate_version_notify_targets() -> Weight { - // Minimum execution time: 14_094 nanoseconds. - Weight::from_ref_time(14_474_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10006` + // Minimum execution time: 16_615 nanoseconds. + Weight::from_ref_time(17_074_000) + .saturating_add(Weight::from_proof_size(10006)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn migrate_and_notify_old_targets() -> Weight { - // Minimum execution time: 31_931 nanoseconds. - Weight::from_ref_time(32_628_000) + // Proof Size summary in bytes: + // Measured: `112` + // Estimated: `15027` + // Minimum execution time: 36_726 nanoseconds. + Weight::from_ref_time(37_319_000) + .saturating_add(Weight::from_proof_size(15027)) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs index 65287260744..53ceaa231d9 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs @@ -17,7 +17,7 @@ mod pallet_xcm_benchmarks_fungible; mod pallet_xcm_benchmarks_generic; -use crate::Runtime; +use crate::{xcm_config::MaxAssetsIntoHolding, Runtime}; use frame_support::weights::Weight; use pallet_xcm_benchmarks_fungible::WeightInfo as XcmFungibleWeight; use pallet_xcm_benchmarks_generic::WeightInfo as XcmGeneric; @@ -35,7 +35,18 @@ impl WeighMultiAssets for MultiAssetFilter { match self { Self::Definite(assets) => weight.saturating_mul(assets.inner().into_iter().count() as u64), - Self::Wild(_) => weight.saturating_mul(MAX_ASSETS as u64), + Self::Wild(asset) => match asset { + All => weight.saturating_mul(MAX_ASSETS as u64), + AllOf { fun, .. } => match fun { + WildFungibility::Fungible => weight, + // Magic number 2 has to do with the fact that we could have up to 2 times + // MaxAssetsIntoHolding in the worst-case scenario. + WildFungibility::NonFungible => + weight.saturating_mul((MaxAssetsIntoHolding::get() * 2) as u64), + }, + AllCounted(count) => weight.saturating_mul(*count as u64), + AllOfCounted { count, .. } => weight.saturating_mul(*count as u64), + }, } } } @@ -138,10 +149,7 @@ impl XcmWeightInfo for BridgeHubKusamaXcmWeight { _dest: &MultiLocation, _xcm: &Xcm<()>, ) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_ref_time(200_000_000 as u64); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()) } fn report_holding(_response_info: &QueryResponseInfo, _assets: &MultiAssetFilter) -> Weight { XcmGeneric::::report_holding() diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs index e1129eb7084..59808400167 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::fungible` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -49,58 +49,81 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn withdraw_asset() -> Weight { - Weight::from_ref_time(29_875_000 as u64) + Weight::from_ref_time(18_301_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn transfer_asset() -> Weight { - Weight::from_ref_time(42_299_000 as u64) + Weight::from_ref_time(29_321_000 as u64) .saturating_add(T::DbWeight::get().reads(2 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn transfer_reserve_asset() -> Weight { - Weight::from_ref_time(66_218_000 as u64) + Weight::from_ref_time(50_754_000 as u64) .saturating_add(T::DbWeight::get().reads(8 as u64)) .saturating_add(T::DbWeight::get().writes(4 as u64)) } pub(crate) fn receive_teleported_asset() -> Weight { - Weight::from_ref_time(7_627_000 as u64) + Weight::from_ref_time(3_814_000 as u64) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn deposit_asset() -> Weight { - Weight::from_ref_time(32_163_000 as u64) + Weight::from_ref_time(21_596_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn deposit_reserve_asset() -> Weight { - Weight::from_ref_time(57_496_000 as u64) + Weight::from_ref_time(45_534_000 as u64) .saturating_add(T::DbWeight::get().reads(7 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_teleport() -> Weight { - Weight::from_ref_time(35_502_000 as u64) + Weight::from_ref_time(26_876_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_generic.rs b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_generic.rs index 0f342d87e99..45bc0952507 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_generic.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_generic.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::generic` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024 // Executed Command: @@ -49,145 +49,184 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_holding() -> Weight { - Weight::from_ref_time(43_400_000 as u64) + Weight::from_ref_time(30_320_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn buy_execution() -> Weight { - Weight::from_ref_time(6_013_000 as u64) + Weight::from_ref_time(2_776_000 as u64) } // Storage: PolkadotXcm Queries (r:1 w:0) + // Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) pub(crate) fn query_response() -> Weight { - Weight::from_ref_time(19_456_000 as u64) + Weight::from_ref_time(10_396_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) } pub(crate) fn transact() -> Weight { - Weight::from_ref_time(23_878_000 as u64) + Weight::from_ref_time(11_646_000 as u64) } pub(crate) fn refund_surplus() -> Weight { - Weight::from_ref_time(6_415_000 as u64) + Weight::from_ref_time(2_853_000 as u64) } pub(crate) fn set_error_handler() -> Weight { - Weight::from_ref_time(6_119_000 as u64) + Weight::from_ref_time(2_746_000 as u64) } pub(crate) fn set_appendix() -> Weight { - Weight::from_ref_time(6_023_000 as u64) + Weight::from_ref_time(2_742_000 as u64) } pub(crate) fn clear_error() -> Weight { - Weight::from_ref_time(6_241_000 as u64) + Weight::from_ref_time(2_750_000 as u64) } pub(crate) fn descend_origin() -> Weight { - Weight::from_ref_time(7_376_000 as u64) + Weight::from_ref_time(3_512_000 as u64) } pub(crate) fn clear_origin() -> Weight { - Weight::from_ref_time(6_400_000 as u64) + Weight::from_ref_time(2_710_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_error() -> Weight { - Weight::from_ref_time(32_181_000 as u64) + Weight::from_ref_time(23_834_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: PolkadotXcm AssetTraps (r:1 w:1) + // Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) pub(crate) fn claim_asset() -> Weight { - Weight::from_ref_time(23_100_000 as u64) + Weight::from_ref_time(14_091_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } pub(crate) fn trap() -> Weight { - Weight::from_ref_time(6_305_000 as u64) + Weight::from_ref_time(2_702_000 as u64) } // Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn subscribe_version() -> Weight { - Weight::from_ref_time(35_429_000 as u64) + Weight::from_ref_time(24_071_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) pub(crate) fn unsubscribe_version() -> Weight { - Weight::from_ref_time(7_802_000 as u64) + Weight::from_ref_time(4_648_000 as u64) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_reserve_withdraw() -> Weight { - Weight::from_ref_time(38_381_000 as u64) + Weight::from_ref_time(26_772_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn burn_asset() -> Weight { - Weight::from_ref_time(7_690_000 as u64) + Weight::from_ref_time(4_249_000 as u64) } pub(crate) fn expect_asset() -> Weight { - Weight::from_ref_time(6_165_000 as u64) + Weight::from_ref_time(2_860_000 as u64) } pub(crate) fn expect_origin() -> Weight { - Weight::from_ref_time(7_276_000 as u64) + Weight::from_ref_time(2_849_000 as u64) } pub(crate) fn expect_error() -> Weight { - Weight::from_ref_time(6_193_000 as u64) + Weight::from_ref_time(2_692_000 as u64) } pub(crate) fn expect_transact_status() -> Weight { - Weight::from_ref_time(7_076_000 as u64) + Weight::from_ref_time(2_886_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn query_pallet() -> Weight { - Weight::from_ref_time(37_138_000 as u64) + Weight::from_ref_time(28_452_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn expect_pallet() -> Weight { - Weight::from_ref_time(8_726_000 as u64) + Weight::from_ref_time(4_257_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_transact_status() -> Weight { - Weight::from_ref_time(32_311_000 as u64) + Weight::from_ref_time(24_235_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn clear_transact_status() -> Weight { - Weight::from_ref_time(6_078_000 as u64) + Weight::from_ref_time(2_749_000 as u64) } pub(crate) fn set_topic() -> Weight { - Weight::from_ref_time(6_234_000 as u64) + Weight::from_ref_time(2_718_000 as u64) } pub(crate) fn clear_topic() -> Weight { - Weight::from_ref_time(6_739_000 as u64) + Weight::from_ref_time(2_685_000 as u64) } pub(crate) fn set_fees_mode() -> Weight { - Weight::from_ref_time(6_060_000 as u64) + Weight::from_ref_time(2_735_000 as u64) } pub(crate) fn unpaid_execution() -> Weight { - Weight::from_ref_time(6_940_000 as u64) + Weight::from_ref_time(2_842_000 as u64) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs index f084acc0071..9df3a253378 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `cumulus_pallet_xcmp_queue` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=cumulus_pallet_xcmp_queue -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,17 +47,27 @@ use sp_std::marker::PhantomData; /// Weight functions for `cumulus_pallet_xcmp_queue`. pub struct WeightInfo(PhantomData); impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_u32() -> Weight { - // Minimum execution time: 6_741 nanoseconds. - Weight::from_ref_time(7_108_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_798 nanoseconds. + Weight::from_ref_time(5_139_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_weight() -> Weight { - // Minimum execution time: 6_662 nanoseconds. - Weight::from_ref_time(7_133_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_942 nanoseconds. + Weight::from_ref_time(5_056_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/frame_system.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/frame_system.rs index cbb59ec3bf4..7627e18c453 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/frame_system.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/frame_system.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `frame_system` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-24, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=frame_system -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/frame_system.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -49,51 +49,81 @@ pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { /// The range of component `b` is `[0, 3932160]`. fn remark(b: u32, ) -> Weight { - // Minimum execution time: 3_595 nanoseconds. - Weight::from_ref_time(1_092_995) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_628 nanoseconds. + Weight::from_ref_time(1_691_000) + .saturating_add(Weight::from_proof_size(0)) // Standard Error: 0 - .saturating_add(Weight::from_ref_time(538).saturating_mul(b.into())) + .saturating_add(Weight::from_ref_time(369).saturating_mul(b.into())) } /// The range of component `b` is `[0, 3932160]`. fn remark_with_event(b: u32, ) -> Weight { - // Minimum execution time: 13_159 nanoseconds. - Weight::from_ref_time(215_912_983) - // Standard Error: 5 - .saturating_add(Weight::from_ref_time(1_904).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_332 nanoseconds. + Weight::from_ref_time(6_564_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 0 + .saturating_add(Weight::from_ref_time(1_714).saturating_mul(b.into())) } - // Storage: System Digest (r:1 w:1) - // Storage: unknown [0x3a686561707061676573] (r:0 w:1) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: unknown `0x3a686561707061676573` (r:0 w:1) + /// Proof Skipped: unknown `0x3a686561707061676573` (r:0 w:1) fn set_heap_pages() -> Weight { - // Minimum execution time: 7_713 nanoseconds. - Weight::from_ref_time(7_991_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `495` + // Minimum execution time: 3_441 nanoseconds. + Weight::from_ref_time(3_684_000) + .saturating_add(Weight::from_proof_size(495)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn set_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_618 nanoseconds. - Weight::from_ref_time(3_808_000) - // Standard Error: 2_175 - .saturating_add(Weight::from_ref_time(679_779).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_698 nanoseconds. + Weight::from_ref_time(1_802_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_738 + .saturating_add(Weight::from_ref_time(576_825).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn kill_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_847 nanoseconds. - Weight::from_ref_time(3_941_000) - // Standard Error: 947 - .saturating_add(Weight::from_ref_time(518_725).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_782 nanoseconds. + Weight::from_ref_time(1_826_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 808 + .saturating_add(Weight::from_ref_time(446_795).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `p` is `[0, 1000]`. fn kill_prefix(p: u32, ) -> Weight { - // Minimum execution time: 5_334 nanoseconds. - Weight::from_ref_time(5_499_000) - // Standard Error: 1_248 - .saturating_add(Weight::from_ref_time(1_158_538).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `68 + p * (69 ±0)` + // Estimated: `66 + p * (70 ±0)` + // Minimum execution time: 3_444 nanoseconds. + Weight::from_ref_time(3_538_000) + .saturating_add(Weight::from_proof_size(66)) + // Standard Error: 920 + .saturating_add(Weight::from_ref_time(950_898).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_proof_size(70).saturating_mul(p.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_balances.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_balances.rs index e8bc48aa5ff..a9ef15db2b6 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_balances.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_balances.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_balances` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-24, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_balances -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_balances.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,52 +47,87 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 44_033 nanoseconds. - Weight::from_ref_time(45_268_000) + // Proof Size summary in bytes: + // Measured: `1316` + // Estimated: `2603` + // Minimum execution time: 44_427 nanoseconds. + Weight::from_ref_time(45_164_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 32_974 nanoseconds. - Weight::from_ref_time(33_951_000) + // Proof Size summary in bytes: + // Measured: `1200` + // Estimated: `2603` + // Minimum execution time: 34_287 nanoseconds. + Weight::from_ref_time(34_918_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_creating() -> Weight { - // Minimum execution time: 23_747 nanoseconds. - Weight::from_ref_time(24_475_000) + // Proof Size summary in bytes: + // Measured: `1350` + // Estimated: `2603` + // Minimum execution time: 25_850 nanoseconds. + Weight::from_ref_time(26_521_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_killing() -> Weight { - // Minimum execution time: 26_793 nanoseconds. - Weight::from_ref_time(27_611_000) + // Proof Size summary in bytes: + // Measured: `1350` + // Estimated: `2603` + // Minimum execution time: 29_118 nanoseconds. + Weight::from_ref_time(29_706_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:2 w:2) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 43_936 nanoseconds. - Weight::from_ref_time(45_620_000) + // Proof Size summary in bytes: + // Measured: `1312` + // Estimated: `5206` + // Minimum execution time: 45_010 nanoseconds. + Weight::from_ref_time(45_568_000) + .saturating_add(Weight::from_proof_size(5206)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_all() -> Weight { - // Minimum execution time: 38_911 nanoseconds. - Weight::from_ref_time(40_492_000) + // Proof Size summary in bytes: + // Measured: `1200` + // Estimated: `2603` + // Minimum execution time: 39_332 nanoseconds. + Weight::from_ref_time(40_015_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_unreserve() -> Weight { - // Minimum execution time: 20_809 nanoseconds. - Weight::from_ref_time(21_350_000) + // Proof Size summary in bytes: + // Measured: `1234` + // Estimated: `2603` + // Minimum execution time: 22_710 nanoseconds. + Weight::from_ref_time(23_111_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_collator_selection.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_collator_selection.rs index 54856fc307c..b3bb675c2d4 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_collator_selection.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_collator_selection.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_collator_selection` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_collator_selection -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_collator_selection.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,79 +47,131 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_collator_selection`. pub struct WeightInfo(PhantomData); impl pallet_collator_selection::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Storage: Session NextKeys (r:100 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) /// The range of component `b` is `[1, 100]`. fn set_invulnerables(b: u32, ) -> Weight { - // Minimum execution time: 20_790 nanoseconds. - Weight::from_ref_time(20_844_138) - // Standard Error: 3_727 - .saturating_add(Weight::from_ref_time(2_929_505).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `214 + b * (78 ±0)` + // Estimated: `213 + b * (2554 ±0)` + // Minimum execution time: 13_937 nanoseconds. + Weight::from_ref_time(14_498_919) + .saturating_add(Weight::from_proof_size(213)) + // Standard Error: 2_987 + .saturating_add(Weight::from_ref_time(2_491_437).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(2554).saturating_mul(b.into())) } - // Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn set_desired_candidates() -> Weight { - // Minimum execution time: 13_911 nanoseconds. - Weight::from_ref_time(14_401_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_465 nanoseconds. + Weight::from_ref_time(6_739_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) fn set_candidacy_bond() -> Weight { - // Minimum execution time: 14_222 nanoseconds. - Weight::from_ref_time(14_727_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_624 nanoseconds. + Weight::from_ref_time(6_822_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection DesiredCandidates (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection CandidacyBond (r:1 w:0) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection DesiredCandidates (r:1 w:0) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Session NextKeys (r:1 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection CandidacyBond (r:1 w:0) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[1, 999]`. fn register_as_candidate(c: u32, ) -> Weight { - // Minimum execution time: 47_401 nanoseconds. - Weight::from_ref_time(48_862_013) - // Standard Error: 1_635 - .saturating_add(Weight::from_ref_time(202_080).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `1167 + c * (48 ±0)` + // Estimated: `56785 + c * (49 ±0)` + // Minimum execution time: 34_794 nanoseconds. + Weight::from_ref_time(27_197_409) + .saturating_add(Weight::from_proof_size(56785)) + // Standard Error: 1_259 + .saturating_add(Weight::from_ref_time(101_424).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_proof_size(49).saturating_mul(c.into())) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[6, 1000]`. fn leave_intent(c: u32, ) -> Weight { - // Minimum execution time: 35_909 nanoseconds. - Weight::from_ref_time(33_275_102) - // Standard Error: 1_529 - .saturating_add(Weight::from_ref_time(185_121).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `503 + c * (48 ±0)` + // Estimated: `48497` + // Minimum execution time: 26_471 nanoseconds. + Weight::from_ref_time(16_092_836) + .saturating_add(Weight::from_proof_size(48497)) + // Standard Error: 1_283 + .saturating_add(Weight::from_ref_time(103_788).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:2 w:2) - // Storage: System BlockWeight (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) fn note_author() -> Weight { - // Minimum execution time: 34_753 nanoseconds. - Weight::from_ref_time(35_825_000) + // Proof Size summary in bytes: + // Measured: `187` + // Estimated: `5749` + // Minimum execution time: 25_597 nanoseconds. + Weight::from_ref_time(25_981_000) + .saturating_add(Weight::from_proof_size(5749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:1000 w:1) - // Storage: System Account (r:1 w:1) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: System BlockWeight (r:1 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:0) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:999 w:0) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: System Account (r:995 w:995) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `r` is `[1, 1000]`. /// The range of component `c` is `[1, 1000]`. - fn new_session(_r: u32, c: u32, ) -> Weight { - // Minimum execution time: 18_398 nanoseconds. - Weight::from_ref_time(18_545_000) - // Standard Error: 839_226 - .saturating_add(Weight::from_ref_time(30_951_937).saturating_mul(c.into())) + fn new_session(r: u32, c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `22878 + r * (148 ±0) + c * (97 ±0)` + // Estimated: `52737 + c * (2519 ±0) + r * (2602 ±0)` + // Minimum execution time: 15_961 nanoseconds. + Weight::from_ref_time(16_207_000) + .saturating_add(Weight::from_proof_size(52737)) + // Standard Error: 748_921 + .saturating_add(Weight::from_ref_time(27_460_211).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(2519).saturating_mul(c.into())) + .saturating_add(Weight::from_proof_size(2602).saturating_mul(r.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_multisig.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_multisig.rs index 46f6cc188a4..899d9f50a57 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_multisig.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_multisig.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_multisig` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_multisig -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_multisig.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -49,80 +49,113 @@ pub struct WeightInfo(PhantomData); impl pallet_multisig::WeightInfo for WeightInfo { /// The range of component `z` is `[0, 10000]`. fn as_multi_threshold_1(z: u32, ) -> Weight { - // Minimum execution time: 17_220 nanoseconds. - Weight::from_ref_time(18_207_069) - // Standard Error: 7 - .saturating_add(Weight::from_ref_time(644).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 11_693 nanoseconds. + Weight::from_ref_time(12_218_501) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1 + .saturating_add(Weight::from_ref_time(479).saturating_mul(z.into())) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_create(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 48_915 nanoseconds. - Weight::from_ref_time(35_242_790) - // Standard Error: 1_460 - .saturating_add(Weight::from_ref_time(156_737).saturating_mul(s.into())) - // Standard Error: 14 - .saturating_add(Weight::from_ref_time(1_950).saturating_mul(z.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `314 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 35_181 nanoseconds. + Weight::from_ref_time(28_585_764) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 609 + .saturating_add(Weight::from_ref_time(72_658).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_476).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[3, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_approve(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 37_069 nanoseconds. - Weight::from_ref_time(24_646_993) - // Standard Error: 949 - .saturating_add(Weight::from_ref_time(137_918).saturating_mul(s.into())) - // Standard Error: 9 - .saturating_add(Weight::from_ref_time(1_960).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 26_110 nanoseconds. + Weight::from_ref_time(19_809_417) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 448 + .saturating_add(Weight::from_ref_time(69_542).saturating_mul(s.into())) + // Standard Error: 4 + .saturating_add(Weight::from_ref_time(1_514).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_complete(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 53_162 nanoseconds. - Weight::from_ref_time(36_528_118) - // Standard Error: 1_394 - .saturating_add(Weight::from_ref_time(191_697).saturating_mul(s.into())) - // Standard Error: 13 - .saturating_add(Weight::from_ref_time(2_105).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `451 + s * (33 ±0)` + // Estimated: `8424` + // Minimum execution time: 39_991 nanoseconds. + Weight::from_ref_time(31_329_529) + .saturating_add(Weight::from_proof_size(8424)) + // Standard Error: 567 + .saturating_add(Weight::from_ref_time(90_826).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_527).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_create(s: u32, ) -> Weight { - // Minimum execution time: 32_883 nanoseconds. - Weight::from_ref_time(34_761_180) - // Standard Error: 1_582 - .saturating_add(Weight::from_ref_time(155_727).saturating_mul(s.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `321 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 25_124 nanoseconds. + Weight::from_ref_time(26_655_548) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 743 + .saturating_add(Weight::from_ref_time(78_904).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_approve(s: u32, ) -> Weight { - // Minimum execution time: 22_521 nanoseconds. - Weight::from_ref_time(24_339_043) - // Standard Error: 1_104 - .saturating_add(Weight::from_ref_time(130_836).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 16_950 nanoseconds. + Weight::from_ref_time(18_308_894) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 676 + .saturating_add(Weight::from_ref_time(71_574).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn cancel_as_multi(s: u32, ) -> Weight { - // Minimum execution time: 32_713 nanoseconds. - Weight::from_ref_time(34_897_366) - // Standard Error: 1_430 - .saturating_add(Weight::from_ref_time(146_158).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `517 + s * (1 ±0)` + // Estimated: `5821` + // Minimum execution time: 26_127 nanoseconds. + Weight::from_ref_time(27_889_146) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 729 + .saturating_add(Weight::from_ref_time(78_618).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_session.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_session.rs index dd43055ca66..6b0d5a621c4 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_session.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_session.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_session` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_session -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_session.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,19 +47,31 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_session`. pub struct WeightInfo(PhantomData); impl pallet_session::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:1 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:1 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - // Minimum execution time: 22_046 nanoseconds. - Weight::from_ref_time(22_707_000) + // Proof Size summary in bytes: + // Measured: `297` + // Estimated: `5544` + // Minimum execution time: 15_314 nanoseconds. + Weight::from_ref_time(15_944_000) + .saturating_add(Weight::from_proof_size(5544)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:0 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:0 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn purge_keys() -> Weight { - // Minimum execution time: 18_379 nanoseconds. - Weight::from_ref_time(18_853_000) + // Proof Size summary in bytes: + // Measured: `279` + // Estimated: `3033` + // Minimum execution time: 11_831 nanoseconds. + Weight::from_ref_time(12_113_000) + .saturating_add(Weight::from_proof_size(3033)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_timestamp.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_timestamp.rs index ccd17358104..00fca8bf5a6 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_timestamp.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_timestamp.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_timestamp` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_timestamp -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_timestamp.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,16 +47,26 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { - // Storage: Timestamp Now (r:1 w:1) - // Storage: Aura CurrentSlot (r:1 w:0) + /// Storage: Timestamp Now (r:1 w:1) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + /// Storage: Aura CurrentSlot (r:1 w:0) + /// Proof: Aura CurrentSlot (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) fn set() -> Weight { - // Minimum execution time: 8_887 nanoseconds. - Weight::from_ref_time(9_240_000) + // Proof Size summary in bytes: + // Measured: `49` + // Estimated: `1006` + // Minimum execution time: 6_885 nanoseconds. + Weight::from_ref_time(7_281_000) + .saturating_add(Weight::from_proof_size(1006)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } fn on_finalize() -> Weight { - // Minimum execution time: 3_887 nanoseconds. - Weight::from_ref_time(4_115_000) + // Proof Size summary in bytes: + // Measured: `57` + // Estimated: `0` + // Minimum execution time: 3_222 nanoseconds. + Weight::from_ref_time(3_321_000) + .saturating_add(Weight::from_proof_size(0)) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_utility.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_utility.rs index 07292d6192d..8d17c28c9d6 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_utility.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_utility.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_utility` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_utility -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_utility.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -49,31 +49,51 @@ pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { /// The range of component `c` is `[0, 1000]`. fn batch(c: u32, ) -> Weight { - // Minimum execution time: 12_876 nanoseconds. - Weight::from_ref_time(15_632_636) - // Standard Error: 1_443 - .saturating_add(Weight::from_ref_time(4_450_173).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_910 nanoseconds. + Weight::from_ref_time(5_269_110) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_509 + .saturating_add(Weight::from_ref_time(3_869_188).saturating_mul(c.into())) } fn as_derivative() -> Weight { - // Minimum execution time: 6_177 nanoseconds. - Weight::from_ref_time(6_434_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_304 nanoseconds. + Weight::from_ref_time(4_463_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn batch_all(c: u32, ) -> Weight { - // Minimum execution time: 13_062 nanoseconds. - Weight::from_ref_time(18_049_724) - // Standard Error: 1_803 - .saturating_add(Weight::from_ref_time(4_699_471).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_985 nanoseconds. + Weight::from_ref_time(10_119_502) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_585 + .saturating_add(Weight::from_ref_time(4_063_211).saturating_mul(c.into())) } fn dispatch_as() -> Weight { - // Minimum execution time: 14_760 nanoseconds. - Weight::from_ref_time(15_538_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_746 nanoseconds. + Weight::from_ref_time(8_027_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn force_batch(c: u32, ) -> Weight { - // Minimum execution time: 12_837 nanoseconds. - Weight::from_ref_time(16_664_335) - // Standard Error: 1_252 - .saturating_add(Weight::from_ref_time(4_427_910).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_082 nanoseconds. + Weight::from_ref_time(10_385_233) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_217 + .saturating_add(Weight::from_ref_time(3_855_940).saturating_mul(c.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_xcm.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_xcm.rs index 1e702c0a924..3e98d1aa9b4 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_xcm.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_xcm.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_xcm` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/pallet_xcm.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,126 +47,228 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_xcm`. pub struct WeightInfo(PhantomData); impl pallet_xcm::WeightInfo for WeightInfo { - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn send() -> Weight { - // Minimum execution time: 31_605 nanoseconds. - Weight::from_ref_time(32_960_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `4645` + // Minimum execution time: 24_136 nanoseconds. + Weight::from_ref_time(24_562_000) + .saturating_add(Weight::from_proof_size(4645)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn teleport_assets() -> Weight { - // Minimum execution time: 31_684 nanoseconds. - Weight::from_ref_time(32_805_000) + // Proof Size summary in bytes: + // Measured: `32` + // Estimated: `499` + // Minimum execution time: 23_272 nanoseconds. + Weight::from_ref_time(23_644_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn reserve_transfer_assets() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn execute() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn force_xcm_version() -> Weight { - // Minimum execution time: 15_306 nanoseconds. - Weight::from_ref_time(15_810_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_377 nanoseconds. + Weight::from_ref_time(8_642_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) fn force_default_xcm_version() -> Weight { - // Minimum execution time: 4_345 nanoseconds. - Weight::from_ref_time(4_652_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_435 nanoseconds. + Weight::from_ref_time(2_556_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm QueryCounter (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm QueryCounter (r:1 w:1) + /// Proof Skipped: PolkadotXcm QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_subscribe_version_notify() -> Weight { - // Minimum execution time: 36_554 nanoseconds. - Weight::from_ref_time(37_754_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `7729` + // Minimum execution time: 28_539 nanoseconds. + Weight::from_ref_time(29_177_000) + .saturating_add(Weight::from_proof_size(7729)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_unsubscribe_version_notify() -> Weight { - // Minimum execution time: 36_097 nanoseconds. - Weight::from_ref_time(37_397_000) + // Proof Size summary in bytes: + // Measured: `220` + // Estimated: `8470` + // Minimum execution time: 30_607 nanoseconds. + Weight::from_ref_time(31_019_000) + .saturating_add(Weight::from_proof_size(8470)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn migrate_supported_version() -> Weight { - // Minimum execution time: 14_333 nanoseconds. - Weight::from_ref_time(14_681_000) + // Proof Size summary in bytes: + // Measured: `95` + // Estimated: `9995` + // Minimum execution time: 13_842 nanoseconds. + Weight::from_ref_time(14_281_000) + .saturating_add(Weight::from_proof_size(9995)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) fn migrate_version_notifiers() -> Weight { - // Minimum execution time: 14_413 nanoseconds. - Weight::from_ref_time(18_491_000) + // Proof Size summary in bytes: + // Measured: `99` + // Estimated: `9999` + // Minimum execution time: 13_505 nanoseconds. + Weight::from_ref_time(13_981_000) + .saturating_add(Weight::from_proof_size(9999)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn already_notified_target() -> Weight { - // Minimum execution time: 16_639 nanoseconds. - Weight::from_ref_time(17_102_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `12481` + // Minimum execution time: 16_415 nanoseconds. + Weight::from_ref_time(16_752_000) + .saturating_add(Weight::from_proof_size(12481)) .saturating_add(T::DbWeight::get().reads(5)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn notify_current_targets() -> Weight { - // Minimum execution time: 31_535 nanoseconds. - Weight::from_ref_time(32_508_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10041` + // Minimum execution time: 29_952 nanoseconds. + Weight::from_ref_time(30_592_000) + .saturating_add(Weight::from_proof_size(10041)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn notify_target_migration_fail() -> Weight { - // Minimum execution time: 7_504 nanoseconds. - Weight::from_ref_time(10_250_000) + // Proof Size summary in bytes: + // Measured: `136` + // Estimated: `7561` + // Minimum execution time: 8_259 nanoseconds. + Weight::from_ref_time(8_608_000) + .saturating_add(Weight::from_proof_size(7561)) .saturating_add(T::DbWeight::get().reads(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn migrate_version_notify_targets() -> Weight { - // Minimum execution time: 14_883 nanoseconds. - Weight::from_ref_time(15_312_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10006` + // Minimum execution time: 16_259 nanoseconds. + Weight::from_ref_time(16_574_000) + .saturating_add(Weight::from_proof_size(10006)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn migrate_and_notify_old_targets() -> Weight { - // Minimum execution time: 37_848 nanoseconds. - Weight::from_ref_time(38_450_000) + // Proof Size summary in bytes: + // Measured: `112` + // Estimated: `15027` + // Minimum execution time: 35_748 nanoseconds. + Weight::from_ref_time(36_667_000) + .saturating_add(Weight::from_proof_size(15027)) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs index 9ebd31d5066..133339e1119 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs @@ -17,7 +17,7 @@ mod pallet_xcm_benchmarks_fungible; mod pallet_xcm_benchmarks_generic; -use crate::Runtime; +use crate::{xcm_config::MaxAssetsIntoHolding, Runtime}; use frame_support::weights::Weight; use pallet_xcm_benchmarks_fungible::WeightInfo as XcmFungibleWeight; use pallet_xcm_benchmarks_generic::WeightInfo as XcmGeneric; @@ -35,7 +35,18 @@ impl WeighMultiAssets for MultiAssetFilter { match self { Self::Definite(assets) => weight.saturating_mul(assets.inner().into_iter().count() as u64), - Self::Wild(_) => weight.saturating_mul(MAX_ASSETS as u64), + Self::Wild(asset) => match asset { + All => weight.saturating_mul(MAX_ASSETS as u64), + AllOf { fun, .. } => match fun { + WildFungibility::Fungible => weight, + // Magic number 2 has to do with the fact that we could have up to 2 times + // MaxAssetsIntoHolding in the worst-case scenario. + WildFungibility::NonFungible => + weight.saturating_mul((MaxAssetsIntoHolding::get() * 2) as u64), + }, + AllCounted(count) => weight.saturating_mul(*count as u64), + AllOfCounted { count, .. } => weight.saturating_mul(*count as u64), + }, } } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs index 5c15d9dc881..16b450765d1 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs @@ -18,26 +18,25 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::fungible` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-30, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --template=./templates/xcm-bench-template.hbs +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm_benchmarks::fungible -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --template=./templates/xcm-bench-template.hbs -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -52,14 +51,14 @@ impl WeightInfo { // Storage: System Account (r:1 w:1) // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn withdraw_asset() -> Weight { - Weight::from_ref_time(18_794_000 as u64) + Weight::from_ref_time(18_910_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:2 w:2) // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn transfer_asset() -> Weight { - Weight::from_ref_time(30_930_000 as u64) + Weight::from_ref_time(29_462_000 as u64) .saturating_add(T::DbWeight::get().reads(2 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } @@ -78,17 +77,17 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn transfer_reserve_asset() -> Weight { - Weight::from_ref_time(52_558_000 as u64) + Weight::from_ref_time(51_265_000 as u64) .saturating_add(T::DbWeight::get().reads(8 as u64)) .saturating_add(T::DbWeight::get().writes(4 as u64)) } pub(crate) fn receive_teleported_asset() -> Weight { - Weight::from_ref_time(3_681_000 as u64) + Weight::from_ref_time(3_874_000 as u64) } // Storage: System Account (r:1 w:1) // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn deposit_asset() -> Weight { - Weight::from_ref_time(22_348_000 as u64) + Weight::from_ref_time(23_139_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } @@ -107,7 +106,7 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn deposit_reserve_asset() -> Weight { - Weight::from_ref_time(46_545_000 as u64) + Weight::from_ref_time(49_375_000 as u64) .saturating_add(T::DbWeight::get().reads(7 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } @@ -124,7 +123,7 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_teleport() -> Weight { - Weight::from_ref_time(27_775_000 as u64) + Weight::from_ref_time(28_809_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_generic.rs b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_generic.rs index 6959908e0a7..51597a0cca4 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_generic.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_generic.rs @@ -18,26 +18,25 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::generic` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-30, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// target/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --template=./templates/xcm-bench-template.hbs +// --chain=bridge-hub-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/builds/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm_benchmarks::generic -// --chain=bridge-hub-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --template=./templates/xcm-bench-template.hbs -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_generic.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -62,39 +61,39 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_holding() -> Weight { - Weight::from_ref_time(29_919_000 as u64) + Weight::from_ref_time(30_138_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn buy_execution() -> Weight { - Weight::from_ref_time(2_662_000 as u64) + Weight::from_ref_time(2_860_000 as u64) } // Storage: PolkadotXcm Queries (r:1 w:0) // Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) pub(crate) fn query_response() -> Weight { - Weight::from_ref_time(10_319_000 as u64) + Weight::from_ref_time(10_421_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) } pub(crate) fn transact() -> Weight { - Weight::from_ref_time(11_517_000 as u64) + Weight::from_ref_time(11_744_000 as u64) } pub(crate) fn refund_surplus() -> Weight { - Weight::from_ref_time(2_730_000 as u64) + Weight::from_ref_time(3_024_000 as u64) } pub(crate) fn set_error_handler() -> Weight { - Weight::from_ref_time(2_703_000 as u64) + Weight::from_ref_time(2_820_000 as u64) } pub(crate) fn set_appendix() -> Weight { - Weight::from_ref_time(2_682_000 as u64) + Weight::from_ref_time(2_869_000 as u64) } pub(crate) fn clear_error() -> Weight { - Weight::from_ref_time(2_644_000 as u64) + Weight::from_ref_time(2_838_000 as u64) } pub(crate) fn descend_origin() -> Weight { - Weight::from_ref_time(3_437_000 as u64) + Weight::from_ref_time(3_620_000 as u64) } pub(crate) fn clear_origin() -> Weight { - Weight::from_ref_time(2_611_000 as u64) + Weight::from_ref_time(2_819_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) @@ -109,19 +108,19 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_error() -> Weight { - Weight::from_ref_time(23_994_000 as u64) + Weight::from_ref_time(23_931_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: PolkadotXcm AssetTraps (r:1 w:1) // Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) pub(crate) fn claim_asset() -> Weight { - Weight::from_ref_time(13_925_000 as u64) + Weight::from_ref_time(13_776_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } pub(crate) fn trap() -> Weight { - Weight::from_ref_time(2_601_000 as u64) + Weight::from_ref_time(2_784_000 as u64) } // Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) @@ -136,14 +135,14 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn subscribe_version() -> Weight { - Weight::from_ref_time(24_656_000 as u64) + Weight::from_ref_time(23_940_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) pub(crate) fn unsubscribe_version() -> Weight { - Weight::from_ref_time(4_435_000 as u64) + Weight::from_ref_time(4_676_000 as u64) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) @@ -159,24 +158,24 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_reserve_withdraw() -> Weight { - Weight::from_ref_time(26_558_000 as u64) + Weight::from_ref_time(26_390_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn burn_asset() -> Weight { - Weight::from_ref_time(4_188_000 as u64) + Weight::from_ref_time(4_435_000 as u64) } pub(crate) fn expect_asset() -> Weight { - Weight::from_ref_time(2_776_000 as u64) + Weight::from_ref_time(2_940_000 as u64) } pub(crate) fn expect_origin() -> Weight { - Weight::from_ref_time(2_731_000 as u64) + Weight::from_ref_time(2_898_000 as u64) } pub(crate) fn expect_error() -> Weight { - Weight::from_ref_time(2_655_000 as u64) + Weight::from_ref_time(2_795_000 as u64) } pub(crate) fn expect_transact_status() -> Weight { - Weight::from_ref_time(3_535_000 as u64) + Weight::from_ref_time(2_908_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) @@ -191,12 +190,12 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn query_pallet() -> Weight { - Weight::from_ref_time(26_576_000 as u64) + Weight::from_ref_time(26_452_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn expect_pallet() -> Weight { - Weight::from_ref_time(4_242_000 as u64) + Weight::from_ref_time(4_303_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) @@ -211,23 +210,23 @@ impl WeightInfo { // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_transact_status() -> Weight { - Weight::from_ref_time(24_342_000 as u64) + Weight::from_ref_time(23_994_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn clear_transact_status() -> Weight { - Weight::from_ref_time(2_651_000 as u64) + Weight::from_ref_time(2_789_000 as u64) } pub(crate) fn set_topic() -> Weight { - Weight::from_ref_time(2_655_000 as u64) + Weight::from_ref_time(2_789_000 as u64) } pub(crate) fn clear_topic() -> Weight { - Weight::from_ref_time(2_632_000 as u64) + Weight::from_ref_time(2_836_000 as u64) } pub(crate) fn set_fees_mode() -> Weight { - Weight::from_ref_time(2_658_000 as u64) + Weight::from_ref_time(2_763_000 as u64) } pub(crate) fn unpaid_execution() -> Weight { - Weight::from_ref_time(2_813_000 as u64) + Weight::from_ref_time(2_872_000 as u64) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/cumulus_pallet_xcmp_queue.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/cumulus_pallet_xcmp_queue.rs index 01b278f916f..12a6c7a0c82 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/cumulus_pallet_xcmp_queue.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/cumulus_pallet_xcmp_queue.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `cumulus_pallet_xcmp_queue` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -46,17 +47,27 @@ use sp_std::marker::PhantomData; /// Weight functions for `cumulus_pallet_xcmp_queue`. pub struct WeightInfo(PhantomData); impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_u32() -> Weight { - // Minimum execution time: 7_000 nanoseconds. - Weight::from_ref_time(7_244_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_865 nanoseconds. + Weight::from_ref_time(5_007_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_weight() -> Weight { - // Minimum execution time: 6_827 nanoseconds. - Weight::from_ref_time(7_308_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_893 nanoseconds. + Weight::from_ref_time(5_198_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/frame_system.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/frame_system.rs index b8c3d923e49..457c5163a0b 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/frame_system.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/frame_system.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `frame_system` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -48,51 +49,81 @@ pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { /// The range of component `b` is `[0, 3932160]`. fn remark(b: u32, ) -> Weight { - // Minimum execution time: 3_793 nanoseconds. - Weight::from_ref_time(1_027_073) - // Standard Error: 1 - .saturating_add(Weight::from_ref_time(558).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_592 nanoseconds. + Weight::from_ref_time(679_524) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 0 + .saturating_add(Weight::from_ref_time(367).saturating_mul(b.into())) } /// The range of component `b` is `[0, 3932160]`. fn remark_with_event(b: u32, ) -> Weight { - // Minimum execution time: 13_380 nanoseconds. - Weight::from_ref_time(13_693_000) - // Standard Error: 2 - .saturating_add(Weight::from_ref_time(2_265).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_673 nanoseconds. + Weight::from_ref_time(6_751_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 0 + .saturating_add(Weight::from_ref_time(1_715).saturating_mul(b.into())) } - // Storage: System Digest (r:1 w:1) - // Storage: unknown [0x3a686561707061676573] (r:0 w:1) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: unknown `0x3a686561707061676573` (r:0 w:1) + /// Proof Skipped: unknown `0x3a686561707061676573` (r:0 w:1) fn set_heap_pages() -> Weight { - // Minimum execution time: 7_834 nanoseconds. - Weight::from_ref_time(8_220_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `495` + // Minimum execution time: 3_408 nanoseconds. + Weight::from_ref_time(3_633_000) + .saturating_add(Weight::from_proof_size(495)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn set_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_892 nanoseconds. - Weight::from_ref_time(4_032_000) - // Standard Error: 2_571 - .saturating_add(Weight::from_ref_time(734_989).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_727 nanoseconds. + Weight::from_ref_time(1_753_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1_876 + .saturating_add(Weight::from_ref_time(581_935).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn kill_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_827 nanoseconds. - Weight::from_ref_time(3_952_000) - // Standard Error: 1_419 - .saturating_add(Weight::from_ref_time(568_381).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_743 nanoseconds. + Weight::from_ref_time(1_769_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 803 + .saturating_add(Weight::from_ref_time(446_779).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `p` is `[0, 1000]`. fn kill_prefix(p: u32, ) -> Weight { - // Minimum execution time: 5_331 nanoseconds. - Weight::from_ref_time(5_600_000) - // Standard Error: 2_644 - .saturating_add(Weight::from_ref_time(1_301_003).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `68 + p * (69 ±0)` + // Estimated: `66 + p * (70 ±0)` + // Minimum execution time: 3_536 nanoseconds. + Weight::from_ref_time(3_649_000) + .saturating_add(Weight::from_proof_size(66)) + // Standard Error: 949 + .saturating_add(Weight::from_ref_time(986_632).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_proof_size(70).saturating_mul(p.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_balances.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_balances.rs index 0c5c693ca32..057ad2bb30a 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_balances.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_balances.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_balances` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -46,52 +47,87 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 45_363 nanoseconds. - Weight::from_ref_time(46_431_000) + // Proof Size summary in bytes: + // Measured: `1314` + // Estimated: `2603` + // Minimum execution time: 47_893 nanoseconds. + Weight::from_ref_time(48_384_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 35_046 nanoseconds. - Weight::from_ref_time(36_176_000) + // Proof Size summary in bytes: + // Measured: `1198` + // Estimated: `2603` + // Minimum execution time: 35_027 nanoseconds. + Weight::from_ref_time(35_675_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_creating() -> Weight { - // Minimum execution time: 24_477 nanoseconds. - Weight::from_ref_time(25_202_000) + // Proof Size summary in bytes: + // Measured: `1348` + // Estimated: `2603` + // Minimum execution time: 26_009 nanoseconds. + Weight::from_ref_time(26_448_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_killing() -> Weight { - // Minimum execution time: 26_979 nanoseconds. - Weight::from_ref_time(27_647_000) + // Proof Size summary in bytes: + // Measured: `1348` + // Estimated: `2603` + // Minimum execution time: 30_006 nanoseconds. + Weight::from_ref_time(30_501_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:2 w:2) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 47_275 nanoseconds. - Weight::from_ref_time(48_268_000) + // Proof Size summary in bytes: + // Measured: `1310` + // Estimated: `5206` + // Minimum execution time: 46_787 nanoseconds. + Weight::from_ref_time(47_700_000) + .saturating_add(Weight::from_proof_size(5206)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_all() -> Weight { - // Minimum execution time: 42_149 nanoseconds. - Weight::from_ref_time(42_735_000) + // Proof Size summary in bytes: + // Measured: `1198` + // Estimated: `2603` + // Minimum execution time: 43_890 nanoseconds. + Weight::from_ref_time(44_914_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_unreserve() -> Weight { - // Minimum execution time: 22_495 nanoseconds. - Weight::from_ref_time(23_245_000) + // Proof Size summary in bytes: + // Measured: `1232` + // Estimated: `2603` + // Minimum execution time: 26_785 nanoseconds. + Weight::from_ref_time(27_404_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_collator_selection.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_collator_selection.rs index c3dd7ee1d30..38a6e424f87 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_collator_selection.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_collator_selection.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_collator_selection` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -46,79 +47,131 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_collator_selection`. pub struct WeightInfo(PhantomData); impl pallet_collator_selection::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Storage: Session NextKeys (r:100 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) /// The range of component `b` is `[1, 100]`. fn set_invulnerables(b: u32, ) -> Weight { - // Minimum execution time: 20_596 nanoseconds. - Weight::from_ref_time(19_664_643) - // Standard Error: 6_939 - .saturating_add(Weight::from_ref_time(2_982_253).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `214 + b * (78 ±0)` + // Estimated: `213 + b * (2554 ±0)` + // Minimum execution time: 14_254 nanoseconds. + Weight::from_ref_time(15_028_628) + .saturating_add(Weight::from_proof_size(213)) + // Standard Error: 3_094 + .saturating_add(Weight::from_ref_time(2_490_219).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(2554).saturating_mul(b.into())) } - // Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn set_desired_candidates() -> Weight { - // Minimum execution time: 12_930 nanoseconds. - Weight::from_ref_time(13_584_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_548 nanoseconds. + Weight::from_ref_time(6_775_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) fn set_candidacy_bond() -> Weight { - // Minimum execution time: 14_422 nanoseconds. - Weight::from_ref_time(15_113_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_922 nanoseconds. + Weight::from_ref_time(7_184_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection DesiredCandidates (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection CandidacyBond (r:1 w:0) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection DesiredCandidates (r:1 w:0) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Session NextKeys (r:1 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection CandidacyBond (r:1 w:0) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[1, 999]`. fn register_as_candidate(c: u32, ) -> Weight { - // Minimum execution time: 45_966 nanoseconds. - Weight::from_ref_time(61_587_166) - // Standard Error: 1_849 - .saturating_add(Weight::from_ref_time(210_205).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `1167 + c * (48 ±0)` + // Estimated: `56785 + c * (49 ±0)` + // Minimum execution time: 35_329 nanoseconds. + Weight::from_ref_time(27_879_325) + .saturating_add(Weight::from_proof_size(56785)) + // Standard Error: 1_269 + .saturating_add(Weight::from_ref_time(108_458).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_proof_size(49).saturating_mul(c.into())) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[6, 1000]`. fn leave_intent(c: u32, ) -> Weight { - // Minimum execution time: 36_187 nanoseconds. - Weight::from_ref_time(44_515_819) - // Standard Error: 1_740 - .saturating_add(Weight::from_ref_time(192_107).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `503 + c * (48 ±0)` + // Estimated: `48497` + // Minimum execution time: 27_322 nanoseconds. + Weight::from_ref_time(16_354_913) + .saturating_add(Weight::from_proof_size(48497)) + // Standard Error: 1_399 + .saturating_add(Weight::from_ref_time(108_840).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:2 w:2) - // Storage: System BlockWeight (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) fn note_author() -> Weight { - // Minimum execution time: 36_950 nanoseconds. - Weight::from_ref_time(37_782_000) + // Proof Size summary in bytes: + // Measured: `187` + // Estimated: `5749` + // Minimum execution time: 26_074 nanoseconds. + Weight::from_ref_time(26_574_000) + .saturating_add(Weight::from_proof_size(5749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:1000 w:1) - // Storage: System Account (r:1 w:1) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: System BlockWeight (r:1 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:0) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:999 w:0) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: System Account (r:995 w:995) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `r` is `[1, 1000]`. /// The range of component `c` is `[1, 1000]`. - fn new_session(_r: u32, c: u32, ) -> Weight { - // Minimum execution time: 18_074 nanoseconds. - Weight::from_ref_time(18_202_000) - // Standard Error: 844_328 - .saturating_add(Weight::from_ref_time(31_633_149).saturating_mul(c.into())) + fn new_session(r: u32, c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `22878 + r * (148 ±0) + c * (97 ±0)` + // Estimated: `52737 + r * (2602 ±0) + c * (2519 ±0)` + // Minimum execution time: 15_727 nanoseconds. + Weight::from_ref_time(16_001_000) + .saturating_add(Weight::from_proof_size(52737)) + // Standard Error: 792_964 + .saturating_add(Weight::from_ref_time(28_827_951).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(2602).saturating_mul(r.into())) + .saturating_add(Weight::from_proof_size(2519).saturating_mul(c.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_multisig.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_multisig.rs index 338e00b36c2..956c3264f1d 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_multisig.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_multisig.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_multisig` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -48,80 +49,113 @@ pub struct WeightInfo(PhantomData); impl pallet_multisig::WeightInfo for WeightInfo { /// The range of component `z` is `[0, 10000]`. fn as_multi_threshold_1(z: u32, ) -> Weight { - // Minimum execution time: 16_555 nanoseconds. - Weight::from_ref_time(17_763_931) - // Standard Error: 5 - .saturating_add(Weight::from_ref_time(638).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 11_903 nanoseconds. + Weight::from_ref_time(12_398_025) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 1 + .saturating_add(Weight::from_ref_time(550).saturating_mul(z.into())) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_create(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 47_985 nanoseconds. - Weight::from_ref_time(34_985_851) - // Standard Error: 1_506 - .saturating_add(Weight::from_ref_time(151_699).saturating_mul(s.into())) - // Standard Error: 14 - .saturating_add(Weight::from_ref_time(1_970).saturating_mul(z.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `314 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 35_780 nanoseconds. + Weight::from_ref_time(29_310_705) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 602 + .saturating_add(Weight::from_ref_time(70_837).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_545).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[3, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_approve(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 36_420 nanoseconds. - Weight::from_ref_time(24_957_895) - // Standard Error: 1_248 - .saturating_add(Weight::from_ref_time(129_987).saturating_mul(s.into())) - // Standard Error: 12 - .saturating_add(Weight::from_ref_time(1_985).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 26_552 nanoseconds. + Weight::from_ref_time(19_998_713) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 711 + .saturating_add(Weight::from_ref_time(72_463).saturating_mul(s.into())) + // Standard Error: 6 + .saturating_add(Weight::from_ref_time(1_573).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_complete(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 52_951 nanoseconds. - Weight::from_ref_time(36_901_926) - // Standard Error: 1_402 - .saturating_add(Weight::from_ref_time(185_013).saturating_mul(s.into())) - // Standard Error: 13 - .saturating_add(Weight::from_ref_time(2_015).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `451 + s * (33 ±0)` + // Estimated: `8424` + // Minimum execution time: 40_836 nanoseconds. + Weight::from_ref_time(32_275_692) + .saturating_add(Weight::from_proof_size(8424)) + // Standard Error: 673 + .saturating_add(Weight::from_ref_time(92_895).saturating_mul(s.into())) + // Standard Error: 6 + .saturating_add(Weight::from_ref_time(1_569).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_create(s: u32, ) -> Weight { - // Minimum execution time: 32_709 nanoseconds. - Weight::from_ref_time(34_158_623) - // Standard Error: 1_681 - .saturating_add(Weight::from_ref_time(149_794).saturating_mul(s.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `321 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 26_440 nanoseconds. + Weight::from_ref_time(27_434_937) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 725 + .saturating_add(Weight::from_ref_time(80_283).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_approve(s: u32, ) -> Weight { - // Minimum execution time: 22_393 nanoseconds. - Weight::from_ref_time(23_705_854) - // Standard Error: 1_055 - .saturating_add(Weight::from_ref_time(135_303).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 17_335 nanoseconds. + Weight::from_ref_time(18_873_349) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 490 + .saturating_add(Weight::from_ref_time(74_017).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn cancel_as_multi(s: u32, ) -> Weight { - // Minimum execution time: 32_499 nanoseconds. - Weight::from_ref_time(34_280_390) - // Standard Error: 1_408 - .saturating_add(Weight::from_ref_time(151_271).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `517 + s * (1 ±0)` + // Estimated: `5821` + // Minimum execution time: 26_731 nanoseconds. + Weight::from_ref_time(28_534_422) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 740 + .saturating_add(Weight::from_ref_time(78_223).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_session.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_session.rs index b728b732c14..8df3cd5efd4 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_session.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_session.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_session` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -46,19 +47,31 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_session`. pub struct WeightInfo(PhantomData); impl pallet_session::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:1 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:1 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - // Minimum execution time: 22_560 nanoseconds. - Weight::from_ref_time(23_197_000) + // Proof Size summary in bytes: + // Measured: `297` + // Estimated: `5544` + // Minimum execution time: 15_721 nanoseconds. + Weight::from_ref_time(16_081_000) + .saturating_add(Weight::from_proof_size(5544)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:0 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:0 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn purge_keys() -> Weight { - // Minimum execution time: 17_888 nanoseconds. - Weight::from_ref_time(18_724_000) + // Proof Size summary in bytes: + // Measured: `279` + // Estimated: `3033` + // Minimum execution time: 12_031 nanoseconds. + Weight::from_ref_time(12_339_000) + .saturating_add(Weight::from_proof_size(3033)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_timestamp.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_timestamp.rs index 7503130509f..279ec36c698 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_timestamp.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_timestamp.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_timestamp` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -46,16 +47,26 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { - // Storage: Timestamp Now (r:1 w:1) - // Storage: Aura CurrentSlot (r:1 w:0) + /// Storage: Timestamp Now (r:1 w:1) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + /// Storage: Aura CurrentSlot (r:1 w:0) + /// Proof: Aura CurrentSlot (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) fn set() -> Weight { - // Minimum execution time: 8_992 nanoseconds. - Weight::from_ref_time(9_340_000) + // Proof Size summary in bytes: + // Measured: `49` + // Estimated: `1006` + // Minimum execution time: 7_216 nanoseconds. + Weight::from_ref_time(7_445_000) + .saturating_add(Weight::from_proof_size(1006)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } fn on_finalize() -> Weight { - // Minimum execution time: 3_832 nanoseconds. - Weight::from_ref_time(3_992_000) + // Proof Size summary in bytes: + // Measured: `57` + // Estimated: `0` + // Minimum execution time: 3_181 nanoseconds. + Weight::from_ref_time(3_322_000) + .saturating_add(Weight::from_proof_size(0)) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_utility.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_utility.rs index f0a052bd114..48ecc23b037 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_utility.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_utility.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_utility` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -48,31 +49,51 @@ pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { /// The range of component `c` is `[0, 1000]`. fn batch(c: u32, ) -> Weight { - // Minimum execution time: 12_278 nanoseconds. - Weight::from_ref_time(20_001_334) - // Standard Error: 2_136 - .saturating_add(Weight::from_ref_time(4_358_244).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_179 nanoseconds. + Weight::from_ref_time(19_315_482) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 3_383 + .saturating_add(Weight::from_ref_time(4_126_811).saturating_mul(c.into())) } fn as_derivative() -> Weight { - // Minimum execution time: 6_169 nanoseconds. - Weight::from_ref_time(6_643_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_474 nanoseconds. + Weight::from_ref_time(4_666_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn batch_all(c: u32, ) -> Weight { - // Minimum execution time: 12_543 nanoseconds. - Weight::from_ref_time(19_156_769) - // Standard Error: 1_592 - .saturating_add(Weight::from_ref_time(4_552_994).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_210 nanoseconds. + Weight::from_ref_time(12_190_913) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_328 + .saturating_add(Weight::from_ref_time(4_370_533).saturating_mul(c.into())) } fn dispatch_as() -> Weight { - // Minimum execution time: 14_418 nanoseconds. - Weight::from_ref_time(14_786_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_194 nanoseconds. + Weight::from_ref_time(8_300_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn force_batch(c: u32, ) -> Weight { - // Minimum execution time: 12_392 nanoseconds. - Weight::from_ref_time(12_842_928) - // Standard Error: 1_690 - .saturating_add(Weight::from_ref_time(4_374_663).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_207 nanoseconds. + Weight::from_ref_time(9_704_236) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 4_155 + .saturating_add(Weight::from_ref_time(4_130_222).saturating_mul(c.into())) } } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_xcm.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_xcm.rs index 7d0e4a3546c..35426f96261 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_xcm.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_xcm.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_xcm` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-12-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `bm3`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: -// /home/benchbot/cargo_target_dir/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=bridge-hub-rococo-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/var/lib/gitlab-runner/builds/zyw4fam_/0/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm -// --chain=bridge-hub-rococo-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/ +// --output=./parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/pallet_xcm.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,126 +47,228 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_xcm`. pub struct WeightInfo(PhantomData); impl pallet_xcm::WeightInfo for WeightInfo { - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn send() -> Weight { - // Minimum execution time: 27_797 nanoseconds. - Weight::from_ref_time(28_356_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `4645` + // Minimum execution time: 25_656 nanoseconds. + Weight::from_ref_time(25_942_000) + .saturating_add(Weight::from_proof_size(4645)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn teleport_assets() -> Weight { - // Minimum execution time: 32_656 nanoseconds. - Weight::from_ref_time(33_011_000) + // Proof Size summary in bytes: + // Measured: `32` + // Estimated: `499` + // Minimum execution time: 26_559 nanoseconds. + Weight::from_ref_time(27_040_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn reserve_transfer_assets() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn execute() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn force_xcm_version() -> Weight { - // Minimum execution time: 15_101 nanoseconds. - Weight::from_ref_time(15_535_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 9_204 nanoseconds. + Weight::from_ref_time(9_400_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) fn force_default_xcm_version() -> Weight { - // Minimum execution time: 4_700 nanoseconds. - Weight::from_ref_time(4_896_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_652 nanoseconds. + Weight::from_ref_time(2_790_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm QueryCounter (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm QueryCounter (r:1 w:1) + /// Proof Skipped: PolkadotXcm QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_subscribe_version_notify() -> Weight { - // Minimum execution time: 31_532 nanoseconds. - Weight::from_ref_time(32_180_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `7729` + // Minimum execution time: 29_636 nanoseconds. + Weight::from_ref_time(30_041_000) + .saturating_add(Weight::from_proof_size(7729)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_unsubscribe_version_notify() -> Weight { - // Minimum execution time: 32_515 nanoseconds. - Weight::from_ref_time(33_097_000) + // Proof Size summary in bytes: + // Measured: `220` + // Estimated: `8470` + // Minimum execution time: 31_854 nanoseconds. + Weight::from_ref_time(32_416_000) + .saturating_add(Weight::from_proof_size(8470)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn migrate_supported_version() -> Weight { - // Minimum execution time: 13_811 nanoseconds. - Weight::from_ref_time(14_149_000) + // Proof Size summary in bytes: + // Measured: `95` + // Estimated: `9995` + // Minimum execution time: 13_994 nanoseconds. + Weight::from_ref_time(14_361_000) + .saturating_add(Weight::from_proof_size(9995)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) fn migrate_version_notifiers() -> Weight { - // Minimum execution time: 13_708 nanoseconds. - Weight::from_ref_time(14_067_000) + // Proof Size summary in bytes: + // Measured: `99` + // Estimated: `9999` + // Minimum execution time: 14_337 nanoseconds. + Weight::from_ref_time(14_651_000) + .saturating_add(Weight::from_proof_size(9999)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn already_notified_target() -> Weight { - // Minimum execution time: 15_277 nanoseconds. - Weight::from_ref_time(15_626_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `12481` + // Minimum execution time: 15_624 nanoseconds. + Weight::from_ref_time(15_936_000) + .saturating_add(Weight::from_proof_size(12481)) .saturating_add(T::DbWeight::get().reads(5)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn notify_current_targets() -> Weight { - // Minimum execution time: 29_263 nanoseconds. - Weight::from_ref_time(29_831_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10041` + // Minimum execution time: 26_774 nanoseconds. + Weight::from_ref_time(27_140_000) + .saturating_add(Weight::from_proof_size(10041)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn notify_target_migration_fail() -> Weight { - // Minimum execution time: 7_787 nanoseconds. - Weight::from_ref_time(7_858_000) + // Proof Size summary in bytes: + // Measured: `136` + // Estimated: `7561` + // Minimum execution time: 7_233 nanoseconds. + Weight::from_ref_time(7_487_000) + .saturating_add(Weight::from_proof_size(7561)) .saturating_add(T::DbWeight::get().reads(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn migrate_version_notify_targets() -> Weight { - // Minimum execution time: 15_252 nanoseconds. - Weight::from_ref_time(15_558_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10006` + // Minimum execution time: 14_801 nanoseconds. + Weight::from_ref_time(15_090_000) + .saturating_add(Weight::from_proof_size(10006)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn migrate_and_notify_old_targets() -> Weight { - // Minimum execution time: 35_105 nanoseconds. - Weight::from_ref_time(35_719_000) + // Proof Size summary in bytes: + // Measured: `112` + // Estimated: `15027` + // Minimum execution time: 32_613 nanoseconds. + Weight::from_ref_time(32_978_000) + .saturating_add(Weight::from_proof_size(15027)) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/mod.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/mod.rs index 765b3db9455..e1aa203fbf2 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/mod.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/mod.rs @@ -17,7 +17,7 @@ mod pallet_xcm_benchmarks_fungible; mod pallet_xcm_benchmarks_generic; -use crate::Runtime; +use crate::{xcm_config::MaxAssetsIntoHolding, Runtime}; use frame_support::weights::Weight; use pallet_xcm_benchmarks_fungible::WeightInfo as XcmFungibleWeight; use pallet_xcm_benchmarks_generic::WeightInfo as XcmGeneric; @@ -35,7 +35,18 @@ impl WeighMultiAssets for MultiAssetFilter { match self { Self::Definite(assets) => weight.saturating_mul(assets.inner().into_iter().count() as u64), - Self::Wild(_) => weight.saturating_mul(MAX_ASSETS as u64), + Self::Wild(asset) => match asset { + All => weight.saturating_mul(MAX_ASSETS as u64), + AllOf { fun, .. } => match fun { + WildFungibility::Fungible => weight, + // Magic number 2 has to do with the fact that we could have up to 2 times + // MaxAssetsIntoHolding in the worst-case scenario. + WildFungibility::NonFungible => + weight.saturating_mul((MaxAssetsIntoHolding::get() * 2) as u64), + }, + AllCounted(count) => weight.saturating_mul(*count as u64), + AllOfCounted { count, .. } => weight.saturating_mul(*count as u64), + }, } } } @@ -138,10 +149,7 @@ impl XcmWeightInfo for BridgeHubRococoXcmWeight { _dest: &MultiLocation, _xcm: &Xcm<()>, ) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_ref_time(200_000_000 as u64); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()) } fn report_holding(_response_info: &QueryResponseInfo, _assets: &MultiAssetFilter) -> Weight { XcmGeneric::::report_holding() diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs index 15fd4cde12a..9ead53ab152 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::fungible` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -49,58 +49,81 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn withdraw_asset() -> Weight { - Weight::from_ref_time(29_007_000 as u64) + Weight::from_ref_time(20_377_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn transfer_asset() -> Weight { - Weight::from_ref_time(40_966_000 as u64) + Weight::from_ref_time(31_004_000 as u64) .saturating_add(T::DbWeight::get().reads(2 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: System Account (r:2 w:2) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn transfer_reserve_asset() -> Weight { - Weight::from_ref_time(62_003_000 as u64) + Weight::from_ref_time(54_173_000 as u64) .saturating_add(T::DbWeight::get().reads(8 as u64)) .saturating_add(T::DbWeight::get().writes(4 as u64)) } pub(crate) fn receive_teleported_asset() -> Weight { - Weight::from_ref_time(7_096_000 as u64) + Weight::from_ref_time(4_635_000 as u64) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) pub(crate) fn deposit_asset() -> Weight { - Weight::from_ref_time(32_081_000 as u64) + Weight::from_ref_time(23_155_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: System Account (r:1 w:1) + // Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn deposit_reserve_asset() -> Weight { - Weight::from_ref_time(53_495_000 as u64) + Weight::from_ref_time(52_599_000 as u64) .saturating_add(T::DbWeight::get().reads(7 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_teleport() -> Weight { - Weight::from_ref_time(35_165_000 as u64) + Weight::from_ref_time(34_004_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } diff --git a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_generic.rs b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_generic.rs index d4fd607fb88..0555fabf4de 100644 --- a/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_generic.rs +++ b/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_generic.rs @@ -18,8 +18,8 @@ //! Autogenerated weights for `pallet_xcm_benchmarks::generic` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024 // Executed Command: @@ -49,145 +49,184 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl WeightInfo { // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_holding() -> Weight { - Weight::from_ref_time(38_509_000 as u64) + Weight::from_ref_time(32_598_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn buy_execution() -> Weight { - Weight::from_ref_time(5_956_000 as u64) + Weight::from_ref_time(3_195_000 as u64) } // Storage: PolkadotXcm Queries (r:1 w:0) + // Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) pub(crate) fn query_response() -> Weight { - Weight::from_ref_time(19_244_000 as u64) + Weight::from_ref_time(10_939_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) } pub(crate) fn transact() -> Weight { - Weight::from_ref_time(21_558_000 as u64) + Weight::from_ref_time(12_473_000 as u64) } pub(crate) fn refund_surplus() -> Weight { - Weight::from_ref_time(6_310_000 as u64) + Weight::from_ref_time(3_458_000 as u64) } pub(crate) fn set_error_handler() -> Weight { - Weight::from_ref_time(5_864_000 as u64) + Weight::from_ref_time(3_252_000 as u64) } pub(crate) fn set_appendix() -> Weight { - Weight::from_ref_time(6_089_000 as u64) + Weight::from_ref_time(3_249_000 as u64) } pub(crate) fn clear_error() -> Weight { - Weight::from_ref_time(5_990_000 as u64) + Weight::from_ref_time(3_190_000 as u64) } pub(crate) fn descend_origin() -> Weight { - Weight::from_ref_time(6_710_000 as u64) + Weight::from_ref_time(4_268_000 as u64) } pub(crate) fn clear_origin() -> Weight { - Weight::from_ref_time(5_943_000 as u64) + Weight::from_ref_time(3_255_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_error() -> Weight { - Weight::from_ref_time(32_246_000 as u64) + Weight::from_ref_time(25_755_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } // Storage: PolkadotXcm AssetTraps (r:1 w:1) + // Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) pub(crate) fn claim_asset() -> Weight { - Weight::from_ref_time(22_131_000 as u64) + Weight::from_ref_time(15_124_000 as u64) .saturating_add(T::DbWeight::get().reads(1 as u64)) .saturating_add(T::DbWeight::get().writes(1 as u64)) } pub(crate) fn trap() -> Weight { - Weight::from_ref_time(6_030_000 as u64) + Weight::from_ref_time(3_164_000 as u64) } // Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn subscribe_version() -> Weight { - Weight::from_ref_time(33_281_000 as u64) + Weight::from_ref_time(25_329_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(3 as u64)) } // Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) + // Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) pub(crate) fn unsubscribe_version() -> Weight { - Weight::from_ref_time(7_866_000 as u64) + Weight::from_ref_time(5_253_000 as u64) .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn initiate_reserve_withdraw() -> Weight { - Weight::from_ref_time(34_872_000 as u64) + Weight::from_ref_time(29_304_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn burn_asset() -> Weight { - Weight::from_ref_time(7_433_000 as u64) + Weight::from_ref_time(5_275_000 as u64) } pub(crate) fn expect_asset() -> Weight { - Weight::from_ref_time(6_120_000 as u64) + Weight::from_ref_time(3_355_000 as u64) } pub(crate) fn expect_origin() -> Weight { - Weight::from_ref_time(6_155_000 as u64) + Weight::from_ref_time(3_391_000 as u64) } pub(crate) fn expect_error() -> Weight { - Weight::from_ref_time(6_035_000 as u64) + Weight::from_ref_time(3_192_000 as u64) } pub(crate) fn expect_transact_status() -> Weight { - Weight::from_ref_time(6_746_000 as u64) + Weight::from_ref_time(3_342_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn query_pallet() -> Weight { - Weight::from_ref_time(34_793_000 as u64) + Weight::from_ref_time(28_426_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn expect_pallet() -> Weight { - Weight::from_ref_time(7_703_000 as u64) + Weight::from_ref_time(4_826_000 as u64) } // Storage: ParachainInfo ParachainId (r:1 w:0) + // Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) // Storage: PolkadotXcm SupportedVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + // Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + // Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem HostConfiguration (r:1 w:0) + // Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + // Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) pub(crate) fn report_transact_status() -> Weight { - Weight::from_ref_time(32_899_000 as u64) + Weight::from_ref_time(26_238_000 as u64) .saturating_add(T::DbWeight::get().reads(6 as u64)) .saturating_add(T::DbWeight::get().writes(2 as u64)) } pub(crate) fn clear_transact_status() -> Weight { - Weight::from_ref_time(6_079_000 as u64) + Weight::from_ref_time(3_240_000 as u64) } pub(crate) fn set_topic() -> Weight { - Weight::from_ref_time(6_051_000 as u64) + Weight::from_ref_time(3_181_000 as u64) } pub(crate) fn clear_topic() -> Weight { - Weight::from_ref_time(5_928_000 as u64) + Weight::from_ref_time(3_142_000 as u64) } pub(crate) fn set_fees_mode() -> Weight { - Weight::from_ref_time(5_990_000 as u64) + Weight::from_ref_time(3_216_000 as u64) } pub(crate) fn unpaid_execution() -> Weight { - Weight::from_ref_time(6_105_000 as u64) + Weight::from_ref_time(3_394_000 as u64) } } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/lib.rs b/parachains/runtimes/collectives/collectives-polkadot/src/lib.rs index a9c3fec8854..a1c6560b396 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/lib.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/lib.rs @@ -443,6 +443,7 @@ impl pallet_collective::Config for Runtime { type MaxProposals = ConstU32; type MaxMembers = ConstU32; type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote; + type SetMembersOrigin = EnsureRoot; type WeightInfo = weights::pallet_collective::WeightInfo; } @@ -549,6 +550,9 @@ pub type UncheckedExtrinsic = generic::UncheckedExtrinsic; /// Extrinsic type that has already been checked. pub type CheckedExtrinsic = generic::CheckedExtrinsic; +// All migrations executed on runtime upgrade as a nested tuple of types implementing +// `OnRuntimeUpgrade`. Included migrations must be idempotent. +type Migrations = (); /// Executive: handles dispatch to the various modules. pub type Executive = frame_executive::Executive< @@ -560,13 +564,6 @@ pub type Executive = frame_executive::Executive< Migrations, >; -// All migrations executed on runtime upgrade as a nested tuple of types implementing `OnRuntimeUpgrade`. -// Included migrations must be idempotent. -type Migrations = ( - pallet_alliance::migration::Migration, - pallet_balances::migration::MigrateToTrackInactive, -); - #[cfg(feature = "runtime-benchmarks")] #[macro_use] extern crate frame_benchmarking; diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs index 32b82031842..b22d572bdc5 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/cumulus_pallet_xcmp_queue.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `cumulus_pallet_xcmp_queue` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -46,17 +47,27 @@ use sp_std::marker::PhantomData; /// Weight functions for `cumulus_pallet_xcmp_queue`. pub struct WeightInfo(PhantomData); impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_u32() -> Weight { - // Minimum execution time: 7_029 nanoseconds. - Weight::from_ref_time(7_466_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 4_808 nanoseconds. + Weight::from_ref_time(4_966_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Storage: XcmpQueue QueueConfig (r:1 w:1) + /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_config_with_weight() -> Weight { - // Minimum execution time: 7_027 nanoseconds. - Weight::from_ref_time(7_256_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `571` + // Minimum execution time: 5_014 nanoseconds. + Weight::from_ref_time(5_135_000) + .saturating_add(Weight::from_proof_size(571)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/frame_system.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/frame_system.rs index dba8adc7265..8ea3fd852fa 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/frame_system.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/frame_system.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `frame_system` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -48,51 +49,81 @@ pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { /// The range of component `b` is `[0, 3932160]`. fn remark(b: u32, ) -> Weight { - // Minimum execution time: 3_824 nanoseconds. - Weight::from_ref_time(3_006_762) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_643 nanoseconds. + Weight::from_ref_time(1_672_000) + .saturating_add(Weight::from_proof_size(0)) // Standard Error: 0 - .saturating_add(Weight::from_ref_time(476).saturating_mul(b.into())) + .saturating_add(Weight::from_ref_time(368).saturating_mul(b.into())) } /// The range of component `b` is `[0, 3932160]`. fn remark_with_event(b: u32, ) -> Weight { - // Minimum execution time: 13_506 nanoseconds. - Weight::from_ref_time(145_176_063) - // Standard Error: 4 - .saturating_add(Weight::from_ref_time(1_865).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_679 nanoseconds. + Weight::from_ref_time(6_737_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 0 + .saturating_add(Weight::from_ref_time(1_714).saturating_mul(b.into())) } - // Storage: System Digest (r:1 w:1) - // Storage: unknown [0x3a686561707061676573] (r:0 w:1) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: unknown `0x3a686561707061676573` (r:0 w:1) + /// Proof Skipped: unknown `0x3a686561707061676573` (r:0 w:1) fn set_heap_pages() -> Weight { - // Minimum execution time: 8_012 nanoseconds. - Weight::from_ref_time(8_298_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `495` + // Minimum execution time: 3_675 nanoseconds. + Weight::from_ref_time(3_915_000) + .saturating_add(Weight::from_proof_size(495)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn set_storage(i: u32, ) -> Weight { - // Minimum execution time: 3_968 nanoseconds. - Weight::from_ref_time(4_082_000) - // Standard Error: 2_428 - .saturating_add(Weight::from_ref_time(684_810).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_789 nanoseconds. + Weight::from_ref_time(1_840_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_081 + .saturating_add(Weight::from_ref_time(587_667).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `i` is `[0, 1000]`. fn kill_storage(i: u32, ) -> Weight { - // Minimum execution time: 4_019 nanoseconds. - Weight::from_ref_time(4_112_000) - // Standard Error: 969 - .saturating_add(Weight::from_ref_time(516_358).saturating_mul(i.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 1_849 nanoseconds. + Weight::from_ref_time(1_915_000) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 798 + .saturating_add(Weight::from_ref_time(446_723).saturating_mul(i.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) } - // Storage: Skipped Metadata (r:0 w:0) + /// Storage: Skipped Metadata (r:0 w:0) + /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) /// The range of component `p` is `[0, 1000]`. fn kill_prefix(p: u32, ) -> Weight { - // Minimum execution time: 5_739 nanoseconds. - Weight::from_ref_time(5_965_000) - // Standard Error: 1_231 - .saturating_add(Weight::from_ref_time(1_157_068).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `68 + p * (69 ±0)` + // Estimated: `69 + p * (70 ±0)` + // Minimum execution time: 3_503 nanoseconds. + Weight::from_ref_time(3_574_000) + .saturating_add(Weight::from_proof_size(69)) + // Standard Error: 948 + .saturating_add(Weight::from_ref_time(949_091).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_proof_size(70).saturating_mul(p.into())) } } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_alliance.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_alliance.rs index b6b8dd0abb3..066b8d36986 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_alliance.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_alliance.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_alliance` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -46,273 +47,445 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_alliance`. pub struct WeightInfo(PhantomData); impl pallet_alliance::WeightInfo for WeightInfo { - // Storage: Alliance Members (r:1 w:0) - // Storage: AllianceMotion ProposalOf (r:1 w:1) - // Storage: AllianceMotion Proposals (r:1 w:1) - // Storage: AllianceMotion ProposalCount (r:1 w:1) - // Storage: AllianceMotion Voting (r:0 w:1) + /// Storage: Alliance Members (r:1 w:0) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion ProposalOf (r:1 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalCount (r:1 w:1) + /// Proof Skipped: AllianceMotion ProposalCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Voting (r:0 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) /// The range of component `b` is `[1, 1024]`. /// The range of component `m` is `[2, 100]`. /// The range of component `p` is `[1, 100]`. fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { - // Minimum execution time: 38_288 nanoseconds. - Weight::from_ref_time(38_207_884) - // Standard Error: 143 - .saturating_add(Weight::from_ref_time(1_163).saturating_mul(b.into())) - // Standard Error: 1_497 - .saturating_add(Weight::from_ref_time(49_809).saturating_mul(m.into())) - // Standard Error: 1_478 - .saturating_add(Weight::from_ref_time(157_329).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `502 + m * (32 ±0) + p * (36 ±0)` + // Estimated: `10983 + m * (128 ±0) + p * (144 ±0)` + // Minimum execution time: 26_997 nanoseconds. + Weight::from_ref_time(28_875_691) + .saturating_add(Weight::from_proof_size(10983)) + // Standard Error: 65 + .saturating_add(Weight::from_ref_time(235).saturating_mul(b.into())) + // Standard Error: 683 + .saturating_add(Weight::from_ref_time(17_740).saturating_mul(m.into())) + // Standard Error: 675 + .saturating_add(Weight::from_ref_time(88_731).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(Weight::from_proof_size(128).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(144).saturating_mul(p.into())) } - // Storage: Alliance Members (r:1 w:0) - // Storage: AllianceMotion Voting (r:1 w:1) + /// Storage: Alliance Members (r:1 w:0) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) /// The range of component `m` is `[5, 100]`. fn vote(m: u32, ) -> Weight { - // Minimum execution time: 36_846 nanoseconds. - Weight::from_ref_time(38_931_188) - // Standard Error: 1_204 - .saturating_add(Weight::from_ref_time(75_325).saturating_mul(m.into())) + // Proof Size summary in bytes: + // Measured: `932 + m * (64 ±0)` + // Estimated: `9092 + m * (64 ±0)` + // Minimum execution time: 23_241 nanoseconds. + Weight::from_ref_time(23_786_275) + .saturating_add(Weight::from_proof_size(9092)) + // Standard Error: 563 + .saturating_add(Weight::from_ref_time(44_164).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(64).saturating_mul(m.into())) } - // Storage: Alliance Members (r:1 w:0) - // Storage: AllianceMotion Voting (r:1 w:1) - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion Proposals (r:1 w:1) - // Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Storage: Alliance Members (r:1 w:0) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) /// The range of component `m` is `[4, 100]`. /// The range of component `p` is `[1, 100]`. fn close_early_disapproved(m: u32, p: u32, ) -> Weight { - // Minimum execution time: 45_595 nanoseconds. - Weight::from_ref_time(41_968_843) - // Standard Error: 1_471 - .saturating_add(Weight::from_ref_time(78_046).saturating_mul(m.into())) - // Standard Error: 1_434 - .saturating_add(Weight::from_ref_time(140_858).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `438 + m * (96 ±0) + p * (36 ±0)` + // Estimated: `11067 + m * (388 ±0) + p * (144 ±0)` + // Minimum execution time: 32_551 nanoseconds. + Weight::from_ref_time(30_322_236) + .saturating_add(Weight::from_proof_size(11067)) + // Standard Error: 695 + .saturating_add(Weight::from_ref_time(44_336).saturating_mul(m.into())) + // Standard Error: 678 + .saturating_add(Weight::from_ref_time(83_273).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_proof_size(388).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(144).saturating_mul(p.into())) } - // Storage: Alliance Members (r:1 w:0) - // Storage: AllianceMotion Voting (r:1 w:1) - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion ProposalOf (r:1 w:1) - // Storage: AllianceMotion Proposals (r:1 w:1) + /// Storage: Alliance Members (r:1 w:0) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:1 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) /// The range of component `b` is `[1, 1024]`. /// The range of component `m` is `[4, 100]`. /// The range of component `p` is `[1, 100]`. fn close_early_approved(_b: u32, m: u32, p: u32, ) -> Weight { - // Minimum execution time: 56_903 nanoseconds. - Weight::from_ref_time(55_838_779) - // Standard Error: 1_463 - .saturating_add(Weight::from_ref_time(76_732).saturating_mul(m.into())) - // Standard Error: 1_426 - .saturating_add(Weight::from_ref_time(147_104).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `923 + m * (96 ±0) + p * (41 ±0)` + // Estimated: `15422 + m * (388 ±0) + p * (160 ±0)` + // Minimum execution time: 42_592 nanoseconds. + Weight::from_ref_time(42_349_696) + .saturating_add(Weight::from_proof_size(15422)) + // Standard Error: 1_776 + .saturating_add(Weight::from_ref_time(53_830).saturating_mul(m.into())) + // Standard Error: 1_731 + .saturating_add(Weight::from_ref_time(94_827).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_proof_size(388).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(160).saturating_mul(p.into())) } - // Storage: Alliance Members (r:1 w:0) - // Storage: AllianceMotion Voting (r:1 w:1) - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion Prime (r:1 w:0) - // Storage: AllianceMotion Proposals (r:1 w:1) - // Storage: AllianceMotion ProposalOf (r:0 w:1) - // Storage: Alliance Rule (r:0 w:1) + /// Storage: Alliance Members (r:1 w:0) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:1 w:0) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:1 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Alliance Rule (r:0 w:1) + /// Proof: Alliance Rule (max_values: Some(1), max_size: Some(87), added: 582, mode: MaxEncodedLen) /// The range of component `m` is `[2, 100]`. /// The range of component `p` is `[1, 100]`. fn close_disapproved(m: u32, p: u32, ) -> Weight { - // Minimum execution time: 55_524 nanoseconds. - Weight::from_ref_time(54_973_604) - // Standard Error: 4_178 - .saturating_add(Weight::from_ref_time(137_799).saturating_mul(m.into())) - // Standard Error: 4_127 - .saturating_add(Weight::from_ref_time(181_776).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `677 + m * (96 ±0) + p * (41 ±0)` + // Estimated: `14232 + m * (507 ±0) + p * (202 ±0)` + // Minimum execution time: 39_735 nanoseconds. + Weight::from_ref_time(42_276_266) + .saturating_add(Weight::from_proof_size(14232)) + // Standard Error: 3_451 + .saturating_add(Weight::from_ref_time(94_755).saturating_mul(m.into())) + // Standard Error: 3_409 + .saturating_add(Weight::from_ref_time(108_485).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(Weight::from_proof_size(507).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(202).saturating_mul(p.into())) } - // Storage: Alliance Members (r:1 w:0) - // Storage: AllianceMotion Voting (r:1 w:1) - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion Prime (r:1 w:0) - // Storage: AllianceMotion Proposals (r:1 w:1) - // Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Storage: Alliance Members (r:1 w:0) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:1 w:0) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) /// The range of component `b` is `[1, 1024]`. /// The range of component `m` is `[5, 100]`. /// The range of component `p` is `[1, 100]`. - fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Minimum execution time: 47_385 nanoseconds. - Weight::from_ref_time(43_221_021) - // Standard Error: 125 - .saturating_add(Weight::from_ref_time(670).saturating_mul(b.into())) - // Standard Error: 1_346 - .saturating_add(Weight::from_ref_time(74_996).saturating_mul(m.into())) - // Standard Error: 1_298 - .saturating_add(Weight::from_ref_time(139_287).saturating_mul(p.into())) + fn close_approved(_b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `545 + m * (96 ±0) + p * (36 ±0)` + // Estimated: `12436 + m * (480 ±0) + p * (180 ±0)` + // Minimum execution time: 33_604 nanoseconds. + Weight::from_ref_time(32_382_610) + .saturating_add(Weight::from_proof_size(12436)) + // Standard Error: 564 + .saturating_add(Weight::from_ref_time(41_625).saturating_mul(m.into())) + // Standard Error: 544 + .saturating_add(Weight::from_ref_time(80_954).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_proof_size(480).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(180).saturating_mul(p.into())) } - // Storage: Alliance Members (r:2 w:2) - // Storage: AllianceMotion Members (r:1 w:1) + /// Storage: Alliance Members (r:2 w:2) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Members (r:1 w:1) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) /// The range of component `m` is `[1, 100]`. /// The range of component `z` is `[0, 100]`. fn init_members(m: u32, z: u32, ) -> Weight { - // Minimum execution time: 39_193 nanoseconds. - Weight::from_ref_time(26_044_549) - // Standard Error: 1_185 - .saturating_add(Weight::from_ref_time(173_356).saturating_mul(m.into())) - // Standard Error: 1_171 - .saturating_add(Weight::from_ref_time(150_180).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `12` + // Estimated: `11879` + // Minimum execution time: 27_970 nanoseconds. + Weight::from_ref_time(16_763_631) + .saturating_add(Weight::from_proof_size(11879)) + // Standard Error: 496 + .saturating_add(Weight::from_ref_time(130_747).saturating_mul(m.into())) + // Standard Error: 490 + .saturating_add(Weight::from_ref_time(112_074).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: Alliance Members (r:2 w:2) - // Storage: AllianceMotion Proposals (r:1 w:0) - // Storage: Alliance DepositOf (r:101 w:50) - // Storage: System Account (r:50 w:50) - // Storage: AllianceMotion Members (r:0 w:1) - // Storage: AllianceMotion Prime (r:0 w:1) + /// Storage: Alliance Members (r:2 w:2) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Proposals (r:1 w:0) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Alliance DepositOf (r:200 w:50) + /// Proof: Alliance DepositOf (max_values: None, max_size: Some(64), added: 2539, mode: MaxEncodedLen) + /// Storage: System Account (r:50 w:50) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: AllianceMotion Members (r:0 w:1) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:0 w:1) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) /// The range of component `x` is `[1, 100]`. /// The range of component `y` is `[0, 100]`. /// The range of component `z` is `[0, 50]`. fn disband(x: u32, y: u32, z: u32, ) -> Weight { - // Minimum execution time: 269_952 nanoseconds. - Weight::from_ref_time(273_268_000) - // Standard Error: 21_296 - .saturating_add(Weight::from_ref_time(520_494).saturating_mul(x.into())) - // Standard Error: 21_193 - .saturating_add(Weight::from_ref_time(517_860).saturating_mul(y.into())) - // Standard Error: 42_349 - .saturating_add(Weight::from_ref_time(10_726_990).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `0 + x * (52 ±0) + y * (53 ±0) + z * (282 ±0)` + // Estimated: `31580 + x * (2590 ±0) + y * (2590 ±0) + z * (3200 ±1)` + // Minimum execution time: 221_464 nanoseconds. + Weight::from_ref_time(223_114_000) + .saturating_add(Weight::from_proof_size(31580)) + // Standard Error: 19_600 + .saturating_add(Weight::from_ref_time(471_527).saturating_mul(x.into())) + // Standard Error: 19_506 + .saturating_add(Weight::from_ref_time(424_033).saturating_mul(y.into())) + // Standard Error: 38_976 + .saturating_add(Weight::from_ref_time(9_666_599).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(x.into()))) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(y.into()))) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(z.into()))) .saturating_add(T::DbWeight::get().writes(4)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(z.into()))) + .saturating_add(Weight::from_proof_size(2590).saturating_mul(x.into())) + .saturating_add(Weight::from_proof_size(2590).saturating_mul(y.into())) + .saturating_add(Weight::from_proof_size(3200).saturating_mul(z.into())) } - // Storage: Alliance Rule (r:0 w:1) + /// Storage: Alliance Rule (r:0 w:1) + /// Proof: Alliance Rule (max_values: Some(1), max_size: Some(87), added: 582, mode: MaxEncodedLen) fn set_rule() -> Weight { - // Minimum execution time: 15_647 nanoseconds. - Weight::from_ref_time(16_092_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_585 nanoseconds. + Weight::from_ref_time(8_746_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Alliance Announcements (r:1 w:1) + /// Storage: Alliance Announcements (r:1 w:1) + /// Proof: Alliance Announcements (max_values: Some(1), max_size: Some(8702), added: 9197, mode: MaxEncodedLen) fn announce() -> Weight { - // Minimum execution time: 17_905 nanoseconds. - Weight::from_ref_time(18_333_000) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `9197` + // Minimum execution time: 10_728 nanoseconds. + Weight::from_ref_time(10_974_000) + .saturating_add(Weight::from_proof_size(9197)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Alliance Announcements (r:1 w:1) + /// Storage: Alliance Announcements (r:1 w:1) + /// Proof: Alliance Announcements (max_values: Some(1), max_size: Some(8702), added: 9197, mode: MaxEncodedLen) fn remove_announcement() -> Weight { - // Minimum execution time: 19_189 nanoseconds. - Weight::from_ref_time(19_714_000) + // Proof Size summary in bytes: + // Measured: `181` + // Estimated: `9197` + // Minimum execution time: 11_751 nanoseconds. + Weight::from_ref_time(12_205_000) + .saturating_add(Weight::from_proof_size(9197)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Alliance Members (r:3 w:1) - // Storage: Alliance UnscrupulousAccounts (r:1 w:0) - // Storage: System Account (r:1 w:1) - // Storage: Alliance DepositOf (r:0 w:1) + /// Storage: Alliance Members (r:3 w:1) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: Alliance UnscrupulousAccounts (r:1 w:0) + /// Proof: Alliance UnscrupulousAccounts (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Alliance DepositOf (r:0 w:1) + /// Proof: Alliance DepositOf (max_values: None, max_size: Some(64), added: 2539, mode: MaxEncodedLen) fn join_alliance() -> Weight { - // Minimum execution time: 46_828 nanoseconds. - Weight::from_ref_time(48_341_000) + // Proof Size summary in bytes: + // Measured: `388` + // Estimated: `23358` + // Minimum execution time: 38_798 nanoseconds. + Weight::from_ref_time(39_255_000) + .saturating_add(Weight::from_proof_size(23358)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: Alliance Members (r:3 w:1) - // Storage: Alliance UnscrupulousAccounts (r:1 w:0) + /// Storage: Alliance Members (r:3 w:1) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: Alliance UnscrupulousAccounts (r:1 w:0) + /// Proof: Alliance UnscrupulousAccounts (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) fn nominate_ally() -> Weight { - // Minimum execution time: 33_512 nanoseconds. - Weight::from_ref_time(34_557_000) + // Proof Size summary in bytes: + // Measured: `255` + // Estimated: `20755` + // Minimum execution time: 27_702 nanoseconds. + Weight::from_ref_time(28_189_000) + .saturating_add(Weight::from_proof_size(20755)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Alliance Members (r:2 w:2) - // Storage: AllianceMotion Proposals (r:1 w:0) - // Storage: AllianceMotion Members (r:0 w:1) - // Storage: AllianceMotion Prime (r:0 w:1) + /// Storage: Alliance Members (r:2 w:2) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Proposals (r:1 w:0) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:0 w:1) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:0 w:1) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) fn elevate_ally() -> Weight { - // Minimum execution time: 29_986 nanoseconds. - Weight::from_ref_time(30_647_000) + // Proof Size summary in bytes: + // Measured: `298` + // Estimated: `12761` + // Minimum execution time: 23_033 nanoseconds. + Weight::from_ref_time(23_589_000) + .saturating_add(Weight::from_proof_size(12761)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Alliance Members (r:4 w:2) - // Storage: AllianceMotion Proposals (r:1 w:0) - // Storage: AllianceMotion Members (r:0 w:1) - // Storage: AllianceMotion Prime (r:0 w:1) - // Storage: Alliance RetiringMembers (r:0 w:1) + /// Storage: Alliance Members (r:4 w:2) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Proposals (r:1 w:0) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:0 w:1) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:0 w:1) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Alliance RetiringMembers (r:0 w:1) + /// Proof: Alliance RetiringMembers (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) fn give_retirement_notice() -> Weight { - // Minimum execution time: 36_997 nanoseconds. - Weight::from_ref_time(38_347_000) + // Proof Size summary in bytes: + // Measured: `298` + // Estimated: `24133` + // Minimum execution time: 31_352 nanoseconds. + Weight::from_ref_time(31_848_000) + .saturating_add(Weight::from_proof_size(24133)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: Alliance RetiringMembers (r:1 w:1) - // Storage: Alliance Members (r:1 w:1) - // Storage: Alliance DepositOf (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Alliance RetiringMembers (r:1 w:1) + /// Proof: Alliance RetiringMembers (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen) + /// Storage: Alliance Members (r:1 w:1) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: Alliance DepositOf (r:1 w:1) + /// Proof: Alliance DepositOf (max_values: None, max_size: Some(64), added: 2539, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn retire() -> Weight { - // Minimum execution time: 40_467 nanoseconds. - Weight::from_ref_time(41_405_000) + // Proof Size summary in bytes: + // Measured: `580` + // Estimated: `13355` + // Minimum execution time: 31_872 nanoseconds. + Weight::from_ref_time(32_156_000) + .saturating_add(Weight::from_proof_size(13355)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: Alliance Members (r:3 w:1) - // Storage: AllianceMotion Proposals (r:1 w:0) - // Storage: Alliance DepositOf (r:1 w:1) - // Storage: System Account (r:2 w:2) - // Storage: ParachainInfo ParachainId (r:1 w:0) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: AllianceMotion Members (r:0 w:1) - // Storage: AllianceMotion Prime (r:0 w:1) + /// Storage: Alliance Members (r:3 w:1) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Proposals (r:1 w:0) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Alliance DepositOf (r:1 w:1) + /// Proof: Alliance DepositOf (max_values: None, max_size: Some(64), added: 2539, mode: MaxEncodedLen) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:0 w:1) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:0 w:1) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) fn kick_member() -> Weight { - // Minimum execution time: 130_704 nanoseconds. - Weight::from_ref_time(135_795_000) + // Proof Size summary in bytes: + // Measured: `716` + // Estimated: `35980` + // Minimum execution time: 115_869 nanoseconds. + Weight::from_ref_time(116_954_000) + .saturating_add(Weight::from_proof_size(35980)) .saturating_add(T::DbWeight::get().reads(13)) .saturating_add(T::DbWeight::get().writes(8)) } - // Storage: Alliance UnscrupulousAccounts (r:1 w:1) - // Storage: Alliance UnscrupulousWebsites (r:1 w:1) + /// Storage: Alliance UnscrupulousAccounts (r:1 w:1) + /// Proof: Alliance UnscrupulousAccounts (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Alliance UnscrupulousWebsites (r:1 w:1) + /// Proof: Alliance UnscrupulousWebsites (max_values: Some(1), max_size: Some(25702), added: 26197, mode: MaxEncodedLen) /// The range of component `n` is `[0, 100]`. /// The range of component `l` is `[0, 255]`. fn add_unscrupulous_items(n: u32, l: u32, ) -> Weight { - // Minimum execution time: 14_157 nanoseconds. - Weight::from_ref_time(14_298_000) - // Standard Error: 3_498 - .saturating_add(Weight::from_ref_time(1_345_686).saturating_mul(n.into())) - // Standard Error: 1_370 - .saturating_add(Weight::from_ref_time(69_753).saturating_mul(l.into())) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `29894` + // Minimum execution time: 6_956 nanoseconds. + Weight::from_ref_time(7_074_000) + .saturating_add(Weight::from_proof_size(29894)) + // Standard Error: 2_782 + .saturating_add(Weight::from_ref_time(1_178_647).saturating_mul(n.into())) + // Standard Error: 1_089 + .saturating_add(Weight::from_ref_time(65_684).saturating_mul(l.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Alliance UnscrupulousAccounts (r:1 w:1) - // Storage: Alliance UnscrupulousWebsites (r:1 w:1) + /// Storage: Alliance UnscrupulousAccounts (r:1 w:1) + /// Proof: Alliance UnscrupulousAccounts (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Alliance UnscrupulousWebsites (r:1 w:1) + /// Proof: Alliance UnscrupulousWebsites (max_values: Some(1), max_size: Some(25702), added: 26197, mode: MaxEncodedLen) /// The range of component `n` is `[0, 100]`. /// The range of component `l` is `[0, 255]`. fn remove_unscrupulous_items(n: u32, l: u32, ) -> Weight { - // Minimum execution time: 14_045 nanoseconds. - Weight::from_ref_time(14_470_000) - // Standard Error: 192_627 - .saturating_add(Weight::from_ref_time(14_774_889).saturating_mul(n.into())) - // Standard Error: 75_441 - .saturating_add(Weight::from_ref_time(609_306).saturating_mul(l.into())) + // Proof Size summary in bytes: + // Measured: `0 + n * (289 ±0) + l * (100 ±0)` + // Estimated: `29894` + // Minimum execution time: 6_939 nanoseconds. + Weight::from_ref_time(7_100_000) + .saturating_add(Weight::from_proof_size(29894)) + // Standard Error: 170_977 + .saturating_add(Weight::from_ref_time(13_668_797).saturating_mul(n.into())) + // Standard Error: 66_962 + .saturating_add(Weight::from_ref_time(451_782).saturating_mul(l.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Alliance Members (r:3 w:2) - // Storage: AllianceMotion Proposals (r:1 w:0) - // Storage: AllianceMotion Members (r:0 w:1) - // Storage: AllianceMotion Prime (r:0 w:1) + /// Storage: Alliance Members (r:3 w:2) + /// Proof: Alliance Members (max_values: None, max_size: Some(3211), added: 5686, mode: MaxEncodedLen) + /// Storage: AllianceMotion Proposals (r:1 w:0) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:0 w:1) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:0 w:1) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) fn abdicate_fellow_status() -> Weight { - // Minimum execution time: 35_464 nanoseconds. - Weight::from_ref_time(37_038_000) + // Proof Size summary in bytes: + // Measured: `298` + // Estimated: `18447` + // Minimum execution time: 29_564 nanoseconds. + Weight::from_ref_time(30_313_000) + .saturating_add(Weight::from_proof_size(18447)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_balances.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_balances.rs index 3e843b9731c..6835ca14078 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_balances.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_balances.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_balances` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -46,52 +47,87 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer() -> Weight { - // Minimum execution time: 45_122 nanoseconds. - Weight::from_ref_time(46_166_000) + // Proof Size summary in bytes: + // Measured: `1176` + // Estimated: `2603` + // Minimum execution time: 45_207 nanoseconds. + Weight::from_ref_time(45_620_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_keep_alive() -> Weight { - // Minimum execution time: 33_640 nanoseconds. - Weight::from_ref_time(34_488_000) + // Proof Size summary in bytes: + // Measured: `1060` + // Estimated: `2603` + // Minimum execution time: 35_103 nanoseconds. + Weight::from_ref_time(35_730_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_creating() -> Weight { - // Minimum execution time: 23_438 nanoseconds. - Weight::from_ref_time(24_284_000) + // Proof Size summary in bytes: + // Measured: `1172` + // Estimated: `2603` + // Minimum execution time: 26_007 nanoseconds. + Weight::from_ref_time(26_347_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn set_balance_killing() -> Weight { - // Minimum execution time: 26_770 nanoseconds. - Weight::from_ref_time(27_526_000) + // Proof Size summary in bytes: + // Measured: `1172` + // Estimated: `2603` + // Minimum execution time: 28_971 nanoseconds. + Weight::from_ref_time(29_435_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:2 w:2) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_transfer() -> Weight { - // Minimum execution time: 44_142 nanoseconds. - Weight::from_ref_time(45_448_000) + // Proof Size summary in bytes: + // Measured: `1172` + // Estimated: `5206` + // Minimum execution time: 45_554 nanoseconds. + Weight::from_ref_time(46_156_000) + .saturating_add(Weight::from_proof_size(5206)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn transfer_all() -> Weight { - // Minimum execution time: 39_237 nanoseconds. - Weight::from_ref_time(40_438_000) + // Proof Size summary in bytes: + // Measured: `1060` + // Estimated: `2603` + // Minimum execution time: 40_290 nanoseconds. + Weight::from_ref_time(40_805_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: System Account (r:1 w:1) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn force_unreserve() -> Weight { - // Minimum execution time: 20_235 nanoseconds. - Weight::from_ref_time(20_804_000) + // Proof Size summary in bytes: + // Measured: `1056` + // Estimated: `2603` + // Minimum execution time: 22_459 nanoseconds. + Weight::from_ref_time(23_037_000) + .saturating_add(Weight::from_proof_size(2603)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_collator_selection.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_collator_selection.rs index 2fb877a9c8c..86e158cc480 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_collator_selection.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_collator_selection.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_collator_selection` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -46,79 +47,131 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_collator_selection`. pub struct WeightInfo(PhantomData); impl pallet_collator_selection::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Storage: Session NextKeys (r:100 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection Invulnerables (r:0 w:1) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) /// The range of component `b` is `[1, 100]`. fn set_invulnerables(b: u32, ) -> Weight { - // Minimum execution time: 20_299 nanoseconds. - Weight::from_ref_time(19_027_195) - // Standard Error: 4_017 - .saturating_add(Weight::from_ref_time(2_863_630).saturating_mul(b.into())) + // Proof Size summary in bytes: + // Measured: `178 + b * (78 ±0)` + // Estimated: `178 + b * (2554 ±0)` + // Minimum execution time: 13_471 nanoseconds. + Weight::from_ref_time(13_949_440) + .saturating_add(Weight::from_proof_size(178)) + // Standard Error: 3_549 + .saturating_add(Weight::from_ref_time(2_497_077).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(2554).saturating_mul(b.into())) } - // Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Storage: CollatorSelection DesiredCandidates (r:0 w:1) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn set_desired_candidates() -> Weight { - // Minimum execution time: 13_209 nanoseconds. - Weight::from_ref_time(13_980_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_444 nanoseconds. + Weight::from_ref_time(6_763_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Storage: CollatorSelection CandidacyBond (r:0 w:1) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) fn set_candidacy_bond() -> Weight { - // Minimum execution time: 13_572 nanoseconds. - Weight::from_ref_time(14_417_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 6_610 nanoseconds. + Weight::from_ref_time(6_807_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection DesiredCandidates (r:1 w:0) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: Session NextKeys (r:1 w:0) - // Storage: CollatorSelection CandidacyBond (r:1 w:0) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection DesiredCandidates (r:1 w:0) + /// Proof: CollatorSelection DesiredCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: Session NextKeys (r:1 w:0) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: CollatorSelection CandidacyBond (r:1 w:0) + /// Proof: CollatorSelection CandidacyBond (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[1, 999]`. fn register_as_candidate(c: u32, ) -> Weight { - // Minimum execution time: 45_919 nanoseconds. - Weight::from_ref_time(43_816_560) - // Standard Error: 3_084 - .saturating_add(Weight::from_ref_time(156_908).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `1171 + c * (48 ±0)` + // Estimated: `56784 + c * (49 ±0)` + // Minimum execution time: 35_411 nanoseconds. + Weight::from_ref_time(26_990_808) + .saturating_add(Weight::from_proof_size(56784)) + // Standard Error: 1_294 + .saturating_add(Weight::from_ref_time(107_975).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_proof_size(49).saturating_mul(c.into())) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:1) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `c` is `[6, 1000]`. fn leave_intent(c: u32, ) -> Weight { - // Minimum execution time: 36_399 nanoseconds. - Weight::from_ref_time(43_953_781) - // Standard Error: 1_684 - .saturating_add(Weight::from_ref_time(196_799).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `536 + c * (48 ±0)` + // Estimated: `48497` + // Minimum execution time: 25_912 nanoseconds. + Weight::from_ref_time(15_664_296) + .saturating_add(Weight::from_proof_size(48497)) + // Standard Error: 1_292 + .saturating_add(Weight::from_ref_time(105_672).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: System Account (r:2 w:2) - // Storage: System BlockWeight (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:0 w:1) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) fn note_author() -> Weight { - // Minimum execution time: 33_371 nanoseconds. - Weight::from_ref_time(34_081_000) + // Proof Size summary in bytes: + // Measured: `135` + // Estimated: `5749` + // Minimum execution time: 24_773 nanoseconds. + Weight::from_ref_time(25_088_000) + .saturating_add(Weight::from_proof_size(5749)) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: CollatorSelection Candidates (r:1 w:1) - // Storage: CollatorSelection LastAuthoredBlock (r:1000 w:1) - // Storage: System Account (r:1 w:1) - // Storage: CollatorSelection Invulnerables (r:1 w:0) - // Storage: System BlockWeight (r:1 w:1) + /// Storage: CollatorSelection Candidates (r:1 w:0) + /// Proof: CollatorSelection Candidates (max_values: Some(1), max_size: Some(48002), added: 48497, mode: MaxEncodedLen) + /// Storage: CollatorSelection LastAuthoredBlock (r:999 w:0) + /// Proof: CollatorSelection LastAuthoredBlock (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: CollatorSelection Invulnerables (r:1 w:0) + /// Proof: CollatorSelection Invulnerables (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: System BlockWeight (r:1 w:1) + /// Proof: System BlockWeight (max_values: Some(1), max_size: Some(48), added: 543, mode: MaxEncodedLen) + /// Storage: System Account (r:995 w:995) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `r` is `[1, 1000]`. /// The range of component `c` is `[1, 1000]`. - fn new_session(_r: u32, c: u32, ) -> Weight { - // Minimum execution time: 18_737 nanoseconds. - Weight::from_ref_time(18_894_000) - // Standard Error: 844_081 - .saturating_add(Weight::from_ref_time(31_454_028).saturating_mul(c.into())) + fn new_session(r: u32, c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `22784 + r * (148 ±0) + c * (97 ±0)` + // Estimated: `52737 + c * (2519 ±0) + r * (2602 ±0)` + // Minimum execution time: 16_174 nanoseconds. + Weight::from_ref_time(16_337_000) + .saturating_add(Weight::from_proof_size(52737)) + // Standard Error: 759_621 + .saturating_add(Weight::from_ref_time(27_780_906).saturating_mul(c.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) .saturating_add(T::DbWeight::get().writes(1)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_proof_size(2519).saturating_mul(c.into())) + .saturating_add(Weight::from_proof_size(2602).saturating_mul(r.into())) } } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_collective.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_collective.rs index 79fd639148a..085d93f8c08 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_collective.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_collective.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_collective` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -46,163 +47,256 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_collective`. pub struct WeightInfo(PhantomData); impl pallet_collective::WeightInfo for WeightInfo { - // Storage: AllianceMotion Members (r:1 w:1) - // Storage: AllianceMotion Proposals (r:1 w:0) - // Storage: AllianceMotion Prime (r:0 w:1) - // Storage: AllianceMotion Voting (r:100 w:100) + /// Storage: AllianceMotion Members (r:1 w:1) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:0) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Voting (r:100 w:100) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:0 w:1) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) /// The range of component `m` is `[0, 100]`. /// The range of component `n` is `[0, 100]`. /// The range of component `p` is `[0, 100]`. fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { - // Minimum execution time: 17_553 nanoseconds. - Weight::from_ref_time(17_927_000) - // Standard Error: 69_221 - .saturating_add(Weight::from_ref_time(5_275_876).saturating_mul(m.into())) - // Standard Error: 69_221 - .saturating_add(Weight::from_ref_time(8_657_171).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `0 + m * (3233 ±0) + p * (3223 ±0)` + // Estimated: `15906 + m * (7809 ±23) + p * (10238 ±23)` + // Minimum execution time: 15_797 nanoseconds. + Weight::from_ref_time(16_028_000) + .saturating_add(Weight::from_proof_size(15906)) + // Standard Error: 70_308 + .saturating_add(Weight::from_ref_time(5_642_347).saturating_mul(m.into())) + // Standard Error: 70_308 + .saturating_add(Weight::from_ref_time(8_133_950).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p.into()))) .saturating_add(T::DbWeight::get().writes(2)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_proof_size(7809).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(10238).saturating_mul(p.into())) } - // Storage: AllianceMotion Members (r:1 w:0) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) /// The range of component `b` is `[2, 1024]`. /// The range of component `m` is `[1, 100]`. fn execute(b: u32, m: u32, ) -> Weight { - // Minimum execution time: 20_469 nanoseconds. - Weight::from_ref_time(20_804_130) - // Standard Error: 97 - .saturating_add(Weight::from_ref_time(2_029).saturating_mul(b.into())) - // Standard Error: 1_007 - .saturating_add(Weight::from_ref_time(11_086).saturating_mul(m.into())) + // Proof Size summary in bytes: + // Measured: `64 + m * (32 ±0)` + // Estimated: `560 + m * (32 ±0)` + // Minimum execution time: 14_039 nanoseconds. + Weight::from_ref_time(13_145_821) + .saturating_add(Weight::from_proof_size(560)) + // Standard Error: 24 + .saturating_add(Weight::from_ref_time(1_434).saturating_mul(b.into())) + // Standard Error: 248 + .saturating_add(Weight::from_ref_time(14_559).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(Weight::from_proof_size(32).saturating_mul(m.into())) } - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion ProposalOf (r:1 w:0) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:1 w:0) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) /// The range of component `b` is `[2, 1024]`. /// The range of component `m` is `[1, 100]`. fn propose_execute(b: u32, m: u32, ) -> Weight { - // Minimum execution time: 23_719 nanoseconds. - Weight::from_ref_time(20_840_191) - // Standard Error: 905 - .saturating_add(Weight::from_ref_time(3_109).saturating_mul(b.into())) - // Standard Error: 9_336 - .saturating_add(Weight::from_ref_time(49_591).saturating_mul(m.into())) + // Proof Size summary in bytes: + // Measured: `64 + m * (32 ±0)` + // Estimated: `3100 + m * (64 ±0)` + // Minimum execution time: 16_235 nanoseconds. + Weight::from_ref_time(14_913_854) + .saturating_add(Weight::from_proof_size(3100)) + // Standard Error: 26 + .saturating_add(Weight::from_ref_time(1_744).saturating_mul(b.into())) + // Standard Error: 273 + .saturating_add(Weight::from_ref_time(23_908).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(Weight::from_proof_size(64).saturating_mul(m.into())) } - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion ProposalOf (r:1 w:1) - // Storage: AllianceMotion Proposals (r:1 w:1) - // Storage: AllianceMotion ProposalCount (r:1 w:1) - // Storage: AllianceMotion Voting (r:0 w:1) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:1 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalCount (r:1 w:1) + /// Proof Skipped: AllianceMotion ProposalCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Voting (r:0 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) /// The range of component `b` is `[2, 1024]`. /// The range of component `m` is `[2, 100]`. /// The range of component `p` is `[1, 100]`. fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { - // Minimum execution time: 31_254 nanoseconds. - Weight::from_ref_time(24_735_510) - // Standard Error: 208 - .saturating_add(Weight::from_ref_time(6_808).saturating_mul(b.into())) - // Standard Error: 2_178 - .saturating_add(Weight::from_ref_time(39_453).saturating_mul(m.into())) - // Standard Error: 2_150 - .saturating_add(Weight::from_ref_time(252_936).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `386 + m * (32 ±0) + p * (36 ±0)` + // Estimated: `5505 + m * (165 ±0) + p * (180 ±0)` + // Minimum execution time: 21_595 nanoseconds. + Weight::from_ref_time(23_162_876) + .saturating_add(Weight::from_proof_size(5505)) + // Standard Error: 76 + .saturating_add(Weight::from_ref_time(2_647).saturating_mul(b.into())) + // Standard Error: 797 + .saturating_add(Weight::from_ref_time(19_673).saturating_mul(m.into())) + // Standard Error: 787 + .saturating_add(Weight::from_ref_time(95_242).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(Weight::from_proof_size(165).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(180).saturating_mul(p.into())) } - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion Voting (r:1 w:1) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) /// The range of component `m` is `[5, 100]`. fn vote(m: u32, ) -> Weight { - // Minimum execution time: 35_835 nanoseconds. - Weight::from_ref_time(40_529_972) - // Standard Error: 2_842 - .saturating_add(Weight::from_ref_time(57_776).saturating_mul(m.into())) + // Proof Size summary in bytes: + // Measured: `836 + m * (64 ±0)` + // Estimated: `4640 + m * (128 ±0)` + // Minimum execution time: 20_793 nanoseconds. + Weight::from_ref_time(21_342_865) + .saturating_add(Weight::from_proof_size(4640)) + // Standard Error: 394 + .saturating_add(Weight::from_ref_time(43_236).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_proof_size(128).saturating_mul(m.into())) } - // Storage: AllianceMotion Voting (r:1 w:1) - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion Proposals (r:1 w:1) - // Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) /// The range of component `m` is `[4, 100]`. /// The range of component `p` is `[1, 100]`. fn close_early_disapproved(m: u32, p: u32, ) -> Weight { - // Minimum execution time: 31_675 nanoseconds. - Weight::from_ref_time(32_610_448) - // Standard Error: 2_828 - .saturating_add(Weight::from_ref_time(47_300).saturating_mul(m.into())) - // Standard Error: 2_757 - .saturating_add(Weight::from_ref_time(233_631).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `456 + m * (64 ±0) + p * (36 ±0)` + // Estimated: `5213 + m * (260 ±0) + p * (144 ±0)` + // Minimum execution time: 24_859 nanoseconds. + Weight::from_ref_time(26_156_065) + .saturating_add(Weight::from_proof_size(5213)) + // Standard Error: 737 + .saturating_add(Weight::from_ref_time(20_578).saturating_mul(m.into())) + // Standard Error: 718 + .saturating_add(Weight::from_ref_time(86_327).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_proof_size(260).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(144).saturating_mul(p.into())) } - // Storage: AllianceMotion Voting (r:1 w:1) - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion ProposalOf (r:1 w:1) - // Storage: AllianceMotion Proposals (r:1 w:1) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:1 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) /// The range of component `b` is `[2, 1024]`. /// The range of component `m` is `[4, 100]`. /// The range of component `p` is `[1, 100]`. fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Minimum execution time: 42_467 nanoseconds. - Weight::from_ref_time(41_191_754) - // Standard Error: 240 - .saturating_add(Weight::from_ref_time(4_306).saturating_mul(b.into())) - // Standard Error: 2_539 - .saturating_add(Weight::from_ref_time(41_073).saturating_mul(m.into())) - // Standard Error: 2_475 - .saturating_add(Weight::from_ref_time(287_142).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `792 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` + // Estimated: `8484 + b * (4 ±0) + m * (264 ±0) + p * (160 ±0)` + // Minimum execution time: 34_729 nanoseconds. + Weight::from_ref_time(36_499_058) + .saturating_add(Weight::from_proof_size(8484)) + // Standard Error: 84 + .saturating_add(Weight::from_ref_time(1_409).saturating_mul(b.into())) + // Standard Error: 893 + .saturating_add(Weight::from_ref_time(14_167).saturating_mul(m.into())) + // Standard Error: 871 + .saturating_add(Weight::from_ref_time(101_999).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_proof_size(4).saturating_mul(b.into())) + .saturating_add(Weight::from_proof_size(264).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(160).saturating_mul(p.into())) } - // Storage: AllianceMotion Voting (r:1 w:1) - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion Prime (r:1 w:0) - // Storage: AllianceMotion Proposals (r:1 w:1) - // Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:1 w:0) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) /// The range of component `m` is `[4, 100]`. /// The range of component `p` is `[1, 100]`. fn close_disapproved(m: u32, p: u32, ) -> Weight { - // Minimum execution time: 32_710 nanoseconds. - Weight::from_ref_time(35_372_369) - // Standard Error: 2_333 - .saturating_add(Weight::from_ref_time(36_146).saturating_mul(m.into())) - // Standard Error: 2_275 - .saturating_add(Weight::from_ref_time(222_227).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `553 + m * (48 ±0) + p * (36 ±0)` + // Estimated: `6605 + m * (245 ±0) + p * (180 ±0)` + // Minimum execution time: 27_113 nanoseconds. + Weight::from_ref_time(28_105_174) + .saturating_add(Weight::from_proof_size(6605)) + // Standard Error: 686 + .saturating_add(Weight::from_ref_time(20_379).saturating_mul(m.into())) + // Standard Error: 669 + .saturating_add(Weight::from_ref_time(89_284).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_proof_size(245).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(180).saturating_mul(p.into())) } - // Storage: AllianceMotion Voting (r:1 w:1) - // Storage: AllianceMotion Members (r:1 w:0) - // Storage: AllianceMotion Prime (r:1 w:0) - // Storage: AllianceMotion ProposalOf (r:1 w:1) - // Storage: AllianceMotion Proposals (r:1 w:1) + /// Storage: AllianceMotion Voting (r:1 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Members (r:1 w:0) + /// Proof Skipped: AllianceMotion Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Prime (r:1 w:0) + /// Proof Skipped: AllianceMotion Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:1 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) /// The range of component `b` is `[2, 1024]`. /// The range of component `m` is `[4, 100]`. /// The range of component `p` is `[1, 100]`. fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Minimum execution time: 45_339 nanoseconds. - Weight::from_ref_time(45_506_410) - // Standard Error: 294 - .saturating_add(Weight::from_ref_time(3_875).saturating_mul(b.into())) - // Standard Error: 3_108 - .saturating_add(Weight::from_ref_time(26_273).saturating_mul(m.into())) - // Standard Error: 3_030 - .saturating_add(Weight::from_ref_time(288_963).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `812 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` + // Estimated: `9715 + b * (5 ±0) + m * (330 ±0) + p * (200 ±0)` + // Minimum execution time: 37_242 nanoseconds. + Weight::from_ref_time(38_722_168) + .saturating_add(Weight::from_proof_size(9715)) + // Standard Error: 89 + .saturating_add(Weight::from_ref_time(1_419).saturating_mul(b.into())) + // Standard Error: 947 + .saturating_add(Weight::from_ref_time(15_417).saturating_mul(m.into())) + // Standard Error: 923 + .saturating_add(Weight::from_ref_time(103_094).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_proof_size(5).saturating_mul(b.into())) + .saturating_add(Weight::from_proof_size(330).saturating_mul(m.into())) + .saturating_add(Weight::from_proof_size(200).saturating_mul(p.into())) } - // Storage: AllianceMotion Proposals (r:1 w:1) - // Storage: AllianceMotion Voting (r:0 w:1) - // Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Storage: AllianceMotion Proposals (r:1 w:1) + /// Proof Skipped: AllianceMotion Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AllianceMotion Voting (r:0 w:1) + /// Proof Skipped: AllianceMotion Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: AllianceMotion ProposalOf (r:0 w:1) + /// Proof Skipped: AllianceMotion ProposalOf (max_values: None, max_size: None, mode: Measured) /// The range of component `p` is `[1, 100]`. fn disapprove_proposal(p: u32, ) -> Weight { - // Minimum execution time: 19_931 nanoseconds. - Weight::from_ref_time(22_362_404) - // Standard Error: 1_600 - .saturating_add(Weight::from_ref_time(171_520).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `221 + p * (32 ±0)` + // Estimated: `1158 + p * (96 ±0)` + // Minimum execution time: 13_173 nanoseconds. + Weight::from_ref_time(14_787_145) + .saturating_add(Weight::from_proof_size(1158)) + // Standard Error: 614 + .saturating_add(Weight::from_ref_time(81_286).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_proof_size(96).saturating_mul(p.into())) } } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_multisig.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_multisig.rs index 6763950f543..cefa35fca2c 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_multisig.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_multisig.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_multisig` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -48,80 +49,113 @@ pub struct WeightInfo(PhantomData); impl pallet_multisig::WeightInfo for WeightInfo { /// The range of component `z` is `[0, 10000]`. fn as_multi_threshold_1(z: u32, ) -> Weight { - // Minimum execution time: 16_840 nanoseconds. - Weight::from_ref_time(17_872_341) - // Standard Error: 6 - .saturating_add(Weight::from_ref_time(612).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 11_628 nanoseconds. + Weight::from_ref_time(12_058_313) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 3 + .saturating_add(Weight::from_ref_time(500).saturating_mul(z.into())) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_create(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 49_235 nanoseconds. - Weight::from_ref_time(35_099_801) - // Standard Error: 1_322 - .saturating_add(Weight::from_ref_time(157_504).saturating_mul(s.into())) - // Standard Error: 12 - .saturating_add(Weight::from_ref_time(1_877).saturating_mul(z.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `311 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 34_764 nanoseconds. + Weight::from_ref_time(27_813_109) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 630 + .saturating_add(Weight::from_ref_time(73_821).saturating_mul(s.into())) + // Standard Error: 6 + .saturating_add(Weight::from_ref_time(1_542).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[3, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_approve(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 36_414 nanoseconds. - Weight::from_ref_time(24_873_925) - // Standard Error: 949 - .saturating_add(Weight::from_ref_time(135_191).saturating_mul(s.into())) - // Standard Error: 9 - .saturating_add(Weight::from_ref_time(1_863).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 25_932 nanoseconds. + Weight::from_ref_time(19_364_026) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 490 + .saturating_add(Weight::from_ref_time(69_834).saturating_mul(s.into())) + // Standard Error: 4 + .saturating_add(Weight::from_ref_time(1_520).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. /// The range of component `z` is `[0, 10000]`. fn as_multi_complete(s: u32, z: u32, ) -> Weight { - // Minimum execution time: 53_386 nanoseconds. - Weight::from_ref_time(36_974_236) - // Standard Error: 1_394 - .saturating_add(Weight::from_ref_time(189_592).saturating_mul(s.into())) - // Standard Error: 13 - .saturating_add(Weight::from_ref_time(1_950).saturating_mul(z.into())) + // Proof Size summary in bytes: + // Measured: `448 + s * (33 ±0)` + // Estimated: `8424` + // Minimum execution time: 39_495 nanoseconds. + Weight::from_ref_time(31_235_649) + .saturating_add(Weight::from_proof_size(8424)) + // Standard Error: 570 + .saturating_add(Weight::from_ref_time(88_719).saturating_mul(s.into())) + // Standard Error: 5 + .saturating_add(Weight::from_ref_time(1_523).saturating_mul(z.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Multisig Multisigs (r:1 w:1) - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_create(s: u32, ) -> Weight { - // Minimum execution time: 33_039 nanoseconds. - Weight::from_ref_time(34_703_637) - // Standard Error: 1_679 - .saturating_add(Weight::from_ref_time(153_311).saturating_mul(s.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `318 + s * (2 ±0)` + // Estimated: `5821` + // Minimum execution time: 24_708 nanoseconds. + Weight::from_ref_time(26_673_173) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 863 + .saturating_add(Weight::from_ref_time(81_459).saturating_mul(s.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn approve_as_multi_approve(s: u32, ) -> Weight { - // Minimum execution time: 22_712 nanoseconds. - Weight::from_ref_time(24_071_132) - // Standard Error: 1_711 - .saturating_add(Weight::from_ref_time(140_819).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `313` + // Estimated: `5821` + // Minimum execution time: 16_520 nanoseconds. + Weight::from_ref_time(18_123_705) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 661 + .saturating_add(Weight::from_ref_time(74_405).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Multisig Multisigs (r:1 w:1) + /// Storage: Multisig Multisigs (r:1 w:1) + /// Proof: Multisig Multisigs (max_values: None, max_size: Some(3346), added: 5821, mode: MaxEncodedLen) /// The range of component `s` is `[2, 100]`. fn cancel_as_multi(s: u32, ) -> Weight { - // Minimum execution time: 33_141 nanoseconds. - Weight::from_ref_time(34_308_456) - // Standard Error: 1_285 - .saturating_add(Weight::from_ref_time(154_821).saturating_mul(s.into())) + // Proof Size summary in bytes: + // Measured: `517 + s * (1 ±0)` + // Estimated: `5821` + // Minimum execution time: 25_476 nanoseconds. + Weight::from_ref_time(27_845_581) + .saturating_add(Weight::from_proof_size(5821)) + // Standard Error: 868 + .saturating_add(Weight::from_ref_time(77_797).saturating_mul(s.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_proxy.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_proxy.rs index 0c1d07ce470..bcde1caf8ba 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_proxy.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_proxy.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_proxy` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -46,121 +47,176 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_proxy`. pub struct WeightInfo(PhantomData); impl pallet_proxy::WeightInfo for WeightInfo { - // Storage: Proxy Proxies (r:1 w:0) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn proxy(p: u32, ) -> Weight { - // Minimum execution time: 20_320 nanoseconds. - Weight::from_ref_time(21_382_422) - // Standard Error: 2_074 - .saturating_add(Weight::from_ref_time(43_265).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 14_443 nanoseconds. + Weight::from_ref_time(15_158_969) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_249 + .saturating_add(Weight::from_ref_time(33_941).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Proxy Proxies (r:1 w:0) - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn proxy_announced(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 39_242 nanoseconds. - Weight::from_ref_time(40_180_408) - // Standard Error: 2_531 - .saturating_add(Weight::from_ref_time(123_908).saturating_mul(a.into())) - // Standard Error: 2_615 - .saturating_add(Weight::from_ref_time(50_917).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `550 + a * (68 ±0) + p * (37 ±0)` + // Estimated: `11027` + // Minimum execution time: 32_060 nanoseconds. + Weight::from_ref_time(32_192_294) + .saturating_add(Weight::from_proof_size(11027)) + // Standard Error: 1_900 + .saturating_add(Weight::from_ref_time(109_332).saturating_mul(a.into())) + // Standard Error: 1_963 + .saturating_add(Weight::from_ref_time(39_154).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn remove_announcement(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 27_218 nanoseconds. - Weight::from_ref_time(28_431_295) - // Standard Error: 1_665 - .saturating_add(Weight::from_ref_time(117_344).saturating_mul(a.into())) - // Standard Error: 1_720 - .saturating_add(Weight::from_ref_time(17_062).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `433 + a * (68 ±0)` + // Estimated: `7311` + // Minimum execution time: 20_084 nanoseconds. + Weight::from_ref_time(21_187_531) + .saturating_add(Weight::from_proof_size(7311)) + // Standard Error: 1_412 + .saturating_add(Weight::from_ref_time(112_601).saturating_mul(a.into())) + // Standard Error: 1_458 + .saturating_add(Weight::from_ref_time(6_862).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn reject_announcement(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 27_225 nanoseconds. - Weight::from_ref_time(27_980_122) - // Standard Error: 1_727 - .saturating_add(Weight::from_ref_time(118_676).saturating_mul(a.into())) - // Standard Error: 1_784 - .saturating_add(Weight::from_ref_time(26_243).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `433 + a * (68 ±0)` + // Estimated: `7311` + // Minimum execution time: 20_658 nanoseconds. + Weight::from_ref_time(21_184_810) + .saturating_add(Weight::from_proof_size(7311)) + // Standard Error: 1_259 + .saturating_add(Weight::from_ref_time(112_012).saturating_mul(a.into())) + // Standard Error: 1_301 + .saturating_add(Weight::from_ref_time(10_767).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Proxies (r:1 w:0) - // Storage: Proxy Announcements (r:1 w:1) - // Storage: System Account (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:0) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) + /// Storage: Proxy Announcements (r:1 w:1) + /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `a` is `[0, 31]`. /// The range of component `p` is `[1, 31]`. fn announce(a: u32, p: u32, ) -> Weight { - // Minimum execution time: 36_531 nanoseconds. - Weight::from_ref_time(37_133_468) - // Standard Error: 1_915 - .saturating_add(Weight::from_ref_time(115_190).saturating_mul(a.into())) - // Standard Error: 1_979 - .saturating_add(Weight::from_ref_time(52_216).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `482 + a * (68 ±0) + p * (37 ±0)` + // Estimated: `11027` + // Minimum execution time: 28_670 nanoseconds. + Weight::from_ref_time(29_411_875) + .saturating_add(Weight::from_proof_size(11027)) + // Standard Error: 1_864 + .saturating_add(Weight::from_ref_time(94_146).saturating_mul(a.into())) + // Standard Error: 1_926 + .saturating_add(Weight::from_ref_time(36_523).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn add_proxy(p: u32, ) -> Weight { - // Minimum execution time: 29_880 nanoseconds. - Weight::from_ref_time(30_971_686) - // Standard Error: 1_951 - .saturating_add(Weight::from_ref_time(59_512).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 21_273 nanoseconds. + Weight::from_ref_time(22_137_672) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_345 + .saturating_add(Weight::from_ref_time(44_075).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn remove_proxy(p: u32, ) -> Weight { - // Minimum execution time: 29_304 nanoseconds. - Weight::from_ref_time(30_836_356) - // Standard Error: 2_408 - .saturating_add(Weight::from_ref_time(74_531).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 20_888 nanoseconds. + Weight::from_ref_time(22_120_940) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_516 + .saturating_add(Weight::from_ref_time(55_407).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn remove_proxies(p: u32, ) -> Weight { - // Minimum execution time: 25_023 nanoseconds. - Weight::from_ref_time(26_352_051) - // Standard Error: 1_532 - .saturating_add(Weight::from_ref_time(37_737).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `159 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 17_007 nanoseconds. + Weight::from_ref_time(17_746_585) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_201 + .saturating_add(Weight::from_ref_time(22_307).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[1, 31]`. fn create_pure(p: u32, ) -> Weight { - // Minimum execution time: 31_808 nanoseconds. - Weight::from_ref_time(33_127_282) - // Standard Error: 2_151 - .saturating_add(Weight::from_ref_time(25_760).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(2)) + // Proof Size summary in bytes: + // Measured: `139` + // Estimated: `3716` + // Minimum execution time: 22_625 nanoseconds. + Weight::from_ref_time(23_598_172) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_668 + .saturating_add(Weight::from_ref_time(113).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: Proxy Proxies (r:1 w:1) + /// Storage: Proxy Proxies (r:1 w:1) + /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) /// The range of component `p` is `[0, 30]`. fn kill_pure(p: u32, ) -> Weight { - // Minimum execution time: 26_149 nanoseconds. - Weight::from_ref_time(27_463_462) - // Standard Error: 1_610 - .saturating_add(Weight::from_ref_time(40_692).saturating_mul(p.into())) + // Proof Size summary in bytes: + // Measured: `196 + p * (37 ±0)` + // Estimated: `3716` + // Minimum execution time: 17_969 nanoseconds. + Weight::from_ref_time(18_830_934) + .saturating_add(Weight::from_proof_size(3716)) + // Standard Error: 1_340 + .saturating_add(Weight::from_ref_time(23_749).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_session.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_session.rs index 0969c3c257d..89168ddc3c9 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_session.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_session.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_session` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -46,19 +47,31 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_session`. pub struct WeightInfo(PhantomData); impl pallet_session::WeightInfo for WeightInfo { - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:1 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:1 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - // Minimum execution time: 21_519 nanoseconds. - Weight::from_ref_time(22_385_000) + // Proof Size summary in bytes: + // Measured: `270` + // Estimated: `5490` + // Minimum execution time: 15_653 nanoseconds. + Weight::from_ref_time(16_004_000) + .saturating_add(Weight::from_proof_size(5490)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: Session NextKeys (r:1 w:1) - // Storage: Session KeyOwner (r:0 w:1) + /// Storage: Session NextKeys (r:1 w:1) + /// Proof Skipped: Session NextKeys (max_values: None, max_size: None, mode: Measured) + /// Storage: Session KeyOwner (r:0 w:1) + /// Proof Skipped: Session KeyOwner (max_values: None, max_size: None, mode: Measured) fn purge_keys() -> Weight { - // Minimum execution time: 17_539 nanoseconds. - Weight::from_ref_time(18_292_000) + // Proof Size summary in bytes: + // Measured: `242` + // Estimated: `2959` + // Minimum execution time: 11_729 nanoseconds. + Weight::from_ref_time(12_081_000) + .saturating_add(Weight::from_proof_size(2959)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_timestamp.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_timestamp.rs index c01031bab60..4681ee9d609 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_timestamp.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_timestamp.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_timestamp` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -46,16 +47,26 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { - // Storage: Timestamp Now (r:1 w:1) - // Storage: Aura CurrentSlot (r:1 w:0) + /// Storage: Timestamp Now (r:1 w:1) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + /// Storage: Aura CurrentSlot (r:1 w:0) + /// Proof: Aura CurrentSlot (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) fn set() -> Weight { - // Minimum execution time: 9_196 nanoseconds. - Weight::from_ref_time(9_641_000) + // Proof Size summary in bytes: + // Measured: `49` + // Estimated: `1006` + // Minimum execution time: 6_995 nanoseconds. + Weight::from_ref_time(7_169_000) + .saturating_add(Weight::from_proof_size(1006)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } fn on_finalize() -> Weight { - // Minimum execution time: 3_907 nanoseconds. - Weight::from_ref_time(4_143_000) + // Proof Size summary in bytes: + // Measured: `57` + // Estimated: `0` + // Minimum execution time: 3_166 nanoseconds. + Weight::from_ref_time(3_331_000) + .saturating_add(Weight::from_proof_size(0)) } } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_utility.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_utility.rs index 1123008a901..bf727a4dc97 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_utility.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_utility.rs @@ -17,8 +17,9 @@ //! Autogenerated weights for `pallet_utility` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `runner-b3zmxxc-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: @@ -48,31 +49,51 @@ pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { /// The range of component `c` is `[0, 1000]`. fn batch(c: u32, ) -> Weight { - // Minimum execution time: 12_693 nanoseconds. - Weight::from_ref_time(16_857_716) - // Standard Error: 1_960 - .saturating_add(Weight::from_ref_time(4_305_835).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_987 nanoseconds. + Weight::from_ref_time(19_221_047) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_233 + .saturating_add(Weight::from_ref_time(3_808_598).saturating_mul(c.into())) } fn as_derivative() -> Weight { - // Minimum execution time: 6_309 nanoseconds. - Weight::from_ref_time(6_560_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_203 nanoseconds. + Weight::from_ref_time(4_337_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn batch_all(c: u32, ) -> Weight { - // Minimum execution time: 12_890 nanoseconds. - Weight::from_ref_time(19_743_708) - // Standard Error: 2_659 - .saturating_add(Weight::from_ref_time(4_530_531).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_986 nanoseconds. + Weight::from_ref_time(14_991_349) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_440 + .saturating_add(Weight::from_ref_time(4_032_363).saturating_mul(c.into())) } fn dispatch_as() -> Weight { - // Minimum execution time: 14_949 nanoseconds. - Weight::from_ref_time(15_398_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_768 nanoseconds. + Weight::from_ref_time(7_998_000) + .saturating_add(Weight::from_proof_size(0)) } /// The range of component `c` is `[0, 1000]`. fn force_batch(c: u32, ) -> Weight { - // Minimum execution time: 12_979 nanoseconds. - Weight::from_ref_time(16_643_839) - // Standard Error: 2_263 - .saturating_add(Weight::from_ref_time(4_321_042).saturating_mul(c.into())) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_906 nanoseconds. + Weight::from_ref_time(16_782_253) + .saturating_add(Weight::from_proof_size(0)) + // Standard Error: 2_131 + .saturating_add(Weight::from_ref_time(3_780_339).saturating_mul(c.into())) } } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_xcm.rs b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_xcm.rs index ec9974dd295..1a61209c8ed 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_xcm.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_xcm.rs @@ -17,25 +17,25 @@ //! Autogenerated weights for `pallet_xcm` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-12-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! HOSTNAME: `bm3`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("collectives-polkadot-dev"), DB CACHE: 1024 // Executed Command: -// /home/benchbot/cargo_target_dir/production/polkadot-parachain +// ./artifacts/polkadot-parachain // benchmark // pallet -// --steps=50 -// --repeat=20 -// --extrinsic=* +// --chain=collectives-polkadot-dev // --execution=wasm // --wasm-execution=compiled -// --heap-pages=4096 -// --json-file=/var/lib/gitlab-runner/builds/zyw4fam_/0/parity/mirrors/cumulus/.git/.artifacts/bench.json // --pallet=pallet_xcm -// --chain=collectives-polkadot-dev +// --extrinsic=* +// --steps=50 +// --repeat=20 +// --json // --header=./file_header.txt -// --output=./parachains/runtimes/collectives/collectives-polkadot/src/weights/ +// --output=./parachains/runtimes/collectives/collectives-polkadot/src/weights/pallet_xcm.rs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] @@ -47,126 +47,228 @@ use sp_std::marker::PhantomData; /// Weight functions for `pallet_xcm`. pub struct WeightInfo(PhantomData); impl pallet_xcm::WeightInfo for WeightInfo { - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn send() -> Weight { - // Minimum execution time: 27_016 nanoseconds. - Weight::from_ref_time(27_587_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `4645` + // Minimum execution time: 23_618 nanoseconds. + Weight::from_ref_time(24_118_000) + .saturating_add(Weight::from_proof_size(4645)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: ParachainInfo ParachainId (r:1 w:0) + /// Storage: ParachainInfo ParachainId (r:1 w:0) + /// Proof: ParachainInfo ParachainId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn teleport_assets() -> Weight { - // Minimum execution time: 33_807 nanoseconds. - Weight::from_ref_time(34_960_000) + // Proof Size summary in bytes: + // Measured: `32` + // Estimated: `499` + // Minimum execution time: 23_764 nanoseconds. + Weight::from_ref_time(24_114_000) + .saturating_add(Weight::from_proof_size(499)) .saturating_add(T::DbWeight::get().reads(1)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn reserve_transfer_assets() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: Benchmark Override (r:0 w:0) + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) fn execute() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` // Minimum execution time: 18_446_744_073_709_551 nanoseconds. Weight::from_ref_time(18_446_744_073_709_551_000) + .saturating_add(Weight::from_proof_size(0)) } - // Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Storage: PolkadotXcm SupportedVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn force_xcm_version() -> Weight { - // Minimum execution time: 15_322 nanoseconds. - Weight::from_ref_time(15_782_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_266 nanoseconds. + Weight::from_ref_time(8_578_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Storage: PolkadotXcm SafeXcmVersion (r:0 w:1) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) fn force_default_xcm_version() -> Weight { - // Minimum execution time: 4_390 nanoseconds. - Weight::from_ref_time(4_564_000) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_289 nanoseconds. + Weight::from_ref_time(2_382_000) + .saturating_add(Weight::from_proof_size(0)) .saturating_add(T::DbWeight::get().writes(1)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm QueryCounter (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm QueryCounter (r:1 w:1) + /// Proof Skipped: PolkadotXcm QueryCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_subscribe_version_notify() -> Weight { - // Minimum execution time: 31_238 nanoseconds. - Weight::from_ref_time(32_021_000) + // Proof Size summary in bytes: + // Measured: `38` + // Estimated: `7729` + // Minimum execution time: 28_592 nanoseconds. + Weight::from_ref_time(29_116_000) + .saturating_add(Weight::from_proof_size(7729)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(5)) } - // Storage: PolkadotXcm VersionNotifiers (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - // Storage: PolkadotXcm Queries (r:0 w:1) + /// Storage: PolkadotXcm VersionNotifiers (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm Queries (r:0 w:1) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn force_unsubscribe_version_notify() -> Weight { - // Minimum execution time: 32_459 nanoseconds. - Weight::from_ref_time(32_802_000) + // Proof Size summary in bytes: + // Measured: `220` + // Estimated: `8470` + // Minimum execution time: 30_604 nanoseconds. + Weight::from_ref_time(31_361_000) + .saturating_add(Weight::from_proof_size(8470)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) } - // Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Storage: PolkadotXcm SupportedVersion (r:4 w:2) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) fn migrate_supported_version() -> Weight { - // Minimum execution time: 13_433 nanoseconds. - Weight::from_ref_time(13_890_000) + // Proof Size summary in bytes: + // Measured: `95` + // Estimated: `9995` + // Minimum execution time: 13_750 nanoseconds. + Weight::from_ref_time(14_051_000) + .saturating_add(Weight::from_proof_size(9995)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifiers (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifiers (max_values: None, max_size: None, mode: Measured) fn migrate_version_notifiers() -> Weight { - // Minimum execution time: 13_798 nanoseconds. - Weight::from_ref_time(14_104_000) + // Proof Size summary in bytes: + // Measured: `99` + // Estimated: `9999` + // Minimum execution time: 13_897 nanoseconds. + Weight::from_ref_time(14_080_000) + .saturating_add(Weight::from_proof_size(9999)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:5 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn already_notified_target() -> Weight { - // Minimum execution time: 15_012 nanoseconds. - Weight::from_ref_time(15_360_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `12481` + // Minimum execution time: 16_364 nanoseconds. + Weight::from_ref_time(16_867_000) + .saturating_add(Weight::from_proof_size(12481)) .saturating_add(T::DbWeight::get().reads(5)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:2 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn notify_current_targets() -> Weight { - // Minimum execution time: 26_911 nanoseconds. - Weight::from_ref_time(27_686_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10041` + // Minimum execution time: 27_372 nanoseconds. + Weight::from_ref_time(28_128_000) + .saturating_add(Weight::from_proof_size(10041)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Storage: PolkadotXcm VersionNotifyTargets (r:3 w:0) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn notify_target_migration_fail() -> Weight { - // Minimum execution time: 7_067 nanoseconds. - Weight::from_ref_time(7_207_000) + // Proof Size summary in bytes: + // Measured: `136` + // Estimated: `7561` + // Minimum execution time: 7_804 nanoseconds. + Weight::from_ref_time(8_096_000) + .saturating_add(Weight::from_proof_size(7561)) .saturating_add(T::DbWeight::get().reads(3)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn migrate_version_notify_targets() -> Weight { - // Minimum execution time: 13_882 nanoseconds. - Weight::from_ref_time(14_067_000) + // Proof Size summary in bytes: + // Measured: `106` + // Estimated: `10006` + // Minimum execution time: 14_948 nanoseconds. + Weight::from_ref_time(15_422_000) + .saturating_add(Weight::from_proof_size(10006)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - // Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Storage: PolkadotXcm VersionNotifyTargets (r:4 w:2) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn migrate_and_notify_old_targets() -> Weight { - // Minimum execution time: 32_227 nanoseconds. - Weight::from_ref_time(33_068_000) + // Proof Size summary in bytes: + // Measured: `112` + // Estimated: `15027` + // Minimum execution time: 33_791 nanoseconds. + Weight::from_ref_time(34_282_000) + .saturating_add(Weight::from_proof_size(15027)) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(4)) } diff --git a/parachains/runtimes/collectives/collectives-polkadot/src/xcm_config.rs b/parachains/runtimes/collectives/collectives-polkadot/src/xcm_config.rs index a97c7677570..4eb123d6802 100644 --- a/parachains/runtimes/collectives/collectives-polkadot/src/xcm_config.rs +++ b/parachains/runtimes/collectives/collectives-polkadot/src/xcm_config.rs @@ -155,6 +155,9 @@ impl Contains for SafeCallFilter { RuntimeCall::DmpQueue(..) | RuntimeCall::Utility(pallet_utility::Call::as_derivative { .. }) | RuntimeCall::Alliance( + // `init_members` accepts unbounded vecs as arguments, + // but the call can be initiated only by root origin. + pallet_alliance::Call::init_members { .. } | pallet_alliance::Call::vote { .. } | pallet_alliance::Call::close_old_weight { .. } | pallet_alliance::Call::disband { .. } | @@ -175,7 +178,8 @@ impl Contains for SafeCallFilter { pallet_collective::Call::close_old_weight { .. } | pallet_collective::Call::disapprove_proposal { .. } | pallet_collective::Call::close { .. }, - ) => true, + ) | + RuntimeCall::PolkadotXcm(pallet_xcm::Call::force_xcm_version { .. }) => true, _ => false, } } diff --git a/parachains/runtimes/contracts/contracts-rococo/Cargo.toml b/parachains/runtimes/contracts/contracts-rococo/Cargo.toml index ead1111cf2b..142dba5fc9c 100644 --- a/parachains/runtimes/contracts/contracts-rococo/Cargo.toml +++ b/parachains/runtimes/contracts/contracts-rococo/Cargo.toml @@ -38,7 +38,7 @@ frame-system-benchmarking = { git = "https://github.com/paritytech/substrate", d frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-aura = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-authorship = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } -pallet-randomness-collective-flip = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } +pallet-insecure-randomness-collective-flip = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-balances = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-multisig = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-session = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } @@ -94,7 +94,7 @@ std = [ "pallet-contracts-primitives/std", "pallet-contracts/std", "pallet-multisig/std", - "pallet-randomness-collective-flip/std", + "pallet-insecure-randomness-collective-flip/std", "pallet-session/std", "pallet-sudo/std", "pallet-timestamp/std", @@ -164,7 +164,7 @@ try-runtime = [ "pallet-collator-selection/try-runtime", "pallet-contracts/try-runtime", "pallet-multisig/try-runtime", - "pallet-randomness-collective-flip/try-runtime", + "pallet-insecure-randomness-collective-flip/try-runtime", "pallet-session/try-runtime", "pallet-sudo/try-runtime", "pallet-timestamp/try-runtime", diff --git a/parachains/runtimes/contracts/contracts-rococo/src/lib.rs b/parachains/runtimes/contracts/contracts-rococo/src/lib.rs index a88a9437c3f..468168ce6e9 100644 --- a/parachains/runtimes/contracts/contracts-rococo/src/lib.rs +++ b/parachains/runtimes/contracts/contracts-rococo/src/lib.rs @@ -264,7 +264,7 @@ impl cumulus_pallet_parachain_system::Config for Runtime { type CheckAssociatedRelayNumber = RelayNumberStrictlyIncreases; } -impl pallet_randomness_collective_flip::Config for Runtime {} +impl pallet_insecure_randomness_collective_flip::Config for Runtime {} impl parachain_info::Config for Runtime {} @@ -332,7 +332,7 @@ construct_runtime!( ParachainSystem: cumulus_pallet_parachain_system::{ Pallet, Call, Config, Storage, Inherent, Event, ValidateUnsigned, } = 1, - RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Pallet, Storage} = 2, + RandomnessCollectiveFlip: pallet_insecure_randomness_collective_flip::{Pallet, Storage} = 2, Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 3, ParachainInfo: parachain_info::{Pallet, Storage, Config} = 4, diff --git a/parachains/runtimes/testing/rococo-parachain/Cargo.toml b/parachains/runtimes/testing/rococo-parachain/Cargo.toml index f425a4972d4..656f6c3c862 100644 --- a/parachains/runtimes/testing/rococo-parachain/Cargo.toml +++ b/parachains/runtimes/testing/rococo-parachain/Cargo.toml @@ -104,4 +104,5 @@ runtime-benchmarks = [ "frame-benchmarking/runtime-benchmarks", "pallet-assets/runtime-benchmarks", "pallet-xcm/runtime-benchmarks", + "xcm-builder/runtime-benchmarks", ] diff --git a/polkadot-parachain/Cargo.toml b/polkadot-parachain/Cargo.toml index ebeade6e48e..8e5e7bb1814 100644 --- a/polkadot-parachain/Cargo.toml +++ b/polkadot-parachain/Cargo.toml @@ -12,9 +12,9 @@ path = "src/main.rs" [dependencies] async-trait = "0.1.63" -clap = { version = "4.1.4", features = ["derive"] } +clap = { version = "4.1.6", features = ["derive"] } codec = { package = "parity-scale-codec", version = "3.0.0" } -futures = "0.3.25" +futures = "0.3.26" hex-literal = "0.3.4" log = "0.4.17" serde = { version = "1.0.152", features = ["derive"] } @@ -97,7 +97,7 @@ substrate-build-script-utils = { git = "https://github.com/paritytech/substrate" assert_cmd = "2.0" nix = { version = "0.26.1", features = ["signal"] } tempfile = "3.3.0" -tokio = { version = "1.24.2", features = ["macros", "time", "parking_lot"] } +tokio = { version = "1.25.0", features = ["macros", "time", "parking_lot"] } wait-timeout = "0.2" # purge_chain_works works with rococo-local and needs to allow this polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "master", features = ["rococo-native"] } diff --git a/polkadot-parachain/src/command.rs b/polkadot-parachain/src/command.rs index cbfe3b64af2..4270677e0bf 100644 --- a/polkadot-parachain/src/command.rs +++ b/polkadot-parachain/src/command.rs @@ -704,82 +704,97 @@ pub fn run() -> Result<()> { }, #[cfg(feature = "try-runtime")] Some(Subcommand::TryRuntime(cmd)) => { + use sc_executor::{sp_wasm_interface::ExtendedHostFunctions, NativeExecutionDispatch}; + use try_runtime_cli::block_building_info::timestamp_with_aura_info; + // grab the task manager. let runner = cli.create_runner(cmd)?; let registry = &runner.config().prometheus_config.as_ref().map(|cfg| &cfg.registry); let task_manager = sc_service::TaskManager::new(runner.config().tokio_handle.clone(), *registry) .map_err(|e| format!("Error: {:?}", e))?; - use sc_executor::{sp_wasm_interface::ExtendedHostFunctions, NativeExecutionDispatch}; type HostFunctionsOf = ExtendedHostFunctions< sp_io::SubstrateHostFunctions, ::ExtendHostFunctions, >; + let info_provider = timestamp_with_aura_info(6000); + match runner.config().chain_spec.runtime() { Runtime::Statemine => runner.async_run(|_| { Ok(( - cmd.run::>(), + cmd.run::, _>(Some( + info_provider, + )), task_manager, )) }), Runtime::Westmint => runner.async_run(|_| { - Ok((cmd.run::>(), task_manager)) + Ok(( + cmd.run::, _>(Some( + info_provider, + )), + task_manager, + )) }), Runtime::Statemint => runner.async_run(|_| { Ok(( - cmd.run::>(), + cmd.run::, _>(Some( + info_provider, + )), task_manager, )) }), Runtime::CollectivesPolkadot | Runtime::CollectivesWestend => runner.async_run(|_| { Ok(( - cmd.run::>(), + cmd.run::, _>(Some(info_provider)), task_manager, )) }), - Runtime::BridgeHub(bridge_hub_runtime_type) => match bridge_hub_runtime_type { - chain_spec::bridge_hubs::BridgeHubRuntimeType::Polkadot | - chain_spec::bridge_hubs::BridgeHubRuntimeType::PolkadotLocal | - chain_spec::bridge_hubs::BridgeHubRuntimeType::PolkadotDevelopment => runner.async_run(|_| { - Ok(( - cmd.run::>(), + Runtime::BridgeHub(bridge_hub_runtime_type) => + match bridge_hub_runtime_type { + chain_spec::bridge_hubs::BridgeHubRuntimeType::Polkadot | + chain_spec::bridge_hubs::BridgeHubRuntimeType::PolkadotLocal | + chain_spec::bridge_hubs::BridgeHubRuntimeType::PolkadotDevelopment => + runner.async_run(|_| { + Ok(( + cmd.run::, _>(Some(info_provider)), task_manager, )) - }), - chain_spec::bridge_hubs::BridgeHubRuntimeType::Kusama | - chain_spec::bridge_hubs::BridgeHubRuntimeType::KusamaLocal | - chain_spec::bridge_hubs::BridgeHubRuntimeType::KusamaDevelopment => runner.async_run(|_| { - Ok(( - cmd.run::>(), + }), + chain_spec::bridge_hubs::BridgeHubRuntimeType::Kusama | + chain_spec::bridge_hubs::BridgeHubRuntimeType::KusamaLocal | + chain_spec::bridge_hubs::BridgeHubRuntimeType::KusamaDevelopment => runner.async_run(|_| { + Ok(( + cmd.run::, _>(Some(info_provider)), task_manager, )) - }), - chain_spec::bridge_hubs::BridgeHubRuntimeType::Rococo | - chain_spec::bridge_hubs::BridgeHubRuntimeType::RococoLocal | - chain_spec::bridge_hubs::BridgeHubRuntimeType::RococoDevelopment => runner.async_run(|_| { - Ok(( - cmd.run::>(), + }), + chain_spec::bridge_hubs::BridgeHubRuntimeType::Rococo | + chain_spec::bridge_hubs::BridgeHubRuntimeType::RococoLocal | + chain_spec::bridge_hubs::BridgeHubRuntimeType::RococoDevelopment => runner.async_run(|_| { + Ok(( + cmd.run::, _>(Some(info_provider)), task_manager, )) - }), - _ => Err(format!( + }), + _ => Err(format!( "Chain '{:?}' doesn't support try-runtime for bridge_hub_runtime_type: {:?}", runner.config().chain_spec.runtime(), bridge_hub_runtime_type ) - .into()), - }, + .into()), + }, Runtime::Shell => runner.async_run(|_| { Ok(( - cmd.run::>(), + cmd.run::, _>(Some(info_provider)), task_manager, )) }), Runtime::ContractsRococo => runner.async_run(|_| { Ok(( - cmd.run::>(), + cmd.run::, _>(Some(info_provider)), task_manager, )) }), diff --git a/polkadot-parachain/src/service.rs b/polkadot-parachain/src/service.rs index c9b3d5adad3..398a212993a 100644 --- a/polkadot-parachain/src/service.rs +++ b/polkadot-parachain/src/service.rs @@ -20,10 +20,9 @@ use cumulus_client_consensus_aura::{AuraConsensus, BuildAuraConsensusParams, Slo use cumulus_client_consensus_common::{ ParachainBlockImport as TParachainBlockImport, ParachainCandidate, ParachainConsensus, }; -use cumulus_client_network::BlockAnnounceValidator; use cumulus_client_service::{ - build_relay_chain_interface, prepare_node_config, start_collator, start_full_node, - StartCollatorParams, StartFullNodeParams, + build_network, build_relay_chain_interface, prepare_node_config, start_collator, + start_full_node, BuildNetworkParams, StartCollatorParams, StartFullNodeParams, }; use cumulus_primitives_core::{ relay_chain::{Hash as PHash, PersistedValidationData}, @@ -54,7 +53,6 @@ use sp_consensus_aura::AuraApi; use sp_keystore::SyncCryptoStorePtr; use sp_runtime::{ app_crypto::AppKey, - generic::BlockId, traits::{BlakeTwo256, Header as HeaderT}, }; use std::{marker::PhantomData, sync::Arc, time::Duration}; @@ -390,9 +388,6 @@ where s => s.to_string().into(), })?; - let block_announce_validator = - BlockAnnounceValidator::new(relay_chain_interface.clone(), para_id); - let force_authoring = parachain_config.force_authoring; let validator = parachain_config.role.is_authority(); let prometheus_registry = parachain_config.prometheus_registry().cloned(); @@ -400,17 +395,16 @@ where let import_queue_service = params.import_queue.service(); let (network, system_rpc_tx, tx_handler_controller, start_network) = - sc_service::build_network(sc_service::BuildNetworkParams { - config: ¶chain_config, + build_network(BuildNetworkParams { + parachain_config: ¶chain_config, client: client.clone(), transaction_pool: transaction_pool.clone(), + para_id, spawn_handle: task_manager.spawn_handle(), + relay_chain_interface: relay_chain_interface.clone(), import_queue: params.import_queue, - block_announce_validator_builder: Some(Box::new(|_| { - Box::new(block_announce_validator) - })), - warp_sync: None, - })?; + }) + .await?; let rpc_client = client.clone(); let rpc_builder = Box::new(move |_, _| rpc_ext_builder(rpc_client.clone())); @@ -452,6 +446,10 @@ where let relay_chain_slot_duration = Duration::from_secs(6); + let overseer_handle = relay_chain_interface + .overseer_handle() + .map_err(|e| sc_service::Error::Application(Box::new(e)))?; + if validator { let parachain_consensus = build_consensus( client.clone(), @@ -480,6 +478,7 @@ where import_queue: import_queue_service, collator_key: collator_key.expect("Command line arguments do not allow this. qed"), relay_chain_slot_duration, + recovery_handle: Box::new(overseer_handle), }; start_collator(params).await?; @@ -492,6 +491,7 @@ where relay_chain_interface, relay_chain_slot_duration, import_queue: import_queue_service, + recovery_handle: Box::new(overseer_handle), }; start_full_node(params)?; @@ -577,9 +577,6 @@ where s => s.to_string().into(), })?; - let block_announce_validator = - BlockAnnounceValidator::new(relay_chain_interface.clone(), para_id); - let force_authoring = parachain_config.force_authoring; let validator = parachain_config.role.is_authority(); let prometheus_registry = parachain_config.prometheus_registry().cloned(); @@ -587,17 +584,16 @@ where let import_queue_service = params.import_queue.service(); let (network, system_rpc_tx, tx_handler_controller, start_network) = - sc_service::build_network(sc_service::BuildNetworkParams { - config: ¶chain_config, + build_network(cumulus_client_service::BuildNetworkParams { + parachain_config: ¶chain_config, client: client.clone(), transaction_pool: transaction_pool.clone(), + para_id, spawn_handle: task_manager.spawn_handle(), + relay_chain_interface: relay_chain_interface.clone(), import_queue: params.import_queue, - block_announce_validator_builder: Some(Box::new(|_| { - Box::new(block_announce_validator) - })), - warp_sync: None, - })?; + }) + .await?; let rpc_builder = { let client = client.clone(); @@ -652,6 +648,9 @@ where let relay_chain_slot_duration = Duration::from_secs(6); + let overseer_handle = relay_chain_interface + .overseer_handle() + .map_err(|e| sc_service::Error::Application(Box::new(e)))?; if validator { let parachain_consensus = build_consensus( client.clone(), @@ -680,6 +679,7 @@ where import_queue: import_queue_service, collator_key: collator_key.expect("Command line arguments do not allow this. qed"), relay_chain_slot_duration, + recovery_handle: Box::new(overseer_handle), }; start_collator(params).await?; @@ -692,6 +692,7 @@ where relay_chain_interface, relay_chain_slot_duration, import_queue: import_queue_service, + recovery_handle: Box::new(overseer_handle), }; start_full_node(params)?; @@ -992,11 +993,10 @@ where relay_parent: PHash, validation_data: &PersistedValidationData, ) -> Option> { - let block_id = BlockId::hash(parent.hash()); if self .client .runtime_api() - .has_api::>(&block_id) + .has_api::>(parent.hash()) .unwrap_or(false) { self.aura_consensus @@ -1033,12 +1033,10 @@ where &mut self, block_import: BlockImportParams, ) -> Result<(BlockImportParams, Option)>>), String> { - let block_id = BlockId::hash(*block_import.header.parent_hash()); - if self .client .runtime_api() - .has_api::>(&block_id) + .has_api::>(*block_import.header.parent_hash()) .unwrap_or(false) { self.aura_verifier.get_mut().verify(block_import).await @@ -1351,9 +1349,6 @@ where s => s.to_string().into(), })?; - let block_announce_validator = - BlockAnnounceValidator::new(relay_chain_interface.clone(), para_id); - let force_authoring = parachain_config.force_authoring; let validator = parachain_config.role.is_authority(); let prometheus_registry = parachain_config.prometheus_registry().cloned(); @@ -1361,17 +1356,16 @@ where let import_queue_service = params.import_queue.service(); let (network, system_rpc_tx, tx_handler_controller, start_network) = - sc_service::build_network(sc_service::BuildNetworkParams { - config: ¶chain_config, + build_network(BuildNetworkParams { + parachain_config: ¶chain_config, client: client.clone(), transaction_pool: transaction_pool.clone(), + para_id, spawn_handle: task_manager.spawn_handle(), + relay_chain_interface: relay_chain_interface.clone(), import_queue: params.import_queue, - block_announce_validator_builder: Some(Box::new(|_| { - Box::new(block_announce_validator) - })), - warp_sync: None, - })?; + }) + .await?; let rpc_builder = { let client = client.clone(); @@ -1425,6 +1419,9 @@ where let relay_chain_slot_duration = Duration::from_secs(6); + let overseer_handle = relay_chain_interface + .overseer_handle() + .map_err(|e| sc_service::Error::Application(Box::new(e)))?; if validator { let parachain_consensus = build_consensus( client.clone(), @@ -1453,6 +1450,7 @@ where import_queue: import_queue_service, collator_key: collator_key.expect("Command line arguments do not allow this. qed"), relay_chain_slot_duration, + recovery_handle: Box::new(overseer_handle), }; start_collator(params).await?; @@ -1465,6 +1463,7 @@ where relay_chain_interface, relay_chain_slot_duration, import_queue: import_queue_service, + recovery_handle: Box::new(overseer_handle), }; start_full_node(params)?; diff --git a/primitives/timestamp/Cargo.toml b/primitives/timestamp/Cargo.toml index ea8fd8d701a..418b79d30c0 100644 --- a/primitives/timestamp/Cargo.toml +++ b/primitives/timestamp/Cargo.toml @@ -7,7 +7,7 @@ description = "Provides timestamp related functionality for parachains." [dependencies] codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = [ "derive" ] } -futures = "0.3.25" +futures = "0.3.26" # Substrate sp-inherents = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } diff --git a/primitives/timestamp/src/lib.rs b/primitives/timestamp/src/lib.rs index 61ae3d9af0b..ddc2fe340dd 100644 --- a/primitives/timestamp/src/lib.rs +++ b/primitives/timestamp/src/lib.rs @@ -82,10 +82,7 @@ mod tests { ValidationParams, }; use cumulus_test_relay_sproof_builder::RelayStateSproofBuilder; - use sp_runtime::{ - generic::BlockId, - traits::{Block as BlockT, Header as HeaderT}, - }; + use sp_runtime::traits::{Block as BlockT, Header as HeaderT}; use std::{env, process::Command, str::FromStr}; const SLOT_DURATION: u64 = 6000; @@ -128,7 +125,7 @@ mod tests { let block = client .init_block_builder_with_timestamp( - &BlockId::Hash(hash), + hash, Some(validation_data), sproof_builder, timestamp, diff --git a/scripts/benchmarks-ci.sh b/scripts/benchmarks-ci.sh index 09f3d536885..4b465400198 100755 --- a/scripts/benchmarks-ci.sh +++ b/scripts/benchmarks-ci.sh @@ -1,70 +1,25 @@ #!/usr/bin/env bash -steps=50 -repeat=20 category=$1 runtimeName=$2 artifactsDir=$3 +steps=${4:-50} +repeat=${5:-20} benchmarkOutput=./parachains/runtimes/$category/$runtimeName/src/weights benchmarkRuntimeName="$runtimeName-dev" -if [[ $runtimeName == "statemint" ]] || [[ $runtimeName == "statemine" ]] || [[ $runtimeName == "westmint" ]]; then - pallets=( - pallet_assets - pallet_balances - pallet_collator_selection - pallet_multisig - pallet_proxy - pallet_session - pallet_timestamp - pallet_utility - pallet_uniques - cumulus_pallet_xcmp_queue - frame_system - pallet_xcm_benchmarks::generic - pallet_xcm_benchmarks::fungible - ) -elif [[ $runtimeName == "collectives-polkadot" ]]; then - pallets=( - pallet_alliance - pallet_balances - pallet_collator_selection - pallet_collective - pallet_multisig - pallet_proxy - pallet_session - pallet_timestamp - pallet_utility - cumulus_pallet_xcmp_queue - frame_system - ) -elif [[ $runtimeName == "bridge-hub-kusama" ]] || [[ $runtimeName == "bridge-hub-polkadot" ]]; then - pallets=( - frame_system - pallet_balances - pallet_collator_selection - pallet_multisig - pallet_session - pallet_timestamp - pallet_utility - cumulus_pallet_xcmp_queue - pallet_xcm_benchmarks::generic - pallet_xcm_benchmarks::fungible - ) -elif [[ $runtimeName == "bridge-hub-rococo" ]]; then - pallets=( - frame_system - pallet_balances - pallet_collator_selection - pallet_multisig - pallet_session - pallet_timestamp - pallet_utility - cumulus_pallet_xcmp_queue - pallet_xcm_benchmarks::generic - pallet_xcm_benchmarks::fungible - ) +# Load all pallet names in an array. +pallets=($( + ${artifactsDir}/polkadot-parachain benchmark pallet --list --chain="${benchmarkRuntimeName}" |\ + tail -n+2 |\ + cut -d',' -f1 |\ + sort |\ + uniq +)) + +if [ ${#pallets[@]} -ne 0 ]; then + echo "[+] Benchmarking ${#pallets[@]} pallets for runtime $runtime" else echo "$runtimeName pallet list not found in benchmarks-ci.sh" exit 1 @@ -75,10 +30,10 @@ do output_file="${pallet//::/_}" extra_args="" # a little hack for pallet_xcm_benchmarks - we want to force custom implementation for XcmWeightInfo - if [[ "$pallet" == "pallet_xcm_benchmarks::generic" ]] || [[ "$pallet" == "pallet_xcm_benchmarks::fungible" ]]; then + if [[ "$pallet" == "pallet_xcm_benchmarks::generic" ]] || [[ "$pallet" == "pallet_xcm_benchmarks::fungible" ]]; then output_file="xcm/$output_file" extra_args="--template=./templates/xcm-bench-template.hbs" - fi + fi $artifactsDir/polkadot-parachain benchmark pallet \ $extra_args \ --chain=$benchmarkRuntimeName \ diff --git a/scripts/benchmarks.sh b/scripts/benchmarks.sh index 19fa54adb30..0db74102f24 100755 --- a/scripts/benchmarks.sh +++ b/scripts/benchmarks.sh @@ -1,13 +1,17 @@ #!/usr/bin/env bash +target=${1:-production} +steps=${2:-50} +repeat=${3:-20} + __dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -${__dir}/benchmarks-ci.sh collectives collectives-polkadot target/production +${__dir}/benchmarks-ci.sh collectives collectives-polkadot target/$target $steps $repeat -${__dir}/benchmarks-ci.sh assets statemine target/production -${__dir}/benchmarks-ci.sh assets statemint target/production -${__dir}/benchmarks-ci.sh assets westmint target/production +${__dir}/benchmarks-ci.sh assets statemine target/$target $steps $repeat +${__dir}/benchmarks-ci.sh assets statemint target/$target $steps $repeat +${__dir}/benchmarks-ci.sh assets westmint target/$target $steps $repeat -${__dir}/benchmarks-ci.sh bridge-hubs bridge-hub-polkadot target/production -${__dir}/benchmarks-ci.sh bridge-hubs bridge-hub-kusama target/production -${__dir}/benchmarks-ci.sh bridge-hubs bridge-hub-rococo target/production +${__dir}/benchmarks-ci.sh bridge-hubs bridge-hub-polkadot target/$target $steps $repeat +${__dir}/benchmarks-ci.sh bridge-hubs bridge-hub-kusama target/$target $steps $repeat +${__dir}/benchmarks-ci.sh bridge-hubs bridge-hub-rococo target/$target $steps $repeat diff --git a/scripts/ci/changelog/Gemfile b/scripts/ci/changelog/Gemfile index f2d7c3bd716..46b058e3c50 100644 --- a/scripts/ci/changelog/Gemfile +++ b/scripts/ci/changelog/Gemfile @@ -16,6 +16,8 @@ gem 'optparse', '~> 0.1.1' gem 'logger', '~> 1.4' +gem 'changelogerator', '0.10.1' + gem 'test-unit', group: :dev gem 'rubocop', group: :dev, require: false diff --git a/scripts/ci/changelog/Gemfile.lock b/scripts/ci/changelog/Gemfile.lock index 855d7f91a54..893bec54919 100644 --- a/scripts/ci/changelog/Gemfile.lock +++ b/scripts/ci/changelog/Gemfile.lock @@ -4,6 +4,9 @@ GEM addressable (2.8.0) public_suffix (>= 2.0.2, < 5.0) ast (2.4.2) + changelogerator (0.10.1) + git_diff_parser (~> 3) + octokit (~> 4) faraday (1.8.0) faraday-em_http (~> 1.0) faraday-em_synchrony (~> 1.0) @@ -64,8 +67,10 @@ GEM PLATFORMS x86_64-darwin-20 + x86_64-darwin-22 DEPENDENCIES + changelogerator (= 0.10.1) git_diff_parser (~> 3) logger (~> 1.4) octokit (~> 4) diff --git a/scripts/ci/changelog/bin/changelog b/scripts/ci/changelog/bin/changelog index 68ec55425ab..8588828d651 100755 --- a/scripts/ci/changelog/bin/changelog +++ b/scripts/ci/changelog/bin/changelog @@ -15,6 +15,9 @@ logger = Logger.new($stdout) logger.level = Logger::DEBUG logger.debug('Starting') +changelogerator_version = `changelogerator --version` +logger.debug(changelogerator_version) + owner = 'paritytech' repo = 'cumulus' ref1 = ARGV[0] @@ -32,6 +35,9 @@ polkadot_ref2 = gh_cumulus.get_dependency_reference(ref2, 'polkadot-client') substrate_ref1 = gh_cumulus.get_dependency_reference(ref1, 'sp-io') substrate_ref2 = gh_cumulus.get_dependency_reference(ref2, 'sp-io') +logger.debug("Cumulus from: #{ref1}") +logger.debug("Cumulus to: #{ref2}") + logger.debug("Polkadot from: #{polkadot_ref1}") logger.debug("Polkadot to: #{polkadot_ref2}") @@ -76,7 +82,7 @@ else logger.debug("Re-using:#{substrate_data}") end -POLKADOT_COLLECTIVES_DIGEST = ENV['COLLECTIVES_POLKADOT_DIGEST'] || 'digests/polkadot-collectives-srtool-digest.json' +POLKADOT_COLLECTIVES_DIGEST = ENV['COLLECTIVES_POLKADOT_DIGEST'] || 'digests/collectives-polkadot-srtool-digest.json' SHELL_DIGEST = ENV['SHELL_DIGEST'] || 'digests/shell-srtool-digest.json' WESTMINT_DIGEST = ENV['WESTMINT_DIGEST'] || 'digests/westmint-srtool-digest.json' STATEMINE_DIGEST = ENV['STATEMINE_DIGEST'] || 'digests/statemine-srtool-digest.json' @@ -90,7 +96,7 @@ CANVAS_KUSAMA_DIGEST = ENV['CANVAS_KUSAMA_DIGEST'] || 'digests/contracts-rococo- logger.debug("Release type: #{ENV['RELEASE_TYPE']}") if ENV['RELEASE_TYPE'] && ENV['RELEASE_TYPE'] == 'client' - logger.debug("Building changelog without runtimes") + logger.debug('Building changelog without runtimes') cmd = format('jq \ --slurpfile cumulus %s \ --slurpfile substrate %s \ @@ -102,7 +108,7 @@ if ENV['RELEASE_TYPE'] && ENV['RELEASE_TYPE'] == 'client' }\' > context.json', cumulus_data, substrate_data, polkadot_data, ) else - logger.debug("Building changelog with runtimes") + logger.debug('Building changelog with runtimes') # Here we compose all the pieces together into one # single big json file. @@ -119,6 +125,7 @@ else --slurpfile srtool_polkadot_collectives %s \ --slurpfile srtool_bridge_hub_rococo %s \ --slurpfile srtool_bridge_hub_kusama %s \ + --slurpfile srtool_bridge_hub_polkadot %s \ -n \'{ cumulus: $cumulus[0], substrate: $substrate[0], diff --git a/scripts/ci/changelog/templates/change.md.tera b/scripts/ci/changelog/templates/change.md.tera index e545b4cec9c..609a038789a 100644 --- a/scripts/ci/changelog/templates/change.md.tera +++ b/scripts/ci/changelog/templates/change.md.tera @@ -1,11 +1,11 @@ {# This macro shows ONE change #} {%- macro change(c, cml="[C]", dot="[P]", sub="[S]") -%} -{%- if c.meta.C and c.meta.C.value >= 5 -%} +{%- if c.meta.C and c.meta.C.agg.max >= 5 -%} {%- set prio = " ‼️ HIGH" -%} -{%- elif c.meta.C and c.meta.C.value >= 3 -%} +{%- elif c.meta.C and c.meta.C.agg.max >= 3 -%} {%- set prio = " ❗️ Medium" -%} -{%- elif c.meta.C and c.meta.C.value < 3 -%} +{%- elif c.meta.C and c.meta.C.agg.max < 3 -%} {%- set prio = " Low" -%} {%- else -%} {%- set prio = "" -%} @@ -13,13 +13,13 @@ {%- set audit = "" -%} {# -{%- if c.meta.D and c.meta.D.value == 1 -%} +{%- if c.meta.D and c.meta.D.D1 -%} {%- set audit = "✅ audited " -%} -{%- elif c.meta.D and c.meta.D.value == 2 -%} +{%- elif c.meta.D and c.meta.D.D2 -%} {%- set audit = "✅ trivial " -%} -{%- elif c.meta.D and c.meta.D.value == 3 -%} +{%- elif c.meta.D and c.meta.D.D3 -%} {%- set audit = "✅ trivial " -%} -{%- elif c.meta.D and c.meta.D.value == 5 -%} +{%- elif c.meta.D and c.meta.D.D5 -%} {%- set audit = "⏳ pending non-critical audit " -%} {%- else -%} {%- set audit = "" -%} @@ -35,7 +35,7 @@ {%- set repo = " " -%} {%- endif -%} {# #} -{%- if c.meta.T and c.meta.T.value == 6 -%} +{%- if c.meta.T and c.meta.T.T6 -%} {%- set xcm = " [✉️ XCM]" -%} {%- else -%} {%- set xcm = "" -%} diff --git a/scripts/ci/changelog/templates/changes.md.tera b/scripts/ci/changelog/templates/changes.md.tera index d691da0a53c..f1704546b0a 100644 --- a/scripts/ci/changelog/templates/changes.md.tera +++ b/scripts/ci/changelog/templates/changes.md.tera @@ -16,4 +16,6 @@ {% endif %} +{% include "changes_api.md.tera" %} + {% include "changes_misc.md.tera" %} diff --git a/scripts/ci/changelog/templates/changes_api.md.tera b/scripts/ci/changelog/templates/changes_api.md.tera new file mode 100644 index 00000000000..2379c178c03 --- /dev/null +++ b/scripts/ci/changelog/templates/changes_api.md.tera @@ -0,0 +1,19 @@ +{%- import "change.md.tera" as m_c -%} + +### API + +{#- The changes are sorted by merge date -#} +{% for pr in changes | sort(attribute="merged_at") -%} + +{%- if pr.meta.B -%} +{%- if pr.meta.B.B0 -%} +{#- We skip silent ones -#} +{%- else -%} + +{%- if pr.meta.B.B1 and pr.meta.T.T2 and not pr.title is containing("ompanion") %} +- {{ m_c::change(c=pr) }} +{%- endif -%} +{%- endif -%} + +{%- endif -%} +{%- endfor %} diff --git a/scripts/ci/changelog/templates/changes_client.md.tera b/scripts/ci/changelog/templates/changes_client.md.tera index 36fb6b9de68..05a521d6870 100644 --- a/scripts/ci/changelog/templates/changes_client.md.tera +++ b/scripts/ci/changelog/templates/changes_client.md.tera @@ -5,11 +5,11 @@ {%- for pr in changes | sort(attribute="merged_at") %} {%- if pr.meta.B %} - {%- if pr.meta.B.value == 0 %} + {%- if pr.meta.B.B0 %} {#- We skip silent ones -#} {%- else -%} - {%- if pr.meta.B.value == 5 and not pr.title is containing("ompanion") %} + {%- if pr.meta.B.B1 and pr.meta.T and pr.meta.T.T0 and not pr.title is containing("ompanion") %} - {{ m_c::change(c=pr) }} {%- endif -%} {% endif -%} diff --git a/scripts/ci/changelog/templates/changes_misc.md.tera b/scripts/ci/changelog/templates/changes_misc.md.tera index cf3b701f2cf..b36595bc5d6 100644 --- a/scripts/ci/changelog/templates/changes_misc.md.tera +++ b/scripts/ci/changelog/templates/changes_misc.md.tera @@ -4,10 +4,10 @@ {#- First pass to count #} {%- for pr in changes -%} {%- if pr.meta.B %} - {%- if pr.meta.B.value == 0 -%} + {%- if pr.meta.B.B0 -%} {#- We skip silent ones -#} {%- else -%} - {%- if pr.meta.B and pr.meta.B.value != 5 or pr.meta.C or not pr.meta.B %} + {%- if pr.meta.T and pr.meta.T.agg.max > 2 %} {%- set_global misc_count = misc_count + 1 -%} {%- endif -%} {% endif -%} @@ -24,10 +24,10 @@ There are other misc. changes. You can expand the list below to view them all. {#- The changes are sorted by merge date #} {%- for pr in changes | sort(attribute="merged_at") %} {%- if pr.meta.B and not pr.title is containing("ompanion") %} - {%- if pr.meta.B.value == 0 %} + {%- if pr.meta.B.B0 %} {#- We skip silent ones -#} {%- else -%} - {%- if pr.meta.B and pr.meta.B.value != 5 or pr.meta.C or not pr.meta.B %} + {%- if pr.meta.T and pr.meta.T.agg.max > 2 %} - {{ m_c::change(c=pr) }} {%- endif -%} {% endif -%} diff --git a/scripts/ci/changelog/templates/changes_runtime.md.tera b/scripts/ci/changelog/templates/changes_runtime.md.tera index 9525d73935a..39c27263765 100644 --- a/scripts/ci/changelog/templates/changes_runtime.md.tera +++ b/scripts/ci/changelog/templates/changes_runtime.md.tera @@ -5,12 +5,12 @@ {#- The changes are sorted by merge date -#} {% for pr in changes | sort(attribute="merged_at") -%} -{%- if pr.meta.B and pr.meta.X -%} -{%- if pr.meta.B.value == 0 -%} +{%- if pr.meta.B -%} +{%- if pr.meta.B.B0 -%} {#- We skip silent ones -#} {%- else -%} -{%- if pr.meta.B.value == 1 and pr.meta.X.value == 1 and not pr.title is containing("ompanion") %} +{%- if pr.meta.B.B1 and pr.meta.T.T1 and not pr.title is containing("ompanion") %} - {{ m_c::change(c=pr) }} {%- endif -%} {%- endif -%} diff --git a/scripts/ci/changelog/templates/debug.md.tera b/scripts/ci/changelog/templates/debug.md.tera index 43eb52a84db..4f0b14c00f1 100644 --- a/scripts/ci/changelog/templates/debug.md.tera +++ b/scripts/ci/changelog/templates/debug.md.tera @@ -1,4 +1,4 @@ -{%- set to_ignore = changes | filter(attribute="meta.B.value", value=0) %} +{%- set to_ignore = changes | filter(attribute="meta.B.B0") %} - -{%- if prio -%} +{% if prio -%} {{prio}}: {{text}} {%- else -%} @@ -43,9 +42,9 @@ The changes motivating this priority level are: {% for pr in changes | sort(attribute="merged_at") -%} {%- if pr.meta.C -%} - {%- if pr.meta.C.value == p %} + {%- if pr.meta.C.agg.max >= p %} - {{ m_c::change(c=pr) }} -{%- if pr.meta.B and pr.meta.X and pr.meta.B.value == 1 and pr.meta.X.value == 1 %} +{%- if pr.meta.B and pr.meta.B.B1 and pr.meta.T and pr.meta.T.T1 %} (RUNTIME) {% endif %} diff --git a/scripts/ci/changelog/templates/host_functions.md.tera b/scripts/ci/changelog/templates/host_functions.md.tera index fc84c090285..2a9b26e8090 100644 --- a/scripts/ci/changelog/templates/host_functions.md.tera +++ b/scripts/ci/changelog/templates/host_functions.md.tera @@ -4,10 +4,10 @@ {# We loop first to count the number of host functions but we do not display anything yet #} {%- for pr in changes -%} -{%- if pr.meta.B and pr.meta.B.value == 0 -%} +{%- if pr.meta.B and pr.meta.B.B0 -%} {#- We skip silent ones -#} {%- else -%} - {%- if pr.meta.E and pr.meta.E.value == 4 -%} + {%- if pr.meta.E and pr.meta.E.E4 -%} {%- set_global host_fn_count = host_fn_count + 1 -%} {% endif -%} {%- endif -%} @@ -26,10 +26,10 @@ {% for pr in changes | sort(attribute="merged_at") -%} -{%- if pr.meta.B and pr.meta.B.value == 0 -%} +{%- if pr.meta.B and pr.meta.B.B0 -%} {#- We skip silent ones -#} {%- else -%} - {%- if pr.meta.E and pr.meta.E.value == 4 -%} + {%- if pr.meta.E and pr.meta.E.E4 -%} - {{ m_c::change(c=pr) }} {% endif -%} {% endif -%} diff --git a/scripts/ci/changelog/templates/migrations-db.md.tera b/scripts/ci/changelog/templates/migrations-db.md.tera index d2fd8105e41..e840d991d9a 100644 --- a/scripts/ci/changelog/templates/migrations-db.md.tera +++ b/scripts/ci/changelog/templates/migrations-db.md.tera @@ -5,10 +5,10 @@ {% for pr in changes | sort(attribute="merged_at") -%} -{%- if pr.meta.B and pr.meta.B.value == 0 %} +{%- if pr.meta.B and pr.meta.B.B0 %} {#- We skip silent ones -#} {%- else -%} -{%- if pr.meta.E and pr.meta.E.value == 2 -%} +{%- if pr.meta.E and pr.meta.E.E2 -%} {%- set_global db_migration_count = db_migration_count + 1 -%} - {{ m_c::change(c=pr) }} {% endif -%} diff --git a/scripts/ci/changelog/templates/migrations-runtime.md.tera b/scripts/ci/changelog/templates/migrations-runtime.md.tera index 6c7bd287c91..f02499a84d7 100644 --- a/scripts/ci/changelog/templates/migrations-runtime.md.tera +++ b/scripts/ci/changelog/templates/migrations-runtime.md.tera @@ -4,10 +4,10 @@ {% for pr in changes | sort(attribute="merged_at") -%} -{%- if pr.meta.B and pr.meta.B.value == 0 %} +{%- if pr.meta.B and pr.meta.B.B0 %} {#- We skip silent ones -#} {%- else -%} -{%- if pr.meta.E and pr.meta.E.value == 1 -%} +{%- if pr.meta.E and pr.meta.E.E1 -%} - {{ m_c::change(c=pr) }} {% endif -%} {% endif -%} diff --git a/scripts/ci/gitlab/pipeline/benchmarks.yml b/scripts/ci/gitlab/pipeline/benchmarks.yml index a9c2e4f879c..2b6455cd90d 100644 --- a/scripts/ci/gitlab/pipeline/benchmarks.yml +++ b/scripts/ci/gitlab/pipeline/benchmarks.yml @@ -17,7 +17,6 @@ benchmarks-assets: stage: benchmarks-run timeout: 1d extends: - - .docker-env - .collect-artifacts - .benchmarks-refs before_script: @@ -35,20 +34,18 @@ benchmarks-assets: after_script: - rm -rf .git/config tags: - - weights-vm + - weights benchmarks-collectives: stage: benchmarks-run timeout: 1d extends: - - .docker-env - .collect-artifacts - .benchmarks-refs before_script: - !reference [.docker-env, before_script] script: - ./scripts/benchmarks-ci.sh collectives collectives-polkadot ./artifacts - - git status - export CURRENT_TIME=$(date '+%s') - export BRANCHNAME="weights-collectives-${CI_COMMIT_BRANCH}-${CURRENT_TIME}" - !reference [.git-commit-push, script] @@ -58,13 +55,12 @@ benchmarks-collectives: after_script: - rm -rf .git/config tags: - - weights-vm + - weights benchmarks-bridge-hubs: stage: benchmarks-run timeout: 1d extends: - - .docker-env - .collect-artifacts - .benchmarks-refs before_script: @@ -82,4 +78,4 @@ benchmarks-bridge-hubs: after_script: - rm -rf .git/config tags: - - weights-vm + - weights diff --git a/scripts/ci/gitlab/pipeline/zombienet.yml b/scripts/ci/gitlab/pipeline/zombienet.yml index 04eee935041..808edcfb52f 100644 --- a/scripts/ci/gitlab/pipeline/zombienet.yml +++ b/scripts/ci/gitlab/pipeline/zombienet.yml @@ -50,7 +50,7 @@ zombienet-0001-sync_blocks_from_tip_without_connected_collator: - /home/nonroot/zombie-net/scripts/ci/run-test-env-manager.sh --github-remote-dir="${GH_DIR}" --concurrency=1 - --test="0001-sync_blocks_from_tip_without_connected_collator.feature" + --test="0001-sync_blocks_from_tip_without_connected_collator.zndsl" zombienet-0002-pov_recovery: extends: @@ -62,7 +62,7 @@ zombienet-0002-pov_recovery: - /home/nonroot/zombie-net/scripts/ci/run-test-env-manager.sh --github-remote-dir="${GH_DIR}" --concurrency=1 - --test="0002-pov_recovery.feature" + --test="0002-pov_recovery.zndsl" zombienet-0003-full_node_catching_up: extends: @@ -74,7 +74,7 @@ zombienet-0003-full_node_catching_up: - /home/nonroot/zombie-net/scripts/ci/run-test-env-manager.sh --github-remote-dir="${GH_DIR}" --concurrency=1 - --test="0003-full_node_catching_up.feature" + --test="0003-full_node_catching_up.zndsl" zombienet-0004-runtime_upgrade: extends: @@ -95,7 +95,7 @@ zombienet-0004-runtime_upgrade: - /home/nonroot/zombie-net/scripts/ci/run-test-env-manager.sh --github-remote-dir="${GH_DIR}" --concurrency=1 - --test="0004-runtime_upgrade.feature" + --test="0004-runtime_upgrade.zndsl" zombienet-0005-migrate_solo_to_para: extends: @@ -114,7 +114,7 @@ zombienet-0005-migrate_solo_to_para: - /home/nonroot/zombie-net/scripts/ci/run-test-env-manager.sh --github-remote-dir="${GH_DIR}" --concurrency=1 - --test="0005-migrate_solo_to_para.feature" + --test="0005-migrate_solo_to_para.zndsl" zombienet-0006-rpc_collator_builds_blocks: extends: @@ -126,4 +126,16 @@ zombienet-0006-rpc_collator_builds_blocks: - /home/nonroot/zombie-net/scripts/ci/run-test-env-manager.sh --github-remote-dir="${GH_DIR}" --concurrency=1 - --test="0006-rpc_collator_builds_blocks.feature" + --test="0006-rpc_collator_builds_blocks.zndsl" + +zombienet-0007-full_node_warp_sync: + extends: + - .zombienet-common + - .zombienet-refs + - .zombienet-before-script + - .zombienet-after-script + script: + - /home/nonroot/zombie-net/scripts/ci/run-test-env-manager.sh + --github-remote-dir="${GH_DIR}" + --concurrency=1 + --test="0007-full_node_warp_sync.zndsl" diff --git a/scripts/create_bridge_hub_polkadot_spec.sh b/scripts/create_bridge_hub_polkadot_spec.sh index e6955488b8a..49bc9cee692 100755 --- a/scripts/create_bridge_hub_polkadot_spec.sh +++ b/scripts/create_bridge_hub_polkadot_spec.sh @@ -32,9 +32,6 @@ $binary build-spec --chain bridge-hub-polkadot-dev > chain-spec-plain.json cat $rt_path | od -A n -v -t x1 | tr -d ' \n' > rt-hex.txt # replace the runtime in the spec with the given runtime and set some values to production -# TODO: missing .bootNodes -# TODO: missing .genesis.runtime.collatorSelection.invulnerables -# TODO: missing .genesis.runtime.session.keys cat chain-spec-plain.json | jq --rawfile code rt-hex.txt '.genesis.runtime.system.code = ("0x" + $code)' \ | jq '.name = "Polkadot BridgeHub"' \ | jq '.id = "bridge-hub-polkadot"' \ @@ -55,36 +52,36 @@ cat chain-spec-plain.json | jq --rawfile code rt-hex.txt '.genesis.runtime.syste | jq --argjson para_id $para_id '.genesis.runtime.parachainInfo.parachainId = $para_id' \ | jq '.genesis.runtime.balances.balances = []' \ | jq '.genesis.runtime.collatorSelection.invulnerables = [ - "TODO:ACC1", - "TODO:ACC2", - "TODO:ACC3", - "TODO:ACC4" + "134AK3RiMA97Fx9dLj1CvuLJUa8Yo93EeLA1TkP6CCGnWMSd", + "15dU8Tt7kde2diuHzijGbKGPU5K8BPzrFJfYFozvrS1DdE21", + "1vXMKM8SctM28AQw1wSpd7p9yCUWn1uhbbKSVTuznsw8Q2x", + "15mCQcaj3QP1UdxBF82JRd9v3riZJcVNVEmx8xkFp7DSYR4Y" ]' \ | jq '.genesis.runtime.session.keys = [ [ - "TODO:ACC1", - "TODO:ACC1", + "134AK3RiMA97Fx9dLj1CvuLJUa8Yo93EeLA1TkP6CCGnWMSd", + "134AK3RiMA97Fx9dLj1CvuLJUa8Yo93EeLA1TkP6CCGnWMSd", { "aura": "5EX6AnyuSPEFQ7HAPjRgzqk1sxgh8cyacGimwJ16y1nJ2w7g" } ], [ - "TODO:ACC2", - "TODO:ACC2", + "15dU8Tt7kde2diuHzijGbKGPU5K8BPzrFJfYFozvrS1DdE21", + "15dU8Tt7kde2diuHzijGbKGPU5K8BPzrFJfYFozvrS1DdE21", { "aura": "5DZN8UhaJftvKhMMARmJBwrwzuEDpoUzzBvvWMbFXYsJ4CmK" } ], [ - "TODO:ACC3", - "TODO:ACC3", + "1vXMKM8SctM28AQw1wSpd7p9yCUWn1uhbbKSVTuznsw8Q2x", + "1vXMKM8SctM28AQw1wSpd7p9yCUWn1uhbbKSVTuznsw8Q2x", { "aura": "5FKsn83rXQQiw7HwoeYoLMoYS5GP9YVNHZiCHwA4DSwDcPVa" } ], [ - "TODO:ACC4", - "TODO:ACC4", + "15mCQcaj3QP1UdxBF82JRd9v3riZJcVNVEmx8xkFp7DSYR4Y", + "15mCQcaj3QP1UdxBF82JRd9v3riZJcVNVEmx8xkFp7DSYR4Y", { "aura": "5DCg19ckcJz4m52Th4o1LcSRK3H7NsUcQsRbu7pTDM3mZ26v" } diff --git a/test/client/src/block_builder.rs b/test/client/src/block_builder.rs index 53141f0e2ee..13b20df6be6 100644 --- a/test/client/src/block_builder.rs +++ b/test/client/src/block_builder.rs @@ -22,10 +22,7 @@ use cumulus_test_runtime::{Block, GetLastTimestamp, Hash, Header}; use polkadot_primitives::{BlockNumber as PBlockNumber, Hash as PHash}; use sc_block_builder::{BlockBuilder, BlockBuilderProvider}; use sp_api::ProvideRuntimeApi; -use sp_runtime::{ - generic::BlockId, - traits::{Block as BlockT, Header as HeaderT}, -}; +use sp_runtime::traits::{Block as BlockT, Header as HeaderT}; /// An extension for the Cumulus test client to init a block builder. pub trait InitBlockBuilder { @@ -45,10 +42,10 @@ pub trait InitBlockBuilder { /// Init a specific block builder at a specific block that works for the test runtime. /// /// Same as [`InitBlockBuilder::init_block_builder`] besides that it takes a - /// [`BlockId`] to say which should be the parent block of the block that is being build. + /// [`type@Hash`] to say which should be the parent block of the block that is being build. fn init_block_builder_at( &self, - at: &BlockId, + at: Hash, validation_data: Option>, relay_sproof_builder: RelayStateSproofBuilder, ) -> sc_block_builder::BlockBuilder; @@ -56,11 +53,11 @@ pub trait InitBlockBuilder { /// Init a specific block builder that works for the test runtime. /// /// Same as [`InitBlockBuilder::init_block_builder`] besides that it takes a - /// [`BlockId`] to say which should be the parent block of the block that is being build and + /// [`type@Hash`] to say which should be the parent block of the block that is being build and /// it will use the given `timestamp` as input for the timestamp inherent. fn init_block_builder_with_timestamp( &self, - at: &BlockId, + at: Hash, validation_data: Option>, relay_sproof_builder: RelayStateSproofBuilder, timestamp: u64, @@ -69,7 +66,7 @@ pub trait InitBlockBuilder { fn init_block_builder<'a>( client: &'a Client, - at: &BlockId, + at: Hash, validation_data: Option>, relay_sproof_builder: RelayStateSproofBuilder, timestamp: u64, @@ -123,16 +120,12 @@ impl InitBlockBuilder for Client { relay_sproof_builder: RelayStateSproofBuilder, ) -> BlockBuilder { let chain_info = self.chain_info(); - self.init_block_builder_at( - &BlockId::Hash(chain_info.best_hash), - validation_data, - relay_sproof_builder, - ) + self.init_block_builder_at(chain_info.best_hash, validation_data, relay_sproof_builder) } fn init_block_builder_at( &self, - at: &BlockId, + at: Hash, validation_data: Option>, relay_sproof_builder: RelayStateSproofBuilder, ) -> BlockBuilder { @@ -145,7 +138,7 @@ impl InitBlockBuilder for Client { fn init_block_builder_with_timestamp( &self, - at: &BlockId, + at: Hash, validation_data: Option>, relay_sproof_builder: RelayStateSproofBuilder, timestamp: u64, diff --git a/test/relay-validation-worker-provider/Cargo.toml b/test/relay-validation-worker-provider/Cargo.toml index 07fad4cf044..c0a5a043358 100644 --- a/test/relay-validation-worker-provider/Cargo.toml +++ b/test/relay-validation-worker-provider/Cargo.toml @@ -11,4 +11,4 @@ build = "build.rs" polkadot-node-core-pvf = { git = "https://github.com/paritytech/polkadot", branch = "master" } [build-dependencies] -toml = "0.6.0" +toml = "0.7.2" diff --git a/test/service/Cargo.toml b/test/service/Cargo.toml index 30668f90ab3..97c6ab1d157 100644 --- a/test/service/Cargo.toml +++ b/test/service/Cargo.toml @@ -10,13 +10,13 @@ path = "src/main.rs" [dependencies] async-trait = "0.1.63" -clap = { version = "4.1.4", features = ["derive"] } +clap = { version = "4.1.6", features = ["derive"] } codec = { package = "parity-scale-codec", version = "3.0.0" } criterion = { version = "0.4.0", features = [ "async_tokio" ] } jsonrpsee = { version = "0.16.2", features = ["server"] } rand = "0.8.5" serde = { version = "1.0.152", features = ["derive"] } -tokio = { version = "1.24.2", features = ["macros"] } +tokio = { version = "1.25.0", features = ["macros"] } tracing = "0.1.37" url = "2.3.1" @@ -54,6 +54,8 @@ polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = polkadot-service = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-test-service = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-node-subsystem = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-overseer = { git = "https://github.com/paritytech/polkadot", branch = "master" } # Cumulus cumulus-client-cli = { path = "../../client/cli" } @@ -70,9 +72,10 @@ cumulus-relay-chain-rpc-interface = { path = "../../client/relay-chain-rpc-inter cumulus-test-relay-validation-worker-provider = { path = "../relay-validation-worker-provider" } cumulus-test-runtime = { path = "../runtime" } cumulus-relay-chain-minimal-node = { path = "../../client/relay-chain-minimal-node" } +cumulus-client-pov-recovery = { path = "../../client/pov-recovery" } [dev-dependencies] -futures = "0.3.25" +futures = "0.3.26" portpicker = "0.1.1" # Polkadot dependencies diff --git a/test/service/src/cli.rs b/test/service/src/cli.rs index 31829a66d26..3cf99496576 100644 --- a/test/service/src/cli.rs +++ b/test/service/src/cli.rs @@ -49,6 +49,9 @@ pub struct TestCollatorCli { #[arg(long)] pub disable_block_announcements: bool, + + #[arg(long)] + pub fail_pov_recovery: bool, } #[derive(Debug, clap::Subcommand)] diff --git a/test/service/src/lib.rs b/test/service/src/lib.rs index e14b7b7463e..35758b0d7ef 100644 --- a/test/service/src/lib.rs +++ b/test/service/src/lib.rs @@ -33,9 +33,10 @@ use cumulus_client_cli::CollatorOptions; use cumulus_client_consensus_common::{ ParachainBlockImport as TParachainBlockImport, ParachainCandidate, ParachainConsensus, }; -use cumulus_client_network::BlockAnnounceValidator; +use cumulus_client_pov_recovery::RecoveryHandle; use cumulus_client_service::{ - prepare_node_config, start_collator, start_full_node, StartCollatorParams, StartFullNodeParams, + build_network, prepare_node_config, start_collator, start_full_node, BuildNetworkParams, + StartCollatorParams, StartFullNodeParams, }; use cumulus_primitives_core::ParaId; use cumulus_relay_chain_inprocess_interface::RelayChainInProcessInterface; @@ -45,6 +46,8 @@ use cumulus_relay_chain_minimal_node::build_minimal_relay_chain_node; use cumulus_test_runtime::{Hash, Header, NodeBlock as Block, RuntimeApi}; use frame_system_rpc_runtime_api::AccountNonceApi; +use polkadot_node_subsystem::{errors::RecoveryError, messages::AvailabilityRecoveryMessage}; +use polkadot_overseer::Handle as OverseerHandle; use polkadot_primitives::{CollatorPair, Hash as PHash, PersistedValidationData}; use polkadot_service::ProvideRuntimeApi; use sc_client_api::execution_extensions::ExecutionStrategies; @@ -76,6 +79,8 @@ pub use cumulus_test_runtime as runtime; pub use genesis::*; pub use sp_keyring::Sr25519Keyring as Keyring; +const LOG_TARGET: &str = "cumulus-test-service"; + /// A consensus that will never produce any block. #[derive(Clone)] struct NullConsensus; @@ -126,6 +131,41 @@ pub type ParachainBlockImport = TParachainBlockImport, Backen /// Transaction pool type used by the test service pub type TransactionPool = Arc>; +/// Recovery handle that fails regularly to simulate unavailable povs. +pub struct FailingRecoveryHandle { + overseer_handle: OverseerHandle, + counter: u32, +} + +impl FailingRecoveryHandle { + /// Create a new FailingRecoveryHandle + pub fn new(overseer_handle: OverseerHandle) -> Self { + Self { overseer_handle, counter: 0 } + } +} + +#[async_trait::async_trait] +impl RecoveryHandle for FailingRecoveryHandle { + async fn send_recovery_msg( + &mut self, + message: AvailabilityRecoveryMessage, + origin: &'static str, + ) { + // For every 5th block we immediately signal unavailability to trigger + // a retry. + if self.counter % 5 == 0 { + let AvailabilityRecoveryMessage::RecoverAvailableData(_, _, _, back_sender) = message; + tracing::info!(target: LOG_TARGET, "Failing pov recovery."); + back_sender + .send(Err(RecoveryError::Unavailable)) + .expect("Return channel should work here."); + } else { + self.overseer_handle.send_msg(message, origin).await; + } + self.counter += 1; + } +} + /// Starts a `ServiceBuilder` for a full service. /// /// Use this macro if you don't actually need the full service, but just the builder in order to @@ -236,6 +276,7 @@ pub async fn start_node_impl( relay_chain_config: Configuration, para_id: ParaId, wrap_announce_block: Option AnnounceBlockFn>>, + fail_pov_recovery: bool, rpc_ext_builder: RB, consensus: Consensus, collator_options: CollatorOptions, @@ -273,23 +314,21 @@ where s => s.to_string().into(), })?; - let block_announce_validator = - BlockAnnounceValidator::new(relay_chain_interface.clone(), para_id); - let block_announce_validator_builder = move |_| Box::new(block_announce_validator) as Box<_>; - - let prometheus_registry = parachain_config.prometheus_registry().cloned(); let import_queue_service = params.import_queue.service(); let (network, system_rpc_tx, tx_handler_controller, start_network) = - sc_service::build_network(sc_service::BuildNetworkParams { - config: ¶chain_config, + build_network(BuildNetworkParams { + parachain_config: ¶chain_config, client: client.clone(), transaction_pool: transaction_pool.clone(), + para_id, spawn_handle: task_manager.spawn_handle(), + relay_chain_interface: relay_chain_interface.clone(), import_queue: params.import_queue, - block_announce_validator_builder: Some(Box::new(block_announce_validator_builder)), - warp_sync: None, - })?; + }) + .await?; + + let prometheus_registry = parachain_config.prometheus_registry().cloned(); let rpc_builder = { let client = client.clone(); @@ -320,6 +359,17 @@ where .unwrap_or_else(|| announce_block); let relay_chain_interface_for_closure = relay_chain_interface.clone(); + + let overseer_handle = relay_chain_interface + .overseer_handle() + .map_err(|e| sc_service::Error::Application(Box::new(e)))?; + + let recovery_handle: Box = if fail_pov_recovery { + Box::new(FailingRecoveryHandle::new(overseer_handle)) + } else { + Box::new(overseer_handle) + }; + if let Some(collator_key) = collator_key { let parachain_consensus: Box> = match consensus { Consensus::RelayChain => { @@ -374,6 +424,7 @@ where collator_key, import_queue: import_queue_service, relay_chain_slot_duration: Duration::from_secs(6), + recovery_handle, }; start_collator(params).await?; @@ -385,10 +436,8 @@ where para_id, relay_chain_interface, import_queue: import_queue_service, - // The slot duration is currently used internally only to configure - // the recovery delay of pov-recovery. We don't want to wait for too - // long on the full node to recover, so we reduce this time here. - relay_chain_slot_duration: Duration::from_millis(6), + relay_chain_slot_duration: Duration::from_secs(6), + recovery_handle, }; start_full_node(params)?; @@ -600,6 +649,7 @@ impl TestNodeBuilder { relay_chain_config, self.para_id, self.wrap_announce_block, + false, |_| Ok(jsonrpsee::RpcModule::new(())), self.consensus, collator_options, @@ -756,7 +806,7 @@ pub fn fetch_nonce(client: &Client, account: sp_core::sr25519::Public) -> u32 { let best_hash = client.chain_info().best_hash; client .runtime_api() - .account_nonce(&generic::BlockId::Hash(best_hash), account.into()) + .account_nonce(best_hash, account.into()) .expect("Fetching account nonce works; qed") } diff --git a/test/service/src/main.rs b/test/service/src/main.rs index 40deccc27de..760caece1ae 100644 --- a/test/service/src/main.rs +++ b/test/service/src/main.rs @@ -123,6 +123,9 @@ fn main() -> Result<(), sc_cli::Error> { "Is collating: {}", if config.role.is_authority() { "yes" } else { "no" } ); + if cli.fail_pov_recovery { + tracing::info!("PoV recovery failure enabled"); + } let collator_key = config.role.is_authority().then(|| CollatorPair::generate().0); @@ -141,6 +144,7 @@ fn main() -> Result<(), sc_cli::Error> { polkadot_config, parachain_id, cli.disable_block_announcements.then(wrap_announce_block), + cli.fail_pov_recovery, |_| Ok(jsonrpsee::RpcModule::new(())), consensus, collator_options, diff --git a/zombienet/tests/0001-sync_blocks_from_tip_without_connected_collator.feature b/zombienet/tests/0001-sync_blocks_from_tip_without_connected_collator.zndsl similarity index 88% rename from zombienet/tests/0001-sync_blocks_from_tip_without_connected_collator.feature rename to zombienet/tests/0001-sync_blocks_from_tip_without_connected_collator.zndsl index 68620d03abc..bdb475ce921 100644 --- a/zombienet/tests/0001-sync_blocks_from_tip_without_connected_collator.feature +++ b/zombienet/tests/0001-sync_blocks_from_tip_without_connected_collator.zndsl @@ -2,12 +2,6 @@ Description: Sync blocks from tip without connected collator test Network: ./0001-sync_blocks_from_tip_without_connected_collator.toml Creds: config - -alice: is up -bob: is up -charlie: is up -dave: is up - alice: parachain 2000 is registered within 225 seconds alice: parachain 2000 block height is at least 10 within 250 seconds diff --git a/zombienet/tests/0002-pov_recovery.feature b/zombienet/tests/0002-pov_recovery.feature deleted file mode 100644 index 80524164821..00000000000 --- a/zombienet/tests/0002-pov_recovery.feature +++ /dev/null @@ -1,26 +0,0 @@ -Description: PoV recovery test -Network: ./0002-pov_recovery.toml -Creds: config - - -validator-0: is up -validator-1: is up -validator-2: is up -validator-3: is up -alice: is up within 60 seconds -bob: is up within 60 seconds -charlie: is up within 60 seconds -one: is up within 60 seconds -two: is up within 60 seconds - -# wait 30 blocks and register parachain -validator-3: reports block height is at least 30 within 250 seconds -validator-0: js-script ./register-para.js with "2000" within 240 seconds -validator-0: parachain 2000 is registered within 300 seconds - -# check block production -bob: reports block height is at least 20 within 600 seconds -alice: reports block height is at least 20 within 600 seconds -charlie: reports block height is at least 20 within 600 seconds -one: reports block height is at least 20 within 600 seconds -two: reports block height is at least 20 within 600 seconds diff --git a/zombienet/tests/0002-pov_recovery.toml b/zombienet/tests/0002-pov_recovery.toml index 2e3f8629cab..0df0293e348 100644 --- a/zombienet/tests/0002-pov_recovery.toml +++ b/zombienet/tests/0002-pov_recovery.toml @@ -40,7 +40,7 @@ add_to_genesis = false validator = true # collator image = "{{COL_IMAGE}}" command = "test-parachain" - args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug", "--use-null-consensus", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] + args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug,cumulus-consensus=debug", "--use-null-consensus", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] # run eve as a parachain full node [[parachains.collators]] @@ -48,7 +48,15 @@ add_to_genesis = false validator = false # full node image = "{{COL_IMAGE}}" command = "test-parachain" - args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}","--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] + args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug,cumulus-consensus=debug", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}","--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] + + # we fail recovery for eve from time to time to test retries + [[parachains.collators]] + name = "eve" + validator = true # collator + image = "{{COL_IMAGE}}" + command = "test-parachain" + args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug,cumulus-consensus=debug", "--fail-pov-recovery", "--use-null-consensus", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] # run one as a RPC collator who does not produce blocks [[parachains.collators]] @@ -56,7 +64,7 @@ add_to_genesis = false validator = true # collator image = "{{COL_IMAGE}}" command = "test-parachain" - args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug", "--use-null-consensus", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--relay-chain-rpc-url {{'ferdie'|zombie('wsUri')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] + args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug,cumulus-consensus=debug", "--use-null-consensus", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--relay-chain-rpc-url {{'ferdie'|zombie('wsUri')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] # run two as a RPC parachain full node [[parachains.collators]] @@ -64,4 +72,4 @@ add_to_genesis = false validator = false # full node image = "{{COL_IMAGE}}" command = "test-parachain" - args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--relay-chain-rpc-url {{'ferdie'|zombie('wsUri')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] + args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug,cumulus-consensus=debug", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--relay-chain-rpc-url {{'ferdie'|zombie('wsUri')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"] diff --git a/zombienet/tests/0002-pov_recovery.zndsl b/zombienet/tests/0002-pov_recovery.zndsl new file mode 100644 index 00000000000..3eb28bb2aeb --- /dev/null +++ b/zombienet/tests/0002-pov_recovery.zndsl @@ -0,0 +1,16 @@ +Description: PoV recovery test +Network: ./0002-pov_recovery.toml +Creds: config + +# wait 20 blocks and register parachain +validator-3: reports block height is at least 20 within 250 seconds +validator-0: js-script ./register-para.js with "2000" within 240 seconds +validator-0: parachain 2000 is registered within 300 seconds + +# check block production +bob: reports block height is at least 20 within 600 seconds +alice: reports block height is at least 20 within 600 seconds +charlie: reports block height is at least 20 within 600 seconds +one: reports block height is at least 20 within 800 seconds +two: reports block height is at least 20 within 800 seconds +eve: reports block height is at least 20 within 800 seconds diff --git a/zombienet/tests/0003-full_node_catching_up.feature b/zombienet/tests/0003-full_node_catching_up.zndsl similarity index 81% rename from zombienet/tests/0003-full_node_catching_up.feature rename to zombienet/tests/0003-full_node_catching_up.zndsl index de8353bb134..9c6eb0fb830 100644 --- a/zombienet/tests/0003-full_node_catching_up.feature +++ b/zombienet/tests/0003-full_node_catching_up.zndsl @@ -2,11 +2,6 @@ Description: Full node catching up test Network: ./0003-full_node_catching_up.toml Creds: config -alice: is up -bob: is up -charlie: is up -dave: is up -eve: is up alice: parachain 2000 is registered within 225 seconds dave: reports block height is at least 7 within 250 seconds eve: reports block height is at least 7 within 250 seconds diff --git a/zombienet/tests/0004-runtime_upgrade.feature b/zombienet/tests/0004-runtime_upgrade.zndsl similarity index 89% rename from zombienet/tests/0004-runtime_upgrade.feature rename to zombienet/tests/0004-runtime_upgrade.zndsl index eca3cb33668..cdafc48fce9 100644 --- a/zombienet/tests/0004-runtime_upgrade.feature +++ b/zombienet/tests/0004-runtime_upgrade.zndsl @@ -2,10 +2,6 @@ Description: Runtime Upgrade test Network: ./0004-runtime_upgrade.toml Creds: config -alice: is up -bob: is up -charlie: is up -dave: is up alice: parachain 2000 is registered within 225 seconds charlie: reports block height is at least 5 within 250 seconds charlie: parachain 2000 perform upgrade with /tmp/wasm_binary_spec_version_incremented.rs.compact.compressed.wasm within 200 seconds diff --git a/zombienet/tests/0005-migrate_solo_to_para.feature b/zombienet/tests/0005-migrate_solo_to_para.zndsl similarity index 89% rename from zombienet/tests/0005-migrate_solo_to_para.feature rename to zombienet/tests/0005-migrate_solo_to_para.zndsl index c546e49d1cf..677eb87a2e6 100644 --- a/zombienet/tests/0005-migrate_solo_to_para.feature +++ b/zombienet/tests/0005-migrate_solo_to_para.zndsl @@ -2,10 +2,6 @@ Description: Migrate solo to para Network: ./0005-migrate_solo_to_para.toml Creds: config -alice: is up -bob: is up -dave: is up -eve: is up alice: parachain 2000 is registered within 225 seconds alice: reports block height is at least 10 within 250 seconds alice: parachain 2000 block height is at least 10 within 250 seconds diff --git a/zombienet/tests/0006-rpc_collator_builds_blocks.feature b/zombienet/tests/0006-rpc_collator_builds_blocks.zndsl similarity index 85% rename from zombienet/tests/0006-rpc_collator_builds_blocks.feature rename to zombienet/tests/0006-rpc_collator_builds_blocks.zndsl index 78886b7020b..7da8416d016 100644 --- a/zombienet/tests/0006-rpc_collator_builds_blocks.feature +++ b/zombienet/tests/0006-rpc_collator_builds_blocks.zndsl @@ -2,15 +2,6 @@ Description: RPC collator should build blocks Network: ./0006-rpc_collator_builds_blocks.toml Creds: config -alice: is up -bob: is up -charlie: is up -one: is up -two: is up -three: is up -dave: is up -eve: is up - alice: parachain 2000 is registered within 225 seconds alice: parachain 2000 block height is at least 10 within 250 seconds diff --git a/zombienet/tests/0007-full_node_warp_sync.toml b/zombienet/tests/0007-full_node_warp_sync.toml new file mode 100644 index 00000000000..493363fd3cf --- /dev/null +++ b/zombienet/tests/0007-full_node_warp_sync.toml @@ -0,0 +1,77 @@ +[relaychain] +default_image = "{{RELAY_IMAGE}}" +default_command = "polkadot" +default_args = [ "-lparachain=debug" ] +chain = "rococo-local" +chain_spec_path = "zombienet/tests/0007-warp-sync-relaychain-spec.json" + + [[relaychain.nodes]] + name = "alice" + validator = true + db_snapshot = "https://storage.googleapis.com/zombienet-db-snaps/cumulus/0007-full_node_warp_sync/relaychain-1964f8b557f10085cdc18f4105ad0bbb3df4c4c6.tgz" + + [[relaychain.nodes]] + name = "bob" + validator = true + db_snapshot = "https://storage.googleapis.com/zombienet-db-snaps/cumulus/0007-full_node_warp_sync/relaychain-1964f8b557f10085cdc18f4105ad0bbb3df4c4c6.tgz" + + [[relaychain.nodes]] + name = "charlie" + validator = true + db_snapshot = "https://storage.googleapis.com/zombienet-db-snaps/cumulus/0007-full_node_warp_sync/relaychain-1964f8b557f10085cdc18f4105ad0bbb3df4c4c6.tgz" + + [[relaychain.nodes]] + name = "dave" + validator = true + args = ["--sync warp", "--reserved-only", "--reserved-nodes {{'alice'|zombie('multiAddress')}} {{'bob'|zombie('multiAddress')}} {{'charlie'|zombie('multiAddress')}}"] + +[[parachains]] +id = 2000 +cumulus_based = true +chain_spec_path = "zombienet/tests/0007-warp-sync-parachain-spec.json" +add_to_genesis = false + + [[parachains.collators]] + name = "dave" + validator = true + image = "{{COL_IMAGE}}" + command = "test-parachain" + args = ["-lparachain=debug"] + db_snapshot = "https://storage.googleapis.com/zombienet-db-snaps/cumulus/0007-full_node_warp_sync/parachain-587c1ed24ddd7de05c237cf7c158fff53b8f5b26.tgz" + + [[parachains.collators]] + name = "eve" + validator = true + image = "{{COL_IMAGE}}" + command = "test-parachain" + args = ["-lparachain=debug"] + db_snapshot = "https://storage.googleapis.com/zombienet-db-snaps/cumulus/0007-full_node_warp_sync/parachain-587c1ed24ddd7de05c237cf7c158fff53b8f5b26.tgz" + + [[parachains.collators]] + name = "ferdie" + validator = true + image = "{{COL_IMAGE}}" + command = "test-parachain" + args = ["-lparachain=debug"] + db_snapshot = "https://storage.googleapis.com/zombienet-db-snaps/cumulus/0007-full_node_warp_sync/parachain-587c1ed24ddd7de05c237cf7c158fff53b8f5b26.tgz" + + [[parachains.collators]] + name = "one" + validator = false + image = "{{COL_IMAGE}}" + command = "test-parachain" + args = ["-lsync=debug","--sync warp","--","--sync warp"] + + [[parachains.collators]] + name = "two" + validator = false + image = "{{COL_IMAGE}}" + command = "test-parachain" + args = ["-lsync=debug","--sync warp","--relay-chain-rpc-urls {{'alice'|zombie('wsUri')}}"] + + [[parachains.collators]] + name = "three" + validator = false + image = "{{COL_IMAGE}}" + command = "test-parachain" + args = ["-lsync=debug","--sync warp","--relay-chain-rpc-urls {{'dave'|zombie('wsUri')}}"] diff --git a/zombienet/tests/0007-full_node_warp_sync.zndsl b/zombienet/tests/0007-full_node_warp_sync.zndsl new file mode 100644 index 00000000000..1bcc35e80c4 --- /dev/null +++ b/zombienet/tests/0007-full_node_warp_sync.zndsl @@ -0,0 +1,8 @@ +Description: Full node catching up using warp sync +Network: ./0007-full_node_warp_sync.toml +Creds: config + +alice: parachain 2000 is registered within 225 seconds +one: reports block height is at least 770 within 225 seconds +two: reports block height is at least 770 within 225 seconds +three: reports block height is at least 770 within 225 seconds \ No newline at end of file diff --git a/zombienet/tests/0007-prepare-warp-sync-db-snapshot.md b/zombienet/tests/0007-prepare-warp-sync-db-snapshot.md new file mode 100644 index 00000000000..7885dd0c026 --- /dev/null +++ b/zombienet/tests/0007-prepare-warp-sync-db-snapshot.md @@ -0,0 +1,37 @@ +# Database snapshot guide + +For this guide we will be taking a snapshot of a parachain and relay chain. Please note we are using a local chain here `rococo_local_testnet` and `local_testnet`. Live chains will have different values + +*Please ensure that the database is not in current use, i.e no nodes are writing to it* + +# How to prepare database for a relaychain +To prepare snapshot for a relay chain we need to copy the database. + +``` +mkdir -p relaychain-snapshot/alice/data/chains/rococo_local_testnet/db/ + +cp -r chain-data/alice/data/chains/rococo_local_testnet/db/. relaychain-snapshot/alice/data/chains/rococo_local_testnet/db/ + +tar -C relaychain-snapshot/alice/ -czf relaychain.tgz data +``` +# How to prepare database for a parachain + +To prepare snapshot for a parachain we need to copy the database for both the collator node (parachain data) and validator (relay data) + +``` +#Parachain data +mkdir -p parachain-snapshot/charlie/data/chains/local_testnet/db/ + +# Relay data +mkdir -p parachain-snapshot/charlie/relay-data/chains/rococo_local_testnet/db/ + +cp -r chain-data/charlie/data/chains/local_testnet/db/. parachain-snapshot/charlie/data/chains/local_testnet/db/ + +cp -r chain-data/charlie/relay-data/chains/rococo_local_testnet/db/. parachain-snapshot/charlie/relay-data/chains/rococo_local_testnet/db/ + +tar -C parachain-snapshot/charlie/ -czf parachain.tgz data relay-data +``` + +# Restoring a snapshot +Zombienet will automatically download the `*.tgz` file to the respective folder for a run. However you can also download it manually, just ensure you extract the tar file in the correct directory, i.e. the root directory +`chain-data/charlie/` \ No newline at end of file diff --git a/zombienet/tests/0007-warp-sync-parachain-spec.json b/zombienet/tests/0007-warp-sync-parachain-spec.json new file mode 100644 index 00000000000..306e82e8d03 --- /dev/null +++ b/zombienet/tests/0007-warp-sync-parachain-spec.json @@ -0,0 +1,53 @@ +{ + "name": "Local Testnet", + "id": "local_testnet", + "chainType": "Local", + "bootNodes": [ + "/ip4/127.0.0.1/tcp/63048/ws/p2p/12D3KooWKM1HeSv61ryZwAiBTZnqmass5pYM48k9Z7obzhTbnphm" + ], + "telemetryEndpoints": null, + "protocolId": null, + "properties": null, + "para_id": 2000, + "codeSubstitutes": {}, + "genesis": { + "raw": { + "top": { + "0x2089cf3645f21ef4a51744f13e6e4e45": "0xd0070000", + "0x26aa394eea5630e07c48ae0c9558cef74e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x26aa394eea5630e07c48ae0c9558cef75684a022a34dd8bfa2baaf44f172b710": "0x01", + "0x26aa394eea5630e07c48ae0c9558cef78a42f33323cb5ced3b44dd825fda9fcc": "0x4545454545454545454545454545454545454545454545454545454545454545", + "0x26aa394eea5630e07c48ae0c9558cef7a44704b568d21667356a5a050c118746b4def25cfda6ef3a00000000": "0x4545454545454545454545454545454545454545454545454545454545454545", + "0x26aa394eea5630e07c48ae0c9558cef7a7fd6c28836b9a28522dc924110cf439": "0x01", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9007cbc1270b5b091758f9c42f5915b3e8ac59e11963af19174d0b94d5d78041c233f55d2e19324665bafdfb62925af2d": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da923a05cabf6d3bde7ca3ef0d11596b5611cbd2d43530a44705ad088af313e18f80b53ef16b36177cd4b77b846f2a5f07c": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da932a5935f6edc617ae178fef9eb1e211fbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94f9aea1afa791265fae359272badc1cf8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96f2e33376834a63c86a195bcf685aebbfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98578796c363c105114787203e4d93ca6101191192fc877c24d725b337120fa3edc63d227bbc92705db1e2cb65f56981a": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b0edae20838083f2cde1c4080db8cf8090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b321d16960ce1d9190b61e2421cc60131e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9de1e86a9a8c739864cf3cc5ec2bea59fd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e5e802737cce3a54b0bc9e3d3e6be26e306721211d5404bd9da88e0204360a1a9ab8b87c66c1bc2fcdd37f3c2222cc20": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9edeaa42c2163f68084a988529a0e2ec5e659a7a1628cdd93febc04a4e0646ea20e9f5f0ce097d9a05290d4a9e054df4e": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f3f619a1c2956443880db9cc9a13d058e860f1b1c7227f7c22602f53f15af80747814dffd839719731ee3bba6edc126c": "0x0000000000000000010000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7f9cce9c888469bb1a0dceaa129672ef8": "0x045863756d756c75732d746573742d70617261636861696e", + "0x2b746573745f72756e74696d655f757067726164655f6b65792b": "0x01020304", + "0x3a63": "0x", + "0x3a636f6465": "0x52bc537646db8e0528b52ffd0058141105def98535124d107877930ef0565839f8f5c1e2f0077f0fad17c87323feddec14ff657b8b1316becd112e7e9b1869497315cfa9942f3bd3522e26b2907799a96820d709ac8778336b37217befbde59652a69452a31276112112514e4d04e913aaf0a8cf13fc73d5205479987a92e28907dacfe2848ae1a964908ae151e944fd89921adca00a50da080ae28932284a50108ffa74e22d271397c3e2a6eeb676ce2ec0031a6394e151d7ec02335bc8820ee2a082326578d46dbe1916e16ae7b6e7bb547ccfdbe3a6bd0719dbac8797d0d9f37d3d5139e3474c7aeeb6fdabb1750e9f73dbbe63c6827a5420bd1dbd2b6fe80dbdbd821e617b436fcabbfb829bfeebe128f80eb3435fe837cef7f96fdc14a03f0abe6ddf6d2eea0f65325cfadc2910e8ea4f81c0ed07263d57c2e730e9b9663d6312d15bc7f2e7a4d6b9fc390f2e3926457f0e840271fd11fdf9b5698c13ddda22e3c41cb175468c13bdf2e7aae5e70fff3c8702d97f0ea377971dd617bd9d8a95e7c1a4e8eceb9b45bfa1bc9fff86923f5be629d7139526bc9ea82ce1474c8a0e7fdc575299149ffe50d7cce90ff51d86dbfe13363dee1f5cca25aaddc9b9ef306adb7f9b73cd843c77ce6ffbd93241da9d4f31463308b43b8feee48cef28dfeca789284e4009fa9f598237c0a1cc4367627a28993c572651723ae7b72589519c80f23f5b6636c119912867139766429e3b775910e8aa3fe6a3b67db8fd6c995f7f3d4ede0c6977deeea40fbb933f4e7ef6f35b26e3a2fcdaace772cc9fc72d73552021877e85b620a69f985fae599018f289ae8e6d33fafab5af272aa77ffa03fa0e337bb645b7b6fdebd20c02ec55e5d956b9b5e9ba663d959c9563d5b67ff90e5fba617e6dfa97664254ce7d75cc2fc62e21d6abfe98ead7b5d885f90e2b766d71c398d47e44c3fc72eb671c121f933e95b36fb3f2f59dd68c087bb5d9cf9679cb777a87ad4dbfdaf4a33edcdee636c724c5b6af5cda01cdf91cfd8b4070e9e5fcf3e73f70e9e69f53b9f2cf79b00ef33c21feedf0cf352eb1bff79eab8f277df4f4e4525dd54de2d2378331c9d918c1a5e95f7afc5433def9732a3e7f0afa54304f39105c9aa31d2ecd380497a6a604972817824b374f7906d878ca3bc03a8ea7158c7679ca954b3c7edafc04e2a9e73bcce3e28d9ab2533ce51763bcf18f5cf0945fcaab1dfad932af94db70c9394539e5ea83923e3aa6b544910577405b1ff16041d0b3cdbb901e7d7bebea2c4fbbd6362fe452cb0c6d62639e5db31929907dedd2d0c544734c52e97a2322b9dad5c7d41397eebe7976c77e6acf3e3026ed9880b2814510c0acc10b18b8600c3c3a9a71bbee1c8828c2e8300fbb10bded633a9e1d5b89bd9ea2f8f24e8e98b47a72c3a51fd0d867c40270e90534f62bd485ebf50405981ff1b84c5966b0022a6499810bce1006cfb6af7fad63d23a2ec23189af4b3321504e7fe851df8c63929c40fd968fb874793b0f2e5117555572566e7945614cd2b84455de7e51dbfe553109f3cd848c1e931373cba94d1fdb80fa2bbf96753b446dfad7a66f55a35f8fad0385f328e3a8fe983c7ee584febcfdea5db8e933603d6e40ef17bb186be2a1eb366367fa66d6d5650a673026f960523be5ce24aa7573dbdc57871b50bffa6e1a93d837eb51f96464126befb1755c50505050104f3b4981f4b78fb7f6d1a0bd3723b4f5f83c42f1e5d9b1111441cfcee3b9cc086d5df79d894bf9ba1433f58e6b7d37324f4ed33fdf6d36b6dbfeb55376ca1a9df54ca9c2399eb5d115cfcec3b3f81d342ecdeb19c710d5c2ff6c999f463e0ba269bcfaf530e70562cf0c0a8353c25c0ddf320042ea970251a9fa637753263de998a412d0e6e8d9dbddfea88d67e74122f3ec3bb86dc4a4c9e3d7ed6bc2fa0ad4e0155879e627c6e82582ee9e5f3b42606837ced7db9f43efac07c27d4e0e59efb73bc6a51ed0f4f444987fafa727a2bccea8b1ce6940178fd62451ef0334cd1e607ae76494a65d077cd180226a80e95665674c9d33224cefa3f2e7c9ab4f766dc190a2c6eb498a979ff19d17e0f524e58a7717dcae7d1911a67742f6a14fd34319790b81f1fc7259cfeb8c08d3b766d06fa00cb20f1dcac8a475dd571f4efa68572e1ede2d24c6ae06b9f401eeb1bf44f0353bcb76f7a010f6f61d562edd04616f6f389ffbb43b87d02397f821f6a74b1fa05d22e5123b9742e6f557462639777e89767e9ebcfbd977120497728b2297dad99de3acc76d4684c96dfb9a75072ee51237a6dba53ea2b081e570690af1ed932404979cb7efc025eadb352ee9298a986fb7611de6f141fdfce1dbafc59475b4c651c7251ff6751b2eb1b72beb68e3b49b5126614c5a777e31b68ead2beb288f3a16e6d53763d72c08bbf321ec0ee312ebe90997f2a5ae3ee6063dab134d4f54d8f80dd2694c371fcda75d7f6e10bf9ea488f2fbeb9b15b1505ee5dc20e7ba3571afee3622a257ef4d15c8747e33c47a277f44afae687cce4f2df3b39df5755326e9b653b4f57d6504a86ff6e33fdab7dc205e820abefc8ccfeccccc5c9e9999d9d5072f7169073476e712894bd38db8d4ee430553be1d639de6e91df8278f6f6f775cf2d1d22727490e129a9e9cb8e2f504858d9fa4673fc0eb09cae935eb918036b51dd6348c4beafcfcd5afb7e9f7b67fa90fda3e6cec6dd037eb69e89a11617a786d36e43994f3f9f38bb321da3fd7cc31c9f9e5b0def6afc6e0f67c3365d2b4f9f5ebd20cca697ae8bdcdf8bc7b9beea1eff0d5db74c0b75f9a517236f194f736f5f4ed6f9bcaa4269850c24806be7d2a93a611df3edf10dfbed36fd3a7b69f2e53a60c997fdedb14e29d5f8bf5e6fc6dfa9a15413ddc7ea87f72eeb7fcd93265ca94f969fa76b72993563a26ade7bc02c004d741b9d43ac3ba94d4014d4f50b6fc8caf27285a5e1d639de5511f71494f41645e9dc7abab0f65c0a53f5c977249f7d7d52f9172491d97d8d5afbd1ca65cd29ff155671c50851626e9b7f376f6ce7a58eace38a08a2d4cd25fef4d9ddcac2732a95db32134eb61dfe16dc2a5cfeccb2c77d8b44bc4b5be9b04b45350989feed9e37a8cda3aca3853fbf5a9bddb45a2b779db7778bbbb7bbd7b993d3ecb1b22ecce799de5646fdefd72a98fe9cf7ee901b44b7dd0d4db35eb51df2c4813414141505ea53269c667bf18532ead734999c4bec3bd3926b1f7a0391f71495fe312bb0d97dad9475cda67d7aca7ddd6448767628abf1e7fe50d9175e7eb4e02edb7d4ac67e55c7f0580a9779f70e9ab8fa93dfb15b9347784c0d0d627f67cf566006dbd5d5db322d67d5a46264df7ea3b7cedd60fc37c132c742db69b7b4c812cd931ff437d139a26d8afb38714c8920dfa1f067c13f8ebec2205b26483fe8701bfceaed9101714f4eb3b7c31a60a647db62b93d42397e67ebbfad55b6492fa0fad5d5d33218e49ea2d2393d477f8626c377e4c812cd9d33781bfce9e2990251bf43f0cf875f6cd8ad0827e1de3923ebb664336e8d7777887777887755326a9ab0f963eda2b004cbccc854bf95a572e4df595ca247575d3ee8d4b4f41585ea94b11a0adab6b15c2e2002b30c10a7d110242e88a9095d095500c425484a4084d09419189216342e6253b4256459645f682cc0559956c8a2c0619958c05991459141610322cac1c6457322a322c5610321b585d584db098608db1b86075c1528295040b095617eb081619d618d6c912c3fa6241c17a82e504ab0ccb0c56192c32586b5863b0c46085c152c30283f505cb0b9618cb0a9616ac2c584bb0bc5855b0c058685854b0b060a5615dc11a82158645048b8b2504cb0bab07d6161617160d2c2b2c272c29aa32560b2a315463a8b05039a10a420584ea07d596ac0515964a07550eaa1b543ba86c50f1a0b2525151bda0aa52c1a092a26a017761304031b017380cf10a9512e00ee016d5140c835e4353a96440d1c04da1d8105510a34427a2940825ae203ed15f60151c0e1e1b54192832550cac18846410b241954595a5f2013503ea069916c8051cc3424165c179c15ae02c382add0316a3b9a0a2d02ca0aef416b18c2c0c991a5919b10ab00c1b0585a5ea810343d5c03d41d9c0ad20e2a0e202a4025a8941549987c6a30264c15bc263c253c22be321e13de1390152a990405dd1515461760ce481f301ec01f481bbc1c3f2821e0d1c1cde150fca93e2a4e0b8b82f9c10dc10f80b7b066a8b0bc302c381e1a8d04c8031e82a4022c02d108ca785078617c665f1e0f0cabc36a82d505fa0b8605909d1c0c520c34176036b061597d8047785b2c2ba6255615d414901d900e100dba0a85050282b140ca817502da0aa502ea0a68065281540375053e015a82720196a05140ba8200a0a180798059806c402b4027c03e5046c0315858a026a815ac02c1d6685b05fac17dbc5066181b03fd82deb83edc172b15b2c0f7607abc56ad92cab83cdc166b138582cf6069511ac2cdc15b21a505f2c1e341bad06aa8ae6018ba14a42ef80adb01a5c062603ab81cdc063780c1c0553612842537095ea0bb780a5e02916151c03a66289b061ac97adc182b1702000ceb6c192c1aab145d8306c12760d951728508105c396b14dd82fcb8475c21a61b9ac153b833d4225a6da4215859562a930b18492112449620211d8278c384111203882031ac8000450b02b183284909d0248901e0734e019b0000508918065010f3be4146003bdc5b5af0bbfa8b88f30390204459838e28812458a5cdb49283952a48845c9200475a04b844009922248145922044a8628590209d01149922cd10020248e2449b244030a0073a0404580981c918489111c01c4e4c80890540088c91144001d1102009805d0114b8e283922820de2409998e0884f1126458e24b10412479228c2c40447882859020913264728a003c4424b8084895f72c467c9121828628337d0234047248124c9114d8a1c21c1111248a002491c1181088ea84001201665e283c4112590b0813201527264c911259420715803254842700369a0482061a204c912a0268e14314112269838a2c8922349244142021e1f249648c2c3035ea1479050b2849222471441c2c41f4142c9121100524282259040e27b402b7404458e003a228923808e406006cee00448921c810408891224376015ea83c412494050e40810099038d2c4111a7845972cd1004cf74812101c01a4840421280284c4912548925082a448111d35ae0b6a4b172bb678355d7a0a0afa35b50ed85c3417cbc452eee6064208b71b08e1069f6355eeec712bbb6687ed3eb84bedae66cf35534edf83a2f7288ae26ec7ecdeebc7ce31e5a8d6eeeea7dcf03d65761c5d478bf945aa599f0eaf72f753d71d33aeb28a724d594ea3a80c73dcfa54b5f45eef788f9b52c7efbd4775333b8780a7af9595b9dd7b8f5d77436d6ed7caed28eda7aaaff5a973fa5455dbfda06a39cbb96676adad54f7019cba66ca418703070e1c9a166ad50e29a5aee3ebc8ccacec9859b51d845015f2636dbdac5675bb4ab55254e6b01bec1cd58e6137c54e536e657eafbbb97308cd74ab0f3b765cadd075373f4a5595626e0d398851146551cea90bf59013e281a17bdd0d9d638a72dbdc96a5da1445511453ce6198c330e7dab2ba9929ca3947313beab5aa62166635b363eea78e5b951bb6c8b5c5dcccdc90294a43aa8f5bb9bb356a37ecee7eccadddcddc1de26e6d758f2b664b64801f168b9455c7a39e0ed5d7cddabbdddadd4d59ed54d4d78e07e5b8bbdb717333f7beb7adfa9a454f7bd9396666c7ce3da7aadadcaacaedba55298ad276adcf2954854fbbdb51943e75eb1e3ff8203bb78f79f939ca6a8fdadd375e6bb376b3bed67694c332ca591a156364a6ba1f3bcbe95307ddd3c1dcddcceeedf09e0e14c5ef51bbb0003a40d17b0fbe97030170188a1ca4dec3b8b9df7bef31bf3782efe97b1dd9396739768ef53577776c071ff7d3dd0e610961d134ca2658b2c4088e8c00929238b2e448124b96285242800f47902c0122c000748c76f820710408922459820003d89123871c3a6822101247305172c412a0224048463082254835f246c91126983862b58711e4a0478e2c094191254b001d81c41249921c91437b38320224404a48b044da840088043d8e285104480992254c144182099211f0f8a1d4a389254a00944309013e388df600840f3d14f1e188cf1149405044044a9028c1e408253c022d390288c9007c58c2040097fa70840993234b9818c11248145972a4c912481c5952e40826492071a4480f3e2504f8c004124798e8544a20017404088a28c10489122421e81102244b8e342992801e1080001f923852640920264cb004090054dac3912647921469e28811e82000ed41044b2429220225484420822592e898719b268e24a104491125488e500289108460097980244990f8e40480c9007ca80f404b2c0180248e38b2846482233e45809a38a264871aa0232218000fed81091013244d1c2180541f9a401282234b98c869a2e448cf680f45942c8184c992234d8a2c39e24812248a1c11c1114b96006252248924489440a2085012121c1182234914016ae2084e1325471a278b01eb13131b51caf4c43241236a824f9e984c941135994cd1883e79f2e4491b3175371b79b2a6274f9eb8276d444d4f9e98dc65c4b4a6353d31b511933e79f2e4c9139333f2644d6be489c96419515365449fac9127fbe4091b31ed9335a24f9eb0291a31ad3e7962323923a63551469e4023a65523aaa667c4b42667444d2636a22693a98d98d6b446d4b44680682e565577044c8ed02f23e2bebb4021d39910d33b8f5ca2bce5e46f2a527e452a46f9d34f4987eb9a15f15c3308bc18c575ed4f9769630807adfee01de228b94a7a28786ec22b9740078abf0448eb7fbecac3734e9efbdb1fe69af043bf20d6d910d7bc1da29c923ffdf04975ce0497c5b8d4c77c55b60c2e511f1a822e717e5521ef1f58c7f2f62b6efb44fc2f8f9787b67d4b4e1e9d8d3623e2c0b47b6ccb22726bcb32c57944eeb69f27414f9d7e72d0b7f6d16d137bde5e84f85bee18ca69c91bcb9f849c593236f9117df4acbfa4a146b31144e54a165bc2f0624698351c9917854bbc45e10273de5e2e981181eee4947f859e3017641ef32a23d25de4b461523b26439b7e95694c6a5f32381bc2ffdc653d4b84e85b1edaf8abac2793aa3ccccbd73723c24452f097b7172e61de8ec9c944a0ec2e72c66db950e321b619044414ffacb575141ae3ac923fdb5e7475df0b39e7d4e61c6e6d06935210e4bd93fd457f3412b4d9a76f9ffde5dbfbd45db8e4854bfaaa601cb7b8e6f5acee54ba20a65f1944f47a841b6c51e5652888748a9882952368b1c51ae0d931272ee512558a3eb157eda7cde57384f9e4a14a7a3e7dbcba76c0f1c6c38d60db884712d7663352c2da349b24d586694cc42d62ff80be5d137053253dd7d7be2dddb5edc5a5acb333e71588d71f3f47bfafee743c2828c8091e75d20eeb389e0ed4e08c2c38a18630b0e004cf7ae4d20ebfaeb58e07c0dc600b54f882056c7802cffa6bb6fe57f80ccdc6df79e338df296853f4ce35d7dd22059243410a52942f1adaf4a7286d071f248d4bd029b719c10773da508526a8d36c98f4b220fc2cf50a9a663372ceb934d6b92d68537ba771c9b96b77eede7bce080b2393a06bd6833129eb5933b4397a38e212741e5c6287ee3eb8e41c3a894bcfa143c7342e6d2130286a975a0885e8d1594e41a71c3a257d288ab2a4f6a39cb461528c31468f31c618abaa8accec05f7d830ce738d49cf170bda74e7d2f3e73e486e0b81a141de1c2ea4f104783d6db1c50a5b60e1011bbfcadba120fdea05d36e908b0a5a0e97fa709a8605b4a0cdf8ad3eda036f734c7a0e8c36b57fcbed9c5cecea1a93b8a04dd1b348816c16e425447f85f0af0ca3ad6b8ecd37c638ed1a99d4623270a90fcdb60b9adb61e7ce45e0520b687ada4117efe3f5a44517cfb35043dc933ecfd9e79359a6380f2561eff07e41eb72a5cb43571f50fa68cbbb839938e396d1f4c4832c7ec6e9def1e08a8d83a6a71da8d13b0813a4e9890762fe7990c63ba74517ef9c07ab9c369990752c0b15417bae5299d45c5a672c97efc6abec5c1856be00af2730a6bcf3065db7f5eb867da9fc86f13b7cb94d9787b9535e2f8771d6ae9baa9c49b0770eb31e859059fe500fe793e75d2acf73df45b13ca8699b18423d54394d5454fe50bffeb3fbfc764084c6aeb7055cab34d0d82fe66e76ae5fe574221d93ba3ba4fa437f7039d77d1a68ebd72e636ebbddcd90f7bcffc9e9c431c9f93af706cd6998e7d2ba731e6cc3253df560ca3bcf691de5713cd3c73b20de87a3c2b77d5597f5a8c3b467d9a0add6cdbd7df2712910fd751d2d2828080a8f3a673d2bff62c738ced5f9b241d3da9d3bffc93edc0ee1f2c9f22487870be857e5d37dd6e3823c5fbf628c31c6aaf21f2bca263a3ee4d379555995e5d12b1772ce39b9ae8ff9c82daf86d07d6c9b46fca53e68f1a35f108b5cf269a7441edaa6111f72915faa409cc869341ea3a68d46fe343e494fe393f44ece24398f895c15c8e5be726beb8ffc91a19cbb9bea0f4b567eb9736b53fde1e4ac3ce43b7d6d338911d566c46b1664cba802b130e7aa402cd944c75b1ea39cce31df6c48fc9fe74c7c2a17b94fe530176b1cab89d13177ce63e5aea672ac923f96cc02c50edf51b3434231e29182c36b241491478a0e97a2e518fd8c8f66fc864b51c599f1677ce434db4c92f34c4c2f72cc673691eb6741affa439353249d636ed30f6d98ebd862e3ac8fb651e3ace7d8a4e0904e2c1bdcc08b2aa810a30958789e28182d709062869833e2c0058f36cefa0da935ce7ab64d231e83be232486061df3191f531d551ccca15f8ac56d5f5bc749142d238616ccc08637c0210e65786a5c05cb3385e29162e2a991da38d1a39cd131bfdc362be79cf554720874d75911d09d4739a977d1dda61f31c7a5cad5afcd31c9721b577f19749b2d0a173eed9673e74f380f17edd516328266f996f979c5e89d0da93cca6955324b8d7796658af3d4c827393c5cdcc4777f84199cc01ca18a309a88609a5e09f5a6d74c88f31ff74ede1089ee3c42a0c93e256f86c47f9e84fa26fdd03d89a619a689c1c51ea3a6cdd1477ff6e91f27e9a39c46fc4c92f33ed1f59d631893d487f2e833fe74fef37c36f1d1558140d944c7439fd19d5f71ebeeee963f70c756a1b5ab6b167ff629fd31a36c1ce78e92f2e7f9a4bc497f9613ac11cf29771eb7193fc62dbe6613509e952a30059db0549912c50928413caa3893923f5066597fd239f17a9e9cfbf36d1106da13f25449d0154ac7aeedf1653dd46643e83f0994115908e5cd10f6e7ec4f36e1e731babb7bbd7b99d95d6741082744929cd83fe4c60ecee041929c34b6ca7307c4ef1e07050505fdbadb80d8fdba5b2cb0cb5cbbf6b0f3cdda356320fe213353bae0a06512217e664a172cdc6bb65aae6c47c808daba7e7b27d1f39e77f746b16fb6ce59f3ee1ab450395179c243e1576a774fa63fd87778376c0b81a6a72c6d6459c38740d31316359eb3a0e155e1eb29cb1abf6c505f2771098a2e9a872397a68d6e4aa86fcffe3930b898f45e4f58c8348eba86b407e7361fcdc7f9007e3ed37bf2ce670501edc23f9925fa0ebb6ed1dfe6b6d73f18c31365903ea18af3597dfb4ebb6d007fad661b18c03f59d36396826a43f99673835e3322a277de5b13f7ae5db555557fa8af15971a8115e0fad9672aba78cc9ff3c6649f9db321f42be9b35ef192d51fcf81e2ff6899bf9cb320985bd62549307aa0d1af54fdf1b87ae21ca3228bc7bcf2eb7a185b5e7146c40da91cf31d1642f9e5bb5d5e6d98774624faee64b9fa63bdf26b9bfc5b3589ffd37108025a135c5e63d57901fe521368cea15b59e3a15346640006579ae7a6495cba81ee3e484694b0a2e5f1e890c31aff76e0d2844e52fea7d17b082c0346b8f4d40b115cda7f9e030333fef90fcfe5fc5333bcfc73e5d2cd4f15f32f32f194b33a10f4c1a5b784372352e4298f94b352527507955795116112035ad0d5e752ce5b94d406b7697ae803b32114e5949c2978767d28e73ef3d6cceced4c64a124b2cecf795c2f18f3707b0be567743d4111a45d365c82fedc6542a2cf1494f975ce86ac433919ca47bf94839e72b8456a9bd0d5771a42f9e51e13bf70398fac2372758d4b99abdb70c97255e7e13eb8145d9dc425e8a6b7b6cce366baaecb7718db6ea2579e5579e7995fba41d02f2c973ed1f4f4822deffc727e5da6c5bcaa2ebff6f29ffecb2f9f1b22943f478528225488ba3cfa5559ae5f593248f4caab30efdcf22fef7c9e5772ee538e79dcf6abce82589665499fe7d3391353114c4c8fb90f745784734a4ee898acf4ab783d4c334c4e278f39dca67be8a2adf909d51e96278ac89f50ed01faf2ec34b65d0f835bbb68539eb811a9a44fe6ce33d7ac2754042df38697433933bfe4cde5943f22ce3379734922d1a1c70b6e96533e31524422158738afe4847ef9756d13f39bcaf52f87db4d25833cbfa0ebbfe0f4ce2fbf18f3b1fc92737f42c7fc6accda309ffb186741ae219754fd312f6fafa4fe989517e1fc92d3726cbbf6e1fe3e9c3f08f1eada11db2018caab871488be7a0e104fd6643146054cbb60ca42c1cc3055e92205ebbbf98849cb44539fd8a5aa59c87d86859ad0bcaaaa6a4cdac824de72b1b3dfbcb7cf156e37cff7297f33ce07f0ed94f3f67c193264a8ce302aaf42df69b8bdbfdec67e6d131afbbec69ec3de2b81c67ebd2c88a601295288737e556a4c1ac0b789da86c2a51b458ac63e783d5d09c2b30d5e4f31b0f2a4d713155d8600a960cc4f5318f027095c90845717ad14adc9783d5d1187df2eaf272b88f03bbc9e66c085cd84584e08f33f467e4c0dfee749e8271017b230b2c14f202d36b8b8f01388055c783f9954c18b0210e1cb4f265cbebcc6a0a0572df3eaafce545c3ffbce2fb73d7f0f8d5f08b4b39c272ca2bc73e7eb7c43e4a1f1ce1f1a3f9998def973fd1f2d53a6cc343dfb8bf2eb9716d1f494258ddf7efb8b31de74f8b73d347e3321dee4c64a2026e2bd5dcc99902df33f5be6c99b21ebed42d65b025d7aba41d003f13f39d99becb79bbeb7ef6d7b06ba5eddf496db38fd8ae4feb5ecea2d86e36d2913687a9a62cb47a78440cbe3362df7a93cfa73cadb2fde30bf42db4dc8f5a7e9434e6d9359fe88be09107fc831d17613f27dcd2f87b15fbcdd5ceebeff72def839131272d1a639b5859cb7c6449bfbcb61d4a66a78d1d67f3d8cdaf40d2fdaf82fc7ab8f725073cca94de1f0227dcb2e94797f86791a8f6decda26f29d166d4f7d288fde4498c488ae316a90756ab32194c79b21fd98f763729ac2080a7ade2ebf366b42bb3cb45d0ee52fc642dbe55797e12f870665e3af87853626d437e117c192fdcb5dd65302edf2cb5d7ee9eb5dc7bb1100a1cbb54b90131fda72feb22ae72b73d51f56e698b5cdfecab10ab32abfb6255896b163d5c56e6d9a11a13b54eaba6fe6498d494eca6f39625268293155156355f96e22d0a2535e555555b9faa8d6b884e86f5000e1da6ccd6057d51ffa836276ddf679734ca2a2fea07c371168d09f8b807aca2b05d2c34e511e15c817aef6ab37d1104a48735641e7e85d7974d81d617551d17b6bb21fa353abdca16e6fe91fa54f74ca358340ace4347db5959387deb1bba3eff48f93e7f5c83ffd1cd977f84763df4ba4eadb4df376d3dedb103bafbac3a49cf2def429a7e212208c898faed910231f3d4ad51d8450db8ceed34ef91537b9e447c704053d10cd5bde0d84bde5d1352b8289af7c87e3b6e48701cffaa31d087ee46fafb625d181e05bae1991225fb90e5f79dc7e18f0ab3faaaa2ba9ba4367419ec7b8ad53735ffd6d937d5d3321fbdd9bc62475535caa0997c2997e7ebdf66b33769e8b62394dcfeb845255754a7fb71f274f2d6f3ffd9a8956ea365d8cab5bf70f55a64c99363ef2f6d31fe54f2b746a9b9437d13e890b82f293fd876a034a996f1267e5e33cbacaa9bd3a6f187b13ea674913ea99987e658ffa4eeb069d81f82d876ec99f6de35db501f13b973743f6f4ed9cf5b4c34de73af4de9a30e4095dce1f27ef7c9a9e5a2acae9e4a3f3b6ccccd19789e9d5d97f3a883a3bfce977efa44ffbba66441c91f5963eeaacd5c617300909385c49689cb5a00d37a225a140b2d6827e37e8750dd7fa25d2c75c5d73be52cb15c8629beb8f9c578743e2b6458fbdc3bbe96f665d56904ab47f69d6a36f466392e5955fbe59cfca69faad366b8b5b93fdb95ff96e4df6abcae3a6efaee6ed0eadfce9bf09d2bfbed2f587fa7edc2ae913fd7297fdc4877e497591c219cc9d57bed912ca2ba9be57dc66f4ca92d3f4d6f658979c4efef2ddaaad797587f5f9009318afbac37ae53bfde3e49bbd6a6bfbe96fd76afbd1b46fdf61def4a9edc7c32d6ed762719bcfd7a9ed66e5cf3e94da2528e80bf0d4421d5c5de59df7e6a3f93c1fc0cf27970a93f4f50445d0b554b8a4effc88025992f359d44dfa055f5795504679e2070ff429353c54b864f3ce77848ca0cd24bf5498e43cc70b464481bebec348b4b954def9542fbc7327ea5ae3a8e10a21d840085bc20405f140773cbb05391eb400074e6051049e284ffce0599f52c3a31ee509e6a17cca0278d6e13665013c4eb8a8c0ba13231ac7f97e79e7d09d705101caa174b2d338ce29e9848b0a405fe9c41bc73994397a3aad4ffda26b58c112b290c10a3bd88214fc9d874e9af298a828a30835a8c118608090061ee5519f39ef5cb30a785010cf52e1d200def956617635b85481cc1c93a864397fce3df97e5d7827df8494734a2a8172424fd23f18f34f429f2da793774d449f30c54399253e9f4f3e89e98a874a1410e5f4cfa793b3896f25fa842aff7c9ee01d944a54cc3ff9458b117840830cd782359ec7eba9054ff88bb1b76571a2fe4454a64c992b78aa2c4138b2f003158421c8f9fe7499329f25a8871439b082654900b0f8c04b1010132ae6b304f1800619414d1410da38359b739acd1b67673426415de9a463d273801558b874e3fcb9bee3929eb8a8f1cff5bd06bd7380155876b8b1bc02e00965d278460697f275c3ae3fdd88243fea93376e27a0e6936cc413cb63b9e53b4c6d2a70f2a40c0fe5524c3c949452b925557126cb1f75f6e9af4664a1bcda9ea840cbf04cd1c14349282897122345798c8da3eb52a848ad47a9358e5272d438ffc4991ebb165c117358f3db1d2130b46709c4ccf9cd582e198dcb5032c8783285328c218534c4a0418519806143958dff52c6165adc1417454c9853187d455f21c386195fb66cc154788a1a62ba9c16cb5ed10699573066fc0f39ebab3d2ad557dd617157b441068c195d6ce92a4d650d35bc74c982b170501b6980e1d2c55ad92a63926819436c1a34d2eaaa8f34684ea42a3bebc9d11fa2154373cc394cd218807fd88aa1a9bfcbb9761d5aef95509ba9b7ea336a5cd0d5c715f7d92f3634082184cefbafcbdd7639dca68fa7e6487b18f2191f663ef95583f0b13c98e0e10c8d6f1a3465128d9c4e9e086abcf6d12fe6e50ed1f86641fa7ffa69a4ea8f198fde3aa4c6696ff7b141386079684dce9126ea908c999c41fa9d631b114c6a2755deee800d429507cb7b346acb27f7b5ea38349ffc4fbf9343a840737e494bbdb4c38d49ea497cdc10d19e72ed29214f5b58e55a6707a38585b4dd0d0a20d860bb9140c3be20f3afa72fc6f0eb1abbdd5d6e1c579c73eec11c3d8818455154ac7020e1c22ccbb22eccba4208cbb22c0b89a01766304dd3b4191a9a31d8603535353536378400871c180e1c3870e4183916ecc074e8d0a163c7cdcc143d301e590f0fe7a12313b2f5c8ae1c4622d0f42484296fa343abb0b00ed86e98167a5955a4e073cdab58a866ccc41efadce1248476797527fdc03a91478bc0c6cfbc9e8a106595a0b90fd20ef3c9cd0793b820c2c2c92439ffde7bfb84c8011653c2304514ae58c016ed8485ea600a2eac205306383cb145016248a1430c1d44e1be917c3069bd75284a7ae3acef6aeb988410862b9000861b90a1020a1e21feb936e63123b4a1a7a0a02017f03cf7c1257de579cead68fad37f79d655ba0fc659b7823404bc9ebef8e271bc9ebec0f2d357fae4c0d38342f4e1dbd6a60040b822280b2fc8c00634a818c430060d7020832358b982e38e12e6d9299076ec9fdf40df7f5b10fe7efbdddbcdbafe4d90fde5dfd7ac021a257be3df4d486ffc9b3d19557300115cfa6167880cfcf0c3b34f207ed054a7cf68021a5308e2a20b4ee0611fa98ec9ca972c7879c1174120821478d85d754c56d4a00d7130e30927b4a8010f3b497528100514b6a092852b10c10d3c58344c9311f4bce3809036b33caec55c814457df3408cad501e043813c9f3c72b41f1301af0378b6619d9dc6e19c2b005ae3430c31c36367083d396088195e324ba60d2ef1a83cb4d3d5a68fd56c40fc22d7ac47e43a71082ebd40d317f98c573d99157297f5683d3f60bec36d13aaaeaf7959901939ddcf388d0301049374f80462e4b3871c3e71be71f8dc8cd0d1c3e7fb76dd2078f884dfa51d3eb1cfc1a776c329101b6f399308f1ed394c02820aad7de608f98149ec2d81e81e9b09f4073b8fed04cb03fb0dfb0ef61cb68dc238ececce75c8a9839ca31c726a38e40db954f407bbcdd684fe605f31d8ac190a849fdd66abd2608010b0f8e20337fc608c2f14109486296cc1c50cb8a0c1c3bee3801a9f716c66d3afd9a478769a1c2e75e533ae59e533ceb772beaf7aed427f7005620e97dcb3ff0004979cb689b6e512aaaa23b041a50a6b18c31734cee06158d0022a6548118517bd5d6ccb8549d818b47519308249395572c280e20b5d9ce185a0198841dbf841185208e2410bbe70d133c4608b2fa6d022a60c34502f5b4421a80d1e4021484a0598c4955f9baaabe49220ee7f9c7ce543dc5739486d9c96db85497b6252068cd893938dc2252a4d6cd04e613ded969d27d0c0862ac658d1c6186a30c1e0054d800286a02f58b654600a35ac51032cb48003372c600a34d2a0a58a2ba4618c4bd9678e3d55726a39bee5ccf153c9e89e5a477978e67e29e9cf45e3d9a9ed8249ec337b0542bd7e0e3d5972f0486dab3cb4c3ad7d4fadf378a071e3cb73f6ed73bd3ce7c0ccbe5c9cdc2dd5153466af0097e676804b534f497069e618c1a57dde304698abfccc79e61c2e9d54c754a50c53f4408b2e4128431778d8d78bea606400830d66a8a20d59a481877dbfa88e89065c10c31854b214210e4ee0615f30aa73a40638384309557810053178d87bc3c2413c98471a9c3b87be8fb9df533963f7aeebba75ee63b170691d5045d0eb498b0c7e1ad1a8c6b7ab36b70c81a1ed634cea25c3eed89fa6b11bb4a9618c04353b225c97d381ba52a344e71448bb7637c70dd31e9e53db139127ca13ce13e5098d47b58759738039f3cf3345c0f39581e646ca436dcad39bee18da02a6380f940f8bbecc6ab8d4c7d43140f887d18f19801e4db467bfa15aa24a5aaa5c5d531b05b2aebe1a043be7dc396fce577970be59107ee7da3a3714c7f90f3afc78e77314801eefae561b6d1dd21be93075f897256b121f3aa9758c689ce718e9227d21fdf3cb08e7da3b396f7c7f19e23f7ddef9c5ba1c5a69a33f3425757707b179f7d8f3b3fc7192c90a1871456498834bf9f2820b183f12711983498ae4521e8d4623f8ba30a697370d4dd3b4896951beb725fb1445e9494a95bf366e19110d4277da3a5ae338776e53e7da73940c60655d57b50ba18b9bba88b5d1a3f7c238e87ef03ede2fbc48c157c5667d4b6de9ee8642bc32e969f76be798b923f38c12cc1e9d730f6ab5458cda342daaa62d04d3fd1ac20c30c97544654440e71c84efb1fb766edabcea53ee82e45a0b10ba2efdcf3d312e4667c324e78a95f19447f71e840f468dca4e8bed8dc97ef3b2d1bd698c46eebd6ce695490f734e9d6ba7cd2e8eb4381aadb6f23b43fbe2229c413f8aa228bd61c62b93f45dec76fc988b58548883dded65a76b30fb63d7dccc6edabceeb29ccbd86b2c9df336ddf37bedda595b555537f24aa1bb9f9cee3dcacb53ceeede393bf75cdfc3d42993babbdde6b6e9de511445c9697240fbd66dfb0bf3dc09d1873e9d9be900932c6775ec6e0b81a1f945653dd81b455fd76c2ee876ffda9449d6d6eddd0bc40f2136b7da747311db3426e9b4d9e7ce01b1aa6a907ded6b292941181384305d90d1a2bd9ebcb8f25da8311d7433625e9924449ffd99308c498b71e9f9ea66d0c94f208c77dafc7a31e5f5e4c5977f3d79c1e5371b429529e362e3ecefb471f294bf6dba7f7eb918e5343d04e287fe4caf338e7ad2b9a7860bf3cf2fcd7a78f85541d7e3b4b40e6f715c5a2703d16921b90877f47898b26f4fdcaf1543f38d8b1eae2a7bf8fad559cff6e8e1bc854b95977a6ce5975ed5b50f53c7d169d9e86e735a766590f5e8d179e55555fa81ea683c84d81911b2f21e9bd63a6e8bf3f2cf293947cf69794e8bd332958c13263d6fc2a1825120aab38ad343ab307af8b4e11ebc05623a38ff20077f1c864bec7108da18ff72f0c94b78163319ccf7f0c969c0ac4707d2f7f06abb34ab7c37e7d52664ddf9ba7327a3c32a876deef788d207937ae8521d52fdd1c3613d980b6f61d2f36ae32ea2a0590e7d2a99299bf5900a219cd198f474701da650e1d295d6714d443264a69299a49f4a66e6585bc837e4eb704970f496af6bbcdfc3afbdf1cd7a7878063608e8cf37a0409c3fe780962cf719379fdad3a8ea508ab34ee3d6d64ae2613deaf0eb5b8e5f77d1f6d8426068d19f5b1be6024d3f7a05af886d2624fafaacb6b0b668d132790b7be12f0c86c3e032d80c3efdebf24618c1a4cb670ba8c569d112260b8974701d7829e7304e5d784b0e8e49965b0e371f1d7cc97e0f37824bcf89d8f2e543573049c31c967f571ae7b95e598286c347aec3b19f4e8b16a7854bd075367fee4e5eb8a4c39fbb2f5cbafcb9eb824b5997914f57c6877c3a2eff5c18ffa048735a9c16b785dbd2969c4930e73fa27732874fde12dd491f27a32482493a486592e53d24d0bea3224358682d864b3af8f356a375dc6bdc7129fa7337a575184b0fb7e4947fbe6d2ea8719e5f59080b6daa972b427c8c60d273a07d2298f41c4a1f77c595d6612c8df3dc957f7e85305df7cfb98bc95c7c30e971bbd517ba19e2de72f7969c2978a8c3d66398f4dcb76683719e96a7e2c65df8c46160691dded2382f0739e3f7602c3bb6b9bfc36116847a28bb8d93b67ee3371c87f31605620697f49f33182eddf8734e43a3e653f3397a1b57b571cd7a70f80ef3d89c6c1bc4a40733ded23a19689ce72ff216276f64134c7a3e721d3e95cc108a08f97a674442ce5bb894f973ee82b92810fde72f2312fa7172625ee9efd8f4756ca31c5b16771c9b32e9f21b9b32c9665bb235dbc4463f79cb3fa7d9965019a87c46cea849302205f3cf87681d97ca38ce43d98669af92d34951ce9cf57517e6860710c6a53e266f79e8178d8bdcb543bf2ee5e7285748089afa0eabd6adf96ecbe5a6659076cd35d994f7e6b870890a63b7a03a5ae3401f85c1cff010fadc363c7475fa14e5a219ad75721a076a399af6f0a2fea236c724265ae7468d63aead63e3978e6fb7fcc6b68ad36eb3a9e2cc996fafd93e0ca599a1f1c95a46ae8d68ae991fae00a1272cea458b7ed9f2d0ad992d8749945b5696add24a5cd7b555c67cbbe6174559cf89f1528633c3a5e1c488bc74398542ab69b2c9fe56d92a4c820e2939f7352084f9761abf62bc309a6dc36012f49cd6d953e340f7d128e73598f55072b94041c39c8a3e790a6fc1254d425f355a67aff094d6a971e86c85afe02cb844f98c4fcf5c64f986e192e6340e7d7295877c65329687d2b196875eb319d138d0a9bdd23a1be692572c99c92b2239b3571efaa5240de3da78caa3a84165cc3f2b4ff95c320f5d6bcd35a7d9c83ce59af5686c3c25e24c08bfea8f9633e767121f7ff3b33fe34ddcb7ff88be69dc886f56443b8d6cb23f23e7bae69a05d1e40e4ca2dc67a5124c829e0493b22ca4038df27d82768530f7d0570c97a2c355e361e8d2e5764fdbddf71826517e69cf40e7285ca23257cdbcb7961d1071466d183513723d6d19f373b93c74e7cb258d30c69cb834f54b972a5eb834d7ca86691d261a073a9cf1f2a98dac7049e4d0b36dc9fedc300f7dab70491f3a13ad33529c76e8daadad593ae6a11b09f3d03b506d713382b7bc02e0499b32ce018c6b316d8e62573e8402e1bf3c0997f42f6f824bed970f519d51e35c7eb9ea280aa42afc95f3974fddc25f6dfce51a7dea98bfd8d86dcbe9758dd7930fccf86bb3b8e963e3d73bebd9a6ebf2eec4a4dd66ceafbfac27ca1ce878a14218ba19023fbafb28e793a7a41b73614cba5ca9199b930f4e3f81f8cb2f21ae12fbe543b817f5e273f4a3d6718ab38ec989454a4e1b4d5b4e1e3ffa4b0c6daa97bf7e8760d2b5baba5175a2e2ac2b25a313c125289d0f41f9e5365cf271499f0d826000e1cb03c1cbeb015e7be0e55521e0637698e72262ccf8ca5d1728d8f84a75503e676edaddbff7b21eca679cbde5f91c4d9fa4ded238dc73dad23a0ba671d819ca199f9ca328a7937ef61698f550ce51b41018da82f9b960a8ef2c4e5a9c0bc66960ba927344c9a9b55b30eef95c30d0d9af0da34014c8cf8ea17cee16be88ca1d182e51cebe6970c939fb865120442a779593333289929149aec3402cae2d236763f7f48f6ecc0ec3b785b8682326d9308937d398c4d39fddb90e43ce5fba4e687af2c196b7dc2d1df3d575b905b31e8bf5cb573e75fcaa97af7ccefceae92b9fd5afafea00d13895afafc3ac27e781e8cc02e2e7e82fc6acf54b3b520e8402e1afbc034a70a9bdf204a84e6c9ccab531464bf8ca55fd2b9f1a85af748daf34cc572ae6ab1d9854f96e394cba248949959bc19804fdf9247de5407495c9197f02f195c7d651c5b9fc724cce78b925a7a67df9ca39fa19bff2ce84f85b965fbe96656d6e8b3eaab7cf099773a768bcd4b739fdc17e69d6ad84a6a730ba78a7401408157e7b8b9a127684c4e84d49cefbb4638d29e5d119baf39924e7a3577ec52d3289bdda34061ae5fa5c6df1b575220f7b8c4534d95f4a2ac979287d9c3fb9322eb320b6ce73d1043194d1810eb6f0f8f0465c37d01fc4548170c47483602816a61bc46219e6b8b4fdeabb61b18bb61e3dc32cd67410a2c347f9a3c387b4ffd931efffb3613e5e5973083e11a60ae4bdfa7559de9555c9b999f3b831e03523f23c664218f051fe30e0a35fdad5ebb85d88097f13d813a96a6115a0df1081fe5ca45c6a7d0701d853ab758ab322a0eff3b8891eca2844b46fa2768770e530e987766a5301e5d1a12bd043caf59f13130fe5bc519272b83939a3360e0cfae79c6aa73629261e6d9c76b7cdf82d7decf0ea4c5287cc555cd1b58b1353fe318c4c310f2ba7c3384a55d2740ebdb3229cb8e77cb3212908ed3bac8d4654a58dfa0917d0f973e8d4262f0a7b3b4246d09c7bbb6c88935233304497f5b03fcd66c4d83b26bd30de7b90ba288aa21e7cef3124b364f8f3286712cc6d2142c7b1899804d3337670c60e9460632e3d802684dd491e23dddd69f3f0ea55fdc1d07967fcb75d2fa4d3e619320637aa521b3028143d744a4ed14f2dc8fb27496d58b2d1b1cd3be78cc801aa28e30bcee6bd01baa0efee27539ed24273bed32e6e51d398d4539c2bd13a943b39932c99771eb535344c9bf24f8d6fe74c02cd43491ed338eded046d5bc7fce42911d3968cab42c694b8645c5012a012ffdc25193db579e746efc468ce5dd43a9272a0ad4fd2f7120765921111029cb18333def9cd1076a964f43e1adc2e03211c423fba10fd284345d0e2cfa5f2d1db4d4f6d333e453dd33bb95198de2e18deac3cfb6ebb3f97bc21e23cba10e7519abeb7e9e6be367dfbb03c98de6e15a0432e5f70f9e2cd787cae693372ee175c568d99992ebee032f305972ebee0b26a7c91f3f10bb8f0b9e5d5a6af515b15bde12bc379e92e7c8a617c17512e179e99531e27171adf79f98cba451369bc6308888feb3472e67c1479d42acda3ace44c82cd389304fb1927436e6d2130349d995c6bddfd8cf4b9e48c87e4ccc1a4db2f368899194a24a7e9923ebb72bf581e6015e3c3acb871638c6ffd51efbd27ddf6a3652cbf1aa3d96a1c6e21bf2e87dbe5345b8d535be5148d430881dc47a7284ab34c711e9ae821efaca79271d36b9bdac3ca2f87c1ad66732b44535dda5f97e5d7e59aba8879ebf0609cf5e8512ac5e50b11d36c5123a793aff1b7ad0eafa9893535339eb341dcf019572ecdf80d7feec30671431671434ed3dff0996d6626c6198fde594fd4e137361d729abe66c67dd820f4677cb39e999a999ce8435be1529c8935353e688c53888f51cef9dc880d8de63ec49ae8adb39343ce88434e6de46f824f8bcba2b1f015fbafaf3c74cd916d85493087af3f1cfe7c5afe5e1644757a380f9ff1c6a7f63be49cf11a572eddf0a9e9f490461aa79d878c377287d4918e5cb1ca48cb919c5ac61ca99c5ac929c43f19a3dfd89449f3068df698d3b88d9c23cca3d76c2130b41909f4be8646ce1fb22d0486a64920fe1a9f39a2cc6aa4cf8cacf1ca67bcc22181785a327b8f499f19af2152b337309fc19e0fcbc37b9488dad6d7b16d5f2b0b668e650e758cd4f44c9f3023dd7d4d1f8e71a063d1e661f3d0209943c75c14c24639a36fcb870dcac1352fb8f4d227468c18117c218f215944dc6084220f6da2d8132fe5d2be07e3f6de2b6533efbd674108c940c8068463205c03423520942b26e473c5c090d43cb39cc6e7e522d7a056e35926a7fb0cfb4cf30c27838c9345c571ae965589b61018da2581faadca1de5a2e85349cb35e4eaa2908be45c2a99f409b9e59445c9cc43d227c60c5210427f1be4f1b0b8cd24361f1d429b871146af3c6e4a6cde077a553945b9b74e8dd3c869f3d0b58dc6b38dca34df61974da0c667dc653dd06b369a0d631ce83b9d6d359b374e3bcda6354ec5381167dd726ada606ff966412ab72cefc12eabe2c124f7d6b1619cf596d4dbc4981e3a53c69a185c7e00afa732aa88791dafa732bcfcd5d8c3e2aee82b6c65dfc92a53e45261e86eba07e2c91248cea512647f3d4639a357216fcb439b328e25b14d1dc3de926068515e8e09f1a1dcc9e9955744a289a50fe5ef3b2be23d15dd48a3dc5da37fefb9eb6d137b9bf3dd2825d82b13c22cc1ca5f7a31e6e4ad69b77f97824e55a12da7711aca22725aa7922eeb81ef51e112f576bab39ee870a328dfac875aea51d9de0db9284c5927e42f24ddf5b82777d899e402adbd5bc28d627978efb98b4353082d95bf4417e5cace3977c5873187f157b1a173a8d055708ba377eddd28d7909393999d333be72b71f3c1fcc9bb8d1b1d46c7440b9dd35c24273fe69a9cbc543e249d931c1df3e98860379857fe3ca775dc72720e718ea950c932212177d2c7393b161239d1e5568b4255d65385f1577cf0b14d3f3ab7cfec287f9bbbb6ca77fa723ca02392cdf88cf4cc39e7e33c3ae5137b6ab3ac1d938df915310af3c6ae86549c73ceb9106b6b6c7797abadfc25621fbf71871c2e51ee5755551510fb8862555dd78daf775c1d7db9a8ad2872eb6a2b469e10968be65b973e978b7a9bda9b9c3cd19cc6f2133ab5f954dd391b443bd557b67550d1a7c877e56c2b0f9d57f68e2881f8aff52992edb6ddee0f70abc9f232d23a3ab25c3baeb79cfb97bf6ddec84a8a9c72e8219ff19aee9cadaa79e3d0675ba93cdbcd87e581b2a1d15efbec316f240f2c13d2eeb3377e654560df6ea47530b9b247943cfac6ca7aa8eef2d725ba2e51952304fa8e2d731d1be53bbddca31ac721e7a8ba6123e7a846ce118d9c919a0c55f1b2fcaaae28f2cb8a7e31e603f41f7e88dae59f6a196f2feab17b3844247d581eaa09c437d12987bed33a461ac7f968e4c30651397cef451ef2f9c353bee3125197fb88aacb8d885ce422919c40ef2b0fc9f9c3c36cab7cd820aeca2da75c5dd643b595dfaaaa2a1f9607b863736cc1e5b1a7712c8c32829ae0e59b708509639aa005a382a514f44d885c7dadec152e595ef1a8b6cca90db637d13a1c4433735d1533ebc55c55145f1846cde79a1581c990c4a83cf5de9333b24f200a887a8fa54fe5d19fcf24d8d5d883cf29cab1e71476e527746bf3617ff26f9bfd6b3936658358b72656e527a48a981815cb61e514252746e5a1c790534ec909444d8aa276ab3c45418a72b6a86ea2711a0291f2956faba86ee7a0d6e929364e2367fcf7fc3dca31668c0a46e52d2d134223a2b1badb6dfaddb0095192c633aa5ddb44f2465fa19c923635b29fd36061fc7bd5f3afb6f7f861539edae9d026726cd3fcda2c5fe8d956bd9dd244ebf494d15ec12f72de535aa7afac9cf2ced767b68d2cb32c663eb1bf18c31ea4be7a6ef94ade4afa3ca77c7729af2ec6b2e71925b1e7d936ddafbc896e399c5ce59df79576b3af500e29ea330f599647a794cccff899736d5326652eda1c93323981a8a73c2415c328bf2466590eb31e8bca570fbef7dc474a62512c0f50bae7b0bc02c044b338e090042fefaf2724b020095c3ee7f59484277e09519440e69dab8f483d9fee9be58c8f88f52d5f2604fa736d7d7d6da736e7c1a4e763c364a04d1210ada391a273545447631c75e7da1ba65f1c13b03cf633ce56d47804bc9e94b0e59510940430af842a7fad98bf44d71c65956b0a756ec02df3dd32d7d6d1447e758c3152568c0da3257dda294b9b4033ceae591194cff036574c0e534924730cf54f96d3ed36b5df6772f264e14cc1ce1df3f379b5f9447ff2bccdfe75dd6abd9aabc64f20fee99ffbbdaebd0a88bfd7219473c5fc73e8eb10b6f4e1091d841e7d37d839ada3160428e82be74ea0862e1ae20b7da76c10ec3386c0d080f87902f15c315f79b6cdfdcc4399901967e9c31e3d9ba9187a0d741a0cca19bfa03b5863491af6192beba9acfcc5edbd718499bf8d1d6ecfb5ad729bed86671bcc6cdcb9da48cf302992a1a57cba8f3252d2873df318c50631d707b37c49b08fec952f507f943eecd1afdd4ace9d40ad63e3d1371b92adb3c76d02f5f3ca1bca2bcf691c17fd254932dd5740fdeb13a83ff3cbe752f9ca612664dd27b3fc654560bf9e93b9cba26372babf01d41ffd921bc506b1d12d59b9baaca712f370d3079f9a2678e6d07bf7d490eba19436db49e39a2890a183d6620a1c6a187954081d131c780107438002860f82d068c3911164c56923cd46831a24830c2b141956b0e0ea2e62f8913692c2d39c9c4775cfb9cd8649ceb9768435de41c1e3dc07a9359b2e3e4002b3600043c8420b527061a30a1750e1085b6a8e70042dde7b8f7aef0c1888410a3f18830c7640e58c23443902155668186a904515a47041841f64c10c32b230438619a880a20530ccc00964a4a106169e370532b888c850820c02f07aea12c5df783d1d410d48f067668dbb72c6e83abc4f8cda68e5f4f11c5d29fa6c661999c4fc7c6a91925517cd5f9fb1df27a7f6cde35779f8355704e7eab6aa8be6d33c85d68e39e7f60b39230d3a08e5e683495b605c54f064929c8710c208237c100c1d66281967d4a80125baf8f4cb090a5c68000518dc20083c500a0fc708c3c3ebe1186c3c9cc203217427c938ed40889316548ed7d3e9059fe3f524c61b2831dab537f7976a897d7677f74f7555d752bb7e9f25fcad41b8f761b92dd907627ecd88689932cf0aa499b4c52e9a8c0c78966aeaed1540419360032bac180216c2c0814c14c6b8e2c4838f1e2957651668ebdafa88870d93f64121030d70d006315078c1f3befc736de4ade3789ed0f4b511145eddf093f42d461bbedd66d43aa61d8c210d4408030fc6b041059e4db381a2c5d7931867f8a979f3805730042060b1a50a64d290862d9e30e5095238431933647982194e3005bd8008713003175aacc08247cb780ab01496e263d25459cc9ddeb7bb2e0ca68c3066a8d1d51831dff2547d8951d346a31fd85dd3da5fcb20fccffd8d10e6dbbd4b0bb678372400efc230c98a42594130ebd9b168d066f5c5ad2031a7df100d4239087111f22214c6b387aec8da1082128222e482d09567cfc864676458c8bc90912163e3d93333b21f6443c8c6c896907d79f66c4b2645464546832c07d916cf9e51c1c2809d016b4306259bf2ec981a1812302760676058c0c43c3bd605bb01a605f6036c08d8e9d9312c171c302998141815d815cf7eb57155e1dac21586eb0c179967bfc05c5e5c45b8907039e132e3d9af2e2e175c555c37b8b4a86291c1528305874bca45658d255851b0aa606d410d2f39501d571c76e7c2bd28825b5d9eddcac28262052910c632aa4273c15b50600c459bfe7c551e8aae0d2d8afaabf2d597c661afbe844e1d63e824c6b5e1d860b7c6b3579910ff275d9830a3962c6f9e43d77f3208ffe9a7cf6a2b3314481b5cd296d5971dab06cd0ae2d20c9d7e8d597d792e4d4c4c19afc6172e69115427b446680d2484d67042688d33426ba41186ab427544534ce16e30851653fc608a677677450daa2302820808701001c1491101c149210282b3c246474175446788cee82a88cee82d88cee83088ce18f3ecfda5b9501d11191199f64244a68b2022d3481091e9329ebdb768285447b342b3a25da059d1556856f40d342b5acbb3f714f682ea6846d08c4006cd086ad08c0007cd081de5d9590c8fa13ada16b42df012b42d7014b42d7015b42d709867e713d3407566a244e11c44612ea2b017519ed9f98a36a8ce4c962c0c250b4391855d9085af903943756698c0042c30c10b4c200313d830e307aa33438619320c61860c63cc906109336478f6ddb252a84ee8143a2d15a1d3d22074da1c844e5b3cfb5241a23ad59733b461a1545f76cab32bd1a33a5690e2b0472768676081dd019beab830ea2ecc28015a0fcf38cf7e5558ce0f5c7aee354ce3b0c7a869a391158549ec5f54a03fd8e7015e1d08d6b1a6f4a04158509407766d6905e90f76568146b93062a858d887c0d0dc187f555ac75d98d6b1821a87ddb78cb46858e6bb12a3a68d461ec68579f6cb074f219e75fa0e42fc9b272936ce932d352ca48576d3c43de53fa2a724f469053d3b6cb27f43649ff4697f2ea315c4a528d6165c52cc8de112b7e314fc96c1a4759a2a900d90832bde65639ef7597954f845716dfcba6383759acb98e97eaff8e6d23a5917c661776d4439fb148592b3bd3cf38c5ffacbf3b3f2d6f825aec5ecc62fede297f8258689a38e5f9cb390f82db353fc12459b1be6cbb3efe035634fa425f9efe817d32e6e9fdeddb15b49adca43bb86c0d0fc5d96514bf940d9097642734c524a0b36c418d19ccf68c69fc2e812d5c753e252ce42a449b0752eba73d1514e5dcf5beaf200dd6d6fca3ad9329aa86521ac3184345e4f5cc0fc8c5c92f097487d50ae2b056deae95d74c0107e599bf9088899334936ef78bcf3cbda42dbf32ddb5cbc366c8bbec3d7ab944955e53ea6333d45dd40b95f7a8c7df771b13cfbda405b129376ec154d7dea182a64e5ca5ec1049734670752202277fe72e0f0e846b40e0e9943aae26412ca9703f34b0fa0699185962b7fbd97f5600eb1e70e73e7576f11d877db64e25b4ee819944972dee7c7f96c1c393615e47027269e1c8e633b410e9f91ed30eba1711acf9123874b31f1e490526a9c463a6fcf7ca767b42d4b0e17e5f0b74d233e93bd65b1f11a1b09050e974243838386c6a5e0701b975293c3a5d8d43813ad9343e6340e7b4d8c341a0e7985b67d98f55c1486857ce6643d99675ba8081ae6cf834089399314f376876192ca7adad02a67bf62eb2c8f93ddbd2d956da77fa89f126312894bd3c7046289fb1997bc9f3ac6d9310d4aa0fd9ef6e72ddddb148a1c2e05470e1c349ec3a1b07129353635355aeb4071c3a5d8dcb0b1f11cae3e6a1d28462ee5c62887dfc091838be7391c87e7f01baeee7a0223e8a78f57d5f9c32b11c8e4d8706cb1719cdf00e29ddb6c01a723a8242b34e6b920279d538866662408021273140030381c120bc6233299b2ab3e14800c9fb05058a289d328c96114c58831c620640000cc800c083098100484937ee9e8e8e9c503408dd52e8f6e846cf66189f7bdfd8a5befa000a137d6cb1686e1b08b5b9e3746194ef455bff91b43b7cd90820a46a5733795e4241e3dc60813226d31132d96a0f60e54914c0d84d10b1b1db337b7609a89562128edf8bc8e79edd41173f9719d2f71995e68e5a0e78888e3e8a02fe44056a49f2be8588eb1e6d821f743b8956ffd33b2aff2ade9c4664cc263c9d076c6ca812698c631e96ce3f3065c2eb19f2976735b510de9ed49e10ba0500347cfdfe0fbe5e0033c0f5154523f65e47fd2563a7235e110f59706ae8d89f6b96ab19806778645407f02df4f74cdfd991089278e4947cce41619366d355c4f2cc68029ce1922e842a85a520757f61a6cabda2f2039f9dffc36dcf7d5273dffe4c055dc14d10014884004c156edbd95a5832221f2b9afeea5c14a14474f2315abb068fd567afc92fcf08b0c0302d01ae863eb2b18d333ac0d460d607251e986c9b2ef5f140144e88bc1852b6dcda9bb76bdde729db826bc227f02a9cea7fee8273b0900deecb86c703eff38d78dcdcd97a1a2a4210bd94e61916c758e5324a712172ba58f038926b740dc3b2a17ebd60ef62d73f2fc1b651e363a973bad2692c814e9b21c31b6174f1a2a6735fdafb2fa3fa8ec51b6c7542c913046f4d2ceaf10fb4344c9d699189e1fc310878dd3996c5ff93744a2fceccb4e3bd8ba1952a6690c17e221cff32e0e05aaa1fe23f2adb0f55d1168ea02870e64cb0c20fd59f29b437f84401605012b2514b333ed4de1064126c11e145ab3ad50bab7e4c10869a4f9d9ca795b07228910ff89937c995f4b3dfe41ce9dbea957b0054581d169a178193793f90dcd2f51a4daba5280b83f8505dfc95ecf8360f502b24c47da91c8a293da49651428cdd589717b93df525b9ab4ca80391372a6c3f6d79d5b95daf14a94194d24b9d754362a866e1e55aff0925c5bfc5db0a592932b5634579eb86baad09b7f2fbab9771c3a22bf540f08db1d17d60983717135c4a05644ec7c8cbc483b15b5358b92b810d2ae0addaa6107e1f634fdfdda9e483cc25af90aa95eb048cc83b573290ff341e34858a00f2b6896caff98a423dbca5503ad9cfada4af4e1d9afdf8865195988003f182f96f96a2f03be0cb1cdfa3bf28133d3bca0a6bcaeccbf17dac8d1b641e50f589d5e9d58a50ff6082f2dd13796d4431366ab1d17fa41b0bf17496a8589ec4036bf9a5a70d53f4ea2da84467de4ecdf95d7d25dd6b258f19fc1e0d829c6898e707e1414a78c216bb4b1a06790a38b608302e0dcef96cda63668411ac54ff204385a94070b0f75c1d4254c308986f2ce2b6d24c35cc2ce2bc390e7517e1d9519df6a48b5f1bfa8b5249326be72ea35033a036a54657f09a0ca3b2bcae6399b21d56c691da7a8d18271fb4fad93d3860a85ec155b6bcaf4e32e08a3d3b037ab3bb1f83dffbd9115312a6ab56e272f4dbeeb8a6f527e85e97c2c1e3cc5cd802b0d372e5854335b17105c497eb343ff46915bc0835d4ad1ec72eee69fd476dba20f20ef84b15cb8893bb358ec4e93919c747490c07f75dff056e091c8f03dc4679c9c621855857d9f59e375aa22ca51b18410a39da0b35325848ca552fc119ddd22cef2876918a79b8d3578d25c552da135005a34e5ed25166b34197531636360464a7973f5b023986a609739154525ce650e3b5ebc80bfa014416b879bd40d5249574aa9bde9c3cb6945b5a321b1c3b72fca49fe4787f1b9c2dce2e9695e5ad0661a9692911803d37f0cf505782fdc4c96c1fbbe5efa32bcf01aa8204e0d8b6a9e00b95c583c949176e0e38d668b6a37702a5e3ae8d072413d8d4d89bc3eec6da8745153533356d4f54e2b7c4883b7f0c861bdaf295ce93e282e95a4e67e6e572cfa8819fc5e69a446852f48cfc157169e496a2c6061fc22b3b6fd9183c26dd9188a36c962f1c3dc121c969fd77b17b98c152b09d37d7a5393e5867b105eb018b939b5c8d44b0955a7774b4d69a6704c42566b526e6521eaefc0be43c7ca8607d522702ecaf235aebb1e82bf68d0d087d93ac72163addfeef7d4aa67c9e23c4780a315f71e25bc3baf846fdcd0f4b5e0b02155300aa03e1d1adde5f932ee4e9bb4019939855387311d7173cec1c4022c769aa80927eac98b644226bece51eeeccbbd508d083d36c4e8456820b0c03b2954c3e77c04d21c154542dcd894268a44b2a02ac82f3d61a14399ffaaaa5d55a0f660b2ece50453fb15a38daf9457a62444a1077909709d7b0ea036824418378ea580cf3bd8df491255b0869013a40a99900d0b118ed058bf17d0835e73ee519ede0aeff1654dc29c66ec70c949749c48af3ca8f9f5b0003a83dcc8bff5d63665ee97ca9041a5906be91663ba5bc36a6480614c0860242b060ec6c4abc20f210dea742323ab6db7e120ce8245d4d0c8a569a7dad696f0ca94d5b443590882784b856538e748f9db4cb31b4e825320252c55f7716f074b176be8abd328fa4c14e615a28354344d127a3bd4d820baa3e470118f7ae8bbae3b0af62c3c1c087648958338fb2e6b2e11cc7accd7e722546b072a9d0899d2111b82f8eea52db068062bead0d90b9338069d1917e111ea68eb97860b21dd1fb37ef104db5731b25b12bbbc92e976bec23e01839e74ade1b535060ed0121b9ddb6320b6aae54dbe516e9fb9d544c06f86572e13eb3fcac0c6733c84e5ce7063f5d52c3256bdd78781d3a03f523e064e0983155fa0017c9a8f1cf29eb30e1b71158d37fc2b954ea344ff27e271fafc1b03db63b7f0fdfa261bba5edfb63d29ec141993d0998e69cc24f637aae145c69e7583470a8346c0e258d84ef866c961726f97d0850561d8cb681a9f03e605a0c344b8a5cfba00a24cdb679690c49cafbd513afb7ac727de17eb7c9174c72e86be3ec40829fd79fa7f67cf595316faab15ef3f03262f5041bacc337013054312eff914e27187678196dc91e42ef418e37c1cc1698f2f24f96927d6c8f6ef1632153f13cf9b30665cbc105fee34acc4dd757b19c860bf4079e35fb51409573f31cf85348711d65936cac4ac028e5019de8e7b6aa1e2c3d46ced39d378f7549393bf60b11617a4a65157a8a024955fcbba91c4e40a2cfbfc06ef99da4820b1ea5465ff5c191596079af173a58fb3c73cb8773d271e9475327fd0657fb156f71c0689656df1c8dd135c74916fd18b89789b63f26dedb8d9e4aaaf869d01d57ef780200715b5760ea8daa898742c34a5dfd26fc7d5348eb22dd2f49ad4f9742dea876da9932b48bc54e91dea8f0a95b441148fbf081485ac3909ef9f72fc9800a9584764bc5323edd700046e87bba9cc995b0c5859a3f51294d34ceada42091f0fe9442d6a34e21da9623af54751d7b326af1c3fa6bd1c1928d85e9aef3d83ded0f5ac92b5c4d35c2917e0570c6e562bdc71a6faa2c6a8ae2975260c7b4f7e800252829a68c769870f2dc8df14083fe766fcb1fe2ef6d47524aa73c6ad5ed5b1170e6b9ce0e5416fbf434131bd7bb0172a523a3ce9e621b84d0dadac439a949650e1312ddee7853bb25125a961ba8fd6d2c36182746b25f6b6caff2bd7c523d1cd75a542282d3f50ec14f0f2a64cab9056289bca8957c106d2d2a2ec7e6d98f0661d3e7ac1d4027c11756e633c05ab04ae34fc88c183af237049bd45375be5ec13d4eafcfc7dc8603409856c6fec21c81f4a7c09c84c7ce7150097a51a5e5479cad275d096fa8a72393b98d283930be71c6f7d6869488c76397273f81f7eadd0ec46870002cd7b62f7e164f9fd220e8ca170ee5c3925bd3f22a48f62f977b5263581852c08fedeae4d26acf56c8c6ad45492c1f9d25ed1dc64aab486709e9017ba7b0a43718543a9702ed1aa686a031c6be2bd1d50570c979a52dc83a94033f82bd416869f998670316ae52d298a5af9aa68465c6b27f61422b4fa2434a0ebc5bf2e77c85ee6ecd9b012bf2db124d55f4bfe88f02fbde08b2c547872799c29adf7536998a9bae094c58d755b10494c5b0a7fafe5659d5bb92cbd8b7985bec57d5046913e84b77a8831aba8ba0f81d70999870c52f035594e9604c627fa8178d99036f30c4cf3a8b0828deb0331de1933d7b4b8626e1c607400a978242410f78232c1687d812470bd3f86f561206ce4cf67661e990dc4ddfe387f4211199fe8819a1b3e05dc65b82f5a032461eb32c3cb5e3dc1ac350387103f8df4b078597fc0573305ef954deec26345f8072d1f1dbd31a061bf020c2992b21e7be5b280ddd92da359fcf92819ec30e60f0a0b219afd5f1a77af5465baaaacbcb29d6c80fc7d3e10f020effca54e057dd8b22f42b3878759f0f8d247620bc9760242be2da3cc6a649d5c28a39c39bdfa4478255eaa08dc27c618313c414a4a65f892de275e243a5ce8950de20010b9d027a0bafdeb444e257158a027b4c33e509165142c206123570ad5c83f854c366111317459b22013e509e2715d0913fe298aada8571ae5a7b0a05484415d1914dacff9b2233648765c0eb545f843b422d9b0209263a5213b018c30a25b39976c104d4249a51dc6254c42b2105714f85cfd08ad150c27d49d465da0cf243b1f4e2296cd8e5e67e03fed9d3ef13cef4732aa2389a5adfe67d42f322c35d5735325e70c9aab7f4bc0619e7bd70cc63480fcf688e19ad22d0df0f3d470be1c5a27fe41d059ded841f055c42e8683cb8ed9280d3dc9e06bd1396c9a8e3e71952dc842e3a640edec1b12bb6c4d7ba0e184737445db6ec2f21a367268602d7a1c4d7862d81c9f214863ed8fdfc7a350dcfd1813d0c226994a12bf0f7d113f325be4dee87f2550431608526aa2d15746faaf84f42dcf34d189a9c192c6d13ad29566b4680d7c07c1ed95b2143168587b79fb57cd17067f06bf42b123d36170ab71923e96c9e872bc34af7121754146284138f2b8040ece9c70b34b0da2878e9ea5d89bb84fe0269a818d55d7538fc72eae3fd4f51a1b84afd9f88ff472c5b06718e11e85518325a1bb5743d7f590f82bb8dff57cd408c99e7e8632c728ca5b2236a91156f6086dda2212b90317a63adee9e27260b284a0ab4d12da485622100d26e90f8411577529836cc27aedc7b479dba12087f769bb4c9f874353b53c80dd229af0aab551a6c0519a272575f292bd3850e1416c08e05cd03de4714cb3cda3aa360ce9bd349fc4d217629a83d5f4a61016ebf286ef627cad972dc1059f71bff26831ba17480756c01b68e31fe9ab728a284b5fc6627a58ce45e5e71d67f0b2ebc49b47edba00707568f303a2b52bdd19e6465caf944a7e5631d9d3383db472f6bd9de0bc79120b14ccf0a8f77ff5eb79939b3d17cf0691a2784fa1e3ba3b604a3aef8984f0a5d849b37bd12d647e9d08f7cd6e49fe355e7d7a6195eaee193a330140dc40faf84e2dab9cfc6b55acf8d3f63495750680f5d5e269adb337750554b4ba77d233b3c00566625d388f8f966988ce5c8150cdbd6f60f067c6214addd6c54d2aae7b9c6b43898fef0c82d3331520c728ed1162bf422a3e46a56b6af7fab7beb2f5febd70d6b1bdb0646da84be40786ee803c1f9654a677fe1d4b736ee775bea828cdeb6571d0dc9745bd5712e278242c2ea654d3aab747133e6ccdb3667039d499fc940da6ddc8c6379ed01ffc14d35dc7a509135f28d9b73f7d026b059745560f14c70cb2ba73db37f574ee8428cdf262b679f0168af80a116d4b6530f6f75d72df633f0d0c08d1c082c7966ebfe81d18d3f82a6b765d18747183ebf6685a70499b92550e59bd83e4c7786ec3136c1d98e121ae90e6f17b225b91345da3804b85a7ef22341e3a5051b7482aa73d27d4998ec58274d3d0ebee053eae9b8ff089131dba75af0e1e69b947766bc930b8085357b10ab15c9d5c381aec2dc97a266bbbb2a978892a3ef0b4fd5f84ac6e4372d6d7bdf745924fd27ea875571942028cd8012b1aa3bf14c094866e3032b4d98fcd5dcdf89cebd52210055bb626a71ce455505d6a322aa2690ceecf274057d7769db8958fad7fe4de4d0cae2bcc447ab5301c127869cd382ca621977fa06328b04b6e8ff2991e2f04b00d055b3d8fb871ba69da61f84e76fafcbd66018e1735ab44b3cff54881d4eda13c41d185662cb2e5c6901b831e7ee18792d008585d55e3a4996fd53437e69e3defb46c95a97a6a8938f8736ad651d65d27423f15c2277c4c069abe972c57dd36f35c0ed30440ddc92f767d9df199899c929a0972ee62608c75c9f93bf075e712ac0e98fec3d601f6c39417601ae7a8dae449b37753c5596c9e9cef6999291c19329087051350f5a723ca342d5636acaaacd27b1c3ce0d770ae0cb3141b2b2db86b3d7938a302e7b2e1f4d2412d665f4bc72238a1652cfc207e928bd4b30174a9452dc2b4607ecdc148f7593e5d9c566d0dd3f24e1ff992abb8839267be1282a3a711d12ba567b5c7b0003e0af2c7a85b2ada5b41449d7d6013c4aa35822a404dea0211446b1544b866051242946c981a5900dcfdd36b7109c4c5813cbab5990c822e94131f5ee60765ee6d8643c504e2f4801c5240c7fac22be288afef12ff991852c583c504b41d8935140bf951817054c6f5284c07dcf2a941637bc66baf839eca33034e747f55f950db4525220a5d54d54049fcf207b183fdb217ddcdb58345636dc84207131e6e03fa3318916421f577f69254a5617e601811a586c43d915dda548c9cb3ba9968f40bb6db87a89cf9a573605f13af6d0ee9ee086c879b9e79be3f9bf0545a8abd12b80a2b2836208a90c7616b787a046045ff439e13dd9a01e968a44db5cd9fd930cdf2f674d737c79f55ac84c6bea1086d3778426f7d1545a012de95be5bb5da5ef3b6430edcb741774a631eb42a4f225ccd03d9cfb66eb70f7543d6d28989e46b9305c60da87b40112defd8aa6b09f4fad51a973bd5ac10c65bee22b7e8c431543d0b72ece5a6a919007c2c5d8bcb04199664ac5c2c40b85eea56c8a0cb67d4e70c25d2eb01b698759ef1145137089eda019fed02d1f74f9646358c63d5fbd6457f9049d836e44ca3e53f870dc89939a90e1d461864d1e0b7b79df6a5ee4db768900b2840b5a7a9885fa994bd31a4d03577a53f47b801f48c3e4beb894fed1f88c732151c61dc9435c1fa2a4376ab3a93bdc655c56c9aa5d0db7fc6c7a1b34c6f98d02915de0cc65103c1bd0a987c6709c8f6cd91000296a0e8ed6a8582321b30f6be4b09705dcc71074236048180a809bb1a988403e97db598d3d6e2139cdd863a980da96494f0dea4721a0513f7d1bca588b717bfc0fb00216968296189e47ee47c912b4628c918f68eb7236c2ef93e8ea147f4683e0f0a930c1f35c13d763b5c101a11ff571729abfb26f544702df0301e9451b497dd71acf49750aebfa3022d838e8b00bae55f197c5f98992d50c66f3bbd57df7aaf45cfd4cf93adf3d489f5b7b25973eb2125cd4630ca5faaf009ead85ba15a25b58f759e1d25f3324df8aecd845afdde7fb4bdc6712f0ed6f26e1fa6de398510ae400a5f2ff0ca4d4e46270afe5de2a7859d9d21d40b4120bf5b5c29d43c24e1923c856544b34bb0247d10cfab4e4f6e4f53442e1219346ed7d54d6b6b88a481711a1880bfd2e79f7355670fe995707fe8af9181ec9596be81c0683f757f29772c1631f8f587c81b0eb8e189e47590a89b2fb8e5f2b5fd99266ddb9ddaef746999be48ae775b7ad175ebb0a5d3fc3115e5a35c3ed96462d2771badd7ad6fe5731199eca8067006186eabe0cc6268da9a9c8979927a73df47a57e11a0a839cade66066ee3691fb3677c06e5c09a13cd53962ab4a3632c833409f376f4da7c20123b01be59164edb41bcd816bfe872266c9fbc4cf4185bb58e64514a8e4c57f03004c25cfac399d1a627980305fc2b897bfb016a4bdfae059b6a684889acca2bb50b91958cdf4ffc1fb2a2d0162d240fcdeedeac5bff94829d94f99304048bcda230554e49703e8278ba0fbe26015e844b23fd31545a70323f1d23a2168fa7cf8ec3bda2faec99b7b57c5b0bb1ad649542b6a200dc64dd6e0059e40085a0be15360825bef7722d5938115fe5fc82d2220d6cc67277dd2a4c86ac0f8ab1f53d0f4a0a64b19389be2019a3340dcaae1ffd6d1eb3f1a703301199fd87057fca2307fe4554fa04e522a829a119f97101eef438753d23064a4d61d7373c74cc1ed067dd14417c04ca607a05f08da605e35eb6a18b192a818907848e9d88e598685399cb0a0be27ad50d6231b886a608b9f955f3534cda3744c8334ae7f6787b97553acc251666789adfc0cbc5411a9fa153f65555f2affe0b2847fdec1680053078546d5d65dc70fc5273608db19329584e57786c2190d169dea76eaeb1257180ab2521ea43d0a7a578d93a637e2d28258d251afa4d43e92713cc29d3c687a02adf629e091b6136c019ba6606fecee34e174cd039fbc4ce7735c9759b40216d2f96d0973873aa2a190bd05b8170434022144302ecea2cdb8e6812f4752d77e0dd46139b1edbc3334b2e7a25ce004ee02e09cac30fafad64c80bd2980fbaa0e885eff30a84fce56f0e9fd3a04a30a65e21fb377f155061262087444dfc92cb464427bc5ed4197a621860a93b16450db54d21606a30448fcbd8acc021b03ca2a7c7d7ee61d684c130ea5dd8c0b45ee07a0a901a18f29ed2e835bcc6446b190a534d05d49098815ef89546d8d673d4ad859a885121b7257ed0e00935decbd9a77c06c9986ce83426aeed32608596df8de679cd27718e6e694a67508c5a6046ddb89cc23faea26563b1d233f5dd4b0f1438c35963e159c94b3a5b291c9c9e15854ccb90b1d3cef403f8b5622cd8870adfce02f888a53086a06543a1753150870e64f18d6e84ddf5787c8f7a16dae9d4e772843543bc443d6d22eda39080dd81c911ac910a2bf076ce4590131504dbddae2a0b84379e0d83f7c87b0564bdd9d738a5dd9c12b9c55d4ee32cc34614a6adfdf5a1a7255c6605f5a1b43f482e85e236fcd65b3712326f7ba6419fd17afa7a2517eec53d82b7ff6c44d009d3a574edf537cebfc3c956c79ad508ac855e8bdb087adbfc46894a89de6bee8314d77bbdf50247f59a6271c1b958d026ac154a4f82c7ff86b5114894ecb00689e1ef434fde2d14c142781545012d751ecf2a2b205bf2bdf578037b60e69230b4278b70cfbb390463fd3d4f5ea25aa080119ef67835190828ee6a5dd6b30990e6b9fa06093e894df64ca01c9f953a103bd8d977fb3018cf5530a2f39d353374118fa51a0f84164fa44a413ca8c305cae312d38c5a0e09e41a6e2262707850a439c289a7e380bc268a4bfc8f0d1434dd2ce27d6010a7c9c013bf8383b0a60981381f0eb435c934e272c820a7e11213a3c38062cd114c3c1f0f6434d15cc47feca0a4e960136f07827834c30365ad019b9b1d46c3ec6257e171dfcd8475487a60d04b337894f67cb0f9858bd4fa0211600eb147c813b97de289a1101e15fa30b89f38392d6881336e3ff3121bcdf4b7c2948bcad64fadbd470c6bd7bce7ebaf4a192f1d9c793b5a18d62228655637737440a21e7951e74880cdbc1900143d035861ff9ed072bc47c44943d71a3e645016cc6689204357c3abebe41807601576740c67bc48197a22d140bbd0b2c5bcb59ed5087696b53b733235aae26179fec184c59d65eceb918c109e9eb23c9976881ccf52861f6c8caea2f773856c84195a35de8196a1da7d9f9a2699eb80a0237f7ffe905b056e143f5ed08da7a000e7c18e8cc7328de6405da6ab73819d2c179a0daa531dd2b9d3384928ead5c6daf7091c5cf9387cb7bb545eacd26e697dddb9f6ea4d36821e5684d90717e2f55875e47e7e78bb7c361a5aec92ed670f2701d4e3e4fcdc29a90552e708bfdbcf44a59d05683422affee8e06545476f142a7a22e9d18e932be74c40a5495dad98c4012a853d767cf9fb24384b820250deb6e1c1c105e939955afcb68d3e0edbeffb3a9ac35ce958a0b0ee2c9c824db4c4ef5b2d92e7161321a0f4a5420dc645f532739f32635f24ed58a734c00bb2beca6a5b011e5f9cbbc78aca714616760aab84c18aea32bd435ef17f2f3b327daaf9f146b4f080bf13c119de3175599d653308fe2329c1d1611e37b7061a01042c0df1cb961dc06e9746a1e20743d88141061ec1729ea05b0b6160c7b737437f6674b022b8f8ee3422ef5c11c6dfc634e794281cbb0f8d09676387ac3d1a499a3bdd33705cf8828bf335ca79c392ec4f71890d684edab3c1ff7bce290dfcb2e10b759a64e0fe4da93ae1a82312a9f5a6111e9e6c80a3cac2935dd2309f19d2d31f7c8d0f7b351744bb8c837956d30fe86a9c30c454a6b66e341135d0f05ba4ca7d59a8ba9cdb4ef2250e3c0a3597661c31debf1c11ba9446ee04c94d4bbafaa1cf1783676692976ad67281f711670d1594df0d97766e8e1cdd82f108f2c5a656233f091d7abc404911bfae8f97722f9e37ddc88e8bdd1a2a1f1d64308c404131560ec6a0bd98c6ad13a75716092d6fefaae0f8e00646a63568aaad24ce5f4b361db5453d3720e0025dad10f76e93d61446d710496048946e252b91cd795edce3b83879d3bde42b27b6f06c8a3f42c04c989c9770c818fbfaf3968b69bde3de60c3f28bd4ea5d3b4cbc925d19fee0e4fd852b931e49e61be216fe86ddd2654eb632242aaaf9493af0c5ea3eb2dda33b1e1c8368c6ddc699617b71423fcb4c56276e4c48abe286a49632cd8d439fc50fcd87367606b40324145f14a187ce2f03e498213454658174bdf4e4559ee39e496918c0dc720825040eba7d560981195d3e5b7a6042179f2e5960d1d9a74a10d8e8e6c3520712baf870c9020be8047cece68f88b86c76c208804dda4326b2becf7c2cb7043a72747b0dddff0fee138dfe50a31f6edc471afda9463fdcb84f34fe438d7fbc71f9c9db381f1a9dac7b8dd677434ce57b1d6b1a03adeef1838dbae72b41a13cfa2dfc2c62b627e6b2cf29a04b49d7d227a04d099f2059d13a2a3e9fd973f2747a15f4bb6bd4ac3d2faae4fec40bce6eb0bac8ae03e02846989a227834eefea05ff68cda0de61253ab726428efa8b4214259e09c004f67c6df3c0ee954835dc7db2ac34865eb472e691a65881dc8979d86cdae7fef13d0b75860bc4af2ffee803729782cc15eadef8f2505baa169ed049a16c9c84f8b1ab12f00b352df18631ffacf6e4c2a678792ed83f07ce9293da8ac496b539806c30a1558d7383d1a56002be7012a053fffbf2f60ee94dc3e1be46a29214e07a3f5b003c851e9bc019821085162f9ccd3906e6b6954bca057e64093ed799f7948d2577e555f8dfe7b551bfe3f47e7f47fd0a22257618e42edea2ef3fb433670b7020489ef3daf228794aee276254833638226e9a5a2e1531f929cb3243485b21c33996445c6a4c30a128e5fecd0d41fd3af3d4d55e4a0c96100182e299fabd628a241c709dd1c8bc11766368f5c95e8e2463671df28b187433eaa07cd0f9d580b29d1a1cc79d1907902e4edd24306dd368754e637b5132c374d2ebe23b7ac297834932cc4659900999d5db2da505764ea4b6873176db12d79cc0846454fad1dc2e99a596999b3bc00d7595efed53d41d579b8db11d307e2be6e24638bd1b67d4c60684b7043568c9c2f01cd6823510765c3382ef5b250f71c85eaf99769d76b131b5bb0be8b7c0aedd78a02966f2ba9eaf388566007d238c6037f7cf25a9d8dbc4156d9989352c17561fed63753807c930a9a5bf9399b3534a3574591e61185211a6d4e242b373dc76a0abb57923dd304597ac85a35974117be68e686ad7cc0eb1ce995d50d266032979b95fea6eec109b39fd9fd17fe04a2388ae686f02505491769deac282be5126e7ca1b9e8105d352bd056c520052ad45807c8a5172310d64d62209a973d54c5ed7555f11f9127b6a752f3acc4cdee208703b5e4a3034a186b2464d6518c00daf56a4a7b46631f644a1d3c4f30431c1c3606ddb66a3c4c28b5b6fdf77c6a2f7c0871e3eefb0d9c5fb4356960995ed2487dba021bf1601b27e9e623e939b116ac9a63415cbd5c17b6e7834e1eadc01c67b583d29a4d6752af3d815692362dd6f3789d9e5b4b7c1ee88cd15da3657f5ad39d2b050ad74f4da8105395eada91238b56a2e405949a0da656ddf2204bcf824dd137c3748a2161dae26e6a5046d2640a3c3c37b058230b66b7f42996fd8ddf8200cb8351e2357b9aaa6db76edba1756d60ee778f03d03ee58660c211b5cdfe5419ae09648b8732519c50f638a38d045f204d489bd14ce230a2ea6fd2c9e11935009bdd8e92faa000997990e95468b292580964b1b340143073a985c52494c59a4f8bd90673e676ce8edfffc3cdfa77b8a51f4d89ff68d09c27f1eca5e196db28afafae2cab3feb0fc140bcbb06189981696c104341cb0e3691dc381132ff017d78c2dc347132e383fb78e2b96d22dc3cb132f7c13f6a62b83dd165fe01f363811319f253c8d5ad862731e5df1ee427b71e00e20a848a2a19510139ff107936f53156b89f32b1df326d7f199b1bb18afdcbb47dcafc3ef57eb8b98eed2fb3f72d65e48ddb62b2fafef8fd1d6e7ce68683dddda9bc0ef4367a0486d65ce18d565d2add31e1824645192c9c04d5d9df14e3fb538d087a953d6004d9a749c7319072ea75c771c20687610fd944db4d610370f223340cec7e0f5cb44785c84ebdb9113e7024d37fe5f09d1dbe9691541e1516b62a769bf599ceb8c1fd785ed0ef272ab582707d4900eaea5e66c0d11f8dbb68318be465fafb6b060273a8ed2eb801227c35566210b0789e0eee211b555eba1fe60e80a55ad636e9dcbcf425a76ef5e58e3c0fd6b8501d16c733676f7727a1949661bcc69f817fe41e83d31086e13574b855bec1aa403eb69c8ceefd95f63ceb56c83ca74ac2347b5a8e45443a68333f4064d58ad01bb4ed1b0f84c6c07574d568a01a439a9281fc132584dc8675f0af91c4545bce76c29fe873de5e017bfa7590931fcd53c2242354ddb47865adec2b6d6559e957b69586157752f471679e8070fe929c8571993bd6b8daeb1e5b5db5968c07da4c27f2bf6dd67da307247ea63f58ae8e60c19062d7ac2309dfc76e57ec564ce92c9a34e2f04d06c9348d8bc9eb2eededba99f1a71a68d293c2b7cca7d1305e476ebfb76375618d9576acb92309f7652a4b7f580d395f777d1d8898cb289dae810a72dabd5d56077b7ce97b4d3a82c3791079a9247048e48515416e10cd49e01c59cd0a5cfa1d5b2508e2b024ee154e2a9d0e81381b7a688ab8dd1cdc468145c55ff27c1fe9d46e1de61329224161d631c33e462235b98abd8f4d1db1005435bb09a6486e4be6a312de7b4801933e3904f1727abfa06dd6caf46a08efb44fce949ed4c0fb05b481ce16326fba9893de8e198903c257a1d2bb32722e449db80d760e1ec1f8d7d37c6a43d0dcc27ebff45261fa216a21c8fb14b635fe490c9205e82a94da1c60b691421140d65ff3d83cad17ac2821d6dd9e346317421147141984174e8a3be05b44e739ca313a24a497b606d7f171334e9718dc700f37fc07480692eec173a858ce119fd889072fec6a399552005be0ab87dcc7e9ee8165ef2f085c062c623104dcb98e6559c847c08ff5bf8f9a29565a9d82c00c30c36f39fd01194151b77929fea2c7c3c564e29698ada3b7043c102266e692f96c18d5731c320a8d0250addf05cfb76f1f1a1380271f40ddcbf1089d9911790e040de80d5fe2cb1acbb8297a117739cd48406e5281f5fa0cd78338ceb17eac9a675c9a0b49fe1a4dbff4eda68c3e843886a3fe9e21eaaa275f61628bba88a2c7e16e09171d76f5011d94d09e937f2266455b985af0fe6e481b4e847754992cc93bf10e58f5f931993bd913fbc29617027356de7da477c543598a721f75992c85676f67f4c0b873672a8401a8131a1121fd5eb7a8b7da79b0af6fa0553bdda5d69cc738747228428f2a0eca89c5b27bf78c86abf3201d66ca761c9d622348860061034e2238b302b06e53a61a3174fb33bf9c7bd708f68bd2ee75d3da7e207affe1590bc2c6392021108aaafeab55f0649aaf0e9079c4c069bd90ef80b653051d3210b601fb7aea62ce3edf36ef3b26b764e995c53c42233c2fec6b2e325c8c51f12753011a4cb9536e468aa7999cac3fcc98e63e55d4647b4ea848ce18ffa6ff33ceb15aa723e95728b126f595e92c947924657c22511fbf63db593912435b2f34de30a37687d0f5811c53cc96cca6788429cbbbfad740ad9326968b6818a80d347b0c2b824a0efabc76afb97dc8dc6214d5261f2057df445fcb742d43cda43345bb3629148530eecd2a2306e1f2223a231255af854db352f0c28af9c9e0e2f0547b8a8ccf6d9a6b2ceaf1c86031d5931542628e8f03dfe406a1e093da3b819109171c2522e12b4c3a98931c0f1c3d7c1601c3f28a6eb267620e654f1438fa5133b60ec01cd8511c1c9b960e6741bdc627d7d3cc603474a0ed3bff736a914e02b3659b76094df19d079b34a636999500aad822bb997ebb3131b18ab33c9f00ee668dfbe19cc812df5c7e760e35c9eb025059539482a6aecfa97d5c2e59aaf5f8cfdb4210fb4da604d30218eda431cd38e520bb4f4374beb24cebca58033ab9f283ca9520773a53d95b0b232fed012ae3ec107e55de8aa545898e603c6015d8f9a0118f292d63788f0d68d5e9402d4b389534ea99480b272e29e5906447ef1a6a1eb61533292e782d7bcd78441a44b65e57f2fd673665b71b0049adc0922ec7fcdf0873dcbf1ac95c719c25d3a457de4587666ec922fdd1a48f2d9fcefa644a406243b1b16198a75e93ce0948b88b42854200cb249b2e117ef225ff608cf38231a5c0bbd13e61ad109dbd0479e9215967f96a69f98aa931c5280ba58283b1c191fd76fb31226bf01d8ea967fae985e74713a252639964fc1dedecf594a814b7175b6b1eeb47e504a155aff362aad2dc1babbfe3ba7036f082276c7a5d6a3e489a419387cfe7e562c9e844ff01921eb926b91e34113a5800361415cef61cd53321bddd3d703ed603f4703cd055e49de815cc55692fba15be07356384066e1069063184b1793e2c98651a5122b668e7532a7101d28d2120078b84b93be220714ff6e3cec9db70311e4c9110696e40161d76365fe96729210a993f25ec2bc04383ebed5bb581029cbef9e6e5385c933e19f30523e7ac9fe7bba00a54c79b688cd21be21b95df7c8ac89f495159db44fca91f21a2f1d631805e30b4b98e13567acaf3721736df7009aadca76dbf85bb5f0b6d8b8082a47c28019955f0a0cc3d240f82fb567d1b9798f28a46a4304ad60347d67f14cddb2a68a05b042c1d9156d30013f0803c0d8191e51dd83bc0619eb65d3d57b99b09155ea966988d27447a8e53f684ee1c26aad415615594a1d9984cc59ef67dc292e4e3aec1569fae5b772269c6838606c59975b295c1a9a58e70389d716a083e26528105e3de26efaa3f87be88797dc67e138bba5a5064706abe6c02b737ce6af7826e227a9dd172d554d4e65f7300969c88781a3e214660c35fa6fd8fb34c92eeb7837ff04c71dff09200a7f9f70d0164e3241e68292bb05d6e9d848bd714a39e5a77693a64aa666e605b04780a3f804fb0508f92f001420659a2c02cd74a0f6539557ec9a87d667ad3eb377b32237c88e1ae469b7d10375ad5fddf1c66208e5fb396b6c89455af68488721f1c35d9bc8b0db15de07dfb67ad6b639e08ba2f5eb3b55c57941ccf48bb04c0f271def9d6cf4f8fe91f1a25b636d6e3a347c86dde2940266ae40ae3959786f833343a02f218f897f658cb90dd2558e6459c9153f6711d3643276dfae7ef0b4287a5bbae8cc216fe8cd7c08398ee65062fdd6068571647d278f999e57602b6536121e9340dd8d515356061338e8f545f297541e66646a88b5ee138d820268309a22c77bca85c4d9a41565e59e8aaff187df40c1ec0f92d2d1afcfdf7e4c72295dcc134e59bbbef2e98f464e025ff38d345b7c4b082c0b062aac4a9104bf09d74c789cfb63a7134570ac1c890a93e91ec3b45685b5312e1bb76fac9087f64bd13ba15ee12f700542b71ea3ca4218692da002514aa0317f6a95921b78ab3bec99819839a8e081908e33dfc3d57633f97cc25d0abb4aedf1f541ba90569be3b8b15b61ba03039223b998f0ed983f0de032ac4e867c3a28dfeadbcf649f216fdc84de633ad183eb128c910d1bc2c874299cca328c5122e05370d9a7025bbda7865429da08f025d0e78e713d77143c35378031cc93df567049575c02df80f0c6c35cf646186fed0c7c16bfe772506e0baaaa0db2857c306416c6ddab88690fdf0c171ffae7ce3cb26dbc4e4f8be6f7b45707c047b4e752a10b2cddfda3395a5af0f6944f4b55428c7814ea688fa27af91fd1ba0e48e43c9e6bbf96968af2747d0ff77fa0e27ce1681fba674c7c1425019d14d3bf51e85ab5d1f820940d93d2ea406cb52c61b5687647204d4cd06222b12d82d1c9a89e70f9e787069b551f8fb2ea1d4d0aceca5ab27e618b8c9f859cb756e84c67a20fbc57c3fd9b4110c1857da8f19156fed0b9daaace41f24fefebb73b53e7e9ea044e843543f39323aca015f93e6bdfd0c67f6f1eaadc281ae3938b5961247427b5dcbbd67c96efa5a4b749b717d0de3afe02bae31408b20a64f296014375c72889b3fb863ec2cfbdb77a34f23f2d530a81b5087fef0f28925b28eea42458a232e3927508f831f7f90949add82b1775fc51567f946253fdd8673c59d1b171f116227b8a3d56c2866b1b866247d53359dda67f4f2b63396e1a99a3a5fa0bb75cf7e6863d0637e0c6be0428be760d6ea99c696fad88a890546cf65b8bedadd50f121b62345e6971c1b6afdfdc3e466ffc5df8d750ab3d4f8788c6574885c044feab570f1f3313616b4a1c0aaec529dfa7443ba34a10c53590e0ea1d3a9cc5c1570105fda12d4ee30eb40806616c0c46d9be7db33163deeca79ad3878aca02c3c3d7082bd3f69b878bf5cfcefb67bb4d2e1a34b25b3c85a803488e0bb980448646e47afbfbe92f5571a48015ed6e8e91c7b9690f5a3964f9ae7e84f7d17dcf6750070d30f21642425c518a8c174dd0e503751f3edeffe333ad0c7d0c87df00e6bb93dcadf6b89b4e63abb6ee082e2a1b9b3a9c423a0e8bfafe3ba504a7a0bc50776303f488aee2be36b7ecd1d879ed0cdd4a7326f295d2caff1453a1b563f16024a54263bb29f1a39d88e2894a513aa885369935e1adc720164f8ce984f4e90ab1612c2fd16bac860dfa4bd998611e721284debe2ba7f9f901d3387a339dd915544994aacda5cb2f6f588cdacaeeb442856cff06a934ab66696bd0c50eb0e2acd60da3e4d47759c2bd4828b3e7aa6397f107a7d59ef7a5bdcc97188f6847309c465ec90e01ab30b99597a9653fbfd4ec8e250407b0c1a085f433bc5566826ee9ff3896f9401cd6b865fa244e5dca87628fdeb4c63e2a3ed414593f4ad7ca24b5898ad1a8ca78e3159d3dd03d2a7ba6f758ba899ed6c6794149c744a71f07a69b66155998711367e6e35b82268ac7283d9b4ae825581b5f182a6c6247fa269aae86c8f31fe724f684d9e3c004f6547d38567794b84405287cb3bbb0f9bd27842aa13f2d0529df53d9f0384a133cc60a2d8f8ef8cf06833bf5c57817a06b8bf9a6d73a40e1be016778049e99367b1d7655264ac0e76221a46d597bba9c1daaab208293181c6c2cf0bc0fd41c3e7b066062ac49f3062e92511491733ee4221b96963eed3934e079a10bd71cf2fa1b026a41403b3569bf56264655bda8eb588678e31db391e97c00a14778281462b5a8b33624270cb34ee890342e4d367f29eb38fe7d45ad3ba57225713c822543ba925beb3b8b55f683e0e61579e61c391cde9960a3f5bd26dcbdbd34c5e4e9024b800807e42524f0d924ca62b504e91dd555284180ee0e44283caa81fc1c3e4671fa1e041485b970d8773f7219267e97d4cb9f24e228cb0e227f27de1d015135d4dc82707c43a952a2f3e16fefcbf57ccde5b3f8093e2c372dba1d3825b512efcf50a2f607cf3201820c65040a6ea9d738e65198d9bc6bb488aced702765da52236e2a1a86e4175c6021b886da3b6d01c4188b4971a2c71a59889ba65d99e78effb0580c424d938388c2372af4d8e5b6ba63a187d96b828a66119e29d8c5c2d3221c2ad29e1f2250d388238be06ab65d120e6038558d1c0b2f138f251cec1dd28492ce874d22db4d0a9860e6c1d717c0594e095516213cbd459e14f901974e0f043b969c4a3236c30e2b2f802e580dc4457b55eb751db2ee4ddb64c768b94bedf2f926945e76713c89ac27cffa4ab5e012c2462b9fb30f6775fdd72358ce3eba819247c59331f29405b49cf81fd5a05a3f285e8f21303e5ae83feb882bbf15ecacb1604c15ef3831f05ce6319723e4a1a51e7e70457f01a418a134c6df18822a200ebb6717ae6491c8fb9e87463f91c8e4656bcdf6c255ce440af59cba84db2565762012f1e9703c683fbdbe92a7dd3aca7fca4cf812b5bb219f58c6484f7c45ae029c3fd1ec4b3f18211803b2d529f4d8e106fa4652fa5f241d42a36abd863ec1b479e44e82bdeed12069e0a518c9ae52925e904fd8405d5847c8ac03014a3a109215546f3e876b338f80449f0d03161278b37b2c95a0ed0fb10c801ba2c0b453de3c28354aa8d545dd3f410a5fea2d728d5330ebb72a7ddd510c530c794879ac88d8182b1e370175d334b69106061e5534c579d994a0f57e98fc8362e4fff05fd09ff0909de0dbff07c8ee4ef80f601fc76c6a5d7b99d278fbbf4368d48089aec82fdfb75fa4a0030a5e1e7230c29c920310c5f22df954d37cdefdd11053ba4209973054e310a647e3b87a4e2b4ed49a39f7f7bba6626d4048732a0418e6142b088266a51b5909d247a45a4f14a746b199f47450c81933028f64f46a7c0f60b9d69bc08319042047d4bf5bf98745656722031ce71991db8f800c37c762061ffb5159e9edc73813cbe40476b1c1e2b47f80cced81f8dd44007aa07e0dae027e109f6162605d283017fc3dfc841e3a9124a92886f8b9f834b5f2c39d6f79cc40cf352db7097021d0f8f55c537756d4398c9ea97cdc4e10097d1f0a2781408c7ea322903b8058f552c4c4324d9855d5322df3959a048a4bd3e9141dce84d02c7020a62e8b4213f4d8edd1694e8d821428b707cce1327623df1ae0b8700e70464c210791d4eefbcdf276bb83c8b9cfe3a1c36e413ba9c1339b6721f46d16479b6f75d8b36f18f791511e383a7e46b6944e8d431eb100e628eec69e62577bdbd388e26fdfe0746a87a894599282db20f2993eb17c961489b2ccb0a8007af86fe487352235eeb6fe2d6abd95c87275eee50d03fdf4ab73073432f4cb8779a014df0a6ba9c457a3163a282336afae5b5f4e33d5b4a6d51d688246c785368204fbf42c8a5ff86443ddafacb9a70a86eccf44f35e4fa3bffafdb364027ca3aef083bb9a2d51f37cd1e01c803b382207d2eeb087529b18a225040a9e5bc599cafc5be2cd9896767c9780f6f841090b5c7ac419774a643b0d265ee1450868c1f94354df381ce221d51ab3e6b8561ba07125543a7793debb1b71564b96727e1b834a78ab1db042262d3ddb68047d294b7648bfe34d8cecee70b279b8b08bd3a24600ee04d02e635f7f6b8ae9090baf421c6d4658ed541607915f1d4387a8d29c5887154f8db8974211f074226b9b5261c5a03b432f3c9084415fc591916e0f476971b9ec3dce63aa7527de9c9669d9aac7eb7290d24772bf1b21a14095dd3e241a7161f4f9487eef8d66b5453794bd521b4dbb70baeda2ffa1fd63d5cf726752ab0ab0e8d7d67e8ffc359cbbf16d8d347c8df514fb6a9cb082b35dc2caea4d69d6d77215ccb445581091eb7398e0ff4d2bdecdd81e472ab02724d34a46a1f4d99f17c93635ae0514100c43ead92572e98ee4d2559ff988fdf7c08ab327f0ac40f0b0949ae32ad7a367207f055cc4619aabe67e402ddf2fb66fe9c72ca2d7f18e6e01fd14aa309d7badc4807698ba9cf70a21eacb2fb1b23c0429ce66b78afba839eccfb5b14f6109bbaf660c4ff86bff2d6fc9c1ff4a13645fbcad7be12c5a7260308ccf8352d5f1d8c9505605dcaf38e6f0f84d47bbac9c171b79666d8f893b0d2bd553b5fb47c3dc071e80e53b4812cfdcd7f4732e89be3850285f6677ef1cd3c8601a02f34f0a58c486a08248ed19383b5e464f68684b931146e919d9adef114276a17135c28a10e09bc3b658390e273e402e63f1c4305446773e0125249a4935191c10fca67e3a1ecedcd19da2f0074e0b1cad125ee34bc69fb769af0b95a4d01014b1a5df54962a5e6978524d2321771922ed9f3932f8d49e794456dc722fe78bf1873db9f7a1737b45d9928095e503692a68fb485055f4642053747c46888e5311b194c7cdfaccc7e1fa995a9ec434b4d7aa0d0d6c1ea20497019dc7b8b6030eec231175740ba7d6d937927ea5c503b441c9a4eb5b86300da6baed568344987776f19aea8d693f861cdb8a8f4ad204e8876e1ca1992f8ebebf4512f1d8c303e1eac1b5b2bdd843cc021ae00f78292310af980544102f4cdb8409a2ad05633a84af54767b6aa917822cd774ac37432509383d42378b5a9db67853d76c62011ebb3fa506a4c3f5b5658302ed3e388226a012f60995a4772dbbe951e93cc6dac6243815d7a72445788446dd1ef1a56226393d4074b11bf44d5cd096e08d48cb25d55006e9f24f620604b051910a2396a8e5872c0475493659fd8f3cbd4114bb3d8be26b089e4dd0bf7b1d6892af2682c18cb7bb410d15ce745a366f4c75a4128a648830059fdf567af061dc1b4ebfde087f0161ed5f3b20ea040050a21ad10577eabdd3f2c81d124bd8cc2d6323dfa14f2464b2d9c6a095a46a926648990ce64d29725e246c3e60e45b0976d03153b6caa6e643339170179bcb48368ac6a96facc5a00d936bfd5f3fecaa9782cb99210b13f72509f0a1b37974d9e1bdc00fcbec064976498727cedc2b8f62e74a7716f19d72e8628974cabdd2dc6b96dc2b47be5e298db3309c4b06c29d525bc06b60a7cf6d7879a81eb6de9366a3d9d61b0be7603af58ba43f5ac96b3b25b998ec5de1040b2626ff80407af4808484009d1ca427d4e2bee2055e758aa1b2c5fcfe90d92621d8084b60f5cfc2f86b2ae2679b44be6e8c1d4632b5633a6dea2edfe6f8c1497ee9212e958e9c5a592663724523c12aa6f814d216a73392b9dea74f22440f416ee58bd6df935f972afb745cdc082bee89b2931f889c4b9c4bdacc67f99ca5ec3f7df66c7f1b5fce8a34e594b76e0f69c47442a18f5570aa7d1e0630cfc43b51fccb138ecd2c59e60a743bc7f02b34c1251028b8510fd36ce0cbc38a87dbf20e23bec0cfc50bd9a09cf227347b8e135d746832c1ea20d73e792a66506b23a2cf7f7369633f2cd934b3ae5924dd558253728fc77d79b8ae2a4e61b4c8d075d461b732ea4f18bf7d80c387e911ef9d0ff86bf08ec93c087bdaa48dd8ac917104087c50de5bfe86357db8c3ed6866ac28b24ffa093663e89611c119233baa2b06a3ebaf3f2aeba8889349be0b10d2dd61fa5da6d494c734d16646f1657213ef01b0761fcac5a43395a37935bec97d275e8777cbe1ce82750c1f91e084040105f40381065b395929f9f9e6d2d7ada56282b581b1b8a626568d658a885110bf5d0c7567e1ab5341872512e0bb39e885a2ac287c695a1b8834d6f5959a05ecc327f85d6eab5ffc56ad38586a7a1ecb0dac9c36abb5b310ed3525f4b7c5c4405cc273e0053078a1068acb1894e10909cfd4d755421717a8a0f5375106959ff12f8db920a51c73fa6c7c5dd209d8056b9b68598aa4258a95f78d455ae74b5438d80b69a7af93bfde3a3e0459bbbb7434f860b7fe2134145509462e0c7207c7f01511e3688a9ddd0ff05b7e3617cd58388708afed95575b26e68acbb7f0c2fc53b3880f44c186ad8216f55704cc580ec22c6f1b4907e60c788b0302575703024bc5af615bb2c4f36708bd60d435e16e17702392281377b93ff2f2c866fb82b5a3f24c87388b762bf98e1dcf5ab5db836369233e157ae070b582c7958fe51735dc0355acf795ea5274c684ef94613b31268c1f7b6fa4b523f15328fc6365a7cfc77aee42341858e06b0cff9fd30b182d0b133a551ffeadfd44957f997941039bbb299783254872201cb973ff72aa5ac7484bcdde5988ba97394d3aaa71f21e73d585bba37d84fc5118f97d89f7a5a2fbf5f7ff808d2277ddaa04cbe6add8dde5261fb366766e22240a4b4dfb2b2944ec5509fdae15ce107c1fc6ffe90f76a33aa992274f3930fe4dab0a24ff9fa0c40f92e2fd54d658289031f9d80ecba4c87422899cd262cec06b83c4068d9b3343f847dc5f30e3875cdcd24ed052e55f68c187129369dd64f2cceebb405e007342b189a07710ded2158d5168287d66bde122bfc1582304c072f3651e3729f6cb306f95d73a31da73e5e3aa84da2886fbfa839a859fb3f10acb060593eaf0f85edc89aa477eeafbc22c43d5e2c92a29d0845b43e4b56ea8fe84260d3d62b2cb3d794a7b5714ef3ca5d05cb4d8d36437f338a674a46e944e5e0e682657af4dd92c904da8d589a68d8eca0af01facf7f6f33f7cf22567d9550ad6710924c60c24fb2618e28666036ffe7ab2917f1e86646391c1222ab279c244e5152d29859d3840de34ea3c556e7f14fb45109b44ed540d3e49311a5127985460859689e463564e8d3b52bb5dfb06e680da0f5d8585422fef4c684b9ba206f6a5b49825c1d709d31885a16b251a282e66ff522405a6247b884399c49c620f7128939853c99ec7d240af2b024d8e9fd6242c1c06100034c12bf8639058befd4bb57cc4e69ea641529517f705a4dba963658bdb89bc1a93ec54573f36cea4bfee32bc05982ff44def7e66605ff87d0cc8701fa28d374131b92b2904ab8e899376bc258db5ded2c0ae7786831a8d3288a65a3bd1819823f85500a0a619b8ec075ac7ed48e8c65c690fdc3ab8d552d0f59047eb725dec07a473a4fa071a11d78ae8b8e6a9e1b36055e4a6213814ec4b6d5d7418f3f0d1a581aa9bc742a9d099a788a9d663b77bc42d6d1316e84d6ec9deb37bb6b1635096310b06470f3f8364d9efbdcee1a72241ca9f3c303d7dc6794c812ad484bdd2e499a1be64c1410df92eab10cf40729f8ad57c0a1b0c124c4358d2518bd9decd13231e5ca4d241f948a4d478241b16d51ebb8f91879e6d65d3d8558bccf399079b1ee9c822fbb09eb65bed5a809d559bce3d53782b7eececf94e24001477db02bc288ac2dd7b92cd13228dba40a34910510230cc896108e453083de3b819f603307591bdf44aa1dbb373fe0a4fbd94c2b4c281e3cab81f9b1505e57cc10792765b3a12ced34213b81f88b5f3ff8bdd0ac2ac6a285547da66c90e13baede3374b7d851d7f74d44e04c0f8190488335c0c87f3800e236f02db9bb873074ecdc315b71ad3481b689a8ff8e6e9560dce1e4f257006a605ed1834de6d7ba88e804e740cf86eaeca9ba12ed3954c60f86eec85a9bd2be8a460c507a163cb250afc08933188d00adff2d70f9c747e2c7ff57ce54b5917f9ace1ee15f3838f872874c9aef9e6742b6ec8942f72b16b316fbb1b01f47e6709e22635f978a30c9e9012d1cb108e1cd98f5f507992c104ac15a7991f0f1fb46289519a4cde8ebed8101d98d894d237e68e9af543f7ea0ec536e6b74c147f97075eb710ef7d78aad5704de1950a0262f762bfcb8655e28d5394de16944daff839ba61f79d3cebbad9ae5fc3634373a97bdc193bb383c9c0854b025d39467554439ae9fdc33f1c7964f2c8722e16c4737477ae23233b905d1080dc23451c568dcf80c27bbe40c0bcb7fccfc3edf6361102c7e5f36c00d0a7aab8e4eb17f1d67c75aac6cfe774071b333cd986ea31668ef082ff79b71cd886e3374ffc45680371a7c61fa5f3c7c478331243b8b56d0fd18e833c979d4c2c0b3b4d86fd1a32bf55aa9d9e58209834a5dd93de811d09a2511a7d8a1c0fc8a84ccfd486622ceff0dc9aa5ca34dd0427e591d35de8d2d8831ad4c1a2c81dbe0abe13dea8df33011b43a23f43d89ec9f1c393dd7847e6d110cc94fd1d55ffaa8ffe394dbed99ba310a2d32808efbe14492f174977ac28c7d054fb531406108a9f832a28a2a3b05a8c42265094682f09555e1cec92339f4cb2fa916ca53214dc0f564bbdb0b686cdec824adffa49d0f5aad4da984e2a2710dd18332fe41659b765f2a8f6319fc2323e549cc4965f3f5def0f6eb314456119ec031c226f709291a7e9387d6a792d21f7b8bdc8c70fd83f408b4ae31f2d63c84c41cd7d1175e1f77d89a995555ade9572925cee1fa7df756cdf84c5b73ac5cda4fe4ec7e833a2f8b4626b06f2050a90fdc45f82f67fc2bc97e962f33301aebe9c7f33b43f257a8db2c5c875866533a626a86c89713234cd113bf6b57313e6ce6800f5f0d98a98e856bedaf671df79487b8228f19bc39bf5c8f449118a70e72e259f64a7d1fa92ca2658548a1040ba41305bb5d95c29542a16e9dfb670a9690274408bb375f2f5357a12c95af4d3510aaa45d870694e1f7607fab68c6dd914d97f85f2d177f36c0d30177928050bc510d96be9c37aa9cf29379b06a9fb2e021b6286ad62a295f92fb4dd551127c4074284d67d20d1221349eee9999250f2ff2749afb0ad9e5b762b0c56b364ecd096739a52cfd0f04d76eed678f976d80d6b900f93873f0471a82f10534affea3181cdc652ff01faee538678e61015f859eaa141c3d7e427fcd87f841c7642ef7babbdac3c035b9e90ff4e05f61a70e354fbbf8a49cb8e54153db66b2d848c38411e1af7a62f72578eccab80077cd15d9c06ef7eeae7ecfcd5d8a1c8a3a36f1a2e20852a1947883324a4fdd9c5dffac61b7b5c369310d2351d5e17b6cf1a73092ef10b0787ec9679b36ead2bfa277b8a249cec4caf9a19894e10259f0fd89a42943334c65a49db4a076a21ca818b931a6cba6ff704459417dd5a31ba62fe127c745bee43f43602d210ed7f228f9398dc69a35fcd220fc2c452216e89ebde70b1255fccde4d2e360c52cde067fe56f4c19d3c2b89d245530ce21d22f997bf7b54d9b726dd519c1f84e6591e8c35283c79a3acdcae8586906866b59004f566fb4c3311216c3689a638f76bc50b1aac78e2756c32bcc8a71fc6d9cbf8de253dc389b41cd6b2e64cd71dc2649885e7b8814bfa5f9c0536fc0684cfb0f29d3733743c6eac4185195fd00f5a60756366f9f98d7e050ca20099689b079ea950f785a0f9ec5df47000f82d3a8663508f324d73319b6edc2ac2a1d4440efa40cc76cdf05ec4faf1551be69cff3401c9e3691486c25f05c157d00093303a4451c99c4c3a6587920999dce929ff4097881726bc1ab658e4df1336d3b85bc86ca0f9380ccc8be1387402df81144fe5148712f80f976cc30f0c312c01bbcec8501d732ad18a2f56588727a27b033c0eaca7ce15c60decc50c5aeff6dcd810918cbe9f426013287ac67d4106c0f09f6cc258d3c4a85ca07416bdce127a300dac997599bd56a139a14a4d11d8e2a8ffb8fb40689eb52df449c3c89992166069cd580ea4166b1c6535795396185339c4965211485d12c2ab207e8594c3ca1cf66f08811e2ab77f7411d4a495cc33adb639c4543e48addaa5164a67e5b9908fc8ee7c22549ace7216cba1ea1435010d656dd14f9f388dd02a0816a88784d795b90ccb2c322f6bc48f0670f8695688376a4bac2f3b82b06c973a4a25cc0412ce9f4e62a6c356c920e3e444fe3b1083d0cee299efa3b0d0636fd183d9c81eac276d532bb10f9ea4a15a3fdee67ff52b0ba26688087ff19f00389aa5aadc2fb82bf8f876397cd2b2be2f24120c77f99a3939534c0897a708076acf29062271408b952bde78613e87d9ea0a20eaf8e8f04040226e13cabfcbe235f0c8f758ea53828628b2196730dc1e532cf12c875b6371558bb0490ad6a56d0d0137b34db6491ebf0c99a19515cb4f93f596636d0aaef0924f068f76162c5ebb1871dea9c50da1f276be011c32139edc5bc3ae3b56e9861f894274be3cc34392bd97a64f07efe2e3b25518c61c682ec40970a75d2027ea649a19c0f666a9d97cdd3bc44eec05f7cfc87fb16e9ab1f67f5c1ddab63978b769d405791645b565e350285c6a5541d747c5e469f7dd42b12d9e495889880d09e21740bc574d5267221bb2fbdef774c2a9d06e11074d221370da1c7561d7e3ee3c884be5620b99ce9c968f04ed726834108db649897b0968b02231c2ee138f0469b877f5e04e73ff415c84dc57578cc355367e0a07e4675865f6bb02fe14eca3c8fddad61b43abf114b12639bebaa770cbd53511f68f2e28c3b48f6d40f8a119691a6573c149a9fcf0a413b6a13b6b8b74a8e80b7af2033bf30822161fae4e250506b2a23f35b0a76586cfabf7bd94202f746bc90c5ba52571e9c5cd96d9a9cf411752d7da772b613042cbd5cdec1335d54a902c01d87fdb97632fa04a9b5d20ecd7ab81493a4fea5738a6a9f473fc8132741e60075e573621e892d9cb0a5d1888e45308a0a12b45655c3f7e335f412135ee622cd902e4ab752f6b584118a231ae7a7fc30c310c3f7df11f760feb076e229c3c94cbf8711507002bed6d35f606eae07674d5896f44766c9106d757f53854f1b8bf1e2510c10c239483ba6724b05142468696f234903d89dd72036969c5f389b067431abc0eb2aab92c2fbd33434e4931c4183abadd9aaee18542647905fefa1041b48fbb6a5e824359a8f1962396a426e968c0fccded0b9531c1e82c136d3589fe66f2f75d47d1860f973cf2532ed4cf6c282c081f7d1ef7c2023e22b822c85a5dad3f66603546ebb6168de2060991afa4023d7859035afb4d8b649cdc22167c677afaf8759c4b0beac747870009412314a966fc5146382dac6e93b4e70f8e2ce80f424c62051d0d71df33bd6967cfe134a33daf12f1586aec918582b41ab6a471db76b729cea861fdc09be29a1a658b4bfc03a2ba29138528e94c556787d67c9fd2937df0221ed6e234e36811d7691cfdb44c20db8fcaa5ce1a251662566ba5c4503522496e54592e8b00a71f39357bdbc25da3484e4aae72014cc20b262e4fa83795ece94f9930ed329ae5a0b202459c3f9fe559edac34255f8fbbf378e2f70edf103b8e9608d0f77aa71a86a0adab68589f00c2fda64c9dcd5a6e93a51cb357d9d892ff494daa8f5e7d667659da11c66d7cdb35e5205672b3ea9d1a85d0f9d73453f3ec648bbe739726859fe089052e04515ba3097f4a79b70ce08000a51e73dd751d3d54c85ae50b733c59d8cb3082eb84096da6211aa0ea5496c7144326343ab35208af7ac619bb52e724b4e57cbf089c82c64e84bdd4fbd6e981fcd13cd8a338390fa59230d734d6893ea42d8857eb446609ccdac1552de906da4e2d1c08e2086c9728d648ea899a52ed9b55ddbb63b92ebd66215a20e75afe03c96f5e635814834466378d5c955865bf5f42debbe9726766260ecd978c15ee8860b108d234d86e3f4b706d3630b875979074630e6a6d822e859009b8135cf15696807cbf279c7e92628eb61fdf7d8fe483a839bedaf85f67d6f2d377672a23c4323b00e09620f73503903d6e41945044f95803283c26a41bb67a25977d67cde86383446ccf1b777622d3961797016aa0a1f95371ef30d9353c06266008fe7e933b87a0cac92cf8024b4637419abe1f868d2856e5673db4f55f5aee6626781e45ed344b5254b42c464b838b921caae067ba2f27c64aa576c8b59b75eabc651b6020a831a68f84319fe14801fca106f48ae538a59f9daf6c8a959e1002657be47fccb022e5628dd2995925076b86ed1588232d729c72c94669153c5887c2f257f546ae1cee91f13caa894304d603b51e0c7561676a21ac95e0e93981704139b56bca0192e09847dd77290bc7d26ac345fd0c6fa31f85ad8140e39232d0858630c47a453bcea2f748c474c8f7986030be89503917871c8ac04b5aaa40fc28843d046d46f49f160f5f929c1735f76b185c3f1ef85b0c11535241cbb8a495f2227ffe2b0751a81664e38fca05c7c5ead503d420e6ad1c464e650d079dbba45bdb108ee5499b80574444d5e787e274dc434ed071946124f6508b624706784d3c2abbd0870492aeab23e90c07cb7190ad075d54abeee69b473685e8c2199c99277e48e550545b2748984ecb2be571ffbf3ff230941de53b21ba202c5abaefa0b27e8d576aec9082728cb4233b335419ef49dbe57f83886141cf25515c42b383417133502b2321b892b058a2b20d81fc5fa54df0bacd7442ee275a6336d0f2dab66b9c6f1028d3c60ff686d5e781ab598d20ce2f8bf214640fe76cf952500d8b380d6b6109e36b55594b77b4b035b5ca0387382bb46e608223d4ff8c0fbfb6e0b4c479c4b60500b8673db0dfb264996e82011705d18c9485276b3e06c5eb2b95594e9aa0c35f3ca63e6024f0a1df65f570cbeedfa856322f3099981b09ff72670f56dd95aeff5864d6b1d59e15167b81e25aee8e2060ecbc76f7e6e1163f7c062e9f7e4f2f4b7a3786104b605674c85100c078b876abbfd76a66e5692e5edc58b6d045976ef53e8293db0b3e829f6b30488317956b2152876856e528077211d9ebdd524fd0471382ace440278e0642fb62ab9cd81ca8e5b5bc861d554e9465abdb770b984aa20b7997c355babc8af0800ce153b243f8721c937c6e4b163c816435bb3ab66dd17856896e89f60c23ec69480da8925bd37bdfad5fbb655520c3fbb670946ee5cf0e218547d84ced70ee44a3007888492de88a03a6ad7420917fbee41ef6470edbb96128538391c6a1b7dd4042c9fb3249d2302a88e40bf4d0cd22e04d65944170304ac2a7e948adf6943d541de35fd1a2506ce3b9fdd0c668c64b5011335ba51c4662d945f1422e00099a09a7265b218722d83c3b39ba0869a29ea8cf2e5e9f036469263298fd1e1dee035ac41846006e2a40981cc0dd91ad785dce6088946ef1c6a1bc12ac04cc779e8c6efcc3c4cab7c3389265766fe74663ec2b371bfa585739db1f68ddb131de422974a5136148bd42c2223d69c8a61650d0d69e2b868c4d8bd37bf700730d7289e6630371f82c4aba7669c9d947210af7e86869eb65a927475e47239417f44dc73510a3f05815d6197f722ef086086bd1a77e458fdd8cbf5aeaa1a7ba54ce149e83968dbd6f935e09e6b528c010cf72ecd1dd4ea70f20ab969a207aacc95f3c25cba166d3442d44f219ad1c29e0f7295c053c203354b24787b51c97d5691e6c624d3dcd260a8ae075fff625f4f059c9d05d8001aaf490d674808d9c3e98a9d707ddd80f8bc619847092b9034b815a08ecb2f80b05ccade487ff00fda5d8b3255dc55e8536a5f56f22433aac68a970890046d8ad2444f9987103a2aa9bee1de9ab4d70b418b84d37c19c618d15d821229b334221791920fb539bf844a1ab87e179b6f1a4c2682e9d15a5060091f0fa10e3c5f9db353e350c67a703824e88ca4c8e616390f6cc5cda8dd425b47268ea34867f62cc3a621351f3732b26e04fbb5269b567f11c176c50a65d191fec1b445c789cbbed5d35d04c2d2eb214d13a72ab376d5dbc5bd23655f56946281429e624499bfe295d95e419259bada0325fa7982052d828ae3e6b830622821d6d3407fe1932a6b17d8fb11c32f368bdf1ed0bdfc0140716ee8bce441480dfb059cbbaae1d03245b4d11db75f401d65a4d95930c4c40797ca7620bad1a8639dc4c3fa880a62b4f467e3f77024d7b33dc99077c81094272a4a1f3c7f7ae7919da9c1b12270f017dc658dc305b21072741f0b831fac2fb15d27342dc27a93ee44d72594b9d5e26f87bedd62f4570098344740364944cab18555a33f18ba739c031bcdbc680ea17d9460e4982a5d6c098a7fd165dee77427a30c3c70ca97687048a483d0b9c56cbc1414203adc52fdc86baf260d4d4a3ff800baa0aa548f3e178616c04fbdd04269aee9a27c3a1e6ee78b998cf9c966ac60f209265319aae74a4276c0708ac3319501a1ae24a1c62341c707f147155f5e3d83d845266624c95e40ba4d5d3cb0d52cd00834a47cfd3dd0c56e7a6a9216402af4728bda76a14e96c6b59c10a8c45419ce8fdb9170ead6d91112a92819d258feefb083f3ef08d315c8447ff3f33c4ce6edc5ab84a5c074cf7210ea0bbe7076dd0180197f6cb15486baca3863951db8f45adc85d081a6fe86ff1c52cbea0576472dd8fe80ab50261861681fa25504691a148d7e87a8c6a96198e26d864137cc919d8a7d0cf3600f224bd5ec0e98ad21d3b110901ce1385b36e6ac842e128f3e5248dcff3834fe6d0013471afecd9bc342a42ae535104950fc2dcc000437fd4c74e2a87f88eb10899dac2121141ea5d695b53b07f21b1ebb2a9a08fa85452703fd77dce9744d8397b1112101b2e35d9e577209fbe390c47322646d331d167d3aabf750f9d80ea1f19d6f713c9eab356da0ec4544492f72830b44e75f4d67d873e0df8144e94071bb6889417a205398cb16f15b157924f8637813390f6b855434ed50e12d855d3383b529d0340c543c817ba638a43d23ee5d95b1acf4110be79169461ec8b1a06c38e3b02db5916f0cba888c1ad7965b3ddf0f6b71098f603c9213e110f5d2211fcfc322db32398ac4561d575c770b800570523df4311771107c9348a0bb28bdecc5d16abaafca7e9d03324df9f64e9fa3dbbb2b6d8106672e78b896ff0318295e682cffd87f8183ff48db05882c14ec4a11298a64568588cb2104a83e9d625ac727f6133725d6c892627aec543b3ebbfe55eb54f56904821fd410987304956191d852a7d0af2074d0a7b57c75b3e8c547acd69214a86a1ff36660e408758ad24105b7ffd62bed5cbe987a460317efd2034c80186e0f503adb8184e1642d33f1eedaa6a027d0a5e9a26756d271250c40ccbae2dc91452cdd9ab17b9ef899709dddc1586ee79b1f9e6acace0a312fb147bdb85a19ecac32775f5e8bc180f24194c956e43a03d9c946598dd16cd551e82717bc58bd337f61d9f96a90d1476bff8d693b630de1cdec14afb595e73e9619cf9ea0d54fa7517bd402c45d3226bbec4994049d9bbd3f38191745fefc00a012ff53c74158cc42dddb0168d044b6864c962fc7b720d75d254f097ac392a94b2be148cfeb9a9c799cb2fc5ea8cb0d1f0df14d698deff1cf086d51f6ff627a68fed779a5ba3d8e018f9c513fa06071e3fc26fa037bfc92d109d6b0046f77b690fd479eb78248f2703a8f0b9e44cb52095dc01cbc59df30152e8d8bd22f5c7c12027c8fea34ee877a85346c684c41320ccff1457a53eceed7bf7e64c7097547f85eaa522c8314e9c8b5f549142b81f56278680106fb4704acc02d59514403f9f069eb361e02af4de43a70fa36f7c78b8a446c82f7cf7300ea476fbc13ddcd790585d9c91af0e38d2f2f993ca17c9dfad480ca0c0715aad3a2f0160eaf42824a1928e9c19b33999b1437144bcd44c54ba5705928c5e7272afd7f636ec309681c2f697c1d939c933a7dfe0df33fac0c36c838c943f997ae402b309f06403cb4fcdd8cdeffdf3be74d78bbffc3529b1c1cca4ed8acf0646723de3b50e0132f8607075e4373cb4444647ffde7b24f51ff244027064ca07053f613c8efa10bf959d1b4de505b08b2c9970fa2df4cb2c6321fe69021414392c384f67469f932160b4e6487c317971fce42cd7ce2856187474a9198157f5222a8e3433a0a3a32063153f837eb9cb380edcd9254a3f5ff9f3b0662e95caf3076664043440ea7964dcad7c2a0db3f0d8b0b6a808f1b01f8c1994b0b5f2ef5d318ceab9f63693eef8b290ca7f7ef29d458549cca0241fc607b7524a9ecad51620d9d025bc85ace9ceac257056253bfd46626d4d07c38c8fda41a7a396e8e472a933c04d3f9bf10ef0536769c4cc8f16210ebf6ab573e589ded721a3792ed871f132950082464bf3018fb2e207a752fb7f270487508e4259cc5ca7f193c32a28d45fb69aab962fd4bec61ea3557eab3ebb47704efc3512b1d8cfb27793ec15bc5103eaca5e8957309e11a7035d0e7e686333db48c541f872f5cd42ce78a6657406a371d21bcdc698893d63e0b10fa21daeb5017a7dcfed9efb67e4deb51516a8cf9f74d6d9b3ba63c08a2c941bbe03de3dac1b2d697b77db724b29534a294e0899087e08eb3d6ba49f1215d205718912686a7351b72e03d1aa55ab70b700c53c3ec33df4bb533e0299a7671808de1efa4b90875bb5bb7e3de3fc84daee5cf3a2f8c6b9098b827dea6f29d48e14f6703752704e53ce5b65a1088a5bd4feeb9abdf00ef7e0811ad97f1de01be73acea23dff4bdb2c7abb713d7cbed9e11b6efe4635dea9db318831c6e745f54c8ced826da27a46996767f4703de3a8cd386e833e984fb78331e6e1a9fe578ef67278153e535e790679dd41df12b5438c25215b94efdaa853fd972852a48e442229648ed4d18764b2a8a30ffd1435756a33f668aaea3206ae16ea22926c3796ae0237da692fa7940327da8985e8178b6c0d08d1684444630ea8079c0b0fae8ea43d500f3817d1f3e01a7a51e73d8ea43d100fb8efab735d49a8e32a2a03276a2b70dfb7420f6b887e4ad408457ba159a4bd100d3dd79ed30f666e2c215acae1220f8dacf69c772e9ead2112755c2f2cfc8b108d4622d1c56a95d1fb834622d148b4001d2ef45f64556fd5ad21fa197338d28b3e226995d0fbc79ead31eab8c624a1e7debf0811d7c9cf58a335b65a857bff6dbb11fad1675ce7c918d16fcfe588d4c523edf9873a0e701dd105b427eab6d2b8dad06bb1335a3ba30adce7b135c58fba35f4d9a635d44abaaf2bf7f188fb96742fe2aa55a06815d2fbc71b47c178ff98d32a8b619f17ef7ffd80137d6c6d8dae7e72522a71fd632fd6b5d32aa2d167a26e6b49077178de4a70a039bc2afa4cd471351b69a1d80a95deaba1df46c5d067cedcee250f6b09fd94a8a417755c6174cee327cffc5f74fde385f642f4a14ee4456ac8756ae8575ad47dceaa213e5243216e55d18f8eb4c7ccaafca1eee396882937da8d459479edf9e720aaa1d487d5d08752a1bf3696de42b1e5a8fe21558eda94ff9823fa95987e2f8aad21ae4aa2bed39e3fc8089ce849efad5629f97c72eaf6da4eff70d4c5f293d7121a5b170b04fa116555ff9e0227a22ea1173d897ea11ffd175b37422ffa2cd42580ebee8c514824eae08fba5127ea42a1efef2d01906e7ba19f2bde6d0d752cb3db01b7ee2bd1baafa47edeed801f6f7db148f59ffda3fa5fb1b523d6f8285b63abff02fc4b57aba46120f162ab5cedb0087e493f5d7fec7823c2e4134ba5e636c245659861c1892c4a5851a0df94a931d5baf8fd89d4147f52eda3a5544f09c2460b12393ad063c6899a276e8aac405d8f2119f6e1cf37fd6895bf1581d25ec9d66de58de3e1bee7760cc11b8b26b3ef8d0825aafc7c46bfaef23f1445624106aed704d81917d5c15e7bdedece11045f763fa4ec0cd902ee513c6e6140b0821584ec0733d8699a8cfb12b5af2feb6236163f01f7e01fe336c410f0fd23dc7c03436c857488ad4ed708ccfc990cdc1b18216c085b6699d270d46c5a6a0fa509eea341c39bb2c625ebbe3a5538d1c2dcc75ed77f2bc517448df4fbc1872bc507f7313b1a57f78316042703ee5b1d1c3e2744c11f2a842bc50f0b7df08e6bf9200a3a51a0a93a505481486d56bc3eeec7472a3ffc6dd6a9fc9fb61052edd2606b9a4cabc0ab5b768269da6b7eef180813dcc73995ffe39acacf39ce36cc36959f6b5a4508136995928713c298466dca35dfcd4bed352b3211850e84ecaea8eee650f77951bbfcb051f3e1764d9685a4163838383838383838383838383838383838383838383838383838383838383838520ba9050e0e0e0e0e0e0e0e0e0e0e0e0e0e0e4e5cb8bd4bbfdddd081b854b0c9fe194a5a6eecdcc2bd9b7f0cf64ddf76a6b5eaa9bdaf7b606739e756f476cfc8f57d53f5655874522ec7677d8edce6822bd86aceba27c1c171cbf032e23b09f4a60ef28252eac33b54c8c5e9da9453ef6f231babe7e6aba7ea2d34fcc71330ab21d9aaac65f944fead4ae90074cc3345c33a7974affd0e916813d62fdf4b026883ef57f13fec7fd7e5e0da2519fbfe827237b493f94fad1f8483f93fad1a8dddf744d32ba7efa503e5446fd368bda9fe918c1291184bae8a28b2e86e0bae388483f8f7e25a83a02daf8a9ff87a9657bd083e80bdca8f7f8a91f2605933a628f581c9dd64d3fada34c2dda671a5d530be8359894a3b2873f1da5bd465fb407d1de5a409fd197ec4174fd04e18f98daffde538de0d4e7777300a736eaf96957fcb4af75a696391f269575a616ec3fffa12f9fc71e26957db21ea9aafd5fa48935b5618e9fdef3d3ee7b8fa33cc74ffd73725ca9f45f533fa6c97114e45ca794e339abda9f93e3a84de970ac1c58e3a72470df862a788ff7d47e5884e3cf78971de4a61bf2f9a9692b4c752570cfd5bde1228afa713175a3b80192fe880de1fa46a5aa6d85ce0f54524736080c4cd881144ca831022f1c708e62157b1584c000d4bda902096a56f7860a34defc06f8d07719bbe17677392774b233f661ead6dd00b0838949871c4a30707851421a89b81068d3b20f362f19a1f7c63b2388ff4a3bdd2518a6bb77dcdd5bfaedc77df85f8cfb71df25ba3b6c6f9144216410d3de56b8104208217c28639491210f94524a39a780f3e3f7bffc2f46fed8007e97e849b8667fb92af13fe6fed91e8f2e38bf3f8490e91e01f20c4f8edbfea35121012a3c55d8553873d81ad7af0461450915818d7e27f52b952a76d11c3bc31f0ee1f8bf5d41086119aa7f9430880a79069ac1a77429c824196f2cd90ec131468e4cb7e9742cf46751db8a80111ac13f4884bf8c31ba40c88cc306979cd6e1cc714ebe628c120b6845c78e31c2967072bdbc735e61a093eb929ffc4b9c0a8e17ce667e8394394a553edc28a50c026509062172259123f3c8b629a763638cf4e3016b8c61e0627cd82a33fe56086384d1b1e0384618210f48040260851506d92e71bd6c820d68aafcc8913fca182347c9cc45ae55e417ffe746c4f5f2afed46fcf8d9fc6b639972b64ba41cec31702525178e8910aaa3eb005202d7dfce3f32970f3bc91d476666cac5527b015c897bae0a59ae37759fe94f9ee93fabf2f05f335064710ff74416f744968e0e7cee813a702646057f88afec5004dce3285802a88235e81918838e812b68150c41cb99f8854541158c8958c099a805fc1193481f9f8ca95206fe0755a556f94ebed45ed4e80905dd80539d745c6746241d9d93139d93939393131daa7385134affa4eb48318b56ab4024279d43d15e7cdaf94d7b913ed33fe95cbaff52c9cd1654a492af0bc07f39c410c07f58e5ff62dd872a4709803aab540a00a78a415940f811ee21fed7d5d743796739eada130acac71e94ffbc15aa28287e6488af3c781bd68bdfc5fa1106827b62d0b382569780a74636ec8cf89f77a14620900804c1a2b8c74ff155268861418d3dc3447da2a2f0f01f14c2c3a3fcc73d25d90ba8822ad843bb2800fe8bacab54d2d17f3772f96895eee35f3f1c15e3617c64b5caf590c775fe29fd66fc189d43d1a7f8289de7b4179f87ce8b8c34ce59a512df7196a3982723c59dc85335fab052fa29514fbace6dda2bc9c4b417ffeaba477bb1e7e937e3635b02ae7a425d8af62254b5caf591e5a7f8a33ff96fd651c993de59f1847e339a3c00ba8b46d69bfc1759911559b2878c6915938f2f6572c8e17773803d600c2bfee4fc23cb8442557b11f41f54452c78302cb25ae5f3f1e34ee4c1e69b4c3bb8c43d353e8ceed370e8bed28b6ec755bfdf01bf92fa4556c908aa6afce717518e46e6405c09d6c10e5e37df433c71248b233b75572b1e0664dc5ac86876ee822bd5d92a5df9485dfed9947d55f76db4e7ee0e27079de0b25dd8eca00fa6c29db1ddee1ebba875d1a196c4e6284529af6b72185fa00fa66aeb1036471016846c1b5e4b136938128934912656011d0891d5138d8a33445a059b44be920824d2c41f0ea455aeda11489ffa85b0301a69dca6bda6f127224da4893491c689449acf89d4c41dd4fe0824d2449a0824d6c04b755191b519382c0b3a513461849750858c031c3fe45028f870df247f7bc4cc54cc4c5df3b18e0434525734498ae3faad2d5c6a4a497584765eddfaa9fb6243234c8142f1fe7e26bb9899921fbb9656a596a8cb0158e39b6e304d8db0854bc92f46aa2354210d2261585565b77e6230648b02e533e5655e5e66e9ebeeeeecdcf92fb6fbcc7fed80bb7ebb1cdc5327849a067874e0a555f8f759d5a8cf2fc7a34fcd030e2ed6f1981a00c269edb5e61838d6e163d58b06ba0eb4c7a3bdfe2170dccf8a42c8fce1e5ee94e17fee8bb205b7ef5370fbecf4c2a458972b07e4144e0e16077f73944008739454a6820b443c0341e2e7d89d1a64df0b33756fba30c3aa7be3051a964a54fbab70a20a2295b708b0045a955aaa827f0477918a5405a9e9084ec1e714a42f438cd894124bec4e0a3e3fe42318c74ee534648bf2b1f8af5397dd72c07d1ca795b84b1f7f26d09b3782ba9320a3ee0d153495e3a1a20602a87b83859eaad5bdc1c211362401814020100804e222c48946516b4ffb51c7b5a7c1f6b4adfb600d51d0a68d52703df37ffae3e789b894c8186587e4c1d533d8f967dd29fd2b3e272c9538aee3dc19f1611bb8ebb96a17d81a577f3c2995386eb14f69154e143fe33aadbded451dd7de06dbdb403f5bee0cf61d5c43f3c3ea46354d66177f5f2eadc3f51f733fc7bf3a18791d24bf99170cdc87bb4f73738380dba1af6c0daf7e61179cd8bcba739951c32636e763df0f27b6c240708d715e135e1f4c951b8bb8801042082184d07b4f060d94a9793945a8a802e503b17274562c9e558ea34aa59c524e29a7946352fa41064aa934a71199d50ae302ebd1e19242a984f5f0e41c59b172b01e276e3e3b31427432243fa0d0583d6a8ab4403eb6463b81fb4a2b1b1b1b1b1bac27a6e6e4ac725639ab9c55cecac65170b5b259d9ac6c5636475648b2d859ad38ae84f5e4e4144192a3c33505eec3726a633dadf2816cbe124fceea082ba71404123d6a8a70cb874d1f5101c9f12c66b6c6135ba357abd56ab5c2b8c0daa0c292603d46b09ed5ea488f558ca34a2b47613da59a124de9476906eb59613d2bac6785f5acb09e9549e987124ae917ebc17a5a05088885c310d82accd06f6ab3da6d5871b1e046e0d859bed32866b9b3b4fa392b67ea306bb29156b9a691234ea74e4f81634aa14e9411ce30645b002e7e314697f81046f992bac478c52bc6ef08b93bf237851fb963d9e908d56d67f0c7eeeb4c44f4c78fd445f2c5cc33bafba48bec973c5dc0eddc1a5da18cd2635f4296351e3da91b9148bfd223128934129148a2d188442291482412e947221824926844229148a4116934228d48224d6e43447f128944223dac24128944229144a4d1c8bf089168341a8948a39168441a9146a46efea8e447249188f42fdebf08d28b1722d10bd28b3e7b2112bd10959044a4118944fa4c23914824d2f3c642720d76a40f755fd7d0c7553cd22aa3ae149ffb95ce5c0b75301e76dcef46fa952e29897018bd8031eab6be80f1bcbd8031fa6c242291482212694422bd78585f94fca8e35ac281241a71c9e84b5e885ed0d86acf5f34a22ea41ba41f91442311fd340a5f348c28b2a5c013fb50ae5c29a174d010286b6c0d7781af2354e5c3ab0877d711413be078d5def276471b645b006e09d047286afcad487d568deb977e5bdc7efbec8a40c5bebb1dcd83ebf55176d767f2bf87533e6c807c173857e2d680ae4afa8ed5f8a14ffc39e7dcf75fe919a1ae737835d4a1ecb3d7fe03815a5cf6a0df770165204f0241f46208066edbb6997f6b788d32db87de20e0b86b2130454eb5a95bb76241480476358123ed8180705370f1bfaf2bad626a7f216cb4ca57ffa5c01358c69acc36cbb4ee6a60ff356c71bf33ae5ff1fe6c0900fd7cb8fd4a4b1770fb8f021bb42d00a67280ebe7b36b6783a6a675fd59f735f4791e0cfaeb65e702d211aad783ba8f8b883fe7c72efefc95c636aa83eb473352f9e3c74816cfed547f9446716a87eabfd22a7b6324a7fa0bd1284e456d65eb8f5d7c9456f9b09f2ed8c777195b03beff8cad71bd8ef9986f455c1f5f0a134851e35fd7ef76e3faf891035c25d566ab70e418ab93031f82a68d344ee36088540843448b2f1a7d5ed4b9681a0c91fe855c890ee94730fdd424bafe05aeffcbb13a0fe371f8fe92a35e7c7fa983d1e1d0715d0986c8c2c9414dc2885a63225b1f387fe9c292414ae0e67317f5bb1efbde583049bf79511d2efe37e47f9206f92c3104fe9018638c1f9d0619fc8ccb3e22c84151966dd9cb6cdbb29759c69ffe64d9e7977b17ecf3f97c324dd334ee3faf71bf35c451f89fcfe3d074b87cbe204b0c19a2fde7b74c4ab9659c652c7f2be84b9f6d12d45ba6759f4eeb4abaf89f0c7e3e9f4f0761a761b40408376b4a752e078e8398ea32ee3d73a99c0b9c94d84a9a8163a4d4643e6f901d6897d1a5e72855ffeb356f7f67f1470256f9beb2e14154bff921c5f3289f255649a5945f8ed2b5cd746735d886fbb2fb60490a285ba375002d815b9dfac110a95f8ed52989403ebf366117e937bdfb3ea0aaae510a9b7366c000e4a34148bf4faba0ff3c146d0dc8eab6b17c40bfd21fd08bba0faef40d8d7e5cb56f3ef7b0fb809e631808d183b0d06fbfd14c147f6e447ceab6fdf51908746d2c20102ded87b6078168fc70ddbacfaff8a77d3696c9cccf32e058867e30bc45186249452602f9d7aebca494bfbb527a53adbd8dcd5b64fc3ab414b87eed7b319620da73c710f6c6223f9fcf0fb1f5434dd9bb50501238d38dcfc7ffd0cdde1fa672f76995eb7e13a6ce2e87562fee5c83a7fe74533179ce79c19d9d13c49c6067e30ddc0a5c333333bba7f8c0d07d3033337312df0861844eab9889b33df8d2af60f2f1888e611f186cb7f5817b887fd1e51e30acfb52aa8c3146895d7c75f3bf59d23847a9907a6c4106179ba9ad75b74ccff44ced9b9e29833639194da66a50683262c85aa67e3cae122c719bcc36b3a9609bd966ea76b3cd6c335b6450ab3452e013363644b0b12143361b353f2efee9835968b6caf28ecc22dba9d14405db3123b55ff64308a574e952f63b738d73b74708fd61e7105bd54f4cdd58206cd861abf6a0435e07b9bc22c7ee602bcc084605b6c2562dc8e0166414dcfe5e2234d0e8d0b0610544b8020b76c10b2c19c86031515243136728430f5c108426582ce041cfb44caba0677a2687262373829813c8c87cb0f20521dbc0f6e7ae9f68feae8bbbecd0bb79b7ce44f9104e18618c127e77feb03f76bf7c9be59f5a6b321f0c73c32766fc636d23c4f7241c6f163932775f4af539b15d9b3977e7daec730ff3630717ee43b6d98d0b532faeeb4960186ea290df9d9451ca1d1965f34e6d1ff192dd52ee5c97bce4755d72e792573c4194513aefb4e7b25b76618706394a4eb063042378081c04d1db796369f7d6fc8a31f2d67defa2e97ab6a9cc53573a934f5cde1bbbbbfb252fe9d23bf9170da7fe59dc58fcbb9b6de215635f9208dc437675f00b35ac266ad6dac55573bf2264faedede409031d1a1e7099083649e0becd69820e77c17d5e85bfd56b95eeea55196dc21aaae4a7fe7e03f7791f0c4f460a8cadb113ba5fa113052aa88a2089eea3ba14b10335ca182384d007f711dd4784910cb9e86ad25e3f770db8cfe4f9bf1c28fd2926ad52e2c346d8452470dfae98f610b8efab1018e3c3d40cfb64da56ca3ebb71d864100cc218e0cbe7e646843ffc6b23e2033556e8120ac218384e32b6dd88917e710ba5e5d8e68a5d0fbeb8bbcd15d06152601559733bdc352995607309c7dd809a6bde9e5d1a5c943e350bd3df01077f2ef4de5dc640bb3360904b67070060add9aaf153ac297dcb145b262828b185d20d31892d13131313cca4634bfee8eeee1a21518b456920269120902630e95a038eea2eb57aba914015eca19adcd6581393ff221726b165f29f94e1e1a316ddc796345f4c02824f9a4002913f6a944ef0606262d299989898c49ed88a487a0ba85a9dd832e18107ca6a95c6315b263b00e07118f18055b9504a6294cc9292bfe48c8162f2c138aed4ea1a24ad72d5d67c93ee3379f959067b683006aaa04ac6c819f923722165a40fa9923d6cd8d84e2e095597cac64c88135114cacd171fb96895095b97e4e16d0891713d624c4e442d64d444baa66b3a0bcee4e473781d503168604dab649b13354220706645d9e8645e73ceffff626bce496d0821290f7127ee0d90abc651281fbf3591f4742f3f46e73d2193931b1b42b490ae7154fff8d1351c921e93f64e78785879a09f12f5a29df3b497459f60fcb72d286cda7ba27f38aa6bbafe715147d23532b2a28c3bfc772b26d3a4b1b5c39f7c6cf9f8d12a3b38512a957eb7f4b03369ef8496008043a7b5430eaf4392adc7c4a4db6aeab6ea9043a7d5b45a1729fee883434747077533e79c73ce4be7a44f2468245a6869a147165a528b9b1a3fcb46accb515ffac862287560edaa8cfe6bd37fb2eea72ea8eea82e0e3ad47d66aedbe32801c4f8d297f0935e001def49b43b833fa91a8261e2c6523232d1f8b147aa648f8c7bae8b7b988beb61c73d57c997947c2c3d736445d6d6e01a9394c4e87a0c89f159a91b7db6a693d569a711c4deac149bb345fc8794f6302c0884dee7c3c305997afde8334d8b3107ee5cb308d48146e00a1e81ac9923c5cdb6c1eb1a5d3f8297d49887c73bc2451dbde9e5e57263b946ddaee984762418a3db35c0177d54d80509c0c7e8623e1580cfa416dcb737cc2bcc1754197dfc68c5aa98fee4bf8805fd2f96a1fb2f6a41fa2faaa1c698a4a4a45252faf82393aaf29fd0188f14672a7f00ba8b724b4bbec474db63109f3c07601dbd8e501d99fedb8b3f7a13e500d713fac1bfa88cf6bc1145692f6a5a4403976d1a43b86d2c90e1c30af969f771a5f0daee773bae76bfdb3decb8f6e2d42e11007e6fb8e0c4c73dcefa98e79b25aed32a74a569b715005d497bff1df3704f89d6702a91d7bbded4c1f5f84fbab91e3fedb4f5f8bb8e5b8f9fd495acc71fa32b495ef93e6a0c1243d50d55500555188641132ac2933779de5876f867204e3e3edd1afcf1795815fa71d6175c7d51aa2f7ef7c5d3936eb707f85717802e46074f3a10124c1de402b7930b42304164a567caa78012ca20c0f777223e005d52580df137d2b79938d121dc485d9a0a1cbff7ee429a837bd4c06708d2bbddbbbb1d6c0f42da4050be097fbbee3b0f030169b4611fc3d6601a8fb033fcbd08e7a9a952e5dcd060c5c420e1ef282ca667b0ae91887114b79ce5ac5289e3660df771ab5b8ec21ee6744fa7b016ccf93cac933d7ef2bf5a8eba54df5fadeb6ae9f0459bea525c578d17e1a20d037169b13df8fbc7236c8d2b0d3bc3df5b3be30c9cec71947b89f9a3eca90ea93fb77c9950bfaf49c24fdca9c99a4f704ffc3ee6854c3d89b39b6ec0aaaacc5aabec8043034f850f51c0f57f5fdae8eeb03339a0fd254dc24fcc3da9e69e3a13e5bce4e7023dc698853967838260d85c438cf4ba8848c018a2112f82f2f94d128eba58fca3f26bc051dcf694549579a632dd229c8908ea02dbdb9b56f13f5277c0ba03caeab46bb43027c73f6affd5752a935a128ef214ffe8a7a1a9a92152bbdda67667b2658382ccd4a42f4ba42eea337eeaa951004c7529fd26de60593d76c650bf4f523f1958d48fc6156ea8f55b2978eab73a3c24a8dfaeaa17c006333c4d38210a417090f22bae40c3b55d5491831d2ce10636986295f24f71d40198800522ac1854710234a4fc6d380a035ac0420a6f48c285234a48f9b2bcba375744e10a9b19c44b07c9dd94827b17f89221847ec50e42b83b6085bde3402022447b372c242a30e3440e1d2e92701f11a8693972fdfcfd6e729e05676301add23488f63c8fc60f8f42840dcdc58f36703426b03fb6c6d69beeee1b1a2b6ea3bdb99a70065e819bb9bd3b8661b80e23f4aacd6cc1bbfb2bb73663c58523d2f5121a2364fcdd9f57bb467e538cb0bbbbbbbbbbfb23e4feeeefee8d8577066f3788e9a2b41744fe3b4a528e4d7e6aac0422a8960e7286b8f5ba2e79c98e736a4840798e2b95febddd1b1b2b7e7226384f46ab343569cf4be00c14c29cb01d093b9891e1a13893fef5187edc97cc5f0ed8cd3599fff0ae83a38555ad22338108788fea70e587105e04879ffc71f480d368e84cc782fb68300d723595d19ea32e5af28a5242c3868c48ddcfba8705b4b7fd485460773fc7ee27b1acaacb3eea368e56d99a96dd2375998820d7af38eaa2291d447bfb5346abbc1545a85fa96ea86e143760435deac244ae7632c8c80cb770a2eecd16327500756fd4e0853ab52d5a5be8d40c6ad716b518b3eb62c056783160ab8c733edc1a2ba194df3f3bfee49a3157d38daefd1cb0004cddbad20d907fdd8851635d148732d916375b0881f0e17ff167f4818b91b3abc37ea2d4ebf3b18b117f88f86909e0ffe05f0fb704347cf9572402a54a94ca907a113817fea6afb090e131c2d35a09a9020a4ea4cacf4c38b2354dfa6282ff9f7f99afbd119b2abd70fe30a94ff1d357f9da636fc4a630faa2a57c5ce8bf9498da94f6d2041f879fe40e233665437e466152ffd1a97252534bf6f333aaba3efb498764209a9a9a2430fff32dd86fdfbfd197214d5be67fe80ba7e6b737919a6ee0b8a809c7f5a696ec9f53beb1c0efcd019bca5e87671dc7f8493e2cc2394d95ff4ee32813fccc6b1cf579d01fb17d4695c89418d292fd067a25b6ff5053ffa63ebf2950974407b38eb70eb427b19fda87be7b64bf7d8fcf83de043ff43029add3b487af85e80b8832113fc9fffccb46d74f59d6d198e06b0f93aa31416a7240f69f6fc9fef33204d296cf6bf465a6caff5056f949fecbfa69539f0ef84932e576067cd1ce808fcdfd6f7b9c485d1e96c060b8b12e643b74701755d5cf57176f50d5ab0aeef3a69fb606a8c64f597114f632ce6f3a7538ed4d4e4d4e5f86b8a4dff2386dc990f0533f679d691fa463da076df62d9fcf7e3fcb1e445f52fc14ff65fdf4a131f3769476c67f3e5b3fb14633fae94c2dd97f3ea39f4eee97e6c7616b44a72e9ae2a79d30dd71c88c43f837fbac9f64cfd4f9d75758647ed699e4c3a4bac74d92e2e8d13c7e9a0f9352d5f91f1c709bfa7cc94ff387b4f4632dd87fe8cbf4d37cac69f3fca6e6836eb84d3535b560df8f7dffa64c927aedcddf5a43a83802126654aa548a9fe6e7b5410bf5e3eaa86e1438a041fd9aa77bfc349ba7ce38e367c8aecf3ab5af4dceb96d2cc551f3d371ead3615d3cc26d35e1e8d1cf2faa5c4df15fb4ff7ca42dd84be62c387af4f8bc466f6a0fec33bae2a7ebb1eed3a598e2670f937ab9fe434d919a1cf079ec5b3e8f7d7c8cbe0c89b405fb0ca39c9fae7fb9feda14c68263fae94ab910386e67c417ed8c38fd143fc270fb150c845499bc967d543effcdc7b2d969f3b5a9b1c6f49bda639af69af69fee83997163d11ac03f7fa5b1cfb40ed60cbbb0bfb05fe95ded319a5d0f7b63b976bb312bd09e34e1987e928fa33df95b9d08970445a23df9d10a5cffb7ac6d4517ec9752b7a555b4f5fab93df5afe7a8943df5afacdb58008e56991b3bb85edfd44f0395218454c74b6538866cc73e8f59f9a6c6e7ce44c4fef55dbdebca302c3bd1a8e9a7c8406a2cf929fe9c1c575a957655dad5ae56c6671a4731903ec54742c8e46689fb92f7295efd4a5f4afd4afca3c6ff68d4af5463c9bd141a3711f05374221cdb3091f6a215b8c837918acd22090b8ca40008415e502306213c21c60a16d44f136086b821890c7c9821045604b1220d3135caa4a21544b874a87bc363534b756fc2d0831e3b4c10c21590482c3026a0010d2128e121020f0d2aa9ee0d0f0a9ae005261c108434b05c5005153cc105613002c6bf25beffbed397214b5bfc217d81ffe20f2393390afbfd4c467bfe5eddd4dc54b62e2a69cf247f9b208323159a244d40139ad0a9f15784e0a2fa6be0a5517e7363c54ef594239efab84e7dcbaa3da04aa67ecbd36363a9542a556ac8de884148fd1689104d00e984f8014527c48f9bf6b6d268951f5a65c150fd0bf50ba27a132bcd29ac9b5d07b928e727f7d46e26ed39abbd9d81ed53641cffd7ef51a67df89be2b7e128d3529303e2cb3fc21f5225e0fb4baac49016f82e5f09ff484dfb9b8abfa919bb1aeeb7ba376f78426dfa7151e0a005157a77a7209b0f43249eeca8c48cd675492d19a211110000008315002028100a078422b1603c0f967e14800c8ba24e624c1688a3208751180431c618638c210001030c01326434330a002cdca3028ca454a5406ce9777760ab5ebedc30810a561a165ce384685c5fb13399262e87c91ca87e3c2c7df2f613344a82966d26bf6eebae4dfafbb736ad045abb960f1aa6197139419ab9999a0706bc0cdff94b70791574bbf614e759d1043f31885e58be9526becdcddce70d9aa767d1be9eb2fc3a1fb893db19b0cdcecc9ed6d38bfb1bf3eaa1f713d08693d69952dee28cd202efa4a9792c32b8e0b20bec960426c3d2a29fbfed7c59adb411e2a42e2c1ef3f1724b596d7fd3074623e739f4eff5da143e890c16d54f899b753c80036caa52e2a620dbc9349ea0223e7236ea603f5ff3185b737d5009410972a2bcd13b0215e4a4596c6acb628b23c3b10526c8644690190b2fe00b83f62d4a99d3d8c36e06b8bebfae572fae066eed786d3c27cd63ae68353bbc57e8aa8befb95d73d984aba37a6c31dc19ca94fb014704e6f774539cba653821427ea2d4ccc13ecafcc6f85e03c254c514612714499bf58b276e0d90a0e55c9db8329151af5b7c7b31959ed5f418c24daa8331ee2926abd20a43a424e87a65aeb1e13dd231d8d92489e1707723448007c2d2649d231f0cc16f84faa4bbf1a9c207b0ca50daf22a805527128685489e8709b9094f56e01b354514b6550f361c81d64b21fe2094bce6c83c7c4b21ee8726b909dc8d23c4281f191da64b04aeaee4b504ca5704b3fb5aeec214cae2d2e1bd1811942895ebcf9ec8a354fbf747efe81679abf85889c7200bb3505e636082aa8a6f773a1ff661c30c52b8db9dd9c9da991342db7a0eb2fb0ec9ae7ce96ef84cccf5ed65e51f15b2cccaa099ac801891e41520dc2dd65e7971aee3a40358607260dd8c0c8be7bf13e48743ead76c863d1d62cd3ce4c0064ddd31281874361ff48f880eda869fc439206ef314f578cd215620e9319ec85e84bd6c8e6d2437cc82f1702b16a1ae26a0dc4efcac66b66a475970412a7e144d5a7a632f7006bea8ee92611c19024634fc55214a1ebae2b21446fed34c9c908c2a23493150f675a73b31250af0a170e1225f4329a0f31bda78bf37fdd31bf5f475bfcae406970529f7c838c7692d9e16401f526627b5f6f84ab0c189aa3611d31fb0e61d4039171a0661cdd77489e31396f973b59f75f6e18699af11e573eb2d0d243d020d7c7b2256a3cbd94212429d96535018372bf65a1c423dde625de5e6f8d9ba483ef5f83b46a1ed9569e3f4112ccb3c56740e2cb388640027a44de504a34c8ca71786d47d6ab66450c669ba7952a2d503b18389704b90a51dee7b3cdea358f4d0597dc04f980be9389abaa4c5c7923c9e90770b918ace7df80020c5151caaa7d7add720a27f3647cb6ad9aa81bde715a49e2a85e80f146f364331f9818ea4e914fbc8d073d1bf2bbc11dcfb10f20f82438425cdfb07e4b7ea704967d1609ae7a63ae5df9ad1a0a6246f8c133b9d984016ef997d62b54841558889e9eacf87c1bc3bdc256045ca3288091363b3dd7b299ba3427bf1a21f3a7806724c2ebbd4206d40b7146d0463c11b481a1a629a8e968ca89a857ab055564c29160bd275623db0b72932c45c25c5eb0eb4b29800a97333d8b00061addd613a0a35b391973a3c2d27de2e72688cc260a4313e4c2f62293e5b6bdbf27dbffb960918c9d4248dbc234c108187c0c1c32e157ef6268ecf068f74493c0d7d30b1eec33b0a1448a75958b9765ed6ff156fdd8cd604ec06f2c00b6ec1f23cc7f2aef524c13ca3c9a69f9c0ed1a39137d91501163c703c99687dec070ae04fcc9f6df92a5f760a60a3754610afc559d094600b0b9027888e8067a98e8767a00d4a39726321d8f30482f7e5cf32a26cc3d0648e89a8ee7f30c4a5ef0355084ee724a1883611408d35daebd733a10b4a4ae21c47e5f8d1870e36968fa06cf128f674aaa3b3197991b38ffe840b5430e898d74170992b4bda4892288c4b2ccc10d10a411b56887e207d686902dfdfdcd0b84bf40fcf82df179d106cec0decb32f4816d2403b5848c6d99d1dca45ce35ecd505867e8ae9ac62d2ebfcdce70e9b4b9f3f8e631347759135a442eac3770056da4c2cb3a595a2ab81e8a44f6fbf5179c6fbe24d35dcb729c2714fd704caa8efab69c2a782d9a56287e7994b62fddf90b066ca4f81b722c493f9d2cf647ca0c9e364c601c7afe882bc3deb2b7841d51a62d12f8574a828038567fe2bd4e3c970d7804b270383960eed445a5191cce09c421612c685c3b2988803c368c795a2590d9c5541f4c3299ab5d5aa3123835c0117ee374121dca8cac9556eff0c77623abe68c9d5212e88eb252ba5f788568ca5f6658c53cf84820ea04ba88440ab841ca2d9e4a01ef1f8c4e305fd82ec6ad4c8dd4fe5ee938407eaf4943ec37a5d24eff552fdf65a1b7a072e3b8197e0935c8f14d8ba9d6ca077803e5d499ab0f39ff14174cd7a183d2da95092fc0cdd3e22b31870c3765340584dc5f0065a177cc75144b40591fc6fc0e0ea3de14b4c35e848df8d9cf9db41d7fbf3a4735117a554927f812a90ee6079cbdf49554825f9528160445dcd25e2abf5b1191bf0492785065ba2b6d25e8dd6dd060895f1ef536dbec55b7ab50585ea3f032ac4a0914608ba170a3d7715b33183a16c4f2985d40a7a911620fcad4a067d88b37a660d158f72aecf5d4f94619828af95b3ffde2d10ead3aa224ad5ee8f08613423e7fd6a7d7c0c3e232dffb7369f0ff24b7360b7279c8172c02a436e83c66443df3140e1095845f1e82740e388eaa851b7a8042fee8f46ce995119807b6adaa980b61753dc81f22b27f240153ed2b91a07bc14c32af15df46c034314b85685f3d18f86711a811074099f866a21ff40b496d36080a48cd38bf7146d9c2f1ab9381ca903e0c893052a13b21fd7e9adb2b09846472f992aba2ea28a017e060e64e4f9d4e006867ddd7303f1d93affddc03e441c77cc6165bb6ca0c1bf0f4e6730b96265178ae2a5c9a9921e8462fd6d54bf35108b8292b12a541216c4ac01aff24e6026fd8f8493be52acd4f46c81dfc0e914f1a76574b8180b41d667e6e68579859b9f23931b645430b1859fa10aa852e757729919132dd37ca9a108a8d5de92bda146e8d53c4f5d5e121b5e6a6a149b20c62027d8cd684ea0f185d4c6122bf9ecfc07df3d07c553997fe1485374f7e15e95a6f0f94f3307a287edc2365dd17ce187711f7894a41a1f2a9055e091a67231fd03c1861d8a8dee0507fd08c4dc6d9918572d7f251f9e4c44c173fbea547b96913c812b788a4d3d50048a5684ba7d0c50f423fa266a6de476a690665bc5fce28e3705d4ae35b387e6d18b614016188a355ba3d2f7fa3a42274810b6fc8938d0020b5b7e06435c4af2b65b63273f2692dc285f895d20c53e0ac1e568b07039a3ae5e1ef72079da3c9bc4b91ef7bb1c723736ae32e075fd7976282227b0e02e98c4363055e7a6c84db11af6ac7b741ba7387e0370ccf07bdadc347eb59d044e3d5d2215fd06969a29a4c39620270db8959f76e02f094fb7e0220d859b20aff12256fd549ead3288a68d5213470c1e9605f295d42b396a8eb6fecbebe16b6e79ed408d90530330fd526e422777196c4e4c739697a33bdd0afa088de108679ef90172baa65c7339d2bf6d7d9e4afdd14669942bb865018946b15c806f20f0028367a8662000e7dc22f1729167a68626a183027c939e7f355bb45a3435c11f8796aaabb59782c29c530b89a4037d2530b8416789fedec275612cd244b2a36c4b8f2efc02f61fab14c68123452c4fb5b208ad3875f34a2a7cc3ecc24987a8ecd30737a3af5fa387d1a91ef5198c68f7848736d30c2901fadd421ec7035ebe8866c8747a32ad2d696540d0926b7ad1bb7ee4580edc4c55d13e9bf9221a04192a8d6cada10db17d9eea029ca8d5ca57c058b926a9a5ff77f9778025785889ace213b75effcef162c0596f11db8f9e8bf71c2e1856c17d927f288ec8234767a937d66e0093e6f19028c21788396eb81d1889079b4ddcaca254614c85bc007ee888c47cbab5173ca3ea292716633c8ceb13832240c645cac81d341e177a538546c016d8ca1831d23fa78be6c251e78a2d68a96cf16c251e0a4fe7a26ec42e681c2f8b696b2b6fb7f4dae377bd6ce90c62e8d8a796357e9cb037dc0a87eb877be7399b034fac59ba9364ca2da065dc32dc4fea54e89642f3244366e89f1c1f4ba5b63472be3e710d1b6be3ab46cec50c0fe6621e5bbe705aa2c37e20cce8fdf2bc47c5a0d0728f21ee88cf34c9d80f86a18b83cdd4bf76416ba4c673bc0fdd5417add731d869ada93a5e4a527881b1f00473cbaf35867061bef61de38d762c028fc9ac5f3480be360000a36538dc9573c1f5a837501073b790c3b601e70e53ed661b2b44834daad3ff9d97c5a0fbad882ddb7ce44690e9edc2a510ff71700b59334cc816b4f7eb34c73eb26dd0258a0d4c4f0a341584e6eed8988d98b374b77b9f210e2a68b5454cb1b2073b36327059e6aa37a8eae1f29d1f857246e8ef862a12258b52c3e3790e504c324ee8465bd9928586f25a0f690b275b4ecf0fedf9139f4b507e3de3d71f4afb40f824a43aa6c779c08a0cf2eaf3078ce982c39477d29e86801603a4bd6b1c6d5db10edbf143acfe63267afa65829e4a4c0e71bbdd63276b41743efaa8ea3d92f1bfb42bf228f13209d334c848e08c26381c0442122f15272f3c6eaecc38205c0c5a3288ed98c15ba08c9dbb99a95df0953d574cb3ac183d96b0c8c34d5417214c1e512806f81a82f1970d6c761838a69c7a460e85609e3702e07c796e3a91eb40864c48f8b2cbb55a6542c05a697b9b6e42253c5d2d1f6264a89b84a60a02bb92cf7a17a0c661306015c373dd3be15bc3d031c4c53db153c4214269ca63d00810aa7f3f17fc063f00df07c9550b268925eb45722b7be3dcae5f051d34eac088c0f8c6e30c17c19ebc0b60f72e24625032e960e5c819482c3f969e07547bfb91df667eff84c5c4d71409f59f1a6cce3e6f3aec87c8f9eb313aa698858d0ea6049a1907ece15a6b272ebda91ff5da7f60e5faf91747d2aab3f933d449e40c07a0fe8a50d767103df46f16b964a93f5e6d84d540715c0b3a969c74ac4bbe31cd8b408914aa1a6a7eff44fd73b850de5aa1a75a7081294e9d9d0212a710c5b0c1896c717ad13f95989de893f682fdab997bbc1a79508239ee3fc022babdb6e7fc252930199e13fc5326ce73c4f554e0e82e1765c0a6880d275660162ae3df453617b28eb1ecaa059d825a0a7a769e785c043c8cb72083dbafdb8e4073093c528e5b24a0b93ec823ebf0abb4c25cebe910cc1c55b9a78c3ab5eb3b7593a077b436aee3e77de16361a4248a2e43128ae396659bef42127d2cd363dd18c33ad891a05e04b0656c9b97ec602cfcb861a5abb87c6cd765591399f9603bf88ab20438d610a0b3096cb82626c75dd6e35e96205d8d2ed16fb3b2321a367d2e84b045817b2c7f70d1b7caabd32661fed0e14cf307986838dfe6f8ed5ba6cbbf96ce0988870b7e2a8b806783a26bc955b11317c8e8e6930e13847e1a4e89ce5c34073c15ce3a57fdb04082cb30dafb177dc62c5390c9169f7735d731069030d587e28f0b97939935b93e7188775d9baebc21f5cc071345ba5aec80927e634d1588289fdd8503714bd3fd702e5ff2c7a7ab92b129f7168f8a289857dae9143e914e36173c730cb7bcbd20c826b1c88c9ce058a21247f75a3da7dc10b2176b673bddd0d2152b31b003b6e20f65d3ef2536cb54f33c79dc74d116374a0dfde884ccbbdbf6209e25c19dc5e9f1a210f2e1f49a99cbca4a3ab8ff9b960e89b3dc89c69c3977d921237caeb5c54b2e976199cb86c071d9d292e9f1971ee7d6f756e74cb2b5bc4d5fd0e89d22080b247a8cc74d68e71d9b06688a2fa5510377650143efe49ff7b7d6077eed54d10620d03f9582bc2db9d6c90b2a8591c05b1f7ef130ea0be13445c9c87c5f51066334ae281d99f13864d75b572f9744a61ba712087dca3764210d0ec7c7d4eb30d7f110a8e9b6d9afe12e0b5765dd8203dbda561d26c7d6509a304aa61a2ac8a1b4884849946336d1839dee4827cb9c90b7b1d7caf342bfe5576193484f47928e403398b3b31b07557b8c9a694647c740860a67f712d84bc451f8d562dce695ac17de699f2fbaf52d0e53bd9479b867b72411ec0a0d90fd1b92aefff39f181514e25770bc40707203e17a24d083a0cad0f6f8d5cf8d0bddca38fc1b7b547d43635e36f3280287c818bc984f0a9ad82cee04939fe973ac5bc62c6320ae4762c6d4bb067c15e97afc748d8e46ce889f662f1a1ccdcf5a4fc4955df8e92dbfc6f5b830820eaa0b24ad786770e88babee0ddaf0708d5020d488ea3e827f30518b1a6fc9356187eed9c107e2c2096ad7bf46f412f09c172f926480541bcd64458e9c00d21593b5ec624441cb7137f9a5e14a7e0e9b53efafbaddb65e7b47784170e3f20d9ad3702302b0af356b8790da6f21f1d8383aa7070675c342589671ac9cc631dbe859ca1167f90e7b82651cd703a0ea8b88fd7e62d3289b5b5780ed4651c4630a53dfb9559c011e852b25f98dd84250c8cda511922237868bf5baa4e4b9561f839ef34c9639289807749ff0e58c98d40f4a5a7c23a90a70dc6de53e56aac756834cf9578102017c035b64f23470be81a6829378c4de4d825cf3b07a1cdd0fc5243a22805e275c132296fd713dcdd8acaac205abb71eacc09ea70f26d4c9871e022a50f96964622209bc71a6bfb3c4a1cee6e509d24d881f37738080344aebfa71b68c01709d9200fd53070425afdadd2feba07661a923f49404e375f04e7c34c0829fde735864a47dbf2da18972ef250fabccad68f627bbc065422512d39af62e006edc34b53be112af6d75a7ac2f7a8dc712b7a0acdeee5d341730685515c8a9fc7099baecc8a7f25517a26f5f7d36492e860e7aeec8c72d2bd4a410c31cb0392ed1bcb6c528401bd402683b142c9c4a304503c6ab4fcd1a6f584c12c9ea28a360c968f817053406b4a27fbbb7584d0a04d0b49721c4fc2b60499e95634b65e11aaef0767aa33cd49db64ec3385e207e23b1fad0787cfa86e6f6f1655319de1874f8cb64a5c33ccecbf196f9c200fdf9e2f333bad10fa9c5033dd0a424c86703c5590fcc7c171316ef2bf37c427a341a3aa07b70864df8cbbb48355b5b122667f9bb40d2088d607b60a5c77908530bbf274d54815afad32beea24517319486abbfb1276a11f79c9d421b7b554ed2fd19e97cda213041a35ce22315284cb671d4b8df46844e59e532369b53d7bd1994a721d51850fa7899bbeffa186f2c03ce13096360bf6d09e5d12b96baca44e2726623cc5fbae355e310e8b6cca484e5dca84c454b81ac5a412fac7d0d1073ea6e88ab33c95365bf8240a10cd499bdd5024b7a9bd5b692692fd0a8ad448679feb66bcae0cbc2bed332b13a2600f183f7dde18882d46ec6329eee9494aed5e03c09ae99b03685fad1d3148344aef569cbcbb4986bb35871099d34949ff5252d6526a63d456ac32663585ffd68c4ed8878eacd7aea58d1452e6b836ab3ccaada419810c4e39a5dc67745c65172cbe1b43de449d7095bfb62a454a432e2804f2b41103698677b1203677d6abb1147ac6851d2df2867ca7aba65d5e4a1f93a0185984b35136b425106ce53a13e22954bd2632bd6a399940425e8191c4068be20682329f57329996d719c5ad4488dbdbc75c80d0b9028306ac624d3aade32e420e2e54efb8577b915806b407341eb53c53016310b7e3c415797d41302432b4bd41255a1ad901340c848dbe0fa22fb6bb871a15e052e87ced6c79443421cc836f690f634a20c0b7fd9eb779c5cba326efb597649eb8222e82e7b18a2dc28ede5afc36c9295540b2275a08d278572da90b059a0da7f6152a71226f92f4c01216b1cd3209d42cfe0c77b74c6209af79eb7b7a782e4cf1485277d18b1a09bd386799aa36a23ac3784cb1c25248a95a4d46650ad761d343402b6e0121768379390736f2992394ab3bc4e08fd258f27354749aac390ca23a37f1bd5618c498889b05a8b9862ba2949520ec3da248a93a04387e7f5781ea63bced47a34e3aaf73ae8d8299ca3f848293dccc358fa8f1f64c35a34bfbbfc0f26924b9544668e758feead2e28ba13c46432cb0e0bc37cf8a66efea3bfc91d87acf15884931926b4f7fc24c76470f10bd174cf44068f3475bb854caa92e05830a41fc3230750950031366a2fc5a21f557d2f35f9e95a16ff4433768cabcb649bf46cfa665e95338e08e5efd3294082f51f8bdc083938664ee328f326063234e9aac2a63e461aff39b6da5ee3908e56f234da357e9ae8d337aa98f742b9c8fcc6fe4044e37b66db95abb8f28a565570001b198c0b1fad40712c4a6a92dd3370da905bbb6be8e32f2d12ccde964543f4d3718fdfc09e68c35c2d02cd11ff581041f883de6bcfe795e226a6c3c4b91932955726514624e35ad4abb619fcf6dd66adee6ef09adfe2e53ac56d31481bf18b45506e894da283eb2d8ee8b0ff726c96aa183759a600cd245ec6d1de859cf4412cde9526f882e18771c70a1e62805bd198c4b90d7b02b893c94203a7e05fe1ac1486cc3e521ded8b84b7e5703818378ba9c36b14fb9ee848233eb862e69514e7398aec864ff49f0c446f1bf96cf138bbd64a515d1f568a9b94b21b24f9b963fd1c9234cf7ba7e23e745a11f5bc4012f989c6c963a7bd0f1beccc3369fdbd02c550e91b992c9a2515ff15a90b26ce83539a28ec272b8835311065a5be18b7e39db462725206716be9162b90caa31fec2261b24a6816d5d660579bdeb36be0fbbd22616831b482e920a900af11623f746dac6e4822ddd389704e4b7def0120d6f7721b2d675c5f2a003ca57839ee477e03ea96b25aa3909d3a35c24fe7c946bfdb5c36946572f4ca4b6a5e8d5bd0dfaef858c623782723299c01afb97ee7cf32d70b83ebb7b58a2b7b4b11545f14a5aa5d97d14012a3014c52f3f3ab2300d77e25f51cff578358df808d812c7316c280e8bd41b8cbf9878ec86f93ea81c588074544eb85d4014799593069272e99292a0b6223b80e8010acf9e14ef53f51f797cb672d83bc9fbecb34dd938d7d98efe0f1f52fae63f3af67970fa91fd0e5e2b20ea05ba40a9fd3f58563a02fe17ff7e5829fd242f838fe7a9fefcbb7266eb1da89261da5551fe67b787cfd89eb58ff35b98ccd8d5a264d698c968da2ee90a515199be8b2ba004a782bd0c38796d268a1fd0b08aa2adba3e1898008280b1efb356893185eb02c8b246c81315f27df0f66c63c02406ab07970e6e65d3fc6dbb510656ec41466892e4d2a74755280216ac9bbd6aa925161f04d0ce6ee0833c6646eddfb915eb62503894b1557ce59f0707cec48948b89665818c54606bca223564e828e0e1733e6c0dae8ce881cc4e2c05f3c61cf85381049d70ced12409e2ce96d99df9359000534ba43dcbcef3e36045072bddfd3e67d518ba83d969ba451fc1ce44df97e4f089617043115d571f95158beff378f211327631dbc342af31c6866d774e4d0d40a0cc011a94a00d2df605cf0d6b5fb0ccff2a90e229296043f977385a075422acca765b4a4b969d4158efec6b40fd8c46fc0635d1dfa091f6c1d4b839bdb83d4c135d5ed4bbc2c6a24938c42ffb7b643faf89eeedd62103a0b56087ed1c98856fa514b14963db925a524eb274dd6a353a91b3f31cbf8df278865943e3263bb5e9c982282078fdab58bd15cedc3baf681707219052b41ac81d6de1457d371bf8301b1cef537b0d8f9e29cffa325534a4b3d62d2a990da6c1e6bfa4b5107fd90d51fc1b03ccc83a4726ba40f6b29ebe5a22ff662d19a15e747f93dbe1a1802e458111e69aff42746839debcbc8b605132d39c1fd7fa069e3f53ede0b0be5ee3213a4f0c505b50016993923d5aa03c430d890ee62ce2bc67069ccecb31c2a9d767a52d589f04882032148b3fc603a520ec59cfc0f3114bf721798605d560ae56bd8b08fc140f56bc1824834fddbf799a3d7f51447b9bab0b530f90812127a09b7dfbf119032d3d125d237d54af119955e2fa04b393fb2ac4516a303cc2b75faaeb58b920c7e7e49eefb5123ab54c0c7c3316cc4b302678519683d237ebd1e1305690cbd8da9012533231d84a82c95c108f1686c3c045596882f780b2e048740ce0f508917c007e30f4865faeeb70661c87c2fafb396aeb6bccb76cd102e3e9ba5b2734977c188c25e87955edb7b4492e59d4702081809f5b508703a8225aa64919f479829521ba3b219bbb17ccbdb36830c0b632497a7b1f84c048487097c5e1d5009ae3c78269969249ce50a9af1e302def9c5236a9334e29cd3bf18b679e7f3e3b73bfe6d227ae74e458c28db991fe916a00bca721c449b7f7ffc85718d3ddda4a3370cdce28b2525aedc46057924cf8ba0d8311f9a75979050f0424c33f15c06c2e6b6643d196bda623fdac389540ef73e49b423eee3ab35b959c49f60fcf3fc5178167156d6adec47fb02296e5e90a37393a6ee7d70cfc94c2a8f2ad671b8c0c8879dac9b0c226e11c36b17851d12454b2c62a7ec9734413e645e51f14236ca1cfb8c9c41b579f8ffbcc9bc4d31817412db15cf5cf89eb8e6ea21053c1f01838849e6d0ea1afb82cfc65c93700ac5ccfc8de2d21de4e23260322fb74e7fd4e6545a9b22296125a35fdb1393d4dac7d3a4a7535d46435a9249ebbee02cfe9202cc1f9c75aeceda666b9047f69b6c97839054eff59dd43c216b9668157d48b77bb43a6b3758f3ebaf5441512dca3aeb7c819db526095154ac39f104223b751372bb92a308292bc560d28a4ec84f8578df0cbfc8e75884342f29045b70c6b7ce1b7306d4cb69cb5fac93c163b92d2727235d0a781b4ea155a7e38422a346e238b608b8b112fa50a54edd932951599ead7d365bc6a065e746ae39edd0f88290d701d296136b4f72ee6721eccef1b8122d5f0e50629b030bb8b5301d9c3e39978d0e0c85b49b21e35587c858e40883fc0cd96c72ef589c375383514962b7ec065a9b12010eddf332c07f238db246063fe87ea55e78dcac9f2b82d2bb52548ec4afcccd78bef8ab1590d095dbb9ac5d82204390c356017313e4aa8477806bbdcfe8ee83f6560b26031a624b4444071214e56d07b7eb8bdf49039e5ac112c27354b338d217885a4551b58935e1722e056588162fc7e45b80d2169b9328a3764336570db53677a9c2e9d013770590da6d0e92e984b51850f74917974352ae6a98455f3af2a4915da4822a6c512ca610eac28834fa9946c457a698a7a2ade6cfa764357189bfd6b13b67023e3ea124cadc17bba327eabd232e044c064802e7965062eeb05210f81864041b87b3b257e8dd30c12834874381c6daeb4f4f9dad96bdba04eb3849b62c4e090ada10b48cdf4ca2ec15ea4742fdf194c7463d6d5724164a255a437db65769947ec7438246596d8e0ccb242db5d5960c872f7b4535ae955258692497f01c5df0366e54cb5e098eaaf772d642a101113a237ecaf66b42895eafe8c29bb2cac7ad57282f4a8f46c82dce72f548614203d7eb15e13818c92c82573c67af572eaf16bb40f967754f0ded32ee74908471ba64747c011e588ae2e19052ba1ba0bd5418e5b87dfb7a8519fdff43e9450fafcc7824aa34c9ff8d38354cfaf07a854c752cae6c3541af576294afe9191666e7e9384d7deed1225e87a07cbdd2d42cc9852d108521a13734ae7bacd4a3993254d25c8d99547a41d9eb95712975cc4af25ecb959c6e28e12bbb91d91a72cdb402d1e30698d404069960e7613349409eec60a70a63214f0863f00232edd30a63f9b49bbb03fdd526ad4a780122587c36bcc978e6220ce066e0ae335e894958c0aa61519a2e0ae01ba7e604ef4e568a5373a6028958168578c62bd6f86603b12773d6a43a5cb48241f8267c3951e8f9acaff4f0e96abc77d616c42d0f5a745d679267f1ecd5abfc26be84358a9fcee018ad5fadae55b26bd20a7c0203283be7ea28e955a45f78e57678eb8eca936e3bac8e7d4028a2d62f129694598241e97d9ff893217bad91384519eb3a5704186d0f7f9829243843e9d7949047f33c35b56892ec75e303bb5078450c418b2fff07069c4aadde03530f2258cf17a29e32b900e6b9cc4696e831958e5744788ef6f731c72b14c47472dd1bda678b96288e57fc58f642d1d1d7088615a07e0805374d3b9b95545ca306d131c110bf2b2d67ce0d67b275568326586b088aff0de427034872f89bc33aa47e05718874c483a9c1bf5a22ad09d658cc4bbc98335ba107b8808dec46132c6db50db4d9b5136e97095903a322c9cd988439259b07accec0fd3c0f969fc55e4d8e6244d54b1a989949fd022725c44c9a779005ee134a11b987411d27ee0f04ea0eaeb44b1955235f185006b8e2a9ed887c41b912a0a1c169029367eec4782b85e002097edd0f70f1b01b2b553dc00122e019e6566a41ab4993c9ae059a8cfa4e23bfba855abf9ac26e5f5aea5a2bbd54ab34f7635265e63b68a9b617377c28cbaa7ac2cfcfaa1a8cfd3d2d12bd21ade97ae8564ad72a4a34d5081d114394e8f99d555101c5a8452f34a7062581ae549be4ef79a7b6bef7ecfd76b2c3ae977c91cd58601a2034905e1cee2b0daa7b23f395a4bcac1a7a1fdccdcc151704ea4e76ccaabad22a4ce3aa75afaac05da6f4d12ec11068954f45772afe2a61f08d9be0c27b7fc132e6e491d572be76198c87b4c8b07fb22b5859160474223415ce1293223f00efd9d0368c298e58fdb74362771f8dc040ebadf150003edc107176ea5644e36d7099195f33b0abbe8c6efc092c0b94550985ecc267f3ebbf89c1bd23b07f883581342ed6c2c9d416ddad039e6628485e8e4782e061424866e089802a42b37aeadd86936fec08acfe58ed871acc3c8d81967b35de87bcc1ca24bae4694e1211a404a0915b1e206b9b50c4662a1140da002327b5b24d6f275618ac177e10dbee1664903f6045baeb68604a0369505e368cce9519257346896078c58be75e1782b4d25351c8963cd140b80677976e25af872b085868e8a527ab330dcda8ff162fb749eac248b6ecdeaaa68da520dd138f2f055117f172e416f7ed2558c9df3177df737ccd5cf161561e31165de4dd8c05a64ca7114cb82046a23849a9cafa36aba7a70eba044a5dd38de351d84308dd279ab65e23dc60e305e5524803ac513a4e9ce783d93e4eb43d15524c8e7e76d1e1511a2433086931ed063812e9040a3024bcd5645e0aeb25a092418e98c22b471fa9a50c922bcc98dea458c1e38ca20cb2bf25cd99e9b1019d6a64e9ff622ec3842e47adca65d61d4019441ceb97ec1a0f0d636eb3cebec1319adb7560ea696590f3d067e7c6ed7b908715ecdc0f4c776e1443827bc89e66d087ec5ec7b6274819f593172c4e23387f4808e465b32fc93cbabb5e95e3adcf8fe72fbcacb6ff8cc25c9503d2a89aa393db0dec2b515a68fb7203f52244a96cc97b20962092355e76807c596102a3f57346cc510d23b1384c6f9530256842693882688fcbbdf74bfe442d01cd35d1635ae230a5f44d79e36f1b5663c0931c8387957118469e79242962b1764db22c6a9f814b90d8b15c53b9fc20c5d54442298df1324502ce73b446794a55447cbb2614b9ceff8e183438b9858959f213b92c1c127d7984b4aec2058a293c18b68f2446c1c425b191c42e193ca3096031ceacee1f386b78d70f5872b6d1ccb3940e676a900bb4c0dc68605cde966c391b2bb218b5d5310d3f0db359040588c1321f1098809a83756e110129a0fee2d5d23946b0203e35adccbfd4484736b85c8478edd053afc573cab7c84a12b32d42a6d2290b933ab22c0b0c05354159be845146550759f5550e55b1c182403176d240477e2994f41d6dde2e6db4c263187b8b2a5e4c26d599dec4559372d617a4e82c6980fc9084d21a519d3dcb2b77911c0ad3f82596ddb13fc37479e22f6c0c7e783a1bf3c6bcbfc6ce930ea656a8564a04187ef43d735e6d9c48d5fa08b1817e18c02524c4ae58f9b38a185d50f8da63309c3ebc3382d1166082d99348ff8de44e6d2d51727fd6b3504ffda229d3bc53bdc9a7a5e052592763fbdf841d44d2ea0f254cbf02502742b44a07da347e083ecc12344d156039a7be08aa18ac58501d91f372680e24c0c3c36d7e10bcd3ff672cd59cd5e8b20769c050e80abccbedd1a7a73ca54b50f2f562b862726cbf1777d86efb8f11b9a3fb3a60536af4ca510ca6ec26e05a44fecbd14b29d82681c521c02b03e120c7e002913250efbdb0a58a0d88b8ff32684df70aaad77e302594f18fb787029169812e0154a7c299e15ac84dcc250f7177f9072b9e80a7428e841b9c53208194a4d37465e7b182cfaefa11c00142a3ba94576b1a22443c4a2b910343699e371d32223880ae79acee51e9e0947318172cb0c6bae4e38963e2d87b8527efdbc1db5f18e9b207a649fbc0bd6946f42a8eaed612fc5dd016b8bc7a15268bda234d9cc4bc2c29071fc7ee3774bbb00f3e00d8f36ec726b10fe755e25acb8fd6206f57856449c532b4a0b40f26af5ba043d039c7951a24063ca0b2b077be36f7817596455cf43399bc57419c76fa436075f448a8929874c2e49ade302c9a41c7ff63d02942fe36d92776eacc168e91ddf61e903fbb725f775121ff38a3bc871634a01175bce9f0c5d154de4368d89b7e82f47542ad03fc068cb3b8780f05124da8a162285ec24f31f7a2ca1b7af0c29a58087ecef6d5c87de9f88479f7929d2a3a5c7775584a7940c82d3f5ee4f8b20721e93d9c837cd6910f8eb3b518042c97927a58af3d70a9fb732dc8b5d4c5ece84805e9753643ccd6206551a8d9359fbac02a05aec3013167126aa3baf0760460162d8275bb84b15ddfa9e7bc8da41af5e9c2bd247d18314d1fae9a32727fcacc081dc1b9c5d0ccc6cc1007422c408c5d5ba52ba189eb07178a4607e9424cfa499b4f418babfc1512547bdd4a41b8e36ab12f710618821f051757ed0934990ebbf492ab6412586dcbd0b6ca5b1b54ef5fababb4ac52b7de20d5f357a26b2901865d2704fa5d922718cd72042f1c5dad33c094a39b0348a3684b56bea06eb233ae8d4ed44ae0fb74dbe4591692661b2f945b50615420850555511e12ea36179a5f1cee00989eaeafd3d6d91b5266e5e2c22a8c7fea05d1db7ff573cd2787351c23f324292a6c48883c8ebcaea85f07fcb06c9470466e503d90f6257be8d836cc35a1163b03f2fe285ce1a4c2d1a8a9850d62e0bf913a9a251b1f1d54723c8a6e52ab34b21420997c685bb71be6506fb7751a00c23015815f5cfa3140626cd605c4c06abf5e647b8454c4967c4220ea9738d664839704e18dbb43d00853682335a67efba36ecac142078f7882bc3fcd528c9021d13d207186c164c516f7a1cf0753cf60919e1ee4891653022086296d605ca0cb9bc161587be9a67a2c8c7dd8aad36198130b9bd7d4bcb6e9998575a43756b0bd4c2baa0c0327cb4a8233f798eab063a87137652c880030c95890ca5a420a96a3083dc496c0589cfdf262914661ab624e588aae0fc568d99c6725b7a0bd633c1aa704fac46d6111ce230baea4252e4f643061973de37787ea51431a4d68a11cf2802617b85d338ecdb93a023a95d6027b9875c62bae838bebd904c3c2a5cc11ef818d8a3dc5f08151a5ae4e3ac62f334352587f51604a949a2c83f60ba9f0c26bed239abaab4a12cf06e9e37a331d7339d62b1e38dc4acd3626aef6c9e8f1c3fc04ac15f0ca3bdb37e246431d69df18c42171a6b29826d1e5427382aae5f95dc5b3867064ba4018b8b8c5b504413658788a9c5df942379319ef30a51729a3018dd9e6b1516b364c3ec175550e5a992f8501b51334933732fd66c1425c6aac812dfe14b9670e78f5a57cf0f9134ab8a6a4c3d0da53b68af5d9bb5d313d8f46b0476b3823a7a3f277660dae3a25b03e0cce34cfed15ee61a45dca0b29feb0733fa8871747f80b89734c9770b8dedcb0ace100d1fc807ebb213d5303e074385b28fa7c26d3f2a24db07244e173ceba69146df7620e8fcd3f0dd9638d4d6cceae47d8cdfbdf808059b0f17abefcb584bb573797eaa87ca630636b4e58430fc1518198feae902d218a3574f978951608e6432a220e06ae0dc31f8a85301b6ae4a722b5961d51e20debfc9025dd3636d123f99735a13b18dc5d558471c9c9ea1075a98c6b3a9ae783c2c715c6cc75e76e9685692f966413994613d4e90348095dfbb3e1442f33fdeba8a643de1945d1ade04b09d15de6d20282740e8b6a784eaae7abd9fdd2468e7ed1e9084cbf358ea92f4a8eacf970174d88d7ec0b1475ad924a8cf8dd467dcc214abe10a69ab0201d7dbf926d0194cbbfcb42149b3b0b8aca34a608a05d6ff40901732f3810bca47be61e4cf77d5af772ca958a7bd37e4d9441a4c1b87a8506316145891989ae21583f5f002e9d8c8f0d0abd736240a06008a0e20c9eb9f60613eee7dd88f2485ab3154ad0971d05a4236637ca85d80ddc2e30ee1aa5baa8d4aafe4d888ea529cb1e3ef6a97078a16d174c8aba24c67d834687b55cd6de80b3bce8ad4a702f6bd82741fb2d44f2e72e84acdf830e4e6fccbbfc5c8d447dea581259913e96b7218eb03b0d8122d820ab7f377ba55cc631be593408509bf400b5041edc1e431f8f5fbc0544b43b822edacef1219dfaeaff8c77f9c6b4e14a799178708a0ac2fc2f071dc573d4cb01c504896b78ccac6fc77d2356a923a98589e4b900fb049d4b9ad21bf3263dc4288592069f43cdf2752c6923863c9e9c6f2d483f26116a49fb6f427548155c3ac1748e0cb6e3f103e96bfe1a2868d15c5861a4fb9e0f273b98348019082ae0dc2ee66fff81db150820280e6cf0b58f1a25288e8ad22f3feef71c5e53f88cd4b3a804fad36cefb3e93d1816e6cfc9ea60b3241cf31d9c6c33e9feb72fc2f5702f8b5e1356b2f66a20f67f44da925f9ca40c82de0bbc3cd14abe5ef802f80726426a9fd91a85593ddc2c4ef38b4fc4d1adef5e2d88ddc21fb4405245fd009e26331245edde962546d167171778fa4ef4f81db3c80527830e904fe0d124e75f6975c57195a4a3b124518afa6c7cb532677c8e3818bde06d4abde9dcaa4e0d8961852f7633c6bebc39fe6f91e3d2277a634c37f46919e1a8be8077cc9ddd8a565635a92b2026ba15efd16b611fe2b860d3b3121edd8f6e664bb5315c70631b71a522c2478f790b7264310f6eccc287209a1b52dd71d1e1a30c723c7c78a7db7f5108910282ec77c2c71d57c158dcf80891ed650a23b0f497dd4ff151602cebaa3ec47e092beaa44aee96f8de11690900ded96ee66208886e8f9c46dc29fe13f52b660607d40d206528371361e30c349e7b843f626add1544d91c856d228125fc56286266ecfffdfd6bebf525addfd6b8fcd8f7ae455db24c2c70e0824ada68a24f2da5730a8663654451b25bd2955151760654d6de62b4989587b316195e9dc1ab4968ee82196767405df2889b87e87c5e327ab013f1422be4b33334df72d7b129b7287f46815eb42e394334cbd7d5174b1eed814e49eeea5c62666185b65f891ae37391d44311748b10c0b204bffae58f2b305b4261a9b5aef7786d793673438b49a1ea1fb8bcacf25c0269d5f025e0048cac4efe48187d80fd807309ce3809d3072a485714487c48074e87fee87d30b20204622d2c3fc6b8d15b37fbd03e856e2fc4e84ffbd81929d569741b62b10be43fbbfc6163f81333f98da6ece4e0d240b137bb52cba4752a468e67f051326d3164301c0301c5be26c7506d085c0be560427ec931f8fd4ea17908776c16501cf9189ae3fbf1fd5d4a965a41c355eb11c5081a0f05620f60a8d2ae1bba7002c3a8b59bd4a84c72ec0143cd3c830275c060810125c77051a60b7acf15c75025aef16a0eaeea720780080f49372d108e18cda3dee5a3a9a05c69984ca5751f1b622e847430661467eedd89668939abe93f6cef6907448e0bff4d3935186637c51e18bc9287fad1590663470cda26188cf5ed745789cdc8accd2ef1a9f6243eb561f5243c26f34d692296f00009ec324a1f2fee47cc88bd12025f3b1ed13d88e1e2f61fda2bd757281e3c9a840c32bda290e6df7f106fb1b1fc12144aadd7eae54c79c7f38a71cb5f62f18b869a8065dcba79191280ec2d3722a9973660b817df81294203988ef422425b52ed344c6c5cb5cdfbee7d2fdcced4d2fe7c41082292228f46cc4936d0af0275ad86f9086b7b4530b99249e555d14c77756b68a1189c6afe63f78b1b13343e34e97b5424ea69df48acc01039aa7e05f258ffd6bf4f0fdf2f9683a9b2f1e0ea3454aa14972fd691cacd11e9357b588039a73e287e8344c815f9dea9d857f107f19da1827a554f43f8d70ef65fc2887166782cd7ccb07e2bdb49c4e6980bce16f99b60ebf20d08fa6394783f6d9b6a59c8db0215276d97a7415fdf5c1e5b08ffe0c1018941fbe5ffc8f29671392ee49a14e5e2d4fbd826ffdfec15befe3264581dc89fbfb7d1ee637fa67762f21f5f2ceb6be508d02ad3b807f8d800e1d231a24d0e3a2896c3160ebd5c831ce41e8998c6256b2ccbaa6bfbd84cc027f0ddddab76bddcfb38d9ef9e421b4182b322f6ffb60919a3f16e2b0742683703d92b2d56b0c9762230bed2421cc96ead2658dae280a7b50ad6e6dadcd19ca999fe75f3b101a5f961956be019a386643cc8c6a48b03cb76629711c59590c61b7496c6fbd1a3bbc4738b421889b2063e9cb9d0c9db7b535d8c9bdb787785f5641d38d7e2ca4567943b0ac26df20ca10d3b8599b4035fb4a8b45015676c13fc472c66ebf0d3498d49f338ea90326f21e6f6a9c56ceecbb4fe67972096598e461bbd2972cd0662c56810e4418994aa63d17cb791e6178208677a6fcffaf8b0b6fb8afad80da2273078b5062c9d5a97b6f522d6e09cac5f5cc4f851817df0d91ae60574e2c1be2f68929c496975b61f57783fb3b1d4d255b8da0f0978e32cb0be04c3f3268f88f62cbe8235c1e98984c87781f03172cd5e7a2e273a243d5bf1c14701c1e7c148aa53b263ff7a43e7394ca8b2948bd5c436bbdc67e4c0246ec43366a5d7548ab7a9be568fba86ad04017177e00e1b27fd748c0ccfb6669646ef815ac447980c809daf8a88ff6cc88118734998a34af3f7af03e8358dd00e84fd0a6dc9057421b48a2ee093d389dbdf9afb058e831d6947f08ba32733341bbdde1e360d224433b82d005686e8a3fa36147d33f30cd68b4e689acde52eff501c03495a6d7963d93e185d5cb688f858934d8b213213c5a0177ae7f91642bf760c89265e9603e081db00f33fd2cfb17c2a6b9876c1dbac59d62cfed7c2c5868ec18d433711b9387c7f9439041a811faae4a61dd5b73c49accd1249dd972b31de6dbfb9de04447fd2dbbb511c87c1f46f86d2abdb5a14192b46f840835a542f356a87c8f42e22985c7a8aae904ccb45801f0c99780dd570beb6e10ec39ee5b8d28e62e48a0f8c61089806ca8cb3b94ff7900b0dbcf640edf627e5e8f2b8d43e138a2f85194f7ac0adeeab6b2b95a74b11670b9d62e33003d3d60664f9edffb2dfdade370a59c99497971b5a0373cc627366ddf78eef3678a3437ce3e18f29c0c5d42ea2a4747b68a242f1c60ff64e36911726646faccab078482e23caa6eec08a979d6684db3b971dfed64d75dc49e412896a54be7fe418bebdd257dd60a99be1d5efc36be1edcedbe5d0704ee1606db7b64d31c6519e2f6a879c809b308828a49b1a59c079c2c7fef98a99bb3189cc936dc76281152182cf7b53a8121ce9eb06271bcca734deb3747b5044f578927fe7bf1c70a6637369457231111bd7b408048c8663031422ef228d0c15656179ada4691e0c317d2cf995bc841e33c1745f83c1372d01cde630df690710d04c865a5071f92ae06086a0783460de518eb0b89601a27d67e2069fe11ea4dc24dddc7a4382589dfce905b60b9978c544529823a0f3d37b6a7afd0b12b072a84b1ec9d984b5afb707b15d60eb147f0563d63da7f84240dbab13af415bc08724c179726b462c2009f47f03fb7099de35ac9bb46f429343ab29ea0399cd1c159fb55103ef8ac1eb040462d114e75bcb1ca5a92c86527a649660802c8f8c0d8952dbba0d3dd66239caafbbf8d38700f3ae427a0c3e800abdb89b08850a8f4977e90f0c283b37c831d929c416cfe8e10f21c62150cc98f8255c82f307bceaf0627174e6160f8e6243b6700b4f9af9e16fb955116a24c2b6e26cd506cf9424586ac223007ac564911db5a07bba42458e2d5bd3e72e9aa92a95465a5ca6b13068465197ef83b3137aaa090f965a59ddedf8127b5e8d812294ac63d3d6ab04b5b578d11559a5f6eea9cf0c412d5e74c1823793510f0e853b46bd88ae0a98e611a0784c0e1bb09fdf0ffbb62dc0617985ef44c6f49563060e47451447b6a494c3f091ed8b9395773428eae1d970cdfc039a4df6fbc1c297a0ea461c71cf798ef916da4ca21daa26f6153baa2bdbabf4dadef5696a68a8408d7bd35d6775a6c407d4cff596fb4167c0fe32998240648726c2957ae8f9133933278e40a511e7be155355b2d31ee02aed1330b9186a66d1cb6c2a11de7ac42e77925d2dfa8032c309a825c4deb3f933730bc42806e4947853556cfb4890612d90fc0a5b62a226cd7f6a5b3d78594c87ca0f98edf8ffa4a9caa330112543cfffd70b120547fa2cb990b28b5a6cf1b34c3b44e68101be11567f293a9a4ef2acdfe87b4d71a512c665c8310c5bbfcd51667c731990a9d1f46f163cf956ba70b6ec015d3253dd1ce6243a2cf568a6cf3e946288458898026bc1dcce47b749633d1b6ec3fdc6d8e06e0ef115f7a070a20dd731bfbc8e22857d5e92986589c994ce24c46798a5d5c6613c9dfad6a2ae22c16a5c6bf7d7b4e53c44455b709e4f4e0ce2908610cc54446e23d0288a65b95a874a24e52a01258eb9b1802ceba81f98d91086c38831b0b4a8570aa2d53307782ce8ae6c37014081ec916429b257f464d8957d70a6511c8c2d9e8b141938d5426ed384d81ba15ff23c714a9eb12965e2cee987c04a2c82029d90f5a3ef42adaa64bd41aac94aa10f91797260a418ef1ceabd3216f3903e77ca96d63b6f4b296b6b357070673bf0ef4a31daf93448eeb60140e18a37b775eddf4c6a1fd9d4488eef2d8c8a622f4e64a8a0d49561fc77d9b42b0319032aab0cd158658b0cd6dfce2d4621b5a13cdf91e10be7ecfb9c40184d257fec25aed33e45adf64a80aa713720ba6124e56cbd7d7984f19796117a3d234bea3fc418535e2cbfde50ac13233ba61eee7629a4604289fc84c3ed02310cfe6dc3723152467c53190709e296eb7fac0a1e57a2346289a1c353d063a6ba4b0a10ceafc70255a85dd17ec6f6fbeef4d861368e255f573d191955d2ab8310ddf96e3d5eb3292eca59f439165fa020fb6a7c6135a67c7f01e2c9aad0b6599e6f6636a9f4fe0ac8a63ba3b8427f237ef06f7adf599561094caf790f534c051142b20e04bfa090ae40b9ebbaa93d0d8044cd39f34141ee5aabe4b035d681ddbbb4e2c9624b77d89a4e934e2c17017c48876bc73182acd2ada2af000b5d190da9a791402148810f71156c8932b045cd4bbc4ea6f21fd8c7048a0059a93ee44ef4bc9a3379b5f6167c8096e0202394af6f16a1b8fc0c0a4b681afccd43931a16398273046d417d6902658a08b8f3d9e3954da0d61bb6f902aec1d8f4afcde57dc497bfb61463b6436107e6cb62dde948c096869ec5ed10d8a6154b68ed6b63c26453f9fab545df74aa9e7c14d98a7e271a580698e8f838b05213e92e1ea9f47badf2c6db4acc3549e610da2bc7d7aaeafe46c15790d9c42f6400a2cf6918f042e153b382bc296e9264f2008ecf11d280fd1b3c412822f5b488a790d24d52c4ff1ad152c75aa22501dd93d560211623a9bd1c5bb03d68ca8b148f3e37b1ef1e0c88c3bb7db35c8ed235db191a58d696f7fb1a7581d53832b3557c8096b8ce89cf802c4575c4666cfea5caac81a02b60bafb151044f2bac7e4f158563a98a02428222d9fae56cce03a4dde61b2eb0b5e1717ac17aaa5bf72b4ebdef5320d59d12e712a3a2e116e7547cbe0ecf53f542f39320e83073172754cbd648c9211ea7e0df2cb04604878b86cad53c7a9b726f4f62957f403f08b6e09a8aaabec407459fb0ed8feaaf73e82ee8b67571327b18a393642060b1fcbddd2b6af132f843114a1c4c9607973c9cf5500e37bc1bde25cf747b1b5d51c80be0eda01b33e591726eb3d038ed2bb9cf34f8ecc7abefed449942644460ac4e6ba426d31533da20638a10fcd458d93bbee1746dac3d83111cd39c1b43409b71a6de205ba1899ef26ebb8226453218b90958b90a8494f31199638fd3802cc3ef072355fbf3042aba2c9a3bfe3f11ebaf9e3fa0e7ade88fecff4221589fa2f7b1175608989f22059400233c8fadf49ebb86ae3414085cb87d11fd57b7fabe4a335c8f03ac79b6b16e19663610d051af4b00d8c3f0c54897d34486633d4be33a80e9e7eb0138b4f83d043f863523c7d428f2f9e8970270a1581ba51b141b5c1b74f617a5384272966ce82ce2e49981829a8e525ea36a26a6ed3ce30edd78640ac96e1e2950dea91389651a97c792c30f0683c04a5cf5bf9b09c4ea5cf4626e797a723e49db8e2a4f37d8d30da413005ddf6c9787f3be196d59b5cf19d1c107a0b77a45f3d4f82edacdd2a4ad805f3048cf75a32cab6f32b4848f50891020b054937f1491a772601a3908207a945ebb2597542ef30051ecd8f0702d799882137172a756511d678ff53a5e628383c0d7c3fbd990c6e61ae8962ea206822f9a39878993282796e73bf11814fa1906895d9cb09eb1dc6b17bc9106b457404a6a3bf087f1f6260c7ce7d582232d54fc54d32e9cfc2ad32559fca4d67928f925b33d7ba05ca0f39fc1df07d40ec1a5fcb43fd93d7e0590fda9fbcc6cff2a0fea46f64960aed5fe3c455b1d6183f791bbff542fd89dbe0ad17ea4fde066fb9507cd236ecadf4b135ff0009a8dc5f594f3aa6731a046cb80eec0d14f4d14c182e23847ebaca0b1ad2120900c493dc1271d3a23a514ca20829f0b2ce6e91a00cd3665854ac7f24fbb714416ee078ce0f5a447398eeacece3dac90a86675048fa9d2d31e89ba37992bd5845281880a181360b33958cd581f681cc110c6611cd949488da1ad29a232227dcc15d11b665cef406c1cb8ccd4a874ff89736c1b10a03cc11c04b07b86c80a15aa34a35825969aa4e489d2d7003e816f0b5b950a130ba04312bb70a595646fd39e4396a0340a19ceba0fd9bad7fff9301259b5f3f627726b21f319dcec111d52eba4efe9d225e118b54b0d855d1e1065c50583b9ab48fa4b35fbfa8d2f003521a150f8418ba08ff5e54c4b441961749b1bd2ea4cee8c7912402fdad826328f89f2f3bcd6887f5a81d449152226e01760d60ea54275cc4cfc3330c007ad73671d1335f2cb358208ea126b3505753ce4de81fc3b046559cb30bbcbd535db8d459d15aae813bcc601b5ed13827b099ad70d9f9230317e96e7a60f3da1c21cd417c7bf026fea325090c8489e2041df0f56acbf508351115e0199b4a55318a4aadbea9f2c24c5caa17a8c09d6d2096c2e00ce255c2e1185b5ce10d182cbd9a066c214a9ae215eb6f24f3ec0fa0ebe7b6020897427a0e40e8b603c4c6376a385b617c3bff7e210e82f7b4f4e9f543d3f2cdca0e3f323ba5cc1d85465babd2f0269c9990f77443ad68947b486676d73a685975e1de16f7a0053b89efb98576ac375cf1f98130c359a9194cd046b8d2a5214e3117b4c910bbe2ce16edf6035aa045e35501a306da018b14f8d53686172537259e3486e1e52ed50c79e9eafa88b47cc46fa108a07e43d741c9f21e557a9fb3da93f5316748144ea732a50c565ee3f752fc993deb74c16bc456bcef9a79f070b8b5d4078102fd183f6a8607ebe20bc05ba2216f787da84cc02f3fdc52cab98e118d1b7cc5de555ca4dce9baa5bd63a4112bbe41071af2d1dc352ab72e78f4c69c24f92c89f965e052a9aca7a44e4f25e26a06d4b643326b9d477b7b1d50f0a8bb6bc4492e1b4475587f70f29d612389cdfcf2b79174fe0531baba2d938eb92b976823cc7d6fdadd25acebf3b60ce37317bb30ebf37f2c3c83f65f52f6586ae298379636761b4baba37a8aaf074bb4bb3ee551effed67fbdfb5b7ff0aa3bd61b1029cf98734b87f7914b56a01ee02b6070df33cecbc6f025e5577ef65a1de78dc2442fcb58e453f3bb2901b087de8f9948d69ae5b9335cf2e8ff1d1c8163f95750179c55030a7d3d6ee1760a6b006d2bae6c227b8ce70446bb4d44a721e36ec0c97e08ca00f71eadaedf42eadc807adf4316162b58d8094f3b3c8f5f250d2636dbe03acd031d3af68b9d89f6466eb998e571af3ef3f6329acd2096a29ad2b1a37cfb7a8d8921b7eb2ea44429b84611692e99f770d456eb55f6e77fdb5d8968e018e2df077cec1748b14a21174e14dd015917d47cebc000aa996f781b1d8233087e046c2407cd45578a1ab5eb91719176be1e4a578644a903a8e62ad50d7b867ff1ec1c120b0f1c89c642d56f28cb1697c4d4829a66dc1ab396b1d493006a718c38c436bd01f510d64a255a31c1d50123bbe9c71791f86ac25307299ad4c83ec275cbf64469da817f0442a5419b828e776a94d95195e87801787512ada2a7a5f0e0c374320e48074c44150f0a685feb8c3586ee8f603bbdc04ce114db9314ea6688f1bc2199ba51c0812307baeff38a42bf0546db4fcc24838f74f697db0b914c47850c8a018a86d8954a915a7a989a1b8ad482182a89626cdc6871e466f5dfabe3a623d2cbb57acdfaba66eccc93eca4614ec36b2d97220f04402d04ab8cc2676b5385033e4d14e9ec8d8223cdc921a1075c66d3f4a97d03497dec34635c9a3d82cfa46f533775fadae01f99b860d1ab196e3bf0815c559841f69c72fb0c29c5773359fed1b3a2269b686eaece59f6b455fccbe80130ecb1790763ee8b8b3623fc8ca6d08a5a92b7a7d7507c5ab04512e4ec44534b0be073974d61c4f740370d689d9dabe97ce0ab95293af8c55eb6babe32c8fa54f46fd27ba9f46cdf86e863e05748e583f0e769f1e2ee8c887794287338d191018aca48f74f356e8b06d51bd2e84301bef48b8a3a1c5bd8afaa8110115fb369bcce253704261d71d8eb4532b8d3d4c30d7747ce8a8c87d3c4d5ec683e139fb00c93ed0ed73b7cc5f89555455d2c3bbebc66d073fd5e7e0876034dc384f91ee1d8fbaf57231dd76117fc8738d96c2ab806f6330fc73ad383781b919a645b5be5dfde0841967a698e8ea880a4c88ea27d42e9aa9cd296ace77f4899532008eed69643c8a2f0fccc5daa2098230595bfa652331ecce24de2155a98ac51fbbcdfdb428632702983acb849cc2a4196192952d64d5b54c19dfd2865e1f16abbccfa5d1ca3bf6bac385e3b2fcab934380104472b45d304431bf153747bc4a30f35625e894f5019c9fe863ecfef2485704a06db6aaf782a88915e47cd787202bd24086783103d36d8057b890b564cbd148c29074c336d2f9210ea56969255498e572624c7258105254a48f183488df8da8cbb93cb1aed724a9f1a5e3483891c0588c19116d725d7caef25fe9a6d653778aee470e0a88003927e65215e2d43dcd09406ac9bdca6659346e3aa080176a9cfd9af4e3d41b442c087e64a8e6f1f0890fb1922af823af5975893f0bcb744e3f24358599037822b2c210b742210c74cf6780632863f06041a0425047a932bb5582018564d0789d1ec3da8683c75b36b974efbe766080a3a1d64b2fa8d8ae58fdc21ea1c80b6e0ee4452e86071aff5265f02ce03d60b8fcff91bffe5c9d9e9f5ba5f0c0ac18b98f7122f8a0d9d5693d69b96b4bda59432a5143f0b310b360be18ae4e143cd0b2b8bfcc2d2f36cd568b7c112b6400593efde300669b72a5971eb31b84d35461490d04114374447c020085c94936abe6d51fbc2ed4198988525d9e83fba0737e8b951c113c4c00213c6028d252b9d456ddf971fcda8bc051c2c90eb1d557ee0c0644c3bd81ed360bb7f2ca38631df0dc6441fad8a71c5929fe645fa31d1e44b4c4c8e5f9816b49802b72fce830f71b5ac057f58df751e5691b5bd7b9a93bfb06edc4222fa165349beb1d6eb49bebec56ddb3c7a45e26a2f084b5f838524715bf4c2d2e6d22379f446ce7935eb1c6d6f8b249fdf2435e91bb24ee23623fd41368c178461c54ba74b99709a15a65fd816825e73ee84907cb921d2b7763a2389e422641bb2df3ef55c82f4e722641be2719fcbe6cb929d6277d95c4658f52faac2f3561a550181112c0446b0fc024e7651fdc31d9242040626ae98b5d58a9247e611e9f3a3617965ef988ddd30db2e5932f106f9a541f667ef766f10f417107446e306535ebc9b3b06dcbeac051a64dfa02695a3a004085810ad0a97e8d9796744d8576815594c60feddb61ae537810699cc4f0719f3ca543f5ae5cff1175654828f2dc9f9d0b915b7604599c2083a526021258a2b1830a5064230620c27ccf082ada05ec0bc503ac01d41b20f5167f47cb8a174803b5c78a0bedf43b758236df36a94886151776dacd1e8db9cc62006f0db09d928fc7e4c5ca41f59180b04d441a049958ced1f0f9acbcf01cbd23ed9b30630337acce0d994501776c6cdc3cc909d6163464f0fdd6269be7145bd7dfda3ee2312f1724e6f88917ef90d117fddc66f276486df8f0908a44ac68e69a4d1bb9b461a2cea3e9a09f5ed209080b81209dcb64a3e738c31f6f62681915d4976a5e6197f91a1e4613144efb0a38b63547f91a19305e8bc65c953a9e475dfeec70195976eea82543e7541b66e875aa3243d970698bc731f4c5da97a359d6f4c712c535797550a514f525129952477b78d6048ad35e19b973cacdf252c568b25cedb4a9f0a07eae4e68c41b6520f92b70073f35c1ad079c97de8be92fb6072528b2cd1ce9e8645c36a39bf90b5925753f28d299229568b2cd12f8b4e5688e228bd500a19c06bda9c33bac72f7d8b34c618a3ec4ca36f88f6d174ca18473d615848e77a90051001f7eda63ef073f472c8f49ffb34bf6d1ca9c47125ee84c434d2909a8f38927f216fce79359ce6bb36d04e48f4ed0b99e6a773a5526469a11462e3352c86e8113393a669f46d9b4671e851cf2728e036aeb0d07c7b900590b2630fdc6ab55aa38f3725472f9d3ff0eddbc8c3424ac9524acdf3c1854591981f6224fee6e0d3b046ce15e1345e8ebc9a912b8145919837126de872a0f966c9b088ef84d8e08e01f1a36bb18bae8d3c2c86885a8c719ba6ed1ba2e96733e3943b25b74ac8f4e8f20bdba377fcead7f5ca78327227e128a5dd0e9cc6f357eae218b5798696386d961a1ca3ca0f4bfc3d5766f3495da33eb5ad3437e746259e5172344d9f9f16847af470cac087db7c5fc2fdc9115d50d74d5ad4f61a4e9d0b492bbed2606f1ebf8a1fa161a938d71d0e9bc9b7cbe1c90296079bbc7ac9b7cbe1e426e7ea69abdbe9f30637f7c01d0d72d77d1ebd88e621e72adbf1a0f2a9a87c49d8f015ee2ba2f9b63fa8e19a67a3c6c7848acab731c5f3f293e1d92313ea86a83fb5d4e136ae58c7cb8eba72f252369442148ee778f8d217923cdc7c88f84ca4ef8f90887e8486155d7a218821c7f9e651732dc6e849d0b0e2970475edf3119fe431994ee7c74474195d2611a527113d89f8d1cc22664f29688f361fd1582a69538bdd1442376d87d6c2e63b9a5d10fad3b9ad04c4a9c784f415816261d14e3b1cdab79e3e92db6cefa6f3ab0c3af9f6386d5c31213d8929a7c7d40656e9946e4cb54b22d7b20aab941a8c9fe4ee6e666fe72f8c00faf6652e42d2c49649e0b88dab1fb8f7b76bc36e2a246200368434bb0518b976e4c3916f42ea6f5f18c46f3ef2c2fa231f7512d1a52741fac220bebdbb202abf39fd766d187977392c8b7acbe24e08fff6db11eaf4c3620486326c9f4f297d72f42450497c49d0c422686f5470db51f0cca93eb76dd338ecf1ecda1eed218f2119421796e5997d4b5f4824e6b5312a9b6e50d9b5d2d76357831dfa10573131d5be6d354a8f52aa7942cc986ddb8df1e60c631ea6c159f4739f481f098bbcb32735b967baa24e2f72e38dec2787de4773a62a2a13d7c61a390f24f7d10468d58e06d90710044201451bd450fafaba0f13589965c239b772e5b72e678d9ce421c169b046df6a4d2a810f0d6e1425a8955283546c0d2eb715450d6eb77e7b5bce6e4f7e5cd435bf2e8513ee91827b78a6b862875f3a7cc349ef96ded751496d22a570a1fc0a991fbf8d54748ca5ad7d34b8ccce140b4f5c3edf2e91c81ba9e4db7d74fcc2c8c0c19731fb859101f4e108e8db6dfcc2ca80f2b12c00c5b2f013a342947d40ddd81492bcffc6a4b44641dfce4a74e29c715229a58c1f2bf18a44dee969d089f494f75d41bf262f5f0db6121d3a70765c5c8472e4988203c713142a074a4b4b1435376ef8b0b014adac48b16123274a8d1a505454708a6acd49723a4931999c741dce935229a786e37c48a428a3118ed0b6e520d17cff07ce94ff8133f4bb4fd470035a2fda8060301fd913cff1e2314a9d35d89a946f077d064f7948a49c06e6942f0dde111a568a4ba59cbdf8a538a666f0d40c1ebd70fb19424de8c14f9be1d3a23498a4861b6c83fdf8bc64dfbefdb42adc80a044f9f60da855e17c456955285d41ad0ab59e17e299fd762dcacdca2c4f0f4cf6131479566601f0859a1219be50d3f9f6172fa44fbe5d73d2ab65b56b3bbd92ac18be50f3f9be50bbc2fb42eae35f38a77cc3f08553ca0b5f487bbe5df842eae4db7fe0dcb48a91f87d1dde0f9c1b254a70745ac547fcbe8bf703470767076727a8556cc4efe7f07ee40409090db58a5bbf8fc3fb913334658aac559bc6efa3bc1f39b2274f727e5ab55bf8fd16ef47ce4f0e941c2851b45ab55af8fd1bde8f285a51d44451036bd516fd3e8bf72307e6e343d4aa45e3f757bc1f39444545b356ed19bf6fc3fb913393222507a8556bc6efd7f07ee400e544c989f2d3aa25fa7d15ef07ce0f14283844adda2cfc7ef57ee010e114e114e5d8b46ab1f0fb27ef478e4d4e929c24b356ed157edfe4fdc0994991d2d3aa9df2fb9df703a7c789131c59abd60abf5ff27ee0c8709ee03cc969b56acbf87dcefb91d3caa9c9a981b56ac9f87d92f70307e6e303d4aa1dfafd91f70307284a149ca0566d157e7ff37ee004e108e108e5b85ab554f87dcdfb91e3ca419283e407ce50ab760a8f33d4e0fe0f9c292bc33f70a62c8f7d1f1dbb01ecc33993be0d7d137db73ebeb618e7d4b4d734a7add34afaa6c1a0f802329f38a1ca2f64d90deb386fdcb6f9425921c9cf57ab16660524df3eaf983dd3c9f715ae781ebfb029453f893a1cf8c8b3039ab53115eaf07c4384895e9ebb870635e49b76c5d4d7af7eddc4150deded8aab54d7f48a868fee748a28ae521f8d5cc335f3154a5775d5215a03ad67865acff7bc422641e26aa11a4a972bae6aa76ea68f8266681b54c0314b593f962eebe9874cd7366edcc8f10ba737a777189dbae749feb66e2ac0a062d687abd476e6f645adf10b23e3c5ec20193a31b52fe5f70b133ae2e72f6ce88a16e3f5db32109ebd2679d4affaa7d56aa180c58ed251faa8e30fb060fc9c6a0c1f2e94282c1fae90cf872bc5860f77ca16714dc8488af0212701fa90957c347dc83b6228f9e832fa2646191fbda25c0a607c74700c9b8f0e3386133e7a8c0f1a7c741da478f1d17918c247f7e1072957f8e84090e0a30701848f4ec414d28049a1f5d1d94505243ec2a850848fce37ad5a581560f0d159a7550b1b52e2e3eb7765261079468d2d99a2868a3d26ae46498a30e5889b2629c881142d50e14d1c63c81f77abd56ad9b0c21b3e3ee9801274b0c41215fc60c808d6181f9b8795e105fa4d8cbadf2c56097247f2c826cf4e7f9e3d6ea1aeacfa87520786460e8f7e634b989857a8aba3b3324c844655f11acece442bd375b342758180ca086ab88a2fcb05022d23b0e12dbefd0daff1b9f450c3599ce53bb2e23554beb6e97cb0c1e22a9f4b0f2a2a2d5fbb5e3a329f30d9fc99b3163b494eda3ca8fa85738868b6628afd5451cedcc79387757a5e3a3c30595cedcdf3d4d179c9590b36816e78643cad1924933f724867cee6cfcbc6c5a978b2862779648f84c5143b8b2765f227a6a4ce0d6f592cdeb256bc65d9f09655c35b968ab72c266222fa436a82db9770fe7c3bc7d18b95894378dee274c9b8070956863feec1f268afad189768a2f95a1eb38a4db5f7ec59e25b06dfced3d5bd96841a7613c5951c92434dd45a1e4ddd356d78267afbf46242b12b0663278c67e2c73fdca3bd4924189800042086185c5c6cd8604d0a357a2887783e44bd9ca2ced6a2c6563b1875bd7062ba620afc9041de2abb1a1059f40b420da74cd61ec36dfe6c27187da102245fa4208d973f2bd32f67e796bfd83176ec187b44e2482412295c7929bf98229136a1faa381e4c3daaf88460dfba5e22a2a2e3dd438d23da8428755c369582a4ec35a719afab9f450dd86dbf88ed860711a167bbf9cc5eb15af5f0d685603c5d4921aca1f4a1457f30c229dd6c9e7505cb1490743e8814d2bae1ad66a45214019824f8bc54e6fe26a7f5a2d9d9862274dd142169eb458cc43ad166b932352470e923f401ff6ebf485548775e26af2c414f3ab96be10c57da1ff7e5f38839e5d9bb36720190f49221d76faea7153060f8bf4855336fac2f9f3ecf227aef80567c08858ec1228aef686670eb9a82c884806f1501ba2d6d4f9b9a1ade709d45f3861cfb3e719e843f963c3ab58a847a861ccb3e7d2830aca6958d573e9a17a0daff11df19862af4ec3d2c8a8d583892976150fa4a286e0330f0ba04cd021f2d02af61e5a75e39955e528877dd316f5c6bb441f79f48dadc0f5dbe570e3bba741be82bda8ceb033cef8fe4219f4fcf3ec5a94ca1179e9d1f3d1aa90dfc7ce4ceff6911359791f5d4d6d0f636ef87c3428c4e6458a683dc9a967d2a28e5c13c248fde9b447a3e5d183c8cab7c7181f5aebd455c9b236ae4214f8dbd60a7a0c0c8c0e514a8d4c7888a9765694f2c3cd4435c8194161c474d05fdc6be0e2a030629b354842a13082695aa0e38228435b08829425ac58831892245f7f63486aa6c0ad4a5d1eebb18ccd0917a3d4e894b163514091d206dcbeaccc3dea10755840abf64335e83aa40f2ad315fdc0988ae0cdf4762101c860fbee7a01303d3730d841143518c21456f41dbd5ad60acfe4e81ed4e6a286a81830dc74883ec455f47844d5c18756f54707a255bb319d9def567886b98fd430c42aa28621d66eaa6b186271b2bb01a42c58532709e937a6e37a1d56267ef4202bd31e9deb4e022eb7eb81590b68508706a3fb2fcc062dd910ed0247f61bbb8902c36fecc6c9f7f4fcc4b8bba506777d78f390d87c24e5e6fbdbb66d73dba67703cc1135e41e19f7b4aa670d3a69a19c9e0fb98767c5fde4bb87741a6cef711255a4bb4069954b8d36840394009eb54a4aaf6a389dd88d946fe729bdbad1629f566d2c67ca77b3a2ac5561f4f8a455dce4db23cf16238f8e09e250ab55f233c20fa4a734514d74d9b4ca457e2df43d6bb03ba8c1f6ca3dd149ab3686039480b85d4b591eed3e5aa2a06a51a4d4b0877c853e3699d2b214732a75023428fb864d49d7f1f272c74bdf4a5cd4fa21f770cfae8c98c0890c0c1b70f1840e6b73c0248a1d54810436316801abe3eeeec618639c5322c3be977b62aa57ca1865e49ef8538ba64879f623cc363076b5ca869110b5c7e836cf5c5a39d220b7be8eddb163b78c2ea99452ca70e54883ecc413277c4ce032418bf727dca2ca8f9bd9175e04fd7640e26702d8c74cd0f3ec47188994a21211574bab50853052bfd130637bec9684bab1269e7cd844539e3deca167df47121491cc6fc50924df44adda981335cfde45d1d5aa8db5a43c4724cfcef16e333790edeb2e870543ee8f9d698b4a3d87520ef129f51ce8d731a99b6b471ae456750fb56a7ee1a6058d547ee4e828a99b6b4ba81cd76444e96d80897e4873b154848b0807d337d1f260975154399a3520b2461f105152df82f08c6c2a3f727a1adc17627a07f8b54f08cd71d03cf91de90644a791dee7bd0d6e17c5150836c56e4465e2994ff0ec31a26247c4f260ffa2c6561335c83e8350431aa2679953d7a34d0d295ab8f98d15dd14b9569e04513ea629b54d83314983b1d4aad6d9e954f4b0baf4681dd52a97e9cb2af98b7cda79f3c495e98bbe0dbac82ff23458b49b278b84d0d12c1686c692adc445182f63934ef1c0a28c5a548f454a7809450d9b87ce6ac8366d53147942a1ce6fe5a7b79ea499b25d10ef1e1ea1df581453befec6a210fa1240f98d2951f221dbc494d4308ffcf61c38c2383238edc4ad698b3abdcb617afd64a74ab557bc22397b8c2826a3d1273b3571689fac03482d35c85e44d368dd2f26a4b486e4a5c776765e7e46fa3d80fa908856abe5ab45e74e3ac7254d6aaeb5fcc2f80d89debfaf695e289d7e520ed5e932fe10d97d834b89c842426361d181960b0956b8fd16b1f8c2074f1ec7ef173ee079ee34436afdab6c38bc6f1f6daa7dabccbeddc6f18b1a03d3604f951f38403308357e4c5c7a98de088e984efd88e6f4738100f5cdb76f041afdb0706171c7c3fce6c654e4a23aac488b0f51310c6e2b5037e6faf98d2d11f43ef88d2d8182afad8a5d52d1e80b46f9d423f5c2c845edefe8f3e321edf187c4ef6fdb261ada6f79979777698c31c6708506d1ab1a533d5badadd5a4969ca380845b0dbab8a6c1f626dc1a925bd8142dd9e28c2424f1e2084c031a040189d46fcc15f4a6dfd8124b44e91bfbd8c2a28c3132c33e72e4c89123f390ee6e9f37dd1ffbf097860b2f5ec658a30bdb95d965181bc094ca2fcb4e084d171bfb8535c7a7992ca770d1654acced3669578ee6b61e4a29378eda7753baabcd4deeaeaa5b70bbbb7b9747b76f37697db7d4994648c0a0e894534251e36f6c899a0d05b57f634b1cf13358c2082e3274464e4e129b2cb22083d8122d9b2aba40810b0b194c4182fec6943883044b299556d8803a911555576a8dc1926ec1092a5ba1c518b339e36374148c4d9015505dc4b2d0c20d747a96a0c33c3a2843d381194b4c07fdc5dd0a1b50274b4c2263dc600945693441050f38063a58d25ee840c809edad889da004a7df98cd18cffdc64e2085145a2b133f89222594242165e8b95169074cdbacff8660dba07810fb257d21e828fe6c4e9f0d7bf2e53f7d7b43831c24a5a396074f5cb50de88e42d9f09c9c3af5b669d59ebc93dce49c33c6cf45fa7e94a6ae76b576d544b952695d7affe685dc0931bdec829cda148ea03f1c41bf4b90f86111bff2fc5c8c4f04e665c943197e0bdb86f3ad576dd3a9f66dfb6483520a75f3eddb1aab15972e879e34228d46fe245f928f9440f22cc56face6c973b1cb41be6c507e9ce45e19823ff9e6b2472653f153e727d99fbc6e2eb7ceb7d76f7eda6248c0be7e75ce86ca0a8bcac9647ad9c1523a79db9baaa8fb9a739d497a91ce4f5ec82f4fdd0e529e3ce97b3a7dbe79dde6a52ec8698b6dc2a2866dd3495a1556afe1ed7dd3aa21d55556c686b7f70956e6e41539551b1e7fa7e227e7ba74f2f6ab77f2ed829c5cc57db40d6fbfd6af86175637b98a37a4fac9b94e48e727277541ea77fa3854c98ce7fce4b5924ed2a9f61a5edbcc2a4b9d6faf520cb903eae4e19041ad3a05f1503ab6ef869d56852737790f39499d51278453d0f3dd0e9d6f5b17e4e49bac3c9bb36c2e541ec9237978be4bcb63aba256d71cd5e1d08faad24fdef6b31372faea9c8a473f56e3e4778cdf18123fcfb9944c56d4905f47c9f482aa39e7c23668847f08a8bd304dda9bc211bcca47b5194d6111bff242f3be204db2c1cde99b3cf96d2c79a10ba4dd6074ea85f32302fef48f613e437cd3aa76de2176d9130411b2f0d30418536041095839f850ca80663cac504e9948927ccf1be68929ee86d5f804ca7704fa9e61a0e77584122b68d282265861f4714dd11fca2437b1e73bc25a7115811d247696fcc8a6b004d6171f46578d17495ee08492a124fc8015461b2fbe084bc801162478028c325861d4f9d887f1159b0421e5db87ba0554b9bd75e24a26f199421380308425a060c13eec970f36c0e9828b2c5c410612acb079bad8620848b280b2240b4d6c5861c39e8b0f5bf6c487fdf3fd61438940e3ac11947c23f96e9befbe71fdd02d9501166403bc1356122d58e2042a1c91451aac2d3e6419d06c68ca12269a8b3656c85734f96e988e8f98628fc0aa460bb2b77f387ae6246ce3e443763d210807453f50a28a2aa48015724b8b0f378ca2156c9104298a9c1063853b8483ff21ae7c708113a1a2a2239258c16a282b8f3eaccc7a4b5a60c511c480020523b0388b5f327ae0832eb65024042e9260710fcd0a9838d9c11831d002a70cd60dbe1d660afdf6085463112a75526713ea64420db9c537375b3dc2773ffd05ac614d47e998a515f0431d32f808c647df6a9220e1630c0533f8e8daaa8621d6ec804c180d8e0bced8420aa6d005175bd8008d9c910cf380a2e6a3475978c34fd99c3f3de607c8b2e93e2c93b2552f4f047d8c2c63d8dc42d5846a589f5d7342d5790eb2f1037bb6b159199e2d0f76ee9b9862b799f56c3c3d30d90fd00f4041331d9bd9c643b3206eb9746c5e37363a3c3d41339b9b9e562dcc356d6e5a1236c1382276c40e0a75722ec2c9b7e7d05c444f11ae27c2444724e1f11b33a2081f63801d797ba39173728993dfd81135fffdc6963cf99895698f6e80dd4aa8988a9d0c2bd339f8110686db7e77a5e2613bd8204c83b1db77c0f0c334d8394c831184f91173830f1d3893b71ff3edd26362cc0d3ebcf674b8c9eb80909c9bcccc614c9b382fd1943893fb88240fd5a0c9634c9e8ec951ee80c8b03ca26b9d0454ba0f0247580a3cacea2777a9618875a486219693ea9f86135e8be96e07edb74112c939ceb70e08d7b9d0101196bee4262ff44c5bd4981141f8ceb76b9347f3ed1989df7d2c495ef2386f739237fde48dda394af32cdd47f4d19bece6a052938cb0eccd2e1023035c7bef6a1a11185f29d476cd99e7e4e189c06c5c6ddab6d58a42357738c8e76f3a7f40bcd9d3923fbdaaeb75e58656edc66440f9cb77dc515f3a45f20e08d82b93771ec28431cfb5872b337d5cd4d57cbb2c3512eedb4e853ca4cd56f2d23a45afd33b9dead1d75734a8036b584b9e5635696d6bbddc7ae670ed73773776490075e4ec1e358faeda341fb91c79238e878fccdd2d69c8c3977e8e7cb4b9ec74d8e76f882402238465e30ed0bce6ed5a58e2469edc3a20be5d34d2134608cb0bc278c1b77bf2b71c683e7e1da0f976addb813a7b2197864cd3c73e228f8668df4b2ef5f2d041953e371b6e5f421af4d2b99eb35d9b4a8db9424f27673939cb0d675921ba516a29459fd167f439e70bdce22c2d2d8ee3c60d6f198d9ca970fd0ae137364592e766f00e07931b014b0bbedcf83ccf86e36061f1130c9d103e9d5ee882b0f8c9b77b6101a7df08408957865b1cd5e23772a0bc2587c70fc38d1bceb2ebb9bfe0820b39ea9c4e9a734e0f07aac3c1e4d5391a4aed8a2854ad4ba9a3a853faf3d4430a7bea2d1e4a1b23ac4c111e0242fdb40a4aab805a6cf810fc36be903fc4e1369cfa50d974ea14d6aa4e08ffcadc7c3a8bb7bfd20539dd6069f15627529db85ad656a9f3ab7438f4df0875a0fc06cac3e9397cc8f496957171eaf2042bc3e2d4391616cfe193c55d3c7e956e07166f697116e77a7a2cbe5d10166f711fede2edb37843f0e75284dfe443c8477991d3a39ec5519eb7733594b847894d55d4d393a48d69490d65eb599c8331b12036c5eca3a31cf50dc16f72ee70a8b365e6f8421c2ddf101cdee2d44f2d6eea82e068f958bcfd168fc5bb0bc2e2373c4711fe1667f186e06f317d210e37b1f8ec7218d2e246f86f380e2a5dad6af9505fd852d3aa1bdf9016bfe1d44d37bceb82b4dc104089570687212637c282518783e955432692372e6d38a72e93b48a7ad709d97ce4a52e087f1cd79197bbf1852b3f9de57399beff75bebbf27928830bbf2df5b03b7958fad969db4a874f1bdebec9dbafe1a97861c9089bf1d44753ef56ab885a55447566584314fdfa75f226914e5c4d333625fd04218a8997d4089d975c5fba0e4f26e994e43ea9c4a641299d4a6f575c290087a7530ac0919b3350aba494ec9c0efa55de7c7a21cccfd1684404a6f43408d55f12722efbb6c51433f38eef76662e383a7b9ba5941ff7cb19218c6cf233c242b0bbf0730eb3490d7dc7ca6c4e9d00ad2a52c4373fe7947a6a65484e9dc7ca8c9c7a4cab465e117e9a56172f0514ea4a829efa0b8c0b4f7d859ebaa4d4544ddf6ee26289f3866c3efa8420e0db85f0f1dbe7120401df8e80ef75fa04d2eeba8fb824ef8dbb59732959b26429a526bd352d88569134c93f0ca541a00689fc00840538e89fc0ed4bc81171a4d42ace973492434f6a2771de7e10a4204846886855c93bd2ee761e4f6930167d64d6aae0b98d98474c2291865a35dca0a1231d448331888578d66034d2606ca2fe600120ba358a82cba1f453cab8756ab790c8e7227d9631638c7524bf483dd2389adbd4e69c94c61829a51ee9fc9ef89191a6b4c555659fe717948edd180ba27c370cb893dc42e2a0863232cbc81188676f22a8676f9e7402815b18b86d6ee3d93d1b68ce9ff9a3c1954929657cc2ed6e1b99c0bf3246c54d3fd7b0de4682daa50f11f0ec8e009ee167da316a2a3f70640daed71756c61813889e7e617de1b976eca9302ca2f0690192165cc172ce10a57de1b6f10b51ab954dad4bc9cc5ce2b941d046bcd252487cfac91a495f885a3a3fff61e4ed8274a3a8067ba210634022b926a3e4483e7270c78b8e4a37b6a6f98834e28e0124a7c06b4ef2c217ff219a4f468d4a4568d3a97ceafdd54faed42a053985122fb8088293305e5a108109375ac46e7070b3247683845ea1d6d2169b3b883b965656a669a95475bc80ab6da356a80bae48199b61a292139d415dc9445d676796de7dcb2ececf257e3898be1b096e6b15334c8c839af6854bbfca73e9b6bfce34b288ee16e2628c1174540db75806f3808b31c65e8e4ebb904f88a5dd62a447b0d4c4a8ec3ff286bdbbf2cd762a3f72781a5c1ee28ff7e1121111570dd85474237cf4f578581e3167b963b7fe8bbaae9551a3aca2c61865d4c2e0765d076aa59636e9721b8c3b44a4577dc335bbf21153d3372435c987ace4d75f1c85aa15667d27a86d41ea26f5e806cb9a64a9c9d5b8a821f7704e60dc13fe61a0ed725039678f9d306c0a51a9f485bcf3ecec849b4e22797ba3cea786a50fb9c709c3b070b35f60c1a65fadda2facb0f37dc5cf293ff661f6965f2be9d5b24a3ea6c336d9b66db5a250eee0bcf96142df98418618db562b0a25fb2604e51782d35550f433bfb114c07ed6e094f2d3234e6de70eec89d22aea40403f3f32192c26060666db6afd7a7efa0fd2fb6179c49756ed4b0baaf4e83d2fadda97119b58c0ed4bd8363fc365c2af18cf4bc6f39af1ec3fac0c3f7f31927ca479c943a2e41d73c9b72bb9a6954ace1e2d711c2d71dec84bde68870319bdb88088a9e9dbacce3630aa742f55cea7ebe07c9f3493c2435aab5daddafcc66327693e58a3dc36bf31cc2a6e8e88f229e8f19798124d4041149e40e2244adcd84ed177607b2628229096a0567cb1c49c734e206c560449274b3c61c36dadda85897130766c975fd37011ddcd046e5f5aa554555ca2775f5f7e6f4ba81ba382e843105c706b507aab5ca20bc1ec2f0b4bc2e655f21d498d11df2d83625430f9705b988b0bab8682c9c5fe4009262d9e5159993d400d4c9b715d995ec99bab86db5253ebe7d999634aae7866214ffc7cab36f684ecd9034d34d144134e38e184134e38e184134e38e184134d34d144134dd830d1f9faed2554f43899a8dbe0d6200f30312e8c1472fa7699740edc6d3bbaa4e117e41e322e381d9c2ee79c207b30707d8cb3ca1e63dcf1f288ea82c3fc0d8970cd37770ce0af08cdef78c9ae065d35fa1c92527277ecda3369519dd33a201d71f08fdec5b68162e5693553bdfe6cb5a2500efe2a9ae2aba39c54db4624aed4994e5545c29eb3b1c272a3058523878b0e175e80c1bdcdfdb9184a31bc9464abf8a5145fdb566bef80e3e100509af11828a682d8c989613c3ba821e772b50a49af667cf6448e87e3a194520038a534d094534a29059dd218ea4e29a51406a774453fa79452ea39a52aaac329a594ba38a505a02f38a59452179c52025094534a296d714a07407338a594521c4ea900e88a534a29b5e194da406f38a5945216a71486d6704a29a524a7b407756e4229ad81524a29e541a974aae2b43aa594d21d94524a17d04e37a701a094d217fa423ba794fa4a0784c620c30c312b550108300001d800d3a3061e3b0200801700bcd0c0922a01380300647889c186c3c039070357e3eb3c124772120c244e4547c9854422e920b99048f505ce051289a483e442229d50a41612c94d3970cc50b39659b7b2d99009c964b2d20d8de5e5b3f2bdb81a94e4daa12e1297a0ce994692b09f3099902693c95446b55649b9adabd7cf6d9a696ab23bda6f32f998647125e3d369a724c9cd8c175d31357938973bbd8add4c3671f2dd8b772ea5d8195993f25052f19d4b252b037ae7b2d52be97249974bda14b56a06337646eea83c8c6810ad0c0c517a255f2fa19794d714a056bd10c6ce489f0278188b006565bc9e5e49990c2693751e9bb4cabdf328839d914204f030d2e03b8f3c2be3e29dc724bd92b35954328b3b577c97c33b8f4decccac198087d104df7944b2322e0cf56aba5c44aed87245979456e9106367e68e003cec31662bd3f2a457f3f582f28af21292b5ea460e7666fad8e061efc0676570bc7a3565321e594f87f2ce7b053b3385603cec25df79ebac8c0defbc6b7a35b76ed6493a4d0b3b436b7a78c86914ad0c4b50afa8cb35730d752b46d819ba5383878c84ef9c8156867ae7eca457f4f5629fd7931743f92e7ae75c839da13edc63f2f0906ff09d739395a9e19df34dafa84cc63ab257e7bcc34386e23be713ec0c1532d22b5a14000fb70adfb9067646ab619b9561efbc73222bb3cd6a90ab731e7aa5b9626ad2e0e1fae03b0fb233da0ef798be3eaf1b5e9defe895d6f9025a35f2ce755819e99d83ad3239003c9ce13bff6ebbfb3c8cdfb90c3ba3f9bcac4c7b278ba959bd73de194da8730074403ad84b570c2e195c3b3cc35da1daf9c9b9e4ebf5f2e119ee55009f9fa4d94c3693cda64b219ee16a0820f4932493c9994cce647256c33324a101d4fc24bd5eae97ebe5dae119928f00767e925cafd7cb8767483b36f8c8e26a349bc966b2998c6748353053e8a7cf595c8d64b23993cd996cce6a786624d4a3c61557a3d7cbf572bd5c3b3c33f2a961e715572397ebf57af9f0cc6887878f2caeb6d94c3693cd643f9d0af1cca8660715fae97416579b4c4667323a93d1590dcf6c4201a871c5d5f67ab95eae976b8767361f1a767e73b95eaed774cd8767b61d0680cf4fd76471a5c964b29ffee2714d847866abe11ef2fbc2fe50137a8f338fb3384b7db2e6a747f03403f75c01802fe4be9718be8fbbe2a7cb0083e905d78b7bfdf417aff3195703c30b33aee6a7c7e052ca21137291e590c9847efae702a783f4f271c9417af9fc74af857483e422edb4905c3748ae8ee422edfc74c73142cd48352d37ba19a9e6a7c36063d3644236649d4c9309fdf41758b495d1cbc7c617723fa8ee0b51f57bf9fc7417288da3d1cec835728d5c3b3f5d478da9b2cd4635dccf6cb6cd46353fdd85047593096932994ce8a7732497ad6bf2b3c9f6f2d1eaf7f2f9e9dc28878cb17b35e8f56fae9dcdb5b93697f6edfc73a6cad9e0e8f6f9859d92b8e25c5b0dcf90643cfa4214aad64f9bfd56f39d92ea714d7a48329ee164b03db81f14c74383e53149b29fa76f3251655c7536b3ef1f3950abc2cee68362945679d5a655235f19c0a7774a3a9d6ea7556029ba62c757c797cbd5dcc9e39a703daeb8e29c746afa939f9c8bf3e15c1ccff298de3f99a8a506a787a4198924a555edd34943adda7c7999e49d4d2320a64af16513575cad36db562b0ae52f2f2ed86ef2b405dbe9f6dda39de3892b6e53ed93dbc2c6d6e5e0bf79b2b3e9a99bb7cfcea6559d017cba89a7864c0ce0231f397f42c82e49abb6bbf9c905a0346967233b76360190b13900d354fa5c82c82fb9fcd2178ea0891a9c2ee37551a726e9e31e0378eca4533e0d4e6f8f654f1a9c9d4e5c6d671357dc837250fbf8c59a2c6a74ae49afe22ba6784a1ccf4f8fafce26f2fcac6995f65d924e4d9f9d929f4ebfcea6c1e99dcd9b08d0ec02836be74ecf409e3decdf9717904f404c5bd4d8e017b99b7908dc4ea0768c894b076e7b031c47c9a8dc5d0e2f0d5e80e34e5cda11b70691e14f31a64d04581e1b25a3e670c3ef46f96d137738c4e72f6679ac13a04a69da067710c65651bb5a737f91990999461af17b8f7841cdaf17bfb12a60cfc9346a18799e04fbf64d16c9a29a1a24483e9316550e6da1860cf43c9b4e11aa12924e5c512ffdc4574c3df99081beb8b322f16c3f25120f892736894ee41779368c3c24d8cd0aa658c114248f248f241654f6e85a8c1a893a6bde9aa6691ac7452e72f7e6e00e989521b9c67968c36bce452791485c9048e24824dfb180f8ad34c1e045fb86ec4f16dc5220ca73de9c37e71c0b2a0579472a38de64459d3ea9a821e89c837135fac26dabf4e348dee4cd575379697004ee80a1edd467b7c3ec82b4731fd82a0ed21c73df723e043ff791bc0578fd796b8241a5334a8c314a931652fa73e963dcd5aaa858886f2829b9630e4ab3b404982d82389e40a109f8b212638c31722f21b210641454548291c9417c1a6148b2e0044cf01013491b2f98208aa9b1c3032862644759204e0838b8592025708d165464c3354a581900ce9328ac24e1861b503484f10222a054468cc8201029cd521288bce8e82143e8251a89499051649432be2ae937b6844756654e0feaf6041575c404131cec1811058e274ae9ee0ee4400ec42d206e017101e4dc72206e013901a86e53a8cc342c62bab73cc6dd81dc81b8051405209e2f685e73edabab828ea598ef2a5f3eacafa3ae6c25144a46b788b2b472794c2139356f5b2ae040f3fd51a811542be958a99d6a9685a55558b76dfb640dce2a3bd5469a15eae42aa394dfa64575195417d46d05759b41f5e9bd94aef0a1c334185c3cc2a4b0cadebb0b85cadedd278a043fa1f21071c7b7b8edd59595df98ce94d77e634ba8f0616518b72f214b0f6d402d8fe840f00c7f38b6878b143e3ab8dab6eea53f4070db80bdc0b1ab6d4fbbd23c3accca4cf0371cc0afdbb03392faf488581ed1d98667e40782ed113d6a1f101f1a4ffcca2c10cb03668bfcc5d5f4d18650c36db601c1433201b745e596524a94b4a9f443ff0da3863b7320e26abb673d8bbcd2a00492032999a58cb15726326f5c313321b777b777e79cf29b506a589f06753dacda0c6a285f426d673afef04c7f71887b0c6165e217cb581ed2e516b56bb47ea5d4e8e1d4993c728ada5fd843f1a76171b5b90c51758b433f711587624afab655fa851525b74fdac49474ed66be8050771a9494d24935aa518d524abfa9335fda11aaf4a913579225875ae5222317d56595deadb8dd7aa9696270536473107257ae4f49279d74d23977bae46d8bd2bf6a0101172625ce491eb24e7f5b89ebba9b7af2a4ae4c3b7742b439638c518b9b6fc7ec1989bff98894398abc6996fce2b74929757febf28855deb69638f08da7ce073d43a10442e8c11458eb1b51e51dfc0e4b70c21018302dae90029603847acac8428a1c1c2188c53a78768eb232f23700fe90e8cdce3fad8abe429df301fca4d6a864cc9695494f324434330100001315002030100e8844229150345546790f14000e889e4e6c541b89a32888610831438c21c00011000000001099d10600c98d8bd01f88fe8cd27f7ce3ebd0fba7e772afffa6cbbd3f375ff4fedd78d1fb7bc3c5de72bd5a9c3ebce96f99be0f331f5604956441ea4f5320f62ad49951a361a0e0b1c459bd168162fcaceb06c89174c65447a199b4c390ea5de3fb0213fa1f1b01937ea64801ca0344d109f21999f05c24ae9ae09cbf5bcd07b081a865126c94082a3d48315839e68db57f0384c994192ebfbcc679bce696fc266668d96cba0cd923ac8ac402e55e5fa82895edd6d79e56a8a98a74726e63fb3856690a51b0054295690c05f9ef838d95b9bdfe2a0d91bff6e24efc6086c5a1abcfb1c1fa9f214cd7b1a499ef9881357006b27b01a61481289d351383d3725d76f333b9c1e57c15aeaedcbb6f338d979d22ca3db31b56fc0c392b58c4ce47a88dae8a3e3ad3d6716d0453dd056c379b9ebf9b47e7e4b690b8b5220767cdeb5dbb623cc8ec9687f5fd584fd768894de3c7f31f9ccd21d89672e9c6b62afdf21fa93257c4bd3159ab5db002660036319398683036bacd0d5c13c7291836173578890f5d580b03195feec10302e4139f9b042890102e2078bbb50dfa946f26eefa5460e7dd4d0fbacfa8d3b7ad230b7d42a49ba19859051eb0bdd63f3fc7cd2b2aaf9d57362f983022cdbe9b732506cb47ff24bd21217bfd761b114e5434529519a6888714fd0098910a76a16269d08e6a0daff333ce02ec0bd753564c7b6f47389b83d7c21d976f10fc3721015b44d937c7a51588919910a4ce11ca6f30733e626e84b4711ad398c63476a38dde88c635ae318d55a36ab2315ba6bdc11012da582337bab18d6f8cc61aafb1466cac37cabfb14c35ca7e4f72c69be3150c563a3130b9fa39c6668122cd5bf996e9a193cd0f57ce81db629af6dedfc9cea0e38cfefc389854803617fee9772e5e0e5fc5976d32dabeb7537b54d596c393862ce873eb61e229751575b68fae221dbfe2d9fea0eb9db4bc0a08eb62684801c1471ae68c8d81eb26140eb7c7459fd042a37fa59f7642366b8aab6bd16274198b75de1afb6bfa0c99f7c9804d2960716cf35951b7a8e558eba6e57f2f639c141119629ac372fdebf69e143621f7adb2d827cbdd01cb3c96eace6cb9e7f67919dec88a965268c2b8cdb2bccea39997f6cec97ebb4cd609b288a8ecb666c09a85c5d64365f9fe897abf3ed47c77e892bd932d97c8e193aef310acd57b084e54d2ef377d8bcade1751475ab5c6e95c7f7e0c69b84c5a5426dd29957c0cb093f2850e3e1f04f151f82cfaad37ac375837ec37da6fd837db6f5a6eb26eda6eb26e586fb8c6769751b9ac8eb0098c70bebf32e3d710a34528071360253068bb5181a454f894a787844ec65c71b4e529f3510f1dc2436eb349c928a0eb3af529aab248424aacadabb6b1834b9e6bc42c6fd076e3fa013b9de5950264760f6f1bac18891d3f94699664b18c6c14920783212a837221c17e04b36528e753bf2ce03de59b6a54c1b3f5da3cbb21703886e0538f5125a65b646465580ec665cc94a070cafae60f5ba0ea15884a40a419e13404a63a039f0a228eb972e0dd93d75bdefef0014b31422462c78e79868b5e9b5c3f2874d3207f1b4d9638dd6be664b207227c301a7f2ff84f26489e1c22b1be7aee7147273615e9f54a96f4114c3dc860d09ec4d3eac7879e86fa9d29677a094e3bf7cf158bdc978dc69df4a6743596e5d65b8dc74cdf3d06e2264b7a8036a877528f8a05622b39b93da5c91deb2023f420865a4413222653d9c934797d13f142983edc1fe827f4616ef5cc4607baaa08c62ded630bdd30d88a3e77895d272fbcf5730f5da2a46bc849bb78a11d13f35aaf33edc321901f60b9ba19977e73c135dd315082c38b852d79e0ce7ea719069512b1c142e10aa9d1fd86290ce85c8359d6d103300b0dfdea57b5fcf440225fb0221af805dd0a249e0747fcfbc11299f772d149663ead123b1717b1c698c0e717124bda6713db10f5a35612ed8f013ad98a4ac10af4f4b7dfae9da7020969c51a7ee014c47b610bcee2c69b9e254a6d33704685841fc8abc6e353f29f8bdf65af62dd850e25b80745f21b6872277cfcd7367c5f1c34320eb0c0378888e128eeecc37b32191268765999e60676eb3a7b744adfd5053b72faabb70e1f20786aefa69b1c34c09c0de720c7312126eae9d83d344d5c1704991a885fde74c8497193aae65643589c0eca931184e45cecfcbaedaacc1cf0129cd5565926895975e743c13334afa9cce718f7b942341504d483cac334d3e5271e25894f8d9b9f135cc98c584a4600d089c8ec5f9dfb88285f70d0a26c7e40f7db29bf6e25129eaeea3d1fb6e89c7b7c64249d74dafdce711f01975fe89ea641f748c60c198ae854d0533bf4f7b32fbe4554f3d966384682ab0b9d86553846fdeeac7f71128667df4ea1bdfe6623757c2c006e772e9ec88ca46178de22e00099527f006cc0c39e3ea0fbb37636bb624fb73e8aadc0703b01c2197d115ac28a8b5e002ef82b09b6aadec2df2e828fa00c8f420d847e985fb31fa390504660c6e4c720e33acf9739a83aa99acdaed8b741fa0f5362d05e380d46c48d2d0e0e7cb5095957abd8670fd147400647a13500eecf7b23b47b8e75fc2738ab63a2437f69a9c18332058e6a2805ae7a7c3aab1f5ebd2ef70126a3bf0414dd472fd1443580a1cecfd96afda9002ad40bb7cfadabf9182bc15136a7d30fe2e8f821b000bbb909f7d79bf70fafaa1035ad3d522f6697c03b7dafd01f11ef2b35d20745c7600b4e08b8fb4709680fbada6c79830cdd47950e8cae13c9d57fe316bc9ac39b14e0929837f9092c39d084d042add56437de8d1b1024480592100a52dd6fc1252548aaf1383e91cd271e637906523b9cd7af18d0fbca82652e5b96b2178fecff8e03bd2c05d7b8c6b02eaffd7724838838c690d023d5e9d1274cda674a8285a8e8f08418303e804e24a69a649401504973555165247b005c240a69ab579c92edbaa08781160a3042ef978ef42c06f975e499487b038880313aea7410fe1968ec56b0c44aa8301608b1e7e2f087aed1b2f02f944a024262bc68ee632430945235547864b26d7337ae0cf0ead79d093fcfb4673cd6ebb9aeb73f3f454ca1a7a2e436f7da27c8826177258f7286c294c7590ab9adc7be34cd3ef83f53dc563c3b43049ee7a8293c470e52f9ec3bb3fbca9d3cdbf8ac8e56923d8a754975d9d513cd2eea12238aebc76a4a40c60038488e06a6c97793a5c156247bfc366dde7b2e350aafc11940f265dd6e1fbf0fb7a5fc3a2782521eec78a5b0db3b339d5af0fed7b91d5af9c2855a9b6782a10435b0505677dc5ed2637517ad89e479b963698bed77553955ad85728c2603347af55c5549e33141c0898b5706be7fb44c9f060b4078af70f2290780c3db84e1ed395a855c9676287404458c5237b598aeffa21b85becddd0a82477e403a9196d725f812ee38c23a520b7ab0f53b4681f59c6c744151473fcc367f7f70bbe75daf0290439663870e972abff735b39efc58ca6ab7b5977c39fe5afd911db99abb6c4d5d88d66f540560d2918b44ba7bcfe4248b0c9451ec341ec2247ca0de7c941e17baca63e651efd2160d3ecb7b8a45dc638bf192da5270582573509fe5bc87a96ec68a99a54204a9fdc2ff0495b32b219319c1add1b5bf57b2d1e9b0c3296c3865b21c04d785dd643062b40f10435c7c612cc2532b1ef15cd53330391ee0463468b87af5ccf63275e932f124673319fdf21f93cc72c9e55685cfcceab375daa7a61de358b021137e01616c768ed962448b4c31c7e4b684a42352f72d632cd70fca1bbd13fc6407142756e6aeb2407ad97ba9ada09140af1fc0a61b733554c635e8bfd77c23aa9af3ae3c64f0fc1bd42c1fe726e650398025bc26c4f793a8766ccb67ace910e8d84e81c3b3ed4ee1be651f4c3ee182b022e1ff7bb6f0b258cff7b223963f015338e804a8c2770359d3867e64cf52bbab17f3a1a6514f3ba5f25da9fadc148abe966ada0fc208b41942d5c249d10be4096f390fafdd71334c45d8972cd78c519161e03303b97afd3674caf0e7107a268e48b7401782f84b9431b61090ad1a0dc61a6b2530b806a292f409dd585722a18d4ddaeeac083394d3197d23e02d88e8beda2c75499abc633245c697c9e3b82e1a965a46ab5539e18a1484345c780c8edf2e0a2d7b65f90e39e229df8aa48dee9be1ebf1d50d8409e86a0d0cdd23d1dee0c62389aa834bce8bc806cf7f39a98741e2c0df3f8009d11a6f8dcf8f5e5580eb46661e7a066d042b00099c1dd83fc47975da909b664c55716b71eb99c29577e0ae4707cf1017a8012c72fdd839362ba81ceba073af4d531a297840fc94c2d3cfa80547b8c9ad828db1fe0c2c05af5d0b0e3ea91466fae3cbed86c83ac3b56536e6c2313cb8de141c2349fdaefc8b9e724ae71b7a2baa6dfab82508843fc942f1c25965ada560c8912148599521fa33764404d9876bea6645ad4eeb1f69c0776d41ed320ce8415861c690efed8b49d57b03e6cba8dece39431f25e0fa7adfee48413e56d3b0879d24f624f63dd719065a4745ab2f9978bb6686b113e6b451317d4f002ae5e3312895c19103a95e4fe4a99f81105666315e16cc746b4ad119ca85a7408a86babe107d26b0608a1091c183b6d31ce2ce232b32391314b8181f9a2bec26a2fa820cebb4d5b7cf20ecee8e9edf1668ea97fb592fe520a280711ee9dedbdcb643ed03b857604f21d970923acec8831a9786e08fce52ffd9b64c1d5762638f842f80f89803eb73a415985e9c97331bebbd025c4d1451eec8bef82b91278ed790ac4202673d4806533b17a6ab141f42f772774c67aa2d0a58deef573e0ec98fcb6943a50c4d4287a4bdab130a524717772dc7f9af3456124a7a596ebe5678c2b3a5eb0530e50188472450a1583056db3f2347c51720a46df88d059f15fdce9f463b4c23cd1d13e873d04b5398c16dddb3ce66e0100ce077bdf5b8e3ca1ec34c940d2200fc1caedd9e96aa357558b4b0f36ff41a77e2e30eac5b5f51d94051be388b9b15abdba876acaa61abe85b1d300c3b21a45a048fe6444d21a56a8534c39cef2c2199db910cf414c48505071150bf4256ddec45c621ad5319aa71d8fae8976c840c5abb1ccc9814dae9ccf2762b18088dbd56e897147a8e81602da1a3a46f8f1c9ec22af127a835a490e62ef142e1a5ce3c71ff4bf6e9f4750f22ba5925bd1da4c0ab88b6915ae5594bad56227f161c8e1aa9e906df9409ccff2894da0b740443ab970560cfe57b96063dddf919f7a4928ef0e6e49df8ba9897f2380a25246a1060733ffdd51fde4b7b623124e8586407aecef9b1d21e8722163a069ae67ea9953e4280f4f469c315da2a2aee7d0b0f9ef0c5615ba2d45b939be6b17a275eb038abfeed37dc0b8fc541a45ab4a0ce4df8652503ad32c702a0fde9364d60d55cd21ad73134db76463809be2af2fb4d9652753c6e2028c489373a514f1f3e655747a3a75a1ae8f1772fa77eb76bf8c1383b7ad231a0c756fb38399e180ef450bfe87911c41327e852f4087de21e9ea05ebdcca715183d9d5e146619911f201b06a569a47cae0fe6c2fa29e5e8bf78acf8ed098dd07fffc6b99759dfa98973682fbb3a7a77aaba3a92536737744f4d2bd96853576635eef027cc03eba6b23ca67a36c138003b6368e9a7b861610eb102f45fdc4a1ebec7797ca19012f2cef0a5eeb99100face7a89ad797c437ddbbbee1d4de21edc603c6bf4c32aaf27e5ac4e404a12730a0213533d4ca85d48222c38ff1f5e03bb5f79ca9883f1a2c54bc48504d1e34f05e46fe4fd4f6ccf924157771abf97d0fca17088ffe82fd66043a7b737d2dbde08ff07a85c3eca0e9927ba2b05d9b4d26cf3927e9883dd8e99e95f444b9e48d0f7d8e4cffef7e7f2cf5bb3c72beb0cdb2092ed490d28cf3712a2786b38dc1b84aee8423b4c18a00c1796b38e7f4739f42f976eddbd1b97cfa4ada873a8559284082ba5a8accfb2852e3a34c5fcacff4c3d01427152de6721a821b79aedc93021c94e2de9fbd8409533025c012f6ffba531ae97216a273394fdd62e9af0858f19dc029a43adad5d67c69fcd946af25c86839ef2310381a78320affb632d7d793506c7a8eb97a8066f8489a3ff74564bdb6cc64a90ca67652f612651c1e1ff59de1c5f577bf1a8a7d480d09ac76519fb48af0e67337b9e60300ceeb3fe082c388558c7c65e191d6e10edfc808b88abc6cae77b5b6c90105a3b55abf9f51d698d7f0fef0aad91be9283281766d0e43793a83d212e7bf2ad8c87a9afed8094063fc82751fefd9478f86cb0b351dfac346fe81c8c48f9777e1f76844f41e59c1c1d453e2f70c9b937937366cffa06530b2782d9c4be10ed9e37e653a550bdd0c6d90a3da8702147a0b2f8358a4ef9e232fbae80472c99fa4a43ede289fd25b05bb2e052c0b413708c4eee42fdd22909977d7a68594fc800aea8f95764e30606dee6d10d5669f4721248f3cf7b171fa59d7f088df2d5bca8eda6fe26d9747720d9df704b60a54fa9f41305a1f994ea75b5e021b356b6c1142ac5565633fb2968a06434c848e37596ea03b08e202aee3703cfc5058e1c97d6a423c3181d2abf6d148822ba7fc3777817282e0808aa5c33c465816aeae9b725712212c5eddb6cc65568b87a467c8d06e0567d4ce2e1ce39ee2b30f2474bd9f052b86e18e24ceed6c4261a9a9579c47ca1859de51156d19988f1c634c0820fa3f130624c7a6737c8248ee7f1408c6a4b7f4366803b1de41b6ab8daf459649c68e0e348b2541bb6e2731886e686045f00645160ab27061a5de6a48df685faaab7b75d0da7f46ffe33077c4008339319b24db8a626558a14c7291b39a7ea4db52b314473bf3507e692941994c326a6b1b001bb26e728081dc8fc82e8eceb7be8c20f645ff3df247d9e49dabcb001255e779c6ece91558271a80c1e0cb60241ced4ad20e2bb5f2f541ff035e232897fb32807019fe0567b64576ed2f36fd3483f20cdf2f8d29ece30fd35f7c1a8c84a55645ece9ed60ec0e4d39ce91f3a0853f0608a156330af231a4061ec203cec532a8ae1ea3bbb5c5c6a3bd7ac109c60ce75d0100421c0969af8093ebc43538b13fe00696b5c471f8988c4e9ddcd54adcbc824f616e765e4ffd594ce32325f2905359d985cabd851416dc30aeb0658dc646f946e932476ae6f91136c5cd6370b0962908ca447d13656c8c3e2c101939e75e15929047df9e0e4e4c86a9abd2c44ca129f39ccfd90777d4eecee3edfd78d4c2912bd56ccdc643053d16ccb398cec9fc0ad26a3ecd556fba66f802b0685c93e28c6b2063f362934f9c64aa387391952f29ea8e8e9f7a1d14661a2720b3562eb4484f3f210a91cafca2edbbc0af6ba26645a229c4706855f5ff51588b29dec00879acf03755d10085ef3574a0192258a37b66c08aea7fd1be546bb5636103fb05cbad405a8d905466c6eb162752547c65aa162fbc506b6a31c955a695f9a3d9123af3a0f1ce92b068c7ac22ba9dc6832d8dcb38535e52f2a06c43d7e97288a417a70a921814bd0b148ef22ef5c51609b68e499cb2e6ea56e8912b39f79a35d7a2a8d9a5d8af35e63d15afa4a3bedb3cb97ce42656201512c194b4f81d6cf1c5cea26e16c3511e36d803a4dbf4f5a3d119afdb59721e9150b26ccce7e974b6c3ff6894c1743b9d1c6a61533532020febb3bde833ebed262ece110537a50d20c1c9da682719c6d5d7e862f465ba3d074ea28764390ff5277bf1b36c2b40a08e22292c80bf014d84126334048a4e9d294256e12f525da1dbb8b195f537f86bb2cc2b4a9dbc6b2e04f8de124868cb58dfcec6b78c4250a13695236e357499d9aeac34ab598c7fa2444bebe9e22602fc3905dc4a2d8102d50bb30c3106c92a15c427c622c7118f6c00f94ac2d43d2bdd6b2aeec5bfbd1dae73daf17bcc58e588376ac0ace3cb6e1d1f9b936b0230aeccbf979fed632210170c11feb4baa00196a7f1a7580faa7dbc8459a4c26164032f0fc5c7b2dc51157eaaefa0004cd6f841d0b6070ac4a6ae294a9ab38f959ac40aaa6d42392224f1fe099f8b048f9ebd020319ea33e229d47e1daa02b39eb6ddef0a00850b93fc0b1f8c26bc359f5e04568a76cb3e04f29a1d07cd28be53b395524201b4704931fcd52ac017366d4672097d20cc84d36ec8e1e6b21d87875b4813deda5700bfdfd6bb488c51fb088ba249137a59e33606a84a55233efc83c4be422c2bba2a03b424f6de40875a642b5e4466e2dfb8eabd24dc5e6a476a348f59865beb7addc32ce2152858713a325e57c8579fab8fe0a74d9b8c43a059bdd0e53f7adbe1b09182a85402c3f0deb5afe880a21572342b557f16b4ae24d34ed713fc331f1429dcfbd95b9831ad3aec3b14beeb6852e9073b0fcc8d4642e626f53340eac8507f802c10432c451ff7a2619a8204c76df00413b6f6ca17d7721275df76fbac12ea4efd31a116cab651839a99c7a7f6290f85c00cda5216ffa35de62076ee50047349c167fc6e469f3704de6c2b29e5ad2951e52cca27cf12ff73889083e1a5e2e7a8589a6c8d599396a318ebe68a8e39ce54486d1fd1bece27f413f666dd28b3ba00af059eec5f8726a4f9796326761db34b6b89e0d17cdd9c4f17f73ca1b0f04216a99ac7b7d0d0e09645108d63b23006cbb4098967cd439d9028014d655df082808fc0d3b1eb927a287dd2b4b4c7c99990d47de4ac142f3395b2fec14b4119efe0f281a00d0319ffc4da878b6e533fa7080e28461dab4a9c6192dbd1255dfd6142f00661ebb17cca0827c199cfea20fc85ea035ac1b443c4176f6d77b5967d8fb0b66c01a8e0ca5c40864ecd6780713089a568c0741d3bf296f431377442244763c0e7624e823ae4cd0df805e180cf01b722480c77d872a034dbeaad245e0cf2546ab366b78aecd27b76ced76031dcd9d81a7c04e20a40b8481b1ae407c81f50a8e8415363e5b057c2496c8746277d724b1dc74056a9410b5c2f562e6891a8170cf1488bb28430a09650afa98d303e5066a4fdf18963ceea5bbf5775022dbd88c68ae4c6de87f0955be3bfd41e4a04f55bba41d42351aea7da8e685a61d86e260f933d3438a6a4ccee04cfa0e27562a2dba8866eb1efa813701da51f5ef5432d447d5737c9590acb4c3e455a0d50a752b9ecbee0df44535e7dca026449f9329489cd6f3c1a21899856299a920b3d40f708d3ec70b27c91d3162487f892bb5a48a4e6809feb243a425b36d0acd149cb71cbe9051d02f40eea3038521991890f02d6b054bc8f5f544a64632ecb62c45422b454986b8512540c199f7e58203d7675fdfe4b3ac46719955f8b1b687b9c4a3fb03697b70059fea381da9674c7c34006f1de9b0f4356b2a7c51e23fab9741cc50c84c1340b6340bc859cfa2cd2d712a35c1092de28bed0beeaa65e2da3d1b805ddce327dd6abb8e71fcec3373e1da132969df1a8b39217d345881a42b89b8b55235f68ea68a9bb7349ed0e42019f6dd66cff4f9af69437af324563cc28438398edc289f243b3810711b81d1d8dc7700b1b533a6e6e7d6ed1802fd38236c5547df8ff5fc48ab0792601618d38bc6c1582936edeaec80450e90317ec1aa07e1deaba0e75bb6910248aa912804ef854f59399306f4da0ad3bd164a37f6477ad102f3ecd19bb8b530b4e12a522d5836533415abf01256f3647760cfafcbb83357ce8041bad8b803b6b0d938f3e9236893f39253922f07ad462b8754ee2148525e682ee2841450a40f04e0cbe47ce364c4de974127636e04557be49579963e92b69d7d4c93f19916ac7b3fe78b809436873fb54c0afe5523760ea1837ba97a9267651434d9fd59d5c46a09b0e26e520213457e67448828c7af74467c0d054fcd0d24d0c1bf964b485fa7930fad8e5058560606d8350b3684cc8568e7470a32239034e87637f6921951346ed539dd526cfbf009a055bc2011270f9d769af3138ec3e0371345e2c3d21b593912e69bf5013b86700235a352c383ee1289d32e3a935e99b6fbc0eec36b079ec3fa493712558f53b4b1a1adb2a620c6a83daa3e4614289e99032cb73dbe44cebe282f1de2305d699af65d2fe1c6294d48ade3363968c214bf626ef9a157240616dce4c9532587171082f5631e30ebe78c68c9c174a5f86356831415ef084bd0ec1519f14a9de70c048741c811f9fe485cfdcfef1a085b519e2b5ea0e7e567d030cb96cd89384b721f9d86d043cfebc29cc2e64f8927f2a075c6bb5f4b3dfb971ef296c7524eb51e6516ca8b2b2bd0485efe18225d35f5b19acbab73d1e88b8caf1ab91bbc2500cbeefdf7a16d54aa5899894c746ca2fe11c3624f064d161fecfac13b98e648c45a0cadd9959b07f9689e27b01f9fa0cb6f1c02b3f98a6c8091304801e1dce9ffe4b443f4eedcfa71c04e5db178cd8d82b3ecee8eb6b9847507fa71ee6a1a31e35e5c8e845b1f4722d05ee4c64a57eb8d93904aa1093cdc69dbda376c02ea13ba2f67072d179ea37210fc711a95e11bc0b4abfd083bc4ea585f2fefc19a9368f297c3a6ac1a18239328e8c7196dd4d86c80d0f327b5bc618e435542058ef342ea581b90798508eed255c93acfb643f6e2816bfc3ff9ded2f42ec9bd991a740952870b67b550dc18174a1d9f11ce3bd9c6e8ce0f698c5f0a26622b4e474843002c250dc6e1b2582936a538518a215434e728ebecdf51f39121952bc532de495cba1c87451fbc831536c4607d15c5edddaad63dd7d0fc0ceb6f946d6756a46b0fbd058de3557273db9ab1e00b56599905c9ce175f0d95f5aca56996d5002b92ea16e41a1652aa184ef49edc53754d71c0b0359bd5190fdc2927e84024d7e31461609e786a9839353c7220b3b2c76570bc6093c2e53363864a1f187f439a90701d670458e17dd9226207925b185544acc220e230e42e328cb60e9a8afd9176d596e5ad6d39d25f3c3618a7eaa1b55d82c967894254bc734795f86a32925577925bcb057c538d03603e53d8ebd6b5f4fe716dcce432a1aaadecb7f08b5af2855a6397bca59a00fcbfc03b1fcf531d8983124f6557c076281939f4cc639f77dc199a0b1e7f759f1c2212f21458592697c7b02299ffd7238d40e6cb57858727a18d06c896e8ffb034dfbfa689be0b73dc707a4e3bb839ec2f6b247bdff37a5bfb147a3f2f98bfecb9aafec0bfbaf1ba15b8e88de7e64d868a9ed4135e5acc39e08267287cbde5bc51a492d2c516439505d182ea37d2954f4505fd546804a56c3f33a6bab64b9e3ccad55beaea92bc73c27a518ef187ba41b1c005a3a9300551b87580bb7f793c3c56d601d46506007f329b22bbdd96ce44b67f31980f6c35b6c1986496d75d766cabd405ac9e6402a43c1151446d1312d14e93f55f8ebe9b44fa7e6472489f923efb7a21f0aed3d369a122968928922db3a6e3be18fea35e32fa2a23919a649ce145dba381c5b7c0993899388375de73f261a9cfc7ea32d198c53618cfe8ed3e4a166e3dedbee09aa39ef7292bdfb0059e0928ff88412d1dff323ffa6b3188440623e88667bd56f863d662a0772332cffc46648b707369a5246c3355aa1baac6c3af893f73125bc35077806fa4d70eddc02bc443b412058b4d07065acfff5822bb590210a776f44393edacde9df923dd70e92c303dac819d382a2d7cf43e242796a24e6eb892db01946f7d43946004f098a24721312baa1a9153b693125e8549630ef2ae316580793085d9ead09bfce017f77f48a45dfeb67609228d63e2de63450caf1f1321d67e3e0d1e39fd9038d10c44901e0d1b76bd91b22af860f908f9af42dd57851fbdd4094aa72d459e819a57dfc4a202f67331e82a4d02ab62b36a26533728672cb62ce94ffa58ec2652a06c66c74f2d4a77febeb1076a969d5ed5cf1e64c5292420ef0ecd5ef5a65a99fc248d617b23d303b68a03a854e937dc72d4a8117c4d25aa64737e613423ea5aa6228a20b6b22a02554126f5b068921b182d2974b520f8d2eba067ec160d40b1ae7212c427928aa5b0bee3fc2978bb3b5380417e14b63ea014731384640ad2dd774458afe0708c44443223e3432c0f8ba58ed593105d71db0ab7b830297ba571499c209ff3030f1165545cf1c46ecaf0e85442b160b0d82846dca8edadb54e8f939634b0b3a5b5b669ec20c95fa94600f6533966f3339e39e1d39b04a649f2e3abc483f0666f361e5ecaeda982ef6987aeb3ce6096ba127ddee6acdbab95ad043fdb38e5fc582999ae1416b12458fba602428f3601d407340e506cc867e7c08f7e2128e4b32ae560862d355d75a4979a380a3760824ef8a128238924742af8d4e6fba41989369a3ede5ce92ed2d15e4883eab88e6f99c7eda26a553bc2ecb4fb264ec3c2e58524f22b5e8caf50f990dfcc0e6135da4659ef55a3f63ea6297c848236ba174ea698d4b364f21bfd3e5d28b85745a43d756c9f842c8556e57cb48a5535508825a3f5ebc40cb4b2cf73878e5fe8eb47ab1f859a2c501ab897911bafe3b80d92f7cb57dd0b7f8f6b0ba445c7989f8346cb1ebd85dca5c8a79dc5b10284162953ec7113ae9c54ecb89006c00bfa70dee5f2c0cded1b2ea1a5fb1109a3f3b842043cf7c8b3b3233d761beb89cebeb150e0e28842ab488b24d245cfac00a458147cb43f9465a23c658f51bc18344faee41c02cc5784e52e00502c7d008b250ea11016acf16a08e7f1c2cf1d8f7c48ef2527005b890f04b28e0bb9224f8d294245809155364bda91a2839623bcb14dcd55d42cf028ce3ae741cbfad0e52d08015e3165d096f5db362ce1a647a341773884d0eea5001098f118a6c433111bc3b86c1e00390d613d2b37d93ff748000bd2f0ab609a298f5b70a3b464b7b32d7cfe7860abd809483ca54dee4e40a08f678d4110fd5aa627e447a49c62c60d3e7d5e5150d6a4993162a9d1b207876a9fbc651c6358651ebf9718cd63580069ddcb1591ea6dfd48e40fd0bdfddd18b8f41afad690e25cc9e14647b0445225f92222ec33ecd36032bc7ebbd9ad57a339afa79a36cf02fab0e898a1f22347300ba1f39f97eff45c6693a6978ba15db117af482e32758c26455a19e629865cc64c362b62499d53a3c8e1826c5806bedd6306171a489c8bfbe0315fd184f3db98fb98828d025ce93ab2f14004135c34322763dc8794cb226a4a1848095b625230177919ab68b71dfb215c99afe31ffe5cd10a1effc8e2e8382cfb1ff491ce1d4c8f01aff1f0f9b061a270a6ed45cf1e55aa8e47617d4a5c2e5cc1e1dd8869279bb2c7a72fab4942c666e818c0eb05584a52ecc18c19d0895e18bd216eb70663d8749d5cf9ee3a860f2720abcf2717af90802718af2f177eba4ea6a3a2c5d34bd6dbd10b2341e32ddda11420f8ba7903cb5eff8fba12ef356a072cecffb83316037e85232a31751a8ee09361a103b04f0443d50925ffdfb915d04274c33e20b0e598619b8606f6ea248e02c0606d58c8fea9a8fa0a01da650b66e7371e3352f18a02c42054259418e503634ac06956129b9d86ac0fed4eb1e1080fcf34593952d7062d624cc25db8f97881af5e95e8a54aed065689ff2c84d11d4bffe465459555a237f2b013e6c686c342ccbbb770a8f11a66fc37689c8bd789cb4210a7a9032044c507678a8b8e7ff1acc906b54dc0e8061ef0533d0d53c0e61349c9231d81a2df17f20084905c731d88212a23ef490441547045930e301fde1c2fdf1441027c6602fb8c95415dcf3bd4e4051629c752730b9ea83e079a20e7f62cea5a1959ed9b0860e956e1fccf9e57848326a3c3cf3e21ebc79480b61c045a9b89804a39f414efa77fdb1e2041a99a513afc2caa6dfb762ff64f68adcdc6a88036d57b2aa5cc90d563503b80066db05b8253faa81d54009fe0fb6993275ff04e23a3d6056a3a80ee904d93a501e95df23b287aae5d036bd1cdc6486b56808d784e147ec54898f2bf66ba90aa5b34d21f9b055629b1cf6a439746f7e308b20819798c9bb19ad3f005088865e20aba44ab31e30223d2416d63248fab9f62a8dcae08c5f8535b70a82e78d50ff6492c97e465ea51216f0a1339a5fd4070e1b0625ca5704cba308631165c04f00f09bf1e3706738c63c4ba47ba4832bbaea26f041e74d8d69c941d4b80f528a7340fe9801ff23eed80e556aa824f0f6af4b471c026418a6e88861be9c47da30646b9196d56d0a881c77546c4e28dbeec0216d203f28b684ebf6799a32d0bf52732f92c6551ab25cd080ba1cfa796a167cde24bc514a9a72519f5b68093ad074da546047893467c16c8b220d0fa3357388b75382fe96fb9d5fd6b12e6351f98107da9721e7cd7f30a2da737bb52e277afd3637b229aa34240f7324ba3488e64fbabc14665683a1b34762749db1473d8a519218c8ed82f095845c248229baebf0fa6858907342e36cf757601d48c91bc600768cb1328623b44c4841950598ecb85643a40c54173b0aca1332d36cca94dedfd6807e9345628a5e1102604d748c7241159ef0976086c1f71904c9db0300916659adc4286588b01d0e95958bf4185e14aa5cc03c2d0c6489a1ff2a3675f2280b8148dc4b27b653218cab0d093248e5868c2bc81edb583ea63ecd71cf78d9188fd6c42bfe5ac1c9911fba1bfc00c6a106c22b92d0755ab67a44c43c184c7975747dc77f7c20a14996cb7ce77b6e9d9fbe40a6bfa3e39c22d1f8a8b2082ec3e4a3c1fdc07ca8eece82092165e8384a8c72b151d5ff6d9c703bf40b887f74e8ae7ef54912f6ac7a7223fcecfcf5f2317ddeb31b77e09902a200e95f8b51e4121a61518b9456ac0e094f410cb82ac58bda31f6501a8562b70921db16ddaa5c3ac12fc1cc60d379ca5eba8307e2a7ab7d98118810aaf164b6a24ca72224843ac7d43622dc6569aa4a8b2519912eff31c55c6be7e7cd5372f60192c646cc856ec2f493858e9cbac73ee898c5d773bfc6679219edf20d1b1097076ad41cb3e5604e6e42e4c228f2563ac3589dd74b7ef94268ca969711c68a7a8a335164d5392fe24b1041883a92414c0138f31beb40f849ea575a15890285a40ae31f9b0b4a237e0588d93bbc13dfb3b811d3c021b37295c4a956c413c2966e73eeaed87b53150f920f050632f3c476853ec74c8ea03f63bd858abd034e711baeeafe7be43d778083cc6143b0abd4e5603c12f2aa78977a879bd0ed04e679807ba0d8ece02897534feb08816d34298049086b38f512d4aad5baccf7332b7eaa6df37ba9a9f9c0bbdff9dd55a6d0cf82bfe2c01b22bc37815a9ce65886e014a1e6f28b5d7b9cb6b695ad571beda7e6b00266f037dd687e0adfbbdd25174897e670692e61998ac3d1017c5709dfc4ee1f6c039d8ed8242148e3df4201ad11d4429407f334354068a2e934050d000640fedd00c23241b11460688fa53bceeba1fb66b2744d63314f2b0a5e5e63c17be190d1f8cf3776378ade468ad3047cce34d5ed7fa6e96a4cc7e2906fe9808ffe7ad1fdd43ffd03d740ffd5574c3d7fb20db809928ca5d4d048408614e25494576951a2682ea1049740e6838c3173b10dc5606be1390a008396c2f83eb6e25c230119c7c885a4937a298882cbb2ee8463792e953f89d080ccbb6f50843821c8d7e9098ad0ac33382597306003720a49816815c99d2ad19dd8b1e289b6490623fe1d970d4bcf9067c98616b3689fae8198baf84cd6cc1565f351888fbd548de390c2bc4c44ebbf403f71f7adbe44dcc1b8aff572fc5e4b15cf3a479cb564ffc4d6f407ebb7c94858b7257cfdcf9c5d9cead53cb9271796aa4c76601534750504fe6151148190585c48f0381c03d69649adee925ec0cb5698d473ed3b63030ee19252da07e096b831cd75affa8e6055782406be2bd45a655bdbeef4ee4cdfa305934ae7d4bf81c7a2c5a8072b62615d433a0b71ce471dbe6de0111c35a80d018128edcedac639fef87323d542df3f204cf4ef9c96d507203b3cd7256e0a8d07ae15e4b4b93e166df9dd1a98192c6b136ff910860586b61011fb3886076eeb185ef8aa9c56a930326fb7d3203cb562a57f515a5585c592f901f9e1dbbcacdf01f606705588acb789c279b85d686e957e0c269bdcd5af4a7e018255fdf14b15f0dad615ca603ac5172986a49e8ff799da028a06ce1b0dab81a51e8cd6e000a88cbf1cca76671f535a708126e98198980fc0519fa3d1eb9e0a073e381d06b9acd0eaded672218564615f2c1a3a780fd53410d85ef84f04c0ea7066d1cbdb39cd4b6a84db4b010810c70732f32d08c3943aadd3de0ac8c854217092b0341d7840e97ecd308632219b80ed633d09e247a931080697ab39f48a945610013fd6dd8934bb6de71245c3e8268571af640e1754241132b60892a88b1e5b26e32fa981b995e0b6ff2036e09aa8977be6423a26e34a95a8ec613777c82d728ccb422e07dbd6477a5a280f46ab3527052d9a282bd7957c17bf66977c9c3c60a5714a6f3f192c47eb84818f641ae77370da8de88059aeb1d4a2885246c00aa4ec1bc1a9724792bf9a358fa2e315ffd939250dac065ee3b9440f9eabebfb11847aa450d51e4803632ba199985d809a071fc4c3453058c53fd5966f1ffd3417f160b657756fbce5c4c9532f81e7dd70a2cf463880dea3a2a244e39fb23258ac4f6e48e2eefd174954ecbb85d195c5676376e90f47efb51f70fa082fab0af1fcf9dc5efa2ddae49e549305961353979fc0211ac244003c1d20a930dbb5d58f63557475358471d272de4dc86e4e69070db626fe924f01a999504a7dc86cb24b67357e9a72c9ed60377efd6014b88816cd640ccfb83e81dd803520dce0e2719c325d7f4e6e701444c042612b9f30aa744f17b6515ca5db78dc225fe97600ee32c8af199769908ccc0159aad6ebd3db3441d329cef3fce895d489deb2ca1294299746658ba35d9d6b9d3a404ff191e60640d5f10ebfe8591488a34ec009ab1b16c4307ca78e78bbb7f1fbbeb8b43a105db97a737137054a727ef46cee0a86288f6aa814482e9fdb093d7fc078a28b21c7a495cc27472dad0d9121c4a991cdea3d75504036d64faf7f0450b56850b82acda7fbbae32a7a2066535454663816c44aed10ef07a277866c90730f13bb03683c0783eba54cc263e8318100c467cba329f8a8060900f3be0e108a262413eddc6c42082ceadfa93bdcb129a4f536f5629850651fda1089c346c2be39f0fb04bec7e04081c1629fa00c514041e7d2157202a3ed8c0e5e9ae738c827bb05d6cabccafe3d23add0b2009054a48d69dc8ee3b81a5d88f511f8d2485503f196e7d0ca0f82613edc6b864d49ec140fa445b9574e53a8d17fe3ad3fa308e8098821e86ac0fab46a975f0bdad07847ff786dc58b297fb490f0ba02aa7e83afff44796a44c51285339c07d698b862b2912dfa603fda22e9039bc1a123030dd885625bb4d7371615b11d4ea9c91c20a01f200c9b8cbca09077d507d92687de6037ec990fd408ac87a1f9474d6082b68b07993acb585fcb3c7b80808fa21b6ff1dc1e28fef90ee5b1fd93d7a61f62df42f9e794997ad28ba7ee4861f8afdf444a97bc2a353294a064a0fab251741160754b38b6bd7afd5517509fa1c38c6eb89b6c6ecb85c14d1156d982710186ae370295d6f79ebe3743ed48b065b2c06978e0797311471cc891e87341de8c2aa7332739e4232743dda7dd85846867202601442824ea31b534b8b07dde6bb2feba838dabfd54539d4dd7e681f805831784b20bd9fa61500ffb2482cdf67a431cc3beb42a8cb6207aded5b8baf8ab9f3cdcd2934263fbc95fb0c3749854ee54fb70e47936d04fc8bac45bcb3f973fe99e22bccd41bf15f8d6fec89953a4c7e89d3d9d6cb27d4ad6c400ac8fcc0c3e11c9327cb99e5eb2a6a76a930ffc3b9bbb4f89f2e72b3c6a9eb31e197fc800ddde930799ea92eca5713a00b78de997c001e84ec5259e7700abab3fd45e81386728900c86a997f4bc3e95907e8a3b1bd9e8b1d88245bdc0fdce307729517f09a2a7481b719398d0d795caaa70be6fc59a93ee52aef05e8ed6681d8343284d1510eaa1c200bb4565b57981295029b8605b1f1730c78cafee0d128e7364d83253ad630c03849db23a1068f9a0a82dbcc8eee058e67fa39862bd651033f1745799bdfa88f058934ed0b123e8c71cd1931fd92850522021847776cba3832f15c426c1adb8cf5d71e34f334195e5bce4f5c15f2e70d07f7bbaf43680607c3f157a40f93dc4b1b5ac074260212a51f4593cb1d8013aeae1a22326bbae5e02037d8b9f2b23f5021fa0fed9741877f6478a690944eaf34d196a990c14cfb95829e091139cb362166a0a14e232b67e0eaedb4932df909111787ec54dd7dafb1f51aace7856595fee612a1260797b3c1432b29959cd6793aac3f0358b5c8fafed3d00c6be0d756863bdbdea72d6c9db81defe04801ed88094cca39be35ba59a1bfb31c493299e52ffc8d74b8944db2bfcce259dfb1c0bd08e4623ed827a3cbe676903a4dafeeb9e2c6747bec83b63f0f2fa5651ba2e393869bb40663f95670bd9c16d9873c4a2ed815bd928dda7638f65047322d06047cb55d01f1e5ed1160bb4d180dfc2ee76a369ae3453e649107438e25d14dff3ce95300b4af5ecac3cc2baf9fb34378bb6d4a7430c6939721ef50f135109e60adf1f21e69e52654516a53a3c970a65240a3a8b35bf28dc0f37680478c97df692ae4a4a42ba2dd36bdd24ffc2e2f5e74d9340ee1442a695f092f095a14efae1d26c3040685396bb84dd9dda191198c69b03521dbf734dd15530bc5b028b096e8b194908836666207afc5234dcf3412dc185ac4aac1863f116aa011cfc10f7c703cd614c4bdca0358821d318d40da730a7f8de058c34df8855328abfc5fe21db37bb992d8d26d1a208bb32cfc72243b9765983282df78089855031e529c2222d6de9e6d732fe6936a2621cc48bffa680a62977924c96ec3fbb2bf120007e154662afe8d32e56af9243cb62dabb0e5dad5b7318b3006ebd7b00988a9c0df02ef2a7e8b983c4897da931e0ac9455c3167277cb52cc53dcc6b964912043b6a42c552091229bca5b56b03618cb063eb98d1b30b735a349e4488c439051444c321e6f5820b76890a021fc0dec22fd123f9db80d8ac22fc68dfadae9dc19a0663454c7d626bcc9a646d0cefd1d292611d76e840ba4cb8189385200a1ccbe5ae09a7c782f9e7ed3fe83d548d78e1e3d02d55b144861389741f0b8d068b3798006bbb65c389327a9dd66eafe114c2e753fd7e1d7b5f969e9ea678d3e85cb079b41204281e2988a3cb4abf4b0a720113baefcda58e955ef70f63a680c55002f78e94d9c46c7db0b11861037190a017323640038efef97981855544236c43ca8cb4bb5e56e072827a31cf477c16ca2ada52db0e586eac0e20c8afbc4a7a54b82180e845b00192f50a49a0237ee2e0524348e4b94e083a48725a79e48da777f8a64e3d7c8684a77480beb2f3ec2e1604b2a92b6199ec9183b641e309f7814d2a47774abfe1e03ebb022b9d12eb71aacdd471ca78fb1f6d43ec1056281aa7ff7831f78f11fe13d847fc11392b28fe9a470359654acf1ebaacf0fed82a8e67931c198953313268dd676e15fc55122b1f63ba9662ee4d1ccfa48fd4b8bf815711d5cc526b4935e9beaf177b92f1226b1d442303ca938eb5d2d74344bfca156b35781f8ec898bc097b50bd56f6c44ca516ca31dda97268754dea5e25844ecaaf6bc1aea5889e96523735b1fb596492e06c1aef4e361bd6988948b622a28971b5e87b291e571c614d87b93441e0cdbed8dd30af49cf2cfa4825ac0e843fe3a04ae3e8cadfa2afc6d0728db3ca317cf68ca8955574a3cde7317ad269483d3ac32f7130c51f7e0e13516c0949c0ad9673df707e986f78f8bfbdbb0d3a6fd2cd62bc7084f813512d56e1ce82f525ad5c3a90dc265c8425405fc39b91369188e03b8cc948f55eb3e9818a13a004e0f600c421b3c4fd837a0c3c2a9f450b0e5951e84f054a854fc6466bacb1d161a47f279b01484c8b980f3b1ccd216dfe41369ffcc5ed314a004ca1052dfb3792a794b8ba4c612702923053302845ca7385e4574f978d1524295e6bdf8b77559a3b4ff8f2bbe9eae01e3a39042e0417846f37be98c2e40f48f8ad0b0f32ee1555e4b83b908e8397c847fd824879333459d328244a5a4f4b0c15d966cf0a3facc6626d58c78605f3089b1b83db5d9d06fb9c099c625b805cd1c0eaf14a5e7231b4f5c380430123ca5771f213ef750d55aa552c609ab0194db5632271e4311d97842025701acd1926811a68b9b66d86c9f7c36947b0b0d0eec7b9cc0632749860d5a2c3f8b4bcc1813bda70a0920356bebe1673d8239c40364e507b18fad7512f2156ae66b697996775a26efd07119ba6f44a535cac308394c8c96bd92b83bc36ce9dd2eabac31a9ffc3a523a5f42baa92110311b40c2020434261dbdf74f6cbe9a08ec0e7c437a372ff33630cba616ca5931c2ec321c5d2bb476c28cb97f419086bd0350d40c64052d6c107d64ed4890c3263d23398991ca3c1d09ec50209241d702dd6c506466e19df58205d1a7c9d9b27adf12596e050777d665b4fbb4bb9d7c9b7f0c58145675711a91fb822bd1e272288561a470deba3fa19f8c541fd482c7eab77d22f1d34b77b49bc84e5a2731914acbbb5c5c5e210bf0b84427e43fdb6587b0641fccb07331949a32a1b145132b90625489f9ce801586d0308889d742183e48f058afcfb2d1849a32310c0f6e39f63527056d82b2445d0983475d0597e2789be109a30eacf84299f8ff164490730c0481b1d1d077aa24ea6664ef273da61eb15ffeb1314602d1e1e4f12bd6435b4bb7149f9954b9cdba34f13bf6bb0ea80a9ca93004a2c137f43efe3f4df18a49320de1acc34f9d1fc8c22ced1bc8c5e52f7b495fb4617faadc187f186ab49beaf894c071c3a4e29a4c111087f95220e34839deb0463d6e2d35c6f39accc619727831e5d800cd52ee40fcc4288864067fd88462bf32b1590733399939b51496968d2a1326d857b9ca2d14a70bcf6958682bb473d325a3741c5c0529b8ab2de9a0c723c614f05058c777bd189bf1780c28e90e90c5d8012573fbc1ec041d1e33344469373c17491fb0bb631e38e34919e0ace929b539669f36a794b44e7da37ad0db0f0906387df34fe3810fe521441d37a51b813b911d09c2bf8ef1dab112e2646c361c030ab1a859bfd33dd69399602d51837616325bc2280e4c5ff102a73f1e0394244de73262b6fd334db66ad75b84b9141bae772f75051b7265b2f8e83f388b26b823cbe69fe472a7e89e2bedb30a492e292f519a824358e2c7b2b1496c5d8e3f85a067c276ebf2c6fa06ae3422092e45c7f89b6089ed297113ef0944b9d2d023c3e2dcb9299f3c69e76f5f8164302bd5bf3e10b2c96a29f52caf94b09c8f97d3fea43e3a38fbd332b0244eb4bfaaeb72b70287db83a4674d6a6f87e49597c208250e7164143f22214adb4f5b0d4a1e23a1e9f6354a37c94b6e070a4181cf921bc4eb104eabd6ef4905fda9be6d48c6744498850e577600251314b687ef2bd06adb0888745393f34d7e1e8512218cfd3884da035b85e7bd5b904a0be5a679d8af15f5abf051b68070fd42e7d2ba71daf4bec5ea4f5c09a64d6cca07740eddb61e261061837a9decf5a553f03b17b52f47c23713e9206517a63e5deb69e8833d4a1459b9e9ed00cc096fee57d1b09d6ec8803f93995efd68084353c1070998545dcf2dc1ed07d25cee4d94b47bf9eeb4a13bd3800acf5080842258e797aeda39a2dec918e92113a4c92785c94e5172f61553c03735bcdf5a885163e014361fc2a596e9822027550682e763cc5b4c586813fa9d2b86b680e422e533691686dd38c4bbe4f7dfca38ebc24222a14cb692a760b7c8ecd0cbf99c9363c097e5ef2b69eccd976b32bc84b7895a6c44e92c16e928b00c331bf56dea0ee98e4ea402ddd338beabbb6cfd19bb19575e282cefd63d399aa0029c97201e0e31b1afbb26e828fbea113d606f4c999db24d3b1eeb2285b903ec4473a5aa3b2866b827bcbdc3012f50beb9301d417940d8dc261ea71214f2e3a7e352ccb927663fe059a7cef89d17a1a2bd0346c991c7c2f0add082e39eb513fc21bdd6dbdbd9d062c1104582fae5c7623b03fa22821cb67996d86510aa2c9d51ffc128cdc1dff94648f03790db7e15e7c3733ae619e600862de22e34af569c36fce2c6c344be54c2dfa5c57c8a1bfa8e91fad9fcaf30e6bfb5c88155dce9103c0d6e525c1f6a59c1b61b4f6a83450034849608c0f0dc7a7e84e34e3f765da026d2ebf77d970fe9860589621cd2755e9b01c272d3b8663f8bfac51b1c3811da12c1eaed30beec59387ce64b0e0fea865f968b5da5a0374ee1ab97b63cc417f572d1a453a0b7589c01f1f488efd5399fad01f9aa8071a3ebe32ba3e3038ca7a5d67082a02200671b9d3442f84c586a0955c8f7f1f283542a95bd7f39ef5903ea42ba7da179e5d80021cebc2dba4bb355f848440d8d200a02507b9bd477bbfce5a443f238b5fb5fc8d89099f7a3bcdda5d5fa16c536b503a855e42105639dc10567796c9d20b9574d60501dd67298c2c294cab1bdc01e6158ce455625da88f9555fdb186c7a026af94ded48bfb04207a83f448cf0962024d2f543b14555135a240d8ed5e78f0415e3db74e3af9c96f7e5424699d79a390901cf095994f6f94a80b81956ca89e0a9533be8677fc53b579a005b5445131eddcc13cd85261fc50e59292a7eee096a631671e499bc6bade4107126a9bbe9bb31923fff6fd3cad39c6e4cb9962d7c671a5fb8d973f24bc602ceb14191f92f5123fdd56a6f621186ddd3fecdf95267c983d73b3774cdb3f4adc259847c932e900a2621ec546baf7d1128ec0965b24d29b66c576a3b2aae64f41daa7b8670fe53eae65e679e480b85f64efb32bfcee3fc66bef21064fd41e64b21b05a1eee43361f3d1c0aa4947f48928836a8c8527693199d1e2804a9edaf89ac75f7c7866f081d8444285ab4e8e4ea5ba960772ca17edab8a79e17dacb63f64b75fed35fc5c2314efbcd346f47626325a36c47e27d15805505c80ddf4f477b4de1edf70ff3244167d56c314d58044381c49a84c5cad16f3794686f14cdba541996f11730d84df003091018356af90212ee89501b3bed2f82502450cf1bc98a31cbefc57623fa6719e9975b5435106fab9ed45a24f4da39cce85972289bf75b26daa5fa54490cb551a22c10fcd3dbd3b652e828cbf541a1aa56d7fbfb54291cf3a06b2c03308bc79fb664b517a7308fd37ff5e55ad019abc74234833185592d566b66b040b4944d97e9798e42076d7a3068c7877a13df2993f47f31a779e5f112976e11af51d5bf73e74c139c1171d46b876bab2108972068182d9eef090efbc082ef886112bf6d202edbbed79c21b8f13cb1c84304b1483c541406a004624206e004fb6a99e5ed851317115040c9959e1d40ecfa02c0df04d32cc0692c34e461f2911f865b8d19934bd68418c1beba3d9fa4af77a777cb1e4ce6771542e57a874e996a1295ee05661f295b8f0e518262819d6d2e68b16ae527002dc0785b2ca2b49e3185a8373f78ed3548d818b68229f64cbda00b1b6440294aa9b628569fec066109049f58c1d35d0598a04c809d872cca9969b584e00d7ea88c84837963a206d6c6d6f186eb6eb9d6a77ef88927f646939e796ef8b844abfbfddbaf4711128f0ab135737636adea4de1e20b5b61625af9d2ef9fcd728386a312c29a6ccf3b28028e7be44170f6ff7c362050fd5ab1f9a486005564ba0800eab6feda8627b9aee8e3b676da9f332159701908930d998d1b002ad970880223084dc8691b2049f017afa6e2c3535cc166e9b17371810b0fa3aa41b80bccaf6cda4319ff8069df3da557aa989e3bd9abd867f1c76e962e5af6b18f0d0b68cdf0ea82c2fefd09467cdc6e49f601c19408ce380a03c89bb8eb70b5bac849e9124227705ff2e0258946ffa3c25d6d70b257e7e638027b522d34363f10a405129e5ff375929da856429bfd23ae25850e569ed5f939f23b0564d4f06ea9b85e1fe6688512bb144b4c24c9a5039df3fd070a270489d75e104fc71d9d74f637599b1af7cb2efa63ff9b2e1427bf16484e59e02d4001fb0faae074ffea8d301cc73c424373ef1e8f38243c43c1d31f0b09c757333f9e154079d57f52986639a5606fd79cb3332fd1eb57046b3bd441f28118ff8fc4bc7c000c8fccc19ab7d73ad924cafa94304ef920c56a4c5ab3fbdb8ef14ce0c1070057b4d11ef9ac8161f9c518aeae40d0e0c7a787e0aa0aad51e2aaad9f9a189964650d1f42e737c6aa1dd1d059ebf12c0e3ad08ae7add2009d0852e0cf4f77e1bfcff6833696570bc5df100bc3ea3d65e03c59caa75fa265a95e7f1f8b9f37708ef20e9a66dde79e53bec8e436599d65adee3b41edfbabcfe49ca0febf892152ba90bca8b4895d64b1fd7335e6557073ee64fc18a342fe484992ab265baa214811ed3f999cf19ffc393056e39997ea093c894ee4bd774b37ec85a1fe2979a76124cb374025809d54c53b967a5c55adb482e02881abe5df61015108852d3364b8515367936c85fcd109004d78096e0e5d4686b4a681e65771212560261115b0f4230eafe74e620ef8c19e3fe30dfc32d8ac12454aeaa13b6814a17cee156ca9999dfbc8426ae43c7e85ca63808bc667d5768761a0591dc6ff8491606768c1e93fa95bfbcf22de9f4f46b681c3265ede41b4f54eae8372852e3b16515283c83c676a81a8db3f47359de463e15979b87e10725ddb5a3065eb33b5751fcc2693e2b9aa1d075eab10fa8ddf8da5962266707bf70da59b07bcacc6d0b2017825bd5cc896b7625789271f1e8706fd860a0226f9f8c42185b732f05712719573111ada044cf947c94d3b297be0296824614be21d26a8a36e82781822da14cfa6cca0448b83e257ae5d27675c9f4a0389c77fdae21884857a01a352c5d05aa127b41917707dad1a32fd4b29b8d714798c4f692c3546a7637513a3002981d6d4a5ac8bfa3c51b5a228e0d1c1da913736c6b2005711580aaca14de6f9f7de856524a34b0ecc6c6fc9132279598c057a9b7b432d793509141be38e1371816504e8c5f1128705c67f17460237c948aa4382d45f3c5f03e9bddb174703c80ef302653828d9b0f9a308eabed6e184b8b8f442f0288100474aef6c5b364a3038e78a23ea0344bd2178910daddc3f8a6a3048378c57420b9a6ac548d739834662c0756d041a5f1094b9d9559cd8a033f76e5e768df4c8bf6352637a90ffa67aac1ef7a473a45f994eb695572d84e9a08892ad887e40dceb5ec809928043fa8bce220478338f8b80c07d358e0e2f3e65e365b30bf183458bda63e8402da9c59724bb0665f0d66667ebfaa0cd86c8b8585dc518332d7d8efe661edbe5a1832ef9592ea5cb51bab16e2951610fde931aade29b20831eae168a1624d7176d19cc3008f6c5001d49693e8f39f70078916116fb8bb4910c5f50c5adebd0e2d100b63a2de51514399cdbac56dc37f04126983c28f7521013bb4b847f853ec9e68082f39fe1fdff0cf38965f3043410155cafae4f162e2424a340ee2c86ce5682235a25269e50e7e8b74b9ccb1b430cd7fb328987811f89e5d05bb16323b6306a1a972ddba22cec6a084294a824fa3607ae48fd30e5c70bea508d0a7e489013035a7090ddd5eebd5cd603fa72f9008d18282d0042e93f43812dcd44b75998422642fe055f7abfdd6b04f5fb7953ff84e08f444b91cb5bf7aba7d51e13aee378d60e03cc59575c1ba0f67d40b04dab90a8176e5b260c3c0af7b55e246c001cb8aa0755204d6292e439f53eb3cb886420cf80a495d594475149cbdf26462ae45db60ed602c19ecc221aaf1c18a27148d40098811d9f5ec8ccd4824e311c6bca2f49dc90e5139c4c2e7f9432b91cdc0eec74abc879d78740cce92de9894f596a9b746776344e7eeff3495f386a21d260d901833fa5d4debd91512385ef1fe221754b2b13e71e0a2ad8635b3eb08d674aefa62eb0df1986415773d8419ac65b7929957cd3f06654a573e113677fac4e8a40a836c4f9f0f876f63eba339c14bbe54f4fed0f2655af47398de6118bc0b88eecab71514fd755efc140dc27df87ad707b191d57005cb476b2e7d8563420e1bf6c86722ac4acfaf0cbfb236a71652f432aa61fd493505bc8f0d3c303d03ad4535c3bcc4169d005d371dd182056a9108ad1f2a7ed94dabfc5ef140df441bef29a494ff3aa102ad6de36690e50bb24d3eaad79c2e389115bd98da93fde905f31138a4f12ea880f59b9cf6489c8fbaac4834b040c459f3fac43c6eb07933c3ede2f320e99f912715188342c3cf8db44e5be2c5a64cea9ce21136420bec10d9964272374fe8f0cef25b714624223bbc5c5e2401b03de1af270e49ab185c1da6e95041b666bd67031c69e47851587682ab091c85964d6f0180f957529de3c2f9b201215201ad64a2f0292562da7201c1753ebbb50ecf340efee467710bc1f990fcd4c4ba2a635d6ac436b34cc118340f8862f54762b3baa0228c15f857ee0c5a17974f09a420861d40ada1c90cdcb9001a37ad49abb59008afbd639d977027217e0e22c339748f4773528925c9f1c42e66851503f0932a31f4c8625705a8a8b8da670da789741cd929d03fef884e769880b3beb6a009bd0c674075ade4d6b4e29514e87718f8db8729189f98b9e237e19d58fc7120c3f19a241d2175e7b1e628f0b1ee8a6ab898cd1f1446c6b086adb874e5b1ae2d619f5160e15bead09f5e091f25060e3fce9c0aa154fb25a39c07a849fe0d4aa9779fe3ac7f3b1d1986368c8f92dbfa7a14e52baac4826a19b116e0e5e75a029632deef0a869ada7bd67a6a6b3e7a67f184f74a2e17f07cd790824b7f45344417f56eb697bd11a917a174aa2a317861b5e8b1378af40494784a4297540bb40308bd866090e113765fa00a88722ce0e7125447782a24a32c760afb5325e7314114ac7cc31dd9fb817eb2e53f87087087da3f5005a5d87ff61cfc882dc1590b242d61b190bab098b86f0fa075fac1cdf7d5336559183baed55327fc382080ec31bbdafa91384610869aa6e5b8eaf75a88405acf4c2f1a0e9f92c4def551ebfa2dfeb6c1656d615d9e273d790e9cf6310b50ab9fa01f904b72c249c3d552116eed8a2c40ba7bb0600c53a1206aba7e277858bd78602559568e1d6f60cd42493cd5d55f3f8eb34421d656912503cb4351968529efa526861d91f1a630ce0cae7e87c927637c1cfb27e0e46bc08556cd869bcd54b9cceb6ec012496d0e14ebbf305b2b3619a664f7b4fe80c769c0fafde5abec480c144e3220546dc06e454af0858a2829437470f870011782e62a38a5ba448eda2ad5afa3c5e2524594cb452d3997411e76f591915ff2a909ec48a13f3b69faf801cc76c95f306418aef5fcb08089477980a38f3dcec4e4d1fe0499668da648c9fa22c37b4f721594e2e277874810be500bab9aecca915f0dd72cb81b296b4b5383b829f239dfee168d22174f94e1d6df9f3b4c6e09c14c5a3f1da2de7367aa4f820d4395a35383a384b7070fe0ee8392658e9b7a3b59caf80111b4aead525f4ea4be5342cb0370b1f2e5b0b72c27c794ad3ec8cc14a04a10d5f16886192b36486f2091d2dfa7a5183c673bec0ddcfa0cf4f1c4883eb83c12fcf51a4bd078e977674cc686bac8ba86dd0b848cad149d3e9bb520be97d8e949f51c567e5b6b10340784ab4290feedb0f50b47fc22df6253c53b4c640dc49e3da457117a691042707e01cc9dd5ec369de91b92b2a43036ad8ef9ea22dd84307b09e4ddb8b2a5086eb34e31ff8a8af5f332c9b81e700bfa9a3f0980c259decb14ea3451f283ed13970a1c92dd005162a95a36980f4364e971edabf244ac243beef760a8b6fc2433b145fa0f2ef43dcdca80e046ad4fb72b7d793a2918a13ffed562b98a40dfbe5028501ef1b9f18946657991493f5a4dd806ce32e5e813933d53ba721133182284b9f580a0b92407b9d1ff00d4a0737813b9d17c13e720774891c20290078c435376a34238ca577dc86443af39c002c40cde37f9e12ad6f58d8f85f6726e34514333a806f08b544e47e887e309d7881dd5744fce52ab50f9678b3e27ab728b14ac6518ef66e92ccfb78156d2c409d3444ab87415133e0c1733551ba3e837c3330792b4f652bc602a7371a2b0c1c71c9254d603f2826119b9550f655ae3f09441646eeb1a641a2d99b976f9d7a4ad2ac871db94c2fabd8fde6c961e09098b5981df01363b6662a80c784d753baeb7fbb5a34f4a817b3b341f8a63694b18396defe1d804b74a0b819c1d5c145d4e98dfcccb4c7d8724dd201ce1d65cbdd0b2fe0183f97113be636a0ead56903177025415d9ecd691e74f112c21cfb4788e5b6960561aeeb8e8a44ee02614e946665aecc98422f6a1802c2dfb2615d807e2e52635d07cee01f179e8d105fbbb6fcc6c805ae6f537c638f987159b2baf5047e5fa5cec341cd8f8d251908135e602a38b0d16f190a6739a4236cd87e927f107728b7709ea83766fca9a7e7c53896cbc8bfa3ee3dc0ddf1c5b3a101a8828fa2b32e5f2b2865cab5bbf7d15b68d7808a0b4ec298982c9ba3e725f6dc02178b0ed7776e15d8c9742fdaa39cd8a931728b1439255a40bf7829a02f0f4448023d344880357a0f02932810c3c1f0e6500a61be2d4d707e8b12f39fa80f435617a0dec489d97bdee79b49dc443a9423904e5675849c89861079538b6ea7dbd8d2fc532793c836222238f8d59a4c6013df651b46fb830e6d09f2f1ee6bc096bdb049a7c5caf6d1d9ab3bd17a7cbde43cb87b5bea9aa0676ab8a8bf4f13c5faabdaf9576542dfc01a0e006ba04bf30195dd98c25940eaae111ba7a9fcd4f883efdbdcdf035f5f751199e3001a5501e69382f31a30e460e07306796391c9d39336dec55f23808b57d57fa1df220ab5e8b0236232139e47295afbb0bdf929f163e6c6ed9b0d93b19687ab369431e15dd06902b43e6cb7eaa4329960a4f5d46bed862aec5f2fdaa6d5781ca64a516b5f96f7f25e5453704230dc14576cba660fbac24fafd51019c26295772ed71cdf759e8aad5141dd8ee035e9f2f1bb5a98e8894775b34d4a47463dcac1e322926a46de5c36f91c9e371d0a7fdd7facbeaa5b8737601d660a350670bc18c64e6be4d21cfed52b6c6bc438c78071abecf5562f979d9aecb3f8df45877e7db516b44b4d2ff4a938260059b4a4ee9bfe2d4bb59df75724a75ebde4437596d9043f31a48ac220fd11c25ff47d1205150e14d868746700d034bdd053d04b000898fe9421925cef6c930f3862d0a44d21c39d9bd5f7ebc7673745e6dd1a184d3384fd0ba0b695709a5835ce7fc02a14bdd8f51ab4d6c12ce83f9ea03c98921872c64dfe57a6fee5f5a6f0320460b646ec8741db515a3cf34ea0ff1af3135e073b3488f307ff6a60d4d06b59e44ff82bad1e638aac6776aea5103f44b7bee03a651692ed0d115cde7f4245e879fc107bb729d7f2cb466917acfba7a2f04583105430e43596bde25091286bb3d5d1cd450862ba9870c3a6a1cc62e6c90f1df40d9e49f649df4013f2f31a213e9d230961b69edf145d2b59502c187fb8bbb32f0c9651028668b757ac13b14fdcbdf39078118d2e0bf84376725a4b45ec74a26a07eb7ddeabb9101af0abbbd8877b1d09ea789b506ce5d2b82896735f332e78f4dd3dd1aac7548a8e9de55a64dc5d7929faef9917918da72c62c19bdf52bab0d4571408dffe6b4ab8f831412734fd1eac291e7e9115b1f763ddc5f4df6a88052fc09a938cbf3c036c9de3d15a98386fc0cdd38be30a9e18a07a5a1086a8e4d283fb3d059749292139b2f5d6c9a42f05219986246b9f64085332c992d9975ccb64704d0e71f2ee9d5c3beb64ec476929ed0dcd26372fe135b54cebab0a4f56ea37db553e072e44fb8c74fe40ce64d873aca50762939b63931e080d6923ddd712d214ff638bad99b8a74c5302dfcac2a8fd6f594b13a6500395ae1a961d6c3ca232730bdb1103d6806e5cab638e77b8e51f4855d600c1ca6bc1df9e7db056fcc997ca5cede42860391aaef3056c2b81279a5705edd16968e0d521b773aadca604e8b65b271bd4d62d066be9b83181e0268a74b7ec75c720ae106eed70dca0b79a315857ca6d4a806ebb75b2416ddd62b0968e1b1308dda2f51c83ec7f1f064ab09239273a5b39e0acc657e6a1022e288159c84cf5d539052e470caf2adb45c4daf9c946e8258ce161366038fc1d6fbca1ea11f88fabf997b1415e1b7401259ce1f5ed51468ab8e903349a63d0e6cc3d075c8544689a0b9be9403eb01e283ff114929fb34e7d19bd0a7457f7e1e4785fb348dc69b108be7feaeb636d7a130fdb4de1228ce15e13d1b5b9d78c57d5f277e1a19ca848896e4ced12b65622ded7a697bc7acfe554786c672017330a6058da260ab0f8d934201596152a40341b5a057aa55153e98188fead6bf86194c48a7115d0a3b2e0972b0dcf4934aa366f87641fee9e95d6177d0854c1da5f9d8da7b7c77f9962617c311fb5072df16e4a9e2454a0599b90f16439fbbd585486bf012ae6c5158c7492daf4d327f4d7e8fb054cfa27ad97814678115aa4dc3c2d916eb88675bad1d08107e433ba306fcfee2b983fee6f6ad29d0de8f3ee46dfb4a00a1788d5c2b537314d539b6f28a032da18a82c044ad54598fab0a06d9b3651d38259fa4d9743a2d5d320dd5f229d1b06c608d4c33e18489062149a70767d63fd95bee21b6fb21f53762ce46a7aa8ab417f27b8969528d858d7d270d60ea83a141f48dc5cedb8690e4434ecb3336e2a7f6879862cc3de4a56ed87cf3cac7e85353766442f37673e58efc4ed1d3381f4234e77b5fa9533742b3c473441416a49da9199b88d0d153e6e7d0231316164039d7162c67e6be3b1d1dc08d19b0239b2c5d5c32c919e4d0b5287b913c72b4f34832c6c6fc26bb3ea7f46cecbd9eaeee5fa086bf1567b31b4b2c63c619b7253462c1365e4675822af0bac5d229473294e07a4712d4fd6d0df4d31f46e7345a4346f715db150235dd16571b66e1cd6b1c2e7bdc8545ee36f1a20a86a778e44faa587b702b5857f9ffd6c7cadf2be0a5286e49cced358da6fdc4a62dbb0895930190a9ec522243632229c99ca064739cef81ad5ee24de716443844b26704fadb92d86112560d0df215dad69c93f26f6a41f6a192583db7b97658c8912d737c7f568dea39f7a56201fe67764a35bfb99140fa95d2614c9248bb1f60e348a47d68177777a731ed5339de733ffb9659baa5e924fac1c7116e4241cf1adc8d80c61935d5672edf8602f28abc2bd2fb25773514e08ff6d158c1b5b609f23057cc002ea49f2705d5016196d3a8d46fc0fb25dd03a6037c7e73fe0b90dec29189732ee6d604f4401027cd45146b188fb80d484e059219cc815eb954f7b7f086ebe4b0365be56acba2f434b7c4bff4d84762f60db601adcae23f4bf9f9a88d052235bcabd032a07cc06ee062b1ec9927bb5527d977becea25efbd6a24ecd2a7d8d6a39fe827267c3778c5e13cc221ab2eabec9c33d1144b9cd32ef33a49e64c2db1f3de8fefb28a77544ce2234c8a2b8e1c39a79939e72d5da489b49016c2e10adb41389cfc4dce3be3dcc1e1ec557c994fc277a3ff83e49c9ef32d33cf3d4b98b4239ab0cff708a249fb766d03afb47cdee9663027e1709e795630e7777884b40fec64b0833412be2e5772255741fac85b442a27eec73cdf64d861308d44d939a724227b5449c361e7f4a983c49779d9d3a516c23ea48b4622b2e82337222af211b1b3c7ce1ec497f9cb31b0f39b77c4777b659974fbab688a4234f18ddea9393e57a7035f4aee06658f8bfbae7ab3b9491a9ef2089364e855f88b44df37e77b85249a22b3e4b979cc1ca5cca4b9c15200efb03cd281df39aec3b84ef06137725ce08d171cf227cdb7b089fed1127cd6ad8f5e144d6cafbfe8c1577390c1e16581312c194c8a2862acd125365663a704fb9c33ce307c73ce39af2136e8616f44d9ebbf2e8349d773a0f4fbae5853b0cfcbf964388c4f59605842124cbf6892ef83a229daf818639c39490099f165466969d71bd862df64d8f8c80c4e7064392b5f71c0d8ce000c78b573df647c1c9edce4f1d97988a6eb56e831ca83be8f175de4bb9f98b0e4e20bf7aeda431554bf7a45b6fba77ad5076903078a5470c0d8089e436b14f2c0e110be680a229a248d258358eb8e5a72ecbee2a78de0fd800d62c91d4c92008756f87f1f8d9733334c9271fb2dcbea9cc8c2fa7db1324a45b2fe0a2ab74020733814f2186fb5a45436a52daa0f56c8a135d325945b3cc333ec22afebbaaeebbaae4fae8bc17686a1ad9c2cafbe2eef7a4829871c3206cef8322fea9f0c31c2c6de30ec185531d6149632f663509125e69c734ecb9a36d3b22c6b5a73ce39e7ade9856fce39e79c96356d96e004b171080e1079f968673462c6c62146c858ee648ca5ab5919b232c5a85d64165dac5b35a2e28bf5d985cf7a6c01339280f5eb56bb2005353535353535353535353535353535353535353535353535353535353535353529a03da5e4d1c216a796b2fdcd22c1178714d163e3902278ecc69ce88891eb823bd951390d0dd1e48530c45004d1c542b16d022bbbcb41490f0f8745ecc90978278e9d3b6c4f2804de5e59541556aa9410fb7de06d1baba44b656167a5f23cf072cae2104127e704c4721c7879c6aab8c0b3b34262354dfab0d82a0c3d3c3b94e62c2185d2b9a2113bb2234da67f371bef824a16fd9b4923c4798418ca9984e8d273b585e9848cbbe69d282ba70e0c62092602bf730808fcce231ef03b91d88143e7f712b14423e67702e180df19840ebf13053998282196e40c0ebffd8406fcf61466fc361664f0a7835892a71b7edb07317e7b880dbf5d04061c747e9f2096a46a01bfad0205fc360cec6f0f01833d2bc412cb24e097b580805f5ea286df06e2057f928825c671f1cb4a987e590934fcf213607e19099168e2cee719c412a74abf6c04e9977530c32ffba0c5bb2fc412f71ce0974760805f3e41017e590523ed7cc98458ea9b76e9b3f8955120c0afb4c28b0cbc85bfd288cbaf544200bf328901fcca1f58be4422961ad52eddf22b4fd2082b6770650b2c5fa220969a879eb318e408ea6ffc42dc82e5632096a64dbbb4ca6fdc59894c60e1cf88a5a983239aaef3654413f694df48a40614bf33587eb127bfb78cf28bc232c87266f92b6269eeb44bcf52b6d3d9c0305da211002f8500cc036060329d18f0520780f7d32107f0b264363880973600bcdf0cf08a321bdb973173ea12e5b901bc3406783f1b4e3cb6cf00f0b2588a5a0078a902c0fb59b00f03bc2c4d6f12005e8a00f07e358057446f6cff850c4e97b01e17e0a526f07e34e0f4d83e0c7859fa9cea12962a819792c0fbcdc0a994edb7002f4b633807002f350078bf0270cf887b6c63322cc04b0900deefe50693b17d19505dba54edc2d3a5ebd42efd0180970a00bc9f0b78452adb0f513400e0a51f00c0fbad00af08bc2cf69ab1563180970504afa8daf46fc3025eaa02bcdfcad45101756c5b39edb2d3258ba65dfa29e06511a500afe84301de4f34e987025a34b67f025e962d14808bbee963fa30c974a0a04a65a89e1e93ca36f46536590fb2538693dd1831125f244f26443693c9f49c4ea0caf6435561a54a358fe6115fe84d10724e383b3bf1457a95edc6f55016501a3a4365980813e95259d859a9f8866fe28be42adb4dc321824ece69c992f82231194c06980d4683cda85495ada6e202cfce2a4890ec3a5d47b85097ce952369244d7c91b7d735731571dd5c36174d121cd82a0c3d3c3b32e28b647b55b6dbcc59420aa5735b6c4b7c91d94e7ce9cc0ada4c0e34207096b0ad05147c19db59d996b29d76e9df17944856b2f1dc49cbc845a62359748b68ba9399418aa43f79763113649a8fbf23b31d984ce716c0ca774a934175d4e1b17d002b7f33218cbc1d7c2daab4352411677891430b2befede093bfd3d25236c6008207c81e5627e021841042082184104208218410429c0015262aa354a6e1100b55f6f18371180887a7ca41388785b00e874c845fb948652392e78d4dcad51a1cf26aceec57ce1aa97663ea449475b6ced62f2d7cf33b31e2bbacda7815058b9d8f58ddc55867561d61125b67996e148c324f16fb262396be76c19eaad103974c1e532d5032606102ec8b68d21e0f23322092acb086e8821988c5ce3fe67505b1dbb9edddbdee3ef74f88af4dee1efd35cff33cbbb56f39d67a679dc3b1dafbdabb6bdb79e60700425ead2eaf64ba8b4c9cab6ea3687a468616959336d22107de100435b06505af32ed97af813c742d5b005cee37e6f844f7cc1bdea3fcda09908214058cecc2816064970ec43650467bc67167efdbb76d9bb7fdb379db26dab6c3f0b66ddb46b9b46ddbb6a28bd9ba6ddb3ef5a23eddaff78eabef4050b674311b9881577bdd42aea56d542a1489e4eb9453a638c43a96e119ab7631f32dc324eb33ef7098efbeb1fd0769b3534a29bd610f34daea1a75134dd9f62dab6cb77a9bc762ef22741226bdc8c075b589f01b27a761d03ffaa67dc417ecb4b60d873b32b058921e3c94acda9252d1d47645579436aa2d6d17ec94a2240bec3aa6f59ee363bd1a6d0672f7858d9706cb711fee21eef351c5147718ccfd0593b2732e2c771a22779868eace711cf7c8ad38ee1cc77d0e76311c1839fc701c17c23ebfa17f3e95a59bf181dcaa51f2a3fc0169303333333333735ce96c60afdea08715808d436cb063b717ae6398d2c03843c9d362ee623466f666f03192113799a48db26a436b52e7ce5b200f2cdd8c09d200bb88b6d32c8528649da800dc64241c62bcaa41a3e60e7a2cbbc8c7d7e34e1e167b7f613bf65e124ddd4b32c5b7c36031c67892889060210c3be5aefd7ad7b04b2321f0520eb1abe86678a00e693fe0e56be71ebb1837b47b07e07c98522ab1d8f9510987588ce001b21a652a95519a5da357b6d2cdb8a8ca6ae76f24ae6b5bfa7da8f02c2c18afb81b8c57d1c5cc73af7438cc5597644aa6642a45e9f7899a65644aa6e20b653b6138d5898a6cc17e656831a2a99e9429a551635087a45aaa4b943e1cd5d982c3dea29bb1c24a231c62d68e6f6bc17555ca70a0ceda43a5c1214681f8827d02910536bf2ed540a9e8f0ea46d58daa4f8272e64437a34149c332dda86ef0e218cd9dafdf3d7637b04ca3de034c345defd3108e1e7e225e757747d1c558ddcdabec6ee71d8bfdea4c7433365087b401ca96b8acafd5b61b86a25d67d94b83b42c8b0693a48d8ff700134dda65c9a4748262e204974497a721ba88d6859517d546b10bf61335b28b891a19a5463ea9915d4a9f85a28bb12ceb05cab3befd72df7e6717c1ded5185f4c7433385087b41e78bd6fb72eea62ac77973e38c4de5569c3abcb2becde0c3e0a5efe065ae0d4a48d0f4ac18ba3c5a6e898767b8e8fddde1d783ddbf96e40f22322235f911bed2fb8246fc2d143d165344da65db06b235080a67547e96234b0032387da0b26e5b820b0f78595524634d10451c92537447887c7c948f7b0ed873a1bba9e74311a2879803aa4e5686ee44d0eeff45ded7d1fa6bd2c8381ba191a783d182e6cece18fb286f82eafe419f4ef5bcd2171a2495aec571a61435dcc76f67ee0803a1cb6f3efaafbf37d22d1c350953c68bc1a2ba8b208e20bf6af32109105760bbb49e59b76c1de55c641a1360b94335e3783411d92ab92a64a1e56093e1ee20b162dcb54c6b1d81988688a3fb4cb33163bef60d23cf6824b3cb40b76223b45782c167b2c761918efe6bb7266c62e125fb0776dd48fef3aafa2b08a26edd88f020508d45d0cb6da6334f10b83db754ccbcff1b1da29e5109c3aa4ddba19da19bcc1819246f2603923793089378d358d79e8120cbbf07528ea4ba96e54b5e090b51bfcb0dc0cee0c761743bb77eef85af5ea0fd2725cb99baeb6882ffcac6ef5ce60f90577c3d52b8df8c1210673234f2a393268753ebb14eb225787c36f500eb1d3ee06066f64200d0eb1ff20ed06f600aa78e88149dab1d360924cd17a5b544d32c162d288bce9520b76e1bfa044be222223bf217699ead2c4380ade4f45d4f2d8298b7d2371b3366ade84657806ecb4fe202d0ed751c32e311276c18ef1b0d877586c89c57ea38e128bfdc2588c93588caffdca6ba00f939160bcb298d6cd90a00e69299632a3caa07a62f3c4310778607384052c5882052dd7e575c99797671bab715608be4d491697d8b9c3ce120e76998f5d8c8c3efee070c6f90cb35a20844bd2e688c84891ce61520fa229061689e8827d48169306e11eda810e60e74b906f3a279afaf3dd5956de6bdba7be2e50869a8304632cf529bacce7643a7636cadee0df467bf986c3c920e3443e0c66909bf0f5e4f40d937e70c963d29d3af67acb5c3ee930e9863ce7cc2d8968e2727c3af04a1da4bcd6cd90e74b1e4e32ef710fd6015b66c3bc20b07789b5de3213ec1b2e01c15a671e6b86589235c42442204cdaf41702afa841e0bd0d80bdd266eb38cb065fb4977998c752624613e8d6a50fcb5a49504cc1ba1258dab04523418fa01ae34b762aad256d346537b4fd707cc3377cc3375956bdac7659e5b2ba6555cb6a96559a552cab5756ad2cc39149bb85bcc71895606354e2aa8172df8948e533440675313613cec4648b2b19fec1e17574b8d43a2d4aa087b6d06523acc53f6e827cb72f67210bd1f4dd92d4faecc12511106eb1d6270f9a194474d142b2b0feb9d5dde24826b03c3c200fcf81ac6c68e3102039768b1ca39cde94293295983232375f4ac42a1d54e8f3334653ec92b4ac1ed6ba914574a40f76e90979be236da4cd0f0ae40b2212622d1e1326ce6383430b7450953e5ac7080fb596844a9e4484e4934774ac850ac35fc4635910286d6ef0813a065556c2a17523adf30dff609c68f26e9d8d88a610cc12c452df88209264a48b16d2393238b140081008bc38461cea701d7481b05f6941879199dc781139c4b22c05742c05f4f9d0b70d54adfb6085401888a500dcba0dc6114da0c79d157be30e8abd71a7b337ee481ff1c57aa84a1b19184417eb0040a1b9d2a6573cf04e1b6b3578a70c2ce8319a4c7e43f7beb514be931e7cd287ef26dfba9edcb30e02affc7162e383654f4069c3a1d5624d6a0e0dd8d09b071fe8d843757a555ad00fd37ec7013ae8f3598703e813a403e833f439ef8dcf7f9036058716dbbdbb465bc8bc25faac681262bfd3a37887b94ee905636f00ecf659410fd53b4f91581008a361f0b45ffd58397dc417fa8ffdaad7e3d9af76463afb55eec4d9af6ecd63b35fd57634fbd58c4866bf4af986daaf624b30fbd54b75d9af5a412cfbd52969beda38e20b3d0c96d1f6035be20bfd945f8d36822d60e20bbfdb68b07c518bcef22d51f8d18fe516d692734311af99aa00ce0c0d73f32dee18c93209b3125ec2bcc32ab901121b871051c41221c4d26b27ceb88168c671482f8388764e8a83c339999953f0ddd115449433d10444a2c04ed98219d87e473bd3a08d09529133d7bc9cb96a0e16182d9088c31d56ca644a2082081c914874855429d46894f5489354daed9af68ef3ba7fbeeeee5dccd9bb2cbb47df1ca594b668eb4cd2d168341a8d88c8b22ccbb28edb34da719b46374a411a9c36e7d699a4a3d168c48dba111126321a323941a126329493ce840b695bd7719aa6699aa6699aa6659a26d234ed309aa6699aa6699cc6699af6e1389086f6962e46036b74f436e8fc562d99c9ac51a3d168341a6597979acc64c669acd1f3dfe140cf574824ba3a9374a41a8d462322b22ccbb2ed59c63da359f7fbc2c64b83edba4ff7affb7c54311551dd5f30697be7c276a72176dcbbaeebbaaeebbaeeebbaaefb40dd47e3037599966599668386ac4c3b35ea6eab675b6dad664b1be6089552d15f790ad2c8a405daa831bb884cd3362ecb3222b22dcb328dd3beee947ee0a5342895b54759b63dd3b22d93b5ed68341a8d465aa665202d22cbb28cd22c033f8e66ab4ba669d4b061810ad091a84b385429d468b412ad44349a4d0f0e298c74112f4dbae8816a74d3ae12a75d0fd5a880ae6d616828c765302e3ab5c1c008b5499f344a9be813efee9f3081726212ea6cebacbb3fd9fbd77b730d52efc33dcb4629189a8f430ce4b237f70cbc385aba5fdcd65a77777777777737b7b5c675f7765dd7755dd7755dd7755dd775519a1e9d0d8dd56ab55a69f4a2b934186e341a8de40ddd388e528e7a34bad56ab5f2aaec61c3358a7e0f390e9434dde9b7ad4a1bd9634523be608fd1d258f1f4c8cc643445504a359a6d1bc851edfbb80d943614943d58d2d03089f6b0a194d258ad562bda7594d26aa3036b74dc56b38e661ddd328d01d05ddb39cbb22ccb6ad8608d72d17e1cdd401b35408f06d869d4b0916934d368a685ea11938e464a5029d5ed5f20ed8fabd2d28d7f48c1fca294dcc2a1dca14b18c8a26f31257d4817fdd9f55dda21ea8860bec961ef208168a2f4ab0c026b59a0bc51b2c596db3a16fba6f2c8724a59e835ca62834b92a75db0cb8e3c3d294f7114ff0913973f93502edfc2a4939b5c5e0626852ee57729bbcb338049dce5653069bb7c0e3b48800726cdd22f5f83494d1f29a5147cc1a1e4e9520c526aa04b31809206c42a8d8aa7a878ca113d5664e39023562caff5b316f1ac5edfde55ee5eedfea91ea87e0f55d04935394a3db9898af213d5c445f5c45154d1535414e79ae22995af52a38d5d8c4bd274499e567e45b656a9845db0cf2e0666592e4ffd63fd15f08a30152c05bc34a5b25cda144d852fd53f54fcf6102ac7b6952aad8a9a4303f62a9f5d8c8aa7bc553ce51b732b2a9e7218bc92527548bb723ec22599da51927218cc2295a4f830e76d603d2a55455da994c3956a59956a037d4a954a640f87d85354b98443ec282a8b2aefe010fb89ca3301a7138e8eb5bec524d68a53b217993b1bb818d24ee96346f6e2617004bfcd28d9bb1eb0df6789ac480a3dbe8758325982b57e5bbc8856c4bb12fb45174ba3cf415d951b73cdd12a2da87257dbce393dcf7b7f3eefcfa791f4116b882f65817e2512ece713c524d08ca688c3e7739b1b5781a7105d7cbd834b26399f6809cb500ea7d7c56ca19009a8279ae2e41a6d57d976d541adf71f44c9136424f1c5834234e9f86cdf7a3f21bae82f9abc7fa00df4b9b5e3f3564b68610320b09e0e5448b87cba7cba7c4269d4ead4aadeaad4810a094518e20323167b7f13d12a2d9fb81a2d9fdab6e77dba18ef8d83e7796db92a6d7c6a8d79b587dabaef2010c54357086b14aa511b08427de09555b0d6b91bbc62837ccaa10971b4c66d9bd604d71d1bd5a89e34393f8970b66ac3f6fe9446882f45882c90f87cbe4dcea4ca9d76e141c597adabd34a23c417ebb2089145114622521162adab7cb344f05d896aac67ebf9f47c7cf286f86ea35652a542a950a8f8623d05c7556943b5e7db07bb58ff012448b720b2b0eed5b6892fcd48765e60adb08420acd5402cc15e17c3b21dc8ab6849d444b56d1593a6b55473879584579677accf2f5bc17ec05017f379af90441c3ee0fc5095aadbe6946447b85569b91a1c4e10bd80a4914100216de28bd576c398b2773f60379091545e1dc1d69b091194d9dbaa68f20efabd45616fab2ef6c66474f93c047ede813d9f6f60cfe720f0320bbccfbdcfe7393ef6033ebeabd3ce2e0604ce3e9df179dfa01fb03fdd9f0f0741dd509cef24caf9e7146a07715d65fba97c0a125f2c14238142f111568212a224acf51fc4b8d1ab3e02b68a491b9f38b47c00bd3f1bfbc05a1c44a2244aa2248a4f9cfafa09d185bfd337058a856f0bd6ea2fcc1d4b50f591f8d2dda3c167ddd0819db47249e8d6076c1587b15db677f5e1d3751d05b08f7068c99c1f3efb399f7c582bc8e9d4e305d67ab720bea8ba5443896a896ac5c35a28dc32a2581e0d0eadb39544a249036364e00fd2b68ec73386d862cb64db6d446b20f5fac6e0c478d2584bc54aaba4a440213a6102e5c42404fa3e5ec76d5a46b17aa9a82ca795b35ac4af692a35e55d55be529b933374a65a6fa6e9d23b6ed2969662e7fa5bf7ec6e6ea5b2e058720bf3d825ca5aa9393460b72e66e5f3dacae7b5f2f9eb12080bcf1e4ca229562ef624b787fdb256aa04a252659014550a913a27aa345165110e531c5a3fa9d248952a0e8f70b892487692f028913d7209cbf00e76e1217170f0f529d3700f2ba1b1b4069f572133c714a314bb320ccb2876c9190e2d1e12e764e9c0e2300907883c8193328d452946297665189651ec6a19133e00820304c7921698637eb3e7e444764a69c416828fbfc949bd4728acce041112be22c00ca121966066b4ddf866725127321128f6f8ec081dcbc2c62140786ce81be528e5c1210cf768f278f298e231e5b1e551e591a4e29c17e4bb7c536710d206e49bbe30caa41ac34b2b6e5d980f2665dfad4e3b100e2d1b7cd25e91a808933e464c7ea5eae4571eb1964422776412fec140ac256d2a093c45514107eb652340d8452f914493895b97538826945b964c6156c8c683f00f1b9b2913026d44bfd2a68262b87506c2a51541729884dd3a0b21c2282ec224ed2d609814fa0d87737252c909812a9f53655e3455623d280610c5e755de127e9fdda7f639e761308049269f97c1a493cfe7c0a4149fdf41024c6af93c0f4c5af97c0f5c5af1f91a4cfae70c896e75313334e714d95ce52b2adfb44b55794a6d798a9af2939ae226f5e45c35f956b97fea76ad7ede55ed5fedeed5ef59f58ed50c45bd0e56148fa18207d51868ad2b446df946c5ad73112b8e62c56d34ddaeda3dd863a828eed5ec5ff5ded5ef5aedfea9dab7faa1357493caa5a827af953ea5a6784b4df98ada3ced62c15cd1c7527f5045711595e52b55c56b055da5aebca5aa3c8615a1db6097f918c04b791e04e72b7845f3a15a6b7038cf52697038afa2f6c0e1fc4ae581c379952a010ee753ea0e1ccea7a83970387f526570386f5219c0e13c5761bce070fe53615a8c64086bcb55401545e5389cdf0441971222a0199a3344af50e89a21fa63ca884e9830a1dcba748194c10b22c946f640e64016612dd0256886e60cd12b14ba668862a29a12faf5d04fd494d0435d24d43af44d249a42b7de49c412df74eb3089721090e43ce1d44a601c25ac75ef21efa1d02967a2de106df6cd66cacc1d7304f3c784c154c109284ae8f456a7830fd6cd8cd03df9c37be8b28ba1d403435e347da6d0466b8e8ff59ed5af4adb9d0ef4a1d029fd32e6a9979708e9983687e4b1994cb4d79c993192820ffd88d41127d02fd027901db6c5c621407ad88d72264242828044ce11d6fa10d4871c1f9b3d8706acf61bfaf7cd005fe8b4b3211402b91bbc876af78f76a75f07b6d8e6c117fa751355da1fa6cdde4442a15028145fb24fe6a10f99b8a8548c3795510e959a1108000010007315000030100a85c462c1782ccf73d90f1400117c925066501b4944519223290e11631020860000004000000060a46a0084f21e073d6ba8c765f94b0e9776fc489950b7730554d7f64e702b9e183a84b68321a56c48bf24685a3f25ce8db5bfbc16e342934c48d21741c0046659b953827c82ee9b0136a7931ff3b8102bafca6d992c24622171d800e916b09d1948bf106f3388320be8fd688d943cb9c34c701bb654b20ed2bcdccbe7405cf2c0a77470f22d30abeb616f9af3e41ae5aa797921c3c4d1ab9cee8e727a3ccb75ae7b697851e6d9846c9504f0d9c4c85cc556b59bee3af0e9fc65455cf7c897cd4e41e80e5d042c3e97ab071e0529315eb8fc3f7a39f4ea1ac702293097f2a02c4fd8a8bbb905b886c995cbe31c1ed71833620a60c1a796eae29eb9e9bc6230558c02bded869b438c4ce9d7d8f88b7b99650d6b144ed8762185e98b52c4ef0e7b62ad264ca180b463633e34314fded655dbbe715a4483f784a0fbabe803dd89e26fc2c90cfc2ce939aeb3a595b223619f0d780dc5637949e6b37d2297f099bc263d48879bb53262b9be967fda2fc1528ea5215c1aa70d27d5ae00e8fec907212939904df31de5d604daec0d07be1409b0dabe45d0842d5cfea2a6a0642782b46bba5049bf40610c997e2094db06813f3bad850efd8061e4438b099f75ee12b156675d6624fa40273403909ebf07457348767f48612f088d68ff7f0ffbf55625251120daa5e6f11dded7424c6c4533d58c2cc0ad3f212f0edd27112af89ff6cb9a148686f7c992eddbb544723f5d0ac90f5ba857dfce554830bba8b12d6edef0938ac2476bc44251cb9d5a1164eb3695d382ec0a15ab757222750279ef4a6c79051194d41a6b4cc9bbb8274761b79bf046a1be6a949a595cdbf548813453439f2a1316b67f4bedfdf228a94021f8b273c2a0c11022aa8642a7fa3a516d1447aa97798616197664f3778b7138f24ac8f27f6c9ba66a2b4fc45acebe70db60484dcb0ec9e49edcea7bce2e7555cae06212247716e6e42cba7d3fe7839a398b017b8e2bcb151fc5b8837ec31af9cbfab07e4600b7441b7d6b4df604353067ed06962591ad1c28f293c1ee3f7c72c50efc636ece424098eeebd9d191f0358b0ac4851e9264e6c026e0d22519e1a1006817481e712e82acb9990585442d69d14a5c004453bb53dec516d119de510ed498a06d5b3c01a021142b38de774857f71438edc1970b72d389e0f3b3877bbb7fd5dbb944391231e9896662779e5e440a50aa9a4e5818aa911a298af83d0f70638f2c8304c0adddd5a4991c9f1d5382a73319ba3856f35c06660bbd77f39cbc23cc4b205eae19600079fbca1420e4fc5467c2f8aba4b2a8cdd8528145662714c778f9eca71bb1764fff82a90a0dca8f885b103a7fb79ca92ec3159b28bcad76cb668088c9efe91283a447e009fd7d46fa4f6e5f050e24f9af8b44767d219eb0b800d145773a8018f727b043cb52acbbf08b809086e2f7b312c8ad5d380e823ebccaec190a43c9e699b2ee5df94f0f972dba9de4edb5beb7243161e98b9bf8341512a9cac8b3ac89c190eafa7e70520c505bb77c16a983925be78e7c6ab857964ef386d46d213e726762df4330cd44a91669dada0fcc2c28e635228ccd6fff57bd94be838068fa46c4502a2fc1aa94605aedd52e32222e6776f5ba4726996d651e16e3dc6e3fdea0336c1e2e60f94666d8ed1a89733bc51d76f96fdebf55b261782ee55d0312e5435d745e07182faba228a898002c965dc838307eb66bc6d31fc66c9c91a076b8dbda02b9527baeed65ffa0717b9abbc810709004236ec7f87df4203facc571e5a2ac45f941aadcd63fd6c03eb46a7916e4940ba5d8ba635047d2544e5df8b905607b2f84d6ad8cda4939003e0e546a4904f8689c5f4f5923681785afbc6b4639b1005321d89628bec9b31818a22139f855b1b7e3b1e05992b4fbca638bc630fcd336772352e3c6778ae63d21cfdf59aa65cef4eabcbe71975cca09d17285e275df9be2f507070aeb078c37600203f6317ac4ff7d04c8676163ca45df73f6ccc6ba3633a9d0edfe89f936b1f4f2d670742f21507b5c618fb9966ff6c00be107976289997f9031f2632622a902fbc2d1c0c66146a48ecb97d7d04d4541d5b04c8802d34bd94843b2301144897e64e62417884173620d03ebcc825d00fd60f480813e15555ec1a7b90c269191caa536868b3d8925adb9c0759c8ff76658c40ee5efce2167a8d5663a95cf26ee5ccb810b30cb997280c40b61418c61f6484444c7d14b16ef4ab269481e388a768209a254c2402196ca7195c74ab81a7f4705d0ebfab964505c2caf9215f0001f30c6b6a60d8d05d499a4bd57a777bdc2feb4e9a0bd611b2bcf0064ca096d95b9a32de9ad36d23c3c3bd3d3d5e7f30a51b838694e0a2a4accf069237d2f5a0fec9e393142878668009db353f625d956117e530a6d14a5c822ea5cbf7bcc81b7790e0ae0449cea9eff1847cc008b8b6d4d806f0a8336a3566671976525b4f93d5aba90a4bf614e718bc4947249b84804995405177788263b1e011f49d425341a901dd8437c8768d43fd4a24f79046a60b0718e8a636de5b9565cce708f3fca69e4cba288fabe798eb4936b794b8b39eb96033bfca3fd31f4a8774aeae8ccc843704538a0e33d86dd614ffb50ad2537b146f3c563eb20be85b98f9d9ea3fdac41930b5ddd7a120c3c209b03e37371f3c4f647d5b8c860cc56f9662416bee5a57c66f011f4d4e1998383259b03a9472798f11a0cba6def98ae7546dea7ed3dc71e8a400ffe8d820efd12f3c4cec1708d9555e463e9959d31a5c9576a23734c0ae1505de4638db3812919a01ba9d2b175347a4836e24ed4404125f61c7c139ea41954cd5c1b1fc2b5ce3507694c42161042ce1246e805fe8555ce8ce73aec3ad0fdf24f72a3d180c602b4e7e28cf1712361134434d4addf54f6fce756da3a564f4959a23b6791f16f211bcd93610d5d0f3589417bf06a25c6319481b273c131ab0c36309f1636acbb27452cc78bf59111c9b73eba6400a1e171fcfb43646eef6d9c6d82d99b67e36ef48ab4814d2792ec9e46f50e2e674f931a389247c830f04c251f0470c4d05aa5276b156b764b3c46f89b4bfc692a76025478a53e20a1cfb0b117f5dbee9fbaee798045ca6d844c33de31cd53bcbe5e1bfe77eeafc5c64b2ba32dca8ea0ced0a88b972decf5a3c02863ec3c55f5ec8a1906c88403ad2b1e996f014b13fe70944ff3a4052cfa0b10c83ac0af8596df715f5841575d05bb8bbd513e0165cfdc05fcc59fdc9fba63619d92cac49b6ab9e34ce57702946f777cef37f480c910b3caa007a422d4685ed208278aa2ea30e27f23f170b7e6285b34acd756a23570ac9de0fa752a829b407395d3fc792c205b2f6e3d8731ac9459ed7ff51a31ced4d63dc46d569de739afa7497d5b3404e465deb91c0a1988c87b56f9e0b56073dbbc34c6fd7d5df085fe4105604dbc257ccee6bdc2f43e0acbfb28c08af7439b6f99020a311aed1456db0065e8f76ceb4d4e861cf714b72a38be0348b7e480716b5b9e70c98e3e6e1e840676f58444f551f3d11f9f6caf10c9d039c788f378b3b7634421d21f83fac903a1f891cbfc6ab43b17e849d3700bf504778e27bc8c2a58027520d7f5d0517834a9588c922ef652b490d79cc05a518c79d82c1b05ea1d7698ab9150e7cd6399835324b1c1066503b45685dd8ebea8a66c3b09546af838f1d319ea8c2dcc0b673dcaa8d7f3f6acbb5289163beadcf496acfa55838d09b68c05651b8c7850bf669486d12aa9c051abdb138f524fda0a6ceb2c4057aa2b4ed0bc2a569be2d6c29354d7332837ef0b4420dc1922d00e8e72c7e044e18104cd8a6fffc8f613b9021dd720d690e7f39f4271adf2ef57eccf926a81ae5e863afc19a0a17efaa795d2fda2ebb6c761b3aa28afa623f00458e44ccbecdb136b6a9fd73863e4788d52ae25015d44e2408cebd94f10a521978912aebc137c4aee7cc252a4b67b4609ab996332cf904ba89a62b049f0ce49c9a674cf40d7a60ec16bce3ce1659423ad8991650c6e75b4a8c2c8228a064a02b9901ec14930293f45978a6ec964b79d20e6d0f09f6ab8d920ec73696989339c6dbb7a1f265d038b2597de4ea6fc96ba2741a5e2563740edf7c7ff9f7da64b825e456c8c8f3ac194c3d2a7b801753a008b33404c1c45ab5e3b2a3933351253ab188fdbba8c96060217eefb268b2b8e7cd557797ddbc3e3e79e7f53125400c09b80e9a5ac467535f1f398035c9c5fd034ca012e44bdc3d565d5d97b09ba2a857cce9085b2ec19bec5e7db8d2986833799895d11c6bae242e6474053b1c93f4950713c3bc54e8e1c2b6c9cfb0bd1dcdcabb7c64f5fd067eb9fb6a7c66c7d2e1d1f844a69d86d09f23c5bc5c0cdfa035e3b820b0e75d86b50f09674756bc2f3e07c35f9164f4da10a4e838052bff4acbc2b1801e3b94469f8f609df1cdf2e0c8c901429e979171223d20c3dcee7827fcf8339aee10fa39dff3a493e8118fffeee9daf68efa234e0c0a97a77149f03ba6ccc6ac6013c9a869b5b08cc2f4cf4f377ad013fb196866ad55f68e9ecacfb05f8d1240b10b09f4253c5d0f3b39379fb99ea9d2b5bc11bfc3bc0b82e020b74aba0dfc747931d5450581bf3686d0ec655d58ebbce511dfcbc0b337cfb9e0b72eeea9f45f56447379dc23c99e3ade11d564ef8a8f0c1e0f161f63d9d777dfbcfdce13e49c8c09ec8be1091c905ff90fc7979c9da048c4296ba47217995b25c0f42b3c424da13affd8a45ff6d08d5e56ff5bc8ad3069d3dc6591e24eb6f11c8507a3aa5530c4926eea2af26c60ee3889dc99766c676752e0e4823a4d5c5557b23653a09b77a1aaf6407565599caf46554ebdc195eb19488c211dc428e86cae3e1368e08933734ceb264423659d4b7a6d5d82a6b07e36459106de4e497c1f3ab3a478f7215e510503a407a853be693d9195def1e4c2d4c2e5fabbc2d6097b8ceef5103e97d4f67f3479d6668c66f22f2aa01d8a633bc77f29e1526024bee84436e672065827487e2f0b1da8fd0fd5b78548bad207adf5f50eb533317f7859c552019b46dcf084f71508088b82f52b768a212a886da2001f6ba84431f22114a33205af0c398067d7632ed6d1f224b3c0761e8c54163a2f7e341147fe2a7386b613930d1f15dbf41e57179b98a13aea419dbdd1223e8c66f99d3042a2c9ce6046969fc953bb33edf70cb65fdebfaa1954d6affa82f6a88da3f942821370ab827bec8226c185bcd8dd672d44b7a15c45d897ff612ae39986b1d3fd4d20dc5b8a1126acf8078acaa104ae53555d192735dad118e2644c21ab0aa54e70aa3350c2618337504c76e8e9bb41c02e5e1d00558b1cae2ebc30714c44e9d6fad0046841c2c185820a0d4de391a44060745d99d26145ca9569fd2e8e22d66ef17e28da95b8e75d625fd1d265c9017a1ce9d8759e8d88fcfc1b8605a5d0e2fa576995d73baa2c502407452acd121fac2065a619b5ac27b753910450222894568b2db53f8dd879a5f29c61b29b4eae163f698eae353a67d1812290147ce6c4c0fcfab52f06c50bec82f54734fc7cff6423b000ca550829aea281b9c63839b0b3980c7420b240be3b49c5bbe3a1273aa0d451fbc8af4a1314a349b7a0233bb133b2713d33b0ae8bc43d0a92f11b40e9169753d6b7f85f9a375411ed9284f52e8eab2ad73aff6e110cf77315a210e0f477796a3e5525c077d98c9164512c1f7ae2231395a113003f4c666eff268e56b49c1046e916b8ca97731e5cfa6842c586b4b98b125e1a815abeac48727135e46017c88275871b391f877277e7090ac3b60f012647423eef43ce468d4c63264292d65e8c0037b65c0db54113be52ba24b141e868bf09104488e9b5b8db45e817471075df1989ee4589bed6d23b7a97453977fad34fcefd75f6bc0546d8aca67b4b4e2dd0bdd0ea90aac06cd2c9d34af742407a44dbc57ee3d7a9de8aeee69083f498b3e5d32550cc2e0a6644f711c57c541726687d82998b583095be060c533eaa5734c52af9fb8d92924e8812a48159420e96a1f783bb24badfbbc61d619441e05812cfbb823882cc3af2b0c843acc1272703f06c42c37100e85a02084a6e7207e732421ce746521de947f432ca6ec21fee77e4418eaf244d834ff8a68dd53e65d8486c419514320a615c2a723603fc2e6b9b7eafac2847b984684f5945b51174973e262ca2099a4dd2685451884137959dadcb10f4a66fb0ace80f3dead530dac7b396cc003ebce6d1d9e6e84802bf9eff5eb64d5eb0fcc639edc03044158d69b5bcd0f9196fd9c059cae6663899edc8e006c624291d99a78bd359404841e5659a3dfb98944bae92597af0a466ea55ee00f7272da9802ce0c19d2dc444f5d8464b29f1b397b8c31829e8c395812e4b103a3c34a9f20dfc1f801c915c2b2332c086f2247745ecd56c4037a7b90c2a351d3ba8060a5dd5ef196c4edbe48e4c5ee21414d5000207c1e52785e481eb1394d7448aff0d1fb9a0d89fdf9bf84a1430fac4325753d74a348b75fdec898d791e609af0df8db51bbead44b2afeceb523387ba71b2e8d56524cb3f335e8c802cc215ad58a6053500a466682d7c7515eff1fb3282641a819dbf608f84c5c3cffbab5c98932b09422f8f5c8fe84f5aa26f6350c6b0a0b3d987822bbaf12b7ef2051e0ac354b9b5c82b0200066839598093f6994766df49901a4d54104027b545300a9450f21076fd8fe1383337ed912a35cda0e19124d8edccca4211afcd4ea0c8173ab871705598de88f5cb493d970ada862a0ba041e3d6c6e9bf41f0c457dfe0d90684b1b0c0054aa3521d04f50fa58561f0d65c1f9812cbf6154d0782e529a0aeaa34611b2de13bfba8c38906449fd5215a6b78bd91dc3e14ae5499e8e530b21bbadec718e163d5ce46bd81911b9801a82f6ffea2b1116647003f567c9526081dca3a2d0ea07c331d1c3121147f4e60a032a3b0c16e5b964bd444aebf813112706e36065acb34e5fc1e9bd72783c6add88c656bedb9627e816a3b5f841b602350834215cbd15c03f8158f13ba43a95bf94010673bea061d81e5be7946dbe2944ea510606c3ba5859d7a7583763ce33861a676e3865ef2120446c408c309a7ad171062d96737fa2524fc81c69faa14314bbdd368419d7d0299c2b4e253f669f14d6e836f2dbb30c0d74513907057b2c6475707790628993239a1f7911b39909eeafa41b78d610a04ded5b70e03cf5cae38e7b03ea3dd7407cd5d1a33a5413fb45cfdec3203b96d6160a106944a4e2e1e0c21a674ab57b27d89137a0f1b122f9dda0b4bd23126bcc4c5bc2712ac11ae75a4170ec9d4d77c9ce875b9781786d8ad696e95cb11e8d7120eaabf736835e9e58a061366bbd73fe6898e0886406ee268bab6f4026c98c46a827240558375b3686c1af0e4c3e7af68f93f96c62d40163e867dbfa7a7a826fbb46fac26f5e66ff1f79213193b5ba9ef7235ba5a11a8653cb00275fd4d8ef9d6ad9f4576adcc2cb28a1bd686ccf9953ea3d9320816c9ac606ae786911f0eec6ce832d45e8f2c02715d45fc644fbf683fa8ec270e59cb724b166701deea37f6d8730c284a1458d252c8fff40833ae613194dc8e81f3bb6be839a3641825dc689cc25e679a4051c4a219a5f8adb90539257cc9d2d63354835621a966601df84ef10201c20d4fa7f9a4355f0dd80d88102e62a917542b7909ed83d8be8ce548d00c2219f91addc2c0f45c7a75447622bc01dcd8c4a66a10e0f3ff60bf703b0f4ebd1c37a6169331d7d616591840236bfcd2a091a6f1b0f84cdd10733d88e0a44bc9e13ac08925da97c84c340a58fa7a9e86a64b0d758da4b7ee47532203973fe3a71d0567282dfb8b38a7541d232867c7dd6b74006854ae852203bda3527b18c089b97668f0b829fe80b1ff9526ebe085457876de0f6c5bf509bc2ed48ac93d28225b01be3655281035686be5fc0b0a63019266c43857ee3896cb58f8542644cb4e2ace04ad19d5d90950442a85b979c11b72c982e81c3a615440eb43a4bb6937fb87299d83bffe0f62074a8028ca69096ef0400f6a61c7353ffd0e3be66ab0e9310b89faf8e8a004650a70e89bbd021f791a0512d50d8a0255ed8219a4ee2a05c66e993cbf87e3e999a60adf1529069c426ba0a44cc3d12e08472d7b1d9ed66b833ccc1123e168d23540baaf01d50c3f0222e0487b5a97d75f147dc10b06b1cdd870c090ca6e0b76c006539923fd48255147f06247714f1691324c47d57126a50d2bcb5cdde14fc30f560abe7233d92ea01c0d14edb60e965b30ab44a074c646271286eeb8d1f34f411efd3a5f0d4407fecb487c3996688b11808613755346b5518d32672462d1f0e901f42bc4c0b3d7f58ffa9de11b0ef325a67ed5103a37bff6431d63af0e19071ea7941f6e1780c9351a631648430f1663019941e0e75b2314e681c7afbb3ad3019a4013066dc8194887bdce00237dcf4bf3b364edb3c954a4fd970f2a6e4df7ffeff3b5b39c8834a26ad317aad8257ffe1a8b0e3c4fa3f318159f6cb8c7e1ef59462c4b4f1935404ea599734ad421174ffe7af196cc9443fd7f870106e3b73a1cede053babfdecf9753bf1c7f1eb50809ea81ae4ec5779fda00cc79d1c783aa99e417ba70e689472c6a4b3069d346f3ba7dfac13a70fc82e2d921b6338c609e838a94b8d7a6b5ccec1331c78d9a2e1fe3d84f8184ad961386ccd98df105ce3fc6b13674076c492f4319f650702393ac000b8c8c0db0e0c277004114314bfe1f24b0ec34740b1931c56b1063662131e86c5d47ba58dd47150117d68dfa2bed028fc582517d8ea8c18a2ee68dceb34ea56a497931228e962386befdeaf200e4daed949577e2bbc2c09045470823395ac7b113ce95f532e5e01d9c37ec7255cd162d93b5dbe78a45c3b78d708ad06bf94268b98237c3ed6af4644179e92166f2f90028c7f2d35d068e5edf9bf197d8b61e9d4b206d3b9db50f5c11566b4e095ee1a74e7929cc1eb9ba23f2b88c8adc1f21504163ff1bdc1e4792fb9b8c5d53134c7b9980a128c031108d9b05ac2f3c327148a19616feb0fa8025494059179fe5541dc842b3450410edd68808f8f6bc7676ebe39b80446cb2948cabf890f1e3cf780f2eee727b7a2a59c4ca994af4ef80bc8c28fc4220eac14db072948939a0175eb8b7e39bac99ad7ae9e8114a4bf6ac24b28c526d8cc2cbc56294890db84cec3c8e31efa37029debd9a37ca1f33789cf0cd9fb8d77c0e7fec635ee70158724823ee4e83514fd4b12225653016a4f9616913079c1c52d38402e4c885e102a7e3c3e8a65cc177ed59166ad02062ba31dd0567e72757291168f6a2db4a5cc1d3c6a7d16c8d83669367c58bf46bb407cde18dcb404272ef23efb164dac8a0a5f3960bc717116e922c024a8465ca571245d1d14c54aaa157294748f8bab59477682e160915860bd61a9a6eb91326955471440c390f82703537ff6c7274242e6c18c3f54cc10643acf905410f24771f854755a3b1b6ae692b3bbd7c5bc9565312dce7c8adfdce7a086a89c86ac57371790b0c43831640330179048158be40b7bdb3a5e031ad3effa3de11f30349b3ac965c5a9b8be9539169b83e1f3472dd9c84818c87b48ea17fc9b4a700354aba533308fa70d7a6c93636f8782f01947635954e8b8b02556ba75c3e71556d6865a001d5ed7c6375cef10e0b00914ce4b368cb8a4a17d321246859da11fa6b39e36db89c95f70476bae4bc3dd7ae34cf203ac59ba5d524f683840fbfe2a2776b3c67246e2a354e45b356a8decd72b109bcd90a3fdf9dc47fe867d244502de2526c4cd49240f3029fa0377b804bf30b1c723b95752942961b8cf2b067ba60e4fbaa451114d950f7de2518bcec7c46df5df5694c781add91ecf89a4f789ed5807560abbb2c1e327ce464895b78930045ef0b7667c93ce2c391a3791f4bda6faaa6a6ff4eac96757892a89e157ed5b86acd2b7a270392a29fa8bff72d1d9e32ce7bf46e17a370069b38620f5448d77de9de773ce160fed4ce4769e02bf12a66291c67b10d5b1e8e1716377e8e4f3c48ba77e393138ca823cf1874ed7143304d4b7012193d32fe409bac66319c0ff2bab046675bb376002e799d0c8b529c088a01e7096ef85203620cd91e4e6a40ba0b0b45e1b8b628ac4ce25d4d2cafeb1aa804a679f2bd8b2a164e2d34cf39a5cc96fb288841028d2949b312c78b524690b2bd6e05c0b794443e98ce6db99457e40b975617393e4ba9d0110c8cad0496c4f72fbab93d49247ca751fe82a8e32e806384e50bc7753f910c9fd6bf79b15b534e39b42639bfee263f53fdf462406556a46079d082718df276477d5b17dc7a0174838b79ce273050a44561c212f511a8524de08517983c47a07561d0401154e8e911ec49d16fe82039d682c43fb11a5a85464c45935161394ba5f4978628d512feb58aeb41d78986c875763d11d5c243a38ed6ab2eb27b9d1eea0f5592252a4dc0b281b697159b7f44a1b9db1ccb866606175cebec72f9c458b2bb38c7bed9193e8d781c992ab1209ec4976147539759df238b40e6fde6a16c61f4c195698e67b04ee5590800bd92a5cc4be54de9b8c8476780976c69d523e58a57ab16d6e832b44f10ac9eefdf86e0059082f5cee23161d2160c3c1eb11f0d7dd2e5c7cb15514938eccbc8e2b253ca97cf9d4aab80287763686424426ab44291c110ac20f71c4cc374e9eed81612907ba02343c2f4acdf7667003b7e7d4893f6162d19fbecd026905448fe29fd75147c06f9720c3374259ece7f98028f2a4a19658090bcc3baacbcb5ffb84ef52a63a9b184ecffbd6cd0a0124e9ec0024b88ea03d3d857cb73c31a2b2ed0ff920e295f62b84c10d7dfb7979848f27b7139217036eb937fb040c066b4bb177995fd4881507f7992980ae4928ee5fa6546fcdb372188afc46a2708d808859f9d695867a4e6e8cdccaf4a5c4eef0528b288f6788441119e6187e861e1b25801fbbff0f5e00d2a2274055fd96bea35b2f34a88231a402bb498116fa82c3f761f66e4e2bbac72e0a8ae19315c5443a5e06141123b1b85d6c06a31d9048e884c1a0612d94d82d12d8c7b2f543af3164fe5e88fcc08d5baa6c2595a368b5ab99515aa4c6cca952cc1a6e992b035cd7696276c437ae4414c665fd68f389d1e906d176faa83615f55bb318a3ad000db641f1a92ecbe90d6e6e15913f207b62543047b94072fff21d4c946bcebfa3f55e98fe390f2c02d5dce6a034f7a320f3886c8725b4892e99e7230e520db7b8c6d56c2c4447a6255aeeccbb69acb5432def9854a56cf62865344e29f3a60544ea432d397f13931366589a1572d45a87ae33a6708002d7caf2563d409d6841e7044f0799042b63e1eb4953a4f09f0e50996c00bb93614dc7c303ebad0c345d8e71b262a4f0233b3c8c1f72e96f07dfd876fd9343dd05aca9e8eedddc772e246cdd70a37bfc95c73ede22714a3d742bd6ee5a67302ccd98da0e4f19ab36cb29a1a9387ae27a70aec382d32e08cba5786b213106c6821b502145cc3a15518f964b08d9239aa305f71e08f96950a87112ed71ddde913a91e67175c2767bc2cc27c067c34857dc88c2258694cdabb36bdb2f19b973bb3749c8b3575aba1954e112062992245aa37700a87cf1fa127b9b351a3fb6e546834700d2914018ca65de3d809fb6136ce100ff81f7e35e6f0dd53de0cc23f13698358172c581958a90e12bedf3e49b5c35e4707544f8125737ee054d32ffbaa5a9f07eaa2f31b9a0591756f4863293f66922f044e6ae52705f04d6f717868b3d419d88a5547e597912419bbc2416440045d25a9da626a4294435afc2662a60e1da57990933f311fdabecaf240a6c498ede89282ebd752f102a949f8a68d33038f4dd3298040105892e1325ee7101385da5a439739266ab2a560e0ffe44cd8fc63f233a8d23c44e94e4aa9a97122bcfc4aed4a6dcbaa0c44daadcd4e136ad0b4c045f0f4542e1296d93091a950b3c282ec5610f988791894b602a51e716c7164db8b810dc0a2174b68677ce272cae6c0955e0010c0f5506e3f16908e52bc822ca84241051cd6a1d637645a10d2456d7df651c4b7c72d6aa7d3115cb532b2a74ebe74846ea793861863ea177f49047683f6bbf9f0a526502f8de141d6c47dbcfe6e28f71a4788e70ae967e68576eac14278c858757a8617d5b1c4da3d246411440251ee8c13b9e313c7d9a255b578b6a7d0ee425c8ec1ec1e68dd006d85da362f354ec8654df11fb66357ca37ba3876add7ffff2c5de8caeca86cf85a44bae38c621812734d4a37138d4240c6a85768b1260866633be74ea7c6f25aa48b6ae1a40bc9784cb73a527c2e35c7af33dc951366597a3a8bd79d3fee728ece9519add3a4972f622786e1df2ee4885cc27bbe1b4bdfb6c066cb5bb78447763e8d911d0a85e006f2aa1e0ad2a179dcf1cd9c2f6b29d4468751542905e83d49000878cde34ba000d153785f40eae48e3d6f7771070c23890c5037259252a3907e8acd023a872db76c7860804f05354925dbd16c5805601e25163c034bebab8b6944ce6226fd7a4aba1db3509aa80c91ae31c447d13300708b3d840e83a1252ed20d76144c31cd03e67ba46b58fa716829112721fabe9feb68653b5b819573157b00693646167e56498e01e99db3dfaf3c46c0c524e5a097ca39f1f4b9e09286aa66824b8879b809d9d0ae4a1e3fa0c106e0f70392502de4086c3a59afd8d5588527eb46bdb3d936761420dc4004c173f599bd029a2eadae17376297f4112a1fb008f66ff0bec1273b2338b2b62d0452e8104eb76808427bf836a91bf0b786fe3428dbfef5e75455fe4a6815b2c4859386c749c3fbabda269770e5e07051dd41f4fc168fdb04ff167631d6743e28970aaee0ffa5ecc7ae232247d01aaadd4a7b68866bed582353e540dd4c38a4fd749b4f034692614131d7d063d012f20544a6fb98dea0f00596f0c068f4e6a3567a1164de66e8ea11f4501f8e59174d289793c25ff50f6d603a4323d686e590ed11a433524aab500a74165c5c2b90753508eaab2887bb7d83d8d29d7f3135539d22df750d864bd54a9068f6d352030467f0e557bafaa9d25f790c3d38671af860ad9fad0e666935bc2ea5de83b45429a90a274dc16447d49089456bec8eb2f5c6c7359f2c27a7436246d5310943f8530fde2d45ce543e4e970df9f4283c50a9b3c5357685a43f67e8a6ad185ac78d539a6ac6968a2c95aea20feacd0c3874c4953b3d306ff71199bb02d15f52705ce17e053f1134e6eb474692742cafe39b3a4f8b53d56b9323f770f2f1c670abb2dcc981a87cc7d24e08a0a6ee23e15dce2bb35c20ea779a57c618c641499503ea3e18ef3f6e492185ae8ab988ac4a5d28389a722ff0b63978f86c337117d4d293b74a2f623815c9713701c72befc10c7952f9a274990d6a69e2ac154b94693ed214328fa0c494edb8f56643945f9a657ba9c5913775042806d0f24453eb9e6d6e9f25c9da56326d4e4821573c18319bb99ea66bcde0f6450240d7566923dc6489b87f6c6bb4d8f3c4231e56911db3cca2f95fd2570cde5507da7581d487524635faedb50535f9c445b9713a57427e5da6a0bcd483f687bb16a2e6b73248bf64e4a9a98ad327518b293bcc7d4b262ff98603a914e496da23a2796f546343d09a4837f697d8b96c579884ba0de3d05bbcc1538a85e5b6c33215c7de0677bb6763016aab3be3c60b1a10f2d0029460294e55e8d72343f9ad4f7e10d41555ea5030bbef62435d1fa9dadd8272b4aa6312967d3a5950747bb86c9a941ab08379f75163e654b91f3a1f83c8ad0e3034c71f659f469b346ac1b7633e0e961154612b9af2278cce398cd522adcb63ee9072af468887efce70f8dedb416e1687c603c3d67291ff0c12b7cfd0f961f1b65f109484f0e42d9d35f9ba59ec9308b3d1a8390543f4ae43d66eac2f3db896d78550d39256f9900a6df49bdd38c167ec7466af6301ec0e42f741cffd71af51885ce653b078434ece9612168f5c15519c92ef6092d3e178b0a9da0286f93d733c5b024a3b2967fce038222c7f594ba5392d7d50143a9bb2ff86ffd80587d520c0f482e08dbea3ce9ca1f49f92615c2d20f0fd25a95b943facbbe8e8fced1b552c7c35fd7c0755b8e41f0bbfd0dbbdc81e44d3c509394f4eb5355f42af05d7b00e415b86ecd489b33bed24227f38d113b41316e4fec79804c21039357f1964028cf4185c0124563e3ca3d126b18f4366458a6797041135461613e9e820e50af6a3dbe942e94c2d6a782ece62d2e5b48f6c83622a8594bcd618176cb376d39da90f8955fd9182c31ab2657bc7f5538c0029d2922626267af44501dc71308a1b4c5f46f1053f24e6d8372e05c72ecd8aa8b8ec167abeb39b35b3c20bad5d3f3425c6cae3f1825b578ff45ea2b6771b3338be5e14e7a2cbd49dc6171f4f328eaf6eaf34a4320e204c80a029c63af345d4d9b1809223b1136c26882c45a9c4d8017f2026b0a0d32a842a4469a5927a4d08484631b20afa97976c06aa75ac093b4d7b4f5e869ed0bbbe9631bb8716d3985494ed298f785745bae2327a68d59fae2b9820b42c7706225b1938b2b42d4e286d06b1cb1fb000f486f00eba15d35a771184c87505b27c26b0139083c4ce0125f1f964716c9e4a90fc448d2bc7329f984084ca8d44ed5d7eca2e67d442c5e3e473a2b57e940d60682f572280bb1a828309f688f969bf35aa76b04e00233b4b3a59e2865a67cc41f8a2399b5f554657ed8f3cbc6de571be530f2cc74f79b5195db6b481b5fde40f4403cc83012f2b29b52639b1bffac61bc603e406406f667cb9842a06f660537007e726a3adab143c43442fbb881c7531971147e332912ba0b5e431fe58cafce49fc9b12d232b1a3d3506825d39a0151e907b51877c9a3ae73a54c4bd3a166ffb541328f1302ad9f96ceee8e956a1e41a0d561c2536da44a23a58350b6f8fe736b67b4620aac74ace525bfab17c1824a815142b14394d888dc1c8ce960bdd90f11de03f0a91b09e142887aeb757103d249bd3ecea880fabac23590292a98ae8ac3c9e77d4158c5e8d0c4f7e4784a9037f2117f4bf6965266e44e6d0eddf9a239b36a91a61c4f66cfe827a7bd0c4ff7599c9531157dba5759ef06541cf194dd51d241f778f2f01e377ae8b2d19dce12a7ba3c5c20277d736b22d4e327e517442db7d89c2728bff5b8d029a272fdaea0efb4ac13a30882f3f36ec00082b1a1b6dea372c7fcfb4944d73d82646ed79a714ad24109d97c4075564ff44b832a007ac94b6a0f884c0d180be596f2d16fd11fe3b0b35fb5391304425934747757f3d8cc4156af28ea4b53f455745a7b11c274767db9ee9e258d22892ed8ae1d6b86f7a008f87a8226ac664bb1be7629de4803e1820c2407c8f18063c0a34063ad545f4303f0e655f8c56b959c352403d6895ad0a53d07bc3e0088c61f05d6bae0e88f224357a53ddeec99a50546d1eb9d5990959d73885e0ba30fd431f8fdce98fdf4f0927282db48538385e6380923915c8890f224985e01bf20ff4c2997630931ce561a2a376806c848bf4cb320399cd370aa6b252ee3336eec39cba2ead0b9d85b1445bb6d2da0bb230168c289fdb311e28907e69ad814d94f0d28d26d697aef7f93ec47692594ce03fb02a802338e976ca021a2ca843d1d0f6d13e5688d2550d54c543094b603928ec5f241ad7a9e788a0810fafec986496472352f91efa21842af3290b3f5f73889013dee70e47b16430ac50f6d0a547ea6544af02038bceb25606eb279abaacd440cd0e6aa189424aed44c40829bcf04d722c7f992477d004724b435b760d5e2fc3e37fd407564926e19b231a4d929f71220be2da871eb5ef6140f22bd84ea17a6d71bc65f323d00f40e557d95f24f1cea5adf77fef82954d3a6c43a9b26b89655bbc4a4ef678985b02c8c19efcb045851159a291a24327abb31607a1352ca47f65f1db0adbb179842e81d18363a89b3f988435b0276360bc54928339a7bc01e1c3b05972efa733266712442f5056270411e2dd6daab02c6c4c29ce591029480081a13ad635c7b024ddb74b2d36110095248b2713f384572d5c2ca0ccec363af19c06c1a1711ce6dcb508541c641a3571a19fba868981a703a9126a8f1ebde3c2933d797530c10240938d89175914e374d08a2e630b53de47da48dc6a844198e16ffb7b06d323dd630918572a6b8de7c3832b1b01e960728e970c261cdc7fd76cf5b9035cd4888d637382fa5d0f3a88d3bc0bd80a8c7508ea28340d41b6e5a25e7beec4f3e146213bc8c1e60779a938defc32545d47eb3921d761a0e2769c76df5262b3419e3d10261dab11e94c22ff1024fff47278c8eb72a92562f2e620edca240d4ae8a995eb6698630f06654086a59673e55093adb2ac578a396e9e89b06fd815a975176a289537f39ee5efeb686d0589fe59de7be48895c42c39e5ab791a1cd4bf2469c812d2e62cbde8eda079b0f0d31c366927b30f3e15d26c88d8ef0a3eb64e175beac1c7f44476bb62ff410d14cc790bf05119a1bd1826954b7390954440ebf54270d62573b18292aadc1dd306553a46f771d0102483e94a6870f002734d287e2015af090dbeffb2e847441f3703c65ac14252362304f4f704190aad5631471ce46b5f4020376af84ad9694ee13aa7d5388f559ca85212bebd80d12647c831c8d407de52e70b71302019da0937a19888a934e943092a5b8210b49db2a1617d0d7c2f64f99169b8c72b2c4914d361e633471d0ad29bf9b12dc18fc089fa2c856b3184191a0557aa5664dc38c9304acd70d85e0222c0af7a6324fd0be7e9627b50e185116f50ebf15d9c980c326c08b389d95d02a2a1da4ef293caffb35dbf0410b7391b7ec9927e81eb4e52dd65598b6501ecb383d933731f43ae8d22bb33e34077b0a021c1dc9a1cd5a7585a1fb774de432abc6215f7f388b314204573805643b87082e6bdf1ed0956845c6a3e3b24d97db0db64dcf80d0d4684a94b563df9b1e8a4c7089c90945d01e1b8b581ba09aed0a66f5236bed0bd698f45d22a2ed0658ceddf042c7abb5522a39c7bc623aea0c86dd2f5b692404dae52963a9feba632362011f5d41a641adbac4ec7104e58d65c12219d7531183c38312977fb6219251ce614b1096d685297dc2d2d8d19d1374d5132fb98c5838709f80f406c61158a7ed0b76b4a3de57178dd3234598df7046b84048424438a1faa3ad350246b0506dc2bb13cabbb0ab936000762cd94ea5d6f8326e7558e1c1607cd2b2759f95928f26721679f98389225209a27bd404d085bbe76659d04d048b48e5646634be76388b6f8a7982bdfc2599e8c9b0c2ebde7dc1f435b34779032dfb23f0edae816aaf3b51949575a70afba2120e263ff1ee1a9a5aa147a398da7b01687d4abb5ee15f75c02f5e155e3fd84c85a1e6f5ac539d27a62eb3871eaf623e889039d50bf51036581320ff1822e23306970c50d06cdd6a606483b3900493a48ad3c7514631b2a8a1521692ba8dd322cf1430ae5a2044a04e6705f63783abb7ee7bebe1f37d3dd444ff0672443c493aad9a26a678ffd0af1ebd3e40819377b56861b7d0420881aa45f9e64450fe98d7e7aad23ed7e6b0b30feababd5d7930a164f644d1c42a177ecc9e8816edc61cd8219fca808091e5927879980dbc9daa9e79e831e7d8b8cfe4074a199e05083aa8308f24022d7958dc9914d1c3260e7641181a652dcd0e5f414978ddde10c194ade2413cdc818a8913573425cb5718e04e9d273d8ec37c0a70c609599d4c88e7a358bef8dd7096d9ec14d2b165b94d571ae9d5f39660f94fe6ed200be370c93383ca7677f1198fb83712f38a5f68393a71b85992e8c4210e748c495748a3d35370445f7a2b1dbe9717fe27c61fba77f42c0ed5a480ab78ac36413cd53cbeb02894170db6e47f21218cf61a0adfc90e1dc7dcd75e05c5de30b61e4a0515a5ab54e4f019f1bd16e0b9a22131421c79d3b343cf39238c5765602afdb8b47db75b69796ddddc1097836f1a7ba973bcb6263adbe897e91c593f854125d916f7bd571ec30893462b11336c218d504cd84efc3fcec6944a5fddc4a6ceb54315ba45b1a2da91af878cb946e8d9289076c9b78739d7d232bffc6761129bc0225a732f8d53c38a79a164044da136c05169c4d24042ce5c4518cf2570007760ee0a33a548a70fde98d436e9bc56b43a07863b435b5c4b639e704e4dcd71e12ab87b6d5bbbabdb46be1bd7af998c5310b918bd8304fd78ec71639f388b3b755f2793c4cb0450bae94b76c8df48c05d435978016e923a9ebf02f67305e386e745caac8aa6b28c0fb890bde448ce6f90f418205ce34163929e5177fd099501e5482fb485b83a59cba0a2014299352b175c8bc6f759532473efd95605078d91438c2d8626ac93da4d596599bb013dde6053963224336b06f5ab4c6a1bbc25905f1ce9dabf1c288fdfb84c27ba221f732a3f7f8d9606fc54598d5da4f6f6ea76b641a3f9b0e200fa8896c0fa4e3bae322d0221de2c019f175d3a1c7c6cf9baafbd319dd0f9d0104b9d875bd0f6440f6e2299e46d8409b04716cb500855cdf00e404451191b1c115626a3b0cea4fb850e3d2d7d1ec1dae3c6652814f9ab758971a435a1f2e1f0ce23664eb27facede6c8f38fb948f31baf3222d1f64a4112f16cd40647e63087112f4b15c7a72c933ee4109045195e673fe25901b618b31f0add332da0f9ac1948b615be78b6958e93f69d2db49d77254e23d5cd4770438bbd69dc00b637e555ee951dc576464555bf6e231219d0a04eeb98c4ef052b9df192ce0e27d3c62a00c23fa299e4eb9a696fcbac92fca25903ab4c5fc14de52834c009b94da775e44474682e250e95c8e3a0019cb590947cffb29ffe0c1701417b53b1a4a6833d6c730e4c0fe5d0bcb3c7511d5908eea19ffe8ef65640504331cb9cc38ebdcdb16d30a42eb4923fbfa643aa41de811a1d405ec54638640b913ab81d262a939ac79e7073b2709710219170614c9ae07efac8f243e0f1f3a7c1ee3aaafc8cc50010c7ff5613bbf6307f1f8eb80794c271a8e16380162f6f89b57d37def8778279cb8ff87a39d9fcf5cb59ad215e283b8bd5a9699a3113924760e837eb64a7bbfd500da7f37aafd8ada44b40bd70fd1d1e1d20168f062016871e20168f1630168716600c8e06201686063816863e6b7b73a1ffd1dfe83fb42bfa1fed82fe43bba3ffd06f683f743b9a8fbe86eeddeb8d88fd8c5244c30f289888f3fbe1ef01bd8ae5a2a6b132a21ba376666afde4a8a531103351ef446336a8e6f1e53668be5cbb661034250d385b6671054a2dec3546f9e3ed2797fe85ff908d79aff7d56d0bac558b85e27df870b78452394bef7292d7495577191a9d0ab8a5a6b6aeeecd97bfcd0bdc7d43653795e5d6d36a581f34558d6ae584b5d30c65cd39b9cb5b1502b44497bd4fcc3ad30c072827bd93535d817700325dcc3aa7720ccbd0232a448fc51dbb25d1c95d8ba75574029b74aaa5dd8a378f7817487ca9ecbdfd63a275a9dfe8c4400d8e964256fcd7d0274bcd04f6ba18887aa53a524f681e0f2bb23f4c6455ea391a1f9083474a392bfdc622eec7dbb55b41080742f2a4aa783ed2aa156bb11f26b226f51c4d0fc88192b246f040bbf6dfa2ff31d192d4d7e803b5cc5f46c318297865ffc989d060f0f2e93873182a340ebb1fe5a576e233f98ffabbe66ace304b3c9ccb51eae062a3ce65d481c597cd4c48d35563513381b39e3d8cd2ca2e3e84f5d1d832f449a37b344da9ae423c7bdbaab249c110ada07da898e5ba54d8077097bc9ca44440b5012eaf3b77ca02a95dd92538d51b97c6744c81d20b0dbd95977fc1b4c2150a46c78e9ae7bf3c91354672293e5704d0e7d27dbacce405d2104f0ea581ddafe06857560473ec0ac8593b83ab3d5aa4f5b1160ba51cf2bd5b17ff69ed58507e1606e5f48ded12c33fa0abd01809680be85a2ccbd53f5a6f8b80910b9eeabdc0d98bb679c75c14ea2eb6441b8bc992dfb48bd16f89def27d46fdeb630c0c9429cc62b314fdd3b2afa7e5d630f4f23ff7610f905d77d9c95d1e46ae1703ad72e8d77c0f27c75df1f297e6287e3df2f3215b79753b72165f02794b6d430cf1130d1418f0e48c0dbe135770a9884f5d7ee85674aa8701896e0d5612d1022038463819a6f743c1c48f33e163978eac7bd9a9405f0838fd6d7e67b1446d155625323f31372e01b91a0d017fb8580c3c16a606d7e24cfc67831705c087984c491985ed3dc5dcdfe8078b5e8bf4a7d7fd8881696fe3651507ee5e3756bdffcfbf1021aecd81fd531df008dec57c1d48590462f8c547c21e62a6ad8d8715002cfb9ae9e41b42133e54f230c848e50fca4d6fbbc17d0b55b646c9749cdaf56587164fb06d09106bed5c5903d350bd28b1a2bd9ca2115d26c891404b44c5ddfd0aa8ce219874663964a19cb6887ff2eb6f46bd981ab56023947eca66ddc2d18be14ff43934e6fd4aef9cac4bfd97dcbd434add8c2a1fe5e0296d62d03e9a6e983a510ba2abb6ec9bcee8e559611f225df3cf8a54bbdd75047427ae9e8b96fc5f817df16058bafb47b809d7f745358e3825688c8e922f42a4f4682d409195053bbd3883eb84f8ab0373170c25b11014599e0d2de51621fe8ab62e408f83dec8e76dbb3489c444a6330935522b68291a4112e2f965d5d2ed02d45cc74aac0f3bbbe6cdebedbd0fd65d43e3f907eddaa1ccfc1b67e51ce33f357bc95e4a0da0286a385020f84ae59efe1265164376abd2463b78b839c2f98bfd46ef9544183bd0aadd2e7cd690c38feda7d1eeff6a7aa93d4142cdf735dff1d6edeade2e0dc75d7f7b72248f6f69dd7b5ff5f1898c3490289fa898372e42c990320dc69cede9a01f68d7ae4ddffec3202bb9132fb6c5d1ac2f80b25519d3b148e6b7627fd5d39bc7ee2b6591bfa2c0c3edda650ab61d7412c808b90536f16d7ce27979470fdf6b95b7903ab9e16ba7514e41d160adab876f9c2ac1eedd283fb7105273e31d5f089b581423acbaabbf51ed764422367bd1d81b05360fbdc17d2af4d1b850c310fe9d353506a7b6edd8b964731f27a53d541047dcb9cb9a1cf37078adcd273851e668146da529d01fd5cb8e5e6007e0a21c8e45714d22632ace021a10cd7f4621447b09bf40d53ac8c19bc3a117643a5b1df7286e7244cb7753f126530cae50f179205b7754d2755b230a4768e1a1336f1c19a6c9aa70517cbc6b90fa2173bb4c6d8c47bfb29a0449187651126ccfaec693a17d28dfe99ebb3c108222122f0a777e38ad8badf5b4355b4d03293bd38775bb8b4c66357ffc8ce0288876032e642dd50f49d62760d7d29323181173c6c09bf0c0f82c0fa55d88536655aa764edfbccf667b2748fc520ff95909c46cc922d38f4b529916bc907ea37bdd3abe0096fbc558853111620a62458e29881929b62066e4d8c95807d2d3a0d7cb5a94fd03baed5e925720982a4a07522f6b71ff1780f1be6ba0888fb13a53638e2223dc335b72ea07d5ab2cfd6eea1979f1861ab46d7d82038f00440b80f83fcabe22f4e8e27f236b69995ee603796c4b41d84f082192ecbd37217b6f29534a29cc08ee085909b0fb526e9148249791ec4edcd4dca5c331a1966cce75276fe9a4fc52f322914cae9950be39cab5eee4b0e3dcd47d3b5f7254a7f9d6e170d354eabe1c4d924aa58dd433247975abfb76e0f2a00b1e78a13d097679d0050fbae0edc10cec03e530cbe0fc609ec33039c3c3f9716ef29a2602238c30c2882ac53895bd3837989616d529e53c5c5a3697be39f46ce3383fc592f42d069367be39ec3e98871ce4200739c8996636394775df96f2cc9b9b1c14523a744bc6f952f2e899cbee65db3ed5e7db7c29cd22339bdf0c1f9ddbfc2222bb4f3a6aa69c9b3829cf72609ef308f3a9133755c5f1706969912d92e332e95c8be4326e862ff9d066ba2c33fd08c2c2c32a62403911e9f124a1a76643efd1c12d06d484c981c9819133c0f873fed1c7471fcfa552f353a1be540bd7323f99ea24572a9d502dce75296fe98aa4befd66f8cd6367aa6953f79d660e4cdc6e4cce7533bc74535764e33c462fc51c9852b77d393040fc122a33d0c08106100c0d1c6858d1128354f7e97c2a85e93c9c5f6799cb29fde4ce9ef45297f229e149b2b76da96f076e0a3517971e1a0f93ab3097e825e7a1c12dceaf06f9247879112cf9cda33c9db6f992729c936f9e9a9b9f26945ed3b1db3cebbe93c953a6e85b74294fdda7f327df0d06e970bea4fc25e59b97529388669eca3ce559cab7eed381a7cd1437936f13c7e4a989c3c34b3bf04b7307be69421e3c7a68aa16176dbab86ca7cd653b913612c94ba793633c93827fd2e42714cae4a6c94921a77bc9b94ee33c85ee85731ce827e726f493c309a76eb224e526e5697e4be4ebfc8ba7c0f94ba7bc4a953c859a76f1d87d2d7e6d13474a1e9e8addc94d2e8e2a9d3cfac9a39336e7d1e19c26642fa52e27e7a50ee52ea8ee6b993b709327df4e2f29e73ce55b87f2d895fc24bb4fe7a5a7ba9247d4dc9ceb70a4c7939b4edf0e34bd941c27baf4d2e4a4902f45a24b8f72077a9aeb3e69928cbc22d1795883ceeff43a0f461191294c768226f8022c95e69753f2d865cef94614aae42753a9e4a52fa9bec6b5a4e27643922995632d0ea7dca4f370714ca6382f39e7a5926f2d9e691635d5622839470201649fd426e7d039871e3337759ff682749377a9fb38cf667401e570be78a97b31b9c671f3c5345df3cc39d732cdaf7de9358c823148cf268e74d3c4d9bce435ac75b0fbb899937a39e156649b73a74b3c5c522df3db4f798af39267a514572a6999735e4a69db0d899b502b615292cac89cd45b0ca58e94928fca502f48a014e3f44e5a0f6f94738e9a29f9499447efb14d600989e49993665672dd4a5ec359e62513d77d392989eae4739c2b47efd1a387f4cb4d1d094a9e659e3dca512557e7ba6fc997fe74539a9cc74ef35367327d72625df6652e82255f726da3803e17bdd4ed26811269e45af7a18008f67eb34dd28e8ed8c4b8f009cae65af7e5bce6242ed32dce2f678b81e3f9459ccd499c9693daba6fc9335c1e928f98bcce54f1d0534d3c74d4b5dd8c5cd8878ea5c051213f9ddfe9c741390f18527a721787f36b718d014e0cc7e42537b967b28b4536e73c765c6f3194dce4b2fb522fa5949ec194c9c44d93e9859373bed0a55beb3089280f9300e2a1a73c8b5af48c83dd97f3d264f24f9a1c7a66ea36e73653c7e92601cd4d5ec39a6996dce41791fd9397baafe4a4c941214b13e7e4dcc4c91cbaa9cb497d69e6a4fe34a10b5b249b3ce64e7fca5d266c993bfd288fa90f050f4b2e3d935da9dbad48bfa4e1b918e043183e93975c4ec8deb7d38f9a1f0e8f69dc763372d83174e9a6e7e6177da7771a2e84654888ed5684f49a9bba919fba2fe74f359ca11a4a40ce6fc94b3779eca02b735772ce6b98ebd89d5c7699cb9e51b994a80963d87c9b5b1cb9ba6e30ec6b1367e4a422a349f29a3e759f7a84616472dd4c389a93d6493f3e88e3496edae6b724f525e75ce5697ef2a58cd151a8f9612fe7c7b9fac9559df22aceafe4fae57ca9cb49bdc9b78e04fb9af756845f9b38262739c9752b62fa723e72ca5e2c790dd77411939f5cb72d76a8f9e5680b2597ce75bc15294de959d4b48ee4236d72a7cec41fbb2f2795297bd2752b224bdcfc5010e796b9bab6e4497334fa86bcfad57d39afae8db96e700d2684d002ce9cd49360750d2684284291965f6fe1140e908889daca70e7ea0afa111f2c44bc0df021841ea1d2a040209224a40ee9e4e004e003da001f9643286354483f748789ea0306e0617462bd200a8c0d50531be42ddf206c3964cfa58e216988f108f9c9f705c2721c1d43a7672ccff9803660864d804bcbf20ceb566886204b8c5fff14096fed3ab4a243972aa4dff28592c31332e800820e3aa03374f6e804c644754b23a481f58d3852d86c8b01aa42853af431ba49a0b0b78c85f34fe128410815baecb80ea81b085ba229c39ccc5306f6825868e70b7042d52e522062c868e990ae439f2a54881016835220947259b087bd29fe56cfa140966751739154b907a950893290545806a867b8d952762f0eec616fa1942e8252d68bb2ecd02f17454229700aec3982cb8267b8e9309dc6188b85bdcd82bdb5012e112d6c9102599c662a2c1305f461190b47e11b2a04f375a8041532f225f98834bfc53ef6a6d2be59d8dbf689c23fdac0ff75d11c2a848edda114c016fcbaee0f3c423d039fd0d5facfaf5f01897eb7c83648258b5c2a50683d326199afa9bc104c8388a126cb4e8565a260191f2c1dd45bb80093a5a8b360a0381c46e523c51a16be826d37307a0def07bb8d823d1e7c3c210f525df9f57586c23251340e759edf126e07124665f67d9e38d079f2dc21da3898882cc208152e84f0217456c8daded1ea89c31376471488fa5c2a2c03bffdb66753e0a69051b88173a5b0c7752598a35738d785b2e4e376c3dea4674a53059c2b5962c335bb116ec2ae4fc0f3cd79734e164a86997eb077157596209b8035c29e6a47df023cec754884edae77e7b1b7de404405e06c7e2ac676001fe78f1e42ae6f149e8142bc5adf1fcff9fa3ad92ffa4221aed3347886f375ede8ecf99c01e41dccebfce01b30bbf10f26b082a166341b0dc763ffc24886232a645f5f06534bd7c902c1c2abc7689f211592a06675cacafe8229494c9992c4942953928801d08f2051c2434ff2f304141efa0d4160c213450a9afce0e10f144f3cf47d02c5060f7da370c243df1e96d11f29b478f833c59387d0c78e1f646b15369e9d3196810a6582b0ccf6d069864008d990106b1bc8320478b6f22c2483e018a6a4cbc777cd1c98c77e6070a54134bae202cb8c214c8c2062d1058426b0003eb18050c70f8d46c45e1003962a1fa85064b0d7e59b0695d69e91d6a5fa8b8a137f39e4991e6c2e4fb90ad1bfa490d4ffa4cd1944bdd28f526545a6e2eb4f15a1ffa46f53b0152d2b16214baf3f3d3fa881d45e7f7a84f003897afde9d92209c9bdfef4a4d184cc5e7f7a9af0821e3baa04f5caabf0a03f555c50c34a04a1ca0afef3183732d57c7439c99774659c6f9adc54da54b2c4c6a1d72b08231624476658d292e516521cd833ef0e07246460cf260eedf121ccfc8ad685c5388a588c11ebbc57358c8de2c55977219930c1fc72264632f7c11e3c32ea747a0587ba7b649c2ab561eee638c5d2b20b1b599605dd1ab9655996052dcbd2dcb22c2bb3486e912ccb72ccbabc907b84652cb7506fb9757a249665598e3aa910e83d30884c61323903fb08ae6fa04096e596e69b6f4e23448c0f6f59fe6d8f95eb0b29039da9e915cffaa032d12de9966f0e3a03ddda224a96c5b9915ed5f48c8e0a935da9ab00db70737b16a85b2a96eb18b13222d2c81a527db6438d6143d734c22d1b2a44df829cc35bfca495b9234a5ec3b0bbd254b2c466797a653de995e5b153c29ee55bb7507a65b9d65d41f2dba1b79cad0f2362994f0071b0cca759764809cb406f973d03dd72cb05a042a2fb588c8191290c3f80fd4b654ef24fb3acc876cc41a033295dad7f4065a243cca1674067d8a11cafba524f6dae2f32c003212b73478c1c2eb151f52a2645d32b08fd0203fa91d40ca976e8cc2d476684e45521db4b052c6fbf40f417e7eea502ed597bf6720176cdd935cf9c3bed4502fb2f353cbffe8b4d776aa3752f36596397c7f4eaf2ed8c60d8751961d29e04966df3a502975fdb7c59df5c6d2ec7e165e78b11ce37ef386cb8898312242ed071d86c1387cb39e7e6cbfac897d8e02003e79bef4e19361f4d25996fae4473ce97d8a84d0d36dc586e645472b5c1ba179b6875321c61af7d2fbf00e7d7c40109192edf1c8797759263a589c385f9cbce0b901c7bb9c0c82f1fc5ceba5117d3d5f4aa9deb5a6db64e6db04e6dae4e82041b2d810c97902da47d5808351be0434e0ab94d32116c5b449286243db336cc1b85aabbb1fefa427e3a447a761d15d2bc39e8b2e0995fd697fc4e1bd4634605e8f563a79f84e31652dde70c22dd75f8027b96652561196b32e6593ae3e92a09928e061542c232eaac11090d49d80811242cf36950122c392cf3c93052c3f3545589b005c54c3eeb95d7d75e31e4abdb264d24d7af6b9bb0cc35d9af8ba73d468d499030731339b10184d9c559c6185bed85dbbb3d3df6d83da6fd49515f4bf84ffe2053986c7bf5eb0ba942482a047e7783f14412fa5251d1c0329737bf403b79396f373644bf3cb32c0bee40f483210b6ad4a0ab151a8c012147d1c477e9db77685be0a49d98f21dc4647dacfcb7421a8f1346f86fdff81628092cff2d966f879c352f7316363fbf3a1a92e4b0d72357f5a853f5483865dc423ab1be803f6a583175bd1c5345f2eb1cbbfffc77c6783c484f26c890178258a1c67faae78603084e5e5d5199faaf6bb73640d89eee90294c86c10b62ccda67b90e05f6d59a46d490f08296654d5622a14c612216f273a810c20ec2409e2c8536425e8ea4a6753e1d6ab76263bd6a25da6ac81a5d1f5d1f5d9f09bd0858059605161674b5ead189a450c33216b4d4bae1a490f072eb8525fbed23e1469b52330db3effa3601fd792dc9f53b158c5cc912138cb0f961adb9e6a3d1683475c85cdb9ac6f69a478c3c1b4d168c5c0712693472920e2392eb30721d48aa5eed8fb6d4235b54b2947c188720a107034b90298c4f4d504dbb6cdf1e2c24d013284b03288c6581f542d906f0ac8026a0e6086b448d17f2db9e9e9e9eede9d1427edbc351786679e027cc03cfecf0aabd8198a23e59befd6320b627480fd16ecff6c05feee16a30625e5e0cc360a0b3d716849e421b21d74deba3cd486fdf375866f3266973bedd3a6997a5eda637e8bcf9c8573ac9b351b7f324af619293e63a591e35e4b7fe2dcf23214dce078657eb5bf743052557b2c4a68484b3e6f919f992974abedd5562be4a0bc4b797f819e70814c4d820319dbd7518d867c89e181b2a238bc507fb16f0a9f0ea5ecd3680b189f56aab7cfb30064405152aa45320bb455bd1e96a7d1545855f06fc128141aa6479ba9fb45ee92633d8e5a38ea657de5e98b77a3d1323b159c336d615f20696695df500c2c4435b1d1b5edeedd715971dae3c63c1a02a9627fa0eec8a9dbd032aa49d97f0ec1ed01988c57fa611e88abdbb1d05b284d0eb105e7f9610e2b3dd76eac82181368bd63142eacf123e7cfb5e611c784326e4d51a0f0f0f141b98868dda40651bf61b6e3770b53ba8bf1e1a6442626f03fcf6cf2bb2d29909ac02a9c2f8bc5d7dcac57fde135120ed6d458914880e361ab6762fe4be25af0a849dcc71f96a0236c278c5183bfac5d6e5da5d9ea96297638aa952d1f391ea316e643f6e48f99d7e5520eb5209a0f359c9392ec6c84528a597a4eb1603a7a1a494aeb59c1cce8f8b21f3cdb968ca363f755f86929bd4d95c762f26cf5e4cb3c8dc32d4496e1307e5a689a3653bf05152933c5c522da91497e2322ec56526d3a9575d9a9fe44aee268f8e2ac91db803759e73e5623c39d77da454aa2b823ae99c487307eaec40243a2e2c8ba039aafb761ee559bf60d2be34bf9deff9717e22915cc55ec9b90ea56d25972592e3709ba9a469a7eecbd1b4f6ac47ddae1b0c99bb78f7fc52de029df32ebab46724eff9e5689c7fda974aa61794e3985c73d4d4dca475c984d266c963a9eb93efbcc97783a1e43d5f50de0e9deb5e50ae39e7d89be60b6a12d17fd950bea19c34a19b5cebbe9dfe4c6e69d04f9383426adac4918e9a382ecee568cf79771f9c39dacb597271e9cc61a7607bd6d2d2ad995a6b698723efd64cf3835d82ccdddd65c8f691738d72c8322d8e4279864299a6dc5cc51e3c759984ded29d1ca7dde4a7d96e72d3a6fd88a48d462492b6f3f00439efd1d5b4a923c17e8b07ae917eb0f78c3524371214536897cfaa9f90fe9f77cf2fc6611999c23021a1eb7b31bb58e428649c1f0d843f6e3cccc37af0fa47b67fcf8fc6e3892a6855b9057606d3950ac99eddc836807780f353b5d173358c67877db9d330cdd50d11820a12f2f39a1bc21cbe27c60ea4820281ac385455d78ad08ab0bb095f4c1322ec3eafbbbb1b4208bb1b3664558c65d4bfee8658b7aaeac5615f4008bb55a3ea052d18e172430817421de4f213b23135e43a5c024208ad27a525da804bb4110776318cc2424d77b74557ecaad2990502622a52598cff5a36e87a42d4606c5ec8a902810e61139885c1ebba9810eae98150103e9411051848d3125c96718421dc83f1ec209a42f678fd2923085e86114fdcefe88189b178c0a454a99c26666956f5de979899390b0e9e999999d51802127e200212c6f8765729331d6c98ac34968c34bedb058019d123005e90d1c3b703609db0038a1454888f45403b3686d0182cf8f6177947962e0516da31318af0ed1a461cdfde63bb69c95998d0128614d576d3980f6b1651ccd1841e70c10319729c71871033f314d8761c80c776d3aa8739ac33185898dd65bbe12c5b6c2d1e1853be3db5ddb4aa8b1e2b83820d50c077101c4154a8962881a5064210bd41451d465833eec081e42c3d031f3ca35f28810b1313f961aba57c7841c5333b26bdc8f2ecaa2fba7876e92e3918918411a8c8800c2a56888e205309b26352e55e17723c3bf742d11436e0c982c70e35ca90c345b753cac701c0e8028d67972af762b48b163cbb46a358ecc8525222a40df03fd5abb2ed06aa8e7080ff7e1c81478523288185072c653c3b69bbe198ee1e58f9c20a1334b8c062c5a691f0ddaaefeeee51d0cb1862a8fe0b42c69529b698c1164a70f182672e868c60060d13ad1285257a30335f6a851168f0edd60fee6022b57169b438e31b63e1d955315e329e999d66881166e629b1f84ffb4e7d102d5aa0451745f042c5a38322c1d4abb2d40800183058d8f145165934e1d9bd08583cfb7a2fa50a7d0a549346961e5a30a94955bbf6a5dcf8f9efc71529782ee3d9b12bccf81f226cf1ecce5844f1cc12032287b4420e1eeab80294830f735c01fa818739a000d5a0083aa4004141832227405dec9052d5e18457fab18e27bcd2ff3009240610597a80981083222156595125a1ea61092220a4e9f587892639604208284c289152fd3491450e641516d418f908aa353f19e70fd6211cc2330a5de59a461012fddced45a8b6b05d1005f223d53f98f756d5183feda5c698d545dd8a90eb1c84e495f107761582915c5de706dd5c9dfcb4b6b6b7694c680d643e9a2878b9c0da8c7c6d46b3896693791368c364e43b6036ab2ad8ec2603b4c9e60e2a28d98c9c6de268aaaa10975499e26311fdd9668d080d4d4c8ce7b92b10ebcf5f547c541f5e6d0e9baa402e87567b9eaa938baf353285f97893f48ce5b067305fefb90aaf4a25257b117661188cb7b145cd3cb949afdc90ebdba340d8610be4fab73d4e9c70337408258b518e81f393dc0f61376145cf5b21e5d77776af900f7f750aa93e7764f96e3b7658c606f85fcc0ddaf27c580c8649956a8962886e10827479f5a9438ec7d6970823c274d80b82f40ffa183b98f01d4c3cef5ea982ad018914c2e83146c89187bd1ba26accce5492599a6e595cf23cbfcd36254426c86f85469ac2e5ed8be562cea656c15eaf0f7bed6fc80cb3b2a91c1431c6b8b921bff5b9766e13ec75d7700dabba5147eac158203f255a1d7426a6392fb96a36dae11924bd62a242a2ebc4f4cceaa048ba34b9f9e917dbfc3607df57b2f96d11df402b836fc7e6bee0dbad985e260aa4db90ca9eb3c1ae3f496079e189bd0de629d8c1cdec50555555f52c3641cac0327a85652ebf9ce6f2cbbd1896817e5997757d3f82a85f7a69cf74baba7c85a97039bb02b93c0e49ffcbaf4623cb1dae426ed6b5d552ac2808ebb7665113257415fd099efdb962eda843c60de2220c93b237680acbc42656131b16aba14881443f32c6c73e437ede47cbba7490ddef7f184319c120fba102c68078c5c795aea2a740a24347922487069e3622c315af57d1a37a3dc301363c38a237910839815376d3b030e40e519fcf7aeb9820d1be83db28afc0a4bbbbbb2f8c0572b79ed81bb2bdc6f72daf2172866c61087b161196e9697147a4ab61cfd29a21d7767359db0b9fb6c22f90df01fc02e0b74508afeff4f99a9e5919e8ca7226bcb2dc62419b9f266185ff964785bee5d1a0b7bee5e1b916080562f9f200491f2c55969561f9ed2c87966ebd3e241e221bbbcc30ec45668b84812536a419ad0963640696a18a8fae13d3f858c3326bf97bf418d9f0b7a611051287244f1d428e61526e4f4f4fcf7c4057d021844049b26b0e3a24747dd823d403d749cf20d1d5fa10e604d2b01ebdcf90d05588f7b281f637d4d5c333643b4d0c0b3f43f079e8468254a84a6463083d0fdd9f0db9bbbb267565182c5e5ec390a663d8eb353e15fa9d519b2a47f47c3b122cdfd13d9e2cb021a6f8482c0a0ff22a6206f2f4fa230417f8400839f4cc51a50a265c91042baa28c30979bdfe541154c595182b42ff790c1419337333f362ccccccccaf402c182333337333b345e32399b9bbbbbb5b3e33331166666666c8707690bb1b5b9dd199e83bad289f999999392371aa26b2cbb5bbd5ad2e42e8dd9d025177014008216caf2354851d84104218d7a3692760ddfd75f7be7a9a0ed7755d17ea728b4a0fd32885da5c08810a0f714ea654cbbaec6973c1b44960c97c2850a0c8cb4b970b84a233c423c910e4c100155444570a30c4eed39f873c3c3ca5adc8e5eddca52a1e443cb6236888689a34e2b115f11e3005a2a8eab981ef1ea6607a225318c57a9846af52e7d7bb5d28fd252526a47df977d723ec084567c84a32a444540c80a2c28aa7e339d29791e5e1e1e18117d3f44ce6aa3e52463d59e791dcbde6081a1a7624d656c4316fc4ae3eea64af9809164b08057a8f2cce628e0e08d7c967a5181e1e1e15d8e89ebe63689478a02c7eb120d1a12cff9fc6a1597e7f9ef8cbcacd25a3008b6566fed3de011f1da3e3a3145106b2cc0a3e4dbae3904e1e8cf591f2070c7ed81b5131a020470eb020638c1e243186cfc3382f1fc8b5d1111565ac9e1d9310420821953b7ac841910e5b8cf1c4068a61c511e275c57fda14430878fea1620658f3f0f0f03cb1f9146888111aa949f8c11641684144c5951cc00843863d0833f7407ef2576db0dd5d2df510e6c7eef05f10161e56918510fe49ff691a0fdf78f8323f1e4611e3bf9d4284df281ebaf6e0a143c7a4cabd989e874e5343c40814527c1133297bb149474065b80ef5ba88bd3ec2715df4cb7564f9f64ec1ce31c44e66c02d6842c4a3423ace4181142990f6236a238bd0996da22b226646fe6dba5a2952a89cf86e6f28c86f9b24e9553b86a954b18647af2c133be611ea2215d2836cd2a4c993264d9ab4b050fb5d8d305ea34e6db61b7d663d212d2af2830f8120215c6666d883fc568a1415c25ad42a84b8f22bd433cb83b5b251bebd6fa05ed15259c2ef124fd8a67d9d48f9f62582e4dbf746e7a29e214d7ef2f193128f02e91cd8c9112c58a15e6d3fead80676213f2e8253482e5221fa4f382958881b603bf8f655e289d0ce4ffeb7425dc35ad6ae6539614f9f9fb0cc1d6fcd910f12f56ac549d1c38632e4085d5ab6462325da6818a26fe0db2706c362b018ec8ab9608c61d4dde7704ed846f310205bae1a9242ea467446a51ec33bbcd2e11cc824b04ac531313131b1d3a4940c218c551c6b6708590579d381ecd4efce20a121230cbb31669e180de613b30d876cffa427db9a236b61979997f4596b3cc23e8b1a5420ea57b43ebb342b7e86699786f567246dc412e04cd332d208cbb8874199c2b8a740208410eb95f684d9dd6eed15152c2af60310800007122d90f1f5070e29ff49a982038a4ac62ea58430887a88f0021267c8f1860b9cb841154555e480831a400172038c1d406122e1b92b3242cb9a40d0a2071e389ea0c50efb842666f031c6a8761861350b2000b520a8892eba1862e5500880d71f3b9678d2eb8f1d52e40e3116dc30b8805eb8a0091db219b3348931c6c8841b2326e2685285093322136be8a09fc341c68f2a70047d7fbbea82230b387e30278c08411049200219544011c4137108a10350bcb8c10e3e0421c5ca3a41c51e268584af3f4bf022aa96c0c5c714cb4098178272095bbc4aa6968005d791a9491dc85ece027becb1e7c3b717db8110939a922a9d1bd0909fb476909f12b911854873e2dd60b23c7d4474b5811e3b0c7692e6d9bbc2700c952e2464a65eccfa4228bdcf7ba8ecfd2892bc023b0741ce21531c5fb7fd1a8e71af0da067ff11e4f987f749f5e937b668630a91b601c4b3431a16b2b09cd9f311b97777555593ddaa2b1cc42bb067d612ab84fcf84a10cbec152c5724f7609f8444f00a06e3d97542339ebd996980144853b19a20bf9898204e78a0faa42c7a0eda284d006552a4f01496d1b950a260eee115a40421b76779ca22d1d323853d96324581b0b31423ac93ee612278c5ce519e7d274b9952457ed8b39467c7b41847c6040918bbbd182c7227d629d8eeeded6d1f5a481feebd4a25f4de0f166052b0ddebfd6019bd496d108f477e2ae943a69a63144537b051c5b32bc1341fcb047385d95debb22eebb2acb63a6b6af106f6aca14b487e987c51565d6548ddd69d442b19931ddc06e68b445dd4411e5e811d4e911ff3c021a4f47d92024f37f9988779a63c077516c8037bd65948c8d3456d032714c242ca9416a10f4547d800e2d967c0341f69a8cf6e7744b890412fcb3e60ce329ae5d9a14cc168ace215d8bb934ac83b6011e4279508d9da30f3eeeeeeae2ad4a851a3aace1d25ecb1cece0d4aa24acaa1379e3da5b3b34c7cc4ee55d58d6badb5d6eeae478e5389ce0d3becb17f2b24b469f08cb3631ac6836c6d600ce4930f7b7ea2fa19c2f2eccb03a6f958209608f6ac4876e6f96f9fbcacab7331d484027d343445cf4149107ab6e145e3b312f4cd96696a7805f648c303af14088c08194535c59be095be1151f06ac81052dc10fa1d7e11401d99860cf1241b324494ce561b32441496e1285846ad5879f2fa439ef8b08c5aa992e5b9214344d9ef39648828da6858d612ae0aa4e3d88b2dcbfa910278fd59830ad51a48b06020d7e3102473fb122a1a762fd16da8d1ed264e171e80d3de01f0003c7b002000550031c6c8cfdd6d149ebb0f05393cbbea6a73d095bb97767d1c7d69f5799d300a9f410d6319d588d1c0727273796f37268718cb44685da38d9332415e31d7cc6b18c360e8cf2666812543f4e4e084190c01892ecab0c93ad4cc1cebbe9dc7f66b5ac9bf48374d395339da972411e43aa65ee69af9ee6c1decec06ad53f532875b11f8a48c343f25a34eb515818f4dd8a5b61b6bca1d4836fcb4d60bd4b59b803ef40877bbcfb27c75670deaeb1d975b076cca5ea9eb7029d62c3064428c266bcb612f461f8d4ccd002d752f9b63b2e40c50199473aa0f90fea99ef385c22bd658632de4a743afb37303b7909384bdb8c35ee4385291301a1a1bb6db8931ec79497460203fec2316860c43c268ed171ff78aee11d43f15f65be49878c96b7aecc52c41fe8861ef4ae4b2ed91d2047bfe5764f66ef8ca156c5eb9a67b527a560a7b91c7b7eb5684c7ef14f6e246d9a07cb2a18c21a17f0b35ec8d35a43c74b8c243200f07f010000f5b7466a144573160a5bbc185d233ab86aea22f162b568857ae5c71d350205780648dcdcf1a407cf423f1a3f13a066ad8034efec198fc4b350a3bb9ca34e5642e64f4759271ca096b30f903bcfea8e105b4bc27ce84214ed8c2ce3e2f2b1c43b66fcf8f194ba68cf5a4410479e066f99db9a09c11c7af94bf4c220fcf0413422308ff05f985cdda5158ef343285899a77a7757fde37d624cd499a36729216a3bf700eddc5238f2cb265c083a667bc1efad5eb8f19517c0b3d7cb32371bdc5b579b8f6afaad2284d0b0f550b0f5589d79272f5077bd15b3a1faa2f878567dfc863622a1f752ae71fe4a74147a494ce3e4893bb742f3cdcc55b9ceb5e7838e7fb99d675c757c8234152281ad88b7e24853a720339f276950ff688d0b05033c42265ad695d8b7787d36eb9e518966df3a5c8e699b7b0f992d7ba0fbee6dd7d48be9fe45b0fd7ad859cffdaaf5ef2dde5fcd5edc4efe19af7e34bfdc8797436dc70ee828bb7cc9a4e751ff61da7593ebad4a09cd4b78fcc98f28ae5f54728e833d6b8f61f99aa675888ee83379a2148a7f9f8492ab2a79c1815f2d32025db2eb46b9e7538dd71e65b365f5cc89ce42d642cfc36bf7612ec674b9ebd77bbe915c84f8346a31990e4c4385fae09312b2e69595311636648fd1102faf67dd8eede31ced5927cec8ed15d9b1f866573c6d8913cbb2175f1ab41e735df4899ca6b904f9a9fcee3906247f24fe7b5b9031fb6409a96c6790df30ff2db62641fe4114ddc86bbb259d39146c7d8b142fa5f5fc89a21d9b7aa6718a0abee2bbe3d6e116954717e1e74f2c5073fe879980a598d74c6009e4a08a6801b4f81b47b57ac5c0eff7ab95c6d34d7a491a894adf694410a19cd00000010003314002028100c088482e1602ca228baf40314800b8b984a78589acaa324c7614a19430c21000404000000406064b40900da5d98fb1e517efa1e2bb16b999762b0de4170ad222e917f9e3fa811099ca1ff3776e036b9a26b1679ad329f138a99736019efdedb0e6db7cc4a01601eed510f2879103d2a9a1ced50a655b0b37dc985b6998060d4ec58927a6b30eb424a26a7177387a1e7707f923aa3f26c088a8a9e716d8ea23d0745cf121d1dc4b3cae6813f14c7e036a4c6f79355e1dfb4ed88c3cb019f5e49dc5bbe47565f3834300b0754a8bcd5089a382950ea046f327156026a4843f6b0491fe18a509c707c332cb45dba90f8a741e2a8094e0e65b3a4a3adff4ae26223e9ac913c197d6e6561888a0f51a72c949b97503180488c82d694f5e334a7dfbf8accc28b788378307c96ce39d2bf1ecc89dc002ed84c9f5d22f14e259d59463acc9513294a785026479420100c5143b45cae88f0616c27ccdc36011a37d81100a772008b26c85c295a2af6c3daa0ef4e5ad78ca25e55f04adbd1332abc7583f867190ce244274e7a4de1e03880c808246aab64d3d88bd1d3b9813033884a17298e5ca05c289d69398dd097a03ad775679134f720eb5678960cfd277b537a1591fc940e7d6a66163e2e97b40047850627ea1103ca785c165c5520d4fbd48e86314cce5b40910b8353c555dc91b9f7236fca116e9e18e62d50ecdb0b5154a04a08c4c11aa13f7eb00e94c69ecf3b7e4a2054fe2b0fdf66b4f04a42cc810f6c0b2dbc8dd784391e9e318d4c02be0698218d57af59904d9238dda956f4fc7e6dd00209c9ccd6242fd271665e2824daec7f436886043dd8fcc9d8ad241d94cbc82a8342f7b91454c166fa6c394281a6cc14cc3362af39a64c8f87a54c570abedb3ca5d89f4c8c3e63b32ea54d5767fadbb5c65085ce6dfb33501994869e375cf07ed4ae76ae1ec87edc810ce1534c6124ad6b3d5f69c17a8f50c168489b01c41ee7e547be4c80c308431fd232a83f05a58966c65ab403546e3a60accaf02756db442adb172fe9a3de05fd3b9893ffd18ad5964ffa2ac0f5415b0d2f3d053e1ecd6bbfdccbd4000b8fd0853893acaeb7f7e2bc92076ebbb3a4cd90685ca0a821a50b839bc0e8b0ea3a7f25a9c36296c89fd7b6c1e2b9fc9cf1d40d3e3760273021ff3339608e038179be86e656983a71c7b259159e7d8abd19eca19ff986e4fe2f44ae40ea1ef347a6dd35586f8759de845f67fe336ad5675f3b6642bc5da711fb05ff81732aa9b08cd3a21c80586fb124e60926d3a0646a5511f9ebd06cc1f6640448629ca5c3fae067d733aa85a30ed3b0c94fabbb950d6ae0c710e8eda7b947ffa14dfbc61922ab62a97460e33756da8fcbbcce6605e4bcf4296eb62991ef5fc427507e9ae60f8d2c585af523af88f46c049c9e723909e9d87a982c4ce7693c3c861b5132adaa9142a7084aacb1cde1a889d1e35dc319dd448a7d311a796a3d8b4dbab744e67e6d1e9935e769995c4d24e0da18e3adc1d8adbf6854e911352c6867235e6676727db86ed3aad3580f954e6b6bf91c3b36375c28c3350fcae1a8e556503a3b450d8f9e5f0bb82612c3373af07a3ccdda0ea990d01c3153a1b264f100b4702b3b40300953e9d7de507e31ce86a57ef5605d25e4a743e1754292fc552900eae33c36e776a41c278061052fbcec15e16cf0f54ec7abdbe25abd1138206b12405ce86400d4c387c1bc4c40bd7191ca047ad57b0bd86675176a8a28ed4b3b96536cdb04a2d8652bc978a5df322ff9d0bd8a1e1b921999a6f352aade9045870734ce1d9b4112c5cac75590899c73c777a8f5ceb1c576e1f8dc2d55c71ec4376ede16985728cc7a4f2b63bece51c1d7eb7d6ebb9e3f5eb7fae9622a27eac61a277596fb299ef368a944b2b721f0637e9dc7b7b2343b7a591ae4cc36423eb61dae1c8b52d6215d8e51af72bcb995de38ecb0bacab154f8ac70382fa43f6335dd1d2c68ce19d7d3ddcec196f148712ecdd9f3e77362397a31ea6e1b8b2054c415b2f1cfcc826b482c36cc3e33d0cd0eedbba78391cd4817dad788e46194eb551c60f4ff83262c78e2beb06cfa10e1e116a9836e3c91be4ade9cc966a0c45a24d0d1b72a478be2b76f351226a33506e197787ac86ea2e60084c0de9c0a5169e7c03a082e51a08a1c2fd6890c9495c9acc00dafed7695d2a459666755caf45f8e151b59c9137a0259462fd7a99d448adb4cdcab772eb52cf8831545773ca822c2205403c7023368fd6e25dc245eadaaacdd6c4540b51f5a9f1cd809791a38dd70f02457a4b49e547f12730d02a8ae48e201b218871aa7754fe8eacc6a3a1b9a018bdb31194191741cac8b7c0abb74f89a68c7dc216eadf7c16374c1049bbfbb17a9e37ed7ddaf4eb03de0874be8a390f071614f6f964a1b0bc8a10330991e0e47ddbccb8071456e45d718c8485c50bb4209b45b4a18a8d83230054f6aecaa024eebc79ae0ab6f15c33b0191f720f874a60139bba6532203603bec24a5d5b9edbc7c529de672f0084e5ebc07b4576b087583873c505997110fdc7c56c4f20f86943c804104180014e93352037a0485b2666e04ea468540fb5036bbca96dbb7d84b72437d97d5b31fc382a04ef7bde0a43fccd4fa59cbb050825bb73811f7f99f1df5844b11b48f3eea2687477b7a91483a105bbc424d73034b5364a24aa544a1eb46e2a7975e08afe48d2f966e253436703ea57a3630598235f075fc1a536212e140237843fafad10442a081955230fc078d24311d30fa081ad9fd9f985c8663b6c1b39dcaa0316cd2f31cfa73e1b2ff8300fd152d3379c1ad5d77e2d2a14122a6571ddc8a9212cacae2dc0e9a9de715bca5d61d7a7a5f42d3794a78a8a0265d108d4fbc3c646d89da1b936a28c2e949adf835dc4893938465e2d5f6067698a730a2336e5bbde0bb9ab8d63408ac48a71851fc26011151e90d4505265ecfb365cd56498050d916e085797816f9b9d42d997cdfb070cbcad13dbd4fede7a0b35083f1af09af805ec6053cce6517abe825486ece312e1843bc612784169737d14287c4806f7bc1ac3a8993447e55db22e863e0916dd8785805c2fa06af18371a127b2ab1d43d6c6cc860144de4d607e9d0e42f503d27d1d34e359f0e93e571fd3b2f613c61c912a4bfdf8e99a80e1cd4d4332cc9a0eb75f6373f60ed24d300652d21a6d85fe2b2062df4be1c0330eaea1ab946fed396b1756f4ba5700620a748fb24c38d00ca894fb32eeb9c5602dd49390e6fe4105533748824c219d5915c79c9892c2f758a4b00fe9aa9c64d71a35aa616b8c7bfd43d2a38109b7b5ca2667ac2a27c4a08830ce91c2845be9f63bc9fbe106855484b96e876ba6d2d8700d886934baa24ae08e0eb327bdfae73d9d466d52f6832b7dbd511ace9082ecf1d4b9e320c788643ecc1feb9e0b57fe495f7ebf93eed3dfb54f2f5327ed3204d25aa6176e86464202d83ab8263f1fd464d98d48e826cd343b343e90209a6e4da07b026e93732f7f79f18179de36c683e014fc714594329d298b3ac8817de150b17e449a0e93048fa55e4c58317c798495c88a9785bb82aa7feba9d043fbc5962ad805288bdeba21768eabf82d044aa6f52add490e584fe8598b30693dec9ae73774b3cdd211726ec59873d116318922a9e5ed90bc0eef1b18702af29602b80fc4f11fedbad51f09c1de767db71f7101bcb7e5c0c4d03df2cbe5702df1e2bde1dec02c0c6e440764d14ccab19b201e1ba3212038d42bbb2107c0c493634dfaf39362ad4aed4a31a65d5d435b8f9ba50c32e556866dd6ddc3b30f3099349f563fc0206c613325aafe925e9379d8d4be50623d97ed7f0a2d66d829efef8cfc6d1dfcf3f5318411cc3778865174092d6b4968dcbc307f69cdf48d4bf8f2e7345d090fadd7c6629add4ef96e0e79c8eef5443b491986039dd8380508a31ca7951577718a72efc5d112682fb2d2c5cc416efe23c24df5d6650f78522e9e394f6debadbe978dcad4d7c9a0858dd028cc0829279f601e3f6af99217d6fe4af0c468f72f2d9d83502ac04c3e59f91edb0ba48f6dc29bec8b6b270e792001163b968b6da17491a31cd5502ffbe32e42a6fd158c5231a595972d9834f90dbd7cd825b45e9721e27907b88ce2f6a19be9a1ee7b895cc3d0b1acfbe19e9676662317ad0f670bd204e31874506442f166f98f9ab24e82ae3011b9f4f06e1ac7f56c683ff796c216e2dfe648569de502ecddc29cc583648a0bb229304c9b0517a772366c59629da65fd9a03c68865668363dcea89001caf0b10d5037c299d97d4255c38ddc7a76075132558f752e7ccb6d9fa94a67af54b344abc0c17c9db68bff5b0a05562e981d30ca7396bfe8e7e0ab85d74b9acba8b09437d6673bba14db88ebc20560cb655b6c43143f261edd30ff5b3836ec5c0d932633cd17407bf5dd787f61a3bde3c5fa96116ab6a874063f09aa88d38b37f65549d8724b2435eae9791db34f1d548543cc7cdee3efbdbabc3bd63c43d375df7764ba2ed508e4c9cddc7533ee0929a3afd4e7bbb670720041fb58716c441047a9814ab72eff174711436c6db6ffec99bccc6135ff48d46040443b03ff40b0fab0507d0ca0d725bca5c42ada12ba0aaca5d077ab4a56d22c7cfd40238d92852880f9220ba65386e098d99d2e96b25728c7b831ea5c43ad3d86fed86a4ed2705261457d339e98e22124ed0909576230be3727f4a04f71a08c07cc4efc193e0f3dcd96d51546dadbd401e8f218328c29d18eb264322586f2868f9b911370a2b2e986dcd89500d396778d5837bb6a525fd7f3c75373ee8d3564c9cedb2bce81ef9a3af262cdd9915c5fe37d666cb403c2e0aad754a07a8d3bd5127e35c0662df536b9dbe85e54aa8f175522b121d699fc1895789dac2505cdf12c89ed75d90579c44e2676ba387649684c1a0b403df6bf4b1d1d35e53f45d194ebb1556ea75a3587f450b304f9f9ebc7157c885ba2be6142b99bd249a1473fc613edbc7dd0e61860b1cceab4a031aec3f5d130e662e3180bc9e3ec29eb327b344c755dc55d64c7b482490ac0c59fd766c09e9ded6405f1ef07c24023f22ba5f2c66adec6e7d84730c0131f760e45e0be7003084e9951e8abe192d713c6de82752533d6390531870cd53789333490fa8d2a933817493f4e0ac4416c6836ff5518152f15ee3aa96d724d5433164c476820f5984344f9f46ce640413478fff165b263eafbf93a0c2fa26bedcaf468f9a90ab89c1e0882b7a1672423ed10eb76956fc33c4813ca86b16d1d1ecbd24bd5baed825b76c49fb82198e380966d188ce2ce9a654c18139e0892f1bb63e125c6037b7a0de78360772a3be00e70fd7d8f1acb5007d15017b4d51cd299c43492569d53f5c9f30fb66223c9d5fadc6f50d4f8e5f6fae2116faf810ad6ca3ef1a531e1d4a3ee41a162f4b4634849210128f077e38c3d19ba7ed7e34448e4a6ad570a3a4b90f6767876a0868f4391458f8580f65beebb0a1251615caee21099413c1abfa680faaa560ca06a7ca7c893000f81cd8178fcb444c6d0dad96466e7b03832a38e17217307b1369f4dddc7923f0ff932f0e9dd1deb7a35a435be53460a90eb84e704ac53c28bc2376529dbca82c02bddb51b53c23be15c8ca0f9e2dbdf29c633fa7d8a70ce8e2a697c7ba55faf9d91242da72caeeef544dc734e1c0214f9a6304883e42a01875faa9eaf2c208a41a8e3eb9fe7688e0895320bdbba80ad07b2f21eb3fb22125274e41d9604dae03594dcb08ff2c26c4e2ef12ea0cd34a7ec56192968249460e7017f7ccb2437b6c6cfa4287dcef5ab6ce52b7e704fa2291ddd07303d6020cfb85a5b94bd832ab4671953b952065ba27cb6a54e74177b476b4ab815ee54069f03ef042fdb60e3486db6858be2aee5d5c6d1f205804abf020896d92fc6e2f239b505eb40bbf7a46333b79046bc1aa0479b89991a238f1968b2cfd44bb4ba7f415113940794967dc49733595c5e96560ca13d7ffb2397a2e77771687250424f81dc4814b4a63a3bcc8c1d5358b6660f027ca15654267a08361db038e0d80ae623d069703a73e790c6be0055ba4661c03834dc0cfadca40504cc773c82442646643dd0a32b951d23bf9185a2ccdd1df4358c51e8dd300143a947f91f3a02eb812ff18de11c90b527c8390ad1ce1c684ee139eb852d04debb6fce897e2f61c9fed1adee0549b888bc00581632837ddd9dbd2933727278f1b29cda149c94e8b599123f4c933e99a5788b2c3e4abe3404739df882c3121045b03cda11e804d804909551237a077d9461b16a22842074f6358cd588720a3c993bf580933b17af30a078ffbf9cb0262ae3c65696c600bc060e53877286185d464bc50d2aac3c70a686954914627d71048a318ee9b09c0f556f454dbc1baceb933b3ce156cf358483f2762291577efcfe92f044e7a8740a649e041cbf46cab0888f148e13f033071e0a682bbcb155c40629a4680dd51f6161c547ea124b9450f0c6f4a48b5191647442a089481fa9a0b315230878ba060460e28dcf4d3a39748f37ad01aae0438a0db54589bcb23e34a8e339ef349343a8163247af13d0b9d52a8c32ca6c5a9c616d746e0ce016f3a1a5a06db69c71afb2f23097ad187990830cd44515bd4951ef6fa4f5ae35f922869b0c373a67b6b9a8ccb496a44aacaf5a341fa68c55f80da3e072e4ac65b27c676fb01d64b8aaa0d840721d9346bd815a80e1622771c28be690d5466731b227aef6a6668a042aa172d063a4420fb1a8fc9b4a6a365ff42642be0586a938ac136bc3e52a9a5824a83aaed55b2e7aac2556aa7964115a6a0b454ea8e30ccd98faa4a8dc87e94cd898c640385423c8bde5a990b116f107d7ced666516e209a8d8ac105ff617c33b14869547c3e2015b46d5041703b87935a45a460895c301f541e0fb44f524c314f1fc3dff31e0d2bd7da2d9ae5909d0ba900939ef4f5681b088ccf2f4627452ae290edc4f2c2684c6bd9d83a59c5d251c2d0d47808cf9d15fa5ec965a2aebe058bf59737b374321c3f406c63d96c2d4d3aea44e58032c2b80f19d2f4d47b62dee57eb1c04fb4680adbc6074ae9a15ee29dda1407cc557014cec0ab4491a803191d74b8b45d5fb538e4edb5a0db4741bc3604eaccea0d8f26b19f6e1a7dff1d9222ab7e7488e36387e9c0114511e2f55e25f8b705518f40865024137d0719bc1785837036de967f222c524e3a7904646933caecba1439c0e199bb243b040e97830534dcef9cda3583861a0a75e7430c03c3fea8fec12ed91fb93b008a616e98cd64824d3bb0aad727825751f6c552be768d0f86844ce17f4b6c5457468f89d85040b012349119f1eb7b29cd7a01f59dbcb5ebc73319e17db9fcad5eef2fe5b835b1e0e1e4c54b7b838770904ad9e4c15a107c60f4b90f5e41f185c72cf34fec3402cf95b90f3902cec3bf81a842681774a6a0177d3c14065edf2b4cadda20b635208f91b050120eebe65046c60ee156456771f7ad52627737f1f24a0ac031305d1afd57532b868a9db88d86ddc48e6d7b618cb901ce4db2cf0d04750ea392a28877ee3b8d9bc8a0a9a51efeefc1697a12e19fd3afb342d71df33eea7578d222f6565caffa971c267bce264c90bd1cae2db3075d51e30b6175fb23deb7f55ae73c5fa5a71f943812c3a42ab22f5df5a824a32be7c1f1421e08b2bb7503e1d318e2ac2f0fe3d68071fbecff2213d1cc5dca587083425c7ef4384772cb54336b289ac838418a01abc008a7c6c3551df5fab551381f2e89a774c771d07610e00252f82ca18d3501a40e66516717c3bc68b524fba9e634022300cffdc291842c8d27939d8a8262d6fe13eafcb2203252fb82728c1a08a85c6a47ba680b07ad46b2e01eb45170d15d4cd6d96fd18cfa68d73dd7cd274e238081ec6ea653af45e94d34e4644c2f654225acfe879bc6c9273cfa395316790a76d1f0379a4e3beed58ce0ea93ab08bcfedc331832d158d5de18a7ce1be312b85274a7f7411086d65174c90113042169f233bf51915eb58c9f76425f2ab9509540d7e02e2d861b7eb16c7f3d59d43e3692adf614b0c8e3a84d8e9221e71cce246614cbed15b5aa3e44bedc488982af616563850c725d7abbda13fd1022bf32a14700979ffe382795c53362515fbe97d73fcfc1b8a0222e83185e42560f0b8d6772d4ef90e6ada91e8443bc6bc9b0349da6aa78283009a0ebd301b6c5a91e3521f854632061157ab3c7738349e65d4625c7522c2c7c12b778baa6a71d0c5ef77c0b455d54c240a7ff797f8d9a6f631297cf56b66b447de0ac9c3bbac3421ccea76e9d886f3ecbbfa021eab6e117145e7a52f381f8d00374bc9edec3c3b12a27767c86e4e12a451263485ff0a1118ca87dfaa352c8b8eece52d801c74043732e66934eaad204e40f8f7e39861721faebe0a7f3e8c192c05ee610a0681897911eed1a5babc6f3275fcd4606740851ccdbb2261ac3525fa5b6279d783f04139026537bb19caa9f3f8fd2153c4a68270229de89c6f357db22a72e45d4dc76e8ebb60a2aa38b496f142533eab0f8821042c0a313a5a640eae2cb82c7185d195895490837d10b5f8fc246a09ed33893092064224c827fc368319337363055928653cf8650e55a8d3805c28cb176134a40190f2d36c52a4decd79768c3dd29cf9619b190c6bf0313128f79a13d4e821150a43e4da4095e366abea567fdfe7cc8ddc320cfa2dd0f0a0838a49cafb83fbb0343f7782d15eab205ef0b3b0361cb2e4950bab69b72a425d6d53d60c0753f7bc90c9dc0977eeb2f285cc6f76a42fc7a165fa9116b5909e1aa9f117b7a514c578a3884036ac1d697b1d8798b0291bdd7abc0efdab03722adc38a17d2a0813b7be99cc4f18e89cc99c46342fdfec67de88055347ced5134e2a6883d07d64fdee1585270f952ebe18357660c3222ac4b6dbe193f87209c0dd9bf9c0675096b9f00e77a321230736068fcbda3ef0fc3420c89c98009d1ab2403897c1f371310520be0e99b18d28e1b714466f284530e0e70f04ca819d52b8c10ca8371c6deb847945ce7c577ee665504f161203fbb67c76eb94c9636f8050b7652485d98a0a39cb96ee3001e8905f4d8446d8fa9dd8f154fc0c01ea9a81ba87c30400788077caf399fe1fe66b061a264d5b7f5b030eca06de2abd1fa830fddde0e46ce9ea7a21131a000b69e7e463f4cfe91fa1d0cb4123e34fa4f8311f0b03a8c617458c406e9c72cabd0dce8667879b8f52104d06e3434e772d1ce58ae7e0dfd2ed47430c19dcf858c06d6693cad417a83862b6fd3ca47575349ec98c9cebff2321a6cc2edb00d3682bc8c2175471f5259fae8b43e0f87940059e40ad724caa4ac9d2885a43326efe2fc334735c8b7d64b07b1197f46d9497b61c3350de245a1264047ff8ebde6d0ea6878cdd67173ea05c1f280aa8bb1135ece590960ddda5ec0ab63fb8b864c680da29a622fb85f647d47b89d1c07a890d6bf31c2f8ce9b838a9a0c205d111abde73d20874414823a2e247d51a0d11bdf084f9f0bb1a3905ae85e4a1c01399a913d25e0b7cbd22f27c36b20d34c000e82e6f52d78c3e2f04b159bea1689cdbe831b84035f13da25ca86946f5ebe9b53c5ecbd469ae54235e070de7168d909552e6b0d8006b0cd63d7bcaae1484510661f54219d1d17409f638ea5e5a74f417636e899209d2f7b21d19767c1983336c8d4cc743fe3e1991e86b19d602815def0b0e245f561b0f0ae0244d2f2f95688fa413a03f5f85826863464dbd2f4cfc85e49eae2ef717019ee1056d8e439a388b1da3ad38e6a94112ed0641d472da108a01e5b90b67bbd193f5b44c02707214c334543de0c8a1756d086a1fe480ff2c6770279d94945650b0af43d6fa3efc63524c15f68002fe8e5d931cb21f686e26e89a8cbf908b833b1293b38873a1408ddc2c879b800ecb4d26ffb7dc9cd3634265c09d90be8ffc611421c699dea6cd7fe61306e08cd42d4e476d66c4b8bbba1c204232c9344aa248e17a8ceda3a76318e37c2ea54073647865684b7c7dcd47aa218a506fb4f02f19b234c53e62aa627051b21f0a777ce0f1abacd3da0e69783402d27138e8963a6107faa5ace5d9887e3887a99b0d31f2be08720524323c1b057939f9ecb2be6a8908604bdeaf5f4fb7b0402fcb16b2c34a1150b909cd7a1a5d8a1564a1ff0efd82630530cf5b0057d0f4ba29e00a4872083a0f26003ae043981616b815eeeada68d0a9f8b795f7fda257186820423daf67521a58fc99814878c17e881c01727957502602cc40b72ed62ff3024e1ce656a33197fbc067c3f707af22cddb334bd75765abcdc0624a26e3e234ff8553df4c8d6ec6471e844cc24b5f7921238c700b8dba9a04f7469fd8431e72d06296f2caec7b6429e610eec8f6ec99dab250446e55d13d42b12137aacf3e0b8f3a66704db774cb46f49fc2e5df50d240728c707a1693241e9b715fc1abc0f7bd6584f5cc0c07dac263e6155cc7b49f6a61c2902efd3dbd19019905dddda33f0d21f446945640bec5823c6450bc23e2d40633b9a15f65e12b2a7de876b7387b79947c04554e49b9cf89cff1c978c80f37a50eb0335ed0a4ae300cc6d85d9eba14dd12f0e284110cfc76b092378ab8e70155f492445ce91aaa7b359dbbec1a7de910881bbec48d7a50f8dfda9c0a88907fbc2c365acf06e3d7af678ad381fbedf212e0acbac38ae557c46814081f8f5ac26c9c03f40bea236282f50438303fd1631fc46d25bc7d035d2d692ad38499dd047df3d534fb105ee6d6cc243e56335f20e400cd0830130f9916fd4961a105734f5772a0ae2ab78b30ca4b22b7234fcaf150e8b2d9c8866e6e836f8ebabf05ac3ff4c5268583f64ed726df95c8c813449ca43edd87cbf9829f4436ad864f53e9de0984120d99190e5bb2ec0f5999a832ebac279acc85860989ea878a2c230eb19a321b8dd387e7a75915baa0400d7502a50e79d14aafb5b0e17fe3bc4ccb72025881f14e25ffb927f2d8eec89a573eee0be9f959fcebf2db4f5a7ac8d081a8c412434bc83541545348e045223da477b07b456a8a56441c4978fdae41d3cba0efcf2dbfabea45506f08c2d14c82eabbaa158313865d5b44d8bd050910c812de8a6022dead0506b33773ac9d565bcc0a354c64cd322dad300d4198ab2d7750e687e57d5fb8f5d1f22296bcce2dc4d83445c55d5db73a010f5c996c6bc03e69fb8fd1505fb1d186c6c41ad629f903e4459ac321dd144a4006a67de56fe265c5a823973525cb79854521c33c3de9c5a1a5f4e62f645e3ab8180085ee015001da9705b09480cb37e0495bcc22bd3ebb502212f7c085803fe539b552adea3fecd1c0e23ba06a508731dbd0e3d83aca89912f377e78e2591de12511dc82f5a1c771fa2d05428a9232ef72da9d0ac261fda1e4e71bb5a46a10989854df1aefcbff7ed27c3c9edecfd893d83a90ccb5bca1d632b22ea951d633d6cade24e81d879f2853bc4a5181d3a07b083b73ae421db9f82b57407b27cbe647437f337173aba85fedafd36bff038ea762a37c140eae0c9d9e0e66dd54d64b69e05233845e222f75aaa53676502b885ea133f52ca5b6aa5454e07be5e0ab05cef32ecee6b4addd47d10537e33e4a47402bddb67245846aa376fb5706fbb70f0ba63b1d69cf7ad5bddbadd5ca6406234649dd73b3ebe55131c1ecdab0edcda79de386d357ab6d892d5bf22173783ebb2733abb54d6363b4ad1eeaffa46dcf2b012ca483984537b1bb52719d94b3537ef998b491c0e9cc69b037b34b6f13e4b6901025627330070afd9c9848e6c4b6fda8a33bac86491ba2a4444e68df46f901decd8849cb43d066a560a182dcb73a5f190820a1ef0fc9dc3c7b190e5220f236bb0258ddb798f3a993e490b7a98d77b9ea875166a4fd9963eed580e6c4ad767a6830fb87a66f7133ff083a2d9f79f828b612e0e509960d0e1279f3167a9a7374b47e54f28ae20115a13f3e18f8ba7ad9ff858c5759906989bfefbad4c6416c1b5aac98318e402288f58dcdc6b80565218e3803fb3221d31bf04683fb747183ef0a3b1f162440d5f3649f0c14473aa6f7853d65b7c7764e277c6ad1f811b50706d82700ca28162e6e71927420f374f4a2a71595f4e950f7b0ab0a65d797d82cfbd05c4d133ce73ac02f37b5ae4feb5bd0e1a72cdf60c5d77d0c30890237110b0fb04e7c00e6af79757d155f2c52b5557ab3fcb913ef6520c80d8fe884270b421eb0500e837089e06c551fb01fb01fbff3e96a9e5cde0f5f88d8ca6499b8150daec749497f26d279d50a257b2e169c1123ce32bf8a50c354f5970ed8da68bae843ea3958cf92f3d7a792a28c86491c274b33c1fe40325b28b31eccf450cfc487dbd77c7176cc6a9a5792ab545d6a3c5f5afe0f871d193454e847e458affbb2253e61517558d411b15bcb5ef2ee4c57e42e103e4c8cdf3e033f9d8cbacf7f7cbf151ab18831b692233009a75ca902c965526d13a20a6a38c22164efd850714e958e43a34405f13fddd8b2058a044e8009f92798b689c7223c089dbea170c0f4d57764f5b79b6a7ce3b2f665f6c91af046eda723f088095daf00b36955cce904d0c28d9ba700c98848198d642c108330f7c4b7e835de4f5ca0aa1df7c4866b1c1c75693a4c2281bed883a4211e8281952ac2856a8e578d582124a8cec7d14a3bf3eb1e88767072908cc5433ebc86261b7120fcfb674f1438f565efc16abe09a8b2c471efc422186e2223ee759d9ea011d7177692d088de3aef4edabb22505608c56fbf3b991984fb30f768952fd1bb7835dec9602e1de46af3bf5c5347af6ec4cf9576e2c24544091e952c4d36b5a8489b829eb0020b0cf1351ab7419e8d37c5648ebe49612b1f455d9e3f42d11f533b28497f3bf405042efe9d4644ff039c84a5ad9e9ca5494783d91f66162bd56ff75172517b54b14d9e0cd00247a670e49282d4975f5c146e85547330b749764b3a3e5737ac7bc25017c3cfad3cf082a06cb4689ee22d8c10f4fe334dcc4f94c805e4c7864ad48251db2a9844e05a7878eaa2401cd8072b9785432529e1feff843f79555cd35fc2ab6fb2bb5641d4c086086817c6161549d9e801f98856fc0bd6b378a548552dbcafffe51907fb54a07094f8b2fc74445e3b9c2f2476d68eb8a98452587fa665bd19d83a28acfbe312c38ddc15b9bd56c38fbfbf193231f3672108ef5da813d7d95ec3b27a2213469487c8c2fc4a24bd87671464ea1fdd22cc84cb5f3a597d1631c3f5f41133ad213f1ff0e078dd9d76c4b4714e7fe3e44c35b29e62215947b566c9c3a4153981864fb3713b7498ede26743291b823d9c55516580fdf8316d8980440874acffdb1107e85c1791677452ceced01cc192aca00009e7474a6c44cc1e154a33a29e7b53a760295b351467513e581968df53465f13aac389ea318143edd24625a510df01b170cbb64020a879f347171647a3e2b2565d15351c06e4bcf743b800b753eafc0a0e506f09758d6d0155744f82fae93cb89e892c23973380a5b58ce8a4cfa66fb6c16235329317db68f14b0c941cf230f1ecaa6c03fa1d89bfbc7cbce9047f4a411e12322307071bfadd38b94ed97829ae8eb89b46d05ed35a7e7e60869eb43ae4c3cfaa94d7ccd007f2807056ebd95d11daba10b513316a0381c34d7e6795138e0f8ac658945b96b287991bd8e176523f1c05332110c8242aa2c170ed8c4262894e3b8d028f307a30d7156306823cb6362a160742ce051964247b4cf6d5c04548f855a5d5951aac2584602829bb2de908dbdd1dabbc029885ca4d9bd23f0a4ce577c78d114d95bf421e4849e22248dec6b4b4f727e954b1c208a2803291e1cf721d888c00adb3f4385d6fd3d70342874b7786f637658b34d7b582053783d01fe2055c225990c7697718cb947c7aa7e315843a12ca390594201de987813b5c96a247700cde002bab7331bd75be0d5a3d089b6b233d9164b314a2c08d240cf39b5ca26cf5ba3461d60681b8c993dc6901d917a24052dd8f0174ad2f511e2b0123d539f72df7f065b0babd00f3066e4a766fb278ba30bd1c563ff72503c6a56df325a8e5740f9b7fe0c59736a2aa0a29f98a6f491b9bf73111b9862b2a67ca8e11b649924373928d4aabc244fa0b4fe4cf434aa737842de1f74bfc5839f5cee71dd165c808e06d81ae977b31e5e24affd4e44c8ff31d4b24924a1cb5a6e236cef19eecaef9080bb51fe1c92988d25064776cd57c6f4176945f7b87410956c97580f2fd2e4e06ae781f5f41f5eef9ef1dd33595307cd4d0e7380707932265c0e76c5ead8499c2cd936984ec50bc8ee4595525795c3f6e84310f38c5b44cfe46a04bb085b08698bb5dc994d55dcab0b90060dd75486612546ed557b55487dda0f9f9bdd7ac984a4c750eeb5f21f2a51c603a1d0b724f1e8f35ef745bcd793ce0091e364deb3bc8c5183185881f7e009daf101bb5acb592e79b7f61ef9dff89abe579b62873376e75e5ae06fa5fb9cdb7124129ed47049469330ec870158cdc8a68b4a434bbbb1e792b1051e113d7fc4e0ddd0b85c3816db7fa27299e7aeeee96584aa7df0f67bf75fcdcf21493ae2ca1156b24fcb0efb6b123e5a92fcddece95faff0162332a2391716c79bdf855c2f91c9f1077ff691ff76b56e92fbd094185a2f9180e9247346d3ace6a341d6cd779cc56b01fc318ca9e7c45fa6f25aac78f65b50e272f413274096c4075533914f4ef609eff6b2760c2debf7bfea7add6cbed388531ca18bf28d2a7d323a9b104aa72fc688c6c542f80c2cdf323ccbda2a4d77dd1637fa3533b80065b0d42d3f51a36935bd98787a40f53b1f6c2f5cd4f6a84fe8f669c15da7c2e54991b31763ff079075ef2862736d31c23b6d26f983d45444e9eea07c6326462170a18e7104f5802994607c38680fad400966e61047279f1ff631974a087ed766135756da42107cee1511d4a199004ca0a0495d9d06cd195af3250f50bb8ad1abc03e510b339e7517041bd8b08791bf772d5b70e6a4e6ef88f3b09c4863310b101922cf4096ad25bad4941bcc4486f4aef02dda045cc1d0f633f1685ba8538fcc4e906b41e4b65b83096835975d9e96b8f9f20087a82a0bc62380e4d62bec97482f61f544cec8fab364a7bf46262edb4ef3dc30d733b4b418b9d426db004f17893184a4940c4081b3a2dbf0a9e8be4c241c5c28e69b8370e7092e0469cc42521c239772d1751833ae185a4f54e82671644d1e4f276ee27e0e4f7e3f1ff25023c215e0d58c1d995195c19913ab07762727df06d484f47c93583a2b7216694124f397b38d47b986f734e464b11129daf79bd4ad41c63001ae1929843328c4ebd0bfddb9e1455780d10a8b67ccf57781c9be332971ccf887281cf39a5ccac69cb77d84ab61de9224856c66c0e715c5a0052822739bae87c8ff5d57bbdde1ed87c41cbbb16953ee5698a457c71a5fde86063494c78a8626bfb020dd34358ae36ce77bc904bf110ec797c22c96fe186d699e8cae68366d9fe73c45262dafe9d08ab3f8dfcd58559b26a09cf41f7947c4c9d4aa85a32bb8b97c03d6730d40c89e606385360e53daf30b73f23953c3cd62091377ffd80515facef9c446bfad88107ab288d418c711730ab64edd044da4ade31e7e0efaa2dd607fe11173ebe1a7ce4a1e55e818f0a82bb7afb349795cb47432f41e5c08e34f3e835f1df8b7854ec3bcc3dae52e0d40298382ce3f03259027d0a83be7c24f824778789aafdfd453ae271d099d2edd112a30bbae6e64a0c0b5b6268b8e94abbcf5354c68eee9a4cc91ef1cda9213282b9d04538a481ebb34b7ab09a41bb6526a82f5da39da7792c7176863ce25ec254cd7ce7c149389b2a4c96897f7751db58156f21d5b4f85871bcb5a5a76201f2f207414b35c6e1486b22f9a70e036f4857fd4833663020a2eb843db905dbfa2c3e58467d44d2468a1fa3f13693baad39d64eed56760eda458887afe5c8f27345208b17d45f772be89786b203a020ce73f29aa54a3b840b90665d94a19bfb04f5af2c64499ce77477f3f41bc11f46dd3dbb9e93f8798488642945ccf9c9c8370766f871c4bcc07841f712b3048909fdfbc122961bad57b3d81bfa30f526bc0fff9fe885f72f4bfbcb9de1ff7558709bc3b5d1b2286fd05e25275ba429b4279fd989ee23efe580e28241252cc4a4600f3da16b5c09416cc8a5f91ba8dfe0889dc97c4dda09b4cc70ac9570d0f935034556c8114bfe8e8a4520c2e6c85e63ec5baf12f6d9c4eb4b813bde2076db3575a7fe460e515f9cef2709b208dfba2f7a5a786c310da6f2664b288e602175d78f64ea99d5929f6e255ffe91bcc5ed8374c16d84beef771213dc7203bcc3834a0f6270247b13706ad840405df8307381b812c1bbd167e1bd28d2c008cd1994f2a1bda890a9f3d8366c01e878fc3705dc37e44355e7f5d130725fa773b888ae80b956686ff977ec8dcad0a2600a4409e50e2431fa1a620abae0dba5d5a7d0ad969370a171c18dd0bc57cf32a72c130edf0ee528343b001664eacd8c0b087d766258d133144833fb3e4dba03d6cfda6be677650259c5e430a6ac206b77a309afc0340cb0f5b102a42953020b0af98bef8ef21fab1614ae2a00057685195c8eede4a6648f1818c2da270b9c7d9117fa94ff2f9259f9017347d166832560f30a0e646b28e0966ba4616a6600073f6824cdad44fd4573716cf1675ea525ad728b1ff026c3c5d56917a66f93c8bed4f4721de971bbd1f0e1430748e06ba9f76d73c99f84563b0d62d9a1830dc322278fcb09c6b3a563e5092050ee9adbf79a6aad65462e23b99da99f356462e0e1c0494756e3dea1194646fdb1df5424ace9ac4a5f6da3576b1df8d3604832721b9677a42215d1347f1a11f0282240ced4d94626c19db0ba08bc1af3509ab87a19c6e862fa40ba8e4c059e3043f0b9aaaaf1fc270ac370b05314df24d6e5a777a25723553637f854ad66ad838c627338aeb678078065986ad4a5bc469ae1327f081cdb93386fa933e74a47535735c005b2deeb6417a7fcd1824ef9bf9f1ff6f78785c42e23038742df132e143b014212d11f36a92195fd1a8240769106c615805be5e6424dbf9ecfd0c21d4ec9073b5f2172e7251062421ffc105e4aa19f8c40218a8fc09232cced6de0f9f46601b70427bd1c041cb603e73ca214506aff7dca78584bb4ae6b3e9661a49560e5c1e582adf440b9d0aa8c4474ebc9fdef00bff47388b842f8ef2989581eb2a6b72ab3a9980c25d6ef2856cba2cd67f64eef7e4852289d7a88b9d06c28339201190a0a0d8aa5404b7ff8c47179af166fd3d65d29b678a0d545c0c4fac17a2428e77348da0d01f759a69d32563591a93e03be8efa64f972a970ce27d6e7fe3d05ba43c1e9668ab881b3106bee662cb5adde3c18383434837bf8338765ecdaa18bf78490985d88ce4356e132d4702c37c421e220e560c57e5e310980d219a74956c3a0cef502647f4df36a04762ec397da62ec0bb80e5c1b12f09b6e7497303268dce99a1c8c4450c89ce0b6721b65905ccbfa4c348c54ccf4f2f3714730339d69c4fc993b73eb9a614e95c220871d20dc2048a1bde95bac6390b20e59943b7406d66133493c57ad01054be84daf89f9a8458fff858c36c34663ea246189e87c6bafa46ccd256c74e26ffb225f5506829c0bd0be43ac4be674f813b49d05f31f92ac3a1538d4a2371033d2805b17d75c9c3dbe640d00b24bffbf8f9ee31aad0ffa1e234805d18361cc368f0f82142c0d18f9e9ab3d5ddd58f748a69d4affd73a3dd1b0085cdf7f680caa09ca3e34765ed0c2fd860f131bb4b5d9611d6983c34765843a34c33a3e6821e3c32b5efa25fc302b566e8a31cd57e5f42eb69936d805ae508067f50d6d3558305b606962ca4142d2409c350b280efa862b822bc1ff8713f1775d24dfb2f4e5ea9b3790a784378dcb46a32891229cb4f5accbd5d435699f083f3c07c004c62a4a6aaff8d0112d6574c74d67ef12326005e17226819d7678542b163fed3ec9d3c13a4cbfab8f2d09af9a1cc3e5e849c4474bd4f2dc4609b12969bf9e3d35f19904b6bd7c38ca011df44e162caf7fc541b4643b5ecb0827a2ed59024243028ffa010a04f48d1a9cd6bb52e09b78f337871a683e823471a7b5710a04c2dc504cd7e955a743ab70702a64af17b09621706c12568ea52a1329b85424ed7ec12fa57a3e3f390318beb3e960ae5d8c46f86a41c21763e69001614fcc97acacefe6b9e9347972906d432f570de407579153b003ae2e3e51420e059c67d9a97aea5f55c29354d1eba4181c299e1cf16518a4f8cab6bc67af1ce0a7ab2f332b6e4a66dc3d430b2d60aa17e2851b5c7fbb62f02897dbbf8ed2a69c560d6d4ba75a7b90d54c1447f26c7b0cf4204af34590be4f73d900b726c84e9d71787d8617406e0d15f4b173269ad9bfbd178673dd9868add29d0d4f0e86750546eef24ccd8e2c91a3335954d47fc40f61502a847ff0796fb43e1e7c3ae8006b69a450b8180ff51fb41dd9b926cd8e3b65457f45fae5557447b82e1d7d8aa8225e2f6dbc8a51115f91d669fb97131b7ed7d2375fad6bc5991b959ff95a74635c4c817cebb896375d79ef29ff4dbecd1aaf4608410bbc3006b20d484dcfaa5baca0572c9bbbcf9361b103a57c2e9801bb77c517011043a9686f9a89d8d7749845cca8c322bf6ee1cdfa82747be339b5990efaa2e6e9ae48d6d5390f00c4ddd7accf3089f9ff1cbe1623b124f8a8b4614a138efe62750e9b69e88f76a5c30d952a10ed45f813db913bd1ef74e5e52edf1368f2fb8a7958f5deb10036249f02387aa66a0d70938f4aa2d46f03e162abd7f0b8046f18ea63e8558f57b8022204a54aec2f27636beda00f6444c77db1e95c0e818463e169c2cd3f4544c848891282b03d7736644ab7dc7ec1899dbf5ab75686624761101523cdc42ab005319aa8c18588a14d8a566fd5127558e3c517940d8f0136174732f8427a8a50a654f5f5b112096649220bbd8e6269692deae5d11089706a16fe884c3d0958e19b4dc7b73c9a3f9d12bf2f505d3e5fc249efe535da546f8d3bad7bace15382bd51d83832ab4b343b42ae35b0ac5f92f9eafd791ba340a83b44d581d00beb7c7e0d540f80bd3bf870faa13f15b052df4800d3ef81686f4adea6de9fb5cceada56114292e28f64e1c2e7b661209b8ea785275acd773243debdea06378c3a2a03fc28d3484f734c0454757d07ecd0e5145164640a14d03bacee2cd1afb9722dd3819752482f990882dcefacd0e906dd0227d8bb7065b4f71cbcdd452c35fba5a0be6105daf9a0341dd3472a43c3bd7013081ab0b1ccd0c7d2beb7800066f4d63f4bfa0277a39fdacd4a1f1f4fa37d163611680c1dde2195a7915a763042476b18096080d34233a00959e6cbfdc51ffd214410bc60da2fc9400868d08d40b1e54366f5ec4ed536f48a33216cdde5e09acb4f1d289916eeb7127ab20652026969abb7f30792c2dc238f71e22c034278d088515872e6ebafb3a48b03859b1f0f395e0081d7053c0df78aca27dcfc7506245ab91e7e3628cc7e722db844f9761537353f8755030beb73da5f024a76864c923e7abc9a209fdb1edc3b81caee4218022d49d18d397cea254814471f55b8e85363a050ed6da42a48a883eecf795c84387cebe59eb0ec2404225c0680aca01dddfe5a4fed97d57a3801b47d41ee858673d1a383f490400f39746bfe08685ec568c1d4fd3601451ff58a50d4ec735c2f3c5d65ef1f2bbae8dc355d136ccb06c4ddf82de0fa8e571138a79352796c3d0b50a1a63f596270f51d55f9c0034841ed1e2daf0abde10b956b47a806364ce66b08c749e98c6d39a39900d5e05f6bc591de848bd3c66234ec83e7c946ac7d8d6a68cd6b0eebf790309568fdb4e4db5f2a46a066fe219c389395d1cfcbb9855d55a446306e1148c77de52f0598b903bd56ab5c2cbc68e7c0da7102f70b313701e5ee907923dc9fdd24ac8d5ba6a7bfd068c91b0f7dcb88835c912fad01c94bc0070c1c0f2e8458092458efd5642a6a38524802157c25e47f8f7b6fe739327c9dfcd3548b22ce00af29bc0b18a6d01450308d10c33b0218e92b9e0ca9d5d5347cdb158e4d41030c22cece938a0a583d41cccc4569500e765aacda1a4c302a3108253217a13021002eaa291b2f46e733ba4b5fff203377bf534c85af6b4ee484f606a54bc39a7e57d9da917dcd0b4e02e31338b0b01f5720fabb3c258125bde3c37e7d6e63f347b3b2e02102fe86989ec7d828a0726fa9c6d2a5afe0910053faa3942e8e2471850d1e4dffc92319368aea07c5551e920e9712697d577523595007bc3e9036e0b231921a0c2ae7a77b8235353f3a6e92d942c6856c591866ca1e1201cf44430cb57b6ca86e7b40a8c0dba25ed61655d67ad4caaf368fd83d2caf536be8bcf5b93d5180b3dac48423720397318655d14e37da973dd2647a4cb8bea8d360a3523e83ce232474ef7b4b954b50a101728b09d49b7b6402486ec7a5f1c86e4a518456a87cfeb2f300baa1d8cb703fdfdf85d5041e6ffda4190a5f6ec9663ad1e8f9ddc53849445bc2ca5b02df7ae7d8e31c7c1f3eae67ad43287b393d86a7c9ca3ec2a03541c00440ea754336d0bf14e1cae47109fd71fc24a9859540a5844b6b55af368137a6829aa71b6f7fd95a8eb763ecefff0cdbbd2d1f352653af11795aa25137fc1148d6060ef85bdd6de1129603bc87c06bcd5f21f4706a1859bdfe1f2ee2e33359bf5249f25e1563e51441eaaad72d862c4e6451b04507c9ca23be8914f4ed01239086d01b1813efa545ab1ff1d185b753f86f5f9c79923b3ea1e242b431fe5b56ac6b442614f54ba55ff4e46bd60dfae7f36390534ef666a4977dd25cf20445e15e2086e979431b0208bfb919c7157b2e59e1920deee698ef11ffde7b78a0680a09a911c84b375a506c2506fc32ea2ea705a9e26485ab194ad09b42c18b013419b371b8887c1d8435b9f24ddfa0ec07b63408bb0d7fd909c3c0aadb1c43fd5537111bf126d912ec789cdc6c1668d4649ee99731b3bba02000be9b337960500b18ac1418b2248f55d1a7f8837f3cbac0b8be430263cb16fd0a2ab728f399087472571d8653806dfddb1323912486a38885fb6c4d23e874a17f6754f1bb765c339be812858004ff5110410c05295e232b50f33372bf4875faed8f8fc40685e48cd92b5cfcd6981a9b43c676500e7fc8b99531f98bce0eff43eea41ad1fa35da502e3714db95c994239b548c167c2498b6ad12a41bd258c465ed705467010bf3a6d8589437d430bbb06a828882ffdf0f3a1200e7a7d02085761f89df68891a390d1d42309efa6cf73c3345fa29cc68b4b35343f1045c98daf7d88a443e1002a78a5bf5ed39973ebd4be8d84f5408503b8eedd0c66210ad4ee34d6cf8698e159b1452e55ce67611dc853ce27fe91e59283092bb60e791e6f1de5ca0b0cc15728ca045262c9b5317ac4e0b191c75f6bc1eed5459bf77c98e51d1eddd1f36e6a8b8f679d2510aa9dd012079464ac082503304f735f039128122b3010d96311b6090863e4845cc55afb884917f313400c924b81332c6c1581d64cc316a4a7b8d3590ff9b62600d7d76a4dabd1a42910ddb32caf5d964bd382cfe497c9651850ea5af87404df1d0d9d0f02c3f0b5d10ac2258f932166a9b20aca0a2a9f7c2a6b41c74047c0f54bd1175de32d9fb8eac74863a7552102c7b6afbf9ae5088ae654d085eb7ffe9d329cb4f527b759a587dfb3ebfb5fb0491b4a04b57b2a5bc18fb1e62b65a899ea8219f50ed814eb106864f1016e9362d87b93164c70575eb6eefd63723ff4fe99ea82292f7b9594cad5883c682d7de66f8c6175330e65a509c10a9fb7c067d818c8fc0b1aba2c423ebea40501a35c8ab99cbc984952d73ebef8478913de75a94b7f1f256201f50fca57a0b01763c885ca3b948c62d06c2b9347706e10e6a1b5073885982234aa82a5bb535635a88508bf57939814bf3223fe38c1a9774094a911fb8975e848a231ce4d66fcecf31081e4606c128e439403eef6a70573f22125822c580b41ea1a2f005bbb05d329b472a6f8261cf43e1a22074931e72fc5919e53b12eb404162da45bd2f0d6c2c10d485754017080eadbd1032721e53ad4dae9852fe82ba1cb0421bd9e6bebc2eff489ac9a4cc1cd3479ddea2e0b6b778a5b0cc6ca24248e7561d0eba88f9c8047a5e0bbb943e120a07d308837b10cee30668064cac7fac9a96e68f2c550e5573dfd4c068cd1d41dfc986be343f75e22b2bdea9ccedf7c6a0dc9d056888519a2eb096ea28b82b89170b8c76f9cc51474c66130956e8e2e323f9000615a2d3fb9f8692cf620c58311a04f12043428db93d8306c1489c2a5280ffdd41f52dc01c2398e656a2491e181e98a48e38bdeaf1719b35a226ea05ee16271f541362e466d7bf0b301e9d55707c9e7432019ad3fe7047dcff797d3a4178d2a1ba1f3ebd14c150371d8b5ee4247e4571ced0ba4e7793e0aaddef9859c11f8ca7ad8963ef5f60b66a9e3d2a6e8cc5a2e1f4b821174defd0ee860d498fb854a99237e2c640301497218606d2f47aa3cd9e2a618ad4f7cc8253d7c5d10aca82e4a6cbdf33c4e9ab7c8e3bdc3364d743cc123104be2027344c8c4d66404499c1880dec9ac3011c24a6bb41aa7add009db8deece425e70d5d391d11867ab375c5cd1e10753baa8887a75ed46fb67126832159a1f3a7b332bcbf66232244bc1fafaf9944964bd7568b551066ba47d3ec3cb251d3a2b070dc79fc39491ec8c35866c5eb80be8aba78cbf57ec4c201bc883cc14abff693048a3f5b611647bdb959dd0892c12db09730da8dc0d266b3bbaf13ed9051ae0119428a7a1c20a0ebf0dc71f5d02a22e6a5b1fb1e4c6238d20b8840b04901fe6ffd15577f31b8bfd18024025611d92c3cc1e1b7fdc8480628ad877d45304761c70e6ae3e48bdc8bb3c823efe729312bca0b92c0ce8a528a74d5057da9f974c5f1ce99d3b1c2b1a7ab3e12da8c3e0deb445d36a4ad4deacb31d97aa9c0f777590d021b228102245426a9f0aa66d100abbd4b6c7948319006458ae9612726258959044b84f5b85ada554206c0d9c00c40b5bfe15cc4fdafdb1c46aa72f5c47be01ff93c80c29ebea970a6b4960c10896722e799016195e50e26997dca2ceee03db898edf8081545ffcbcc7f34e5958cf88f895f2288b3b237f32cc52da4b687a8d9321ef0043699aa067ac730500c4a77fd4deb18d763755c9ea68b3438d3681fd47e1eaa829bdbda8ba9ce4cea6c40cb4879ce638e6a1a032fe59250ad2315668520bc24d7a15a19f1672b9d7c65cf5ed76988b5a64856865e066d173d5328d8eedc775d71f14001645aed3c56a7dbe7403ecac52cfffe47ae227c27e0744574ad30445759899a52bc40babc9b77ce930f8b18bde4feeb5cc0929d2bed4d33e60c53e2769c6df93097359551c146e340cd99d548fd55b5298014ee42d85c6503d799ba06b0afe5a00e0959c99a237e6081464979aed549bb894e4fdcf08a2702f97db391bcb37787307e818c6c0204ed459a28b81544be175ac5dbc6fd6b0c0afaa7a5180f5d25a182d2e6697728b4977c33a0abd6c5bfb0aaca3ec875aaf7e415024e3f109f3a53bc7cba74e88eae2ac1cad7efbb560b66b2800c2258a476b11a70f5a3cce93e36eb77c5c75a09dfe97c633a5d9e1dd43f4687d3a3d6c60b7925d6e545a3ed43187579a345644074738ea8a15c815a5e80bda7f31284bfc7439c06f4bfe504e5118ca3bc362ecc063a45d1a15f7f1d090363e25ae9e3a27ac26f196413adbf731aad50d40960d69207ddbe62e59a1b97811b6ae5349ce9c41aad34e56298d8cdd712b00cb58ca0a3fd577da15af828d5d347a1ce13be25b8a97d0eca283d2b0e7ce63295b1883d5b017befa5b3a61c7cef2783def8c0f65d80bb02664629562c1742fcf61437ac406267a12b9be0b32ceea4f0bd9d0b71113a90be08c3696b66e0c21fdf180b5cc32f8326c4474d00ad708f8216b5735af3c86e328921bda3ef10dc39119d900d879268c4a5204c6e8c3af35e9a57cbdbec908b74c7315600323569f20c4f04d938e297eed83631b2e2332208d791bf4ff4bb6758259daec6edb46d1e13ea32de78adf5fd34778b229bdfae8c8904e708031fd5fc88a0ec15d0e0834fd20ed44b9b9db1859e6fcab29d9100e0709fd58ece43063c8a1890f233b4c7c4bc239df6ac2f23a0e2d230a33fd9eefe616ca5d2c928730b16001efa7ab0028db836b90b2a8d1ee607028dbf321f771532cf8263ff48f84e5c8ecd4eae90562ec6f23fcfd82b9063d379ab467b3f17929fabbc8a1553683d57a64a64faa2585ead53184bd5afa1767b3563a0e2bb7bc3917f50fc4a685a7db407558ca683c9c769027b83b59bd8b0fc7f36569ee2ddd9cddc638024fe57c59b2fc87eebab9860d8b49bb51b27a7722c42b4579f3e6433748ccc222e021b1531a82ffb7accff71860144e746476616ce53b36bf6c5d3fe44ca2d84b31f21cd01cb87af09ff5561c657ae1b6c8c9bdced7b54590dd2c802caf9b7a3b26a77550fc19339094475c2fc9bcc784b4ed497158ab9ff2b0c7fbe80fd098730779614c50796a00a03f7cec317a9e8bbb33881d686a9830c5f6dfba5bc7d419a6e66d9e6d9a059751818621b838be7b3cf247bb404fc99215e39776a909cdddaf3c91d4800273f8009d2259292db2f4ed2c9a6940a93812cbdb5e15c72865d088f990d51a364bbbe15b1a0d9d4ba416d810d29587ea1d4a3b1f0016ad6668509f93527aa8e2b5c1be97fe8550e05052f43b6901100ac4caf7692706e666027c971917d6cffce11d165ae1c1520cae64f62fd09c4141bb9d7e70db6bead9d6f73f6cc800653c5a18c0a4e930f8dca8bb7b9ca13482281884e7862a76560dbbf9ce4fce0cd1347ad9f460be300ce08470303b48484be751b9dc90408c224735cccaf0161dda2090e0ceb56383019a795ae0992e49864b18529289ae5dabd9415b13a17c0a8717fb84b83f9cc658c496ce633fddb9dded7d6f05f69d624089d9f86cc100b565991aeef9894b28addad7035fb948208354f57fc2cede383f0e9d30863c941e8f7696ad89839cb42abfdcb6164aa1311d5809f15e6f4217c7890a58e41d144dcfeef26c148067b79003870989cb1c75b65fda717244563285c1ba789b8074989cbd8dadbb01a56951b93e36d692f181c53c8282243e76d724939936889e978a7854aa433eafe49470d8649d563d8504318b4808d83805cbb5b08dda8c341e8adae03d1d18c6cb216cb8d517b4932545b4496f71f38f91710145ebbf57c8aa836408df887bd8b45e1198329b38e091a7fb6a92cc60e71a2ed9c6b4cf00cca65b0e815111512e8d27bc8e5b0401161624fe306b9fd15d2290e3c24a690d85b244502d807ad062bab51df6ec1c1f5da14d6aa9e37da4567832f718bbc88e6b5609d921ef48f73579f77cbbf1d3e2f0178def5129c8b0ec602d1e670ee1b57afd40d202466996c3e5ff460b72ea43d37d8bdf407dbcd08a714baad19a93057b60a24603c1091e6855a6411de40086ae1bfb066d0847257c5fc423b77ee3f07deb6b6283a76ae468a7cb68d5a21ffe958f7680160f6ce33ab5cb3b24efe7221c5e079934af8f4c999d3d6db4ea304d6d5cf1bb04e8fb7dd5580c3c073fbfceb73e12137933fbec510f24674e9ce6d134988e92dccce8d861fe87a373e2301b71a9ecdc2f7874021db83ed48256da7e0533deb1d6c5787f7e8eb0f799f04224219120fbe042429c3018bcb1e41ca371ab4d4029b7c451e544219ae7e0883df4f680c11222e7c1d2819b447f55bf4b9538bb70812aa17c69ca3501ddde7772379ee97bb3ec911bbaf21d7e2776c6d3b2d9745a6d064b65de93a9d6ed7527ffc695b0f1db675c24da2fe735b81e7a7037612894df36291fb3c7819b1ae2fcad6ddc10f19e6181e4f0792a0597162920020f3fc1f19baa304189351fc75c938d152528042d63b2bcd0aeb0aae0de3f870c67988493fed88db098360a23131a98fd379c58753c7f9835e9b1c38d37e261a4e680cb1f16b7e10b64946210e6035302c4390ef4bfcb728e8db9055e7083b85f470018f9de07337d043a9d910c7d17b5a2c579d5659e0188b1250c035980832056ef8630ac8a21d2f6421b42126aca6cce8eb2f9c359c823c57349e3b15aeea8a019f8ffea47628d565360051a55ec45448f5765565290edcaf5edce5542eb8875dee421cea423ed6b2db589f8e803970ed29f2dbb09ebfe2b3f561d0901de014ea3be093b161461651f3b28eb7875fa4e95de7c66a5e3c187898161356e2863a47bb9707c89b6ed9997a6f04e2fe6214fa1c8029d5c8e36c7fb3ae1533a2fb462b8652f19d6e7d1f40a0bd5cc0aa8b922e42422b6ea1dab0b7910ed684efb06bfe32724cda31327279ceacb7759994f10d8046e0a32355995a567b322d14866fca65c085af484eaddfb7078ca67df5299e5dcbf4d10120b3807d9bc8bb64fbeb8a06fe62118110d76c458c200496a19d0c62c3226e2c67f3eca15684ee3c87a70c304c46f21c7b6f6396a8448d7429ae74dc564f50880c7b63f0512881301459b0e975bb5859958ed6f23d177743205470095fde6680c5717d0cfde70d4f69da4ae063252f36e3e13f6616d02f1e6c7402b66d3b8cb257b4f21804507fe8887f4fda5e26c11476aac11a8aa1ef1e629d739a549dd2c3077e29276e6825fa33528487b9504eb560dc17a1464db76767b509ac99ebdc30ff2a97ef6b75998f072183df7f93ebe8c43e2696f597808a8cb18ec6ad164b3e38e39202757d170b524d8f53cc88e4992ac87a5c5d169b70ed852a4c957fd0955ad1857e82b5551211bd14d05864b2718034dd0cf3fccce12b34141d961c6386b8fae306e3f1032ace9475769c2999b167c302c4572c3fc39fd703c4d746d8888187d18774b20c12c0102fb6594abac35023cb482abe2d8cf6612cf0c07536a77c450acd32381a573145414f433c9160a4b78f6fc0cfee4392aad2c031fe4a101988d3307a3160551ab48ebf7a3c80d55ff6c9f784c6e3b71b03138392c2bed2f0334d05d02e5a1a2b3f2ed06549f995067a15efb7d87eabb5f9ed97a4a2119edec44d8cf31bd9e1fbc26a1cf941c9c92cfa4102b51f6b3564875d4352bc559d39c81978aa99b3b34f231eca6e819b76025f367e095c60ed90ee85d743a03ad9419502cd2b98318aa42615398d702f4bcc1f0e66e8e19e344cc9373bf80d30c594853c5b82616ad21867db695d46cc631767b2e2237e5631c4813b60d9e5c7fcdcd33511141501642f8c6492ab1927293a785600d7829ea78821f72abadefe229826de5e22efdcf523a71fa159f0c176ddb61359e113b8fa8a98e635158d5b2127e139b82fceb87b46f11c1646148c3b28993f30a9a3ea2115bddc1b0bb85e8c3456a6f827bca6275e64d4fbcff08769c13d99d307b02e188b1028d90aba53c4d6283872a4df1511499a896c853b79d9bd3c4da6a850f4f2ee927e3dcd3e3c3b954e2321c99a0ea02e2b7d8a44d3362fabd5f3c67a4a45037ab542038bfe8ec6b9a75cf157c0e5ef96af31cb92193ee6744699a7fb9964a0f01074405feb0c38d000672c4903ca088d7d4845ebf068cf8861f5c5311a930e552258a5297a465958cc257d5ca4c1740ed6c4551e15143837b8eaa538e91007072588d6a0db06b63bcfc8358a9cf4261ec0f9db96639349d6ad48d8c3454df4cfe814b6dadcfedaca7187a69c40b7ad145a636c867a39a2b50582cac3e44ceea852e67fb94e4a0f5cecb51528a96daff8fc82616e4b0e79565c10e670341f98e4ae4737ce83ae56ca78e77213050d66c64792de48529324ab9ca64f0473f3a6216f277c21f9711fdab2e814fb1aa39802d217055de4a1ed47ebbb4e04d20d4fd1b9256a726c1b45cc12fe377509143dd139a611bf871b470531b501e2ca4487e383d828290618b879e4363f03e7e908863527102d48bbcb7b9f502c282bcdfd043767d0e4d9be316c71106ed111913c6b1c8a318a898ef3de5867ae7166eb495061747ab0067739a732c66944a6f4d1b59cd56d4c209f356ba79b985be8be30c6b61cb91cf7fef1bd794844e744c0148e30a55ee91dc303076f4247be893f725ac75990715f1f1be263a5e65780e4902e4dd7d99c5532486615bf470963407a51897b5cc9c9a9b11dfc8ec398660d0678aaacc605144640de978344524c0e0ef2e5d075002f5948a4e25eed61f438c7fc3915bbf13f674a54ae932dc514500273dfe8466639a10bc6f9e2d1fbcca35a653a3e27c72ded823af65076a83495ca27723ce905f830d15c897ccb1429ebba36c08c4e40f5e94fb67663bce3e3cfe27bafd608497cffe2adbfcc9739fd034ffe8abcea66d9ae9812bdfdb42f1a42b08da30c06db85673b3ddb218494b421cc40eb27dab12687118322d3d4df4a0c8847e27d22374410a1f1925a58699ffaa9246225df4591c7b364caf17c6c49ff6887f31a162fec9b66417c23999e0bdbc707b574bf3b666e310112b480d64ccced5ca1aafd63288d3592bb8356be466ba72aa507b12af6b643a0a86fc480f79188e201a3d4bc646017546e6acc52cddb2f246a63e4a3e7084c8ad21f57c840cad1b0db09466d026edce01b270685f607459507a237e18f2484028275d3cdbe9b4735458b7d1b79388e3d47def524ca0ef8b8f5a4dcad6c00e897b46b1e1360802ac57a1df5960f6dd6df900fe3b4cb4a58913534a4cf02700adddfe8012afbd329d867c8c5afd3f7e961465ec86b2482c6b9c09eeeb442fff64fd98c56d980d5888bde8fae3cbed1aaecf017b5307b998aa44beeb0445a7e668b4c9ac03e0769d5425c18e3a0f4ac61fcbf2df2a34c24ca9438986617aa951806c91cfaa09e00ee19ca12426e127ec70b33e6032a63a32a6f39b9684626d7d33805040e3af1f5f22919b0e8ed1bd414b8577a7b318b084f18f7462277b1445c46d22a2ffe314a0731a098a97f0673c48429bd485fa6917c1db62202d0a503e5640f4c8071fe2037e73847df046e5a3bb97001c8319898c0435ed17d8d1a4cac21030abaea29ff12c13f15cb9968c0080e28b47c1b5a72be09efc83e011487fae524a6cc51c3fb66c678e30045d1591119d37f931415e7db8b6246d1129cbc45af4fb50740a3dc16a87f33b4d0aab2797a55b703d370c84e39ae2d2e10c098be5e6621572d8e0c409c3f28f364c382ee17fbe20d955cf261f8e49f6bd8fe6c17685936c8238c5f2a155f6438f90faa755be46a9a912687b5c01371ad0a33332b792df49ba9b3422ba5e2202573cb278aced7cd15ae9f35abffb3fbaa6f37b44cb5ce973f4f8d2fbde99c657123facbf7d9d0cd13a794fe066c55e7b47474f20a04a28e1bda4e54149e1d72701ae0efc686e26e4834e8f6fac0a26433be276b8e2afe0144ef63bbfd36e1b8295c0a74769526715b3fe8e7f9da0ccfdb7a73d504eef157d40c90c7931f74504d3d38b4ebc9fa17b46933ca5a7097cc6de1c17c63c8fda0a8f67938d9d7e2dc3e2491330caf3712a204a1017026bdf648b4eee39a74cae5351c846308234e89c125ea79e5c893d51e088e6fca5ae89cb190b90d5b17467ce87f0d0962afb62e3de4f6b59c17466b79f6c5d2e45f100fcdc2f79c3e9c3c03d6ed3eed96f2273a01aa90fb3c357d392842725789a56395dcb252ab8f3e98cc9a1009723f13e76b78357980237d015b5b06b657715c6088b72e42b7b7e5d3731d534b6ea916e597b7fe11122c2d4e4e45399bf4749569eeb7d2c4559a8e3e65d82e49ea4137e23be387e198145d3c7fa097c87d787f7ed6f4a8e80a34e200e0fba6132ee2b2aa975744ce518033873f789583a32f02db9cadab4d25768ea0ffc6148a4e7dffa28e28d3807b8d33f43c2c62ed0151d37e08489bd894797f4c0163b29873a36b17c3316dc87e96bf92f0961317b848a2a6828faffcb49faa67eebd76f27627efa2a3b0eda6fc25a504e14ad2cd5c1b00796b71a15d0d4d96ecbaaa914f337ef5e249fc1ac6ab41258b86069b0dde8ee70b335a2318533e0641363f3fbd0a4afcca664092052071253053be45fc99706434c52678398939cbae04bce39ebb8a8c13df39f18c11ade48b523535c6fafc26ee53eeaca426c8ddcc573faa5b5901ae002d6c04fefd06929c2bc227ef7a648c874ee4646a49904079bdaffe6ce13b30af674adcf38b703ef2f48abe976537f8adf37f099d4990809b8f525c03302c53bcd3a6a7bd641ca415260e4c06b5cfa6e918dd68b5898f840509bb566b4b46f9e28f55d1adc0ad5b59a2ae471f7b5693c12fb4315399c480626acd7c0c8aecbd94c1710ec3218e10f200e30d1c42bd4c780f1f44f61f70efa52b12603301d6cccc6cd615256ab9ad4a95873e390b61b7eca8fbd1f684d0af17962359a909cd248ac9a98efaf825d3c733f72665e1d6bd7691a178d1018416a0723f463e56378996194e90496c8090d6796e8957468e04e77eaa38c83f32810a08f249b8c4403f8a22d2107ce751a6885d52206650bf4662400b6188e2003665be9b4aec40e8264c9552f83f5e8f76c571206dff70c51e44d14bb9fd78e6cd488aac2704181421ed758828c84cd8163e8a3e276d2780a428e3f9a2b8016ac77e9945971069d5003422f3f7f24018e88f74ca9f73a8ac4030290084e87100e2a0796b7f084bc97292d82d52dd49b5abb3ee36b01f932ee1b710b59ae7d820d593015775e7843948170bbd29020ba16053818eb8ed96e0b9fbb97e13d601a2d7a96a241a1b6a479c227c6acab532c39f09b31418b9949ae660ea93243018ea75eb6374f0af7e43448d64e76d0214a62f7234e4608d015f47433ca5fe97029034b1098219a87d54a6ae4669f11d644ec82064eeaf0f79b0bdb0686888eeeb6c1c90447ff9c16b027019fc36147c6d12e9550c44380b18c3414c8694ed43521ecef510531f4e3247000630eb7f5bf1cb02250bd91b14c75a024934947db9b819076ae682b60367ba7d55a4f32e5472c3f7c9f79350cb0880583525e7a8c5067bf9128ae38ad8ec2947ae684000d88df60b28c9c6ecb5a5f9db56034c91c2e0ae4e4edb6d19e6ba31bc125589da11eb7ba671b5c5cba03ef8b86237a98037f11a4879ab7bb5ec534dbf5b2a717e7e9a95c9d61b0dad6cf2ec47c32f88b229ec23407872076dcbc53da95a30d5dc8bd53a8df394a5fb1d2286039723c0fbce26f0685974459ed516d324b47eb472001dc968c5e65e45ef8a3c27bcc9efdba700edd9b2398c07b791ba2940684dad9928e35f6a4147d73ff8fdf7a2e4ce2fe94cd8281f34fbcb19ec83d18d50667390fdd16223f24e8a5d8202291499c9c8bc17b743d06a3c4ed27a0093f2e6a4a8e46370d576f37c6a54153f8c8c35421a56a3cc4546745cf7b2c327a7385dafc2a2c92d85991ab8434c02de2b493a368b460f51c408d53406641d0a1555108055c716c55025504c286a92308766487c14781630d7855c3531f9c7cbe8afe95dad1ae59dfc07721db631e59818e51ff669babad6f9ca9dfcbd94e1fdd1b19470a5071bc0258a1e0b3e84a7ddd88cf8732ef70850aac4c3aafe09e6dc32c1df64737cfbff115539b3812c8312fcf5e93cdc1985791fbce0d8cf8474ce63a181a22eac7dabb0e6a7b0454f2f56d2db18471f6aa82e838814d86cd82c2ea928dc71d33592d0156da1d5a9b35cf4bbaa6e1d2382a9ba7b5c49f1a86abaebaea74001f84023c4d278f97cecc664822a304c6b350617b4afb08b4635394c0f3df9734b13d06519e1a3c54bc75fdbaa02b7d6ee664d22f2f9b970340cfec6ded1282f60f95f29436649db2d6d2b149618a081ce7d7d28304e97952986ee42c51862245aa20c11d751b5cd05c58c6043ffd1ccf3013ea8c9c9081a0980fb5713823883f67af280b6149b3f216e3be96bd5d5109d969d437fb5dbd8e91af1349a6319b76714d382d6a78c8c8415e1739b4e60d6158978170f9266dd0cd2bbf9d7e2226f318fe81472b66ad11ae0ab732a350b7f3770076c3c36432e46a4b1471b281c5c7eafc30e6a98bd8a4bcb0c3939998259a4f27049694cb614d364b6d5f581c68762243ec10f3909ac80124e6b5b920cb91b868958c56040a1e2b932e72d0fbb7be7ceadb1a2995c505a1f18662e57d176a6e69295363b1bdb7b75225b7c18cca49e5ba1cdf4ff60b203a7e541661f4149e70d4456bb1bbbac028f5f27a57a4bad364dda954c6eb7b8184a923a924c0c9d9d498e60d83fff7e00d36e31d42e52e8d8f46ffba8aef637ab4cfc5a2c9f4eeea05c6599c882a524ff7ef80eb7a5b84d6ddc4adf5571dfdadeece0db13c6e0462c2cfeac2fa10288300894ee4d40c246a87fb87856d99136a1e7adcc4a80b328efc96e268b259383936df0bfc1dbedae43ae9c14aea3641f9327af9cede1e77810a1c20c07c8079666ea233ec6dcf406a625a7edaf99ec41381f2394c8b1972a38614fbf013917facaf52c390492b9442a345362012e4fc0d718f11cded67c4f1714e79a494095c6d67f26031be781d16959220194255b1cd2d8f8602a5d112aacfab43f109e6fe6c912f84e768aca857ee7d3be99ffef08113a3763891b6a67b9a8061cc9258a948432b1783788af9c39ba04e8e0c16dadea58e72365b863835464df20bb2b82d91142a67f14241f8e2cb7cc91a7e457a27a5379279c9d12db0686fc7cf692d2f3a761bea5f65ad9f9beb5fcb0986fc3f33722bf5d765449049a02eb9558301a16a503ea8fd9524bb157ee2630ef64a645fbe13f26850b32271dadd90525566a696dbfb056378bb902c80867dc401060657f824c0d3a80e98253a376d8e2d9904cbddb2e8f3332892163b39290bdf7de524a29654a291d09f60842095877373ffc1829d468b8e922742290acbfb5d23c48ef6f5e3b11604f7d4f030d0cbe048c9987f3d61772576ea9005bd37b0f5ea6dafbfee208c97988e96da4293df4a486857ac4e48089b9edc2bc79d3e6ecb5dfbc8e519a4441ea84dcce922316d678a86f597c296b51a824193a4b7a19a77686f4914449b02fc68ea29f790aaaa8ed86986eadafcdd0676ae18b22bf8e522c4f2b7dd66628e987986e7dfa24329a5ca67299c99423b73552bc2b1b5637beaed18f5a05e4a58fb16c392c1fc4ab58ac12fa2fd41f3da66933a36c34aa56c8edea0f31ddd1cb78152d2e3349038a0b7399491a3817b3b2baf18d5ab5da0cf2d2778df4741b6d27fa7de9b36c276a339514a3661969eb5b4958dd469b45796a0fb71b3d954fd2462ddc72e3a536738e7d553b7ae563f2b37abd6b33f469e6a8eca56c31390a7bd2635867d8675bfd5a5f06bed5d6a7f5e957fa2bd6d66597b452b5676df4327e7347db90ec6ad85bec9cc9517c2576cdb7ac87d4a256669e09c183cc89b9470cf32db31d2d9259af651636af69d1e9de4a3076d1bea85f336dfb41fb51966923ad46b3da67db65b52cd334984382b0fd46f3020689715a105a16dc2e08aff9998cbf7371c6e5c62631155b60e2b23603c9f287058c5d6416b5abf76b6340d6388a00f7070d52a84091cd34cc170f110ce0f25308f426027aa5a5c139679e618797badefdb188795c117a613146ec2f8afdf5fe4eafc7bee95b7f03bde17accc63c1a14c1ded23e7b7fa276bc2aa2e447f6da17b1685eaa48f6daa9ff07f6d6ffd04e6d6bc0defa1b6ed06c8da58942ed629c551cccebecdae806f352d8fba9c646c90ffad7db602f6d3bfae34d515dd6c6b2d452981929a5942b9a3965cc211dfb829921430821cce1f2a425f26e7c2fc6156c08199a4c52ca9cdad1f872f3db26d3504c4388bb297dd97bfd7cc4d63aa2720f7d7df4edd3fb205aa5e4d919fc36a414c27e4b383237778c3142a19a4c26bfda8c8993447477ecc81cc74c1bc6995c7fc0f56713167c092fc618a3aae3e6b7350e672e61323dcd0f171c314eb81d26eda7e48841450336092052c9270613b7335d266140c131e6f4bd2ca9dfa6dbb6e3fc9a4c5428c6d8b18130b3a68490737c1bcec02a37c22060a4d46512308f388e3202b580459028e6c021d8c5f587afdbf41e3ea351844693ab451429f5b68ac9aaa5e096cda6c69bbeb4d9d8f81b42cef983f2b498a5ed87d2b7949e5b4a1f63a9f4bdc1d27bb034bfb4c10d8d281c7099c91954aebc7373f2a2903e328969a337b63a44752d9cebc7f370933e36b61a52a73e1da17ea24226742abe3f5c02f3b83e0c13174530163de1fa478150aca87fbbd9337b66cf4b95be9234abf45d4b277350573e2b6db2e7bdb41d82b68ba1514854641429c5514072c851b287c5aef4b8c9f44fb21d37b21d0785606e4ccced640f142f6a2c7a2959ad2fbafe183f611dfed7069d30f452d08aee20195ab87e855b6114ded642ce49513bd973fd658f44e211d07955c93a7ce29c4321e7783074cfa8720aace38c2eec652667ac62f802c9f3299a729fcf4b4121a1337ece80e289d26be1a8f74fe8bcaaf4fdf132932126172b6d328abf94dacaa1b65754e6815d1e7edd8c2797999871e47650c88c282e147a29390485a0bb9c02ebf02b8758876ba17650084e9143a7f91ce5f67750a828caeda010932226ae3f7ce270288a8c82c196ad55a58d5533f32a150a751224edd33d7d248873eef089a35e13e7a094ebdfbebabe04c208638cf18789da7992eb5fe46f093974fd9f0fa5e2c3412108c5ff7d1cf53e08de5af0bc94377127d7ffe9bc940325e95a48c885a84edd31f10809bdf758478c73ee50080abd8733810c4084261cc730f6cca2be8f7ea30cbdf71e377d6f5e515798ba6fd757dedae6d6ba0aa543b305dccdf5ed26f1db72b00e1dfce2dfc3012f0ba031a467b99642d4f71c47a50db0981819213dc00085bb583d898979598cb1371ee095f479aff4732f6552e2c789eadf99e465a0349edc8e57fe3fe5764c4c539c1863c78602e5ff91c0d885a5300bd98107490f435a8789226e2942bab5dbdddd0d01ab9a6ac0c22464809a19661d4f88fbcb411f94dac1c0c0c4db5284741918bbf4a99b00b78fe0c081a236c2523a3210e68e1c638cb16fbcd475daddb87ea395c9a2f6e507849d40b15d8edb30c6182310292311c7c100c161470ed622e63a37e1388e5b472f7feafae63029edfa4b206a8473cec97173c68ddb6088261218012e0c9ea2432d9e35e46ebfd0bb99f23704f8a5dcc46d3b98876fbad13922d132918e3146ea28d6c14d2880c89f7f437c688bc08f30be64954976b777c3f4037929485f7bf7fc93bffc1b15b427b635b4caf44e6e4f35c097ff03beb4364adedb4c7bf267d50ff8f2a5b589f6e4b6865631b4ff5ef86f54323e0459d5cfb6087ff3b73dc186a68fa69a3ec16715d3f7f25e7ceafbb35dcde9e77f40685e3133cbc4c070d8737d2f50e02cd420083bb0c1098a500534a2d809c28c289c8851d8c00408f8210b58f000882ca081c619513011a38801103d6e8af04111bc300285152019a3cd10a3a56801c39c99d92f534771b30e6e3844f33f19b4e7310a980b841042af0d6950fb990afe625cb05e688df95f2abe3ff30b7c18e57befc9f7e083efcd28a517d10b18df9b59f6de834fa8ed833e8a038c5de28565fd3fd30cff3fd3469795912ad5c2d442edefea0ca4a49a719399e6017a8f7358f4406f86de3814495da2f216548878ef6d715dc63d89a94eda444a29a5651de050221f28c4f3315529887076be308305b5c665265f44515287be80f2854e16edef41d8fe208c113affd4ce07354ae91d472ecef1bb40efe74770ef6e0861430bdd1fedeeee6608639432eb4969cfd1eba2e7bec7fa4199f69309088432ed279373efc4281fccbda7716e12279c534e0921843e68a0b7f48143d82f8e389a68500998ef3c4c06c7291dfae53db74e57a18784385705466d0088738f1b32f436c0a8a682b9d74045432ca5a8c88775bcb76e8cefc1ad69d0c33ade77741e87b25b423805ee21abeb21eeae87a4a81dbdf1a76652768c23762eeaf460fdb4191e9ea1211f1a72776738e79c306e2e0d016e05c4ef0a70f96da3a8733c20aac4dcfb0e07aa3af7509c97183501e6decb38f7feb23496a5395a01ef258d274ae7fb23c07def2b473df1141d722452843a077214537104d1f59f11145420a182dbb913f7e93c8afb9ece780374ce09e78c3f658c32c6e7839efddd866915e82dc68edd36a32ff4d600e31258d6cf7ff023c358dff3cf6e6a3ee45b4fb519a83643217d164e5b2d642ee44bcdc7fbf9d37631c619a2cd9e125c5cc480d00592413b457a9acaa9ee8049a9bfd067f911fbfe1dda68a45108238411ce8cb451a7f329fd69a973d43e3b63d9180d5ab853fb9d373ae79c1db5a865bb1dee6573a06f5918b410351fec726c2e1489105461280645ac808a0d7e70206c601bc6e8322cd0e23345951554910413aec8b1816d60a203269c10c20d8c18e3073f01e5af16885287c0b91ca4b3a4009783748edc2144eeb40708691dc253dafddfeb320ed2dd383aee807e4b09b5ebef268e7a59d4ae71baed15d5ff21dc78e82793c04ad0bff2424471577e345de361061b3dc3e781279705c9ed9f41421cb9994de520219adcd2fb6356c69a0c0c7449b68397f4d8685b793884fa5e463ecb5c418ddff759b2d84cf3d133947ec576a32f3d6b3325d24b127c6d834daafc97814176ece42fddfe96bea32ba4d1e8a93633a27565926c67ba5366fed466a65681f896965919b2d764a87744922bb61b72575a6420d2556ee9a7560116ed651e69f4fc2b5b0e235be743cd47fffcd2367a9957e9769a3686ecb5e77b4929e5d6f963dfb23dcd47f6da635a363252e5e7e05fface79f4f259beb4b2fda594447ae6a7cd9046dbdf95af40fc1175d46834caa9a3917f8b0f7fed4732d0d30cdaafbc561fd3664abfb275251b03b30ed233eb18fd0acb561feb6ce53403e9b31fb5dc919d4ce964a24c052ece357cefa5ded715937bbb23111486914bba1c44e4e487293f5484c1731170990a222a39393faeed98f6c91946ee19512e5351d4c5edfae7f6c75ca6a22807b7b5192d4ae50b6132e7a80654e5d7976a158e6b9b17b3d765612dceb58936bf5185a9fd7f7d5fd6659ba747b342e51be38604c88a1fa25c0efae1090fe172d00f46ee09a89ca08bcb4127d0a2df53703908c7c9c5589bd1c4a8fe18491ba33a851056cbb2ea97eab3544b73b930d6f7b8d6b7b1d88e324ba9446f5c7919b738f8a9cb95efaded599665591df6cc2cdaf336c4d4bfe580d9b105c1611bb2430f3ed8348e73ede244ed0bf9baf51b16bf84d0104208a7c03431bcbbe345a9f57cad8fd1b29e6ed25adb9cd29adb7bebc586fdbca93b149836450ba3f2e53939f735157e4d0a951d273675027d52a1735a76a40175c9ca6b9b2f71a0cd9b6cfee3cfe34b9c47b31dbd6c57472b735a3fa7c6f3bae6949a0c7ea9f51fd611ffb5873dfa34fa395cdff09b25d336f8d9b6f29260ecd86a5aea4eaad52be7b1ea77126a6b6df611c5e8d6b7a538d7c54c27712e4689da67353ae9cb595810181cc535e75cd4a6ed9d22d4ce7f60c0ae0cb2b03c3f337d94459bb1a87d42e755f46d1cd5b6eb9c1bdfc5b9f8496cb020260ceb6cda77521b064775ff38173b0efacfdb78802beef2cde1a9dec9eccfce92187ba777781c05513e6def38a72da93cdd47e885c51d2faaf49f1a8f702fd547b41237fed531b8f1ada601d73b7248f31628601a19153eb33001a116ea7b08df0b3149a3276555cb36977fa96a396dce49d26898a49f73e2d034a2ea4fb228a575fba1fe0a89549f6ffd2cabb63e69abdb68a4fd5f5fb52ba318bd2c3a9160ec92d595d133ff685bd9de39ebe94bb158eebd586fd90846ed62e6935cb8161aaca771d4ca5bcfb97c8ba3fc2deb71384a6a60acb06c3fb07c696585a5c4f2a3110bcbaf6c24cbb2b2c2c2e262d91c58c8477e7cf321776194507eb4ac8c730f861554ffbed3c6c0d0cc26b5e2206488f7f0deece057e78890ae7c93a9a342854f04f0ca3727f7b0a7ff9ec6a2d6654f16dd38ceb937af50f99f36f3cf5a943ea2c38f1afcf786a8a8391f0c8e8af383384abe23f56acb8aa09c231042284685efbde7f00c8c5d227c6cfb01fb8c197bceb08f11c39eb7b68cd9fe89b1a3e645e5cbc3c3c313797ac5c3c3d3ab15d0921f0cf67d5adb965bfff0b8261f08be182ddb403fcec1ae7fe6ab4f6a33dd403f2fd52af82d2d0c517dbf7222341f7e6be1a86841ea6c6a2a57beead5ebea3dcd847370e654fa7e2de81c43b9d1c217ead5921a5f720ead5b0ec23a46383512919c10846324c6071d4218fdc518638c11c6f831c618638c1fb550e14718391e7a9409d5c53166005fa032156320b94ce56233a33d3c957d10afca463fa8167c6c5a96659fc8a85cd85fda8c5bda8cd518d6dacc35733dbddef5b0b7361c840cd1827851fbe9f3957f6933d65bd6b3de48a3799f43fffcd7f329106be3803643bbc6d4388a6b9e25f362b02b8b8989994a1072bbf9434cd7b2e6b4ec133aafca2c5bcfe5a85d70d1859e39fdd6da522743180e8e6221d42ea6fb5ef8dd636ef0bda84330a671ae2a30ad8adad59b61520a153690a6857afdc36a8b37865d11424831eca214db2cdb6d96fccc9214baf0c31d3891c156d6f13e72b1c9c0173ad00f18f6bdc16e53c36e26d4251d63eca2c27f1036675d741ad01b3e08e10c20841062e14230cc08c23aa07d424948fd98395a88614d5fea0110c6e0f02317f53de7700e6a59a89c0e465bb06a51ce39fa75cbe11c85792ff4e9c52ccbb22cebdd6ad197711c7ca01fc451d6d317e2287ffa3b384a7e0e2a3038382efd36d2f1944be9cb584fadef28b5a8451f260787e35dac4dbb42cd9ca3ffbebea6855a2dc5aeebca56b61f569ec5b27260d96c6e542ba3c7b095b73692b5bed69779d6465aa95bf62b1b69ebe8cdae7fe72ecc762ef7f21110eaf3d73b930518d325d413333fe7bcbd7077f776772d307694dfee6efbde63776f6623524ade6ef400c7f77b13bb6b80b14b479bc739e83d50c84bc9876630857ec485d076b027eabc972779a214352e8940302eb9ef6104ba2ffe385781bf7047f240c679df49f71d471d711437dd814d628082412953763a0e1a62c975db833b0f18fb833ee5f6ed1ba49373a5b416060911e5b6b38f70d03e0309bb601c1f7ace7ddf5dd405515194a12750869cac9600adee8b028a18903414ce44f3f073e5cc396865dc78e283b677b23672fd85604cfd5c1320804c54a8dcaee5ba09b066e626d2551e132a3e563021732730d84383bb3b8dbbbbc3e0ceccdf7fe3ed464066a6ccccccccccccccccccec128899fbd99fdd2dbb07b9f1db7aaed0769665d196dc4364bfe23233101804f40f27b73f4aa7c8f2d89f7eb03cf62c961fb3a7686d60d58acdc9a9d747f83134a44d48067f042184356ea26b47e8892e6d04d55100fc7bab003c8eef586828c614808d3e0036eb716c36feb4d57817b6176e6c276822612fe301d8587563e7a57c782faf777860a4e5fe7b077b1efad7df603d668bd8224a7e606fd91317b99eda13ff561f7c37e402606018b0006961606ed0abf41dafaa857d4b8ae5c264bc617372e8dbf81ceb6b5c97c42cfdeb7fd0f93636ecac61e18d4a494dfd166a3dcbf52bd5e6e4606f7dcee873b2cfb9fec8fb6ba3016269ef491bbfa782792f8fa777606edc44c79c502271384754634783bc148e7f3e30dd0380efea0bdf31d1e9064371e101b0618f63d3feb4b5fc0b5b8dbf417a17ea9b56beb4b1fce8651c001bab706cac3a6dac7a6163950b1bab6e9836566130ef3dcc8bf6db9a6046cfaaf7312f75623b7aed335b44c98fd16b9a3d31ab36a69bed2a941ad36780753c96172e5fb7634969a05f5e0658c78b1608eb107a292536bc54a68d7838f90d4f0cd5e8e46f03ab4c3627a7e5b1cfa9f15a7442edef3fb9adc96cb43ff8dad894d4941eebac9a4c0d01d7b9cf643ad564f686270606b3c6b096c7b41aafc50b35223efaca87da8c3fd46ab2df01e4bd20d9dac7b917036369178675bc8fa71ab0cffe06ed6d3c6b35a37f406c643534574dce8b3cd59c7cf4d92bf1b7e1e7f6c78dcfe8dff81b55dce0a52f357a4a5fdb8ad878edb1ad8892f945b2c7fedae8969d6a30fde87f987e64b2f4a3fd31fa1bd6c6c68f2cbf971ab2c7fe4766b1eca7fd61c3f27b91962df66e8d4dfb96ed54b239392c9f533f67f4d9e7ac7c0ee973b4c79e55a3dfb105792fefb56d876d65ab3a2ad2c6aad1c62a20a51beaa420ac09ad0477f78e6e639c7bafaf783d86602111a28c504688041a5ead566c84989899ad7ce52ba771e668de7bbf62e98497a2b4d615643a6a1c001c11948227147039a888a2cb7239a8882ba441743152e6a87983bc977e2932ef8581b41a56824043078b9c25470ca18216e6bd340a2e8c91db9988b81d8782dbc50c713b5ee9dcce85b8411c816787094553e0c114aa204060850b564350b822491154fdff52374f8c3144182f587284243aaa0e306101175328e184890c544a48020b413899228612a6a866825a1046195e00410a3d50f50779a91b248400021333b230c51164a89ae8caf80b1c66525a25f167fa61313e77203cc5a3e10b7cd741d52c95cff3a4c993698459c5ac428221c19846985504f94461452a675a2552fed6f18798aefc28a3935aab44210abc49a1c21c253c74f4c91bb59dcb5fc689e1e4a3def75b57029cdb03bd2ef76d5d9077a4856862506b789a87260c7b9a21be8cb673ac0f3438e7cf031d155f7bff5ee2a899b5131bcbda7ce358efaf652e61b46ce3748e731dc5920672aee5625bd747ae7f331428cfc1d098cb2fffbeae3ecdf0beffd9d30c37076877c0b48d81f4a2760ca509100e0cd9a1871cafbbb1b620f259760ee0200448120ce59fe3626e47eff502ea3ba094d209e7a43bd862ca69b90acdacadc55f9eb4d856e7deb4b46b42ed7f1d85f0c2c7e08493d2f09df6c9f73ff9f01caecb732be84b09e79cb693605cd3a51286978febe13bbce49452091753f3217d90a08377422a58d5872b2f0c8c16ed82d2742dca90520a347d50b33706466a267a90f0e848d9466c4ec743405e18edc4b9166a2738ce9d3ac7c8a979bac739ee87b7743cf442cd0f20fd3ebe08a343e15cf79f5c4e315704f0e610639cebf8bec5e8eefc317a649b43f4ad4a6d28c4b99641158a9d65f1822447ecc474373cc1ec78f3b2a8cbbd360692b1d15a96f2425c70fc805105ee05b5a357c850ed1e90e9015ddfa13cb7eb1d9f2447ec40a0b98ae941e3a40c1d6652068eeb9038aea776312f0515263ef70510e7b81c32c8352df8e0f3014a2d9bd9c3aee94391e95a5bc75d7431f7b93ff7e74e51fdedaecdd027bfa7fac3e983dab54efcc844f7b48fa38afc7d3a8973d3768f7426ba8bd6419282eadfb5ef5c263099629cf36e9b2bdf54860987f770ae599bd941a909476acead47cc4c426de195d043823da5105a6d3be85af6ef5f66f9b19859efb2e616f4faf7d7cfcb32d6adcd58d2ca788b4804b6c968c90c484686adb76cc73b38677d0f9a0c303837690c3e38d78dd54cfa43209d91c66921431cf7da3a9e4269ad26d3734e06069a8c2173cc69867e1d4c3707f8da0cf4af3be69b1b0a62d551effa3f08b519f82cad98adf5ebd58410ad5d0f17da600fc3a89dbd734e54f99de92fa5594ae8629b8bbff85f9be9bdbc135552e115cd7ba1d90ba2a6f3e1f643c9a701a3fa408373fefa87986e7777cb0dc7edffff775466bdf56d41ea3d400954a95245466ab1e10f31cd3484b0ad2988faff3f8120a560601e0c6a4b11f2dec32fea09fecd0d22444adfb7992e03f9472b031d3e18542ad345ed7c87bee048d48ebafbeb89649060863ddc4ccfe6f6f5119651fbbe185a9cdbe84b3a217df562d7fbb74049e963b4e99496c22a60f6d6d6b95ceb3d9bfb6c673d7d8cbef7665f6f5e7dad8dbbd996c37bd8b553fab45aef268ba9fce6a80f01dc39bf1bebd804d64f544ff46f2eb55df31391e4ba70398808a07b9a81bef69abdb998b603fcf83ac08f74c3fa75377dedbdb669f63291ae22035feda1ed64e09bc310f8f4e353ab037cf9e8633293df03bccc3ae4c72d87fef853ae0ba25c6e2be3333173d4e33722d2552e9d8f5d18ccaeae72d9515d094ce038a77ebe1dcd88f4bd6cffb5947558ac439a9c6b9bf53c018675e6391e53d6d1ef4f93a1b518babbbbbb5ff77bdd70748a215eb60d84bf5f8b0196767d777df76eb7edb4775f18fda05a98a5cd8ca8656ded160fa4ec7aecea4bcab07b6dda531eb22752029c3bd22e4ca3e1e66acf3a5801567ff71e5eaacdcc97435aaec76f7fea37a39650a0c0c953b8753d2e5cc0ed97d277dbedd63a6baceb973a53ddfad65aabede0d38d6f0b7cf9adc5007fbe879d0b437adcf7bae1832aa095cc8bf105bd78a333d5d84c9b8d0debe0bb300afbabd45769ba609eb5b49d0f5702390fd1aa7b8a5888880f577e5782db44e695b6bbb9914a2a65dc78c54c1eb0801bbf7be14a4f7aedb1920b377eb772e3c79f5fb29d006ad0fb58ec8d37d96a3b4a6d58e69791666b5893e9da8894e0d226d297ce1c3d84bb70ca63f14b0821f54a8b3edb4efefcb77526ea9c942f21f3736fa189d0b2e33f96dd100ec1cc90991942c8ccec5586eccdf7de7bb393cfdf6570423b24f3234c1ac0c81fd909b403f0c117fd6df4f27bb3638c0f4be2c5d60117fd1e6794c6b9f9f32f08250c3b601e9435a839382e36515dfe210e1317a6d752b9a8f4bdcc341fcfc7082c4a2d1d706165182d82f97bc4c464afc247d3fe3b6060943e3507c745199354979713e2304dfa5ab6b032fab8fb5fcb3c19207a5953d27984893e21cc000b4a54ed72d00cb45852afcb413360c20c9a4111a49452724d78685049978366f09364063e979b418f4b511718f376d9dddddf7bf0ddddadbb3f771f82999905b5df5dce34a8f738d1504771212e8802c70a547882136589db7551135fdcce71ae5fee46ae1fb9ee3cd7a144f1739d1a815286185950b10523b812b7eb950c746ed742f376fd44a87ddcdd081fb9fb8d0eb018e308549a28a18327f0dcae79622085db754f23e9778328c0a00931c4206282ca5970bb981e1c5c8c3e274ed400ca921f18a1c51554be82eb5fcdb8ee9f0427386ee772a10c8cb8500652342144134d6086c001eef5539bb9aec9b4c5b566ac1ed005c26846ed4ca686fd522693500c5c70e9bfa3e09b9c7b1c7f3bd31477fe7cd8675ce9402fe5433d40dc03dc6825a99d0b0d713838382700c2c151f5c38d3e1f1ac27d0f1db5438a0c82e17cc885bc8768d4035a9bc640da4d248329129e01848691d11615064d5cf73fd12a4730f50b190c8e78c114d7df850aabb8a0469b9ab0c58c53282491c5cf124de0000b5770159c71068b0d27b80089eb5fa37b70707050f03d66b88115647c818225b650861f5961dea2cd78499b794d001c4bb89dcb036e9763478f26c0dbb1139ea12a6810a444126410b4841849825a50258809265cf82cda0c4c83886b25013c3ab8feb506e56c85a12ba0c08c1c40c104553c89349e209da4cdf8ed5a76dc0e87042e0371217c5a955cf8a6154cb9f03f053f173ee713c402312efc91360363380eda02074d68c11956109de1483c915a1295a10aaaa08a1ed73ffb41054a7040fa03d9a80b061dc9c2194798b85009174634c828c0853fa930a92d948413d73fc213249173ed854169a860f4acb8febe821542082144c2085a50e1a20823644851413fe2c20925162a133cae532602000d4cb59aa88f1126ab288ca002878a24a85859e1821613101526394c8c5453d011622c11d413e453839028c2082174218429fec2b79a88e2e5202442b7ab7f6d8189ba723988082c7e88e00249cd2e071131061115bb1c64c404b7fb26f5c6e52023468850e9e520234d2c514797838cd8a006555e0e3222850ac92ac84818414d9831c6113c97838ed0b9ddf573fb735c0edad1e282a7d951131743a10c75110ca720cf8696c6d638d72b302c8173a713e75ac8ce95735d0220ae7c2a57be3f5b447305430b7482aa3fc7e76869168428fe322404b7dd84729acf452f35abe097fe256071fbe71476bac8717a67ae58071570a845fe000a50c89394169135a549b7ffeab99278aa7d762c2a8ee22023a6dc7eee7064aaee2f9edb3b545dbd9d359d26490d1440fabba5b8fd3d45ffa0eb255d064472fb1b4ae1f63472bb9b459845a0a15b8b55173c65c7ed789563e4c8ce35e2768dc4b2e68a681a71d4dc993c7367eecc9dc93377a6cfdc993f52903852070e0d217114f48150f8401f1f282a900f142a8379f814eaa9ff46d57faaa1dd457473bb44e8bdf4f75c75cfd5cf220ea8bba5ccd57b6938f403e6e13ea73dc928576e26d314cc23be0e5c85abc35302096e4ff3f9ceed5d5e0ae621371dde5ce1dcfee9a429301de73eab83fc0bad0ed29efa4acb51aefcf9d2eac051eefcf9cf9e5e941b378e72e196c339ee04b3a3a930b97e8ae911734f3230381784d55c51e05d185a700101000718f37b155cd664e82c307eeed7b00acc5f52a1be894d8e6a7ba2b7eb7b45350139904379a90b2082c2c481de8bbf43e117c7bef02c38f5fcc25fe59671bd0ad761b2f0d884430aa99b08a500ca75dfd1a5a08c2282b8113e87e228ef9e91ebefa7da9282eb45dccea35c3651005e235260ea5bf817d7e5330ff82b2f355f4f7aa36a295def54d6d1d049a5f42d4be7d309bb1ede7d7f7a96df0bbf1d1a54ebcded5b845533c338c6bc53dfe5f7a88cc39dea9a8fbed2c63dbd759fe98897511e22ca83e75bdd4c4aa8ddcd650821846864c19f3c5825152a74984804d06c32b71ebecdcb03a47f23e5536b33b2a93fed896f689d94c65832f2e9df30dfb245587e3eb5b3c87c29b7e77868e5033cc44320782939eb0a8965f4e33d17de54e36d0cbdb0c97761233d7d1b1bf635b6eb5b36ed4b5bf6328ec5bc54fbc400050152f3010fc23adeaf6c3939d6cbcfa14f7a686be69c2cf6e43fe44febe5bbfd41faf9d3dad027cd2beacac6aa0fbc0fc23ce67d2330b0b0d3a321e03a3fe6cb1aed0ff9246ba3d5e4689f617f594fe74b28c487d6691e0bd382c8c40cc5003dd78a5842bbf39d95e3741127a5d85ebd602975a1c59a36eb6f6cd7dbd85a4c2bd32ac52aa1a113cd6ce8f014f54eaf1aa87f22606554d4d1931e0a0f0b46c5277de99f15ba88e5bb5ec27c8c267b56bdbfe1facc16c92e7be222acbaacee55af6c54d1ab5eb511ba8a5e8d2c8c9f064fc5bc548d95e7a771547cd2953dc31a9b121b5865c3e6e4582def1a0ff0e5d7d85815e344267ba2b606cbec09da530dd663ffc3826fa3d91f974d8b056269decbeb9f475571abccf99736e6167e71c771fdd5582fe35d05f3e09bfd9bc27daf772e9dee19cd263c9d6e72570effb98aa6e6a52eecdf0b79298df48f8764ab84a014797dd2b3365393337a2d7b8c86161a22729ceed7ab1a9a5eadbc477acb0f96e31c7fd740bdc3f20ab5fb27dcaefae0a8530cefde7e1b9cd78f8a7fa2ce05e1ba0c940611d7df6b52dfd430b7a10a4c9786761cfafd7d3b21dac107209a9f6a7a96efb85217733117b2bfb1d5f895cdc6b36c2758da4ef0da4e10db4e3062342fd53fef698476b042827494417d9787f744858fbd276ac7bd132122e2016e4458c77befc5408d875324e2cf833f7c2236b02a27a7c6b77c8e8dcfdeed29da9aebbd8b3db9929a95b7feb5b4fc8daa83b9afde97ca80e61595c8fb1d9807cf4b593d449be03efa68601efeef29c029221abf18b4eb76072c6acb67cfac63fef5a5a7369ee56dacafc1626d58de0686dd78e89cdb2891f647664f30b3454acff236355a6c1125f28b5c6f3ddd68769d6029b2d813b47cf0196d6f87eadceb984868e546fa480a9c10421c0f21840fb998ec4f9b8d7f616b79d3768a2e6ca7b8b29de28dadae4008219c10420861e95905b167f91bb22fd922d667cf628b28f9617191126f148310460857268410c209574a315766b194ac8fd1c6639fd3f2592c95a6654b251b994dcb67d7a6c41fcbb69394f6e58d4ac2ec4872e7851f6488a76c0071500e1227390f8a1dc01d251c0444122e94414020b9f0fb083cd5507aec7f941eb3364ae45fd6a6c697ec294afbc3faccdab0bc65d5acbc8dad88922235ecc9bff4d967dfb21561b1a71a4a9f7da7eca834eef564412a11cd080000005314002020100c078482b16838202aabec0314800b839a4476541b0ab42489611885943106192004000644446646830600c067bf96ca0d8fc028f62106b75abd41c8c2bb7e2135920f94444112d4e2a24732143dc68de862647a9a2679d64be33b9c010ba20180a31879de180212132f6c0a4484a43d5f14ad91590689fb9a84f64f5207698afadae0906b659c40154c6e7d827f605e3b95548af012ef981e6df2faf4da8a64fb27c73870cd56bf7d2230fd4f6644c4f52060310e910d951105268e55a5c1c3bd7306c94b0535343f2a5581038a1c4f07ba218cd387c1b47ed54e60b2d56c6da44a6a326cd1cdd2dbd8a0fec3632a6337d31acae91335d58e771aa47d6ca7ba8e7a199db1ac9d5b19477f90d80e53bf2c9a9cf78a9afdfd1f6376219a66725443aba75e76c72dd057a4c2aeef7a9aed43a56a3891f8ee1401e611c8b66d6376e124f198abf34fe9d1d9dfd43889aa8bb5913be145e918aacf1c6b41ad40d1975635d51da4cf033ad158b287d5f254521d864fab99b74c0cb4eab7245759e1047867b19ad82a19693abd08f0b4b7e169745e0ee2348dbbb8898dfe57df890be4165f2dbf44271e085bc44b446e2aa07ea45d349b9aa1ddba2342c45bac51ad8312e596fdffabf8c38596414570435dfb0975dba80f731eea6fd3e2372a4e5271aacc6a167081fec8bb5543fae01c947811c7c0ce818f5e8b8dc1ca1c13b201645d47f5b126da07ea7386150e061e7b557ed3ffdd21f8e02e9223b758bf3ed6006cbdf15ebe1a65aff21086161cdf432ccf162ab2f32065614a9cc865ecc8fa75e1e24cb5f97fd6a3540a23ff8f335950427af81a7e1725087b0e42c3b79f0ddd2b3916f29240c222f4a73fa4130098d31771ecc9f19474e2597b1d045237f5902f26ecd945c56b988521753359b8e926ae9fc16cbb46d277799a5b799b75830b9b399dd0cfcb1c6380728856a65470fccad2607bdbbd527a7addd65148751788cbc1e28e5f82480e611c880cd80a589a939562a8323861b31a49b2aa49b0192255ff352f262c932da7aeeda9c93aa79deb30804d486dfa4eeade47a79f72750327d265106eb2b33b2c8f7224f4801cf958f5cfc233ad6872ff70d3c80cdeb0d4d874b9ea5f5b02340b186f7bf2b2aa10052b4740eed2762c4513f668c191cb08848b58398878b591f2e86a566304ec0009b93b6d7acec721665bbb3696a8f8bd456b605bea5ea4922a6ce21ac01441fcb800fdc4c72b9251074234e21f097215cdf46ebb798a601ab34d03393da407134789c0b96a05dd449c20335aa95561f567832c3433264293ff7f7a06693d0c42a8b595d2eb91474b93fedcdcb60c8dcbc85994e4d1e1e6cc45f2e81c8e1d4b63944d619d940f8f73ac4d3a59a82727b2ff9c212859de58eb08cd22d18313d830d638b7a7b594dc98917a370ad4756c51a1b75bd28e8e571ad2739e01bf252f98bb44f37dbcd99e0b781455f2420d7e06adf08e54e51a1af6000e78bebe5a837f2dba99878c4e856eab6e13a84d2adfbc6a8932eefa9590dd429170b91047ec07e052e2a6fabd1fb8b225d35b94f6df6bb6299ab580a94c77fe2a6daf9abe41a89dcebd04c6e42b61e0b7c7499ae68ca444e0f6ef5651ff540bc040ce16142586a933c59469bf92bf87176bb7bdefadc39a4b7d7afc60277ffa5a26087f68e00b10947dfa3178a8b52a7507c8c8e4153e16a5c42d68236d71adaf3ee6244251ead1027a236d210dc576b0b42a271c22a7f25f45aa5f29022e5f7aad9741861c75bdb8102573a5f1d91c5feb625793c0963f8bd04ca2d0c1698a90d75b115aec9fef601e8768e5b33b5a13e6635e1db0e0da26d960330d91b930df6acd3d7569f4b2e105e9b7f7be2472f408ab35e9689b3e5f15305acff0da8cd8e7b4b313c7fc26968ddf66c42fa4c9bad99091654944fa15c1dd17973926287d8cf65cc9f13c77377a3ac06077e0288c57cfdc4eef433d21196b28ed8a1a6e671d7078e67c2fe58933eb691c04c2ed65e0446ffff614328797ba6daa31222dc7d29e33f6f4169a588a142b64d4d6b3db23c2eaf64f3c05502e7e70d8b14cf3059d1b49404fa3d5909f0f61cbdda69697c95b15b34430dea981e7b06c7442020bbcdbb17353d14a30a323855b33d24917702df534ac997446ed794b5ce62769fc70aaa82af6ff614695f317990a0aa282a019e3913f98cae74144c6b5beaeb556b3d810cf85efec1302252aa2506f7069016cfbf99c8168b7533536aaff04ea1ee58357f7a979ebdfc0d0faa8f0d1b7d39548ad8607293c56cef25d4a3732f408fc968cf49d387149eb364528f7b7a2b81b437b4eb73b5ec3a3660f9c3d363dbfe3140c5e0d534857044aa30e4ebd35aac61d621a26d981c26e0225f9531fda14970907d121e04be3f43e481b757d1f67206ff8c5b9152cbd2d508a95b09ee4e854e566ae152a952213d0671775f26624556e65bf1eab1a6f3bcb841cb43c7d227a409e678c50fc67dc8632bf1f3f58f70c62be74d71b0c3a8082cada92bb9cb5c081bd8c9cf1af81882855b2760e05552b0e3e70ae10908462c025e07227aaf07a8878d237903c968bc4cea3d2895233b9c7877806d0af5dcf1c771f7ae499933bb0f24597f867458c21734238fb73f0b7d5045162022feeb98682a9aeaabe7a2b93145bb235ddf037883d2acbd7975e29ab30e21d8fbacd79d417f0f9cc2b397ef98b6a838e69bb07f6853ec67150fa2f376963f74c6aa073f2957aa784f1f9e6d0986b5e18717f84e5ff0074d2967f8b44196e0587459fd0ce73d944feb30b540624762813337de8c1d34edbd9b875f01ea193b0c9f4a1586823f6b2cefb6d2e3e876f22576c110f7cd409940f0b8c61c0bd19161ec9002f97ee9a92721242a77a4327970e2bcbaf9e7465abb488fa7b9f95c7baff979fc9d0d8c31475454d14e4e417954897e45019be3f3baa3d0a4c72bb6f3b5251162f21fde19c1f2f03d066982798f65f575d61832e4eebde16a5d011019e17cdfd18f23d933ce57afcf0c9d83250e7a216791358a7ff12600ab307d0d1d1edc1232e66c4f9d28c443b065bded5792f4a7cc3e8d0c5a278733ccd9348273483d2077b89bbe8c6a364c643fbb32c5766a46b5e1679c1ec15d153d51d4f9d022c5eeea5a18d44b8bd912e46cb90e5676fc360585157972b6a249e88080cbeadcb8e3a5b44a3b32d468a81ed9c6bc72416878b767bcd7dbf9d83290de478d68b2864e160955a1d83cf6ad122aeb2fab7d25a172092b53632d5b73a92fa111e26d6bfb78ae2689fd8b37cd11f34aa8292adf6429832891bf4b66b2ea97839b16ebd3855c728dbfa3be58b03f94dc6f886919205d6d011a331e1cc9fc79a61176c04a6b65c8310e4027109357516e55ef9f40134a0c1f549df5ccc3b46fbf9610c433d394bbf3403fd40236bc4ed0b21011b39c539546a534b6dc1b3def9833b1e1ee4a296ba5e61bc19eda216be94564ee1288fafa8b68d065b5f12f1e16e13f79c629b9419cc94c0ae06421974957695e84d198449a7c53ee46b9f5ec1bc53f1983742937f5a42226962b7da3da743b97e67df001e63cc6f2dba4c07e1bc18b6ed58cee853bb842e5a62ede1810a66330fe21323c99c365ce737fee1b21cffb8e8e6ac8d7f94ea9d39e842c064fc03a35dcf447bad5c64bed4ae2fa08209461c7a1f6095fb5551f8d23acb9c02cec4ad567fb92fd6ad14d706dd338ec6852feb8d185866641eb0f4fc1147b454a8ecd437af221898d36ae146ef35e2bd708f5c4a1ca60e10d7ad56358d01cad9c891c191fbe7ba4eda2df0d4f4a0ed9e43332a4bfc2dc6e7792126b7a6075fe6261cfd328794a8c58f1303f596cf880854998e3a7e108192465d29ae69c7ef346b9b0515243c1b83e7eb1a675967d5b0320f08e9bf7f62e8c1df4121c7ea51d054e952807f482e828b4d66c46398c6c2df300e975926ffa88f4ef480e3a79cf584501d64fb256569cd86f278c51c8b3a74db140ebcc02c94943d2ea45d2dadfde01716a5cc506eef71fff0f79127a5ad46666ba188074d100335ff0d2a515a9295b2261af82ee06e82d0cd5900c1b114c708b8a5060bd74b2555a3fbbc7a72aec5f203011f540d3c108ca5d33da29f2f2da3595be87c671e8f841c8f2e33906d503e66cc7b0f1d3eab0157804adadce15703aa68b08161427b4ac3a7cc60dca6ae940c1b5686ce0e76435ec3f227379e846d2e2106421745d979f751804c301c67f64f90106942694c94f37498630cbc464045dbc0e282ab16fc0f99345ad043b668651008605f1c6afe399a1b8d5fd2ffb7d2823b7d6d2e787262fca0b4112645ad9c0eedeceb90ee20f20538d4611fe38b5fb7976724c4806470c7ca3afa7ca0a5456390ff3187770064e3122806759f4ff8a583e22cc40a116d7d6bf8758a6cd37400145526e569bc1139862c46eb73df4c5f8ed0fb02350dbf4013bf922fbea02b9ea8e2253486fef010dec958f74c654b7308371ec4a8f6968e268b9a0e61ee59350c28cc146a4783c85052e240fa4c4065efd24362da28c6e252aac4594294299f7baa64bbce899d34d35809bc5063b7587bf84d5287f4fbf14b37bd5f3a101844930c10890edbcd8137358d55ac8046b9f0e20b4aa50548d8350567c877fc2eeb2222da9a32f8eb695aa85b361a4b89d68aab764e8f8483104197214eb4dc1ca2238b1af7c58c688d2fba87ffd4ae23632061f93763b556206b229b32ddabbfa8ef863ce14690871d3d582b63ae29047d7bbe6eb7ef3d8eb18307919ff92b7003f26c4150fd21b5d6020fb062f7430f4a0f400b2077f9bfc49727ea8ce16a20f58261f9516e9dbb9cc8550975dff56663f8b373edd0bf64f24c8b46ca150f2691b322ab6df403f22690f4b9dab01ffb28a5d7e790e797ef2424c0edf17e14935476316e2482332e3308a193cdb752bf7b650ec640fcddd67cc6d127a78cd1cc40806dc51654d2a3fb9286fd22607987a9652662f3556cc8c8c6418da8ca46a1ba550708c056f3576839d4262a1b362d266161d7e8250a254491e40c32e0c53988aee903f67493d36a7682649dd3281a0b40666a38a91a28f53e2ec4b9c6e7e2fce0913768af4c2673b1042a69f402b26200c04e4769c7bc850a72d8e2c846be9c27bf4c8763f8a315bf6a7bfa50fa828aed59410c60e830e304f93139fad88500515fcfa350795a079d5137c980cecc8671d2a020185292a387a42e0cab016b6c90cc80c2e659435722154ee491225546984b52280e3da23ef945c90397b58761c52fb8005020f9001ae13af42310b8d72cb631c0508bc8b0f8e33859bd8014e8b5636f28faa12d44c4ca13e0ffa434b049d176c31abf06a677f0e13f89c754377c2c7fd2fb59eb8d291be9a2dde451883fd06c7b2730754164f2d387dae65dd26f2bc0db3eb978d88501409f1d8db104ce4039f343e0f681c460bbd57774b4a84782e0dc1545a543e1f1abbb7df4fa07ca215181c17fc73c28c1944e1f5a38c5072b7293f7ad1258163fa0f76284dfa9a4d725d94ff3d0ccdc1cef842d4b6abf929a0f5d9e4924b4f830bf7060c1e2b679d87ab1a7f03b5c9f5e03f28de95231cdda7725da220bc5ae8110a262481d80ec65402bd92839de81924dc57da8e28734875af126bb30e23d7c91017a41cf16ce40973734cba92f5d3b2bb6adbad7cd4bf0b8ee3a3076a6af58f4331bb6190926c1d6c35cae34f176c5e13944784889b3de0573056d0a07ce0384c349cddb13c4f1055bc71389f9bf73fc23c0c38264c36cef4cfd8d9ba8dd5bc2ff7ed08762e6bc3c07e2622a74bc46cf1326a813b8a340444dd7868a60d5ca0ce9461d2605941b3a0be6657e6341f422f2eed4759507ec183550db4128af60078db358b014f3eb82ca9719404d8d9ccab3a9e1b11e6ffee48dbbaf02ef0e37060f940a8603fe4c2d6410082bea88fce542ee48fd54f862e3037568c0988df853ba9070b39c5f8bca6f52fa52b584fbf329f6ed9da615ed98c3ddbe5e5fa4d6a7fe568616f296d1c6c50a8bd047e259889ffe1584f5738897606dc8c7b31b6b06d40e808374f007ff2c0052b85a9b077f3d8d322fd2e16e2ed88862fcff60fa4139fce26f920774d2346783e661e8f4296f929af379f829ec61f2f18b0d565f5bc3bdbabe816f14f25bd364bef471ee969f1e0b96948fba831abb7a7eba0d7c9d0e68430b1a2a4c69e59b45a9729e3afcd6e6e22db42a0cdba0b60837c09f98fdd12ca9bb3aaea0e860a0ea63d567cded198a4a13626ca213c2d24cd2c9c9bf8ca8a38940162db0776de0679fe3a7896d978e331b225a5af71d49bf0372364e94bcbc985fccdfd2d7a8f568e053338252ae0a334e058c51fa2ed9278492aba0c21dadfe327cb41079d6b84571980947858c611024f6550d8a683b25bc134b360a4458337e8f297221bfdabc6304e46aeaed0c824b2cb8481f666d4da99b9f6633722f1b94bf2816d96469a77a1c0b37d3a6a49674e9ff8999cf215d2f8287fac9b738f922671f1104fe4d72b1af831153d9fd40c7b7979acbb8422299df2d3d66ae37d6af0a455e477c50d694b910c25a42004b1750980820d2a1708b6942e4776792d4960ce286620e00dd071d7de9684119c1bc54e94c0c16387aee3e9d8b6fb7e0d43d59fd9ecd34c57fae76a6a81a8f6ef2114d451b336c5d95d61625828a8001c47a78852d755ce11fdce1f1e2576dbf178d191382aea153ac688866e4f352dc3cccda6dbcd529955117fb2418c6d98419cedec635415ce8cdc5a8d7590be4e64a10661b04e812021e40858dbdab0e75b5e5b660d1198ccdbc2c71313feb80e527a13f4df68f31a8642df00a9d8212b358683239b52106658a7d45111f84196ee6cff3986513f53480505d8fa6e825f06be3f6a04198e1996ef57ce44b09305b4555a23a72bc44934be9e6dd5472f7069a60e018a0cf328c2c795d70725af0ea66f88669941cfd3dcc32f870082dca05314a16e46815d67021a40051c993108efb61220ffc12679b81bc561c4dccde80f37576d664976f38533f85c478cabf1c78837c2db25656c9d70763896a8957245aa47ccdbbb699c940e4619d3270137eee9725383f8beeb9c4d66cfa43204c2416ec01ad0c872d7151011a3586d1a71823eb2d9a2be55fe0864a9a9968304b374b8f8b840e879d4fa8793611b676e571def642039145151d10da627f81aed3436cab31881f2df4b54ff6eb99078c919c86a884d16ec09351b4b9cf5fa655f9a719ceb2d7599ae86ec7d92dd4f9cc16dcb8f01828a6fa4554c4637e4282d1b907869a7ea217637ab6311517575efd29a3234784938858aeb485142641854fec5b6c4ff052c434eee1ef20d619ac84accb58fd3ad1ee7a6542dd72fda55078a42b85673575e9f729aca8965a0ea0c0d79680727140046071bc9d6e185db356e3f0bc138106126c2583072092c699d282e39293671bbedc6a23b0d14b5de1f77a8b2c37af268afaf49d8081b096c00a3c6902c68a1e88bf0714de76d95fd2132618873749fa4524661bab66fd0d3e8c5ec6bd9f3c02a5c145070ddedeaf19f352f004bb645e629c46f30964ad64ceeb3b91e9201a98c9a49c90c29ed3cf2770c3a21ff2b4b4103e9dc7fccbf633d7281265d5187666cf03d4f3d2c0d485a5f85517080cbab200f43ecffd05890aa84200752bc576e85651751ab9360cd5bf4c78b15f3b8833edd314006235d9ad9beacd17787ed722857d15ea8da1a68fd8043359ad8a59f349a11f3daf3ea6f0b10bef95604f2edc28b04573245aad4ecf8cd38985189970fa59997ef344266024c7b83778c130ae598a69121d3d3eb14f9b30d48b177c4c87445141c904077c7e1b569c6c3542fbc6c20b7b0cb9272b464dfb9a368f48d560fee52fa50ff3858c85ed9e9c6ce99c34b1fc0accfa30ea81e5948061d9bdaf8ac0ae398e7dd8d68701e691badc7a0286251eb81bc4987a1b84db1a7352b34887de7935466559eb08f93251cad09b87e42f76022685ceda715f2ad02f67a07fa93ecbd7235ca95c416500847685c7b1e5acdcf684ad2d52b59bdbef31ed923019d5d5a2b6762cbfd2a929768dcd77f5be95213198e778ac2b797b1c46f064f7d675d57bc4d4fdcb9f1de4dc5fcce321b5a7c220069dd4bd798f42278fbf2f653015263bb689e5b926e5621ac2c503483764be3d5b38a87b576b6bffcfe2cdc46ef16c1305a2ccc84013bb733c66c965e4434e3bee5473f1dfa339f44eb72146e1cb113858e971e2ead2fc603a8bceaf19d0fd044553134f88cd55f5d7d77797d233afee60896b6c52fa488ac5ca2c8643e757f5d893f88468c2d5d645b0dc5bd58191cdd80e4fdd433da3b83f32163d0727bd08323f18263482f01292ea0b4b5f7bc7752090a5c22f20a24daca5e416dd61c32e0009cf2d0c9e0c8238440f9dcfac23f6b405aa229d72bccb2d106f234d84e9a36bbd119b4bd0f9b11ee6217a22c9977d855e147c2f7d0d20857d6a3a599d26292c1a4814ace7befbe27871ee65597025e6af88c51d9f2bfef69c451b2f41bf976f5ced329ed20b40d649fab4cabed41d2db254b4a5b4ac1a6f562befd5b7387b4821daffa3b35c53c6ff6f39f87550774f051be557bec4393bbd0f73bba4ae43b702c422b2a62642b8432e4dc56c972e68eb6f2554cba5780239a0eec73df013b13657e6e5e7bf15b725f4599bf742a2a313a9ecbdb4e96920d973c9eb58a1c2317ef013607c01e1c6be94c631e0929955f266d3cdffd9628297c012344f040e9f02fed933603d1aea737914f119ae258dc272f6b33a271df64d574e6b57e23c18c848d357a57dc9f9a44d40021f584554b1577a4db038662304cba7f7e7743f0c171670927726ea413d0ddcec9ebdd7c4403d8064ae485e28db5df7f4b0f63bded1b842170bf5d14acdc6d52e8209a2bd76f9cd64a16e713a0b657149df2771fa0ef46ae7e0885d618be86322e86a28ef0057c46dd455d6d6dccec233177a691eebcfba63ffac9aec6386b7fe553dc2b4a355cfe5586b4cfe3fb9936a9511825caaf9adf08b5a357c2cff0c81c20180fb29276049396e1a94c34db3667cc12d4cc36043bb47d9af15534d35035e96487dbc6224b18199f3d7291e830199ea75672d92e50bcfeccf3507ea28b8c1c091786821607d88a4f0c8a25a04fe9a17fd38e493f669ffed899cde0bf4c2b9a62b87e657612f0641e7a4d3e64bb2d19605885d918d5b2123660af27b3f42bcf54648b3522365285d8496a74ed245317025f67ddc7025d922fe835896acc177013f4455d42393126a917b77f4ca14d7532d02e6ee6df91f47f2267659fcd39ef22b8d17ec423fa223cb0af74f90b477538c42d6546a16ec40e68eecc2cd5378a7f7eacacbf2b1bc8cb8d1ac3584d3f5ebfe9bddf697e6bcf2875dc26aed932d230141bd195b4c1ff7fd96173ec9d888deaf6d0d4aaa4e3d67f5895ddd286d0dc827d7bd8062e975547a491cb81480754463b556a4c822e17f89493e1b1b98f0b4bd697715073fa66ec761f87dcd917c8151daa1058d4636cbac004221232f38811a361d977109c23b83e8a093153f9aa57d45ac96f58ea1ecf1a8195c7a0ac041ce69f054cb94b9fd44613a5ad6ec8bbc03e5efc1db44bd919342ef2544f5057eeb4e12f49388d8122f3851da158248f9426a6096e75000ac821d093fca397abdd3fbdf94265504b0627cd2dc1b699889811b7610f1c6793c46ab7a0976a83df870de5c299d032b021e3ca574aa3de35c54fad70e21c8874afd941316b6dd640e2f6d2966abf3814c711b4f7fd06b443432089d4e7fe5e410fa86e7bc852540fdc03ec27e08a2beaabbdd4ba0c0afa8b85e51243fbac447f949c9d2fc59e46b2cbd872f599550f68a3b8b27502713ae832654a7265a27275c274c50a72754872656474eb00e4fa00e265c474da84e4db44ec644c13aa9df88bf512b1c10f417e36c1bed83467cde483e6a9c0f1be9f346f1a1d13e6a948f1ad5878df78935f6fb74237d7cf9f503b9a387813cd393a6019d45ac4fd20b0ce6d790b3bcfc0a7c139d8f0cd3a450903f348975b6a1eb50e78cc2e9a3788ee2e7b1af707d0ab10f038773ab6039c0a38e02c6546e4e29fb268bf0d5152e65aef90c62f7488d7293d4eb940d8ad04417f8c8c12773561eefb89f727b2cfcdb3d736bcc10d53849be115424a2d223b6522e077fa3bc08c9f2335490127a294b165d1b7070988ac8f235dd4af61c9b10ab9b2479e91387ed03d7b3980abb4bd1360402d0aef14dff7410ac694a64e00e081817ff27c4334a0f6b0c8b13af93d9ef8d581f85e5d06e7405eca5ecb58235bc0d464b3b367effb7c9712af45271e694d542b21361d7333ad4045e2a996a25c2e9525ff5eaefe57cc812a8b8b3d8a5f3c55b9ebaf85ef6d3339d9132f099bcb92fe6a6aa37b05f7d9124ec756e276dd4a40f8b0f91c77e67e750622b0d74f9eb2ba53c5b914ce02beb758eb7b007ce2465528bcb00124c81748a5049a1df1544fa346ef95e1dec14ea0a764c36225261a78c3ef12edd831905e4ed96a4289f50e92f325f05727a1320428014786154c2a11c68001a11d18a01a9a6a159f967707a9469df7c99d29b8135856b12661156206e892dbfa31b0a1acf3cf4a226581760d4dc6849c9b1f14d9c9f737cc691fbd70656bd2244d22c2941b904f346c249a62ef253aaae416dc95ee8389a02307ff122b417b9b6988bfd0739563a6a00b9470b52fa4662cb749c7c30b438844b444ead13785ceed678b861a5080ec0effab6fe638f7e441a8571ad0a379ea363f8471e0d381d5c4fc164ac38e2397c16b55730bd02d664546bb76a2e3ad34e02c2dbf4a91549a4e9df4de22ec794a9b96f207ae3be387a7098b72d50f09f980186f49a3d798152c4122d823ef2f57b504255bb24c73ae8ff408bbc38dac9f3e36280d0ad90edea8abbabd3baee0a76c106b4cd7e6581f627f530d39d56a688a8d4ca2dcca07161b4005330805b0fe2b917e14b0c390bff05585ee2b5c1cd381c8283d4a789d89b1aeb055c02f0946d8a42842a01ed2035440f1c7af52b2cfd2d9314f4e8645acc85547ac9ab09192660acaa88f55308a204372a36e3a1dcb9269a71f08ccf85c45a4d3cf1cc64aedf9a007d64d0e6b7740e3ce190789703f612d4b19252c7464b9869c725bd9da5ca04d94c739b3fd014e8cb5ce3858498046ba06f8b4e81765892098a70b2d8fb295c229bb2e94126824d38f9007ad6f3abdd87a9c82558460d64c97189ecae89bb92450d3145e650b9ec21233548a7b1ccd265ece006030eeb457067c830b4d66e9d7044540874e5a4ea556d614b981414e2eb9fe94503fc604e6288f803900c1aea62da5c99d7a21f1256e96d64d06162f46dd0f381b70efc016867db775504f5811c674f2e9ec3110f909f03ab77f2ff5f6cee8b4c972469b0540ba00cc73cd016f39de5099e6516e289838a74b9440447e66575010bc74bd49224ef56bc54d3d43aeb05e55a8407cc18d2b0e5a1e0be19b6360e0cabcf465b1b36b98ae91409526a8c9bdcf482d03fedc362761595cc3ede80493b1f04651f32d9bdf2e6da83e616e7750845c67e8d2a085f41e020d831fa550b57c144f986bda2347dd4b5045f4b95dd2b7047acb7306cdc15a4c4c85abe864aca2a916bcb314032c96394514330561394d8fab2348bf83e40cb474d6b27305c948514754feb746dfd80eb1bfe4cf1d3213b35a5dfd23f61c2c4e421a757c53695e745c489f1e2addfc1e85684c0924d6c1b61efa97b5f1157c22bbde0cc3d4ce722a2e71266f9de3f6d9ac28da934895be24393609aace5f0083d29f6ab4dc29e22a0e584b6d212c225748ab20b541e5fb1899249ec25ce6d5837668104c7214721258e60fdae901370b9c0cc2c93006bd6a9c80be1e66323805139d09f5c513a9e28007654be3f46bf5cfe8a0607b82b8c483901d966b840f72c80b50dd51b595aebc4ade45597109c7e3403ab262306d0799176629b89976e5a1b2f987c37dd2b55cddc0516ee84f8f540f429c42c59aa39e21b12ca597a5946c0f1c18a9e608a531a052b59750882dcbe67884ac09c08992d1b15835a1871929317d79d9e64ec4a0ab449901025bf73c527b0bb03d17557e64cfe8926fe297352407f117b61d6c1a7be0a9eea88991aee65185f00c8a8987f1c4186544f34a391149549ac5ab97fea2da08cf709f43c31da7624a0281eae284092fb333c06374e3f03c0e80a048e2425fac0f548d044999c6672b29772027c6963ee31b98e767c7d2defc3704aaefbf7ba5dd91501291a8902f843af97744232d732b4c2b2f8beb18773267bf0fd11788bc0e4948dea3a3084a071bc0084ca4f47f7f00bc3211208c2a4fe3808ec5b466dedc22fabb800203272da17528ae82eb5cc834f8c6119eb8f2b885e6763fe30a6794554beff31ffaab6896dcabde4fdde8a90d22a58e9e745f722626f1123a0de5cfea75bf8de66055541268f7134a711a6c15e3f7b364e4ed14c167847cbd19c48f6acdf62273630b0b004525d018a6a127bf5df9b42af8694a73131869ed43121c659acdc02caf2baec9c4e638264518eb039ea1050959773932f349b8211cb810ef0b8cbe53809dd1d688c68b4cc49dc149cbe39c2a8f5af4da8f8201892c543905ec3b5f86a76de3fac4dae9a7da073faa09317d6e56021cb939788e06fea5a2ec981ef2ee5ccbcbe1117379790d910d20959bc5115fa8d5b54529ac15037cdbc793f1b40358fe9e72bd9f71e92dbd0247df990dcf82592de2277822057dc727d048f61695118048132379342230413f1c65ecfd6608b58bbdaa83c382a0d02fd69d227f84de2c96c05cbdc4c20f9e4ea5d1537e299cf479136679aa7946050362a2073508206fba78470eec51e0ec825a61b56520716a01a2d9664e2be6beccef9703ff06c7727b107b24e45724db398ca5ac0071c2ea187fabf59656c8acda3a155488966e6cbc92d2542ab41164a63de3191c3d13924813036a8740f5f26cd435a011903f456c996dc2888906fd7ae85110a7102f9916d8e4e3db68dee6311b6c76da00c2a8b92785eeaad3f511cb16a7f515b03f977282f8add584bf15f50fef008ae9f662934c9cfd24cb280665f4b9ae92462fafacae10acbc46196e30a0927476b5f8b592499a895fef0418738df2739090ad78c00d5afe08b31c37ab56bf9e927cfd73add00a59a2abd9e6bfde24d47b8d469a2996cf3e5ae9f532166b3a28c090c07248cc32286a43aad6e17180765c8c013b50f0867d8f4b1694c61cc95de5895311c2c6635a0c8c0732f7318d374f8c0395e94d79345ec6f6353117427caed55d8066fa5137febc10b01ae6dc756b2c015f83dd0dd55870ff3940caa4e965a8865a975b024339fc3c4fe2a20ced138d359240d8a01aa32c417850ef5fc2e55080a85b4af6e86259597528479924c4ce93bb8240aa553858e9022d93b6ba014f35fd1832b82c4a53e9bec334c11098325f609f41b431b8f2fae664f49248b30124b76ff458c7ba9144f126c657f3741d61741a609c355de26df8b96bf78e11c1f55fbb5e826e12de104c8e1cb6797073f249c233df92115dd9e743024008057fabe90fd941f3463eac4de5f3c42c89ce1c4e3ca145edf322660bcaec2106bb8f1f2d99bd81c9d88f7f365d6479f6ca7f301ce5c81d83a64ee3f45b10bbc160e8683481cd04764e559dc58f2a51579482ffe85c90de5c3839a97e89a6e83b4f90d57419374138d5cafa0adb098891b00c723b2cda86e126254f7f5b5472d715444e6ef8e493783cf84d7abc31607c7c165f989b8ae719c17aac75b434e36a9e1d76e098c7c3e78990f626ecdd07f6de283dd23c34297b34e1613501345413775b5aae0608df3a9bfdb5c5f3afaa184ca3643f8fb863f43511add1bba34fcaaa7e8f68e1ae28e3a97f02e3ce24b0ba5c4b73a331b6a37897d2a5e1f55daa2d8ab5f682b06610ac143576331255b953ba4c038f545729c0d4299e680e5e91faf836ee7bad23847567458b4a1a30ae6089235691769f488131c1cc64bc9ae096cf927611bc37c4372f3685e65caa7030b1668544656b5f30aa7be997da135f43a004f75f0e8b4add92344d6b1e6001ad1c81c541549f9745c6402c1afb6fa94b54eee19383ffbb8d8402425071719437a421fa51e66b4a3b125b0e503268680958510e42392703fd4dc53f52365904e25f93407dc590e9a99bb9edee380d97448dc722af762fa84c8da91c624bd696c11f283b1f01c6b73381e7526bcf96510ce3bb8a2aa3c60891da14fa0d43585fa8c991289e03b3690f37e06d6575a239327c33943acf7ca98ef9d348a57bee2c003c18ef5ec4c92b7796858ccbb9cd001138ef82e896b1c6047150fcb0ec7667f45b1fe4fb518caa8d68e0fbe0c07050d79642507a7687a4b60ffbd782fb118fd651f732b33bd85ca90f227053f842aecb73eb02c2ce1c509a61a8a9d7f151176826c420195224908b41cc5f8096d8f8caa8d0db53e3e50d87379f2ee424ac4277b2c8dfc55b7e1ff4cc4596ab4da22baf6521159a04cd9bc15b2622096a578f828794fcb2815fdf679936d1951f44a734db5ded95f0a44ef9b9287adc1fbe707357e4999a3e05734f526f93f2eb42f6c93ed6f38aae4cd7a9e0016757e5dde38b6fc17f15b795b538c6095e48088f0486323028856b27549ef61635cb7f499bfa22601dba90834c14c17cc0310483d7353ac77a9e3d73d55ac49251e300dcd30ffe5a1a4294abe024903a4ed71c8179631356cfd646a8b208b07aa068bfc4174f6be6d197b3e0fb88e24d5a872f7d6beb3c563d2131dd863f56fe23a95d4a5d0834eb777615912f85569286568476fbda986a73704080e18d592b50616847a27eb6a3db0fba9fc95e367665ecb2f2a74ed3abbea644055f7a09c289b08605ff05f53193e5f7c761558dc559f8816d8fd4db87a9ad8c0641fe51ccbbd3a851922bbf7eaa4ed9060e0e3cb2326b7986fc669f75cb234e15f1c267fd88a80ebacb10958e85da8753fef58b88287244ed3b6a271f3d6aa01bea92a92be12209e59f712dbe425b3341b280085d8a0534552632c181d3eb52e13c1059690e715c50c16653040270e3e93ad24a181834916c3515613ed16950b52e8c153675d63c20b235bd1583fb81ba5e31a2a88e00b4930e12a2c4f445dff38b59048bd1698164f936df9a712406076dd9839770a58f213d5d630b56366830cf5c1620e4b099c33bd6b5cb3532c3e5b89cc869e38a975df3364b07c1bf1dc7246aa2f0cec72183dcd36ea672ba06416cd3cce43870405e869e696f793e29939afb7af92d5c525da184eb4357cbf0d10f88bff31878f98e2c77c0b1739c1c9e735412e47656f2ec66f8192ede166fa87ee718e5d268eea90752c2717ed368a1521de739ef25660cc8ed8c1bf30ec4f1e892a009a965a31c63491438bd8209a29214f3eba11d3ffc70126e75c151084457978877ab9000b172279789bd1a7b076801defb2ad8e225685571fcbcbfde93d5409cc3f5d9eef0ceaba054e6186c986474db8a5489c37b5a585543c30ec32abb4f68de9029facfc0d4c1ce8b6b80c262d7c9e9acebbe0957ced8ffe6a91b49bd37d36b0c0fee3165192468d89560250a5d784f3929cfd7cd271d6bc6c4e252f772066378e4b53f3e6483d57a6f69093283f433b4a559004945f980ec8bb0a43930abbb04d14343a5112ec4e756a4e2e749be20220a526d41a2716ac51e482d351334fa38d30cd8b8575890a3b171bfe8bcd73d6620e4d8c349600835c554ebf7a5d3a42b0f8b94cecf686d46e7d81523b1e2f5b383c26a172479388be23a65cff7edfebf76333738b9cb966d368b430fa73977f841856c1e46dda181652581caa2dbb53c2258d910e487b00851b5d3b41c3b12da081ac680880f513fa0554ae3bb9005aa05c460e935ec2c9fb45c78513e5c209597e92ed334d4f4a05d7494154e71ca68582a3739a7f3ab44dbdb8f7fb07fdfd550c150fe3cdd64a8269f272b4463b81e70ab21f660a0ad2f92a8714107784c7303428633cf61d0fa304678ac9833392d9bb3687f6f297778aa41d89dd3bbb68495871325b3de8c089438443a4a36a2da745ab4bcd06cbfa35bd99badcd5c105106eb8aabe26c3cf9c8684167634e0701b9e56aa16f0d0a4998771447a54c42710f2c31cd4bf507065a11e19c3fa22b7601a7b08c76ce1ee820961fa8ff53a1c09872ce16fec4c9fe61fb17d95d44dca498ae84315c732381374d68438fd9cbf34f4430f9e132604374916d72fd84d4ee1f45815211ca6f2f01f54c18022eccc431e33a5bc77dc032797884cc6eeb68de3948a169163c97834e3c5e96a7e2365d60c761c7a5646b2aec95d4abf4bb49a450dddb5f4d445a4f47e9a4a81a3dae6aee859ac12419a2bd2b20532d7379781160161481ba31eb89410ccefb35041cdb70b1dc83024393ac0a383fe3b3a61791c76071e2cb2acb90ef8f56fb3d4c310e6e6b713d020c28df6342e5871b24f70ec93151ba106c28166f0704ae2c110cdff20cdd159429aefd4e502f819bcd23c5254db82c474a1da4893eef0b8d4c1bd678e762e71bbc4261d06665bb234b4a5155d3c98dd19f8046566e0e0c20db8d0cbe4253bbf34e4ca22e693ff2ab53a2eeb072b50fa71a466149e38aa913d4fde7398e2af14b54b7e42c646cacd5dfd9d547e656f9ad2684f6bd992506180a02d1f1e21ffaccd506c6bc7ed93bfc30d5bda912aca9ac7538bacb7e4af07d572447aafc51702f9307b9ba408fda7300008d399aabb17ca570b72af2e3d93dd2351bdf647b14602e897d9fa98498671b84157b8572800919caf606784babd981572fa1264a3499893e7c02c746710f7c23a8ff03ca96e419b7b4349fa32d825e92faf6bab236f07b70e39aa64159a7580710289360168214acb5336f5065e2c77f3ba278fd020d82012a5bd0eeca4502a22f1ba597d3e9cf650c0c102a4b2b0a525decc55ec13238f9556deb677d040966637940fcfe01f03eb3006f9206099e1a878c66b2ad49b1428dd2532dfab357456ecc61c81dcb64c3dd0036f018cd2bf76df596040e5b33957bcd5b5864b978e657814e36cf38696cbcee8a8022482124a5c2f654f054d424f5babe0c7f519033f65f96f579af0ecad97c6ec8b1f0f227292e01a4f0722ee46290859a1e1e9fb7fcb788a6c066b89426b0d6687d67531520cdccb350272190ece7246728ff97adaecdf3accf90de88f37a698103f6623fbe38b10d2e364c01ae82b64a338752dab22921766c7279f0aad4afe90b251ba92765887485f3c8c298813d327cedd8034bc7414c4428943b367a35bca4ac54476b207d63dda87dad40f7315c27d54aa01fdeb9053c1ef956becafccfd04f6ff10a2e712f5fa840673bbef8c5e0c0a62af73f2c86d7d854572f2241f2020db7f907c6d247132076f1ec6b2e63f8b50fd1b604f78e3fc4a2e5096374f5d12b67131736e003aa858b9bb7771e9626d60cef3d86f1261b372dc0d6de7b757ebcd9cb9283d0a3c12d4f35074d831c445dce536c0ad4c41a3816574be9b6c1b7baab8e4ce81e15bf8f54b0559482f1230385b57bb4a93d11bcc3c3070eda6376e53ba9e97a7f421b6418f0b81fd7b0e145ae622df448758fcee11289980aa211d237d21933a164202abffa1e00c098105212eadbef3e7e10c993812c491d0fe8eb5dbc8d859a3eb364b3ae7116584741a4e97660e3dd87f232f9fdd14e8f0e4663f70d71ba802934f2575a9ecfa05955c0992d321f2f5ffbc482bb462af3a1721e7cd31bf71a496fa5cb3e3f7239ab81aac569f0393452f08fbdce1345187bc97735d31de4df1805134e7101abfc95261aef22b06e62243cc2cf2363f984635076975adea8bea7b11739c4389173dba34a1256049ba38730eb68891cf3229d95b3fe7c7eba44bd29be224d09f6b49e883e9d33a0685b31ec98c6ead3954cc24c49675c7e9b4e47542e99489a1d9f807fdbdf12b6a65ac25271d0d7bdbbcc9bf891135ad037dcb5638ef48a95b6a084d7180c4bedc35faea1b8b48b70ea71c416d0fec525543da0f3cba433a2abd61eefc6e71783c963403b9fd20fcf80512bbe2bce7f346cd5a78bd164aebd5f98f08af6dabb67a01749f08169257e92a8dc58ee8167d046bcea0a487b464871df07701c3f8101384cc5853c7d925900e1d8e42278149c9cb1ea7c909113dc0d00d8d94e0e48f36667f46ded9d0b5d67c3c690a412f3ed1ce0b16bdaa3e8f21080abd584d0ef69da3321d29e7102147db8b434492560291bbd2efed6123c23e2b86a76a0e39c03113a5e9e013a7330f9c1a071d492dd35334307357a413fdf478a2b86e69f81027536ae70aa9813030d805a17216f0f46a4f877bbf66f19d5f2771ecf16082e06670d9402986a0dc42ff5d395aa6d019ffa9a7a3ad669ac48615eae83ac6f2228e3b4e0a7707c57f10fba481e8d49cb4894d066da43f6c3c34689d4727edfdfb1c0aa118183092ec5950704f13173c1c0377ce209006d74edf09980654aec591b39538ba5244dd130ec491cbf791855b4a5546f8c0e917fe538460f8545cafcc9f9acb48f7caca4843391075a2d0b8ba3630cf232256af33229f839cd10d3bb1d167f04ad463d33fd88cecccf0d53d54b01da9c244c6a217013a005af5bf7c67fb0adfc193434fa2c598fcd4c709e5338cd6717ce249c332079d02f8318228f6a2d366801dccc1c33b50579bc616078b5688717a41f4e84439a99325f4f894b2557bef32c2c6d9cbe0ee9d7de50134a6efff54d8f79da847f32fe696bf1eaa57e562db87c5d09061e5562ff41c5d217609221022ed07a86c0fc6aa1003cc2f76cbd0ca69f18194eaaa0eac946402efd0859904a1b33cb4ebca437107746d9b975b5c591c7591bd85480b9702e82da18e301e3bccba5e62d61823582d2c442bf28e9b8d34c533192a548457a4ea3f7fdbcc363c37a31bcca673fee82621eb6542a82e25298376938ab35bf1dc1a6914a34c5609703d001fb1a54c01b8194217d40962934168ce333787a05b4ac962e31cbfc9506c13a50ab18c1d1a983ebad2e55203ceef66591383e90e429dc4778d5cfafae7c53aaffe1421ecbe69483f346ddfaec85e00b636537e7e3c47c2a9501147e67c201423d1d8d4cb793a2f3e9ddd367010d12178c0cd69cffd744f41f1ecc889df22323a59c3ca2f811977ddd01d5e1d2cc797685a497b66d2c40479d97f5dd8748e71ae908cf846c0004a57a523e0004798c0ede58cf931ec49a2855eaf6196903d4eb71008eafe353bc01a458c9eb59302891ef24246f88c87b110ed9c467815908b08f4c7d1e06100ad6b0688be11fe4679742992070284bc1eaf64d7739113194d3a94ea9d0434de9604f127ed4ff8263177554e8ba709053d58240063f129a2cc8847d23e27299c3977b30a1917639fe0ace6bddd55550ac3b46b86f8143c8e574f90a04bd5f4e1f4809476a8695d6728f8a2785a5ddf8434beee06292cc0d41376eb07bb7ce4b7fecb6d97cbdd037d987f2007404958b2e68335383002dab12ae66665f23bbec258f773a890ac024ebe7cce0378ff98fc65932fe920b048b64cde238e8cf2edc933ef83099b875dadf5dafb57662b34684e3ec24c00741402bb9800f96db88e3defa852dd4769b809c01933119f5850ce3bf2fd5392dfc3edc06e8418ed24975284f818bd370618d27eb25d2d5651ee14e4b641aadbea1466c7cc897cd8ab5b040921d47c81ddcdd40eab60b627d98fb901a4330f08f1ee48f4fd00dfed0ec6701a62630ba9f76e1fc70c819ef87f0d37e449d1ecafba0032e8edc3a7fd074819f1d2035eafcb04ff5fc1626370d304129ae43ad8c28e28f5290388eb202a99d4513019a8c0a5d98ec4722f16fa11597e8c92d42409c0e307307ed34c372092663226a7d713cc0769cdfe99c8d68fd04dd238537e552729f9eca6dbe51dc7cafd7991a32406a0ab83eb148c0f6af968e0ff5d0c309ee914b7209eb7cd097d6e58770c1090b36cea5aa82887b510382d4ef90dc07af43772bd554d6530581e5a61a39c373d23dfec09908586bb17d7a9bf927a881fb7683910025238a510bc1aadbe65a4c7d3d4e536e65fd4471807d92693f1d2ac4df5098a0a676c9122b693449c4b857f11a731ecc0955a3039c9c99adfcbeb5de80c1c32e1db47f3849abae95b0e9a0e828d22347313a5a05802b80c4aca044a23283783f474de30497df2aa6eb0a8b47583ea51503a7aa850b29ce480298574328faf61d9b73c8e941c83290b34119cd049945d20a894cede4f30847d0a7e398f4f5c2dfcc421b4f8703be05ee5d907cbc5b6bb643bbdf2df5211a237216daa53d5df69b9db0a66b44d52a2e9b77fb2da11f73895145b9882cc4d8e1ec296cc8c190064e5a845a7f04b124d5e239aea221a827e623a0647d684b63e4903d6a301124035c637ad667963b6970a34fdb9aa9171adf398f7bce92044388d9b4d45bf7a848f58f4a62be5a1d628f3f65db1bbc612ba109f116ab21d212ae76e34d8a939355d62fb512cca78e0e8896df1b912fa80f95681318baac1b83a29fc12b8e6a53abcbff92c52b86d06752aa16b925090744d649c007255af9de3757195f13cae08f40247f26bef558164a89b049d7362538c417e27521e51a8638d9e25a1d11e20efe33b82f0f41aefa25f8b4b1373589e578e2fc90eeda38e32ad918e09838fb683ca2dee0d46d91d66f5c4f1eb0e746b5ab2d85d4882871ff59ff8f2c48ad55a8262cae81305977b2a5b1dd92d4ce5d6e4d11ba94ab3940fe88768e6f0a7818e6abec6781033933daede204d1c0ce0967a2523093f7df8c90c620c82ef489f4d4c0c5c4f83454296b3b2ea0d63cf7c1760cdf898d690bd52c058d6d580e30ac32833bbe934e570d969af8a0adaa898f8a91d4f77d05dcdf8b4999e77b888ff51bace4da53d360d9e3724d48d9d4da29a52fcf15de7bc23083fe4d987d8ebda29ba744d44248c7bb27d66cf52247059bffd8ba5a1770a90ea3be94d3bfd94876be2145152d565d3c245aacbb7fd51a3216297b2ba65b67e58a3b8c247532ea5801108dffba0fc18983986ce024919394798af2ee7d9c4386d76d1fd6ecbe58db5914fc1ec484337f61ba8ca697151974627d5b9779052f47321b49b40f78dc73198cc8f520f8b2b98d3efd5d90fc2c4160048186668d8ff0f771815c15aa41c5864310b536e50713920f56d100fc5b01f38e2663388ac9c319f7849cd521c66ac75aa5e309e15fdd9660cf5c048a9987cc9900b8aa46c7638b3b477ea41c781ab40d1513abf77565426e5eb90c24b94a118843cc6ed46b77820f5f4c95895b8ee4ee78719dbac40df8ebaa95099ae218c95e8964aa4301e09c54498dfe550c3128cadb095abdcf755c51457087994e240f60e4d89e4c9b9fd0c831241269d44fa198e25f7ffbdae886694b98b4dbcdba1115ff53c898ac91eb82bfb7d8be8bf81aef762a00375c77e8f4a0d59314e2b9ca2d28220d782fb846545b65eeb866e5b381ce11041e8d33cb12e7d75a2a2e61903a73311d899a4245dbaacfcda5985bb081be3591445171d34d166a2334b6ce17046570d7bfd86bcbe5bae561cf5a16b1befa109456d6b58c015751eb93ed0fd3fca93df195bc9fb69a5489faa4d841a9d9fa9b47cfb8a83bfc279df90733377e5d8b71214b340ecf7e44ad8647eae1bb5ad3690dc14eaa4244c587f2e6872c19e98f35532a1ead034a9538558e98a267ed4e846fd143588287a0a6f09d6297d9c48a3ea19031c8e0afa41b3d503f00a4d8a14f756c85c8a342cf04f5945a42a8034927306e2f0bb2402afa17fdd9ff873021a532317c74a12742eeedcde98068c9dff1d74dc93c81efdc141794d1e2d2097bd3da9c07be8e5ed5667ba72fd318ecce7ce29f8acce02a28652ef113f4366ad3fe2e3f8a533feeb41c277b78a918b55ac9d10beced8aaef995a2007590b64e898e14a4b2e22e814499cc94ec64e2d60a3018959c743db0f480459776364431eeb29d33088437f4a58b03e0422965d09b6f3960cc1b0fc14049c5c6aa456dc735b81dde12f560dc6b10e7b101bd3d6c0709764db8641e8f231841a44955a3d9fe1d6ee769c2718ada22ac9e4dca6bf7cf5c372a899e6e94bd24e8d77b9bba6d919ad5c40773f9c29a8d5c06f13db96579cbcb875c1849b648e95afe70b10589284a18d7a45e1e0c831dcef96148e11014bcf9cf2eab58748f43322c34231e322da3fb779dcb985b1b5c037868b678b52ae14e97f55444f1153d5494c33f98373d28b0b76c5212bf08d86188b60b198b855f1c131f0afd29d4a56c070365d6615f247fb538e02c9501b6cae5d242726dd70a2ac0936ae2cfbe3a4e1d513cd9a3413d34fac8231e7008cd3906c5c005bcb8e302084325199a8160928e0fbbe707e50a816ae7870ad26349a7261a2b7c83b9b794676a414a791e83aa3bd11c50a55a2a922db0f7d1ced6a2dc73d03078c908dce150002fcb523c842eba931dfe81522660752ca9954ec869355e25899c29b88e8fe9af346b045ab4c8722af5d967c9deb274d303f0a58043ccbd01ef6df51780025138530989aa776da31e9e3656e0eaa509f758cb0b95405bb9f6bd38b8a6c204f77e85b6acb3d7dd7f3cbe657269f628159a87c040ab84d5f73bbaced9c6c760b25e1b4ac127fa45eff4398c0d3beb2a458602675a9f1e85ca2f80bc9717ff5b0e31a2a5d72bddba01cf76118bc201ab2399949684245a78bd5d034a2f32a8dffe15182ce14d5289605b78134c1e14318a3860a9b2925a2ae2182ef76d7f8edd52620238699e655362997ee3e0c25605a8c66e56d0063ec71b4c95c058f748fc067bbe2d51de738a9a44c3ae29636eaf6d544873ead3233fad47c56e003bcc5ac165c0a596c7c9cd5bfef070e380c83caa3c302396b6e492a56cf32d574bed681abd9541482529cba8d3b18c6728d70a7ce85d988b5237a58406ad11e59b3849a99bbaf2c8ca8e76a6d07ada48e10e28f54da62a494be2b0a735e46f0e746810c736758c29e7c541e5f6e25ad81942798bb4e86b4337eba807c2b350338074577540d00db51084eff2b2191594d5f07283d7ceb9d44f28c5dbdf9ad62fd8719209ee5f92d73edd626cbf41329c494b6cd9186b11821fd578a210ac73d1baeeff1385bc168654ddb44686a7e9269d79fe7e893576044228262874aeb2f41b3dda05969414afdff55124c8c928fc7ca8efd9df5d743c398a3fd809223637c32e44e64c6720a520f757045160000e1d2f7110953f046ce3d8b07951e1371a0201990ade73b127def5a3d28989ab6099f99f878e77a1270ab0e1eb4d31e3814d8cbbf27faee817c382d84ad9bd15a047ea007757dfa149e6a3bf3a0815610c6d1c6dbe55eaff878139fb61ee62669bc3b16499d0e03c81c9489534e8f1ec66ac4e87de06254806bcd8c4f3a9fad53431bacbf810f48307f3c03bb170f4401997bbc784454951d0791c1b031a84ccd02c402ec58a403f41f8081917dc7dcd2011f5c741781db8621f08a4e6938c54721e86cef219960610cd140a711c63889e27d11eac0096ff2856e4cc60e90d6abc7c7d8fb6f346919c00935a1c965708bb5a268853f2ae3d736ace597da1739ad7dcbecdc6cdaad84f7b21d38742092ee98c2b98e10a92f909ac3671a428b9a4ef035119414c6f33760e38b7f29bc40d89f0da6804de14c952c81e1854cb8236de76a358e00850ffa8007276f20c3e4a9ab9a3b52956a3046f6307733600807ad049b120561a27b1ad046158252b313a5e3e96415ca9f7b7074295bd9b5ecc6984ceedc2e33cedb721a3231e0fcd5cc2ce4c16601e4bab640f524db96ef7f59fd7422dcaa62a837a87ae55044309696f2104290389635914df028b162a54e011513a0c7699869bf8fba4bb8aa984afbf10e11d9771e0183a7113a68d5696b15c4a1daf776423cc81155ac726e7438cc09c76b4f4acab14cc4ead34b4e00f834a61c025b2a3491d4ada851e9eef188d6491b8510137fab8c0ae80af76c916a77d97751d153cc77f2dfb4350f005536b4cbf80e3cb957faf62c5347ca64dd56e550fa443f2eb09ad1b7509cf454e4775abd09b27729bfee68dfd22f747be4180204f7874bb86aa653956654025c42aa765d2630141f93bec5358e02ce36a392234f4ceacffb711fe643c8b102d9912d5363281fbd5b6d9f954b372e6b4b823abdff39c14cd3c548b2da5bfde879c5527df6965bde574a8433ab253c6b247ee26eb878f8ce7104b23d1cc4c3a9c048b78791f4cc1794f78017c7fb0ec6f32e7eb773297717637ddc5527bd890973326702b91db6d470f28d2f4c15a2e52738b8b8fd5d07bd7ad632b1d57495b53ea3a3e0987c0013a214edd1b6caf89340a24faaa77a0ae2e14fe26b87cb108c1fbc029e6ef05ba5f225d5a0e81cb2bd263ab413df501b545c752b2ac1277706566176d4e2da8464225c792fe5d0fd9bd7ca76e21541d904b6a6d68d1aefe6aecf30be9d4a1ac19a844e58a045d0b0d72f89e63f446a9e5285ccaba0369f21980224a388323a773e6f8e354559a310d018fb083e3344e688c669ca66d0a2f73773bd9851c31b89a9fdd6b58f26d3d4d69ec0c1b3eb85c3bf5072f4f43d4f24841538efa8495b074852f8d0d08d04ead506544c26ea8eb3f11b458764e94e4cd3413dd01fad15ef124d09ff2c05112c6d241b23dbade6ac78270297e4233da364ccdcd935bd741d5c0c4f33d353ecdf5f27fa139943b66cef983f3b0eb52524d48f36068598df849f621979e142ae6ce5db7bc625f8d50c76c5210bbc8c9a760be299d5bc415dbdaa18d8a999752abba3a7c03e2e9ae5c18a2c07b0ec6a87cc453528b0d3db43d284c1c34ac7ae09892f1eff0760bfa7a9aeeda646bd513200c3e838edb03d9d1f5ada3bef55445d08330a1328a74146c65c7aaef016a487de0b0411a6ab10fad11ee190924c377cf814bf7df15fdb28187b124e496551b0318c461d4c066b17caa4898057e4b101f6a2535c131e93f2656844af4f74b11d6194b81728b12cf7257e266ec0788eab326e423314336a8290c37eb2387243c74a2624b029dac32105e92df6933c20d49d223c48806d139f0bd4bf3ee32bdeb9b56194bbf56521c2b1f9f541f2a3184febd59b8df98b82f5d41fa5fc46638993c9a252581016133f44f012494825cf94b5c4a25b15bf93d241df0e15ce74b5b23832294991bd47d82dfb33fba89b1536899b1d548622575234d99d7e40bd4511a48d33ce605a0288f78aa24bfb8add76a6900feed2556bc1dd53fe809f4de69406dd6a53383cb30830e6c4364bb2b544e83d506b200c0f0e4e72bd8cacc455714f72a1b1780c742fc7208d1fc461679df74d4338f4a72e53c91ed2f39a6b99224dd80adf59b57cad47fe3b782757d81aa75eb2a259f7bc3409c97e88baadfb2c5516f2055a254b7458379ec1bf3d99cbe2487c1eabcb02591f221a117a21f27faf46c41f54a58fd2b75b6c8512492cad1407a28fbdbedad2dd1f272480fa1a8a137a609b17a9840a8ef7e0262109e738c3878d25ca3ae0f3bb12384f383ea126d1d38b0eeaa30549cb98ba4e934a38425d1494c0ee07a3c532935f6ca206d39e31e628bd85024312f41d3f2e43a54bebd7c12a79b4a25cbd3f1208f45ec814151a140452214157db8f2203281c667606c9bc04cd808536d0af631c6bba8dcc8fba90d03445351425399b782cf1bcc9a0d1a681cc7460f2e2ebed7ff427b53f50f0d7792ac81084c747eb09bb11418a0d7826d09820d92a88506162e8d3ca361ff2bb5e690f29e38b686a7cdcb8ca096e18d79433308005379affc42d2c0000c7f7a294479ec01bbd6504d9f1b138989bed35b7f2c5a0a9ea4a38ed6e6fff4330dbe0dabe0e9c54fd00f12f4972929aef3804af6f01ed9b2e23dd74d5848411a5e510f383f0c50cfd2f1f3f34ecc478c85ee7024405d5c3b2112382541a78e83c7d28d11ecf1f3041ee89474982ee353bd5e083bbd39a6b1dd2a49c3014ba8e13a1556f67af1d4ea80e93d79f45b2d56435af340d9891559cd9a1e004064e2819f422ad00f22286f731753bae2e2516bb95a3d3e4dbae7270d9ffb24038dadf655f359a504641706d6a4ce2911e3cf875601b10f4c9bd3c0afd63385e9b8ded67155a81dd4bc12915f8f1a89f5653d1ae5e582320d37d2d1152795225c002609e7f4ce3bdc1ae828a211348e2f2d31bf56d6a83dc575758a4691ce3b93a019c4fdf6482cec52997b840ffcc2ce9cb8f09ef390f414c31e8df0354e4835f7909c4ff0937e721ca3603655a0740da005fe50d0e3cf8ea19a6b908394f335bb32e4ce488b7cbf6bfed5b72b716d6142212d5b84335def5fc6c67441e019b66efc971012e759d63e191712b015f74b17fd74f73df20080f085114e40a299102f443c4a9f7b80b5b04bb6d10fdce8ae4f43d125e9068962bbfc7f9e86707a1435d708052d7d194481b16981a0b0e6e046ee5ef86df8da8377314e10c7a43fa89ba59ef28138d62198a456e6ad043fb1ed1a6948f5930f9e2d15f6117a8bd30797bc4625a32ebef4cf7ad0e6fb96cdd6a4a68e0705f9ae9425a78c34001d3606757387d198d5c9b9dd8a350ca6a13b79419a9206415cf193ed878f093bcbbce6a3cf4543c2bdc26d6671c0c8c561e24acca0d62a619ab8a3f6714cd5a5de3907631311795fae3a41bd1dd00e00b1a04cff09a0e1d52143a93c39750e3ee1b939115c7f2bad35e693b374d474311fb216f76e798574ddcecc44abf3636370d09aeb289745d09459acdf8e7e7e804ee2e0162edf50f54d9dcc06ca3788d108c742cfe24b15d84a054a26a0ed7c9f18150af2b19e456ec322b45ddf5d1680f1b26c83c43985626e87cf71a9ee4eb7854715b645806d2101481f7b802c0de1ff3c4eb23c6862635634928c2c88e79f8b8f702e9a0d75250db47e673d11bbe0f6f11d8f41c269f9d4a3e5e009237270c8110e193bf4598f80b3e903b2be9c7abfa1c23cb9283a65126bfd43871730542204b8de637757d1119e728961f8af36b766e497e69b0f400f49e58afc8a8ea82408cacd0ca7c20a64beb8fe5cfa5159c93408e5625d62a2a17c5314aad9046dc28109f8b3f6eccd0b4c4fd7387fae29d9504686ee0067ac89abacef16d135e42931503bc62121d3edd0ec70016708d3cd00171071f24fe757121abb1f3303d153283ff40400a727f6e513182b0a53f5ee6aa70b36c5409c15af572484aec88cba97a4ddcaf8ed73acc07250a6b32bebef0741ac4cc17c23fbdcddd600716e9ef4828fc5ffab48f99b86149d8d3ef20ef979a377ed5c4279f238583419e27e23b1d135efd5a6718a3cc80da0d72b799322bf08b2d6861a832c6c7a7e64057834b2864c47dac012c8377c9dd84575233a1199ae4d808e06d4deadc5c3b63af517fbbacb5027e3abec698f343586525a7b78f7d706fa97853a029e920f5d4b9a3982aa251e9f1ce85bc9a0f523790c954ccfdf6f6575b7ec3096b959b734423a18b50e5301b75d02d00581f07170be7accebb8011db0de7c150421cce33d321e19f8362b30b5caa0cd1e96eeaaa8b810ebce1eafce8a05d293f25ca819a7006e590a18f18be0240cd5a2e0864de2c240af1828c3cd4660734b6f77e948b49695b8210577175b00c795fea9035a881712dcf893a49a3327ff80907087cfe28ae52da1a32f74c27b76447cb8c252ddee30013dc51685462994d10df0a78d981604ea8931b3dbbfba5ac7bdccd11989966951b9851bc7f945295c3bffe895503a23c656ab7055772fee99520f289404e85fdf5d0fbc44b38ea564315aac69c29eef10b68643c9a898880a1e06b3de2084cf75ec608902f8e8e5f372ac5d70acdc3c080678ebe8f2bb57bb5a8c0dc89537f5c640f485c0481cbe7cd50eb70ee84b92debb850255b38a960a882a40dd705e2ed73c271bd3a9e6dad38f027103277370f26d1a830433a7ea18183181466ebb7c02559d6a9cd5795e9f8f3af29f6bafad11c00e96dd59bde573ef056fd9f2ec3e1fb1e55cc3bb09293641e8dda3faf28eda68178bf79bb7197c66933dd157da3e177c657650299111ebe3e1d589d581e9bdd958b6215aae608d7f4a5230930953d938a9e1390e4c36d25bafe553631cf6213e8372a7c9325ec1f625d5123734f24412cd8a3a81b08dd0e3e8c9918a788daa36567058f8633d2e036b5ada9f85462b82d72115f02989abfd778acd90269019650f5f43a9dcf68905635c0dc5406de1f412b2a7b68111f52d873fd690148b534e3ad91e7864c4254590572c566de132a633cfc3099b4253969564c34643931fbe946a528e33cb3558000119f8c9ff9466617e9b3478f7e1f180634de89f047f587cd480432505838cddc2381d43cad2cc1d794252aafe1ac1e45d0e87abb81989c3cd30308fd11ecab6b294218aa8ae32f23c22df43f1c107ec562057e6cc9cba9868887f126047613912adadea09b76d7142bb480e22162493a7e76bbcfdddc9649342613c559676e21b02ac1151017104864b6e63861f6e0138c22c2e529a678ff74b24784560b736b9f7e5491e60ed42f6984f825a9806ec7aa1088027ae55c54f27cec722fdec57f669673b09969f9776661373251a21b07a7420c331890f2b8cbf4b49eccef1afaf533fb014d5703cff7c3838b03df15d037f93d162027c9a7eb30681168fab5c98659f4e619bcaf50f1f3b342a2932d538eb54e4ff129f40164cf4e6cdab4c682e0f43a16db298ee74d1d6bb639ea366e55eb8ffc559968476279eb9bc974ca388320c31d88b3a3d9e0a6aa694c7e91d9b22c60ed2ee6b74f403ad73e27c0266b9d2686a4c02ea7de6a6b92585761cf071b9e8aaa77aa39563ca15ad24dbbeedb79668a6268f8517ac4d70b19f939d322cf6e662222817217b11bef96b96e0b500592b0456da18da282c9ade50aac134105fdf720c62afc10606c1720d4c5677e19324b079448da3a819dbaaf1ccd8914faa1aabc33dcb789f8add8ffca19cb985a62ab5fb26ca31e664f4065ca0e16188447321d0510416dabc777b75488f979f38d3e3a1bf1b94aff08fdf5ad2f8895e33829a02e0f1d3dc1f38c3d2c54f8936593289168888c62717da49eef0c0b2e316431fa5761b32602081e99c4ca92bd244ba404947d6b36eac49004b1e96f9aab64c2a18bb505462a04d56b356cf17aecec5e840185c9c265ba33244c27f107eb5b39d71deea98736cf8b8e862239ac07e9b0ad52fae1190af7621126b7153d7c7969aaf1ca8db0a08b58281af4fe2e5dda836e74d986cc040cd879fdf031a484aaa21b5a4426ccc1e2d5bb2869468f2cea1f6fae5c2de37955ba3b93a8401e3822c708f5f0f6092340fafdda6820ef8c8cbeba05d12bfde54868b6e97fd6bad73d0443957285bed36ce0949ed301c620cdcf2375010cb6543579c97cea73a8a62deff8dbe1c2fcb19fd67a1af8fe87ca6a89b5f26ee612925f66fac2fc2bc4ab6e767616f0eb40d639ad034940929ff0f0e12d47cb4f10169f9da92322ac7abf85f02ff41f49b9719377613ef4fee0faeca0ebdf8f3189cbf672b8eb56bac98a000bc8dac7f28951fb5cedfc13c85126d4bce49c40a2874f0ad203d53595a170c26e4b3a157c89afa896ea56bfdee8898c8dad7a4f507f4ecb17b5f3b6067cd93edc69a332eed3be83e8ae23947f34f7753550bf2233e9d5395f013da7d1eb8078288f86a717b095dee5cf4facf380c312ade650b6d33287cb7fda821bb592e335908d98cd7fe193824bd38df3456339adfb20fb0cf40a00a952bd4396769aa0816b2203b85a7d84e78d2f86a630653667a1ec0b6111714510e1aa035cfddf07270f650cdb7e0b2a88bf541d60c8f2bc5c949e6c306e8a658ed900f412e4893432945ac56a631c28517c5caf353c61e0e49477205407a5d6a24a9cffec4a2659dc2d08897bf17a2d2c07d716726a0703c1ca7ecef30e83dd8ee4f5638a6240c12778a0c79cd3fac560a098e2575f85acab17f4c22bea20605d29a75898108053102e99e20fb2269f07f03f50b9b437f40db465c2809bde731d08119f7eeae05405ee0b2c762d7c91968be118cbda1fd270a153a1dc43bce4b311f04afcf59450bba132ccb9624acac6ca532abc91ee152fae2f3bfdffe91dc3de8ecd21955632a92880a288a5e81f818e0194fc28b5230ec824483cbe87bb7a57322696e1363cfb726e4ac1c7ac2ae101865982bf3b12f2329d330fb759e229b6763586d6a914f5ac2c538d3f3f99f5610c85c6390b8eeccdebb1f40ca4bcdc7b1e70d234f1b1726a63a7a310e6d75ac3175926fb81188e36115929a60f7e11776487723312de6332c86843eb926bb4789a3e050841c469de0db67a5ef1d820fd1b53e4c4ced48592631a924a458bb8229e1652c29df9df4d4197a23c3b0956ff205c87a7989c96c08e1e82b487eff48cf1d19f1bc9bd731a30e91e35f7145a91b302dc6b277aff48a4c1bf49c9ae1d8a4b52be7a84a710034f53adc1bbd5e9fa1e9acc818bd90806fee41064e96acaf3dabfe6ed48c31f7afd42ffa1998db24214e5fce753ae6bfbcfcaeb8cf741d0c08639a9a1ddbd823804e307e686b441a258896696720e66e2b6e3adcc8037244ff79ddd8d66dc45ec72ec5250f4a46208a587ff81df4107a341eade2948efed592d635a6ab4086e52aa6b11e1507baa8e74395b4178a234a7787309ad386f064d36a5ac65b27dadc71e69ca7caf7e9bd4c65527853e9e9ce350aee291a4bed75a7c19b19d6e9b54dfbf3a118f76374dc4451f34976c3e41441c6c5fe83b3209aa79b510867878be1da9a11ba87047e95b682747a9a224ae0053f65d2bc447b7700dbfdd666d8f47408a733b0b0d429925e39d699d5d502c444aadecad08659039a04f267b6a32bddaa84975386056fea8e05941596f14126d4b070514f30f4c3856ad82b54305054c16da81ee67f380aff2e4b3a536bc93b7a7d6f7c3e041e591e3a3c38929c1e6d347c9146ac24049da7e8e14a4927698783745f00568f32f9f9e0d2b40e66ae426548e2edabf1ad1cec0443b042ab87a73dbf7109a35f928dbf6dc4896804e01487ce442dae88a8a5a82d74da49644ba822e5e5926e42e8d08ef491621d319d2aec5f3108af8e2845d7957627cd6814a6662a3f655238c6f84cf45c39f14e64dd7f2914ba6e7762bf27a37faea88e44cb91cf13568e5be88c812545ac2272dd9522c3bd1a88f2c7ba35422f63d0c8dfa5e1323d02407733c17a0d7d42ec4dfed80d4d614b94a4a0411a39c315c15db7bb401549071a1a292b5ee6857bf0e44adf548f02db2bda095bb216eebdccf6834a9c67d6b5f396d3050435801c56d15b10621b7cfbb0165a5576b5e127d9dfa98abb99d695da0aecceb30d18f1a2a7b96b393b1dda3b0ebe73c082ada712c92062c33e57beade98c76e342b1ee48d14f55bb96b01545dc5dd640193ed6491f511d94beac3adf39b2dc71a3f0367658e5ba51938ba6056cc327009211a7b237fcff4dcddd958b0488e43985d2152da5097251847c0d0c3ceb16f213555a4e9e52c5c2a5f8f7aab22f10bdd4498ecececfd475c889a151d3774c793af28d118d1df475d582b3f3c48c3bd9e2602d579f4189c4d9cfbde25a642331b6cccb0103bf7b1bc0cad432cfbde653eb8b12f30967434bf81783cb04d290852afa0ca9f4898346bc50e962e198d76f4b03bc7dea85551626a4783b40a6bf28b3ba6a300380de5ef351af3acf1b02001e337811c2b789a0aae6504e4f0eedcaeb313ab722360ba281a140b8ca35ffc7dd7cca01b5ba140942456db4c99ae2c1a81e82295cd7dae75129849a6b69f483a0382f094dcf98d9af921983d97054b78b48ca4fb4478315334d7230482e2f22d667da8bc145fdda2ffb3fb6439cefe2a04ee2b3c86d57cb11665709b1b313bc097e86712672bace5f7e19ef2958600f954070bd4d3230242f06d397ce8075b267600ebc181b850019b0bd78152a6b11de4d2b461dd7fac296be19e8115b87374b5ae1ef0bf9595aa54088a9e0e773182b3e8fbef33d8811901ecd0744ac4609ad123f303f84b583524159624d8b1d141b21d168b2885aec512224aea4a5507fda2a138643e428e5694d88070cb5424714844d4f42c9ccf23c1e3b33ccab7b7d0e22bd0cea3e422a84aad2b06419c331b59c9a3cf015fa1e75643a5b60d51426853a51788301f54398c5b0525c7b6d5303497704b594ec558501e9efb8c6fc0f917b5106faf4c9612546904490d6832a9b62bf4c022ad3a176a1cd0b11165e9b179a0f84ab0f968b98c2b0a2b5dd65b0ca24d6f470fdcfb6d020d141c650a566be902d4ac81b15026f19d95f11a14fc5817e786bab09b6bbb1622e357f94ada0d9fe575c1abe9f921740d764ee715ec996ba33ff211e7c500d2c2aaec31b6c3bb71cf52b7438260ead0811936c1b855f80a42c90b7b5dd455d7705f754093ca08b643685c9eae565925ed516e618b32cce0b4a8d462d0e60d0a5d9b977b71202196333ca41ea22adf2ae594a0a84fe2aedcae26ab99b40b3eaacd4a1a717826fe4662d2a0045ee14b568296ec3b0c6dddbc6bef659ad3ad64db3b9a69086a4bab8a83a567d4c955d9ac0b78673441a89d4e296f3b4d11ff8125d9b9ebe72b9ac4487217bd0a8f9a9d0cc992f37df8ad261b9615b1ed1974a8f51e47abece1673211439ed6acfb4b6addf9216a3a38f605e22237a3171f439d47a1b04d5db080832c166d2d521fdf940e227a6b4f92e7f6f65e05ed26e8de7a27a5ac185867c722dfc69fc722e3c3eb5bc8ca1efbbe54b4ca6feb7786797f5bdbae6549429e89803c6fdd9012e9f8cf9ef588d81af82bbe89807b24277547b26fe6d62b4d77889c7314cc361cb217d4b6c0587bdcaaff5bb2887f726092eba30460e0cd192968296930d7d05fb24bfcaa25b74ff71713c8995386006f04409770f66c73d2d52e3eda71b2db3f56797f1268eb665809d0cea11db8ebb4d3a70016d77fa04156e333d0a599116b88d3eb2cdb31ee0a355942a13ae7532da168f548744bf82e26a5a6346fa09893d10c9e21f191faaf9b8b9717fc75a01a07ac13a42c8900e3c6d9520bd2dddc98a94708d27094bbaf4f12528f8fd6e1f5674c55f7e2a23363983faa892aa6a90e8abb322a16428d06ec5eef865283eb50e1cc7cf44b791ebecf8def7691422c7814d52ffc4ae249c4546157d90b03db6e05f093a3eb807033449d35f94a6d16b4202a0395a10bc72bd02ceaaae858f322a7238eda83dd31eb3e0ddeecf106383096d385dbd73e31a8f931a2b6db13110c1c99c1f6d91c6982b5195235b1a6d50f260e4aab70a0ddfb2f820370220ce7fc6509c8f4644ed289ed2c902502bce9e2cbb1b764e0ca62f5b7e0b216e1bc64e245727d6a1b362ff4d7d312f42311733c03adbd7905b34269a01190e32180e00e215e9089402679fd7044f0bb3b6985a41e4e9910d038865d4d2f7719921b18c742ab133dbda419201e8d7d2eb68d663e55785787ea0b51a6d7b23f6373c8389e6bc92acedb6854d30ecbbba0532f242529203ce5194fe4d444ffc88af8c9454019fed19f225757d34afbd245254a8e0f8f90ce8423c4e771919422dff30630249bc7e07a046c307082ac5282339d9a3af49622c13a23e5f9776e43ea1106baa9e0e3e6158878be9e8ba146098af587757b2d6555892adb667e3a35773a122ada2f8c3aa068ac60c899f551cffa1306235b0d16432f75a039316fb7e911c4441c7e738f43eff95e23b76314f27f5f9416c7c2e39f80dfc9a85a136038da1d497db97a0ea585d51f3fe19c150769d7cdc7dc231afc9ebca3e3d85b14ec4d32bc708565824f020f10046ce718414270de98bc5145c27a70a9df39f161a2938f19c0220bb43ad0e3a1190acdf12ec7992f08dbe000d5a9393066cb101dc3631678e636f8b567ed8f660728a07bea9e015cf6d184a8e46656c0b110f1cf0cb8bd91db98372b3f65b695867532643f46cccf3905003916e6b9ec342ecfa077c419b4ae3a2c2acd98935c52949af28dc165cc6a6d3e7bddaaa7189f14a2abbe71ff836aa5aa239c14598ef600f2d17d6341c973362165ef16bcc4724fda50d57c70f882a1793225115b2ae14e64801910bf9588acf75130787415e0f0639300f84e99216300ebec002e776017e749e22e469c2e9fb471df79fb2a1f9a221f6872a7211de687fe308666ae626e543234728438b71e8a1b63d0a0146d670ad17c4a1aaf58b219da611524f0bec9c1aa851a93ec5630be95ef2bf2fae5d646fe8215d7845a2a2e75bd7c7112cc8a6af1700c76b367b4517efb2402f41d69734b8961c5fdd476cb58bebd1fb9fc1551880c1adb89793783d7a6fe3ba3ce0fc93049cd687572f0dba81b7611e6031012a0ca8c3d238cde4115bbc741e6d6de44a053375e8f9a1b2c428632215c1fc5f7307adbb171ff05aaf5df31d403c22b0eb1d7a34804e8b9f78f1f24ae012f879c23de9bd1422a04d721fd2e2d1229ec467c293dbb6ddea7fc20430948a70af1b799702f6f4abfa2b09cd9702abf8f781c7316c3f183a0855c8ac780482d69627b9b1cccd2b587c2e0d493c4466f306ca5ddba0db6b3e4e6b9c2ddaa3abd8be2916a20ca05bddb1e30085ffad0e2e0b745de6dc375fc654a3d6eac16e229e587e4cb60286fc610500218ec604694517e5ad482a9acc0bab3422c2ce459b40c4ee4d642eea8b497067a5336442f12e782bf5cc4f3174c191391414ca14f488596c1b94faf5312ba5fc5ab2a39517a59379b912c04b66ac4ee9921db0f0bd116950196454137e2e4e5c4a5388bc1d9b681d1381092b7cf66e20569b7a60a0b285581562b83e12cc8a98f5db2d0e9d06a8d5ec1f55bd68bd7c8657c5f6d2a1f4af1ad6a001c2468a4974506fd090b55ae1c82cc14f2f3e08f2f5418f2b8ab81c5c89bd95a1cf0d6d1556ef79b4b25ed433dd4fbb0a85c996a4ccad17f68ae145e918f72effedb82920fc2d0d7a1364f1bee126dcc636464f63e5616ed1b04d4c9538ba64a35139a7c83ae5b695887cb0a589395b4ed67fd4a790efa089d3a39aa4f20fc14b6acb5da71f1c9b63d9bf7d433839c896dae2cf9591abfc769e7ce804adb31e74d5353df20f7fa7c4f04d19abb3d8e7802278e563e86aa6af4915fa72a144a4285ef6f0a32821478a5143bc21ac97988d2a1a0a7ab2a5e33f5c8ef8499ee053fe9d2107382035b3714f3a6093c60e5678489be22d6e0f08a96a61842a561c25f3108d121eff5ca7272667e061c2f6103dee1ca6c0af23240a45fac68d63f78ee3ad0a761a2b6bc74d797802158580febb9120034ed3b983d70b8d5bf4b229fc1dd3ca21b9f2e27dce0e4598e3bdbce566c66c2d5d40e4c5c0ae61dc613dc09f77ba2f430f64253bb0bd10475f57e86a915e912745a6ea26d8710381b68671f997f96540f18c5905616cc8eb784116957d891607ea2a0a21f73b5152a2ade09c8121a9e94edf72469da5e2ae45979429e76b128cd1a6e53f49f08b861b12873446d88a8dbeaa66c709f4bd74c5dce33d48268443a5bf1778d775e20458d887d7753a225eb5093b2473dc74d4bed4ee1e46bc1aad5927d9a3a44fa134839f5c43a21a9d5d0c6a1f54acd1a170b5ca16e9d0aa54d4aefccbbc857145b403b5297b84c2ea89735bcb2af46380df09aec342521a1794510e70f4d5a3ca4fc6c5dc6b2d884b3e32bf85d432e464834d510d38afb74cbe7805e2d72a0e5658ef367ce804fd6749ab54f2792860cc59c51acd8a0b621e1e35358014c3203ba20ea6d5c408c424e07f96c364ca480375499ad660073834648641fa4afe35f38fd5a90b24ec3558fe7f8134202bacde290ff668c7e987dc1ad1b579cbbff2c086fa6a03455eb820800fc19b45b2b7243731ce67f648288ecbdb79452ca24650aa20615079306feadb8711cb7e18eb18cd5a6d4a6acf56dfdf9b65a6ba58cc5d9c9f9dac77dc7755dc76d954ec8a665e37fc5e2d9704b8bf8da6feff3fd69f48ffc8abb06fd4fd322ea87f631feb6e14fb3585a6de55194d026fb6fefdfcd772745a37fe6cf1adfb6bd7dee23aa0707372b6d5b4f6b1cfe66b66ce1e245071dbaeca094b7e7b6edbf9cbc5de7691e31729d9d37df280cdb44d6e67316999e8c38d1738278fb6dce97f127de7edbb6b9e57210c2874ffd037fa33812412eb77b19659451c60a717c358eeda7974b1ffaf4b8afde1078e30d91db7b7c7db04ddede7addf6b387ed27864d91b53d872153646d5f9320936f718b53cbf65f2b6f1f5fb107167bb68f44b1a7976840cadbc7a26814a3c42ab1a75a7baf6fbedab05054ba59b2650b172ff6392d87c647ad8fdc56e2e20ca701f75e9f83280d3c140e176fbe7addf70d86646a2774e548370165a9eeb5faf43e0fb8f2a47f6ded01ed446de0cf059b2c80dc4a5af89021aa03f96edfdabae54e1dae7dcdbd7873d43ff5ed0d86669e835d6ef7f4bf98a1a419c85c317cdae1de7c7dfb1f7cc2c19e8c2cd71e7a43e091b54fbd213077f6397f0d46892cfbb387fbc557b6eff6350c8d7ab80f9fee4da5fea796fbc1a7b70fcdb8b27d288b3d50c033100d9cf5ca62a10843c1309b88ccf4e7ec4987d608f1e2d22ed688d9944ea1a5824162713a34fb2daf8ee8c3c6d38d3c0266f519cdbea6699ad5ac85462ff88244780418a54a1157c275910523d270b83b778466933970c4fde0abe76b2e72d438d03f6d23b252ab66d9f7f1a5322b28cf871b78ae0f5f28dce117ae4fa32482af151548b231a01556b136be0e1d298f7227847036a4df9e083d8290d813a3108b2152b7812ec8c593d80e6188622139dc9e4642aa8294610e8d23be2de27e7da6e78339e4f84321e4d03f9ddd27042316eb3f1591ae198efb649edb774038eb3cb26f725419f4120d3055100752058946b68fff1c919869a43f7fa87ed43cbf6621eda77dea7daa1f730371890658a63553af97665893a71742bd8e84c618f32cb0b8f04bb9fb1022325f71a98240a0f91068e25707345fe50fb3ea074ef6c7c98e3f24f94a0766f6222a4d9818299aa84a62a66002259a151214b04a09a8262528acc034636e64697c40e26462d2a481d2051a5aa2c499961eaae4e0b4825d4206c72566c918778959720224312e341072b92e468b951c98182e37b89c89e142c68ad122027900b8237e37327c78801b7047fcf842fe569e741bf5c3bbc0c93a30302323c3946c89c8297e2df3f8b576602bf640f84baccce1504a29b5d65a264fd8605f4654e132fcd9046a517a22b665f8d209939b0cdf2d8466ba0c3fb675eb5cf43c0ba1b543acacc5845ab2e32752e488bfd7b11d149c3bfed11b348ef85f017c389faebd3b8c25f52153b8f0592927c2729f1fde4031fa681c718410e611b74689828db7b19252c2e8d2737c69a02cb883621d05e81f887f1ac77c190fdd139f2213cd9a0fe3252ce9a68b77167becb3d17e434998f3308175f02b07bf2e7ee160994ce61ad4bead85f67b93c11ddb0934984af76b270f22eb030fbc20201e073e226b7eca021b06a171e8903d3dd5df9e24ad564b4a4a4a923f3ae08e24ef214b2c93649aad74d36ca59b662bdd345be956d3e8f8a1375889ace951f2a45d29845e9d4ee313dc41b184410b96e81f88e50a8da3760da14cea72e5fbd3a766c888419f68e8c0f94fc7a481655cbaf23dda3be325e315e3158f5e2ea35fa347f2d0ac27f7a981256c077f0f037f291dfcddcfc19fc5df0d1cfcddc0ed36f055e154eae7b74c722d18bebfacbd37957ab1c95315a4c6ab5e858da8bec637500dcf480935dec617b1815541b0111baffa062a52e36d60940735304be565991336614c4c4c4c4c4c4cd068bbf659d0c8a6527f8695514577be84492359451e2125f58e1d57ee8ffdd3af33ee8304687e0d0f0990cf9ccd7ce992af974a31228b8a6a85b5f7a652ffacd60e8711c89560bc67e05c94200b100655804c10066110066110d6104731f78b4a7906338fe849ee03e3e5fb09ed1361fdd3a477d097ef4aeeb3f3b10b2b2209201ea96215185d3f2efb2b2a755cc0eb2a05d99b52ea1f144be7b9d71ef60d00ceae0d721ee9743f7fc924ee17612ac0faa7be8c58b28c30c41658f2ad0efeecc55fca5ffe1a40fe5859c2ec6737fc5d59adb85f37f50ecaedd880cdd333983fdcaf9d60f62002ed78329ab2949085e6919f4ac19e22ec052bc3b5e1e55b8eb2844950c979e44f0fc21a870a6d817cd721c67b54ba9e03c5280834100c29e596678f08e6f288fd2423060cb2564a18d89b7298f02ab35f77ea564208218491faac47df2eb5399fcf5a4ee9cc51e059b473d13e388ffa0f67067d1caf368fb516d8bf9961df3dfbdcd659fb9a263577cf7d4654069f35b7b3099502d7ab2444a9587da430e0c912013d0642fbdda5686438b14da5a42c024d1b2ea243086d4eb12ccc82daeeda7be9dbc8ba94e2cedb5ff74ba56cfc8dd843dfdf1bcb3c3d0537c50192a16ee55e023765b7ad2f65ad10c60abdf935ce49572c170f0214005d507646014e208004b9797ac27810d33cee72b90f0830348f16ff2f9521a6435dfea51a92b29fe0d22b64622598c91d73b189b9a48859303125251d1d1919c548780971693f4549d6feb3b66d5b0f9c528b1f6553dcd9ec9f975b6b511a7cd6b4b72f9fe3503de4869a0012a0ee4af79af75c735df76cdddcf7b0bf691a7d1e51e3b4e76e341c4dd3344db394ced6b09961f1e43c914ce499ad6133c34227baba2fb88edc8510c238d4caf063078be038e87a016eed8efbfc751f1e573ac0877bb99d9dd3bf59737e2053a99e1227e130882cda359a5895231825c72d312a3e6cc971f6a730c8c1b4f2f11dad8094dd433607edb8fef0fd2fc451628f7431173aed481cb2a6691a06597ba9617fcddda5fbb35afd53be94334c1b34734e21d9e5502a47d6ec9f565cf99faf893d6eed4d81c0091112595d54729cb881e00981e25e80ccfd99cad5368664228b35b5efbee172b0938163a20f049a51699bb17be3ba3eed935152ea8a2bff8b4db99f629353eca15146e38c4379db77def6b96e767ad29fdcaf6721cc66200869cdf95d914e30830599cee186441787c43e10ed6d912c1c0662bfe222fe16abba22b64302d46daf795c7b9de998abc37ffb960ff78140fe46eadbe754ad02327f53350642edf69c6d20ce1f04f751716f85b84f7dff20da5b6cc4bef68e8d6401625fc32ace88c63510e7a5226b7bf7de79b6afde96ca5be7a80840a0faed11fa8daa9f08cc2ad403a9affd8daadf4896ee8d685fdf48961b0c44be7d23f5b5774fd55885c24034e701ea3010fbf28d48ac6aacc379b6b9c455712aae7e10cddfbe11f9da073102d457eaf78c062f5f806c4819ea9c4c1fae0f2a2c2d59576a92269e519232f6da828a87559ca962762b4c167b29494996850adec38c49af51b286e84e71a235455b162f222d2daff22b23ac9367fdea5f2689660cdd80246c94b85045968a1975e2b5d6fa729eb615882d98008144a117494b5fb089f1048a8f91515abdcc3126ac50030f99c64cf0c10a19fac9e5729de04fb9976c38d34fb5d64a450827a2e8f55f6bad609c261833130c14130c9a39bf86614a02459812d0304f24c9016e7931e1caa14926822bda68a103966d4bd1db49a7ddf939e7744a72527262726a727a72921519d167acf84057a16c8c8c8ccc4966262583e2656858b2352d591b1dafcebe75628a75f22d0aa35f1c2129810a0c4ae810046c0545442d3164eac22185a42751acc8252e5e906c9ca72d1109add6b45a8d4830459e6eb24f57963a13791a8959e4e9da5a4d6badb556892ce281165d31a348ca02a394522a1d634329a5447305b35a842da3c212b7844b53e4e9272bbb67228fc6652605558289b300c7d040c2042a2cccb0c310502212104ba8236eeaeedcbe50072098b8a1e2490914882626b802f6b0e4ca1affe1894a152ebc54304f6a98618ce009c2a09161662f8f4f81352ac02f3125587280a19920cce57235a194d2a52d9a32a54c7904580c21a8c28936302c3107c9050c50c0c498bca0a6ca2baa205fb9979858f3825e68d890941051f44afd94b604634a40a6044ea9222af5cb1929a8124cb4335560972478431836338c17499400e288d22048c8b4664ae4ca1c0ea594524a29a5bd748552a6d49571d8c2499532201083864ac461a6e4b3589312c01c88ba68f9a245cc9298458b51142a4d6e8be65a6bad539099c229f274feecfd550c11c492bc284a12c515f1862a56a063056cc9b37ef5cffad57f156d22d1b37ef5f7ab6023ff5b4f1c955a8a22a46fe95fba42446104f28bd952cc05661e910487524a29a574098929534ab53491a9675a6486524adb3c691a17461a105d305182f39140de50844142865182490d4cd3612e97ab855a6badb5d6da4b4720e5ca94657582cb744289d44244d1ab625b69ad55fb5a6b9522694ecdbbb256ea449193bf292a7ffb5bdf562d42e4fa3b4078c995456f9320c32839a93153c50d49614270840d3fb8e60f263ca14de56bdd565a1d909ca7b3a6a960092ab4a0b0450a4078116bd802e3b6bc40e9945202c51170bde2c8ccae0097da55293bf68fd6434a132efc01d45ae17c0933a73d8043fd981deac77c8aa7074210c4b3ca3e21fb5a74a27fe8c34cadf6946a301c8f13ca9b0f4956c94cf167243b8e373cdcfa35e883f91f01f2ecea0189ac3864e6284dd84e409a3945ea94135e404738589168021324011d6945a182035096eb2958818d15268ac02e5268023a6281175c9ea49cc7bd227d041432a023d10aa08e177cdd8c86218e80248c483544ed7fc5e2694fdbb64db32d27212a85e05b01464e32973b06822f8ee07aa5c5708f64ee43cfc019854dce6384ba9e289b17848d70f46a4520e9bdf3d0a6e9a9824823f62510042010ad3fe5577c84be9c45b204816aba10e102b22fbfc811faf52d3e42dfc8918a5d6ec68a2217907cf917f8c7a3235510aa0a221fdf7cb9f128c62aa5053d687beda34ea3828a581e310228233aced9e71cf7903a3607be9c798c97325ee6549d47d9e738148755f1350c9b9e54f106c72af0a737643e8ab339281d23f57522ee11771e46ceef7ca382eaefec3c37bd21f183705e7bff2141dbdfbcbf08418a70df3dce072982fa8b0aca09aaaff31e28b1afd3bd7d194723c81878c753519834af97721ea80198451061480422f0220c095205d91ee771b011eee30f095205c141e97cc43de6cbcff9fa5cce372a08f5f5b38e67733c557c2440f639b905e182508ff33228e8621cacf2bfc1df6d9ecab1071d2f78b29e2ae2961db94866b449701d9b05362cbcaa76747f3ed4a65c993bf601269f44c63e50420c4a9b1fba682d40494aa2b920c3caa865d4325ac1d4bc6055281140ee184c08580f1e834589c16e4001d7d1dfbf8016c00494893d81b9d7cd824f25a5b329f62429f6441643c145a78c3e347cd816ae638b002f80f6b96d00aa2149fa00095e312724c890f90243c17e4049c3d90e59a434d9702589d8439b0923e149c52f278da5b0c512cd84ff55973bf62449febe35bfd09bdae9a249bc29d87ec5094dc5128a322397e0e06d185695e11c937d2c50c75290e59cdc3114d464cd8974297d2801484ae952ca1851982ca5d496c418111059e68e1189f1264e6022bac189ccc99929a594524a296553fa52ca87eeaf012459725bed9f4afb87cefe99de3f1efb27c2fea170c3df7c0d20c9f45f6bed75b7ef0eb6df3621f91acc9c44fd101292ef50885a8aa90fad56136b5b1a13777777189bd094b8bb3b7c77189b58ad3425d6cd38dca2bb6115fdb5d65a6bad431503fd9485eadbea7dfd541bd53df7bdca32bebfa5cd59c0eb8162ec3c97e35d89f130763ea707c6c74fd58fafe3491832bc8facc8aa39e7df7d627cce16c3b391a77e8e7723abfef55a391c1059f5519e0f0e3c681cf5bb7e7cd816469c3470bdfa601614c39b2fb7c7d8145cfb5fcbccb09c9eccac3347e4992e6bdc2ac23b57b4e711e367b3e08f95af6d7351f6c68b7fbbfab03e87ea81f276726c452c1c0a7f2d27fca172e70db532065a59a8fbed3beeeb705dede43c8cef1c0f83c88abfe3e5883cdcd5f1de7970bee30deaaffbe8dc779ecbc371bcef6f46e1afeb3e0fb2d6dd285fe0208cd15dca49bd6fd5238582dbd862711b7f96da2e6effbc698b8a9d73729b5a77b71adbdddddf0872e36c1a4a63ca222e6d1a1bee9e26d60f565750683b107e26df4664a51a477f08b70d11396bad523a57d4d189e5e2c2ef1b5a5cf88dc407bbc585ef433d264be9d68b0b75c4252e47c420f7f3e89fa0c601ff46f461d958c968dfe22fee77b596f671b54107cad4500696875a4e1c44d6cd751ef81a8619e5696d2ecefbf3c0719f9d12eec7dab8772559ec2f79201c1e71ebf06783c3dfe78dc3433a362832c40a5690f2503f654de2540c74b4ba89eed04fa9b9ad70e56f2adcadc98d51624fad52f1152455c44499563cd3da5c1fb1a7ca9fafb9ee07c20584b8e237c4ca70040eeca49888e4d238e6c70bbe1d4f6b733f68e4ee24dcaf677604fff90df54f097fbe0e1e13f698ec8119903823cb432dcbd493597a7d01fc9d6823fa58a0796fe4f933857677af3d5b2c9b867e299865e370b893bb73348e9e5af0681c18e8f860b5666895670ed6ea7b1b9c5501ec892916de9d4d7323a5efde3036cd3967777f6a054e725084957960f8c41431d0b22c1431c4d079b811593de6830cbf8bf467230fad72ef403c9f75c3067c0987bcd863ac3fe1628c5cfd39edfdd9dd3d337cba1359f4296e111810bf97d2ce11c029fbbddbd35cf85a920bdf04d37f7e0bb59c36e4ce7fe3e8d9bc52aab9d08f6224127364127d3ce2501490fa943e04a295fe120bd48d80afd28f403ce2a5a80de27bccfed1038abb11f0f9c457c24029a5744e2927a594524a29a542d0fa94524a29a594524a69a574494ae8b585dd45968c9db5f7a652ff2c56b71c62a77fe64b09348f740006175c8003c70000f0755902691cf279305d1986ebd537dd7e3f3c437f76d9b8687f77922870b5aafff9cc67fde37558584f41a69204d9847563b5fa8fa82adba4129745faee9af9abeacb67bdb4f8721f5fd326d3df72877d1659b1886b5f7bad7de28bfee765ea4694ced6be1cfa1f0dffda49ebddc8a21f5ff453a91b3d7a746921aa876d1cf21ba5612b03d76608cb1c0e540ab2d64cdb76ea41eef28360b1c7df7a579392b583e6c26fe769db661a3a716fa7d9dcc0257fee580d6cace456ee980d59642d51b20172c7906079be4403dddda5fc5a39b65c511a7496df19a27a40eb71e023b264bed138a20737cd7d1272a6cf047d2d2b633dc5f82de9559eb85ec58f4be1fc5cc59e9c68ffeebc0efebec35f4adbe2129979e765ecfc7c203abfa47b9d9fcfc347ecd9bcd46b71bb8f21035b1bb12706ee224bbbe276ee70f7afe3cdf03a5e90e37538dddf7ceeac673bfc713c9cf33a6f1a54dcc9a40937b6850d77d81e7a0d61d3c6bd7378f330d0ca9f0759687ba1fa76c35fcb71dae7fae4b072bceba53cadcd8db7bb8bf171f097ca1c87bf2e47685b1287f9b309777737811a8729353aac974053e3d0dfe572652233c32fbef8e20856e96670d53f395167c7766f9b173f7ed08c2c3ffb5de7b84ed334adf384b6b69ad675341e6a429d851f91e896c35f845fcb3877f76efbfcbfa11cfe9fe6f893932229e293fa7c1e3e3ffa44a2908c3f92ddfb3c4faff33fb9267f146a58a83efd88c4979165cc321d81ec92400431de278416c45446fd6f2847850f9594e0cbf80a9542709f977fbf9d4339fe208d6efbfa1446e355f89b51037f770696811ff063bec31dfe106b7ef3e5ab31cb1ac097f138a80e68e06f060e7e149e91c230879faa8171e00b6918f5283869e019d81f07d5a17a54aef33abb77eeefee32b054032d4033fd79780c2fe7773c18decd438f7efc66e40f2a35d5f1f0bf1976d53f36f7fbb039af43bed5f08c0ceb268647f06b654dc3170bcdef5efb4f4a3570870efe5a4c2dd9508ea11cadae9b5d4b359af71189192a1df98c19f7ca23f952cd508edcfd379423dfc7e9509fe3a5501a742f74f1072baa832e770f95dc8746f3c0977204594a6f2847d61e077f2d9454037774f8d30012a986ca59dea49a2953f067c84294bb4c1f2a6571ca17e48e6589926f409359b963378cc9b11bda642ec3e76e6ce4761f9def9d208e83f843522408bec551b2d0f64732f43ecff4b9b73688be63782d47e5f6f88b79e32efe8844fb1191dc6fff49fcc9a0a0a0a028422e6b5051ede08b1d7b70b8ffb4a7147f10966bdcfc70394c24e68a89c42c31a5143a850fd828fe205605c117dc219f62975fcecf1b21d98195f85a2a3b6a7b681cb76d5e678ee336a73ad49b3cbc83b88770b3f52db41b16aa3b4ee08e9b8f48841c16920f39a9aa8fb23fe16f283cbd6d72413029a594720b9cf267a46849d1aa41866546856ccab286d96b0a2c51b0a0e1f00765518e6fe3c9e498733c22c7effc23042ecc29a2189657c7245c479ce859bcd9ffd1f6370d0bd9fffa35802483c6d1e374771792f661a5744e29dd63ff405aaddddecaef3a3548632470f7a3156477279ddcb123347169892ca8d04206cc182f4da230e208ca9114a232751e9db01d95a05d41c1bd02c5cd95a7ee88049a9325945227cc39e7bce282ea4a9713d860a7159819473192945941469232f2250d2e9d2465e60c59a066982529639d1e613952ea664e5a99ce5e07eede4f947ff4543fe6432c145fe5583e928c247bf454f09164f73a882e855c487edc892b984166e50a1298c08a1556a670923b56a4b0220ba33171bfbfc1fa87ef0ff185f67691e5f75a19d05869ca3c94e4f80e88c940e4a43d71bf9681e0ffeff2e9528a1dd0c4fd3e7ff477e8abc88a5a13377e8c5122b55a4a58db5aad4620e52a8924de93682591c44a5e91244611c3130c531821a794531691650c67980c1180dc31188480e10720668ec8f2d90ac1ed1b5d8652b69c0f5f2373fb2184106235ad1611d6b6621a0d89cbd4626a4d18973b46c584588cd3230a3e443df183f683f683162efe8413778fec8e3b86c0fcf5777794307631a7304979024325c997295d34f95223776c8a2cdbdcb1294f637ce8a187d56a07295754ca5194241ea49449e2458a089478916244122f31293fe49a3b262549a94b972847b9cbe48ebdd01455b1d2df81f6bb6de4e9bbca93e9469e58a937798469724baee39473ca0c28b5b1a18b165070346382b28406e58916fca65cb83bf70af1a513820517ac8cdcb1165c7036f1c8a5bb2442e1a61cbac75a7065f7df89ef2ee5dee48e19a1207f2f459eb963464e48c17d57a4e32359fab3080d0df5478c810c3f03cec61e08218c104208216c488486e5a54d4a29a5740512eca4b4484aa6452a90e0c2f3187d89a2280d132829884118c972ca68887c73c78c78a0a2d57ac1dad66a1545ca95d21769d4342152a2c6881814143428208061ce39271413b42196a86033ca32a595ba58b2b028cc39e1ac4293523e91e64a13172f3c4971c552d111a8223328b850f4e5a66808177072c78ca6d0206220986958827008a28b9228b0e02208202926cbbf3264192ba2018a0bb7732c9edca804ee7655b564684800008000331500002810080884029148240a8571f00314800a839646744e99ca624992c33008628c01861000083000104380310841735d00a6f39d382ad4cea9167b95b6cfe2acb28ab1a98b21de486f4e8a117697d1d2e477b3280a9880d49238a2ba69e70df89f82b1160892a124c36bd5abc5d6e3cd9184e0f96ba2bf4d1355896f0de98586539692f0f31135d6f79e427d9e8644926907625bed5770736f9a3fe46ddab2712405cdfb77c8ccc546c7fc7a48a72fffed6bebb2d3850de8879e6b1f46d5856b0bb4c1352aedddce8682b238868efb1a08e0b2dccaf5a89523b3b2968f7d58a02bbf2bba343c3ca793cb7a711e7595fd88d1efbb008a59ac55388229c9badacc8b70d90ef39d4a4ee50482a85b8288efe08f6163bf9e53d478e18c12602894efc3845391b9c20211ace539b14548bc9711bca60095642b966f2abc61c8c8a661eb96995aba58c1a5857e8562729272a6cce0763f6952c86381ebc1dfa792cfb6fc1392ae0025eb73eb431ce8a93f2a4aebcb87f5a875258515e67c0d27bfaac000d7481299c279daac61b69ba69a00f48a942b73f3dd638d468a1491d839de69c57da6665a7bdc8fc78d13cc67aaa9b109a47e9d7f1f97688426b6feb6fd69b13a3c59353bf331f687c2065c8af51e82b3245caef135cfac321f81e997ab7ad53c44f7d6e782a521bbc5e2f3e766c498d9876a909aec9432911690bbf2ad9858d01a220b3522d9357a5e94160da4d6ddbabc85618f97ffaa637cc1758dbc432c6a34dfa9c40ecdaafea26d85456801a31dde6494c6367ddd6075dabb90c26d46c7737b77752bcd77384c1f4d2eaae7d5cafa071e041b650d7252c5c205936ccb73f793a119398a1a14c474882df1b20a082e4a78047bb52cc4accc32aa641ba1640e13a888d63bff823838c3ce975e31cf658a5080f5c43506edf97ae90c08e2fe6d4f9ddcddb88a8aa651e326cceb22c076cf9a9b72abe31a1b4231f9a10caac44be376d68095354f9cf76dd6416eae11a61eafa9115d0d2c8bcd3f49bc92d4a577318f89463ef0265a8b9a8dbe0db408d6fb051ba0c50077ad0447b8bdafaaa75d8f0fab1b13b97062915e900fed21b58a5a37b9161b7862d92fdef36fa009fda20b79f65298d4c61aad5e46823a249c3492f9888a5a6ab819b7bdf2de3f59350aa4a318875691860cce94843f088328261e87cb7b006227c4a15a929b0fa3690ecb3afec7fd9c46f0d48576b33304886b7feae1ecca495cac22c1513fa82e5a36512a152c6ae7d11f81b7559c526768902efd2d18ab2b1835eccd64f694afded1b861d9d7efda86f82a50814a7fba74a5961eee4c5b5f7294939ad5ca188fd05c535c82412caaffc161cba2fa0c93440df571488508ea210052406da21d9898a938ab9e34734c677f4a74b54a8cf7c45a336e40b99d0b10cb7ed8db0d10f104abdc45c9f055689fe5087c83409ba203eeb4486c7a0b2361dbafca772f7fe8360e31ccac877abdfcc08df23665ea8317e84dd1014a904df308aae270f7b4af2816dfbecca69c8cdd9b8cd8f32a01cd219fbc00fce2afcfb7d95b3da3c93f7c5b86b817e7a604534a61eaeb6746d28687877fe8e4c530ba4eba91b7e42cb608fda879b6a8ef95073f5f9f9bd5142788a86426a99709e626e1105d475eaac5ce4ab43b17e3bd5c40c510282ec0dd883ec5d0f31b89531d00a9d91f43a38a313e7599cfc507a2679a84fbdc587cd54a7283680195c400c1f32041342008bb8effb26550f2520249a5b7ccb795ef757605f1096df867e2cc7a17f7fd64ab48de5203ea00f96c06e027a3a1056aa2074e6f2beea64f6de34897bb6657501aac1509e5c21831b11d38db6af25f700fd77ccd17586d48cd63202b084826ecf1170fd8df227a7e5ac3b090cc498e78112192592182fecb44faf1f1010a825a61843fc319fa747d92f3025da0b40a17ec84a79749a0cd94e82c19beaa4d6930dfc11bd2d6c2b1a403289171dc8ba9073cff854b5e7d1c415fc10217946c53384765a7f86c6370d47d5950f8d236ece646ecf0ec265806a07aa4d87d91f865a97b96ad0aa978b2ab3e9edfa70b477411f4bb4e34ac1438f403b3c04f2934855e4e6b7cdb4a70df93d5f6dc3cfc3615460ed57337c6135c67a85a83f9e5db9e9fdeecbfaeccb8fb31af00bdea41505ca8b7129480939cd6f4f2f553e669c54922b04a0ae52721345230908a74b028b35627d4370f0a950854513719b01b58a801525f1d8bc3495caf2a29db498a90b81248407a9950910c84e430f4c954f4bbb61511e2930ced03e87587e2b131142d2729f5d34cb261144cf963abd416e858b014b8b7158b650d406f7635d5e3833974a0d0c689d00f5d99829caa791ea198a3e3bbdd14e6fb7c2c85ecdc479cc3aa712c5822a03f190410250482f9e372ba233aa910d78226dd7939db1947062a08cadc9d932b38ab1659eb3402c75bff0bcd3f12cc7a88dd0d1aba26faf3dd6eeb5835c9445fa291cf311be3b05dcfb7fd22e63bd3135c716c2854fcef3a8521f14867d2f8e14946b5a5f855e4624aa08da523ec51ad4dea61b84e6204027f4a2d9462f128fa053f0174604b22b5a2ef03ecd8c8854708926293c1a6b0252cf86636a8a23449a5b45307f8f8c885918aa11cb2d7fa4cad7a62563fd893d1fb713a101e5229796423d617405dcc933a4c4010d3c850cdc4ae84c9952266083e386c17c45fefe58a37c6c3bb64d781c705a1d4a53834695388228de1580db447f0d01b3ad13cc539c5df2c94540c72dc73a8dd3bb1b5e2ad5e0a201ac2c826d10e6fe1b6e02d14057d5f1dd0b51109ef0a5440b7342c27e72c25ea5780988c7dafd8c6f7ea4bd673f50ee8cec82387d2be4d22bd7015f9500706e80ebfd01065a28c416ed0993e9f7b6c28efa3fa76c727158422c1db5a06038d8fec524629504447413283d0629a36f601ed0580e50872eb57ad15327482063aae7bedb238c4ee07f6d59a4f398af748b8deae5c00645a4bef9067c3eb73e4c24f840b4a736195bac20ebe07904669af42da15a59b2859db4a3c87aa8ef35151bb1c220de416bc7ef52098829823c40ae2c1d3946518ac116ee3928f7243dcfd29c95eb42263c9fa9d68c27383880ab4bfe0d618c0fa765017afb7728518def28e3e4007d481f98a4aeb50695c8e0ce4cb02115db175c884b45b2049b3b453c57b09480716c83eb7354bd34c9336f30b4a8ce1e27ad5abb5b33097fe5da6519dc8a0d49406943b8a9ffabea57a0d6acff09d418c8461e80e4cef119e8a9ae6f594f8317afea57b62e846f0179b63d26c3c133b9ce6ff79e8ee392a64f9eacb07513f436d37c62527318b02aa6fc93d9bdccf1a29f735579ba7b83cae0f59406397fa0c42c000011400d6a05ffbef19dc8a2b430840cea21b96ea91eb1726d938b19aedf4789111815bc70503866352342dad0d1c57b05a2de3b8e2f9fc7949b8e73149881e2a39a9e3b0989b4aff633cfc1f0505a750faef5e9b81bf01ebba4402a6f00b8d25b6b621db44ca505cb2092ede79882001b94af7e8cff8274534797d3b2090e3dc440f65bd9f424037a64035f8eeb3229ee4b2c7bb99a0a0ec9e8712009f99ad6732932e2ca5e961be8d7c3ddfb7b49b7b7e06d12f027d5bed30217837579e14b986e6d0a64d684ca6bb9a86e61f84485edc376391dac7e51dc0a62f8cb78a0769ed9a69a0577cb10d1c1a1d7d5f59a97ecb6d73066db37e81ca92718aee97573a9fe7123157245d0a218a001fcee0667db8275490a79c174d9f2d5a015ff705b8d128cb198b2e173e46b849021204f43bbc952cde283b5c0a283d5baf95ce62c0b8f1bbeba2388347ee095b57731ba0341ccaf50c0d15ec087f6cebf753eff94107bc8ad72cff0eee494dda2ecce86e0f62bdfad4691a298b280a9a7418c36c1f1a88e07b44523ef4c3d441eafc1ca19a16060945e54f3f043a93b16b6be7e27d501b9dc362be21bcc016d76c540590232c1d3702cdf254f31ad30edbedfccc4d51e8413276d9c925c1a282d8248516f21a7957df04355dce1330f88657bd8540725a4ef247b66fe1c0141a18e88a4dc87db94729367d512214ab11fdd894306b093b055b27ca9653dcf4e532b2964e7586764614f71d37e13a2ea2b130395b82cfc0a1a0ddcecceaf2d6b91d79524a71d49daebbf3e4dbc8ca8b2819af3b83b371f066f7be1be99e17233b07bcf17da9a9f0c857081d5427e791dbfc4223742bb488367d152d09791ee26187f9fc22f924728477f22f20b1965c9196c955e736b77194571d664b2b983e4a19c3f7a69c18c5983493430f37656829556050fab8a788cc85897fa9474493a9f407f049ac7692205db4849c70bf1385f23f58276499014da3c1109ed24257cb036d3224293c695be3cc3f7d3dc5c3f625a7d61e6aa4440bcf4ef355aa83dd0c60b063f7d3bd95478d84718540477a9f76a50dd7a7d2c2ff3ecd8da91dd075f038c01640384fbd5973a4c2e165819897907c93fc48a17e8508aa6170b5a89f2e1e564fc68be5ffd0888e4ff0519034ac22d61ab53114774d476049cab03d389a857010eaa8e37ee5cd3e8aa5db2679fce776e54bb27092bbdac7d621de20c65b9793b46df3d16361f4c8ed46e767c49c5c1aab29ff9752191aaf3670245c2e7b83e44be4fb146f3b2f3ee42fd56da5b628228e3cc46ab16a184986bdec48a14917656d37cc51ca1d7e482adf753f13510b0b9c26a3dcb627703f2019233fbb855ced38ccf0aaad7713a347e273caa4d48a90253ac58a44dfa6e0f1fcab832dace27bdca11bb328ad2b436751fd67b83ccae4608791f1f42a075f2d5a8eea95ebc149668c919dee4b2ac17920c31e9a22b744ea28d47ade24d81deec11dec56a130c31cd67d67cd058dc96272ca3606db764869d15e11c09bd65f4d22bc7bf20f57951d13e972e5102ba87a17616a084c99545f35d6872a4586d02ba77d4500be57c95c8b957007de5310b1e100111e76f3d5d78206b31b581878a3acfe6e294848f54c1478c74ce608760675977a399d5d5fc43c4b7d28e7e010cb18b59b583354873e1cef45e42ec093c7da52506449fda20b3f50a638b30b39ff08fd7d342446415d1d31b874c6f136390052ab067edeaba1ad831e5157f25d020d2912ee8d3c286d0fdf7bcdf91faa255b45b6523a77f3ad33daaefeeda95e4cccd562f1400e5995355d775adc278591a23383d0777e1231a1cc9bc1b51f998db7460a7e1fdf833583ab2404c786ffaa96e8271f35811027634976ee28feb0e139aa413a4d04cb074b26ef5d0382a122682eea63d4f0ee6a52ad085e8be0338de7fc29740bc21c52ccb4f9171344c0803ff690af8187630300ebf072a0cc3f8e2e30de524f2197847ee4362d3cadf25ab93b52fa4b0f7ec953664cdbd5ac671d9154a30359071ae12ea68a39466d428a3dbd4479300cb18837d53c797a91cac5d3fd5d0d90a9326c4d30f7809ebdb1a5f19a5aa37e66a21cbf888118fba2bd97c0158acf163c864ecd01bbafb53d84b8e24b6bf96ff1968a9b40df9dbce9374f72d1a959562e7e0a48f49a2ad293018f770965ae3eaffbd4e191035a7e7815d4f468bbe21b49b25cf4cc8d529997d92b8b7f0523b06de0f52459e94685a71a400b8a7442ce8aec0208bf307aead5a4d1a9ee8a72d13bc51910153e73fc736b471fa41490386f2bc6decec8699ac2b40dacfd585e7614b994724261ab8e4ee569966c28cf6b67f2ca7b0f39eb9c59f528346955b1374e53aee0621dc29b38d4ca7ae965648a952cd2902e6676ea1dbc074620ac6fbe26dd15474baa7606935c9df12b2f20b7c50e4410bd53bf116796e250a2c3a1a34ceaf2c89fb50744c89633e7a8c3209ac49d3ca22414d980495a8920b4bed539af138b1a22bd63a581f3a5a2d3b74994b1858a7544fb521fe54345be2e181094237aacfb7940059321f60b60ffadaad2c28ba2994b62eb009e156defae91166d5aabcbbfae73671508b2afd612c146558298ef9b0ab70e830d7ad397a2157ba7460e0e4bd79f50f745096d47c8edd2e8ebe23af93c8b0b3303ecf2445bfd80928fb09778c67d1fba2526d07937d799e66ce688d8ba25113a965a043456474ebcc179202facb51aa0a1bbde31c2bc90aa438a7f122f4b8dff660db778796e678c9c1ac62cd05ab60793a23e399f2132dad75c4c148eefb52435c181c99d48b9106f5117d041c5ee55dfda16e4d73a50e2f422ccb4828552f06f3aefd5e249cdc918b4fcf18dc48a542c6db63c1c9e9be7b6fc35010710f089fcce59e10636acf0154e90a984a27bba3669851baec6e88dce6df0f449f125facd8e346713339f35ff35ee5a66005ab865295799d17b2924eb6890bde09b33baada3b8144847ff930a56edcd2ef8f457d4f6931c1e987ebc120fb149caa5613c7cf7a851f06f0ff024e5c28853ea6a440d5b38a8c0bc530549372c8dd67067dd26c60c8ba16f87432873d62f62cfa61c9a7378d44a466d21c9925d4731cf519e392a21a756714b66d00f9035c710d0e2752d454d672aa019c48db5f7a07dba6b2af6320be032599341cbecf322b6928240533c13aae0e0a2231ee95f4e76a2be9098b9491265ca51a292d2e5aa5bd1d499508271dcf34b71b6d582727e081c5166281aa6d540d0d709ac431db35f59532159cc7b59ca28d9027d1b46464714a7e2113048d0e550704e657ee8b6754e70261b8e08f4cef81f2cd644d81ae6cc534903710e85d3a4c9ed90a452cd44fa1b3390c1f5884c8d5f4f31f00fb84c55dd7e170d815ed73dd14eea26a691695a1e4a8a948c6294f0713286d91121c9e8787c189c2cf8bff2384d36099e46dd48966a163d3a575c1a81c34b8871af8a8157ee732b15e39062720a5cdbb91261c78249f3e0b497368d5234f113c99a797a07d2fffc18373a49b36aeaa2fa21bd2027dd7a54f340104909843b48c59552e4652a438557b1923f8b71ceca29617db2a242c34b9be001bab5725f109b0208c16593e91e7320807063ddb41b92f5ed94ecba10fb3d5dc0e831131e125a9e80f8755f0952e66e4d10aedb6083b1cf1d41cc097f6d68f51c25da1de193177bc47c0e423ac4bda05f82abfd4f45be632f261f41af2a7ba457ad9641a33845aa6aa06de2addc3b4691a9472a160f16bd90403f8ad35521ac98dd205b71a18c33ab725057e089d2c6ab47058275313a4c8f0e83a06941ee1cd93efdc3338d973715daf5c358699b8feb7620fcb5c8b5967a332e33da08f7fab130a480fbe605e589265572abd41ad4c0c07bd3193b69b5464c9a90acc46c12c24fb1c9125b9fd71974c61948f0508c0a0428db27061f6faa35e6808068fdfa6e8daafa5289a51b92364ab5796df5b249f153d9d1a775acb90ec8385c7d1ff9d07e7e785f7f4f61e9a6561f3417350e624bbdbdfe579342e4c222ce7fe7cd112d0c3cfa32fb030af6ec3def7527472712396fd3ce58b370535eec413936fe0ac5b3403d4e3c1c5f0767354b270b81754433f99a1f7c3e2953545b14865f47f68d231e535380991c036f05671e63e580d2dc07fa09833257452b5ebeb2cda4277ec604c121afe973699888b31850dc76efee9b5a203f567db2f9f05e19551f319fc5e0204f64739016635f24da928bb8109033efa77d0ed96cb1b478efc2a7d865f435fc275d16a07e43dc7e145c1659fcbd28f7ad74c8e916d776bcd6129bf1fd161044bd7fdf8e910d8538fafb5e49f10d4b92399637408a25bc0c2932090eb4e938f6e91625cbc83ef16faab94cf5fda21ccabc84d9716b36ce068218d57bea1557b0383fa45e4ec0e165bba8f6cdb50def45e4d0771c2c4a850fe44408d8a596bc07d35d3f3fa2f2f789f4d7e32f6ea5e973945adced4f09e46d635080bc402119a84bb9b5111ff904ca36abaf881a1a943e3a057329ea76a86fcc595cb5d2a67c2d273426ba3c7ab67d5fca60b937c606122a11cff2294a788aa38860fb2501f5e567e2f6c8202c7591769024bf59852e9713b324324e8d67f059784b0bc3fd671a93b613446c885b18c34dfaa648e808fe6da4c57254d602d157e49dca68b7275bf43c1a03fe1062237d3abca4e86c277a1ec3761b4c7b4acfdbbbaf66a0577f3c97dc878d219a6bec340c0066b04dc689142d165eb9b40cc9124ccb3fc0a2d8add3f09f4244756ebf9c68519076509a5ec43c72ab00fc63bfb0c68f71b3fd820bc1bc812af47527a11cdbae4e1faf034ba1e9ef6cbe0dec4f37b071fec7044b322cbfc503695267c4350c236025c313e708f845ac8c29f24257127298d0c9ff31d4c12cf6f92a082450af67b43c40d1c01e1f94ee4b063d164935e003517a6a3d725e34c0694bcd5ab2fba2a71a1146b15a4e18e6ff50a08abfc96be249bf51a64685217e85e1b27061605d0d6476ebff905c0511ef0373c7cf11190a7368cdcbae21801a324e763b80f21f0bc054ea1d7bb9895a861d14d774abfc255de44c0c868f04afc5504e852812d96a48a8c186bef12d768ca73b9ca9d96defd45dcaba6b148a70ac36c6e1d62582c9a0542c612f538e52237ebeef98405d4c8632637186e90d139350196526c81bf9c0ed8d0a00512f5c145f3583ab286af6dfa0acbfc0b960d03a723321d771c97803058a8d414c4f7560262181021dbe541a2303c71c48f91ca341d8e1b3f31e0e878138386051f050d840cd677323811621728f2589b9f5f7bfa20f47c18717baab82223f5d2000dd9bc437efeb01cc2a1c2a3a3ec4b25e4273274e029ab3ede4d2434216b3f0e20e63c4a03babdda959c98f92dfdf7b177f5bacb45d88500c6e571c837122505f1c1edf5381e056067d3825d5b8769b01e5758d6e8e59b93ee7ab190a8f0fbe43af727af008e2b42d0682b9a78f88da31b57613b469619aaa1e8754f71ffede85c9969d5137821658da67a46ca73b5f0d13875d8a203d142c81e315a6adc014fc20da3a8ac40fe26a951c931522b0a16ebcd24128bd9f36b4724c341653f89b0f3adf939d363a23ae4acc30d0b99238ab9250e0903300ab26174edb091571332750a0b247d2f133e0b643ceb074e6e43a48e28ac806755a95a61219685bc3f8a9b7cb6ec4a84962dbfe97e0338bb597344ede5f2060c62fd1df807480a326231e29a378a4f2fc7420687d02452230fa4f7c24d5ddb2749975a7114cb5f3c63ddf5bc98ed594dc464a8581a3c902d3d04fab3f157a26a8d4265d338184e2d07eb731e12e0febb708f6bab4b082b630813d6862189a2701c8e220cb2f5ac11ef5c95f9923dadd465c7410377ae6c16059f9c45f34031675568ab6b4a477450a2b08b4f5cf38f983840922c39a7709beba13c52277462ad021135284056c616b81aaeddd10e331a44dd58f9e1f1dc663b04469ba8ba4da897f738c6acc23f9ed823c18434e0c8c1a5390e9f931c643513ba47c2b136eb605d3b0b238bc0a431e578d6fb7d4812ae417be670f0f255f0b4e03e10de4e0aa9ef9f6a36880d71ba7a36b9cb91b078bc6509253a70f9d6741111a5dbc7418665f097bd1dc556cb98cf7534e6a1b7c111f8047d2f08dbbc14ce58153ca4308abc5987f901c0ca5080652491c40c7784170f093072bd90b0aa98b81787e64ab9258bcb85621d38d30edeb07704452b42caa455ee172b20830ff129e4e0fb010236dbbafbc98844fb40a35159040ac144f82171f543481b800047a40ac8ffaf39b5d28f1db636ce827a021a1236afac9178cf3c4c8354cef0f0a99ab9f28995707ceff19471b6b3c6592b56d6f7662b75c65a0c58a0976a8969b8239dacdabf7963dedd9e770962972e3e3e85020be0ddf169aa77e0a5408bb48bc5c23c4625cda9618afae6cbc4b042d89693a05b46defed256e0e697ef97ea8a2bc693e1485f19328f4d959bead44c2c15dcd2a16a0093dc4921fa6cb842dea4e7ac5b919cf5c88d88080950a4868a906099522505096fad19d2c17d98008ca047f4247243b9108d31c9b3030b8a709d2a95319ce2f296c421654c7ee0742ff12df2c26f679ec11cdfa611cd47eee0d3265515bfe4452553c8dc414c61a486776c635d971159cfce3cf895b09002f8fba2d10e86cdb426cac7cab6d760625ea610bb50145c0bf6daefefca75c39d9bc3f862b8b06de06f62920c66c65ce58ab5150dbad27f207e42997fa0ad47848bc844df801231c10fd7b66b1220b0a84fa683a449024b8a0fadbf2a4d5cf689051b96242740f24b1a530af714c5b0000a86f778cb5847a2e9d197eb46e874aaa4b3be8051f22e45251222dcea505b529f7990d81525937b4815608b2add533c5dc95e0a69d8a0798dc6cc018b4e9380172ee8dc2b54e5b07bef085274235ef178d74280153eb590f539dc3f17829704fc1457f27aeb18a40c4ab42ab124e92da1db8f84bc9151f61a0010aea7a1ef96765abdd5cf927a669ad08bbe864cf1613b010b1400781f45507ab1e32cb0e1c2ec142495cb4271ab4bf2886858644741974a99613d866817188ce4a88449de3589056c6eab7911e1a638f6540c991fb3216d6238ac0f5e4d128bffeca3e130545f753f88266f10baa3ebcc5377cc270beb1e9a11b86e158a637f3f28b3d84024cb8ee1e6b91d73253e90452aeb8f85bde0183d1505e3a86eebf276a769c996e3195e9c84c19df4e3d2a954e25012abc713c74a860c5de9252a3afa6c5e468180a2a9fad3abff6dc73847063454d60f03a463708c799458430da0f5f5dd04ce0fea0c94708ed2008dad0fa5a8cd5b1f1c7440412ab010db1beab2f57ac73d66f499523d0cb6870184c97b0a690d44e162f26c820cc83a3c1af27c1f8609c37e78cac816cdabbd701c7d39b73f4793e3eec3bd2ff69f07bd9256d8e3b1a5d42a564ef647382fac0a7373132340af07446545933b119ab9beb2b4751f49ca8d642280cb7b9a2ddd1f4b0fbcdcd9b910e2d19a7fa4970f103088a84d5a6856cc170a320c755a02fb91cb18ec9200074f25d3f160c0d971286aef7a874c8227479dd62864cb51fb53865f269dc6d83a5eb1b048f584ad792324a818c60269af13eea2ac3b61504d2fcf7e53f6faa3f8e80325fe682b555a00a9506126c3ec22b926f29ce382a78bc66d60188a01c4be18062ee681dddece21be00c03f9475ea743a30e41020788114bc79a12b0a562435b4ff37ded903985e380dfc3d4b21bfc8f8c964059bc8afac90014064a80571ba865c9670b3748ed6e70492e7d83e2ef1a97710963607a8b4cd4b8968ced41ba282e27610af11d36c3a4092b93fccf2bdab2514a80b9062da3191612b4533b433a6d0b04c045a0aebc4434a096e7615ae51d6721fa0c284cc70a7c468064c4105efc9e82cc75fee003efdbcc42aeaa00241ff23a9f341dae3141c0ae32e0fae06600121b1a33c198fa5b7c52395d2d6793cbfa21299657d55a637c6d63a7d088f8eb0f0c8430cc66602232d2918ad52e5fda7350c22bb87338745b5d6330e4ea78822e5b30f2a6619f90658476c0d2321d578b93743938e27adda1c4a8e7e3a03232ca797f53dc99b2dd2f368115d14682ec3902ab5d384ab366723c436883b3a3316cf77e8fa5f3e7bb6e298486f8f82a668de8e69642c371c0382ff61c2aca0ef50fe19a430d91ae035be9ce50acf11343d2e8c6427c2f7ca73ebe6b3e5d42baf765f0c3b8a83ac40b1686e1b4dc2ce4ae59d661e68db6fb07fc331c2de98037c717bbb9d5c91f46a45514bc1ee3c302fa07011613a154e652984421e91586349c8c0a2b423160153df715dec4bc80280798b6d87490619314067d8d3059997370b9de848363d67fd5e0ebee0a1ef14df87696e200499245c6a1129d1baa8ad496a1c0e7eeeb45858ac5b816071405c26a8282f3633dfaf362c7ab866951cd560a7bdc60c93ed81e9ceac2a0df55ad851f188c798533baa3265dbf52a5c92b90b0047af258ac0accd1c10399dfedfcba72bb972c766ed3b744fa368a5535b3e09f894e6da6556c6b2947827a6eeff743bb5e64be1013c62000e0950a8559ee5e0fd0b264a25bbe5556be654fd12e25781fdfb87d9630b85c4e9bc828761358da3c07816ece6f9b207ab8d039d0e964fd23766235d869e2b3e08edbf0f60c9270517f36ff65d30d8406d964aaa152ce1ca6dc517659db5ea4faa8b7ac7e3788831bfbbab57313d358bdf271b284629b893412a3fe1f8a6ab60a930cc38b4cf12a7d09f0674f4c9fce30c155403ad0b0b99490b810a9969517fec7c6952f3b00fdbb81ed1c4c0df6d1534aaa54e20d3b3d22d389f56d94245cccf85154389730aee9f31950111dba9abeaf17dd201439064f40518a7a0513e3ecbc67075f1562092b4b452f2647f5434d6acfe7794fb51a751b89072001e4a666138c059a7c76ba0491bbc705e672a1ddcd5c6a391068784d94d55aae403e00a8a732331c6cdb85a62c664c2ae2b5aa8176380a436e95cf2dcd1934c8c08e40e47b8cd7173855b2b9410ae19014b4ddc8e57867688fb5829ca313fe99ed311fa3eac798b46711b78c4afd1f681464bc04b20a87ec35aa147442261a2502b6d518780c1bd043221679fb896691b490ac0607d347030ac1b1f103eca38c6d758971cea912bd9f47ff311ed0470a291b31802460d939c51434e001430dc12456cf43f77fac9310b83ced488ec46ebb2b08997be76382b82a8194c29a7b84b7c8fa4ada91fa0c3812c2912951501e3cc38290cb5431881b951516c25d3c9cf3e740ac253a12663473c4e42e6e77ea4edb77a71e9978768b44667bd68d27440ca020f2fe4ac04cbe307bda9ff2a59b52db99da38e0e9766a7bb6dac5db4c4d238e32c9d16980a31488f0e9ce9d654aa410f97fc4e03c47af56a1364200b6e0e7d1ca4346deb47f391c28fe38eb335084349bfece453db4d37be813147bddde0c4e6eb939e3ccb33f42e5ee106c1d18662bffde96b8d4cfbc2a07a0e2837b7e35ebc0859740715660c9e210179828310b4cc5891502b75a1b890b6571de83bdbe988525b5bf8e2bea14b0b08841ef9d2517633f6a9190c5d6ac80308faed2dca6b81994efcfa9bf0ab21c58b1dc89a1d02436ceb8c66287fef5991ab1db37ec0de445725f1099851f17ebaefc08efaa144f27dffcc56c56b27d28467df7a30108371d97a8f9970ca5686515de83559d1eb6be9e745339aa4f334b0801149004458e67ec1edb88e002a169e14545c208c4d759c7f9aa974a44cf151f384a80e01420639949545cf6cd412f5031ef84bb7beb7ec27af457081aae5f17290cd080895025b5277fa1f09f07caecfbdbf02682c21eeac6bed6a6d48661e5f1c85c50a0a795fac11a178aae1106e6c301000a384d5a55c4996006c222a2b45c87182c1d96abeb9fe8205a6d6dec827949ca93cd85842b66e60b482976ebb63f4493408e4af1bbdc85d0e96da092a38bd92bab603ed90f207f42700f951762f40fef7c442c3195d6fb1d0b50c9334e61280dd21f4082dff8ca15b666f5adc3ed7125f86afb6ea50f9948d46e5f3ef3efa940afba7d0b946984e238934dc0ec720e9a3538688aca05180cf565b4c80cb4f57c2818582704097111fbaeca6d461998857e7b25c317fed5891b61c5ae1fd8609e7115325c961f4f21e224e76b49ef0b89a51c00d2925ded5ed8b722f935ff0fb51adc1714f16f441590e7f937c47fa751a948254e8c44bbdbcf277c9e95e3d26d25907718b0e5c7698c6f4c23e0e149fa7a195271ec86b4542148f53ef67dab8214d773842454bd15a600b582b28dc27c2fea8876a09f3dc098000c2df90c75d8d2c56a8a40e8d28fed4982bdb21b458e957acf1fd59b9854f7c964c11b71e0ef8ae456a7b38a25571cfb40aebd320d7ab5e88e00dc95a3db046ae9460c72bb8e5fa99f76afd4f13e898037c7e286ef1ab3c77d50a52d2658335e33f216750badef7058e656dd51fedaad0b4a5034f4354947d685b9d488aa7ab6dfd4b4dd4d885d7565bc0d1e38a556a8bc4f188ae620376a2d7716bdf41205cdf889603ef8a4dd83dcbaa81b778546479ff6eedd702b6950c428710f7fe3ce5b2420506388a40aab633f0846e407ea43a4a38c6e3022e8e9c7419983839c168dc99a9d6920f751724ef3263b91d92a63277f9c5bbc053b10877ca1d0f5aa3fcb6952101d429122f12bb44b51d1e33849a0f727704882a2110037121d441ffca71373703c693ec15d192198f0fac4cb178944ca79cfd5dc8e4221cbe75e6d60a40c4bca9f292cfd995a915c7dcb5e57fc10ca726f8b5e4f87e545373f33b0149d1dccdd1f992ddbb87f0f5d59edcb7af31679cadc80d3ff2872e716a158686bcac8048e2d197a91965ec880d5252e99efcb4d3fcd139c6c9e2015fd17ef7d4717007cdcddf7a88955fc10e36448b23f5f89bbc40c31de8944493ae52380feb73645a96ed2506a8ac123daa1834a68484cc2f32a9ed6dd64e0f996b17611dd14703b9adf3bae4642f16103c5ac0b790a0171e084650ec586a630710d1d83b44b062dde63b731b22af03dd4134047152aa6d3fc231dacac74e6d9ae374517a1d780bc3f8fd68594c41af0d39d62e09c8623f53e56c836b85ab1ea6ba6cc13f2e29c882509198f35627b8dc9866dcde5fc148171f1e26ab8c3ad5a3874cb59033a2cb108333ef1d5ea115c784c26b0980c66e7b966514c543519f8704c6030b46602fc4f0ad1aae0018d95e6cf2db8abe1b7a00c56b022c50243100ea7ac6473c6670d33812f6d94605b74af26eb7dba8c205d9c1d95690d3012686c424ab53bcdd5034bc74eaa9061e530bb7a2e8a2d67fa9dc76f47c796bef45235d49f11709de2590cde5450f60aeb2a7b456c40db76f3c09ff09d50e08eaa8b9f0ab4ad150e168f849e088e6f3bb44240941ad187c3a2836d512cc4a528b235efbb2fcd9da3467b53a805b8b44a8515e6ffc02cea3eeee494ba231f1460db6a14d7940aebc9babd639ea98032fa36e3acdb17a7e7413fce0ae72a16dc9dfaabdd3b02fcd32c248c9fc7dd059310026cb837cd3c5cfe004428ac64c1ac2160e4aa6d10fe6e717bfa644d84022ca4e026b097f4d0d7314ae383a64b09dbbd3d4c267c05e131304a4603a107aeb44f011ac3f49c02423748f0ab7741f2dc1dfb079adc470e0ae5329301af783fb82083ee1b5aa551452095c134710e00dfbc901e0df5df4284099a8dae5f6b0ef7063cfea66c1efcce0c7f50dcdda36db3fbd413c4660fd1651802dd3997b6aec6d0437c2d9e09fde29ce2ec0b934865009f646ac56d6abdb102090169aa82d8500e334e307a965c4bcf3ee2836b36cbefe0bd73894a93d74b976918475e41dc4911fb031bace1075bc493fe79155e730432a8b9e9521afbcae85c2f636b7c71c0c96a9be33ffdaea87902a6f0f550b7be455df53e3e00a291c000c024ba10a2ce708b92e0c57638798e01161766999409e62211d6b0276bc5b63c96ca400dca3340d8c738f00c7bd0d40774eb3e08636436bff89ec2009ddb4134fe069b29199de21b02d26dffe3865c9c6d4fc1415d095f3a3a77c5c095d9d53ecf5e6f34a71d98022ee670b411a4fcc08ed8baa080db367fe16ce1ef888e835588754e5d6872cd77cdd2264bf796f2e7e1e63d60ef84ab46a00ee6a0062d40b79794c6571231e2da34c5a8f7fa22d2faeddb4b299f39c1d50370dfaebdc0fbade8fb68edfc2bdffc2cb8279a2f7bfe04934266fcf79ef947994ba3d3a4d0bc2a158a1221c966c47e1c16c837a7c2408abe29a5e64de4c4da8d1b20eb82eabc7733064793637a4d50f6b4366cf2cccc7f342c3a4a81e86f29b61db25f25f64145cf44d18fd0d78b9111beea3e76c69fd5902ca9502a5e24861a99017f7e750a8af09a4ed29f102811ce7e70e638819de114e8e7ec5f19431a9fff7e51ae424bb4743db7ab355783e1902d23a6603180e6bf134403fe8214a9712181429820e55bc5cd3b100854fce6fe01402d62f707b318f1b4b8b0f7fbc1d6fb4f2bc254bb0436bcc17e475350bcea4785533b6d9da28bf1b58e47d183a1e13f1eae0cf94bb3bb93bcedfdb41c87f0c0d2074448c732e96e9e9136f4644da8328f4d1b20a5b6833f18a1c56dbd65ee2cffed7d4b00e1c8ce26b5d72657501f6a891baf119b1bda0661030080788e7923a81f6b3ae14849178f3251c0c5e2fa32e338e17274d547136877750cc8d2790d8908c7068818b0a755afa7569908f9d32834e111f30cd7388f14f694f526e57873646ea125726a09cb55212fd37b07f42840ef1b416526b766e43bf86b910bb0df338ac2f494cb5ade53c96876cc2b983961eb8cfcb496d75b0144244ceb59263404fa1c323a39e9d49050accf00fc0aac0fc27c0a613e60f4cfe07f71613d487367e5b71af79b2d92ad18ad742902878f93285068b59a75a3708ac163566d1824fbebbd2080ba096615f16024274b2aa23fd405b380492df64585cd1e7e3a9433844d825f80d1eb16a09fd1fe0962afa42a128e476c45461ea1901e784d1469e955012c7aa4954af27090b1d5b7eaf782beb73e6e90bfacaedf430c87866f7b98b9ae86eec7ba0de7068f6019488276680ec4d15d91a6c11c48c360ffa07220d6ca28304cd5c4755f66fab71f6806b05a98d23f56c8c4862723ba7fe175c0a2bec9283411b505d19e5fd894ef72c9976c8a4db8fdbaf70c68974b3b24477c3d7a5bca8ff7d249841e96a420bb1a9feb52b1acdf1041a818039ba5ff2301258b14e6058150d9cfdae31d655b111393bc9ae9d1ad2a041101b474b68bc84026e7c782075df1a5f7d6b06f304769282e76d9575cf4e5bfc551ec5315cca1aca1e318c6ebd94950b335c0a408080153034ee2d019332c34d66fb4e011004cc338b7fc82723425042fb82785d3904d79c30963392d9579c1fefbf451413a557e0902159c7fee2b278293c2556e6ec4ca58fcba59255d3541386bd39dc1f64dde6a69e17455191384db188201843f290c21a03f72dd995ee220a59fc180c1959d8ed62ac4dc4d629e587170dd1afb21eb8d051707baa85448013091cdbcc13b5d09f7a5c4d21375b7031a2c8fce9cdfb88e840daf4fec321d0431da2ec444d6c636e15ab152033c867c23838a98442ef99cab90ae1e6287b7c1a1cd27e516ab3a81e1b10b8fe41374f4bf34a446aed089921ed245d15aa502cc86e9ccd09b9964f815e2e5ccca4e9246f2962a25dc7625ef841d846cf1d6e74dc2c11a6a2c7a5636caab41676caae31d076126f9572627e8e7b855df6f793618a9b3883121a87b42112567268d3c9942b32c25a96ce5910c899284d75c2e8684fb14771dec52f87e7b33ad48fe1f27bda72616b8239623c0640a3b270f8a1493d1b0b193fa0fa0614d868c878f53f9a10c57d9aa5c125f60119649da0fbcb1453c3a1f18d494f4f01a0a8b163140befdb3e5cecc2d1903bde1f9159234d7102ebec07d6be28dea3c463042ff566a1ff16305a631829eecc16ca4f970f350d36f2824af7cb8f2a8e3deb3668719280917a369f4247bd470e1f11f90834a425e27426a282296dec151971cc4a6dd7127ae6e4c25882fac02209ab368357c9a548682a46f900b47c6be8b65e54916095d3ee699a9826713724c853d4ba833118cea59dceb2f98b454fbd5c678560ebff8241fabc9ef58d66972b1959f1db61bab6670bd6da724e250b376a8e7ce5813d04e48e4f475df6f47309e357bc3df256e1a2a70029a410223cf85d137df3bf227e426c145c3361fb8a4616f056c64aa9eb74ae91bfaf1766dc000bd94672798a00ce741abed3144175bd2b820afde4ae29aba0b8e89be0db9f02289f305c266ad8dacb389fee6c6998afc395d1313df391efe416e6edd53f1fd9b03380c94cce1cedc3516c14faea3fb2eed8508bfc066661314e59411c1f5574a97f486e0e140d8d842e94c16a738f8d8d95775d7b348e4db70c171fc7ee3f181d624a17c1d35e6aeb8c7bb979acaf1338a824dd5d65ed48da65adaa39f78592ab2afbbda75d9cce718709677c8e7e0904ec62e32c7b6301a93aa250fc5914b8e4531891ab7dd819642b22ec99221d087dc65b0c3a24982322420fb79d5567898c6295b51dfebf327cda4d0dd1e1abacfae9ced1eb50e5fc43744621ba095deb3ea95d2008f414fd41f8e0ff340e3ce8f559cbf7ab48fda143d084211dc89d939b33a0bd3d2fd3473a1b1e59cfded82be673de35e00e1fb640adcf5cff0fa4c0ca78b8f53602a61400174cd04630a67c4993e5a1e76f3dee5c7a7e3e6cd2a7c1af62a0931928a2feda0d8541d6df79b3c755fdb96c5303a55170a4d8d189df7677b6a17bfc2c47017ecb5e0161edc6986a2c4414bb950c0e234da864d898cbaa7bd0c16c4b7c63ebc21fc3ad3a7966af7a3fd29845b575a67a5c1df45c1ef26068c812a7a552307bbddcc74ddebc9318f959aadb3582ce82762565b566c4bda0f937c6d728f9032c3da7007d44eae1d54493ee8e43149e0b4babc81cf65c8f92d92a0134e7bbbd98d617a917a1995eb2816db8d56b020cc37a1a999e9928d993d47ea357a10280752b3f2d419ee7a2153647916f1623009268187bcb95a9946da8cca2e17e34a6e80d72873570e790b03c3c192cb50393d4f4476e6fb639d5bc76af0e958758c1e16f086570e7a6ebfb0726a3b7d7ab16dd29838dac9151279d89b7ac5f21446f0102d6fda695c2ae8481976fee77066d4000bf2c0bda2f18f7dffa26e096d8cd98bd75736cfe9c1531e0b0f0bf817d3422daa67862b2f6e4c0577425535a65daddddfd6ab4f6f03e0517fd50fb33b7220fe081ea842c45ead382a2081bb67ab53699e45e3ea76425d4d50bb25e04245732959f30f772ebfd688751c5c518c3bd4f2c6d57726cea07f1f6e2f2d0ae57ee1aa0241c222c64961b5a7619aaed463cf5a2873de9b4afe0ed71967cb21bbbcab85ce995f972e8c69f760634edd19f5d6db307351cd0a8afd6ad2fab5b38384e82e401ed5a143600ebce4db724b538e9d567de5d63fe4a730715260581ee0503c0770897c976f7b6d6ef544587a574f3404ff8e1b8381fa52d958e782ff260aac0362a14079e06f8f5c09828d2e545e35093b31df05a60eaf2c743bd6549ef2867207ab648afb3646dde3ad9c323efb1b4ec8d221d8c4b57d0e39ad2c52f5037292ac4692655f7eaa4ce52f242d99152e54ba88e2a9e4efb3af2bc2bc885a580b65c7608b814dc68918aa1d12efd4b18a85ad42430e5d4df300f5ead20c647674ec7c42382378d6b754c70f1e53f04e03b6ebd8b668215463dce4b780e7347ce1dc860fc36b24defe94316c0379aeceedd4895fa06252fb9286e14901b642d2cffa35b0539bcd8113fa8b59878c4953db36bf5a8b22900a58ea4dd87fd28e4257214436a11881797493ac5ba5d6acba6b4c602da827d76f6b83396f128481b7d1ff489b796b72432d94c858f82f1c2527ad305a96b6c52d405b4a06d727413bc214c8afbfe6889b55be5aaddba562cf4f8dda95dc342d863041e0bc0905171221c613ae6d5db1a24e7b09fc64a190bed5cab02857590841c4acf7ff85759336ef166676778a1db6c13eff4df632da8b221af39c31da96c221b477a637b1bb4e8256e350502594376c046a922966f81fff07326ff4238c41952edc6b9d9eba55eaff6a64a829073cee3df1b19b00ae0054e840cbad0d9233234242829542296c360f83e7f265da7ad9769a1a6e9314b8cdab8d120cf1a54a9468b4fce2bb87f825e127e8db0ed04cf0e05715ba3aa92314257c36fc75305a51ff04af30eb061123901b8de7f65cea1de2314298bb72dc88fce80dd7e1df230cce17aec18b611141c569c5446d95f858f4ca343e6d911880b9edcc31c9b0a5b02f84d6880013cec671d34adcfaa109985fcc608a10ef98f648511de68a3351f0af91f5f61048df4509db72f8d9ddefacda365942edaae2cf0d0604fcfc79609324ab1b44b56153923d7d3cb8bee012fc3a71e64f3492e021c36d32580e57d71c2142dcf4f4de7469488b23863864eb7717e571c2e8947c335401b26cc59149c8298d8044b5001e6ec0b5586a1bc629c3edc50bbea87f6ee06b6665789abb130b4590bd099d8ecc71c5ebb19c3a30e8c745b801084e561cad9e0a958bbba5f61af8dd6ce126c422f5639d825fae06f724ea22a3c4f02b983b6902b9aa4a799e232c322421556a130ec29b852c1d7259e1c9a584b0798c03bdbd64d00afcad065f1c398840b94e1adb23759ccc45a56a652902cd23eef567a0f3b9562efcdd24d5ee9633c5b0731b20a90bc04fee9d76dac786806c431fa9ab54f5fde6ef56a0f07f4b8801e155b59bba9c87b4af4d5703f75cba5a045accff6ac9f8f26f103546c6449a4fd505f537c610781cd1f568b6d02cbb0894b352f148d6faf9866763c3f39f0eb90bb7f3defbf4b4d2c976d109c85ed3617f65d74da8d653841deebd05cf18dc98ccedf2eb3e12cb8695e348e0429767b1d1ef293c97b337492d231f60b36124d113fbdf849cbbc53f68689079ec8a94f4ccb58c835d93f4f185a343ae8c9aeea6ddce1c1cc3cdfd9b60c8bb5a9dade58525d551259fdc09ed48dae46f711b922010df8c5c9ce45f037b50608e3cf0115334baabf7bbfe51ea274b7ce0d2a175df096ddbe26b63c73e81f0b6d24b70931038b71e78899c4a35f9bea9aa87f39b7572628a52c01aaee1fc6b59121ca4331f7bc3d3ffb68ad98ce3cefffc64539ba6d857d3ac046bb8bea5ba15661ba542f14563934faa642c44c9540c32a6c04d35504acf20a898902d59430ebb64c2b00d78f313234d48f0fea36e11704fd314201172ea76e5340224f29c684b71c3db731d2fbc87d36c14bc57c6eee4bc3bd962046389f2c276e22c2120935ba0c5d6199e94ae6bcc069c43e4ee902262f4dfce6c7b6ff622e3af847d7e27ac8369a5a42bcf705e9c0d4aa52a13c6b54cdb5f99de55d5815eac050460dde085ef60c734c76eaed9646160ff1da8e3d9d566bf05c045e7492d56cf32affec42c874e64bcfcdd4aa5108a84d1863ba856259c356bd0358e63ab125c4f0a937996d24def3f7a8bd225b86956dfff477f317dc2b9595eb8e8f34f535c3b8a0cd609b15aed5a19cc5ed1213cd522adcd4a00dffe5f04cadefed0c0252efceef8436469ef3c8d916ccac4ffdeb653f8d3c80d90f6db6e58eccebd4d5e69fb4ac78c3e9cd62d89fdca185069279e7dad94fd1de6cb56bfc30cb2b565cbb72e304845aa92c2704b1b5f50a4486cdd1219ec5f97a91c6ec43f16b6512fb16b9ea54e9628952e6a43996fed06eaf1ea5db46dca12dd31ed22da1fc35e95fe49376964ec2e2dab793f3d68f52bdd22e2aec295ff19398002787ee90934a2b494b3e77d3dc4d41279a390cb80fcd17ec16d027253fb9dd5ce701b36b3b00f16efe46b99742d6898df150d36b31de948321d8c1fb46482e0f66473406d5da3f1ca845dbda34e67673b2975db2eb4405af6d5ea342b2f054aaeb26ba06bcb385384a47711fe6610be8eb82111e50790a848a2775677c99aebe0bc284805070aa46f9a7d02d35f3ba2f47ffb0d09ba4b73c245c20bf89e77aa76cd99a653229a7a8ffade8c311e915bfb7220a6e20d751c171f08aefefa2905305fabc73efd42f486ed76cf54aea73e83edce58a9b44c4a4b714ab1430745e4976daefccf260e3269c3686aaadfeabf888ee3b6bc1acdde77b6e3d58a265f7ef1f261b53da8131baac4976549aa2a38202d25a884726362a29d721d4e08dad5b6b86bd72d12b46a2770cc416d73ab5e837e3cf2deba044a26888c3feb72af6d8dc32932bef17a67cd5044a349e604c453b6753d559a38c9b62878b94e28e68bbf27c29e53442dbcfed9fe5a01eb95e3d8e1c8a8c370fafae9e1ea520e11ad306bb49add65bd145484a2e6a6ca741e5bcfeaf9a91690dcb6c18553631deb0cf9fbc6a50f1c520d149a58a4b8b0f9f7babe6f190bbb70ef0e354b7b07b3f20a82d6efc0301fb9d863db6bf1c88b3d0abae8b92674f60f2bd61e86eb2af134d53215ff69f14d6a97a461d0cd85f597d7e3a598dc2c6450c9819228f516900f3660a69b703822166b0489937f0c3d169522027d838b7d564c1e0aad2cf3aa97e0095ffbcfbdf64c70c7e91d0c6362c5225c6083a996ab6774117edf6aea75aea7c1a29efdd88c9e3df6d5d57d25c3da01b9348e53240182f7f5da83ffb0b55dacc4667dfe3f6db350f254ac55401003d289eb1425a30919321d06ca756129927551ca38e8078e0cc095e10e740e535b7e9b5e4b24448e9f40707b85cbbe895ba62a29f7d38a075132fd5a4eb00cfd9f6cf1a9b5b096d9ce92e9abe99e28b0a23ac60bd9dba20f96059d417bdad9b2bd2096f5218b404ad4b88276a000be3a87a3f932db6cf02c6537aa4dfa88e7ada2e9a73445ec6e06289250c5cc7a928d54fb4a267069e83bfff7d83c10093760b2c12be14e9cafd960055f16c8e3ded4a14be15c32c895a3d17912388b890100568fecb947b1409f27e3236075438a0247ffa5f94235e9d5f0f7e227054afe05beb77f28c4bd54a2a4ce17b5b96cc5f2bc92715984bab23e4da16ee646f34b2b1ef2a5c84d695368ff080076b989ecc602a4e14416bd41157ee125225e41e0fbbbc4d8c88b1b490b855fba06dc2077bb44beea37fa3962c69473da0a26e4bdaf0e9992c95365c34ebe9ff860c601f8e2f451e3b14a6985ee17a9f7e73c1fd8f4c46526770bddd0668d5aad8fe12818e10801662026842e0ae4acb426d453bedc953ed9086892165d6545628929a968d96a506887c9698c953eab3879b7534347a632e15a3418a32aac7a619ebc09f78cc913d043ea0f447a880b65bbdae46931c5df7867730fe76c0a46c27b9407ea3dc35bd63cd1707fd0db4cc91409923d5387b98e60b2fc5accf0062c9448e62581b8ab377592d127366e6bf6ff894cf41b014ffaef2af16f349118b7008120ff2633948c545e1ff94a8c5e7a6bb26f6410b2bbdfadd86d707e46e1aac256f88c289ef83037b5dad7b2f50614073ffedd774800147652676e2c1016377cf73ae0ca11f8ec5c3f70df0d301b155432762fa48e7b318abb42f03d7853beefe26172d0cafd650a79d12e427f5832eacb00dc15b651e6e4ab4fbdbfaeefc28e43eca0397224ac4fd22232ba46d7934ddadb18a5f575c2b62636ac390c8126d8243976e362470bb154f8836d8f0f966a087bb89fe87865cd491743ce0ab3e74d4f27f588961fc6a7c7ed762c8cbc06ae6af33fb5c8fb8201c64a3bd82cd8d500771baa35d4aa3c8fa58d262ab283773be243e126d57df275e76136593501e7e060fb4256486f436573e1c855cb50e2e8ce542102275781007b7e139428c48005bfe030de4b181a8ffc207716ac4a8e9c877f37a68026ebb57662470c9942c03d3147e041be78e9511ae51e923ac05ecf7f7a0a06bee3a7e3f934cb50f69e50d5da1017945828e7f1b0305baedbea925a7f2b94389d367adfb9d660af9a14f4bde39d35444efffba9c6a3060096994051c4a98bceed94f05c3bc23757c30414072ca93c5c85efec042b4d0395a9b54e9c691b568980bdac82dae2908e6d25a30fe8936229ef21ca5edeca163a6779d83923d2dcb4aa585c52b2063d64a469261ed12a632eceeb8d987a94c9315523634bd821dfecfba4c05c35d44009767c4f444d50254807f6fd2a30e0bff7968be59f0a2ad94872d0520f8b9e6201cadfeda5f2c0165e75b93f7e4d1335af4febb92d97f22273336981845df25d04e8c51bdf033899aa5cf47295c7dec2ee2b82fa35f3dcc9c8e3fad8e8c2fcf5996766fc7b412d76eb9489968c2e1a8cbd0484861393a771ab7cfa73f85f17aa697e1ebe82c5568181d384c93862d0fad4166fdeab4ea8a70224098238e18ba1682da0b989923e1182c511dfadd8ec8c974501b07960ebc18461a2c3d7d02bba702e8e79151b5b1b36f0861d55bafbd5112aa2ce0f35be4bb8d3267a077803009dac41905dae489ca8f5a34cc9e16a34cb4223a75093d52e8187727f859634c12622168aee678c0c0778458b6c44c55263b74713b058dc45726fc5f5cb6536ac0d65abb1ed42c2825ca227a3b10c540d1d91ba5a3de25e3182238e64cc0881e97c267299035a283c34bd59d0ee2529cda7710a9ca136795c6be6a032ad61cbd7c5189149e202a41ee841576cd1187705160bbfab55136714c5ae4641a1baebd38974243da0f30d9487d4d6fcf2411a2044a585753b0f4d0c01359979200eca4c5c6dbb64e0baa0564170ee5959ba6dfd83bb2bda45b8b33c143c78108e5600cd866fe5d3045de239e5cda56a8b20debad5390bba5afe21dccab9f70cc87940d0862cabfc5bc6d52fa397af112d5f151b9c92b36e9ae197f3c518acb3e7bb3b3cb16146317d700a4f8937a9d7ba83181915681a8cf5840f91202d93eb5e961e37b16980de8c0135baf6cb141b50a3640fe41e0ec19eed0cbb618fac86f8d03adcb96aacb1a35e84aef151b9be6c21a15ee463fbb491d3cfe3a4967182284ee96850a150eab1086c5818ed01c6f3c90adec55d78cba5d3c3a9e2c9ed0f4a11f149c15885f14c815bcc13f7d4c7d6c04c8e2e8cf45fda1f8225b20b14c2dacc7f01ec0ff9f7b7d6c53c6befe75773fceb4d4dbc875b862cc534a88595651b98e78db042c6166b0c082f2c0571e4a477cb8ca0d90832b7ab2c26e77bda2cb321c3ab7195f1a9d450a23eb9be856a1cd4d7d76c7691d0fec33340a30c17d6c4fa58f30815bae406fa78256adfc5545468abc884efd0efc3e8bd1d287ede4e8042ff8cff42a7a4340be0ea4d518f186ccb0ad3bf14c55e5c9aef0a53065c3a7c68c0238c1a227f484f2cb0316e591c428e22f143173b5aa7cf3d7316f5fdb108db468192efc47f2f61435fbc27cdc435cf7eefc86ffcacb62c9dd4056de00850d8877577cb3d3a5d8ea024e40c28e7f272769b33047bce351c4d9ee71cdcd0e59d33924aa3e89c71b608e76bc3b00b5f8f7130ad11a65748b828825cdb5d9f18a90522681888ffd340fc9f03f17f0ff4f1af80e05694ebe2c3b14814ec48a42749d4ad24de9349a4c9490c2118eb9823ddf7d2eb8dc4a6a1ef0eba909b8b2ab2a2b2f0a7a38905a42b30900417330ab7e9a8de4e88dc1877ffad341988907a8cbc09ecd3fbdc8ade79216e2dbd1a14c8509f4e8d04e6f30ca389618dacd6920595682f61e00280505af5dbb5704cfb469c3b39a7f78cc79634e2e15289fe2602d37d5623147e0f887af07ca5e452e55c3da7695e38574b9bb748732edbdc756a2f38bfc2a7793c58886f79632c689b3c5a16383f1e8316fca796b910e14e631a24f4d38c5f50763b0eacb088eb0771db745a0a5fcc6a41b13127665a9b9b2bf9172bc9301cd59e3457ba7486f039ca478b085433239f266c9a27dadfc2912dcf7cda0b589678ca6db989e832389429819817261f346e267ffc06706847efd290bde62728151c495b62922822271b39120a4770cb6c89a494928a22c43e811c46d4542c77324a220da0e7f52b79e0e3b1c8a0b80bc88b090356e01748eb21d84a7e24803844e2391055443514cae9d7e25221f8b12614ef2bb9554e27e35b10cb5aa154be3345f0b1b17bb02c1e7dd31a6c267045b5895a1d3f6a81d9b4772c1f670e9a7679ab915ded512525e7318f794e5dfe78b8d7f2c48fe805f5b75148d447e6bd4551e9775f4fc8848debd856b7f8b812531e3fe16fc0730b14d4410cbb9f16ddbb9c7de21afc16b895852c07de1429dc62b1e0e2a1782e6a08cb6ad590312003d2de19aa4046f4859b2afc79fa34c6f147d7cbd3a1f385f3fba99b866eda0c8624025527e8a371c41c85114a5f5bed61201193263f6770b21c5c1d5fc2e08ee3f06a5035223269c53ab6319fcdc3ad2a59726a70dbd8b011ccf39deee7ace7bfd2fd197b0d862c4611aeb684b2ce98301db582b44affbc50fe40127e9f4925d3a318ee6c819cfb0802053bbe81c47195bbc4870de81a4a632b334a6220273c28b6e8d51d626d7617f6830fdcb1c75980bd8f0c5e5c310f7ef76657b336bdc8fa4437c3258b8794ed1848fbc3a8814f6b273f3838c7dca3aec7a62f415bd9a45a6af9bfb083912a35791a32f155f15ba1b07badf804b5c042413ad3da04155e7d8b3ad3db432bf06c6996d5fbd0aa843db6fb4c6fd34c6a026de92b5764d92c5aafe9f93e1febdf7c247c4a1ecb2c34148ead53569d55c332e93b5aeef02a5500570a0e7e14c5fac0d0365d7c3f8b414099e17d4d94869de3576c6e0e1820218dd27368c2edda1413e776820f28f1dda91a53f656deb3308f6d5f37555790efa587df19b26e8a6be29785d126b9a5ac06ca1498bf188cc6582a60fa150ae7ccac7fe4c6a113b5f56cfc88c7f11f63e1b5a0ef5f0c952c404a0dcca56f77f6080244e3ce067d1412082ac1ebef61ccc9139a0bf064eb9c0fc12fb56dfd42bd06a89237075097086df303b1def7f67b1cbd6da182c956e5097b2228b1c2a42ef1ff0834a7c0106d02f021c1ccda9841156fbd9769b1cb9500baac77efc0da2a211ee3c58b4838d6d6d2d72ce930743e3a6aa4094ebd1233fcfa9c186149b1beaa63c86e331dffdd19e633423d7a8fd32f6313c5c02acf3d663eb38a2b6879b4304e7494b6011deb369a9978dcc224d9cafd6f28ae639c61dd89db562f9d0049d0e69c08c7bce70e670a05ec9e9d04f9140df76573116c95178b4f75a5353270f768ac306f48c500a2f703227578e38108184b153de00d5237768f91c117ad96453cf45c29ac2249ae5b05ad156222d5ac6ff6cc799cbb3d2083fc54232d556b467b9799063460d69429007e4ae4241a47e10c8dd25394e3185ed67db2091d643d6b750206bb8cf3fe9104c874ad963efeb2d21f67dc26c2080b906d2150e3698e52a699907f648c1f7408ccd301ba51c14759404a69261d4481c318e1f06ee85cfb0014560a0c71502492f1ea9cb9b3883f63f3cdabd54a7c58bcb72b1cc00b3b06ec3be67d33ac5b2a3ad6a5ee27845b158e222eaad93c5948f85e28289b1db112912de5de726f29a5943200043704c404ff345aadd7c7984410102d1bc5c12794e2611872649664f5fb3fb5fb0cb80b8e6493823d29a064a7d48947f4f173af37883988a81a71513afe2114f9b9177a0b063d2792f949ee65dd7d0e647e4ec9998ebf53b2a5ebcf419f45fe44d5881be904398f24d39e55a399c4d4819ea81add0c06fd862cf41c44927b2bf4fa85c6a1a01f42b1017c30bffd0e0ff441621253efc045a59ff165a29248a2d2e8c85d91fb3d29e880768ee69c73eef2063d77d9033de7eef3386708fb49f7b9d71ef96d0a26717ffffedd263218016512aa5d9ffbd9d35b7ff7de1677625d0b34ad57ea57fe3f9f3b6b3f1bce91ec1effcff39fe00fbf3ff7fedcbcadf7348bf53b4ceb0fb56896389109e17bbf1f65a2ec8acb7effeccaae0ccb464cf47302fa5bcc1de715338aedd36a65d4bec939e79cbb9cf37b469f7eef3bd19b799ee7719e48d630376616b30fc69d16b9ff4410cc3a164130eb4a75c445da9556ef705a230c3db1f08604ab777ddeacc6dcacae589d99564a7aae5fbab502d2ed13d51115c9d27aab38bbe5df132743272a5a5d20cd32099d3e6f499cfa02fabc2101d3e918eff6bb7c2d0ee3f76b70727ea9c8002d413be6eaf7c1e8597f3eeb0510f52725f034570b3bc93be65d96dd9f1f6b2d4deb2d765cf770073f74cb3d884eff04b3e6decbdeed599cb777f6f7166bf7c42d5218d9d35f0c4e12756bff93c1c9ddc5cefb09660f83d9f3d8c2f6fab6ab59ba3b3f50ebdf6c5ff696cb95c609551a37f24af3681657849dab948a97572ddabe06e1e1e13c77dc4f6bab4c7f3501be96e99f9f0f0404040404c439df9c733ee64a03fa2db2b000485c31eb402fd39c03bd8cca64b2c9c2823faaf47152ee94266a7112f1a7a2d08f387f24f96f202e92223a7f5df7be611b7c0b9a001f68ffcf1fd5ce5bd42edb7f64f5164948f5fa1f149f4f521d188c94f3307c6f0f51af4bb5a852275eeb407382fad9e058fa49e39f3311f07943a242f79c9e15c4e0a84f5083b1038a4516f7c4c841065f8a8e9f0316544dc76f9fa42ca8a5d24174a6133afe2e69aae9789c73823b92b923e977c0443fdbdfaf3d88f83b8856dcf0d5bb1f4261bffb0fdf99081f8bf385f0cf39c1b5ef3d16499bab5cf4ee7624ac6b0e3411be15393c1665734ef09d7e2ddb1a3cd1fd86cfe28607129534a9ffe783c4a1f067eff097ff1587c2f7f01ffe138750e8fff0fa3f8c43e198c4d4837e088587e7efe1f9f39f608a268a3403c409fb39bf0731e83b90e0e7171295807ef69164ea1b46527ffe230b420c12674af9f9486612a21238325530a91387bcef80b2a07d6c8bb09ebf05d73d0ebc6fc1f5ef8b45005858d0272801262add8e7386c8df811adcef2ac882763bdeb7b25e4911b5265efbbc2189d2e9cfaf126022e99c213069c7fb33697e3faa754edabcf6bf5b443fa3853c8ff6d001039ac32c67211161b84145101731f67993d2a44f09f49c1dd0053ba42a6d4aa9eab47f6138f99d7e6038f9bb568dc0e8cf9eeab4d68893b9e76a64ed4dca903efb156fe540578d6a07a2a0748ea0ebbeab276a67e268154103f1797968437c7478083cb1c801ad95d27a7fb06a109d44bb8ccf4e27d10e72cb01479fb729525d449f372965fa0433e0369f16687d9332a3b7a89d45d73bb87dfe0ca13f8fcb38c516f3b76f472115481e3377a2eadefbec754fa7d1e54e54b476dc3864bf62e98e3b515dfca39eb5823b82de91e3964640e74acbdf1a8e79f74e5498fb0bdc394340c7b34ac34f5469f8bf3afc67347c8faa94bd951b2daf55279d447b1da2e2a6cf1b153108e8f346054827d22c85939c771f569103daf1e351c8bc51b9d3eb8d0a903e414bb91395f7936b1a71eff149c1fcc43b849f76dc8fead72e7a7227aa6adf896a7e8c0f31ae4a2f5469f50b2773aff995a8a8a4c52d8a988ea5d3e7732469add5de5b1437417ddea2d0a1d382e959f5c764d65b142075fe0c99467061c996269b90315eca6445a9a1434e14102ebe17cf2d1b980f185a365200e2c5c5fbbc5d795dc1c1f21da1e3dcaad58ae45caba2015b37705505a5ca5745e60aeb2302250914214386d466b3cfc7bdb35aed4321e7da27e4499ca8277966407941e33b01ecf306a504284f4e703401f2a5709d0071faa69e6875afcfdb9336ddcf90dafff4ace212958aad757dfddea842f6765ca22ffbfd601d399765b9ff8dd5c377e0f01e9ec32f51a910fafa94fe7d15f4ef7dfadea8220cc714e312958a0e4fc7a59a2deabec37b183b8c4b47745caae3d2dba2ee85460d8a7b5ca21aa2c0f779bfb4ff7b6f54f1f3b271894ad9a2ee7f9e3e1df7b8b4812dd2631d97a81ea5ead371a9fe12950afa755c5aa252b19f8e4b1eb045ddef5f7a5e03fa8934bfea93d4c50619169f484147f667894a85fea0718922e9ff7920918b1f50a9d8239db21f4cc9b038376dd148ab6c912ccb1e3f58a2aac044c2cffd44fac60ff04f24925675a4273c9e54f5a114dc5f802261a439eb7e986ced88d4be1eb5afc7ecce6814df4d9cb83e6f4cf4f4796342a78795d604c785d2b3de8c343390ed2f73301ea04be0125affe538ae130abfe65bef51adf75e5b9f5e1616d44a670993bb611d4fcde7e657f21b269501a915c2b054a7583803a0092a725218e32b75af075226ec98efe573c405959b8eed631137ce9de1c6c4cd6d89d70dbb61565a68da11757ba2901c9e87df0a663c52ada0bef5bec7527ad3bec7a10bd407bf02f541a6ee89641649dabdc7dd33f54f9c5ed8d230ef8b1f528efe9c765adc91dcbd02efdf724f0ff73c3173fb73e2e4774ac5ceabc38f320617bcf7f6be0ded982d1d1bc0d5b9e89ee31ee359a9c84d90eb680bab74c7bc655c1ab6c1378393d445f71bd0e1b49f68d1b9dfa0059dc1c907e1b5abcd347c5aa7350f8ee6f00b92f6d3bf43a2efc915661e3ece99f3307aac7410233a7e4cd9a167945a5e9e769797261f6351c4b2c074589b7d65464c183b5b1bcc4d9f70a599583d31b2bd7e3cedd029947b4c97a78da54b93fe3276436c3b8169ad361a8f191d6160d8da696e2b5c6db1da3f8ce8f9a1ab765c29dd7079d269b834ddc6760e3136601f9f3648cce83c61b66d6b8fdd5eb8d2345869279e8d4cf1fca30e8fcd428e5d26cacc1619bac716177a053cfb84ad399dac45817513b6dc74b256ab5b67bab5b656b3236e1db10ca0472b0ea7652706d6da0375b5d080b25a724069f131430b11195f9f372d55390a97f5e66967c9a9a1b3c6687c5ab49c760fad1b9b8be31d5352dca85585af6e5c1edad0da82b5c0689981d27a0146163e323ecfac2a32b2b2a09a6e9698cfdc9c3baec55598602be50f5ce508aea2e40508236731c1530b31c7a283e5d427c8e3da7bedd787e33e6f5948b48f22fb0ceffabc65fdf8fabc6591d0657ddeb29e3af9b5215866b318f7ce6ab519b53004698421bc828cc1991a224605c9840a546b81db1d02c7250dbeecc197cd3a51f54e4cfad916d9a2ef8866df48ce886c17562312730fcab8b3d2ba51891b67aef64bad9b83a0002769b3fab4fa21c84cbe91a5485334bd30465ca4af89533b6794037a760d6e56b26627ad05fb70fad62ed1b386350eb534e08b594de80a812f665a73ccd49245ac7c80cc06c40216ca3b36b1925b52868a0d3d34cf0957ca3d2e9401b0e5d8521e29ab941e6c71ca0db6362575514309005b8df26a5d1193a4061a3a8e946a6c3fa84a3e6567802fa551016a36242502388efbd12dc16264acc80f2a61362c357cbc30c158f0526e296918c1802e25016c5e25079b958966cae92a1d60b395784a05d8b80e60a350a80b70a81ca921f30684654830c9d03a15d86809b38517e88cf905553229876c45ca06d83e9bcd28708d658181cd141c6c6e54e1b2e183564d2c694a27e5d4f3b67966b611a2b73ae58fcd4709011b9d9ac4a92cb2dde051d229585f614a01d8e64c3a251d414cc9a7245282b0bd29b94ddc9300db84214896d20c1a37e502b62d0a9d010ccc56530d2568c391029b12061d60ca382a941d6c67a80c9c8dae40ade6581f6ac2fc426374116100b7cb572a870ccf63ca6142982815a682147182d4d9e85de77483bf95b9664e49a624b2d11f1e081a37aa60f882254a9a282b4ca646352da010a60c6d5cdc944fd34c9f3463a5089b1d252188a15742d8289b69470b96b24af9c1d6c346417833f3d020a4ab9452d26c256cb4c98e72e2a121c80282112871b05ee408418e6d4aab9cc0b695a566665160a36131d028e91a2e655439b3c1b0b51170404912c78431355055ae9ea6bc9429279cc915c315091b25c16b8669dbbc33add029faa4ac494ac078c993450e1822f6c94a93d454906d0cd60b6a64862903d8c475016194b5101c98404dc4bcc2b931b4457516de107552cbe1adfb4de19f1c4e9f572314dcabd6aedaaf6febac62adbd8ef46b5217b4e33440d1817edf8ae49881d895eed79f59651d98818dfae67c732eb9f1db302c00cfdc16d90fbf2f8ec13401f8bc7a003cac94d671c6a903b400f8bcdce5f61a3e723c01f14e3bfcede824da0300a401c0e7958068883b51e90e78edf346854ebdbcd2760d9ce4dce438fa958269a7591b6077bd95abf513e3d656fb1cfd4fcc5a5b2d140de2039f3f396badb5f689685f9ddf0ccfcb7ab0548dbea7851e08a286dc7a9ee729e5b93dcfdacecabe8b96f0becb2daa6c141ac9da3b8c71873b6c3dcf0dad947a626809fa9f77a6abf5bfe7f07fed9e57e7baeecb167d4971de47bfdbfdeb3e05ed4472c5e6aa5ad714b6a87a5de4ed1d16870d35a8524a3d319de7d5795efd0bf2ba68023efa55b9667d20dc7d87ee7fea57c761ac5d5ed737a36b6badf5ba4472772091dca038fbc5ea9e62fa1556158a343f8dd3abd785a71bafabdeaa7e49fa352245fdbab95b31dd0875f0c91ad6efffa4003f4f37f5ebbed7e5757ddfe77975afebbaceebb24369649446991c541c277df7a0af6c5cacc9ea6b747c85ad19024af5290a840e99a18b9f814fa566cc867c9ee7799fa894a7f6bcefa3de1755bf0a4a758a31fe32c623c6d81b95becf8ff148de8a31aeb892208feafd083aae168350b444fd8e0471607b54abf7158ccaa054bf947b95528ed26ab9ade3f7dea8630c1a6b05a148500a94ea1d074f043dfe0912c1289a80cefe86e7307278a191cc1657fa1d84ea2bd14aedf39f0eb68acc3c242fb7158ceaba0ec4eafac318e3ec8d60547df0c876f4f3e0be0e3bc256d9a2fb9cebf02a94850279e8852118c57d4fb6e83afefa95ae08fb475780e048aef046300a146dadf22a54efc2b0f3b22ce8fd06a368090a46815260d406fa41ca8d2c74d010e1029362c1f6a8c2a3df2a5336b83e6f68ee705d4a29a594524ae9fda33abfc6c9a2ebf6e9ee6c3e41ad58bd9cc749a34f276d76db8ab64f0b74810e3837346ebafe40133229dc034fd86e5f7f93567b65f6ed3839313008bf3453eaa57327e94867aed8dea798a4239705cd1609f90bc758aaf8b5a2b9d03ca1c38ff4a13e6f6870a0a941c2a560099cacf51a891741e20161a5d544dccecce9b6cfdb191abaa6f286b780668389a1614b4bb132c3931da5ca8e90ab1e2ae4d070ce406d1b679af6e4e922672f8133829a225d32703973e5eb2a4e122d0211dd666a3319618899a83133309ae8b122b6d7c4a097acc1e1b56378c9c23245ca1c25688c683114b290b0e7b42015a305199a0b9f21357c7be2386903a3050df6854cd68642656f61a2c350dd80ecad1d9a87cdaa0c0d1084322e76d8e133431217b89cd14dc26c1c5ab6952a1a89934fcf912d27853dc3042138f40c5e4f34bc5e38c1e322ac84173490341bc8982db64543b9e9325042401266c836e1843722b44026846d868c935633f6e59983020c7bbeb61519225db40b2cd41065e7b1d25b45b0f8b8a103842e1b5b86ae18fac89e2e3a34c07eb0d945ca68195c6cb2b8980266091c15f49b1f20942065cc8d1a63666c257d76581d6d93e1899b2066aa8041a3a573606d214df69115b49820523c36540983981adf981810a8eeec2f1ac8bcd17cd0dc11b349d8f2b262e4090a55ba498856d2a3cca1260cd48b304d35e4d94d72b0e068186ab696ae0f0f97efce95dde66a7749528388ae330535821730512a80811103f7f4c8e19ed816014cbb69e3c54c0a6174095b3b6ebbcad50856584688fcd021ecb8526eaa2f4f9bca9726d0c5581f3116c0d6b41963463f8589daca722baf5eb08ac1c8eef3636a8726a1d474b89e787035dd19db71c49280e9176d5c3023230c9e2d23b72d75b5039154a814ac192f6ac768480200140583160000181008860402712848c2589bfb1480086faa32623e24208ec23808822008621006601000400006001004011886a13046f43a002d76b00c9f3c245f144519f9fb7ba8e54e4bcab83bcf094d8bb6b25e2fc7f5c23ac17454cec19107521f081e993f948a28128cac923b995ce80e8e3b258e06eb01fc9c0989530d9e2ae354b65f18646c8e354cd25ee13700c2c4bcd14a35b494639332303c480900269b03d794595a5b00a35ebd4b1872301f4e3fe118c6ae74f116e96a2e6156765f072c807226c9b14ac7bb811e905387d8491110671e2061d75c24914f91e99cdd1b6268ad4c23e43d028391a19cf6ac7dd8370e3ebbdf5fcc2ef9e311c4e6bdc94bbbbf84e36ef87164bbb5aba433c6f91093dd8db0d77aca834305c161add1d64c1a10389aed08831b2f4b359ee47ccdbdfafc37c8c611937b42d1b098d973b38ad1bb9d97c7e0e41a84dc42298dbd6e9f57da4f9141506890ab3624e69abdd3412a57922960321426d2138f8866d8a01eaf760ef49501f0e6e8297b526d1f3bb5ccd221636bfaa89910b02ac547b84a4d5c398868cb558a7f7791df0f2ca12f7b14a31a1c89ebb64be67d2e0c082bd22b54133518697bf3241a8bec39cc8cb201d76c7f0f08e19f6b9c31ed28d466608a33caefa28203f071e6e250f7e4f8c5e093cf0a03e3c1e16a429217054f19b391a7532be82de2d9e861dc1bcf1d6a4b2ed98c634318a92f8fb664a3986597c508d1493ce88a53363503473bcb8600209690250ea5bc1f1675e62aa9a625c733593008a00c314f4f6e33f800a78015b34fd6bf78fdd368f49a96ec0a2f6ac9adef88ce7f341f7dc9ef7738e6bf4219c15225bd02145884cde855dfe0b0cb2b69aa95ad3281e87921874ac5fd6ab54b573d8b99a3144896a38fd619c9340a156b4fe8009c5819a0bd3b52d7b6208785a388a3a61bc0c627985fa085babdcd9b7640d205491b6549bf407125e3603f0841318adc424824212a6126428473c08ee24395d0f68170cc5bc9fd142d8e51f6c44cd782417b3a163ce507c0bb38b7a8146212cd9793a94054cb21bc955aafe2141d3a60cb6640265f08040233d910829b2e00ebd4c90a76f1946c675d10a0159e19abcbd4a2a9ae348855619a92eb4322780babfff8be944c6488600dbb1d7f5429caea2b8c2b5fd1327b073adea06f618a28a3d453238a83c7be07289b3203abb8fc10d950a5607cd30b911236046e3491e881d4107ca3a36fa632046a18d89a0d0fe583c42b110c7b70401b07ff93f74e129643418f4dc8260cf35d4e59179088ca038e2845cd28c0600737c4fd385d1a1ce4f887f8ef6bd998d7940cb367882bc4a465635b6f6e5790c88256d647330f26d9f8c050ead24678bb72f0f6961de40aabc798739e98c8f1ec45ef5d037fb1c0fd911e03a6934a926ccccdac68b7f8eb3f784d4ab2b15af8015279566485856432fae7689c45401f3f10511e3b2a0b6269c1398054aa9e14ed0eeb41c3ebe31bf92d87e23ac3f076246569d039212e6749b41bf935d115aa33b87a349e8d7c490bfd0dbdea1254538db48a64e318701bf96e3b323ac803188be3548140e0e32ea4c8af806b1fb46bcf1676b3739a40ef1bbe036a310f52febc0d05cb1a5d13256f5cc7a4a775bc3aa6a361032ccd43993112cb903e94986271a33f3e7fb4644c698a4af1b1e1e004260e59ca4e16be4a0fa9f8b49be25dfcad3e1daa591b6c6cdf750fe3fd7a6628b90e38dc9186ef3673c614698051802e5651fa27216f8d740b91e751e461869e7e6e9ae2b7c97614ed3aa3e2ac3365345f6c505eb6c080798d13db12b3d501a4615ba81862e370929bcde6f3a26f2340bbe5b092086c20901a4d81c9320c88717da7f1791923410dc713331eacd26dac09addf938318e6fe6628135fd8a00f7cbac6aab1048b21580ffd10d7039094fa0f47c55a186421aa01d5dc31ebff220ad7def4292787a5cb2668f35ea6f67a6bac46d944ac9990f5cb61436f5c68c398ca5c6b69d6d8f92eda8cac4f6a7c0162aa5dec4b36830a6c6f8ded916b8f86ea650b4a15ccdebb25041fe2984e04797d82dee679f65517f712e0ea40575b477bcdcc2db17fa5c6672efebf04042415461fe947db18de00aa4bd618ed873994f34fc67ac3bfc473d9965546c65db0c6dca7edab00ad94179787025da6744b578b6a84148e07e653ac77d139edcc0d13f12199b4556c68dce758087a7fa8177da2c8247eca70c658f4251b60dccf694a6c3f66b47d36d1581c779c104fb07af2aff4702a69d9f29c49406efaef456742b359935e503291ee7cf5a9f1c1748a3da74da81c42416e9ed175c89be781755f281556fb0871fb8584cdf9fb35a4d6fb60f5ac12b580932b28cf4f3d0c8dd1de2e837a5770e4764234cc84d5dab6c9819f237af72b0ebe08d75c53e7d0bf737109478f4983f298723b5612de31bcb4b31ed9f1ba7b0bd74475906e194ba317205bc6a4a2b1c8d56e12ae37f7b7d45be42110c9e07bc0efd91950792310e5f514778fdd66b784bcca16411424e86b3ee07cc4eae63f99a7fc7ad49766204d2656a210bba98290b2e6d71117767d1b54d67fad63ea860f98de3e8a413787fcb64dd9e281afa4f5fe77c09a97b24a45029ea1edc8b4228868cf795ebfa4358e377a25877c9b2f422cf24737a6870037ec43bc1f7245c7159a77734f90d2a74e293b2db3ed03ef133234c22b536402d524e4744e951371e0256e2eab89249e3181fa7aa8588f9635ceb091ea4e4721e06bcabd946a9d662e19ce4e9e84e324ffd95f39db1a20cd611625ad9ac5fc96a68afda1e02a60ad36ce6aed6b211fb2ecd0c06c1f2e2e8c150f3fa1a70d4ff0ee192afa42476143b0a94acedffc601c8283a8d13a781729783d77f40f3763a8a2415ca073449845e292a1e59c098be60f79289b7d205c353922a2120f38fc7572aeab366750f35031b5e43c58f96801ae7fe3892f95bb3ff1ba3311e7aecbf3b1897550338454e88f95959c1c4b1d2371d110189ac5d6cffe4f6086e097ec0c5a620ca36c682fa4322e4951b02c2aaaab1d56d92d6f4006494fe52e93b908eb4e55141ebceb2e0c3f37ac76039704e5c732503406e3f61f04294efe5a5c586554b6a6cb6d1083fe5acf8103cbcb42c9c17470ec1f801262258bd584c0dca6291de3f302c1a00d101c9fe8130917f73e432e84d0a73a2bc3783e48b8381486ef42192172086f6b578c998e4f573bb90b4087799b2d06fd558e536eac93a24706c51ccd7ac32080cc125d97f3907c705add857b4ccd8430e0c5413b6b08c42ce9bd3e12038ee6a6298fc66973232718e826dca72ee5cd8cabed7679329e54cf101f93af5180d174fde69f051aa2dea2697044c521eaaebab8f48d025068229d3ed11191f4a87abb795e9d537f8a8143512541491afa571e92996559bea92042230ef58c9130f7e03a76059b2688bb08ce0ba4c136c1f87973b223eaa759dad9a988387d204509068274df5722ccda57ff9b581ccc3055bd0a3b9dda23e3067348d76ba300d2fdab575f2b3109553f530381b56fbc56a2e798abdbe198e1b99094a4ce84b31843f1de46f7b6e04430ed547844c5ca057c9f73269891ac6a0298b5ad646acf7dbb95127ebd6863e16302393f8bdef7ef1daeb5b61a0475054170eed580f1790ed50033636c2325b51a563b88b59d1e02384a622c1c906e82ff0f1b1b8e595640acaec0cda691fa5b187d7914afb21c3131c565fe1ff6d868d671a1f705c9174231f73fd1a5a58f4b9d41706db44ca0847b7e0038b84aa5538893a30e0a9ce079603d86a3271520d24cd98676c218467809648cc4860c2a31e603095eb3dd63460051f612ba63abd58cb21df6fccce08be6abcb7c778929f32bcd8b4b56f2a887dd472ebda7b32fb5b41e6232e2062b5a38e62bccbcb569f1679982707d7ff70cff3d07f272fda3d0ccfb8c23e9b5e01f88914342b18e0cf585160f124485a5d5eb6fdf38f41381909eed5cec57fd75f01ffa304f6113a1848eedd4f271760cdf873e6c4be7652b5f5d7010ad8272eb6ad6b1bb3babe773010ced26c01b5bc895503bfe5a309e73046ae9bc8be6bb3833714c695872ed625ede2aa8a6bab5e55dbd5534cfc42132dd8ced2d092c99fc560b65d28a7551b7469597d7bb272957f1dbf8728e0860b7953658394964780a661ca90f96484eb0ddf1c8bc1b6b61c3fe30b36e371fcc491d4bc2719d29c501d27183331fd9467d151be85805f43e8e3eae47b554a2f3a3bc0205d47135cee1a74cf0140f1b4ccd1714016ef03635576277a70a2d724364cbdecf861ca6423b2a4a779323abd9703e3ec21adbd104f584c453c735414af2803116623ab5a180f3c2642867847d6cbf1c328f4f5340f592352f93d91a2f49060fee45d9b8ca04eecf189a53f7544ae153528238993004c61c229343fff5958dc82dc35f7945d0cd6c508a6fa3e513fe5c9955cad1dad009acfe5c1027c69c8b089cb2c0ac28fab4bde721776d12596afbea31da7f5f1d4eb99fcb9962442338a139d3a342a2f4d487fc616047504adc613eef23aaefdb782e566b7e3849b988835bccc42b9af24371f78d54983fdc2e50dab006621f1e383fccc39f851befe97067808c6c7a0c8bcaddf8ff839640645aef4a9c333e5ef7101608f53c869394a98bde56509fc94ccdad7b591a49ca49b7ccc7b3b67f6aa2b42ace4d64fc8172173555f12c83529f9c246d33117b7d2a6aacba7a29c02e52fda753e1483fc9046b0a03cc239c52b9a9aa400571f036fcbd787dcd99359c51dadd4e087710bf884547a483f18fa3610fe202f493e11420ce1511f4ffc1eba288e0e1797d72cdbd09ff9168680d15a62c9c29422b4237821df112c22f6223112dc43e0eae721141433fc2dc2e949f188766112db41f3e3ab5083e71ea58447cc4b95d703fdd775654fc48a65d983e62ef30904882aa0152ed2d231e45f9e95bbb4042523f35e025d7c3ea43266105a2072ad32f5d24cc618c3e03ef80f2fb381a17628223a890fd3cb60ea2411017647cfce166df2e99a51ca354ed2b75bf5cbb9d929a793ee0aa7b6dc3b5744f8662d85072428c3162d53a6c067dfae0b602d350be6ceb61e572438046fc3c02a3f0195f6ee4ed9fa65b80e886802f0228f4cf66e36544b67afff4da0595ff6042bbb87e486e3e44f410b01711e1cde70eed22d107a70e23e2830eae8aeea7fbedc2f207ebee041154f3f3502308918fb018623b821bc11e820bc203f111a84474e4fa42d081b002a12988a0763eb65b21085cc4a5109a21ae3b0283f5e98c63c1e423f7762102f9d2ac114576775d3e5cd22ee49f1e36bc02ff381b07b4b72df6c88caa6ab66b21f000d88c6685b62f72730bf2ed25885346b4d0fcf0d1fd49fc94a64504422dc287c7c61a421c8216045d23c604ea5314ed62f4419853ebffa79fed42f7c3ef9610ee08ea8d081af51146bb50f8c4383447606c7f8cb442445c042c44aca5fd90a15d28f8485c740862046b21381d81b1fba08d3bc5e207a78e05c40f3fdb05e7d37b8ee40b9fc4b615a70ffb568cb83c040b8b1f5bad1841b911422b3e76478c583911115e7cee2d8a212e721f25272f443ac23e623b821ba1ad88df787d7cad5de43e487711d1961142371f63871041b808df287edc1d122382e27eb8d42e649f020e20c4d121acb87e0ad78041d483b046b474508b6a4d24043b818830a9454614235a20202da4a194445001a89e12b8c704c5634fe9115cdd010431ee46ae997af78433b994952385047c621ae1bc591988b3cf0bc712443fe8ab9fd1c572d16bdf094329d00149c4d287f79a59b92f6dfd1118f5cf783b16d83ed26862287e606966088d12da74cb17cad8a0b8b5e8088e887684ba22d6eaff915ebb507c301d9b23d8aafd183ac2107311cb08df8c00b4fbe944bb70f121bb59044a041dc8ee8a80503c44508a8fcd4614626ec42e2230361f347455143f3d6d17227e1cee3aa0cac5e76c9a979feccd24c226084e443b42de2330fa3fd87340153f9c6917e64fdf3516881f290d23112d147c3cb536841806c7c90624170ef4281837f9f8036bf517745187c38ae67cf0b965c42bc213111ac4a4dd32040bef8f9a968f608b781731368ab04a7b2ea2d1904f6f76f55b7e12db2e4e3f6fae00913bc3fb6e2f8fbd82106eae522230723f88db0508a5885b90c15d11040bb90fe9368b4005e2ed21d6d27c0eb6a21071835006711bfd164e16fef31480aa95140e078eae57f16e38065c08796f17513f465788c089b8084213711d100692689ad096c7291917e81dc4ae98b07005baf1a31bdc623d94a6a04dbd40c4fae2d998e06fb09c89a34ceadcc9b29ed00751387b539006184a82ee1369b7c3b08a86d8c925a50e0aa3ee3244919e5981aa99fb7818856be0f6e3eb88f30dd7f7ae6f07ebad9f4b1dbf17c970236649dc46aad1146d59d9d1ab02c423e7f83c3671e172859c5c46fbfb848988d6dad90fc5e277b63746df4a396c2e12a073518429c049862367da0c91f75e2f019b01dd59e3469874014b05b07ed9b44751c933d89c6c2d524e3f4a5ad39ce044772f64c40eb96e12a3f1170e8ae0ec901e82023a70ef30f0286c21102351cc5b94f2ad6f4129d4e1eb56cacdcc95f2a85de98e253bb59e5c1d75a8758af1c916cddc924cff87b8184bd066dfbbc4ae6b644009db26c3529816fe788c5566d4db7dd37db21e258f004e7dca951ac7cfc2a1aaa922fa243bc8d0091763e7bbba425545b28e5fe8982bb0916ff8364f53faa6a668584026ee7bce4b046aa83dbc994891723ef1a7f6dc9337b76d02a34e8f52b6aace8697ec30fba12a9395e1d89da4e8ba039b731be39a1e796eec821103f7128811b92b003bec8a2765a385152cf08acb19bbcc3f264cc57055dc8304f08c4b0c2d0f851907ae0383009dd8e80f901086b22b755536630ae6f0026da85abee48d6ae295ee0634647dbb91dfea3ed5c3ee19477f740a8f27fddd5a2b3b58290f2f22a119b2d8008d4c076396a14528cdd9d9cbcd621f855c57e5e59e3c505864cf088f031c8a863001d6db07341d3952b00c1ddfacf7b0f09dd13465b46201b35c1cbe0b328fdc28ee8deaa7e37a1acb8ede90451622ea1dea25d097214c3b51e648aae24535d06e407faa13ec15d4f41afb596f84357e0f257ca4967d715cd5c7783e9f1448d7474d5bad25a40b4bdf4b71acb7a0fadde58f92b1a599b35ae2a1945eda4d209c185177fad90db1c3554837733fbbc7509ca03167fb9af8149794b99e6b1774171e7d3dce3b4583509657c813178b93e84bdace55ea7d516f1b3533b26a4d396158afc52b61f5da132fff957a698b6c7cc148bb49e1e0238fda8a2b1cefc9a360bb843d03139c534b0809e294235121e3fe8d43a9611889e38d701ffc2a4576161de1a45c20b1c745539116fbae63e30421aadf674f4a2b670fc9f7099d104a0237c5d3b8757ffe685086e0daaeb1f0ddb932fab522a1061e55df3fcb4f73298e4f6112e9077f79b10da1ee63d0b5ecfd2b6916c14066ec2cf562ceba75ae0de19d5b5055b2c13c06bbf52dadaaee03de4082c9742f67e851759b291b5c11b2975de08269e4b804bcdd78a074762b4c91646a976924adb26a6ecaff0b2ed3a76510aa1b33a3a7658a24b409b05b28066fd41cbc0a214dcc0af13ed8176c969aa6f9504f64e158fb30b27aa0fc0191d65821796e17bd6b428d7dc9a880fa1290d570e08bfa01b97eedf748a9df2a7609aa144585cc517a58d2c7caa030b5c47da8251c404b1cdc2048bf27d6c1cfa3b31d4b7f67495c66471e4ea8645c700f6609fd2edcc0d8d8ff541005267b84a7862dd9bcc22b87655bf6e8eb96de632aa9e0d7a1a17c0ec90e0c6bb49f394275b4c7d10493e84a1e7fc02b2edbb299b8553b83298575d4b3962be04eb1df3a936e2603030c8236e1b8cb102c1423b0274ee55c736e082b24f04743294e1caaff490abeba05160590491874249ecd517560479d1ea8b57b25077c9bf51c0865813dc73c361b1ba027b062b54e81ef9c0f8831b50fe5f27114f305e00b19e8597fe87189e5de8fa82baeed2aae2e5c180dc29d3f15b414f48464d7014e8859366f4969e62632504c316066c6d1e3ae3ed7b5a415346d776e235425bd77198424a67ce4f75f22a338c99373ebfa0d93d00740b8d1c4b74d8e5b3075dde69b68f680fa04ecefeab634ac7c4bc5d509f344d7d48dc2d9ca4c064942692bc19b10dd72a554bc10d4b2b0ed63fe2d8a5f35550014f31ea077ff113ab4580c1746fcb856e962751d3dabc8b3bdb85236a5efd423de811f005b5cad40f9806c7d504c4bdcbcd3960f52e10119235ce873164e28815c50f1727252c53d2bbaa7c54721773f5158ec759bd048b317bedda360910d37c083e361dabf8633c4f6ce493b5c31226d595cf5a6a769c4187da57971563dec64599138d5ce7d8bbe7d983eafa22b662a12cbb12f58008df787d2bcc866df69786b5be30f333cb7db5f82f5749be970c800524962cf560f5ca75a370c9d09ecf5880dc8014a8064cc48c80a9c170e0f599d732424078e5b20217eaa9ffc2982f116907267d3db32d30c85e9dde822ab45d298b9632af7ad95863c773ef991a18d2a7e2ad0d3a54c56d1a0e5cc5a45e3fb044e08e123458a06f072e36691467a446ee3256e82c1697766a85ccfe109442e622426e48032c3e104702b4ab09d0437c7b59c4bcdb3cfd2a525400b4dbd4ee6edad82f5aafbb54f3d310d83386eb59ca6cbfb72ab9d26876bf7ec523afdd83edd7b8bd4d6c3cd81b2a4bc88030854e3cfa99b84f05c68e9295c1cf0402e6463bc8c577632eb0135c5157b3eac9048e8892470ed5125a68b617907a1079259efe7d322f340a46c713002184ef807eb1bf9d0ec9a8374d168aa62a348ed32359f0959541eefcdf53af03e13f763ab6ecf1454f0c130df108828d6e10f1fe3a3cf570268460429230b3c1655268a96470da1948c89ebdb6cc584a7292d8a875b2ef65b46ec4d6b0bcd61e82072373d2995e114d31b86897cd71632e57ca5e17add1a39071e1eee7c088ece6c79c38914bd63991d5ef53e2a55545533b04834ef9e5e286eccb4d74a1fa50819b337037c16900fec0471c8148bc26e5f480481d7d31cc5976a39e116982e91e1e435b823ae880174900707e078a4a31c0c12c26f29cc4aa85a06df3ab2b5139ec4cc8a4758e3bb46837ef14d37428e8ffd6391220bfb55c7951aef49f90d2ca813f063a2f9b5f629d360f18e8dd58450351dd71928667507484c13095901b01fae5a2cf322c4edfb904d58c82a61a583b19f66847f9fb22a52e5708fb17c5cf5a693a46992d07f354a8f1d0883e14b719e52a1e1d277327122df21595c5f59848397cbce9f58446145fe105499179f3d8fe69e142b8c1332741eef9de7c281463cbd7445fc88a0a550810be8af5afbba73236e64db6c8073b3bfb593f5da364d292ee107f2cb6f4c30dfd68e4b6192646bfe9894c4fbcee1e66360dbf8402d01328db4d9b973cea16977ebad6cafddcb2c8216ae7077b059faff404e3768c75983b959ab29c93fb12f48a8011b947830f3f35cd419b3e5315aac6802e2bc43e0a4bfd7f867de0fcf814b4138fa2a5d68045b67ec7929fe6389e7f02f67762cf63b72603745c025c3b52ca10e99c9552fe91dc8d38c304db943072b8658b1b6771341b0b73b3d2215446a94760ef88fdd4ada359086540468ffe3f92c65a4844840c988b04472d761f84dca946b2bf64db90603b2cf4a8764bada984f23010fca5e97ea5642ddfbabe1a59db5d9366ed43723614500d06b1e0f3fc56de736d56bb8fffff432b62d44ab4d456badadb7f452659fd1ffac8543be07ea30d3946cf93223a3b51ea5bdb3f5a5ee88d84f539d640d94422045f54ce5e2f364cc959da3f166a1cb008748621a02ca275fc217ee4a099aa1eb01d5fb9f8a81715c6ca1f553c45b2eaced390430c6da11b39e75ef06149259498a56cb43d563072424ed388337b98dacd337019e666650286c003718af6f510c54607ca72681583523674507bbe4490d08bf7fc03a1df3084679aa074bbaef4b0173b8e941f0cf125103920b95a533d7240e5e1e56510d1dff7df524ff3aef87cc144fc7e699bc88c4631ca8c983d165244a28365786b69b35379cb2b0561697e61bc60e4721c8763344f259a81b1f1dbc300326be32f14d4f8474627d5c9610f7a0843f2cf56d04b1afc88cf9e20c1b705a457486757aafe3d0a7f3aded4e122ebf4759e5297ddb2787476781c4dca3b1f21a51cf98828832ab05c79bd29d5abc0dc1961d0a028931935c2a2e6ddffa5fa8daf340a5647f620cce94dc4faac427d86428f7bb620ab354718d44105ca1042569bd4137aeffe04cd7fb45b67ddd390479e71440a6f7ca2ebd8d0711abcf02cfab741490d8fb73d67fbdfa81231f632c4b066cffb281358b13c96c8aa9b1b9dc8eb8c8692c1f2107f69f8d7246f6bf3121ca022e5e30c66713a7c9434f26576dd1e5063e6d8f8afaa20923f5a0d6c5faf0bd55101e3f53f65e4e7c99333c2a40b66c12d6836d07191df628e96cff655581d057f3b71a9ac10a0217ba01c309105b66671ce86f31f3426a0a75bfbd0c44d4e01b3e99c2838ad039cf6dc9da5442f3eda17dff743df5d46488316af848b68528a4c493cae0f817c23fd701852be3683306ed428592a18502634176f3468295cfe1ec05dc48039a1cd130be9a3507bbaea0a4b3d6aaf8edbefde537a78d5543fd22aac1a062d8c21839945cbc9c9a1757620a83febbb454832ec6923158b796e8d621f035f062ee84e227071b4454ed4f1e04ee314c80b35c085d713893eaabe9dbcf18c762316c0f544e80daf0eab90b047edbfc28eba72973df526f218d5977379bae1e178e2cc04f5edfe762bf9035e79b80ec678067603acd586c641caa5cb6e72ca189f35e531a7d9e69639efd8955c799b6451a3d98b3a7b9243ac3af02ca9969fbb8193fd8a4e135aa6a53ce7030e4146d74c2fbfd1d2cd3d0ad7ddf791cf34e3c715c73ca409c6e1543c70688ee40614ab33319053059df05dd1096bd78561f0284501b79c97a6710e19e15f808c810c169e1ea68ab7a570115a773709afacd3fc6c1bdd420831ba9d9ec4deb757714d6e3d3a8ba74369c4a44fcd028794cd6f08c5e130373e1a846b6878ecc27d2e778e2bf15d98509f5349e83fb372148ad24af1610f58068a7b2ce2ea28b192129cff73bafd2796fe29f4af39b58b346b525c60bdd78d8d62205bf632d430c6825bce8afab28ce786596bd903268a20f9a4570cbbfb4150ded6d41cd384faece5c6d0bcf9f7a2dd175262071aa89668b1e0e2801a568fb3caf38be06f5efc75de483d9627b472af5dab2aec8a8e268114d9c2993a466be9b5efbb00e36f740539295d3ad8cfdf0784fdc69cdcdd616f2d9a86ebeb67e749150ec643b8f6bafba89b1c91e9fc6ebf5a7089d956f13baafaa880117a897971cf3c0ee7c8ca1d7f643cf71f67bb4e86d1d287f85329af92692a07ddede1b6ebb81932c2aeeb013f1dc6904ed2834028cdc9298fe8d16bc5d25477b182ba79d68f14bf4970cfd9141c5373d2153134172e72c55d81059f0b5ef173dca344abebcc5d3f2d152e8c211d7117c4b7ec9b00123dc4d0a542e9764d1a413180ce16ff3dc9cc5ddcad0c5a333568c99e6111974b8198fc6c2de1a1e875bdc16ddcc80f4832ddfcd80d206408f893046e7d613da802ba86cc363abe7fce2f168c35815931eb0388314475b0012e853e79a5904a80e582d7e785290d02a6ddbdd3ffa147eb811dafc554cd038afcdb3bf465d8c92caf2e4795d395bbdddc1e3309a6eac55b04a0f1830ec915f7873e2a69531ba37a02d0998930866ba749266333859abd30bf888b083470931a48730f98a790adc3f324902244b57165f922b2e2d6588a3a46ed92adf43325f89df7583d0a54509b6d172bc338fe4d0f57502729feb785e0b4f8330887839194f21b993750d9e2b9610ec320e18e58c05688da42be885812226134f40f7abf62ea079e250a386a078500393e1ee30363052c6a8bfb96af4662209a1106b35a0673f4b9984fe7c38c6b94b9404dfc7eb2c44b3bf6dc88094ecda575543dbdc157c19c8d65a71a41bc56d7abac5311f8f69cee159cd6a650ecedeb1c6652fe69c2104be537b4cfdf3cc82aebe6c9df880800b8e2eb133f4b27a952050348176939471597022164822209aa165f506f8334cdd55649c75af1985e3826bfe8d9ef4bc61fd3dcfab58b8c04e84b4ecf3f1628fe4eb2c5ed5616002f9a114dcb92971e4cf4d2bcc261a1aa93c5089231bddf23ea11e2f3d6a656ede19d9012c0dd52a5e9c9d415c84227c03481d9442be6a4d5ce00a44ae7568ef96717943821b1344174e7173da46fc14b6425c39adf3db1db5fef52b31716ada392d7e83105299b43adb91fee2e63be1b0a16da393576a23011f585f08eecf630ac9c426de82b135254e071f01e4f542c08c57041d4cf8ab1187efeafca610999de427c92628da94ccd648e012804767e7dbc9ab5241613c1b5f45702632473b4420a6d101ae0c3603197c4793b10f515dcef025609a41e455a1f923136401ef73d3e73aae6d78b36b0f1c41956ede7b3fc86f9da3c95e5771ee90a62054db2b706d261fab6a9029b321f93ad12e5662c45cc424f5d548cd7a4e5098b25c01eafee1a91c2d823424a176835ff391e1d74d3c346bce1f9b36d01104e952bd651c002d2301195b97d52e95143abaedb6d0ca668a69b56c67f9ba6e814967ec5693bfbed7dd2bc8a9fb638c9f2b7c4ded2b3e992bd7146a48e99501920dda673a13ae7bdb563f731c69c175856c4c9ca230adcf1e748a7a4c4ffe03d6d5ccbf39689936a59d7ea56cbe970478325ffb7ee35b5f92eb092906b98b71beab3be010e6419c7af3923bbfa99accc1297c09ab250a3fd536fbcbb2f5652bb875f3cab21be02c34adee685257b05a21b3e59234cb8bc5ccc1bfa3902c10e6dd201c2bae5b709eab5e338b40a4ae656b43ce5699c4ff7c5f39609cb311fbfaa139a55544bb5693d1a8d1842d6892ae5833db5b9e78d1b38ab6de7b47cf7a4cf7db8a526a10baf23dfbe2507b25a921d5fc541247a1a636b863afce288bd7ad0aac7aac81b5a27e95e485b9cb2c3a2e09346c74f90ddde964e8e3bf96babae77e82bb810f4c61622c780ed87abfc9a003f479acf653c947b2c4d9b7652d6557566ac2e54fea6530b1354c83548e527e430ee308e756c4c43817226922fa24f76564321bd93ed83fc02487c7cc1f2b393b74673a02a7370b52e18d6d1bc0600e6d7b3c3a6efbd0e02e78a33dae8e79a8fe2da281714d7d6a8a31628eb4cfd6214b5ba649d6bb15deea9643a5fc01ba19c9eb51ff7ccea741eb8902f71b6e0c51ce87d72e26d3fc11bc208bc9d743dc44d06014a8991a43c6ac03192159f69f1420ee8a009b88352eded873763989d56491747679f25eec530d45915f23759f858b9cae591d46d3163cf9b1a16f446131a9fee10955d272867159ea2c3ff9054ea56b5b698f1bf599491b1feefb701ab9d55b56fd5a0a477a28914a2259bdc820419835636bb069a638c1536c821378f246dab56fa30c41ae57bb0021b0ca56de42f78eb986bb0a1e4d5361e89e24b69176e1f7c9e22a6bc17d36aeaa577bae837c08d637c11d669c481f9ce10a61e17ab2fbedb7cf2d8688710d66eec7d81e100ca5d128f5f0fa5713685e09073a731786ad1ddd0496e77ae7b3ef4ac1699493bdcb666709dc106d5d2894bb16c92bb8d07947727935047b5be6f42e41a9bd86f0cfb14e3e68d9d731face07d720af5ec5490eb367c8e545b43471fd26e1134d082a9378b45302c14b10507b46d4bc80edc77286c2d6f076c41139dacdabb702c854afe38358910fca5a7ded8cceed771488f328e1496996218cce249e5251ce76149b6de964cc501ecb4a389f89e544918178bcdc2788f5ec8c3c7a6d1b6e5006b0bc85083add66f071370456f05c0047c27bcd2ce20fe14e0a35ab9ed1bb22f40eedeee9960281682ac01c3923d43bf92c4429e34f48000040a7db901b9dbaffcf34052b29978b65891a8347ef82e796f9e32985eafa7f5b17f53583cda3f550abbdcbfc180473d1ff19411620ac1b0170b06da63510d09562f7abf8cfd010c3bfb479766da146e5afbe5598a35a15e71901c3ff1d89b10146e9806132803d9d2d7a3d6e2c6a7c47e7c3e92c6cdc9898175625e9abefff3ba4d7b90104d8d6d84e522b212da215159862d853353b5b7eaa64da61915583684820caf24e745084b1c9e5912f44d10f0aaee08b2d88b0444c2b4d35295328cfd2ba68b8a2e6a096e5bd8a6d06c3bb84930e9b965b2edaba2f752c6e49744aa26ecf2e3863a9a80d99432d5490da057ec1e594818e6e0f17b8474835024071987a6a33298126e7b6859c7f74670b7be4e759e229a456218c9b18e58a27710f082233b794ef078458acc68e4f399f16d6dcfe60680d022c1d054eba04e40f571048eab839d4804c086240465535b8efde330950bb95499c413f9ad8bfef5264c0e18a8687c320fe26da31daeedb1a32598b126ae0ef73ed69914ef5a13fea0fd2510f1b3472156cad05b057738a5eb25e5a5ab2a54c01ef0f6c10540f2b0aa555fd988294ed58b1db975002b22bb7ad0b526ecfe1949bb52587e33d282abcdf3a87f2a964a1588a1d77c7a03b02715675e43dc86de3a7f25248d6c9ddd613c1c96f8f15ee1da4c2c30f5dc78301381e84286b4a3fc303123c38e2cc0e619cd12107a805a431e5d091dd16811dce00cfeca0460ea8048050fa191d5a507aa59fd1810b042060082682c838ccc00409d8c2031d8cc10403b6d2cfe880c41a677250e34c0e5c5043e8603ca3030e38745fe0209343960988c08b059ee00107c230635b0205dc0a78108106c4266c9069c00f5cc2335a8af80115c43f8f333a0851a24a3fa3839652f63b2713809b1254b000c28c263ef0021b6800024278f182eaa1080b4af045053808a3022db60798613ab3e483204228dd4c9a14a419c199252fcca4b1810daa872d0c4a87ed413369ae286dd29cf981e779ded1fdad43edd0e5513e90dcbb27e600436f81cffd68c3fde9f3bc6fa1d4f1a5747c9ea73902b583991f7831f3033069a43093260c8a072107a07228012a878b05ea06aedbec77dd8b50767f29004ee1375eca6a90acd184df78e9a950389022943e069da5e5bc3b36c952722a9908a56de2073636b707052318e4e77d2f7e3b5054906018da92c7d7803102db45c1bd978bcb382b72d8dc2eb7cbe572bb5c2f5f8ac7f3b8965b3d41cabccc55d9b8b51d1197dbbcdf9c4c79ff93b9a79275a30ba6d2fa7b1f6661c32d42df5258ae00d9b109526697f872afdde29c73516e299b3452a30f48d95fb93ddb734edb24e00c798e7d4f45b92bfb3ceeb8015266d1f874b19ddcba5b2f6a303ab1069734d294dbd2c8c539590e32389bb1cbd865f4b2841360bcc011c30429b35ed8b7566c5658320fca726c7fb994db8ebbf2df964630ae417269a0513a1864078add5b8e43c357de83248d347ce5a56c2bb7d2471ba6ec7ec0451a56946e268d31e5064a37e38333ca53cd122fcfb064d0f09645a3f428369c4a1cf2961df21ca06de3366edbb88d886b8928fdef87f133028d6290321b06c482e4362f63d003354e35f7c730485bca6c98d27fec82b4494a40da33178dce8c33eeca7ef6cbaa8b3324f8630ac8eb450b920cfbe59271cbb866709d4c2cc1a5d2be5702d23e487e97b248a8463148bb39c0394bc68eb1624091bcabef53e5c8e17d29eec1545776a2b7e3ae6cb020573f383bd67a09a6f4ff7257a74f71597caaedbdaeec7670ea3e35c280fcfbe0b6755dd775dbc91482600882220f4edb38c6053d202fc7dd51bee9c71fafe7795fb36de388dac6ef0bb7d83e04b76b777270721ee31764f7dbb6f3a5c61e90396cc480e94432874db943f63b6e8f8b3d352f8ee3970ac3ef43bd8f6128fe2776e2493cf9739bbdf1607763bb31d6a04373efbd594acff3b88ee3eec671dcc6dd3b451a6494dbddec16cfb17f033160c62fc8b106a46fdbb675ff53fa8eeabf3bf243d7755d77af78efc542be48ea10dfcb2b5ef18a27f18aa278c5ae9b427cd397e37b8e42a150dfa350ff7dcd83e29b5235a831757a1fc53195a5144fabd2b35ffc9266bc2c79a9c152e96668b054726598517a1d96cf927785c51e01b71b0b44c7f61e2bbbaedb7c0a92234970f24b26818617af86fb134782f105b21fee4f1f932651bcffbeef5389e09f52e17f9fe759532a0cc350247f78396c78ac3c8e872e0c9923d5e4aeac297c9769c3255e9afe145a141561b8dd1b86201882a00a1c494076a82a8242d556763624209bdc1ed9af7eae8e5bde8ecbc1a95bc1ce0fcb3191628c134b90488021c28b0d2d5bb05c019f66ba8606d0848991245b901b8ab3dbc6a150dd73282c254ae450a817455144dd32ee858d25d094f981aae9c44771dcc6a964b19253e206dadde038aec688aadbc87bb3a9441b144a25034b91fb6edbb88d3b01b9bd91cd676705da1ea87b2ca5f8a7ad03c3b01b814e3a6afe88fbafd965b7548a355df85b4a34a594b8f15ceab711e8f3b9a14a726f2e68044d991b55582fcca0b1545a2d4a37b38325ca33a30ac853936ddb36196aa342efeac6ee2a8bbbba5cdcd515568864ca4821e614660924be7cabebc56ab14b26d9f6dea331d4a6345140cadc8aae0347b003eabe0bc34e75b994dbd6711c676d672df7454c0dddd51541d38f5e90e0914d293196a8cdbe25f8529cd9c66ddbb66d034110dc3670dbfcaac614796fac7857a6b7e0e6c496dbb665415ad7e6c36405b20f04ca2e17704bc9f657c6a820b71f7d50dffd0eb9729fcb04e4b6753bbe47c7b6713e3a89c2a56c86ac17a76bc3079db5fed6ba7bd78d40360c6d2882a0f5d4fb5d59abe2fc033d7c9bb2f6c1fb81ee6e1f4cdd0b82aa7bc1d307de0b7a68df536316a40c2c1dec4c2727dd471e9032b0ecbaee8778bb6e15762b578e5490b29dd2ad003b2e4729db2987dc9eef813ed3cfce0f1b96a7148c2f20657f0253da96e30948d9f7de79350f7e35df8706d9fdc94120b124bbb7f111e8545353f34bbcac51e920ffa8e6bfaf517d4f7ef859ca8d7a32e5e236a6c0930904c14eb4dc0eb2f0dc7be7f62d3d95cc5dec501b501c3d40dad2df4b752314aff43cefad67bdd34d796f5352d8d1aabc3f7de4a6f2befb6164c1bdd7c66664c1beddbe2cf0c633e49802d253a93e046c9be562b9b460db36cf4b63fdbabb735ff78137f5bda7ac5fbfd6ddaf5fbfeeeed7ddfdae94d8f28ab703c311c8bf0f14bf0ffc3cd1f39efb442e9fc7855fb4400d175c61a6054b665c40c68c0bb8e440cbc845992f36a5c4e9f45f3a9349357ae94e18739db837db876190f882015276c27f39c15b5e5241de2fb3f9e0851765aa74335e90294f3563ea9637cb38aa442e40a0e76cd622f1c572b15bc6905b68531386e1388ebfc4cb71fc6efceec7ee51efedf2841ac55396f2f41754719c102409a30f48d9aae456650e9bd373f7aa4eafc4963f529342fde96b52de1d814051147fc9f847e27f2faabe1fbffb2ce54dc9f698f29309152fc78333dd2d89310d5206fa3cb1fdbddedbd4fc7d50165efb630a45a6967849fe1d996cdb93aa8d44798ff29e54d5a44e2fa2de4b9bf214be4d19d94ca12792397636158c6adc2d4e36e4f5d2822d52705cb8745b366b2d09c22cba908b0ab8bbbbbbbb7b0fc76d57885b776f5db7eed6ae61c6065ed8004df9bd67c60665cacf0662be073b1188dcbe97dd07c56f33814b3ed591e9080c32fdf73de875a5cd08fe7d29aeb4b9365f58da780b1449f1fb6ce9a9649e1933ca30a38bd3764de09b4c5f82a1f7847f7bd65bda12f496abbc3f633dbf6ead90d596dbb6c4f4a04a47900d6f790a026ff9897f82e265caf04f26d08e417669c9cb946010f8a08a0b39407ade63e0e457dc44ce5dc56ddc074870140179bf7bb0245d658fdc6c7ec5725be3e4b70c2f4a37330332ca104a3733033425c771df719ceae8baf5c61190f71d071b1b1b1b1b15a8c0bb4d35ae809481a5152f2a96f7da3bc6c9af19199451ba191974614606509431330330a2288aa217e0268e5c6c3d61ca79c810280c55e1f762d89560cac394a934a964a00dbf1590ab1f9b197891811ae5e98a363607446ca2c91b958c5c904b42d5077a0ffe6f3e7e04b481f27df8a72ff561caf34a4f958303a455bd9701bd301383336662c0439845b805074ece833b59d0cb304c9122580509fa88f74da9fb76b4e0db147852819d9801727bd35805b971647c21c30b136bc53b3609c0d8c4cbeec1f7ac5f54b7dd8bfa7e8c2bca31ce94dc8bdcdbdc115545f8775cd2ddd3078a39763c2f4edbf65b16209b9289a52d3d5076d4a950b1e4361a9c3e9fe7c23f7af193815f96d24bf9a645c845b805088e22ea644ac9accca25e7c940aa5929d502814ea3dd47b7f57e5e943239b919ba50c5363972d95ca72b2b707200886a14a07132fc35fe265a8d261faa3f0b90f55dc9bba944cdce567ca527e29542cbd9bc5b3b60765be2001e64bf78d5ebe325d77b99409ffe354a7d3c8450a3177d5a9be5880bc3f76b140190f035c2c7739d5f76d62b6e7b84d069eacce96927b8fdb549b13e516e6aeb6b75fc60b90579665c3a232b275f6b9ad9365b90079bf800139319df51480868b17224aabca4192121843a6cc192bae4033013b668ccd189b313662c690f1ec66c566c57685d8831436363b9ec70a67679440d8496163b3e379ac7076c490b6dcf13c56383b620fa297313656d8ec588d21633346ec41dcc2e58eb1918977cce66397d8b6177b38a964d664da32460c4550ec01cd105e589555892014e29fac5571774501727b102439711bbdb4292fc728c8a3f0bb93fd6ecf15763b7dbffdc6c5c6c5d6c57732a5dc05ae34b2792aeb845dc28ab1626e0f68c58c50d80fbb2c56b63469c60a90e047415aafe34a992d6563979188d27b2f9c28654ba021c394dbe768c152b99550ba192fb694db365ad9d2a4b9b64c99cd67ebec4905962937bba3b46f32a9542ad04b8d5dac4ea7dabc102f0006c788040e1c23111d0e1c5c708c48e0c03172c18103c7e8e572791c97cbdbdcb041aa6ee0d851927fe3c11be4dbe0c8b1cbd865ecc28147881146698328dd4c18684e3faa6ebc4dc948727c927c71cbf8e4972399f72349cab872fcc6f0c70f24bd37799d38fe48deb841deb841be918d1c7fdf23d43bf936fe44be4dd5905f33deb8f146ae0dd493376a6a46afa6e6bbf12a99b561a366e4baf0c9f76b83fc6ea0c8b7f11c397e0d67faef51a38a3b952695ccfb50c77df023452f3b0043764f8e5d4892fc910b499223179224472f970bf93635a338d6903bc01a94cdd865ec327619bb7c5cc0004cb942e966c438a33cd5dc23d9f7dcdb50da6e54c9ba9a176b4619576e620f6fdac69a9ab1a6667c23db68fad4d1e9bdb463cd388ae38ba6af5159d9ca1a1bca2328a71fdfc8ad195f34d5bc4a7c144a259a3e144aa6b3c848df7c4c3725f660754095acfc282066e4327219b98c448c5e6c6c6c88b95caeca86881245717cf1de7b6dd87810ae0d9b1b7714c72e366488816ddbb6f06e7fef0def66652b2ff8272e0ced87a1f8e5a87b2fade95eee3eb7592efc100c344a9ed2cd8071268c32611862c2d812861a006b9e84fbe29380a242363e372e39ba2a99358957368e228effc61b62393eea6fa450b134e1408de249b5bfd2a40aafd8830d69e382658819bd8c5c462fa3173128315f3e242f1752cc171c1f862a598e32fcc03047caef0d8e944d18862ad9e582b2b1b95c6c6cc62e6397b18b18f27e664edf732edb2c7745d03e08beb8c50ab14756b094e06fd6ca5682ce7129b73f53fa28ddcc175e4a30a42857a59b01834b79da46f00b354a154a37f34516628e9a1f3ff4a292895b507fbf1bff81e0936269e3c5d48d0d958c2b49948adb5f099a54fb2bbfd3a842c5f23b8d4b64598e4e2a99e5de64da2ca872e154762a15186f0735f7963179294f35e2fbaf406bad3d023f6bed078a29aef4525e76b95e4a8e7bd06e0e3e68e2516e60e729f16f4aacf9d3c9f41704c1bf5cc0fba140f05e10a53a32fd67c372379eb3714325bbd70ba9327da88d0c75e1535dcbe414063d77b958101453e3b8a4e6399558e3d920b9ef6adec484bb3540de2d539e4c269309b43a60f7a894f746b67bbbacac055d10b91caa9ded66fbf7cd27870a0787da98fe53c9c0f1391ddf7bcfc424fee9c17189e98f4455687a269bcded62859854b25075bb581def7a29eded72638b1b5a40348c40dd5367c4c617847321531183038e6e6552624ac1abc2adf005c10103492cc12102408440ee68195f4d7a38b374aac18ec861e4a9b130ecd8847c23f4dc60fa82782610b5f9042dd94a3029d9c192e90b1a8540263a8094984226a2903904034b2270383d26af8563f44c2720150120b06402999850e4c352b7919df504e0993a21de0a458e9c6aa10a2013cff48d30260979704f421172ec4881841056005970414a0a379840d6e763f4e11314e513b98f84aeb5f58422a7c21bf9c2cfc4e9742e703f466ca7634b7521ec84e06b0b0224c406348510fadc80e4c9e907b8e278703cbc082cad80e292742c7426843cb81d353db612705862e9d80db6e5705b5700150186c8809a4221013465c4401181303d64a9e18a3e82e5978b00556418000c2f084569120026ad1f1fab145000c0731ee8401a1b9431460b4550509130c2076604572801010100b5d02a0104f1e49d2133c5134b2811c601498051c00b2b15745847246048288d1a6714c960831a688048b521041027ac8810d3b744105e7cc21470c1c412ad203d22e43899c06f878e0b58a04a36a13c09409012a0057431000f37bc00520514128840962930f8f4d8e4e04a802607301421d2137e5e143b4c3181061c60081f0ac080052c0008284f8a085141b4696c3eb86870667c0d2e19dc18f7059d1756051705778b500b318b5b828bc52573a3d8a0b8479cccf2b0278025743bc611ae0817049bc3068eeec6b561490e754f9de9862078bfafbb9cddacf57cacd9746c1958e27e58e29a782bbcfd7470030981a5ae13bf1454700397440f4e04314c135e0f4b5c933004d30e9b1c96c218381936134edb134125e08f67da84d8983a112c8163967254b921f4d9148003d1054b5d9aa54e24618b2571ab32b014daa0ee27a4d3e988d802c269042370e0b82cd5a46a525b8e0d1dd0c6461a1c3a16c09f6fc856b30d01c32c6d4e7ae87826cf89a5ede491c0e19c7a6c9613391c93928e852f068f04cfe4c9c41c628ed0260ce18b615b03078f844d0c0e9d154b28c8b8d913a15002d7126b3c1b9cdd7236245c145104ef7e533e1ddf930e0494f54e5bc789dbb6ddeddbc02d34ede0b6ef85ef464d14938dcffbecf6713f381dce82236c3a6e084fe89a58423971830d8fd30126c18173010e2aa2f7343f1823055c94000d08aca8190905e105e8480b447cd4d40635d05181ac013f2a3240799286045998e0042076be186124012e4001161fd0c005a050428795c2016a1b08bdeae0066674a145161da840161b08504586014079b244c90926881002192ab24021011b6a202a61879a9e8072410baccc96d2fc80073ba8424584106ca0e0031ed880062e60812880e862002202c43005ca93202c48e0811154f185c90a5480c5073aa0810c40208c0f3ae470033350a08506324066025a96b21904646334438c305c00820e503185144c04f1433689085085ca94202021ad1b1b2316240081028e08424b36091080202540425aa8917331c2c0820421f0001553481105134274d132430082880869f9fce87173c306e769c408a305210081073a40c51451302144105d7ed0f205d10c555ad061a9914613176a502cd8e1858b0f0398b2d3801f7c50baf2449866fbc15da34be3fa006c828bc065e22a61796e8f6dc7b24e391b0bdb8770c2dd61757c246c23581b4e041b4288e3c68d8de46a44143992208e70da61b2117ea0f75dcfebbacd3a09ee26d284c5ddf5caca6811d6c9a6fa3ad35a09eef63345f19c34a94813096478c6cdaffeb379eaf47c7dfe3e5f88d28a571c7b3d3e3fe44098013214e3ee7aa3f4ccb1a4bf7922437e4564c8a7a7512e0a97c8b0e6ee7a98fafafcad5434038bc5a212c4c42361c7bd13a2ea5470f7139c04cd70bdb2d235ef8d693aeb66c149f009f04b7a6e9dcdffada6afb36afecd2abfd69aaa499006d07433cd1bbf26c124669a49f006e81fdb4669461fa6feaf2a6cc55b7f364af11afbd0e895b5c65eb33cd3c9af13d51ee2e06e827b58808f08bf71f795bbaba0b26278901e5fe4d7b5f65a2148909f203e417a820009f223888f203c417a04d90912e4e7e7c7e7a7e707c8cf8f1f1f3f3c3f3d7e767e82f8fcf8f8f8f4f800f1f9e1e3c387c7a787cf8e4f909e9f1e9f9e9e1e203d3f7a7cf4f0f4f4e8d9e90902e407880f901e204080fc00e203080f901e40768004f9f1f3c3e747cf0f203f7efcf0f183e7478f1f3b3f82f8f8f1e1e3a3c707101f3f7cf8f0c1e3a3878f1d1f41787e787c787a7880f0fce0f1c1c3c3d383678727488f9f1e3e3d7a7a00e9f1a3878f1e3c3d7af4d8e91164e767c767a76707c8ce8f1d1f3b3c3b3d767676aeec6477d7e1a43700d72b6b564b75f60c9657f535031513cecab4aae16bf802fce398704c05f8ff7f774fc1dd5170771ea297e35b66b84240761970c2dd4770b21bc2e5fa9609c7e5fad68665f4dfe4bad931a373fddfb08cae5cdf32337a62d89ab5c644881049e91c7b6d3c03808aec66a8f2382aa8f01bbf998f5e678a69dd0ff7566783e46ee0afcf5d2bfad7678eed5d73b2aaeb0a94a4aeab7ae40a77166b02eefe39c935c12df9cd0f19f23d569f53f589eb53f5dc3428dbdd5531f7b48afb1ac57d5749e2be53c5ddfd49cec6fd4a15724383e3dcbd0ab9a1e1ae2a8a80bb377172434227eff414f100e9f9d10303b28383983e767c80fcfcf0619a3c6651d18f1f453e3e3c3ed807061244e7b5756dd52137daafd968c5e8e357f71fa5e71ad3afee37f3b90eadee3ec5c92dd42babe844f7aa1661f71cee8ec3dd79b86f3ad8c6b8916b28467ad7ba02b93ec59faaefba59d1f09a94d65aad8dd67496e27a33a3287eb93be9ee35ee8e72d1dd4f1609778fc1496b0669cbb841eefe2d6da635b5e861eaef9afaea26d22b6b87e583d52347e7ad54a4e383e7e7958314994182f0f4bc5eb947ce4c7db18a6ab17d1a29ad5b9f4679d5518d56fc62e9a4e70ca37986b58e5eb37e41e7890c79773739e8eea33bf8639188e0a4257277109cb460dc7d9f284dbf6b6317698fb87b084e5a1c77bfe1a445ba92cdf47c1423a9b3bc12d12bcb54673aaf8c74f3fa5c7d9ad11ff2b9e84db4a6c6f4dfb87be87e4d77b771d2727a65ed19cc7377ebabbaaef953fc664ed7daceeba7eab9f14ef32ca3b4d9f9fbc4eb7ea3f4dc1bcf5615f6f87aeebec349bfe2ee369c7422dc3d4945616b46525f699f2f4cc32fbdb25e19892809af3aaf55ebbc5414c53a4a2b5e8b4ed4ddbb8d73f7db82162d2a508125a108659cb8b90008b044614106866058fc88818802ad5230f84183230964f9e04b194f500384097f54370ce88106c7083db0369a4ec2a305d9161d1c009e80fb42e6e46596964adfb823ac38756087f2c090d3f8321b72f31953f794b247c61a6cb80faa968e88e2879f897bd3e5525ab817dfa66a08dfde30cb526a87168e6c6f4a69d9628f6cbf430b47b8f7713472c53fa5fcc829358e6f3afd167bc4a445d422fef8365583e96da8aae18921d3dbafe1f457247528f9de3bfa544a28ddf7544a286ddf828c04554bdb8f293fb2e58f981e4c69197f873f627a3baa96545a6ab0617b936a69d3b2e58f8cbf8d328ca91a6cd8fea45a7a6e14c0d0f6d794da628f983e4c6db147c23fa5b4ecd0c211d36fb1474e7fd22100eec797617bf1c19496704a9623a3aa86afc1f4b78693f7f6086a03a4154f537aaa232594ee2ba1c43df79b0e01707f7f688b721f4c45e1dec728db6fd7c3c069fbd3963aea9e53a98c6c37cb665d38f96665bb7f395b8193cbbab7d6da232b03fffbd3098bcc7e00b2782bd2dddb63e9362ca5e9412b5bf9a98ebaa34e65054b19aa8e3c239becfe11c871dbb6711bc771dcb6bde5dedaf78e89936ff7b7f2fbd3a9f3a06ddd48292b36e5d155edd2aac00f5532ee2da8b282a5fc549df5b6a3bf55d81dec0e9c962d3b809b0f162c36dcdfde06fbdc63d1b2e58f7443e1776f03f8a6772c3bfc914e85c506ef4daa2d7f64fb506503a8daf2476cf0ec77aaedfd6df06c7a42993983ea00b8f9dc3f62535bee164ecb164ef58495167678c24a0ba5979972427180e3f6172ea57d37420d23ca28dd882ebe3851da2f4894f66516c9ca57eef01c0fdd3aaa02a4ec6df9b74796a3bceedf12ef3f93e829d9f729cfc9f76eddbea7b6cd95dc7761c97d77f246271ca7ca91b2b67bcbc938ae1c4728f6b7cf717b7ca70a93e94393e9c3cf8a3257846ef22741268221f875a6d437bab005852a6e0c5f54724bef9677742108fc40f03f7ba6fcbef253a1a820bfb71d77f43d18f4a9381d25d077cbedbb6e4cf7e0124b8cd9fee3a2fc1efc1edcbe3b000e2ff4c21c38421c37641c098268afb83d5be91fc2a8c496293f0efc7bc3c611f841a08abb2bf0c107bd34ddd5c9c8f6a5dc451b1e3b43980cb9d02b5abc582944e846718c188236a2dfefbbd05e61cf1c800c5310488adf16e4a938d5e5ac6f1daa4c8d014032453851fa1922d01011a6ec7ce44ee5fd2f4d9a346794f752e09e51de9765298920424b795df0b76fe52bef6f2b5c96d2899585e5f75bf7a575e2fdfdbceb6f2d0f84306388a593355dcf01bf4b89e45df128b794e9bb5428db9ee364e1b7d972fb4d25f3be7bdba56461e91db871be8500070d0f2b76fc7809a6c2ed646df8de6f3fe05bd90e8fd21bc1068d2bdbfd56ca73eecbec77f75150901bd7eddcd55de17829db71996568defad1719d173227bf6780c8a2f4335dc838d3850c1767bc8c094016cbbde79c8f9e13bec7a3ec4ccfa5be4fe5b26fccc9bd65392196bc28b9bf684aee4c1066945e7a79ea44ebe4aedbca57829e637f7b242b5f297a4ed739e94627dda736bb393842e1fe06757fb9b7afd2c0671fc5c451f74f90d65be173272f65fad0a4da4627de7b6941ceeea00b12e5f65dd428ed7b65945e66f1b2446942e967bc6c29b72db7b7d6b3d6da2f253ee80e7ea10d7ffccd95a2e79d4620cff3dc73c6ff52268f47f99dde4b81a04a667f3385485c69559db5e0cb3c279eccf364db7b47f6b76e0cb263907d4fe579db6701c2b1aa94959ad27a4ef9a01064cad3cbb294e10f4e945e9eae40824be92517354ad3873f74519e706e8f0cf52752cc7132a5c41f4fa3c8a344a5c211280c4b99b7b9b2b31177d8745d8da892853f7e88fa310582a313d39f5459408f567aa76e0432fd0965adf7283b3a194f3ffae95140a7d33d9d4ca9ef51fea871343d373a31a5c093cac34ee53877e5261cc894f6ef192e4ed4c8bcab39e158d5b523d066fde8befdcf7b0e3c92e92ce57559a7ba2a9c2d06276f2df1727b2e4894aad2cff88046c959a92939db590f7c31741e25ceedf1ba5367372d3e9051b64a3fe3831367804003883070705aab7dd9f7dfd7f1f0960c444541dad27f7b8f13dd7994389ee3178b1ec294dd3b11e57dbbe47bcea66c9ad253e908f2b7bfc4553a9038d596a5e446289df79b0a69d301aa82be236fdbbbe46d5b7eef5d224aee3dbc971b75a04c26d4dd4617bc1797e0a8b63394ec069017f40189f27b530f5a4aeeb9f073c1724a748c8fc459b15253baea4f56ac13930ac9de110af7ae42b29b4a897513f8819efb26c6bdd7da72b3def2d255dcb5560c287acb5b5d141bd7eabcef9c6ccf9517c996374b67ed13a72d0c1165f7564bb96139a3bc1f86516e67b66451de0fff5403be4a66bf7149687a1d566ce98fc495f6add48c50bcff54b2114af7ae926d7fbdac9175bf0691a5be1ffe17fecdb9e517fee6543a82b60f7f0b5547a10da5a764e13b1714a66456068e566a4aed9e230b7f84b2a9b8b0e3902c528deb08fa7efb4f75e41ddddfb6ecacd8123459ee01271bb8ffa428bfb736700f6e395382ef71220892a4cdb6b3d3d96e4300428d0676d002076a7077ebc30c4eb859bb214db8fb6d02d482183ea8e0030fdc7d030108343530e20b1913b8bb978022d0b059b47e60c4dd6d0b425081e2c5000a20e3ee360c1d0481450d23c038c2f521202602990bdc7372ec0966ea0afbada238af46a9ba26d5d418ec08b68aead726ce5248281b709dadf36641291f11d588b6ce9b852266a6d1ce75ebd64ce3a4214264208ccf49d1b316db2f2455bf68565b5faf6b342275a7279199e697ce2692932548ee7ee4e49398eb95453ef991cf75a7bfaab019ceebd646502bac1881156438d1e2e48874c2c45dae3fa570228299b5517ab65a619aa05758e1ffb7c6dd6d70d28502b8eb6c6466258cae19499de5e8b85c2ba6bdc66f7e2e7a8d93c800ccc0dd9da554f46ba6fd4ef1b962a4cfa9fa3a3df14e5524288a914471c2d259ff466b1896cd4fd58c16d554f373d1a3e88983d75ac93262e567e5d9b9d3ac1f7f4ecfd99a7736cfa3554d7a25147d143d93fe754da739cd5a8dbd7eada9313c4bebdac62ba6d1f0d74c75a5fd0a66deaf4cbb9257d0e7c649f9c8b374ce493b17bda99e6ba6a5e7ec736ce85bd0a7792679d6eb736ce7d9b9d71a92a740d00e57dfacd51439c964093f7aa94df0c6495ee591359fb073a7d90cd2f995621417f1c0968064c2b93bfe53ab340b822568621a8f412ef9e2cec2af1376ae19e9ab2ca9c23ad7fd5786253b8486947491a489925846ca3c4e2a61c1f52ceff3cd87a9af318a64cd518050f75a12352e98c4003eb3202031c35d356b5a470421a0e1d4b3daecbc826756f2e7a257775e5f9fafb44f14ef5575b2ae404750808690e0b83522cc1462dccc5684ccced738e9f7799af9849da63afb34e7a29710a54d9be5cf6b4e7a149feb7ed809539fa6ee7d5ec949b68bce1b2d3ab5566939b6f56cc59f91d422fc39b655fd660ecaa6fae448927cae43eb2b3d5bada2596d45626f28895675e335ef53c3c0cce689a4aeb4cf45bf756da686bbbf9c3482ba3b08dcdd5a6166537da5f995d0fdcaebaabe86766878ebd9b98dfcf0806c0106ee49ea938cd2ce750896a5f0f878411d32cd1423597394575a53d3b4dc1a37d15b67a333098ab73a944d15c9ce42e699446bdc64a7351589ce5ae797ba46790dc03cd7352341a1cd92981969cd3a4bc9af14d7b40eca48e77ee134086f9c44d35ec8a68a24293f395af16ccd1b4fa1cd5626696e82a2e54cddba86249b2a12a3f434d31c4529bb8091329aa5c43466b2afe427a8a6cd5626796393f6827926c91ac7a2a4eab96baf7c0548cad6b8899969385735b66b656d6b95490f3910801c82c6ddd535d390511367f4d5fd7a9f45bfd37cbe4e18ac063b637aca10d2dd7b9c1c72c57dc70701783ed519cdb315eb9a7a22e5358a5e593c2c1e968f9c1ca57dae98e6007094c39c14b2a4898cd273d5c9352bd9247a65a44d4b91a7e11751524e2d10aba44714778f0068b2e05d443b6bd79be909fbada648dc9d09775fc2dd957880bb87717707b87b03dc3d0906b8fb029070f723dc3d01ee8e0077ffe2ee46b8fb0186707721dc3d0877f7e2ee40b87b1777ffc1ddb9b8bb0feede83bb1bc0ddb7ece0ee3ab83ba7650d12c65979ada12786a9af6c3e4c55579a8ac40c72c5631a1351f921036b71ff4f83cc1347c95909f9d3230c4313eb8bc23034e5bfd1d1395a47bf5433273df14c473d592cfd524d1d9d96a6ed1d5bcd40e5736c280c43d34e3312104b6bdab95f98363b3f9f286d8673128ecba5be99352e7adaac56f4f877367a1c55e85939b67fa759bf8b766e75bfaa51fc3a9f288d867fcd678ee9dae7a4cfaff4d479ab4fdee572bd901b165ec89a4f27392bf9159e85cf194694aaa75e3d91a79d9b686754c80deddcab178a5f4444fe77465755c9ebe87c5ed5d4e8c4d9bab6ba5cae677d8eed4f5723dab96be82b3d5fa9e8716e68e7fe3369f566a6e1d4394ae88ad17376eac79fd6d69c9daa2bec53fc72a178b6ea14e7d9efa06769b4f642f1eb315a33caeba7e7ef34a72aeddc8f4d13ff9a3746710c7f7ae25da4bebadf95338c08c5e909737d8e6d94766eb4367badcfd8d0bbbb4b699fab7aae34d7afa756d5a257f7ab68e77e14d7f67a22a93eef1a6da6bede85e24c83e25af389d2f689d6669f33eccbd7c26f16ee3e73928787bb19b46b50f0baaf00e5b5b6716a740aa12836cdb2d66abdce35a7d98888a65fa74ecf755f013273fa42eaa40f1c1f228f1a3a318d6369add5e2f982c70b92e70a777dcbf51bff9b79d36aebaa226911113d8112242405080622a025a5142843424444ada1fc4ad53447a7d5a21111ed55a5d16a3aa7d5cab373a7b5b5c708dc7f5561abd1397b357d1d90f862a779a684a30c65a315c790ecf460f5c879652414c533edd6045fed5881673ec58e1287c185bd66a4547dbdba5f098de6fa82dc9de6a4ceeb95a58dd233b689d64c7b9d3bcfdcb9189460fadc589b79e3bcbede283d73d1679ad2d63bcd4879a5bdbabef0ec85b8aee0198f1ff23757f08c878e95157ae6d7ebbc15977b951872c0b8cb10431538349c215e8564410cbdb268b3d7153c9ba96ba6e1958a3e9b27d269beba7fd366796feceeee960c7777e2240b4d62fb5cb18ea6a94844af4cd3434630bc324d489f3aa77989e5ec498b2e5657902b4471d6ebd5272b94a0020b4e6448d5739f66aabef24a7b538ded3c5bcf9a95bc5a23fc6e6e51e0eed8c99b9e2026ab262aac602889a8d5d2a97aea34ef2b39cff00a9b72f4ca31242930c016ed7ca7e58914f934a3441b96512213557de081061e52b8db9abbbb9ce4018075a7598786679b1307e060f0b2d8da7c2244fe66956694f55ab50f3ca89a70eff1393034eb2742e477cce8cc31563632730c434148ca2825921ff257cc33afea2b3d710cc989374e121425a63193224568b395c91014ef54a5e15cd558913428cf884ca1562b9feb26a269a46cae38294d529318e9d993a3978a1ed99868a75917f9a90d7965185aad57466ab5ccad89681a2731716662e21c7bc264abeacae3a386a4d288aee0d90ff1274c78905a2da2ad9af808556978e324a97ac260e6ad4fbde62830b840c34e725e878ee42237663632cfb5a87c1c3308af38ca6ac82bc3a05f44e70d8f8fdae3f0f8a8ad320da726cab55cb34264c63466d26a9938c7885e5666445666260f27701b70770238694211e8592beac1f2c1e2c95161e9999351fcd2664e8d4ead63db8500043159a2e49a6e93122890268d0ac870772a4eee50c3545322ee6e831aecc05264e673dd40ee9ec45b48dc61aaba46c9a6faca49769a7551197b6d3cd3a793adaa26ce5294d69d02a1d8c459ca56512113e758a92e49d573bfce75eb2c259b7835a2bd6074c2521589893393971527566649320da750aee59a0062af8d69fa4c9206d1662b932bd94c83b4ceab11106db63271f7d28db4e08ee634c53124b4d9ca446f4da484d1bcb65a4444445b8d691a4e85f2c65bc8283d8db0d6d9090d1e80a30b2d5a68400cc400c11229184205042f0b5801938d0a6011c45341c34d7360811d3a803106851a1d9a2020e565e429420152489183039b03d890400b2692d86082a11e88b4c07377216811deb5592b88998b5ec9c47945b1bbdbb8fbca01e09e224970a57c4484e297da8443608425ffc1eac1ea9193c5e4b8db2ddccac08c93365a5c29c59fe2d8fe98c619063bcdc79f9170ecd5fddacc39fdd8eb8c253d8ed2aacef2ecd59d9e26565133ef576ddd3a555faf84a6eaeb93851fa6c674ed958adecc9f8b52fc72f71f77ee07016e0e7e64662b2f646ffc7863f3b5124e42f19b599fb1fd668a3fa671ecb3a9a6d8956b2886a1d532739a04259b46e9197be1d7e7157f9ee20ee4871b71f7199c14218ad36a47aa8afee061ede4149939f95c3729c20ef76f65537d7d468b70ec85f39ad6decc6bde69fe567aba7b0f77df01e3ee3aeece72771aacf80f775780bbcb9c0c017537d5175136d5f45cb78ece48e73e67e74ad3c12f9f9d1dd88e8ecf4e109c7df4c82f9e203c3f80f414e5e48dd7ad8b6a5a47ef9a7af4cab197ce3e8dec119699f73e6733f56589b08e5eb8485d3f177d8a5fbf716cffa799a6befaa4072408526c555d5f07292741b8b2e6a2592da5bd1246b394334048e2ee2aa43aabe69b38c77ea779c551dc71dc5d06277370e1ae5796ced14b458b66796b259d939e38f6c22ba6e9e89d5114d374740dadcd6a2f9dd7aa593beb739f284ed7bcafe447f14ef32c55d7132905f222dc9dc8c91c4836363a9170aa93f3ba8b7474aa9e2f163c353a519c6938f5aea94ab8490b2469c4dd8c25977fb3cf39e78858ffc058b3b3613fafb15d081665411ecec737223813be0b821db759eb225c965fb702e05ab0fe09e9bcc6b36eadedba1ff774dd5abb5d26d67ef65abb79345c7bed77439062ad673fbf76646dd7f356a6b7dcbd9c17cb597b4d5607d786de59ee6ed95ad9b5f6822f5c1dd75e8fbb7606d75aef5a015811acdd2e68a6db3e940dc15a6b6f900b02b85905d86bbd6beddd88ece54ce18f2bda22a0ed786c44ec772fd76333dd6b6f6a7a6c01b81e27255b94eb9cdf07586e5b71ddb59b7745d82fac5f2749d2ad5bce5e5b030bde15acbdddbd9bb53eac8e05ad78efbd1e12abc2bddcb53b1beb340298821d6f90708db0dd1dc17276b37ea3dc3759ceefe9f9bbec0f9ba7cc5837e281bb59cf729f1dedf6e55eb0b5d99fcddecbfd15c395edacfd76b81e27ecd86bf2c06badb59fb52d7bef0a36cf8697db90acead6acdd726c78ba16fcec35724db826dc1236dfdcd658ef5e3b72e4c6dd11eebdd6b31ccc863ceca9bbb6b3281f6badb53a6ed0770aaf2d02c5ef5a0158d0daed5ace32b125dc2077c73dddef7676b3d75edbb225dcd3fd38bb759bb53e76b32b1b5ad15a2bc49a704ddb6741ce5e6b5bd67a21dc1c96bbb6e36c907bb2db35c16edbbddce56c907b2d09d764430b72d75adbb2255cd3b7590ee4acb53e6f6d5600876c2c7476b3a1e56c6c18b64e5474986001c0d97bbdfb654b82b0736262edb5d75a9be39fd35c862cd68c186ae01f431264a0892115461953f0171278e1055ef8504a052e944409b210c6c2a52441460152522a1401242133230afe61a4491226e48009deb11324091b9d2018d584cf0b461e3e2993ed79815da3c79566013dff0367b9d23021c7b5c4c5f102022aceefacc002181c1b9ce07af18417e18683c13183bbba20fcb91cdcdd57d02b0b6f6c12795a4c288860e90bbf9043813d5fb895200eddf04405ae3c13f8c3893596133d222e691b371b1c17392460c943dd2fe470c6127e24b064824134391cd40df7878eee05ce7a4338b044a449121b395ccec435b9e1c1120c705801cd0db66bd938c1c80d972361cba1d954918e052d963cef84285a40a839a2c3b6e4061e964608a78839c41c34280181066ad30e9686ec70894b08f20bb7b13be20cc0e50690437925d81a1f378cd18070852d0237b8bb009cac62c7cf247d7e118d0c174e6609f50999983bcb54424ff509191b77374a4ff48c257d4945086a6b8e51a1434e31c6141498628a728a142bcfd457d6fb9561b0fcd9d4e54ea29d9bc4800c304084bbb35c6a2cc975621a4eceb0c749b1d78953db2fecfad20c62e235b026343c07dd182aae57969aee34cf5427add650929a5ea0870bd070019505b648c2024158a0b48058810b54a001ce72f22cd7ce9a68cda899e2d8df7c7abe2b1fe1dd6ab91ea6aebec7ec2617b976164aa1b81ea6aedee572b9948a3ea72ac6b14751fcca6f0ee5bcc284744ddd3375855560891468b83b4b6b15fd5d533fc58fb36b455a8d2549b184144baabae2a4520a26ee2c295666a64017beaa27128ee5227dce86a080119ad246717a2a61690ae89c61bf9a4019d68d0a9bc015f71b75ffeacdd73849680246deccf975254f00c53a8a3227d297641457bc6646c1c43d6674c65e557714efce525f55b7183374c468c03d27af34a5159faf1396d37c0455d5a29c571851524e5bad21a2a49c6e9d4d312240c105144340b1040a974017ce726d555d5d37aefc4ad527abc759d5a49c2aa13475a5d1f0dfb85cab3f596bde2896c01212c0e2ac212850a42061bd52117e02064f7c7902f604e944154e1839d18213354da46942024d4c89401a7787c1c908301181983b00fe595bafa70a6bd6ebd189fe4daead7bf519e94471ae19dd648d62d80a47e3d8a328264a714655b5e8cb6fe5b068e72baf2dd7d6d9747d0e8bc57aedfc383a1be1352ba558a98896575a4e6baa128e99f1ab43cf5a7311ce8d2bd74ed7a779551fc7c431738a89325a84899eb59e3bcd1100995001134c5c6101009ded188bf52dd64e71d2d754a5cfb373a31024089ec1c5c44a8b2544b0c41567cd6a5ae3dfb5a23cc3429fc332f3a6e5d7958caf00292153228854e20615103021d0e301633c808807e0f080fd80d50336771f8093619a0072320c2c4ccb013b7040051cb0e4ce9ae93f92e4d5f4559d9e503e0745cfa3df6a8a6213c7347e259ca48f5635e95d2e33ada178eb5a12d8c78c6a6a9aa5b88892724a94aaad560aa5d51a72fdbf799afa73fe594afb3433ae1525e1d54cf18b28af359d66d7e7fcb7a4b06aafa6284c3533ce6169bd669a8a83e2d7b9cff5b56b45493e87b5aa2e174e4e52d15cf4fa7cad42106b5d735e95b85c2e56aa755e6139c3320dea0a237ae973760ea138a6714c85a5410df042c3792d1b1073774fa134c088e3a4f7067812689450b406cb684926b1c5592f1c33cfd759134a62c78dd65a7ee5f5d535d39093aae9e3284e824103860896998f3809c68764801aeece72adeabb5c275066c0160c10c29df5ca343dc3457ef4d48a28651794f2915276219bea8bc7478d01bfb310b98033dca138b9001c16f02389930a30c3dd595909cd1bafb5d70b2769a57c5454d3eadeaa2a4569caafb0c20a2bb0308a9e2e900a18e3fb9c650510c0dd5f705201211230209100f32cad94aa2689848d233270841447843922872390dc5d004e1e81420252908032ce42519cd73de5594a6b467a7dee349f2cd70d921514578fcf61dd64a453a7af5dad967a12d1b4eb358ae2d7ea5d37422b28ae6ff5f81c17518a5fae875dc9286da6bede25e4723d4c752171b96e849e8547924df595948b3899802bee2c1aceb1d72a14cdb2d665519e2294002509c07177ddf45841717d0e4bfd23ec04286b1c8b5264486bbde6594da7ea6b056ab5868a98414343884c5445c04f4e6bfaf5f94af9e84d5415a2b4cd1c7bed3349cf5065cdaa59d354aa7c8e0d21009ca10a952acffa23552dbfbc2029a7458686c0a034516349455aad221affd0902157d423288a5f5f7cbef830a20b6729e5a3a49cdeb89272ea5abd1954eeac8d9862040b07f082b56614c5aff48465f3f599c3d2b5d83671de3a3d7150141fc088bbb3b6aa4a29a28b229a28820877b771b2082c45d4c8228e8af829e2a70815dc5dc84922b2709d210f00d6cece0ece4e8f67e151fc727d463a37463ad76c4ef91cd6cdea8f24f99c42f91cd6ec6cf239ac9b1e2b289f5364c8038045449463438e67a7d1b9aaef12723d8a5f3bcdb15d2b89c8640cc185bd19021dc205aedcad0a160577cbc3c921c821480b0077abb23b52eef64fb02548c9287aba90949f98d9549108095183bb0bf142106b44f9012224847f1fe199b9aa9f9e592dc29fa4a647fa94f22ca5bd669abad25ea5e40788d6aaff1f2042426fe69d4d960a4ba6142561e52315293db50a53631a33d97a3d6b2bedb7ce26aaae66efe49bb0f43e6727aa5b3a8567c5689faa678eb9f2bad5f461e7dfac3e6b142b79968bc747cde5aaad5be3194e5dacad55f473d17faaee547dc1cecfba865fb9e85d3738add6d0ca15d319a6e60c83a9337da638f6cab3175eb7115e3352467376cce8445fbf54f45fe7d6278a9643f27e65a4c73743795dfdeba4a9fbb193676d7da2ef2a3234c435cbb1bda66a9ea95ad7643035c7e8b79a5e518f3c2b273d1f06350a46f59994aabb161b325f3f6bcd26ce319c67317996cb25f4ac9b7dbebab50a9a8667ab7f96c64e70d61cdbd948ddbf6b3414df7c7afed0b39204bd4e8ca235d80c3f79659a50d638afaf34481dd266ce4f5eea509ea94892a4665ef3464f25288a91745a76d8c1ddb1dd119b61fdb966aa4fcce041052310010f6378688287303c1cc1c30e3c68e12107779afa3728acbef53a7f83c22badeac6668a678f83c2b768eae3a0f0e9eabf85a37f062a3c482179f8b959b586d6bc661a8852351552d72cc30e2d10d1708e69a25d53b3a9eeac51f43c228aed3389e868c5b3bc7658e850e5071dbc04630627c1c0e2241855b8bb087e420a2e4290178071f2051770f2056b38f9c58f935f4c71f28b1b9cfc420927bff080935fb0c049303827c120f2859626ea9ed58c566c02ce1176498e294a6c0a640e3eeed383b593b35575d5e74ce7a5cf59aba5af3889038ed689bdf2fe8df7aad2f2fa59e38cd25e8899d76c6474c63eafb58c74ea34c3b2f938a94a15b70a2a266073525ea730a184757756d62afafa2bbba6736da778c546ff34559d129a582f6d66f4f5a9aa715e7f6325a189a5d34ca3e1d86b5c8493563c8bbdd25c94c21ec5e72bd3f4632402a460dd890d82c22103777fd4c92c46f4cada57721a7503111de19c7484f314a157462232f32bc3606633ada947fc65c3cf0fd658c37eb14578a9c10527b184e18f939e30f589bdf2aa914dd7b054b0f0f0e16401c8f02456c8027c71f794995f18a5e5f555a575c8e228c0104b27a9289a9e784d1205cadda9b08003481abce895b5b3ce48ea2c34a5aaaa69347535df4c71aa2a7d5a9ac0fd89934a4eb86b149f4586fcd638a3bff12b15a151fa21affcc095509d8d308d8673ac0564aeea2b4b5161694ed524ba54cd9a90894429bb609e664de80a902ba2bb6b4ca49ab59db56ad674121796523e7ad5ac69974b356b4252dcf34c15caa9fa6448356b1a298cbb034122bdbbc6492f0ccba1a96b9a8ff0b61cf88513b190071c70258cc4b8bbdb30c303ca408228eeeea62a28fcd4b8b8abb093a846f35a14f7da0fd74af9884813d576d49c0cd744fb0ad75b8a8d841677df3bcf76959dc4ddd3edda0cd72dd066bef5eafe1a2d3ddfc447f4ca6ab55a267ac65e2d77c781bbdfc0ddddcb00c158afb83bcfaf60a22a0dbf542757d72b8b07a9d5b2b2390fd2abbb66ae2a6ccdb45cdb1a373180ef6cb4e2fd4488fc5a7b6d01b8591da944fa64dde8c77243f4387a950296c759b39966bd52ca47444a4544b1d78ab326525a717a16b174769a8590cefcca52cc15bff499a454c24ad5333d3fafea6c069789738c6867dd6ab9a87cce42cf72b9d01a7e7df9ac3c94e4736cab480690a6a751fe9ce4ca349c668a612a0cc76a49669af5efacf45b4d698fa2e7d69f57bc933e8a13294c9ef5b467cdd4577abe5ef1ebf5696624acdf4c315651b348cd49b9966b56fecdac71d2ebb756631aaf3f43f30a531feb13c55b09cf708cd21367d5e79a61f877d667ec44f19a67394653693a9fb3c7afcf9fe57d9eaf37f3ab66a639b66770b9a8b8f24c1572bd3e5f9f38da5cd5a434e859a85e5f9be9a97e5a3e6b6b8cbe54adf156d357f39467e573dd5a857dae99b6b366cde07251c97acdb1adbe9a26e1fc30f55de73ed39328555d2bcee8eb73518e12bad35cb39275aabe567563147d9d696d67fd34fdad67d13eab2f5692ceaf7d25a7eb0c4049a02069b592d4f4880845731295195cd9545f2d1795cfe79ab4662435273d0e8a53a353e31cd5e875463a8d34fe5455f5ebf259a689e61386f33a0d7a9d9e341a94284a47ccbccfa233a6ae518cce23aa3a84374e92d1228c9e18a9dcea1373ab4fd42766fa424c6326472f15d5af93a60e6de0154b29ad19297f7a667737230c1a94b1c3dd6b70b288027a65e5579ab5ce44669a8f5eb808154ac2ab19dbe714336f7cae1bd3b214f3859d8586b6569b6c5d4b62e624d54c81b01838c3d4300c4d9aca8761685ad57505c263d0108a622457b093b4c915ec84353bb7ceffab0a337fab4f744acbf9e8d5fd3bada933fc669ee127cfc27985bd6994e2d8eb715e5868a6ea4fd5d7472f157df495d2f259fa7c8d5fbad6021a82f2e4594a68aaba5c8f5f675d7329ad78dda9fa324f6d94aa287e97ebb5c6d130989a4dbc6e9d67eaab76e45d2e5d5363a8e1bf48912178e3248f6306ad515aadc72932a4d582a15968c8ec8c09d1b09327f27955b7d0ff17e05b2dfd193d6933f5a5a62e970be801f02cfc297e98baaa5ba3b419be923f9b8fb7de35f5612acbcc35adcfd7fb4c6b8fe2ad6eadb44ff3ac5939d3a09c04c5e74e73463ad19296b30b19ad9939f612328201c8c43989564ab113551d72779f81bbcbc0dd6330869354b090546862844145c7dd4c6b9fbea043caa07dad9979c5d9fcd769a4369161051944320611c470c65daed748ef727d4e0ae55937f957d831a373b6c2eaf5ebbc62f495cd7f20c6d8004c02bea8119969d644aa59d39868bf709a11400ea0042e4bcff7f1e1a3c7a995f40074d019e94431112de72314c5446b86e914af7b4d6b44f9b5aa300e0977841bc2fde8a4c829ab9be2ad0a96ce3ba3d94c833c08a890e34d6119a5ea9af479a60a3d4b17d5f4c75e295e8f785e4e5aedf5521f76fece9ac8ccbae6513161bbd199dd11ce7d3983cbc1cd8a489f46e9b9f57925a7b63427b8732f3807c4f9a4c0ddb900bf26bba6e67dbeaa1f279b6afa39b6b7ae05c0dd51e0ee5b68e1ee599cc089204e0e2571f76caa695e55582e4aca4f183004a6279a9e9f8b7ecd4819862984c4b04ab75584aa78eb044652aed02b6bd766a247be74e0a4699d346f38699ae0a429c449f305274d2a4e9aaa7b8d08374020a96cc0492a689ca4b20227a9e0c0492a6938596574b2ca3b590588bb8b8e830472cb124e6e91c2c92d669cdcb285935b72e0a4014614c54836867d4ed5bce6d8d00851b6ce43aa5913d2422670f712a071772cdc9d04641430eeee36ca96a293887a03308690817ba765a8e44e30b6454c32a5d0cc08080000000033130020381c128945e311a95c28a558b3071480088ab260824817894190c39442c61863080102002200000030336d14a5dc02a3fe92c85aa90160a3e762a940c1c759bd9a62032aafba953cbe317e705c752922bf5080cfdd67698df8ec91124aac5937d944739edea71dca702d116d56c8ca7557ba4c0a0c22510afa9f55c45354946ca7c3b3530212aab1c1ea01ca516793315975bd94d0d1052a976a7282b2e8b02aeccb84a104b978b67797f135c359ac0466a6dfdb12aaf459fde70d4af6f6d29d1ce94d4bf344acc94e463bcc4716300abb7df003d7699823bd5c0a59167f520ac84515d4eb89fc5164489da774908748e109fbd37f68e4d487dc7c951c5982040f977fa97bc2ea0e84e98bd57a0d4111c885c0cbdf982ad04a0b771324ea2b195791f0c9ea347281f1350c49b9c348fda8480287516abc5d44c7d2ac30a39ac3f48e9fd5f0434023f6a81bf5d6a1615a55cae2dc8bee49cb5836ff3640d98bbe90a2dfaf778d6a96ffe2398d962d64ac00bd2b6aedea0c7e5f3448b10957d0abc11b87656ff8878489c582cecf71e5d951e32ef57278ae71ceb192a2eb6f6b8e3f4f740e387cd5c95741eaf3fd2b38c9ea4453a04bac8ed0e8e9d730f7eaed5c02516f78a8fbcf68d80820af9143bb2c2d1aca30a52539199c514d69909ce3669f5f4deb717f0a74b88f7253188213394f1db25667785eadb32714d1db3b53ee96a8e5bfdd952cee306210c0d88c504c3e8659486728dbfc99140dfb4adfa8388bc8109e0cd620f1287dc2c736657acccdd9964fdac0db0004ac12bdc99a639484280dc46a094bcdefbcf6e69ed3624d65b8227eae21e45644b1e834da0d851fcc6cf2f834c998e1846f583b7fa5bde23e10cc485c90adc2e1bb593e94ee654992c4bd19ac5e65ed53149f5d92b7b8694dc6d5c4c487d1a3d124d94903acd4f24b61c4bc130c8ed317751c744e21bb416085e86403e4aff097be60e8d91326cea5a6bb11c2e4fd74352e2c7a0016032f8e08eb02b101d74860af86d232bebe5b2b69c4562a3a8b7edf17610e184b1658cf4adcc990ebf8e2d15edacb53c20d5e4bbb7c7d681bbd62401afca152ac434f93a178359e33cf5544368adabdc37ec8209d9b3f83bf872a1f3a012044af22adb3a860e1e0525205ce262cc9d1bb73ea7693d338b5957cb2a38b75d339f7e786c7fbdd73269a9762316ac0f1c0ea91d46f6d30dc2a3fe0dd1bec208de96ee9e5f253b73904bbaec0df0ac1d48454c59387cbf86726e90c7a015b9c4c6e21461785f9a873f6e4b0cd940539eb809921439e28c9c04d826e2dee199d2d062ed74455a9a817c3e711d37955314218c16c922ac948565cc378ef960e90fb301a3048c45acc59bbf6b700643e08f919cb987a6f119ae319a06b1f379cdc6d87e1021600e3c17fe1d5250afde2c37c809e33d9baa7bd258981332cf7f5f3b8c132ff063acf6d4b2ed43e6d4537da988520c35207bd77e40d442f60b80002e11ef36c1c83c104611a16487d41d15df0ee99a238b31516567616ce194122295a2fe96b520149ce82c93137efc22f48ac7c722d4de57720250e8bb49a9710e728f722b983eb6360acc60d597a9ba4477373ae06b50711c9cdc9ab50cf47bb47ab429ca73eb6fd946d83f6b5ad43ac63bb1e6481b729a18c0a5c4605283175a8a91a383a744c571181378e6e430c855dbd81908d53279e95754bd5674302ffed84e72dfc7937ba47516336009bdc9e9b7b5c5291d56397dc893c7da6d56e05b0194d95adf5a5e87b5f48bfeff700d1181372a22d6fb6f7e53f82751dab00b968263a33e2868b3a42cf45adcdbc9614e2c0cf77afbe619a485dc35675c96aae2c3903f706a56bb1d2f2ae32005c64b4c1592558cdcc8a2887b47fe0d11a1cfcf2ee5bf834877f238bf4b4ec3b976f0c38ed008dc1c90d354e363cd869653fadee0d43714dbbb0aeffb59d77d705bb1090dc36d49f308df7542fc6f86af3b9e129bebdde19459996a9ef16866bd61a803843c2b15b089ed50998d4e7f4691cea693a37bbbde4a94360517a37709cef659b16a43713f4f8a257524def4af09bd0a1e6255d8a6eeeab9183e2f3659f525d9bbbc81d8cc25df7744079b26c918c32e98b5d8ac7cc0bf97c6a6468be999c03bb61dfdaa0f1c84007c33ba71f5650481534cb385954b9bc73b05d5f0fd8a1e8a10008bb4d95cb36574aa83efd6d2adb02928e1aedfffe00a7987d37a3d1493d6c37269587a2dec0988257cff11f237ce3822ba6099b483e6f5a57b561e243939c894fad6c272e1c72aed46cf97d4ac56a9554a847883bb8d99962a452cedbb457b606531f5e4ee6cec48839c9b6a124cf8dac287bdf1c0a9a9aa791801c39406a9617187339c399f7152dbc854977709f1781a2aa0ec0a62315378220ba8654c349f1525fc568f82c6b089be746668c28c96cca880bb07a916769d5f164c17bc9ad8f491890870709918b46264790d03fd0c2c2e83ff261edee1702c119680f0da0ca541c57cd752700f3d917d2da684ec23fee453a3b7c8282fe64479fc93937f9c2b41f04a6fc035372a99ca937b11443839d1515d68f31e810d27030ca486a892427c86cca5343ff86c37c797e9ae984b6310261e2ef762d9a3b7f6e54dedc49ce538b7f7048c78ab78fae0c3222c0ba639eba851c96a41d78ab2d82b79d65d5797da6fe10eed6c934bf8182c479c9501e3afd126d200858674f78f546c83755fa249afe390e2df64e16334b6fe788902c152f71af841bc0e0a5691cb0e3aefd51b6da187f0df270bc3b2d98214cd60e780d28d5540aeda5439fecd3e75f270d793b7e067f71b5a407af5ce7ff57cdb8a2ed363095d396227d91b799cac255cd6b5cc657302e2f53889d6e88d8747185002c5be168f160a7abd3aa6433636f33f9b059cfcc837316a826dcf2bb93ce333c3166dd8a17b0940020be4f220f8cfad539c9d933e67f4dbcfdf42be977c0480fe9d884361bda4cd0720640eefbc9f2db8d8a3620024cd374876bdebd30b840de8af213a288aa153386d35c952a3f6e90affb3a03a821359b1fc074f1c126e2a839178f19c017d4bf4620be8026cb4c6f97c81719c75334594c81fde9c46231881e820b3a2234a822627bd7454c699ce8c3718d7fcb8ace9c2c801bd58b11519eef886b436c7ba2afcf618cebbc251b04adf799b8593d4c92ea044eca2ca716ca95a21182b665a7883a55dbebdec10c689cacfca20ad9553f11096735d7f595456b7c08952b15ce8b68227676195e82c444d3ff85cb5c6a1dc34f615c3d0d4ac1592b57aa3296a40a39fdf79688fac4e4730be02dac963cb4134a862cfaa0d0ba9b4cd238e4ef85770a3b0312ae7df927d01037c0a5cc780a0b81daa69010bfe3e778f93d92ebbba776cafcecccf9991fa4e82a3420bf0cc7f8f59a600b799ac5c2b99cf4ecf764d8e87b489629ad4ccc961a403ad3249d9caf0b5cb6d15ed36b48ae49214f9eee6afba08b0df7daf9f984686edc0de2d1b30c970fee3201e9b1bb1e1f550f8cc51a834028cad7cfd14dfd6322b96f18bf7318db750a7e5fd1afa921f169d0331301cc2d6d589936be1ea8cdb7d2f269e30bccc107463e78c699da59fdf1ec5357ad6124d268745f2b1f431ced3b965bbbbcb05a7eeb18205a48e1538ec6494aeee1eb864afbe77ce89de2681d1df99e1cfe5ea5946d2d77df1037c16068bf29fcd72858397024d716c927d979ee7b3d66e46160b7b21e02c2d06d8650ef9f3edc299bbe3c6810cc080d9636c994416316546a99e5c9034be5a865877547e1084c7d5f60bc62fb9c45b4b17daf6f0d18a5b0cdc21920684eadd197cbaf4d6741718576758d85e6db345fcfb68bc835cda045fe360f29e4a974e99d7310e390effcdd2ed7d9be83e57dede553e1d8fd0fdbdfc92eef45fb3386c95bc359fb1b322f40d7130d59c4bd177c1d2aa60ab947ec492b170b1c91a2b70a8a762c87b5e96d3fc1d20ea193feab035a31931ad43ce4974ca7e454eaf0f38962a7f688371c3f72c186d973056d16c736529cbf50a251eb7027e9a833bc4b6256e0c150f16fe65d899210f0416963d54c59f17f7bae07ceb66be7bdcef601c7895e4bdd1edc2ddf11e5bf8cc896e45b51f83e2ba60207543ffcbe84d8b63b74318f3c44ac043cc10d4f3d15d072948895f244ccffdc48b13eeb9cb3993f24a299dea71704d722f904d2cc71940703b3e4a728e807c1c1d14a99120cb3accdd6587d36bd75ba35142ced62adaacbd3da4b2acbaa64bf19a1c6e44a584e90fc8cba1f5118d5f382d26db897f214fcdf1b63076a3d5f7b6c09bac9e827b32b62e3e95773c5291e5b5266eae3337fb784b7efc1f9d648d5daf0348e9c048744f386e7dd8f10fd78d525aac7e27ea98db2de146c0c442d2fdd1636a83fa69ddb0c0e4cee2d961ac567625cc87f123d7bfef65a7e3774d01e4de007f385b1294f3e24c8be101c9212a975845fc6d809132ccc14bbcd130e59c576f8e5f841b96264fe7ea838c1361a9484018c46c4e6820df0351adbc268e982f4a835a53168196781a1e88e4259944423feb8a8ba6ed42aaf75c19eb89865db12be1bee48815bacb27b8e59b104bb81a1565d26004fa3e7c312d125757357fe5f831091487893bba5a0e290447cfc62660252bf4967628d23daf3aab608d05c76cc93ae3155c8c22b82ec3778fc9ff18996e64a2359984297660aef9c8608ea4a9c3f7e873e1093359f40b43e7e00ed84ec7d118c89b687d465e81f24ae32ee28dd782b7021171be0bb4900fdc60746f64afe4a000dee58be069df1d042a0bce6bfd94a10963c6c9e988a3c3ad1c1b0b74695169fffa78580fcc950d1df1cae72c05e2c3ad5d5095fe125e7972dcc128d2e3a613df18d7767255cddccd0409aca899b85ede367c609deb07ee2516d41dea6f4b3b149688c6d003edf3852ca92d9f07d0fbea351436edda9ab4a8444f2a474e2d6f46ae659e9316b1d332a93078db6a8a9d86f195a1e1b3e08d96d6bd16c62171453b3ade0cc90ba2dd3ebe68452bf032fc7b2fb47b9c5fb5b0b8c13dc5b76effd40b53e837b3120cb997c4ee437143136e23ba233aec406376c0cea3ee05b2ce3099d2cb36993ea250021112bce532cb5a46b364f563d4f777cae4f6b3ca4c9d6f8fbb087d4049f2d9c9f643f5b3d628343cde96b1cd2090d8e0d28ceecea1d473b3f7c362ee484e60cf41b69325368cded366c939cfd55884fb3e0492d86be1b17ef61c5655e9d521751606d4f20fb002820035f77b600774d63399cf6f454c16bca6598d7beed09cc7eb33cde558041792f20f39e07344cb98b2c5df3946b2beb112aec11685aea73a54f67b837bbab0561ea21278af2666bff9c3419f651c0e2770c6db2010a710f5cac64ebde4966c8d62ef7d6d4f048c0fd693163e431b6fb3c63c8e23d7dc5430e7bca63a29197cc9a927180ca6533eecaefb12aa2d16ac260219dd1863e993f672a39bdd0521d469aa1fc692d65ee74693bf8d26c2457829083593903c189e7ed78dec0cacf0288919bd9ec07a101159eb9840f63dc44b9635058c6550d7754edb050ab0b62d49a110f3ca40726a437205397df6c07be937af400cd32db5f2300b0b304a47bb342a021a5f7d59a3fcbfaefdba9f55fc0ffc644b8b886e386d91885367204a9f9c5e8b25c7cd766dab00a77d3376a1f3cefdafc27237f7b5b54ef85914e26f0ed4e6065e90cd92c271c8913249d33a3f19834ef0d056d794d56dc5903440b922c070591e92e0df4523b7d272dc45432a97fd22b51171294214e7e0dd401418445b40e8a2918d523c56b763adc3f2867aca5f744b21657792d9d86a2031f3bd06c86dd69ce206bd5a6bcffdead10b95b9107b61137f8eafa30187a051b8e42120b2466ddf5e5191723141f802b7272d9a9387f33d29643af4457eafc6fb49839f1aa00c154bf4543ec0130206d1b301e9910fcd8bf6dc1ea1661845b3742e5cb1f34c15a698397ec080b05d9125f12425acef220fa1086b45ac8016f56f3ff6e47392f7dc0deadfb2ee5f34b17b106f74fb05d6a0ad7ffbc8a3959b49d643922ce62d59f59cb5f3ec7788772d7d4092264bac2b6963209aea01532a3917e6dca62bdafaa76b275d184363e988aaa85ac570e7a261a081d39b94e83c6096a93b2704b4e059ed836c4853574e296cfc300666c620867299456a1b3110ffd224e66c7e6d6ea5753f0a9e869825439b5e165813154158da8655e6eb6fb8161bf31cad6832f1b6e84d9c634c28a49f7432f09b5ed244f3763b5bba75a884f3dd368e43337eea00ca09e81d540dd338d720ae065804590340dd56604b70abac7dbf0f5e9a768638267ee8884ef40d93a80fd268ad06db8fe3c8af0ae64d3d00543a677d05941c4074e5c7f936fd3009a6709dd97395ebf693ec49302b2274c7f48aec92a2cce8fed39f9d2e9d63fc03066d82b91f208a1a7f825643a7918a5d0e92e32b086f88a24dac557f5c4fe7af23844835c4df2bde28ef730b8d8adf377798923f85816f8f60472b9a1e1ee5b556783034af2ed9e95fcad5f39f7750b80454a19c78e774feea647fab8f7d039f7275c0add15cf038ede5da9e2145591414d99ff246db0a128a625dda42af6013c6041333f0215950beb4558e9c77ab441c8bfa8fa0fee94d818729a702f448ef39af683407493b3456c72d330aa2afa21b0094a127f81dfd6f493c40a1787dfa1b675ee43bb93a48b46f29f6663b3dd1ca57862e41c252edba5fbbe655b92ac449db3a03cd791698b9f679f7ed9cc7dbb7a8886a7d5da6a64ec3efa624018def510ba0a22e4db16015a70a085ea328531e8c73e96566ccde65a9ce2ee07228eb382d615a4f935ce45230066198e1f7d527ad94a41e54f884895ab021c4e41d89d35afa555e61ee39090a082d8aa32fd53fc8ab90f2e2836ddd6d9f3c2e577ab6d91a18d8018215792642a6d04e95cd7af389902a9c91d15d182393225018965bfd4619b36b7acd812ad48e861184a41e689a81e238ef143d1002a4b4884b211698c70f0c7c0aa5333fc63a8db6e8ff25010c0cc9ce578b096abc14a38daeedc67f4d8120133de8e307202711569c0f7b2accdc894be3a77348d816d845094ddda5c259c4202b4a6e8b6a517ca1a0ebb929925e5a3466c287bccecb1232fcfa50dc8b64fdd89720039305529ba3905e1639a3dddf884a8015bbfe60710894c0ad61831a8e50c5aa14458fd897d313f1f62c72527afa1a093643d0a7585a46acf9097ef14ca021a45ea034e676f95b67fa8c29a69fd00da13c24297df4d38d4a973523280092b72687016f9699945c0176018eb8b56ce0f99e272879f184b009d2aa4fca3cc6f2e3048193c83eafc714b18d4ba84e42fb6ec4072fae71c1fca720ba8122a02c2f0066af042ccc042575d8c4ea60b3682f0249e5c2e811425286a57a5a59ffaec9deaa613b5ecbbdcd06ce0ff795d4b33c8a0002b0752160372b9a7b2d2bff7bcf8ed6e78e9bd196e90545c4d998cbde49a3fb5f23905a3c0f635961dfedf56f8a80c393ac84629d1133334aed6d3233c75793fe1780d37ddfb62196613b9fe3c81d7db448a1eab930491d232acf5c92ee392a7f9762cb7163820c8193c8b9bcd15b6f8cc45df669f7b1932f8f3d7d3ef7c6b59b51aaff8c0aa792c6266c5ddd132d4fe89f37b653584f13380fd560ed36089306da150821f69962f709faeea9c9db6104b5299c9ed41a7897da6f412f3517db224928b4418c55884137c3f7917145f4a3699e0025b450d69788d899c22db304b9656c098dc72914eebc8c4cc7f13e99466b0a401c448cf1fd641899b72caf42f4ba2f58d64a667dfb8df0c4dec308505fe8ffd15f9cece05e844f4bbafe24b5baaa9e2251849c80e1e5ea2addc2b11de85e2e5ed3611f5b03524e2497100889297e013e18caf258d28472cc7512c315ae90445162aa3abbace31d61f2402d514e7308c1fc7b7d59c512c051dc78fda152443be9adbc1dd25a4e80622181c4844750899e23a9948b98f723aeb5f590ab5aca1b4360f56c76d96200f17c1d52eb09354d9383a1b4483affab08c06022ec26bca036ea8b7bbebf248131edfc88a36d9c857f53211a29ce346c633dc4f8327563faa0b7162fc46dc13e7f2cdd984734667490e4b5c84a92148682f55c14206e002cca0675086a07e37fedd37c48842fc2541a9ef7065708e40a34c5300c892f038968be631d9eca3d71075000bc4a37fab99c41f5023687e95666090d051ea5f6c011a4064393629c39c82d3e127fb04fa8a8768580677ea1a2bda5674778410a4a1540f17621db281a0e8bede139b1dfa6d942b1c2395485101c58d0c6ea5c8353756608c3a40f5df105de7adb3fd60373248512648633ec1aed065a2e6d54ff96ebb997b2f7634ed7ad39d81d2ee7a1bec7d9f9749b96af61a4523fd2eedd90219635e55a37e0458aa998dc341a1ba21c68c602196ad54438aa31a547f9a6e7ca8fed580ccc9fa5d1f6ce7afa9f37e283f3bf55d7aae827d3bfd2de262f784561b6a0a8e6858d80de03620ed7f820e20ca7f97bf4d02b376211e4ae639183004b3d87d01ba5359e5ff0deb604883040c7cf482e00861dcef067a877c311abb19bd01b581c73fa8ef444c1c40a95611357f0a6bab5c1f5705645d0e20635c2e887a557ac3fd99b1e95e0e2b162269951537ef5e4abe56cf240f7d12fa17c3f3cb78c9851cbf2d19e472cfafae2d47485effef921620dbbdc31a03f67abc2bdb3dacea5e919976f2d67db0f7f34544e1f0be49a35b04955e41f0db850396b1ec41668ba9b617d7ed07654f86f5c377364afce1e4a0d512f2f7d76f445f1472f50399710da2ecaad9d0f6dd1a69fa2e0574ba0cf63a7acf28b3e4c427c7e77fbae88ac884721802e5a49a55632128eaff3f104f7cd938b6d1e9260ed7152647ba54508a78c20d8fc9305f7d19897f85f12f5fc72b5f3ddef73566686de0d5af6ef0d68d173f781d12cb5e6d133abc04c36ce11327a309e34b32f8dca98b33b99153d12d949265be6af2adf7e17f9943764fd972830b63b56f68d639e48e64d88874e2c1fbed2379ee19f4f1ef6f33eaa115ce42db47e49fb6664efe94539b8e4f5f71866f2995c095d9390a63145685359ddfc78d232686ab7db8c625fc6f44619ec6077e3820977fc4675d4fc965ff67c4727e65cbbc68060463ff9337f0dcc192b36d33d77e069fb63eec423a215dc93e6bfed7f036496a4d0c9f5914036c40574d855bef67b0bf83a319fcbf5c26cf1f6fdab82bb219fc3040606d70256e9ea55bc6b7d2d225962670fa28a6f8a30bd2742f56f431c8477ae5d008b8c99de2de81dc1a86ab8b0dde44bc73c31a06cea7084ae45328fedf0b113975dd93163f3b7d25af1408109b0857c37c849f1d6d2f9955b6f034b72b9fcc05be4c53a38fdabb80ff2c8c37c02936ec9ec1fe8f861e3d6e498678e16c9377816924ebd3cd4e9fbe2372c3b284984d26c3d645218688d6782f8dd6d18a8cbf81a9bd9777f79748ee77993f14b68a6840d3d5da0e2b14ac9e958d3a850764b5647f9c9647062a6ec3483eaabe7f5a7766f92c4527660d0eda832155415370d2390ef9a2edf3836f4f105838e347290b0296196a8a7a52d8464ec5efce9cbcb5074574021e1897bcdf1b1a5b24b9b3906c41df5ac674c4608020f742f5ee35bd3f8b1cbd77e0df8a73584c09b0b6572cf288516398587e97f3eea82388f586dfb1a1f3fa1afe17888c6a0024ad048b61c7a40cd36695704c1b330728620d28b150e2cba944b94db7c3b7ff2633d781119210712239c4c4d04f4d77119689ed1e2e876e019866712142d4007bb2771e4fb3c8032a27910826c057d9b881210bef32e1a35dc41f7d18676f19f919e21ee5460b43b37d780a2d34550820cf39f9e487f83e9cda199e63293d8db6b79ef67dc8307cbe36d7afc4fc7a4587fb88f420c04a34efa4bc5775f81ba6198c380674cd25d99ce2f083f1c719c002692814e23b39ce90901c24376e7ec0a4b95b186c341c3980d49f085630e080eddb7221ddecd6f39ed33bffd6f20fb4be6f03d1278459d631c606ea672f080288d972e83d82221d1a2f07e8dd0e19a660384c38d41eb6126b61219bb7c239150197447db6a34797f6b6f3d8aed71eeb3c376dd671cc5822242b5a9118ea3816d42f169e3c9d70e7308e282348445ed2a9c140d5ddc55ef81ba6c46d2d8fe9f403e28d28d96bbefa754ee8acfad02f3d89437bd33d1467305bf7dfd3327a0a3411d1505bbd6082de2c21517470ffdd3a156107c1c76315c442a4eded4cc74b382d12e0f7f5398fa31834b44d4142edbb8f66bd97cb37c2a9dcc0d69078fbcf20c87fc71b175d82434d6cabfffdcf984bd3c22a21f919361730dd672f8d73741df1e0ac0e0f3647cf172bb9953e3f0c9551777e9ffde05e7394bcb6f7948c4db5d316ee0cd498e57714463649a58b6b546c7d7b9c271ae70149cfeb0a6341fd3aed225516129b4ba2c69139b5102625c7e7a6f4864a7bb4bd50637fbc1a310acf041736327afdaaa8f82a5cb9ac49a16de739cbfa1cc8069781f3cf645e6951b9af465ef80e8b99f502dcba6389a39b9953ad3e02eb07a03200872d90bbb65f4169ca8d74818aab4f070617dc608d43cb0309cbd19b96b7807aadb29967bdd96848f79d2cd8a8b0d5a70d0b17534254933ec76efb09c19ac54c85775766e748d1f42a027ac55e68f937dc1fb5b8a9bf9e697226e26f34332e37c2268f35bc9d3ff6f2eb507b7771a3ac63e2fa9048e1adf4f5a07245ef21b8eb4b8379bdb5e1fc574811fdcb2d7e511d2ddd76e3f6d63d6f4f61109db6fb9381c708618f66af3c78a3bf06d8616c105475829ebd42178013c4dd584e6aceb8ed143069876d54fb838737b8be457a85366203d82ceaba3027c722bc1cde982929e8cbda1bbf81fdaf162412fbe95ae424529ad0955f79edaeda5d0efe1a803a59852bbf8763e22b6973f3c00d66db0819ea168a47dcdf5f731a076937af5a93af7fe867aaffbf22274034413cfc03f2db32a41d711d5e1c0a572b58a80263b14bb4b61d6665b7c8228a8f436ec03cc935f0a648f4fcc7655dbc7fc28a1efbf36fdbfab31aad68d34a0cb1ff31d4e57934f459c4e37d29da2fed9e3903cbfe69bfa3ece212da6513176d719a8a4c6d12621839d03e0b678c43440e9d98c7e708ba16f25ae7b2e8b9a86b62a98176d0a20f1213b7ebd26e6212002977d477f4278b1d8b72e11f229a74cce4d710e1431eb5ea13a717d2361fce025c027253be6b7dd18db3b437e0b7837d76f7a0ae7f0db4e712e72504e7d9102d1eb0adac0fc93cb848317290850a7b3b8b88bb88e793a711683baa037b6f86299687f2b489e9a62d439b192fa50122171c8494bae6d05fb0c2f9ffdd647f3f809850cdd43dca633395420b49cf0f0bde37f84d209aa725b972976e4fb113787080f393ca00df3428995b007644fd67b4a4781bfd177bbc3254d31cfe563137d747510f379935b8aac1019bd037f5f0d98a664a9973243299ab103e462ad08b88348fb079e7bb04cd9c178b1829b30823f4370b197d13cdeb83c4d881e9e8320e5d3a6897695d678ed8597415bdcdeff3b780143bdcdb20ef385a833b1d5907cdc3697839d63d771890217361b41b1809248269bb5f35fa0aef4fb9c1cfe872d351a1f65502fdcef4dd803a0c73eeef402c466e28e9914ab5d3e8c784dc90667bf0c0a7c6252fff3935b05694a08b19c8bbf5a03193623333487b514a40f0801b71ee8068d6a00a4c05ff39b353f18e05347d090fe67f5c7bd34183fcf0a62710b292159445ac9038fd6fa169595253031fbcb5ef86e8fb857930b1ea03c0dd0aacb9afe3b2001aacdf8681be3987936baf5721c25b7c4e9340cece4676a23dbc5ba76ed38f407a6bfb61f959c13ba26350502bfdc141f621da8ae94e89955fd4cfca26649dc89a29066831e8df1d48fd83228343ccbb0e0515f999d63f1263846c7b82fedfbef60984a7a2e3672d43c56d510b86008a82c36a3840e3aad6b9984016f6343877ef8105a53e999d43884739e4f0c497c37a6e206b298cd0c773a3f2bfa6a2fbeb0e36ee0bcdf9455bd16db4088ac1a68ad9e1553bdd9b2a5013d242f7522fbaea74cf1a6db899892e9500e4c2dc9d123ea1fc1b2848387b68e402dd7cbb4a63d950fa28cc8b6487aba270ea1913c894d432940fc3b7dca26d64fe4bed99053b855c6e426c4acc652952f63271326de362c605f570d300cb61e48d25ebc8a3945e422eb00d0c3999df258006b1c2d3a785def182ff9faa86127f4234df4aeb8e3a1cb4fcfd50fca2367fb56417e881c62496b457e41f24be53d594cb050e7c650ad36216539d1f01b26b8c748308de44cd3c3422a9fcc92a68d28f630c42a4ba3cc3dadf65ea07465c1ce9a1518cc2640db0c706fa38041822d762cb7b9ae5503285190b9ce9a7866fff38effb4c4499038dd5f72a1a0e62247893e2ba9f7042b82eb8d7e677f6356ecd927efbf9ffa4b17fede1ba3603fb3900f2555bc89855816dacf07de7d543b6eda563a3a8cb58e9b948ee8f0b537a45966bf46320ff8fdafd721130835db37ff2fc8b83fff2f84f1e45ce1e7f6ee775f02852db072a541a097ffcf22f8dfb708c4b1a934f2136ca5cfd8d94a2073d8a1a58d6287aa3898e9aa523d47b1f84f69f83fd0181729a57146dd255a1d163f36b9dcd311c66e3b27bf757633192ecfeb0eaecd72ae82700fd5b375ceb3b18bed667494d88b88ac76de07dc7c29885e33498a3c97c18f30b415a9bcf09c46eae768afbcfa638078e5bd751b4ff79b524f5afce66ec6ffe59714284f6af9d28555119f35ed6efaf7fc4e1186af2b773fff2a5bd25814f2c27e6f38d36a0f0c6f13543141df23eb18a4709a427a7d2a70b99bf2f97cefa233cc4091d1d5916b85d5fdf0b9c19f3fe16fb8fb76b7cf78503902d5b80b627347b3030141aae356e826f117c5c681646aef17eb312f70d90e9eb3d91fa9946dd2b7e474bfd53d1cff894fbf0d3b0f6ece349fe1a3c6cefbe954a5fd1fa0e1f7d85bb773ed26b386d763b11367bbd48328e7b0738f2f58af0f2eddb7e26c43f3f5fa66879d42acf06f204f470e7d9be53841ea83badbf0ca4befbd4fed950a834dabd4ee4d96c6be80fb67c40b84fc91a40fe758ebece429f0cf2ecd6a3b74c8feb895e83c613f8f9250d2f99f7392bf321307097f5abb7b00e8c96f7a4b6867d00fd8b39f9778ee2b2a34ffc08d539f2fa87761f7af78ce4fd43fc008d22968afb443c3f97fea8fc7084e1fff03e52f033d3953db8167b54f927ddb87a475b67145b2706c51f41bc1fc49cd0ba6f2ca977d627beff73f27f1c263eaa9ba6a0c665ae01f2df7f95a5114520a27604078c5af5aa03135a5e099dabb1d6fe9769d9bc434fc7259bc25b9e83443af8b254f473054b2781837b38324ce078352be6b30fa1270e7d5c41f609579f82326981b9f444c7cf4bd71e0d802317a5939118101639278842290b98ad8cf7fc53db0c8ac23d032fbe0b87ae3330f6ef20e1a4a1d9f3efc702af0fc25d627f5d65283d9151d2b490ffe571fa316a7a965be0273444a3b7906c224f34c5995abe6d1750bb04cf9cf84f7577dabaa7d10b5fa39a6bff3026cb83083740177098f762aa26fedfd6a6a30464549827ca283fc8fc5268f061bda5d7dc1196c260bd453cafd871a0c3e8310071670e735b670bca81fe70875242e5585c854d27b71015c27392d6c2a3f25f2629a21685bccd7a957ee96694f8cd3d3acb6782100ddb5d36f9fa3edaf2dd2c6f8ba6671b6a0f98b627c39d703285521237e0c433aaa9751e9c9b1931dffeb85440c9bbb07b7a97500b7e39128000183a9db974b23abc86b603a6156037445152b1e9c7d8666dd489556560b0deba667acbadbe8c62140c3a661e4d8c9479c1abf889f2faefcc0f68383f046273143a6143de7745a02eec26d9b813f4998ff20ecad1ea1ddf73ed4d06945eade3a916a1dd7e89feddb232c9e03ec92d1905c6a5225fe91cf8b80acdad48fc525a0c34d33d9576f5b0f86a937c22bf37eaf1d719ff974b2b88b4cd3c588dac2168633f4c23bf339058c89667c6586482bccec8749c13e7a6019853e9b9f28a14d50cd0013a99b25fae773d5cc682472832d556639faf5355a820b2b5fece349fa734d06821992040644d2be5848e04783905c81627659679eede049859fa71ed3c97ed9fe9327f58d3e0b81817777207abcfd0079598575bf6caead377b93600414cb6d8c49ef27c0dda5b204f18fc7b7a4f47fc96a5274e4a7f8cc380923c74b2113dd2875c50618fc0ddb98dd84cf82e9d35b552b87fb541491ab3d0a8c4680d56ab888e2494feb919e27046d80ecf5cd6ccf5b4223294b021a1742547ff1422663121938dc04cdc28ea928f61281c16840f42e7a957576e1fb08b1680d189f082c096e6138ef8637925341257af8d41cc97774510158e14871f3a107f2d25bec24607221355c2c66111dc1514d6156a689e43f742e8340689c0f6d264dbb9900046c97c97a4cc47d7fd121c9b967674d68f6ad728b4c4545fcd903317fd8f664380cb05aa05ac5274f3beebc297ab2e2ba52503449ea06561aaf3e574768b946fd435b5392c273fb74757b81c87fa0c9377c73e4722493acb8f910ecad25ff01747439484a9d541955143d553eafcc669026dc21d274946065e02f16e057790e8717aa61637564dee628a6909ca912fe854ff913a43819b69d5550115debd426ca39df2e09cea5e3ef8127e6a9b90fc8b3978af1b910c68943a5aa55309fe469b1a21adb37de6fb60c1aa976d32ed6e97240323caaea0cbc7aa01c883fef282e1c6f6c71a461b0b9146cfdf4080e943d090565f34802d9ffd00f781f67f88bd107b63734bc640a48c502c83abcb56dc803d3375e2c4fff8c1c1ad31d45d1cbbfcf3e2635bd4079218481f60459e0f502adecc7d03443dd7d0c817ea3887ee36ce5ba5b628e5cd98fb67e472be53bee460140febd26abe2f4e33f8d56d36dac498e6751e88833f2b31b7950dc8704c4c1750eb875bf52a2b10d6a13a0f970e8ee53eaf694419f97b8c670a7df6db1272cabb790d23e4eaf1b9f8604daac59150eef121707b98331671688824be08ace16b075e6e2bd8227c0dedc6323f9e7f0f046c6b178c79adf77069e7f497304e6997b28bc29299d437737c562666b4d413de46ec0f0c6542919297d840c75d92299bd556826441ce57d8a6c8e5f4574103cb77cbc7388fa5074ae2a46d630c6501179cf99bc66a738e31ee2369b518e40fb005470b59881345ec59c656741a5e8968b674cd2fce59ab63166a617a868564c4c94331e0ff880c9175fda6081169438436fa2edf473f433f3bfe1dac1fd5bded691d9c19aeb07d4f7a11f0618c8bb6b9b22e15b98b53522945d5371337a7685075cce0283e13894df04c670c4d9d04640fddf5992966d8af1350164120e056e689df189a849185b1409d2a399f42e34afec9b09462a44abd82a9abb2e6dbda0e508de9a3f72112d7e2be9c445dea77f0d67fb4c5b6b08b78ff35b43f184d906ac6d8261a21bab0e2d05753279778fb3a04e05dfaa69412a7975da7ce4891cb856d546513f32583eb2398d815f4f00a9af06166aa54d82bce8358bf2495ff1d0d78507493f46e58e2c921e08093c84547a8ce4a981c231cd24c2d4d29255ea752cf23c66d24355da842c2b508501d5e83d2cbfddc5e45563b4138106aa4b163d48d537311793edf8ca65bd729c4446fb1b4266def8d6a2e006f215d35a96312cd4b0088d859b12c07af57ed0a39dc1ccf19e8f15264262886ab908ed5207e3b181d45686d689aee34bc4beaf0acd38874f3023008f844614d3e5b5a42f5a292bf7d93be9490e0aeb0aa6dcff3ff661f49730255907500b9107244f426c3e3b4de309a6c6837394865ef944086c1f3dc29211ca928e1ff3ceb4433ef5219557b91f1351004e5ba704358328c401e19ab6b02d412d3c8a102291721d4ce9b6f165f16ff1931db1e1b9279fd3d359efeecfccaeaa9a871736fc572d26c87c06edaa48ad5a5b9fd82f846f9e4b080151fbb21123a55f7e838f148218a2b8e7654a3e4920b8dd4a5ac7c0c22b77fce8e5c6457a9f3238d51eb60cac005c5369a62f03dabd87789a9118bf5e4abce551fda14116db22060e43dafadc28264b13a114ec7745dd5def922ca96fae2adeb7ed1c1048e3e40b62bb1c56f78657f663fc60299b02a68b956438b598c8fb4ba22161942b3f4e76ac66e717c8d214941622475ac704597b4fe2bc34d424c54aa2897e43c161c9e4b0519e0baaa61ad14bb8645751ceb8d2c771588b4bab29cda0dd3d439d50f7d903af79f644d8db35cd376c4e7bfc79651501304eb3fb7890d9528f88a867a535b35fb33bf8416bf0fce1c307819c5c6893b0662e7046f8af0c3ed0f5ba1b7e4169466743ec7de0a453567d4154b8b7dd98ea15193f22838084cbd168d45a1ddd7fd61b87a59f3c722a2be45a84af9a67f433ce58e6b293305ed29a6595a68af717ca3ff6c56173fdf7243439c2979cc081ac5f83fe14c41226a81d71683d6b446be56e8cce0c90032b4aa98f3a72f9faeb4c0cab7d57aa2ac70b60c756099ab28273de4fd2d9b0abfc900f396fa6c5a963878f31d3c00a9ff266ce26d10e1196f3c5cfbecdf2de3409d4305a13b1de48f13f7eb162bc5dcdff13be351f7fd8b05b1cc9550f0686f3257757fb45d852920fdf7c3432846f1d7b97bd85c95accf2fe8c51db3902a8d33353006ea86ac4c540046e5963d47a318292e974716e0829c2813274c18e8daf7982a36a2f48a92cc34983ba711b61bc4ce0fcc645ae77cc85b17eb37f57287705645136830268b4800177e043cd9672e36e8a839311d9cc7d737ef1b9a856c6d188a8c9c0e839cc977200673cd6d683630f291ed8882c3797caded9a2b0c55dfd1542dc41fb0e5318921849a01fe68475c8857108fcd9038ec153ed0e131c74422ffe31ee131c90499b5ae8b3c2aa97b2d8928fc2958583c0b1d998e3e311a9ff3e493f888a799781df643973cc038c8ff51315957d91211e8093b22049dd94c3d38550a0da243dc674d915378f8aafa01bf084fe3e6e7ffd8a100798fd4289eee27959b137ac8b18bc6acc4b7c86bdfe4fdfea2729848d95fa384dbb343db89808656e9ff4c3db443d4261fcbf461365570025c096011d4dd4e35c36422c00373b21046e80d1c84657ba06f84f2d2bfe78ab4f2516c4b71f73303651cc244fa4d8f9f70f808d719aa5218a11d1a4cf213b5d8fc150168b6a09c456b39f15bef505739206dd9525901043a2c2ed10fe4317c626f8eecc4ceada15b70f678f990c7ea241b9be3667170111f7eb1a02326458f3d017ac82fe0e5cf693c422f6acc052a18eee3eded41ca2e193ac003904fef7446141810c77438d90278da7425a6a62c4fc1516a04962952472839671fabac114e80dcb9adeb4bce7c77d2fa0e7a4d7f1e8b844c9978a5213b6434206b4e0c7411263066b864397b79ee8cd96471800462da3cce27a9c97e25cdc235529d812bd7bca8b4c0ad7d6df2619c4cea7e18a78ba8468c61463b9419f49f80f18b6c38b189dfab7ea49775e430f112bc8712e393659f7d71c69eba1e01203821c5a9021b5888abaa627519758280263430f8466a093e2783c3d7c59ae8c5b4b1f933177246a19005e049897b620cfc3e205057dece084331bb5ba8b68effaf202482cdd1288f5c41984414b1b66ed725790241d13f35923b24caee9adc388f731d471010780319d81640ebaffc95e8e8532285f8447ab47ffb618d8f29cf28c870f0e265ba813db490e473f530f628f03a00bcb0dc13eaf577109c6a5fd039116d79aa54b30af8999afb5f21b5d4732dfa56f59cd7d26939c3a0d7726aed726624cacc651f1bddfa60c05c58e27a7b4d46ed58bc4d9e7028cb017af773645ef6eaac0fd657655c0b6a17f4394630832feb89594fdaad8660537a65fddd35285c87bfec0effeccbed9f71fe7bf87ac96def8d42312206e6a007fc8b5177260b660049f31b06a03550e6f9667034666903ef0678407e01fc5f54ad4e08c88346994fd131bec70b47725f4a000fec1cc6f1a44125cebed969210603f03cd82034424480f4b5ca91ed1dc4d6983e14d4bfa7208cd5d367a4bd37d090af982a4bcd1c09e1305703bb2841ea178c06843dcf8f0c21d6ef7121c859750b8127828e1bf921d8c2b306f1e4fe629972c4f47e23be68aa3fd934fd9ad3836766bc784c41c11f302fc49f64a6280b1dc875ceaed1b049797202840be2d32791e01724f6c653e28d04dddfe4f8d116c741252c32be3b17c81926721ed32a15670d1bfa877289ebd8fdc8103c7b988b5e1ace82d523ff783a50a38b12fee72d707b5c3d63e02ac45279a2ceac5035eab907acdcfd702343e995a3c92461db25fa2112006e7190bca416cac8556b1a4e741e31584407a2eb398261800e4c96ab30f5cdf4093cc0f334f6386b12c214b68fe155eef9d3b45e1854decc7411b9ac6020f68b08355d454c3183de1c02977906ac806ae9a143e7a63476bbe7c87c976dee67420323fb2932b9db731f61c8048957da3f712076f9f79886055a7e1975130f23b923275536427ae37b3dc6e0b1225ff374cab71b9cf4177350e997d16c0db5af55767040ee53a87c9495ae8ba8e3ac4fd65b5c979209e69539d49ab9c806261cbda9bbbdfd5a32b00c16d8137f46e9e97a6954fa2c1b77245aa57f605ade1562b950377789f0c0ee6d58023b18cc54bc177b47f792e7a9006e156f6708ad8edc2c4c15f3dccd0a95b00f7a618aa1e9143c4779543a63d833ca7cdf1b95230d9222d4fc1b8e17eb6fa1d1ba32d0ac03c9cc9900ac720974818a8500a3c01ca0a74d079c565c6a612acd510e2e09172c7bc8b1509c47f90a00c98d5bde120fd0b4d484998e76fc2aebc5498dded25b13064e510ea9264ce2bbd707c704397c14f38c3f5fb3a0e3c828f7d6fea96f9e1884236abc00b5d262ce4e10e703b6b479166ba818d1d83cf22b76bd37edc166bdd7b9411e57a1ac898b5d94c0b3d0e8f626dc85a2b061042ac3243202d7940036d8015ee78b866e927e65234b1ae39acec5ff27891ae5eba2587ab6895bfe31ab67a4c02344d29da71e4d462678c5ad8bcedc1a29934831e7b59e994a0f98ffda626ec93a0b8080d5a1cef1049ad1c8adf4a112a1ae99e384ce3f29e909021445e323a799b5e63cd302bb6d943308b47e01857f7c0881314a3c4687299212a65ea38d03a47115468fd8aa46f141b97de3eeace2d742e28601bd2ed6d3bb4ddca9043d0b9c0a6ca48cd35f30895487a3bbb40e96ebd0feb40e1e6acca5063666d13bd1abc7a3036e0b00f503a742a0fea2f2d0594d563cb7b8dc4be0180b7d777cbbbea19e970f0a1246babed474e2ef24c461e1bd3e17b774b15517bdacace97ce46cda5f8f48553470f44f55212d6576da2234e845ac24372e4d437087a2cd87b778af1021f2c194fd7296f2cb2b339920d4ca23d6c698292c4b4d02129c878e0f5043cd77769a16abce247ddd3230429b69654d714b4fb3fd139f353c952aab71075f2fe0d2350e03adcb2cf66f754952d3d3e34601c5b406625be1883a08d28f01ea1bb8a0d87af37dcceb75419d5e0fb70bf4d2abbb9bc4aeab779df1ee15668ca0f8809d9d08a43a11ece71ac24f9bb622cbeb5feee3218d4417f4c1907c893c4650aaa7d567ff3469f1e8a477f6132d1891e38ddb28e83dae9120a0cd3c8ef8867c76426d147719b81d6d289f9e5dfcef29e4a07f6749fe6317ae5a0e827be2fb66ca5dd7c89a64c11d8fe21dc0d2000abc33f9a1e1f628ca12d16ea162decfa4b02e4aac9377445fca8b36e3878c197ac0aaddf70c2078ec196cef86ba880ab077063735437075c939d07e5f0cb677879a7b1dc615fa631042b489a87b2d52103dca958316c880697a49ce763ae0380374b0159fff722794772c7c58107a96f34446ca2414dce9ed02eb759c3d017df3fbf8d296ba14b05d062b9f852a1ff2eec7d8cac5e0d1f4a8678b79d60841269c678deb418a5180e68cfd615c915045057ad514d06f650461868e52bbe3e2aa4c67434f08ade7726f9bdc30c6e073f67b7bf2c0b1422fbc2ad0a38ba89f940344f6bafca6e40395dd09307ccd800ec7543c42f67ac74da86a1ea5f13656f1de524f374d9dd27895bea67bd30f6dc705b9167d1d6286f216cf88e17cff93ff6a57e95337aa41face3a0059d80b9588831a439346626fea81a6f17258d1356811973c499cad4a10b2f362d59518974ce31436d0af86209b40d9f75aded6b19b50ca9531b039d20daddb070c73eaaaaf9c78361b6cac2926fa827fcd3c2e74b2bf2198715e1ea8f5306a0f4f6192a3627c283896e860283c900ba1e0f0c31529290ebb640d4bd3eb033d4a88119ef230a470f94e9067cbf024f4127f9086369be5ef9db74592a3447d067e59f35f0d49352e9c2674e138f9a4900993fe996779d71f5e2081e941214fdd4a6ca91b987e4769d612514d69a2ef92ad6c0df54729be2cda232d1cedebd3d820b2544b3de0635c64903f2b83d9bfab4b7fa785293d40037b6589f88242de87c3f305830994f09b7d192cd5249f963e4115cae0963b52b39823aa10e98ab5aac73a07d013433249de024bd4a4503d1f34aef6a0442d53ac5e6a26e1ca62c9a8dbd25ff8a45aa0d19fc02752f62116b5b72ccbbd9cbcd8069f5451a62b6699c242e57300176ba716262b985b5806ca4ab4ddea4d8d8f1a5f1e2941d119dd40e3c1aac98643767cd9f6b7af5c27167cbb6d94d39a48095a7f5c0f16223ca835d9e68567f0c4836c31585bf5601c98c7964822d99da8b6cef878b9684a33f1ec585cdf8818faab24e825f7177ae85451fbba0fcb2d8a45396b03422f7daa678928ec3329c50ef49621be1296bcb2c6d9c2794b0b9c71d3643b2b31b766666bdc1a5be9b1b68277d4e26fa7bae797aa2db4c31c8a864fbe91013af7e52eda741d661a12f8ab873583ceed75b6da3092e02f935eee04c40748938267be08845757ddfd8b7bc42941205e0a43119b63a83c5c421ab536427144ed31acddbb5af7e32b6ae98a160483f6e4ccbbfd046fb7cbc938ac7340e00870e58c8e4c982990abac5264f24ccd7a0a0587154a884c8aafe91d3935309afd84a72dd3b1a48fc77774ea4df4b8ec9086fbafd5617d255d6545fa737557c6ee6234ef5c365dba4bdc693144cf709660722ec218f79f6045436c01fc04c1dad910dbbd004302fdb673895a01c90297879ba8801dab6f4c5b9d5f62ecaa35319a94b5c2bb1d6475d21e765e2c42476b505f3b4a6c28ec6d38754c9734f6645f3b3f821c5f868719a74f2b083c9194272cecdef655af304198b2b62492cf80870c0a16a98d44daeeead24f52713d402aac27e75d7db683763450634a770e5a94eb32940ee8641430481d4a92a049e31dd037b12e5bf385062a2eee15f30593b208f82a56b32c89434612f87cf9b984a99d3686f986b32a3b9619df84a8c9ec596b11cf8b4013cd08575aa7d945737593bc3a0fafb96fe0364181319f6b8c6ea9d6771387c378830c22e4468b7bc0f3af34f4c00c6ba5e8de6ca1fa66c3dc3b1204c3f571681a94fbf24289e050dbe707692eb58a7a59466016241b1e8a1a8efd8a5e4676070fda23fe5800433510cc692e0416051f2373d9c5c69134be5893e30c855dc79ba775bf64196c4f373dd559c8aef5b3f03b076452ebeaf64956da5f57c72b2cc9c5d3af2a5e1d2ace0b6da4e4b73cbb71c4b0c5d37e77444a70d7a7edb0963bdc2c8f4fa62b71b23bdc612248303401376fc9e61ecc429c5ae495ea0a4822134fa2aad00681c992802e6e8a2c7b293075f137e63bbb798e672408125dd976995137592bb5718530e18fc96d464521a12c60c5d8c7cc082ddb48bb80f9b9786ffab9844444c2df07792a8e5a98dea659a85b6d59b45648033981d5ff2572435a4bfd4b48a23a2b2ada22c18ea50e50fc72909c834fc715182af3f81a9717a2cfd0d2c7b95d93b4b145059c39b063b3e4e2260cec4165bc121ec62d1b25e57201ce8e391815baecfc6bdb9a562db063b8c741016364303a591b44fd9da4565d4e4dd9761f00f8a403df39afe0f6a7feb9215a401c121b7150be92ee00e49b8caa9e31281bf064f93da327e56d88acdb8d93cb2fb5c07bba3e9d2cc5fa682cf672d05ef550c70a0ca403eb2bb00504ad99efdc0edb37a394573182277ec5d6b86d50dfd6e2aa44b2c6c3566ad67be443c6d1af4823bfc0194c54392e60fbda1ef5665f9da6aec8dd5b08e4ba77cf36e33ac73abc6d8b651669658d78be1d2f863816ea21d4e92682dba41f31ce8a1e5001af31543c4403e9b334c35dee967e7c23c83135e0acf5d54a22329c312d6985457d1cbaeda1511cf502a819035bfd92b87046072110d074e1a3b26efa0fc19674899a0cc74472f8293079e07df8fa2865abd2a39866864bbc23e9149af1dbecdf962a8b5b7c929dda512f74e739e83c8429b51851e30ccc214ffba70eefcd6fb5380bbfb353be924bfe8ec2a1492a614c24e30168943dc0a596d2ee3a44f57ac84e2bb947f3c1386b83802386c0764a13eac4c9d24c322ed1ef1d4ce7c99819a787de51673d95d6fd4d2c899e2af36c329a14cb23d66bf154c840b41b00f98f90b5370f949c383ff1687522c91f2b06287f469dcab0d4f69e1032b38b59ec34318c25d518085e9d94174830457ed83a9a3ae1309c1c77e246218e9a09e3e0f43c35613c5e9a6795c3bf370d00b669034af24003cf76c65babd8005155ac67ef16316fad623dd90d32c9915c2dac9d22f6704d729e8530ed154a5a9d2789d1d323a1ec626515818c385ce35e23cbe191c6797b0436d941bfc88d8d03fec2b80a9de7e86a433c3430094d21a356938e469aadd0bc797dca67f4a95c37040f4a7b30ad082d4997aea830c6693c78aedb75237eaa578a01795429e170d05d3b21378fa7b14908e66815273af833375f7b69132a1b01241e21d038e4cb5d6bf81de7da45f74489118e7d3efba137be5113f3d7d85f156f1bd56fb8e7cdd9bd396088c93cd84d04a31d5c78c52b317aeccfa93acf787e3e989736527f81cd20a34a86ae08f2aa97a65f0fc305e43ab8707ccd25db8123984920fb856c04250829c68a3879dc7441878c282b75a5772b8311cf26fb341ff1f199c990db0b43cc87ac77f7c6f898d76ec008e7120a7dbca5aa7b5ae5f8a00804994d45da3f04a6b8aa9e1451554f1f90ad32e3ec9f47e51db2cf006a3ab54782ebbf24bce3e39f660a79aded91213d7c991d71f8dc931b7e5933bef65ac3e0041c467528ec0e5b73bec0f9f1df1b36773e044c24f1e2ccad8f2c52449984ab70af0ae4eb9eb0254bb724fcc51711e1e0a3f129de77d01a03f91581e519b4fa510835a818ae22267a0a60b57c9f2b88c1325a5b7d92a9fd82e214928b393b052fcf0ce442220cf0bf82a473eff7f5a6686f3560e7d360bb157646083bc7abcc4966599425e8e0db43c553dffeb9a9d7dd16f6441e85f19d3d3dc934b3602e41f87fe01c5b4477af660aca3801b1928e6b0eb8985948811b44afe3c017927621f163462b62357aca4a1fe83d046fd182c12d99416d951803f516095e017e32653fd5529ae4c50f00c39c83b75acc1014aa510f32efd016493889c7cd75657fa2e8a179ba78c3ca2fc80786213865d551d702df5cb83b9d40ec6fcf389b26af21a9285ab378946e2ac5b27de93fa4e3d91142386624d0f2fb7d601c5145c12853f37279d8396c9fa613d5874cce783fc89d0e0d3f506f021a5085dcde7e5f18a99c48da24657cd4b44debf0512847ae7cce88a883c94decf7642a84df8b0ab5f8da6108e390fc28466a28eb2f89eb65901b8c58d8d445b1be18858d1439cc53f9d3b6e02129412b8682c9427e5133da2838b5c9dc307840a0550881500c652fabf7a24f199b7a169ea2d2b6e65e80ed102903c7f25edb94246033a4744cb058924dd1c12428ccb96e371e69b5f2d33252714583ba8a76a2f43936c3bdabde901c5d2fda9b5e59ef02117c9c846b620e1f631f360fb11842b3da9be45d5965c1d734a1fd67eebba9dc9a4a5cc7a4bd0ea17811025177f7066e969a50ce15bea92e626e07da5c12eef91957fc21b7253f9a13b2e463e555bbe78ac308c831ea7b40023e8aa6014a5864a7571c0fbf44e5d06e6a90570d0660c56df59fec9055c452786823041704abac2979f09919c50d1513bb3717094c710d702de1df64b33678b6df0845793b126c54776f066d13017becd4892e4fe830b36ff3c6a998849dba2740686b3772006201e0ddb002ec326944f088a38ebe08fc048f12ac00d319f3a4c7138d9405caaf9e36f1e80fa882509c6450860c4d420081c98fb00fb0214deaf2608ed0585d60921253282b8d68389136c2e4c53c31f460060521f06b5188c6de68d174ddb93092692afbc7bdebd6943d740f11540b33048220e07bd7c68314f46eba023da98937365859d1194b211f744bbd05d6228cd9316bf7fb204b90e4b826e69ad49018190a114c6484a7fa84c782419b9fa514429b47bf6112fb4e7e8b50e6a0b6184c3e8248055bdf933ed5802f8f2f10a094b3659607227e97eaed61a43188e43046cb5bc1e191229c82ad1db8eaf425dbca1e129f001fe3818ab8ef88f700aee64fbd49accaa188225cc76485f8a17f88f81c966a5fc5e44f8ab355acbd32ad0a54647443ac4dca9a6144fa2d16fd8faa9f519ab8b0a4f78c6a1c5ef824118de173bd806594b2188d610a029e63ea2ac0216692e6befe5cad1ed6799e6f319b038917ef0693929dbc3912411fac6b7a7f61a3269551244736c5fbe31520f8bcad70456ac89dffe6dc4664bfd92a167f6c5092023e30ea66d85cd1c605dc7956f3967912250ce8bec6fbcc5babc72dc29ba90283a7723fd76468622cd66b0bca5f2fb7193d14924883028e95b4f539c9acf7b11679cec22e4712c155b3eda1594eae064d08c3946075fbad39917b9ba32ca6f253fe2a51e7fd121d68bea23b83c5c89a29368a2282d8eb4203f3de504b0a7b1daa67adcc80c05641cbb360ff855891598d4043d79596bbff763fcf6f5e678744a06e3c1388041e5f33cda477fba281cfaabb860ad59f90e6f4edaced3b03d7dd1c75b551abfc317410d1dead86eee8a25d30a770e8d08830ad84041450ea3b6261cdd209f949d77749e5830eae6147c7f9884f4d6bd8380248ea662d0c13c85ee17c6cdf06ab66cb9ec624ba054bbce9830906ae34065e4cf53dee35bac835d1cb1867d48511607e9d9d150ed502499431552bccf6db3b9810403a6a80e5a1356c9ddb0b6ea758b04fad443fa087eda05da5d7441bfa7ad6944778a94bce7eb0ac7f4a83f53645457525b7ffb62fe3fa37c70fc19f21d3eb012d696385ba67131116e22ecccd668da47029c2253297c1efaeb5850911f899cc095b2daeab513244c289c375b8ed960f360ede00b811d64b66b94b6dfd0393950f1203a098f3e91e4f8d5752c4b9db5998e773a1b63f84aa1bc3a9c555c2f0736835a7dd4a13eeb0827fc4ce7396d8eadfc63a2a4b1a19dcb27f93d4c494511e9b37b8fadbd26dd06ce53a1fd62f566370b95249f8fc853fd9a3a803db6fb3c694cf0cbdf6484852fe79868a7152a2d104dc81b263bd37f0a515baf9ac34f6faa343c561759b71db5b950da7f45c1c18e61bc92cfd1084630d1d9ac28c5166bdfd33bd805e9d17c0e420881355f2ef17de81948297ccc4a5271ef94b4110c23dca4022c4b555d66a12f36b3a4ba7f33b0356102ef7b8565792549f2fc64df9025ba9c416c2b2309b41846eb65064397b7825948a0c2c56c392a1db86c1c907f07f378c8504cc1142ee28ea6ed49012327ee1461dc0d92a4178b0828f38372efff270f12604f895b05ae9e37befc44c1d47f1cd9a01328f091ccb858c09c0c771323b521175b33870eba16bd4b992ba7e3944f1fd5d8319a388c3dd6901b37cc198473dde5aacc18fa5c016df313d0d95c03e7c190c0dc4ff76f418586164cb110958c8d568b1a047cac68eba0ad7235ef26a7f72111c0216f83e2f59fe3a0cd10a75c265a981b0b3c405f012c314e65eabf9ac5b452e4a62b2b06715cb53e658c0e377ad3067b675979dcc0a9f9c0c3bbb4af3af6da29f0610c43c9aad54c32cec037dc9c5fd0ae5ae8c34a0d8f15052f223875f975d263c489ad1e81979300e3250267117f9be29dcb36819b20fad28802e0c81bd332f59c861ae33de5f47efb550bcfa950dc83860d0e4a2f9d70e90778b9fe26f673c0761451775b448d9fa174f87545b7a69d1c14a2ffcd8fd42b56096247d0987671a0d1f2c232034a4195939ef4a7c344a46866f22de82dd1744d6b6582af224da5c29290896c24eb33951db6966fa66b31d8cc5f9c30246d6fe8d99ca54197866ff5d3499ae87367eb0bf8094b3906cae7213cb1fd65022beb5d801e49cc0477a7efd709cb075474d74e50018a94412c80182b77a241e9c8a88e8b9ba7aa15955a0074811940f4d57a8e5d4a16e6648968703c0fd9dc02167cec625935d6a15f2292f61b76f2acf7357e580974d4728b50c99433ef108eec9bd6a09b47a8f364627b6c6fede1c3842ce800853dcaeee928ae8e2794264881a7011919085bdcc3f26d12341c62498c42b457add01defc3002a21650853cc8a4aa53106f954c8c9ebeff4135eacc6de0c09792ef70fd7aa0256383733736c5b8338baced430f1cac63926f11a7ef663162c723a2d0a02b7dfe06a4233676b917422c0a381ebd369eee7d505c454b6e832e5cc0c6ddd70c81a3ef3fb4ce375d0464be45b67123f2577fa44f10d945eda0f4877313f275f42d16ca586fdcebb7b669322e09b6e5a2105aee315ba9fa17bef67a541494de709f86a03437696c7e639e75bea93512c5074f44c9f72719eafb550d4444887e4cbda44ed0e92fb06735bee941eff7038a8bbce7041a129d6e4f97c62e4f970f1b1c7439889ff11756e99db0433a3dc1a6b6ced8c731fc95130f0853cf73f4fb9b710a539fc69aa6b9e3377c8b670a4d12baf276d7bbb52e8a3b539fa2de15019006f7632ea84c104f19aba7517d6835fa45f9b99bd24aeead818669981c2bab20c1b4ff6bd0ba3601d15e0ae1fae27b757d792b1ae4def8f4b430fa89bc38c898c187abbc0aad1650b66c88a28362a96bc0188bfa885ac302aa18282c3fe542540801b19f789acb46c409584385b90fd48ed18f22f4e41040b689331de883ffc218d79d463fb6de60579ff8d07206cdc3f91e0c5789bfcc8eb04806b76d23c5a7adbfb841ac51155ecb305bbbbd7c4df903916004c5fc8f4232e299eb04609a0210b7519a6bd5b1bcffff6eafb9f2a7cbada0260a6c01c1f0cfa5d8a6103c00b9287848018a8a226286e68b4a96cc04f07129336d29f4bfa5f42d55db5708f2ae2ce37a863a63b2f1389cc0c36a07490064c17881d56316f6ea7ad6e9f51215aad80d6c091948434aec7c4f0399c107615c288bf13c336c8be0cf76c6ade0090740c1c9c505806ded1b8103e896d6673cd1bb318b860a98e627c07087fa85d5b1c8afa92783996d69cdbbf53e57d18adb8540f58fdec33ea8946f17a97cf31a64deeae30f361bb96c1a91c5b51f1b38201826079180ebf9e3d2a05f3177f7d0288aad528ccc5667ea5a0eeb2cd020475cc663030e2fb7cd232cc3ffa2a54143ded946f7442f2a4e38baae643b93d642d5d9af65058a37ec328b877ae4301033caab166268f4a9c25a060d97cc46c167c94e8f23eee416ffc907755e6b5d03d2e6f3128345a47f02e828757f2e5d9d960b5b786146c91405b22d4151f74917ee46ba97fcb316c11ef9de9af215290db682a5acfe31aec7c91ec176f28a5dd1a15f57671045e590561f07852c8f341cf7ccc3f934e6fbca95b977bdd7619fc10564e10e996487fc77a182d9c06371aa3b61e7043ff4639ba5523dc32b5662d0f4860f7c0305c70ca1ee1aa083f20b4f6fdf44908e90ccfe1f5e69df1fcdf6d6a4e56eb55a2d2813c1ac9f9de9ba26633d7f8b1e03d5f8a225d5e944a82001dd1fa814754e4ac7bd355f573cd51f7aca73565de3a503d22f38363b1a20c9d0a0f2b28c8d7a8efe4e5c031a2f4f6e641bcd95eb91b92362bc32944bd01d604ad4c4980b2792002c2d373ace10cb34ce0c4dd5a4c496ee8a576aad0a3e33d3f4a6c80bcec22d759855845ff0967d34c2d46629c37aaa8e46a56b156070f2f95c3ce135dd5c28529592cb56719a571614bebbe5dc8a910515754d1841434598592576008aa453d9af2ca636dfdacf073d78f83f7e81a1e90d3faa73566dcdab8fdb2deac5443dc19d19c2d52f809ce1872c120acd5d21b6dc94709b2a1377a67ff366eb8dae7146397da9825e7f0480c8ee622141a23149932561b27e9e2f4cf45c6367d1f4c46f092408f5a345eb219e89e3bf8e952f4c94e7ed2c7a3c9d27c2ec1f7b8d34eac367e750050db417e8f69f44ca21fd092646febf158ffe4917a188aec3bfe979741a196bc09cfb86e365f54bced26524309563d916d2e062d0d06b518e8973abd644b37d41c1d7c236af6f7ded219f483dc192e7311a05fe779fa72f94cbf8588b3c9a01ea234cc6123814758248f10231804c40f3782f11ea0593e2e61a3f129ccd0cd8628ff8e01bc6cab7befc1f1bad056b5de4c9471c678d5652f54e0d8fa00ac4bf6421d154515d7de83fb62a800c96800dd50df4d6389800113f5006618c9f69a99b46acedaaa6860cdd9e45245fe730041de72acd8614fbbb21ef02dad2d8bb67d75bf2f548eb51b9122f892afd3fa0efa59004d1654b7735aadb4f80d0b9f07b721b00a276f0d7aef39339fe8bd179131aaeb727dfc11d58c9ff50b9c7dd804e5f91cc668e6004c1c2e52a1f237f9074d4924fba2630cab1bd4a28193b257db6b40652a8f4ef8a0cb422a6b3b193d5a820d319deb6dc7c464fc67f8c36a6d919d3944276ed0ee7db925feb73454cd4ff510399fba8c05c6a8d81f7a1581c01e57d9768a745e020c842076be6bae82901c887014a2678031f1679c6872113f9ec5c0ae1761913725c6847473da15ce4505cac3a75dbffdc2bbcc403c1a3ec7dea843bd602469b6796ac0e47a3a8beac4448caeeb72cbe3dafd45603ce40cf0b58d0ddc561c382f0ca6e4cba694f4cfc0e6e7cdef4f075df2f317d888150625a5fe7b0553b504f87cf73de9dd1b63b39d219d8c8c8f78aefcee33c325f238613ad8927277c73459db85fcf41bbe9241bc114235712fec3625c3cfc6807b82f1894a83ae3dba5a50aa725933f8c921b10a47567790da308a009af25500d00cdc7d454cb78353e4ef0dca06a6f9e7e98dff4d68a715e84ca5ffa9d8c88bd916a5774bdc1cd7de83c426d672f638388f2166ba93e5d4baf3368c2af34b2e487c46141b7c30300cd7bc647140db723b354293a5600ad2b91effe2f4dccb2e61e6a4c7fb51c7011520a0958608ed332099f6422052063e30bec64976a0f62da0af1608b36897c1b6ee5d8feffbb504ebde8830e51fdd145abae55d14f0e365659c573bdd5103072da5522b1b135b3ba9780314c75dcbf12824d57c2451e33964470f6823fe242f7deb865751f71bfbdaf4ed53bdc844c2f101bfa3d86c721a7669657143ef3592f4921799979eb09d0e1995c32b010447641af4ce29fc4f455ad1e76a29cd608f270e856a83c9a99db8ac6ff578eba0d938ac3e1a5681d8d7d49174dc67a04883369d54568bb21ce42c3d4bff14938cc770dc63ce36255a8ba5fd1b68222feed551741788a95185532cc861061dc42aba0bf6a1c6a78c9e50ba7636d0c2a7bc2e20b5864959fdbf6ff4e1c056343e51b77da731cbaba5762e3f6cafe54b7c5eec7fdd2defd95829851e15adfabb77d904a17c893af1793d6af7e58e204e85f48156bec29ec5ecd04de7a4bea7f7f11381a196567caec15640227676f753b91f03eb413d17c0204eeb72658599abb66181ceba2627053090c61021b274c00d50a06afb92e69302660ba6619df8c66a8151a690fdd0b3e14d4f43ad5740570d905d866452ae6c4d4d5e3621719cb9cf7c2d6a56a9b763ba598ee8cc18db0ebd03a4b1d9b9966fd4d80b91e0d437f2e812ae266f57a54634368fd58069ad5f4e3fb3379952797fc9b210e31698fc16601fdf6e0a32057c6f5dffa6e8507155815fa8ceeda2eabeea0cd20c17de436158a87bf681c457ce70e48575cef776703f57677b03c8cd669dae454f94ed1a99ae9649db2ca6f8a2bf94f245e9f2c022db61b0b42fe0a77e99f1925e5fbe83e651951f2475b3b9c2d2aef097c42f8ff8e691be4b753a1ffccea4790d9fd8d742f21706c7b7e0af1bb45bdd2ae704b37337946be2341f698d2c7a44d0dddc00381b44a7e76bad673a6fe6f7345f4246f94083ae0c14af3cc11bf4fa51917c461752c72d4dc163c795b4198ebc5c6ec06b0f76ebda0998ca57bb6951dd9e83eb3b470ee2cb8e5dd51ffe78d4cf1d4510ed5bf10b71a1f58a77747c908bab6d063917d08d29a58edc237579ef47eff4988ce696556bd7462908f8df67d6d05aada7a68685b90885028a987b58cf7fb29bd1753fef9ef8461232a332d72c3e9931af4f3414a76dfc1495bd61356603f8239509891f700a6c801727c34e5735ca3626ddbfce490f9633d220efe22600805b0a6313dfec0f3d2d94688dc89293a85c0f4abff80d212576cc53676db22d18686b5099c49331ebdc7dffcf7f098200337c1442c7f28fd15f43590f1cdc9be55456bdbc07d73c1e170c230b4a71c3463eeed0728a765c36e8d6913c15140b7ace5b21290dba2ddcbdc6b7abf43672618c3b9dc3a7657aff6793094873d491d17c6b695232528fcfe313feafca750af8acd65960fb8f3cadcdc18c3558f5079dd61b8a9430aba235489e72b15a98ef112e105811b5b188ac9d4921c03eeb27e2b48b2e2773c973a0ecc9b5d57d4cb9395fb381915265366956f6028e03e93da4d339fe1fede9555526b95431cc78900f4bf5fe5ed50fa9a0932b5af1414bb74d1232e1e5a8ffe36e163914de2f41c1e1dfae2777bdca9e184ed681ddf7632850e40c72442ecea639944c416202195f1a9137fa5cc4ad561e660c43061dd77b8edf0de1d3aae2a5eb81f77234c8da132f3e0bd0795e3c27df5d2207ea897b02f658aac1afee9908cfd1b357726ce1631163982b9ff9800a4c5ade4a238318dea3f3ae1ed70b8bb7534058dca8370e930661c6a0d19840635de58ea7363756fda7671d7f37de993487c2204f6591c59c40cd5f64203b622d9cf225d842fad11e69dcc8881ffd40e7f92b070712f532fcfa1092aeffcc8e12ccad9d1a95a811a139c37c7891254ccec75045aced86a5ceeb9b92358b77eecf687b32c242166a86ee4526c20f49158c3f0e1603e5607802c1afcca40cce35cba2039f6832edd0c9f5cc22d9e0e0ee1f52657dd909704e450b58ceb84b1fb024c9e4b2c4d497075c1271404250bfb46b117059ded8d63aa6a8a2c99eb537c42fe1375a5b5ff8ff1c0345d1aa94c18829552137fa4f8c41815450c48b8bb85ee22beac01cba0c1be74a1f23b33aae23555d98732d29a17dade49ddc0a216231ef39fb17a092563a69f03d33db11c640bd3d86a00f3309ee87bc718bd8298a6aa423f5b95522ee749daedcdc34d3d5ae56b6de231a568461494c055531234f13ebf442d7f8c79fd8ca897a9b063e2904d92658569ffdd906c659283b7ccaea57e22cb54107c212b7c705d648e5aafd8008db3e389cb0e601bc25bcbbd095aed22e6faea969c6e3128b9a6c7782e1896ed67bb0b43017f93d69a08066d4ff77f4d97c3866b7c416d846177b8248818b298cc48bf781d3f9c6457e1345bae62cd0c9ea850e4d796391a6f3d6ac584848dbf854cced409f4a6d4e1e1079b68d5cbb40bef16ab70e0d0c01d8ca80afaca388b9a2d75cb6880bf3322de1bb473dfa970bedbf2b68891f5cbf2aec685ff90d77b1323b77342fbc4d2e026a9f0cdeac29127065208a8bd15be35c048c305f2c4804a406939a966269bd8a6271a4eefa2ebeb19995003f22c131548f0426cc9fa669e470783996acd4cac5b1dc72e0742d8065432eeddc6d5df833e21b28922886e3f312977e0f757bded2a814000e1b703c34dfb31fc845beaa51f6dfc67313ec39064cf6087a93c0cd960fd4a8da1c0860fa4aca399e5cd6ad3901e8feb9c51b708bbc7cbb706f29f666a45c8dfdc382464cdf898c1ccf9027f0b497916f3302157e0eb7d90c95183531818ee0044ff93165f106ce6ed6bb6528cafcbc0fb8e08164e6f0f128e2267d3f3cd2edb336d3ce4929e5dc08c0426ce40f7d52986162117271266efdba4f0a81b480dfcaef92500569875f6709a015320d50902e7ad8b56e520cb4741803e760e268fdace9cfde91ac4f6f4f43201bd94ddc3398328c27a41f6f376bfcfd34d800caa5c1c7fae47cb4807fad7cb7e50a4e247cdf641973c006c4c2615170cbd388c0da659a3cf0e179503552279d8cc64d172eb7310ac05829f5aa63db9a3b723bd3f16cdd6ed701a6d3eea6ac72b8ee2a1cc4890b048e099abdda114b67f05ab8263fc6b04fd447ad74b832f01a9ec500f2dbe523f25e594156788bcce8dbca7cc03df3cdb84cebf113e3eabdce4db2a18c5992a1d9842a77ed6a6a8c822bcfe8e22cc858b10c7d26fa0db278ef0850841971a06176cad2be66d744ec5f7c8f644c049608b433155011efeddf5ec8b5b7078bb94fcb146b1ea0a9440f479a8b3bbc3e7ee0fd93da8c713f5ef38bbf2128f146a5bbc3f2e026146a0346f6bd63905e8c71461ce06bac4836cc1af63905127e8819320e470f46f87df300e2db89e6d5d46de4fc5ad6b1629b8b6fa50b678fc239e1a8c726c785daa6fd6653833bbf323840894d58032435fa717db00f388b7c9d741d3ce334137362ad74f51be7fc28afbd1dadde0b58f1e2ca8b123e98b17016d5b7f6d75c2aae10bcb3bee5f13fbfc40fb03b42e1c12e25a3e144b4342ae6b55d5ff658e410c591054edcbbdf579db07c5c1afd6bba916bcb673276b13f884364d46e7ec76d9b82d944d3901140574ad83886166e1df2e9c0fd7baa98668ee80b27f9fd1ec71dc7f31c1d61f3640dcf8ff320f222c5b77286ea1cdc41faacb1183aa998b0cbd9fdf4919b5bf0aa8ff9dd56af6eb0dbaad6f3774caf4c0f5daa567afdb578bb79ed03dc83d3e034cbf60d652dcd026893b95643eccfbdc08e6439360c22ec27f761f679c2b56005b3530a1484354c582b10edc01011a92068477d56a43002188a1b233dc28fc5ee6395d3d91bf8243adec7e86ba71eaf3dec8e334e8f2db91ba47ad3f86924bf9f2fb8af20ab2e1fbf192a26de8ceccbcb1fa429fa430292af373649ebea3ebbbe367ceaa446eeb445b71b774afd011cf2c23a1f688b99ed674737a1088fcc54f9b7e77172b0a760fff7b58978677a2c0370c42706600695d0c3be8db024edeef4b685f9c8c0f4d2740d1f685193b5a591d90b7fea59c0c9e415a34ce29cbc0dfcbe982ce16b19a0cfef48ca1e758f06be3990e02eb378727861702378fe34d499356d8ede7ab17a7086e79380e020b632efed0a0386f899664f7c52de88856cf34934c660a10d1ac316cc5275d208042ca9351b3d3c0e2c86e1075a40c005f4cf227283804cdb5f988a75f1b974a29f2d9abcdc242f57306b14a0abe079a50b3c082bc43f541e8205366f5515c5cef34bc712e0656da80ba85d2f5dac696c5d30d02a0801f9770d3f202822c5189292e12d70bfa532d208b3d3e4b9476f7c622b6135761ca9ad927f8e87297c0038c56346c10eaf739f42a4907830f843322dc2c001868857fac8138315f9408734a805b44a341e8d5bdbba70ef01045507ba48c76db6bd2fdb704004caa2c2463091cedfc166ff47fb307a3c679458ec8c4d138bb1a9f45b3bee2ac38905390ec405ffe6d50397d862b87f6fc40b581c1caa6c01703160847c00ce468b3f57bb4c57868a423b5758450f6610dc047833dd8bd3e15c606f9d9e9651af43b625417e6ac167350199f5fb700dff9d31d1834e5067ae2d2768ae3b887f971d82d0db0121d02fc224b0b7ce50153c505e9498582f95176dc9bb7ad8332ffc5e66e30fe9c0830a9a5b9fc718e76b79c83dedf8b6fae77e9a0d525ead4e1f6f9d766096f2b71fb5cda34b8071f16557a5080be461f0d28d5f4b0b967b20060e2f06cbd238148385da7207c24e1383970c3c8cb37a1818cdfe26d667f1ebab0f590e01363db9f30923edc7d8138236eb2126c4d42d27bade1462661a9c9a37d45c401b89d176989dd66e03884bf018db670832e8f570ee6def8c6b6223ea4add1fb1a4a3dfa10a3839c3bc17fffbff9d9d7e279f66b9d1146ef6efb82a9c98bda813cd317754a6bcfa218d40d1a3ef1f99d18d713df44e4a74932425326f5a0a9e5634f440bbfc3e6e0cca8271df6763cfa2596c7cdbc8f196fc96229f3885b809e0c13affdd97bfb0f64a830e494127601a3deb5ed551689cb6c44ebcca60f3f4603efb14638cfe90de33959d3cf88b4e521c29228a7e8aa1b1d03a1be16b29b5bbe58462c4f39a910e2f0fb255f903c06154a9191eebeea8f0b0545c7274eb72b54b387ed05a062999bfccada7c4d7cb8eefabfbc033342c877c5822ae5b679c514f63776a922a53a70e9be1b6883a0649590ce7eeeb93f8ff1d70487dad73485547b1db3259b5c933ac118db6a40f5927533b664c8c0851014011642c326c4d266d828c4e051a58839674d54e4046f5cc24bc6f1a09bac79bd888f063a348720d5fe53a044801dec82a766103837659b8b7c5f8d6451f8d5fc0e9d9d45ceb5fb6cbef1c3cf269cd33a4971df965c63934bb3adda1558fc11a09bb7f872dd8766e4d7a1797159cef4ad513968b4398e67b789969f7baa3b1e376e89c2f355f2b3096b656278c0fe8bf7294d9bda11e5cd9252ad50826114f68f2541a600c015c0fb043b0c496f3b76c30961057ce201f66401618d6d1f089c7b10d63ebfa84f760899b0f1aec98c15e335fd8bc18dd78ac6043a3ef2fb61bc371a681a13478d7ae5f1f6fab07ddda471808d63b838851ce95195d2de8fdb3bba1aff8fca65716a7f576637a9e22646c4e998db60ee26b88000d7c85cb7588a465d2dbbfa535d88aeac4337068ff874bcd0cac6a49022371d2b096746eb09ae56d3932d93906f359ce5d6b404e49525cfcaeab1e9c42c72f41c335d21c199612f3669b141bbbd1130cf492a8964bebc82cccd3a8283612424c784acaccde2cbf3d97e753a314c8a15d102dfa874d4a1f46898cc5c0c0d955287691e28ba8b3abff4f059329cb8b47b8e21ba8ab7c9b80b5ba6cfa89c98e7d6eee094688b6d95f2934adc1b604533047b04eb2662ccb57ad1dd54f0038ebfb9fcf27e7f230cdb54715b0ab88fce63ca9a137afc2d928c67aee4800b2a68c6b3a4a5ccba40c5f823c4d99b590611a491d29731d003f49a056a30e3a259c0c28f07d93f742ef5e8f0e0aae1caee6830980103b5bb3f8d0e17ab61a116fcd13d063bdb8aa2e4e39800784269270b49cec86b1a29d13473f7d8509bffc619a853b7fb2cc091334819363984314d52d90a02c47c8556ef2ba6c7be23cb0ceff66960a467b2ac7e4119e84e342e867041fa549f0d0de76755adb1b7c12ddbf409373142d7b2c78134ac38bc1f752e4d0510ab99d820eb6796149fbae1970ad670a9513543e6c74f0ba78e5aa669205e6c5543a2dc2e63657852d4a346a94af1529f1f0b15058538a1847b2045dd948097a6de4de9c84487a1aa9e8bb14b17502dc05cf64718d7392c3b7bae54866d8cdecf42bf65c2270022078c509968bd2b38f11f8ef9618b029c7e032e4d05d10e3710c0d3a4033330033330033300d87f84b5341b51a36fe4cb2493347801e107c6f8433c46dcf82910934c524a99d2037e0ceef09bbd591bbb10220e2c0e8c8b6d4b4c9ba59da64c99c807100c67c40bcf6a36a60c97bda68ce9e44719272b1bce1897cbca86e3dc38e171c282931f679c5c2e2bad72b95c2efc83912e3c2c3139429cd6620c9b72215529ab44992b9952cccbde4f1ff6b24c8f7566732935e37239f971c6e5920b84912d3c0895e6f64aecb175ab10ea4a1f403029235a78f235e75a4fee1f315a994d8687912c3c689572edd95a73e41acb6cb27c1074b9f8c371b9fc38e3e4fd1a628c91e9b419974b73984ca7333c4e789c9871c2e3848d931f679c3c623c0ae7c7e572c1ac74d20710ccc81c46b0f0acfe7cbfd6a3b7f89b76e639e90acfbf6ef33ae5a9f121c5a0e8a7b4fe1147af911a4773105be171e9495b4af4ee925a98d9d47c0ac61f0e4e85c1b0f4010443c648151e6e9f2aa96e8ae89d210c46a8f0f437ed5e56a929e798a7f03c43942f69726aabb14ae159548ea16a8e9c12521985e7bb35868cd952eeeb1a0a8f5bf46466e49079d3a0609ea5b38c91277062b54a35e932a4a98cc8b1f7a4162e468df98e38e1e9d61c3f7566bf5a6aab090fa34eecb1df7eaeaa3f2d1f40303318610222efd42ffdb972857209ab3d5bce7d1fbb450a4794f0a88418be4bf9f4d5423b9284a775235bb9da2936c730ad11243ce9fab1a6b94ad33a7baa1e39c2eeaa7ce4e9b2317f99d94c6b478cf0a07bea09992d3e949a622842de0ccec7b1394369305284679f2a6662ec75d1d2362e970de771a0d9682e179516cdf20104d34688f024762d5b76b2e37aef2a8d0ce17177a9de7bd69ee2e78f4784f03452574b5d5aef2b8ed720ceb3c161612373392c1dc42341781443b67ad7bfa79eb20a46f3299b435636ae9c6a39f971d254cb09eb8f00e1497dbfebf6a932fa7fc563e4070f63b65dcdbb3d574aaa2a18f1c1d3ee10663fb65ac2b46a9f1e3cc8b1860e2d3f6fc892183c789075352fb7de5b3a0b07c365ece061ada9a34e8a4a196ad47c0a4685bcd3a0a83174f0ec4a4cc88cead153eac88c1c3c28f719724ab1bf23679dc1c1931e7aabb9f5365173ef65365772583a439e4497dbd63a5e86ff3eb3980e8a260b79d8dba6f45a316fd489329bab3941546aee0ae278587375534ee9d143ee583a703c0955da546817a194bad1d3f2a8ef7b6faeb1f19f623e65a58505a30fcb93bddaef8ed0b142ae339bae57d0a5f3b0c5d25396ef8b5dad6636950cceb36ba9562badfbf37b9fd9ec6c5c4ac561e9a075836799156ad4781d7b8dfdcab31c636fe98929a72e72c1e641689bae5dcdf15b9992e659ddcef79b72f3c576559ed58c6917e22e6ab6ce05298f274f8af19d9d797bca6ca63427c8f78a26e75998bde12b25f5f0255b8ad373669369b66058541e2bc30689d3c34d46e4de4b6536372c1a144c5a2d98ef707a25a54a8b06f9407997742db7ed8c12a2cf6c2ace6b343ddac83ca8fd34136a8eb944ff3e65a5e50706795e7b4839e58bdd63a858bc85c3c24626635179c804efe1e5fad862097d42ec2db3e91e937229fe87db27c6d2bfe4a8dd300cd76ab0e5030826887b18d3d4cd9f68513227caf59c8dab3f6cf9bae654ba3672a23058f900827941e396b89e2ec6d446ad35f90082e97e5ae5667baddf18e37f5c821a3cb8ec392a468cf031c7cc668725e6c1a79ee9b7dba7dc87740a4a4583873f71c3cd65e992a5cd6c2a11cce0795f686977faf48eb2c9209fcbc666f99e6ae17b0c1e64c8b2656bb386beb1151514d4803c4d3fd371b6f5de22863078fc21b49e5a6cfddebd4a3d5ef0a42ebbd57dd652f3d2219db2d241d93c4d0f47d1b41a97cbfa0082792e78d0bdfc47d4d6aa4faf05d1a0bcc1e8c6b3ef37b9a5b4349d3542b9b48d476deba2a6faf49c3d45ebc7a38f2d2b74ac21b5fcf772494979c7e5030806066c3c4835ff4a477e94544a994d8782f995212c7bf2a38c93219a302e97219afeb1900f2098678dc719526dcc91a7abd738b3a958541e075af0f45af95cb5a51e36c48a50066a3ccadf776b5c2ed9e762425c8f209a5ee372f9209d950d26d707108c4b4313e2ae5dc6ba6b9326b2b48d311fbf4f6b95cb6cfe38e384f32c3d785c2eee5156367eb97438cfb2d2ae2f17ceb3a090b1c6896272585646c2e0e3616c61dbc716c2de953eb3f9aed9605252daf95d9386868cc53a2b1b30d078fabd5ef8b99042fb29dfafb12b484b7ba758541e5a39e349e9b8546a96cf28bdca6cb2a03ccc86058358f028f50ca147e4b6d927cf6c6a60050f6b4bb94f65c6a6bcb4c7b3cb39b48f0b3d7dce5866d38cc7bd2e6b4a21f7d41e976696b15eaefe6649b17274c9d9023254b1bb5a9a9e63df96339b6ec3c693d0a1f78979b5bea73bb759638cc418224d4c5d26b4eb700d1e4f7367ae75274da592b9cc66ca8a0a0ac63da7331db662b4c7e592bdf7547f84f1b04cbcd2fa871a636594e96c2e15f463863859c355ac21b751d9705652d948c1a3de356286eb2de6ae2cb3b9b2e1b844143c4b256affdb1af347c4cc6e58509ee0614fbd21e592b7c5ad2db3f99a4d8a631c85a5593a9a698267a1ef7b6cafa162e95b669389510264a66e5963a61025c499bd5c2e17a4382c2b2b60ec4a09a144949a9c9918f3a202474acae5f1c67d859eb9d5cb0de100a5d3c2d9bc202dedc74859514151a5d2a2412c2a2f0e7efcedb3c4f49cf6b745ef6d983da93aa1b67c8b6163ab329b18946ba53f1c3df661c7102b8792ca86d17c8b45e5a1b554361b4c100e060300f5ac5abd4b9b7a3bc6a6329b2c1ca682f4bc76ec986a6e6fad7d2eb38959869ec79c2d54e91a15d1666693e5eac3f2a16f8e14ed7a6228b319c7861324359f67efb7b937ff5fe85d6693c3d269031f96bd9e4aacdd51531695c76d90e069687fb595d35fec7e65369da6310f07e753170697c729d5cb0c5fa1e24f2fb399e9b4ac60389b8759619cf038f971f2e38c137f37e2e8353857f900823963040fdbdc448fd5d5bed42bb3c9e98c63f05950382eb85c5854dee5f29c8dbb80a5450583ca07108c0b44f0b0d58c9daf73a1a6b799652d2764ac7172f2e38c138c0605b3b2e1b8550ecb0a7acec6930f20981384e05945951eb3faaaa7b5329b9cd780e0610f5bae7dc8d07e439ed9ecb8ff0e86e583a83cf95146a74f505b4ed858e37279958dd334e772c9743ad3273fce38c124f601043362840f603a2d1c0c46021e0041073ac081ce062470f286774b49d980400312c880053010811d14b8008a8acac60316c8400526408109584002148840062050810708f90c051c5081065880010bd8a1800e24401170000368a000425ae5020448cc26051344831224c826250203d821800c0400615250de4000743af085b26c363a3c60228212960fd2811cd90101898e2486d39fe2180c8645c87f40c40086208021ca30f22aad29218021364180018808220b5e084304094730c21084100420fcc0073de0c10e7490031c0c1112071c2d2c1dce0d56361a95141ba06482bc773ed246ba060858840c4410b00847908862002282b0821ec210111111e180183c3042017a30002123ab1861c5082646f430b207012842a4041325474880006a2022a219a200355c2005454840009c201200008c918000206084e416691700c80422015f081149c38801bac0052d68410922224528c211843084217050c052001111143452f09cd76850769440776c6087e65370c70930b043f3292a0126098e3046c21849802c4e408b36ac21035c10e30a4e105143c48d1488888848400445240139d2f029ada1685c3f27ad961c25220a07060ccc4a2701247d4800c91b1240e2850fec0043043bc078cff1c08f38363c563aacc5df8d0eca4a181d94950ea24959514119d9c2081d123002019132509000912488a0c0049d771b0da6f383e5d9e805f30210bc00810816a83032124483620421dce03970e8420722605879160dcaaf6c7e687a84a1f99534363e46fec2e91d9ccd134100021080000840d362ecb8b07c67080b07c539cec69fd312062e44c1055cecb88507be608b3288886c2007aa10111139514fa8850a30223ff081880e72400b278888344b078c2f146216b6f082884847169218e9c2892c3c20222224169a1011e9a06c6281b158828810a7e90ee792714e7f070071bcc6a48d1d68642002119c000527d8f101210ec5032cefcf00630d4e1a2cefcfd8b163c70e8d0c72b0438843c17c10f79858040210267108c2094c1002344a20e10a04ec688526be153b4452fad9788e1acdf9e63c4a29a5944a29a594524a0921841042082155555555d5cccccccc4c545454545454545454546666666666c618638c31c67677777777d75a6badb5d6524a29a594522aa594524a2925841042082184545555555533333333111111111193999999999931c618638cb1ddddddddddb5d65a6badb594524a29a5944a29a594524a0921841042082155555555d5ccccccccc464b64b25a489864a0f188c020c111191e63c093a4ed342c6c6c7a38ce1525a362e886393f262f060f94e270ccde360c321c3bda60dce675878b816638dcec6078f47b341694d1b6b707e489fb1f1d11de7cf93f2194dcb0e4d6bdaf840e77f48afb0a0a4a0b4d6f4784e0b4bcb6369e1b4b0b41d19160e4adb71d9a1e91d292d9dfed629615cdc97a083a0743e6185912c88888c604104019f58b98288484ab7dce077b06c34235410111999821466f000e9c106668c678c3478f878306ba4b1c61a0fe639a38d31d24003f38230d000030ccdbfb1f9f1292d6e83066b4181cab3f43081bf1b9d209b14d7e3352841340f0f4f3440e4031e10111111e921292366e8c48e0ee732a4613a9d5e29c208115834ad415141e17807c5ed5069d1fc8e8e4aa7e3d8b1312388068585b36961ec68e98c90dfc1e184193acdd26388888c60444446683083201a14f76ba4344b932122322283ee387f4e875329753f83a4d626d6d8b0ac0ce1b8a230dad8701ec81031341b940e0a1c286330cd36dc0b4121834583b259c1b81782f2c00003b3d2111161114180263cd0e15c58501ad3c47438bf92f219a6d9928939a4c1434464c48d36444452389cc73729296164220726522e910a11368268503a1d14348470092158c20f227f0906f40a0986b0fc58a3b3c60e9520dfd9916109030c30444446d858434444039c120a58a204222656305142259c508903884cc20a223350b4a304ac25069318594acd0000461246908411444484a08888881a0a0718609820486748a7bcd3c4b171299b8d6384b40a66458593c1a8b46884b48a905651d402091f3c42178f50c22338228a5a1c610b11d7030c30c0e00846b2814628424444a4117468c4144444769cc0043b76805183201a140d4aab3ca7063b583abd0287d3b43f0f75431346bad139454a4a18de4141e39f0c46f4d0c11621444444e4392d2cfd6f470d3a9a160c1c6fd420a5b5e69da651382c9ccd0886fc1b229b9774c11104d9a49c212232c20211919115882060116af400a2084fa08be60547a08963c369994e6714a107110428c20d9ba7e9d16348caca4a183fe490080a8874504a50030c6783a9c10ecebb149416313a9c9167648c201a140e0b1b6080a1a805059d4ea76038bf22a45530425a0505425ae53bdd50a0a8c5044252fac721ae90d2864882c8e57261d97c4a27e5e1f0ceb0a08091f2707c0a182222ff1c3234ffc6866544059d21adc6ffc37486f44aa7d3295e881e888810820e84900321bc2022328282cdd3f4406348abd179186c7c88888814e08708020661890ee7e24a30888cc8b3745e83e13c0b0a4665c37924f087030183f0b1712d6cec108109389b94e60106180200030c4ce71d46f3cea16430282b8d59e974fea0061111110d4aefe06c1e4be7597684e10643886862137e5005b35d236a248d2411911ba838f79d160c0a329d3643c55fa0d2a2c1f4c10d17d7072122222d3b3461f4815df8608b95153e6436ad47c0871afc0f3eb0354410b0074b8874583a2b08d883177eec214f2e677f7a6c190a4fdab4df9aa3d7e50ed1139e7c0dd7ef520fbdf5d8098fa3ba2ad78c79a995d984a72d5a68ed7bfe0e99cb28e460c2b3aed495432be17b5bc65c428e253ceda95532d46c51a37e253ceaa5ba6f7ab76dc992908d18978b7b219bb640c8918427df52f48e70a54f9c1c177220e1d995546ae9352a574d7784e75b29d7d22744a8d2b1111eb61c71aff4774ed5a1ce906741111ee41e72c4d42f7a2b29663619262107111ec5f4c969d55269ed7b13720ce141ab8b94635acf35955408cf23649a4ab5d628d373417892ddb6c79f966363efe500c293dd289132afee578973fce069cfc9ca3f7fa1ce97c3074fa3d50c59d5af22f2f6e2e94db5ad71aed6947a79f1f8e2e49f095b256aa7500924bb78d45b8ceea542d4dcdb4974f120a58a739f3e55ace5ff38430d24b9787adfb9e4fca97ff46eb8781452eca9e4fccaeeed2d9e5ceae9e255ce1761f6e572b9205b3c692d73cc88d29152dc24b5789a3a9476b542ca1e2646428b67f1397708b5d48ba93ec92c1eb5be19ea3666aa3f2591c5832d39f4725733f4b23563f1603e56a4d0a22f01092c9c52add5636c88574a5f2e49ad90bca2a1e6b4258698ddda26638d13a61c961537485cf1b85aee1652abea75c2d78a47ad94eecd7721d4bb4ac28a47dba5efecc4be3db44bb28a87536b49757aee63ac8d44150fb7c5d5b02542bb9639492a1eb5eefb7c7d29879e0e150f62b44921d48f35b1f929d8da5d6c31e74ae55d55b6d8bded865ea1e55633c5a3cab142a65cf236af2dc5c31835d69a6bf3adf516299ecd47eaccdcdd3a761dc583e850beb6f634adb72406269fb371a46e2011c5d3d672efed54a743da2c0524a178965aceab1f9523961603c5d34d13ea5ae833a145c9a279e7bc1a8bd983e4130f629ba87c9393edaa1583c4134feac5a9f8e52343bd4a13938c11249d785c136d2e47f8323189fc40c289e71563d9d673d9b576dec4b30e254267c5eb1fdb6ae251e6befe98f22bd750cac483dacab7da6e7a27a628b3e9306c04124c3cc89573b7db2762364e4120b9c483cd6ad1aaf4de420da166890719d752dcb421e61e739578ba37a12f7e438eea4d896719b5660a31bf6ba4d4249e56e6f69e947a365e96c48350b77bc558a54d6df7fa537807249178d43fa7d284ab319f3d249eb694c3cd7d4eab4b37b32904e5b160329d9695f488e77fb16dcfc5e6d27be50f12473cbd74f93746c7b7af546693f30d6f163638632c199034e2c17fec922ea787381bc324c57c4818a190a53e65a7f4bda4329b9a4e5939f9518619880592453cc83d6feadaaa3a7162d4931f65bcfe3314622151c4b30e357a7d8c25e4ed56221e4eb9f62d7aedad970b21a2ad6ef7bebbea2c7308c9211e6f6c512bfe5ceb116783a9342031c4c34e21439e983dd616b9d4c68645d3430d92423cf9d8b5f728ad8496b2a79010e24989ed7255ead0a5b31dc4f39ea9520d7fe54bd52611c4f3bb181177255c2e9fe31a273c4eb005273c4e508d131e2798c6098f13f471c2e304d138e17182679ca871c609e7351a941588f5b8dd8fd15bfc8d4b1d9000e251895933b68b1ab72ac5d2d9aca027b740f287a4ca0b2d444c0c2d62ab88dd7356ce2d77987196e6ac60364e25aa1f9e4688ae13ada76cc6e872b95c2e174d4cdd03491f9e44e70dfd5b4ff5e97201091f9ed59823c3d5e9ed2b4e7b781ac394a8315add341bbd400fcffbb5edc833537579cbc393ef293bc42bf5f95b0e0f8f5a8d5e3976dc891fdb68307778f4b1d50d6dc2e55e6a3b3ced543ba79afdf2c4a80ecf635a8a174a8f98a27c74785e3ae5563bbfb5739fc393cb7d5a28a1dcd794e5f02895ad7e5fae86afd0c7e179d9d4b2f3b2d6181d0e8ff272f6124beace53726f781caf2b85aa9b63e9dc0dcf2b64dfa7f8fa39c7de86079bbf6676a8fe7b1d1b9ed5cda12a73c92f795bc3839657c3a59edaaec79a1a1ecf6456f5b86173ec751a9efe9428b95d47eff9d0f0bca668154ac8356ccbb1333c292145cf1d53caa9b496199ee77625fa4b0fa9b6afcaf0209790bfc767ebb967647894e25cd5fc5c39663b866713b673fd96fb9948c5f0b4aac61e66d34f9f491286c7f13db7a99cba39cd0486e75b6abd6be13aa75aa1cce63f870593f92b437ea49c04c9171ea6505527c7b874edbb179ef68ca942ba7c3913bb0b4fe3e72d551b2e171eb69eff9b5b5aeb315b6fa4b4b41e9c34d6082d48b6f0ec2feb5afdd7d829bd161eb64f25b61c6b8e1bf366e1696b3544df9827ddc5c4c2d3b0d92b72e2ab767d85079d6a3ba494d537164d7bbbc174a5551086c40a8f4a9b88d2aa74f50fa241e9705afc392bd1c0542d9054e169effd329311371511a30309159ed69fccad2d43cdb1f5c98f334e2e97a4702099c2c3e8161f7b0d2d237c5fb40389141e86ed5e1babe4dab45d2e99985c3d9044e1c1ee7cf7eb35b41225048527132eb36f94b4693b0cca5506c9131e6dcc9e7a4cbcda95731f978bc2a16c2071c283d6ffbf4a457eb60fb1e6f9410492263cb878ad969c632de9bb2261c29376a9274a2add2ef572754896f0ec62eedae3c697ba0c930b244a78b46d62ccd6534839d4740d244978f635b3f70cf11d62dc487818293f3b7d4ed5d5d8111e6cd64eb1e51af5ee2e89111ee7489763bff996e36724457852e6b7f69435c3d5f6498890a992173757952a9569b3d7bb77a8dbfd59f70a4886f02ca7985cabfa6677d89945f96ee3233112213cb92b1bbde74d9b3c73c3a212f3dd4613064910f2a22101c2e3edb9a55dad59375c9ad9950db59c5c2e4db520ca3190fce0695f6a1b628e3039738ec4070f4ac5b8ac30654bcbbb170f5b4c6532c45e5e2062962b331517114bab6a3194b4b567bbb49adc0523bb78d4a633e4d67abf7dca0fe29ed77f068f13961615953738ad62863295491289115d3c88cbf639fd617bd5fe51383f92074672f13c26556c351f7d176a665365c379e9e44719978bca8643c6e5c2128da06204176e9d99f55be9cda16fba45a2546c53e2629b1231654b99b1bab7dab75b6c643a6d06d39556b1c5c3dea26a5cef36ff519ac106192c38e17162468ac3482d9eb4bd1eb96e8ea835a5c5e3ca8fd366c3d6fa91ce22514664f1f86a8ac8984e394c8e2e6963f1a847750b21d3e41672299b8719c26161273fca38b99071c2e3a447a3a1471881c5e318abe74d13dbd36a651f40303c1879c5c3e935abc67eadd2e51c1b97cbe5c23431b98911573cda122df4ba9f199565a2218cb4e25908e1fad37f9709b1653631984d10c68a8791e77ad489536613c31a8491553c88fa35d5efed33d5faa89911553ce89c63082de74dd52e4fc5e3502af6a69eb98652364c54543ccfee1053e65ea55ddb5c8fcbe57221638d13561c9695533caea9f6d843c7ba5dda34c5e31035d6d6bfcde52a534a1c969591523ceabdd5dea14c4548e993e27967eb3c1d5d1362bb513ccc35bbbd95696d5b2f8ac7ade6dabeaad6b0b90bc5d3f4e1b74de99bbae40e8a87df526cb60c37d151fbc4c3c8d7fbb4c95aaaf63cf138e629bf5f366e26efc493b8b497cb576df6654e3c4d25e72f2157b7eea5ddc4d34b1f3abae7ed31759a789653cd4cc89ac961ae4c3c885d32b44f5b39b78789a7574aeef2359715fb124fa2a51c25b7845842a62cf1ec6e2ad5d65c27d7952af1b054456e2d84ab772944896725b71ca5a4a9e953aa9378f2b9e55ccbf5846d3725f1ece3538f5039d7d78499cd0c0b4a1c6993531aa50f2018334622f1284fabc855fffa5fcd653621f1a44aaaa5464df9db5bcc1ef12ce37a459ac992bd37473c8af5db638b15f6ee4a34461af138a64b3152ef5eeb2de6128c30e2f1865697e1be5fcca9339b18f79a383618d79b94cb85e5835c2e273fca40e1fc38e1916e5c2e974b736bb330b28887bfb7bd952a73317ffb9c96ce26c5314c319ff1f69516cc1b9b4dcaeac98f324e5a70c2e3e48c931f679cb0221eb5a89ac9df3c114f6672efe9bea9a41c3bb379e2b6e5440525d3b9c071d2b6e504139011443cef3573f8db1a6acf93db93860ccd91433ce9696d7289f4b5b33f433cac89d635a58d355e76994ddeb0687afc50d970c8f05f61e3724185781eab7329f1bd67fe543fd4fa608410cfd2940bdd35c7b59dd8f59bf16ee3e372b92ce60308068e91413ccb7b13a366e45eeae3002533730581bb10c395d65aa690a5d4f4565bbd3811b2e49c3fe3cde351383f52da37675c2e3c4e7e9431e45990e9b4193c4e96d24d1c3ffe8d4e11e372b95cc418630867a3f268288572786124104faa54cf579d3bfda605c4c314abb5cef5739a89f47241228cfce1f14c66eed632d6c9b17ab7f1c198cdad0f2018138cf8e141676cba4c6142d79ea574f8e44719273f386168ba6648278131d287a7fba57d664d71be732df518e1c3e37a354aa9506b874bf91e9e96bc5fdbc7d037c6b7f4f0ac4345b7eb52ea56a9f2f0744af4b7b6db57f7437878b27119bfa78c8eb96499cd75f2a38c93cb45e1b85cc6b85c2e974c4c2a1cca6b18b9c3c3eacfed98116636374fc36aac7122c6098f93304ed438e3e45786fcb85c3a292b2a280a83e90308a665c40ecf6b6911624a576bd8aaeaf0a86abff6356defa17b2cb389f40623747876d332629cfc39956b680723737856fade866811fb7be5e4f068ebcba6fa973db6ebe2f0a852df96b97fae4bb187c3f3e9bd54941cd25f999282f206a3373c8c351b62c47da53e537130e286a7a5b2fede44e5e5a43a6d78dc636c1d426cf369e6b2e141c9126b8b2197cf30a5353cefed95d3a6986642ab653673c8881a9edc9578394df6758fbdcc26cac1481a9ea51a622c9133b79bcf329b88848ca0e151c6745f629f5c32b79dd94cdd8c9ce15988362147f64cd3f2cf6c9ae1499e4c93bb37ca570c339b4a3b2365785a229730dfb353d5bdd990e1e967d89bf99ca16d2cc7f0bc52fafe3574d8cbad97d9ecb07450843cab8c88e141c42ba9b6e8edafa60c1286a71723be4bac58bd31ee2c1b8c80e141f6dabf0ca9e6add77f6793d97c63e40b4faeff15c95ebb7262c2f3aa4dbd5a6f5f73f5b884e755e2545e2f5b775b4b090fcab5fe9aef91e96396842739ba2af5df1476dae74c90f0a4d49e539b1e63fafbcfd9609219264778f0fdea27d6d062acad34111926467890b6d6e9d935457c9999cd1bfc0d9e944661e1b41a97cb8a8aaf0f2098202645c88b09119e75f6ae6d7ec2a47db9f0c16408cf4bcb5afdb2e7fc1131b40613213c4b2df5d0b77ae8eff1c27c8249109ec6e8fc10363f32a6898c4e3001c2839edf72dfded55afd3f7858b6778d2166ac2162131f3cac57aff6d6d94a8f484b7af1a074c48fb12fa6f63d0ae747f2e271468ba9951edda55bb88b57a921f6b67a76ba7098ac6a1f37b65e6a2e178f7f15a13e84f9d0d241092e106288ab0931534d2a2d23a78e6d53f75bb49f34cf60c925b778185a877097d33584f3238d355c0a4a86c705d5164f4bee0d35c46835337f2d1e8789df6a45e49a5ac9d1e251c7a798b7d37bad8c67f1b8c5c66fee1927fe95c5b3b8102ffba62d69d3158be77d1dbd52c89e7a94142c1ec6ec74d4b0d3a1d7e9158f734a1bf15bfe8d1642ae78fa315d2ab5549cf41d0c4a5af1bc46999ecfda6d21f658f1b43bd7a98e2eb32df6ab785823a767be967142a78a47257588214bce8d9872a978debbffe470d39b7762543c9cae19bfeffed6aab1533c08a9ba62aedfa4ef96299eecb64d954b855ca52ec5e310a1544d6ba952be14291e6eb99cd03b72331ec5a31eaf65ac341d777112c5d3c85a6ad265875a72a178b46d2a4bda4e9f3944a078146bdb101f6a67d8ff89e7b56edda6946b7dc5b4c4138ff3b7eeb16c8d515397259d78341f2fa79e61b66ac2124e3ca81e6384d253fcef392cd9c42ac5d04a46b6186752b88bc92ca1c66df9b3e36be241d9127a448cbc156e6b4249261ed7c6a754ab7cdcfc987856a9e25eceb565dafe5728b9c4f31a7d6943bbda4a8b9b724289259e7d97f9c8eaee9c9362bc85924a3c4c13f2e6f5dd4aa13a4a3c4f57b15dad989f4aef99cd210da3ea5ed3c6e5d28592493c8cb1e3422c7d438c5e67f6e447194c120f2784967aaed497a33b26454924d43666ea91ff623b75459440e2f1850b93ad73c5d5b8994dcebfc1d9c48151a96e5c2e4c14258f78f4df264d4bd71d59ebcc262a72e3724159e994cd660509c008258e78dc5acfbd3dfd3a46bb961b62a4f8bbcb85f31884da8992463c8f6d3f94fad5ddfa4e99cd8e6f09239ec5de29d3a6166ae9bc33bb282859c493743de5c8586a8b1e22e6cbb85c92229e447776ea3d256aaab352c873b9301f40303d2849c4935c3d3db4987be5ab791c1b1e974b1c1b0e2719221e74fa9443acd4a6b4abd61925877818156bfbd61e2b31c4836bb9d5d52ae6effccce61bff1d8ce6332c98e5829242346c8e5363fec67f277395a59410e269af4eb16f665a08a9f4635a4a06f128757c0d15529ed9c4689efc288365b3e1a8f47358d848eb0308e6062582781262e8def67d592e76209e4fab2d7cc765cf544a4a6396054505250593615979b77c00c1082901c4e3fc8c1633efe6ea5b3290923f3c4d71a7c48d3e7d2df6123f3cfe1833d71e63cef93d8529e9c383ff4de95bac8fd9d496f08153b207d69a26b4a879522c7158566c50a287d5d6a7d747fc9431a6b2e1bccb252545f7142579d86c5cb6c858eae41489a1040fcc9f594b8add56e23b2cf51832ef578a5b95a5c40e9fb635317f4ac8ad354aea90383d66ce146a552c28a1c3832a173dbf76ab9aa92a99c3932d3954b4c9bbb739c66e94c8e141478fbde9f3878ca9861e51128767394eba8993fa9692631e4ae0f03c668a8fa99faadaf51b9e7e4ca5f4bd7c6ca792523b94b8e161eb56b7cf968c98266343491b9e87ea9095430ebd6afe682861c3f39e9f9f9afde31a9e54cf0fad7d0dd5a5b56a785ed1379488d4aa7db74ad2f0389792b3d6f0197b8f391a1e64a7b9f6b127d470396312b5507286c79b26640cbfa9734eb1191e87ec3162f2639e6ca592323cee9c7b64d64d297dbb329b1a94e6b8d42f21c393aa98ac5de123c2b634576ecaa0640c4f722f5d732b6f2ebdd7ac50228687a9c4c8ca5e7baa555a0b112561787c5d5aff0edf4bcad52f9d4309189e5e4c9d3b5f11f9b92f3c6cf1b14b9572c150e28567b95b4ba54bd4d71a72994dcd86e5c98f32583aff230b255d78144247c8d353ceddb1fe209b2c5f06171ed4b8b1666dbd4ab72d4bb6f06a53bbb374e5cdb5d964521c8aea204ab4e0da2be962adecf66536151f4ab2d070a9f24a2d97db638db2fa50828587595ad794ef73aa09d51a4aaef03ce6c2a4525ae96c13adf0282fd789174a74adb1cdd3f4b85c5849151eb5da2355aebaf918d21c4eab122a3c4f7143a589ddac1ebbcc6687078f93210f85f36e5c2e994e0680122553789c557a6c1d7a26677b5270991cad6ccc994d94068f0c0b8a0b3a2929619cf03871a38d131e272c429e45b3e171c2e384c789cab374863c09536549141ef756d3578ffb2b9b6a09149ef71c39ddc78aa57668b1b1d2e27e8c0e66a5c5bd3343c9139ed62a1fdb17e2349438e141ece4146a4ac612bf2d69c2e354cb7c0f5721476c9c1bd7d24926a4b5c8c99c70ed5a4c15caf495e9705ddfb5ead6c4a88544c9121e5c2d9532af37fefe625211a244098f23d63c25566d4eaa3b0925497892e73a95c9eace71538c49243cfecd9b27665e5f4e8b611209254778566b4cee39e6905d5beeb95c123b4289111ed5c494ef29dd46941e8f93339414e171dcb2db438a94ba85e90ddf5c2e8c49299410e17985dc4b8e51e2ee47cd082543787655f2b6f2f77fb59d101ec4ffea717dbaa516a1203c0f15ad7ff91a080fb695ec98525eeb536942e372b95c2a51f283a77179674b994a177b55e28327952d5fbb7e35665799d97ceec5e392b7764e295c5e3cfb104af4482d85ee9edac5c3ae2d6fdced1fba65a48be79b52c43a1b439cee31b3f92b073972f12c575d7d9d54b56b6bb8781673a5d0ca76df2fa1e6b8c5f32a75b6b410538d5e55cb8a2d9e762c257c95bedd6ab1aca83c9a344e789c380d0a0b8670bea505273c4e789cb4a4f4524ad5e249b51eb3ae3eb66eecb47816525f99c8522532d566f120566ff5b9ce5e6a2ab12c9ea556e26bddd01329660a63f1b4668f547a7c0a8b679f975a6d13bdcbf4c7e9150f5a468c9ab67789adb72b1ed7ee983397ed1d9b62a6a945c8d18ac7d5ab6db7d62263be1e2b1e9690a63bf52f3d5fd9ab783ca9969eb229459aaeaa78fe3561424c575f2aad74f2a38c1f2b9a1e3a841ca9789cb2b75caba5ada96d8f8ae7f9576a7c29a964d74ef120a55c7a8a76f5435e394cf1b8728da9f4387da1428a08394af13c5e0fb1a5d81b3f538d140f73841ae92a85fea97c3d728ce25155b4ca14630ff152288aa753aad3f7bca9d26bd7505252fa695050043942f1383e2e67ea534af5a4cb7c00c108c9010ae5e9914b7caa35666736c550e38c4ca7cd58994e67d227dea653ed7425a2c628f1604f3cdf3cb15ba4ccd36eba4e3caafd7aeed5b9edd4be45059392d2ce585ad0d09071b91c2107271ed76b1323d6d632de8559d9c6b7218d062a0b8a0645d382f936a45534555e25c7261e45d4d412dbb994ce5fe772c9a189271fa2e4cdbb2df552c3cc668e4c3ca899dd29e25ecdd0551e7260e2594ebda52e77a4fd1461920d392ef1ecb73773469e5426b30e8ba695be1c9678581729d3d58b15b5cbccae5439831c9578564be456dc646fad7e9478d26b776f546d9543e856f59063128fbef65fcdd2a2e7b2a9249e4f8a757d9b76aea5b87c00c1b81c917810bf64a869fabe85df9078da62f7e91e7bc8f563dc827dc4f3f88e77f73dbaee96329b9fe250309acdba1e9a342e97ce1b9b4d4612391cf1f8728958bb612b2fe222448e463cda787321b7b09d628b329b8b114f53ef5ffdf9c8febd2f829343118fabd64fac5d35969aabda438e443c2c357676d518db42ea4f789c9cf038e171d2c6e582413910f134e70bff73f56d7b840ef1ec522dad4ce6c5d8d2108f52559f58aa7ffa125f211e95ae142bf59fda2d72423c6c97b3fff2a410626f108f424688ed13f3a4dd82789aea4f2ab1b72b99ab1688673d3ea2ecc616a6f500f1306a8814e9ea777dff87e7a5aa6cee2d77ef76fbe1614e8913d2f5e45039d687e72d6d28a5e4d85d3a5a3e3caf49e57b8f1d43476dede161fee49ece99d3478df4f02c5fe68550f26e6c9687a7b9e5a856a575cfc6c3838dd56a8db9464925d43b3ced533d879a95d3ffe652b265874793f732f26b2e7b0de1b0646e321f40302ac8518727536b4dd57b88addcb554389c30c248496915362e1784c890830ecf429830b55a895921c71c1ece6cfcd62187edad9d1cd44a88897142c98ba95a2bb9efe4bcd13ab71a6d66338ee660fe1f46e5658d21471c1ed48dcf37195b63b4b939e0f0bcc79bd6bed7a6ebaed81472bce149cc4fa9f45632a40aa11b9e86902265affd72c9d92b1672b4e1d1e5d0b564a8d9ccb1312626df351b4de221071b1eec6fcfd4f425e7fdbe5c568e353cb8cfddd06b8918a3eb8568c8a186a7393a6f6f485def739d230dcffb84ad5efa6bbe146b27071a9ed59ab58598ee6ace13a5b351e30c8f7aa7edf83fd725c6ac0439ccf03cbf47de9c5ac9afd17bf408f23e2e171594cb450839caf07cfa44d6e41c73cdab92470e323ccbbb14625acc9829f7313cab39c608713f5c564cd2687a281a39c4f02c8752d246a8b1a9e73647189e969e4b2cdb3ef27cd939c0f0247e8bd872652b11bdbff0a8758bf52df770a5a6ee85a761dac5deea3b5d5a5d78dac264e9f51b71e15908fda64a6a294d74ddc2d38c98266d64cfbc296ae1594ff6da8fd739d77c3528cd19830739b2c050f15a687119a5b295dc48f1734ca5e756aeca6cb674308e526936293c2e9755861c5878da31c492ae944ab9aeba5ce268cee5b23e806054725ce1e9fcf7868afcb721944addc86185e7136bcfc85663f4e5407254e1799ede23d73cbb5b2fca418507f142fd5a620c6d36de1c5378102572f7df9e65b25b52783c95fdb9a65e7a4ee6280465785243c81c3b57beac2125c393d89051f2e77ffa0c5b90852fc6f0a0e6eec9b9c752537c2786e7b799276708a1357c1186a753115aac98efbb4cda064ba79071b9689e85a5535e3ee10b303cad39e5d790b3d4be9a7fe14156f8b4b3dd4b5cddbcf03086505fa27c6a13caeec2835e5773c5fdccadb6980b8faf6cdd54bec5dabf690b8f42a8baee305933f5b4f074429eafb123a6afb5ccc2d3ff1ef66a9b5abb35c4c2e3ccdd522831771f7c7185679d6ab67e316ce952435f58c1005f54e151a4ccebe87cf13de608bea0c2b392e2766347fd9242c65f4ce15108b1bd45a8bd2a13ca6cae1c7c2185871f3ac592f27fbe49ada0c491867c118587a937e4eaed5baff85fa2297c0185e71fd2d6ca8a2de5123f83c2174f78fa61a696af395f5fb6cb095f38e179f58b21629fab098f4b9fd0339bebb48f094ff2e566cfe9adced62cb3a979164d6b13be58c2e3abee0f3da133b66e6158bef31c253ced6c9f27f454257c9184e753f6363fef6be3f67790f038f5eeb17ceb38a537858a842f8ef0607bbb6d117623e6533ec217467894a2427f564ad353becc66111ee4ca186a9f78a17b4c44785c4afbecb9a786dc99329b1b0d46957d00c1f01743785e539e18e26bbbf62dcfac0ebe10c28314f3b5b345c9deb2203ccab56e7e2d25526bd18df005109ed41cebc365df45e42eb3f98307d9264afcfaaf5bf3cc6c12e10b1f3c9f723da536951eae5c995e3c8e214a4aa1c65c12820e5e3cbaad5a214fa8b5e6c5ce2e1e84b0a95bdcdd564d7550529e0525130786e583e8e2d166e48ba5e51a29d438178f6bc4ddd2d5223a23848b6795a56c4fd17357a7b77854beea5b09b55376cc0a041db678d8437f6ef12957a9d0073a6af1a05eb5892d55afbd74478b0731458d553ac456a3e668164f265da859773af24d8564f1b45ad9b8bd86cb0b2187980f20988e8e583cbdb0712655efb5ed4a1db07812e2d464dcbb38356b3074bce251efdd4eed316c98cf3a5cf1bc648b29e58da5978d5b472bd2da646c1959e24594cc6fbd63e5fe38d32e5d1dac78d81d7a2cbfb985c9ed5ac5b3103ad4dd94c2f5d8298791461274a8e2597c2955af840b2d23eba123154f226dea3196f4b9d572e940c5c32ba5e790b1f6972cfd291e5fb6fc21720d39f6e44cf1344599d2b1569b88de96e279744c2de4c99b737d22c5839c35d45ccd21d5e8d0289e94dadbfb76265b679a021da2783c91a7d5eb6fa1f69443f13496f8fb8d5095f257a078385b637cd5bf1ea14e9f78942d6adcd4bd12f14337907ae2e9d54f15bed5cf7d0fe191983c071d9d781a5bf7da7a2da184525b994de6c493f89df46da62adc65818e4d3cebee997b886b512ea2a5894737b9d48a1252fa127b4847261e757da825746cad3ac4cc663e281f1d98789ed12b87aaddf1afe72b2ff1aca6e9d07aa839c46c9f251e4decddcd2f1d91fe57e249282d3aff562af9394789a717157bb76e2186d8fb241ec79a3363a4ff56266a92785e42c54ffb9453e246e2d9a6a9a17fab7625550d89079b376172b79252ef8f7878196b6c8c3965d6881df17cf7faa51ea3a6f4166bc4f389aaadeef7112ec78867bda164aea9f7de2ddb453c8c8b68b9979c9afa2a453cabb5a39752a3266a4a897898f3e70831a5dece878807b577bed7fe7c5f4ae8104ffaa4d4666e37978d0df1ac95dc5653e8696a4c5988675726b3d6b639eeb608f1b8ea4e6f3175ce5e251cd22999d2a8053a06f12887b4ad878b29a51aaacc6627bda14310cfdac69e7e7552d718caccb6a1494393970d7404e241f5c54cf55b56e752bb5c2e97ce02c4f3b0dddf2aa6e3f23e273fce38b95c94a0e30fcf3ec6d93c315ba81d62f6c3e30e912b57fdfade43ac0f8f5bdef7470c3d1f4be6c3c316f266ca212a4fee760f8ffaf34497cfadd9fb7de8d0c3932c576be48668b1569487c717f16a4e7555315a544cd08187e713f53e72af5132a69ab5e8b8031274d8e1c9c5f44f885e62757898314fe4904ae6f57c5ed0418787e173497d27d6dc3aec393c681f4248994afa2e752e3ae890c3f3ce5e57eafdb4105fd3118767a5a5ad8a9cfa26a478080b8a2a2074c0e171fbfab73d5d98ee7f0d6141417d432fc5a61242cc669826e870c383aa256c2e1972870cf5e5b2f0a0a30d0ff3cd85d45becdb5a45362e99ee77d5a0830d4f4b8cef7ebd6a9e1cea131e274f8359c383bcbeb556a935564c991a1ed67c1f6bceb5bbdb4dc3d398732e1b21634d292a1b820e343c28e15bea5fb5e5a9dccef06c66ebd5de2c11b16b0ce7df250a830e333c9afe21fb5c2e973a236648c33c66a523068b90e7726111f2a8a30c641803067488210c18d0018610e8f8821776e8e8c20474700143011d5b405909a3023ab490001d59c0c21508a0c30a4fa26cddfca1e55a7a6c69151ef596538a8cf891d1bfcc830e2a3c8a962257df1431e416ca818e293c2e3de5b2ed7377e99ca5f0a0f712b3e55c626c6bf5101d517892a1bbd7be15d9f7a20e283caf55f9baeed7dfe99b1bb8a2e3094f6b62cc33a54e989e920e273ce89836fc566c9f092d1d4d78da53cd3513377be52c810e26347f466c15dae754f2d472831fc3df8d5446d1b184f7dd88dd4bf7ccc4dc7bafb031e459b09936a143098eb8a57cded47cb1f6baa023098fb357bf1e52fb4c5d39b3f9ab70281a3a90f0f4c2f5b0e1fe33d77c6536153a838e233c8b9662fb86edb963180c06a132e830c2b36f1bbb1353b9ff9cc2fc177414e1412f31f48ba8faed2b96d9542de820c2839ab372082572fea5586a16740ce1c9a48f3fdff6fbbafecc26ef157408e1790eb14b9ff47dbbc739081d41785635cf4d462d35ffb5207400e1496fa4f6f562f733543f78544acd2dad96ca7169fe41870f9e7edccc392f5589dfbd5e3c281573b7da0a5b6f42cd84174f6ea3e60ba54f8b39fa65b28b27e53f6b97da534c1d4c74f130b456632a75ce172dcac5c3dc73caebc87931192b4c70f16c7bc9ce9d72d5b5874c6ef13cb769db21b257ecd6dbe2d1e67adba95c5c2a39a7462d1ea6d8ce5e592b36769ed944cc8416cfc34fc98a6962e9ad4c060a93593ccd917fb3faa756f57abb0813593cc8dc2d5c299f339b2926b1604d6d9c49a1bb5b4f3798c0e241eb92ae63e674eccb6536311b161e62f28a47f9fb2a674bcfd9f1bae269fedce1f2326bf950b5e2698d891a7a2a7afd5463acc8b6fae94af9c921d5ff8666e9154c56f128d4de5aab14a74c883a26aa785223d67e4d55192387a9789c97a3b64aa997e97f3926a80082c92974fdae64ffb0d56f629a98e2e1a78ffdda87544b9cb0140f63aaad74ee6a937bfb9a90e259ce9025f5989ad37914cf6be5ac8bf132513cbfd859ea5dcfbbb4a1503cef1f396eec29a51423c49880e259fc9dec13a5854c91dd30f9c493aa2f9342e873a9c49405134f3ca9faa5baaa44560c3963b060d28967e1e7ab6a8aa9bcda329b6971e2d1e72bf97a9eda62fe94d64a9204934d3cfcb9ceb6bddc87af89e7b1f5081f91b3e7632a0b934c3ca97bbfbd562d215c4c2a104c30f138e67261ea7f9dd9e4217eb90c7125f181c9251e5f4eee2f615a8929a5a1788b7bce8f1e97cba73494209a9677b9f02e4c2cf1a073e8daa154269578907e6762fbbfc969a509259e4eabbd6df2e62a31fe241e54e467c8bdd4502346289848a2317e4d533ae49c364b91787ee937629a52e95ba909269050489d21bf4466ad8f78d4dbd78e9fbf4d081fc20ce1b00869344e780c79169cf038e17ca6d366245b6915e408df450df9c25f2ba9cb6c0ef937302bad928ab9d22a88b36193463c4a99e2445dcbb6b7558a8309239e4eaff317f3a3db6c0ed369cc4e186d3059c4d35cb191b14e6db33d438389225aad6367cbd67be24dc4a31a72af54bac4fc96caef194c10f17c5b4d9a1636e75cab3fc4e39825e723768ee8e15a709818e279c95db5d67c1153c9b1106a19e54abb92624ca5558bbd435cc7b7569d333721c4938a612a449d5a1527f52894268378f89dafda97aa88e4602288a71b25e6c83d554feeb9e968363c2e5d3009c4b3fc1c7bb945ac11314e13403cbb36dfd3b6c61a61dacca652e372f182c91f1ec5f5da8df1bdd3f69fd99634f1c3e3e9d5e6425eadecf9fdca3e3cbf2921739498d25f65267c78b0bba94c0c714aadbd7b781a722ff7bead386d2f3d3cec1b7b52e97db11b537978d81fee426f7943ec351e1ed7a9bcbc354d9934e91d1ec53e19ee6b8a58256366f383705e059304267678b49327a6fe3b17fbe73a3c8c1d7a0f2965b856d3e149bd6ab5cf848829b59fc383dca9e48cfab9f5f5f5289c1f89c5440e0f36a65a6ae4949fce1c8787d1bdb70b79ae754fcb7c00c1684ce0f0f43694ae1432a78b95d21598bce1712e9dd3bb2b76285373c3e3da73eb942533b6b85866b30d4fafea44f7be4b5d6ac986a7d36bae2d4df4dd4bad353c0a61fa638f506397d8a9e151bed6d94a9534ad86506673c886c3d279b767bcdbf8404dc393de89fb93fa324de642501ea3e1c9c4cbd743f54dc9ea6778b4d16228314cecd4b996d9543c4cccd0ba7de7a3a7f264c665787a591f13aed4c9b1b7c8f038ae7fe364cde9bbd3cce606b36a988c013df3665ffe2fa16d6e13313c6e2dd674993677ddaa994dce86c57fa5a34149c3240c8cb1f5d5ba4bb5861283413db5c79e93e25e29b3f9265f785a9552cf0eadce987881b5a9a7ceda2ee58bb80bca75538a5031420a576633b9f0b46cdf9dd0a9b614b5dbc2939872dfa92ce15bafaa85873d54ca892d462d2df7b2f0b8ff4546d5f09733f799cd0e9b8109169ef67656d54de6e6efaff0b45b8d68217e2f25659ad9442b3cb90dbdbd337f55785227ca84ea29d59cfe547876a1b70a9f7bfb66e753789ca642e7d452ebb95fa90c13293cb9382957cd1fa56c755178145afdecd37533f6ab41e169878a0b79b7f6c68f507d983c21b1ab44b4d4b26636550f13273cad99e25fbce9255d889af0603a94545b9414a8848fea34692047411003200802c198d72a0083130020281c1c91468301a964dcd6d61480044c5c5e7e3e2e2014c6c2914020128682511044711003300cc530100381144e5a8799001e4c5388a0e5b9ced0bbff383cb1dbf010399be84f6acea1a1faf999482be95389b5fbcf92ef957b455d23dcab02b19b913c1ab1259e7b66e7a58817ba9e5cf9fc0f3aa99776bc03549253229b0e6c0d03e3e5712480c51b9337b2dad549952477847979ba23adedaa24f4c608941a51dbd25b7ec7c32346a6c8d86b35b3a6f1e150ebecbfb6d306a6476fb8174bb16dca199d09901c14c83348444ec76f15f39775203d67e0f7a8b7387fe4b898c1a12be65196b6160ae876180070b2cafc61bab0d8726d81b124578b043181f3d4f269d8dbea166292087325b9eddfd73ad660621acadbee0586358f22861339ef6745220f3f0471cb84d8fc8708382365d72910c46377bb88d64c20481d4a284ea0641db80c7288443b295dd9d630b549ea2af8900fc731edd46ffc5b850c5fc09ba0a8dda4686c4a6ad424fe021a3c0d479694148845ce8f33965ddd04d430b9f125c8512e143707da13e308854f4397751289cc7109334755026e103b18359e8348e0a2728cd2e50ff417d9e62d424b183fa70240461979f53dcc2770162ff2c77136f13bfbcc0d6669266a92dfa5cd811b3f16970d7f7cdb12529f6915a8fcb47585f39860330d1bb48869c9acccc0939125a8384b858760e9342211d4f3f4938e9b2fd0f28c223ce4735cb2102c63ce2d0f3fd7ded05e95ded6f75a85bd562dc24905abc9d4c6b6bd17247a29aa065f82754b4a187ddd4fd87d4f8f09351d3d0e8c5040481615db1e01972e7a8c930b9792c83dcf7290428fd9c7937d82d10db14ef627c5b7dbe937020ea88011f1da751768e7ffb3caa38df1fe568494329ebb640a414e544470e1c07b3c43424991926eef8e626431c97379554c3f27e8290b9ea8c82d9654696c54e218c75da13564e7bd96dcc2698f2381a39848af468dd3a1ef98e380ef48af23303d3f918046ba8bfd2e09acd9d3d5ebfeb70b10672ff220bbfab9105cece1bf8b0533be8ecaa5b961aa4c4c6c5862ff179e152ceda0d37cec36568f7b47feb57ef322e85f38463b96fc676539271f3d71d93031ae271a3b7c8e3f6ab9525c7d22be8e1a4497553b948f89cdbe0bba09f6e5d8362b5b2aab9fa7c9479ba98aa16983814c5e6e9a501fcf8db91b739947e900e91a076c253575f8f895a7434374c13471f5756ff204b9af91ce4b2f03ed2bd58f28e20442f6fdff076834b858a3daba9c20d0fde00f2e6902b80a76ff078b0461567723c009695aa0b2ca98a61de7baa8bd5740eaef8a47b14e31b195ad8cba1f340f42c7c1282ac6ff65e97418db2e33b2959c3cfb9a524fcfa22a0209fe9885555bf3a72bffbdb69c7b51ada5783de748ad273ac4e686439ba477ed457088c2babc286cf55070541de3cf3c0588b398f51bb8d768037e924fdead4910e3bd4f05edc66ec96091e881f1a8125a970c0d6b93119f182e232e048f1f52caab0ce46d6072c18f1f3a0e687e663e1c9cec90b44e571ad0dd4c0a49f2e359a642cf6142bf0ce8262821ddc48aa5219b0e4c3e918773f0023a1ac0340eddb13546da63fbeb00ee5437c1c6bf530e656c38f0f1a7fcfd03fc49dfaedda821694ea2326a311f2aa254c354f2e608b3a12b69dc50f5966d8d5845439a340a4f903f6f28190b8615a830eebc8f9c8d7d781188303b5cffa9c0f3199a22e84ced7759a86c09d41d408fd41986536dd85b1b1df8d572262414a7e9153b5d09f2153b5d6bdf0af490a5c3a2b0d8e972961f76843b95cad3b3cad9b0faef2b31a9ee158c883318bf08d081963ccf31b46b664019c6bdb9a8943723a04f6646a691096a92ed3ec2f32d6568faa6a1db7b6ab1d3956b2d769ab53c6f343a9d497c621cb60234f1c43295db05655c581871afbfe1134a3c89fd3e17da878a223d1d524338150201eb6b1d9f09f408187692783a4397573e9971e18b8e7d2311a88822e2c1b791c90432e3bcbd5e3686c24b61f7f410afaaffb78858c472962cc16dc6e193d3314f77f0b08ce4fb89218d6908ac20d6a1cd9452c72118b827b3ef5d868db92e2fdc0ddff748fdaa117d120df98b2e96ad7941918b986c40f754325c21c6ee04794c09e3894b5d0ed5258c8858be358a5f12dffa13f5f2fa8354a857ca37561f678a67283d96ee4aebb86c2f3dbc44fc2a47f33b51842986389f62929f7d94e51dad695bd6ea4cf865f3559ea234bb04716e0a5e554d9864c889045a229bd6d7385f9006d6976dd1066cd048fb090174eefd7256d1aa43d0e4f0e8f82507b5170bcfb29c20074567af752d280605a35e021c6bcc81b3bd8733d258342b7389c78c88f2c72cf5551525e109e41219363a24d1c4cc05838dd0dfc9916048d455043354faf20804479000fe882176fcc246ec6c6c730992d0d32d6939e573e6af19d9f0a80a7fbeaf8d7ea1cdaac411c7c53c8f4fa5b20dd79560fb016208e39a7db3de4887e96ebd3d2c1b9027acfa1d6239bb9ec67366ff6ba8b32f6bea6c50d5383d2f6dcee3046f02090b914c5df2131fbc7ed26f480ef490344771f15e4f7d22e39a95d26e5963b8237eb0c200bf63341954c4b910588fd169345d59d328f86fd54b4bba3f256bf4a7d6ed8301372631a4976e77ac852020e461726f382a09a305e4885c631fa85393fb00d93d8636589db81ba9494d310593703045f94e9ff54e2e17dd1b095d44153532bb955df2b9736292f16d4b98cdded7f685016411465782c6590010e44cc3b4bec7a16a62d9934fe58cdb69cc5952272faa3dc6710c199131894fb326c193a3298c57f83b81da48b03c4ecaa5c8c89b61440c04b0c2394d27f4e9a50f04d0ac4ad9dcfb9e0413457f0e84c03d184dd36a88af68b097c68774806101abc70c0e9bff0652004293aa1e146468fe226f9e28ac6896bdda1290ed95881a478d3de884fdc7c4a804bba22d165f2e060b656afc93fdf7387a0f50f0994d30e890c945ff6d0e8b5543483b007a90a4073e022417057fcc2da6c209abd77ad9dae7b5e9f4bc50c60e6dfeeed7438a95c01e86141714a09822fce995e0279183c1539a648609f6d9b790623bd13e47e2debc57e5cf88ada20a62df07bbe1af4346a435c0b0fb52d3d3ff1dd57b8034f8b670600ef51adcd090ac69a006b354dab2376a553d68833c0e4a64b0252d548d037f014ebe08067a2195bd4d6734c198a49e72b1da676c98a2fca0b8c38f930fce697431552b9e6dfd99fda5164dc2b84200a3ed1f12321ef7595bb00bf0d5bba69d2e9351b697478d1dbd72f8ed82335324fa992b99e4a86f4788dec26742cd6de08be387c7a141bca176706cdbfa5d4f88cd8b49d4f9a0b7c9c85b936777577963b6eebdeb2228b714a49aff10b9f86d17200b4e76023eda0f1da024ceac650a065bfb3c0edbac6fbcb85cda2279fc09c2080381e007efbdb75b5609eaea160831d092586d0b126ee1681565f86968de574115312744f5cb4390c9b15f0c2d5ea7d72025e14019347f9dfb98d116a956510b069e576e68cbcd2e38737d01d3e83d12ca2b95190d40b433d5c6b45692c30fda4e98357b6bb334b1b7e1ec9e26ae067e2f08a70047c9eaae510671e7051da98cbc188e1e1787fd4e8c028e1dfb2d78876284a25a6566ee06831d3d6db8f446b0f3a5495f403394728a66e3c267b773214f8e17b96ce0d5675800f56e24e89e3542cae4c0f926a7b3b30d7704735929a9864d6a399cddf7408680681a1cc78744e146ba74ce002dd9fe643307c3fc7ac190ac201d9fda6f43996fdff48938e770e7a44121ae907ddc39ebf3946bbe0880a3ef0e3e2bc0990dc55f7f39da505574284651ac03512b7c3fb3cd59586ced06b8a7be83947112831ca640af21f104a16b50cbf51186dc983628a1b02c1922c038a67b68eac080831eddab34ece28319b37f3214f5bae88cf8277816c744ff3e0ca726e87a40e88f0fae40d36001e15da0b6cfda2676dd404ac8bf7085f2b0a447cd79ef75fd5f22a0869fe067e43b3d236c1062122ca50affa4bb36a9a93dcbf06625ba10596deeda2d44c448fa5c25a91662a849614fa1772acf0c18d307c94c568fe299a89a0022f306905adfaa53c33a1732b5c183cce40ba8a7217217c182a4c8dca93880415a4241558b7de16bda5cb3eeea033bb696d3f8597dd7e952a6e6f8c7f3401edf96b0aa430655030d6aaf26aa23fa36fdf0a33526026819bdea41f391af73d0538a2557d610da58085d129288cd4f76ac0981cde525fa44d2ca191ccbda1e440d3ea0c7f4c5711294be81d36b6845e7bd93088305f99192c065b40cd14a09f329eca577b9d2ce18dddfe1c83966340780341b292f0732a112dc886495e3bad52099f269eab49087e0f18f46064f8a2d978234581b44ccd6d564d8929f4e53bc7d8c10507474a5dca297721930ca889c6063189df7737163d2890615cd27811c8acbf69aa09b8c8505f1f61705d5dab9e062f12e449df37d77b2c1811eeca6b6b1bd1e672112d170aca452a0a053d45b24795a3e915f12d3e69d86e4d25fb5a14d94e6624287451d67d18d0a0c80b85e955865805efd80f01cb7f3b2c7a858f9a8af28feab797f4c90b0b973462edc7b6e66e725329f11f2466db24da962e8442cf73736e751d9d112a24e8edf92a92007d7c91eeea25c37e44aeb1e9f6715f8970ed91c2cb833c2fb04dab7bc5fe76b905d52766376a67448754976bbecdaec004ab75857cb0ecc6e96e9ca243b9c3b1dbb1977ca46f7550613db1d5dc705d3d1007f17e42f46889621fccd3c9bafb54a804adf073a68d484788fc7e2230a2daf21d1775978caba3183dd155ec4a9407c1af312acd9cf6d8d32932d24150a92861b48673d50cef85bdc04f185ece511d1bbd9e1760fa83d853081904bcee8c657228b5d79811ff0545b10ed6f109dd1586b9c6416eae550568a9cb841ab845974f6b4dddcd9712cd9e5caebbcf60f4201952fcd1043bff4fd4f0e6b401af79f7a2763e5f1b4becb59ccce65a9fea4c8037997072a60db4390d0a31999f11f021eb79f869a693b9a86ea43b826dd326ba3f2c1182d3bf5b024030ca110dd9f753f2b159ad6f6d05ac1219b0ec85ddfdd9b13676e710b4ea83a2983eef04e31f4c42d279b4df7f07f1957b85110b9f5d79cbdaf8c2eff3c07dd2862ce8030ff15af6350078efdcbd0242f38483b43599cb434003d3c56b3b10a46a9d4c011b1430d09534dca4e2af9cc7c4a9d043f7e4d705dbe3b23868a58d1007851e8b908a23618be33bb7d26d327801ad9b6a6c0b10f7485f075ac604e7e8dae920d3ce9d80953c22de19f693e815f4cb40b870dfe4cae63108bdb8ef2471f97798bbc4f0099650f37dfecf3dea9403ff8a3c7e57dbc06f910ae87f479b44039cb7edfa6fcb196bc5a6798a1320b000930439de541adc1419c0e5776d3dfd756a3199f2950abc4ee4ce7524607a81a3ed04424081247aa70c8584588328b72c56d1d23209dbfbb4882b5f247dbe94b072710e68614ac53f866cb2cc05ba7c83605e9f6e0db1662973ea0fb1a7487ae44a94daad3f23cd3a3d4c4e6b7bc090f4dd0f2a83d7c73aab0daea7e3791c2e517257d8608259c9420cac69b51f8634aa7ab837eabdb6707f5033d317214899844d6e4031f8606f34eab06c8aa75dd8a769a1da2ce9e40a3e32c4fa466fdb9d489bf4a51e7281572944ce375c5c199647ba71122072366fa9c223477d27933ddb44ab21bb31a6bdb00713066a71f9d5302cc84935ccd82932651ea9e3121a258328e4668231fa5926b2d38ac20e4888d6f57ba3c17e2c387b418d0ffc509f036369ce272bd2d7a141215aa22371e2f1a3bb4fd2135517d47f7bfacfa1a06448dd5e0e464cdd106e70ccdb353ef3e57c8fd1d015cb46cb3c5d2824065016136421d67d084218f68c202ae785823eba61fa492fe2ee22e2f390ce0aadf50661c301d042677afab72dd155d70269709a9cc742554f54b2d9d0b2153c283b9b5236ec930b1162a0b8ade9a7899b55189778258f86a361e3431991cf63bc2738aed09c7b450cc5f1b356c8f5d5c7300306436492491fce2b4368424784e39a04e3a09f99f02e41be94c25f399f7d296bd5ca42c30aaa20a9f34e35e6c59b15741583be6e63b74e886247ef7ff244e3591c3e83a95c7fc3cbfc232a9ab4df4e24c39029d35b8168771df9ae935f2e8480b968e0eba264a44a5af60ee4a3da0acc0cd1d8cb2953b995d5e89a3ae410bbde14efdc8edd1f9459053e2effe6d5587a1b8142197aa6eeaadd953729d5451dfe04cb7e7d5b86cb317d1506f7e6e822c59e72c2f3e322fe62e693f1dab3746bf71fda29d436e128fcb813890f0ae0085cd24293f66755aaac5454e4e8f22e1b53a072b6c700449be7413a4c99087f605d8f1620e9c4ac3753dfd586e99dd25415c6d53a5f7e3905504e62165a5447682bdc91cb4b443eb10fc09999736209f8243952acfcb814de92c19e550b03422f2a9643086509db1d828f37f8b68264071a0747ad1972fbe31974ea59e75fa34419740a2e8a192ed68c721a21321b4d0ed348bc8797cd1e750871f0de827d6e63098339be98f1214328376cea7eba816b1b0c3cc0e100efe16b309c11aae935bb77ac9c1679a34458b0d6d8d1fc0e41ec16bbd82bc8bc00abc6009ff329c39bbbfaa872815bb89f69be8941d95c42cc09d8448d60ba0610f28347f0e05ff9bb05af28530df87402f3f26e864d7cbc6d90b119758d1db82f82b488f1a0776f0e159e7f8f02ec04977c6690201e4c7072cc9a67ad6ca50d9c13d79d820c8eeaa1b1fdcd46f290d44bedfe3dd4ceb8fe3fe8c813051434e566854f0d2073cacbfe058626fc1bbbbd910e62e6bc28bd7c75e38fcfbc0b1ac12b4aa464996f6e8db2095337793096561ef508726ef48809838e40a019d3d8cfe441b9abbab8d58aeee09f97f51d68f1ebf987bc00bfbff01f094532f92c97a4c960726bc531a9fdf0aeee74b7c10edfeca95778fa6307fccedfbf34a64947ecdf379302e1ed83158efe66a7a05ab008c69e419b67c8c3e2a3c299489350e8478a781b70960301ccc52915ea98cb3c7c013de53306b3ea6fb414bdc8a5e90ae1ef00486706423cfe8d0b0e202926d3f261e7a72ec4e24cdcbd32fcedba05d4680f57565c5c8b1d6e83d11e244fce4e8e5189ea8c3de1299a1533c2235d534fd4e569846ba2d7a35e30cdeea5b5fa028022238d54382814fdd8e16543cb5bf0834ceab9daedabf5dce8b610a430d9674285da69602bc7a8b98deb5cf8d1904424c6b5f72b6d512f87ceebc09ad3d35a8a8cbce5a45945d9cdb1313e9c519787a1687bdd998d4b46710e26e044ee9fccc48949caae78a904264e330bc4dc89b27c572f3b0d24642e2a404e4a97e9578d726b07bc027ada43574af0419c8d79a3df7486a52ca51da8f661d27226214f5195b86ca6837be0827c1e51b7ad723283ad824c9c665b980c26c9bb10d02fa7169f33ae056b6bc6d2cc27af77910ea7e97e4630c482253515b9ec7d3e579a22ba86d9fbf3f5d503bb7249b372533d5303513477028c2b666c87342368b732b92ad48dfb4025e69a434b6ae1f24300b088ce73820d64420fac989acc84d30ccf6b85a98a53b8c53cb0b0dca86393e12d7c567fd0c22db9ae4d9768840c0d4628881121c810bc17478da5a121d46c1b84a1b6ba596fd6d4ab664eac15af8dffc9061205e52bc49b6ecf3438ec4f72783d05a9042729eee7d485932ea397474f3b8a1acc4ab34f1eb1d896d607d233cc278e45f1cde2c0a8d574e01f12a6c52932480124d0efd855f77060533585d34218c0ca2c867455d22e8a7a8382ac1da6689262db031cf7f89a3d81f85b1252ae1a027b7fec5daf2f14856436a3514ed6868c7d42d45aad032e43d4e04e72a4b3315bbe095d8210b25f37aab625dd18b4d213ed5289dae0ae07fab6e00711489ec835afe4687f006a43c64bb9dd92e6bf77aa2f9bbbb79ab55587313528cd7d0ce9db5e7c32ac0f896b155b67d60d06c9854c1186ecb846c186687b2b34f154d02798ad5309e48169159e0c23044aa3f2b277b2451e91f541381a6648d2cf21bd55df96d28f6b33532426ee7365b8eb79dac920ddcaadb5c8e753b3f162db9df5da9cac1c99c92e14ea14140fe6e2f8aa9db23b203a70d7797ada7ec4f32aaa53180a61b93327c4a5603083352322625908028c6bd988626a50309b038192b8d91019727c8d1e81a2e61380c0fc6acf20adaf7f2a4ae312e97b4b9fc04bd712f443db7e774738c49a2bfa16ef4257dbaa6f8edefa3fced348b4d7286f36487787b623fa7eabe00d517e9107209d6eeda96dab4a72c4ae3532660feaf83fc8422bb2587e23e3220a95432a5188de1087b635c522242de678d25e9f118671de27726a98eee885cf5d4313726ba6038335cdfefb89a420e72e12df0b413099d7b4b301c0f5078081119ff2d48d4601c08ad3c0d1e7244a70096b6065376511d041725e5ec331c8e2a7a2648a20bb5630cb30cc683be6350c26ed8caf8d6dbb057175bb9fafa49d2a23bf542eb77abdaef202fc702330895cd2715ddeea1d1bd5eb40182e32eb605f6b48b2fe4e0542d7c7481cd936f3f5632125509d33d23b55dc1a4607cb639b5818e0a03902e6baefb9dfbfe072f79686842b47c6ce0c7b0d4053186040dc14816446c81372ffb003ab8322314e96c103c20d596f1fa0bf0455ce81baca7dd1256aabe876d2baefa820e459c79e59bcda811112a826bb2ba3d9fd0fc7de036ce4738c0e465fec2dc1aaa0c8d23459e938e47eae51e1a1f364bd9984ef0c5340303fd87e0185c207d0decae051aae0c59e9b98a3ece765178f1400c338f443cc1228b54a12d805821a81613e5a6d91d13e72cd940b1601d363f5c6d78d165368ac9dc8522d17ca2992a1efb2e698e01bdb031b48a58210eec418a68697fbdc80854097837091c04daa9b7886c3343fdd9e0d8e303ad34a2e7fe3b3927090bd806b541ce5b90513f9c2e356bc179fb0f73eccf1f130fd972ec8abd8c1f18dbc0e2d7bcdd60ce7987207e9027db6098f9922ebadfba33dc09985e0c2d36002ea3040f2a6e3e344af953d9525655833b1bb7881888099dab3b225d27303a489247085545295aceafb45815e20c2ca5cf585a4d91e7802ab645602fe0fd0cc755e5e3091d3ba196c038a29e2d0ab0c0c8e3281e42cbbc365064dd4047262800327b986d8a074792d357ef9997a461873b135312b0f97d090bd08103181c99ae0cdab82dea62922226ff1d4564916c79b9457564d066db8c13bd25ce188f4249dcf995c209a8c86e025d8a4d7eb2de05bbdc7ab6e6bafcbe8c33081f869412ad629b6a31d1070f427340916abedc0f2a44db8df23193aec915f7cc1633a68f5f6f6551fef3eb4d4da6cc5abdc0f4e133594f070f8d5806e8b947295132dc93faa29874b7e1a648711f60ed03f3eac02bf075050c69c43ae007e442f3766cec747f1f873dd51f4c130b5459a2ab178fcd5b325cc1404451b22d9f5ef8a59d4329c05aa2c3c439e8d44bfbd55a568ed873cea159ef7c30e83631d4dfc81f13043e4bd1563caf6ea653c2b8e0fa15409d147f35e02e29771f6676ee4855269cfdf4e03f48ba08e1b46c488ba0ffc32cec910b6d483775ce8b979e74f1c00fa0a6caa49bc8c7e122f8ead2959643fd1e55baa160c904f6e7f100d9406abb30c7e1d1c7b35279c146ca3ec4eeb7cb37101a816ce3551ce9d46c3b210dee481432417a64927b93d9c055dc05c48d004e0f9ba8799654d99a20c5c14ced79cccf8c70389023e9b9ee4131e89c7355141e77e2bc017461df17cf45aa230d45711d5d516f66941e4b47af018d29f71e879295645e6dc3e4eb797e56092a5645542fa52c0c086babdf720e7d7d41fb09cafa69e77b984db4ed0b7d64adfa7c7e6a3f1781c4dfc98e78042ba8a52e859d65e3405d3b19afe194f5fba2886fd9e70a8defd4d692990c56b54966906d715a49fab02a3a9b93ef0a9473e6a55c55aa27cf14d394969ea316972a68738e568c2a243d452dc428c34e382d6b55a6e6d4927199342942ed90c8ed9fd3a0e3bd4e8d8e95f435f8d6df7325ce1d110cd5f00f65a3a772bfdf02152d44e53e4933bee273c7353c824f4a498552b4345351a2723e5cd6b075dc5e02a0b56d61ff6ec1f80f2f8c80ff2943a19d62d1e2fdd9c3b5a2ed5258a62da21311717f15669e40e8b2bca0ea4af0506315fa39c8aee6772f3f351491ab74fb7b901359c9e40d484606f4a764e21f1696e329140ae0406971efd12260f83b25f7a4641868e24324b521567946c5b74f6b954bf906948135d078dc8818ecc30688a37f0c6e118639a60dd1a21d00011f79a342e3574d05abf3c9e0766d290afc68219c8e01fce565d27e699ec26626973116ffb5e07b3ade0bf512c4565e18ab300c1a31c084a0857ee64c7ca0a2ea826bf2e17789825d1aa36956cbf0bea487097686833fccadea2f7435cbd5065e14afcf555e182abf789fad779842ddc98eb6457e1210a3cd5e6b244137fa8a5b8111d8e43ac2193843fd58c83435c2867eb884967e1feee461b5e5d2352ed87ee9079e5b2c09592522135fcc1569ad49737b30d4abcf0b1c144aa50b354daea5dd82539d6fe304dab47108426893d38cd3a033295071d7b4679a9cbf038f39b3e0a5e03055cd643e9cc72348dc955fd3a9a53d5a51b5b9338da00272fd60668815c9575a878acc56f32df3bf64eef4be0e21891df285276a9892ba997f0870d308564563e25d6c7654c30772ef9b60d4efe26f7081c38064a4fe7a6964ea7fc6795347ec489876f14a1a2b3385f12e8fe8515c36a63fae36fa32c4b20510369a9ccf3c24f14c312cd31181adc711c9433d87197d1556cc466efc7acf74a6f82788eb3fc8e81d97a3432b79b4daba5d64ac6d90d4d40ebc96ac714ae393d733cf8c6cf29989094b0808d6905e0b2f55680ded01a4d09e927c06cf66885f9e61a11af0d5f4b461b45371b47969a32eb7f936bd22c83405ab4af8e78f39015aef5ab5cabd17440e673698f68a60cf2653407f22bfde0210cd804d7ad25433829eb8934f362e7db0702f4fc5fa098b0b328752e7d7fce1d4c3b0b15a4befa75bdf709e02d5e0e40ea5a932231908bf01133ff73921982e2b226f12b7bbf91d7c22b8c104ec6db4c6a80b6228d0420159ef01d3105f216595d913e88d238675da1301aadbcca9a6afe54c883af6fa88b942d97fb6a5fca8f44e664b6b15baa7ee94f253e99ecc96b2ea39677296a57658146c7c408dee8dce6c2af8a3e1b5b669985de72f62d8f79ca05c8cd562daf98e457afae9143e4d25b968e8ed4f9d19d9c91a59ccad5930b5ebbdc6578afda138c00a855addc627f245ac5572eea5a6c38eb12a0b65ac0e23f732c472b1415e0ec217770f9b2f0127424551d8a4d04cb1ab00dde198a675848a0fcafaeeddb234b3b516513890ede974210039bc70a6136629ea6a465075dc68b01bad6ad086dc668edb94ea921d074a8192b9266c4ea924fc587dbb2402272dcf58344a4d4db288fabe7bb1392a83580a94c2561939e6e9b8fbbd66746b67e512b3d2621fc33661d2102452b44f353b20e93137353492d44491d824e6c57d8446f9f0d31195c7769886bea98324ff7af740cc691d9c4fda793c75ec9f2319b00089aebd4c08fa0dfc0bcea14511fd33a307517cba534ab8784904adb403ba702ce6420ea236a8dd47655e70da8366b6e32b624541b2128824f9d079062215e73885148ff3b028e036178fc5e04126667af8dee4cd7b6a4b8814eeb27a4ad55a71c1e02a3f4d22b4f15ff7a5ec9b081ee703a7b012f83f9af6e28a1babf4ffa4fcdbfa2be485f237c18bf14c75e537fe1ea5587ed63d59050f967862ec8cacf086965cc4a607a48ac63de95666adb7cbc436c5319ac874bd5f769c66c179d84b25fcd34c74e09e6090e253f038ccb3a271b5823dc0da14857719b7dcd92e39a1594b242538848af102fa1feeddcbff16a81e4e4c406185a2ed8af711f2a2441f490900c8aaea89dfb7f8986e4e2a268c6fd45afa2954128263de6252b91cc5f8ad69c345db3062e7f99c82d9a838cf84cc6d54c37707c930649ae90f9e7a088be3233013d5cb2ce993d8c7e5339243a6c61438dafc5bea3a090c0788013b4d21c074c1fdc749a9f41e1c1ba217e33e958c6757f594a710bffa07fdf0884b7f5ed1119f58732104236ed6ec39c3a189515d29ae231593eea5ee668177ba03eb5cdc7cba687a05954390e556df7f2c0073f33245d6d279c3f3cd6f264be1cea6510ddd5499b3cc6b1da916ef48df5126d26dc3d2abdd026e65b061e3bd3744ee5fa1803489079a757aee860401f3cca09d9ea4e09a4fd8a1ebc9efb1c6f4aefd0002e67b68c7c96e299bd245927cc5d9792e9e3123beb569d6d532f819c10b952188f4debdf789d87af05278cc9e2f9ef255a4d47025eeac20b68427d86d62a33d9d01624e9eb1b64013920b8b7f1daf74379f922a668116c3f248c39e48cbde5b1ce645d81e220646422449f8504df33d34c1088eda0248a65472bd9e9ad71a022de7c8a5afe32d991c643a3ccaa97b87294bff65d166c460943b2db91828088f56a0be9214b535c60b60156185e98081cf7ad854df427b3937d40cea827360ac6b088d65368c7ac81f0781bc968322c74b115b0b436a5dba949696e8629277a4324e9598d5c7dedab4a573e86245112c91c5b37134a7e1654bbe6427b8b320e6ea40e31ff4b669496495e1fe8a908de54f80c47d0ea43948688d7151a4ea1005e718818641f733968f1d9c72e021b7d11a9fce441355aa13ce27e019ae4aa638665c03e16b4a9e73d4dba2cde088c3fa2171b6ce7408d37928d7546added9a74211672208614553683dfb06d4d94981c2ddcbd235e207bd848954574d4490131b10f2cbbdb9577160b0a8c813d957ffc3a29969423bfe87e1f904bd601bea8ad08987b4f406d9ac0480ffa19846754e21bfe6914e2c10e8d28ba5bb1a11d1489bbb89a765d763c12e855ce65a0b5d8a9a9c7cca12a117afbeb2d48848b7abebc5524450ea4fbf720a65aad27d417bb019e17cd33789e8d88c7a7834f83df4cb5935f263d404dd524ab53657324f705fb810cb8083b5b349cbb593bdf4420f1fb8ec5c126e9937760ccb3433bb045f25ab0e3513bf9615f32e9f88b0eb678d8a8ae6cd610277b7cfe139c3edb35fd4eaf323ecb7eaca1a9400f6da2ab02f0852b0f77f7ec560d72a94f49f709cb6f37f2323d79f692151f3bf30e7a599c6d2cbce036f92ab6bac86f9cfe985cc27e6a139ba06e4db35d92cb299a36289e464cac47950435aee8cdda436f197f9fadc3be1cba542b4ce62a41abdc5a20d19f352a1200b21f1341714a6814a1661061080742a12acc84b9a352b91a68d8320028f0e8e4fa2563f33cb80cc61de244c8815f7405428b3b7d184b0610efe56f02809c89b2f6c35eed638e30a5eeb29c7c5cfabbee01e9a3c5db1510fef8d0212910ff8d683b371765fe8d0152d5a884dc509c976b6ca5514d0953a52519858db230f782ad5086c2de71ed63c9ed103fa6aad5efb6d672b1beaf48db55122aab8d506d4c1b4c5b1420c0b3ff0a63b03f107b0127cf7855f5138d0cff212b38c4a5e836e0bd710fc27fd2f64c3af2927fc5121c3c7b6852bdebf409d2a6a198a9ce0f17f94da158f11b3cc375ea3003ed023c72bebce2d8b529badde3df62a7e3b7611ce8b4f266f547bfee2a108eb51696163fb7404dd1e00206717680bd0450b358e0443f323a231e3648b4843dfaf561d1f40b316853985e0e7e6b6b183a883e78b6fe052f7353de78497cfcdd1bfdc80dbd680b8dc34cf7b95c0376f23b268d2a8dd520c64862df0de08ee7f381d3900bc3b8faac11b44dd287220a7ce16d62389a83453f90d3255a3d889a24411fc049137c50571500d08f473d0f0780775c500607188b44a8840a480fe9da92679fd00ea08f8a03800f84cc81945a0f813dfbc90dd2d94ce40d0e74f54dd2150cc349ba66fa4dd28d3081d3da604162b707f01e237092d01c97a1e36af326e9ba0e4ed2ef368033134ed29115601bc3493af9022cd1e124e1ed558af9243ac1f677842f00161fc3b23849d76f8c93942d12dfa2065ffa4ed8384967552e15519195301db5408e5d1558671586bde885c07c9afa957a717bbc214ed2b40baa65f688cc942ee9b8d6bc9a6d4c824e92860fce896acc498a99a3c102afd37dd003d2c6297b55fd759b7034eed4d1249d846bfa1df3c0b5f15741c3c0298ea59388a8d732495facadc21279968bbf7aec041ef75a19fae5b52572c48b92980f4f6d64ace44bcff9917e3d14977880686307eae0d475251dfe3ee8fee6d00db15eddf262f85e5e1dcc3738afff3a0d1fea23493ad1fa622a4f7b2441c3c60f567dd5020f2034b3cf57be73f7237f7793fb9737868e3c614c8f0d7a5d7e57e310da3d3b5e0a30ec8028f4a910bd950f401b9b138f839a3fe996f2c8869c95dc4c3fc4cce3a6833cdbae2bbbf666e6094c1d3a4f243dc7ac3351b5a35a6b5e886bd0733b87b17418476b62cda792293ea20b0f126f42c80a5002f9f3f6913b38847a18d5922a386047c0cc305960c52d9993edc3ef76bd7d1667461e61340038795340180658e1bcdfca6cef83e3fb8ef7e1c46237ef45347db9f3f213b1ed71000cb1100a84d1165444d170035b142c2fecf4cac5df645021bb89e58cada71090b1fdca50bbe65a8fc5e081f1c6abec82f2fdc7fbcef49f026ed3e37cd6f3dc5c6afb1f62373ddc401d72ad4e567109a33d7dd8a132decfdeae094b9bc7ab727118d1a5eda41dc9782ca76d3876639d664095273d94f2632d1b6d6a4697dc105d9895df8a6f48563c1e76fa5b7fbfeabec5922983c3f2c085167af7a42e113b0654a869e7ea2ecd3ae5b8d038ebe2f0f29eb75aa811ca3437df9472e5d7dc5ff759050b34b525b610c605a7febc4045bce3bd1043348e1678d11e510f17513fca5a853ffe8f682e4aab33d1fbdb0dbb2c9afbbb7b7c2935b679cf292c6f0f03c7856ff2e530acf9a861f30f2bd232d42b3c27baee2cb7d9b45ca0768a61b8902712e06ed1e65cd00e912f43a61ee76e1ac3452a8b61dbaa37efbed3e527c4068f85ab7d90b21a79f54cd9eabb9677152fbc7b62c0dbfeb5b63b105310c48efb1ea855ef1d476bd9e657ab59e0389bdc9101c21963570772d8aa46684cac41a76de25279bf181eb35f5b6eb2904c783e2be599a9fb29eb2c8caa252ee494ea5f4caba60b866ab0651a4b0a29e38398d08fcbc4e941e3cd58e1a529559233d53de7231c7f91cb0ee262afe4040407ccae06328722d736f99f78dae8ef6ae6fe6e060507700833ed4ffe70e983e96a63c846ece7ae3635a39e21f818122082a8fdbf01591c6c873c8da5b6d79738c9b8e3bd506667c98bf5f008b21edbb154b62703d725dffbcdb89e4d237540a3f90a113bf946af8dfa2652447001093ed94fe62e2a69b2e9abc1d2db3014d95bc3852e0ddfeaf51ac366dfc8fdbc26612453bff09e38e7813e7172b0b3fbd794ee7195c5874376e6eb2c6de7018e5a2b382bbaa3f60cd98c87a3f738f63998e73ddb0e7435446fd7385d65bf2711dcfc207f4ebedafcafb60ecd1e634271f8bc46f42f68f621c4793a3609b96686f74ed8059cfbc7b837eedf8777f99d3361fb23ce21a03917c3c0792afa6a8ac9523da2393fc2aae5508e859574bf879df37b73dff02f59d9ab3d6cb7dada8a316be5174e5a7b44cfee200f08bc8ff66849580fcb71cb62bee95cf7fc79112c6dcffbdde52d262b4f0c9c528acdd4c012f39b5a9e7ba9ff49842acde3ecb5a67ba4e8f90e95bae9f055be881a6f243e8ca56612df6f151b1045a5e8043287cb786f4a72ca627a72d517c8856a2cb43b6b0517880bbe6473cc69f1b0e0b829034b91603a3e4a6f4a2fc5559da83197a0144680e342e160750d1f6bfaaab59d3d448bd2b8317298d9c02431df2b6c17df6163b54fadb6933b442934572a90d5dcce7dca147bbc9792c26812c546ca8041626191e02aada7557ab58ddd2ab451c9d8384ad8c8689828ef2d628fd5b5b4b2a7aeb14b392316322b8b2417190db5f2836df45ea9955676eb347127a5c14469611373a2a2a69738758edfca9a32abe3ce65e35a46e0f6f9b6e968cb97cd22d8b4bb06ce1a79aa4989dac50e76ec071ef9b122dee5a24394c8abd2245f37aca1923e91c6bd3fea0c057f5731cdfdb23542ba4b89c8278f56a1319faa405fdd3a828c7b2f95f8c9de2e349977c9e8cb738e10913715925e6fda2241be2a2b53904be7a35a437b3c4171ce6f4ac4ec59c2fe307d6663f09d0feb8fdda6beb310116121953fa1b76e44d6f507b2bc00d0791cb3d4b5d293a8c806e6366ac4a283e277cd72c64be12836bdf6c423185a936aced8fabb0c3447c5fee115e740fcabbc8b2302600f9af8a7e755c62d3675d72407201f72a4793c5d97d3b0d93953f3ab34237815399b93ff24942fb5c4afc50138cd6867615ea5f6b8060ff276688aef158508eab6b74e772084f7a9de2035fc088a4d03a921a789ca51525aed16f14b4dc942ef0d8c99b3a3018424da70c72ed7b6272710b4eed45f46483326dc359d0ea3529a683350f5cc0a7e8cd88ca725934fc41440186ccca6722b57a39999e9122064d3ed13200ad825657173029d5b94d99460792fe70874377af1101250f384243b55c9219786bc5137b971845eca1727810b4f001f09e5835b78129c651fbb6bcd238e6d7c57f017b5fe697a4afeb3e311e773f3360c01e5e623a953e59fdd79ad5e88f445ccb4770167893c8770ebb645d05ca25221a8f47c77f51cc11c92204b917fec5a668cd1ddf0c2f4cf29e37171904befc3ae676da8c5b6f979b533166472fb143d908a3afb9af383024cdb4f5798b3ad148dc043a64f85f087a4cbb95a51cc5889833caf28ffad477e7887fe94c66ff59c869c559a3054e5d17610ae35df981f27c005bbdb0d41ae138609388fa2a72c30975a9daf640bfdda145ac918a83706bdb271fa1a14fb440758f0304709d31886e8a75d1a42c14c90288ddbbeea42cb2f59e7a05bcf2f04c7df6ed5f5d96277772ae7b1846ef2987b55fd101b89fba71ff8bcd7b7aaa4a6a3c13707c57a09c118b543cddaf94bfbdb4bc077c1b94fc5cce6e842d0fd28d4063caf56189c683423df5a0c40e358bc069072c3d9f66ea543507748c5e7b877582851d6f10e3402319d0ef5bd69aab82fe602f13a051caf5a53afc7387f0ca69efd92dde33cd60ec5c003810f8af33d51b7696778bf91369bcdde3007836fec2280debcc6089cbff562b58b64f2c02a6d36026db2cf6b58f3630d9b7f5f913987f53a542ac2ba057a313542faab50d3e58fc69fbb03a916a1973f462bd4de485f18e207e1fc91628a915a80bc846b31ec91d61e9ea705ee223b9aaf5a932b6bc2fb4c00cf21a5ad6d8ba0493c73255685eb1a6fd5174318c70eb453250054efc5c642bfc6b04aa168b0f1936d357f80634fd5cd94718f1bd919932efb84b330cfa142e512c3b1b024ebe0b5d40695d62d02ea6cdf0fde9ffe8e13d29aaef8ac90518c0987a849e04955517254274f098147c9610c03f45d32da2ea5b49c5bce15ca25f0abf11c6f9ba3fcdd7c08bfd376778b05be5013cab14f4b9dd11f5edae4e73a904a9c8495cd1aa1d9baa79b3692528dbe84962e45becdb2e24f45753ba155306b1108eb121b51db36930bbe34f200f2b123ad96e7a38c081b4857fc9203bcfab7d9e551a8dc2a7169d314bb57e674393f28dae320a654791ba60f9fe4be229c8e10b8f7422579e4e1425524004c5b066daf13ce42f96c8724c5af3c916b384b7ddef0ece6dd5338150074fcf4467a8bfff45ccc7d24c5a32b8e11ae08da7ee26247de9354f9db087b3dfb5abbaeac8c0ab48fa6d404691eee0d2c0dc3da79f40bd386e95dcfa591b4d3196b84e0b84cadf03191b45b22d3dfc09cfee0df904502821de90b6482aaca9a3f35870ee259868dcdfa468a9191d69c17e3e1b85b65ca12820118ce83717d3ade54861b08023bc874e6b15750ae640891f5023e928ce92aeb2c83b82a00fd5d8857864641b6432797e3840229fec07079bc74813fed1d64354e2d9055dc28a3e32d9c533ea99f450a2f8bf7b4e2732e132e77a72602eb8f5e353b34c8a88827b010ce03aa3ea60bad63eaab10caceec88af27af2baa815883cd5187c686432f472804728f0568d98df599d3007ced9e81837cb1668fd94425380e221eda9f4c49dceaa314179a1e802d4b145bc8618d33877bc1ba2560ca65d97c113f9f4f96c55dc8820c2f74032f00071fa1544dbfecb5978b9bffba986ece0c2efaa973db7b9c8356ce441b9e8460609023d59d802e4a53c803553613c962f013eeec30f52467a1cfad166263b8bd94d23067a17488b7f7515ec9caec6dd9fa20c0f900c0797723bc286f67a3a4ac7690c46e7cac866562c7488ddf5ce64841ef11daa2188f134cd1464814b1214c78b43484396e5075ee133837829f290bc9dc1b9e47b4004463ed3b3dc033bd729aa08a9bf917c69e6f3b4a9f33fff4b230a03fb31bd5480352e95431630e284d758f3c03e38f302cafa62cc7f45b26e9ba412f9267b0ef8eb0d30725992d227d5bc0f0c6b53b27ee3370261be0f9fb7509efe28772c9e1138037d8512d274e57b22459a2a03298cafc08c5079770fc6381345b374fc81a47b8b2c677147e9357ee62189c8e298a6a60f26ac3a93e9941d362a634e58936afc1c0486911023e057c56162bd7bd85ad41028e5cc41d0b3750b0a6d001f3ffffffffffffffffffe305ff8da9350bd4b62fa54c2539c4ea4901d9814b29a594524a625091dda9510081d357818906f52a0b1c0b850aacfac18492247568d4d8fa2d421ee981be48cbc0c712b0afd5aaabcebdd7abd5acce3463a2a7d0bdf94309e5d869553b08b30eeff7133e9250d660a7a3d3c88d498da0f08184d28ba636797a4c1ed5f218c378d147f83842b9245162f6f84128f9361f4628aec9370de2c4c6d4a322944f8d1a1199f12628f90711ca2df64187feb0e76a7f0ca1a073ec596e2741c6b91f4228ff2725749efe4927a60a3e825012d4d5892d624fbc8b3e8050fc90aeaa31985615d9031f3f606bb3edb4f632dd5d4d7cb4a6cf8fbebb37f9f041b9b4983a31f1ae49591f3d2827ed419430ade141d9e2e3cbbd87bc09f90e8ab93e43bd0839f7ec4307e5d4df2565509fd65e2e0a3af3c8d89d4109f2640ff262062e4a1f7783a79defe7a08ed16309336e51fca83da65f5cb38e0e211d6394a00a336c51ee127d4e5c8e95e6b0da1966d4a2d46bda1da446392f8f16e52e79a74b98a424317a35d874a0f5d891c38b3176f060c62c4ad76eb2e896922f99a69da08b19b228289df73d87fc3f494b6698118bc29afdb59e6d8e9ede8245594f5242d5bd9e7cda7b45514d9ad9106ac36b9a5da4892122922606a6a161862bca3b763a87d2bc5e92588f19ad28998c3974e8f5d24f25ac28782859cdadfa648c76c62aca9e2d4e9f6879faeb9d1bc8060644446eb9304315a5caa0a367ba4e8f494a444444648c1e222263f4b85494c460f623b4c467293120cc404571b6bc3fc961e2c71234e314e7139d9932b38b5de9801264c0c68e12cc30453978277dd51427cbf93b8a8888d9816694a2ec26a3aba48adc4ffdad600629ca967aa55fcdc4d31d9d01c271b6b73346518c634a8fcaab8c2739b223c7c80ccc8e911ee80bde19a228e6d0385fd2d34f10322899a96d28ca49ce9bf1bb1c312dcd004549ead17a35a95f4ad26d61c6278a5f23f36f55ec7b8e01c30c4f147ff3e44e67f3cc8ce4e8719672e4d8e1c5716046274a7eb259654ede896bea81be680f80318313a5be18a1d4c8e456f2dd44490751be7d3afb2faa26ca312f940c3297fd9e3013856b378f9dc4cc5bbf61a21862d276899f4ac97acdb8c42a7a9492492a1527a7c20c4b74b2c4a634a5496fb93da31206f1b650d27b435d66b6a3870e35cca044e94d76b8768eb1bb4fa2f0a763bf8c2a6dc442314312a58d97dd9893772ca1f502470e1b35b001868d1e3a429036e289199128bc9b24474936ce80444195207fdb275682198f2896ffc63aa97711cc7044f97a55e39b6c4c92e48591d803331a51f03325c8584a8cb915ef0c4614e4d5933c23a4ee891af38c4514f4fe46a88c159e7f4e780e2841067084c00421288107b410331451be0fd24d7d4753f1a24494b554ec89a97ed9a84144498e2a2689692be93b93a007e261851987b8f5b6732a39e885091266182299c48f59db1935f62e44f9f3c924de7db052a2448852aba8aecff1e4d47d1a4459dc936849bb20ca19fb6de4a98f1c88627dac0b114da72603a22484879bad76bb7ee90fe53a0f9dbfa9f359c70fc5b5132adbe5e39d491f8af7da252839c56a7d880f65ff24ac9e3c4ac973da433168dcde6c7fb5ac87927f701393d89edf9e3c9474f99f8e6c97b8f7e0a1a4b1a34a5a4f579f3b1446de85dfe772bf8e1dca37aa4a49924ed7a1289a367f4ff0e95092447d934b75959caa9f437174149d7a82d424a7891cca3ddad44db40dbf328943d1bdf3993cede1505c8f9abf9d94db66c91b0ab24d2c31ed1cb356e386923ca6c4c98c76bacbb4a1a4f79625462b3399c386e2f9e97b77a59ea4c4d7500eefa1aa368dd7dcae86624ebfa374c790fd6aa7a1a827497fb27d7f4e66a3a17c625d8dd8f24c26c919cabb49dcce2746654dcc50b6934b0ed1eb13ddcb508e150d25952428f32c93a1a02733c7111e1762e5319446e3bdc84df1bd273194c4dbfaf4ed398ceec3504e26e63841698db272c150142508db12e37ea1a0ef63671c0b31a2a35e706e2bad3cc4553cd6f3e30435259358d25f06a330a30bc59324b9944d3d5d3d17caa54a2e4f689dfe5db750d269d46375bffc66550be5bcaa11bb0feb13d52c1476f48a27e1a2b33dc542c9d7bbd7e45aa8bbf40aa5cc645792dc2763a7b442397dcc68582735b9ce2a14b5378a3639c9cb9a910ac518ee277b69ac3e1d4ea1bc319d3efb543fc9432994d396db8dc9feb9e18b42f1c46aff097192b0e541a1a0a91b4c959e7a8ef78452f57638257e1efb3a27944a899f3bc4f327555d138a63d2679334d3d549624239cbb47b9edc2643b48462879a5135624a68df94d00953124ab2f17c7b3b644d24944a7ad437b9eb25b423147406913b49c6eb5099114ae669329328e755b245282941e9eccb3ba924b56ab089c125f08003789c80ed0233885012e3f2c1841b8d813a306308c59cb762d38c8c304308c53a498e25868f86d63077302308a5766d4f9ad7e48778fa0633805052257a8cd3a394b4ebfca0a03566aa93a3c9a1323683193e2889e84d6392346b19790fcaa3614c06edf82d629dc183820acf7136b3a4e6ba25f8c08c1d143b8a92d3897fd11d634b83193a2869f79234ddcc09a6b5c00578c8c845b9ee3f08751e279a88b828a66c1575627ff4936e519257e43d557cd8dcdba2a0ff4f50fba3f309f5ec56462dca37dbb272a2c4b38368511657cbb0e9417437627adc40474bc62c30214316326251f23bd72d1d4cee6b0916c59874c9a5635e514ed7932aba4af2f8619e2bca266e84f024786550d93b21a3158571138ffb8c7b400e3258511e351ee29d7fb22504858c555842b7688ebfc91a6cad0819aa2885e66c93eb93ca4f5d4d3cebc20155d00d1d615042462a92a94bac0d625a03840c54ec39c94176d0cb384571d5fbfd4f94d43b5a9b424b513ed3513c3b7d7cc8510db62e5a06298a556a1ac3693695165f41c6284a7a4c9c7dc7f4321a248ad29fe8e8e9242944c98f0a324251be4f2793123bc99724074539063731068d955e57956541c6274a23b75e64903717f3a64086278a9661d4a787072bed844046278afbeb5d32a852f95633270a52b32849e8964e3ac9d94451b497d97e283168d835d8fa0b199a286df41876c42741ce23692023132652323051cc25271944b3b6046da01e3970dc8921e312a5cc37417814ed3931aec1c6c312254dd36592be7bea6ec8a844e9fefcc22e4c6ab095c14006250a72a64c906bf2c9266912c5327964e8b73d2ffb48226bd9758fb3b73439799372b7d1c48369b3070e2406d2489447aaa9f424892766fe2151ccd13f6bd276f288926fbe8f25694eeb1376043a08791af39a67244f006a90d18872eb5d998a12ada14d198c28b8aca9c7c320216311a53dfdfbbfcd1cfdda0c38a00b0760a00b075ca00b45944cc73254575db89f12511294b0c17653eba90c21a23c9ad25427fd10a50f7f3d2274c72eb93644394bcedd93319b46890b6132086122320651dcfba47f83d092e346100551bee14ecea08c409473f5e43ffd5aff7f02a2a8361e94609db294ace51fcad6ee6fa33df38d34f9a11c3b0927c9ec8f6998fa5090d7e92bb497d49cf47c28f968debc50929acffe1e8a318752a2995dc7445d0f05d99525981cf485a79d8772ec29394f92649eb8160fe50b99547ed76e268ddea1b4224be98d63dd36423b94b4899d316e92b89a5887f27a582f75191e3f3a3a14f4a7aa5f076b0ec5ac41f6ed93a88949e450ccfb3a31a77ff42cc6a1245789dbb9a309131e1c8a2d3af6e8306a94b6ac069bcb7843614e26fb9c64e632dc507e1374d09a8427a30dc5702aacabe41995ed6143c1b3e9d47b6238151fabc1bc2058c14822630de5d04912b306e93e164217c850437a4cd298af3a6632d2505ecfabbad59a7e73d25720030da59247c6c3261d11dae40c05efa4d5b38b798aba6598a11863ea9aa05b4735c9915186620ca64afe317d52cf4b818ec82083a3ebb9def5edaa6b1dca1843e9ec2e2de365f40c722cc8104369e457d7ffe80ed62714a128c7b1b9b971d1a5e4041405ffccf598f53269367da2641bdf49c67d9253e9ac27feb897c95e83e7b4d560f303e944df16e39a7395da159abba2ba6537a98f9906e144b93386afd050fa93fda6038c0d8c61011e3c8c1725101111c102c826ca6da228bdeeb44955b691d2c8063080013078981988885c8f1c88264a42ecd68d66f18bc1d84c945ad38919226312c48b291d13651363e83869bd44517c4f38c1df3e9490d560b344f93688081d6495f4c9adc1e61a00a944c133ebe636fbf0714c104a14e7c4132afff993a559832d9737003289e2ac6afc977635d85a12e5f21c4288e83a313d58836df5225130bd31c466db491dcbb21a3c4c0d8604183972cc0079c4c161630638c25000882350d3a94bd384de3c6ea0911d3946741830cc14a411a699e9d9e8b7566a5d6b90f939c631419e98f230eb208c28a7964d25c7a04b3c89376ed8e88088480e1b233a4016514a93a69dc4e4c7cfb9065b2ba2a4c49dc8b3ab39c94414b48326b1d3c4d58ab206db88c560f5743ce29178401051f64d4254fbf728213f4431f6e7832ecd0b104394c6ba4d6e5027bdec852869feb41e74793ef14a35b88010a2244a689a47d5dd9ce47c00641085fd92bf56c4e7d4f1d342002288c2dfa69a7daf02510c729497e850cfa4551e8028a9892563a639d51ef11f4af1418792ebf643f94cf89c4fc3428d5abb0fc5a46b4c2e4fe21280f0a15cf25a94e841a88c27dd3d9475fd3d6ede0a2d1fba00440fa51e7515ef94c7480f1e396a8ce0d871769a87928fe79869885b2825207828c818649a5321b4f6976ab0d90540ee50f0cce96c7392df33c8d8a1b4252659ecede7949c04528772f82ef151f4c692ee0e2347004287d2a83817a5c6442ebd3914d4b5e6868e793849930377aa67f9ee6e39a3bb75d52644ab66f0310ee5b4794e1ee52aa7a60403040ec5fb371bed41e6503257836d643d50010b84c00319d811a423c7f3c000c81b0aa6faea42fc479892c423a6390071433973ee74a5e2c3bb3d6d288ae91d8dad13af3af288311bcae94c8e25f3998a5e07b28692bad10dcfd2aaa1f8b9c35e68aa1619769034144ba8f5b096a7c4eb183494fe3d6f7be4894ce19ea1ac9599fcb6fe37a88803103314f75bfd73dcd2e6a51cb11e8094a174b3594efc6df851a2642858ac68f5ab2063e832c6db72f533e5ebcc35ec6d0655259da0e488a1b43968a9cf69e35b99c250506ec243f399688c6930949468eacc2c9374895344a447be50aa758d6bb2a46a985e444444c4023005102f945f64cdc462d8387801ef334fc32e14cd7e4cde64c993c1c385d29a10f7b2398ff818826ca1287373eda3e35a28cbfbb79c2475de2df5004816763755ab7333abd431eda4f3bd64fa8d261b040ba51dd53aaba1329aa357286b27f957692687f512102b98cec47a28597bddd14347154a72f2898554b3ca97bdf080035c0708158aeb36ea393b4bf05c4da15ca3de84b92b293f9614cac142a95413bec9548d4241a5eb7f956062cef9650c40a050dedff799bd8da925863000794249c99d8431f94493f24939722437409c5076dfbc96fd23d4ef046942c1c415b9a9ed44c998634249127f4d4e2b7b07204b28e658374aa6302d994a1025147d3d294937c6d292e477e418c1b103b1ed40361a042049286fb5d6c9e2792414773b09a62656cc9d06e408250b93e47ffd33a10b201d639400c408a52a99c4b4f93656b72f42c1772f37094a3f491f118a79c3aee4a44f968f15c8105817efb09dd3789b3bf1e47b2ae76a64d6eb858d1b3a48b0a3070f268008a1249a4af8ac92fea64a4128f79cfcf5593f296172805010a24a89d1318934dd82fca024674f2ed70fba4d388d9801c407452d39aec4b7ba64cf9c01a407a53f61a6bf33c8ec69abd1c37821624078505a51e7969fe4e8f59e306ea01d3ab8417650509db385123e66daf76bf4305e648d1e46478ed1e312440705e17967629256d3838111ece8a1033f725192c4f3d32ab93fe8a415e10317855192cc98459bb2b17c448701836f51727fb33b9d2461c26dc6e88136826e5b94574c882ecd74aa416fc3060f1b6d3c6ed8e811c6043e6a51fc601f94ef8d6713215a9474dc6492e44ef2f7fa6316c59c2479277912379d541fb228e8269997f9672135ff118b922c2dbaac4b89694c0d8b62123f944e71623ca54baf289caef1d54baf39c9e38a92f4b5d9c39fbe15e5305d1b3fb6748ff25951bcf4dbcb20b6ce04d12a4aa3748ad9ce1faa289ebad04fea93a404db3f52b1ea87e767d5e57dde2c31d58e8a82693e2b496b0e42cfe91405b7d161f4c5cf6ed60f5394f2a49720abdb5214dfce3a56a8dc9157c2a4289fad798a5e358aa28666c9f9197b4e7c5194c4a7bd1216c284f17028b06b79f30eb76dcda0d4e68787133f061405cf8e9f4cf6f4fae9e211e3a138f8f8843b77d9197a1976f6d6b5e349f35629d34e41b08291fff044a98376969c3ad7e84264081f9d28471ba13f2c838bc529abf0c189f2c9ef13199452baf5772b7c6ca21864124d45b54acd896ba270820951929edfbddf9928e6cb2cef7d52a9f7e0b0516304d5c0060fdfc031c20726caa9abdfb6545ba8e72f51ce2ea36ab724f9b044d12e741c9131e8119e57a2e0ddb3b9fa46664d6228510ce6211e476fced99f447964f239a5b49bc68e240a7a469898ff04e541e644a2643a6d6c51564a7cfc2051b292b5d43bfc3c6c924794adcd72dbdebf6b5347b0ba6b15737b5a333bee495a77688c1e9d3dd78862f61ad5b129459b9e8c28761e1d5c464ca8f0b188726c7e2ba542dced7c468c47d98722cafa26d49e52c2665161224afda7a949cfe62b1d4444b1b693a41a4fce25d7fd384459b34f858e312f49bf86287e7febc83a9d6936fc2844c13c4385e91875378608513e61772adf8396e83a085dd7cbd63d65b6bb544cc409a521ff10c469322b6a77a26f1ae7cee0231085eb9c35c63971d4bdfa0188d2998e67bafad424361f7f288ca9ee074e44b5c45e2df6eeee6efdd7fad63c4686b00fe590db645e995f691f3e944dc78611d23bbc89e7c71ecaa79ba5aade41f3a71f7a28ec76724f8d6d755e9287f208557a27da6d8ce14444e43ef050dadc75dae4e9fccea13b147b736a47b17cfbd0dba15432ad6ed0df3f22af03b6fbb519d6e2eab19a693baa5a847a65ea381d8a79319aa7ff842a25660ee54f428cc98cd5f5ba466c071f7228995ce269d8fca2aac238149330ad1a2d933afd1f0eb799ab5ae795e6cb6be97f5f8f8db2ead4ce1bca499c124f857652b29548c7c80808563022f2e186f249371d9b492b4d6e379272e0a30d2535a165a2e98b1c37f0830d6553fa83feed18a9395c838d7378600d6a99c9a859b8ced9e76ab9baf667f6a8c96ea32fbec8e1011d39402022f2458e1b8a231f6a2829f9546463d488f0918662f468ca35a80d2d51c4c3d4f082476c8c0f3494e3652ed1a0f7ebb530c0c0303e202252a3878d1d464484878d4444a441b082911d1f672879f0d4951b1d32c2fc3043f1b46a9fd84b6dd1a532143bdf4eac4296a41eeec207194a8278fe8fb1fdecd63486b2a868c6e8f32c5b6231943e9695eaf2bbd0a7ea8f3094f4a9b9882a3bdf24db4cf80043498f99c6a6ca33a1a11a1f5f38c711ab1a6ffd46c287174aff6d25d867ccd117f22e944a4cc2e4937e3eebe2830b6d6ca8bb6bc6b69b8ac9373a275389b5f2630b65cb4da3935ea893311f5a28e7dfc792eb5ab1b267a1207a564669f0749a3e168a293383babb3019f2fab842b9e4c6be0fe739797bac50beb41d137fbd1bc7ab4249d027474da2f1fbe1f44185b28765ce134f0c99229a422aa7359a769fed31e698f999617a238582fe2c72a2e63a49cd298c1ea607099e870d30320a05a162bb5b644e236ff30185d2d8c9afe9f166827bd6c2a0c0c7130a667aff83a879cf7e72426193a4dc5cd3f69a29694241953071ec3e7a3a7b858c95b9f486d5ac2856e5793631588887575150bef3276891d93cab8a72899b1fa127fe7816a5a21473623eadae938e225494366e8d2e3d41f54f748ab29b0c2f21b39e9c49a628e6933e953695a254920c7ac3d897ac0f290af24689b26daae44e328a92da50a6346e8e284aee25a6acc985a2e095de25758995125094ccf3fb7cccda95fe89e2dce5a60c7d25acf5444149566de7514df6b21325f9e3942489fdb92572a224ba9c248cd62731da4469d6554d8e0f9f369a2867ca16edeb17595d260a9a1ba672a5ef3d4c9493e7d3b06174d09b5da26827768b1225dddc752c51d2d6b8eaf93696872a518e1d3f9a49ff2b27871285510f3e5a367799499484b490c14d4e92d79228e7909f2ff4689df2235132359eccc594a50912e55c25fb7d6c0eda4e1e5110934fbe986afadb11c58f399747cf34a2ac31c77785ce8892ca0d31e14fcb997811253d26897ae762d2ce8a28c60cd576d35baf73220ef51c3f220a9e7af46c7f7eebf80f51f8cdbff119e4dfab6f887292e489d9b1d91dea17a2a4fc64f8f150b2593e210a9a7a5496540ea27c728a09599739882888a209eafb944cff655f20cae96f3fee49920a88c2dedfe547cb2f49f57f289ae8d759c47cda3cf9a1307ac6f39b4eaa7a1f0ada5afda924a9fc3a7c28fc09a125ef3cf5670fc5aca9eb4b7fc8cebc1e0aea6bc4e44f82f76ef25036f17cd6bb31f78f8782feca4e7692c5ec77289975a64fafd359b71dcae1c44a936468ec88eb50d0969e4bbb7583bf7428890ca1fbab574cce1c0a3afa4f0e4ff9e145391494ecfecdc9257140b7893ff14b2a8143614498faa44bf3a92b794371f524f17513f49a927143d94428ddaa3ea73dc8b4a1247d65f39d24069939860d25db1ca5fda21bce63d6503649552ddb94dc496fd450f0244982da9c1354ff260dc58d969ab663d050f0f6d5f8f4934cce983394cd6dd48d4979f2e7c60ce5cb5152d4c93ea2644d194a5a47de8355ff556bc8501c4f826c8ca54a4d3563288838d1d444b51f4d8d18ca256f6e726fc599ce84a118449e6e8a8ea56e33602866bf8dd3cde37196f942c174ed447369905a192f9404ef942668ac93a9d485d2e9c7c99a6469349173a124691719db4aceb069df42f9c492938e9f3b97c8ae856289497aebead194ab67a12474a86d6a6ab73f1d0bc592b3c9399f903143e75728e6ceb1ba634229d1732b947ff4f6ebe309c23caf42b9243177c29e4e85b2858ee177d6d1f7f229945773b6f827eb303a52285f4659d5a4f56a3e51286fa898933aee95ea40a128ea663e64c93ca5e409e53863e3492e8fb927ed849264baef43ca26a14cba09257fcfb1d48427e1c43413cad9329b66bab5ebbc97507c13f4d99c5809452d51d2cb730ca96527a1fc69a3d3efef3d093612cad916fa6fa56f37d84728cc8cca8b9ac919c5364269c43cdcc7d0f6f87511ca3ee25d25c91dfb4144285b9e384194203b4d348482f8b095f27532e9470845afcd3db13e3f674f100a4a368bc9d4014271cdf3e6ecedb531f94141c488766d11b2e4f8a024c23abaf5694ea3e9413163708d2346e5089d0725b13b268941cd08d841f9536398195926879911a08372c8d3b1445b75f9967351b453a2c88ee9d526cab8288c9b341ddfcfcc55be45494ee7b07db2899224d916c50fa77e52c9b5282799348851378d1f322d4a26db1994b693a3733c8b927750dfa9be47c8c6b228cd899d474bdcb3671c8ba25ce82fd59e345bc6b02887ce8aaef92494a9f815e5389ff24cf6db66932b8a6b2645d5c97e133ead28c6111fcb4f8e1d9a6745b94e4bf8e81275f5afa2b8993689e6a6cc645f15c58d35b24b50fa75946c2a8af1f92676972c2a8ab9bfd16374955fc99ea2b8257a3cbdf9e7f4664d51f0134ba8570ba5b3d952144fe69a773613d3334b8ae2de5c6fec51255fed280aa6bfa3e7d920ab8444512a71a34289494251fa3c2ffb41e4aa7b4051d05cf1d19de236fe9f28662c294afecac3f99e28a5f629d9b4e40d53d28992a022e7df6cebf4841305d9951bcb924d14eeb3e7a0a4c66ecd68a2b0de1a42c9daf8419d8972766f965153a25ead9828968939269d7b89925675fa68354d266a89f2c5ac5507d113ebac44f1430773313532fc48895229318358e8123d8b9328c6894c133beb9dcca9244aa1047526079947b6d34894cf6f93bc322a6d94206152324d8eb7a54714f4e89bab9cb499458e28f528b1aebf11c5116a72b264da0d278c2897f02693d825f4a4c9224a3a42ed84ce33aa4a1451ea30debf493c112535361a633e349e3822ca1a4a8f77783da9f3214aa2e724c6cfd431969b862868f934de692ccbd72c44d13508f15222444990ba7f5ed2ad8d832895983d99f6b5e42d0551bcd31c84d0e2222f0c44498ad15b82d83cee5f02a238a769e3f866924efe50d824d3a62cd946dfe487c29698c40f22d487a26a5dc9569f0f25ad1dc4881e65e59a3d9444aa78d4580fc5db934c8c2668d4681e0a566292c4a084c99e7828e6af9027c62426e13b9443c9b95d6b3b144d6cb80e0531c24f907d9252e24c875259495692245a49329e43f1d4c878b1b9abff4539945debb64c8e273b22c601f70ef3194b877028698a911aaece44eff00de56c92982488d6144a0add50ce1b731abc36ed2d6c4349747e98ce7b8a1ab1a1dcd1ca5cb7449317ada1e4513d6c3a995343319b20eae41b37b1a14b43b92ee663ac57367d0e0dc524644b2e71943c267f672889398eddfb09ba993f3314ed5ef4577eb8ccfc95a164d2959c6c0c3bef1f190a3a94649224fb1b4341f36ecc5e94eb29393194a430cd2787e50976726128767ab97d0c4a6d4e0e0ce5f3a083d666fc9225f785a249ad79ed6ed36dcc79a120dfdceca4c80fb2b92e143f3bea78d2fd30f671a130abaf49062ff9efbc2d94c44c09ba3acc3e97a78592922b971eb56b4d765928f52941544f899975c2424988df39733bd71f5da11ce5326f9ccbb81e59a19c4f9263ebb1e4309f2a14c3acc4097ac54b75a8507aff113bd9e451ea9f42a9a348d592c9c37e2f8582eb98c90d9928144ef49854bf29e9631c0aa5eb78214bcce0b6e927146db40455ea259b64cd09a5cd4e6265975a4fa735a1b8396b996019725734261453e9eb58d2b33e88b684d2e90fd7f63c3298cc9450ecf10b254644e78959128a75231a93c96c599921a17caa6badfb2234a7ec08e51c4bfc9a654628084bd1a23fe6fb7d8a504c92fa78e79d45280f114ae2a34a8dee3dfbce104a4a49f326bb6e09a617424970934da9d33362324128fd5cd606371ba1314028a6fc683a96499356ff4131bb279deb74bec6f601dea635ee9df4a058923659e6266b19f3a09cc104fb78936b4fbb8333c975bd3e0fa08392a8956a32c1d48b72510ca23786f71bb517e2a2f07a9294d9e1f9d7dda2e4a2b724c94743946c5190e9a251dc939096d5a2ac217346d3c9617b5a1434bc7437e80ea7cfa2acdadbd9a40b441605a14bd2495989314b8c4561c564b55f8f9ded1e16c5183265d3b7cc6d4b90579444cd249d92e14ec90fcf00c415c55872af66a79972cd405a511267926eab779b750d8415a59313d74a4e69cfa6045945d93607f5d920a7846c6bb0e1d9d8d12355519026aefac9e527b9a36ca928c8b5d5d1291e77b3e5818a82aa0e4a7ed0f9298a39e7dd4b36379337eb4c51129d63e4ed9aaa65598aa289f341582871c4bf4f8a82cfeae8f3b4e1791a4551b6d475099a49ae154551cca044b9b8fc1d113094409904eeea1a0081068c71a3478d2f6ce0904089f08ad803be078f307614200063241238080100e8c1238c11102000e80b13c61738cc8d1902e0b1037d1827c70e1d1f26484102bce061438741c01800e0c123112180004c0f73440a1000d3c39c1c3b44640060000cf8d88162f0a6078f9191040020000b9081367a8861e3843132f2412310c53bdb7c721ef59175d6e03e0be30c0cb463440c1b67e4a01ad870eb81c386086800a2a05d3ba9faf87f35fea1a4bb64ea48198f73bb1f8af325de736ace8fb90fe5ddd4ce9ca3bed39e6ab02d18080ce481c3468f1d4a830f68a3c78d1a3cccc8c8078d3da08d1e37c200636464060d3d2031728001060243068d3cf4403cf0a0038c3ba08d1e3b6af0b83132f241c30e63e87830101806a05187927f7cf6e9a957ddde79e8c8315234e850aa15a544479cbac8550387b9e1053a3940d048630ee5689fa4d3ccdb3ca6af717228da892da54469d9ba48230e6568ac88e6e69d9c58ee69170d389452338a524a3489814620222206dae16f28cc7c4e52e78b4c4a29b1a5e186e2c61cf4f7c49862736ab10b2f3ce0000c8cc0016a8ca0d1063f45e642decbdc55dfb5d484fecc5f1efa3e1b4a3aa97d3741e6da4c138d351437b3062bff4d4a0e131868a8a19c314abad349b4a70ee1c0008e34c2230da51825f719e7e4b41e1ce686393494373d9c5232499ee1a61a6c3ad270d03843f1839d4e9eac3d682b211a66286ac93bb2840926a56c6ec08046194ae2e4a45c3d7577cce6d081090d3294b34f3a1d32c73be47c24863f8d3114d36e9247732739abb335d87480f1787684800734c450b43c61ae4419a0432720038d30944c7cfa7a5091feb9f3004341a869fcd35ed2f842e14cb20ad5a5be7465396878a114ab9ed27e55b541a30b659383cc6d7ef5d873e1c8010618391e6d070d2e147475ec97caf51c255c83ad078d2d944c575fc8606659f5c9f1366e90000422226946430b45df98d2dbe458af399b5c200734b2506e3761ce662c554fc74251a4c82869ebe4244d8e88881781c6154a7ff25193ea2621b7e3f5041a562827e93bad7ac74cd26eaa5058ff9349ca14a2c2725fd66db5693aa73756a133b7a7bceb0be9148ae984d1317d51ab67f58086148af149e9a73db17e9945a11c8490f3a984126a4e9c0614ca257d57bf9f6425eba5f184d2272f59468941b6e4db09e59837ca6952aeef69d484723aa549b3da8ba57d6830a17cba22b44d6d28391f1a4b70abe4dd34e4b2e4be66ec3ce638dfb99f1d57423135748550257bfef1348146124a36eba7fa47db6fcca18184929a243ee7742a636aa840e308a5f8905f9a7489d598a4065b32e886e9a06184d2a6f712279b4d94d9048146114a1a5b3242bd043113d2204231289bbfedfc2daed31842b9ba7a53c91099c3ad3c6808a138429b1215930f42c1c4cf2aba31ab647d4028bb6bce971f73d02429fda054255b952453e89ba0a6e1835bbdc2b4f3bce374e6279127631a0da61e94d4a5c931f26368f0a0d45d9db7caee6abbfbfabc99c60e4a92e7e73731efe8f8785d8e846303e7868d1a5d7817347450d097d3723aadb9e0b452ee6b3c634cac5e7dcc94da7c770e2e0af7f5d9f4d7cb6751e5f52d0afb414eecccaa318ac91625cf574a37b8966461528bd2f79fd4fa1dcd93f1105a14746ee8d6eeccf4981ad9912367518e31291f696ee2c493248b926a0f224f4ea56abf21b12847353929b5d6a4c4a4c2a29c9963e9d5faec6c7d0db61da8070ef48ad2b5df9d5a955c51ba2d1943acc427a415c5dc9ae424a47629a9b4ac286fbafa187dbd63164d2721ab28c9a5840f8d994397f45451365d4a49a239fb67f3262415c55371ba9fe9d1d62c1d094145c9b5b6d2947f8a62c7e073b3ee97736d0b424c518c27ad99564bd167b5cbee89ba85ac6ce9f9cf3f415f9c4c57879002b9f224546c10560f42465152fd5f529fa6ba865644a47c10228a92992939e6aa0c52ad148ae2c6e88961234e1ad30e54630666750801c51d9625094feef2567e026127e9d9f6d829251e396e3c9b7aa21ce797fa274b26213f9d28e7edaaecbf1c25f6a817c209d76e465cac3267c553b563be8fdd68725aa54d9463fe83903f32a749d44449b74473aae9433251f46c6e926d892749c42198f0c443c5de3e2f6f365f7457b47e4e9bede2147289c2e7c674155ad6fb7288254a4a69cc316a6693b4145289825f2729633f23c79450a2a057ebcc45fac9596321932867d3bb54f5caccbedb36ab7b50d2ba799d1e2289728d98ceebea72f2e42351b89d4d5a52a6205112f426d512647dfc983fa260a124ed9be7ab1b5b4714fcf5641859615dc21ad2888227f9353b7dc488923c1d3cf389a24ace7c11651bfd3ef32345261dde268428a21c8397246e335567d744946c4c5d7777d2a2a685f101248420a2204bdcac8c61cf37af38d00d3b0d841ca2fc7126bba89d1e53df0b420c512e0d666627a8cf2f18a8878d9131709819201c233b728c18a2b120a41067a655e8ce6ce6c7abcbf9c7a03b4688c265952ecf2eba6dd31540eb4103845d840cc2d1dbb46dcfb7d6aecbea10dff9cbc43b498b2182289fcf56a6796bf59a2181288ac941ada8bab0ee0f208a6e7a72cc1874186fd31f8a3a3aba6958eb8792f031976c62361d0f3d4910d28782ee94773afe53d477217c28c9eba52f676bb429d1903d149314e16eaea7b63173c39ce01c11a28782da378da1a49d6cf2a9c123e80b1c66c7992d42f25092cf7aa21e6b57b447878e30f0504c3a7375d64e5a739677a019e4b8317270d848770ee8c20c217728096a37afe6b5e6f8db0e25cb6c7296bf35a40e25d9d253bc3a86f03303f088103a943649728f8c99f3772a9943b1049d27299f93e4ab56834d8c18f45622440e859d9b8d5f62cc244c3e0e25cfdc6c26ee630cbfd76013230623c9a01b23691dd03b44081c4a4ac9399a12934c52e1bfa1602688fa9841c499ec20cd11e286e26aac5262df099becd3869290419574bafb3cf4afc136621783103694caa48c7582fcee60ea35144d6e3bc91ee5e34d216a28c963751dc264eb7c280dc51cddf3c46c8baa6f18d483c7480c6e8491a87d81c3861f3a3970241a0aaa84f794b14776687f86f2a68d4dc2f68919cae326650cfaa40c057b997591a574b9ee6428edefdec97f253dd718328672d81ffd23b44f36c74021440ce5aaf07472893aeda60f4306c884218312128682fe57676ad390ed7108184a1d3bc746d59c9c73ce08fc0b25ad592d6f4b30494dce23c40ba5def88fd1fbb511d28562e9eae97e53213abc5883102e144f6e4b991825ba97921b846ca174c2aaab070f2ab745374c097810a285b279464d626adb707250da20240ba5f1a4e47e10e58861a1a09387b330d9903fda2b94e4cfb1e4124a74500f59a1686352c8ee95130f9e2a9445e76cea923ccd9a9c21840a0525bc7d3013fc7d747e0a05558d7a7e3283ead743a4505e8f19d3b6c57bd0180a42a250f8f4197e6fa659b68740a17c92f81a1c843ca120a2ae2753db08878d649d502ed14ae56f67439a5090ff7a1e6646288409a51efd6127cfc674721fb28462ace8d29d64b4ce647d11a2044ecf45be5e46774d3d344dd84ef2aae770926edc8e119284829a06ed395a8cfa09938007085630124608125acf56790d4a4578048352ba5ecd7c2e4f1c214648ff0757ed2842561d2145d0da72e534df5bbceb653663a91953a2cb5d7560104284f27f2639e78efb108a63eba3ece315423954493a223e56b99c4128e86e6f93538692326f21402865a9e9cca6b33f288a6a92f1bc561f14847cfae814eed66ef6e054734d5bbb8fafcdf2aa0f258fff2809e141797348d58cf77b2794427650ea3aa573497527aa93427450f2dbd2b1aaf3e6dda45c14e6ae4d849a8f703de1a29874927a93f5a5989e6e518e9ae7bb83acefb7932dca1e73d0595aa6c4b5532d8a314df692e25f4fdf448ba27a1091bf13937b4db32849b531a6979ce4d134c9a218175af5658a453946935a4388127f618245d13b08572b75535d7a45317b5a8fb1d13b4f125794b73b4686d11e346b5a510289d3a8840dc502b240180e07438170200c0ca5ec5701d3130000100c208d8562a15040260eed04140003403c2e4832221c241e12161216108a040161180c060502613018100806038150385c17e9503e35be50f85f69ef730cf471c3438f2bc53b110f2113c1e17eb6a920c3571fd71873fddf48d5dca8a08abb624327ba6f7985eb70fbd43ad53127da3a7b38d3efce7eebdf59bf4a26e77112a8fb4e1f9c7c3149cb3efdbbc0919afaa1cf6f3ec6edeb01c7404e7724be93a09807cbd1578d6802fba2b0bde0a970542367fe818adde8b4ee80c46162c9519fed55cc46ee47c089519c1a37530dae628c11ae86bb15a34b296b092dceaf0c0bf8381ed246c47d20071622f908317e51f36960e500c2814f2f4ee1dda8aca4519abed106afd600db410b523a411a9af14df15e51093c75d87347da1a18ea7716704cc8e9a6444a5302f7cbc3c24693ec558bf81d0445d46fbde5d9f516331b9116f3ab24ed849822578d3a86146ac4bef9d55c076f5f29825de658ee383ebda45e459a5bbded60057ab09b77be532ea88f640f952ab66cc4a60cac7b6dab130b4223f7ea5fcecc2855f06d517e9e0839c2730b8361c21cc9c5131da3980be2d34e67b92f59a82d26ea2a29c4397346e6281670fcfa5fb507d4134cdb32cb101dfc40ff332cabe11937687cfd01c78281c7d704bc5a05d18cd527d909d2a0f017ec2f305e89dfaf88dd33e00e59ec635c9c72b203a14756af03afc7c42808bf60558699358ed60d034e6a5dfc9091df434697f0680f32bce6cf5c682a4874d12ded363968278418f76393caa6803d600c25e6e55e5f5d1b0e535066e7a2d137b9ba444ff9918669bef70080a46ffaf8e960949ace8c8807abb72502175e374bac3929ff5ee705c01babe519dc23212351c656aa5a09448ceebf020c8a1756905c25c8fc30b3ba5a9343424b8997f4ebc84af78bd08f17d9e0d3c2498d3c040b9b35ce1a38348a8e571aca7a851872bdb9c9ac0701bde4950f01a176114da18c4202978858dbae87d8dfbbfb80bb6a6bd14092b3b771f743d55c13acc1df2b654543365cf85c76b9e8b0fb0b2ee8635ee99b00db9d9dfc3d1e27dc477adc12b448f2730a68806520ec6d78f6a6f591358da1d1e65425515efbf6880bae8f6fcf9b359d85be20b0a72eff728308d96a043d717ef261ef2a7b3661719a4b675c960374e3913048ae5226a5a69c57893268e4d625cb7267ce2af3e61b1fe9e7894ffcc960b2b1abc5089a75c82c97f7e2b520d87cb80946e2d61773bf345a6a3983a9667cf7e468c1443f43e227f44594a9c2231b4c520be9d409d53d3738707673e7be84cf000df058ea200828b76c3c05d28c119f4148938242af0aeb00c683400bf090065aa6704ef6b87d636a5c10d11ddaf35fe17864d6e4f2f33813090030e9c1a3f395fa95fafca078139b5a855045f1719688e2c9e21b3e35f786dab2b3d6ff952aad166284fbf2e57d901246b30e0d4ddad2cb2ae1cafa2914a9e91054e97e4b0787099b8c0aaf2b036e24e4ecb133fd32a9b3953a546e9b5b74c7ac952ce8705b55e560dac8426f6bbf8a228490b7f7e22704da60d9905a40dab672876abd88180f2a2c336c0ee9b837df05f068f56a0d8b98992b4519117bfa5983d46c86dc178bc239e9b7399c9beef0b504629dec12912de2fec151be2200b1f2e94500e2049a4a67a1515d45c34f4129b1fe2e264eaf78dfab04bd0a5498139a2a67e13c6b3339d7b97d9a33cf62f5163f5848ffc8ce8e28b365e500c4897695d0e21a83f85a63aa220235c7fbc0aca756d922cdb1d2c959070d84d7a6d8a64f6ddc7a46ad7eda16d68d428f3a8520ea1d132b80e9219ccbce4691d05f1a8a769d5b8417239eacb9c21ede8c3e25df2b06251af858a4867cb95021d179e0da8470418cb24441191c143692e0149cf04cc5439448d0e293c212444a05cc54c84053d224ff30ca64e7167e2330a021734d1e49cfe20804a2c204e46028d45d178e5aeeea65328719bf3bd1b7a387da014597adbfaae0c237d4a70eeac73f180e2676158cc211b9caa34cfcbd43a0916efa40e70b7b2a89e5e9ae6433ec5775b82391ae9374e8041f2152fd91b19ef53fee2a1ced261eaab98fcb8f802da2d0917ca00642e6d1e1ec2703c065402fd53de5268580f4bb9ecdf02968067f79b382fb31330e565e9a8c58c17a48b7aae0aa6e35b1058ed18fd0f485f347792a9bf5e75ab5312796afc6b211fdf53460e5fcb71f8e5ef443550e093b0ed826a28a2e0b23ad225d2ce0e5c210d6e66a52b716d60d1646d2bb027ce4eb1f0c55695d6e5ce81da8b3afd603ca75f18ebeb699c170501800784480c602d7d658ee80f0209037b290fb00f0345425d40cb600c4127ebd6c67909f209574b7ab43d6cddd0058a654dee8ae4a607b9fc4be39f918fd141b83ae399128485f926abc01290c3173f8eb2ef6865518b489e274a292f07276888439851de48b0cfaf028ec3bef77f1bc91e15da264bf81b2271681dde3f19474179b584f304e4dabaef22801572d7c628b155e3be03c573934b85ab4021b64cc3bacb9cbc68878007a75c523d5c8d09ee86262077ad876509cf2264ac7f8d96e1911461b50b150752e4e35408554fc790d67644da911494fd56eee66c444219a8ba928ea8f77c196140ea159b8bf77b5c905da67a447440f1a7ca21c045308a67e78f4f0cbb559c99f6afbe9e21921efe7e6c69cc33f8dc3fa705bf75ce585ef34ea126d1541cde6ce1e9606c518424212c4ca853b6d47439c9c39135f589c3644968a1bfef65bf540095258887a0f40fb9bc887f1b4e33551e61ccb93e3ed343ef344fb6ef5dcc78b60afa7399d33e50596147d6c2b308ea461e97c30e690624d1270a5b3119368c4693ee3a1133dc508860a8aa132d56d5ddd583d0b4f5b05f7701fbb0b7f9ccbb13aa52960d5cfb075850ef9eead3f1a9af20cbff1cd593d768c97f05ac5d45ccee37bd4860fc9678c51669c15aa860bb11ccc9c51962c3b5a19a9dcf88b94f3b18fc004fe0417e2f51c9133a3efab3929a90576c25204c144892aa0234bdf827d26a7f71661284567309389f524e0cbb70c189929d7e7922d7f56802967e9a24649b5c303de2568d185c4e8431aca509cc85b3d06ee21201a33938d72a8211802139568294e30aab0582aa29e8228a76c0aa9d451b2bd65da795a28ecc7fe620e63f194a702153425db61237665f3c42172ca137ec5baf88b70856466cc80ffa174200d93788e60a75cd919fbf428999078a9a3f2499e373781a3002a29973882232062aa2c077bb1afeee256b1889eb3b8608c842502c108412457185f2ba5d308ccdb7efa17e17a8e30dc876d68baeb9ff6495ba5d28e1375809ee4fc9fc1e5bcc820885894b988e5a657f87d39dac7e0c28aedbcad837fd4809939a56b69ff361dd648295e153de98683149174d21dded888e40c3ca71cb2cf5c1c166960ed84ed45937d445a35bc10ad1159c900aab8fc5b729199592799444219ccc5193fdf82a9296abd656fb62cb564435c0a73d493d13ba6dac19303599440006213f5ac804e358c8e11ed089d1e74203b6dc84f710a27dac2709023e78a0fd615bb1a1dc44107f3ddb3baf1961204e5a840016a531e5584044d374a52af25ecf65dcea35c9a0b7cfd5786612bcd366f9e5b8fc453dee29ceea9f427c391b130496cb9b03051995e19acfac84fb02064ded207644844ad90b7edb3b3b704174547e475b02f9a1154fba098f1f3890ca7e7467cb79e5426c029a1a66969d3e9c778869e1ce752033aab3c547be98a90cceceab561c17f4a83e81d215c1a5e1260280599a606f2786a281959606244063354433f2b01774ca0a9d16e254c109031ade29e6915c4e8627722ad2a21c442f0a782b5a510ac620e4aa12ba5dc794c110cf08bb4546a4ea15966aab3d5b2af0d7097e48530847026c678a00458f804daa883c06b3e5b26baf8b1872876c59af5ca32e84ae4be674edca58ab8cc7c5298489bdfa9cfa23844124ebcb2a11dd1759ef05b84ede1aec62b5c0e160750bd0d2cfb00ba7d5986c8f87fc72ceccd107dbf8803063776afeb62a7eedab2bb4e9d40caf11df766d5d8065f350db0dc239b81bdd91868e4334c459937197bb493705ebb337d8c157a89bf14365b4be56b23c98c8bc1a915a814ea4ffc2512ece5a6de8bc060cb56a747f12b9aadb5c6d5db4487d0ca0f49f0980fee2479ae466360fa7ca40f45fec6e9d324ba84dac055a78b976a3e89a6ab59c5d5e592c3a22cbbf9d68989c4e5b3ae4d3f025d6867bf9147e0b9fc226d95e21ef23bc0327462ae09914d2cac30cbc0fa500d83512d3673f25580f857e91267f58aca521b60b9e602f75fb3ddd658264f4f9d5b9740c09d1243afd1ca98670e9376220b154b9944d74ca4cbae2aeff81e03b503eeb853bf596bceb180c18857f1adedb4920c371918fa25481bc9dfd4b3c6b03912c427b594e271f9bcd0ecaaadf5e5acdb1fedeb2ab4a7a87e618e1ff39a64a350daf29c89de52845c4bf65e452b1de8462877da7b04ea9a37956ad20fe757e9705556fc0ceb97f9d241721b16e675b608b2c1f4ec6d96bb23905121a430312f45c2b1787bccdaf481cb1837aa34a83e6f95919031b0dd07e36113caa53706ab94db504d5bfc06ea93c4210ba04d7d6801dffdb90763d730619e61c64cc3b2504cadfd343de8c2bed2ed4cad815a1c1a2baf7ea123c16457e4c0fa29e7fc498a8d78e5c4638c9b384e518c8f2826bd68470248257a87e5183d964b8502c64f5d14d3f0121d3f2217b6c5bbb4c4114788a449af12132c2530c252ae57c69460a00ad0fa6b8814c126a5c3cf303493515980b31775f449b6dc52d6957fd623b41d33decc329894cd759df1a41e8766bfe3ec7cbf085e59c8921beaa1c90e9bae328b0889daf06b60b1b587a24d3b5a9020898b10c2027395d0513edc55508fbd54c2788771ac93cd4052e4fe1c3554c3b92efb6785fb2c2e2b12eb78d70e6448820d3f7847c3a30f958f8e112ae5ab4f218653f5439eba8922c83db91e84b3274e8768d07f92bd5bac2c3a42f6719b686df38a0c1e42b5ec425207aa14e44868546e59364bb5e66c065c4ccf39f7fb2078706a580ad071dd435cc0c968ce3411108626e02d35753cb1ecda381219e9f5fc678a888208105d01c4a9071629df46bb926d8f93ca035cb4a59208441ec6503a583667f52c20ba8f27c1a92676b3afb4a9bb52c83298c51162c785b8c0852e462f05a804324a59d60fb48b99ab74a75406977aca93a8316ad16196e8295e408003d982795d16c934d043bf00a404c002d083fc5c8ec393a6e37d46f62824b813e2748a8fcf30ddd11058827a89334992af131d9c285e0e11668551a431d440dd07d0f21be4f758f0fb921612dfe030f4576131e87b5cc86e53805486b5df918ba93ba1cb1733edc5cde2f0801a41566641caf9ea2bb9bbf8efc0f003384915a70a4e25a7a15accd3d34a63890686acdefdee8d9069074c449ed2f636e71a1dd1e4d2c055e932c86c245dec7be85c3ca36400808304771223b72b793b0493bb157399a50b21c9d42846e59a44084dd35fe0aaf755913ac4ea2e3616626996b630a2db56011afc6add520fb3c8243400181ea9bb225c8929ae33b3b28e79c08b90ed59e871383bebec4c11521c6b97525c02842aa569acdb3ca28b2a68cc427682193256841b1cc71c1769d50f963be22410d881fd01e8c3d57b57cbab6785a059998b636b335eda177722160f0897045f007514a3edf9f6620a3753b328c67b729000578beb297f3d0b9c1ca936680aac330a4a5082860ff64cad4aa7bea9ac0e6c4c70a5e96eef53d4bf567349518f2d010a4c0cdba6e19265ebec3ce49f8741613a8b0c472be98f5c8b17e6ba3a7b4659b149822367424f2e4a2c605039b48f6b679ba2d021dd17f25d5a27706244843b85d89768e36769e9ad657e72550e842cd309465544472a786754273de6f99c06f0460718a8af333dec7b006aa49aa4e70ae7c0c645ce3a1c32eee4b5d14693c42ecfed6b256dc403a774393b8fc56d47d07eec028849ea8248fb2aea99d88dbb791f74aa3e30216bbd3d57041544792a3d6a3c216702990d235521b60d02b7ebfb23744ee3a7c38c188519492333de15417c61180892f2cce94290057e0c1cadac36debd5c9fceee98dab6f370cc3084b46e0b246c9993a19e0d257759b3b7d2b7ee586f3a29683ce693a8342ed3907dfb6ab4fad45e4ae1b4ea584f06709952d0c6441d5ec6a1368bf845156893d6cb2a3046f9020244835b82ee7b68402c728d22111dec0b23205bc23b2c9848ca42dbad52bde28123399552339faee231ac954801a01ca00cc1359333aad3f22657cd49860ce3f34a616a35c5892b14757549aa77bfb04f0b45e030d81ceaa9ecaa6fde7e7de1df5ba0099914629c9397c74e81097eee95539bc5d1c2bbe58b32b2f16c20399bf70fd685690787f14df7f6d02651e182b7120b55742b05bcf9f93f5229396525236b04c7c3391cda3ebc393d8d28927e222b2bbc71dbe03cfdcb867a2017cb7e167484cb8c1864d9c680dc48db514422410203c00fb91250f0169e3ad1491383e4a551ae0304fe78c1e6d129d44cce1c47f833539e20ee4f61bf5d08fd33c4e80881a6cee313c2c75127382953c1e9418cd03a1b446ebd19fe84732230e4e8cb3b06b92192136fdd65354846f885d12d107a81d0696b49d2a483097559b588c81628b4e412164b21056d988cf5719f65dcf80a186ffad9c7344be22de203e9b87560317f867147ff9ace1ef8a33249e0a92a43946dfd98fdf57581558840b9455c27e79df60d4db38cc129ab6ed71bf563bff53c6e83604c7afd769c8f4b8920a594162cb18043b24753fd6b336c4eaad23d9954664b1e5ff7df9f8f04de71531ace26e07c06cac6f1c88a1823326d4359df5598a4c333f8a5216ced16a5c0f56f5ce00c4aaaea781f62822c924d3d53330c81f205649c97c28e67e911d909d7459c38b4c7bf795f116f4334e6e0fb6bb7451b874ee54ff1201067f88c60967d68045ac416008b32c229830d8a8945b7b0317bb51008c6890e271f98c4923fda27c299820f7c58899142770c20108b249d84df246aba36b0cfe42142566bce7c56fd122b5edef56ba34889bac8f10dc87ae1b80a2e9c4fbbb841f3e212410e6a39b29d7abe701cf8032533dea13d48aae117bc4da8164a0446c8d589d1c1bf71846faf7128dcd240a7bd86c8cd6fc6cfabdc101caab3c012897aca2b064d88617158e74d86eb89a94b3a530210fa131d705a6a400aed3e6ea51f9d85e3c2c4cebca3ae6816acfee8d39d682951091b1ab77e9673a566c1f3178a54fa68b180303f062aa79987b34313df969a4ed124aacd8f640c8f6ba9561a57b2369e16c709b4e2f0d2b2165f08210e8c2e1bf48284cc165bc92ab2cb4ce9ae3d9fe2920245245790d53b47857888d7d436423ed7a384556c9492f8b9cb73f3a20c81d145a41b370f5556b4ee3a90adbab00fef7dc28d8766ede2ae26a82693a89ceb16ec484eed0ce646089c07b99e35621bfcbfa10f1a43a3f4a846d0eb1038318dad5753be77cd56011b0874696891e2c96a8d6c50ec6b55ccfdb5a3b59d219dd88119309466a88f9877edbfafaecd04b66651965d9340abc4402c2eb39b6afaa87ff445812b4917b2d1dabd3241e3f28661fb75b39baa6a8f2dbe91f719b151e893769e317092bb237d260e785a582226263ee5c82e4888e21665c5fe015ef32389212177ec30a5b9a9086f160ca8f62bc33527c99d5a508a9445d0b949cd601154d7d95c1b4e35871028163a525f906785c86591f9532ede8c51dff902c25d8f6e0bee1628da7a4cbaa4c3c879e3f878adc213fdf6ed5beae8345332fe512c0eb3ad381b6e02118b0cb1b33f9a9f7c894b3862a0566250e46181224d3e43e4208206b25d53991e6155af2b8f57bf629135cbdc73e3910e21cc05981344232aa3a53ce4d568cbf82f661ad1a3553ac1de77fb626760061d459f0572531e22a4f91b1d4b282bc88941d4eb6f0fdf88307a9092ebc6eb859ae7c3a56e2dfc6eb92c430fe98ae5a8a72f0ba6b118918a00fceae5d2d1f937415b8346364f8ac7abbb7f1b30bb60c01f4069b4132199258d81171e4c97e8696f4b20a724cf4466169ad8295da61dadcbe9d96349b090591946024b227aca47ad2e5fe8c35b71b3da498b4caab0912e9ae16e92e6894fb3b5691acd928ca22ac8111db681445a951ddc2a5c91cecc1fbad037d0781063daa2161f0b28bc077401071d41460d897c22229ab0894bb104a21a655148d154512c15ac860b59e932a3713f22aa95bf30f15b4e2c7f5175ca018b22a2e6734e3d621522274482de06522200ecd73d0b2809b71a120059890563ce95d3e603802cd47993ca6c536be99252d9f0751866a007c57a188a86c1a8c35d7b84882119c1d9ea5142ca3925edf490d0bb9db176525a0ca7074f7acea50bb0e67aa3ea03c687fa694f813c0298a8336d79278a211b2a1f959e9b6adff11ca89049e6c838af7b1d932181edf425f1eaf92a172edd6669eb6eb0576f52f32654a4538cd77abbe39551846eeed1afd57a8d650e2872edbe8b723da855e110b3da98e3e7817082ce61d7bd280f73bbfc36baead4804496ececdb2d9f4ea674fb42adb932c03862a1d684889d94a06c80f2a4a1ecb030411ab4227111a30eff1feafe0d0343221862625b2992db52dda9843ef88c50d37a55762a75b27c2f700d8c7c75740982fc157532759ac20b00cef8f9381e7460f94caabeb6e7c0cc7570be87e5061ced162bac4fe36900f80ca29fd7bcaf2359d824f5c6e1da4a0785022187cf2b82eb93326a34135c08f5df4f57f2b119071d1013f3c8b79bef88fb7c227a688dd4f1c263f7b72ca9a2f02ec856818dddb686ac54a731b88c899b54243b24568b9ac6400edbc60843cab0d432ea1f82ae64fc49ec483dee824b9ac0f5b9b1fa91e28b3b5cf89cfd3fa23d2cbe28a0b631e0c845de875a4e5d14fb846030d9b901e412a18ced8ad5f548423a965d9f480b0aa9df0ca3a16b30cf21d0c72a6f6893e7d75df5cb030f0f2c101e568668913b5dcd7580dea5328b2b097b2bbd0e4bf014211b5e12eec23c7a22be52496b9751f8c457973054a984c887e0a94d68a1c4ef6d8be7b382be9a3aef6d96040b3b4ed87d59dd3b4fce8d81e540185ee2163d7aebb92e6896e071d8c1b732770ed671f2f1f53d0dcd42f0caceec8b7a150f642e14e1b1b4c8fae51a6a6af7abdb9982300ce4066eea4359bbc679eb0e397e4fe01621be01ca810274d637bf204d4af8b93cd3cef6b1065f57bde8ee23f6f4e3e64ac7244d189c4037c7dbd77d967993d7774fc4111432e55b852ec4d01e681f0aea0f52f6c373234cdb29b289a010cb018bf34a94eaad43864ab81d390d8d6da85d0aec319e8bc2b30035345128daeaebfe2ba43481ae7b4b3024b6e6d7118d5061990c041998926cb3ee05195c9614e6718e5e5d897e0b8981417267ae50aa2f603376ffc0f13e85974665758429010c17acc61d0ea0a40d2dc70186288ff09b5b17beb5d4c4b7ed879086b924552b436608cd61ff65df19b85a8f32de5008370313e10487b56a605ba3cac4b7c81f2d80828d020de501cd1fc582568fd64623476b6fe8895d0cd25dd3e4aeaa5e37dcca58e1ec0c7964ee9f781e2e2827a8a0f07b35a076b4d05ebbcb213871f44bf897665f2a0c15367ddac79e6811c42af0d8ec6b375a6fd5a529b8c622fabd679bf3ae0993073a309703b48ce2dc39ba6cdc802101caf1c58a289b04bb7b0815b96f505a1e31946278f55ebe1237d2f693bf4003e7bee169504fb30f808a59d4b5174cfda7aa2b5e448477aaab3bddc87320f451bc0833b0b30d569028c3e13b49e7a6c70324a931efee219babb04b13", + "0x3a65787472696e7369635f696e646578": "0x00000000", + "0x3f1467a096bcd71a5b6a0c8155e20810308ce9615de0775a82f8a94dc3d285a1": "0x01", + "0x3f1467a096bcd71a5b6a0c8155e208103f2edf3bdf381debe331ab7446addfdc": "0x000064a7b3b6e00d0000000000000000", + "0x3f1467a096bcd71a5b6a0c8155e208104e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x45323df7cc47150b3930e2666b0aa3134e7b9012096b41c4eb3aaf947f6ea429": "0x0200", + "0x5c0d1176a568c1f92944340dbfed9e9c4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x5c0d1176a568c1f92944340dbfed9e9c530ebca703c85910e7164cb7d1c9e47b": "0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d", + "0xae2f5cafcc1a57aac6a0e51fb2a269b74e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xc2261276cc9d1f8598ea4b6a74b15c2f4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0xc2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80": "0x00000000000000c00000000000000000", + "0xf0c365c3cf59d671eb72da0e7a4113c44e7b9012096b41c4eb3aaf947f6ea429": "0x0000" + }, + "childrenDefault": {} + } + } +} \ No newline at end of file diff --git a/zombienet/tests/0007-warp-sync-relaychain-spec.json b/zombienet/tests/0007-warp-sync-relaychain-spec.json new file mode 100644 index 00000000000..ab871f72d37 --- /dev/null +++ b/zombienet/tests/0007-warp-sync-relaychain-spec.json @@ -0,0 +1,171 @@ +{ + "name": "Rococo Local Testnet", + "id": "rococo_local_testnet", + "chainType": "Local", + "bootNodes": [ + "/ip4/127.0.0.1/tcp/63035/ws/p2p/12D3KooWQCkBm1BYtkHpocxCwMgR8yjitEeHGx8spzcDLGt2gkBm" + ], + "telemetryEndpoints": null, + "protocolId": "dot", + "properties": null, + "forkBlocks": null, + "badBlocks": null, + "lightSyncState": null, + "codeSubstitutes": {}, + "genesis": { + "raw": { + "top": { + "0x0595267586b57744927884f519eb81014e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x06de3d8a54d27e44a9d5ce189618f22d4e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x06de3d8a54d27e44a9d5ce189618f22db4b49d95320d9021994c850f25b8e385": "0x0000300000800000080000000000100000c800000500000005000000020000000200000000005000000010000700e876481702004001040000000400000000000000000000000000000000000000000000000000000000000000000000000800000000200000040000000400000000001000b00400000000000000000000140000000400000004000000000000000101000000000600000064000000c800000002000000190000000000000002000000020000000700c817a80402004001000200000005000000", + "0x084e7f70a295a190e2e33fd3f8cdfcc24e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x08c41974a97dbf15cfbec28365bea2da4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x08c41974a97dbf15cfbec28365bea2da5e0621c4869aa60c02be9adcc98a0d1d": "0x0c020a1091341fe5664bfa1782d5e04779689068c916b04cb365ec3153755684d9a10390084fdbf27d2b79d26a4f13f0ccd982cb755a661969143c37cbc49ef5b91f270389411795514af1627765eceffcbd002719f031604fadd7d188e2dc585b4e1afb", + "0x08c41974a97dbf15cfbec28365bea2da8f05bccc2f70ec66a32999c5761156be": "0x0000000000000000", + "0x08c41974a97dbf15cfbec28365bea2daaacf00b9b41fda7a9268821c2a2b3e4c": "0x0c020a1091341fe5664bfa1782d5e04779689068c916b04cb365ec3153755684d9a10390084fdbf27d2b79d26a4f13f0ccd982cb755a661969143c37cbc49ef5b91f270389411795514af1627765eceffcbd002719f031604fadd7d188e2dc585b4e1afb", + "0x1405f2411d0af5a7ff397e7c9dc68d194e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0x1405f2411d0af5a7ff397e7c9dc68d196323ae84c43568be0d1394d5d0d522c4": "0x03000000", + "0x1809d78346727a0ef58c0fa03bafa3234e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x196e027349017067f9eb56e2c4d9ded54e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x1a736d37504c2e3fb73dad160c55b2914e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x1cb6f36e027abb2091cfb5110ab5087f4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x1cb6f36e027abb2091cfb5110ab5087f5e0621c4869aa60c02be9adcc98a0d1d": "0x0cd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d01000000000000008eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48010000000000000090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe220100000000000000", + "0x1cb6f36e027abb2091cfb5110ab5087f66e8f035c8adbe7f1547b43c51e6f8a4": "0x00000000", + "0x1cb6f36e027abb2091cfb5110ab5087faacf00b9b41fda7a9268821c2a2b3e4c": "0x0cd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d01000000000000008eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48010000000000000090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe220100000000000000", + "0x1cb6f36e027abb2091cfb5110ab5087fdc6b171b77304263c292cc3ea5ed31ef": "0x0100000000000000040000000000000002", + "0x2099d7f109d6e535fb000bba623fd4404c014e6bf8b8c2c011e7290b85696bb3": "0x0cd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a4890b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22", + "0x2099d7f109d6e535fb000bba623fd4404e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x2099d7f109d6e535fb000bba623fd4409f99a2ce711f3a31b2fc05604c93f179": "0x0cd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a4890b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22", + "0x26aa394eea5630e07c48ae0c9558cef74e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x26aa394eea5630e07c48ae0c9558cef75684a022a34dd8bfa2baaf44f172b710": "0x01", + "0x26aa394eea5630e07c48ae0c9558cef78a42f33323cb5ced3b44dd825fda9fcc": "0x4545454545454545454545454545454545454545454545454545454545454545", + "0x26aa394eea5630e07c48ae0c9558cef7a44704b568d21667356a5a050c118746b4def25cfda6ef3a00000000": "0x4545454545454545454545454545454545454545454545454545454545454545", + "0x26aa394eea5630e07c48ae0c9558cef7a7fd6c28836b9a28522dc924110cf439": "0x01", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9007cbc1270b5b091758f9c42f5915b3e8ac59e11963af19174d0b94d5d78041c233f55d2e19324665bafdfb62925af2d": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da923a05cabf6d3bde7ca3ef0d11596b5611cbd2d43530a44705ad088af313e18f80b53ef16b36177cd4b77b846f2a5f07c": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da932a5935f6edc617ae178fef9eb1e211fbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f": "0x00000000010000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94f9aea1afa791265fae359272badc1cf8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95ecffd7b6c0f78751baa9d281e0bfa3a6d6f646c70792f74727372790000000000000000000000000000000000000000": "0x0000000000000000010000000000000055a0fc01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96f2e33376834a63c86a195bcf685aebbfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e": "0x00000000010000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98578796c363c105114787203e4d93ca6101191192fc877c24d725b337120fa3edc63d227bbc92705db1e2cb65f56981a": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b0edae20838083f2cde1c4080db8cf8090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b321d16960ce1d9190b61e2421cc60131e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625": "0x00000000010000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9de1e86a9a8c739864cf3cc5ec2bea59fd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e5e802737cce3a54b0bc9e3d3e6be26e306721211d5404bd9da88e0204360a1a9ab8b87c66c1bc2fcdd37f3c2222cc20": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9edeaa42c2163f68084a988529a0e2ec5e659a7a1628cdd93febc04a4e0646ea20e9f5f0ce097d9a05290d4a9e054df4e": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f3f619a1c2956443880db9cc9a13d058e860f1b1c7227f7c22602f53f15af80747814dffd839719731ee3bba6edc126c": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7f9cce9c888469bb1a0dceaa129672ef8": "0x699218726f636f636f", + "0x2762c81376aaa894b6f64c67e58cc6504e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x2aeddc77fe58c98d50bd37f1b90840f94e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x2b06af9719ac64d755623cda8ddd9b944e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x2b06af9719ac64d755623cda8ddd9b949f99a2ce711f3a31b2fc05604c93f179": "0x0cd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a4890b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22", + "0x2c5de123c468aef7f3ac2ab3a76f87ce4e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x2f85f1e1378cb2d7b83adbaf0b5869c24e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0x2f85f1e1378cb2d7b83adbaf0b5869c2ff3ae12770bea2e48d9bde7385e7a25f": "0x0000000002000000", + "0x3195e99b3353c0f2dd3f53c10740793a4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0x3195e99b3353c0f2dd3f53c10740793a57c875e4cff74148e4628f264b974c80": "0x00000000000000000000000000000000", + "0x31a3a2ce3603138b8b352e8f192ca55a4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x39e295d143ed41353167609a3d816584": "0x0a000000", + "0x3a2d6c9353500637d8f8e3e0fa0bb1c54e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x3a2d6c9353500637d8f8e3e0fa0bb1c5ba7fb8745735dc3be2a2c61a72c39e78": "0x00", + "0x3a636f6465": "0x52bc537646db8e0528b52ffd005894f804ae5fc66e14552010ab9a0ec117fa6058596ebc671fe7774ed143107932f0c4b28cbc70d5a0785d72e5469c084b32f9ffa5a6732fe618bc1b54fc473b9c38549e6e1dadfec5885caec5f28cfd521fefe36f6b7bb735b9b79429c9145316f512cb13deaaede3df3f9fdb677a0d16991234e1688af232e818f0b87dda3f163dd641c2e3bbb3f61945f8f6196122b4cf7cff9df6e9ae7fd83e7c438ae3fabbfaa769ae73fdb97dba3b8270fd3df971ff841ee3d93e41fdf25dedd3efcffdc31ef319c30dfb1a267fbed79ffc4f3ef70fd3f8bfa8cb2fc17e068df4cf2fa17f7eedd37ceb323c6e8f9f754669bbcdf287906f4bb72b6d3ffeb128670883fcf98ed2d6976f4b50575ef9127c8094e1b21da56d3e8b51e6e59fe291d6e5779179c838ffa684d59d56a875f9798d3bbb234fddd1bff9b2c80d63518620942f2f7708fc12147aa1f0ba95b626630ad4942dfd63bdeeeffeee3e45e9babbbb8e378943ca185296be7dfafb61ed33cedbfd3a33b8f1e3b4dee93be2dc7eee7f32f340c8b719ae5cbec980c71d61b73fc8e59b0cb7cb601116c23124d261f8b50f7fd3bffc1e15f9ba28afc743427939ffa8c8bd048b38f70c9a7074394f8225d0e7ec489fbed76009e1a5cfe06cd87c6f7e2ecaebf9c789f425c80d1b5d57bee731c8d9f1e872efe258e9bb8be3bcdc1369cfc57101d7df63b0b3230cb77b1747be5d7f2a8edc3018a0b4902485eb3f72c3c613aeff4849b8fe449c8a7c3b51c8a7a6a6c25cfa2e8e22dcf99efc5c9c4f45be0c3ea0bbce8942dda57694d7ad909c9a9a9abae3d1f59f22374cdad930f9b3cb1d1c7172cae0b1ec499660e5f150c837199c6e6d1fbec9d074f9bffe9134fe57fbf0cd16e6f2e35c7ed6e104782c42289f9f559ec7edc3f2cae7f75adc3e3cdba79fdf93defcb87df88ef532c74c600e371ac6d7e7fbf73b58a42dcb9809cc1147c3f8ca7791a7956091da307f0649e02bc122fd445a8ae1f1ed7ed96d89f491942678f2a5c84278b345dd71defe2abf56f61feed8185ef96378a7944b5c7a4b7f222ddddd5dbebbecfe7adbde1ce99fdfb204f96dc77e6f29a13cd619fff67b6c80d0e32121bf3f8345f8256804069bcd26c365cb0d1bebedf7fae3f691df3edcb07e22ede26c587f01c2f9aff6e11bb60f378cbfdfd53efefdaff691b79fc1223ec5281c5ca2a37ae5d72bedcd11f9f3e54f5b24af5b068b483bca2b9f4813e9bfdcc1914b5986c79775c6f0f67bb57d462041f208e58fdfed1ffdb9613ea17c7f7e061f203f881b36cecb4fa43d29fa053f1e3224a36e948f25bfdf939f14e7fda4ae5077a3c8801fabc56009d366bbf289b4d71ff310f9a33f378cbfb6cf28af3fbfe7626d187f08a13f3f8323cc86f1bbad0de327d25e7f52ecfbf1902179bb51b82bbf1fe42143d276851270e5f74bf001a1edcaffda876f3f832548db954fa489349126d22c72c3f859a76d5078b983a396fd86c7edc9e7f619f9a5e586f1f31f4949e3f1cdc674b90be2a59b90011dab20b7207704890a8245902e41b608c245902e7a521084079e3d78fae091418f1d3d523d2be881a3c74acf1d3d28e8a9a3278a9e11f440d113478f538f143d4ef04cf1c4a0678a1e15f490c153468f103d5a7a5cd00344cf0f3d2fe081a367069e1af0e8c113078f1c3c78f4d878c2f0e4c103c533064f183c33e0e18387063d32f09cd173060f1b3c2fe8d1a3a78d1e3678a478a278501044071e3578d2e0b983c78d9e281e17f4f8c063829e317854d053464f097852d0f325880f417608f203cf1b3d3df09c6046c70ccc0c8d9918b312ccc8988d31db62c6c5ac69c6c42ccb8c88d908663ccc8c983531db321b6226c42c8899951912b323662198fd30f36106c4ac871d356441cca69831cd9e98619941e13590bd40e602991db23a6474c8e690b54036850c8cac0d9909646bc8a49045218342f684ac0b1917b22d64379916b22c6458c8b8c8ae905921ab42c602991cb215c8e290c1217b43a60259942c053214c84e2073435602d9161915b234645e6464c8c69089210b4306860c0dd91932336450b224644ac84420434286450684ec079992ac8a8c8aac06990d32196438c8966449321d76ead8c963678e1d3b765c20b3ed4cc9acec9060e78b1d2f76bad861dad1b213821d237670d859dab96127879d1a3e98da912127891c313e70e303137c80468d1d3575c84ce58c2047899c295a37e41c914344ce18f3e903232a973ac50c0b26179b14d04c7d53a6145e1e353ae40491d3451da3a60c9715ef0e9b3966e6a865501a6ef400a3a852cc11958abaa53a51ada859e4a471d3021005558b9918381534884a068d548da296a07e2153c50c9819856c2adc218729c7890faef078e9b9a1ab987b501d7c0a190d3158e4542143050f182e9ba7c4a4412b87960c2d1a5a53eaad478789450e97960d3334e87123880c54080f06354b3942f49860264c4ed38c0ce41e3d7bf41cf1c11e337bc86ca9c1a1b19899ea2e526aba1173454d0e2d9b6b31d3871fb132a35543ce172d29353bb4748031f5f011c385678d9e1af484f92c66f4f0137cb0657aa99941cf1a417ac819a2c78c160ead2ad3041f133d5e62aaf8b2d8a8a027cb4c0d665d66f8f880063c4f418098c963e7e9fb627fb0427c69b0a2b03358222c932d2267891c2d34871c3044188877b06a10db426422a709981a3d6a744b9f1b3154b47a6821753eccb0a040ce1d337180327858c08a8011514730f3464e0fe00c540610a96a9955ccac20e609d61e74e9adc0aec086006d3010cc2d9e16393fccc8f1446c30054e0d368802678a05c506476c80044f0936981293450d23078d9c3072b0c039c31bc1cd1c3845e010710386a5e53323a4c15ab94983f5844c8896139e1e353708600a1c2b324b80768846acb800d1e3c68e9b366ed6c82922678d1b19e45091e31413450e173731b819814c1137596e98b0e922064c4c8c1817338d5919b32f4d43d7d03c740f3950e47831e3f246b0a478f1f0da6146053153b068608386cd1936536ca4d82c6133430fcf0a8d95171b249b286ca0b069c266043472d838d968b179c2c6091ba51a1a84546af8a8e9c3a606d70d1f10911345cd18ada59a2b70f68875f142d42e1e891a1e66ea9879417da279016c8d1c2962ac9899414f951929590866ec905da15dccd0310335c3a5668f192c6439cca59c2c72ba7cc0142ecdd0d0a2322365a605d58b9b2636c0e2032ac014ccb880da401a66ee7029de8719a4191e7c0b9913d42b2a18332690d1229325c78acc92cc94983d586ab0d698adf158be88af02a4f251dcd0c03525664b43f157dc8d0a052add84b141784b9e0e3834086d703ede4b8e086660e026a85d389062c78c07c1cc69e6c40e1ab38d1fa242e1b71da90f827699c1833505a2f1219850cc44b19a608d80c9388b82d5857505c8c4e28275038b606dc1ca02bcc2f28265054804eb0b1616a011ac2e585a8020609180c5053c021c824505075138173b5e583254315a33ec9c51b7d869024be061691ab476f09adc0c1c1e707a907a8022100013332ae608c0a4d6835e61257123474d980f8d1a3d3ea881f5819585e5840522ace15323a78e6f8d1b353e2f5e0e375ec411b0986039e1e4112a7d67e4d09163c7678220523d535f12372ce0594198438f0cbe326669e48020070a470f9c30b3861c326e6690e343ce155f0da10e1f158ac3a7f4d1206990c386c7865702ef265bc2f3c1dbc1b30236e55c01a5e494009c92c3849705eb043621b039c286089b226c8cb06192cd509ba858acb090497030c54e9807a2c5434b69e78e9d1adcd0f1c9013e9153c60d1e3966d8a49173460c143924b089baa9c306053946ccc091a306ab8f5652ce132b2472bee484e07bc8d9920344ce162c3e72ac889122274bcd9273bbc923074b8e16ff43ce538c53ad2207891827aa143c6de478a94fd0243a8bea241b8285024a066da24bd0115031a808681894090a06cd429b90d5e0e6049d0dafa5caa092a0ce60c636933423c33ff123782abe8957e297f85b0c113148c4145163468d1a35673c148fc537d5dc6abad46cf14cbc139fc44d17375d6eb0b8b9dd643133c40c11335770be4c3e70d8a859018e972f074ae55b9af161e6870fc4f8a08c0fc6c079a35546ab04405a0064063665d8a861538216112d11b48a58c951b958b1e0b73cd33bd54ca9a95283f4573c973fc265840b8beb08207bdc2401e103ec0296017ab17aa29ab182c28bc393f2564013039a1ad0e001c40d2703c80958535834b090c037c03a403870b2e04481a3e583db075d3ed842460c193564c6905943868c55977ac6ca0b1c269c261c23402a3a0c70cb5be14ebc14ae45e60919285846009903481e40e8782d7e8acff222a82ea876bc7e785d7901f13cecc4e146ecb4801e4187a021a05666956903fd81fa40abcc26e80c948789030582d640a5d01d660d661f3c75501ba61a738d39c5a4623e316fd851625e318598404c2b26d3f4613a4d2b338839653a31bf984a4c2c73899d2226096619938c09c614638631c798494c114c247652309be60f3387a9448970387a66e02af0373c0e5fa327871d2676b2cca4f0321c0bcfc29770261c0957c29390f920eba1f7e829afe2353892f3e041b80c6ef3199c06c7a1f9701d7c085f721b7c4af7e1490e84e7e054fc0757ea1af815f7c1a5b815efc1777021fc869d256447f4538bd15a4823baa945d04a74128d4487a08d9825d13634951d11b4524fe9a5f6a173d8e922f3903590329061640c76b0c819781fd205f205332f4aa416920cd985dc421e21c39065482ce44d7221b9c82e9204120939867c9259c82629028945d2209324925c424e91523ed0820a926905e903500760107ae264c90530802449062c30010944000252cb024e7880031a70a404124630a200a9c40f084282405149e1c9cb528604aa762022251b40024509500b489078d25570028404c92abc432794ea0007e10b98a809132545402a2001025ac183d005fc6405274c90746008e80521244ca0dc2227402e7440c9091fdac1404b9c3c718244c912274f1cb0e46e10d6a1c29325402a7010d2c1441d000a22ea00d0110988e11c444c16d0812b862d082104a313b2806100722213cac12be016963c81027413c6c1432fb0c06405274f96206102e5026d40098d2684030a93168886809c70e009920e00057910bec12a0039618109919317963c89c2e40521202445434fa0000d090955c02a304152044434f4c2921f6114130131296232f4a485a21794206101091328570914159c28191a21274c0113110135d92044c14c78025ee1c99321286e709193179e2c41b28212a02634a10978c805175c68402b6c838b8088900c3d6102e576600520205a4dc806130115bd008588890a35e1176e8148490b365c838186a020011a62f28210d01012a215a240e92054838b9c00b9b0421428b0300d26022a7a12050912274f70422fdc810d204183a8099013274a5a5882048a0b432d2051c1c90b4f36e084c919454e9e2c4122e4820a66f093158084504c54e404280a50099805274c5470020405095091121598a8e044c9929db00c0652e1c9920d423278e8c90a444044633051d10b508a5e781280500c175e2022520280300c5652a44405244e9e305101a8888809d11010140f4230980868e8c912241d2862d284c906943461a2248a920f9f9808ca0b4f86584092137ec144434f8a889e90a06448c909af9004cc012650ee1050d0d0930a3c400cbd6020a017805e80000a2a00b1c08212143e08bb3051d012a0169674c144454e8086805a70c2e4432e9c3059e126dc8297302172c264a8080620241d6802058a122443402a3461f2022d68c99326349cf0c62e205152a444052545400d8809b5f00093264a98143171c28426cc8283963c69b2012440452f2c0182014826c482879e28e06309d464034a8a9cbcb00292a22540434c5470c20409921f42585e3aa834ece872f9c8e39bcd76e591ffe05453a8a69050643737a094d20d06b0c10694d2015019009fedeeb3a6736ff78e7976dd734eaf6977ef78761d779d7373379bb941f7ae5d327bd793bdebd8d93bee3ac95ce78daab9e99cd7dd71d59b3b1a1a6ec9ed2cefa63b0756ef6e15d8adaad3ab75bacff93977d7ec5cc3ccec80ee66f50ea7dd2bf3f4a05900b4a564e6cea757bdb6c7cedc1d4b97cccc9f7bb33aa7ee3f7eb83b7fe04e33bd5677771a49d3b3bbae3b6fd5aaab5e9d7336f76c66a6b3bda3cced2ebda9cb06c454ccdeb372f7c9ba6b9cbb2500dcb99b5d4a36c1f94877ceed75d8dd4df7eeeedc27b3c7b3d59aee79d759679d33335de8ddf2bc76ddd3a74fe9de49afe3eaf7bdd8bdc3aed95b767bd3e6e6da75ddecb8dba7fc9cd95ffd720678cc8bbfcf4be0bace996b15ccd963fa6b27815bcdeded1f3bcfe62fe673eee89cd5f39d6e4a6e76ccdd81f38e379d3233571cf73a82b3f367844eef5a16f14efac72ca57badec7536c7cc1cb38b25e7ec629564664e72ec1cab24c72c5d33eccc719c7bb333cba8d8c52e5631ab58fa94edee524a6666d607aa9652ba945d27774b97ceee75b6172ea0e7f44e87bbdae9743aee1d4f9e5d673357da9d94ec1ef3f4d0eb98ba774c4cad353552d6aeb5d6ea9f3b534a05a0005aadec73d6596b4fae554a29dd9b5ee566f696bbb762dee0b77777b633fb4abacbae93b9bd7bfa74761cf7af99b95a679837fb9c35d2bdebbab9bbeb6aad5dbb76e70191e6c93c9d6b77773da777d5594a76fe12306b7b3765b8e7acdcec5e3733bb9c3d794e4a71264fca4cbb8eb91d019d75596bb7bc4e791313d341d7755d0731ec9fb3bb77af03b07499e6eed8abdc717bcfda9dd7dd9d0c40d779bb775de7ac62667fcdcea9b383eeb6fbbcbb79327b77ed3dbdeb3aefaebbfd93d3c5dcddaeeaeeda2c9bbb99bbdd6537bbfbec9e4cbbd9ceee2d99bbddddbd9db277dc1d77ccccec1c764b67eeb86badb5e764776fe7ae7d52dad3dd6b6566769f3eb963e66e32bb4feeba1f937d324ff639997d765700d4aedcd5f69eded23b67f63999b96377664a999bbd63669fde2278bb33b373d7b97bb7777706e8ba4eacb5bb2a251d520021a2f843c3aeeb68d7ddf884d0349cb4765dabdbdbbbaeebbaeeae9ba15dc75dd775ecdc751d8dcf8eb99e737ab3e76ceebcdddd9df349bbf68ea50ce225881a5ec3dd81a1272e00b9c001d9c00b44312022242e3c51c1899221eb2a22421234f4840345404e747e10c140800551c189122440434aa0b8f0a48992254f9a80a00293264aa22021eaa04705a0212015869e20f109a10788c95091003cf8d1f3e4c91090a0254a36d0a4c9932101f028011a02022407c80f9b222226300071454b94103951325484a488890b2e3c81f530590168088a65dd380182024589641e1772180868680524434f8a942c79d2a4891220cce3029322272f0c59d60a452f6ce0c20b4e583000b580a4c80993212848961031710107049f0d6078c281a29c20254b960005f984d0f336427a7890f400052969b201242c3861d2029192169e2b1a525244e4414f0733272c302112679887a803404148963069b28117a0c08600a002101111d01014179e2cf959710f5094274b808678827c42e881b204886847d5c29222251b40d2021113274c5680fd0a4c8680a27450009e1042e85101001c00152919027202c4021225442a2c0142f2a4084a07869674a06a021405a809121894b8c0c10f169e3441c28213262cb0f0a4c90f1918805470c2048913264a5a58b2c20a4f9e00441e7400280849110c404e76728a8058f0208a132097611e244e9e30211a028a826448095093254880585032f4a48808890a4d98b4b0044951931794ac00a4029222188062519c00794f784373a74a72248fb81577646474646464d41d19197992230926399247f2a86574343b89913c3232f22446d2e8e8c88d66f592f0915127399246464646d3c8c8e8e8e8681a1dcd247ca43a92474646466d64e44646479dc44872122323a34ec247464647f2a84bc24632c9913432e29218c9a3a34e7224f9882639929ce4481e1d1df9d14cc247479d848f8e8e3cc9913c9249f8482679004d92cc2c5d2052c20150361b5be3bec64a195b83e2b1fe185b934c2b5bf3a89a33a96cad99686c4771144b31511737636b5a50887999afa9bea604026df5352d28d0e7a06e7f4d0b0af569df6e32b6a6fa182b435b934e1eeb6fd99a64d99a2f81b6d64b9f6d289b746234b0d063697a2a5b9b92f4d156b6a60505d5cfafc9a8dbaf04026dda9acaca288ff5cfe76c4d4279ac9fda5a57db37c9d1c08b3cca90420c192494b40247122c58038b94ce1af5175138b183197c0c419b564a45b9d48c629a504b50f3366d37679a4edc8f2ee524e54e9ca556a2e88fce1435c5442d5df2a5f963437553533560638d3086589a962af54dba408d36e028e2a90d1ad3fcc7b6ddeece00428d2a6820c30e1ad3dc529bc7fa472975fba553287fa4b6db14ea720746f648764d0e59b66469ca72441622b25849e24a123adc18c27eeff22d892424fa907930bbb3b3143945d3c2b2323c29a594d6b5d4439444228efb6a2db3d7ede7970f6b9f2a52b71f67a77dfa366c74dd1602701b0077c683d73024c2786ccef91edc911e51a33b7f543580e1b8d462a9f459ac4fc5295277428a56ad8dcb589a3faaae3f119fa207d7930c5ac0836b248f68371a5020f098cf9052485e7fb983c72b7c1f7842f2761059eef7f45b2492b7bf4112f8aa6c907c550f4996d12faa5788a7aef70d1af97eb5f22cfd56896c65fe17c495fbbdea3d8f7ebd7a5583476609aaff9e488fd0bdf752f45e257eefe091fa525a66991cdb4a96c957bd278e7da52a4abd425e035b913ce264db2179fe07773ef756e2b8dc7727a400c492d3de61ed73c3fdebc092b4608589d2743aa8e3d29df619b98731e5fa4ec2974292f6a1fc6442fbc84b7f06c418973e0874ce2e652f4f3e7f478ee3d2fa506ef7cd5fc4dd7e6feab40f1d6a091e4172bbafdd3777967987ada7024d38d2825b71cf3fcaee5bacb61339713cba5c100796d075dfd93186dbcf97b3a3bcdda2bf27bb8ff8f711c9d923f29b3e8ef70398cb8954ca70c7fa7cabc225f45cedc33dfd098e507f8c61aa04f99c1d5b865bdfe3b6d54e1cb9e727e29c0c57b64b55309e08977f5acf1fb60ff8fcaef6593df3e3bc4efbd4e787b50ff7477725825fc523cff39e487fe24d7d9515a53b1f14827bcfca9dcffdd074e77bf33def487eaf5279ef49ef85fc7aef05dd1ce99ece8ed51de9589df7f53dd5eaf9aa56d6487dd5abbedcf9ab7fba33887ef7df57515e95834656abd5ca06d11fe7131d3d80e8e87e1fc4fd03e67776e4feb32abeaaead18fc1cf8eb5fb3d278ef372df12bd9398794639a5f549cc3cdc4b1a11ff448f7e9ce8df129956c5232a1b04fe7cf0192c12448f107ce7bce7ec08be676fbcef9e1e990fda1bcf1ea9cf7df53871f55d50addd91dad512e6abecc8bdf79e278edfdfa89eaff79c78a3b246e87bdcf3fd61cb9defbdd75fd0ea3d3bca3b72ffbde7df4afc7e94f76bd0885782679965a3f7fe2acbb251f5fef33d3baefe133d793979e5e54b4110e1f2b3d74f1aa065b8fcac99102379b4ea2f071fa0dc07db106304d1431609c4e7f5f7dfd067499f39f186bebcdd7731f33db8feddb7485f36d75c73fccd556ec9dc13714ea4d7a36253c943d82fa97f747e94f67b1434c26e701d8cd5b32bd9860df3e0fa5127dd0c8f2511e17c0e3d5944d84d5cbe5d61e27611976f4254b9b0cbb720b894502445ea8e475cb83bbea003092e7f4b16113a17976f4c33b8b2cbe55b114fdc9dcb3722da90e0082b32a2ae50922b45c4153262ddb1e80d14bc8ab863515311de1b772cb2e10d7a472236a4f8c00aa83b126d81ba5c6d369ebafc97bf7df084e49def4d913ea56b5cd900ffb6e34d09a73b7fbefc96e2cd11bac69d4fd7b823d1d19d4f9faf104f4d4d8d47b79f3a5d9945e98a57bc5e7f2d7270a948d7b8121ce1a3d0485bd447de45af1b1c414e5d213945ed4d09f2fd4790efb6c8e35b12596e515f6ac7fe28f2fa1f5df1ba28de2ef22eff1195cdc7962b5bf6facb7e7ed762b6283bd943c8371e9a6efd6e046ef5551c571fa4fafaf4bbf7f75afcde638937ace73b1e5dd677e2d86d855a374a515fd67f2df186f5f286efcdafdf6bf1a68469b35defe7f5eb7d8b7d1b1c81f52d31fc4e647d8bfeb5c479bdf97522cbe0b644bf1efd3a91f7b82db1af375b32ed2617fef79dc87ddc1653d99305be5ff07b37ee27f68762eb89784ba41cd47d7d37e1488bfa5c2b1b91df49b084eeeb4d097ebff7fbd9f1888bcd765bf4de93a0e421f49e257a2fc3f5fa6389de7bee82eb4d18301ed7a31f4b24ea6e94be2c0cc9ebfd048bc81d42efbd091a6137aef71ed3d952d60e58de77b1cd7059e2ec7a2bd5b7073eb36ce581ffadc4d1afea3fd5b752bd270e7d20d8ffa97e25326802efa8f859521b366c5a7bddbe1ac6921d1810fc3e107c291a81200882cf3a6018cf5bad3cefa568e4799ee73deb783050a96a55a9ea77af52a9545f7988ea59476583425947f77b126c9675dd2dce86759565dd4bd1c8a8fba9e221452a0f91c3e32861d7bdd71a81af8ec7b973eeee5cf79cf8b1ac9bf5521eaa5cfadd1371ee8efbae7b4e1c81fbf944ba6b24bc11f8b6de636666e696cfa2bc925b1fcb5adf620c21ebc1ffdefb18c2d5abbe7ef73184dcd3b1ded6b7fa5badef160abc5609dd770daab8effaaefafa9c7be5545e57dfc528f2d6fafe6eff561b54bf7b061b5055763cba2aa9aa5577af4fc4856ab76babba76ed97fce28dbf7cff166ffc5d2481c865de19bbefde45bedd7775a8e88372eb335842925bbf5ae69d113a71ac1fe4dfbd57453b24c45236db2d92b9ab772ffaeeeaeb33f8002857f544ba8a434209b8cd32ff22eed6befe2a71a87e117757cfe0112457f51c0825e04a96a9545f559679c74123f46b15e577a3bcfc541cfbe5333882bcee62d830fea32abb313ca6314edfa3fe9e04fb695ed7763cba2d6b1d33f3777ca52854bb9d6c51c86f4b5a16c759ab64d15da89b9a9ae2e3d61685fc562be4f499fb4e1cbb8f12de26d326c31dfb853a3e6498ba51eaa80a9a5f9fed185efe16bffe289dd05094ee121d5d698b30f75dd477f5dcafac90e4e34e9558d477bebd2941deae7f8345fc399147f9dcbb18a539eeed2854bbf3e978743bd9553bd66efd166577777d497424e446f8fb3921bf73daa023f3887cb741fccd2a597768d8923ebc0f840deef0f449c20ff090beb71b85033db45d296d577a2dbedff3f3ecaa78f53c447ee2b36c76f9b912ea57f9558a7c25b8f25646542d793d068b701713366cf5aaf75e8245a41d8fae54892bd1ab6214794779552fc528f2aa545f45bed363492be4f7c6885ff9d23ecbf8e5ada2ca06d5f77e8242f572ef7d5e4bf5129454427fabb2fcd2abe2585fb5b2e3d15dc9222bcf8eb5ebbd1455a2b7e41df923038eb4b8cc3bf2554fc4856ad7fb55be1285fcfab34a944aa17fd822df4e945d4eaca2273ff99d7823ad90bc9ce52e36dbfde0724c78be74e73b7d0fee48adacd230be7cabc2c59355da87ef7c201e3234bb58f88f588e97cf6c393b254946e35e698656a57d5c773e90203408c726575669d8fcd90a4e98c2bd7c222d6de128abdcf923afe0ceaff1871e93c1152a8aa0c229ca66a3712f7f0cefa449d13699c02104331c81056d4a928c265f6986c63f25a969dd2b2180269f13951040ab6941417eed048fcd9750773ef7352d2874cfd91a118fcdef6c4d0b0adc4b5b7b8fcde7ec8c6f37f92343f10c6800038b1d6d2ca18233fece0fc247c8b4231fc6c0820822b6f8f2440c684ce31f67773e8328bccd469355dac7833b5f2e754f233ce621e3eca835b64f09abf9744ea3eb148e3b2d1db96e7e679d7076e4be893b2175a9e57e743bd6eef4235c460e97b3582afdd1e83639ba723927079872bbf4c7694718ae3be132962efdd1037772d609c771a9856aca82006b703177d872712edf76b872bdfea888a5c66fd49a9a9aba425361b1d5a0c009292db0cd97423e3575b1d836b821891e988600c0d4c493ad080ac771b1d808b00617b62807987283c1c6652cd1f8470f5cfacc066026c0c8b7252fb7485e2c33701c3495b5711c34b6357e23274418c1860c7cd86cb46a6d536c361aff587bb723146f7e55e49fa27f831420c01a5b4cd1f819a4408c0a50a0440da44c4dd1f85dd79bc3c2f33945fa527695d2f7af624829d7480e521deeab61f4a728afe7df7c8e4e7967f709fc2b0f71e9f55df5cebd73efafe2be72fecebd77efee1e27f2a545fa86f944ba9f7bc9fdcd7c79fbdecc1cb8a71d4745792bcbb8edf098fee421dcf3534e04a16154ca9d358c3e833ed60fd4f79fd5d387f98ff7f471da6736ac3e7d213ce459569fbe27861dabbf126bc7aa4df59f57c7ead37fb58feae9731c7704e1d2b7e121f5ddf6712277f5fd7380ba380dabdf2f5f82f56fbaf7dbf7a6eb9e6f4b345cbe2d21dd57c3ea73a2bc2acb0dab7472a2bc467d44db9df0b87d3afff99d282f15e73338027d669911fff93c8061b001fef3eb4f3bd63bbb97a0100c536690c17685460eecd1c7d4e59ee8e87296a8b3e3fca662933a650619260c0d1ea97684c16370043a7f8246b867968db413e5e58a4c7b5382ff7cff6983faa715aaddd16f3f95dd85d7bd27c122de7f4fbf8ae0330f613df71e4b347274c7efbd67d0486505d5e7ffc4b1be7c4f5ebee5c0c7a52ce31a34d2fda0587f25caeb790c36a05fa57a5054fd4a64f90c1651d9515eb6a3eafb5389fdde13698fc5ef3d91afc7e0086cbff7faf34479191c6175996523bfe7c9cffb9e48f3e78955fc1ae65f0bbff77e75c75a42bd9f0d527d7be2a87a79a45f25572b91af4ae45bf9726215a7381bc69f742b1e0f85f3c7d7a53fa37476e9d30781fecbcba58fd33f4da3225cba73e987edd34f29a5cf3ad406f1cdc86396cfdfdc52058fbb98af61ae13da67fc2af68eece5cea7df55fab7e37ee42fb77b219dcf5849689f316ca17dba17a17dfe769f42fbf02d07a7db3d06fa67d29cbf7097db3db78f7847d71d85dc8e3e91c6f15aecba48316ef75e7f2df67d9171bbf7b8253b4b484e5deeded53ef3bbeebb679dce06b1943779cc81906f3bf071c77a4302ccf5e7dbef63e81f046b9f1ba25afef8c2612eb75df747f0d70bc73f74d7081ecbbe08bf2cb73f94311eb33c5943381b269f6bfca7e82213cf6fc0c3ddfff6ff77c7f0ea7c0de320028cc711507c9981143ce840078d6762a665b088fc19e270a5c3ceb9fd5f6569bfcb371caadc695f0d937ca381c74561d7f6f900e07193b0df631571430f38de1116216850038b103adcc185c6a0279f75c699282f5f4fce86c9d90f98237076fccb7de52e6636cc8e457e57ff6a1feffd71daa7f33a95ca8eaa5fbdaafb1a16b64fa77a7faf13e5f554227f2fc11136b89f1dbf5f7d27f2fdc422bfaaf764b3745627f2f544be2b95c80d1b5f577ef51f2a4fe38e31cb469c2bedc8792e2527f24d80fc2a16d12b3faf3f182ef72c8ed541ee62e433a8d330ffeebf611d8b531ce5e5c422bffc520c1bc696dadab00eef57ff99369bcd66a3f9c378885fd7b92b4941e02eae10d67a4395dbffbdb8dc7e9c1542f92c2f148fdbf3f83b72205cc3d2e55b0db63bfe6d2a52f7fd67a763fd5dc46b71df5108691fbed960e5f68bd03e7cfde533c84238c2e80be15b95a6dbbfd33f92d62f020e4efbf4b3386b58ef34acdfa928c24023f2ee340cd6b07e0d8446b7b60feb3495be83b78150bee7c9f79824c844735b9c66313d772139259fc11abe70976f3540815d48da5dbed50086535dbed5f0824ed6705f36dc97740759d61fcbfa598c21e49b0d4ad72fdf6c98e18e95bf1f64b18630f7c55d6551203c6eeea1a084369b4d06d90f80dd26d2d24ac8371bf0b81e5c9f3c845f08f94625eaf2e5ebd16ff290be3cfad397efbdf0ba45afdbefe228878478eaf6177577bec781475ad79f48b7c82c1bfd2b97c03d7d0647f0ef88b48b7cab38d21fe5f5efc49b23dcf7b70da2cf3ddf29f2e5c0231e5cce32cbfc2758844a27b0db3f92268f701e4e60b7ad6459bf830f805db7ccb2b6dcc9b984c7edfe2399dbed286de091d69def629479a7159253d79fd9999965ccb346ab65371a9ed42194cf967f781e7d6e58a54f9f487b1e8314e8b7e3d19d6f4473b0c87c22ce600afe6d6b47b4dafca6b98bb5231afb4fff58e43785902fa320df6dcd8896a4452801977b49a3e2b4a3bcf43971f44bbf457f22de340651709a7c223d45be2d328dfba7d28edca8bb952a407f16f9ad542cf25b82b4d96cb62b7f8a453eaffc39a574a388bfe7a264503e91a6f4fd1d2ce22e76fd1294dfa0b79433f0e44b7104be9e14abb8e0be1ac6cc4c8394bfaacc1a245856d06f8245e4e5dbd2d27d356c8242f332cbf8275844484edd1f2ceb9f2c52905f8af2b22824a7ae7c0a1699d6d5b07e29be58d6efa251c8371af870fde0217cfbc3170f593df57b5dcc19f59322d398af61dcb011e7ca675dbe29c1715fccd1e92db96351228842bed11075e9e51b0d532ec7809173167926840e6bb9442164900147774e5bed91940b98420148c07c71673ee28fbf41138e6e105b21a3cb3ff687f28a2430976f494f77ac77fe07976f4957eef438d1931434e1e8ce11e4e57e3cba9cad2d06c983be37c122d441138eae33c8fd0d678dc8cb3d676bc3e4b3bcac336d5068c53341fee8df520cb287946cc46314e6fdaed7e2a8f7b7f59f941ba1df9f4873fbdc18e9f7776ea41fe43f9fe3beb64f5feebb378f5108bd16b74fcf4f0a73f94a5b1b367fbed7628090d19d42f24ebb018f3b0cc6eda73b8a30013b6e0de3cb56074b67c3c66958c74c800e241ac637bcdd4b0e85c73a1cdb68a308dde53208fd5369b72bf8b85d5145d611be4efb387df93b23b5df30e9a24ec33a1cf4908204186da840ca174bd427a64cdb647629a5d49fe951124a4c7b4471e587134491c00a05c10dffb0f9e35f9df79fd07f3afb3159b801471355dc50431c34eac5a51f56b91c971d2edfe8ebd8b1c9ec4efb2d08e5bfce07c71d7f466be0c297ab0d2a1dbec6f0ba42ffe112d8402d18491cc8659ae1fd4c1a3fed388520dc4a93ff72251afd71e77250c85ec4f072632e7b09238ecb603f91de6922941fca978f33ce263af7ca0c3f9336e74b96f7bfb985883b7ff68f14dabcd38e4d742e37cc3f041372e83f93566f8ba1ab63f27790086d2edfb62471e7e5db1623ee185e69837eb6a721a968da52a5a7b8ddee299e6ef70c06e1f8afeabe7b7a2a91e51ce1eaf9ae5e7eb7ea3e68fe7c8f824554261c5d293d074be85eda31a87b09ceefc4204e25ca5bbb2955d25d503d2041f608b9e9647683fcbf86f1775fbfb99f3f3699ddfaaaf7aa581b4647d83ddf5689f5b2ff545a7fad0f8822afb4d33a995dce06cda7d688e52adb06777797ef2e1b059205663499d12c9106134d6692054d7466df1270b6dc1147131d8ffec8ccecd4f29c0376c3cb0277b4081fac2c11e631d67777ff3df7cfd7b1eebbf7ba67896011d0d686754fc43f71ac57dad1b512c7b045e081769c79f9c2635cb623f86093d97532bb41dfafc6d995e367c7d9fd5ec7f5fcdf3e31a3ebcebc4c8c2842c3fa5d22081d9bb1de8732e27b4c7e4be7e5ba20f8a1ffc8840c1609edf87d37fe059f258ee105ed278eafbb12c7138cfc28ec3984d7755dd7cdae49f70c1ae99cf0971bd47dedc491bf7496f5fc3b33107888f7fc38fd5313b6646210a0f4341ad7ccf3cac68858687ec615d67cc7ccfcab61ddf7cb88b361ddcf88ae86755f237ec7ba5f89b086c9887c63c41d2d42d5bfffd0c4ac68c4dab1ee63c4b061dd87e2ac61ddb744101ad63d4b5c40c3ba0745121ad6fd279ad0b0ee3df1049675cffe23a4635df7f22568a4efca72c33a95ed669a2aa14638d6cb715606c923e42e57ba11d64f42dd8079f9315edca51b45f801a163f4bb5ac3f0f5fa87cd1a46c34e1c650f97b32e8b45356bc36e5dbb164fca6ef739298bf23bb0c8cb4bc87674711a21dbb15e4e9e20e4a72cae607feecd1555715fad0d637fea1f446d6d18b3acf532f308c39d972fcb950ce674af93dcff60199d359ff37b9ff9a3d34f42f51ddddd3df63a0ce89cd144e7cee7a457bf248f06bdf33bb0c87c9c86f1bf58c60f254c41d1a463d775dde4c622f77a9050f2e3ae81ed48c21572e7cb2fa17c662d76d898ee1376797c71b9f3dd5fae11caf726dce54e1915ca975073be736180d07b86ba2308a3ab89f090145806fef8ac1f613f4276fa07e631ffbae7d9f5ab95718463b89aa9de6b9d231e48638934966e939917131a0675252bf49804e527ca0b8a3b5a84a31021fed37a7f222dd193dfa7f21f57c7bcfbefe10885dc9510ff99a2a57ed2d35aefbf80f619ab4f7d7f12daa757affacf8e38bef2de9b08b9aa77f0480d8c1d9070ba4df8cb55cdcba0ca36acd5894224437dcd5151e5edd2ff72e9ab7f48f0187d211ea3cfcf3b5884f36b0da33b5cc21d2ac2515a9156daa7bf6d91bc45aeb44fc794a57d3a8bc5a97db6b4cf4dcbdb851ea335bc2c65274bed6811d22721051eb28270e4a84b3f890aed539f7e0b36285d6b9fb109eccaefa70f8309d58eecc5c1229c2d9a320a96d1ef10465727ee68c1d44acb37c291a52ea50fa5681402836c9aa2657ed2d390681f2999da673eed7cf8d28e04bed536e12e473e90c41960a26e138e9a9713e79d22cf0e41beab7f9856691c5e4a1b77ae3f95b72e8739524a293bc7ccff727d505de727a1be65b7ec6e779e577eff27a1b8fbd1ddbde3196cea70df4fc5f175b9fb9152cab2f9ee921347d7652a8edfe50a02cbf8a90c88b04c042118d069a389cea520f0c374a0bec7c79128907c9f562ace8649cbdde14df92d4a13a2dc8e275c7f298eb32ba59472845d139accd8cb6d220deb97dc458808527eb94f429af43be1a81b24edd1945e8590dbe377ef7ad1af45be5a89f4e4d601418864ced530eef597e32c155b326531cb66c3fa192c22a44aba86e779fc2df2efcc6e73170c5c9dcb5fe3a211e736d1b90cc2edb061ed92963e6ce78bfc944d845cfed96313ee72e573d26f98efcefcf4478ee3e7f88338b63d3abb94835f4285f2a79423942f53e08dc051ca4c9fe907cdef3945fae39c2fa968c72497fe14251aa1fc59442f9d1f44a5196193bb38afd7dddddede34785effe8eefeb3cacb3cc4efc8cfccf332fbf88fdd3768a8af4f4d311b60fee8de413ec521798bfaf2119e9a929779887b2d7a98b6b5a88f24e01eb9f41e3c3e807cc1acb4fcb8cb1df2b8a7b832450f32f0e43f8187ec02451ddd16b7f90605d32df2ebdfb7dbf1906699aba64cf006da1282eb44d0a99c6aab0a15f8b4f234bcfae55b4581ab395851e0114598705289f96e90590531130297144bb86664626858b39a8327c508a5e072fb77665278b9fd20b44fdf1e3db83c6426e022e08e38e290ff5094f0f20bfd8de2976f778a1b5c6f7e530422beaec77d53b4b95ef74db1e67af59be2ccf554df1465aeb7faa6c8733def9be2ec7adf37c5ef7ae037c5d5f558df1455d76b7d53e4ae177e53a4d78bf9a638af27f34dd1af37f34db1afe792899971d1b0ec5051780970bb9f5bf124184e539ae0a3893a6eafa089a89d76ea414ad9ede4e494653ac5e13486d38df231f370b283e32b5138818413556a175a515961a8b82fab4fa2c07302ccf749d10929f009252427f6607dd24aeb4322e42b4e41b8689cbe18a7717db7c7b831847c73f2f2c4ed862e9a27a6a855e6934fa831c3b727dc88095b2cf0f356aa2a23338627bdf8fa6ae28bcf55e24926c28f3b8a11685e044d3c35e1d444171681f4e730ced28e52886f300f3332d4b423cced08bbf2594655718af9eec3f0633a30fe43f3636ca91868c60e53f3f3b2f92d3f6c5be9db77af10ec2d1e6b278f753779ac996e4d28dd514a31d41d3b8aa96425d3eb656a7ee6695ebecd585f3276fc9fb1e3cb8e21535b91aaa109530343544d8d0d4c8d528d9254cd52cd52189a2d779c4a4f7d948006a406aaa6e6f5e5f5fafe8ef21f9b1f373796614080d81f3f7ed8d86963f3bd5e0a8d7cd558eee54b26c9f4d4124c28a39e7fe6e597e7d6330dc9f512ea5be28c8d50dad6cb279a1f3650f2e90b1492149aafb12fa49a9742237fd8185eb6a6c64a304447b76f2ceb76d9b1ced83194b1e32bc68eb0d08edfdf12fbc661c2a051851142ace08e10d060fd9454471e35d83145ebbc8c2d7280c0a6c7153455eb818712361a6c22a079732049f992c609b0a0b1c7580fbe47d58051ea838bd49287b1326d314ca6186653172fa0b5162b779c4a2358ba7d63c160e1ca8e2f951d5fd58e7f3b7bbbdd7ed82dca630c86b36395a2760c4710c6637ca71d5f449ab0798cafdbf1afd34ccf0ce1b1ce386fb7e66bb6d8fcd8e2f4c3e6879c563cd66f3399a4840ae3a271b96a6a7ed4d4d8d4d400a1a171592429ae477ae17ccdd77cd3dce0744080fc4d7df61f1b6bf340543facf74c7bd9186a6c0c34bf7a6f2e79e04f25b0f5d3d68a790ff31da6c348f5adf32dd59d54cfde34abb5c1b847cd47a2b1fe85e6a5b8669e694834d6a17e469c56249415a8db3ff3a3840273c7b649cdb4dc3a8cff7493c7fa6bf8eaa6dbefd9306deb19db4dd2d64d617d85124a36c9304f92d63f99da03bff5524fb7a56e433194ffd0b8bebcfe048fc9281b193035cf1e0b9f86e6d963ac97e2ae678f7ddf2ecb1ef3dea3a9ef7ab0c6b2c7544ff32d1bcb1e5b7dcdc7d45e76f6fdd38affd8d8133c26bf46c68efce5ca8fb163a509edc851577ecb8ea1cbb2c758766430573e68c7d7674796baf2bd69e5f6cffc6765c7aab2635867ddac525be5d7ab3a9269191878ace3b1ffa89edf0b2325692a51d2186a3679cc5695c225fe69f31f7fa697957049e9760da77f7182f21fa67d899a6066935347b1942bf90f92d10cad7e6d5a7d4d4cdf8ac9ca23d53e2b4bfe83d4bd14ae5a57f2587f677dc95da9b75ca5dbef5f2cbf773f9f7bf92bcb6ebbb3cd59f6985cea2830566effd85b6e7f2ff94f585fa1fb97d7b4ddfef1fba9f84438ba9364dabf66d3a5c99b0403a6e3a4e4cd498679da6283bab5d297278f3527a37a36dd9e4dfed3594880821508814318b4fee9e43fee030df8c0b2c4115cd0fae716ff914936b03115664a0d5affbcf90fcf1741bc3195d485d63f9ffc4752a1070f4a32d8c1466b2bfdd28affd424cdfb5e7dabfe678bff70df0fe5eb87c17f3c4b82c7da0c69f39f953da15f2af98fcaa6d02f97aa4d1203675bf0587ff7f42f2cebf72fb7dfdde57bbf14a19c52ddd1ecd00b18fc87bdaafa515ab99c2469aa6fc53c8b9f57abf7f803fffbf05b3f4aa5cb5fc5182bb78009ad744a92b416686553c87f4292a4c5fcaafec84f3ff2cdfb51c8e5efc7d9e587f94fed84e78f11e593d812e5179628a3440946f5fc15068ff99fe031f0f943d0b3526965e552dbf165a5158f493bfe6528a827f9a36482c1aaf7feb3fad5f71752eb54a9de9f04fff1bc87794cbe67bfb3233f5df9e37376e4db4b65436a472157fe18568f4d3bceaea4ad9ac1639db16f2387f9f923434d3bb21d6197edc861ae3f15e12899a4eec861c248f9cf972f515160c08cf2c97f6a6f3443f3974cfe53039f7bda7deffdc84f1d5dbdea47bed1ae7ef7a3903b4a2696adc5007216e6b1aec5c0fd28993efbded36d655f2abe6da936ec843871b6b2c7c659af8eba67175ec8bdbe7dd28e7bd6f3ff575fb5f23ed0f534cf5f9dd50a636664fe4649d25c343536407e4a52a5fdf8974f499ad16e2c901fa2eb25ced8d4d0882f97f88379e4cf88b553ad98c7fb80dce030cf06391c300f0b6c85313240a4fb522d9cabf97e6b1bfdf9dfd7dcbbd96e6d6b49f1faddd7dc7f7eedb3b596f2983b4199852a9617aebee6614379cc6b12aac67289c98be9288eda9a947ae9d4fadbe736d5ad6db6db375349394939a9beeb282f7ca6793f3613b8924c21eb470e5bf659b642819f7d7936ec25950dab7d4119cdd03a5b3dd6cf34ce326d7aeb48f68a0c8f754629553b8e3efffbcf7c7e4ea4a2149fa214efc41acd57b166f34633b42949206d729f2469dcd29c4fe7d7ea27495afd1a5da9987e92a4515fd1cc44ad3e49d25634b6362509a44d514a008de69324ada60505d7d37ccdc6d66a6c92a4d1f8bbfc676c4d4679cc5fc62649daca3fc642f198bfcad69278cc3fb4499246fd5bf66b2c9b2469d5d6428ff9835632d5d863fe9f4d9234cedfb372c96350957b2ea44cf236a1b8e7a859c752d7573fcaa895359aa1d15759a319da7ca6755f9f69f547e954c54ee4442a4ef13d26a5eb4876d749dd70fef81aff8eb0191be1d0af58ef2ad5db1840ef7bb5f26c0caaefe7b3ff7c368655ebe5b3ff207d3336422179bb271ad2f735a520b4968dc163d918be8e0bc385f11fd02281a0e5c278ccffb348dfd7bd7ceaecf89e45f23c7993767cad2cd2eaa5d4475a59dee231ff69b9302a8ba47a29d5c6309f69482acb1eeb974e1eeb6c3336c221ee3b4c96a76e7a6ae25b96a7cb7150b2a9c97f6a52dc68865657ffabfa7ad55f85e11d65534d29084dd507144d8ac7c01e4b8014ad69c646f8b7ed2885e6cfd8088df48fdd937422944e8463c7c485193ba62fb2a9efd83d754ffe239b3ce65f6b18be5e77ec9efeafad63ea9e3a268ee38e1c14178683eab92367e39a381b75fa429d5c779c5154296a75c7b934b7cc257a47bf81712b7e6b29b7f21446aa996cfdd474c3348d32cc4cda7ee42fb3b15e975184128a50defe51367552973b30aa47b45b60bc1f04a049f1a8c98114e703487f2e1c9d6ea68726a56dfd49b2a3798be63634e780e61ed0dcd6b8570a42eb294a329a140f634be268add4b45ed15a86d640686d692d005adb1a7da5201c8b30454a47539ad1fa939ce694e620cd6968be01cd0140735bf3570ad23e69dbda7ca3195ad735c7bd147f51cad9d06d4d2908cd5f2908ad36e3963d26df6886a61484c6c979f3de7f94c2f6f95392fe45eb7e4a5248e3de7bfeea3f539440a04d717d9210daea933eda94a4a7a9be3effcb7fa628e17c608bf5e127e9d0bce70fa728c168539284d0627e4ad28c36f349309acc27bd68e14f499ad138188d328ffc29494f9bcc239f3904f9fc33228b79e4cb8820f3c88f115bcc233f14430e417e4ba4611ef92cd1c53cf241b18679e47fa20df3c8f7c4170791bf123be691af123fe6915fc5ca21308f7c4e04c23cf2a988c33cf2a7b801f3c877318779e4b7c801f3c8379a915d86c7cd4f9a6111a628cd68fe4993d63ee97cfeaeaa56f4f93f6a2bab15c6c8f8f3bb5804a549c322287d352c8292cb864550c279b1084a3a3f5804a51d5adbd70d8ba054715804a570031641e995c322283dad9f9f03164109466311a6659045701b026111dabec7e4f31b4dd9511eeb8c14aa8970a44df4097c29f3b645f552180d2cf47052028136bf26a5c97f6ccd2d0d09a081b656b371b6c63d0d09a0a96ced280b1734505beb0092154a4e8411c514ad46430268d3d68c5870a50d2b4d5f78a0f97cfa53923e1ab7c157a9dbafe4a2a938cae5fc6a3245519b9faeb771d1a781e2e065a0e6d2b4efe0d7b4a020befd9af7e2d76ede9b7fbbfd7a20d3f6fffa9aedf6df1cece0756a70bea6058599aff95acf7cadfb9a928be6ff4da7db2ee54e3f9ef535a7db2f755bc7d6c0efc0beb5b550b435229ef737b6366f406c6dbe6ccddffacdc6d6d8e57a1a5b9b500ec5819d4b31af5fd9daccb1736e60937668f5553f863755c501f237320fdabcd4edd5c730ada26e7f65a27915531447ddd81af8406c128ff5d7d8da091eeb9fb1b599c7fa3b5b4bdaa175ffd9da747229776aa71fb6a59ea166dc0bb4a9799bf0b999d6874eb759df5aba0d3ecb97be07970214d002c6144c45e891c51519884f8060411827d0e20a20aac0e3071a779c51022e4260430ba488c10efdd334c5089a60810a46f00506ae04ec30079839bc54d18210dcc139790388369ae23882052890d2c106005cf8a0214a05535401c50b5a3b0cb106120f70744152c3053bd410f4501a4209386828420b3bbe27803842054f4c59a28c3075ec30595b544105131633d8d842c7efb8710213c89047135e7a9803c801d09063cb1d5150c4808b168430c871c11620c0e38a1fa0e600130399cb711c0c428e6fb72b7770d1218b14152c88c17c39eef8ba3d82165220b1e08929534ad07a05b73ff41f9a1b44b0c104022d750c41ebffcb60ff25d2ac23b77097f0f57452ea85862681eb6582a60efd87a91b655cea7a4a296d30dcb8b9b1c5dd045298c0e98ee1f751afd77a71ff3c8449f043a40d278ff1bd47528400410d62b4c08830e0a071715cae8d2d976bc38b1bbe68a82321def8a28d3292d8020479c041e48517b3f0f50fe3a6cf696fa1eaf28d8d3eaefcf79f900d19482e9e8d172471f1aff3e3f28d0d35d818e38e3f43da628be6e20d36c0e8220836aec0410a36b0f420051b3cf420c55fbe7d89c11739b2e0a6a023984ab8fd428492145f7e5092e2cb0e53a49838976f6bcce0ae2edfd6a8a392e1f14f29e4537cdcb64996b5d1ed9725ccce4a86d10fcc1ba5a51de2bea85ec90490b5db3fbf06fda728a3f4e5dee33e074b98977b4f7a4b6775b7b3427e397967fbb86d2d66332a66afd79617b715dc1a6ea841c71593ce49e7d739e79ca2e6f24d8d34d430e32580349650e315451469e820258d1ba6a45183947ea275f9e6658fdb5dbe79c1c3899758dc18e3caa72be3b8e3cbcb953b562f6e5c7f1c33dcb82e4569bb574a6b75a428a75c222dbde65e22e49b972a777cdd6e94617cfe2f2ed71fe786c618d75fc755c0814664182c031bd00d060f19e56d3b450906cb647fe5216d8578887cea83c73a734e19867cba63bd47842cf943e40c2c38267d889ce105c3f88e35d7e51497ef2873899c41057fd20044ceb88209c0505438e58352f94e9fba3d5a4266b07f8553a9d27c62f17f9a73ce7ae79c73da71ce39bf37a8534aa9534a279554d249a9945648d24929a5943eb523a5941e49c9cda0e5b9917e9d51c7954fb2ff01f2a99d427965aed40a6220b3e3054fd2007cf98f08f925161e4224a75c898565fc438824184ab08cbfa71277da271ec21cc7653bfaf317d7ad7c62197f3b857c652e7f37117a976f66407d5078cc8170fe58c779e9f3cd8c5bf5a7f4690b66385d4ee3d26fff9beee84f7dfa3b4216d03eb2e25cda31fe71f6b3fa51849518762cd65f45ee587fc739eb503ff29676b4c797a7c7edbdffe03c3f09fe339f1f8afff8f3cdf3cb9bffc8d5f31369c17f62cf1c3cdb6f3dbf10ff613d7f12ffd9e0f97b7ee9e43f3aeffa99e74fc17f649e03f01c3effebf94ff09f9ce787c17f6a9e45500076ac5700dfe20dec3d78003c15712c1290c7794eb41dbcfdff4ee4c022710078d8573166919a7eec3d51c722e9fc77f0a0b8413ffdfa3162006c009e7b0f9e46142d92155fe76dc41c8b14a3f9fa3f44a49b47caf9127cb90278d70e6d839cc7f996889463a97c4043023fe781fc0a88a5c2a271f03716e9c7b71ec752a1a121750fe45f37effad5cf884837aec77916ceb3de65a9380dc9e65baf1291702c15190d29e67158bffa2922b12c9503d090bccf59592a3834a4d503f91b4bc54543baf9f93222124db5547ed090ea03f9b6542a0de9e6fb3d66a9481a92eb719ec652e16848accf796aa9c8d09068bef5352212cc52b9a121d1bff1c052d1a121bdbef501f84f440a80a5b2a221c970964a8b86f47dce03c052114243e21ec887229214a4239a8ea5e2010de9e6fddf5289d1906abea5fa7ff1a588d481a5d234a4f0715e0ad211cd5a2a08a021b53ec722a92c52f848318f24f348ae9f792a9296f3a2a5f24343523d108b04e4a948da5b24f948fd48fe48f4e7732022dd58242a9276f33916897ba4ee91ea23ad5ef5f2371091661ec722dd58249a47aa79249b47faf1afa72269402c92f748df23818fd47ad61371018846b7fb43648ff1bf4498c7f86dc4133cc65f23c2e0317e1a5132798cdf25568ff1cf88338ff1cb882978cce631fe50944d1e637e9628c463fca098c463fc9f28953cc6ef89d2c963fc2bf1e5317e9548c463fc556cc1634b1ee3e744b9c563fc547c8ff14f91048ff1bb08c563fc2d4a2b1ebb798cff481ac5ba62f1b8a36efb6dac6338befa855ae00b793ebfc8d0f749d9faa0e9f4ada0990587057ed06c7a8141130997173499422e685ef9a81d83a69586f50ff94f3b06cda586f567c76e46d1b0fea0d943c3fa5b08d73ff7f4e7fbfbcd7f5cf6d97f64ec0ceded76bb79df1c8c83b9ed601c8c5b7177b772fb3bb7c2d56ea5aab6935aa96a27b5f3f4f4f4f4d44cdd975ac3179d4b61fa89b827eedc3061c2840923c340492809259ba09a9a9a9a9a6a93b4d9a44ddaa42d85ca85fc8567b3d96c369b71740ab134b778acbf722a3b86f475b7f410dd3f97fc87bb7b2ef55cea28560f6962dae2f247c5b1479649d008df861071b3ca7a897e907cbe27b04cc6f8472ea9f8477ea93c8497b6080bc0f312c31f1e1b63aebf47c579e592ffbcbaa1be424bf28bffbc5e61f8e5765c8b320796b914ace3e63710e128bf40c92fd75f2eb9cbd76b2e351377028f75bc191ba110b3ac3b8187f0652b7610a16f51411737e87b20dfef5cda670c02ffe6c67a9c2eaddfe029fc9c31629e0328997f2f332f7ebf7f699f91a75c6fbfdfdd689f3188e63b18ddcad7ef40f42a0debb7a22b35ac5f147d4ac3fa5f745bc3fa39103b47ec300debdf406c1cb1a51ad67f233610b1c1344cca1ff2256d648da411dd0dffe25e1ad62f233a948fd1b0fe50f427efd2b07e96e837e7d2b0fe4ff42d4284dd6dc55ba96a7777b790eae17cf507666430f2d62df84fad6158ab8fe44f881422bfe90bf5142aa5b8c4b2aeb7c1b44b30ed606e836958774f69584b3e1ad6128f86f51b9147a4ed2a3f84a304038270c646c817051e229f6f19532edfc8c0e38e4d0698eb3db48ff77467c9b1a45bd9b2f9a32034fb8ee221ec514b5f5ff5abf7beaf8444fdee3f95da27485adfa2022e55b8f4b174eba18b95a72b63304121e1a5a97d82fccbd4ccd23e41eec6d4141fd7bfad846383d9729965dd8f32ca97c05c7f5ff2255f72e954653847d959a670944ad75f2a2d35ac4aff740f3df44f5fb9d23f8d0412fdd3593ae6ef1d45c3fc5b887014725d88c7fcbd65c7ea852bd08e2fd5df4aabe18c8774b6b7743ff6525494cbe7493919d55b7848f7eed9b1ae7ae955f6ab1dbf3b3276665c19158711ce8ecfc7f89278346cda3114927534ccdfc811d9537e08e511285556ccd93df75dfdbc5f3df8df83ac6f3dff2be6c38f797e9c9997f91921f94434ef7a1a9d86892ef11bd63f23ca8831a2d8125922288662287e5f153b711ec9c886a2c376563bd8ed3ebb6b40fb3e69f5d36ddb9a11f7dcb7fc7bd237c2e959fd8d544f5ffd46dccfeeab3fbf6b7ebf517dce7bdabdd1eafdf94399d6fcfafd46f4b918d5776fe4c98446de7baca4150db4523808bf96b4a2b158ab37527931fedc7c23fafd4a4068adf7befba4152db4523860d99aaafbae6fe43f5f09080dfcac6779a5fa49dfa8fbfa3523fa7465e7d78c54b67ecdc8bfbe51f7b31a755ccd884e236ffb1d428cecacf0a623a076f34a40686e6bf36b491ccd853830eacca0b9ad25b168fe4a35b429242795d29a520242f3af49e1206945a795c241cd08fc9a97d2024203e29209595eccd7c271d5c8842c6fa615f3aa9171852c8f2666c655e30a65eae46668c20d6a5c32ac37fa3ec4f1541d7d23ee1dcb06373ffe45fff5b25238a819d5d5cd0f2b85839ad16a56a6c1120d07488d4b26f4dee87bd6d79256b41b2b85831f2f5b530242b3b135a3d5d7b8644296a7eae81b7def5f33aa5fe39209599ecadfe8fbee6b46f36b5c5f33a27999af19cd7cf835a398677dcda8f5ded78cc0efdee87b558dd5a1b1a1cbfe8c75c9589c18fb0aedab657158d6055a9d37faec7b365c5956d9afdad921c810fa6b469cfd3a8410fa8da6ad1d827cb7b343e8e737ba91aa276fc64638449423c42fa47aa1fa42dd0b712f445f68be10510775fb898a0c491e623bbeea875476c4a93f54edf8ea7ea8b3a38bfb21ce8e21fd216ac7af613c34ed1805c8f51feaf7e66e1ba5e64aaba36a1f228e23a2f4858854aad5137d1f51ab1512c9c8cc10b9d310d5d4d810bd5e483ed1eb857ed8a0212121234684e40bb95ec85f28e685582f34dffb23f58ff40bc9b6a3909c9a9aba2d7fd8f125edf83676acc171d1d8d15d767cc5ccd85126c68e2e5668c716cb8ea107daf1f3ecf8adeca88a02e4ce8f02e4d6310a90dbd9b133e372fed40a7130353575a71da300b96ec7ce8ceb3f1671d76d949adbf62567151ece067288b4fca3a6c501b99936af3ae3a2f9c21899b0685efa42ad1ba546c543868ab83b5f2801378aebd22143457dfd85fc467981dcf3b338eb5af19028dfa543a2cc4b874491b943a2aca2f49d16a761724894f0f647615d1f1285bb6e751a2687b4f52c1ecf1f2aea9e7fd28e5b3d7fad2b15ebf93fef6381cf1fc684df723dbf8b75655c5fc4dd992faab942ad6bf3fcafefd2fc5094796dbe68de9a2f725da104dc9ba12299fbfaa1a2d5fdf14351b87bf3457d810c0d158537e7878aeadde071bee87585fc723054c4ba4351fa72609b65f28bb82b3f477496c9df409c2c938f235296c9bf11552c930f44ac2c93ff43ec5826ff25722c936f237e2c935f237a2c934f23ae5826df25b6582665b29065312c9361590dcb6858e662d90ccb7eb0ecc5321b96e1b0ec866540582693c9e41fe5480f1372ffdeed3431a9e51bc23983e728a560c0e0524a67985edc9144c85dbe8141c71dff4aae3d8daf4c7142773db9f1c1040d82804193141b679820080f5fa12b0c81b460ba018e2ca42002cb97a7ef490b1ec29acb3730d2b863f8de02ead37d7e8143f8727707e38aeb5568eeffeeee5d25645dbe81a1e5bb7c03c30830aee4e18d58a65b232dfc5a829a34e16febe4ca37ea23d946bcda3edd6295cf2ca5145bca30d658630d319c485abac2694a521b6b7cf1784858efeb7aad2e1c855c1fffc6819b1c37459d86d1a0a2b6c9ec721cc7d9974b5e9d95d22f6c97e3922ec771744e773086b8febaaf03c6941b5ebe3de1c135f5d252382f68dcd5c1e3b8eec7ef7292e3b89ff5398ee37a8690e33a71725fb9cb3d395d8ee368cb10f29d3fbfb2ceec2b4668b8608b33dc88630d3568ac06d771c63a7248c89394216690a38c1c6e40e32949f594831194524abde843b545520c565ec82069f6fa820e1c247d4335e77400134c502851c40c5a7c71c6175f805f78c1e10b28585f6cf13a72704a785e90408a0432340e2d32d010410a945290c71566dcf9e11077beab7dfc0b227c68195c976f5e9c71bdcb372fbe78420ac76eba1de53f1c1829c549288f713606cef6850b13a52497a415189a9466fed37dff28843e6d8aef310e8a8a3714984f9fda18ea4f1ad33cf975454e8080a4754fe777d688fb496b5a28205d204518365afdf93523eebbafd688fb188c3a6b7337e8e8c1469b3fe9f7bffc6786e036b19bc6ce72e537dd50803ef714ea8602f3b99fcf491a1543d1d2a3ee0e0433ff691abfd76abad25bcffaa11456affa966130855a25d21100df7bcfc620f3a07bb498775b64cad4183057fe8cbaf23b29a7f959f333a69379b0be07be077af6a65fd536288fc997f972d361ae7c562b35532fb5952b9f8a43f441afbecccbd81862be3ed340999ff9191b43f732cf34efdb1669d7cfc4bceb194ca1fb995f52baf2412b57be4bbce1fe88e67a8f8a43fd29b45ef5fe4329ac9ef5fe4214a879ff7deb2950033ffcd57b124c21e6eb4b3085ee65fe8429f565beaf2f636fe6d734c1e031f931a2ed664aa62b9fc63ab9c4a72b7f46bce1b6dcae5c89a1f8f2d81091bc4242431188c00b0da5704381d5b77ed53f94c20d055a3180df7aa6c97cdb22f4e7c77cf75ecc339802f89d8c1823def41fd1ea7b138c00d3a6acbe4501ef57df600ae0b71e4ce1fbd5339842685bf6c69f05058a9f5845f6d84abc717b0277085faa787344638f198547b42b1a1e77db74da36eb22cbe55b1757ba8ba5db48b48f7bfcd35338d6cf5d45e5c30c1bbb87db3fc65c8e99c01c5d6e5d70b9457dfd87e46df907b80d3e80bbd28977fabb8890ef1c9a77e42f29344ce2118ab79d963cee30777ef75eabd639761df7d38efdddd3addf69b1e572df493ec27e39efb77a7e8ffb70a89171beea393b76bfb2372570af7aee55753e67b9fef6e1207b849d0deab877b0011c4e575f9c486de87ec5e39e134790b7dffbe46b01e6cea75a7cb91d5cbe6561c4f5fcfbaf7dc286f187734123a3fcf99d0dedd7306f5bbd9809d01185fd6c10f7fd23f7f47146faae7ece0651fbbd03973b94b8d831a583cb372e6170c1e299ce1ed6840e2a52c0c7d40d4580419b62dcf9e11477d2409bd38e6e9bcc2e78f966050a6ebd7cb3828e2cacb859010583f95344e25aa6e26499fb51c8372eac5c9e3c847e3fe5213bdc977471bab34b02c8206c7461bbbc0595bafe5e7710a10473478692ee74bb338c3bcdd808fbf93686157ffae43f44c490ea188b1106caf64529eafa184b1de33b5230d79f32f9cf849a61fca79f9ef82644c8382b17d2d7943da178485ba2ee8582faf91275d69b58e62fc3b0cc5f367de92b615bc907cbdccbe59b1857eed85fae7f13118ed500fce3fe3fecd3ef53c898ff58802b522c0cf3f7296401ee38c3b893ff502638e63f6bf8fa1fe6d8e8c11d3d68f001ccc5ed07128406216f71f98e33cc752bf0b8457d6794f907b80c1ea1775a4a65e784c7fd236d3321f7a88a278e7062234c0c629085c6615cfe99340b78dc3ecdd92a8ef5d6ef7848c7f1108ef210ea3cc49b87b4e4219265dc33276d10f7fe1cf7447ab657b997d58eb55eeebb8ee3289dd3bd79487dee6509dda59513eb735d3b2bd4dda07e9fe2e84f7474dbce213ce698dab09d868d308f7135ec867bbe95208e3bff86b346fa72cf37a82f973e910530dd7e28b5fef19bcd669381d66f42fbf0ad0aa5db33376ed3c6f092d03ee16ddac85177cab439dd91c1fc4c01a3b4f0ad0aa83b321eb79f132760071771027354112730c752c3f8cedaa7a5d2ed0fa3b2a824ca942b94999824a1436a46682441000923154040482c188d08049224c8f10314000f9db05654a0c9a45112e328848c2186104208000000110091191207001897fdd35b915f8a1febd55527610e0efaf606e4470a3ff45e2671f2ebde8b29b8a5f4259bb1258b70fe55afae2abc29bba51ab102c939f975af1b8b2702ee98e0f4d06f6f7c724af9a3773349ce7f7a1ffa93c25b28d988256edea481e4569e34bc7fa2607ce91d24aac551305c5c8f45e1a36f9d2718febf095037906076045fd7da3e59af13464eb2b94d83dafe80525edcb3a6874e7c095d6e9eefa0edeab548d439dbe5b7194b5a8c09b0ddf22e0daa1f158a8076a3184912312627c9ead1c9da80ad2d466a2d8c30a905faf2273e4ea6882a56a7d5fce1b7db614c4f99a3c3277dbd38ad1ff87b88175d44fcb021750b6d32a3f7de1637976863345ca320d22951a2a3355a7df03f09020e0085fb8e1420a04e9503890633fdfd6f438cd075f5a973a0f81eaaf43ca856ddc37ff8f16419ba0f1a4144ffa5e28b2beaa2965508772c020a5decdfd87c051c1ec0d54b288c2922468b932e665f34f066802ceda2d38e5e037df11ac3fa02ba694fde044e188de392a5a6eb6e537943b21eb4d10d190736e6f40fffa68b4f42cc0217b771a98b44a8190883fe702ec1692604106261683b5bf8742eef4d4c27ca97d666af029962dcd724fd37d8876d9c9b27e37816e667f883a87f37b5eeae65407f94d652d0f14ab434f081576265a554f63dead8b596ee854a0b2ce3e6021b372af0b9553c59f900085c00fa8c681a9938a4aa762fc4d7f7eadd6f43d328a116de46d01d3b127fce9d1962296c0028cc646d99295643c508a85ee6f014c393402c880751f041fa66d4d7c6f7847e753a2b386469c834b25560df1df80d52405135715376e9e6c7e6ca8016107cbfb25cf5917475176d6f3cf2b925839bfe76e09cc9d9a1b3610d4a8bee2e07d1dbe351ddde9b73bab1791a81dd89c1bdd1e9bd79e64398c966ba942ac370a61fccb25d74c80a2b100e2fcf5265d469846542939742e75ed9792da3a0a0f2e5ff6e823c98390e32a1f0f6ebd3f4b29dfc3ffed369e5c5a3c0f4f8f0974a4c8feae5805e200beec5aa6e7c12df9a28cc5ab9f7be078dd9f4d1cd5b5184a18edb4a89d86ba5daec14ea6e5dbaa3a596a75b4b1b26d4e2a7b74636948cad314667d772ab25e3a5e2ae279abcbe415ef94c35354f539d05acb2b4c9b5b5f79f05522ed19061ead297bf134b1dc52fe99e60f8ece0d3c5d23495534a4691613a2251e5f5dd4ab84423bec98d1373964493ebac5f906e559a3d67b13cfcf484a4534511565dfb5a4a082a0d190b141bb36d0f7318cd5d0d8ededa7565f3a9e35ba59e0e19711d37ffbc33b3eb69b7c579e43684ab816e7e91eb62fef5e074d13518a376871f32c157a92ddc1b9afac295764eafa13c17767d01e635b7780ff1d78ae1497971b92cb984b0fa90f438fda1ae6d2fb847ddd7bce4c917cbdbdbed5ce5bb4eec20e2240b06cccb18429754d5d1030cddaaef808d8e207105ac0b4abf1f1e48fe3647278b2573938702dcc4a7546c13c52710679292ba96e48c19142b617ce9bac0bea7f1f8bf0dc6139c0c90b17340b135dbbf1a51d7375332164afd8d53061345d151f6fb20db854b43ecfa608f2b6a6b081f3f29fbdf1650853190ca194b3a749cfd988786e7acee418f51447c6af83ba49f585b92716866af051de80b92cfa77bf368575ac61b77c8b08e1d8dce1b4ffdeb2a17d9560f5c0c7b05fa484fcc36c4dfadc6794e9d5595eef14d5408dedeec7028759070f6520e2e77b002f5c5b1b8b55ec8fc50ebd68480ae986a3a36575017760a4aa1252cf1330d68506bad151642dc90561bb2bd335b3da1f5f761f17d7f844d23db389b4ad6614a28d864f83f5b2365afc8ce2cdb57834aa87527c5161437a87e6ad4059eb8e0d1763cc64af732d5f2739e8c2c90f77cdaa157c0b19bd419baca7b639d5e5f99b64b30621b94c19ad3ddc260bf1250f9566c34977c3c793aeeec0d1183ac2ff4402fdb76742ce54f0a9d3acb75347a57091f7dd2c303f4900a57c17389152cecd765e4053b42d64d38f9f49beea6f87f7a30858be818d3f740553a027d2962cc8a73eb5808baf96599e924cc906de3b1701843b4ed145bc630ea10d386543caa914e9506b7a2747af03df702aa74d1f81ad76f106a820d7db6c8391a808e3425f9a1e59adb208853a31fea7dcef5aec39f32345a50bb6cec8a5b59207368e92f22133fad7cd3cdd090c05adf3e874b6fc2eee561b726b105fbadb89a1f52de8d38d86d99cbf9dae038c16ac8cacb228b6fa5b87c976c65ca836f9d786d1069ea88602574f52df2662eefabe8f9bd14eaed474f2ae21f90bae1e6e0bf3b8a3d473a823e3e9a50fdd1be71fc83f34e7140138d6375b49b7ad8972ec74e747b811a9f7b8086146f552eae316a2cc44b17fbf8fb22636d28007cd81acb4ade356b2b068b94080826597d1418e7ef09b6d762c5f5f2bbe2b7fc00d7dfd1d175b6754cbfdf675080174b67d70de00110f23bdddf59e5be742a2fed2f74c9c344248f965363019d02ea4a18575bb80930453c2770230b1c787288983d9313570173744a81bcd72c67584801bcde83097d8c37b321c2d59a8d5486551c0cf773597504325eb97b3a6b6b48886caacefa5a9c327e61672326e92473b5bc6e164255311715d575989371f5004c96a46d62d36aa820c268a4ae20319a6d166f8cba072ae9e3252a30a07c241e3423a98a344a0744c723954ee030a6b7f9fefff1f40f5f7eeff4af2b3e52edd95b4edbe5517ac8a9b590a975f900813eae8db63d8c951c20b0054ea07ae5ab59727f7be146b81b9d694bf02ea71cffdb71ed15c24d1461e4b8730b381a12326d5f99b79f51c99550cc493d92f7f4d320e2cec7c6560d3335db5942f723f6a4b36c69b510fd5171d56c4c177fc6e749c5d1cc245bdb75c80d6e9f0a06ddfe62068af05add26584dfa3ff51999fed5249166025730da834b5bd81355c4f9c9456813781530b50c83648ce17d866f79094116722e30e68ac08e926b164861d4ff1b2be96576919a2b94751c4cd3eabb888a5661c67e00c62c1d727033b5c55da1f869d46ac50e84beaea2da2c285e69ab9869aae2706211ea7101cd5f00ac159ff85cb4013ca9d512c14d95704a8ffb02d7efd142af857c63dabab23756cc3e5e3048f3adce16516030ebb600839d12ff05a35f62245309b69ee4fc35436828bb638835db655a1b3fd11030bd2b20d081242a2703958c33d40b5c575d688b73f2d87fee46dd831d3a8e5c9fa2e221932fcddcfba5b2753c083a0b050632f259d6991429d464e8170be313ef1788d5d78084977aa7276770c276dfd7b6cbfab470c11cf510d47a06bf2b4a21143df42c529bba2a9323b0163f535c84935e0db94278b78408677b2c5e9ca7c896c0ef398096bde9e902f8b69d03cc2d1c5b2a5ef8ca4cd6011aaf5be4faa53203989680cf9189f46f0cc05c3ff8dd49770abeb6f9b59caf93238054640aa28f600d684f2cf584cb986b6464fbe2dfe43b4fe127543872911d274a10f06fd9e28044b8a2015b8a7436c1bea0042b4984ff2df97d6cf9756f73358ca4de466599c3f9121fa88cd333efd91db1adea500f39fd6c66d66b3e0596340ee31c21a5db0d794e55b0c67ec1254905b7020b5519729a5645eb554164a982fc53c11b4593a9593db92a285c9afc77455656d37a05abadf7be527f037bfd8bf7657edf13100c2a4677f34ecfeb7281b7b2e8c4f85d9926cdabfdfad62d81bf11034a9a169a9a6b83a02753df01edc779859a68eda859daa93199d80135ab1a2de2962eac26883e9f205e53b6971a696df6c29ad546782f31165d19076b19a11d841fcd547199bef04d5a49b15c57e393de89350838aa3ad17f28b522daa0597cc94834e4c0b8a28483f674f19539b42739014f45d98d2b79c3da858790ab0a24ca617c3945e6a24039bb6d64e45702494f45312d5520e98979d6b47b3008380209c35ea4a3093df0b66afc81c3512a4ec8a4726d1b9d01ed103c09a37716755a7be18ddfa73e3a68786a26a743d4812b1821fb90184741df5002aae2b18b0bb96e8493a80f5232ce0824541cc90eee597d1e92e5a1d33e585c38c81ec0ad08bbbb149149f25fb569260ae7242464697690102fadb7c2f65071632be17c7f974b0f69fd068b3684984ed30f63d7e2fe2c6da0c36bb9274e772717976cb96eeb9c7022981f320c8ffcf921e90bbc9e5e421a0aefdddf9ae068da7a31c70bbfb042dfee7a71fa47b9a6d0ac1b8d4422ce07cb039959ca364e5edd74570aa546c97b8c5bb1adb8ddd8756314c404581a2e787131d8261c111bf74f3981c09451df4fa776371fa530d40d6c24d7add25e031033d1a42f819f677a0d84279096006fda8d1abb080f1cc6c587ff530f92886b93d2537b241b0085090c58a391e7e8e3e94e58417ca5d2b1632a7a96a250e00f740ad4002effe2e8a95f43357d2afc566064a5d8fc5e1558abc056abed1a67216b9332dfbd82b7a902bf539b55e3b38a522d57d70c5e58c3956bf95dfd0cb9210416faae58b990e17944a021a54c311b8637490a608540df575595744ac3b97d3e2d273cc2cf8b0970347f4f20595eab1cffe7a972685961d7c905a536df6fcc9974282c7d9c02bbe3ba19671c17442444f6425de1feaf77ce0b3aca8c045501d12892bbd6d33ca335331f8b5b1da1fd0061b0eaf89e83dcd7901a2ed50eaf79d35ac3d19aebead6a70a69072dd43055140a93d50572b3a38befedc1602a7f60860a3a9c7737f53aa038b1d832cefe0322df5affa1ea9b02103efdaeb32d53e953e0f2f6e67dc22166d9eed533fb3718b52773a6e191237b44c206a2a21b517212ce18eff0610e22bcf511b5db565de28c75684b423f8e5b5946daeb86c2d4b8108e67e7d91cd638bd3a7ee4bdeef6b21b1131d392a0b60477f71ee7c21a345d8e6c588f120c717c50ec6ba020e56d3083bb2876d3c02d4c93eba033d5fc53a95858780bb33a6bb8d29bba6c4e04baddc157252ca69e4e7a71324c5754b9019f52d7193208dfcb495425fddb414f1c647ffbcbae34d67f917d3c5a6fd11d8708b3ce0863981656bd748047ad944d246b5d0ec0cdbbbd619eefb996ebf3ee9db7fd15c47112cd7bb846bb3a963efac2818ad5f1f23e0378b9d843906d98aaf46bd9b65b2c6d088be2c7d6602853b8c0a376b5565604b428749fa89ce4bbdd41dee579f732f54b490757671b4c816e3e434d37a736a4ebee0e3b30fd1401692491080aa6a4c5050cc85d8a40d112dbfb5ba080c32a219f9679c1076c166e36812d2cba3332122593268009a4389cf64f7d09ebefd682c6d5b1ff05ae11cbea4b33c1088e5d33053e55e925fc0a5bdd08c0132ae16bc5dabd43c34014c5437e160d3a1dab8029b931ac7eaecf1c5661c7b5ef1a1626649fcff68cab6d7ab1f1bb85c91c854e87c3068e674525f9affc9746f7e457b491babab1e69492aa6fa7becdb98d1c290f9f1e1af171b6541d1bcf665f7905e2eab19362f3d60d6b1cee0d0448e174b80d8e5342629b44c9842d111470c4103de2d891c2062d96d040b0ce65b8d128276d55ab09e3d0e5987ac41aa1c763fd92d836cae071f50b7c1718d214bb9a4e2fa3ecc97ed70e98d665c686e97892b96a9a1810f796005ff37bc62b0ca499f639580ed4c61077d94c6d9d8b54e17c4c2ef36e352af2029e3d46b008f8126d0d32d7969920f14f5969a11bacf2a93636742fe26e1fc88aae6e7eddcb1bc99cbf427a1154038b3ce6aa20c282be7afc0b02fbbadc9c6e092590347715a01a71eb1a20630999be02e646661c4bc38f519aa2e170f8985670988148c102ced6eddc48ca3fde0ab281355cbe5d9bad492bcbad00d97cbe1a0fe270f686501d9f21bfaba2abc01b4230718d184589c5a5b7143c1620d1eaf466b957fa8ed28f55f0080c5915415ad4c8dedb0c2dd5bf8190deb9d64d7b75280bfa7313374f89a8166c8bfd8101e61b6dbfa47a70bc4fc996ee4d9694930fa7aa023145e8b4eee7852d88c9838092b491029419f2c51273e91b2a60157a87392c4ebc3dd60895a1cd0de36f46146433e818401913bca3c3fee4d806fe06ebf3b2798755c7c4a890dd7d84bd399e409d34902b4f08cbb6a7b31a66d2dc5407da12dd5b885f436903b5814e68b2ac7197d5eb4c64de080bad9e55ddc8489003b46e550a14ff69f85606215e6ea5d0edb5338384ec4c19a4a3c94790c66bc17a2d4966463c129549cdfd1163fb121fe6b8f3b41f0f30fd401e91bb9e865c0c6801667a1c43bcb0deafb413b77b019fc46168fc64566a3a11a50591ce0a840ea37dde2c6635acc626e01d87cac33e9d37dc5458fc0b88d9240b46c93d59e101631833407c1b5a0e5d709137647e938cd6ded6225df261a543e8e870dd36a31369e0cf76640456c84af86d3b5d123ad92dffb1b911d226e2cc6b177ac933ca0e1f8dca174aa33cfe5f0a57e21e1198c6f7a8c9458a81b8aaaa826ba767dfb5431c352525f79a7dd542cede5d1585da69b58153725e153cedc6715a5d2f9af11c51039e37999df857a2b50f5f2326a8f3631399857bd149ff8bb4e49f68385b916a29c015ca9092f953f9543b557a8f1320fedbf6b49488fa57239573e81bcd7f42f794fd98820a5ade3799ede1a07ca994ace442c26e3c2cc54b1b3b13a0abe62f8b2790bae50026e3304be5260f9df67c6a2623c7fd78c2910ecb1e818ddc0d94c16766410660531a2ef7a0a6f19048c70af3640a63203f71dff53b247858be428838836d08a9feb0f3501179d6a1e63251dde49935cef5a1376422d2dd1652ce68efd4378425416ba79dbc7dad6b511c4eda675840c5607c704099bd7b5c230341ccee67fabe792f61c5885e2f06c4fc0dcceec11123617b8441943767e4d0194868139e7117bbcdabe012a56f245e3630572dadac97f8e7a8d23cd7c38608f82ecce7481f1fa6e0cc3d4dea6b129a518a276f3b934b02be3f6bb930bec0625fca78a1de89737a89b0cc1dbdd1e1d9e2b6a62e2a1d7cd1112d634004aa7fe5858055ba48ae648bcb81c512f4306782f350f80ba6e060077f15eab06aeabb6651f6dc5f8248900bf5301a2bfe49fe94401c33735a8e8276d510306930c43fb1f3224ef0831841ac7b879ff24250bf801139ac076a3f72a2ded7a32ac812d04e3c0110d2867e410748cf0f7f292911e0f06adc2bd433dafa62eb6a93b0e628fce174fd60f9a70ea020c09c956245f199df6583ec696f1c7138294afa4d734bcd086838c246033b26e231b79fed9f7c4ba72a3ad38586629778a4eaf8f631c981072c569a2d9fecf82267b6edc389df952189f0789fefda15d21a1f12f200e855e558e8f4cd6786c18cb6ade4f82963248ac3d2d20ecd124be021a4df359027a4b28afa305449c6ad604caee4a978d71d430ee9beef52817c9561432db6a588a346b59e8162d47628131302efc538894e5d75ddb5e898f5998473bc972d5085832221b9a69011368ae6f80ba48c7b4f82999c48c8b57ddc88d1254ca1fd8bb442da3b4a009b68100268e8150f869056aa1e9ed1ae1d9a5921e2293de263303222dd3d51ba8971a660c70a34b2d6a39d895ed1f69bd64d742d454441cf63db61ca4d9235d11d080b04886f58bb59f09164ab05b937dfdce669d31f2bd59e36fc94507043cc73b89861ca257a20838d169bbde00d4cc4eae6332bccb57ae45e217dadadfc5f8f0a5120e32fe6fc2559060dc25f523c241554ae3662729ef192cd25355c1c6d0774aace5f510de73bc7a23bfdc4e92ee53fff5ef60a60628da21aebf4c4aeffec8b4b40f710945a929f7b0adc2a39026bd158cd9a67ae3cae6767cd6f3593f92222c603e616128cec95764fe0ea93f79c92460dd066d6b12fd4310ffd32b5da88fcf136c8042bc70bb0b56121a34913e2bb4eeee7371a612dbde9502541947060305869a8e2a46483fc3016b55b4d4955ac3bb4d9dbc17a8f7c183a6b42c5c31b55b1fe6669fb0cee89459a1b4b3e450a01f135fa875cdd9809c3e7e640eb67bce5502dbe590cd0f62bc8e155d1873ce5a49dcda43fa872f1b6fb2b15af369e679d3f55aeb8395c9baddfcef18290cd8c4d2f2b93dd4be91a159700eb9ac4c30df9f246d0af21c235438a3bfee3008de60652a51502fb4a5d254e2c10342336e3f7bd869ba5a2a50bb95e186bd6f6fab57b078773a564d964c6f4ed6678e54a8a5f72801d19dd69657fbb2438ac8625384852e7fa317f060a838c4c54a55184a172109670d15b3a2859b5997eb9c949bb657cb8cfda1cf33c94d3f2d1fcd36a7a22a9bf203961b08f0d2f3c9611109959d2519c4de8618dd884b1f4e421495b69fb7c75ed271380d14cf2398444e1a20e5ed738e53074d31b08b8152082be12f730a46d7a9d28fafe8c88f81a6e1c1114b42f32eb008257542a860be5a67d0f1a968faaa134a2b54285b34bb5f16b83569afc7714214a3402a4338a902ef739b1c0cb89d6070ce83226d3b8684774942ecb6d9255fff5d3000bd4aa57fca04a345665bf49355c8d52ab7d454a1804ed904992b928516d408973ee851572ec405f06d9b10891f6c23cbd7cad35d59d905e827acc38bf67b23c5d876737195b27e186a4df420b07bde5fa616fa386ce3d8208b11b7e23b7ebef2f6409f31bd798c7105c004fb3a373e0a4b6c33486fc24ceb9bbebc5faadc16411365b510291446c221431a3e24f2d89b169fb81d20a58d8b925492ea011564d7ebd8acaacaff4d0a96345d0295558badcd125919b7cccc5b6466905ee47fe14d2115213f4925fc59db1c4dc13b7192646059f363ee57ca6c69937d2cc1739a654584335e84ab60a9dbf2a08914e7d3dacef27d5237fd3e28ec956d2e528c9df98f60c3c4268cc75dbd252c988346f2ee30f3e57285bc68b10a977a0e737e60f1050c92efede35624d394311ebc52fb70f2eb1e9143a3e047c8926ca74035452ab849b2b37613f1279d864d9ca35a47492798f6dd5d7044293612235b57ea143a8d720dc2f9c827534f8a8e87a10bd87ca3696859386e8dca65c72c211490d3be747b70018e86acefc749d823237ef305ac656e31a2e7a54019f2307bdb49f58215026de8f565fbbfb7db7e1af7b18764fa5e03a51790bd2d78c67df666f0dbf4bbf3c6c9ca8558b10c76a015decfc1da4124414d2b10d35f56c591b330e232b3c0b705f029e5a809343fddc46f2bb28771b43e1f18a5e38ac22417f05552182c10038bfbb10aef300ca2f140432a6754eed55c2617a8686bd7ef78ccf77c29e9bd5bdb3b3380c02c6285c052c0a038f008a97dbd65f293b2f858b6206be64cbbed7e19ad6ac7fe0a399b588eb11f47e7ed1e9fa79bef1e1563234a23833094d55ce0c626e8e7ca5ea0db83f59c69c316b28cb743a0287fedc3c8218b60deb12ae1f2b6a97c5ef66ed768e40d9b28fecc2c9bb0a0ae493a4e4a3ab60a92aa3e9517f3160539ee3845468b9c263cabd3fdf706bd2df9cb12c6876e13b8196a15d6bef56bd6e6ec622c170a129637542dd9081894c369caf60b27a4df9f052a8ea75902577ed50b93d239b6c5a06643916d916e2f45fef4a9a27628e71b91c21a7aa4dd14932f9d59d164dfea4bbc1201bc77799d7aa26e68d49d431028df03269a10e5d89d6be2022cd29788eb873e1aff961fb0ff480293992d72516c9619351bc6de5ccd397dd674662b69e4ff35f175104c29fab04a58d31c30abb3a6e5d13ebbde9851e21b47d44b909e206281a465ac8a7845aeb56c614b5d5dd741b5393e61b83b14eba4166af07f8c3e54afc3112a331d94a6f4070620c696598361acc4304080975b42640c0c6cd0f2ba047207f295079bfc07cfbdf865b609d56da63c31f839039dd31da21120cc4a13436411fa70c4629d23942dd62a515e827c4a4c7721265361dc0e5afd9d44783fa60bc8dd1d397fbd7e83b881349eb188f320292c6c1b086647942a26c8923c51ab1d2d181fd629ae59f7bde20345f01f11359566e775cb3a953ea48f7a3facc31729d345eab18ad0c87b2e3751f80bc8315369ec37bd7ea8f8cb060d610a5afd9ab5f516f413890334cc07536cfd7d6abac7eaf2624e2de0788a2545fc710e1c92689d18c67ccf07c9a193b9c0d64d68a6ff4d2c912f1ea1a2e87086961a67988089218c9f7b4b4363dc5c6777b31ab530ee2a03eb175876714495c64a703f47ab4c0e76b7094b3edb7cb92dd174ccc8a86ad85e1d89c0fe406f283df48f9a11b203f3837d6e70afd606364ad5fe75f17ae0e6e8e3a4bd6498903bd894e3ac45a0f6b13af8aeea704b4190a3952c0b9693fd23c184dd94dbaff4cc3eaa6d27892589dd351bba0703c09f3325cf5948a53505433389f4f6532d28eb7a2cecc5d71b90f5a9923fdfa5793147936f5a87357af40ca3a336e036719f05359c9fbb03f5515f1afe77288eeb2cc53141ef810313a5e215230fd3f8d61a375d03f6e12cf02f38408035dc77caa6d9943fa502285630b4a2bde4606c73397898667246453236db0ce839f5f8deefa388858860a4d1a14c95873b2322e562b41a9adee44c50406d7798121dab8b2344c32a4983a0781188562f7b9f344914dd245b264505fe01925ca5718136046045178f2239c96aef8bd7ca24cec22307156a2b500a6c73dabce31b60af431f7098d7f1e51a474a7c6dc6a1d7930ed1108f7c7911548d6f0aa88917d4960456ae550d824ff4efe71e1c4e8f64df1255488e03611eea58487c818d49236051ab8400616adbd0745e4f8350f27ac4618f396f0709d553ef4aaf9b2f24b30fbe3e9b731e6ed8b7c5b0a5a5c3bbb0cf049a212db8f818579e170ef1127c33091a1684b86425b70786b5ae586f2d94a51ab9f172154e1ba17b0d5c195f26dacda4f2dddd86e0a02a18ace11c4219e8ac0e49616465ae434a424c1186c65dc5766158d74359e8127b4d798dc46a08587d1314ff58efe21e6ae227d7ee1aee2320b457a27efc109d6c0ac42f859c729dcfdaa1fdccf5463ced72dec1efa94aa38d8c2f37ce5b8e027a0ae72f154c4fcf7f2332e6ec2fab8afb15330970ccb6c7466dd3d5c3b54f2218ba0017d372e8c96c30662818397eba54fa5c1095794f6844fa744d2f1c4d48144c852cb7feeacaf2e098e5adec090f7200ca15dfabfef2f79745097abba58045b313f0a043bac94873ddf1f4386e52cce853297b5d46df52429af9f7156eeaf36acb03734ffc16908bf080c04f40eec3158364161f5bbb2d32b3ed55fda4551c9740b7ab8a07b711cc86f5f61c6e8dd96052002347a24aba73d74fc8d42013b6c8ed77326b572c091726ea402d2ca58949d5a7b8358f89d17470790392793869f500af6da458620dd0b8815e55e9908eb2c61b57a4a88aa454f7012f2391676581d21143956903c3d96c29eaf2ef6742cf60ea29b65417908e6dfd1a5a996a03a1d541b7138e61aed5af14b6c54b483a7f48bfe6f328ee90114c3ff12d3f8deebff0438c69b45b5f86d6f93844499daa10d595a8034baa44112698b9c0620b59e793d079e47163c8040a589adbd733ddbcc1d1cde2d8e933ce3e85ef9bb4541b88605a3c2a1e2959b799db673ce281272d99913b2d8afb699c378c1af9ebb65605571cd482efb4500f3bce749199fe4158a08503d0dfe8ef5b5bdb56d85a2f532c8c9d66a8bb6bf01dc3934e19b4e9cc0f8e8a0109ecb5bae86954c049408f32f37bc0621e7377f9504f4fd80c36eb8e305727b12d202305f11e3287e7a524b90cdb858a00f1fb4f3c845baf8de8fb339f0622e0623bb31f3d43cfa84e8f9ee210d06f1f82b0517451f868ffe02c3265c4fe8048248be0c61c4473b6c6ad8043a2770c1b6c31941746c419150c39d9efe3388b7c7a31bf8b158eebccd6da19d04267db5cc714203e7f6f1f2304834da6589b8824c123ef2814dd7d46749b2ab685a18f014326382f7863d0d72856911b68d85e3ec3121f6fd491f70af20a18c5217b02b3ea3428237c0ab29cb2711f8edc717d7f267f4d11f0a81122f5b4b98be91239ad31026b7283f91301d24c9a6dd7c79c17f2cf0df12a6211fc6eb3f7b69c98230c9917d513be77c2aa1c0798f86c1e84f9c788ac88c5b4858cbbfa0789219d2e8a7f363ea22ce70178a779ffce6ec524a22ddfff3c54250529382056878163b825f770effb2f47721fc9d1657e1b2085709ab061b3a46ccec1bcb32c4ba9be61b8d73848d19ce6f0bd70d9aa3e382a8ae060a51a44b5ca88cc48544126f4fb4633bc0f946f15158241add68d5dd69d08d10952a32c2d80750f30a11bcec57bd7db3080c0cd68746b9670cc40c40fa6fcc97f0c716caeb8af29712eaa8c24c826f13b49acd7e0922e6f025da6cb28deca6c40da5f6249effef7059b271d46d9f388dfc19be5d099ee4765f13fadd8c1e378172b99147680a713aa160e79ef2a57a03ea462a51ca00993a4751e7b4c4e0db3c2fb8d5c7c508d73af3b4cbe1775bc8a9f45aad3d6abb982214d38df556b872865a5524711c55bd04bb324bf1dc7e2e676cccdc51963478874cf3856182da88ab829c32c24a29978e86ae30e87554e9c302e62b0274b04840032bcbd3f512da9e038b69640de180220813ebfe99c3928f3689ed502eb1f19b8c3fe34ae54858ccd4181bd02c367796eca3edb18410e5aee094253c64b70440329c3fa5603a53868bcf422cdb434a041e1c645eb15306042ca825deeeb0fbe1cb688f25b6bbfce51f140bce99f01db402acfc49dd3e63733fc521ceb1c0b01278668631fb788692342ee8f6ec01078e1256dfa3ace7a0f394cc8d04967af489a75254958207910ca019d186afb9851bc075268dc78857a2b061f683261f5137ac9effa45087ef2ceeb83f443ef47895ee83360d929d5d4abcd05de8208fc43b157eb6ea4a756e7cfe2f61d19ec90e7da22977a03da06f838c7f2a7d89d699a7b75c5e8ad9ef4d5b5a224e2287f056a423f476e00721b75ba3d689206953a3a2074576a3469d0b88dcb64e0d1782d46a6d54085c504fdbc12786a8ff0e04795b15b51e289116d7fcafd7c92af98701831fc4c1117c44b4e93ba0fa7ab1c4aac61e4298f2aaa50190eebe39117dbf4d31e1661b08d9479c7b4751dfacef70c4056e55c6ec2e08dab80a84137703c677477a4af0e84fd893671dd5c7d48c9fb2774b3a15e1740635404e7dab2b7cb6f33245e7c0a8416092626d8a02d792b029b882b0fef0bae832d6e0bdcc2b131f892c0f09d72815d3aa335f284b6feeff47d9740988b7a2f3c5e6ebaec66afc2e3f2752caa911baaae079479cf8c805a4e944b56730ff9025564ac66522840e7b99eb135a097f9a083238bcdf7936f2dc8a2638ced0d7fe0dcc295396f41543201996cb12eafc28641b2c0d824a042c0a84fd8b5bf4be873f5465ead0dafe596821abbba74ce525fa9a39b76dbc3dac649c318dffdab00d11bb538b88761d5ea1b6d023406d4cb3f7a4ff06070dd520032709a62dde07c6cda0068eb4647d3f832b1d35441f92827d8d9e5063304834c305c341a58dc05f523a2a8f063ac10d94b591f832b271062a509690c22a1ec7712e1568141f080c04aab11f685d0c10759afbf234ce0dce1cdf85ac9037d9136a3d7759b1c5e813f492dcad1a862a93742be73424d7f0dba1875aace73c15f337291a74c6143ac0735e54c1f1170a3181ca5e83edfdb0ce1de6b65dd74189b49eabe2f2d2928da724204d7255d637d4f0d19ae36bbeee011905da613d683b2deb1d10a92508666d2eca4416349db0a6461a5ed4f6bb19cd3f68f2ef4120c50a91ef92ee53c75b13787749ed3dd60151933bdef6d7c5fe2911db6351f4ae9f1a855a71da9209ad604b5bc5300f33b78ccb58a3692f02e52cb33b5dfff698c563bd7e72e94d4fbd0d93ed0281bc044f3b35095716adc0cfdf3a025345ddcf4e25577f9abf99c196f6a788b9fcc51c7ee15fcefcd539f9db6423dad58e9a2f8634cb9055b6cc037a4cb7ba68240cfe74dec57cd65883e1e77515748310b862e9325c542cf52e799a9b8bb41c4289677cdd6fef7c0179d1640c04ab3db9bb0258a96cdd0f3a799de04256ae3ff7717cb7dccd67a32336e599cbf6ae310005814ddcc15e919bba79f9e8102591711307978f8d52df866ab71c4fd6d846a92843b0b431644e6a96e0be51b3d83dc3913776ea398e3ea7478aab63868bc8e15798011149694aba9e4e374961c8c96b7fb485f4ce7bf5ba35a1894d59379117d362ce65c42e00539425eb2ef85bd7bc011b89c87c18152ca2a5beaf4679b153cddb0132c40099177472a782d4ea32076d33f9deb9bb3b61a9d586095d3504abb77dee2a606e30da570dcdee5be3dcce8b86eaf1fcc986e1a2d6796c9d8f7636121a613158ac62270ca954c21ec581acb6d42b0850b437755ea13e1bfdcb89bf1988956884493c4f236e77ac093fd13b974c6151f967bacfaa1f94d311463fc33c24c9a3db509f3d6d760b18372907e29f2ce2125c66127c96d8aff1be1144d94b0c27433dfe85d99ba9e7e32988d0ca1ea2158fcdde72678b815480951479bd442710e8c6605543efe465c9ef581a5d95a7ea2a3d12b9a976e5348aa321292195e9eb552e82892e70eaefb63f8136c231701cd76a3a6e04d7d9fcdb6cb723bcea60a07dc1033d5f354235930e07573a604e5244abe07b321a0e1eb83a2217799be36d7f477fd3f4d16e54aa55fe36f379403311c209a77101e80ebbdf9029006ef9662bd8a32789141991777774e73047e5c4791080a94e72d8c9f0e81850a7ce64d3f674c372243daa9dcebf7c49037e345b180a5fc66f10eb5783365bafab8d28db8df95931e89dff09582aa02c48eeab012d87ff8c37e77ea3568558121133d69c804dc5c4ed292b429028fa2b5c483051a62d6aa112a9e7caea74612cab37cfa7c096ca5b168675e93db009b961c915053c8e156bcc648024173044bb3f21c3a72003e215fad8f6b534b07a125f0b1a1cceeac16bc9ceaa1c303e5b0ed3d8b4c32ecd095d38f9141e343459d2450f25f79cdcd1db1825d5e78f7dc763b75fe5c8059338868b0887b9c7f198e977a4dec6585b72753facca502d279d268a145b821fc4890f3b4965a80fea6631b7fc473d9605c7913865948984687293c53cfd547695b1aa84483b71c814d2066ab578c18ecb664f1669dc88af8562db15d6c8337407d322b4f028afe34f83d0fcf8161c4de0d70ab36c6104858ab93535d85871fe32662dc80e6e8448bb6d5992e99b2c7b3be5000ea7c5e1f25d21fa45faa30236f12ab6a412facd8a23c39291dfaaac720d9a34b04d489cc06893a12b5eb6e8fa3563fcfe5c7c5572b7090966a33c0a5d27d76a8e0c1ea50041930d31995976f85ec3c995ac242fd6f7043f94ffbc961e1638abc89efb0e8a99d7e2d5f8b6cbbcb023e6f794f7ec946746bcc176c0fadd2706c4f8a011942ebf8645aa2159d3501a95a06c470bfc35cf7b67c00328de4144d3315de08418711cf5d291e61395fbc37cc4aa3d3a6e379386e0323d44ddb4764406d75909a7965a71f9f9ad625d43f96769ea3c3be6a42f83824039c7ac47359718e07409cf1807aab304f381cc022c1dde8ccb95681c8d6da4d176664d79b18f9692405b58eeec58524986551330fcfbba6fdd2177d6d485db5be4966bb08d793e906fa5e24c4d724610eb6837a0bc678c3cbba16a94f1c7dd75908459e1653d2a4a94c2deeb7ec440adcd5617696725b5f69940889c0531b588a4631cd8fcf9a45e50a20364ba8740470325c0ed3569305e9af419cd01dea608ebc3fc90df2b7820f0d285fe9d8e37c5d7e69f5a76068c49cc9b17423c307091a446f3317e4675600e610546f38c1c01bc2cb2f0f3cad273c10c908b03269ea22df9d41c1918674183600e390aa143c2b62e7aa2484a72a7e7c31ed2d8ca1821fc7b37fbfca8b08b10fcb50e7d17912c11905fd3dd04a7da161a5489941f4c23d377dc5dfa8f3e0d729830be6c5079f17392c787e7e71067f152f8a7baa757276e0c56d8d51da553a253a7b132669018fbb922fc49fc26f5b75c6267d998946ebcd349a123e51f05b36b9af74a832fb0c217b2ef32492ebdc8e7e0ce7318de8d380bc3b725d57448b853d68404204ffc9c38e6fc07a8f4f70e823a0817d24b43410844fba8efd80e81d4a49ef638622a6b8b314590291d048cc003a80fd976a46b940d1547174bb2eb1bd701175f39ec8d6397e0740c80551384f3ee7c302cd496e55f26e612a59b571097cfa7fd0638645f76e1f51ba400950797614fef95801e8cea9503b983cde9beaa2074e0006c5ab206c6a42db94ecb522134fcbf5a8dec925fa5a2890dedd427d484cd9ca65fdee2aa9310c3ae911da4cec5f687009490c54962aaa954485a265d79674bd3e41fa708725a3844582a18d84df11f6045f320f2b20afa0ab184b72fc999890fc6f250539faa5df0718f2df6888517847a5a1622fd61fb5b7f243ab841d5cde90e7f4cc6b896674c8bc2b52b81e4681239503c9c7b9e3990a9c47207ad1d4e35cd0a5d161ad539802b6babe2add9f0c6b40882171fb7fbd716a845bca85135a0a4fa9034c02eeca40cedda884d2c1499e7eaeca4fe6b6ca0f3260450c531f78f94ca2e77aea7ca1786d849e2d1a6860a97a891e1cbf628bccdef0ba96b04908bb7925ec78c18a31ca5030751ca32410ff67af724c9bb89876280cc25d43ec1be1775d9d86f561c4a742fb80afb5830bf2cc81c0282348f38b86aab2c4bc01539c67f1fff315f20ff9170a087411b4ace2141b1170bd3991766713744131090c4008258d5e5b1a28b79df3b74ca00b8680db1415582282c188a2ef8a5c3e60a0214333fc88c06439122502b392eb89cf05808056fb832ffb77c41ade9563b8cf48ead08c70be9c168692978781d2416d5bad28c9060b9ef400a0e595a0966cc23d13d612bd67ef80f51077b2bc3ba4478d06613a37f639184f4e911c72c6572cd370d9e9c4edecab1739d9e99629a20f8112e99c327a909322eb8b580c95ac0118ca59688bbda87a9d4fe20d4b18c5c74f0c430434d8b1f4dfef2086b509e2756c6b70c92f78c7258f2f0b7b1eaf4dcf47ca226edb46a4eb643b7ff67feaf7f018fbc844019c1b81440368f432a65a4f2d89ee8ec3965b00d01ca3c0ef736cf654abb6e210246ece94873ff1dd37c92566720c94ce78eb72e68eb6abb88064e834c3669945c066d0e68c6ce1ff47438d27ec3e1a1750e045526ba2dc5ab4ac34926d5772bd7dac4db19e4bbaa593dad56d540bd606d41dbf3f6c285c036ca8ecad5f5028a15f575aa64ce56e534a30e1ac7c8b7659957f46e5149121e24eabd13f6f53085313155f3781b5aa829dbbe35ace5443058e1c30c635c401233cc10bb2991759f6754c18cfaa62529955a727eb43d5407fa6c1b343c1fe86e96526a926dd56a7709ec81db783191c38f56787de29dc6922a07d8745d9fd60602eaacaa4a74d9492d9a525e5fb3ca288fbf921db18f1e453179ca899e813ff5d80bbda0e57dd3744ac00a0e1ef0461945a46d1e8be3a7295fed6bce24210430a2e644a0c19d4c61ff23fd833564cbea19c592051f83e97a76fe4c5572b0891423d8dc9be468bf3178d4d53ee0ff57313822c9d992c45e105db957f14ad70194ac9939a64c8e7466f113e77e43f9bdd295e1046938fa93afd3dc6ea8584a4a17d871fbe9a2ec19dcbadfd6846269fe4e02b59a5a4adb80837080f4dfa03267888e2301bacc541f4400d2d1322865c2dfad9ee7133d7f0ef081a6b81c3d94ed49713c14a4c77705d42daffc8a9da098a5d824e714df73c93d2ad3d372862d4dd46117042dc3833534f08fe2ca902141772c99679cabd1c3ea19631d00b0015d4a1365e8edba3c03c2fb7f5b9a2d1542c4db72129e0bbe9dd70cbff1cf49630e09c386d788a98d393c83c3f1965ca83ab6d041f04639d80a25b9f87129e3c0325c7888f41604683ed90bae42606f72c9a42372c66f308f0aa29f0a9d7066951ae77314685182db747607ba1cb6edb9d580cbdf8e388f037c59eab9a906ddda6df7f689912d6c7efe2b1e7657c7a5d9edab67eadff234ed2ffaa4b7d482ecb0d6fe0c9ac6d3b41d285fceed73b402fc9450462c619b9fb481c1aaff552191f23a29654d050e56e89a051612822bf0b4925d9e3616b1831478d8d91daebd6fbf5e6894833d2604c76d19f2b649375998c8253cbb4df5139ccf3e590e549c2ebf7242cb13487308d1ece1ff0b40b3f9415b5d92bca652425eac76c7e2a9b17e07dfb70feba5f289bf7752adcede1a4d844e07ae600b5ace9dd6ccb0974b43b2a2ed88407a951c6eb8cddf001d3d5aa895a9d9c8913022a3ea08096b74e0c7db29adf5e85408da341a13ae2e73a576310e9666c2d86b3480bea909aa3d009da95aaa06b7103009893a058026b66876d80071d1248f698a843e005b690e58ef3602030c1d8993d995ed26f69a68db4be98e8f6a312e13522520462e293d68edfa5e29538b98009f021d626a3b5323f81823725a965f046ac11d8170f69f4a5049189731400b14cdb45028e4d56f8c2be9bc2ad4a98a26d7073b5e577abe85e75ed260a13add5d007963f3d501284d002aadbd23086486a6f227ca25a581ca7e20df6f924912585e9b6a5028e3077ce3a98cd95dc76de8d26e2401ec5032edc8b32c80e5f4e012ab51d0a4719517543aa5c0f39d1a0b4eea470a1f23913ddd7f4dc9d63c46b649cef7e159e6eb497af63206f24ae0a9810629af6648dbb293ab2ede093f546e940c23c0d9f784b82ef2716c7b0147b1894bdd1840fade7c0d609b315b41949a19af793422d839f5289036408aee437c47506681198ca74dcc5b027bfba1be0dbb0dbb9101208e9c8897783f0c5c67fcdb75fe22fbcacbbc8583e842352cb832e76444b78106b58d2afa4603507eba7b02d91769e212fd873b0b66b79692940bbcd4ec64ff0e6348f05c271d2c55a3c55ab2e9b9505eb60d488e61a0acf17d2792abbdf5e60bde559c432fab34d76d6ea8a966aeda6d78320ee13e4ad77052dce669e066b4a2d74caf2dd587b0909fa7ca4871aa96b20f1a9e3ada835b63f34200c8178e6ccef1bb622c1a6f34b5993f690915e3c17109f4b45ddf16a83df991a72005e698369c8926011696c0f87b0009f49631f99d5d313083b982492b2e3849712c5d0361758c3423ef69866a03d6d983698cf2ecb748d4f6c9935ac03ccde00b9b60015ff13a523cd7156f9d50376de31eb14b190d8e4e9e2c6f3050d533d2eb02091192a9aaf77bbb8678b9390a9c7d48b9b4573c5b1c84ef32f96ce522e8a65153735535f263f9223f1b8d0ba8c74d0d7ca265d0914a9838479ed7ebcee122173f380ad2260fb10d588a19bc74c7419d65e335c5096b1e628a6598525747be1a7c4be989d2e01f8420b8d0b2f72fb6725720600cca8e0d8238146ef8aba4d4d98df47bce23b5465bbe151248cc7b784d4acf47e5375fe76125a2391ae8088f01975ec4c487ff715c6a810b7825e9929216487d05a37802631d697f529a8d7cb06d285089aeb69b1189012e6f50d05034a037987b08b9888657aa5919fec5ce1886100f26654655c1c0e8eea108b4eba41ae6ae8287fd8e816e5d447a17359403a5bff25d7458e2d1ecbbd02109697698cbdaa485794231509b6d8fef46d9f22aa4fa42b978f969465f88e5f36817ecd63fc065560379b3a004eac82bcf37430556ae67c93105b94dac888489c4a8646e5ed02a66158b891201d7926bf9cf7fcd1f218770407d55ecb9dc0e220dd025eb046aac4362232962586689ec559b25e4c88b6e25e64ac41c8b7e02bc5265b9cf26c59dac39afc522caa2634521070743c4740492612a0d156951b6a11b060fdd247cb35df660fcd6c74394a0c9b262b7923f4c1f237fef190c65f601211e5cb2b8ab3edc3dd498238efe1680185bd093c8aa5d766450a469dea708f0743169cb359cc0724a434d8a2533073fb09b04812c0335a7c6820c80df6a58053264da9ec7f92fd29cfbf2e96b7bb9bd5cb93c26586e8ca6c565fcdaaeb715012424f606bedd45ea26d204a96cb6a568384723aa85e4453c712f59389a691d6f96fad9ec881d85710f45420ce6bca1cc0bfb328efaf731166674c9b048611ef0221ace41600e41ead131f019abbdc7d665218ca8383421e51a166aa9d6a5e0076b2261c8cbd3022ad893bfc8afc55b3ae87e82fd9b529743a845fa36cc728dc51f82b0c823e0e612f8869da4b1fb0f30359790442d6dc34d604d2822343bf4c70b59106267e712e2c522f4a6372d80d7d18cb1081b1517ccea25ee26d7a9bd54d920df084b81edff692e398d68a8f0c73040a01246859e3858011c49bf91130bf5279573dd15e8f504a56d5fd1d216058fab258fdc5dcd3fea8d4e55d380634a7e207ba990e373c718b97e2b985e385757b440b993c3fcaa035b104bf02d4b7977fe5879762b97b0af5fd13e1818417d0b8735b73ce876e062f9c637a2f41c93f9c2687f75687d33867bded8a95934c56aa75c88dd4961042682e1e251cd3549578ff13457458a9dc7c632ba516fc0f930d2f1e0bc622b7f27eb5a044c63fb324eff17faff77d433b866f5ea96447501ad71ff062bb725ffab1f4c84099c925617e01ae71bfa25de831f48cd7a1d388f60fb8b10737b0b66da4eed58f3404b1c2755b1e2ce31a0788d54d8023e0720faaf964feb4c3dc5bf60f0173b8291a9cde3153808019e64a6e0a609a08952929a555a72bbb365cb8b17084c4a8b2ac4d5c29ad104b423d4789e83c97983b916b412889fcf18861d70e687c04991e80f544010b27e7c153a1c73636a5b8ea79ca65598d961a194dc6d1eca4d52e65fa01ef40fdee807756e7d5443c489a8b8180832a4c4e397297928d1b1004d9a43f67bfdad88d91c3d7fd93d713205f38bdaff0612ae97613f6d01de9ed2eef356868138c7628eb622c1e057dcbea60829e643f0f8e623f8a016a25576d68e981fb5f431718e5fe40100f7e4f8ab9bec718d66ce0f0a00db619468188c7d47d4ba2c4380f298f6576b313c03649b57888700c4ce42e09e6b59e1cc9809d4557f52f6c8d2427a9ee509aacc3f2c4c4cc0884561ae640dc8153901b4b415b03bf20d8bd06c18fc7fad14352d140a0069e6307472434a71050d896676ed17d3e67bd7dd91185561e92f6d32a7c37ffb251a99d22a9310c5779e56a950f86e1f701bdadbef742dd2f7be5a2b60dfaec04772cd502a3489594fcfa44b396a3b34da209fb7983ce51c87f6cef1a0130a0660838d7c355822c7eb53731a05f970f9c3de624a2a3c04ed25f4bd27039f27fc5cfca333e6b78bad66d5f7cd2cdc39cfb52a01890a2c309071a99d45742175f4ae36e8897f23b9f051ffc1526782e138c917a9fc390e7f0aef4bbaaec2ca74082805488ad893c8f194f4cb93397ea9b43f67f19ef2fbfe98642ab59d9c9ca72813473cd239079a273af4b9a89db3669784eb3b28614875ee8f15e89858c1ba69f7e7d79654dfe185b557133bf1f388c3d44f40733ad1005f745ca64e6260d4842492014932dd2553f50fd8d377e7434de396b70657bfb85ee11db33f2c181c363d3dcb7bb282da9abfa4d6c5c4ed18dbd90ccda085917512511a7ca43a1dc224b39efb330e462bf61a261513ad6f24d29524d6ace7886f6fd47e528d57199c9f0da2fea4023e1ed408cc8545220a9c8bfc2b8328083cd72787b4b2ef101a64e020aebb60db37fef16e2e182db4b1b29b6f426b3f1023c134e4e657053b5b858ffd403ca331ea428446b38ee651fa41ae83bddadc5ad5a32908ebed14db5c14ceeda9cd0d9e0a4da975bad5b7eb011097562e009163f67684ed80fd5dec0a5834ab0505baf31fce84a075cece0413a8b4e584c357d4e466abfbfc30ba3d551f4f049e5d0b1c582b09e7c0bf7216bbd2e566536e5ed57ca52cec3c6a6e4e97da8be4dd71b7583f56e1b0fbca58cfa7fc7cd11085b0e14c6674ad1c4004c00bb3e4af8002988d3df5bd8c59aaaa5f4eb73a5f9523ee5e8fe0e0740fb27989ae2d9873a8982a697206571db4de5df60925bd5088ca32e39d4e53c9c7672507c4c1b2f7fc1a3127c73bf777814a0780315f687b2e79cf1085fbe735494d1573fa2c168e71cfad0b6fb143d2c21a39cd7e45cc7b88068a863a75689a8001c617cea6e903f7276659a99421a7ed74c4b7e21ed63d96275f7633b65be80939f9e3a1f446367fc1c08caf845291605cb2deb8bfa4a35c340e99fdf0961803177cd30bcfe33ce364d0c052e5e3374fe308c4196ac002900046c4d6b0f493dd14c6106a8cb0355ad4335e0eb7f8d8cc83b2844e52976d7f78301ee83869525a911011635bb2b695360fe6d5bb04b28bc57233c0a9975e809998672328eac9578cedffc3a2df8d21c61e5087e45948ce19ac55f241c8b50d35b7c629f8166081b044bc6b9913abd242e3359044ac73e5f47b641377dd94f05aa666e219210bb4ed710a7845fe70c2c0335ac3182b8c83a743c920b6295d0748795944709bbc53c99ebc4ea6631b45befbb4020f8ea97bebe0ab4c558a886e9aa634a4c18ea942eef55bb0a6594322e1c3cc8a82ce17205d1f2172c3f5ca18ef8066090674292d8dda1d58a0b9fee2075651ca21335b5866f35a5937ed4dd0403c966ae2f57bd9210bb9aa8b3f3d926aea1e098e0a9b6a3f5f433192e2145870185550aaef8b8e1f89634408803b4d9befda99358409202b93ea02b642db4cb8ed1202777b427c6368ec7f03008e1b348fb684ffc28b746375ec359838eeb3cbb120b5068bf069da98834346ef8d79d9b23da02f5cde66d030c0211989e866179d83d8b23df3b74a1e9ad14acad6182d955b1075b77ed16893a22698b5e0ebe39ff26986dd5e4091320d67227ec9488649de6fe8160500d0a54bb0350006a81514c13030d0f724e760671074a8bdf9c2faa3593ed278c4c27c9d03bbbab3612bc2e6b5930c611c16c3bcfdad757dc0713995eb44c8ec843644139235aac2d14d0870eb151b300eb481f143fe181b9102c1a4c5121b654756be79e9b199bbfc2d885eb179c39d8b9c4b70adc1618db83727356a5418fae013ac29761fa48be22c8eed8fd4ae4787a382e020a1b8b6ffd56d488580ecbb76fe9fd46fe4e8f0a628fad7d05c16807d2091650f513702ed8e1229b81e54b2fa03019e234c48f4460ecc960ff2b9341fc87608ca597fb97cd5c60cf389f173ae2cd31037c31072a29d2be60046ab1f7c6b23cef964de7d2103a8c96a6ca8d3c4ad8df8b2fe15ad2183503d23f834aa7440c955309280466266c8ba8908e44321944f67e82a2fb10edb81d38fd95c3658e901f186014d2e9d5e3113940d801416d4d31bcfb19ef6a761a9e9f99cd4a1e7e1d37feb83d2b946d69ab42f2e6112a3cdd322cc42fddc5640e152f14cf2e9d88c17607219bf551cc3cfa9351f01a8e9c6678e585ba6765f457b7ead533621a03254e296bf9cae8d9ab3901c80a6046887209b60fe4cc9f1b018acfdbd8fe20a3c17e9d769722cadceeabaa7ed52509c16d3889c9abc80b835c633e9eec167994548f725133070528e7cfaed047c2e149cc1dc880255bba4bc3ae96161328f321cf99f2d384a8f3418418c2824c054540b58d45ca946170c5b004355ba6f12a9babe92ca6ded9acd31f1d1dc97f7ff45b7a47901fe724d4aa885c9745f409d3ad6e153160d34fa24f0e89e2d12e42481bb27785ec9db9878ccb1429843ca18168f25ef7714afddfcf566e5154298bafbbcaad044f8dd01835f52cbe5c209c8ba10aa0b9b412ea681c7fcddbb0556cf5534501b636a62e2702d5b2bc67866dcb0e19cf1e1c0e55f5dcc61f6b0d386b62e4f6cdd1ccdde35a72613323ec49098660dd0513cabd170d562ac0ddc96ab6fd27270a33eb95e6ca4f38c653820f03b4bbd79139d8425d509d6e0ca4b0b32d04d6c87fd0fb869fff16e32b22b94ab436e07d7b5de8ff33713c9b0d38a12b46b9b2c2440002e80ab355055fe6bc1cccff135b5ee319659ec3991bf1104d9e74f5399d21677cd6900e8c5e2f1743af5a0cf913b2cceff8a06c499bbb7f6cd377df36ebb00d97770e8b8d3d318d8c33f3f22f00e0687fec57c3660e0e41884dd52507188311201b1d5c3f0a9e10083838fd79701d767e378b93b327bae0c4943b54356f589eec3c8630936bb09c01c287be20c05a0d7601a2f8cace50bf1faee20b90edb4a15712332bff15127c5b07d7269dc7823cf216095bbfc8af8763fa2e197f6c6afa85c2992feb24384c6b129a2fc54c0d4d21764700e7105c4f67f84408300e75d91c5006969cdcda39a85c2ede4b3756e0b91e72de4b77a8cc517f7828c71fd386021d13866d10fb4af81be9b0cb52b1b4d944ebdae0860c224436e892d9ec4013f09797ffba5f9055024ec08bc57c8bc4a1d0c7aedf6277297841c3d32ad3e88645e17e0f41b622ffd42a198be86352cd23eea8313511a38a97f9924302ad6f102286a6a20eaa1d6330b78f9af11460c59a14ec924874ae5b8b199c6587c418f230040c4d166425162a571c612cc0adf4d0c594c4267dccfa048028b7cf5b88cf5f9c474dee5895e5bb1c0c31dde09ce6b9d9fbc4fd39d6ab0f29c6aca01264af7f652ccc29831a98c5b6cfe0458776126ce1f36703341b2af10ded95bd8e551f70fd8a22599f7132419fc8d5e83351a84fc3f3d1e351390033144bdb3422718081ae2d1c4a35af5d8294ed155b7ac062de55551c297d8e392db04e41f13e7424b7545f921ff120d1baec5bf9f98206d3311d5dddcf8c1916255d40dbd9f1b03c0fc29db7560ac62a41bf7d8435cd1a145dbb669221738d98a08d38a02f63e4754b2cda61afe65c1ec133c6388d16cc7c13060b24ec7d97519355d0ee1e05a7334b321df53630594b9cce505b6a5ebb3f3e0da74ef5b9681a59404646e879c652b3a96426e5de17bd0a9bc176ee8b380d1d1fb1619126914ed547e1242e12713db2016ff8661ff5558d96ccf6018dbb66543f0b121d30fd7f045dccae947a71a3a645f2d9c3a67d2502381c16d48a4d67a4bd187989aa148a2cdd27ab1a7d6a4c2d8b477906ed27605de12915e84b6c6f883eaa1923ef6157f69c04ae5a87e6b10506cfe49114e8e78bcea8dd72f9cfeda57142d311a78fe9eade17dfff9cdfef2be61d50f9cf17a0db554e123e9ac3563eb4ea99b98da3105f111bd06918ae8b8ea6a2be1c7930d4349e10b945a935b34e994536fc57640e951f3301f038dab83a9c5c876a386f88a7772f39b01b2a7bbaef02a8c6155af6adef606c6cb12f42c0b1106157e393116b64dff48bc1d5ac911e4dac14dc9c5343bfd32c84e7c453edda7f1d602e615002b54faafe49480fed25acbda1c913e17ba4fe2d0b9ecb6da351fededd329d562a97402ec1f5b983a60ba4aa24f9cc2e936d1e96d33d41cb68458a665e02a889588ede402e68bce53895c957f770599f944842b299d9c3be8f3c9014f2fc96fa0bd37b3f28884e91b4842c81fc556f053afcbdfa990cfd21439d6e9c539ad23c35be921c4175447a312b36dce2fb75baf09e392b45b3ff115d7269b84ed0e6f92ae0a488548a02e3f55e500d94b8e161759b344531cc15464e0691e23f4b6b1de52bebe7120b784baac42dbf19d446d5003ace9ca7d31303db38558ece2ac85ad5885adc310c561ef488c3a9c36925f1b2ad446e933e0890d1b6edeb636d5deed50ac68150d2a045ec1d93fb227bd518fe3da5f9e8e20f2ba306c090c0b409a1392b93347fbd4061de11b805b67e4c3105abef12550cfdebe83ad2617527309e24c6830f7e2e9cb232090ad013acc3ed2840b6860a9ee2df2b60b484cce48a90b2b5846cab6ea45d671c4107dbc485ca78534ce6bd0b7e4c3fee9ba39680569244c9dcca67707a872f212588867c8985ae9fa1fd3c8ebd9e1dd1d85fc628f95c94878d9f4675a52060b8b736cd0142596d07de7f6898e0dbcaddf25d4b7ca43d95486a1044c6ecef10d03457b11b177da98524a8e1a4510f2aa15f46c21b1a06a0603e1f0fbd5d88d9bb04183b3fc3c7755b0a971a82af65483287beaf6d8d43d083c74a21c902d502d01e29d7243cd8cf0e9572e2798f49782a5211b7dc1095a3800d54b539f0d20e26763827182b84fd063036fcfbbb8136d3c345a2f5d4d47a055d613151e37eb749fe1f3db102d3690153ceb480438a1852099ae406d0a8ed22489a8402530854e5283c44ba2325262860af891cd8a7195501952df4d25ce8efa5fc46b44db3b7ceafe2de6f8cdf91fe2ea39935d20450bef105dbd73b36c8a52a964ccfe3cfa531fdd51be1ca016828dddcf4f938bb0d95649e644234a4e111b44c8b8acf0dcbfa36ef3f0a0f8a6f8408ca8c2e062c36c22b38b10aadf57a97cc6719a9a8dbcf4374f1386e275b630aad0cdaa352aacd81cd7dbaec655b7fa2a696aa23e1bab3152bc01001f6fb6001c812405770c75769f801b1d5e645695bd0db46622082050801efa79269748d1c7688618937aaecf673a3ced8dde6835b03b09a2d105f37a7131ccbbda47f70dce0ffc3249f4ffa66c6b6b0de885366d390ae3175a4b6f1686491c857ff8e851c3661f695feae04c62b03cdd7e7f4fe7117cc492bf1a68f7f96cf2df02929be4a658b9818f26a5cd2cd082ba82d71d84af1cac6098e98685247b566a504fc0324315b083ef870158c0ca821dcb8e54a5ec710fc2cc5db9c51bdf31e97f77b8c362129a292d76a9898b78c46104b38ed970d2833a7882e32e6a9f562b564c8ab7c030e28729d1aa38909bfd691a720d3fe9f71ce443b6c81b49c9f26e2d9bd167f363ef235f9307d1cc58eaa0a2a4994e84b0e4303b36aee8362fc99a19efbada5d167e9ed312f270a6c7da2d0ca9a676b8f165bdfcfa73f9877154979853fdcf7bcb919e2d7b673c3e130081f200d81a70546b87ec61ac214c21d0e68c695335952c22801b254d45e9e50fd7295a731ce07e417156d455778c467c7b0d10ef203ef757e654e7b6e08b6aef952fce9782cef6684c6d893883606eb0535eb02171926fe7c9a52c27b20c2ea717661a0bba312649b4b311086a6dd9b788b0091640ce9017047fcc899c55e2307f74113a7094b8ac6032ffcda86020a98465e072ac85f9e9a8902f64a4e42d7ce91294600201efca153d9b2ce6f81c6dd6723d34a1b512daceda4327ded98fe41faf48c0785ff5583b727c2cf7c3b292d5b59592a2dca03604f955efad60761306c6224bd50eb929b891447a6851c19b4aaccf9f1b1aa98eab25fa7f66fc344df84af1b945ca59676cc26f6aced8d2546b9aad65702fd14c2db439c6f8bb0be9f2337ee3c47614694bd3be1981d3a784af61bb46bd066a2850452f3fbb345372ac2aff29caa46f088200d46d5d4fdc22a80f1772ab7390b108127c8087e7f599fd60f2fc80d80710f1365d6922e261083725f152d7d9a093700c5cd0dc8a8753ec38f404bffbfb62bb7cce55a49cc1a63882a1d8083c66a506883046beeb2726fb6f08583a5eaa3c3a25e57a6480320c7d21683603c3644c1c79060c081160a4459081e9171cbade3c0de5b9bbff71297e499e149089d6f5e091a30ca19f792d27cc2ca78bf21769463e47dbfe0ba5a688899280261a5b9e391802003cf0d00d6cf287404461e616ff987dc4a91b448fa19f6c34214ff95981ddf958ecead82a4bb4408c31c726e5ecee208027d750cdc255be2d59598678a790dd2b1c6c025a2ede7659308a69261d4476d964752056ac7c68de0325bb750f8259038008e8d3d5aedb1510228296a4b8cf3b0ee6ebf8eb9c60115c07877735ac8c2ec2a2456c4e4dcb716c0e268b97b6b3cfc102608b109184ecbd09d97b4b29a54c018607e106680755f64d9d1b75a028903a4f697c56ace8db3ef4793f498547a1d71c2ca5c22330f45a19c5e208c4439fd900d0fb39c847e1f7994ab80ecba681ebf5225ab4dc5e6bada6a593dbad57fa574a1b4da935866cad99d468b97aff19d65dc54d6d44bb88b64ea66edda68537e8417afdb4d6da396dad3dc3eda7b5d6de36ba417de6b6416f813ec906597bbfe5dcee6e1b8661ebacb7e9df213ec94ea6deede2bd371c6d9cb0aae8f386b51a9588afbdd7bac9e1f7569a9d3669684e9406e74fe7d5255f1921f6dab2b42f9db60408589a0840c084beb7d0f49089b457788be815b92d786a27ab8e146b26063b34603b634e307c4c56c818a9e14c0c659a34d11f76b6603b5f7ec448b3f2028d32aa3c28501f76a47c76ae3cd9323fdf5b686f5e82ef2db42f30555fdd9ec9ed5d7794bed89898591bb1313116f65e8cbf0f0c6f18da4ac38bbf0f04c3b0f68d6018d66a369b4864bce3682b1dc3b166b389e238925eb77bbbd94a6f5db6511c471287598cb75b97af8eab597079b465ae3af9b93f3fb6d29fbaa4eeaaebd153a7aa949edaa407cf97979819af2faf2eea842ea144282542afaa1e3c6d76f6d5b1d906ce0c6a79b6d79981486bb5f65efcddefb3957eb45a7b2fc61f7841d0560a5efc7d20188635dbb5d96ca53630acd56c36511cc94b92b652d2268e2349de6eb87c73b69566f286c3e59ccbfd005d20205b29d00f5050909050870e1e7457a7b395ea72e20f10d068cb205dd0684b0fee0b8942a32d3bb487ebc183add443781b42aabd75fa42e16d08e9ad797ef015c6047fb3b4d1583ec3cfd218087d752cd51834ae3ac1473cbb0b00031932446478682e7ca179d5f842f38276650caf7e544cb654bc72fdde4233e17434297feede5acf51de7a908ef7a195708407de2e34ac3fb35d018d47468bd261cfb258f71ce7aaface89766daadb1599ce1815b5413a39522c0b397f6fd1f9fa1d9d2e70ce0a73b8401a67380811d2a34acb9d1e3d401004e380d5a28e2316661004411d61c03869701c374e619ce8b573a45a4f112263b688d0421d2e94471c331c678e0db10a7396d8a20e95a694f9d271462a8d0f6a3547ca37e70a55983160c0a45056838bec069704df5b70bae06c9db70b1c2770b4aed956d90b368b0c4e31987d5d333027cb05f7bd05e70a4e8fa72d70a8a2ec16b332331aaa162d3c2d5d300b2948612b52a06adf5b655a655936aa940989aa52c6c35629832aa3f10215a2fc7d9f94fc7d6fccd4a2feda9bb1307f0c6fdabca93365a3d83025dbbeb7dc9871f3d5c12b0c1428d60e2febdc779f930c7e6fb5d9fad37dd7268b2deab0cd8e3638fe74de05417054917960cd411004415b4206413660b5a8c56a51af68c1264d2d6a5c2bc332a8ee3e48a22689161a5ca234ed480bf550ed74dfb5f9c5d9165dbf67f820d5839ecd1e04d99c3d0882e6d901efba5d722f36af08590c9156a5e609c2d3704d152d57e85eb1a2c91894c6c9f42eb07fa55478f4392e39a84d4733be65dcc73e8444b31e5bf39cc1413e6a0c4e8c4d25dc5f53eb637adb4dff956d8bd6884d74f6598b278bd0a9d740b8782be911aea44762930ea864e8b8921eddca3e2ac9f20c9f2c6db7921ed5f22bc917a163bfa5cd3f1b2ebf5bd6c6f28a6590ad6686e5b964ad4bd0b4466a838bdfba89b11fdfba043050577c38b39ec2cc5be77adbf5d636a531bb9da979fab3c5deb2789be3ed4f20579f40a60fe823ea7d26d60f0a0e215e4e5ba668a041098e344e56b5de971bd290d1b159466a9e9a80b1c1a27283deb8216d872d42e27b2bcd90ffbeb7d2f8b0462c16cf62f16e12e0405807024350f0e113d285b97c498a475b900771829f1eea506b21286b5a03d55b74c8cc50391db23250990ed998a7900e9997131db23050950e25dbb241878c4acdab062f311a3cec6a4707227f6510f610d720a6a3a215a1203646cd941d1a40a814d9941c44c6e4cfec536213f178bdd5420109500003aa8ab303a2dfb54800590fb2aa3f4306f527cf2cd7f4d080c6ce1a3465d96bd89a3c064d99181b19de90396b014d970b2998f1528316b02a6351e03089610437595e43e4fc684184325371d0d85083a6c60b19ef9921633c37a4a539236346d6068634368c7d8989999101ec6b9bb1af93d76dcd33b4d68e79bdb5b6bf855d71abd95f352c635dfec3e0455cbd93c5d0aeaa028d32a404682e1a5f5560eb1d921a7ce6e8b8448143b66e1d3b48bac0d4dfbabf35a9b783a40bfa627fb7a6e3213629a58d01c64e2976ea2dac12f8353309fb3daf7fc0f498526a439a335d35e8b1e1e9d65edb6958d3def67993d85b54d205ae60f861a4efc37e3f111c434ae2ffccb06fad8d1c63d53a75ce9c3920867cc17155e5648611bed8c87120c6061c2d6a4a88f2234a845bb7a9d20396e38d1d3e3d28211773a89a98e0f95ad3853e11a585d0009a2e3f689499e983843a4dc084f5456487992a226069680da0375c92bce1c3c5a5ea0ca541bf04b9caa2a40e0a5459b48982103860912343952f485ae863a69116e0a2254d0b54d838f9c1a746678f08b617f26849423676c606303d56601828275a3684e942852607ab21124680fa81c70b9b1b64c0c1aa0388302e687040e59192439e1169d80756192a27592330c982c74a17b5851565ac096bce9b3b7601289c1953c70a923028764488bb618ff8f6ebe7047ffd14faeb27f9d771afa8f988f10c45b3adcd6c5b33bbed0adab73118ea36a2f7832ef7146fd1f20385bf3ee27bc4b7a8fed5abe45eab827eadfb1bfa996b7e869f79b1590bc15b71b65e8ae9476badd5665a761399a179c1aefba64b8a5aeb2d79a09f154fbdf51ac9d593e4ea747c5b6b05c30ec61a5a3ae2ed65f0bb07a5e3a290f1770f4a2a7ff79ef08c408fd0287feeb8b67248b32273039e3d4715ca57cfd5ddae608292ba8281090faf334f3c1e0c739c3c88f9db77cfa90b8e3356b5ef9ed35418b88249cb0d28655d489a5c31e1883ea1394a7cf79c7cb887dc452b7aa86763ab17f5c21dd2b3f175ad7a35d6fcf7ddab3166e682c9d58b5c4077f83691f08636b4c16f110ac7bff6b5d66aa2ee68adb556eca7eef33383d56f77df7a6fbde6597beaa1afa81d75ed5bd43334aec21d8f46d55b4fd1c289f9d67b4d5278ba5e8dafe7b5d7db3388c780aac2df7a8aaa823a79eb3ab0b70ec2ea32786b63844fcf9a77ddd5ca10460d6ca325fb49d845d16fe5f9e33720cfe519e4d9c59cd7726ef3b1eca7a38cfca353dd8f4e9dfa6d15fd2dec78928e73211f4719e1d79ce2700e3e59caa0de4f853cfc9a7fc0f4a3d2e84b4ae00b9932c21fcd1475c7ab3b9b418bbab39e2b13507776a9e63405cee634fbc9f300e7e2e7a28db4d9461b892b97ece3fc2b933ecf09b94dc84c1a3d7c9bb7a8a418348a6e735c9964739c639b07551536276fdf03194ae08fae44fbbc52902f0d21f993de4f9a494ab4cf8fa68cf0a99922a877d49d9a67084fed0bd54a0f96c2af790b2b5225fba3b7a8a3932e549e4c3f7a8b1a54f26aa55202dac852b3c52843097c01b49175a5146dc4234d161de6c8d16fb672c8e66439f482fee8b4c95326df242de187689335b2a44b90fc712ed2d203ea4bf65d505309fc24d24933a9e6e17f30fa817eccb3662a81b852867dd12f19c3ff64fa2fe7fe39b34763c9db0f6f657b2e4fd083cf4573c97ae8403d98527ee4c1bb8d6e7ed3eae04dbab891e6c9f4e4494fea22ceda5a47f3a46e73d171a552085f7bb254b24348b4a6e5a1db88473d451b596a826823abab3bdb1878a0a4e5a473293ffae0dd46a42b7dc0f45a3a53ca8f74de6d34faa8f5c1e4d9a2d1d4d2993aa2bab3eea1dc9519d49df50e650bd285cd85cd9b144d6751776087b921ea74c90fd5cc17a1d65312a879c2e857021fbb0cfbd84fd0cab0e7672a814348e15f0fff9a60f8b448ae7ef264d8a76e816aee478f0f3099527687862027c819c10321665e4f2d30790385a684294a183a40a4443801899c24729a4e3872e5634f1524489aaccc8b903150b0a0c1a2476af5ca51064c93af2b6368d61541843e486a44e18cbbce15991ac652b043870935d287c8d747480d0abeece953768138d53d7b9660f178fa29bbd5c0470f9fa91b45fa4cd988a2e07b6bcf973d5830d6b50105a5274d0e69d7c90336603ca6e4c4119342b1f4a43d5d1abaefad3d507af0fc99fdd6b84db789777355f1dd4a6a6091ae5fa4ea49d7ccf7c465f2745d117fd6bfcf995ec4e406b40f3d51fdd691124004c7108f364fbe153706a1e3ddf93988490dac0622f8cf717922dd4ffa1c97fd6129a37ee8626da424d2fdd0b1bdd4de30363fffdc9e19a4968ad8ad02d77a4515b7bb12c003fa8d6befeeae97561caeb0df1cd23cae5fc4979248d45e520312c922554fb266be75571b83be96d61f77aa594917d576a54ec91b1a036badc5985a6aedb55197da38716e1c7abbef8e1a0d2bd8dd600dbbfb8322e20f0c6b617fd1acb3ba65abc6ae143004bfb2ceea96ad1abbf803bffeca3aab5bb6eae20ff757d659ddbaf8f657d69935abb5d6fe32a39ff4574a1bb58728881f18d6c293f73d46abb6e859cdaa5f177f60089ebc1ea3555b67350b7fe077f2bec7aae8d659bdf8734c29a5bc1ea3555b175f5e8fd1aa6b79678f55af27cfda40715fbfaa9fd65a6b9bda28fce25de940ec4cacc9f2a72ecf923f431d889d89a1067cdecf416d3aaa790886e553148ba3cfa5c2a35acd0c5b58db0114dfa406cde6dbd41aba1e426f1d81e073108057c5b5d5f4eb77a8cd06807ecd07f411685ea65bb115b189f0dcc962d5e4deca23f56788274b1edd9dadaf0e8283da7404fae75aa0f9797982f03769a9fe3581be490d4a7c9b5a20b82aaeadf6abdddda7cfd1a7f579931138c0d17769a8757783f6bb18dfcf76777718aeb81e829f64adb5b5ae85e067eb5a413eb55bad0dca7130be8d75d7362cd76c580e9f8665f06958fe9e86656cc3f27d1a96edd338362cd7a76cbedd8665fa362cf7d3db46edd6daeefe2ea65f0e02627131b6568eedeeeeeeb695c5bd61dbb63a6b2def1b4ea64edf6dd6d66ab69b12edf34348b657a27d3cf0b837f50535715c0863e62b0f911b7604012204ec062c1a745c7922a2c7e9e81bf29f1d3a65b0c4be15015959750219d7640c20c79949409ecd24d2714bf571e6527d2073344fea38a7241269b6ce5cb22fe4d771e6d9e6ed602ed90ff2eb42e6493f28a83c67bcc5f9e8e258e24a4a22d971c4c0677b29b9c1293ace47f3d6ddb9643fc83c47f0d647d285cd6d5937c099b7ee4617cd6c9ed797ec8fe6b964afd9d66da35bf35cb28f265baf57573fdaf20ce1addb9b8bb7f204e1710e54c918d96f9e2b71e6793fe7b7b2eb2ee7947cf1639e4cffe31784cf790b7b2bcff0b3dfccb1ee70dea2e64aeb3f2539faad04f29be7ccb0ee707e2bcffb386f3246cebc7587336d1bd01fcd245b25912c50797e6e4b7083da8fb7ab8a9ce76c9e4b353b90272dd507f233c8db719e2bbbee70e6b9543ffbb95495ea8f2ee63229e7fd62d32beaa2f79e48bd28dab1491839f39cf139bf792e4f103e3baeecbae2861f7df0ec5db3e3fc43d9b50897c4e765d0fff1fe5cd91fba255fd0073265d01f3d97fd41e55245aa3f9a495703eaa28b1ee46309e4412512d0cd3c9946cfe549ffc77337c79539ff29f3ad243d177a2eeb8b74bce529fad8a48b9c8f65765c7986f038cf9548d9ecbac3f9e8b73cc752f49b374e249146d23c67bce8ed772ce9dbae69a36ecf2510c610fe5ea7d6540ae197e853a1a7eea1e6396ac8c8a931c6aa6b2a489698a9eb3b277247e1ab1a5b41c8129b902955634e7cbcd077cf4993d47dc20367cc07eb4b4f992c194a90a25d5769f70acf084de8f07439490da39b1cf86a0b7735866aec059caa2c16a084b9904398ab12eed5131e631cc8928a7aa242333b53e1aaaa7615a46aacc99a2598769319a6c89a7ce120bb4d4ee0ea01f1eafd10c34f5480d4b972d23186330622363576e2bbd7848a099f37df4d33bb6ff2cf0c65b903179d8cb30227dfbe7b4cb4ae9dfcf3dd63e2e3cf7cdb64f2bbc7448a4993b52deab7fbee2d81f3f8bbb7a4cd153436c4c8314b5688225bc205458697185952f5017dea78ac3b4ce62060a6c4b319ba788f646cd5cbea3d6ed1dd5b768bd227f9ecad15b48b6cf59ad7e32eb2fee16b7fea727fea3efca9b3f422c9a70b5ca3052baec79e800d5415d5c316320c8fcfaee1da4aefedbb238a7d808cfb30cc59a7db7dc53e561539e46ef327769b9f1d749bffdc66debaab94e9ea3be836bf5443c0385caa8fddba884bf1ac8fbde62daa68334feb4b35a4af3423f4169596f4c3f245a5ff9927137da84ccd7b9de0225b45ba28922b2459b5cb9f401004b5ceb0161ebca4092f9172300adc71753808826017ae8540dc4cd96c51633c9bc44c92319cc1effbbeeffba26ef021c302b3aab2ae281129af48dad4a27e246761fe8008393801f3c4043d75c020c16303bc1107831f08d28ccb20a75acd842c3738aaf0ae12ae57e285330882e0f77ddff70529e3e4bc3e3c5ed8634d4d4d51351093d0a5163557e895c1744fc2ee4190e74475771b4c2f499b287cefc560af21c16c47837e867f0374afbb1d783d3b0846b93bef2363b19a8e7cfd11335c47c66e80fd90adda1735a6c277c9babc112e23bd215d51df7741b057e4cbea8ec93963c20392b428266aad67c46eade10cafd743ec97ea778f21df3d1e343c35950ef01ff8771b1931015163c5cbc94a0b863129a4f16821acb743ac4755660685de0e3329323c786ce14125c4778f478f27bf7b3c6c5c25dc5f7c5a1f42a259f7055bcab82eaac574897e2d13d41381486619c1bcd0a3b2e15228aa2a4f5f3daa2736be2ea68ad24167cc18de983b8668c5d37dfafce909f5a8dd9133fd49bdce88f2effbcc24ebb7d207885d55e42ec51a1388b9ae787a7a12c53bc2de6647f9d193eb4cdfe48bf06f88b3a6a6a6a6a319945e400cab8ab6e1b7e72525f09794c067fa265dd03ecf446906709cb1d2e1266cc4774f07970e2f27c6987a12fe4aec27a594da50b1f63c05a9562760a0bab3854d5814596f852049b0c2fa442922048619b6a4c886c8b81185062c3390cd80e48bd4961d44a2dc48b3a2587b9eaed5111d477448a102b18e1ee4bdf7de0b7af0887a82b5834c1af53295838e1a564148c081cf0f385fbc9c70c2d49c6feaced3169aec8431c6188ce4ca4e744e561238f5540ea7315cc2a4f0a60a0da7b22e5f79ac49cb70e6a68c85207bcec470c9210597e38b08b7d74c697d25c14156a3c8961c376e398004b96103933768e0584d9942b598b1e120d3c221e63675efbd9766c18145c4818254168e291d0e253cc4ef5e94951c5706b476c46025489b184ec09225810e3238b0413ba1063057c0c03ba4dd90a1d123ea8b182f332b3d1c515156e1e951558ef4a2a8f0c0a812fecc2ec34da107f5e47ec9e1772fea4814d51313236e965099bad2a44a94c737b470b9bec344c024537e998c28f902c6c307932e344ae5068d5befc60e1d40df3da81c46901afaee418dfd99bd0cfeaabaf75eae3c7279c9b8ef1e9495a7504fa43e7cf7a07ae030c78619d4930d39ebacb532d8e0f103a68cbdd6f69ebadcb0f6f2c8d6dead6cfbee3d4dc1e377ef898434f0cf4ce5c1c74e565e58a0a061c10b951133748a11253b805c1b43ee409550c58c9b20626a98e00387550ecab927c5c30af7dd7b929a33c7c9f6dd73e253ab83c70b9b1a6161da549192662408cd881771d73c69531a9a671894ff82d05d4aa9192e8eb876441d31828ee8daed1c41599aa60811240cfa29ba8988762688742e40c0a81fd4465d827411e2855ccd366669b8bab66896124a0404310e52b0e0d5eb95ab5944ba28ca21f8e15b81ada0820a2aa8b46f1ce08eb0dbfea4af854d221233aa28a0936b07f46ca4272818bb3cc72ecf36a35d6fe7083ef4916804094a8244df112348902841bad8ed481875d746eddd4545e108a3feb500fcea960489123bbadbed1a1755902b6d4b622caa60375a40c2a8262a188d2c182f2061d013240cfaf1308f77793c9ead94c7e3750eaa40170422c4650b82b2ce829ba6eeda4db4f97613240c6a44ba08e142aee6792f303a71c1d8a5d87d0200bc000060ec1205be9d4c7f8207000a80b6b773c65f913706f174419436892158c8d5e4911a501c0002d0551cbf3cc75ba208212657f31c530840c50ad2050b0ade4ea60f03100012461d7d7c13f269e2bb4fa61f42b25ffdfe4945d03e82088508b34481c243a0408102050a0a26408102050814282a0d4035cf113c35917288e377832076156b8cfa27d387f4047590ec459c12c5e4036a11b81d593304101c85b6a8964af46528759fa7de62fe2363804fcd90be9614b8d5f4d4d4d4740492318c5ea9cfa0ba347d48c600f1d4fc9ee25e08e1945ed4feb611f5171fbe45fcd5dbd981c7a3288ab69a3886a2281ab57fdfe63982272daef43609de6650265a6d12b1dd5a6bad2df1934c5db463b5b58e96245f60b7a40b7bcf19432f3e7c7bff876f6baf79dba8860730ec87f404751840df6da4658e75d7b9aebbf08626530faabbf09928a54344fa7df5f401a2e26382d163c7b22b87720c879b63724387b015ca375d1dc284a98d25980a2455a6eee1ca5a6bed01ac154703748f23d0910c2e3982384380dbd803c08de30f1679b4a084eeee56819301c5cf28019a11d0e8218c44d08823814868b4c5d97518cb1e22420f63871b7e7563891522fc300639a1408271a8c604776824c58008418cb62c4377825184230105a3509e0f214609d0e87cbce1002a47d2cd4f688e204cc85d11a3055d99083762fc21732331da58204b8c619822cc2073e9bc1c6c27f6dd69befd6461cdd3da4eb27d65ead75a6badb81bc92eb6a2b1940a2d18ab5c8516b6cb0efaecdb2b205db4e78e586badb5d8825102b46b62f43d99bab54663aee9f6056398464f8c3a234d79272e303261410545bb122446108968b3f4ee10144c006248820f3a0f1d8482807e50a0f8efad798ee0899c28ad35d332b3b3bf1a60c33067dd970b1479b27f2dff6c3c590ee822eb614dede6ad978fa701350701b3a7baeb3f79b4da5b6d1ac2916dfb8f9a6c1d6b65eb7db740184480e9f22aa126ff6c2181c524ac0b8ba8a94b07d1153c2546c835392ee4900d892f19938dc021d7c2488065d2cbfccae497b4304ea24a20f20a438257982122cac2fc20f1238f7b4a4c9d95f09245354475326946040cb9c3941163d946d9f1c8b74909163259c44cfbf1454502890a517454a021022cd7f090c002668e49831b11525298a292433423d03238c30823f903132196432f124d3290961245c0945006068814982a113380b121022d8770487065700dd1940c9e292127dbb67a39248168850c1a09cbb5ef1ed70f930d97d588355c53443d14867c19d1838fd82c6c041bf1a2c7cb145662e6cb14ce72f2f7bbe745eadeb23f04057fbd34c5609dda7b837691e19bea4ea7e4ab8370b1af3150b7de2f525247a477c2d5a54eb6741884e4a90da921d5812479f880bd21eb89810911c30929a39ad1e6898613acd4a90a524648d728044cca9de804a93f9d57c5d2cef860a147161e516e74190147972138ccef1e973c5c2801700572ba5a3dbb6f09d345050891137c30c943268b94d32c63a1162961d681186db8a5c9896add5d2e774e0fcb962b58567a58a2f01a3f7189d928e3c3863a4fa05ec06358a06079c2cb415846f83343c17172ed2df8ee5dc1e14a9a08578ef8a81d29820353204b4f923c75c8eaa8f9ba476c501d698a4251a549052b1f6fdac419938576b3eedcd00acb14d8e971857143a54b950b5fb87c5c31a167c5ace9139d2082467b9a685b0bcd337f354f1db69883ffcc93031375f79883efc0c45fcaab5a7819bbefbe6befb5d72cdbbe7b57c47a57ca5c3277a22b60a4b2aa884e382b0b678db0e34a0e2b39b8391bb326e7ef5e952f77aa484153e2a6ca559d1cf4ddabf224870e1b2a6354cc54f0dd9b92c2142f628400c975b1816d5cbf69685bb8dc9193c29736b405214ea1901c53378fedac369642262be3746318cb384da1220621bb8de118c6324e4152180b02e516a48b8db1204ceed40941b06a4148782abf7b53acbec377cf043de198d850b668941ef5e91ed9ebe39f99e8ab8fe1b552bcacd57955e1f527d15542c7dc3321cd57371156163e3de2e8391773a3ff9439f3bc9ffd9667f8d929e9e2667655f1e3d95bd8dc1dfda7c4f9ad14b3e74aa09cdfb29964afe7caf3c618cd6cdebabbd6144ba607324f26a4fa66deba50d75b0f7251a423b6f6ecc02fd94f0a72eb4d6e20e4e409e41edc9a6707efa0249c5fc795f88a3a2ecbe33c90bbf764c95b1772a49bdb9c5bc7648cebb818d9cbf3fe9813cd161900e4d92dce1c1ddb1fbf94dc60746b0e896efde6b71c124da4eca2e77c4883eca2df4cd1ecbacb394ef44f01f481fcc74471279616a8046b196d9a542ae668240000005317000020100e8984821cc8c244da0714000a638444563a2822c783a140140aa2408c821806421888611880812006831cd3ca5a03afba71746780aea9457f2a01d6bf3326129a4ed4800f292106a3eaf1fd7ed091569530270919f07ff66bcb27b50302a76f6bc2250ca0378ac71120ab7955340f211c6cda8368004bf5bc42fe31f7f26443069126a76774a388967e71cea1d45670b8a1497d8eb6a5a1e6e009dfe265a816cc2c46dc2243a887a64e1763566cac3ee97f20570f3a60a1a8c38a5042917dd1aa195904de34d352776d61485e647accf24be57901759ff51b11ce5299469ac43bc4dfe19f92b3905481b05b3b8e9253f6374ceba40ba5ed4bb50a2c0d976fc80082f4b228b555e30e6b9407c288ba19d9cab6755d7b50c3f3dce952571211526a0bd68b873f5aaca72b0deeba9cdc08c9026ef04405777eaca2ab34922aa043ae0bae64b3a6c548a112e37dc1937ad2ed7a90671f0bd78a48b526d4c1cfd970b356a4a13f498821d46dcf63cbc9f00c072de3e4ac509d801a8a75c7880fd6b806170bff28a50975257a158aa7304056b6b06d716f445b8acdc7c42e9205aaa8ff50d951c4f7f45e8740d7c65c509b496cc60f41d1066b9e0e6bb7470e8bacfa1a2b18a8e13054d1729810a75167aedfc7aac677c64b1ec55872b20bc6fe13a33e9a8fdc54d69f196b7e7371493f816d70b7a898693e94a7d40d86b51caf2f750db7ba56fe137643473146c3651241c57af89771f78a1e89e3f80809c2ef6cad096b752289c1b879466035e35053fdcde0f820ff93b7e27d9daf0c315e3feaa5cb742d83a424361e2ebe58cb898bde20bb968bf315f9f65b2fd576ad1b39a832b001c8aa9af27d6188c46a86db70cdd01cb479c82f3464e829703bf9d2c4607718d7bc14bdd76ad4d7708f16380d5cebfce779855bae13a0ee44ffd735108ee06ecb1761a285d7099288a89550618ded21d4fde6095aeae40de02136c82cb7ef1ca04bd6f5982ecca0052c42f98e4d420214222510ad1e77f98a441f9551de47ab45f801514293aed63082f2546db9066e2ecef6d96e4c78be49ef3a88371f9ab746c43ab4e50dc79f684360423fc5b30010a589fff19ef3be14357267fe36278235fc9b28251ff4481509edf922c987ad25b06873a65840d0330b35944a77815e6fa68d2d3de4caf01f0ade9a2c66c2fe6243c94b323f14186be25d9b9270bb349489a5c3f22a8e12022fcaabc40de5be91eab01c93ef20196c76afc65a142db3693205c1b6ecc0d5e9baa1a3d2ac90514271dae6b6ede7d6f0d02dd64ab74a0355cf2635a2517e1339d7046df58f06190aa42d36109bd2a0174ce3e230a8ba9c33fc370a3fd6ae01fa61d148651de287ff5622b897ba7608e155e24b2d996a20590763cf88350620046b1f0584a42a6ebb6b0f3ee85f189f3b37ad66136c461176780c27e02cd79e8cc91e05398ebd8c4130c5d8df43aa1e3c574756b1833da571d4234d43779d154416ccb04ed215ab1520881899015413c4078311b9cd02f11522633520c542e65ccf220db8688f2576a18734977feee88c7c137b09fbd7b8a3859f1708794e8f3cd1805f0b81f9ceb6352ccd3d45e66c5b8bad7980a15e503d208d7c00b5f70a09a703ef08c2afc5434ee740be082307b0669e227302f9e317ece83200c95b27013bc8fa1b20fe06d7d870020ab4e0418a98e2c4d1036c6dfbbd8c00cb04941e2a633add92416907ee02855d0c652e6216fcfa66a139727f8b16fddfe281ea79e7810ea6ddbb9729a3374b2dd089cb12a160037010740d492526d1ecacc7d2814df6a2f79d658096b92751e81968044528282e98848a09b1eb00503572147341cc19c279edad3861601fb830208f7f0ab748de71e3733c340ef99a8e142f748771a963ba25257161b2c41ba7386cd8be4b45107ed8f4e9a61e71abb3646bfa082a523b40ddb40d556dd46e3a16db40356d781288eb997091b9c1e83917d496c426fb4a8c64403aa7218d2f58a77adbb540aa51c73ca4dae03cfc5bdd80f895233ad118678c4b4a5e28481c5e39302a31693482f5d71ad621b529bd6982e349284b6500852e410425507d975bc94a209403fd8cd0d766796c82d87425fd8248c7b5276274b0d59354fe8e279e6f2881503924480013d51ec83f021a5300a9d01d8ac72684f608daed009a57d008dd06653e4c453607015e75aa1a8ed216adab598747eaeb5645a0f65461d801cd7705ad2f1d0050623045f8851c937910571f65dd3299dbd49cece604f04a64312a00aed2474aa0c07a100822fa5ae09a246cd2f310313cc33360d3a78427336c0e7416ad00c1c63bf5a1a7410b6170e54cbbe350173b8e24f30bd9c8680f0b7f77d039d147033130ccb575cefb1622a392f3258b48a3927f951905bdba305cb7aea83e9e567da4856bf1ae207b41913bd84a285d9bce7c193279d8f844d57165a2e1d6e632c2385f5353fac20d2eb64f7720faac3ffc8d7b52ff617c52b557df00fd36fdaed462ed44429a3cb566f2149d24a5be3b35314d04c2a71b524b784687e0967d1fd8259075d9e6664bd53dbbac43619e79518439c87fb5058a0542972983d93c1efebaa4699505b29f2c5053b296ccc627dc66f551dc245192b8598a3848bc800d68a416a08a71bd3268ec91548a032a6e48b80abd105e2cc3a4852a3bbd36ee4dae424f027a480ce0639cc029cfc1fec4d16d9e2d134369a446469ee2f88be536f53fe5226b1740107fad635a04ec153a32af86e1f89b230187f7e089593737c08fc93e5079cc7f3b481b8eecb40aeae30b863196968e0fed397226527dca85bf6402152985cf550c6aa795875d37597f498900bb392c074393701970bf37e7fe68665c02ee55b01c4e4d814bc0ddfd1cfda95135f6d94b26fab2bf5e01b1b4fdd47a443373c8b616ab91933974c9c4e7a2d0ffc656ec6627cebc9ec78a25e1a0c256ff72b708f9428c512e1e17367932adb2cb9535ff7931fc96aa44c82684e144197de326c0dc516f3f8f93d4114a82f17faba9036bb00e47b40485e3655607c3969018609c6017eb04cdd2c5879d2056fd95956ed769c2be7d2a7b5b0eef0179d99c9d1818f37731bd54af4f8269d82430e25085b38df650300d32250903817f9290dc215e663463a6f9ab2357f270e973a1f62cd84f7c8019b50a7e7b539654be01ddda4066f04be196b34708486c23517119ba78ee62aa56dc822e79e056ceffadbd7c4ca8abcde5d6449a376acea04589e316b171305fd0c2ec15e2901cc2bdf4f942a409cdd895357d5d18a9428e313617003822f2df79ab2f5ba7841968b4da427434f46f83d25b2f484fa7ab502e4597021e80d88a1103f23cc0775a1ea080576b7e00364b80de3f024ac33380d7aa5de8e6acfc3e1a069f75b875a954dc4d0828bbd4ffbd1090a8f33aaf20c255420029de1503e3b6de9708795f633b243546ed0951b487c53172e124d5eff9cb694acf051409842a8d0d091e447d68431a6f2a4c8cbb4e72e4521ed1d66072d0ff3b5ecc09e4edd658b84e2360d123d02ac01dbf8bf321ff0809d3ccd81140e81a1a893555ca8274e2dcfda5396d036d55f5427dd78aabc727524e0e4a8fd4765512146b88e77215787506ab74dcbf63949b200da14a85f578fc894c5a6024473d3b84372078d2e994c5f39663019b6ab06710003b5d6b691518cfa59b0b4fa5656c4e4ba0afe95296e651600dc2e4363234369975a6447da8fdf0f5520687adfc8d3afe970a7e6e7305a92afd9fdc5adbee634a7664a98c2e745a126e8f263aa5ab5b6a179c61c1d93148d30ef68fa7efffa2b1dd0fe5e856d12a916760a626255111d1e9b8a103daf62bc276b3af3ee14b15498fe84a2a091d829ed2e740bee8a209194bcfbd78dd281d516b5caa621b5d52b5b610e1d1ff103ab7231c304416e42eb32f213e06c60f390df445532170b7877e1465c5934744ad4a01548423db8d6e567a913c352162024a9112871f3d65c5d981e83dcf76cb00f7f7be5fac389bfbeaf0f9c8392fce7aa8e8ede124d070d1115722b986d968442bec4ab78a0b1d1a18d27d4fc6a78d7a3aad5764fa585d56fea179d648870ecd5e866a1b71266d10f40403454e9e9f72791db4d793565437a2d813dda9259a86231d21472c87d0d4f93d4a07f898108983f03b3fba5682761e94a72032bc428a7156afa58491799b09dc25c7aa46d7b3cd5b3c702a7c44cff0108cbad7027ca8106eb92a342f0b0fcebce1427b11720a042a4b38ef4eab8f182dd29d64e19c6e12ed7e5959008610ac2c590fe1828231d2a92def36b7f958e3fa67b3f205d2f301088c81d315f9555128c87a91196b6d21a6b7eb4a0d7ba44b99c7445dc6d0c402c65d5a702533ad1075dadf11c886a81c907ff485993abe92f453975aa3be085a4508cd9045d21e39842cf3ed03ec442451bd0736bb9585a466932b10e9735365e95573a26e4ab16fe1ba783aff6b42e65e22d7738ddf78bd61f6cb3b9d9f3730ca7ae9d70f49d525a074128827718c12b48f05653dfe3b7e1c5413039bf898d5e636e174454406d8ef9b400d5f5265515d0c0fc07bfdb9d5cdb2582374a13363a9c048df5efced37ccc4e10b543a8d1c02ae2024a0d1211c111c01cd08eecdc383563d96a8079239c81749cafb434712ebc145a491488d98d8b5f9c9370aeb55fcecf1e920112143767a59c8a4fa684e08484f6215a970e1988b37793aa411568db5abd3e4879490a3146bd7d665d4cd08d152421f007e4978b0c10f536bb9cc106d3564079006dd6f42a4e123c2ec05bb68ee91ddc645fdc49a1c7d36afb5ba6a2ad180f1ab8ac45645aaec8b4cb527b76c995f60d9a371b34dc16702b52caa5ed3682552710c85942b55214ca4c9053fe96315d62c919dc048b7331d402801d6ba6ef6782a98473c5202033909a00dcb350a79d34faa9ea54ac43e4f70dc222bae64f2bc09172a1e414888d1a00c818fd24bd2b777654b865f77b803f780954c10fc38472b13d9def2e6f93177f6edb95466d9be793ad439a7c5d988791f72696a1b2a8424aef2772139abd75216827c898c813c6997bf6d773170f68d5e7cb03985b2e1d2e5bf898f99974681eeb98a982545df69cb29c9bd54af4587734255bdd2b425b5db515b0dc713b0320f9e23db6c12ad3cc2319079f54e75dd47377ead55dd6f0df1eb2583edadb3ef93410bb380ded6c3017bbb46615f3875ca65ead011e13aee3015180ecdc6e1c09c7c457db0bf4e4b9c550a88aba07a434df44877867e5e2240841411893cd7a2915cc440bf1a86e80d1b926e581dfa0e684834426225cb92cee1579b0dd590560c50bb596ba114c67a420a09be55353775a5df8ac20952427e4c5cf344bbd93be954bb040e9ab026a9592908bbb12110bac1152d7575a7c053c9f7dd5cea768d7cc657a16d9a8eb431ed8c6ef764baa263078389a11ca7ec50dd68f568619a07c9ac7f097b2e7037ee79949ffa76be439fb1ebcf6c55ad398be0c5bf5d1cfd0657994b550e35b5cec0c40055f1e44baccaed110f00b1b1f543736efcacc9f6157f8036fd22864675976ddee90b37784c8a7dc2bcca6edbb3ca1dab93a0c57ac96ec6f233e7c20416896e7297213b8ab7f815c5d7b03e1c76822c65df6aea9021e5d4eb1998c890aac1f783aa4e1adb3afbf3d9052b23447f0981711ff6188a2dc13529c612efd51da2731d66b03f9a2db92c08712d02a80043f655c9d449be7a6705ddc55db1bf230e5d818f6b190e8b5a35fa732e91cc64de90724eac44909f248f7ac6ed6387bcf9bbfb943d40dba6a81dddbec05508622b614761aa1714ea38b2e30dcd57a5cbe7c29e34685fab420663c19716886d07d00a508e6b5ca0ec136005205312ca41789c11fc4954afde79462855669e3c1888989cdde0ceca625cce8291f70f8e2b5b04f1ad17f6a9b109fe57bbc2aaea8769696af06c8a306113bf7c5e916eff2410e540a1d242ed1f3bec889021f24e82eafe281eec90320cdaac8d8f0f18565ff2afb8e2633fd1fd7c7b3d83ab55eedb31096b05f5b624c4518516fdd2f5c0bf332085e10db726f08b9649f97c02ef4bf3f655b064355c507a6f292626ce53ef98ce1796b57b7c3d75729c752de5dcfdc690b3b2a6b0b3dca021422c03298e417ee74e3e7fe5c6cb2f351a3aedd0af3e2667f6c3eed366a6588f0464efebb89cc34bfcd86369337f1492741ac0ba3890ce60f4edc46408002276c2bfe055a2a069cf5d50d821ddccd955c5530d08eab1cace5b0c53d5f68c4848f1e6e0407b726f89c1dd67826da63978e97202b717928861524efac351024eaae6398971e92864b263853b89d1db4b031cdff641bcc1e323e5c69ec0632942cc3c3fb1738442bfb4611db70819c348dfc63e3e18b198a0985e5cbcd3dcd2aa79c784edd74a42abdf1864eef1d6ce50cfccab3d09e563415f2b4b2f5be4b0412bec08809521df6950b76529e2e287a5d7f82842279010d4e6810fba47a84578af2fc320c0c0b935ae1df1dad5858b2b5e4f85ff6e418530b15f296783f8ac8c18f645e60abb269c9ee3093ead98e2cf08a2f34085c7cb024385464dcc9b83d64d588e2c30d7f19069e02dcffae257371497ddc33c8bdb2d7460927e5653621b56ff11efa6641f9ee74237726ef0130dc1f8f05c6d807428bc906e287f7448fc072b1e4994aeb63b330c5f8b47668323f234486735412b2fc81f0e880af1ec96b455d6daf34507deb15ef7a5c67331be8d16cd3d7370b65b193b45b446b5883a8ae274a5c936ce1ece89820d3279231055433e4e49715e08d4b830c8a0ec0c9e312200725346720ee215aa0e18cfff46690e56e41022f8d0ac0a1ef22df58defc01fe6d5461e13cadc90f6c054d8280429c7f1840ecff63992fcda54578e2205acec92bff28d932cf96fbdb25a56b555d054665c0439e9c4149abd99afabd2b028c66bf781d670d56a682a03afe1da4aa0d5367a4b9a3981a7a669471469e0b656b74668942c3c11270d807d17a009e4588fba4825549e04575c881fe1a2251ec95a658365d2b61d9c3ed15754803e968b99de4810c30bdc49168b61c34297ed499d161c1dc979269b02453a588572159e5f48121436dfa45558f85d1dac924958d5deb21c0bcd6d5c4e0ad917100a291662d800ec0108b94937dc8574a8deb890aa3f04ef974408b73d5122460fc2bd79a3919e6c5b5ad7be452c08e448e34a0fae9091a93bad6671cb9106ca4a650b643e8af7e5e4e42d8db81a3c2cbf7e4be3d45db2c3704715ca1a9135ad0c1d9b1f975f141bfeb34d42a42a3b1a54e7c733df681c55020c63f89bb4602f5749152a9d586826e3ef8885e9f66860c173ae7f85cd85423d78117b93ca2ad203468a4634ac78f5111c6197e3e9b19cf608cb7c0bb70d7132094d54aebd7dac3c0f58bea9291d95419cfba252414ce728d0d68fe38a9495bc4db08d06fedf979e5ecea907923280bb6bff3ee148f9058d93700348022e25a84317d793010a6299040a27a51145bbb425cdeaed7d305a2144a204a26a22c1e5c831c6a39170ec125aede14e687dfe35444966e4bd238ce33bcab8d405082293f5d11c1418432782a5e11eeda3e0420cb17bc98592ef3686c2bc4951dada1596012f09c53ffb739795168367d152401a66c00e47773d082a39878326846f87a603a2a9978b826f45a3fa87cf0831a522ed6c20d95bff9469833b016476733b2e4a5c80d679da83e2ddc6d774fe43e426260f20f535335f0b41ceaecb074161ae84bbd8dfea2d5db860cfe416fd91c44038bf727ac699f147223f9bf5ade85aca11c7cca4efde73d344c2cc8efc69cbf231b511319c77048d0badbf35306ae62bb0a249150a782374824ce9282d3d8516992202f58d92cfb61d28151252967939b464c44c346f11402d65034fba8558fc8edbf59fc8fa3fc6d4d15f95290beaf9f474b95a6a11320fcb39f6c7a8b400dd03ddfa95625c38d4ff18d3da3f6658d4aa8a13fc96d705fc2ba5a0b4b7d8ee148920ddcd1f4d58ddb6d6693baefde22cdbe135ce102f9fdd9860edd61580d11403516154e8d664f0e3d5b900d8bf6969bd8efe574490abdc9b9183dacc2b73b2d8a800e8cf5ce9bc55b5604624e559307c1708bc8828c0ced423dc453651667f308baa3a8b17d7fa4d1a779976dcc7ff1e23c8086c13f4ac8b150988950056ae02ea56e71fcdd602e58bdad571d7ba8f9989e6aea70880782c4fc3277b251c18248e7b67b61d70b1c7c9675bf5b6f1e7aa7c26dc0f30d0fa6163a491dc238ff5e9d1d5d0e3363b51e95b84b52a7ab84ac72674da79a9aa22956704324f464dd4d221f86c5b936353083f8410e0faadb899dc0a156029f1858abf146841d9216ba33d9a854c47e20949017fd5ab93b727318ac8739e2c0530cea1ed45e84d5d7692606b56c445a42a651d8b63f4fb2755454fe6bef54719d5b806e9428dfd880b8089b21340d1b758b86f95cf223ffc2b895e2c0abb0b424eb5bc1d5e1c3e43d472588539856d866cd71eb2aac2662c5dab9956f5fc7b0be00ad2a78392811843693e20d34370f2703bbf6d1eb1e0ebc29de48e6fb4e2218cf69a009cdfa0f9471d8bf5343b66b4fa425dee69e2cd463211c978a1d1493769744d337cd9d866aa554d431aa81577960e360723e34c2407387316863334fc49047ef338ffb0161c509ddfc24e462b1867edd59e1f180271b41904ed920414e43c92ad09b8f50f4b32fa4a2bb059cba9b26549bf09b6e92744989f03cdcf41f35f3579e9b5a92670ec00e2290a5f67cb493fdee8726a29b61b347d09981d142000f701507a6a26ad78f297467f4e37e830d0561d0de2bcb0902f5b5a844f09ceb4be976121a05c59aa633a73119fbf14c9acf82c206af9803b0ad9d4f228edfa41500cd797b68afa2fd9fe30b1346c60d4573f8bac1211d9683f0d688c7a9e5ca7182d057f34c05bd3bd3ff3ef20aff513edd40385caec95275531bed7b0faa221c45c5a8b266a0363e021b107d136ccf5001b80667ca9512a4e403387530ff92727108a183bde8fe2d94040594c50515e81f8243b41ea8e3ea253a3de7b3321e25c1a34f9be694265c473f32c0dd6bb4be6f11b1fea809893f3fd5087928641ab3a11b5915de6122dd5fd8ab141f8a392802c2f2ac467df9eb7e3497e3e7cf9037da840a7c07ba7afe9fe2d837963325c2b2a04cac918548f6865b2dc3c51731934dd2974cd76751d27a92a039d4ae7e2762cd6d5d96942c2f07af464eb747581e24247e6a45db1a1bf1617cca544f00243300904ae8c1d053b1f1e0f1fee6a26a853a94cb2d716c1a35857d5dafcae81696f68d67677e1dba8c35f742ac3ef3a8a4ac0ea55014d7b25d7aa006f7b256069df23715f7c911be4443ba390883eca97b36ff742e2bd685df7bd895a4b0fb3243c4ed790bba495cc137be3fda1f8dae96250dc386d8d2ceb00a11b67f02952c03d46e4ccbd49b8603f1235fb6ab899fe98cc05bcc1bb31a6cf598e88648a7e9cb75862a074fbd4e550650ef891d22480d68b972cb9d5e1dd403d89ca2016c010db6a22db9426e93d2092d0103f28568daf6fa82c70af34c3c25513f8938e163e8cec1f35d6a5bc9b8c60f870687279933720318afa68d704ed0ccc6771d238c9eb86ce99fba1c796acfbe7e4f7abea09c528c8d450dabe260c800cb911e4616a624306bb28af4cd9efb5a16809c7b00b9cd9f3c1bf1a2cf012edf9dbf3c022c3bc9c61a508f8a0d30bfa97a9b6efc21a98b4ef5e09dd99a8d44d5ab722a29f20bd0abbb00ddcb6c5c2853c638e757a4e20f4850f8e3535f9a91e55e63efa10b6210fb4a6c30bb0a67fc5b3e12adbc7361b593551bb356df0333ec3a2ad11f10bd2f40a39ef4fd666b00e503abbdf90919ae7f85bb9aaec3486006aa6e5389948f4e28b0af38bccc5f247ca725a3c6aac06379acb59f341893000fbbc4cf264bfcb5152d50debb33c4e4685d5dae81fb0fae292f77cd039fc29ed2e2dedbeb410800f861735e5a34e79760bb243fba9426e460f0c72f53c78a1a1a2be7363a67c55a9d3b4f4d53ebf479b424b9a8b903e1bd100a5890329ea3e97081d59783775ec2f04bfa7953762da3aefbdba7c7875014dde4531a809a790f7c9554071cdaefbed2ab80dc3743755c4998b93bbeda5345ff5ef6f72c478c8b1889f60fe0b070c07edc7046eee88412b735b323d7512c6e5243a4412b1073427c7e214c033396062c7958f87fe6cdd22ef765b95d6df7817609259df341d6fb3ed4f72a1089ca82f23d2ede90513f970ed2484640e87a2063aed2fb0e907262871b62f69871d57d4b51e9becf2f4974efaeab92aa38f1e0625b48e3f942a07b164fa50bdd54fc252f45306c2f337b4bbd1650b9e5fa45d50c7db07d0cc3c016edcfef60531bc7113d5a1e0fa514c4f0465dc325dd0594df9b99b3e01b82fc25450b2c3780177b151d9f5a2b9484ca0416f7372100fe23e606e49766afa97925e7af303ba87ef9c50c9220e5e248a7bfe4c6c68b6b008fdb50d421ffe285b4d68596e54218a26348ba110356dd9c9f0716ed2fd4d8850c2092db0c5de78e9dd980411b96bca00ca86637776338159f98cf4543e86da32e9b647cfacbce9a8d4f1eba9415e5aaf8d8132ba4bc7bd2a0e709a248051b29633d596d904ada94381867633ea60c4fe71e3dc74c0350c2233ebba35b03a58422a4ec0e169292748e709087c8440a3df0c345aa76a8318b48c7e1a0f8f915b236048ce99f71a486951ecb9dcd151920c3bb98e3175bc5c1e667efa3e077d381ed16adbf3adc41c57cf49839da6d937b6fd8d842bb3f32a42da0b771d2acf51f28a1acc2e06c4bb3e5fabb1b35c28bbc54df7f420fe8c3aa156cddda291243bfbe652ebba662c03126f8391226a96facc2134fe9783d18869ba4511eaf05fd414ecdcc9f1f51eea10b4d610c78f9adcdf32b4ce34ec034a464d9bb6d88085efb18c3ac5a72d8e11e81064986a5c484a8e3887d4645567617594dfaddc7efa4b571396d50875c7460f755d20d951837a3ea1d8729e751fe4ab23fc7b225a422dee240ebd5e7990701b3bea4f80f9f4c535ede802e3eda20e618e25c3ba0abf1eb6dcbfe40eb910f42d7c5af7d25291c5ddd46083f29ca45b9dd82a93483c991ee710567bab252459d583b2873a5d7e6ba3ab88191d12f2d4a006add8044e56270c89fb647e8085820b3ff933d0dfca6ec9141f6843968edf6a2814d0b0030928aee97659d433e04b6b32140c67b6644b116fb32860847c68bccb16ff1406a42059994f9de6e2493ce060eec0280c9be442d9fa4d04a58a14ed224314e32e43560dc36ab5fe1044efff30e1f0aca6d93d6d81491948995f42bb5b08fa0411998bd249598bc8cd7b197e1220208aa612c6feb59e6431af2c975f0cd965c3fa128fcbd19621a498ed947eea5d0786fb2219d850ae8e5112e307f77654889fd0d31f9afa3e64c7b5638d9e040a90097abc0cf4be5480267767044be41bc43a05b9c8de291e7ccd854956972c41a6d0cc321850cbe693fc3381ebdffa4b74f49f8ae4dcbaf231af591abfe4b66b90b9bbbe970e1a1cf4d26573438574735f15c35f513c16da49e0351e9aa1d01868b0348028f8f529febff7432f1c248857f2d1d4402bd313ee22f99de755d7408e5bd95e585377f756e9eba5e0f379f6ee2b26b30bbdfff04b1d15ec2c5240e19fc19fd165531c1d31e462d19a2357a1bff39a058408be2d546e0c5e143131bcac8450e16a3abb9bf062e530cbee88781829bdfb2931f1a8c2f95cd5a3ab0ca84194ea187623eb8e7e4d2f75c6b3bfcb425dfa77180c066f51888b405d326b5365514ff777b656a73126010a8f615698ac711f61de1f1d3eacec6c116e13f6af87f769ced6c9e9f05a798381398d432625a77365e5010ce2182d393c44ce44d4664df39710d01b1a93a3660ff4d8a618ddb139da74a78038030bf5263ad25eac788eeba08ac99eb24d7aa80fcde0346754a4836d6b0a16c8c0cdc6a4aef3f6b9b514fbdbe3b610935ee692858f7a23279d129f880034a58787531481fa53f6b07356f53f6565d4d95c09984e8e8e20af471db5dd00de16d98f3279b8b773224ebc5e07e6ed1cf36adf98d30bb3b7ed16f69edda31b3dd7068f6ca64e303a41360183d33dadea133b1442d109ee95d607b59320702994f460336c681e2c987428f43368a05c05e19d26af01a4e2905c9cea9f84088452fcc5589b32132fab2bc480c5d8d3ac8c1a2a0132d5de36b1cdecc271b06120206e1e861d20f1f82a2e416cda7584af53a219d42a596c9411be96f6accac3c23ce7583ee0b6b4016a99070b55ebb736f4270b14c525ca44ae0548d24dedad997e7b1b49f654d7729b3be23801e7e99c4ad5da20cd4b77d61e1e46779101c8b6588d93b1da4bb28e7460fb59d52022f0f97b2bc73bb3028c201253935264b40df8eae31c65208667edb3a7798e6ba786061786f00052a3a315e600b4129875302d3b6288b47bd91c5eb3b82999e3d8c38117d66acd0e8c649defd937e239970bdb3a942fcb4e9fad66da9e6bd8b28b536454bc1132368b18f19e7a87d4fe462f3cda94dddda2b587e3093175bf2458eba86624fd9c4573abb15fa32fa6404287d3c7082dc741ca05013af824621c31b114f8e46d880178bffc2982068d88f33baa98e63d80cf61ac63c6ec6c872dfeb3d436fbfc48c589d99018d7144ad6b659f249a9009604377cbcce79d5374ab7efe433628f80afb6cb15a1363c9ab2bca9d47a948d6e1b9fd321e8a4ae74ee42e8c31608be0391ae6114ee86479b3382f61d49032c333a73cc8ee48d8cc1403646aa241026bd31e67074d1dfc8bc9617e88e8ff150218ff9e35f319ee1f1a035f99a57c34837dcd26325855fc5e976e44ac22a257ac50eb70425a37a597970cdfdd021932589d255c85f438d24798893435b2b46f17036d82599fa736a8e0e95797c98ce30bd65d3dab40a1895991c846e505173b34fc43e0d33a23fb706ab5defb39e224397e49c24eab7f3c3479eb2b389d98032a66a462c9d3aef4b587053191207802b3541a64299f1a26db35da63071667ff07fc39dcf68bfbd88ae60ad0f8ab7784472b197220106df5dd1e02db4fa50e48620aa19c8f7b055ccb9d71d1e43ccaa793e0f000b617afc6299ae1c72f7284bc8b92aab487a7871e79f644aebd297afc3bbb6387442af6b3488fc1946cb6037040046ca8e84ba76d2c270234d1c9218d5ccbbba9b12b1d8b44a6287eed788bbecdbef6dbf8e261cd7368bbbb207b394e2609706f7856d050e73d0f7a52d5bc4e85f40a86f9a5704dd1323735566e76c304bc16d664e57f70ffc20036de645135e45f69517d990d522c667108164385ceb6a99b6e9b37d793e60431deb78dfc084a5ce030a9feb82259372f976df19f36652054f1f5c697d3d4528b0299ee75d07bfef97e992c943672d59629fdaa687dc89d1fd5dc585ea878e7d2738d08d36e3243920e8a7c99278d386b954817e763b5dd05c5fce1a380499493688b1214796f1f6cfcf8c0b1a1fee5f99be632f36002ecbef80946aa4b5efc77a25e5361d62008df405b3f3f8010a333de9485c487e66c6f44a4466d66bf636128bfa8773741b195873b4b42fc037c95fcb4112a54a2f3b80dbecd989dadae80ee56fb345c2645e2c235083b93f34603b17a4ae0a1622820cee4682fed89261cecfcb3beabe5d146dfcea9afdbf571e51fb3bc77b51ad2a25b7c5da1ede4261f405117366a55d9036b303687a995b6644dd15bd3e6005196703eaf3d6858aecbcf98576a349cfc3f6069cd2db25c731a9214b9ed3429682a119aecdade611954595a71752f7c40ea211d4f4d980edfb7ab6a0e2d5c17dbd01b2f5cc02b9b74dffa1e2f2b46c3863f5444bc97b35f00a5f960103748d55777128be85188c512f095f5440f2bf9e8b650cfe78719b57e72159d0185ddc8faac5aa689713a1aab7165f35e613d321b8e5d7ffd5bd52293118060e875e5597bf725a52b40fee6a7076a676ecc9f893cda60817a5563b08dbf2c2731df806f8cd072c47d4c73228b51dc0eb9cf95f067007bfa601352754aa2cca628161b6bef01436a850120276abe3edadf211569e86f95c6ba17895ade1c8b87916f94060722928504650c3a65f5d3fe65b466f8662499e2b5ddd6b51d9b7806529f7087728681bdaa9503c45ebd69ae852da0b93288d28a9c793ac72c8002da4225a120613560eb35c636cb8e27c6b1df7db26dba1fc02f65b3b99c53d554c62b944e95e2ed2def70007fb53f3a60c106c313a56625959868c7e6a1cf8eadf1b0fb6e5bb45eda7157c577df9bce2413314f022af1abc6a52b3def6381c6f0c709d6457110b84087850192db0f449a9a4e01d67d53a077ce71a7cf043c3f2cb77788822f1a993a8895fab243cdbb9c07fea0a837f04019e0ae1142090d227a77fa1108615c17a5ed7ae58c3daef10392cad4ee388f3e458479f7fb2ab7bdd775e6cd5cc413919b512faf7781bd1fdf8ce8f074f26d67c06d1b08d109b2967c920050c425e5087e9ddc2478cbb050454d1a6c93c2e160b22ee511b3376d5da7249ce517f5e413bf96ad8dd028be22b737443f4acd654e5f20d4ac2a735dca941341c4c6d33b5646dabf153934b6f74dd603bf0e03f438dbd6ca6f85f029aa60b00ee66bf64ed5bcf471ae4ffc07b5ec83b00227230bd68bcfae8d9f76f4279d559f929cb2a72ec25715528cf2c02b3e91d770d0cdcfe55b53246cf549a3078bca536882a5fda69331924b75fa1d318b71ffd797f0af77b6dbe52ae23ba855267ccf2eb38632f0b2e17c62a6fc30dcd201f694f716e1cb55b2a6167ca2be6e798e18e8cb7bc94b60be8189fdff3cfe6e9035f0a41af8e9fcea25670f9a8fc6fb064ae3ae08bbeb7a6742263e058dc31ef77149ef2a5bd2885b3164ce3ff4dee94b81068b33aacc07c9281181152aea92a9bdb0a77a33379b7070dd014c64f72e80766ea1a1999bfec53a105d91a4cc3f4ee2c7855080629ed9d4447645a945f546bcae9a5df51dec621d96aaefa1e77f44032ecd19fd983ff7068755f4a49c5b675104f979ff78a7142d971d70822ce99706d27123ed2fcdc3d9562f571b7885cee3779ed4ae4cbf11f9923835d037f063473a2b540df22750832bfc56f4240fd414557af22a963c0186af2e6e610298a52aff8b9c2d3207c802fd0420d2c1c800962db849ca6ad0aeb6a860ada48277c8651c5098f20af0827c2cb04e1f3be637220e068471890ad032ca4c4b179c0fe07587817a10abb25e4cee9642bf866ff6437a7903a8b98329a61bce954ac24898b6361af07ffb20de9053d209527bbe8f25119cd71e00c9cd168c5c2fecc01bdf8d8c2d70dac8529650c5c7d5c3ef13a6320ce99a2c2bbf38830af8b0587ee07461749ad6bfdd89a7be829869a04a4f4873f5568f12a5414c58ef04b39d842f42e7403d3e53be0679e1345c10e8851080cedd919a90e7093fc6770031a2683e68c0fd6e8ae38a4d4107c8f10127968d5f25731c2b37f0805efc410f499dbf54cb679bedf6f90ab0422c2110f16d0dd93485bc154b468cc549d631d39ae3f300cac3fe5763eed0502d861746cab550057037be4c3c9f815ddd48fd177f7923fd1ee5da6714e689a3934e7b4e633b2df981a449b4e801ac1dfbba048aa78335aa42d5ca5d48d388b5d15dcba8c03ec28a2dc2d974c9944554f9113ab1ed9de020052d914a1770b11b7560952c1a74f274ab37abcf0fc7b36925ea05a3a327834e52cccb5e3599005f761cb67c1f2025d13ee19b8d3007d6af8d26f868d3737df429206c6561c25977a6b012e5121e6fe80956a2d88b618721d345a107f8b0e52e702e44aeb59ab5b106b18ba577a0792e3efa4c3ee4d272b00360724ed1ed75821510878af540da702ad1b1ff6a148f959944a6644b406274911063d5ab903719134972cd86e32313fb8646c1ec681d0ab0dd7a2c8c692b4468fd033c9c5ba332eee655f5937f7b2afac8b7bb5efac8b7bd957d6cdbdec2bebe25eed3bebe25ef69575732ffbcabab857fbcebab897dada77522e808a11b1a3c76bc16c035dbac0a5cffa4124075872171eab2fb781f0a3f38cfa28f6ed3d6ebd41f79a9297ba69f217181f5f6fd03a26bed00d4b80c6dd5330cf52eda6f7b5b30c2752819da09b6d1a30b9ed7b10a948fb1146bad69a02a89c89d8beb8be36bff50e83ef9eeb318506d651aab020abda85c85c2ad8daa886f5bf2f29ae3b9721594d1f0008cf1313f73ecf88e9c26f21ab96b07e4805e2f0a51a66ced5dbeda1e940b2d28162deda93f975e556b07b4b8c17931b80ea99c14f0028478f60221d48e1bdd6e93fb31c2f5b0dc24d6099298b968119139a08d2ec4ee17241a734d199ea96d007df63fb4ca563a47b439267003fd0fa194cbfa9748c746f48f20ce0075a3f8e19aa0ff0c3a94d77c0875b9e99d9f72a8d9dfcbdf5dd258a6348d26e1edf82416546c2436a87fa7cbb84715ecc62a0909b420e094576f646b0f6055e8b5577c659cbad535cf3a8fb3e8f181a4342616b22a46d6272ee92e037a741807b84e1d0aaf69c0d6597912e47a13386f18dd8acbbb471d2c27521ff6f7d9f1e5bc0efcf1b052c09501020f9bfb7117204d116a4464bfbab48a7ebeb0d42f0837487352bd11af3c131327f153f2a2ae4195dff29a6819a9e540bd3fc947ceb34e0157a0a0fe854d23bc23e375620e64e7f5f32f529181111495cfbf79510d4102cd80ed36a1853a6fe7d0fdba2c1cd9c17972a5eaf3c6a54e0e8f9a23422d9142d2dd11efd40eb1ce97e8cea63313b10b39a6047290f94d220f87548d404808d20df4927c255c44c068a514593b4ba99e4a46360bc5ff094d2538dff7a18a2cc4c71d11eaf133bc8f865e5fc771b6b97df45c9f1c38f8ddc3e8dbf4ab7bc9c36ad0c1c7cae3640acddf5574a1aef64637d5673784952fea1cb6c64f8915fe1f96cfca54fc865f8fb6548a3ff43efaba5f1e78b4b49f74bd7c888ff08f45a1cf3fc2969d84bec5b6035874c2e55c7b4c44085e7af1a9f30bd50207d4d330dafc562c61dbbd5c3dc9ee445ff6a272755513ff2ad3bcdc6df4a7ff67a7cdcb135475862f179b7132457e8df5f1bfdd0cd271d1f54ef036ace87ce5a204e4a5207f7bbd6756cb79b9a6655df69f60d33f7769ded72bdebc92ef7d1362a9cec541d6f6fc659a3f2e63b3e55b128700e5252ffdaca19abf6a2020eb7cd2a485c050fc089759fd407de00ff11c492bd4bc8de5b4a29a50c7e0c170dca0d45b0c0e0866e6bf4169dea0b2fe544452584b5a51767e525899f2d53b4d4583984358057a02e162737143496283d5758c02f84597cb85a9cc83be02c43c22b6a402c67ae4411660192b5ac099500b13c7db719c827c42c39f246048f9627f88a4d95854762e9a5ae1cf9b0c8c03229194427524b2f7503a2e5858c05069e2c34905cc22b3df0609902d4f22695258bf18a1930cb0f3f5a9c5c36211622292454575e48dd86805aa690596e371db4961c6e9614422d45c82b56f060096f4e3d940786bc8cb3ad52b0d9cacab0ae5679b58665307449a4bf98ad40d9c559180c9ead7d3c4d8a63edc381b02bc330de9de15aa8036bdf0cd4d92a88fb74b017b2cf766176866da02d05a3767575766d295985e119c57db5aacbb0fb8231a3ab1207163a4f715ff9ac55606a6fb5d6da7bad4029d5da0ac3a8b7d60a215a0c449b79d076bcf62a6112933cae1236e9cdf7f608da5dc1d66bbdd70c6ff8e4ada53607a9548516595966735cc7d85a8cf14b8723124c7754c7669659578d23d2a25d653f64fd737a0e597368022c2a6c4fe7f50964c73e8112a0306587f33a365fc043045854d8c69cd71c3ab339644d0764bfd49ae04a2aade81aab30ebaaee6ad24e456fd75777dd1785134589144d96184105efac326b6b192b4788581142a44a1c2355d8ac50c5cc09559e8c540913c48598d4532a556e5cb23071c182e585991db414647592ec684196c8228bb952c20f39e79c6db0b2438f9523a6e05045c7aaf246ca0d55625855a1357d5912a506a73749aaf094807a22085692dd963a6f8630a2a496a1d2048ba1b20394ec061463ab82c9059a2ab2941c91168955556b52ed2a03c1b58e806bdd156edaa394e292747c586f380ccb17457393605399bbce48d0a5cc5d61b0d0fc31333958008cc7ce6b23d2a27dabbd959ef91d86b550b674c35557731577a686bf4e7a7065361b68793c1eafce48d0611c0e0783dd1ac6b6866d8dea7eccfefa836e65b7d5a236d0dc1cfc757fdc6a697db3793bf0376baa1c444a29b55ead633bab301db5517a6fadd55a6bcdfa2921ce60b6edfe94ca14de5f1eb6078f2a6650a37bebb72cbf9695ec61dd923c7824e0ebb2421bdd5bf7346595d55a6badb71097d3b9ed2bbbacd086566b9ae51aabb2ba546178c7eb81706f618e038be9bdae241d3e3bb18b9ba64fc3d0bab5fec2292f5fbef9e68bfd52ec1463108738c421e8d7451004c14aab31100441ba0b9d7a2ae5d7c172d35b5986a17fa1b9fd5537bc2a33a4d8afccda964d37c96acfab335e5de255190f8743c07dd99aebbeacacb6743a876b519b9525bde585e1873bd73f205ce0e2c467f3d62e93cdf1f9270128a044a194b53bb9cb0a6dcefcbe329c5333a839f3db8646b654e1fdb6b88c49a55c85114ab0f96d6b58097f2eebef50a48a13bfad0cbb39625df4edcef761a1fc815e8590346bfc930014f7fbeadb7872a03dbed3b3b3e33b3e020f3edee323f0b84f8f4982cd428a8cc784f1388f6961d7a87aef1a556dbf2a445ab43fdb5717a28e85f6d466e589ea9edaae68792ca33bea8e22d507d8d32e5da3217a63d9d7745fd409071c0c06830139abf65c6bbaaf1d3170a1d96cf7f5e3ac9e6f19775fab2c487091c1ceea397741b84639acbbaf2331583451839dd5f1eebe7e4ca953a74e9d9abf9babdadc59f7d541b82fccbb46d557a459477357d857d1ccb3afb2af99f6d54173d7a5afb8869b74d5f3ae4231e166e9ac8e9778f755635f139e651eb61961918517cb3273e7a56bee0cfbead4dcb8f7d974cd504344ac57fcd7850afa9a210c1e44b0dfe47a751f5b006c0e59a7273687ace3b72635aa9eaaa99e664152fbed7f6dcd899f8bac1ed4b3e963cca68fafac759e92d9bfd27e2e9558f629f9413daff3d09a7e4321d43a9fc5affcca8f5abbcaf645967d1124e9107a875fcdb1a7d6b137b1648f1753a3257b7c3d464c663145bfd45d913d3e5384fa3de8e790ec11666f724d6c52b3c95004f0791d9fd6b4245c8bad68a2720e6c78eaec768aeeb1e31f4e7a2afc54ca24cbb1a4542c4310b45f693fdb81636b8a901fd7a953a749cc4f9589add13d29997aa2fd6996179e70b22e7ac58aa29ab27749b42eda320ba12fa9647b588aa3b81ef7ce6697ec819530d9232b65b2c7f7c9641fd903cc42e88d6b5f7de39a924e776557666dd6c6e3d5599d65217405c90ec290d695e581cdead7fca410ad8b2c1ed5f2207b50ebc2b4da8b47d7ce4f7960ebaa4949b8d6eb62aed5457e702ff68bcddb43f5f7031dd7a8ba8efc813eaf83b42e8263253fb0e4075adb7bb3eab12b9da087eab3d943f5d80c79540798204448788d2848f2a8f453248fb087a5d5ae305691d845d64e3d80f6a8f545d60723d983a424499264b5e10a3baea2bd387f60a85a657f4af2f84c6aaa2a0a724d3121d61d0d9e3a0d2d0678ddb8348a14c6a9f66ac9e0ca15a61e2317dfd0384c2d98ee08c053c7f4e5d7a8cc923f0338064f3dc6df2ba5990f4c324a02a3c500af1b9fcbb5e3040ccddcc8e5fe874c98da01c053a791ddcb5d4a85f483452592b141a344421c5f6f8f9e7a8c231cb4a12c7407a53b6a3cad26b9baa18d9e7a0c1c3db3158ba62e8dfaf581be5c77883bc5fd1a1131c1d298a8655d6474f5dddae17923c38d9bd4df1a451a91f0f45418688c8aa467a9c7a756b1c54fc97afa015ae33aa0160cad8172ad20302f68b06e081272a172233444442b57182232800f59690dfd76f79f21442ec808e14a195cbc1013848b81f3a1bda064de528f21a68b15da11f8e521180caf03d4a3d17bf2e625981fa7184eaf1aa234c1b4b8dd4428cc186b7c7434741ffc9c97768d5af46214f5685d6f08355124030b1e1e0ddeaa888c91d21d74eb48c2e05d463b940c182dee2e575212a966068d2efa767b1ee35f278a4454a3e10a4ab1b484acdfee7e84c565b432aa41e26a1c6931f3f9a66440df14cc87bea9169b019a5eb716ba832ed79794f4dbca74e878d5edc80614e22ec6ee9f10e16003e9f536a52289401a29dd4179ef146988aebe1d0037461bf2047123695cf3dba9057fbb4e688aa491d21d54cb5bdf2e2f63d02ed44a6b038de38f6814c9e760108031a44ec9261cd8b2490070782b0867b36500fdfa700a1c198cad9db24e83be2eed1a590f6f64df2f535b5a8b065d7ddf0c464a77d00c02800383a41b38008003c9c6510d1c462e1c38cc12070e1c388670b8c041248403070e1c3870e0488538401c383e0b5be120e9ffb8f6b7e4bf98fabe18832d10044dea1cdcb0dca07f7b7c9c4b1b9a2318ff9a5b84074d1fe3d717bf72d3a7cf2e7e6315213f568da19c1e14702ef7fdfbfd758c31adf9bff20cded9418f3f4a946c78d2bc089687f4c03e35cd520c6bd4a216f3d9595fb96998cf63b8f575ec2a5209dfb2c5f8336e9ced45b040e30e901d20aad6f8058d230c58683c6a82edd0c84a826814a22274310229f16264e110c2185551843e962d94e34f0c9b6349431863f4e101178d4340b08c91ec1205d3184537a16b6c21c76814d2d5a8f17b8852a48dc153af5f1edd6be3d2354f69149a179166fc1ee2615d3c75fbf5f79003e83592f1f53100289a1b4723b9b33112fd8091c6232d001879c4f0880993461597502969fcca1b1f25cad7531f96dfcd9fcb6d1f9b01184923708c3803af6bbeaa81d5344f1dcd8b1a546a57988a1a60ec8e4557c7a206a412f5bf43f9ef57db536c6a300a51a16bcd313a1dfc1a7780581d63588500c6d64cd7eff1058a51bc2301289cac0be31dd8dc20583ee85704a0e36a036715a6a3b6300c43737f65f939f60741d0dc9f19d2f082428822b54f36cd53bf3afb947bca387f20fdc03045c3944aa42a7124291d49caca492393d58ae9a9b36a4f4b6d694f993cb533eba2de8bb2265858542f8a77bbf284bb72bb62ab4c66154946f25566a39efae53d4db37bea390d0819d86bfb0c92aab5f7629c6bbd15e70fe7ef03c1304cd59a52557154d591acabd55859e46aacbaeeec8c958767a4d4a705fdf91929502d37eea9a50fd9a3beb6ae5ab6207bd4afd5ebdb1fb602a027d634b52eec737d70fe3018ba4a1c4925278bdcb52a5262913dea8b2e4de9ceb57567e75b0d75f0fd7ec15bb7bf49786bae424d2a893b75676787e6fcd6eb6ffbd65a4ac7382fe4686b8ea258516053d9a450d95880fb6a515f0d5b17c65aac3070ba9a1be71ff41e83525a6987ec017e980740cb4d14de9f9f9f9f1f5bc31e3c523c8e570c754ae513848342125ac0e8a2ad49e461120e938868d10b8ed828281b25c2f022fe8c40646b15c412d24324c96345f26805d520da6af9ec0cd9a1a14a73102d857a68b9b50b17d7850beba286d625244491868a5a37242272e1c286d20b170cf7b2a44919d8a0e0977151d1b535d5d2a1e396b6047ad182113496b6c280e15e96a6a954a4c391d200bf70b57f3cae37847ca824127d5cc4781131fceee1712344942c37202932e4dc3d36c9ef9eddd313b5a527ca16296f774f13aee709ae8749d7b3a4eb99f5d0de3a8feebe44b0040c91129e94c0058573e937cf4e083559b451c2cb09369c9b87f730fce6e9c99e480195440a5d1025e7ee79e1774fecadef1e590f1230094f193009d4dbcd9303673c4ee08ce7a9c6d354e3b1d56e6f9d07765f0a983d61a3218a0d280071baf09b27b6801a6ef012c596384f2c9c9b47f6487ef32c5d4127072485a8a873f3b4f09b87f6d6374f8d87890d1c3673deee9d1ecf0d2f0a84ede440980e84eddefaceecbe6815bd3762768829d1f2e464e1f70eed6d163e8091396913a6cdb9776a7685df3b4d4fb6182102862371e09c7b47f67be7f676efec3c7d5176927c51769404fdde59fa6c3b476c4870ba87db81e1626f5ddbee8bdeaa585182105e62d861cea9c26f7dcb45410342899a0c4d4bcead7129fcd6ba2854a0c989a2cb9228e7d628fcd6bbb7be354f472dd151964879ab9fe8dadbad3f9afe684cde3a4b775f3f6c40a3c3982968365491e13cf29bb5c31c2335784981290c9073b378467eb37a6f9b742803031d2ab636e7d6b03fe1b78ebdf5ad656fcfad917c4058653e202ca8d037cb89857bbb59b92fc66afa622cdb66ddde3a0b765f348ae830b30245051a175be437eb87132254a0b0840e923a509c9b6563bf595fae0481eaa14dae8821cecd9a3d91df2cda5bdfacdaf79bc514064e98396ff7aa975bb9c945ed56b99d6eb77bebabd97d512a3d2c99a19744cd4a123be4f78aca1036580c81824417c3b9573521bf574d396860e42801c30c6d4e38f7caf626fc5edddefa5ee1564f19ca2a4986b252b23ab242f276af969a7a4d2bd82af6d649db7d31608733b12880ccb9a18a0df29b54c24c11298c603972c512e726715fc26f32270117bab019028dd311379c9bd43d90dfe4eead6f92d7f39b8cca40c828198894b79b6cca31f2498c292f914b79899c6d92f6d647dd7dfd08c2095492208288a1a18513f67b1c22862070bcc8d00b33c3b9c73abfc71e8e224e58fa8108131049ce4dc2e8fc26636f7d9332fd9b4472662c7366841a9dc6a7b77bccedc6a6dd68dbdddefa08bbaf1f505e0033260a14386298c8e2f718fbb10465e50d12428c48a18a738fb239bfc7a51f3ed4e912b574820f6cd69c7b9c8db4b7bec7dac884a988703015718ee8468c7abbc5de4dccdd74b7dd5b1767f7b54193167628f4ac6841ce6ff1c65b4345902a9a9e9839b718e7b748d94811050c153244454939b708e7b7787beb5bc4894f780531095e41c9db2d2ee125f1c812124c53f5304d846d31f6d655b6fbfac194a50b1c2c4bac61c2d4fbadbabdd1dd40278816d2d060e4dc2a2c7eab726fbdc87aa0a104197030726ed515bf555ba5ba7054178e4af584e9adaa09c3544ab08ac92ed553c5defa56c95e3ce75621d9922ab305eaed4ee5dee2704fba54932e65d3ddde7a0a765f548c094ab2d4dca8018289d38adfa9d806275c4961a6a484364bce9d8afa9d5a4a8aa206384aaac88902e6dca92a7ea7686f7da76a292627709ccc79eb26e4bddd61af16e66abadaeead87b3fb1aa213c3921e9014f1018a8adf2195f3460a29e8b4b14264cdb9c3297e874d4d4a68b0a20d136f9e903977c8fb1ddedefa0e71e1d32d1226b9454225e19110c9db1d2ebd75b00793c5de3a68bb2f12d42821028e91314d3d9c6fac0c2c3cb1021d156610726e1027c56f70d664820c4cd0c09ca8393718c56f70f7d637c803a3d88051d88052c0274c53fc069bde3ae581331e6dd703636f7d83bf412461be32613ea8cfe9c9fcfde56cce1a55df9f94b75e7d7f57624b1fedadefaff6f6dc1f13143850e684e7ce6ea2dee65e53ce35e99a764ba0c87189d591218b9b73e7dabbf99d9bf2edadef8ccb4f76859cc4aea0e4edce47de66d9db9d97ec52cf2e65985d8afd8f2454b0f084993449b410e484e237bee15c096ca6d8414a0d52ccac3937d6b5f98d776f7d639eea378e3a83a39cc152cadfb869879fec30530f2ff5f00cd3d2d06921480c53c42173eecb63f3fbf63696f1fcc648a0dc3250a0de365da7a6a7b7b76b54ebedda6eb0fba26e8880e189203c175e40e1dcfdbe31299a48c2b694258a99d3b9ef9adff7e6440c4240c1030c416071ee3b7b35bf2f2d87ff7d99de26815393cc79ebdbba79ebf41ae9ececbe288e4e193a4c2811478a91f3092634402161838aca92c2b96d2dcd6fdbf496ca95284b256c8982cbb9adedd1fcb637dcd35bdf36f7f6b7850a814d42d92879bb54027b846791c4ea35aa0290924300d4557dd7285850b16288196020f3429ad389dff596abbb1752bf6bd4dbdaf4f6c9dbcaf4b4af330bd01c297a7fa7befeaeb233bf6bac0351921893822e8adc9cb3a703e1be7ee030c5943950b327604da77d7aeb0ab02f6df5adfaad009324c05401f224864a3523420d6d969cac507b623b6b133f01269ea0a110031c24be5426de7ad2f7d6432c7a4cd07b07f7d57b4a30abe8bd7345ef9dd28ade3b3cbd750f7aeb9d99de7a8cdeacdc57ff79d29bb5fbeaa51abd59b4af5e3ea137abe9abff58d17bd5fbea3f55f466c5be7a89d37b0546ef55eeab0f61d17b45fbea4353f45ec5befa0f1abdc9dd57ef99416ff2f6d58994d09ba47df51f357a93b1af4e3446ef71f7d5ca0b4e0f82eea0bb5a4436077dfd3853ce432aa54825705c41eff1f6d54b387a8fb4afde0383dea317bd45347a8bb7afcec2e92dd2bebad01bbd55baaf2e1485de2ade57077ad25b55fbea4038bd5536e8ad827d75d64c6f95ecababdae89dc27d75d54eef94eeab9732bd53b3af5eaaa077aaf6d553b1940b319b831eb100662102c483450fba2695c018f40e75663807dcc2820a0fca78d059a412e8c344efb0f6d57d6ed03ba4a37708fbea4259e81dcabe3aa9456f10f7d5c92c7a83baafae0a426f70f6d5554c7a83b5af2eaed1fbe37d75518dde20ecabb7b842b7b042ef0ff71589ffbeeff3d6a7c505da83351ef415a904d2313a7cca49522935924a5f08f5a19536501f865e645ff80cdd868734681e9893cf01e3ab8ba452b81aa2f717fbeae4137ae7dc5727d368a21ef4ce4d5ffdc88a3eaaa2775efaea3c60f4c6bbafcef3456f7cfbea2a2d7ae3a5afaeca529de806bd2feeab13d9a0f7d5ad29ca6e650beebfcf55a4d297e34361f6a0a74825302495321945ef5bfbeaa51067416fcbfbea3c4d30c642a4c863ec4536477e25b504f07bfcecf3198b901e8ecf1eeef019cb90349f1da43407fdcf3f52e9cba412e661d2ab995ed5a085a4d0426ef4aeb7bfd7359cbfee53e46a59d8cd71f4d931a994e96b0c82882a4c273e6dd2d7d97dede8f68eae46127aeff0c0be3a0f8cc7849b1cbcb3dbd19538e892890e79fa8d6e25d1ad25bdfd2b92ee7966b584d096842781ed152a7271d010ec17e3d1d9f81531268dc66768130ae5c6960d9a32316a9f1619240388a4765f9f3785a5b8aafdc0127281f6d72fcde6c050588f61587bd728fca4debd61efb66a48f2d2d778c616919e11e826438b3115640cd0e863a4c8d51a3d0c8e08ee8ddaa745e4452e1b19dca51ed1189671badd5e8c3e27e8608c4057f848f6c0639244c4061783841235a4310ed5c1ae918441341add4b58a3f6c39150920d2ebd7834b68450a791c891c6a40dac6f0c9e3a8e1645ba1ed2ea06d60ca237aedf211d5ee13502803dc90f83b0006536c70e6b7ffdd600308663bc7563048a0a6d367a222ddaa0aca6abc518e3169015fafbed0f16d1bbf6f2d2758ccd2cab2145b24311c067767c667304124e7a8d2c28b33230edd8f4c6f4be3e1466f4be321b2243cc60414e6a8048e2a4068824f705ee6a4f181f185c8ccf11cfa968dd80fed6f4be02204486a573070b5985c498ecced0f4703512c5f4c6ac51dca223108e1e9a43111049089fbae0503b531e0195871e9a2384aef21fa703463a148130f41f2710154dcfb1a4672df7f8d971e923e9ef58d253144b4a2a8124ecbcfbea62391481d14927736d34872220fae8a339c29094af9e5ae2820576d6154aa08244ef14fdc7f9e3e4e0e23204569d3a74fe737a8a0db0518feb8fc0463df661a31e7ba5a7aaa46758d2335552abc11e4b960e3c2350962129b494b089dee1cfe828008d4036b308a02080aa0c552d3117c89c366644181c6a969a9b1c8cb0600511a748afc5957ad1818a214e9168149b8ad03b7c31024d19e2f90edd119637f6034d77bf2c55e1dda62635182e0784ed0a316549ec14cb9db2be189606c0424aed14ed480aa13b453b8625c50531c6cc7982971f9a4e3167da631ab2748ae63844852b869d203b25844ce87d8d5065637a00738e40420f95a7935a0d48a85fc49cd46a10123975c96223c218a400c6768a4623bdaf211ef68ff0e18aa6d3be91428526202cda2442fb106577dafbd2758372045b2ba20a27b093041599a59387210f689aaf4ed37cad37c854819de28d71e88dfe7e7c96b50bc2728adaf1f2830f0d5da2585f76219820e3971e7abae46a9a8b1cd6961e769c8410bf50e971b3f2924577e161f525c6f2922488cb108d1b6f58acbe3cb16e50e296362b2e2f084dd981b2020385b8e50bcf1734998b6d87cbaacb099f53971d3035f0382d69215b75d98d5e84f88051417f8101c809aab5058990130bac30415cdaec7c81a3ea125ad3cb81af7eb38bb6d27a5760aee0c983a2f9eb99e41180bf2ed28c43bdba669ea9701045149a9e8414a9562044f108bdf7de7bef0defbdf7de7bef2582085dfd5eaf4257bfd6f1596d7661466f461131a4c86872844ef58a6c7853a4820ed7d0c04267278a6a3a55c6a58226a7c450a3f11317127d9d1431db68929784985a931b580f5b80b052c3152f4d0891a1d0c5f5020d372474188529851a195934686686115c4c379aa7071a737498c30c253458030d1fc064114289b468b7a84ee58659547b8d6c493d2a5c0358f34a95b000d5d4d6b54557df3a7f2cda03edf0f08103f859020c3728a108536476e070f6e796520980f6d0e05b8e51893a7c888a38bea0e8e51e1b46924c0e1cee03d5697bd788680972a5817b38b2b0628d667ee7dcb5504760581a87de0940cedd8096d8e1318341ce4c8ed584a7474b92191854f888d4c1e20de8722525e9d081556f7a7c6edcf89d7360e9824fd0d3dc2befcf092d7eea20cd99c3f31756d6f003b4c6469a25d2641f1c805a567ee7dcd1d78291a3df3997e5c8aa88c174e8f86f28482ba886750a3af33be7728e22a988101a32e3ca99c969518a21223334726672aa1673885cccb02e21275cbcb03d19b68e75232f6014a5c83630aad34a0484aece81157deb48c2c0c83453cdfda9f011c9755a58e837e19a6c7b2e9cf4475b4ab334638071a7259c409ea718456460e070abb73d8aa4722a928185bfa89728071933d6681747e8eadbf666e031b4ae22345cf94d6bc8f672ae675d3c349791edd93af49575d787dbe4d6f0f6c2c053e1f38e089873aedfad9c6b7d4b6f5b39778d6cd04635cc04e5544251358e729d9ccbb99ccbb9bc047dd95e96d3aa4243116634d8f6aed739b29173ad6ce6adedbdedb562d0d5451b556cd43832721dd1389a21a328c6917954fad1118ca3a317472e8e8e8e8e848e888e86828ef0d1d1d1d151081e7df9e8e8daa3a36a61ab7c44d2a764cd42d7dfd97374470b1801da88211ddc2333ade8ead65a1bdebbd383ae4e7fa0b6946e6e3f5bb424a1ab5b3c54a500b8e7860110416d30b6a0a386150d301210d40c16ad48c573952fc4087f8c782d67307c72783124c40526bd1085aa2286aaf846a8451641a1109a165e1de921a1e0096d0edf39e2a24316cf9895ca0b49d444c4e41495b5d6526bade57102e2d50d652864056695305d2fab2583ae6ead593a3d3afa196fcd1d82a795688e387413b3e88d49237a8743734826bd7108a577f8d4453f9a29a5d5fa11a2094408ffba682b136d710bb75c2d3ce2d0881a59eb460069be62f0d6c4d6459ea0776887e4e80bd6a1037b6b12b110daf196f76d39c49383c65e7f53dc3ba06e60bdfa036a55a26eeac4d76a447dd39d11bd513dbc2fd03ca246d52b35da38be6ea0bf52f9ead4dc2f5c14a93a4f0cbac66c8e15c0d0a24d803f9711b0afbab30eb0392ccc0df6ed83cd3dfea6b8d27e28669c6fb635e79c3375adf68f2fed83453cbcb475c1a754c05c516d210e5b5823e99e67f6558d91305ca238a9d725b4ddfd0f2742dc4459610d9b2a68e7e6e181dd170da324491237e470e44c9cd3aef9ea3c4ae80efc5504d8653607e641f29f57e0afdbd262d387ebaf639327665d3c301e13acab3a0f1abd79603b697676360701bec2412a0307090ac909e9e92d528e0786d4c40343b2f120ddde3a12ecbe7e2cc161f644991f900863c2a9e637524c0a254458d1c60a912cce8df4c46f243a728ea083c5942974d29c1b29cd6f24da5bdf483524a69d2d36e0ec6cb13187ce6f1b3ddc3572838bdad1d9c8e9de6a1bbbb76e63765f74ce2e0c94245084810187e6b70d1869a278a1810e1514aa9cdb8613bf6dd8a658d9c29b61f6f4c3b96d9cf96de3f6d6b70d9c8da71d273692ec38b1a1c4c6111b48deda58aaf56a366036626ffdc8765ff40b134118e192c390296abadf4745cc44d1030f7472330c39f79199df47b9a3dd5bdf47bc2338d40547cadba3a61dd8d11318d38eec684776b4233baaa1bb2f13d0e808e1b530c49a5b13bf6b8c2fcc00c68a314b4841e2dc3598f85d238a85999122c61421c50ce73e82fa7d147bebfb487684e44c8d32676a40d5707a7a5b23a77735a4e81a57de7a0dd87dd12c58388da1c1e996050de712bf6bc46a2cb978028d4c0b9018626fce5d4389df35686f7dd7a8d560a20287ca1c375154fc36eadd8c7237dd6d6744336a32ba0df96d84337a5a629464899112a32346482aefb7d112ad47338219c56eb9ed72456920ae281a884b8aeb898be9adab49c75c4b3ae69a69170ddd7d39004b18a614a0e4c44c29f39bc68f9a383b584953468b0be7a691fb4dc3e989ce9a222534fda0e6dc2e32bf5db1b7be5d32171256181a65586168406df94d23c7cad170ca3db16834b168d858346e6f9d06ecbe7cd08058b3242a4e94363689df34b2389145883a426e60cae1dc34646fc7fca6b1748b13850c11606290726e1ab3a7df34686f7ed3a8d160622d81c35a32e7f67b468f4573c3a24535cdc835e99a766f7dc6ecbe289913b2a8f1214b112b6c10f37b0603b0344161892db22154ce3d0389df334ed0c298326ed4f482c439f78c30bf67dcdefa9e819bf134c58c245328793b63a937e3c8aa87841593c18acd60cd88bd7519b6fbfaa00826624d3f2831c49913f75bc62d04298c78018c0f33c8969c5b0698df32ac44014514268ca10226e6dc32745f7ecbd8bdf52d8327238a8a8c2854a4bc95d1b4bac97872635ae564ac723256391945bafba24d541182841a26aca0e2c5cbefa21f4228b1c29423d2e0c005ceb98b9c7e177d404e99244090342167c9b96574f92d23f6d6b70c990c244b8aca2c29822a727a7a5bb42a5a15ad8a6e6fbd08765f3f5ab0a9d01405c6cc0e339c5c7e17c58a96a080e3846d0926253c9dbb68cbef22da5bdf45b522a61510382b2073dc44bd8dd15bc562ac623156b1183166f765e386266e784e20c9a277fb1da3056b604bb04003658477ee185a7ec768518598d8102266be389d3b4696df316e6f7dc7c0c5783a1323c999184a621c89818400bf632ced7abb18b018b15b6ef7d6b7c963fd36a3a89851a89852cc2726d35bb3e9662eddccd9cda4bdf512051e9860608384ced3142cbf4bea26892f724e80b3821929ce5d5ef95db6612288963558848039b769e5b7197bebdb949948969465969450a553f9f4b6246925492b495a59ae612347c604ca1a25557e9746cc1871836c061b9523e72ea9fc2e11a0029958094f946401e5dca5ed77497bebbbac954c2410382490396ea276fcf61e19f31c19d391b1dd5bf7d97d1d194182c4961d96b8c266ca6fa735dddefa769c3f9df124675c891f71246f7d69d7db396c177beb306cf7c57302152f08e90191c409e711bf61dc7230766f7dc3e0c188a202230a15296f61c0a8e9f80d638431c21861d0defa0bdd7d91b82298c4a0039d23ce9c46fc7eb1dbc109549c393b1b9ecefd42caef1730136868a20a981c8c08736e1845fc86117beb1b860cc6f8627cf1e2c5ebf78bf1c5f8627c718b2dbda0bdf5fda2f682690402670432c74dd45b17bd31e62237c65ce8c6d8eeadbb98ddd78f174a68c345052774d0183989f8ed82d6646ba24c992b900013756e17517ebbb8bdf5ed0237fe76f174c64592332e94b838e202c9dbed6249dc11893b17e2ce0591edbe7e144104962b4d6e548882a1e937d19a3a4880f1720314299c9b6888df445ee2388185c90e585819726e22217e13eddefa26e2114551218a4285480ad113a6b79ba8e946b474239a11d1defa90eebea89c18d03c89d196c4b04210bf8776bdb7b1b7be8964e26f22244b86ca2c19821a727a7abb8772e25093386413876e6f7d08765f0b10e2c29c3943dcc8c0c4c9f47b2836e4458b1055a08c00d9c274eea11910bf8768b9df43b52126b188101cb188d01c2137516f7d0bf544991094284b436b12babdf52d847b7b6ea1a7324249ca2879bb8596744247744248783d9e104c28f6d6836cf775c30a1caa843942892a2cfcf03b4886344070676ab8274c387710ce42f91d94fb12e68dd318d90d40e89c3b4817b47beb3b88f7f33b284ae524288aca8994b73ba8a916f4a416c4640b5ab205cd6cb4b7ded2ddd78f13c8e066f0c1851ae2c870d67eb7762c30224d19384f309460e6dc2ddefbf0bbd53b41899814363b30e9e1dc413dfc0eda414148e0b4cac0817adbcac15a4eb02795aca592b554b2560b765f2e6c479c18e2c80b39c4e1e1770b85a7a72f74c6186172c3b95b4f7eb7ca20c14687355bd238d970eed66c87df2dda0ebf5bb516d316385be6bcdd40291c500a0794d201a57440291d10d0ecbe563a166e4803c419294374f80d74013863a29c085143c588730339f90dd4642a4923a60d0a53a244393710ed37d006227f03a59200a59200c5f80d949a01a56640a9da4faa0694aa01fdc4b9116152c2071e144a9afcfef9418413283518b1f321c7c2b97f72f8fdc3a5cd169c962894f8103bf70f0ebf7f766f7dfff07ea252407ea2a480fc48f979f2c3e4bf7f9adec67e7e5ae8ee0bac193133d2c20c575c61f2bb05d01b1d7ac025892d0173ee1637fc6e41e11889610cae8c131e9c9cfbc786df3f31d90f92147eff2cfd2829d3a24c19a8b7bb454ee7a47b7aeb2d6cbc162d60f7f581182c68a09062f643104b7eb70061e643939cd8131dd4b95bcc7eb710df5c9133c37342b33b778b1a7eb7a0d598defa6ed1d4424ae8044ee864cedbedd3abb9a945d97c72369d6df7d67d66f78580a5248ac87d09724b72d2f0db8706d4440dae8b921e828039b78f9de1b78f1ada9a1ade68993224766e1f25bf7d6e6f7dfbe0f26f9f27383e49e02879bb7d964298cf9110e6832494f542990f2cf489bdf51edb7d6920080f75a61421e688955386df3d3711d0c014a11bb393c23b778f0df9fbbe9b8170511ccab93c1264954745e5d1aff294a86f3ebb85e5202cccc2705879d886156261e55d1e175ae66c33ce21d09c5339670fb3836176fa65b2836c8e38576b5fa83630abc456f9a07f39d16cb54a0e94e1a84b18417847d4d29684145caefecc015897104db4b84eb601bc92e8952d1ce8a44c8ea2b9c3a4a4a42bf50a112b67ae88155f81c7948736beb8f428da18a188ba321e01db00b221aa8711d8c03dd45a6d78f3f77d2008e6325f2ef385a3be813ba87a984832ceb88918e23187f9cbf793128efa421175350ce98dda74243d16559f06f718e2ceb0ccad6365ee24d2dcaedffa4753547df8c3fe79ca3f73ffa8fde7b8c4d807c57d0549a54ac9109442e751490f0cf038659a38021570c0d00d384b71a31a2092e0c02362fd8aad6313471c6dfd0e79701d3b364580efadb4d66a9d419cc55aa17d5ab5c6c2bb3517a746a9f0cb2108fe65f003c19cbf9c13e9069ada2cce18e38cb1cd6e3f107411b4a0052d686db6260de1e60cfad6299f28368bf55bff67ba28d275f1075d7dbb5c14873e389238a9f1b155016161e8db35923ba26f1b9f3db5526540660457a509ab1699f2ea9683eb6376b134a2aeec205c2408a48c28e09ff295ca0c29524ea9805562a5d07eafbf1e8e3a839edc1727700630247ceb6789a36795af4ab2a4174dfe11da0b470cf1cdf9fbbeefbbb905d5165c8414f4cbf7eb92290e9dbeefcbdff77d437c50a852da5d5cbe9c3535ca385586ba043aeb6caf945ac32ee2228cb355f9a6571e0fe071068f6d68df44dba755f4784cf9c68f77ecfbd8a957ba4106ea8d4b6f3b0e3200faf5d67dd5d835baae59a0afcc6d7f53a8903477a847736b51652a85dfd7183926e68112043cbeff4c1028d275728c06a9eea6e3adeba83d8df16355bf2e2d6428c0fe228ec6aeb2a96c695453923e9b2adcb8458553e154367ac6ca1095ad85ac8591f7428ebe4ebf5a98cf07a2cfe667a348d78f769fedb3511c7eb53ac3d1c2aff63c2730d55560bbf00a1e873e5c8fedab855d585a36b76c6ed93c80265d7debc83af2f761d7e31f34b62f1f63976cc2103f33d5207b4a058f2bd5207f372c4da854831c6617e0a7df97c10f0473fef285c23b5bc489b815b4a0052d903d0a605f45d867b7e5f691a98c2255a7e407df49ab196233ef9e76eee9fef39d7bdf099a62ee067d5dccb4da1505cbefac5929f7616cfac8bbcfb5174af8fce5dde31d5bf622e650848cb1a8325359e8a450ff9794730af20f792082210ff216819b2336f5e3aca835212040b400f96d6776765dcfce5812e72ab714a67d98e6372c4d507fe3dbecaf03a103ab5381fc578b8187f392c738aff0d87311fad237c7e88ecfb1a9a3064518863060c47e671bf89fa9ba51a4eb260bb6bfaeda523b82ca11355e1c2c8645fc67b6722ad43b3db674e8484a72b9dc5b58c23195c2f973615c77764138eadb4a49d314f8f6d8d46134222ddaa32d67247929cfec95aff98a75657bfbec35e36c861887f68abdd957e8d86c599c1361999f58a36b665a4de34cb339e895bb411e2de70c4207cee441df204fb5645dd78f7e502de1dfaaa5bf9e77a6fdb5b83be4c812b6b8d1f695107eb35ab15b8c31c6a6750eec8ddd3004c17d818e4d5bbb312f76e9bfa5da07f7044d0cbb46d7cb13ee12e55d1ff58dd92f3e9410ded837030227117df6f95c44777c9e3d3b766129a92b7bce395b2f3f6310fccbe00782397f1913d1ed1699eed8e1468de641df2d56605df9b3390245ba5ea308da3341fe4d7b749772d304ca4ec7e355ecb5c455872dc6d8baeb71cb5f6292141eb0461c5ca30b9a9f09c213aacba553172eca40e5e0aacc94199a1884af03fff2f7619cf4df119faad602de8b2fde68ecb5c7b6f491657607ca63c735ba233b363766a331fe7ceffc9df178f1d94ce128d275a22174750ce5779efdf5ec23cb1eaf091266d9ab6a374bb845b04e94ba3e3c0216c1d64981a5f2e99aadd72a02fecf6db5d47ee60bf49cf34de75c648d6ecbbab0e94e34a9add0396b9fd687ab0838e3c74f8b2e1e43b658befd957dab3e670f537447cad1e8d204d1839440bbc82a5bac5c7c968101b2cce4e7162278acfff36ff5d953650ac057fd7cde8fbd03f03f073bd09f724c7af0fd678640ebbccacc1429b7e073a576159a982265af1fd520e311b08fa4163a8cd161044937b43905eb389738b0d016bb2884238eb66eed35f1ad7549a44557fc1c971ffef0f8f533754b5b2ad211934aad16766c6eddeaa27dfcc39efd73b0c48185c61e9aa08be0984b211c713476faa0635209bc98ec009b2625c32b74c5a452e8daa7f559ebca5272f85f0b044b7a45950a3f103c7f5e6b0a72d21310d4f1d9afefd66771e5d9dc227c0ffa5726891a65274b7d55a9b00463e9d428bb58e6126410fccbe05745f83c60d5a953274cc1175aac8348a7fce739955539e79c43cf1904415095ca39e79c73c61cfce79f873ff68fc75ffe722633a59202d6a1b97d8c5da8eb73fa51a32ffc6ffccf2be9011da3c3181df0f898f75dec5f893107f6c326b6185b6c31f679eb19e3f2f35a8670ebd88ff2c250536cee1097ba8dc6bec311ef60d695cd6a82755d772bba7af863fe3ed387253d48b1c064cb633cd481c5e60828ef312f339193eef6ff9c86d7f53973d139059aae07b1575795941a81e1832b78ec2178c19cbf2f7c4a9a23703d3693941065dfad2e0ae03f0c8c76b98348df3b3bf59f7fdb07a5f29f0b26f4e7f7de1fbf2b7387a4b9f568ee96686e37b7cbc74173277d0bc7e6d6e180fbfa315be8d0e19394d4e372f1b8efb45adafc4c4ae541cf531efbd78094a5140934b399b307a08931089a3e28150f58ba2940863ab0feb9f5cf1c01a5f2d8ba72958df62342a41be82f93c083758afd7a756c7e258e38ba36207c91eed0644600fd6a8a703da01e8870df8650eb5435b5c2aa09b49af5d67a6bbd9ef197bffce52fe79acbecb80ce1f220bf4591acff1061b34d568acd513d9664fd9a195897fd51a2b76db24db609f734c68f5c4123a18729b720cb39b0ada2773d007827f550dfd78e537705505aa6a851f550f3943c0c65c7391b4f49afa72e87acaf1c9fa972c89a3caedb0fcf68ff1578bf75d2575b6ed776bde8db3f95dae1efa4cc9e925e23bb53ea5269f44af2105d15ba2d4155e9c3f561ca2969ef7710e4a486e943af3e5c1e0439a901e2c3906566608daa7360c367816652f8e12e852bdeda30a2f57b485f1acce4d08c3842e64a94b3baa6af1f26fca06b52460c902f50ceeaab5207c98113da7f87e2d32c2c54f1d60c47fb75112dec494091aedb26fa3a7dba6536e7f197e0cd0a284f049bc3b6f9bba586347fbdc8beecc9e6379dd30109e88e9c1f013720721ee85bb6547d2d43a821d41445baee29e87b6dd75602bf610883895600f6032000f682585d85d66d29d11c210707a03ba8539775eca1cdd1c3c1012892f51e6c2a5197f5035817350d409160d0b00de0dbc7f806a03b546f9d529c4ca43baceeb18b14bb0d4abdbab12f0eae11f6568dc2be89fe8bbded8db96b845d6c6197bbd839b837f4541942dd3f7cd0de833ec6071d7f35e957e2fba261a875cb71d2bb4c5fb7d8b1d7ddc53bab7b23561fa1f7d85f50a1775da2d6a4eee3c64a605dd5ec556b12b568ad15af765829a554ac1b6f9fc73884dbc384b62e1271e37cdfd72b92454b131504bf1c72dff7adf9c030950ac12f4b98efd3526b0ddff71135c1aa350917927cdf8704effb3e324c3e304ca542f083e203c3542a043f166a25a244870f0c43f013aab3458836587cdf6726562b1886e0b7c687effbb27c60984a85e017e603c3542a04bf301f18a65221f86d615204112178f5fbaa9cefcbe1fba8f8be197090f45f4623099c0c3174d0a9de992cb7a22f317ec0b9802b62ad50d91ca33bb253af6fa9e3268a5395b5a6a0bcf5daef0c73f1d54cd58ce4d252a47cabf88d1483210e534536c3b003324d5157f60cbb2fd2014228b4f8ec3bc7280e971f75e514fcb5d495f1d782bf5ec11aa6544ba52c9661d728c3322cc360e667af1bf8eb15c466a5481954855fb62b52097b8aec41d1fce798e41180ff5ca4f88a2a954a65f52abb0a16da1188488b76ae5568eb0feca9afd10e0e3647a52eec34bb8082b55e8cc35af4b445b4129fba8f057d83b1de483975f12b317551d7488d2abd11ba0d72f1966efb7bac3853574d6d153caed45541173cf69b0a2bc679749529fad2d788eed001a2b1a834aad7b1a21e540ccdd008182008000317002028180c8984b2300dc3b0881f14801072924e684c1dcae38110e3288a52c610640821001030440046888856001c866bdbc7ae60b7ab0e37ded08ce85554b9794227fc0aad105592e2d0ac20ad5588bd7e997a787d0ac6572162467f16454b7c70b3860fabee2e2544809d7e74e4e2878e2ead90481402b429cf5152a3757b8630e0f2f9d08724fec7c2b15c69b26bce93e87f2ef1c76ed24f58d8e6f000ce010a0262fc80e8b2eaf831d98a51e69f8c75dfa69b49f8f49429e32eb8b939fadd49bf973222c185542a788113e55a072c1801631e495f323a5a27416f8d9d5103d82ec980347d624a7d574b5f367052df2513e36307b4d6d397649c2c7f29836cff9e0088bcf07675f3e50b6da426b6c409d1e411c7d622af3dfeca44c528ceb15fe91929e3b2b0ec3c5768a6276a0a1b018ac64a11d11ed0022820560e6e4642f0ea959e42407db7519ac540c6d8cb594f7dea4bd338c24daf9ff20bf71e0ef67b3bf9f4dff82f3dd96954d315ad504c13f02d1a61132f4a0a8d11abc8a02b9a27d89e9564ddc4434429fee17d20442e54366b6430a64f25cec8b3b4f59f4b8e0b3fc5d03e120f352b6e82f0b341f48c3f39c6e6b6f5a29aa494da628fc124ad689a7c3d9d5ecd414ee656f680ff0ba5710c7cc3247b46cbe3757119f0e6c9228c4c927349fe4503363eb5a75fffa2035389f1d07950f741ba072e0a0240b1bf955d06ff417dc149cf1c387b89ee8847a74219a6492c0762012a458efe61b226eef96ab6b9a370d292b0897cd8c1d16cdc386d1f51d17215d33866e5fd63a7410eb6b448389e7f44dd152c486bb6b144a9c92afc409f23f443a3a9abff2b73ce26839f430594f9e63b0fb78f5b7d2222b88519ffe3a5d9d760e042100b425e532cb2275c54c65bf490e967d40339a5bb7458e43f16fb18fa640dcb83a3a27e1f21cdfb14d8a5317ef3a9db7ea31cdeec1a7efc6a19972df441340e43df72613515f4e5f34f91462df6b9514d567cf11f70531e89c288d43628cf30951feee2876bf97cc7072f3dc4b9683cc9057d4c7887dc300484298805ab1557e9b94672dc66dcc5167306689db4563f76b949e6cc07e8dbfb8aea7b6d2bd495a8d22ba5d70cebf2f80a75f402ccfa9ed34c4ccf729876238a16bd08762521f5d93b58b9321444d1d5b9b3fb79828cce109d9b84bf492d8b0b854189e33a8f150c150c726d3ebe12c9ea51a2d2541fa0ac7a0d1285037cb872cbac4a105efe1c77626e054e9305db92bb60ca25049891ce9f29b1bf1c64d6d5e1084381b766ec40e51cb6541ef757007d8677bb3a104ce23b23804a29011fef2c9e0dbec2a388bd246ff97e4634711b9e2c164a699688d9b5dd6bd1efde45b67048057d1b47678dd322bf0c289bfe4551e7daac531d9a8bd369b36445755135a6c2224c275421805ad4378ec83dd036d0134a6c5e8fdd0f89e91a0416512f6d4051bdf2e0fbf95acc8e7fc67881ac2031e97df81eb80b22d157e0333dce27127d238117546564313114b1976c3071f0a6982b35796a08cbcf925754d6d3b3dc25363678a8b1652e1d8e8d2c98378f1981c055219252e7b6c0ff3641878207dd0c73cb5315b96ed50713acc99e5a4956d073b0f2e6b4483bc76e5e02e79032a2cdd48b9990c492448359a6ebe373751e0ac7a370b4717d281fd7f970ed9248fed32bc5824ec4013a019e58c29d08773374131ee99b914806f1e882abd4237cb040fc06a5e5127cecc13051db63bf7522505c1210ed1275f1efd71ccbc12dad1f130078c12f2741bf097d96a17c6b982f552970e3d704c409cdc16bf4e35da688d36326288c6db8ba964237a3c7137b7894d96f3ad0cfac58f967d6c67c5d5ad01ebd502b29e3589f951833c4de2ba1758339cbbb12ed83c45893757cf5fb1a9345a59953056153c4abe7d2bc0a5922762685c30862ca4835a05fba66ac69c2492b4d6b6c295b947078365efd33a1f7580f0278f6ad7f8a26b3f950614d1fbe709d61dabca739cfcd2b7cbc38d9bcf341f42085fa60d2d956bac890d85918645e358408b0104684fecf2c8413bd875edcc68819d5def50737fb197c3394071f205081a5bc772bd43ef64ee7e2e9f68bd93660c6eadde722d56b6f0f6361ec01e907ad2faccef819248d9585fa2e7a84c13fd37cd5be2845c56930c8b5dd133f8ea586af9b4417f4650b2bf71ff625a1736ccf25fc3629ba990f869f4f7d737560b3049167fa02a07f585bf7d7c9d5a643f48f7e495cea5a9904d3e16ebe0b8ccbd94a78a3aa8449fffabf9aba0448f1959960d7189ddfd53cfd2d746d7c5f8052bfd8b58499db3f624c729ae46d2d5eb67fb15ecd1adebfe078594bab03a3be20742adc79d213238de9599e00cbf894ac12ecc5ad6d02cb169a5aa5a331bfee56be8ecc407491d4cf7bfa5308e8e5db028cc179361c599f7a6d5b2e41af005727a596f0311d37a9f22329cf1e3847838d3083afee8f33f8e809ec93e5e74ef232d056493017161ef1e20d33ca7cd467daca757f83e3d9692a0e90aa1a7c84f97f51b705e016a98d13a882b09526acd0189f1e1175271b502b26de13f25b38f2fd9119073c30171c200909dc79c5de1eff14b2dee0d793c3d95603f77440981eb86fa2a15f73b7e43afa9f472b81740f6c0b75393ee12f7b074d76a3e23a0df338041c939d57bc58f78e64a1ea904cf8aad3533647301baf18f14a9461b1e36c97838a5231cb21eb15e7ff96e964e9f78ecd9d32018849dea4a9d291c6bf33994198e768a3a2db22124d74716d024669575113bd089303cb59668963b93c3732e08303b8f826b300fadb67cfd003376a2abb7a60bea9c9a1f3933bc0911f3700d71292687f2209aec86e633b502eeaf310b03fd907d4870f12f9c15254beabeaa609150b59ebb383c53f0274a110356c98570c0affda61f532e57c38180081c1faf6b1c1879b03cc74aa0166f82fb7a35fa38f1441eaeff6f0c1951cb4b6e6eba7a6b40a1040688a00f5329a6cce0780ad785b928e2738cecc15b94b6649189efe4abb3de85c1a2947e9ca4c085fc9870b4ae770044ca9b5f80bc95720102b9f3da2f90483ecf1e03993f0000b13ac992624c662ff8cb8553307df81abde0425279fccb256ce5e4f0d6ae0482270c2566ee505005c2688ef28f027650d79b323c2436fcf6bd72c0c810626bebfb74b997e59469f922a2638e13c8a4bf81e982b57381150d7191188d1fbb615a31e75196566fe702b4caa3626af6f9b9b65ee4d84f4f383cf0afaaeaa167556ea561c966107cadb895aeed32d374592991835f09d1c677498e912d04828352200d453970740e51d5807c3d50fb83ff18940556b6ceac5c236b4c9dd75a5c126fea93780e4421fd3b3a033d9bd42df109908687408e4c0f1a692991ec17ea21530eda250387f57628b843147ab5c32add2f727920620c9973897c1457840dd45361a2d8512d4b540fd4c212c4251fd5dac8e282a421729b921b7abd9c2ce083c120608b1b9303df2bc24f7b65ea1478a151142025e04469c21d9bcba7703147cea7cbcb8c1a98479163c3c0691d1098e92c9487fa73597f50d90ec3293b552f4103a10687c48eb7e016db57b5610c370f54f87b51d5d4e0a32bd79881a9381e911c9bc7d36028cb6b106df3d3fa1bbbdf33e45df40d30a48fd5af1fb43ec150941464d604121af9cb1ca33e2f237782823178faba6e33e97555bd634ee57a2b7633813c39de40d72841f84941321a69a6e9ec1aad244023ffc07fef5b9c80e07bd50b728d0121a7b51acbc06a8bd6979a4fd4c490078aa257d04ec1b43495551423e827d7d612143af00fb7782f3a2574def1d45654c12e45aa5dcfc117f82a9f42b653fe43da7ae6ed6663f0460c74257d59791915ba47febbe1aa776723eb2b3fce91799c96d56b2f532ab635a78dddc5445e4caf00b294e98d7cf4ae1f4361bd57f7521073bca695324448a23f4e9c7297f29c9f28d71380c441a83081367b7eeec206e38bc8f165f964f906bcbc9704b3923897d719bb7bd63cbcf32eda4e750dc645a6bb4a8b8f8e149b9d122a9ded8b017bc018e56d7b716572e450292faf831f7e74eac47061b0065a9c2af696ba79f47019723fe793f998d1217f891f1f806e31c492a8d34262e837dc4501731487c9d3724fc7f705b26ab184ddceac7ef3b6004d7e5ce61e73d583f8e7166b25cc00b3108989fd6284273e87b5eb2f31a1314e4e18648f695b011950ae7856998aaa757785e2b622afa89b0e6f52a34dfa4e8739ddc0e599fab1f5c95f8cf9975a02241c3001ca49e42054166dc6a27edec0010399fe03ff907ebff87c0fac06b5e5ca10cc274042f7afdf4a506478605047e9d5fdeea0fd1f3ea50d8d2583c6d1f4546c3b37db2c58701fe7072086056e3cb14c34e038772795075bc9e446033e61bd1113a80a2a3a2812f438a2e407c76f5ca1bddd709a7f49016ff1662c9998d384b80d67120a7cc1f817e7c4cf18723a1d4873a813287aa8578214d913337d4496a890dedee26f9d51dba9a0b7ba586e2c524af9a46c030e93f6766063e2d9c161c0a3d9f90ef85c58ba24e26a190a4bb5978ee460fcbcf28f758a9290a4cf26508a07b47d40de616907b3e378b6e5bfedfaade3334b0db6389859dca7eeec4eaf863654edcd9045a7e4400821d20575ea7991a5047948d6fdb4a2967fb6fccfb2c735d42c3cc3871b9068d78964abc826e85ab49b489bd5b4be5b4306a699e11e15c6a16da0a4a8e04fd484f92391c8728b9bcb7aa5038cd7c46b4d9e0d04e8e8f937a7d1b450f3e395489d19e060b9dcd041be86720b2339101f60757c707973ad5c4c82d8b8e280b426eae11cafdbb33e4d95a52f3ac3595400dc809b282410634e2064ab9b44f4b778e7b510bf7442428fa3fc0e7f266165e365047f82c0dc93bfa0dba0b640152b4a978e0232cc17056c01c41d4734243798e4ecd042a8a581e7884c0d0d610f7685fa2d36c0995ba2a36c16052aef7159192ed4609b698eeda6a9ef884c7243814a4cadd45b6c44bcfe30e3f625d45b3458654e1698fe224ff24ea4d99623e0bcb284a99079dc7af50b199bf0d408cde61301aebe2ec1a83c4b4d0420308d8a8d4b764733be94b882b4b4b3421461e4a713f1ff7bcb2d97dcb6d70825265d291f88cf420e8accec48cfe668ae3d9d1ff06df0a4a0effa31b6ddeab5237ebb1c644af89cc1c99d52c4b9802270d595e5cc114b73144afb50c9f78b7214120b1f047e6bb02c7489f83c3eac53ad3b9ab3e017df70959c2b2a984baa4911c05b6cd49e060c7905ed54571f9d1e9489e44c65fe97470286993a09129860963fc20b4f0b1400c1689842023180b0614dac1f4c146c12188a6632c6c5b18ace15d2e34275af37f03a25bc3741ad8a6830d737678416795567756c50b98c4a7034c17621144bf9c6104cafc55e5c131cc822f9168f9c2619845afc9c637f633d164c2a889207c4ca25a814a396a2a8faa0c39d95ec1de8b94a11bf10726a1b3ff68494a6788fdce565c36deee2a24404d8768bc82085149ce5743d855fbf24ac4b1f41bc03d80a6b723e1d3062742fa991784a8690cdf6f629b14522a6942ad43407cde5eefa66410644784c31ac837341fa364a585452afd4fe1786a978a740759c819dfd25bb9577c84f0490aa3779c63a558d6491e076a8792b0aaa913441944cf125269cd7614948d05d0b7a2e4ba925ada979036c3e7a5f9ad86545156c5fb28bb3e662fc8aeee1f7e742c1eb3092240d056ce4e0781d769752ee7b6687291561f2609ad3ded4b4a01ed27271a33c54e7180b01db5b5f8059cc9224a04d8ab23159211414f08321e813a5d08a19612f691c8d104155ecc34b8cfdd86d9030b0a16055c5999f8283e5964492b23cae2543580cc1c4d683d6dcc7dd94b137295795cbd81d826bde1815df2415fcdc2e28a902f4ecae2e9344d40219548100662d96091919a5e3714b0813b310325d23d3a3e765369cc7547e45b62ab74b60891562579b3182f0456926b84570ca3a6853476c50ff1ec425768789d321eb5cde98a0231e0ad548b19c9a8106c6a8a975fb2cc72cb700996fd638e234b146d2988474a4fda35200ad9cda8fc80332e00dc4afee44eaa3036b7c9cbb9700b6e9afad502209fcfe8c0f20a2155b53ecb4e2ef51f7aca9dec315222cf96d4fe9f271598619403a56654a4713d03243ecc07b34735a4bdbc941d23e89003e1b558d70dd447501fc229fec29ef6f9123b75ca227714555c60a9f1e5585263077d09cc441c797c2641b01ff111a2794084211144cec689058d370fec14f5538820123a66d73f427cdfae26f972c5c8f4c630ca3c7907df61fca5e49fac9639f4240551ca104ba7e0fa0a8373f460c9ac3584b416114d132f781050e9703d7540b59771528f1b2da345ffa048a143a5a52996c0531f3684ae47ce21fa795e18b8de9481282483445c7bdcaa4239e0e328fa960b58d56b106db3faf60f577a5b059c4b41fbe540bb79e3af44a782cbaa55b0753b20f2ddb21f18f2409ca1b23d4286656c5e4667b6f2d338ee5e7dd51dac7a1ae2e98110f95a50e5ec9ea31ee7ecaeee232d7e31f68f2a448697d555689058779f6624d5d74d9706ef0f7fcfb509c70364b09dfa7ec0a0606733b548d02b3bd087dea130eddb3d09e922cf7b7a4ab8c949dc8a2a19eb258d23bac932d38c689bf23cca32db1e0610ee8892c9fea8085e80e11f8cf9acd73fedc9543aab70f774c6b517611f8a998e5203a80ac4ad0c290206391e9ff31fa333ae36205e8fcae9e150062d02d4f5fe3cc31c925ede7fbf61bcf17f8fbda1618cfb5884fa90192ca517959ac4b2ea4f65efe7a10e1e186e9e01556cde5f65437d074492de799f2db26005307b3c383a4c037b837d1f515050389901f35adf9402d94b60f589d60ea1aace38b27fa6526cde4a92397534fe368b7d7dd72acea43594446aaf9089b2ea575b99071b68e9b227f7debb3b7acecd02bd186aa38fe4a2320c065fc7e4a026fa564a35e21fb2900300df8765ad4e56253b0a3b612f80f8a7641fe10a6ec14ea9289897c3697c4da92aceb4aa47d56a4941931e3a31c499cd62b2b2c135a0c24f126f3809608b4c991b836e3d10accc4cb1d91562c7796324d961fdad55373116d91c6cebce54beb3c088e1b971eb25e1505221c9c5a5c0952f45115fb8842eca3f8d6404f9713dd6a869a4d745b2a47e711e14b0a2a9184ce6fb983fd5b823134afd2d070a202554ff58135a6960aa3f777207d362c84bf28882d3456982a26ff26dcf39547860c2ecb755ee602945dd9b6e49fd1c00aeb5e0763a36407b887e00e22392ca90e71f494e6b3f4c5c86b435af2561bc0a1140a849add64412749bb1f9e98ea8c991fe07639f1cf3d9234f30a45600782d8e376bf67e6ff12df585f50c86d1f064b0002b54f8fe4560c8141588b5b1b40b501f80977ed3299f576bc63ae220b2e7336596d4c2ad0b86e625d4aaae7c05f4a10a261ca14d095150d7986090899f4dda86f08aa0f130a510dbbf83e6431617e22113858c842d52251092fd99dbb795d82c66976ae70930eefc147426d7c906c584a091e686f735b1282eefa586f79caaef46fa856dea13744abc8c0d1a1517c951d707a9247181bf68aa116da4025d5f898bfa730c1e7f6597361387405e47577424186b84258327781fdbf392c601579175ec79568bbaa555108065f3f209d039784e49c8eda9ca6d366b4822032594fcd0678fc7f6dca4e3f167b693937949756a2e34373e1071b6ffb68d3d4511dc156b26ddb629301de020792584d5b3d3ea18140b9da6926acfa9c404b35aab524e687d098353bc545ff457440e57ae36b2b8d34e5d968cfbc30c6a7cefb17c9d9e19a59123f85726bd224c97dd1bbc5ddabc4c7ff1a51cfaa21f358b2d109b2e313d34635dd6c7975e1daa311b1960e24415e62354f6cda9192d47f42ead09d3bba3d2a632f989e82238185af2b052f4735a938ad071c4b789f66c8d648b8d8a4ac356e0002a418c075947db718b7bf82bff340e35dd629cfd956943324bfee5bde9aa7ca456f1a8f845f8585b414f332745117f36b7725e481f8f0e39a519d0c41eedc18317d66007c75aafee8853544cb0bcb3957be5ff922c7128d1cf7b402b511c49259a2e966fb058789b9973fe3e71fad7ff39f487dac88820c4f83382ee2a36044360646d6ea0ea5c86a55220ad2e4bf63d2b80f148470f7f1ae87d3500f570634b6853368db047c9c1b37475d2b4f6923debc16efdd5c49765a644235de617e22429fc2ff05164caaac74da89f869f3e7372794450771791d7b971f355ad3edbd34c69e5abe9051e7e458939b9598256bde1a657924f1e908820684757ca07230e8a13ff8278de1938276aa540c98cc64905c5e30755a3dd8d23143676c1c7776818024bbfd89bda8b92596cc753252655f40a22ab653ae12510c634f71b1cc9c9f079d1f0a9a9324a2eb010839d1c9a1928277d2c509f5aef58dc7b5cfb22e9f3e1a0495b7512b7933f51b7635822c66a383197a85ca167309e685561e9022a6d970d7cd0b06b071b91235a35b86c04125cbd4d13c5a68ff6884e92f6eb960e684d3030eaa2a8402c83c0dc93ad74b500c608ad6d50903127d8da7658d68940b1caadb20e816e8ef86309b99f163afe14d60ef825af73b4365a6718ac37a25d9f1aac25e04484ed092bac97fb2975e88758f381a257a2f74a836fec5d3862c6a235ce280534b8b9dbe31cba436cb88569b7c668abc781be8bbd0c3d2fd2f9708fb560cfeba5876a340c023ae2ae9b6f9c0cb0453940f443aecf15441f40da049d1bc645b345c52455d7b670034d4ebeee93e5198eab053773db1843ab8d1b73cb3c6b1a50b8815e9771ef672e1e36219977310674b86eb1ecc7f718fabc7b6d8bdc333e1b0b34f5c3ddf84ae6ce5fb92b5b69b5cfd0d7bb01be79aafbf94c317533ee3e8f4e176e7a2b16ee69587a638af57141e9fadecc8421d392a9aec6838e7bd88ddd186a651ca875b19fa36bbd3194fa6eff8a87f3f010a38bf680676e92c6dd7d96069a1b380cb9ef8a730ba39e5ef78cbeef6d8cfa3255b7d0088fa3a186fb4c99b022a44f0e2ee4852c1a5ad82bb89ad4b7ae6a593752310dcdd2889ce05a2c37a9097648a11b8727bc48a6a3ce7d00902a9eae7c28bd3c48ea1fb1dc789a9e09ac6758e58e13dc0f24094a1183bdc95b3104ea6c94b3a43bfafd9780c6341d2ca580590658ebfcaf35384406d7df2aa4be601a66e35b4c74596a641ac490fd3d05b5174f764253895fff84787f64de467bbac9e8f739958ab23c9cd67995e62c04252af2269200a56a6cba25d7a44f77b04f4ca9301230687d65a140622287cdf2604613308a55616ad2e43348eeee6205a7f3b186eaf892916c826a7c0873294075baef9b600759854fad794ff7e04957e373338a32cac4ece4566dfd6562aebc9cf5b782bb27e4903f37b1577fbe3c4e17d17153f986cb9f29e520d110a6343d770d11b9c03e3e2c69a9a8691e65ab8895b2faf12e84da04369765954e6b0ad67e58fdd357395fcd1c3b60bcf0e7f0ddf00fbb5b1952718bac37f9bdb02a20e094487319614b6df000a6a9d43290fb9888901a86c8a6ec74653bf0dff9e6b4287115f10f43bb109bf476257f742f556580a88e690dc9858d4fd1356a356c9eaf81f27c5770bbdcf923b0f083138a6f9b7b9425caffa9224c02953dd9a22b281bfb03202427db90b9f1edc58d9cfd4dcfc7803ec81da800dc6011789ddb013feecdb19058c291055a8570cc27d70665180945f348584ec83dd88b135803c3a94c793e6b97fc5088e90544210ab414120f8fd7f7580a98610f9de7369a9b8827969e0315b47e18e4c74b50e9b89e60ceef6b903e8045b4930397be8022fed4ee8e0754ad3061b99f611226a8720ecb334c2dc97a2aa200baaaf9b32042264225e9372b65ba9c7e14155899b325c4168313b9c915003622ec0a75506c8ce2f3df09fe1050c1e8c985179afc9964b02173b3193a2160287f9138772b7ddab8b28022832bdb10b7dc5b70bb22eeef34894b0be0be51787afa9836fd46c9b0ad1b0667959c574d1100e591d0b760816d58c841d5fdc0eaf87974e3b96dcc13ecbfaf2770ad19c86a5bc2e05ab1e07dd9c14b49c04b49602edb7200a315f02ac0659924bf690540f29ad201f735045a40b41a49a1c95663e96d4ba43a26cd39f0774b6cb348c05f44f1e8109b9a6c899dd16d553293cc9a0c30852fda1dfae0b5823538748d15552dd90664e8e4cf2855b6b5ab02b18ca18152ec5799910e5c3abe0230b8b62a61a6e80cb5e78cb253572b23e782b9682260c9801e2628865ae5dd88b8c3194d68079e4d814f1d02e5dca527658d88dbb42bd87b6c2220718067a78d115472f7cea0cdcc216e836543b198c69afd261f47219eab63af4d9e21c74a30158354cb36cb8f78e0564a39a682cbe705283920402c0013dbbcac03fff6879ac96e22c176d9c2ecff51af1dfd33338922e967c561a6e8625252fc402345a400c94e0a2fc5683341cdeb2eab1f54f8ad7f0e130bc335bd17ab09b077e6ddd6acf026b0f2a58b2bae9d9f887551511b871ecf3d8eb07b55bae2c2fcd43052737a9d0895f18923cc74c4f484c8e8ed0322665357f6f37f8b800432964b4f1d3cb595829096daa7ff334eb2b059f3a88aac6d89b7b246619ab54836871de0f1eb4ccbb70a5adfcdab87d1f4380cbc760017609dfc7fd6266e62b5645a8d0b1963412714dbbdd7103d47ca336efc0f437b27654d1a0d4f071b809f37cbc0913d3caa54e1ceb001fa700f6c4920101be9b3f3b150a53f34e5c10b2cfc16ed57065fd7aa8fa83a0e532088b432753e1af622232c8edb637f5102c81a7a5a31c12e9cb7da06efd3f744f06ddae90e8b1b050c8d1c197434e2314e066d13f07196b80ce74aacd9f40e45edb5182c9c1aaf5cce05bdab407ba558f51fd27ffc05c4b8002826568a57a57c8aa6a6c71c85bcfcf371feca0ec5720d47447f2c43c2bc165b226723c8dcfbf25b5cb7a6fcbc0a91445dc24dcc62067cde258f7bc7cb39822738fcef61bb448aae86aa2c48f28fc61b566eb6c8a2566ac02c0bb86b7d20047c19c489dbfc5d1f732bb9fc310134f74cfc890fe83972514db1f883daf4d6a66764f21d8fa5c3f2dd8df7dd8694bb94702d34baeefbd310a0f7e46097853702d480cad4e4b359e5f3b02f55a994edbe67c16d69c1aba10527f2c1f2b856bebd09e9db603db5c06aad2425a12653727dda8dd89bcd0e409b7a955f802aba752ca392c430c408ee9cec5efcbebda85487b240b6c36486b3dcf4ce0a7f6d33880532ee79d9084eb6fbe1ca5fa5799e1713698ed06ecb5ee6020c9468abea5a33596c6d0c8a94070cbd2aa8fedc900dc7f42b95a2335291b574db891b8af8bc5e8a87e330ea1b8f61d4d33f418a6b054cb81057bfb4b803da42e801f5092fcab4dd048d59bf0820a5a001ad223f6452054d529fdda0031f8568dfd0c3c3560c896d161c94520e548669ce38f180c91dc2cf801619bf033b9c138c7a7063c83934f19389fd99eafc42ace807628a4b1328d03c44e3e5126a445b6a0bc514911305101b5e3aa0223e1a2d7b0ff122fe885d644e1240365866336245fe1357f477228ac94902070245c0495048a07936d8cb4c3314251023f530995abe61d2deb390442f1bbf07b72d80cc68b044408de8d460f97fe2b028ed26a0e90b86395a462272c45bc9ab2ed262c7b3a09d8711e692d904c28585e468b146917f8917b9971815093627b0baea36462cb561dd6b34e960f99198c6dd2458de4de2d149b03af76e564b32bbed15c5e79f8a4effeaed649a5dcc07bbcc55eb0971b31b30698e92ff56f39f4b69d971fd0a9f6ebe1c2a73362c7a7f190587e14e7dd4dab9db3e71171286bae9f910b3747fb0bf6645bd54a9cf037beeaaf6ce3c330d4cadd12a486b864398c2ac4c41a6bc8511bdc7c846b7587dcf892ce3820d761e0c49efac231e17888e58bed96aa3564fb165ef3180b6a07a1b79d9a7942ed053839f0f94d1a8519bbc81710600f0c30211c3b9200420705c6f9cd5b1e6db9c99a80f1ca0252b8fa073be28d9700c53989aabda98268c53665950e873d09a31a8505f5259520be5b0e6f14165b31c14fd4693f264e74c936199653297d8b60578a49f0d52f25370252c70693a5e9831d50e1c60c1fa3273271d104551548bf9b8978b04c677351ad33e21f54f76a96b90518426a40b0cf9d30780a74316ebea3c5e2b1638e54d9bc74354f99d20b001a8224ade5749c1268804d9962429d02ba8e60ac311c8aad1ec7f46f7fbeb2e6a2334b8bc83861e5c5403e63cd8ab8dfeb31e4cd8e574232c4c49bc02024d07f941aee517adda15a2ae92eff456c644e84b77c4780bf4978f28db8386adfd8cd802295ecd417bde2281f7d28f7931dd0a36ab119eecb1ec2d1d6d99e6fbab3c182f6e491c37bbff911645c427d49fa7871e99b59e66e10c80b61891c88e981c3d36913238aa931f93107b7f1dea8608e346f1a46ced3afad44f149e4a942b4caa52267a2e941b28c35500158089f34047f4d5c60c53e5e89048bd1dffb0e2188690ab4a8095cc61ab0c778210f55b7512fee6b86723a0c351d65af44ba60f5415de37b45a2f4a02ec55d3116df18b2747cafe42bdf1b5bf7039b226eeea6bd899073ebe95bbce86bb63653b6c9987f73c1e86661000b7bfd56f3f0e94807ef5051c5370a0e367474c1acb4863613818c85f84e208512e54a9ad06ab048a4dedab49c19d5a395865591ca3016fe784fddf958124a39ce94ed7f3d7ee593d7b9d6b806f0f8a1eece9b49d0eeaeb466dbb0c820db74deaa47e48b192bbd661e10917935a6a52594840fec9ba15c6920028c1e2a8634c3fe5e41c87a97f92aa1696d703ae43555047337a41b033d4d2d89ff83e02f9764e76472f1e5d00a26d6e9c0ffc23779af102db95318e39c4cef53b8428db8e281346791ec7b698b97cdd725c5c9099638cc8906f67ef505124128e6929b2d2c5690e76cee9ec3c5b3aeb782dfc2cd29deb850b1215032404608a55e2fe5a82fc5af58467459ddef14bcbe579cbfdf03b5dce08669ddd5eb3c244638d0627a9d23971153b7f5915caa5e91f23bb4f9871ce31c114672c2b64bf3810fb1db69a6b275653bf55277f74a7ae7196c28b28497597fb06e464887c63b5de4c025d6473727e2547c7a5451bf484bc32242f1a7cc7678e78b79a5a912d7ded4513fcb62627e47b5a1cd727dd89382a892d626882c0d28bd31024b1db67ce73d1536199134ef73dbd263374faccb29966812f78e8a9425b050c9ad7b57da4283506b4b6556249d5554d6edb38f0eccfc8b2616f7857337cd0ed2f56bc04ab2daeee46867cd461c0c11b2407094814f2d37757935e3c0c75e3f6f54d26fd81977eb67b8cd321205f6f09be91efa3aad3f00913a896f8c6b84e1abf203502b4d4548215ede56abed560c5b80904af474ca3416fb8ac68693eafc7a763cd1c7e439288a1d83754a021b8f2548e6e61fddda557e819d0a97caa90894335df650fd7beee482d6888d247259cebbe1e1eac2a6e22c19bcaa004c682daf0e13e9d7003d78a5054441b04da85887e10782df943589c0f3725fb34e0340b2408a42896e96b4c06202d323fe2145670ba4710a31cc409c857f232c8678d74c76a25b53439092ac91571b5776a14f50af85a3f56c47b7539baa411df9e06981290836421a7e1edb0db96da38f23fd23260ecc5fc181171c874a18aeb75ca2f0a9c7a2a2f5f2604b08244fd8e736b3e592f53616fcbdbb8601a074168ffa9a221587259cf974f394249200eb30e77fdc9f38c5e9a9ed8898937771a1df41f87de2f421a914deacc1c9ffe44d74adc8d6d02844ec73ed13e9d24b93a869073a6e2867a50aa78c3cadd2def4503b2965cc19793c1006696160751db22d19678f5535e7c21cd69e5f0d24043cecbd92237983f8043969603de75bd15391c25c65f9193e9f01ac018db70dfab219ca35bdece8616003c4132422dc7f90b10abe49ecccd4808c3192ab02353824075b119004617e21aad776d1950393925c693e6eee43e7a40b2a5b89c6e24acb6b711ed3c7bde007ddccb0b74214ae35a443ce540feb73a9fd7528c040cb8b53e5940d24b19db6ff000e85874b9b1e305058826709dbd57a3a04bc7e75bd9f77da6448b1d32a0b5b24840182bdd866ea46cfbe272389e14092aff39dd7be2ddf7c20b34b689b10b4adf873ba6363eee5098f210f3389d7234b0f253f84734f7dbbd363d30f30e35f4c5211582d7d5bacf85e0479020ddaec85fcb9a67a81f1194bda5cc1eb0066b83e2ec31dff100681f42262ecb4f17f87ee86155ba0ef03402e976c2ad6f554b3bc4a0f1b0b3f538cc76753a5d09ea53e29a77d740f13a075366ddc5144af54744f7eb0930be448e1b9c5d06987d905cc19505b0d8870938dd536ad8ed188b420700d3db66aa6a038c021461d437490cd4eca99b7b23686c1f310e842bc106f5d2ebeb79c9f89053ef62aafae42f56f35321c0aa12ede63715005c759d9f23973793a4c3de017bfcbc7b7b3b581317a7816500287a3ac6d96d4098be5a92fb56becfd5b8217390ac62b9a7c9349cb4eeebee1d3e216e7dcc169d62d382edc5e3c7f915f65433b491a00c204603c12336de0f9672bc021fdd73f730b75940d2cb25cb295648e44bb77939009cdebdc70bf8df05f84e4dc05ce2f6038b9c84568ed5c066d858e2f192c3ff3bf69af6ab8c01321e7362135d40ebf6f32145a2045c4cee805bfa26422f09578ce6493070ace41757df0ce75b22f54cfb941dd03f764c5cbe9fdbb006cdf45aa03a6acb978429ba5ad084fbba61051fe3863ebdc385a82c889a0a50f86bf322d28f17edcc6439ce0f2cbf38585fc7c4af15b04badd7066e6f6bdb377ea4cef59a6c905837cd60ea3818f3e9aca03bb4f0ecad9242b434856e669dd9cf8da930ad1e0a6b231807e7f8d9468ece7969986ed64a8d9559c67e8e8f96b7f05aaf1bcb965b184636ac356ca8998ddaf8efe67f9a4d1d8bdc863b6c8102dca156ea01a6254bb885b602fbcad5d09f9220190268ba6ee9f525e0127d587da0d8141c23aa61fbfa1d2298c87b79f2558acbb252e3300a09b0cdac9f71cfaa25344d111b377726df73277cc770c0b10efe39b501e7e240b1f52bfa747eafd3d14b3efd347fd9286678aa97e8dabd23ad0ad065278fa3b2f8992c1de9e0dac7d7edb3df31d927f4e8ba0c059b2c3970c18508079029d67618fed0c875caa298de24946e997f1630985f5b948ede27021ae392ce1f280bdb68d632b37d4d5de937d87750479db3e0e6dcea30cfbe9a5020e4242ec8fb2edc15617e890640f3219735e09ec42dfd1af81d6d7e70e713805b04e3af862e0aee5f7f70a57e71b102a7bd7bb794449c94841083f1bb6344dd7480103ee0878d0547439853dd80a0f97f200eb1a08d0b44b8736140ddcb90adea91cefe362d7403c72fad9edebda3505c6c80cf02d00c8476f3c4f429c712d0fa6ad0369e2e3304450e4e2df10580c7648d961815238a3afe55beb2baa3c759d5baf6edb6b1bcfdee7af723ca3165a6d98b34d9119d900a708a5f6814d414daeeece584380647c1b9c8e72fa277764f16a19b31a3418a62deaad4388aa3d2cc344be2f984bd309ba01bbd6a950dc65d4051585eeba5c6560b70dcbd13db181fed16f90d235b13a7e5a002b29c64e8852e2441cdbd781035557b9acf57d2f1d1aebebc6286351a66f98f81778eeb3c313d5b12381cd5fed3d56c6345c04c7b09311c94fa63bac514455eb83383148a737ea95cbd24180e90b2bca1048d42fcdee734449d814146bb2c902bbe4d0ec6c9daea49a83e9a63688c23e3abb4fbea1d85f23b8c9a284c9e82dbee269391d743c1ee30bf7844e48795097b3f5b73b831a899ea2feebf8a9d37799f91a58a096ae7800ee85ad34cc9dce02bedd684d7b2c634575d8186fa99a314633ddbfb0f5f9c14280e33163e16ec4fb45ca15196b3648066cd0f8e537932b03c40ae4ea8cde0e2b1fb357fe028f9f65e9e6aad8edd65b0ff36e9beaef5ee761750c57386c8b959c0fb228d8790e7c173e30ffdd94241e73590219cc41b2a56a4eb7c5bc661cfde3571e8e62c45efefd9dd38e350a288991da80bfca2b9942a13243694193be496314e4211ad7eeba95a843b27d3e81339e02b6fdda89fe42761358834955c4b46223eb4910e77c82660f130ced576def767a700d520420f4843cccdc2f8aadd2028d892b3b1e305de14afe65386de607027b8ffad3281e6033b41a091f0d18e1946a30b3424fce820831cba31569e890bb6821702ffc5fcb095da414db1a4de76c146483aa4b6e54efbe84f9b98f683c82091cd3b49df38aff92a598dc237aaf735ae313594433bf59d4ccb05db031397ba9e281eba9247533ffdb4c130f294c3fb44c3859f81164cfec3dee702e4e5a8748269ff4f3a60f5f9de0cbec1677ad53484677fa86f508661931f76b0c6fa69e766adca045fb6ab57f7668ffafcac10f548713b30df2fe48428c664c9b5e6fd0da9933d2f040b079499339022265427622c9bc526c3e404539f9d301b5f1e1615c6f90968f0f013d50ef02636ed01e432f54dc241c4c92d85ca040f572969e0d330e1962ac36ad4e0a69ce7f75ed17feb09fc54732eca6c759bdcc11ca9efb6b880ff545c138cb227eddd83436da4d785c081067e4d1c7e1a83d38b496d1b4de1140176f2e63a75de2dbdb4717eb1f63b15b42d79fb8f117056f4b593defeb40852f49545b8cd22c2c5bf37cd26b953f753df43c25a44309c73b649a288c98249666e74753f77f342267947c0bbc34b9b8fac7809ead8ba3e7cd8bf0f77d50cc98a2d15bbd2d17c32ed6aad47ca5ba0c342c9435487744161754269fb3f37140c860086d432f12010165d953bbb913f81f2a77bc1645f4770b79daf66a5ca6dea3b50c11a6e70b1f80e0a42e88c758d16db4d28282a653151d6bde5ed0506073de6e3e90b3f320a4b4b0325ed97f0194786d7fac1b4e5f085e0953ab7a1b8434b44774475e724b87f75fc628f80927d2ecb8814934826950054a914a9b31c088ecae2a268959c4f57ef66dddd5bc047c1fff5ecaf5fe18e0a6acd55dbd840d09aca686bb47ef52e10d20d8e249a869ea14997aa7476906e56aba7aae8e05ae32eb59aafd339e72b39984827fd0e9be2a60b150d91f025be967458478946fe64df138bb8584b81304b234ccda631a2d80aa7032f5e97690d412016bef6c2313287b00e9434d2cd0f55da50e02c5a5b08a0f37c366ca5ba168aada767a6818b30c216f3fe31692161b1c2a180a71d4847e96b638515036550dc6b41a5964a6e79798eba72ce71c0e85a340c3c5fa43b1008f23081324ede03012ee082f0a5baa8ff0a73dbb7f0481f075f800073405db05dcf0cbaaeff60ffdbc72fcb6b7ee59eaf19bab67d0ccfc13c3bab79a7629d05eda64ec2c4fee7e0ddb357dab5046861901f65181c1bca327f5744b2a0311b344f9f4f5548959211cf763b283547b8ee0d191b4cab2391a4d2485f6c9c91ee76326d8db997223502f0ab41f0ccf4179253c26708786fc82b4ff13424a212a558275109a3d526fb763a64008c9b40d4e7fe45e193323ceb4a15841f517f0f6e18cc1cb4a228f55a08de630eba0a8b19239fd754e70610fc0f7f9dd0a1cb8080b92ddb866427ba4ba81a00c94a7a355998f2564a0a19844ba61e7cc7414eb48756e65d9cd6f852513a19079a5fc907c14895db153d7ab19a1940807f8c820aca255234d61f486e015b8edb5b6099d6c39d2b5baad519ea245d2d4ebf11afafa53cdc740b348b5d653b6350b6134ebd5b6d2910f29c2fac042768e186262a90e419429b567f83f71eec5e042188cedd2fa3b8a21b2b10a0357f5bbecd71c8bcf4f92629e677bfc7a4de0a420ad2a7b8dfa848e95c45095ab8580ca3d17128d4b0de3933cfc7b325f29cc44949bab70531d87040143493933ac759a66603239281e1086ee452738ef34cdd26422403606173bd71ff7c306fa90ce86df21d7f2388de825becf1ab69ff566337c02919f6071c2d6a9e0633ce2d7b78d4b47fbbb3dcc0942cfb77cadf2d8008622814bcafdcfd801ff060de6c5243fcbb41e8b4da38bd9e2d71ef244e75b621647e44ef86e2808197c83b4db2abfbec0551db9adbd3255b415e26396f4b80db4495c0baba07475d450b33c34d668ac5d7a354694cb22f62814a2ffafc975b6d23a35cd38ef54e29d4d6aff863982d8de95e4751a531e99bfa877791c5bd8ea34877c21fb567b8ae20dec21d8c8bea4ef7a1916eef10cc91e4ecfb6c80f965d79b24ed6c59529a14a0f08345a86debb16f78882aef2d68f6fac63b2672e915d3a92c8e2f69bc35b4a976a89ace5303497dbaf875edb803e32d828c7530d60eecaef68fd90d8907351251ed0b153fe73fb1c73d303a770a5b88173db8380ecec05c9a7f83de975982e8f22cf043b13e821611414bfc093426505a08941b50d3ce835e5af6351c04bf271687bb781674661482e29920e8f5f771311588024e5935f4c368df81da534edfbbdb5cb48f164ae250e91b1d884a2209fe34122442eb959438e347c09aaaa6435a027e203675e64088274355491dfd8d11584867907af171e0f989f139743fe1cacc87b2b3558ab5f0c38fc2458dba0ae921ac3aa8c4f03a6d5fdd5801c3390b40f006fa3efe53879c5e14de3bd7d76fdea412d4edfc3f43974a30d5923cc50e1d865158948e78a26467a52019da37273c40aa274a6851daeb8a8a529bf32b1a01262510a2444666deb4eb63be87d52dd128b50b9ae504dff1127e0255d6adacd0a1fbb025572f04d5a7fe72e301329d30cfb39f0f81abc862e743ee88c69d1ba77970d298a7c658ce6c93a47de41fa051e969441cbab07a5934bf46c643cbef34ec7f9a5fd6f87c28c7ef0134da7ebad85e98854942adffc22f24a11a8f7c7bedfb04403d39b6efd94a103a460073783a35cbbcf780ded71923e84ebd43018f29d70d646940b387fcd348b6c540529cf886ebf296845d513a6309e6636b67b85985fa668da0bbc9fc9f8999e5274d639e3c6f750d7fbe0c1f2d768c47841e45d57881f8cf319ba07a48ae6bc918697b8169e79a5d1018b3558497242eb61753ab65833135daac7bca2584a9344ff67fc926939b934ba94375e0391e22324753b198e8f81d67dc6fdccb65962a3106670b2a633b2b8e7d36b509bceba69586db4921335e9b7222269ca8697cd1cb7717c30aa52b7a9706b1c8840808226a7528380e206d89b230e7f0ca6df2a9971552bdb21110d923dd721acb15b1a2f372dc201578d5955071051ed19d6212142d190cdb2f6fb2861e02755bc72873d64f1a1bc37663a3b069c3287ff1507823e2bd92419c9980eaf0412d292db215c7f1df8c52342ec0d17883702d0fc8e90df28b32c0acbb1233c0712ac13541cd91b2e8a8631cedf8f0f808a4864b2c0a9305a4f86f1d911a350bd1bd94703202dbd369aa3c6f15998cd4e4f0274ccf1f191c963f31951bffe22b0b5e274410a3e1cd0515beceeed68ed30d35d3b71aee3138056b74bd6e5e96ed0d923258f346f2e5db2d056cac21dc03d5a4c13512b7d96f8e76822105dfecc15254b7b0a4ecd17f0fc5244f4dbdc9545ad477287e3e57c03afd37b1f23096f5d3ee7261309ff8f58488ee2deba30e338a69aa878d21f3088fb1ae527d91a00d133cc0749ee1188f0ded5a14e765f8f9b0dea51f45afa6f4213e68916cb56e5f61af82307194dd5273545e6bea28f68ab48ec8fc269a211d81fb90a15d807bd89648454956d5241f5792f2eef7143d8cc5ab2278af53ab46df75e667d1a75921d3b515d4d0ba09a0a632ed8a1c5f223cb06a7ac01291cec5c44ad9648ac51dcc888a2c839139cae8f6809df9cfbd804a9e1bfaabb9015c7c4133535f290b4b91daa25925e72e8c3299d908caeaef0a4b6fa9c429bd19eb837fc61b3bf6c9fb8de9f81152756b18dca9e7ee7d8203753e3c5b9edeb179901755c347b981a9e101a3db6320ca66ca6a02d70309750b81dbc2143bd013d54d13e067966dc727f4ca044d503053bd9842975a1d325120e9d249acfbec05fff081d97a9203a44e23bab46ba40ecd05b01135057c47d13a8ec8e84bd201b55d3f725e5325923d23404a5d930b9922c04c1cd31dfacb451deafeb0a799c4f81e2a47af4945164f875e19712b8b39c76265617b3eefcbdc5154fa58f7c411456da834e59ee6a9b1c8463084b30e8ce58d0a6268ca59e1680e7aeca8d9487017a242cfdf43a6ee00bc2943a0b963fce0c7f21f3d28b20c5a9478988d821f48cf8bdc2bc4a24b90910435b5f5b09a2156e9c9ceabf8ea10bff55b4e5423d7e99957195ab83415df0ff92ddab82a8ccf2d07697460f795b71186d701c4e2bb694cd66eb0d0fd966030386c9b773aa4b7a959ecc2dbb1f627c323e86b160c3380a722d836d9956862dae5429805f076b7a23421d6771ea86f9e00af257dfe9276e71c2d66f304d5edb6cbfad97c1717116263a3060b332fc3cf26b8393ec35858ff4c1bc4c0681e43a3eea3eb8b36b5b21d1ae2adab21477a8b4b11c8073f888f2ff677d816874f9b422028db4a52639f34370c32e924df19802440e200e9448bd51f87001c50352eac8a10b1e7048cb813a1ec9086e0664cb0da006c670afeddc2264091b6094086b9b9fd32e6d32aa0646a42273203a1b75dab1581ea2fa86e6f7b4bac9761d3e46636c039c9c263f46eb1ac97146711624d59725ffc9163c70bdac2692a4c92197e65b2afc0657df24fd80f374067a1f84e62f12a2f0d4fd49d6b8ba2b00e9b562a90a0b3c4afcb87d639de27707d472770e2cdbec236bcc6890867be9791e2c6247b960ab9068173affe2742036fcdf13aa8102f3fea41d667a203283011fdd95e9a8f2d520b17c9ee7e76a6021eb9e051485a9bc44d0e552f27e4d88b4784f21abfbab71ed7596ca03e253e9b78cd5295a4fbb64bb2c64d4c2b17f40145753fb8e39393be623e6765cc002e669a9872637a636e94f0612c9e9c5e901f2a7a1715d7ec3e8b2bfa2ab9466d1b8cdcd475242ab8414a5a284357cfd4392e96df4f31a55f2b8c25c3c62aeaba702d07ff4dcb79b3078476f9bdb02f5ef9a3270e64e868af9cd547482dc4db8eb97e8e8cc1688ec13dea2a69bf59212fe80ee1a1c45e28f131c77ba4d531d4fa567a72d3e6c7b334dadec6d71bd546f88daad82ea40a10204321e7af1f96c08aac3bb0aa088f023331ae44be083baacd33c8d72b27e3e9921f521f72cda724716fdb377aa6808a8fc54a68e4e5b8a3701ff435bc39f24bd6adcbbe015e5b7fe28c8ce1871522f5ca01a8760021267c21cbf13855b267f7d4606aa0ff484f00fc5418be835950a911c1a1ab7a5e38936685972f927fe7010723bce0c617d7d41ebacab813678a4911dcfb788209860d8d719bda2b4f14b0f9fac69104489c46c1ba0ae832bc9ecfb3c19ad85ad214799977abfdc8f4828e6bbf369a1c95b4f0413cbacda2ac98346160cd1db5ec90bfb5e9aacf68c913495df3e4a09841c5cf9bed50263e943219ff0c520c07d58127bb979a57442ba85dbdb503213fd21ab273f97813e61c51e1e88cdb2c9bf53b1e7121d42d589fbfa784718104a83e48eea966c08eb29367c3c4646c081e452193c7c9b19c0c26a250830f69a8ffa70b629094c1be816e343594cd1bdce92efd09307a098756606e4c5b1a5d2a1e2061cd7f49e579da7f955c01ce7bb84b06c072564e1c1ac36e71d0c642c22e89f716b27122aa907845bf40d7e364cb31d0836606dc75ae9b8ec230663bea367ef169505b8fc921dd753ed31dd6a63c7fda82a95da2d23bd654d81a9f2d45c459efc6f0da29028f72e06670a38b520f69fad2b2dfd9c80453ddc07e2b844b060028c05d798357318ae51f9788f1842739976f4ccc8b8135a42871ebc203d7b4d4a463bf41c41170c244228bc3d0025da104e3ac5bb0d93651725aedb52f61f22fbcbbbe744fa88b27194d6051a2abc93540d433550ca81bdf0b6d614758b05540f3ce1bce184535d7b5aca474b0fd5b42b008a1c1cc9ad451c8ea8c1e23aaba184650c24101960ca24cbdbe0bbc685d1ebec7813aac6290d080d9f7f22413c0615969778c33d526be594525b654cbc7ea50a89e9c531a3929a9d1b809a281d5628476ced7d700bfc59d2186ed93c559b7d999dd6e65829b82601d1a9821d5895c14ad1aa00fc0fae8473fefb5fe8b8379aea39faa80790136c8f0a67b6d7183ddeba6bbd487f90cfc71b2a0315d7c484f63a67ceb16dadec5790f786c9f0b8ab60ca8e54bf5bfc2f1810c8169285cf2f3af246de17d519d97df9a9b13c209047bae3044c84bf62ef2d2fb55bff8f3285b278d18659a023f4210c6fb25433d4360182204a42b8f814e72aa96ce8ecd8ca7ffa58eb3661d3483965b63e27385654db3b504729d1be2ed6c22d7b5572503479fb0533602f14cc989934b03eca2ec9e52148418d309ee5e6acc71aa34ebc084a119ecef13976f3de013e5379829f1c611878051f2f2dc671a759bd7b8cb17e317366014f9432b626193b0f6cce1589ca60ab24c1567417ffdc120f8b2e28c3b568293dd04f33a258a0344c004cc5a2130096aff09ce874ac81eccacb2103acc2bcabcaa7d8b34cd4ee2b6a32643616837279814cf49103e0ea6f47bf85cb2dbdc606cf8377abd23921b9ffb9a222645b5242cd2cc8cd86e6d452b08d86ff140f6105ccf9693b9c9ae76da5d76479b6285daa75ce03b5c6d71e3777ba99d06c3f52b800f1433ad653d08be88b2108f610f572cc6945c5d96496d97df2f3cc7df6fc7b376ad2edc0f7afec0732eb99be868fbc770c2987b9d70c68775687dcba0e285055ee16bdffc76e5439f9d6b1adfa9fefd8bbb6a5541cd8c35f5fdcf565be4c0cebb0f4c9f968297b5ee82e3bf10c691ee99d1b42f71cf8faebe755d967e2dbad31ee8ca7ce08f37eef1f8f985c7c6e64d956342bfa730305d53ab0be61a5859c5ec94f7fe7674d2a3866d9cc30cc1ba71cac8bd0197994a0b77ce08e395cd07beee83e99aa75bd9284be421a78d42c134fe8bb2789c57d40698424c029681f7f81f2ea1258550284865ea60531d0e829028d671b9ddce5584c6d024d0d15993c76c587fc4b20b5295477e2917a5a907e79b04a67f5108b12cc4b7349dfd5901d7f544348bd5eeaa6ff7e296b4c972ae42e227876bfe441e5158acb4094ad85644f4ab90007313083436ddc3dc340de8548cde3a298446d594a963c66bf7bf213d1f7a10db30a8677266eebdaf8f5f51220ac5f3a05c8e69638a98d69a88a1a610433c9b7404437b629dad5ca3530b8cca6e80a43aeb92130473335d1ec49d6ea569a126a9688c044d19ccc43ba5ec8d254e102361ffe7b3c2128e0a81c8204a891cb8d9ea4abebc96dba6ddc5daefd1957b9396a9d74d015bcff373dd48064d823f950b038be60528733d9d8eec1681f1e30be7d9c807b7e42ed64fb8b9f3bf9b65d9872383a71118eabdd1141633e40574398ce1f4786baa948e8bb1fc8bef2bb3dc0d7298080f0d30a2849ec7b07c7e67dd52bb51c9c83c5e41c7213983c980228ef0b8164baeb22dcf8220fb83b8a0dc1105912ce9f5f8a6d3e5a12d45114ee5e2692d8ae9d9a1587b391142ba84a34553c8c2fe831982a3d8c79090f7781a843e2b5e1f24b5f98c2ec17f3305b98f07f725058e53213340f02b3a248cf49e717e43ee3188b71308691cce4ab7dcd48b5220d53386fc5cf5810accff6c6b9c7964d2b234f5940a207220c79ae6043b8cb66f7f35488b8343279cd23d6e6de51bd5d89e30cfef37dba0a3fb0318d2797e90315508e6711f81426c2938cc91d2441094cb6613a131364ae7864abbed4fe95413ad1cd329742a3747c28062a63d96b7b3be03c580c6ed029159d6b1cc38a046071fa88168ffb88a77d6cbe09e81339db878eb05f494543d25c46441e731e7588a3e3835e2470af89f10e615120a592c1e5e34e98579269adfbc4da6c4590292fd6b90a4779cb25c94612c8600a620df1298c0becaca5d946e1485c4a33a54b71c6a7bab1165a020b554a31a8d1920c743a882f4006865788c2f786f8bd2ad012343bf8a0adaf12f02a156ec056186b0e25987f48210567490640c0c0a149432aa5016a41dc6b03e490af12c8c0ffde7d92056c1468866229a4457660d7670ba36c17a7bfc720934ddac71ee88b10d48963cf5d8a15651d7c12f2a626065812733aa1bf4cb509d2c548e30d15348b4ec7cb6e111e0bacb05ffaacb298e687fae92cd42c902d10d13b4308cea7f57f2a0b4b559bf8c54c40cf6ff1c3724f4af35904759e27392724b6c4571e2a7ca226e25d72dfad0b5f48f0abde973584a8111bfe670e3c2dd7c475ee534456672f60ae31bc27d9c7573b54d0a8e24a9063215586dd3efe81faaca6edaab693ef01817c5b8ca4e5310d507d1855fce901b1974c01f6f838b5377d952bc2b66b74062c3373028e6bf616ab18f097caa974702d9d6c42d31f7eef341edec7948b06a256b8f3ce669dfc350ec076893504205ef560ec899d779b8fc39f53abf3cbd99197d73fab4a727071815c0884c0bb923523dc0c00bc062685a15ac1666bb896112507c62e53bfe86a84789150e017639671a98784e1f9d593b3127eda41ad08660edb088ef1d5616601d4172c0647a914411a793f92b912ca6ccd10df4cc4de4a7a5797163e37180821e2ceb28d07a2fa2db8a96504c66fa99d7f67adfd30e562e6e34f1f54b713dc1d7326e06ed3af038b8a9e4233eb3260986d04702caa0dd6c1f1ebfcd1dc944667675d66b8968e4a70ae80f9abc6c08c80b93f81df7b337e47f00a6b1ca410283eee2a3c85a64cb9235404268e1d935bf470e27e186cde51d8f29421bac1b4a07ca12787195d9306bdfb6a87ca7fde19a07b8bcd36621d24176833162d7c1cb356aa8726b608366bf389556da520e392198a3ade7b7ed20f7f9de805220fed629418d0e28afd508d3a3fe719db3f9fa4def92f2b266348c2ee3bc0a9ad27032b879b754dbd8a10798748e83a7161cd33d5ce15729318e8573857c1928d05543122440466eba71931ea404a457ac546571211f33eb9e46d8ff1978f2f40c10512707ffbe0080172fb2e3c4e615c794ce66ba584a173558d440fa523d416ef35be4018ab1007a0f37e38f44e94a1bec0f2e478424c0feff7a67a147422cac4102bac9aa7d744582d4be01cf1f1f642f1b13652f1b4acafdca922ff319db32c3a98fe1b0ae7d64fce4b30981de97b096d965b8d86530e5a4145cca9236b4827c4b820411728c1b63f2514fada617421844533a42eaf45784b740741dc301ce3117732c1a945b4ac849d662b8516fe0f8e83e69a6d3b5e76338987c07879e555bc16e9fa58bba262da0a676d3f773a71673a090d1fc1604e681a49f41b34b019240d2ca256b0a69aa08fd8c9c6f607e3a8058f8898be5bedc9f1e55e9e3e0704d04646f0426c8f8e719c40ac919cdd8222c848a1512e199f7fb7198ac55b0429a82f74786c9687d7d7a19eec53e97051b3fa8e3736ed700420214c5e6e1e4d00e617ef3acb8905ff8f4702d367870393bfa7651ce01fbf3ffae767bfa052166fdd016bd8fdb751b22ff0d9cb944159f0016cb4949e9aed08b071313f5de29d98195b4a46f6ecd47355787d7605a8d116e356c78b48e44c9435d2c65919a1e9769186fc0ea83d0a49b64ef33752312658a390a103761b62f532561973b23faf3e9f2f62c11814cf4c5b467ed84e94d848e41c09004dc73e08dc02acf306f531a1afcf93dd4de9d61264306a8077993e8540e831e6f70536bff4fae4b56346ba824362c8ace873acc3a338f27ff57034fbf433349b8200bda9647e2bba6faddbacd03bdb7b7938d0923748f51ecb41379c1f1203c3b578e043a8404ff875e5b6923a2a5f2a982ff6c4855e15fa4b9f50558a7260d54da6da2d879d6abcc94eda4721b60a4bd3d84895ef014193010108f17e426582ad2cfc64a1f772c238163ccda9a5660f73a82257772914782e128b705f241d53ec58dec59515f8b095462df13753319566683d0dd46deba726f791e5bed22bb3d4b1060bf8405dc060d2d8681b5132c442b475042d9a9d82536e7430857ee08e440351ac079039446d36ae5836db7967fc44ecaecd6235c99a851457c660fe2d78ff3ff39ebe9801f6b6f022d9191575d23dd4f42e5c01cd3cca6603fa23b29d0e4dcfb8bd80da831850a61f75582b1cb3b5849ea5e95d368d0b70670cdafa6849621027ae508161d41704348cb02bf6be46177cf9181779badf21cb224b60867ed3a35dfb7e31cf1d5ad6d899084c5962a50fbb1e597195c2fc21d8ac307fa7589f98f0d6be28f4ced856249e2d07d197aa1bf88ea53f0db0c07fbb5dc3a991ee06e866b59a98c561e9a944256e32e177ca8fc7956a687233a5e0a5a15f06c22d84df97a9c64ec450806de69dedbb5d4f1e1b611817b9754f97de5b862bc1625e1e50dc31a9d328194d3319121d00dc7e025c97217b83f5f35374bcd04cad5b830b46c551f922782381beb5698cb834c33601c1c038a5cc67a5820d03a4e07243fb8286a1df33a3cfe8f4e489e8e5d6da82372ced1ece81d1842c17fac80449e4cc150b3e6bbf1d7f307a0145048256ab59b263a1f40d2541a1be963961e8119ad6dc5b939725ca310125ad2e49652a6945240075808950745f5a3ce441aeec1023ea851c50e4c941982cc00c0b86285953054d635ba01064cd4a8cca0031a49ba8869378ade18c3e8062775ab6b74c34f0e8da69d74cc6660654a1569246943461823fc4007bad5352a1aa27ba2a9ba46454cb81f23abba464537a06905408c94120ea960c7f486d22f3754e1b65031a3d4a8c6c666540353695da35a1bf5a310064edd46fdbceea7ce23a48b0bbc6849e3448a9aac87164a475814c10619352f49ac01c5fd77e6dd4dbffa85b41355b5d793b2c14b9a9a9accd0c18d2e96eacaa06e5117472685abdaa44b356940e911fd684e7badf6f8dba05feb190d0ec65a70c12b3f0b5bf55f192ca9dfacb0d9a8b04829880a5fd53c2d8310c28ef9c36721b894e4a454b9785f3eff776125610af1eee0ec9647d3c0adf3185d81545d706a848598ca9d4d0fcefe569c0770dd8eb53d987f79023f5028fd5cd78667b05b3173336dcf01a00485f5a36d450320cdd7bd05ede66eeece97b8d5e1fdc1da1efdbbe28e55fb797f6ced21103a0717fec2ddddddf6ae78b03df665a85b77150000e4e0f0d8d1ea80830d6e74e4b0a1ac9a958a4ba1e62623f4de1efb54a1f80be9dd6eb7c7ac9ea05f9f033114beb38e0fb9bb43e8eed0a13b7408dddd1d769d06377fa0fd5cb74308a3d7edbe18ea6e8f6577afd927b85d9e5d16308bd09ccd05cc70696f5b4a295bfe5c9ed4cbeeebad24b0aa7cce8542cd08c8c0b93ed83795a950dcee6ba550cfdd175f4ad752d67a7cd97124813bd85e6bbb166055a155f9c99c41bfafbfd331307452aa9a2a1ae4eeee44a1bbbfca238411b6936108217fc385104208650464804c3a5075930321eb1801557fe6aebbabfb7352baf2815c376fc31a083b1596a9f29157f73b46f831baf63de0e565d8c18fddac70ab2180eb2fa882d747b195524a9b22fe4bd0728c327a4b19a58c3146c9857c14e0c2b959892acf0a22fef2385d6e70ce08510dbf9010ce861326a5742a230a9b16ea52ca0dc3356deb9d67f5103606911685c90e76ab4d22e23bb7a4896ab886af7c9068cb5f1e638c31f2ca073eed85b0bba9c9c1573e12607e2a73020d4d8912b9c4a9825ca66f1bb4a1ac9affbcd5aa762adc0d88090c82ffdcb890d16382b4a1ac9eeee91ef91c98ea9f2a61032e14daf322a824947faa94aa2f975595a43270b9308ba793186534d35576ad1d1315578874c230a337016152ea7c49a1b66d8b01aaa09343548331e00874946a0b53a8b2d5aa526e94528a2117ce8550cc68f31f4cc77f3d39fedbdaf6b46224ace7ffc1d8102f543a5c395cad1e1236e681f51c85d5aa96db9424e23c29a0d031183cb03115ac8dabee2b3ecbe5ed2b3e7569a9f16b5c2a98ef9f82f3f4ec2b2e53f52c9c883250c1aa590494405f4e158d9389ebcd8a1967909538f83152851fd76ae0f390f3b4e6c367a62e2a2a547dd57a523f0fea0e1eb95c100421ac1f3b7110d394345b986a9c452236b94158e454bf4a6d70ce13f849b6ea10b0afc800115c1ea58c52c628b78e53a21bc9cdd7d1707e7f9622698b2e7d3a6a7a4f8d7189c6889a52e572ed4bbeaa7c180c01256c72939f925b4f8e275a78e8d93ace3a4a262415e912c2eea30b46179abd83cdcc9199996337a38c472b9b70a959b352a120ac06b682a93a2ea553274b58276ca3b6308556cbb53b672b4b37f5021086e7452961ab424713f4e54008652092a18a0c532aec985fbad6fbedb147db464f3d032a4440852fea5a1efa3d104258c45ffe3db1a7d6742b1597da501d0c455a4e95560942a992b2db5c5be3caa71fc23d0a9a49a66a5513cdd0188fa46a9ee33897944519d72ace05659cab3897cb38a8e25c2de3a48a73b16ce552c9f9427a3e7c1efc1f55801b1487045608e2d32f763823d03a3fb5d5b0c04ff1e9f6f0df1ae34902acf1a52fc043503f8effb20b017738b0c6872e38e76f1d69d2e32eafb8582ea68a9a119965943e65744914a78a4a3806d21b8efcb1638c1c9b99c639593e7f8c11c208a1e46e32b8e9518c8a889571a636948c545649c5c8db446da95f58650ca8b93d593893640cb695914bcdd80e162a2ec26029d700d68b4fc4799cce029c9001f83205cc82aedb31e924caad898cd0779065c418e39c93d649dd0c0a92e4d019396466755061c20d24f9d479e6cb18639cfb928f72ad84616e326e314ab9c98643860153e177d236f99018150d73d349f5f35af7bea4fa4f85bf2c6c353aed011b2455d87dad820f715063277f7448413faf0d3931858721d90495867ed498801a0bb0527d1d6cc21abfe70512010641cb0afe6220bc8441f06fd1ee6bb16a5a2d556a72a9a98fbf82f3cce525df6ae2253c27fff00ffff08f910c53c0d47391eb5c1ca8d0d5818fa86ea7179f8d573e92dbb685dd119742492e8ef055fe06b7ed85e8677646156c8c160c85b9af18e5739473ce86354c8afad80a03e30d8c01b60aa0c5125ab48c40399baa152ce93361facca43e6f842afc7eb24b67caa02afadd386d294691e2b416aa9fd3a68a9ee9a52835c03372e669247da0c6872ae4b836c8d3ca21d39a93521d4c28ff078bb0a9a2393a5a7878925325fb93941c6394720bf35ba8635de377948e6d962c4f6afc1e6aa51ed33c1c0cf5948e6d155f24d5d8b41affeba31a3f280c1b9555c5174bf5eb303536518d8f9a5bd33af6755337756c8bc444a9f1fb4cfc5ed2314fa2c65d8d207128a2ca8e81f8a73d26edc5f7800cdacffef34df87bee46342ca9ee6e449b557777772037a211b93b12d559365d1d94ed3fc77f3c06fcdc0d1a947b7e661afa31d26402ba46578ed4d4a77efe2ca5e25cab09510bdb013827d4e040513dcb626019f735bfb22c48bcd456cd392b6d89a13adddd73ccd4de0fb4e1581ece62db697fa0d918ab2a98e569a730959f0328e8c74b959f973a36a663dbb32f5156fa544afee2a5c8b592f37018fbe29f41e5af41e59f8ca6722bf152e5af9b78a9997636cf4b49f9754e6eaae6ec6c5ceb7a978f7c5e3d003e2abe74a51eca6da63e76ea63aac3f48b63d74a4cad347dc06a2b394fcdcfeee3f6994486f84bc814533381487bfcdb9ceddcc4476a55d092b27811aa9caba0a87eebd93d67cfee0925945042d8b05df0a7eb46ae2ae0b255c72c28e8d74a4b20a1c1a8a2be953a967afe0e33e7c775cea8ea54e8173fbb6c96b15465dd2c3b38d1b4015e2ad204f55505a08c97c8302d4551bf75fa40a3d01e2ff94faa6fa28029034c5d37ea82212383234346928c8efcd45da36e1119462ac7ea0c48c1993827c4d8e1f8ca265c99105f7631e04099b1a3ab0aacace52f9682f34a5547860345fecae28e12ba020cd3e56d2e98e743fd680dd2ddf5f40819e2af5a0e5d6a9bb0db114942c155440c55527264a6427bfcdda5b04c95ebfe04837ac331e26fadcb185a8cfc4ce3253f1d5b1d354f073566d2b12dfa0289857ebea81f0fa98abe60a37e5c8581b278523f7e52fd23b7eb0266fc3490f81b6325ebf96b1db03f74981d03f6e5cf8294cc3b28837e8bc44c48b0493e033907b93f0b0d6d11185f547faed2315a5d0699cbbec94c639a3fffe448e2639a57a6319024cc83faf91ff3c03f548f349b0501d5e99838d53f40e25930688e1f98c6b315bcbf0518e7129a3f710aa23a7750c540d6793542571638e967cc9831622011bf1459a18b266eadc16bd43ca4d096c8d769df11258ae7708712187914112516c9e3485353935c615ba16985a626af69eba674b5ac05254ac7be451a1ab23fe0c378a27240a55a4b5c8adb81c44fc79acca8202472aa2eaad50e272ba51a1e46eeaa1fbf01f29c20d711aa61b5b460a50082225b4609891661827edba4548b7d53081d5264ad50b2e1118424aafe92c846b59f27898638cfd64d7f4929e444cad13a43bf6d92b48e7dab2497b48e8cd2f2497555111460fefa64a879bf9ae0601401af801cbc2307eed615ed3c907088068c4944b9c569e3810353c7be1faa313f18087cff20dc0c023fb7cd1d62e8b7b5f8462305b135263d4baac38ed4a9824d04d05740f5ff52d551bf3d881eb68e876210f88336f061ca942970001199c23cd922085903f5b9a369fd8d8e41271de6c1a4c9a95beec1bc2905fdb6c60f2154810acb3b8ffcf8d0d5c340bab359107454ffef47f56d39a1e44c3c86e47b426ab2dbe86a598b284cf3cc7e29750cbe4733d5e398eadb3473708251a11f55b5b85b9b53bbdb4a93cc59de95eed1a3477787707f85af3ceb664df00f2fe119d3daeb3e9a412bd3bffc1000880a2d888a910faa70ca220d012851aeae11511969c0a881161f184151758d88b83c658101ddea1a1151b175521a113d5165fcd2792560e1f4c11a444cec4074844e91174ee4115286e841cc10357cd084d6b4e125611ac01ad4a6ae91105c64110249889a17b33151c628c374892306341c4db942f404090e397c71e3092b677071449416cc6021c5142d671ca531a24809336d08c5606806338a3882a6861116458051c5154149c4004306334043c9882a44d030394c71c49121acc03104cd89a409418494524a2d5e5ca18496c4bb682165498c310e2017a20bd50d64803aa86b5484c4d4a10c67444a297148396941194b288931c69844860d150d4a92ca78c18664b7a851e1dcbf0533aaf15039a86b44c51bb30aace5a5891f201b49b64c2186cfe0c9c81535d4fa8b95307ab831e2b2c4aaae111721aa4d5d232e4b906400032320d2780222065c04712587165b64149a1971e5c886315ca838103d6c5dc00401e5c3d4cfabbe43258dfa6dada67e7b6444454b75245ad7880a95baa3ae1195203351c628a708b3c50b13935313263f48a0cb1723c82c3511070cdc878a450a307250e2055d8e8014e004192649ac34e1041927324a1999f0a14b1a1f763073c69bccb82990cc265ad0021a9a8809620def41c90a08e888686b19a58c4acc7043fd7e0056cce0e86a3073d2028ad02ec15a6218b942831b5dccc438220d104f8e90524a29ab40954112a5155e7cd9b474e1c60d36504871c61357c8b8228d334982582801d3e42787ada7873daa9ef43344fd56a9fa86f16fc176a91ae970a6ceba463a98a9dfc3b6a7273f7c2932230b124662b4c047481a02083096829af080040d888e78a2e58d1f663bc0ad6594321220093aeb1a51716600409cf1411015640890058d758da80843366b7a9da2304735d6359acdeaf7b02a4194a01de18230604ca9f2a3c35a41002aae240943082b44b420070d6cb142c397245484e9c171e0200e346e38a20da119b3048ba635c020628833905c5162048b314bba24a991c64b928e882c5c5cf1e5e8070b122ab0284152a6ca143408410bb2258aa525904c510335fc06267cb2d002c40d6284f9e1c18625ac30924495274e6af07054831f89c2680c9633a21891460b23324cb10512a7a01a86e0f0c1698882c588500e4b4155a6f80c54d2a4892f4032c68c0c2268305380921b8688b862a60d303e9b411b36a831449113274fdc83083ea801058a1627946ce938e0a85f8b852c46783143064d3c405912e587298a623026a94abfb1658635d6480b531b3000d435d2b2a5a6ea1a6909403e90470a8e7f7ca6b4f5535feec0144eef9942a4b949948b9c6853ca0e5e5839fc63b6c1a5c23666a8f071563e90461eca1cd18419386cb1841435a49492074a890d2736822afc1d2b1f489178992df8e5ecd44f2776a64c95df5a63a8caff35ce9c89a2caef60e523bda4d96c5643123a4801c2090d386c188ac2440942082107aa2d760b38a1a8f2691a30a8f25b6a20a9f25f0d3135f0a2cadfc0938106228ad8028a2c3f715cc1040e4c744008e14d96fd7266d3952a9fb66a8084067154f93abe84a42cce2063e589234796e0210a29a58c9f63e5136b3480011a6d54f836052043bf0945950fe5d3958ffc99cd6648600e47a858d0013902006254bf2055ee9107669498d17206922c9e9cd1c419334083893266aafc9a958fecf929c32a03a642f8ab950f8441521ef999a1a6caef09414a292584aa950f841deba08c953877ad600289890b2bb86cc9a204922e5a2c2edefe20a3c2f905e1a0099f42f83d21400821ece8a45cfd6eaad4a972c74795bf5f90faedd115f94bc401aafc49afa8f25bf2bf0ca52adff3a1ca87317151e5f7045165d10cc2a8f287746c8bcc30a2ca9f2b1f99a4e408b79591a4c29721d4a004c50f567818c20d1752e203a7aa0ea8f027193242153ea4dfe33c23e862072e4f4d46ca9c71286c70adf672709cd0afd57a32385408bf2055225158c7e4fbe858aacaefe9587c299fc8fee0aa54e54f0ac654d1f65806c970927dd0c3efa4f4a69533e516b74d0926be13ce2e42fedab8569ac8b6eda6959404e917deb62c847cff9bdb5634a64cdd24049266ad1a07bd8103cd86460068688eba457094d104cda95b04c7962ce020aa700c79f15261dda237c4e8702d24b4bfb777979bb723ab5a4868178d71a6eea85b34e607aa5a4828d7ef59babce630823260797ac85ff0217c988f9efdb17d4d4b854d54e17f3beae781e99812aa6d7a4773f754b5ab6b67b13de0f790f3b4177ec1875f27d5ae420ccaafafbb8049ed0427fc9de6596f8f2653edff7c880005c78447753329dbe39c30573071a692071f063fe5a2fe828f72b5fc05e1e7f96c90722004f51fd8d30c7c13fc611703f5d7b6dadb9cf616feca881491ae8f2e8f797b84f86bb9fbe8ee0f696f9bbcbd8630a847c1d9d2d4f1425aa956abad7244b9fd7c6f96fa9901418e6bcec33eec8bbf88ca4a547ec8354682403520d8a9ba395110d6401684dbdb50564dea552ed4731b8428140aa5a3e3a37ef1ac3a66c7b58d6f604e7b402da0a09acf61f32ba35fd3bd7b301facaf4030a0201b570f7509e9018ac010242235ae22fe4afa0044616905570aed013109c50004437bfc4ebcc4b951240697ba48758bc438325414c699ba34a85b14460d4d362fa45d8899c0502e49473e84822c0f27b98abe141c7fa854e1efc33a26859c0786758a42cec33faba0edc1af5af9c4cab42946ec6e6292f3b0124fb01295ca1f8b98899358293293d0f660e6d8b55a93e3522956ccf171156b62ecbed4cbcfc1aa59f970a9ed39d7fcd416a39473da740ca65f369cd41e3f7f2c04573e71c76bcff39509aca75d0c38506a581dcc7b84b417824a88878610e10d285160652a1452e08f895c106ae226ae573648286594110a7121ad23304228a18c21f44bc8151a7f25017f7ae2f5f8bd9d7e2f0132bfe730bec7ae85c8dff085ae71bd46762c788d9d073b6fe7067ae9209df5200eead893a430cde351dc9f6b8cc460aa47e875ac81767c785c933307f9cb196873b98c8198813ac61d942dd65d4e7b73b6a61fc16d0ae862d952ab8b454b94faed525d2c5654a92b746cb16c09a2f6bbd0319bda8fe5e8a8eea88be568a90ef50761645193419949f16741038ed464f3e3ea04d46f2f5727b09e9e9e9e64b39b6d3fdf5d2380b2753827b06c7b966d5d0c52e24b11616b085468c0915a8ddd081a70a486eaa4f8cf2e0696e19cb0ad60fed6e1c0ef061ca9d5e92b13b69f5d0c385052bf32d46f1dedee5f59afd00f437fcae57590ee9ffd5b777bec7ed90fbbdbbb3f0526d81288c369d5544297eeb78aa0d8667bd89c808d7ea6fbc3a76beeebd51576747b300b30d4e631ddfd4cc6141eaaf1932805d9307fca671b966c189a2595802e18324375475d30646ab599a8990ccdda8b6f64bd1b27ee20eb88dfb4fe69a0fde1ea1f6f9a9120eaac63edc37ad1e60265ba6ba031360b922eead7442a9b399de8d7af896e6c68d3e2cfa6c567a7290633ede02587d56ad51865a8bd9b1f68e3b03cccb42fdafe4012555c66799ac66ad4d842eb3f5b49333e849f5725738a3996efbf527129ba7a8084aeb9d5c8df15cb7631517bf157bc8ab372ddd44eedb46e6aa7765a779fcf74b8dfc088e284c12ab393f2bc8f896a7c244672948f09fb9e93366d5bf974909edf82ba302b4ebf0cdc4d4d731e9e72d4b165247fc59f73032b946324e76925f615ff89242a357e17d518919c676549bcd442db23d6d4cdf23343fd680d210ae16e54d2c555da8b2fa55cad96a0316835f250d1183fdc52911732e4062ae9fa31c6d4d552b7680c202aaf7c88a4ba1858967aaea9bd7806e727c208b45cf9743784dfe96b13ec4c8044926652e0e39c905a19f7a90e675b192cd2de06da8b2d14bf87e2ab5c28780afe822eacb04d3cf357fccd05437b31f212a6b51799562311d73a06a7748c7ffa9cdbdc7ca98726d8b1507b9183fc05df236a8b8f8342055f2ced783e3ae630980f14540882b45c7a9294c6547f19212375ec63a5ca85c1c0ef69c13ec04117fa71eda863dde9ecab96a098453555f99719b627718d2563228982ebbc6d618450421977a73d87b26d9d90c68246d70b4d4209b0c6970fe59498d33c29a41d1ff50b52f775964748849057232c193e3cd0827e9e909e21b5df51d3b59302ec2085813d9eb3258fd8f1dce1b651b1dc5dd34f6cdbb6fdfe8e0e5571dd5caff57a58a0f633ff0b03b517c03f5dbf0bf0742afc9fb3ee4f551a1cff5623c70823e4eed5085b651d1714d951bad55de5a858c8dddddddddddd773a76b35e7f6b7faed7bf5f0a3715aaf6e54265d8b110c309ab26295b4811839fd94cb675bb2f6ef802d9b6c10ea15f0e8f2874bdd0bd207895dddbc357d0aeeaaed79329f017bad76bb617d25bcb6e7bcc7923c43574f9bcd023c0d9ac051768e5b6873f6a41f0117ad6b500b787fb74a8f522afa0cb676bbb5ee8ad5712f0d8ec351576d38763851fabcfc6facd0addcbacf67a3b1c8e94444ce8e7598e9f0d746c8d6e3053a463b4b6fc11d2b1af350428845e2eaaf6ced0af857a21add393f33b3b029d55f99f8fdadd4d90fd21bb077045cdeaecbe56dd3a05b841e9ac6e95efb32aa42307a9012194718b33c64dc6f6e9ecee7242e6adfbe64a5f49840078db7d9bb5bebedeaead8253aef5226a6e1aa8fe0cbf3995e224d690524a7f86b1818839cf7c9d8eed8eb589fcde2b12bc32ddbadde7fb6a049e617637fd72a2ad1d13d52dbf3f17b90a10d805acd53121fe56e6c9999a2c7638155819f51777fd0a63205cf9572673578e10343a3cf24665f676a2f223d184906810a272ae823810760c84ca9f820bcd136b3600c5a6201d5ba31a8ec82333a90617d46fcd54e60553f9a1b7af46e0d668aac9a46b655d2f7046cd796227e50689f2ef8a057f7aaa281afdfaf56c5017490951fd1649a74708fafd4c1a51a57edd23234d473544a9b0ba4747dea84caad1515035405da32b4c2a8fa91ccbe3bb0b3d462e2fa99f0bb1fb58ae484855b81f5722c88f0f9f690c8493c06552ddf5ae9c095565d06f6bbb4b969330101e5393a468d56a7ff0a36ca0df7329fe2ff5a8e7522ed7b70753a9d7f16aeae1a73ad43b0fcb20eae1dfb4381d5fd06f56089fb6d72f1e533f17baa23ebe74f9ca87057eaadc735c8733642bf7226ce53a05a0a193fb6fa65c28d797faf8db7c212d439d1d2761107e3a0f8c08a8892a8088c2cb19195c6d0f1824f2e0a732ab563956edb390f8595cf8594ef448f37490c402d3b1359ac14ccd81ac8ed1ca3f444310f5633555aef9a1818afab1dea8bc3d1dfb3ca0557e5e6fa2f27b307e1f95732ab76beb2eab4a5d56149650f7ac5a9dce138033fde267d61456951a3b1612ec02d0d41e8341f73f16d2b75382e7c10f961f980112205bcc03694e18b715ed3c8478c3218f2970c252b0d8eaa214f38f928716df8e9c1de9d80753f58b7fc7a9675fb36580ea5bab08fa6d2d8e914b603d0f7fe8127777f77660fdee39cc1c1d7e3b743368ffd21a3e2abce99a33a88c6defd56b0218c8b28f0a801f0a5f7eece2f30b7158c2f6f4f40447855d08f8fb618dc49966aa1cabbb75bea6897e3a9eb703eb18ffe742ac3dfba36bbf4e940c84a942170098507fee661aeab1b7d4028e83740a8fe1dd1ffb22acd6c5e056e75b6e771e5f8e9aaafbfdcdbdb2495bd53b5fc5e559d77ac31eb0aade7530c6aa7250e535ff4940596739a1fc3e6b3914ca0fdddddd9deac0e970bbbbab1c467f0eda2994b0696b0a65335a4ab83d841b64d9a4c944a19c267592106e318ada10ca891327144215a44e28e784ba5c2dae097dae89084e40ce1fae44e8ea1f553a3c399ebf3a6251fb3fafcbcc4d95578cd4de517b5c3a020ca48b1684fe30b51bcc95edd1efac1ea214f35deb5ad7f6d5df579687488f91d45e6c527fe92d1e11560f9b34d150ffd99a14cdb7fc8586ba8f6f4de8fc1137a93a37d516b8b635a1ccf1d0105cf4f4e45bb4db688112a72d7ad362d79311a903fda6d226a394713855196590d4aa4f4e376fc6d64ac0bce0e98a0108d10dea163d1179f1348563b980f277f72a07ca2fffb3c0ff2c943fcedf0ec68e99666f3c82e3167677b76c2965cb6f087feb6ddbba257475b3bf7c16babe7661a1fc5856475d8906dc7aaa52292ec7f6883a44503db5aff8bbf2c93182eabdaff80207638c3e7dfa74f7f5f8703746e8bb37eedeb1dfda61bca92cb0772a9fedd6e53c5d9f0aaa3a5f4a29a77c9fdfab12604575b0833a88066aaf7f1aa1dfefee0e270fa006026a5a3f69af3f471a40b5833638c3ad0ec7cd5b9d07f5fb2dee6cb607cc51e1f308aaa3f6654382ea2f084f50fd39c25985524af8312e3b333befb6db6ebbbb9d54c5684deb25383854c1a6555ec18e56dda9364d76cda406941d3664aff9b139337ff677369a306af7b772fa75fa613d43549b5e2e0b06855ea62cb67d838f30ed0d27eaf49971e5b31ddd7815ba1b4e5477438dea69a6544fc3061a347c7c97e7004d32396f80387da9f0291a1f9c029d73a8c48c5855350a119d080000405000c315000020100a060462a1603c9035d90f14000e6d944a724e97cb83b1280762100531c818438c31001062100186102a2a1b0007f316c04266d83d6158a8a6dfe5abc249c3376d19e6c897e315d67f816cabc2e41618cd66263028e1d118d28fa70730c0b0d6f375a458515fc1c8b27816a4a2d9aff975f6ba0d915edbd4829087b5ba39efb77288a7b0b010b546f743a441ca07a1a486e140fc93089e26b8673d815da018fc6b48e203ae7723d6ce10d72b68ff4afdca8afd1f909565009907edd71d5313f8889729b519248129a0ce1bc331fd072c7ca413cfa0c3f24a443446fd370225954c540d372758b247ac97843aeb4dc13d64ce2948b4068e794e165f7b2f85490f4a1721a5acaddb283c0ad26943d8b8c9e6fe86501a7575022a9dda46de28122dd65a1d556dcd3b4de6a2642cce3c040d5dc19c2082beb912980588bd0439381a1ed7dbd9d4bcf5e0923273981f531d2a0045e504ea4844e6face523a6ecb13cb02689e8144f42cac6d5b6d16776802d2f7aa9e1764037d5aee9014037e9e0d6774ee2aa3c3c813f69cf7678ec9388dbc2af566ddc1caa2e9a27c99af65f62cdc6586c4a0a9cdf074d118c59694a4ab84d8e566b8d9a118b69243ee9af9f40093990262d25abd1565609eb42d58067d211d6d4079028362f9342d8712df6b2ddaaefd93066885cf9740739ddb4045bcb4e180392b282e8274d87730e5538c84607d5b8fe0e2946e907ab433170481fbbd8ee59054808bfaa4dd8473f8a91b0107a5ab3030f5b67851445dd09c42970e5b0f0fbcf1106e9023d59a9e1f2f8b9f822e0bcbd9598ae55e9a467dae7dd0802deea389f3f5aa7c5d4796371f025b82015fce397ecd852a18740a8b03a1b2ce84fcc3eab6637ca7ff18fd2310f162f57365fbcad4ccb9c96cfe318b8dfcc391e05b99312933900e264f6e985fad0259424aa15566626b8768f9c280ef2c0ad199ae61db0aa31aaa7fc67b1e176092847288997cc4ace50e85059f8c27069baa240db50083c7ea448e2081c2bdfbad18aac8a04cdf65036bebb862483e21a9328246f51a738045a5784087aaddf0b9d375af49b576f8acb9952e8083c3c9617bc12230dada3feb7bff8168b172b1f1ae5becf238df607a7dceae4862d8c45829edc4f61352871609788585f43553379c3602b71b9f2260902af32a8a6fa050e40260644a389da53037cb11dea394ed6bf485e0e16edd63b75e6a83f7c0779bd65024ce68c149bd1be1058bb532e0539b8c6ccd147cb6de5d04ded0a8c8b39b998cb53041a552513d6b0fa2e023a5765a5c1cef525b7a4ba92457a477daf041a44b5c4ae5b5d00da2afc34bb9c0494799f6d536becb78c829d59e26dfeb9a9b96d3e5030448a261be72326bf28181f1a966d8bda5dd568a2ec7a561f4f6656145959928c049dc4c97c33716b0d49b13023bea18c5d6b6d07ddd55b235d2c91195f58f8474b1a694bd8a846e6ae49fc4f48d8ac8912dd63a7ec0d28987d77bf712d887ac852cd5dcf72573a81533debddf8c2b4f6454d6f94a9b60d44fab58c075a52183e8761b11a34eedd3563f6d0f663e22d84456ceda8dcc77cf2a25269102816b295a2e1143426bd284cec4cfce80dc285218ea9418b0c821dd860108dd86cb264ab0db129caa889fd11fa6aed4430b131991854523ade350496bb8a52babc4d62f2a12b2a86e6cf0f38a585be703683b193875028af0a46a3129a984ef42a42f95a6e8273aa390004b702d510690c3411a956905d4042c242a30922f3f429b9aad2653f2adacd11e1573aa7d05e6038ee246a286ca06e4988c40354e8e65706ee1af8241e9f1a7a9924f6419ca84b9f0efc873d77b5b867a7143d36372ed26245224ad0fb0deb0b5568888a6217cd2e89ad0be985e4800c0cdadeace68a6a3fbb54d39034c4ddb9961632fa936d41470020cb0c8578b088e6fd2d6f03c56a0550d6cac4e5ee370146128c129f493e41500170fd559c4bde95da5ff8a8b6b996d530bc94b3cff517afce274b36ad09dc7869d02d64359d32a069978db846621fe6b7bcdd20f606d637d2034ac65d591cc59dc3bff4b196db0f3c6ec6314d37ce9944b6c04f03e12ea5d7ec709d2f9295c0b45163b942e7eba8048735143f3d5d125d4dd24359ba338a769eb48f34274a650c5f0a6da430d75712e837fd85a9d2fd6d63c64da445c104da4c017649eb644841461962a4418a86f74ae8eb2ec0482cdc90dcbf2dc43594bb7612816a56a3e3059729b06cc280b173a73d952be9b18699b080b529cd1526b14f3024909e7e936c13280e014512fce32bdadeca77b8bf100a76fe95d2b1a5266a38d3a2147efed81875a0ed0e500b7c96a84c644c5aa0bb42fd78d539a23e479a1b90967e1d8da1b91707bc0f85eaa7a7cac54135d695dd90209ab1d591c2d19c9d61449f533252196146f8779bcf87baf05a866d0f9d421318b5cd10c175370cd005bca182c2748e1eaa92684159671da969e34d8055463dcc7ced52b43760eccc5820c3c64dda620bec47dca8d74220f78b27a5216a52f7671f5cc94193a5969f994c364a52783d74f2f7481580c7aff1f40884d03fd10330c0b6f51cb4518606ffb41e235f2ea8aee11b194384d5eeb5f981f0608d950cefa33946546175e33fe915f81822b173c0da3f68b3ed26182089af551e3a076d63276525f45860b12666aa0831b6b219c0d5b603e19bc547ff19822417b8cc5b4d4b8fb039cb01f97c2d14bc08c97608600204fbaf6ec1ace0ccf5c2a4884180a3ff04d87c7cd2139e0de335e88c015d62db1ad50467543123862e7b3c43615aac4d2983d70a244aaba5721f55677604733d8e8e48b7ab0894277906143766ccde443116bda962e2c6f96e6a3891c737476f2dd81396f9b91d255e25e9ac12455382e61fb2fafe0f0a59be2e535738ef148c9cc2d6fe6d5e0d80e777e5676c52fecc0ee4baa6324b8b00a6e7101684c9850886ab681882b03a8a8687ae5637bddcdff1d67c822f5cecc14ce4e774ff43c34a55818427244300cec71c38d8b27ba7e85c43ee0e80c7460352127f4c950635f930f4898ef7d9866c1fc6a7e5b5b1aaf298cd3422b847dbdea54a85faae1894a2de591ef19b154f4ba5317c5b967ecb803798a0bacc10ce8f72b828a32c52396cf2611e06fd583b9dfc3c1b2afbdaacd42c4b72c4121bbd2b85cd665678269cd4aa0e39c6b9c228eac05d9490d3776f99ebb93ec8a28a090869c502e585d253a626d8d803a0c7a69ae8dc65ccded70ef6c3d38c7ab20a68fb1431e43b20a822f09753d5ad2685637d6425995de1e4a9eb4f52c1c1f07fe30ae16043aba2e544e741c4b599a0d80cbfe2bd62c595ed1c5537212de0afafc1c26ce4564dd5fe67884f94e98e4c4f0672462f984ca94f6631ac5d67f5ff407660c432cffb78ec7e26cac5079c7b839227ff593410a6aada675f690c90d71459a2f31ca64ce3018a9d2a905785f137d22574e64918f2451eb1813f81f3cca2857ac9fdd908b2bf49ed3b1ddc48e491bd8e2a39259d571b2c1cedb4e926a84076956714c1edd0c9bdaf72c6a7c07f079d0ab4948c8e8abe50ad09dce542a7033c6f346fef4b37874a71a818c0237f163db17e51753a1c871cff05a6a8e2d4287515dc15349966d9c0054e7c556803e927ec07267d379fde95a88de81c4f96c4564e04dfeb7c8259d1122ac8c3d8ac7d86e0cf3a07cc39bf8b332732d51bd35a928992e771b1eda7ab6692955fcb2b6c40369dd7e91982f4885b3603777c0d98f0f5f9a83676a01af748fa76af02dd2ef584762b6316d3f83055b0a9b78300baab17ba5e14d5366ba836698b2e8673397b2d0cca8817cab0f362a9cf05b51bf1b72ab6868b31420a54f111141ac99638c48d17eeb6dd32e2a13886490b1f9d8ae7309c8d723f23adb6c541a060426c6602b028d896206839f1b40f482b003988578029a99d6324557d47dd899e86198ed4dc927131f47367ac2fd29050103ca5be8a420e78ac4092b75102a912763818d2ace87a416a38abac3389f5073003f59b336df22868f4dd6e053de60ce50740847f6dbce87df66be04271ac73384588e61fb881c8cc167011c72cb3a8043e3013f7fb3f76109ff45c863ca81f07cf67566809e88728ab9e26640e2b5b815252d8bb8718fce1393c4717f82d2ec9fdaea231b093700070c1ae89787df40726506c2c361528b609480b143f50387cb58e7e67133c7a8d1c3d12e3db505a752bd3331e8ac8fb6f6680185799c5aa66e5c62c0a425b5aa4023ffe008dcb8da783765336ff1354718e589fd023c5ac06de0655faff569f918f9edfc98bb9a78c8c8d08ad7f07495a61e010caca49085b7d6aa2457016c58ce02501f97bd9e75805a91c4b6fbca48ded99a97836d343fe990252b71245333f93417eb5034b549d2de289b403495972b7dcba97329717287f1dcb568f2e665bc3678f29224700b2b0ccff26910c5dd59de6a54a1bdf8bd7fecf9caec95be8298110ebf5ae8590deb49164690c794618cb7a4428c5672bdf33ba6d0b24db8a049810c431d192043338324016473b72e1b32dea9ea3d68427195be63c285f70104bf1cd7195ef964ba3d88a554743706d4eb3d967660d92f666da11ba53f7017a8a0ddf5d554fe40d51a24614d07e363b3520388a34adb5fe608e7771e7b6224842cab6390816b7e0ef6efea1399a02610b00467493669f5076e443a60f7dbb9ba2890b160ee8e4ae5369180c48776f6547c12cccdcd51b5dcb6ceb4d15dc253a0ed4d4b13fa7949157243105942e983c8dda05d28f70527612219f820c3e6f756c235baa97b841f16da92f76ebc3c90cf20ad04d112b3f83a840d55f91b2c1dbf79741d8cf83f3b4da305ebe8923f5aac3257f3d7c003073c407dd686c18d086cb38f7e3ecf233671e9bd3662a959b6610c94c5bd992e32a14e9152da87cad3a7b070161753d00d0556d955e8702968497c9c915e9966e920dd6ae10ac9b95a01da779416d19ff48a4f2b3e757883a92e7a8a828e1b5ccef4d547fe96052b1f3b55fc03c8eaa6ee683dd535ef1536d741a4de7737e8bafd570ebddd8a14279f85b807c727ed1a99df1e79fde1a9357039d794380bb2ec29877ed6afd25d3b7326f6d2a767a254e9f5bff38842598f31f1b3426634a4b30abed54c4c64e462c6a6631e06a3d3162e6cc90a81240db6a48f0bf5556506a5ae8f9f64d54a35d61de63b86765d3c01bb50d547c1a90273fdf7f8ad560806acc69c15bcdce64d5d103819e2198c816e1463fdccd57ce8164377bc6d827768db3f1f0b51b19c3c1d47a51926346b2b77d51610cb5a62965295480f804da449ba1d954f34aa10516ebab5ad8b6eb858e746d560ee224b1f95e6eb1154a7b4741ff2bb2ef7be3b666990224eab6cf2fbbc1e7eded9c9c0bd74b47f39b0b3da92b864aca5780ddc664edc38d6e870b20b3e7aba751cfe336123711a4fe1b52ab6fd62ca31bb2e64fe46199c791009f4e3d7b4e538b3e060762d610adffc1838a7302618f38f7a05a03d8f38abbb479c193b27de7cae5e8dbabb702f26c06322e3f292c4cbf7b2cd16037a53ee2b3d9684ab6103ed4ad24cb8e2f720bce124bdc96190beffb2f426714ca0900ca383902200b87ab89c975e0f3d7d4c971b326463ad300ae47229ea112714635a0b2f6c42f45785ebf333ba771e4c5a6cd0bb0d5935e1213743ecb5103c56e2a6035654e02433a4381ccb1573af3296c0fff50ff2ec149d49172b1a9deaca110edf1fb149c4892613ded4224441d412d4f0e6c8be3e1ee927904e6e6dab84a91dbbfa14007ab7518cfb8d005463a853904de3edc27e13c042ac8058777a38e34ba32e4b99631107e45e051c97e578a7ffecb24ec172c328d73c8734c78eb6f6e988d74a218fc74747ca0f1935c7c0f699e13ccfad6b04772995efd03af029b014edd9c2b7f0377a6a9ca165f74816ede5a65cc4f312f5cfc07350d71a184825511c7cb6cc1d4f805beef256a54d30d4d16820f8fe8c5351071e8daead4c4aabd5314af871e846e83d9485a5208ce17e7d031bab2f88a7e69d687502555bcbd8d8b42bf9fb98c97898e6e616fb11a5321c664cfe911559bd9c2eb6c8155528c9df1fe7df8a5c5b6eb05dc4caf9003e585ba75684e4095a8c15f10033cbf40fd041b3827dc5c770f0a94df0e99b31516c2dac662bf9699f1ac073a5cfa6ce7d4d24cef8197229586b0347133629796afadc7ff64258bd70ca46ec0dc76d9fb7da6eeaeaf3513d27c023c6c8808125d3d307a74fd57c9c88d1cdde9bb6dc6686e5368bc8fe728eb00fc7a332a0261f66fdaf16bc4c239d058c879b4ec96bff736d191fb4ce1033c24354bf170576c86e88efeefdf7c649d7831b43d97b8651288b6200aa2f940b21eafd8bff4c7ca93882003406f02a6d419f807cb3affb8f97c3e38467b191685373b3dce6a0fe6c614d177956f4d668f252c28c53a46c9f1828fd9b29a80522c1f297a4130f1ee4e17d85f9397ea45456180cc19a9b33d9c8460800b66d1fc117045a9000f121e83c92d9c33fdc873597817ce4fb495b8ace71e4c615ef33d16200b888d6c31febac9be8b2ea656b931467871099031e5ad1cca76a0ea353323faba4a9d86c4b761ff873bc9d3468a9768b71f4f4c8737b5d41399300d8bb993d252a5b058402af23786a499392ce225db3741619b8a1d4b92221693ac9721a8247c4c65f798d117694a9bf1e532133738c57af69772baa809d1c85ecbdd71b21f4055ecf7b2c6743c98af46bdc308424b83dbcdfd958ee7146a16f3b2b41a5b215b0cb1afe8f0560ff09d916c66b8d1c42c22a7de7f51aaf0a6cb726881aa4fedd817b756ba5676f08ee56ec594468aee2f256dee35c896a864c79ba8a3d1481c6cc894a4613f4f5f21a9e4ba84bd6cfcb165cb7d2226de1a8f832d78779995c799ec68fe42a4e620680d3dd1cf4c71bed85bf68b7f5d8e7cafbd3e45cbddeb31ffa7084f07c28624ba02041275db85b6fa83272b80c7cc88ba19773dbd012edf4f5ba4a1632379a4acc2e7b61f177bd76e10b8ea817d206ca65dd49c030afaa9cf2eacad6744dd5e8be557939637afd464017336ac892a86f1356ba87aa39db02393aba638d1203a51556da91b062ac74f1bb3faf4e36e3a817834820f60b37026a8d8d0114e844f741122eadaba949226ab5675fb4580c5052f45b47b89256b208c741adb3e5040fa97341ab886f0fcbec2147e0c9a9e16daf4ef1732fb8442c7a243e87ecfe6675af2310ac6a72904c3b41432d242fe3819fa159375dffa181522e6b172e540678dfeec08933503c369029963ff2038a20e847a35aba0d3998a19198de7ff3033eba40cf97266d7088a547f0329f03a5f450d1c698ece65a842e1d41727e6fcba843d0c1c3b71565666c97a9cd66b152f508b52163fa62a26111ee3c52c018e171ceddf382d239c2002a654c94f3868eee695cd696761bb8a384d663887c35d984cb978ecd5c1a494b53041713a5028892e0e0e41beee2a5b030b414d925fc9f2184273aed95499bb45d4cd8b1eaacdd82ebcaa7695f517d551337cb8155c6b0bb312ec5434cc79686be83c35b29871028c832471905b72611ad2bc082b52ed4c183c92af85c2550a30c61710bba041863779a60627eb87dc3b9cbbe91d144597e48c1b29fc6939018238099ec514ec3430730ab3e07028252cb4f0a697de45d2f08be7d3caa5c02ffa611f873bfe6d29cb80803068c9661231496cc392f2e1b9034565abc9ef06d0000b7949e322118b345ba36276421021f3753cdc81349ba166b0091252fc128795ac39b17aaf0648a57f46eecf31e2abd082d651f91cab2997b303f0ec0a6498d3b522535706147d00d1a15b87ee30a75b0004d3d4eda6d8757b8fe31554e29c5814daf94746f3a6b3bf20fb318c644afa135c28d569777cec9c0437b2641d6095e4e6a7fa06b139c76684c49a2eb114f82baac69c7d09bbf3c36ebad2b965e828e495b2cd3a83babd8ecb2766464654ee5d798e8eeb663fef909dd7b13ef54f2a3a6fcf40c18cd6cf623db8c372443306b0f487d2672bdfb5462911160e2ed121fc74e2562bfcab71bd087302011eacdf6be2ed983fcff651bbfb2855da404d614d5978b2db40a80075f835c1e60c864ee9ea63c6a3144cd6d01ac888066bcf10abeaa694f89d7656abc61d134622b1b6a23909362f32a8255b77e6eed53f30323b0bdc95272ca18fcbbb887d08052a0cd0444cca78856fe3698620b15fab76860e591f68d02b1f2e8e7fcd24bd68ad547016845912a3da1a26f53635d9c9161f0e00b481db399fd2e27434bddf7a31c0df9df41f93be617a63ec221010563ade482c7e78772b46bc2b619ec952f0ccfa7fb14a273ba4ee095aaa25d16aa3cbbba51647a5755564ef3a52cd40aec27cacf36884419ee844b521e4b873faa9da86febbb84a0d553433ba190481dcce4f1fcd2d322b3c1ab0df3d60f32e2b6a1693d6ff6806012bfe700a34ad879cdef4fe0e610add6c657d6c6019e5f3f3190a39ddbf2d6db60e88ef4d6ce8199bbfc46effb44851b8557add8ae717b9fc040d3698261bd9b88f76a9eb90672f928f3364bbeeb256065f1de261c7ae2dd4e3d880b8465aedc558ac3bf6d47b162d9546b6a54a20455591321661ae63628edafdb07e0040382379848677c99308717bedf4896982b8c5da207cd3512b6eec27c44a7914e2f766ff4aa18020492b24965a9b6df88cfa2bb33d95b01c6cb7dc42df5db14387b752603289053187d3accdeecd693229076e5fbc8f326451e1d935a78a35bc8be982c6d72e9f1fe4ee882d35b9fac5866459500afac2e015efdc8855380db88caed559f19a06a085e17e04da742da2f2758c763bd195c2cbbea21ddce8278207083e47c245dd33bf38f2ea9eb2f704bb567669e6e9b064ca9c25afec027c57b6a37899de0f51334d5838cc71cf3df5cdeae8e3fce13f1384ec9e4728db3a1af85f2cd4ad675d0867d241c788739c3bdd966f66ac6f285ba8d73a54f2eec7adefa638aa2549d3769e6c4ce3ad20f72fda866a3d9e897156131307e434246660052212e0cb3f8f2deb4c39df9eb63141a395e29ae48de9239f6f54a41aeb3efccb8f2b80fd25ffa401ecb1a9391bf600ee98d259d38a7262176e195fad5b44d1231db14d77f53f242dd7398190899d52ff09467609f8e864843777438377610568461e615c704d5951a15f8e3a52997124d29f0842877ccb137269af3d7ea2e8484400378debc0290648c56b1f17503f75e67175d68eefb4a46d8140143b323a1bde8817ef2e699a3689e8ca905e5d26e73dc68d0db0f6e403fef4c87a19fb6ca96f988c4574ce4349c93754e7b76955390957fff807e81abd0ae8230c53de6d458b283286ecc8e6351b9b0cb482f1ce414c0d343dc4bcda2cd6583a3f274e1732388b82071e869d3552eaa36088826dfce01cdaf36a159174b149fd3e042de8ed7974b7bf191c707bfbfbbdac272ca137148d039a324cac56f6321148b5e50d42a11454e34eadb7feb013d8060c819a5b9bcad13ffdac8a6205c74230bb7dfe56d9a22ba1436708f3ee3972281eb11c38d453a0838af7a5d6ca5af03fb50225cf1a08a892d5519089d56e78c286b5d3d85458277db035d8a946a5c9ddcbe2a9c055e318d0d0ab2dd1965249aef6581ce005bab0ffe359f58a42e6345208cc0767cd8c3634247455a6d7ffc5c4d5549d091883e8616f117bf0f8c195bcf3a0387806768efec62d6bee9d9ec5a38846bef57e39d99b9813e94848c47eeae752c2836dd5986028dcab5409d1a8bdcd88d07580e49642dbded6fce0f722eafb978cfd6bdd3d3aad4399aa7b1c9d03cac5d78a5504af1489f02bd20095f189e7e619c300e28b7c31632208cd6cb89a51fc3d5097d367a3a4be7f4edfa5c4c3ae584fa39b71038ceee5ee8d5339112c7adb94cb231ec2246bc37dbab2157ff0585a1097fb1391326f7ef1463ec10c576cb8069dbbd6431b745ac68a5a30c7237b086648a4d518424a513a33c2916cec7d19cab1d846145f6dc370469a958618f9e425cb116022fa5f45bd149019b6014ace7fffc7970e22949f1d29718027af225e6fdb7310ff2a7fd92d778af786f7fda58b422e735889c96d49c379aaac90bc6dcbe8cb455cce693510405f17e5af8b20bd108f20d017af7a2d02209b0e1de64ec41540543f18bd15bb8cd0d0aba734eafcc3bbb47368651f7ae98652a3cf4e0d3048b99f7ac7b821ed6ee3f07d2716f9944d89de07042ed4d9b28d609013f14ffaff8e85024eb39cdb03a6185708dd74f0e100b8dc3a9f8d08b1e92a2601cba2e7a863c6dacd3b94e16a1d04e3dcdbd9d12ccd7c998b9cfe91b1b2d4b8e085db4b030d6cadc772150246b6666bc5b92a4869c9eea5e66a39683e16b3e83b125da9687946b4c64cd81eda73bdada3bec03fbf4924198851e746153d0e5c232243637e887ddf3682754875a9c478d55591665f5087d4bed62d40e5fd344a88d52a2fd94ce3adfdf91b9cd28f445e1477e32b4ebe250a74ccb35149d41a412f4b2300a1b01750ea3c15a8469f9a12d9af94b0e6a6fe5b38039dba190f4bc303e8ab82d94766af96135228249d24a46b2214e92cabb1952794816a956bb2cf6f167a849120627608da24f934624ed664202a90e245b724d77e9463b2759d8e1a6aa7d9268e03b00a5585ce08b108d47389462708b50d23a29b6053752c03a635564b08f46cf13f352af5f887740b1ad40d126c8979282855d1e8534d9f73516b15b1fdad74289dd63ed3f65605aa17797312502e9a7864b316e261088648c3c85a35e8a0d1084f93409afd3d19e34852a32d3e22970aec7720d512950a413efd387fc5304ad8fc02ed583c31fc0e7a199f999e66306f63d4b9ef2f0a1ca7197826409f14ca0f58ed6ff66109067addcbb496d5e793d0541866567c7340d939b32488a232c0c95358d2557f1a5c87344d1a208fae9224eb5c81e469583b983c5b4f669f3808f47828934dfb0ef192b91419d525347f56405418d77d1edc73e35b515632e1fc1f3cc5522b4352eca398a2184d4486ed583a349b71c3e68b58324b8ade1eb16aa5b2d2b74ce734d612fdb9108c25db5136953a9f298f556502deeca6d197ff61bcfab6c98202ef592e6cda190c977d5c3a890f3c39e7145638b51d817d38a23425a8526c7d5dd2345e2a06c0422ca969704307fc0ac8410a415fd1c2ae4e63dd268cabaeca4b4b8f03e41c67ae56b5f8c5175dc1ec7f40c9c2c1f32fcea11aeefa06d85dba7ffe1854a948e6f857009743104da648ca589d3db7bba3d06c9b8fdcd86c38a3a3a9374e8f1d5d925506a9d71968537bac155ab70cdfd36643ffd5889b67109949e55b01e42fc353bbbe24cd5adc2bac5ec1b386af7c12c531536048e547530d4dfec81e636362e61c2f6e875817e64bf537878cdaa9c9f7ee3d4df6a159db554f3c675c50ffebfaf89eb9344f9778caa781438a94e277d580d632e34beb55f8d671078eb949acc5be03a6ef9d446abdff436501afd9dc5989e1ef1ac29b4a41574b9ddf26afad4fbd6e0f8cc20471eac97642a215e9936794096ae6958cc387d554efcad289d99691a8b56fea4b2e2aef37fe406e5b079a9ba6389f9b7890bb4e057f489ca55e8561ba90219444a67f0186e1cbaf187bfdb494cf178f662f2dcb655333f4d13c7e8e803351b5eb502d1e055e051c5f37b2de16a49592366093828cf1744dbc481257b5632b7c30283830c6d4d4a57e3a1a62ec57df180882aca0b0fa8b0ce1237346f5d0c7cdf12ecb11870585143308ab3cbd546ab118f0236adaaa6a24006d099dbef59130fd93074a3b69deb9f2ef38ae6f06eb701f9e543313ab6a1906fb8110f775daa9043d39a4fbefa5be3c042029f878044c5bef85344aad000902040220c90654f04c819b5c769e2ef151421607f68c25ff335726b1db743060ac820e146b3512591ca61cf4a1cf194ce9404f6e28be2df77281395c723df03d29ffd3affe6a6d65a904729d4570fc3e267f0b46b4bb6e43c23b3046a340e25bcccae2f6fa68c821dacaee7700b2df4c2224b0f2c00e5d49b6c2b82fae9cf9d1be7fece35538aea1c18f7772bc0b51677f43be534d8b61ecd0d6aede8bf4fa546bb69e8059d247a98e629623dc6ba1d932857c92c4f46656d3b2d1720d1da90cdec5c3c18a699776b2a9747f134c8b149c94d76677c125ed53b7c5120d6d23a5e41686c1e59fe56afc9d6e55d1b1258307c8da12e07b6ad4493398f20941741c333040fece27152bc1584f61a82cacdc1656a326eb5e4dd805d2a73961d2b9c5ed728a1927d47160a78a5961026681e7dbd69254f4c19c778daaa66612e8878cbbe6bd62083bb0542953832b54bd118d3d662ea1f17aa74822728c0a98169e0c0cb26eb51df770907012dada0306cd2d807c1679e9c6ce86916a78b037834e57bdcf4e2ced02e1c0aba071de97f4ce40d64240b2f0e457564e02ccb2f8616ab62fd1e54b24296b7a92d849cdf09c2ffd42fb972dee0fb505a437ba1ee6452224422efcbf211779528d5e0f1460eddb9a33ca8866c3922f367694c65810e823981fd48567310c1be869af919bd6ec8bde8887f796883a02bba1a5171e355b41d6f32d62c25beea724353c4a4f62343b34c69018a950576df2537d574a26f07680e4f528657c91d8931e5f923035bbc0490066816ee375da8d98de2b2321494ff8a9af9507eb9c71c48007af49fb848c032bf7e08ccf5891190a885e43fb3bf2e259b171fa8a5eea54073ab98ae1b0a9a65de24c5e8084df5bde6a7fa905f2bcf3f6c8e5d6156a0cf9388d81d2e156092b79a858d854d82c04944bb775504d663c10022110449018e317814e4129dbd9621e19b9fb425bf3fe831c1437f712233928830e36e51542ef7be814a28310308897412df3647a76cc3cac090695e1e6208449141ccc25939ab1ab084814f1223f23e1f7e8890d6ecf807e13399df4634ae608f7a1e3b316084c19ccfc84ac65accc071f9468f6675396d7ee8a73188be49444ad0085b36f3756a1b663283b08afd4f4b80459d2e3cb693f13898f40331e8f1a9eed901b7500b8f9588bc415e7a8ff262d336892b9667bdb0a84ef6f1827842cc03254e039e10d1458fe90715ab2e1144ad668c297265b8d98a15a7c7481a632dc5fcc4cc0fbb6f42c05612e2d39a9c335120709e6cfc2480cdf5c626f2bb63ac366acc9c529061dcda6c77c64dbb557fac1c4c99e9665c116e5c7a949bc83794db8a5c345f28adc43ce460f983956a5b57dca9e09fb29797a8f630540b86ff8c88f59196333c9c383fe792259c9fbeec08bf3b0ccbed67b2dc118ae225efb3b894fa784d1e8ccbe3b3cfe44f321b58defa6c949d84ea7aaa4ea26596b150117d8b49cb3554a0b36c87bf534ac05119db7806e572f51bd205195f20d2201335252ad35dcc870d5b2ab338559384db5219c5ec52068ccc2b7c31609c40f76a91dcc2747743d50f7be8b73f3c36b735e4f5407c1ee48472e2f2dd0de038dc5f21cc0bb3cba4e68a43dafca2d79544e4f0b8f8f6263b3dbb73b847b97c8073656736226aaa76b33602248c4bbce14aa2948d6de65b1287a98da7df30a707473353c4df65da40cd4b7fae13e45e33e6eb190f81f8f5dd48d02984214f4641ad68556a7d83c4605cc3a81a243469903823a1183216833ecf220110925c94ed631cb8220c5dcbf683a3f5108eaa3092da0c6c6ab274fcda8f9650889e54c739cd6da7c16bc8ae408112943d7bd421ffeb8416be34b7899c924746eb03a194fc61c0ffc5063303fee70acc9d3fe92babf33d75da0f0e55a4f362633ab54e2e76ac2a55b434aa9d80271d7d6fd254c9a7f547a4958dd55c4207108617b249b40e690b7bd51464576c70d3cb5c82c8347a1ac1acc19791273033dba6d31f31c22660af1aff125d465e1329c0b4496ada00274e7d344cdfa6baca7caad297d8eaeff0c4113576305635844740333d7843cf9d5c9587b1c799c23f7b876fc7e8104e741a2970086ea3e171bf68559e429f234b1b9d974717fa32c0d4f2552fe953f3803313802376d15311399c61f447bec58f098113eeea68f6dfc6e8a9123d32cdda7577e1735e502cdb0e9b160753650fdcb67184236ec5746b498f73df7205e42751c48ab7e206c9347846599301c94802a71caadeb97f700c29216cbe5cbd79e77f210eda7ca0e36a9e193011573d1988c87c1caca809e47b7045185314723e54d53e30e1396ef060ffbee0c2b6c0dcdf7440c2790999d3213a9106fb36b9851bbcb983be808dd10d12a5816a6d1027f5ff1f62a56191855afef9672433cec070a401dd3d59ccc778dcfb8842bacef28c9d192be7f08068c65afd3ec9b9a2e019554c679462df3dbd2e194ee5b173ff10fab365d074d7d1c9131ead5cd0b72708149a5f9ba2a98d7ca0a303e14e14b45841ee448452d7500c28190bf857af3346f4da1c74a56a5d35f226582b5cbe4d7d17dcf394e055537208866eea3b31164bb04688de1483db604a43c51472079ad9db9d58e07e65ec436f86a53076d6642494321df4c0e15ae8b6183346e7d2f9905980fe93dab02f08b7d7563b04e99f0f83034c413790a36ac027baa7a55dd571db38a3c42ca2928d78c4a593e31eeb1c28ac5805dc3948a33dfa5b515ce607bad2efc30d03b58978a394a258e9dadd196147349ae6c20298e735c3d632bbfab80a5a96e62b20ae059832d5e9a0164a8317a35dcafca9d493b0d77514d901a51177525380b50aa8da9da5c9457738f525f3392280e20ba1fb23b305077d5574798f00a40d9b93a92ca53713c79453e5577933c44c97a0641ae1eeb8880032e519dc1ac0fcdcaa823ae1a0a831f388859d065e693baa9361750bfe529c0a6ff94af838036231de3cf19805b8689ea8a09fe4d884b2b2e8db04a3bc926f80075c6a73502f21088146a039687b065cab3dc012604200d69819380011ab918a005d2a52611331ca4b2ec934e25d80a5a9a6d78224a197d64c10d0b74ca389e92f71457a932bea8bbf156e86f6ded174e88658df4df136d95ecd5ab5add0d8f38934560f6ec7d9456e053048e83cc1cd865c9117c02e49f980c389adb2a02bd409206cbcfa9b272dffd73636d4bbb57d7a4b3a6c53f9891a383e6d3b873bc34f930ed5e4bb53642c1d6a192962330a00f91b13738fb4318c0c844d6315e5dee811a5c840e23b9d6ad02291650c752fd349a50c496053b0d3ed873499aa08695d205e62260e90a1d2b78c20c429c2424d46a8f444eb925900d7c044ac2ce33d7276b8a4a9185ca3625210a27fad7d4c9198df3b2fa24ae15df8c3f5063932340f30315a475382bfa81eea97434974ba8b119dbe1f67cfa8f887709b5823c92ab518b1e6ed65c26a655449cb8bfe76b4ad731dc33d36d309250353db95a691b49ddf206775b18e699bc776a0965e8ef8ff4255c9334a55961c8f6a65d967ea562bb98f8b537d2606822e23f92d6ccdcc2548d39f164a45c987d54adfa8a059e3298acbc4b6f61b26511e6132e53471c205916bca72cd0c9a932c2ef951dd059579d536606e0dfac1d824452143ad52d3b6e586cc1a79cae3c46fb63092ab4f9bcd488b2db69d898d2803a7324b9b478aec4ce142075e0a7ff16a2fe53daec9ebd3b2af8a349761999b8e9bd57ff9e984028f4a9af9bff6a93ad6c7c48ec1e8f57e4d4ba672ca873d76f0b0d4130ac30a53fccfea36541ace404aba29749315b789525555f9fc75beeadb642f8c1594737b3194d4c87ce3dd72b721a6498f6eaef645742c25795cae0958764f25d3b90bee2484c110dfb60fa01df16ba1411f3bfd950179f3a798f8c4767226b84975268d4c667dd454b129c6c6d7acf59f216b2085d7d86f35a9cf0a735a13923e0510ce8d585e26794eb096f8e0c901ab0237b1862002bb7ef1e4c2b066e3ea3581a7bde5b5076b095f4352ef82c662822b6d3a85511b5cf7f62d5e2cae3dfd2fd5280d65f45277340b93f8c820c687d68e8eb5e1de7031e070db53bc29826e9ff07df40608711bfd2e4da03e1ec3ff6550cd30b0400cf14733c732f13498be31cd7bc712c109860f311ffaa3c148ef9d3f1c1d7c67f3ca7857d310385ac1fde4af2c93456de9c4ea252ccda6b41eef0e0ac9370db9cf7355c5fb0563c3af3d7e4867f141b459af37a642d174ee59818385e16776d55c97d25afecffcb1dd53c6737d2d4f08fb25f8ca85708d165811dcb1ee5b721a79b2c10e5ae41d86ae1a5503d224fdfb919bea48298e6dd48679aae98b9148cb7968acb71eaf7799354ec6c7177454349f27ec82264d01226b19c5065e52b9259a973edcc1354d3f246c27a1fd100a9d98849c66ad05f2adc2e3d1608fceb2b72746ffbe5b7b30ada59bd528ffb9efd0024811378ec7b1024254cecae5cde1bec08c30980304ce9ff3d83aacbd1a309f8e081c39aff43abe73751c8d13a83a3479d8c1231033966b54a054c8f667b2e1f804e7829df51940a95c4410e00b01e69289f5143cb7a6937a2eaa7f7d52e591730adb8251c3571cb46bd7ac1718d52a61454c0834068c5089dcc13078152eb6c03baa41162bd8040bcd40d985194046894e1b9519c14ed46eeb92efd599565502834526e8ff9d8ac1f7ed7a314facee1e8e20cb9d3d6e74930bac5deacff170e904ae7912cac034a2e4173e41baeb14204a9d2e446a10f15db5796b99b9034addac464346ea0e08f2761ecf68508a064ec93ae5c5d964589b487576aac7a50e06f2a88775c5c29339a18d56257030e8ab99d17d7ad48655c0379f4b35744c56b5b70f92954b48647c55e102d67410fa9ff818c6130a14b6e214ece3ac6aeb96781bb80f1b814854f6a90a583d31091dc1ba542454e390425afa926460b7d7f40c85128fecc0e9842556de15ffa1dd27aff533196351ead566d3796863639db8808bfb26c0a4fbf264c6dfa70d3080730e2d6fa2bddba7a0422def52e12602b05662923e04cb4a324413c0cb7d90926c8dca7df5aa286b98ddd15346e39ec05b32fb7f145a943f68acc75d5c7b310eacd72dab4c6c341d678a14dd686f08afdb59388e12ae5ec99feb4fa51a7a5aa30cd81516746e7fc6818bdd3a7cf739754278f9ba497e268192757c4c238a6a8c0d7b41072eb51a8f39149c7f434e0d36e1d330b969af45ba58208e442ef28f531ca126417b7abb867d2a2dc3d5a4f91d64233e85fbab2641176d164aa60b74b3d1adf83d96e02135340c83617b3b8f67fd1d634dd030944182bedf759306e77d45b59b6ba36c58a56c0a52ff1872d6016f97b8d9249cfd5c7a3b86d0d00a580268484c1862bc972c8b288701c1be38ed779703bc97de4856f6de00f600ffadc6daea9f42a920756c9851d0622df4ec74e548130f116b334d577f17eb7c1be1c5a16c3878c04531cac4d81f796384590fc5b74b1b186f828083344f089e832389c0a93cac82a152f160d31185213c9495ce2e2515094a6f61d45d45defeb823a3998b0eb89ba839cab34335104435608f70d70ddbc99e44581b69f4b0c5c23abc8da5b9cc017e44b81512d1a0377029c561c8a016632fa3ef8df9f2712a66ac639c6ce305b2ab4ce040985535ee598d945b196bd1c6b0b3af95f82d6f507aca59035547196ffce52493a833768d74b12913d9319ed3ea792b3ae2cf2e0c695ea992b30d06036b4d99b14c78f05d51659a45111cbb9c5c31a6fa04f15c7a29e549eba38e263d5802786e8ee08cf5dae18faf59bae0d3c199ac3cd4987a62394cb93937b2b74a8e5e19d7524c0a76f7abbd0464a54d2b3532ded510a327c7f48cc680e08ef6611d4a95640237c462a0adfe2287cb00248c58c873ece01fad64945e538391ae1d42244ef5b0b3d38136ec282c07f977031443c94a6cbfe1da8283b540fa37518b4c7a4638112c814e40b95dc6f618a135eae9c2571a29ff7548a75e67f7e45a88e190cce30f168eae3f437b94145f1fab0fb1898918378a6b24f931912894de5b616a98efaa3466521d3febcbab29a96c49d5dbb0cb9bb72ca4bf24fa32228111b5e614c25284dcf74f6dd64018eceddae74e90380d4d996493604c0cada9b03396775c10c891e72634fda5d75c6545e4fe0bc8a8f5e55e667bed66dc979e5c40effcd67e0169f777f2c35646db0dc733318cecf0cb007465da70e60f32aa856f2d9d5cc65d135939a205ad7558db52e5b4697574d2d811f463cc1dab5082fc7b2c64312721e334ad85d1b3910dc5d5f781fedd08b8582e08eb5333135ab607a3f554f9869b9e88fef9d1ddc221c45a3d7945a9c4baa149783823d59e2663f54d5d5d7f0436c1fbc1b7959cb89867ae60a1318a5a82b8f4c7c1824320d8c2c32e7389e32cdb57a3d7ab6345915e329dc5ce8db2e3555ad2e3eadf186d6728ce179a58a0296e4ec6c84b70852e0e74eaa03486e9b3ef23111ece87dc3de73674d7498c60801ea316c4f4e5da1058e07ecd3f80cd444a94b72a13783b70569104bad251ddd81c612d4bb437f44f9468304c7e2a59711918d61d6340cb2b05aac09c9ce11cebe65f7d1d9783087eb8f1ecc2209ad595757486b61e2c5d1404aa06b6de91edbdabc493e8612a780b0b82969673350f16887fe5dc34f64d84769e541046f65e2a79f7ae5c9ac634ce2328b054b74037d51113679300953a68f240dc3375b587417f3471faa51d706db6a4950b95381a937a46f9460f0a399e208417d8d968c7123fa13ca2c8ca58d9fccdd2d465f0a3fa773423b74f2f6cb220264cbf40905b99682c1899ec087e369ee2d730b861f8411920f11a231a083c40836414769850330c2405413dcfc0c80e12ab9228cf2c25ecd80c19242529070b7de613def261b5b595c50b3074b1203ab224f0c4142851ea44480ec30ff3c18331774a853fbe07c23ccbe05d09ea4e2b15e31fdfe685b66301dcfb8afda77d31586a58a35f1766c76ba621984f81637320ee6b2bdbc926ebbd92c14e74cb278916d76d3c5bfa3b383e492e7947edc5164b82a6422e8983c2dfb064d037d1b1f61b223a4a6c76e0d0206565602458eca183e1060124a978f3e0948902634efc6b9e47dcf258570a029b4e413da8e756da54ce0e0895bc9f44518bb2b6e2eb8252aae2ad5f9e26cda02d2f599ec10f7b59bcf93c84940c93ab414b70ecd034ffb034b8177686200f3093c9339a02ba28d14520761927a8a8412fd023fbbdf3621299538071975f029af08704e300592ab1135dfbcd2bc95d11ae14d310e6359d6d30f37bc2a44eae1d001cfac8989cb353e6fed01df86a9bc18ff0d7cb2e72540335aa361a7ed88217d92582d64819b20ee487d90a6a0e311f6f39d002419281d9e45a61efb2a770a2cddee25b0b97cc94f80028752ddc38a2eeb6a9078333e62cca22e5a4fbd0820e1d5ce1b31546689b48c5e8669671c21f87930483f32ce46c61f6225ef907835396611b86389c5c070f67a0fc3e52a24896a7e287f58c3482c885b35ba802e0418b01fcc47184123106d60db765bb4305952b9cce7639ea14d6b5b60e844d4c2e902a3e200a846b9fb96c0a364560381a12a81fd868f23733c025f0a31cc2ae9b0373e061cc02075a74ff8ccc925aa2c9b28327df2f09542512dd839d7bb7192a42cfdd5e576ab81f9f9055fb096256b20b1a240bc535f4d3984355b04e1b92dfd864f453e2869d1230811a5bd46ebdb10c51f473369228e0de70c621a9daaedd8d07f56cd84b442e9e3a7c73395b8f7fed25ad4ff39b32c067c4f4a3e7744a0dd3d3c3746bf0dd9bddfaf1817c846a26f4f367122b307b0372a73ff1b65368c638a3560676115be083333da3cf47942c62c9d4422f26d3396b0a1ecc2170436aa6b5476ebc9f575e890d29a2ebc06abb31637b068bab4903e6735d8d75d603b701d105d79000f38eb56823c548b1962073d6542392b29ee0d4738139d4be562b65c433030e0ec3b12f672df8ea63770120378a756421e95c692265ea3645ad8595c145852b98e01eacbf1c8d160c855511d29219a606210ee6a8dba04eb08cd6fa693aa5500e65835f90481e06822202555d9049811957af318487485d41433e4ad4e1813f5c319d6c1f793a70b780102933ded832bd79659404a3f921440f099e99b05f18137d7e19280b78ee8e16a451579389b589101e42f1b079f3be829aac7d051f57aacb180503fb8466a12c9ac9d4093077f3329c974624c74e853eb976df2e62afb74c66296bcad0bae2aaf9b140cb349f2fef969ba6b4c62f6560a8e56997c061c71e7b42b2d38aeedde07cc2a2001259130c4ddd842fc73f79856bae197612f38c68576708f3d7538a9193fe624cea92079485bad98b9a00975c5c3ac1d2849c528fed73b5950b6ec6ca9a509b64ba4857defb2d0fe11661115480bfbd44fa4073e6f76e2ddf08472a79e20a0c84968d0688673aadb6e7220c7b87c5729f963b5e6e3ddbb6a7cf13588f5444cf8a167a677081063ebc0043adf57eb42016063a60a5e582572b49369e598eef8d480c45d0f828c44d8081ea7b35e5200f97d9f694412c8c9dbab6df7c247448b5f99e7236eafc51a61650c9e0adccb9e6dbc7909fa87fffa199f1548c6c2de364cec165c4d1b945505280df7cfa939f14312a7e9db0974de6781a3ffa6e953efae6884db2b0bdc5d2343decfe71f4107090ffdbd6e39d93ef12f128ef0a5ac022d176b005c04ea32b1e26010d6ed4649275ff41bc7a07d703546eda0474b8cb5b8cf1378b3e610a8ccec121cf08f9a5ba693b99df75184d8fd0649f2b18ff17c57d17015d8b985f24070a327e54f38879fa4db0e5f500ed027e5c77c1700d32b3fd3d1175a21e8270a76235b20bd3cd402bb3207367247ede2457dad9749200cfe449cb3958dd90e3e4d8113a167685aa4689fcbdef523954ab3e2a072a7bcb9b6630503439f4ef48d180f2d574bda915c13659ab4b7995d8012b42f8f02bdb4241b9752903453af80869e23ac8ed656430a68819b1ddc092b742a4f0407fa2824753a54084f16b53b6060024d15c5405aa7064cdeb481e2c3c8433d4a64708d800f29527fc1640b07701370abbc1832879a740b54db5195a2fb6474b47a716d68ea6fb36a86e768974b7f0ae885bf9aa5b2bd972f21541de955086cd688e6065eb45772562bd26aa2025af3521e4dcf31a2927e86597642accfc7d684dad2e1111900303fd46d169abd7cd130c6e374d4c2496f1e5b7528cf544035954076f78726f8da37507adb1fe26735da4725638cb9d8ffea43880bae0080326a16c433146a88d2d7b0c0f0ab877fe26fdbd2a0dfd5da74754cadf54e48451406a933ff0b203ac3544ecffaa5fa409641718e1dc7ebedf68e9fc37f03c0c4725bf449b1e28827055dbd036777a020b2671fd46ef8768134d00e6dc9ef7c0ba4002a58049c8d01c1a3e7747b0ee5f1cacc09e83d577a6c7b4f52d8a8edff66a3f917935e34fd161b0c288602a60ecead9d1ccf62ac78c9dadb3fdef472f414621b860ea0b3822245a20107a795f9c699f8f7123d37d3e23e298bb05b65605a29492f35dc0fba8600e15c22541f9999561124b6912eacea1ae2bd07dec0bbe7079b95dc1e090f84e12761a242c1c9daba59bcb58dc7da782a74898bbf3e5d358d577ad2770fe06755a949aa00262d44dc9b2a412161c83178eb0f677f5068e7e93a0de9de821fd7562f5cf5fa0011d6c6c0620cfa210a60036b651c436206a451155239175f1c972e023020fb6017d1539a00ea10e657ba02b8ef071b4bd794ecd7ba826f7f2e4cd5e9da50ccb486d7577a64b4e8d25a1b5c0ae773309f31b78385db76d04ad9b398c786b45c0870718eaa070f27a5502a5b2719e58b15b255fd86a6392f4099f272a21e8c2ea53e3a678346a41d1fff1790639a5fcdef583c213f7c9f4a8479487f36b83babec843c1bca56afe434312b3bcbf3b9db0e9e5e64055156fb2cc8de793b46c69d05a70b2624eb8ee2035f774d2185b467c81feea70425ecaedbb48467f0a0462fb49e36624b957e5238b5c9ad23a9f3c8cdc28294ec185edda53ebc24a9b7b1e2ff309f166eb4735ccd340b16d5b222807e3e29b8771a692841f154746fb63f2a5fab07b1b2702a54ba7bf67b2daf16007aa214226dd380443029afcb90a8fbf80a036ae26a3e9ac7a11f30e3066f1b0fef26f361b21850f91d4b9901b9a69ec004c30349351d58f2833bb52542c234d078d41ea0995cf6068d5e0adfc3230e7883d2c2695d1b6f1a1b3428f2aa82da355509662e8c72f1b85dcc09591a8b2ce81178301264afa49e747be46330e0cbca53fe1e2c1bc5c7e038df25c707402b5aaef6882db18cb5a8578ca1df3b2e1db04da2fe699af4db3eedd6f7c4761abb0cb34c09a464cb0e3cba64b8f2ae9dac22ea59367e99b72fd8b620165daccc00b1b129aff1a7f731a7f30d0db1173fda439e3c98ac65dcdd7860241efda85945794818703700ff7ddadeecfd1b6e7a286e927989063fd418c1612532fda7f17c68202bdcb70d02b201e6f37916e42cd5c58d60dd7d5538c1e0e2c9d052fbb60e47985daf99f97ffbf96a106541810e0a565b89bd134ec521e009dab8f64d7571c83bd94765d55f08983d5db37f6b22c984ce08a765d666877406321b8bab0f744aea02093600387b228379143a32c77ed066226ca385a9703d4a389bc48c10eee9b0c39126d42b6863e505e9d096531ac79ce825d73de9df9bb8046db9f9a941c3c08f0407bf4baf9409234b07b7321894e53767a54164e7b0a10eebaba92a241ad6a9436baea37a8dd6b5f0e8ab444eaa53ea84909d3c4482fa5286c1535733131e6c744ad6f2d9c8ea2fe19cb20f2f4979c2b4923890f335e52e56100543305f35d0b895bba9194a610c8e01c38cb378c15245e3af6b5f4db5d15369d5629d854c92671d29117abce2d57394f176e9239355b59609331945f719d54c53599c3a68ae0fe720e97aa4c6923559aade77d24e199ea06c4680e400ed2ca74065e95afb9035a61a775a81885588175aa5e8f56c29be90a588531e6ed918993371278d86f1225c35455178079180c8689cb48b5c5e3c2ac98234913fdc41432d0be5aba6a449a5d53c79ac8337d12b737c50a604a1dfa73eb7ad381c12a39efc8c9e13dd4c3062663e2e2e04558826b28cc700615cec997c9d109274c432135f0ad5096771b1c88f88393c0edcfc4be6a683533b928928f0d215d1a5236d26f2dfca7980a2ebc3ae208375df3cd7cf747da251238e499c46616421ecfed7fa3ce3600a8b6bc5a1521320b8077e38ccf283817aa553b0135b664d55671784ea28b6e1df7f70d21f34be4c4dadd7f852fe2948b487c7a9330118633064ef1d54b755548ef82edc59fe7b1ffdfa0c8e49a6cc5a9a6172fe9e45277ae48f0dc1d7e88ad29bad465a7fbaaf00703d6379fa384872047e4f5d08cb825dc461c7d5091ae9c5a9263b2dfd875217271bb8303457fc86c9a948f6b5606575bd6f2a3561dae3c32eb5804d693c1c652bec7d01dda4191fce039c99e32b317493102060cd7d12263732fa1535261db270222afce07650a53a7198b3312c090361ab907391c4331e2352551f776dbb1568b92dea390a4dd782c51016d15114566a4c1e6bc4543451880b4b52cf8f83b3cb94dbf7bf746634307dfb8dbb976378a2064bcd998dcd35e6769e9a08842bb6db4c3cbafeaf33dc71e36c8bae619ebecb470fd604db420b912677b06a5b41e70d0f59815837f919e0351d77ec3c4d8abfcbc1e5407c0a651c5cce7456e95de3337ba80313d06a67ce7c0d369db4a0708c203a1c1404c024cebdf9e7a1a0e7ee3067f934e2c9490a86f21bd844720534125d16fe144b20b848063b95144a0e65e9b9638d046124a24a84a78d24cc15713324b24c564827f30b61512247810ff699b9080e0a0cf882cb9b16914472d598e3bbad470c479d0899a430ca10d7c2f6d3c07f1f8c918e53b95301f224b29c6829e01b4d405595712d0c15accb86978f88d5f63b5459d804b3e2896bf7e48541f1ae23e3837277b4934bcdf0f2901de353b78d5705f56cd8280ca178501b0354a58b334464361310fb262098ddcf6093c52c1889e49e04f0da354463923b7448e1b3a35331444a6c1ca466fd7999cc7b59af49b98a5361c84594c5779974fc63f5ca01ab9494a5482a837f5bb21a41fb293eb4a39d3b07e00cfeb75a016172aefb9b31f144ffb8104869e4a232fb63e48b1687c9446439b69e21a2c203769ff4b054fc743d22e0bfeac794940b7744c97e63ed4860bf00098ee2eb43c6d4e39e1f550268bf7b7bcde43b629cf3ed35ad0b23d0acbe2d9e108c2e0e6a236ddf7d35bfa4d59d780709f0b46e6362c1f758359878de620e8727586be0e3b416d99f221344b3b532fe107ead926ec4b591020bb7cc92120600c31a59e0046308e4393cc3fbc94c16f316e91b3adeef1148f063fe189f72eae0b702ee84b95698cb6b69e5a75ef9ee07a1fde23643933882663b7cb75e739f8c0e4e0286277e7d0cdb069e381647a508443a7143820336fb90b75e9b009c8a4b569726d5d85834074549a681c9436200718002dd58ea0039b4c58efae6060e60ccbcdbcafd80409d7160b2f763ce92bd50926ed7d8628b596fad6e39d0f8a199c7edf7e4354b8b10f4698711b054ac0f55e18ac11e1e51a76534507c5037a6fb0d0b8767849cbe4ce8dec945c461326b4cb020a12e6685b30903a4e075aeb77ae4e2134a1d12d351b63f235de02671181cfc4a8358fb745d5c3bd1d363d81088ccd650eb496743ef0c7f7fd708d73a6caf5247e0713c44cd5708e719f0b3324671fa2518ffc847d41444bda9652ca245392017206280641065adc220de628ddea22a3302d61b0a1a1580c0b9622a3ee64c75cdae39860f9e53631176f33776c6e761867d8a5c718af565d4a8f3105197a6ac73d3dcd49a9558a86bdb0148179752b48084a142e3c4f12d9af813c20270d8b5aa86ea3b4af555bd2b0bbbb9bbfee8e714185d87a2956046d5abd52a7d9f374462b434f727bec11c48a036bb316ee38e52064dd76815970a7fd8739a79cd215638c31084f5c3d19ce044ad54fa916c968740640637678d25dbe7858d28b91b53ac0970020975f4895dc977980b30e6659f7687309cc5faf20212851c284d9628b2e5ddc8613fb3110901387c92a3eaf6f33770f0530f41c76cfb49442ab687821a442d41f8f6e9949ba6af1cb1898d5308ffcd6b6c06debfff6bc66b19a47c714f716449d66e8350ef4faa1d72d0040af73dc2f04d73b005441638622a64f779f7346fa011a6f09d1218f098238e7cbd9c130610e9dde30875f0450f60cc31cbecd70fa4c97dadd1dc4e6891a633776148a4211d6ad2f0ec529918a18f7635da3f66cdcc07e3146da42dd8ab139a79cf28d84c055affa2866e4a32806ad0f5883405874fd1372f95d782d1ec129a38685ff2af8a5930368ae974a7f54e44343312c55ac2000010e735230fb310c46c58b24a574d2d9b2baf6040a7e6428020d131078590ab41a40c58f272e50fec429fdef6907034b97924aeab204fa344ec9037322922c2b537dfa9c7452f75a2b11394120330f38b707c19d76295da3a139c11f26401ef11f10860677da691892c2a1974a372e3f0eb3707b461cfe6e4f1ccec0ed491fd5ef8c1a72dba2b4802edd5d4a4a99db2573bb9c53327b37d0194035ea50cfbe5a29e59433cbbafe1ac8a3dfeb2197a57b0dcce9f79aa5d7ef750b97a5d7c82eb60bb6d92ea175ab5dba4f9fd2d4552b55efb21a647223b427756025b7bb94d264d2bad530a0575a4a4925a57252d36b0cbdea0d614efd9add50c39e4e5d6a79c49833bae5915b736e86d167bc837eb558e66733f7a4ccb3bb7a84edee6e29a5cf6e185a4a9f2da5cfe69646aecb4e4af59a447d16b4cf5ac16a402e546928eaa1560c4b152b63ee8742d5eaa33d140ff6639807a3628b36ef592dcdc2d5c355f304798010e841afff73e16ad7abbbe66160910329b76d041d4cb8cf10eb22a3303860b1608e2989a56a2de6454c48a85b309ec2543c1d3ed88f8382a2c4a21550903963074300c12422ddfa2972c4f3aa67e3c77e508c0b31d02cc8a88e9a55316e554c85a55b9f2a486545a525966a92ee6723c4d904c555b4f9b9ad73fa4f75fbcb41f31fca3ed46c826e7c5550d4b19d2a1657f1696a9db1f6a40aca388d13400e021c70e7ab6271dbac55c56e8f5bdf149bb98f3f237776524a3f39d9e568afd42ada334c11de2d4a8ba0975f5622728240661e701982dbb5ba5483e808698cab06053524361980620c8c804924295918f28a12031f71815d0c24a751f69fea426a815ec52f75d9b62179a7821108b79f833cfa85b0e4604ebf10961cf4fa85b074f739bd7b98d39cec5810e21d4412d2ad4ea15bdca9288ca620a807dc69970be8a5c4893f172e5bb65cb922c2fd3c113ccff33c0f0150e7027015df0692fdf8e7a7d53de04e47317994315a400c15c424f191b7b066b1e2e2463038a8030128e4f3583ba273f3c39d19b4c48d1d88e1813bd3888d3e4662301c860742713f0f0acff33c8fe5c33b16600e0e19f6e322af880b0fdc9962c8e0c2798b186009f200224752082304494c99580f05c8872c1f50477b18dbfece7441e2a983718505b61a00bdf8b0c5d39ec61d00aefa4bdc061b1024ea7870d5ad66c1dec0e59e919d8539fd35b7bfd2be5acdc20b18217431a69188010583063228a9763c6f870a18e851b2c2c25204a684a55b45ddfa4a46252d252e3ba51d2e0c7c3fcfab19c27ea5582956b242bd74746482aa8e12044bfde262b94e497fd2974dbf762d50daa54ab077bebdb3731b714a38280356bbbfb4518389aee8a4c3f4983eeaa4f813950cede891e3361150a7f4b091b8f0a7b8f17b28ea943a5703661d1235ca2537c67762c58dffe5f0da886b242f13643f09054ab7be865d5853a151e08e0c7a2247b77afa9c724af7152c8f7716d011c5529aa35bed3b3cf4ec0b45ee0b2e5cb65a542305fbf3f3f3d3432385e649e0eb933e094cf3564edbf1c4266cadd574b3cf208f4cbb590cb79eea370ca5ecbdfa27136a97412f3bdd8c03b79e4ab534f33c3d53ea2accc9b253f77940e31c7a99d7ad48c4044f26c45bfa1d5eed768c10a4bdf8343434ae759dc1a5fbf429d7f802a92d479645d2fd32571542a910dcf187173583bdb990cb17345c18b885e2cffdaa4f4da2c17e5da5e87e5468470e2ceac8668fd385fd6a12aa0beb81148ac5eea7fd5c7e3f05451dea62fabafcdf0976f914021a9683eecc17f73b11fdc01eeb1ab21f75b92e3f650ba9ebf24fa4a8a375a65afb27120a3d25d54248f69376c4934f644e06dbdf51bad51d0fbd69267652e8f3b48fcade43bb9a14a9504da2433da810ab0626c659833f6417f10fd9b518e6e1efdf57c09dd8751930c7dfc958f9a6db363f17aec0c618ccf11aacec3e7854c48a3ad9db2ef2af5bd645a0b8f21fbace29b1fd54da732a259db4d24a2ba59476122687b61b6cf4973039d42d31dd4ac12c0bfbf793b0ebef32765dc26aad3129a6e8eed1db630e237ab0478ee5a33dfed50c2c7c22fb810bac3b01bf04441661dcef35971878eacd89852a7681b95b0e262202baec00244939acb0f06dccb0f04f6658f8364958f838562c37c5c22f0d61f94db12dc6e04edfb81ac3a62820024f51201381fcec610ffcfadea552f0f91e3b1524fdd8a552882f5f7645e4c7acf3e2ea09fb6df73dce47e4894122eca11c941cec710ef6c42daef8cdb07fbf8e3159e27e5d646d77472332fee285b1bbb8ccb10e19318f15c01dee3a0630a7ff42fb23855f71650473b280abfeae48526e3f17b79fb726f693af57d4a94141f5be48e80a9b4335c63fe2f7d732e04e1450a7bd80550cff885d1f318ffe2e95582c1d3a40002195bab95fdfb0910a6cfcaf06c5eeb75d5a83fd6ad06d28ede56065907cb5f7ab2b36956561ed85528861c1ed1ff221bdfb751deaafd50edd9e5d27c5152784fdea2bbaac129bfdd426d903694932c4b1638c1d6367a5d29b4aa552297ac7c3a980c91857ab49385becd75a91d36b6fa487e68df4f0ab10754c5d6aa62b32f3a637d263df484f5f7ecba91057f289edc60dec0df65364c4577bd109e7440f5612f6038a3a304b0f3dfcf105a55bf37240e00d818c9d37151f0a1788b9d1d51e67e9e17699f8c3c523ed319f21051319ee078f22fbd8985893099efc23670a12a403f636c31ff2bbbb6f08ca63dd607b8420ed310cf55f18c1cf2dfde44240c3664f6188e14d1e79c488eaa05297ae30f16b28e6eeeeee6e975ebd7a756f6fcebb224b8c9614dde0e40625a6e8248c285c92c65c78f289b0bb418b959ffbc1a41b922e7f117641132c056189a464606188c15e4f0273f8dd06c88367ba5848a4c4e87eee3a72f93fbf49c470284b5e17122d01bafcaec45f0c05c2660e818c95dfd60281d08b320432d61d089078a57cd941d613d66391f6b8fd48b75afbd1361dec0793b29a09d8600c1076fee6c4d600c5e81a88aedb427df9a6183b1266aebb7eb07c14754acf48b1a75dfee46abbd01e7ccac5306b2620c614088385444cb4dc0f26bd46a45b90888995cb5f84df5da69e5c5feaba32e9c6f77a02226ff6cdf17d8101376321ae9c2f9f7c22e58c48ae8bae1b0219fbec4aa2ce07e08a5f066bc3656e72f99989c01c7620ef0bfb19b90cc5c2f7a01b1e78dbe00e1039b3f95b5fae756bafbd3dd4f42ee28c66c214fd37b84353a95b71c01f15d8e04ebb3b3bc7d83d48a975833beddc84494a96124ac8dd25449f730a8ffd3e85769d99992b73b384518c54f9a0152da0156f1ee69cf3bd9b33ab947673c620af9ced31a9ddbbddddbbbbdbdbddb9249194522a37afdd5ab8fb102ed61fa22e0f415d762f2638e794de5ebdd2bd21189f33f7c9eb40bc69b80ec43b5fa07796bcb030f07cf8b38b21de1b9fa6c670fb6589898d2fb596b1a594d2b9ad74838def564ab36dd6b3f41f94a49470d53f616daffa8dd18904c2ba1de9f6b4fbdc6bf6d59f763cd15b3a8c32c452a954eabeecb32ceb6a7bb1d2d9dddd63b87b77f7b9bb77bb7bbb3331c1d9b269e7ee5fe7dcb63ba5fca9ba2e339dfab2fbd9dd2d913e2965731bcc6959e7943fe5b7301b0634fe15eacc979da589ab5803c6bb32d6e6604fec6bfb09d318a3a5c2c6a71fe9d31d28b8ea7804fa802d5b89ed87dd10a80568cec993277f77777377739b7e28a59432477f722f30a522a5f429a54f297d324b39dda52739952de594b3639dddddddddcd39fb29a5f427a52f69adc1dd59bab3740f41f70e23522a57a7457d254be9d2997b812fa748b8dc51d350a81c39543b5a1f8c797b37486874cf62043d2ed21c0e73e6b36b854fdef9ed6dec9af20885f8b3e369afc7b01fbb188afdce88441d214549b66357d67dd53294ee0721fe7cdb14bb991ebd6abfb1639566b07f9ba471bb7db09f67615acfa46182aa8fa6e8ce376d5e2ccd859b177b337774c09cf95f5c411ef3e1dfc86221f00780f33db8f3c19dcf823bf44e30ee845cdcf973ce04ec686f7eec3c98339fa7bd28ecac3f7ffe4c4140be7f0af2bd4bf5a4e09f8a9d10d3f438565ccda71c8c5914f6db9b1fbbad3d6f2804320c77e2cf9f3f1faa66d7024d11771c23ea401384ccfcf547c82e5d4aefa875776cc87d100a77f97117723f95cded5d7caef3fadc9d2561e2961ddd5dc609579fd5c02c30c8e2c2bf15563bb3af791c75650fb025e0c2e7bee5d30a71f0c458d4813dd068d239c30373fa618c672609d3943476cd6c74ddb6bb14bb6ad9c9a7b91abb351c2e3e43087bd040e8331ecc816f621bdcefee6ebfbecd7ddd8d6f9a1d69241513ecfe2f7e7bc7f6961dd482a8eeee3ea5fbe7eeeeade851ca661e31c637217e7497ec2ebdeab507dfdd3d83df3528c627313e89f1c9f4e9f2894ff924c62752fa8423a0723a0972307dba7ce2533e9153c26230987c024673675d259573ce39699554e32a7ef30072c358a761bcea7714b00e0f5fb179606db861b18d2766bbd5d073ff78e137ffa03c66a40fe7752a301b68966525ad2be5d998473f64f9c04282bc343af06cb3db4af24bcc2d6fc9e7b72ce10f14f3681b310d1683c1ee507b54daeb2abdeaef47f18f5e02f2e8d7628509148c7f64a5ec668a0fcb72ef631732bf55a2e6f2abbcc8f2b1c318be61e70662c9cc5ce2c9cc4718885f3f44e128973f9e7299a95cfe1a7a3e1eba5bee87fa5445f7db71b31e377b68829bbd67d9db1e906ef65b1337fbf76107377b0f4a969b3deb071e6ef6f5e493f9a8954641a9ead21d97be53faf645c5a5bf2db99488072b2e25eac1c9ab864b7f9e7c286c65774eedcb71a5ea4af935c995f2b71eaefcdf618c2b1fc6bcd9c31626e8c116e07e396eec72a30e576efced09096e7ce844cc8d11429d052489a2e5484ff774ec669c31d9dec9114debc881df73d081ca4910d76d92f85d0719d7fdabbf4d729d2887a2eb0520c3be4a09a2cd6a50ec575d600364868b264c510d900e94ccd81a929c6a304483830d5ad28c0f3798c49c8c4852ea02a651b121431a32b10049456d43a5296852d6058789dab2ee842f5cb50637c813be18a267d8e0278411226ab20612980be8041a88792d39c10b24221c88407202126a8319d528a79453065844f10cfbf9f94902051658c847d12ba5941bac220b34ba2a255d10e08a9821b058c3abc1d628218011971fc2709982c44505555e315d133c3900be7f732d40d8dd0f04deee422063639057761ffc0ef0ed7fc8b9ea34cdd29c73cee9b2a400538f1d5b8e0fa57286566e0bf3fdb36c9a2219cbd77dce2e65fa69ea4ae85b3f7b9389a3fff92d99ba5409f24d0f4496264ff3c48cf39f4e3d63e7a1964cfed9d7a813dfd479a52eab3663dd16f8e967943ee3c0f2a534fb5a7afeaf4b95ba12fa7e7c53a68ff18d5c53978a80ec605c953a23b7d6cf9e27661cfdca516a648e2076cc32eb53dad1e95475e97faa4ba594df101500ca58be52d29ff53fbe5daa7625c0f6e8cf48a53432392231a150728b417a282b96ffd32e10fed9cdeeb3dd10efb6c09fc763fdf9fd9d0bc00c3f5f722d7097a2fff1ec52b44b01c6d5173bc057fa4bce392a893132113b3211bd99581965f46690320ad92da390395460f9654fbe1d7fe8f6a2bd688fd18610962337045ab9115a7182374fe960b79a352c7cde6c7b5d71e8af31816596eed25517e2f02e27a5d38bf92e272dc3babbbbfb74af5e7dfa0985eaee5ec88f5942d9d4a374a78e453de2914ff36442098e8263e157983c4611c1b8bbbbbb7b742ee5cfd73d8a0bbbdafdd92c22f274cb163fa4a85e35f774361ba2356bd87eea75d320acbc1205fff9e1e14522d31e817419df4e4d7270526d669ae4bc7e8dfff5462ea54ac5ce664e58affbf6fa574b2c240262e23a6cda720659b4f041d2f0821ca89849b20b89808e80edd89054f413c491afa35c57b71806898018733b53726b609a89bbddfddcf5c31d38b9cbf7e64229963841fda07460bf5e95a949dd2a232474c40c5babc939cda5fd58b11288036a194e0a7de7a4b8be87be76a4b51fbeda4fd45cdd82b36ba1ec65b39fae26b5b78a6285ba1538b098a0ea63cd46019aaaa6477bfd260981f4e58ed5c572cb8e9dbb494a7902d293da87cc41e8791186ef5ec467f033cfaf9306774c3bf2993d56ddb88cdba6920b773ebf264f65587e9e16c363d24a3b3c2fbbda9b9859d51dfdb553097ed98b9810aff3b4698686d2d8696be03db7e1a8e16900d4e117f462d3026251e10b6e7ffc8239fd351a843b6ce316b78fef5d9e368db1aad3dfa07adb50271f7fd40e6c650f5f832d1f156e17527eb9c03cb8122705ae6139c808ed3da05de01f17f2e806d30098d365f06436e0683637361cf360a8be7bddde6b75cf9d95402f49d0248186124b684b28a9e1a1189625c2b81f17311730a6ff380c8bf93889892df7eb9f3ea2fdd7ae5672faaf9df42b4888ca93fb35ec7e4de5720f55a1f9afad60b9fc5dd4464dd0703b8cfdaf915a8c9aff7a4c27fdb89c70e27e11e8b2139bffe2aba1dcfc17a34421d8900c1cada0fe8b58b4e0fc17b944a3cb1f8f221297fb4531718c8dff62522c73e33f3fe240ecaf211dae47d9fe73219f82e33fa7e2432998c1c581e3b7930f8eed6f9c7cb61b2958726fbc8d93cf8d6ae3714e3e36709c68c1c579d4c907a7a2fee6e4837204dc5cb9d9716f6e9aa8726f9a20e3de3401746fdee6e47303c35c9baf39f9d8780d9513dc9ab7279f1afb34271f4bc3841697e6674e3e3433ae3bf3a793cfcca7dd13ea9ede4f28d8724f4c10714f49f7f4dac9e7a4bde9e4a39996f8e19a4aa5cf4e3ea52cb24c092e6ef61b6c05377ba8040bde004ad09080245a005b338798162e393b53bab8f1372492b8f13f8919a60835c72e0ebed96279b375ca4bc93cc1162a74f0c0da112eb893cb9d5f4f90c39d4f73f2999bbb0b881250090307318250f0a40a0d5e77779ff9b4d5fd501edc2f871723a4101951e60822ee7c2804833bfff4cc02244e7076342e79119a420a19d7dfa4a306fbd9ff92a3081bbe1015714424250577ea2801113de41031c59ddb131a4e6c378bda5ad575aa17517ab8fed4321162422d435471fd65016c305b68704443bceedca604beb842c6173e5401e38c259aa4b1e3f2ef60219cb83e6f5082865bde2d114c40a6d634a9b6d68a83521a84144c6c4811b405d1a5061c2a60378200c3044585cb4610366072138413441a2e9b2a84504133d45021e626280724768a242c3f36f6872534598e6a8e683283058b7da2c9494b8c468b12ed05b019239769cbcfe92849090b921664832699162053509925f50547251b9050298eb21c924c297e2a1032892a91835f419a444d50d812c382499657174c509022466402325c2864817d0774e403f8f1f2f2486033290410026685355d0885172804c085172d573cd1888ef40a2aa94e2c940d05a228bd925e909098a015ae2a57aaa2f05206083d784943882f493a2db67421145f5e55be0801021216c785507c5901192c80be780102195fcc00e10b3b2f84e20b1a5cbea8b1ede0e5e7628123c01ca7d1c1f99b26127570baae5ba65814b91481b5e743b07e1b3a0cc19a23626f7b4003db37d57ff3a9f8366fa427d58ff3a918a3919ef88a3ad00b18182d4ee8a0092ac2f4f4e976e7a9c07eac5d2a3ec42908e0fccd5300a74bc99ba7404a76426c3cea610fce532a36b8f88a2b7f141783e2cadf867ba5e4e37c6a3eea8df4dc7029f9379f9a5d0a02376ff329dcbccdcfb7e98a2031bb14701ed515b1f99b37d29345617988760cc3e150dc1657d186b35187481ce163cd7cd6fa401dfe0212893a0c13015e815b6097cf5ed3676b856d30867957eb3ed6e52fa04ebfc2c09d25200ceed4bc7d53f7c130a5ee835b64dd07bbd4ee835b68f7c12bb3fb4490ddc75a71355c7cc19c8f61b15f51276e812bffc8035cf9bbed3e1e5bd0749fd765c6e34b049397ba8fc7cae370d44cd95dd40273fc3b2a69cf2350175dedb9ff0a08dbef3f334d334569e645b890b5e27064b507dce12702736ad46124e0aa753e30d37d3cb6e8a275dfc32ba50e26b178ac3cee71d444ee780a87c18165243e6a8fc5c820e443d5477374ddc7fde0faf3c09d78fdef08ee70cc901cde0ecfdf6bcf860ef6f371b9679b43e2fbf30beef4fbb3e023eac09e67253ee67a9d9e4ffffa3e587fcaf9b83e7da07c584b7344c60b49121653bcfddc04eef8f7b3138eddb67255b0c00a2a18a9b082741d565c452b184c17b8055ea13e5fa3b5a2acccf11f6f5705299038b9b2fbf8a592ff0c833936f070bbff83d8b10be6f473317a52c535aa2940f262808d3f857c26c618638c11be4fce1f6e5eace9fb249d7fc4f9b1f6da4a7b558aacd05eafd09e0d1d5660a15b90c80a083bffc80fdc8197a57d9fbe9f59007f084995c03f73885d7e2355e04ec63aba7d850b5caefb77856ea5a6d77eca69593011e246d49c3ed81b59e0ce07b79f81ea37cd4c09ecccd3fcc4002b690f88e397c9b5839d1d0b2bb4e7a161eba3cab01fbb5cddf23f4203cd0ebe0789f8fdaca823847facb0d9ee21504be54e1c6c4fe3029b3da8b46c194a7a1aa219000000410013160000200c0a054422915018c8a9b67d14800f719040744e978ae3b12c85611404410c318000600c418610620c62a886ea003de5e1d9a6350566125d925067371e45d432140ab765f015d76e64b3ecde383c80a8aec68372f645c06a6f9a20fdb21f7a15b373a77fedfd873f223d35808229d389e38e892ef1045b7da152b4deb5359a561cd54baee34b4c39d2e8ab446f9f902ef46af036857fbc91207720913d19ba0ba8afce2fe68e1bbcd0e4ce5081340aef8b7d91ccd1f44ecc6571816a96a796b7c9bb2069111301a4b6bcd66c20000a0796d7169110a40cd5b9488380628753c9193fa8f3512a271ee8af624feb46ceae93879a54025b8385f5de11a504ae9713d172d05f5ea13b69234cd46b0cad69e59b7c424aa2253c3fcb8ccffe5414af359872b7940c3d22907a94696bfb79a198db57c27d71e10de7f3e9c75aa629cd793b6eee72a03c4daaa834e26af83b22edef50ac2d7787d1c5de6b138cd076763a6a41068dd8fc04a5111a895879d2a1f3748873bf74e441f96db708494f02418cd0e580419b4cf32f515c398e7b43f86fabf3869d8408c10566477077487f066b4ca2f2c20a1170ca6309cc3f4cb0ae25a9181f88a59f8c702312f2fe4b91606178d4e37e52abc06d3da073405d03065ef7558f4e6877c3c0a60f129174f5cfbcf836221f7104c090c4d69419136775b4695424d15091bc6cb08cabce75fdb81294a378704fdc8dfc4ce246aed7f5f68975a2682c2564368395d1c1d55a858eca725e07602f16ac9f7c206efb827ce238b795a13bbd95fe285d26bc9e2259e2cf6b47bcfd3f2ab4899b250fc6edc31cdd036a3815f9d8998154bb12cddee55bfb591f0b165b0ed2dd5428ef6eff41a4420f2bf0d68ffb5eaa2e14bfe815803a8145d118d1d63a775433f5a54190042589a12d37e77b44141afbc57dd47447f5f3085d970efb9ae8af554c66fda82e45248db79a63dc8ff59e23019175c6a1accae9d4649a58341d325ca21ee53146443ce8ef1a2e739f182061ae0fc839b999f1949bbe90856e1372163fea45aa4aa1bab09c1a98174b440042a9be74abc33e9ad4cd026638ac1e21d2b98a8ee13fb5be093b0b7a59ad958bfadace2a1dbb6e56204935b68e7167b3cb4f8457c4200b48dfec56ce1b678a1d640b763bc8a0d21785f17e66344e7aab3f8aea7713679f111d52b9b2a0b7a37dc8a19d4b8a95cd8b66fd3a9dd5b4006b6bb89c63c5b3a8935622560a32055257dafb45344353d095f35fbfb7945f5ada3ad537ef82d6143ec638ee6bdbb695ab763b753d93a91b0d66891673081c54c2bc08b1a0083b77e6a31721d8cc5bb8534cfa90a88e64adcd117222166801f8935953b2da05650471f3c9a7e795e98dbc27b85853f053f97dce5416bf3a222e7298c683ee5d41bac704ae076da3f8ebf58450bbd30b3984f0360ca2a7a3e72e3809801c3c3bd35f5304009e728b29033d1fe384dbc12aa804d7239d2d814a3ca5c3439d4e60da44b26eeafaf7ce20c41c2cb41f4ff56e0916986792fa07561f003d35fcbcfea7a138b0f6a1d0a27a3ba24204822cf5c1efdd0a3417ed56b902c9733ca16306dd6ee822144f85cfffd42885025e5359eb3b8d24d57750a45fdfb6867a513b7e4d778e47d23ae53006d5dc448b2e1a97cb8b8d4fea4573cb193e1fa4c3559433940ed1208ea1a4c20537eefed9ba92c363d3bbc097dbdd46705de85dc5f5ffe32205197e46125e25d4c669e9e3d593bf8c291ccb71d5d523d3455ee885124901243037db0532b7adae9ef37d7f986b3647325060968c81a00ccbb4b54da2a29c2019b454758dd0ca08a078d3768ce5898811da85a1c6b20029553cc32162a8a647c1fe6bab8cf7b3d10b17a13372c75c6b88e9707518bf1479b489ebc75d5da942f535e4fe946ab691102bc258635eac645d8550044fccc1d89f86ec8fc601efd5f0db9f65cc49dd44eee80a4650f52a72e88c6e685df55fd921deffffde581be8eb1a331903af255f902f71f09e1105f4b12706443a706479b83d406fc22fbca0313144056cf5fe53bd611b30047548cd97b0592c02d46a96d2b454cbd1de411f420364160b5600f1ba3693c45ffb94e8db5f9ac35484f878adc2ef4183511e24b239efa95db0f42797f4727ee519f9441dc5afab8260dad74af73f2d5aa456bbff575a36d327320fd0bcab9bb282c935680d3d353d2d70ef283dbad477ad103e0248331f224a6f0409bb72ca44d602292e9894de5b634eb847cdb63381674a7a6d8d39211e35df8e24de29e935ad9d11fa5173694712ef94f4da9a33423b6ab61d493c54d27b6b641b302d5bedfe27a9d6269d94f153947bf2003964a8d45619913ec14f8c3b74b51aa92fa88388c27be27e1f9a50a8b04cfaf83850d5b6c885124404417113206e454fc7ad61d825b07bc4906575eb409b47948d2914b6a7d74a9d860ab37a8513ef533d3df45f17695bc04b71f38c8139a38743ee2843aa76b683ba2e7f5b7e9223017a36ff5c8b07d36889814d14d3a055e43e89cb36f80ac1bced7088b86723723f39f8e39ecd876778bb46ef7b66dcee81237dbca09d5ae8b346f86dbbe6b90501ab64e5ac75ed807ef1501376bbfc7687b662827768ddebfc2227328c917f6da034364d39c1aa9e4edcc6c3f7fd915d21b872ed020c8ef8e57fc2fea6878a4cfbed89b482fa70771097b49be4bd1ab8bbf7a80b69114d8b8d91f629ad7789b86e036fca61eae49c85cd7d7f432f5af0ad3518e42ca2166029b6fecbc3fe1efb929cd0d4ef27c70e4d018d49184c3d0cbaa45ab8bd67748559792787324806154819077b6189c056c462599261ffbb6353caac41edfeed1539dd5319ed50a257bb106fb01fffd0bb2680fdb0b6f81f91436ce5df002515018d9362a1811e56d3b77288f699da832ec54157d01cfe0d48304f2e9fa84477022db268d15158633d84c2613be8c2c8a10dca95e84ba49ecbcc0f147aad3cfe656e856e8e1dc454cce845fb93a00470131d207abe769477c95e44a89647e0e32e5fd62e4a344a41754b90e23536d03ce3f0e8c637941a541cefbc1d4a5555ac8042db1cf57b0db17ffdff44f8e2e0107070b50fca70436c9e0f48cf49c7e7a731f40585429f1eef818fec719ddfc89eea8cd15fe851812ca0b60caa252faecedc1575f1e390540dfc27b789346d77018ab61b96804909b19b263c46db58f9b6be393eca1d72ff07f547ecfa0f02c46b91cfc1dabdc12d71f53882ec9b60d6e496dbb2fcfe2214ab105c56cadc80ee5a8ea0a00ac827680b7c3efdc19b4216f3a311ab6129739fd412bd8507965720d48a8a368f77715ab90dec5fa0b8071de8928f08aaa980de8d1969e3476e2e7182ee09130f39cd626f3c2e255614cc596fc6a5c29a2adaecdb609ba1dccfc702d3d93ed347efb320fdf7e13dd04eae4ae4ad9730265dadb29708fdb8c1d916a682aea2124266a647a2c7a53044afef1e923dc777796ddfa8b2319e7896577b99201d110082c231da14936d87f498cd0235693a616ce8785171395a3f299cebfe7660fc0cdf04c167439a2e3f2b6d545bdc92e1b98d2e57ae99c3d01b0a7e589d78d5326fa9c0a850127a00e771ce2a3e38abb4a3941c95085fcd7a1f338663c77536b2068db33bdb889cb5310bb807681e08d74ac8cc827b3938173f1514b2f944131d7af2a7ee28319f16156d3241b8384dce64b4b6dd1d33747cc0589150770061f8509b95533cecbb0f67104ae1276c9f490b4e802225dfcc322b725a80f19e097b4e57b53aeb8e560710f195542850201a377183ac48b74e13d14a05528d91a27f05d292c4de184b2983221b3e66139148fb7e881cd4ecb27b0313db55c6cb7e0d1397697f69e657a52e608866189ddbf672d39a79cc652ece7a64a63c13024875b354009e0da54f5f2813223fa5268b75bd1c54078be0400b2e63acfe199e12f8e49e415803557a3fcd5ed591c2635bc63832d1e9cd3a8920cd9a29375356cf464e14adfa2e471035cd1efd9976f40660abec9f64a438539d4b70c57653c30bfdd38de3643815cd2f056649efd241fd1c7aa7d38d6e184d5ab11717d34dbde29ebf281c66a513e28cc20e8c9c72ca9c1b28cf0db40bf45bf2bc45dd3fbc60a612794cf1cb21e3a319abeaee817334e50cdd70f66d29412aec04d8d7f46c3dd883e6ffc6293044a651e1178b72988592c9c20693ba56790cda158b7519bc01c1762588ace2c4af0f1e5ea0ec0d64bb59d49f6a8c451bff885078c17442d35338ae5ad98c3777cf26d37e1b1fd2a33b906e538580cb758eeed6a3c5c85d212a124d277654c8d71ce76d03bc39f6cc72a3a64fcf8b076fe2e4f63f6ef1fb6bd8d23d250d9d1510c3b9a4168417d95f625b52737d35fd9790ea7ffffb9f7652438b9f950ef8a99a5267752f1150fb1893ce4ac3a0ee37d0904c858949001561923b44bc4521453c56407555980583a22f8252b8cd568de7e3deed604384b6120d67cfce71e7477094e92565f1a550c63148f7cc5b70a76c0644157258ca3b1cdad502a84733a1828c6ee3291e8354f127701a5e9a15ceb34046cf9a7808ab003b747e40255ba8642778f61bd6fdf38e75e8515769da8cb9320234ab136de500894529e116f2512ce4683049809be44eff0622750d2ffdc09efa7507e032e8f9f12e2332d96982bc502a74d39925cfb304bd6ad7a72774019daa91bac9d7e66a2ecc206a81a9e21f549b7f4465b8f56a148170e1b1a782475d537a558db5b2b340a0726a5c6bd5dc886e08e8de1606b8ece1b431db7ee7a4b086120898cf9fff5299cb549bbcc80438fa0bd8888806ba494b8b7d9822aeb2d180b2c9a9abff300f757dbaf35399bcdf38c174548dcef6efc1a0da90ab972bfb62107262674bf86d0920b4f3a631de0b97a07cdda0443777213766baab3d5ad7441003f5faebab5ca8c83f13022669876e4ffad358db70cdac4eacf60265feafe4605a3394e0c1aba828614adfc66607d37c8b067979f7c3baff9d81560f1c2ea5a28cfe5e608d812a5823d1776c98e34df4819fb288d2583ae1d4e52b4e61f79b36968f56fa23ea9c476b69341ab6048da433b8e2ce47caa11576be727ce520dca47f20a83e0d3f7052235d671f7159cfb373c7a843be9372dbce1d5fc1bfbf232ba754323a673ef7ed9c837ef602617d6202edffed159279f08050334163588728e302f75048eead5c3e6e8db3c3f0afed5fcb38b5420b6a0a66b51739c9694535c43a81b09776035f5a2cbb7f437f7c8b951e42a764ae492b801877bcb7327e355a5cc57d994f7b1a567d0361bbe7e31b8400adc0ddc53f00a363bd72e755aa009add0fc23e7875c2227ecc81b44bc5efc24928e4a8d5bf1f4b52d02f29fe56400b1ec64169ef0237cec05743580f9525b4a3114a81770db43191e74a28d4b8f6a122db5542552caa4d8a5eb27d9dd685ff42e2f0c234fb1501b0cdbd53d7f30b974f27ba0d5415ad84b551689fcb4f707e838abf04faa4092ed62ddc9a9f384caa2d166be2753223d3925cdc98fc2b106a26516a331d5d8cb3d476dd0e381895db8ff432aece92e18aa5e72dfcded81082de5bcda1e20853624f3ce3fc041dea987d1eadf0c7b87611cdf3a51848fb05f48927ff0413140c292b5e2903b94c8bd28939d806c4e87a43408e5fbcc422a61df0a75a1336ae11fb4266e0faac2b810485cd7cfa3187c83429faa3e7fab52280ee120585f9e4a726acf5c1e9adefeef3995b1c01079abfbae1bef2586f9ad3e4ef0ee8fc038d0b0268253846ee92807b6577f24d128f4feffa10029e10f2779a9a3efd4eab4c9e8aa04fb64cc3c3ba71ec48f198036704f52184252356ceedfbaa196d33335666d75954f7414bff8be9208137d325529753dacd0c644e330a9371497ca02e0930c4beedf2048b9f340c7f47e304ed4b2baf1905223052b14ee5aac8657e45c9460e072b7931fc7d829c19e6f3333e80d86b9d984b0943318d53d137746725b0a7f6ac1cbec509f44401e17999d4663e3d13e005dd271422e2dbe938afb21f348405f11de259eab154757921068c879a6175849569ecde30fa9236488230d5f79d2cef4ca488bb504b0d13254af13c77ac6a05cd4f42785865c7c562d288bc5d5d4674fa60c308301f9dae881d801039599c2fe6cc4d35ee428c25a932552c4265f5c8794bb968d89986454d6e3645d0d9ecad02a7ca542047c8f44bb86cad962813a9c1e63fc25d80f5156b7c7ba335e212e9ca593f40591148821ba07701204900dca32d179712f681ca5df4e6a32330bff409331252ad7549c56190076ce5fcb36e8ee7d6af6614b38a5e4eaa015244dac3d06bbe786b22a1f4ad9e5e77952198745be009818d3f1bb5a7705549f55568931c3fec26b8bd5e6d5fd072ab96e8e69dfb7b6ff838d5233cc1420957a5c12ab67a0a78ef5e84bc39760b866b016031c2616dd5ae032fb81e9d73a595b5c95ee55edf08d11e342e53ac3e25580258fd4ab8d40f000f4b568765d588042b820714f329c94bf7f0ac9b8aabefbe3b00e2d584e0e9a989fcf6a06dc978c2175aa52732e4ee46c3164aa7b71b79503f1c1e5f1a572b5b8537fd0b175288f758e9c94434d1705a6dc9863bc14d6559c3b8ddd7f01c7c951d1cff0d0880dfcf218625b5be9ae8769d93c173b38df8504f021c8b02181c2e93bfd8f874abd07c0061aecaa4b5ba88b0147f78cfbaa0c8e981ddba895b2dfa6a2e2fa9ac16792cb84d9b532f3f72e47491d94da3a7204d0fb9aa70ef0100f480734ddef496e3e39ecf1c7f92466a6b7f327591dbce8d611050f3544b6d88f0cda28c68f687c040503459a76264bba5633f3f8ba98fe416390c8c1e004143c526cf831ca66d6c402897b1afe62064d5517013872052e4fb015871e29a42ccec92170a6223fa14fd378b31a4295d0780d54ddeea6f4affeb5a1e80e50fea1e0567c4f9081a8503a4dfebd367b4c46fd29bf3dd4451840dc81e3b25f6cbc159e18601e65bd110f66e7b13cd1df0036fddf9f9cdb1e89aa5e1cd1600b6d9e9b72695bbb1da0bfd0b57876f32267a2090eb34cc2ff6a194f0ef0567d0ca86a9323c16bd2da5676c595b665a0b03838096e2e1dd22f4752a071c7bc935429f8019fabf4cd057dff4a005178e8cef240f80fe1e9ec48d51e8b78556a1af5eb7732f669ae89d2d5100365960e5cd22e2dff8cc564f4e0f3024413e28aa1af56a2a441bfdd8601eb180bf3f3e60753fa992274a508d10cb466bc6139b3cfe0136e23a3567ef235c5d664cff1ab62d6295989943e2cc8abdc36cf0b64244f9598e6e2e3393c4fda7301b12015391b54a5b5e3987ce0dc9a8c76590b92b33c175bf54622b738aea015c03efed5d15c3213d4472136ac6c22933f2c57ac73e370912be69d4a76888c73d67f8db33236ebe304e7a41ace177eb2ecd3a5bfdd56fd6640bf67364e38df4a3817bd762e5c27bc4d6a1585fbed06f8faf796b4b20f14386df11dd619626209c1912110a61c565601147914a597fe017e746e8452c079bf2d05b1f04dca482bc2cbe01ec4e0157cbd439e1c1f6f9c1b71c677a768bfd763767d79ced7ebd75a4cd1ad9bf18a7b0de6a248d4d629e43b622d9cebaffb52816579e53c8d315b2d6f56a6e84ebbe2e1aafaf7276285d1a1b19c2c250da0243e518e2e0c1600d470b3aba7dd90c840534cf71e155107278281deeb668e267fb58534f0614364bbd9677417ace2fcc338332b9f3ee82ee61fe904d1f89247d1d451c8da518da6032b059ecde727d56df61f49283a48652476a3e84f5ba5d5d4c6752f4e9391d951f359776242d2f540255341dd9d05285ba97b521a50a56f2b61b5942780d6c98a202abe6bd5bb28470ce7c5fc8969713236952249a6d6d445a0115d062010a6bb5fa051948983e9ea76f34a14eedf813486727639bdd1db48af2fa4566f02b62047875c505eae1c707f3d86c9c4a63e23dd5086e710343c8082dad2eee2b7d4684645f7421f618a08b6ad4f7e7c0ca6fad0c5b7c763d0eebe4fd396833acdf5518a0593560024d250be5c14ce670e48b24fe0f9a5e9eb807f6088c6ffae15e290bcf1395cb07bf4ef4e4db62bcc1474ec2a04e038a0a6e8200bdc3548874b9cac56421aa2145f750b6ef8e0ee99f001c6867c27b160862d7180434191f0d5e2bf76ee9d90ad576417f1008e333747606824090bf3c7a782a9affbe2e8a9426cd6c32f0b3b09ccec0f059c1a8a30fa02f9afe4f90928b8c3a34a5423341fe6273951757a9f528979a674f692ffbdc1bc9c30a0a7eb42f4f497aab5f040f718999a2c7f18885e11b3267a6dc88fafb6929eb01f5a47bd2c2520cccb5c22132a129b536826b701fa045ee12cce3d87c3277ac04dbbd387efad29f1b3d462804b0dddf8a868991a5a30bc8d1acb672b70d65e73f449130be70a17b392357f6c3d98736e9cf5a419b7448c2c8396f70a3e2d43c54eab2ecd28dfd9a3dd9900a0fd062c5a110961ecf3a6f07a6696a840011568993570e529dc51c852f2685c7b90718160a50506550f2ddd2ae21ea80834e2df5eb9b52c20c9399818a6d42b19dab8b129b96514ffc716e0207d0abf341f151e5f6367271dc7436a8a50d2a086a388f4236acb9f16f8fb9806cd3f096f8230b8ff98163a3f4d38a0bb52f2ef5b1cd404e428f82490665690137548f4a434fc0c01834089c7ae2bb61728fe23e82c42e5a5b88556763506e73dd93520a96f50d5fd1304575f5aa249c85c4db215d4c2131f957652a3a820a023924c0f4b0ffd3e0b48c4ad795da5e6c2557a38b9e17760711ae82b28cff698a810014f9ef9a77aa64be74e22c9823f84f3dcabb56bffde9b08a08200de8fa6f31c28264624063e31c1765caac2abf0bed0d6eba3893599830696098400cbd19318b8b13e240f343ac96c3d99946c5124ae2ed786a5a5d4c71d5d5ec9c0d5454769a899e5ab10b5d6e460316086a8e7b42aa4d0c5adfa3a546d9dec2c13d8762235fdec065055d16667706501f06393387f28c1666da9aee5ded3d51235798f029ef1e3a5b2ca63df8654d4f59b429328ad836b7c9163130b5ff3cc5483f8147db9fe02f5cc0c971884042b3ae76d10c99d191470765d60964be80c107d8c9511475b960f02046efdaebcf4670b66c12b3ef73c28e35f2d4c437f5f2a931571bf224fa3a142e06809d48452fd061329ac16a9b5b512e1a33699b3ef3978ac78472f92df8297e25f9146d1495e8e32ef060348e3cddda7e7ab6b4ab430a4751a0b0cbb39ab97f7a633183ee8ea7f0d5d95a4609218221fc4f99a48d581cfe1a89359f2732b92c46c86317f5f22d86bf0566864ef94d512a280949528fed081ce6b06c0e0a176b05eb67816132c8189f10cca3ec9e25bc13327131681ee77a08867f44b4497341210d98a7d7be2b53d7917ff7dff8e7a8497738b652c3e2a76294d097edeb7e26056ab5f7778c1e30044f2d717a38ec27af6bffbd834dc6a84d529019a021652758642085202f26ba30285d944f19b8f2dad25fb8e23eabf1eddd28b3702d0cd765e10e9ae85e6c677d609630e23e6c2d8fbb4dc3b1a89ec288c46e5b1c1efa489f35ef9ca2d69ec3198034b8921caa6bee2ac8e91c3a4638c445fd5441d4a26792a798446a47ae075d435809f0dd5d21014c50f9aaddd4f3817b816ac882d4421ff0b03cdc0a336692a37683bbcea21a625b3834166b18259b8d9519e9670a45c9cbe840123d7e670b11354f653b873eab307d14f40327958f311af571dae26887d761dbee7c5d5aed52664344b3f1b4a24fa98d782b3eff40115f4bf12db32cc05ad27ef23cadffd5efa1c21ae33e4c1595c0a779d584f6295e9e68f5d685daeb96f9b40eb44971f47c87ebf584a7eb2e85bd1bd812ea0d70fa7a478fadfb2284fc3e83a5393c33b142865cbb1c5ec36e98bfd33912d7e4825727b62ef39c22f619d3df61a2ef99221ed158624309c7ce8013da7f8caa7a8dfeae29d618c0a02fbfe63e6daae89c56b7e966aa7af5c57385100884aacf71f38a2c3248fb3d35027b4e6fd2bd18fbd24031b21f52ed602af8333d156ee69afedd59f681548a2687a8d4f49bb764c431fdf89273ec1648441c0e02d539345a4ccefb91cb8a6b8fad9f76437b5be6b804789bbd7270d5e05d43a7905d084554e6bd8aee8b100739a3c2b3303c107019117f3336ec01c9705c60b11df9d3fa82cbbbd0ccc91b1a92b4808af393d4f7d4d8450e0927883a9591a31b76841d882746a97d71fb16acb21beef9d0abba913961f4dd7066d9e38cb2000f578f8d0e9edea67b979fb4a2f903a515841c0f3f8d3bbc1b92b00f2478d513e062f446b53a938d39231e9635c26f2c71ce7bebec061749f7c08d4f656d1675ccdc480aa8fa863038ffdae98f5dcc8f01de4520f8cba5f3cb8134881977d1b41c082c4eb9df11427bd7b125c74d2cd5187789176640a230176aa6378ab71b44cd104f78ab575e83ab1193eb0e6be00bb41f3b539c2b39e712a3db28f49341399fa264e1024b7eb8e8d75b2ec3ff13c52854830bea5529b2f795ed4fc6212cffecb48c4216d728f83144a9961a5809842baa719799047a1dfadbc48a933444ffec3194f455a1c2b55f9993bbd8482cd08c25607406a213840ae9d2eda58d75579f358d9e5c376756e56048f610545165da4355c373d3957e908749573c180414eacdad3dd73eb17fec14db2abf03c3e05e054a99462f72c66894c81e68c0cc289e09490fb967b10167eec9cb8060777055ce7d9f201f6e60b307027424d42fb740b87d369ebe2685c8b91bba2f21ec080cc1a64d3ef393643d6fdf6567fae840deb4ec1c9e37671e86076ac0d7b9e89f38710688f330ea1a46eec214dc52d8bcde5886b6c3bc04bb411de8252c59989c3bb10bc5599a72869f04e47b4fccaaaa3a737e00141a3f4b4c3fc3bb0a5c653da02edfb87d93e7dac1daa3a1e7df4a4e2389920840c1517902a71be2d60d34e4d34bf7da1dd159fe07c06085a1c5c2faa845b47db15e0a248ba059854bb1323ffd614eceb5524a888915d993c5f6c7b3d98bac7f795b57ff925c61b6e11567cdc2a028b1f62d316801fd2b28deb49835a513cbed4ae14dfbbfc0963887968718bb4fb8dbde18ad6d302cf0b48cdfe64e6dddf4b9d60dd756d8d03f8c747c13bdc0794983251d4392bbb51d7f71ce70c74fbb7adce0f9d6a4f04d05b2252bfbc38fd930ab9d9938cea56af2efdc666318465e94739e9313134c2221af1ef23f16e8bc3f7e4d410616887a2cb00df9bb6203bba7fb8c21f7587cbdceebf3fd8990ead864a0971b5b5d0f2df4e47e23b963f8042f08055739f1e2d699e83182e7b6090745ac34457d01f0eab73ac00d34486ec652ad6e86816342bb45e11cea2a01b30a67219793231693162e323459eaa4722772a86b7a0e4df05414a82621a81405d9efd95fe98e45b5bb9f65bd7628008ad2b7d3d3e2acdc563e49263cde3c02b40554fc4a9b7a85234cf01b18dc199ceac2c4a5dda4cc69ba7160e44c70aa61fb0aed3903c70c1481017293f7b911e50965c9bc0104a89f207e926befffe80706bee0d7aca9e071d83776ff16289e3c03c0605c4aae3b125e570b2a2584cf08a2f1bf3755f90909f729b3674f0bc0162f834e40213c44a2ca0aefd0c15803d0fc2619a93c99fcca16b766ff72fcad95311463411b4fc7882a234c09a2021656d60606557c243c9253ba7c446d9bf4caf24f8c8f1e72e021262d0316c8e7fc60446c9a08938cecbfeb0014e6a952ff4ad7ba885abbf803645ee712b6070f757d19906d1fc892a0f93d8efe6ea15c69ecd8b203b18b103074e048af4d3114290cb717173d40c1119eb4aa93189dc6b3c3dd4b0e94bd2edee4225e266bca4accc01df5f4ac0c826caf28978ee7c15e5f5417ec29c030cf86fcd07b2e973e1ce7394c8d1984b578dd44b2f10c78a952e189031a814e68096b206215cbe87c385ca38436812320e30dfb1ed5c2b46d59362acf150186056d76532de0dbecc3614f6a14c34ee8a0971bce13ba2334afbfb1e4b4e660ba8af564508b8b0c1364bc38b5b59ec9b4dc56d8090248016247147ef3bdaedb6c3d63f8fd7342169f5074b1b335352987cd8525816aa2024d1a1c6b2d01ba01098f728386813aafe8027e21f81852ae5f24860cbdd0f3f2992f02d586c181a47c5166fb3ffde1070dffdf0846adefb9851b2e2b3efe221616119bc58881c4b19cdffa2f017fc760b1a1e8492a8d1710078460a34d3e47c12b9782296c4cb010b773d3a5822dd3f2ff8e47c0a9325c5dd15f5135478a9c8ef8eb42d54b2724eba1a646887d148634f602f53d04e5c1f47e1f759f6e581a2b2eb0240ad9a0970cf33fe2b6f4d5a4259b1234930c77a5462805240d3c8317c0ab8617bd40ad4ba73de220c527507263aa344ba2434627806ee422366d9ed060678835a63518e68b56a88a71a248e3f60d55ae3263014e2638d86c8eedd8dbe3dc789e21596d13b5667756d4c2289e9bfd99bd67aa3c64688a0059ba9ec88c276e62595a3f0b44c5d1d7b71a027d6996ec015ecf0d45378085130be7aea01ea12a4ee469255d76aa38bd4f65a282761f01b81b82513646b1d55b868bba7d902704605375c9bd2e22814059403e2db739b62831dd6e3815058fc154e1360f5c5f15a1768f6be7e66a986081d97b28ac19d802171612e98a7b9581f6c33c0d97f2e205d1f5bf04f747b5738e9bc73984fccea16484f9c44dfec9ecb5ff8e7d0edc2f9036ca3f821b4a3cd2601207c0ff3e6a7fdc48cbf0361e6cded2cfc9ee31ebd8da1957a8d8488cae3f5df2b6b56eebb00349a86b83b8c89486ab923f4914a2042b559f4b85fc980684e56461c754d661d64a2050435472f3e01948036b772008fa7508f2ae127af50d449ec22d9445a3a814c0b4a2feb40280164e2f7f9de115cb6c66b2a6ae6a5537a154bdc7394c7e68aff4b801d035457fddcc901d743f04d81c789f0a84cd45d1a36e0bb2f211661d6ee498a9aa92e12e4a4e78f766fa2e41ecc14a4d3cf4e1aa6a94af661375ac088b59c60ed0c599df434f157ff238edb7090e77f25d09105409f62a212ba3c778db13a536f4a6a00b0df7c5e42e3cc30aca2368a92e33021732c9b841c1cdaf4bd7c410373ecca70266dcba0f846b0f69a3594ae0d53dfa5dc78e2a9701a9238ea6dfbd1433998132862eb1b3a26a5c9e68363b5574698523983e9fbfcc363a719096099a233f86f8271e75f022b5872faf70917d6f330df8772e83bd10994a5ce2500585b4998e6552c19b25a63b86cdfed7318e9351e7899c4a50839486f4b9a8b2bb324d1f0423210626efd13d8b8feecc7c7477def98afd1920820e63084e383d837b7af09d70312afe2667bbd1e285191d40e862268345330350d326246cfa285997b27e56106109aadbb2ee84587538f34a955b4f58415d155a177ba310e57931ec927a64cc97f0f64e59105858d6effc23f80a81c743bd58855d1bdea8534675417d67621aad1654ac3446c7d5f4d4838f9dd03c162c8fff60745107669c3e6272ad27a9038e8effb1515b26c19f1189536e3d5fe672685a2b7dd1523002ce6bee881e1d57e94146dc8e1b62629142b1190a848cd3dfa5d3f2262cec7b1c21ba597aee2196af6216bb0d694908905b7314e41ff485c41465c286092af1dcd62eb388f09673784efa4658578192c1a7b8d12bfb1aa1d3166432e3386474b20dbced3b4d5024dcdada070df1ab5e97a67a727918b234e6e7257c1b9804216f844fb18a190003487e22cc7a6132ff4e0318d023fa9a725956ddb599e7d939e244b2c85df5110469a54762d340317f379910b827a1f817e636d30e4015f708c124917883df69b6f7f76ae52111bf8fb683449d12de24b489f9edc2638f158c6bbb9e13ff49a8de6a394c0638aaeac063ca5e3f0b8390a5529bb8bf2889a9e3c39840ed9b880dc93ce39a973efce239cef392d7461a45d08dfd478a0593736c15440285ba55ca5c6d7dabaa0a4450974b591a32c799a2bc8e5f2dcdad53e7184d4f7b799481f8fe95578778d4161ed6aee63ed90e0999d906a77f5a3f5ea301220ea1c725ad32a239492d8d4c3df074c3aaa0855520aced441a607f811871bf7df8337877080caa66062b7c525baf1a34779e421b53959b941199d81276171074d4135e4235b488f4c7a750942be3a9201462205219194a7c995f0310e5374ddac9b56fed515445553d3195be34b94df23c4aac01f0e27905500e45f2eae2343cd46f0215e4beca9bde9f875c8a37e446712103667b613214df663d460d198c6710a62c428c14b0862fc0d26b778eaa3c5c56b340330986020ca17401d4ac091ff680d32ea1de53904a0f381e10ab652b2922cd766dee0f13b70fcf9bd22f4161f205c464db27828eca16397ae2805823a19cc2750824ea7d69e2f2d5e3b07d4913579632daf6e318d3442ec7ea015d676ba4407d7ba806e3f9e3f30f97940cc64aad84e3f6254a6fa9b5dba0fff220504a83fc1f8fa1731e113fc77c55c68e9a930442ab0659a6044c383fc6539d68d03ffd27b4f62a92e4cbaea05832bb8b6d6d99590026111f20d8f0a31202cf631eb1aefe800ef8a32e3f0efea425c9e147010e1d487a63a8044dacd7c6054a32b8a2292d46fa4eb9e9282eb155332d1c3d5a374a1affa4180fcc5f18f402fe0b392567441b56a024cfaa41d6ba9701d49e99ed7b3660581e2a7eea04218aebc3543932ce112fd7255c49d8f7050c21c0109a7e894471513f5ff3008478e79b93f5ce3379bedc1da3f8b48df4bc022f202f4ed3db5c341a48d6ce1290b4f12aef7447e9f9f3810506d3293b91813680c090668cb32a41e79df6130608e7d02cd356d9c025ad80bcce91433d6b9000c3505b70ff84c1fba8b20a039707e0f14e30b05f7c7fc79960ce230558f08c0e3fab4b9f65f786f2b8a54e753d015466d1dc3ab1b9c14afe0a1e502756108a583610aa47800e299315b4c8b57ef5367fe784c74f26a9da6eaa98fe823a53ca74858bd9d91e1625ce1182ca0e003ba99ff985e6e31ffaab2a42c64fbc79f967e1085d64a288346b35d3c85c7d306a70c299cfd161beb2de1a411fdaaa5868d608f2fc701c52c8f0ab01f470f80119c69412a51c272d91e89d5164b1c68ef8a3ec54b0f1c5281aa55395b21248c64a0da111b66787db9f60cd008ba6911b6e0a7cf20a5d495a32eb323e2271ab69ec2c311e65d4299f9664a4ff4c94878313000721493a4f310294b3be3b146960223d7bff5b5fb99e28da50db50f2aacf4120c7213196d13c7a54a81171b96a3d64329bbfaa982671857bbad14584e7cea2ac68e7597f163be3d99a3592327e450309a67ae008a8a61905611bb504a37eab5de100758ba6949e06a58de6150e55548e254ede668f58c91e693b14e79d8eaa11c2e0421ca61df05cf938d7134e383ebc7871ae1a2c58c2f5517d87b9908d802e279e59528e3e537083387604da3bf35ee154f321e43a6140ced63af45bd6fab2207e6a0fd763009163901c729f0129c4a1e2b7a0579eaa28195780fed4dd0026cf0c7a67b6d1609971d3cd126a3383aecc2ddc48a8a982898cf098cb5d42afadc1c4a47c4a2663b57312932d7f32e7fefe28c72791d3af9f0c047b893cfa319dde0b3cdb8cb0ceb0e8cf1e0b95423e83aa95c241113ed6a9ff261a3a9d46d7aad76ee6de9c78983dd6ed30acb9d25cdc99c5a1be1e2a1f0d9d326157de829e80b2c9e115095b3373654f0f1f2c79ab2ef14e286d3971a03265587db68552bc1087b51668b4f73d848d185fc6e3e9877d9cc081aff78e1dc9431597304988c0a75f36ee5120144305f8346d6357900af093c6e46313ef64d50565092d11e799144631acbea0eee62230036e3b3045717ef8bd6aba793775b9784dbe8e111a7d2228bf51a1074f884cdcedd2b02165b7798e4440ac9b23f17d56c13c27e1f255adf03be24d383cbe1df45f22b13d7195d062681e7eaa0e818fc6b77a54225b72e12d3955f1ac4cab715d0953c378f1ec60fbcd96bef90a0e3aea78f3045f37274b62e2018b6f00c92a2c6b3ff6ded0367738a71de53239809f3e989849f4fe0838b95794374faf94e4c057be487c909314e001a2ef65670deb9baf78c6033782a6da2142dfc4ac579ecd8954128f9184738183e24ec0669f68ebfef5d45acf0c55d8066f5a9d90560f0f0bc2bebc532cff96fd60a0871fed64c6d486fa80577a00ceae9e0970befd704202313bef42c5ea60388220b656a349c33043538b71ace4493419f74ed7c2a856fa40b343863bfeaabb278a9476f002baf0661f307ae1a0b54becc819be74ee85fb4acf3d1b28258816e790b3df688836ebb6a296a4afb9a83f09cd605dbf1f6fc69138d630b6fb0ed7df78684ca308f3e250a5e5b2dd368de117e2dcdcf5a7085cf131845d52a93ddea3d9c5e5c3856e6edef39edc4c7c1418cb18f36842f9a14cb2d9ab4f76aceac7f9bdf5b265db42a40fba1315015df3870b9c9b72cc594a1b0e388e15189061c836ae34c82312c8dd7d60337f1a525359b2a6a5814e945312612faedf35d1f31598e61d6ef6fec051531e19499c327c86767f59c9351402cd2eb9b3d1057f517947f2b48f8e29f60cd6e0d7356decd5ccd2f8a6d78236a57345e217cfa010217627f59a984e7e22f46fc3ed44b6d782b7c0ae1b62dff37b4f29e90a4dc36db46059ca6ef10ca19a6a9b165abdb619e8a6e88bd714cfb1794f455344890db922610ab85a4f51b2b650d29d040cd87b9a641496a5d80df6061ae3c3ea838d2cafd7c2efe9f6db320c160c318a79da0291fad37c653f08bf83dc460de309f3678e5546e280fcecbc925fc078c487f52219c37721d8f8a988db86b875112775f07b3fbf22c916b9a146698c0a2440382f505ea43de230c3dae864bec3e5b936df2b0ea2ab2ee9f1f5a1db35cac543990ba7541abd46428b554f1b48e60389352702dba8cd6933ca96cd51b58dcd02c17241869cddfc4fec42d5e58a78bbaa19ee5608465bfa2a8d1c84bd89d78e270c378501a69bbae83f82485fe5549e321f445dcb2b5b3364d6d3e76a3bba9d0eff6723c9cadee792d6d4cc018b2da3c0923c33c3cb8d6700fd529fdad01b1e67dc6ce33c8696a081fc88e7413ada38af2538c48d01dbd536e514b39fc792617f254812425b82f81d5fc38d10308b34d54d5f33df66062e6f465b17bb111e699028005802c91a936982d70fdb00bce4f47f69646ea73d83d5aa8c5c7efc33618bcb1f3ae1fd930fac172b52463bca165e5a4b6254358cf264a8d0b5c574cd1aab2a363f83844eda4ba41b860bd58f9aa4c11216c8e8c9a16a638a5c44de488c8f6e6613cdc21cd1bf2e729970d8670a72e5efd23b598268b992e620aba4245c1c77c3960a6c417374826bc4547ec587573613ae6f7e3051f4490c1fae56c06e80f00155142fc7d3753a155b56dfbf190ecda9f3fa2e2573595d24de7b441ee8ddc0d7e7c35aef48df8242e05bff928b6934a03c8e79cc6d762f24b1ec3637bafa0f3170290203fbe806633b351a3a514c13f67a94245d8f7184bee14f956494b689e6034f616d49032fe7fbcf2d9b9c324deb1342e8944d581b84e7bf9c154713ff6f74c1b8445dd29dcd1110c243d277622e95639e08720b43dafcf82c29122767686d82fbc7bdf6dc58960473c0deffe9e5de40054217aa761b147be64a3ea5fccc2504680c2a94951a54e48eb68229b53521b91665f3f14903a9eeb8458043295dc7c38cdca52c48d8263161fba31469a85dbcd1bd23a39be57fa4226e4dd09211fb482c985ba202043adf62cffc9afc18bdb3bb50741fd6f9b456a9084301f15be12acc8aff89a376750437db0d8b044778fdb4ce47a8b0196e33ffe43ef7a2b1da333343f7f88a6807911a8c58fe2194bca44c5ac1b306fb0fa8071b2214226fa74d4d2747df8c65242d085b17e9741cbb857d2bee7e4c9d3a58aaaf7ffa10b47dbb55a9f69869cd4644ecd381cd92cca1cf7803d0d3a12e7935a84a957b8be4c112853e0531008e7666f6b286c3ccad03d4b255fb7f35ba30c1c25912e5f1199d5f13b503a2f8138c60bb9f0dc174abd4b0e50589505c5e163f72454c697a901c088ad7fcf1093ede25b2d9d061a2013871af05e67fa47c76c1b6d82687681ce3c1fb5d21b5435890cb0e6cc2133ed01ac0c98d2b92b47a8d00a6810dd6696ebfdfa102e37822745ad04adc6134368688d4a87c4b82bd47316dbdc0a4b3c4108c6b8038b57a71a326847d317c3067eb8613e704386bd377b808482d875c21fe4cff2a41276de88f9822fa5aa35fb029cbe4edf16b847e038a8abb896a68e713b2f203c2019a05acad18dadada8f7c96359af0383669ba49103e2f5b3581016eecf3cf573077752b29f43b894c266a5a521f6a8c56318df8da26487394cc88541e9b663ac49a379c4819b89ff5e57f50e3c76e1c1b02c1446ca4b5a8d9443ee80549d0edf1009a263464278ae68b69902993abb4879508c9653e7793cc99327e876236ac5d8f54e394da52b31be3f6a8ea0ca8f8c9351b6e85e352a9f8b834fa6d6839db58be27d0fcdc01afd78e08673c53d930e23147631fc7baf8be4e0633501ea34f7e5c77e6ce94057b84e34840b816492c09f71e6b39c7f1152a0a3056633b9217ab6854b4e2afdb4be7f45c39e2e6addddac8b0c50b241e065244d5dbbb39a1d71e2f4013598d92442dbed6a898254a43d65592f65327158d8a9456aafa105a28b97c9092ca237355c70f515521455967d4cc7451e6afe8c4d8b5f5a4951b8ddbf4f57ab9d222a5cdd10c46749216c5128810413b94f83ea429fa298e71644cd618f33be19443daf9d8d91135ea1fbb5be4ae5cd8b8361325cf7d480ff2c5109264ac4771df9dc4fb407bb4fc897dc3543a57ea915d1f98385fccdbe914e7e3dfd110f896b7c65bf523c1ab284724d2137160ea96a985f9ed2bca22a6a9aba69181296d72f57c87aea3942649ad034a687ce13ea39c8029d5142973dfce2ba5d64f3c6f5a3ebf9936584017772a2910c87cbcb84ff806c7fa6831b9efca3a1267438c1fc588443d097e1611e2c27f65cd7a7540f7c9a067edca37bed5e55ef6f9da7368da1b1dfc0f22f565391485143460d4ca222a69cbd92e636303ccea424254e581592b595630881f7e995f3403ed5993bec46e57129ba794f46aff834d653fc92c4df46df28f45d8b0b2445d98caa00992eea21af1b623d898ede84b4a6082c4e645106582bac1c9d55555f4047031fb8df804212fb2771ce2cf19e9ad8c8f59aa2b9ab31035c269f1120423444b9a87f3fe0f7f0c872e297202cd08f8f3b540dbf404d5d9a05256e89d66a2be2deb48b82c95c9b9e4b224dc7c0d064c3109cd6efbbf3516193688b387d4618d5be77d30a9c0c76f40044465beb001c6036b900661fca26b573c3f8d074b15e98dd56b0e1acc37090721625ceb4379c25313681edaeebf8d86e1e67740f33cdea8226869296c232824f3cfeba17660fcd198179bdbf1c49334b7e2aab09136e5cb5bf33c4fe6e1602fbbeeb5910e184570a05ddd88c684926e0f3317e9244f60f835a95f51df64a412233100b145884367b8f9e196f1377a7235fa1ffc50c5d7b56069af2e0f2c91534f0db92f84b7e4463f4da025310a78fa772b68d9ab409160e008dbcc15baab75424f328f5530480e1ea4c915a623ebb305dda5194722aee63681bd0bf6aa497dac98c652edfadf9d6bae4490635d32d7ea165c85d9c781da0fec61e742a7c9cf2c0224681c1ad5e98e4f1dce2353968290dde2303980a453fa535980433e4a5a1c593b2619df9566fce8feda5dbc0825712c35d9128f946129bfb0938627f7bd1a867f76f06cb1d3af89aca20ccaa65dbf7b6d436aae8fde021c3630bffea069901361c68b894a55bc6f3a50cf9d73c74806da80fe333164a7eea32180dac290ccc517aa936903ca84c87c99c5ae88344dd0d690efbc389f0ca025123e884f2910eaae3a6e84dc01f3141e2a0fd8c0b915d52805bcaea15bb7c20d4a61884eabd257cb8c0a4ed9c6b8232316f86167608fd57738d45afb47a239d3d7973ac6490e726674fede640c85337a41ceae176162a19998881591f7de5daf9f79d9f01ab93479f6087db740c5b72a78bf56882270310264bc914da3e7d7da26a2bc633a76d5e1a91e6d0c761745e1576a2d6289e9c2095070d231cbb5114d11c9847a7bb3e7776de7b83cd3478a0a89211d7cd77cd132056873c4c046e363e4544c9a3d8fd9d1179af9a88a1f08164c6cec6e1652de9e22ab4c44ff67d2ed3f8aa39f846f1f7b2a4148df0f0aa613cf85bbbd11b31a8b24bb711f458735928c0499f8963dd3192c0efb9a0ba1d59c008a5651d21b14196a28e15e9c3bdfda4c9a22d5c5b44822fd4713ae447d7369d15254e02f1c1814ebe29c44d6dc3d4d75eb0983a6c88b1bac8d383de01793260f35054a22c6ced75e992aa0b0aefa59e29b41e42567a4bc0fac0b1d2829288f39567dd6787d3433df090327d62e9636c3aea86037dd08f96f01677135660fad74987186ed57602a636a8d626dc4c8fdf431b036e6904c30acf2625976655dd06d4c111d483fd667d08dff1713178edd42070c7a0f29401a1f63d1c468680be0744e5447146739a86322f538ccdc2048127a957f437295af60fd7521bc681c56c17202c93bf33ef70e19c33249d5f39dd697232daf685cec6b50acc53fa72b73832f09af4ab85c8db3ba72a58d0f790b67598493a4dd1e97e3f4bc96b8a85051f35b38d636f9c4142053ebdc8f1945411831033ac7ec406cab8b730934d5e114159d1cf7de61bf2ded72d75362228d15732322fde735929ba4426470cd759b0216049da4dd7b1c0296f284210ab95431758b57923572929840da4a8f8e19ca8e91a9bc34629194c242867e85a28c6b48ece744353cf217ad58e9c24a631168a620cc5db1e2160326cf870dd104d1fd11e93d80fe9246a1fbfd92696c8cd44a8a88e4fa8a804637be78fd13c624ef502b1102e3a577e87eec945a2969ff848ac4e5c5d959639565088d0ac31e85d2dca5e695eea0ba1aad2046b7d25b3a55620c77059ea67a994cd6652e578ca4a9269e6e9022eb4b5fcbfff6262331d702b77a39573a6538a71d15faf5581661ac43160ec6abb0877b0196325ddb5c77755c3a464f1f7556f08ccba4182c60748cd83b3b60b8de59fac6307edac23c123143ab2968f7117aa6709fff663e8f2c7af04596eb1d5884eab2696bd3ee51c51929b608ebb39875bca48ded45a9edca2955f9ca42c847d896044708705e1068b5dd279e42e9b3f15a493cdb11ffe7d05da49bd594e22dc32900877fe70ddd57859c1fc072a7745c7ef68b0f89c636ba96feae8c287fbd36eacb9e10224aa90eaffdc7c73ad0985405a12d3269efc675dc0a404dbf79b039a2c36e489cb8226c3a21f904e8cf5f16bf6e63d6138f38e90885b08934387b1f545ae7a5380d89d127a68e1d8f9d582a4812980d213230aec1726326885d44890ec5a066f137b2dedc047daca66340d2f0a7104952fd8fbda9e7658f56561e8cf6a5f9d853a92c222927da3bf7a8425b19239a8558b5cd5d44735b92e0d2503befc08f93eb56140099683d0befd2a64ef231198f7fd678ad2af5c3217a8d8574a9dfd6250c8003a53b5781f7326928323e7b8973dc86aa3013973866c48a938443778dc464584040e12dfc36fad1811f92dc7981abfd02330cda7993be7218ec3c4d9853b7a6ba30af4627a88a798046b9d6a4ef8524eb7e14872609c73ce6727619bd83f42343429f91d82a24529f771be975c92205163d89d8493ed15d56c17cb1ee33645dbc6e5a4f84e77b339bd01e8e67efe5dbb088e5076029c362628682251d959eea02ea5fc038de2e7d0c524d8534172af1aca1124ef68f01b66d6071170fea31c280f334326f35621a071877d0a3b4014660a42c98367931324cca8148aa6ee9d9adddf189e0694d4b00625b020ae72d2dfd7080ada34183922d819b239c1b17e7393ed2a2a82323ca31bac485344009ddca5e4788283e862bc240c8c05cb8a8fed853c8fb2a45388ec50fe221fd47f1e48f76158b53eb7236e68af774cbc79d85423419d2804457c55dd500af8b77bc918e00060ae9be51e1599c6c801c0032ba61ccc591fcf18d26a7fa59726bebbf0798c78d93b4267297ff6ce8f26e658090c15cc8a665774507b1b560f7fd440f90888c2a3dc21a0da349b04af4e0e4a286d0bc70141107942d464d5ab7011c11af5230426ca729594a1fe0e57982ed328b47150eac46f0fdcc019cb6290d2e148d87240f26bbad4034369c36cb2b0313d20c5e9b6b75d159e1aadb048f0a20cdf381248f7653aa0d38fdc6a91e3132913f1072048f56f6c1bfef5a8d33bc0547fc28604bd20a9522ff5e1dd469ea2d3c7e42e209ab81a35f2700722a75f0dbda0d7d03501b3ba5a39af7008b41948d13f9f6fe55a56e1a27f471fa5d0adb595ae4487478c2cb2acb8be0bb697cd9c3b43511040b215042a9feb690c04bdc3b160e992842cb183617f4220484e199089d30aad9c2e660058953f33ec8f59833aa447b6a9b519e6a1c5ea2aa7bdc6bda675f220d408c246308f352139390bcbf6164db7c9ba395fda4253ef85ec4a9ceee1c256b091f82723989d02a9a4d5880a7c85d397ef4caee6c379bc7f7a39902bc2a03da5286765a30d6556d0ef921e45457d317e8db8a8a33782371b8c73a9ab49fbca41dbf616676ba833ad834c97b7321e3f199e41f7f518641010c4cc7e33df7e946d8206682338177097247d8099f2ca6c75a4bffbf576d77edcade52a69452190743071307e00fafbca356443233f833a4f4ddded5e1993770f711a658254fc0e6ee67811215defe7215bb3bb372777f3766b94ceeae7497ef60bf8b524ab9bbcebbbbbaa96ec21e0bb3650645fe0cdc0ee7f2cf75e7239b77c5102da54f9f9e512a73b4fb9c2ee522619353eea9b43f1ff3fca3c0155774b82f5b94d894db41bc1a4ca36966dca5cc04b12f7b3a4393318ab1c570a70e860423c5e4bd945cbca6a5baafb0b0acb4a8b8945e3c530a0c124c77e262b6182319da0cfad987815346ce384dd3d8adb12c50d8b89dca8965541b6d5c474af14a53a55b6169717931c18039c5c49031e33f50668686460daf412324cd2535386c1a4e23b763814cdd4681fb8d9a3192b1c5e062ba1309260586672abda8b8acd02a52da2896ba8d5a71517929993c182930a413b78deab651dc366ad428adeecba75f0662327346d2388daec1dba8b0a6068d9044e9ded83aa9c8a86b94a6ce542da33db8d4969a517045e05bcbac1b8dac1b0daf5b0d8e768d3024390fd6ca617146b36adfea8435eae634ea2669ea4c1d7d5d0456a753c9d42d03eb46bfba695fb7d18cba6d32eac6c5a85b175337d2a96e293075f360d4ada4b2c2c2c9afa5d22f070f68e0dc9aee032ddd0268cd7e6b61a99bcb8b4add4ca5bac1f0ea069352b713a96e315ddd62c8d8ea366354b7d7eaf6d1ba8159dd646668bc6e346a701ad7ad26a586376f18922428d766bee658633ed876465471c980bfdfd28427ee92da1bf8d1bccc37e34275178f101e154f4f75508a6ca462ee38aabfff9c1dd89798bd0e4e8adc3fec37effdc3c0d2e77d38d6c659fc3b85d47123aeaabce858fce54ffc0a1f12343ec60e14d4a811fb5cd5617758e2237be38abde1b5c88b0e270c75910431a4f64f171e024e0be0f7de03c5d30cf5e5f979eaf6bb6ae529f5bc5e5951394eeb6ca35c8ed323f53c53fff7e86d025fa4d5fb5defbdd3e1b5fc6ecbefa25afee5eb222c4a3cc94f5e9ed81b33f686acfdaea451a517e2cdfc09fbd5a1791520c7e1f17b91febbcc78d124e3c5180e44f3cd7cda0f2b08525d623013149e687a79f1053184f1e2c3bc683abde8c5bc4847c7d97eb237bcef0f14e983a2370394018a314031146f6240919e6040d1040334816288816203aaff0b28be5045ee71f944afb67c22d7cff2893caa5ac3beaaf6f3fb441b558bdaaff2953e0771ac4df69e3d0dd977f629a0781376a0f81c98fd068e404dc98c2d78a203f9d828715b0e74848646d17cabb3cd7c36ec8b0a4a70a27303f7840552d0e181a4616dfac56dcd7c324ff3813cae4d8fbcc4121effb837bada40a3c78f813ecccc7c36ec121ca218a17303f7c4053d3a3cf000e6c3382b031ae5e0c906768323a7c376a0ae3ad8ef329f83deaafd33094f742015d7778b15986f74733767efceeeecec8936549895118e1b13fd68008f78e24dfd1c18fabc659d0ef639e7d4b2ec247f6a59e612e398ca1c769adce9c03a06cc9c1c6767670f2bd7e042e5bfc921c20de7bce0e0f9f7d6f4c8a536e9fb899d0e1a50c03adc733654d187ac3c46bf75f6f636f0e86cbf75ff823c7cc83a0277b217b5ffe1d58704db63bf1d0d1b98034f4a27071b6e88b2441557d8a28b2fa2e86c1f844767038374cf81e04ef65bf7f3d93efbbaef064e8d2b550f9013e0a093c346d1e981a1b3813a6c1fc4037582200d7430e904d99e7b0775a03a41e812fd7c11844913246c81073a4178d0bf819ed7ecbbf0bedaf6863305a9d7f4633c4d93c5ff28b5a150fb6396083d54af4327de4da723632eeaac81ab58d6ef42ff4da3b2da6f010d348e0bcb4677864d2448e8501b4aed9fe96c0af3b584a90929072ca40c2501071d569d9039e79c2d3a08e209ac23f428a184ffa089ce082d904770ff3f83444a05331d4af9b2b999313b337b561282b24fd91207ebbbdcc807b749ed7724823ad2b82bb4e06e306ad984892d336fe63cdf677c4479347afa1aa5bf145c538772fbcdbb29044fee27a94b29e709b6eeeee66e6e83d2dddd726eeefca269dbddbd674b7084ea0474b8dd6e3251eaeeedeeccdcbdeeeed85c5ec9dddeddddbd8b43b36649bb79bbbb49249725db2e3b499ad15c4e78b35dc709c32c78fc3e6546473794a425a051fc061840cd476548e96ba411cd1947a42da3c16bfaa90643aca96118d2e0386177188661b87118d7cd8e449224df5260b4e0b1c7a5d06bf80baf756415c326a5904861b837765f2a3decee6e0a148b496fc30edddd5dbabbbbecb85dcf4b09f906af8d1c7951c4dddd5d3ae2dc9dc30e97e5966942767757c8ba2439fb06c5e3f7f7a234f5a2ecee968268423c7eb9bb2b6feaae208139f13453a76c395da6f432ce5d0327c66525d18577773db051bbab713ce2e4d6e9f08dd378901a0f52e341ce154f5d4b75cee971efb3ca2e01b9d178901b11662db029b1239826e82036b149334dd326866529cc2e90d8ccb22cc366064a99c5c45cc0ac05867d180c9a0d674d05aa7f1bcee7682e90a3476e871d76607f2db460d6029bd8d46826bf98984633b9438e2f2bb225895c4e5e45abd56ab55a61af71a6c6711cc7d9335593c85ccd9f1596d56ab55ab5b88ce3388e63edff4c3060604ea798981832a40c19de2c43a5cad58f64018532e85594ca56d84bb624919357110c98d56ab55a9db017f6c25ed80b7b61afda0fc6903163c6fff781325246c69b654af5e5524a49246bb55aadacb50adfe4c91fc992407294413266ac56abd56a55fb653e50466666868686460d59a38637d7e0461ae411a5dc95ca5a5ed361f86f32791ef5222fe55553cfab4c60d6a2592bcb5a58d69a594bf6cf6c34346870fcd5a0aa1a61b723a4351400120000f066003848531da654154d794d7bcb89dcb534e5389445e9068a9e8945532c9aaafd3494c5aafda49ac3715ca51a55aa5135d270d50d3cfead06d5485d8db1ae72958a722c7eb1f5338fae8449ed97ad20251df6e83ee510b51f932b2989d47e2a876852d3bc59932a0c73d1264f6abff61a6d4d3a6cd768c4e28c28a9fddd484a31d261b3523a1d9e2af590daafd2ede0faf5902bdd0eaede53fb5980b4c896166f6e59d0532c77a9c6209e285f2f2e4933607ad53fcd6aa01e3be83506b5885cce4a752b954aa5524de472f262b1582c162b954aa552a9cd5361617915a5ba276c2263508bc8358ee3388e2a954aa552b98bd52b168bc562fd340b089bafd7ebf51ac7711c552a954ac562b1582c5689c5c5b4327210b798c8e5641cc77154a9542a95eae52aea54f7b46a8ee3388ea34aa552a954ee72b9cb5dee7297cb0b07e3a4c22a4a8457fcc3cac0388ee338aa542a954ac5412d2672491fc7711c47954aa552a960bed25c39d917a7e46b745518fe9b4c9ec744f8a7791cc7718ce1ddd01c6f3405c95706c2f0df64f23c3a678be76aae56f295c917265f53bea47cb97ccde0b620dea7d495d784596f3973e538b345a9e7995e9c2b9f2b057475b67e668b640a3bd28fc7dfad46751a966ac016de4aed0d7f026ce179b7a278ec299e6d1bc5cc10c074e6f3b73a98b93bf98d92ae739a80d4c15eea60a00d37e84c5587fc446cfd3d76e58e8f9dacf683c07f27abf27f388f730ff6f77dc6de869abdfc26284a0e788b1cd8b5913b36d4ec37ce9cfeb61f077634907a4d6593d77060875b9beeb03dfeec25c69c499e3d98f99d411ef26975d0c11f5e9db0f50cfea32ebc07f070b0035e4f33f0fca80b4ff2343b6026a45c8c0bd287575e002fed4682133ba8a2a93a415463ea2271e2486da26b2b69525b0993da1fc3fb1bee7c80a776ccdaf4f3be3ff626de75ec73233513f7b11eee0df01d5b1ddc6190c7efd3d30c3cfc29e8c32bfdddb1c34f2918d3616f1c7ded4591fee8e76fe536d034da3690077ded79d08fe9b067a0afc5e8c29b4f4151037964cf5379d06f14c51eeb9d6c33285296b686ede0d740d1c7c446a3a682641ffdd942f118c98b0912222aead61c770a9073fe0eec77f06313939f06aeacabb1bcef1beae389b412b1edcc9b58387666e6af5b5004a5080a50735160669ed48aca4fb1a0c0d6f0346559e61addb20cc3b2c7407f1e193732496cf36da45189c929e58d3f4f606d386b8295506a0229b831baf0be3a0ed612f42a83ccbc79ee8c056fa54b6fdacc0ddeb494524a39c3199edc98c4a40604b74fc7b04cd2f69b9c8a4953c75f78934a8d7d3703456ad2e4cefd2c6094a7e4dca7b7cf205e14ec4549e76e29c89c73ce2c5be2e5f374c94d2ca3da9c73eeeeee9680b4709ba4e4fce5df482a3a57ac579680bc94d8144d2323a040810245be40428102050a142872ca2dc8174c285092b005285bd8dd5dac67884a9551cc064d04450ca4c3d48e4696181407b436fd356cc049f5e1810efb5f238981cd02441ac8808b019c0c1b34810eb7c571dd926e3a45eb360636c22ff48d2f7cf179e423aca4d908c7c047ec0bfdcc84977012cc400c8443eb721240bb1c1dc9c440401d4ae1f1731b359168e6d2b8a054ae6b0916c058020a7195102159e2a74eda4a604105437842083af16f6db94b76d88eb9877a42000aa2050680210cd1a8d84f952e94c8014dc55eaa729ca8d8112c540cf3609002ef8fdcc006d36726d164c82a89a21f686872a40717d060c50a8b228729889891021334aa298ec0c51456d4f0c1145a60e1a5d465828a1c88a0a2053745dbd6f2b88a924d45f0ba8a3266a6b2906e87ac1cd89afe2c6affe4a2f6cbde00131d784cd41f72d16222c63affe5899bbd3104ffd4688188fc9915e970ae8874384f3e782213e18f7b4a5930e5e0d81b8ed33fdfbba933acd31b7f80e4899f275660912a75a474b0870faf3ce8679af8c32ba66d43785b0dbc1e0efaf04ac1d3d70cfce13ebc4ef0f415037f780e27751809ec791dd26f3edd6fa763e3a953c47470eedd9c8122f6daa87273d26fc7b1e9434af99ed7f17ed786faa4803daf93f2bb36d9674140550cc53a842255be0b9d83a351bb83bd0b6b233190b3c124057d3c30f41af93e2920f51a299f847d363a94df7d395ea3fd86713c02bd0e6f3a9473ce39e7f4f94b4b1a3d29e088ea40753bedf320d49302e8bb11d581e046ea76d98679d541c19dacf2a03f411ed853ecb32ffb1f5e3350dcc96ab76327dbc92aff0cde17dbc7a35b1bff0d4c1d54dc408f4ecdcf7e03f3b3979d0edfbacb3e1e3b1ca5fea035fb0df4e854a5e04e06721d66b44393fb047d825e3fedeed9ddb2411ef369953d3fc3fe87d79dacba3331d2ba79777747df54eeeeeeee72c6cc9bc9ef2cf3808f1641a3e82f633293dc62261d1275c8600d19d880065c2e278de2207a98e03590eabbab49fa19364516d246bac64720b3a67d8ee639a9c6acf16834e2d758541c611603f5aa87e89f0e9d8dd023b406053b0162239402615aa665e06423327752e937d3eccc4d3c7147f126c74ddfd41b2380aa6fcb896d92e2cf371cc37c8ac10043f6f35bcab6d1a4d2cfe4b5642bfef759c2c03170f5e6210411d1b2d7441f4da4c541155b4ac1cd300c6423e8672f1f7b3682192189340a0baada97801c210e199ee0f5b7287d390d72ce67a0358263e03a7f4e49a44a4ecd235c890f79ddcce94332d3925d1c15db160c3ec3a83a0803bfb0d80dc700832ba9f3bbf95c0841191c671d8482d3f77272a4b4b1381e0c3e647271451fa95b0abf5883a96ef41b8863d0e86fb66d1928b26c1ab89f75338cea041b097e611feb7634d0917945a5dfcde7c2e7b97336a2e0891b24e6c8d0a8d1f733a07f0216c8c1d1a88992cb03aabd6863ac378d04c7c0db47ea76f3b4fd9ef665ddd7bed3523a92818621231e7cbaa79f0fc7804f86263c0fac31b2a3c69c909f6598b8e27e062e77e2a26dbbddd54c9a88c99cceddccccccccccceccceddcccccccccccecc541b6dcca38d63667ee63a520a29853d66ee5587fc4f8a9e34904e3d297af25212a484494b499092918730111ec22a6ee6666ef6e60c70333773b337df34377333374fe77697724e6c62589651aa514d1b8db68d1b6d1cd77524524aa7b4d7a56e07b70a330bb7f08b7373333773b337b333bf208472b1333e0608bb5bf618c7edee7ad973bbbb598661d4e3d6c3b8f53ccaed7b1edda7de3f414a49b749b7497bb6015841a594526a6bb31d834a2aa76a2f922546ea52211bef96d666396f6d7eaa18037383b7489010893195fabdbd514ddf4436187e7855273dfffed6f2b5d4dd1b2dcf4fc3de587956797e7eed8d92d73dbfbbf646cac480a8fd196351fba9c643ed1fb914b57f9338a80d7273083bf40220302b188bcc481fc981876de56379956fe5b7d2a7f29bf7957edb64cbc7f2291fe9bb2f656219d5461b47fae4cff71daafe0c44f5672caa7f1fa9fece43f57729aabfc441f516cc3f267b710ea1fa779ff7a4ef445fc45e50fd491f8cf6226645f5cf38d20763f46266a4fa933ed3f622cda1fa6fdccac7f2a4ef857b911aa1fa933e97dabda80951fd37fa2ddfae4d3fcbb7f2a97ca58f5f6bc3ef7d3dae0d7fcae7aab5e1277dee125964718b50f9479fc8427016623351f9b34ff41e2a3ba1f24f7e7ef9aa2bc3b3c2db92edd4f24e2d1d6c726219d5a84bb2e4c4329ab9e4c4324c4e6cca295fd24f45e85311a8cfd0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0500b10212121212121212121212121212121212121212121212121212121212121212121212121962c70bb9c5846b5d1c675a414afa4b2c2d2e2f2628201738a49b956a9130c0cd38b4b4b0c19336256b3e5726961595129cdf8d3ca55252f85d4dffd07c32aecd571dbe80361a8b2f135ca40191333485532332f95005b78aeaab15c0a68a9da290acda56e145e8b64ed8d18da28d5a2c3b633a2c6aafe9b2f8e0a8abb27a5e0947e5feace28c186fe2adf07b6a604f2ccf03c907a605ff067f67ec126f2eabe3b1da4358214ea3efd8f6b773a5ca4e089da4a94da108ddade5ffb69147764f4a3e3ec3cd228f937afd0c9bb4c445e6b0629a087e8d0ada0fd68ab0e3dc76ff6d54424e993423af4ef3ed9d321904fa6dc0b2fead03fc7717cf41affa0ea44d5e4aaefa486feaa37307ea44397c2fdb5956b2ce7e99a4a2177a5983c4d524ab944e0e65cb65606a2a03047e793e335fd3952bedcc2b7f058061996db75b0edcad9a06843651a6cadbabfbf4fca01b35c6d726219d5684b4e2ca3d9f8ea959c5886b16a7cc989cd514ec92a777577dfe0c0e322eeeeeeeeee3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e5e6c2700425dcbed72669b65dc9eb99c58a6ada671bb8665541b711cb773a38deb48de7a1eb77b295e4965a5655b5ab8bda5c5e5c5345ffd306693e93aede9c4eda7e91a624564884a8531c15a414ac611480a2bc29e602fec6584f533c46ac59c35c95c9e11654c3acc5ad86218b76319b7cbc901a9fc8ec3a2b40dfb39b53798348ee7354d05df3c6906270b688e41b345348ee3388e2a954aa5524d97919e2e97cbe5521da14abc25b59f0915b525c84a79a629279651954aa55269d3355dd3355dd33563e3ba8e444a49f14ab2c452676af64c1591b99a3f94c873999cfc2b2cc24695d7b44aa552a926d01c67d06c4d22ae23a58ce3388e9e4aa552a954b5ff555658585a5a5c5c0247a84ea9b539f5b03530e8a9386c4da360b8d890ab8217f5e7a58a27971027d70f27d74baa08e67309726975c884c86b5c5c8264d409c214c17084277640142332a4b28d4654a4b2f750d948e5d70e2aff0ae843b80fa5226a7fcce7409f0d1b2a3010c0868d027005e87430ffeecb78e2ede7f0fd46cf5f0d186bdb9b18d503618a7c5c1e861a6844301f47b4035051794d69ec7c16478508951fce894a7ca962972a75a9d105c86bfa4b2c95204a4a288d2e40360a80428d9ce3361487ea74f8b83caadb21abe4c09524418ed3adba55ed0f6a944a4f735058940a0f1baaa81ca74b9546c7d1889c88c52905616b7e1ca7c4f29a8ed52815a0fec1a25492d8b03fa58a5d2aa58a2aaa94baa2a2aaad028a2f5e09143d0f2c8d2a63e702e4389c1317a0ef04e33bb5bed3f89d7ebe1e3ebc9a3dbf0a0f2725b5a751272636ec528e73c2c1d600752cf041ed2e75ea3e982298d7daf46b448e73d2616b82902ab11c07868bad4902e6890a50a360b2d8b07f75851f34a2daa71e8aaae852e41285cb13fb42bfe97379f95c9cb82ce9b0dfe5736939711c17221757edef47b90429f16418692283d528ea45840c712042bc70204fbcb8e249e517bbc915476a3f4cccc9d5a82627278d9a2edfa949d7f4e3743a287872e59c723a1da7261d9eaa38b94e55c84c9eaac05e2a05bbfbf14ff38fdae0fccb2af7498ae26875f97c5a7ef4f91055962282d6a6c7714c405e33b2a85255f4825255fb786df85b3efa3f6366f4f3b289b1983aa00e68a6d3d11d91e9749c5c27d7c9a512863502100000a88c1df60ba0d3a1a2a483410a9ee81234d67e17a246891d50eda0252e2d17268d9a1dd0de5819631b69ff8132386a9a378634aa325e1ccf4a8fa00a24460082a4083f508470058ca79c53ca68c19b75913c61020b8fd645f2e4882c0b231892273540f28488172110100a41ee44cb206a020d7a5852440e4e086229a5cc154138814609490862890d163caa64a6076f3b027442103b90218247aa9b2408208210840f4204b143c803105fc82401c20a404ce1c30c8d0e1ecb10aaf0b824689ec04ac2632942430540f4400520828050bc4d0b3576f0b42c66152d38d5e899c1d00e9e8ca209dea86e9219308105a1ca972aa59492e68919ec80a6082fa56e9219cc009c814a052c324ccc00888c135eb7854c10cf93c210bc97960c0a92805728c25ac2e3ea2629320410de563749911f8a8a08f9244570e061f4e18e19309c6981a772851f6f850a50091e8c2432397834099a263c169f2f62c0850c5430b305cfa56e92186ce183d75237490c9e6005afab9b240648a8e24b7905104c3f93d54d12832475ab9b24065054f16f527ab0b1f606f65cf9a78a48e5973ea8f341221c576550f421375e9ca9c3d6e8d0430f3ffc20841075e7feec013370f6d430599245e589337586bddb21a362a064d5307b2a0b3cfe6e1cc8d448c7c4ed726219d5465cb33a0adbb87d3b1221217591088d15ac8b44a848bdf11b1ae8bf16c4a32f7a14ccd1cf83c72f9a8055fbbd6213144df023457fd506b7c38ee11878fc62db192ee2872a9908e57ea28825b54b442ea58e04c51abca73a486308792fc4a33c33e5b74d3ce1845167a730624890ced6dcfc9887244be0a0b351c8010a0d7436093f5638a12305d00a88e86c18373f1b360a29963042e786941f344167bb0022576d28f5e0854a67823c3a590abc70735450844b477eabc35136963b598321384d40da10835011a38e7c1e9d990eb9a794fc9c024f76c8eedd6d84693d2e722f82229520b95deec6989a593c8f39e79c379c72a66bfa19fc49e94aefdd658da5cfb68ed3bf3a2c3133a3175dc876578bba6bc5e664c1c3822ab9df2d02078a3c4454693302c5013ca07e345b83491b0954f97c812a599c152b810d8649907578b41bba3d0b5bf3a4aa3fcf127e9adf2347f5e7599b3dcdad3cfc5dc6cba8fd32102049b5bf8747aafda41975db6d5fe4e93a3f8e52fb136fc0a1f6e4fd1cfdbe53fb3bf96fe5b1efe00c07a8fd3d4e0b3840ed3f4094ba722789f69cb09fef148711d7f9b60391fea8bd193b66540aeecca824e657a5ecaab4f326613385db06cc1fbd7fda8f3e6dc45df780e908a8dbcdd0ed4040a5e00e022afdcde39c65bb247da0eb0facd20c740c9c6182b2b1256cdcc3ac6e3914af98212c3b9c51103913f54d40e4b892a56b9a85e000128a1ca9d89f66c07e7eca36cae52736c75d03b0d744d6c0cffabb7b00f63c9f7e293503e98e147e9e8cf9082d8b2dd359193d947a1e0b15dcfdb75979b48c91056f132c9c6ce08320591c21095da060dc510214511055018b244c2c91031028b902899391091f841042941430a90216534c41092b5c89d781124e28ba620a292041c491103481c3500d8420850b2889a09f1acecfa9f371346afe3c82d33a8d44156dd4391ffbed66e8d302c0d30cac84bbbbbb3bf63d41fe45edd61cce5fd3fd419ff254f9fd382da04e9007adcd3bfc371de6c0d13f2768e3863a4b29a51fa93ee39389278ef0e4a6db6f50fb092314d5ee6efe217d9c1650319007f8835609dae8b09f37292733b79d833b5efdb1f7ecbbe97067d7465c25554a3047873ffa776cdce4dcb034ca9f00aa2da31084c4901a80ba41480cb16dfefb75f6f5f81daef4776c75d0c74e5df9ed64b57b4a7aee65a783d48122fdb4e77668bfc351360e3cd1df2a7294825c8798f8c3eb0e175506c54e0123ce3ef18773a36f27dbc92a0545f9c3ab3383e20da97ac310de56032ffbfead061efd7d4a7b74aaee64393aa002a8442d39f5b87488060200000093160000280c0c088422390c658128e93e1400116f8c405c523419ca22510ea3308ca220a48c2180100208310c90a9a1a102e033232cc6eb722f3a856b772840c7c4cb52f02e5cf31490d3b5d577f9d67ae6c6aa16e51205ed9aa5eae51ac49bcf7694ebc569b758b204ba2073c15080fdb3f61a211f95c50486a3914915fb818aed2c23cc0cc2d4c77b5bd34040a8a604b992e1a49488dc33fb8f28e7445b371526cbdf0890331dc89db689c11f6e8a0c6f65eaf86036979dd8a2ad2affc552ea62ff00dc839803de41ea6ad607e58fd5f9d02e513afd58e49820d4531dc88ca9b2923a5cfcc3ec67bf83fcc0d7a9ee624f51121f43f6402615045db1aa158da2c331243e4f4ba3444db2b7f6ddeeb1c9fae599331e3db3f2d1a6cadd3d78e7384cc557a3669fa6a0200afcb97f09aa544c4c5430aef3b3c6c796ca9190cefe13192df4b1a29e1f0d937d7c404e0782a3714dfb243520b2915ddd31c65af9c0e746ce46af2800a1ec2bf39ff5f83e4fea3ffe134aa40b2e8910ffb588fb8069cfc44be9fee820bab48f4ee182be098a9a85597595edb9034d50acf7968ec5838bc982de50306b83a0643de4d2e3d6bec39ef1bd3941ac4a0f37faa37c1567b68ac9b5d52ccb74d6ac77485620904a52fa743108a2d22036d82a63f5be11c10aaff420a18acfea383e895e31fc2fe73ecaf161ed10cd3b151725115d438c537ed55eb4829f2cfb940972c3f9e46288c4950e68b14acb32fed7642adc62f79da96bf251f782c85fd1c1231d4a5a8893180f48ccb676061d86d66b061573577178cb49dc513778ca694002be77a78dd43bad6beac4d6d7d62247d2b2a455908a92fbf3851834d86bbfe8c6bbadf2a38273226e64753e805a84707ed9e5339ce56fa1f6812d0776a452653f91385fa8b305980fa840a660b774b683fbf1deae4004fb402c973cd9e4767af612af418db54ba6ff5eb1d69904a9a5bd4df607769bf3181a65abe3ffccb7aac2c805605c711d006776b1f4b22592e57d060c279b8ae33d5da1ba1affe5f51394eef811acd98193349542649110e0cb3f854afaeebe29de76a30043b880158efe94295c5750af3768a4ab1149936fcf5544f2d15ec1fe86172adb3ed888b1fbe8a47a7f45a868aa4dedea5686e75e7e16fcf2ea0a115a363ffdf5ceb9a2da064ceeee2e7c0f164fe572ee9d321ccfc341b5ad02e3515cacdc33dce68cd7dc002209b09ecfc40ba09742b0b9a0769ee0617a410fe116b40051f14cfa81e2d8ca36e908dc3097251a4e0738f04ad5b040e8a93c16f25ebe0dea9946f5e4444d791a5d0a975149a401b5c28ed922dc586d3ae91478cec223f0e1d95f29939355437922b133e992231d4b56f8010c8da5cb476df00ddfd3f1092663f3a03457c0170a79b94875b4ba6a60d8941cbdd47450260a12bc9a9ed03da80c653d4e0d533b8b70e88be810d409209ffa67ae5d5c7c718d3d03a6c8f815ae3c8432bd963762a1bfc52e52882805c0a881bd2cfabab16c68a9c48d290c92aa48783b11f96bc2837749589c44840b462494103d049951e239b40b12c89d7719f475a8562cabc3d0c99003e15ef3e9365c010370786d1429e62bd1202e72f768798085b95bfb944c70a3f956ef01b6bc1e0223e37fd16afc5cc79014314069dae73fd6b9f95197f72de6507ef460bdb25a8baeb25cdc6b5b9674c694f73d15c98ce28a42d301b88a152954969ca212f55aa42749d5a40c3ecdd75d7b5f1fa57644298a3df26f018586885a477468e4527aad0329eea15c9b0c35f78c6322f47c027555a693192a1d599b21e064ca88db40527ed3a0a718deef881de2d3acc2de0dadc7ec5b85d04b8a4471d04137d99fd25d914f97d991e4e71eefaef6d7a9905e147db003b86d878ef4f99949ffb0927a95009cf8169d8c2484ce2935d07d03181a976860a646128243c431d629ee18f81fdd918dcca8bfc285bb0bb64286ec8c9d3a96112f784a703c334249e636b11fbfe8e98f0965563e5474c504a650bc89196cb09bedac6f9d43e217458269ccaf62cb93343d44c1b47ec60e6fc7031be014f0510ab9a7794c7e8cc9d91a7753edbd8df04afdeea0e7c565c7b95005c8c31947f3d464b72096a6a1271b74fe084e66b128b5b6cd22632b6401dc45d90dbb76877001b34971e96676026bda75d72588b2ca9df80ef58e0361046c00a68c4243dcbd802007c0289d0e5aa3c66451e38b48418508b8399ba1d127e0b3df0a5562ee40196e283db9bbae1a1258e339d71d94a1a9d01329b06b800e3172ca15bd40119513451eb6f93c994fa55275d878714a420560b76aa5c94550163c858e93d149744cb651b1d85255c2a057aa83b720d4ae27825767401f44b34a2779f102f9e7dfa69c37b26843899094712d085061744e9470b4af034364ae71c702d3c73d4353bca0836e9fab2c910e19130ffe6482e1589ea3cf50899d82475a364218343ac75c4cf30d43d62a2cc4a9769b0528d68c59fe9b8fa838f56d200e14b32ca755a2bcf763c2c7e290d6a1c63781cb67ca37fd5057b5f67b39a186f7a048f891f068f56490d1ca2156c613b91e4f16fab7d8bec613531e263b649810aa2f375b87fee9f01f2f23269865288cac232ecf41644604526d92b5c9d6763063809487401f9b107ea62415bed193600d52c755b1bf6001410d22b8bf6d38764746120646bec049a2fa72a9ae4ddfc8a367aa9a1a2cf70c9c6e7e6393624f4f3b56dcaa71a2e858bb34c6bcb1bd9fd539c2ce55c83f07f75467aa3a11fb3d123b635c6cd492e872c2f949ddcb4c72a57baa38c9cedb2393fde628baa25a173fc5eada44724cb5d227c0bf4584b2d3bd1336fcebff815e6b94324e5f0b867d36f10fc87af6b0cb7a9e8cbcdc806f368fde3502ac0ad91c8cb0398558178f5bb2319e326e8da3da87d0c10563d31b192f2bece720368ad38c7ddd4ac0e563f6575b8acc6832ac5c8f59cfecee834b1e9cea71c2ac067f4055809c93b2573cc7363a81f39b31f5d32db218a6b3744b1a661e69f852316db78455661763cbabb9aa906fbd16af68aa15c2f36c0d99154eb17b61e91e7562db6426008762cd2bd4f5b99b160f190711d603e324311ca83a1591426ec1434de176e2af6847df20d7164d2cc8640db9f0bf44aa008ec8392b63d0ae5549d76680df3958cf52414ca0e68a16b440975e769a5e6c864c47990d31f5280c2806895b237242d2901325799e90a53f4ff82b3063361059f9b03d765b1fb8624e26d83c3ed2e0507b2f1b8733c48b181d4ef164cd1606352443702a58908d2fe0b7bce83493cca2297712c1093c9bfa4e24db6cbedc764c9c7d9d0b7db94801dbd322d8d68e32066fbc2631c9f8be4977c2cfb5654111a8c95d3b22e7bbdf1c7eb8a0092cf6b94a04c5583f87df58e182a66077826e04f82bfcb6797cf4f79c7a2de329b0ec7d29260fd51ed50b151c617d8a898679b40942288fdb86330dcb609e9f3f4168b58f89f755660d7b76693c60de22737fe6af21c45a8f4f04717573a0487e875765a4f4b7f2692d07c1f817e95ff9c8abffb6b5676771e4853beef9d3f2a7e0011f1e4be9ef3d7ad74effd6c076f0a1bf491d10c8f5466872e8cfb92a2f94a200cd5b2913680469c81df8843928acefe438334c08e540d9dc67a74deca7d80b9d4d81e6b3e241cc0a89cac31230e97bb6680ba1f4ae53ba6d9ed2f1180b3b933bcc434ae34f7236ec5607d97e25db56a51457cbc850fcfa5dd0fc047b1c6586de171f7308d9d04892de5ef6e438edc142082939f3deade3c04fbd9475337165108fb57d75eeb24c7703d9ef629c0d381dbf975ab3fde34939e0028cad7589072dedc39eec1d841f6c3af17e412a59813320627396dee45d916ace101a0984ecdd9b197b19973a1d4fa214e29e49e7931f95dcba68cee73a6eaf5242c357761f093d795345234e241407df406f0523b9a673866c8c0ceb391418a67c33f4650aeb4fc1650d4c0222daa82840f88e382d464bc702cac3ed34736ec96e45959d5ae673282124aff71e063abd6509dec5338dc14348e601444238450971823d240779b4d10ef3e4dc814804733382987959b468431f2349b4a36333c9248d25e4f9b9438b0936e94960f62cdaf4f89fd9b36d9d2944e174e28b3aa28c6797e8d8b859f4bb3c23d7a8c0fedf4612b702f1c4cd22c6529d458f79cd4d745f52900dd810c1ef70225b71f83f121776ff5f8f95dc32b5ce63839712e91098319f54dc2c229ad3c2d24f93382d54e72e252b60523c23c9fbb633067e547505aacda25f0878d2cc828f7b4c82d08fbb70f78af0d156109827d8a55cb29c98e26749ac008aadc9f3af1a6d6532b33970b8c56bd68ea776f72984718b5172053eaa52fb0acab75be8e81aed8568719b6ad5949f87d379459c90fafa10d6d1995f082613ef2c40399ee242705934524792957a0a5c1694ae2d49792847e991a6dd31ff91d65c1e1efcdfa1bbb629fafe52e457d6a78ff495241b348da3f97a586c940c10620f10634f5986fa27f711b2c165d19547b31e3d9b38f5e8b2f03df6bf7dde6a957d32f72281c0f787dacb80b006107c0a3390a4c32eb8ff1d9ed4e8ae74772df9091625c5fced760f3822adcca943c2c2d905605f25a617d5c4a25986931ca426c44eb456f87dc76ce0afc8f28541eae73d8ac33541b68074dadf505cb22a8b9c49e2a8b7d324058b738085e621ebb0fee580a663943401d8fad06aff8b317de771b08b1645aec9d76a76d4fa61c3acd5f8c4dc80cdb5ea122487619277a543b6fcb52668d8cbc8f7c9786e4f56af98255968eb07f703b4ab5db58e6140af69cf69385f9e4ef673a4aeccb313105e36e319dc318698439764bd1cfe3eb0da278fba023b1572d73791b1a654ef4dca79fedf266f75da6864f840e5d4b7d0b55a9e945219d40f1b1a1c2996cf75ef66bdf4d30be0cadbf67e640617173599a2a2bec58dc4959fa5cfb8516f5a4dfea30a579eb9740d3878a4efac8a82442e801fa1fc64a00b11127cf8d24844cafa128eb3235100043d5204dadc6af6881c7b45ffc19b9df3caa20a55209953a949860e04d91b4253df29e7ef4c4d24eff4bc50f8c5881ab3638a7ab1ca9dab8ae6a39cc103e6d08f07eed90fa602079b5a9f4649c5c0c71c8b6a9a3a1c3b0af69981dc0cbc9d81ee3390c4eb20b0c8c50e4ae3b3ebe370e4ce14aea8112dfd4483e54a3bf2a28a6c6764253aee5e1c66ca37897a892779fed6993e19311f888be40d7235f2830259a9f04ab9918426238573c4e0f241f6264ba5a549356425d556a32804b799a9e0730f69f2108eff713556db3a3d90d8965bda27b02ecd40b31d4b932c4b3c541e8127093a3dbc58b1040709260ec24965de8615e58378a5d4ae4397f8a574065086a94c1fcf18b94a636a0436972ecb7d3adda961734dfa2accf8b450bb63ed53e872b7533e74b52e68b03a36dc6f08a88e4e891c80a0bad037d4a657490b045de71dd24925425aac5155ce96dca6eca233af56b4633849240f3bbae8afa59b0d981e5d98577c3e21d68ed4e103f6fa6e8609b857df274d5d74e3f1e09c897d720cb2197cfc4eb9da2dfa3b5678ed30d0290c984459a60c0cb2f1ef29255dfc5735383dd8d9dee2b37ff091baeb49b39600576f10eb6c72f4a181dc442f04dfaf8237c633b9f5b5e801594d0b30345f775cd8b030389fcee92ecf47d6adf771fdff055b2941cb02b8ca357785ce44c5008a6d57f61f39e63d5ccffb2a223e0f687086c69ed668067bae63efe8c817b664bd93f2dc104017e5c8bc037e6e0a669707055063bc30230632e806b682754a9906e60c6316a5f73cabab99832e18d4e0334f4114490c2a126959317efeee5967d7a91f886170d34b077de958a6665c2d6b2e6abd3a57d6ddec9cc2a9be3628e29a635722f062486548ab7ffbe2aa790fbe83cb69c945e68fe2b743129537d5a827f7ddf9f6b1c185f0b37754d99220604265c0cdbed4a779c60e18d98cd8ee58ebefdfbaeee1054f737ed44ada8f74b5c940922e3e0d6d81b9ef14233d87327102d95f7bba8343c63a402673a5b901c882ce8f025de82a4c081ae55d8d72e4abfb853775f17172250dcde9b02d7def0866c2522160f824eeef24f38b24323e75ed77983761cdc8f2363791b7244906ed50f6f03ab2787193d6e27ffa1bda97a1eda3f4fa30043acd973630fea43aa8ca9fd73ab1fdea3d2c4b56b348d77db2ba3342869aae5a642c485fa3547948f9c2a8758549d00adbde9f826f5250d37c4118050657e8ce5476c53a7d7a009f722a13e8e059d055d5f62440b0a5b2734b3981439994c807535f80f117e0f4c5c31d2d53131d8f00f3e27809870b37750156d594302b7c8a6c36b8fd84649d875c88cb8bdb5125c723bb0429fed0e716d813374312d4cefbc6eea25341f5ca46a911a7ca440dca974d703e907c58cb2f30643158f5a9047f07cf269a01c0ad4edba858b723379fb5eef3c45a27dfcf8a82d1e8c92d3d657a722727c591512ec44d3150c36402afc77589ba0e3821582294602ba4d177d829462a9345d0b5fd597956cec61f3d25a4262956c361e8e1b05b5f73b400a4b07172e616ecb30874c1ccfcb2c7d2b18748f08e4761d4045bb764912ac13e9a3cd96f96e4a0029d7eaea8df5a621f05744a018c7a23195350a0354a673b3c4eacea336890290f8817023a475977225cd27954132cb01beb3dcc1e253b0a67ce48188f3313c523ad69e170ee3a60b9f279bbdc7473a79448d4f9207aa5c63cfff3ce79dc48b083764bedd0af4a180cca181ab50884bc3678d3bada2dd04ace630bedd7f38d890a7229a3c723596f83a4bda62dcf7a886e41045a1ad921e294f37b056a2d3e4ec44701ae9f0071ba3eb9d6f7c4d9c80418140769bf6ad65ff285f341d81c1eea4ee9b261268d2d49d94447bbf721e6dc63fdc53d2218a8f98aad12296ef4407990c0ac3d2cc9e03050c836b7720865633b83aa9af5fe87af6ce79885a41046a35f4dfe525658a96add72dc1993f5bcb3688378402bd2308ff6801aa698fd5cf26774e791256be1d571124a9b5ef93d0d0508bd81dfe636ddf27c7ca0078cdb63615d6c0d218ff9010d644e9038e6bbdd4cabe1dab806c1e47e5dce170ceb6e51a35375ce9f18dc159bc6d4886966e64883e8af2eb69a1aabce165d4297db2ce00e280a9d32c1969201bf98d5b7da5bfe295ae89a6809deac6dc6c802ce194c4c507b420b41dee5aa843707549af78af2ae54846c6fb50eed681cf93fa2547536a97d38c5bf31d80c27d2f24cbe425547b88d53765175d1ac9be3a8e213c3412f5d8ae40a883ad732a07d613c72645de3b9835c871a64dbd888956038b2a63dddb665c6d0dd2dbaaace26f1f0f2d57b9cf7c3bea8115f901a4709f544b421ff842c0d247a00d38536d8b4275d4f00839b2d8aae58755cf77a647111b97e21192601dd9d6079d7c08af69e8002abe2e48bdca3ac3a1b6312e27f88e5641284fb364c60604471391fce5c00fb20fc42f1d3a42cb9e1100be4e535fcf7057c6364809a17b13fcf10f04e6301ea7cdc767f21f87710ad3a9b00b8794e5fb4ba9dbea363fa0d7cc48c5c937b556c1c3b3dbfb0bd904a96c08a7148aac47de246d5d9c22d29a4b29c4221f9c4b67c43b29231143d4f1da1a2b8d08e096cf9872efac821788c146b9e040c439e1fd1f79fabce9694546564d07d23c727d4d985fbbc5e28a95fbd7d64a2abff14c7f2b0724eceedd61d37eb26b34f296bd6299c7493c832d590cf0629b7bc56f446ebb74fbbce9a16d9d5aeb15b0c1478a06e8e73b6d939d9a4c6422e9c412a96e5ca368f87e03e12bb67d1d8ef092108a82874ced8494d947ec73b1154ef0a4539d0df391513d1077b191b67c7690674ad90b14bc90735ad53f5bad1e5a2186bb50d426a58e5a90ebcb209af133abc5bd09bec63a2b05858bf4e66eb2017d2ce1cd330237c57309917e90bc1da664b85ae5eaa2a20bb4a79437ea9b1af27bb54a4e3606744ac1ae9b2b282203c808a13085312dc9214deb38aea47057c96b19cc1a77999350a2d3ceb450494f1a8b4c0bff0ca6b53390e5cbc0644ea04dcf3f7688d201dc4937b1c07c3caf7142adbaf129c4144557a5d6ad6d82237ee4f34ad40aaa8188e40ce546f855f51cfaaa0dba3b2fe242b46342a97c99a763c82c88400e46d647b1e4315e4ed4efb688a4c2d0e9cca7087bff444f72484a3b8bca2a907b857d6d32d5bd71d9c9a3726dc838f9f07d1b105198e8d05bd9477f32320b53d831bd45f1e39ceec4423fe10e701f0bf0a2f529411ac7bfaf5a7b65aeac98232667a898187d4f3b6125680f71dcd246004143106f51fffd23f84d5d78ea1cdfe171be5af8e3d6ea9156ab71608fd801f01fd7790e574b04a7fe0ae3b10c13a5862bfd36ab4ece3623fc06d47d6f09bc581da8b37ebb678100a6dcf9cce8e4efa53775b809e1a5525ec6ad867b41e97c01f34c5903316f9fbac8a9e9df586ce95c8e5148e72178890594313fc894b63922de28af613869576703b705741b99cf2b3212d7a1eb4b7aba819db27d218b950d79386c983b47327285512f01d46040a394a37ce8437d5b8a94111c67b6b08cef860968a59fcbc810e076f63adcf5c6abdbebcfb0406b7b4496eca16dc322803c9a7bd11b6019bb3e04117ddf4e88a1d5916eca4fa13e760ae9888793dfea363dec233fac0080e168b09bc3e9088ad35661b124bc468317145017b55b6aee8335bdf620235b2b53fb5cfaa385017134f3347597b0e38c8c15e4c7437a5ffa7a0dd7dae5d5100638212900ae5f6dc4f4a23e466e284a3421b45b07653041756c6cdacf2f95636966b7bbb4cacaaefbd155732b1aea6f7653ee8bfd67b32666d5d867bb89315ebf5d9aab354eb3dd3d5b7640ee8938d50c29f6236ca1a36a575e21c932fce51f69e7c2c1f5fb26269bd77c9ceda3a3db7704f26966b7bbbcc07ddeabf5756acd531ba0b67d958bc3e5b89f5b5be375c7a9f8c017dd96065f06459dd75109ced3762ab83baa3c4966280b00314454cee1760acc15725fc6db45e8deed7d6797a8d5fa3efe935fe706b5fe7c0ea28b10cec1c27050e5cf3f690426cac1f44a40902f468f657efad322396e3b1b494e5eab8fd953514a41068494632c2ecdeb6e6e0d5c2e539c1d8fbc299ecc792b33af605736987c495ec8d9aebae2f988bbb42ce542e053a9f714e9960b1b2160e4a2c9da259e9a6cb9ae42c818d602765cbfae47cff8d93a4cc29506f649deecaeed3fe767b2153339b60f4c265bbb1b13c0dff7dd0e306ad908cce2c8914e54fd0bba19cd0659544e305b567f88d692f66b97315e7febab9fc5ae5c07b4d53a37c5184813b65124d5c64198eda77972f190dcf029d49a2789505bec74d96cd904595eb274e89fc8983b35d26dcd803e1e28cdf6df68769dc78abe06c6e3ee5035062b16f50f60fe29a79896c824175254ce4e5d99210b7e0d8fa73beb45c9d544f314cd9c926d10ff0f987034f03b3650664ca0852c64d6d0c0f2ea7213b990e8586d5e8907e2ceac3388439533d851abbe38d410d28bb1c9978ad21428018564aef3c46c7e9bc17815ba8982c7166ab87cf698bd355ab1f4d4227247ef99b0b4675c9215e84dc2630ca5a300692a41c2c29b9f00aec0d378d7c8cbcbe3edd4d0c2263bde2dc918c4943730e674d43707b10e2310c0f037e79e856f343f9739e13b037075f1e8f8578ca0a904479a4faa174d56227933af7941141e3df3c595c0969687d1fb1c3b3077500f4f2123c9118b79f594f6d34619f42a28d7c7b22a33979d6da9019444c74c137558e193993ffba64c86e9c7cee5608b0e80f1e60a0b3847b24cbf1a64f5e07b8f6c02ece8c3d89b378f7141fb25e7a85af356b936cbec07896f2ac1265fa0e35eb994e5427b2d0ab651abb95898689c66ef8699413a7008f9ce8621aeec0486e58dcda8d88233e4ac34a32f87499ad13615800bc72f07f07604c7b2e1da034a4a3c11fb36c0eeb07751620020cd44af016d18641e0a314afc82909a0c87a503db8d6ff9a89c659fa3659b3cdc197c9222b4e8e7be7fd0fe8055687aca6e2bf7023e5aaa902573cc6720d10cbe1135a7db9722cebb49a1663a09c39b0954404b5bf3f638978c4b527fb984d185eb33b061f9180f364204fcbf9387201fa7867d76e21ff4a1d1db19205eba0cc786898640f47f6b428fbda64e224b9d140a86d0e42a4640bd140a92aade1b689f901dac97b7e40c064cbc48498cc141d02e73392ca9d0401ded57ec4e60e5fae896ec9382ebcef250301bbd1c7ba5c4becae4c1e4368683d7750c0a6a055ebb3126b17999ac4de7cbcc1ac86278029fdfcd79097ec43c71bd020347a1fac067c807d45fc801b6f90447ae600a0436f73bae6ca878c37241a30d6a05789a85affc51b3e35866856f2c12d8e24e6802dc4a156bc61938c9cd5045a53728f91c01d13ca2abe03741825448388e15bf041d132c42b1a12427d4b1f3bebffd580535b64b532b08639b06ee450e0c63864b8d9431637fb10e4a61c70433d957a4d6e2037b3d520f4732c8c5e60bf6f7203b93daf82a43bc5bae8f5adbd2a7a6777905bf315167a4ad9677607793bad50a1f73b7e153d6637941b35e7ff7207b9b9beadf27600371874e1d67f9ba27fd59ec7fa765c1023c914d0116b8c10b3c7cfb5dff7d8badb3d4e3cc2e1fa0ebce807bc68ca25da669658962edb2fb2f2e4ef3c13878a775af60b91bdb443779f7f74dbcd6a7350a738180354fb52f94bb12e7dfe75b427ebcd475d46c7dddd992c12f6813283e38a46b44c39117ae752a5ed7e84e040b8a7765734b94aabe33d9e0acecfd738f63d33db18d86daab28bd618a59f0ec2331a5d30f8621ac4b59781f0097d5ab7c1e6b856a97c1ec02b711b9ab47c1ae6ca42462224b9496cee314d2ca917b2e175a66fba534672c6e407a8b6b88731c4f281746b0e929e02de1222d026b6dc01b9dc9962b9e009406ed8f491ec4756fb5806c19c45a00cef800bc7ecf60c84fb179f673f25a515ccd1cae2badfc3f90861f04573a6e23c46737f1469e1873bf9c3d25131d3e6d06a449a371994b0008d75947bc47bab2f1ee08164779ecba5039be223f9f399bf71af888e6571a26f7ee6b3bb1bb0447ef6a506d935c0019bdbc3c40360d4b45c8241cccf88fd41458c77b77f292c8999f02ef6ac0a3502530a851ee55abd45a5a7c6f2fda802326fa5f5bd1b8f57deaeb8889f94799fc22c650d54930d8d91d90e49a4637b84c6e086ed26383be64b1478d22f7f87716ec84dedffe9be43af6420bff39520f413c40c40ad9ea89ea7ee345b948f20c3f2ff584a131a3c43edc50c001a726939f3570b32c7059f860adb793a176259586614fdcd9c0111c24541c645e2baf99684f0b86d65a54e468e4b0b7b56c4a96d5404e1478e1b89fea35b055d3643443bb3897d6bb64979b6a13734a67bac96a34b3d6afc9614ed36cd6f5288e992e6b8092eada8815b2981e6c0a64bb4f92a48ba13c40c3659ff69a7aaf6947614e218c63432d41e7f9aba162f5e315584389a48b92292a2835ab986c029bb815c3a468e45c0afbf80eb4386ec92cf7ed9403e257ce0723d9e6860f69891fa75578da4b11a9479241f8e37a45cb0a624db15aa0507b5f4ae1af65399d14100b0b4b7b7d422c6fb9c40a6dd8b2cbee8624e95ab5631b2a92a5a7b859fbe6a16dd3abaef6964eeb67831c578d1445352ce0c5124e529304dd5888949789640a9c3e586780e62ef5db20b9a54d291d821ddeb47c85ee5d030c274e47f38c3f3ccd92ad96f652412eaabb38ae68a47e7280f82de36f4b2ce36c07553015ef70ea0ba4500a18ab2110569e1c45c6e8f24c8c67d10897f8747edee0e5c94260ab955f911e43d5558a0c2d39067648f666276791ae514b36cfc7a2e90b002332628e2cc3f27d4089017003fe3cf93ebdab6845a7f2b92594143bbce9803587dd8240539a9ee44d2678a4fb6e4ba6d2a83716cccf9edd2fe157a49d57a7e6d330dee1d619e18dda39ae2d5038e3aef70fdb07df0d35ee9db3bff9bd8fb5d155facb82892744a8932628a5c7510c3a97022ce53ba6d96d4aa8513bc9d25ef0f1b68fc8ecc0b012e13d46469db4d32fc01756288b5c16d6204a8a18abb0d179d7491906deb1949f682791ccc26882b205f07c80303adb526c99f7a72a73a87ab5ca132c2300ef57c288f7a50c020015426430d015a53c3a1e160270fda6373826816d221a2e5609784a1ac42034cf46d4d13e3076e50431d2b7120ba8804c4b8c367d11c20c78d76664c10ea55c47425d514665806680f866d6ff280f707a545a76825e4f83cada6767d60a2b37aed5e482b78017e905ed68536543a18e0b790bc375115fbbeb85ec22f203ccb068cbd36261626990e5f6553a3b311778847a1a9346d7729dfda1d37f1419293876e3700373cd4f953bdfd13c889e60ecf283108022be5c939662a2751a3903905e0d89948ad0098e14d899cff07d6981d5bae7d35c0216e291b239f390e68f031e49897091517ab0f4d8202998b93c250a193c735fc86815dd670271109306fb2ff1b78d355c32542803f45ace8b18251b786280ac7c5abe8fe488d77b033d8ea108c4b513e9f7d4f667ca2943eae083199858c0464b75a1c0349fc57980589cd7b0a84e057eaaaf9b73e54d8ae00e7d6f987775662ae3b8b8df9871a1278a0131b81460bff3b400cb03cf312fab6b5adf556d0ccc60a60cde48853cf7486d39c92f3c5d99a995899c03a17e0d0474a287074f7dc886ac9515221d4250efbadafec74103fcd3a2938d0ac554f26e95c60b09628eb7cbdbc8dbace3da6f5d013b120ce68ae79d263bf003eb5fc93445e7fedc300804a9fbfe4ad8898eb2445e97cc7055a6f622bef9793897df03fdcba4ce1d1353d73e441421d848174f64f1e32c83eae4b2dbdbe409249899ef911f92c6059d276a69112969087401c0df8cb02f7bc68d6a0b1ea4c0f88ee733a201392d123a63c7963c03be3ce4415141f891d04d70391ad148f3021c614b3ccdd8b16b91815da29a8fd9061adc29cfe17d1f0f93c616125c8b43fc0c48b92cedf82a5f86dfcf0708b383032859322e5d74874e40c3d8ac1cc69a4db79e116261c80b9a16da231194dec0815b30a95872fbaccdd55bed7a83a28fd7acaf9aac074023a9a80788274436f235e43ad219a174e88122a627a4f77c9d4653145a6e8f1b6ddba3535cd26424ad0327557a4e8827b435b3cb9156de44028b6ff9ea3e73b4486dbfb7dfcb2762bbe78112b8e9deb9dfc2bb1f9dbb70c520cbbe5541b2d9307b30d55d6d8045f0c2ca98f716d4ad69eb842164930a8f2bc4888f23388d640643a0f121b82f6f304ea5008a6434db51aba39e2816303ec2791a18c9975246ff382f4608af2a41ea8fc6fa0f635c2fa65762f56b162455d120e22654711ba084e0bf531ac726a76ecf7cddd79544fc0ce6189c28b134e107e88c486ee133f89ee03cef3ad618991af5a83ee65c69a7d0ebb78f11a3bb8ac06b407f5709c4007c7448649d4a22330b40a681de802f50c467c7db49ee821d24413fe95c3ea27ed2e142fec042699a307a2da951f43a4f8b2ec52a4584552c82da41cdc36623d92b396e47b3cc74b042b342564bc11a271dbdb39a22ff4ee0cda7bf0a746ef4536ccc2f4217b945ab5073aa2f7d51c70df40733ebf3e58f575a8c68caede4f91b191cdea2ac30fd7ca195f1dc15a90a9167877017c46aa41d8cc0db97fd63a49cdf63a7fd93d2196c7406ca144e4679bed475cf6895aee5eebb7d3d8bd1263e731e227d612d0b578f1518c0cc3dda2442a9d0629b6045613081f40a0f2d9ae5a6dfcdf40b750f5c2d01a336126183b3294b1f3469db626e49addf89de63ceefc0bd44a79d025d47c8c6b8470dae98ba10995464212e651e6db1a32439ac72571007a62bffbfb75817f03db434663c873cf5a64c0bc620a291faea1e11e6ab90f0a024ded45188c6e174390aab410c1d4d25204b8b57546877a586706036d41210519f0bb3ef98e5681db2b79540464dad00c57454492edc97f9ad8c25a507a0c981a4d8554b0fa77e6580dd71e07652b051f52e27a9d325be30991fb5899614a625398d43a25748958672507163cf44c1bb29278a93a3e63247071ffce66b1013801bdbebd813a42d2d03b8701c6b40f2869243956f3412d9af7016ec34184aa665c73cf4643f49f70d83f64b2dacac7c1602f5580d120506d07218dc94b85adcdd6c7dd9542496a90642263f70712d6c817a70927ee30dbafb9cee3905676b6909c34d9156bee0933ae848cf22c0f91e0e3b4a0f0a6b9547eaeb8e5104c1ae428cf0e4e501d62fce70641296b8aa9828877480130026487b52e167de61fffa76d1bae69d40180b032643296212deef3eddad5a9c42185925de586180f2e6bea1101890a7de091825acd52339a230501a6c8c6cca7966dc43cba8478060112a0a7831466d3ac5312bc8cc83f1626a29ecd0075db629c7ab47ee4221a47934b635df9b51930c366f2202e0329421417d74e11cab9541010c3c0c76d8e1cb924cecd0482afde7608b2d09b95cb38c503857322f18bde1043d93646e216de907479e1ddae18d6d4dbdf3816d265ef385a226a0dc03da191072ccec9c78562716fac7592d8922096311c7c048be53958ca08a4022115444cfc09f7919db15708c48b05e5d2d2830c73725ad9ac66b41d0ad757ec4e695e56c9564ed953346ead566280f3fab433a596b6d649916846c829135355e274c5d83f04985eac92db74844876c1edf21e5ec862e0a556b218d3d46b1731a07abc222beae88c4e3ea5d041cd1082b72a76dc54e3a40b8fd9d66f59a070ee6cb4ba2064ddefa28e726b87d512d6a42d2edf2d8f5635617da749f68a824a07bef4a9b44c3aea9fa8f1d524e0ab122d07d84808f2bcfdfea8624a28796fc94fe3d09348335a2db5b583e91c7e80bdbaa2ec30a370a77d30c82a057d473184a880d1f847cb6b07f1f33f5f006a19d9b2ff193c5dd5ed4ad6f6f3cde6b69252e16f97867d13d41a5c3a764829e60b496e9a2776bf7964eca5b88363f9feeba6a3918100a0aa8ce35692b2f9a456938cd614b510d5025ccc8a6fa09d2a8d746dbd958cce17ec1bb8f996bf5ca0d1bb1232be92e0c792a014e3d410c61db09732efae7bf0d8a54623b31fffe20652c674248e68ef2acb8e35aa0e84c934917619b818fd6897f9391c285de896708d6654036cb92a253260f740db9cffae03b52068401df07f29d06248ecc13e4989a8831450ec549bedbe9773c35ad72e1056e15bc5af5f4e49cc9fb43ff78689aace7a61fc13b24e56131dd8a694c3ce333f3cd2183ded4c3d9d31bb2a9b3d49a0dafbb6810d57bdbd17c512dacef0bd95caddde8908f301cc34821eed0cf0ea34d38e211ce0085930e70baf8ccaa357c27cc20b2febe9f44465ad06174d54e5a3073fe50b07d0ea1bebda1a2d2ade688709d8bc9e7b376501185cd66172f865f6d651994aedee208afe22d56b1164be199426468e01ee0428e5212e997a6d7166abb42bf33906f6d1e26fd8c0689e356323c72910767cc01dddd9615ca5053bacc704fc64384be914285c406324702b9c16553c042665cd1cb0c647f7b02494fa98aa2932a5713e3a1c52878b1dcfd95bbf98feb8f0e54c54569076ed29d0308cf0f7afe677d10e6391ca96be92b6a0e889761c5873ce2b16543dc9bc6b1e0a7f3119c3079954172a826f9079ae2c236c52b2355cdac0ce6a62f48b0ae1142b8256a2319b2ae8447dda1e10b8ab95a8923c48c9759a37b30a39984ea8cb38a882483b5f2136508d9ac558a659c07b6e95603080eedd1c12bedbc0e18ccf08544f99f18f10d1e98fa3f764802550341031edc40f53579ef703958ec73d39d8bdf904b684d51c1fc2a525a079dcee86d323130c545fe9873f85d681e7a7db3e9b355ecf293b57ca0afcdc0eca7b8250798ad73a7ae0090c96770acd4ec3b90da6c72e38b05513df4d9aea280c7f78520a84a0d400674b5367456a37e2e5fc3e15d639168841bcbbcc1a2b656fda385c75189a2bac7f13a1134c8bb4df1f86a0963d6ef632ac22262a4831441979ca1e078513ca3dbbc0301e73425bf306ae29f887334161d93b22663a5aa1446f4859931cda5e1fe70394b14022633284509521fc950ffa3361f2f1e823a4196191c9b7bff89378cebfa1d2740fdf00c17f69211e32788d569081b41b5e5675cbb3d44142e730ddce3abcbd1503b45fee59670ee16b50c90a59f2a81a61aafd14ffb5e66c62a7bb2d34b4bb7c7636171a6ac9da63affc76c4c52f46456267dd0a83d668a0d39b316ef5fd3496fc54f8f02a37b0be1cbb57e4f83b245928066413ddb17164e6f86e8623a6c0b0402109029a809b04f182e58170f70e52645fc6ced4cdac24bca0d95554d102c75e5eb72a075bf92cbfe73ca2ac3636f76239d01b6cc3ae2372cf0abefd4c9c20916e01463d3fe825a30e6c957f2d832b512b6019c65bf7401193db79cc48065ac9386aac62790f2e6ef998eb99b4c042ee7e48fe8c0361d7478a6f4c28e527febdfbe71ec62590dbd372e7e15d1ff41107301ce1deeb6f29290da075b39d65ef17fb6d7db75ec94edf8f03a64ead461da86b96edeb9cbe497105f2e700ebe1e7679a330cde68c50769d3e58b6ad8429ecb590eb7d271ad02d5b82ceebaec0eb63c8063c80567df9b64719ae977a6fedeb3d50f4018b0af8fb22ef41b8bd2e008ee8ea3c531e440fe76da5a98545a5c02e5fee7feaf9f17d5cd550c303d11da26e99549b9cfdbcf3ea03192834ac01c1cf5e54c984e2e8517ebab552517ece1fef8e938967f42c3debaa00cd2309dc799deb72f1134cb108ca23920037304c725bc1564a02b59cb1c31b08ebd5e2efd474b9d74e147c96f272e27c8373551b953296a69254ef062546ba9bce5dfcd5cc2f5a42df8b7e34502874dd8bd4ef4e12a1c3cb0afa7acad375b45d65b35da04175e7bd679cb8955be3e1b610f5bcf5a7d9f8f2fb50d140a753e7062aca1d2c21116d2df3c0720aca4ca553dcd62a60d40c57b22bd468c02fbb5eebe3fbe2bee502f138df297123ed4996e6548594cda5456cc9fdb99b6e421b35a8a2a4197bcde0cbec11e7fdc505aa91202402df732b734f3dc72cb4cb004a30355b9f19af94357c8dc21a2179a9dad4069589152412bed43af6ed11aaa7984faaa14c7141307f26732b5546f32937c5b2327ac53fc190c445489de1c30d45843d0471ac3a8858873dd1958f2ec1000583c15c5afba1b2f64563e7fa5a5b1dffb7839260836e90025ceb0c9614501fc1cb36e76818a1f371bf4fe5ddfc614bab761f94140f973f2fa13e347fbcb505b7c51c6a5082a42cb5131f99347c15c6745a67ee69a595cad405a516ded66889e6ba4056a2966a374cccf8cf22bb04d92b48d49745ddf4ccf001c9ac9a8fd27e10fcf89a8f3d68dad8d7a5ae9fc43f833b39e1f442f43d4c3561fc6be5c3450c4ae9ebe9b37ec68ca43f293b2f3f183cf032707173477142f802d6922ae17c719fb40773091c2f312993b30bbef1de04a05828a74b07eddc5b2523f146245c8e84af0b72abe589fdacfe58187688435447e126dfec6642cc74cdc00a50eae54603e353acfc5a346c2647867cc44b7a19bd55ef39e3fc682751967094089eba00d40147960f2e23055700cfcd57f2564727126a0e431e47e78f8a7e3191a2d562e9b4848d761b92004e247cca5e8d93bfed05340f8a081ffffd66dc6afa37b062b40d78a54e5a0ce53cce15a541c25544ccdd76a3396cc315c3ff4e15c4f5e8525c3b5428932e4901290376dae2583c3b761366c4c62173c0ea85a59f88a0802075664b54d712a58d0fd873ac00911a87067899119320d9f2b8f534520b3ec9a084777782630c991680acc8b6d47072552dc72f2c7093534c01264a7ee47456170784e0b3ad0613c048faa77a13dad106d80d7e6944b11f130a8958c275b49e85021bccfceea69330d629127fa99f7515eacf08e53deeafcf4244d34652fdf5790f1ffc02922e163f9493d15e4deb39b70797d4faed2d87cc61139e5dae897368fafbec9a07cee88dda40247cf27341dd82341755b94d17c07549c84eb1700a0c3a3290f0ad7552511247595fbda58dc61092a95d0c00d8bb6e447067757ad9299e100dfff9da74a2ed2e651e6e2cdda2659a68d73c1cefc72eadc9850cb256a86c75718dd10974de84f535c9db89963aa59edb3db5d696603fff404cf5ee31689de64b1a24e5daf12698c40cbcf1b026052a6e59af2f7dd7a79538ba661df674213485e43a6eada3f6bcac857b6abab799152d73f140f254a63c2495796e94c84b06934bde2ac35d8662584d6c91b83632324c9938fff371965d7e48db0ba1d0284f5ae4904cc552da7e166bdf85f0095af8def5e388b7cd6eb6c6e1186bf12566c358a74907462fbedd3957863abb90443562e1f7daccb15ce3999c04ecee4fb47d225af542a34da2bdbf5014188399d5b0568852f9b6c341ba1a0a7f6195e8614c9e453de5e1c7f667085528b1526244d540e02110f1a86168a53208262979df0eded14ffbbede16c3380630440e6642020a8376eaf15c8dffc64a3676adf54e37ca12487cf58a13866fa07d8461563efb4a3cb94b170d72dca648a934f8065c436c4f4ffb8fd15ab4a4420054ada2f4a9fb3ba15c8e90ffee300af4b7fc6bff345200a6b505082091bbadc9b826408f0dcc9cd6afd880899a13c9ce6b95a1743b88ffee0acdadd0ab8d0440ad4bc5049285bd28ff3ef0b3892a3d2a9a0c23b94cc1d7491de50872b3d4f47cd62ae97a5c0a0ed4d9b01b66af0862d04004a182fe66e1adcf0da206ed4a7db83dbc80baf24f0f187cb8532463eb74a58082d713027555d3a9d621ace12f9063f25555d0b599cb02c7e4c711af9fbf98cb7e7e3ed30d8f48922ce5470e120cd13447974e3382337c0ab58837f79917b6495274d14d56e2b565a8a11478ab4a53479dbb680fc9f8bebf8aef0fc01d477cccc36ee4cd73598660eb755a7b60939da0775751c7a688e1b7d9e0df58132ae00d6dfe5404224a01d99f423684becd766645ed6512782a7c99feb9340a39f03102d552abc9b39fcaa029419b32886173462514d6364a0184a8763e7983799223a5b90ecee2457b4a43d547c210742c2abecd78279a92486f63b533b10a4b78cfa731edcf58733ea46d5e22e45ee0571817dc20bc26f4d5defeac01031b3bc9fc8621e0c1d22a7c27d3d5a7a953b4ec583fb212302e38c08e8a27aaba1bb202eba9eea04268c873819a95f30068cf166353159519768ab6df56be8280b8a0be94376ccca9edc97458bc1ae1a13839531fc47faa71f0037a463d6c52f3641ae199afc8b364ecbff481a84e40cc08310c1c0724309059342568d1c87214dc6ef5ecdfa7db6500ae260750db09abf1295a3a1dc4263b1903efc2c5b25306d3b15a249fd3e2f1b05796187532247ba330a4a71bef9a656724bae28d7ec0aac70b004512dfcde5935908c3f135a34a7407b1db167d7f746e337e4af45a0ae5b55da1fc995e063b75a2a4ac7d4b003216a87e4e980cb7a9c53e8ad0607407c1b5d4d936ed517139b511cb1f472b94061629301ebe2f009e99ea1e066a9cd6bff1bb082647235e7a7a1b367e722a9ab32f45db139a29b51ef9fbf9b81173acf40c1eaa49746327ad2a9221d15c9d149479b641412ab251d05e9d248acc224594b1141ae1bea9f2ad4db7dc78bafe12c7d2b9f590129f9bb992b585e6a8dc0c549e436cf577766daf3d93b9fd6f9e9cf4eff6c5ae7db3d37cdd96a9c6f776677e7d33c9bddf9e99d4dff7cdae1f93e894c40eed1ae3d3ebaa0e3f682be14cad48d8621666243b79be67d137f2dfb1494bead4283f54fa99bd00251263efd2b1c1c4ae9895db2513eac86fd04a0b23d802d2e13b8c67206d430ce0074c67980c6780aa44116f0aa55f00ba209f03f77119531947ffd5fe8dcfc269f8291bf5dddc978a37ab3b1bb3a3475eb48163b16481f4d645abc2110f5638465543a6eb6caa3c5b109175de5c08595410bd6ba1fb4d495bd1dc4cb2f688b3dd32bbb0eef0dfa217814494f58ba6b942412d55ad0b00819eb9077f28c862c2665662a104383b462db19b5372c802d3aef8ca3a5fdba967816d6742d8e77068945658277a63ff00f8487c29c7eb5b1ad5507ed70d34c729ca529a3d96792068e94539e27f06109c4a67e7ba6cc28444312ba215aa36ebe2a21e9dfac70ada1ab62c2b1f23c4afd3191a4eb1d8ecd07a7c2e532515cd2cfd1e438805577309d5991d1d70da91abd3b26622b562e803ad39458050705cbac44bea8ac67c9bc40ac986d22d60f30aac4455f5a666724094f6954d43c0ed844f7bddbd88f769e9f6223de5e1065db48422e1ec2da7e28bee55641d242dca92f93152d0daf49e35ce6178e1a7d1584595512136e12565f281d04cad02b5a4d6c6242f63c6fc77dd8c26a1703cfb7096ce501b9d9081ee664001bdbd28a041a37545183eb57a7ff8b55aed7a55590d85f7eae50107caeb859e667d07305fddf9b44de8719950ba5a275063dcb15ba3cd333977ad398064c902b1294343582c97494abb882c1c5e28a2075b16fad6a7b2de00131b340f19990e994046b965c72f41f94382bd4644f6eed8494672d510ae6af1c03247dd7a5eab47377170a4c99a8a6e3a578666db6088eea6f47827676e66641d58ca01dad402a5f06f0ebc6e3d3f50de87cd5caeba3423c8e920a37368c712e0235230565eb51be06a58aca038560f7f34bb2b6bbc97618366241c3739611471e545481366dbc8fe8e2dabd0fb288f1ef078a31b5a0791d81914358004c4dcb0c7159b781710446e0f172f20764f8e5c390cc03ef0686a2c897de0cc194d70396ccff69946804561e3432ea812e12825bb260af00af6444d511331c7b1e9f6454c220335df6c5884b069f13502d0e78adc492c3764544b0bf76aa8234962572c7b6960ba3abb97bba6b86150c43f9152531250452d8766f54e230cd62bdff14dbf4353f62aeeed82a4074bf9ef51839fee6354010a94affed4ebbf01be316614eaf401c1f30bfb5415cb098df61c567e0188c44e981a2de0866e611920e86963d1caa944e21dca1a005b5ac145e9e556e383597bf2f0a36588301f8bf072102a6172b819d65b9134d14f97634e3065fdacb9d5134b54b58470ce12540282b1d4b1cc0fc83e4c66f0e89b60aa4f941ad97c7e5ceb9a9bf5b623e9de8a1eb3b8aefb39c5e480840643b844769e1c1618190b14866971504cd8970fac5592486e38557a4a044665292d44bfac56b8b91698a6da0e546749f7c6fc6edf5eb69fbe4cc744043751318718e78f6ef5bdb99f67adf59e822a77ecad7c9dc8c8b11cc9c702bd2734007531cf7e3f8f01eb5dbbecc41ba611dc80651229ecec67e2e686d6a3aeb4442e63c4593ddd5f1e2b0da56eac50e61bb6aea5430a65401fefb62f4cb44cea430d5c491ce5068ec3738b2ea4f6173d2246b2f68feea56d2dbb9cd3aa99ea2f9e9d6cd27b33d890606e8354f44f186f0ccc4e8c56279ae08a83a5868d18140e1b7bf911e6942625d030467e4500c027d9406556994e0b30ae676486d1f587b24b854450a8b0a53ac0b54aa4d37509ff1459942191ff03b49a5c43d55a0618d20e13ad14e56e3048d140f1ec098eb10b39a8d2a65124adfd6609891387e722b3b1054a0ad5390fa26d7d06ba62132d55da5da7744b9d9834d41971b192260fe4283bf1dc011088e73550ca37f4b07533d123ffb56e1969c31f5321539d316305a5625d0026653180ad4252d79d33c4b2a5a3ddc1408155f3fdc0698bf09ca2d71dd61261d596c18d8b1cda6d0d2af6cc0972cf9a09427e8fb32e4e897da040d5a0873c9846dd86054a0186b92c172c0e25b2a8cd075f07c645d371947ceff939128a626cc693a700c7814513820c1910813fcba056c62833c6c0903f2c0dc76c8d287b38cf1a38771f720d3deea0b11eb23de7e300b01fad92bb2cab9e75d2abe8a201e3e1919f053135e282811013812f7e3a6a1d34965a5ae2c84928b6e44670887343d7fb6e4b40670af3ab214f4b6ccd852520efed4e87650eede6bb6316ddaf2aca9d9aa028fed7b62bf76514b3841ea190a53ffe7ebbed5be7f0d3e43385475ca17a4312136c062d65cf0cef55cf8a399b843872b557aad204ee86b6419385863853b9452bdf29cb4ce5afa43f35d9f049dd83830747ae54edaafa7a317cbbc2920fd56c48c5e0c959cb49d0ae8afab203ab60b8f9ab9b3af31c7c12e28b975110d028286284da057c1e649c1c347fc810d657010680ee22202dec9873325d71b6590c12c240e77df9a6a3ea56ca0f6b8ff19fd209c438ea9d1533ba692e7f701819999213b94e01bb6457e13cb2601e159c2b9ff24841eb1aab7c34ede8e999eb76bba45facf11e77ab95819683dc30e0b11e5ef13d64214aea4ad16eed5cc14c82a2fcb74a37414fbb4037a5cb925bb1c20069d6f26361de7264a940ee7f886443b34c62a86995c25361e488bd0f61d6a13ed044d4112d43e2769f6bf8b460f98e2b4e61a0cf792853a3272da6d25437b1d3df5994d09e584a19ef60c814232aea22a144becb55cae7b1b8d742ee1898d4fcc69598fb17fed3311cba56febd12ab3a8f499b1e2e32c8fb246cb0c4fb86ab71e755723df62ee64b7bcf4f900e0ef5fc269ae48531ac5b7b56b9b7a3d82804c0f43ef787ce39545983a13ff10dce6fac1919a68ec496d7e6aaffdaa77c458a8c45b52bcb52b73d05d4dcc3268e02aa544b589a21e8b5863a30dac251a54c55b3685a6fb3f30e5b491ebbf69e7506553ab9b8d04f54b4ac78a54944e9b72693cad650e37d52e4e1e5f36e3b83ea41bc81499710bd6beb0d450c1298e58411cccf331e2b325a9fe1d2abb1d970b4eb36050863046b665f1568b6ac0685e0dbd204eb62ec793780ffbe259f8daa7fd1a25570383b0ca01b6240b6cf7163dea40233f5e02be874c9043d1f5a283a0d7126069348eb9ec5a0d8152c44fd66af8ac13de5c0078a4bd870c7a2615bb0194f3f8463f6846507d374640010fd3cc6d97fe497f5e0701d398ddad64a1b4bfdd7f05dff5d438eb47231118780d488c7ed609cb8f3a553a799593e085188dcec18b20edaa6e83c3f02d08cf5bae97548d5fbf4f0e89bfa67a58df54a6742f25a85d3043b1c2db38f13bd5f111ce3a3e8c21ae3468f52d2e5e878c4cd0f4024dd2cf983eb69debef3fb42c4c7fa6355231c35ea187aaba94377980e801c775f663e04208dbc172aa7760ab488d5e7c0d7bebc7f5615df43f3967b93221834cae9a4cdef8132fd12c02e4cb422b38d4e2a9398080994d54ca4151dababb8ded5bf64d6f2bb7c1a90970f40cb97ee3f0ad416666053f6732a1b8616dd46acee147e8f7ea1c2c0157b8c6fd9341de78b6a1dc7509748bda15fe533de3f7c442c74453211616bd12b840fd9bb15c67b5a30b38d58e42b0248402fce0c09a6fe6e119133cdeca6dc64eba9938e54b110a8e0d4f8123b1aa9bb8df05e0f48462c24330c172ab1c6474bd01b44f8343e1774c4c9d64438ecaaa5ab853124dac30de8357b45ef080b51c9ba114389c0dae8642f336b0bfd912bc592f08a450ebe34a157e877e0ae0dfe081d3a07397d30e036c314b3af262803714d822dea6e26d2045f6ef5b8fff606dbcafa551f697258ba03a345a84adaf95e54ae8efe3065fe740e2b0e848f30783a45845ac23e535405fd8d18b4db323b2e3da1119f4c5291340223988902ec96303e7bf741ee7b5325572a828d398a1f9df7d8bb9bfcb3f41cdaa84b2ae024e92430669db50230811231267787c2b6d49484544ea610c1a97172889bbb205e56207b620b00e12b905cbf2b7c5431eeb637e7d73641f098fdef0a040c490d39677cf24927a297f49547f14c75fc93cbf0b0f62e155f34636e27e1ce63077f06ea33fe8f55729336a662c2f84eb58b58539610e45703820a8b661f1626490301a1093df739b1546bf112ab5db78a47d1bf7d6a3c288abd3a5fdd46bb1ef510fcefb6b112c1eb41f1aafbc393fe340bf5006d18ac9f0b41efc7039b556c36339b010d235c285d5798d011cad41511f90c6a59f0422eb7da9d5d5597db2a9786b795a6220cadd38707826d96f67f7c1e1952a308edc570212cc3320a8d74d6baa6bb185df52993047c04006cff1b91f4928591c2c5eda9783b9914ecd3b561fec9e4ae78563ad02f260719daa7d8c77f75d0ea42c8e61a3bba138a488c812a1f0bb63b0928c56d443fa9875aa769e8345fde419bdddbc242f3591b5bd0f6f78150c9bd27afc688ce8dd904bd4db47517753508e6de6fe81090faa31918b65b1ab1e680ff674c588b1b473587a6cb554ec76221137e18fb41caa0671d6e5face9354306f53c52b7d1dd01ee29c3cb1ce6e0cfbaa3b92e6c6280c04703a07f36ed5a375d67b34b94c67a0b5d25818856334eeb5b9f0e65914848f33c9957e69e404d96b55c0fd0d57130ed243a90bc5d48e0047107f184e19ea0a80170efcaefc80858dfd28c5ea9db1159313f3c17e58568e142875f6dce35fe12add1e0df965d0f9bdf6b62fda83b13f0c194aae7e3744ab0944141ee66a7182656d85a1af3a90762a47e5e0638d37f90160f5fa97fab38dd4c63db2f63c845f271c04574c9aa4f59982b414aa97aff8834a4dee5b2e4403505b2779cbfd9f6127957a6d5b29c1c036957282bc087eb08f1900a0f545be1fc08c93f07bfcffb789f14c4a60c386de0d7e21fd0811d78e420c8bb03a64eda00f6ded300054d65d62bb29f0a6470577388e1f37122c499d586c89d2122683c36651f7a6c1c133ad71f1e45dd3620b5bf06e7f01dd4af0140f747ff940a4cd5a0c83e4c7a1540371479f8a386f126a302b27d14e0154ea2be0cc47d2515b945d059f81e38c39cee3baebebd2c86f0d10fee441186e130230a67b50ea9973a7c5a1f009a35554c88defff99b7c63d48ba16b371fc403ccfd31f3c589b5af5729ce12d6d22771fcb7836e85cf602651a76ada45370a3efc4c31d256840832d68b97da852435f4ea2a88d9b1ac32ef66158bf3e33d72bb8340e332ab3f609d90a3856679d95ff8446e2b11678a5912c772926a7aa698a45442bb80bdae079288bd64c5994c1c9cc7ed6f5fa0f4a935162e742b766be5395bf85da0032a182b02116048906ccb22c738611394a09d39f263be3c923f520a4823242751703f5755618aa4b58b2a84ea05e459f9cefc8acdba40158a698e9f048aaac749194ea1b35ed0ad0b681442304edd02bc8fc34032675e242f662d8800150a4feaceb79a1f2789830f0afc84d10242baa9e66f20167f4872d647562482f4b7cb2029f89195ccbe0e54a88c6596cfb956a546efe4cf121aac3e1d5380200de9adc646559729a142e9cbc98d9c91a8ebe400628617cff71a92ab8c998b99bdc34aefb7cb003f0e462facc5498aa8acc5570d6e059e169f149bfe84bc1b224a819d4ea29708a1b71fc9226b8e89708cac510993fd3a04011b5570b161f765a25b5571dfa21d1c1d52bda527b4538f8af305a7f6bc20c94d8e405b4b9553c68c06c410b0b3a438d410b0bb45a7bcf2cf5d05b207f0297bf96668f62f8c0589d60797de1fc2f5633d89c1d21db2a2c04ea1c5445daf793fa6448df45b9792a5c0a05ee1da191eb4167a30b0c9303eace42945c30542a6e0e192ef6a0159a997af4cd3acfc146f921519553dab26e6ffecff6328bfa4b6c05e92b1b8465fd3b895f75e8874ccfe7136d8ec64c261ceddfd495e2a25f13a9d0f24ac9184a947ac4eed213f1d6c4706969691329a594325309f7082f096227ab34f835fa2aa970cc74d005a736d263dd13febbd24df49a9354bdea9cf05896050a27ba1922c2ea98050a9859a549d22f90bbd942a4e3d7bc05764bfc3cced837a67f368441a693aa4a839f4710f6d804c7aaded8279d509a189b903e385695061fd9f74d9958c76f923e1dbf4c4cc68754d51bb105d6b14cc7f193a9f8aa0d1e30568d216c6b1f3fb863be3459b2f6f089629b9a75f5d5dccd9c237b6c7135da0307dbd4acfe32b50eeba23491d6459d17a577b4eba2f2e3d7e845e91e9d7ae3a23b163b6c0a100c74a670e17c16bcdc052286d0c2f9ee1555602c1c1e46455c7005e239c285c3c3c6da2187808b1ba87078182571f90e29001d81e2f0b00dd9e17ea1b3821487879108c66e370e63aed2d8d78117467c707ab03cd86b81a0e99a1d1af93df4db31b5b794838b493cc079a4628fb4cd2df10e6793c36ab14d898d2b9560571aae2b0de9b8ed6d2f0b8dc84599362d3d0bd254da4a63f594feedf103b1e1a58d0c37df3884bd6d6e4822639bd547cf5219704abfd6ce7b493f0f5ab0d6225fb561ea9acf0c56eb4353f574089a0a41449f4289730a2282e89f06b7e7b87f5d0e4ff757c857c5aef5f3584264595313721cb8f7378e5fc2c8b679836e105605e1d4121bb05dc3287e61184e718c48c78f9f5cd4a84bd9b67b57b6f62c9cc2273ee1e7b8bdc7f14fd576f1e9055b9366d72ff77775cd1cfda660632738899aeaeae9bc289d4f20c50f5a74fc58243249ddc4a7b5714ff835d3f6b66fe4b7e0759ac85b258026008d34711d348108ba89511713ef186c735b1f2caa9b9c537cc2fa7d7c62b13485c15e2f6cfe43d99acc537457f613e9c1d8b3cdb163aed2689576c313c622c24abf2ffdbe98199937d5e8c00fa6441ab7addbe9765c1de73199d2d62d3f53ea6a9daeb3ee48d2ed743bdd0e0f592111a00ff84578864864533a27dd83ff7d20c8ad68263a4743462b6ea775cbf36c9d274afa66be999611ccabcc9c969f854f2b7c529564427c6879a14d604ed4534f13a59fd21659b44ed798a22dd776cdf0d1cecbcb4b7ab6ce1a1de79951cdf8c00a62263d5ba709edbe136697b228c59aa4afd6e94293485d2dd485569a139f5c7e62e9194e7a978a31fc792d57ebe542bf0ffdbe8fec34afc9090b89b8a89214e017a21169da42bb7406ad3b5a2438134d992204a2d581e7ce4da175b6d0f3433bcec3790b05e768351ae214cd4456623af00167455827121f9fd0c5b9a9e7234da8873f56a53191a0c9091b0d519202f6426b70b175569afb222b5b3402add1719e1a35bad4d3bed49e26564b27885ade3fa580bd943851cbfb629d892f149f5c2d232d2a586710b646ea6ab94ce8f991a1abeb5c49d096cb85b68e9c3be879ba5cad23e78e6ba70cd7e97ac136c5d6e972b58e9c3baeef3bce1313433eff077dc02e4e14b402ce4433d119274af29089bae33ee7e112b547123585fb261ea2f8f40a61612a453ddd77a5ba54494f9223270a8c541fa355abde7c2d551747fa45998cd4d2e403eb0ce22cfd9462284e95c0a8272b3ebd94453d5d54a989e80c27a520b4540535a1b1163e9db7dc71a12f58ea6ab9bef4274d4742f4fb3332288c5a684b880a455114457550b4e7d583a23d4cb4501713ad23e70e135ffa7d29da4ac1b4ee10cdf0497486456a6a342464e1d468e503fac0ec7d8a4422d10c44e7d9425b4254288aa228aa83a23daf1e14ed61a285ba98681d397798f8d28f1c9dadb38553218bd58a5d9448a6838a124d11cd700a9c9d436a0afca29e700af4c1a73b6a8d50008a6633d10c66ef4e74f6b3653a59a520d11422fdfe3591a096e0aca6e103382bf9945258690bf08b520cf4c1a95213144cd1baa892145f94c4484b60a4e989824a63a4ea3872bad0173ec1f0a985b684a8501445515407457b5e3d28dac3440b7531d13a72ee30c16a7dddf7759957189e552a90dbb1e33c2fe4b983b64e17da3a72eea02e5712b4e572a1ad23e70e7a9e3baed6e972b58e9c3bae73c7d53a5daed69173c775eeb85aa7cbd53a72eeb8587a68b91928e2fbeac764d7ff429734b1b5d65a6b4933e780d16effd68a2f6631715001808cafda3067ce5b863bb7b41ef66ee7e361cf7b61b4d7f75c3865f28ef4fa9e918a1abd13a74a5fdf6bd51bd1579e45c7a173d2eb774d2aea862e566ff6d7efd27a33fa5a6735e6ab69e6ab19f5545f27515359968b50cb5b5f07515139480f51f59ad1e8f573959ad22accc2a997afaf5bfad4ae7ad3f275566f42cf846c83b145af9fb388a24a5153fa85d257d4f2be9995f4fad9898ad2e92d63f586e5eb6758bd09852cf1796f9617b0804d438319bfa656fc2c38f66fdbb8f8f231d99cc6e98ff3904845d05a9f46d25bf290c211ec85bfc0ea0e25f774f9b51d88394b8df00c918c5c2325c497188568062214947551eee9fb8edb114b041b313172892f3cd23a31c465fa8845fe381adf00774bd167d4d12d29c66e093482612e06c34b9830140a737862ea4d4da914e6f0c460aebd9691c84db29bc27daecc9c06c3a7173ea1ad9e268cd4935792fd94d028cd4a62d493940e462d5941f820ca7e527c6231fd842f19be63f8e8db3606840131ff5e5e5eb811ec1fe78989810d6122c5a72e1dc15424fb31c13cec1fbf8075d12d930f37cc826632318df9541af1678bff3027ff8fc8521012d5cc4fa589e1934bd026cdd295fe19d1480c7aa418be76cab56a8035c21c4ffb986c0d243bcd0b91282146d1f9987e3a9f999fbae3859b524c86aa1119161191664def624f6e0a626a836d8e602fb18bca3f721eb85ddf7f9863ff3be7988bfac7796abc57c375cb9112b5bc2f82dd804345894f64f007f401280b55214f78866808835ade0f5f5d8af65b8334fddc32c707bcc7e0c39470a101eb33b1a6cf643fa2182b22a6e237c59619f58ff3c8bc27d3f9682698889b5ea94989c90953ac54a5dfdf235e92559afb3850e9f74b62d4f2fefd192e9a788cd8a49e6cb4903ca8d03a1f1952860792bd91b8e6c2275627c134c364f31024c3d72dbf0f7353ff2e2896388df3bc902452d3344cff3cafd3c25003b01922ec3c4a6fc94730b0c6a9b9f4af07b8b50efea7039ce159a5c2c1bca554fa172ee4e57fe07084fcf038427ed838ff357ee6359e832e4a7cddb20815253e514b510ba74c3ff8a4a3a8a951917ad22f9d5e1428bba5bea2a2c0295aa55bcfc328ea8efb35780845ed717f86874ed414ee93780893e1610b0f63294e852a33c2308b7abaaf4afb86f34286afbae33e8f9748a59ba294d19b6294bec52b447f5f6c527d8850aba3de809fa24f38e9e2eba24c4d6a696aa29e60a11b222a222ab7c44f0a9126a7494b6a60c6a3c7618ecba8a505268d6de3b8156e893b8d8b641fd8f6c36de374cae50859462ea3961f5ded87be42a738fcd7be8fd3c0b2d4423e623dfe4fd784deac0959587008dad8680f0386b84ddb9ff6ed4f244d9fc8eb449dd7bd90a62e2412eadc72e4d282cbdc63ca36c5197a0018628a6cd28fae9134d9600a527ad3579c12ba038934d940fa988f2183e08cdf038e1d9ff435b4a1447e2ef26b8d1ccdfa05bb5fd007f4017d575e309db32921824d718af4f6bf184e8d6f85740baabacdd983adb617d7fa527cb25f2aedc05d1ced40f8894f42b6147db5ce52be6e96fe10e5a2e90f66a029101fd0f98a64178553ddb3b9bdbab6811cae5dce97eff09d8cdeb247db0a23a46398153f5d7ce796556a6a7bd513fedcf1b63d515319552b933087efdc12772adbe42777899f16368cc13453551afbf5622006999ec91864fa25b9cf86345cab7d42f4af708800048cffe98ab5b6312c26077afe1f976724352ee8961686120331943d86b2671014816cb5fbb2dc17afb517c83dd0d8f93f93a08e38c3a9910c0a430fd63f0bca30fe31ee9d8639a0935b62d1eb87c827d4f18b7c2e2aca4dedb44ab81acbfd97c3a9d2dfb71eac9760256491335942ec8a6d6eafd945d174fc20d04d8940e2952b9734fe488a403357b6c94fd04724037d706a7bbd383c3ee92b89fc01b3f6efbdf776c0f21c3847f9f6ba25dfc9243f6bc0c00453182157df5b8a40a5134c5396712485be25cce108b07f247a96b7610f34b6f7df6b6fc318bcd7dd877efb7bad0ed3a5d27c36fcb187306c64fe511467b784a1c2b95bf2e7363810f4421a8b9a2a91326828fa8bfd03001d7f48e4a6be5b23dd17c8dd146717d4b9a5dde0917a63bb26444e74aba5e836896e5b40edaa37b5db7ff1f3d922cc08338e248cf1f61267a620273bdf483b6c889aa4e3d58d24fa0db4df788543541cae2e49ae2e4dab9473288a7d51a64f56693a0f1558539c6dad6e8e23d8b9ab8458bd11ed466a5d6bd9b4c57c50f61583ea8dae372e314d64826dffde7bb929cb68a222dbfe98bf6ab1b3fdd256559afcb16ef5eb19ef15e66c4b826498e369d072a1ee8ca8462a096a101586cdacd1b5ff78889bbb6b0ff26c7e3e3968b4df0db6bd3625b71411d9db5f7ef29d7bc297e4e70d362702dd7bba97efdc548914832e4f7261563d3da6883d3ee94dcfa76f382686f3139f4c64a90719bb6e2f12896d8a330e9676fdc2a7ff57b2bd2a0d7e5114216b25aa223cb1e8f86b0ef68f7ae375fca709a04c2413c9c4994c5f7ddf7461885cd4d63a02b373511b8c2b094ccf4599729e4186177af844e144d39ad666b825ce648f2db629928982462b9d75d63f2eaabe707b98b1cded5561dac577b0c930275cb104dd12b35ce9df0e3e1ba08d3047a4e496f82b01078e30a7fbd3298b33712602e5f81ff7a3a10973f67f19832f2a1b4001eb27f44a45107cfa0e6468af3b0803ed3d7add4118573a4af4a830677b302b189518f4852ca3cb62699bdeb40e75429d70d5751ee7795c0412af88302a21302b719664eb2f0486a0fe426028fa2f0486e6e763e6207a2fccd1a29d4a8539f955d8ba5e551a9d6d6cc29c4d04da3086ef7b4cd91d7a002a2caa1bae7a1302dfacc1e51dc2b0f510a957b882f7c3fb9c7e909b35ba59615c376f24d1f177dcfc7c3adac318ca9ec9236c91cc0b73f812977bfda13087d39e0bc3fc9ae65905f07bb26f44426cfba42fbda98faf9fe34c67a5c9255ef37a91f80b933847f109ffc8b90b9f5c402d6bfce4307e7294871ce53dfcc5777812eee228ef79f1539c7dfffd28ccc9df12de1508aec0824896c5feba4e537eea54f4fac09007932d9ace7a2386fe3e8b75b9a9512d6b9b924d893883615d14f7e2eca26ebf154625e4a2c2c70fb30ab908245eb92526c52018d52d85dc12660586e24c897ddfcc41a3a29708967767ca2f9cca2b809f0eb619b670ca54c3b883c986d2939e440631dd2f7dcc97bee28ce4d7b24fee60b2617cd39bc820a64bf2c8fcf8a61fbfe290c81e702e697e67b76fe2302a7cc21fc345192ece6e0a6f82ac56b7af9fc4b797299302b03ef44b6eb05b621829dbdc5edb6b835d54e5b8bdc7f12f392bcb3e4bc1366fa01d9bb49817813a175559dd12e95647868b663705fc31a2a08edfc4117071442f52b629ce5ab36eea94f4232986368cbf01b171aaf4f8b9eba26e0eda5eb08e9f27b9a9edb5a55cc906ebf8b5cef612836e5922c5b7b2f59b221918dbd469bdb98f5fc75cbac975fae4a6f87939da3177993a95d24df14ac76250938a12abd4d249458940559c8956b619aeb2e98e2b5b69ee8f9cfb58005b0065bae9ac34f8732f7bfd9833b6c94deecc99ec5f0be110d22ed2c7315c41c71f13e6e4606faf7ae39d292f089fecabb8d5c7e22e803fc05a53a5af6f72e3c75053255234c327fc245256472a283dccf1beb7fcc78599c1667918255b240baa372a9c22bdf6442db7d79bbad54d71b6d2ba38d32bd248c6bc209265b14d7ef2b3de801d8b5e335e6c5314bd3afedefbefbbff1ebf48c915ad74fc305b53e2ac9ecea82950864ff88bd0f18baa7f566c59c72fce702a5cadc4d92c8c61ebf97ee69ac44acf27aa4e7fdd20fa7d57d006dfacbdc575c0472be4a375cbcc47ac1191165b314b1d25192519e9dc12cb2e0a5f72f482859b60c8cd914ec70f72b3ec1b377510dd144d7176f3cd25150f49d357bbfa5e9267fc1a1ee9382412eaac70aa447212c7919b7bbc3b7bacec97fcb1c4b66f6e2f7176c3a5649b2259c72f9289a8045d54c62fba3252ddaf239d116b446474e4a2b8d139da1925b928532639ca7b6e897912bec35dfc0c63d8fa8d1e646cdb4d7166f293d54d6eb6bd3afe0fc706e0859c9a1d3c7aa0a0030034394e30210554ca46851b1f2bb0702a5bc0e1c28f8e73a38400bc90a3f3c6791f18b2846ac4993813819474fc62d0458d1d3fcc0993e4a66e62e2958baa4ba0f4c0e8b02c6c0744e8264c6b6369f1433761764c18d5c9772e0a577123f672ed8e10582cad2f8882cb906d7218d78eebef4ada528f31b6c9f974fb19b0fd9b5d92e47ebafda874fb980625abd17ae3d2fdd41b31c599286ca407ab349e142e1c4618c9a67e6d21fda55f3cced8d7e5f4c420b93e58264d52129e182e411face3b72457a5c11f9ab90475fca15928c8e5ac37014674ad23704bfd37900fb8a5feb28cbd827a510bb8a51da2a2186087d4d4e6c16fda22f877f76c70ea010ca8280b825aead7aa712347cd69ce8220f7154ed93c607bfd56b5bdd5db0fde9cc3a7addeb27205d8647dfb1f977b8ff43ccff33ccff33ccff3649eb73df79c39fe983624088220088238788f430e55d64d96df1e04b9ffde86307ccf7d0d09f03d67b290395459df7e2bfb9637bb6d3638757f7b19eaf6c974b1392e060e86f04d8f34c1ff6c68a261bfe86dd82f62791b42cf429ade831e0c21c9bdf660656ddbb907bd0278dc835cfb4f73db7bdf711cb6f7fedbbec7e0479a4c34e0df5fc3fdd023a0e2080901fe4d821f82fb2112fc4873eb5ef3b8ae69ef867ef08d9f4df8bbaf38979b3069a2e13ef736d8efc820dddbe7c8204bd4d0bdfd20dcdfaf389f09456c73052042bef7fec79501a73ed2849f34d1709f7b13266bb8cf996ab0dd6fffc2a69132fc28cbd8e6d871237ef3bbd6e30f9b8bb536ab5b0bdc506fca6e5f877ad38d36888d860e97bcc1049d1c6e697fd41b7b032f65bb86bdac34f6c724fbe362670b204d73b9b2c3633073db7f1a3826d9e0066ef7bef6dfcd9cc69126192a47f6406323afbe2fdc931d93ecdbcd528a2017bdb72d5224a6ca7e4c80ab55badd158d6e7de8f639308610a3dbb09bc58db1a48b275dccfa17caa18b42d52b01aa946eb274fb2cf506874a52a03efe21d643f5a64ae996343150bfe1b32e57f6bffe5b729723b9b173f8b5e7befa638730e00ce82e8870d183c1afb26dcf7a4cb277af0f8396aab562fcf8b9ffb0eeb66deb48136fafb5c7382c80f6e016430ce92e35d8e6e6f1dec67def718d14fb6bfaedd506ac2117dfb106db1cc568b2cdb2ecf76bea4dc8a5889dffb3e0cb919d9f47bba6254cfa6bd01ec7943fc8f6f54d9934699206fbdad71064894cd6507ffb20f6b50fb204266bd8c81a04e68a6dbfee7eef0f7a7cc8b062048a20cc705c8ad8a6fd502c890f0683c1aacdb8edb6dbeed5362d6cfb44c9514ff651e056d8538c4efe4919a54606fb1cb7b7bdb62cedf34d82b7efb6c1362d2ca80338d5d5208c7120432eed585dd281d6484ec82e4a93c18a8d04034e93d2c15bdebccaa40da20376085d83b80e541a1966b82515dbe7a24cab24ca45e1bc737681c1132aae1d95ca0acf1941f8aa0d9385d5f1bbea56b99aebdb1ff06b88b23628fdd979df16bef667dc58c89f8eb1acf5f16ff651c176e7a23cf24b72cb0fc527fc3e3529ecb5396f25f3569ece3d7d18e8961f0e0bc0a97abe25feb205dbfca874fcde8cfc82806e89cb08836e89b57e6b7f06685b0d0d81c22be12c26dd66380b812e0a2472c3209c025b204bc4c43641950a5409b91f950fc5a9f0f525b9280bb2bc15c8f25620cb5b812c6f05b2bc15c8f256206be5ad2c19f6843390c5a2ea38e4093de636cff7645f77fbd57edd02360d93007ac6c153692137157afc5ad569d54edf3cf4ba87380b0bbc610c7657bfda93ca096042d062dbafd6768c6d0d1f940fca07e583f241f9a07c503e281f940fca07e5baec0d82401a98f70699eccbf90872b11fe46200597cb5defbd65a6badb5b6da5a6dad953415d0cdf8be6f07fb9bedf8aa0d73c7d9b5ff6cad600e25ae37679b75fedb33692aa0730f9312df74316360488f257275ef0bde9cb70d93536aa9913ea827189234a356328dae3d69c5a76b640fba46fe541d1acb9b395a63eca242affdf8e4a2f66b3ffa6834309c6a49699470395a395a398ee43843bd25c5a931c6b9b4a4e40f9f01baa5f6233e33bba5f6223e43e596da6f3e23bba5f6213e23e5cefcdc52fb318653332e7cd25e8b9532aa1a1915c618e3ee668cc9999d5b6affe36621b7d4fe7299d52db5ebe4961ac699dfc72db15b6a2de92db596b4c5898683357e1651dde7cfb3aee58d53f5c71db95e712d664dd3344d9be9dba84ae7040bac6b2c9c6a49ef497b6d6fedb5ff367354a56b63ac25e5b4df38472b8d26a38ac9a86ea93d8f33767e5346d59d00ab34daf308c29651e160755fa3fd74ed3bd2cc4d04d14df2e7923569a5d1f29b38585d7b3347ab6b8f83556f5cbaf6385af54677ed4f80d51bf172b4de70afc9a8bac6911995e93bce7d4551be6ac3ec585dffc7d2abb9fb8b6f8e1de6cded815aea51c3e8d77648d72f924074fddaea0f63b3fc8f6b7351a1d728d1eb904671aaea241775dffabcbc6963292caff2aaebcfab8bd2b92856a8579cb2013faf7b21cdb26b17d2ace9dab6707c65c47110c79be310c7546ea99f8563d92df5dbe8475f20696ed898c6389bae5b7da6833dec2c1ddc385f9b6bde58f087fa257192d52dafce65dd526b0dc066cad8da5fac7334fd665ee18e25ba5c175fb5c162ed4ada9a87ecfad65e9cb5b6719df781214b08148d44a31e1737de72145a6b472d1c0f9f16e32d5dc29cb3cbcb9317f14594f23921c288305a2b4c0233c28c5a052c2a184923e908242bade2564004a9442a1d91c4112a6e0542944c25d39323d2235e4734b1c75b8220089a628e08e26c4b17a150282433b3e2aa98a9315323c4c5f961f13d19e54edd1abfc623e94132451e5b5a5a5a9e2309ca2e475e5e5e5e38b9e2481006060686248123914824126cb4886032996c94d0ca76f4c50d1c3770b4c050cec58db7ac51a3460d1c25cae52bca53791aa3a549c9e32ded0c4c0049208104124c38617602584209259470428e9d59ce01da904503001a0018d13242e775c44ac50140070074ac9088c1855674d4e8a8c9447618353b6a766cad73efe0b1838711b38d07495ec1e6d1834768019b468f4ce4dc3d50e8d143b79010a249196fa943870e1d28a08064c519d9b163c78e145238e20917ead8233ea46c52a92e059d189961a3828d0d1324d296282adca8a0020806b8b3e0909c482c2131b9f171e303b4fc569a9dac82f1090b56480491c13de163051f3e8e907513647284944ce45d785660618515a6e826c8040917b43429f9042c802d581658087374a5a93446f46cbd32618116fd3eb8f3c47352c302252ce8e9f7c152905d99eca0dd042b931d571f5b007df8f0e1a38516442b2e802cb0c0020b2eb8f0d2831fa00b2eb8d0b9807f58ce31d9f96acd015437621dff2753836d6e51a2c040f1bae945e5cdc945c5369f8b32d92dcaf6b349d9a85c54b8cd36a0ed8ae5ec05b71c6a2db05d3bb7711d9b09c1ce7f35a9dd6a79c0b629cef819d29ce6ba2fd49f0eb5263f11d02db9f07bf8f0b3e33aae130169fd91a64b3745b22d3a874dc153ee84db71711bc943e2309ef1b70ffdfbe6632dc7cd663587bd3e218115ddd42a1bf8bfdf9762635fec494cab72943fdbdc5c03c8a8254d30dc8e1fa8b573509ea53ba317b535a9a7fb59701b1869a5b99f6728d4d4d4b04ba5cf29d9d8581f950b0e89ab5c70ec0c9f424f8595558fe9958a218cd1cd1e5a5ddb92a44e6e79b7f47517bbe5ddb6b4d6cdb5a121d8fb6dcb6b7cf49b6f6fb90efa35d3f65088d7dee2f2239e43957551b8814b008c83697bedabb9012b008d347f606c81998e811eba047caab8bcf0e313f1daa5e4918fff69a088e757eec9230eda0c568633871e5a5d9b56db1a456cfb5bbab970706d28abded48baa176512c0f6f6b7b77f476ee4faa8b970ae77546ac04062dd85733dc32eca92162000fe06dcf27e0cb52fe096f72350fb036e793ffbe014e9c7bf3e2c22b05bde29426e43718a44ee40ee006465714a5fc39b48213fb88053224d7665714c5f7a1b4c5f22830421bd8934d9377dc5b1a154224d960412f325d2dbfce4967c4bb758c764e71cbb65f9dadf1365d62b945e974431d285f0a4abd02b15429835d9dbfd2d68bbc2f2f7b72cca7aa3f5bb89d1ef0646bfdb16fdfee7588ee5588e612dccb1360318933ab898b1bf5bb203d595e4a26c4c46886d7d6e595ecf92669d953536dffdf6da6fa94bcbd7d1579c12559c0a610d6fb8c33022b9bd90a4c9b590e61e919b34cb1069d3bdd0854ff7432efc5a53e16f2ead3169eece717b8fe37f6ad6b09014b0e91a69ca10be4e434b66401320481a69a491762dc7409ffc936d5880eeb5d7b84dd724feedf146e66093613ae0d73a1f496f397293257193254d3490def4368c5f2283947e7c131964891a4a3f7e10d30b45512e8874216403619c6cdb73acdfcf3152895d97f020d64d2862eb80b9108810d3977e8be19429c529d745659dabcdec9bb9c4f3995d2f53b6996796d4669945d250718498c8129939ce6e693dddb79f80293ab7ac56a57ba56235031dbd6a629b5bbac5a2cc7e58524ed94599f948bf7fcd8cce2ecacc3afda64e6e0ba5bfbf6d4f2ecacc017d9dae7c84955ba669d3bfa5f506074d524037a9371bb7ac6b7d8e6ca96db9003f2671d0a4f5b96579f996e49e2ed74b96dc5c1d1597b9f9ecdcf3ccb13e246eb2daeca2b4a04d8553a6bf317f7f63e194ccdfdf5ae6765ed56cfbd97cb6d83632429420bab9a5d675cbfb256e51235b3a858559987d7253e3c79e98ec5b9325f32c03ddd3fd4e8a9d5a275b6a6daa834604acdb27f18a33f28aa39fd836667d2e4a9c893725e5da1b2e2ab37c5d004e85be7ad17588db504fa40e085d9fa0e3b71b01b5dc5ab48085e3589173e00290f3b8e9fa6d0d3a7ebbb7ae913b2a8de66100edf78e03789d2847476186aefd57835336ea89fb8ad21ef8b5e4fec3361ad0b5b79aa633a9394fc7b3418e5be5fa53c2134065dc280290ec5a51a2b3c1e203fae9668d32e2afc15aaf4b80b810f27117b54395dbb59226c658d3fcdecb6560eb31d45e79b8617cf9bedd44f594edc673ae40bf6fb1a77dbd6fb75e35d6c86a2d15cc71f6375ef3be371bd83afead672da767d202358d8ec98a2fb6b7e67bc90022ef71bbecbd81b0f86a806c90458d0c32105698008def8a194cdfa0052ee0aaf46c5594a872a40a919d9a5b73354d2362960212663322b219102cd860116c90b1b3151bb2ed91816487bc2841b5474e4a38b2c71e127a369784f4626f489423386d58d95d1123cc28c110cc18028619ab2fcd5095c1eae6d758a1b1d63aeb10c69605e75c738831e619e79c73af34f51f63acb9d63ae39cb3f6b48a31deb88af9f6853999acb57eadb57e7defe69c71ced9d35f062bc638cc1b63196238e77c7366d196e334b63967fedddaba5962ceb0176320f8b47d70d62c3b04922faa6ae076d3f1cd71a4b953b15bf3de5bd35ce7755ee7edaffb78bdb16fb38fd8f637afa9dd420231f50be489cedec762b19045b3847268e32d92a1c66a2ae9b403c88bf6a8aca981a51b07c237105ca36b724d0c088ee9588e8d760b9018109fd81685584270b30001427ac1973f8c3d8c336751e036db358db1b556878a640e77361cc6e40e95a12217639c3f5bfbb5bec63b672bc6a1158bb3d66ed6da7671e526ee3aa7f59c73266bbd25e9edef9a64c71773f7de7befd5bd7253d4eb1686d62ea8652d739b2e63dbcf1ab7e92272d69a97b522b496b5c89ba68bc0d66a59cbfab3e67d596b1faf3a74fc03b50f6bd5745982e1cd3be4cedac756a4e4ab36f2bd60c538ebcf56185ec8d8f63347e69cb5e67595ab957b14724a2eb81b1bd76996d4e376009bc7ed7df9c33638057e858d75dfb06175dcaf0ff25d4fdc7fdc76fc03c330e436b226c72d51b827ebe35475dc5fa15f1b650986579f4415e8f82d4b08de5d857d7bc97d4b5b03de1af0541cfcb53eee8cecc7fdfe931a569811dcde79731875000a6410c5084d4c910204b6020839e0c230b2afcc0523319ef0c6607d778c2fa684ee942d42970a92d1754d91f596cf17e5c3a2300589d31864a0b6181c514d31060af21562505103935d01039609f6ae7b4e0c223218caebb9667bee0861245153e318421022c3d1341780c0458ebe524493d6aa048417be16ed3db4d8904ab696b33b676e5b20b862430cf12caa945365f4fca4137cf881165dd37e0c73b4126cc1c1ecf801123dbf18e6e4115015144cf0420a0d525d7b97ae69bfc7c72578a233656ba9373a8c9e3fe7173df1810b54e8da6f12a87208a8e7673961480fb498e9da87f70a6bc806f6a0899ef37fdc106264efc64acfdf5d9635011132c09aa6695ae5c21c1d0383a7e7a06d72168c1f765942200a104ca9228c1394e089264388f0b8cd81bb2c73dc54c6b1f5d571c08dd5a660480a3488c5931f247d5f2b458a6c95db1cb8475f403142a9b9352e3cb80284c88a550b0884d8ad91088408a53051111d96263f1b092bac4216828110208b050a203e2a5ce114423c1bfc80e9105d15b04f0743382b625e0f866c69abf3a2ca08b493f3228d95a622dd80d0c955a834228298c106e81111ccd0049644103350215bf2c50bfa36433a1bcb70d1bd2e2183654265ae9a5bc3654d2ba1063bd4eb122c761065937a5d8285141c6061042b022280e0aa132651b4ac93629ce0f78da9542a132c89ade0074d0764599dbc7cba75f512b0d861af4b6248e09062e75e97c45e80a38a980c6650943a5bf7ba24b684049e8d7b5d12ab828c153ed54e836e961d3b914509965089c1b68594ed52657b245075d3b6baeff47b9507547a4baf4b7800a57f16dc2c096a6a2cbbae49a2eb32a190a824acf746412d15cd000000000316000020100a87c462d18094a5792cfc14000e729252664e9c4ac45914e428084286186208310818428021a0104d6d0302f3162b8b7c929f430ebd754321d3001880b1fff48d957054b9f3d4ce93d58c1fc783852be50f64a24625428cc6be60e1150ba49931d134404530f4f73b02a06944250386536567e332607d2724233b94b1372182c9eb870f3175e0f05f853687525a2d72c885c540fc4c75fdf3c18e44e87d5ee607850f3420bb0feb58918facdd9f75689c808f771d0b71b5600dea6e6398bf159b1a3a20e3686fc7370ebf8ee1108e8c16be8e66967071a0bacaefa6da037ed61a9f0a303f19f774345b7e6fd286b9fec25c08268bff24557d619a0c45552628eb8217b6a925a1a3539996ca758cdd21529d7ef27c6ccbae9365857c4f32d7e57501a7f02e1e400a2292b687debc8916e25f9921a788bbef9e2d10c3057d1fe81122f54d5309f9a61fc5accd1d4889d6e52f92f8b69022fc3a5574316df329869b3031c926ef182a934a7d5c982e29319819d926e02f06bb7c742691408bea3d42a4a283bda3a3baea2952bcf0e1db9e0139de89405bb74298f3cb4279aa2a6e14c74406f97c04e70e527544466d307e3981955eba52b64b76c1075a67150fe63e3292668e03e696caec4f6013bbdb183bac470c2ca57386c43bc6d45942b225c00a5dfa746364e1033611bf55c40c567a9db05c213824a113784f2d970f4f341f86944d317d21044fc2a20642114cbede5a21617c0a5a6aa67d7a8cfc3c8f5c2d758758b98d01d9fc75db5bfa19c955d5d0fa2ae03d62851980c57a5341a7dfa0d0702a8bd8e187a23fd895caef6814b98eaa09396eb53ea7013a2e37a73fd9bb17b65e55be1cbe16d2ac25b00864b244cc5837da426cfa24fe68070a43d46d4cf72c787ccd8011b36e070723fbe21845c1016279214678bbd44ca074cb6d08f967c27a767c03b85a7258933dac09bc7d40254298392e38f75faa06a63490961f883e53d81b49c7a920ce4f8609e90ae8b46cc4dc58d4caf3196845ea51ca94b7aa3fee893029d0fbf46258b0f79c49f2d75e6a4d8dcb2fc421a145583c8e6e7511a38ab803365852de1accbce3972bcfcde74b45f89a4144b51a879e9eafecf28de3258f307f6f7a4911bee3c1432d458d3f585c4bfbbf32fb201ff61131afaafa9fc35721b396d040dad14b229ef940c4d74783455e850802896856d27c01484be2d79060ccbe1edb37a1850d445bdf0b3555bfeb19601a4d5564f315a0bbc9f1b4a8438900a21af2b8c55206205d73ef8c06d46b20c46b1f71416eee7d97c3bbc677bbda097c17a53222193e76989cc84104d864f86ea5620980fdf25a99b34032b68df5547103b4d7834cfcec4163fc8652a481deeedc5870236381d666f6c31795db6442f847dd832ea6a19600ec9d8c68f4bf018085598a7d27459e3ed81c595a8df9c18ed373813da240f7baef494b2a5f505b9909584070271b3677ccc2e6a467cfd09b9a6757b051fb458949a97c7312279bee103fdaae7f8a2c51bda50f1379a65a505bc17ae13930fe76512552ae582974a98aa84e3ab3051d61b44929073ab3db98a4d88ddad9ae38d11b6ac8fd6cb550f1ef92037c12d5ebce3c58cf2f2061a114f75653ce0f9c7fd1e535df37938e4ccdf0583be7af64e4e92f420aaf08530408c56b0896aa2e22e3b20500d29d1548a833486a8af513d4d8ceb23eadca968b9fa171ef2f66b244bb37c9acace1bb14a1bfa25d9d558bbc160720a1a6fd24850dedaf1087160f6623bce40c979011fcbb184687d87d113b3efdfa6ca462f4c1a72ec5d2c548e843a7910f759f18e436ebcfb6bad32f232c38f55b2f7983b2459e55b9a63bbdc1d722a8a8a95cb69a20a60e4fba48c8897a1df9bde04b4047e92d64a1ff1e73314589dd980d1eb099411c9b6115dcdb4011398cea5db2e3b16ca184ef70d512106c26e96ee0a14fe48ba49f106ed0c3a1eb3faad43ad1c7e92eb6447f93bb2b06533e7172aeebe7a1cb174f4ce7f958a8c41e046eaf9e7410731d3b933a677f037b333bfa033d8911eec406585cfb61f5157554d808f24b6d82731eeddc773c6b31d085824f9d00c540264b8eac90529ae8ed69d1807a75c52c046046c7d1a0fe6413d3e8ffc504325f08503ac6976890ed82ccc1c15ed5612f9989f7c0dcd20791d96484e5834e563a69ca3e4265059759dc1fc45cd403cec619ce46c2592e969edd913213a081af48d885bcbb7edda98838390cee9d8b75c9ed098a809c132a3bf69c0fa33cc3fe79ecddbb8e9a319742606361e1044fd8a1438e85019bffb209a505f05fe34b3ca0b6a68694aa36493ecfd77a28f3ba872de10537880ec725b66413a11c9606cccb4da9ebe379171edf3346060d2a4d0163f15d1482b093cce90bab8429da3bec019454c834e5f74c3ae14570726a330a6d2074fca81e1ec1a1bb813e3c82ab4bc8dc515d2810d7732096718c8461a300ded65c3392f9d624c3a9c182dfc3ff88a4ce57094e90febb37c28d260083ee93321fd07f6d2bd0ca83252c2037da3b3d6ce90de654250cdb68a1605d1c7aa5559b25b9f91e13535fb3c1fabb07480d1b92b21dd53b6ce55b253b5014b9282775343e3e0431e0d0bceddd762c34d5950a968aa13779a328a77923b5020b08c9f764d4ef3eae0ec64581459f3486caf7db049512c1f5cb47238e7bf1819c2cbf43fcd9f5f4519700e66976099e31cd7bc778514252f21577458d8a116a0df834219ee35d77681280714c9f00cfffdc6d47602a75ade581aa7ac0567f06ecc6e759b8d187482780cb4736ffb522658caeb305acbdf26ea733150b2d185775226691c5881b96df29cdb36d20cf3904adf86206d9c6accac3203038508f5c4033f291eb86bdf36b65299f0d90095a65303788589aee6347a6bfdbee565f6d5a9f0d508c84d4e3c7fa99bf89e0ec97898178c96c5f5de2adc56745fd55efe36954a3d13a4b6a8292032abd4b49c96bb4fc586848132e46d9483799c9a7037f31ca6a9ac479b5a4f1058587df9b0abf79422972909a6613fe7201bb2c8b32f135cd5df00f34d8a065546b2e1d0995e75532d70bdeb3c7169b4bf1d1212cbccf87f70ee2e414cb58825b9f82bb81008b5e797cfec0bd0b00f02e5c4ee8f2f12528085966666aefaac1352b686b129f67897754c31506f9fa5042cf38ec854820d45fe11bc856e2301d4835ff425807a6eb86ce784eb14dfec44d7728171cb4e133312ab0dbe38dc99bcb59adaa02ddc5013773a8e023a8055167b9d61c6bc277d20efcc0b5a99b80c89089255e165ec1cd353a412890304017d9e62923579cfaebbe35d8db5280d596310e814b9c20b1172c0c7a4dc509517bd6b71c9df96bb8525e704ee2e281d100de1a2ab13d44efbdf39a3712b1b4176db45c726296bdc970a5f3bcabeb33c89fca313723ee07a4ee793cb4e779268eb3ed3448e4b205050f04ad6abe91da5d513e04427f81b4dc201e7a15caaaa12c7367377217ff81a9f72335227d403dad779f8989907059de40e5bae8e62582088b151a65d3a9d8e8c952fe31c097265b716161bb11f23937d18326d0702a0457e3e8bfb293c50dd54d1d1d8908f7df53b21ba490b3cda771554066218339436f30d8c6c2e78e03b86e4e776289be4d7c7f6deaf31752728c8ff0fd4956631871a828200c00eea634579d9d639ea3736448541ff4d5bd012a3c8db61cf351ef72342c7d7891e456c3b5f7dd8679fcbd9d493687a51761dbca93f0290b7a5d399e1dfb4b07f2a0e3a0952ea6e3743df7594c976a3756b4c2b94f756c7d076e0ad864768de61f7faf957df47baf7bf15d29cb522fd50c9e1f4fa074352e30ab974e7887260e063ccf6f3f7a3dd3fa68fefc197804ff57243e4f097c6d4caa93670e1cc16f93c313f8bb2fba3562804eb9f6844defb23e36851f010e258743d12d43c52b93da4029c225fd71b3930eec278a9684cf92c822e49571c21f89f79c22ed94e0fddbf009a4cf707130dbd41f745c5930a650d4d30d9d675fd7bda6f67c2864012c61a44072dff9916237baed2cba71eee18d6ec4b8ddad35960619a0542b61907ba827e16a6135f88cde1a83a3d34adabedab376969129b3ab64d0ccc82d6eaa0a4dd783468905dd10e280461fd7dcce8ede0d98d8a1039391b8e8c9f63944d64c477290e38ba43e78aff27077e741cbe36a0a268d36a80641e39d233b168515f86934c80bb3d05d1601c8c5e1bd9df6c09c9e6cf3b18fd3234f09dd39ff5a9e44cf2a1caefd93f035c7d82f09292837121a251d0b86301f2dab3a3e3b2561f1294ec96021d70fa0b2e7e00c0c7b4a7f42fa9d5cd19a89bf3a7e4b2f1f02494ac1222f093ce4c711d9154fc214f3eab197844894fda436c7c6e2cecb73c28e16b965b991e71f41aadf2f79aeb088866dca74353e2a5337e5a38877351e370ca1ba9abd36403a6660bc350f6c9a953aaee1a8a3e10a123d2148e114e092e888dde9c3ceae6d0d2e20e13ecb93d8ad153d91e80fa9d59ee16203443ec12357c41892561c0cc0c3d99453d184108cb290c5636f6b27288aeecc99c4009347734b17b06d1d3bd000789ac74144a964bf3f6f48f4c29884b312508697d377c318fba55b14fa56ab3dd1b75f5868250f4f5b08ff53b1c4c0164cbc24756c08d1e1ac42875cfefe7bd7c33e90b639e30f03713934e93b712a547f409e54ac0d6bd3daccb4189c27906bc7cbdbf8eb4bb8e6695be74b19d5864911a3a68424e9acd88ed91f28c5c3e260a0c51e1ce3be19c7b5894562c50e7f120a1823a43b00f21cdacae93705782f043f818a4f8b6b7f43db9ed6c11f9afecb2568ce9f12d2c68f8ede1a624edc1740b0460f4d32fb8b031274f95824c8f5901c1cd5ccb26488f8d636e496fa9c4a3aa4449420dab4714bac02a76cbd057be2d17f16159cae7044b9d6999fcca8bfe56771c6de9fd9780667929603d2134bd0b77c02046072879380fb2160d579f26b58b1c73c81a18426604e7799af0a13cff0e0dc049c79b437072ef81d09411462b362cbbf29d55c9af18bf7a214b59adef21999073843cb41127f8ee347fa1b039c4c3acd69142d8d29a2822a679c47ebe94d9e2f5c4d0597a5805967ee18c0eb0128fd734b5bec7d31e55602331a1ddd810f163bfc73f44ece7873763e60bf1bc0babc505677dd2d42b0681a1d26d9501370026dc60a9c6f796ca69700d9f83971a761ba8abf05d4071c7215161c98305c6785971690e219e133bd47922c2304815b34b0a044a5e86471641dc926748a57cb11862281d52b8dfa9e9fc35023362420e3bd4cac88149edb2d590ec1a607b1cdbb3a78089e4346d730ec46dd0ebe34a9f73c8ec782167034cb9b65942d6bf142efe30bb2e1b265c8e61d3737832d4c6c202302190a934a0d49415928f2da924f43f179cc55a0d155f9b6d01125c77f3d76a6ad8ddb75edf085fb42fc44aa91d639c59ab92826191733c133107ea14c040e32c3c1d74dff277ac221c582da79b9422a37a3b7a5ef6b88dadcfe8a0e7aaaa3ed43808fabd61f94b1f823fb01e3174d42e4f523d172380e18381203e81c03043c8030a58d895e42a17573a032738e708c0fa688ff50d69b00778b5077e5a4e1a3fee37ee3d31b9b08b139c2356794dd7f8e1a9cc1a6154ca47402f63fd0005572f12a8baf05c1845ac7bcc7d8099a3b703775ed60c811148ebf5f008167f89fd3c8190ae5d9142fae29490eea64f102bda573ed0f883d7b665ce216cbe882e6cad95e13e35b3143bd6be71de426b4a1a231a3b06f34f05150e1cee5117e024d9efe41662666a142c05f6ff94967254ce300d1fe86aa6e2787e09b8dc5cb7c7d572d446c4c62dc47f2f2bbac8e334a706fcef4e335772dded8633dd07117eb5b2c4178065c67931c5d8a2dd6e7889c534e43e780001ee725f7818777ae4fcf15980a9b5f1be097b9552ddfa66f1877ffe0a657a53b4dc27ae685f6541f590395e351aa825a420868a5849ab72cccbac03e939fd0ca512fc0da477afe2e98c0460504b67c4688c384e0ea98012b27544899252268e5bb1cb4f7f29d6b89f52c251aec9ae49a77b617309ec77344f6f17a3bc2b972cfbac1b746f8eb30238e5a314a404b6af4d36d222a0a00d12df610185c2585ddba04ec2b938f8cf4c53ef2570fade955fb5a43fa571f1b2c830d36c355d9a88f9a3092199703531e9e86688ee626d0d9773f1b1ee718bcc9364762d3d0d50f010a72b4cf570a868176849fc29802afe7b78d24b0c7918449da26c4abb50b4d421670c21b4d59211de009dd4f65c039ba63c1c0692f880055f45caef065d478f69ca2cb5fbff70483da83beeab41b2b6abb913619209ebbe345dd063c5c59845ca1f611243524c7caf0506012e35b4a7534fd700d665d59c010af76da5ccfe48ac8287378ce1481e005982f7efb687c1512c54b2831ca60b549d15dc95894d32f5026bb573e0827a1f35fd0031de714e971d732008ac9eaecf87e60b9eda8faf692d444c7a8b517a59f9e598b054d9791f9302a5ccb5464867e801764ee4290494f8a5ca378a0104d9a3cc36d17dc134f6352b5fa27f3d2e6abe20169c50b62fdf39a6ab08e01cc74f381ae6c6c82690e08d11b8de4b84cb153b4f0c9ebfd4c893b8de3a03ce645ef71475f8cf44a9a9e8e42015075a1723d3737a3cf31fbc44314a262413cc25456a9644518042c9e33bb308a1ff4736a8a74dd589604e804769c05cbae7492a8c3254dfd809463234c14eed8e57c9f7ad33904ef355eb1a0698e54aedf80773d83b769f18a2e1dc00e3057c1e09b77c63eeff9835d4ee0501e18aeb3dad0e234f26bfb5c0dc852a0feabb60550d0cebf05e1f7fb37e1e2748a862beda878c338bd9793c499bc5165b401ed87efecea07fde92b5f9cbe57103c7d7fdd2f31d92835c59d831da5361b7989931d648e94fae6925fdf28b510037c3bbfa54e4a9d51231b72486da9fbd494478f2db593d0090ce5fc16bd58c43da332757c59a9d8f7832502e6faa1e6e7aa73134cdd25918b04e691097156d39fa07b867bfe54a7e62678724434c14b190874af22311cfe1aa240c222c64144f823ea3fe30bb2b387d517373a3cce07f8767dc2295389a2057f3f8f38f2ec4f84d07eec6ba5e95d3111be71507d43e0416b1291a85ac22871c409ba31ded998d2266744bd63465925f7fd54a41d000721fb5cccde16df68d64961ea044c3b148e45270d8cb1c16af191eeb64c42d98e748e9af6454ef8d8438c078b8b9d7c8c7e420b390161c0c4632d0a518333f888ef0475ab80921a400f1a46e553f9bdfa48244e9d3b337fee7224331463bbed31a801e2c27c10b06aaceba5e88bfbc6374c02287b600166768044c8cf08882cb8bc8d6645e851bedc4e3a38f54132f7a12ee6bea2e229219146e14b3c18ff2b3cfa6fbabcb6bcb8ec03449674a442b59830e8dd70a1e589d309ee88109838bd05f4a0795d3d23c57c33fb7c577ae841aea7112b18b53144d83076861351351f9ab7919a33275cf0380859e4a9db61a09ddc1645cf823dcc3cc3de4b5e7bf468b0e0a9d0ed4ddc850afb578ff2efa8bb1aefb01412fad0362465fa6625358ca66494c34894791f17f777c4ff0b25b295adb68239bf09063294b15771d8fc7f6dd201b8d15f013ba702df4b31a92b6edd452e4eb81a682f8aa5aef2d65d70e3e4ab81f7424ceaca5b77819b13ae05decb6229a9bc7517b839f95ae0bd2496ba8a5b76a19b53ae06522fc4a4acb8255d70e7b4ab40f642540a2a536b9d20b1271e4a92724fc95cf555893cf7509987bc96088d7bb19dc8e7aaf49ff079bc607bb86aca3bba2587f9b442af78f5c56e22f5f14f8ef2a2481e16ca100d4e21fa069c6383b5b46eae39e2958faada702ceaab53c011a56fb243e774dcbcb6cc19902aac7a9ebe873d4a30086bc1182b9944144d116a9afdfaa48059a1315ba93dd31f63b2af11ea9f951330bf9996f39414296e4b2f462e4aa90dfb86d3e87f9074654e1175e7dcd7e1b6017d94b87984b536d8cf1d538fc7d1bb07eadd91c03ab8d8784a72427edfd74a228d24ed9c628d715618d216886c02b4aa1d14d145d1fa391243f25f3b328371deba29e1392be4b4722a89a024c95a155472c30a21f6d500cf2d9261a9239e874a38bee2e0f15ec436f7e67e7cedcd434cb0232cd01e44000b813026fbd97a064f03a2ecfc8a11c87fc74a8496a809cbb39239bee1bc180a54f0db5dccb7f2e961086fe825ad738f58bfdfffff1d4f2966f1bbece56ff455b3c5e64f20c1c915bfb25646eecb5d75b90c77f12696aefdc96e0d699e0ced1ee000a5a99035e5805db2380cf52512e1926995d68e26c4a5739eb4211d4364ab07b20a4e1f372f6b0e5ef2ba8c83361d5b6cb7350ad84f72a32461c41107941f4d44af737cafbbb491a3161031f8277947d2677963ac9fd9ed784b1090f5061b23cd6c98dfef3ebd0b7f41c438b785b64468faabf82da0c97cb119384d164c11b9c7c7094d9c03d8752922e93464664beadea9be9a00490ec3ccfdc21ace419542e6418856dc4e4f1551ef3a705a3f65f7f385e0a7a24cf1ad2bb433a40c69940163a61866008f2dbd40552d867d73677b5dc4c75867eaf53828c827832b9ed0d15fc69f93e1efcfaebbc8893c3c683eee9f860e89c880578d8f7e3d9b77456f6d2659534372f49eb5ddbbb2ae02a59bd808a4a3c61140bda863ece10135c5e5cd8ca297b823ec61f2d3470fb6a4102dae3a90877fdcc6268308bc26460437532a7be27ddd494640a9f106cba55d5208216c2538f42c32f61b3de3dd62df828cd85480327c9c7dcb6273826f5e237da5e9c735e111ffcb3417588fecef37d135e4cadce4d88cce63f1ae0e12ba1d5ab8dd65278e7e562e5584bc06dc4d3d2681b4a1565e4e5e54ba98bfe08b4ab15bbbca8cb8554b414c76424e8ecfeb034bf6dcd7e2067ebfd99a0edb5a40eef0d80e19b06be4d84df450211c864a5f25dd61eafc17bb4d050d70aed52b5ea4709a1ae99a54dc801a2caed72068ec7679725a623c1c62c0adb17ac2fc83c89bf321c063d0b2aadafb510f67eb23d7a2dd72fb6d5e8ac897ed5c02c9024f40255195c75baae7668b8b48d714d286338fc5123e22bc5e6090a0fb8f4b180f2c5eec6f8d140c8bd986bbbb1c634a5b414e0816ad9bbcada58ab832fe1990303269cbfa46bb6d29d21898407b18ddfd181a28f4ffcfc00131c4f1f755eddd39dd8865028e7f42e8adbfbafabfbc41c78dfecf4cb7eb7ef74d9be0902130e4575f4951e211854f85bbaa79c897fc477e3349045cd63e9f0dc0bb8b20ca748bf419408e00ba1806cc17d765843008a3ab5db758c947891fdc2fb8ce273b33b32c9f2655299a01698f6140c847c0d48e2ca32aa90a1f56fbce17f4f57d9a5cef7bdc18ac8e322aff316b8757e3d1ba4e132b243f1f9a67140073a827f4cd2f19e46f4570e1d11958eb167f0b27653b90493b7b367867eac7ad803fa9b4d840f68cd6fada7d9d90476c144dc56c748d9db06ad3330963b940148a8bf4e9e1b92242c4ba1f8c9b34be1370b02659b8135ac7d77d613b6980743a3f9388ae17c16860841f81d36ade2049e2d7e71dcc59e05000bd6cf97ea64bb0b2484f1b390f8d034469468cbe60c72c6a65b3f3800887325c332bcbdda0d3be6217bafd10acff7716fab23a55ec4b3dbe7b412b5993fef77646da58de6d170dcabe7238d747e549f4e02b7da8a2c4b2483e67131363ec8d6abd2e1e010ac6122497daa2f19d1f5549378c93593fa6aaf1d8bb34b592126fc7c51d9b440b7075c4957fb17068a4c808f6368e6fbe454edeca95e80209131cd865108e007c0727110eec84d27c18177f6477592b39a8e1039884b77edbd865e8536316f4a0f11c5e09c477cdb692c100ee7c7e945ebf62b8fc834f77c6e4e91c87d9e9c084399fa1646430db0ca40b3a13a93a5168de5d62992dd0d324482dd74f26c72634a7cb626aa1fa6c723e741323c87608a69e0872d7273aa44bf262771d4362e8d3702ec784f8125853f1089db4076245e59bcf783200e861f872336ee3eef527bc10f340d208752851c3f1d37b99cf72e4433f2ceb7afecadd216b3a6e6611141542a41ceb7866c5420c2a331672857ccc900ac35fe1fa35acf83c1de711587f10edd2993bb7f92abffad189b2f35f1a7829c6ba67c6be586394f85f4bd4abf441e919be3619fabb4464162c4b4e3efda1d954d02b809b43fd51497de6509417403c0abde2d6af09a52a4a2f22bd2e723f4a25036dd0d08959e4ff4950394cc6d6211b8eb8f34be1a0197368d0ae0b039f0c7210d121790ce5ba52d3edb40820789f2c668c42618c929fd949aa803a1a0b3ad56f69368d032b51e282c3a2d9846c693e7f833740b3794c99708dd556592c690ee610ef1f372c70da813a4558d3fdf453e7f13aeb697fd5251e0a34d8b08818f36e0a33ae0708aa5838da3c23f58dfd206568b32216c69262834bd3511f06b1a1b95d103b5c3548fb315c113f53b413db840cae1acbdeda200112135b5b1ac9d9d6690a9e9a659eac510e446fdeda346ee51e709bc66dc82b801b236db66f6d78c166b05dd2158021efc37d1b1aacdc3134278a6e20822294acaecf7399d2503087478b766ba745395af3381dc521e507581cb9147f2df48c71718219cd3bc4057330454f5fc2472782e2b12228643e92d3271b8a0059306e3a35391fddbf4fec53eb277cabb501a85b7f82fcf23826a419f9c5121b3b3c17196d6a429c88f99c7f6de81834f32076b004da5e010b50f5e4823ca0aab18ec8d2c21d60f970635b2bcbf3d239356bef42485e7048442cd341e3215d4889784a6274ba02a945ec23844a31d26f383c0349f307269c321167aa2e300a4ded4415a0470aeca54337bfc88b1547012de9d9c4ca5c3a60d257bb8c7e31f967bc34f2008b6ef9c075cfb60a30ab422513c44a009e3e4495ea42bef88c032caea100c7b651e00374190ed50cd3025a50b1b9195b11c90d22e270b670b3d1d19bbd3aa384e6270b6b6b775e616d45170aeb16773461c5aa2f12562de428c2eaa66c06d53c9e29f5608d45531dac6fce801aac64f78b00c4e4005cd9268bb6faf0ae81d5b42072508bf34e65d09fc4bef74196f74504949698cb5ad9ab606d78e7d8b7c1643368725f6bfc23f6d7da4419929790fa3d3a807b1035f861aa6e9b8fbc020c15022b9ae92342e8bfc6ffefb107a1747ebf3ed3c4258555977b723a3f8b3e716f497b3228e1d2b6001898020f8072dd94f1c1b0b6bf6caeaafedcb48cfd4159b5b7c01743d39e4b145497bab3f83821ed9363cc13128c9b5376283118afa29314b8da95a98a8d4b5df53fc6afd76e24c61a33265e856f078a4997f7e468308d0242266c44d3582d0d2c403e007639cee44f4e6fb27377562fdab32c1639f60665fd5326ca4483ab10a70803e27037b06737c0415b872c8f69051226f79396b88d163fa537d72bf42e20378220c16443c9a5d979d31fd3bbd517061f8866d46d8f22be6ebf6d50a993e1de5628ad76de72c298a385b25b15460c58cf722775bd302fc0d7d91c80b07e0e15986e829f684a7dd335597efb03df68101b5b53d5c4035b7f29d0b21e7c36cf0c1bb34604d67b37f492fdaf0cbd2db614df9ea5f7eb8f93d66a99a992a9c67cb668744dc6f98552842fe08bb6857aa7bb711bc1013e88ff462d1064a0c87f7601ae5d0c0668606d0d3ee113f4be88adc273da7291f0b01f7829969d365efd3736e094a8d5229d5665af4c5f8b9a1f7357bd36fee0b78c0b52718b9d44346f8ffb2e205c06c035b60072966cdec75f43a86d2d2039fc79b7fa9298fa5ff78f739a2d6212154b4e00c2ed0e3c12bae7e10cad34d846553546ffe97110da47f59155f7371ef17b2f6ca0b789a352ed8ee30062bd775859bbd54cbdf9e5fdf49ce0fbc0233961b1eed79749a4e30fcec0c38b6dfec9e87a22c81a7751ecddeb3418ddb5f485e7cb122228390c8138e925ce84c694b57426d8619cc62964e221e56e9ce1f6e66db547b69ecc5efa5f75aa899bc51eb3edd81cc7c196d3c3992579427f1cd2b17746d6cd0c7f62ad0a64c5ab4f0c80b09a8cecef2fb7737c04539dcbd26c4db5423675728375e860cc97bfefe416320c73c4a99f4f84f21448b44441b35f0ed435726a1c325046b93daca7a53651c955e90093eb26f33023602252ad21c03e46cc8ca9016eba4687564480dacc4a9238876132d04c667e4ec594eb4740fbc8b99415f5578f1ad09ea5dddb6da928506da945912c3aca0c9fc738d4de779ebff281e37e99739cbedd40892d7b859c19d93cc212ea33071dd7f77d183fffe6ef579db70b43775a0b5dd8e0888c169c9e348299cf20a293c95f0ce54898ed846b6500e8043a50a090281577df9235961b4b166c68050a46ff6b61fccdac661661b32d752930b96150c9d306021acf7ca6d5f0732d3bbbf32778f4a9f920b2599c3c155058112a10d5a5e82fc0f67646ea217f59adbdff0363708ee6c1dc3cdeab4234eb8ba87356858745c3a5f89e0ab0fa9a6411680fd2b3d94c4d231c0cdc7b5bcb6928ca3aecff4c357a5536c3ea95b686888cd5b1a2315bbc745209d0017813e55fc552d214b184e29a26a921a50d1dc80d043d51023ba6a459df66feb30c37967d5fb8890c359860b067eeb1219b7c8e9ea19eadb5fb67e2e62856f7da397b15dd123b0526a4f2d5e8f44c064d60daf18b56ce344c2ca08b217760b189f0abac60823dc20fdc8181260cad70f64061633950384afaf0a529f655020f3a754734f9ac41afe463b5f808c0e9d07fd3db764e52a9dfb8771f85839b31d82c9fa616006096d9a0d522c00eef0b94ad7a04649021b9a48b08a8d2e4665cda798328d706211a1f314c86b779c8b801504cc6f72309b786f439a2ac46a140414975ba6914a96ac23ea446a97186f136e6159c04783acec7eac860077fb1b25b9e40e3be412f7747d5243b1656f5a2c3667803c5cf3681a6b690d400410a71866ab9e2a7d03ac2f820bc125e1e304e1d1aae31ff380887d0b1c954a21ad8296e96132f1a323106504d3d0614d38d05651363818a9b2c725c5f4e55e32f56f1c97997f1f9bd7058048c3a52afdd7d8ea1356cbbf9ba9bbaf575cf97da71f93d9f4d62740aff46c9b2d8456581ad724b2eb6171d480f3740dc8bbcecc34e25766a94e81c5e19f3e72f9a96b3b0cbe46b57f975794f615498de5d44df0a9186ac09a6d66b51c7bc4f884bc24024dcd5a63b5231a93038f2f8bc4ba67e5095345f177bf66bdd2350f095160f77fd474c7e3a1505662f1666702e7b12dd513ad4d78001cfc7a6e64c151b065dfd979318a3269ddff4c4cc7b5d625df18ed73b82e19da2ce5d456eec3fcd621577d7db49ad65ad9352bfaff9c08db988ac820abc2fe64367a9c2bd70693d4ed1401fbaa48c26619a1f9c3a8b28bd46302226bf8826692ee0a20c934d056c263df844de2e3755a63b7b95480540ea1dceae29c22833da33ee26b35deb04c99b60f0aec34d3611e5cae3dcd846686b0edf5d0cf3a1b1aae25e78f4a8258539600e11f1cda3ba31fa689b66811288eefedc7cf1e6f8e92da9b48b3e5f6ccbf0bc2c09d14d1e6a48a71e838716abed48b0e163cd7e66510233d69bec912a8d505fbd6d7908e13b1c14fa4d8ddcf047f994940cedca035a1e2495cf034d500f3a1926442bff9950962c8f38a3af161e2a61bbde21be2b91a1efee3724cc9b804f3901e47df7e8610daf1dcc10bc1b05fb880629e27adc8a3f9130f924fd5848d8240fb2d91f87fb6c266b6c3c84f96bf13f3c9f9de98d58f3db11e4c035d07140be925a47c9cce2524df9b783f4e0dbdc3bf740ac9ab8834ae79b330ebc3b4d53bc31f7b43014982c1dae45755aa5cff6ee38730de422e495998018ac1eb97fed7564c044050f3e379b1e7f5dd41840d2947f719ff921fbd28a3ca5cbbf80d12189fd3530ee6164acfebf717c15e40714252d9b2f039894e5259b09b6fdccc69cbbc82c9847fa15cb364776efd60aa1d0fd204e93d0af671d2d81c07c61c0354b5e25e98ebfc83a93229f7cec7caa426baa4064b59ef05f8061b4d6abf30e98f8d3db84878ab77d1b00cc39e8a0914d7768cb78e490fa7e0ceec1a1dd7889356de269fce4d62fc44fa7529915d323410c644b80784580e792091f2e6e69d0492223f819291ed805263b7e4b2900390a3c49a3081c8162f47b537e03728118e58b43d9168ab341440efafce688097e17249c8ca220f8ca9e05015489644404051a01a7aea924fe249dda73589f92ae114ca4407ae828b52d22806faf45f50fd27df26cbc1b019123c29f501c066426060949e455766e55fa062922f4eb59d9d26a736f9c43bebd45b1d84967ef51c6928e1422eac50b954a3aaa2d4839357343121a1fbec33318226412abd260eebdb707138af7a304bdccfd57ea497c1144cfd716dd791e6490f16af1ab4a321c5a90791da6c9ff06b40ba5373a21976ff4a4baf9ae7b2bad238a5c7e6f59682cc9465263efc22c3e40e5fe92b8b32a715a36445e90bc563a9e0742c504d7eb44a075e0f3c65449fc1ac4797c716e87ec09ad14db9c47400629b346e984c6684beb375418e84ebda2bf49b71001a570b4a027cef38230684f9450c6ce1f9158914bddcbf108cc1672c586c9402dae9d2bba3f9ac6ff8180f4f34baf0ed08f5849d57385104eed80cfeb0fd0716e360a4a41f84dd48d3b190c3410fa1619b94cd5f0d8c636d7f808f63340e68751837521b5a10f38aea8a8e6959ba8e016ca478987fde3b6663d71b6a6a6f4f3e9529c40c6691a97ac267466a946f60c3d798aa745dc4c5eaaed6743dce5e3f2dc274ebf46878f3dae433580cf03e07323acc8a8b182065835b2455523454c883013925c208290903f0d2b7ced02462c72bb4d508cfdfca3ce10c3438e8ec6831df7d74f7d109baa99375e7807f218c9862bd95470f1eeda08c569322fce6b80c63eda083902684ad180bb9276d8dd0a10f1e8a0245472c02879f6501eb05b231ac62dffbba3047e1e48da68254d809095f02db516a1e8033b74faec7dc025d643c8a1d701d1df652bd46f25d4de3327ff1608e62b269916029ab748f4252be3c401b182d2182e10dd084de377dc4afa5b8b75bbcbbeca07da4974c862ef47f90aee67d1ab28b8564446ba220d7bd983fdb61d539ae5ff5c8800e8bf1eaf214891f35d9293e37fdcdfd1594ef50db895892eb69d95ff5e6f6726b2ffaccbdeb5610b2b2294d903dd06041838d8ddbfed2b5bdc99a9cb036de6e73b8cac76985a8f9ba7b01f7fc0d00b07d7fdaf2f124313203b47cc0be92618ae6e58f7a1e2e5b1a2f44860931d9db395f53d5ac680df69aa567f91ffd191916d968ce4732aacd6dadf2796f75e277be2c160f5673bcb791c20fd7fb40f5129b7ac449bb3268a1f73073447ff8de10a73f36786a1061184e925b5281b340e57e03e6853ef0f339e21e3c42d4c7353b598a24696fad24d8eaf6772757065e4844fbfb057b9be644aaf297f163fe7fe1e7ef253c3893e2c9e0ee4c5cdf90de60ae7bd43c55593bed3de67039dfabb973c86325fbf85190bb142815eebbfde5d2b90db2d254d3af6b7fb5c64f75894c2c2b14473a7bb69ef0fde87615db6f8fe221da6f24141342b9a8a0cf7f305c8bd8aefcb00c7a6d03687431b29ac1ec10a66d2eee5b9cc4cdd9136648739b48f2bca884d3ef7c0c6dc12df566b8e4500b16c83f15e52279bdcd1ad947445c28b27615fb3f7a174233fa81213f8f94be9f045e82a93b4b4d4079e9a74457db0b7c9a64fbd7be69219bd2d838c3af698c698e31f485e90c2c766fbdaef6627bf35a1c9871b19f8dea5f5dc5fb2b13f005ff4b97fc02f66a090db1e83fb3707eb17fabd9f2b024c0076a83787c851b48bc77685b8d7efbddec6c2cf28c2e0bd153678cf1fd71c8b0f97b0d421891252beb24942155b7737e5404cd9141861991c3b69bf901778c82743806a528092317568e502bf5ea45dbfe3f40c73da3753bccbecf7da4a75645a200733adb0b19624b5acb387dced7e34d1257a36661619c3ace61c74267dfc489f0eaf5958eb4720b4c4ffcd01b92668c9dbf8592bb6e26b85c30759a2053bd4f5285ca7128cbbafa78ea0aa6452ed03da74c95313e3fb1aa0f1929870f53ee99a4621dea8d6b47e2091f7814a9eddc01676fc4e018fca0ba3f5ff1a3ce540a8ab160fa009f390a6566cb3011afafa16dff0288cf128dfc45055fc90ce0d884d76ad430698eb904467d9709cb86c3f2c539776056c49776cf77a564e87b8cf6c2d9e6ae06e46f20ffa84a403eaef5f988b26b8f3513c9b25f0485bafe1bd563c5176616746463edad0f0b789016e695c7feecb19dff338901e5ebdaadf72e05522711d931a865ffa9c38c2b119c59513de7e14386b30288b84aad3e34f8f5728d07111249027e6a0ccd426ac2905398dd1fb458857b3675ff3dd75510c04bf81c312a1075bc6e5ad03b1c901ccb9b1de0c53de273cd09b8718abc8d77192f0bf262648aa0f1295624ef8bcbc291f1d205747c6095546d687f1ac322e7edd39a7f942ad54c320db01aec733fe8d9ffc989d7a208d904584bbff49c3908a3697809f7c5bef07ef136f2f9202b04e2c5f9f1d80aae5eff163d0e30a9213de370ee30bedd0525f4f391ab5d126c258f43c1d4a65acdc22e02909c9710796bd394d2da1f6006ea82fc812724417533e77915dbbaf0fcd8675920896955f7bca99143dc4acbc5bfa98ab218b49f8df0a9902cf1221032e516173853114ccefb1083c767cc73b0419e0e11e331d4d65a5c66e589740b1152e0b51b10a17539e4e01dae0ffec5235e6a16ab46e40d288e21f09457740e02a4b21002a86a002988b6ee65e7ff190dc0049206d7fe854a132cce268ff7e6476f6d7539e030a1f249bd98096a20ea3b7e887562d68b04e9ccbf093609f424478aa752c23fb702a6c3af7c3f6056892176d0d544d1d91ffe148ec187b174c985c02ec0f7d082ced52655a0db010282bf375e3451c4696d14f92201c8ced6b53980d1e316c99f9890147adf06c388160338badd6e501df8aa36e35aba67c44cb3488b4d24872199d36091e3b3932cca1762847b1d40d15089de3cb8a9c009fa22dc53f0f02069fc7e80d881aacc39af07f81e5f8bafa078616f891decd76f6e321acba7fd7e487411553826f78287636f61327d630b42826b3bea40e647443f46185d595cd369c42d6b1d58636a99d9108c422a0207b266fcccd5a6b17e94d1580afc4d152d137ed5ba885d2e2793e990c31a48e56fa2a3867dcb143f1992bd69b85737e998506a03ef3dfdd5a5676239356e9a4dfb886a63484db25f76c8012d145e9c4abf76f71a94de046b8ba8cb743e7e517afa39d3640b60d1cdd3aa4823f3d737bf8f0c148282526a899be3868e7c83e9dc190fc8e49c3f1a536a27777d379af24fa40abb016d951885ac739427f19ccf0cb2478b5b85ba1554696b62557ee02ffaaca27d4ebe43f43e1dff004b76b9ccf29b7e51d25e53883ba62ea48b6fac2696ad89b05b1c3ebacfd771bbd20bc77913598b97233f9376d6da1671894a8abed66b404bde55af0f3fdc48dde2a1c36abcb3c956f1ede217082f52b1b5374e69095d177af4896bc249fe3659a1b1246854a8fe50cdf6de4d7137812f0703ab178e6dbabb53dd90b9727cffbc2971c12991952f23c264f95699bef897c14c103baf3e6ff450d0299bc968affa25025cbf117df7194acb99704263d65a3ee2ee76087a225a6062b50f4312a0ba201b8a3158957a3d3800d36747d15d56331c41a19e241f1a83f789ae7142c6fdbf5e3e78c843f39daaefc8f910ae4ba30fae43ef4d53715b8273e5a5ffbf64aa16f4705b23028021540a8e901a18eb0a9e0c925e9fc26d53bb73ea87df1d8a1d56d57da4ae399332f8c577bd47829a8a17dbbc7bec226fd4cc0365d1c2e5f928ef22f253c744b07fdac53a12a189bf453db5aa9f0eef588d0753fa428546d06e896d400902a282cf73debf9109db6b56aa6b5ec6ff44c163df7bb6af7b7d8ac1a921d77550b6f1e2a1fbc67acec1f01ab2c474fbbff9cc3b5bd9d9e4b03867d305a62ee70ff4b97b4ac10e3f1def23e1968a9f23e82f5643687d9e47014a1891d2495c217c0f583e4c04df1577152f0c89d0a411bcec20e017e27d84c6c3b2d36fb603d476699dca977d97ea83abf11faec59727b11d9b14b1618b70e8d18f302cec101e459bd8256d40c5025cc3052b8724aea1c45c2563fb82614869283b83cfb8797ab53823cc2a292af60536e9a10498b094701f1adc860c3ec054174b69a32dfd26a40977a04ce3ce7251aa41d55389706aaa4527ff41bd4f7f0ce02a8c45d180ce017a93da56a01f1b20995bcd4ca7d5779a08c9d3df610b271fa54e84da4e8e8d7f41dd8a61b939ea15f879bdebf6d392420ad07ad2eb4273947986a732c50eba95a7723e66e0863b07e4baaab18275123fa97a20f8094e9ea70d58fff5b336ae7c0982843c7479d3e828f1a40e8d9d55032f606da9a41e58c4488cb023a173aa73b401f024e26843d35f0e8e7c483b461e7b127528a0bff16e911c5408922243adaa63a23ef01d06387a921147949572c6578da183ffd10528a5f9f97b58c6debfd0cf4b257bd1575c444ee270e6f9c10138f31beebf48f8a226cad032d6fc66425671e6e24b0acc459cd5d8c25479c9e7fcf77cc57614d65f2f3b913b614a31c381aa3aeb5970054496ada118831dd055485bb2ba6122068761f7fc53aa257be5b63949e246a2fb5a8651b35f7ecc1ce7edf7edee18b9b72c2b6ea272c219b8ab2279a3d9e18d2836b633fe400793923e172bc5a241a4051e9e794a1145181e6a7fab7cd8890ac4b0938642ec8c0c1e9131540d25105ae417d322eb1ac0234258e4eaac4fbc6dda2b09981fd231bd08494cf7313befaaf53cdf8f56e21692bf81951238643937a5d3c07ab0d257bb845e383fb1517e8b114a16ec1c6925a908de6f9c859a9d29e6b729686dad48d64bd0d40173a30fe00581471843c5b80b57400f7b1e94baaf3a990c1794d25596a11a10cf7bf536f511f6f1c5e08ce2b043dfe7cfe8023eb06b8d8e1222e9fa566342660167bf9f0cdec23ec93b239a1c05c64acb1f6709fc8c88461e74d0175663c905e59ca5c8084b886e3c3f2f0750780feb0ddac927999bf210bab6e0c71fcfc6a1549ce6285caf01ed52fedcb60c31a87892441db461d15769e6f9869a9fd2024d527459924340f75868c2d9a2931250bc50c7823d17e4f98d550548dc8558d0146f0e63458c5bab55ca6a01b1926fd440d39feecff397678cafcccab39f0ebd305de8d958f1fb07dd3b42a8b1f7ebbe1c92df33fc3521651b82f18f290b72b289301487f900d4a4804ca112864a446c24108d9812b790caaeeab0d18e6e4b4ff11290939901ca870a5e04f5ffaac71207a9bf43436e8ac31e34dc8d3eccf228ddeed71fe6db23520911db840c7ee9a61720bd83fe1b00f7ff47b04a9599f6b61814518bcc2bf65f8f706e3e0ecb74901da5842176ebe328f37a5b7561a627fdd021314a4c724b61f1603e678f4fc66d32db0b13454438dc9aefb0a67477bed694f8453f9d97ead601b023034203bd418fe13ed2249ebcd9e3340d5d71841614bd6c483f755f510d503a659c5846e6891ef9cc28b89469c1e6b81720f245a1872601b7585e6e6db1ee3176f2ab7a97da531f0625bc52df852b5272acb0f27f155ab5f22794ad6edabfab316864ee534373ea78acb567559864df6df6bc224e42d0381eec81feca477853b0faf82ae4f33ad04d82b2600fd0a5d1fb0178ef5b883481b6e03143c36d07bf4f99f0e9f4db80139c8a231b04284d199beb95ca78f5fa6241d56a0f5135997e1c2366871ae31be6590b88132c99eb4703b6b0a2c9f5a2f5b4ca5aeb32a208d50b1155b3e95d7026c160647360806ee231db2faf0f0f691864dffa4ab01f827f6e594583912b3dcef586d1f6ac75788b3548302988a88ebaa24a1bfed8e77edb5c20825ba76bb160c9edcdc3f77cf6be08fbead3e5aebc01c7a9bbf509975905b6b4858144d91d3bb9c867482785d985cd5f8492e0dabb8b03f00f6cdcee666ace3eb629c44090f90a9ab7787291ab8c321f82251268ff8ec43794299028d3f52f5f2c9b02145505cf61a7a3911c99109d0509131b52d9c0100ae56e6412ed0abf25f6337f32e7d43312f3283756ef5cb0af681a9016d9a06eb04fb106e19ff06ae0d1310d14cbd60353dd09b1c12eb082c3e7f814655952a00a3ee1e2aa56b20fddad7d8e8034c2bb3f0ab0d29761c39ac975ebf1fafab1e4debc242eb0fae2691076c821531ecb747b806c3e987250b242c40497f5dc530bbd59cbf98cdae187bc49f7a8da5b5366a052b5279a7bd8a604b43059cf0fe4638f6d6daf5ff2371eef07e6d66b62e65c51dbc712607af1a1bf9d2232991768c7f658cf9efe33a7d1774970f527dcc3f05e5c0d2585911c6ce2dd1c72519e4e0023fcc09e999a9f22765c91e174d3169a3ee543e4c543d493f38c3bb3414bd9017b2b892edce7def2744bce1c592fbef5c2a56ee9ab63e888a54b6f03fee5389b6cd614d338ad53f7bf3474fb78772d9f44ed3e3ce1d424f567898324f56f804c39992a57fe1f05ddabe508a404cb6f23a44f78640c9f56965d23aace4abc9b9d322cbbb9af54a203081c72e16074913bfe8e28a74dd621ad65ab821003991e17a2970a727ca04410d20d163b0d3ba1c037fff5d8a181c10e92d706574302446fa5e67ea1d9a73f9229f94c03d6dceb9edba16a8ac3fd7f50ad310468305eec9d55c5111bd5b7996abb70105cc18fab16b3878d8535c17faf549f102ac74412b4c8e66ea7aa5f3ad32d071b15450f8c2a5810c8b8b7228474512c682ced98673340215a66735b08aebba31784a3ddfaaa5d7bc8879bc6a84fa42b88b3b099787e00f4081de2b919a072a8797e7ad9cfe0f83c7c035057337d4641f20f74c65e7acdeee24f125235c85922291cf022a304acd0b6258b2eb71858c39cece25434c9e2399fe397d00d048947700260f28c585385c9b3fea1843efb4bba615e3e04ec2767c98aeee118bab78f5baed0e45ae25d5fdbdc3e5441f5040311f4c0a2e11fafeeeff92aae9d794f06b0a4c5c30e67be94af788f73d764fee05f77ba6ba34c2fe7b8614a18d83eb1c30c9dfa4f36ed71388610c9492ec580094925cedc1c8a6d32f7124a907e72705c4b654ddc9c7cd97518cc198ed2d5ec3160d5cf71df6cf63a11f3be6c7edf366a0c91241e93c0a9fc8ba50eb1cbc428f0524d9065d6b1e11675301fe9322a57ac70bee16d3eeab693e9bae99d214fe45a7460f6b3edc983cd5dd001b280d239ee59532f2e3899effe4c4189e558ad6c8c43ccae728a1df6e982a35017b6a9f0bd10f5402607065620d474ea1c141bf8837162b39c04bd715cba1392ac4b7fc63194c292db52e86caae2c538daceb2c420607a47479594b01ee1f8f85dda90f30e1c12b6a1bb52462e9aef4e803957de6465f75dbeb17c4258df55e1ebd21fed71c5932cdf0a0ebe3e00dd67909445b8a75273f9d2d61c4229644cbc4167addcdf850119c1abb5afc31a19d980a0f7b933b1d4ab0b99275d8a9498230f45c84cb62d7abb07a5e06b1a178cf2e0dff63fc94e322276023e5852a481e1932e36fa28a85dcf2469f2247869814d3fd7c440a4cdfc1dc57780ed33423cb2c927514f91623b81ef41cbc0737b2af1412f2a94d39d1d80b67fd64ee1725d8508e9cc42c9d9d8a69a1903e83cef6cbe8909343a34689d59270bb2e1c3c049321866adbdb8569d5fb9379d740c2db447744f5564689de7213e6602166ac9843ec386517814b5790a62321503988212a1e1772e6fe7c27bee355fe9eb710a77805913ec1a779852b37e8e50bc6b3e1136d47e43166ca890375a344278520ee0ceefccb40adcc8cc106a954446f21b50127eb0f26aecea5b323086d9f19ea91883bd448afeb0cf5aee21a544af4e077cd901e49dc476adb08fbac106bdcb5467982b3d68507d02e6ffc262965fc82eab9f91fe7428ea47de149209ce4c4b3096f4f1619016d0d0066415eba2566b61066b886bdbbfa34584e6ae4bac0707a0034ea1750e21f415cdca25cd2cdb818f4a2eba52485df6a190b8bd538a3a25c06ccb273061b6dbfa1d90cfe5506c517dcf543831026ea1aec53d42a6fefc7b59d188aa040e12900f957fca6257a4978c17ce05831eb3ce370cbc4007300e9df8b4407c43613dbb6318b1fdd808ff190a79f0507a5147198e69a77505b0095b71d8818615a576c9b462de635190006d28091d4aa43acce65fd911978777d3fc4df4f0a2c66220f518c40f213e998600398989b7d73bbc5487c61311a013fc041797d2a12b36816fb0295cc24dc509faa28b46d9694e7d63d8620420d9b1f79862f25804395d7ea4be1f730a5e2d2bd6cd9bc7ca063a8c41dc496e7550d932f661f685fc573af2cd318f3d368c4be442a59d12f4d19ea152bceb3331c5cc53361cd47e3e21185d8c8cdf163bc63891cfb230322a31eeb3b7e0a04835b30d60b3f9b1b431a649e654a49a0562b13348b3fab6a87c9a51fdfa0d590e6da4ca10d019621d7ae1c6267d971c1080473c48a0e8429d903708d4a9daf3efa2361d8b2d5a8754bb3c32eb3888e8a696144cd0564c9f602ee362eb95ee7f36e33ed771cd5d2b44b6023db5ec622b0acccc92368750b98cb6658b5e0e81cd1b71119060b7a96bb752c2fd3375024b00813f958e192aeeab103ca80d858139a83fd3d96c9b832e0c1b216ad2cdc4afdd84e305cbec1d35b090ef6d2fc7f399417279c37ee3808a8bc914c130c3d493e665db029524683bcb863206af03230d32abc87d15349b15d6aa49a3ae9bb5dbc8d727d66dbca8deb1081a1da17c2a98a60aef6c21406dbe96671b30becbe8a4cde3ef8283308efab8201d040b80ff5c8f86f7f0763cf8310c5a1f903bcd67b56db741d11419b75040bb5a1c8c01981115efdc2c8c827232812d3c54d84c2772d7efbe1308236273f792387c1d71ea96e225fb19e3a2c02331cabc40c41c456c193deead1d8683aa3c4a1a052809fdb5c69101630283e1c25eb6f5271a7f4674723dda37c59db6c28144f464e113279ac04eb87c800728f6325109916158b26d36fe91c2b6acee6e3c53b96aa0f5b7c533bce388f97de87006bd88e95d07cac763448025b13160b32d08e8525f67407847d807fc6782a0ae78dbeb0c4a7f10043358220f81e0a40f4e6cf9f0f580c804ab24ac19d82516cf4c609df5ce27b1c17ea5e177e942d4d1cc17f387a1805d17e8ea5b537e87ca3ba0a1c98322cbfe09cfee84dd19edaf352df8d9749de62788c70717a18763b26a3e717d33b883a93c07f1ebb1ddb25c7f7e46fc98a1d3887dd2e84041631e9e629263453fda1c943ff4830ba7386b0fdccf6b4ecc340e9923971276722c895940800495950ecf46a674e38549f7c59a53cdfa39a26439b4b2c4df445ba15f08bc11e1effac8748968d06b0600aafc28886d2f4d4c69b9ac9adc44c7d976aaa34d9ff0f8ea5bbd6ac14ed1013480fcb3fed267fc97a97a2abe6f8a449c33b2ce9396127177ce2ad49dbe91cc5dc535bb2c253a699b29621eb0d9d468be068b04c77da12db646678cb245f8062f401896d6a54ced837b6c0bfab529e062129897be9a96a0b39f14a58c8e6490bce2805e1975672b1ceb7100a35bb1172b2ecdadd25d02f164f7268fd937078e0ef1580809c4a60156deeda50a15d612f06620c49b02dbf7f10723205e88f5bc675c097846725730176ea36808daa034f9c86ecd029d1ba01380c1e34cb04be4d65f88566ab286a0189f7b4d0892380cdc10f84384eb55371e844129b87ff3262440f928ef261a6b34ac8dd54ea18b9d8a51e5f8cd029f3b72b8d0be70bdae54ecf81427b43e8c4d3e7cbd27e18eb85b13cb197259796a6ff511b6e88d08d3c11a47cb553a671c2cffc17fd97f333b47c530e53045d5c123f23232829c9b3a77c669963a13cd89542064a6cb387aee638da58f4bd2314fd13af79cfedab26259efe09c701c9745b6d9df4032c6c8683d582f44fb0dc126c891f2bcfbc188ca0a8b7a2d824f2f692f948a8a9f122dd08361688676dfa1dd63bbcfee9b59ea6c3fc6a02a596381f7ff527352856829f8dd62c244938054ac8ee00498352a2f0e26e1c69d7d698ae1c6fd65294d05b7e00572442251ba48873071ecdd7105d771d79090579b8fc88a6657c2ffeab0ccd59f8db8cf1e1230e14bd2485dbfc78448e548a179d6ed852cdffd442f88476d405fd53dc47383d14281a8265662d4ba644af6817778e4c080816beeb2c2263103c3b8c184f969ba24b326fa1f2b2ee5523087f7899ece92534928d9efc3b28b12ba8a288b3039cf33c54783e15659944165fdc6750a5bd5247d7ba8e8da928abee002a380de61ddf66073bd7eb2113d2c853519ce46cb4d8fcaf3c452c30bf0c09cad2928a426a484d637129c3bed71c6d740f3fcab546c2695a9be68e73623dd7fa202ce5a481f3a7abf9e0db9459d028da160ce0c62069ee01b8cf9840c5e57c767b66b16f7078c0cb14dd1bd794e57a31eae4b683bc53aaa2f97fa683476a2755d873a4b93bb04b12f3f287896ead566a8113492e6e7662a2936af7c96c141800d224b1de5172417812c4678956b39b4553c773a6752a376f36d235eaa1d8cac2a90850baec292723f7e2729895bd33db37001274cf08ed85f61565559d2b6de550fe2e5591d0aec6791815a00da6de264dd9c93c3c8a2092f179af8adee91285bfb9c1c0012af4dc2f1292a6904597ce30b8f7361940cfc3096ea3ebbb81f3bb4b01688d0b0c1e57b094e4f8142216ccbb88dcf1295e9bdda79934cfa221d85cf0a11d45b8fe21edcf074ee139dd635e440531cfb829f4dd30b299bb6705b0c1ffc0a7405c78c1ba630e87848403f531c7db435322e6460fef07c4cf60df8cec9ffd98ee47de7d09d09b8fe73485d547d62bd867fa0782d71efba30995a93426924fc63d943468d1509e1aeee8dd4d372753ace601c66930da9d11603eca5d651f64d80404b5cd691d1401ea942b8416cc4408545c3334003691708cc97b89344309630a11ee328c9ff09b7b5655a0ad6429ebea931658507ba0a48614b40f669cde832975b8169ba152be4dc570eda848b3e0275686f938ce72b6762df3af0593ee7f8386a1e6deed7ccc2d4ac073cb7527d4fe88d24a9fff3e1d51e7994066a77fda1be8f53ce1736211e073544abb5e554c633c631a85e5153c77cb181dd192701d6c209f8d224d3bf4f29ccf331a21037b6a764235b7172d36899678569f7b2732dc9f01ee4d095ac7b23a3f6e9463f25937675a793278486a30eb6888cfcbafda49ffb60ec1ea3875f923e344e87167b8539592737c635def823dba1d82e642972e6c1dd892719b75cf5b468070942bb86bc4c68b61f8f1ac801a089a88e84fe1390bc91ede81a65336e33022b7fe21dbeca4d461a7c046e86e0fcb1fd9db6aa34cbd1387eb63aa90776719efcafc1e59cf603dc583192791bf27392c71c211e006fb3c42b151b7ba157d9b19e361b4ef53ad4c5aedc3ac4c0cf5f5c3620f3e6fe8ff286b209fe91f2bc1a5bbb4886931beaa57130d297c2a0f75b84cf9f67e884f0a9bf22fee410dcdfee5ab7c7a2c60871c3f1f2a23fff9083960017ff21b90f35e5ba3d3095cee8b1c8ecfafea52966f0fd3ed27b47b0353700cb646c9ae1b276dd51b616c9f5e800c17eaf4f090457fc3004cca65361a475f8b83a510dae712444a89a44530c0eaec40a05f9acc48afb6497fcb358b782afd1bb0c762389a099155489c7f00a061f51542620e52038c75fe99635f865982dd75d7f123dcf1ced368cd203e98c8ec2def9c7bdea0f6abe306db2cd74a85551a925602c59ac46581985c83ebafcc5a85437c0acdb1af1a7c5b91833704547c0435eeaaa12206d560c60a31a39114548bff98f18519d8b205041a473aed599b12b3b542a500b2a31107058dd1382067c4e28e5c44fc700e2eac7ddd20c2d3b66582fd171798ba51b45f3045300ce032871c00f37a70059b97ae2c8de04735e5804fca5c915a8e9bb3ac9dcd4df5632c25f053baa9208b7eb2b3965e9a7ac7936dfcf9918fee3c6f78d1064746539fe69e40378c1445b9d7835b88587a9eba96dae7984309f18b11a4b6386165baf8d59cd46c4ca10677b962c499ced6b97a1c790f71f3e37c2b4c9042dc4921060d51d3fc1c8bc0d89f3cb293e84d742f948a709dd91ef420e6dc1358b83b02af211150ec116072af7ff291b857008e37914c0fa606e8dadb9e744e0a635be47789b5c34841ff851359b10f3e07bd7a1918584db30a67623177eb4ed361dd7a9813fd70aa0ea3431e7c664f60e032eeec8476c2c25652044271b4ff9b070dcbfd2cb420daa9892a8ee2fbef64efdf6dce9ac3acd339bd977dc2934279838c5f271227e2ec0099819f323b75859084394e04cebea171b8801b76ea0e3087512490d5972ad4008a4df7267943a934bf034a5c799a5178452c7062102d016df3768a4a9169ec7a0cca9e015640431fbb885aa40c162138e9b5af44114705be32741af8deeabdbf71feac8b1d311c3d6c8fea189ae263b768a361eddd267c54654daec835fe5f1a20d4ff1ccc42cc2bac9759d6bb9f80bbaa0c587f80abb3ef30612a1bd9cf0680918cc4f2505667f321df1bfd8eb2cdde6e0518017ee60b10f34f80843bcb7ed975a0733b369f0582f06179142a5b6cabbbbdc07ed87a04be024bd9afcf84777a63b4e51c294f7f017f5a4573af28f838df85c089a9e5b8ea70deacf8d9115558462844543d967225933a154dbceded2c0ae78e7d6634e623475e18874194dbd6e34a3701656524157fc841dda6a12ee4503732fccc8e943330d9c7c21abfb4c271982252aa3f4358502570023340b9d3dad857c8138c38fa9fda493a5135f1e9707fc6910ee56f9543c9da82a11b87b8f97d8994de9426d8ec344f6f6e6cccd7c8cf837c833104a8207e0a56c2faa308a4401316818efdeffc34be2917a6703ec1451f2d4a3a82e59d5b85cc34da111c222bc8599503cfae5bab7a37267eaefc8aedf1dd4a44a8acd09b58afce44ac092006ea4877c0cb6cf92217c4a297925a1b431a08a8ca42bae527bbe327d5e4ab904436b4ceacb452849f3390ec8983701d323748acb82906962fc592c214c680f796199cb970b953ad7f138b803781e4f5a46693c0f737935627ec944b0af1ee5307b0b5ba2457a7f9a48ce260b34ac4a0240feb8bcf36ed4dc1d2d5017bb2cc36f360275e31b2e38b6eb092140c739f5734261a444fd14a568f99af0050332ff6f5f3f78ac99483784e3d78d33521c73c8e5f3dc3db72bdeb6a6734402d4e01cbaa9debc3ee2c1bb06925a66d54faa22c381f62e8e7470318f51b894da01a44183db3814ba298192c41f896cae0059b37dca303cfd36ec9b993c84142cbab01b5571bd2ad1b42345f02d76d97189740f8298634fb385b069dfc25636a339bfe1c4b88703982e512b149cc05f5f17fa99fcf4108d8c5e26865868013a62af0fb04a9f8cce98bd3770a382a6a71f8a2f221a20a0ec0a89385e836a15a329b7c627ba5bfa9816b85fdf5fafb8e6954f21fc0b3596aa17c9a1f11e3e413526329dd906540c583bbf6cf1e37d9f081735c253f23c2961415034a42ba735c30523a4a1b99e7000a519d51b2eab21aef7b9d67752d23c40bebeb8b2bafb05fceae3cc9da6bf47835a22144203a3eafb03d10004610045256e1917d04d43adda97f096ff483fdb8841861d641da717f8644b62629b48556f6e69601cc060a072f0734de7673cee9f94a847fcb7936d0f6deb79de7de2d6d407f48e8a6f1f5bfd8c55fbeaa41d5e05179ffdf73ff9dbaff348effec9e79e8f7671e6a363a743c8b7dfcd894dfa4f9c423adf9442ddcbbf67e8f7b18ad30583c8b8cc1a65a1c618c1ff514ebe4e8e4fc8e1c1d1d1d1d14638c31d631678ea923c7df508ab30ce5661f953d7c1929f1d5f5505907c477669f6e782509cc46edfb0ea4841281d164df779747f11d255708e9897ddfa5f80e1cc2cfcfcfcf0d2c78458c17fb4ad6fd6cda97af3e9b2c5eb8d1fd8b4929b4f815be8afb7ea60da1d8d378a761088d57fd89c63fd48ef8a01e48dc180826818e9f3d26819e6fb3ceba771fa740d35ceddec629d09f8e5da2175fa1fe7efce2abdff723185f95fe7e0ce32b197f3f8ef19d67dd7725be03597702321eb5698fce07e781c43d022db56c09838df3f4518fdfd29c73ce39e7753ea593a3b323e7eddec1032787ea501daa93d31dc136ceefe82a20374e373dc541ceb1b877fde5de7d1b61442d8863c1249030b92353809e454224e171ccd9531a49e0202b7270671c64410cbcecc91d8931e3e217f7ee532e8271ef3e095c0c2353f72317bdb877df6ef3ede7781d5ff378ea9833c7d4316f72bcdd37237443ec46e5787fe9f8fb9e05773a74cceecbd11dc136ea6f4eeeddbfe92a20374aeeb82053f72f8eeeb35df769aefb4edf7d6fd37dde8dee53d9e83e9efb55f3a97919997741ee684fc9fc95f91932328fbbefa4da321fbbef653eeb3e4fc665de761f4f0d07dd93791437dd93f91a9c754fe66970d93d99ef91272e6e19cef433b8cfde1781a361d2705fbe3fc37d7acbe090c86d5f8633fdc64dee33753efcbeca57f4ef4357412c577bb84b1f37d6e4478d05f9d94797afb20e89dcdadf77a1a4b95c0b2257d9df7bb3c7597ea8e19c71a0c407b67dc7f6ddda93afe4dfb7813fac6c79cec309ae250e95bd7e1b582d985e7749b637fd8d2d22c52c86ac7a230bd76cfefa58f7d1c7d9e3eec345b815344e881168b47126e43e96547373ba207f76a816f49bdea4df06568f5f0cc33016f0df2e43e23b3f9619a79d20fdde1e4de3e6c62ea63fe332966559a6b1801ffb8ccb1dc661dd3759c00fddcbac06e47eb600f9baeb913917c3b04bb19fd8bdf73ebed8c522162fc69edc99ac6d8345fb7fa78cbd0bfeb2af7bd91777dec5bdab857b4759b4bcf6cdac102d3173b248e6b41a56f1a17df1671cce1e66df696719861f839e715fc658e752dc93d808ecef67c3c6f9b1cdb22c8bd1de87b6c7ef95a4a08dfdb5cf822c56b6f6264e7e912ac47236b4686bbb22eed505cc872ca82d40bf942fefe38cfbe6c6fe06c9baeffe0d2df49759ae08b782902f51a16388c0fddf707f704b11af7ec6c1edd9fb67ee04f7fc71fecbe5fbd6667fa5c682f6f65d6341fb7cdf5ecd35adeba9ff41728fc4b9c441d6dc1807778ee65c0e7772af66eed35e7318d85e3ece1cb68f399bfdd53e7bcc4d8d85fcf7a9c6427e7b39140d347eb869fe8cfb92ec4f7b24bef34395c679eee18c6a3ef831e6f0b542e0be1d12dfd9631a91986173db7451a4ae20c4dab4a085ede573400b59c157b9fbecdfaf5f647ee94d1daa85ed4d6fea92987eebac97e06f038b839a4fceb2377199a943b5607afd3a3365dc7d130731be5fe220cb94c58dbb2f6e191cccce2c0759a5ef710c1ed5084527b4e4204b4d9a81929a83510f5e392055c1b02b48ad6d37bc82045497e00b2184b04e283f42588d66ad3c527250a73ea5d7be8410c618e1a79a50d60ae1b5457018aa19e30775788050077b40c3ff6ef6d74c085d7631d0eecb5b674ba9559540c7570da1e9139f10ca19213dc19452ea24747ca7134628dfb7b41fc8363659f7fcb5bc50475ba8937d2763b9dc47e826b48e3d5e4a0879b8ce6b799252e6585fc11d52e25408a1acd22455c562104259a58957c5da2a4d46a822e5cc6e9ea82a747c2aa5941a45458e1b0827a538f41863407823a91ea39372564939297ddb6cd3bd97522761a39bb801a10c191b33326a6650dbcf4f0dbdfdd09871da9f945242086bd0100185c7a8a1f9c0873452ce684f76a0e3beb1030d77ecf1ae898e3fa5ec7890b174484a6973637b1b1da1ce34759c94720a9584a4a4f25d1b7ec703754989230b512a250ec2d995568f41e9fc4f4a295b1b3ead3b60c6021fe734a594920afdc4104208e79c73e664dd044fbe41c7afbffdb87c611e3ade8347545dc0487ed78412f94028a1ca042ce09c780c2d5d4a393b23325e7915d4a9f731fb18a5d77a7fd25560292184fa642ba512fb1eaf34bb15cbee4bfd3005bf76471842c8d90da1ed3e7f775d4f1ef59c9366d7ed9432039ec516af2da4c82b5b40d970c72c682045842fdb2d0d0e87c8a2f1270e87c83a3da622763122a1fb6fb6d6ce103f6e7ff96560d7a8b1c54f9acfa49452ea011e14e1023164e08412312c2aafd8548b4d29a594d292e6438f4c805fce06a874d9f3ad0f7bbe5692b4e79f3890c49eff1dd8b308871ce068c97bdec0c59e55ec59a401a23d37a0813d4f0e6002840c905c5c5a37482b7a002263cda77e79d39fa941daf4e90d526cfafaf4f3f47afe69fecfb8823d99ec39e79c130651004d362dfab1b271bac881b7e7633856cc31aaec1e7b5a0a1cf10225464052b8baa8020a5136e18f2124418730844da9d6aa3927ec81104ecc608a1320e48035a9d89387277b6e7bce39e714c38b4da5a8026fb1bf9a3153e88c19b3e79fc4c8e1a7e068699310b4709281789578d0c2d35ac1a2692188e143e672e51e9edc1fb0102efb812a991322c05c46370c2e7ea840fcd830907ca043d80e4da607c2d40f304940942d53784800105f4ec02401415c19738549027e70c9d4a9073327d8c04d074070c4848e29acb8a20ba3656c78c50a1c8ca0038ddaf08a15629e40e9e28a12cc6057ae7805e1ede1cd37bfecfa78e3e6c632bf6d8f711f068236f632dc37f7f6d8f3e6831ad2384f388fffacce7f3ac777fc6771fed33bc5b333d5cd7f5e0e1dd9089997c95666831f7358ca2f3255bfc6faeaf49586564343692d99aadf6997f42ed95d7ae83b9348a6ea974edb64b2dbf4d0eb9b7e16a13f97b2b7d7be3d8feeb350f6f63adda73dcade3ea77ae1a9edbdeced77749f05b3b7c7f12f63f6f6a9ee3bd5972db913a5786a7b23f6f65ef7d925f6f623749fb6b2b7d7d17d272c7bfb1cddf7dbdf749f77c5de1e47f7a9b4d8db77ddc7535f1ac99da8c453db07ed0dcadea2eced6dbaef5421d0923b2a786afb317bfb1bdd7702b3b7b7d17ddacbdebe467ed91ed57d76fb1adda77d7b1af54f1c746fbb9946dbd7ed6774df69db9ea6abdbcf74df697b19dda7b79799d184fe2c2a07487f7657b9e19e4181fe8cf8981be7524cf6cbc93506ed6ac4ae5e760dda15ccf6998a18899c73ce39e75c0393496f5a6793496f5ae7ec9ac964d24c264d3399b4f61b06b466d24c269366326926376593e7ecbee59c73ce5ad6b4d63967ad75ce5ad668d65a6b9d73cea66cca39775adc9e73d65a73db6f5a670e6ecd4116d51c161ad6344d7b9c69f526bbf7c31ace6ae5a9d5860b1d897c55ab8d96cefee2cff0fdec7259f6a57bef8da5acd4c1ecdacf4aefffd9b071f2e3d0501685e290943824f3b24349ed6d605dee9b44f0671d3465ed332e0e452951c8bd7a1487844a48b0f41a6670af9a5e86436d1d646113d72304bb0f7d65fafb996b2cf8975e6a2cf863d997b26b7a24bedd3b213deedd219fdb75487c886afb0ff92a4ae9913b93257f76f625eebbf97d6b8a9c6c109af9a25f39032d7bb4b3ffe6be1820ca1ed343dc687ba9fb90ecd267dca79afb6646f22e7547b0fdc58d3b1954dbf55f4ed34f33de57771ede389957c91d99afcf234fd5f3fe2bf4aa699d2e71a71ee852ad5fea4e2822b4fdacb1ed91a9faf8e885cfd64605fa9bfbbee6a034552db52ad323370eb230219ddd52fd9b0080a1f17f46543b7becb52f7558c31a2e492c6d0cd9dbfa7267fbfa90de9ff7e7bdb79b9946247bfc978b21eb50f7b3ffe2d61e77a8db01891b3efe4d0c2d2477344cddafa6126744b5b5eecbbe02ba12edfa35c30fb50c7348dc66d03eccafd98031c6da67af7132a8760cd867f7628c71e9fddea37d1f96bcd3b823b0c8c65fe26450edafc88e417bdc719fca5aad4fa7df9fb733031214115a0bd58f42a5afdeffe9a435e5a0f6d86b4246545bfb1e5f80fced8ba8be6c44b571929dbdf6fd8d9379992ec985a2035b10b1926c9f4f805e3230630551bec428fb666376f6706f1c64e58d83aca8b110b9237267aa7dbbafc836a2cabef268c485b9f3de1e8f39fe843f4a2f3d9b263c279e14cfd71ecb587aed6fbe13cf89a77c3aa79c99d37b827bf76d8ef46538b86d9cf91863e4296d407f3546897f3f42c9321e3a7e5c29dd5ea642231919dc6737ee5a34ccd97d325c2d611e95f7fdc60ffdb4f16bdfe191a9fbf8317e8cbb4bffdebf9b08dda769baef34d37d2f834786677f3cfbbead9dcce3cf7289a31b6a406c373dc73d3ff8da7772a6d71a9ed1353739fbde9f164bcd472b3dd4b412d630fe69dd0b9275f1c8448322225cbb66c3a2a131f46967b9f8f06dd0f00546afedffd92371578076f39b5f1f42ace649dcb0880825b60d2188d0be4211890176473024db8b8828c26eff192bdbdfce9753e023183e8279d9bec5741f47c7254d3e90b84bf725869acf362796b13232afdf723240a31d83cc6bfc1967041a590befcdb2b7dc872dfc1eb7dc6b3e310c11185eeceb40fb3efcbcb5efc3cfa3ec1b66df879f2bd9b368e8677fb14b1629fbc2a229506e1cb3af6bd957aba951f33d8ec5bcc2006d39dd48a37d1fead0c1b21c6324a6358de2564d81e97cb520fa65fec4c1ade2a217eedd2f5ea6e8fb70c32b4210da0eaf08c1b57722ebc22b3100e3599e6d55db7adbea1ad4dbb7beaaf1f6b3af02ee398d161a3ecd140d3f428aa5672f475eb8e7d3639723a39adde533d4e0de165357717a805ad4e0ab2f126df7e25e0403b7601b5af49c2d68b13db65a24e27ce3620b7e396ac00b33f8cab6e01e14a237117d2622d2b42eba5a4cb4a2e8cf5d76cf7824b7eeb3fbbeee4a5deebe139eee823a9ea7104ebe985052469446306af52bb224dd827beefaf92ee4abdc7d71bbcb85b848c4c52a5b34177c85bb16acd52d0d88ef38330fcc5414527ab41662a5f9ef51a610eedc05afd80ea9171ae2c65ec6c31584b8e71048cae03c8aa7fc5d447a76b14a24722ff5022db744a2a3cd6f92e4e31c02fdc19710ade2abf8d60ab91419bbc81dd9c5fd055ffe822f7fc1177cf90bbe5ede492fdc93f0058d1c4ae9afca791626a216f754c8417fde1385bbbf3cbbe753be56358b6779b927fdb57b84c4e83496688f8ec53de9595e355bcaaf9942b70659662b6ea02583172b49068e909f24034760ced66089d4af118b9c0f9f570cfdde82fe93a399427ff28baf32540b99b65987420064bd4c798f195cf96141160e91952589acaca33142b3bce5b28b55b06abbfc327fe49725f4e7cdd6fc41cc8e9383f61d3b94dd79bbc77a020d6b744f15b74ae59e6f202f7d36ecf8393741d812a7d4a7b1443fa553809e553b94ec6640e229ff4b85feb26311b9938a4a22d0cfcd0d8685be0d88b06899249aa0cb0f2f960d819effc157971e2ac3c030301899814604faabd9943e047cf5c96f40acc13d5a43c47e6a708fd6f0c3f508493979d52431d28fb1723570f1878b594392d2a61f8776620d8c282cf2c08f119b46289bfeac511be2dbca6cb9195fd8e087e51a9148df0270e7776e58c2e364d38fd6063aa69848127f6a708f86d934bbf25afed24359d2b8e89229fa383de80f7681c188afbe0865065f7d3c4e3f0ab18468ce9c4d12849e0f77dc92ea195d232b15070193a01f160d10da1f853d8c55ac6462f4fc8a7fe2ce88a7301757c005d00f2b35864beec02053f4ede9f33616f38e3660a06b90a04d61e0b19ac7cbb376309480d69bf927d096cbc15cb4765f1cdad4c7531a7ca2165067629b02be88125d5c78dca31f454721fa2925b4ff175d41bca20bfe2861d38f51e00fba693cc1a6f1884d85d8f46b6624674e82bff438678f8b8b4566ffeec93fb9274fa69729cb17fa9bd932893ff90188172b0bc1c495dd290afd994c2f5f5d7b4a925f2b61cbaf813fb02d31ec4b9ce572141ddd9b7fda46bcb326233a0322138664d397e192c8781997c28b18fcb06630ecb1e77e1aa1f337c057f163adff59ae2672279a24b0ede37fe478dcc37ee37adcc33e05457fa78d7d8dafb40e45e47e7cedb3c7fea471310a2bc2bc583839e8ef1f8561188e18f682afb4c79e07fe2861637f823e99ba4fdbd77aa40c075993a381568e86c8615f514422ed50447cd3a75d0cf47d4316bcc1ba184c47f40618ded4c7a79ad2f61dd780d10d96edee50cb9433c0485f5ef1f4272e3a6aedab4f0dcd6e7e0d9ca7d4c90915cd4b7f99d239e77cf7283d6dea353841e82f4bed4e66cc4010fac10b9a332e49bcc1135c5eac6c08204cf9a179e90f8e51b2637c81a50272d93052317412f77082d05f54b2e74ce23f754ecde68c835f4801f3858c415ef62c61f19d080616b9a2749132b427d19e56f6a41e95f8eaab81c1575f5462c457128b3db51ea83327a5a2673e00431709c095d421091018edf9304c23f412a0a7d0facbd4a45c04f21413d66a4de7cf39ffc3b37633b8373d2ef457f385fbd588982085095eac1b24d2192e340525d6195b5d04726fa68cf457b3e78c46a630b01f813fa4ce1c8963eceb4408fd651930bcf9a24449e9c20bbe028a507c2742694120ca7623305bc92cfa414ad10f52c228b1ad2a867018611129837d6fe071d19fea42db00f7fc5fe85c70cf534cc82b72731ad0e7febe98ed8b6dc9b9d3224e9ea752f1f0c018e08e11e8f870e6cc39e5ad3ea984734a5ae39ea45ea5943243acd259ea62642b96e13ce79c73ce1df8b0a58efb2ac7389b2e60cb0e7a5407033a076cf971625d843a5e6bad310729c3f4e6ffd249274fcd296b72466b1faa2154db3a3622ba55713c50c2137222ae296c2977ba2939e851fab24aec8bc8d3e9014f24e28a711bdec7b6fc16640efc5137c4f4e6ff6a43e6a65f13e7f44aaf76ca9a9cd15a73195bf022561b32b7853faecd63acaf2016dddd5dcaee9b734ecca9d329a95777c7b42173bae71617e1e898cb59ffffffe9fc6a7d55318959b737daec7fbeafa0fdd78cf6a3fd2ca7f9f1348b7cb0028d76d022d381266e8a3ac045910f25d8f36dbc6042f952c384cb961e7e28eae10928ae3d1f35e78458c82a5aaf39e79c35349f49e349159bb2c0524a29a57409189b524a29a533341f3a7f4c1c4eae3c71edf9faf473ce39af08eab2e7fb9873ce49a3f9cc160c367512824d7f268b0d1634e061a2832c7828e2e1064daab47a90b103a8065c7cec790209fb83589668d161891d9cecf025e8057bbe8ac757b028a8067b1631a9b227ccc20487d2b6448811b40fb8cce460250a201cf62c02aac19e6f0a3182a1602818303f6832864e27c0d08904a5130c9d4800d1e408309040028938f47148074f3ce1f5884975a0f309a44975a093ce8a3469d581054b66d24c4a92326926cda4a420a8a080028a4985d6a04aa148a235a8d24a6712ad33a8053b50248a8414231245a2484827b993318c3d722be627315b02099f1004adb4d24a2ba543d02692549fa3e1ac65fc0015b723e949d293a427494f628462072ba66841a5934e24a49905cda222515a5b406b16262862082a545a62c4505a9368a5b2821534f124a805954291446b50a55024d11a3467a5930aad41954291446b50a595ce245a67500b76a04814092946248a44919080d0128356289268a542694da295ca10ad24c450a14245065b2bba9c73524a6badd8635a9079339cb592496f32326668449871a251239f722bff0077ead194ed390432da019c158798a8c9379af000ba91a3fddda296391ce3abb81d5c87d3e148e1b8f16e72a4600422a0193974e8f822945ceda97ef993c7b3e5d0cf8c7a646d3d3a1af244d080643b0e69d19147c8b935c28d979a82438805a98cca692b768db887634c42e2de0cd8c5c2d2485243181c9c1d9cd0c9068b1d29d0f789727ebb433648c09ddcb2d95f1c8a2948edec724f13a1c3a3c90d20a01b7a043c7ad8e8a1aa51a14800400d7dca9ce6847be18636c5052b77305744480002e0e364a3f9c8125622ac7668f26b874700299041945b32959920c2f6d6f520801f536484720beae820840300013861009b8f120680825ead341fec775428a85230c5b8aad895518ffc62f5063c3dad25a520b8135d50b6d7231a814c8838c41e1e5d310e451c504041f3998f8216646ef959e756c59bc625b6ff975b44461c45132211b0471150a7de200e753aa4d033250b096516f46c9ac3fee210de3f48fcc0259b757da8260a281040a5825521cb19ad6bb60f100b6405868b443c34273a1a90b9f78e2e747cac82cf901c54538f8cc8addc7aa21e6d7f5d8304c53d576e0509a2f9cc9fab0991a2119168e888204232843f5405c0af7d7665212f0e01b9a147a0e37f712812c9e824b7e44e1c6a0d0df1d080f4d89108098d75f0900278018844222b6408911882298f45c09ddc6a29b1bd75446bfbe3155424a84adbebba0962c000030c1d281125a24450c48811b3430880e40efd583f3e75490a1f3b69efaf0db6ff47c2764a34bb7bb484282392ee52e09fae282afa93134c29cd72a9c8f4aea3d1863d4cccc4399fa111a18a137bc259f6492bced55007bea4915146d16fb094ff4d5ab96ffe279fd23d9dfea436f276c3373fce3973bd6193e5fc3c67c60588b71d33919c57995d8723e3c071934ae1c07c0507276b3d68275d4bbb4ec7e1b8c93c72dce810f2bc11525a95b3630a69123266a2bbd676c30d3730b1ee23534a573b797a76ef933f4bf0b11280e603797ec0592995524a49a99454d2ca7dff83ce3921d498893e217fd9f086ac848ebfdd308001a080420a73ce14a49c29ec78520552174f243181a482b17bfb53bc2a6a00db39a747a18af14f609c7af4e8017f405534c1a454cc14e344b461f4494ed161e25f4142421a02690824a4a4a4a43049619292ea95ef2bfc14bb369b50f3b133d7d69c7cf0dc3c18cde57832079f736639bd08dc49fcdf77ff8bffd5ff6486737e9cbbb8b32ccbe89e7eb138e7dc74cf2863f42c4a2e1863bb4eb9735e42476acab8e808c4dbfe8ea913eaefd13bc9c4104843204969821851306bc5827a8c312681c481304961928238cad2d343a4a58e0a3d4ee89997d6f3d4a3859019e81d1faad3abe03d2f9d5f4974081cdd055a4ad752bb406b0d7fc0ad030fe7c95478a24b1d68a4b395393cb007fdd3099e921dcf165d827f9c3c3c1b67c31c0f0050ec9ce029ff28348cefa9dd83878707fe807b8a7184081da450410e520061085c4eb4525a4d18e3c78a9790173050018bca2d9b5aa1021af860a30bad673efd3e06c39bcfe6b5bd078e3c7422cc89f047a438358579236cf857c78fe7f1ec1c371987504dc7e53f9d6c367cbc01c9ccd4106106d08f19d92b7bd98c407f343441befa8cfcd028a101f255eca67b10fea0c164c85e3b86f95bc64bcb90bde46730faa3b4c697bd7209f447f3f3d1fc6cf9ae015105000c3de763b2eb26adf27ac5ff68161944d0ded86c74eb31571212ea5c2d1c59e886da1c3aae97dd0b637f343f22f800ee4c30b65bf8039e2c8771f08e9c93b38c537116eb388f1e793a8c6ff3a2d1008d255adbf0dde55184346a88ffec50f4a10df15d529e6ab8f8d08d94bf65ba4be52e95bb54ee52b94be52e9554b9e89429272ea823a754b927a54371281bdd019d7e4363898e0f7dca9aa8024abae7dee7f990f8543efdc8a168173fee9be8797e558d917c61f8dc04e286efe3f240f3a89cc4c833777c11e0a883f60d8b8474b0e3c392acb1a2e50b5366bec7f10b7227b2be5cb1c5048d550d08eeea75ddeb2e8fe255fce5ef595c8bbf5fe13b51892f2ec557b0e80340434bc0698018b1c49795489441e072c1702d7cc13d18b01c41000677657b3f35866e657b65b2307a09f7e267895988300c7a9095b7f316ec1c480920b933e345f852f7599ad7ba4fefad9b41eecce82c4d0753faf117add03069981c12ba923f1f3f37e47f7ea48f9ce9e2123ec34196e66224a2c2876e3ecbb2a3ac79491f7aeff33c08289d7ba8b4cc59a972d2291a11010020008315000020100c09c582c15814e581a4fb14800c7890466c5418cbc3b120896114c418638c21061840084008019a1a1a9200f86c68e5385e06638ec9ddb4f1a812a485b6be04d751345c15d1a18933875f8d1533f68a1be9c622efcad1ddd0f4d1095e85e5b9bfe2e1ccc4998d6e4f35e53a8bcae3f98dec663c3c9a3acd1ba09a344c939c3ed6185577e70aaf83986ead3a4b5653b032655d32ad942d02d283b128c032ef4e731605c9fbd26eee4e739adc8d11cf94a4409f91fe0814d365744d2f7e5adde061f98676e33e225eff397d54fab66628dd99565cc744fab4ea50b28d02cb206ba96953b608480f8c5d60d6bc3bcda11844ee0bb679775ecee6e040ff7bab02902358d0834499f4cd383218ca7fd2f60610e8f32a374ec3dff4896c32b91baf370e6531ed9ae7a4f4c38a1d86eeaaad557d73b536f6b1dee3f2401dbdda5d5f10ff922e02a8440161b66207fa1f86f52dd33b9d8fb52d6f0d3febc9325f7a45ea413ac30d727f3f3876f568a9a71ec2b9ce620f3096d2fd918523969f70b41731a3b30f36cecba9c34967275f4d2be47449f580ee86f463ec127d0173e20ee59d387f6aac6cd219631dbc791f30f6f50cfb1de3caeb4a4f9bd68ccd3b7365eb484c5bab9cd5c6db77a4f0bb72c496a1cf9998f1e09bd0599df47463d55192fa8295212b9269a46411901e8c5d01b639779ab35870de971673779883ffe0feadc8fa35721949e266911dca9d70fe6a5e91b157dc906e167d5718dd86a69bfeae5841c81f318373d00c52212dfffe4e02e618ae682e71af5f7a2fde288fa47306e994b92b53887c2d124568091544638d741a29c1d66a2fde2c115d657de50756171c89d227fed82da1e4de6de87ed066a6c4987bd8a487ab2c20397714d9e27b10724686abdfaf7f647fcec114929f97a44f6e8ce2083db2886ac320a3f46aebe094460ea0b8464211e1621ad1e69d941771571300c58aaf09ac5673d2e4070c5b447b6a6221ec680e17e07df0946c9054c0813a0e5f14cd3bad33624781829ddef214fd50508df7ae37830e916f160926c7661164246709db969ac3a3fa8c6d2a52973e4a18bc756a7af075b9ec5d7c6bd0f8d2b22646ad8baaec3c52211af3bca5770bb7bccde214881b2dbda809337fc66711b4e44eda561c63d5e5c918286aefec776e1914b505e05200421cbcb19c11b404504403316a6861b0e032105e6811d9ee86d6964400a0cdbda1f55c6658d8c34037923b633cf74fdcac82c2e1c50e934d9fb5a4e2e3962bef61d28aed107129404a8c4d2025b3aac8c39e57a80ff07ba2e373e4c191d5083f64815a95b08206dd09fcd0180aa44ec349654eaaff7595339379a66af15cfe44fd04b6433e0a6192fd4d4e9f529dc2d98e812dd00c3bef85e0658e187016d2f4ff7e67b7f543b287f1d90f3b0746a000cc2fe4b4877bee157d2cc8cf6609a2e1b2054d536f969f2bd00bd616de5816177e8aeda02152818b5d807ed3dd1dcf202c02574db91bd4de686a83e2ba4180a4a9baee5d00cf45d39d42c0c602bb70f7c65dc9e97a83f2433869c7316ac10e3086815e749ab73a1f23479849b7e242bff751f846bca18930682daea1fa4a720111eeebe9c7e824f62d9d895d549d7a17f52e6c9c44a8b09857c407de067d6bb53eaa9d4fd0264bd2ce08d12623427d1016aee46d4e0a9f7fca0aa901c4f2a9d37d8580616e30cece68cafee8a17be5d1dd184549bab6f5175612982dd4862e1c74b01fbd75c94def02e658ec13a15e2143c5942722bc0116453b4156965ee5c0192e33e2dd7b2e716cb6cdc579db656a3d2180da47cfa8cd6b44a769784f13b1be81503b22c1c13aa4e6f9a80d65c2a7e67b98efbb4388d9610b2561b432b8493127064a3b101e488c7920a2d8b9fe93d498ced96d95013708c41c8ca704cdcb5f79f8a903381c6992d0024c109ac0eeef61bbc1ff4fa9d2cd3ecb006aef865142dd2827de6ed3562087cec1b28e2bc5102cd49c40d78781d4ef1a093b2708da8173c7214f0078d409ccdacbddd7e0a99d47a98cdf35902544f837242c8d73b8f467c73165d6f76b2ccd23508d3cd27f8e2189329e0d7ee170cec8c436378534f5449660e1a0c84179dedd8b210604ce60928f0e5536c399e54f260fe93bee9eb12d48d4b32673999892b84f47cf87deb682928b9dc0a545a820d49add3d920d240872e6da3554acfd8240b5df0c8319a9bec8ab183e3b86408dea195f71aa3c0624272aa6878afc79bdd0be419bf3a5feab35ff19cde658c9aa1d6456e524a307afd855d373503a5b9481c5c55c38a168ccdb32b5052091b0e386cd9a9ea6d6143d08fe81a462bde1cc07e5a1da4eb8f5c9269296578eb890067423c77a053ab4960d992403996ea21e3a4a96df19592273fcc5491b5a41f340ef1e1606ddcc34adf72c052d277a3e80c056f57340080561830a32a1152d7cfdd16b0adf3640e623ce712d48b3ae2485ae6eb1b1581b18cac73f9c276dd4015eaaf71a58747ea620c888ec4289c33bb2486f64c1d703874124e1a992b7ac0cccb5abf1550938d3873a3976456e177541cf503d5f9eb57432f8a4d14ac6158d26ffc88bb1a2646488139e54f97dec9e2b80570431bbca92bf77c9894ec0a47062fabee6e217f129f47babebd6b3e455ddd6427c107c324856ac476657cf3e6f24725fd46e6d395f403e8966a677c2b89466291736635160efbdb0552c62dec65ad62c9df3b30a3faacf03f21e372530e2bb18c36d7a68b826ff4aec1c5c94cca9c0405fb8a5c74d980fe41157ddec0c3404c919daed926fa441ab7943580fcfde943395bc920ecf4c4683ad188269be07351ab1708869759e727d25df434870f6ddad9c34e1d21352f615fde6733e82b8f18c96555551f7ec2bfe0a55b92caa57d06d78d99cc6b97306b838f750e0cc4ec49cac3546ac9a40c7555e973b179466718248e81643d3ebfcc8f5360737f8c75609090154074b1795a2ad4a961bf9aa57de22cc1c2e3790d58562207689e94e404bb7b918c4940c2cfaa0d703a9ce37432c3f4364cf27242729cb65ef41d712f0bca6bb3c8509b930298ea1a2a280e48d792f063028dae4afc97d3675759cd451a46a0b5adf3b07c6f92d942ddda76fb99ecde9c3564c239c672cb487c5a13d3e6c4a98c5a891a1dc92f667c58819edaeb4d07f1bbfa41997c507470913a579f810387f1f8968c6ba05d4136d4fcc65fa947913bde92128bef3d556af4cc343e39f4fa7ccbb0e8ad528f4e1b0a15fe7a562b27544c5880501ca0398e7b703339d32c5148007e3b5d503f1ca9d7d174c9a13331d92348c6f6c0eec9829b5a617e993b17499b448c4a99b7ddd8f76182623d15a71a603491d392147ecbbd44337ef17e634d0bfcaf68515e7661b5e8831dfaca17811f019bf08976a9404a11db8cc9c5423adec584737e6261fa63d172fdd0e271646317d5de69b06d5282d9d313832a396238c5e9259e7b13a9929cd5457c4d83a31292463ca4ea95459e62dfad3b1079c5fe108540fa91468a73e313349980731c02d198d45841dc42be23b647e189603933b21691657c7dd65c06fe073fa4428789f09a3abd382dc67651090112c61daa9af4f1160d62f1bd44661c8c507e2b6e5fcdc72abc0b9ec7481bf6dc8eccd54800a7096b09b6b6986cd0b7636f2310eb5de7709b125c5066a385831ab496abe1ea97b4c291c590ef4caa8831c1b4fe0c5040610c931aea0ca31d17b11db770a6115dd9b80a7d37d57fbbf41041603bcee01c49720c8c3d56f4890f5510c9d46b6828db490137168ca348cd47424757505d7471b8e0da7de23120ca091af808ceaf9b8520cde2100d9ab28cf6a73c47e381af2d0c039bf9cc3c621c212e8dd81b5b30d0d647939845850c20df85eeddacb289e524418417a8c58f9155c56b47085d12d3defa1d71f3e3c4ef7de33486415d09ef6f4109ae50d7aed3b0652fe63826ddcc78b9af480f5126872c3143d6472e1a0a83ce05aaa7877ecf82e132baf87ce274dd96da8dc9b28a04d2d3595d3a1fde287da8cdf42f50e6d2477d2aff305d0cfcb36af1e602fda1118e2913b0cdc12e2020ff1bbbb25bcb01d801b05b411611244bbb57928cd201f8e78b4dc52fa1440cb0ad6e43d292cc0e306220a0df2566c5ab09dbaf2025d68c684ca4cf8199946f3f945ec907aa5d5b3ce8df18c6f6c8b44ae35bff2bb785f371e9e0a95c6b1c7e0a6c412cab3d0d17d764aadea19b715df9d4d09b8f9c73fcb495c5b338bbfa8d049effdb61f50090c94d5018ad68deadffe411388a0abab41678466aaf79b89f7a81e72d325cb9fccc20a128e432e83e4f74fa583cb8f7dd09ceb2d09fa40f4f7a57bd9d0b25a0f77349e8f966387c53e0f29b79354e2c6f514382815db18e6ed4bf8a3d0d0fad4196d49d906c4e86e6ca98f302a44f43a003ad6dc25e317b76e1de36a1250ac8516ef31150fda77f0d54e02c0393f83384de65b707bef288152bd82d50d57d0055ff5a224b667df50308d157771c449078d1679030f911a241f1d5bf7d5856c018628858537962e441620a592e8abc811b34cd26af87775c739271f4dc1adb581b3e9ebfc539f6748ec08a98e4766ccd40bfc0e44b36d123243845bcfadd702cc93d5f6901583b275c9eb7fcbb7f795a22d2291cd26ed04d29bdf1f45933c70a75e019e6c62368b4cfb7603152863dd57085625471db56209f134835c50cb27b96e0e3449a6e3d61e39bc8dd03764b561661da5ed6bf21433cd0578b92fda0a41cb22e78a42dc0b50fba88311e05e16088f23af64c04822a884481d795d519fc47a5b003ae9a5d926bdea03aa8eb5d378f7ce6f92bd71e1985efde1a5cdf5c2da09a466c2befd28e5447a8f25e59f6406628c787ad95fc01f2c7fb904d1c8d41ae6cf87b9d5759c52913f91acdbcc4997aa29276e013b7f08b91bb7ec451293e5f1ce2e05ee7c1c0f99c45a453854b007bc16543da0106f2c326dcf7e7473562efe16c595277883c675a672bf5d0bb8ed3a7341db245ca9d8300cb1eca94453dba807dfccd114453d0b4533695a20be99d42067f633f6c5300a26ea2f209b5c0c875521150827bd9cb174a3ebd046d436d3e5db859db34f3aa6bc218db8ff5a3964bc47eaec6ddb09fb0a5d1f2b9d812f8967cb39cf4af31b25aacb009b48b17eff38a311a77d7a12689ed0e257150a827ae939ece5fd4c05bbb1102215725989602eafee8158e36939d23b1096cab16495e9fd5442004eeaa4b05487f74c7081cb76643cafe44c3f9a7f52ef679a27f31e03091ef7b4cc10d41682032c09352ad92d7c4a3fa44cccce429666ecc5e9fb98d2d637aac784c6bb85c7866d2983a738006f2d3985604372ef1fc0156182ea6463d796b2c739902d1700213357aad8e88feb3bdbbcdc7e9a877a51eb54876223fdfacc204361995779da056126696199087add46a61a6710af68fa91bd8a2987cabd803720189a6d1eee010e2d830a2244a4d96addb4b3aeea8a0992765ef5b1997cfd03e6b1f51fae907e044f0b041b0070ca65084e349ead110311197fcbf9bc012f305cb8a3f5358917a195befa41fa33d0a0f25b9769c202e96d06fcc6604b9b1b1177fbfb4c1d72dd84dbd6e07ee1eec778eeda1a7e5e9b4b4fc86210d902b65efe73d353930795af9b055cc9ecb8305fdfdc238c882c0b06f10f7cbb32a33189944864e2661e3d6cb7b9a26faae2936ffa4fdc06fdb806711e6c03b37bb816070f919a6f59a9655325b02b088a361879bdf6133994e9cbd687b66418882b7341ad55bb7c7409dd8c1b60ab5b4474c7458874edaaef331bdb10164a7681d625255c3bad345da2e2bf3de71a1009f09ff478bd19775aca8683ca332ee0aeaba98130277541048634a06deb8f55d81c5a545a7b1cd418b030c612451dac9e4c562cb4cebcc26297740f323c1e46896f41e4bcfb5c86e9ab44f80af9bc819d92f6fa8217cd320530d8b09393afbc7af08f81171fc1bddae9b08c8bb0466f43fc77092cfd227b850074623d6b73d72ffecf0dda4f06c3603a79ce77f0294445dafc87a6e4cee2a70cb537e51324c14a45e8f55c93d498d71e383d6021e58e5c117b004417ed986a86a98add042ed9997a684d5a58d86bb287ddafb348bbb70592057bb1e3d7138124e036fa459553a1024645e024a9c4b1a62b6c1101e2fb3cc149bb57f8a0974201e145978d551065313cfc0a41ce388618ff7b1fe8e3fff9764549aa4eea5898446e928fd75cd6051a8e712bff58798dd158cbe20a2cf8256de2669b1e5f8f8c899fd74737c6724690859686ae059f3c3abe210f5e87cb1bc7d911715d4bbd14e4a124547875c4adebb79e42bda075274d5b907dab445123ca381df1e32dc61409233adf97123c2386e055317f0740980b89450ccdcb60dd8d43ca40ebe850d7db8847be6cb9def86619fd731454d597676ce2bb9147ad034c69931716daaf95175a3e688c904dbf11506765079701993bdb917363bde7d422708aaae36089baa01eafbf790e93623cbce95155163c464fbd8a848082db292d0c73836a9a4478b52cc0e37c40fb388464f5e5846ae842dc594989a1b4215c351548347a9f9ba6247dc3e1456f2f95dd674c349357e1f005516242a478d8d094f2c6d5f6e1b57e69353b63f77d8f424193f5a0173e0b136465f29263270106acd22825dfe75c0b7666021ca260ee3eec09aeba6351d3d92b29586c9b55c232469ddd6e94bff492f7ca0957e3306feb7af2895bd71b5eba75e74febadfb4e45dfba4d7a0eae1b5bb7c7272517ddd2b44aee523ff9cd1850e61e247b72774683d73ca0dbd6525737823c3ae5d92ea4ea275d8c81c54fad3cdb3460c60d848b5b23b8b6703e3c1b9db535360b4f9b3c0751c9e56df0df83a9abe82bbfd258ec178240a561c51ae91d762347ea34000624086d52f1274c3e9cb0bd5db75243aff4de9b4b281a7454e87c6af038422410876b9452b0d2295d5dad864c348a34774566d04477c172498a65e14a4ed6500ea285e51acb6822412230d9a8083328b5682c7d18de5fa8aa642a48193b3d9679f603381114ec3281d277b4d925bb86fdc801dffd39b6e5d51dfc9ca5f9b35620b708f7b975152ae3c7bcf31b7a71e227ad888b77232a41dba1fdf385c8a7fb96d9228dad164ddea30818d2e1a2c0699d61e4cfc248a551e33732c3f4a9eb61161d416bea5ff24291a071030b813ef6497893f6dd4044fb299836e2b7b8a455f545cca06da4464602a93bc2b706085eafec147222d3d9be4c607a11cf0c347b56ffece5fec4645111d1f417458f6614e8ae39a83525405d010deae0f58d75683fef90998772935556daa3313a9d6df06e566a08c844ca6ae2b96e5f20a87523a04c27f626e45ff771d1a7925dabda2b5460519587d1dc128aae478531f69f803e3e333b4784cee46c545250fc9288b7042e97e9da0d873db44199595bc1b726bfef1e6086d0edaea49a5f2fab0a79d63bcb1500b0fe8ed902f89fafe8fda1e0b7df5690b4896ce264463e6141c17a388264a4e7bf62e6962adb713265e09c928bfef4cf84be98e9d532af22cc1171d6af37e79a45873a4221eafd7a3f593e228c6ad3bea349016d5285388c5d2cf6674e039698433ee81f9c2685a8d83e88cf4f89415a6ce2777db881de02a05fa85b2095ff706428743087172c25c2f81b7003c91288f40a72fca9cdc88e244e98172599333fa209373953a53b902f18311c7076f0acebd689f0a39c16fda6af2ebd60e0306d51785fbda1ca8e24d57081ae15aa1c4cef6578ddd91ca16df58f5575ace30e755e812676ec8ef0ef20c23df0941cb78b946b92b28f06eee32056672ba6a0b7948dcf62e9a325900a78aea754c90916a85a2cc4f815b7b11730b05d6a01e9a6377bc186699d2578b74c1dde76d5ac07737f12d1d648b731fb47b25dacd8264c9ee000732a304e9bcdde61bce87a10ae4cfe17ddc50e38c3b1be99ff9a2ede5b4e2d4c790fe5488c13785ca69556b2766923e46e386845e41a8ab49b5888947611ae2627b05c9ce17de24d25aa4b53875a3006aa10b608d71f0b16b55e64211ab334073abe13730913a123372b62977acb0b975ce0c528f9a6633d337b5b5d4ac4b541733e233ac78c3782a01ab6faf792f43393cad395b44e19528c9f1f3d3ade417a896f4f5c20635221609d8974b8182a5609b549b0ed7fff24a6e7ed1ef2261de8b2b860c3b65a14aa91c0103752b93e49b4d96f22ea305f269da6d2302cc8b5baa80232cc756b8850d75b376a5dabb8bc985eade185c18c2feddf9e28666f3c67b7d703006d6a3d005a83d08a858f23225405931005428c06d0f3bc49851a1a4f9595a852a17f96669775849eb16216da78ee2a0f68af0d3e5c65a03df00cf9021133a35004939dbd1e338cdc548a7316249f9af4a6582f00d21ebb3f341a6e277147789653fc6e156e0e6d843eac46996dfb6045b6c5e21f4dc84b4c6f6a74db971056df59d5db802401e7f5c0b5b468465f18f4dd83333b4edb8f533beff6a5fb86d10e94373b7153bf89e136690d72e85be711992bd8934a57e627fc5b493c002a6383b6e86695a76fd4f9d729497f6021eebd4709e3ac3dc952ec4e60b5babec0f7ddc0f09a27785533b0b00f2cccfeb553f886537d46e7e71f649779c549d5c8a029b559a4879b89f4221e39bdc5dc6362a8e174d39f4520275d32fbfc29ba27801342c251381eb62c68b0416bff71f611984a2f0953eaa7a510f4ee405fcf9cb561a542efc9c08fb2589a19d279f81d17579ea55828ddf4bf63df77df21d22c0435d9f6b43c0ff4eb42241cd45c6be1870934ead1b4e08160b05b6bd3baa2c5a6f4c78b20f24b48c0254b74c146d6bf1dd3eb0cb8325f5204fe12963dc7822474be5a4d4d80fd7b300090cc038a5d0f3801f9b5b29e6def0349abf9696857e7ead5e465115754a9ae123b0d0d6e82a64fbdc94de95b23989a322c2b3b5614f965147b5943abb2fcb60030c3ceaa54d3378ff5ea113091f42cadbd066bcce4107de04fd34d0cdac337d80726d89018bbc26fe7276e8740da85eba4e6da8e95adaabe6efb613b36d8661ecae7085234041aee464bd9a1e3851c82301a23b314fb38992375553a89097142cf29fa329ba3bc7fab6caebba205f5ce79f13e7088fdeca0d674342d96d2a5066b143b17195c7c5588d0de4194401d586e3a95bdac0ce53340da929f7f1120f127a50777f547a8ed9f152d74e798163188375707ccb244210d87b500154e5de87a327a26c851309720904d078e7421dd35980b20242c16b68fa90dcd11556eb360a78ba1712257032d2f38d30d5e27d53f919898f450c59cb89b49793331e681b15c3d103e6dde5e176a4e591aedbd3cf4cc2f7e08b49d3ef1dbbac7a9006e819d1fc073df591e828943d640e8be6cdc8b4536cbabc98748c44e8426196c0fc731623cca7d2817e11c8fd1ba4e6f3ea8200db121f0c0b90b158f17bcf1b7cc0b51639039eec2e434b63a9d406015b20ce21a924069e88638f97a08599cf19fe429c4b4383798750a39050ad9c5f9f6d80f1f2f5d9c2a8c7a9b4e9ba1f65ecaa08161834b715dfb23f95f82f2960d6826ecfca027a8d4d4b3d35f286a1d47a03a4ac19ee43f00abbff004f16e6b792d08a6802850c9fc963f20644a0eae703f9e7e9415b33f2e5ce630c2d5d526abd5be46f741a5d7d9acd995fbf8b103305f0eb6fedbaacee0b49ae93b4fa4ddca9bda7f737e6c972b9e1acbb1f9fa09ad59dc337e0b50b1106c3b8ced47741046709264eca6cb28836a7aa217218235c4500b0d222626c2cf86b99c323616763442ba6b86c01eed05081d288360380061b8edadc1f3a5bae03c687078b0b02058e3f1bc95aa21b69e900f1c5eda112729283cfaa5ba79173fd48e989fd2b4ba5d63c3632d5a6254b0d87bfd2e8daac8031e7bde916fde7e930671c83869b15484b3f5dafdd32a65c7443a35b507285f4d38353441d8668645f142f83b268d7ffc72b327e62b4827aae5342a1cd78aa13bf6473606d9e0286a577a06758edaba04895eeee8fe4361b312bc818649ee22739df49166ba9284a249b8d8a87f84e2cf7d5cb1cfea847fae6f0f5ea2bc0746b8b9607e7bcf1efaddc76bb23347ca73d071e269a321769356ef6cac37941dc4b90234b0bdaae005139c1f788defb5139b81c864a943d68fef08ca684007a09d94af3dda06acd247bd2df3b8660e363d259323aa20cc8f36ddf5f2d406ad3927b0798b1723d74ed2e173e39e5a8424aac1dff889d7fa382f4f732c30e91b4061d4c632cbd456459d5d3153eb8db4458964af2b9daf8a53ee54c656d6a5ca69c429d53f218e443987569cf1f07f756d58cfbc3a1f215ae970dd38f9826eab7957ea9e1957c37b4f4a2d3d4f1a852a6e6fce305bca91740f5c20656bbb06008c79b8e6009e53903dae4f6eae0f03c68ee21bba30928c960eae25a4045387e61c141f1c4364ed804144235efa8465a4399a05756d4bde9d49d97a1425fc8140aafdcd1f725c69124c2afe075e482a1a49f7b9f2d967d295ab5cc97cb14bd3ade42e85499ea086cc329b621b348a18922d91763362ffaec7b9833ca004a20018e818d81fb1ab848aea614c4922df004d3c5e7e83c0a18ca00acead74b1042e3ecc446db7dd14df63f02601156485413551f59a00e736e7ba9f24833c1b8d3deb77e8662af70a9415c55a088fdbed0e139cb511f048e0fd0d7060f902b3ee0d21188723f4987dcc1b06bc2c216473ec00b27cb1b6642c94569d09de96f182bb50b58a2392b8b9bcd56fe70d960dbfe8ede943c5265e8ec9cc8918413a23ce8cb43b900ee625522ee3a2b6284a00fb5ec612742f442c3bee304d948dee6891319d93a98773dc263fa38af5e1eee2677c7e844d5b844df61ac97b2e1091fdc75548329ec1e3e7973d4b40e19628314af38083c9cd80683863f0012218f47b7ff2b37fd1fd59eaabe61d94e6d398a07d9b67b49a102066f0bd81382ffe7f9fa541e703a9ad0bc796499e111608e3d56cdec2a014f185f8bbab7987c10a477ae988886b4d2e1bb7f62d3bfc8765f8cdbc3444d5b4b73ed7a104ae8dbc259b7341014b7a709c7c50bf4fc42242f317347fe6f1c1178b0f5e826323e0a31644e4e00b30e5a0b1115c5c6fed3fd0e75bd9856b7d34ae519f220ae94920cb4c183752a47245a581db9814853b97338b1a4039bd3312f0ab60a2bf868f249cf69393783a16c4cc1a220434880dec98a041191bd36e637097ad32850b71d70271b291e368734040d209350dee799a095476aa9d77567545c13e90c7d3fe843593c68f3a6d6b2f01087d8420dea2d030f8a5273322f2b5e90281f3a5409d8b7bc5de9bf0121d5422e9b571104559bde51eccbe03b266f935582f4c0501080cf08aa240b666c674af11b3b64c9688ae71a3bc0d7b7781723074a1614b8dc209e16d5ed31eefa27e9cfd6385505d9ab6e7ce48ef0cba9b2dd8fa80b46c35386f1bd0dad92cd0b064b7fa5b42f2c0aaa4689e80baa6c6ad6ffd3868f10d5cc46712986680b59f5e73da11987cb0428a9bf826745207b82ac8c1e95c909dd716a26bc5997e99ef0855b3623b894f7f80f017c1d91f40483b4ceb378d18c5ba01ea780dbe8fb26eaefed5579711538503d796923dd7d8237b3ec0e75e6ef857ec52558426a65c7b87154500d8666d9bcc64f2f5985b9e5e094de10b4949f0afa96502586d68f60ee140398b5707de0ee3685ad2d39eb18e3ebb743884b5493618419d38518c08921f350affba38fc5699427cc6eadac9ba98514c07dfbc58574d6bdece17d442422e24f1e4d774ef009ac24988403eb79f24dd8c996f1f0f384d84932df40dee331a7b4f031887d4d973eb1d525a7a6658b9b5842067cb77b8c82e502d3084253e556cee2e46ba9168a5a4ca4b3a6cc74f489d51c38bf41d9a8cf68f7babe09c1ae84698922001c2204b94bfa8cd9054fa046710af12c176a3c138454f94664a6c645e256459ac4c54687d6623f61841869631326a63ea6ce89333d312cd13168d5a80ce7ca00838829d391d5448a48b16205c8526c811b0bbdef959c602a3701108e6bf78e5fdf68514be5c38353f6ad543347d3f342f0cfc05785fd0b40f4c6b57750debfbf111522b5bd9484b3416ce9e4c45c794535c306d084b2367c15bc0ddba69ec3fb35c88e12c1a14ace2b4e926eab35f387f59dd410b51cfc50b74d0cc2e75624d9427e96fbe76954deeeff560fdaacb62cfc4ccf9fc39b6172360ba7f1906a0bba6e4eec9e12e0b99b2b38221d4fba6030c3257ecb685f83e483fa51cdd3bdb593e00e26286c0ceb6fa2d156031a2f8dc7d06de2cab5825ec2b17d586ec983378d317a5d34dcf1abab4ec330db01766ed09dc4c69a0878a44c6d7f2e914881593a438a4ae3f031e29d0ebf8e87491112fde019e9a4c9900597d7adc25451be8ae392c183e8cfb2cb2af2b1593a216a7f3fa4cf6f199d06829b2e39c2b44c9f4819f86b6a5b225820623c0e4b66e295f146b0d46bd83554ccf2651ce08ec2719cde970cc53a5513b12ba1b80833698a0ca2dfc94fa90e4244d3438acc8e95e637c8d7008a6142e24af6f1356511338e9ebc444aa1b282fc0ca166dc270b4d212bb3fb5febe2ae85bd6815610c65ebda673289ca51c30bed8cef7ff111b3cf9fac8ef7a7e2b9609ea157080d344c465fdb16799fcbe24a3b4445e117ffbd57b1595e916463c0d20c37343500280288c5872377659bb50747cbea24c80ac3ccb0690d0007539878c7c17ea0a508e8288abb91ea0347373e45c2b16c493a178032edf5da08aee759f614262d8150308e5e2ea94ab131ab033e8639dec615b5aeda3fd11841c4f3e598b1c9b3172d06122c8269f884939bb7073075f6f514de620ac7962411aef306cf57fdbe52832ab28fe7f9f6c29c76e140e0d0e29a32e4d939c676981810496b7076669ec785f8ba50bf917c071576955ab0d6818bb72e412a355a5060b7e30eb1b50fd53ba16aa318bfffaa9f1349bcb0375b7c5ec086cd05c381e335b07d1b7f546155aea84e9a1fa2f7fd16ce27d2a0fed5a017baf5be296283c47a1638af6d9ec7e229956f4fcec3c870293d574521c17443a9c7fd2dc3a0d41c4196f6427c50cbfb1ee711b7ec5d6949549be5eba0c5740e8240c132904a94944a08aeb8ed09d063ec406f766c38153fbb88c0c039d34369339b029d50c7aa58b5ace38adecfa82d4b739d3278545d5ea1a4b9247943c5b93d296733360a77711f07481e4af14b7110c6541a92e448e7a1d785cf5b532ec13f9b208abe2960cd61f09d5f29f1cfae8f3fb97af6eb17141dac3e7ab445b4e42f2d85adb6bdc03d4a81faec529756c08f32f815bf7ae151e305a47d2625b64c13a6d6298b20378999c750032b3f0b769f0bd81190af99c75906c2ae98a2d742b680e2d2b8b59d4e18a75cbf1882fe58604ec74506791015490d461c010a3bd43418c1448dd2faae2a4088accdc9c4d282dc9857c83301d49dee461e8af6f2a4a045bbfe380ed2d1ed5fd63bf17dfc3d9b6635faffe6d9eed06b8540be90b4055aed276914f756367fbf567cf559d7113fafd592cb9b60d0084482db6d5909cef83eefccd3a89447cce2da3f180e253606c7c242b3943d66ceb9df95c2d0fc64c21b7aa767002de18b7d84373098eb09da6c7416fdc0ab4d10b82f862b4b65a8db85777d406a8816bb2b264ff04489fec2c24adc3efca6a1312e2e3debfea280180f6ccfbb54d49e207bc41a1e43b065038fd8fa0964e7e451f344bda862972b83657aec0d9bc235b2c846780048edbcd2b0779c6b76980bea4336be97b7d0de1b255d644e2b21dfa7011a3ce3804b639fd76f0b9655dca27fab1ffc6fa38e5bf2f8ed4e842a51ae86d20533a0e2badded15966c2652c31d017d596cf36cc985405c2176d3830d61aba8cd775872da1905ea9bda839a655b48cf6826a9013065ef24544b3182483c465c9a99bd56c1bfe21b3f9d187b9c1ab636193004c0cee8a7e567b575e2640216e39ff416a79d9906d9e4093cda53c49e96ba022ae0f09c00a02df69e0bf03a3a40ec34ceda1f3a2f07eaa16cc61a07ddd0cc7ca0d3d7bc73d8674db307260bade558679b9c5266a3062d08540eb239f90770919ca9e8417bb8c491e8985d20940d9dc8a37a2f3a5a278bc9f1c6d1d73e642155c55bddaadab0899a8750b22763db2a149408fe19279832705bae4404e130280aad749dfe62d17255046822550ffa85104208ca8d448c55393b94ab07f7c9c348dc9c843ee398f5a9aa8ec3850eb9b9febee0490c54c9da9c2e9032b8d128e094efcf9d312eea5069aa3f7e323cdf093ffe06eb32b1a46a62f8b8c9f56400cb370a43ddfd5202f769077f92aa77bcb89556b31f33f0ae6fad501a8ab662024c8d3a3ed3d4b325ee68087a07e7c0af407349315df8342334153850410d9c300a6b0cd79fa83f14c7f690be00be0db48bb1dc1afbf5bbfc920edd70f4fd01069838406206f68cfd04a1a408783c27da505afb58ac32b47ff5ecd832af82243de1e51f69eb3815d05b48c8e170ca8f3a0569124286a12e47f3dfd0e0f0098748f82dd8f31b9c2edbd284e0adcf6ecbe000694049f029575e2d913355e03503fd0d1f0fd1833d119887aaffe7aec4404e994d49c1e7ddbc7487752104ee2a3a4d4fe2646f179c455c280eae119215c865c0bf6941d1132f60812985a30980fc5307e14960c50440f142e8a46a21936e2a6442fc8b98f341523b79e130c07d4266d187084729e563e3ccbdfec9eeacc4939531f8d2ea721411958cd914402611c8107bc84dfb480637a889decd508d4bbf3f0c5494735807d5b7c631f99eefe549e9eac7b02c3db7ac1549d2712e3767e7efda63dcce12f67435c4f26966ab2b9f280a19900d7d128e95664c153638ce503f41cf27307a6658594f470950e7ec14e2787b37b4978c10af856e3c2e709088ba355559b3af2068ed9f1bb3168fd3cff02d7a7bcac37e50c62599557479c81c67e5d04f4882b6c4aeecbc4bfb951d9b316deff5e36182df4ad0f5093b83d045c798e7015e81480660a18cfff49647a8f8123cd9485ee4e2d15d28ac00e39ea82403a526ece5bbfef014934e28c1e9e2c6beaeca3b310d9ee30eb88f740d515ee4dd157d7118bfff03b9fc3c324a10ba7d62acd2e577858fe67d5a22e833b8b0c61e8ec8c3fd6119b8461f51d355fc4bcd02073b72922d0968ba29742c7d4024ee47998ff88316bbf4a5ebe556572481907d9305050d588a0076b8a3c75a308342cfe6f10a14a8e2f7e21f415e8509603e76ed025cd14845cf4b8f2b7da4106b4028c7ecb5a7808be768393ac78fd09b71283ec79e802077269fb5cd5f61e5b473797bc03ba8a974a42d0fea87daea20fd14cbf212ec6652ba32aa597bb28502a55712f91f8cf15217410a1154589909e17a490bc7fb1fba88a11982e2b7ae824461f3e4cc63e79932b00482c636399bf8c5a56859838ae9c95603eb1e0fc1ba41817644b9cc93057329055d8a9d70431ae8cb6bcac7347782395213684131920ea93575a7b101657eb8a4f5d9ee808af33327b33d7178d28ce9c914963f3b180897ed61ca8a8d6ed4bc0faaacdac23e3bc2d522e66007ca7dd5ea7c229a6b5f5297ff093185036f3ab8c505ee8fc33ae493371446e212f1ffc66e5af9ca9f6df5df07bf1b50ef76b911a12aeb1fe85d475756e5af0f7f272ff4c157f5ec2f5770bfc5f44eefde844027f1afc6c185742232a419ee970cf692414fc99998b56e19fddf69c018e39c1841c21a44a04f846bcc70aa536fc1142c8d959bc833728e1aa5125db589c3cf4e3c00fb897a3ba41f7a75f112aac355fa17b3ac63c6aabb40143bf90f2b7e79360f8a099a49e5582b3706d7ec1f0d1b446c0d4e97cf42a6e30e12bcc56f8f7a8752f7971afa52a583b97191f87ed41df442d0e10ca32f87543c6a11995972f145392db2f0ff1261bb6f2d31a8afb1e3d2224aa0bac98727b065a78723f486b8fa5397272671ad0ae18000db3d9b0df340c182a68ee045d16a3aead7169ba081d13243191c5ae05c2ead38fabff399caad24323d855fd4a852dd801637049e9b8b3b74ea71a9b6899b809cb08d49041331b1c22ecaae89268904d0920faec9f7e3d207a8a3bb492057d341410b5425a110930c4caeec587ed0aeaf8a040b9a2737c5048216f770428b8acc633a79822b0ea710fae545cf1a2dc6d52f27e144d4a80baca259372fba533271afa6ebb66f6347e3a82da2d76f459e7230e556774b7042586386826d650791571700c4e5f1f369a4b649ccb92210aec8964800e07ebade40d6033301121cf8102264e16a8de3b5af0f1f5b60b2664220b4b844e9d1dd13c131ee3ebab7ff51a6739036e3c1b02a8f0ee879221e81d7e40c8d338f0765baf920c759bf5465f2292f17e985ead2e21d238a69144abbb9eddcc2277a7757e31c1d93318192cb5d52d995cb19825a4b2db30e164ce074c691ad94f34c66d98d76ded0332c3e0896b74a80df29098c758dc70f32677046a13a52b901d681b12a366c60e7f6486cd8041c8e7f8f402505cabb1aa169d59ff71513e44dec565768ed88fd581afaea07283cec8aad561b09458041c8d18d44f64e660abc1219cfe8b346087b2cce1151c28d0b103eac6b0037a6dd60fac7ddd7b612dd31eb4a70c8d7fc9f643c6cea5041bb2dc7e582754eb6c616f1d9862aac3b8b8fb81fe7ae1b42c0f84a248aab7a63696451b826692fe550a5ce19000405d32201cd318cd609869bbd69a05897e178363c48626b3c66e43c2046581f3905d31b0d450a94206ce18ea3ff218f773670c2bfef66dea755d9c50748b713326455e2b61112d28439ca96f7192526c8a56a06a9620601f7a2140c16f99464f399f3e08282c69efa0dc1f745aada468573e7cd3cf5f0771446a13a497749be92e21fc2170cc8264c748e1bfda1160735a907079c73d4e28087466074879be9e44f991f6f1fad5c774e8a3b6f786008798f938aca763f620bc23f777320d3075ae8f232d028f031065bb217a11a5810296c840fe6644076c1be7968eefe28e7b04d7c888f6ed621fe2babe793f6d09c57eb219df9508b09468f5902bd177366438f9d34359397255d5a03c904e5901c9eb6c5ee4426bb5fc1a94bd8275a8f3be65be2dbe3a87a0cc32cd2e7b5be9187463dba948940ad53fe6d1ece7796cfb9e700fc25a2d37c7c838f9872a2426f7b247be78cbaf25362b4f73864558755d05213ed561c6b2413d041228b42013b001ae160a225a76733cdce37893d3d3d75643f7cfe73a3d97a5374138b134e93910b4ce7d4aaeb5c54fdd84bd41a5b7c0719d125957a69adfc7121972662e61878e664e8263279e9c38e0e0d61650a94eb49cfef157d0796e5edac6c7a0870b3d15be87f3d1a0392a75597a42f7d0889cb39302aee6ed03e6fc13f37ddf4fc8b79fb9a5744b40ac194794f080f44cbeaa2fcfeea11dccef9b8c46db044d696f52d6738354a29ee9e94204cbb1c39883bc6d1a19a9cc42bc3184b0095addb62150d7a4a55f4a4841f7517e0d690f8df28971915df1a1877c33e491a11a3d94534085d3f29aadb677a8da778bde1368193c7dc3b9d9273e866dbfa5ba354a1a795638bf9a30197eeb79c0562dadf42bae0c62116b8e51c4939b714af6dc20965325d3b504b57e9165412ec4e3fe305604d3b71d682668168f955807a01abac58a2ac0a3faa39abf25d074ba813475666e5b80f4cbcbb4833964204ec660763df311ce0ebcfcb4fc0d5c2a5414e26c8231a7e4408ef1207417b16a8802c5b203b9052ee3025e947692e8c45aad7a588042b6a67f08d841b6e150ebfebcca652599d3eedcf5b787289c31c58df6d9954a40887d60b1a2228cdb6f6b3c72554cc15d5b574fb4b17562fa4534ecc8f1f4fe63fe93fc26f1dc62fe0068e087c03264b01f9ea77a38b7fbaab2c8067bf5137dfc10637a9ba43b95c3d302a30ad42799f7e4ad1feee9ee5db39ccd7c2fbed92e99183e0c251d94d42eca8a6e658a44540921a51377744c6839d1edacb11c33f533617d6cf665b621657c90285915225bb27454020797a51fc3faae173e3ce0d6406d3979218b6ba1905957d41a406eeb7245be19c4e9fa128c21671c90e23884cf2554d68432f4651baa253cfb37100799204ce41550496aae4dc91b76ad0002e43f89e2d983619ac22cca54ed368fe433041fa434fc5f903f903ccfe4270d1bb5dcc034250a06756f523cdbdcba3485cb26c0a3aaab6553847d34abb91a1c270ec2fcaad8c7ceded874166533449cd6da754b67df8f555a0fbb1fc4327708ed33264c512d634ba90abea1a9ae4698aa1c8958a81896340a0c64d410da57576e6ba9ac3eecddcd824820f521d1c195510ac2c2b73659055d653145467e018d40c7819bc0aa524fb0308997d89136e204d7b4151d5ff21af74d941af481d2f9e770f6bd854eb23638fc23cc02637016373ac4ea15330e5eeec48fde906bd8e1e3309aeb2965ea9bcaa66368678a0f32254f8fd62c1ce7f86340741b9570f233b6e63d8481408772f009219a9df47a445230899b37a3cd90b456edf0bc942ea684c0341e382efcc8c289f97019102ef5b660e250c5e488d86a3107cf71c6932dfe8b2c59dab0fdc24e15196d9a5f848ed04afc48b5929450a6238ee6e5075722a3fac68f922968647330040373a7729daf3e7e2e3c557d7245752846b70f4ad6474b0a85f24eb49008c42bdc6b66647992f870abc685c82fbc9080236f66e9377a2ac24bc0424e7f1baa89c2caa7308271e5965e7d679bd29594cb731aa5141e5bd287898162d9f7b05bcfc519716e79748a2e1aabf9fbe3648ed701a9c3d7264dc24db74c6ee6b0a71bfdc841d2ea9a1f1c1672374370caba691cf772494b3884a40c78146d5e0bef206b57a9d7fa043b116939e958206b31f9b432c6d63773518b57aab648a6a9a816322ba9b89ce74b7248db6d58c47cd55352f3431b36b61caf84eba7b4d781428cecefb61eb99a96cd1102cb51cddfab989edb7f8f742b8c2b4715d5bd6a0b282553befa527480147866e58916fb31a453ed465ef867da388c9731e987b9b415f564feb4aa3184cc1fdbc3efb6f8bf9333af732ae46c94b6fedb6102ea12b2f89224529bec83d603d8f7f0906b7e94e990f4bfdd307e1d69b3132b711a52e8799ebcbc7259d1e3a89e166111284b118d673077d031f233295c3ea139a03f349b30fac3130e89f5fc3e7716638c2ef8ce78c435b0c61df2a982063ac5f1057af89c84c6277bdca5d4fd889b18ccc2faebd794126e391b32df612d0a718707e4d37bc133e5c0db0c0d8d076507c65b6ac4dcabc31da308b0c0f3d626d000e2e05dc8cd410fccf22a8a160a5079633bd2b3294a23d843c5bfbe430c6f3d76ed516b2b1da4fec0955ec4668f65f42474788e9b39c9b622861937833a53c401bc6b0121bc616da44d71a5dbca7a2769b5fe7b8a21b73f2abc78ae1fbf26bbcf9517c4ba7228e814d26993cbe0a31dce4dddf705a4aa9198edab2c01323e51fe2fcaa3262825a9112d9d0047bf3716993f6c2d6941add859e7eca93de04b55dd83bfb94f0a555e18a15d997e01da0a4ac4ad68bd374b0f9708e3afc2e74eebc3ca51ccb6dc6c693d052a06c32b33d12e1b06c23b4fbd6881b4e87bb7a422c73fe236b40043e782a973af4ccefab1e191bc7c74ebe8045bf72432eabddb237a47cda91eadf535bc0638d3329ebe0e8fe85d18a48173501a93661996488a947da0784ea515cfc8dec5e059d46e5c8fe03a09fbf17edbc723d5c9592bd3b8a70bd0bdb50548bb97058c05c0d70483744bc40c8dc8e069936e7761197a3d32af9e928a6c4f9c06f9914542b2c4bb6aa780fba2536ac237226ab7e6d10aec782535776b5d7a823351e55222cb784c2e068e65fc234366272bd120212f6f6b19bd04976c33af93e364c1115a9c7f1bf4fa8694d107e7d8860af101ade09087e6d70fd8c91adabf94beadae12b6e14c4ce904ab52d54b9ca8a8c6217a146a83ce4078405ae99bb2f1f42eba2a0850b5f71141f54e1439d7ffbe20564027b7bfb389fc1bd900846bd7c18301aa656c53dc2f843d9c74250b4892009914ce758f07f4a4eec0fe2152fc12ac2c0f2dbb0b4cda9aebcdc48282d12c39fc4fa40afd298011b5190d37dc61783b056a3a4bcc14b51b78b88df8f1423b7268ce46a60ce97c08f86e6e79e00dc494d73e14e2073dd11b7f018d48e31cc466536166eeda74a10da3e76fdc0e5fdca28409ead3163c4893c569ae42c2f8ffd288e723bcdb68fd7622e859fa9d2160b442a5aa0e418aa2dd1207a11bebf05b6522a2f7e8e2250411f3f051bd7fb489bfc32c1332570ed123a9d305bfff2feab46ca158cbe39cdfc0a05864320d6fcc3df652e922ae6c4eebc66ab5f5460e5e5caff2619c4e049769f2f9188db4957d2aa2c1155494f84f2a6095fd3c75dbd6df3f5cc454208d573a7d9bd2c3e66f95cd8d4b185c80535bffa1ce4c6420c56329ebd6d342ab540709b7b2809840ae8b0a21b591a8d33e73219a7d8de5c6b35cfe3c71b45ba2e036b192c6bf0d5a32e2f73bd1fb3b89a104a3bd4b87c16a0701ec949f288c71c6f7557642436d9d4d6b139c575473adcdaa82417006eb0e2ae531d3ae6172aa1e3d8195f3b2fe0404e6d53bf2aee328294291438b6a89beb78aae21a02f7e11618e01f02256dfc02d1897ae3e471e7edf4bbca55ab1897b838a956f66a0af33f7695e3f7d674af3dc303d4e3ce69ee30ada8bd91782bb53a51f2cb83f71db2fce358a9c7772634bbe8313c8d4484c6efaa38ce52e37c1eec95b96e4fa374694dd31297511ed6c0eda1aa524c820040519384ab8524464110925b4884a5b8936260e67672d35223908daa2a6f69e0bfc7470b5d7c5a77e2e8733a33128861ab39201a12fbd2d2a1f8eae660e1768afa15e7f0f80d2c5fa707190214d1b5d8be85044297e0cf1e988ae1bc4bd38ed016dbc8c65783cd80a6cb0821d39cb958518747518bc7ae9f57093863fc3f31620c0cb18ff8c1c0437aa3a37d38e71dcf72fc21e4589a89362fbf37216baa50b6414f85773f84d4ed0582c91c3248acb68271390c9add5798cab2d75ad1824a9bb5d6764f4425c19b05156e8e235efd5d27421f4326c67afeb2823db322db67aa6af6e9e1e8bcbf34aa405292462c38edba5db06c67a815d25f1b282c0ac50c39a3fca747f14a487149a442d09ff2ccea17d601f3d858c5f7847226bf428a04faf313a53e1e229f36457b2ab8f89df46514a455536c3e669b0538af5117dde42798c095f97a24992e3e5adc2c738a3c37cb6559de221d728d554d5360ab9b4d892f806f300277476f460b8aef5ea49c97583dd85315c5efb99a3a9f3e094de33c3c50df906818549491367312a39e6404c5f9345991115b592c203956978531e4114546ba59f8c6e610ad2bf6738b88da384f48b0502cf776f5a43f2c68f5d3dc176e2bf35fd95800be9a78113e6cebc8aaed22fb3297ab8335e00581c42e5b79c148248f01f1d7de0fa7950a65efd84be595e45d5d05ad8192deec82cbc54143355dd926a764c88a051c9b8bf6fd9d8b7a73e089f058407678797e7baed7252b0153f6c54e68cd5efa240028ce5d373741e1eb4b82616ca2cd83fa1a82e96d0f92df283fc00dfac65c920709c41825ab2e5ce523999805aadd84c22fc6754fe375058521b1f505575ae0e7a0fd09eaec007a57ed8901a86b6462c545bb388e394725f66f37477ea7dca8ea5e18380cb9049157020934560a3479019cf72571097f78db62b95f0b36a66268600821486c6256840221d86a41c8cca1f39d873b6045efabfaf9c855d4b5516a42e4f056b7373e3bf114658ec6c5bd0c7cbb9de9c333f55164b982b28d4dd02aac79d4978c214a3c02f1a3b6198c1576451e884f132962aada0fd0bca589c01ac33e48293dfdd250fbbfe027172e1e37ef5f0b0c752301f7b93f0503362f59ced774a89f0c7f6f07d640946453b6ecb1903bd8368bcd2ce0efb1c42fd0fde88fde74e3bbc98d93f671471ce3904a1723967745713fc3f241caf4f4be11e235fbeca00ba0a471b79ed511808ec93a7e9cb0e12e0cfa116cc1f79b94501bc6796071932d25207d8553c2189ccf060568b1027cd17bffae69c0d7c3e78c5cc4933291f5c9089f17ad270112d1cb38210a2f0e03e6e6865717a7d32c1e5216e56e59d36b84507cadfb59b2b636a66e8a60ec7777bd427880f27978a7072c17ce71fc40adcc58bf45464e8c1ab7ece23d2e3eab4b40675e40e21db9b9c938bee8ecb88384ff597dceed6d2bef7994dbedadfa510ee5357059a25d1428a374a5505800070c25d03ea52e5f4ab11cb47fdab41a6fd19aa79311f87b7399f1b8a12c8f23b478f10d1b241bba6199d6df4987a63cc417526c7431ead94d1fefe251689945a255c4777cf8327cf54eaf9ea9a548a4b0bc12cb8096934e1e7a8e93080984cda98e9a5b3d5394cffb949f759ce77b36609c75527869ac1a17d8436eb376add19864d95b516a70ea8e6db3dda92268f92e8ed68507f21031c51401c442c9b435f331a3d5f979a4be1679fdca7b25bcc255e372dd2b7ebf7a86eade8ebf3e3691b6bafae6e93fcdbca45130b39f53ec48860641691f6f8e64d379f4d916e99177db259faad1f9e59c5f3ea5f40f150245b279131ba578bdfa9c662a980cf2264ea067eacd707a326c6799ad4f950b6f5637a5061be89238eb2c038c557ab2aba7217c37242be406241498e23460c0295fd52389455d069a82cda660691772181d1675df11479982a46c2d0e52a8c19ad594014a1ff13123c6b5e8942d5bcf083a4013c120da26519478e0ca2354450682afa13d158ba53e0acd420aa41924dd31522e4ba91fe9749498b1245443920e0d0421fc915a485f3d208754890e20cd883d1d8a0e64effbd81430943e27802bf814bf163b82009f55f17ca3388e9c472c952e8c938a5b25f3cd33f6358436e96d189e0a9b1dddb41724988ae8aa9036945f563542962a1d1df644d9af23a825b6563c4209e9ccebaa9090e71260282b50eaf12a3ef050f9c69dbfc89780f3c332fa85c13efbd3fe86feb2a0634b4ab1e6007ee2349f6c2e664ae19fec7bef80697c794c57be83458211cb985e06e9296a06df92ad20d23c6f4199c909c921af40292da228d7f868a739f9aff10d729eed17ea71b6979c7c9259499478cb5310812856ecf82acb4ae82370bd340ea28431f68788b1c36bcec09f660ca8dbf81cc54336f32f23804788b600450dd541d3e43f9c7b3621212fe27d98e2e3e57a762bb618e9e42edb05691c52511a98a0505a770f2733d0a1e0e4dc04e33715a31525fe2c82c147a6c7a377b7f6ce184d33c77dc2461434be97f285a5388196c2829ca3a2c68c6cd0960e520b790f8156c330e87c801e03cc5e4a0d11377dac629ca2a68f74b3dedd8329ec3b280fbb5af65203dfd42d9e5586bbee88ad3223e575b9abbc779832d506dc884ad057150aba42186b7695f97b75b1d057d8d66e5d91d447d57003320a9f2d725880818403913c1a483be0c5134236dd4556c0c3ea72ada6b28da8975bdd9f827ed4796cdb761d5237cdf7875719c1119894e7b3d5658a3a15dfbf11b0d4ef1b9ae9dc30c2b627281a6fa21daeb3ca2f02433720bf77f206f878c8eb3bbd440746dd537d7908896deb85ed0870e0cd801dc4fac0b59d63f8b58795bfd11f0223b19782c02e86613af887f9ac4ba9be754a2a59588bb34e124de6572b55d69d98dcba70a889150e639868fee6d113213c1987f71c0db9c968c4185b824bb969d6267598d0c31cc744faf5faa6d04afad0e538bc200d1a47097b25555e134a4c21bf67cf1ffda1c4582665e1853201cc14293f5b995eff0dda0b67071c82746677c332e63e19c02927b048c6279a93220a0d895537571c3a88625b51f9825f677437d409891ad85e2bbc0140fdce2e4a5ca561658b59bad5f82bd0864e3da621f08d95e2b7b4d017b0be0a9a3c181a1e86332648e7456b0b7508c7c470d51f5c18abc18936d47306a6c66324fe85d736d61c1c8d6ff683893915112f60c658442af76a2ad7a9630609db27f76bebfdfc97505b428e18d560d33f30bd6a82504668ab04025e2332c303ad2de6f3dd291c1a9da694069ca9492f20162e03d47b05ee8e0acc9e0d67befc8da0c4bfd6c429994b06deeeea8204bce3a66dc53e2831420dd6e55d3e9a2e10f765d95688431cee45413b2fa20fa606961b5280b9947cf05901998e9666691dfb213520862ea8d34513f4f7e8b98bfe43f0cd2e8e02131d1f571b375b7dde6c0e9cd89c086b1f211f2a7231ccb02ac7991d839b8f13c56e16aa7419a2dcb6570496c4cee3be78d919d5703a474a68e0af641f2a02b43d569893f94473335e558e4b627ba85b27d8b323fcf114d1c477739390f372d936ffa3e2738f00790d89dc248fa7034b859d8e579b7a03531d8de215265bab86cd1479827d23b8383fe5f3d82ec57ecf6d423a17b6f20fe2a98a2aa71dde7aa46da5af7a2506152647667795335284927d63c75e610ca1b902eb1194d96dff6c7649d156724ef6425ec099f072fb34ee6444326f947a6d78d0e1830c319d2dd64573d8a2a6d76fd089f59f67a54a1c78a652881fd6361909013698105dc0f09030c88f625706f921edd27a0be7a42055ad914badc6d648f7ea4c2094c0a92ce93c8146f5b8ca30f60183f4a2ffd5cdedec86afc8b7d0067b7d4fba3eaf3bafadccfe297a9f53feb9dcb1d8d5d99b55d8f78f45f8caa5475a04407d504b4108e70f75ea39770dbe0c09a9cd8a7ba798987957a6045940bed84cfdfbd7537d8d8732ef19b460e3023457aabaa71553161b9d178c772af01c4982e073099ea25bd5f1a834485de6f906815790008dd09ce4d66a4b8785b816e6292035a70d5bd544d80c8fe3bd38dca75d3106da5ad794215f134c184acf7a33d9cf221c84d886723c7a3291cd303cafea29b5c30145651070a5848ecf0a157df270c75ea7330ff2954342884dd684739b4b8cf70a45e9e605e6c102852206970dcf2aebd9373785ff7799d8bf918ec0091261ba363e0d4ccb985f86f0c7b715c7c30903da180d8bd9bc8bda59449cacb095609c109b55455935812cbfc5de795ec3c873aaad7a6be4bb4d0011a2afa0974c4e4db553f818e8e7034f46fa04b4b3f10144b0bb63867f5483c40c7e0033a50c4d44a1186cca3154106dc8c76056b69c789da12ec623e9736f501f63f9f23c60ea88f45bbe2f8859c13cc6e4802099c5012f403d717ae8825f8dfe7382c69788c0ae9eba8447e95fd24a68280af22e68ce7f87da5d056ea76fc3c9f9f775d764146514e04b06fee82319dc2b8636a5461cb5538fe3a4cf24e00c9d268ba3f1cece73dd8b481554f567ab00cce0060c76bcb6be6f08a4afd502ad9f62893859572a85a316e91b13f4954d145862a86f602b38a51c9906999c1623dbcb098ac4e1f588fde08787c600d843702ea3d2379cf8922eafadc226e923bbb49eecf9d590fe6f1dc2456bc3e60489d4401709ac901a0f6947255eae4aa548e81a67c4aa96c77a794ab522757e114beb2019040efab7dada9731c824db6cf10f1a4b16f61b01df2041468d0a4903992a350da714f28b590f39492422f77cb83c15417069bd1442e73d7f40e01e69dd151c2b9677361956cf0084fdb6b3e249f7b9fc37ae653f80bab2d0c6b3ca3963b86e6672c41e3b9f0849f41cb650c8cbbde7fc532026f458f7c52880bd036a8edd68c59430566002c785478545d01821db071b3a2cacd329e34b3ae7613c7ac3102f5398782f417b4f248a212ea39ae1ec7dc4c84f1e4af1791afb705ba8553c73ae5abf79da144c6b59567e757c4e2fba8089a121434f43328c8161454fb1914f4f3a50d0a52f2a79f41413d4f77be035f01c018b2aaa9c35101c22840133ca43de41924852848cad0cf2029b627fd0c92e2e4679094257f7f064951f2a59f4152644fa73839f0e1f9d19b902bc755c31cd7577f80c3cdf5592d74845cdff5c1c7f57140408191ebeb6890838febc3600da9124840e4a2509ab0c38eebf3c01a521f6441e4fa3eb08674085d08b9bef995a81428883e13ad09b686057819f9b83e15b086dd4303c2e6fab20db690b9be13584305dc80c4cbf5a16e8064e6fa568c682eca44c9ccf5b18035a44e9420e6fa5ac01ad2265aecb8e850137c30737d2a1815cc84b1f560c8f5bdac5e567345b548e2c8c7f5c1a4625230313133263711571c01737d2bb08636b4016480abd20e4efc644c19b49a4a1b1e37d1842b8c5c5f0c5843fa8318c8c0c745c140e2e6fa64c01adea21ecc5cdffcbcb900238b1d9990ee300410c866884e9630fb710084df0ce801db9dad7c54b71dae7c747b8eebb3618eeb8639ae8f824d14f1c4c7354b9de3ef26cdcc55cbfb7a8e73b1b48313a718fa0c993024e18e13c330bcb6ce9c78908398abc3e9ca691b6ca782f8e64c79e3f6d8bf2933fb252f93a447d911998f4c4c86a7c79ec70e8319e951e765761ecb44e911ff903112bb0c19237d641891491e97328e3c7b23c6039ed88d98cd8aa22c6ec464c47ac45386ec7790fcb3613ef1904b94cc4b94ecf6b8c9588b6dd260c756d0fe7e292354a26444bd45e972a33d7699285846488b2fc923a92fc9980ca39fe1c7aac8ca7fc0c8a05512c700914b32f62fd98ecfcb80cd1efb67c30b19468f3d859f154cd60d208698ac1b3b3305d9c4c13df6146229f8d496751b4334208e3cf659a6d0f3d8cb14668f69a078ec34b58983e5b10cac47ece5ebb18c91d78971eb3146b555848ce115495cb9c0f9f51f9c5fb188922231e2ac24077bec3f6e112baac4e96ab194b15384144365c559c9164b19afc74ec6628cb07f36b471b36154493246c69a75c91a09a55b3130f2880f4968e412f287a4914f481f5ac5c2c6adb6ac63b761545bd7b1cba811b1e2ea07e7ea64d8ec15573faef5ebd3753b5146ad92d83951c64f25f1b5a0ec4bee15430060606c492863be44c9acab44cd6e10c162438f7d969c111eee456aef24bba758279e629ee3bae18956496cc3d3cfc988440a4f453de2d3d1877aa1747648216aa74714caab7be1a7a34f47353c159d8c4e472b2b2a2aa81bb14a62c7f873993f7b873768b159ec24bbf15349ec563cc978b447ea30d5234c0c0d091ea97fb012452e65688f6fd09af539f61bb1dab2710341ff28f875d7da23495a7b65476e6907d9c3715d873189e479617c2938d99142ed4b810682a59e52690729eb3199547a544a3b4859cf9124b3e93369307964472e31c03e293b815f503ef9a9b483fc5090a170a4478c2aed2093f488354093294226b947237d7ac4e48c94adaca44094e73989442291cafc2b25f2a7c5bf14d852da4132e9113b296459d2237671a12e24ef278965049e9cf58859585a5a4a3b5c5c4a3b542c2a952ab58252a94e59a552a9a84c25954a6522639306fb8d9fda5af9b056bcf17363565b2b1f9ddb1b39ae4eac29f9e8dc8a44ac77e25849eca02dd793cb8bca514c5c5e5e5c6cf404590dfb8bcae5c68e9166d52c1ea37c50b34a62efd20e1c548c4e2e91b24a62bf21e95349ec5fa5f4642a3df09e8d5bb3721efb676ddc6acb865025b163cfc68d64e3c6637c1b423d624f29916710117abeb421f4d8638662889a55dab83d764cc66cdc9a55ded8b9b13371d0c737623242646ce2f01c9732422f63eb117b0dc9656a1eed49623b9679429371d22ccfb1cbd86ec49a35d6d3e78262f285a91e572e228f7e974f6806d2503528011812823d76d4acb6ac0bbb4b088121c084bcd9a4c1644fb3aa0f64cd4a1df169962909396bd68a63279734ab62e1800e6308d223f696b024973c7696b0247f1e7b2a2c4fb1c7be1296a79fc78e0acb53edb1d370060ade288533d85358aa3e8733d8a3c72ea447eca71aea55513d3ff554d42decc2fe613fc56a6bba6ca81dda632f4f47b32fb997492c4f3e9fec4f2f9f77f1a92d9b493392856a6bbaf02cff3cb6a1dd32511e42c93acae313d1e3f2b3f91519c657de0e7e60188310268286605e5e4c20c1877b55948c7b19ed10c184381dcc1979ccf13c0657303ef3d37bd8189a053af620cd2a397621cd6ac78e1d86daea1cbb0dc6363faec3f84ad451e27d1d92b21e4924cf4961108f8604c675342e81a217723b9c11d86327633d62ff42b2a747ec3021296b03609f251cee55491ca3931b3b4a866be8117bd8579e4772940c3bea0876940f76940d3b2a0a7654122c23f4d84b1493c728da6354ed310aca63d4ecb17ba496116a56398d64a260520dcd2263988c3df6398345196edc508d80268a607bce412af2744dd775eba5279beecd2ac6decc9379b2e7b8cf869ce315c6cff9ed893de7b726d2aeecf5dc6c49e6f273d555de9fe76e3e5f5eda739c0c892fef93e71c77d49b71ee2d69568df29c7b3df8d263f21c165f7a4e9ebbb089c3b3d91cacb5f6044a1491febe38a5b3a73f4f6935210a453c453c453c453c943609410ea678c2de0e5f5c5484afb8dd15b6e85efbc4b557c4e0052730c2881fc000e35e5b74ad114d9a28c1b3f384bd4d8aaeddb1b749d1b53b1877dc16f6f2c03323aee58676ec6d5274ed8ebdf6165dbbf344086ed12d2afa00c8418182483eebdf8a9729315e4825ad13a1356cbfedaae22b61f61baaf8c7812b61464d79d085d4167d11a139e8d1eb74f4d73a571a4295781aaea3c4921f994c7e12cbfeb2755e75f675fadf0dfb3569ac835fe4945f8f327164b7afeed5d55725776a2be5f6e4d6fb35715cb7ee5326c32a55ce352fe668bdac6ff2395bb546d4a37593a7c23ac5755bbda844cdb255565b95a8c917c639ab64322e301194900a7125af9fc21a0dd54cbeb5b7426e535d717e4943f7d94fb94716911461f1945f202927a2e48a2767f16f967cb088b39227b1cc7ec53286bf9ed2516f1844f5599c3d7e9e0a672555c4129bc21968a95f5f254a2d29a70fdee6fe6edf47a90c13787e7a6581fb211dccaa7497e8a79b6a90afe5b035d5607a974a610cfac4c410a96aec2735d52037e8423805794e1aaa934b45d6baa906d9c68098cf278bc27305b572ca2b2b2b2b2b2f26ea3197b6ecf0ddcfcb9907639cda6f96cee73bb80bf4efba15bfcf360bcc29ff6cc90136c0c824afb4a36b01042fc92fd8a51e356fbd23398c0d306e0b392e9300d6bfb06512c03a17a6688d66514f047b24d18a5f0445eb8217f7e25eaf17a52febaf4a5ae7fc3b225b9b00dbe4753b2f18b6ab8f1c81b9a0ce3a6fdda93bd548b3fa458f7aacd448480cd4c87216771f6d28e6cbdeb91677dc249a46627c498dc4ac86c8d57ba7613725f83b3e562472535bcdc324ab0331c4575fc1d79bda9a2edb2cd1570d3d8e5ce4150bb644b2f261451cd091ac7ca8bc1557b3c7cf01714d252b3746eff44e78442ea9511bd1a366e1f4586fa614f5387f67a7597602cd682d5fbd7f4843fdc592233e567cd9b35911be6c265f3b465f3bb51ad1842fa9ced7185424f458e1e4698e72d93b469a55bfd6ac58e26b7bf59a8f14ee501769c7089186b501aa935c02992416f1bc5d68f7441d14e0ca6d80ea5fa8aa64c5f1c40fe890e322b90d917480c80e453a407205b8725c24241d2039124ffc4091761b5cb3844312895057fb0f7858f065c7aa4fae5661262b3efb85d33561b6d4e3fe15bb77268dad3f4c1aebdc5b28623fe05bb759a15b366c50a840cadb0a1bdf364c05452628643a7ca9c2db52f596c29a55d61f62cdb23d84b7475f82b6fe307170dcbfa80b86fbb2e94eef88614bca7d89bfc8ed9a2506c82ced9ba1834cc532a6b1add5d2c9715d873189e479497efa777d3e102c954c26153c1bcce08e49834fa895981da999544b0b6d616169a1a10b752a4e8f06df9c29ebebad7f2adccc69131afa398958289fbec2649dbc54c04f47c0cc4183d6b03edda659b9d2f0529cf5eb2b62893b91c647853e0769604c452789555461e2a89cdfd0849a2a3e69d01c5c0e6fbdc655259c557e036d681633b2430eae72fcb2466564871cbeacf95ae2911d15529f9026e9d13a15aaadae3569bd661cdd55aa9c1de39c3dcf2195f568bdc8abb88e6e18c639ab54eea34a488f4c1aeb2afda46d3d5a5711bbd6a375502ce9df5258a650e23a89de12f1d6bdda5b2f1b765f1e1847c023cc59f4b627497cec8ed591324463527b6acca8088a6d96a48df40e911427342aa33d47462f34cb09e56fd450a74e7ed27a9c6e65b6e7c84808ca925985552353886a4e8eb4ac5f4751847e96501e0abb05994f6ec05b1ee9a473c65af026d6d28e9a49a3624ac276cf009892c8539cb6da6aa25ea9f8516ed6eeae69c502676f27a28ff339c385f4dbbf0f3c42e6fca3b4b95aebdb9eff7d6ec38f532979d96f89e49811cb0e3c3e81b73c7b44892591e79ce420fbdcb4ab0935a43e4a9c93e6249635fc384373ac406b54afe3682acd383856afbe82e7953456d2e879d94fa76d5369c30fa96fc59b4953ddc505b9bf590b32f3dd5ff1962907abe20972895f47c90cf48754315e7fa7b76d169d9dcf108b5d587abf7870ab1ef9abe7b7e1f534d4da3c5f3bbd7ed38215572b17402ff90f93ab7869d302dde42aa2fd40cf4b9bcfbd4fe4d1ffd9a8505d071018aac7509d866eb5d056f8489e579f59796ef21c1718ae3c15bc70061fa09744223795aca0a8a30d507dba6c1ad7710423cf1eb1d88574cef9ba467c73a6c43723dd52a92a8faaf64cef295d647334bd9f740b885043118ad246ba756777d63cdd73677d64964468c950ab8622a3a369d43a4fba45633128b128312949ba457f7e96fc30f971d22d8a7972cf0bd1233a41ba458d8034059a65f2e93058a059ddb9db6836dddd5dd3ad8ea9f8a4596b418c412026f4bcf5eb435094e0f903fc84a2c4ec29ad9e77a5213b3ee7411f74cee43ce873b8568bd562b518ae615925ab635c6558660303525bb5b62ac639d7298471ce2a95fb38d6d4dc9985c56acbce7e542a98914a95f32c8671cef4e7abdb9bd1147b53a9a85111eea3ac93ef2c6716bfb3091486ce57bf3fcd7af9ea77e84ee9d6079b404b38bab6af1c2c0c147c7985be926661e4e0cb2be5021571ab9e596ed85fc3313289565bbbb6b4d0164a733d8765ce67ca12cebf341cc2e2f3d2f0ce7abc3f97497869e15d92e96ca5e22967f12fd39c3bb3a0e22c9e0a57fe7598ea951593777519505eaa78fb29ec9145194e9e9d452c49ae626d2a65f2157103f54da876ea5488f5558f2cc3874da87d1d718fb44331f2f512cbbe7a13d556f7c23b19a68a99c22e4a8fdd5027a523eab19bd215f558bdc23a1aacabc13a5b17e33a59e733eb66b3215c6dd5566d2fa31dd857b7d516f7c3c5acadb6ae0d5683d16033954f96cd5e78e7ceee921eeb15ba3ff7a6b2c97756557906d3d1cd84db17e0271013927415ca0f7215aa2529442e71add6ac89c38ab7956ed980468f4dc59b6655b126791b60e49a644a2eedeb657566daf3d924fbd4496209de34ab82de38e710e326a7e332f525fe89edac46f926cde671725c13b78ae3dcd0c9285fe1a07cf5c274a1a8ebe4ab1fd47572ea3a895e499d3c5d39ae59c94a9a562c983c3b909cef7c0614993441719266e9d9d41589d4df82d4db0d40a0c5cb309d86df249cfa329352ff5110f47c058a3cfac18f3e0ddb9bbefa8d4ebfb2a040b774405a50113c586d85664d5a10cf57073f8f84473a46ae5e8edf5e67f52e9c81bed569f0271796b39ef0ea46b3aa2aa6fbea372d54f731e39170f501edeb12be3a581d77b5d442c7d5175cc721c96b6b62c7fe953eeccd34cbf33098c71a1b155648a9bc6927f8794ec3cf235df1ba8e8ac3d989764edb8317d6afe64b9ef7c93dcfbf9570ba502ba85048c9e4345411cb1ac7f939bd9c260b98441efda69b16a47c3b4e0c426a4ba7ce90f0e2db6bd029c19cfcecf0ed54a75b2a98939f9b89359d2011e55df061909aefdc03a56ad4018ae367441267ed595bb4aeaa3e7e0542c2af7c754ca3879c9f8859736d91747c98165a81b191a1bf11ddf68c78e3acf2b1a6b4c1242732109c1392e41f19c501c535d5f7fbba15c6362a40b1361c3819330ea47c6946bbe131d78dd66958227afe17aad0a4f569bd73417ebd4eb3462ac8d3bea80b3c779a6375167bfbd613063e24e51921dfede21426ac1790caed66e298f9761c204318af2ee73e48beba5ec4bbe28a135da04ef2eb45945cd1c774cf8b5027792226d5da5271a20aaadabae9ca753364a8f3cb2aae58f03bcb2aea106dbeb469b761714000220b22ccda0dcecd0e35f99142022f7c7c7c7ca68f0e9fda721f1f1f95112414445f870e40001619018061a8864692e7100cb54e22dbb661a8b01eeb0b12b55a6d55a80ebd05a6089943300c4918b230bcf80c5118ab9c46b527cd2a2992afce51241387aa46f5759e6cc83269a87337b44d613447c310c4d0556d914bea43e39c74734f9a83f22f517cc29b8a14df9c292fed2d7e90a527dbb8f52e74912273de79a99a380ef0325b38aaa8898264a26433696caa47eb1d6763897eb28d8d0a3a62a0a15baad90a3f2a28424373caed54cc4c4e5d9a5dc2fa37a792ee30f594ae3ca5e18a76b8a21de6a72e4f43d5d36ea7dd21f8b443d4d3d55d5d4f3d77bd43cebf394b261f93c63a044a4f6d08a1a692574c968e2b34710cd516c9ad116b0137ca5b9bbd59c064f598a3f51a8c73d33cf4b016c75a4c9120db581c550b32fd7eec79e270e1345b2f50d2ba15c2b8c55b2fc3b7e5c4e2ad972f3893c67a6a2783b60ba3d6afcdd269bb6fdd07cb0b06c6c590b53a7d9ba66ccc5bb059cdbd3c1fbe395372b4bffed5792fcd2618aceb3ccee3381df5967376e9ed09fa754a8f7c94a7c9eb2588734a05525149be5ec190f2f488c187a5bea4b05212fc377feab3f88f8248f895d7182bce2714316a3fa18811c4d370c589359ef579089722fee3e8e4aa6948fd4ef51d4e2858d0febb209de5607b2ad2d03fa4fb0cd8ef5041fcd78134048ffc87411aa266ff91c00e57d567d00d4c7c751aaeaaa71ebbf756fcf7818d6d0821cf60ff3a37ab2d21951c6272b18943c6fdfcf5c9f9fc7521772787eb17f6ed340fb487599adccc9741dc2c529010d097d9d425d310951a521e1a0b67d00d434f4b3c4acf89342c7dc94d5e4e1b8e0bd3366d346a260e0ac4a4b97e9d00b34583a0e4f52b962f5f52988a134bca821335c197357f27cdcd266e8b7c5f9386f34b9b3858fe3a7787d031383b9be9f13a5e612952feb2fc9d7f63605dc8de8604922fe9cf5f6c43c2c9c51d37335ef7d1acea05d1539ff1cad1b20e98f07081c41286e49fe26bdaf3db003ba01fd83f47325e06ed67cad3db10d467497b9eb600ac0e4fa91342b839f14488103001c35553ea0304db67a06ffdf57abd3ece4107c92f7263d0a9d7eafdedd86b28438b41c0f6761d8d415b6b2d498e2bc618d77008c5a1aecf735c363dd29e21e3a92075eb331b3cb12a007102830f0a34cbea3c750b38a057984f7574ea2d48b3265012433cf51884346b466d5117ede9964e29899fa74e8f744b9c404a44f976dd348b7a0bcdaa4b3c95a1faf5cbaa4e63dfa517b8b661e981d8e32097e8afabd0ac0b9676556f5a6892ba9743ae644fe6fc1b7bac99a1452e27510c419a861aaacde1a9539d6a2bb6314c927a3714112cf92a12a5382386d431c6f87601d01c2d92768ca611b954d1d94a0e3f467ad0020e87a01da2fccbcfa01d68efbdc89749b6e3eca23e4baa49d38eb5c837a20ed57ba52317d98a48563eae97aab0080ed73927d23927ae7e709d98ab9212cea59ec5a8d151001a5511a186b6acab8a8b1193352a14eccb177df17d6962c154ccccf5ea362f4f4806478e605a34eb027dc3cbf0724d9f0368828510c419be9d8110516cf142520031042d7a8082891b0abad0a286d7bf0ac6b4483e2707e2207349d0414a106e781e56a4f4894afab8571480002ce58ac8d4bfcad964f0a4b69329644e9e3831da4abda6592f4f1d48b366ab93dd68d6049a41ed694903cad3da74d96440842f6794a7743ae1eee908f953c28d365da34d11b9c4b77b83e17c8a2b4cae1327edcb2904847312a6b1255e503cc755f19c971446635e1c75dcf57bab97d83b20d5b163f75c47c330e3b173349724f21193c44411939c4f124bec9d08a447187ae4b8198fbd87cccb80dd1329008329ac81ebc0f580fd4025d245a80d8fbde43a5aec3c7148f7a0498461e49ce425194cc8a0c33c2852198d854028d0ad2a7bbd5e26702dc00ba159637ea9b2e5da24e72fc00bda24e7771d0ccc7f3824b917f6203d762ae3bcec9cc66456e4ce4b1aa33d352f4310ef49e205bcc78eaf771c1e430504a64688d6bceca00617354bd52a2f7e389e6e8d4dd2da92af365ccfe310dd9abbdcad40a86aaa554511b23a5e5533813cd5ad79d922975388064ad1c1c4ad5159798fbe3a8b455f9e9852b35dabd56e6e6ab5da4dad56db2197b376a50c154da93539a2288b9818b75b172cc002c808202374e8a868d28322dc70c3e9757a1dc0c868094b00c3525706c32d60bbb2ebbacedadc4fcc3a6b25c2da246eed07e66a2fd78956d523a52cf8bef6f6e92dc595e39ab3c790490692c109be56b7c9730920683f97f8e1e8698901245f59a74f3c75f2b4b4a3f30e411f5e6f6fc8407066b9ac51a9541d5a1f5edf3543b954557f81a1ad5945ece509a6d7cfda52d55ada419a53be1d5bb00be7d784049834d56f58804963634ea0eaa521f2fc2b2ae9d493f6ac78ca37030d33654dffb51dae5d37c36e76734e8cc312fc6ec7a22a15e333b4d4439e3e9dba176313a04849c20652f800038b430c72a0404d6a40fe046a228237fd043a820bd5f7d8b2ed5e53a3033a8324bcd6d16befb56170b710dc20f060678f59f05027b63906cadfdb59b5839c02c016b9fb0954c5144f3dabaa70e28a659099df8105aae206201b9427fd04aaa209b68111545c6105e906415c1f7dc69dae200b1522f870395b67a3010f40e05e7a1080f872a4616f000a4208529001088e884d513224025705ea02a88b285f7a0da753aaa61454e880c41426d4c0a8411da38e4183044a38f1010b643cc0e2c7faf0a04000549df841084c3a1dc85a7e024d1982bb1c77eb0f371cf15c1542f0e1e154504510534854e0b00487ae15688a0eaf02f28208bff213c80b2c92a0b42d5833819f9b42d06ff881179728a59404da12088257d4d12d5ae4cfc3d40877ed936fcee4a2954f2ec7b18e79448527e0a0d2d040a19e40a2babbbb672d1edeb0cc8b57187005c6802a17969a5a39dd2a59dde4160659c5fb46d3371a62df5010612788a4881267e36c00b30088a503402c75fc0dbdde72647fbd45bccd66c06460392f98c788255e5d87e9f9ebd6d6e2d5ed0de52daeb2b5b88bade53a4b4d89285f1151626983ecaf9f4491aa84653ff9eaa65a2b7df2554a92afde49e131ffc27e064550824cc51e436bf4bc32502f9f624c12572c707e3baff49639b687d06b6d581f8728cc014c00ccb1c624690e9f35da67f457ce75344c69fd8a32586baf004c43e8186fc595f5f932880c986f83913c0e779f4a064da5d34aea85c5695b0e7b200a668ed22ca9e0e79d3838eff3d9f9741f1307a8927d7a0d13c7c9a7136996e9d53371a07caea4a89366bdf8745aa34bcc1c544a8b9714e8a7f74e13219aa260e6a04992a8e0a7539d3632bd03930998683a04668e205378d0f3890a5ddaf8e90498395aa035daf3a8a241034f29ead7d14f6f51a24af2e04a41302f3529aa7617b12696ddceb1cc4a5fd2198ffe2c04bd85740a2c0985b55b54c924e4e6f49455708298c4b2754a62498f6c60876b5aa8a9a15f17350d9a830a61d6686f9d6fa747d40b1adf3ee96a67e2e88a64e594523a6b6fbdae443a85c8069468c25efa545433801238918317bc665d30b13d10c14501031fa67841122a0854c043153b35a5220e87ef9b1307776d6dda744ebb0226beae7371aeebb2aedad4d5857492d6397b4b2c74a6496da839b5e9132a9e4e87e3388e8be2870a5c410318f454b1041147d810401104952f605064717bb0f7de7b4f507576b83af7de7bb92852d00141c7af0f6ae0831a144c64e143050f336f0a286c70c4b30d01fc0964ab81b75104547471a342880a5b0e8678be7beffd6a5b4a5b9dcfac823b5b6db5b52f9e756836a5a717f7b1a6bbce79f25c85be6f929eb2d01b3d5a6b6d58ce7ccf39676db1d7cbdadd57e7a39452db3de79cd336aa279760ce39a74a09f2b43df6dee6a8bd1c27c4b59c109cad9cadf43abda2b55c1542881bd8afb769f5eeeabc931382d3ad12381d866ea9f87432aaf0d36f746b245d9fe3e70405d5cc0c05668e15688df6ce7125dbaa847992dfe7ed7d4e3decf4fbb290c7f9f1258d2b8cf73bf186c333572ca7948ed263e6c6d66ecfe768ba3307a635daf334d11a82210bb9522ec4e9b17d34d92ccc1aed527a4c9a766cc51bce06a69a68e6e6a6e3aed75f106ca6419c1a56438172d00221ea76b262dee2009a42a8875453d46ccf9e3441831ba62081c765779c00620559887e9ff460c69330fe7a7ff18408160b2a18b893c226844d0a2e620ec0418a26f09083ecc90e423071c00d4e9e9c20040ec8c1565b9503a125a42448f572f77223a8e24b07c20b86aa788112bef42c04039d0b04031ffe5e4fdd6e07627414a425568bf912943f3a7e9ff0ed3540bafb73d0a937e83989b64a342461fce41254fd752527d93c4a9584b992ebe892e35248a3c97630b4292d911bc63a76cf6789e4556f52f5c63546c6acd17ec31993a6554a72c7826fce9493360b93b4255a7627b9cb934c4bdfe2cda4b149f2091387751b23cd611d855963ceb9f2e568bd896365b6404c73d059a35526ebfa8b6a85d25bab69368592ef7d5ada81a3e39170b038df47577f0ed5be54cc4c873048876a6d67f11c57292cb9c97d94dce4ed26918892167d989c4524b2e27cd58e32399115875b5cb9d0e22cfe23e528b108ca532831cf9692e7b84efd53aa522d2bceb9cf58ef990dfb278a6c7dc94ab8c26111755472c557382bbe7a81a32e165ffda02ce28a135713587116ff71729458e424ae3877f117ffc152644554d289ab1e9d5befdc8aab1e5e3b8bb872c1c55f7cc5893f5cfc65ba5ac415e72d9ee34a892cdee23e58bc4524a20474222becabeb291671657dc5390b28fa58f1166f1189acb038830f94677f61ba6c2ab972a1c553fea3c5536211253e4e9ef222592482126d3f52454e224e6a455c5971061f2b7ef217a66bac64f51527ae5c40398bff40398b5844890f16cf5ee42412f11f99458421c7554e1a8b9735319d6dc5a7ebe4a5c3f874ad884a563dda2be710ca53617696f0e42ba18a77a1e7604872f117a6cbc57fc87095cfd28a734ec4797120324425ed2b57798ecb45860c5149e72e9ee352a93ce54566255bbc884a1492721797e1368e64bc5e9564f1186ff19497f4d5e22c3e8194c7882b1c1616a7ae9515a7ae15d7d12ee174adc215e7319ee37a09579cb8c271f1f99cbbac7c252af1dca5dd2524a2c4878bbf884494bc305d3a4594f878f1ec458abc881496ddc5576ee36825ba9c1cc6519ebda4b2950b283ff904b2c3882b9cd3c9a94b45c5a94bc575f44b485daa90bab890d2598f3326f7e7f532853deb972cc96ce6124e5727a139a15df189add564d83f6f61e9c0d4ca870a2be9851ecef45873251b77079ac27e55b2ce4092cba6955db62c4ab36a596b6d7bb558f6ce8ada7a8452dbf6354a53a118e49e75b8c362ceadb5f8ed0b946cbfb4251638efee29c7eb5414df372b584b3bc01e3bfa2f41f94ff8ce754c1cf33b8fa1b6ae777e4515dfe1ae73951899fbf6eb33e8c1142568c114517ce1eaee093eb954914bc8e5f89d8f3536079864e7d3a96833693a2f6dbef3643ca93a92ea5c886407bb6a77c39b4a76dee10b94dcad4a5568b2f3d2127974181b60709dc77cf6ab5ec5b85938639fd8b35806191f3bc6a18c2832f6123300f41eabc78e3bef3af0054abeb8b6b00b8f3d621217198ba3924c4b383a57a77a7b879f4c6f1e15cfae9b5d8767d789e5bc3ee39641c69f3e2750d3a6d54e6c84e2e0fb66b3e8ac251e73cec979370be00c4bb0ebfc76b66758760e5f1d73b7ab1dda1ec7c0a15f5fdb863bb89ca171236692b3298dd5d9a661a94a59d0c504931b9ae3f549facb81ae76aa6aca5e6bafbdd662d1aa52f7de7b5d7ec814d7db746b6bed6ae98d169544f07a5ab2afbf55b2af488d90c8f376c7709c3114345a56f990cb5c7383a650935951fbe2afe7eb2a28607fdd2bedb83ebbf0610820c883278cf044ecade35c93c4a0eb668ade3a77efbd3c46deadd1c45b7c735eb002268ec0c30d7e7c8eb8ae05c1df7befe59ce079ebed2bf87ca2a88a319a98810c88b8b9aedde1ef084af0770a65110394cb9a9a266e339f929c494ec6200167b3612162b701b64e49cc724d80a0c793d71311740f286cf68aaeebba289c44f1240335c1450fb41e52d4b24a0aa0286c2012155575cd5d8ebb46452c09000f5011b401300154449405445153920220289400834506fddba264748817b51d575b335ac4cd15e7a4a10ef030c93b9f5f2685a92f979ce485315764ba23d2578fd6c91c642239ae92830de294bc9676b424914bcafdeb278d75af2d1725addb960ede7ad51103d19c9487d29e19ce2b7243df9cb9c10d6889175093da7ff756182cb2ed7a3ec60990e2bf9ce747accfda4d0b3835344ba75b2d331fd7e7bc24dc0139d1e1ef0ad4a3301a688acb3d388fe95175798c7ec66f935cfadfd5389fc678a36b6a8210e3cb29a4c2acd934c9a5cdcfb0086e4779b9310125e7af3426a67c494b32a09d2f2993af2cbad363c523fd613a8ddbbd3e73431a75a44180af1e13452ee98e0d9eabac29913ca140a8f48cb665450c95a2191100000000b314003030140c0744e28048309826122f3f14800c809a407a569889b328887114648c310418438001c410630c18a1a121020011376e50cb2d0205aa05cd95208518eceb9c72d5df8bc020229ef8b953ae2cce03d6a96c611219dd06d28dc33f379e831c0f7e97675675c5b12a04df7679bac3f8e5895cc3ea09209144eeaeaab097f7bdda176018d9140f85590827f1b763705399319c83a2b14d07deedbdab1d07c94e3f1e59eb0082eea11bf9a2b642258d4ed3a9d4de654f04bd6e5375549917f484b9994ec3c53f115b7ac6e0615481ca17c78869eea63a5cce06d0488f9a042dbf798a371bd595923c0259f545fa297cb2029d7447d661e18f9f9e4b59fc4b8996306d16c81541af23a05869bbb7686066cfb650d0d8deb5b73d32c3929d95ffcc8e3459242750aa764ff1ab6c80cda889599a9830098ac81cd190175d2bb023b8e801cb22d6e8203185d0a89efd122db92500ad385fd7a546da4bdbb420f264430382751531ad81193e108313bb28461dda55bca2b06b618634a40c5d874c47a1c953ad40564a270ee5b150a467d5a83c8a0adc1a09f013997e2942bbd1a6cfcd776c854f10f77a04f40ab6df74f252d139fff5c7d80fecc98dd5504aae583985791ae1282991944275da85995ac2910fad3b0e51c47b2d7ae305cf5371373c99dac66b085de73b1b74a99463d3e19a819b3c0c6ba51b41958c36e24e129545953cda131e1a66e3db4e0d0b30e38b55ef5243dc85604361ea05afe15f0945f1987011188db43ae0e4d991b4986423b132383a91a0044aa4308b94cd7a3cc6905fad953cb7b306cb5a8fd0eb5aa58f26ef7c1fc93108002fce665615c5c7ee1b0489cb1225e0be4b4025971c3c1668688ffae1017433d3acfa107400cb375ad5ed88b4fb5ea7dd6096fcadf4b7e9353d487ad84fc8a36e483223d30fb8aedafefffe76a7cde9b651464522fed9311460c5a9e05ad448a100560515301c261b60effe7f3ba312f69cadbe72f26ffea35c6b6ba57eb17ec2aed524cd40dcb6da8ddbb86d16ad852b4a81f0d40c9d31b425686a7cffc9d20f5e2f10649a61ef5fbdf2613ddf2a9298ca0c675cd9cec9d241fa515119746de564600b86e20b92e30ed7a4f047e29af2264a62617f0e31d050c2073b3ca7037a22b577948d3d46c19a02f600796ed2fa893ff66f1a224ed04165f17209ae181334cdebb79a39a97e58e2dd251f5c22b609c193986ca9c2e498804b0316cecbd88006a3004dd6d40de8545abdc41051a2f8ffc437ac9c3b7f644d4833fdd262289fb6a87320945e9d8f34fe9e999a9d9ee19d7d551eb4848fdda7c7e932b4ecc4108823457c5446bf02a3fff441eaa95a30971ddd35532bc20756b163e831574db1a74a9e19ab3cc686ac95b3a713194e74171962db6f000c97fc44a815bf5853f1dcece2b8c9f27b93a6e3bbf29611937c3e0802faba2bf958aedaa463c40c2f17be581231c57e2d93c352ae2e6226813f2e83173280882710d6243d60dabe6225b858f8081e2ed2be10e46ba8509ab3a440a1801b447a6914547096f548923d48e4b26b22773f32b72cfe8ee6b91e58df44c293aa638736daaa228d6eefa40ca73a52859ac83ae301837f876b47e847baf8e5c74652ce758d259b42074a2c55fd3352a0b26ffd81b634d12dc2e954e860cfaa0885d67d71d173f58e2ea6ee2d29c283d932cae1a4afe6204cff2bdd80570dbb9c45a082ac7663039e8b32d7a47aba2f79a24180186fbed9503973130ad41f7e80937ca4a09c866090ec5c20b2a11235abc180ab25282cdf248957f2ef7f98992fe307a73e1da40f3009adfea6a4c2c5de912be5877eb80830511e88c389787a2b328292f9843077d385b9b514cc0db8ed807abdb0974998cb22c36cdff7a0ffad36a2a8e1fce847216a4f77c234ac48c985ccfaf9a65deb18fabfb48e79275cf742001d6452329f004b646d6ff905904226e86ff10f99d08c804333ad194c74748496244ccdd91ff65f03dd06af1a6356fa34d388d9866cd1440f00f4fdaa906cf998dd4f1d0883118d6b903775d9719d236fc3fa816262c94f595b21575c38e82f49b3550726c889563c119527c70592f0f45a95629faed5096386ef493a701abf3c5c5554c595dfeb8c50d80a2151f907186a8002b9bd8d20a7cd11a6d920c0643bbc0817ed8508cb9b9db01201622a8b310a0a4bd3c87e4521b940e6fe41f7f26bf845784a23e1f3019d2b1d3bf2e8963a2885e81198ca3389e05e0b6c8edf21c4c1f92239cf8ecb184c38161500fc7560715d996fd0e86e92c7f1b970bcf9ca0fd739b16b4ac2f50366351b797ccb09b8103c0f6bfd5d3e120a8499123ba4557ca450f9a9b46cdb70f6c439195446e505bb139a1c05a30e796d47b8501596d4ead98a634bcf6e40943858692093d9ab0fcaf8cb1876eb53bc671fab327a164f862760664b0eea6b7c56a489a16b41a636990b944883853d53cc001b133f32b6de1b996e4a5c9195a1651bbaeaa085e8290e4e1b852ee6dca1ee5e4cdf5551089224148bd7a8c18a9185fe3498827ae8269795dc46e672c0406987543737586538acd2f71899efc1a6be6c65e8498ec9201fd84e008168f199b074b506b321da82ad8d348e3228dab0b46d89cf59645dd0af8050f90926fbf83cc8341f299d11e12879878747724b1bf741dc28c1bb1a8a8336df001e411560b4f6228b2c85d21922c033f1c1c26481e4bd114a29231571a842381cd34661f2823d91df536e8e62783d41f8dee8ae9a41a0aab2f0df3436dec889c30046fb3eb73d4d42b7493dbcb04bea059ad7beca87d9eb527ee0f05affd0dd73156610309e81206f31598e8516987a01ba46a99af88655de0bd2f5b93eea1e49bf97da9ba32e6afc43e21f3b1b5009581be29c2e4bbf2f034368ad3d0158f5dab1cf150819df5213c1ee0ee94c78436f04276324e968a6c790413bd87636cb13aeacbf8d728cb39d5098c8dcc5b92ad863044f06ffb123096712fcc39fd4c90e43a1359429d0be5e4f311f555f79a53309444911676c5983b4374cfa7a2418bb0f92ef228c2a486e51c5e1b4bfde5c16df7f6bc984f42cd9d75fe5823c37b06a81b242654201299bcbec2c9c98b7a081aa1f89ca80fe2476c8f2ae7112c150070d96de4e2a2489c6541fa5a6aff26950a6ad991995873ca858af980ebde03f092b3b8b02cf6ef9f09803f65f966d19f6d59aef718ae4a2b87bb3fb201115cae57092a5fa9690ed0b39d5f6e0979c5bf7daba4f6260947541b7313ab9e3c0167fa3b3736e5b57610fdb2995c60be720dc232c38b7863cf549f1ea9c60f1a47a52c64f9a106db8edc59f5a6d30cbb50079a0bd1801377c486e444d09e033c109136511aa82a9b1ceb45d2d626eae050b79b3c94701e4cd0e83d95391fe2624d0cc138e1cd62e3d7a869d00eb50dc71567a8ec089c116b6b18bd1bb81d7ac6d5a4e53e1a89db3bca8ccbd63249c5818770689ca353e7493429d4758747d60942cefb861684d16479a3ad0d88d4bdc7966acc157e826ceef7aae8b3a02170b0903c6734aca2f729f0f950c20817e8ffec2b4e250c30eb1106c4e2c03888aae588d3b99167276efe391c088e37995720098a1b86b4cdd2c4722bc88b02d25eafd3e575341afa910188dc1d3ba7923586f3865436da640f5403483b6d434de0149788fd0e05aa5563807ea4da51f5446133b042fc041ac8d0c81052e746f66935da635c2188ac5bb7b044f933ecd64e97f3684e1b034b5982575bf96bcb13eccb662157a5c28c3406d1f62c85ab8cf9e4368ebe69cc00af0563c78083f9d84a198ff4d9b42fc7817cb5474ef42862997dbf3a8d95d742ef1c0cb7961ef86430ab6d7efaa35648a3628d6fa5e27a09cfe85fee78be78a963ae44662c1e01ff87c058dea4e50a045be561dd0b9dd04bdaf87ea94a7d1a2c26e191e2c17bf494a9e435f00f13fe867cf116a183fe38411def54f3e0a1e01f09f8ea4ffc3882534eda340293574abe0f452c22fc32783245202a8bc238c62be8e0624bc46d0517a714373062c8f7a99a2cbdfdeeabc77428875ce60d6e3421654e343fd63b8c3b19ec83ba7ac5dd72aca3225d92d6351ab9872c111c5a3a8d5844a7a5677da7a4dc01fdb34aa9f8b901fc05d92ec7bc0c22a1f174a9f3b460dd0e3251d8bee73b0116601bfd7fce5f9cde379783c3bb57cebbe0b1c978ae2b397ff7e25e7a5d1aff022c0d15b491afe1d31fa0a6a08f831de198d0e60ce512301f4a7b7002dcf8bfb0f55243c3e05b84b6c35a01ad999fc082743a3ff981a4e7488f5f3e316522640a0639f980ffc3b10c50708de0e02f23683761cf5a8288d47e5d12ae2ea1273d4839c9fbc9f50b3d80853d7188146c3564bb5800bce4ed2e505380ef9e2dc6aaa98fa56d1e40f8d6b3d664840214de1f40da5a06d7b14ca1d5fb575d8f3811ffccc3f9cb8184efaff02a2d3abd313f37f25186b75f4270a180e5034ec35a4b51f24a50a617e4be664dac934f87ed06324aae92efd66ab2911100d891236b89f106d20831ef5ce28132fe9512d09d3c996e97c14ef03f05e694a3631ef34e03b3b33602b6dde7e9be51d825f377def136450b91b8e1955317ae186e453b9a3c1ce9454ef4dba9f29ed68a4aeab3369e059f8c567d137652dfc2ed2dde8236c8acabb2f7b40c869b8ab39abe0c6036a528f316b1919309118cc2310ebc2187a9dcd187af80b84cc6c4dc462290a06e834f20c1035d464f94965f62327c1f9c9f4b5f762ecb06093eea4b318399701c61eadcda922dc5263a43634d9b7db024e4d0e86a4c72db9fa690e358903272eee92762cc33be4d5d94030ec94610c2b92d2017e0bd377751024221d6bbeb7c6c1855f754d2e62a98e2e7baec1c81b35bf4067065884e02cb102a3ca47e06108cb6123a5ac650691970b0c09c721849bfcc46d30a780be14d5834fa93c790bf137250773306d3ed3c6f25d58f084fdce49d519e1bc577826841d8fbd9f0f67705ca056c968ffb34a71b1065e55b8f80c034a4a4cdda668b9b2af85c2f4401779e5004d456f4eb3771f04d50490a7e2833a6ca25028ac85afb8195d3d4ae134e57b4e82a3aac3e1c9a9ff52fb252ac066a3a4692ff2f35858173b27cbab84b27d847482814059000dca8b15454c9d6b4a3691a8b5308ff2b5028c9fa042403ada03c039470cccbd9eaeabf39ae68dfa22986429a9ea36ceb16fe2b912c5dd531b88fec68eaa90e561aef56edec0b6c31dd81edd3a13cfb7832fe7bb5f5028605358f6e3a8f6d6b3777dc7baf5273aadb9a6607e3c66a738fdee913802425780ed7e888552a6e789054481cc7ec0c622b0e7cf4899e443a867704780d2da1f98616119439e49e2bb49d7d1bfa12369cb8b1ae2b02c6b3e9ca42eb43eea43b099413caf2f642f742d6e9f67834be1fedc0adcab9e2030a110b286302664f908179343e8722a6bb8c166fd00bf7424c4c901cde94def2c8e70618a849e2255400554cd74502ca1f077e3aa4964c169d81d541b4aa9a6daa8a6706646ee29ada6c1608335dc4f38f6a652e24f65f3ab2070f7e366beb2fbb08b82d424608bc03f1d39029b30d1c42383dd151c02aa97c66064104bc883a26111b8cae42e9f2f10c3785a4ea918f9840fd3688ce4911a06b475a8f4ac3603888d4a018850cd7075377c4c5ee3bcd760625b005fbebe6643713816a2e71f5408d80ebb057344d597cd6a834faf8bb0b920eb8835aff048088bc1204ff68e2a0b798e6d71a207f32e3d3d2ba2df5121bf662fab507f303d6f62dc5e9451801422c076ba214383bf9be864d970dd31a515d1e473f1512f51771521d1eeb8d91df8cb2565248eeaef9079904ae493d28ae67c6ee34bf67c7b9953955985866ec2e4ad884f8d5e318d104f40dea9b306ef07302fc8c013304d7fbef180196d70b25a06117e47d8741f5830cbd1735116ff637c01849ec737da5243466ff43ca391b59500a05e13852c37341bd1bf46ceb5be1fd407c1a48b6d48e80daeec5fd2b0f9bef104beb0517658fc6ddb51118c85fb1839fb4616d7013441630ae7aafdf67de33a77d267eb70f0b0d7cef41cf106c6dd5b76c19f723cd59b9d75518fb35a88daa16b24ad86bd1b436b537f13d32bf9de1e68477f8b5bb27daab68c00600d48c8eb03223e8988465df3b660b3815bf9337414213a620ee083e1965d392ac1da273ae632a702603539b4b988891a8f6856bd31e18ebdb29ccac0e0d3f30258508449a8e6469d3236ee1c5b16439feb8d3de0dd51c74bb703ffed6b319b6e63b32e538203272e119fc52cb2b1b267c02519fa15f42349af37d80a426f636744dbe7a892e6e80823732f7aa738fe848eb508e73700f3a202475b5e4922de2c8a123fa2a8ab5caa9b818d1516899bb8de8fe80402ddef7e5c40b41505036504b9746352c776a3419199ae30803be8bd019ed9092b3f7bba1bb7e851b48f1e511ddabc5c34175bb6c99719413d668cbc176380becb18dca1fad1bb089c9a90e8905f51b8aa3a5cab773250434f2d632f11afae0d581c2fb13a82b08426d23a8a3e27681b08a53e0d206ac59c4475917f1ad3133cdaf0109ed9362c4bff43332a6c7b9bfbdbe68738cd7ff2f4c6953c5a49c482ebcce5d02f66de34c2205970e105a8120c77ecac6d93275117e46f8a2753c04a2c2dc8e2980338da422692df0ae8cac81f8f8b9c43c7fbe46a4f90f68afede0deff50a3eccd94df78c071a28a946248e9e8775e05749ec677ecbb2c0d01cd250206f1f81e06f8a2f9f02c4b6ebaa8f3e6175643755a33f714ac90b5a2a5d76574f6a4f8a0a2e51ce8bfc4fe5b6df9b9d0454590bdef390763b7508141bc2e300758eb7835ee735788534ec9ff718dde22a0d02038ef287c54bf64683e1c1f8a3c2cbb8cffaa79ee710b9c68022d5a612a31f2efac26714b35842baba2c1a2fb6672cd253557f677efa8b095e302d6c5f5ec12a3d198b9827b9d0b94748a742a99339f0146b1ea4702720717115f86322281cdb2411652228f4e254de20dbe1b0f4580a7ef9204cd9f920d8cbf88630b8c84503547c19b1d9880eb8f652feb65051cef6f57b4061b028707c3e5efb08cee4f68d97170700f1ef3e0b4077212aaa169e6c6c8d6827bed76cc59f221551e01bdf3b0bd279bc3564807bca3376eb8d77cd0779b08cc38feb97773d6c361bf5d150012a5b5fa06cd99ceb5146bcb278ad0e430548b05acc99c45f59e97ffe6da6b34c5c1b672a23c8548306f4a73b84caea241afe1a93d3e98a496663f45f630e505f39153b76321082b501f4bed59ff77f33d3a7a862690f8c09021d5610a85bbea45036d8bf134fcec5a74d6971001115aa88a9a83533efd977de2f10723971079419bc21f0a0824eba39f51fd0824bb3f2c1a6f51a8781f043e82b5e56a1a9a6dba4800bddd435de4544fa4b3432df58fff8a1786094fd7ef11186beb3c0dfb95e5efc79003553e325783f179de7955aa78ccd1aece079739c08581de330ee04241a3daf79d2bed72b3e63c7d74d011a3fd1c2c6bddd0726fd2e793d8058c47359d78fa28ae030cf624bbaf5a5e61edcf0ca6a79a648c5a1122e0b45fe8538509baaf56a7245bb1bbad890b25492f02b54c351b241fff954b6c1d3cf41467d17d26b7c9c19bc62ee2c41a15a7c1f39f111e0ba491473c1c40671f859380ac630e16a980834c2b2986bc871853a718dc30415d40a812f487203547590359695e4b3ce264f3178b99d4deb6d545d5e1b417d8d2be5223c9bf8630f696f8e86267d1d43d73b51b0439460ef641a0c03ef89da60ce0805cfe9792775ab610c0a0840e26d230d6f79366d0ff9fa2a8484696be1c7e391b42b668994da45dfb2af26b982518550e71200baa69b8d8d859706336e51bf7c5d5c048d8a70d9c1e32bfa99aa3b7aae937ae8c5ced6ae8b34bbb171a68e0b1e0cb87c958d37bca606aa9c566ca9b2e83dda200a37b1f33cff6b8f54f7194d2e480443b43253c3a42a253f5dfadf3cd1a4d22b65f922c926b444ee00ca5f65abb81e96e5719efad0bdc3c773100af98eef0e64df10228adad7a1f410a8aeacd22d1005463d286f9efa8be4e34e6ab5c0eb8e90c80186e9fdf966d7ef541ec0453084246fa58cc9c90d9e2e87b6b23d73a3c994fc9264ecd7e4fbc290df842229345cf6bc43c0a9362315d07173ebefe30097423490b9c7e73088dc36d5308e8a404afd673d3a30c2006625fe2da1380302878ae374c607382c98ec9c5cffda8c2896612a62900d131dc5ad0a99d8dbc66950d9fc94b518f2269442fa57aa8a3fd734c708be30e37420131c34c31b4531024c23260e3c22f414f68d276878bf6978612e72d20343b7d57eac711c4f31ba79d64fc0f154e3ed9db2f9dae2e93bbedf8280643c2d724eb28344ac8d8c6b3d848a870185a62236633cd90083a98618c653ac1b1753359eeab0855869184fc2a9e5dcaa2086daf3583e1cfb018c5cb297a24aa08d5ff91707918147bc7f2ef3408473b9275ba77413988031e88d5b61be3239a1718d9a2327d6de972bca40d476d96e00098b0d1bed3893d278025c7ca1931a865b537867d6f12a7c423229139b6607caa11203825d69dd6493b8104627e1dfb957380def0a63c6fcdaece98d0cac02312b54d9d9c7af2ae5556f4d4c542e342db81f2395fe652c3b41838210029b68d338e74ac4e3a407f0f4325cf966fe6776747777d811221af4f1d8c238e5aac7bbf235d730a66a3facbbb88d571036442224b5896e61eab8a2e4d6090141238b94cb7c61d0a4bbbf2d89d11c3f7e56169a42defb68968ab6e1d39adef14eb94155acbaae563980444e21dd83f2915f9497dfb16b2ae6a428ec30457192db9947186d3f72613863ecb93c6c4bb8628c31813ef778807fc117b8603af45058b70b4552a8ecf673b1d3e34e27499ebdc09a6845f6bb93f98d0a562961e9a4ffee3f0b42ac4c868918bfadad164dc5bb129759fb289028114bbfd2a91ec0ed3e0d2bce5fca40b769ee016e6e40a7e22bec13e361a9593537e0a86219e3811cc641ba01b634ca213174b58b4c13a41b786ed02390bce5065ee9803ec964d20dc0f7cb27f3695ec652772b8d76940efd79fc260310df4dbbf0c1e87db89c7f963ab0010c9f2dd0b5b4bde31046bef49bbf39373ef34dd3f1e44deb97c1d82e2ea3910699a2f966b8048e2a56d5ab7d335ac8fe286c21c550fcc896ea5dd22f3cc66e0768e8acd8da8eab28ff12b016df797bf104b1c2dcad89b0fc54949aee701a80fda6c1bc5c38ad29d0a68183f6d236f61be495a625a147547cfc1aca67019d612f4e79196cf937e21616c0fd29df92d4adbe0e5f0645b19f9dbd3cf0ac9fbd50a3757943bd3fdd087252017a663340f2a110e83ed8087c3fa33566a06d826e0f264cfba3926a055e28593429437a08a80406560d1688fee2907369d1cccd86088ba2afaab886984e617d6685ac49f30e852fdd2ee3fef7159ff09ea37cb5f0600c9d648339ef51e2351b33e3c3c524aab38fdde06efe1ed475982c68f53554e104dc539d0a2b497ca9eb9e4fad0282bb33faff304c380befd87cfcf0431937b4d633bfc0f5a00d2d8b796c4855f45b6363cd53042aada4936a3448d8234117d0617f67dd2ce4248038378a2f168b32ba260bd7126b7126ab816832dbb61b80e911594476244ac2cdfef1a24de334e170f134d2ca8725a3daa334424414658916875378034e0863d8e3487256bc5783aa86071b8bc0ab024751116a9ca1ce0c66c8735a0b10ba9212dc3e566d537e8a556bbb21799daaa901da70c04fd6eb5f5cc9ac064fd3f4e81ee66ec4e7c867e2096592ed52e31167dccb1d97e6900aa5318379f367f869146a4c1a90b58520f9436161f1b42a50ff0c1d7aae2152f733c7dc74c81beba23e3544ed33b5da21b25d07227f7b53611159e2258ab950232c498a028989f2c223e3f89c6b66449b12fca4efaae0e988f54c043167513ba6959aa7f9a46849801fd58ae95ac1c27c34cb4af6cecaa9992ff8d59e94cf013e475aa7682d8a5da7b2e66c288763e46f5b689d92903e5919e803365aecf955bc3677f0bdadbddff43b1d75147d24af912bbc5cdfe8a1a70a20c53188a6a4c761c009fe81bd16f51fbcc2d4f946c9b946e9b2b9d56fb86bd943ba95f4af6d43a49ba5ec34d6793eee9f7a097f903b73e0a24ea63ee2b350055e37d9e4a71af1ceaf1d5bc86616792ad02fa66a88ac06c41847c39f619dae21e72afaf6fd386fec27ef7e10065c8d87342584171a2388694e56f1f59bc925401b65e34abee5efa00886c8995424484547b926d0dc962280b84e79a19c1052f77faa5cb0e9770ae23339363dc0e262835d50d6e954340882900387246dd93dc87aa3c99f18aba0c9609b63674cd1d1c48862ccd6dc635c03543794e30563fd0e393b813bf137cbe1af41bc2ba9f53602ab06b13cd1fb38da6ae88dde8df20fea1d96948de5690e18c0c42e4f056db18eaf1f5e23a092226553d48fccf4fdc2b554fc57e9f42056b2c34981d2a60dc8591d6bcdc20b2bd1353e14a946bbe687cbc204a9174ca881fca554fded00182af204e173e56c94990f864b3a6d03677054662ce5af44c0e0bd2a1c4c2c8f36fb0dbf08a2ff41335f70e6bd1a3ee3f2b26dbb69a0d476a6c8428498f340183f5f83828648242d01c4a77ecc6f7f7a20ce54f650f0a2cdfe0542b1fc99f7721a3cf67695b2bd1da0b9bc8476976bce9a98f883152175c8b092e6d3d7cf3918c252a55f415ae0609883d0fc31b28450e3fab18a4787ec4e0fed366b20726a9e9d63a13af04428cd43b011f9638ff55f28e5359e10e980e35545e1780cc5f5c2e6eb8caf2a3fd06b788602fc641ecc1c5e9c5894dd9b8272433d37d324d11b0e9013967d51276c3053343dc3c444a8b7e67bfa43f46ad04ed65b603896dc86e9978b26c22a61bdcb244ae7a976391c2d9afab12ef4935b2d4b370e271f76d4f6c2374c41576d48d68321cf31e5c29fa0cc89a23132dba83a01b393d3a440d4436542f13fcd2496298fc55792530c5a42e39be2d8fed849376248df5f4bde8b3247d0d21dddf0f1c3940ce9dee54de9c8fb0cb43124b607e0ce72ce21afba19a1772a79f5d8b8da842224378537a56351fb635f5f44d26d169bc7ff8c94857e5d7d635bb75927bbc64485d2134610268cfb8876854c7a6e642c15937364fdff274bdb6bda72733db42885f69a8a3048bd69b986d2348a355274bd009e663429a9c4206d087870c7b41967fd1ac4a8ebb69f44d4bda8a82b8440695af0270dd0b9116883c25311e8011d36312ff46f10de54fd7ce86b6ea9356a6ae133b49e38d47e1e2e844eb19398787c68fb794144b48f6ee148bd6234d1757586a257ffa0c0059fa28014fd880af9c377ff51dc5cd41c5787810a3e481446a28f3d118d3a81d60affeb44cd9b88ae16e2426032b81269bff3864403d06a30639e73348666dc7ebd8159ae09e2180e2d3cf00a2459ab6b85460870e7490faf854da7f140903126d88a10668761583505ff47459f8c70197849e24bd0e37c6b025b4b0eed221a161dafac54d2a952b627e0bd0ee14be0e989a58c6989615ab4635f805399a24478085afe43cc61ee053e231cbb9a11da8cce8e3b635a7ff406d57e117a93e513ed3e388131e765444864f202b071f5a08300ed710c5d4025a7b4ab88f780e59616637ee972d887e9e73ab1042754ba009b8749025832e2d37e735d3d653e38d4b14139bf66fdfb0065cbd18c7b15571bb49a133c40e7e41b50701ecb63a7f3f7c531a44cc29c4fc0254c2b745289a442a2e81f2ec357bbdc9822bdf1dd62fb45377e3545fab04e0b93621c6c3fc2131b45244eb3a42ef805ad02d375457033d6f4cc631ce3cd1b22d77fc4d2ce557b6961b05061d1170a9a6227c0a64325788343d5600d76c7307520c7909530bf82b3b67e5a2abe090db257a822fe617db44719aac636f695a5fc2c51347e830493addc10447d0fb9d56d308e234f4a07df0cd0402d7b614dc6248b8a07267209d4fd07f4a315fb3adc45913c91f211dd7502809af46b6e1c18c667f11eb4d5a71d39caae24f93498957e45dfed87080ed013badde01bf5ed5fcf59211828beb5bcde9e49cb4717a9033138c34c20759aa3d5c3b68704b8b99920a794d1f6b2f3e57761b286a3dc2d3c72cd53e4700e6fbacc75fafe91a57c0f74abee7c3574a55489a40c893447d5950e905aea48aea24d601e9ee206db478131035cc4e95a0fb5650ddff074e38d60f672c5bc43c82012e02d7e4d7b67b134187fd73d792f49033d8f0141b93ca52ef28a693ae81555b9bf26940a884ef683226367ad229a7c2c41d48116032d22df375c13843c15277da8a5ef645e29cc95a873f55228b3476ab48f1d4591e4ea53b7b3d12ec3ecd5864064d8aa3ae6ac70cd9bab714b812b823090113dc229094f50adf499cd6b427ba9ecd3d9857c953cf0a9f826fca387d2fb729a999d21865ac8f8db29ea28756178e5bfc2047ed489e3882b92d9f53261189044d09703683ad10d932c3ea2e8b246f471796703a31f6fc43b785800711f3e31f020b533b82d64a1cae67681de69bf63e07a0bdc1ce69358c979927c8030858e13dae8e0c662d7ddf9132f9fa0fc7486d943f57d33bff3dce678bb762cda054c4627fa3d7301c39de26116437ac48018668cb762fc3a6c3c1a593d5c8125ce23500438216d5b06088ac5756227ca3cce1e552099e5ec7e7ae816e13a658e70f6e600f22e3cdab47489b9f763f94623319e1a73aa6c92a1c55f2162ed837a59989ea00d1e7fd4f930f45e66f3e2f72b5f786a68978207a185620edd189f0980bf242fbeb040a29747f52fb9df2a164c1904c3abb1128333f362c156b83a33c2fb6080adc295a0033ecbfda4aa44b79e0b0b7ac26f63c7244b426ecfac103aa211abbd3bf24c5e570362d1b204cb8b0ee34656d12665cec58a7162c67d0169d5d512570ee4c5706fa38169eecf3213dc502077d273d9ff8738b81126bb928b5e29e4e4fee9465c99bc62751cc7fddaa4716a1ccc58ea51d20ac1e45726b168d38f581c7439fb343d179a991e7672786d6c8c3824736b8be7a20ee0fe276ec0a22cd264fa6bde59c4e29d550f5a0e78154e9b77d98f7a6d44d37c6b643ff31a5b48977fd1bf822737c67c69f375564fa9defc3d083fbb0095800d0b2e448aaa30ba67713fe7f22f43406bef670b18b52aa0ff7b4c475100866b02c334351305744d2f0edfa1b6053b78ee5f10745cc1c67cb090c06e2e0099abebf45164ef9807fe293d6531e502e5795d800a899ce842b36559fb0abba9065c32e0cf4828a45b072f01c69dca176593894797f9cf6091a8ad7af0adbae9f437923749b648434aa9109082467b838ceeda11014e48bd4d9aee3449cb8ba12b5d8b434f8504e31c03164190d6f8c091cdfe67b6f7517ca230b660fc01d175cf552b62ef8007684ba71e01916b0339b99c7bf0ec3f1c53352067c89b0599e9903c944c77688fb6d5b040745f866ff9c62895a8471aa09c279ff5bc5493592d9360762435abe9fb681deca3d528ae8ec216d4ef998100bfa8b13cfa7d1ab52492219f49aa7cc5fe9dbc423cb1d18c842ff36696884febfd644c350c205ec2a99a79d5b4f45f0b1944d8f454c19bb01f9c188d769dcb6deb9d9e7181bf5d8b0403d6991e48a279aec329594b66955b0187f785d61914f7b7a55af65e37bf5f9a2e8480a67ff01b3c2f7dbfcdb92ce4378d65d365e99d145e1084a5d0ab3de902d2c762272fa7fc5c61df1e8d9b268501415f3c37d86b9603310356c5159fd69f74b9512789913d80069f7e027c4b8ff25f75e3b654873796e15711040a76545821a5e35be61b74cfea1700130240762805253fd29c3da4760d9a460a1986f633720e61706b6230bff4450ba4ddf95bb0498ef3aa54e64318b34ad99f455994e4acc6914a5c0027b390a50534563170b90ca043c4b30e0a28492634971368846bd029f18f5e4ac608ae445e6e896b44ebd08ba8799c79dc2d25b2d88aa561888d288c4fbb24341d49c647a07a1e7c0c1abc0f8c82b137dc9bf83df6f7895a88abaa2a7c7f9488aa7ac50791c67717a5405da09fae376c686ee3290044cbbbfa45e3e564f98b6cad50d91a431c31c4ffbc157d3ba294def0504a8f1b0d38bb6573f16edbd86fa0a5b322c8500605eb6c779131d1dcdc815686e7c7427db1d9c22e6c408afda2b9c0db03cbaca1548f9025acb17fad2a50e88b4c47d68f9cf6faeb39046bf04e2efb45373783157d52696e04b12ca8093ee25845e66cfd344098524b20f134cb6ea409aeb68e9aaa4ff575b263f470fa0288145bd0b249074152f836b4431737243b85595a2a4d6c99cb3d6f5f5f2ece58746bff7c609923fd620005e53ab32cd6cef1fb5500234e8ada7a9f5255be0331be21c78e62ceecbff17ab1e845d9e8e673e7523e567ad792eb063738a43af3a2306275abb6d2013304d8355a100d8405b8f8a948095160d774a8a46c01595e4f72bc398308d6a99df72e8b2cb25a744e43f82607172c16959b3c3ab7183208e6e3d6ba263182077112ba39c997d0c7adf742773180f77d01e4cf123d4b43d8172ad411a92d6a595fe008e10f0a2cd7c7eb6269d15fa9b12a089b692f40e88190ac3c0779e9c367ce92327c490194855b23941cd40370760bcbb92b307f6f61408a149cddcf979b2d0fa8194c10bcb123350bd1e9e283c2195480b0b2167f6b5590b91f84236c0e1a355a2151b5a32f0f85bfd588dd98e010a13153e2a434c81ec1b8e72dcc388e573f07f3aaddf902d9f40e3f611a711112a14946ee133354b830a87e4a52a2fb35d3a54114f5b22e67fcbb70259ac0a770ffb424950fb1cfb2535106ed97af03a14be582c5dd35c5f95711aa1ad57b63ac54a24586854559438a8059d1cd25e53b10cd75b4a3ee6e0f9ffca31f5b05c6d75ab3c208c1a1f4f05fc7b5366e63a970facafd68fac47d35bd3a82babbba1f8935165120abe7758e6469d3466832f957d189efccaf7161b51d4bb06929b06a5b894dd761179d05a67654a8a25d7d18c10339906255ea0f17af25f40ee51b9bd2f2420e02fea30a1a513047e5f1a046d1926f96bafa83ca3f2c7f84e826f59fa25fd4d93d369c60dc2e6262dd4ac542c54695d93b5ffee28f58a8045350754c3e8e09a44269bc3e51c7d2e8f9bffe85b480ce2dff74a77ce5c4ec1460e42173fca9f1d85cbcda4e5f75a9785523e8f86fff4d27a6046e2ef3119e971a394037075259bcb9e12d6d3b265d6a24f601b2ab7d729d174e5b1ec9e2396bbdab2c2bb33b486a8becd80400bf488f922850eb00fe03984b852a9b2e1e36c52e2e91e1b6a91713d804c4877b4a271d9f07739bdbd6d111b2a1dca1a80a4a718a1d82b442f1f7785bd971001e099de48b7f3eb4a7d86993f6a64abce4808af0aad2b86924bd4e1a367079cb5324054da250b74aa753cf5c8fab1315402ccdbd2cd7ba75d6326b3c60efc196d05194af21d7ff736c9d5ea37a8031c2f1a95cf3b45affaf5928c085f69d540a05657cfaedb5096196ca27c161bda1a475d07e4a3c427187a157689cfa201e2cfe5ecff7c8dd79ed074e6d3ed48895f0590cebfb97b665165fc65846321da87ae75383b041839416326e9df536e311b1f6425eed5f3e0748313e98bf159d76428cd6d9dcddab7462b17b57f51aadffa295dae4e61db5277f9de937ce36fda4ea4103ec67491f6bf9876648834c3858593e3171d87d0a33747983739f12c2da3d6dabaf5079500fbe832ebb00de3c2871050f0b7af028a90288088484edeb25d6088817e30437611ebe596f36435590265221c4a7178bff8f2410d92116a4dcb111ecc15459003a004a4e7e1184282c9189ed8219ab4195082c8853eba129692d79ada2cf9f4e74be17b2bf34c463c127ec1ce2a0b4022db7faf6fcb774622e5d6c27acfdd740ea6414d141425be90aa16426dd51f301c17627e41c054be01316f84188d0fc8d42b4c7100fdaef041987e32931e9685999090b515eb15478a6eb7ce69667e04912e3817445f00c478b645a3c1de28254401626b8c0b3d27f478fed9953be2074851f608867d4a8c8edfeb2f78678127e8bff2c44f02cf7b8410fb69f166a44500da8129b87fe9bf1000b50c05d2261204dab07744cdd4c85e89b25050b7d42364519392f58f39ef1d67e06ebc8a71197dcd8b7b42e3cb57a41e3655c3642e3257fe1093077a0f1a287712d1ba2f19272e15178da23e212699c2a758e8719636038a98ed9a6ea74370d14b83503669ab2cbd655c7657700acaf1169e5b978e08a08272b1e030ff1701b192101854858097bd5159dea3fd7eedff20a113c1a31e251324e5d32132b4796cbd346b160137db62d120b99ed3bc7309e5201bf1baa372ac3008f670fcf2e8aad10e54d3c38ef6c0a9f9dc9ac4773ea3e91d82bd73de1d2c3be501c867b84004656d32cd2eb69ac4407a10b82bf362e364724c6dd2fd347292548cbc79c2cc4cbe3e2fb38d20768986f73af9171b151b714721564d1afb5fb5a70485b14374fe5fe176ab7f4346f3b9336d9bf9769b59cfdbbfb87cb9cd33f29bd678278e5bb3105ce9a7f95cf6ff6024efc07427f4bc76604ea9ca1e888fb003b6b7d6f723fa2164348af914984fe262cab9c950ad887c52d65a2720acf07527a96dbe0a71df012504ec025ad69af2827461b1570c46785c01d34f6de7c863ae6723c58289ee4e5fafb3959a022f3eaf0a36ef81ef044f3e04c20b6189c4fae24cdab8f76d3a6b0c9e0188e12552a9a1f59fe1c1504279b3c8f7690a34771948974f47399701dfc6aafa27fcd7057b8d7ca7f0fa421e6abbef761268e8e9d4e66737992663eaa477d07152c28cf3281e098a588db46454217117754511276015fa404427706b2104ed555e12552968882ed9de52d01146f7d8ad2de4df0c14c390b15e625343cd1009f905940eaa2be05b6b22ee63c9b0a63e476dc4057c0a7520f141bec3df76160677348662f5b69e86fef488d8e93c31ac582c5a8fe688dd0fc2964576a6ab4d9c1837248e72857be2ba02b84f1e5ca6f239e8f99ee843dbe91cd5cec297a9224bb4911f2924b9e650a5379a3bc506f435d66527de804a367653a6186023d37f3cc4303c68a58ef6f01e517588fe8ccfb1e789f5082d353c91ba490aa5fb8e6613f167908b148222985c6fe20103d827de3044aca2399de97819445e1a6de8fc126f0dfc8e1a25e079df8164e6d3a9b8471686d08d26caa1df2f55b22ca57d770d6c8d07f6ba2a00714bc89b3221ddaa23285d26dd27263f51b6b0c082772391cb9b4689850eb762909d948446822932bf295ede57e567a2afb04c76377b338332ea01dc7ce058c791a6e402409c8e9ad2e3d3ab86ae71f059cdb18f47a94aa5702a411fc6c1ecfcae0eb0143a273dff3f2b1fb0adaa16c43bf9ed01c08fca84aec733cb81e3c5f8d308b0101108d3c25d4b474644206c75df6deaeb61d94d9a1e075427ba26f7762bdeedb49c5c51e34d39f49a8562f9607033260b6c05d418f04a65d774dd1957be511a48623b95003ce2b0c84e0692e47391a0c6773034edb711a8c022d0a4a84f42c6269425cb946442f6b7192597d2f6bd4f8352a88ae7a4f23894aff6b8411f8c908c36cd09ba25aa75beea4543bf41c617cb93c5406d211492046f6262560d0a1308f28c793f94de256eb00d81bf955a56514fb684368cbff8b3b690358162fdabaeffd12a5c64a6b8487e7c2df951a32910ad32a91baff45dc5244385894ae13be5f1409673d62b8c7fb832c4ddf3728707323b6572b234c959bc80046fd7a998c5dfe7f3b5aa8d9bd5340a2323ca75517476dce404dbfa2a2378c7a7f16bc9fe2eb9e36c0e3671268108e48b02295464f53c085be1dcc7bb8aacb67712497005920a6c40d344b0b57d864c4d632481188c1ea5c89b018f22b9c5a17fda165ffe106dad8a3e82fbcee7eb59fe1180c7f853d74aff8fc5e23fc7e282c1bc655cb84e65ebdce2a391da47e85ed0e1274c229804a3d62ef2e2207c4c54bab6fa0cdcfe85d97536f0ccaff06c3fa7fc2cab95bf816b61311b77fbb0bf201a9e0e0d1d86c3efaa69580d19ac1f47c2f1d27dd82e3742afb7012f491c47679ceadad1f38c643b619378b258d462489c06c810b6e375703da76d9768283249be072768eb2760428750c7c5d00ba1a961eb0691ae9c74e22d03f8589e7190acf54f0cf00c9b90a105f9364180b6291cea0e3fc7db65ac3d57762ba79999083a0c1261019a699f78bc26d4d1c4891dae7c8f46ed97baba4bac9d90ec3c8a705d37040256e7c60f9261441a22a23e74c0243dd06e118171f264262dc18f3a8fe0da7971cc5964c121d87419246d0b5ee7b4223fad42a8216654ff316ab931c17f7c9a66498104730c95eec0084697f64d401a79825674e7d69fc9268dbbdc483b629b67b4634d0ddd29d5cd1fa30130416d9b37a27e88c90b85bf8fbd83e713d954f6f944c1b2d37f1dddd57573a94cb80d0054a3afa92e8a23331974e8ecd52703d2a3ada981ee9ddff889ecfa9a281e318ca07408359356e515a8208dd4089a3258607377e843ad7081ed94cee0c50d9323c31c5242550d004e62b1755fd498474db55cfd8dcf500f70c5bf76e382c2b700412a1912bb895fa41a564bb38086a9eb06fb0a33d43ae482236ffefb719c25a7a0257d53d95fda109352016e14ff193af24a62ea0bb533165b283d90a1f0ffd232c04af1b8d199a63d91448656ea7b41dc0a307fb781d423ea4077a06741cbc9e0c6383060353663a09b0a9d41768ed38abc250ab8581f3c2c628735e09e1998519c25d299c41e69a343e5fe58176d314ab0b00351072598301b1d54ed5d9a4e10c0d940a1be11daf6b728e8135e10c90c3cee3182ef8431a29787398da7540c16253cc8c3ac92916f02c93dd85456e956ce7855da9fcd9b5ba987670e6c8117ad16529f7d9ff6bb223da4bb1959d5ba58c362c26d4066c9e85a3cca6a294bd6352f08f7f9db52bc1ac6b0ce204b8ab6a5903640fa08cd5f66d2aabd09552c44d94d028d4529b661fec3c7fe6db1106f39a6c3101eab0a84b1d58672d15ed61c2d86e0f59b9deb2785abfcd96060f7fc57162ae2dad63b4174b3eb09f96233499725f929027988336c352ecea647a277d425a82936900a83264b294266ec4560179c4c2f730adc5107042770be327a982458ba4a6a180a23c9723e2243defd10b706cac8138aecab183e4c8cf4f26a66481518c939d8c304e2f55fb70c8e9ca2d1a7982bfa17c3ac4831806d25415adb3099436cc8ba8bbaff10145d3ce5c28cb0ef1a953c47857e727868510230362359dc37cd4606deeac1b8fa4213ee7023ed95b6db6985983cd6c588d0c1003a9a2701c13ebf10add8d193e501822509748544b2f7a97259e1bc8d7e586c496ac255f926f6c5e71cd83e40119fcf3af0c2ec1a6ebd1b5af981cc0d169614b144b1524ca0423f6a05e18fcf3ce7f6b56959850781245ac0f795540e17bd508a886cb029546499a16226b36bd7b08b7a59f15414f70da9930c8134f885372864ee813c6878821ca5340b1f0c707e3304ef488890418130e085dc3a275391ed5eda368925d7093489e6c629f97a10ffe7dc3bf896f0db0d63944fd9a87d3cac214a722390e44f42b64e9c6343122a148280d595f337061c475a1604c94eb4ad6740169e2dadea9a1776864d2c4f5dea701efd498f7340a69e93adfd380776864d2e2daf47d41d148f31306ec315f5a2783cba45f0f9031707d408b53207386e6c2d4dd49d9283ec050fbdf422c195c868c2c830c2c1f6b572432b92c325816190e31be631964665964d096ed2debc42882325fc4edbe1b801b385b4a6bd46177248a0eed8d8e13c5c808fd8c88559b40255ff4b08a26cd8730f5be05a6c8887148432953f3b3161681e3a80f683b82df62489d73df81ac0058cb33c6158cc8e30f0b29c4af5ea466df11534bceb16355b2b845eb3067e28b5f6b862764ce2fd05a8777fb91d55de6d4347449eb9a412ddc35f5bd5047df547338b21d41614ba1dc88bdafdeb7755e40a15fecb6745274ed4fea40506a554c32af19e13c492a42a2ab7eb014da3cd32efed2176bcad64d5e247cc71234a20a1def6b261b67e13d048208a7b9d68129551b4d0eb10291379aee8c955ab60478bd5e5ffa41aca8d95fa58c5102a97136e401cee68405b9fd3d623e2cc1dec004d81f5a7b0cc34e82c0de1ffa4d401e6190dc0cdeb0f8f05172c474dba08831b5a06f7a8a9fd74e026a6bf0150c11d1389c044a704fa58cead6cf4089cea6941f0a6f259a5a921a31f72c1b32728c059f93a0edb14b2284e8080a544dd0a5960752be1a4da6d7c49b958630899e0a7ac6cf2e8c324a8823492d2e1556378582bb9607d628b73cbbb3b91396dc4812b81052042dc49f3ee982c212f613842c27f794754d81700757b573bcb310f19496f58b22be56ea8ca082376fd542156bba122bad317b783f853a2d85199e25a8e039b074ec964834042e660948e5b5006d00bcedd277b426f7b33b4349247340309f74f2c989d6e690fa4736963337d24500c402c0f1d88c3c35e211d6e026823be79a4e49c41cd8c1d702281c7420431e5e9b00dafff0065883171740f13e7f411b3fcfc239ec081f404421dfdc410fd4e49c636b006d6f50ab1ea85f841e5c62490a7c823b8f3e54dbdcf48a53e2fff2f11a58753fd8d501a09fb5526fd3ad61ce377fddca4294bef2c8d9b04019db0dabd5cc455877b1922cc5b67b076c070cbb5e359129bea6c440ec9eed34f5fdce47914f1623ee81c15d83af90b8152d3a8b63966419b6610ba409eac48014b4c099caed49082c2f2cbb254671433068e11f67bebcc0e8f92ff3e2201537631ec6519383c98402c9da3ff796d99825ca6266e43dcf4c70f48dad5d91569c9054544d2c959660f0406834333bf46696ade13a360ab75dfa7a87aed191e44c78274320a26a5cb7c7e1ce8a3cd603181eeebaf116051c95e6c98a14320f054ab953804ec763c230033bf76808b9189a2f39497d49bde4e5309fef9bc0de9e36602f862727a7348179fe54b74aef7af2a33ae3daf2cdd05c9c324ad21bb4b851993ce0f475903a0a678299b169bced2ca447963679ebf53398740e838f21c1fa7f7b37a1d56824d2ff0429df53136b73c1dce0caa508ee502eee3f5988f90c09562b1239f9a64ff1be30ba7c5ef329f6b0bd1f3ce8c7020195087db91b75ad854eddda02dbf092cb920e345bf884710950d1c8d6fca0fe055d0a3c15c601830e6be4c7ddb4b00088e411a61473e080c539abd338f96087cbd5639e648a644235413b4588ad8afc242867fcc74d9935fd3c7c30cf5d37cfee8877cb9c7ee4c4bdc3dfd84f58653a20d80f639446566488302f5420ee49df9efe67e8bd534431066c11c93d78ef4e3d92cbc21035698caf8873b7f666d0f70f0771a7fef3bd8b574f0cf9da8eac62d47b87dbdc25cf229b6cc32df95c007d3388fe8e89a30ca8b8b866c8d77eca2ec42f9342a83021682410dc5c1285d46bebdce11989b77cb91b596568cd8e4746f0a57ae75630d4a4b605316e1130f5033d831779ce8668be08983adeaf876b5da77da582359d822513a5b4c93dca5a5731da991107785cc8b70898b0c6f5fc4e044ca9509c54a7411cae0a4701a45ab244113065edf62c9e3de2b0d27ec1cbab061384b82763bce96772366b2c6767a3b658963ff5433ed35d7f7618f02c135ebb6df519fc962f71b929944e2610a14e7a9e1e09e82786d903045d47a8395cb0573f2124c3306bb1660a46e3f4088cb1f9fc1df29a4887f35e214d14241478751f986b1792d0ba768f30aa55b604957bd4d43dde2382cdf4a2062f610df36989dad503eea3e9e09bb98a6e90598a9ada4dad1b76eed439aa684a81e88c15fc6e7368c8372afd979b5b0ea444746c8b5d89572324ec408051ccbc3d3bf768f5445a0332d1395e6cdf7c37f01f68cba7bfaa99ab8a43025acd96eaced72a860d991f6a1dc3507dfbc6dc301158d94bcd5a5c8329de95bac8cc23cdbae105ef2f87e46888e6521728f21c74b5fe22f49326a5294791dc4b2ee35c7d7895b6eb78a000bea0b9831bf882a6a623d5cb7d748a1c0104f1f2982ae60ae20770e1372708b7242c38825832c9d95482103bafd6dd4ef46854b1d3dee1a214bfbda6c97f0831d25a0284b395c653465f1a284cfb0a5bb8f527ece0a1b297adafc1b2aa2774804c8c28b32e4c64ce8d10a5c4d6be79dc794b38651db6f696497d0bee3c24756ee8b93bbb46ac87ce653ca8469e599be78c3cd3e0816e39446f394c45fdb93a75d53c57f850239b6c78120725c2105ed1fc71058a6e37726bc348d4462929c78f9652d944aec94c47dbf814e8a75bb94fea0b2c74e3814472f6a51e70ccde545ac13c4b9e8f3a5b23445021a57a85711c88d672448b08c6df974487455101e965d337b1e7fb2be134e872193fe8ec8eeb36b953206f304b2c4f0f4ec7e11b6e2f28aaa2f5f7be93249a0831fe33f9c5ff63a0dea3cad05150d298b1f8a78c4f20db374099c029e5bf79f277b0b76c4747cb33bb204c3cd32f1fcebe960ff6cf5b153f40b05c34df12db6319097c2490a28c39a77dc1cada1611ee8f56054d245d1f2cef12e4cf05a704157681db0391503d1320101a309ef01c56a8a418d7676b0ce0818ef8b056241de3154d7f4c3f07de10bca0799ff5b3cb60ce14ca0208d4c3c4760320389ef0bb001cfb2efe2fabfbaf6529f4773090b1163f17d3e09028cb51d380446bf2a687a1e6b3021591a860a4d3f42e5ac95e6ec7ea65ada02353604bbd1ad631a124b6774a1a17dfe520e8638fb9176192b61d4f1d718ab2d590d634fd0aad3fef746dbb52e26ce3ee7bb2ecd8f40f87619efb78a847c8aedb3893393e72ffb2a7f9a45ee6a9baa3451ba7f62a4d1d6d3df1b7d7763eeb25ed06598182120cf6cad0e7b6eccbdd3f856ffef6122e655800bc865ece903a53ccab05a5372c2b0cf368ee6b357ee42c403a7c83f69264082bb0cddf1901b6d2300c30e7b16febdfa2420ae51bacc49a09e5b8fc68b64effec6b377fd893962af65ff96cdb00cabedfc7ca916581ab4ac04b9b169f655da6f39105e57144b441a2fee7ead6aad0be8273ae8b27b18f23f49e95993580939b835a57e82b470c9f888d71e4b94526605149a7f433f72c1833111241686e0a78163f5bf184478a7955322cb05c998b7d6573683506e9e3d739255feb15699a6216942b2ccba4760844949eeac52b61d1cff9717aa25f1fe593e97dd49e07002f18c9c6bc4fca9370dbc9bcb8aa9c292dbf92171044f1aff02ee2623b94306a495949d78c9add29d980dec93c8a4fab41e0a3db9b6ecbfb5ad131d15436b83bdbfafb896bae9ec34cd96a1d6afb80274c4bf34aa7ccd1a7ff62fd40ac9ffe4222bf43c45048b2b305289cca32af19e4a9d12d5a47cc6e2311dd10a09ca30b96eaac5df96ead1bbc724f09912faf9bbbf81dcafc3c8816dc80c218878536a6fc0589784a749b445791c7e5f31301b55e9d70bd058310f80365f6ee0712351ec90fdc6b3b5f96600abe7d144609f069da0052715cdabbaace7043f36daaa00fdc42b8dc1dd0f589ae2bd98f7688355c49d758c8599271cb6ab75e7a2d60ba8f6bb513e4fcc8bc7e29852d3fdb159199ed463bfd6d7baa92f35cfb36ae7c51fa4dc6f4030a9d3c292f14dd6b24d4e0806e66438ded9fbdb00054bbe38076305d6e237cdccc5c4be57b9deb028ceec602669aa380dec3b5acde67fc8864c7223108311b04dfb512a5b8e1a7885acc84792320295afd2360da621e091f33bbfef3959afcb44280a69c5f4026534b44b407057f0a0da127dfc8448f4f0b9fc955046952571ecf95a8563e9d95e1279e084f2cc70ff236087c2cd0a891e1da4f396526b85a6376a7f568f579d6ed27cbf25e265aa023bdff2169b98cd89efb75c720e97c32ab23e24854f651524d263407f686cc963e965e0f6aea48f14eb66782b5ec90d83fbd10e1621bf45194a3ee6eaed6e98974b8c621175e26597d08f0bc05b412c1f60c959bc172ae6886745b954c77974c84770cfe5231c97d0dd4fb3191acef99a18bef9b88ac5236767981fac2a5889d897b6b2290e45a9ee5ae209ad08692d90113f2bdafd7a0ab58aca5c156980f03670340b82d620eb0fc381f38110d7518fdab990a995f176a09da477409307df3eb35adabb0297ff9faf975bb7584807c6ef5569b7bcf84944642840593a7fc75f16bf3696367d67445970c415b80afc58a497397d7fb88ec13bccb374ce2fe057fda5c4f182b2750fcf780a76f3f632ab59825a63c9477ea902411245b1a3058749690548510da2321951081e4436e417175e57d5c375729db22293508c7480ffacd4f77fb6d1fe1b9c41d4348b031434a78d8d6c8f5538baded954e0f37a75f25e63d15beabfc924970222f443a3f81ac3ef57b162449bc8de7061d6f17cba49bd4f19899e9d2c36290ebfcc7c8047171e2b5fd9ae0ac6e47deda909ab16102ee303d7ef86d9d64d59880c91d9b3fa473f76c5f53f73e1295352f5a65b2149e520df7ec1b17ae82185d1fd7e67270de14f4a46f57e8377ebb5a1db56f181a02dd6562b80745f34339c667cd9004df7c13ba974dbc6eb00c3d1f2e4aba73ae829e991d0088bfe9d2522d05a332e053870309bcb00fb9203997737c41bafd3cb96a176ba09b1cfe499923a903a1316890371e85d95256d8eee8c1e2232d96ac9bc6bd90603660a76e80bfae53b81825b4ccf816fe5c6f2187febfe79f3509ccb7afef4ab0bab49a19c408e58c17abeb602dc66c1b8737ae661a0ddd164536505be258976713aab4265f33373b92dfc1dbf410f1db4d63fc2d8fada12dd0c5aba730512b8d6fcdaaacec63e875fcff3772cc71d324b1895709088736040a8219bff3230169bb6103cab2c51e997b808bd1ea814ea9144e130e9d9c1b3ab9ca2be7e48cf73a9c5a1e966a24d60b4bf73909bc470f9a609d7491b5a6863dda3cbe36c3f1bab1ff391500eb79cd36aab0f8ddcee684742e10a3aae5dca8859614e4052e58e33caa8a493f6be1d0474d6ba1104c65a1008151de43301bbb9bd30c211a682c510b8fb162398658a81e96932b968a6556a5c0661925545023e1b09eef8f33224f64d4ed9d968c991d5a2e69cbb0aa7b498316e040405c731cd3768d5a191daeb5c29e5829a120af14dcc70b6b8a51121088be63b2892a339be8c1449d57e03e3afc3539ef2f57ef75ab4bf2061ced382c7baf2ce1710babb95eb7cb056602e3d22209c913cab88c9f959270f287696f956116b23561b1514b3320214fe7125959b881a9f93dce52809583b854d8728e355baebf30552b69019b41561604003cef0f9100921a064663cd5126fcc72ef696b369506ec75601adefea6fca5b44a44d0bf80831f894ad75a8bd5ccc324119757a9ad21bcd6fc542f2450a3ff3b7dc491e61941a0f9acc74029771679b5f8b2c367de8ef8396f816031a762ff18c32629c78493c8fc02281e4aca7f3932cd4cd9490381847c37fefb324b100a4f7d34428e718111ac91578dbb5df9003510d34dc14eda41368a9b6241ab1e5abb5bdc7aac8dac51f0c636ada4dc52670462475ffb17dd2b4c6c32856b5466b8068080627246275e0267aca2b7d66d1630d0b96c156169f052bbd8a707148bb0aa0ae4464fc14191f6c5a2641dbe229d97fb3e1a4bab0fc93398a5bec1ececb167b039082a6f8ee020a55e336c16c742e723c42bff119785407240079b3c00f9d8f1ee577111699b3994db0567d1747dbbe454a29407dc989d3af5e6049d0ba9a71a408988c7b86922c3a5359fe1b06504ed8b3aac4feecae077ec94b392d67ba6a74add789645fcd19dda9ce244dca847537333bd8769fcfe01123cbd719cb163fc8551434c9c48c60de79d5595cfbd777a4078af9ce63fd256679b1903c8b078e57b8cfc40c49e76118ce2ad3d264462d895c9f0a16eb9485382ab92c1d52b4c7c5c7dd8147845c453cdb8bfb6d88099735478021fd0a902da6321a417bfe63084ce03692e0d68543635f6a387cf72b1c64b7d7391c37d0342573e30fe7d494e9a3595837776c6ac2586dcfec716b0b3d0353b2bd27fb9e163eb7cc42d5c3e7904107a01c198389f07ea1ed1b8844adc86a017c0937be6201d06c4d75084b49a31eec52304a359c87a5f091618937b1a17053a4377542e4be9bd828f667bb3e8c72e621c3de2fdec491729b28cf2a0ad0284f9fb94bda8b19772f658e47792a029ce487e9ce332dfb8732d61c19d3626518a45a7c43834fa23e01b9794f658753924d1d9520facf9055a8ddf583fccfc6bc3e0693292ab5c95fb2087c3dfe2cc1f4360be5a85f600c4001666c892e6e6ff07ea3817a91aeb309325b58ffffafe1374c5700859976177e39fc988b50be476cdd2fcf1d273484fe7d400d95cceb4d0c6478c55749fce6006aebf45d31921cea529388d6204e0eb788e555e468f377261ab9029184e66bfeb67e48f15dbd11c5d7e9ea96328c61bdaf23bd1b0b92f6ef8806a48af6bd5ee36596e459fbaa1ef8308bfd7fcb56eb52ee4dcd9f3ec3fedb0bf7d7331b12abf59e0df5d8deea1948d0e2e8686c51f5e9d24ff6cdf7caf27e7a716c0894a1bbc54440fefa5e6063807d1cddff70dda00ddac11ac5ef612344f0b39e046ae07455b1802b791a6bfa81f1fe375c049230f9b1e445cb4f3ccac5cf174bef9136b95d995c25628491ef87f51f2f4c2113548fe4235080879f530d6eb20ca2465c4fc801cd38b539e49d4cfe20454414c5c72214e0f60ed9111ba498fd609ac5981689d64cb9baea477c90623b7ff006c7e9faa20b570bcd8b5fdc3f7d0cb378aa74799def56aaf5415ec377aed07c1456ca3b64bbf93a2fc525a05eebff9ad08a14980e320aca6fb934336bef531d78d5a39f6f5d28d842dd2d41e0b23a6f2e8ede56a2f49812323e2423fe9537f27aa4c3caf1ffdb7ec232f1295e7de7296791dce9f3c495b606a3ff05512432423ae746416183982f60aa99a170d798c526a506d6ba355e703199fee4049d99346d9000bec89fb08e44b3c9eb9e0ad57b17bb4d8e7a039c531bbbb3b0cbad8bc0a6e3c3ba397c046b3bd9faf6379f52b9c77fa483e5b97bbe10cf7ba4dc7e21f6524db0c6dd609c13d033a562ebba06e61f7468f4df6378d874fa40ea430d5860acdd1fb2cdd899761cd81504800298741f9f7d34ea1c57f516a749cd6105e920e51991c0b8bf620a4a25cb5cab507e6abab9548c632575b40165490981ffa2694bbe82a3b1df8f60cfdae8adc32e9ab388c2f6b849b6b8c6f87316af360ecb712adeddb1b25c06218b08eaf17515ab9fc59aba26a8a64d5d1d87958278ba10e9b07068f978c634470b8d88b986f54c22e7eb24306e00c8850d3ca4594dcb65767169d482433c31ee2fb50668d33179a2f24db802f59a01647cebdc81c7d68a0cf52e1f08cf4faf25150ecfaa710a51a9114a8d319070e02461bb5b62ec00c3ddaf31202d68353220dc80e2f24892408dda2c8e6c24cd44c1972d45a4bd7308e32c423228ebc1c9b84e64adaed3cd2261d573f7e0f6b970af1aca7e88c23b89e8acb53a9464f7fdc4df5d3429dd0cc3138de81d6ed7fa05c76b32de9a5f01138aed9b8267754866c76bf0b464d49501384006710fcbcb8ccf087e6f4ae07889622e19e8d9ec583b5ea61192109943e013d67acdec6a94b581ad837686c7abe9156a47b8111c4afa6be3d97dbc5aab32b778f5e07908870357462290791f9ecf1ba09be7d71bc4a82543d8f64b1b009f79b7daea47685374b837040f65feffb96b2e075eba226f2d0f59d0c4c04252b37b872acc9229caa3438a63fa63504db6761d0ae051c36163c03f73b1a27ce00075b331422ed26783dfb463a9e8a0a9614f4b6ff01d2ac6a8e390f0ac07fde3e6d432de2af26cd3163edab4af96feda274c6d57e4c843c259d03207786c1d4089459ab8e932a939222f1a4e6b653b1a3f0609e0b89c3ab6d38a7a141d9d6a68ffe8d4b1456d27b809ee40e03ad44b855c022ebc12b496f5e4424a259d7419880fd532a3ebdb8ca1d6acd1b415d77f305bd8785478eb02cf92ade158b94844d44ad7293648411d7b7d2588836d7e27ca54b5d2226a756e2a7cd7506d2b7681a7cdf30053206237ba1377124c53c9a5f7f57c1d0b508b8b8d73ef75a3b86dc54b38d81c9e55f17c6b0d386021ff9d3b39f45310e72890f73050b31f2396b9ac9cdd14fb7b6bac9992134ac00584bd352a1d18e84ca79a330fc92e8f9c2ca3b42bb21064e54bee9c5eb5e171c388d405add8389de1d842b66d7a839c152b6a2c90bb0a198baaca6b38ea4082f65c7b16d0aada72985b925b76fe22aac40cb10a7cb2f0e118df2c1f3d338728100004b8d3871b8e20d1ac7fc1e0138f56e0b3bd7d639022eb25e07d0df2e9a3dabbf217c40906c7afe8929d1a59f717bfe6514c636351bcd790bf8fc09e1f7ff63939f97b23fd7473b0255cf9a77e5c658392c774127e70115163a944c782d96a74968968bb6b8ab808267fcecfa65836c1400702dd67eca496f933309a0e02188b2032d88be4438e99f7446c62f84ce7b11a8248f10306a0f3a9126cff7617b70a6951d38dc74f2aac360e9b85f11e7507b5b06cf4664b465a783d44ae0f4a46ad89ac4fcb2382252f2ad746959395ac8d5ae014c7087e2e5fcc5785c330db98c63b9e7ec4024508fc9c47e0e4b9916b4b818198475544b6f1219ff526139b644a0ea0d0e4088e5bcd3059c4dda9077e5311b23d4b09e7f5ec77d020b0d0837d8330633c0e22836669d7ce24439ce31778a51830e227265624aa53c744a4f95996ae73caac0ca26293a0daf305df3a07d69dc1e309ec31b6819bbeaa495bdaf7e7f93a45acc68ce90e92bc0f604579f613fbd55cd036205a84109198361ed0693fbed47920e6e887dd097b95ac05187a1449738d5219926a07b96f9239fc4f6cc114da2b49e61c63a00c6231d12d3c2a178cb90a8aa18bb4e8b4d657fb7d587a6404f8e30b9fd8f35c189b5099b7458169f8b0b5b76dc61ba1fb94387b954f2639867106be9acda7da3ad378585f32d764209867dd4d53a02ba81957ef60d880fb008f590c61ac7ad51c6e2d887d9254f7e321afcb71c86effe0ae785554faacbca68deca289af0bda7747f4ca8c3e574697bc3aa074f2a42ab439541337aa7b40323978307ec34099258c0b17860c64926e355fb62a1d622f9c769d4063c336ea321494e2233d89e911e1e0c9519fc8bc8640c2f4ba8500328393a37b36f3de24bd35bf477a4eb78e7867244832341de7d9651796c50c0cae4b2cc33c7b69867be26fd2ef177c19dc2a0f7c836b3a7fcc889eea261118e625498a2834daa072504e5c4df02d227ba1c679c2daa6ed3e663647dc6fb8d977f0f011bf9b8391ddca6fe56b9fbebf4a3b4e6c5e214015fecfc8d9c378d0362ce2b9c2ca003c215575fc25e118e6a54b51f2d0c45bf8cfef736515e55cfbf1a282ba6f9d7df31879b5cb8a515fd7c63d1ba0abb8de6cdd36a3197ddb7226716038551ba1ce0ded0eb4968ed2284b8931fb05741474134a2b97861b335066b11e08a22403c09f6a1790c8a0e1840a9b4fe46230e95c4c03258ad967d53403a09fa34e0daa5fb33bba060eb8093140ac0402b8195144acc79b2812110b7a416e95f4ab52982097baeba64599747c8a0e3843b1148d810808a10a1d7b99db243da0d886ee033dc54afc3bace84208c14414a0b1bfe53ea47fa0378103dc86388356feb0b28107ea7d5833ea1e1d2b2770607a8fd575932d1e6d090fb09c314e781dbf21e8a65b4d5209057893c3b9509e030ef7653c2c67accb1f5626f040bd2fabd41614ed37117bd0dec71a401f103bff93d983d21d056651ac2104aa5747a759309a59a5318929492da0b51525b5709581b3828ee9e66e54f4c49cbdb35998670821acdb2a6041441dafed221c38bedf9cd72f6ed8e402e7345c8a6d76e55d47bc7da6dc42a9780c6be7d1f911919bec2df7967b6f29a59401ea0a530a2b0abf3948fb3d97838e4ccda3fdea6f06d96ffa9bda06376fde2e2657081675fa2aaa4bae22ba024130b5e731dd33a7fe762e757d9203278cf00089a92f26fa52aaf5d792fa4b69ce3999b4eaac36383928305727280458b2c39844ad4533c7e84252b1b0c32b49ac4b755a2772f015b358a91158c62bc618638c71863f93c6abd6498bb89452da3981e943188f764bc0945ed775fd5c9308b7524a297d965d18a6318a514a298d788292a5c4ab3bda18f1690853ca512be02d4fa3e01e59eb85bd4aaed6fa53b7fc74e22981e50f006e26c0f27182744e4929a574562a84498a825bbbef860c77f11c329fb9da45fee25d1cfc4cfe6eb838f82f6a1c2e0e7e3866fee2337ff19426b0f699bace74f203eec0922924318529b6ec6147a4278c9e683d116447a42a7ed8557460afe85068afdccb61dd1e3e5d87ae3eacc29a4603d1bc46ebd0e86f53e96f53e96f0b8a49dbe9847395b602388d25c08f9b07e0c2cfba1958671d0d2f9525f0c5db3cb26e32cd6b8e43751b1d64731518741b0d5423c4a2b9b939cd63d43c30aed24034877120d56fc095c81240fc99b3ab717391ef8b9f118f0300af798d0612ba7772b2a301ebb06e7c134dfe3c55febc7ba7a1798d060ac0690e8473d58558b1fb6edce080f1cfa379cd8354361762e1a8b9002e001d44a379f0d4dc4603c5a0aae980c8d2a921b274e6232b001a00fa487c64e168eae15fd7a1aa1c5938c74d93238b850ff8d7315e39e9ef864a55739a075da571d004d5e853153e8dd08e11ebd07bdc17cc2f320c1d55b2dd2c39eef81f471b1f9543b9515fc9a1dc2b31eaab71df0d190efe06190eeaef0699bf509de63caad368a023f8409f779a47964a7ff1358f2cac796caeba4a037d9efe6edc9ce6386e4ea3838ef0a80ee341343860fce6373a4875189a65a3bfa8bf1b36afd14147786e5ef320ef363a52158e9adbdc4607dde81a1da90a3fb2845837ded97293bfd3bf9595538c95d30a985af1fea53c1bfda1fe793c36ff3e94cd4d6a459fb40e6de99e7289b2c937fa5bf997e2b9b149691e00bcc6cbdfb782c3f372ca537e936d1ebb93de41f74d49396a4bc92abf7103382239f96147a42a92ec30467149e9a7be2fe62b6f7116ff3e989ffefde5dfd772ef289d8ab192af439c9815f0d482850e0f73aad19f77007c2fda467f2d28971cfed48dba4acb498742fbf49843fc7907c06b8ef3f7a5ee7de5f1f836f94be91b0078cd3f4fe30080aef9cd6dfead681c37b7f98db6b90ec559e5a7bc83ee1595c76e07ca26d7e448552df18a2bae18c346a96cd4b76e06ea2cd967822a63c072a31ec62734f84c701e759b1a1963c63ad2383de63073502b72e33073543eef3373eaaeb9cd551e73d8cd50b1f15ee33d7a1a6782de6dfcf8a9ca0be3af4883a7c3babd9b6af0e36bf0a59d20d63813fcf59c722fc77dcaa129e52939259b2ebb7853fea17b676f51ff6c42db543dcff33ccfd321d0f61eb32ad364ce9eaed21f7ecd855834fac3fabb4173d57968ae3abe4a031dc19a47f51a0d74aac2571d08d35c88a54363be7664ddb94be7c891a5dac1e91d77d33ac01c592f7264c57c01c7eb502d637791236b2647968c0c5987d6d0fac48b4a2c94670b22ac14531c31648492e719c111290a485170b2b1479af2e900279d30cb13d8886762028e0251c7c10481a7b89b5dc2d92312149868b69b816198866d5cb6d372324061f87279a509f84bb16ea381208dab88b88bc0d8e5b6c7e149ee31c1eb87281810629ce088048524fb877fdba3bd59064102fe8a748f44310ed0448c14c8605b0510695a0706b8cb35641b51c0564be0cac1240537a0c0434964b58eb8f4cc67f2801d339d00ca9eac6b490755d14d891d919670b4e9ef8c749a8ad82bd5f35ca520eedbabbe617fcf637f4fb7730fb2bf9cde1e74652beeb96d0faa029a45a0820956b0b6c955f9841e74f551eddc29d5dd39dd83aae681b86b5a889523cbeb3c535e81814c924a44acbd0fb2d73e8ff058fdddb0effe5d1f0f77ed413cf6dded3b0d7484e79ed34047421b5a0461c8ce01013f8eb68fa7b4af63804eb12f5d2428f5abada7c4e27e3f802a380d52d544c08f2396d59ad641555d06e2cdfccb4a920f69c414ac0004ebc8ca0da412a52fc8a10c4419514ab964f547e771a0abedf638b4dfdbcd6a52cac78d6132874b88a12d9128a25c4b11a20c992883897c72801963a507da57708095e86afbfd3cfdc0c6da1e591fb8fabbe63f1c1e178e96b0b4e3b0df74d0111e8f0b474bb0b45bfdd1db47168e1c4a70c4102c4d7f54dbd8ae694124492007110e23132332294b25ac48b6a40432a74c8aaad9a2524a39d403a807146cb284004f4edac90999328746e1c8ecd3882329a9a41ce5516d3c20ae706ec80f20ae6ccc503b1ae2335de47efe5ef192d4140a6d1b49a16cc920392a275b14089245dc92886ccd1cec756271a9051418b523521258d8a10c125abb6590dad1101fda98a03ccf0425d215461b3b766551f2a8966235cb78b020324e930c324169512cc0f20371b523aa6494c143cca94ee80191216cc9fdc4951c9267c981945b72609765dad4e57376c676ec966699cd91599e09c62714986047437c917b1b7475b595f27634e656801236e0d1ca0a74d4b9df4eb6e3b31db31d3b2924e50c4f28baae1e98a09884a8263ca8c74d52d745012031584214540c11418414006104de9e882c8bd3e4046068e3d215c5d251a4f3396c24c04018b1a37e2887a2b641700e3a35c8a11cae5f55e6f023759559ea1301c65b0e692bf8e41daf8099835d0ecdab6e9ab31020b114b3b023a5c28ef4093c318238542541300afede71083d30d94b330896bf7c80591831f4220a4d8664e001775dd049c05914ba8913175bc057145e0081892638a16445d2124e1ce118716f8cababa66c865d95ca3fe6aa3832f3c2734639678c736a261f628cd7cce88565d955338b516dab5b9d71b92b9eebb83859b6d34c756a45544963a4f88a2debe903916a414e5aa55dd9588e733bfd08412e4849c5555570552ba4a4424a2aaeaa82ab5a41651862a497027468bd2a4e1110bcb00833411007bbae6b63bd22556d3d6d3c95f6f52294f858899ad004c7040f5406508530309102900e4ce108150542548886868650c04409378a21a965041549b410040a2ad1904a9568e20ad6891eb899e4a1b6f726b8b03dcf73020f3c2743406a8208576f134f696b242638b097104b6042899d691bdb981478500210551852674e5c4213a820a31c494111116e820a9638a2205052da9ebc2ab04b14619f294e800524f410042821a8272022a269014ba58070c2c5298c4a5df8004b88d8f5b50a1ce22ff961633d84a0c3298c4a551513b0409405812dcec4e9c187ca0463820b80a00da8a28a1f9808a2d9002b8a2a120964b5492c5155b44c48821024a2941346384c4c9c6c6217865d333d38a20411f86a22c911281c916246892356203901040e920e7e48813a7dcc6e2bbdb04ca3503bdb861201ca673e81830b900c51e18925434e4c8084218e3423f0408907b0105cd7755d54703ac89a58caa008418684232932278e30021eb22986250c211484921814e14715424ec0030b6909285882077a9044032455f861a44994a112f4a00221062110e2c108414029c2083e3c81082450020a4a3c39e22ea04ab00155020a82b8e19ca773eaf03a56694ca5309ed8a51f336710e3c35ae3f55a8f69997ad51905c7cf4b28314efc032c631421a3ae494cb298149ccc7f1348bc89977b654b2151e29209e298136099495bf64ad244132c68a289269a68428917b40d263b9dbbd22bcbf5dada966de42278ddd2158e30d8e78561dc962d76ed57b7635f35ad591d0aed6cd27a49ebc294e9f86c08269830c204134c30c1440c39ec91b9589164cb9b7e2bb792ef8abef6869747aacaba979cb56b7fc9b4ab616ffab559ceee86171dbb1af226db99b25007a16dbafcbd3fdd55def343b7ca539e659dec74387777ee3ecbbc977bfa2f5987de1cdf8539ec94471acaddedee3a73467753feb27b3cdfbfec2f99e679e97ebd9c65f7b22987dec394cf4bf9521ebf72eff7a6fc999e729567d9ef4a4675ddcda8afe48b8af7f15d0e4d5d77d353f2d7a53c1ef594e3fc79c7ef7e5554509953d19187dcdc4d393c699eef9ff797bb3cf434cfcb5de24dbf387bffb2cb4d2fd9e559f68e73f62fbf3c763c2f9e0e855cb2dd718f9d0d01d8b2933e74677a87b94d45c0f211332101d31dd9b14bb9b12cf71c42cd4f488532699461617bed77722620b03dfda3448aabebe924cf25236c7a242988b250c5fed25c4aaa4a668efdc9f6f68c6e07674e04b32c83048e5b66bbbd06656703a7b4d2c555685f33cbafe5b4aa1d69290dd394240c7a4dd3cfd9be9aa6a58e94ead1d5b02cc3324cd3329969ba4850fee791ccfe9c331d6ad7ec0c1baa0e3812210a4b5b861d874084265b7635eeeb891085ccf2a4a96482365707cc5fdbb2c3a5254f971c0aeda944053d3b5c1eca9dca92e7cffa325cb2aecdf7207864593cc434a7c5c3ba2d8c8c33cc261206bdb53afcc9e81294d29487314f274a2a4d5067a15187994df6d1ccb17a87cb2f4d1265c0c44897bca5f904cacc6171fab9146568a77f2a35845b29b3b553aa1150432dd4af96e5cef548cb0849f67588ae6ad25cb2a716a7ead0a616e76c61ec6bcb9ea6b0bd3dd9933dd947fb5998cfa528634e1b607491a098e7db3c9d4c309f661da34ae511d4f45c8a37f49c1770be7d38973a1cf940476c4c8c0eb35b1de2b0edf3affca97bc7bdcb5b9e7beeb1bbe89c81f4bf176d43ea3a2460db0309b16478900c3af5c9922cfda0c9d2cf7682df8d5fdbb7e899348f66ced53be8ad9e4733899983e91de14c2214da554f252dd7995687a9bb5c67ea10d3b48ce5d4b33c54c53eed887414c5c69ed97c6b76fb9ae91a26a8656b75147004b6db3e8c474b33c7c9ccb1faa7ee2733c76efbfc43b7cbe791866132ab9775070bb85c685f8cdb5c72b663e7807f2ed1d54f5dae33b7fcb9dcea7de3cc61d1a1dc4f4a82b2eb43a16d6dea2fbf5c728f50d376a03becb1537fc961ea57cb6947436e7b17d9edb4e85068db1b2255fd5a4ee91c6abf6c4bae67c971bbe4506e174d8b1103070704ff542ab503dd2e5ab68f3af4bacdf72e39757f680dae25c7cd62f7964359a7cd7a6c2cc7fd1ca9ca6eab57e25ec9dc51998754c94b212aac499b1ed37b4bdc53280c4200c73cb4f697c6ece7cd37321de61edbfa08b1a6651a7387dc990e85a4e907dc63815a7f595688b1a398809d6f73110e68b9880672cef95617e140d0ef83153b1b590349d675a4aa8c06f6eca2366254c59819150accb46172a34c981dedf926514c4e734454235999d0c2966048604568614a5263acd07277fa10579c9e4344a28bc8115d4d22ecc86b11d9b315e30c678b5e99ee39445c6149cc3b5521767788b5aebc9153caa22b89947185b5a86afeb426488b96c0f246342d9ae04cb2e7b156fd86b5a8c68eaa5126a9a4f29abcc228caa02176b4e9f027a3ad0952f9498d2a861dc9cf4d5b5353236a34ad9e2da309ce242dbaaa496a127b9e4a5d8d84c0218629cd9c905b32738e92c0923025b41a6149604758d27d881dcd384d45ee2f977d40454e6b392fe0c8a2d845c51057989e57f5c0fea53327911c22c49e9f447445a350d58ca1b789d0287435511055f373be469944f1e60438a445b488891c725d9ad2287425335573c7d00087936808fd21fca1fb8739658600beb21057338a28433e453f80add87352b1272da24ca86ad61f620e15434441cca1513e89a89293264b8a94a49260244c8cd027c429063a7364bc9216d1158d4289e8adc538959a5128a5c2667aca649e56619392c194898c12cc8f3d2f0e9b7e4a5a674e94719a8a5cc7215997ae434c49dc2833445cb5e88a64aae89310b1e9ef955c4b76c12ab4f593d149718e8a0ebdebb3a5a968ed5387de4ed1b56807f83bfda3315324362f6afb0c4251dc639c81129130286da572ae94a64182d02033f5949e3925c34c90522272866a440545896c7aa2170a6b99fbb4f2d34acb5bae335351c64ca1de63f44ca741e88ab6b48a0e82d2f831ce508d4818f4f8f784698bae66ab1a9133cc201206bd0a6d6d5a8dd0a34de765908aa4d59d7e06d1547468a936752d8a37f42c52c02fcf1ed6a2941cfe647bfea48b04a5fef2948e402ef7c1a2d1daa9439f14d804cfdbeb90803d8124ab25f5998ba47ee5221a48a552a94f5d8403412d0f62c5ce464a034d56cb75664b6639ce3ca497436bca21aacb3ce4a5df722d42edb066fa93ed4be32570dc2cb948659aa4d0240b516cba23521698d4b8ea2e86b8ea34fd61aae6a7a61ed8b7d65deb2481b6eb655ccd28af2c96c024d0a1b7354db72d600924caa85ad5ea371ffb0a195a48896eae0e7fb2ad7dd39ab63c7848d4ac44170de4f5a8ff0f81ca244a6736bd54229a40a25021e82a28bb761a74e47a1076fb1ae9e45253c0750a78ee7824a060a16847242c0c59ed8874052b6c9944577288a5d16dd91de120442a282a7abb2284825209077bc6a5a680b11dff490409cb961c32417ad008cf6b4da4284dbaa4d104e9a9001ec10e902ccd052a1bcceebb81dd9e07bbd55fe5c9aee9afea10d3a824954c90e6c83ab420b054924913049792a06c4a5c29e555512a5996653ee60aa4aa4730c4d1c116b5c37874c9cbeb2c598104cb6357d4a81863a47565ab76ac92ce58a3ae61adb5d6ebba2e2c5e55afa45421d64a694e6547ed4a2f5c6b55d93d95d65a6b44a2275a1ba3ce3b5a4a2fae0b3340f9a0503ea8285e6802ddb966eb8505815d3588cd98b65a281f7a6115095db1ab9a90e4a4f5c2e235b35968ad9335408c4b4558e9ccad136f8ae05a2b6a672bbb071589602b963798805cc996a436902b0944ea60cf7814244890b91391d8f5d8bd2b4faa34622130b516637a63b2745ec0dd086cda92ad1e9476dad913fb7a81ceccfbba8e3a26f2c51238db11e90a4feca15f4109ce0f5718ba96b8aca084734d218334801dc23cf1408b273178e2c40a2ed8d7e724522255808222aebaaa2c5913a45a1e542ab08542880f3772b064714004c5112420a2c8080a23dcd04112144e10dd4002040a2c04b941c452ca081b143408e2c50a30b623521142bcf881b91d918aa881865244113235c0d78e48451c81f4832894ae8304e59563d6db98600e31e0f9dad598baa7ea1c3c76e2a08302d8374d8109ca73307bd65a2b0e18a671d0a103872a04dba02bc9d2110a08567a80c3ebc8ae08c1e1759444b363a92be5e4d2d7936b698274e95a92289625144641c1a050e3890ea1de122d2269d32877a0b4e96d90781064531f240e701863dbd3a380c0a1a5e175741dd115f7cbe9ebe8caaa437b8fe82a460c1c037ba99894f1df5187566a9caac16a3357f10894d26694d25a63d01f6025aa285541c9a6d7d1a694d2288f664e521254c9a647f57b5698944c2505b13b9582790d3327ae5686c8508104043852025acca1865c4bbb9edbec238d6e83f1a67edbe07691019edced735c1bda256883aa2a935da5bd066ed97d37ecb7f3d86f9f01d507f7da8a32e4eba9a4464733475e9918ac753f373d9a3977e6ccbc9e2699392e6eac96de4caf63c7a40ec5f20cd5f64cb65d7c7636f438e28a3144d997f6914066b2dd2e40cb8157a7a8c059d89811468d96a45a584880940d96d918cc3442ad681eda2d071b2282f531076b61f7de7b6dd3081be2da578b5a8b314e1919d1daca74c5f48619a9189224148cccc513acdbd45d76334c94c52f15ee2643de747ef1edc88c0b694455f5563699442411ba6d3211898ccce5ef34a2c554221206971fe23f44810f5334dbb94f23336747f6696416b50087b325739da96146b0220c09ddb2cb51731a0da4fa274f73c9723998b1672c67ac45c68c1079f9cb632a11ac55af1de0f06ad516d69a57ebfbbeef585cd9fce6a1dd007888570e807c936d32f623ca008fb5a6aade5a8c5329acc562f496dcd2f2ab88ae6c5e7f1981d4e81a5f3631a9542a959294fb7eb564f6fa225f3f8c6a54a92ad2086534c17a17b9cee45a548d1091334ca308a3bed66b1d0df4db35ae763bf432c7aecc74532a898054340fa2b964f5501a4dbb0e09d852f5a0c952dda8b90ae6b5a56509c448c57db6645eaf43b9bc4d233367d33bc2696482425b464f2431a7423c843ea2eceda1d01026b7a209561de6c7b4b8cea4f7ca4e3bd5320dd86588b84b0984e6dadebe5d669b0eb1c75c87ca2d93e9b7eda1d0758009e2a4a86872c5964d228cfa1655557d26384a008bf08844ca0038002df9a8aa0f5d725c5d2daaaa9f46325cd2cf408d248c7a61077196c0d843d006678255522359a9518e11c4e1023432d4b8696a4ef3ab85e90a0720c4d505626dd1550d54556f2dc6a9d41f821b3fc4d9f8e16a87178db5e2f0a7df2d5fd79902f1465e97216f35d05505a24a5ab1a5ac3098aae4694e691186fcad310e5093819c4583b56a484ad2580bc6ca601a1ae7e974bae8108d3997e3d63aeed855ba19dbb74d63d8d59a60bd8c602dec580bb39b3b779d99b38f04b25bdc7633b8cf969c399cfc95323381901e6cee2a92687357e96cc84c20c4687392d33b58a0c585764c4d8c163adb90e06cab39108c196148664e11d6c28ce0ad86058b63d9b2c8dd61320ff95d2d1e1295ca616db95a2b572b44a9d496cc0ee393568815b1ebbdce9461ba9c026d70e80fdd3b766868a886cc86ec8a2baef8042b04b0eaf85ebdfd6af2f294e6508a01673ea2ec4c87f73e12c8c6ee23ca967b9b44fbda1d4272632138cc5a522525101a1a1a1a1a9a1a9a1a0984e627b37445a3ca8a66a6028ee083e383e383e38343ef83e383c3045a6be853e79c73bee61db1476a1f9c5def83b3a5a4979d0df2b45ec69c831b656e8cf16672fbc9f628c510298a28572ff663af13ec68c03487494c0824733597a8aabeca18c419a6d1136c08917befb32bcbb2abe790d99a5b3ea13582121555d24695b446589e5b3ea12b3964aaea9339a4a5676bb660364b7441cd550f261246f59199606dc91399ad09664964822f4cfefac2527f171d4e39a40b389c4b467369dbb66dfbe5631a4519dac39898c5fb2aa34a6a970e5df4c43e5b3347d6983085eff6971c4a24f443e86a86ae6634016260807948599fd0950d141ad9de7e2ba669daa5762cd372c564aa95f7e65066dfab73eca0bfbfea37ec62d8b71ce26c19d33198501d45f30989e7eaf45eca2509239343e8929c01c6f52d479a2ffac4aebfd7eee5b7addeed4a2cebb099ab1c04a0c1feaa1c68f38da67ee9349a792803b37ff917598687774b2412c6f790db7ff110b52576a9612ea3b8594621a164531038944f7a5a5ceecf2113899c6116b1b80c4876fd8b24d328de5427f3c904e34dfdddb44c9646a6aafecacb0efb96e9ae5d0e179fd13397ac982c5b5f9644e69095d7cfa2d3caf3905d679543e24d2d02cb21b7082c91b290b46b7644ca020bf6b59cb5314958e5f8b1c37a00e9d7cb1f732533835c2261d4a3c2b95129a62038944f66125355aff33cca330913eff572899c41469130ae6622c3106feaa55cb2eb2f6561616139f6b934a39839d7f7984f273327e6f58a51b962ae0fab31af312c78b3d8cd829de52a3046db7843e3e5f737e3b64cf7ec68b037225561402ffec90309b1661e3473c98add8c1d2eef7999c9ff64c96cc3af4302b67cf1a0c97af11b2efee2465106f69887315b4b69f9cf361394d8cb4b8b572daab20e2d0b1de24f87a91d23a3bcc8a10fce7e81b97fd1f2898b4b0e7d705cacbc4bde118f019c1d451413ac777928b45b6839050c0b2c03f55880ac614b8dfde537873ebf2f398c4bf9fe7947bce2cafb1ef9ffe1d521ce0bd58b2ac7a802738caa1719c330ec45c77823b384f2ef398c39ccafcc577634b8e897ecb2b1d3c6b0ffbec5e590968d7ee636e63287f730d7a171df63f7d9e5d343c7947288ce81651d4cc0d8c3c844023a86a04ea813eaf42b8d6097445a598afc3141a01e51c685ba5017ea3aead7c45dd95679ecda6e0686ea1620b4e56f0e39971cb7cc307fc97167ddcbe553ba19d82da6e7138d6b91a59c4bf52c8ec076cbdae255d61706bcfce53a3326fbe0ecefb59bf172f9a4c5142d7e5b602d30faf214ece5292fd9eed8bde81d2cf0b1c83e13ac87c9384cb0febacc3de24d7d8ffa1c9e4ab5d08772880b1c26f8bdbc5e12e991bfd85f7488b3b1bbb8cca18c01030ee510593473421f9ceaf27a5969983a13dc2e722aa78ee5d0c676d13152997b4b0ef19687c4b0641e72afe410a59279d494188587c4438684a86dcae1cfbbbc8009d673b98609d6e790808e9913b72cdbe4b3ba2180657466cef67aa01bf6d877e6a175f1027cf88d3d0437865d05e6172ef24c8ed4c6c674a8dd07676f5a87c50870d6d98854a56532dff2d7c6cc652ec2012c17d1c0cccccccca58b190d24592e74a4aa4b630b7d7076764d1799b9c57e3d065dcd68991cafcfdd05b984b63392188a62d7ec98c4d01131fca9e14fdd54f760a79f1ad33d7406fc4b563d633d02ff543c73ec4f9d532e19dad7efbd97bbccfdc6ce145a1e17fd9275e77254b94187415c369dcbf19c8afea1dba4431f2e37703ae5455fb9bd1ce2b0e7dc374a16b07ce5486310b2ef598c6c5b9f6506ac9ce558aee1bdfb95f99ee6eca61fb49b7ec0f55ee9e51de8b723af5d0b57be03dd3d2dcfb45fd33d2f765d8ff72cbbe8d0e950687b2ed2744f3e763bde4d21ee3a1f3bf79c7cd7f9d85e4ff7b8af4bbcc9e4c57bb97bec76c8ddc3bdcb3a08d5e8cec9eedce33e7d71f7e0c71d7f3929e3cde572983dbbe97367dfae3231151d668f74c52387a1fd43b70e716f79878f9db243ee944c07a17d758c37a6c7a7dc45ea6fe73efbd53da67bcf740ff7ae87d763dfdf7b99dae9f1789e1cdaf837873a76c4261dca21ec61efa6141d0aed149bd59d5de537874f513c79c81b5ede75d7a12aa7d3bbcce9ebd90eba4feff4f5d89dae33b9f79cf40e7267cfbe9453fe529ecdb8dfd53c76bc9b9ea277ba73433bd33b5094dec14076a67be463cb4f590e6d2ec7dd6d4f0eedd8b37296b7acbcbbec6cb867f9ec7656ce72834bbe9363c9de6367c3ca597428b45958728f1dfe502f7f3bf72bbf486320c1b6372159a1e4de8c935d8d952d754f96e950ee1b1fca7dbffcf2971a5df6aef664c7e352a3bb3405e1cfdc31de98b8eea6cc711cf7d130dd4b793767f7e279737aef668fa1fd33bb97ebbdfbf46ee24c2613103edd444d261dee984ca79b4c39ecceeb4c1ec77199e3388ee3388ee338d33d6eda1f9d8ba9eb6179ea2efa26eea914502a77a9540ac87e3bdc59ce9d659aeaee9e3d25c7094ed3b3dc711ec755d3e470f668e2b86ad261e5722894e5984c579b949c4e3dd9ef4973dfb32fc7a93a75dec99482674ace8e4da6e3895bfee10fa7cc94290595ca2c6fc92b2bbf99e5a97cdfc2b232bb87a67ba66e7657b9e93725e52c79e59eb782f54ecabf2eeca6d7ddeb66a74d494b6099df10ad9466b31eab71edc409d6109cce659cef91141cb38cfbcd7887dca61a6fba4793f6f47d0ce5c6610e2e67e9eec27297eea72424a13bb1bcfcdeb2d03f8e64a96bbf26dbddd3cda69ba317b97b7dec9c2ea3d7e9d0d3bda7df1edb748e33c993942b8fa8c79bbc1e95c77d5fa38cef579b7e6596377633b81cde73df524e8f4fd1e13d3ec5d3c5307987dcf8d341689fb4e9f858aef106bf25c709e26fe7f4fb93eee1ee753dbc530e7becd34ff732b5d3f374b8e3a9fc6452e14ed9a4c2a95c67725887421bdb2ea7289e3aac91bdbbd72fd0ce49ea0ba3244af6a0f40efff0557e8fca1ffe3d2a7f27ee58fedebb72754fbce9e5a82c87b68c9e1cdaa61e96bbfc85e5de656743b7c372971ad94fbff9e4924d2c777171c9f6d794bf9dee2cefcec27907c1591e90ac23299de919dee9ee3dcba6d3e9d475f8d2cb113fc6249563c91dcbbbabab91ddd32c35deb078c6b1c8717235e20433cd1d21d441e86651c60eb963bc3175f772dd373be51de4961cde319deeed9c70ce6eca1e97b3e3ccddc49d1e9a4e7a87e59fe933b570f9331d9f7b96bf7b77584ef770fe3abd736a39be4afebcabbcfb6dc92b67c928d4b9bcf296cc9d6505a5e304718ade49391def9c8e759ca04ac64fc9de095f25674fc9a7c76e073320005b5e09a5d47c718261af4d36b683d11a690decd76b57037ba5143bbde6c6ae57b1e5af28b63c3683eedc6075a63159437e3c17e52177d53f72d31da4182e0d99ed6473db1ce2abed0433ee371ed13aab3d4ed094edb71c0af5649fc713bc5dde21b79d5baef1e6de946b68da4ef05add937920a6cb6ec70053a7c31e9bd51860c2616f8fd3be760c30e922f87182dda6431f3bdb597958c7a9ba2a7bedcd384d23cb3bf2da6fde6acc8e46667beced57d3d666c772dc57d5e1a39bd7133bdda3ae1334d5e8bee5abc3bab777dee94fdb3bcd4db0fbcdd9efd6fdf4ed378775d70976ddf12fcea1ddb8c3ddb98c7508b4ad57e3e6b0b78b335783bba7aec6e976df74e8e99f79b9ae33dd7799cb3526b8c3bdd371821368561f8b2516834b433ef468c84b1e1adadc515baa8af73776345cdb66b3ebbe6593ee7288b9b03b3d977bb4cf10f3e09f748aaab6eb4ccef4cd94437b03d6276da96aebd12eeffd7a39c4dbd38c5cca7939de703a3e77d9cdd0a1dd0d271d7b3bbe97392f47ef940be25ebb1b4e1a6b5877fa87ee9f32a7afa6a1edc873c7f9742edf807fd291aa240ded5778b9e3ab7fe8d61eb530fe875aa19d23c461d016c0364d4c8839e79c31524a6916aa90ebc55865953ce4a6f4d87fba8dfd3fbf74cfb7237fe91d99dec102421bd33a5cd7e1fa0ea77d691de47fba2d2f5ff58ea977905b4e2c4cc15a0e85abb877bbdc2377b59abde6b8afcbfecaf69a3c60bf309c29fcd66c7f1dcb18c5a8865d86f2d8af5aab04c2bd7b465d2748c3f482291f65e21230185a51d6e4e6310e240f31004ca0344bcb0866019a508786b6cd260fd5882b7bc07347a42a4c4bc08008d903ae3b1ef92064cb5f4ff680af1d8f7c1802ca492b96516a638ca1c65de1757a7197bd5058f370514a290ca57882faf27a48af2b5353bdb4bd4ee755759499560451b03c7d4d176c1623c528fdc015e35f2ba5284a2b45515a4f4375dac78001cb47596b04b250c839337a51715dd7755dd775a9e03a49eb8549991ac2322b32cebe66df28a596c3281f14cad3b46cbb3030d06bcabb711ca5f4d266f7840d493a63ada64bcb78734d1f97a3820bb254afac4e91655996655996e7ae5ec8329d51aa69b4650cdab66963a85106dd36996a398cf241ddaba152305a4ee17357c454c7b61896d59631603a5a4abda02d714a72521e33e8b38ba32b1b355ec0f2b7666ddb0cbbd8dc57eeba1831326af2ee466dcc9c9b75abab6d70df55dccad836ec3028d4d2bd76d72ba730e63a1e33b2d367c7df741899683a8c4b56d74c37ad3c39c704e7b99407b07c1895a68cb59aaab61165c4ce34733a1bd20694bb851b8f888eb61cda934eba547f2f2761f2646535e97a5d1198cffccdee18ccff9a6515ebcc1e8ca41ce8039225936200ea539f798aa128130a90a1484fd943ca429320ca58348db959ead1ae2c4954893299394deaa993b96a59a245ad5d29ab9e259b4f9286cc9c900ee160d7532195dee00b0217556a671255c11481575e4f5b3327fe80e30e27945daf329fd0d5a42b90d216fd9227ebcab2b3fc6a59db4ab59258f254da019e0f67528bae6a88aafa68694be5216d652e99c5637783c5e74b962c167772455ece22bbb0b697958cba4ca259868f924929d9f1673723fb29d708d2952c42a4b2895d2f855a8f92e24dbd149b3b8c1255d57b5932c9b2895c922fd92543891227f863d7532130d0fc912cc901f3411c481d049295d25fad9209b68009d624a94469e670bb5e46f186c825519c3cd9b5ca2a6c86b56ccc9c501a993915885d7f873656b18a556c2849b327cc052cb74cca76783fd9bebe801a2e0a0535512ab0194ed51aeda71447da37f82bcbcf535215c86801a7ec8844c5139090f450a312540821b52f85d90820408c49e01d97442701a882c650feb0a914228948a1b4e92bbdd5020d363d4e6921079bfe507e6c7a100a129b1e670b3f6cfa183a5b70b2e96bd8421736bd0d0f6cfa1c3a68b0e971f8c1a6485cb862d3f72802d20524444036459a220a9b2251c1834da90c0396e2e8c80820f0e1075030a1e8c713d6a5827d993046d5e3e0c8aaa5bea1045066c0032a58819482fac3099a9c348ebb6221aa10d30e724e998cf04d464a46570cba8a1d972335daf6f6e3996742551f4fa4aa39698e980d27906d2735ed9057ec0c5395bd7ec0e50fbb108b32c91fa66dfca04954658fa18ca480155947a48d128eacee36a8cafe404778e6b9031de1a19fa7df74a781b6731ae8080ff74d03e9e8a981a8063a4dfa236be9883eb2b6a9691d13b4c781aaeced099aec106f7b4dd33d30217018a36cfb9925cd2c63b0f6e3d194c9edc7b39d7ed374c9d2a46daf39b122d30b70fd8df19bcf2ec4ca34d03d76a0edda85ae47aaca5afee6b70bb180be899d47c3be611a08d4522617e053bca1565b8ac56359f5129d14e93a95441b9344f43e92481239a128ce3cba7894f2094f70802d0a0ff0c57823934419dfebb121e40c6684d520ce505b5f922fcffde50b05627791b908629fc93682d8656d61d8c36a034cd3fba32d6da63da4bb89845131237ab40435a249e8d1046bccc36984196148b022cc4893db640b32bf02a416a8448d7585492d99a21911000002004314002028140e080583c150301eca92a43b14000c90a84a705418099320c861ca20438001801020000002000033b30d08103a4ede1a89b22ff90654ec0e745fb82121745cf4ffbdcb1ac44453eceffa0bc01323038975dec5479fd896195872bb31ae85ba7c5c7ff0eff4596906a7da582284f7f4775d6be5e97df2c7e7317cfe47b9eba8de033a21d392d99fdbd56fbccba9ad2a08208d00ea70774e7eabe57655262c0c31df7d2ea876aa7fa5eb68c4f7fac4419d856cbc892f3a1063a32b288966e0119d392898df6a168ba2abdf6a08727cfd6e85285565e98c7c98c6d37c1ea4ef35bbc11b80c48a5ba6c6c700b8209c8774c17935efd6ff3aaf25a598c771400665bcacd92cbaf3dbbca7efba7d46879a0e0e2f6ecc2479fa3b0f7e3bfae050dc1b52d0051968782fc3bb227e1cdcef62665849ad9c3efe47b85832d605f1c901010f2a54c47ea93289015a74a56efdfcbe19ad24471868ab99c61dd9352e19ef55627eebb76051f0f419d7c17623b9a41406f1f2ccf19dc3346e43de920cb068243a0db7402acec59cc050ee6fef9dfe07f00b10444e94e2bd5babb98cff8c8c7b8b6f1256ad1a0dc160c44a561a8d77f497633463eff087da4e4adcddd0bd47375a01766f55ab84c021dcb4dfbbc2db3fc0d70c52e09748fe01f3bb7700ea738dbcbdae4e98f673c0f848d315e82b77b96a7bbef9bb179cda3a05080efecab9823ab49609ec4715a44b6107c3f633003270d410b9d19f2128a75d281a0d20e741e12bfa8434b2d97731a88678d03e3ccbdbca2478c2519cc71aa2884f0bb4875e0b867b55b208abcd86558c0b090c53b1d96c7183d86fdfe02c27ccf65182638f15917c970bfa7fab029edabed6ccc15a99654f66e1dd1715074cb68540e08ea6f4161f1ef75bcf1c831d658e244af80f0262044eef27a8ecdf3fbca6e2efbc77b1a31840f42e7f17e4319a90ee02bb4d8ebf96a4937a874bf40e7d72f42b621c6bdb4cf47e36ef2b13bdbf5ce04fb67f48b730eafde1247a430b0f6c1f423883639bd5ad00763c9f3c76e7ddb593a9e6557d6146255d11bd63d76fcdf2c91240f4d69ec3971b5abdc08fd5260244efad85b14fa91c99f79f87dc3daa8098ebddfda3bca169de322ded2ca1190323edbc2f3d3974d8d1cbf715090a7859dcdcde3f3467d3d6f0ed7876de622460e63b6f45fcb648ddb9b6fbc75eefdc79fff0d64ca53befe77733145ad0cab5c3e637e57367a5598854dd6a8cf4f69a4572ea32e56a933a15d765579044845c9ce84a70249df30c7a64acfc020abd1f14930303eaedcbc879cd0361ed81a945b8023e7030715bde50c4d7d4eb8eafd996f7c44e45d4bc12a3e86aff0ade3454d9fe30cff7681e2de5c570605d5cb1a36401c363b6f561f2e4b6bc3369c1f68dac6b53ad1b2a09bf2bb740213e3355715ff9ca5d14b0ddf659b7bcff410d434ae8cc63b85375e75744a9e0b2d5bc91b5bcbb0f423ef2144d96bce56dd726144f9d2f457a62d0fc5e50ef77c75e4b94c94d4036579497211b5bde5f5eebf713797f9d5d621845cbc530010882eef06c685489d6f1de702a018e54b7456584e58738876b024235ed051180d3be089e8b3203fbdc92410c59bc9598e916bcc78d487556451fd8082219810df1f86f14ab88ddb06380b25253df494945e361bba14a0b7909d10e096f889d78af8af64b2c5c78c3ccc636ae75eba0c1dfb55b2231dd2055d7fc8b896ed095da7d6cce9f7300ed0da8aa1c7626108522bd5ba776e0c4de763337a1d21fb2f53e2a66c15b6f7b18259d83ee2971fd88c4f2ac735b6facf613ceb6de48b7d71d4bf50609e034e73278e29ad3bb4b6cbd39340a890bdc30ff7adfccb03476a7ebc898207f2df9166ebd493b33e56a9559c39413b43d395b6f97958a1f30fc4c73b2372b70d463bf800f202e00a69c19f4c3293c057a715eae02288724c89112b5b2804b723b3a16a40bf215216030e2feff574bb7ef3fca6cdc5394ca3ecdf08a5968ec61127b388422c7b95a3df64c52bc1d22ca0e97d096a0b7780e658634d722884cf65445286777579203c8fc734916c946984f5e528b7ad5bd5a06d70114dd49865549aedf3d0963165dcc4fd7f72e5f3200d48c1c00a1d57bc6ce9b6db823ec5aaa743d7151d365012bfa272b4af19ca74279f16a34c1df667d7653e75ca2150a9ee77940ee6c6bc2095a1422e061e55b828ad5be460cf77f0a56d295f0489c391c5155970630362bfea1da73bd00909525477a10a35a3d45c2026d1b93332cf2be2d8d82207893af30b49a8b2d894bcf32d0bb47935b46acad62fea79aad91ae84d1986a084b15dd4e250db9a5d8de25c4b6eecbff4d9881a742723b584aa241e9bb72093e6b2ae7e579de1b79e5b1cfe2053e1efcf8a18ffbf3ad558da2bf8453d884be7ca4887882088f2d17237ea3d66daff9e1fd7b448a06a01d4b2adc4d7ae8704995bf024dd6aa6e4db2dfce4ecf26596a33041f3e2f6a4d223604412cc49e19a7e62cbd98c42b8a5f16d8f495c0e446ffda209798f0a68d267556eacc2844daf8b9ac2a6539f63f360f3093e16ef599cfb810261d3964c8308e4390d56401b8b256f0d31428f054e01618fff3d30ea2d5e9da7f81b7490ccf8b54a774378933c9b82a75346df64093d240f9fb28dd6c3893df1fef8cc6b0cfac9f4d06cf8526289003c0dcd4d73629d9ec7dddad018d354fe2d17483990e5c966058f60a05e8a2b94de34353509173732d723fedcfb8bcceeae893770eb5ec39be44d02deb82f4de59751dbae088a00d458cc2776ec129f8d0f75fd518369ecd25e413bea6f1e8f3b97a5b460e948bbee2366f7083ceec3a3a4b67b21791dcd77693e7f30758dac2c7aba45dad7f649484304f7509af8e61d34d29658323461cd47d5bc7894f21bb58b5dd8a7db40ac34c1e58adc3c4bff3611f721f0729824e98a8acfba2801d6b126658a0474cc37671203bd5221b4a343cb5666f62cdf64863a3ca2f3e173d08e601ea6cab1e4b6d4dff086064c4c769393c5e67dec751bfbe381aad662b6c659019220ee842ee34fa8671a5584cd693b15170d9628dde09453882b469030b063468bf3c34f3e997cf5fb1d2b85c5d3f3f733a75878332905abb982bceee540a9b913c8c1ca042b2860e1f908b7fe954019faa5c4817302703ef477459fb3c0c734f4c592356401ba961aafda14784fbe5412d2b04c2c4c2fe59ddea2758b6f933da2cc47d531b05d0082a534f3cf111eccae8803efecd05e5af3e8a94c5d10044954a3d93dd4951c22a551579711bbaf66c98d2f5c1e99f0d892e16dd2630e9c1786b03db331302696c6715983c75e6bde38d75ae0dec4b7c169722b4952863330a08117ed286c092dcb153d8d413ecdc438c005985a8c9af19b2dd62c698da0d9564307a674260c64e82c0c9be7e0e3459ac12c68747735c830394fb5e89a1bd5677ac9bac438a5132aa10fef5f522d7e00ea4a306f8b7d49e1ccc0ba4bffda8fa2cae86e7b6676befe30c8d95c2928ac53d6c7a9d80e55d1bc0b00f27b873141d882b92ded66cad747c03ba8cc51063338cf453d1689f3ce953bbe43cb5be6b8523280831d0170679642cf48a411f898d86e5a7a34e0a290f2668c54e5be575dbe71200c23c453256ab9d1886190c249a4a7158f30384c3ad30749e63c247b046e3a11fedfc3b7dc40135f393a1f25759a8806dcbee1a679d6cf3acdc97b151404c739d7fec7f3041419ac0f4ea2eceacec210a6ed337713fa0a33a0ee33eb37893acab192bf0266d1788b80cfee1cfebae95de94a15ae75d546cbbf0949f80de467f2ca92519f17d6e5a13c731492c37316d58348ab960d3550c36ae1fbfefd68e336779cdacba697e7c7d51e8345a0a677840eb0e149843e577ca9cc42c4e76fe39c10281e9355d4ed56f6d8990300ab1ca4984d37febfe41951efd41954b8440612379ca3aa0cd380ae372746a896b8aa2b7ba086245421f20a90aef53f12253ad592c278c5e7fa8b0893dbc222b1c9843d2c82596cde1875c3deec95b796e254db98f66e24cc3978d2ecc7e875ceafbe1dafcc013c1c05282161b3d672823955f04758271b42d2349b85c29bf2aff83eef269ae9529ecdbad7216547406ce64fd3fafcbf3fac962ef276b9775f146c1de865e9e3e99a841adf1ae897cd1f6385a12ed8986e8d9a86c4d65ca155cc90bd9ff9c7cf743f9fce3553720832ec22ae34548e7eba6d73991da71befe181eb385cb4ccf08c8db2156ea637ca61c5aeea9da7023c8d6fc43b8d8d6f74e8388e860f0248f29585632d71ecb1d393a4297018a180b188e1ce8bddbc1d49c1e17590337cfe93bf001c1be1e4a51e4079d28d1a481db60d696c42fd781a3ba516b62188bfaedbefa0ae9cd79ea5a03d453a112f794c7dd495d3001e36bf240105438000e91c9a476fabac803ff6e9b744ac12c5ba46bba0680f3f4a40b7c5c3fc9f42998e6033d0c40883747eab7123f793000037d2d5889f8424f3f5e2a3a19a8b3888599544405c6190ea594f2831e9500c296a7a3f1e5a7fd4c55ef0ec071905ef5f50d5f3409ec8e1311b2a1677e1617c6159fcf2a3f94d8213be39bb5a0b94423162b768dfcc89e89aa08a65fd41cd18ac93436e2e68e6e02cca3023de773745993f356f9d77545d1b5ba28b36f0e57dc42d28fb5c07e85552a8bf1cf090a341df2257b134f23d92730b3d70e58060552eec216306e2626512acecfbec0ae150933301dca0f02276565e94bbc24bda5502487a0664cf8acd01e308acc02b8317d7ac78d6b8447e67b0d5e2dbe80babc6996f27f452066b2e64079ddaf486101973f8b14f36fba346733b8e2992c8694699d1ff5e48b32eecbbfbb18954619c1913fa67d979fa570293d16c608ca105db52181b28009b12c8e47b3eba4bc9342d92203ad3aa27304bd8868e6f6baea011d6f721bed71c555b66b35e5a9abc11431ae13eac1e9eef06b00f0625c343b04f319df612e3f3cd6ef5f8760b9378748025e6519a2611e76d5cbf283176212b7c609f17dfdecd238df7cff86e48af5bcac7c64dceb41b117260b05314f08ef6a676a7c6707e5c528071722f4f74f60734228e6d376fdfd1046f91894d3430734cd4a203ef4ee76a3153ca89f0388d01984904713a7577b43b9d136a37fcf1b64316fd83cd8f02c19479320c6670d276b53d04bf518317e9110c5fd10aede4eb1aa69385de90453d76e4998630735ccb5826bbe2ec63432b62769a8b6ffa8e7301349a99c743de5ac096e9e8a9ff9fb888b20c8bf71269467eb16acc2552dc91c0e42b0d4a138425ddaf78bd8389b12896c7e3e98fc374963359c5a2c86be75f1fb5287013e9edb58a237f35e63429807a7749b9d30ca9f2a6f0e96c13b38ae6ec50ab3d236a3fed685964b8740e87091080a70d6effd16e87fc511f71ed871a6ce48d6348a9f241f023609561d7e82269d1d4f242c908c3b3fb22f4215145b5417eca6c40191c05012489c46dea5fd6b16a3284d0c61dfee5c88a42ccc4ab0bd8bf94c5f03d30809c71e688989d997cb0a2cc4678665c5cb946ee9cfdef7601dcb614be4cca0588e48ac2e8f5b7e4cfe16025e7d72a4e75e65ae18fbb046585e9e7d10815117f98b2915871438f282705021bfd1a431b7fbcf2f36384e63703580ce70f06264f98e192baf29b998dba45a429ac6a0e3529172b94a09bda04ee61ba94561bf06d2e55766b2338f118d30edcd9a844ee6b4c825b6dbbea2c077f8fc9b17d7e1dd67ec0a33e2969e1e78e00c07cdf3073d3806741a8d944abaaaac4e6eee39c6745d161bf8c258661aa20eb028e10ace2110af5e36266ad01bfc33e9da895b51f4405085e4ced5b50f2985ef1b696cb998f5a0e4ed365738376236d11b001267dd9bf978c0c3c2e895a645c4cecb8693d50f39ccd6d76983ffd023eff8b41e4d5fc7f47ce0edb309284939c71797395ba960af626f9a5b0d705cf97f874ee70faf89d66764c1d6248655e3eb138038c687860b1c43231cf9458d259f7795d3ff2d9088182d1ff401fd3765d00560a93e7295304e91fc6600c031f58a85478b6aa97603927c27ff02581f0208522ea12bd966e62c359a4d53ee84a50e9e2949634042116c6bcff0374423b48803c74f2756cdd69f945e6e9d0520fd6029b12817a6fdffff4277e1b83e57fce9291c9f461025ee5285c91487c0c068dc8e66d2997e02baaacd6e65c46d55ac0a3ffbb55e8b571cd07f5f873468deb0818f821181030d8185ea254eab3cd7e19dd4da783d437606a5105820d133f0982a88625a03eb7f601da1ec5620df92d7cac77534b388eacd808b6268131566f9b5adc40da7894a33d1c24dbbf725561d32dabf5936e5a63495ec3b69b6abecfbb844158403984007409a8ca318d25b105f6015a2e91a894c0dd3c757030bee24547a66515cd7124ffc6d03243f15bd69300e4ed92cab54958a97a5749c2e61cb8cce3ec4169e8cf68c54def9930d6c5ce5bbe5599e6723868b098d34f7b2c5933ec8b977fd5dece3d05f11530b50bce089194c592c2b85a0521a655b23588f880ff7bd4016c9d763a00ddb2c3b06613611ced4ae9f8b91ef638de22d5202fe9516b93ab0db0f95cdcbf707b75d9d4769f50f1eef3344eb1acd7c6c22f8701eef4e32f373c32e7b14efae085fc4f7b15653b1010af71c0511c0702df601928d5e2a657c7028ee9cc2428cd14546bd94fcd61db2aebd66a4f6f015b9d9a205d9b9fbf7b4f83000ba85d1e3a8113cd1098e08f7789c56922f3f78b5a1ca14924a9b94e1da2641c9dbe9ce465d95c3924b1264664da04c854747c0cd960ab3f60c3df03c0f422bdcc39276781fdf27005d5c2a7e10dd18dc61d0a4e035d22f02e0f9b8db1312254d636d23fd74692bfb4c52d7c80922f4bff6f4e8b575e6a4510c3c18f9aadb442f14271c643e874ac3f8aef091126dc8ab24c8b781007075485e58506d5c169ca561fa9059330877468b319a9a22b0f5e5d3956ef4081dcee7fd88557d54654a6309cdc1152996b43146505efe2f12ea6e3a5697f7bd1b92ef9cbe5222319913638b848f7b40460408abf3cbcc3fb40d44f719e7c8347df6fb82435893c6dedfc79ed115dd6cbdc20f905cb05d7866d6de270f41335cf2eba6971d7508e784054ca7cbf608d4e26cb1d9b0847a218ad413f833facc2c8aa841a87a9ff7051021bb1f0626d20fca0feb34d9228d358f11ff29ff77e6894644fbd62c98467e4cba8ff25d9a5dde397272071f0ca557936aa440eb9e4a90445f4c2d59fe1b99eb73124e7feb1be5e4e9039c6223f9d37b4804034e75c234813d06978666fd44f9e0d59ad07c1578fc180ed9b1e38a18fdde4042a05be8de6e1311e60b2e5fb422cd017845e1c18dddeb2cf271c4df56083fe4b325b062755cb20557a21e4f7bb9210434db8c2307ea66073048154e52122ecd9b7a484ca5ed2a7ccf9ea7d59caec2373e26ad95a735df0560bff9d37f1e47363f928063880324e820f1b5809756a3f090e428abe1f48040b49cc68318eec8a0a0aa28cb7410582a40d9f0c2ba5aacc9e22aa212c708a04823d3455a7ef23d51dcacdd53f0eb40ebc3bfccd0c31b99f94aa03f140f00b6bdeacf8dedc0a8f75e948301341ae35e3f1a2f841dd72041ff7908c16c78cf44a9a11b4019952bf1fa4d5eb17872aafc38087b47d4bad6334ce7b1c446c388b8f0df1dfa65bd2b478f3eb6143f7e31cd655693667e9985d3bd895d210e401993157c2b3ea8d51ea32fd7fb2c51599a38a0c4d6ec3de425dfc26773d2805489462c3a89e70d1393bc6f4d3621bd01be832560b39b0a150a09acc4a1610a1e9ae5d4651ac3928d2d74532c19a23e0b8e118a358f6819841e98304ca38ddd8a1a54ab20f776d155cb9db32ce54fdbe27ee32a5734dfc4be7910f947e8ec109509605b95b83eca65b9b654f662f7dc92e1f8ab67710790702610e455dde2e5b218f57b04cdb6ce673c8b249df99ae556db84c50c0334881aa1a7fd62105f3312ab5c11d995b68f16e2898e8ad2b0ced12cd72274103ebc7ca93b2e8e6597a4751d0bf33c328a260e9dd56a73fe0ce4a677b6a1a0e1ae46de418655330d10bc13c8ec88f0e4774322f5243d64a1cae9f31aa812301ac7fa6f731fd700027784eb2d2d8bdef26687b40de8587633bd70766f505324c1711ccc2dc91136069704971bf3fe915ef43c77d96733e317aa3df58794adedcbab8a328acdbaeb63e61732923f9fa9b943263b81a647ec6a9d8772047303b0b734739c815edcee57939472f99e610784469e20bd8f7d6f408ef974822cbd1f034ab88e290bb5176d92f723ba1c0e9e30f9a80e2e08491da769fec6198c3a685f9e0ec0f87ad99f5b4d95bd3101141edb9a106c2da7a9739972d61e68417e8588a39b879ac4325c114ff4031f94c7fc80e2e92e0a7832609c0b310f23dd39e7095579d1972398b2a4907a7020fb225c6629ad552c877f832d5d217749ae1b2fb6ac2e7bbd31e5d1b33b075e93c4800f9e333aa10d53523d7fb1d2cd152fd501764f33fb329be970201198f9beca8966259f03db693dc01c19b6cf1cfefcfdfcd5b6b8393357f0e2560b3fc866b2bf3ac0178c40377136bd7e5b9c05d3141d07eee3f04309766df38d2a8b7520742a08b8ebac38b8e1d1a40e675beb9845bc28d5b27a1d4e9bd3ae0c260308b41fe5fa00e3512be14043c590e18bf11dbb50ce2829094855f9ea3ee754a4436464b36840b62eb52174e772987e945311936276e8103c07ce539a2c37fae31530cf0af300d94b1fb0b25441af90541cacd676313a303f95ca019516ba9c3246bbac622b4f28e4500328cf381ebfa06904deb97ed0e9bf279cab02285b06a3829bf04cd720c0d6696061ec38c239a02c309c7ef8f23a393b0d69e03adbd10686d5993703647a22684d9949e1361967b74669eae4e207e2db5a6791f945c327096accb0639ce2a8522f9ad4d6a530daf8661e4061e1d7d942f6cfb64421dee3a4fe228f5688238c1e58272d76f5d5d1d128fa9062b3b64ab12dbefa28638b3f9f7a15df5b31f0d21915ec30b67a1e6f421bad6bda9a8567af099b8be36a56128f73e0ffbf466657b87558bc10a6d0ea48cada2ce4a1c0e35097bf102a1f345dc4e713fc1c499ce656d26d328f8e662d13cd97c13609bf399e31ce6027431c20ad11bf58a5d6aee75e700ff37f98283281ff1a49529fb05d23fd38e2634b221f8873c1b81381cdced6b5a96672b3e7b86108f648d82f99e4b34dadf8c8a2d9e86d0eb8c826db73548ad9e7e22fb5c8c01e62cc2b74796608aafc8f460670f6061d842ee13fed4e04cf9ad32bba64899a4918d6d7dc9a260a2a8d8e2f17cd5c57e13e4e4cd7f48a7a06a73d5133493d84312937033cc5d163814644c4c43d1d60704aa668aa7529b32a4a85d1c748154e9785866f5e9532b1616d1ecd8ce302098963c5d6304eb26f4720606a0482c36fa726892e532c9d6bd3079c3983eab4e3a7f2571c39d50df2c94a456db24741df6312a9aadccd634b7cd5b97c2313bf56857303d29ef68b059405244ed3d05b6b42f947cf1c947fdc10779a5839256fcb3df8c579afdd1f82391e12141b7dacea888557a1ece004ed656867c36a6c96ecc6be8e567255e61ade4e1922ea6129dc8666f7a8563a335c71014abeff7fb8a76151304910e776cd6f182343534411afc2152772de8f7cef8033d75a7035231e3a20ee7e7e45c23310197a34cafaf6984383d8f57659e00df163119170d69bced71e6031eb562cd13c83a9fe9c9f932d05b0008fe8e6175eab2c19b21885c3dfacf9b8885015248584e749d7e155c8142f7c9cc0b603b1ba29c79e5ffc09e1b0ee944cdefbc9c37a2bd39bf3b1a36af2674b4f6d9d7c8423c98d77ca2828f041e4d475be399f8ee16ba815ed2b05f1e95141204c0b1125e11f75369439f4c1229853293a9cc21e83fe466e7d378aa3ed46b852fae355abcda71bf9e36244f4ab51f6e391ebd74c560ab4d1407e59024196d47cb6cde3b672b1f984c25d478b6a23e8c7b8c6a34299130055e2d28979b8b8554d8e4106312b4122d31efbd9ed96a6ef2fe4ab90dec46ee51e736a05e40218d8f5acc43bfba565cfd35239ad5c69d7d6c9af8045578511d3fc71b45e44455ec061f19092e9d59506965d53aa88b3852d1f73a01fa114f51c64b810339e063b2d9d886d25510ba39880514083f2aa14e96343ab021a1d0f60ec163dff59530473b41a90e2f28e9c1de3865284fd1ca903b542b2083d1ccc8c793d1de65bd881b2dd8f2c506e0f01df593264651cd6770ad1f930e3da02ccbe034fbc8c89851b56784a2225a9e68ba4b9f4bca640cf9bcabe3896b1ba0af8600fe3e1b5afb081c4cb221676e061281c4003768d23298250a6222ab57d26ee08b5b46bb11dd392b2a1fb0d8f618a66fdae4a59568ec6cdbc02f66eef5d85bb3a72e778487aa888ae5716560d7fecea19c5ee5703a6e949ea9ff72d10bff4c4e421ad4193af8d1c67cdc4e15ad5632f05dd5184756b15de7adb388f6e83978ba21276bdac8d841524a4a86aac702164d56d14edfb9ca6d331ecee1eced7030551b96404601aa77cb8a2203e24f720b709fd6030e5a94e957a98ef118f92f7841123acb850914f0018ba0e78b4f62b5e0d6f0c306610eae8d81c0918e4eaa3331d0c86badf1c97fbf1125ee2933c862a4281c3608317c1eb278c6ea2b4e3de9b09babbacc74441a13125f0b8a29f3c857b0f380aa8e9f4ad2a813a0ea4b3d50faed96ffe2f506329c632092955319310a36235a0227e7062ae063528eab803e58c0d067c6557985acf812d1b6aa8c0800615952de68d5863049ad51897a8c64444d44b5116f15329fc02235a4ea384b1c2db1854aa583adb7a4a8da12ff3080681d3fbfe24490d723ec87abbd42006011b28fca50b691e70ab9d23dc0463b90991a5178f430dd2e40e6cc85abc4b475810cb4696eccc61465e944fa3ed0269fb7efa7bc415c76f9c9d681664205dcd07f4be1110950e43bb67f4b00f220ac8dc4e8596f85201b18962bc2320ed695f878e8cf0b70276faa64b16de6b04f7e91e4f40b818b8ad0c2811991682407a73757a0764caccefa473deb2d7f12e77da9efb5188a8f92070f65daabe7b7ea821cf97a210e7113b99ceacca8f786f1a92e4f4832b2d10250978d4d4e74d780180054ba0a00b848d9c09b694531f902e44ec18a9b26bf5e2ddb931878920bf4e791ebbd4583520ca359152865491d17744c2cfa1382932bbc451c8f183f80a74a94312b67ec820a5884d86d2412a3f20d347613f36d399d886962f5f6b242039f978811b80582191b1ffb4ded520f97fb0ac01e469328a351ee9086b562700c804cf09591625c3d6b005408c08ef3eda642058c523229e52262c03c399c148ea19522768742407c518dbba40e6f783b08018ac597e423064dba1c818ec5d8fc73b868402c815c1492c3bf7df709c915f715dd1c9648b93fc843131c60d833f293950bfb2af40c0e2917d1204e023b8b263b2234fdf0391837825d30236a475cbdeed5881601e12f24581c64f4d7041314a3c72723c3c0622920b4a5e36b72c8561348e213e4b802c01b11083178ad213b3532c3d167ebac0a8b5102f5649049487d408c37c0de879b734cf28b7007d277f336efae1a9c5277f73c03398c77cea8f626076bc28d6d5a2abb90ef3b4574bd878afeb74943628929c790bc3169676bdf528ba50e16316766e3abfe8538173a81dbab9dce87a19fc1dc056eb7cd801dc619ecae95d3b452cf54ee611594dca9d247df3acc691d569ad1453b2985235dd4b1cfe78b21eec471213300b5f28ec6b0a0ce2e689d1cb31333644195593124e387c3c69ff88eb204338a5e48c10a5e30f726e41b051aa50738c21e130b75c13a8ed041e3d2741e9e58bc0634bdea2699933a1786b089a3112169dc0f481569a8fbff5c516b23adc6ecf15ed729b8cbc40ad0ec8109fda2e8729a59ba35378bf5da756db41979bfc1a6691b6ae231e36fa3c68f7c7cbef332dac725520583679d6047852b17097fa92da41e2b1255a43e79f02030f2626c392798cde527eea5f6e42728ddfbdd8cf61c1aa197a286d27d78fcfdba2824c972a40992a7be85c2f3b19896e9772ef382605ea3dd424c964f710589c4de0f4e694906771ebad083bd4e2f0654cf945942dc51224dd2608f7f1495be85f22cb480de754e98a7d328b6f8f18a4e4d2ea72db9e8a609503598baedcadb681a3ba1395c80053967c8eef9a867065beec886622c3a82f4d6d73b719296ea25d32b378a8e0193259ba6afef6eb97d4111371fd97e1ee43ac0f979eb11c9a51d03d485e323a03300746965a66305299c3dc6528222ab09331bc3f8fe5324d566f76e4a942b80c94e89ccc50310b9212686f7c191aa9dc11a4e0ef8e6c1da6a7829f8d10646f308a20c07b86d6b603adc9f73e3c1acd5062ef86671d500caf0b4ac444c94337cabc86d4f1373a8e71d0c184fe062d9d2018a8a8c17b0335f3e08eab45e875f282d44b0950ca646d389fd41d10f259877bc1c7640ef6a3e84c8c56e36d422edf727a2472241da3469d621a4dd3ed9b505e210dfa3ef58e903dedb88667f2e4b493868a57098403065f20cb948a894a7afd30b34dde71a7a62e86977fe62086bb0fe0998d008bb6b0dd5b60e839c5c82835b84e08a546596d83d7bb4529a991900fd1a2482f79092d863eacc3e63ab0f98034a413637082fb9dcc59fc9007d241cbeaa9bf7089ca11b0ba4e83cc45ddc0b4a4760e0e7fe41435a336196c86ae1ffd26447149f19427de701f4a59706ce86f9456536827259749fb264b2043e74a018a9a4779e9800d92b21f5f9b01e42911b02beb8422e18f7c7772f9f90836dfd6215adf90ea7aab2e0143d57f46b25e137091dca0f2bad452b5485788a6930a01dd972413c424aba4c9ea96db4aab423e34f2c0fdc62542a64f3ed1017d078156b4ec35ed30a5cafbf840d205514927e04d4a06a1824ad6757a6030ebac251642591e291398cb6b52e19298478d355ac156f16142056f13abc6b7e58942a0f11463e387ffe34ec51d57af7717dbec41ba17b82c75ec2cb20bbc203b7229d7d0c7123f3365178eb66671b6d1593333eea0eb08e2d387823d5002d0cb7575ff85ae253a236eb12670de9c827ebfde651da5a6496dab9131877e295711515fbeb1ea8ebfdf6ea7fa5d48522c1bd6cba1d5285b4cd58706195fdc17d604c004eee77bb383f38c81b31005398fd374df3b3d3619c092bb506f5058bd0ce26566f85e43d0b6300559d18bfe0d7d6dcea1a9b6a1a8e43d35def78cb68c0505d12c4c2c0fafa2b33e8d9dbd670d7bc468a0627e824dc6a109591007263f9257ca0a95b3d00695c9115580b83da1149978c9706e28ccc7648628350520cd086c400924b44ed6758be23bd6b0555693500da5d3adcdde28e024089acce8915cb9aefffdd730e55fa24a14e1a4f5aea330a10780deb97c8e71be42fe68c817a42c09407bc10244a220784d2140816a2a0bf25ab64672a75e0c1c2f1aa30531c3f0bbcd14dc4d742f9f452bf44d93c6cefa59cc6860207305c52b7b56cb84b021f11c843793e6d9f2129bdd64cc4cce5c54ca6c289be9789bea01bf58ee4b871294891a913bcb5ceefc4d69f439a922235c11c8e9f4deaba44470bf50c7daf2a3c2202ff44130c32225c1891193153d0c7ef251a648511c7c320383ce751c896d18f8f3c8ba135065b1a07b8bc0d06911f489196b11b4b74034614176af5784bf60f765eb8ee7affb1af5001f47ed7c77fcac5f96e63cffe8cacf8ff25f0ee19a8b6f5d5be5808d9124b6fe634ea30a7c20c2560ee26df74275448b79fe5d53afc4d861694829ad3c124b2836def7c0e84306edb61dca4162cc18be2cb2cfa19018d0a1f6f19dd2308d709a705938d21ac819c0a4326bdae089850441945d2fbd63b88a533feafb474529abac6302d643fee43bbbce21ec7b2e41627a609a8205e73f011a2848316973ac285eef47597031e4ffc290b88baa032a2b994167f4c32143d50065ce41edb904a9e5145694d1d8ff8c6a4ec5260c34d242195951b27d81840b77eadc0fcd04a50570c163d8c6f2c244b192b59ea8cc42d9a5192e016a84906db9c44da68ff4ad1c4e4c8fa475cec0ee7a87f0aa198e707bdf500c2a2c01aa82a583307179519637943cf8a4b0454b64c58990ac43db0e0126a3e693c3d867deba69eab3c5aaf3fbec93b5c47fb986e63a08b8a9a0f5570b0d2de7907bf611ac1247e536e840fdb3506cf439bc959bf2a9434756e6ba7a36a00bc2184a0c38ad5f944da7e03667f3b09a94b712d29031e30d8b94d99dd9aef8fc93e8480510b0b33ce02749da610f61e1527fe132409dd831819d62f5527a7b612277e272af0944d9f324a9e318b322e12221f696cc53abe913c078efb8b800938aba8f2d4de40685c62f55023aa0bebec164c9333619b7b3eac1d72312c533a8fecfe59d2b6c58ea7ad98d757fcd22ad07045815e4aa8784b997da3d8a1cd3fb10455cc94228aa25d393bddbeb592d4f2349de508ffb910cbf623b15aa9f9585e76db5d81c4683abab3064b66cb64133b6f4ec8c849634400e5334fad1116501b06bb4f18a51e2ecb5251cf350c7ee5a9786250bb1990887457db269783a3a191ed933619d400d8d63883abb462e48e065cb23d77f16d9c5ebbb387805732a7e7fb8246a83cb801257cbf54290c1ea9d53bbf334462455e551e59e99023d8987a311c536f4e3cc1548c905af78ac9fd3f81375647a3d744a69c1736cb531b0531031e7c897520552b0c3189a00affa34a4b9bf9fc437cd25573d7265ab4c8f6a3cadb42a587b9ce0c6984220ddcc0ce3722d23e6f6c2a59270c410b47d6644dbaf22affd6689e01f87b0ccb4df2b9e13b247c0665f5bdff8641c11d6e927d225d85fcc20e6c168548c74aff69851ced0bc84109622aeb103862892ba8088fed00df19e3a6c93741af221d1aa508a9258e2decdad5690cfb6add91cd54c521e6f07c4f7af7bc1a3896281d42755c1532b8e0b516a48d9cc087704d8aa91b5684ac1b557772b36cb1ab7bdcac7079349ee9c1e732062c501cd08991df54b75cbb436ff61da29cea122aba51c8958013b26a1f3e24e2330e1ba076f11899f07b5ad6b1751e7956780ecd0493f9e99fd8570866d406b0bd399851157eadf71d295a43b7e328222d96f335ca045a68e76ba958fd2bb929a4c51623c2bd81ec412c2be58adbfbee20bbf3d88745539a814af4abda3f98ab63e4e644ae60ee58f8942646aea0bf4279306459a3e5919a1f48add3c25b8f897e02d997d5ba3bb9df40b7755026a8d710298e96ed356f7d8c0959a2c4f24f3e4336e3d624818c472800507d5dbf6ddfe99dc477a5317b87e7c11bc67d181a6b05d182fb819b6098494e6c465097335f4a29a014406682900817dd2a8dde83dc4653fbc2882574c2d5600145cb0e6ce5682c02ca0ec974cb130b17462da62fd9f602d40882b6ab5db3e017a9ad6415080fff9dd1da048904676b3506109fb63929dad7cdf900ec8bf58b458e11d96c0b824024f103a1b468471f0a33e8ba72b931385ed844e945a19c02fef009e70e2707f915d2ccd9daf4f1cb788ae9bde9e05885e1243f0872134ef70d3c729da227a4c44c5f8c01210c12266dcbfad8bbdb3a8a22cad7e5dc446f21a07caca803a8b06057968c02f7a23ce1419e21cfb5a2f707765e62e5aa073d33b09df9bbc39903bcc9848ae7374c228715e3906ba184a454f788062d13b07fc0a3c033e76c9c49fcacbea9644ebd924613501491563038a6361b0c5c921e6c163c431cd91401ab277da24f04c913479c6b07053084a47eaa89b0a0b20608a70c879196cabd2caa665e88ba3113a872bca1bd63792a5f5bd5385b0116e644c067974ef94e4da014bc3c486d25ba27ad94ab37162e7a26492f552210c7454028139c8d853e206000ccd63e62d5f26483351afce7c0466addf927428f6502a42de0ab17903e85cbb7a41c9b8461d2a2dcfa1b51e5b04e07008f3b4d0c422dc99617f258011bf2bff4c0466605e0389af60c219a55888450e9f1ee540379035fe25bea94a4f171b4cbd6b0a3ce6e5a6f8afc43fc13f8b039993927cd66c4d044c840fd3645480a96e0d028622c9d8bd3d1ce5abad5233cab3ecfe132b7fd7fbf0444a3dd6f762708ed9f3bdb714890ce6d94e704fb95b500faa083af3e078b600215e94ddf91efa900dc0b0d8902f6e9d5ca25605c314c3ce594f87b38432ee0bc3a05bcee5782e7cabf599c669f6e13a01a2020c76fdc3905c837cdc67c092f69bdc43c7fd1665b7a5610099dc1120099fc7a0551b5f5ad6817d631c1715ab069d155e0f0388c459e6daed9e667e7fab90ac84b4773fe3d38c405a78309b86534294b241c0f0467157b61207402afcab67ff0b2a2e08d45778d8621ca59c1b60114c7c5361e81fccd82d30f9bc71d014ec28a35903112e63126101b19d387c31d0890d6355a58f7976dfe5d1d019eacdaef27a4f0b22e322de21b9b9b2dc23d9354bfca1d7507f9072a213966e642c8608f172bf7c84cd63f4ca865661f0583332bb32fafd673fd4424de3e44dc853593d22be489e67ed2bfc967a2549800430bc41481513907c849fe2a91b682f2688aee9b2db08f7f82bbcd7dd0c29ff83638499e07bfbdd17b70453d5c9eb1aabe12f44b0e5838405054b0805c3c45167333d7b0888e12bda3d3391990645433b3820658a1edc01157a8649f7b7939e7cc6e3e798c0ae2181d37ae92174fe80ab0a75f37fac3fe49c11f85070d1576467a3cef49292941c616287e0bba7a79cadc4997e827193934642f8e6bf9b2b9e5623a573ede58fc9e424d9098677e059d5be3f513d4a6ec60c5965185a71203a2996e74493f2829bfb1baeca57dd4e4908dda4bfb1f0fa65462c537e1df45359f7186cc721ad4f24ffb09a7465d161f60c67f3eb7e2844c0560ffbbf7f0e8d13072339b411ef3a38a450407ff60398157cd9461bfdf64280dc5de748aabf376560609904f0facaf7e0ac7f116e1cd6bd6b41b17654bc31500af2798e922983c2240983c3019011ffd1c98031870f67c40b42544b14743d08e34d0155206c0c6ed47e60599540e2bb305b3bfc9385f77fbc9c6c123893e789372b706155a3c62e206e17eadb84523c8d75a8afff8e5ab5916aca0f7b9527d6589375da1edde9c9c7751944be1f76df839358bdccfee9911a18e5bb969a21670190c543c2c5e8a4f0613c23f0a9b98d1f4ae78ba14026a3b91f091d73fe9b0870a3c633801fb48d3f54518f4fe0daf28e4c284869b3b549c92e6feb6c6eef681ee879749c35511b8de1fefc766dc518199d97b88aee51c7279ecbfb56db5ede9c2c3f3f1962d9c4b3b73897ac74fdfa5ad88123473ad2321cac65bce3d62039a4b3d67183e9f58a9d71e285361d3b08fb5f167eef1f5e3efc0ca48f554207a3579108332031e004d4de9ac1a0a152baee0bc824070f740249876747040797a10c07562445aad2f7de71cd88b88e90763bb951fb2ad7b80e3da343f9e3e369d8431961126cabad4ddf13085c3138e6d05c419c6d0f5ecfd32479eafa39a263105f9cfd0b5b4c16aaa34b17a1a240b9bce56f26f20b2dce67e3970b9ea3b70dcdce940de5590579067f84ecb39dc89578672a3d121938575695839a3d81e68da31a385f8d598ed3d52e96130767393805985f57e6338523cbfda9025654472b35c905c1e9553ad98d1a7c87f7e70491de0794ac23b869359c8dbe08bf347e9faf3a9ac1706ec7e50cab924cf96d5a8f96909fc1289347fa42c28919a278f538fc7e00ccdf70c1541815afe4d5a38ef547dce20893b7ccbcbb5172db497481340e6853a813479be4830fe175171984ea215a744464520324290be69e3df6d1a46a40888af8fcaecd137447f4cd9355907d7029b230f97e7bc8977092693299291e995eb7bae8cd2c5cc090a574f4b3b1204b70542535eb31ca6545c54431657436977ebe3b41660bec3664f415f01d9a9dd07b0c1a33dca49e8dc56750b34293561a8e5287338bd577f6d0e2076b0783e98a1f5c8849bf2ad8e64393afbf034dfa1b9489d63ffd25c5592104d0b94fc3b04c396463d53ee8ca5c3a422273b8a3601045afba39829d81ca7f0d83be6f808d5b4b1a8d3584a658f2f4e7b1e1cf60c375357db25ca271e1f8754d2c198896f57c23164e279288d60870fb89c1725745ce7cdc05e186a3a5fab04a7275d9f866aaacead94ea251b8aa9cfefeed3e1c8ff593c440264bcd09964209516d8710287c85206e6ab5876ef4b88b7ca926a6911e680e941102875c8d2eda012de4dde06b0893ca4e1dcb55382272b98453918ce837745c8263e897a5cc4e51e020b84ef4b6592aa9f986e1b215567e96c3bda68f7e4abc19dae93bd375e2dd5bfeb79eac9ba013e99afea401ce47007219214efcbf47a963d78e766f5cc5091a2fe108509d3b762c038a0b85e7da7a69120e452281c63b0295809be659de72589e05d8229fe57e881c0987759ab5b020c148b9a3ffa58b73b31a2d2cd8ea9952516ac48a2088f296b5101d71ba0dc840d739d5591e5b93188a4b4614b622e110f0dada579275e7298ab33c1aa6fe9fd4872ad5e47ef1f9f3d380249ef64ab704031e713847b23b36f7db089487f2012e1e8d2849c94f915d140f19766846e68c25cb3e6461c2a15b7f7cf8b166fd28af586325d3a5af2b9766c444784552de527e0f3075ffe56d8124e274d4e016b43b55da24cd7c18255bbd035d66c1ce4bee24a10020534592f13a6d29fe3aa032ccf75921fb48d80923c8329f079d544be48e66d897859be8b6f577f58cf3dcf47fe0bf25f61f87feeedda72e47a314209874c1b6efa5e56b2948d532800d0e9fd8653bcfa7bf5fb418805962632892caf18369d82b79ba3267abf03b289d6d112fc1227017d64254edb4540327b89150cc41286498d310d036afd5ec096944ab05c412f16fdc3052ffd41c9ad463fb9ad985831c4daa5fef789e374e88a1696719c300cddc5b72a0bdbf9f99ec4d802b2d84c5ddb120dfc21b050344d6048558ff304a057b23aff78596b591ff96eedd96a7e9a05dc9f83caeb6f81d59af57fda8c13503fff5601238257b88bc307436a21c60a3370adc1cc3829ae0f5b7d1f5de00b55fddea093246b3c70926af4ac22d89a8fb4507928c878ced80ef6cfb5dd8be6cb4c2a637759f9ee86dd96abe980f41128ee9b5162cf7574e14cdc273b28ff809ccf503fccb6a84c1794234cd7ae7297be19ac5e8eda500bc52b4cbf50bb03502e582633614ca4a168643ec6585b60280a9e55ceff7dd495620044b2df53a68b932961c30c50f7d42c83503d47a44f260613cb62fa8e79a37c2952c9346281e5b5f7a5e28f1af51111930a1ba5e513c761c4eb05c862f5b5e3ef7740619db2d7b0068a2391edbf3be2544ea4aede206d77884afa5be873e0bdf9365200aa8048ff15e19883d6e638f764663f0b7deba92d1f006628d639f3f8e46e436a7511c1be70f20fc5feb7e79b839cd89c670c6af3a239b4a2cc66dc8645d29009daa0cb3a8297fd1172ac2336d7f2f1e8e0bba8c13e0ffe262146d5760de0c0df3660c2183be6b8371953d8632eddbd07495a94eb5c5465461538d7cc4180caaa1ca4c9f08af923386f494e513ea337eb0e9bb6e4add2291d7a2babf3340b263cce4e355c09926729c3fab33ad685a1bc60eadc6143d514fd6d043ebcd290ff880ac45d2c08cd8a66951c1d7d3e1a2c45af4f963873b0b3b5e1281a8b5087d1e2510aa214e3e09b77d44437a97af58de16b103a1802101a3b64358d469c95ee86d5f9cd8e0cc6bf0a495f5ba9d3c4ec6df9d5ed2d83faaa20a87bd2ed2e16898b8bcc942aeb3eb2f1c22d88040a24e9e166b31c6f1f9157207c78910f251de2090fe8addc340b9b975d6e8d6387503b089f8d577782c26aa41c7cbfe182468e473cbcb07926398d6afd425178674746a8ab7d23d4e2d25432d62158bb758b2506888a1aa016a6307b908ea7cc6bfd33956cb89abb50af1e352ad5c60a27e828885912930b7197139b8e0c9dd9500a528e2e46eecc544324c4d60a90af5e32255340424a3722a5a896190c80c5a872d05b1bde05f011dff2d7d98fec0e472ee1175b825b20bc44f0676068aeedfff56ae65b8c17d68fad4ada3aa72040b8a5a80e2a63d432148e3659bc9f4cb3c934532f399da5774b860caf7b77b9bf2aae119ac60e4d4981419c3626af21050439d02db700fc37699809accd146fdc5fdaf57af11b351b8a9a1f7789865c2d35e34736798d20b0218fbfe4e7cff32c111b7701a80515cef928d93a13cea28f28c87dda28aaeb6fe01db98d89ccc3308074aef3c0a12c11ca797d7bf5899ba2a9eb1b01ef75471ca6aeaa5fc3021101191ddafb0427c88322a9f2e906f744549f820f00f331d341555f62f368102d70eb7a7ab0170af5ed149b842a08382962da77d2d1908220163091277f53dcce2ffa6507e4c6cac39011f7cfdb97b498f616cb9e7445da48fcbd75d7798de74230be907e3d937441f75fb59912e4644b6329b432194d6fc0ebff384cacc5d60d3a216b00b9296a6fbfbee9e80d19c0a74bbc640977f8a417c3e159d8a97c65d1ae47abc8fb47896af3f335aa3370056f48ec910705067054581f933ce1803b5de213ea7bd5c133647ed1606d275c0946ab64992c1d5a8e4e3dd20fa630d35bf9ce9b86bb0e775f35f98fcabb10f689a8f9573d3a422a1e8dc7a4d692afa722e5f2ea40a63c9fcce56b0eed55f82bda4e7e7dd5485430a5c58bfc6b83ba8054003fa3d02190709699d5210839cbe483fa44903f8726b997ca4dfdf64b28794f7076604d1416d9cc45e6710a1d2b7167ff89d0d49e699b54c3ad97b5cd78748b1171ae4ed19460d6899b1abc4cfbca105902935da7f4568466fc67630230ce1dd38cfbe471dad875088d4d708e8d03626c97ee2613d9a4ad317894c81043324236f61886258f3ae60918a519f40781d963150fd1cd76534a79d79a6fbd716344ace677af529cf29037036ae65a1618af6fd675c7604da5c34d303c8e3bffd90fe901589713c527bff456b648660e78e513aabceeaf152d4eab442783d01e5bccbc6713acf4687d8ace095bb63bd4da902c28966926022a69f7e31935b0ea9318344bfbb822b37a58ba7078f795eb3ab6065b8850d684ebc2144c028f8c22ff54db844ed1b875b81dd51a32309e0d8a0500a8c246885884241b858bd980c268d41f8f67ca57aaee1b80d4d3a8f1f1889de6947ee110c870ce72745964ca7622182859ec7d9f52f55a6e02c1806a6914f55418ff4c6b99b76e7fd324f372ae53ca4fbf1d46607c3a6c3591e14a19417900b08e5dc8ae7f31f590db8ed487ae43738519c156b833f3954ee3cca42c0fe422312daff18ec7f54733b424af881b621148553b59b2d91bd2cd2b9ebb56eb38e1af0c73a8d0cced904f2c30c8d6c25fd608e6f478c6d3792e69e5f61da31591ab8048ce0f6ab1058eae5cb5fa170cdc669e3af5f367021ebd52f897087613a65be320d24201b53099b80704ad1431ae50c47472065d3c709ac2dd1be3d875b02aef301ee61e687ecfc37159a4000c6cda0cb2bd420c7e61e9cf433dddfb998f28a8247cfb9ecc7d560f41a3cfe8b8c235d098c2466291e3e40b81712f8c445ed3b7e08cf7928be69e6e0c064efe17d4b44d9b6431b6a3faf417caa52263deac13bcf2c4b01dd3723eee86c7e38514c484224584ef709ced055471fe0427083a2e4cd9da4e3048ee44a43d9870b5c054bcbbb84a6a78f80820bc5eb098a41a6c2990996f459b4226af46e21b9e986de4bfd2347085a2a06cb15011403568c9dc9db7854402ca7ed2b2e0c5677f1cb7c67705f6b409c95d94d8aedb7602c9d227fdf094e16d757d6a0b3c44774bc19267ef7c83e5a2893bc4c21277c3fbde63ee896ac65e89468b7d0f2bf80edc3483288c10605ecc1e26d5a6f24d4d2903ac0dd681e45a232d21c3e0ad47d462d30b56cdaafb9d76436fc967270ddecbfe8e82e7fa42de1e8ee0c01d6d988a40c57b0ae89060d80cdd17aad53f839f1a2257981cd70a6aeb92478af061acf63e3dc69d4364a8a951998a0a440c3cd0799fe6e656e61ae5c2ea27f9863c1e6920de134faa82f89b77b7c4e214b76a4e6027fb11e0e04253bae32f0b5cd3e1ac5e75261aa799324708bccc18918bf59f867a9e60b1816831be487f70362de5ef0bfd97e208fb41ddf9563c1597c131203b7493af210f14c236ac7b92278c6bdc80ea2ef41bec40fddfe5da97b2ddd24a271c78ec19082e012ccaab05eb847aefeb1dfe9265f99cb0e94624e298d98d0f485f7b4e300d9866e1045e254b4df0ee655c27133278239c34826846b117491fb556df462d13635223c540aaecb85857ec4a1f93a1462cd0533a2892565a000d88e9932bc31c0016f12f9f73ce19b158eb053ba406b481e94f5ce39ba7e153b4a15ddeda8312f903b2143eb45461e5cfc5c957905712740944884ff540548584a4da458d3d1a551f1d42f0c932a71d6d9172ba3bea996ed8d97a2f51fbf85a8568966439bb0311641b6ba775616eb63c26513b7e42005050b90c4fb376778d92a483ebba858640de328c195c7e118ed8bedb9c84db238a6293d8813481420034225e8714dbb11f5f111c78ac0293848c1323fe0641fc651c8648a2bd320261c7abdf455ca637846c75b86347923e80e8a624c97df09b657b0ebebe731d1c16118a385d38673b1b118d6fd139d3a9818f0fb89a164ef8fcec37b29c9c2c503d4b4b123fe60a4f533c3f146aa38048cf91f37cd7ecbdca2b921930b159e0be23e0f706c60201107ef28c3bce60b930334120278a8dae87bcfa22a2becdc30b1ab78074e88fc86c5040cf756dbc42b1c86372017457b0fda7e373e15e8af26355c0e95ee637848cb1ea0582c9c9a12bdba17eb803ebf8d810eb541c48aa6d62d203281c92dc2de05c2e0d1af38fdc3f77e93701f1b926e77eac45d48ea19df99aa4fcffe8f92b09d0bde60fc9f391e67012516285ccca560d302ebc69d0b21520f8c4d189e4126e726ade234a10b56db113fcc253ccb524de516f284b970a505a8e72f315598c13adcbe5a018a99e208f58a2d6acb77094bd5ecd73e4e583f14e92922663d6e5a171f199da798f4cfa146f2c7838ad50d1dc378bfc4c5b6a0acad0cb718b4c5619127fc954b5f35996cad604b3ebc6c120c9daf2176855991dfdadd05d44e437b9ff46331fa8cba9e2b2545d3a41d0118964d5180ff8c03bf660f514e9850a4f6b06bfa4dc9cd04f40c681e41e9bfe998635a27d741070fd8fd5a05cb8ffa56a0075045a30c419ad773ceb0c5f5aeeec8b7bec8fec1a5819500e7dc8dfcf59a1b4a66cc6adf18f4b5f476296616303766358eb449a3a6667ebd3fefffeda7df0ac36c817a1c1bbdaeef7f93a2fc171a1c2c9d7c83889babf813618eb7516c08fcaaebbb53dfbc7ae9c13eb062fb171afd684ee0b9138ddc7e25393ced3d65debfc7368e4919ebfd491651e03f08fa0c1ec335540a0d1547f87fbe2dfe50b4b9bb592a8678c528ef13b00c148209c6b04b046951c9bd0b43a89101d2f4fbc2d2f14206a8fc4266c1730b14db2102838b12231f6c19cae3166aa1a0086325180bc8d25728e6de24cd7474acd5861879f9543c49c31c86b5d70b638396193270e25a64d7b4ef7033a12ad5d6fa8daaa3f329473c8a6c05401b2b4e335d76b880f159bca465ceb913a5560242077a969e9c1bf91a66922515ee1329df161ae5717c1826c81a63098c8ca97245e9d37398ace8a86c4cc8bb897a27b1e1827e6cc9e2372611127c1611f124531d05b39948ce7e3799de4edd60115f6608889462b908c31f84868bc436f0be78101244647ea789af0078ed6d3b06d1353718f4d5c1df090fd5ed62935d3c92d579f66c2825c37488f5fd894ac91158b64d105de4dc60e2a8204479059a6e48e3bcaf09f699f3c97664c8414a89936629d4372adb97bac2744c72d309a722571dcb1967f20f7f166217a6024c322b7ce1971aa21209b6dbb94d7b4a08ba1a8cef61f685357c4f14061ae451a0fd658865e19a08b5c5933b9c39a0408d68ffc2a48a57dc5905c5772bf115b7d754d724298f1ed8b7256b21f1a0f08a0bb9eba2858417b99e3882d44b705777056a80ec239901d7a10602851ac1d9809ebf243afe39ddb9b2b670899c8457a0ca8047c09416874a55c611e3bcc943534298a5e7d0df01f0d1109de70283db27d3e46095ad076c42bdd485c478b6886bda096692af8c66751e54ad6541080d47acb3bba13fb46a877e72e848601b0359a253c238869c2bba3bb663409f7ac2b498c06375d362af5c7c7a42db662dfcde1e15777467eb2f3b61aa59bd497e090ad3d91b783e2aab3a402ab46fa41a863384fab8b8ee3ccbf6954a20ca9fcc47b7c2e4efa43afc7358402e11fa0f32d2eb2702c9a03098bfe73fd164502a43f791b796a8efc697ed7f1f0112fca8c18282442f1a61b2d21640429785e4034ac03dde1211e3e1477ccf5f8128cc6bf1ab078df13133690a19e610967581e1292c0811c1c5729f7660a796c37f06740f9ab3ce049ba07c7bac480e8365735d242f635cc92f301820673499ad6f2104f011ee0e73f93858a0e1f1bbb3f794c4078c33b3424c5b089ac24565fc4343c50729e65e02173d814c8c9ca3be5f8dce714677aae7ff0d3e65818602b5c208f727857c132ccffff9f58af735f97c2ff7599c7a4efa9e2de21946587220f220ef4510af49aaffa3699f25263f8463445c58fe9b6bcd40a38844f05a2cce495108e4f0659bdf324934b29f8ca5445b6e08db2512d010c1962c2fdfbcaaf231f02a40277d083a6f1f82d54bea2aae54e5c5a2b1124559035803bca4d125b64f1956e191b19fa93755b6d399027933a4d4e1c4b34b4d05cfb02d5e8eb31026fd9c2a09dd54357ab6ea6700ad3562293db0f1e00e670be0aec5c0e44015569c75a04cf49be5a33c5015890d75136d41b04d7dc080af54d661cdb4dbacec227530cf3b67824851010104cd67b3971f18857e6b1daa393a5856c247e61fa185564f9c174d31756cc753d7683025ecc4c60d9dd3346b593ad11e0d7090f215b2c9b2a50678017001de1d767c63b5d0b4da3ea162d580d1b0515b78cec21bfebe812384ec1fd52e7d06f871a0c5163969887609a97e3440281803966aba5982bccd9e5fc0e10044a70ac710fcb50d6f296fdd2bed4e72b1a71a1d19762ffea759c00126ff57561d5d62b1c3d831822998a4411b50fd2e450e792b5c484b47359490d7361b09636b732db3f0252825c8ba3ba2908a0a40825a1f440e12dea885bbd4c897012b273bdb60a6c4f78c084dd4a2497c8acc17f5807b14d0b7900a0111f94d862691e1411fa747decb92ed0ca9f6e4006f0ac6c86994def026f19cab63fd1a33f48ad683e35b12a5ff5b4cf92e9a0b6a97e58fd6d02cd8b2f995daf9aeaf5f206ad0bbf7f89b044f9cd6056b868a534b2fc2279f35c8adfb766fe2b60468def937e6fbe202d23ef0532d5891c30de3046c4cac7cdc85199df1e3c34eefe0176cca25d2a7a868b5c0b893579db0d057d6ba462b23464d8db5bf4c1e579f508f43c4a3d19adf4e8da73f2eedb8013ea504b834c30d34ef649cb9028288d79cf28a7fd2ee3d6c198e667a809bfe9c7fd29bfd23bd2983927b83f9e16e9a7ba5f6c92b1f1d0a54b5e18432ec6aaecbe60c13bc475ff2606ab801fdcbf89637d511d57bdc4b4bda74add1983077cf14e04f18ca899afea9e0e84560da14bbdf497cc344e74706f2c1a51525417302d949ac7acd3dd2e64aa5bcc06d31338c84170f103728ceb72b0863ba318003ab1e2750bb56884a0241a27fd077b4665696ba2a9479bc8abb9f86232571fc1442b06c1d6eeb9c7f5ee179c6b0f6a2f57a37604a9f407037555a284cb1f577757af55d9a6e01e385206b98a4678ea7c42d9ffed1af3f90878c0f8fe4935fb6a146282c9e0cc511e1c8a633bc28344102d3722db1a9192ccb8d2a0ea30d208a062591069c06776aa7f70ce6f87ca7665e208db069f5a557d63d817ae4fa5b3c2865a22d98d73dc7832ab708b8eee2e9de4034463591a90ca67256edd087645dd7c8495bee24c9e94b3e519bbb8178e2024c0adae5562346f67408ad44afd474fc34c89dfe3ca7fa0bfb7c2dca2b83433c2a786b9e26d6ee4103c23911bc2991ef6a39e50faebba295969db2576e5e38fe240c56b81bd64e1732a8d0dc533df05ce376260777e341d04ff7efbf5d1397c10aa095fc40c5d3269a2dde4526894a7480171f3b502c2b21d3eac663911c5082c036bd782219d4cf94fa2516635d958b7a77249f2d90d15a5cccd39cf8aa696d3a0750cb1d9ecbb57b888c532fa1e5bb5dd6c4e287b9e0ff76a07552a78bf89b66695a403a0113f99f9ea5a3e4796ec509c204b37cbf6fc03a87044f0a1c4c35977d1cb2945ee0c8d9f445afd4b4f6e4b82287aa8980bd1f085ff3099ecf013544b2eadb6f965de975ccc27ded37cb6e9ce1cfee2d0bce8c359b1b6e835577c71dd80c075bed7d3fbc0154c96d3affa5b9a433b6680bf14f74419b616fa82134d963ae0a202712181e333aac1de26fb8fc3dfe396fa984363aceaf85b0012dd43b482edf09a3aecdd4e1aa2623b0113dd3fe7e34b9307f362722f4b3348d125040516289b10ec3320a61ac65651ad6505cc955b14ec33a0a61ac65651a16a2c81c9437d8826000695f0999210ce8ae15fc45fbe489f8af0f027f5d0f5ef2a27fac4f8ffc10b71fc177b33451572c92c60a4822023e6c83d26a81c66006f9ba69082a391b95d799707c8d40d8687258efb2444341f8f74c88fa13f32c6b72441aa1468f572ec13bee18b083a968c4ee4c2cc82a761d262e38907054c5f6c497bd427f21dcf35a1b4422fd19e31971a30974fcaf2763437f14ed48cbc733fe510bb2349fad1234e4591a2390caeb9972fce218c45b011426152842433edb8dc59f54478da178de4d23ef08c43b5afbb8a645eb070348bdf3e5fdb06a5a89ed72b7bb0eaaf8638486d997689f9a1888e5a160f4303f1bd90e2856a2844cb91637206de289288cdbe9130d8b326be4d9f6aed45470a329cc54e2f267d737df04aa8fb5b40ce925fc13bb7f17adf9e7b158d078f3eecbf5f6dc197d2374e17981c46e02d97cc22be732c8a1f809cf274312002fa477fe9e9fc61b761f3ee74708da9f3844b54ae4df4f83e16963d3930cd0c5bffd40472d4454d1021a611228067b220d795c16970e81fb2c3293106d76725fe6f1213b16ad6b6b042cc4acaf278f2378cafc1d583f16856d3fa76c2292106f9341e97d12222aacab33351417aedf57d682a0c71048035968302b55f12bfaa1974b67fc6647f6a050db8bacd334e563e53694f5ca977baa9fd93a3fe2e1c56a579380d700557eac399a5afb72351c714063872d6d2af1ffb43cf074f9651cae75061a341b1426814e0470254e3053f4e4d504d948f3d4cdf1552d603bbc5c88be1776ca82bc765dbe122a28043b0dbb3d2a2e2f67de6332a06eb39e25cad5e0772f77e51353d6465ceb115f3f475157fff81ccb80195957749de3e613137146b46a7d511bde28bb48715115a08a33fb67756f9d3fd06bdb8cba288ee74160253ca87a3324ee7120fb032353e76847f8857ce06b15e926a0ed62133efcf68995c9e1022ec96a9398d8c46c82134ce90ca3fa5b920d7fbe49aba65ca3891755e0045944979c611ec7dfb947e0492bc2dfa4c20c899fbd4f58dfae914a1a46168ddf09dffd19953b11ed6731308a440bb16dc99d0251ef76de92aab886556315d2200e0db9e9a8d75d3b3050aa5b3aafb0255d791424b297ca385819fd1900ce4ab5357773facc47336d54be101d5d1f53459a921ecaeb1c54749d51fcd75c6bcf089f82acb543de5915e9269ba3bba5d1a1041c4d9058975df4e3e8a98f36be938f26dd7a56e616f8e8ab850395779299f36ebf6f1552d18f774d995d6254a54462228a5297db4fb414137e8f8f9efc0c16718611a1ca5a87f24d736711cc38cf761ef005790fb25818f2968e0a12f08cb13e34d0d02f16fe0534c5edf0f902660bbdc3820482fe5966612aa7b3faf22d0968e84ccdcb7f9a11e67a72e54945fdaa2155ff55bc655ab253bf5fa503b154211fa301570fe0252176143ae8ea775db2411859e3e604b0dd96133c655542f89de09163b012df89b283640149ae98407785fe3c575cd99133fec142ad2edf08c307aa11de683d429033d63ba419c8129eaaf5d0ba1c5047433ff783b353f4b9a16880764204b034d10c4cbb219fa026f0392f11c9ca46b343731e2cf5c078072df75ef264201194e2e73ce27c07e88395402ebdde84724d8d7c2cf232c41ecffd40245f6b989d967ebf8961fe12019b92849ef857cf4a3e49d51b3971734faaef872007a1a7824d0fbc78b233fbf7dbde04acdc764f06530581ee7a3c60771a19a8340f7cc22b92d672c7debc7b930329f443771df63abd10a84ef297048f3bdd719b059c09603cdf6f94bcba681e40c2d8e037bb4622090417dcfd03101641b3ee5f2d827e6613cd4ca99d5a13e684975440737ccb9f05cab855790b0009efeb098756e5a3b227de5393f903834e546c4833af8628e6233d3465c72e0de2bdbc4915c3cd71a67202c8354ef35df304a7a0979878cdacca0b362c8a3d8fc251cd4939d25188cd79b87924a66541e7ebf557ef5528f06809cc671f31ccb35865e53874bc472174f6795a4e2d847845f497c6dc5be8a3194c96d787c38724264a2324da443f110b9faf878f0c973c7ea9048ffb53937ccc8e4166e304b08630d63a34b1cf04f6151ddcd78cac33566e89946fb6d0abc98b6b661e962198bbb8f583eb8987ee1348ebbc1335b6061e9bb5590ca7fabb63df44d2cd3546fda47a75aea26861cdea807425e09397c7d07c5b8c307924ef1eb435618e48fc60f224a850d89b07704b07ad4b36996478caafb8a742de9be8be6dd13d3d2dfd861113b031b33e38ea686f28d7d9a310c297825fa35e69135b3b69fdb31f56f00b97412a03cf873f62fb8dc101004deae5884cddf5e8e3ca32fcab39cd57e3ab87c20c4441381b47c4deb38c49d8d5ef4354d8fe072d05caefd2e24cee9610d3e582e26f8e0f776bba790a5f33d7fecbd2c20e2ac333414b643fc0d4489ae5c0166a921e80ca65b5fff82a907560737a4b03d752dc07f481f5679cb2788c02d5e77752b73bf877509f9830dbdbcdb50c6d2a51d65a5afe1e04bd12c401a6964665dc3630a4a272c8ef2f327453e9e856f0942b21e2075b75b142bfb73a3eca8ce2a1a968fc32e56b6a69a1e09a9fa32c208768a4a196f02821fe1926b6cca100e5fe10cef312d501de8e4ae68e6fd5ad3f6432cb9b908aeacaae33f1edb882403f78cd9f95d5082a4f1ccd2a1b6cdc55dd838ce22bcd42a78a59e6743dcf4bb77078bd58893b063296f2fd7b0f41519f58ce151abc1dfba9cc005d1aa3e219aa855b65fb090e9f26848e0adac7488af24263c946ba1cfd84774ed3c8c5b7f2d2a8484f85d69323d3a12e9982dfc411b80569bc66c35c3e456984cf5d0f387013c0bca4b0878f378f468ffb4d80e573165e33d1e753044d39f1233d3481f0b6ad362c3ec5bc4cda2281cc8cf7c0b67531cf71bd59adf88dadba5ecf73a7b14f31fbde7717cd91c805dc97ed81850f87d7eda60e3ddaf0c60587a2e03529b7ccac4ec33e2f179864700cfd86d9d9e5a9e8a38de9374c057b524524a131183286865c5e0df5e7210ef57a67f0a0a041568692dac217f0251e4f6eb29a9debf95f515897f20c2ecc55102303f40491601406f07fa9932b4c0d758ce906ff53be1ad5312c9d48091000180ba3cacd31b19bbac535f91e351424f4452a89c93389a83ae33246d9c2113788a8e3a0a17007cb3a31f7d9f0eb73a23652a7b0cddad2e93ae96dab8f002568c8325551ca5e0b1acaa408b11154d125914da353f7d0e4e324eba2d08cf7cc10771de4bbf5105c144ad9fa466722b87b21e160735ed01c95a0830a49f1fdc4398d8377627dcc6120928f528a35210d235e784acbe5eb497ccc05790e629c4647041c82c1830886fb6f17a1fd6e199f82251825e831cf5d3c79818a3b068f8cdbc9647cb8936d85c8769724e189128c56a22c4a2324c83e60e3b7b15a8db7b48d8bea6780b27892e0a2f3edc8581b38b56cc14025320661a65e106cf9638e7889c1b0726225069999fd056bc57bf7157395e50ff0125805d9b245d649358a799f49f11d1dbc5a83220061302d7b8fb18edcb5eb1fd0c219d5eb003a41f7ca26d26cdf019b6d77e00d416edcbc0a26fc034ce8bf04d01e11a11ff6861fd19caa490f8a174038f82892f13a282c99e9c6d11799b798285bd8ae861b7ae5271bd18a965d59797818ef3fb55dfc6a811f400a330574adf5b3977e1e071d11532711b17b522d83c0ef8c22278b9a166f1ac8faaacf268a3aa89a3b49593f8293e59a24b0f742c1e19d6cd1c18f2abd733a50a1ae78afa916a5e28634165e6a947f3755cca01a3891b9c6c72d06b17d1e41a7e23642c911570d6cdd8b27aa6a54d1e64a9a7a30b8962992ba6bf78bfd0e2555585127e79190dd3574cb1b6f2434f54fd36cfd136c6c2d683112e41d0a21461ccc05516f0cc074a0dbe222e59150350c442458de5e9b63832d10bde8842c5e7b65b60d4ea8ddf2add36a95f29a4600a3f42d048d3776fb580b95b60943b11e1f59be28f84c3e9460145ce1279eeab8a6ac3201ce44a23c30d641fe59c7f8c90e1071fb0284a2587daef863942cb4a47ce4ca94d0a6b88d5dfff318a5224cbc5965a2a7c50e1a95fb853a1490c04514731042bb3554be70baf40bf893d5cce14495d25bb1a8628b21a195ced04034749078e6841812841be5744b21cac97b375c685a238b06e59663ee9e92e334df318de77e09a7020e8a56e408e96eb72c8d646dd3a0947f295127fb361a4f2915b3ff4f6729f7e6cbb2071a8aa4b368ac8e47465f801a5d9a70d6e130469d0d68be9559f57f193315c9d8d4cdf4d4e6e3eb9a9401751dfa84234bb3f5cdd011e24d94dd102ba9cc57eb51445a460f7d4365abc563c39745e29844262d2c6d857baab41f199b377e3cb2f6b392710064de8d8f6af2445ac462d145409629fed4e50f0c7857e657300571353377d8f2da19e9ced55c56976cf276b84903d371c3fece3b18839caa06daa270b13aaa558360e3f4339988636a03fe104c8ce186d39dabb8cc00217fdc8faa9244f3602a69f907fe9c0fa5a38a23723141a547dd1578ba0f3866bd2e49532c5bce6c51270aa695d7783ea0e6f57b890f8ee03c42f813111c9948c22c4ab8306b11b3263aecc9ea0d8f28e27829843befe8a013c7756c4bd638e50f8c6c0e0043c43bcf275ddb0f5c2ad4821590e3ffee35d480bcd487f0d9ca8ae9299217a9adb8cdea7258e2d2cd669f70863ede10b5a1372d2ecac0472b272e5ed2dc6750787a667f285631616bd0f98716d6e6133cb24c17e204b8467f3bcc6306c62aae0a0c052136c556cc576881fbb090b13509e5da47a6feb038a59fdade7b5b5824634ae1f7ae6c8bb92a32f0eee796acab40b0c577628e344949fc9291c6703e9132c3f654805dfd82efd1c56e9bf2c514a17a3788e40fc686c04900851288779ce592c975ea14de401b985bf7ffe0afc35fd3991784610287045e4f0332c4be04476a32cf00d5521190ce757b7111e59fcb83bf99caff67a567f34e6a4c23f5ac36bf1da6ad7db596dbf16ff2b6079b03b93255c6a5dabb3fd4eb23539000ef0acd5a8b1ca15418453066c2cf821c111c2f28aa1d5895f8f139d57f692ecd2e2b130a5d9bea6171022a5fa5b4cb0affefe7b43d5fbc0e123fc6673d9930fd01c3fb62cc8f17d29c30d69b68b6aa6b5f4dbed458b9875c7b8d5440f4cbf7700d23e65e00f075a0aee1eba7510ad7a13d7825f06c0c27634ddc12e30cac76032c9d498af48098a597689e78499f4d8fb0aff16d1fb686a4dc0c8c7df0c52d0a77800460beabb03ff610cd3d90cd84fe4bd87babc028097416483d1cec1af16fb9bda4a2c97232e68c39abee318655422f44000e5a73c2f2fdb7009f8fbebb624ddff3a6f666f64dccbde8e8c54ecc947bd969a526cc4f896b9fbf9fd6469256d3107baa4410e9ded4681828412b75aae2cd628c14104fb571235f321e86463037ec14675c7aa2d766d8fbcdde75a3d7554125ed02ecac694359814a06445f6f67334637d5e889eebea189bb7e3c10cae99c75bf6b6903c6f050a8490a951b1464a94f238745fc5ee263a052497fd318caf9f8ae73b2e5d55652d7b0ecd30177f3fdd5498eee5b80efa5cf5db94eef7db3e606f306cc5edb57071ebc53032a723a7c5b3052ba4a07aa56446b8c6caad1a362781e5195f30a2da9426b744611f26a5c06e21d5fa243ad6887e72821901ea132598100480c5208612541e8f20cd4d63d716bad5cea711e6f4caa95db4f02351244f6267befbda59452ca9464000779072e085f33245e4665f6583d7e167b242274d230f99b7fe44636527a04a3f6eb2f18c5479e29a594c628297ddb974657567123398ab4733fd23afca9f797893dc7a1deb191bf4561ff9bd34fc96c14f51aa5292ce38fcab81d981667ae34577777773f9229f7f37a177bd59da19c4f95ab9070de9dbc7e436cc546fedc5b24ad636e43b6af3b668b8d3057bd6d2449ea633fed4feeb723ec29c771f8db668ee2d74990b48ece1e93dc0e8c7a7577f74a7123699fe9aa0b618fa7b8c4df54383aded569d330ccadc4ce6a35df9a5fe999a8c52cd31c4bee1edd90d59095771e1291483d4b8c31c6afbed4da4c752c99ba7717977ad535b6d6e3371abf126bf091772b542ac6e856bac6b1e4da5566c67e560d5ec59ad762376b156bb05fd1344dd330ec57dc4a7ca7b9dccfdcea8e63f31b5e45211c8c61187b54d84361e969ab6cff73654dc3df104dd3fc0a8e95a6619ae6575c2ebfb2cada7f435655ab5d0f98a5c3b2f815bf8225b75f61a2f19926349507c9afbfbd56af9735f8056ada36e7947fe4b96786b9532af10b111b65f3fba775f84b49ff74c218868f3c531c7fdae676440cbf2f8d18894874c5efc83d66aed6d1eff8eb7e66d8c8eb17f1e7d91f28cf0e577fec3f0cffb4cffc9ef8067bfb32ba5a47fc897305cadfe9edd38ce3513f62eca77decffb48ef8f284abe4d1357edd61359fd4fdc6f8442e9fbbda67d73e51ec0bf3945f377a616e2e6ef5e9f6f165def00d7dfb526a3ff5b1b776ce4c2fa499c6187fe29ff691485c7360ea37f55bc95a0773b44f953dfbede16b11c3b0788d3a8b6131a6be5a5b511dbf6b198b3fcfddcb40c766fdf8ddcf7f0ff232242295d67e65f1b5ee2c6b2c35a232fb5ff7b5cadab6fed7e1a1ea38baa210b45de37963c537dd674f53f0d1fff5bb4a4d3d75af35db66fd9914566d15a75eab75067f2e554a8b5d9c7376189d145561a609b234f8bb29bdb66f42c6f0fceeb1770de56fc8967dc39af927b16fce47d73f1fc337f67b8921db96bb3f7ddb7f3267fd461dd6efeaf03764cbd89fb8adb387b552194f2df54b7b7982dff21b4f9bd5300cc38cb81a0cd33416565343a33de7abaf594526cec2df9163df34d29efb298126ae1489c884ae1995f247ffc88db02f92a7f6c93cdfd53afc676c82d11cf94feba8da7f3132c9f4b9d770fb17b1945262b11b7b22bf10c214fa1dcffb61f803ca8d6fb8af4fe7fc39e737c6e6c77afa5f6482f54ffbd4550a35310e0b279337d246b256d8a7a64ded4eedce894d577c4abfe6664f73eb1345ef9f52c69fe48cdfa495f2312967482943ca0edb2ca6699ab661a3f99ce6db4feba09fbf233abf62afd5c72690a6691afeb49ff6c11e2863f8464a29b1a727edbfa3f901491eda1b7138d3b8979ce4240794a9fc9fd6a1619f7ded49e7c4aeccb6e29ff6a153b2bca60652f29659ef59c26412327cd96025db7024b7327cd5c0945f3634c95ade3e4219ffb580864cf0a0ec67f4c5deefd73c8c42349ce34f66ffedfb7e5e6e8a44a488258a6da47d91ecbdda7ea376b551a3d3b3de3d6ba726eed87ef4bfa31aa771b7d8e8f4da7b6f401e0483ba983f8a3fe9158948914cbfb1f71743cefe4928f9ab7fe446db17c97e726afd3fe9247f5ffbaa7e8d3fd924d73ff24cbbbf718d33ce384f7d3ac1cd2f0df41434fa8dfd5afb44aad7348a3f1ffed49f7e53a1df1ba5f6c4f1603dc546f4b7e758330f63ea6144d1af6fbdfd6d64e08de3e16fd43fb6ec1f64e2600fdbb0b0d3b75996ac9d2eccf474baf474e906dbe7eb2ab91ffb3ae3e595f17debaf6ef644d131dc54fee763a2d8339fc62aa6f0e779deec3aab59ecedb66d9b868de89fb6255a477da28c653ed51336a25fff86bfcef404b76dfbe67c9cec532bd9e21bec37a1d56a69c97efded4a99cdbcfd7734f3e9b9ec675c187bb49771358ec7f64627bce5ed83c4cf9ef0c7e1afade4fa1bfe288094ed6b9f652fb91d59439a310b64fa5d2053fa446e3b43ce87962dee25daa7d2b9f21509b4008c91e1c7315ee4e67eacd015c9cff2d71628b2b167276b5def2047ee87cd10c7fc7586f802ad0c9fc6184eb2d675d628c703cb36866c610ee77cd86cdb87f331f357645298a37204f06e0204a8193e013c436c6dd775b5eb30da755d8761276e6e9826a36718d61d8661180cc17191468a1e33a0000d46a1291350408f29ba3e6c6e3fc0ece69c73ce39e79c73ce39e7e41ee0f94719b0642ff21c71d0fab5970c49badb9d07f87d3bab5630c74b06256f95e14b062a596ea07900b764986508b66deff7c676f3dfd2c5ddddbd33841042482b95124208a194104229a1dc0e3326cb0a67a5f25430af7eca155768d102c51858a690ea5e6bad4116bb7b0cc257992b7c22278af56ef421fe62e0aecc436e47f7dc853f3c4cf191e70ed53de47ec8a030f4a3d5f6abd5563f5eed4f2d6881275f7bff5aab6723d66bd86b9d3d72eeb73f6ddb693b757fea3abb6d30049db8d36f0f33ca23e2053590e8e14bff50454e94a8334664528309d7921320d9828b152e5098e0e982841aa80089162801218a23567a851facb0019620d840c494a211e49c9cd33926804109131e9eecc007537060099d1a1e0b93314cc002315e5188a00bcf0d1a50f2620c125ca8eca08a2b4b4f39a7d4c19319be74a022cb15c86f21be20811658fc90832c3cc810bc7450c14b0729aa78e900e5b5648a9a246566814353122df91b322da5d6bd4876a9a3c9f4f911c3f6a12f7530c9f2752cf196fca9a38758db9768a2947ef631adc2b1f815187ca114d2b6d65aa45c1d22e5798f6296b891dcbeed41b0068dc13728c8b7cf4322e5491f29c723f7278a126976c3d83e615601861a9978ab5698a9639bc42658f892b81fd7ac7dde2fbd3fede327bcb74c8870cb23e59f2782a72c92e9a9079e3fedae4ac44dd5c955ec71adb1caf3e2e64ddc6f979b8db7ec8403cf0a698a1ccc7d613e6de119d59f9b100fd23efe101782b2ce7ec37da48f6c190a12b7c082c6420b413c8876905353bf261b7f48a71c7c43790bafb3094427f430800af9ebfcfdb44fe3f9af1a9cc4a1570d4c727c135ca88b5e338409c22f1ac4e4581421f7d33e53c3b07de48f995f8863c6ac3018d9503c7175d225db0f1ad420918edad3db2ff34ff887b59652fb270b6d5b4a2d957336124ae7d339c5c82e621807d399e2a63c717f393d4629fefa0b973df4e2c7d473ef71dccb5c087b381a3deee56778c896b30d66b27e9761232c7b78faf9dd77484e9f7d7de750c8aae30fe984394ca966294e9edfcaf3ed1055b64f9fbe106d0454d9883ef65aac29998f147f2a9928de13b9e410907a54eacadccd7b6895b95eecf16af6f5d2fba9f296b3ecbfeffd3ec71d1e8eb7da3f22e1dc330111faf44429c5308a6133eb362da354db3a6f6a928d8099f552d9441425b7e3f4d93dd55ab12a9bbc49ae14c3a8dd60a0996218a2d050863f8be1cfd37267d9ed332dde705bcf3eea7a97e66a2c44219aa7387a280c21456108a98771473ac3906262171ea6f3c46032c5def479139e94e651ef32ff59d4b7a2497d2734f3f5e7d35c087b2656dd1494c127fcad34fc1d4d975eb1d156dd31a54f31e750a898b64f863f248cb60fc54d79d2c63616a0f5f2915e0c3581f6e8a2942a712ec3826e26204c4098803001e9907a76cbedebf60332f5927a670b1548dd6e07a456a6ae2d000952bb819c309006d23ef2a3a0fe74a3a0befebc183632a5e21abe483a09b5b6d0450b615a00d342530b5f5a08e2adf9364cf93bbdc41f64aaf4a3bf3d84ae2ce3e5b2dfeee7c2478e8f9cbecc111b6518fbed3ffbdb091f0101d23a2036da1efb06d23e46946220ed03a46a1976eda4d7cb304bbdabf21e26204c40988030016102b23949a57a95ba1f526ab21e359f857fa0ae45bdeba77530f120d4dbd5b3ee0a85423149e1af334a5a1b99a0ae4dcd0f6a81afcf841c04680651d178ffd33a6676ce87f65188a866f5daa9c933b23fdd8517e241918903861c79d007995dfdfeed768658462f478582608cc24b1e0ea2058942d27be8c72d530a993c6fdda9bd95f7f4776c79715e5ce7fd9032a5f3ca58d39c15515eefe6dcb64d9e9e033a9dbe701cf7a5fbd3ed388e03da38206edbba5a6b965a5fb52ed58a6bc5b56220ee3fa05c3fee2bfe80da7efd533d7d6d7ce416b32f73b7e38fc3d8868db8effe90386c646dd72ab3df7c685a5b0c7ba2a86518ad150371ad29791027ef6c8e8bcdede0baa7df75f84798a530995e3aff872876d7fba161a60f2d47adce97f285ce1c016cffbc19b69d36b1645686af244a598bdbe422b7442d9e254b3ce7f6f4a5f712cf8a7d57ebc38fdc47a88d00848f1bae3c8ceacb6cb111fcec67d3c3dd7f8ebb3cffa77570d8c83e86023673e47ecc2c9b7e76b1f9dcadf32b82edcfec5accc21c4d04d39ff6911f12443af55625035c72eb90e10bc952d63af9410e7fb2b94f719f4a719f5232fae8733495e22a873d576d0acb6866ddb8e7bc4f755daaeb524f14535ceabd6b747a983b85fa542af51e875f8828ef4fa74fcda0fe53711f509e3592b592a9a95dea6b244bae640df73292864e4cc6d699cefbd37faa94f7ddf7cba03cee7f5a47f6d33e1c96d88dbfc5744a9ab64b922cc936327c65e04bd63a69f4d5975f6456cffb39b7cdabf69339f529f4cf4ffb649f456fdbbc6df39e287a99f7dc35d2bcd3b6bde771de73d91f79e6f00b316f5fe4bd27f23ffd87face546d6754de3bcd8c2afb2ed5b50c3ef28cc29db98ec3dbc7d7ee4ffb6498c55f469ae9aa820863c42afda211cc5f1340d61abbc6aeb16becf8f21ad5ac5db1896c89d11b9af24f86af1baa20a1822151ba410c86cd797af73ffd773425c743fe5cb16e1e487563c34aad6864666a6aada94f33533f255365bea65e9592a9155567ce380d7f4874e5d138f6048caff5fd1a7bde6cdb77b50e8b8d5e2032e1277386f1912a79840c5f47926e8072248cac45cefe11309927c3d79157d67ca3dc0efbcd6d2a6fc167d5d7fee31efb8f423698a8067f2bfb10a21e4215cd136115fee02bdb973101f5f6372cf3a90bbd2583c2d83d3f9a1ddeec0840f02a3e9ab9fe77c21f1087a5e4787c48461277cc30f6f3d33a2c366a14b42cf14ffbc419af5b50cee4cb63ef51a11978b9efcb456bed91ccda18630c42dec3af977c3a389f2ac3cdf1043a7f9fbba6cd31e0f41b2e72a3802edabe8b367c642b3afd11596464fb1a6c514311ea73b78b9c5b41169d700d337445db7b517d9a3db6610845a88f512dfb274ae0447bf643432e57abf5bf5a795ec49e561f70295b2db3747ee6b506d9960f6a39c185a02de28207a62894bcd8e083ccd2001aa658e185164862f08494e23505c90cb412db25bc6f2ee17d43b209e6c8b2099630233b0d39bec3123c675bc4d090d812800ee688734e2957eeb2cb38d83a5802cc49e0906394388abf023a7f229f5434eb416f2d6c3fd2ed13f67014f0bae117788567d004ee214e0eac76c39f0d82cdb0fb5076b82484055e8f9a254b8e04e458390ae408ade699119b2557bb0c3cda6889d20372f6605256135a5938542b028bad94c0321b27320d0c6dab62e3585870271a4e5d944e05d701885cb0f288babd91585f781f5c9a4b3c141528192864562916d3504ab5faa29a79cdd00c4153b3d252b332c18a8504cb8675c5e666c5831b1c96161c195cc898c10263068d550868407fd60c7fa5b8988504d758395123c7064b8e4e0c74765836ecf03ce169ad9a68f5b0c4f4d888c2c60d1fdcc061b305c764fa61c41161aea8d2c55aab9484abe342479616de40072327194070c972b59a93e6490f4a76b8410d9860a268ca28f29c73ce3981b08293ad14ca82a423983cdf44a90f8ba8c7861416d1b734e8287fde1bffce2e9ff03ee20f2eb9b82091345f1be2ad39391e78d1d69cc42ca8e077050ec0007be6fb0083a4123c207922cf31794af15627d14d2e0085fa482f9921cfbf4678f35bd36e03b2fcf7ff6cde1cb3f4e51d72e97ce9d7a50f1a33843141a61f25fd48df050fa2df75851ede223a610b2f4814d2f04d3f2cb22fa578f3edf562cf9caf8391ec78be144fe5034f852884f5f020d7508c51de6c01424a94ae216f4d1f4f038ce7d2fcb6bc35dd4917799eb228bd3af0254fa62a56b2915e020203530bf3ca0107f96b2d7976077d2fc483280e4a79be033c489e20cf9902c541293b6ed100e36d5478503e529194a5f914f3e26dc9d8d76b5f830d6194b008bbaea16f95935dde9ab8157be8ab80be90268f85165ca86a39a8df3b90832a45d293d21c0eefa12d6fb95ade124243e96b318972e48bea277101540f5a220496006951cd145e37a1b084a04c63d18a8a144abff0e203798b3e91e3d8e1f216fd19607813904de9e370a14ed2caf4e1116fd12cbc0f3609a11fa9470503437bbdace41d97bb90d0c111de96e1eb09163e3cf1b283032fcbf0f56405b88b47337c3dc9f264c9c9164dc218dd31ebeef64a59e98cd29d4ee931c6487dba74f7e8eede399dd2638c91fa74e93b3c42f749fdd40126295dce39699cf261162f74d60f6e01c08542de2a1259fbb2dab6139b449d85992d69f068bf958d934208697cef1b8a31ca9edd6dc05af8f32184d0f34d031265c4d3daa39c544e38e18493db312bb49b967d724a4a2d921925a5945229069594d229a9189487298bf80146fdce497998b4881f7c404649219c1fe45bae4c85c41e1f8225447109696a9292723bb4a7580c92dcc3a5ff5239d31ce07177157bdcbb2ef4884247ee80d601813692fd317f2398c3bfc22f93ce6921e6b2c3aca098ec2dd8244408cce17f875c17221642399bd549616760bc86dd60a49adc40c687293606009102252eace032050af9ca5f3711227f0d25b7942f2aad3f90b5971e440254c1cb872e25a85ad0440c0cb394bd345132bb1e2c75892f884aa86c4088d70692569d9414266b5db9a0f261531b9fc8e5f7941e45f710467e3fc9f25f7e4b7251d224cb9aa594527641340f51e4f9b3872636c4f03ecf05c4827f69608c2c5f90e58b891559f250c46a098b75b94bcb9476cc92dae5062946139dc10d51da3098620fd40289152e9214608c2662242980184b564e5caf1fbc70bdaad349e9dcb9828398fc793c5194c820032548787c7829c141a7094fcbf0a584098f16de29c39712204ef821cb8b0361a4327ce95025cb0c5f1c108381ce7e98a5fcc1304b19cbd0957df6028fce3f2ad019b68cf034e949fb9e07c9cf82704b7e9665d9db771179f56dfddabd3d8c42f1a390ff268307d35a8b61f8a607ccd8f38019c3fd1bfeec57a091727d5b6d8533053d05143a01f618210596e0d9eb7f22e4af95600922f4155864e7f282eced44f666227b83208bc98e7dad37061a438d160f668b894c59c13e7dfa935d805ff20b714c1879882acf8fc09c384a0c9ec545f6e9fb8f10867d0f7e29fa17f6747e5683a73df6da018b0a46340c0f606f56a88f7dbd8978058b6f26c537b3be02e8dbf9b4be7d5bf1cdc42ad8aff8874c5c819e4ab1470a145e37f196ff6c5909d34afe327af03e2f4b0f1a4cb6a8a0c91bdf050f3af2a0afa544dc4a3798f0887c4bfda20db15042afa0b4db2cb15ee6459b2bb30b2a250acd6fc51ed6473624873c958d1243de7ffc9637e429c950a5c95aa25979f6f07cfc500a9e0ec11c4ade8a50bc356688baa852ffa6414ac5033b2441bf5862e262b000777fffee202a4f95921d6d46008294726a52ca183f4609216c6c219d4574774f8f518c172c947c195da600b6518e727a8c16e572b99ab22896e16bf489cb5d9489103b503c2cc3d70e3ee8fce0c50c5f3bf4c0138537337ceda083159e67f8da2187fcbdc7e4b5c30cdb172f1d6a90b72aa20d746090058a2e3a5064a0cb10456ce10549d31355602a7212489ec04009a490820be9440e13294e40c50c5a341581e588a51a493f98a0a0091d40414313529860a786e6d265270b2da4ccf0626afa0114412841154ce078811740e48004104b32d044971a4d74c9d9014745d3182c3660c30e58482c3b4c475879420413592cd1822f240974c04030a80073240460b060ea81bcb243a50b0f0c62120134e5e313424aa652299aba94a62ecd91639b5393524afa92be94db4ba94929e7a6650b976ab14ca34b9a49132716cb345a37ed76ce305be9fc21c729c7898b932dd95d7f13020f3e95b8c16b45cae9df1768e8eb2c728c22fb7fad85eb3f3bc27f9e08ff0dfd402d900bf402af804cf00b6c82606018d8051403c3e8a436d2473a492f6926dda49db4524349a2a97495b6b294a5b5f496e6d25efa8a66ea2f40ffad48f8ef83fe6b0909fde78af87bf99acf1df2960c16783effb978f80cc52f06d77f459446f8af881411fe2bb2e5e7bf225ebe224c397e912f391669faaf08981c8b84c9f18b7491632c12868d886404e9488e484972fc9096e488c42447a426acff909cd8fc87a4942312941c3f242932fe434a62c67f48547afe43aad2fa0fc90acf7f485876fe23ca27e0f8af87ce7f06b8f19f0adf0a39b290630b3906c9d101ff9f90fbdf10fc9f0b39ff1de508438eff110122814a8e4142df72368510c21dd24dd9070fddf8804c500440def2176249092e194c77741440490a8194c8a5d039460fe13d2e292141856ef2464a1556f0421304951708b618994a20d841def20408f96b231f941d391faec9adef962b9782969467baef9b65c8a560e3fb87671b4fe4944b8187c7661a6feb43b8f5fbd69cfabed453dc770a21c80cb9147a478f1819d3c0169a0ca3e8410ace6a95fd4f681d44ed0397fc73a0d04999f55cde92f2cccfab65c8a1109724e5eee7cdb28d9f17cb904b81e7ebcf145a35430e055f4a4aa2197228c0a5a4a4ccfd44a197929264cc3c4fe4ad27f21ed7b5d743c9d8b8d05b23dc99ebad9a1b7f9594e3b36c6e706430e97192e3b778a0e4f83b52727c1c49e4f83774aae4f8d852fc8d86961cff6ffccb25c7c7177a4b840b63cfcfad71e3e7dc2b802e0937e80a7d459ae42ffe10a2d6e1533e90dddf7555883dfe235c16628fbf08fe3fb78fc41eee3693db4d5ae93614d46d29b793e8d455f9cfdcc64273bbe6f6abb368d972739b0bce6d2f7d85b7fc67dc66bafde57613cfceed30b7c578cb5fc7ffc6f52437e247ae27f1254caedfeb4eae2b5d87e22d29def2af713d0998c31fe806893dfe41d785d8e34fc285b147e8dab89e7b6ee7d6edcc733bef5ca87361ceb99e6b5c98f185f9661a17e61917661917669c0bf34d665d985730d3c0ac825906664fe8c2a2a00b8b48b8b008e8c2a2112e2cda3a4bce2efc92b14bf3cff5a5a4a422112e44c1120d962415b92e2cb2d8331686f7f9732abe1423ade27d9fbd39d7cf1bc5f52e0f722117f62adee3ef8a42b6c8a978cb1fbbc27b2ad93fc8842304bf3ee0e81b6e23f6c8d6e4a13b55c7e6603532acc518ad07c1d8cfd1f0209cd1c9f07050373629966a355343435333b352b152363237289c4ec6c9fa402346ebc36fafdd0c63356c4ed5a13b9347b6628fdb807d03c20c6be45042f3f6e8b227ad33d3360e7542751e4a66eb946a86a666c5b2b9d9e69c346850f917d7c8d1d9e169f54c1c38bc36b50c8d23de88d2862422259c3d73ea5079aaddb1980e96e5645a0d6dc31b77b9d34b22f2d4d1f05cf03a6fc69c9e0b9e87928192c19149ddcca9c30c6b866645535353b3a259b16658362a9b9bd40d8e0c8e0c948c19de0c1a5decd21dbbe00dd7d06ae464393a98ce8edde1a93c2ddaea993d36a48d1bf1060e9744248e1cdddd396e96d0a84be9796249a471c41b51da98179012ce1e9fb4452b4fb53b16d3c1b29c4caba16d78e32e77dae605e4a9a3819280d779335012f03c940c940c8e4cea260555369eff6aa59a61cdd0ac686a6a6a56342bd60ccb46657393bac191c191819231c39b41a3a3f12795f797db5c70f1866b683572b21c1d4c67c7eef0549e166df5cc1e1bd2c68d780387e38039268e1c38729c6862a0cdd8c0830fab27874090b492dd44963d48c992264b29a59c39f2b779a1b2e50362bc560b3c2011822b43f85025494ea1c48993b7fa9c98555bfe703e1c03c81fd014a62c954c1993e5afba64f92f5f1ec0e2034c642987320d07a678e0c75671d1a52940e480802ba838513d0e56bdd2b9a284a525839793e14bc9cb0d4a61d42008254b411481c1f076327c0501c513416c9183821d7868f06e862f21ae2c11220633783c19be86986167cb10472831c4143118e2064ebc9a0c5f509294a06c0067e1b5327c41a1522308285e746c80e28356132272d0001149ec78e1d964f822e2045d1041831c1a1001c616de8c1c6a60c0534da9a1030fe5840e115e4f86af22a8d8c9c1cb91e1ab083076c6f064a404e1c95cc13df06eb47089a2c54e0abc1919bea28ce151f2643c31e2e15cd1c922a50a9d2c3c55862f296072c0f0689272e07919be8ce88187031e2ac3971145ec78f15819be8c1801cf0f3c9c0c5f466cd1e1814723c397116054ab9f0c5f4738c1aea8c98190dcdddd2d642b849ebb15d0bddb8a0e051efcd5a6c48338b963c4f16e194018218410c2ee399d5a295b6e3188992f3cf8fe3047bb1b4529ad9df9c8abb036a86594f2ca0c2194d2b16e2fe295468e5994c78248b13d8aae638430b69451e29b037891631919906291764fe2af84101231e1c19736c6e8b7238c8ee445da3d498325c06f28b1853d78fdfe10df440c33cd443e4626296b1dcd101d678c32495226c989a82293783edfdd6712cc11a3cb0886166384314a196574022e45b7abff2c5b520e4139806fd572ed800f9f5ef1b5a496182184391287945256d9524a5831bcd69382524a298594522a31cc33c72e7abe95524a98adcc73cef992c865f4c05c01c793ce4f71c81968d083bef8f0e984d67a7477d742caf71e793eec98f064a5154f40e689870c39d19c7c971f8544212fca11e2020cb193fa480ca007a8a46c19ea6aead094000000411000c3150000280c0a068422b1581aa6a12ec9071480117b9642705a94c9634994832008620c218000020c20040005000435443a41001cfac4479965fda83821f47df75a5473f64e807bb27449d138657a8de29f40df6acc60f28375151874ecb91070c9e995ab18f5dbffaa64a2e2e0270c501a0ac270c90dbf5ef7823ab75e62e9380180a59b95820847d350107fa91912eedd5889c004d16f36c79953b9dfd0b2848861423d6e4d18e51ec1e9f0b7de91e7c403587492f8056b4f905b5f1bc6be909e50d3c237849eb0bcd217df3678afe9046fef86ef57d818b0ac296ba36ff20d128b1fcbbb9da902845a78e494e361566666827a8848644637b6665b6f9289b018ba9b3c46db7d7b92bf629e9fac54523ed21f3135b862521bc42587ebbadabd47d9a3928f81ddc9dde3cc2c0847ea1b5edf4ca79b126c631b1bc4052da2c50f396a4a1714ae744710a2f99867728d990dcbf03a32f63006edc49c35cc8360fd295ecdcb4bf1214722e96d8641773d19e1f1ee6ed31427f07103e4df87dd8ce79474157d814c767bd751a1f740a7e2e290665647477703e5693fc7c740fd09962211256b413a540717297f6b82a4a132019ac5d7c63d04d14c3275439dc9874bd31aa048f9c5f8819b1a65ac98029a199f5bfbc5c7ce546d3fcfeac6544fb0d6069829d2c492768dac0e530197e7d2e474e03226d643319982f5a5ce0fefb9762c642578003a3c070ae782a50bbce99eb842d31d97a5ffe337b81e6081d40f493556b5bf61ffe1e91738256f73375eb342d03413686d45cd8db7f3342ea8424ea38db7fadcd74f10366969913cfa64c623705201c865955e87921498be18990531b01b88113f908ccb431465191647c892e4014a6156c7e66e7e349fb2554dce167e9bacd4da56d0dd1d8bfe1b00059a2d5e95bfb1e381969fce06f97e2aacdd5ac1aff55c54b4b0cee691fe0269acd4efd2dde1d29ecf7651cf3619a91eae1d3e75797cdf5c5d100218b2e9de4f66431edf2ce39fb7ceac4642e1579bc307b7e010e4cd292843994356f984905d3e26820f9b02658dd946214ad07adc125faaff4751391a2c5825315608f52853d6451e45a3972f5e3484d7a3733cc7a1d1e06c8cc4ca2cb5dbc796f04651d681bf441e14f7c7288cde98de198f3fb6da671b551bc8fdc5eb9557cddca7e8dd7561629babebac1f6a05e1d133a53d63a142559055b51e5dc8b800f5a2d819c389e7d0ceb05ec037b9e4ad1ed52841a46c1f97bbaf59506dec7d9e07b20d0bba004818df07bd33043e8deeffd59c9e3dd95718670cefcaa37a4061c24c7350ede102911bac709c335c687c37a2318a511c75d90f89958217095d49580707302e84d14f6c9a386373bc3023d1b3df5dd2c3aa4f09c17bf4b004caa8538d490bb772f3fe4924f110d0070444834a98a126d05a2d956b426ecbe067d818187bd22ab5f7f62623d7e09fc56fbfba2bb2a68ae019a01f7aa76776b2f5550cf5bfc3a10fda7fefb8ed313757eadd08830391e3d2f6787a5e47b7479a385aa2a2dfd5e637b5b68ffa0ded3b9381bfe2dd3e8e500a6c97e8233a5bf5dadeaf0ee0bf8fd2e2c7ae1d9a64f7251edda88a57ebd7b7c0501448e3e3919b5947746948b3cd98b19753169421d28e1aec00c694f7cc88f0491a981321e40ecbff6496d36f2f5e966fcdd63163c8ecb82c9ee44cf42df76b0df21e3bf436ce55e3073caaafc57066c42d511341bd27af55bd1eb28a6ca86d54ffdc7aded36584fc99a062ec12997b4923fee9954a13a62f07dcb5e9b4ad4aae6111e272bc8a64113d473bbed96ed1c35332a55ee33efc0e7b42ec5b80e656f52015b43ae6b607b7967dc5b08979722f882befcf1e586aba9468f1f489aff5a1e5cdbdcd46b8ac712ccefbf03b75b15c32c74fd687f29011bf9dfa24f9e4d2843d9fa0dbbb885a6f547ca794f7cb8848221b0bcdeb3201f36734cb83f0f98da74076926220154a3f05b850fcfade9b9fbd48acefc34fea05284560678e53ecdfdfbdfcc1c1d8e089f41f6339658c9fae8fa525337c5b372a5766f899faa05c19e36feba3d2c88cdfaa1bad54b891ec48b18d7ba7abe877a41098ec43a0cfcab2a21dd4d8562ceb18ee925957e5ed739b38f5a11c32c76fd687f29019bf5d3f964b66f86e7d54aecce137f5417965c6df7a9d0b4785e0a60556551432dd515e540eccb080914054b7ed54021b4d7d8f76f07b4e5dafc6e093f147ef5e48d069ce9bbe5880a09b599f91811571c118e8f14207e609433be2869fde163e5626d54eba461568a16c5a3b032db9e9f06a3a17d4fa560dd5c1cf0d8fce8fe43c1f8c697ff183e1706c8486cf821e9e9d07aa433e6fc9dd4227b2ee1554d75175ada24a3778a46d9a67fb04fc7f76c39426ec3d0ad7d68fb3f9adebbf7d2f89e6ed63b47ad57ccd72ec378eebc058507284a4388817f6bec5b8e92c0dcf772c12f768776c282f1928dce8954ccd5f4060fbd199f0577ab0cfad3bff4a9affa42cfc2a1ed87fd7762bc469f07dcbe4b2a350c4b9d2fdb878a0d31fc04232314378df7262e7a387c2a7e326ecec3e60512a853aa7e160fba5b2f0a77a61df513bff5536ffc84cf82b3dd8e7d69d7f25cd7f52167e150f60afbfc753112dd17a06422f4c025a5c1fdd94c4f5c0df533bbf4532ffc959f8537cd8ef569d5f21cfff6426fc541fec3f2be7a7ca73de605d6a54e49be9fb53011dc01b630874fd485be61af832f02670951cfddb0bea6ae6c5f525fa22aeb30b16f31f4f7aa6fd6e02844b0518381f28630ba35f40ad001d4bea8521e0ddec18ecc42b0063c74c1ddc249943b1f877aad57bc9cc908fa018500cd6584ce0622fef39211ede8673609e8df0f436a515f59890816cfdb97800a11c53f9d4782974c2b11850990fa16bb188b4108de297057a612079e906ab8a50ca0df806c4994d5ff90a63f013d8d3b06c9ecfc603c473608876f1020ec8bf428946255909a72132fa2197e9db85f29e11650718cb23851ead878447180a23859f2d0f8427188b03059e6d0f850ec270483965ed9c46b057c23ada2ce8221693dc0c3462e6e4c92c37f856ca2fca7d8e82b7c943e101067598c257c343d111866580c277d343c21146759052f03dc30cb82249663f27069c216095c79c4a1d9192086174b83924bf4ada8189030f1bfee87fcbef5e35a897f053be60ebe7a0d149ddadb9bc220310e5fe3f3b3940923205ba9aa75708b9dbb1ebd2465853229533df43277c74e9feaa11d0f1a1c45ee0fb90607bd26c6519b1c41afce54a2c1ad1e0c65c85c26e700be00e8c709796264a26b3b499d2ba13ef6c85bdec9d563fe64315629c970226ea5d507c2b29ae1afc1fe1db0b6ec264b4cabd5ea581d5ebbc9f7f7a3a5de1887acb847282c1bf52f1febc09590ae4f4d49a973c5dbd0b28811b6c8c98e8dddde0c6972f64e284396ab3e2644f1ba7ef61dfc3a568164e847e3271b11d02016a507c9173b624b00dedc02ed58b3c717db0b289918edc1067344d21ca6eb25317106281d9e33590c1f558748a1b944156b67cc287d15d5b7328a3673fe9c0492dd968e876d3607548b997f01d82e5b46fbab57d200f4cc741d40cfcc46d7a38eeac5ff53b29dbe9d7358905ada132bf53af9733bf4d8cc422e5874b95c07ca2578a3ed75bf5f64fc3d78407bc7aee51c79aac7ebc21632047fa128ce9fa99029240733852a1fd29da897ccdf209c68ca0d384fd035a4c5849b0c1bf10f1a23888bbb4e0be37c06bc1b3ef974ac90e59aaf041c06526ef8ed32914bc58e58914b23ac988de533cac7b94118eb3fbe35ee8c1e423b14f6265c218a7563bc2ad826a1f142e0b4dfa0d9d6aa3a7040c9d1d88fca423a7340215138d4ef735555aca7a767dbc50d219b53484c660ed142b846e1557238650cc8c8f70c99be400124b096900178ad83a55e50a49834d6e29eaadb5847ccd8aa05eb1155def101a605f1594ff76a86862788ef7ccd631472e5bfe412d2ff3545d7141da1178a1b89f29a98c4104cf14e4c9e3f0a5c32fe3a7d92800dcfb150a52e3881ee3d6c24f5b636c9bae3e78648fa14d92d34b96e2bc75e788be6e3ae15d2788c876c1435b88ee14f6b8ebfb1ec7013a7871cb4747ab3828a4be07b7f2ceb08f830b5d2b13efb13363afad4e8e5446dd9409095c12d1a211a3dc695f768c144e2cca48caa654a27f3672c3fac3d03ff7f46e479bd0a6771d8222e488c3500aca44c401b3240a47a8502dd19ef9d0637626265feaa1a0e6725ab0505d67444eccb1788edbba83a47fc0c4817ced2eaea214778b827a5e03fab68d4626e4019e3beb3f702877d33422b727ad07ab1d09b6c80b7ed6d904f5d8c5d549d389ce813217265a9e2ac86856d4583d031119261776b8653384383efa7a3164b1bd4ff2768b196b5058a990184d11d7b84460f446144c2051c7fad36a360812ddda689d8c430ada6a39195393e52735130c4274c00845ea125c151726eb979096a59d2cfb64a2ba7ea5fe353cce9fbda54763a42695a024a52eaf512dbb9893bb748b24d695938cf60f567dbb08762ce3b749e8816e22ea0aa95d9a1dd903b89b90bddaad911532ed908230977c547d9274fb31d8099c3a40acc36d918d9baf2c0173f4cb278e90b90c33ccfdc14a3d7c84a112e8a3037692158940ba1ecdbdb5e4a9686179cda18291c95c3c140cbcd17e744e2c935a5eb783dd71912bb2b32e785dbafe39b5ec00d4ee33561ce8d2488c1ecc5cde8653fad0cd7780a5299f2b8ea5f122c815313054e68f400f53de11f242f68199d6bab792d588ac4cae6e82dbfab35a606d6f0736bdd3b2af1409306a2336bc29281b69d727572dd6b47649c2ac2c4ffd1907f202a6af01baf1da31ae7f59984211d58e702d7af2f29e8b3a642f8c3483a1e6ad202761cd309d033b2351cf9a73d2db7b725d50c671557533c47c4d2aca71be60252bc7ee29f7f69e8fa3802c5abe7f8bc0169260420c519304020088b9fb0dd0e0892269d06e02b935be85b22606c3cbe457bc3a2f739c1bb90070d3e2e4281b1c3643f835ecf1a3033e61ce0fef7e5187178e748b136e01a67a0a05645ba978e8af4d27548c80b612b3796760a084349778f75146eb990f479df898f6b2cbf2cbce7f5d32c44e509b67d4b2488e3a1da2c61cc58dd56971cbb577cbc0373a9d7ead8729a13e6ea5c7f56a5a66ec8a56cdbac4ee008272cfb004066a61d6726eb4b07c037c24816a050928616bd5cdacb7dd1c9fa1691f9c5db100aab038c65cba86878d3e115a313c8c3b66a58affb0b9fed2d43c8c6b165fb6975d6b2a53dbac35dfac092e9878918a6272fe8f8e5aadf485ed626004250446f7ca7242491b459d43ad0bca8bac12e43b4af90a2ac2ae2dd4ace5dffbf0d7e55d8c277d695f58900fa35681f485a5025d26a9fc68a8d1c820532e72bd4a2fc7414532caa8cc45e132fecbcd1b7e8963bf9902af26662478c0506bcb643bcd5ca592e9cfa9ebe55b3902a9abb6fd0e9862281ebe903613313c8b237efd1d2407299ae4630fda575d20f3ccb9b7fedb22810d55c9001a7b62a346cc64e5ff105a6605794cf75aeeb19048eab7117182be63ea313eb10891ea37e41f1145171c8e67e8138e93f2d825282068e18aa6459b6570f9d4b146d594664568f01af6e184303ffb9060bbc8723faa012f4d39194fc99231a34a06d6b957f18de44ce9bbc074cfb4adad0ad6d848ce4523872e73c76b913397138c75c5c1d5854b5d5d0a7e87c292a4a9eb51b6226f06894c11459707d8c1f039f12f847ef97c6a7230fe59968ce16a586e53f6809d7cc5e59e75b1b268df4c1481dbc18236b77e4e35dcd02236c8d986229e05b413c87062af85d493fa1586e38363e4048e4f3a11caf812d73801041aa7a4dd0ebdd4349c103302c519337c7c645adf48065a917e2194b0a2b8595632340dac1897dc0b56160d5b651ab382b4a0a84d16a50911f720cf8a13e7be97acd3dacbe8945cdb9a158b8ff4bb82f3f6197461894a441eb71d04e12726b850dce3db9200c7129d2ddeff60a915d1f5a962b6ee89f022c1d5e90c8c0dab19b5537f75c1a51dcda6aaa9bb1922e51be31495bcba5dc77c0baeb9e3f929936dcc9cab43c095f5b7996eba3d2e76fc71adab65007052f346d93b64cbf1e485ac4f077bee631138043cdbdde51385262157efe2cbec9dba227a728a4374f9d7c012c47ba9619049cc9c043b26684651bf2c162bf50a4cdef288b4af64dcf675276a4b161d743e4e980d9c92d3ebb3b1318eee460e6b743828c68ba2152adafcf4783b52065da1fb8a8c638b5c0ced3023acb28cd7322ce8a8e896a86188e08f425cf59087e181e652e7b2209471036c0e19a479c82e2420024407da578ae636951501cca63239f34a1bd0c03234cf4366d0d795f23c9a3225cfc3cd919689b97258cecac30bfb4fceedc26a5481cca51711f7c757b3b5398ec2dc34858147cabea8a7d0cc81091cbab1bb01a288b464558e82644aa06d4e03ba291e5214410365c1cb69c90526239fad811451fc90930d8ed45ad3b339593bd59a4406046dc101ef10b794d02c135d64023dbb45562fbc2cff2121be40cac52fda361d4d6a22d685717dfbe18d421855e7b79ca70c1b9c280d990b09f10576d8eaf291acb444b70511d0e0f637da4657766913c7d9db9bb16327d8d6b7bf0978be93c46fa957f6c416e0bdab93b3b1c0baf8d66b0133c974d7be3c9b634b64afe1e5070a30eba88f058e2dcb862b50bc202c73f32f418e9673d0ed41b4305a8e1a3b8067f00365fa9ce77611f6c74513903e6d949bb12e81af8cbbabb3cc8104d68b15dc8b3ac344ac840fd448353db56bf70e81d935a001f6bd7aaf9340775d38153c8fa902be676b0c76b4e3f604d16f96b416ccbc76938f7f6a0ba004b405ee315dbd70b5183fb0a0db4c0cc4cb182c56015dc6dadd67a2e00634ad5670958c2670a1fb4daf29b43a230f28e47e4d5b5fb09af1031776df7cf505ab2ae36fa780426eb109b73f5970339870f34e6c80407400018f30863e5dabbc77f50cafa490d4de192dee1e7e88fd25a6a8a5854828ded5b0823e38b8bf898ec595e9b456e802d55fcd1ef310211d511c05ab365e40417799af3aa007fcc1e9bcf5a71c837f830978d817d75a695ee0155ea1230b2ce0bed9d60a5632f2c0c2eed574b582558f2fa0d05dcdab1558a5e30f54e88ecc562f5c85c60f28e82ef3d40b57eb8c6b87d1d7423a915895b350046b3461f5f85db2505a1afcc633483fbbb0d5607355705bf36a0bace6e80716ba4fa6d50a57a9d1031774cf343585ab7be40185dc337dbdd0ca1d6de0027761fe5ae1957de4e08185dd3279bdd08a75dc5ed90bac5b5d976e315584f1473e26b233096ab0d1134cbaea91889ec168d1d90afa1d5a0d5cac81ff6051dec22253b8c434fd4dd687374b3672cb2027d58bc167a72c60b97ad3eae930f1c84ed857238c3558e97deed8df9e60c3b2bfb670bfe5c32219e7bbcfb74b6573e07d0e7305e3dec8adf1d6f59f33f11913090f50361c226ac4ef34911431eb443c1e6e8270b57e12068e47600464e181e454c4c2f334733804a314042d7ec4c098ad4a9660ee79f9ea17284f8b08d7f3c0c45a893ac0a1b19c9d21f6ff1eba601b2340de60eaef42c5a0d7b809eb176d0474acc7d958c15a90152c6ad739579c1e7daa2520aaef4858199b92c538f333f808bc4fc09940b6a167547bfe74242b1954725129c60d1e446f8f2b6afdd5725f271be8146fedfd8bc673f1098e1eab087aff5c5b48e5f04c2e6038f501603517e2b8b4a885c1192b7e672299bbc05d1de00156bfa64672b31954a42cbed776cae5f7d89c246faf2ada8fcf04a87a8ec15664db102acd0575ebcd3ea91df9c558dd551f4e4a8ef61f4d4446183c1d745ad0220ca28c665ed36cab4f685da334520db12543612f8cf683683b2929d2ce83eb7bc0acc08622e5e820d43646f6e531551c069e92801e75a5d6386bc5d47987f705088ec292071d7e4475571e3aadb682fbf053ea52d9ac9c35038cc3848cc9821afc2bbd1f7b64c26129369b409be0db736cee6757a77b20818020209e680883a4107f66c73bb86155362336e161959eca6f72f58e580fff1289df0bd648447bf8ef1217efbaeb45cb2dfe249b977e291e293cd8ccd2f15b61d4c1f2c5641bea3b7723251b8090e86a9b900c40546675dd15cb9ee805784a70369333907f8e714715c384669638b1331c15f878932501415f698f2eb22b8ae89721b021fcfabcb0b50e3155d234c4487e154fb5bd3d46bec4f33bf24003b7a041d92e4255e7b453667a2753f8c3d96745bbe267c33d3a04efdb4518c164324a2480944c1ad615de30300caba314c519290887960395677a8d37bf2e6827f970b6440253e14ea0403acb4d4b0dc7a1fe2c03dc5595ce8e9d03f9f31d5663172fcf6a0690980689860fd88dc8cfaf65320c82c6ae180604a2787a84441cb75a9247b71a41e4bd76a53ea8bc45ddfcd19507c814ccef2ec3c6345f6c38d8bb1f8b89140a1527b7f4131711094dca0f29af789228dfbfe9792a62568f44b37c705f1601387cd111c7e5f59a08b206ad38464448115e146d44fa8c02e78452e103a6c1a33d6816f00032c035d4cdf57b42c04312a6d16672e4981355312184eecfca209ce0d63a23385d31f2dbc3cb63dbf746e314b2dbe527f46b17a1811793d9c5911fa5b104fa50bdb7867f3ab7edec09b212b481f4841847f52707992b80bc702a44667b835b7f80297d63aad87a220b3e5ac6270ef3fecac966c3707f2150ef18afddff03d7f97b5b8f5207e310957adee556bc4d18ea8073ff2878224017e5fe9a98609afd292783c6527f7cb306d3664b56c653b3c9502414fc1039b8bf904283e233cec361d3ecbc0fa559878b709d4f17816630a1aba295311a1dc712bb0f23d753cbe99c78f4078b8afd53638f598e7ef6522551bb55326d98bbdfdf12842717692754fd2d4d395a7467c5a5c0180b96e59e4b8d0607c21ffc1469da8ba9f8b5ac14b6818bd5519d0f72a9201601c5156fac15ed90ee3ccf7de4b7eaf0acee80b8a82e9996a574b10b65dfca76b756c2366bf161ae1e9d24dd4a652a570ff6f1c5534085939bbd98f346bfd6157afbd39c4746b3de019181e95f7ddc8f1ac4b0febe3515c639855f1263416cf5003330d7dd19ea02bd1d89a3c5600290286566c4ee915af80bd144c12594db5af9e8f125b30fa682d5256a9268cc6a302534ade45cc5459d473bfd934a26bcb78aa26e1aecd4beac036f2cf1eabe78b8903ddaba2be2c40ba9125e0c9a614e7fb00923ccac7052439a1552a89581c9b49294a466672af15e3065936c447f192501e29539b31d604edb75dc8495add0ca45cb665a9056c748cb06ac02e20149811c526e8f7f075217e2417f133686e0bd1667c8ecf5d4d0ed3d16b8d1ed89b8bb7211ae3da1abc88e976b4b25ff02a884063efb8bca7c571c40d37748c404a85b8e5c65c42c58e0481b68c4c2473a1b166e2820bb0852a1b4541705c7bad7668d2b7f8a58eab70703f30a6c31b1a6067a56f87823b15b574abb62374181a65ed7920cf45804322abde591b03a61d8bb880b15ac274b9f6b047cd1c5d5bffee3f2382aa02ea6f1802b5907d45f7380d29f7bbd62825fdafd9dea57ccd1766d148f5c69a9c7f9eb2f33b0203db8d788c56698588855d4b14f47c6a3097211b04fa56b9682e855787ed8d02f0aea4cb8b1f097c8738335df722a46199ee5802a482ef1c20ff026e53956703618872deb8f6f042a1eb0cca004b17cd57eaab10ec02a5cabdbc5610ce1065382c5ce3b4dbf6d02ce175f171976a42c8d7d8719aeb0f6937d3508fc8a94cffe71749fa8e91f4d11cfc6f1d0e1fa4b5da051e3878abc54f37f429bc2c56eee1e02a7fba58a55dff7dfebc3b74e6cba5091d7964c580b12166e3098682e90c9b9e412eece137efe1d2fc7002dddc722110357535a8c9cce2baef0803026bba124b6008fec3ea10d41c7e14306bb2ed49a530962125c6519b8015b64e87d73135bcf13d17bf88a7292a58c8dbcb196b980068a3812738a8f12f59b8480221f7e4b98fa23bfed8964ee04668a6460ce3ff1b10aea8166d3cbc0ae218b90fab8777125bb6b12139bf9e8761dd6516973105a69a39c29d84d060284a164a0cca1044d2ca51392c49b5aa3cf7fddb5e3948e6dda21f40466ede57a9d222d8cd6e7f4e36e5002d43715d6843b79f22e7a3c9b6400b7621450800f2cb1e2c023d9ddb04f130ec45bfeb3caf137cd8833fe92ca2913c5adb01312c389c8cada91383ef848d5090c1f6deff8d25ab7a03bd95674750adb5f0ff17ab4249a6d7dd63328c3212179a861c16a920474ca034f962293d3258bc3fa08144df228dbb6322c1d3d975f21431f17923a6231a865ebae5aa8ffa53f93dfac22b85de6bcb1ddc1cb002fdbbabc434e1e141235c2a7c67bdb2e4a0aa49562c3c75f17a45fd0fb0bd73772701160bb975043ab234913a06dbaa841ba5c40dd272eda5d673d51b5d108a2a7bf7076f46bd41070eb2a885d19a61d27505cf1a82584dbd18ab1063260005e793232ad4ca019b730ce1f24fea10bc3df8e548145d704c1dfaead8c59a56bd6bcc761a1cbbaf52f185ff716d3a7eb01a89eb998155d4fa923d79a0ade5600426bbae23a1e2dba84a55c9d26be12c2ce3d15da0de59aedce492d08bf3c430d486ae8428e88a169fba3add8ff30cc19cd7a9d38fb60e9639100e8fc57969eb968eaa6008a0919a3a0f131c43099ab0d4099ea8fcee9ea64deb719c591cbbf5543650d0ce82d19d4265aae0c92503306b336fddd9d70647671f40769436a3b86f92d31327c50e7858d6166ee10d032358706284e83ad3e3671f07a76688a0067b1cc474eea8704ddae1b3c790674e9409b90447b4a063a4288fc9c9f25b3690d289f08bae4ea2bf506988bac5db4eca6e42392876f4feb1975626e9302c8352fa9ba44a1c49057d8b2121e303ad6f4f921d942b6249b3d5d4abee222b4409260011b4db265192e46096d384649bba75e59fafb5e6cad2ec94eb266535d9101021d769efd5cfe99403ef5a71c64578452e8a2fde79479e9b081d66e345201ada4c4917efa6334f6710258b5a2cb75e1ded057d56f670da0b12ac02af3c449dea8078402572d825ec09a602a928b0f5858241d847b9a6079cdd2469389fb0746b0b3b32215bd341a93b19782a6bf986d6ae3d12c14a68934ad332d110896353a7361fb9045f6e6b94309b2b6ac03e116e771df16a57b7d1ee4ae536bb332aedb4b30c725c585149ec78529827047d98a2326333596727250fc615a03f725214f61dff71292ebaf2f6d78e3d828b1aadb0bb2d347b55d73da07dc2ea0aa3c8177ba9939988806981e76934cbd40d8b4fe21eb65adfcd65e6a7333e3803203ba8a85231d3c838796bdfa8c423c1d9b7b48bc3b2210e5985b8d2adbad60c88fc2c0ad67d4b18608793561afee34d7f543f62a8193af536203d20652bea331e54cc9df0e5e24539c2ad0130724d810fe7c9eeb70c8bae51d4076d1420e60fccf43b2dae6bc3a0c619197ed84dcca3bec444570cba5a6ccf530cd0cc93d8f1f23001909499cb82c35b04080c89c40e7a2ef944af76eaac1d3b88af1f1a6e5ab2aeb8530df62feb2f3650bd4bda12933020aad6893d3e26b185650ecc2da149476266d0a2070856909bd1add26a02dd60c9343e89d6a9cf301a6d022c475ce2d97e61d7a8fe07047e0f165bc0d1d1800e11df7453a992f8f11a1a3859d03ccdaba3392b707ca26611638722d4752898d6328c9c9b1417264683b8afce65d0821dee6cbcc08533b49b565e4b9331a5cd4ea6af7b586c5c2ddec7b58e72e1ff9d8155c40909479f1c10411254e3c95e5599f5c13085abd7e82de05c5c16ca3e9892c65fe566f81ff6ba7ff82bb0aab541215b8c0a28e88d6a10dee000e5c5db126432c5e08a4e1f301e8fa8ee0a9ffea10b011b43d786712b149ae75762037c578c306add3617b078832265f93751c5f973a55b2265190dee12a54f0aab7a55efe26b0379c2b9000eba398a811a43c1f551fb20c9ee5050ac307344ffe9f953c23769430eee080f6907b8889f45c58cdea4e9bf6b645ccc026122b9b80604dbd04a2cf13772ec94aa5edeee73a95e85ac4aaaed902d32f9e3a4ac5a82ab8e88c313823153720e2e23b00345c89a6d48c6650b08fdf34675c28dcd4a017b2f6dbd12baf62282810815b2fb03d99a5a2336425906e6383b7ff7f7529c9865805fa23803dc453b428352f6e737631a479437e075e44925063e2196963587039e7e1bd1d16adb80905a9638989d42055ed6971873d07bd1e2e0b717c377021fe806b26b30e0904424bea95322eae2acda7e41bbb32f2fbf541712e434a5f865b94596eb20a7455b9b353816a46b8b1c0819234aae269839e0e5023d59c9fc207bb21440e45841d3e6bd2c5b79595e47873dae145191dfea1d3cd3ea1bfdc0394ed7922120aef5f5be0b29b0973b2050d8ef56740ec5194e8188926480f6ea0d3af07e8930a8877d1f50a6a861d62a69b6997028203787d2fdebedc8af9e01c2f4050a5635c5fa080a13a4a903a3aed38e17d1211381c6f64dd283af5694b10fc96b9b1899a1503fc10cb4c0b64111a4fadab70280bbb3cdea23026c9426707d1819760c7d7adc1d40b123494ac6595588923a32b316a894df7393070090def47ea24e8f1f3a5a5b23c6d39f45e378f0c0937e942dae76ea43f626e13466a46b2766a626e7e984a2155b33dc91ec9530e5cb83ef7314dab3a68c10c881d60f661d62c62cde1249c41a5088cdaff3966226dec7309826a12abff22c90d2b55bfba6160ea2127e847f9edaf9006ca530ff565a741f4b4023835dfb2719659cac9b4381a26510ee3619ab5260e2b422722cee328bb4d229e75384c217b74c814ae4143da8cc4eab7a23a13880f8757416cd2b50bfe9f5c56cfaa8d5c630651af9afab3de4a6fa11ee29dac49345671f4c589a3ae9e4a7b09259394a888839e2310050b5e75e52ef4b759bd6103ee9c4da7db86d0634162cbf028fd0e4e525da05ca8d65b3970764c4b0490b44c3b834e5c54e8545cd0a15f8bd0dd66c7fd3454e7363b50bf93d8a847c887ea6417e74e19bb8870927b6b739f2cb60f21866b6be5cac9623761879b9d86be6c67e2ec36432fe0820e7b8588887ed2b127105abddf3a5aef46b1d37b215b9676469cba3e5d7653a481233beaef20ba5008f97baa07eb75b64fddeb7e785abe66cad9d5691dc8c08d53d2b1df21babaf79215191c7b6e4eb163a8cb1675ec3b2135e3865708ebde2a4576e5d89c3d4bc1af136f845e097053c31347047b83dc3bdfe5102a74ec687d33a45dd3cdb6dee9eac69ca1381df6adcfdb72cb3ee57b8fc944ae7260e3d344422260ed08258eaa4998aee1f54d834ff91712de078766a31ef28b5b0836e3296c03dd9e375ad8b614c376e5c4fe9715524bbccb477c9e86307aa8d495b90feb0f840d50ba6fe43017d1e360ab5fa3d1dc84702b43f15f0146d6f450f02a1167674bc4eb9fe38f24a0b560e0bfd8197619eeb1408d879f4fb862efdca3f46c23f46d8fba39e2292645b1724625d71bd246a440a33d6fae9e51a895139a2030a94d401ce5669a3067e78f2f4722da9e9bd205801f48f6478c1953a038acace36a6a7d37f1b930d4fc2b638dc355fadbda03bb6ffa86422abab80bc4a064b5092b1c6df3cca92e7305cc8c5fbb6407a2ea5babc74f49b3b9033a77e423d7eb43e42dce5679dd8abc4880504ef865d843ca9a6fc7b57e00e4ae95820ecf25d75551a5e4fc562561454099696e20a924bb516ac0c018f331af91c4e8dcad5a6dd9bc5c862fae10a75b69547b8cc70e766250e65500b865660b64cd2733932f0ff81e438a8ac4783e8de901a489550da45522c2d93f3f7e53d518713821b82ef1996187bf2e450fbeb75593cab47da703644bd4734be9369f23adaa6ccf4c212a74c8036f7c334f60d28b556713ab655f01ab0feb38067a1417da672bb71301b755a50a478d1551d42c3ec8869ab4f21ad0a89191188562f38ddfa333ed15158898afaa16e89a05889146d2d88d20637a243f29eda95c1810a34ff60ee6ef4248d902d0b8309f30809ea71f06b97d43911684c485083dd591d3f94cef0d9ddf7732c0b64bdaa6dc2f4608c27af4a1ca268fad0b52690f57a367783fd59d4ac5040b829582b3d43de7f9472917df4fc8e0413d1d9598e9ecbc533ac7df3d8fdf581866193b7e094f5601b81339810aefab86dadfb50fe412960c5867d7fc57e6808f06f15268ffa8702460f0037926c22236113941def893bfb13204d20f9cc5150088e68bf7c658c60052d896b01193de03b14b347271ea80fc2c24437ef2e9ddb2bca4668b57204baba5c5d843a04f0a0c26942d5a3430b6034e17fd31a63029cb595edd853879f6f6af9ad9619ba005e33fe66c89dfcb89402bf93544551fa11765cdade05214b2a822cc39617354c58a8558217b8cac89f3a3d1a5030b5a47c9ff1d1972381423f9196883963453be7fc6bc5f86e500607fe7d71e5340aa225c7554f3c8c45970b5f22f045cc28ce978660f29a10591ecd4de4ccc83e2e863a7a26e99efcd8bbbb940bb0e1239c79eb84ba384932bf8a749c4f3c4d701550c659890ff6b2788bd8e3f3c314fc883517fdeeeed853a60e686518380ca1cb1dfcb91f61d57a931b790d88b7727ddd35743c15a053f7b0df3386d4e5d9df7605c0994414ffcaef5dfb15aff245a0137d95b2b8a125bf7f7a81b10c5668f28bee2cd961e3df56aa28123f31d7ad1dc54983763c8240a4545d59910c90830202cbbb89f946fa821c3e2aea07284818a95d823a1922200e1bc332666ddfbaa43e89b92c803c391716149628c68fba8b20d1286762e3d87cbafd6a58b42716e90165517dadd755ed33b27a3098b6bcc0820288a25f6035035ad8bb96545ac4f45bc12bc05e9250c9892a8e3c0ce90a7228399aad78fc9195f92b95478880b12eaf7a7fa011911483e8fc2c4fb6651ab493833def1c42fcf2b08f2e139eea0cad57fbcc168fae2bd6dbd62b8f683f64ac9e44435d5115a4194c0982db9873e2b082ba3c520d0cbee6ede2fd02d4c4df641bfae0222773f9c391145d4a38fcaa02454e7aaf8ef6efda75c98e5be5434cfc8fc77972040c2009d2741dfa8051d567baa58b759933b5133df2d1e70c93bac7d8504ea73fcbbb8c4e993b41a3a52aa53320ece2aac7f5926de3192760f07e072d69f17afe953ded1ede87dd076d40ba35443b767fd23d27897df6a3c01ee11c647264606075e6b7ca0ae6f8806cd5186eb19073271bd631bdbe1f525f2ee90b4904a6688759401fedc22f23c5ac8cb918890ad7b8299fd917aa111988c3a13c22291e136f3725bf88233aa444df7b76ca4fd605f7aa6710248e507268345ed72cd2a7e1f81730fad540ab7995a312e118a43d72c08c6e687acb9072d96555b7f43533c6a87c7c1b4ca5fc3567481f1b31b01f568a8fb2db51dd224493895c30036c6b531d55a615093cdcf5a21336d1748444b89cd8b4fb8f2f7924dc105e9580974c374572520b3ee77aa2c87b59abc988c6374f7743f927b201715e8a6c9c49605550f0189a20f8d6803d794bbb2a07d53c5463f2f9b2a58ba724523fe7c41da4bb9dd1784374ec3d88788dc0c6aa12b125904bb17a274b207f1fcde3b10efb7c74492800dee24c5c464bbc8f35dcca35565ba3e9f9a56ca9f00ff60124228595faf9bda46cbaa7762e232774116f7627da7269c6a0e59679e085b45d4b375ceaf08dce43c2cdd037336caa99423f7eb99ecd2fa2492b35e9a2fdc8584289d74bd1e5c739380e455d09971dd7b7a456f2c2c3c17d81c239d46321397daae9f944f6d84e26431cfffcc6eaf5327198a2f3d704f2e26a7221f3f6a80be9724929d60dd2e238ff8f294badeff04eff926c5b46115b35d58ed86aa177de4b60c727f20e51913c78724711da00772e4223c15ddca8da696c74a787419eca915c4e3e291e3f0ba4166df324f9e42db239e1145539e5aa2e58c4ee9ec7445e81dd3f694c56ca6698202cd597721cdf2c85a2a5b8dbf167e19ba80a533e94d20132a3b3b6c6f911e2271ddcd15249d8bed0a3c45fb04472e8ba9b188b351069b4b1e422b887d6ac02e54bc6e0c56388be46e9ecd915998a57778e879c7006cb66d0b8965dc9c8ec54a1bfa88653322fa5eac211a2a304e624c3b8d169e240cfb7c626351d37dd4cf3a78d05c7ee7daa5d0d2d6de6d29fc40b27eb6a7553d0be96b4189da67e4a72e5c3a8c64a5bb1dedeab4a529fd73219d29b04d5d8e9699db15e3c3ebd6eb952d90cbd2c791fa4fb01ac6063ecb760a940d7cb642553216fae9d99b32581f330c3fb9d26530ac0ea3f49a1946675a1ec221925aed1e74f30f54803b4bd36856db91f5be8efbfae476ed0e69aed87968e93501b71fa627adfcfcebf32dcc40992a20517db22e1226cf3673ca49613447b34f9540b7a010718ac5b0898b0a52051a20b0300011e19d62c3a429e56a664f7fef390fc59cf22c1ff791b2c016bf3cc31b46812e87de86fe89c93d4d425bbcc0d7895b4b140739215da7a87f448a2642ae6806f1f0146643bba20424b0a1bd03a813baf739e5bb604adb7b66d56a0cd895dcc213d50cddb697cbf91961d304e05a29ca60c7909ffa2cea8d79963362e26e14e37a951b0b498b2e94ae4a92f06a94add0c9b16dd52c9c824663aacc11483f0e0b8cdb0de0608863f1ea67b7c2f18319914b9bbd67f4d16a46535a1fa7566545f83336ae07138e8fa089ac3e85c6e22181af2964d838c2c5b15bb22e8aa44653e314cb415120068a3e0883ae042a7f6808730af4a28471f2be6493cabf8804c04bea7e8379346fed24c2c6378bc7662185b1d5b9fc5969a73c542898c456002c3e20b1be4001b4f9514c15c578d87d83833ea7ed1f6ba925a5ef8a4af93607181dfdb5fd0c1bd155723241b503ff9d319dcad7d0a60dcf5494be1d065f0e598a3a0d52886bcfbfb212e624accb2ca5d488004248d60f8889f647078473b1ce82267f751b57523c27188184300830635bcc0d80338df134bc38a2fd286872f472458cd0c8e75b9541e3a1ce4056736ae3e7cf713891dfd30d9f60f979537b56c447b9204d543923d716e6702e2b661b98671feb7fa949a58d7290bb3bc4acc0725087845597bcea1fea6499566fd9b27b9e16b1bf340668677452790f61767e153344f959fa604a158468819ac1d1ab64e372c603901cfdd39c078c32b2e6cfb96f20840a39cb5e754f13fd695d1bc8c5bd8715ad2b6b840e93fe6d2e5017436cbd7fb2ee8a2b7be44a90412101aee81ebcb5cdb9354012dd95542bff63430ae02d795ec5f8d3e2dc0d090073340db9ae197bdb2930a65fd952a76e038778057abaca640c677db491cad7756851fbd321af231b163aa5e0bcd19b4b4aa80baaccec4b137634c75ec2ffbbf9d3bc4bce3329f06d4fb29a953ae7cd36d1762598dbd5fc648598d50266dffe543f5747d54d17385d495c93e6fa511fe7ad5d177735721ed48a441d5eae7403254d14be7cd584aae6f494f5a2a41ed1d749b04b732df2eefe2be6826eb938e3f2d1ca42601eeff59c2c39a4690984e3f1d8e855bc15b6355d5d23d1063a36abb9a29d4545747d83fe2778d6cfb04acf224e1d783358cfbab78082afe58cefc1cf4ba8d149c95a3b67037389cf5250a4f053d9bc01b02e426388367492897330b9eb6f4e0c690cf8d60d295004bebede4831b023eee054915e6ea5e19242c88e92d287656ad9edaa500df1a0ec4ee28c300f7bda04f34060f3fbd0da0a7f3acca4997d3d37b045da3505da09aee276954514944ee522ba5ae423a3cf4ba5560890c1b05f1c7a6e509e65b3e7b765d08fa14b095e835086b29ecd335b38d9d62340cf60d233c38e73d3eab320e3aa045fb60995e9345eba465a72eb9d2698a800511cb5c9e81c752d46113a2c0455494b4c6686ce7ec07ff4b184aa4f037545972955a88103a265b8e7ade51b049bd0054fcbbf72d7cdbc71bf9cdf2accbb9e2aeac0a6488145f7bf537d1f810e7e0c15ad9f9f9dc9c77a6e58ce272ade6a993bd8f429e8f59b86cf07e2b68eaa333b9bb9edf4b232ccba4a6977af1c04ca1916938d048d5eaad8048d98517706b1ad2bf8ed3c1c29bc0c47b6adefcc68389f40ed731b8e40cfc52212da9831c0909a36e1ca9de3a1373f0dea39cbd130da5e0c9108dd7465fbb741e7fec338c3d2922ce51f94640545e33767ed30eee7123fa829c050d26cc5737f7927522e08b082e995b846530072fbb42a425e1b430a4aef1fea35445caaa86630bdf530d78f0ceb3d86dcacb740d223b0f0c8804fdd48dd949a819f4be49eebea42f1f47fc979a650ca1f306a67ce44a015214f0c15a8d14253818980bfbdc92cd0edcb2c0c899c182f52e52afa1a941c96e9e2f5122db561e69f59149c1871c67bf1984bcaf3ee72b1191ae8360aa313c0748aef4ed5846d8d9d4fc9667e355b1d00fc40d309b723874a637307cea87cec2f505316ad4ff0aac0402c3d488cccadb62fd773a3e342e1362baed25b0a3685e0c15161ee4d671f9e88bc3e20d9d08ba276608841f479553a17457fef6f2d78a0b408b7f8ebe61a59e6a8d42c85e5086ee353b8d9033ca821879234e5569a0cffbe6acabed6c33451e315d0042f80483043a4e9f05f46ee28a4714203b1e18d7e54c1d1be146dd2309bc8f6799ea66523204c54ecd7661091381b7b6fc9fcd75133184065a50b2db5677dd8b0728a14050328207e4ee5504895b2218e1e7d5c22917fedb4d0ba025a73262b91d35eb4f8167359f06bbdf7ef8ea1e6a83f5fecf6a6f2f935c0beafa8fd9a33c7a2bb3ea2636e9eef42cbb8bd4d2be4d3917c6ae42f20ec18085278aec9a8ffeb6299c9d6aae3c4a282ced5965c4285ee915ffa48ed19b7567963450d8639fd5f97c903d86cfc128bf844d9682092fb32b8b8bec36c4cc56b7008314495129c74348dea59046ee9cac7372549ad240dd9842c21364e650d6845a29c25236ca2dd5e3d1c7ff34c124566510b93f4d2c4373d83ddd27048f554460e00dfd01f1762161f201afc4dfdac067692844c8d76727c758bd43ed535b408bde398c85e37a9e17505ade189a85b586c146608e043bae8fb687031a3fa4708ffb5917af026af007dd3e8e25fea0de0ed735f2d50e439260fe0733dbb9240354e6afedf828937dc88670c481221033b377821ae76326513e91c34126b2349fcffab1cf23d55c26a9e5403162b17d5688ece4dc5c85f98d47c06a5f31e3cad02734df79690a82c27f92d841b9ca8e20f98cc8956b611925fc843724e8c57e0e54b07556f7e54c7f433b4d49b2b502771b28540900aa3302fb3724e04017a9feb98a8ca109143e8b806cd0c5e98f5a8c93a6abba0940942edb61c4530232ba2aa0821bc9886570fbf60f989836ee373853781a34219dc586151954c1194f6ac9b8c5df077258e6a17f81747843dfadcf16f5b072200deb9397a2e4005bde1186718eabe1c1a57237984d0d559f4c99dc899a360475fce8c7a243d2d039ddd2aabd6b4b18ed32ebc0f609eadb20b8dd50248b17290562a14a6288833b9012dc2602f4e6a770a488a4ee992998e4a5de540e7db3d6070cdd64e6e3b32006cc43e6a0636b5372faa7b556b741a6ab40754ef261b967dd826073d004b25e861d436558a7687965caab276f9ce3c4877e0ea33e75e5c726fbc996b3cd5d33bda78c1f20d9b887070a7947ce6827b31b0ba2cb97ccb1af846a18938dafd02b605a2bd0bc989532d81e35213bda442df7655c592f16c543888cbbc05e24743bbd8149171133acdf27b4e8289ec13580b7d59a8804c9cfe29d4e4fc38e4224043ddf58d11828282adfc3f099cdfdcd1c5d9155bbfeea0d00fc4bc39a40702eb9f9b099e86694c1f870aca50fbedcf93a7ed6d7831111517c255c8a2b170c810aa82a576a90305750a294a84155e8de76ddae2b698cc8de51b5cbbd2f344161295dedbaca02ae0e39484f8f94d49ce86af34c073a6ebd02014731012f92df4c6bc4ef41c3be5f1941284abc83b8db714e35fb60cd74f0ccc690cfe04a142b7cd1a65cadd88deb957fef23fccb5a342b70091afeecaf89667d14dae9edea5ab7e3adab6579051d51e5c1db6b2b3112459c03c8e630b22d445696a1c1168a65ae84c696b53122cc306c3855055aabe771156b4db6ce065c3d5d769a1e84d67b6493bde7786db67cb07e45a5ff0423b7e87a7e6ee600ec63ba18b972cab55d2e2562bcb42d7afde776ec2cfbb5ad80796f48abaa5584e17e6558bcee515893a6eb22e96ad4b266ab2845087fee01ed8d432825df08a8ebdd77aaccaf626f0bb631014fdb4cda85478962b94c985c4e402d5b9999065c9e4738914187edad656d04475342c1ff50eeaedfd7bbb7cd76b0d6e825acf271faf552e9f7fd258b4566a19e6abad6966b49547f9479023a74098f664b1703f73ce7fe90005c23b230ef4b7747d3bdd9fb3bbdef27e65684eb8d31cf5a38b5302846f9c7ecbaea77a064b7132fb8a0e154b50b9a959143bc0553fa8f1e3f2c94111b1581d74aea51341c7b53c37dd7847fe2fe53b31006e4db13627cb44431fd6787e43b263519bd7312b9ca05e8ac731e8f0bed6d22799f19341dff2f2d29233a0c8198cbeb9e3ab33b1e5e4dcef1e727b229b2a2155bb971318cca0b0c402c9baa6365eef3fc1cc476778b873cdd15882d86ed0b7fd85816b8164152d78a01271f6ad1d4f501c95b72c84808901a7811823a41b57d2111c7e1560dfd215cd8b117554c803a9100cc83fc1289256d650e23f9b2e26972a01f72d07afbba7f76743b4c0e60f3ceb6d6d2b50e4c9957f85be778dd724cd710a2ad6ec677947bc7fe8dbf186df335cd12884d023c4f1cc11ab650a44d3b9362b161b760bc4d5dedaa369eef860b92d8963a4fb494af92f5e756752051245b4239fb9b88a1f1535acda39d03a81aa3373c68f9a9f6c75f752c97a043a01066d084b829b615c73d20bcb8e2038f66bf3190e1ef08aa77b4c6ebfd75577ee8285e78bdcfedb0f2ca883ae6cc86db63231b0b2bde4d7cc50a80edc8e2cef0fc76874c71ec44f63a2935388a02303acd1b62e0f3fccb5d5d687beadeb30b7d54f27684dd3cca770751d0d4ba5c2c5bc66a843a1870c6263aa4e7bcf62ddf982da674675142e62122fc0266f4ed49ed8da9b0c29df896d27545ef96fc985964a65b72502abe774887171ecb6397354131121db76cc35e83bbead6d4a15e310b7e6864d456d2d03a86d861fb5a2f559f3908131ae4c8b875759b24b29bb0506f78fb6d69f29bf5558dcbbc16fbb73dea3555516e0b0c5ef7ea9710171be9d0d0436bdc57f2ffc8f22d2096bbbae8bb4e1afc6bed8886682458d676bb4e8d5e6785ac551bf205799e3d22ad3477bfbc883dbc672414cc023e66274e81f94a023c5a13105697a2a8fa794ab88acaa56dcb98c8fe37ab0634ffff67b76b10d3b7cfb67ecae51e869fb673e0497d1da45326358e291be2bd1232d976a2554f5d9a5aded5591284510cf6725ec2a3061c6b2cb7e2f397677728543d4dd4cc76e2333802715df5e31b4baad8db9f4312e3a54c9383cf6fe4ebdf05d57505a71c24fd2eda79390a70398d2b49e955587ca4673a19711762c75f38e26f1a0a04480e56118bf42a6962c97318ef0d5c180cc851b050ee7ceb18ae0404a1b7f515f688c1d19f0a3fb959e470c4f7814a63a556470e13126674106fec05022f236d6d3193adfb8e700305b78f65d5a9e85292093db2c26c366b30882db3eb3cdc27c88b351d83fd4ae775e9d53476af9c34a9b6ff1706272d5ab923b81922c5592fda366e0aae1f69ac4522e443ab98a8fbbda7edfe71fccf49c58a3245c3e2209eed7b929773d375b76e78c28b8de8a6a60382d83f1550c85c16af9a13be2191cf7ed96060c2ff3ba7c9a0751dad8600b9d3b41f512b9bf62c455c71faddb3ffef55361bdcd8cda652e649a9229ead4e0e2f6b483ea101250501b84c41287db0a7c536ab5a9743286942fc1d3c4dc23827dcc5d38986c417b5ba32676d214e60bbf0019f560cc84868e0d0e50e8452107f28f793f8e2eaece45e047884f03d8591fe6be02a3c90583f7213371d72448beac9718307ed2d9cc32154cd1d468aed2f6820152124a3281a3fa1de13538c72342f6471d25a56ee0d11f21018e12dc0a5b22684f8b90197852da32466e5960766d8dc9360f51e4992628236247f60bb5038ebb7056611b1147bb864c54bf28ae395219558840f3a24b0187b7a2663d31c53d25aa13368d8ab6b70b445820fb2f2c9e33c30374d00facfdd89c9924ffee2dc1dc93411552f1f42825f287123bf580c29110cf10cfe82e83f45fd5c135464a75b0ca494b582ab517bcfe54cba2543d5ab51a718c7bd8cfca76c43c80cb893d876c99282d864ca7a4c64fdc3cc0568a9da304d0387e966a1e968c166a153376c3f078bf20938459b59f5a3cca34b0b2382ee60f5fcff34476b37027865c000e860f47536581fb1c7fd5f10a37de74deefef0b3f9ce1e2bc18c369ca19a3ab02bac15d5aeb72d6c4082d5d2a2a7cd40695f04afab7b1c2b674dcebf18859e750afad0170c570a544ead98f7892974c8717d542691ddb59d64705e64b9d8d104452c556d71d6aebb0e4f5a9c3f1858d765877b224dbb61c7c529c20b27637d50c9147f519eda96e41797dfcd1d8e3bdbe200606a19aec914e2fa8bed1ca5f1d7b5a9ec3a05f855c71bc9e552facf3b005c1a39e22b2fe7259f081e91433ba40a44d42c90913aa177c21055b023883178c4f7306af10c0e9bdca0ae35b4c53510c0abb29120393b411b1ca7b457531aea28529f56d24bd9b1e8287805244f9772bfeeca80b77fdfae8050b71cad4625bbc11986ada65b35a115940f062506d058be8a91b43cdc35440d0f5c44956325d92d9539ba931e324c960a513f231cd4ad3614f5a73c569125c8fa78de576e6fd263bb679de6a89b8e47bdad986f4d116e5e9338a51f138206b2a4ef047606516959a917897dd7ebbbe3801b935841b124a9463ca1a94838edb4ea5a0321b73999eadb5addd4ce88b62eea367de9ad1560805265390e1e204b4469e6d1e32317f08bf7261b7d7e16d1c64ba9fe820dc85d0c3635607734d4318b3c98e369d8be9b9304b7ec5f2876209c2cfb19660b11faacce08b1dc4110b69284f2078292b6a88ffb2610b846ec94c795c0b794834aeadde155ef13fdde4ef7a2a46e607eb0251ffeacc37871cc9841a173c3f46e05fa33ed2b23ad67ac0d66d97ea4e1cfb2d20cbc78b187a4b04e33787a5f42f6505cef39f1e675261fa367d207624c1fcb5de88223ae893152109c2eadeb742935a0db29b12d96b6406ca42ad3b449e6f6d7524109f0f6bcb2b54c7aed14a35feeeb7beddb7360e55c9b395b2f813ca58f1373ecea51410520f71b5c5c52fccae47fbe8b7836f086257e5273839c01801478eb089180ff8d00497fc59f17f4a8bd5cbd52926c8c2c0ca785edd59ad24ba4d8001e324183a1842868ad1fe00815612a54034fc0aa38b7f186a2c2068c4f62058f76312054f22d5f954550235927a17a7154d2ae73f67992b02c9c82f610b562f32c4b05476fcbf8902a09e1020dd62a31e949ecc93ac084c774ca67e142a305d5582597ba10213ef7d09b4235b96e77c9a2cac0984b35e55b8642e030344bd353cba57ed0358f199261868e1bd6fd1f29c29302341219b5ff702ced8458d0890c2e95182e15eb83725ad7a179c3ee51267e6e974c236e6a2778f9cafc7b299e316688d0e5aa25a85cc829fac6d508bb3a4f98a77ecb0c934c704d96aacb2b9324ba4bfa56a5446259ae2b7c135e24513a2a858441ab283b549a33f3ccc023dede2542a9047ae4da7288308846c63e1811942a9de481e1744d2d38a49094f93d6ccaf3dc81e2ae613c4202ce941952ad5519b1f93267c4fd1774f27cb898e709c1aa1204658a131c27634d611e7cf17ba0aba686a774e24dddb7c2accd2c4029e89a8ed5e88154a5c167207481aeb8ee5cb3006c95ec02f96509ce36dc65e0c1f7e7a21f2a54442b0ae0b38ad0c735f5157ba2b7191a1d5c135867b9ea0879f9975a85b1482a10f78683ec37252cff915b3bf9ce4b09774b761d0c356a930e46e07db7400f8782933dc1fa2979dd08ce103a2e4f23ebf46442f97ea6114a809fc42caae45887077300b766af61abcb1dd93161d050dab3c4fd1328fbd482247ffac531adeff1e8a68de3bb189f7596c895a9b9b0ca5c5d95cc624cd6ce435f2cc3483da61e02f64985b8e87c6ef61b0d26c3f4bbfa6c3361431114cf4df792f78833db5800f63d8a5637f49d4bdf6f4fc50cae286529bf071eaf2dd816824b9623b30230d663697d8f11a716f5807039b4190c432c7a3df234d9e17ff1de6f8494704ab2b3aa3ec296757aa7e22aa58e0d7346a81e0e4ebff6df4405f02320ecdc89ebbb6a447705163ef0a87f6f20d53e9a0d38819319d18f1bf38e518f14d24e4c8743cffadfc1d8a90a4b560d0fe1da9876a228e007daaad4e2bf6adee816be48f43b99f2476227e874465fad6b39eebe7fde14ba989f7dd1ce652a419bdc0389ab7121746be911f2230e844fbc014f4c3e5c88cf64527ef8a9fc9a36997f01e4a968c8a649d92c0cc5e20634f445bbe11bf185801d622ee250f1d79b5860548ed17f25ba035b9d4bae11955d1dd21d74eb049cf75438b4c151bcafd11cdfb91bfb2148c61d3d8b2d20670bf61ce05b2a471d4d1c487aa4f0a4f4c1863b5613f9e2dfedada4ba68eaea34f2aecd426e57aa7180e05d231405a1016ec87bcccf0c06ce1037404e1c08ebed21506fa3e49ab257fa4500a62fd1641cfdf6a2d0fb3493dca55859a8d65852177a9de86337d7852f0addedba9a53024acd94e2e871a59281a1fc695292e9d44e878b7ca962bfcc9d44fcaa5d83689b1e886c12f3abf8c9e6bae92ee32d555ba4026ee3c8951fecef847e719728af4ebefa7aaa0a0dd07fb277f2e2ccd07cba3501768fc40c94424f1b78fc126eda284ed6298cecf18a7110c00e2ec3438c533487bb7592292cefd1b30ea4ea9db9c2c9582f7596936088d32a21afcd8c2bb20dfda18a6771e4387a2c8694e676e7f55a08a6a3857060968c6ce5e01ff9e56b0cebd618cea7e3782d2b6af51cb344c4cafb537bb5dce7f98d9c5bcb03f8dee668084a81fcf489e3d63ab11d40d560351fb1828c85c8a12a3c5e1232362114cdef40fd9bb2822769ec5ac007492ad1dd0635caa98143efb40360182ef4d0b620ecf09aec7803a18a43511fb5dcf8e8fffa91dfb257db8048541319995240880aca275fc6e29ea3cde4ac5cdf31b0227ad930e685de575af8f3aaaf223c30e0f3b712bc6e4b00e35a1b1688b1b741dbfd5120764ec30d6400876927daab0caf6177b61c40ff7e4851014e6a772d42884d86d90776bcccdecd90f647a2fa78b5c2397e1fc8bde9171d9bf592ee8c90d935b2cd3a2bc561afe9f466ae1c1b68078925ccca6dd62d782fabe06fd760ae334d1aeba324566f6aa62e91583dc25f518febcfdf87e4d5c1b24755e72490757b5b340e199d8254a0ff19310f5d5a031fb2ff8ced5e986000d0101fb142114d69f5bd59fe276057d9e2f398a4c2895b48b3a117d75cabc3c33fdbdc356dcccd718b39042ced8d6522eb985acef4972a37bcaba2bf80be28c55eeafaa04ce0dd1b8d6be03272e60c737db8ff84880c6c18de9bac95fd5ce878ac7f164413438ce6bc29c197ffc7beffb92d4f4ab3b25bff96fc0f1cb1e760e3c76b598b9f6d5f13efeae50cb6af92f09c86a98a1d0d268443494b30f5fe4cdea9b88a57e461e1dadd9012a876683756630758e51ee2dcbaf28dd29929be5c5837f4d83b308c3998b97a4a7fb7d2e39e340af15444475f18c6b95138b4f4813172f58ffb9daf54135d005b84369175098634d07a9d20b98e4608647be774e0007d8d2ed7f0da89883b83e22634f0565dc54bcc9d228cb9557f13a15f2dc184b3feeedeed9c362140b35ffce838a75d45ce6ae239355c8a3f3e9939c7a91fe33fd5eb82b06c85a3ccf7a188ab6efc28ab2473bf2d1cc00c4d2a83357064d8c111159521f2cd2d359e90aa102049aa1d51a1eaae3eec5c8a291820e20ed8286809883e4a594a01a5df73ea5a9665fca45a3a6480796c2d993a418e0904485bacca11362982e681990a6903cb43e6f105e94fd8e773f302264019464264317aa8c7da8ef865721e341761354db57824af4fc174e4e547a6e23b26dd806e4b2ff90cb8afd7e69f97197efec4c942108eee66f26a43599ba1ad18d1b8c393d8ef859eef74db0468d1bf8f1ea3f24e1d2863100816cb798cac5f3454723c7d0cb569ecb99a31deee6589803bff1a2d27e56f1ea0b02c0fbc816e9c1b6ffafe3c20b4fe799b0ba2140a58cff9ef052024a153da70a2f17d4d773554abc1f414129c119760b57d5e23d551405db701243296e1fa1d86c2ba36a14188b5d27d1101178de118698c4ce3a644cc1471bcb5e6f07f0a6286b1b6070b9ff6e58cec25c27ef3e1a4e74ede1fcdccdfaac2386377443cbec2c83990a2b69c76478fea3e37a47c30cf292fb632f61324fa1c39ec1f87f11dd22bc6efdb35d3b8333a8006f2ac01c4ac48d2d1b5d2906c92df92383cded84ca993a93aa4dd26cd0a085d028cd61d25c4449f8a92ed36d1139b8067281ae201b730d19d35c7f88ff4c600028079fd9b72db990eabedc5c5f5dc6a7c1896ffd1d9a0fc0fecd6f02752ee55f958528ad4755114941e5b35d5aff685323df08db7d6efd88d93ce2b1efe3db37c8a4c51385da5dc02620e94773e004b2feeceecfaeecc46c0db210db7d2b5add3dd013f000318b043bb828fd817a06cac282b633f4e7340653af2932ff28bbd7508b22b880edeedfae8e29a8dd0dfe41cc640384b57b20232e5e0f904bb7fe82d15e3bf16d944ce13f836b5d1702044c006a4c2c0f3d5067e30630112a30b2010101080840602112f9596c78602422b388cd4e445455eb01c311aaf845c88456c8b609d99aed1289ec1289f09b1031827e34eae000d800e500bff7defb7fdb9bd2bdffc1d9ba1e67ebfa9c0f54204880c96836ff0f2489e494c289567ba90a67ebc2f8063fd1eb63a66dbae3fe8124919c5238d16a2f55e16c5d18dfe0277a7dccb44d77dcbfe3ab1a45610882dbff343dcf8fe0e66355a310dcd3e300377f204924a7144eb4da4b55385b17c637f889dd7364daa6b96e61c1e42292530a275aeda52a9cad0be31bfc44af3f201147a66dba6be042cdb0e0a040a0d30c8f2392539a68b597aa3e92539a68b597aafece59eb9d55b3a17672819141352815cb858152079244eff080449e06faf0f0f0e04092e81d1e90c80320de77819141352815cb0593d16c3634b0774812c9294d4fabbd5485b3756159c837387ee2a36d9af3ba0e492239a5e969b597aa70b62e2c0bf906c74f7cb44d735ed7bba3f7ffde7beffbf9a7542c170cc6f4317d8cf1638c31a51847724a1fc929fd9c53b3d97830b9c0c890539a68b597aa70b62e2cd3c41f37cd759f27a734d16a2f55e16c5d58a6893f6e9aeb3e2fdf396b6d80c62c4db4da4b55385b1796690e36cd75de57eda52a9cad0bcbb485099be6bacf6320e069050552fe96bfa594ff524a2925b7e09c3ea7cf39e79c734a397f8bbde96f1a724a1315abbd5485b3756199d643be1f1c37cd759f37200085807ce71445cec3b0561ef6005ae4210f3b843451b1da894b55385b1796693de4fb4770d35c1721e17d140220262224a63451b1da4b55385b1796693de4fbc171d35cf77914da80a8190874bda020110191e0a5e9a5094284060e2815cb0593d16c36e42847297f74381c0e8bf7def314fe17fcff839ff7e0e7bdc24b13adf65215ced68565daa6b9ce32b9c0c8a01a948ae582c968361bda824927a734d16a2f55e16c5d58a63db869aefb3c39a589567ba90a67ebc232edc14d73dde7e53b67adf9cebaa156cb0037cd7501d5564082440444827f48e42191af582a104cfe0f5420b860321a6b9db7ce5b6bdf5a6badb5da712c204924a734d16a2f55e16c5d58f6e3273e209147db34e775902492539a68b597aa70b62e2cfbf1131f90c8a36d9af33a6ca5a414829e861e36783c209107f26050e16c5d58a67d85b3756199f6396b180d4ac572c164349b0d0d92440f893c90247a48e481a0077a1a329a8d8643c3e402238352b15c3019cd66e3c1f75f81e082c968fe3528158be37c0f47d1f91e8ea2e3384eef8ee338ffe1f7b087a3680131112121a73451b1da4b55385b1796693de4fbc171d35cf77903025008809888900885b3a8f3b22fc318c31e8a489c50551d13c08181c1a4c0a02a0a6210046118846310044110042140100441100481180711e33c961e4d5d546c0f1fe3d3c68807e320aaee5817cab89c637c858fcb3ce673b6744d102239ee892080e50464082e1d61b2787ee8280408723a36bca5c24a22b14ed34e47ee50f711329d25bfba6348d157c93a0f47216488a10da58455b81580b74a3a52d921eb3423d631d516202c9a06990031ac9232d2d1638b1d756c51476cf7e8c41fbbca80ea81ef4e7c3bd7238b255025ab78fdd925b802aa1cfaf726b404444f377400f9d5790b63e2a117c8965a44e8223a9aaf5400aae0b07042c8bccfb5992e83cbbb59485aa009b8260413d49173c776d0aa6561de55af86692a9456e0042eb35c8375ff795dd2ded75636fa1c8bfd8609d957dc81cb9f0a4074ac8503e67b8958e375ba1c262d248d2e1c6b735c56c6819c80749485568432d2383b21fae41857334de8ed6b43ed780d5f6178c32764607fa2a7602cf3b135a0a8b4ad62102db6cd524869914c18a8aea8505e24097a91b83d4ac939af895d8b614ac29a482f905bbaf7b9fc6bb988af3c4911697a3aad3a9e80f0be0bb6991c6d4edbd97b01c56b7359679e253b205bac36085201c324536563dedd46ac04ecd5eea4f1492e92fc319ac11e7b998334a1c4207d6a8b105dc6451ed2736f3426ee0ad2d39468a2ec68b142dbada17cae6dcca9d3dbd3f274da2e05aa5a5b5268e80ebcccafe91a5fe66b761903c99a6656dca82d92decdabf4ba03ab09e863ddaba009ac36d751d3bffdfbda079b2ca1e2bac211442c4b925ee5f1688e2ca0aa1eb9aeea428b6bad4a705964449b9c976ba1f5d5da13ad8f60a89959a46958b265f6f0a671d3c40e62441f47a4d0985d152dbcf218e5ff272bfc152928b4f6ecb609917493e8284c6825c2fb60b7e476a03cc1a9a6759d0425fd7c134eee734684a2240fa2ae5ce7dfff670e46dee28022753ccc35f5bcb987332ed111febb76105a1e5887aa1e0fb37af258fc3a5e196eec4ced942f2868d10b37c144810ead1659dcc201be6dc1272027d813f48c9a6ea3ea05367a24f2a8f2afd743ce8ce72e55c07c998f3962b2aa8bb4228f0c4a3fbfad352da4d0da8c01defe5018578ef0c6455b77af6cf7e8c41fbb6ac40ec4fd44680dc0542249f866578ef9469ec483f8292fcc07f898af4f1277e82ba06ef5885a7250881566c7eb7cb926c7eba1a117807b82e8fd21820dd18b164c4b0bac8e69c652ceb51655902268c2a5929030e5546999e3608931186d7a9ede9ea07a5729be738a9ca6f5fab5a8ea86ae8229c9405e7e8a415b3fb44b0e27faa0f3095c3c55570ed00cb8d4aafec8460d1041e9e839b5c83eab2a4337d61edcb4ec9151ea88f3104235b25d77bd7a7e08fa1e1fbf835874cdd42c77566191350475a459559a38363bf4cd1b7320aa31556ef66a45605d6df768c91f73f519f4ae42d3c3f4d9a1ff2cf46b5253d51ce3d3c7ce635561077c235671240296970a5fe9685e47995fe3f58d777095aef7a83a5bca9656d84811b01226300c1e6de6afb3517354e5ec51aa361ee7b4d61c8d3f8882e5d8134a58b32320632828d06cccac6a16a51e6d591cb83f1c85c82166b12ba111a475aa35b831df886928c474e5309a2a58ccb7b48f45aab7852822879c6d66bd1d64d35daf9e6f346c6b4e70c9e7d1cf3e6a0e6322ac9db291f36505d109bd09a34c158da9a8866d5a104ba5be51a5614ac7b25ba431586df49e9ea5a1ba138aef3965046ddd0916a60c8b3b2197a29a917a7ee25082cf9fb4c2bc1b2a82362eb7bbb9aba61349ca2cf8e27edfcf3fcdbb7999d2b0a8508c19a63976c26c32ae086867421b608276edb43d9aa376688bcc911db2c5c32a3c9ac0a56c02e7e0845d76f7d2b3095c93b70a87fc1bfa91ec6cf3c4a6af9e80d2a2c6d5713beea76e3b32bd41eb63751ecb033ee62bc5e5c8cd3277749dbb7374169956c0ed849682bb5f8121c84f63c8bad16c0c53f3037c98389c33ac6e0dc3f4e8d37704d4a3027ae359615d30d61da7036dde45cd8ebd6ae995430a12dcba701208e80e39cb48b1674f0bf7c844ba0d6d803bff742d4b1132a5f8f89ac1010c9cccf42fe4595fd1d0f1b6637c81b7b018c9e1ba0d7db517fe037db807ffd288ecb626f796322529030706ee051906ae29b30fc26f012a4b30273ca18545ef04287cda9b1f2361f2f24f7822c62e59654bec4f80220abb664e80224af3408aa1980f5e46b0008a21bc3cfe18944547f040052faf598822348217910f0943660b4f9888f222f242655623d8e083d98bc89cf385d4b34cc534773717cf4372a74f2458b2d873ecc0bb4e28952c9ecc92d98a27a57de6c9734e2b9e4fc9fe424ec9524a24a625a46c1cdce0d93c7165542d5858d95d918a510173512fa7cf33956cc755da2894cd1357cabc50d7e1e2e90d3c2795cc5cc34cd00a1fa91a9cce1bdce9edd3881697a2a1e1d50c553acc2a558b796e59d1a43ed1a4c49d2e3ebb56b328064ec0431d8e54afb4fb064ec05bc07195d2274120a8b1b1810d61528e2512467e0a71996991716c3a57e11d86f58a8bd8557d8635a6b85c54daa1053f5a23cf30c912ca22039a142659d59b0335cfb0dee9aaf08add0ad0955896e74ecbec998b8b0acbb1e26bd8157569b679f102c6b1d00db19e103e4c1e9e56ab5ace67ed2f7242b55477970c299a5cfa75892c7289613a996e05c670c053ebd24457786a00fb9dcb8011ad0cad9432a594d2294d2fd57adf49f665e8a16ce745e8c4004cf60cc91e1ac8b0c614970ed12117eeace121d96333842765cf4b49bbbf489df304decce1fd9e04e5cfe4982fdbfbf9a5ec2f42e74ce2c9f912d9054ab17309e33b087cf5d95dd7d529579d37d875d53d940f77fc2ad2449ae7161ebcaf6b50e655df82b278af76202757f4e5a90acff56b30f51ef73518f32adeb35f8330ef95be06efa3defb5edefb4e5f83df7b6f7a0fe6eb4aefc17c0ddaf754a4ea7b2b3e165f0b4ff5b50b172f1d56c9a24e35f0ec53c7c58c97c0e329bb98dac53cf54ea59ef3d47f9255813c4ad93740254af2cb9c3d8c3032a2671f00cf49e02938b95ace8653b238e7e7502f92abe1a4475ace84624a60004bc20352129f9fb52626650ec2fdbc795d0c97057796905caf3d902ce9d7c99d3e56a2973e997b512d52522925134ff29065b1cec0c34d8779923235c106615053e5e0c99bb1e4b65ad082328aebc3b6807241a7200d8bb4442967673c1851aee43efcc2077714479b53798659cca17d8df95abda14ae464e86ba53123aad7889c64a9954b610e3ec19c5d362c954a25a761b19e405514a34a078d583faf0472e1047374f355ec3aeddcef74aa7e3ac1de87451bb6f50996c2910e79cec8eda6dfd4d2b44c702cd5cde4608a4455e165715574c76f3a09c22275ead43f76718c6d37284192c4d9f7c15dde65387380ea9deba85de46b57ad8b97438c00cbd3ea636b869d3ebb952f5b6fb0432100c2d31b5a049eeca4ecd0c60bb7bbd99bf9c81377e600d6dbed78f31309bd7272c79baf32f471c3633b508ead9761c8c362a75eb8d4a6666448599c5d0e9ebc192bec796896723ee16871bbad60e1b36935d0c91d270de943b2b6de99344ac42e95f3388dc659344edbacd5f838693ff68c16d17a67da84a3ad99349a709c453393e6221ce74d8689f855e164c26287294f815da87cec990b17324a5aa88bda0aef4c12c09ac90b92bad6b6aed2431de5d95dc8a896bcb8d1c14b9f4d48136e6609bc23f68a27959f55a6d1b4227b381791fc480af00e4f6d4699b4cea50a979f509d415376615c65748bda4a9bb540400eba74594f38da670b4db099b4929e39613126883b9d0bbb528e34b5f0005e38fb4c4abd9869b7d3048a04dae5d953ee81540b4da25caef08a3dcbb353279446a3d01ab5512ab4a80a35a256e88dc258e41f5eb123b133dc20156502820e7605809a3d497564edbd2a958bfc179c8f9a95df346d6f4179e53b9003fdf5127978784457dd09648fe844ead94cbb7cbd78014e2dbc9ab1ab5415d6456a589504c77d2cee63711cc7712c0e64b13890f57d9c0d2c962c6846038d9d968ac64eab860d172c64882b711563860ca45bc3468f1a34667880c59a41f67dac151f6bc5f77d2bbeeffb58accf069689652242227330643918b2a814559941164463468b869dd60c1b3bad19365cb0b832c455eaf489ab18302a6264a456b068a1927131435363f322c64a0c002b07c7c11000346adcc0986143c7756154c4c848ad60d14225e36286a6c6e6458c951800164e8e83210060dcccd0b121838e6ba7a5e3da697d1c43e28e54488832e97aa73a15e2a1139239804b859ea50831138eb28443fa91691c4899f08a8578a857cc220677648ed11a778314a1095bd22b1fee78655049893d3b8da4a91bdab2541ca449722785018a1d3f7cb43c7b0150a080162a262fb9bc318173a834692cd286e650690eb16bd67061b7aeddd050efb4187625fb080da5c02b762d1dde3934d3833bdab75f8cf3e1f260d7e85ee5d96f7c0a5025a7f3f983758408e9f047908e863b4aa41f6eb96a0a7fdc2b917ebc88c11ded37a35c8f3852d56af6a3c961bf2c5a9f1db33bda4e76db7b18f140008de706120b7884c49c1b453327b8a3ea258bbde2e7fb452f6499a976dc5aecd9533cac3343822bd9ed7d35c7a0fc4d05ce76476ba406fb7e54f66dc75cbb83dfd5552c3ae8efa33a0d8bd4393005d05964d57b4743aba299a826978bf7d3c4b67c2e1047cf9e6ad920f2ea276d3c364a220dc79bef709cceb9055b3c2cce3945759824776cf1ccd9a185e28ead565bab82856a84d8621d769411334f78441108a367cfb14187208211105168a620b144c82891888030b292854b17c929e5e4976767a09db92536afd4407bd6f2ccb09191c8e9eadbe3a03972c769f446b207c6b34f2bbc73729e5798652d9e523cc3f8711afdfc9441aed865d410421619f1a34432b2c133f1d348aed86d0da97cc1032c3fa7d111e4ce4aaeda5bbd627f7167c8681f6bfc388d64fb680211422061040e6c304e2350aefa013fbdd51402e3047eba94a194acee22cf8729035810d1122ed8787e4812736e74aaeee65440a47fb7bb8bbe12b158f4d3b916fcd5e2e18e62abbb8f451673b854138f34f1238f38bb5c977b7fb83d7bca6f6c50eaa28b228b6c45f79bc9e15d21ddd1dd43afb5a0dd512559bce08eaa981d6a4cfb41c67555d62ac3f1c7d30a5ad661b7b11ace48a72f1d26499d3308fd0ee98c0c5534bc622f41b9964516577047b11eb93ffc489ab2618345be21e6b89095d11d65122764c8ea852ba5586d7091244d55da7755f25d856c2ff985adfcf45abd2959ac95d608f110829193f8888fb2b016ceb9cab3db88384a4ae53608a5f6b2ecaeb1f4eef6cacc848f38b0057f31920e77e42346e298091fb16b4e194d5c294518097c18a2343f9275584a294367d1f60febb04bda135439d932e43c3ec8c49c1b3fb2d6ee9af16e19eef428493775736783327260727b3b1fc5b064adbdb753a938f71af24a05faa3b4ed40400d0ef69b5125504892463d8c9e3d02577aa0c03aec319edc511aa1d02302507af40e95ab964853c70d2c8a28b4e9dd2df84b060ceedf3967a25ce9528aedfcd3432a591dfef421ca0c371cadf2cd844a1cfc52b2586c26354b2efb4c0c6a10552a2849cf4e73d3b9bc195bddcd7dd2e6e8b2cfc0e006c34cf5a2bd3dfba7a2c949d52550ee12207fd1f0e315fb0c67dae7eb20aa1a872450a8f074b11d50786e482a343437f7abb7aafac6e2910dd784823b76b1187b17e3c12257ec513c6fa975469ebdbbf6ccc31d4996ad573357eed86ad9e8867ae8c77b65cf9e9a4a9ca0ba366742ac33c43aec2d68b8cc4c6613c9e2211e12129a4c246ba82bc11d7b68c62e0729993116ba407c820bab30efa709e736ba1be8a787d2a937984203591fee0c7968d88a69e23eb9cc61cb5bee5060cf7ee3c53471c7d6f3978ab17247bf919432c5014c480f579e7d88fd68e68ff5d8d7dd3d7b7673d3b9ceebb88eebb88ee3c28f45163261acc30efe706777b4b124efa7057fdd8ca51927639d19ebb0cf98e08e1d33dd703b980b214e26ebd81562d7d8b1a7f2ec3d0327e38238261df4ec1e7884dd9b813b2659b4937a87d698e2b2ec67c88d1d3bfa9193d1b083f50a7481fda6bed28c0e61a59367a73775f3357865b8a3b4ed984edcf1762edcf1161144088b4c6bad418604dd512209f1f18ef7f6a0e4d9533f82f00fcdb36ce97557eee3c61405d2f3f6351c276cc80f50481027bae3bcdd9cdd7e1349076fbee48dc9866ba76cca642aa21e903cfb44623f9aa0d96567d88f73663acf6af024cbb3fb300f0f1357abe0d99fccc02f36e24749f4d3a45dbcf9a6e4f1611df6af03977de489c22b4964a9dc2a2a2b7e8557524a165e9d00458d0372a72621b11cc91eef69bdf2942611c353cec8535aa3f81d95f7634de2698a7ab4739eb15f17f26091525fdd20f68a3aa53440dcb18a9446ed8ef548d53b3b6cd46b10e18ef5a81eb18bb35424a65eb97040ec9a992e3924ece26241ece2669c128e0b532b621dd8814211b7a902c2b6633217d43baae662bd53a98b40dfdc2e84bac71254e5c49c3e4154192d3d2a27b34392a5dced76430185dbed86c2ed76dbc2855d74078fb63252d81214ee875d1c8c5db4c7122620ee286f49325ecd1539789e3cf94744832bdefc9cf31ba5d28edef9e1dbcdecd95df4e1d180196cd99149b815c54a9c89ba9a05cfb6ea8373938f9c01a4644d07f297e7d63ff0865726d154ea98b0283ff54825a64b28918314d63395ac9bac03d997579778a14f9b4a9452ae5acf40c94569b35b2f390d19205fa5b0f2f052e54aa2238a888ea8cdf028994aa5b07320fb327130403c3f2dd89775209e57c985bc736ec10e88eafb88a157d1883916403df50e7ddca6ce793bd72103e4ab7300015e9c6c276e60e245e425880517a014f122e222094494e0033e68010532bc885c231cb4d003292f22281f58c420c5112f22a71c08018104b117117e020424a6c84106ae0240053c7ce045e4647b35a176087740064498bd88b038e2d5843a65b1d6a9430e30e8f0eaafd5abd9f5a089180d5e442e92d7342a7a02cb8bc8cdc18b0b45d6995ee4e5d18fb343561c410a1a5e445ea478715ee4d57de0529d3984c612a024a11711eee1072ebc5aacc3d5293b2598e8810d5e757e13595dfa98a1dcab86403cdc6a91faab761248f5aaee71053909745f55862b74a97a751fa65c6b287bd552888a382ac2ca8b0dae2432c246544412911135a2228e4a5c08645fa54e3af5694b39ef388e936d4d6815e6cb2e5d5ed63b08ff12ebf2e40002bc28139e942ef6514ac99e9452ba0f15e607e197d283f0cb6ea1e6f67edefc3cb0899c92553d707ee1adab5ae5cb7ae1943ab582330b38f9e73d4e9f57eafcf6ea73d9ab22df7206377314f9769f3681a3eab98e44be9d82dce90035bcaed6da27ead6039bacc05c7777d3d34b295c81bfb325ae505a9d7c4d6ff7990594dc7a8f52d843d648f271f4455e455efcd3f9fdb15e230917884c922f9733dcfb8ad67e1694af2ef404d4f8a6a7ceba0f417abbd7d705b79d67cb9028e90755821241c0668e788f705d0615fc373f9ee11d08b0c2e2a70b81b94d5b94f79fd986303924227e7e945cd82bedd15b72889f3e3d474e01a609ed367eba1c6f9480ae3f87a33492b69b007676cdb04ba229b5679fe150b5e26972886989750da03a359c7245a757029bd0d9a49eb87eea5396c03e6da96909fc29cda8ce271d459e5dbee848e40031cf79cf53375981bbeeb6f5c5862b30754a47e0c99b26edb384e9d12e5d2cf7006a0284e77d885fe4c5b907647679f087f3169a00e1793983bd4f52be6a036c036868299f1210f3edf239b049cf39b9bed47005e6bad92fd43bb4f65e21eace2b107352eeb7b287b26b368e5a5de04976b1271114e5eb749e21abd095300d406da88021b472a09e0e50bdc3248298f4494791f6e615f83bf7ecd7759d801abaf0f9a04ebba39caf402d577ba69fb33cbb8cfc3ea64bda551dd5a977dcb373d384fe26973e19805a205d25ababcf5e290b375a120f22994f01aaf8987670c7ebddbeaadaed1df96a796b5fcba60f454752082ecf4e7934e0cad7c18c6e49ee8b09eeb4723392ac05bcdc70b9a42d92c51cd251af68ad578cc41db5d17337166bb01d08e864f09ad635d97d09baad1667f311e2d6b2414467610e7714bfc51c8625094165ce0677b0c8be82e18ed2a8071bc5302b2cf5c379f59bba2dabec85ebd46192b0ac728c75d8bbe7a41ff561affe70478e89d389d8c5d1495f9d5d148570f2ec39b11994549f271c3739e2678b60dd6f601d902884ecd9736eeac6c6ccb92f3c70ab0f7309f5d56529e67cb5d92588a4695d35d3c31d55309871ccda6fa6c4498a2b0aba23cf6696d2e81c298dd28886b894f6ec92724538b88245ca8fa4a30a143d7b0a5a786e54e0c7d01337089aa4a91dea0d5a20dc244104356db0078b28f0703b1bee6891a470e08f38bd25b6a6385b39624b72a2bc37889f674f89393728987342c21d45915e3165c31d45cbe38de7398b38273c5a9b5ee7387dd53f5f02e341ec2f51519a7d77fb4220fb82710f06fc69f2f279e98463823254783543ef93b19d70c85061b19342e3073746ecb25161d78b777ed3f94de7292994fa0b683f19bb50364817ca840253143f7eb3efdcf3c00f85eaeed94d5cd3a9544dd354023db02718933d35d9e379e7a618a4eb9b9962b2e7fb709062e763fda9319b242336267b4a1efbcebd1268f26fc6ae6a448aec9d7f38fc3c7b67e4d9479ba40f34895bbef31195f45d0088f8ce479ba4efbc0406c026593729293736c9eabc504c92acce69e070bb7cc955983236d933bdf3c02e95beeb6a9282704719db77d3c71bdb775e03c98b50485dd7759deb6391bb2c7228f17b31bad33be7e9407b7b879d731e3d1c0576f573de8288bb43f6a8788e47efe4f08a03ba3c37baee3b57b12be73b6ff54e53ef6abeeb9ee3b183450e85c4c4dc2263e639e79c6e6a9f3de764e6c973ce3927334fe61ecccc3f8230733fa78298273bcc052b4970a72bc05b313f1629a5f38d78903cf5ba45ee5419c81d55af585401920167a44651b17c75e2a9571b2d7a2a7dbcf1d4e70c673562af46fc32c3497dba55b763e752e8a17a63915a619142b92a6f02a15a61170d2cb7fac8b3c4863cbda23c346277e431ea1d5b8d9e3a9f745cae30fba276d96ba802ccbbe2d9d480e4e06cdf77b43cf905487fbd80cd07b1f93af32828bbeec22e0b3043d434e314839c5fd865a13de69a23a61c833047aef349870d4db23a3554f3aa9b64750dd8558226bd4d333ee5b07919be144956ebb0a1c91eeaed364fa40b25e442adc026cad71cc99ece6968b2c73a8c05a9a3843806d40a66a0523a86d2686bb07cfb88dae19be6098c8626592d431bfaeec29a231ceed07717d6be69acab693625bfd0f9a195ac7e2a1385c596a9c9d0585c31b9d347199a4dad348507f3c2b52fd929a5a15dbf1b9a5a67a569a76151d2fc74a6296869591402cc0b20a88af9e17acc0f54756dd7b100fe84a37b76cfef9025a5fb3e8ef1d5293917e219da06754139ce47f65248a733bbc9da6beae4aa6402a5ff8b6737b1a94f0828f2f6db678bc576fae3767f083b097b893b7edf50dc5122fdb80929eab18a0c60f0c18f9773c1f38c4c1941b07c6977d658b70e9bafbdf421dce97c8b99123325664acc949829315362a6c44c8999123325660a1d922c2e089ebc19756a95766b89e096dc932d27d317d34c715b6febb90fd3394d545210ab4c2ad5874753d15b1f4d55deb2890a73dce44c36166ddfce7289fb189c990ee39c5f7066864baa5f57e11ea70284710403a957d63dfbf1cb8389e1528789dd7add3ace100e0da7d63b9cd3b78e4383ecf96a903d25af208c23d6b1ae02e9ad733092de3ac3b8f5ca7a0774471cd908e3f676745b0aa92271471c59efcc17e7302e4f0ea87e431c59af7066bdb229a41828b848386c8c24cbfa07bba38d908dcd90ecf9dcbacd0e6e43eb1d53cd647b6b23746d5f84c465c699b486235385e0e208f58edb7a65bddf3aceac77da86138e38b4b730305ccf618edc51666693c44609ca5160a39c9022ea0a2a8693132813d81e9e6e92655fb8a3e916932ceb9e1236b0bc751b47b2877a0a890643c19ae7db4827982340669737757b0a8b74c1b09e3a92d205830752b43ea6b2bc751b231ade7a4a267ba8a790546079eb2a8e640fca4de08ba34093c3b8f113183c30452961b14f5e4cb41844bc5dd1f0d6c714d24a26598c7293a5bd751438565ae3cc4e6f1d27885d2f4eddc6ae17c791e1c084e0f68f38b25ac24df6d47ccddb1adc1147464d5794b068658458b42e3363d13a922b232433a3a0e9c6a2f5099a8e587c81a7096c04753483b73e4fa8a36e9431644f3047eeb4994996750289b75e53247b506e7b87b73ed22479eb343a6c9e968edebaf7c578eb25196fabf5d1747beba69ab5f79a6a3545d66d66b2a7ddd21d7064666fbd63d824cb3a0d1cee88231bdda6a3e651e1edad373834b6c016445c19426e7b8b237beb3832d9c33478ebf3f4854072cc3785a26459cf91f35eb8e4ba55a96e6871824a492ece2cc491b168adaf985cf61147a7f6a2041ef5588c3f9fe680bc7f9a45be9495cbd37a84840b7aea1c08029791a8c40db655392e15cd4c00089314000028140c078442c1502c1865a050fc14800a7f944e7c589c49d320c66114658c21861842080000006208192019a1a406319905401036448defb1a12fef12830426bbe599e630c354f41583f2dd27bc1eb3030a65b74e995ffee32f302cbc548a19d3e76cc5ec8d9fedcbe121316920c2ddc14e26c8c704619068cd2895038b64ef9b69f4f2df0df503150d7b822a0e9b784b60bb386251599c1c08d19034a1523bb644ea7d65e4e0dfeb6ea996371ea94fb00c4ad9e82f2376db1292759c54cb5a2e162f2212dcbfd3845f1d1547b979eccfcad416fb7cf1701d21209e801b1af6590eb1f075cffed54da0653d9813e2635e58bea29428119619d715090f964f637a5dcb9dae841b19ee024aaee06c3402ad318447fb70b7b59b7cdbcc0a8a0eaba6746be8e111642efc9aed8584251a8f39adc295e408bb91a3fa25a49c72fa5f546d4012a3f2d1894b0266ed161943ee8928f2ba29faaf70c9dedf7a19c6b060b2ca066723af53cd36580c4c8c083a9f2d333b5de0fe47a7e55509304369d3ebae3cf347c06c6f600c187c884736c5a478fcba5ee4bb2497000ede0739bc2227221df02d8e448f6ec8e9e1bd1ddc65cd159c6d448833c479b75d0de5819760644b99d47d020c4cb48c706e5d90be93d1dd1a282b316d44ddc44dec1c9561d3d69038dbcc0dc75f161742c5068678f8695c37e63b47c8fe0e55a7abba338420cb652ae3e2ee463621486456c144c671992d859cee6c577aafeb739b848778334823f7802a1848cef6a0a725210849cf0b32c07eaa401b598420863c3762454622832d16823c0899c06a374bab4f41361fd02371e1eaf8c3898362a2f28619202f04f142d2da060ab9b106c713e37184ad07f15c347415bf71270c08801d2482050d57707d3112d2bd6db929668654eabfac2908fa73f0ae7e18167278708c818116829b5492352e2482cd059385da76e8c843782758961666b67b426fb2c710bcfe0abf30fdd133a10f671908b85131ff9cae2aec1d40202f0707bc55eff10828ca47ddd0a015565e7d7a28242714cb253c4133c34777f343d0e4abb65093864b2d23ba126214ec42248ab551ea20db345ba89baf97389a369a1f70c966ae7c27a5d1b02f04f8a1273d0ecc9961ac4857016f8c83e13c2baf3d3846af08da1aff82e6d9721fa25f551a7b67cd6b89cab11ce1b9a7459219cab6f17d1bb13ba60c6ec054d2426607bef867ccc6186de2cc88fb96524ec2506dbbda8f7a7bdc255469e4c815a31377893af210191805c9182c9a6bdb876b4d6c7a55f52402b099b449da292a16dae77f81c2a870f0f12238d585c94445af8460896a8116d45c54d105eea0fc783cb05dcf5df58351802a8441ffe8942811f08a5f09d20aa2c61c7a4bc813e65782c71df2033dc8367633b3b0e882833e1c119210e3d94d60e460321a43d6af92b353856cb000d2ea06e9a55a6e3c79e28090a3559082169247df9f719c8f1a1d59ea8d5cfcb684e2efaf2f812e7aa3393a8ca823fa20ac2e96b37195c52f7668a90851aebcf6cc120b446941c2f02b1690d933651b849dc0eb49cd35824260031e86bc6cda9560f57feb25cd5186b86cbc09c7041889af0459d041933dc047508b0122d75371b529616dda18a2f3da66d013c4f99e79aa1fb230736eb5fa56aaaf041cfbb669d602d2042911fcd777649a2556077d6ec25d80b0abf16dad478716fc5ca2b128686cb2e71f968df6d777bc138672cdc1a5769a31baab268341d2de375859be5d9508c4c43c1dc3c3dc5f4e7312ccde78e554a9b7367e6ea5d14214282f89ba98e63f72b480b78df5957cf5b5b65e492e520c33d76575d064103161ec669244d76137db8ca00a1d63c618f120f9c68553a403ad430b919f3f55b55e7057268899865a72a6444b2ab3d00a96589a0c8f9c3291bfe03bcb3479346a132a8d71840f424552bc1be4426e54cbc56f0e13d9265425488545e1edc119f3015d34011551dd0cba8872876ab720ed16997db2608950ba40d271c2f23845c43cd12d8b5bf03868e1decb7ce626ea4c944c0d5144004e9ff577c28b78d4cb07b02c60cab870ff495de0382e7ceee3bcd8c138c4e4a2257f63ff66310f2cbfb184c53353b5df60745d52f05c0f6ee7f76133d188ccdeefa6d169dd2b69041df429b6de92fa0fc3255da0326ba5b376fb97c3fe4df8094154d14c7ced0876f98068dd801c0303450503d361bf741953a681674205296a40073346f7b44151f19c25a4928a7550a8e921d15a6491fa1124d66a24757a39697db3765a1ba6e3fd05ddf2c9aa11dc214b0bcf6ba121fb4647a1befa09fcf48a724115978326bb3e7049ab167dfdd084db62c4af26c45bed7f0f487dd5a9fa3a5528fc4701e82299b7b2027d66f0c1913d69e3f23dccb7dc44ac0ffe30a5da30710cdfa402f79394e80a82de8800dbc5e45732f8d838f83483043dbef02fcf45ecec0370a56e776f2e9c8699c4d414187c61f610b90c177131919102b451664d65cf1da87836007c321918513f6d0948006e90077b95130c48ace0c4ec72430beab089de4d024e11a13d0f893877b0b74b84c69c85c66f33c5922988d62216b96c92e0086c9f532df66757371ac2a4605b5628eac2cb180d0cf560421feb43de16f73591f7cabab8f6e5c1e4f8501d9aa98ad8a7a00c976c3a3016000a5276fe27adc3860f39d426df3f208c151a3634cd2bb6c32ba4f98cd9915544c5f3141133168380ce2eb67df35fe622f22dbd7e70d391b06c8450e708c65040ec0132f8726f1bd8e7e739033f3a04b80861d0d4a6760d6afdde95c46a360791d9a70091be162d5476a81f272e5c5e9d1003d2e0b0bdd901771d25d42b520ef1f88297108b4062ea331773d6a183c81f6397deeaa74c216390e045b18651f1cc00c187972bd4e6b06d459e5a8cac8334d0e0d0c441c4154da8190d844b1ef6ebd36c0939f4f91b4fc351a8951155009a26b52bd071615d0cbdcf479b0b34190db97c7414583153de74351e4ea99e68d9f54a424060a54c8e07e079437d2c40ddac18a24084c74a9f625424faf914c1b01193467a599e38769e52327f1266cc9221dfefb6a6cf8ad4023bb2a05692bd1a7e79fb320f8375b358609f54290d18c69334b0a4ba213ebf51e21b3c7b07cd5f8747813e5978c2aa493625e9692f0c5b48a9dc74e1510900d51e80ac86d0f8be6eb8b7e9af00ca914de1a0f0ad484a3b83d2e48fa532cb7df5d667eccb0c2e481476286ae8e43954a2f3fec01ac2835378cf8e195e1ffc31e8119c9c196af406442bac7576991158aaa8ccb3ab93313bc7f21f74cf65b76b072378db5dac523a35661db3118b40bc57358d3dd658baa4a102d1936f7ea80b6442d146f46ad9f86d50fd3a144799c63b8897fdbfd23a1af479405ef4d7a50126a0904ee52ee729da43348d2780ce9c8c7f57a0a317a119a34ef62cdbe2665d890b83252ff3929d2b8e45658009ee259623ed51f6d82dabfa8eabb102653b379205eeccbead9b8039a302311b6aeb42c15b8c86ce907822c1d7a05537ff1f9c0f77c940e7774ed3279ca7bb135b1651a0e729b415753b05aadad0281465e1a7833e39213a1aa595812223c606a3afcf94c8fc67a27027a63e3d1637fc95af86eb4ca5a3db4e2dce513de8cc6d1bf4a4a55b8c97adbda46d83b3ce93f81becb8ca11209cb24fc72269330a698b73a043def020938c83006babc6483ea1adf28a801651fb38c10c78adbc374aa1f30caebaa4ad0839bdf0e3145ef0e357dbc7a461a64a4d788e6d55b90de471d6ac26e9ce50c520350215ed880a989df8b9d19b2d42be42ed00d2da672011653a4874b4b9cccbf6e762db363778f221ebc871d7da276f898927db2ad3bdb0211fe22052c38a7a58750300e9464450d2964e71e6129ab4cc073ded90a5f268c9f5cec9a040d0af887cd04198d1d46cdabb203981bd53aaafe151612e066d7dd6bc611cf534bbdb2d346b92a3230dc78c5e7d40c3ea3a2093d0ff574cd2ae49e0969b7ca909b4263967bb1bd837db1a2726d43320d49413829674539a389d51be1a09ded0515438aa499804a42145521ae7008f4b7a4682ca7bea9b821ff4ca4d6f814424010eb3eb10bbb4e52b93f42e45bb5fe5cc0bbdfba9f1c0f1dc84833f6823d7a7f7fd61aa142cd3351a74a382e0f32ed47c9e25007c2d8ae5a0acd35dc76c5f335e24088a846a65ef80336ad651f9a71d418ffbe69a71963a58ce2f731ac96c0dcd05521ae47a10e8599241e0f684afc637fa3ce15cb14a5772b1d1abe38c73e5dae7623ffbc400d69af0786013f4c5d4149dac768378802892fe1cf23c99b33a855266394b3a81f5c36cdbeb721fc6a84faf377a86ef08c45c06e4381e7c91ee7ff7714242e0f1ad0226ea3b38af38f0c331a20212f532dfafe28d9d4108131ce69279be4e2c127d6e74851c951edf46e30b0b4ef03ecd42111618ed4d45b1c0e5f5a0d688b34f6931fb22b893aa3130df127b5e97405e261bfd6d18b215dd8c49e362fbacd2d2a38e10340ffd015ed190d72072bf86979c98133c06e70ba1a5ecf61618dcf3156c21e330d80f2f3414467059f014382a588e811035e1f03c81ff702c91aa3c931acda5791e24fa0ba1b29ec597e39ab6cbebe5d6255b4e12cf102ff588ece335c09be9194649da047b9709772723753fe5b4722612db51492522354f23af251c7f218f9af7c94f017f889ef85c51e6d6ca29bf81f19845a586bf767eeb60895ece8c8cfb3687e1c9f7fef7e3e9122bb73431178b1a24ffba50ddf1691f47eac958706cf101fea672ff30ac02e3e0cfc50f55e7d4058a00322b647a8da13e58ee67666c7e0dde96232b84bd8445e6d91485d39e18956aa95c66f9faa152222bde5f341e2b3119961d161e95ffb50a87cea4d27f0f93e7591ba1e3248650af1eb5c134c12f653dc49510f7065f7c364517bf07a5b2f26284e180a9d9cf1e279e8ef54198fd38d0f12fd5390a45c54539cc0a87a2fd4355e07bf56cea797e13c2ca54d550c03d74a50756c0fb8de2107afd4b0c28f9782763a047cf72a74b00b03a0d7ef94c4cb82071dcef42e3b00a93d0a85b1240b92176a77cc164f4703543a0fba4da912d81302a8a00dae610ec388ca24bb4507a02d8430954011c7e6913faa801e82a210c28f73dc9c25165e8098f8dea494218ecf283a8bf9bcc2924ba634be3b5559fe81a3e01ab272a4f447f011e6d36c97bfb000f7a3547bd16fe2a224b7f851d026fc4c6404fca3121b3f010975ef756ef85772afdad9160d77172eaf1c0c72e852fd930b8a565fd7b7efdab1b06cb49242341798adacefffdc4d912b04ae9ce2700c822032c722a4b22dadafc0281983ff49c978c898a605c52a9a3378e29df809824b31f6a90c9d1ee71966a13b1c4f12048841b86da7b7e9b3d07332af16317d53a8fae40c6523809c217028330554e18d5feff83c2a965ac9f22e4f5cf2d8cf85c0f616b5a8e5e3a8875d7b87bbb08516f92e8cde642f30165e94fe3831eccd01c726b1af2914ffc2613f90f8f7febcef0344822b7c679d14a010c1b26edbf2b7ad62f430dc4b6762b322fb711cca571a6221eb238ac069846750da0a4fe68ede68a6bc58a8d60e28106ec94d656d18403644ec6da7bfc6f8e96810e27add1c53aa3d17b2089a930623207c4b2e0b5a7ec7f9de142f7d3df0c303a3b1912a21873ffdcb83d6f3001e7c966b5ca05067cc781b0c772e33f6cd25a94f25ef0550d68cc8b1128a254e12ebd7aefd43a23d55ae630f9bb5b22f010a7ed588460be5f9b83c05d82b3900725e730a477b2143474ca2cad9f427093fdeac1372c2df731d67c4aeb9393f325f30e36c17b599fe882581f2d13a162b605249719d5ef236924de903ffe5f5693c2b1c98342401ac113ff23358e1bb227f694532d17fd0515ac2d9a73f08690fded614f195a53cdd2ec054dfc2b6684ae181ede1d256bb213be80f1ad0d015eeeced7d54221741ba11664ee64c2e0eb1fd1f1319a08a193ac4c5334642fdac755905bf30a6bab28c412ba1d3509a065906cf2239e0f99d7748db4aafc7433d37354d8c8e522285c28e0c1e9f07f14defd55c878ea647c5d469ce7052b82c960770703414d2a01858eeb3fa0b449f909acf9e8c3757f1013bbb709e5d534b1456e07e9028b754b3304396320a4fdb1e80f4e74b0d5626e346e1d8c4ab139f767bd1d898ea1c5acff74e6016b34ab59158e5ec315509f805994cf21b016256393ba37b5baaa29318943ba3e585bcfd4ab6c67d3171d4a62f69a6bea02a6025b8935631157141e94830b11df22f7ed013f8006d30e45667bbc7e737232cb4157629416885cb8d895e619f0da7c40eb27c8e32a837582d8495260d1c1e72568e8647f13e548bc8d52be306cbdc3635f79f7fc34c59ef4fa1ae19440b84f7ae32b28d05aad8180f5276b6742033b184ddb5105e5194b7591f4ce2b3a93f2a1bc95013a8d74c54617499d9e202a9a40a6c58e37ee571cf6b1242be2d98faf0577a8bb6b2f31a6943e2eaf16966a923354dccee67a726726d169504075a5da8582b300147365fdf019410fe057ce74219ef828589a893f99976c1cc01b998c1052d6cce8a89809659b97c42c87fea3ea4de6261b6203afcff489222174027ecdc80256ddb5d4bd6f25fd54e375ac07105cf2fa2d30222591a36448d4645aa9608442be91e0ecca90342ad95fa5c523c7205d4a1f029bbcc88c16187fabd01cdbb70a8a8aaf8dc8159915717472874c1a69090d94f42a28f0f0850fea5d702258fbd2f544d84c08dd411a8578858d4c00d62546c69afc070106e0048fc58f96a126d04558fbb6e7fbf7545ce2dcfba795f5353cbb57c68baffe05a3ae89ea6c139cd19e5b277ecf68403500d3b860306892f2aa2347d1a16ca1e2ab9aa833c7c3564463aadc2657e99f2c006e3cbf79c3f7e5782a7a80cb5e4fc8078210cff50a1e8e5ad5d03b154ec2d2e1e37b65606658cfd75512f0c41f164486982cd1ef3b1eeb8c7cff3938792056725b63a03a911ff215d238203f0e52f082691ad199df10d1bfa2233db5d76100e6f0e77e242a14e0354721454ce068c15942096e3419a2075504f1d4424c0ae00fac9bec40f89604b8fbc09111c15850b3182d7eeb28a7c1ac897e46cb89da1784d46a0c91fc4b00af13dddd9989203aba8fcf925b4cfce0ae4410645a3396fb89e5cc86280f0c8095659332bd92b1ee068580ee403b2d3940aa95a35c60103f5112822b84a24660c6292148e53943f88e1e587ff232760cd3f4f3d3303c20c081494b4fae5049efb32e6849913197feabc1a87f4aa5961d67b8bc4c28ea3ba85152de7b89c6eeeef015e3cef4983f2487502c95f0dd3c756d5ca2bcdb04b2b2ad114db5c5f614a8ba255ce745d1c0cf6dc1d7925863310aec3330b42560daa8b35cd86776214a6f23139112e02c15d79e300d6ab707ac65d3199615a95f9390aa9f0120932a73ff816db9f7b536a47ba4ccd3532213b9f3b0f70105d4b0bf4c3ad93960b862627759fda344609de92de5eaf679d9a8e6656f263804708e46a64ec18f57433e4cf8861be201b7df271808db7d312d848cd054343500ef7092fb62e55ecbf225922b9cd2fc13d2ad940808ebdac3488dfbadc173ae1339a43dcf4d91b8aee49adbd1ebee350a22df2ad11e126e568c29e635a794d0c7bce1e68c3c70c50a74767a3c9198eb4c8125ba1148dac8be00f716756cc76014573e9234bdea10ed1269a04915c17b10386edea4336ec802000774d31fa710fcef3e56458e99f76ce73edbb67f8c22f82ee9c314c31ee86218d2e62f709281d92baee7b7c9464cb1a77c8b300aa5eea071159c7c03835c718849f99973405ec5a354004242b1a955fc555522d26e07909e99f5c12154eee39d83713f7bef730602286882e8b9786076be0d6916ca804ab719029de290fd8937c06ad65cae46dbd963aed540e7655f93ee7728dc26cc5b782a45c66e706888d967f5aaed53bd8fb750da1cdf4fbd8936afaaacf342acf0cb64f42e005aa016945a13564f3a3ab3bc954883b06cdfddc6d6a7e739b83c8542e167159fbadabe5498a7cadf8b0b80403515daa813377b021b029f70b6e0a7a3d2864e03d09c08a4f1c26b38da430233490180cf9a024bcd0279d2d33cf10b97f69b0fee463211224f8f82a9903bc1ed39f6a827e55d28f8dce6ee9d048e4816934a5c50889c3f8ae37a9e318ba1273f1a15a906389673e10d66d8d7f86570ad994cf26f5a46958a80c0f0c14cb044a34d571cc444554da8d80f9f0d537dfab05ccb8ab68bc27c81e41f267dba46b709ffd4138999d164e09c8e43a657863fa657ce061effaa40400f7c4d401700e098270ab9b6fb3b38ee155851d2eab721c0a24e302cac2b6706d4d08e3a7762014d0dc0c1fa1f77ad827f7477b09835f2950d8dc3986bb4b7f0cadd5210d930a784efa99c672373d2c02e61c65fc98c10ad89733607611a05b5518f8041e2077f58f82bb8ab38d7a8d645c4daf8859bd24b4cd41a835ca0be713e35104a7ded2bc0f8eaea7fe1fe9b48bd69855ef0158bfb80f4be53c5959b465e25160b2b0804f754057b90cae7e952fcdd52891e91340387d294bcfb0c81ea6916ce6e82c57ea7df921cda41356b44d79d50d0b9e1cb5c9740b0f45c36551d0556480377fab518e97a47684d93e79b4111ff8c9deb16f4a86b6a9828ce088aefb05110b575ee7bb2f37c4eef3a0f48d802ebb83ea0ea18573bdaedc41888d8a8dfd12d4d71f739d502e341903e9e1299cbccfafd1629c75211f629ce03303cb437aff636c3e7ee52facafa2d5dea230d3a4146737d5aeac633578d4ac4c45030eeb7ef2fc803766f2762d119072f94f10b4f22de071d51a02b3c076381e68180404f64a409c5c8e2f0269ce2e050855627c66b91a4062731e29c0e2a3a8ef0513a30073b19c8b7195503d105bc243c67d471831a04b704d101178d303be30d5b3fc5d47d97a1ea3d5949171fe67a9ce9275e8c55313867aee0468fda23eebcfedf89758933597b97cc8e8c63310f75d6a62b98525c97f93007e7837f14b924e3bf798c1a9ce7c54d8b9b886d064767c778053d20e8d3cc1cc77b4c370ad64527ee2b4caa13d47010d930001fc371a756dd04759703671112c6992d422e4e600ce5a2186e8d8123f9832ee58301f2d4f0bb7e0299e41932c207bf6ffe513ea40c4443287fb839378408c9cda8c512ff79a52d636f72989f61115815e3131fbce193a5b4e79b8e13de2e2d7d426da130e34490cfd99017bb398df1c10050877eb3456bbdf7868c94ae8bd47dabf1bd2780bb60cc0627bd3fdf83d296c5ea37f705345977d5be83f01802036d9ee85a1072eef3566c04cd982f753cae579b6daa3a01c706663259a96d26a562852e4aad7666e8194f499b8d35fd786e28b90e01580a7ea83aee270ba3c40e45b6a921166f75f0f1ae8310a17542ff37b3967d034038d834c9ebf8ffa5125a5531a950c803a40c9956caa5087d3b0aea556870572b1a0230abf0462416ea2691813624a2fff061c6cb533870c2671572ff004be2259799b53dfac6fd0dee9bf24c57ba4694ad61eccd7828bab00909ebc1243dd66283dd4676a16de2def7b3283a7ed8c530dfa212ae77bc04c35c819b5ce400a00381b877d673c07ef95af1b357529f3ada068bef171ee25693e15c3e0f10d51703abd3d924ffbdd053951a16df1dcbc0d455c1970260aabb4fd85b7f5de41e3b9b16a39611241d2d3134d83e6ebd73cf331468c9d5ceb8bc5994b10ef4d6a546ecc07656383072eb0c54428b8dd017fa4d9668381da54a80a0147e362571d0401b9714c1f3524032260c63f2b0cec9bb64deabaf715ebf9416210a63969b25275977b1794facf7509ff54b03dd1536fab4c2bb43f582f559cfa81a5c659d26ba3df5be9e73e9122ae6a4400d82ef0a9d05e04b89ab82e06be38b8983282eebab7e39cc461cc365c33d72ed502f281c764321ef8352c3aefd87cae6d2cd4462e5bafa88e81d514fc5020da596a03ec15afd5fa17309f8822e8e8d92a303ee86f3ce05da0b674e33f527a7aef3b34f30fbd6542b34a5223fd5076d23d77d00c482c00a69aa2f873a8ba3ba231fbc79522c08d966b153ade695d8950ce04d5424bc5b5e0b7b435269b18977e76500af9476c806634d305dfdcd640836ae6177c08931743bb011a6508468b6d70706005f15df692f7016389173ab37ba7832d44140fbc6f8d44641fb0a005f613be1caa7d06d13b45e405bbc4232499b0bff03783c28ce20a87181ee534f256303fcc4f21950e63f7af0c4f0d3596f07f99de52b5c4d0c96139d5fe7e8ab12f39908716e420216caad7f742faee4c0c0488b63c0e81b07313a60bee8c3009c9d1bcc1538bbec7847bd4da53bfce3a8e7a2a2ea2e0f9619694cf1b7ad70d27b3764f5739229eb3d49ef65931476c98e56dcf439f740bb6454e813eb0e73f30f600dcb1d221f4d2b6d07a4ef2aa57a662c7b3e8ef1bbe22a4d6ddb9633da53428c207e196f441589b3284619bb50593a473eda21f61bb3d0ac98ed6746d84da73de581fe8898db6bb80120bfdd194f05c0ce1060f8e0391cfb3b3be53b7289343f315420dafa5cb1f0cf9ab635acae0acc7ccda7edfdb4dcb05187d21c36c7369ad66bef041a32d6e1e9ca68c5e881c7033328b4bd57fde943b38dd7d2616c328530cad725923af991c289e822ec03ae001415e1e204bb53d62a65dc0e6c4e7a637e1aec81fcdc903c86d804bbdbf28869e83a2b27f65042776a78bb4859305b3b003c02e90289e11150de1d5317e76a506b3e19cc072991cb57466744035c30c22f94ece8663b70d6f0e4f023a5b1ec35d9c445ca6348848b7d56ff347226c3814fef39470d717b4d6a8ca800f547a239ffb2f73c4d3c27a4099cc35937041beb21b88e151fcfadaf368e080cf8fd0c1ab99390afb59c2ebcf43ac145e218e0a5d361677cc03e260daed21a86c064984b16b87a07110899169b562d7063c06e449a8f48b18c7896ffe76963c6c0213f2d15ec263184a7aa0fdcc8396ec8fe9c305c3da2c584fe2ab552412482e2b7067d3faa3157671fbac8b3995bc333aea473c54c0340dc5df644f4de0da9e319ed144363fb80a8d1e4735bb816d3c9a6c4b7a448c5e6c81f4161cccb909782aa9ba3c12d4596c2fc09d80ca8be000ff42e6dd03429a324b178dc9bd3fdba006a68f1e6e01c6ae9ee78a09a5bde0069d482d513163ab882fbb8663e26d8c8b309fddc33b6b92f38d1851a23ed88f666f6f18fad981f824e95f8c5bf8da866b24ff48609fb9847c31ee4e76fb45b074e111b53eb32cbea9824023461c3c5b48f82428194191e45d1312a9ab739eda8c05e4aa15b09257fe01c80aa6d30c0cc293055acbf055fd2c86f32b8c5d5df2ab2375ff346306908a50247c53e1b64ab2856442dfa77b27b779cfd17c125e8e7e37a24cc37bd147973d45a52b89c5ce7f8363ae1edb7f2f5db0d0bcd8195b4997e798bd0b5f9c5adada562a5dc115e63c8c2be9f34145649c0ccce8d33ba8999d243be75009dc5ca4600e623d1982905175e2ba87f58a2392a32ec9b207de1ba4d52bdd23a1bf883f6c4998092e93821e07e806f08eac7f7bca216d990a3a83220ac10c3521c1b05372aa3741a284bd17077873263f72758c5d6a2460f79ce8e0ea7017b31f1dea745de7491d762ef3d435904a4c432ec05e0deea2c5eec9216392ae162f2407c38ea91a2fd55dcc98d3e793511981e2625464c7a36164332740456912236610bfb5fdaadc5cd4157c4da8f6ef73cce95be89c8dc4be8e599e5a18270a898aaa7c8c541a4bd840eb6b5d1c5e5ccf5acfcb2707b7c56a2137411ecb382c8cb992b489ecbda29ecea9739ba555ce29774da16f219d65ded17174560b55659d6464867130971af1cf8b6f2ab5b8e72b36a77ec10331c56f46bd758767799c05c58487ed60e6f06a509b17beff363186aff23fcecd2734136e4a4e78553dcd9b448bd83fcc4e36e924a01b8cacbf5d01150915e0027b64c16d8b47cc2d14d81d83be6610a79c2c5f14ef70c4c2b10dd29de9c4a11658816b5fa2ddf71a712f66f44d241a6b80a26904aa42d47713593a4af3bdd7e40163e749aaca58d1179673d43938cae0ce03375b8a74a726d50999cc3255f8140ed750c7c8faf29f2c86cf3052ecf25444883f339b400e875f846db945a9fc7e7a60d9f2073d2331da21cc439d6390544fa84d0484300dbe4e022df7fdfa0010150164ac428048130dfe364624ccf5990c5f41589c8adc6e81f49e80fe544c876031f19eb6642bb29e47503c5424ec019bb625cb26d9db9e492ed0398bd24713a6baa39fa9a3a8d73ceac9de5407df3b5cd95d14384710fb74082bbb6f2066adc11e51d5172574667f79ca79ed449bfbb132def6f0cc0aa2851d569d7e06f6c8015c7de8dec499ced5358d1a8191f0ab47c56f0adf6ab0e04aa88057c75152d62c4500e1607460cf742a37fdf00aba4436c8818221bc8a004832aedcb5b1170c89191c63c8dd9b3ecd2a68bc9df8284e0cc77f4503ab1837f3d23b931fdc3f1a5d04d84bd8ae693d8a1a4b71e41d00d3650c5e060d7bc440e47248e97415f0c3a2eb59af743cf883477c96041d58700fb6cf7450035a935d01b2b48a10b5a638f3ec94917b1c61633c1321d09564770e2851f0c59b34000893d9413382c4274514e9a37294c1ea519a2cf0a739511dd62079e711a457986fefc27a6d16bf739c9a4ff8fa589ffc0efa645378ecf075f050e40716f109050bafd0199d07a9330e0fafdfd033c6245258dd2b189e277e644845cce58d56cf303e6ccd6def1ce491a1d023a83e27a40fc60c7984173e6dade05aee1549e9f61cee0320a871884a31d5b241c33ee0461a7525308010c50b6ef98af8939a440ff2e68a184a6ff1e0836f234b70d74f9afd2729ba6d9afd3886b6044572d5a81d8b1dd2dc3a105638c2cd2a7840f8f890e38018c8d0332fd3fd0287a7309134a22d61f9f869db02cee3d9a369ba9c21c7e636b4820738f6726b38f751438763c14366501f64c83334dea8c42da41ddb4e12041da87be5319495d3934134a8ae1ee0f7f1194f1e69294722d8f4f2b0ac01a8dcf88652a7b1c345c95cab805acef02f2c6896cec16740dfdf3b046d3b7f6c9d3fffa73dac3c280be29d699ae59423a430bcf2f894573671a7884b16ad0fec79418d2e9fd5d9d9118a710f7d9ac08432f2be8faec9d8f2c523e99f54be687d86bb666ac31372b41a0344698ea8d7080d2d42b3622b0fe23c1d25134714d4a60d6464f3e8d4f0b519611e23075535c62e798884b055c6ea49c1fedc701b0ea2b81da7b8eb8a115c68f8137fbc9d7cf71d7b3b2fc42b27f3c5923eaed1a90c7ef81f1deb4746537ff6744cfa9e3a916f0935fe4657e7096df92b17c2b9081f07150d505058456e686e770b1fb171b0e8a88e244144bb30e2d9cf16fb8da2e82ceae718521584a7e9b3c4e3b020c3e47122c112e90cd89918c49e14eaa26ba3ee68f752879a6ba276bb3c60404c7c22a7f39b5dcd8c7783f84dd56c3a68e55534f92ed47a722cd1fefe60a4fef502be420edefbcdd9b68d98302c64705fe0582a1f7621864da63c459b024a191057e3f2f9dba90f982fd9c46e97d4e25fe07c3af32cd589365ab453dad97b97d60357d9fccdefbcdb06809a4af11a66a413bd2cc82c1eacf2ea73714f462de47a100448439b22276eac99f891641035ae2c7e16f87a07ce30b9b590ae06206278cb7088b4be1ac4de741088765904b177e1b9544f2ffabfcfac0e7dc8521ed468c8f0f0c1c3624904151c3f21d4253218fe0b92e60f4590469bcb7f1b5d411e2b5ba0b29b44936249a32d133996513561468ef83acd2f2490a1ed23fd3895ea1506b7b747e39e0c0f7c5dee4ab34d6c70d960704fe21b36aa2efddb72f3b63bcf218e9912a90b78e8e20886ed72608dc5bfec59a529f388475f0870ee5ddf64f85e37cbf5bdf603e4aced0d0770f608d3b79a9a3f6e165e6b091f926144f3122dc7b131580f259112d023102bba0b7038fdc0d590e4feebb81ecace97615f09ca1830ba5f1d0d54f03f71e0be2ccb48617e89849c4f12131e5c99f8fe9177d286cc262059793705af3199238ecb4d3f762e7c05cca16d146e2416a294876150ff2f26050b8f0d2f3a2a08f0507c59865c5583069502e4ed70c60e79ddea0aa1b8c0bdd1c70495f6701af07ad773e37ac40ff7156ceab88165ffc761a766b703758aa914b3eaa52a89d17c0d4dedc678a48ada17cf8102de9df687f9d2f7ef693302eeeb515623e1cc5869642c740c0126b943916998ff9284c39471d4a46f4dbe22f96c1f72f3181cbc39be8ce812415b30c084dc78e962d07cd6c68d24a2fe77e59c1ea25d115a9b02a4888fa39055ad8494e564140fbf98870d2380b765a11a8f5e8b5183ca5ebe7f6ebd9324521868bf281142c6c0bf5efd78e03636f4f362e82d7a0b803436f7edc6d66c78d9c2f0932abf188da09b32e43392ea6496f7a50fd5eb2d4ccccc1b58d2be1d0c3318906d79949282cb8ae5b5ff0e403ce8049a247af3272c80f9150c8aceaa99ecc1243d11aee4e76e02bfe426e6c57aed75f28c4b8c99a49caa7e3da618cba4d7d1d3456daa2cb426ebf72fd34347f3c43388f929ce0f9a70051c18f1620c8680aea6038579b408a147bb7299c73ba44351e3a1444ebb96fd2c5338c45614f614de11c612fb68385ed0921dad802c22a68ed810f3cacdcd639426265e01b76305c4fa080aed815b6e676a58511dea20f66036390e9870e8b4e8d96d7a4af7e366bcbcbf79e2ecc0f5b212b858794dc4c39e2c401471cbb2cf2b20eb093c9adc58055bb52b1bb7027be3a898b5a44ea74fe799e688a0ca1a0f000e30a68a2ecfbfe70c46a275ca8e87f7babd643fb1c842605abaefe052888382c517ae3e7ace55392841eccecdb725b7232dbc48cf4027031bbc39bf545e4d86df270f279bcaf3534a7fba89f77575b4e4b6805375aa544d332fcd296d1909259f1861393804b19620a5d07bd4479e92098fb8a710cc8d90fa9e528a646284d686c9a8d4b38a55bdbcb593ca8a49ef080fbeb8801a873ba41bcd109019825b11bc231e6c66db8a0a2dcf68a8c06ad96e96a471526fbfb11c05ef95aaca394260137d64c8b0b53ac2f4c031eb7f8e88483874f767df3fc428642713bdf1e97f21c0bf6befed45da35556f4744d83dfd0d9e458be6176ef49f2879c8a1e54de6aff9bc9409b63184e9c9a113033c27d452fee00eced57d8c6561a44421068372213ebea85f4e807a145aab49d8698837917ebc860407950baf91f04005836e65d9cc45dd98c23058bccf1023ab4ba7734d2bfaf1d90010530bfb1306271bcf3b3d0bd77f5fcb6afefaced9582e1aa8da8e8dfe6c9354ad27a7b0301c4df0c3422995972ba17c00abf834091357167f27744b47590e9511696095f3f22daa9fb9eec38e48941a02418024df3fa7236d6db6d791617d736b9be7dd0147c3c91a86e874a33ddec15a076d43203038de690635ce5db8f44a866ac0166d2327d20d9b51c76e5b267fe71d585128d7f277ff0f4a9ce88e02b63274e177bf511ae0bf1218815c17b5f7b142366d6e093ba5d0cd455165900335499864983271f9f8fe0ff40ed60cb0f8d2153efc72b74cd5cca6736c83a13c5f8b9c0f3167fc4d2c0792b1bff63a79de3e78cf0a3099327431784d5a829a48685cd00221c5e34bb9c471497701a58c953d417ec6e44f40614aef9cecabe989e1fe5dde59b9312a97a1849b006e8d5b2241f4725daf1a81c5b7408185cdf880ac1c0c1483a014064e5b8fabd5c643169b9b8eb8b3ed1d774e8786212d3b2b9b6e589b926805bf68d5d53a1b454d4aeef34bf467a42b2ed391fc83c151a22b2a8b76c498c892386ea0c66076f28be02da6290643b72557889515044303abca12d1271ea2fb38746e89f77cd77358bf5ad0ac13c97c4552877e37214ca64646a829babb0cb71e933d7f84a34f5253438725db19879ec58960d9e2cd34d781e2e8207e238951117959dba00c104d049d9125bd9d26d0bdb543130dd8c53b86a49c9f34d261c552e28e9a011e47e8770b2aea480778404f7423b780432d9d443f5f449af60c049398c69ff218c39c1270c911ba487b04a998387076cabda9ae0eff886c6d8302cb1a7e92cdabaf04ca3f4bcb1e382d327c01de4512de908b4b6d84c95b16d193f2c6b6cb91535422dba29822aa14b3366953328b21acd1dd4435d05e7d8610daa7ab0e63241317f35519c097751192df40cf5a9ce90dfbd3aaef5a4b256bb43a601f3c6d5e396c94861ca436c3ffdd56995004d75d588b087f6cff6ab867b444babe43a14f64a1270ec47959cab757c60964f639c758d261f5d748c1a00c4fd524eabac6ddf3f927d4061ae9ff88732660f6c18e9d38196a7a2e7ac004c9ffbc2e0dedc2c9ed24e4a49c1d2b1e0e4e3a4b2e5a79e4542cbfae656343b20d47d5ec2319586ba0c2a6528f48b4ae5bf617521aeb6ce79a2cf922efc26fb4ae047a7b197f77cd8eaefe5ad3aeccd560133fe1e8f82cf991cd15f32c5e3df72a7687fb55d53ce97cc11662ea025c0bdc01a5750cf2b3f622442282c7d918ca6fd43f8594fc72d291ac5733131b920c16906e09990b4277ef898a20cda1c45060651cdff896d859cd0b8d12e3815cc995edd22bc3b079f0874bc6fac1ba005bc2607b1378ed8d2437dcec6ae4891a49da0b13eceaf3dcd1447e0faff5bcea1ab7b833484670837d18fc073518930ee49304b4b12ae0c60eba74b69ae6c077f9903c035e552ff7d799675a3bad4023c03ab0631e2feb49b4e2ac383853bc2bee85617ba7095b1c64e1a2ee451035c743b917bb34c11a6f50c57739528dcca0fa4504e47eb5f4508f83e47170302e6c251085c6b66cb7a52a793e11498dd7f2624807c7a1f805b1e65779804fccbc38fca38ca5dd6d06228bdc84d0b5bac7f01b0b8bc5bd4404f0b7f417bb47141f35c8d6a761613debfcdd1d90a1163342bb80cc290c61f82978c279046e10a91cc864fb95ea1926f0b7d6c909e1b5e54087efb00beaede7accb68e1fa3ffe0db769bbedf48f432eafcd63892c84265b6fffeab080262255f98844b55ed76ae03f97d6b231dba308b730978b8936911bb64623dcb8626f61e41a86daa41282961603ef60102ad33e79e2fa5dc044c341337535ac2657548ac627b99fa606d62037362e71555a8192ddaff48ab964f5d15da36a58f64d142876ce499ffc7e8020ba8d515d5fedabb54de7687e4cbfc5d604de800e10b0a0182cfd83f7f7d01130116df05fb6269c56c2346d1e4c714c19c18c7940c86a9c4e1e3d622f06a65cda0708c7a23e9a04d0bdb9dd0a777747209cb18a50ea042d2f642094c5ebf579390be9799e210e3271dcba8a5c59441904a7290d4d0b19e2336455ed7f344437a7dadc63aa6688a66871aa797fac8885cca84484109606a069c073083b81235d0132d253827e28883067ffdf1f1d5fcac8dbbf8a24cce0148d6c8d091fd94bc733fc234bb6c862cd29a1cb25b6609bbe22c307bfe6f5700cc7e2a614e553543fcb6d3922db9ae2c3dea24a5cca13c3df66f44df289808b2db8d8a66ebf170faa250f2d92e581a63672cbe5bace6c2816b27cf272a7fadfe3c5970b94df04267215812a6dfcd4ca936c43dcecd98f3a5b9b7acfd4d12cde58a1b9c21f4cf7054d95ba11a65b440d330547becb3699437a9bf2eb9488eadddfb118a4357865393bcae5fa94c7e0f0673ba0fcf065776fad4b5152d4e1e4aabe421e032f574ce6fb7b50ba1599e4b54c3e71518b6421924bd1b75675f89f792791ee590e1c328d4da96ef5a66e38942e664ad27ed142ac124c5368fe4a11abf0b0213570e2ef17f3471b8bc0661067145166c3c69a6520eb2802987ea63f383c3db37ceb47a409f540e577f6d30b4fd160e6266f0e6591de74acf4304e3c450f3a7fb89fa6de4261ff9f503842c43fcc1831e813104c0d27b73cae9f0c6d1cb9bb1c7f61328f9b39ed4ad994f614401ef301685e0d6b23d4e59dea5dc800d9f7c20b7323389cf9905d6864edf18905ba9e92aff874ef7087761abad0652ce783bf4d1ad9b597b21aea4e619c114ecb3f2181e4dc391c07e2f2d900848998c461d64b039d824eda0e58bb55e090f0ee94a6f2737ef69514c1cdf6bfa7190ffc832dfd08036e1c8d297a29d4ced5c7af2feef8f4994e95f8b3241cfc176d5005f2d7b6d072b2bc5a9d98e7726e80978a36030a88c675548a670402018375813a22dc1020563129178bb359618e5ac03a59207b1b97fda33b1015a3d337e39d8530666f2b1745a33eef16444e80a6cc0b2b87a240a925b158213f1fc3a943fb39f628f858595bb57e04725f0ea856bb7127c7a22488cca3b6aa0f8d2d041907f042cfa0f817d61b4901b62b1c38dfba1d4514f380c6add1013264238c87f9049cfc4370421c3c9aa76087eee8bb6b97af6070ed5a84c4826f14cb2ca40da25f6d4556a832349e37de1f3c56612d3ec00441ac7c986c6261035f82ee50f4648519b0f91c70f41fd7bdb47ddd52187e1735b1ad861c907f5e3f96dd44d4d69a745bbbd27d11e06891f2a32f6d392d709f6a569c6b84bb84e4048824e362621b896867448934b27c1602354e892a0f0619eef88ce40f7cee7caa0eb33bc600ba62deb708986a470927df0932c5242481b0ec8b449c2f7407fe849d4656d1cbeff19fbe7a7c50b06869438694bf5c800155660c485eb3c8dd51bda2f6d2abfd76b067007052e67f4b39be50543164c30f2101967ad3c41a7fb2becc2ec2c2e8b99fd4991a608a3bcbf69f2797045da5fdc72dc10557ecbd10a947c80301636f1740346d1791fc291f7a78990e39d3a2d23806249481a26e94282282cf8425b1899f31dd60934728a5d917dd161961dcd388fa2f83448e7c97944567bf31b3e651bb273963c577a7672eb4c436321aab820874d1968dc2cae6b355859b94353d7f3887f03598dc7276cab7ec2dddbdc1fb7c1ee626b07d10492a8ba35ed793718e2d85ed9af5d91d9631803ac94846fdfb64aa395050eb1c0182938d93995045f16d8f8433fe28d8c7f3831a7790e6aeb782548b42291cd8e5e966518694ddef2c1786fdb02749a80fcaacaad43be2315a33ec577524be245101fb042ca48f37125f66ed5fc385ff0a2cb81f07f0783611391dff1073c4a81a4070601fb013b0f2a1ab7c5d36f3b3f868221d872d227b4e52ae22f58495ed22ca6f6400a01ddac11fd7ec0e61fdacf5e3ad9d82e881af09de30c65a8e72232937286aac2dbbb15f1dcfc47ed56b02387d5755b7b51c6dbee382fd9c41bd8d231bad0646ea7fad55d7007ed4b2f5b12f438c2b055fe88e8f62dca2c1bcc4f671e09a7fd8ff9b101427646c340005f653baf67553b5d8e0bfa094759d548d83fd56731bda05fb6a1006ad6a2a88307ec3057cba59d4cfb2d4abd51a9100866535d152c21d4ec8233861ad55b208c0392bb097638c2521d921bb6f8a11937ff8432eb16d8e5416f1fa5a2d7544058c2af056b7427628f8781de5ab22fd34e0be8cdd4d6daf310d7a02b50080e42a55dda4781101c61db091fef116ff617caf3a0d7233e708f361be3d6192945ff189de3366fb2b701404a6ba1ce869722db546237d44554317002c560747849baaa47d0c66f32f9e39a2ec7dd64eaf3ca541274015994cd1be3a603a479ea1b9f8ef4045d32c02ebd088449f4999b4ea20c0d2eea03ac0b072095203969d851a0ff2437fa67bb3fc0c45c31a25ecc288246291809f3644828d56901c232cf20460bd37bb19581d9cf4b4f8399470afccd4363c83f9249c22329fd8ab3b44b1a4e78ddf0ccf0697423faf53175f6781c0315af0540edcaffbf00cbb46ddf7bffb84890234f5adffd44177989becaa6ae9afa62c5eacd61598959a2f39facc8e8b8fb5ea30e3ecc7a9ff2d937a5f5e4095816489dc3e67289290a13fdd002573a8cb92f3442402891c4bb386609d29ad688bd2af2f465333d4c9480dcd09585e386cad3f4b86855a0ac62847dab2bd0ac163755e21a64cd9cb018bf761161b75ebeadbe78bde47c10e5de8bd35daf8268b8bc5e95e568d3c679195e2fb1a76ae11894f8a1fcaf9aa1eb725e309bc7cc08a731afbc0d8a9a8af4b257a2cb1c3338fb89c3ed1488cb9859885773ac237fb8ba9f62603f5c7acb49b61710a1c6481f2e8e2220559f9f977a9061c7b31f5873f9ae68bf676b5abe04f11f3de76cc3807fa014ebfb07c7b92320773430d687aa4e3632c4af1ef11de1c867709639585914d300fb191cb04f8de684a09f08a5521cc9e530b1c819e4169c41aff81f0a22d82c5e9303cc7c18934978a65674a698548028820142d47a06c67b7082a9d7e7bc19c36255e48a48675cf8af17415e6d46d53ac4b572595b137f402c301f257e26e6bd68d969e08aaa7c7096994dcf1aa86843cd2162dc9e85ea6c7fcbdaeaeafb0e1af43e6660ba6668550790ca3e532a14c92d7fca6827bc861f6b8fb8689ed77a5a33add8601873d39a594babe199607df8b9a041d05621edc4c3afcac8858e345fd72b543aa5c480f4951c712fc6e9f462853b74a220a35d28484bad304abf4309a50a0fbc369cb30fa693d6f74bd28548c177424f4dcc499833ac88922f06595b2e82245d97b907aed9f3dccae4e416d8dfd4ed6172e72a4078472b79f4421a369eb5bb0a9ab62d642aa8ae9f0705a445568365836f8018915968e7a2adb7038cc80c9f64c988c108803939fabd3b78f7418354dd0a703c7b2ec386cd06ea2b1baa36da6c2c811111c9042c8b319eb8f0a278f6191f531782a4711686363bda463fbbc9d5038864bd405806be2a4119cb5796c55698895c9a74de75789aa1609369cb69743045b091ea6699c09e57808168fe2c8c6219e54253ffd424d62f612a16124f22da30eb776b034b6ba21fd2bc1858b9f6ad4ea2a73a56705f28bdfec01013253d72b8695187ed36406598a655f6464cf5da25d03b02a373f26dc90d7b5c3c949bf7d26bc9a57462dbb504c1c3c086b1df4bd167e0bbc7e2fdcd45d1a8d2328cde0d87df00835e7d2c3b39a168d4ef4476831713aad58dc8ddeb85d268ab23dd2154083e165114e692fd3a90b5e67ea1a33d67a668c82a8c86c03998be7ec9b18c138d02d743e33b9483f10e5d44057a1aa117227d095a6f8338d7b530d5ea18ad3e2162e948e84e545b1f43576985c25a96743bb051e89569c9ae4007717570b6930e0356b15e9109f7e4c08051878459aa391a3abda16dac6e2fb985304ca094fa01e9c6406b89410c0e44bd91f205e474bba34cd598e0c9bd39d0dc2822b723f6bb764cc03d12b4afae4c437aca1fac2a6e50f638d11cef0d557558d627b9b52306594fb49a1cb3ef778eec183360b653e47234c00da793208ba944306b420ad03609c924cbfbd7cc092dd7c5541019d76c3e1ac8e73fc77b5ffe5b6c21b305699ca3a0c8fa4811dd2001ca11260624412b9d099d295c056920cf6b5b8e6f22b19ca97625bee281b4e8d2dd19bd04b802ec9803ea97aa875e3090325207a600989eb704813b21911dbb8224d2407556125f13258bb62d7675f52f09ae20f86ce3f7d67ba99462c3b0dcc53f3e4eef33733a1c1fc956be5e97d2a0008fba352f761cb3e526fe800dfd073f422cd97bef2db79452262903a308b9083508165bd9bf95d5d68d62a3335b160c983519e9da6ca35734746db6de1e4aad5e6db0681f65d4517eef5b778cdda60b0d33961615a4fe5018dc76e1bd4b745903bcb00d8eb48bf78523992f9746a496175b8dd4fdf1ec6d72839c40c05df485024d27896b5c2f46265350269431a29d35673606b14ff2fed5c0ae1d1ef3bdf73571ee57fb33c2f6fd5985b99f50d46169ba5c6d3f8d615ad55a412ba619367546d8b2449f6a421a61bd18fb687f646ed0f47e36610d695091d2576ddd26aef2d0ef0f16324634fd6ffeb8f03027d0c4815177dd4cd484c316382a5bdcc632b600e2e08b2d7ee0d9a248922d5e6170312aa145130150811629e0a00b2d968c6068983d83b4b041072d5e0800195a2c4af5a065a810000ab496020321243e20c4c48a904faaa6f39e41424700e08316f70c128ae18a2cc220220b2f98686fcfa02c84b2c861318481c0992a4bb3edcfa324854c5410b2de995f9fedb3da0a8399aa8b0a184d1f8443f8dc74797d46a07980ddf7935515cc34bb301afbf3400b4d5b8a544a928d92d8fe23dbc4b94ff202c9f60faf78ab655645d9c4a9b6c576a4d60324f2fc64d9de420b895a6e5e6d578068f4e29add32ab2daf42b3e2595aece837ffea33042fcf49d622fa3e1647a8d9f5c1d0366fee8b0ca82808c9dbe70d7eafaab0f10a20751fe5b1abe5271381c6f680e6cd7d7d5f13a7fbebc5beb7fe6db9ed7b49b3fa9a3837922d4b8d08e8cabd24dabe772cc28bed446e1b86ea6c4440340fa8abd9a4596d7555ac906857483f4424a02ca45ae621d9f0d8e12a9db5342ba9c0846156d83898c18a2286b08204e0120cfad0e0d692914dda9d6a2b7a7698728364822a641b3ffe175107c665b4a08a1ac490e40537223be506255a9b74c924002abcd8f65ba6154c74808c98173bd870031786c1c64768d81866638c31a6b34a2987844aee8b6d5f53f1826d5f9b6694971010301834215a816da2069f1269349d05802a53104d21dbf6458d45ac0421385500c5b6ffe58d6d2c1431c410112e9c40072a54e0b25236fe27a1d48085eeb027eae8ee67c721031eb6fd2e3f412468641fcf8d31c67832112445946d7f5621daf6afa8c352814b9a8d4f3063e3cff8f56de3af22c4be8263e0810da303d37082509b4c63143700e2e5876cb53651538c911716e0815b0e3d4219f7438b0fec05c7e406fd03cd0587440f69875c0bce05328c7c10d238277ac41e66241c1546421e7e46b82f8a801d9889af19bedd755dd721114232e4aab9f50c3278b31988030d59f6fd4043f7811f6f0445f0ac281ff1c2f521d63d91d91f863095286ca83bd02e952b30efc0cd52219a81ca6cb29ba67283197c8616e053a4b110ba62c8c68720aea002001b348d3d83ae404115faf70cba6287510a6d93450b2b56c0c04a133d52b088c18a114d3469cf202b4c381842db3d83acd0acccac90e2b2ed9e41562cb1cb5f350167aa1c6fdb3ef87a4d9addf253bf6aab656ca1e53c61dbc6f68cc9427f6028bed5b7da22c5aa2a8ab3ead7605e40459bf4336412d2b98da355531193f5c9304913d0c4991f0d4eb62d65b4d8f6658472fa0588d9d2aff9429b3830dbc6a039305b249b6d866d694e5a26346aba24d948f649519c457afb9614ab2d922d9b7ea55b5e66a8179f17d9cb9197d84bcf0bcc49fb245b6db9dcaaca3e6e2cb5d0d0b68fc7f25d8ac897d7b625c9b6ad4b94234e5a4a69a02b49e6a425c59c8c4297a4188914dbf6f1098f22f8c62f2f4c9c3583703cdbfecb8fb3c46dff05f762c55b7404432f4d9c3583a020daf65f82b67db16ddb8413bb7cb96dfb5265db17a06d2fcd5925c9a65f249bb3cafb6a6142835db634d9b6824cd82f3f23dbbe5b6a3fbf6cdfee5f7e359b17ca9711b4cca0675013b96d6bdc8ee34d745d448a4a473333a34bf767999aa12d80a9514a296542daa08714fbcc462cfbbec4b48953f289726d18d64375e85c70a45f6f957ba5abe3a5dd9fee69f725d0bf5fd65abffe8fb32a96e58a65583655fede8319757f2eed3271d23df732cd597453da8d178f37e7a45fdc1572f26611a2f8758b9cbc538a2e6dbb9718f6e3acf21631715689cb2945dbfd6f1196d16099e94e81a979551425a99173ce3450e80cf40d1b399c55e6d26dd8889560e77a6b0067aa9cc96d7f70dadbe3a45f9b0d567183d72f9dd7de6e74614eba0d554de89920277d8a938ebb39e9333867cddaa2ae99da8c8d89be5fced48aa0e0bbfc6434047a8b6c7ffbc9be196dfb7fb289f3b2fd3f9f6f565bd72fcd499fb9ed9929567f32182174b7ebf7cd3ed90eb2ede34cee0601ce5409c2d0ee1e9491427fb48806ad3842cdce5f6b767e0f045156d491e77c0c06a93f6107af0d564f460a9dbf14ccc9548f93ddc3621c147190c5c9eee79c73ca48a16dca964a62b6666ca9a2195bca0b2d7657a6a8d85dca067e9992b2bb9f612243a1a73065f15dec6e9ca9c1ee3e6442b7bccbb7bccb97333620d954759fc1b1cc9ace00d5560a9602da1d593471f297a1a793340523bb776941690a8339aba78be5f6bd1cd02fbfa0cfb6ef6ddf967d39c8a28e5b2a954a2517171295fbb3e95fda6c956855d57de91a9940b5f5f214e6e95f5bfdbe8f84dbf46f6ce2909efe95cd96cb5f4d614a285d55f8c130949142773252681cbea0a80b4cf990919a39d97d8ec3a052b7520ab77552b6aaea9e86882e53b294cc87875965d38fcaa6df0fbbfb52454405dbb4140015f14b01e0360d6754369df1d39ab15515cd88796453a01946367d1ab589236e1ab64dbfa411657f99c2d966006d3aa3b6bf9c11dbf4cb19b24d67cc368521b2e97fb589f36dfa30af89f3b2f59730b04d99d8ddd3d94ad9a6aaa39f72c16cd914a560b0bba751d31dbcf68cadb652b61490b36c8a52464c960d963b93b2d556896653e4ac1290db6099ac921193ec5ec602d43828da36b8aaea4ab4dab211aa2a2067d9489925234ab418666648a3cdcd89b6299a38a5dd3d8dd7c4b9bb7b0e6813276677afea6845423bc543cf2e53b69d9239d97da992b23b156e775776c1fb3645b2140ff74b1a2f97d8bedf829291c60b9b376590fbb36f0302b565914c95bf07de0e21b4fd565bd385ab425ecc8be5f06222b02ca845d9eec59ad47aab779339abccb899b3c0f7f78ee09c95dfbffa7849b6c34c321ff3262f96c34f50d21f37419f983850cc04981010f325b84b7cc321f32596626897d6496cfb9b50b68769001f9405fa5036098d8993f6c7c9267312a0042708a5f5c03dddfa56e62cdf1e14c6cfc94ef1d6846293386b42a1c12cd00f142543bbb460d86097368a2d6d93ed7f2bbed5d68a881d7a4e3043124f865c6e6520d0a5e73c37dbb230f484b204b77de8b2507210886c6190600aecb6c34e619e69123f7846df67903829640611f44593326188ac377274bd61ddbebbbb8fd75a9311499c6575a595c2aaceb08791b0fa3ac31e367738597138596f38294312fac254eb1b7ea30ced75db61a72f1a82a52eec7a63095d5298b34ca8adc9b276ac95bc0003e64409700b5ed8b4d8e1423193c59402d84c8f09063362688189064d80ba5a37d3440baf263c4d806a0b57725555d548161c65571c65e2b4d44ca87993b24094186857a03bd3452e97f3e12397cbf9c8e572ee9a21c3b014a6e159adab9be90ad7d9e991f70e2753ab306bf2068e1c255329cc5d1943369c55a9136a4b4269b4466f740aad42995099b34a2a4463f4c8b44167a49df9573670849a2609eda4333c6475e87df97adea5387270d8581d019dc9acafeae3acd2872aadf254589dd59fdaa43aa93d35c62aabcd879cc8b30c3121edccbfb28123d4dfad2f67f1d4d7abf6d417196069b55a3d0f1bab1b3a3e7e04c19143167daa46d5734582b378d858ddd0f1f123088e1c1c3656366ed858ad5ed986fc79df97b305b1e058beb5fb7385826e2d264774b3786b12dd28f7e67d40ceaad709d0bc49adc2981c25d3776f5029bc516e2dd461ce19c78ae4cc1c38040429ec870f20b1233e414ce041d3d9e9f1813347da997f650347a87dfc08c3d1479099b3d94efad36d71ede781d903412f7bba4493dffbf297c3e97d86b942dffffe7ef7d21a2b5dc2ffe5d46b4da35364ea7f0ef5b8bbbbcb60da193e017adf37895eded7856c83ff7d77b3e933593239f9257c0f7ef97d78edf5be7c3defce2f62de777368a7b764277b38098e4bc2ff1eaca28ecfbf1d9dda0a471cfeed42d4cecd9766bda98ead6319669b022292c85c207db2431850b856b8581871856e8004601982b956f01cb2e06614259e90b956f03146601b725937c095410a0d62ae212b50da075ee0c11552da2ccb102e473912243e422e57328444c805767954b2b07d8c326e00f4022598a70b5816424c016738039ffd79e0e781a0e7456670dbfe3ec0cfcb410269a6c255d5b14a39494bf0fefbd27b9393a202bc6f6c12820673386b4bfe2029ec50174f4fae070d7ab6bf0f2f8b404715c979433f445954cedd9b663779c487e15de22884f733f2e879a61d577de07be08e93ae935b22702528cf1bfa254d699b66990c2121212c43dc276ae8002e47a6280d46ae18a231b9111100f1e31ab2c297c5b5827503d0076bc5a392857d5200dea50ae50abb8ea19334842548502b0117b828497091498f4c2c606ae0430bb132c0080366a7c038cccfb303d6660a9de99bec077b068551c676d933880b2865d0d706492c0cd8221f423ab5e6cc5a0b0c586054789c1821e2bae3aaaadc5691c1b652ec92acb2cb1b31d8e5b445b1cb89a362711b06315e60cc600b233ddcc04231811c8ed8a208239a2079c2820c376811b4c5154982f8c1f592440c886290a50912445cae83145548f9009610bc5c3b9c5002030d29b84207295c0828010c366082065772081a806c0b3264418851c51597bbb626c731586dd225ad9da8f91323ba62b1a1654546d115a61960c9317962891326ba7882a87b014b0c44d83ab1c40b355f0206178a9482b070008b08ae132f1855f12efe553706186308b9b08a418a164edc24a210aa4482c8a861664f283129fbdb134a6c0b17b2b878ca27032257b22d820a8fb46790184d10a1049e81f6a0024f8918e4786e96880be36b6bac78dac30b6c39773983c480527f55c40ef70c1243885d3e26a20653300df2d52606b9a0d5c8808b99a9c603fa54f74d796bee4a24887e0542c3e4f4ae9ffad9f5496701803e99d52668b45dbfc4316dbbae76a5614293225bfe0757e1314e61aa976c7d71a935d428d0f4ed9df3cabe59ad2d5877345f7c518cc41a6c958560e87d7ff3bd1faa4ced993b7c4330acf53f7b3d8d824cea3426edcda00d5bd014ac73c6aacac198a0c7b5d6fac9f6955d0ac6a0e9d739653a2851aff6e22e7b1f188a23926e717929c1c4c89866669c6862646268c21a1b181b1a251afff228bc047f60b6ee0d8760fbdfd8bdd5564e1d6564286afc6ef4def0ec83e29bc5dc1bccc8819e1c707063b3365b40a2b904a3f122058091acb6726a8e931f0e003201f86e45009170330036996db24b12ae9444959d93635973cbf4d8d8738a1578a3b385bd1f0c3443c2e148382769665082e1596d917017cf2c9e9170599b40f2cbaa0ebc0e3cc843f346f320433de80840ae5607206fdc206b605407afea80243bb8b99db7a3aa747276dc74e8e4b4c8e8991893096600a14f1cfa964e6fdef8df8827d09d3b70f381ccaada6e9ff3c1de21440cb8224068ef24a2883d454e9e2001c23971640a70a1b8b7a9f2bf3098ad528e1583ed24dc8de1990af67c5bbb9572b59553caed236a241c0d9117b5cf0ec514008470953355fea4ea51a619dd42c255dcc5f69f330bd3143a4f2648b8f2bb9170df8d84ab2a1834fd92840341c624332a0d59ff4056d6b7ddc6d6a57edbb6f0d4e7d975acb07933efbdd96f5e06a5a4c95a6b6dd7596badb5d65adb75d65a6b6d47bd567bb2d6b1db275f8d5afb85a65fb1b5b6cbf6fe501f525b98540ff337c3157c2198010f8634fd8ac1a75f33587934fd5a69e908cf49f6aed65ae70ce79c73565a6b6d79bdb250ed9ca60b4d3fa4345a68fa345f68eae50e7fdf08dc5a6b5d3e5094f9c49850bbe048a552f6e2d6b5d9aead8811dbed62a2978a32a65c451d75c6a593dc4037e364e97dcdda959da8c88457649bb34693736b0d451df5667b4536cdd8d419362d4b348dbdf4bedba0a9bd6f1faca1e1a2a597061f74efdf32fdedfb58aa36fd1284ed8ef2ee11272913babcb6abc50ce126a11f24316d13c75e255cd4a800a2b2fd47caa5fd685aad34537adab12eefadcb1b87ac505137968486a09a1fd06acbf360d32faf92ed434b2851e282120f7f6068f15b8c313ef92842f71e4802714b1515654b1f1886e067f1e7479d44c8bf31f6cf6f4d90bed7da4fc4b77aa590c7a7fa73bbb516490d888a84c680cd0be809a50518e320f2c5eef22d75d18de5c495acfe54e863e7ef6006bda3e20e7b33fc8c12727727764f77f71f6a89389ef07b4ef4e39e2936c63f9a84d03532e4642fe7ee3fb07e27e4eefae5dcd58a7f8af5bd1d24106dfc3ace7ad9f85370168fb7a80b35283154d9f827c6b0187058734115bb9c5936f672876fdcc0d40a8d65125880eeec1dedc0ae9bd9e68efaa98e22e40fef5fa72048dd4507ccdd796f4f22786fc2b9beae41badefb75347dbdd9718eebe8ec37c2dc7eb1ebd670961a58219a61916f7c37e80d2b1b55569fa99b9ed8e8eacc916a671c71670471b10f1dee4c31b091bbec5dce5bd498e2ac1a2b1b99840378fdde31356fa6c994f3389d48a6b856b716d398385aa9a9baa35f3b5e5a7d4010d431124511354151044511141f9c2fe00bf802be802f2028c4c98aa2fba35b0443310cc3f0c5bbe744d10d7ae8216a84b9a90e49a8a86389cd9f94d0b4a6c655a533d9220d1768142c288aa0f86008ae447f9d304714be1792f7cbe7788ed35031f268f16176d03636334f52545b36a333716fe2330fa0d025061ab56cbe1e7199b36c7d312c6263f3a3f1f4e1dbc7f63512dd6ba27f7b7bb2e086225b1c695ef4fb9bc6178484460ee89209b43de2ac97edf19927715a133a6547a8b94f4a68ece4c317d4dc233bb6a0cb1f3dd8e3a44493beb42ffbaa3f7a8a2aed066194e820a94dc3f79988c2358cc4bca9ef287cc4fca0fe87c24ee64dc5401e38a1fd4b0b545b1887bdfcf5dd05cc01273eaeb63c862243bf3c6bc4842e810232ff7bfe4bd9c17695a12398edcb5965c7e3b418dd26fb2aed915d51b051107242b7c51bfd7a2c2f50b73896a5171fe6a7d800115f11ea78c4f15f1e9b5028d85d62210cd413ba4d47ecc4c92af33245689991486fe0a059d93091354a9fd2269a5097441104b51d3d7d3b428d27743b463f45bd3c0cf882127f8a54a431ef31ef220362ec9689192dccc912caf2d8d714cf05edf22e5ffa2cc6ee700afd89fa73bc05fcd397a91e57d513caf2b8aab6303fa81c9837f54b0e4e352e8e40374903b2062cdb465de9a0799cacb05d4710371d67d040812e9d86daee16d48c6df09de62c4d29a5fa4728174dc5113c8993f5f55397b1e55d1c217cf1290a1c45115e5ea3e8f69927a1d9a39f5edaa3d16be4f695ddc7a6dff2124740d1b11451a20ef105558a6390d576d8e82fd409fc9a67c175429dc4b769f9b95d9e843a917e6e4d4fa3277155f5999315b573fa9a7108cd9f5e44edd4bccd78dab1f99aaf1987d4bccdb3e09ad8061a5f1fdbaaaad2183150d8a34b2c5462a01d7e7d9ca57b390bac325f634a2f5f1f8bb4fa9a619a3163c6abcfae3f63c6645b98f68569894c4bc3b446a6c56192f5c5fab4be680c8ac2a0a850fd17141d4251225ae424cdf2a8e9a2198d4451f47ed4752f3b68fbf8a70b4d4368dfe5bb071fcc96589fa159ec8a0da05be441e3697e8a12b0f9d30eeaf428d4a3c621ff35ef58c85957268ee3aaadb62ead0655fbf2d94df29363853cc50520f87109d1bd1d8da5ce1ebd887af9745ec6e964f823d4aca18874b9dae27ff85414c106656355559f064ab6eb8b8416d48e1d1d13689d2d9eca90d23fa14ee369e7f4366f73a2945231fc93486b46a25883aa194f3b356ff336354f51f845f1f1d3a0a6ab868e443a5d34a8e93aa1a64ba348281e36f6c3c7cccda15c6dd916a6aa3e112123bb3e925d9fe66a7dcd9b5a9f020147a7d1487cfb7296ddf52d4f3d5927de12c0cdf6386b425172db150395f6d56424522067e15ad2dcced532767d8f1539ab7b1c848168f63fd121caf4a16c68bb98c9130023521970dffef5a8e8bf22d0b39624593e0a74cfac535176fc91c6ef9b9c75755c123ec7af0e6c5530854672de08d9b19c397b8f187ad1ababaf206885524a29a5f48e48a407499774499774cb925b19fd70d25195d6bfa37b57fbded187136dfa36553475a21d5a29ad740704dc1593adfed1b524bbaddda3d1e8529a17ad090e0ac305a34bad08b6cf66492029f262b5856f586b93e949d28b89a81d24e8ecf0e8e1c37f0071d263467cabaa2834dda5955927cea2ab18b9cb6923229a5966161eca437b68cf952b56ac54a932654a9428413b08070e1b369ee8d26462812ec35dd208d2e5b4ed7016fd189afb01a4e5b7eab5284b0556bb84d15bcfd97214577906ea1e04af8d4d676ed3b15c9d306f50ea6cfad55725fd11258d41561bfc917519cc824852a9c8c3c62460612fe8d84902312ff332a30ade6bb43057996d43194764abad6cc5af00d556c6016dff194fe8d28be1b697b9c90c96c459a595d18680886cce6295b568df9c557a6ebbc7c459dffb7b4e7cbc26e5aaf482b67f6ee2ac0c73d28b6aeb03aa2a2267d1c7e16e379bad560302faa13fbbc4b724f8f6b500889f4abf87427f4db2e01bcef9e8412fe6ac239eccab7951bc359578793e405cf17e3c202fc89b794c44183df82390c6bff7d218992fb56966c69724fd19a819940925838a41e99285d2847d7f74bb1a1e74e9c5bac7324fe2ac3a7a7ffca3df1f036127ce72797f5cc3369817189812cde1891857604a2fd32299640fd37a605a104c0bc4b442cc21a60926e9b2162afaf77c2286cf7641d52b4efab7a0aa9093d54acdd52a4ea2ea941bccc6ac6d15d95710291354a298d13b5289bc98122a9b5e6c832ec9d36adb7092cacad270dcb0b27fa24bcfdd0246600153f483f9e0a1e3f2f24173b62960a5d4dda99d6389d2847395832ef3165e91780c17bad4f59dfc182664cdb1938209290c09492105138652f8ff4fc1042143424c48c1042129f0d8e164fd9bbbbbfb4de79dbe4ce0b40607b43fad392a75af33cfa7d3b3bbe7dcb93b9ed7babbbbbb7b16c375a8e2232a9abe3f79a5fc6a1241144752e0210e1b9ec3599966aae8877b52ea3b6a8bd4399cbc7fbf24f30c73c407fc2e7fe821d22e856cffbc4f1852bd563a8a25d9f7a77604937d6de1ac76041259aa750674171ba1a5a9d47b5ab167ae39b38f590c1d9810f27c9862bc40488c2443eeeed65a7c7da59bdc7edc8004b95928b11520d111a91e0e3a3b39dfe5a54bbdabae396b3d83d59b8c5b0dfa965a6badb5d6e69c6db6d65a6be98acc3868afe5e42875ce3165649b67124d2dbe40ea08d21f4ed6eafe40bcd67720f569add4a33f80d4ce6631679df3e95f1c244c3afa0032bf9cb9f93f9cf4e974d2d19d3a75da7d7eb04301f1f163e6a68fece3079089479d1bef034890f9d9347db87b752c6aeb6b853f9784efa202beb1e4aa4c24e7fa305deeecdf2e7b9fc7124c0920ca7ee590aa0438712e2da78a3d9f66e2cc7d6fa53b6ad7d5ef7e87b3bad17d474e0e27bdd27b9d45f7fd71458257afb5d6ea830369684c7e689746fed0ae3842fdfae4b5cbfae4b5f1f7983875dbaeeb280e34d017e8adaa6c89d25bf5e8ade691de46cae44669732ca714dbbee3b107a5511a8d4669777c13e904685fec316facb53ec48f61a2cb999bb750f46650d11ec270dba83d836060b26fd863e23817ba9c37df1575c5fa1eaac7bcd97196bf7e1feb1127497f451d75356f788cc0d0393976ac3a31fc8aba1b3cb29f85ee047a83f1c400f0e98f003e7d16ec90dfe17f145500fa412e4b3b93be3bf90651d349d2b823fad863ded8afa8babd26cae9d9c85fd617475d51a6ef6b09f54b4eda3a96ee2667f96873d6dac7045126eda4b5357cfb265b75c954c7f106f93b3d9c65ff6bd6ae56ab5ccddbe6941529787fdaeecd366d3767cd21402ea5a6284a6a3b49e0a90f63c0d084cb1b4f3ade9f76de1b8708512e9180cd9399cb0504f0d45c2bd83c99b9bcf15e9b27b37befe55155f7bf6fbaa688bbaf36d8a84beda8646177e39016306e582be04cd91ac5495b6f3627ede906ea64e2cc6d730eabad371460a241e307bbb08a2248d1d6facf179af4e3aece42130c5eb1973b8a6d911db243dbbefff8cf44e11eb1dd16561b586d9ec55be2e8b7ca03f6dc0b8e9ec52bcfb6efe028a4342bfee859552610e89f23702208637891ed86cb712faa2df1ad38569b7fac4736933acb75d6d519aeb38ac4b63fefbda69ba61b05bb4bb744b27d6c4dd67a1722c0e68dfdea40a39363fc1c31ab2da761aaece340eb615b0b826d1f26eaf09e79631fc4b44e6c4775a44ee68d7d87e5ac75149a8ef495c22cbaaf9625409fc9ba77d94c06524b7fae264eddb7d2ac0ffed265277bb2a3cef7e14f97e509513eabb47d612f59ce5fb9972c47937821e7e3ac19cdf9d01ccde5f134edac7ee9324bad5c97d5d6293fe8b3da3ae5f17b705401fcefc551052176c09f2e15be0fc753beaefb1e124d472a4473aa1774fd92e674ee83e50c83da9115326fee53afdd9496dabe0fde07e99eb1695b22c045143fdd304193142113c7ee8b45777ea4c5c9be2d4e9c7562002e59d8783c652a9a8e2e1b3de6e425b368fc32496847e2a4e6b189b39a38d7877020dc03fbfaed1b4fd41b4ff47b0978ff8d2a08b123fef72a84efbd043ed13f0c5f1c4f10c8e38e379ef27b3f5de17f2ffe69e77bf1bff194471d97f8d4048356dda76288ba348b9338ec1b86c75c56abca5f232d72f23eada18ae87be71323aad8f7fd48f7f76991498af6f674f24425767d2c7db6efd7b87f2f5985cc9b28741d6fd871b56aa9e5206ca212105841adb5d59c3cdda0a98dd6c09cdafadefe8f89434d360863db9f3398576c6bb5fdfc7ebaef51db7f7fff1b870871c79defbd7188f7df78ba3f5dbaaaec0ff91e1c4f9705977d0f89ce23051ae9cf0bbaa2ec08e23649d1fe270880fffdce37ee78e0f43927bda33cfe9837f6b71785ee46b2050ced4f713486d21e7e8a6e74457dc4315640b5e5bd37522acb99e8e94ec93901a23567cde0ae788ba7bb5d9162d3a744deba4374065d69b2a9bbe85feb2f20f4e9ff7096a5c2e6769dd556f7d4be5e9e80576de571e6f7de1b8784b004096aae3cce2e67fdd2c9f1cad04b6c780b3fa52aeaf6a9934adfff86b3dea90d67fda675d4afeb5e0b8a74982167edc866c4ed72109a3f41106aa0bfcb9ec53c3ccfbbef7d09de77de683deb592f5b6bafcddd4e8e93d6ea58fb368718a6abb7bd3fc840f3b76eadb5d65a6badb516db6bad75dbb4d9f71e53acb5f689edd3b9503444ada5d89f52ad35d5945e6a29a53b6eac723e7ed0a7391f3720b51fb720b55a0e941a7e76a875d065de3805def3c2352e0e6b2dce39673be6905527a8eaf07056b5b9ec0925766497265b6d3542e7b4c04d8edcfcb540fcb8defb1b7f288a83c7f7e5f77dfff170d677ff334dd5a50f7a281e4edecfa2027c6cfc7f69fe9bc71c27ef6d0695f3d6e3cea01c17689b82d0a5cead009c29fd9564c955d75ecff6afb59eed5f0b73ddbae7d0feadfef7890228120da82f846e8a0413fe3355de7bef9d10c0ae5955f705babc40469c600779ebcaaa8a3eb5b78819c26d423fa013c7ef944da3c49c75a4acb1e97b9a7e9e38f7e95896f6c4133537f5a6fb14e7a4df5bd7370e59c1e58d3944e97b65f3e9dff929da9d95f70437779d803355dea1edd6dac9c2955dd9f5b1b20930439833a15fa8244d3746350915d108000000004315000028100c078462b158280b232d583e14800e789a40725a170b844992e2400a21638c218000020001c60098a1a11907873363330882552f37aed4698229b932cdba3cbdf14598ca5ec954530faa1aca89d51318855aa1b982490cee66057c488c69b504dc36a9d1f7002f7d6aaebb45302114e954b5b0f985b5c50d5fc882ffc3172b7dcee5757d4a2eb17b54428fdc0b7016d64198d21ec989f27eb90e41eac2808f636af3f6f1fe2bb45ac1872af4b996b50f4331453ffc52488b7ec86992ea985508e17d5ba7f4fef9f61a0bdedc15abee1a1d81c9afec393faa45cc5149c30a0ba7608fec44419f9a4b404f3ed25dea2822cfc0a7c26e76bc9ec712dc18c61baf5d40328828f4a7f8a32ff44f20bfe622d81e4eb34e3c4e5669602f34d6f85eae8539f780ae886e53ba7e81819869a6d47f233f738ae33c1b57f1b515cf35d3b31b1e630b13303b4e298f54a5547f8a948201853c65faa578ac292564229210b5d79e5240b402c65f75928ca5afc426e62a7040700895ad633fedc8ca4820e0711c0cf62808e7ef3daf87eb680cb7fa676e67bd8af3611788609f4ff6f496d857f7def944d697a7f8a6daa651b44ccd2f790b2d7081ff42468d9f3171f6eb830d0ff8fa92d8aa5726f1a1476300c27d500840e9ef8538142fe633ce1af6edf45d78864f240e7b55c267c22702bd4e2d57b715750caa0a7071aebef962b5201034d25076485e5c7bd5f39c7f1051459ab5443da96794d1904c2c06fc610002f2375bed4999a80856e43a0ee2073525e5cf78cb06d678aa4128bac17a5303129b20426e756328fcded8fd10fad3a0bf1d977c4358b10af7914690f0409e3d973422c60e1378b6b6137a76d0d8edba20e10113f9431a30d5038f35927a59f1013b5c7444edb7e62b343fb13ed0944afc636b6866ac66424e66773e17863cadb464397539fd445e3facb4c8dbd03f73fc6e9e844c355b532fa550980e4b7a764da50229f84594ee5726381b2c93afc4c16b941395f591385b536f1c1bd54bf356d92464ce236d4273af5d499913ba47f53aac79ca42aea32a6d9e9a8dd91690e6a6d56c1427c40e04406b1860434450090c68413a6522ca64f26768a34798d79c429522f342eb05134c79a368cecf7abb6162fc1f28976e09ef25cee145dd1bf9b277719c50a5af53ad2edabbd6dc65f6560cfe0fafbd050d4b9b514f9435306da004f95064e5b6ffb0017ee598e80f9585be3570812c9d68cbcad25de28ac9af35865b67c428b6d0d55eb9f9cd0234508fee4f2688d2137bc252461fe24edb4383962c0c99a606b8ac63a49d1bc8e6ae89f026c758d08e076fb6dec5e5504481914c080e1883ee9209b7e4c487294e2bd40d4897b471eea1a70e8a402e582efbac8abb518a679ad365b0bf3b68369a456f5b7c3e9bb44110dc007e7f2d6f789fe1d55840351c7cfecc6fdc2d25c90a7200146a23187c3361635beab0230c1aba19d26544cd83a31f7a3b93f7d3fc4e5ca467bfea0342d8d305c3dd51795301886bd94b4b8d6c95aa22ead8035c4672f57913a03c246bdae4f72d98ba8896aa99d28ce04ce58b60254e6cfcf859befd0f3d3a35de61fdb993d7e03b7483a0e5555277647ebd2edd7bab375f79e4af45bacfc410afe5dd93a753914db972a981a4a65469d8809fcc30f7042b2d17e0e467f4ea2a403b91b6459db12d9cf52fec36846da8e53502dae472febad49fe1ce5bc4a2e773bd1ae8fb5f8b1dee4f828d66babbe3b40a780a2c20342f0b8984744ce99adf4c180abdc64b7fbba966e12c0804f9e8d1e75622eaa983f2350932a0c46e884f7c9297fff147144c6659d9275e4d6bd294005dbb9eb001d20b7ccd951b535bd4cfb854708b820c0dfa71a73d662a19aa52d2bc13ab8fd67a15d606ede58df5a33fc7de74170c05fde76113308249c41d34832eda241525823e5562c32533b89e772e2b8e801faf8627e3b0a90a9296c27b46c2de4cd0cf7ec1f22dc8e29ee045b5bfd4ea654dd6b33f79593852608a43659743211bdd92399651cfc9cff4992743a99d66ee2a8093bfc92f574f237c801868de71a32a500b7c37a67e466f8c7527f4f06f4db6332872104fa9387c3072cb1d8384e2c922894b53f82e328724b8c7535ced675e054218787c491c217169441dfeb195c549b661173a61a1dab39ce5da4cec18b0f68897f91b8a658b1fd7b90bd30af900c304e27652f32e606056bd0f37ff89a2157ed27982fa349af6e0f1141ac8541f160a6c7e3045f6d9a42d120a32db9f55218f611b353bf7bcf61de90a096486c2e2b51fc3aa6e6de661e469a6ee8dd999ce52e79d3fe55886290f4c451677be8dc1aed793bae933402b43272ff6e1782e19e3028a7d2a1017c9960291249e0321cf473ae38cda01983f3c30adb1dfae530ab008b47fe3e08c815427c19e33983a683fe91e027c25041baf32c378cb8831cd8777e0fa70b2db06ac2f71883d46f0b833cbcff5c7bbf856ad03a48676b1fb6b83a9509318734948da11a2d7f0f25d871de76672dab8f7f9f5092aefd073f8863b55011fefd8d97fc38fce8a16a7ab5e922c75895cd925549ab42e06cfacaa832edb0a359568eab3d82108bc078e047c31df16630bad8ab5699f29ccd9bc1e4f45f274a545263e4854516aeebaa70c28c14d3aad7e84ad8887e5a91c7fcd32f2b07883ce4c1fd8a7a3364a7338263abf19440a29aff9989ea92d83f4f93c75dc70fe1122a7f581c4c212659af31e383cf5a5e0ae03f101946b5dbc870b519236f3812e1b1f1c69643e6765a6e424b7a280ca92f8e969a087304a1024b5d26ddaf6f32570f5001ee00624a87228ed93f8913e5845cc188cc94bd5037414fabeb308ecde7b8baf6216d7caa4b3bc8110e52cfc24cffe8d16bb9c1aafb9dbed931ce604c572ed9ac27192df1a93ff05b4e505e326e04b2765cd60e2199707095bed0cbcdfe4552d7d21dcbc578fa3be9b0b123d9ff01d53ac30416820c334f86b25e395d18ddce38e0efba23b6764db78896a99b34bfaec6460a8895b777e2550e2d79885bf7983b841230bd50b90b63c24b37b52792ef045b4c5546e3a02478b9b2cc320302478573c82517aafbbd62d5f444a6f804c2a24ee4bfdfa2a8282ddafbb4335e259cd878da3cababd9181eae44400d20fd1699294e319c88cb2106259de9b25026df01716ef8cf11eb7d33d7bfb69e1aa47311635136de23dd55448a3472ba261a34e5782f764b284a13cdaf9c13d5ac50c21c839aa309ae9ed52b455d1a72ead54d1e2284597b4b3cddc9e2136c101d3b53c4ec40cbdab85c785e4c72a52022e2162ebb28a11674ba8463b6f145f7529bc246a3552204fef31f488271be2163b57e11f749d33fd943a3dbaa5c8d5fac781b81196c18a253da350d29023cc2f58bb00b081929b8f7b81b9beb02c1a2be062918d5b4e62a67ce6837234f447336e6692187b707c565a109314b92741f9582e42cf7bcd754598d501085c142f5f41997f38d7132f2a207c60f8786f55e87db10e001402988199e6f16ae3065af80a62f9ab6751bb3bada687aed8d27f732b938744e0b5c34ae185f3a96326896b74735df5d24d5d41016dbab2ed126b92adae886598797ac08223ccc440b2e120c4e3c9fb20d22d6cec9e91b4d97bc115d2f194725016f398c6858229800a4081819d7114f3b7438435674c4d9db42a9f2b84c0f6a24e76f58c6565f6a20dcc551a4fa0e4a019b1f4aa1dd61f05413ca597024fece04e88f094a14e6c27daf0e3090da1fd9e8a55cafc51eb3eb6ecc34ce6b118c7540c8dc2fd55b4f51debc1cdb7ed7ea174400a5f4ca6e6f97e56635b6e3a6a99649cd9f0a11198dc33e7666cc8035c3731ae7a99bb517a8a1d0eec795821e5ad43e0fe72f6339a8887b3a326f6bf2fb66a22ca532a53cef70bb9f29c84b8e44eb29c3ce0a64d03cd82490e17f2633cba51981709e369a03b1e7af6f3463135fa1596ba1400f9726fba27eeecfcfb14d4d283cb725b2a5883a158b7af6077e61baf85d94acc7b08ca8a5417f5545df77599c86a3bfbe1a0e6902b6411f703891cece486cf3943ac46aaa2d7a2fda2ba13d2e423dec76734d71c0ddef0ae9536c95aa527bf48fe25a7b03e45a98d2f119273c814613140961169ba64871c39dd499fc56af1a0ae52ef50f4ed3ddff9dba0fa894481101c18256ee31dab0395475fe097c404269da0e6862f2a9ea0f1f4b7105626c5b680328e12354435600d95e8ef415c188373e701655ee8489adb8553b47d1d31c1b03c15d98ba2005535fed0b4917e50a06d70a40599bb20f302ca331264f7ca9be2df92e1b620f34d1150c881a1c7d6721afe3f67542fe98701ce200a203529948a021ef08169acb9e3b0471634146c225413b634e0621225d095316cd3596a4f3a128ae8c35e4dc10a47688cb5e33045d13c06344cff73020a5b4c6ea8df6661ef5f9fcccdc45bcc33bf8da20cfabcccc9d3061d1d4f7ee1bfca27c333d0442035b49e27bac3c93c41b06170d7bdee79d1ca01d773607cb477d1161337ec4942e06ed04f96468271eb06324bba4537275c6ceee3cc1934e9e490c0094b2bc891d1da1ce959f3d2adae73c856cf7e12e119e97ecc4f21da5f31796a69a5a00d6e9eda63d7f3dc20a8e2904ee2b149f66030d497eb9938fe30fcb6c3bb9cf69aadcd0cd980c32b5bac5ef35600a79f08b0bdbf827013706e102bed26b0b115a45fec7bbf643c2a6c0e6b48ced3895cb58047f151718957b052f7b85de8b123c187d990d4fcad438a6c2f7e706b4f0eade5da5e4aff963e22afeb05d56f5caf76392aea8bb7a9547bc80b06a1c087453a8257062255f4681f858544354ff906a367721ab6dd84cc99b3b537d581231801c45fb08147855b8fa2585edef9622f2fca3880e147494be05c8f57cc21e127848ff5b1e4e9c025de56cbe4ad3b84a154e1c4b262dd6087b531fa286254c262f92dc99008671b97553e381363cb21655329115c374fc8bad1b45fdd34f9b8ec2b2771c006bbdc5dc3a21e41e9364693818149fde06a5052ea3f53a80db2bb2960c010bf14e01733a4126a6ab632427e47ca5228d55950addfae9281df0ae10c78a45d4c15781dd84e5437059fb6e22643286ffffe4d2246144120d015b600b33cbd9838bdf15df4048653fd2d6d1b33ef2147d568eda3a952d280c508283dae82978bc3c933f589d098f22ab40f3caa175d0a1ddc9233dba760cd57fa2550ba517b8f162760648bb07650d746cd098552133e092b6ea3f36a6b1b058013ebc31da4c02acda72c7c6de34fb1055d33462f71d9f231811347cb2f5adc95799945dc993e3e187725d57f58b766c6e0d568b02e28a2abda292807828d99bba6db401dae686ecdd748d72c43985e2c00623702d3c3e7d5db0e29ab3cb044a7bae9acfe5e2a3cd65e4eefa1fbb611891487f8e4c5d9481ac309bc2e633d4e05c48a6142da6c3e22730949d19e0ffbaa8cc7217c42d36da242c12353ccebddbcff4e5bf68ddafaae07b62e1b1b1b3a86ca0689f2c0f03c5be27d9f36187731295f40bba8be40228d0ef684084fcebefc7b3937b2a644fe353736787ee99ce0d7e50a3b8c9d6222a39df7dce9654f8b3671f3b16fffc02b4af853c10b584e16ad44088a6f95f0890fbe5002a90256ab106b39b04e7c4db84c9e013ec068975a204d550e510122dd0c68d47d26f200074ab1e4d057895f91e0c9cad182d29a9e9215e80f063de77e50ee6a42b0ca0e4f40f4d3e5cfc69faae11cf00f4b5a2d82f44a041ab4b49da562829232a56b3a57a034fbffd0ac2b097d6b94f049fd08df485e064e36297da75ece501922e2861d70eb380a0a3288db19b1b71e4adba50c5732c5747758c2aae16985d0fe16be46a2086b1fe3a807898dec874f57b758d076b05cc9106100c9afc125761c150e4887646c1852a4722778b25f976d5caf6aa39dad588b6146aa23b3bffa62f3d844050a06c3e73eb4ca39b3edcb5b17faf9d0936a2c724fae0e13d917b5ee3a03f1bea1c52686a88bb3a1566eafa91ac043e46ad81a60fa90f3c0140a0632626dc5d2ade405492b21753994a1a672e43b52cb8d6b727c9e93ba1bffbf783fe2c11a137860d4abceef2f32febf330d4a2c3d206f713fc5f31400ab6a38f91aff541ef1043c78ca864e4cce8a70a8cbd311022139caa847219145d0e2f380bbdc8a0d5a9390896369945de876ce34b6f9c6f47524f877a21524347423e0a8afb214d6f31cb9fcc19f700b06a8505bc29c75046c060b518cecd2d731800fef950d843afe0cb8973b5d616ee25f2001ade7757c4ca2edd9bc103e88c4210f2c46c464422c949e53150ad7591dae21e8bdd817ca3e2e90f61856e541a414b0442e0823625da12ce07f5f2938430ba229a3d21075ef638bdecb9e6c0d053200e140334ffe32b744b22e466d4e5bf8e886e0bff1c2fd1faed6f821133d9299520c990d4b9f5b2fa929f3567d48b39502eb885d8fd4cb228363b96ec0476a34c01e820152533e0acb778992cee203be6b92e7d39bbf965c34e74fe872039667786a55bde4173c9e510c01381e101e20f3d09364a4adb4c722a55ddc21448a4f0f7275ffe3796d926ee40ca83be11a66f99a16861c8bb5dd0af63fa2949cf1359d9da8d9eeeaaf36499ccf305fe35928d190d889ee6c982ad1dbce041573c3391fdc17e13e5977f7c315467131c0f2743f5c02d8c21889372c6e29416ffaaff72881b3194f2e9ea3dade1ab48cc5a9afd24bc07df656db4ba6e2a8b37c7b9be4303f8fcb10c48a119b88dc149048e8ac0c2f9e1ac3407b18631f4bf0616772eacabfa8aa34468616c99c86ad14cffb114a6fd2f3563c26214c8c53bc1d9991d5c39bb12e498db1c452c6963204f258eb61b75c18e07d33dff337d87c9ee6e9eb2117ac28d938ff22e2ec2f2b8432b07427fa2aeac2d0b88447ae714ded7b7e8a8dff1078b1b8aba7c9023cfba4eb416016980cae6c0f7eac9237039e6846a59ca63e0a06f8a82b6680db713e9468930b865d23feb31c3909fc202d8620f167caa7e791ef53916a4c3daac61ad7da0c31d9a1ff7c01c3ef13a4139401cd43d0ca8dafef58a083c87f9ab4f0d5ddbd75ff9fc399f99e615ff882075655d14592073f440cc7c9916e516b8742782f7d6f27c796cc90d43bdd9fe08ab17e8f10fd8aae3626af85d8f1efb41c5618e8208a64bf1416d916831cf668e1a3230d898f3b6c2b43d2a075b40eeafd1b18dfac68d4be6814e2b387623819da309ba450c284c4b70594b2e11292d09a0387108217080848971f66148bdbfacd9e37aa8e04d85c2422c7e3eef0dcac8b6d1f1472998a54aba1809d75113c75fb7fcd19ce11370f41140642984c7fe298b82d285555cc8a8058d4c584130eb0af914dd3f6174ee213e342e1a026ba16231ba55ff024da77c2ab194b8c0bf57fc4913baa4ed10a1d1acafbc4a2c4514ec440026a342287ecd03f9ba9c4c20d1c9b126eac4dc1f40e109bf2c6037a8fb8575c8241bdf65025add8a0f851948824c86e5cbbef8de8c63b6c91c9983308df1ca4690252e6641945846277eb97f3d148392e22ce21603ac006c76127bcb5a0f1d143475c5b5abaf5687487f3222d81342606ef8ec0faa02bc8ae804ac6050bf44893356ead08df0861f1e7f0aa9e8023b57d38b714c8fb211852ef30f8a248c1aecde59d168c496670f50b73bb05e974b8637c4ed40c4191f81fde3041bd8d7ac3de7024bbe8f20b50b2277a0dca275ba22ac1b178f278d2e20d576e4a7b0f2a5b58f36cb1cb2e3661149cf62f0b95d224101d328c747539418110ce0884ecca2ddffa116a1ed32a551015c60e36fd0b4f466bb39a3b60e380566c0d7a757756418cad90bf369ca987ae91736f480eddc008f62c5febe96a45470dc2187b139822eef5a365d0cf25ebdb743f8ba54907f7ec440abdf0140f8f8c40cc1c6dd1423a9394ee8ae3411ee9335da16d6822c1362e8d8c4f065619bcf7293d634200e1dfcc3e324e4d9dca862304e9187240d5d0a887a890ed1cca095bbfc02dc2bc93134bfc07e1bd8fa0d204be836373ec7e08cc2fa2ebac03a3c88521a5091cd95d591c346be465528732bf61f4c97fad921aee16214c4630dc57210505a55897ca0a9ceb25d6e36c9ef5491c016403bb3643e2e4642fca612adeb083be1fa1281ae87c66ec015a36cddb9e2b4043e5860f8b91dee78af592b8211d6456bbda4258b1f0a1541440fed2a31006552f8860fe022beb0516008011e69c0c1c0c7f5ea7f6a9d074af34e4b3a03b7c6d5149f0fdb11ab7dde484846af02617233808c08977c8d741d316ad0528517ebd2de9a3ded7b5ffc1ca2cd9fd1e6aadb19c1cc7da0ff60543e1c049f626d3a01e2c61145a47ba69ec4433391596dd77cfaa9d9203353c91d7b32b70edce05ab1e935dafdead35bee265bda17fede285cff56b5757a184b6df675c15fa704f8142a33ec93e09f7ce81d0b54bb6b2701236c76758c45289b2b207d237433a4940b2a488182195dfc8e1ab8f769a0c21ce3a1e39f55322e5764134f659ef0eea9a0846d01f2495c7273be06970f6ed05586d2f3c5010d81ca3ddf08c90d791a67c4eccb3236b19d62ae868bddd99eca93c4bf50bfebaede60296832285db712299f6362267a1574b440e6fd43c0c13f0cd425de302131e6916b73f0f2dc26631189025c8002b160083d30b12198e809d2d538133901dabc61de8060acffacefb6d3fd2ae4e7c3b16e2244894128c94c4d35065da07aea1412e9cb822d09c423439ec115c5b4bb4b4beb272b8e0a39a4b01c272391742a448f75b5bdd2f05fb7ede46310ae6cff02b68526fc7aadbc8368789ad52d11fc991a17a60c0fb82863a17381e98fd1c1de217a636caa74ebe391916a15d9a93eb5da98ddfaa02d6911a576dd81b4e7eef598c5cb324461910f0d7632a3b44a66aad264baa411db7d255141a9400bdcb10076285ab842722c9788f267f20105c2e938b6608c724a506fa4b0cac143731adeef64aed7daf7476f75d8842e7211184bc5580083ea49f3df4fcd44ab099640fb8ab2043ae263a45fd4773d24e129e78b1837dd641d116d61228f98b53fd9da0ef5fea8f219d880dd3679b2e3c8a8d4c005e66ed6452e3ee77c25ea6d7d194e655737b0eb417ceb7e59008ed356dc752ec18608310878d0a2dafc1f3252398ff85299259ae3d0efd7a5e76af07e3d723c95005cd93feee6ba09dcaddea1844f80d881ec2bd3da50a07c86342597abfdafbad09ce2fccc7664e58555e906d2585c9b7cbf7aee6c3076ecca2436c8f7dbf32991029bb235b11e8feae105fea656e4c34bedb305ebd39ef3181a0240d8c40dda6f4ac908f3c7183518be2183bb9f2f2c10ed05f45230385b1e03d0891689caea4f609675a7d7605f4d6f8d0394d819b17cdf5cd6dfd4c7e6c01faeb231c14a0fff6bd18a9ac920bc6e4d88aa94fa17ec18d34de717a91f74d7122e7f6369cfcd6d3cf08d251cc56bd55895903d6ba82bf12d19229f3d960c5750944f2f6ada44508003e5738cd91f50d411a9d5b47780e86235b875949b33d14fb1c89809ebcc20509274dc470fc8c44281f7f7719ac6174811a39feeb6d24a3fae95346b368be190a781f3d5435929294cd8f7e1301abc5cb78e270e6181a6a329d407e7ffe23878d004f540870397ca7c63e47e67ec466b14c09b5c51acc65cb4b2d575eedd006840527c6dc3e9b785af186bff6c297d75819c1c7f71088c1a7995b915afa7b224309292949a447de2ae2e92e70ceaefa54888767342b588d6d70b8f9e8f78c851179a2d60d2cde0faee94928e3014fb877d93715a67493c56407f89f56ac4a5f74c869adae915ecd4a7f50fb15cef3207a1ec9d36d09223118b892fdd44fd9d57e1a0e2f2f04917ecb0a82290a8f0164be698fe4436458fcbb4ac945b8b08f8e59ba8dcfb62fa0b4ddaa5a69b9cccc3e3db11057021a88f42eebbcdf26a7185b3e05d8f4e3730fe467460dae646cb4fada266d043a51be18ed726772237aab4081c5a0f600d91f3a05485c2470f0de87b664f59214112e690afce73ca86f2471327e2d8d2ec72de7261d4171c709d8e3fb98f308cfe6abd4175a1171eee4b8fac2f27d1e999b42e5bc9b6d8f68b4f191a03808215aacd081551aba0fb1b50313f066fbe859b92a7d292e4572c047f838199e2d0903f1f6820a1795132841363f84ac487272cfeaa3f0a69b9ce524c30385f2274e24c6a4fbd10e60113c1d177898b1fac5cb8323d4803a4acaa27e9702bfafef4fa0de7c86a196340e4e927c50d22eb474c4142efde970eb6b38aec0c81da009d5d10354d41608c731bb4fc3a6fba2e09dcc3af9bd721ae17b4dc6ab18c9b4b18cc0569a1636d286ba9e84f36600a7d6b0b8e85d41dd2fe00538a24aa800369d82e9fff5ebd71e5d31af9bdeb65151bb49bc3285ba175ca4cb354afeccf95878c8f5993d5fe1b24b5c1e1a2babc89b6525b97057c0c93da0c7c437958c97a82e86c3bba05fcfc52e940a1006a8c38032f8224de95130a106eddae5b6046d6730cf0f69eb0c32e5abfcc59b35cf954432eb9504aea5281d405d248804827562e274c59e5ea7a5b01c5cbe810abcf1bdfc334067647d04d83d919938c2c33adb66cb184b57de92aefa6b5d3233350ab019d8272eeb653a108b9f96f5c7d653292b255c5b98e98369914b35c83d3e7c4cb3cfb09fbdd45b9831f6a8592f5a29987811be6a8feb0b14af9a10d5aad2c1b479bca4f4b1d48ede2ec189566238aedf0f2f52bd58bbca7da09e734e4547985aa642ef56234cb26b545fc219577ff800e6112f70fff02c9b88b9ff05b879310203e14418b18c475e2aa8f6dc1c7bd5c2a1960d3263df43b2573f5a6931c8ff8da281b06daa45f4f288a05f98e08e3ef943b44a754c152ce085e2df042dfd0d08df104a6bb129485f1918345436e706bc619b7b1c5b5ce9da40f11f7d2ebda99385a806b2b8bd6ac7e2b73827e8173c27aa16d72e99ccdece5480f2c610832bc1e96216de28ecbc06fead51c2311d20abc5dfae5e0847644c7d2dcae3a1956c6edb6cc53e233aab74e4d564f8eea1039f59d1123b9884ddcabb2428d90572a9232157ec670bff4b7321c426b4cbe9e336b7452b1fb97f72a055247652a79ec481ce8e8fb0a080b62da9f7d08b7f28ff6d6ac584ca8d794d964838aa400685a8fbf6f94cac1969f57c0d6deed25fea774a29700972371759a7c3bfde7f8ac43facdd3b68c181a9ae226de8d7fd7df1d5edc1e7aedc4239303eac6e8c2114fb831051c132388d0f772b9297401f1ae74fab1590f89d264b460173815cdf279f06f06151147b1da4796b972f3482acd6c0d03552054bb3ed4313754458ea9580c60c5934a13cb8ad5b460c83e443fd3b3f75439870a7ec6a5ff258147d321b67e2f416981d704b2b0d0da660d700675d0cc8ff90812be9a46aa763fdedffc2a9ae46815a1950bfb47d43ed2ca3c91ab939edf7210cbf7b289217eb34f5df8cfb47527a0ac9ea5c62f3b14d6d14c48f88e8fe2c0891b16b5abbb50b1b44c2c72626783ddc2d1833d7952d21d670535d55144cecea9cd2e85435401d0b0ffb63bb968d310db08e49a2ab2f665bbcb3910d9febbe9823ea74e7101371187cf8444d7dcadfdab027a601c467de424ba493495e9076bcc8728843b0c635662f7f806379d300f3fb351cb9e51db96b857878a90cbf5830ba10517f758ff8f1aa010a1c9632f77717acf23c86e2700d91103cb0796cc5dab1403a8c9eb30cbc9b3c66208c45ab98180eb3c2e99446c12e835b91e920060ce48489b8b01fc2b9996d1cacf66f9e238dc937398dde2b3942b4798fd9dbf4eab6949e4116bb3d1ca991ef5c4c0bfb34958f557cd44701dde57050ba90dde055035308b13d6551c03fd3b0ae22349a310086a9ffc02bcb7bf37229ccbd56cd51c1db73cf1ab80c28c59cac3b60fee26ce77b4d5aa7f14ff6035b0afa78e286f48714b3ebdb2b887175f4d0effdbb959614b16b6a2e22994d5b5c1dbf9754cdcf8485ddfeae2d6bc0ccfa5320a527909120fc535e7069c463f774d2d97ab65e836143cdc23e5c583d9fd1a47ed9c7fefa4404ef50afcaed7300d20e60089d958bf3607e7819c9c405c6e84301e7c3dfe0194fc0fb8e3362b8aea63b6d946d86a629e38b234799ee094051b9a94eb299b2e85ca45bc302c34e3674344f810f58042eb18170aa0e829a8b4b4a91c60c825a57a6db685f8a6523a4c8c0961b456a6bb2ba1bd885f740cd71a3e39dd9ae7afb47c092c66c367d413f567ad3c908b5f7d961a6461b70b160048d125c8efcbf9bcbf43a673dba020848e254797753361b0a2f230aa70a93c44389d9e9313eb889eed9ac520ecac6598f70a0734ddb59493d54f27fa7557e899e9d95cc6b8dcface051d437f66d52da52a86c69aede74bc4200fe8ee7c6198d7fd8d4c7f55706fb48dc31fcfae81443ceeecb5303d654451143f9aa86e9b9b200d86bb64e1fa1ec5c789c3def88956cd2fddabce62a6ad595117024c829f2f86be0027f3510b8079930c42f83707ba9812feaf2737e13d3b9c572a7ebe7f87b78229a80551ac28e8d0daa5ccca079f10a53b4ea75543ada85aad1b48d86f48060ad1f5485b76237f6cf4d60beede15e5311f4995526673a256234856cd93de6c5ba9d56ff4897173c37484d8c2113f9ef551c5151dd7cce61de460730a26218552813800a3161696052dd506d11a03760572f413cf5716f699a380d3b26ba24c913bdc3d616c90a9ead94bc76a40168645271fea2c37e73c33b92f9526b1b0651410766c7aba8c64be17df71ee71676aefdd2979fe7e42f4dbe58be52d75366358969c80ff0ac6ed016c0ca6cf80105c43873e9cf448d8271d4aa6c775430cce676f1bb2f89f730fafd72013f7e69ff6374fe9ccd8f3f9c63313a81b46d27b8225f358ada12eb272a2c5400ea2bb19349c5941650e8fb1d814fed7fceebc44ab957ec22bd21f6fd76795e40dbaab9609099e9e5cb6e2fa12fba060a6500064ec1f4406d9e8a04086bc7796cb8450231449216c08cc3ec41c509f5acab2761ce9d256bdd4dbc27bbc01e6044a7807763561b3cd3a29579e34206a2da3231ced5dddac7727810db8f9b37a5f5009ddd9bf8bb646a9a622a21e9e68c1281c6295f065b2f6f5cf5937b04b057b336f7703619a5926d71b241229139a19025081ad173742f4960a4708e69c32c5f0807a7b6e57ac95e24c2d44b05f18e3ac108c52b8c882585d3c9eee2bdafd418274f892f7644c54333eb3161db05ce44513eabe12a9939d1c9cc3f8a05adf42a8003451fa6b058b24ab58c37e01fc9ee925accaf51d1dd3228955400f77e6ec0cff525a3ed7b5131cb6454fa8534fbc58e0f581f49ddefd26e578a0977d29b567b76d8add4e848633599584f582630171438b8190231ea87b0cfe98ea1c52e5c0e11131c52a08f1f825d562c699d53734409f375652ad2ebaf3c8cb222f044e53092f5718f0862692d589634ac69d2d652cab0321653d8285de1ac4d21b783b92156e0c9f5298c75c4793bf488c6b819bf71821a41d23acf59460f2a40f2cde16dd23b3ee3fed0d87ba0022fb129d83d34b7c1212324c3ba095316708393600753a1fbc35a06a7ff6cc1c982d58be00296ea7aa71cfd811d601e32c9b2750109a4c2ae5fdccc67029ea44d19c6d300f1f50fb2ddcbc6122f5a4ab6b11be8bd22910e1288280ae49390e0ab5d14d9b96b062caa671505b294082cb62057e0a16bf9d5919b3561cd0c84848e88226de980a21a0f0a2c234721ccd24f47a203200c7782386c29bbed60d7e9370a39073a5448941e0cb87c3734e452cdac6848dbbd0b7205d6000c6f70893995085aac4e18c5668f310b9f137f2b597c24769e0e9cdb5ad0c4efaaeb674a81d18b54db49797e7418e451ea0a7594724a14d92422d1f084bf8985196762b3968873ae179fea25a378d8e68f2edef7d2ab5e5ca94ca28a14dbe09aec564111202b3c085928256fb03b10546db98bf98ea1d5088044c864b1cbac27c302f25eb001b38d3bf860970ba8c7ba9157785444a4a01546660280edf4aa368e05a39cecc3c7ab398ae93a671048e14013c3c7b0322f9bb64281e87313ec3523c3530bf47b2915d411557a019eee65123ef7fe0938ce756a4580e5dc8655a55f02eeb9d7bbafaf50c1bb7b230e81d3521831d495ba463861269b265fc3920b59b14228597223dc8827d4baa1a8e00b052ef8038c23d74482111b51ef2fb3399fe3901d4069eb55d02b2c3c0440922528d680c6b57fc22bf9b6aef6b440584b202bb833f8c35ec50c467b7792063fe98de386978864ad44ec5048844d96a22aa05013db47fc3f4b9afcbf483ba1fa3a9a1514deaa30a9b9177917fed334087a84338607fa54993fc11b1496e367e9bab1da5667aa0ff60a08675504a1fd2d56846ac94ac5704fd9c6961d710983134d7c2784f3664fd10cbfca03da4f8cf82125720e6d8a577712e4f41268f90ee3a7d273f614df33cbf0487645b86e70416f29fda5533277e4a12f4109ad64aae4e57df268e1e73f31dea55567e87c98523168faea719631d395472675446024af07821f206758ade66b920c4a535d21d64b855efb69ea09ff8a8596f9915a7d6d8b1eddbf262fa32cacf7665070cd152e5aac19819098290230da20b9ae5a6cc3bfea240ccb4679feb2fb42657d15836d3ac55fe212edc5fc81cead7dedb962c49ba926a1de8ec6a3c74f0df1453f23ef9d900f324ece4573f3b1c0139d7a1b27ca105d94c876cfdaad0ccc97bdb3fdd7e1637db0358e741a7a38b97e753ef6c65f4931ff166e13a4eaa22a93a3aad66c6bfa47653da92b29febfafc924c3f524ce180b4b1bb36e49ebc195dba918d50e20c7e0c6b5f00e5da51c46b773f8f108ff868f406eb5540e0b35b90c6fa2701eb7cba992696c0360597d436831d3a12d9e189c78eea212d55b14f0ffd1f52dfcda50724638781b6ae7fa660c71a142fc44f0a67a97bf11ac3f68d5d629539b13b3919ab344a9167a6c6fb84aa72174d5af06308cccc91d28ae9ac354019a3cba1b37e1cf9f85f53c10a64bd9d5f50306601012d93d778a305deaacf318981bd8575d14cddc51e475a22ab1130b7f4218f2b3ea837ad68a9185c23e995f71a9cbd5467cafba703859cb356e9abefa1410739415818ef729b4fbe8fb351998a684ed2ef14bc3b86695366b374981937f8ed7d37876e6d1440f7ba9965b4ce7c4a4bf8efa81dffb23907d727038080ca1c05822cf2f29443fd6072f186ade14a18311a58d9b693f7810f29dc590e61352de80487facb88bf059c0bc67cf81f8027531b38cada28b4217d705ec30a9058ad9f242a7a8bf6f3d1d6144794017809034e5b6a30ce16481095f9018d5abda93caca33d128a3a5da7e86a121d78a20fc4aac0c2f77a180cc2e4208386c4f6d074d71188e40229dd7b6c479cd2b8cc32e743f77f0b33cddd09427871cc46e27f7bff833a79779e9d501e2dde9f197281827748faebe82adc1d1cfc19aa2cecbf33e04ac69bae6033a535146477a2ae63850d728ffbc237db428ac237fceb69a471c7f66ed966fa85de295ddd192d39b8572483f9355d56ae571c99603fc7896f095962a55f494f753a6779d975a125d3099924056f526d47d497887a3aaea845e4cec1707ac00eaa0c4245ece334a56e9e35603471952cdc92514bb7b664c1e6806c8def60f9e6c64224bad0c82df0e9cf06425f64126b591963453cc6866bfdbafa81744a9170c45300256bf674bf9cd9fa5cae6a6ae3a5d77fd57b24d230391ce9dae954083eb7faeec6222d373c75919d0077fc5978b30536ff8f7a6492fd4f5dab3bd3bbcf736ed6daad13491a468ee486453409f405331a5b4f13481006319a6c17d4834d039c810cd871843e4ff0a8340eeab903e6428b856742e862bb87562129d8815f9e85330a2386c4203893cd20a1f7fd96465b939f8446720fabd7716201ea6eec298b3ef4a65e6bfb5c6e52a97ed3a126c2bd450df0a71c44886a2049703cdf493c04a3c2c637a42a2f728406c61536bcec19f8682714c92e26b9de4e66ed7af3cbebe16340428bd08043f7bcd7884dad4329a6dca4cfdd19fc8c067db3e8e8120530e938c5a852ef4bcd85076e7f6d8a1950c3880a2b3d728d6503033b90229477c3ba5ae1911385485a843f5fd610ba49811ce231f05a4217a87b13d960fd88fc2fdd94f59601e324e09d120e5876f5a96439cc6144fc889acb5a905833c4b24ea19f05ccbf02470049bc6e561b3bef00f10b022f8d358037b7814d578867041d79cf28d622c8fc2e928bdd81113b2612c249c8b26a3072f637f2ee94e8296e038cbe011185ff038e3d8ec6f19b030fe7911c15c6fcc0070dae8c45e8287507d33af2dc034b2d7a4cd6d4ee02ad02de619c5359456cf57bde8935a70ab19cb881c9e4161a85a8c05bb799d786d34194ef22936117c2b0562a880d41314d69458b06609082704d20ba853c05e6905b5adf5a368093a67547c0ae92080527bf26aac3bc488ec18045089dc1527901116f05b82cc3f5df65f1e9c9ac393feba80e28eed65d8c8ce935bfd4ca2bbb35a6fc4648255910023b3eb301416056c6d7457e66380e527f8bdaa6f1e0f324a1af754de8bf57eb824016146c08e34ddadb780757275300800a2183ecf2990940c7862878c89660103afe9df2425b3aed3ecc1ac8782bd90adceb517686558b2f9e2bdfdd0b95555910c51c9deace745fc03fa0200f0db5d0d4451023c44540a0d144998fbf810ec8e028c875506b05f03b1c64c284043f2f83f999234390c76cff92c28b5b9d82d26547d64446094f24f97361e5f78c805604240eb33396a2f681ac8fdffe104e274cc6983ff429f0d62e1f7c0b53b53e6c8cc011f91e23a839d3a8a1b00d8b77904360ef0d4674882d73bdc4c183e00971731f1eee1e307feb331784ba0f80bdac63e07a600acfd6859d977e6de22c5dba49a5ff9f33c755993ff46a7059b31ff66cc0bc1c9de4ab6549ce002669276a51d40947c8424a590d8f879151057a495b3cca47c52c32c5da1165e58aa65ca235d03e2a9beba468ce17d3015b1fed715ae055b169ae197cfc5f716f45cc8e1ba4c35b4bbd1af883e6d212cb63d6dae7589923e3f90f3f4628999a8b39affbf75388183890d6434269a4105fd0ddf1788ba03ab6909383a02d86682d6ad81151e27a4baea64fe4caccc7002f9ebbb6696d39eaa9639351bc8843a8c9821d01713413bd70117e7896097294d5f11ac9d499e4a6b9a726516b41b44baff59e647d72986db7c549abfbc64cc26262f58fb8bc078e13b5cc54c9bd759c5c91152494e36e02434736849d9c2c4d8b0227780df33dff67a13eb8a94029f026f9ceb7d628f2ec3f97bd1de3a4a84e0e92ba54c4744a506ae63cbc286e1ef80214c3486bdbaead7a1433348400222f6ec52698c82b7ae84f6a1709587941014da02291963f6acb59a5211a00646c245638e9b33fe4fdcd0103542d769cd4e6cdd0617a30107dadfe31c720c5764b008f8e904faa0253d360772f41245fd1826a18185903bead6caf490905785326da894da7926604d9e8414e3eea1f16a1193327fbd434d9a5a5831b2b7ccce358d9b84a8f7605c8b0979aa3ea48f91b8104c6aae85bbf135dabd82b17c114f4e3664cc543fb2913baeb148b1dac215eca78f0457cc90a3fe05442f005798da044bd188fa541050bdc13860cb826d6f02e2b50aa36e2acd511f12c5d3b2da9dca5c8a3ccae5a7af8252c6f1d6bfdafc8e874e5a9a43f1ee1bc4e0144d554253fce71b30c5d3ba37d5ccf26de095437d1c574f5130966b2cccbbd07bd34a2fc60fe6cb02113ac2b6d11f48ade4c298bf11ba09050ca1737fd37ec8a780f5d02746aff0edcc94a21245dcf2ff1f24d9872887de55fee6ea2e06990a779c15001ddee15b7434464065acc2257775a0798db37235e21e301e4b69fbf1b979aa5aa95f93f2511ea5b7d37ada8e3aace2ebd02bdacb57583ebe01b4a541401f8f80267a384f091284efbbca2df3402573531cc92c7354e569a14ecae9540df0ef1a2be0d285cc82084f12b0fee6c15a0ad07d96a3427bd4770a98e5a843b3ea946cc245022b1fbdfe8a67543e078f3a554a4f3e7077b484dad16c4fc3fdd016286ddc1e95dcd09ca0bd7cc67aee7e13987321ebad9fb52a7030129105a172961b5f221161b7e1ea124c971aa3c58f8649ea45f374dc5909d2c8baaa85cc73112591495049840da989e895a5ea880e0e4a887693c8b1aca51e0b5d11e6314e5db2fae74e159dafe70db3f9984c323705f436bcbf6e3e0d103ef5bb8253feeaff319d5982af29cb1765eb8eaf4c03f13554f56beee185e3ebc20db78c4afda4b6cd558b240a56dd1bb9e6c52d0150ee9580cee20f155d001d4495ba655b13ef7796fd22d48eee186a849333ffc4d3fa6dc845a9d42bb93dc85406c596336d4b854c46f610d695da96f98b7a6bc34d5d14fe25f5bb70ea6db011b8c648712dcc81a85df951d12917ff08b868db7c2c956c063cd0cd787dad3d577c8029c5db2f37cba62c64019c148153ba5b04a6e584475baf6cb825ee389963113195e39c8bca2792c1e6c58b6b00624e1236d324276e98de4eab8ada868a4601892c741d9ea2f6b042aabe97803f65c579f7ed89daca8ba5ec4e18edf907caea316eb7aea3d7207451d1f76cff02b8932dd481a02295b0283e26362cba0d163a66f9f2fae55a60dc28111660143ec92cb03fea41608e377004f698ff3e78a19ff49003070d25022557fe71c3699aa1975892e999c8dcc60e822fd12bbdacba8197511e547fa7784ea00073cbee8cda1d1dff86c93fa48bfbc2e79e5322ab78b134df3f37709c29fb6104d64802510195691297c64e0f8ad2107db349cb705a499780d51d8c9da9bb58dc3b266716c4e99d28546abef01c83ea79265740d87556dfdc3a983840369b1187c699d84a6d2b83aea81222e5b69a079b68a6a0861c30072f9b7d4ada64f37a6abfb35a2ec6d5862eb2e98199d47bf39d0d8efaf666f1b84c3ace39b61f14ae16b0c5e0202e440c365701d415a59ba13575187dca672277275799f882446c8d146a4abdbb1056398b5ed8215bd82d996d06aad2246c2f8f88bdf4008528455f5e03e3cbf23b31a5a6407513cbad28a52756070c4a5925f8a3f832eb04b9c2998d12272d202727962238273c1074ebc019284a0e55497e6177bf6785400cb62e29b50a593f41a0088200781942a196b8cab3d52db7f15ec2d83970fc4eb595d0f1a4e8bd44f2a99cd9a92557a951107101f3b56b93711dd52ce36cccb9910c51c760300952debc45d1dde79c49b3ca032fa93535e45443e862369716ad2909b9fb604fc6e727672e9a7ac20729d1cbca11b25090e791f7e04845b364b24c9d0391dfa719a3de34d8770cdbcc50cfd5ea7c8306d0f3934a2a9c1e4ac9aa46644d203ab7cd55ab14cd411b8768e43ff699078e221539d5a321b269a6282c79dcedf1d0088e29a40fc32079ecdf07e2b0708187a90a09891b8e085ad09c4a00a2f1e2ec51c6f15023b5ada763f659f92efbd168c9855836411a0d1474bc58a2056d20ce83b2c5a0016a041c2035af24c7dc243869e0cc96d37c91ca92792b4a035824faccaa3cf0ee5a7392aa4694468902cf9c19a62150a94f496d9ce8016a0c820c7bdfd625d251d57bdbd10080e0215dc5a6a2c9205912cfe0b493585100de9630e530713947d4cbd53084a7fabccebc9b9838eed995d2d8a90eda72d99239675c1a1ed2c412bad91780d6bfcaa7770c9b5d992e29f141b3cb4dc56d335122aaafd6a6cd88600544357ae51f21bcdf4c81dfc31d4f00f0fd493947da4639e49bf22feeca4de8074a426cb80955d8d665422ea8ad9cc55d78b9624f33ca74d7a6e283b90ab24a5e663e758200433e525e0e2bdeaec63ab9e0c4a99c7801f75df2945096768e89611092ec026092b05029316a34c50895e9df774ef7c5715e4a27bcf2fd6fd36391056b50ec97cc790100536a3c32d535f42cfa8cd63707a202347fa3b739aaa44a281f60f511c2b1ed2a9d7c253cdf8957d092b0102dc41c8f43be560a66ee4d35e7ef2ea6d926067ef60c0322424fb6721a6e94d4d7e6884ba72c66eed6fa343619a33b5647e4958ebb4d11cf235171739a6a2bead8d327678388b323647228f3279229ab3de63c41dea994c9031ebccbc47eb9f65227e7fd27dfadc45735bb3b23b21f9b484bdbdc3b3f8f81c176f878d1004004a2cf34c4459322082538f8db9517627fc6c18cee0347e65a5b54ca7ce0674da148eab3ffaea96143b738b0e92a9b41916aa4de1084a90b8ec8af664f98b149bdaf62202993909555cfa870b07c6cd46151f7f6bf76085d959cd22fe9d70ede43ca70b852882559622138096da29308cdff2571fc3903e03d1828ab660bcb434c29194e392171ce8e0648770dc77fab915f6d8dbade4f8c8474ad4db712a720df870848c1da5330b318403ea6afec16f08205bd00160ff5333f05bf0066f545df3536a33ea2c7d318f496c48e870ea21e3e926ad42abff22b4bf82bffb0a4f0eb5ef849a1b693d012eb36339cbc27498e1270015ab379b8fc62cb13aaa5e5acf3a64e4d73960bcdbf32bc0325243aa7125d9114317d215293c9a5458c011f871086610fac8eaf9ea771897b6d89b8cbdf5dd97bd43804cad82e33483f3eccc83ea1096374e806db575d8da92922161a62d009432c10a05eba86fd84c6f630412abba367c305e807b9ca5d58d0f9f7613fae86a31c94fe43f9c09f81170ee966316bc710feca22c79ff3da461221571b183f2dd6b94b2956f708aca2294f2083dbbad58931fc0bfaf678722c204c17c503ea6132e610ace7978b823badf1b9ab31ab4314860ef4bcd6d55e9f2469e3c1ea84c3fff6b0e7ca51c0df5019d28d857a38a20fc5978446086c955e3f0dca7134a563376ad70bdc956210cc5da073869dba63da0dda275b00946200bc49af6f6c5cb7d52580be5454d875c620e200c41ec34b842f8e9e79be6c4b33f25cf876ce4294581faf716b2475f78e93b35e8f46f0dd036148a3270059ff5d20fde7a9842e47c9fa4b9816705ec2060d3f144ddc9d7c5181bafdffb6e09a4db8d7bcf118de71d99d11cba8a2a3c2d5c059a0cccf8e44c29094feef27e974e24f200ecd73d63c3cffcdd15be669ed94df09e79d612c5da20940d531abf698b53f802af458cf7c5e2085899842108041bf08e3239baccfa89960afeec8a6a9d7089ba4044e1082e84eda9b09d6587b4a900e84ade9ff294774cee779138edabcf117fcf4b0e5d5576014703bad721571976c858b63ae3e2b274e377d5f2f4741a0c83f94e5f54326edaf92101444ef13cb9938fda2a41fcde2663f0a1e2b2e23df8fa159b171d991952fdd25268259c4000b240a11432cc21f8afc0e8ccf08ebb90282c7435471ede26d492a08ecd6c361f9a634ebabc263d2f467f9c0eedc9ed5fbe788e04d017a6e1d8c45623e3247d54407d81cdfe3faa403c6869cd42cc276c5976acfd20cfd505c987e4bfa474320df40a7156d3861804eabe9e7ab4fbc3a140fae88dd19627abec6d644c571b6f39d05aac21ed1483b5d8889894c05701dd41aee3902426e12a0c377d890fdf5a4c098aebda05c33d75dabf68920a0e4d9790bd37ab7d4cd9ba48fbe6c0f84c046450f356d8aac4880f4b9356685b45473780a88d04400bb5e37c3901ba09c68cb987d929f404a0951173eae1879906f7fc75f43f17f5feefa05d11adb62352ee0ecd0f44fa795bc894b17fc30e1d50bad3d0c6d3aba3e4b195340473df8295ebb699b34b587d8b551eea4c423d58d2209b3226557787da18d1a15dbd07c8087a29d681a090a62d0a812eec1a222e67f7558abf307e9c258986b82e0e0916ab2faac3d97e0a83608f5320d7bee4009491d088d01b1710f2b7e1da1afc89c72216b9b028e470b5174266c68a369240a87b041d7cbc3da7500b4740a273ed6964ed83b5bb4a1e0dea14922ad8314ec8fd5214a1bb2b1091acc1072ba1eb022a7c3ce753334515e5b454ef42ca5e720f101c15c7ea97c714923568e03c71ac6c47bc13b456379076e81fcdade82797d73f3e5e1b185e35bba85b0b2828b376069b8f2750bd226f00c5a1934b3650e9a510603c89ad8856d32c5e320580a2d623d8fa6d558d3c25c0cd0ab2d32eeefd1169a4e03531ebfa7e1ca914f5a718c653150b637e9bc3039d6899a268c9d6fbb6179b1e8988788a57c72264e9b45bc1c09699767f63d8262b4f9ddc8fe1e70c254ad1af480be3235b041bfc83fc005948fcddc6fd0ca2c39313f4af6889b1ac5e9ea946769048f7f75bad3b8dad0b4c0fd154b9f05a5fd81245400299f8babafd1a99a74f63040d8f838d0735565a5b920884a0e31a7d17da742f6a02e41746718542e2dd14270e8592e732aa15fca9077338f5f9f25f6efd96a4741753cb323cd065cdc0b86b7a3831a172e589c58690f849ad40d60e881f8a1ce4383f543044d0bb07249d460d0d51fe43501542f1eb8c90cbc0aa0f4fea94145783a453532a02c138e83ca278e48f440f70d37d0dd5d21a716e1c43b50196450e74eed1c1534a95cf49bc772fe8f8c77f53903c5907d539d822c789e10cca555db9545b4c5b5ca91de9a9edce763aad603420893c2178fd5dc532f1e577a5639c2f6342f511b5a14c4207fb07ca99b1e8717f15b43de721bce3487a15bc400498b612ac6d0c93140201fe2290cd1291238c789d6c637802551088ceef67cbbbd2f568629ff2595c114647714b7af7051a733ef6ebff7b35bfe6366b83be1de7f32c884f4fee474dd96083f75b4d0dc2da2a96c602a20c3a447e6cf6c01676e920298bb69a5182b301da35b1d4458816c4f7ce913a8bd628a5a7c166e9a1a2d834442a058d14295c7b46ce15581fc82183ace44054494e4a5889669f82f5949e7b582b74fc334c3da00641872ef6410c752fb1237e36f919404b17d00aeaa63bfebefce79db3451ad045ed7b464f31b9bcfc5ef142d49f05436f3baea645105a65f95d616b727a3c77ed9556345a6f60f24919f50544334a73b90600c3482d6c4077b4116aeb044800d85af575ab1d4df523e90eaacd2f42c82c8eace0bad6a30e3723bbf1d72285c38513f18f6ab132f157a54f6fc2680cb68feb0c391171438191822baad4cd0f570bcb2d202980c040e9025d840f9f7afc4d4080f4feb0b6c0cf16ae435c0364ea3076933ac8ca8ce7452193549f857ee5f6d04f45e08fc0f4d8506c836d423d132800832fc12fd40c35923a3ccc762aac4d762ff73859d0550d0c067a320ce3b2d2c43043a2024556874fa8da49a050dd63605039048acc62292c1c614e8cac22e4ed875c7763ae25bcdc21375ae6e29fc7bbb0826f5aa2d9905ac4fbc0c2da8c45662fbd6027001c1faec60a130fa33a365bea860032f65a8a6942c5c535c31fab5a2a54a6bfdb55a67a0ea4cb992185b382b86b05638c7712fc1ae8c233f5fb66db4e3297d2263225fbc65927ced2e7bcc81fe6b9f3178aabe6c114d2f2d622b1f6e1345343d41f859ffaa85722e0f46f9c793f87c4b44bd651be379ad9b396b0b6f794293d99b627b9a96eb21349cd1399eeb0a70b4409b8bcc08903ea9174eb8e6c7439726170e6160d0b7dde1cefb78a5da41f3ce91f4100a856c7ee8c0470514b46bab173ed3f7b49bde15eabf9f748d76ead521413cf4a4296b2be67d6b79e3ff14d713f9316ff124fac0d64f9e2493e2de4f03e5de8077a89373388729fc28fd24933cbef59bc55da70c5f77728d06b59ac7bda550d29643990d054f602607c57434a75e2804d72ef1ba1d65ddf5ec0495faf592c415a3bd1020738ff25d6151ca05c3d82275f233769fe20056115266094b0a9d229189234e6f7e3ceef75ab28ab34000d7d93e950f778a25294512989a0f20a7fe67020495a06f0563d9219dc0b82e5dc28dff07d55fd41d080cb58f311a20ad19ca399028a30d99e8dd3cbd9ab5d2baa980bc439e6279f3223425c488af41454d5747571b25e0309fff714b95d0c9563979b8d674dbfa979514f1c82ef379ecd61281d1447db95f2dd3ceba1378fdedef29f63728eb36972da4b1dcbf01e51c367c74f35cd1d3dd295522609df171e8eb72b12197430643547e53cc6c44052504cc2aeb909e9fbdc030766a4c3073a0bfbb202376a4b1f3464380f82a42afacd84cb525bee6a927269bc2bb1af59a5fbc5013ca3546d771aeae85d20b4ce8227b865947c514372304247301563405c1c389c498a23f186f25bd23f20aca43694af7f00cb5a9a5494b27757500a3110e974dbb82910a13c63e9abbe9318210e43569f507a3862fa40d368bfdc3447785c9ad054b688951abfde85a64d569e66f89a3a42ada929fa176b4702c4fcb1682309db9ac6e7f26733d5b2c36dc0e4d3f1db309268044ed4184b7c47d980c97c5258d21bf75cc55b8b646e252d119ccf581e8a910c873433acb4ceb3303aa70584cad008b9f6123771883b86b13a1a27609bc5fd1a2bdd11519f7e1799430b4ddc762771425a439af4e3aea4b9cb5204e3fcbbade990005176672016b1a01095f0037f99e016bf4b8049dbd0e4c9974b4cb0a24c446f251b0e4a965544542b0fdd5dc42eb1b0ff03950ed72022414196a43ca7931f622063704d5453dbb32af58e0d332018529d95bd0c7415e0c3373c2aa70a8180323a609e138abc613e31a911854125959bbeb0eab71cf697c210168f1dc7e4bc3c0cdce929d2b4d8f63f04999b2f53b139697b18b5901d61f332fc30b3209deb0834a72dab602abff4249b7ef5387b735a994328118df1cd1a35927f693bdb8320a77f301f8dac0361bb468d09de315c114a4e759eb592d3624c05bbda5387090cef888df5faf6886d54a69f134196c8fbc5a7e985414d2f957eae80859cfb954bbae58a18cde2c2a507be2802a6c2cc2f60e41a51280a49f916a368a8ae148a02956675513e4899214ba44ae9081831c743d2d98ea64b54077afea769383e2dfd072edc9eaf2e5e7b3644ba5f08896e2812a13da5da33d043b243c91ffe4b4f2a57fe4a310b0f3e903241d60bd2b405b6afdee8fc8c5e1e815774bc5b8b6e1bc4b54ed52e5c1319583a036e82d437b2d43d3c6beb30dad8023ad473fc4b8d6675d20c6e988db4963329855eabd1700777b67888150be7e9b69ba7149fcec0a83dd2c7d77e000abed6686df8ece56c087f093f130ea555e904f086e5c68ff59b080b179cbb4d1559832b871c1596f791f435b60b86ade7149e115cee59bd7c39e09ab2a195a5925e65cb028b3e9afd0058daeddda1cc3bffc0358d3c0d4b849a273614358f71721cdc4657622bb19aa50b813953c9e6726941d293bb7537f6d45b370acd99d3ca0fc50ac2743e858840f897d86e3863b1febc73d396816eb05bc43860e3878d8cf75150ec9ce5b929cf17d280b807e4e1b23ac02537269f225302f3f86d1025429997d56aed8bc2c0fbcaf6c061d53f76e08deb9c4069c55c598b8a6e56fa4554e1e737022918effb9961d1b91ac908546fdcd5927263c7fce19a00aa967f19e2340bd8e2354913b52d6a9e144c65394297c05651cb6bb3b9b57bbc696eb83a92b6ace3db5522a284cdd29d53d42ac4d4828dd741b2251ae19083220b55a2a113e42573042a665199a16a1b3e710635bbe4143606ebeb57a3d2e245a0e9584ba0851c73fc1764ae4145f43f525d43932899f08bde850742013cd5a36b04b9316abcc3dd7a7a3fa95e52a4929072d70b7888f2c3c53952d06ccbe759976f3ce8927ee3bb9c4dfa7145be2d5de5b2a9083169f8bef03dfc0150473c52df287a5681ecd98da0d921616415166dc616f39a478a90b3d6ed96886155290e495142e18324714ef84607aec6624fdb66124291379c04b539f72d6d3674b9011468431fa60f4a1689b44b3962b0a941462aadb8a531e06cd99646a54457ebed5dc33478d6180ded486154cba7bd7d583dd0e726c991282a9fd958daa0470b521ebd02a1eb517adda082580510bd96f887d42ccf41ad9b9f9ba94bca90393ab0973568e52789cb0001031a2f8db9f28e35564399943e81214c492d09734079d3d238dad02ecb5453b7315c1aea5d146ab00762d8a1a62e5297ed1a846ab087fad452d217642ac7732def1bd2ed13f76779503cb4c45ea26864505521e7c7a1d954d28bebf7a6c290d6f270e9f6413126daef2a4a857af71951629399c4c5039c248c9e0258745f4f37ff42d0e94838f7cd7250ab85022a5f74656fb630483ae4bdeb1505131ceb5590e262bb84a0464c276d7253038935aa3e112b4e9971866d19273a17f4ce051a0098f76826c0e4c12ca8828cac09c06e13a2d8ec1fd14c92a23b34371a9ea7a2d3646559d993ab2bbb0461b4bd84aca9dcb3de0528c16ddb84244592447c7efa8831a29e6d7c9737b3e0b3f0df8f76cf521d8d1f180f678b5b9aae896120b4af8e62d773180827438241cc9e91a4d649b4aa7bd2870808a003b472a422645ad9aa09b9635985c1ffb2fde1e9e6c09c347700cf2b91384abf8bd1eab912240b8a7266eeab8ddb1c483aea46c7a0669855b58ec62e032ff05c7c75ae09ec30b426ef56ae859ccb0c5066fae7e2e2fa6e8e5b088eaa1944339bfa68c51f54359e4982c77c0e6a6b77272b597d0cd6fb4f60194c64018a20cf67711939d53d3dd19278a18e62467a2299e38b67a8774898497f267e5a20293dfe13f9746ab84e6c92f79abea7b0676030eb01c36c59a388fe974e6d4c3bd885076d80c45bd18f5f917ea67550801a06c44254ff3f62412451767256d344f8271468b021e865f400e34bde108d167506e084f186fbd347c1255e27bdba583e682acc217e2969a378ee0f6afb999beecba4c2e394ce41faba6ad3d4f83ed6f7a6a9a0fc0b4332b7bda57620398743e6d86d680f6546e82658459a1629dac1f49e866b636cbb18ab5e91027133a9bc97923b12ef70de931086cabc002f159fbb62e9ab4fea211b1d586641d8eaaa0ac706c98770a59c48aaaae32f88bb4ecc64f981194662abc4f51e09c27b2b4c1132ad380dccd31ad8e99f1d133b5c4ce4cfe5147dabb06181cdba6ab57144ead5a246e29d8ca6342971aa749d3787ab7f1cf3884d16649684b9ba22bc0d5359925b94bd22ebe2852303e6a397e92b6d37977df6ef6e6ce0449f9c831c1ca4fa09ea916a651c1ad90956ef07cf074656f6c87f1fb124e5a21a3215325f8be8907af34ee02c028194b046d7399fe269b8f831c8c43625508291f64d1401130070440258ee7b5eb7114dafce39714e38a43e56691281776264161e2de5632bf0048cf3d549f8f2e870f5c7c3973604648a77d601c553777954578598d17158384720b9d012faa2a9898813dd685425996e9345c133bf0232654c3aa374c0e47d5a4ff33b011aa5274b0752f9db9c5e192cc39cb99d5026e73e0331bd54a5dffcdabd26262a7fe64a837029657078edfd8b26a55bf624f4955ad706de1897e01f8bdae5349105470c33679bf4eb928e9b9caf3290befbd5c7d5111922c21d378e2b010bcaf16763a70b5d7c1d8304dd8a72e96a7da9da513b7da43debc5f33f0206e5d04bbcc009bfbfd679bc9d062bd7b77d173ddba1582291329b6a006832292d6f56f40178588b212c6756e1a839bc7435b230e4a4847424ca5aa85749a5ebea67460f1bed73b6f779e4b5ad1f5fcc5df29a4a3b1bea65d6ddb100db89953ef13b77ccec32b53b741a077caf62b103411f772cdf8f5e44550ad54f9a583aa00bf3f7e134bcdab6e10f296879167912fc457d52afeedc34cd20fb22dab2fee2b8765625414d132bf8970e12372bae75954dfdc4d1748ab4bc220ff8da171fe9391019e1be79d05f85d5c7f96f102ecc58ccfe750e2dadce7a0ef3f327cd1eab964b226dc716b670a60b60b37b3370ae76e9a12a16143c41fccdf0a28450d174906ec3918f2a5a95e341697ed48e057aa26c3b72ec7b7e746fc25e7b7482ac432a50d170e87aaf58bb8ac246135825058358e124eae5af6757297649c1613da8064ba0fea4109e0d599f066489409a8428500606f3e3f0fbcd3bf2eeb44028865fce822d4ab0aadc8071e6502abf77cd4d03bac4d36c720cd5944144fe6b136ab2f7857646090319495fd5001419819515af2b2aa46eca2a38bad40aaab1091b347b0d1b8d2927d12a20884c49d45b72d94a690b216b83c2e477c987f55e3e5486a330a15726964e9df32205372bf9a7382b4887db7d7712e5f205075474b300f8704944f3408a9bc944595c09d5642bb2283b5ed409603b8b001aea17e2fd0ba6b8552a9b300274cf0598add92181713014a2c0a8abdc10a39442dcf72d52d90206bf66b63124705d84158dc9b5d285551cbad906de09392408509b0036610a61dbef36089ab9e7dffac2ad51a5072cf9c271038deae7dc7f1b162e6edfbba5595a5d4c1e6dffa6584d903a705fbab1c204532a940f3041b0d25c0d543fc807bbae2763173f0e86165a693978642b0a04d0e2b19328cb4a2388ee826597b899f69b52a62fd95acc4aef413dc25006bd37b60403301005c2a3f1879aca0e167a8021d401b1bb76ec49e16b65c9f8253022f3681ceed03d99cb4992f4db1c9cc9ab9c92aabdc6340e1a69242d69a127b73f9fd387b11b23c1e9937f8067b654b92163c2bae486b5abc6602724a4351dfdd9e9c020b1e8e601dbd04011b2b5c50c963748dd903b22a23267a1b3508672d341bc1215133c704f1714560401996ec09de0549f081030631b5f9f81fa410e4cc2e0333f4a181ae09b63cd7813910354ef619c5f50a97691872ecde0cce15197f4016867ce190353c365cd75d9d500c15be8478744f2e50a0f0e24818ed252c0e573e1220188f8d58d3240ccdba5edc119f9a6766f6287b516226111ea8d0cddfc05276c2e4b132a2ef3d0c9f7baa2d019a13d4a9e81750a8f94343309094bdd50886bcfdc43eb0b23c5790341edee482316f0e733e32a8b4d4b6e3fd351f00c82c7e5b56d6daf4bfc0a478fe978d21a230b8851797be19c630277a0a57ddc89b6662eeb809d4fbe8970435a159637614214ac630db44b3500c64e70f5a5ba08a292123018cec038a09df9e541050aa8a3ab0f2193b81cd70e7991a504182f3e28e6d56427588bbb6a7af3453f6e7c5e61de5dae307ac57d3eac015c3f884638dc0bf8e572e0a0e68e43f3566a196484522d2df27516ba2366e237b6f295392328e09270ac4093344649ec7f3c049e609a408d2611ceb31ae67aeef9b239933f304a6f5ad87f9d19f8565701d93c9b5de5b8f83bf8c50c77af5acd58b3fb258ab67fd2883eb192be68705b27e583f5216f3aa0f63ae4c4e06272384eb99eacaeca184a85432324232b96e619a1c9eb9d1e0468cc3e5a6c1dd723f0dae67a30c8e26d7b33145234433d4334f0697fb53bb9e7906ad1f997c065084f53c625c0be8e648f2b0de7be43ad6a5c738140b3c320bdf1cc99c1aa3d5e3c0fad68f2c5c93c3ae9a59b11e93d1b3b11ef90aafd0798577421887733d73e9f0117e0363699a24021ec2452b961ff52ce53564c89cc643ad37fdaa85a7f07816cb85858530cef41225a462f11feb91d3787c7fcdd050c76a8a3ad658a8654256acf7afc1758cf538d7b1c6421deb9a5cc71c635cc7bac6ca50c7baf563ff90099a25f4875f63d433ca46eeaf2143f2ccdc5f83ab11aac9d178a45e2668fec0381eb81eb564827263d9b1176ccbfdaccbfad56ad5ad57fdd86ab57eac47ad5f3d90ae483d7bf9c63829eb6fe1f1e556a47a74eb1bf588f52f57e6fe503028c9abd50a081c7dd4b346fdec647f5c3c17c8d41d6b86502da0dc7fb23f230979acc1e57e13c6ddb8f193fb3f19dc9802e994eee2ef6347cc33d766aae1a22bec875a81e6921af6312ef74b13763528111b0912d3033faf3611a194923ec5b40f07160462412156e6f45ba3fee20e211d0b003a6609728c1ee41127d33742944c873235c22e53fa6f44a61f3b821a993ed5992aa8200a338adad872061b35ba46a6ffd44790e91128a574468a9579e6f17f98841823d72e72fdb663688bad89d4c35a36098574ed0ad2717efd70fec33ae62358c1c6c95fa4847c2f61fdf3c23af6fee3c3a4e7c5c47ef0c3beb16f58688af5ac1dc7f07f9ef381384e76987b1adf52fdc8b4def5f3ba5cad93ebe43a89273a9224cf0c0fac937c00499b45d20b5954e4df72a9d3a8a8c88a4bf569348d8a5a2d570b06c6e572b95c2e974b7c98d349fcd6dde1cba7f756ebf4aeeba363fd7d3ac9d0ac320243c7dc084810993bad144161c799042497944bca252549326028b2e1ab54a73781a09d6f2025cd2d3631a6c8050686e65b32ad9996ab253e8deb67645c3030e287e2493c9dbe844a89457804b12d726d992e3c93265052d21624299341ec4892329963dad6338ff911147fb430ad161e5ddffad075db96e4fa7126b97e6ee9989b4c30784e5bcf5cd85db86d9e2426b58d84f77fc12338b3c237388d044c0382335825f191ea8229973b9e32ea149e40203b8a1da3e9ef51cc31d50f4cb7a680d46532a15c502e2997ddd19c269369b54afd2af5a6d64f8149a55c68962817981606a2f5ad0f5b2653ebd4725117a552c58eb328871ead5505d372ad60ae6bf5ad95474d260aae502bd491cb6456ed5c26b389a284a08c384d8471b5441857cb093b82598a1fb3ab563d415556547debe76db554acb72d6bed4b9665154d2397ee2a554bb55ab55aad56abd56a85bf62b15e7577f8322b0cc3ab5235eb9bf57d0a59dfbaad3b05881b7485add66abdea67abf533b75a3fbfa5c2483c8fac6f9490f9ad7b83aeb065899281a5c23998f2b4a175c14cbde92d1e3fdbefbfd3873fb3298a704ed6f75fbb5e503fa7ccab44558caaa5c2e37cd6cbb43ea685c7f9abf00b4f2f5161f825940beb4bcdd66c59f19f453a97c9fc824730a382d881ea9834e2b4199967adf068553356c6c658d1829fba32bb7c8f3af550412aa7d8f194e9a9c606f655b7d4149807d2144747870427bbbc6ade1127abe6553deaeee0c2c54cf6177d8a91fd5992367d66b2bf66c649253f0a04a7cffc1965e289e78f8fe8f3235142a80f4fc1937d11479ad96fba3bf8905d4625d9e59b2922fe9498ef7679a739e6da440c84f8e287e26562ab9203ea67951c504f1f85675e98382041e5f01423f1ecf2e215af0b8ceac1d28cd2329f1758cbc48e3dd48c43130cac3f08162515151541c9f52b3d5194d0cc1076e65078e28a7a66df7f5ae95965ad5efa9b5031ef02661717d5a3de7ecc15af943298abc223ea533f8178ead64709f95a90d9fb122ab42f78049f85477bc2eeeebec3cca71f8fe4a942c5d2b0a34c721e6cd87116cd2b2893e9551fa2ee45bd0083c28ec2d308cf2299618c384d46fc14867917bc138341114bd40371faa7faae1bc40e2ca44ce6d60d6287155226b3e99a9eb02ebc3ba574d5ac3882602281e779d33323ac8304b5d65a7300b24149d0823cbe87259492477663f72aadcbe4f774239c5687d27703f4a8cbfbde7f209dd3db6ba529dc1788ee66328425d59589e943d34bd37b9ec9f4f3ba494a37993cc80dd235ec9ffce33354f68f1bf6bf4b606c7e909e495d1e63b11f3cfe1c6ab561c7fef1f00e0630e199fefe81b5acbf84857bdfed789c41fe2d693984859ee69cb3ca89c31420746a55c699bfa70f5e26e09774c0c1039ea784007c996b122535f0e51d9548d410107b7804eff8832d57fae0154249cdbb1f9eb65610e8ef5a6cd8ddbb03e1624bcb64f62e902e9a740f94ec5b6421e48f836cf5244f064b620ce6617e9e170769d94cc28b3c4e2415c48ecc7934771d934db1a3dcd9403fbb7d9f21b6a165fe8e6552d85e61668a2ab0a3f84e43af946de4c2e48530bcc140e2993e929a6795307a0afd1e261461ede91994e9490f4b8a3f30ec180b800f99fc019b31db3dcc4c1f897b53e64cdb317096fa2657a15d5069a16792c88b28993e0c3d53e529367f2098cc0c2182c1c6451c8b2ef31ec433433c0f27a942c49b35f0c19f35b049cc65e2b713abf9f7cc0cfef38bf44b3f4308506cd9c8838aac64f094f2cf614a7d79254f911f0482a789323269685b4d621b7d5964de51abd846f14c9159a33f6bf40720e4951ab6c92bb559640e9157f22c027d39411afce713f1bebf7efb4f9c24c9cc10d32ba995becacc901faa10f9beff874c4392dbaccd67326bf37ff8f0bb0ccfd45752f3f04cc53c10f1f73e8963eafd6865ed7bfa276c31e9e8e480e8fc508508f8fd3ffc00e221276cf9b0cbe81cda9209902511514f96ee442a97eb4ef3b895bebffad49f9ed11f776e2c8909a763206a8aa503bcb14a8f240fae66e146f68eb022d7f7274dfb7238c933bfbedf8ea8d851f98ca2e4fab2bf9c43f990421739b2c8d53b22e764ce11155d5163172499533f1ce2eb4b42fe724e4345296ac2888a2e5714153b94d051ae2ff321e58abac38ea69c6a7e7d1fd5b332678e1bc8ddf5c39d1d20348b142405dd1bb91691f1422a8693ca8158ea955ce79cd37d4ef7e93ee7bb60091d13c71f74ff3e69c23204d26118beec99e941d01496c0d043939740f7cf135d505530fbedecd9b3c7a5f411c41d1fe9d80d726783b794f25d5a69a59556babbe7d5dd77742c153b232377776fef2f051dee1348c81b572fad337cdf3908a676bb5dea25ca6f2e4bc38e7d46ee1ffb8c172c9eb12fb34ac86761fbd4e089d276f909d4330a66bff4fb54ef503a937f23128994512c7406a2d2446edaeda1a267720ba227b95d3714f482de628b2df238cfa0bef323dd19f4288f7e25b7bf91258f246202a56793889d9eede8ecc474621e94056d02b5aca7fc014496d03b3a5c58cfc35356a64c57efa369abefd50dd2325a9372d89cd378588435109672339aa60f3dd952b66ce9b5d63a6d778ee62e16d6c32392975c319ee997b5204df14c3f9d601bf6f328e6c658a9149363a46cbe2873e68fd22867e5eea3c16a08dbddefdd46e08bb541d6282673d3885230f1c99288c92d6b9125d192a11c235a4245f69e66b1548653a61807fa21bde00be5ef87b27f589f3a123994bd129196d1ec78881c5ac0e618fa8a83a439a8c8720b25b2c82de7f7d4911b8fef496147304f1d4829037b3e2e7ac09ef537c5dd90b0a2aae124d7ef339af6f5dc5a87f326411fd0cfe79303b140e288aa460f6e0b904f4f2ed723698fd34e574e6ff89cb0fc9cb60035097a82ebc99d763d92ca06ed4e90179d5cff144b41d299eaf986e8c099b0cb2d6b29896261bf63ed1982f5a0d487f3f452c7e929ea057925538c43eb650e67e41c4cac610b676eb13eac474bd811e37ae0248fe9fb0a19eb0f6b702e2fab7f1b99335dfb7e4d5f83eb1a44bea2bddab2bfa8de31ae57ab775bf6159632078fac4f8d9e5df0588350bd60dc1802a48ca47571f09f790a8f9fb93344647ee6674828c28e34b8d4873c6e7da365fdb2964ae17a8403fb5088c8232ecadd1fb66e76e6c13c837960a397273d2f779cf9e589b53571fbf362e47ddaa2e3e2e815f3aaf0759bbcbe0f5faf57ccadc9d508bd6a70af9baa01297dd3a43cb68084666e34389a5c8d8e8686a6e6454fde9c3d8e40c50f0c17ad54eae6208d9e9acc2b0952835399c08e2d201e352f130b9e592f03247956df53f84c26a863fdf6f4313ac9e38f7a1148f2b83c0d2e84f971e6568f685a3f53780eea7ed78f3238d68fcc6911fc71e6668393393257637f583f2f4632a7df84644a0a5937bc996ef8a463d656f323f8b2b6b739ed31aec1e00b4b97ed7860e97865847df911e35e4689831adde82efbc3c304318e4ae141b480c61a441e5b40200d0d0d6ec2d258e9c0d5a1a770f2850f2e25e510d7b27e2cd433cf3be8b0811c3480048731033760e00216b0a1021498c01109440002353c80060718694011061059800266182243026280e10504b8d0020b2b080972801ace405430400152f8c143801dda0c051f270cc0049d120490736b1ec7e7072808972bea61e4341ebebf870ee3248f5b9b2ca1df7e7873616f735f1fbb37dfe3da3c006eec65b7c7e35c007c00aeecff06e06b2ecefb75c93cdc263561cde5513bd5c23ed55c542df493cbb540b609979afda9b9a95a4d0ed7e06a70f3a4c36dc28167a283cd66b3d53af03bdc1e7e037787d7c0ddc0e77075781cae061ec9cde1337071f8f122790cdc0cfc0d777c0b5c0cfc05ee0d5f816b81b7e15ee027702bf014b836bc04ee04fec8a5c043e04ae023708ffc032e04be861b8177c07dc0d3706bf8065c07bc914bc333e036e08b5c23bf80cb8027728bfc0c7701cfe3c25e0197c8cb7067f82157011fc395e1137087fc0b378687e126e05db82f3c022e0ccfc275e15bb808782197855fe1b6f007b8429e87fbfa207785c7f7005fbb411ec8c59f6fed0d7081bc0a377f0ad7005f80abc2f3dc14fec72dc0ef5c9e27c0fdf1b3bbf3b44b80f771678fc2a5fd00ae8f3fe1a2f03a77006fc23de1057075be846bc2df2b80cfb925fcdffb3537e7fd9eb2b3c61adc4ccfccad083be21690d37838edbfe6fb6b8c7ab89603d716350a365783fbf11d74f80d7c3f36725a0eaf81efc73ba721f97e7ce4341cbe1f23396dfc7e9ce4b40c7cffcbe6b41bbeff75731a06beffd5e3b40b7cffcbc76916781bbeff05e4b40a7cff2bc86914f8fe17ce6913f8fe57ce6947beff55e434097cffcbc86911f8fe97ce6910f8fed7ce69357cffebc8690ff8fe17d22b096683dd603d301fd80f0c081604c3c172b02298114c07dbc18e6048b0241b9bcdcda6c7c6c7e6c76941bedf06c826c806e7348c9b309977d4aaac7e04600d7fbf4dcea6c86940bedfc6c8692a7cbf8dce6906f87e9b9d8d0d924dd28dede676d373e373f37373137483bbc9dd14dd18dde86e7637474ebbb84915d68f00acddefbf41721acef7df24392d000f80efef71739aecfb7bf4382df6fd3d7c9cd6e3fb7bfc38ede6fb7b0039cde6fb7b04390df6fd3d704e7b7d3b8f77f77faf796761c65b4044649e074e22898e5803579359dd293cfc0e17e3700e176123acc33b7c849170d2cbf6babd7a5e3eaf9f17d02be8857be55e452fa397eeb57bc00be99504b3c16eb01e98cf0f50102e5764a4db1d2125d9d86c6e363d363e363f364036412eb3c9d914d918d9e86c7636473648364937b69bdb4dcf8dcfcdcf0dd04dd00dee267753746374a3bbd9dd20dd24f5b0f5b8f5e8e9e1d3e3a707508fa09b7a294f78f91b37240afdafdbe401cf04085bedf5f8dec01a0fd806e7b201b44087ef9c6f017cbf67735a09aff36dc2f77b3e4e1bc0f709df3ebe51f89e7dbf97731aed7bc76904f87e4fe7349eeff7764efbf1fdde91d352f87e0fc969057803a800247fffe7e3b4daf77f3f4e3bc00711f2fd1fce692b7cff97731a0bdfc2f77f464e73e1fb3f9dd310f0fddfce692f7cff77e43418beff43725a0cdfff25392d01df0fda9c26c3f78337a70df97eb0c769337c3fe8e334057c3ff8e3b4057c3f08e43422df0f06398d015fe4fbc19cd31af046be1f34729a03be1fd4398d86ef07774eb3b101b2f9b1f1b1e9b1b9d9d860493024d8116c07d3c18c6045b01c0c070b8201c17e603eb01ed80d667b25bd905e472e7bed5eba97d1eb957be15e412fa0d7cfcbe7d5f37ad9701246c247788775d808e31cc6ddecd802ca0fb82290346187dbd2e1b636705b39dc96066e0bc96de1705be36d65e0b66eb82d0cdcd605aecb02d765c37555e0ba28705d13b8ae23d72581eb8ac07541e0ba6ab8ae075c170dd7e580eb32725d0db8ae221786011786c88559c08551c08599e1c20cb930325c185c022e4c2e860b5304c385317ae1c2e8107061762e5c98a3162e0c120b172669852bda845cf116e48a3d07b8a24fed8a3fab2b02c99cfe7cc5202057c4a970c59c01ae5854802b1aa57045dd8f2bf25c910057dcb96292cbfa6937c61683c28df171634eb8313f3140313a3706e7b2fe126e8c006e4cce8d31ba313b97f507e0c61cdd18d98d49ba323697f5f7b8323797f5df5c199b2b03bb323f2eeb7f5d196c7a294f68bde8028942ffbd529ad0023a61a455e49832240acdc2313a99c3e3fead35b7ea6edd75ac052456116190691579c477a433c8aa3bf638a3c7516e951776a4a119a2290a873ad634452b23ace7b07e931fb689265e5ee6143040a7f18071b960440be3f240f104823d722e43b5e1792fd68a1e18da55e82ad68ccafeb0547885ce2aafe7a8227937af898a2549d562595cfeb14df4cca99c5a3532df8f73b8a86772c45672632322a61acd4b140d332f83033e7ce0e0c0603434f336c65a309a37db164658c9534a4fefcf292c2d05e18644183d6f53d8f16d90e90b2292b224dac24ab659126d21948bf0c992680b2c59126d7146fb89667eea954c3c3383fdd413b19fc249aacc4f62f14f4c44f5f62d4e625f49cdf43344bdea65ede482676660bdea8bb05e857fa84264f5aaff41ba0c8559b888ea59cfc23fac700bd965cd34e7db9bbad2651565c292e7bb9be83bcde3e8c04ab73542b014d5740ad0652ed650d91191ecbcc08eb1147c4c597338a2783286917519b2b1226443c58652f460c305f80b5bb3247ad28494275162744629a59452ea5577982b534a296577b7a4b4dddb93dddd527edd2df06499235f14417076b7007ede47b30799d4bdbbbbbbbb3d170e42091be56ca7d5fb40cf633a3b2f1d2c99ea07933cfe25a9923959b64d96b236820142fec2efe4a70fd5a8e94fe9e9e420787a5972f9524144029820cb53feff97c00fbd0fc84a07e3cccc37bb47bd909e4e32882040d4e7e212eb18cded799e975431b3de649b170c67777793b5928aa7eef6244f34fb4dfde89486ab504a38bb4f9f5f99232bf53cf99dc025ec042518dbf19e4710ace7493d4f27cbea799252e9d5126832812593bca6124843144a7edf576b0974afeeee626bb5b5e2ef8e145c8287ce3db4ea47fdd1ddddabbbbb7bf53ac5ce9fb34aa953cf13456bebf7e1f07d9573860bf74aa630cb90237257034519d15d09fc09e5799e872a6529d151ca5272a9214e98c5c8af0444ab9a5e166b85b45168552ca75e29044d6058f2e8f56e2e4d139dee64057af54bfda04f3da3a1d52b993ed4c988c80d438ed46044374d3147b2bf3cf9d0d10182da49f20b03aa85a20f7575a53e9aef252d9452fa25940b9f5d8488a24c759d5a6cea64b5ecdc4a1f42e661d62ada48aee69cb3faf271a68e4926cb5596a66c6a493b32254fd820688d4aefdefbb7ae634d861108aa4e52f298da6e9147a03283253cf0396ae38a27d4984f9e3821429565100d1194e983b5d6da5b7a8cf8ea0fc0c8f43d94105a2b6ace2a5d95c028532f2a51095ae045403a21d72ac30aeab8c387091d53f820084fd22839b102ab52da81a04eeb9c8492d8f92d8c24c09de9f6839e6f480a4a37220c6122e95607123f4e9e10e1648912444972d202238648c93989c1114350f0e3440b2743a2d82c153aadf3da626b9643624cd123060ec684185e6011c30c29d280e95e778801078e8e1092a809be3474e0060eb2dcf1240853f4a9aa504443505a20e4060cee109243cb7f95318c88aae88114eb0323f8dc80288b114421cac2045608c9a1e5bf8a1c2cf9d50f2504fc2f8d22c8400b387456378310ea5355a1daa25027156a8671c50570601186152db07d7a55adb6db9e50aada78447df8e3e9671aefd0cf42e330a2fef47d5990d9aabeeff827d0714488c561fb789ef7a1974135ec875e83a00be1cf785f2a83a63d91e62f635927cbf722489a634aa164ef47b7237b384af6e8fb3b4e4271929983254962d49200e1a1d146adf5498048d5a0461f087904256a55522ed7f5249779dfbad4d62878ef7765038bfad48f8ea47aea447a2e96f5ff8247d109161ead14aa44f61c29c4b615ae498d82a7cb2a3c8a8ee4593cd22390aa2365efb6dac2d27791d292cc2ce01843574b02441d42a356653e107309306a55523fda496fb239bc89631df328f59ede5c65c36f1f5fe1113ce11185291134a867a8f79e52416f92e766efe913c9e3650fabf0489dc89ecd52b2479590c1e5675e48b93caa5b9f6ae18ed2b2f6bcef547ba84b4f9736d131efc34b813af6f446a1d028f4a7633d1df3bcfef17ea4b7ecbd6c8ef66105a53a2606221973dc2c9231870a167cd829060a0b7ecdd5fa737a2cc76292e773fd187234a0430f389267e65a7520890a9051a00941d5b53775434c1383f720a6e958b5a02d9d1ebcd5444b59d51d3d6c3d06d33b0d4df8a80f43d47d094f42e883b77260e693775d3e9428101ca710940b787ba8342f1d93d92f38ffdb4185d29fee942516fc25cd60cf3e9a8f965139c399722693b1fa55e6d4afb1faf2a2e3a5c8d8d9942e652493c328bb125387514432b264a9afeab1a5e96dca9ec77a7ae958fdfe1d5584bea38af877cfdf38320f9dbf8f9039b57b644e6d3287a5376aabffe153c76416b1d5427b7a84e4d0f2a9961676046573c814151d9b299c0aead8fc58169b0acaf341ef1f41182e2ceaf238c5a34d9e2309798ead542e8a2782ae8c2a3150c44041868e8eb47f52c7eeb5d6ea5ea94bea791894142994b0d1fee4faa1aac73a1d3af73e9934877e902269319725913c5254621281cab34aae4ee45a826185851dd2b1fa25dc42c7646ed851ea62a0c5baec3849cf6c3f7b7efaf46c06142397c7162397e4b233ac53d3d323b405862d8114bff7c4779374ac8a64d816c9b0261e11c89cfa6305812ca1becc14bfe8ec184ba25f033d828dc861471f926a9d223dec437db73f253a84e4d0f2607ca53fe36f5ff52e3f43f19019ffd4db9f713c43d752a8961656cae6f05dd56529f2d5ad3897d557dd1ae4b2faf6562097c921695567cbf5a30349f278f4f461d539ed2bc293565dcdc99c5ab190b2fad58807b9562e52b8feb8ac3e90fe6e55f7932ba8cbf52b929f51cfe657e4322397d587e1c27e5fdc5cffb32279fa5b23573cda0f8d5c3f3ca2f2f815e5ec42f2963c185562a0d01dad6cd93f051d1f319c878934baee335ac7470ce761796c5debd0b48e0e0c17d68390de93ddfbfd1b0dc973b37f9f2179a898c51b0eef355a974ae53b44e6cc20652e776df46e86aee9b80c95bf9bd569a446d2b25ac24237f651eb649e4f987aec7c50b45956243adc20871d5ba76b5deb6ceb5ad767f44e3765d7fd14b7ae634e85ff4cae6ca01da1848120088260cfe44feaf5f3c09268c22f545ad0099531d087f94c8452babbd7daefb57b3b1a423e84e7799ea7a588de1246933ae81445841107d0105c9881820ac6962188287d600d80c8a7ade3cd4a6ba52f1958304ba21b0c603cb05e96443717c061bf2c896e2cc8e353a2db0aa6a7ca92e846829b4f1474d2f993651285f38bf0add305388984386a9b6bad4a64719ab504b1d65a7beaf06232550108221915618b19d8208d18d4aa1bb9562fd75a6b9d3e994ae1e140718aa52a6e392837319ec810c70f1a4f647863e7061145444db4f404b94c8244428c000919e048729904c53839b1c20bdd90910c5a36fbf5a955af7215ca85c83061ddefcce1fb7bd73f04dd145aeb260f94481907ef41a7ee4edda9c924692c2624ca3114b971b3203713d6b3fc21247a9261c2d28cfab09e6498b035a33ef44e324c84df498609fb65d487a1cb69a25800df8b61a7ee943a75a75f6da852d149252ca158e8ec3dfea33b969e8d8d735dcfa6efbc9fdee8937e0ac5af1c39cd6bfd957aae8b1ad742439d44ee2fb91492474a9e99db243b4acc953c324f9d1d3765c73bbb930c13d6e30148073830b0ddddd62969a530a7f1ea1fadf5ddf3d92b37ecfc0ad2d9b441eeeef246e8c99a69bf644ff43c0fcb6ffa7d4f3ff7c6630f214e4a7ec7e47fd9cb282132d7da127647a7ee28215def877aa19ee48f3e9b3e2baf52d9a565292bf1a6698d0f7ccf443fb0149edc253553a9afefe292aa2e58ba7cc5b463154b53101935c59e92b484b59abcde0f2cd907ef14fb2569a1d3a52b0aa857bfe45528a6e755283c3c658ef73353af72d224f4ab3e41907a5e3f10fcaa16cf699296929493524a7fd2ccf95e29f52afd9cd052c127a0e731ea51b07a948a20cf77d07b2d1e0f424e5f7ae9a367608afef44ce1e96332967249cd58ea252a8654924cafcca6ce61a34e21954dddc584a5cc313d903695aed799e9a55f1019fcee14157e69d904414967aaa996b09df22084bef7a753cf40ff0abecbda88cb5aea5ababb38aee148bfc0faccfe9d68cfaa8cd59727ea511004c10ffcbe989fbcce2335bca06c0d473c235e58a272cee972964c279a8a8f18d165094f29f8c0c92714cde5c797540abb8020ca8a5267922f7559c708ab04311407b257ef03b3d6f044737b9f77ea59c9eb491511f6877d5f480939810eeb4f1db330c394100a88efcd4a6ba54edc6e544024250544524e302bbd4831820689df1441ef2183285b721b4a546173590f29f6cb9228ca0e368405b3248aa21312c508a466845bb27c222b57b2c43df409401405594a389e737f39e2f818e590952e5c9ef1c6e75162f19147b96500799c4d76f2389fe47146c93e9b8062257b4e7628743841a4c41a4426b8e209d109ce8842e4c3064e47b444121522267c60022214000165296794da21da42269ee7799e0c862831a96354b18532a9b5d65aa5082e44c81045088d2562b044891e502314711a238a2088781151591249596284298a445084a690097a44597376a03c49828c5c9fea80c695319a788114299cd02d488461a2f46451a83509152011845c65510953c2a8e244880d336e40ed30c24aadb5aedcb0a39877e68bae7bc994e6882e5e327dd0fa20532224aab03df3f9adb1234e11ecc1f2a4067db625688fb744093c06bbda8222fa4554c0143dd43a4dce2a45ae25a8d5599fb44c4201a3d826442a4f452c7f5208b54ce651277fdfce115718a18018e0c2298280d2834a1c4fdc208e2b8a88230c39e250e3358775653914871caf2c87902a092a9329b5889a25518f15266177f7e84feb8c52efdcc38f9692764b29a9154c76230882a28b7943b3bb274dc7da8f6232c77f6744299d3323d1dd0b6eb48105500cda38028d3a32f084104f92d470630b2a948e1e2d4a3c932a4129a5ad64499535808860870f1873d0a49e27503c53c7a940800e2d54488105098ee098a307caaabf5a3f8f7ef47e18e68958986812ee4a4308db0ab400c21341502d5a28a51407d6b1ee194dc7b0e823c5851d455f428e18dca863063e10f2620c2168961d58931274ca308486b8e20a0feeb04208588a5c66d474825a6bad2f69953d28620da42fccb8c30630a8555a845c71d607181482ed9732a7293d499ef6ee9c501329b88306528470c70d882077604410484d90a2b41b7003346a7084a338683024470e4655dcf182a0268480a3a633834cdf47cfaabf6c25888c78929bccdafcbf634b6907f685c83f56c76b75f7dc73cfddfd65ad4eab1695ba162f65356624fbcf962d81104ad838914e2da59c724ae974528f7ad4a3e30bfd7977f0d3e9e91f499a44129192dcab5246415cb31ca146e0d971ca32825a6bad42e862c0440d9048411d0e14c58e1a45716596d1050e600086b1848a2565142146e3b4e0083838e208296458a9391d4276a222bcc8fe2f22511156645596444500b120047b36a7cecec73ee9a5aa37a6785ea1ee52fa4b7f3a6bc5524a3aa7e74959abeca156299bca13789e9c58ca4aa553e95406d0875c9d89714eb163b4564aa947a947afe77993eeaa0dab372c7d494393e74fcffbdc4bd78222f51258bdcf3f2c3dafd6ea795e8c0acfab3e3e6ffa7b4e713a26dfdb65b532744e2f8bb065775bff4f142d088218885652bb7114d7ba3aeac15309f18376cf1e689e629b2952abf876aac99f712195fd53794a082a065d267d4ebb2594b091cec679d1fcd1d89166095d489e899d0832c7931307ff494e25702ef31e04ad1545dce7452cbcc22e18851f05e34ae1d1b6bca8287bef1fcd125b9ff60d0cad492c3d28c59efee5bd772ce48c2e2163de7bdf38a7bde0971fdfbe0b920f0c08baac6d61241cf64e98be511fb9f7a0155f3753a4f52fff827f78f9d6cb5ad8ba3f2c69bdeb93b8f04c919777bd0bffe04ad27a17b62e9bdfa821add6555293282143aacc2021493b8126d004f2212929292929292c7dee6345f16359478af51c2989dae88df6b8cf8b2dcb6fc923c5fa28a979ef40ee415ecd7bcf499e497f584ec47298f23ccff340100475443bf842ccf33fb08c25488479bed78309650c539e5fcdd0428a35e819538a0c4e79bea301e492e7b774d0ef7c70be158bcac822db3c7f82208824963fece1259207b962c7a3d8ab58a6814ac0e9d24548f33492524aa937756c3b26fd89066aa00602aa413aa0ec5e869c51273276739a09fbcefb1efc120e4e1e3d080582276b4351bc65fa031b933cfde3f3fc367f7cd877b38412481e0ffb0f640e7d4c6f344bac3f9d492ea30f82d68ae23ffd3146938a8a66d12c9a3ed367fadc00962c287eefd51db06441f1fb58dd01bd4441d1f3201d2976f45dd0ee082989da26ce694a6af43de7345aa3ef45f4ddc8759267d29e931ce10f7f199b3f1cbb204bc02fc89cfe1100361b174cd4a44c21fb90304c3d540b28272cf8611b739a0b52d62f86b71ab16ec1071d3a165bc3d224421e7a00f3d7b5fa61afd03b43745ce67de827f97da3567891914158fa3e3390f6ee0973d82a674f09c2297f7800ccdfcb2c755e66f9e2fcd1b88597913c132340e678af237e4ebd4cdd297a8f02c193b5a1289ab00762af847d78494236696cb6b2d0193f18b63e155133c81a5804ced2055d26c59b3ddd9588e9b351e82f76240f902c796ae87c3923e94e0a24e41e9a2685f013a4679228cacffc519241bd674d9e3fdfc79c734abc23a310522379e4efa8113397fd435969f3d8d966a5120b78025fa6b52e34d2bc1c9039fe93ca5993c35139b11c29420c278e3cca2b311f3acd01c9331f25c44e7c44878e84ed87c99448054de446b90093a5bb58d611b665a56fb4825d572ab11cb122d288b0c6ff31e8ccfa13ebccb8207fbec43e665ca02f5f621c2c6518d23157922586a1632e649efa12e9a4f6210909d9a9681a8f1f97443f4550c69fec524e89255bb96166a763fe540870e4515ec96fb8df3a17030c3d934f24450597eaf0a50d07416b45f13f168b8df396c40050d0c0a796a4ca8c0bae240361da522b7d78a3fd92a77be68fb6d5515407ee46b4044a260137d434c986240ae28d2c77f3569341ef8690caa8b5fae0e7cda81072ff0d56de905872bfc4d0990170e486b4b03ac3fa0ef38ebc32c3d2af617f07a3a3a874cc37663deb149a110000008080009315000028100c0704429150248c4451491f14800e72a04e725897cb834992e3300821630c31801842c000190011a2a155e6abc1f0eff98a5a68a59551fd2a84a489e20c874c8d065d4848e9139e58a41cebe32a11dba4bf8ca7e59d069f016e2760b5156c3cb78c30907ad851b7e34b2f12bb8309f5099500f8f69f9d8a40cdd9a8b4e4786dc7a1e79c22c0f1762ea3b93c581235afc569846b9f4bb8d2dd624be75c6762b0cb40ccb203208814b1cb9609519dc0b471e8af3e56e82d4833a20cf7f075f3ccce0e5910252811bc3d580a25a51b9b2b1043332ede8a162d40e9496c8acd644ec816d2eb81f02c07bb762d30146f47d557c1c4f3b1925791b9343118a80bd4e2a2014855459707c043312d447c1625519a49beda77b794d305323f05f1efe572789d90d82f475b97fdfd662199181f1e36bc8a490b144503c22696dd69cc42ae0c68eaa354e69d184480e6fdf616e61b29e27e3b3391351f5a8ac78e4cc6c9acee6f06e3f855bb83f75e4a91f6a63a66d195b8b4abacfa57295081960f54f48d3e2c1607d3cbaf4c87626d1e0cdffa7db23ee7c1bd624dcd616fdc1441edfd96e7a2051f9fcad9893ed03f6043c08cc33078e414d044d8840fba3f67ec6a3d1b58185657b79cdab909708c66f255c9304c7181403414e28967bb049a809e8a078767f5f83ace74356124c3d921235d7dca6ce27524d3f93a107000258c5714bf429b747d7a39fbe9479101986cb0c8b19c435edc7d24d010f6a84067509f6896dae524e64f3e325305f5e99fb30f98b6549c45b266bb43b8146b6f04a50f54e47235939cb3e733aa32f72d374ee3e5317216a01f23256ded02572a5502091f53deaa8df15e860cd84b8bc6140ac9873281e7fed779c971527c028b59eb278bfd7b29a3655f861a920e4bff53fb6d63698b0f1c6154ff012220228bb28809a9602df5b59143024072bb620dd386e90592b1831484f0702650224f4636ffb70f887a637f391a8b951ed3341f8d15208af24c4dbb4b3ca50425bcf8d8a61a5e7852f45d67c6fb8aece4f69472c8759b936592602e857a110f487156d505750b22c84dd1c767edf9b4ecfa6e427c4b163d36c11a8a0641263bad01ba89ed3f97f7d3d459e124c8b92131d20fe07b38282f326aedd9328bc6002bf713557796d67b26c2d6f051ff33dd174ac9240ccf7ff06fd2cb20e1d99af1b2deeb9aa44b1abf5c7f5bfe976c98a015b5e349cdecac46e8d592027542a72903e5c9e5db88304d25966531fad720ec0cd2e3637de8164559cda3d890f43849e0b7229bb8156328d3e1b8c8826398311a26a9a8355cc49b41f17e4869a24756b2210498c10f496eddeaf871fb45a2a866f47e975f3cd55ffbbda9c627cc83646b0cb08700fddef03566c04870cd6f05a19951560913caa45bcf069f13b073b82d08eb822680bd4078563296b615925ef68126e19a92ab047e568566f72f880b2ded6c3c7920f6435db8b7ccba55ba0985d1f8636914b27b3ac29891925d3c66a65b1c9528bd2b20f8c0da37932c3dc35d5e2610da74eca3a81bf340448c8381e484343a49d1b30a827a153419400dbe1c61083c6b1fce9f87319c6328c961d49f18f01ab69a184ff8805cdb99797d3ebc2e11d91120b59391c3c7c8b27b9749505a62b5264c34df438510708a9ee884624e5365c9931a72ab12a351ab0fba5131ea68a055a08e97183945ab5b241b245db42441d72721a628f22e0dea43b312583de79832a168512ec3e10c429b83fce781dbdddc8d1944affdd10d6618340401d8b5404f3407e40e569fa2d4ae00a054996b47feefacb1039855630db1be71a01ba986241d9926b10cb331202d36ea7782101548c083b0d80abe0c76910302942d574968f38f74dc1fdb32ca1e543a30fb691162a5d89c7592fd13d3222a30eae25b3c210829f027d3277b1ab470527740807c75c76190150d6ab032a8af7dc4263b71511b66c64dd62105c6174f015943012d9a4afc9525f06b2a330e1d22a9f07e013da98098a283c2c88235c4dad0e3025a72c4b9b56bb7f1eec012c46b0029cab5573460f1340915b64d97106417eb770a58d0ef314938dbdb97629d1f8673e13fded6e99905f4322388c7ec27b8dbc19a60fc650362159cd03d5cf35429ea07f5d22f7c65c43359c8a329b8dcd661561e77c6025edfa083c20c3009c9e4a9b10f323ddf18f63eb53ba6246ec7053021eba0e91e564518803d75d82f6d5be514e114627a0353dd91e0b113f208ad61b301e01c6603ca11ca0dd6d69d028c735028259b19c0a5de131216a2d74491e903448f2f89ddeda3e9f28b60250630b23417095f29692f800b9721a27f5dc7702ab2528a4856b2fdf5b57068498e33a0d1c3755496f9bf063dc59a570d6ac5953ea41f2a356e581c72239801e41cb63f2f0aa6c861049d889617805023c1cc07cdb67a4e859b7890cfe44b5e6456f9f612799bf8dbc997a8162093ec5bc9dab82251aecc8cb5f0f5e9f61e87807169230830bad3e6834516e98baa95b7f7c44d604398780ad8437c169f508f9af11a0b51d10eaf3848db7d0f4cebf68188f2db795ee06e8f7472fea26e6de4e12d1c3bea469ef99b9dde43bc669c15a171688715a614f9dd6822b3e936ce1ee2942115380d07b05296d53e0072330b93e23e226dd7ba2a466cb239a4e74e5c20bfd52551b2a39f0eb9a5a3338c9161d93beb51181d9521444f5df2c9ea524256001de278e13f33ce5cab01bd6ba5fbfc04fe2dd14bbe77e7c8db5b2a97a6eb32978bfe721760b68aee145c2ba308a38131d8aa3c5c259773ad17cc98a8c289075c403a5223a3029c2d77ecc1a4ba2f07cca287b05b4697b6dd50ab4b53f2ba5178bab69f6383d6b215c8e4066ed4a961c82c95c64e2b3ca79dd2a105c54232ab8a78f12484eb61256c2261a285dca04696387ff69a63a9864a91153708ea7ed81eefc276b6482aab6a6085a2e1989923aa02058e6d137dd880090d4fb8f88453b5b4e33386731c3d1f845c881543a2b4c8fa7ab1c4853a08a6d9b09c38d043a92e7e1b31bd119a6e5f657e7ec23fb956b9082520ad5f66b16c612a1a9c0831e5aa68600d436197144b079484268ac140b53232f2e290affd539abf32816353a6e3023202bc2cc4eed037fa368184605c00fe28446f219afaeacd6a23242a137b29b39e5ae49996961c959d9d814530952588a80dc4a9c0755b5077cebab93de01ee06ddf171ad4fd4ba570f2219f568955bf60552e2113c76c6688d3ebf4fec433505ca5b82ae1931ab8b747e5ca14280d8cd4f9c22268a27a4b94c2df6b6a7951d6b10a2ecfcd274a6414d172f52e2c090eaadcaa7a997a9f3cdb2438786aabf6a59c8f2aeb64b9dfa33936fc0edb53d4b37878f957460c16bee57953b1921b8f179cbfd5fd8aa985c623bfd0e076ec55b2a8794180a13133d1c97e3ae7f364fd60c6fe53a5daf1c278e3d501b11b47929e7a272def07847baec18c995dd2c305ce2b066cd1e0b2410ad73c98b8678f3ddab0252304b47d450bdf7dc0843995b73be8467890f6698b5277c2d638e58899257fb65e1494fd70da28bdc183bbb9ac92f115935c0af0b36f21dd4358ef369df13448ceb8b411838e811c43615ad573d5e0325c6b28bd66eeb9c3e76a8c2d13e45308a6188c96834ff93acf5301eb022e342be4bd924c7339d31b86af447ec0a0d85e0a7ddf74f3a3320b0c5bae38680b2c9a6b35e391fda802c8886014769877642ef57d1d12df146893ab75c08d1a29a2d8f1d305d8e7a761be7c888d55bf8d2c73f7632093e51cf147f2c569883db2c6fd1e354fd739b1c3899d81f3cee8ae43c7090bb1595b87fae8d15d47744a5e873fdf2074ccb1f344310fccc3f7439943ba557fca5f1867abdb8045d727735247e63e133c0431a0d1086ed16145e73b5b34c44ed3f40f55bfacc6a49dd4197f269d644c182bfe309daeadaae42040b2ebecaf4f38ceb0def94ddd53c818a6810fee722457ea1b95663dc19ed578c08b8197aab1fa86705315475532b487406b64b87bd3df5e1148d26b37a0ca9ddcfcdf83ebdb972fcdfc77a9d99e6adfa42915e6b786575602211f930ca5a08f1048e33550518adf89e54ef20d2b928111803f482ac81243450f9116bfc4545351ad5153a696c480a01d498bdd0d005d8723424a732eb11fca180987fb6369539376c9ca52b6fa528a03b8dbf95776df3f0ebe0044ab4557d2f1dfa6ec0cc10b174f9ffa7c50fb742ded72746c128d411be1400732176ed18bf92f95b36b1d9fc2dc541952ac34346b039630735697fc5461a54e91e186949504cc6a9c7c15726a9f9be366cfc0ff959e2c910a621f87bb91b66df692af4c0623d277438431a113c2af5d2f00afb743250d5c55389f0d37656d2e60ada64f8226256bd6d7078d63b1681b78e3021d3b5c906d955ca95fccddf81fff58b84018d1750660d155f864cc9bfb5e2acb537a43a246fa3a5cc8e833e1a48de9d5a67d5141a66aae7496330bd55c51e52ccebd164c52497873cbb54a58320adaf3aa5e4229b1a03f8593001a143145f7d3b8b87f507b7b1a94581432c1278364eb82149d49de36dedeb456780984fe714452f0b14cb7865e4a8ea533b36769dc1f12744a158357a3905393e51f124898f6a2ada1aaeff4d45dea65d1a12b063a670b65e8ca0c12454888b544613c79b7308ee0ebced483b78b3c406827bde96dffa82bd43713ae63e34b415363181db63d428f8a9c407fddedb6973a0663284609cf5c259ae4449ffc6a56dfc7dc82a1613364d5a18fb5c045b1ee93dfa33292a80680328b718f1e99befa68868d7758a9c012bd81b9e3da434e29027d2234469710de972754d9dd3b60ff3306237419b29703d54c533e2acfc26fd69d8f5d6a1d9cd02db69c9dd74a232da59f99657223ff3b41197c1fb52997f733c735b0c63f6abb2e20cceeac7ee7d5e7f2510fa54e816ddce780d2700b66a8d9bfddcf66b4b698b7587c67fdc90127196c08ed2c0604311f65375c8e95b254d23a7bc28b8a1554801ecab5bb9871cb99f18a8647183a7b1dcebf7878d2a185a9ead8572f9b778f14f95b462abe30be7f45b017c30f6d5e714b9855c425723a0eb90702cfefc7f48fb888f0235b3822f239247e7ca7a18713ae62502f32d2fab7d6cffbcde858306630d34945dcc9c9d3d974cf89a678e6c35b952e324969a61095fd784dfbcf4dc8d4c4f0c06657be3f800f7d9558d958d3ed1d10e7fe588734f267525186eed8286e875c050e5e78cda2c0c4b22bf86b379bef23b6afb9d8dfdd1e9f70c983e1f994a3665cc0305ac63ba7bbd6e1c59a2540d9ac140f94f06f738b83e1bbc8b8082d8c1020b83845f8512a075164201059404f4c37f15a351ef7384971e1247f5fa9840ba62af9bc5f80fa870f23cdc72718de5b96b9194a4ccf32c21f7311f31388703b1cd50d72015c3af71620a3c2995da2775a1bf11f0c924096a4c3ef02ac8805728f5ed3a4713f3a247011d9738d05756b7d35ebdf01529b06013b0afa999fb21793ff676dbc63fb2e72746fb884ef3efa1152bb895b81e2055a4c4f92289fa466880277638685ab2713006cd7dccf7168c1912f05500ec2199dc4c195cd27b8ae448afcae172853b6de507fbf841fcd02ee3d98c32e95e773e2b2717ca879fdf6fa4b15ff0adcfb59f5938fd3231cf864d22b9dcae93f8f1c28b8f9ed4595d7d60b78f277d0080c0e3d877e644436ee6d351b5f47e7c201c2bcbea34c823c2fcf302302da85b7ea566b993aa77789995c8f405eaf7bddab02df7bb65cef50d91fd204071d1e53b92fb62b4943d06645f3e9dad9a85e21fce302b771087acf6bc72cee91534becaaca62e373f8cca0009ecbce751a6aa21b1f916ee54ce7cafbc04130199fa1c3656e9fd90ce38adb3c7618a63ed94b09f7182216964ea03f347e843e786ee3ef3a37525d42fa2491e39b70bd28ec16913e4a6d924ea03d67d42138660cbb065c26d496d59fc4635bbd98dccdf7a950625b630dc1d22349c0781699e1543020190cb7fe80c1b490feef033a32d89f87a75fae13ee56e41e4f3d887edff88278e78d41bc243db984d7c7b4489db5df6a1e77585eb8561cf2bd4a27268b1b6f415bc875fcb9362336018ad37049e47d216c1d8dc1230a2e236216a304bbf32deacfab4a9a52fe624e505d4ed2684f79cab9130b4da58ecc09fe3b3c68cb93ecbcc4c49cc04514b8786305044322ade15cb49c51a1bfaa3b272136f8e775623bab61f5ee376e92d61d861235054f1c852e7be20b35a7406cdd32f6ce7403b1e22ae2513ef948d75f65cb2160253dcaa11ca8b9dbaaa25c24c823faf6f7d57c2c383bb8bddf865e63646ed8983c8689203c1187a5fab090d4a0a0091953ffbfe447b02fec700729f17ca68470b119764b2b90ba5658829870c85fdb29242c1af09919aa295fb96b36cd2ba5b886900fb27225a30ba56657fd9dcdfabca83d2f5e9e1777e77328ef17a9dc185354089542cd5449d030d63efc53d37f6e401f01a1ad04755c6467175d88bc005210e6f221102a6261198edccea463b10e0baa2da10f5043c831add1b7394d882efd814588b11941a44f745c014fa3d21a4d0718779f084c66d7aa9010c0d71369b89782dd288607ada7bc73d9670f3b13806b44659fafb738274cc0522c6d2479fb9d63179f4a733f6dacb826f332614cb23824ac231f2c7001b9c88e13724a1f67f6ffb7694efa7960181368651079ad8c47c262e237cf1ea71f2088551eabe62b1b4bb042e07e444d295aa6fc828a09cd1b1f6d35110b42b897cd47acdc8db3f915e87a912d50383703fc5de6558b123d40cc19da7ad4e0a30715c7b42aefb1661059443a9996540849d9860d84565b6fdd1e9b30b49663ab99554b321460fc4bb5b580fbfadc15944476f5feaecf4be3c7ea9af56bbfeeb1fbf02486fa94aa18ed70a24095c1a94b24ff2244a9d1a1e08d620765d2a6bd2b05c42da052b274cc83d6072470d0cdc8021d916a2b24422ddb45baa3b3c8f91c130dd0d5b7e65f80402611ac4c31bf6f9fd0799da34e0dd0ca2610154c63d8dfdc7b48c1b0284b3f630ca12e2ca3a5afc3eb8d8ac5a5f7e109e231e330358b18a588c10c7d8df9167c1ea774b661821a4ccb77e0509213e6fb4f58463c56d9347958cb0594237e2a3218072e1aed3487f125bb0901174de0742ed5872d21b9791f1359aa72ec1201b000682de4ef073c067c31d7283064ad009bd65cbc84ec5e574893d8d94feb2ebc2218fbe458526d184223859d3ddfb955e6347560a101cc2f1358164f307cdeec1c107d3804932e46d892005da82e343a7412b0f8c26d42d4287b792ba8aad9f82b6f1e09fae8b78f9192c2698d5c277ed8fff1ec1ce5d24b7de4f865ecacaba4f822d0ca6c6ede6e8e714fc129862f50f787e9233145444bae64a685d82bb6df18a5d5e4765ddd0910874876dd2d0834be44d7189e3f95e3afd7020b37530daee140a3b1c9d57116f74bc765305fff14a809697deeefd7bc6159922b530ce6121a73c53f0d46a1088c4678cc771c1b53b76a9642446307412f820c4f05e06ae281ea15eccfaafbc6aea917b4fa3e4fd2aec0b3708f444111f8ff14bda82a48996f4b7c6aac196f2d972cc8a48060cf225bfa9c33052421f992f3182f2d7b59c19add1a14dd5c744640e41a2cc7cf16fd226cdc8af995961147c78b483b9477a847831d9753d1f4d7f532a82bd480bc7f64d19ee85ab7de84f99086ba2ebcd7f490dbb535bdc09504711392d5984f18b8ce4da003d3e1e1e3d0fba8fc4546ff8d4d6829fc8dacd954f158f155a5bcc217857c75866f0c70414804c4cf3c6d22bddd857fbcb1e9b5719e8a60d76b8b444cdd3f8930693360dd8d1a09a0cfdcbf5146acdeca6b723ff8416a0f8b43dfd625afc26b9b04640c25461bcd4cd9f2c74aa1be591b6a68c30ff06de3a2b9a12cb7c51c64043e53e133c75168186e4fdbbc97e191c02a1305e3f90feaed80fb00279617704ab3ba1e847a94a96d35d502bb9daea7a29263bac62b650f73fd2f99121180cbce2174fcbbf7c494910ad47138a4b113403bd2f0a3f2deea9f40d10f5f1e5d5551d3b6bd48cb50ac145623543a212283d86068a9c91f2ba6fc0201b192f6b2aa17d50290e5171974f691f906981a0171bccf4dd091cc8331c0dd189abf539bf88d1a70488353a9db138f1d2cbf457c7e07c3c02e4c5c0c4e898c259249c4bc199ec1cbbff1eb0b59244ea6b1e1e88cf829eb287c144f4c493042c30129046de9eff5a9e48efac6281088bfe6e2c8452f211fd5a43b708bd665433663d0ff173200f701e0ed2a62f70b9e47e299f7888262181d441ce92eaca89a99201e5c336715726b60dd87fe146246984bd4320e0279e8c5630defbaa46710e8bc6b11c8163184dc5fa8c8892b37500d7f66c58a6a0f1ac0fb19ff62d7302abee5dfd185086ed6e516f22940fb2bbe9f77da83c415981b452d4d3d900e0e68a9294b596025349bfd35452bea60c1b987c810a7da6841fe2efcd53241a9aa8e3b6bd087a405bc87ce63e5bd83efc11cf4217c85939d3fa82275fcf9463d04133aca875d92960cfa471c1c2b31ef3a6d934464848d11949c313cb8797a65b61a61671f05fbb851af58837faffe32e74dc9b7b59389b02e629408254b0d966e19c0b723f54d840f23279c266f80d090edf5a3361041c4aac323b4ae54abd958d351d91f360ae1d3724a32a089951741df34d44bee7d5cfb1813185da31b241b5f9c883b68965e770c3b1b1284290e4b162312f153984fbc0a43f21c7f84cd0b2517d4c005489e2f96cffaf8ef8c59d059914c78e2b3241621310cfca1a229f6ddc12b19748d60b941b4029ffb74c708479b93308f8adc894038054140253ed81e7ac2bc8b5ba6fd365bf66cac5dd04c183f62c5c188b5a2e9c160ee916dda0ac8c5e82243ac9824ef702365c9a817db9f2847ffa4e2b540155e44fe518bf5ee018620f0b9fb9e47c9d7960b825612f61392f42c825c2d65df85695b48b3a05b544abc6efded59bdd19ea1cc10d21b9a3bdf32cd4c43cf913f42b04cf4f15de539e75d07cf51454af945df8928816166ef0fca3bc7d014f88e23163ffae98b97d91858cae09c3c46b68028e5af618b3360c422b72ffa6444ced5e898b2e4c95b26b2ea0fa2b242213175e85f154376a440b97fcbbac9471d2c4d7b38f38cf466791a8e9bb6dea5565da0ba0bbab3833b847642c6959d1904af796224148b34f895e07e73f0f90551731c792e98a9ca0fc4a5b6a709740287fa51ce6d9adc7eebb299df0b44a534a9b00ecae12694d968cd403bd90d74144f249f366a6fa87e2439a4d024eac938395a3686300bf0fea8a7d88ca5697e9c6e127afdcad3f51710ac4219a25e98ddc6e2a4022ad938f864ee503f8f5e8212687a940674c2f9a0285c1278cd10c89a2642073a2d0e4ab43450f10aacb8beb7c7d603b6963bd25df3954aa371614920e286023f22a4e50620b1019131ab23bb064d22dd50fc315a7ad0211ed0cd9aef41afe6e41eb0bd95e00a727fcc743496069b8e4b4abd0e334dc3743806b47b4a5c577818daa5ea076bf8e40b528f4a11075b559af966d9e9c015f7b08331effa40a36e0fbc70435276a6c8797eba24808d25c678cdd9c72af49d1d38bd0e65ab841487c4afba009004da7662e8b36d244dc1a8a8c2508307684220e886426edbdec30b2785a243cd707d895699fd08409914064b98c968455f125d7eb26adb7d6e32eb1984616b2ad5532850da83ce91525794e8802471019e6260dd3d90a8992bd15d7ad49dc762f6ce297fd075584042e6efdc7ca3fbbb8ead94b6811b910c5cb2bbd0e94c4a3a61f8853787c6c5e2bdd6f45499be3ab021f7b7103ea94a1d8e2d44facb77554a833a4ce03db0cd5f700e06fdfe67b666260a57adf5f76fdd07dd4147f46b5867b7226e9373030c0dfba693cd718cc93954ba9446f399b9d69560a0fd40ae1f331a82404b0b6bc89a3b0f9efc0ee2730f05702a13aee558770f6b84c5e37f01b4d5eca14bf3b11ac24916c6e5eab31e020d7b8ff70e9604fcf17be8694328cb3d43972caf69c4844883eff5ce6aea1ed968c2e7c5556444deca240e55eaa627365bd12afe1fab8258d68f16f62d8dc6691378e1ab0f942bafddcf9866d90cb453b9a955fcfbd8a588c9a9c50b88113a3879d3a9318df0f97318182e2d213f28fe37fc5ebaa663c7f69397341da8a366797f77efb41438fe683a60603ebafb6543eadaf2790d0b4341863962d412a6e109f0d0ac3e9b92631775c866044d57df1d6f6c6dba75a65c25954a78ceb198bfefda24bd9ead925a930a145042b3f622fdc2b2f5944f5b5249153892ca6dcba910116d40f2c8d1e6fbc2b2b1276602c69515c8b450264e5a0fabee7d0be8a5670d7aca32cb9fa24ee8778b0d6d611d9a2b4aa4c40988a447aad7d9cf5a9861f7f0838685be8cfc150010a50b8103c0d083dff51a801b2f62cea61f8896eff7c724157db2a641ac046ea1b8dcc3d8f540eb756f09cc2c6785f9f487c62f79b4a52962da3e715cca88cd6935f063f7835d26e114354d11d7816079b107d029b807109817666be29b2d5c860e29db3d11fa7c073c954022e6df0be03feef8c587c376578d343bf1dfc522c54fcf3ba47d566e26b6de54b11e70025670e22409dd691df50a39a4677e5f3185c1eed125ad7eda40b8e6ae468dfa2f7a8b8f074dc3fb54474c183e767bf50be61fc95c747a5a3a8500340585d35502a6efa1ca78632210030812b9217a4e60a752dacf55c868581a857e3956517acfae2c8cbf5681c6e03cc1372b223274a6978d100091ac4345bdc144f762826f1ee889f5fffc0f096ccefe5461116909c723df0c6f0548c06383f091bcd3470bdda1de80dc8d81a383577d4ab037d6099feda0185cc47c2eaa76bd381e9b44f93a18ea5d8b2399557aaa094386e975ab33a9d3fd60a485c01c4debcc3e8305917ad80343638450c017813c1ed3b38b8f68712eb121c5d11e605352514775ffb31276813e2e02af0b087a890f4f18215585e99e5156cf15a9bf2667a457d27716783866f16ed40c4ad59c9c7aa2db9a68da2b37be6b01185f45d90c0b6476e8f39eeaf044e8125d47d808113f448e90ddeebc2a023e2e43b999050edbc9e246dcffb1c00f303677368caec870927fa69e9c68185b5e26fcac453313de16d295272846a570f6cc4e7a4539133aa2a8231b3649a236d32968cfe6865cb768000578d42fd2a02a0497be00c3c5e15f06ae1ed74709a15920cf77ca1a9d0602fb51046306e1083b612856786bef4be768fc3778c6871a28cb72f69ac62bf2988fab9ec06cde6776be9d2953af11bb9b099842699392deaad3a218a13689ec612f831eda42191bdbb482967e414b0633b742f7fc0bf00b8a23b696943b98b0c57b0dbe9c366e738193e1da154be4ef753013b30489ab77684519d15e6c9582b79c946a89559877e4919d5006804aed30a0c49537b815b66d4b969dffcc5e84561e4260316420cda56131c0754580beaa7085bf138ea2943cfd8c8bdcbdff2eb8298001e7f4a1bb2d54a9a5974e670583e9fd65cbd81a3043488a26e13a218644ca23c34f52d63bebf9de671cd0d01694867025181cc47dd3006f337ffd620e4970efa35e074485755f0efe29d3480e766559fb2a45f8179c1b302e7cfa39547fc33918f354db42618d6570b354fc73d373f8571b86fb9fc567631ce1a2bc4be7cf089f18a9f3334d5c88f3b78e05554ecad1cb5d9a51ed6f1ebdaf92d655f8688cab7e848c3f8e7dd61d5b814a1393294885e7003d503725830c8b784aca0c9096a3ad208306aea650d372e90fe1c1fbc10a2c59d31030388ba8774df3a32e58ef429a85252a0903394df34268ddf5a108b6f14bae58b330bf66acd2b9b5615f8639e810c5104aff38cbca51625f50b4bf1e28ce320a3e70f3141d7526844610eab3d335a50312045ea3a7524712bd509cd4e2d577a0dda0d2ae21e1e2e347881cd9967b9d5168c15e53f08fc4d021bfa146519d4e4c30ce75def323357803088bdc7011e57f7182bb6f3186e95ae47a2f66b9397fdf466006b57573c9038402d0276d7ffaadcca1b987f24386737be7bd9b2502183572ca313ddcab9665b37af72320dc9e4d60902d5db983205d2c7743a4bf09adfa025682fca45ca33f94332611e79a0ccbabeb7e81a9f0ca9195d718237455014e0723b8db51fb2b8998f9775d10d8b3032d5a2c042da4bfdd115a3647b7f31388935bf89fa9f3d897d843e9ce42faf38ac146cb5a17f21dec019f49471cbbd8e1817a7a81d1853d645bff0b7a01ab100c93b93a7585338fd7f49cf3ec013226e055456c24d83ea4bb010d82e0612f47039b9b8df7779c65ce80c07f6c1f4f045b5c9f515b05e2853cafb12be7e67eb41e790a6e5078d6a525bbaf32869a503e13fe86fc56d80ab6ddab17f9faee28cea47012bc6bd81d51ee5db1c99512c2c265358ae88f66374d02df3d65fafd0093ed20b4102662d1964cd6b1b666c50ad0c08f5aa804d3c5b36515e07ad4372878fae43ef8ab0e64d4f7e3af2c2406a418c6ab8a8cc7aace6ccdf94289a9064bd323010a13452c340025e4704e288c29e25c6b139484a390569e042703f596a4b2625995ff84fd5c85a299d76c36c08bb180ad8c83cac3fa8db33a274098d682819dc70a521d775e29a7233b947789ab73902c185908167441b7f15b7cd1c4dd418ecc56945403435cf0edef39e2acb1236d7f4e12a3b28f54af9aa0b3e0d6dbe9437d5e0b12cce82cfe96da5b171f82c405306cbbfbe6e1bdb40cbea49fff3c60fce95af8da6a8dbab7156b76185458c5d21f1f7042d45ff0fd62f3bf1ab9c04d6e4744ebdf3a1f847594860f9cbdb8fc6956dcc70af278fb92cd75973a4e8cf78eded11479684c56cf85d8dba2c7840dd00e0e0fc39a2e7257cb5e49ad3055ce85a7995c2b9c41de75e02f4bc97b5f465972081a0c41133e408f074b3b6830fae1c85217aa3f9733bbf45ef98813dd001523c6e7848c006722b4d53d0052ced627193dc7caf09d154aa56eb5eaae8958ddf567c68530b237b7c4d1d2eeed7f9d72f862e8749b0cd699a3a6403237e3ec95450d7e96a3a26b16e7d7e1a10f271ce7e6e9c79de513537d3607e933f1a34a028fde722cc03685005888a7bb8218b4508ada38325b88d4767d6f01ba3636afb20231651a70c63787042a4aa23bcacfe5ad018edf3bd540006161c36b219ef7fd980313f8db3193e9acb818f0e13f4dbc2b5eaee57fcf6d45c908d9c47415709439c0db2ea6d68f69684169162d11f1a9def2861374455e68d703abc89f018d29282e0898c38fa01e6a82aecbebc54327956daf251f03d7cb12d1c4b18ae220b727bd9e0d4080e603916ec1a81704b8ea7aa9384d42cf6c427589a4a2f0890877dbaa97e11d7755b8dc24fcc0d5fde5c3b0367c7caa9fc4781966757292b4bc16367f4225c6f1228c2e7701e99929135701c0c643c7f6d70ffc885d8ff6a36575c7de7ef4ff0a1bd46f19650951810902dc0b08bb2f2993c3fa52f98af2ab743280f774d592043917dc7c2178b930101748e704efc588d77fd289a19041a4988e6dc02d45cf32b2ba006995d0f92f5e599459990b1bc99bba6531b120e301d9a73a9ac6808e022129e253373036e295d2c4bdc9f4d80be1877ac26f04762b490fd5bda9ad78361872958fff96ccbdf10c7ac9b8147e5a736e426bd0e73e8248b93b2c265ea3007709ba5ef456cccd5b32f77dd94faec1a107d247d4f990086c31345bfdb932a6c4c02dfa3cf5c69ac58045e41a6f62c25a87849dd65810dc3613fd8a42b6e8945082a6998fd27b60fdf3c64098d6e26bcdec2b8200ebca8bc85cbf986cc46e25fd43f3c3be4042192e7456cb3707d561c4162a1805875e1057bf3609ccf6766ecd340408d62071f48cbaeed1cdc0608699256a91e586abf7d0296a76333f34505841270f5603d5c71be8d4b183d8dafa3c13909d6232a26c409784efe0b204841bc11d4446aaddfdd67a853f6842e1bb31044ac728cd630f33d00afbac8e5ac2f27bca47a076517ae549859466b399af19df11b46b89d46730154e06057bf5aa317906d99a76144154736cc16d19750673cc3a7ef9a35753c608cdb1a688ce5073422a2c32aba9c6100162f8abe6dff47b88e2e32cde8859a7b57c9ea5ee2ca1d85cd3dd65056efe6c4fd0c6ea602e23b37e8fc3f56872e8e7eba2125664a6985bb2f3c89e886efb3629d2a66fc9d5fb4ad9eb72fa7c41a8a9f6e4ec01f20fdfab0cc3411dbd7341e40e7ce0959dda3887432b46a80667a1484056263f553a87027b1c324b70990ad4d0a1f784f1ab6c9a3f3e73080223c316e918517912da55aff57604024187f352512e41c84f722a13e790afbd1c166bf7f93be7b610729a3556c25a9ae2831f653bf1fe99752e47ccf0d5b6c1c980d02764724b64cf86b61b4e420888189411e5f3634c5928025c1ae899417c1b11a689e835da358f5acc27e68bcdb653595fa32bce2c20db63dbc590169854ee567e5f30249ca0824eef6ec0c8b8849d1013cbcc141712ef73e3dd505cefbdb78685d09b612a7699ecf1197f408798ec6a6eb44f998c1f7584c3c67c3fb63ce50c1bfa96bbe304ea2aae0534c98d245c0ee21a090f15407b81f673de71f9acdf812930ae399fe6387ce8d09d8786568e5a1ce32508bfa27f686e40a1e9d80231cafc4eacb8003a3d906854eb643ba33b08f21d8e34309fbba8d9389f3c857e6cfffacc806384aca38dd7a9bb68a52e30dd1fb8716f7a11064f201800ecb0596843a4e82e62a03b0372280e7df70bd1e23f0f1047df71ece098dacfe76272aaa00e5ad904149cc2c7dfb3331c1aac28579171b8b0de1c6fa43366adb58058db1205621964c21a04aa4feed02de10e270b93400b8439319a62821845da38800883ca2204d999351d94ca9ea9c1a3fcf1144a629ec97b83a2417d9485fe68858f97480943f0cb0f76c67a9f8d4488e80ccde96561a4bc86afb11eebab5e6db6bae4495ceaefa72cab475243ee490d98f53347c9d8b81a886dab42080939bb174445b11a41ec89cf99762ba82888c0e20ea11fc2387c06e487379591c05da9f620bedf0df3e285b4502e507850384126767bff1525cdb0a297e13712eea346a892a8f350f6b4098b77d923f272cb6e15006c5bda3ef251338db1759670c9f559f8c83afba9012dd4f79325c53f525c8d08148435b061188a133c8b9d7ab84c2972cb4bb4fed6e9926fc708d735e813a1830ca08cd458f3709441b5306ae219749c3eaade1812e49eb4b10f75e9d670992011410ecdb939d8dc66ce30e75962506d45bb52f0e94663c75ca0a24c66dfa4810212ab2ad52ec2e93db23cf4177f50e9a17c446cb9138ab9d0d949e2d163580f579d3330048aa578727d930be74d6276f51292232396160fb4b7a99e3c61c6c47e1ae457aad947693838f99e7b7be1fe95dddf648c31e172b0bdff65b33bd3fa8c9d689bd434224d824c93068134b59558907751b7eeb8ca9fc2a05cbf5c230d45deecb0e681a2c9ca20fc6e302e972d64436f1f4bb941678ab514cfc0dc7c6192a48f1905150e7edc5a17d1109aa5c9b9e8ad214db1668ec64dc1f545d95f076193da0dcaaf399936a1763794e9d7dbefa5caa5150a9789a17c0c93c5a57d39865b8e7bb4f68a1270fc6532d443f186c0bd6774befc5f0be42b5ad65eb89b9ebf1378388a7c187977a42d211ccf92d368804f0aa681daee80f730ebb7b3e0d1a06ac9c9bb1a6c30fe89b1f3525952f72cddb07df3e8763618ee30d083f1a63e2dc92fdc17784fc3400799c6231284525a0f89befe4fac27c226bf022623606e2a514bdc090d48a5fb592256ff9002e1af7ac8ff06bb988f61be75c61b18a0fc486e7f83192d94fe86f43e9d9ffb6064ae4068f003088ed7a41a5255e0c975f15dbef999c4492ecca480ac13f692c091820b987703801838c3da1382f023b325be400d4f471bff1669d9364494ddb3c8ff2a87a48f62e9ebcdc1c0f8a6ad74d35415d532be3faf6df3d33833a91b53ebd3d259c9e1b809328320cd83a06ba704452e25bdb11554fc6e81aca1286afc79931dc0b8b9e471285f6b1ddd0b5b84c15d1c22533c945d80ebf8a015bfdd2967c16bc5e9bbc248f7401b914bccc0065b20d004111bf8ad3aa96b48905f3e48be86d7502cf73579f28bea6ab7351adca6e30efd4393bf76b7df341f0f6f39e91fde814be70f31a977edbe3fe030183b6d625eccea7f848ebc46775477f6b7b9e109da3ed1138c9af8e8cadd4df82fab4a92514b73f7bf3f30acf26f74b14f2260f034f18b6a92c51b029e072f7e6d3c63099dce0393fde358fc46ea9d848836b75fe038f49722838bdd86b702c7d80094c0fda12feb21f46af5225e0a1c8cc4b30df57a72207bb1d847b24fe3377a01ba3abaefaf147466c08e455f3fc0ad6c55cca4b150b1017ff595014cda1107e57d87f0b73062dd4043b40dfd81dc7494f318aa07f1bcf36c2a8e208186daebb77e154846b57512b1eea51455f0a86b133dc9a764cd57fead9a0e22f74c3cd78c29c971df59315ffd88359a150bc99e117debe46fe1d344d0dcf5dd7fbe8965cffdcce734f8f223f43b1728e701db11e5b916ae746d9adcb397b74fd590d521ef40437489d18fa0e94330c28655b90f2b8dad74beeb2bd32b642f18bad3580da293cea282e67749ca04d6ccf0be227434223d40624fa273e25100d81b278c83d9dd765dcc7a191014e83738fc535b7c1f261a4b4001f08ad2d15ebd946e81d29938ef00e5080b3cc8f016c5bfee2d4bea6aea3e431f7ef8c9f21737a2214027a2c9808ac7c9d3b330ae9450ee82e404977eb946a11184459d40f5601bd00100b3a19bd1ef8360cd8ecc27a51dbb3aff0eb32685ac6bb94a5d007cd7d57442916eeee06f1acd88813f90b214974b866986d65a786198d0d16681630bad1d32c1f6b5dd86fdfb4c87be6ef77713cb54eb311242bdc614f822601c391074020aa1e4991cd921ad4981b3bf5a9c700cc1a4708439c8304eb72dc56a7eb5042778cdcdaf56bbb470b3257078c76b02a0f1dd4ebc884da9d7ded80b63640fe1ac6ddec88ee5dfbeca8d7ec797db632ac6b7eaaff1e2530f60f0833dfe295931de9a00415c9a371ef4141e946a0fd9fca59a77ce706f45c6c3b6c88e18b52dda22c184c2746674c425ed210b29954fdf489577f130d58839da6c8d18079c5a963328a5c4fc7aa7bcdb4d7527882725623b28d16dd871b1405cc4be549cad6e22ec96afb78ca075b33a461e327544134a957da0b05db6537d969d7576ad834d48aaffdb5de440245589c2d46a2325d6a4da0e23e64ae15440c008d93f010d77ba3427d5b5a2b72e126b8452daf3b0704289d9df3e1ffe9fcd08b9c1ecc89905adb50ec1b2bc404bb20094e3aa395af3dd2325aea6c6e56f375595e5036cc339b69620f80129de0624b44a584d0632f78817ff2a1f84e89d49bf3c131841a43a03ca941a88e5cf62a5c3b6886afcb7d934315ce90e8834a8583b6b8cbae8a70c8848bc9dfccc1a3d3b8421040d0fc4c497196be8cf4a20b261daef5b677d0fd050ca7e249ffd27e121daa82f23afce9c4dac5535f1699d5d997dccdd013a09e93dd3ab65733a13d28afff80b30cdbb7140bdce1619733430e16c80eb66b8ab10f45c568bec6ef3fbebba7237ab98dc783519e181acf004cff39d2ac75d7aef9e184cf321cad94f8be318c2663fe5d66e51d6a5807619ddb08a32023346d26a13481bc7ebaae4e7315d1650915451704f8359cedf5539a2c66464dd3a07d49500eada8e1f7d4693dcb21d3226e1720c27d9dff92d01d6a0cdbbe039bdaa2db99e704b99a03a37adf4c5c7a18cbee4a147653381d41a92343d6e761d244b9fe16791369751f2c938f8d0137a7ccb5043c4b59e26c5794059a4340116ff2692608d2c726b0b50401b09a1047f458928e858fe46716e547b9c1b83c87b8a867612dfc581b97ef28c135570c3e63289dfe864b74a885b7c682af8306ce1134f23a1872845e4bce0243a834174b1e8ae3a82f7702f87022397a3443462ab55a2b60cdb92cd1b85ca4b01f4263ebebcf076c3250a694af2152f0998fd9646ef12b19108b702d0faa59028ba4ca43ba92f79276fd1732a8bedc0c24f1a19d0ba518301cdfd423f982cb2e306c6412309572d1bba9da525ea547ed9f52e64198e002ead6f17848bd7d97328adc4da97c9c2c0dd07eb71e7a021a37683fb40091c97416ca7cb497f14e525ef53f00eb1806b0f952365431160a2f7cf7a8920937a010e5c8d8f4c16ac326672775e24580722f8e56c7eb9c937c3168df98faa738a4e6af601e9d81e7bfae15939213da300fe7436fb38b0675945fb3f6c33909fb8ca51cf18ccd7ee4a30631f9163521efdb020174b90983b21f7a52ecdb36f222471343561002b82f90699061cf3f0d3919f60afc3f112d7fd5b789f5b2c311769736a7a621efa14f7d59a9ce642c687d1b0602edcff101b6bf8f408d8d616058c5618d9620819c81cb1eaefaf495b69a3f144175cbf5c385e974768e87028b8b738cbac5da01c172fea39c69affcb1025ceffe5b6d889c55df8140b885ce4949ec848792396ce7129bca6c0bda98a33ed8f8ceb916b775e1cbca73cbea80202ce691183ba0e106ecbced313a188f24d025c300b31e57ea3b3a3205d186a38c4fd633509a30ac23dce27fd362c30df06c4d9b7b93f20eb89e405fd08d3480bfb265ebb45702093a3756f2f50ae379ac548f5a21c71701bbeb8d97d11b1553f445ab036f9e8fa5aad72f6f5bb5e0e12ec20d1e2a32ff9ec16ef571dd2f525b1da7034b149018c01204b63d39151423caa7d5c9266dfe4294d1f513df8b85e7be245acaada028d30a31dd8363faa26db61d7700b1dca122c92f4cf1633779643fba8f4e514ee841ed81d64c81e43dfb751d4baa7cd4b1fd4b67aea035d14002ff8121a33e124e1fec8df5172e8837ac78da84be79597ca8a5cb4da99fff9d41c361d3a5aadf5d33a068af62a00e17b902f233aa2f064c3141ec3ed9df7e6b4678244126742181136054ff850d0e2ab1f99df212e4f0f0be9dd799bbb303067851f845541f25e60ac92f621d511de65d33b4b81130af3c8f34db6bce8baf075b74f64fe55c7456bbd8e5e6341e44c23edb526ab3f32fe7582a7de39b0059f4208c552fb15dd4d0dfea912e8a85ba084a82eb5073ecb72f17ee3135cd0582079f7111a0a31b5befcc579ef6670a7d14fd225848e947f9e70691b83194e05b13e0363332ce76ee81a04613b97c7d7931e6ba53f5695985c48b9e8530ad89d5342095d98297cc2ad7137d1f295e0ab28b58045a5f63481ed99b58d24477091ef6058acdaedb45e93de2e3f10e25cf446e642e2f014e90b978c727aadb92b94e01f4a98f654946105a00f788382eded0709d256773e39eacc10ec0516b530d51aa97abeb3d35d8bffe2d0b0013851864eb5ad5d5f1fdb88efa0b7f3f8f9cd849971d98a0bca1c619fab58360e533cf9054fe08b2b796f50fef0dbb88c2f80a4a6958f6f016fc0904c6e8c63719101a04fad34c3d0342b60458eb28ffba1bc96d9ae4f70d695a2b0857fde75bd05b8ecbc36312b433935b790de0ec92e3ad827b3645b9956597177e42a17b858cf5fcfd1564119c113a05bfd052658eb927502f2eb0f2baadb735ca6588c30da2816fd3846a0b4551f8d64572eead5de62ae59fa332c7a8e688dcd7afb810df5ac0284817fd8d61d35c1a4fdbd111f9fd90f9bb6aa9c001c1dba1deccad5d057419bad2e1a5a726423e0e006ce6cb3dba2feb55822da5798204a0b2928769c7cc666ff676ebe63a4d22664017c1ac8cacdfe72bbe827ca8057b915e7a41d936e3e9564d2e0aef7334d633cb11e1d1b3f54b83da66ee48ff00dc418658e9d90627c0b1febbc29cea741d96396016e557966c20395a3d069b60d118c82f3c2df88ae59187a861787c61c7b3606e460dd6b2d99c099c74fc76c538dccb6683e6fc0f05c7a6043e864457e40c5200faa044c7b06863fc5ca78de8754f86104703ded3ee97ff45765c9c8a2bb49f234292b92c96015d3151b76893365931a579af40c9ece297485303165f2900e9b8ca25b46ce6c82a1d832fcd5f576030df026df3d58b65fbbc2a87fe23ccf0565220990679962cb53f1e37f77756731ebe2d4c3c1a5fbb06195a8009341442a92533302e3c3c03a83cbffcc58970489239938060cd6c1d7fb2c883113446877ef0ebc42efb72c48a1176ccd9fb45edf17c4587509f8bbee511f602a71303f2cc4ddb043c4386b8d9b5229478c835eddeb6ce2e9c3ac7b7d9b5e5b58ee11c37f488c2b278901a5c438d923f28e2ec2d0545113061303a33907e32bc80b536fea2411a6b80089c463916a230a64532172c020f262cf76672573d36ce6ff9af6de6b3c86ab6f7f86736c306afb2880dbb7d81ed5cb0ab7e5354e6daff8625b8044cedc9796b312ace1ee62e3639c704dd8fd9ae1c10e1413db8ac4fcee2f834bc470e1c905504831edd9df3186536c52e88bad064c65fbf5aba6330e00068ce86ac63d3b1e549156f87644157c026695b978a680b33b8f6826731ca7591794c5f81f44902517644d1a5cf756a78229c39e577ed4193397df1e2f695464a74fac5dd15739665b72c5b41fae62cd6fca17226e18cf7429b5254458728a3db66f77c7634b9c16177c6fc8e467e5ef7a874aa2c8ed88769f5cee83d3189f716d2fd46ef50ee359ae5c194f17b2e681fd6e824399b0a33d813249de2833fccea82bbe99d54edbe4a5fcabf7880e48990b312476296f0313e9f4ac609de3d32ff81cbbeb3a06fec3b42c5012144d421949f74452156650b537ab485053441c0e6d4fa72872e2485aa6c7957f03e0dd0ee52a2e10cde1cd4e99e43bfb8bc71837350e58d05085164a47259bbedb7752a3c8dd16a1a7b80faa47769808928f04e658f1171f7bc70f3709bae7680846d532e90515685befc04e292345c3960c808ef0d546bcfd7ea2b5d7540fa320292cdc40476d273f4cfe0d45170c10080751e7c840f4cf252020b2bcdac36d34fb7b64bfa0f984b88d8d96b3037e5cdda569ec45083c0e056b1a3c0e0eeb6daebc578dcedb334cb28247cad946343b26d16ab35358c599eb6ae7ca14f61ae5a793e44219008191b0cc92372d14514512da20b0b64320a64999c2ba89a2bcb4c4cd089497d844195f6c86c0eeedd5a4c88048f342d06d8aed21c514d1a6ccd3359639a953132ceb09905e2785eb57b23f1e0dd01720f09acac60429f6082e4f9994dd517807b3312e476f21fc32b43c7a7db8c2d4f02f62a3dc9e00041af8fd3d89a01fc109136b9f3f689535f0273ee7954885c07517cad2a3128482735db5e8d9eb7a304f6c4a8ab724c57e21a4bdf3eb4fb2652044460d3f369b35311ac36d1107dc6e914d1f4376db708f98512ec182dcd44a47179c9e229ccdacf33c84304882d8d9db2b81e82acd00aa3b61d57dc7e74a65bcb412787b2bc1e35c574186842124e4ae31d5f64db01eacc4f50025d60795b10ea8c4f56025a20795b13ea880f56025f3d5f00364dc1f96e7ceb09cf7c3e5a41f96e7fe85b815623cb83ab87f02e716aa6b538b47aa65eb484878811feb5f10398c6cd94d85364fc4edc33997bf04cade8070d97348e32150923c6692f00c997cde086069b7ad468312e1d9fdd38dcabb0894d1a4e051d00cb7cde73cbd2b0758919ee9a9496ebadb7afab21104cf48c8758240726ee18191306915d8c4eb63e4a0c21049be486325831a677a3e09d3487720febdd32bc8fad1f9ce1ae2d18fad1199aa79962e65681776deb199a8b13266466acdc6554cec2f0b2f3110cdec8b9d79da58b729e37a63dbc54c439865d1314c5f762d22cdeabc51d7e0da84c66f445147a359c1ec1e4b9742b94324480e242671685a18db51f44010d78c013921443c022d05b086f8590eff13e9e805edef67e051a69af11e575dea4f24f60c70a4ab31f3fa004ba4fa721006b93cf890de29803cf10b850cdc36be961514f5fee8ff844fd74ada2d732b19d6fb44cdb4fd2ab39669bb4bae8b4aa842502642da0627620589ac634cb55e13aac528a4b8a67c6ee339dd38559569d9c9d64fec6db335b9968d747dc2e63a5f9569dbccd625df4526dc64e7b919bd881210dc03ed50197a799b7d9c7a0fc45047a7bf46dd84662f5d5eaea59bd92163129f4e357cc6c1eed5fc658a8a6f461ac097762fadf4283aaf5f7d277431df14a4e88d2388e95370e08d17eb143d974433650c6721b7f317626453ee7406aba2c9ea022d049f07806253c0094a25703600149b82bd2a45aa5d2d1dfe9bc658673329690e569dc5f0555203e0d0406506e8050f8595070165e9593133c4b2a72276c80bcf0a0cd0740fe4f1c506caee94330da38f1c941c59040a871655fdb2a1ba41fdd0a2c68cbdba7d785d4e16b3e0f36e40039c9226950a7ddc201a758394c295b71691c20f571d776c55762b7700b7fdad2f705209c36720ea4ad323ab7bc17f8fdca99011a156a81cd96ae87a9a5130f1342a810fda6c70e0c6710d31c769599c8afcf9f20a91ce2142ea3d6f36cc5eb5848d6beae28f99afc2dd67a2c6cb9a8b694205f4c07358477a98c180242460654129085b6d9afe5810d85f42dcf3b85c64ee30150f8feaa3b59b027ac45a8d743f106f0c0e7129ad8ef881ac147883b8e2c62b96ac4399891cc69a8f01e769011bf75e36f4f6a0b7835e10d443ee82dcbfeaaaac29950a9d6bea9a403dbe055ff5515f04d6cbb62d5b0601f3596450eb4d26eeea5ed0ce77a87df94f9813050d78604bcf23b158c82114101dd5d9c65d32e239ecbc3289ec56117da641ca565bb3fae786bdc35ef910686f868c830607c342ad114fda9bf5d2b8f526ca8d4f1117f78272c0539a535e19e89f1f4d12474bc8bd3ea3ee3a833cc145757f2c9c2de48ef1b90ee4d2780975e3089488bfe5eaf3737cb8e4812a9c600016363f4c13babc11f304938f988d9a13cd2faea13b87842611e105ff9c186b1b10b8ae884d8169c5d2fb58cddf1a184ee75f40c578571a54239c1d1c2fe6d2b7a4768f496dc8446cc3650ca072f20c326386c39c19a4e0be18e307ac19b34b4c8e144c694d2bba1664bf904f94a229c2f11d7ab47f0ec67c7918b8843f0d2b326c370ac8afc592e837bf5d6cd959c3c400d973de35108b883ca660860310bb3937000707f8adb07867a001f90bcc39eab10b9d146c5cb1f20480cb0299818ec6df3ade9bae9b7256f7077e340fe0d32f1c4ea1d3ecb2e7fab8e82894d3f08e11a51c0a5a60ac1f0377022fcc0822f23d19c20a912644a4b487e7d2e02a0ec1326b73bba101446ec3fc0a788667d8d5b13f3dbe68d8b181fa19d06569cbabb59c55d52b69525a93485a182991a6c17595194f560da33838de09eed48f62e24b36a5a1873b16cdcdff44207e0f168e6ca902abec5163205369e532c6682bd73f3b9cc6afb632d75a055e0287311b86da347136e1b7acd8715d3b8904ffed9c19fda5f8235eb9c532bc02c482903b53e2dfcce575864e50ca0fef2490eb3b6c6d713d5541448ee364e9d45f522c2f9b0f62563d105639040bd2c9e2491a1321c37f7b8cb09345d3b3c0bb0bed580ddbe0252c70a106f50b3b4fc3c57e232a7c0b7d1fdc425007a4fd1d182af40af3b5713d3975e009f328ce5387b7388a728cbaa61f4ad0396d9bae8912842a93a72436b450883be58178253c4e7a4e53005b729863a8a75a98b29f0476eecce002af0443771e78e0fbe3d85a6d3f596ae64a35d7e11c8d356b268f33d43972696d34761c0b068274133665b691ab849ba817e7b2213e888e95bdbc98fd9f257ab8346150cf788a1e6faf8e15a9107d212f2fd3708afc798f759252d27492e5cf280c5a841679a6c289eb8771188b5cfa62ae5f17d4e8f36116f51ce9cdfad80ea73ac509bbdcd840e838af1937e2beecea249fe38dc510fa752a8a4dfdd8c19c3d0f9538e5a7bdd988b2a95cbede841a374c03446faa9b6f608b2ad8665ed92fd42b70cfb023f1dba2b470ae46dca6c967db4b7e0217c6ef0749d1a47328a6bcae763c23584853482fdc04100ba95fcc2ed753be7846dbb730c34ca62d253a70712cf55b036f049b77f5793359537bd86129b3cd4b8a7bebbeda1e43a3c6d82f2277c0812b91b9801c4f93886c3b1f14554e91c9724b12aa6946b088af6599728bff50d0b439692a5b987b03be4c2fb29e60524cbaf674f1816e6d1db72d30f2a20569629df56979b5b036f485ef87a37c605c98188c338ef916c72de52af78ab69561c726aa0c6be17e9f04cd1ddceb8e725b3d26dde761057580e1932f347a8e0cc7387ea5ac3cf3196e1d49b4d5a2bf2ac48c145b0ffa1764b4adb77f15c6f01f25b06c227ab63c39d970a0572018e810ca3806f550ccea1702f4d5d5a6791b117662404b281ac3b7fb17bb0ecb33819ba7c774ef885cdd862c0080ee2c784100b25857a5547e159c773ce5ff688d77369a025b82e4c30bad94339109905c81e0aa735bda61d3653d935780a8dc9a010136dd8ae9a4272014d58052b00de0583f1e95a953af39cc070a264f25759d9e2521d18995b23387b93311357ecf8c06494e03aa36a888ef094d6b7ba88f4ed2783d72e28964b2daae1b4a3dc74b512dac40362543138af028b4b5fc339d8eb2d7e886d19d6a3f37aab1ddc881e75a00f3c5d73cc764486522cdc589f08bbc377c122e54336255787ed5547b3c6fa7fe27711176b8810908c5a9c6ff4a99a09d5d6c81336bc3021347bd3a87de456fcfaa7c9605efcbec0556e0c2a866c1b535b65cea9d874b5169891bdb84241bbd332836d23ba3153201d696973cd49691c7b80034742f8b22780962792480aa51fb039f7761b0cc534e42e62562f857b05443fae555da91e12e30526f0c944bd2b95a3c3d840cadea6487ad58e33e8064d05b962f43b2e3df0b931686e068b612a9e60cbc8d1f1cc6ec08cb4780554ff396d7b0283b6c89e5dd5ff0c98128faed71a757699aeec4a0a8466b97f182f5473c130e26d84941f4e53674154e5ca54ee6a3b6c482d8aadd996c962ca9d29a4ae9b38555fd7b4d0b662b771c201a208b841342cc7118a2c8bec8da6c2f9277af287462cf2c86ee7dbc1d6d57eb555533de636c2db3ec8c7ffcaca51e5395af0d51904984133e98e74ef42691ce4c43c73b52be6a3213df61fbdddccf5de9d08d213e6e37def3de0d205fd65a2c3a331623044f360f371edb0089d44d482d6fdd1cf2b593dd649a3be5076da405438a0ee060d66bd8001d3742a3251af136f956c17355372b6d67f60ca21ae53dc015a14beeb4b6e84a41697b4f87fccedc65a04159cacca88ab086d3d543407c2f3ae37c239f1f1f29797e4825006a36808038c5ca9b843f9d134ccd82b77ab268ad5b44f87d989810879807c1a1fb90d46a92a88958da59ced20aa209379096d9afc8194850614b278b7f02dfa8a903663e6ebc25e9c1695a1cf3699292b8783a1d804c4459cfabbaf39181dfc786e49caec19bc1d84d56de306e357f99e36a83a1ca23574e0a09c06c307f67c33387bc50f8ab8400bc18a8603835638057ad1fa4c30c28bb29708d50cc1c6a17683c796ae2c44474555f03c29a486f1a4129582c5ae293835f4c7004192992d95c32af0a01914461a1956aa2bd635ac9d088079a25f6fb4bf4f182383d932042c82516093a30b62969e5278c7bd235c67c46c339dca072c4217b3dd291c60cb938f697053d3049efbab52d9ade254254a06d813f471d1945b0d164960afe688448be30a322e3efa220ff8468c1232007f428cc32fb0f3ff08932ee0f6a6b6dad95f1fc4a009a9c2266120490c91cde4ec889e7e43ec41b34080ea34f8230823537c2d077c20c88616ca0a5365a8b2d48de7c5c16920b43fb32205ea09d3bcecf87798b42e3b5bbbb2a171b40a539b23dd4de0f2330cca071dcc5469e8ecb3eed7f7ccd215e955fbfd96b788be77f35a1cbe7921657b9b5d6e4a3e3ca475c297078c8c8184621247b9ef81d56eec1a3962ea585a9d8f51614c20ba32253981bb94958d88b2db93970fbb68b23ac056b00fe3ddeb5abaf8c850f059e174de065a8336193d6419a3ba27848833b3862a11d52097c3078d173dd036bb0c841d5f3a754387df19cd08e9717bc5f490a11ec06237d209004f648abbeca6cb748c5490f6669635d61b36290df5316b080eea919932d430fb99b817216ce97832a83f5854152a207b63ad0c1e7246e37451dd8b01da7668564c44ccb2f55917214b136e420e736197de651d7373e10d3d89cf97be8f18a159d07e05c2b2c58ece5a10e9c99b64528724d8cba139b283bf688bc7917319c5a5bee55d867ba58bd727f1bd85ef89ad420f5fbd49f1c7c6d0773224859c528ade73f844f6702ba86bd8c17eccae008b18a5e7863edcc30d6be939305a589168a4c00b74fa5f9b06eb0fa547a10e5a42d199b33cfe8504a7bbab8942783a8a719cd9c670634c5b1a394fe891775fc4e3b615e4a9b2d9df670ddd9ad7db06c5d9f6e9bc104af3f587701a84304928e140723c2ed115d8aecd8bfd173130fb9c70c4cad67a2976004d90d0da5e07ad5d6237ac1770be7e7ec762858f21eb665493adc02c53591e8d1950128adf1d52af656ad9ecbcd3028ac8c8b4edaa5d4542d8c7fcc57f5bcc6eb3f21461c6f21a1e1fa2c8c0098f923c0ebecfdcef25852e35a819ca7505edf5ed38efd09b284a3bd5d2affc3bfb4d51faed97731d62ea04fdb103912112f64b6b099458b210968679c6f4cc33a825b7b71ffab390bb8b6a5f71c07401edce2a2f72d9c1955e120fc9c1fb8c61afad5179a1075e77cff2063f665356611bf2003bf627b2c3e479fa4c9bdc458e786f1dada1be192cd8821eb63ff77db5b90fcdc86385e639af53a652263512af40d9e21e85f7122b44aa9558258ad54ef183e0b1a7579235e79f29c1f268a47933aca48686fa8e5bec58babdcc6ecb38793fe1d8a3536c937d46626fbc54599d792c4ccfe161d0ea7617a77715474ea7b957d2f6b84447ffbdf341f2b7f39139305f92085cf7279287a0d29c49af30de23b521859010b836da267736fb1d64f47f2e61cccfaa3476be4d25dc30a0ae799b2f388d52842b06a9877daefa28340ba6772019c2c2164e3af8e18b2352b6ce5e8fca611847bec7234d603f632978e31e0ebc185c2cd8c05aa3fe09d499eb612b0f25f15ecade8ca881e3f0993568124af16a13afe16cae8fe9cd5d228b9ceb2c0f20092c6e0b277d816f570c83de79b42599205639c6c95cf04359ce225153a955cf49acff0606948d04c7b814b2d2d5be2ffec93b3f61f75b2bdb7e111054ce9a10f17d62b9d8c7be2166e788b68a49f5e4cab612e0ef85d9df7edaceacc0cf4cedcdd8ae629f088e8e4a768fc6b8af087aac759d079767d0266d7b69c5fa71f24286d3fa5aba1c165e126effa702d6b7f3f497b0641b8ec97994be658c8baf79edc0265ea6e4ab89a4bc34a01ebebe9cb5b7d6a5920805b2f1637ccb931d47e74c8b54b0d06fd5557c98fdea3a6f5495c11cb42c328c1fa0e2ef03c73b1a2d7de480baca425129d48229693916584e53fead79bd5b39a3d82e316b13c27e4391e5e9b13ba93a7018d8521834d736c0f8d7d929192c1e648abe018c6d1591a2846fbb814b952526e032d3f8618277ae903fe1a26244d5d8b9304574b48b448116aa73394e00213f72d50f1a2556d5e0cba7c7b05ae8d80882462848bfa034640104c838b71ec9f93c46028dd437ac63d794bcc252380073457132440d6f9b12344ea6a3144380a3b6b82176a137ad35b5eae471fdbd4e0f6dc0d0614a5ea0d2f69cef6d645f333548e7f67b836c0d29b574125ce120db700f0af4bae09fd22a65465a96b397a25d53d4e704c643e90566a16c36b21e8e83add4c41dc57a925142ba252ae82efb320b6a362d8ee91ac8ef34721edd637cd44c8a4a524dd6e2049a54e53153b2aa3249c9f6b517ff76484764970a426ae918c5f44de3360b42524c72123bdc392a6d83463492d3396ee6e2497d58afb67f003749564de2c137082e105f07d32123a5d496268955844a7724186a56bdf1c1318e951db2037f742539a006cc74c74d2218cbdf70ec064dabe56203832f4de8e9d035323ec43c5acd32c9ccbd56a34fd54b92675c2df77b4301d4a27ec3f41dd1517d00ad9a025b5943534d2eedc9979bf4b06712e59bd6e0b4793097769b73b1b040b735c73455a90d0335522e719da56e4c043c813510ebfd0acd70b76b9416d7358c6a2841189328d9dbfd23484988286788437b007e03bfa904398c8211983a1d0028145281d27b028bd45691c96352cdbf8fc5c9c4fc5b2f2b10d7f14da79a3f22a2cfbe1baf9886852b0820a9940a027870cc8c9f0bf8346db32f30f86ff6e129fefd667b77abd2c4353212e8141fc91fb865b8075c09613758ad70161c475b9ed47a179dc1c2537d49eb8182ed487e703fef82e2eef1ba1966fcaf09f836895f4c1c1c57b4dab4e9ececbfe74e01a2b2b1ac0272fd2210c2dddb5fec7127a0ae57063ed0f81a23dae94473b8af88f8beb28b1dc3b02b217de2ac1cf6f93a2a40950b2345fe3857cb4d8d42e46612fee38ac35d21b7cd2ba021267da7873771a382db503d869e4f578a7de92ae6d45283842c7e3ec567b268be5611f2709c685ced41af16757e946b97d6cd3c3d4655b8cb08c43e1b0e8e7e7a3493ee34437dffc5c87ba51af42e10a53dc0942b6c7e0faed6cf8c26caefe9be91e3a772ec50898bf2ffb5a6314548421669d0385b8929bb619c0218677c5f0f495211a7d902c212cb58d848dcc5865d34e59684ce88961ccaf3da4afb3e4b224dacae9721e4b25aeb8bcf7c911c8e9310b08f5f65ea49149a8ec0cb64de46c495eb7b816afd4222c5552e66b4b159ac8084c7e785645990aad65c8516c5c760f0eea3f3de4d9f8b9cda7961a6bc04033ae7e9592e8aca73b64146f609a774897bbe6bfd3f801688ae1e850cab5d02a67e3c2bd16835e852df86d0cf47e837b3940466e0ae917e9855a37050bdd17d22da45ec6f082eba51532442fcc8ecd8bc3b73047af8aba9e655e35e9b7c21ec7746f3d03688588623e08390fe573ab6e6dd153d4edfe46d9c1c3098154cdc6d47e640d2ec18309d4331482566cb453601ca69785efbbfc9af342289c776693fbda9e7cadd8536b61f78de1928a21c3e02574a8d92801eadf9859b8a232e30c0e6e8b8d2f92020014ae237cb5ff1a5e21c577e59050760de621057182edf5af297e50c8d4fc1c478dddcb83727a806d618076081f70fd8547c4db5232777792449abcd49085217f0293ac899baf004265d19682b6d12697420547da1c0be62a7ac9f9600a6c41965601496692be0f4213fb5f72f89b8f084b4cf308f59c4ef35249ae5cea826feafaf5816d9db3568b8bcf9d8ff64d17eae6dcf123ac6257223c6b86571a649ae08ce28e4fdf1a452a08a456b366109b9bb4908ade7a9a6f3258a1d588cc7837237213ab731ba1446eba8e2b594f7bc3b6be9c7ea2a578df7b15433ac95656a4472ed5146f4e3f9590ac88e9e4c16fe73911a743c47fc09df28cc0b0895ec9e5eaffd26a62b1630a8622bf35cce11a81fd90d66000f2a1ab352d224d59ffa841d7ad182b270eff3be4ec97cdf1070d2ae891175fbaf861e2239c28f36b0c938e830832025314dab09b5300bba5403aa483d864301fddf43f1d7f51591e87dbad6dce9830ff35d4c0b0e4656a475318088065c08043c1a2a32ba98506fd62a5b0b6f2c1a52a1c8125870169199f547da901a92eb451b1ff1bde748d273aecfe48550f64ccf610a93ecbb1387ca46d6d8c3a3a6888316355f7c0892bad5e7b080e5b32a09fc815c180e34c27841e1a709830a41bed1465ef022d14bb148dd43090d6f0aaa35be2b85059d74630dda65c9c105bc5b2a52d64e794e350b3754655458dde494f25adf5e1ce40d3d7e256ce6a68b661bbf7d6cac3809d5264df179830dd86ca881344aa4bfebe4f8ab2b073188e5694ec33bcc6d6f57d1d4c9663f2025e5d36337b0331fe48a704b1fb947f6b4a186b944d86d362ced76567bb3d6beca100e51ba9cdd4868690aa9e63add26fc7435ebe676bac9615c8f74c39b569bf57effdd1a84de41ffa9620dfb4a61d2042db60350683b23f02f17da87cbabb24296c19054b86e1a4447a614ff9bf392a20c6897bd57d1ab83a78803a2747490f3e582c3012d9566c121f6a7a2b661f97b62fdf884335757ea3ae8a42837cb52be42c30292d5c0453a9b5a4859d29ff83e2cb2fec5f55afb6ac0f665b4e2ff0ee98829544affab8cdfe246b52e9001667a951c8d6c72d54209c2c95362e2a645653be297a031eb59b6cdaeccbdc01a3e4839175c1141dc773882a24beb901072177c1952b4b4f2e79a5382fce0d8c130a255b886b9b7e7d0763cf2ff391314600e29cb71abaf11150b0e7e3a59b8f293b707e0389e8e6cc6d9352b030b6af3f513f4c1133d2d4b99f37927cffca5386ef1bcd2e4d84754957017981c8f29d9c338a1fcea30d226670e4d239aebed627cac198bd8bf0b9548f3c9e18859d66adae2d26496a609e357d41123a8fbda9c531ff04c188c183091362f7271a6bd4bb12209e37a5815168781b136910b52ea632c8bb4a5b0f0b99fbb737e956ef94c7672c7f078d2d7ece9ea38e8d42cbdbd3f4566eb5be92c7703353992e8c7e822d0194a103ba9f2a875820d2b24a078eddead3be3998adc42fc570006df9f894f62b0106a866e9b27aa73c1a207fc23655a4545cd5b830a77f737703730fe0ae6a0c70e95e742cd8c6a2abf65b1df867dff2ad03ba2caa6c64efbdb7dc524a99520a7c08fe077f08bf7d4fc2080f00ee3b8cf3e47c09fcd30d58fd8d6943f5ec3c340fc69e260ac07f0e1c8f03031bf61291f6ded744a92662ae758af55e6e30c0105582177a26fc7f8e17f6f53e2792f07d39fd5e47c51ee10b5797fb007ce10a005f0e9c0fc717d655bcf9426be30b57365fb8fa9a2f7cf0169940a55f4de4e0eaae7298e05567f9e75ff640a295e9a5b0c17411429f411480fc2823093e13d42d3d46ac37e949ef58983d3a16eab7c3411f07270bf5c3b01fac33670b456eb0f359f6181c15eacb07bab23f22118a4dd25cfe95931004631221f26594b165fcbff183c141f9cd5049e41f9133f67264a16ffcc021d890a18e38cfdb2061c3bf12f4efaf01ac232511ff847c7f6cd714c2c639dce5df2e3fd522135e6edfd0a15889892ed115836e7c4aa1628f640a23a3a494328c8b8182820a03556f8761a20ee5609483368ca294817976c8e01e9fc882e29f79429cb283b884081dfd88eef6e748ab2c2c47160c4c4831ca300e32c51e876256fc5a991c6a853ddfac6646bae527a32494835142e5847109d51d04fad2c7aa831c0e7dc6c03036ccb12a2c36cc6972307617243a6e92febefd61a2a02493f3104556373531312d2d2525212141c52992e9ca181daa937f429c72639481c1e86408ed202e7122c421198b107130824dd3256343bf8e2a965f0791e5676f5009cbd96f55faca89d59e7bb02575c51e9059fdd8c73104571de9fc2bbf50caaf8dfad5562894279880ba0e7a3e5ae619609d8edf0d963f6cd75175cc68636666a69d65e39cad48690931b7afd21261ee7c0f721ff229777ef78c4ed1a9a6c8e658b2733ecf76b06d886c8b8912820ddd45e43cf19be7e5aee8422c336ca8ca2e3f76b9ae9ab074d5845d356165748a5d306b3e3fed52e82ef645a7ecc329820d5577e27037581598cb50375c5d161076081baa2e8bc8861de52fd6991fbf645fd8f8149d1c64c9c0861d75e777548bf9a6e2e0fc8eb26ac2c61bbf93b4ccd59dd89c7386f53661597043145cac09dbde5e53d877c717f3e8cc64b02ee42e07e76aa5729e96aeac8cad9f735ecc1ce5c67721e7e9b4784fff3014c57958698920b9c40d4bdcd089b8d1bd7152786fa886720f054cf4280c3df2a0cfa33818976c90f374ec97dd8d147ba251bbaccbbaaccbba75eb2e1badbfec8e6f6383e5966082baedc9dcceacb02ee42e2c36acee72225237c36257ac1bb8bbdca5c0dfcfc5eeacc9b6393bf9ea7db0f1c3558c4ada87328a5c2deeb9dfb22ccbb2eca947d98eed7146e92784880e196cc85cbc8883d17ffa378b3022adbdacdeb3bdf68549244864c9f60f21f2806cf336ca51a7488e5ced33a7fe8547aef68547b22fb429f88747eeac58e53be4e313b9d4734e9a5f12797bcc18d98a4fa43d80e39f1007e3673bd8161c8c2c256cc8493f1c6c81f33616c34a98a41677fe794035830d5737823cfd3b767c9c07c73fcec1f83a9cd8c8d33171d9d13d72d1dd2d57a53b6b5d6ced514e8ad54cce4cdb62a4373217539c9c1847398ee3389a838d2dd61ea3d3f8491a7d4629d9c148a974199d36e7dc11cd60b3ced3cd8ca0665d09e8c4289db24ae99cf3645d094e70fd3bab5c8956bd2ae10c6be3b25252961f6c775929098b0d702081c8d65c564a125ac3aa2e2b291166c7674749892f0368010a3a7eb4d8a1454c1638b0220929491ca194c410949490e2ca9fa10b20c2e88a2984b042084fb4e46cc1954056a4f041cb1015222e2d39975c29c31557d65c29a5945226e42ecd1275e9002ed5c28395524ad9458a932b6fae9452caae0b22bb20b4995c2ed70b38ac977695c8832e508aa09452ba7541a8369772d0e3870c80f482e386fce5064a20e180f4427abaf20821ae3c22cb954848b95209892b5766715d9925872bb36c71e5d3d531460f8c2842c7081f5cf9558716dc16375415f103018ab8e2cac7a244e5a00370412fa972e4ece84144132522ba983aa0b4a8a20644f032441557beb5c1d100982c71f4040ba5231fd460d5235b92a3c014214c181ff0b086132d395d574a71e5f790524aa9c38c1dde766061e281658c104220b133840d2c363408220a4d928a064855665c3534b842061689860664c84c6089d10c103354492159206a8043e79201820b156e0c520a88a71c36264c9d131d3435b8222ad9045a10b53551c50c69417051054bc3290b620d2a94a95e91810f6b345d49cae175650b1ec640615982c3045c4b58a8542982516471c592a5063151399a58f56a0c194d393d902104129288614a19554c9052861125fc50c61633ca682aa10c28d6652786401465f38ecc919b9d96b8245dd6c23c6b1229ab3dbacc46714a2b31f2f37cd2030d1be338010ddb532efb607ba7872fbfb24056b6844183a82f3418430d39064a0fa49452ce1e862efd4867685239558e2be50e1f3c146145ca95ff5692d8218d9d1984d5010a06738b284c87357a905c1cd11d7898213a25cd1d8af01e38492968c0300cc3b6589a5b30d91dbab841025c40d5708698132e3b610614ab29ab8a4aeec262927f98993f669dfeb62e19143207550999232eafdbc9105a56e212e5aec0b21214622e7fbcac0445d40debf5b802c3aeacbbbb7b1cc0d02b8a47778f3940f703227f38d85a7ca37dafca33fa4e6a2bfb8e1e236b287a952e92ce2ccbe8f7bb3fcdfc03323f9f1c20b392146068bc587aa51786e0fa73fcaac00188cbdd0a37d7598362e3e71c1f8f51c6e913003b4755a64c9796e51a918b0f90a0f3e0ace0fe81971fe83e031cecf9a3087bfff8f5fcfafd3df9ee1509ad5ad8abbcc7df496d61df5f022340e84de01f423b2decfb3d4e00167fb04e3fe6050539b12d057001fa11c027f43b59b5aec40f8847779983134680a3191c75bfcbe8f17da41b7db89d43d3ed1dd679383663d9987fbc48c8496c31c15a574a20afbb8498b4987fa2c7189d999bb9bb2718393ea53f425329e59414cac639213349fe09fbcedbdf0eebb474fbe00e5bb7f177e6ceaa3fca8e85be48a4a685941b95a91dd6f1dfd9915a24e8207b9e027847ac9d05f1950a7c35b2bc5bdc05c1c01867b88df60428ddd3e34be73033d4b1a1627f6063ee20789452ce59b32c0d4dd3b68d524a69d7c954a53232d60a459999a194525a6b381a4a3fc618638c2e80393954d3c6c6868db6a152d9d874416e6c6e6e6e543534373733f6e6e646e626d5dddcdcb8bf6b49d7887fdd169b1c6c7238e17ab73d4715836ae3cd1333dc53d9f24fdffe66ddbe71e3f6e7dc49a05bfe409cbdbde09c501e09394f141f8a3d1c7350bd322ac8c6ccccf1f5e57a92f3a4911fc0b5af358d6a54a31aa5946eeeeeeeee5a6bd9966559a6bab2e56b1e92d8de659f7c45594ee87563ac918a83413818a77891888c2843f2a82b6266c9cccc2c99995932b364342665def1a9f1b35187addd006038d2c639314e49dfbe6da7dbddc4b4752775dc41dce6a6dbb2466f07b65fb57a769076f439fa5ad64e4637f575100e527047e3a590993eeeab76e53c9e6ad945c78f73055922a2d7d993622d3b766b72e3baae657777ecee18a3dc78a6a6636913bdf06d7035aa1bcec6042d494bd2a0d86cec76e95576c7f80dc52827e5229548145ffd3330b07352492b9d81413fc6612a955d39d95a2b478d72e458fd53c6f537e79cabfd9eb6754de9c730947efc96c921f3396ece66edcc0c0da53f63c4b018638c5f48a30bb263d3237a84f50867cc0cb13869c799cb0fff563baaec376ef2b9d1bbefbebbbb077fa10b1c3bb283a9a79b4aad1ea84573019bb7f1436e7e75f3f9dceefb1b62a344f5365f7fe1ceedbaeff8054bb7fb540d27e3d1bccc5b6b53a9d4abc037f540b7f3c22f72fb6b3c1a2fec4bf329affb70d5359eccd3784077e63340f390f9ce0b7b5c19073ff5dda7bcb0c7ed8c6e7fc7da9e0bdc74ed17da558d335e713024693779c1e4847932062a85c9c979a4cb0be6914c98640c5408540ceed15c9ad010341716b63fd45c740c3fc98fba98cba5adb4c61e6e4997f3d02707650cdc43a55c7f2a467ed4b18b5131b29f9aac3805f1440494962827a4cb459f7210468b135c9aba387979fa0205268a3e4917d2e6a24f29fac43af4491bcac6b4f69db59665516badb5b15a1b6b4cbe7f63595604acb5accae98319ce82c8da0e6ec3c66521fea11f372d7eac0583ce7429b29e300f6d1ac32ca74bd1a916cc13d56070298ee118aebf3f33e11e0a453128d7a1281466036355965846c6daccf5694046c50c7b29823b5f324b7b81762bd418e53cce20f61ea6001bc33ddafb4e0c35c352f46bbf98c4eea6c535e494718af7c4a5c892cf44a5c98a5310373e1111a1b478363746c51ecc85b95c3f1cf4f7598a3d591767f97b61fad204260b9345282c46c52f636a01e66a969a4b3b62e397cc51e86ac5dfc7c99f65e64fc627977be21366d58ac5270cf24c93300ef17c29679a308771687e95638c5122fd4ca139e79c4cecb30ecff89f828d1be79cce29a9b981ed97b1ab94524e28db562f16141ab9311eb9fbdfdcf83993832e05fbeeeeeeeeeeeeee965894320ba9ad31e994347ecbaeb5bbbf9851afe084f8a77e8c31c6251bbf566b6338c1103918a9c4b882df6e30de43e71bcd304717292829ca75ba34853251a191c8e6d2a6d893654d99d10856bc62cf26c659fe4146518ea62051b96e65e93a174466d4a56073e7b74539e8bf2db1ce3a717a36307726e7b9b9fc9947bd388b9e00c58691882852f19e2c88cc680ccb19ddea4cceb3e28ebae0d85f8dd1ea6361b13bfd4ee9d7c359cc3b190efc35c97fd8e4c4b1e5603d9bf9fadabb7dae3b49b5916bb71cf795fb6d6b2ec8f6f6c361a1be7d15ea5b22d73ed06d2ff442ee72a997891ed0ed247e539d17eeb8da735e9873b50712376dc69be9b1b3034b89f757c9a7decb9997dec311a7bf9d560f67f96747161482126d9c5394f2ae28f5399288ee43a4007483523ff34ebe75853fe501f97c1ce42f04ba2a6bc3f090f6ad75771f778fdb43a9892f97b3b8acd484101351377b1d4196be0e19d81b80c49e99efd768de7ed7d67cef20c08215dc100591b9a6f8b9eb3a93c102e9a10b3ad80ee87e1a6fc68b5d10e68f08ebf4733711d88f79fce5238b5f06861b464f7d3dc559fdb20b12bf1ec221c7fbffa555718959124589ea53a27a9a07a279a056aada0c14f98838289f85c586ed92a9b7299bb7f9da95e3f296285192e5d71c59893344f5366ff3a9fe0ace1599076a8143587feb59108bf51a2cd61f489c2a4fc90f2a8868d262c10f32b24c69d17c57e2d3cd35bf5dd6ca7c458884b1a95f39b1345ff31c86711c37c48955bdcd87dc4424f6b44b069bb192c8cc17d6d4eace76a59e2f86c33e363ff5199953e6ffcaa43e9c5f1b7dfd72505ae9d79c29210e4e1b8f4864c9fa6d0c03ebc87c2de46a622621da675e1299992309fb93011d90a47605b51011eb518c7b96e9bc8c888345a6f65388093b3fa885ec772fe385f2cafcf44225f66307653e1564ca789ef2587e1cfdcd4be261bd753e2d52a99e7a38f3e59d4fa448bb5a48e57590b3e44ff9190e16e7f2961aa47040031c945fe3d11cd10cc15f8d910d2b7bf39d29fdc2d9373a00aa58ff7c4608820d6b12bff1fbdf1350bfbffa8e1e45f5e5add14be2b7283bb253dac0720f8f735663f272f7ed8042ec84e16c1d82e50feb4d92c126b9b6bb4bd90529ca7edba68cd1b18f1e126e3a3f9c15e2d35721ca5a84e1f8675b2a67c9cfceb0208b8648fb739a82ef83e5680e02a8eefeff99fcc223f73f2399a7906d72138000bc7ff9f2bdf73ccffbf790b01b793ec2126fafd33e09928331496a49ea7f76d0e3625f85ff3c2f3c7243f949e4f5467aafb5782399d0489de4af33ecb368b096cb4a9af0d18a8d1fac1bf92b0658c5761ac70e5af847fe7440fb151e79f05595ab1b5faca076cca81e4eccd5115da6b8310212681f13f4e6d193aeb08851fc237f48fbf0e6d14d2b56318c09acaec0a8d98d2c546615ab9886c307f9717ea44277684a0fe4ac621a0e295151514e6820c38a278c89963256764ada85194a0cc1064f558099610e01418c3ba3b4e6e46e758b21c35db1c471798b1041777559c98a28ec141be7849d640e3b298b0da32b8d1b46a6e80aa32b09291e55bb0a31a8e872115d99bdae948fa3de708bd2aab86136c4951f62504236241bd22deacaa7ae68574b2c7d8d6992cfe4ea5e6174f74b2cf62f3333b6e52fbdac644510f6be0361b3cb4a56dce0ca2bb64e855eba51460ffb7584e56f236c28878ce2535c5a8a4b71a98bb0613b61b19ca464c5d1ede7ec0babbd2bfa853f8f62115bb703ac062906908106ca00678891230c3966f640649db0425b74a878ad8183115f9461c5946284136e8619f80ba622d4a04c462c69d256b585c806222755c007270c6e0846f1c08b3150fc5005073b3b546056582e708ae2a80667142dbdc0fd2dd25b5551078512ae257665a79d2dc061f3618915d2d23d832d42597a8b10104238b8a1c5c18cf2c20ec040634c11a034c560420140184ce850031a636850f29d9c2d94ce502a21073609ecb2d2193f144d218f4123b0010c1df440892c361c11a5a0c02889c996232b388861baa0ca7cc24f46628eacc862440f32b03e97a5f749338d18e69c73f2f8420c274c5e60c60e425348090aa827709873cef914c578f2ff3ec41964d81947375e563a430757f0525ca23de59c52063b2f6fb12108243c61652e6fb1810b2f488e461a342a79b9b26db1418a9bbabcc586a41e6cef64f9199bf28f5483232955e152ea52e484c4f4f224c332ec69ba61127969e8c2149252ca29270a433ee3d38f9b877cf7508872fd270a42110518340f6fef0d06201486e28ceedf4b1b34f395b2c93dfaece1f8f797eb532e10df24b3c7973fda05614ab107e2584f6e08b40b9a07bf046a18bed06e24d8f5ef975edf9e340052d3031b5a205146b5e21f3d9c6727458695ef824a88f370bba07dc41c1b6cc84ff7bf08ef0c70e7913c3b96a144451835043abaf50b5d60262aad2862abce233fbbf27b4cfff498cca7d2089286ba49fa16a560be2b019adf7ce9c56f7aee8540ae3bfd633532c9594edae79ffa2323934af14f2ad575fcd3751cc73f1cb76dfcb36d9ac63f9a9665fc9365ac93fd645fbdca3ad963fcd39ffde41ffe497df6927fe86f2f33307bca3e28f3c85e7ecaa3ac23bf3d8c7d48e6213fcbbe7a9375b24fb5f6c28d94c7ac43a557e9736f847ead756686ce503a5f765d9844769e11fb85dc275f9347b6cd9fa55569343589d4b499196d66e69bd4c8f2998fbf1dacffcccfd85ca91f3b6824f536545ff3fe91a5f26c8db73aa2d1b0ac76664672f6c697f1140dd4483fed3137c43efbc28ac4485c8186f42bd2587045fe157f9c7ae59d73ce174010025d11603749bc520529e57f0edc73351c2703740474c4a9542a9aef9a12005dce08f77c2d67bd10e8c8c605669251a954325fd1a7840d5d60a6063ab2b151a99889c63534b02f3c72eb67a4292eb1c9e71c185c2ed7926b532f696868686868b41e736734fbbd706393378b9b176ff55bbb6e7bea31eb6c55477e61f6a9774148e609b9be698f646edf0b37ae2791cc2f8191eced1bc95e3e10d7a6565fcb3e7b2dfb906c37ab2636aba7f1aceb32ebcc7ca1fde46bdacb78a11023488c68cf3704ba61110bae5c4982228a95241d08754166286f1744a6c05c6b0dc112005df959f648b60f61b8f57be1c6ed4c7e48b60febd76c5f3f7b29bf3e90286bea87a4bfa227381e470d8eefc9aad5c4c6d77c4f6aabc98d6f629925ff66f54d6cbec9479fef670fc4997784f4bbaf375e131b9f12ad8a0e45dc50831250bc5a36292f14723b6f7b15ad1ee759de24475fab5e5f8e3d4a82788c125c08010d358ab0c69856cd33e99610d66a02d4aaf938b2ea6b99fc56a02f2140bf7eec56c0aee45b3d2efb5457c8af77e73ee085bed887e302765f8897ca19b73d6cf5d96bb576b5aaf50b85dcd0859d6ba43edfb08d604f1fc9fc10865bbf176e5cfa61f5628c31c60f09c551d3c5c66746d217fb0dab9f03807684f543323fc4be5f0a998fbdfcea615e581fabb7bf0f09fd8afae7c79f6cc196c33f8ee304352c33dd10e8e8862e30137dbece84be12a016a55f5855e0ba91a39ff45eda3827f49caeb37ba839a171b91a530242ad0bd65be4aa07d4da98bd53c16b9d736a1a1725a1f0e635addcfea903f354075ffc33e514b75f32f14ffca8c3ed8f2ffea11f94635ab9fe8d6158772a54aea87a40adadeb3a28d71011914f21e2097d0a9529cd7db9adeae276b7e684b6745be574fbfb25f348950cb75543345ddca671baddef5d90ae4d3fb43d5dacd39b8738535c7f1c3ae078b1cecd8b719878b0d40b39a778f3bacd39bd0c20e4145db1d95a6b6766ba20dc172d290d2d89737aeaa71c4441b5b2ef06a875f3720fa895c3897de1c89b97ff8d15ff1b23e7d9aeff0dd38d17ef9150bc2414de68b97e9374fd66e9fa4d97ebf1b57427e7c43d39715f9c077bff9a242b022d293e17c65f33467fb18e87fe921e70d0bfaf0507bd62b56a9bb66d33f35c0b2a5d34b5361b2ef3e29432be0cb50cf08227925adb0d572dce90ecebd74f0926e4a5a9957d759ba199a1a1919e64c51683ab1ea7ea82c88fe39c387f7147feb272731384bff887a5bc3192372f19a5c739987940addac9223eb0e1cdebe6157b6e5e37af1194ac1c010756f2bca9189d12c7eb89628ca856f5b8e539f11cb1f5af1c6ceae99637995c87c2e9aeaaf06a4b0873ae0e122e835ec6b3e3a0ab2e773e5348f3f09740dc711e181ccc76da553f998b492087f6d1549a870575d0daf63617d904eb786bc1a08b4afbe8a4e6e1cd45532125ac4c740ed7bfaf87a47f070b9b82934e18b1d8b0939a0bfee924ef7ef5ab5f37f78648ec7966c58f1fdedc909b46e01df165356491cea633f6a70222ab8dd5c76e9d34d6501d2728f66d0fbba158a77f1661b9593af9d0dd5ae4da01ced3e1006eed3159ec6348f3f0cf7e62d977ad7d2fdb0fc4b1e933c4e743f7ef4cd29505565fc8ab1e51ca49b33927c52aa514e41d9cb4334be83ccedb309f0fa398bb534ec523cb2486615d1059a7b78ff83cfab9fbe353fa58b782dfa60f88976212d3e2c671dce632f66a856158d77591857831f931eb602f65d45e4e1a7fa971f84cf6b16a1e5dea539fea07dbbf750701ec6a5fb34e967dc46a865d761e0f386bd53e2cc00e06032b225b5631aaa538739c343087120428a0cb6a979582b044688c2826638c113586d3184d4a609ea4e49191010e46a7537a8c31529f2edd5d7a8cee83dfbdd53cfeb2ce8f506b95b23fca2933a63dca49b12ae79c53665aacb526d56d720560314fc1585cfecbbf7aaed53ebc7d3004b01bbf6d9bdd96e2f8277e37b9e71fe4d133432fc1b7fee22f455c7bc11d9f2fac6027425e622e563430c6684010e2a6c30873c3a3747f47c20d73dcee79cbed0e70bbee2d10d4b8ddafc298e276cf75413a7e1a0297a716b7a9eeb671b9dbf654c5dd805074b7a72753288181a5ca279e8f6236cd39e7973077fe60893bbfb841e98b12d8e3882f88b04fdc30c78d60bc08c20b303e78baf18831d4386a79cbbb20fdba405d6f3c28f9a049c96906ae0308ed0320ae94527431c3955374e18545c287aa71c104e5890b2da02471f14514168e707151c613262ed48092c5c989100b481839c1408805a423a718c4c0429697afc088f1d4dd008b94e6c4c0ca5c568a82088a288a4a308a02092e6c8da2041e44510554145b3c8d020897529a434598c9820e6282a24c992cec408584282c7759290a349ca46002da60e7652529a20411830a2baebcac24c60b6ef83bf4854dc13d73c78d8f71e11f26fe69fe70353f6cc9638c31fed27c4556fc1b638c738bcd611de612ff8925fee95517376258dc884d61032a08c7ceced4e23ea237e8b2557807a79c71ca0b76cf99cdd5aa1bfc1c07a7bde052102e923ec77970e0b81bf5703c19d6ab92748691352765c2cc651e577e09f23d1fd69141eae7f00f76f9573ad8186dad1d41ae7d94c03c5a9a70fbc3d495238cb05a6d3fdd47ae7e7e39acd319dd301f5931f9c3c1fe7c2e9021ec0acc01a5e27504aa93562b224d64e152ecd401f8aac6d58d2f3664a8955094909b78c00c2132e9d38abdb0265cbc68d4142a54c6165f9e96a051362612488f1eff0361a24018628eb021330919e23c9caaa97d88f390a06f582d7bf92aebf457964fb6f6382dd641fcc37595e399c1acbcd82ecca5eee0e8010670cf4796f730a5b4050f38e845a8b01b8684cdb813cadd30ce3a8fb77b0afb8eb0ce24438a578459f3894201893daf1b7fb58a401e8b6187cecff9b2053df839ff192002172f8648e28a0e5b4c196c9038dc0004c40d3b50e30619c084b122c680082468a0028be1c1cff928a8184f9ee8408b2c6890cf952d6426f6b2d380edb2929719bc40b9e1ef6c4530fd15127b70b89f48ec994fbf02f1e5b702f9f1e9b7822b43e4c70f8757107f7e38fc1561dcd281cd6eb07fc31ddeb123a36ba165cb51947be3f296a3d796206e8ecb4a4a4f70402dfe1c39ced31747fe6fafa4fbfa12e0d64a49f73d50eb7722eb2ffdfa96befd94d49dd0ca7cb8335bdc4a3d7dc6912f24b2280924c0ad0650a056c84c977e38433857f7dcd7ef8a08268e7f3817c86cad385348f7e108c11e6708f7d8738f7db76217016e71bf49cf9bb9630a49bc3d83f52497ebfa0f9884705d8efecc625531b02147c9229115594760883ddcd3e700ffbc608bb40fff8aecd3ef00f70439015bdd0bad5a366c5702845662fc10f269751fb2102e6d715e0f792de420cdbe766fdf850405719ffaa0ed651e47be7da056e775ddcbefeca744e6eba45792fa96805adbe671de118efcee815a4838f2c38900f7db4bf90dd9befb5e3d1459f49518115d2a145954ebcfb28efc19d6919f7df58b1c5952286a40ed590b361220e93197fd5bc8c471e7efc41eed6764ff707cb1dc778f6d31be127eba5f91c8aa9b87c39f62c2e14f3d504b096f3f44fbedf9b7ed5353fbe60646d654812f0956acd3da6f1f3bcedb368f3d9c21dc6fcf691ecef6d5afa96516ffaa467027b25886e9cac639ae1bf979a79fdf27f668dfd2bccce3883d8e9020fffe99db1767be12eeb59fdf165f485090f6dc1794fdf601892ccddbc199bf3d50cb2702da673f44fbece767d96fd967230bd33e8e2ca016508d2c2c35036b5967fe0cebcc1a599599da23181e777af430408f1e97bff4e83189d044f4912492446d84944457f691f431c5c7908f18f820f241747d2cf918f24184421414845018ba2824a12084c2100e9b3771273f7ad8bb273d6e8e619e65588661528bd78e44f3f02dcea3e85ae49452e61dc7dfb55c0773bb20d2b5440860518b83326e1e816ad31be4156194aef84177bb4fe982a494731291b2d205c130f9b52a3539293539d104755597959ac6dc151634dc551d620b13cc2df853e3e8d21e54c46703408478f123e4c9ba9c273e3fd1075b88b63e3ff114d62587322536ce096975698d2389f615111e6f6c31a94f0b28cc0ff4110605256844cf0e67f573e9f283727127aec4f1038834a56849fae2448e9c1d3d7e78e0486456ff12c726afaeac0bf3414b8e1d158b6cb5c58d24427ebab1dad5b62a83fbc1d6e1a0a1a65c2e976bbe4b882bda1a415716b6c6576c97d2145e6e08de28c5971b5bf1392529b4dcf83b7086c8b4e86b37ec5b443f25287022400c3b3d98473ebbf8a77265feb984e392dba1ac81935de2a4132ebf4f01b68dfb306edc4feeeeeeba2f3441f7f576610178ae57fa3d9a876fcf59ad1f021805d6f1afede3a779f80f9eebec2503ce43b3af378bcc3a3b3d18ec1d7ee4b34673d9adcf803b3d47acc3fd8505b86d638c91692a54c14532c28d9d0acd42766768821b9f757a93336c3915b64e7e2af4c559a1b674410da118a834cdf665410a15d1400000000315000028100a8804029148249c88da1c7e14000d80903e6e56180c834190c4300a828c31c41003882104180308323554ab00103a0d4d5b6fc441b4dc7d0673d1baf854f69ac1beff3452617b0a1ff09069845c282e5a9938dfc19fcf4dea3564d3dc6c28384e38f50c98302876f595e87e1a495e3267ce8c231cdbcb98ad00bc9ea5853b286b5d8fc44d880603af8f86988e9202fe751b6d3b1fccf6b0a901a161177a0f97b611ec4016383f237b4b3795d9314078117af25a591594bf537a6545b01d29b51d5c42c4cfc46d6406a6344a5e775fc8019521b8b85324a05927781f58e1564f7181b775e69a9ed0636e4b713824afe0508004fb4a7ef93e018ac441b10a41d4bab43b640cf4e00db48f0efadb762cceb9e04ddb38b9e22477a15b16b0e60d69768084b05adc14cfc98cd85011082e1ee745dbb7089639416adcacf981731c4bf69c07371a5ecfbe6c7fc56c7822a3cef4beab994eee7e0d83174a34c490e093b64d02951f83982f40a16452c4cb4f566882a97d127377b73af48f4034ace5f440638258edd55a3d3d652099f7a782b7c2a836b1391daaa8275f69bc355cc428d20fa523f19499b4a2cf5239148567d6d9dbbc6463a5ac48920ced56e7fd32b14486d535ade0cc636c8b28500d0cd1f1e8a132967f1ca16c60d50b153e049ea62e7792586447a8993110b08501e03a4a0278292f859249534b40e8427b9b21414a1792687662f557e31fafb24887a62ec811c0093075d9ca2d20c240ffbd054e500ee4ffe293715c8674f71666a52ae08c19dc55784cfcd9139f2e556f0f23e2f605f2525da4444f3d7a2c84e4e7afff72ccd4448b6732baae3eb4484521fdc5a8360a030c2a84e35baeda07d846c05765cd476a7146c0f40fc05c049b8c3aedab77672cb2a64e3f9f0c0ecd62ca5eeaf64711589d73e876be2a2571a0cc986e3fc845fcd90c2bd050ef6f8d3e86774b480b5af58e5a2b895ea8f1f258c22c487ccb9b60f4f3b0b8faa2683b599dab8a0758e032a0b1a27b303c2cccbf946765718486b0f91a3a05f2748a1381389f7a1c93db976489534d9d430bd40cb5de5edd1c41f810d574ea4473dd8035c9ac4c4ac0465e4ff1cbb12e00a404e9c202c95e209b099e09e1f300da44fbe65e0fe0030ac0cde4d88894577d30783e6783c37b70000b64654e2602ab93f6419f570f0f247e08bd9b3ab316cada8be884deb4ae610f024521a7bfc2f5a2f68173e4c5b4c9e5529fbd5455ff55d154efb4b4f58655be60618c6051ccf57bf66e2d7ec765bf5e77c429ec2e646fd819be596a5bba671d16fc885f2d091c93ef28c9899d1f0b211118b1446b49123b4994de48922afa57ab516af8870614e4dd2d009ed11ff0500cf1fddd311d0567a13538ff8724077286d40daf24c760332d8407125b072e9ac4935fa4717bf8b65d0679bebe07b2e1a729db6474b25858daa9bf029490ba9a11ea0b6e511d4009bb490b143b3fe0867d1ccae9e2a8e5fd4876fc2a9eafa7ba05abc1d22703fc23fb9c8388d23f008ba46c5a11f196079f905bf0c129385eed731ed0a863f1800946a1b46fe703828496f03f2ad702066a76955404efd7f872e95db358b4cb00854488a3b4dd2b15d27d8baf1a4560394f483c2c41c4bcd570b5c29c98757c3a1bda2233b70f27326f1e79186d6a608851fe8e37fd4be83f2574afeb079a92accf6d4e8c246310470d6cfc0fb14f8455083c4f286070fbd46b36209c1c96be81adca7f07914109a915b83f24391386de56e83c7d8db9990fca7096c13d8f98c916857ce69df49fcd92ae13434d820d1c0c65660254ce41cf374f403681452cb3f09809308fd51a0dc1b66e1780f6bb100c1008b7e7ea09ac59216ea69dd440f3d055185fedfa3db04abaa87d4c316af9c3a8519bcadb1a4b56255d5b8988f7b0caf5992953d2a5c8bb4b438724e28992487280f36bf78cbd16621c5acec4175dc5b59ffba15d51e3e8c161457d5b7228f7880c01428d00793791d35ff1100faaa55b30705a89b6dd2f5c39125868d5af434f490b81772c9f4f26a082abff5c48efa4b3ed4681ff5c2dae4e5244bb684958b658a940aeff5ca358f85c9cfd9fab9ff8b37af2adeb5d604a79e1e20edfe949103918906fc3334894982527d7732dbf9ff65237f9fbea84fcc1b078ad62a29da56024fcc32d9241ccf86497a381aa65b484e8d9e7a4ea8cbf88b0caa65a4829e8878fce0e86869b54b2d4dddc115abaa123e501102e8655dec510d81e2832b508698c2173baf79d6f9e146bcaa566695f7b6e7f63400d30ca013d796fd1780785859605a9068b9f86d73dfadd1bafe274b106fd271abb80bc401f7ad58d53d593618dc4acfa24d9f0793e6892916038cb9dd343c2d7f38d5e756f495018de2402a1304c135cccee45965ae5beed0ef0ac658666920ffe490a39acd5824abaa351309e1abfe3809c4cf5ee37bb28334b95907c68930a1d569d94de83afaaeb4c246f25a8009690f5d748d43a721e41fa1ac2fd88bf742bfdeed02a4cdd0052bf2e7b6bb7a0596d57c7da36adceb09d8766aea5a8faeefa5dd916d27932d447fc9a2fde0628d82bcbaaf54f36d3a8ade832d9443b1d893a7eefa2fdcd0ca97e7544c3c612242d2a5a5439058f0a231f7092660c0c990aa6d9640de43390582943aa1b4eb273eeaaf61ca937948952d9695fafa955352fa283c78bf1be3a2250f795cfce7499f7469e13e3a1d9f16a6ef960e2981cb3a62449566fefcc5286af059398ac506121e76b2e4a21883a17d640aca9fa24566cb2259085f394274185a1ffb83df4e89314bf9e13455cb9492eea8ccf7599e6d2ce71d2bc86bcb3d76f2c87db2d7d3c4323bde5a69e10a584ec0555a5d003adb5b62a54999c611b20421b2592e63503431438592088e0bf6d8a9f2c1ae41d705b060ef2e93256d02758371f506fadac02494cc3c09fa1ba933edc56891678762c2a2c28502fe228947e0f496aa636bae78165f1319a1936c4eb6d6b9fbe27aefc44b9a0eda99951d986e837f84859f833f8f599420ed724d643b4608f54a1f79b5b979dcb2aa4a04bc8faf00c23e525b5d678b83f5377ab056ecabbdc51bc1c36248cfc1c66fada1fe90da59f0ccbf8ae0ec531d6cb070c4f8d1ee23a0e4262efa24c4c188e23fc30c812ba5d38667e4c309f4086fd7d51ad9f06111397e9541d7cd8a970561eab1f81be036c21948ccca010d646e011460716e3868679277fae678e23ac043d20c0441cd465df36b69e670e5a9f9ecd3cd198de2611e41c8e645b8493d5e1f51be5b41c0e52a0e3061089149c20ac3078d4f2c66b3f0fa577a12b809daa26e77a5ed645ad4a4fe9c044c40fdd4fe74d5ead20dec6d87a1471175b5d3cf329f070730977f90f9073017134e9dcfbe57c3606812d84bf781a653997ce5c198ffe27b47c7f49c414fb875165710634f918ecc4792cc1dc0398a33983045bb6c88f7201ac6c093914b3625c2f15a5cb100b8e809e9464a62f3af86c3b99fbc9df3dacc15435291993e90bfa4463bbf3a06dfb33c24fc1d4a92a3331ada07ac219de4a7a16975023e80887410040ad6c361ecbbaca78b46efc5d508cd65334459a965eaadedd55a3ef34c14a619dc0fa3ffd126d9a905a44bfba53adb2d2df5dff5f814c8db92b00a1f106807efa4c3c5a0db207ea18aa4883e163c36d83f5c5166bbc615ca8630d7d432a0b395cdde492a6e0cedf4d3bd290552d73886446764eba030677f8535a268e8b005cfb0b3be6cecb4555d0ea0b18f149e97c5d139669c4a831321ccae86b9286e86f1ead07cda1bed7c36aa05909f42f6da2215eaccb35fff662fa829906ab6f5ab9bf514f079960f6fcca9599e49d4d466229417b3cdcc606c970eeb0e2fd29c99f15dbd80182c0de415ba73c343c8d95d5291bca3e4b574427725337d2a5d5778312670af038e858ac313ba93a864fbc0fadde6aa4e6b9ff233f03218324b8b673140d255ed6c5250434eb677e2942ad080a756d352567474e5146e2620ffd3e3e952a245b1e0eefcd7bb26cadb4e3750374d1e1a35987f72e6697ecd04df0bdc925790024e2d26e2583acda8ddecb2921bb20f8724aae6b7c20901da385e51d2adf5592f70bdf707649c2c60225ec58638f5cbd249439a0b650b1b30053ca0a54501e301ba75ad0021a20e0ba23140009107440edd64c77afe3cdc3f003805752b77afd89bce419a9780d3198a735cdd9711cd4ce4df108e3173377a087877ba66569ae8c3f86685adab0eb91adf480ccf0faf906e969c33aaa904731ba976e6358da21cf635750cd85859cae267e65d86dd7a371b8a39e2c4b9da4dd3548c45aefac13fcfca33a2ab22c9d454141871035ae138944a62156a836c97465fc5cb207b1dddc9671081365e095fd7c9d339ec58ae7ac930902bbb227840991bf0e9adc2164a520fcb7273f22249c60d59cfcd1b99fe7df5acbc704ff3ef551b0a6d5576fa320bf84a8bd7d94748839948c06d45c933544f371cd33f354efc4d2353b2872362bfb37acdd8482341cf7e3e283c966756bfd322a1567d465e21c4a43a384e2d4e3315e4ba1af549acf403da07309621cea154649dc9211b98d4c63a746a3311044a82e74761da7e1fb8213a879e617a552a81458ed3cd67c534725fc426bb8f041feb1e6be50e49df519eb485fa13cb5d2f2a3d3aca81672d6dd2181275c762014e74bc81bf0e1fa62aeede47242f7e10be7ebd367802f27679c8bc0b1f45f41e5e27943375f7a142a135eef8118ef95323b8aa442f5beefc937ae4d7ebe5732573dafc994f4368a0ceee59821c2800ee8df2f1740787ba96fa84767e03564a208bd82bb286037144f3b6267556cb5fb7368c3b5c20d0ad433cc80d8a41603a3e8734b100166f985dd17ea6d55683fa5cbfeb5c036e08b3b73a09d0f1a5cdc7bd03cffc6288429c341f9422486c3db4d6821c2624c82bd2f965a0e12309453a058186cc5eb2a02fb9923828d7e9d84b0f392660e2c83981c7e2ffee732ce923830f058c0e40299b4855ac1c579c3cd2a5659ba54e3c410cfdca66c40110a759ee4871690134807b94ac4eb7914eaf356dcd317c5b4686b764018f90c8f45414237d42f2c5868bb073a8c2ca0aeb6cfd20882338ddf1667f93093d2a7b7a445c688feea7fe06d0579d4fbc09f5662ee29a59403465ec0a1215254330c5b1aa1855a828e57588b5816bb488c983292fa34feb3d9612f098b1f3738ece2614a49eede9c79b8acb0eb2304a7d6a7d463ddafbd2d728aa6d909345c668edd93df0f0bfc0b49f9b0df7cad516cd8e83625543789da0f1c8fe7b07338a6f9a277f1d17c12432574f451f3229f9e5f1b6580993f2db4301e94982725de008d900ab9ac603c090af2118c5726d259366bf245bf1105a885e5532505015e6473f4d20cd0a629e5e7ffeeb458954910289ce486a0c28c5bff339e3c059d6c6aca229ce4a984f0fb3b8bc1792bf20441acfb049f0f3a71bf78390d9597733db416ed9de0bd3a339a1475dfadd2a5408e894359bb4b0f5dd9d2646a0ec04bd9d66211383ee0a88a733811eb145a71159dec3023c7e5037a756fca772877494ee48d16a500fd0c159c7c604bbd75ca454cfe2977d878a95d24eeea57878e9850d9fde8daadd74c83a847ae7a3093dbb2b85c6a8414f47b84d09dad5856441dd6d784627097ff7f698555db719a750a3665dca000c6da1b2c400074c82ba66b24c4df37b962b1ce313065a874c1a0edf2ea0432ec8d705de0d2d7d89aee0f780ce3262ebf8c63f0f3a1f11f34b95618fdc710cda589f41e5b8979cd4aa015d80d440369643cc669b3b5711c4881bd5e3ec5db6bd18aa2b8c785ca7627f1d899ad6b4d5f97b33ed4c90f3cb4d6ae3a180c60dfa38b32d1d00afadfa1b9879c185094354cf01e74f300341e3f29601719cdc793cb41e0b98c980ad0f28003a3608c3848ec9739cd372e93046b9c82f3901df5cbf218d1d370bee8d709338f59dc17bc2d118603a37e593be55746f28cd288ebabbecffa6036fb04ecfe4b089dacbdc8f9c505963fe1547049905338a7f696b5b5823ada674b025456fbd26c1263155ecc36ba52701d92e16831e0fcdfc1c18b66bc6abd2f12ab76fe8538133301715d2aca729fb9e8dd9d7a8d78bef2509178d381740a609e53e57e0f950c0271841c2d84e0f1291ec56195a1408e24870528b2e7ffb045f2d6194a45dee1a5fd2224990059e47dd74eddf46828951dac4ad7e458021dfe516633ae4ba0c339493ddfc833c4251b0c53c143d615512ab5d07efbbf419fcb4571b82f3ff1ecb87c281b6c3d88f8d2768b252f4148efc0aa16262fef048d5ab4d748e699bd82194a85cc53b722110ddc5afec73bd22d10c9a291aa2abe55d33e896906909d650092a20e404c1d80601600e3bae1ed8be5142719c149a3a1b19aafacaf71ca20e5b6b89b1a8d41f05d4cdf2631ce0da5e06589ddb7e6e5b0dfcb475872176e9f06b41b8f4df1780f70a62d2fcaf8bd2f9a4982d3f662b88d91e5172c5df37780b46be04f92778fab2a74cd5a8007f989001e85d80a83bd418e1a33a227671ae05062488f12ab1127dd035b3ae7dec2d3e5a9b605f5b3de7e3b1b096de0785b76b5f235966ce2620efadb9a7eef390f19367da1843d86bce53d4a0ab347ec9cfad019d7bb8c4f1a288f306d12e6ae31e6f0357370add460f6eb77bcd7bb24064a5793cd77d34bad07296aadcc5e8603c1472baffda450f743620543d793fcc390d608f28bdc15d74a9c1cea169661c3f8debff85b39901784c03160e8059bb4ed951c9f028d88ed6c03c8e802fc9661c057eaf651c3a85ea9cf527b81fd341cd5e123174016c733d23a62bb2fbdc7a5983a3a810188f073888f1be781baa164d66abf6446c9802a8e4ca4ae5486be721ad940255c0c375538dc7d4b74406941a60e88e55803500618354201d71854c706b72dc561970de48b3cfc9c50ec82cea6bc60f0ea2a93fa1e142f545105e9caa07036eac23f47d25db03fb5485d9f950268ed143c037ecc3349a0747a921c53996924a400cc426062ed4bb0b86dc6c37047cbd037ed79a56fd482b02520679bb234eda98d21aca843d26e89b1205bd37434ff634624f79b008322206880e879817f2081e8475865ce4fce6c6799d62568ea2b2560acb918ce51b486631bcd4f4d5934e92f442c4d6d999582168409b96b06d26e954d6c60d6e37c3883918f8774b38826a9cddc84973f0e9346002ffeea782f72727d4b1667ed8a1bc67bf215e73b7d53cabd22009aae6898408d83ac5be9d92adad140f759a4689960e62e4eab29bb0a124851bbb9084d8ae85e50d3641b84886f3d6eeb802a6a9d77523fda049dd4d302fd3fa6082f92f39044f42e98034e37f9f1ef90c7c2a0bf56db5c36b6f176e796baef6811941cd798097bdad06ab51eeab5e6ed5cddd040be0ad9eb86897906823b7e459f2b201421b3a86b0b94cb96685bfa5dbbdb7d3eef15a217cfecd01f015966130b7284b9841bb339741101326af71214d824e6bd10f4263dde08912c139dd8f70c3d53129e46b4e9ebbd31b100b028aaa913f37518eb40fadde557d03969b1d79114e70c6c591b7d2fbdbd16d7a6b678fbb1ff1687bd66ee1598f7bac43e4ac6db4aec358a394d4bd57264b664909e0f5030052165d0bac0a6a1ced0a03c53d3eda328dbbe21ee6cd732348f3153b5fb4f5b7db9dcea5e48d8bba1740c8a1e80c6ba54ee4a16926893ffc9e6b20c4c44853a7ffc335f20370162cedb5c57c28076eec0811d32821c7e42e95d89002f0041b4214c119b63ea642ac09edf603497ca28558cb364091a053992013346dd21942b68fc76f11d496b953e07c0166b887b46d1c00fe8428d053a3c36c27dbe52a850acdfce8a29104bfac652c370615e6a0abbfffa86dbb707e4c9b7fc9f5d21d78c6b3d713f7b31d4e0ca43c353c6e8626bb6e03591b7020edc2b12cab88bc87791fd6aea8cb0f95c3aa37250f3888ee589c4b01ebc779540cb1d8b180eb2124d36bc2bd83dd0e33d0cf7c7019d4a1edf32c47c2d5889ef63c7636dd07075127b773d08a56a06f4887a30fabc0787ef4912c40719ca5e7d105b7d38e369356343d6a20500dd5423620a0825aea1c5661d26c6521ad2175813d233a417cf0e62d3759e28e5ec89370972368bdfbe730e289761cdb81abb39cae54766238d5ad7b63867c92c0ea932c5fa9ac90103fb49c588d5b38341276d101ba438f68cd436c276e883dadfd063bd1d632d75c343de874b6c780b0aea83f11004f76eb42440448dc2b1b2dfd0eb7349223359dc51b756f83dbba61922f36204b293158d9616e0c04ec9147fa9a187ba0c6a5db8bb6e0996179df45c256c3230d87df633ded1b20a6543983fbeb65cf750833459a598309f2ce7ad2c44f42758af947ad460c149caf62218a8ace34dc894579b74d9d70f3bfc7beefa22e4497db7b6a2d2d336ba5ee464b62c7e3ee757f238a61416746f82b53a08ed37e3279ddaccc38808e54d0f8edcd75f8bc2c2f5dfae2e473c691df3ee00d6a2bb99c61fb959ee5e9f5475f7a2251b18bf06090a44e8efe8794f6e2a6edfdb2455bebed71d386de7beb31d8e74d02a1b0c8b49c7fa4d737aab68b5129c4e888664d79a34c366b92c339019ff1cb87a333ce6604250ab8c374b23883968e5024882261f5d1dbd258f90aba1bbc20cb7e0922239ced08ab285191c91e43ee286efd1cf9caf39fdb64394fedd0dbe42a5ca2ed29a2d80767e9054e608dae5e3685c7dead1403dd1af5e4dc27a01ec0b41a3516e0b52ad8e439259df1fdb446f2c6a148f5ea8af84b4345ae0dfd20fd3f472123cf7818b33718ac1861df079aa209d7facb5960847568000655de20b4859dc1c3d10fd14c209a9c91c4119f69ebee13979f26ff073ad78ee03b1c48a9308de950a3778d0cb22f998aab5f136b972c78821543e7a1c588bbacd547c03512955d7a32202e132debc2eb1af510add9223ac71271ed25f38a7b3264a09dde51312fc80dfcd83aed9c6c42b8142b6a59162551fa163a45b53a231464ff7bac44d8a89249f4209406a41c9aee1a47552a03f81b2874b98dd1dd83b4d2782b48d01323483dc9992c6b1cee4d28a5e56d45b1f4dad0fb7d88de7309978047263ec495ef529c8b30002d67780160db6e0c2013de6342e2df3ffe3024f48b7ddb2e985630ecf7a87be029e4388e939b9555c99fcff31cd81c4223ea2af341aea2eb988e90f448f0686c0a97b26b33a3c934ca46b3494fdb265bad6aa8d2af2fd2a3f48d6a6dad07ad72dc5c6822706c3126dad9a09de498f2336bd767aede98dc5139db4a295718a10119a00d93b18903e233b55c2a2912302d92fd9b01caba86b7139d84faf9bb6e9ccd7642475f5d2790f43de3b6c109e16b2deeedc575bd08b130dcd57c2339cc0713648ebd75df7d1bc6c7ea7a89d079f187b43b3dbb2265181c79e82e3dcdf978851faf0a286a528f6fbc0b2faa0aeff84f69b3ffca013482b9766299ac5b4d608e1d968edea7a91953efaa5d13a5d2eedf18abe533286d2b421a3e1ba6e8dc36e8b40a3f2cde5d851b1ee01f1a2a58d8873da5864718ec7e3a11c313a3840f2bbcd81a19e875cfefa9af1c7b9226f42204d4e817cbeb4a3ac84408ce75b6bf58947b0bf66b4dd2202c10c10a922a6cc5c9f7f07475910328bf46c4bba35ec43ff2cf13949fb386b23b56d5254b25588456899d1101b87801d632b32c6f71c2119057140594aad1d7f29537b3b7dd083d16edb836716c7ef658873d9680f73cc6c3cb54bac6507f0f8d11e44be2eda7e4d25a6157e1ffb8fe8018a45bde9f5085f5fe74a9ddc069a64709531e611700bbe337c4e0e673e5c80dabd5351098d6c053573f99aef98980f4c97a18639a96af74e55d4c135029ae9f407b9291690624b7b568e11b0847abe6444cb82d7d6f48dc6aeb5cc58cc40cca4c0e416d25a9c969278af3fcd4b07e87b027275b59ad66cdafef3309d433db1d5984cc1599e520b918af336ff22cffd47811d44660c335c90aca98232d81da2a2aa6ff939cb37797565fccde9610c5c4d235c295d4d0f96a950b5803a3094a6e5e0b1e52ca99488fff8a1744516148e5ef9aafa101c7b5e6d2845c1780a629aab2913c39a45ad9592281be886677dff3120bb095f5bc1c422551b1cd120f2987f629aaaa1210581488e5393c857b336bcdf85b8f0201e1931f87db0b1145863d4ffaba10ade6e87db8fce1b093454545f99d867588e0f811f8123836f55fa8945a98e9e47dc45a5b3d64c95f5494a4d70285a7df0287854c90ad9714dc03aad269978f19e11dd925712620e425012438133f08989a65ae0a286048051a6957b691dc5e51527be6d88e2d3627f8e89c562c61c94b97a7750bca706b614fb18e96d5d5690d2d9878395f024f2b1da610109179dbb0ab042a5046ada00637889ee3a071ecf1c9fa183e8b6145b34ddcbe765b8c441d334b2d7056ea6151c3f1d976d832ff196528b3315bace991f93dff3250545eb2799ada32dd44169072dafdb52d945c8e20652bfcac2fb22510c150194e3d39976e2b61cbb071187226f25ecd096e197349d03c6038aca181fcedcd219e0da3f7720b1b7e11124505c686b28c926b51159dba3c10b849df7bbd8f8dde4907cbca265e02a0db39f3121e0289e932d62edcb217b8f0dc205ac60d448d5943a26754a1f7750c40adb89b8281c3082718db70936056004142388f4f9b814c3210021abf41aafef7826149f3b3c3f5b92ef65c28f31cb47949da41cfb2ae702d3511bd42fba1af97f61cee4bac049043f82cf1e8b2b3925cd56f14b8faa741325a4ed3d767bfbec55c335b11eea8f44a0a1ca5539d60fdc3b5c73e3613d21ec382dda41df861ca740ad2f01c133313d86e304043e4be7081d9956d9837d00f04c656ac2ba8a5d3a680b6617d840b0eadf526ce74430f9fb07650cd9b84604c2fb3fb32554c8490778663b1c91f753c0bfa1ef436f97eec4765de1e1bf6b1cd36b39adfca349c7a59a39356e8c6ed0e6a2091ba7992b590d047b0ac18c1f684f9e01e1b96382e8437bc4380b588ec13f67eaa602214b772c57c29c58c3e2de3dc1beea76c04ce3957adc53f91bb626fd61a1471ebc14c33f223b5cc7a39458dca342086632acd27bbcf3250ed85a13ab4e6989afc0a0adc2647a564649927e9482c874ca897cc22d0e09218b32b6d2eb35966d2e02b4067fa528da2c5376f59a9a54467e86d0ed95cf36df2214cc582febdfc888713c13123ee8d6384ab449a61323538a717e823a06180aa380a41d0bfecbe4103c79014df6b99d04955afe98375a8b80c303365137b5861c1a7b56d7b04f2396d773b34e667612ceaaae41b42311837beac591b73f13866e0f4ac056c7555d753705f4f3cf4523875c1594f3e97dfb17af0cf7071a8d9aec965df6abed593625320cd8c30bb8e6e05309870313435bf5db1453307c34e7cdf1a3823a150808f89655504aac6e877281250b217763f03c174e0afe60a8ce29197aeaa0f3e266c02a9aca63a0d24a94eef6f0d3974043b42a082a0f03eea69957e53b593174dc5e68b0ce6fb92443f5199f7b10c2134bed58041bc00e9d8019e4bafcda9d2f94706a33c49096a5a9ab76d3397b36b344a090a4501eaef63342f60f9d9f9c57581b05eb81fb80e9bad6cafe764a500af87e6d46b2be28cb464cbad2b5e8a818c68c6960898c6187c73e7a5795189529fd6058f250802b5d03d8f40e495c679a7c0b72940833006bb0f57894c720d230535fe1eea0dd166a3800e0b08b108d0b571298408320e45d1ad46e0bb4c0c2fec3410f6229ae60822cabf5822134173ebbe01d43711cdd94d1f976d1125caa08b403699a667b7385d429dba9192c7fe1918a66ea71f289a71bd0ce11f5a0ae44d5d77dcea8e61587e2707d22358ba0cf037b5da903b4d6b72a2d952c32d927ae8c859c24a7629537f1e2f5f5dba5044e359d33315b965f0089d4dc2fe33bc7d9a191e0e647facb4ffc68bd41891ef07a797fdecd15f56a7d9bc231db708efb884f276a39b7809517f46731f4fda1bb99d2a1c7e8ac31cbe8b57905044848854ae5c485eab372e6d9c0330541455c6af43909c33be42397244f1395d150dd5fb4df3b5da2db1183b2350990862ae640c919135a7aba364a624268d223f4350f1c9f23e28195970f3259d54808aef945e7a7861ae10434b79b24c712a577bc79ebb3f4ecebdc1f424c20d594b0e20033abe3fb9513ef669cbe2f855537cba7e200ce8bfb01e80fe73a2f81fadc6cc17e7c2e3e34aa4dd21cb8db7728fa811a789a66348dd0e91c670f2471911422e25bcae143247cb57133e7f1ea5e88ac251a02dd6201489170117fc4cababdbdf565fdaa29e37f3471835d1d63109f188daa291bfb67638f977c1f932b503d2a475020284233e6ec1de19e0cfbfe28f96ec468628d3f69d640ef0faa1518448f58d3e47d69c0267fcc9ce16974d283cc3126b055133345c2d53a064e9223a2ed2f9d9f4b02f79a698d9659f3e3ffd95862fcbfe0dfe9e831cd3e6c84c05344f0de61e340ca088be178e61099dd613544bac2410195c4c913c45418c17d965f15a79b7450c80fa599b193fed09731eeebc7b9c5ed3e23859ef2a1731ff95e2964ca07fefc455c69046d3cffc518a9657696684a301957302e4223aede12849f95428f7cb4983eb1cc0113857cc2b13743f098b3d9436ab2431f24b9e6e770d3be2c61c23ea8b39310621df40d358906c7ecf422453a0f2a2fe387f8e8a2b9c70f1de09afcccb47227872fd1894a806f5d9d746914303cf3e44ec5ad6239121d3a2fa4ea729f1dbd6d71863cfc10438914e810759814248f3b986c25ca028d7d2375a426023a9eb723c3a5c74cd13006919af25c0ccc16b83b81a84ca77c7e52f2b667586433d0058353caa96e9a7a88fe192e87eda55cab6b63d005385806a5228d5613f60333d701bc2c470b849757b8288456bcf0bb240a6b7890278c0597e14518ea87324234cecbdc5e923f110341b2b882bbae8fa76b40f6c0e739bb4b932727010fd1557da42715f8ac675bed53ad0fee2394f6508ce212bb277c6dab145dd133f096552f27ebd0ec4a00f92b2cc6e17bf15abaa4462ad0ae9dabd0aed68242577042ef9282bbfb93a3b904c75ed5b8d72c9891829b6dbb7f85da822bac8fd8b04dcce98861672dcf56b1dd7fce72f32c5a90bbb52aac0783ab2baf6c549e87b1cbc536c3f4847fd05e304289078ab441cf0010480bfc1a7a55f325f4339d7c365f286cf59b2d073c413200156d8675efd573b895984d2f61089e712fcc574685746a2440a6133c862b864d030f51238dd8993118ec05887c969cde836c8e7c600d34b2cd867b8348fa60b4204ac52ba08fa0aad244598eceb0723f91cd96f939f9e8e310635d7ef7195bb5f8872e1f8ce28aaa95a86cdd510256320601e905f51448cd0071eae46841d5cee62de3a2a85c4db7102eb008b99cab74b1ca9d362de4d2f924c5b9b58c10b07c3d044a4983b7f154fc473a863a081214c7a4e548b2a8993400364241ba378bf47ea3a56d09aabfcf354bb0a1fb41864700f32ac90d387197a606fd8e73abb03babbf3560eaab714cbd7919f4c90deb992be16c0e4e05e6efaa7882f5609ab5f130374e0040d1a9724cbdc8f16878649e4d7bb613bf1d8bbeca41d4c7e66a188b8df5b1a5895ca482433d0a9558052e509e99951dee01372c8ee6980f8538e8ef5ee823e4902e88ca9acc438221a74bd0bd0fea3d80f3f387f2ee0c5e1ee029b055e2b8a0c33bf7b6c4a113e75da56ea01e5d97ea333a0ee5e1a19f82e7acb18bf5ad4cb5055c61e0d47dd861e3fa56f72513dd99c1bc14f32a32af6b8ff2e46db726027be4632980c7781bb32ce064f5fd295ab6261a63679406ead716325e0ad0e851e321f1fb489e1dcb0236aec39810a550dfe0e95690649d5badabf701cbce1e1db6841a7de7fd7b27aae69731973d8a56a91d576a2cc2e687f25f9d35fcc369aa82517790fb06f77be1a9149d472e5e3fb8197b7e590199b6ad74979a5a9ef6a2f2a6586d3f74e43da3f55affa4e3cafb98f06f5e3200a3ccafe324937bacec4fc6a91c1700f4802d30d8605d810eb5f4cfbae4708c18b719a6154d9d45d3816aa8e4a40d7dc5b2f54588c03fbdb78a7ec128f1e92e4535d361d787f791c314ca21a2fa22f2702b5c5d4edda79722258a97603379e1a34bb20ca71c6ee9065174747c19480e5860099905b3b6bf29042129a1a1122cf46c95c2329dfe396e75685dc49060088e9534036c533bf8093d2da7c86a03aca32734864002f38aa7a6b011a7fd88543679d910a57f5d8827bff858b45290b116b72f86d014036dbfedfaf9685c1051a4adf67f2246782301907471bbd6bf8af7c3833cfeeaf4ffe053ff0b2abfb92867c99067e2905b834464f9299dbb7f94f3235306a9f26a0056aadfcd152ee26a312452f800b1411397fa938266f4f1336f1a2f855d22dae4f74f28efe520433110bd0c23445b4ea07ef376d9d045000a668094a76eef4c9066fb8097871985ce509046abd309b14eb9d07c2d139f787640608c4890b977124177d0fee2d5c995f27d0bc8226af2b276cbe32929b9632fe30f94a6f0f5fc4e134646c405f7514eb14261e841382a56b08790839fde089219e7f90a7faf82e0fca4d5fd355c98a168b0541d260242d020c361e8ad0cb589c2714636404038405109dc25c510df9eb0fc1b852ef3c2f2261a5953c84f69021b1d8540f0bc3612a61a9f9a2aa50782eb765b2dc04b69235ff68cc67a7f28d021045651c81d592cef06b13476feb563137881db25ea5959e8ab5cdb40df4f37307c322bbe7e9303a6b3dce578810f7183713eff9ac5538bbe861b8b43c1f5b23b201bfebd1ad9feb0619fa128eb5a146eafed14f40d2e6419207bb727814938cb8ff10a93b3aad883459111be50174bd0bed4e6c58de16c6afccb5bb2278c7b53443ce7d660efdd922df536a69f49bb540539664ce0c05613951606881cc8e40e33f386c00f5b38d5ee24b87f766724421c5353ae7b6dcb5d3c8faa58b9200b5fea8009fa1206e82881e290aecdb8a3ed42d7e78048450d5fe6b322cf97af05f42f244ac1bc1c65bbb212594f0d6e5e9d67228ede8cb4391a5568c59bbd56aee8416e1625d86da6324933a276aaf032626b11e67ed7e58840b202783ba612293e417b50fa88b76f26648b606235bbc591cda282040953261883abd9a20d7096bb01ab3500f2050a882104dcf97fa10830118a37af6c07c75ca55c50c962bb21f284bbb8aea0aecd5bc40a04312ebf5f2cf7727a26f07565bc20bf38a7c535e7e29bc5668a778bc5d74fe05d4d3f62c28719397a27e75c2a15090df4580eba0820eb3c43ce46073206d7511ead64cc74a61398a96575daee396924472874fe2f1832be05e7bf580f677d6d3dcd2a600fabad5d612664f88dac6f59edda499aa3e990cf96d05de653fdce441e3e15335f4f03bfe222902707c5b0b9227524b309844408cf09aea5776eeedf7dc2455b70562af3451eb116f5cea46e1114eab67142203e93940f137727183f68521bdb546d8e09f951d52652096431d199e09295d1180039898a85cbb45303c2eb0d2b2475ad31d4704144d9f948b5e5610bfc18d92b3b67cd0a22166c6de31350f45e51595a2777c3a9ceeadd72b006851e15af9ea05f53065bdb500e5420e9a183d6514d66909508efcffb72ae0d0ebfe5b3eea6f87cdbda4a0ca9c00e1577af2d9e0a31ac06e2c313d3c79b94374c5304a83cc6ba0f27e12aa0ed8f07c1e472f6bd2ded9921fbf5dfd8294d4b019b2dd4afc642b1bad613042735208a0e4891d2b58a384c46499cf4fa6e497064aec64d324b0484f782238fb4a8f45273e159280e7506b39b533d3f1ab7d118b5ace09460df3cdfb012e12ea83848f68f8b31f08b19a877db79db23181ba0cb8579cc47902504d020961241164e2497e61dd3c7f5d5c890ad23d2b5344c745ab0bc7d2198e20721bb3735e4e64c8fa37b5dd0339edfa9c1069500b69e9b910c899c5adb650130846e30b1f7ff6cb97373516f84646bf4de43f16a8146288c65bae471468671f30cf16885e2f8ca796948e8270cfbc1a39b2c3d637303957b0a87554c0fe84127833ebddef1d5a764609e59bc390c784d1df7ff9558a6ceeed131ae0bdd4417e55804b989c42bc2996d703b8166e52808f9b485dcdde8313fb7515002b51e17224764986ee3e67c62bae2fda5416a438414510a11b7ec20cf6041e165665a79f54520354cc7c06e51420f2679d1ee206e2a5f653c8617f4bb029057e4137bbbc4fecded7c763052ce45ab4f34c476acdc0c9a18a6c5a02e8cafb8c9138006a43891748eddfb498d3850468cfaaa2c9857f35b4426e009f5821cf1bf6899c34d8026ec994e74a05d369d8a0651e61529435c680e7059ab9b5c7329cb3d0b3f2e8676c49192c1e51d13af68409df26f6dc881de11df5db93d3759aa9aae4ebf42a74fa792aaad1dc82c3f05681a6fcd25e82dd446eb2ff82e4ca6728ecdd6d979a2904a39f45a645d6205a14d2ca26ca98abef356cfd1737ac34e9422925d761e6bd1c971eedc89e7bc9c00e29df62bbf837673f2138de4956a789cbe790570cf6385d926784dff6fa7ec93fd44b5d8a87c245e1a3d3d5ac610e6c9a4f57342aaa7b1acbf33138c68b1f53f2f8b59c3ee7643e114755be2e1bb097d28e46e5cff1aa469305eba6b06f16fe5689e389921e82b21790d0f3e85a66a92a987ac58d3d9058cc459c332ad2525191a1dc122df6d073b3dbe269154cb4b12d55a64abf0da3cf58e3fd21a115226fceb66bd562214230422b1f6622548b388bf483f3d738518ef213f803c4aec65ce3ac26f51b53d08374da717a695206ab068955e6c148dbeae0bc7a5a9a4bad20daaa2afe0adb78c73f227d432eec9d68d1e19df6abcffc5f9c3beba50f908ebbcda22633eb1b8e800b299e0fd935d4835daab453d03903ac482c572401ce1df2c1de1e40aa9c4a95a188406807c2257c73303551f5ce56572b29bca3678acd17c412ec76389a7acdba592577d28bacc5534aa6383ed4af1396a4a6febc88f9633958bed26457ad4e6c03d45d14557837303aaa7f536602f8d782045ea847c22cde0680ad76dfbc0d1b7d0eae57aa833236060f81cb0bc0fddc1e42a8c085d54e58aac389291e78e9323e74c90b3d00279c2db37e98d2d133331e372df08720cf3864ddc2626f0bcd67ed650e4ef5142221b22e3d6dac20928f01b2821ab4502c14d08a7546eb11efc91363e12df6a458c4102ca2a8aad52a3cbacee53e33b1d03887f2a6a945117d5de87961aa1af06a31044303392171585f5c13a3c9d8a0a450f00393e310315424c42588faac731b6f0632ff6c55866a0c3f4eae2b137db708ff14bdfa29e24a02cf3c6a02336ac9dc47ff3498b5a0a910f24799280530a0509a3c2a43edb49f38c22fd62dffa8514a2135473fe4fcaa69a0af5db79a2eefe728335e6374c870841a42840d12b66122c191373d1e310e9ca9d889d4a33dd4ddd797fdd174fe485c45d13199afca8f1e9cfba7c3db2b9dea87558ec828f10fb0e015052a2ea607652f52e4fa0e9d022e03edadc07886634b58a3979d9492248deb42b5a078239030d7b2eb1bf0d2d8a8362ac68d3a9910defa4daf44b27dc28546001f018b31e43af60d7293d4f6095777853377a9ee5f6de2db4be641583c394412995ea8a0d730cc2df1401841071fe4184970dd1cfc3cf4d8ce8425e3e905e3f1bfbf965c2dcaadad501b1a5f85683143b39a3e1fbcc2d67fec8c448487864bd1fe61e16d13097de830b532c4be391a1b5cccadeae91bb91c1985fa8a74469d797f1ec7e5bff8f38740e6905a1aebab903ad94ada767575291b4f80a0af291a70ecf7676ea2c744a81fc84f331bc1e2496f1cebdd9485ba3efedd3a4822057efde3741638b9d8fe8689fe0d61e830162e249267dc00bbe9fdf51048562b9b493eaa35ba6f36492787dbd341813d726c4c6d0cf6aeb413943b66ab96eec4a3204fcc785d390457c5427bd6d208e6d6f7773d57598d88765498fa2e29b4ea6b903e5c3f901d95053476c9c2c73e2ebd513696a0e121969fbc9a88f6fe1cf9b4fbf3fac2e25f5dad74fb7363d1704d29b553af14fdd0da2ee28981b05ba0dd5ff0f745c1443633ae2763de1393d80cb8922d4c62a18e211182a63f1fb18004d80c5190536ef0e012a1a4dc6c0f9e1b4f3daf4b828d81048096197bdc5054fb9884ae957bc4fa7d9880dec6a67c62dbb2c8e54d7b66797d21b95db0a4860cd78f2c4294c58de08ef7509e5f5971615c24760a4b05f4e01fee603ad70476150c980ec011280d440213a5772e57e23e16b7924cd6f7ea0ffa32c324740e8bec82dfb3f7bc0c9591c230c0466a4d46312208f2ebae72888131dc41045165e551f0257f50cb58e78ee88b6dc760f18766c44f506426a557db554d083b4ba690fc721112d763c5060f4ce67e83d79cf6b807baec0dd03675664996f06341431845d9487ce25cc5f6ee0dc7cc1b877d231b500542c8049194475b4f251feed4b931681ed08a2110e0c8a84524c97a15d05b26338b98a07fbc2477d0c639161ba3f3d006aa8f6098d8aaece65268b45695e95edc182b2bf48a3f7f3a290c13e7bad8388f5552476b3df3ae9dc90c122e51aec5325d82f21cb6ab1fb465b18db5d7b613c443287d0a698ef906f9d34820a6711ceb97a8cdaf1819698c042b1f15e3cface713045663b291ad2fab56badae7a279bc8326434915231e5ccb8c857b5c9951cb5554a897c01807a3820734c74f3e153cb1d0cb4d67c19400a0f703bcf69fb31532fcdda35040c230f511db47b3f6876e94a8ebf872366cc6a644e937c362ce37b10359b5bbb1fcaf1edf8f4e1db7db0b16dce99431fcad326645f3fe1e1cd1cadcc8a865fcffc2254a348afbae9e6f44b5f3d90dbf801dd019b5d36ce837f0d8641b976191000588fdf7e60e890e4706f189216afbc677b4476015a9e5101de4416ee4d02aa182030ebb423990dd9ee90073e8dc0f2b1d7614b4e68b0f66c59abd347d0fc6ce53fb8f3e8d3af0ba71e240f627ac13b01bc29ca65ec85148c594f0e608389aee8db6501147785b07efdb78612bd9c9fa3ca4d507e32531935a40bd9e9ab44a6dd3842f63d9d56e302b974ea9ea540833cc19aaa23244f63d80818b69f1740146215a1e0ad37cc80b6c83ca46aa7a556644dcbecd9a43bc339e5a08738743e94ea24c4721ff08ed185eeb3104be52d91c43c2b2dcde8eed013c44ce6d33e36b25a4cb1d1e845e0086d009ce74d4eddf0f709ce66b6cdd4a53402d2e433bbbd7958f85c222c70f539d13c40525e6e1bf1f43dd6a501c85846de54a887d97f20e7850eed782bf80c8fece80a4d28a8a7c3866d799af3c1228c4be797c3d92e7b2c982978bd17364980bca342cc38b336c1088d1824d26c14a97a7ca2db48f2083ba2e8b4e94d3f77646bbd867959b50650e4d1f0d5d7db20e61739e35fd44bd30a6709f6c8c0ac14539f604bc75d8ceb1eb798f0a31d3df26213dcaa11077a1a23d833154c79bee64af36d0602d476efe5fb1fbbb89491e96c4840090a2ce4d3546ef2a651ff10132ca8809565bdc3243f9e0567b8c965620bee192a48b5d10140f8b7ff6c692a9f28344113971cbf582d613be74304479e36c529c21929f25b4a83e444c52953ec8b2ea0e9eb4d97a7623f4320899501c06869582c49a9b4f228a21a096324f914985948b0c1261caddebd6dc4458a22ceca58f0da9fcee03611aaf85611ba17414b08e4013eaa203eb2c932463c13f07aaca4725c00b422adaad3a60cbe1f9fc9112e7fc2746b9b0bdc31b371937b04828de35eb36c0e142c471215a0d1a544701d7d2418ac807c25735bb5fcdc4d8ceb32e41f63f3d9b394a2664115dd8d163bec1aa4c75f0b2f2544bba41f11a20b40927113f7a81fa48a3e0b2beac5c60da28864be6958539f3048e9b80a50fd687d944225d77bbf1a26492a8e22f356aa2bb3cbbdb797a46def6f814aa16a9409aad0d9bfb100962514bd7e68eaa142528cc7c7500f2e5cd50f40be8ac1ba7e186c37d5a8e5479b185320764e95f8ec1a2ecefb37de23cb014675cd49d467b8a252dab6548f3d23f2e04380e72e3fabe7be2b785b9c35febad4fa396305a123968113bfba97da6c8a6ee6a742573d1ea0d283a22ebd4904a8ddaa657d4a7ce0a47744b8c614a48aed722ed23b848f475a04886861dda79cbfad6393359052d778667ba12a2da1d98bf367765e3966f783e85b22d78fade4aa22241bf88d0cfae304b23584365de036314b473116af23e8b7a1d42a24bb13427d9bed4046aca89c7330e41a6c2af022cce0f0b9d6cca1022b5cac710ca2e71315fd52829ca3ea8b26c866b981ec8c0497d1e817cdfed82067e33b1ebdbfeea7b0cc7021808af13e137e9a2f55af9640e3948c3480614282d2e5c6d786b674cc801ae95d094a98a15d700172e2211334808998a1d9338ce623dc16e248b623345785279bc5b376824b75c08eef22091a7ff5aeff415ed0d6c9ca08688af95e13eeaaed2233a78ef3c1c804299f72af9f0d0201390dfa3f6b1f18f5ed67f45de36348240f10a52841d5865c7c95d5a9ff7521fbc0accd358c675930a51309e63f680252c33c172cee1643771d7cb736fbc24e5c5cb52723020261d7df87d58600276f1dd6545d813b0b1b8884000198d8bf1073c578427c04c727f1748200f561eb5c092c27ddd70cf7bdeb6a943d9c71196d0cb81a5d91a36a1e8d40646415ff9130198cf401ac3efdfa06094ada3afe9ae9fb1eee364ea99f9e4362540a18fadf70415f2068176e88cbbe378bfda002be1af46c6f4d71ab2663fc33fa9f54556877f6d9363cfa81888cb4490a9243baaa5bbb0b860aa03826283517ccfac5e8290cd5925c4577ba61f8232418b526b2e4f85030f2b4af82079225376c0600cf11f5c1a442ebc8da83d61b14118792811b4d20c8181f84174d8c5c6d87a0a529366b8cf91380d60a4a93db1ec14ac688b011b34560b4cf15402479834b020b34197eec11c352e19c20317b33ae196f419bedf58199595dde53765e8645028b6496956bff783f72160f473ce156ccf8d61a851f2d1b82ce904f83835d1166d4ad97ad694f3a2ec4f48f17733182f34c4064b0c8f631ec996e803ce86aeddd29924096905e0566db0895894db84e04bafeba72d0a498497a2e151ecbdbf6a33a462c06f26bdacf0b944a5a090362180ca37672e40767bf3d87d2a31e91cfdfef6634c281bd71f223e4166ac39327dd5cf196ee7e4044d705cb2339bd778ab1da0aabb3f16b8910e7c222ceb3f1105689de327d07799d2dfa029d283da17398bc872a1188c53ac5eb8dd303b70d66a01aee73e0842a9999c3e93f9c50c422a48ad3a8f03201579ef61f6888613a10583f300bf54827c2fe4ee968faf8690d71cd135c9a389486cd2e6189debe2e46e074484fdf8be9934c1f9f23ecc32289687886044e1b8fb09018a2631442a945c4170d6f69fdecf320a8790a90b6235549e68cc6113e6690609db9f5c1bbc8593084c5352cfe72eef8336aa633f2558397abf2980723b5a37cf9cfef64b7739d7eac45c0f76d666439c3f1cc352757d74ed8e817161e0bbf78ba9df3ac968790d5335ecae7d4f117c71ea5cfacd468bd36178206ff8e0ab572700e1cbab84aabbd89c2b0bdc28274a2f78619c4dcb85b3e6108421b3a3650aea45a501394f537de252007f257a4952196e4046f3195193556b639428da1f4af0c63404f1d3ba5866240c843920b6a2fbcadffd2ba27ecda62feb1f7208212df5eabc41d1eaa4af39c5679899238053e35757b08fc236bd16776cf8fdc8aa548aab93c27848239f2d1598f16173a3c96b1f46e969c6d9cbdcd81ea58fca6e39fae3ccd15d913963b0930e5085fbdd92e8014c9caaaa2dcaf9210264376f4c725cc8bc9d4d64e643c8b0537b9e2903445a24938d7d0d8605f65dc1653ba9baf3f2af91e63cb8c44db6c2f5bd99bfd2d9ad98da03ba61cdede44001d1d402cc89717583edb40cac00a248cd8275a990aa3e4de01119bef59a593bdcc34903d8ae620ead7327570ba5f80539d45c93fd0a0b64af7fdec99f618657b90a83113a54c20b3f1f9a9a5aecc3767c995e73b2f4e386fe54169ba38894f6ef4b9cd4e583be351d5593c7689733aa7b0f1565e149cdc26c178ec7320cfea31a4c7a9af1b9063961d9c095548557fd186a52347d0d948e83db1d9457ba07e412a56e784b274311c1ee3b1037e35037da9d1af308434c9d3db10879fa6b2215e7f5320e2a79b84a8d4000ffd14e943c8408414fa36503f603522fb1bb91d4206b2b68e057f25771411d6952f9abe2997819543966d5d3983f2d6f463f9506ae01352bae193e37bb35b61c2871775c11d5535d80913ea2b6e913231963851a16cb3f0db4dc99875d9183718e9d00fcaa1971a519dcb195651b4626b600c46eb52dd0e28c42d78c9ae9d73ee202427bbb864c7431e24b9b08c8ffec74d264a010865bb433a149fb030f0d49ab543f0e63c756bda08e3de840a382a2796ab52549f8fdd1103589d48c9e12a744e546fedb5a2987952027a4746d88fb4110242faaf86c2604f415ce456131020a0714e1f97f77186cd782e09a9636e44524cdcba7b3cc3c148ba34c114456eb2acf88b4533af2f6b14d52b48ecd25a82e25ca3f5f8cf7c263329cc3cfc6baa47aaa838e58d0ab1938fbaff30ccac6049ee4561de7f6e161907fc28681ed01a21828561ff75e54090ca3fd2725cff1ab8ade691c8c80303514277ba6e9362b28b03a2158fded216ccceefc2a45a0a83aa394861f16d50441e8a1eaae103881b73813d2a857aeff9b1fdead84ea050c1547a558e8e62f2a640e9c63c319e6a7bc08f53597bf694e150b29389f1748d6573ec585aa7c2942627055f83497941847bb57fb156bcebabadb03a6cbc0662aafde036cd4f65db2ee300050d88958e53ac6dedaa0e6307dd558a5af9aa12f1163d72ae3fdb1206186dcc1a0bef5f805634481b4a3b574d3c1799e70a0d61e0c1dc89b121e661ae610b8a3b2cd8f48bc099ad9414d02209ba1662eb91d9249104369ec6ccfddf299f3f49b265e8c663172cb8bf78abb50b904980432c90c58713622730587d49de1beb2dc25f1253f2a4d3ebbc71b19e6f4faa9ccf65197891ef3435859a072e02b4f587f3c0edca080e4445bf6409c5f36b832441d9af37df0b9ce7670472969585a965a51d0c1584041cc6e69d9205a8c05fc7e31b07aaff55bdbd74918c7766b4a7d9e001e766d4899773cb0fecaa55b8e8a73435517763401539cbb55f5a4d3e264a10009c99b2be22d160aa313a2e7f22d6fbf0d3ceb061f4939435f38dc921027030173624c9c383439c091826707816b6b3610a2988d94223f971b0a891097cf5436d00419e8888fcfc04cec5d31ffe8f2d51203f247a5ca5da5e5744d148ea415238429076331e9994ae3101ba183034119f2d0f6f0f91b178cdd33d3074c660c04dd78d39cae9b1316a2275bbd1d27c38bc08df054bfbc1e7755c59c80446257255f98f624be04ce494f0f8d9b7eb384897592c786f19542ea6708b107b88ed19b9d6eeb75d427eb1b7fade13e223e623d599fe80fedfdd65957d5e86550e72c2648cd0560226b7302ca35eea8cf65f16bfc4ac31a88e40d72ee6af7302b68cbca47dc6c4f8a58e9f7611fa4f21a545f55452d3e2ffd4bacf1c3b5f790be0f672e0b90f363df84849af42143d81ff062f6a0e33fb59c9d778a55fad88f1e51ec4bd3373a955d95f6fd04df271819973437395057f47c7bc61c73098a2546911f650a8081c698b6f366e3d8058cd9b50cf04f186089ed1de656b0bd5da6ec402775e9d959f8004c41982de6542aa27a47658def9602f977d0726243bd750742bd27d83d85c628e0c750e7e4e685a3747528996956f1b4b8a996bbec81d9dfd5637b4bc5394cdb6b598bb6533266fe32f9b835327533314af6c7452bd782ff7c21640bbe240ce1543e52843cca719204489ee81602501ec5a8af7ca889713acec8deb02d8553bce9a6e57ed7918aa905175fc440a0b0b590aca3b824b1326d910f30ee90eb3f9a4136f8941b13a7719147300e458b6ff17ae370694f3662fb017c5dc46f0fbb11bf5b93072cc263aa142f7629560a6b42d91573cc9b751360ea20929d5db278165888018554a85d6544ab953fc3b976a5a61f5d261c021a6201b17fdc4f9c54b73c7f582af532403f4cdd210608e3a2f3d78d11be43528d53b81a95ecbef29154fa6bbe8f1d8658a33cda5f248fb5d3412ece32128ee48850fa7603e0eb778c3c28d4f7d6b3257319763d3c6f276b145703c082522647c88f0f789ac64f10c3572a9ffb16b148ed7ef5ac24320aa1db62c76c9194ae016a41586bd4bd40eb098a968408a145489839bf20b2d061464409af015794d5031926254463e82bc3004e86ec0fb20d853929b5fbdac89d9468cdad473c938a84df1024182fcbf3cc2464cfd96c394f121a41ec5bb354c068ef804b19103ca166fec70589f9b83eab3f691be90d5fa20d97917788a804227902a2cb71e79c61e9c1df2832b5d2e93ca08e2cea34459192bf7d926e23046272a79e698c7cba4eeaf26c53bce233fd4b0a5716f718ddbcbd9dbaa8c906e7e0f2a5af2c1fd412a0c9cbd52cb961a82d018e7883b905d53b2e91fd1eb7acd7d6c8df9381e64f06219cdbf68e9b2b31d0dadf0f8d80b8625c68c02c78339a4d59bb8fcbb8b5cd88a86d1762ad998e04220a72436569d513afeb21a676032f06648260e5ae287176206f01a3fdbc94be20e9c3dac2649a07fb9142d66e3b4117857bb13e60b89fa6a2646080fd63d42b83a12c2cc2c7d7a42cab1a384d006672e217482b10bfa259884cd86ce9feb9a841c041c92428d83bd436e5c63c4da29a161d825e7749e6bd594f547099ae179ca106283222f7a8a182f38b525c221785d6ac6d4c4473ccadc891f66ef65dd7ee67056531cd17b431fc15c3cd622c6e15e5e38b0a23e8c0c41f2ee783b452783d6e65d41a247400083a3443fbc3bd7b5d36fd387dd2f3e1d1b14b56d2beb290cf026b0df14a9f02929834aa34d33169ebdcd2170d12f8a9636217fa58528502aaf0e70c480df85daad6634b12d883274aef929c09a5b32c38ed9c16b782ac216fade2ff6285912f6f26fd8470962007cd92c7ea2b1caa5397246d6a326c6c769d80e2a1d4df4f3214d32be3867b3a408c396721d89fcbb0b1487eeac7f87bbbd2e0a05202a37520362e51034f25caa1aea5959c31ed2f832715862b3f586399577f2d53a4e39cacaf1a681e6e96013ce4d6856f6cb0a2f736cfe6261b63d328e501fb09c48541a118f6cc5a13c05fd1694becc577e096041d0bb6883246603ac40b88b7f2881b4d800bbac5fc97a1509da68e165461245d817c1bcd0d1d563ca9148445934407941002b1b415c2659a2b24b8dfe608450b193d99951139d93df3148c4203f8297c9700236a8ca8ef2567b4f99e616c0177840043964c310083c0075e501ebfd3489954fa419bd558a49e86d78ef60cb24cd3f008acde4d004c744457eaf1374b43b1a3d9979718dfb0206f15d36a077ba25a01a93028d75952060789e803776954c1af2bdd3602cd73dd91190fff185aa400d16167b2334911978830e3280b16640362c615212b974e288d23ff8f0b4e8bf437659e9f90449af71c32f592cc497cce91113c5af404269013a2693a19b566eb9ef0a5d148798f7d5955557e8848647614a4b2ba2f3dce668a8a94d1444e8bae7b6c223f3b4861cac4d68a3c39ac026e5f5d9bda219caa828c9edbeb4028fceb3c01adbf7f7da54881534505f5b2983f649fbcd3feca5f683b875e46210d26923aea6ae4048b8bc383c70409e03160a429483ce96b592400a96764008a75f0333cf3e77dcf92f712bc45c471049bfa7928ffc4a08f41395871a8191ed2c2db3114dc072666788ca0dd4ce4ce2ee756ca9aeb70abaa4f030f304fa6b71052e83bf606a65d2f04288f37ea2c70daefa76e6fca68489c1f7eef83da5eb9a30000ebabdddd7417faf37dc3af66f56c627f4fa5f0c616befc736c58c36d9b47abaca0b9eb7cd93b70f0777961c2e0d63890b24a0bc4d2d0040e1465662f70a3d147a0d7f0d3144ccc61f6d3bf01aef8c041978055ecc68a37334f33a18d74c8a0b65464beaf82a541fc43fa6770928744b33ad175f691a84b8a7791e0ebb0b7b327afc61aed3786b206f6a2e6151f73ec1a2b5d477a2fea179ac9167e8e23b430bc24548d6947c5ba7c1003f70ae097530bf7fe84f42993c9a5660c6a9ad0f79c72384594edae74e78482fb378ad669bffb72865cdb3ee1d180c8039098c75f5bbebbbb1347a6e7c92f45dd548e45e8c1d3b88064e935bf279b91eef8c6fb15973eead081aeb920f25c026d424ee1834a6cd55ce69ca98acd7eacae931462e5f3125a9136c5a10eb7e3ab1c83cc66ae3dadaa4c41d8f0e103cde01b16214fb7ae235dc8cf3aaa093f0b178ecc695cdbd369557623cb1b470e82abb442a1f07f1d97078c9832264b1e83777305f084ef086d0b06f42f407a461d963bc31321d456a8d2f98ce93adb3041b3c6cbe450ae8906c1b96c1c03a710692f07c255dee9f6f0858c433ce8aa14ca46183ecf36e39d0e92cd9ee001947c5fb4f1c04bf76c12eb5f0e7765a43ad1117e79634a77d403d431634d47d42706d9b9f982d4570c18aa42834e55d9d0dc4e1e088446e5d6c64ee310f9fa93b5aacb087339ca682d6f0a9e99a64befe09e563a7e4834ffc4e5d49487da4bf59b1babe9896bd4af0cde66799cacf7a3d8adbb69b9748d58efe2d07478e6b05b36e495f4c8241482a98024ef1cc82cbe60b4d1858debdaaa98930277a9d2b59546029cc59ffe42ec3b2388f920ad8e51d8b000150e9721de0df8b0ccd1f6983eca5d1a57e246b1f5a4b85586bd78e5620092b5169a400f6634eadddd0e434e8b0c48a1ae3cb35818305cb1d7fed0718921190d3462c018cececa5fc1e093e8a78650d6e4c152a017509d7d430fa9ffcf2662ec4ee20b49f4077064c97af03fe78ff0903963f8cf3c5dbd05dad5fc3ea70466df7992eafaf4957365cec0c4999bbfeda53d306b5abd9159691b718876d13fa68a11054935e7ae15e96c152118e8ec72fb12d0b11515ea2e2422a588e385a960cf52e676b93c69173f801ad116312e415fa67083a9c1a853d96414ae03ad4581afe16b469517db9ec7d347e5b70d41ea5f26d829ddd91f791a0e0d94d5323d686bdb4c8bb9eedecab464fa08d97ec9b564dbdb4267f3354535f2dac4f70b36e02af5d5c5b1669a7583a62b542c5ebbb39cdde534bce0baaf26d83c7e33d07007ddf75f4aca01d20ddd3e03969485822c5822e40749b37b10c1000e4cbf47cedd5565c10f74aa136e82f4a6cf157c7dd374f018f47452014f136c9217b55a207814bdac9767856ad5fce38019b3c6d3bfa4e243cf2e4dbad5fc1d3d63a7cc5611f0753187f59b60e5fe506ef5d4fefd9671d5983a3b66ddf1fc4fedc907d897ff990150c03c561c2d8f2750c04f06fb2ca94fae0c4032e6763f6b8eadeb542452cd1de3bd4f1f6dbb92c4d2ebab794fa7305635ddd292224315577516dbccf7480668dd38f67c6cf87621304b31ac4bccc8352c397f86b7e72a0c58e99795d87174f930a3fc0e8fa3156b978c561d760974891de10bda31d85299f9021c27b0304a276ae257aa87169341a9ebc09c157c77f0a27ecf2b1e486a4a311adb7da86d4f1a67964ba6d53a98f6552577a1e9104c6ff74168ae0fb2a24a21ea086f7a3a15c4a164a432d97f2b77d2f612a29145d7eedb6319d71df2eb59735b4a550ba76d461df5b2419875ad79a7f7672d1f1828986dd0f1ed785f1a99c1e07182288ccbc9359e004e282e63d9bc9a728adf32edbdebc9053b6a0cc9158da35508113e897ae7fad9c2990cab70916d971fcc2d2bed9f5a895b30551b959713a7e9375c83aa40e6bf923768fd669c38e3ab6005970e2e6c454c2b08694e8a4f732e944d85dc6117e8015107723fb6885d136c1596ecc22a0bb098c7c57d9d3dd44d13affab6f3d7393cfa2d358540b6c7038a7eea5c4e88825f0a91da79c806393b5d04562c965a4f23396ffa2a3c17672450fa66e9b26e1305cf95e078560402adbb531b2ad0203fc4b5b55358725bdebd0f48c44dca236d69ca7ddacb51d8c23953e017b9a6e9a6ec7eda882bbf101a50f7cea7ac8d3bb002ad8c4f0b574982953cd6ca40236db11cb0029838fa8fdd6bba7d4df3538328ebb41ee79576770a82cbed4d426ce844af421b7aff780b0518df74ddfc7b6fb9733af0d581968d337224aaeb449fc28f5d861b3aa068a6c28a5b12e9e98029a3154a58bed35ced1f06eb89e6d0ab82e2d6928be62237ac7b5c6c94824b80ff220852557760b9f751ee47373a562271a187037a4c02781d95b8ba5c04ff6a2d93c0e6f9620536d93015861d065a62b2d584e3526757c8ae500f73686fbfd9106757cc5d994741e589be443a9f11a4eb14af26559e929aa0e0dad0cd0d22557217e9672dc6d0accf0b6c732721579ccc643c7c16c2fd57310966dde8e59582834df3a262d86bd5399dd24554e1072709b59f6ec47e6729039df01527f7b20cf1d6f8f640b07ccbc30471d5210da7849930ac525c8a530adb814112225cf4490ff2194c4ab856d28896a0d5290e39a12892208286031c853084ac990203729776ce7ff5c6a767a634ae2145cfd874601d81d1a145769784b429392510972378a7d062228e90717f856b23e7961ae9af0b4d860c4f48eef4b40d747a13a70df82c4741ef65b0b924b275817223951adae69593c075a9759cf823b6112233a1081cd84c864dc94f04144151413609bb58d293eb26d284759e146ebc26d90b35ebb55fd21b176262965f3765ec850386c7bae03221de872a7eb9af3d3773fa8b6a62b018d43e9100b9d7b0406a3e086cd0544c51c91884e0ab89cdf13dda7e92769a5cdce167fe350e3c4886a74cb815847589c97ff48490bf2cdae9acaec1cd4c8fcf2bc0a1430861f8182672b4772a0316ec812d123f836321c270a01e20b5439acc5e2cc2072fa5910b2bdfa0d746569a1aaf436fefa2dff7252915e1c6467200c20f94981c533d6931658a0b6cb56b503101c7b77a612ca3a301d3160025984bf20fe88b10eabfeb4a1149f1c394c2a38d617fc4e4df76a0becc0a8a7cb80cd7be5d4d343f5226f40605e30de41a0ab2c1ef59221543abac4a6dc13945c4ed9e4853e36771ef6d36a074c4e68204dcb59d97e6ed5bb768ac934ac390c553102a867955d185a487f40092cb0cd36b64d485d0862e3738d6268f526286d6f5b751f16fb7491ef6262dd34e26e35a141f7256371714dd026fa7a188b521dd4617b0716fd020107fd0b32d21baad8c6546295c705f46f1ad1985b5859bac1d017be5630e2dc3b193dfb5b225d39baf384f63b32944bdef948354dd520cea4d0033a8ff6825a3054b24a0705db47df663772432a11b8be023670375bb4ec2607ff5153b7653b08f9c0f47e237677707e744839d433008421a3d775ba9ae19cf8564621bf74fefbf143c6af7c2857c6ca81f5979434114bf6265bee2da54c2905ea070f082008dcb43f4a828282825eda77bc2395047a7f2c92fe256ea4753fa0d2deae2b065340e0b37f9335ad7658d0b7148b1111111112444f4ffe4a3c3e18423885ab2c5b118493bd2e9f82de6e053c44a02d7f8dbbc0bf5da4c4bbe800403023c7db8bceca0c4a72e85fe2a41f8768972879ff9af3212a0e42d80bfb837280fe80047b9ba81b824611a020a8a8031eb032446425034f10421e9ca3ff05d6d1b2e2207fc9b42f708e9e800f812ff0d743a095d07adde11cdd92564e18b42e58d815f4520b8736ae39823eb4e91fe20f1fd6567c4e7611b0bdde1d2fe8fd772dde070d15b4c7e608caef5c4bfefd22a8bf8cefb05ed75bfa79416f67a10e3b71d2d4cf356f29104cd8ebb24550fe1b17b3fce3671616f4bec727961f861863d73b9d9f6df8ad74c0c976bdf48ba8b2f58e1afcc53d770fdd43cd4305178d6fd57f7bc82606b46fe7f008371d69a5de81df4850677b98e4b5752f7bceeb97c71f2ce441729ebf76d8b3da43a8fa73c4d0a6fe4031947478a2e8c5d5091b064e4c79f1eba8bd7f6bcb79fc8229ff6dd278eae82d46a9f754917ea5ea8f055e5ceda156f21a09dac047794da4d960c43f9b21e89d99070505d9fe5a5bf165658a8402c2c635978502dabf5d19ee2fcc953ce65fcc32ca85ab3bbd0365736a4c80d6c0304789310f09b51ddcf3bb70cef66e51de04a6457d3763609d027003d8010ff020c03afcd38c607df3b8bfcb48b0fe3d4bb0fdddce001763f0ef699b14902c05c4019cc3ff863e23726b9ae69a06512d31c8136d8b43b49cc31f7a0ef01ed03adc89c7782ac3faf728c1fafb192f38c239aea06c2f5f31e20248bd7f02e263d2331aa2afd4c75aa711bdd36e9e4dd14ef23b72ed2437bb35d7b4537b6e630ad676ba108b51f6108be7c49759855ef41838a0fde44b48f616a322ddb0a9c20a9dba0745b67f93c18256a0759873681ece44f784f660fbb93b49eff8b763795c897f8c143f08e60075b0ff6d4e14a55ad7cdff6c6707ce4969d7fd27359085dd485e633507e7a93b364794ffee1449975f50f6d78ed661b6691e91091abcc0fa734b01e14e08a8e4719517feb9937fae5239c5e840afca49f5a472823afdc2a26a52e2bf2407cb3b3cbc23eab0fe0eb1f01d88e5b0848773f813c52cfb2bfbd9c597d51d68a31ac33f27a8eaa9aa6c8e9c6cd074b2b1a6a0dcf00710427c00094c097677379445b24822e15df6fe30c2ff5c1dad42a5948e02a340ecd54922e0d0520cc92499fe25539d5d88218410106b01edeeeef9f135eb8f055e59cfefbf9352946651100d21840e5148fef55b59046da0d08b4a2ab27d5149513c87882fecb5b1fc2efdd4e3df3c5503f69ad0a651492827fa518d9a816d1416b65151d81b781c831042c8d9c75786414f12f97735cb14b5a0e2024888412446509185728947ce73803826e84531d925ac0ac5ba18a5c79e938acf29d4927ffe4b1c51281453929014982816c62cab37661f3dd9c546312d598f30455908b86feed9bb016e28e68862140a857a768f3ecd23d60e6a1df2e5d7c03bbaf6053887fc22a8129cf327704b51b5bc3f053867cabf37f63213eae533c07322f7f2952cc981fe7702e7c87f56bdff526f27f3abda4d19da2265fd6e299c437eb601dadf4874942e6a22fc9344fec9a04dabf7a695e04fbe94b2a5acbaa0d58b7f68d3d4a78664e36f2c14d06e6e4e4abbee9f5ddc75c503daf274e3710114154ddaf554d23c60854b38f08e59e10b3807e431816927f3f08e9455026de2cf49a9d3524b8136f1bb68165da9c15f704956a197952ceb68fd9d167406d16a44d06de401dbc4ff628641c9e8333ec6b9b578fef2cc09ed596982287ce701ebf0f41761d8d864d8d867d8e81ab091e86310b489af8a43363e0fd4814b5cbd5fbdeff25abd34ae2875e93aaa824b314583bf5a2a5ced002ec139299dff4410ab5d4cd58736fd1a1206a4b98a8930947400832f20f49630e86575345fe33972015de303b465bfcc96c0ee07e05824fdee2750ea2859fe79167a69acff77f33896b2d03cd8462f0241ef8e0d33a8fbfb478129f9605230350d1964b13e7c66c93108027a996927a2200b174e4a635879bad214a5194c4c4c994fe64d1f2626261fa659fd358305bdccd4a484f1bc6059a704bdccb49345489a21c7b03bd9ec8114f6361759b8c87a7c4cbae3c2c32f3b343ea218c6c5c5a878443806c531275628429d8959c176342c3034404242a2c111520b982082a09ed7c9f0405f86871946777710b6d07d487c201bfda5f38f25cecdcddcdecc5eb71f1bad432086ccccdcecad85184862141121c9b2155484ecedac600111ac944dc535307e567a17009653034059599973448eeb547cfeb197fd8b9d6d222c59b682ca12f676565081623b25e49d05d962b181d885b333ce38e30c32503c04d8ed0e218c319b130950d334140a6e1be4b8540ab6b4b4a838160a28bf8a9952e63761089419ce15c73a01bdf485c58281898189898961bdac62625c684c4c8c2aa6251513131359485b1614a5e4df57e336ef3616d6f78f65028ac2c25531034cc71871e0f5628c9139c6185d359c83dffdc63f7e97363a9452ca683715333333b3ea6b01c96c738e8e314615d10c9ea3c528bffee919172363514618b19a33e819184be93cbcbd75c018638cd373a037ec183fff387e9412d6e61cfc30c608b599a1fc85878d99390b22033366514e2cca89952023029b130342c689e170314a4c935262d98c583681c02216b3c9a136c9799b27a59435462c9b40486c4623603a304c7e635a368198126b8c75cc1c62c42adc388e9318101926e78c98d49e358919095eb4332c248ec8e527072227dc0dd1f739f19ccb4f445c0dd1ffccf3780e5067a61e99a1d1a271e1a1f15a3466bc6de52939b20ab2aa4afceb57b2fadbd6a52e591d6949b57cea88921c88f889c32172b95c56cfe33cf1a5ae38720e21a8e7cad92b293d1105e95ecb38abdd790dc56da2d28e8c735b38e4e16125cb4e3c3c667ca0554fd456f6fc82f9c94e58f88911432e344a2e9c17b3fa17e9acc8aaad21ac871f845565bdecb27ae9ad56d5a889701b2fda1817241f906039a54d70615fb01cc5142c56cada5178b044cd2f4103bbce28e679bca3409d98da439f0dd0a67fc6eb3c8636f465bc188fe3901734b613ff1a8ae72889df501af5a8687b886b47d18240dfdeee28a91ba427dd0c5be2f338e596f792dc481c21dac35a8f70f7bb692fb5d96fa821069080de1d9b7db4d9efc0c0d3e339b07f06180f06b7e9cfbc9d2476b08ac5c59129d5d4d4949404b7094018247a1115bdfb631d95fdb459c5e0637709dc6acb9b07328c200621c61c638c1063e6c720e418636494fcf61cedeb16638ccf317be8ddc0db0d4ee6c51afffa012888b3c3137e1623168ba15ef36e60787d2c5f1f8b243e6fbc39775df546ad625572bdcda0888503fad65dfdb15df421ffc631ba47c3a05dc4d5087b974bba1cca7a69ec1e208679fc9a50076b229b1c11911fbf49f6180dd9638f80ac2240567e816184114b19fcd8ec5cf371fd1f7c08f6d1596e433525bc91104b1b8d149137ec3120fcd8736a083fc6740cda365bf2da43c29af641e26b15f24b6614ea59ae837acfa2a5dd2be1d9091cf36b1d9d31532bf9c09bd67163fdb3383e37cd63851654b0fe2fbd94951565af4b461f8636523e565bd8f38b88b7b09f16ab3e3aa072ca28f2b367067a4dec77007a45a0170dd8674f04fb0cab2d7f7e11892fb9d2cedd7b6084113f4744b08fff03bfc59811464001049f8884f063fdf901da82860acd5eb228b54a9799dc486695c7efdb08211483b68545b8823dfcec61c46084f083b085b58532e8120923e47137d2bec675b4c7711b862eb519c44a63f483202236deb60de573c5470f6adb1ec5281464a51b21caa209c0c24e1c9c3efcebfeae97a21e7a28d486fab9cd396f5c1ece4eadb19ad2fba0032c34451a0960a0c9690de916fca8023ab9aef7864543e90e2eed82363ea3431f028b927fada2c276bbbb43c8eaa4840982de2eeb329a396d30d1bba3bd4531336bdbe2b641df7ae398169fb68330fc88a92098edbec33056c69a5a8669528b9aa6691ad434cd5be31b2df7c7a260b9de0658af3448e5d4de13f4528b85bd2a2c2a265629114d1590212588338e58c194162c0d21012b569450e2e8e849cbc9939884436faf0114284de088c287a4269e849468967f9e040f24a10495a7a727aa279e4081e24529dd9dc76d0479a007461856a3521148b060a0b93734d6fde903421f99f5c313257b5dff84c59c083a3641db08bed7047cce311b76090db1804806f6d258a1012f8ea04140545847f0244c45f754c2195c303333f30e5b1104510afcc916421d28a2054cddedccbfc3383b90ddab2803c3300cabb73fcba01081bd34424c54307b059c2491e5a779427a4924d12bb14515d33fb8c30d67f985d000d743938f8062804ea1fd911942c8cccceeeeee0d8fdca9b08e40afcb3a53017f9c60083244a06f2fe53e329112f97f720042b20c34c532d012966be42b3709640ebe64170e4a885e97edc82d88626593e587c942638c310937d9fea682d551ce7184df06ff8e1c6180e68406918512534a29a54060584b09638c5906bd4ab79422ff5450d0db45483c69e26976d3fc204eb43b2f389f3061ef6350508ff28313218a30863bfb00460b7840f4b136f42c843b493ccb11321305614aa177f2e03a587ea944638cb1665ebb0e36fa0b9ac67e478ff8d7bf0283d22a4a4a7352da75fff77327c80311178d615e7d07c7bfe61d7f977f2eff207c6039fa03e59a86426c94ff5d0b2bb33bc0c416533a8aae3b626b3585369307f43920037b5d341860e254d7ae73b271cdece2be0f52385585921e9468ca8190124fdabdfa35221a04189c9214f407ffacf080135814f1c42915eca08517330b91afbec8b2871c7fd0a6c1e8f9daf35824fc4b301b31f7a8957ef9e1f312cc46fef8cb3caf79cca3174924d1594942622e94d6286dceaeab33cec9dc495c368a60835f64847a160e501f1bbb82d2f03dbca3dad881c15df47719a0db738ffd951f01209bfd7571de4346c2efbfb167ec9e7c968f7938444f0991f5d93fa3eda1ce56279d16a54141df527b85ca499a80a94110e505a215866c3ac873d258e7c8afbea0ff326a5a65f8cea9bc7e719a96f5cb3d97c2395c092c20d022ca0c88b0188aa2839cb041d3b4a750c7e53524fedb6b7f59697bff0db3fe26fc409b28487299b7fde646d49f2d5bc144936d2b985822cb539b0104fbed579ebb789e84a464216aa2e69ca8cd3d96d242ffcb3815aa69f7ffb95c522c34523d8fafbea0aeb1266d823a2e05dac09fb35e4abbeefffb9aba4948f519f8d7d17c973229edbaffefd3b4b6ee7d05bd1d16d44fc03b2aefc02c543d161e853b61613702faaaef6883e76c7009666f0480a8a7aa2fb1dfb49fda9c28d407618baa2d9441976076ce979a974d2f5319a93e0146545e67711b2336c06e7a424a27b93071fe8284a1effb503dd07626a6238ae960950474de780eef48559f93521ff81d151df780a6bbf1914cff5161261675ca86545b07f93714c4017a3b08b2240dc309724b97af442af44edb2e970bba9aa0a91ade918a8e7daf058d435e6c6ccf087bec1dc76d6c803d90217d554d073d20c1d22c51a1f38868631edfdcc71ae937e29ffbf867243342848bae4643ef1349404cb05a13e7e847290d807b60a50b638187ec7fb0e003bdae4e0591d9cb0de3b4e72035ac562316ced18f79492411f48c508f425589a8a52b9296e4924c52629e0009a925cb152d59aec0b24c4a29b18c318e55505902972e68abb6fcdb7a75d5a965c1d159450a8296969c509aa6698f7294a679f051ee0ea36f36586d0494fbd45f667271a9dc525d566e1b0e11231ee7b956773e32286a8a45a27d12ae52c5b94e05d1eae52a3e9db2fe33f3ab3dbcd3528b71151b238edbf40699fc7342b946868f7fdd40360a9113a7c02905146ea8efec7d88784edc503cfebd37834f7f136575fe31bfdeeb4e104d0a8a302d8e8e948af0c88f7136047bf941b02a23521124288190ff8d10b47f0042f85d9c5c8440f9790890b69d932c8468810b82faf5d32ff8504021254ee11f0b2792244918897cf83162f026019a62e5774346e2ff598604c3705c17a02e3ac41216ebdf1f9c3c3258d08ea293788792b716d67b06d61b0bebfe8dd4df1040c03a9de4391de43e704e63403312c2fa631fbf1b5623ed8d401dadce7925016ee3463aa993f8b1641b10aa3b3ca09f2589b7512a5553bf6d03807fdb7259c6f50c9bcb45633196c56a3ecf99cf3a3dd026c94df48262373838431afb81f2d49d2c39f52ac0f66bb5dd6209b0f726090e8f4b6d0a4db7ddf0dd89afd78e7fee7ca566095585ec96526a40c90a16206181344af42186c1aff9fc5302bf1f3af18f95601f1fb693fbd98842ef4fd7e1577fb713a32ccb20129443bcea09fafe84885e5672db347e9c854e749f59cea59e776f50ffb992a06ffd074cae65998f7efffefbbef678a6d713047a696834cd997d3c2b882b579248a20c223f40447e8058896b17ade0872656b001248af0218b228490c0d27242dff213e8fc849f501f9ed3b34dd13810e313865d4081a26a273c6003279430c5141f9822c8064edb7391d46fb549935491ed539faa4db8ca28d7849ac4874618c1021e9afa1f766fb75341209c41480b83c2ce8802f8736d7533080cd8fb31651eac6c1164d98a165c587e8c0a5bb95205ab62f93322cbdfa221f5dbb7ba5584fb96e7bee5f91f8a80f26f2d5ecbf7b7d49fa3ae445a5e557f7e80723072e4e94a4f135f61f9ffac9ef55e89c0b83ccc03bd6eab9f3ebf36afd5b545c3f6aa2fd2f2b436a1df426bab5bbe49abb7e7d78a45554f5f3557f5a77b98caaa3f3095d61f55fd992edf54d596bfeaf975bfedf945ff762dcf2f5a5b5e5b34b05ef54558afaa4d8e88b83ccc37593deb8bc0bcea55b589cbc3bcea79dc5b0e61bc96b384625e9286a44449923214a59389812f18d3d0cbdf8e2223a57b1a0ff49a797ec5fceda4fe9f232230bffa9fa39f2322f259cfef527f8e88b834fdaafe1c1159bd4bfde92bf5879f557f7a09ae9656575cbae9f613b6b479adfe976f752d92aaad7ea097f62fb5e5dc6fdf2a2294fdc4de533fb0e46089318e50d4f2474452bf0d31e48f3e046df8f9f9b7bf3eb4459102875e9a5a62ea4f4c4cf52738d4f4d2f244c3c3663cacf36456cfafd55f6f5ab5fcf527cbefe2f22f170ef995d4ff1c1191f96d2886570c118efb54fda93f5df554fd71999a817ec5d42598eb4930b5151fe8c57a7eb16a2b561fa1246cc9afb48af46bfb7e6d9f7a983f22c23a8aff132b11ee61ea0f8c5221eb65e5612e5e1296c4fd8551384e4a93546d11a1aae76aab087d55cb87fb1af855047b0a22084514b11414f4824bd086ff67c85fa9b700f7aadadabea5b67c54dff2fc2d2881f20b5e8136cc908a0f4d64918517a9dac4025c0dda7eab2d1feeb74ff1df30c517054217568a6880a4f2b0160f532a027dcee21f3fc326268aa08dbb70e315cbbf61b1fc920514e5c522ad9b8c7af1eb4622270f3e411be60e7061899c0cc5a11820e9dd164924c1fcf1f8f08fbfc75f67ca283d4ed3a2c73f76d17cd705711c69946864d5bc7f18bf7c97527e3cc21c923df641b229b194ac31226d2008f6329344420c3358a909249070bf61c14a73e36d04a6828a7eba6d1dd503bd34b6bb9fa6bd22812fe3671b9225d2428b3dd6b1675371717f74443f900d8a342df8187bce2cc378f314107f18e78c43304321a64c618085cf3436098d85ab20d07fe95e82084b40bbd7995e4663a5ec1fe8e0387f5f75cf68bef48c685c677eb45d9ff125a1bb04f4d2eec9530f4f2d859a11fd7f7afc27a55df75f91d8047eacb388fc282bbfd8e5fdb473caa315c13b7002cad1e94d6d4b125cb90269a8c01b3f0240329352ce2cbeb366c0412323a2fcf044153720b2d8ef14d91e9cd8d0804b4a293029e89dd66873419d8ddb9e7b22db731bd7590099a4b3fc5f00ec19bb40f6ced7509532f3409477c38f455d0b48ef8608007167e7f74aa048b2c71e49f6465b56b12aa5cef6cd00b7e996105fc2f2fb12966b5a4002dd29b26cf9778a2ca7b8da80840788602f33d1306b3cc0e7ce9a8b11bab6f837b0cef610be12de212d6c1e2c6c1d2c2cc3c26fa4a4c94df64600e86298922343a0ab2bee6d367a5cc51162603995849b96a03d83dbc08fd3665d7bb8a9891291d15276cf496995314a29e394a424154b0c6ece39dfb20eeff86c3f0fef90b63ba8c3d50e8ae2028a6291f827e1261bb3cf9ab37addb969561ab7e9d9ed74bcc4daa19947237e20e205545e80c5bb7dfc33e25fbf435897b83542e43213ec9acfe5443680a0ae7e8c88db348d440289d903755a3ef163fde917ac2da3f8fc820ff4e23e2528f43a68b30115d8ae77c77233931331cc3882cf358c043ea66915071038a8e7f05c02ed6f596a88f6d73f424dc2182be5c25e17f7502061334ab525b3a93d349a791aa567b122a53333301f0120fbf231ab7f59bdc8acbc1799da1a22f32e1f4426e6e5e559efb2f260fec5838199a93facefd5ddbdb773765d7c1bf3219cd104db8de7cccf9995a646861d16e6f7f5c2736665bd0c9f10d7df18dec65de1dbe8c7a3be8d7afcfc9c6b04e451df463e7e62e97954a5d728c8cfdaf92780ef8f01f8fe09c3f7733cbe9fd2f87ed6ccf777ddf7d3c87c3fcf8eeff7f1c2f7f7ec7cff0c3a374584eb4fc0fcd6f1aebf395e85efcfe1e6fb7f5208ca11726108c7490b442b282e512811aa6f9bc7f10d80ff9250a072e3af7f5ff87de3f795df37f531bf3dccf7f715d6f737172fdff784aff9beded7ef5be34df86e3dcdf73fd4f989af199e3f06afc603a2618047792d343cf55605789617e331c906f033de0b99f91584bc904e004202502f4ac86aa6de007c27640521cf5ad54085bc8c016664a84247f3ae9e051b30d4dbf1904166c606958185173aeaeab59105a05e1ecf829015a690b7f19d90aeab97c6cb08e9645ee88847bd46429e05195610f22f030b2bbcd0918d7abb878146bd32cfe3676a9061356560d196a72103ea672a134e061a3346323cab86950c4f6b781b2f74d4522f8d1700aade990fc0731ed72385cb7a5765327bac5ee868478f17eae51ed5a30515d363c7af7aa4f0c2ea5b7cb87a5b1ed5e3270ddc0fd7abf023e66f6e50cfe9cca9c2df542694b25ee80855afeb676592a1e6cedf54267347bd37b3878eeb513d50a8d9a3ee207484123adaa9d7a8c7ebfcb8e9f1295426f42605d4efccd779ce87aa50afeb5ff811337fa8b0fad1522f7dee47dd41e8c855afd18f57c127e6c7b37c5c2abcd0d1aade96df41ebe5fe8577f15c7c54a1a31bc3bdf1382a93e923e6858e725ca8d7654571f8b8512fcfc7f8b8e142ccaf08e052efeaa98f5715c00548153aba39f79b3870eaa5efd2824a85a35e1c8fc2f74247b4de16b2181e85ca64f2d48bc2f481d3c2531f94aa7c50d50b1dc550af918fc70182828fbf0104851b2f74d442bdf47154dfc2bb1020e75d008263027101c8aa5ed6bb0059b9bcd0514ebd4640de0502e000f21f01707c2f741453efea73ea7579171e6648109aca64ce186a6058416258b6a632a1415e31c4542699ad37e65941fec5639259a301c0f454a1a3cb73eb9b5099cc1a1360e4cb4b4dadb7e64da84c684f65d51b33fb3208cdbf2a931944bed0112b088bf51284f5f24247b65ea3206f420f4d90973d26d0bcd051ac97f5f1e5e5c3542699351a0279a635eaa9993d31f8c39e98ca84b37507a1a31898173ae2a9d7a8e763185253afd1d0bf7abe5626d4ee207454535fe8c8eb8d7987f5c208200030f0d8f1c28e4e8e0b382db0e0d5f815bcd6bb3c1d2a7839fa35c3df78353e05aff5383c9bcf0380bf667814bc1a7fc36b7d8d7742f5bc1ff89aa10a1dbd8d5ae3d5a846439ec66b0df9523fe36ddf79dacb78d9f62c4ffb172fdb9e66dfe2a52a7b5bd5eaccaa0cde8f17e2f5f81eefc707f17a3c10ef47a5d086df87d7a332f450567a98163abc600c1bbd0c06435ba0c0420f7e4087a52158f7301fa270f281b5800b9075cf87cddbdd68b6d52cbb588e41358b31c61865c4309cd48f1a4ad0c813e3ac382ef93c3d3d3c3d3e5869869e9e1e1e56e2f1d133396682c2333637f41e706359fbad66fc1de3b7778958cdeb9af9732ac6771cd7e11d1cffe4bf6841ef5f2516c99268e1639b8781edb98df37e78db3e7ad9d69d6dcfe35b56c352fe169f235fb9b1cd59565dfec99d4ecd23c6582265f48ac4b0fd9622c24a3ffec92ef23ed945b1a5605e4be922ffa4fcb1f1b3efa26e29a58f202b7f8631a0482b567e45a2f2251d014c93d70861cb093227a4e9dde406e763a6d7d16d3bf3d8dff03070e351b8617d6ef0380a375eca1bf5c6b717eb8dbef13c7ec38bde12768af51f33b58a7f4e05fbd74c49546cc8806a5f8305f4f690edeeee864150dfd5fbb67b19efb69559612ed818feb9b7743fc6c43b1ad658c5bfc854ff847fcf84b75143be7cc725ce91056542f6626658ffeec690ea9da9d95016e49f67439e6386e7c8bc09bf49ce0bcb1f6b609a28fcad398730b648c89c03fe98a937da99df5a9cf8f6629e6b6ac3c098c53f871d5bfa97784743ec845aebedbcfaf5521bd5847aa7952f8fd5eb96f5f125eb7879d677c598966a50a1d1de2c48e69798bec6df2f32c52558235395b814e439cd1497621536a1e250a386d7f29b7335bcd46f90abe171bf45ae86b7fd26b91a0d21fc1ade752c10d6f0e8b7e7590821ac5148416467fe2d0f6480c590a08e2b411b7fac552fa581c4f225cee156fc2b836257662a66d304bdaee44a50e78355e9abcc36dd03604e1428bd51bbbf5de7652fe3b18d897109877ef170e8958743bc1c53f46e0c825894601196bb447a27c5b6c285fb3b51273518d65b0ceb6574155b4511a678141870ec527721e312d43942b1ba641d0b2a528e743b383054244a7482d36860e31d30b04d3f4b966182f6d0e0f1e13932f50363dad91f2d9441e3bb1e6b810c0c6b1b61c01eabadece77711347e16a3acf746c67e5aa2de53d4bf5db9c2c4b4b4a4a49484c49f046dbab615b677c756b1509a08d7e9172fc19c120d0ad261e9d54e5ac80c1fc3b358fe8ece257ed9c033c5690a51b48201279ef4c5dd3f38b9b87dc0837efe4dfe5c466c803a2da8f0396e52c0f16ef3fe010085f71b5ff327784e7df7deff6dbc7f4bf11c13de6bbcd3bcb7de69bc7f53f19c99f7ee5de6fd7ba9abc0bc7f5be92bcd85e7acdea59b3a4b3bf518dbfbb7199e837ad7dedf8578c764618577e9782cc773c1731951c1cbe125f194a480c3cbe1270805ef86d7355e9fe03594ea7514cf6b22de860935685a3466baa5666a2b5e5f692eb074937fee94f27a0c6e43f910e7f067c1dbe9a93a3c266899bb8a170675282eb31ae9c0a48eea4444bc779cc3351cb857615af2afdf1db5a4bda3965ca825566266ae8426873ca7ed9224b2f2c1803698c2065284c06e90830982b6f881ac1cb2d9cba343a8a4ce95543dead4cc0c000002026314000028100e874402b150342055754d3e14800b8290448056188963491004394c21638c210000000064646066868409027d23458f69591f27f40ca1d3312ec600bc33f46b696987edfb7944f8fbc46b87b44716bbff9a4535be43a298b05dfa7cc9e2ef762c2b2856d3526a41c57c2b317906fe3022a6c78a2079dfc66a2331beab35b203316f30892058c8ebf4977cb95b14233458f3f70b3f03c8366a8182cba45ac80294b56764f6b44bc63ff6662c0d8e0d01589f56924fb535591182517ab4b7fc81e4a45a39657439c5afda979044efd237e5a4bafe611876bcc9096fdd2159d3f5c8ce274287ab490bf4ac172177fa49b6706f8b6e7e5e3a18b909a861679cc541e8c821d48408c52344352a20706bf4124da8e03c07aaa9d284e378026a59393a41bbaa3c32681ccb83b62fa20ea082e08c678c8b6e915fd7e1ec3180d3be7c7995ec41b0b4b240164d655b47e09016a57cb8c3827b04db053cfcde6536b4f1559246215f5685ca811336b9c02a81214a33a9a51783e62a721237a6d7dfe20df7f90ad887dff248f64da00acaf6b18662d36c805ce2e90e99ffee207393dddd3f1b4b4ff463b369ebd4ef84d4283343bfe98ce5458b402b7298cf6d53e15914d70e8efaec886b69c87a488d7b66054a65b0ee4969191640555f5823441586681ba1d0d30e8c15265b42619e1acd681840cc12099c5f600126dd84df96521fd9d89904425e1ecb8c90ca1c58d2bd9d7b739679dae296cda2c5dce495703966a7d236863a665f9b57803c1cfcf8feb464bfed39f6670303d133cea399db987ac26c4baa0bd59d9c467710fe75c270c0591281a3697aea0aa0fc0ea2c14dfc260b7bd2c8543c81d9b0445aa26da69560c228b827c7003d61b4eda1419af55f411aece61ccf3693e7efa7721b6b60d87acb426fd393a8560aab3bfe0dad3fd2306ee1f007f438259694cc5de39d73e5ab117e88aae2a87d7428ae10c952069f0b423d1cb7cc0c95ac196efb066f68b8c2bbaceee6d1a4f0b96b6397e60efe1aeed2f8d561d7c565d86ef439d98392b7b1a65c65c0b7aa34b33aac3abcd63ff28123e807bac7ccb9b9ec5b0acde73be4900ac861b78984243f692d40b72b05fe3c18dbb608efa436e835bc21e90e7db02865d831cdec2345ebb120efab123f5880c25087a19852f96f19c9b134158ec47d934a773744e345aa2b6b2f7414609d17a6c9848f86bb34deb5e87307077c782aaa5ef8454ff9617dab56d18b46f875c85af5b0babd6980e8ec14429f4b779e4ff03502a133f6809c848bdef2ef8a14bb012e2f99ac17eb2281adbe9361226f776ad377e6c8f255147e5ef08c9d7e7af4d2f347d7e887443b69609e3d649838a3212da229d4d505c080cb21832c37855e151ce0c755e6bfcd5afb38dfdb250120ee5cf84f3874b2c83d3957bd3247f7b887dc5fb8f4b93152970c7362672121478d9201e1421cebe4a9b214d1011b27a1eb11f4876e20e04903cfa1d7fed0fe4bd93589452e42ffa2f6b0393eb6ea809d94caa4461919909b1df2f3bfe525834f63c2d20925ebb9085eb4bc189b276e964cbc7c4295410a07d04952444380a177869bc5cdb2aed8f480a0c96c1c7aaf1eee872b80b30c2223f51f74fb3dbedf7725615489bf4f3fb886d16eed8dfecaf70f1cfe31e89fa69afd8f5ed7906aefbe8500a408606ea2a7ca23402bd3e42d8df8c3078808507c3a80f81a61633ab0ffae7553faf02548001aeb136947d67e08165fbd52c4a6d7cdbc710a5b343af00a5d386c864470edac1e30e031b96b09ac23f5b7c2e4f4925d5516f6f36717e1fb33f15c9245c6a682582ebae2b784be6f60669b5e6651f3642ca119da3197f1cf59e785440ca67987a74c3db7a5e43c91c3af17111f048f577e3d8db941a8d14d01e940b5b609d1ba67d37877f4852be36eaf4ca78219c4bd2817753e4ce40164d532d0e98041fde44edbc774db6f348cf85584e72b75543498b3c2770356e357a53813ea3f88e498944653510a5e2671b59369843ba4e1cc965d6e3670ad4645e60f142987f956c3481e55bf94454edab0742f616fff09ed3ec470b5e2729198d243d1813179aa1298e7cadae8e77c5c50206065bd07c3fb90f604c41f1471cc4143ec553c298db4b897d20512e71a28ecb5dc80d4e462ab83c210b43e235376f19c51880127fab2e9914ccf4fd68772e3a50ba8209cc22e08da11a46ad569107e0ac45a10f2f89c55b0faa5f2963bcf36a87364fde1ed3c674ca899e7019b6d858e82390f0896c22f50e3264027525b3ff7e939ddb23abe186c7aa1cb9c069fe17c337a4887611226db381db1f38359ba60011101d1bd29819035bfa1fa6677cb932052f2f4e6eb66786650182dbbc7e95ff585adce804e1a1429622a24fc34df689fef08682151cd9c6a4ef48c2d4ec62cd04c0a5cd080266b755c05d10fbdeda4324efb292e901b9f5836ef9d5dff6d4999c86a6638274179ee36fa1d697b14b812016495a935d1103b27fc54f74093637bddc65d03ca30dcade057a440bd968c7dd432febc546a24dc362b7001f611412d9fa6390c94185ad290edcbd532d7e738e9b715a8b0dbf5b38577f3dbe89f8700fd02dac89bb74d43974b807b758c3c365fccc57db3d697e6638e2f710f4569c6cc58dca8c92b03b1ae385b355fbc3fd3e0f5321751742e2a1233ca3263eea54296e390bdda280169afe145924d3c36012612f85097845ecc80546b20c5dc82aade162a2613c3bc86ab05a6665342252bf0f809fa1044260f964b5ff97c179c780ae6497a65f91d236ad6bffb7800b1e8be6ca25a9f2b2b7c3df0d1ae817573fed3a5c95722d9fac1011c37d92e5f2388e448b8fefafb9589ededf49e2bc86b1bb63b57e5000785c20e31d36a54a4b70c5c04323a27f4ad2453cf7e1e8f24ae666eddcb6a97996315915e3dd74c892c293274937dd0973aae6de0da99dc0c317aacd849af66f807f3b48a6496ff2552c3648b56e88b6147e21b9b1fc57b6b256a51391b2ec9a2e87cf4d1ffd2e1401bcb38991a3abd91a1d6c55dc270a7889300cfc12624a506708e0b03f72e3f578d27a73688eea9f7b4884ecf19683d9036cd70956bc06ee36220100023f3f60302539677f0618b24c845a2cfc85fe1a10f7d252011b909f4216038a631b01350299a0eb4d9f281ea0a13f7dcbeb09b3e39c497132a932cddfa29bc02299ac2e63674ba516091d63db51f8318ac68a92558ce8d6f87a82fb2adcc2ee4d2e8c30dfcdeda24d69f7628c0874c8d637507e6dcc6ea7be30d7980a8c7c67f63b51ee82fb98d9e710c4cb3c887b2db9e3684682d005e9f96b8b57082650388353c51841e170a202ff4b84fb0d6b8be8eb367790366b71495b45cec3ed9b7a4bd013a3874111e1ba6602d5732ed49da8a2d6c4707ec9b6d3617e0e94f24260ff68d9357dfce0ab78c41657690ae9ae3a2451faabdff28f5f64912d8be48a03c4c399bd86433ecdd08d593618f52d10d51433d51892fc0a3a8b5a87439a3c446fa215e2d5571ff89122c65f2b90c4751653e7f1ade67e5d1a399405016891e7d8d2ed8531c4d6bfea7edad078be78f690d70dabca04525a8a29804bcd07187c224d1f9bff54a1698c134a5b64402d791fb6bf1e227b88cb619d8d0fbf0e280a7e250ac98b10450c18502860752b94983d5acfb8e5d1b4a1d6b64b8e241088e68c9a3ef61210d2d4c89e39123b38b7d61ae5529c5513663fa3990f532017500a2006a1d7a20ca42952b6ce9cb81d20a41ed108ca2397631d7f6137872f19c5ac0fc17cfe9b2b21c7dd972d07e85b409081d0c33eb4c27c9911810aa5a5ad2d970781af22a67620ca7854698a65aae699c53381c3c044d1a643964400738aeccf19fab794cd4127302a6f3f84f969d5e5358e17a7d7e5ee703821263624cc2235cf4471e93d231ac8cc7f80645c9f1a01260d5aaa500554d3c56a0919ce19426501921b2d097241fa5c7baa1550bfcc4ed47d52e1c13143d6838fd656160bf476073fc5d99b4a1d6cefc6abddf2da545e9814fdc054462205ce858db91c5112b3bb98b93faef3ce7173826fe3e338f19ad3edb6b99d66d637cfd2b07249a3fe96fa18086a2a05cb8da1e251d02a7c1bcdf11d334ae5a7e7090a0585d3a8f88af0efa6e082837461411dc61f4b93e4a0ab4f55aba19c72bb883f18de9c813747e2ba572fd614978b8ec81d2444c93283c6948f90314b980fa336353be647d26da5c1c01e57d7705556f7dfc9e08a90ad62831b576785b760f39a6031ca6e07f27581d30f0c522fc76ed27d3d5b03912217e89c89f8f00c5f935da4fd7462a9e7883a871d8872776dcb8d2445f26c71b7afd29484b3e5d219584c571fef0adc07526bf822379a13a24f65f1f8d5237b82f40c2bc49bbf5aabd970a4d344c72aea44bdfc82c59fdc4eb5525516cc962d8a7651b9a203353894cc81ac1c309a09efd29974b10aea827c097c259c307d9270c9a372b3302ebc4d9a49d4b01ad682b87725e37e3b58e4add3a6af3b88e9a722372cc948262c28b681baeb02b84174762bc75132bb90bf650f5572508026ee822ed48173b694d5db49e49dfcd329ec9b17d4d979395c2f734d0e8f52aadecf8a0ee2b32845028ce2b76daa7501fa651b31492b202e11c1dc383df4abb23338dc92828360dce6227663add6ba2fe7a1e6d458a40bb6b2a2988fde0551b625428a627208375b653706da74466bd44a24d60bc7d6dc4849ab62a05fc01ce193810706c33af620591849a85e2062922ad19fadc2fe9fd18c153a8e2399f9ff2afe7d727a193a1d94d69137c8a2adc95def99b9fe19132ba547270e4697e39e95fee660f273e3e5dddef9af351a0e7a384144451fde11c340e0b673e9d8ddf8cd7ec3ebe56cf281a2baad553fe2a1fcc1a7dd8c018129cee62b1764458a68cb6ca90b805570a4298a0c7eba17875abb858d4045ebf8d15d6aa3ee33e210178fb86561d5f8097e8a2bc93b321f88057421c9afbe48c08c434289f82cae7a8b49d293b0943b2098b6d1c6bd6b45ca52df184c419360ffbf8a8b4dbc18c069d842be99dec5691c92bb5fcc6b674f535cfb6d7dcb70f3015059ab4ee86f8c8da429634b71170dd66856465b1893c70e691a52775f4964b25222696aab475b4a98dde8dd49c94f8da5f7b226c491c06d34cf5437cdd9d0255e093f3fb63755b8b7f9b7bd977168b2832915472d2b6976e8ffd724e423327f71d193b4758d0ff447223334a3b255434fd9edfe3e548efb8b6d904d263fd1c2793228396aa78ce69aae7e85acb8ac3a45dea0c826498b383538878021a2f2e69e9d4130244a11673cfe17227b0b4487e847c7c711a48cb9ca4839e057935418e47aac12a5ded30230fe489094456b281a5007a70b6ec918fc38de251a327195f274de3a9d6197fecb816b48e7b06688c945015b3ef361d77d491fc725ee2dca12c59881d9cea6c452dbd2d63432aaf5b886f2eaf61afa681d1d8247b5a0f2c6058abe4150ef1f2b2e445598a8f659a22b2746f56156c652c099ed09a5d22001065a8af8143b558d4753c066ec53bb4915d84b9216a5dff81e8708cf23084419170c4197d53ca478c03a2054c469d3b7f44378e89a1c51035c9337d7eda3e0255ff94647d59844efeec281b73543dffb086563e3bca277c579506beab15ac6c9a38315beafca21c4c528f5ee60dbf6c3ef4301f2950e95a9336826f7a89ef3300eb6711dc625a670d2b9c314539e6b2bf84c5008ab044b407258344e6a979bcdf12b7092b68eb7198101c1b6b8b808c9bd97f91dd67015956fcff82a2e67a9f0545559af096db13b6b0f6f4b5524065f166d3b6e03efb2c047c2957ccc850e83bb62d7efaa1a7718e9a3e1b70ebee5c2c85fb6c67c3d3e91b8f9ff2326fa999b9d859d1b98d7d2870ee1507ee47ca89ab9d32c49363b29ee666c457ff04d2bb896352a86a29624e058d25e32abbaa1c4fb3cfc2bf01269030b2fd76e881803e84d0e4143ad9618aeefe684acddac25616ff0d7faf24d759c95c2c517d6c8e8471093cebc796682d86e87148f815e36b311c8bd6ac8695377d5e3161c0af1105d0cbafb6cd4c40579d66e8347d2cbcea90d05821dd768e7d2c671e9b6800cc791ed9d78954ee59d6170ad5c9566d9ba45a29950251a603789bcd9f79837e20d807bf5fb9c18dbc4f35d1d291dcc2caa89f5974f0846d46b9329ac30a333777eb865cdaf023c0c9143cd588218ea68528111f836e784f9f90a9e891924535c01c54323554cead5d98d6d0604b9ff8483df26bb1ec6ab69fbd6992fb77bcde24d624095b3bebfeb1283b008aa3623476fe3154c04b3a5eac07dd2c67748c025cf17dde164e5998b9744aa7f03e654c35b0331acc6e1298cbe05db6bb7753ed9a1731843517ae715c733289a0de8a74364b233de4e29ded7422069f59f3775ac29bd9109decb3c66c17c1ac93bc1ad549736fdb73c73571a68c4aca5fbbea45c07a227876d1e796efde744a96a2f115e5ad9a8b542369680b61f1d5120932506415192c7f9fbae208388ef286b14b79d164c8292b7616e1e159164e4f00e529af842271b9cfb5a5a2b10454da005f9c6c83f2532d765d51b7ad4e582b0cd0ce8e59c4968f1f780217f61019b695158683f47516dd57dc4f57aa67c23ffafdde4f2a0a5b42d9c4942bf350f1fedfe9096a55acef4be9ea12edf2b1851dcc6e04ad0e49e5d4de90fe2cd74bc2b4e11ab278f81460cb308df2e1d6892f99105cf80d37dd555d29d006f4b59e1c6c1b91b297eb1d91356736255b6f178c0735b04ccd52ad28f4fcade4fb037bc9b3b8035e742b295e97301104ad948a8cc9f714b4b90af70a98202b7176cd04762d8ad58180a2fda1f3c76173abfa06eddaedabada47db7a70e04c9f10bd6df990a0c42af127934ac290f406eaf196f5c50ae19276c0b35c50b8880118c254e375e430df1a0ab1c7fcde8211ba8ae500246ca1200802d1f242f22c3771c448111be41d005e977e3c8dae27ddcd4b0a3285a4cfa5a088ff9f0350782d18dbb3c4716a9ef655705e94f02712e45acd1b2520c19fb1b0e4ddf48386ec2d300f37aa015cfcf8851f91c83af49cf883d4b7a9c2ea4d4d97d0748924aace2c01562387348e139e25c5c256ba28fa503d5e211bc7c502887473f5f43c8b226d5fae73572471fa1dadbcfbc8f0ca9244fdef977b97af56991ac6a2bc3e5adc0c9576082107705ac60e82876f43051704b475604e26bc0658879d604b90f44780031fe0686c28a9aca56c840c26655afad8b8096614d7c52d13e7c16cf0d03c64f7714f3b9cd348059582c12099092c650da975b86c90128813ee540fd5eff0874eec4a0d2867cb87e1097f0b5ed3831ed408ee4248c860400d7c21f3386921057973423935edf04ab98e543a7791e07cb3789eeb14b141215e740d8dc4846a1f9027650c988e5d9ed3eaf694237bebe109db41c23d2e52ce6778762c6b2037c18e3d8b447e06da44ec150f1604f48602ee96eff326bc372e71e447c259866a30f9c20149d9367bdc9ae1ae16fc28a93dc1590a9a58fa82fbebab11c8a80cdf0f7d6002aee1e3a3b0f14b375149b0d397759024027b05c48c9258a52e6269ca962cf6c54752e54b88e4a483bde74caf0083ea40ed4f3b35956d98c6be17e0fba56a007a1c0cdd8eb09e4c2508d767c87318ad2f650091de78e098d1c0ef6bb84f4c1ddfe0b2bc6363a14623f32d7e912221a04a8ddc10a32bd8ae9b9dc498d12545804f823c4211e90c97467ad7452ab1283312fa4b8b7afa078d074070914a8479d24897a7874d36a96fad0c2758e51af28dddb0ba081f00b10557d218f1d2640b512855b0e56281899857084b6b95cec2e206c93210d9ba52bd1e6c334a29aae2786bccfe76fff3013d9be0b06fc6be9e7276b90a70e169d3ecd557e4176fca6a991bace89867a762f3e0a9a365c890acbd54601d64fe21b03e3a7359eeba7543c7ade6049f0061f798d9152998f383c7278022adb9ab63f7515dc6218a5ec2e5b2ad7a8261a9a80c9397c6342cc87517f40774c0f8deeeed11c7ffa2ec8c11107d8b23581d00b9f4028eaf369956c966302965072fdfec2b71599896f6ba926506a88090b51a26277f8d9555c6051291381a17ddb2932713e89c5f603c3a3b5a9f63e6dfd11d679dc49b577ebb309bb874a9fe2ccc134b3b924f46c638f691bce36472ca4e47ec3c2288d16420ae8b2e664743e44c4b182e16d5eb0ded5f67c3372714175b0417ad4a1e326a105f6f7de1ef4ba8733498a08cd2afdcb964863aa79a61ec3a8817b38e202ce349f8fb7618f5d43d75c0a3158ec9239d4208a003263ce05103d38eeac96b5b18ad43f3713391a15b8011054e07eabe51c586fb4e9f9a3ea77dec8654cd2ee9809a7376ad1e6b8b6bee71c4664d2a6409c37d31a4826bf2f5e758b43eb22c9aa6626f09141f6598aca1dcac3b18fa5ad1035c5385792db2cc2841e194014115f1f4fb33d464e8c5b680608d09bac15b755b265cc4b79541dc6e29b03629f1e97c83a59611e250d968e7caf696fba9c61e196fcf7650e149dd3b3efdcfc83ce6756ab90638bc6a7019e93547ee9c2419d845e4e2c0d9dcc504df69e590aedf9e5ce72f52a4a8b3f40b9c7f20834ca146b8e817081e353b5d5bd8e42f0181ce2a120365afc0130702e40c3b15af1c8b6bda70de1401ea801a6e1852644fbb1c24bc3da42938cf5972f5269d5a5e927094f7fbd1388c1f2afb0ff8891045bfafdbf231139f94f0e829122da4394f97571bcd09c98919ddd2cd9772852bfcdd36abb9952abfb03859784d0f90e611acfef0c4f0f1116a0e2aa0a26d79850991b0c8d01f789e91ec337d29458051524256a32a0e18afbd05b78e90d59c0a1732af72eb2866964ee2ef8ddf2857b1cc1561656e4cd89d5d5e7c36eaf8122c953c27e0b14f7733a4b75145587df1213ebd82e29bb24d596c55d33abae5a23d5d0c845d15c67d95c8f8c687ce600ccdf946cbf28b33c902259f54195a5e6958f459f70836819005828de81fd25fd6c5a579105ffe0ec15bc1a73d276339451ab6a098fb1c23c73031173310664573ceefcf7ccdf785cb33300aa50a16291df1ec76e43ddb34f3c06d8972c62bd63761c3506230d21ffc5881925ec6959b4a76e2886c484624737d4f594aef4cc3b4e3f5d0ac2ee770fd1e4181a9d53cddc20ab948529692c2b15175726ee0797d3e1873115d10685825e57bf4dafb588a0280146090d418796f2ccf510040798c0d72a1b53a071e438860f31e8fbaf3ced090eeb5164c1a89d18a25febc1ec15eae5e9213854e9d28269a970b9b52d297826af41853eea697a013308f26c9f67fde1e15344323bf1f4eac4911b9964256de45f783b0384067dd27935a2540618a0eae6112122125281293776b05ecdcd1e93177aed445573a77f46a4f6e88d247abad19969f82cd6b47add782a4fe1d039a2163585f80298151e1a5cf68d29236ec4815e0ed9d326b6232e35b596bf890ef4090fea10344095db0fc0521ee4cdad867df29bb3dbe920a4a9627a63f503f8637a783d5c2ecf72e1d364b40508a8d8b02507aae48fa1a78be008bd48a1d43d64d991bd9314afd0df104b1805f2aad5a8965cbf552301a1e14514d9f18e8a55be3a4f814e0fe991e8d5ba2a89713c0917908b92025b1717a7ccf06b99ace36d8ce994e804fe5ac11a0b183a6851bb05dcd44b165c6af6f6333b1e57820ca39cc9da048d6f2d075a3e355ecad61fc72510b8c6b6cb055100edaf483cdc68e7a56a06dbdc1df79d3ad68492edaf95728b7d6f36fc25b47d7fc5d857e66b432baa733f2a67d8e74e1b1ecc7f9908fbd9c1cf6831feea2da39740c5c769b441e658ddbc5fce8a5c3d07b4f700ad38b6d5a8e62c85f0aa74df8213b07adf7d395a13fbf10f9bfd0c39b78843196fe51882832b1759458ff4fbbf44ceaed668cb9df8d615578a29c11ac30496a4210d863bc7e7fd15fd239c6509dd70ba00614f163a081f8d04a274f760f33249739114d0b3f08a0eac85cee8ad1a6c51fb36413d1b8a048d8cb1ea0efb47b305b29c06509a3fd9f2b5bc6c74d2961809ca843de24009fe4628e37bb158925157aa4db4f81c5ba179550ee102027b98c3f673599c0a7d3b8bfb6b837e513b47a262a31871373d54a212962a2e01d4548b3c386cd7c4b05729d90821cdd906dfee86647f54071a1b3bdcef7ba50f9d8ebf61194d0fa82b789ed0806d82c77a64df22655edcd0467be3f13977d3196587a984576478e9dbe0c7f65c551065d09577f0cba66ecdc089edbf8bc6d54e064387c642d98c8d82f3394f7cfd37f86445af5962fe40f2ea09119c389e03e72787976f76e85025d7d1c55e58c7a4309ceafb3936d124c9ca5603df481c61c1edd6286265b6676398ff659d8dfa83972605d7d8fc1f3847a004bfc6e2c1699c97da5a1a8da9a2897ba9bd2ac6db657a05c953e070965a74d8ed2cdd7e002d293fa348d4f34ec72676df1e380863e21104e50d1a6a422c516089ae58e4e71ea95da61ddc34abf64f54bc68544c6c225d55cce62e6a4ff2e08bad0323ec05d9c2fc3244dfb6b79d477d5848b0918792154385890baa705211df218b0b3025e253180d1f41eee683e12a3e024cd1e45228cf83c53e9b2656404c886c4423655938e2f06c94f1470f2efff6d454a186089f46585ffa46740dd5dbd5800a93ae92b67f8dbdfab60d473a9e884504c6f9152349973aea4df29ceb5d45e60914ea1c2022a143078cf29730e1b8464f05bd0c99e1311499da87f67836a014ecfb6837ed40c4590440856674e7ab20f8d3eac269d132f182e71d0ea1452b41e9c02d6aa7cacc20577b1d88a6999b320f237bcdf02dc2094295dcba88c077623c4680052f184e4be8bfe2282c5383e4494b872b4428a09bca3a32ca44580ee640ec5137245362152523362c2c7c5123ed0be109977f0477cc09d4435357cc02c170d5ff7466f9b6eac81a3a60690d9664a0372d879076efd8c91ac3049427e653f9b7bec25eb010078bda106e7cafc19900af62599b0815c0460c204b3c8773b8346d3128f792b5971a678ec7bf43786dc3063f9ed8aaeac2dc8210abf5cf83d2fa1151ddfaa8cc4d84162f31c956b71fccd08d5879e22d2839b07d8150e40b21c63a7ba7122bc7033af434971d6d62533a3305551ebbd77151078e4c73dd37f6cb787985e7ab49b92ddaebcaf876eb7ad1362ed60f351c3ae4354a9a8604c5c1a483f65a006adcb16eded4a81daf1cd36c7f16d2020f61b3ef84b7364a36ca6f63c3ce690209b7c223037ced9a68519c3b85e804813b343e01a401e0fe6e158843a770de32779f24e4764280b8876e21eca86c46fcdd2667e00781f31cc369b266bddef3037ef99f3085b202c79eba75e234cc6146b5ffca40c8189cfac8d8bb9664b162d8906362fc34f73800e7ec124d7b7b9a0f7bfe1ca706a1f8d60efa75e6db008b9ff00a3450c36023e09ec7672790c2400f4c4b8b838a409ce3c483d99f5e9cf8a300558de49c0277c22472c78fbb138998a926f95c44f0883e69927bf5e53a94a4386099ec85c1914f67aaecb752f8904f831ed56ce9d8a4330d45c90518fcaca237e6073a0b00f1e0f37519ab0114fdaf9015d0ecae063dfbc1621ab9e417604da8880fcf961810426b23317f1f5dda84541c0361f75db18d7c72c835f84cf21d43cb1cf01b1fe7ced94d190fddef76d013b48653ae8ce9fc6b0980188b641c8ed5e1c2d7d373878fde46a62fe92afe4345d0ef01b3febc5435a4e41f663009419c6f3ba086780fd894f94959f7809650012cfbf998238a6dbdea8258bb8901b8807082e8d9a971007fcebc965acb104b33bc1354eba0f0251ac6cc379bf29ea968c99211ebdb2d81e28e802e064b234a4b48a61f905a183a6afea810185c9b0be3aaba6bfe0b35ddb9609c3ff15cf39fdc26aa0efed4f3fc173f0030f8afee17c46353f7d0604764746a9565eb29c976a3bf428984f55d605c9888425db0d9850e2c1c2696eabebbc644e100ded96951610a25d1340d72f6c42dd03ba3d23a5e78d9b514d1ab2ab01cfa81175929a05430033d6c7901aefc2d930f1439a496ab94ef7f6abc78328357ff017044ea2d71f5ecb0a9cd4c4d4f292aed69632d6e4ffe659226ae1488e0f9aa6442ab6ba0f2fc2d1676f01f705046415cad06689fa2816fd7413b990bbc59b45b71b7e4f72ad28e57a74df78b85315e1fafd0db471365447210b0982591d5262bb2c01a19520c86616232610c9fd9e6289dcc3a018fafd986ab8e79e44138943721da9b05403dd138a99f319fe43dcf7ff9895a57a1b52b473276e755bd1628c8e3dcedab2848314acc28e83073f41223f1cb47c9fe9967a1453154d4514941146c54c2845b54b01c5ac0e896a20a21a87b3db8bec6beb38cc05999f6b4858caea1bf93885c42dd0095ac819074afc01e4051cf80fb4ed26885aa5ab7e78580930f9951074f2d9f500707f897ded912c024affcd9b5327c2c3b7cbea37c24c5c4f9a32d2c2872ccfa0a1462c9c8f083516416089e9c7013d4dc5e4e9c824c95c1b2145c78bd0053a53d564412d1de746f56fe105e6ab2dcb3864bc7c490e2837e819f38287a0e3943dfabc612b5fb907a50679e1b1802595fb9f5428ba1281eb388d6d54978ff9ef92579673a7cfbd46ba57b2fa0137824890ff6357d77db4b21ce0ef4584d5644913d0c407c4707c2c571fd368493b24c4ec8ebf6c6dbfab6251f6a2b2a8516304dfe22ab9308b136b809fc7c97e71e5fdb46562f44c16831bb0dffe0953e29dc184d44fce369a800522b4016cc64b9335638d1b1420566e6b05b039fce0ac79c4c1de2a93b981c867d5e4b803aea19288b3edd852ab5d279013b7807f07b126c23b3037c674dba83a1141f4a9b57ba49eef7aa059b5cce62986a6218f75682462fae9e4eae932121dde4ef951d5a2b2ec977d230c63e71309b83c5de91dd103e0fc400d7dbac7c36697b4ca30fdc52da24b08dcffee846e797a3036c0b24259db8f89c3c1ba5e5d2691c74582d5ac5264c0f4c9a2a9d42d35f7d225d5c52bcd65a2109c45ea2975d2c66714db47cf73c6d56cbbcdc74811896b43b02956c2205b4c96717b0569123765f690c95a9bba51a1e8830fb3cbd1d8d74cdae11a17b349f3fc87170c997409c39460ba009c9deab51d7bc4a2f0568fc9252f7233896ef35d6662ea8579d206df2c8e27d15a87ff0c31aa28c29a6d71f8528490a181cda3cde6e64e3e6b110deeabc4a91005c1782488284a01c63352e3f1c7bb997c3a9a29bfcb730dda04a24673f1e439e0c2319058292ae169e0aab07c36b522b830cd8000ac4ab6728d805cad08ddd739fc2aa64039942c050581adbfee5f8e0d6a45a0bb05018e89118dd9ca4a0fb59b957d64e4895004561851775b71663bf03f00504560f6ce37383733f4f234aa9a3ea7992ba1d38f110e7ed9ede472d51c446285d9f84a2ba80d6f4a54349888895429edb55b82eb5f08213cfb7b83a814a58d2bab8d35cdf84c59d183d904e9916b0bd78fd178555f7f043b72284697e5277504c15c46d4fcb91adc72b00331b2fde0d076e01388030ca3876787e13b1c80ed058381d84a2de13904369249cd4d29a2e005829a8daee5d90968041562fbde94f7cfa098be22711b08be8dd02c72daafa01744973fc239a711057e6dcd6e59d1a5a056eedf0860f367766ff3ad2ca87af91669c19b0d9dbae972ef03a5d0176066a510993eab3ba40365b2a29f212cbc16143af2ac91b85512aa4acbcd382e296078157ecbcb0470adcc469ee719cbc6cb21e9e02058aaba3831ee679948fe84fc2d722ff8c6300c8868997fe0f33273e106337ec8a1265216a6194460541dfc408a518fe4d435044f8a6c7252b8d28169d298c16b3d7b37bc8daf26be3726a39347eba3108ab73b223e08d1146639004393495d4ab1e836201fec6b3134c8935a1118efac98c3f0aee20944957666a2c236671639c22a7cf1bc48dcfa3e5cb145c2e2f951d53a60829a01b52d562c75884c644348ecf07743ba001c1cf019fb13c0fc396c166d54f47388d940defac7472bfddb901a1324a6c3d047507ac02e64319aa939e248f71b7320b49449d6ed0afaecd017fdde9c4bb215a074dd1e5be1fdb052154b5d90218c1566e303338bf47b5799f55926aa63c6a0930b549fbe9e3b82d733e463fb5f97eed4a7b17734023b5e983e22c72b901375a88c3beb109bb25c5e79d5bcc4716715f7bacc2ebf648531cd075f78a2538c42edcd29c510483086f208edd6d072c7c58e8cee9fbc8c3c6f8c69b9eda3c809d82c4719f669a198750bcfd912463a5b9dafb296b73284cc6f78302a04ff911bb5986c048180c6d5c72441490d8e781c856078e8066be4247501ed3ea2cb220ad040c1367285a05600023bc0e04564873ba9c40b584ec3705c167c8c564c108465041477bfa98c84adcb8d94d30dcfe9c5a0f023d08aba081c8817363619e40a6ba511e1e93567dbf842baa47cd091711996520033146609e13e3d909ceff691ee8c008fbcb16c0f1a503263988e8817e14cbd1c95d7912882c22bf21fdf8ca185557a3ab3abedf72775dc481eff9f296907418f6d5180322e98f08416694ce868c139b028647a117a680b06a4b6d895e333fb3114bd4a274834c0cfcc417408b33f2f2949d2a8e504c4f069ea2643c2a4b8898406f96fd32d93416db282627b1fdc76e2474d611d058a1cbdf7e0ed2d628b92b61cc532e765883c54b8257cc20914a14d3214cd1eace0d9d110576b85600c101551031c033b3fb8c82a116a4301d6e49bddd3d2946fda0f1157c255fb72875a4a3f70840f87e6877f4d670a594bf42e93dc9ab3671905699dc5d2582b201e42fd8da4fdeda3801994a5e94921c3ccb048624d524ed9764eead410ed64da53e4c0ebd859700baa1c46509a20f541a4c0ce61268ecf35af0036eb006e83168ac2ccd40ff636708d0587ccd0f5706ec9ce8e55d52b25805bab47c99271d03fff4b103a4c97dd700e4232f858abb040d1e4464ac270a740a811c890863466c47137c016b988cb62a81c95c968fed7be5aa39f08108b3285230c105505c9a9e9616266bd49d192bbe2ddd3e83219776c5864713473398c3b484f05587b84b2f640efdc6d33b3ef70eb5905288afdafe45a1dc2aa050022ea52c1898c8fa3a484c17472ada52f0bbbc82b242d46900dc2d31cd45f8d7e37cc8f8e403495954c774e277b33d8b4350da1c4b9fb940686e591cd2b2cfdb099f1e405538433994885ee540f88749d9204b01e17eea23bd17ca49c20dd1905c08845fda0419b04ec21eddf42d286bda54e1d66454c3c4b25aa904f934f64c5b6f77304ec1c5b18ec7823d7ba8051a966c1cf6b3e0348b34be04cb6efcc68325b6010685a4f6206fb90a4301baea7d0686818f383e710d98cca448c22ba3b5d94c269d9fa703ef47d5642e94b978a42b02c4a15cabac20a04a5a4b6d8e5a7905e223cea12f262f8fa69565e3ec5e89346838ee4c40a0018c29690d5c017827cfe9ae3cb4b6a1ea6e6189db6d1108ff87053d720a2099e9ba40b1c6183b9907954f08b64eb6c718638a99882542065e0354172138086c30de290787116946fa1a38310b384c2433311d9dc5746728d03426ab2049424bf2365003b39ae4c4a5f9c0f71df3250cd8faee184c9a098350d5198591f9854970f62379ed06d5203811034b4208bab3c8e5adb5ad7ac787080fcd84fbe2e489916486139049f463f9a1d7c63d2073de6c2f462910544c05215971892a884d80ade0350ab3ecd5c4fb366d99a9a085e102ef8f2f5f240f9ba767734fd19442285570b8282cc9cae2a4ca7b305903afa0212d2769076a0891593359b2e903b9298aecd0ad30203ba9284ac9be8fb58125ea61f6509dd60812db6881708b10a83ead2dc1ae4e2fda15a16cc9096b67ba1ca747c8f33a1e91e8e063bddabb4d126b7ad702d65e19333d127a004e81ef42860882b121c58af02e8b7337bd5e55cece7127632e18516d8364c79256c640bce4b45d3e5a246acf76e41497ebaabae79387d43100bcf066060f44d9aed144293df91ed5f99f9bd73fae07335095a9457b11816cb436457403b0218ceeda76ec4814ad931ab5d02e8d17a0afcbc22d656affd180e78a9a461835eebf257b55e607fcd2041e4a0812370ed3aa7deed2988b09452c4bcd423ba639e6b8818182303e00910d2f662e441012ebfc7f6577266e23f46230004eb3884bfaeb98c200f8d0e6177fd204f2755e97c3df73e1f88c5213419d613948232614db36d4ed1c0633ffa41115cfad3da9141ef1e8c69dfb7de4f36903e00db03fed108445c340688cacd581240f49602cfd0bbaca6f057417a8d1465d9a1d82c171d8c941d39c2b617ce4216f62b32c9605fe14a889e0e44f0d47f47548e5439bca282b2200c9a62d2a14ac9c307cc9e33f7b4f60cd0599cb19be1bda83d4ab97c63e5f2d31a251af709c78394a496f1b557c4afb632c8b0e9c4340f828cd17890fd5a0520ef1f07e38984df0526eeed81b41cbd9490de4c62df72ec53134707f2b79eabfc183c025b1648b8dd1c1a30037b8ff4683fd81b6eefb123a85cbaf6e991e825e2b58a74e2f506cc2ba31bda7f66ed402df592b5758dbaa596101817c2276582f05043d03578a195f360459e34b3a21dbbd229e1c14897d800fb0254b81d885e10238be65a7e5c83361646c9b8d3a8113964014537742ed0f558383202e645a37e2b5103bceb46ce1188650841ce9276188fefc8119811c8c36479540c0c6b8cbf55e1e29aeeff584c6a55497627b70f809562fd8fcd7aee54968f325fa6422818bb60d438315e4ae709d5500a8a6e3dd0a561c6c4732463faba9bf3f64b0617c8ef23c8631c416a2dd3f6d2871370137650e90130a8b185d0dfb340dbbe3e24b05b2196b0ea0c41af7714427fdfd9c0fe3d6c1c557fd797cb0948f4ee867990810d7a7c45d7fd18bd2cb882572b9cf9b73da488034615fe1e14e20161c4f187e732d11c002d489f7431f6bbfb3f6b59c65fdb60aca5c5039777f29597857887eb496b13d054c78049f73eabf8aafe68dfd26dd04093d5ad90148f4ab7f61c4039654725ecc008a0b379414ac52d1e86d5edd23b5b03e47d441efb5804580f9ee2c80908da57394920d9bc9b714ea86709814d2951950aa6f9158f03f61f8cd2d8c00340464b2833d7e544e8915fbd8ac428e64e79a2b9bc9003811558c077ac83918d07290c3d8656d09280f344ccaeb533644a8d038c7d393081754bb09d63036971899001d088d47748593c54e0b623a125c1eeb5227d920c911a8e0f4682e78d88cfa084e8f055767f8477d84a10f1890523c6b2520bc69b519ea2ccb94f08d8236f40156a005bf5ba0379a6292e9b015f6ad59cf9b1384aa08d02af01a4bcbe283733f2021e19d0ffc97270b8168e2b7dd0548802f964953ec4045a7b803d10776efc39aa4a7f42c0a50962f4542730f79faee224807e9bdcc2605d5e49075bd7991122d8ca7d048c7a87d411f9c727042daeafcae9a13aadfcd8babb6c4906f9e7fa58ace5364cd09db3158e421bcf3734f89e51d53171c121d34ea2965bd4b33d9965fdfcae41f99a9fb4eefd62618e14b13303e4731348f630012c787855867d71305a98e6c1e98af7b28fcf8e91a6d90b9b27088551cd35cde4ab80d554be189f388bbe18deb00bb3bfeea0d3e73c8d6431bb8ebbe6a56a801aee96c437b9abf503e5bf8fa04bcd0acc5b4c4a7a7645df023c21e836338c9b8c69f92d2d77c21681a309d38657d3d86d59e7ec9b6aa2b0193ed1a334e9e8d40b90222594aa6deef198dccae0c5c383ac38d8e7f191c908927eda51d4cd4a951db7f0f3c4e233bcaae802812ec25e9af0d4969f5ac5450914656a5e55f4d54534a1cf88ac6a566cb22edf182e5171a1cec5405e84d92053c4ac62a2191eba615302a55d3214becb53c2e4b537d8c58e05a0e478134f3732f28f56ef8e8a339697354a2228c9b538543d68942ee00095a5472a2200c83f54d71d439ff7f633e6eec1a32401a32057d6e24767edf55f5ea6550d2db7a8bdd8ee470d1bf32996ed475a9df73cc108606165c1d2fa0446674a61e4d912a0c14fdb7722e56a866c1a2a623b540aa9407ce381f5a658d63aad7b48275da999b25f48f2a6fd3c0de271a1f06e61952699ed4c4f621d6787f9607fa5726eb46ba9e87aaba98a2008d389230d5404fa14a71621f3c52f9dceff78ec86ce9a5a227734a56a775d2386a5f87e6da01fd4562e412a102f1f540ec08e8583223a38ea6dae2961fb4d985f92b93e146bd96fa4aca0cc1848e3a645d1b47031cf4f27f8d7d350f803da340f1199661e2ab0685931c2e4335e009b352281ce78181e486255fb93e6d717de4a086c9bf18181ba4c47402c81235256edf14bc0a134a3904c9ee4224a6015227f4d00c3dff22b0aa45412ebaec1c803d81518dffbb88d625eed246bd3d642e767d6f1c42fddd4e40ad787017a3ce5071b4ca31fd4895be0d91ddc993f4d19335ca5b00897a0dcb1b7cc9be8307819fe43e8259f4215000b5592660e5f1114e3e244f6d02972c93fc06d1eaf0b180c6f6da94ea2624a3107ae226df484a0245dad2c23eb28488167e1ba654d495932f4f563626d713b29754e712ef1351c6305b334a7e73011169545e5d9d576a4669a95669a89cff1889420d2fe8bfd7949557d0e1873fa890283519cb595bec17f57f26de3d09aeb32040a5b58c1e9cbc58f10029de2d4d5309411e9acb84248af2f2b9255cf785fbcfc16925311a302c847438651a5a7cddf43ae030c145053b58ffd339e039ac7d7549f62f8a0742a551d34d58af98152f0a6dc95b9ffe89ac050ed43b4b3503dd1c5bfd1539c494d8a888b3e802f58359b9ccb7843615da5e60a34e924a51c501dcd551ea45e4a45631c53de0c72c6ac6f4a824d0a1d16c446949d04a0059fab43fda3df43152baf8594266f94700e4c968f444caa41290792569e3469aba01c0a196a2053d4513c63b167191e0adb7a12264286d9c923980f68f9f91ab2badd90f3bcc4b859188f2c134dc30871c488ed456f89b3ef03423113d88fcb3ae866a36249d1e2f9de2f9f829794f0effa999a9cf81495e0bc74ab44c94665eb92033e0c7b582c9eebab50a8f561ab09487a9a535f5bbcd21c181f46b69e1152a48e1bb62459b05f841eae4194753caf4d70bc07740f2109bed185a244ae110e500dc22390209c5aae66870d91710a6a574804be3b3a54612e135792a96dbac882ebaceb2b79af6ace16abbe908516072b3e28e3c0d521478802b0fb3c978e7a71edbc75836db40deffbbd5057fa5a740e5272cb9d471955ce0e88dd3923f5426570ec5591b3c360810c3a56ebac27cb7745696645e8025f7672996722349b7a5f2324c3d0b0a51b93d3d745e8edd700d957ec914d9534a6c143728d9997add8aea4e454bdc89a861c30621d8f4fad1d47619b9f27ab86cd70e8e458a9489d86e16d22099fb38270442954031615557adedd705ebd28189a9ec46f5a5197295b48fb967d6e2ca2bf10402d5e63a633b406f226a9af25842fb0e8bbae36f5e110c5618d1eab670a9156f4f56997d95774b0a23da81765133cb463a465033d6fe778b32e89403480c92b45e2a1dc2eaddc437a63adb5c84d2a532807364c1863210f1f2f6d128eae4a35e1982b67402e112578fb5a9887137e125eeb1cea0c49b5d91a6bf6b9e5aba346cf7b73166cc9444de7c55304693f2b882df5efdfdd465cf21aac034742b9dc2dd2a4177c089eb5bb88931152fbdc7688cb4ba734ddbbfc4acee45ff6a94c430615f03772acdc86b7946b5fd1ae6041d4875e0c17666c297648cd0af5035c2c23e252633e6f77e5629f6c5acb148effd95f472fbdffdd54048ec3329adda2edadc8b63cf8410aee6acaf2d8bae822c3d3243ded8d430315d5cf7e381d75825f543a5a460eefa75bcd45faad319f00e82ba7e1235886edf2fee7b256f198a6a51f5e604f1f3303fbc8991cc58e8780a22ed1a4758d933a9e4e2c4d7868a6b6e80e4aff1538512751dda987559a2049727795e0591dafdd4a2033f53329f983f127fc2f0bc32cb141d81f032a73d67bb9d805c4fa2ed01049660bd198518d26764c7db856bef36d9336872e739d5167c2688e3fd0b896b8c695d93a047c08d3f64021e9ad0c01a68f77d99965500f9075407fdabf9d4d2bb1959764755de2b71aa7962e7e52f4c7916f7d4ef938dee7d8c7af81e2730504e33be2ead75995b19e5396fcb043d9b8798112512ec053a50b34e6c04633819f6cd82f0cf57028a5b75b919036679feca5ea0107c9e6be258cac9d28c1caa37717a9034d62b59dbf1fd914f4cdfe56da0e3ae5506cde0552dd899a15e08141c0b1e4020147632964b594da1918323526634af1b48abe33c4b2289c71b114c299d0b5a55210e64ccaba5b5ab06efe3d9e531ab066ce6989ec4f4fd9cab2b91a07e0227a20ad4507c257095f076c26d19fb92c8b4c38015b565756a45f331d79bc7c4689e05631959b1173f5d5531ca74466d3040c7fd5ab9ac304b5cc433d45e97d8008a1c6db2819a3b3d036148ef642d7678688162d505fe18eedd6168589a5da10f8fbb427583a014d930194b39208fda7452ba8d3c0eaacee42259d07c5f952b711e5cc022ddacf21704e164d7199cab14e2acd5f030ca17795e26913b5281490431bd0ccbb01c7512989ac117fba4d242df567badaa4bcc65123c6f7cfa66a71ce53c75921ad6a8f85bdf1c8166ac7c4b4a15eb5c2096cf2cde4a16582600b543adabb00e5491c47dcb55bac038f55814dd19bdfe182f5ffd96f11ca87313941f3bf401f499fc6f04ba2cf4a02bffd8f8342bfe3b64d3c8b1f15b6bf7f268e083ac582877fcda453896520d4b9e64a62eea0620931694a65bede6ca444fbdbd93608af2df9f59ea41af33372c023cd42a688960ed16d83ef28d2ad49dc5bc458aeac8243ac8da34e4996cbbf941a30441d0974a197a6e5e444b2face33900d2de8696f24384b41b9cf9faad88d253913b1624128cee43e08e894962286e96d83cb6653442c1610cbe193da003aacd8b3c50161ac1ecdab89e1856e148324036c536dd7b286911160ff37c58fbfc54d4fb01ae0174265c99a0144374f1803e1b3c16cc7340804d65539404434fdb04ab7963e1e11e2053c6ee4202d2054dc022966e73128b7a7a9867821d9a61f050038bb845cff006efde20422baac4d53959fa691a9a8c8e4610488523a4aedbe76f91094630d3abce158295b7f4ea5c8c1104815e8f7431ed39b29a87ac0e3f4da4b14e9dcb2ae0ff5ba45989c34879d4a3846f79c4011488560b154d45059604db482cfe70ccaef52a3f554506c862a12417867646766adc6f9224a766754d15c03dd2a426f051cd748f2344c5be1e011f63d218c543b5f22bc82719f4f01c559bc3ef59574b3ce1869b0ea5fb146c62b49d81c667508c7bc5d0dbf9f016f6fa8e444db08edf440498eaea68bbb50cac5363dc546d42a751b96be401069b0b1ec2163cd2bbc8a76a589fe008baff8ece54fd00fc8caf4c8be47dcaedba929960f96878c418181cbfbcf66419e27e48362143577610bb107aee588819a518d7252003a45ba7c5b81048a2765654a3b4f64aaf46a04db09abafd42c6031232744a61f2e363620e69bf5681d8d9a99e65ef517d1cafaee164af3921b656d3429d2196d8675442ea02bdd841a1c3ddf62f2182607c696fe69ebc4c3d0ecda5b96c3a85d160311a53b32027e0c49aa1ca55784a5146d55365b5693dc8929f9145b93c4f0dad6dc8e84055ae32bc213880fa8b8b6976af662e6415e6160017f4a5531ed99d37e4e1f8a462d1b7b0f1c02a38db01486b0f9f1a0ea6a544182dc14707750aa197ce97f676a5aa404198706adb40f45591b597e69887546d03371ce5a4614153174222ba730e20934d484779a0ed9b26328c2418697d6e73e223aeb23a18032c8dd2f95cf1cc4a47ce4ac0a1ab0dd461f154588c1e70f4309cb51c2b18df0df7acc282e276afd60b325179359b0de2ca226f248cc30b39fba500458083d5ade4530cbe3610941e237c8e0b8dde8f50dc85cc0bc0450b8b08896caaed87783e40ed557a5d42f6fd032a4aeb363f43dc4619bfc80950cbc301d1d0c952ec107efa6342f0d052cabc03377674f1ff2fb6b746ca07be16107dbdcc7f9bbb6b31c3216d2549917918ae3c5523d6c38b0954822e9033c95196538d9c34e5c4d393f26602370ad7e9d36cdc4566f75c745bbf048fe04b5ac76860b116e64d11659683a077904d0131209ebd60ab4d5d4abc8dc6b37d5c20d7558ab3df5b507d2d2dc5a1841ba661391f38aa14f1005de24b2e05bd7ea5a9a858f60ad8307a8a4fcd48b75a694c44023afc2dda35df41e907b067dcd6304a9ba67c0c1db7d292d98b5985db36e8fb26a6c87837c6f7fbf44aae557bbfe5be2316423e8207080fd8a340fba6cfec0068835183a3f0f88c1aa4dc3e0e608b991ea6b285fe71f638b1f9df89992dffe0af42a9cacd9178f99c5dffbe406f83ae2cc70029e1c770a6e5c54c870770065911256d31b363872961dbeaae58076fe048b28e3b5a6ab455735b9865daa11ba60da646ed7842621eca71611aa4329bc93ec0944a041a92ad86f6c1dd29590ef844eac210665048b5a53c189925d0fc042c9fc0640c6f45a1d3904ba14a026c51fba9d8a727ae57be08d1dd4da0b2729932225ba0c6c84586dc42a237c8b854277d4255d0755ccd1f17ba875c10dc79c430a62ce52af065e91a4522cfe1fcb76fe1d6196039d8e4970bcf8d0b75b32220a968fbbe36b3629b5c71ba6bb2fc4e6ec7942c847e5cca932805368be1a781e31fa9a1a679c85b6bfb4fb9ed2dc1eeaec6d92e5a71cc91723a7192e5c11788a4b66b690890d7064f4823e241df8fa5ce965b373cc08c896a7dd7d0ae77fae91906d3c3a644415b356706288f5f2f9c1c886d9cadbcd71ad500fee4b94a95c5639d9aec267f834f462cbf8d85b6d5cf682db9559f71984794c8a7a16ef49540f750e866e677dfa0d83728a8015ed26127f0770d5cf94b515985a2af6e55e8b48e1b433060b6088658a0a13e5acf1741ae14296163800b6af6602674a4b4ddb09b2ce7fbc9a05cf0655758efeaecb891d24bd460a1fe1252d3336c3dd2ee8242c9956e0e3cf92ebbb86247d2cf9c8b1a8867d6a7c399c4ea134c28bb09adc17ac34665507214040ae7d26cd01f2016bb407085043e4a161225a2e2a40a8d1b5c4dc071354488e7cebae6a01316b98c344b6a1d8de7517267d1ca5335035def470f093879453b803e50cf6580e66dca5d3e7062f689f1aac0183f11eb92acad6e9c1185ae187f4d425e459d18a942feb2bf65bd4294a485a733261e3510c96b22ee09c2de9bbb1bf5464d557ef9e381ca9872b15e52c7b302ce1acce398190438a7f41a0346050740ae7db70b14c28a5e86f419b3ec101b0812cacd3c139fc0560ef1a2bb196f87f443fb8a6ace3a75faa245e241c7d19692e52236a15e8e7f151c946b65fcc29bfee27e9567a9af954448b2ca58d12cb9b2d4273df9a6d92a027dcbe5564caaabe884567fb53b56a36ec30caf7088822ac745d59bcef97701407b682dcb3eca12cf6e81277173d6654118a650f8100e5470deb1d0dc036ec11f7a7c15eb2453ad86994ee86247e647a877b611a8b7d4e3335e86eeea068b7d73f25a681a7e6f237bb35939af04cb78975b6c350775e61f0c380fec945b16312d5488ae4f7e7c428d180b4363ce406e590d5486cca9a3093f6b22b0b41983980d4b195245d7baf658099b162312402f9e6292a2933f13d32984022d25a1a101a7480ca71827e6b912c1e83f1e1cf49f721e2c59e9e47120ee556d174d21c1360c4de2d792152ac8f4142ca41dd7c1a835422f3c4b8dfdb420576bcbc0943e189144c3874af14384a3a98f5550955f6ec48cdc9a2e0b3c646e6f2885dab45ae0f8b8608a5c5ee64a985be09bd04df8fb5229b98ee8af64eef2885a66d104e91c2f8f3da6a822089f40a1f46475f9378c65861325b1442dd04d7bb5b7c2810a2e9eaf90eba638805c7334b071239c25103844d9699118b8f08eca5eb1f38ba78a751c003389ebc2e24a47aa5d5c47e64cf03309e76d6cd783270238120e250adc5fef2bd1572ecd5a19049fa5041a8f2db00f38e0f723ec5f2938249f78ffacbc7fd9d990a79b2bd243a535190f8d622dfab2a6ba80ae1eb6c5b6293af4f61a688a9c0ad3db182f7101c3189f78ec1fde7b7be5b56e4bcf67ffa5aaddbda3439ffcc7972044b07cab95eab92fc21acb5153a305a4380d9b7f0ef452e038ba940977a2ca5888f207a81f40f9e3d48b4a66315f3e1ac031d59245f4d5bd22a5cb97f68218f969acd66b4545a75d213896171717ce151738da359dadb8e385040ebb73feb216576372e7c66d87232782a758ac0b0951430a10e0e1193bc99535855c72abc7f917e706812496c9987f8d55cc8f95e62fe68acc6896094f22fd4869209c2d6cc68a31e217fb5f3577e2b9e798c8adc2fe0ad23edca7abb001f919ee0b33ff4639fd426fc380085b89ffcba25a2bd600cc09f8173e58669dc454fb4a10e04896910474ee1120d86de3227e0a0458a191e158701775b420ca5c640624cf1c53628b7889698ca837e2f572b70911298ce45f31dd4eef006962cad9e09b7d774eec59ff9d8469cc38f08589f4b14e257dc5e9942085ea388153523391fa2d6a54061ab8979b41059c525a68c0c66b99e8d3fe7d6aca14fd33b7c18b52a5dbaff3a77f3645a58c520e4f22d15bba48b27b3b5f365096f91f7102d9909bc3e32b18ef59ce2ad6ab8a44619bdcd2c65901a777a945393b69bfcaae53323f0e81e2f63377601dcdcf970969c7327f3274279e5c2b6498078a75a083c6d8ea401b47413121211ea56e1d4cba763b70d846e0e8548bbc616f222ab1210b13a85381940526e25f0187c8bdb8a7310106f6ba0aaf81c7cacd9b29c0e564c3ebc07a23e756b6719ff864bd6b82bab871bf29ed5967e9ab2e2288c00d1456c9da8d84a7a996464cdadd9334a6510d3935230e06101ceaca6f0ef2167efca7e901a1d30e238149035ce1cee771bc6cae524d33e9ff7556557cc74087c2cc079fd82e21e481f244dd867aac48243d339a252dd0e57b9c48c31802119e4b1e0baaaad12e791e1ed034b648e7b8b4819221a96a81d6c0aa45ffddee9f438f78175d2eeb2284ab3bbc7e7cbcec9bdba1e8b6d43943eedee4034eb1214656984e9f0871bcbbbaea36fec98fbcdc1674fc43dbc43281a7090a154f1923fe7d8b5c954a45e79bf3e229addc6a591ac198dd97f5880f143c8012a952fc302845b8760f8dab38d3fb8c376cd31ff1b4652f32af311531095f467ceb91c55f57d12dd33fccadf2284fe64a889033af2e28fb63a5411228062518aa87b30da296641f8027afef19f8396025f7605c2f3e51d7f223023c18e5661afe9377c348863d79d50677ecd892718f2b5cde41dd01438d40b4af834d007211a967d2af3db8fd10c806d30a7f882696bd7784ce2a89dc63aa41768944c48818cd07f16c877c3041e6a0eae8c22ba89ca76a88fe3a2ac1d56612f643695a5b06be1aa0cd160191aedbae3f3aa20ccbc287813ec2b5e209fefc505057f38846400a2bca62d5366742ffb734155fd908c58cafd86f8e55cf84865a3cf6dfaa1a7bfd8f9af08a93ebcfc6b1c2b8373fe18cf6a034df3c54a97ecf3dbc70508a46132e4753f7923df1b20acbd823d37aa57730fa4af6747f3700b20b3ab386304a73e890cb0dac1c5ec20d48bee0dff6dbc4505e00d8426197c64b8926a2ff083be29fe01fac244bf3111c977e35378e7941f62186765440dd32c122a5f9c5b763977b8702703e6158342a12be8c2dd42c0ebddfca78299cb42e26c2d031654374d736b1fe780718db157d871b011890b19083140d2082d6995344538b16c1b2e7b2441ffc6a271730eb8bd6b72c9bdb84592c82e68f1461a609f2e72268b908fda79fb38395e31f38faa62f3fb314611460dfc16259917aa04a062ab938a5223fe2a52c4a64918cbfee694295475df3c0bf055e57d7dd7b975f9c59342a307ca714bdf9218082fffe14693b6d8c1621e6bfcd289624bb4de434889a47e0afce9997209cbe09aa039fb5cba6eeff8aed83440605f9cafd365e9f9cc545240f5f1a3c9652a59c509a2878640387fea590626db57bc18e1d8a7a412ad29566617248583786f4f82afd060291404408739313e387963228b00ae692143134429f654deff71824659802490bb2db0f87a09a77f6fe06a7eaf829cd389ec081946683542c030b7372e865ded5a96bb3835ccf5a7aeebefce59e81a3d33c79ee71f352466ed9df67d52d2bdde09d6020d8377dc2fa0864249c322c2d5921f9ae5b86039c3a6ee636391c056714031213da0dfa7b14f4eb85974550cc7f910ee37cd4b67c32ed1a8a314fefa14c03bb6d46d752411033ca412bcf70d0d932cbaf7a74e52b3d431e505c07baae694c5d9b791f88be571307e45bd8a0922555515f8fbd275c06b14fdc51ef139c394509c91e9f26ca101165cf2e0ad3f9c60591a62a284bd15c94eb182fb46193d93f6441e1c1c14a41b2756e26d3e809811d916753e94a6adb7db832f4d398473e481cc2009320f56f6b81cc6ff227c8524ced33bf019a2425354a3d36c5215617a0a64891a8e9f24cb569a7421a40f2f7b5ecb2b86b63ee38ca0bc487f129addd9712ee01d2f47747d01b00bfb000260f733070ca27c486ec42931079e265138b5402e5a7ffc044340f9191ddde99ff0a1ec93a4947b0f4b7ee9bee23f6e498fea2c3cc0114da131038afc6866c8a725f1526702dbe444af73f5e4be66038d7446f3975c59562ab89647bdb0a83ee0dc21725bd5c79f6037ba13765dc000c68fdf255905f77465f1a72088b78b04d52f6ec8428ac58f223ccdee8f40ae96944db590b6d59aafdc2691b95081f5978253c2f40f4f70757146022cb84cb1a003085fb6283d31f684799a01f9463f2212d8fb84eab4adcaebcb821e804bc169345880fc4f990308b7f12bcbc17664556b4f3ed09ad4f96bedd78f4365eb19d24aa5993d39b244745dbe284bc0b2f40f42492612b70b24389c40bed3c89b6cc8d735532aaa664673629e52d31c4e2bdd5f176804baeb840738793c120389a2ae00bf9835dbfcf2038595fa64b570634a4ab22ee31ece8e694702d519142ad90706b54500dd5e15940c855497f4483701b420d62a77a50e6ad30e6c84661249cc4ac541beb40ed8a1402b6047a4ad867b6a6c01b85bd54171c3a235a5b9904e93e43b03a631526b6a16b1ee7c67d8cfb3490679af62702b936279a0c28f41094881884b416ad89e2d586bbefa5f850d33d7f208fcd9d2650c21adad3ceaa16dc07dfad3b55991ab358358920150bca3c8d9f3aab064337923cd018493a6eabdeabab25f75ce532636a76e2795fe5b34f0e6e08d323ef716484319a237f4f8d79490f1200fe09cd3b00e6e2d25b412236d9d67dd8fa09e11de28ba564f910219ee9d713d16064d8099967f9c3aff49e543a28302aae104acd6c47f8531b6a131235dfc35630a6e1c48061693d94530feb07688c4b04fb45ee8e892afdc5f80b854df644e3425eb7d5851557260745e6ff34d1db823e2549240dd42c4610c334e0447c76c36124271d29a1675a3d3ddc3f4903b0a0e0e9996e8d64493acbd502269ef9d78b2d8504d870031227ee4116f36628facdf79da10d1d7a88918ff05def8e8066b082fed6e3356d30e8af0199d47304681f55b90f1671cc979a45e67d7fc4981a8de19e304dc3c343a4ab13afe9985090f4bb86ba5896c0e7f76b48a161b46828fad6477ce78b48b04411716ed4e5626ba09af87011601873660c92d7db88c4ffd47f238550f02c7d1c64e25918b01f53f1ad8ff19a3e59336253562041ba8292337b961f15bf60acfaf5c70028d9e66b2f98ad2659cd2b71703014179a169ecf4ab06e83535b9d299284ad9eae213fdaafba137d000b3eb5e69279c127a5a97d1ef61e375ee347b68332486a160da41df7150b327be53eb8ae48e3f4d20a434bc5b8d33f01294bc0d71aa1494c09bd8b60ccd820022b68abe657d00ea582678addf4021c5ab07b299da0ee5a17baa0cd6e7b4941d04615012c221e109e3349bac666e42be3e8652dd201a8e43afbd3692dd71b58327d30fb2bdea2bee2c6c04e428f68e73b443e47a763001b45131a0e7ec6a654c211181b004eff38a213c63722606aee8af1b950d4ad278f2a517042f1399bf8b471ef2be38e7ef2bc33858171517ad08013efab7d81c42859d43e0f5e539bbf360b7e573da9c8c9d18e939cad48f593382fe858312d11e21a85eb9bbf736fd19080be8e1db12037139de09006275240471be1aa2f861a87314a9641c31459951e62dd60617558556bfed4f747254ae3b26ba54bfa8799b7a7896a5914847d18febef2b3c4a2f2dcc6570a87684b119ae2c6d0cf35372bd583f5717538fb6fb4eb010bd2b0eb66ebeb1ce5348263b9f1810afe084d9922863e4b120f79440a97305bf01741ef16194c5c50ab403f96093abb52d17a9a6e340de194269a23464d4aef9d14b10920098572af075406735f501ee899ea8a2aa9de116031d7c18b03a51ab6faa029336017f4509b10775ffdf4c6fe9f6018a330f8d63a24196e946ddd16f00c7094f796478aa6a10a336c220565524259399110a0ec1b62096182569b27cb935a8a4af3e892973eaa13e700dee4b08bce7ed8af391165e03497a40cdd888205b1349b7aaf8e275ac676dbca5803b0563eb65cca4e6c4b0b8e2695a666efa806e9906a0053f36457b9dea119ae2e37933199d7a7341a4e0d7889f1c8c48940987eb0fb6fbb97d4f4b64358e57f68765c853f43938c8d78575baffa4ef8b77cd7f3f23fea30117a5fe86af87e000cd92f74e7037ea983f258756e9cffb3ca52b2aed80bf3cc49a4e820aa040e155360c1a639dd46946d519cc72de0dce57e33eb60da6fd794dcbf4c0c3fddc5753036d7a7c497e38887ed41d705df87270036b19606bdbf8a4728d6643e46da1a125fc4523702fbc48613fd4e09e125c67486065c70e44d04d02e14e360ebca71ce92660f997c6eab8d67d875424a1aa3901b4cf5e7581572b8f2f2799c92e888107aea751e4b55f4cca491a280f8610b247ca9e73e59f0157e3ab65ce3a6f79174cd22fab53b781f0ede3e02152233583af13e795e1b781db57b1e003cc242866457c2b1e4e6c6b820a57dfd4450f8efd77e2790eddd46b7469cddf1e8b3afd86334fb15e97c64275e4dd2582ceade74e0355b5e8fd903a26f2b963ef94a2a5a0d2e56b1d0aadf1ba0a7a0941a79f51edd92052c14287c033d65c5559bff29565bdb74e7abe2d78a959202e510684b57f857c34678dee79169952acc0503378a72dac086843bc03ad30072a81e05f54a956780b638307b8b43ee32c551153579c82b1e96772856bc3f31fc54ca772abffad4cc7c10af7a5482637e1dcb77f7df3a3cd2f9295ff0f81244b4d2e647c5d14a1f49d7892e2bc78d854a3c902ac948a01b99af0ff5f0a78afd8fd0712eb7f37018a07723222e2c937dad602d3be2504327981b34601001856e2bc7d2260d9c21e26b71b2019dc48363fa89a50179a41af17c3ccff50c138ed6c6be4a845008965912b7b25706c7f1aaf1eff9eed0510174b26a7b50e0926d6d40508e92865d88548f978212f93e56792d0d6de2cffebcc24d0fe8f6b6232b3720429c1f5f882a617734551878a19334dfbbf9daa10e07f59a0bd64e6807fedb9791c277c3081548ee2ff3a88fd8f175cc7d752f3904d1b2f72db40ff3bf62ecbfe1f8fd608dfefb87800adeabc38afba66cec710e4748e60dbf40e4d006ff53f754dc948f27d2a7a114189c858172de4bb7ceaee75201436f5816257e6f90ceac27ecc137a0586e7baa14333874ce9b4c5d8f999a1f0d9b104064d4bb1b371f7c57eae65b7a5230bb453ef7d94afac665beea60153169cb719cc3de6b491024ef48a73b534d261c71676f41d54b947e6fe12e30e396e0712b7a3c573b3d12b36b16846e424f9b51c149ca4bdcd97c603f6dc104808ecee6f3ce5f13012ed87257b6e0ef9c45f9d7428e83c9412c7c852a5578b45f49d0d1b4e9b24ea820b49accf93317accff6b250658f1d3f2eae0ee1fe4a177761a55496449001f90ad3363fc77326fd8695b6d6a0192239846cb1173c5e9367d70cbf6dab2bf37034e14cd7df303b0d8b74526bf2992e2ebf5eb3d093bd56a3515e5d73e039db7ac09094f54c4a72ea06b9ced158b50d5777eda3460f244e46a320155873aad9466b6d6c4724d7c5babab099f9e4757ba0c39727dfee60a5dea2204c4fd14294c568e22467c4553949aefbe35dc1293208363f54a6cc325a3d8040bb1b8d2c866d4a7765a0b5f96ad374de45d131c372ecd8ae74a95c19137878ce5e8d91a81fdd9bbdd9a8da772bee3545eef5511339dab6da8731ef364050570a67b66c229d1615c2bf6e4704017c3353d5b62f13e29117cd1c13363c123f6c16644b27305bb3c0c199e7bc301d6ff0eda8f03be061d0713b6362e67c8a786a78fb5199eb0563ef21a1ebdb7fb954dd49856f26011607dfed844da14f0a8a3be2a893f8cfd71a197814f1cba40c3808581ff84c5c9049bc33545cd7c15d04b7130b838a0f7204db86297c6c25c32bc63726f50b7bca64be60b3c4ae2a9c342cf042ec76726dabbf095825e60e4145710d27689011423dd31c6c6c8beaf2c74e82344a72d97c2a401686f95c104ae7577b75d30b38f901f108ade5faacb52f0c1b65472ed3e18400d1aeeb363cecdc448c44e3e9814870a42653f5ac9d788685282e31f47dbe36554e3d9f4290fc1a04f0a6ffb678095333a5f6a572c252be5597bc34a59ba5ed033b4f42a14d1a5d19d912b99007de9e108b2c93b081809f45f3e247ac77d97b3fa36742ec090eb68d4efcfadc3d97ae68efee13d7ebcd4b4cd5dfc2bb47d259b2bc255ff66e73dd310f9434e8ce4a472bb2cf14bb4f297e474203c368d0f131dab164a6b67df5bc55c41c6b7a80058b37591554f432673cd2aef3dc3e04bb50940c306860abb30b7e2760aee7fba99456b9854032ef02551ce56c77d96b3f2f25045636ddd986d0da2f755f672f66e71780963d967d1d10e52d715d67ea344d3c5661b8dff5999752e01cf3420089341863354de383a6abe4b8843c9c381905ad0245e9394de198e9521c2d954cabe56c06b11acfcdd14d77d952b1d30f3f88cf0d3a1605282289470a4ada55b5754f3e922e37bc0dbeb4644edd8209c34c4a924a5a8f955ca96d0010124b679ab1efee68a316b56ff5b34580248841ae49b6e84f6e3c7ba79c3539f0c53a60e8b00f2f89c50a78d770cdef9e9d5cb7aed73a87d3cf8db4a14693c468b8dc1f3fd8e82691b86535e2de8c16b04937b00ad2b16b21120c828441a40944d5c9614aa5ee70d71a1849cddd222658bb24d1fd040319a05c278befe238114319205579d7905ecd6f52658638142fa1890a8d352eff1d3fbda84d07dc18d014cd79906e96ad7fb898ae64114b4e643ecb6e385bd26b7ffc59905d9ff4106527cd849a0da33070d620c90d8a1c91836854cbc2cd325669204c25ff734c093954db07d81844473c21e68f0daa6e3585b35c7dd0700d913bfab113e302d00ea200eb64d1aa4d1ce87ba221695a6360c1b07832ce1ed4ad522e2489835bdf9b639436f4f9848524d91620fc90a2808c831d174673af990a69788db6f01d170406a74a043d3ed68edc3250c2e103e4ba4bcdd040e8685be398e8bb5f64149f9caf84ecb3c94129d55ce0484a1a3138a3209fbcee0ad839bec4d760fe7bdf6fd9862757c6bdec22a492b95c6efeb14ed535ad4af746679ce29eab69cf49c3e8d1615e5e167557ed6ca099c90c3d9b9a1e69a30b3ed41fa200b4c232abe5c9797da509ff869ce02992ce66d7545d147fd6b7f8d180d0830910c4d5037a82ae8157200ebb4a076de9087365c44f747002abdeed92a83434231f1f7e0bc46d4d4c544c2c9f08fb53c4f89f532f179dc526f0e0c4756572d1459ccbb8825a6b1b4c4f23c7be79d4f7e27c282ab6fd9290bdf7de726f995292292d08b3073808736ee4bac738ae7beca3dacf24d85f9ff6f3f34cf33aaf87dbb9e7c7eaaf79fa9fccbf9e648fcdbf3ec9fceb4b923df6048cff93ebb57f82b5f649aed73e10fbed8b3af1a1b4a6a7133f179268fc4169fdb630ed03137f5b9790a1ebb1676769458c1be38394b5b353607083ec67452b847983eccb35db82f20a81901e2129a800b444d607ebb8958a06a999b7c1f2640c9a097f6a56647fa607ab809d95a74315800d28503d7bcecb96548f0b66cf5997d055cbb2c962f809b041b8f60756919213b243bc6a7c05f1028c8a53f1074344cfef64c0092a8e8480010e195c207328811473e5c1dff9bfe20634e40c3984560045982ad4a8c206b3c986b8b0c2534363cc21348866f89d1ec6ecb4a1b36e930c386820860c5778aa862fc394098481d954759b88a6a09ee6bc8151a12c9a43a96c838a193387e6f020a36e28a8217da721cb018ae23833449a2ecc9c9165862f534c71c20b2b304c91a50a1218894316d269ca85451c50c0f0e0efbc0a96e0ae28628ac14a0dbf4c043a41dc33b8e0dacfeaefe9df75dac146f0a1a158dd262a67567044c58ba465e6e5dedd65e6588b6d777863cc36be4167d7deced271bbbbdbb723b755b8d95bcec544efbeaeebf2865883b445eff718e3abf0be32f64cf5c8f52ca61054d314368e8a88a270c262858412106d2922018aa7262a60a690108590190e74d8220d1b94d61db3051c03d032868b2b5ab8e8a10550658c9ed090300c8b5d8ccf31cb6e6ee49695482f46fc34349c472c915c6832abbf46d43c9cc33e47953f04128d2a98086c2b7b8d6887ca967b1e98b5bd29736b1eb734a2fe991a5138438dc8a35b98d59853e3b38eedaf0b5266143983291abbfb9d303855db49f494b030bfb39f31abd14700c4da00049d1f8b8c8818644d591efe6c86b0477688b753b84e194c51e76e5597edb93b815bdb6b5e7412c3c4a0d10651f2620d9bd480da5b2a5018897abab5f908488e8099456c2b2b688c4fa41b8876b7f466e69dcc3db5c95fd66fcf2617bcfefa4075f9f906b9fe9a980755f7d9b43ff3626bf3be1f557e1f8084cf02db7a612f6a80053d0845a8fd3dde663c55be014af02ef02ba62b09eeb9a27429dd089ab131c394344d53c4a85ddda6294facc8828ac2cb942f1a54a1b46ed3142d030863ca951afe19364c54a139759ba4b451c31f001714a76e9394a80d6aa0aaba4d52c0d8194357759ba45ca1811b74abdb248589079bcea2bb4f5abbbb8f74777777b3bb63eddd2e65fbae0f7ff74e7777373363ccb158ddcdddfd754e168b99376a2a1d6db6c89d39bb9c57639485bdff4b6fac88fbec9459e69af466628a600fd0bbf496de1b73dcc4be0728be4129cf6fe99a6a55da461e47dbeeb86f7ed57679714bc9a0947273a4c466a66ddc3739974d5420d526dce5d211c3965282dec359590dfb9d6a3a368f7367791755de8adb20fbfe3d7ddbb89b2119abaf3a23bb5249ca7560dcecc009fdb773b8eddf3137c8bee350319beffa763fefeebafb94aa63e67aee77efd4b69a6cef6e6f23dd712133d9a3ce89f9a48e71d7943752287b77c7e96883c66fae33b2cfdc85a1dadf952a845231ec0b02416b154416e9d2bf709945baf42f5c66c9e2523ec92cbe06d41a59d680638d08c71a98d41add5713755f72c94c96d5a1b4ed4e2819e947474b5e39d77561338763382d4c66530811a79fbe3a2f7c7e4933bbd99ec6241b2a7fe8a3ee076015108d620745f647f5663a8fc330cc89b66d3e2af6b909582bfb58689e2d685cf2fa09e6318a0ae823b6037e322da6f227b141381a151111cdfec97ed5dacf3c1536d518948992a8ad7f54ad5dcae951772a9724eb90701d504fd7d333c2918e6bc9edd6bee6b1687b40406efb476bed6fb47fb2d62e51252bf406878b5c438dcf32ec4f346a8e5f4c5a45a3fe914d847d54f9e80722b9d4a100076b7d2b752b71db3f3b5aaa8edbb4957cc2382706d4a9b3e89c711cc109117137dcc080866a684a8e2629459d0f1d6af7de0db920a73ad0164316755b439d8a2618b82c9a2f30ec8b8afd7441c5a234350961615d1107143f3ea47031040c2dffb9ce3e1ec0d12683a22c38d278944328a1910218547106064a2d89a5a94a1b5a9529a05768f8b37effc41f3dde10a28b37a6e000a2fe88f27daaa2471ba5ea05a8de2605d59ff53fce285343ce8d21336e9ca9fe0c461b454eb48d32ac4b879c2d596ea210e560a2073a8553866815c3d2cd9929aa21213a55c6954e0ad26a4aaa064e4a942a8a952d8a5477c58a1683198e87a22c06a2ad8bd184214a63c3c41527366368706253a68a129b1454195a62135585042126366a90008311095192d8b4610309433cd8e8d8b04f8ff915ab687105918ab272588b45185f8cc8a7ca4114aa75a1c10f5a8861450b343498d2228d2db4700305542bdab94255599e28c6058481aa8ad8e182de342164837cb2a24ad93b7d1ad5c5c20da32a8dea0643d05977cc93192a94ab3be6096a8ba7341f4859a2393cd8d0c772d836cfebd6dd3d278bb564b8bb64e615babb3d7a5fdf07f34ac1ecc5cacc5c77aa8a6c90fd1ea007298b7939126d396c579115b249fba75bf52c50dd8f443ba3513ca253cb0033eaae09b650c218580510891df06f9917b72c288988f023b18ee46744aa1061d41e5a507edc3246f6b917a32c285f8a1bb59d992bd22c16a51da5ca386a5fbf39c7edee4b353f153688fc25e3871b0fc9f2481e2fa27a82a2d4793dcb239ff3da37b0d21e2474c9424dced4708292840d46b08146143b5cd942dee085049717262e4b381534ab18341549050b2f2398664c1c86c080b6ee21e34105dc13a54be9a00eb4ab3b66ea0a1c53442a6053431a83294cbd05bfd3051dc38619445d38982d63a34ce5ea8e61c3e90ad35df7bb5d011b50f3ec64305e32fed84b6c5bd8c5588bc01f3f7e4bfcd311e1dbc04a5d614fddf7bcbbf98d4d4b94bad825bd39aeaae3362d9b3939706ee80a002c1e3b7404a0874e06ef43009f57f77d8768a041070256fbb71d8eac0a4350fbb70d2ee9ad0a4550fb370e362d9bae0a836ee84ad549d506b278ecd09193e3526d3cef430001e8a19301a6fac1030e80830d7634f8a6aa7f23c0542d89cfbf249a513784f8fc7d7de12b227577f7817677d767ab138087225c847fa84123ffd0e484544754b7d84c3c286d1669aa476eef6eda41a87639504d3a4cd5fe1e56b81d86a8a110f7093ba9f6f7b716f6913dd4ee5144e36fbb1ba4958471e30d7f1ff54f13354ff7b32701176029a24afa875bfd31291e716d27aaad24b5d8f8e36f31c616762cd1f98cedfa7e3b96a89068a6c6f8b10d57c338c54535f2c75aba0f9a807319c908fbddb9ae8bd5c34b957f2409fff828351d99a94228500e439dd41154bde24a2d5576371268419af5f9d3f272c75e627293532ec7c8dce54ddfcab1cfdc915833ab58413ba3a476265125d6d233814e3d93a81e01a9e94903a2f933ac32948c18262291a979f8638c31c6186714ea1f9e935216eb1f045948888598898946a618a1549893d2ffffff7f365494884dbc50c5fcb02f2af1c215db3353ff3094500301f5f480e03f8b4569330edb17bed082da263c43f54f0bb158f4044508358bd5425b18513b424528a808658012b2e5917b53e5941fa84eba917498b42edc6f5ed00b710462483043abfb242ff6d10e21b243aeea23df4343b757f9d5047532b553ac3628f6613c5a344cf4f045053a605e3c13cb9849eaa01d6814025940dd3b0aaa4d387e5dba2f88799ec0b451a2b5ddf529c5a478b485b2b12485a93927f1773efb824c8d5f1893ae2d34ece9ef4e841c2ce488e04894a0c66f497ffc36c96d9a132c4738c050c39844e4080888324dceb06c72840de2ef03082b727311d77d7757cadd5d9f1f7671efeeeeb6dc4e604437ce0fddddf339b318e717e916b03ac3176a9451ce79c5256207fed73b995f0b9847d984caa46d9504dd6f5e2df8acde5d1f45743f72e433367e6666e9b3eeb32e6f774ebfb3e7bbebec6306ba1fba5f36f4eefec4582cd67a11a59377178a7c21b2fb508441225e37ee58853cc8a30c1a3fba925ea779c6cae7fe607f7d61378b6ef74d5d1929f5ee279c8b2ef89dfe7823011694a10c32bda194c1bfe6f64b8fdd52aee736c835d9476218867d218661d88642ea15e3e5854da494da754999611e3b90120b617a6361d05bc0e457ccf3ab6bd9c6755d2fe53b173bb8bc6eee8ccc2d942fde517dbb3bc8be0f2bb4df0ada9d6518b6699ecdc962cdcdb2bf36c3e4e79f65fbaddc59f9c426b329376ba7ab8b2e41fb4321b5070883eb72c77d9c41b762ebc1200bf3721874f7bf3e773ae437c8ba40fab23e8a4481a819a3f6efb00f4e6df79652caabbbbb63179b7677fbd744d6d8f3bd8fbdb78f95b0df12ec7daab1af190ccecea980d8bf133be0efc1cab9be492b3f4ee55f9cca24587692ddedddcd4c1ce60aede72406f7091086f67b67997c296599ba3fbf709ea9fb181a26b33cfbeeee5c6c937d76bd678796ce2d9d776273393dbcd97b656c18c4ee3a02a4833da76302f7daeb60df09dc6b3a27643fb7ccd3c1384f07cb9a466fbb3772deb6b20d8523950950f6dbd23c9db82ddab2555db2d7bc6dcd13b8957dab137fd6e839eb68288b8251f4487630dbdc9b0f6233a82082a9a57a9517f442a4614a93506bf5412f74e0c514422dd507bdc053a6cb15add587843de07fa11bb2d2d4520579587499a7fde6654197c14c768320bbbfa2e615e9cc9bbf65aa0c8bee3865e775dd77de912eaa2f0046f488575f41c94d8b4a9589c190dc5686201224f208838c84415ea7119030c811882dd614fa044cf74f56affa27387ff3ab577d92d5b7cda3faba2f09ced7fd8e2d7489f5d892ea8bf06a89198c8222c00dca04a8625f08a4f29668fbe66fcded9017670d2243c33583420abc8292963c54fe26dd138b4bd106206a24d297143404aade2af2229192528d5f1887f412262bc554fbdbc04a31d5c8b1ea04da6c23296301979fba63d424d59d345868948a623046ed0859aa4ccf20676a50d6545e0caa5f75ab7e557f5d2ad5b7279f08a95e7b95a615e186a27cc4465c54f9799ca0f1432e629f3046315174028a53404849908ce0154183aa541edda25075a1a92929a9a8282828262627a7a7a7061d28d4ba4e0fc8ba85df5ea6fdf45a6840262bf6b32be18584842a36590cf2f531d1882423524c8a5c6212fbf417678b7d07cab132a7896210cbc7a81cdca861cfef40c359d5d8e4777777778cd786452c62118b317ecec5ea02f73a79c7daf6614fed3c2d9b0ccaba20f7726da6eeefe24b8aad8384daecb7bebbbe2bbdbb5bca8fbddee103dd1692aa1c01c67e9bc783183cf222939cda2d06f2021a4629f691bb20931caeffa7a0fc6194aa4db453536d74c6c63ebb603631d6c4a663d74f8e59df41a07f72095e310cabfd921bfb26b3ca0dd23ffd3dc0159bbe4142ced5c0928616a5a0fcc0c41946ac418154142776c05206e78541c31fd314e18f65ced4ca450c7f24c3df84290b5a2a63a9ccdc06a8829437a470fc2e1745748165052550628d291d6e50c30715ca1fd29f0d98848460f8d2e26f6f630f464e4cecafeea7ee6e1e82a0e28a1a4240210144abe5516d1a8ea8ddfdde2eaf1b213a02f6811588a971d8e236754c08af5aa2cfbf1e33e55fd1d56ab57afa454efaa20529625916ba42f7354f47846f47fb7444f896f8769f7df13a6a4825786679f6d1d43475d5541ffeda4cce779e10235a0eee0a1b28cef6c41fb290f615e149ea42bf862c54a3d10847e412f541050d9ba96e0cd34c2d86dba9c9f41383576d2e4942712949d23e65b005cbc3a4893fd29061ae54f9920059241612092778904053e5d3248e601569a9f285004929a56ca623dca8ee5e48ada00557e8f08694151249cc569d1de8d6c8e52891a9fe4a6baa1ff1c4bae2daa1290724c9f27a1d1ae8d72e44dfba5e4c0d7be475050d67953cf2651b942e1135b03cfd3068aedb29d920fd3c4bd066ada9c00e89dffd438405a48790fdf99cfd39d23ccd3ed24709830d81ed254afafb4709f3f48b519d9fdfdf8f740e937677ea35b3b351e146a971ff44885f972728f00781f16fdbee04feeb0b95d479c48671ac25d8cf8f1eb6bbf385ac16e20c9554df00ab864aea12d6ce2d7efef39b5c68f6190b6b26acdadfec89c1dddd3df4668e9f55ff0fc01c6d900fc0182dcf56f9851e003768569755307390527ea52f778c41f7a58c606cd8b3bcd01c5ee80e2f74abfb2c2f54abfb936379a118cb0bcdeab2bcd0b97546b62d62d88789ec10270c23a262cf73021a026d4c58609fecb1d7818532cb0b5db1bcd01cde81903d0b0c62f3336fc713951fb0f4b8ee4801e5bed391abbff924abbf79f93737371fe4bf7a282dec753441fd8807197abd9314348c486d6e1efb28d53fabc7fa31ec59871d1237c80ef18797e76887a87ec890031ce0c78fefcb20039c2a3fc4a9a15629f6371e1f350ff69cd2978a2155eca7161a32968a61611fedb1e7ba0f1a7bcf0cbadd3cd88e2d348c4edf06d51e7bc65ef38218c41eeb4468c220f6d9a7c3eac1da319261252861107b1db002f9823e58314eaa18f6d97f3d0c627f8d80fa0937df092868d8cd4df641fe37fb9464f5f40bea5f7d479a077b2026ec331f0302ca3c3eda20d827607f5887e5c11eebe9e1e1f13c0000e0e606a8621f990c83d8c4a430ec4116501d24fd374c9d962cee4ef7ee76df75b9d1bd1beb7677776f77ef767777efd6a81926cfaef9ff058defff1786edab7486687c9f99cc34d7b6de387e4eeb28ebe7feffbfa6fa0d123723b618caef07c86fad66d8c5beebd10ba506fbd56b198c4b45dd29ea7c809317ea7cd0755f2704aefb6950bf1aab7f3d5202e9586f865acaabca760fc80b659debc6c6e38c387b1763bfdaa53b8d83c6dda571ecee76f33863de4809570c8f32e2641f8fdc8d146c31cf66b6e2f2c39ae9030ce937acf13572cd1b6b625c13e31a5f735dd70f6fac917ec31a5f23d7bcb1868b8adc2e2f6c66daa65a654b61947c97565d085e379c1c5750e764a786a25051243aeaba44a32f3129478e6cc2200b393a982889d2d1005861870a4b1e97be1dcbe3c8145c68fc23aaae4b911450e0b1ac1ea06562ca9c367610463371698926d1c8496eeb582c90885097a50d98281c44ada104bda40690055d91a141183433f30616445f9eb84267dda62f6196be10618562759bbe001186522f6466242ae28a55d3971b6ab852ab66aa4d116024008baa6114618497323fac868a309c8ece102135a3281150465a74d70f2296a8f225cba73f75f76bad484a333f0e777713d0ad1e725db8a8f25d362575a952c2d165a9fa164c0a00c458d901b5c4dac2061d6120f1e062460d395f44ede0a2a62887900e21231c3294728c6cb841139503081a2811ce11452b33906ea030528d0145b198a13b23b53253c48191a412028d954d0ca44e081864d1cc30c35199212b4369b3c1ca74d27ec06242184910990046941335987006890c0d26a4c0298c2313c8306a1a22063c4ce9604219424d5dbad460821851ac34518438f3c4152b3458ca828331d451b0a3058c34cae000063aeb8e3913d5c5994f05f46a634c0ad4206d8991dbe58509619fd6326d466e5375215817bc6400a32c0ca0b8261a582547d6773ad1e65ed3bb10fc5a2c68dc599eeb57def54246f805af9d14aad3e5b9befb8b5ed2fdc1391f49ff38691efe39c3eda980c28b4e58aca99da2ca28e4c5715b857d5e6f64d56f90aeb337124061d17c90618aed7222e29ed0806186a422e0b8e206215ac0c4193f3875b9715aea610b27294da56740735179793406991ba278e38ca717481faa60c1dca20a356ec862862ab216c8b071796265b42dfbc88d2377dd54f2db2fac285d4adfa00c9725c47001d3c425494a179ef3d56de232a5d2ba4d41ac21b5f16b2f372d3d9473b6f7f777edc1e89bbbcbed2f10b65e1f941abdf0b7979f7d8452358f858af9ce0563fbc62eb37d151ab22a7f8f6f20f6d1891fb7e53ccea390f36df3e03c0a3bae7816479febba33d2c2cdcd83b0f5e6a1d4f6c257817a6144001beaade8ea8b4b70dcc731b87df3b30f6c9ef8381e121c206ee17cdb31640254e3fb7b5d70264e9107a001a3a091b24c83bb8b38b504eab85544e606d203a4cdecf77f2fdfffd8ce72ff7f87ac53b1b98f9710397621f87a409ab9bb7ba7d707776e775eb932010bfa3b7fc4a6070b260084ca1b787b7353e0f296dedc6b7a23e621500216940b7040ed8f1e2c9800106a6f20df57f57a97504af0027ad56d0a42ca8b20cac03273d87abc884d41005165ff0001555b8aa97253116a02e289004339446ad86307480d851011537d7dd1f8fa8fff0a51dd7f522d2ca8feac1e9eaaff833e1455ff1e1fd0547fa02246d5ff08fb6cd30f51d51f090a38546f425a41f5a62d52547f169a8038928286d3855c4b952a26ec30a5054b0d26f09024773841186470c0664c18523f087150778c1842d7bbd7428ca382505022428eb04fd86304f6b9aeab8708fb2c89ef7fc5785dcff41485fc5ffcfdd7efcec5493471918475c19e8db8204209f14d08990055fe1cfb843c76e8c8c981734357aa8edbb46c6297f466f76b8d6d79cb418202606bcc8b01fb795dd86fc5b00ffbcbf3efeac7baa30e3751dbf2a042c1bac3830a75063122b64dfee5c5703d763df3755d315e7f3190babbdb40bae705dee90093d2098278aad96331ab3afd5e25f691c6676a256e25f960c59e4717da5cbe2f745233126a480b510a2b217bc77c45c830f73c10ebe4bcb96c3c8668b6496d4bf9e45c403d769132c81ed2cf79052bf7e8f15b82f27f7b7754b32c298504abc7bfecd0c5b0d8879d89c1e84c5f129447120d7b2a10ee6b82f2b373387b42212dc4da1f108e46e2b63a215cd5df6bfc2a7ab2cfe476db9dda5381c8a0cb20eb89fbed09f6cc795d72fde3b6ef0b0213a4faeb0b5a3dfdf6cbe98f3c4c4027b048760888c20e99b57fb7bb1fb06304f44811064134683855e89f6d1490f4cfeafb7bc0f7014567035653b5b3ab49f7af907942bc06ec90f9eddf07dca42b0bd857ae2ce409f94fff807a8468b84f2800a98d847db06f81f043add0c69998a8856e531469aaf65fb595aad9f69a767546b4ec4300d4f89b7d78536316b308d4ddc69c167fdbbee1189c1f0201ed10ae59967d02f667364ff6d9efae14599665590684c12cf31b0994fd663f3ffbeddeba03e1aba6fdf631464d8b3b99c482a9f2bc54bfadcceb9efb13b6577d4f54bf3df73d0193e449f6db9f309ffb9e743f9f6c9f4169655da7faedd309a2df759f24fbeee377f3b72fa8fbf941db675d8e17042649d8a5fb13621a4a5821d47af282d077df0b4f8aa868f774b222b02dd5d32f2868bfef541f5d7d943df0ef5ef50868d37daa0f49f330f7db7b505adbc6dce645a120169a875f85cf85086c4b49f3f0b710816d751f816d715bc75c0b5c65448a46484748461b739cd7fde6a936e9619f07620b5ce5abbcc8e44212d5775f5050f7dd1795be4ef55d9196da77deca4fc706d158992c13cd54aefdf11290221ac627cea05c3cd3d8e4141a9fdbe27f1155f981d09d08c6172f03744c184444b89d0d7b54fe9ddd2a2bc6c84db0c5d752b9c5ecc31c83510a27d090004d5d6f3742ed141928744df0845443aef2cbe7973b64bf58c5b63b1d5fa044b9598885368812346ca9966a35fc5235361c2c2a1da8f2e5491aaa6c428a2aad6882a2c25a77c2892730865833b5c6d41a437cea0f9d1bd88e1dab50d31365d836ecaa578d45502d4a8e798a700e30747e4483615d630701ff467808f8c72d91bf46b02f6cd27d3b12265cc52e0cf374bef374fab7ed396f87c16dfb0c0ba50c6e2fbff9757b9e1968d8a36eef5f921eaadfaaf286c0487fee4a909fce067aa1db4f0814e186a0fc5184ed5bd273a4542faca3117b707d372588284b4c3e5c696de52ef422c153f5a8c4252e1929611f2eb15e4d40d5eb53e09f6e5d614e987a0151c39cf6b41d75bb9c7c8055270c5ebf438a2e2999f9c2a5ca2ff344959f6149114d8f9a7d213b55f93ca4537f874422bcfd895e22cff597144024a8d78706a857e4092312f5fa90a75e491be4fa1f4a507f23712872d151b9887f786879e417a5c1a286b5b4596179e45f1fc9f0f531e9f26fc3436adad46ba31a161a7a2696c1fce6bab22f5c315516e11f51d0a48bc5faff7a615f4c924275b087524328284c33de75cd2f26adb39236b5ed4e8821556eecfa0f62ed5a30927152127f611fa5a527c438b14f0cf9a932e7c47446a94ce5b4fd612590fbed392755db05b9df9c933889db38ede35f6da4501b29e4535c988b4f3d4d110089a9cacf4aacb4930292fca227032b5cb481460ca010634c5c2229aa4b5a5385082168142a55e4889214077644c40d38471c884a33552443152a60e4962723d8684f4a316479f077fe93b0a24d511742e060050161849a6cc081055169442d8898d205115564f89edf594a230d8b898be251c8cc2e92ca6009739a969c6a06759b9646201b4b6d3175630752ca2b5eee2e658472456fc3d83773dbd3c106a95de401979702833e48f68c0a2b2861e2bc35094be93dc0ca111f68d070a1983aa8fcdcc10e3972e6aeebbaae25a2df6dd45876087f8c31121531e843cc4595060d7ba8fa634becc3d5bf872ecc0b80151af6517f6dc4a00b21979e60629f3026557fefee8e1bdb99c4845972779c209a88d1b08f0e2f60286a872cf11365f574ff27aa1b31e8440cfa53a1212b1979187e82c5d8215cfdb72632da322ccb26cb68492af2c4d25043c43ed83b73611eff22fc230cdd37fa605fe75d4d75c1ab0bee1f8fb618fd75626425f689d59fc3f8f3d23314fba4e19f0c94f88925ca341193e1a790cd848c8699aa7fdc36629f15c3c499eadf45ecd34354c7d2b43454fd990bfbfc7806fd6723dd84d922b7cb4bc80e616c721b8b2e8f46460c114d88a6655f84b5ec0241667083f0d32e7441299ba32cd49ecdb107b9d11bd1b0a7f68f1ca80b5e3b04126317c28c527bb09494ec5313404ca879da11c010204294503281126c96e8c18925d654ff1e26a0a83fc608d346c8c442f43b29cd61f590408cf0168075c788310493531a6272509ad281aab484596250d3b44cd334ede330514dd2171e334a5253ab86c3b00f931393611fec9fb5f04f9432ea1f14ccf48f9366219ce752a3104b2af2b625c52f39229a18263ac5a778262ec5df328e4ada2803e2d329940506e32b61308c523adc7be53e87a7c3fdb67264396d28137d2c148f568d4ef6b1667fe3e964bfad9bdf346fa5b35ad16721f6e198a3c6b82971518c61d2c4b8a21afded3ee0c8efa30c1ab250ddbe4f67fb8f9fcef65e37f6517d3afb918b98013afbc5a456fcc299146c347fa09c83515a93b467a31e198ba5a980bda001a45fa854aed7343574342301001d2315000020100a0704c260402c1c15a55dfb14000c76883c7c5c361a089330466110640c32c61043080108180360a6c8b601f817803f02e34b40fc14804f01f22140fc04885f81f129201facc0b5cba4dccbedb32290ea6c178a0bc3475682ae980f351656936a8096686d4ad05c2f0616a566105439e5600a56e7949507f66151e5dc01daf0cb5bb21c9818964bf964d622eb1151519a8adcde0c280e75e80bc991f58ef2248bf2c283b2b72df56b854c2a48b94ddc8f03eeef00fb73c8be39e47e0eb9bf03eccb01f6e790fb38e4fe0e615f0ed99f03eee720697f90c3b02f12d6ece985a91522d21e52ad13fdcb3429f432bd494d86aefa5d2d125030a32be62f5d53fcbda8b08ad2fba296150adf8d0aeb28bc5f1459a3f4fd2858d67c0adf1b95f1bff3a87d55666514cd8f6b20d575b1b1efa1a85f4c48c3f1643e7d71d6a8ea9db54a0976aada3b2f98452901a7358e9201cd84b5b9a42305e2d4d243f1d6ff285e415c0c7508945d83df016e977cb3da2c83097a6e9e73eeea41ccc8c08baf2518323450a082f4cba4565ef86bc2b30d46bc83ae653ccd3aa62801b687ba3e256d8166e6ec37b0102cdbc6541d3218ad0e7c489ff7f8ef85898e61c20fe909760f8904f8290ef5b56cfe9f8a1bc9d5a0dd9372663e717b5a867b05906f8f7e9557e7f9c520b2c23d0852e87f01990cc637b7c5e1c5596a1d433a5c79d7157b508d9dae25ad32ad88949adbeb6982dd2282f69611512028bfb63865eebcf28563eb82091245ec3966d017b31c140a5cb9286f24a74265c22571b32271f2ecac99b54668979a13ee2180ec755cefb314e024964556dd6e52b9c4c7b52fcc07afe1d8ab88f40523fa44071dedc22055a95c382cf695a7dfdfe64a119c9613623580c0abb240caeeb59e466325b106b6410ff09e2cd60bce89259926e5d512e50f2bf8427994d2c664d0979409d4410cae45454974810f42a0a8c870ad024816920969da8505e85dfe1e198643692886d0e766e5443763acadceeff0efcbcfc077426055059b03eb430b71b271efc8c0fcaa0a41d53fc0b44a3bdc6542f08dce343a53ead11be4c0433dd70b9620a8eec4ea810c1482174a9f9e013a65557bf9ca10caba15f447bb0f5b44c1e1cb46f5b967bd0069734b07e39490d2f75c1ffa5f7818dc69ea76ca78bd3859d7db4873800afdc7421e5d53ee8123251edabf3e5807481d9880fea73f02ebd805eea65a138695cbc5649901edd9fc8f1f14c3ce0b8bb8dd61d439aa309defc39d50b1966e1a50ba28b98b37fa5b00e6f0e50f9e9038cdc86ac6a72361946f31522e58c90f70387c004e821c43b173494e1a4f1395ca7181885f70cb0c5e1fc8b0cdeb9bf1688c17111c16526fcaba2e25e2beac9bdb4eff9946a3bd9ced9085023918287bc2be00227367e82b0afe60673ae1844848b675522bd09a12bdb4cc7e9bd0fefcf5a0e8dfd8f797cb0d77ddb49fe4949aad8a7ae9fde6d5ff96f1c0e743dee590a81f90f9a049a9d0cee396f0786112b0c0a300269d6018f7e59c4e8931231a53a024484247ebfacf02307c344ce7115a55487c0fa510d690bb1c10ba3d5675d9464c3d81ce2906d98d8d8913a395262f88189886c735fb597d4897b9ffdb25f5cdecfb994a4b2c7aa60dfef1021c8e3971500083cd19a6686f44b6d59dfab6c9c46db7edc1534d2f1967b424a09cc3b9028bb8ee3ad8c2316500ec98296e2bbf981208a14d166cfb3037cb808ac15501f0642459b67c82b8cfa6593f285266cd28904419e4b46352e73f8b64cc96b3d0556e9c8967477c1656c8cb2f7bf43cbd81324fa02479167c7aaca412113eddd5d5f2721065598454b38c91d6eabab0090842ad5917020b9bdce0cc585832b2378d2b9171b2323c96e4355b19584eaa7067b479e8285a19d401fc62fbba5a81a54e0b3da72898aa721a2ce648d9ef0838e3cf9a8abd814321065905cca3a7750061529deb5630dc5c00df6e9ec8954566b759985870d7dbb605c4216851bfc3c8fc0830b172e6661714e180b92585a2ff449205315066f3e00810a09b825fe7b265e9de139e1993e0a675a7122a8394dfdeaa791d8ecfc4cd6df5dc1e27d893b09036cafd10f76393e88999109ec0dfbf1d3a2d3d732038de863b4b2cfe26e6d96475d94485e7a7c650694c5906d461cc9907d08948107f9c1f0ca1017f2966f677fd3eb485062e8561da12a7ddc77fb56e9c768909319914773d3d2fd0e28908b626e577bb5555c8c88dbe6648507763e966159cd7223981bb6ded95d323e594f32e78515246ac6b23b23cb90c686724022dac0297cb40aa6f461f4149d0d0f2dc149725b0bfa73a25aea53d6f71e31ebd3809f82e558ce1e62c02469527d3612e06fe0b08440e2591447b875cd06d019e286c510cb1892e1150cd5837e5a748c7f5348d9756882b531409e4a35378fd4830fc3b57f10a576d285207b450babc283d40bf52832b3e5b00b72bf8ef681962bc2267253882945ea12bb967318ffb9d8342a00ba01730b15adfcf3b380ef12f9d1f19a24f3296a95fcd9029c18c577c8f82cc6e5b03ad32639233734e0d2669924819f28401667dfe0cedd13c1e66f8fe1dfb9cc482e8d398285699e2abe4f5f830d6f35df01c790500a00cccbe4894fecec86323d1dc31ea71bade42dba4e1b0201814414f8f561acd58fe8260614756c6431a9c2883640fe6a1f97c409ffff07926091bca8d67d89b2b007b387e4ecdecebedc2339f7964d3b307996d5275a398748da59bed92a5bf59b28ba4455dad6cce029aa947631ffb2442c5400b439ce80661d123023eed42e66f9faa2b6275ddb1c1a7f1573c52cd05fb4fe5792f92411cbda2c937043d81e373d184f7f24620fb8f999a08cc768b0abece02771ff1833402c7eab7503c83742056462a0825850ce2cd6dae300030c07f6b3dd37c7c69c5f4487798e2905139904294f19325dbe8746a2036a89b1f7e6f1d3bed2c597ab8a8c778fad9fc5a3f276d56d99f7ea24c6d44299a799f4d44d9c6ced9c068092aab32b2f8e21b8c47d7214df64f69a9ac24cceaa9c588ef9682123c4e9d89108cbd0751fff18f0dc4b93cd4044a4ba9096b461c87fc25da65d0f949c846d12ec1cc6de55e98178eafa8a496c043d750240af8374c33133b28fcbde8764ed4786903086a5cd52bcf3903878f7c00ac166634164748d6e7ddca3f5aab477ead18eb3bd38b2ed19ab2e63aaf5bb57062bed47f986b27e81866fd5ad096c0f1e6d5ae654da5f06054533c0bee5a2ddb7d275143da68f606da6ba868f3314bc8cceea9b7430a1e55332615da7abc983d438adfed27aa8e5551513d48d4e7cd2e79de38490e381266f623d6b17c071fb1f038735213eef3c49052e7902b24109c8279c4e999ed1b88c0dea4335ab0d474b19de3b1addbb3b7b27de34d851b0e116e3ba4b8591df4a37edcc678661bc97029f48f63104d49136c90a22d516f714627c7d4264aeabf2e1a2af5a49ebefb0d16d585ace5b4dd7d60a8e1e126d1a47d10afaffce1242a7003e44c127e6099d014a7d9da97cebae69373588cc582b0f31fe4c5fac754d067342a6b51aa1dd21e13d3c95ad12f49393606c4108d30d444f1fa9a400af6e407a990e9c2f78560cf3042b3c7251cc46b3ff28950fcc8a1c4dab40fe15db48f0a05cf6d6fd99d5cf98e7a213c08a33f2ec0e06906703ba4daacfb1187cccb1b0ad10ac6feacb2fcf362bebc331e8f5a28516f1a640f3bc6b8e0be9bcabbe06e114894a613f1407141d49649f365c73ce5d873c8fa8130864bf401898f157ee17853db606116cd1a28773f721f030eadae72f571b2c33b32c069010bcaaf98964e38b6fe2d033a736fa0a6c0b241ae0cbd7f3ad8303a017fe44d35b791a9f1f5413b1b6c17b663bcbfe3c8be9c93095a0e1b0d8d2d505bf9b6cead1f41fef5dfd4be944d5eb81d4b27a7ea3fe3bb36d25eb6988ecf434e25d15e2d567f25f89e877a1a6ff13692f4533c8c3a39f625e46161dbf650135579ccc19193c4a55fff77b7f622af52b639603cc10704c6d9e5fbaeb7993fc452ba5502e95696d670c7e5a6a0409f22e3d28fac9fd46fc88a4d4d2bffbf26708986321e381a9bbf97ef89f233df12fa8c9c70067905441cb862a9730fa706d03ab96f2ca4a237c82ae9c114015753f7ead5dc073371a71f22cfa0e68977a390cac8a756ca001c9d3f144c6579b84fd0bcd11c5a95492f1bdbc5fa9d8792b2e65c24612d4df26bba45b194819ec9d727199beed5db9c51f98397070a084efe4b16f13d145c72fc335f0758e8aee410e80ed808dc5d9d5fbfc5cbdccb8f79050fbff93f4f87b7e8d20576e8782fcf2ae591bac1e1ca1963d43bae59ee1fab7bebfa70781115bd74c4f3e709ba370035f2e39a47691c6b3355f39c59e31fb53414bb00362d62aa1deb37b8e0a81f39d568d223e457388eb5ab3326f9dca9a9bf3be0b626c974286e86bfb2018a3b0ecbf4fab2c15aae9225025dfd6bcb66c84d8420b8234e2feebe08c0a7a2a391020765afc17a94b8d65c8a0bb44fc17a20fff314b02e037a57ea94e0e5ffa8d301bfb0ec1cbbf1419203edc5d2247536b3d666c57887820808e62e1ca6e3757b8826541cbf233353dceca07c66fcef01be09a4f4ee4189fc36234c6efc71a83e80a3f4e3292c91f7394c598aabb2359552649ef7252328209d757e3f73d30188453c5a863109ef35beddb8313b3158fb9a485a169dca10d12a0f627bd2818733b47fe3834e9e7a9c37afff1824f0269f584726cbe4bc039a8eef8177c6f6c1cbea32afb783cf1bf31de94698c15bdc09363db79d241a210a473608d430fa8466b5ca4bee1c5a62e36acd0add70deeb29f5a655e8349f32b3c3fb4dc82268f17c5d1feddfe0e6bad19f840154cea5d750a0608b26b9a36120b8b5af3013d2e9f8ac8624a3c786b19ff1b8dda2a2a64c8ed279839a8e58252e705bd54dc888ec968c8d4c4befc1564457b04ae65492da4a7593df8597df255945c27c606248d95852eb65980fbf91fcd09f2cae2bfa6d4bb4b392e035255a1e6a9d0f6ae9bcc7b4288a9b50e0ae658ae770a74a3e987364e7230486e7631e21ff5f677af08303b328c04dae3ecb01ba4ef7248a0081ae925ac5fb9c7b21992579157b9be0f62ccc7dff6ba6fceef1be496ab27e04aa92ddf348d8497b2170263aea976c725831f5c12ff4451569488f284efbf6aaaf286e71919a807300e196ba3ff6fc0d3459312694137b696ec7c401bc6d049f2c46093de76544d3a879502fcd2dbdacb9264dc5e1d53e54af934dbe7d35bb6980602c9b695ba7fddf660cebdc6c31991597efb49124c802c28aec858ae7975c7e70a654127da26b87c26d475efea30efd55a69e3fa75d75c8596a0789a4c22993b8e9c23b39e8af926c6ba14a0a31569aae88792b09c71f1c8a6fc8d2068f82a3717fe3c54349f7a6c0d23ffe1dc841e063dd1ca442c56252bf3e71851eb4e0ed01d1f9a8cf52fc20ba9dad5b9b7dce142e1c46ebbed0277748c6abb8e84a4713da8861a95b135534467ac4403e49a8d9d2a47a1307da049c01ea83e0de9592b632f6e254ead7c9c9a490140899c17b7569b32a900a563f8f2f65ae0987e22452010c5130bc4108de8ad292194fbadb4dfb070cc89c5f220870cda27a8b92898afe137a7805017aa649c12aaf1bf25fb5614bf22c291e6234c80ebf67764d6aefcf398814a4b2ed6e7dbfdb827392e44bd1d3f8d055451a1a65f85c2644b0895a74425c2075ce3c79fb04499bef6628a436614e1bceed7122ed35386c26d719e940515d2818e6e9076b6b62dc785c6f9d163f4ea337a00ccee81beff51dcd46d01128814d5ace71ca2fe787af8587935054ecaedc8684a2743d2cc182fd8442c3d7f35129852a2da4e7af51866efc6941acecc017241e4fc6a7818b8c86d7567126f91bf3946a368fef6ae96ef362c7c0baa9bc44ba1862efa6912346f4fd2d5e4955aa929cbc183540d4c90b05ea39316b4cbbda53823e3f1a30f953ecd9e76059870ef22eeea9f6400b7e4f8aa49be7319910a18a5d4acfd83a57627659c8e3cbcc53faffd25c447f089c6516d76092ae67d816e16680ff665f00ae950d749337193d824db4f01ad14f89a2b853d8b611494dddc3304fe99902d1c689e2a47dde01a98e3d5a0c4b82e25a349b3083835eda6252b2ecc8902f41fae7747a1566c229d9421c97184ad26c0e9d856ea886ca75ab852c4699d81110df858b846580c476c1e14df1e1238abc45cb55a28c03e790b41a3846ccf4285776d64f4ff7c0f84c1c6c74cd9fef087285de535ca3f11f0080637981f960574b1eae4e1887a5d5e61d25fe9b08fcaeb4251e4a9aeda6f6c4a362a4f2b2f1a74eeda26239d148b9c23839cb2facbccbd8780eee1e9a19a8cc9a289f97598d263dfd35ac8a3977296846c32f8519a8c251ff68b48676b776e1af6e0a414bf015822532c02ccb9c6931be079a1cba786d1f24cf305762c8a7b2ba90ef7694e64077c3c2661dd8d985d8ea398800a1897f64c1d4abcbd30c6f16abaed1299717b4c8512b272ec8d54f129b7374ce7cf7dd24357763dc9e5df30da15ac7dc8789e2220ee01278da7a44261d17716430b26926564af8edba5458b6b4988eccbadcbe259d6b1e67ff956f59fb3b958d406ef555bab7efeacdeddf9130e479cc38371e7d847332de16dea7344b1f8f3b4395d520475bd79fd9c01a46baf3e5e2abdd9e4129bb2db26f7b1859fdacdcd65a6b70f85fb79ea2d6cb13656ed36b16a0071aa0e25b6fc5579a952e119116dfd27aedb19d350c3696e02fc63c73a56c2fb3c378b6a92398631a0a3098abd8a0f141067ff017a76bce3fdca55e44f678893111405e2e7e46431b47cf2ebae9e97de344faf342d42b523ab44ac055cac199e2c26662abf5c8edbb60065e20e1fd45f1c47fb5eb13100a89ca717a54d42fcd6fe39dcab3cb168e139f41222b2459949da9dc8439f8229054e874f6c7a99860a9ec63a9c7cb3cede3b321e488b561008bba399e137ab338d819aca6e6c62ce0c045376dbb1f9291aa1edcbdda768c0caf02dd506018f3afd189c2e474e09b2b3e2626212830e2864e423a51b8fae809607071a0c0f8db975398dbe108b0330b12493db9c8f75342dbc6eb5c54ceb5728426e2f60946f7a8ebe31b76a9f661b6bdd679e226b31a916603f87b92d8ba75a1dbfaadc5844e1a5f9550ab50a79b4ab554ca1006b29a69a39c918085682a9004e736a334eec34df09b42f28a285a6454e31221e032555bdf1346927cee0b2e93e1f9d2502eb6ecbc29154170b39640d9b4c4a2accef122ced2ef716a377c3eae533d01fa8aeed3d1f85b7918492e7e229f8e6e464d40ab82601b80d2a673593122a34802afe6eef6e0beac0fc8fcdd9d42ed7306dd1cb77c0ce5623768a9bd0e3751cdcef7881c1d298134e11662b3d7a8ee15254bd0afe51391e83cca8a70a163017da91a3bb7af2636d5ca6dbf012e0b44a77ccab84b73ea499d5b27c14ddd72c9cb62800a160ed112c99aa1a6cb12dbcf6ef8ff98b37fca3662b01a2276669811d891171fac7c3e3792af0fad82965529021891c0d57ae54d5b56c3a9bb3a6565d988b06ddf2423e740bf360e0d0593afb86277d85670b331469a9fc4b56e672e778943203385f4be6ed5ecb8796b5d40319d2073f953b8e6cab4c60653a3e86270600011d5528e8b3cef2cced43fbaf2ce612eea9d5908099087f4905df6cfbdc1e1692125f245d435f7d492cd19bffa902ef2146ae0bd408cc8d32d3516a805c0157ebf43b093ae8413619f9afa3ef663f6687d7f961658bfa55966a8f1c067f86239a38f860f003735dca9dbeb3519b7919f6b91c7ecefffa059b39cfff106c5c973da897ed6a15b95738e48ac2a2856abd9ada6399c9c90030b291e5ab23b0dfd4a6f300da5b89eb977886771429b0a712dd24d5500ff095616406dcadb42d98f57f49317c1e47289b67703b2695c7d5ebe28ac00667edb1585a5d3abac431ddb5533f47dae851252320670224b67a9678618a87d51213affc579bf2e3ae6930fa52d150401928443f604fd02388306d1500106817360415d0bcca4bef75699a490d7d1b15590a692cf096568e44ceb7ecbd03ed271dc02b44f454ab1ad1b47077cee021d1c875aad1cf4aa44b161109a2431c0d6d4c001f1682868a0a4e58ab30e794bf539a4325c248f58228f6f58019f9b6f7de63eebd3d709609e9b527674b2a4a255a00aff8f7882bb5b2d1c8a40c975c48974d0382b0ca1089e248047b01416d467f6ca02f33bac71ab4fe21a5aaa17274306d88608b11277ebda71f2c960c12601ca8398854af60a8275dbed11325e33ee783e48f1bf70a7c1af4bafcad5f7182c1240b624c17f32291bcc549c7487637d4cb025323dda0ed952a0a97b9b50210a20de44eed1d94c5119982f9b88339a674a07d8b976e68614591a20cbcf758b68498e144bf2ac88808836f1fd02f34a68eede182fc165aff42aaa28e3beb6775c6f266fa5385b691d5ff77cf9219afd3400f17739fba41bfa12681d4691824cd2a96c706c6150e5918998d023b84a5a02f24d9dc12bbda90925d3c705d6f43d8da1b1779ee5a51f5d85124669d4db7b481440b92ce86213aa4d88e371828d9bab60a2d2ef5f04f71b4fd77659c34d9b72b67a5b8b0793503449187006477720250935c46a72feab52701f871a8ff5c1c9b0350661b28371e60a94a21c1e39ebe506b0b01ca816a54827048f430b8de8a7c548f7a172cf28f24d372a6efa782eeba27fd30915d05f362f8a12fab2f7b431adff6aef01b25319d3afd8356c5c92eb29ac6449812bfbbb5a8409c3de36c58a5d0dfc5c8c4bfaccc588102a06d656e049101337289e4f0fc4f2f7253e0cc326edd75509c2dedc8ce7d8c34fb99b23705f17fc57d78c9b4d11ad4bbd95d0032fde5fb6639b1d861b9e27e262ab9ca32ead72a417ac8ca9752661586575e7d22668fbb77b68808b8b7a768233ffeae423ed4547b7842de154258d2e0f314f980dd62ab5d75fd87bfc271989b4ff1bd5f4beea44e9ff306566961e55d6c6422a2e3d32d0c1f5d0bd571205527b36e853c24456d0b3d7670b31278621c85e29a386d4852904af3a3fb051e019f759eb1223d59e15760d1f0167ea114e3f3002c01d781c4d3041d255b7339338bcc86685c0426b1be30126ccf9ae308b32453a5461a577a6bf8543a320fc7047d406d8ca91d979372e977e37c4e9f79af6561d28332a08166d7d33466044fbe85daa27d338db8e87bd55d45b01e7e336b3f628cc68ba9229a9403954e745b5201a66dfd1494d62d623fd8d9cee1298b663bcea4f96aed0c871f1505d4d153bf1b6c7f131ef0c63a726d1f7cc1619b6c7b3bc635dc00aeac45c7ca5d47c77c174b582b8d425a7072f4a7c953c079c6eb85170dd1e75a06812adf2fc5d8e4dee5de179583b3550a667ebf425bfe86094958557099a2541918fb62db0af6cd00f470b4b4d20ebeb971fcb8e090f70acbbd468b9d7c51ee37617ceb367c94c8709c25c65e13f2c9122ea78641f7d62e722dae9ea2ac18632b71efb1ee00bd9063ca51b3267ca39755c1fd91faf42b6e21100faded67bcb98c03feda918d371f535be4d85845efdd5e681d6b030c9c83dd8a96b1c931c1cab4f87a2e5d8ec50a89211912382a3c283624144ec484a2da0295f13ee46b34af7a5db5b52a89f60851f9bdf756cb298dfa2c019702be9ec2677069c2753bbade584e6aed07015e7b2d76d64e88937b759da7da5678d6a2fd817a25dadca282af8e3dfddfc7d1dfcf34155a7f9ecf7e7a2d937f8cd852ff819c6a1bac1bba180ba2e616fec5bdd9350db1b42f2fb2e771222ccb806c78b051d2503fe4c024aae43af4d3b76ae1dad4c955e97e06ee8563c4bbb8ecd5091f0ca444bb0a5bcfb31449cc60082e86e1432f64442c40920b6886fd1be51d3f5e3be1b9bfa8293871dc46ed2e8466c346fece910e83addab156dccaa6f834c1e624203115a467f9b75384e6efd87f0c841f8ab67168e2c73143d3e06634aa7a677a2281f6475a6bca6e3721827102c6c683e79f209494ed3b723558fa428e3c39f9525b6a40ee79f357c3a107b34aa4d69137e91fd0e80c7bd226a11443a1817f827f88e52317b611b6bd3b4c1be7bb8f450c4038b494f0cb0cc6e1a9536bf420ce7e4b8b5bb796ddc77c22085c37ce8f6cdabf146bdb9aaac9780e7068eeae7d43e93d0645b1389c40f061b64ee8ceea59154528dc4903592ebae9c85181763b587fbd4f989f7a9abe35da34f89e8e101a8823e4749d2e805ca1da1112193b13f5e21617ccfbd0b859575f255c0a73fece5f49343d1002abe128ddad66363c5142241601a290bccbc8ec184b90e4fa18564c673b0c83bccf4114768933b528b2183619920aebe5b653fd290082099cdf88d8f2a4d32ff0fb4b53df6ebb6bfa23b446b26ed92a802d6ab6aab49cbb4ccf3daf3f6b943c64ac4c803824d2376cc29966333fa7a5b9f1d32b00394ad28cb74ee67b0b4ef5c8b7d80addf0d2e62fe7834c4aeeb7009a80c0049bf884737e7063411af767da7dcc5ad7f4ec0ccb4cceda536373d53519af8fb11bfb2dab2c8d25754df675546a6b032867ad1f9f984d478eefb57abc0a9415976499c2ccc0120c46e9990e9b118894062df3f2d584db4541c64682fe0886c169804f3b3fd3a23ef357e56db5f2a05f694c7a938a8f2a6af52bc401c19d68874925816986fbe7614e1831aa9510a94fecd214492375f9698ece8c384b3fb045a293957f42507f3bd6ab137495e67a22572314b898856ea1c7bd4b8b8994d3435806d6a195a78843d524e443b1daf36469f7826e26d31278c10c8fc872e48589f7a46a708c821ab657a65d46dfeef32c3e11d339f1ad311b849475259280d5b0d54937810d96eaee9aa7c1bfffba194ebdd9d2e63d5f90922b060ba7e4660c8002dda49482173f5564e8688a125cda2a752d4b8b923fcd77c6a9a59628fabf5a815c6419be6ad95f139035944079801972f5967135ddd4edb727e8fefed6cd089f8838d6d4e7cf99e5d13b5b14200637c7108b3599275002b617a69e788a253757ca1b690a5036c413e2787c5e4b60325568a6cfe8d5d7458b06241c06e7b854e0dbd578d1449d526ccbd848c6d4bced06ea7fe1c0df7cd33bf704fa06115697dfa4105a60c33e776b4a092a36e8114d5f8890bd0a58790df71bd9d8adacef44163811b4f72ca31cf7757dc8f0fba9d4304e51cfab91fd58d7c762530d41819f2e06ec8698ddd1599ebba24994b53e1f9116238cd664827b2fa2ce6710847c545204ef0090ea445e0c2d746171edcb3045e1cce66b2d353db3a510c815388d558ec8ec78e5a37a63fda6df5e7f55068b17769d4fa6a8e7509b8decae119d8e928dc0363a3b8a2d630f1215a638491846addcccbf371345ac996694876bc358021bba4cdbb95e8f213753de529b4d546df6ae2f344a433b8365769d6f79858209d77787f574be51038fd54b9fed8690cf7ad0263302dbd98b790689969869068c91f979c25384616461fc8aef8fef8c871b7efa08ffa839528f9141dbcc85b43d22de0d71814b93a680be513a8fa9c7242e67324e4f4e1a441ed07a2faba46b4737f342884c834d1d65df1041a683a2b0d0e396755bf9d1f71fa485f3491c6b8227bc48bfdbbfd132d34a42c732d0be73ba051c6540a66022acba99d9794cbaca9dcb91588b1a6f66a38f8debbca3bcd048bc2191d0c6e875143460d992dd361228e96ce18980aa3e32eaaa57966c40335aeb897c63267e04e6f477bb86dd8ed1359f8084991aca65fca1b48ebfafc17d00414a0839e76cd37c404565b6e3c1b805e406e43c936c7fa026e7441a6867259797493463ad32cfb9afc27340f8bb752d19d0624b256f74564022d9e8e6ae78e1a70660b4452647fb1cc48f576e66ddef04865e95f0d3e11f3cb7c4a5ff2933a0c99d7330e7431846106201c6716c0d388b39c684198362755f33d0c409a42e88b77082e12bdcf14462cebe7f7470445763ff37fb62052a2c2f5633cdcb838b2d8afa37cb55c9f6dbe8e2b6218f9bea6a18495fa61d4540129db92dc052f3ba1fa5e60b342a9d356a52ea1acba1471c853b5300b15b776c33b597fb7ec064dd92be42e6aac93f5b9c94e45526f2ba90b5de2647ddfb059a1146a8b1217bcfc74caef8a5d0a4d5d0ba51739ac93f5bac93e48a6d669087ccac995cc4abd41d513c66fe678e827595c90acd2375279c6909b1903fd29864b512b017a9e2c292731f91b42de5e78ca75f57bebd9c445bca16490b129e14059a254fdc19df894d72e11fdae4c10b9e2e5cdee351a9f22b9540915da6008726b095272d6cd5925f2ff7bc7ac1249f0ed6e6218852de7b5a71456c625771795a5c1e23eebec875d346e5e952c1a02063e88d33a460fc6efd5b175a6ee95eb320510ebada23d36ec7a25a2759fe9a222c2ffeaf609f5447bd6f0ea487a6e48c5454bc8dd0280f28fe07e00a1dd9c7a8ebbe10b44a64fb90a8d0959ac9e133d881a186816ab79c40e3738de65db857f4ead8534c01484142d2e8465d13daa580ad3147286e0d365564c581630e2a61fecf6f4bedc1ece9fa0be0036c1e8034a5a796c4e552551ad9882d0710a211f64ac358425f12cfc8b6cfbabfb480ef6f4d37a29370a00ac24a68a8cddd2dd4a44a96f932e8e1edc828b1d5d0d4c920c7422f297649cc694e3fd522a00a2d28a54f3162c54bd827da9ecbc3ab7d95de5dcb3659ff65c4bc67cffc2b318be9770554f3558eb35d0a1bc34112923ea8a21d789840c74ebc2314f16720f3a1da9c8e18d54da80d13d119a31865d546485bcc06e359e473cb0625ad06135569065340d217f4aedb3fd8f632bb892a5c6470ebc3ea519da5c5016079395d5342506cbf6b6ad16041ba00c9f8d4934306cd7b009b8960e774f2870cbbddfc37a0c67d17199014ef4847838d7678a39bbd3c9c528c231e696125d03439429bdf369078f03fe98735611b68a15cf952fb32fb0d60f9544193ceb46039cbee4391c80362c9e4b276ecf24e3cf1db33715072badf762de6d04d8384b46620b9f18bc8e816cea30d7b040fd6295f6725c90176c10b564d0c2d43d9f0b70101389af981c7784f03efd368b4ddea6e41a85fce8c32796b6269ff642c50d908e06d3439cf27f628dcdb93f8b47f021542c156892f25778a5fd60cc8402575a2f3c535c1ab0523611c5640ecb8cdccd3317126100bad0a0e94bf2a36cb036ed1aa861699aa12d22d4ac17c9cdfab15324fc4f562f1223d632b06a5911d6b51c4a0dc5bdaf14f0359394ae70b2a1f452944d560b2bf503e8b6a95477a1b2d6a641e572e7fb69aa27a36474c83515fc11c134dccf32859140696c820230b1ec330978827565b815af46c03f9b14e0a11d9177e13ca2d1f02b39716dcdf6f147c8488cf482bc1ec196339e6c68ec29a8bd44c8fede80abcb6d8a3665a5be58d0d41787e0b7568ea87dab4dd8b21baca415cd0d668b8b9f8748c492cbb6d2bb2893a8b648f32aed48cca769693291e44cad31641a583e01e7f96be661cd0faa0128ae64c5215ccde1c1d49dc83f1276db512e5614be74d60dec1748bd78bf6aae2f86caec795df8e738d0511ae19a2b179de91697ed52eb047a0d426375ca794304903ea763d4ad0c2400d485ec5b9826e4baabdfaf649f91625c88dea6b99387296704cc9b51c903cb60f25820cd37b891ab05d77f41c92a1264c438970e97a7dc7be9f1b545d3ae6b3276152c298eeba4a5d2b946c68eb2fd6ba5bd65a35bf31a47a6ee7bae6ab727a1fbe7f1b19baf79e6398f53918ae8656b2c41d1bf6f9427068a8e026b023305b9c30961688794778e156f5866edc159e1c4505a36776281cc8b05986f178e75b908448804b60d9e0d4a60922581dad236ac68dba16006a815bd486463c2cc462f5cc716f1d26bfd2edf426760bf49d3d7d7dde7fd51f56089d4c68a2161b1b9185f74b27a1d731835bf9b651e0e7396403cb395dc7747c326c7b6e5a4f48d0c4a80c2280486934303a8f965320afc77a6a2d01601c8ad6f80853e3fa874d57cd76681fcceb52dd007a3bc022017da75c02a8512fbb1a5facdfebbdfd2ce6ca82762b2cd0e0116c8ef2b1bbb1eb4befddbd2b11546b62d2f61d947403f3a5002ed9a7909a231843d82a5ec3bb1ca2a80018e4a0c04c10173568b1a403ae3c6a74414a1a6b1421d466a9c2219a372b8d3e600771abcc5c53b1218653d496a5705123c301367f5e5194da3be20fdf52310dc504770af39e76810152232d71f107cda6c6f322c847a172ee526efc28ccce99406684963385565d93598092e9613339ad5660a22d665e5329dc12f226b46f06f6c194401fb43a9d99f094d40214970902b8f0b1994e5c10871889eca4922e10ea74c3dcede700f745c5440bc90062dd07e3ee3c2ad81b5737b5c300a4aab3717b83d0e90d0bbcae39ea2afe19721444742129ccb17ac3ebd5927ba7114a06cb83209b9c4145bd97524e22fea23ba08c58ae51b7d9f381d443d3a90430337f6c5ffab7582e66e9adec0b85b42238091bdd9b5df1e62260393368d9eb108249d12db23592d91843481257e2d077b5202ab8e9462553375cba604ccf0a79ddd289bcbc183d5bb5c777543ccc0d0ce15bcc043eb7af82925d70699ecbbc7c9062af5d0ac5778914201d5d84fd44b2be364f4cf2336e8b248996f3081dde19d5568684fb1e53fdd2347b1628db45035354833d44e7ce1874c4354110e771004e369d74906d2adbcbcbcec2da0893bed60114be201a549fcded8bfbc017e8a35c566e0d5646a39473528fb314a31e6f5ab098282c19e53c7b3ad7f384d34d26a504f696ff7adaa8bcf4118645427b193cf31f26fe1547db737b2ef23c307f6a03c42c29712481f36a0e26e29f860a5a356e1cf1595e860064bde626e1693ab5f10d64e9dd0d66b76eb92f272840605704a7c5e045b2089a9d744e3fd135c14abe743e19f30fcaa08f9f80238d8744fa33a3357d6a7e14c6eab121e375ee79f6f5775ab238eebbcef1f3429402bd7acdcca59b06286f7b3e6ca00a889902b0a3c0ffede7781e7c24922cb3bbfdd78c9666e9444348e53d2be90889ede61db5330fcf8e91165d0a641156fa63ff238a47ec042e8768c1f197bf948c26bf03f7e61d6688f8867af93dcbdaf38bfb06510cfea764ca38d33c1ded055cb89a1a48c1ab9a2286e8ac67dae70ada0df37c9b2ccefb04a6a0d66c81f301cf3950c1bbf2eeeee303b658ccad31240873b0de441b3595d968ed081ed59183422403e7f98adc23860c30c35cbcecadb1832c96b61dedf55e4af242814180d998eb8af605c60c44360fec3aaa35a4b7dfae3345b732fca4efbaa19e462606d96d740137709a900c6ee4931910bedcc672b8b04cb32e44233f56dc94a41d98c3c104dbe5bb422589e011f84a96f17561281c63522aa717e8fed5b723e277a8ba5bc89e0eaf5d003b4d78d10f0cbdc1ed6dfd78085147e79cfee418a9836f0543bc1b2afa18216bffd754427d52b8ce92578716515333358e685ea9c5641248bef77c905202702a26a4eb55e20e2639267343f1bb9d4451a3c36770629c9836025c17a9cfe2db12e768e07c092a418b5cb5442f4b2470d73e6ccbf7b47dc80a4c86ded5cfbb0cca6763a7db82e06e9be2ea3cba2be3a7be5fab7e841b5884c0c851fe46fae6430a888f937652df689582ed27e0782d8d96783f2416b1d9b656c64770f59a9da5d265f7b35d3228f80e9ca7c031fa28b04d346b94a71d2cbd9b8beb5cd12e351bada8db149ca8d7543e3cb231c179c4a60be6a42605572ef8c7ea2e9079fc3ba04e91df00e85f60a30ebc282d5360a8882301ee000648ccb937709db5f121587e7eeea557d939e8be782d248308e8ae907b9218c9dbd4a6371e2d05e752fe094cfcd1bd8dd14e753c2213215b24dd3bc44b5b318521a830091d9be2f0751f62a8ba45309626269cccf8b87a7f4d8df48ae0b6f6bdb0e0d227abca583c211f37cf87f8c4827b73db5212e02f8d89e4113018411e53a6d0c7f1a85338ea179f68a263752bc6b78f5878009301624112dca8c5df5aa0e8b8502ec0eba4cd04fff069c60818016fde009b42af93100ac60e1470fdbaed6b105924f27dde6495e1474e3614f276db9cfc4bd9faa32d8892975c6bec83e516bfa7305cca5d6639ca99d1b1223e488b7fac63c7b1541e8801e0d0d032e1e14fa5afebb4c6cf1bf7b8d76d92f53153f5a21c84de1fecffb127f9f9548b046e715e6c34efe93b934e3c5ba4bfc3791614ddf95cd828f788a2167a891062bc0a84518c4e5ed3cec61b25299558cdb03b9ad65a97d653e0a07f0d868dacf114aa312badfc5c967842695cd54d66e2a0378200762d521432c1a8670187e382fbe1c306717852a1bb0a3b7a2a13c891b05d942550983fe64e39da967c02289ca1b1bf3c71d665f681ca36c8270a97d432d3d3e84aaaf85ccbae7a52d106c4ebf780f4ff001eb16d756efd43f543b899d840e4fdc4746bab0d501ddb97b4b953de69ddbe078f3263a97d877b2b141edcf99b2130a937e7a1a80f627ccbad3cee9a7f1df52db49c9761d66e415310dca3dacc7f4403412ccca09cf56ae13215135e8159871d2190f6cf6341bcff1294093f8a93bebc0ce6ea2be3e5694bede5ef8cd829ba9be91597c1c055946d389b877438b336c32d525e9487620754fc913e3a437940c6f54fe42b4cf8b274f45f24d6b60475b4b421303e4eeab5797fe7400b36ff5eacaaed628d476f619a54c2bcc002676850d726afb29f183ed20833ac2776a2e285eeaeccb31f8c4065131933696ab8f1316f2db985c5539a300ff22759a89b0b5359c5f1ed700ac72874f0d80a7df8a482bde43ba0cf99f6eb51c749e9c9d533fa05c558cece71897271063d453062a16634df97d706be76aca848327d6014ba8280aa9d19b56aa8fbd33660e6a1a41116d8d58da13b2e0a38e1d7fc51ba0e6a0c817c54f195d4e2e9180e5bd6dfe5e012033bf4031524e84247a18247a973af5a9d53e14ec0a21b77eb6b846b367efa23d5c940480e4ab4474030873124438f204d30401db2191031b1eca43f19eab54cbfd9689c3f848a28d1553c8dc0cf24a9010135984bfb085b12cca5614f473cef4d176701cee89c924746473b494ca894166fa18cf7072072677bc4dc9cec5de1f2b0f1cb38f258763d4d018b3eb222511252551c76403e7d301f1a602b71b57c48490dfa91aba51d913119e2ecbf68ecf58ae88bdcbad6e5b933876fa5aeaf0141da7c1672222af86264e9cf698931ae8d5f9f486f06b50488653b1ed2e8812e804dbff33e8b9c2020567a3f94b0c15ce61c09b8f7a7298cf2c067c541162bc36e67c00edda81e1aefb884e2e20e421422d9fdcbef1abeac3dba4140367aa27b95ded05651519312a564d689e6f53826a76ffbc05892c4b7138381223d5218d69796a76807d2094ce1b02b8893c7d740538a33d4a14fd94e82bbbfe508ee52e272f639419f34fb2d348bf8e01a3b115ff5d071e5a3969453522d6a8b49592a57ba804f974a0e975624b5b99ba88fc147d2922d6a47c3f0914a086697a69048c6748dffea85e042f11c2c25686af4663ceac2b395bba457112f91881ea36d09358569c902630b619bd1368e93877b1963d25e02a637d2124963f7c3746489b310a1c7b92353e1cc492d5d370c56b0cc73d02cfbf5ae15b79e908c4f4898d31ac0000a192c57052e1f2ea63dfdd34558e1a654100c8a48662ce2044d29742ecaf2c28a96ce331cb0b2929d41b095c1d8d5769df370a8cf6a171248280606cbaf7e216c4995752325996a4fa00d3c599e3aeb072d7b2222abdb0a52bf3ccfe8b65a7fcb40a4dd4289fe6e119aa869ad62fa5404e855f37a278550837d0465db49a70ea9c88749154f405b7150125240b1d5cda6e23b413878c8ba4436978ffe81ee3e552a9266b3654a2e662e545d31898d89bf986fd3b359fa9db5330e5f1eb9cdfaf06a713ef4a6890bc5a50356bab45c486f95aefe9ec106dc1918b15eddc8a87fed534eb9e2f90913b325c6119c4c8fda61d97b0458b35e11c923eff73485b01147a89a1b8c6592ee3bd600d3793d0db8ff5ffcf7bc96177e4f25602ae9bbb21dcfb6f79abccbe3849281be3837a481081f247562467cb0f9137bf0fcd652ca88ac104227c52d731cc032cab5c2c2b2be4a6f6eb748cb93ce3a229436aa1cd9da593ab3fb85bfeb37c8a3b99565a531ab92c1b1a26cce2df78bb0991904b3806610df902a59210e8165652431b13caeaa530353a5bb496bc7d3ca69bd68059d0704d678acc8cf6a0407ba2e25fc609033850011abc17caf4955a8ae2d2b4316690d4957674c0ca6c51d5748419f038006aad6b52971c63592fd7df165001648b021f9a77e0910c04e1b6dd93ebc77a163b6cd73324d7067d578be5d6a5c9e87a5dadec4c561d133b06d4c0a1aec143a14308db513f084e07081971667d388afa9df22dbf256f9c6acc142281e485fd987900b1a1a0455fbc902f5989f2e2c243e97859b0fad2fe8d11f489c09d0e1c8db046403914d8905de5331cd6254da585d8cae1a9e7e1e4777dd42e5122fbc6b481cd541dab0869e6790d43e900d2b439049f970df8358292696f75a8ea8ec3df9ba96e386bc52e56bf9d89116b7cf3f387a988414610064ba6e3f637998103efbd1eee9cfe3c8340c6d9b9785d063daaba99109c02e2a4e4fb83fc0bdabcd703eb71faa02081d495bfd5e915b2693a234a6b2ee8f65b832ab7ad4134ec9382af2a2218b101287a1c57f71f38d9a2565da934c352587859a85ada22d1e556fd96a415d58027f408082431c086329eba775a0abc58f0cb2c448e5726ba1954db757a1f5090b6b4cef11c5e52b1ef8f4dbbfc57e1edbf8655f74882425130ef0fcfcd372244e0411771e1c308eb4b6177c08bef0d35e89e15a0b830740b3ef74c157bf0cadc2a85e77b90e0e2780debb56c3fcb0ebf0489e5a92c2a0daac6208ae80a1d26c2372cc36927e2fd2977b10da9cd1f20a34801a3f951b2990e1f8d32a391787fe1731058baec08264c525788958d2fc5edd60b02c10a0511a03da2d11af9b008a585f98cee2f0351292d81864398b299ff534dcbea5788f84bd8a5ba466680044a144683f86e83db353af9ff072364009a2e0f6067cb2f5521489eedc8aaec783ae3fcd720e8eedc147a8e34cb167413cb056c38e747ea4e71cba5d1a4643282f1b84c664cabc47a7e767908f5c205d5cd9d74165ae353b043273d077aab1ac025b945820586b3c998c64b1b006982b431963942fd4ade8c1caaf525f34dd04bbde5c1f905a7adb51ce174ab8eb4b045fc3239f70a95ccf7523b6fad7e43afa26313462908feb2d6b7db7914fa8b6ac973c379684d133366f3df6f7fcf680ffb1d9abbd0e10b132cbac9d98e80f369cb37a04e2afa4837b987dd5f943c1c4d272db1611d6911b91eecc71265c6ac7db06bd4a4c56826fc13ff3bfb341152f0a9f3d498742ba7beeaf05b8a348101e6defaa7908ada24fa4cb00e325041c4a91f9e7e7db66bd7f48ecf6e251b8dffe1ff579859030f57455bcb10366c0e9f960d2b4aab7eee1abea4324b2d8b679070de92d2e9c903cb1ff15916bbc2da4ab8029128da753ad7fb074cd10fdc5cf566bbbd400f2b787520b0f6ddbf316ddc8096b8a9cbfcd575cc6a8b9ced09d65a2806eaf2fd44b5563dd428248bf189bc532c1af516b0750a8bdffc9d13fa42609d5a49018ba9169e6e78f1a4c987799f29a362c9c855cc9af630fb001b96284bf3ce9175abc0a8efc84408c9aeee625d42618b38ffe6a115c96caa35757900791e370bb82fb97c5d9a19d36824fe6f95785ae2fa6ce95bb28faa9e4446bfcc2edd0feca8057fe640c04bd8bfbdc74a82397640d5880f99044d107e3af28c7290a89045d1d374c33cc7059f3214a1ecc31c854694de0d0d4378b486a1c314a4167b430683e4ff6c147fac071ee40911e383b7456bdc5eb3b27e137b242ca0cf44ef2c6e37ca64f42dd2d4e799aa728d6202e9d799db32b96a4363772b63607dd272e36b1cd471bfb63efa40fd98dc83ede95e27e1c5d9470f0bb53a0d94e5f4da6287c39dc2f34bc6428dac52f8c60f61fe21dad8471c0767ab872b90cc3d7ea3af7034c8a11e93a1977f7783923e291d740a18bdf1da9c72de0edda50d90f1205a442e64170aee040f30dca2bfacf52cca113044eee43de6a2db075c855703185b30d79a6b892805e9831b4c80942ac4dc3c2521d5813c884475c3d61e1c3159eb8b643ab7010c7bddf3300766a1329ccf36b3d00ec345d4cfd7c37ec6a310eeade1af5eb9ea269e764a048c4b44ada4943c2e4b28536a4152e5392b01e305b0d70f7b4214492e764004f88564372572913ce3244586a32a70ff5393eaf130195531aa95f8030860ef71143233ad9752b30451bb7fd39455eb7278fc47f8e17f181f301bb5ce02a9b19189a20c7a66b4eab5d158cdb984d258839859ce00cf53704371aced03ad453fc52d9c4ab200af40f3a6403c56cae5e577261eecbf06898cd9141d985821498ad0ea967396854e602892e0323e7d319b12ee41deed1a99b01fa1c73e5a0bfa483fb5984388b4293f705dc3fa81f30705e14f13e34b07014afe6a16ba52bc524220cbaa75fe2560537973446b8ab589671d89a3bef69b6c26c7fc15f3c08937829302689e2b70b465ffc4ae3d4f214becde232ae412e47be65f798acf3bedf154a96c8025ea0c542187c918ca9b6c2bd67b4662e39c9848b4790fea68ff3285202c6212f8d6b55d4899fcca4caf84c85fef681e58f2e540d12ef5ae4a3d10dfa1c626e62e870978ba420b1b07503e0f05e93188066407525ebaf26a7c6b14c881742e7758b8fe37f3e292363102abf655cd6300d923746dbcde85e2817423ef33ef3205a592678750c543802c9acae32e804da220067a729ed5923be92fd80531489f2eef1252ca61bd80a9cc6e9634e3243d049fc58623c71d4abd3410dfe6158e29654c0b9a6a0d31f0f10acf2f01c4eae0de762e6efcc6858fe2115d3b362f38563f7fe93704fe0a36b4e14b605837f2d6cadb7fa51e4b709cf6f30d1de20430ed67567d58049a302273a36012b020acd0bcd255c6cf92fdb1c855b417269027856791202e591bf01ed8861e66404ea85cce364e4ecaacac0b793263eb02ecc5918b4fe08ac4bf63ccdb7e3641b2adcdd322829b4858146b0df2ff4ee9c27111157000d91136df7833b49d0723b49c881a9eeccb8ba8f69b874a065bb0338ec2cef2427f601e61aea7f44e27c1b594d75ad1974604c7d5aee858f116e2d5cb37685f271e63fc4f60199c2536ff8e0ccdf824cf7d86ed6787687dcddcbf05eabef510ca6a42fcd7d32fa2fef9b752db835beba5ee318d835174acbd61d9a1015aca39487468b582222bb304c4555b307d80b83cab997396dbb9ede9e31cae5918bf4501d6e41c47105d7ccdf3e5428a2c475d461e676042940d6ed1490671c23b8ca869a8081c87c8529c7957e177d452b66d5945900a10b42cb41606f5700d2ab8c099bf66b262c9b93916d89ba82d287baf91217d06ae4b2133f588019e685f3d9a837c066d64a5e709b4f6eb19eb8e2da83e8665050ece1268a8a1c75e8b6e7c7b44b24326f589eb3c646823a6222883f267388cf72a379bf0fb62df42999e11e678fdee1483ef87f7f9637ce5946534d507302bf892fc28f22d808694370a20df0102136c2f5736e278201fa04a6f1ce8d0138a5117b56ea14fda044545fed05e64675d73e3aedf7a5bfb058589df18dba18ec1c2962da33f1c53d51bae7f85d2fe48c130364ad48208f8c68b1b7bca675c7dc6bb2c5c7e78e09334df97d13cf90ebf4dea1e291cb70aea2c6be0e543a6d50714ccf8896719cefa253a13ff8752327e16cd0964d279c0d38285d1841aa88c99e85c0decb3262a052612f91cd5624862230b8cb98e10e32a70177121e0b352cc0003a2c01bcb6bd9563495a74a767df7a27bd390be94887e25e8a549665d2398b754f30e7aa2e385eb57319a9a2e885d773a93ca1c8279f6706661913fa1bf52aff793070f386b747cc8440b2141d9f5af37e16debed3964e4cd8e04d86e34e14878e9052c3d6aa1630cd3bb904a976c6c5afd373f6edcb53b7dce69f7d8f1f9b021eb45e5bb9dd8d2a612d4f4494a8a69a5664450a8dd51d94aaf144124a9211fa971c442d9f82809b1233406e3280c8e0cd424cab1338bf404af93204d9fbbffa59b99696762bd6534db341d722ab0bc01881ec96b429e4ccd56103757301aefd7252c43c8cc9eae857ebec19d8744ad459fbdc92db05ce0a94c28967abb7790a18a05eb275a13ef16746e2bb70ecaf5010da2cc9461411dae9738116262807095cc24935785ea1058e0762f8351f0dc229c2d89041152bdedb1f1bf6993ebec3ca79cd7b97c4876d6881f782e4eef2dc94bc7848e551521d9acc7c5b9a3adbc4fed8adc1eca40421be24bb2a9691579e78c936fe27bef54f6e0345b0ccab31f35225ad6e11792e2b38f6437de4af708d8a473f14c2b160fcb5f14271f960080633a07c7cdf8736cca7adb6116ab3bfee50912002573d4498c3494fd535c8251454263a88a41133ffaa98461327ec038c45e6910347d4f6cf892cc7e9910a22e4321aaf8eb80dd39e34bdfc8ad42786590e203eb341018458add6d74a579c1a7e10032f63e1fe8a44edd51d806830d6998475b92f31f1913837575b32c29526db2b785458cf44a049cfae0746b5831ef679cc8c19b4c7072c995c79fccac0e6684d1fe3eee459d8fe2bbec90b31128e52007bcf4ccccb18abc9ab18914851a939c901632673300169d342bfcbc4ca3ef0d14fad3f9c9712c9000cfb7da2d6b008bbba199637754d4bd6236d41e9378c8fe4260d92eac47ca5534e7a4f93af1b32746ca577dd133032a45f12f2822c840fec556a5fb050665937e8e0ac4829c276b502f31fee8da555c2cc2cd26e41cb7f2f0d5b2126b01d1a008d48e9ecda0a61a76671db44f312536c8973ba1bea4b716d618a0da3dee2298a2bf2312dbca0aaf237d65026b3a029fe5e614c7b664e68821835001381aa4890bda0e8c20d62203b66302be7f62f80c03045e0d3b4f1c815bc96269d2ed1b466c4ab8e89c3febf5cf7fccf98cb5f151387e4adbbce2675a243bcdeccce0b0b9ad98c35a468e7a4a718d541550e586ede0f736a3834bd5b255fc11d31dec3a671d321bd3ed873bb018900781f9bf76279d882eae966cd8e7607071413e82f97b684011161d68250dde208479050ded11746795504b14f4d5e3cc3edc9622a1848091e1e8e3288473d32a701b27c1cd808acd4441bc9b5188a7032d35157d4803dc98a8dda19f2a4f0d27c5d9bc8245c774839b2235f12be037466e57051520cd58c9d36bbc0b07793478cc8c49412088cbc910d0197bfdc7c6dc08d1eaf5402baca01d71db189101506641e87ad891b91d926168a14b4650c8ea5d5761b85afc7c4b55f9bafdf021383742af5fea022fd8a9c3401d318490020529717464af5a7d89a3aedc521ff1d9308ebfce3a010732b497857bc34e842a12f303c2e88c92a3c45491af74187624bb3f418e6ed4ded60e1b777c882f0879318036c4d48615cd84a97fd3f7cab27a44a2d83d15440d3b4f5c206fdb6b816a92423f42dc0471c8fec076885450b4ba4a55069c12397d6e066e2d6e2d3547c22d1db6d4277e91ad2ba6d59b0bb603683fcd98915970ad02727d08f8b9a085ed71030a9bcbb8db02f0eb495523c955f42e0eec49e9e6f109a17e541f3aad4ffff4169bbcc28edc37ebc997a88415f4c6168cd59eec406fe082f1d5e9faba323b6e6dfac12346c3ce85c6c37c81aa90a7b02686e4b30711a8f3fd543d25539c81ec06c685476c0cb5b9c0c538835dee82c34ee331047d32abf6d45e1b0d2258d624b525f2ed571b089abc7657fe89bc23b296fa4fb74fae67eb5f4fa8889a0a9b3ae993cd98fe33634f733bc65b1cadfc7497998651f91ebeafcff4eae8e8f7415789cf2e90bcf783972480a400c7450aca16fa2e562768d7c703a04fd17975f6e0b9637be998c0f7ed1d33b07560d426148d97f47c69e195b821da1d44f0c02751b03311062cfd016490a3c990ba70190f1811794560291e023b225eada945416d3f0778a42a041fc39e84c9d5c9c4a8acf9353b0999d4591ec8998b28bcdfda7d1f202e853fa1a4d3fc2ee218be4a7b0562ca018e0e3d0ad762b513b45de39b84e0c2509918071a2beec6678d25d398a4040d1248c3478edd5e5b245ec761d64ea9750ccdec6e66516ba9f539e45bb2800fa5be02967445d0360503f0946607b532cbadd6a93899cc1292b231355f7fadd875f82b8057921c78c20d57acb0d6a2f47713e5da0cee18a404f9051bcae5ff55c102f4d74eb05eebadc874be50ccd1f891e318eba0d07d11ef163b95d65cdc6cad826834e1ad619d8a1c4a7002eaf608bd5120f4116983a43fee5d4576dac32070b93d5c6763332faf43c2ef931abef754768342c20127110804a51e2cba3efc61d0bc8c3dfce9d89bd4788edd722221691d811787696eeff09396c0d0a8ce2e7acbfbc05cb24364ad85b8bea0737f331f7d5bd72b06abd47acb10cba9b54c19960f52521bcf7225c9d98d9de0059cc28e3819ac66fcfe7654cd18d9a47d84dfb8c84f85ff68e519667e9955f5291bee500418a6a94290f00e5151bc74b78b2f41287d6970a9f8c5fcff931d52abdcd929dd9b35b3ca98a59a161e853b5280e10254e495a79bd4be649417fd449561205046d00c74ac4103705fc7297d35c846b8ba06fe29f6bb598d434d82af74c3a3e3baf898401001009bf39ff9961acc4daeab4f0d39e463055731b61e145694b0b2e3fe512759ed8945a82891ef4ab655adc0c43c57ac7aeb073b7d089ae7c233aa85a42ef4d22b52c11f68ac1f7d49ac9ae0c72682422a25a7bf84ea728164ac8a52edc76285c2aa9e8743083df4b148205dc4194986e9d03ae52a786fec6fbe0ea8c73ed4ed2c7c47cd3729f3edd5bd9a96660c854aecbaa986831feb7934511ae2756b0c5bf7cea60c6096bdc12c080ba09bea3c75ec8f17890430802585f786cb05a913dee0de143029f7a1f0addfa284332be21dbed22a761534816785d57fbcd53828e98a144345f3619923ed2dd18f641a186643ec81421ca3f32e84cd1f4f4061a9b638a320eef509c1f9933bb172472a3c3d3fb538555b8ed85e3f4a6e5c35866c1bf64ebaef98e6116586c1d9623948bd48cc1f929827cded45ad5c1de02689099a1a3d0d600246edc52e3658a37af4c639f1ba214915d41a0bd0fc175f40d7dfe6ff5cf267b24b717aa7ecf962fd4c346e0682a61f0085c84c34ca1ad4c0d3f86bdb44f802629bba454f35ebd1f3e3914778b772219e118b348f73b86e7b72eca2c6bcddad3dffc1edf030f8f612f294f4826db2d95598071a89e81961291973a61c217e68f1e90b5d9205bb93322176fc628166a62c55284c2e488088beecbf94b9330d08f15f90770f32a9dc3e0b785e21734d1e98963d30db3f51ed7cf6d151d02be00ffcfecaac8ec30713a3cbdd1485c01d0cac121aa0cfadded458b9670ff5abaa8f5304010a97fadcbf00dbeb906b9477b7e82fab176d8d769c0b6cd3481d43bca027872b31a3683d30393e10ebb5de691f410c7442d01d888f4e00d40e0f9936400704799301b251ca3ab0a746d89eb5aa7113fcc17f5ef8a933e08fe6f2c003f8adbf11a4c2ab9759e8c3528284b18a292493c1b65b931e776c1ac41276c6ca90b586b91e6dd79f4d5bebe48cb1b4c18311ccfb7a237f49d22771e4ee511cb16a30ce888349a4820d15251c9ecdb7122f601a0a60e65be9069ac57c106143fa976c479faaaf5cc23d1228e52cf3eb34c563313f28ca2b67c0a4c9dc95b9c39945e1e66242005e67bf231b90a19ce5b9b018312e09ccec203c2fac2582922accfdea8e8280b818fd217959c9da1a8feb4adb71524d4bf05b1ebd94808138da0e4732410770a7374a59fb99128f31dbdd37abb7fdbcb704e976eadfa951af8100b1b2577925b31b9c7ac7589f55a5140fad2a868b5fabf886219f308632535b94f8b871f6b5420f3a90d4a3b25334c1a2035b09b12f1ae52c76b1624541344975d74a57f3ae64a851b74ce1c903e54247a2e5ae2ccc591d15505a0438b304a6fe5df44a033cd2117f64d0540ea81d7c7a48e0fd665dccb2a4c5ee66a066f9b8b8eead61f7924b101408e06d7a14edb79eb2a085392f3bc025cc9763cc15d6028cc6338f2e3c6040d66ef897c10f3307f4ca5a8082d434789c80be13e7942911118c144228f7bd6d20f20906d210347009a50d0f8a69f62e02bd9e561e2f4fa8b16cb30781dd748cadf7056c035fc7cd586d54ebb897752d7f63f42d6efd261d56e9476304f158f8dd5e747fae0cc4b540685abbaaf069fe406004f255afa5bd4cde7e0088b1e9cf41e1034a74168e6c38348084fb529bb3f178985b58aac797a0e41ecb112e9e5cf49c5c3780afcc1f587263dc429885243f38efa5d11283a8df02b5604d558f9c90b0330824b9c82dca361c951e16b6acbe452b96bc36dbd138e764a79c0f43699204b14e39aa598d5392b71d5403dfa2c34ba35756ed0fb08ac9631c7ef458b982dace92291df27b5423734da64de158654eddd83809dee01e2e547bdbda2c568d5f4b1939adc54f43e36b86e45a65b45db3f06e4be45700047a2e50866134d290e1f8716281fd774d9b1812a71f38836c7e13ecafee9d4a48c75f6eb2aaf809fdc1d779a13f5896249b9ac3aca805bfeaf19408865e14e5be9b111b5d3dda9b6eebf344139867cf4d37449f2a423e7647e4555034241a3daca39939ca63541bda28515748a4dd38eb283f51bbd10c32fb77d21773cabc8e58a03bbcb6267fdf830dcd129438d0fd272c68c4aec97339274af951a39487a61cbf83528eb52d047d2eb768eae8587e1f4ede58dd07fe313751f26f2f312efb7bdf7325d3ee133f215df60e3e210546aac3b0f2bfeece1244394a4523e002fffc738480f3358fe9715b1ff7c4264842133592077a61dd3c0bf2ff7651bf6727242e9ba542a29ee9c7feb9212d90a08895daf939ba1f7172a2ba838cd3bef320a7d70dc9bb3458315e0e881f13321fcd9e1979c840defe0332d6517fbef7c824d8bca0ebe1616752f92124fbd92820487b570d0485e670c5a9ade68b4402142babe797631ef63878f7cadf2b312de1ff24e14801d5c54abf04848a6929134c462031fe3f31b296b86ea2df4c2e3df73a4c7c7381e26923ec6da3135e7c93b12fd42d509dcd606cf6491d0bedc94adba0f181eae1253d18eb1668ffe04f4736eef93a4ebee4e46b2690b91c703ff2eb520b7659a267c0e4da5344c56f55cabdbb2408d54dfa032dc9be530c607f0f29369280a3247d358d1cd043537902fc591ba1722831313314f74d581e87de61e714774bfdc87606bdff1bc8aa5940eff09c35aeb8e3cedb2a68b394b1a322a3d3173d7e689c3cda54999454a6d714f011f48203849bc90d78d3a39d2ed0bda7e7eeeb208375c98c4d5c7a1f003a8ec377904c34b663ddcd7558d90c93d6f727af7d839a28201c2658c95723f8ca44a3221f82d3ccf203817df63018cc04cc89c59c71a5b24fefbed850791d01d6875ee9f6f48c18b7e7a74c8d36aebc8c346bd9a893b4dd39a0fec255f46867e00b4a2003b4a37d1cd52479cc0d4d79ec61233f53ae3bbc6aa28b44c7f51b0c22e834a3131016b66030369e771dea111e0906611878e1e6136546d60fc69dcd5e6c0b77e965358819618e78350a359d8aa602c69db94b827e8cfcfb63bea24fcbf413657e8b97c2dff40671026383c228e7da0962fd8f7c1d00e35eb77ae7ddc10c60c838bd52bef75e072a5708719c0be9a92813af7b09cd0967e8fb38d099b0cf3eceb517b691756a46a355b591a927aff565f3e8771f55ca13b0bda36ad9b00780e2709273be66b9648e9e5a894a1ea943284f3054651b813a8ca1adff780604e1f2573b181eb67329227a4992afb4cf04dbaf9f970796ab863a93b4373d0b0d98b0ed84a3f8a75001c7ca270e05cd0cd6114a6c7758ee376aea0603ebc19b39c199afea3d1beb902c99f41e1dd6cba7f62f531c664a0550c90c450aa7a307d4c45f09936a0c6c0468054be130bde4470284dfec3eefcd2162380d420ceb8b99af7d588fff67f536fce7d37636f12fb0b45ba7dd3a2f6d81d6a3d679fc335f09284c2548345d3e690d67a2927e30eb088052c8523f5c4f7771a0f06019683094bc2d6a09c047adf45f3f9bf9f77e35b460fd9306e4f08d730b48de8dc8bd43f4d7d4ac82b86c883f09c88b0acdbab6c96878fec59842fecc2636e67a6b9f43ef7dae175df9811c2d69c854af0a74b820e1c0b4a9862dbefa56ffaff3c9718270db2e6ec902f31085a556f7912ca310da4d6261d949ddcd1e6bc4d6828c96a8083874acd1cc35701de2890002f8d0969223fa9dece9db31a557f0a7c256dfb11634afc4a57c73f0923fe20a75715c88b41a21994fb4c19d3a8f644ba1e43a2ef963f8991abbdbad1fcc7daea8570d41dd10ed2d101de92fddd8822165cb72adc0e3d0fe033a4bf4c63ef5849dcd42d2567561f1ecdaa1856ae59cd18c96baf3e854b0696d6a563275ff73a436ff4381af1d73b772610c28c49e690767c85daea20cc8f3a3f1915400ba05aec9ae6d4534d899020226390d774244ded6ab58fd2ad5574f3f76ca88e7ee8e6c8e5ac11b83d0c28e1f98c5a4f57398589073b490a18e328b1873a7aca8e2dd2694e85750656aad4926e2c1202559238ebd7a48aefa371dedeb310fc272d664fd1f52b65782569e165492ff5cb4293f1d6bf119a88d501a4a353a881c6040430505820728825ce90a6294a50f0507f6b7032202b972dc4be04d189ba1adf2820a043c73ac19c72f17da14701814e64ab20c459acf5c9f4c0319742e728ede5b30bc23212fa442625e1fe1cafd08687a4e83c8da1c40bfe34b4c03c0b479803f47499121dbd0d80d1c86fd7944d47e01aa774d2c19edc8e3ad4a52b53ed994ffdfb98bb97bd43d778f0fcae00830e98aad1b089b3143217f21cbd707ee5b4cc0e3dc72ce7dbb8ecd85ce2ccd6588ca6b892ddbd97249a061198eeb182d86c61b21fdb396923b425705ce098a2e0de2f2972c86c6fa88b816c246811301f58ea97620c3ebb1940cbdd3ff350f6743bec2456439eb11fd54011923ab977d3e78a8c94ea03aa2f6104a5e21df54216be27ad7eeddcfa8536430f561eba59ead6dd13b8180da4783d94d33b0a8de5180ca846b7603c0de72dc526db3b756dc9d71889c7415f3fe227488cc69e0d1afc8d00d731dac6a5c52097dbcfd4c380a64411fd7c62b1ec4a142d8ae32f9da7c4b4329442ad471e862a96f62b0f38f52c59130b6e53a1fd70a2bc6c295dc67ba2d57477882c13073f39eec03e6c9103519159ed82b0c85a85fd794b7a931cd6b2fe7a5c77f496908279619af7a0c9e46f011338c39db410a740798b27230186e7ffcca61c5a722c0006c55f853f98fd27a7d3297b32a5a0f581caf96a5acd74b8020d892ca0e3fe4f090fad3133178fc08a6d8f71d2b5e5e8757733bc34a7cc924ae24836aadd1b2c59726d82a4701a16439a6d01bd4028c13c086876eed7a16e9d80c49b393d028fdda27554ba57f5c629bbdc562a2d7f2725c891bf8dba1a2adef37b71e10b1743a86b982bff23cadc698552ca081856494934dbf2886728dda47024d0ac18b9cc0a32e0134afa30a17d23a19b22fc77600c6909ee35aa3fafea9689b3c2f4f8cba4ad944c6f3beb8648ea0d836a3e8f64734e5b10ab4c3eac9f1186747116da9f6e54cc2edc2d0249d34d49ef2cd28c614f881dad3e3872910e6e4d1cd62fa32906045f1446ba209508bb421ac913e38ef1778ccf45a3906e4f8bd7f18871d5d28df220edc57992c141ef55926226988575158d35774e5619bd90bca6175ccf315403fa45e796db6de5083298eafd6347ba64928e43d7d6ca98b4329d13bc97541eee9c85fea07bbf38f02594259b34fcbc367ff05984e88b4f3e7f0a7b14b2bff7de0d76196868a0422fa32dd77b5da30c04c1dde208772aaf00e726f46e0eb526a2f89db5ba0839bb11d5754d0c7fc818457faa0320585dc874522f33e5bb32042b3ff9132b989d1afcfe639b800fa087eb015199cebd2e8bd143ff8901e4c8288463f1aa6cec1db117efbf2d0ab5c4cee47c74ba01c7afdde1124f0ca8d1922e667f9ea28fcff5643abc49cb925505d6715f12fd28596423096e3d49cef810c8890481536a0c0c40bf6c8f3ffec22ac852f715484033366ff5bb3b9c56ea8109b87b0c32114b813f313609e9a14296b9833687e022628e2d0a0e328c068976e8892be7bbbcb2aeec1130a8be1044bd59fadf9e1ce1c79f66d9f6cb80ee727f5d2e6b91c4ec2016e7d279a7b7e72c3fb6d7202fd84ccb42cc7305b90cdf84f2697dbf9075c4a1c80022e09367dff0258a0f8a8eb2f202ac7bfde40c1d7060a0bc241c1887f830212273f2597e20967800fac2ba04a5a2f1c688dd8e01c096f2accb845ad4f0327a5143f09829a522e1c766454e4409f9268ff3d42a14d5f49aac892cd1feabffa0785fb911234a606085452c2528a042d062bc6f0dbe8a041aa4263f8f43ea0cfde571d55b04fb3671479a3b1cef68d9a090f08d50f0031764061e55d633ead4f13cd4b7eca0682669a61af9dc99de09048053c7d782dc280ccf6ca06bc77abe8defe5a7eae973af164164c7a71d5f50485446ccb9a01399bc8acc29343056bf6c9fc8c68af1d3fc6e5e073540cfa4a30a83a118156d89f88055c28a4823a911d25f11a02d761fd04eb7b190555143591a556c3c3d931772e27d15cbaa74c4ecebc3fccb51be5747bddb19928655d94b8d8234eb6ef053b244e9db2267551c79e463dafd913b0d4b548f6c2479ed88f5b6c142c755d90bcc8334eb6e7163b254abd81bde5b906c189090fe3e87e7d4f7a2a88a34fb6f5f7288e41b7d477d2a071241a10f784eedce8ee417f5b85bbb492551f4901c01b6765b7c83e5b8ed70c3e02eba76bd32167e21382c8d6b46071071c36d63f84aff70e9d99295eb3be4b2c45f2138dec4e71fe29b7e0c7696e2b02f208ef70c917ab25ac1e568a9e5384045b2d1f3d05971b6c40241cb5ea8d7bfca266609138937312706467f38df0ee99e03e506fe76343e92b81f3a4b3825a690489e0486f440c6d17c9f83b1cd816913738281c447e5c2d70a97404ea905da50b28888e25a9d2078be7066245d2aa239abd01919cf20130479475853a13a0a4d5a96d1029d91c620cdeb9b251d89e9db6c47afe31da0543489c5a6a55367be7b83213d6ac093b325badc7082e31e34f4c3df5414c860c6bb9e29384d8e30eb843c73380ffa0ac3d34bc95a1e1af3aeda553bfc10674d66a0d90f47f93b1962bd86f7107a60e22cab91040275562c489cee83c9de1df82b6ee67ff2e562bf27778f99b390797713dd992e487fda0a81b2fb0592d3fa5332f99b7e18b50117d80ceb3c3035d99cd083988449ec6f55744393059dfb6009a2e6deb47a83cdc0d8cd317dd194a2414c9ac9ac37e2a160747894083db02140f06f4bad2144c6fbec9ac87b9e575a022bb4a29a0a3fcec079959e862ae5506e2cf701da67f7e7605f478eee269ece70a295f580f510b7ae5f379fe8dd2f4010d6dcf33c9d0a5920d251e3969c91f996a41f2693097e720d12e63a4b1a83a928f13bf41100d775140a99ba835aceb10147e5c67eb1579ff40564895e29360a9feae1063f1869d94e1edec22699ad941b3051e02776ca584e298e54d1da2a6272918e5140da10fe8f2600a6f80857da2ab742db83dc793b6f14beaa2eae48befb2203353a02cc33d739f849f5720584ad79c88ef93466f1a2888f08b4fdab8d2ccd3f8642a4d0119cdfb81e494cf914f9af5d9c0e9937cf29c4083d4d4820a13c3405f2900d439130cb879964663c64da5ded284050a0c8e69655790345f01341d3da2c7cec1ab0d9c77e2be875ea9d45a33ddf208c0b61d8b0ad3e7b754f2d7ee0672025cba866128f8524b5234ba972fea504090e439c32c4d69d77ecee25f01f2527873287d507eb2cf36e226212e074187d2a913404f62636a7788037dc30ccc8757493e7ed4fb1fd9dd02aaaac8a93794305cbfcdcd3bd565120db0151ea9b7bb44b7d3419bafea0c55da2699a30cae2f8612587b302a0eb782fb2cd3a9a827e54a5991d054d91168043f872cca40fd93c60f9fab3e1178b8ce3e45b135bdc3bcb3d657fa9ec7b568384aa20a6de9a3bfb30ed679982b05ff172eae01940c04aa8563b95b2054aaa20e39aa252a7d50c66540ff326581d1ce09c7442151e77ab2689c91efd847d3fde60cc70714693f2058b8d000c0e7190c18407e2d30d4507354fbf6b9ffc952a65db01dfa0849a55432c62e557c21dcdd76cbbdb79449ca0f0bba0b780b74e7444cd2a853dcb5725d75cea2dfb2ab94aab3362afb4011eec76ba54e8530d942c6c406b9fada09957ce00b1a3971ccdd174028222715401cd991a24f346251c8481f568cd469671a34226ea40f94424036830cc8801429098e68424e1b1a435a90461421a20812002500a203312045af0754148d418a9f0d764c48112c63092794dc4e7001520c9be80014a4482ad53c7530d3420c52144b359300860f8ed09162a954f30e09678ca00c2e481f08a0c5143b72ba004a5caa797e0145116490d79fb505d0f6d7a1b7fff52f396b62d31465201922eb0766333bff35c41074aa305550010515c0b0dec46d3a9b506e98b806dce0dd7003cfedfa633fcf794e880a6d9ab3f3bf69e79cd3bac5fbd3617e63cd7c2a24e40221a1efdb0155c159f4692a6a86cbcbbaf43ede94fa91123280cbd22ec108ecf26cc659a51302193d9c0a2e76408a75889334be20454b8bc8a28b2748d1a3a289123f20c56f8b1c98612345b0488b217e48f196aa2062051aa4784b5e9e59d8e00b18909ebeb5e5ac39494d8640450f489b27f9291aa62f8a2924d8df9fce9f2c08f83c2d4487f9250d7fa787bc1f660bdc077579457beffd207ac8ab8320bda8b50ef3e97ff34be23ee96a21ee071186f77e38eb0771e7adf383b85a555bf3e7ac75566b8638636ea0a9d5abb7d659ab57752010270df0b54f63ad0e0bde7c73f841f7d4d359300d052e67ed69acca7e3fe3acf9de0a535771b43af5f71e3d1401e2fcb4101de8974efab93d20c2dfe921c327650bb87f4d830c3f881e32d441885fd25a07fafeb00d2611be186a21c20f82440ac327dddaa2b5653f8890f441cc0f2288595bdfb404f84fc8e2b6f7e22afc6c8d0daa42f545435010cbdecfe5e5bf74da67242f564ffbf294bebcd04c77188a62c9e5954846d606dda0b7d906397dfb02fdfb5797f4c30fdf7a6fbdf726e60bdba2eda9aeb5412925f0dced7c5fff67f2982f3a5b2fef85432f5fa2fce54b77e2959cf695e8e7c0f19ee37078383c1cdeede54b87f28d35395ef24b98639cf54261a06fe9fd2fa4387249f7cbd531ce7a9914aca697ecb4ec4998c0a497bde8e97d9e0a761611ff1c9fc3ed4f7dd91e76bbb99b21999ed24cf449f4e5e997c41b4f0365e17bef6b58c07491defb2fef2b7f8979acfca4bff2a45c278bfe7733fd9cff33a52f390521e0520dcf7d3ffc6e898e30dca7e17f2f864748b4a020a7d1bcc8860fb91337f2966c0fe62c51c8912fc80605d16d64349d727c0e93d3a19abbe812775d1c2fd61289f45f1692e377a0fb85f6a811d92623cef27e026defe7a7461ab8c5c6d70f72d7f7affcdedb9abb8adc65e3bdb7369bc45de392ed7956687b43dbfb4ed806d9207bc4d2aa044af675386dab535f3aedbed515a09b0ab1faea1ececaa1a7b348ff42c45950706965f5c85d39defb6779ebaefbde5b597d39d0cb93b46c7b9fb38dd596f7e268c717be9f818285c09ce53d0f74f710628dfcd4970301799ec4f36a496f3749973cfbab3a6779ffb94af19607deec4bbc967d08c8c3a169aa4bfe749de22ceff5114c7ff52d5fe39d66b48282fa3951347e23ef78dfe8b4faba56af740faa2f9d66e3cbb98301fd916e93e9dd7b4fe24293c79cc1f4b402745b5d963e7c9a3ab78b2a9593f8af915b5079075a02b3d3760069f05434f64eba54ed18eaebf5f4967d6ae7dd1e2d9fc5c2ad9c0422b8a655f9933845771f77d59928183f8d4fada950a542b5ea17eae3c7f541101ca2617caf2ae37bb0bfef27f87404ff94a7bd17e3ef1373a8af96ff4a627dd2b7643a5bf551b93e4b06331d9a2b2aa507a97e459c3f3520f07b920a4822d980ce2a0ea22856ba8f6c102479f6a8c88935b250ecd1a96849cd64a218eb0a503aa333677dff819afe471485915d7fe5c57bc5d24aa643cefa7ea6be686d6606fc3ea5042e599761fd3427ab2f96ffde8bb81147a2fc7d223dc5b90bffca7f336d9d05b3e1e77bf11b3fada24bd5f7e29cb2c1f7d9e004bfddfe1e8f3d7af64ade6d50cac92510b3573ad0adf215b0bbbe0ea75d57fe86155d01ba5574491f6b1dce025f08d53838eb7b1ee8aefa01e338030606676a03583495ecfe9e1eb9ebfe6712e7fcc057f9c0cfa1e65ab50da75cd27d7a1f6fe9aa987e12d58e4c28fbfbeffbbeff72287de2a72ae2aed37f7f42ed40b76ab6aaa8bfbfc1866f741c4f882f4e919644f14e52f8314c1ebec59780bbe616bf0777d5175f86f952d5399fb0b8d8a2284eb9e20ca6ec19654fa219ccb648c75bba5236fd5a976c5a73169db14ebff9ddb7fbead2870d6aab13ffaa4c22194cd9e50aef893431a8aa58baa02e555a84012e67d116df690c936afb31b8eb62d48c11bf27c439013c89a0880285ed53d99f9e78861ca91fb075163d420866a420095c4d6797b8cdc9cd080765d730b7bdea5a58545ff762acc355f77ad5fbdf504cd9f53f8924db966e328cb0edcd59e11430dc7d45a51d2ec32255b8f374b83352231dc98ed844293f43259c4f909351672a320497aafba66ba7601fd5fca2daf22f2a2a2a12aaf762ac529984a05829368adba3ed1f8e30fcb6b7faba437f4b5cb7676bbb54d1a2c9438abb665854f2010e77ee2a4d424736e7ae322cdaee2a4b509c6c9cbb26016ef0099a3c9c1411722831248a6a94994d3279f88cb5f762ac52fd87539ce5e12e9c439832fe650a2f5278c6dc11ee90c0f6e62e283e3b052160ab93ddea2bdcd596ff07a980f04fe9cdeec558a5fab7b7ed2fde701550afefbebfe769d4589ac1e15505ec065f87d306f57f5f86a38d7d5057a07a5fe5816e1beea69090b0b3da950cbbea92675313ae060b3c2376d415d9d423b2a9e763a76c5a8574653ddad4c8ae42f5352ef196bf9d526b3eb588c82eafcd2be2691b65ef60ebd1b5557b6dd7e693b4d9bbab1e6b361460db766ac4cab1eb099cad5a27ab7efd99821030edd1f3c26f4b471db80271facbc7c662319fef7d90d01fc2ead9257df741fcf290ff9c5227c4fb6921f5ad531c71ba2b8bf3e78b88fde5e383a4f4a73f64860482a64122b1effdd46569c893485eb8dbe6d0f940a903bc6ff2c83ce800eefa13e8d93ce8006e21f5e7eed973aca169ec1e4a21208a734e4a7b10ebbb8847e0f2ee2d3a25cd409ff430d027e99e7d73694b7affbbd63efd817ba6a20870255117457727a9402239c97d6e52ee4181ba5377f731822e0d0ba96a5fc4b2cddc56a040b5d60c50779c65a9eccea8adb5d64a006bbd1bf529ee5ea7538753ee979ee779f37a3d9ee7cd39e79df468d21df7bd9f936680eef0f2dc53973dec69e991b3eccfe9cd39ed5b951298e0843de797b8355bd3b50541e5823e11bf0f7f6f5ffcecf79f7e4ace0ca9d0cf9b9932b58677ce097e1e598520ce3ae79c9507b403b8be6e44c1f34bfc4e8833b6e93b757729db3dca76f71a9b3c6cfa029b3e79025eac2ac1d8a631dac405361d7fd8f44befc9180b8af223f3b449d4c0f7b2c1587d958cbc451f8aec68b629a55280369db2e9c736a5255b1a787e498a6dff497bb43d8914f4716201b0c7016c7bc2b6376c6bbe6e0ccbd27feb645f586dd151972af1564dc5065fb0bd11260b24fd6c6df06b026ecc9401abf715466d17b4617b5f3f0477b6e7cd6de91ca927ab798ce2ea6bceb9e32ef1e79412e5684241793997ac74943194dec0f1f2f3552b2c2efae95f4c4bba7c16d6b5130db50d5daae8e354babc9fd2255681bafcf774c9f2beea728656a0daa2b54597b765a5e9b591d2e5e366aac6d55a5b748951babc7b459758459797625d0b35a57426fc0fc33aa9fd8923531f06a094524a71b48004031f98842da862fbcf10b43fc39bc9b2efa0164c6cfff9d99f2bd8fef3049b971cce96f5669dd3ceba721c0693346cbfebcc0e707d6b6b1051144488a2f0d9f36fcc9f3fc4ed79def7f1e055c07b2aa521102baed3e6c0f17263e56243f501aa4d7954977d3ada7dbff4d0c0560bb1ef7beefb9ff7a027c47edd42bc4739cbb1b3bcec6139ae43708edaa69f01231a1052cd70cb077079dae518daf4730cb9cbbfc4327bca39eb14654664c9aea88a4f3877ad5ea8bee99f72f545c9d3d13ee9826cbe91554350551d434fbb4dbf646d5a62d9a63333397620ce9852053a41a97f1a54f27d6013a083b4ef36e5fb52b51411589b324d4c991418b475abdd2784beef3b63ee80894f9add9ff00b55507d957eb4f4fbf437854ea1df4727a54ebfdd5706a5fa3b63eea83f690ea67c39fbe5a64c094b600b134b7992a61f69e298794a7fdf94ef833b15c758050b9972f863be343e96bcb4abaf6afaf1754ea71f4f3fbf544bd58a4aef23cc67fcd27f630d4c7cb194c73c8ea552e9794270575f27bdf26a7afc3aa757393d3e3d4f58de5a5be2aea2dbf8e1eb8c2a3aa5faf8eaba6379155d73b555afcebda216459557d13ca4176b4e666575f7c3832487e5c3e709e261d136a8b6aa15b242364817d9222b84c370e57b48ac57ae13aafccae7a8fc8a8a5ef915bda3a2ef4f0f895f277c8c9f67e5c3d7c1aff298e55934cfb545bbdadbcacdde6c2eb4399b0377602e465be5e080bafabaf7ea55cefdf043bd43fa7bfa78f0e55265cc1d38c7033056a33b6ab59522aa81b11c1744f40516415bb5bec059ed2b032c02b76baa8bdaedbb41b91d959cf45925b4dab2d557f8423518dc767d94145cc212d8de1fd2875f3f0c9f07098f6cd72f85da93d5562569bbabadf0d6d2eebc1fef471614545b5588c7a43da1d20bf28abc22a19b77ab2db23492bc3492f4cadf750e89a4c7d38faf537ad297f063cd137a372f77ca79396f377a3b6fa792d5566ab7cbd1affc64ab1c9cd055b1fa0a751df5ce15515fed23fa848ce877fb88e8eb03c348e809a1efb325eb7d1f1894050a0e31a2d54d141c3285b2907a928a62ca8dd41052bb3b82fb937a3277f0f0680adbfe7c3d5f23a0ad9ada5116acfe84e88e9f11d0173884b6ea7fe0078216b4df3794b24d99fa5e4e299932f5c121f4f5f180b62a6581b24075eac9dcc18354d1ae5f5351d096d02e53351fb7eb546dcad41753b5c943c97c5d23c2b0965a9272e227f0bb2695529827a932e22e96d40d95badd56e08defa5946a824d7b36a51600d741654aa926b8b2b4a054a5dc4cdd5441bbaa683b75abad2adbf54570575f2452f8e2efdc16560b70f9ddf677fb70f37ef8340e86356653a6ead2872baa73eef82b1ffef8ab103f92156c343d8fca9fc6377d69369b65fc2c292bf04cddeee3993fd568664c1a56ce5a0977436d695d0eb5b542045ef9ca575ec833ea71d4e397bea477467d7f3e0c9fc7540a573a5fd23ca52f5b45e012a4d19837052e698cde8c0a03833bda4a0a97caa5743672d848d52a93daa69f2e179433b2eb7f51ea2462427b39798fecfab3fca4ecfa2bb08cf97ad90573e0ce0b70bf00b2db8316642c32fc72dce197a0105254807b565b75ce9400daf56b3962a43a09b1066349e22ff1ebd36af5551ada95f4a2be5192663c49f9fe5c310571fa745312a4a77131833a70b7eb93f44e0f996f0c3cca575667bb7e09343ccb814747ab1176bf9fdafac8495e9dda7d5fa0a4dc0fbfa4430df2843fea49525d82457b554a35c1a45da67253c609a6333027b28c304803419dbb562eec4ef282b9d90f50908e09b32a86a9ca88b3360a0a3e69d411be3767d5378d3794bc3f5e552cb54bed6842b522915542aa09f676f9e56e9ee425e22e1f534d70b8cb2f7733a8ab2dbb573368219788b3aa8f392e450a2fb04883dce9e1a16e9df2fedcfaf74747bcf5c5158ef8778e37930c9fc6458d82824da30c2a21d4111ec7d4ada66e58551a61e33879dca0da9a325dd7c8649d315dd788c9aae5fd59610516eb2f50141d06a9065b1dc0169cfd0081412e100830f6ddbedb0ef104bf41f535deaf4630a595c67bafe6194b30173e0da50ff50e121ac6bf7a6707c90a761f07094f7d128fa829eef4a1a6b6da32d94e9aea286ed6d6d51eabadf0eff3ccda22cd6aabc64ca276a0d9aeaf82cfd5e2dfcf21bd89a47b48d739e2dfbf2bdf43aa9c9ef43cf5f17d2028799fe7a4bd565b7545f50eb4a69dd643960ee4345a5bb1b9adf658e31c879ff43ccf83b5eb6aabe2ee9f748dd556ad7f354ff89a24fe7d1df16f49f790254dfa9cf17bd2a757f4579ee527d943defba5d7b9e3f3acbc3ffd2cbdcec863baaf63fad37d935e796ffa49eadc1c36300326c8ab579e86e13f8d63591a6bf052535856f2fd09a5c0aa586a07e656f48b82f3fd3999b214f8d37d2c215ca6be5c9d39abfe8446e0afb35d3d7dc459f50716be38d6b8ae414deabf123027e64bab2da0daaa33fc49483467d5137e07e2abf479e1fa6e933553442bf395aacd56fd3b4291bb8cfc752f12bb5d6de5aded595312db55c844ab2941c12eaf931b54de24bbbee7941671d6dc2930e86bd256090aed23ca02a8047482b6ea5796123cdaf5451440da94a99f6a82c12fc114440194be2fdc206df2f0af0f26018540164c1e570453a689c9c23562eea85f415a8a0a6a956862a676b15d9f6584cb2fb76bce5d2518dbd55d9fce5df46bcd4f7dddfadad5567d30565f3f33b283227a00850f7464fd16269fd0574bedae116765d7f767ca6881cbd42ea692d5fa0a3fb5abaa9faa1a677026f6066ffe0909a0f40a37a5eefaba4aa090bb9018f2205a7d5d23dee2514a513179a0b0eb5fa0c963c92dc17c81b9daba4ae026c01c0c764ddd76ad7f73eaf60925c1f7c75d2578bb462e90bb2e12656aa78ad59fd4ce5d17c859f56b6a777f5859e0128c95a99b8fbb4a30b765a4d1c68f6c4ac39bbbfcc80a767fee9c1a6034014419b11819a6ce98adfa3fe884d8f54b7047442cb59b32f57f82c623f35309a283fbb3ebdf9faf45d89fa63dc02c7bd66ab2ed15a1d99bddea2bfcfa295c7dddaf56db9b55a51ecfa91127c419535a9b0997841631b8df10b8bc34178c381d1718558166547061b351b1054d75e303b85485354f971b02cae9e0635c80cbafba8f160577713bf0004b07112e59e24c0519a0a9c004332acc7cb1216ab0020182d0c0e5acd5a0014d0186142f80603945625c01e587061beecce2be8881b62d826e78c0c489b61cec686134c141024770397328c43e1d130de4c21913216639f0b0042ea74e0034cf6686edc6cc20420f3be5dc7db86fc683a05be30117311f1a7b8979b31ffc80352532224ee092ca5c6a5e1050c0213e74468bd09917fb220520ed8b2b7e8cd01f51f7c58400ba34216c148822c1042e29d054a2f3808c6a378b14041da1412c3532acb833328640693409a595703f200215a2435408e7e18c82906234c404b44697d070496bde0c8a220ce48a9cd0a215701fd01246aeed0821501b354a824b6af3869000714358d01b85426f14478f280ea8a889682b824273340acd0d51035a3284d01222922ce1006dc9101ca03a2aa5864baa3be96c50968c312e8cd01d9d82025cd25d0aa88b9f2b84623e1e23c58c66592ce13227e2324c2302848516b32233c0a5cf806a35d05d11e5c7480c70e93f281bd1155b2c41c2811c8915e0d28156704998e840d0110fb2c58ca6a02571da14136651d8a444f1a403515c21250a5b13a12119e0d2856a25da1434109a820667004d613b630a1a10f19a2ff15a188b5951449113215c7a11ca3e11056481cd6d6ef4025cba4d25a673c20788891ff8cda1cc70e9b71910b25a1a65e08ea6c0a5e372357446319c358a1561a401118e18c55a908be239d7b994d2752d311dec7ce7537ce73253e205089e2011f3296bccd294e8400c191122705965453fc448b015c562453f14416352042245312b66459ec0659d853329908c4009dd8f112870597f646a5900c1091320242a90c906244597c590a02345b8ac4160cc8ca0b16646135a924af37057c480ae0081d01012b8ac424b8aa0a8d49658b17341a966c36209935a6d4913b8ac35590c4d0a24310b9481d126459223521cd1a2c8c90970598b6cc47465dc80a80082cda8092eabcda339ee0918b32a8c6e50a8c065bd159d8a9ed46aacc8e804255a511327454f8ae08e8cc065c50d99624ab24842cb42c429c902074ab2c0402eca12fa22259264d3b73377d5d8f4ad900a678bb86b12151dd9348644506d0b1a6ba2036a7f367d5bddc6dc55d6ddf671574dc10e5f63acb91af604db40c3bc3de0866f082e27ee1482eb052e29eeb3400df9262c36609180b3aec6a1082a638da77370d6d4ed8c353d7853703977e307ee16a2125410271f532c0c5cd2189151561a6be8ccbb012ee96c89f10437806095608914f7261a21fdec0097f4078910c85914e8080df2cac0250d5a15612c824b8aa3a248c5089714a732031525630aec177a170c29cd36e42c8f0a2d7156cd0b022e698dc957611fc4d12397806a5bfa37084f8c41d5c63104d36d35083e06bf4c9dd0221fe0921651239b0aa0dc9c451f0c5cd29b2e0632e69cd3de692d1533088b36f0e1cf9bc16dc2e405326f065ce820e3c905c30517304a238a219e30011932d8a63d89c8a0e5bcd65aabd7951de047952a95ea5e4f7b9e3522964084634a98027bbd62c6c4dc70564c15d8bfbce1ac1b55e012635a2958bfb6dcba757b2f59679c6549406170a753c6495bac250fef16bd92f56f8b60e9f3b6784b6058ba22a9149648a592480a4dfb567d2ad94ab6cf306bb6d64a9dce1a8b3533b3c20a06f07e7c4e2a3a694e1b7a777e6941f7ef03bd39e79ca4b1daeaee74cef973ce3104a2348a5e48f5e974f2beeb9b6a93c934794c10a47a1cc7c963da591aa7cb4e1e93cebfa3a92492c2d1244e197f51ac40c89bcefffc4eddddabbb4f9b4591cf7c24f000d73d89c8405206194c7880888c25689139650446b08801115600e10912056420416793570f0c8450810e8a4cc0840b9a2027928d59f40821eff3aaf80108dbf32430b355cea2f3a73661022508dbb427132839328adce0e706392661ecf604f0d6218707841a8835c79db57a9e32b55696bb755b6b5da156696d396bd76addab957edee7b9bb5f1626d4abf5c003b88bfe004e68ed1be6f9ba1757e2adfa9ff5ed5b5cc579b81b6a0b7b3397de9953dd11dbea5d5b3dd0fb56a8dd80ebbc02d37790047e9fe795461f4d1487c3c5b066a6ca8dd27903ee86fa37e070e207de3065fc27ee86c963d2d8ca136a675dc1c24db7684befd6a28f7a16b700d3b7efd45a1b84b5b6fed41a845a83506b103c6bbfd2af9ffd82e0cf028b40a911057bc4404bf53b008d25c00a76e6fc405e4d2725bd9f53e67b72c6a73f0b54b96bd6fbf9ee9ac4745b6d06abfe63583a404a75dc981c8cf1040455ec12bfd114ba8b316640c20930694fa2315a20062eed493486124163008df18383a05d15c2621546612ce543030318739105388351158b5de2b738b8f72dbe3318ab30b5334a9b5f547f8cb67fc5592d76597344bb4ad9eea5f5d9ee56c672438c1ed820084235b8e2e6c9609755e80647ecb2d6ea12777fecc4767ff75b925dceda5cb2dd7337e2a288e843675dc8764981828e7c49936ca742b4c80b10ec92daa8d1f63f72ffe20aff7c742fb2dddf814a0f02c309d22e3dc97617f2a1fda52fd9ee45dbdf6d7eb3411076e9b8ed7ea4f2a5e7a2acecaa2c8c21f79f4aec1abbc6b78c35355a1e35d6b47ca56154b151596cd4b38c352895b74bd46314ea4bbc518f52b9ab9ca8a78ff295b10655da2cbb446d963054b0597e5e60b3b0fcc56db1595e65ac61518961af0c0cbc002866c3c9182c30c2c9182c3082a42b3f4bd45eb9b1577e0eed959595c71ed82b36c8c15e793cd6acb850d82a7f1a6b54c25d9636c66028b1f117461bbf69acc1b61879fa71ac3995b66997a86d32996cec52c73699fe7a51c6363d56b24daf324181b24dcffaa205dbe44509b6e94b638d69ced7488ea55d2a7571b44b5d14d9a5278d35259715c46a4477016097a84d8a6293485c84b1495c906093fe8e35248a4678519b00fbfebd8fd1d8f7a70cf6bd2af0bb11b1450c3e3fb23d8f68db8fb26db5b35d83b6080105884f036060718bf920091574a1c483e2f68591334866882b805c8468ecf2673e18cc1cc15da08181effbbe4fd4c0d0a701117840446ced8713155ecc3470832c886e60c6b827d10d6e008538e74b4f3badb5d6de697d70f72f2e510da05c95ca426056c4125a6ce00452c41822c13d45819da43510c276ed3c723205131a903921830cef09fb2ab80b2c598d534f70c9da946af1858e12aca05aa060856ddf6b18a1e36fc4d0e0881b110d80b00409a30f18e9587a8247b00a10074c3ad061150c31ea762728842845d199888410cda08d586c805454b24109a30089b6a30d5c92ad0719008342db1032f0cdee9320649e0c3cd0814f36c0012b83cef63d1181105507433a58829f20c1011976907be2040764c841ed496d2683192a1c00111d31912a529930410e8e8ca8e1714fa223222450814b7b121dc5a410b9796be2ae0cb99cb7e62e31094362941123040ef7241203675f10e346248606ec9e44626060973fe3b90017a0f4d3738cb7ec3fabbec4b73fe305a0975ea794b610d9c7a2584bb865041f982f142562babeffe108cf584c51f1c3f73079a4109b3c4a44589a57ca342bd416acb6ec7b59051a320e25b00053fbb654a107eaa3c2acee4df95ebcfe326125d3eb5bcbc5fe9eec8f8aef4f356afce954e3e430705b0be6eb6beb6b62ba48bf82e2417d2fc6fef353ab6afbc4efe3e8eeb6d194c7d2873909d38b9e94f0bd2fe90d26282846679717554b4c1e1f269b3e671caf738e77c92bf025af4015cbb7a044eda20aa205d1424d779ea63affa171b7f1df97a074188ca0769b97c59fa3e7a44bf619dff4e2c4d1209af298a9bf9bc6f1659834fdcc5d893e82e183e197b40e387e7c9f1c6ffa50af440dabf1a7ffde06774dd5f790dfd3d417feffefa9cc5dab1f4ac45fab7bfa9cf14f7fafce31bd6a07c78f5f0cf565faafa431a0229992a4d50dff90c05abe285495e01de853fd104cba7c6f63fbcff7a7efe569fc45eff490f893a8f12285e2accf7f1ca8be00f09fce71acf75acce72f9d954f0f805ce349c8fa47c8aa8771f998d5ff8dcff9e59f84c993cc7992afab2fc77daffb444d71f476136b0955042e69118c3a79b31702eae329d8df4f2a80d24de0a31b3165be50fbcf94f96a9c4e2fc3648d9f63cd5d9ed67ffae6beb8525a7dd5f82ff59f8da46136f42a7c1b29bd0a6dd8d03b48c250e7e08c04965ff44a4e863989d3dfd3bbe057613d6b4b86c993a6b7dafa5ea437ca02cd8d2f8c9bdec22fe96d5cc1f0e378a257a21efe9cd363fda7f7744e0dd5d7f0b637ce40b7e39cf54171d6f7ad227e7453e67b1b26c0be4baaf37dc2af5303967a1a7722a96c237bcd67a176d90ab6223dfe1e7245ca191feb1d24a4dfc19163caf126bb6b649efa35fe947990909ec7fe09fff839f847fca1cef937e99dfaff222d8d19bf29ff8dfdd3e7d83fa59ea473ead7d0ab4be375abf2eafe2455aff3ea6a9c4966ede3f3f23eabf7b1f1a9f7b9f13e2eefa3b2f19f5720367d8ed3e3c82bf027897126d9f2620d95cb8d948dd54b4bf6f141bdcfcafbe037bd0fcbfba8bccfe9c7efafa6416376a0eab4dafa5e257badb6be67c96e13fa1e95bf49b2e449fa4f6d7d31681a67b184b0a77006ccc77e7d951b3da0e72f445266f930abbc98f3711cded220e60f347c7b63031b4f164d5181cb99f3f1de670826653364e9876072149fc645bdd343ae3c8d8b5e06027f6fff01eec22187fa727921fb2a5b52d9b6259da5bea43f2dab1cbe4b26bd8d5c7a55163f954d5f238fa79fe30acc9374c993b49127a9ca934ce549d6c89344e549b6e4498a34f6eda76fa0c149f1661b9248324c86fa00deb26fc304d8ee1dec067fcc3ea822b0aab66c04a68cfd9b7b7056cb3e294f2a8072fa60c89393a650ce2088b68e11c061cac8307d5a82114c9f264122fd9865980cbf947d86cc90e1cb30497a3bd6acc0d17b3aeaf0fd0edf7b5ffaf0d32b50c3bc56bdfabee57bc895b77af5d5cf09bfee2069d13be2937ea7f4e1f75831cc2d4fcaa867c9f555b20e3387c903ac2f3f0387c9c3c6b6d686dff239e1b7d40fffd339a447e91d7fd224c530cf954c497105ab3fb7e34cd2c707bf8fe97d4a1fbecfe97dc6f7119ff434be922749ca39d4967d31d331d399e907e7498e7992241c4229b0c7120aeb3b4b8fe76315e214a2c29e4458c4886cb33d896cb15dc59e445824d9ef2ecf6d6c7b3f998431b43dcd836f0aa876d9432c16db3c04f3451ca599636c1dc14718818e304353c9b36fce5ac3c08c30d0adc29ca81856cd08314f0209230cbe51a71c4fb06b950df4ea867f757be189216628d0b68ff7a177767cfc0d10176690e1851af269be003e841536b200ffe37bc820df43ea7c0f49c3f790357c0f69c3f790363d766c1ef63d7a7c0fbdd3030131c07080fd2de8554e0b6f803780de31c0b7f03d244e0f9980ef2115f03de402de867cbbf81ab22a0a05e419161309c8343a790517e464580c359c7c430da0591112c081097c9361b9871fe8b64da63213d470cec247cef24ff98016a9d567ee2a51ba1c18c0a58bce45e7b273d7a446e84f14513240240bd99e444f76ac3d899ed8368cacbe1440034c6c1503da2e3baf2207538511955d2ae5d04266a03bc7e778197ce7787147def13aaf64d0385e7fcf8e39abc6838939ebf3db78efabd51e13131303137b18998f5ffd9d2f9b5fe9d27ed63036c3c8607c6c8cf6916d72ce303118194c8cb473976589398bbae8b2cbce5926c870e371681c0f24ef4c253768322381fc4d5e5518ec6d5ee7e67d681e1f7ff337cf6323b2c8dce52a56a5e115f02e31cf128bc92c323170cc972c3118587c9ec6ef380348c68ed12c32673d8de722a91ee0fc9367ce6a7500d72ff30f5a7df97879814161f3a8bbc208c1d476315fdefdff2ddf82d2893819e74b98188e5ee504799cef21fdc52fb7cc3e19d32723f3c998be2f579c39e604791cbdf3e3836894aeb65a663f3205aa2d9cfff1b3b69ed66a6b923f1e1c6b60416a36efe34b5aa3b611679238da56c3dbf0399f00cf799bd749c0fbf839c216f034fe23d7d70f9cb72fe2e4557d9d9fe48f1ce475705e4707d13c3ae2ac2af54d3046dc55e659add4c1ed0f03546182fc616092f8c30cf9ab460d86c8ecab79e69f8be0641e1f8ff33f328fce07799bfff135f8781c9d8c24c7c7e3e82099c7e67fe89658109ccff9f1385f1f07e783e81d1f8fa35b766cfe879e55972ad8fbc8374f43e6b9791faf80cc8324e7e67d3c0fec6dde4557ef75d18d366c9e06d8db681a6ede879eb5b5abaf952e555997b86a965107c8d39145566d2eef36e1bdbc9241c72a091fda079715c4c8bfb900fc7bb68eefd937f2047ab67e91e2c873cf11869ead9fc64596188b8fbf5ca4b0c42a8bcc45179e00b76480cbbffdcd5d391e48b6f939d2e0e5a630d242378e3a367a9503a405a332804820df438e3bb2f8d9b644c71a980fec6fde4da88f71ceca51759e7b479e1b269730423045db7f01d907e77d74fec7e7c87e647f2e6184d8fe2fd986bc82d5f02b9c49d6a07790e400799b0ff294b4f9950e256d9e92367a0709ce247d14f0343c90c73958de419203fb1bbdb3b38047b282d93cce246d340f121e1bbe061f6ff3b067c0ebc8abffb95f5ecc7e64af3ee7d299d842569f6badb5da9898afb5d6fab5563226ebb0b3634a9e9bcd3ad41dc3c49ee30cbec45e3d8dd7fc35e7ac172260fbab17b27a3fb285ac3e899ba7f19c573f571a1fe1dc555da478cb71f8e8c8aeb9bae8606649680cc8403e32d5e93ec803f914a62ca0066de3432b40f320c9817d029ee7e6739e06cd03fb047ce9331bcd63f33e7e92feb0ec30b2faf24f614a10ed2af8e4f49009a8e1c7c33e07e76f70f4aa5a9df3634747efac603adf43e6e0fccdf304813d1094843d0f8e76dc0fbdaa7a078aab2dff1fb9da6a790dc8976ec3f992e274b47f8e765d6ddde81ad33d4f105d675fd618ec7134105dcb3a83691e9bffa157f5613fc99b9b87691e24393f1ef63c2bfb40be87bcb9c1791ccdf343afac5eddfc78209ff3e381e81d2431bf03e47fe895fd04fc2463740ecefff81f7ae7c7e3e895d5301a5e01b01bd8dfbc0eec6f340f929c207ff33cab0ac3799d9b873d4cf30481bd4e90cf817d9020b0cff91c98cee7dc6818500d364fe3d5458a02328c0c66b65d762e3a4ff773ac214dd1c93039194636a5c0624c9376cef277d1ed5c6cae42b9d64223bc56235b0b901699f7b9de2a947a542b0e48a61d9842c48c9c638e8fb7791a47e9449b0c23dba9300c4a5751bbda12ab2db2df9374f141dad45caeeeaa0e0d8c7709137bcd25484e10450a9e98224919a43f8c6cbe7a8a08c10629a802e888082ac801854d1f489ea488f2791b5b01d6b3285e7a1b7935838daf6fe36dfcb7baf1deaf64f8defbef9380e1f852b4edf4507a390b14d9d5023f1698ed4a81d8ae626caf56ab9a4b2fb7572fabb7b9d65614fcbd60638fb9617e8e3fc71a4dc798117ed697cd5b21313fb75744c7474e1106e623453ae230393265bf7c1651f839d6cc9c70239774df2851ba1b90b479dc16c097281d69575b98480d9ee51773cedaa7e6653058950780ca93a0f228a8fc092aa58fad7ce9a2bbf9c896940eaf64a02ff332ba9479fa3dbb44e972bb24c1c4844ca0a027a2a4c0a7c7b229e32e2fa6ccc0254bac9af0a22d619a091a0be12430c0c4268f00c004c11c81a1c134317998f03b66bebc7bac41822ef11651d0a56a8b35fe045dfe167fce97f893be566ce3096f7382de41e7c7dffccdf7e871c2e7bccef7f86923ba905728fccdbbf03df20a05bd830adf636e9bbc3a412701e471dee6576cf50533a36d9beed8a175729097c96f42fe33a60ccbfbcf124f96200f24dbbc4e7e5d6df9cbe47103d17fb3c98ffb9c0c9730b7ed285d9e6d7fef092e6162db45072373d70e32cfc3dd26c01071178ff78799b96b00ef37f75ac9d5d6a8f3e38300f939e6f4f8207a2747c3c880e89d55cecd0379207a0747c3c4f40ab6cab1e4cd5bf246eff840daac5ea05bc6814260233d041ff8217b48173080596c6e9ef432595cc9f94ace267ba409b90277cb6831e62c133201de265b02989059789b5c318f2cfa0c208b3216dc652a9db6c423aff003c8af3721bbde263bb992ab2f98d84a6e25b7fd459915b2f8ca62a6db95552ffe3077f8c34c9898189b3232796e9bb7a48ddef181bcd1244c7396bf8d8d5ee1a129e36f63a357326fe3824d8e91e202f0a7e30bbe65748c0e350546c9c0c864340ccb0bdcf24fe37868f290797f7cc45d3bde1fd370127fddbc3f26e22e14de1fcfdc35f3fe5836799cf09efa3247eb4b554b0b0b005f5ecf46c297ce821785eef03fbd00f2937637d91b7215f41c757cfccdcf31c785bfd13bab17e836e16f7ee78ee046dee8550a327ff33b332108c246debc0b28646f264f67e978f126efd01fac302a227d08712492991767f20e5a4d27686f3665eccfe4167c6afb265b2cc0f82177642f89b3ec9b903d2167d997c9de9229635f472ebd9f6dbd293c23de8a4259f088983bec5bb1ed074097b704ef8b6dbfa54b55eac8b6cff26c486cfb00f06cdb3d0f6cfb247851b6bfcb08dad381a5afd9e623eddbe45f3d1d6d5e3eeb39bef01f9385e4a79ba6c2e4789dbd9c7bf6e732c7bb9057392ebccdaf6cf48e01983889913b2ebc0f5a08202091d477e15df897237089429007a4bd1c69e01206c6c75d387429012fb75f7412b227611f8391ddc8738b303ecef255fdbcaa1aa5731609080c63354c0ca5dbfeac2bf0f7254c4ce7c7f7781f757cbccdfb98e3c2dbe89d6945083a5004d285b97bf46c552e452072d420ed3014db658f46a9da254ae72dd9a58bee9e483b5c04c6098f885dbae876f048b9d4119276a85dc2c474ec1226e642ee912739471f565b9925e22c98989f3ab04b98d9765bc45930313b5bc18f6c816aab0044bc4046fad0b6479ea437844bfbb36d90a5a181a915b2b551ca0bd916d5963f0cd9da6acbbf8417c09027f9420e5357db35d9de2c6e92242d3025b3cded6c754be4b63f4db6bbdaf23740f6725001b227ab2dff16b2b7b2020f0c4c1f85dcc382d7c00371c6dce995767ba4595b36af6e6dd9595299cef2f4ea854954c66da553c5af3fc9958ef390de7f92250f7efdfbab6528c04a8616b6f72d0809dfbbffe5722583f7f7bdbfba024e54c6ad85fde54944c6d116bd9c430bd8a5980d3111228a9332aed0990194839815bb3db9d893c8c90744b7ef0ebebbfd3cf02aa18556f264bc0ec6224c670c41b1e0bb408920874b8a83d163cdd5f70c5cde9df18f35aa0de052e5dd1c31383e0d5cbe0e960a37c69a991ce0720625a4b2450650466e7040f4e2c750018315746303b8a42b1857804b8a5b1160acb97a85156c8c359ea699b51e634d0c9f0670398b5239cea201a142a8744cf3a751ce42a5484400000000e314002030140c88c462c158288b7355521f14000b859c4e764899cac324c85114440c31c41800080000000300644aaa6c02188e4181961cd6c6edaafa28b4bbe28b41ed979d7d036bf25f95f10e916ee22f4a890f0ab90c7bdf099538f136616b575fb223641cc861ec8375c4e4fa8f7dd5edef94e40908430cfed6b2aef4e43ef44538ca396fc020e07c80769e01c0a621bdbb9b7864e74aa16962a740eb167f5fa23ae9e6941921adfb43a4d6b83b8e92510e08a4a70b8bfe781df07c8a55483c5c1bd456c6850cf3a09b78ee41933f9acd2e0db3dc5fdce3855abbb5fd339aa34a3cccb7f5851bd4fb182309a6ec8c747922d804bd9f1c41495c6d04e1276fc7c6da864f0d62413b4c230b7a72996ab1f83d04c27224a910174a1ca7932fac12eab4083cad6c49cf53f2ad6fd69233f8490e9d6f055f1101728bdd9aad027415954b2823019aedd23224723a806049d41a928122a1202e6c63f808919f03c1cf8d690a01a5276c8bda41716bdc166770fa20689b5fa4a2d8f7b30fb0f2c6a8ea628eb3875b188f1473fec750abfafd0523453616ec98782668ba65cd58a7fc2326165e730cdaf0155498493e6ce80835d4c12b8bc4127b67e043dc78a2975f4d1c9496256d9b64305795ce97c9c42842da5fedd266a741070a8ac582931116e07520a510fa99a91e1abffdae5323ed7022e424ada990d4d5a07b32957f2078f0f1becc09de1810a945918a0c534ae67ac5bd483e8c269ff0341924c79b42a2f87d105227c0bd384237ad1733ed7deb4b1cbcad89bde28c0926268b3df270d91224237a181af2d35df207160844e31f7bba2e894da6d3de01b08bf3ee9112744a71dbd4a2019addb30d6daeeebff5f2d2816b0d89a42380363679ace656bada6b32094c12dad09c40cbf2bbea0577bec0616449037ecbb22c2c555ce87b5a42542570f73b0100683b4416d85e5fab28c5ec6a53eec9650e315475137ac1e3f7934a41c7f9079b4a4b010ad9163feb453a3d95f2ba06f9b0f416e413ce414e8a66317be3f4be59433338af5f83f7ae506007f3bd845643a506f400369b9172fa5e48b0bf2e0cd98d68501031a1b7514b00d0b1130b5a165a32a52909ba69cbeb83606fdb51c0b73b9e967541cb1219a9eb59a26f15100bdb6dea6173aaff8c39948741385b4a17788ab3a1c6b29b7473e2b1233cc430bf79ce743283011e081eae0c5a203de2eac5964cb81e282d9d7105f73f3710e89e403353134e9b4c9bc7f1092746a19ce74a23af770fe66781baec70a24fbce088576e8b72dc0467371773159b9aeba9354b53f1c4f79964fd54ea70aadf8b1f17a8bfc81e03f2667870824d0a7a69d15467f875dccc4a2a9d4111ba83795d0cdad5f04ae154ae9d55d156ef049d2174eb525103bed465e5f7ba4d21b8ad1e077d7f9fd45c15575ace49246339ec66e97e171e41029bbe0918d4581d918c58b5549d0aae6b587bf59ad610c6ed0797b04bc00964c6ab8c678cba2b7e0b51404b144b7026f2d8094abe4cbaaed65fe1331b6f8259d18e825ba5fd81c270be5fc6a963239cb6dc3402eef8a0e492411fc65fe9a86d4ee65d694be1a955cda78b9c2d923f826da16bed96f32af6127ec0425a79c774b3ece60e4b801c527ae0cdcd86f4e50a85ccae85b6bf10c2c523ac0cc8c99501a6148cd493667bc56bc3ff1c80f90f420cf57bf933376071a04fad34b9682741044ed24d29033c713729cb211777290ab79e20643ad34e4bbfc02a8d1378f62ead329610dbda4b47160872f02743ac97b4cdfd921c1be6ed71aaab8a09c0eb6602e3b51ece1986b8b274f72b601e86550639b14166257f672a081e5488add638d46f440a5d34ae418c8d27c06d4241daae68ee0c05d17566413a4c68e37073bc1a14c462b3a6b6e5dbdeb0910f3b5da0226bd7ad54b7d2430b10b346ab16caa8feecea3f2c788d04a819b2a0b010020bac9e56408f04aa897fc06b9dffc43e7096b636733c21954f2dc8b13cd26c85054c58a061485de344ec11b84b7c95589994a006a23dc9d62fc7f78bad175286f4190f905de7006a50db063ce11c20d3c957ec177dc0375140e61c80a23d30c93900e2713856bcb074a1f0df9e1211f8497289d57f2913374cdb2d7bd94ccd655e0e5192efba1efe6d276c593184fb6b46297493a322d86bf56143667088070fbc45e0ab780394aa9b9b76c0e2524374737b5a7b5a09ae4b14239b4e9209bab90f7416216668076cb7413a840fedff8aa17272baf8ab4c132224fe20320723d715e6e8132de0cf01287e0407a8916db1a2292d30ff07b4d8e007038ce5d4aa68d6d485c83e2ca5d234708dd78c5da5c504cb042d8952479a992c3ce0dccf7c18991b170c604a3c915faced98b3516df2931c51ec8ad540cf05de6e3e3d106bf95b4e5ad794dd0aba40cf528eb8310d3b105f0f0433da8342b92fa7f3dc91ac9c026182219929bee985b51c8375452cc5032a7d1a4bed03b9b4a06dc207e71178f21c47282644246933a8c022a61ba8a5a2014ef1a80eb12d4e0981c8a72e2182d8edbbc24c288c016e902e9ed7cb2c5beb847d934c44042c37fe08468b00e940e122d53a6220a3d83d75784f82a003ec1a53a6301dc95c0ca0cdbd90a4ae5a4b6f675d3c63c4bda5e49bfd3fde28d54c255ce201b35f67cf2a4f12048c9a88058579d4856d9e711e0190e5609b1ded71c520ad28fa2580ff78818a1ba0f91c8be53d6e57bb4f223058f00d28e671b4e7eee800e21d1ca52921da8821f2f9f418be00bff428e499d3c1f6612001bcff5d8e74349524ee00e716e1735bcccfefeb0bf80cd985c0d1f53950883f4444128f16b0ac2baf0119e7010469f2435815bc2e02181ffccaaf17d2a772199117faffb6e5c966ff05c204b7ed5d08abf06e6a413a6792888258e4325f617822a755039930560da0c986c91aa4e07326818a27afc4419902b2d994bca0f75be83f103df76e22e3cf7171cdd34ef95a275a9dae136565e69952c085ea4231f51cfb394ea1832757d70b02d0120f076ab32fa094a321ae143194ce0645ea8aa7c6af4ac9d7016b1690b7b6a7c449a5297df4f935b8778b5fdbfb6ff20001cb4648f2f693a81f674e4f3a4b9205a842663518c17c0e194bd0475da9f51f332bea9473a0ae5fc4481bfd32c8aa3cc452eff38b4d382d29b13e4b5cfd0225b6072187ef6fe8d7d48e0273208b54af72812d87115c64c2e383db4e60273f58d0fe32ab24248e0b536a88bc48eabe8618dc70b2e664e1b272a6598580e013cff86a07c84f264133a538507527fa3e6ee4ec2104812a3051631540954598e0a3aa0b85a702cce423b07df56e62040b931544cba38dc724f11184d034bd8849fa959f6280842257ff874f99ebc9a8cb3db4ed4c0772cc3fcf4dd666fc25a4466cda78de2955fb577f1ca84e19f98e7ee1e0b18361d28e4744d9857e4195f7f2f33e18f68726eaef9edfebae327a555d9ce9576b0a7b41aa1d157995deabcb0b95e8db92c6f6a101aed2f55499259878472a4a2280951c0f50554379d8455ad8c845f32dba842f0ec93a521c9b44e9fa622abc1075de4831ba9b91d83d2a7c8c49952fb59f4a1bb59079b4d0bd43e76efab9877ca3d76dec69ac7ecf93ec558d0eb03e069c6782c293c79a03760cf45260a38525fe28b37f27ff9e183312c16165bce7e8833d937bae1f99796be7c2ca8f0c0eb55375bab909bde7ee50497f6e963ed4439dc0d2a2560e0b7f2842a98d1f282836df8ffbedd8af7c77493eb7e3d71cf1065b8b3f1fbc1c35f9b42ba1ad678a48c9d8a84d593ab47f3a55a1d6a0b768ffb2c4396c192ab4e59122cce6cc579d049038f9f08d823a5c850060a576007b2a39aee91eee1bdda5be1b57efaa31455cb8a3c6e629711a6b1af8e1089f6e571572e1df7a815176f9c08a5d9cdf284ac775a8c7ed6538821fef5e42cc21f727644fc3fbbf4c39a8d9938a26ed0f826835da3813e1795d4758995a7a5a5ed8c28dcbfef1bd5e830c99fdac2ee38b607ce204352d2ad3948197fca339fcc69a8177fa0e26e8aa0f1f614cc6091f417cfa82b5fb7a2fe6f4c38f0410ddd127046be3b2985e830270114d5f1066ca91d3ce97ddca5ca9b20d72a851e11b8b948e058c0b76842a6e30d994bc1da4f75bece0530dfaddea22c13ffdf84f41e695c9f02964c51fff72936bcffcef95b05010203b77aef054dd6d1129b921c2ab27eef81218b3e720588794ce3ebab374db894299545447be7ef1d6adb47ff0644a87058afde18c584e0268f7a2050442ade83be73c8a3e39c6e33dd6004971dc5da1fd4e61b8ed9e31053511b5949190c11ee267d8bd81e77d1453dc9ad2d08f7071a677120821e81c51706d423451b4946d64dc9393ab88122493919dad2543ba43a85d7c28e3d6a99f166c72ec57fd55823c2689227dfc6cc43fca65a6592df5bc93a9075cd222ac6c33647ffa31bc8073642fe19c62e336c3fa95f8cc1b9d0a311a77d2d01841b0da893d86d0f133600f5d37cd39da379dbe4d24407220a4b60e0204fe34de4638507295476c8ceb1b8dfb2a57ba6e177734b8952ebaee2e2e44bfde556c8b8ad6678307fddcab8ef8e96a4fee7057eed21accc5ea77defd4ece0c439bc0ec79b3cf95901fba89ff9e168875a110ebe2f0b9caad1f1bccecca31efd4c58d8e5fed4a97db2fd96c958beebbfb0bd14e0ea6d8f6f9bf7dddadc17cfa121e17c7dfdbbf8c5b76021b4ca2143cccdd1b65865cb09642eadd0fbbac0050e15d40ffe07bdbab04fefd00cc72c27ef9a348fb9e94c2644f77eb69e8e7c9f6b6c4b355ae74dd2eeee86cb25ecf453248812e685a3ca42194b37a3ab73840ade36818eab83933a1775bf14aefedf6e69bad6109dc30dcdce4db8d68e82fc71edb771c6998eae686c6b5c29d0ec68d41e75e61b31ed63f6cce6e3c3793338e8a0e51ddf8856b15a680b469e8e75d47924c5f89d3f79c151c0997efa7ed4cdd5d68deb78ac4b1542c190b8fe433b7f6dc1ef06873cee5b5a7a1cd1a8131a813052c6cf24960f10987fe2579ac4377fe508ec6ffd2fce52bf525487b7e14e9beb6640abbc83ab0e8f0801a604246abb544ccd909d599d42860662c6056669c3ae85b80ff9b294116cf563a73f8193fa3b3162d9353e314c0cfaffb586ab523a2532ba85c379d645d471198d1a1a1a1a9b3ee453051ac44231ba9a4e90720ad92e912fa778466f84b7ea5f00560675c9bfb673973be2aed46f5bd7205debf55627dc33b2cbfff2fb1dfb0ee995a109526ef0fe0d140d7983997dd80e98aa43f082953e4ec415165f61d007730144931afd2a58de5f2f15f41c5e969c71d1a1ff4c88fdb53626d20be8a8bce8491c29b78740ee8099a71567745a7315122425316b4e30dff68dc0397ed606d9e016d1fc92b39558691869c4ceadf07ba6ef048fcd9697c02a42837a298918dcf8a7aa4f61e9901929e95fc6a3c4e17f96c4fb78dcf87f2f79d8d97471caa951e8d537e71c5aafae28dfc4d799a848c3c0200ac396a484b3c96c0142152b6d671d85100a61861228034884094ae30b21649b81b16edb6905887a8f2ed7ef4069ce3d224a1720f72a76aa58f4c69609a830b6828229e14ea7264132f296d8e95141375f4131a17794ea8a6e450a9c3c22fd1ebf47a4bd64370ebf131350f88615ca1b566a2af850d7cc6498d65bc29e8510c8284caed42a1894a1a3af3b81da4c8542b99e2ee3fd9c2d385739c920c014ad6eb80702c1aa5d37df538c162163af716a287c51845c6cd1d96232a32c1784039268468481ee3f9ac88d85d1cf7c70bf51c18cd5f69839311f387522808cc5ceeda3e1dba8e4a679fd96c5c11b030f3be41111b90fcc5088c083a24eda90f23a8be66f1a077a989876ebffaf4cad4c423c311edd9ba6c8f8794ae5a4c6ae5dd72e28c1f780d80ed4330e6ae1b05ed0fc74941a240d389dbc2c2dbcd1f213787de5e907cb2dac792d10e963d4a9d9724b541c4d1e9bb18fdcb435c19a63ea2f141a346bf95808b6e72e6b6ffd65b26edb67532676440b8ddd27dc75c403ef4fee00ccfe1c04cc521668386c1e8bda6a4ff5650f73073654aadf151a3e665b55523e523acc607d643baf145564e83f911b9a24f06a8fb311aa08f48b596290c493f1ca9f21f3bdccd57d43cf34d380c0018c9d221c1e8757dbfb0864cb5655c718547403f23374fd5a56e7bea81b41610be72064e767a88f102b2461267b23bf2e47365977570f88b41c465481787ae588f5c745de2bb7c2f432ed04a6519bd92c3dd0068500602b4da0eb2c180110580523d1a8e0bd663a3f2f766f2b2598d49487d13187e64613716b6b3fd0a4464a009dcb39e16df2d2423fb7154f20bbee75c453b004b9d5e879a033624770b10b0190e9fbe137fe2bd98cad37b01e3f9a042614d59e24899219e448ca42dd4cb700e866d244fad71747d416aba1e85c017d8f33c132c45e18417c289f0c2d572699842d885b6c0918616c03f992180ff25c729891bddb74942b09ce98b90e77ef91ad48270c84a5a928e8c86fcc91e0471f985856abdda521717f00e25a071433d35aa9e23edcebccbee67624ad262fc9a3d04a1b0ee0800e3bfc1e50ff796fb9d0fad3d2991b0effb88b148089218da3c623622a7ca1912c182a4f1de382a04cf508e3b61817f34dcd2b671ed8dcc812c7f18330c5086c4d07f019306096329407307a819270edf05c3f8ddf8cf8ed4910826eaba2780840baeeb3d386ea7359f1dfdf929e2ea4439fb37e415777abc3f551aa5d1cc81bee055014dd043ebd977376b712aac120924a61e06af20bbe7e0032a6e8fc2122c44041049e23c026f1d85f0fcd8ed1d51ffa708d5a96b5b63d7d13aea1f8f4c2439909b70f59931e324d15eb538293fa93ae7b591da34fdb149e382f738258a216e2c7bf846af43a4c76b49230a344860135e5e94e109e09eb239e3d14c301ce1e0173e499eaed86e1ac7ba96785cd7e816f9c20fae8afd70426af20089f31f4391f1ed51a5a1137b7535d71924c01516e94cd6917d4bfeadcf3aebe0ae7479d2f5ac1b1b2a730393a3dd1e25b12111d8a4333f51c4f2b48b010c2bbcc4657cd24cf9b385a40c2415a6fa038b84e6d0037504ad981b9c38f7be8e48e1061aa42f4651c40c61725d1019d17e5ebb943e591acbea5c63716f786212f58e653f74eb973dbff74041df50768bd10458b205c17781bfaf49187a65b81dc422442330e75a4893b5c253a1dc03e8c01e7c13cd199e5e4a3ee9536a83f51a33c7bb8da8cfe3e277433c477f792853028f468aca96c0d028e186a9ee3d00ce9a70408ed6b2cc4c36b169249ed71ae86d05ebc6e46917a267be02c3dbe6cde60e4630044c5f4e6bab68f05eb7248d70badf88438b5a42a48ef03ed2977befcacb90b7b52a9ae61cad3c50f642d45e2d91af0aa24d4d4097c77640c9b63df7ba12c1c231f20e9820cfd51f013bda97a40d4a6d91840bf227013e7aeff2e69c4195086004b6b15c0ad925503772713ac636bdb3d1118c2ccc98b32c5d22250c868f648fc2fa5798d4e6a311cc85164c7602b2847b03c2330ac0d76bbb4c440117b08615ee3d3ad424bb6ca9b79a8ab998da322dace2ed7f59f6ecdbec3e036270335cec03cf9096bbe6566d1faabffc1f6d75cc03484b35e55f949390fb4dc457946a518ba02be154487404653a5f2d642cc8b32cf1ba87ac18dea9805bc08e7d53590cca02fd1fc9c09bf05388821053f4377745ea214de612024fc0399fde8393a755e416a0bff8af0f51d0a4da10dc0dfd51ffe830bdf3291e0878f7f19b05e363415c9dccf3b682c61a106736908375db2b2190288dd923cc9b37bea1c20197ace0aee958c214ebb0fb155139c9ff2f11b47ee98975cdd983b9ae3b6f9c7dc687ac883de6645599fe80747b4f297ab849d4e3c239ecfb063c34968f216a7f57b44e83cbecfbf102a81e083c950fad8c61baedb207bba8235a9e4eb489cffe60a2cca934012dff7feba6a3d05d475605ff96ab40f5289002a9255465ef719c0842cab0a27f6fede2e987817dbcd29a4ae5f06c9d02f30b960a4a21c0b31a815b81e385de81e37c6b88f9fbc4d8af1bd834b716e910203353c827b6b2794a1e1f8fae73972891ed7e2f997b71ca399bc2c68b701ab51c9521f37478085c05b7ba042c178dc781000653cf088f951e6599790057401d019d0c2a1e82e4961c065c172e86abc5d6bf0e39741f1c596796432f873ff4d44ecf6216222040b41ce43d3879a7d0cbd44fe21f707dba12a4549c8e0f55b6de5f4f0534f4a5be1d73a5f8b7793d19d8a12110255ee59d16e7e8d7c3ebce0e9c245bc987e7dfe13d80781b7f72596d7d4b960602f5ea14e792b4c1ffb507ea73dd18b7643b22e3b5fed219b921ae8216c41da0bc173907413fd438ff62d7efcb2d53414fee999519d4d07c8749f308efbb61ce828389a205f4942748fba2d395b61f4a08387cdfa3654910b73d4c31f85abeb9781370d6d5268cfb435b8de42f292f9a00fa46aad0fa13ebe001d559342f29889eb04e1c90a386e094060a13b016af8566377788b95cbe13e403da5d9528fbcb300b1555159029930ebde35062c84ca1fd84e86274c41fc4bd4ffe7ccab29aaf73ffc2b5f52615a67ee7dbdb3dbc9565a94ddcb8dcc93174cb97bba3ad3f20c85c8cdb4f9b5983e84f72155a6097dc3e23d3470572ca8a11361a144b9952e772a2b29bd7a9a57876274f0e18e28ba82b8b299d92b1c4109ecc000fbeaf469fa5b16672390575f4845b4da12d3561583b581756b34752cec247f6e1a6b4eb1184f0eb1df968f726f281ae5de1b6c780490b9ae104559d015af6bbd4e66c1e2a7348b4fcdd2de1dbfa87657a8fe43dff97dfd01239a447bc7b2420f5759cb1ea011d009c53ec48f0f8df52202389aca09c648da06f3ad1a26136038fcbc058a78de49592e77efb624efaad9571bc4f22b836608c16657bac1c67f03fcec2d769c88478323bb82dfaea9b22c41c5ce454098ad47b4364bd0e52baf052d617f0532229309950af87586cccbe498179941e3596ddd696c2533ead8720f63e4fde1fdf0b7ef94f72b25a46a572209f3a7803751dfe8bab1dc4ab609403ff490e9e036c559cb20faa6de8d41680bbe5c625c1d6793f10b1d4fa1e600d46e52445b94519bd5c83b6db9b702c8a08f65c1c002c572ace2da0e372232cb7d65cec9ce414a9c6959b37779abb99b25c9b4392c30e3291a4387f905a77840327d22d4376f5e3d41b8a074610c3b0737267485b06469cab4088494cd9757cffb4dfc63dbe74ba42831fb3c75d4833b82e395ccdbe0b57a10a71671fe70a12221888c878ee3ad18e2a7068a5fdef6756458b2110858768f505bfff399dce0eeda52f1c3c0c4ae48684c223cfc61d009580d640dcc95732819f313bab6290c29e6d6e3fddf9188585a31ba2661787de85ccc58a37e1ddae422b1061921011c4868f3a17290a4ec47ce56a36e050cfa9b8ad9a85219d50c44dc4a41ab6fc01390424072e960e558ab2874eb6662f44f8ad5e96b3fb2aaec1ef152e2426eb5583f66f62ce944e7ecf61471c587e14db53d68d15b430b1834cc5bd7f8c3231cda15222ae66e367de2d50cb7ffb8630420e26ec3e6fcf442bd040324aeba56e4eadc27a3128b49e11b6d11194082870466a6e01068d8d4415bd1db3e7e0920a3988716e53fd52a4b405e4960ac3aae5655a214ce3db4fe685ae014919505752e81d6ea657c8771cea6a81f351e8bda85b08a802143d85948f04f58a580ac72ba8d3c6a1afda51353f2d8c328bf551fa23e2bed4b350c82854853512a058fb85182123491a8476c0a4ffa169a3642b9615a20f10d772fe6e5d16dcc871496f08e40dfa360ebed7d0df67c4f2c8c0ed2db83765370b85c2c81a788471c08d6e51dfbc5e6358fd4dceb1b47dd1a3359545dfcb5734370302c4bef26e7dd7d2c316875512f7e3b7d0929db59a1daaa45897362299f967e5569238f6da3a549144169bc8a6319351f4e3b7eaee7eafeea95d1007d207450da11a76f2cb8048e0711b65bb1b718318c7797579e33ea2e2f3a8fc50a887fc8affd8e4532e3c5bc715e1dd961fdebfef7dbf4d0f634504e2359f50de007be3ee8792b87bb95b973bef1dbcef0b3327d25e389feb2876f2980c9d210d3c09c0867d3143a6b940d3d680cfee0c2c5f08f4bc75ab4a76232b92b4bf679c636124f6eca248ec8957b6f0f456ffa871fe9c17183e57bc8179fefcce34f69c362d22024b652664ce2053fa886e28fcfb46bae7eaf4e24e5bd911e0c038ab1dea4f0ef49bb6b223c08171563bd49f1cfb9a4a65fa3847604d43ff7a8e65f23e43cf4080c3faf6f413217512dc3220f6f4c97c6dcb471488675587fccbe9bc39d586f2b07f130cce1c552b2afadb5777de93fde037815d2d17c4351e9750f1a4e13d3facf8c086fafd3043bb6b92618761634914077e57e201403beae3a841ce6c049a9085de04b26dd7644a562841af8a7175f1ac38c343c00e8afda63bdf859e7f2d6fdd93afe3514923dc00dd9ea2225bc49075c0b4f15574da927a87590690f4b08d9a0d702f824cd0b31e678f478bdcb40444d43a4d057d05ce3a959e30ce38fb528b819574bf2b4c33626b4eb75847cfbbc57df60ec9dc2408cdeabf4d4b7317e62b8a4b6dc3a9b5cacccf27569528596ffa66dea00191c8f713dd2e5ecb1d1d41be8bc72e1343da6bd17d981e819500c8f7b0d3e5bcbb2430f1841256eeb25d1b339bb9401195a42b309860c2a335b00a288e2c2205a73d1e13fc678e7c372f016de47583c0819bf8b69222967a1ee250df46a3f516e3b0e8a8fe36c3e362144d29e05beaa0ea6f7ff862cd6574252df2b7a1ed7957244b48bd32736d59c164163bf0fa1b0af8068224bc283547c79550fb7a2464bea7f3a29f82620adcb21a30b38a1971318d2c13c0c30907216fa79f7b016782c27f01560271ef4500e5c11673c10a05f55a1c6e43447c0f27fa82255c49c7c95f4a4834dbce04df9cb6ec004fba64bb8a54663e67a619ce3f3fc5aff5f7fabc4ae0a2f241e333b7cf01dc667a7a1e095b1bc0a4a908bb4ff5904d5c193d19ca9cae754735747ce391f0ca7382ecf5bc7e53aa6dd4ccc2e664745d4f6f2150280e349a82fb3db134664a052d11689335410284a424d41cbd699b9e269c381a4f3799108094bb7633d4307f15f06d0ac9c51f7a9167958d6a73348ed056477ab7f1cc9bf4521bbc91c051365c88e761c445ab179d43bd3940c51c4909cfbc152d281b30069d12bda0e361b4c0f09c101b795606af7b5c4d34cb628a7e17c55594ea0d56e27d5adda63b4ab8888ba65c305f578ed7fb08b8028df6c1d6fbfde5f6b1716041060a4db3db2e77a3346838ecb424a4e879c567bd9d22035a0aec04412b11c16eb46756674b84debda992d549f4ddebe808eafb8165d51ae79b973d0ebdb5549e5129235c03eb825d0b63e191f8ca8f5880320d8e7d5c226d8b2752220e6e7ae281e87fc532be263633bc63f572a5534bc5b59432fb97e877a5d649bd5f5818beb7b88446fda1247707161d8105a93b2535a94bb9bb67cc1f9e8a03257263fdd14a1e861e1af7548a2f93d4f8e6ba88a6c10fd72709cb962004003577a70e78c9eeabab296cfd8ccc48b0c6954c1e02612c19f1e84f6bd03949127c1e7b452573b5fcd19f2ff45bc5992236c24407acd71fe6b5abc288e809e0ec3e58763ee8aaf837ba6f7255e4621b787a02b272e67f34decab9687649814e8b51d6430a08798ec67d783dd7ebd9aa15edad076b2572a551b039b16554f83f3de74e808d13031cbbbd21833c73a5e979464e24a41ac0e672b6e3b3b8e42281bedadda068e72c8698db2869d2c28d16103b0466772090871fc62f0999c39899744b4344e239def586a0b86ad623955a3b5aeef1deca030b10f24876d30d52a0476bb12ac21321e59fcd912bc0c6c7bc18901e953501fb057b2624f053735a4e064e324c8f0fdc59f3de3ba4a4f19ca2bf59b2d88970a5fea1a4767100b53f868f975e87c16943f7301911a65bf1974dc9b9ced20bd668f1e2269d4a03767ecd4463ad946b90231d2d1418f2b7e9cc9ce8894161a33b19968087d6067c525b326b27bc14124496cd86de84348450da6c42d573b489f3bac52c43bef76c3595787cfba5ce8ca727978f5cbb803eec194b170909d1d26b57af4dff8ce7b437089e9748590a1210390ca227c1b908eb1bcafb39bd84d83ad6143b414de1e920619b727e60591137b6fe2beb59515c351c1dde0974276ca851ffb80b64776d7591a091051d7c446b33e8f80a55647f8bcc77bf4a33221adc3be4b28778e84580b1aa99ac04827a755906575cb0563c2a629f55533fd9d0150a29a4519846ad7dc0dbc6a54f6d54c76b4f0cda082c39077c4f2a909f6c516c6433837e893c402ecc24cea66ac5dcbc1d3fe60c415c8ae23fc5c60b364e626f09890dbcc32549ed4143041f4b53b13777c2b84e05b837270ca8fa6b8c4588939e9ff75fb5e0f35ae12e7575c143881d9e748569f6fad540433ad6d08441c830b8baa88e419e70add0d30a03529e092a0ebf5f24432e69428eb3bd1cac6befa24da51690632b3225a8880138d09fd426caf8cdf39cb0433ae72041c7f9007073fb89f0819c3edf099cca779b413d43db84336c380c3b0cdacf556e0f0dc2002ed284f56da2101808aad0dec877c1c1d422d17bbb90657c390454720aefe61985fe4df68ddfb5534cc5889982521b4c8abfb82a792b2812dca4c0b47e1595318bd795648b4cd8c90391ecd2e62d3f5f98466e9a2e79024c0f54ac3bbbad170426614dce40448d7c7f70e2a197874471df9bafe5dd9688ba0f45a10260a98e447cf371eb58c398d4a34b829d9a38d990abded63b461dddf7897ef11f6f00e8e1cbbc46b17c69350fe31e5dcb7d9097999b4be21e963b5fe68da3f3c78f2bf3093f2e8ed1a90908aca6e0c5749c072cb39bc55f9606e2d6a8e4e7c78744690efe1e39955f2c457eb1927931df5fc33abcc03a400ce6b98a5d589715ef8bc2499224344b03c2372d14dd711976ff37d3abfcdee664514260326fd557247699d81be762b8550612d00c4b66d13802719aac6958e82bcb5c8c3610d3f0f2c622f1291ecd1161cdb446368aafbac2921841e8d094b1e945e0e00ae47c1bce0b9fdcde34572c00bf256509b0c7958850002d30b9898e5f247e4cc8498d6addb8b124a7a203188569c0c18408d8164a6e3b1320e8eefe548bbfbd43a3015a80301630c171bf29b23da4c70f63c753b41e10fcbcb58107a72b21532169c40a7e4149683f62e95e33add1503726e011bcd5d9eb97da523305d8302f9a519422bd6b98b6a52c62662398650035d4be9147ab8c5426560ce27a6aa3b5a98267e93358fa694ad177ebf07d87e67e1dda0d0842d605c96d942fafaff1dcddd3af7e4cc57c34e53d3240df56d08e1bc015f86fde8244582e72c55a90fa3aaae4762eba67f7de9c79b8448de21c2a1291fb034e8cd65b48f8463afc461da58a383b74222c446c3dc69d7c2d1185d4f3a394a62689839d77dab0696900de73db3dc70444e187bb23a6ea7e8a7add6cc11805d0b3e4fb37a1d09d0f8925171b473e40adcf01e64818bc0d314de4c27c9330800953b05a2d55ffb629b16595c825c3bd80ed62193ec0597a9d463d815b3275b03702de3f644755291af9cb842214ac8acfe2922474e4f93fc1fe1b40f18d0178c194775ac6f7e818314231bcf3525f55f4240119e043847aa3ca6282a359e7d99152229ce042d451f9db8e95dc53362a6424d694ac6c8e8a03bdf4d15f77370f89e16402621b4f5ae29337a806362fe717edb7e6b540a3185de330e5d3e401c73aed00b4758e38ae006ac3101039becd762c7eaf9b6aa62bfa6e9d17f8b0c4cc58a9b361b5e5d76c1ce2626d261994b0f5e219363d59347e727be36a2c6015f2584fc33bcf24f606ba1ac022cac8c48bc1b2f88ff340e6929e7811b5fc72e71cc24cd8b05bc7f7d989438b28232f742d12eefbc1c076fa85b89cc45da3474292a65b98991c9fc63011882d78829cd40911b0967f27e0f58a469b3d60ebb801fc424e5f0cbc988cbd58c67cea00e86c374a465cf5b07e70e4c0eff5cf135a4044c4c5831d3cbf107123e0031136df7c5089f28acf772e9f1920b4cfb0521910b7c28002d3e7a9972128bdd80355b00a6ead7de40171b10632a523822e3ebf17b79b8f0d21fdc27b280c1a100b51d0e455e866a07161c40fb4fc718f5823963df992ede41aa21bbfce6c6885851ac5ff34651e8774c33f456e8ae5c8e110dafb3b0d1c0d17e1bfb2eb96dd5f49c2601b169d6bf8fd41825ad224a24b1cf67e98f5e8be20961b84ccf8e0a533383caa9e7f333ec69af0eb9326e7827b0d416b43a73aa3670d51f8988ae35757b6666f0a744904868631bea6197d8616b6e83d9378c14bcb2a951f8c776ae52231e4fb11e5bf6ed0b4e3e87009115c378a1ad2aefcf386d64ad74ecf6d5488781ddd7c939d8a14a495d6a85b7b24f94de3418142f162b5f6ffcdea3d199f4a9c3a863f8ae93e509fee08abb549dfa44ba8711d4b93d95e1d199f5ada74413a1ecb1a4852a2e51a8e20b7fa6be379a3eac5bd084abe959894d2157d7d4fec984da150d25db8a6b7dca60a086ff38ff02379c187a53b960461284ff493978c9a5b0a45e27d82e29093ab3ca1320fa07e2087dd7bcac5f3733f6a970345459a8fc4535539fc9c4f4fafa4c464b94036f4b42e33a812b80b225cfebb3560a23fe8d28d6e1ae111ba63c0df54fd61a8f3b325549a95f89008867962fc749f90602ace905e22e211f1c1280d01536d337eb942509817f1d4548c4b930c296e336734b88876eff232e13ec75f6c12cfb63bd6323d1fd28fdda97fdd61a7b0c4c3ef6b1ad875bbf31a4f30011b99794bd3516b85ca8a64277d81f0840084e0b73de08ae2fe1d3591b693f5da767a77306ba0aa27aa02e384f7e20aa58a1b9add7bae0743ee21b5186a9d3eec119271eead744b8e351e218860456ef738d87ef999aa32ec4fa5f5c5c5f4ccc7eb214190ab7d8f36e077c59e3fc89d07fb13105c5fda07fdc809b566e63f63952a1e5a1cde1d69885440bd433591ab5b3235a9f56e3f868d578f0a0d6476f4f25f1ad9709d8aad2127738c1d66842ed0fad1477fa07dae75767593c954f5dbf528622e6025d890c382b3e64c4fcc60a8f73cf1a3308872171128b55bf91690c704a2684ca60163779e1b47811b9834c7801085f0a3e04245d1b0daaf8488c679c46f966bce0a854f8682bc1a2bbacf229dd0fcc7323c3e83dcb8c4c064840a1aa2e18111a5f2824d44beaa1605a0ec931c2d3ff7c24ac1e68d67ff028a995319252ee45082729b4c2489366ab5959f40a3159e65a06b12176211c3d43b665874f5ad28976aa9efa427e3c2c8f0bb7cf83839f18c8c48305a28a5bc6611a6fc011950a861a9e0fd415fd3a8aa10fd522a78b272ee34a95a6f76b390221c5305c2c7f90141bd28e9de2b03ec1f2edd7251bc1d5e802b07015660e1998807181d2080cb8c36bfb2e843a43d875168bcf028d8aa7091f0b0a81c1a504fafab097a98f792178cd69d99d2775909c08f0a48a564373c4406a15ad0e11e9496d758864c0a6970ef07d032463b3016d705e4f5092ef4ef8bf89465518117a2837114173f067ea53c8efc8b9fcd313d296f3d756384e1a2794f9c129d97f433709340ed07dc9e65f88f8c66d8e7ea3c8213bb54ed3ccb76d21d194576aa2b093b755833c3ef50b7f49666e409b05d052b5225c6286d98eafbd6205b8dbe754704d0cc8de188ebf8ad13b6cbb59a8cd236d31bba93e87133cf17d92e345e7f9596e4e61faeeaf5dd8cf73a04d225f2214cec1bab395a25b3fa6fa5ba66176615a34e232909d27b6bfd20ae09344574d1fc7d75344106ac242aaffa391d9364bf6b0d860f4caa5ea6d00802077385b3082113d7c8bca64691b8b9f099a01fbeeb69841ae6cebfa5e26685fdf2f0ecdb9d395382bf9963fdb685ea3c0178a6f6b3be66950c731101437243591f9373da2295e934b4f005853c4e446cdc0b056e0032550d01239c09276eac58b26f02ebae85e593db23b30efd6fa60dccbef3e96182166c5af94f44f1c3efbd92f086d6c007489a9005d7f0086b04651b61fceba9d80ac50dad47137bed8ca363f01c421812059a92f460535c5750b55b6232ff6e297979ea25ebcbbfb7d97fbbb52e3b866fee4b90b1ffc4d7a695adc4b82eb7f0b4c7372328ee94fcbe74d2363d3d358e61d4128de0f34c1d17f0cb100366bbcc9e00ebd01d5edbe054bef0acd200c10fa5f2ce6553c1e4b8e1f04160c394e6c5bdfbf2e69fd49a72a516a20d653094a5e0b3b0b475b8d7124afcf3c119e70c2b9b53fd4f44ea89d683b263055a1d462b728365d034085c0d2facae5a6566e004a1855effd4dd0bce20a71a3c3a5294e786a90b679be10f04bcd595f04824bebf152c573e3185c2d8d0cf5727981297b588ce367d39b303a1ec1331e1cc5fac1ca091c00a22483e28e023758b5eddf115a63137aa0245ae27cf6aa8bcf0637cfbe6e5dc43050f8d698ba37b2efe8936e49b0614986308a77f5d5ae7030437111a007d17af1784948d6e94961d2a89c2a9598043b9f5db3ea11a1a0c13755f7e3225fa18f544d3383fc90bb75990c87322bb6dfb411bd9a6624a4861ea8a48bca8a05757553a939cc741c2daa7db5d53e9b77ba08a1f8ca37fbdfad5601498c98f710bc0a9fdf59bfc7383154ea4a75dd38b00ff8a9259f84d24fb4e19bcf9053a88da1527313c105f3556d7350a3e2bb24060062c2e214ca3f491a080a7483a022d526576e5965c5cac749a3d7b05366cffa5c72b89146d984a8f5b53e659b06ac50cd3a99a7afe6c94d3fae33e67ef10e061d94b6a2465f03cb1fffd2314fc2bbc6812cb89c47a49b120b49a2ddbeaa4d63b87013eab4e9680a0175b2441162c056e7391eb12f7ea116886012df529096b85c1bc7b0d87a17daa60d83b98ddbf3eb76855e8a2f7ad80facd9e97b276b513148126e4a26bdc19d45f4ad643dfb5510d208f2244c40f5e155249f3933605d39241ad82ecdd6c68c9c83de24b610068cdb759f12c2bbf3a0745b1360841add126512d8fc2f8e766c432e15495743928dd52f3d2942ab3967f5d2ae670e3ee7036d958f24a866baf040f6051d69e78b805bb04ee04ad904371316dd133722d7981423fd7d0bb3d2154367fee4302b3a8b09e978646fb88f0ccdc43c72b098a0777b7a4b78912857576c6b7f6d280183ed596c5af879611c6eb2c5a22f2d2c768fe7d2fd3a937434fb6ab83cb7a4bdf08a1500f2bf92c8510abbc2c635b547b09beb84a64fb2f401d08e3850b4f3948eb15106d6a1f6e421708e70eb0b862945bbaa8494b017fdd5cf9254465893d891fca66f708471ce88fe2d401654a4f8dd573e86de0e212b24571a2f38b84c53ca0dd88d701458a566c23be800a20c095a886063af918c3de3ef8e8f3b5221909678552d9825c34be350a5c297fcbd4c48e522b21bfefbd52c446a9951e8ade1f1c7cc80a319fbee8edb7d8963c76056664ba861206ea487e60d81f9ad2e26504e0988c8d45ccadac8ebadf955c0823c80bb493cce468fa96c51a437c27b1659841b942726214fe8628cd1ae16e0e222252f5e2b6aef9924a9ffa2294db4866d553d6bec3a93118e0fb362370b2530e2b9f67f8474c359bbd2d8007e157dcc6aab54fedea8550644ed285f4df405c857e40cb4dbdcf0d967332c7c6872ec0224276542f833a1a609f5f78cf90a38845b96e42fdccd04a6055c66a8af6652fdcc5f0af51e4f8bbc61066168679b178d0cd8d1f1615fb8b05d07d6f5ce9b45719fed7f653aba086f9559b0fe89bedc6a6026bda32fb705fca54e8dac482af251f49e332f7cbbd0d182e390a56b4b7d9513a4f2429bbeb3270e326c50b0f04132a6b4739c42b164bc35cb7e4ce3c0a7c1c5e7cb5a53eae2de3b9f1116bcb3bc0ada26f5c352ad3b03d4662c3a02902c985e2db84174728d715806c657794d12f76515d52cd2029acec49cc66381df20d36877ff7941900c3cd2a89376dc405e8648467f7014bffa8893c20104c0f654a81bb2a5d1239b76b6f0d8b63e9dc52450c6f24803289495167387768ddcf227f09d9478431a0d62af92ae51f57d347dd0f5c2483cdfb9878805b69d1a87c45a993850447672e31726473b8d3b82d8e69606a61eda42f138fcf54692f6ed00fc16587e3759237a64a75d43cb9c40e630153dd65b4f8bfe77602702af754f0c4a0695b6c4d52cd2227a112ed7e8e2cc51faac879cb45f700508bd7adbd6dfa9d95f401e874c5b5013e6e9411eb45b68bbe8c4bf6c0da388aff845184b86a1cfa47e7090c60f08f624a6aac677aeb3be54be1eea8cc5d15b7b7e0f11d2792d9cd94fd2b66d76a3fa47bca4494fd451822291ab80b2d4d0eea83320dc5cc448a1849d7012dc5686b389ebea2bbc49e6e99f9663ad16f1180a563e8279af3c0959e88f8fc4594a09b686c034ffd74bc64311c17829ca8b5eac1753e3a34311f8ce32087df25e2fb0d4ea6bfb5d29a804d17e35c7dd4a316749abe7ec97212e6676d3b6a736b5234560c4afeb2421605e6844dfd3b741937506a8e8d483883bdd893b41987e0ff779e08e1b1696f957670a6f80e1ce467ff10123408059a736351075b5f3b455082114672fc1bb8626395b0efff8a73b2f1c8a5c5de4fb0e3438a641a796d0a231b49bed6235ff8801eba3d1f283d53312d85ca271fab1a20e9ad145e0e440b406889ae65c7e31e7a2c69940f1c1e4114c73d3704d1715e811291c6550e1604dd81e0f7032477869a4f9a9bccd73ad81c4e43d72c8f75d14f188dfaa0a9ad8b616190b4403c2362a86911201b3ba99d9c478ed0c732c2727835ca84df133a3026ac651e83a30a97113cbb83a1054e9cd90ac01ca541688ec065ba425314eb23eb46126cbebf5d730fe396cc2ab602a9d6f61f71692763625952f5e84f5101e2deea61e442d69db8882f3f33c3d06716c4337fe10f3698bc84b70c29ea9ad18144ff61ddc2127fbe5370b4049bdb5bcc2066d60e559af6c6f8fdfc4d65403d2d39e15d77a0a04d801f5bc8383d31575f7e89c6a0c9842aec06f3f8dc79c585205830867ec2abc48d8247e09437dddcd7080aad3577904389f15702f44ab97d28096a19ae8245ae7f96a1454a8b9f99d44fe45cada1f65d03085ea6a87dc2c6caa0b4edd86f606b793e6fdeaa4dadc0f765e388deb6c4d6fa814d39dc8f9b69bb992a72cad5febe4b0246a8a29488664777fb1318b878edeea772a1fd48d9c5b5fa05e67d35f22cc857cff323ad028ae35c3fe5cf7d73d9d1bbbc5e9913a9025fabfaaff6333126aace6e8f0e5aed6f2322382c5914c956c7dc27fa5840f93de044faf5944b0c8b5201e138b5610fcf203e1b07668f0041f6aa8234d16fcaf769f1d22ab22e0679d73783a292ef9323ceff6151d3439b55d728073e02c11ee9d63891bf3842f7dafde5779954c8c57684c8a62295961acbad43db41edf58aae42e73791ff4d88355244932acf9fc0ad835f90191d457dd4ef40f9acd45b1924235bc9996dc467e746b71e8036d36f70fc8a800c4b2c2e7fe0fb8b07716fb5cc79760525b7c406e3ef079ab8d59bc51b24ad55b4e53d8ac8773e1f6e11f2c6ca064b5b0b054e83b164ae8966037828015dcacfb337772c8d4e686521d7e3abbcca1f605e5643cf827cf53cbf2a91755d1f8c5bac7f02b3be5267b5ecd964680017c939bd27009bcce42278894721fac119f060f17a677f1d1a588c7ed5ca7f7876ad40ce4adeb468bf95f849d504b7ad969ff04c253bb26d78db993b44e4c0fd973b43cd25619989a270bbbe83e08831692005e5c5aa72ebf210d120726e52232b02b5d5d71bdd692677bdf60735795bb6e0670d7c4442af5a7ff3005ae7545588170e251050537486b0ff1aa91be05e0e9edf7fd5dfead325fc5c3d39b7640b6da04566afae705ba720c9bb51efc4e1fa6636497aa57aa6e81ced008a406ad24f96413a5b5d1c88648e6be6e917a3b818f7a64ed2a5cb6f66b710fa17fbdd1ca8954e76d80e798c160ba53db3b551b0de98bb77511a9ad90201a0fb207834b0d2f042f5101639e38da1da468e86a53698494632fb565618283493ac709c8e9009f734e1bd7f4eaf2e200846ccdb3a118f5b714057cf48d0bef5556f5add479d14c430ff0feef7fe208123863d77b1402f9445cf961d71902ccb20bdd870bf43a965aa801fbad6a05f3579b28e6a42b3e264680c18d28da88563bc6a81d6c6b8668edf6c2330e757f153d4460dd215e9858d3592670ec91dc7302beece75338116a83d17406f72aafff8ec967167ff53e0283ff028dcf71889666b5d25d06ef7aa9d2824c27ba2cb4371b068583c4218dd2fc09d69faf4561ec4bb5bac277f5ef7f3fe43d20d8f10bdbef64cb8592d56bff35f1f4ff3d17057f3ad450f8c3a9e52d8b3de1adab25bf9df19c86307ef4ffb6b5be094b3da97ce23788656b00dac921fa0c782d761c4df684ad50332ea8f30e01b0f71bc20e5aa55eccce40f222fcb3b6dbd69609419e4fdfef7f3eef4bf3eeeb40f235ca7891ecc4abf4224ebee14eee83c287981d5e29e97eb6bbe5cd6054653d019d6eaeaf421a9aec51899af9d1726bc530cbe9c3f7dd070e3fbd40783344f20a1d80fcd58a5f8045453fb5d67588f0c25b277506368d41d7f22ba6235dcf9ac680226594dc433cbe0c61a48163076772152b0f8d5376d635a9040a614cbdc3236b60b388f9601e39c22e79358fd823614b4f2fa37f33251dd592d6998960d8e82989c7335e14e6533c4679746e9fb95402f91ae3c9f3551b8e40ab06ce4b3b54ac6100a0574e7c63967d9d4b672be032057ff387a0791491fa93a0ea5a48cbaa6f167465892530209212124d1c82a799e6952a0a3fba82d1c966a7c23978126783103e42a13beb5ba71bb1b6c55c5538327a5ed929afbff884e5a17a61d233387e39185e0e2013d509a84601c5f625652df67cd98c8de28df0c9f923d16490186feb647fc5d447eb7a276754f4888befdaf851926e69be095eb0f20004c4b4dc2421867ff1d3b650b0b9c440700be11bb35fa1ba00d3c16b5a49c60400c03a09099a7483df717d5b496017bc3fee2bcf57cd9ee792a7b46c505828363e5d99aff51d633f41cbdfddbbc1a178017bf8c00a7d3b5b57877e8382a4cf35fe1d1e4d8fccd5933247f12d9eb964db51803c3963fa364951baffc436ccebf91f197e5647a36d5ed0904ae5acc549f7a7887d7d63eedeaab91fdd8b52e28b4b0e4f15a4231508ed5d21460885ae9729c33d876480b18bb74f09af42c4c2cec85fb17830eddcb37cfdd963d338aab6dc7e801673ce8005981e26f540b7a8409db3020a335c468876317686b7458ccfc60e44a3a276dfc53e02a701f0e4990b8243ca5014a0f54e6ff1ca1944d888805aa2babcec95c44cee17d8460af161b0da3fdc3e8670d96c8a95362b4ede49653ca2f561a35882a207a340017c62b711cb08a2aa823601c31ba107c238bfb339427851aa66c26354999b487c89419dbcecb15bcc9a036a7082a31d36520d30a59a20cc0e4c51a58d076add31d9e1509cd8bbb2d2a5964b8e0d3c1730210788577e87d3910a4ad0068b11c0dd51f44d2bb35d70fd43be5aa9b0d046f89fc929b483b73d7d8064cc1a01ecfd2173c042a12c53ba6d896a6392b929686b10f0487a8445e1b4e7f1ef0d0e405b86061c536aedfb3d8482d08c605ed60ac68f634aac84f22d316624406907c65a8d4adaea2411bbfe10412edb88c69bf80a692adf06f1a7eaa3ef1054f0a966c17e69332300a0b5081c6d83d86a3443516b045c3be565d25130e5504373c696e30201f739d2f0094b6995420d8a46c547f65da0167ec122da5df4390500ea7f28f77d0db9c2e921c5947769691a065c94391a0eeb2dc8592f2ba48330d047a6baff95d0123ca0b483a4142347a0742e4aec84641850e50c79263358f4e49ca4add3e567290e74cbd2e93b042dba4b406761dafd7c7db49b91317997e1384596e31e134ad3b012471da716d36d63244ff4f3dec857a7b881b55f806205a3d815c60d2e6980de72946bf47c34b7cc64280d7ebbb61b9ae97c68a5e4b4254dab726dffa6e0220797721c14a74cd8ce8bfcf839763c0373b6e0d424da056a67d6732edcef8679f2f3d84ad1c780cd615f3a8e2f9ca4d7c2d8fe838442b0e61d2b9dfaca59f325b60a19949025011e902c4761903862667a21543ae59b73e3e2cac5a181f8a2e7ff5f496060ba57b8f72bf8fe27e37e1fcb8aa3ac0b0aa6b654c2caff91e58ef43124a7b9ba03a4f2f649bec90650057e511a9e6823319b839837b184590485d1ff565b1c5acd722527c7a472fcbff5836a7acce1e3d8749fa034c7f4be9dac3837529fa3db0cf0e656ad921e76891b9c5b83753e24c73f8c3e37bf7690b8071e44ee1044eb51aa953c41d8fdcd7c7804c7a284087d2c0ee9bc8e4d86581bd3e97e461d6d85dd7978cc9bee2b384062e843c656effa39f5ccf64108cd45987095e61f4ca142fb88e17727c3b2faff1980b3ab09823a86c4ac09ea0b9fc74a58cd3f76964b4beba07293ac746288f0b0d2d44bb6b080001aa55289cbc3b18e567f6f6fd7715998b36c1803991cd1ae1f65e866e439caa521668a48010a9816be06b1658a752233aa667360e0b0b0d0d1aa1e694a88fc0a36eb95d16892125e232ebed84fda72966b27e02538a4fcb51c33cfed9f447713040b75260ebffa5e7299d483ec85dd06ae980e4170811370bd99ababccd6eccd4363f03f6dc75d5e0971860a16051cceb9229c6cc43727ea1918d3b22320704c5d524f14554b6d93bc8c8d79525895431caf1671bb754515693e2240e21803660b5892c15989b77a50c8e87621908271f7e71e75fddfec59df56cfa00ab032c69fd822236d8efe42261bb135cf74d8c753d6c879da4ae677d9d18f391619bba8ba58ea44dfa878302c5e190c11171bf5467c6a9db64049f5261c9e3ce359c0fbc5aab49c80da4a8d885cfa8911d243aa6f7faf74f58589ff620566524ae85e100c52784f617a6442a70b02384f5eb8cf9d2a8760f76f63bdf1261036378f85039ed1cb2842ee792bba6079f97a2456f527402466f51c61dc0413653174009aa0f8af9d071caa17d622a03e8096eb30e756b212a4ecda4d7abc7bf6dbf00885a8b3eb32513d6e89113a949ef831209051a1cb514cb1df3256e4f04a97ba55ae3e370aa34699e89ace9c6fbd6c19142e9121994348b68eaf4b2179373b5a445afca87b2a15fe3325c0e804203e4186b1cf0ec7b741d282929cec95caa9c57ff1c33876eacdd8970ebcf6fe1f63f3ce781830544f377f9aaa45e2ff4f6a99ddf2d2a759a9a5082453493e292a886288bd3aa0754c396515bb28eb043befe446351353262455088499136b431c988b50bf511782a6263a34228b8da90bf2ac24485fdd9410c4346b8559327a2df2aea1788ec439f77257747decfb7f083bdd435280d878af66f1ed1a1e5a1171c36210c9beb567c4e9d8098afaa376e493626e7ec8295fe506226727058e381dd2a78639983ea9137247478f0f660da0f4b5a002c79e1fc9493e3751011544b2878106c91d4ec90fe387361128e78db1fa155ac17f348caf0a500433143ea94db64db0e307c71217f65d2f06f0d0a0415e000525608e70c17b93f8f12defd14e065b8b2ada779785436816513a5abb48b09844293f185127ee27c0ff534381e1ac56799f955cff46ab419a3ee2dd0d17627e8e6db4965d4a5520d1331c16a9432564af8de5fb1eed3c55d8a92cb1acfb10472db14b173c2d691c867904c575bbe82ad06ae5bb6e1090eb98a4ef8db6da4b499559720dd5a825f960ce5da1014bd2b664ba733cc2a87a6b1c22c0d0fb02bfa13a1c8135ba05933f1a10c6513fd5f22c452951822f699a4f756df528fb6f62de4677e7140be6f519c73f3023b3911b6ffb1b2ec6198b10e606e7ca0547a696df71b4f5cdf7e214c8023fc730b89b7817f0c6c2118963c7735d6ff7fceb1d536931b588951ef75360e4258c60e23e8208080f9ac37051b70ec1989e6fa9d814a4298cb95c7a782065cce6df647c05561103e5b4de43b22344edfd22bc5a4b0e310081ff02bdbe6550013db73922f84831d7901d8957cebd40210ea46d5943844c2257c448efb3a1ad1d84c25c5a5313663ce58b29de88c57fb0d981da72d942b81bdbec2595a73876b6b6e3065dc659b58e847c27b82c7c9ceaf1bf900fb93706b7d1a982ad5b0a7bc1c4fecf998b4274d57b1e4a9b08ea700d2aee69a669305df8e117b4a682952a39e848488ec88b031a9584ad39606867d13f91b05746775fb7d19d9d916464f189e26585dac1dc19007ddc7e1ac8aecf20cc0c83974a59ba12bfb8f5e6787d2265e9878f463303770ed75c1b88e8ce705ce9db583c7792dff24ff47fbf645b20aab1cc41bb0f5449f5da5e4c1a3453d337e888667588ccf6a55d589d1eb9d139fcb0f5c97cf24584fc5935abcf77a444bb81454ea64665c4fc4b4632a9006c09c8a134caf077e2d734b7c7f68e709c05b12f89f945af54a373e8451a70b23b471e701c485217314cc02fa42d0c3207aa43695e5a9cc11c66d2f0d0be675c282163420bcd807950df1182cc82901eb1a76282800b62b1283e0ded4adf09911b631b816be77b93f3dc3581926bcf81046c940fe8b8fde1b65ce968384149a76b05baf938633ad35bc05233921435195014ae166ba9dab0922f19e99ccfd25a6e67bb94a274f03aad16ea061d1dd0cda43ba438efa40ce998a4b9097baffa78dfa0a08e7dbdea0f14ed2d7689163aa212bfd25d9b62cb688dd9595587e0f7d4f56bc288c3b3ff629704a03073f3ff9437dcbb8fe66b25142614bdb6e095260cdb8e8649d5c91d541cfdc7013de6fd9bbffeac1a077b9892a025086c73dc915530d1070d507f53e18fa4d0314899f293c519779a60829ba096a2e1d339f9f9b9af19b4cc70f8bcbce8dd6638a0b61f573261e591a037fd1a7d89fdcea1d3c9b70dbfc256e489f020eb1c1a977dd7872d8f91a0ed97b10de2e09826ad42826e9925c01d45855526cd6c7c6c7a7b25297c79b588c5c1b4e706303e8e57ced62be2cff26542049c56667286650c784445b5afbacb9b398b66b89d023e4914bf12c4a4c549db9e06bbbb4182cef02e46e4286ab80079780ab5b6574dba3eea99772c993013ac8fccab64d8fea9cc28cf5fbbe7edaf73293d33f30dd757286db45f5e6935824e663232ca1608a376eface088b2e978d19069436cb90f978334576da61e276347e1e22125fed269d25b842abfe0591ccd128d91aa907e3e5870f2be32b3f06802c3f5b983f5d0c79c8199553ce1a89fea09f12bfb7c8010a3df1ca2e304ddedefda01e36fa212ead043a79b303e41764381fa95a9c0101c34d443d5bc0d81550d73c1bc9d59ab129249f3f36d0c7f079ae927f54da58659fbdd55b800e6a35dfbfe89e67ffce513db13805e54eda36cd1a11f2664b94f8238c4d7551b0a458f0848e41dfc39380ca47d5e2632c56262293e85799eb92d313481e4b818f8970a42b5de82e4809fa8ee973f279a4669d75d7748531e3bc6be0047ac87c0a46631f9ea36b4d24cc374035cb8f9a67caf48be76cb5945014b1ec4b5cd6c4f5348db800082370467320bdb68dda97b2366481116994fa84e5caff28dd80d8f38818d2f8060a10884a595f3344a958333deb0f95e5b4da03da4041d67062fdd645b1087e374c3cff1be6db7a83a9dcc4e40dd813645e046533a938c14ecce6188fd9eaa38aeebef19253f3f49bc21788498c7841bb57bbd3e1ac94dd1dfc745b1600690bcf1ea78661c9c539ac38b6a7bbc9a85065835802bc8331cf55a4808839d87b395a28b091b20d22ce19f6473bbd3a6cd0d14d401a2947e8a20397f5dc4ea3d2965a96b329a36a68134997e1569a091b5182a959b18c4606f09998d7decd4f862570810e634bd910f132174f9881e64d4e8167f8761b571f201dc53994dbd11af2b9f17b7fa72ed86782c2170c74d00e7ab354e750c3b5be6aeea5e3fc21d0c5f167be40b83e4693d3f3eddba01cb4546ecf71a3d09843a07b2127853a30402a24c7b67df03866bf0e99e65ea47678225094a9ffc48ee8a8a88adad7d78a59d1b0495e14ebc240248b200f61ad065c8e7bb75643d224fbb55cb7d253a23d66497d5d6cdb8ed3ccc2aba048d28584d1482b3709dae2e3c5a2f1b19de2fc95441531bccfc7e2cb23fd2d85915a17994a63725a4be5969e086c00557573c1c0b3bf2fea86abcf522cbcdd6db211ccbed3069968168a1fca56ce241137a15169757c82041b060789d9c25aff0e9b03fc9fa2b9ffb518e2dcea09d5354ba4bee4e47193512402fb35e8452b9239006660ec2019795271e7417fb557e80598212416ca5e48ca27b604150a564bbfffc3ef02d55dcabf33201957d68f761f24a7f71fb8e8fe7bf1d518dc57b7738b5f8352c357ed84bd1fd1d5313ca0b33a37c2762968ad5200b2f9badcf94feb012f8090a9c05e2364a1b0172c641400f59e6d1addee835b2cf11badde05aaa624f88d002009756ea42766f119aae766a9e524983a3fe95ab70d6d5025c45e713f9567ebe455e31e7c3cd1bce529b817b5cdf301ef8c1e6bf30c6e9e26887fc293463e9c1f751870771839bb44a0d7ccd861cae7949c69809d149c4f60318f122852b04d8d81ad90117ba6346e57ee476281e214ae042e0966a66c14c6a91f3273ad1c63502d859788f57cf48010fa0052bee1abfe160aa485ba5a148bc1b44494cca852530b9e4ad4e4846c488116d8e3d9601bc752d9d3d9d650880eea5d9c91449e5fdd2da356844056d262f6486d8c93483b6be08ce1fa6f1b9852f9d090ece4e90158cef841332356fe49d08798157a7f64d50a4748da99ad8e850f664b84ea46146e03ee9af0e98bec1feda8cd4333faefc43601ee6b0b70828e0594719823ee8178f21e970f0d6a13770ee07e21c0e9fa6b05f5958b200a869afe7481003f0aa240c4317e04fcc857027cd3ed48e7d7c3446ae6d0bc12d52700e5fe57d9e124a19108fbd89e3ca57e4184094cb07bc9671e06c75f2ce9996ac5e441d276b1d592341fcf96b899276486a97ea51399666e439dd1b306dbd47e0c57e1bc33121d9c07b31030452a29c5b8bde4440f87c03951cf6d818cab79ff444d6cd43b832349932d46f9c81c4c95457dbfded713f0e52ee9e29806277f1a7585942f14028644200e3c3d30749df5a0c84e06c679805d98720cf9ad358f2f5e2f4419ff53ed7699c580d48c87e4a0f8527820be8d1debcb274bcf4ce831ad34613654d6fb44e50b1915a37e7b3b1662d9a12f2af848f079be7f630680cd54bcd29d9ecdb81272c8e3e5e087e65e505c988fe3ba886825cf28138880297c9ccc53dcb69920d91530dfc46f4fa9d56fefe9e7fcc0b7eb4a27aded291545bb0961eed06fcefe913b3bd87fe6d641021a1539e3077726602be1374b12af1b3d343b6febfbf695a1846d4f1958b7a932bb0ff0cd178ba06424b11f6e0935339a815411f094aeabe0322244a5ca1b05a0ff85e6221cce6e1a416b099f083023d271438f02ef802f85c77b1d9fac035c78cdf81445210f29e89f39f37fe55f8566bd4af59290c091fd2a71aaab14f3cdb82aaafa851f004da7061818614c542cebac6973a1c98c2e6b9d5827e47bfa5285e682709c6bd6bc93bea45c9071cb64d59060cf413de74ee869f2006624a28a92a8cd10f4009041f4afa87d2aaa4940157ee9e8938aedb687266ad137c617fd6e0ba6e79784e4a3edf23e82d46b3fc8b81a94da78b369b2e54941d986c720647a75a9a081ce7b2f160029d838978d18694a576b80e1cb8fb3e2655e7e67482fc426cd13d266e131bb3c3cef5061ecb7a3af6d0be58df0c37dbf5bfc2f7dce1b5d35397abe20e9b676701cedca16c62cc308cd0900f1111b0cc921f959c90b85a32784b0d964e0341920ba5f4f0a4cd8a31513e8a7f951b4da4980750462b53e3cfccfb6132dabba6d27e05709cb4a3a1619ff6a942e79c831e1bb2fd9d3a6283091db0580826b5d365c4fb3d214ad1688c6da2ebb46625420548bdc9e6ee93903f7346e92366ded16cdcdb3f24aa93bf060ac2cb0677b4800b46f338515dd5b72b5a992b4ee945e46ab0bf4192282683143ed71f6fcbf3ef64c8e416f9f2ac851c9595091fa9abf389f3c9d21f60060c5a6a3ed05043a172bbc434c0af2ee8e7603751afbb69ff7d00594398e84efe6cc9c24986292ce3a6307e73d80ec22cfc244800a6b17913a37511dd2a6055d2a199aa6bc78f5defc0080c833b7114e5b9963f7574d6c9918a06a16b8ae593946b9d45f774b65e53218768d180344acf9d06778bf6debd4ec2bc0e4888b5a5d2b8b0c910ef4b0358f12b6a33f673f3bf7088eea86425d55011ae48dc178124204f6fcae76901fd4969e52c33e8175be560032ee9b5a4c5a67b920fb754f6b3ea0226cc076f0c4d3e97fb4ef8e6c70bbc57f56fe8f74093e4799a16e43e6590fccb82b2609c9bd367f50762bc6d3a5263e739ce1eedf10c516ce2e06e4866bebfde205f455cdd4de665ccf54f2b401806810e8a52533f3e21949da90c7f4abe4939517e914dc9d9a9e68090272808127ea465b1d21628644430d96da486d4049a47c88dffe156080ac8f12e62b058e3fde3f95f897de108aca28be3526941e26cd2700e6291104cd649bac01927cbcd6d77146b2d0b9d641cc991e7f00b034c14a251f3a3cc00a74094090b3e0fa51005cbdad5ce2e96f6301386edf504de55c12b47cc8fc5fe7adc194e451002c90512084eb2414e037af942fe892f7bd296bfed9ea77b3b0f7b14ff29ebfff9a42d14e29000c9b60da7d2c8fe07d3149bacb9ac46a1c6010bbca00bd4c09d542011aa42524fc03e8bbe6ab6cbb20f58f9c07780ec739dfb2b130165d7e9a3836f683328747f1686b0eb841139cfc96028e04b0131007be0bb6dd84403c8fdee377fb73791e7d009177d91c3cd858ceef6e286013158e9cf0b1824dff4146fc98b5b8fb51c4e138464e41dc1ab2be0a1b153b436f49988252a59b53eb7f996b959e838ee942e567cdec351c3f999d7f1fca433b3dfb5bf8feffd83bc510f45a021c2bf84d487479dde29e246907b792c6a9e39baf1f071349dbf57b00b6b9874061679e1bc2898f5802fd0bfb2ffc66407a5c5994575030df8a8fc61129e7342a85e030fda4635c5ac8775644465c4a2461da7699774390c4d49b12d30190a2ba140e62d5a800998fd7e3f45ed2f8998edb60002eddf883bb0503372a176af9ec9cdb2056af472c9e046d8a039f2fedae8a31e92820653f068cd040090d2cff1b82523fcbfd03ecafedbcf7d15fef5f7ff6cfc61f213b0730d5dcea8c1eb987dd5ac3ffeb02a0f908d60dd62bf94fbe49f6e2520d48823de9fee7591c384d18562da00579d9b2fbbd969882cc5f2660e0599042adf542ba804f222b03df41b2fa0030e4aa15d06cbb7e598c57d011fea1ce4b3e71a589b09799f4b0ea9498731559a0a5f25bf87a057fc170d749af48da81e73a3a0e48ad1f93b62fec625455f085d9c614c06d78970085e9f30d8dc701ada5c18fde8b56cc706998a10752c565acefc261f065b895a116ae870c43ce7333f7c91b61c84e8ce09a36d8d8bcb4435a2cae112f5529c6d3970f9b917aa36f4a10f00bad900e63b11108a2e47e1be9a54ee27247135603a59d72d2f21f4681796fd4a8c3c4660454a31ad6600dd3408335e584d413c4a5039acc5a8e5b30542a5207121e37c3d4cf2187c19998fed2241cdbc3ec6cff61a304f5ef1a869522bc281ec672282b531e7bcf16c258eff3510c001a5b9a791a5af4472bf0e0871686b66e9854e95e3adc34b7f827648590bd7713b9a5943225199408c808c808f47a6bee1e72f70eb97b87dcbdbb9077b52d8b036e9c1db9464458d1eb69fc5a82f35e363a13e43922c2bec23c72c914e71cd75cbbfbbdd75ebb793dbdc3be5a075ea25723225e5e8f879e4b4dc05c1be914344ce6c8c9bda3a1903a5a05325022cff772b73421ba359223d73672594bba028f75966b4a7ff217927d3ed733e773b0b059dcce5c812f3367855c899e2053f3474e2692713052b79d684ca5378935b60931d882e5810e43890c5848ee0b6135c68d6777572678b43923973562faf9f688cd71157d4dc32fed35ef342148bd814020afc7caca1676dfe1f75c8774ce6a839ab029744f655a9129e4352ec9d0d99ba4916b4c1985630bd98628ccc00dd26b90c02e8138fc2eb490160ad110d64261f725ed797828f43cdcac955e1d0aed735a48d3bcb2b4300397d289ddb5b0fb92a6692fba587aca2a65c0eb10c8f382abeccb134ba9c5f4f24129d31b8b288acd93d8ca2c9cbd386f3f7e5800f0e54b10b4a228c689a226ad63fe686feebdf65a8e1b472e3a728d70463a2325232223d828679464f4a297f3d9cd122853f710577a516cae462e4fcd1fb9b6d0b364959a80b93785a76f094dbf8558074b81bb59e0886b90279e419e8fa19003983f22a25718dba055b112641c0cc9b3595b13a70743d7659d5eb24ca6378935057092a3c32abd1016570a43d16ca64e34a62f9dfc4b6ffa5378a2397d8bbf498465071f14f1ab246223f6552a323607abddc6bd1604e630c618e3d2088ad16b44241ce1386a3e188e5c33352ae2a9f9e3c88991bbc1f656ac4d701272e5f5c8d46cd0843faf678509dce32ac9844894277a47fd55cbcf2efb2672b3b96a11711232356f49c4dc6ce4662f99637a517ab9aaa314d94af4fe04ff478b24cfb7af9f2c6badb5762b85ceb2d65a6b3770fb52585949c821714cc1ac972d07ebc4141b6ea0b012f1d6d1cf5d8f0bae09f783f67a5cc5592151f3399dc919017344e0609dc150b29ce3388eeb908b715bc8f920e49cd4e02c50e4603335b714cac0de21d73c1c2c26655aba0e9b009f83713a73d5acee8b15148155537a0ff410bcc86121b93f723b5c2c4f6ee6a839db27b705da27e3e0220234b14271948f1523979479c9f347436e783538cbf4a5f044533a7de985b0c0f044037ecbb788352ddc29b4add0ba66ea149e6858fef42ca26d9db63f3dcbb784279a14bee553106d8b78da9e4514f9fcccd426d2e02cd39b44d149146942789a0b8b6479bee847389e29268a814ca18ddf422b8a8962d4270ebd297496283657f6258a8962f6655f21fba6b0b2bc9e3cf17b3d5206f4f3b71fb9599e5f7f34b1fe386ae27087cea3d7338e8ad80885417a8d0cdc6c9d80470e964b2051ca1cdb83a164b54fdefe3e0faf5072689ff975e6aa0df4436ed1827cffbbc09da675b8f36646aeaee302bf5cc5fdb4af28f20e2e06f1402bdb0fd26b64fff9a322bec2af999aaeb902472f57d1cf7922632379fe383a923b73cf95f0abeb464c2776074367e1d75c8d5c178f5cddbd9dab45d3539649acf100abf43cdc3e1856d6c8357275e198929dd3c4b185eca19ca9ce7fca7c5291b7b4212cc51b0a2470120733769cb89c18a95f7cad3c9fa316b73f0b288c5940b120553fa4ab7c38ea85d631bf456badd5aca6518d5a5aadb549acbdd329cc5ce19f3f5c05048b8d3371801244a2e6b70e4b6dd850c81cad83f9637320bb5920d9bfa9a6695ad3eebca9b77639dc3ca695b473dbeeddfd89333d3db865d0b02ea438d332d0aad76aab7577cedd2b98043642081cf9040d0a999a0f6a58e3bc17b676bdd80598c681c11ae70b9b481430edade66d6fdb5b6badf57afdb4da16703c48bbeacd3073f763975bb3da776190696d5769a55abdf77afd567a32783f8fe921fd1c204693ea6190bea128741607eab4506e2146926c43cf22adb3a1ecae21edba4bf2f65eb1ded6ed6b6ea9f55097acc05ecaf36b964bc840224b1e4eadd785bc1ed47a28d43029e3e5f95ca82b9d812787418fbb50e98ce9fd90562891b7efd0b3cd928a1cf8e493f6a1d7b2e71d72327b5267f77460e0b15d43c21a47cd253c315fab55bb61677f1440962d6132852fd875e388ef028c0b5205843c7f364ca266246ad26cadb54ae0eec972091425b99f9b1d6d4aa99dd65afbee757bdf051ebba72da5954878573ad93bfc4701e01f57c8f2c55e7d2f3fb171646afe14a5d4d149fbe38bca7f14f38724899a6f922aeca849d33bac28a58eb189b8d83812357f925cc8f3a77477399176d25df8903c1b8a759fddb4f6fa77087295bb2804a2594864701e3af74bfb49479d5a4480dc420c22596e214692fc60e0b17b6cf7744fb7fd3a6f000b4630ce5d3f511ce5d47d9eb8cc674e1ce5328e0bbb1f05814797d5eb515cd5aeea8fc9fe73889471792fe86a0cf01f4779941aee0c9f1d562772efb2e9b2f934f497bf464fe2accf0778ec9fec6fc3fe89e237ee9a8ee32a1ac6bd94d24beb74c9948baece85c4ce5cb90be10947b9a3403c8281d2f8aef6abc4221be2b8da5b3b8f7092ce3979e4fe01d72c0944cab090e7e7a083abbafbf95c6a0cdccd66b98a63ddc12cf5048f720664aeee96e5830ff2bcf7bc8a93bd9758c4b548ae7504b97e3542eea040eb985fbf12f1faaa3852c6fb3aabe268c3162db0f63cbc491e6b91fadac24aa452c07f4a24e40972af06cb0a7d176ed972ddd75a6bed6aad5dadd55afb321cebecbb3048af218e75966bd36059b3e3c2711373a8b3ac09206b4d885e137d7745218ba7e6cd37945903b71f70456541fd439cdf25e00eb863c23dbe0a43c8ddb9b2b2b2b2e27de59328ed24ede6c5a08d4ba126eb811b576017fbdddddd9bc2884124b619924217d8a18037b0c02e8e945be94a1e1832896ce053f5421e0240539be4044353ca77f2d3a965fd4ca18d70ec523a198eb8a565b6b4784bdf900d1b9e0c9da9cc71c291c2bc2c2c2d2d2df4480175e3c67f184a1e98175a9052b395e2c031bd4160cc0c3dec1a1a85e4520a30e00dd387a307f28d1bff61288ab7470bf8bebc48008c42326d1df26dfc2964e96438be90535a54089215aa3a7e4343f7f86dc0efbd4da824dae0d09f5ab4e1fb90e8f17b5fdb24c261fbac7ca16e45b23edc9f912f47a76fad7d7dc0fcf0f1e3fb01cfbe168cd639b59bd651dba0cff5bd3e9c962b508bda28d733b4d5aca156c8f3eb46ed08c5c215305bd73c5cdb3a50dd5ef30e3f21648ef97836575f083e25f0cf77449e4f3fd7e702552c6b1df3a7a86768fbce3b6040031d90abcfc84ce9d03bb093d6f119f11949b27d86b89e794196fa8ccc9574eca4e6ee87818705d963ec24cfe7b6104541618599e1388d5a2cf27ad4177932b8e57a669c15eed0a9f927a9469e120a222f88cc31afa883cc3145a3e4c15e8f13c55e7f7b41eeb7d77e0a5d98d5c1b0ba776196b785befb1bfcdedfafb510b5ce5cb18848666c3c08fefcfee97972d1fb8bbc3f8935f8bdaf098d2d3bf5d83ea7166b902c1be2cd0de96f54fea6f4a694bf5979d0fbe93cf47f8d431c18f64ad83c61cbda47ce940ae9077ff735a20f7562cdf7f84155e01e74e0a92102330d900f90aafa724692a49e219aa50e680be576418d0a634429fdfdf07d3f90f0cc552e7e2e2c51f33f571ef12ccfbf3af7eaf44ecf1a4a2be924ddd34f3a76bdbb53ba94942d04e57befbd295db5bf859eb995cec32032c7fc99b9dae103120a9ba863a46d50854e8b63cd53c8ce8154519194c7d60125d833648dcc5510999aff19f960797e46749039e6df26aed2745aa775f2d5a8ccd15f513b9f1090df500617211499851153d83a6ba5954e172e1060d039279d945a1cea732fab48e91955a05135da944e3a3bd4fa9b01dd2f736de9cdd02245e3089c4ae6af600559de074f767751cb0b59aed4c598227bf6ef5c64715009a6a0f430388903132443a2fca431a446b9cf69dabdf7de973ef3de7befa5f77eb7fefdeffe77f3b95c05fafbdf1029d3f9821f13f97e27c8f72341bef7da6ae46a57bbdad5ee73a070fb1f9d41e275148d82b7909bf7ebbc3fb69fa719b69fdbbdf7fe36bd1e9b781d75ff82c41a73d47d1417b8ef4b1cd7c2b8a69ce6ee3e694f103baa4b3dc19fe2ab1bee817856273df72d4a0671ad0cfac9209038cea75d8804f45cf88387386ccf81579ee1b8bdfdf618d03458d60c3771e4c06bfe7d1fe74f0ebcb2268eb6f64899a2dc7ec0597c4dc107cbda73564a19157785cca1713c33a5ede0ac903ab44e427194f6e3286df39139346f556333a5bdacb299f2c12317fb5adfcde7fa867c48a40c7d9d5cab919b836159b3f5861d06914166d0ffe83c65e69a8b45c1338f5c2cfb87a719eefbbb1049354d8b65ed83d5253889637c691a43ef7021d23aaad3d6349136d5b4165d88504ea39f6709f27c072f48db40976bda9452dab4bbd6385f85c4185a874b2cd42b972c44255ee8eb28a54ddb7dd489bde33ea76def2f45bf854d7cef6113f8b96ddb361cba502cd14b21dbb66d5b290af63c821ca5d40a1e34e1d1a2826251b831180c0683c16262603780f57579bd5e2e2f18cce5e5f28a8909e500e5eeee06852e50c81c31681d51b8e824f154832ea7855c60add6e8f2ea3cbac0babb394d269375739a4c26ebeeed79782cf6f22a6b4e1b437639ad070874f1056f6f2d936d9b73d8cb23e8120b59138e1c13ba94d2a62ddb71775566f7aacc5ce52baf95232a505670565c2b45547e2e75fc752352a7b964d12b97253a36572eaf1943eff09fefb2c15a878b9abd2e447ac7067359a2572e346897d75cb9c0e6e64224cf77777777f710159a648ef92e34e895ecde91b2d1a9f92c6c3100533ebc8f979cd87cc9017177abd5ea06392736a7722f1736d71ed7a07e1c5616085471ae8b2c1cef8bce0bc63809258a1839e2a9f92f4fbc207979c10bec258a171d9597cc315f5a2e31979794f11b57bd3ce128d75cbdc070e6ea45e735572f3b33e583dcf1e284d4f18394797141eb2547c65e72642cf6d2021fdc4bce4b8e8fb9727181c9d88cbdb440668494b9c46e2ccf7791cd075d642e321718e772030de40e72777790bb83dc1d047281b9070269d7530dce899a3038429943d3a8a6d28173a5e2c3993a152279be49e595a70a8e154fa44c6729c342066d30474101839e5be1085699ed20cfc7c2678b9fec452bab289139748047151c16ec9a2b17d94c81345896e85d6473f5d27259933cb2a8f8ccd47c91a83243618147dc1a55667983e5895d7808c6d960aeaa3bc09456d84b0e0d2b8b729a46bb90a66954d334aa691aadb49331d1e6689a885e0e44e916ba80e1620417272e3397279ed2c2042840e6980f0a17d03ae6df90bb513a011e6db8c8648ef9a527e0fa2eb23cff2547caf813ae4a80a3607335a3335710d87142ee98e1c505f3e74b4e9e3e5296e0b1c262b83557d3855b735559f339a77356d8112f92270f867022231e92e70e1fadc3870a19d97ba9b0ac6286e4016ee1580a7692c853c7883c615308181979beca13747cd8591142a333346dfcd888e2aa6d8bc2883c5f258aaf5e5a333545afbd8840887c93670a15785499e56903ab44c9f3557c5cb583a6325381a2f2e32ad0732f5bf43fe2904e4ec3adb95299e1166ea9cc384e65c6a9ccb490f83d657d22edb1278ea928f2fc9716f7d3cbdc8f1ef7d25299a9cc386e0b2b11dc5d3953d753ed92625f787a093438c981a6dfcf8404434412876442822279c4915bc891e7bba7719a168e54b453c4617aae63d7a75d451c26ed06415c8da0c3491c63e85bb76f1d36013ee90a0c8e88f8eaf42d3f8e8a14c0f457850763662a0655b9abc2c7b80aef255107100543ebe862e6cabe3c2ebc1efcc236e65edbde9cd7e37de17dd14be4994cea982bfc922d927133112786f70537f37ada7d1bb9b66de4da386b6d7bc8b5ce4390572963845c813f4749e439329227288eac28858c2191271538f62544f501dedeb3f772e1bdb5b717b93a6b1cc01238e32816249092787d685ac77c4ebcf7de4b4747e8bdf7fecc5cd9d74c795c783df782a1b36ee5dc7be3621c4fad5ab785327b57ebc5c0a3699e9a0612c940a34836da9748566a31b584a258186bf9d39b4ccf228a784ce2c9ffe42d73c5e995b5ac65df177a0f559eebf649ea5210c944322c93c948ef2251cc3b1f3d0f577dee95701c459142255d81c7981a03fa59ffbbf0d6289dd8b3ad966d75e71d3bb1dcd79d20654647e09374d4387772bf10969ca9d3cc6dffb93c2e8ed58702da0dbe9377e6eaf2cc547f7b0cc43f31dfe9596ca6baca72a8b2dc6f81cca6d081871ab1877eb78194f1b7800c235b60268185efb45a798a27ea24dba061b76e5a435ee0524899f95d3fc85c234ace413ac9f461b1fedbc4555feef614e00cf056a6a205e6d3f77ef41ab98a1698e2e947cb20330e394827795ac06bc571144e117fbda23072a4479046f627664e0e0c16853fe1aa53eb382a096e25b1c9ed883b182236694bf92038c418798ad33b4c7194c48263f2454f0659fc432970bb78c22938cb9f1ea44cc985c04624913d05d9939093513ca40ff90107484276d415fe3c38ca5f9e64cdfe3551b28bb27fe744e1ab56c2d36ab57c60c9253e4f7a878c21723f91bdd229a1643f8199250657552ab2ef80d9a538b6cb7990410a21bb94a13d579a5823ef050961f573331c3d967db0ccd13f051ee509244af1ce13cd7dedafa88972cab73f3a15421d4402aedd27ad2270078fb76be1060ff6971e0e47494e04727164d91e470fefbaeeaabf6717c707e48d092ec3cd777a3de453eac960ab77ada5b787e6dd97ece25801ad0743b84250e4b6f47a4821b9b53802893cc264d9f575972dc11af4532b2775af3061cc11f02824cbff7b9990298c6f380e834cc5148ab128617215c1176098500a3ce9cc3cb5ed0e7c5e505fe2e0ee3dd1207aee9908a1279bb26422049fccd1ae86a227da806bc73d280cfd0cbbdf42fc77e3666c389187e83feef1534e871b662af4ddfb7bf741fff7bb90fb50d8d52059a3e7b8f66ab04152fffbfba070fb1986be0bf173a1e8fd8635a4f1443cbf1024de78d4e6ba1045f4dfd37721ca7d6c4170459108022cc2cc14ddbae71ef4f33771fb90789fc7b4219ea97e6f76cf796803aad95eb481c453f5b7994f23f21781c49afba1afd9a664dd966bfa6f6076db49f34297b3bc0f8537401480e5bdcb59a1d7c219ef6d58431b262bf4a0d046f4a0ef424eacb901c200acee5dcde21ed7b89ad5fda9be67838446249e2ae86d4e757b1ad18368422f126bbaed79ccc671410d1c44aa913120243771aa41b2b6af913bac0d807e03db4b56b3c6c6c9f4416d84fa86c3491c9a80d3e323c36109138cb846851a3f0d85263889c318b03074c288c1b0d36a5527748193ed73f4ab7746b48e1329482277f7f5baf7625c0818f7a1f3382a7afc3db3ef20f041aaea5bfcf4ad8c894024e5136a6856e87fae66268f09beb58fc3ee6958c7c2d69929fb336ce23373d5b399b26fb5c8f6ced96cde8bf14ce89b0c29655cc8f6db47ca48eb3e64eb42e449c37689c41a21ac6ecd947dd538cabe1776677f8517e0b167b95bd97e3f71d578038aab4619a567aefa992bfaf6ef0d29533f1ceba033eeced6c38554cda942e631533259dfdb9dc4cabfdf3ba4aab9d8f9b7d7dacd6ef7de9d9ded5fc0ee9d975ef5920d047b47f7c87a49af1a093da0e72f5fc297e825d9c518a963f68e9c89c400e24bf8cbddddddddfdba7badb53aad4efce0883cf4a39f1e13f5eb0b9be52392df4ff47d9f5823840564a65aae97d7ad000596f5cf4deac65f3932b8e97a36579d0c0a448842af2155f687ded13dad4362d13f5a77a9dd6eed9d9d264268ca97efa1028d84eee91d1b903ae638eb9e98181829659483bf9ccc463a00f157ffcc727023a4d061bee33c29dfec59827500b2c21378ec1f207d636444bf2366477391e7cf9d9daf80aca50d6ac1aa813b3b365ace0643e6682394d14be858cb6413543bc9ce6b94385c40aa68efa040ffcc7e661c8f4e42819d9d4ef2234fe049aa7648d48eee711e3315f31e77c2a1e871299c67a70b7d17b6937e92e77bfb7801be5928343b952570877ffeecde73efd4a20df84362efacc0c67b5188238d46a1b711bd67f37d8826f49f0dde8b441b42ff89afb2041e7dc75f3b7345729d3cdb478f6515d15f29e2ebeb1fd14ad82c7fcd9e3dbf570a5c30226564ec3a0105a8223dd4448a0e2a3245ac11f291c276cdd4cc99296f8518e09db177f2fc513ac94776421f0a25ebe74ae210f573f5fd7ce9b9188141acc5fac1e30032f40021256545ae80fc356a2ebaa7b9983289922deb1df7986be147e67b11d7f1269ee3518c46a3918715e03157a384024f193120a0cb5fae84afc05f6e024781bf5456e44af78fbb7e806839da13fef2d7e484807c02359836ddfb4f7f1bef67cd18370d996c844c216cc2db08343a618cb1582324861f30f756e49951e1c3146eb0b4a810e217c3efc310fc0f459f02e96f84a7ca129e6a4bb8a2422859e28d50b25208256b6686fab0220f0b1a9dc21bdb0efafe347a17667d0f3efe1bd17fa6506854ea4cf8434f833ff4f643628de8bfaf011fe3cffbc293fdcf8a6f7ff44258dc3d5d20aed2a15f7d843e0fae924a745c455d8d43e95fcdced0509ad0e39158e35991c6f49f58d3bde94332537a10bf8d279eeccf0f7de845a14d279e68981ffa931569e687ba138d3f7e3f55b106c92a8937372bdffde86f54f07f1f26a98c5256bad18de843ffcde007a24328ec9627594e4121d7455aecdc9e6db3eeacb5d7def62661d74b19ebdb77ef514a2fbd49b01899ab24a97241a25c18f1f4f0775dc8a6f4a195c7df848defc26f88a7666afc88e4f9dfeb737d38bef236a12fe15ff9f95efad0d3ac3cfe2e7de86d5879fc9c4a111bd377e07b3fc1b7e9de64e33df8a77e1ad3774f03bef7d23bb54883e9bbb7017c4f468ae1b17552547e8ac6ee972962eb90c43b126d84cd6a1d9dd6d9ac8d1d2943858d0702b34e3fb68f1579f4a3c99467a391582384c5f22bf82039d1af41b2beefa15da79ea76e1c958671b7dbaef786310c86d96066eac70fa9fa7ec0b339b3d7dacd6ef75e7c6ffb6661549dea1d5644359ea97a8599b08952e6a01ba596da6ddb50bde36b31a1571f112d4e74bd751a078d836641d631ff332253f37db66ddbbc5b4a3374c041eb8040601e1d665ac79469b8fba596d6d661c6c7e70798845530f4523ba72743e8dd0af211d13bda07a963fe777b04e9c7311fb56a52cb9c871f7f279efa3d9b538ba799eebdb7a941628327dae0efde46b4097dd7792f126b4cef7dcdca772fa4bd1d82fce8ecbf438ffb33a2975ee9032defdf229eeeb77c27d2a4fce853c4d326d2907e3e493c5df1447a1b52def43690be85f426d2a78824b1e6c335a21f8d300bfe9e44fa4478a5f59166424d8844a228de6ff47111167d08ccd5cb538a5d33450120672e54fe74cb058050f42fe1377a51850f4f350c4f557a2710875d73d52f17c699f144dc12453f3ca21f2ef4be0bb7941260fb37c21bd17fda0d59c21a3ad503182511bef0c4199983d22073d0e701f9f61b1736f1fd8d904524fad3df7c3ffa4d3c81c499969414f1749fe585b0e8f398ab14441bd23be9299299943fddbf8fc5ef59c49a9168437afc5fcde9f1db98fe7b910d121ad2f7a72bfadb987e5e91667e29372b7ff3bde86f4a7fa3f237a41f3dfe510801203d84ede281f944333cf8497f93f2a397de8c48b24429234c923e3c26219c9792c0491ce3a8955df648e992dd9db877e1734876afce11913f73e6eac2c090d307b9ea229e9249199a0390fd4147dcc9c8ee4a882289ec9e1aa71131de85cb5065689a783138049e797c6b7b07287b300c32818bd02b6a62cc4cf9fb682504902bd7999e837e8792477fa2c473205d67ae7c08dc0d4809b6a2f378cc51fe2927b0f7ccc7380778f499f6c455d47bbcd2516b0aa9ced5c0be4ce9dec56dcf3d139d02a9d27efbee2d0b12ae0b65ee3c6fa7a39df6295d0a89143a8ba36113db57fb5a0af71d276ab18909f0947dce29407bb02c7b7a1f33655f76f42c61ca9f42ef6d842a6f0abb2f81a3f0a4ad84274d7a92c5f998abe6e97cf0b40b08156f90754d2901be9f12de6ccf3dea67ca0a2173bcbab043c0f511d9fed625c8f66f38c6b410546c979692f25dcaf47a9caef6d20b425f7b1ebe037dadaa7cca53f174c5196e7bfb385073b589a72a229919bdfd18f154b9a74979ee2f4cb6f8666b84b4df3852e6666b6ad7e6448c55019e3996002953dfbe02e46a023265df5ad945f672156f48f9ed21e03de9b9d293c2130ddb97fe54451bb62f9d6c203df8a4074b4f0ac113023a9f8264cf329f6a78aaa4f0549f546b409dde996957ab07db3de96bb657218935a4ef386ee58a34deaf88359d78d23cd1c69ff4352a628a6883e4becdfc6dfef634f337f1a45d91c69f249e34b106c91a8937371ff7db4bd6661b27643d5168ff0bb776e1db2e0ca3fe99809338b8a6d3fd5fdabfeaf48e298a7eae4634735364ff1187571d89f2d973d2d92e4a82df61fe3d3bca552e57d682bbbbc390fdeba4d327a5738ad79b5f821e24b07fd5f94cdf6b9dfda018701207262e98131d273d64f0640cdc1c44d40590acfd587fb43fcea7a04bcb43671e53869a9d9db5d6bdd6ead63e37a7bbdb4a47a9d159357b1db475d351331cfd46a1d13cbb675b4ae97c396beda427c511480a4700b37c39299d75ba9d5a6b5dbdb5ce39b5cb8de04e5aa7b66d9bc31083460ca65645ad26cae7bcf61850ed0bd40b31814648747d7851d7692c68e09b82c637ea6ef7d00c985b458304d22ec785762fa5d7250c577b90d7633e7695d5b4a9bda079301b675b70943f1918c7ff771ed55840479de18526a537a5defa12345fcef974ce30c5aedb11305a8377da6a6d754903df2c990461050e32b09725932092a8f003bc65c92488183009a2892174664ae298028bb26412c40b87141867c92408970c41b4701c21474a293176ff1b3ee7747797ee2ea5942ddddd09ee9f524a09be0f6e29a57435b8b6f582f02733dd140ec048802c3f94f2eb0d73d52d5a69b57656da6ab51a4716016ac994bfec1fe4cac71023f8894add2073f40d3028148f981b6208f0f20d61c8c71234e529764bb3e183d576b75a52468281f24bdd884f6e10250288186c1b1dfd05f6c8a2904aa041184c4400c6125e1c6992c78e5da1e5b1b5e0e99cfac30f42d65d7a6103349090810518421471451efb75a3823cb69123b3026390b184144f663fcc80e53cc8653828a488264400230d2f9a6c2105cbadc8fe384976cf228f294d586e7e9029fd8ba364ca04043cc894091025d8b142de5ef37a6ce05cb9eca60519f4d4556106c1c0751fc02398a9a04f3c253328f2fc20cbf77b5c578df4c1a72c8e72d5afc607c1dcac4e236bdf436b65eb3b3bb115dc083c3a8f0c64f115aad56a7d60a7d562f5d3f0ce95cb5cf601579e4f5df5429e5f464c8641812ee371d508faacdd48f609a100f78da1edc38f3824c9136e9860c1119c1a2b628c906c117dd822d367b9220002d8a7117d4a99f850c5934cdf86d783626bad3d42042a6da2ad24327dd0eb41496540c1a3c6154818e1a43229c28751698b359464fa2b33bc2008683421044aa4e184254720c1c1bca092e292c72e458b3cb2f880001606205869a37044b6360a5c641ba515458b3498c8f66196a4f145b66a4091ed92356eb27d92d7c3f20c51b2b56a449d64fa9fd7835e1818178a1843e7092eaae8b18245779029a596897dc1da97630b06c8e30bd9fed40095ed5ffc53846c1f6441b6fff60944800213d9be282626ff608a1d405163c70432f0a22a8181852982471819f27ad828644adf3381138ac0628d58826d950e9c70023a842cb2ed41b62b08018d9c976cff8e200dacf564fa16093ce217cea041b66f871823066badb567b832a53c202284309634111b9246ad62882458fb05b636cc81e4c9422573536881189bc133a4fe10c14b33a38b22e80f235ed60c3146307fe0ecd42566a87102c7a036f394f4f951c40f68022588b82162c81228332882881e22649e9279bc1583320041c4915491640858bc5481bb2c9754d103852a9c3c514513d0c037cb254a807029821222c421609be512254552b25cc203210c8165b9c40c2379e474727f0b592e29030ab793fb4f7f9a7f41145efdc898db836558aefc67a656373623575576635313c73bc58e892338c3e7e651927942d0c4519727e6a896c01a99fe073e7fe91373c0132df0a9becc9b6cefecad4e3c254b027671bc3db97fe6ea5a2153fd3e680d21f78381f3335792d572e589736313c4f1dd020a05136b82f344d7d1cd6783d2a2dccf19e19ef055e7e06c515c2597943184a5638dcfbd72bfc01a711e379fdc4fa7b74791dba5c8fd3dba0d727ffb14b9474f92477742eeef7a24f7f7588b90fbfb0ec9fd7d995c2652a689ab2a155a74172c79ecd89386f2421e3b763384486e1de4d18ba8f2e847b6edc67c62e078dc21aeba3817e7e25c9c8b735f17e7e65cd8d5d98aa0b5345795c9681ce4f57071a61e7155cda93935a773e64ab2603a01a139a8548df6453d2b15d10c000020006315002020100a078442c178344c1365730f14800b718c44705636138943510ec4308aa290310619430800860001646a48a803c14ed500c05468f837c3d47226719493c9397ffbbb18118d88215cf1250e947c270345e927ab7aa18b9f5c481735a3e2c31a04854a86eaf16b6f201153c6189cedf1c4ecc1951dfd8a46bbc6d21dd080a344cdc47e4fbf256b0de53d91078770e85942dbe8b4770ef0f45f0a4383f5228229b9a758a6b23ef26ed768ebdabff29107cbdca8dd815783da298769d13d06b2e3a519a5d02e4437b9c3cc9aed8b187e0dc49521ae840205244377ff4a0420d8e773f7d7fe113e5ea1414bcf891f3e5b2e7d930bdf7cc843f3992e59cfee307732c89d9a3aedd93e5900ac3882dcb5beb41c8eb6a6e601db173ff165ea9b3d7227a4a02541197799be64d6d33c68dbb282b6104ebc3639770705059736da1b2dc6aae45cdecc6b0fb670e0d942d9d438e3e03c8cb3f3ca444039908c3cb6f275109d963b7b3c71949ded5ab0285cded3c8461d67084872216cf15c8367c47d9ff4b4596de56171e515228c5fa297ea2557f2ecb56b26556c4c15af3c166e6cb65b1c1f58991eaa7c9d8f4226af9880b33a799e7279158187b9ccb493778288222cacad7a1196c610764f9e5851b699d56c7763c9c3a713b4ca6c9d849d7154323de9d56c700b54253d82db0609b6ac4fab7b5cc8ff2b1c2c07670fd579aa625e1bd487695ae349a80dfdef0cb4069e8dfe2e6ca825a08424a6f8d2e5c5832b09a11eb46009abdc22b81779ed32679baace2be60af8e21440c6e3835a4c40d6bd5462fa356d9673d0980116325c423d732d0a37151062040ef79cb19173f1ba96b11c58429ca724ec7cad878c3c9c951f2566c958e22fc88e4943c5bdb422c68543ccfb4d83ffb886b465b0b3a8902670baf342fd896aa3c8a1babc9ec9aeb3fdf9013d8d163f7b86fd9b49c09595058eb04c8863a371d8921f1002a58cc152ddbe6f8d55354b1738cd403461b8b1736299e9dc7c45aaa7b875334800ac46a6ff842b40776c791b91b8f56eb3b8ce15da3af6cde2e6c2c03ec324a507d38fc3ffca8a225bc6053859c7003d4be62903bff70b125dfa6aec337704e2d2837e68300f39692058d485a3cb27fd268a5b09ed82c1c7da652fb2db2ad398f273702fe353821c0e23afae8e20ddaf26615604a94c5fd60e23bceb4990352acdd3539a05376c4c66c79bed344586a75daefd42e3728aed4d753e7700a51977c2ed8af9255da899f3eedc43132c987d5290f5122597e2c3f4236dd8cd07c190214368cc482ca357ee0121ae2c3237c7e199a3ea0284cac99963958ed22768cce7ebb88fc0a8dd30439a569f71c220beae908aadcf5c3ae6481361d9e5d0b62e5fb03ea3f35a752c80e8d6d7c2f62e49440eb066252e5c729dcf1a2b87c78789b0c5ff5d51c57e6c0d2be770ce866d2dc8f6471f2759cb1faa99213ed2bbb7262cb24943cadce890893f61a4c86d51decc8600ee1aa2e0640604390b943b6431aef2583205a1d29661beeef6d6bb7fce320bf1175b7ab187d27d1141802975167613a15627ceb2e0fa1792954d5cf85516088b1c318a0e2bf91b942993a0b8be4f90c7b582af5a663e96995f636681897acfb1afdfcc6ab982cffa8c8ba2a97bd21581983123ad52c26b53cbd9f61e4833a9b0f8400ca632b55780781cf9a2dda71b4c4b2f120a694148d4a226e533dd01ace52466d2a61c9e1a8de3eaa38f66d164ef108e49a7ec0fbf30b7a81ed7594bd3ef4140d3ce41d6a54156078635360236ab580cf10542ecf96c991e2716477b7cbb71bed97e5f2e8ddd7f09bd63516f025a77ecc724488f0a9b85c220a5e7b08fe423e85ae957d6ecb08b2832e267ed9e37bb209eba22ac88654d655d316619b08851469ebe3598be390d00da77b17ac5f9370c3821460e53b82b842dd381f99fbf95403f422cddf419207a897fe0504997ed83c8655708b28963eb8594e9b2e9741d82e59a257668ce8963419b3ce038d81a87673d6fffe701ead60593842e73d1b366a7d1ede464620ac8fbd976b2dc2bd512a326665c842edb522928bef3e25169ed24e510ff91704652a8676be6028db262f22632971e4540faa892558aab8eb8834c3b94412cb3d70749c890eb51b5dffd9ef23e811e79453312bd0543f69c2545456020d5df71aa5eac8bf9284399c26efb9d8b5c63e99e93c106021c4eef08110e671c642a25955759d8e842b63c2125f3660c9098fabfc863b41aff3f3b08909d569c975439d39246c92f96c68dae72cdf5fea0a50825e5803d78497428cc4b8cd2c2e1d745186a47f8950d4b71d3c4e1410d337bac69003b275d0dbaf1e00e5da205e566ed09676022a8d453a4a24c79771a03f5cfe419205a074acebed9519865e65c743882cf00b1aad31c628c6076cb9be39b1bbb4c23c93ad8cca6a7f00ba4063d17a5126304ec6546945fa1b1e0be8c110339d98abd1dacf640d5a9cb95c98200b3ff63b3d10a6368efc0a0e69424956e1c033254783e03067c0d9a45b180bbfc59e756a4cef89162e7320d873d4d170441347d68763ddc3542b657817c69ce2927350af7f9bf78b764d30d55e80e251ebf0322b3eabe7d486ae41d1c11a6c9e39555a1d5f5f8d364126b6a55004686153bbc8a061dee1610a6e982dcb0dfae7cffa5d88b1e674547aa9509ac1679a826bcd9a3ed337914eba5b882cc0e71338822006192f01f806762bf13f6456e6dd0334b5e4d7b33d95c78638f1bfce39f1a78bff38b47a14f780ff8fcb427ffb6130885e6d895941f19b60426af64ccaf8eb9b04ce130a5668d30d4695b5f3208c727c9cfc0a25a4e1ad1882f08bd303fd647218941078453259ebc1a987c1315842cc25fe5940458ed857444c52a7838f54b8b0d167a0bb687b42a087296e6c99bf39dd8d295060e2994c38911866173d20a297d4c199d4c9c62dc9cfc3d2d922f5b85a8834efc97d170cf8eac9c1d3c0b601e6dfcb9dd8d8f61c1cd11c924f854d4a13573737efcf5c220f7559f03bc2c2983d8320703ba9f1c74a0e14cb84f9c03cd7061ae317739f608907b3935bc84ceaff4c2a5490e0883c4168d4718fb77cd34b77bc2896d5a9b8952912abfb143dc4025a4ea2ee9e101f41fc3fa6c28a7fc52b1f7060c6cb3ceddd42aef9a87ae7bc82dd392228524001cd75dd87961f8752ae515f181fa816d06eca77686fc1d428301171e4e45a70695948e426e95a04b49eef4cf5a06129004349fc00ba9dc288b99aecd84b64d2faa00e42610b2d958e84997ebf7d77ea099951f283ff5e05fdca2d44bd7719c55207d368a3eb841a14b5c85756e459bc37c75a1ddd2b3b953024cebd7a45330bfc19bd21bceb2278c76af8187df400e65720ba2c20dec283ace3e244fb324f1d9088b692a3db7bb0f56bda748a723d71e2d3bf768b9f8230340c15378c214e58494e06fa49c0c122d2e2c246a7c63443503e5ce6488a13bd9b48f4d6f504449577b9af415f64036098fd884985ff973697bf40b32a017c8d9f61467344f67e3fd2a76c9b014a4ab1d995b81b2d0696cec29b5d4fd136e58ead562fb88081f7fa3c53c9690ab6729c7d21e1e8ff301052bbe18441e3507989eb9c0f384b1d4a052ef74edfd0fa9f7cf6e4cba0bfa1c83b405524d8802dbf3af215fdb172a2ddf20479216c9b9606efd95ba63dc8e9fc9b1f3671e20c68b264a748b57fce376b99dc53a04e85b4343145aefb01926f566ff0385bd57d9cf6a303694e36e7935f32d26fc24832526ef60567c4f662cfe78e1e5f1e755284f444c5f0736dff36cbc315072da7e6318a3f55071da70f25f41900dd32c8cfd2735db88cf7c3431179308c1f3ee2a273782318f000ad2e338e7070455f53d401db05f5f4502c5a6c2e58ec9bbfe76057753368f863b95d1ab1ec75a7833a1f7e5c000f3c4628d2b2bda16a41ab406334fbe54d6153f58f7c8ea77dfd88203cb17cd1d733a15ae83d7016d83b6708d6bf1646f0fc512a90ffd2bb198300eafb6dd38b98bc514878614299bd5d70b6167977f92b2362dadf311a1bba689020fd18d42a68a9451c1a9db545dc22a3fbf32f3371ed508fbcaf234130a81b558c5b3edd9e995bd3bac578282ee99f5438971c042408141c23f5a50f30b1da8178e83332de05e9d67e7121f8342eceb63c028b73ee4d9d9b7f74012224e57ddeeb1c11d04399844044f520f43a804fe2c808b525c4b3eb061e6134e59a8e2c7b2cd1c1b3aa7f88fbf3df6c801c2a3ca5c412046f29d24c1e6afade2a0fb1e0fb8120625692308baef9e9220e42c50dd27fb925ad141f1a21c43cf1351911915af97c6f6d139350804279136acaa0d39b4d3bd63efbf840fdb61da34bee73d473f93c3193d8e8812fa81701638b3874428e295af93df745cc63c9581da7a7fa2131008557a3eda6e3d3b26aa696b16569d6470b835b13a68cec043236b078dee80e9f9aac6c3c13e8df6c26e60336fd29421e68be38d51b7dddd006755a0ee2dd35d4f28fabad06cf0a5cd03164990892337fde7baf132ccb3dc2343ee35927926baed5bb36de0b6371fdb91b9504c1eef1aadb77fa68d4e653625536cdda049690c5ca24a87ce4fecb78ab14c2e8be5470e3ccd272edb7eea120749e8084c00c78dccdfac3258201caa207d26a67a8886a7bc581d9c22f93121d7d01146027ff4c9e1780cc477921abfb9293b70c94cfc8afa549d2d9130ac221b9c3e2dba428e6495a9d731a02813e71b08845af18058ea12dae788ac8b37c81d32b5635e5340f84b263bd028455854dcf05ca53eb85d9d5d25ae2bb8457886f1d443151937204b42ef06c70588b585a1993e46223bd909a16c56e8da641e10d219a330cc0c142b4a0995136f7d0812f888239e29f6ca043d38e97699316b9af9cec0b83f5edab8e25d1a2ad80cf3cd6fb5b100eb603c87800d90601b462cd40982fb0e8f068e0acbd98d5c2dda9e585ec42e82765ca52fa25ccc9c89ca9044ed884666eb5531d03d4728338338f0a0d5438cbe19485c98bc274a5a6452f35bd7d650ac10017a45da15df80d90e4d62302ea56270b602256ffad2ee266ba4462cf4d9798ad74a185e30e952a7aee712cd9366aa9ac5352af67e81bd93d06438ef68c37a4f273fbb7ca5f321b2f760a62692e345c3078ecebde6d2aca9da9030de9e1831e0a1f6cf9bbbae2cff69b7c82af94bbc17bcf348e9264d4a6c2aa3a4be92d68acfec73152ff9e49d4ad9c052a16833fdd8203857bb0450527abdff5365c976d2fc854e28f4412e9b53f8e79502cecff54b0393f5688e9e74d17cde9d68d21fedcf0e4933c3696756c999058e9ec5718332fb4584a3e9833f011bb74422b056cb4980ea2cb9782e45bd485aee5588fd0f18fafc208fd89ceee33782898e1716b60689a35888751079d04d6bd4fbe0838c3420957d660fc117c7da39609bc0ba033d50b2368bb1f9a7f8023946e511d9c01237fed08ca780d61881494bb09132f5d42d2054003fd95db0eeff1f0e3841d3245f75da150e32b6567b59248655e3b82c19f482428c4d5e4d4bc0565dc87042adc1ba08b51680f0c02f8a7d1f7d9a2a67c56276899d5476072b29d9f7e3cd7ac4c37311ec6fc5c316cca6e234b234e650aa48232179eeac52465efde540e8ccd8f737a4afb56752c2a7b7b96d4208b4a6e0cc295cd17e2688c03466e0efb815b72272805965f1f25f4a93216970ca648b15d11a8a89d14f9250aa30a68e12698e859795d7e7a4ab37885e2f39f9e16eced30da2076d28902fd62c80331cc802a662985950fad6d01f0e641053c8989cc3bfb50a649a567462987224c4ed735f6637d2a620f5b5a6769a3c8ad4ba20064ba467947c68a6b6e13d4584acbe5684358eba51efab425e881e48e745cc4b63937563b6efe024d72a03ed138530dcfbbf4de2e62c7e635e5db58960fbe8b84ccaaded2357457461d44c02acb473e01e5ea7b1c8971461b31d1f1dfa60bb08c2d66be00950ef6cc818c4600b7107ef3544d31e61a30b2226ab7ab2e3a91b25912e841349f76ad072145a3056fb6ec4ca9f073915519e1f1b4d9cbe09846f2b96124036ed7876849fcfb05a9bfaf470cd278d19807575353601f12980d4916487a84c209429db93d301bb0246d8c28689ddd5ecd7709943e79e4d370c6cffd9459974d1a4b9178e09ddb2f2fcd909c33a1f0bdc72bc31afd6e72673ae3b25709807401f3e033eb0141e8043509c994eb38adc00f024bb1686b1e27fc3744a8a1bf7091a23e2179efd7503e656f01ea5c8a9974eece0b78f4e6724db3fd1673196c207debcf650e2e22e343c09498586bd3717577f45aac0959c1f4684a6599092ecd378157af0fc069b99bb9f26541279a95b3d8e40b0fbdbe5b3e27e1c0b2f9bca05346d42f6609638e32789a9b58628019cd3a07cb744b90d991c0810be061cb684b4be1430dc93e4288426f9612d7f216c7a5e85a1589d8fd700af152efd8cc5014bf3bc0f290378318a96b5f52930ac463a316fc1c265338379b78b3d8cee4ee36c6831c0d3384eea8c941cdd78f4e5b1ad930db253f2e8c065ae63910142ab7ef169e63a4250a830d09e90e5f02b26024b240cd95404dcbed3c423a03ffa33771bae3627f7aaf5361d5f1d0fb67b1382bd955b6ac54b663acfa5585a058aa70ac031169f9a10cddce552fe310a622748732a0b2d03b3d8fc791c1f2fa4d1bb19d1c83ec884fa6da9b1af3952a658e2ff2cc538745f56a0e84b9ef667d22ea806d7b4ce68113e2927f88345eb0439faa47883323c885a5249cdaed060d94aba34f034366d03a4f3e7a2194843275aec28995faa2c61398ff5c59e9506d47496594388d8e237b6ab68f6b2d70627599db11c1b5f68a40da1fde83c93fcbfbab304107b1207d2d48793ee91936124d0f67186bfd8600c861444f3b264bac2cf5e9d0107efa5938388a56a9ba379f0e726c9dbb58c31d334e00d024a352a75770b6d2dc3236f539c85dd9f93c42fced6c403aae41540837b127ecdc96cd5c89b9c689e66320a973a7be88d4b1d2487b36d3c81f4d2d9de28b90871795c1db74589487128c7f171b831c1ee8a0e6677860e2e0c20828cb99874431557b8c5f1e4ccdfdfafe1fb969b9311c9cf88f649b822ec4604644baf3465314c74a40cd0a886d9808735f86a9e3c05511d85e302f5cbbdb49b7261c07b9a0bdd0900add0a694d5222655dd1e7965f8f2c962654320e54499eb19cc6c702b0d19edf1b82913cef8d6b85a533ba165c2799e1b5713319ea05ae1802bd15e7f2e83f953dd4f9f59e13813e0661d60cc5cad0378235aad79ce57f72de1c450eca446626f7a1cbd49b197b94f12da9a1512b2c6a7d718bf51b9ee6064a465f2a1b9f7879d9006b9145c32daa3f726c69c69263a1922bab4384d2080251ea6b819bab594f61447589cb011cc8f1b4c8744fd06994140b0cec314a885f48179c071c1ccd2ba947831cc85cea38c9f706f23875c377b98a8714861309026b58b2609bf6120ac731a4e53d1dfba34c2929289db3efa2b7c82ac1bc3a21be20b85cb68158512f93c391e6d7b9f0d93a983d0212b7418daca795b82312711927022df7a665175fe1fb4592b9e005c8981a6c482e8e48b227b01c4669468be15149577fe423a6c38791eb03156216a1fa33cc0c2846012692a924034fd388475700d71f2b1c4cbd13e13fd68de593c2b4237a1e37eb5295cf1a44f74d7af24d40edb4a57f189d226aab09b513b17d2216bc45e084bcb88c248ab7045786495f409200addb056bb70367c045b3711314239622c0e55ea5523ad28dd370d858d1051427d26b4980f2cf368f1b4cf60248616adcc5527591a0f6a7247fa2971043ecca31ef87adf30ddb750516b5549d67031085c5842d5e0ddd5e0b0755fe130ff7997a2a9af94a5983ab0390b677dd8f9b2510a78f46f931d72f2bbde84c283091da66594e7a0c8c68f098b8ea3bc930b5435d630883085d833ae7b4dea7b5f7d820f9d208bb460bf38e20244eccbf88ad9ee39b51f39372922f85c77dd5a5c096386ff3e880abeb2e13efb76aba64e2c8a7bb9aadd5e9e2284da39fc28bf9cc7cac4b6d75d39380315d14176f3a4c1644e0ccbc0c629688cff68ca4a8892c50940efa0c4ace1ca12f01c485cf3bd1499ebe69a4977ed443f56734ec94656f780cd8acd484ab4419dd6209d1bd1200d26e2e61ad3ee3e807cc2fbb027e762ad9b8bf8c3ce89ff82af02b160aaff360a458a08a54744e11bf43d0dcab21a7b29f8f5e9605aa68fadb6b1df372288208dbcd4123b50f8a3a94e09e82206845d3440a003c18552023b69ba862d4e68f97d97c8e43384450ff0da778ae86aa4ad6411206203992d9515650476f59a9afd6b51a0324acb71ca0ab429196c756a7f5489c802639835c7357d673b01d956870616ab3ac328a19817a5b057551dc38020398600ae0bf8c4ee0adf742602010216808b7b3bd5d013e749941353d2fba518486901b1ee95374af6a20df5e69f1ae9b2891b9cc414a1e101346f7f9fb5d48e2ea01a922bb31efd6da515024329b43f1f7a4d72b8e4ffe6e00809f0accfc1374f0af0e5fc870e24bc34f9712bae9148ab31544f1be86cdaf7217014906780d723955d6d6c2fd5b1c6c4fcc1c5690529ba495ee8df3ea142d8159850065509298d46b3200924034b3c63d06c4e45edf44070387ad5d8757bbd02d08319c8ac53febc3c2e2228c24b85d12c4bdb2e04c69114576769ddfa34571a8d2beb8e8107e6e1d8156fc48de2a1d539641b86be6c166c5779ec20e920bc62efffd60601b8fd99085f3862b1476d77ea60ee46eadf7cb27712f0cf953ebd759de20f2021e55addd812660f9e9a51f74292bd07aa6fec6d585fcb39bb829bd3ccf1abb6584e43bcc646a3738563e1dea4e52eaaa8517bb64234c5fe1a142626f189a11ed951e4f37cd3923c6cda82851e6c30c531e310db69dc71dc8f7c0eae83c962e7099c85872f3b0bd15a7004377f2d674175dc906dbdb361e226c4cd401a6ce48104fa20174c9459464620cdcde5165d407adc8808482de0e2069263c952a145d8809a3cdbd826572bbd52a933d97081ab5f2aa93e9a3a79dca89beefc08eb05e7bc6ef560140638a674971cc594e41d569ca6fba5964796468458c677ca4dd15ce427832c27edc1810c5aef817c10a25218012d8b4ba3527ad599715b615a94e598282ffd206669e84e0d5282dc159d1f3d3d4a482a13ff7bbddcd7a7e7f6704245d70ce25f40ae1dafa50280e7c43285ec2b3e2bd8f96c673c161ee195a574bfdc30c627fd5e4a678bd9431c744efcf0fa0c9a4ef8119949a09aa8d9d97f9ddade47479ad8afe06ef8bb4ed17466594cf6a7dd631270638129f492099cf649146fc694dbdca019d03bf70be2cfeb0266a13fe94fffc20b02083dc4c6a41b44d39cd67bfe6b185863ec7b07c1cc82e9c181d0068897164e0714b732d8382fa42fe934d756f30c26dd207218bc4d2fe5701d11e6705fd5f5dd6beaca29a31d03b589f255d7493d5cae6368d41c54d779a21d9f6aece99240b0daf5418757c6960bfd49f0785d202e741c954e7b57cd0c7d1c61d1102580a00a899d54cc46e634d7c7ba8366ecd38b3d74476a98213ea5c322a821a98fcddc1d14461f8176138ca604220ff164edbf5c57652533ec65485877aa7b14a11f6ce8de70453e933f8b0ca8e89119903516d0fc23ad0c349db001f3f7ca88bb792a8ef4cdb72c7a7da39783bcb54b105d3bd496bc0cd180b8ef0954921dc240e612f23251eed8e70ad6047fa79328d1ee94a0d3038bb58d78f1bce28ba6ca3c168bc37e32c7e9499766aa50f2364d9816bcd88737466b9cba987357a2ce848a892aeacf1d43203ecf51a57288fa58a7d6e0d556f9dc207897d680502cf4d28438bfa5c42459a6dac85d3a828d9c0edb0eeb5c4572ffaa9334f15da4e7ae2808ffa0c9fdd155facf6b96435286201e6bb7c3a8ff1fccc7b5bd201b4bc987603e88f8ac584b6490d0d71565f8b810e01c9a97222c6069be930fb083156ab787dedc2bdfcb216b7db190f8bf3dc88a1924e3423fce2665ef9c279fbbf20b8d1661e14f6e91a832ebd9e9e7c318dbde0b97f9a026bca4913bc735d45fcbeb464dee8e41ec6df8fa107fc32be19fcb5fa5fb1f05f4839be87e6def48e20bb1ffc615f81b920161636f7732807bb5023de18d9a99248e02f052da9498caf49a3d0532be97a26c13b4b5c4745231e1144ca9dbb015d0f497fd33c4e007d99458cbb39f1cc098cb7c0011be1d786a4949129c11b4d15dda96f699f4fbda3fb31061290b9f239c9cdb13c070dee4e84e793e470894b38c17d758833db1e6b1905c729d4a262778499f3c38f2e9af7e2a919badf9d631bc8635cfa99ce61b350b5ef03929dda05aa0b4864426c21f110d37241a7354cc950592837b551012398bb31050cbaf7923fc5e54323118884aa12d9d9026ef05a69ca7c05a43b8495a5e60628f4cad46bb6bdc7c67bba815ad40dfe8e653a75901dfe1444aa0cfc0a9d75b54f8c3c823d64702a473e166204acd32e427ba0fcea7a9cfdbd30e40211f565579cfb6e934a65cc724c58ac89b4597bf2ba00d74a53211f8372cc0d13844d0c81aad607db35a69b823cbc00f61ce2096994f43e26260eeb2b8e73df9db00a5935256fba62ea55f5c1a39427cc9e4415dc536c742a04bece1fa9144b295a900690355086100f83883774aa05f46baf7f288d813f8aae87ac43d5d52eede850d303908f69fc554045d97807d404c20bf25b4c881673fbd61e8d0974c8ace38c46c982d817198402ca645b64d6c371cf7a4fbd0c4606720bf2af842ce414da12936cbe58cbc4d697808d9bc1a68106b7bd6672b27685426402d2b8cf97f0dcdc3e44157b2619d1ab6a309aa12ba6a24c7ce7e800b06347ede577d956609a8541db4be19ba0f53c360ec280b89935a476592eb5d6ebcfbcbe8953bf22e2d539fbc2915b09e2f5c59f970c5d5c2563fe5dd33b1bf626b373a13da952d2004aaffa839ed0a3ccb7badfc0dba07ffbfc97bc645bf5385f3e9a02ad22922ec1f7d280583d448b2b00523efc3c18572f30acd9228904cdbb093b5b1ba6bd9c666e7011b7dba40de668996527869203a9574348fbf94d86e7d31f0f7d9dd440b64573e8750d429912bf2445e3be4ddcf442a20624fde06e3ac25aa58376e84c44ac55db37aac764bb45df99e2af5f100e90573851bd6de207e8d4fde1d1b966cf4727d306731599d58a9409500d23b9c722293774d87ea521d27371aa36cf2be6999aa10f585e35360a8e4adf3bab074f266e0cca4ed8ca789434b77ec7018644111c7011627ba562b4ca91a8267dd80ec78d1abc6a5df5b827c48a5b0fe76b7eefdb3d793a579bb3e3460df601c305d3a4e00bfe6bdc852d46e6d5c801ae494bf3cfa37bafbf57bb8aab29de305d44ee2a0443901a390be1d2ecadfe0c96cde36bf5bb76973044ff4062cf82d25dfe289432d7c3307ebf1e6072c25a52fefbca369bd4915ad808f81993b3683a9da148b812f0ea0e6f3368137ba4d0bdcf9a0c6a4702862d4dd826e661ae074a2b6811d4ec93e724b196b5ed95be008cff337835c29d24374cf606d15cc0439b8366ea700cee2da178fdce2a74e7ca4a0a5674821d43197925f685f1788b4769140cb979b8a936c560e4d4969d48a2a22aa86238df7731621ea6ad4c68d38739a3b9bfb998a1986435ef06a260674aa4171dd7dfca27a8030b3082770cbc6be4386111de4945e548639a8e4b3f12e620b9702f2968901a30885078d934ae441acf3e21bc6c3d2ceb725261ad889e814208481ac8ce8069cc2f124eeec9c709a1c349c404f8b14b2767fd1a860c7be00fb99dc42d0cb9dd806b7fe5e052818469df25d986d6170b3f27db5c860603009c67ddbc235460383995d1f2de48fb2dadbb4dece3e12b0e4a99d42e2bc0d1ee19ac3bc9fb86a99d03033a97320cfe8bab5d4b58d5b0d1ff439bd949af1750f2a0877319f5b4bc3b88710fb4e459a36aa21d604adecf02c6bed73d11f30888b0b9d66f369ac25e12b1a25fb29a010974242168beb43651bb3faa1e4dbd160926770020b13a74552a1844f7d0c533785fb418a2b4b5aa0c21fedda544f1831b6f95d7f1f26612ef87b3f4218263e040375bcbe12f6a00590d4ba240c0871e5434b10647579e180cb2c331014c6554670e6d530ee8f37b0c020c75508a56f9520fca6945ea2f7a994267b23a44d12fe5d4405b72aa95e8b7cbd7910acae684ae14680c9589026612ca2c9e9805fe17a00a0f102a1f86d64adb1e1a52761b00085b9615c8f5c94d3d4a5931bd8af4bc26b2b7ba1feb26d1ede59704b468b6b032f1f26a15ae7021a5037e07c60748bad151aa105f0e1b17b83e5752df21d563533223c66bfdf929ca78c9d399272eb3b8c9823e7d8faeac8ada8897ddd15500a4afffaa405691da4bfa9a3211e0ebdf3855c8d596a8fa8a9367880a7470b6379fc1a4754486068b8bea1060f17a43c6cf02c274f8784dd966b90b29e27a8103a26373712367b2a1a82a6320fe137bcf1611ce6a1c3350fe1541e8893c9e63240d183ba65855b165be6819f5d5df5d05323c9df38e9a4eeff57581a7ab8f100ced40bc4769ee4dd793e317bbe41bfad1429a18776b4c40630893a87ed381e31a209bf0cc0733074f25fa62c5177e351bc1bbf67da819cc5d492a14ccb7c7faabf65c53d463de18090efc6742f66711f5bcbe1e59e71e043b237be4ded60d51d1406ca8e615eff64c677657eb9771b53af3fc12d26138031be6dcf8568d03e2b8d14563f81da160eb3ba2695ae0b013e2a35760729f4af90cedfc272778021eea5d0323a5b20464e665246141de29b09a84b3a9c2b0c8c1e1d3a3db6545af5c83a0c8d9f6edae8030a74d04bd0542e3597201012bb3c048260ccfd089ad038e700c840335d78a1f539dfe1a50c90407266ebfb689753112c0c6e214ae22a49180145386da21cbc4e27a4fec74d36f5a7363303303bc14d2b2c2cde2ea0f9c861aca56cb108d3c9e488f88abc9e53d3be63b91405e3b8aa63110604b7300ac9b1318b6d858b991cf6aa2ae9f6a24760037ee4d3264d01789c8e2e90a0ffe6c1b58acaaa395796d441b233c6c473aa464dc9c5591c34a422ccfd9a760bc6d7dbf1780c6141591c0230fa474668e60f62479379cb78a87af3cf66ba0132bb431159a3e129e8ece206278efbe3dd372a7c9f340e453373021504ce311ba733a4c789d35835011f471f5faf8222332088c71c4ba503814f4851ecb9ec51db8b832f452b9db80060918404cbd35146e221e870813b92b8bdbf4081ee19bd6c723588d4514402253b3c39970239e3c7f260dfa520a14fe2d45dff3bc11dad08886d61246592b83e645501e7639903d019e38552762459ba5d9b6801b8ced71fe2dd5dad5c40e02b85c06172b04118d251f375ad31dcbd17c20c3e0b14c0f6855beef5621fe2a5d083d580f33eb9ff6e944a126383251e401827f5cdd20026083f57a187e75cff9ec32030dc0d663b391a603b39a11391e3d6083541e2c76844e9e226877628511c43a6d08178aec8626107f74dc4c04cf188ab2574115717762c92d454aa90297190148ef2806154af03fefd9f84916be42f4488e61bfb48c4998f11eca1399e082252cb17dcf809519a82bea074c20b4341cf155e67b8a4f2c24fa25b1c9e4a40fadf5c201a48b0b41e94589fa2832b0c33ef2248d27ff7ad0b87cf37e231aa16008fd3854b00a454fa8005a92ab89c4ff0a8d907f2c12fc39ec1ca56c5dcdf6f2dac8b7ec49c159b78e12e2e621b91866e6743070a1bba93d0ba8f1ec8c3bf92b9f5ca0108bfb3a92d4eac71e0a860cca62c60e69586535a83583e11e1142c6e3d6aa4c1890fee49082795e150f5d7c61510bb0a957c1cea26e39d9f050973568a0b047e5bd67d81a571c93fd6a681115022839084d403e0f30e1b3d7bc58467772516704b808269c737721729d6b5b14e98fc8a1027cc2438b24e20c49fc30e5b9174a801d2d6c1d1e24cd50abf416db5002766cfd7660b8167a2e27bf22f1b9a39d3d45b0881913c62b3602c09fb3cfe1208a25a22e6bebed9d59d4a9d5d99dc01b1c78585ef832a452bdf1a8a35f6c8a9bba0427cb4017fdb120635a28de7f60312463f11443fd250fe26fbcf0a9f808e33c05010294d511514d116b3faab2b7d1a53c8fd40bd5b00f15b3f958226f17d9bed006284612639b93fa80edaaf5bf433768117d433862ec234e3d0304cd648ac9c201f0d7a7f8b0ec99d88d8df415935085fd1c940888033e3351050c107e503185464ab420efbf55bf0505f4f7249befe521eb0d999a911cec69d305d2994276fe8ab9a279b5189fe97332c4950e7570f7f2ef7de9798d30356362d903238ba804dd2bd3229000b878779d782fb4ef8b5586d055aa056ed0e64aebcc4a4234b682a891247127082cd5006f994c054fb947b3aeaec2d913acaa7d81fd08ea0517796deb021ee8aa003a08e712aaf62ffbcf6892f6d575e09238b68b45a29da47890ea9890739545288b885d9b243d989b0cd9456206d649c1823276006abe02adffd76454564b0dc0668588c2741609d3c95de5a24176905c20abb4c025c3e4b1a73ab760f717022180956a8b94c41cf18490d6943d76dd549596439c3ac836085c4b6bd42a72c2178bb82d5e4a2ca227a32cd4735360090f4cb8fd8a78506d338d30f8f6641e5a64323f3ad9450e42b548b4c9cd3fcdcf9557c0b41512f3c5c7b26aa389c5f7614d1edfeab8aba729e856e7170b1a5a62b7adcd53f4cd0ebcdfe0bf09e09becb116ddd5b2b20c3daf9c2a481087224eb9498b02d6e27bba4de0af7032f4a862b6bd23f5bb4ee939a4a57605ff4d69556d0307a76fe9103db521174a5af91f32c4edae49bac5b48e64521bbb2311d4635b434ea2fe62e9ae69b4e7120e59b2a8f38f06de3aa8e9e70fa220027d2b644ba298cf28872e1377b33dbeae8d74c4bc21107e90b41f27dc398f181595f3d72817f6bffc3747e9dd9fa6da6677c34783dcd8a162d1a50e852f031b2488e24973ae3089d874b7165ee303f395b151f48585bfa0afe74633e290a3629793c705d5f9f9769c913385c7c2035a839f6ea5b2088d08766dedefa4fd7b599ac8fb0eb2858dfa6467be4c63a9135f983be423412acf5c2693411d4738e7fc08d69f7459a43cf7d39ba09c3dea105f39f7b9897c75b2524fec93bc311f440b77c856cd7b599d6613dc14fe3afa3e8923db54e40984863618c401a17bd551c330306e9b69c48b76833424304bd1d611f09e54409970305b80ee296645301d353905c61e819a368738bec77f2cf0865b01c100bb30df916d258ca437de2bdb2f0ee1794b037e8ea58d19b7bd4424bee573dc375606b55053272ee2b4cd29dc151a1f532beddfc145649da6d0af328f0b83e5782c318ab952c8d20e7700c93f1979f860b9c27f75e42e373416f2cc7653fa7112a2375ba188758449d61e635e87c258f455a95780ac25f485cac403bb4baad06942927b47c37c79be2a4fc13304dfeacd7e6ce35393e05084aa7a8493199f16a9387906c87789f2f32523ecc3d9800c5d8018f09b90942cbb0a007ffbd54ab415b4cd6e7f8a9e332ac87017c380b0755bdf45d5fda0a97a2933035f009e33c8d299aa6d76ab197cfc48e971bbc2ebf9d28d194bbae33d0784377334363298932c36bc153f87f82bb97be8559dd1bdbd7b4125f1ade2454e6c4266e82cf98dc527afcb118b08e62996bc901a2512970d5750cd9f2b05a7b5dc8d83006a9e8b5a8227a34e73833bb152ddb522ae8fd8b0e1241ecce62030eca52fb04dc90cf3f094afb3704116af9cbd512963ba762e52c90b821fb8f84f3e05846af3204513d58356ec42f6e1365cf3ddadebc207bda15441b6a9c2c62a6f3ea8b048223879e9a7660ed5d8cd7dbd30419f65843b7a60f024972fb04fc989ffe1c5df3e3ae38da64582ba9e47e47eb3ebf6ad1ccfdb2eb43e5117122a748e5372e5b61cc686b38193bee840573ed3f48f48c68036a830088e94a4a308d33150fd902293d420ca35112708fc30c75f9685940447e47428d695a0bfdb4c5ad64021da6d11c928ce1d95b89d58b0313d788112833eba42705db3faf0f231315bb9486906d3e49e6b42b3dbc8a057c696cd145900700a9cf59f75e36e2728812477da3b044962d7a86dcc557c859a176f50afdd9e0498c8920abb87b7ea2b6e5068a6a8c81c3e8132345b63f455fd813e9a9838353f504a90f628f14916c597491a916c97b4f2154a3f4e0d4ad0ff04c95091286c4e8899003bb4b828f89b627e7f63fa8477bae14d8a087186fdb08d492a4778749c4cce1d0a1b6667e91b8d0494471be65f7c9d78c2c88b3f9b116e1a0cccc4f6b26aa62aa92d0afa7718d2e6324e309c624b0a00b8940078fd1dc0568e323a1d283a876f485cfe9cf481923d373293619c2db5e21ad8d432c92cda7f11d0d49b2f2ef8b14a7ad5a145f6056629018aaa82ad727844eab58b61dfff3b9d22887ec2088740e849549b3325812537784b8fc235bd2f94886edc3371b651a4e724a3a3860f6337a68fc451493279f099f2725009e1c83a86660622d200f9710c308c9ab602c74c2257062514efcdf418058621986cd780e5d664355ca08865df9ab2ca7a9e3824db669f73f2a7d9d7d61b24ec7e5f2c17ad8963f15658e9d79f2248a6c19c893bd02fd98a2d6dc85df5b7507e28bb39c26e9ecb99dcde3b01ee73ec19e4ec1e68c2f7621ed7a99354d46de6527e098779dc2711467e666eee0190ed28ddd4a5684c8cadecf9dac58a0661b3335e34c8a1cb853003664ab5325fdcbdf8c52abd2718b0285eca85b8689a9cbab6d693cda8e22f805bb0a994bc965c3635348b85a5a81f848b96d1b69e1464f45953821322056a3649e56172b0999ead532243638f67d7ad1781c94eb667993f6d9b5e8b229fb97931eebf41018f6a5ab4a951321af07dcd6951911c96939edbdc59d1082e412cde414fa4f4c3965fdccfca79982bb627ded81a757716b9f5eec31f02cbbe80ab6e49e6c37b33dd0702dd7b945d3fc622bce2755030e62fa385b03cfcb81bd694d91ba37bae4001c54f9cc0504f6e119c09a941c71ce897aa6f4164b7cb451244ea4dd680b3c3c42e6383ec4292839535b02a7120353f805e1bf423df0d2af97bfade81ac3303db59b1c43c1185ec370ba7bec25ecf693d8ed9f1703ecc8389b73c4ed7d587d82899972915f22cb6f04e8e144a870a02517e0db5426b041e905494f9aae1156b6832614845d08370983733da03e4a7eb7493618e98a42d38c9454eb8a840afb1cf6bbc86796666cb6df52e91b196f180322eeb4930b8b738f0815f502c6626597b2aa233b1d2ad11bb96fd112e810d5ae8ae30ae5af7062a9689bd62c4dcb66f3ff0040c60737cc7dde05266671c00f3b3c28b52f6cac3c9e487859559a73fb1a4b7696f43ac22afb49cc196da2b47433f9ec78465c278f3ddee94692a0c7b3355023f87d46a288076dcd80c44179a347f9e0edc13bdff1f8b20161622b6941842144b38ebfcb66f44411bf8f5b6b3297774342639762a10e554d6b38af93bf4ce93b7b6c0286decf894b8fd27509b5c4f7d189f854c9a35bf58cfbea952cdc71f279c9d7bc8b4c0804d70a81e124f745bfee4640a100e188db82539dc049796f5c56017bf73d798f089b7ae0adc5879c1c7f5059336dcc2bb7a78a5c658036909b67ec74e539ea87201b8061d3b266fd8b82777b07346310bfe19e5a64b592bcceeb9782a9351eb32770e3d20ca061d5f22c0ce3d651e89c968aa54c315856797174cfd7f9608d3bd5d791e2e270ced6d29de1b53e45fb39e0b3ae94e496270cc127feb34e6bd54bc6a1004d26104ba8bf546500998601c2ce9550c0dd68360b902659c044c445c653a349cc80e0749146efea5d0a1e981ac04f8c1e1b1a0ad7cbdc97d4015e88002133393d735c1721543098eb2ed7c5c48b6c1ed2fa88343cfe7fa81073c82d04f1f9bdb82954e10d61f09f7af4b15344523883c3c240b7670d2e0868dcc471e00dc6f82c427a90fd4acd2d449f9f4ba37a6e1ae1545cba75f05ff3320af0bbccfb2f76a07c18b4ee4b434e9f8050054e6f10f0abe78292db4fc686705600cbc21fd519468210080f78fc239cdec31dd26545888ac36c9f81b78e633829e555c08ddadac5075d81a798e5eba44cbf2c1464b59263fd0429f6047f1592cd5453da4a4557f9413fb33686e8033d6c0e2ee32320497faea3f824eb060377e4492e08b6fdcccb2a5476a81644a8928918344b688b5f1ec7c5648f2037867f43a8166b15e3cb2208564bc838c7bc872a9682d8655ffb0162f64d5b9b344bdc1baf0d256b519970c07189e11b1a2f5b9d2a1889606dc25fe2e6e46d09ecc96c1e0f7a59e5b330c9a7e092e7ecd59a2329b82d860d05f728f1ef217a2ccc97efdff9b2d39f445969fe2a6ec3ac91a00a16f25abfb7622758a3fdd40f8b6605336de3b024d0e1b4fd83012f4b6f146b252a15d63b40adf100d15aa2965db1e61a6e1be2b8654695b3ad786134e4bc14fc33390ba44734c2f2ff270885e111d33b8e089370b6377ebd34fb86c0d4f200b5f3cc0461f01518641465f0aa365b8ecdf6900bf53f97cc0e71e880e6f303591db968fa7e53fbd594816ff8d81b00a8d3ca0ee80c72466a261e08267cdb35b8885f125d8bbcb943a707dbe12ee1956b393eca2ee1cc25162ae4a4c0ca7f97a2b174d6bfff8ee8596749f9fc50b25f78d42514985bf4dd4ddeb6901ce1334e32285b9e440ff60f94b4c0935471550a38628e1224caf743c92305cdf2e91850684ef79cce409393ed9ee440c9a40f7b3aa9a863b86781cc0c2f21630a9a1f0851a240cd87bf9ed48e06c2ea9fe2925cee826a45a361116d41b6eb34a42831b2bcf3e2c5f8f9fc2bc134500122a6f3906d5a1444c49455d41b411b0384f00a3008723b462331d1608268cf03ec10847a3a64f7dde90f38a7f8d6a9fe61b18691c2c95bd55c6369a4cc0d59f440a0f4cf826da827b857803cf150592eb54bc85aa4b6a83664c89f9234e21c3aa27657614dad133f081a9aedd898b067c2d6a9290603102c62ea35b7268999345b4dc19fd84027f4183223432e69f253de6198501a2c3a942950d391e34d29020ccd7e42c4cf171b30b07bb97387ecb659a3feccdae4782653618df2026da4b18d3fee8e908f7955a858f20e39f0757020969ca4cfaf203f10d9f603400a72bf679ddf1ae1987628f1a5d9106d3eda55419f830eb7eeb8d7c08a8002ff88f06ae535da4550e0a3bf9d9cd040ca4fbb8acabd1a73a1adb336c36af162911c11b247225042a0a2bafa668800792c0f4b7b13838077106e9fd0a842f774e18e14b255154fb3924ed01ee13b2cd114942d9120105978dd8e3f4036e22cdb4237f6929b0cae4a3136d6f927c4194bdef5ddda90c9cca168ed79511917331c81933b7333dde90a23d62325e278c276e7313b4106cff00e4be7913eba8f194c6ebe24f2cc8090d6ef16099fba3fdb247ab02ae02edb83eb86ff3b455d3ed630a76ee0e308dd161be33a2e4a74276af4b0a3387bbac9c19c68e21339988360833f15e6b52d260ebc3c4575c2423c81c6fb512c421abf4d2f2921923418af71d75bc2022a07a8cad01247e9c4a4ee4a5a733b8e41a24a815880c95e0474defc219bf8abf4d04ae63c9bed21320d7269b2ca9fc41b8961bfaa567ca6d19b2ecb8799860e29e093f5bfb0b09e5e23822b16b4c7b3145c2e3df531d6bb6295a5b19c349ffd2480a69d7111708b9b9aef9150abca8b6def4baefebc4555b6e469b6a939682c34b49857dba1858598a4f84bd783d99bff1745cb08ececc0765bb4c6982c954e51b5f85ce3ba5cda2222f5640694aba67da6844c8b2c1e28d90b310c47ba570e037d690869d838e9429daba42d38118d6ef0deba4ad939e0589f6eba81575402f41cd595c0faa937a7993ee48c4070c71966c61d9d3050cbd6dbb0f29e8281d68227e2937636ef459490ba08e2b6f9030b3e85d181bf544415537bc70b495a0895cb216b12bde296876942818cdc4aa40cf0068960be0168040152f76cf91a0b2bef831441fb9463f6ab47bf0bf8a49f8813252a13fee8ea4cf093614218460f02641c66a6ade7f1e0e4803c2539ce8de5d63b65db31374137e3234e51e788126397e14b709ef26d78fafbdb634f600b825f2a52052a7e85bd0ab80a7ed413872a9b4d5fbb39e3de93c5851d7a2b80e60d483898d35c89b55d2dd0360c16666030a04343ed47208951c3ba1c118043a8a2a4e9a80f50951520bc701e0a3fc3d98ce21e6166a19c5f202ec4261189c1a1bc64a8f1e7403fdce2b500aefc11122089faf5c4b60c8533c9fd39ac57df4cbb635d72f5c8525f76b267f5455a16152bfb78b0f4f0e710c0801d463efa2aa621065c004e5f427a6242fae288ce6b045f301da8a21a343395723e75646e2445072c208f730904d0abc640e4bf911e43fb55fa9916bea6a0dd45c9ee99b65601c003a00b820864b9b1b7892ca21927cb87a8b32cc3a3292c819850a17665e14802e2ed7efbfc6b81529cad4f07b996daa82777131f36517eb0828fd53d725f05ffea47fcd9fde3ee2679e94e761829384de178fe9f609b16af7f67b408603dfa4e3f1dce0c44ee35f4d9292d44d512034c8391311683285cbe3f85601ba43552ea2a70d2e11114ad3866c82d029a119a74c7d6025645218b7506c43701812d48e2c0eba1257e401eeb0095010756626ea166e055a286cba7e1dd040f5ad1dedb127df0c0db2113ab51521fe91f0732aeac5debbd232303d0915f298a9ff626e7386ab13a46720f42bf5bc0c0ec6a4e3e45e006c6315e75c35b58635fc57f67c1bf75c9d9beb9e5829f0a7f643a14d73d2ff09271fd6e1070737e35854f000ef721fc6b13fc53a9b404f0fcd043ce450bce9c78bc6e18221eaca0d83046bd21e00b501e39738464bb031842d364e10a613303667789e9aa28f88c134ee496bca3cf5445bbb2ad51c67577401238a94f243f118327769d5ccd8e74371524b7a1676729c0a404d895872a4b2ada05c41ed1ccde5190703870b432c000dac5cd8a5ebcef06190012e001c667c205887636d952f59ff657169c6e093373e5b75d9927ea5309a4ca39eda92ec2923034b65436a6ba66d054f69e35cb5471de1659579cc1bb92f1ab43c8d010c4cc4c7413ed7da2431b333e5ebb1635b026fd313b713b5832366b93f3f19f33c5a8ac4ce11095db8638e29cd22be952bffbc5510943f5bb23885103c15e9bb2ce0e6f36b5c0a1cb29caa730ffc032d30e0347119eeed441909a3489da6212acada8c324825f9385c3b5f50546ee49207db0aef6f84bb9fcc0475971e429809e4c12000b07eb5a1b4cac365e507fb5a3ccff5ba9f9ad2e47b9077ee3e92f610955d1633448b1d9fc89be5e10d01d71c0575513141bdb3986b474a7ead04e3d34f86ae9ac4c96766ba3c8d3b8803ef4b808bd07db69a6ab8fc46db117bc526f971ced343eba7248fb719a6b8b77e5bf23a92116b6d28559ce475257b8b0af31abec2911d13262926b853c49eb4d4c1e3d6a04c1be3b99967abbe717579846c4aff90e63771f5c56ac01a21665482e91e7152601229c669f190e865a1928fadf9aa10a06d1cf492604a22283b22104802db4dbbe111cd7f90b531dfbe1e677e85697469e0fee539a9cc905c1a2c3726dfc3e6e06e9df8ee01267d0ab6b1cf7532d7531027482e3fea57805dca855022f07075cf3292eaf048a09a4c543f9c1a75de85df7549965328e6c0c2546dcd53c87694ddd489fb1597bdb3bc91dbf9ef2bb20fa0c7b350d553736366612a7e86144cd7b27b69c5269ce00ef75468d3be5d777b59c5e16ceb83ae1f556d29ebb73bc089e32264e21476fb6c85d11c61bc9445c6df553931f52f1b6425fec743431623971de8f257bd58c26a27408f4cc141c9fa871b861dd01dfa6c0b595fa7e5c64ec33bbce283b5950fbf7295ded209e12bd0f965e85b7b003015b06fd9023b476e58ea7e0828147a56ffaec2462792c87e81f2031ca400b120062e23833d7e3c12deccde7b60982a7b419bd0cdd11a89a2f31e2138eb6c85cb17523c451440205ee90ad689b5a63a71077c1a24d3503ae2c102305550ece73b9996a76c69a1eca9d5132e46ada21b7445c32d1d1658c7428ac504e422919762c141339357dde23cbf1fda13c7501b1d01374814e8db4adf6624b68872ab6a9a308d740b02ab2e453ef015181d1f08b177b1322f8a223064c841455f1c3eb002157f2bb1dd8ebaf23d4d1be0d434d6db88c1eea506c4401f335ae77f130a65601cc34629b36d3f364377f3f960c0310be78e88fdbe9c453bf9a01d727b3e9a3bccd83a0e71bfb4e387e4266e9889683d82c0c46365c964adb9a1e9c630c69139c1baa6bfe33ad709a62c78a97b86565ec32401f22f41241b69b2d53d478fc3f0781e666ca295deec41da885bc3a863b82f2d43c3705dfef82efc7989dce5b123dba7e29fe0a3e184c862d230292c5a07fecdbff307d634cb0b0b25a9549bac056c340d671b7c487297b88cc5d4b926ac7ad9a8a03e0252e8c6bcff6326d3b1ea1a0aa10d6398b312ce224a014f085ea31b6229e0d5a2a36ddbdbd91208a47e40c01851b2c609096ff33e052913b52fe9acb0037e61429234643ea6e0301917563106cf023e7ea8594b42af4df3f50c6cbad1aa8c2ccaa3f5ea4d324482d768b7888d2fe9aa3cdded3c95b88478b62e6630553dfea294eee0fcde2e2cce097ff8c8b5b41205706068be130b54943e4a7224f54cefb68fb00783c0064a16d1f29980c87f9672d88f14b01846354c877e566b5c15f2941fbb18a72b19278c45b3a2ec60341ee8c885cae1f583b689c4526bfed87f03c0a72da1366183b89efc6e540cb0e413f3962f1009061e1ad7b30ea3cf4ba1077a8f879f391894f3fd09175e3864f636448d6164affbf95194b4ae143f2aa0dd79a13309fc97609128475a05922356ec2b2811b63d036165bfdf826a1ceb86e7b1a8a90b6d3481198b8167995210272e948dbafb8be7027fc5c892d0ef6a7c1efc3ff352cf1ac6864af5852cd0e8a8a400c9a1df4563c05e0629bea40505bbd4c48dc46b2222c19c68a1617766f5626c91d28fb0b926eb70b64fd85ec4a0d881daa166999ce954709f8bd4e173e355c86e3c338fca0677e028d9a4786103e125993ed07f32229aba4ada76f54d607a4b06ddc5b0ec842c65a9298938bfa80c42437a8ff45ef73151d519523b29c9949aa76e0e271472bd576bda6f200579e7ac444418c41ec68306e4ccaa52c8abe8a929129a4489c3c2fc6fc4b31868257037639ccfb9dcf2ad81de146f2271ef77b81e8a9eed2bb1ac932e7b3e6b2004f85126316d585f64e2e52a90bdbd1fa63169d830959956afb6fd2c8aa8148535b53d1693252662c558b86c88beeb689cd83bab282141a168bacc3fd2070b35e41cc8d752b7e535f843dd4e6bfb558b93cc766a54fdd680922b21b801def33d0f57804b5632770965a6c61843bad43320f38b1ff548ad6da87d1b9ecee70d7560caedfbd23b465ac003bb844c95d5f93e7ab153d48935868cf7c4dbed9a9a22ba867ee450b586310d9e25ec1bc65966e92e644347a6524560a60e42221fd5c246c82276f865f5174939c16965ae9547106e888284ead74f9af4d298228a3f4ee1ed28ca36e8625af2e36d83b006efb03a29dfa5c815fffd8a048ee89c78de8006cb7c671307ecff4435fb0b4981c782499995b3a5824aa272049bc0bc2e48c879b33658c8d9998f7746ba624aa40b21dd215348de540fe469b629447b1828465a6b02d296ffac9fbbfd32a78fe51f648c87200d2221e23457500455dfb3caf03cc0ce4ce571b429100f3fd4b9a702bb2ffbc3134519deffc9e11a5ab701e79d0211f53deb5be536fa65041319ed3555514b1565a0a580486f82171a3eda01ace9afd3e67257796170126fcbfdbd28ceed2183559a87ab6bb5698418451545c60893191ab688090634dfcae4f4ab0fd7dc2ab13fc904c12eecc704341a4e84fe6302075b5499a4cd45e87cfbc12337577057bfda03c5863c6ee7c228fb65adb5ccf6e46ac2ddc5d535d93146681b390cf49271549163df0c4745decce5010c919b3ca27b6ea9e08feb9815b9dc5ff1146d7508996ef92d508e8ff231a7d0328cb3168f55784f54878cf7cd4124f7518311c4275b38633bb61ee387b89872fa534a8808e0a7187e1d9ae51232625fb08b645b779e8e20a673814cbd96c6a7b8bb3908bf1a912b31642019e3691ffc07a69c8a00b16bea3c080dea89e592f50b1f740de1ee14ebde902494674269b4ff20063bdbbb7a4530435990b75ceed7b891b478d608915a1e46610f28ba7426f43b952a1959bf1f4d237097e829b771acf247928836d1123bba85cda19b7b9762254a78e6d9efadb2f3868cf31194477e06fcdbfd3555e58913ee3baffa2f670ceef238179bf21fa7e23fc716913bd2bc8ac35b85e3b22c584e1f4f48091c3ce954937a755bf3863cf40423527845cbc45360fe8e695792f39028a0ea7c65f63ff58e321a0638baf56e4bf46313da0b7e6d3297baf4099b52015072c977656fd140001e74e79d5e9f2bc473ad5262d670ad4727a55e7dbb3de0309c84a92ddea04923c26045990008f720e105df67608c7b767a64eb5f9b9f175bd141de216f3d357f7bbc52038cb8b4e422b0d141e098b7d125438af722cfdd7ad3cd05b1d48d111e8434fad390cd33934ed8176a101a9873d5d7c0896f7fa55a620ccf31c082cfcd8622cced571bbff0f35bdae049b652e234ac39669bd594773668ba08feb9f7c3c095ed506759eacb18e46c4149531d5b323b9e435f82e893c74d7fa1ee47561544fe9b0fe7585b7f83452b4530e91d83968eecc13e9518d2c0e3238900017fc17924782d1c36d4ce6f774317374867fcb05eabdfb561e15db3278d5f32b581baedc0565195248166894678183c702d5691b652e1a10ec0b3af12dbb9fc051b14fecf5cd93846e8220c0cdeaa59ed9c050d55c7090b72ee3fc574b619eb029885ad4873a3e231b111180d85a27920fe760438a4a04438936706d946ae9d56e3fd27f69ab0fe32f0300eaf85f3f310ab561b95f78bc5e0094245f6311bf554e7853f541f7fb68ba3f83ce22daa40407a812775dabf08a488f3b8f47fd6b977cb825a7232d9434eca5f669e9b82c2b8d1889299328173c387b83fe2f979104ada391b35c8b65c912124b9ffc5d29c49b735ca61323c7a4de272d084406acee79f2d77c74ae3e55be6b3c8f10136ec4fe477839ddb7ac11e3703b8af3aead0aad2951aa78d99ab395212cbeb1b7198d0a14df4bfaa3e0e40751434292a59efb5db3336e54a827658b1a2dd15976b26e3845f1d10c6f933c52a146496591a641d9c893d12185f696cd54719c36c1312a626c2d2d8c5e6c4a4e69dc4002047621925dcf010def04ef220315bdc34a5db55a6498513fccc42c80f263beb043412181fd2cf818809167b4f118b1b7110c4b26a95a101114f0451461c7631dd37d91c9566109f6ad35e8de923b6b0d8e4abbe9928441c47d85d07e9b02ba49e806c11435ade71ac4d256fc52aa61e720485c8ae57290d50ab33c8dcf42d25f9151806385501ac03ec7b9c0e3a2026698e725f72a7351e9f45da5c711a45195de007057a5c296dc815aae4a45072ae8b72aff13f8b805cda3aa5655df284f0fc8bc461d52e5a06855b1402358e825eeeac27716efc7a82eb41d6bb4d3ea54a62a5ba9e6010b09c096372ed80ad49152aa02f9a94f29a27c0336a3ba621667b21092096aebe6d9ac6566d2d6bc06e9a340a16f6b3fe3776da0f1773af4d001602ea14a4936bb9dc5f5a3e251aedd75db414b36fc2840607ebc453b76c16bd6458515985ff949962e6196e778b94c9b958cbb6e83aa467f46448371cf04cc5872799414b485e161c294c2553c9395b445861a5690eacd00a818aabcd2ac609728eac799694977f2772a494a086aee585fde87ad20e4ac187fc71346afc93490f2297921ad0a7509caf7d8c9b5438859dc1eb5a845bfe7dc01eeeaa6ae067f35282d9414401e539b19b64d9b6ecc22e86df54439d0cb5797c8f6605a43f5a8c0f09926099670f1360c3e053d7e61c8021c451a220f0c38205f19a68e25ad22a71114c1e7eb7463021d34606927f12c3f13d87fee3e9659e2f42eb9decfe4989a2fe596d515f9fc44ee57363010e07c0a623da566564d37a3ec139a2b70987cea96914b94d581abff3bd1e54c8277f6058aaa99332f6c2756a1c915900586bb41405b923ca644f807e684354b02e262bc36a1369bff623019173510cbf25e04613042977e5545ada0c456bec4c7394dda8b73e6c7c1546dd5be9f2747c3329573dbcfbe35f7d1ac0954cfb01f99d65ea1e407834c7867f00cd43ab4697cfc344765f5c810bcebc81b2979441f397e4ba420506725373bd00e42a9bd64c6423d6b4128ec26a013662c8f68d5511197588c0c6b7c3a254e4311beb20e89a34e923fc2b2b06e814f3184393d8ea7e02acc6b1440db93a901b9172650c7533c1fd9ba810cdd18d4748a2618c503da72f1effc7c7f2ff775af914bfcc1018294445655597e2f8f5133bef6057e5bc19e376aebfe5117a94831a907f52373374b02c721abd3832bc98adb7c0d2bdec7593fe48ff8affa64e20a081f90f29685327d7bb0227b770d304b2f80bd2941980544dcbd4866e2cd341395fb673d3c130093cf820f52ed5442b00f7c60a2bebb4ef59cb386704ea51e66898e9846bc887d3a6424d15683d34ee93508681cc12fc2a6c193bb1bf613afe758d0037959dc225642dd8ae3c1429b133e87cb0f0d6cf1680aff652aba93278a992b6b0b9fe34f34912c2ef26438ee32722f51a43a6ccacb6a822ced915390cd32cdc386b06b43af0c480a6f2d294fdc5c2af757e3e5bee91be9458c62221c3afe07c3abbc023e5d01804a80475182b61a473d022d3b34714c9344283f65c8959621c59fa540316d98c06fb6aa779a977c51a169667fe6781759b75c479335a9f03ad9e941082a25e299a56d0ad68c79a6d49cc433be724ad9723af29c8590ee449cba2e53b47a7f09f48092821e2dabf3e09f6761b63213969bfa9e18614a6464eb7b08c5db79338a29443659f4239948dc3bdb22579496e139783b87c6249d1d1e79133696e8c2dcdff9004a3200343aad3e821f49ab93c54a0c6f1867f9d62867cf3613557730d7dc9a8cd1706e6ce351118513122b76aa38496a96cb9b9f7bd7d812731137acee41b28ef09d02dd760d4d5de2d64cfc4aaa142f9b091a39fffb78f7aa3a298899c012aafc08a4d76a1e816d4292aef3be48c2fe19bbe51dffb2cfdd6def0275c2116ec5688e8165fb5e42a1d39979505158202b0118fc961fe72596099bc62b3d560803f5bc729232e2090a026c2d3d99564dd9b3d787d89b0945567e3df233855ce982625992e8f8c39aa707f9ca0825d4b6f53f774810e0c1dfc85b641a193073d8912cc68541be24130559ae272e5189ff279650eb10be04afa2c01f2ba0db9f4e7ab0fb78a1b10eb8c2be402e22f94aa196dd1f6ac6fe34ea8dbacd5e6b637d34febff64a48c9ec1eccd74e2a596681ec7ede48e730e5da9c8fa57e2ff026941de38fa35c988b9f91aadbee359aa8c81a4dc8666e2618a103d44c9509b8924a1355a32a374e4cc847430a98353ea9a7cf4f3d917448ef48b307a2f1280dd28957e7f0db21a02f4f038a2642aece76b2d3d92a1aa76bd7b17975b3d3a3e7f553bd0aa74e9e14d743c9c2a05e4c89bd922f76bdab44b886bb948e2f2654cd45aaf8160a67d35f9873556c9bb2f4c642e241cd9bd4a41e6247f0cbc2143ff142c9a3d81a654d450443227c50d3a6ab3ff063754ebc43c07659296e36f513b994ea543c08124cc2c037f1d51437e61e670e06925dfcdf14e45c9a9aef4fc0a826bd1654c912c4e77550e96a035b0bbec7d6738db8644948eb00106345b4bb93abb93b7fbb3d1f100d394f033628b524f2b1ab55c2c613e069ae6c8240b35a58a3c7c1c7d761265ff4b930d839a677b29fff3971f1d92b415e36b18c540421760d2a0e1300b72dbe814f4024c0fb9b048436688863a6a246b06bbfbe290757950fc173e353eb5de792a3868ec2a0e590af6b6376bfa1a05433da3d3eda19f6991f7a821e24ec3a766e3991929d594068716b92cfaba33672ae69d70dc19ac1cb1d9959a66397ce00a95a97cff4a95f96f3325ec077d171ec8e25c09cacf771b21a0da96a8322b16b45dd7b51c5e2ef2bd2ca1f422cdfbf9e2ebd5fc7085cbdaed775621c2da58339da946e39175ae97730704d23d3f1676260663c76acb7255305dc9d9666a4f569f16ac6b1a9c568164b487d4d3479b93e410429d53d4da88442c4ae75ff17b4f045d54968c89482adf3548266a61b4cbc947b616444da401e7ef41108b83f56e3f4db980390053a0a09934e629f80bad655039c6a36f49946f4eab03f94fb46cfd857103380e75f07d33c465215b747c28b2f1631641663f12129f8ed3e0e635b28d883082445eb0f8b140d49381b56965cb880e952e0642d9fc1bdb070ffe3c09ddcefc6bb10a75664752e6249ff6ebe142bae213c004c7d29b5a31225c30a648ed0e12a0174eeebe8bf25a7cb5a75c23fc1229bebc45fe3c5fdb826c82c4a65f947995f085f17d7b11847d94714685694bf9672f95478b953c60bba4eb7031e288983e02b3e7a58c5d4aec110599d42b08242695104d2d2a12598c70276e7153974564d8858894a8ef64bdf73689c5feaf367a2819e3124eeb9edaa6c72c0a4acdb01e634ec5795a381303cdaf9d5755122baefda1561fa6a3f125ac3435ba7c069638b813c2bbd6666516a79d907e321f16c1101119301a76526113f46422b62f86100593f43b0e54ec98d04e094eb44f10e256475aedd211cbbaacc2936c2ddd4e35318b8761ff62855dcd50ee79fc938436afaebc18c033744193717eeafb1e0b1efcaa2c1be43f4950ea09a6021e45030c24f938fb0ac1b6a396aea08e1640444031a3d4e745b305616a703a970d4e139f6cca9ddcb006e6eab4d443dde3063b2d97f08ce30acaad56061c17f02ee709cf33eadb7030b56f9353100e67958fd7f29d701d7d9fd2fb79f000c612cf37b69caf27443ffb790b6f7de5b4a29b74c3205100745073507372ce9133697cc1b22397367baa8ec6e9774b98b2940c1f3bbeeee2f1181475193ae99d2a47465221d7344a7ec3715f4bb880d274b4e163859332583902d1464ef314f4c30ab83f274b9666a0ed127ff235e73165982e54a8204b904582ed144f67f42ba264b9bacc9aa55e77b62e62c5c9f1ae9bae966407878686e4a42e0d07f550958235921eddb4220db0c70175658d57151b4028f281da7d134adebbaae5b02d73c967201a428f1da8fb525e53788444b05ed5f93e88a8286b1efad8e89ecb7d4313e6fcf940e7df29ffe289a59f7cecd66401cc6eb24ce6b27b644c62da1bbeebaebeebedd7dbbebaebbeeee6b4dd6b65c312638b01b9d252fbb496fb5a6e7a98cb028f4792a232c0a7d4078ac395e91541d25d5beec94e8fdeff6cdc34c8942d927ff2d6814e412a432c2eda9e628c461cf932874ff3cd5f612dc36cb6ddcc6d5d8efb6cdbe8c7bf66edbddfe76f3ce3befbc77db6878748ce77e39cc765bad56d7e5b46e5c382f2348629c978ce8b68de6a553b794fd5de81d20e08a2d188157aea861e80dbf6c7277df2ab5bf5d91e37662221efb44ad3339a4faa85faeb5d65aabbc3536c122c223acb7b1a9438e5ceffd735f51a9b52d178ef5a2eb1f2f5862861949a8b1eeb66d6f64090aac699abb865b5802975e7f5bf7e2596db27f0b47f0586db24c6c0335900b33d05b38fba7ead820fb4fb92511b1c063b5a920a824a83635047504d55593c80e05aeae4d5a9d071f50b6407da192b1d5c7bd382f4f0963f0a8540ee32ce41f6838404f03c9e88b8b9880e7cf39ef3bc1a3ca61281387d1542a55ad9589ae7f5861051326c098c053467d6517b984c925f246129139ae4ed4c94f075fadfc4cadb89452686121adb894526861218dc0c09d47c9a24c76f2e775dc76ad1187a939481c46472a19bde8fb13bde68b44229108e71612caa5746f0a18b7944a2cffcd23a2b4294329925224fa4e244552762351d77dd7755d47cada489b235b452f419194527658a45d14eea1f1cbb848c4bd08dcc1a37c52f4f2bb4e14b68b7287e6e98e11fdf859047a29d3949ec0328fffe908bd484728c4f585471c043c4a56163d4c88a5a242652085855c20c5a12f6a6403690e129d1d5a5f234fa106dd4de93f0c06bbb00b9330182e0d4144cff46aad572405131e0c01461e514bb03fbda267eace949def4d7c34f63b6a9f52ed5d93bee649fe04298f3da3eb1f56c09c68148a2c6b509a648dbefc348d6a1ad5341afea09aa65177cf3dcc2cbf731d0110155b44f1b8000c2eb4935e62777234fad5d03ae66b8f3bc6696ca630a62c44e053a7684c7497f23da4b18ecd934b4d6bc7fde2a51860fb14fc21b54929a5b169414a9fc40087540bacf21d60aa831e348d55d15634cc7ca73d940bdc3132fb6bb3450aa33b0e534551bc97b65cfd82f3f26cd0f58f1ba0326cca90fdf840d1344dbb37df80a1c465621de39452ed1ed1313df8e0a163bcec52b2bfa4c1c70e3e78e0c144471f2e3a0f32323cfefc6af87e4850ab9aa6696f35cfe3b53f3aa4c0fe2f7f58a103224ac889324409ac2f640ee30ec3c21d629bd8a0ec6f99d829b6a7b51b8cc2ef041ee5b1249778bd9cc09bf54a1de3ddf54a2ea55cda228ac368b6be5b33b2db31ae8d66a4c5be6c8e8b26edbbef956b2104ead7dfc220f66f58b24c8094581e2b73f16a2c32c0a395591e4b33c47efdaec745b74eb25bd93cb9f632e2e213f8b3d622c68b49f6d7b4971358fe685f9595bd7eaf24506de689e6befd5e495094775c7499e5a9b6c7c660365f032a92efaf01a2bf169ae83b01cf1fad6c562bc359768c111a6465fde24fd1e894bda24ffea8d309045d5cf24883ac8c06cd2c433bc5453bc4b2ac8d95b58b54e6a2d3202bf37a9c38cc7c2bcbfe543653d4e527f930988e4e4e8efc91a2acccca6e5a825698e0830797911f76902c9c19fdf141e597a9063af573878ef1ec5204d9df47c7947e346da632f073b3bff417b7c0b93bf6ffc5cfcc61e81487d17e7e7c54176e59266a6bf3d9b61e3e5a383b5c40dadc046d3e3dba0db75c928b000a5224b1128200564e16abef03e9944aedb66ddbb655cf744ab5214919a894caa269f4cba43329fa45fb1f5b05c29116b14063a061683852232ad5a8aad4be01fae45fbae296543ed4af8f4f8feda6be7662b5b509a1eb1cfd3c7a48798109b4ecbecd85b2cbe0c917fcbba6634000410d56426c0e0d56ddf79740183c86395fca50ba200c528601f40bfe3105f0b2a3fac59f650613e871df9f8712c2911a3942f6ef1b8eb4c810b27f935184da75007df26fd487e1f7dd7e0f0f993790b6407a435d14c7c5d74ed07644a7823b13dde6af3c04fc496110d1fbaf84fe41f0ca0acf8d27bd8cd3cc14e96fbcf6a42fa1b1b272430574f911b8f218acf1225085e7b1e96c78af7d0478d87821f00ac76b341de3d268e4f6d011d3ab4853177a4fe5738026cffb6e7a9d273ffa2db9d0a76222d9208535a6af51513179bff2f84d2ba14987959f6fe2fec6fb9b7604278d66c65714aca00f17b5670125204fda87cac8da10fc8b40bf683cbc0f812cdccb8f723f84f4defbca865842ae4349199c553ffa5dba1f9a6cde61b2f66b589e7b1beef04815ecbc0226a151917111d52fdabbb4009b74e05abe829ee547b3f21e18c4df7b0e0ca2f168d9aac034336012fb1ce89f4987effb5656c0ef49d4863bfcbd99574013054df4fb1e9e6c89465ac7639e7a6caa8b56c05373aa4eeda94faa92ca539d54585da2ed747f48e89833a40c59744dd2391de342f6af483a46968810ab6174d1acba8328b4930ff058739078cda19436cdfe9daa4dd49c9aa38535070cdc2b393be3c8184f56238dc9cee1232d4861fde2afc467de3b4324b2ead41c172b8bc6589da94ecc0c19e5a13dd4a7e6c0ba9d9aa393e330daa4af3c9672a9e6d41c4a59bc2074fd63272728080994306abd9921b3e4009fa0b08266b9c4e9182a95c8242ec8fed84b3d98967aee2df56099476c8514aeec6343b1914cb21552d864ff1f3c0b5603e4063aa67e056566990277cb1478663944d34f400e34833bc0f69b121c67284731853c364fa9c706319382802bb8e5fe5aa4c063cd1987ced383c43224cbbf1b689652f278025012d62f5b14cc83860cec9255a9b52e1c110cbafe018319d00c094de84f4b560bb6e4468748ce8e8b7a4ab2e69c252ff0ecb8af127116601cd96b0d5d661b5b539dc45831560c08decabe7f0e5d43dfd03272fbb1c5b81f731945bfe0af7a229dc82966c8fe2e7774b083a9c6aad51522a2eb1f504c396306e575c64f1da263adb53dbb51f35e8c4b2551dca8c7a3c7055224a740cbb075bf5899effe86360cc75f755ee8bbb0266c01111bac6a84847056d2d5c411abee815875d6f391a3834614ca1c930c43a1f442f952d9c1ede274959a6099c7fe6ae4142e668083558d90fa049d557b0c35426a4061e5c9d7cdaa7b4d2586db8567dd26334df6e50f341fe942d6afb8d064c3bbf2fce4aff50bb0fb83b6baaa8e0b092ee0f961fd2829c28c9ef123074d7c8028173556eb9c95c5aaac7972d64cd127340a506b0beca326e0f159dd735d585997c2ec1646c91ed22972888b95c58325fdca9a290af4c97f2cd91cc9fe0e032c4ac1748c3ef99b71d1a052a84fbf7ca5d6deb87036276c8ec003d43a824e1541776bda8e77534397b4f05a6b490b1c9a808f24424a19b826640b640a901822c4ad42dcd5f6236a4a967c8172883e790c0518a509720f60eb028b60e011955d8612270b3c36cfc809784469538713421a3528fbe6da36e97ac99a1889e1c098e46cddd2e5f2ae3b142af6bf5dd085ef3c49974f918ee9bbe191267d66f5b9b6be7ce108eb579de8fd622033250ab7d0f5eeec475814fabc0edf2bc238542a7dff9e8842ddf6bbcdd0b95cae1b3fe1bc8ce420d109dadc2ba2eb1f55b096b0842551d2b0d134bf712cb0cde3a5940a200a4d6aa797367f7e7c505a6dac4e106e7a80644da8eadefbf7efdf99fa79fd711e9fd257c9d0a06a99fd7450f9d9e09fc8c72a29e3859a7d5685f045144ddb418265a963be203a8502129215119560674102b3b4304b1298a50498e508dc9f4a5609a25147cca811cd5aabc307e98304477994fb5b80cc341fe8cde58ed1b3d9a60a9b479b332094e257f7eac1224a13584d68c2841f314441b2191a204376e0d0dd6d677650a59942a1505f0d55e0953ca2b2b5d65a54c7d8f71f40a76c40c950331d93923b1c469be91727fcbb81a4051e2f093f018f2da33d5536732fce4b740431bafbf6eda46bf77eadb9079b7bb2a40a50308b0cc7fb77524d2bc530fd520c4bd3c885470ad3fe61f3da5702bbd242e1959dd28b553490bc039472b4bcdf8e67aa46ba60096088b112429d90825512f91254a902cff6be2e9c7b6ba52f4a0430bac324120e8398de9f64b241228d56567e345a1991482bf84320c9bb716fbc1078a5c2874292e5bbeede1a2ebf02a8f26058a384c3d6b85cbd210a79d78e4c96cafb752e2a7f4393adc15223ac5171e95cc015975701838c7e6534725959a9f12ba377f9518d0f82dff42e2bf579a8bce9798cbe46129a1b23d3abbcca87c0203a985ec5149aec876ad4f8d1d7084d3a847e8642937d11e9fd4da4d064490f815028fc1a151708905ef4225258b3128afc473fba110e1982e387a42022895a4a211c3842a11ad6b20080157280218e0700287a16c0d00aa0cb83218effec57637b15c021a11771f5862864ede8fda3f6a97dfaa157e146a886dee56d68ea429a9591fd1ba63008e94dd6da7047e86f84352e1ffa1a151b58147a0dc56d2ae0e883985ee55dc0202b3f7a0cd624d94152799335e13008e9fd475f83df149a6cb863e555482aa3efcf74c124342e3f5201456090243b482ffa203834d99f3ffad187c020a4d074431bee983f0a4dd45fe4efa2f22152484585347a2c12915ec643a49551af429cbbc470adb56b5bb183a08c9bfb5e914e80fd677670f7a15a6bad5e4dcb94d061ad6aee0be1a6ac92d0e741caf0ddd03fe46a031dedd30722ef60c3235c2883838bfe93829d37b08252fb421f0a6be42c09123aad15f7df6b1f4d88061ff3e4ff813c80b88abeaf7a28955a8baf77460411406e5c30dadd4dbb1bc797fbcec8b2e71d27521770a00179743328c03444892e3681a50b3ca3c063cba8d633b5deb8a8db220435cfcc873409923f728aecb12dd9ba51b554dd9acca32a870896f554da7b5ee0963caa54383e920ff02865513cc5c33cf9e08c2c5a861de40bde31f54b44b00f998281689c687eff86b2fbf7d371654cee0dbe4dc0363471dfb973c9e493dfbd9cc795bcc0348f2a95013a25af902a6943297b1973f15ed2b6495828775c3cc900cb664adedb92212195e8241a050da382869932904772e827d9868b5e32c2e6f0bcf03f8b2eca8c9041b6e1287bb2c3801a51269ace3b9e07ff227709dc846cc9aa139fe1b3f7862345b2022099ecdaaf5f8ce4e020121388c062a3691aed711867e1fa3ca14ee8ac12a13f1aed9961d9992d60afb439efb7803488ce40fa034ae9937f575610338f743602e5aa6566a6b048d4580e414616372b96ef4a6260f92c604dcbb3b480423857170d447b6a84682558c12a09f74250ad20965825b14fc7e89800b07c8c4af1da6a7996ef31a98f8b3d5860db32fa9a96af096b46bff2534e0d88d637436993e5b780547a5de8bba626c98e9667096b58be2534e1ef554dcb9bb00b88570808d8178e321e8f1ea10e12c8949973caf639cc1972213803f270d11da86390d0a9e94b982e25c6e902d96b933553f6097df2bf2228c295ef8d12b4c705b4a75fec947e09298f38ff8214880681b407ec91bdba60e711fdc9026ba178051ec56f86f6703f1c90c34cda437b680fbd61b151094234e575efbdf7de7befed69656fcdc0bddb87a97f84f5ab4e14fa3c51e87ede9da1dbb6ee84f33292f3ba503869dd7bfb3687455fc785f85e51a78205bef304c4eb9c9f7cae137d2b89428df986e35f0be4c685f332d2babe795162e1fad86022c2404bf48ada05bca288f4033cbf94a9f6251d1ecff344214f14027b70e791fa48b91a550ef384fe504a39954a7a9ee7799e28240a799deafb68ebc68563244747c9eda2eb019235e942dfa7033caa787a4ed5544dd5f875481a52bace645ca4dae916bdd1260e739fa763bcfbd18693f24879f29ca12f44bf63bce3549ee7f3bae9fa87154880e8b7ec089edcb223c8c84dc305c895cce51a8225f549addc56a9ca102ea026f703acfd886ac04cc7a8909d08dd61d8ff320e2c2f96788adb50d65a231801cb3c96b44f870f3948189e8628326e289b39c02e71a8343346c0f34717b277f7c864cb2a9db1d68513e48363ddcd4925dc8ecf66403e7c39eebac8d1ef997a2c65d098c8fe3660301a02e6414e71e68633d213f00d22f0f6f5ce994bed7dcc7d1e07e27ef96e290658fb113711bc7d7df7388e03af782b076e14dc3c0b1ef1aa17d6d499cc11a390019118b7508016af00fa8586a9dc73e1488db8ad97dbba8eb66e705efd324a814d776f4153b61e2a55a7aa74f3ba0d54f53cd994463ae5023eb64f43099b11aa3f9da252b5fbf8f4e0b82ca24401e2017a62330675f965607f4a29a5657cc77ca42d70bbf8e9900790511d4115c3a34ac644a552d5289811034ac22b093029add96c369bcd6674677ab7d6ad53740c32302d9181775c74a73e45e0f167fd3345653787060681c567028f5406f68b7f2a9427ff01b490ddfbc58be0ce34f6057e18a51427cba7f27594fc3f27860aa5744ef9b714c393524aa96f57149ba94d140353080377398530b069cbdf178a62453085b9f8ea18f93968d17f8aec3f6a3cd508a7cfedb8d830dc14cd5541a7e8903062f4a888227b05e5733b0e438368919ba24362f4a8a09dd4b6a822cf0e89f9ea171fa447c5f78b166a3ca258147215c5b4f9d3866aaf12e37e3a7a4367406edfbe46e025e4e3d8e40de413b289521179c4e90c3cf60c880df26912291f439ee07be90f904e8e2f83ad7d1f6894bcc0252ff0758ee3b696bc7d0d6832b27d2033f54e41fbd2befd74d80d3cc2bd0f87b95c28ebd7ed86352e72712282e7cb68d53e1683ce6a6c80f48bffd6047f1e3be62ac03223326254bb3e7241f703f464892c6644e24cc90da49dec8041852279ad79e839dc5b0684cbd9d3f9c060b19f284b7c767a80645476f7bd18fffc883e76a48f99ba17e352e95f147157120377220a976aba07615c2165552384654707abef85502db85825915f7ae23054746a06d63101c8f38bb905cf15d99fb660238be5b17fda63182591ecb6db7edd5aed11eb20575fe81c00226fdc73ff8117c4f3c47d0772df516fc2f084e152090aec59c2eaa67d0d35dca89c4026915944a768187df24f92040a28f2d83f63ff30917d90799cb0fee917a74e3625f0d499392e8a50664ece409ffc7d7cc0b28c090c06f3d97c04c341501fffd7be057c37dc66c1db2ffe7fe757051e5bc68007ccdc9043107ea6eeed189f2feb712293cd509fab056d2a522abae0ee14c7690025d54a13b83d17af67ee097814a9562b115af69f73a68608a15a79cfbaab9519c62d8babf67e14e5269d80478f0ef4e8a161e87fdc6b5a8b1bb2f2da53c00c8e0727c563f158429c058f78df59fb3b7a78f49829d36b3919354f1af726d023514ae9879aa9518552f198010ffecad7846190243b6a3cf8414c1f3e7e202a0e4d9735532ba1e9d6f8bac2caca8a8a8a2bcb4fc768641afd0a614d8d1fbd0547cfc9d5bef6e1d7004d3a681f6a1f86f3c137ed980ffe7c3034dd77f9212afc101b3fa4c697447348a9860d155c4c37704cd6b4a9ef3a2b5f47aff2d10c49e15b589ea4b232e2629d41f3545f05d46cb4560ba8bde62cd75f61e5fa2cae5c3f85d1fc99a72a7342f99a3fdacf5f696dbe82182b2d8ee3e64f90e6d28c44d15a401a4bc399712d7f7ea464b1582c16ebc663b1244bb274e8de85b303284173e3b8ee054d32f5ac45a9e41155ea8248095eb0aa11b202153e2bef856860b456dfa3d0e8948f799a411d434b43602d881c24c5068ff327f6235f1e83c7d04929bfbebef9e3a2bf4b0b77ee7972805cdd7992e136ca7635799c98417336531ff795bb5f830ddbc5bafda552ba5cfce6cffc911aa5ef8173bea808ee420e49924ed5227e24eb47b27e244bb2e65689f48bff090798a3f9a1e69ac31113113f85f367eee820573ea4e4c08fde40c3d4ffb1d3e04ad7d699993a42b2fac57ffecc1c869be230dbcfcf4fd7adb45aa02033c3430d0e34f844e17162657a7a7a7a7a7a7a7a7ab4c0328fd75a6bad160299732be00ba76146260c3c7e116ac4e91763a054b487a7492c26b39d8106cfeb95c3e30489cc48ac89ceceeb8531c618ef88ee3e3220531507b262e1041d2461a6879d99a712ae33345e9c800b18ac84b81258acb897dda05ffc65586132ec4dbda937759b52c986db30e9855fdeebbab0409b137ed9fa7abdbe3028fda7de9c937677cdf10176ea7283e2f2a7e898a654f4c9ff8a2df0173416fb5aab1384d003d94c67f664f652c2b5a95dab0c7d8bf04865851422ada8fc8f4a252c6a771b4566461a61844dceea14857bf14c9c55a704afcd5319ad6051a8b6564a2ab535aa2d516d856aab7a9ee7dd5bb98feb7ae5b100579d79825558f6af3a4f7a82fd455b60961ae0fb2d3081efdb6f019eab1330fdb1b67ce87ed1fe871e6caedf81996b38d6efc1762ec01e9859fbb05df4c21187f52634692117561c17bd9341a144d1e6b17d424ab2d76aa4e2d496c3cc595df5660e8137fae9c81cd883e44c5c0f326fb5555b371d53d32f26e854903ef9e7c871e3060b4b9ecd10c80cf00dc72d6b3ff64cbe9d8536485b81d5b414502184179ba6fd08e6b167f2cb8186be8637d0afffd94043d3e7987dfd10187a2ad61baf2d27f0b350500059d84cf9cb2ae999e34ca9add70154aa9e550ac4da1b17ceb5f1dc058b19a5b476775795ea8b580770cb6437f5a59c5f13204383d770fc5c47941671247b26c0fe77de5b7f7b1a56f0079a2fbd99ca6fc959f0befc81eaa836fca537e0884214a290ef91ef81f0a8aa54a55259dbf9a60429dd4d4b39e895f4232dc1f33b77ff743c10d56ead2fcd27ca143c68f824c186fee0de1bef73010176ed768c6b14c6041e3fd31ce24c717d67e87edbac19b56b95557677cbda3c9871b11262b928b2badf179c80c7d0ad7d5dc109f4884088c70ff0888241f555cae3c68563a510c5aa0843752fe518b2bf8d8e91b4de24f0bbe8271eec353418c69de156514c478d2260ed671c469bf3ce8d7eed50c6c51920acd5d078ca94fa85e2c8c1e3c78eb07e3573f80cf3e9bf8872987e6ad2fe9a344a7f7b028b22102e758c690132d77e4a9ff05458adb0d84f94253e3b3d40b20a8389a2288aa228ce548ffb0f96ba994769e3ee5e053b6b579c295fa150a2289e8a804709d3644cca602528601cb90bbbf742930edf77df77a61d212fd5519ef822090f6070054fd0e904b8fb20dc7bd793e07f0f20d2061684a39aa4cebdf722e0de7b20b29432f0a48484d54829484021a2b5124280339270df9f0ed90547df64837cfbf281c8f5d3e1830d4df7db24bfb37d2032a90778c4365ccc028fa51cefa29398e0f1337dedbb01671a1ee15eba4ab93f1156994898571ed10d46afd9cc6d3c4789bfa6b8cb9138cb6fe86cd6d3c3e386c74cfdf7f43881b7fcd6aae4f17fd63107c83e65e6e28c87bf0f1f723061198ef22567ceb23173aa8a40a7a414d4e904822e2ea3d1cc91b8e8d223c063c622e230da6c36ab75f4ea7040c608827cba5b6bedba53245487bea811298028f0bd3796052005a671511b618147fad274b4c8fe74a7631a63796593a08bac8556606dde7b9d50e3556be5669d4d97d329e98674afeccf4de95c1d928ed5dd64ffdaddddad421a587af7b7a7aeec54094fd6cdb30a69602a57d5037d95c215df81a61d0fc48a93d229dae2665d8eb84476da2ad21d31764364ef82c8fe14059de2ae12f848e96d909d837131cef301be216dfdc032e7eae65cadc9b9688b73b564ea7e13d95f94d331f5dbe756afebc08ed5d9844088cdea865d6b9eba225dabcb5122774ba41006e6f2d8b964485b2d32b899fcf17e36a2c0da8f9c2b3b15b4d53e35dc6267e0919b6196c354cacdb81937b3b6c62be4d34ceebd7dfbdeab69da275f966aa9869517e0b1f44ef0b5a56d73e1bc8ce8d4189d01a1d7529626987ba741cd39afbd5e89cc66019efda8344df8053decd0080000000153150000200c080583018168442c57e5241f14000d6d8a4676503817c8a3490ec4280842c618830c010401000c9001a2c2b014aa92260c6fb0a3f46e32b7fdb5d5c2ef3cb7928effe3d28d08e0070877cdfd394f2e05e8a2948d9bf96a2c2232d2912957a8aad31a8c88fcdf3312382cfc34e1781716d284e84c852895a1d650e28e660a92e9a252c3063a9b8a009c5d79c5606a237ca84c2802481f6c8924162af5e14b82114d0c9ad6091128a9681584d659aa5fef7c1d51fa2bf01c74b93359a0a951f497fbabf10f08795fd464c05ccd8efd342e827fb2cf4b3a535d4b5f5c8c1a01ef07f131c38b3c21d030a635cfa9bf20d823c63d282aeaf7e894cf1adaa94ba46fac53438c6b2c4dcc5177f2e89887dab0342313d3e0bc939f74943bc925d23afe5e79e9a517f35e3c4a9a49de71b522eaf8a5634095f740e147e1bcb21877f0180a37467e668f3da129980b4f6e844bbe6c1c6bb3be089406822c6e12c54f5e158fbfa0642e8516de6d848b567c0c655a8964eca19b2a6141478006599f17023a663365ca222ef09da76203f477107cc3c13a14cfe2f8f9b3204b343e101c8e1dc2b02c97d95a52a3d9126b7b6cea6ee630243d011f7e12dae4914b857ee1f89484c166b483610ce045d0a24cf7a139216303cf0ef2b034cdbc19fd0c817d4708fa06738093570413a27f8d5828158653a4d35e1e26bf9a8153cf90b5985e976c579d09a35728044e3868c70d12609d334fa134cf6fc6ca89ab01697397e18fc1592013b0d15ee3ce8db61ee17671c236100898f96d57631029a4e59e320120f089d503e68957470d69728cd4b91c832f34101598875fd36ebd2564cc1ab919a33fd9da03be6eee82be75529d91deb7a69ebf6838e736c3d5f3811468c57a4c815a4184c0f098d0fede963dcf89c71d6f5fefe2c9bf7733c74f5b40ae527dab0daf46f5a45c28983ca41fea7bed10d19159d061ccb97e160094643865b239b3a9c488dbbb482c45e2d2c248f43a624d570763075ce4f8c62ca4425a8807c6b91a7e5b26d7364389544ea1df5332df3243d661eac255302fccaca6ec5207a69abdce88e72308f309883bf930a4b41ee6e188259c1eeca9805ceeb3c064b3ae547b42f2fd353e4b7e2551b68e67bc03d8c18a9bfe22dd5e71852c66a38ca7f71d2fb39dd69ede947dfa821752460ac7fc92f29cb563b0246585591d2a0a7f807507680d0828dbca2e51843f0160871ef9eb5e26db1ca2a9cee8a124074c904370a69fad2dbfb580e9a75bc126495b00a2f95ac5669b18f1e47a5a83bde1e7e92fa592c1a010fd1550ba850bb899d79e6ea7271030eea3bef53403288662ac428de833f1c28c358fd61cdc29f25cc1beff55a082dbbf38fc7eeda1741799302cad803109f600d0b6236100f062079aa0cce61de73348886f47ebf94dc17a9ff903d6acb0fda006134f8898b8ef523b01e03778e91d2203f9043bf956a9a9812a10cb44d89900454854beb1333b0ecd7f72d32d06559aa914d117a0369c2621bfb1c1e48194ae8c02f8d26e78ccfa73faac5d3e9b0eeec09127afa9002cf5e90ae0fe47455633fddec7d303d1d2d4b79b73737b27c51cb751a06662c4a8e5049bc69c48e56a030e8b08948acc2d622c2cf44cfbc4524e2c1ad9bad6539f269fb95ac09432893c1294b4e7bb3ee357306cbbda1426350fb78f9d9f607a839371fa8917fe0746051c90b87ad46a68fc9d63d6c05efe541ea25e5982e04f49244c6ec0f9c27c66f0d2d55c3642768ed024a8085fe4f7ba39da50cc68bbc5682fc08306660e0d8cf0668c9db85417cb6256270d083a5fc64464bb57f4aa8b13ceb0407bac51f008c5e38a77dfa7da3bceb81dd678a8944ccb9e932173fc2d6456bf8cc2154d5c84192cbe2aa21285596baadf6b18a59d7c665a180f2e9fb3070a38a90482c547789017c3f72b26c08cc1cfd9febd6ebd8b2d0ed23b49376b98696a7b134435d57bc23328c553329b913e617315dfdf7aee15a2b0fc780ba9ea45b0af8ecda79762fef77737b159c048fd6e3ee8d296574d62b8b4c1ad28a4a03c397e0f1b2263336b41371b543d79d44e9c23ecda659e06742568db9e265b3d51bed50657caa7a68f56e32d27c33b1cc3554acf3f7b4607e56e291fc30d83c1f181d1b4b40fa9e2132e35dc18081bf66087dfefcff852cd73e51a811c1467e9c58ac6089ac656c45fa6e2906cbe2bbddbf9dce69d1e6ed80cae4ea670f3c34acd8685c365f80b2ed7fe3d82ce91bcc91edb8de197a1541d10110571bff5267c6c8669b5d49986a37060606b2325267099637f84c23dd8188052e037ba4700d85bcc717f0dcce5fc75ffd55e9b475645f05970434548bb08f2fe5660620481b27ab91baeb3e4ce84cc8e60349ce60d0f6d826d17c267042a05bd8a1640bedd0fa642f2e5a2121369f7f9a302c11947c8ed68dc00e413f9af94d7c801daf3f1d4f9bcd961f09ed405089a78276050ac22232526d914f75d10f37b14dcfcd76c7f1ebbda7f4328a1b34ebf914ea285aea2b2dfcbf76dd6ca6a7951aabdeaac889cbc353893a861ec24309558e9a4c77941378c219c38a3d592ddca464d97edf9db34b36289431904218fda2ffe3382ecc27c84e4fc5f18a1ee94fa64e6f389df56c331722af7526067589ee853fe569d172318328099331a910001b29de45b75861b4f0f670db529e314b582b15ee63d1ebecbd317c2d88164aa6f7240ae7b80ac56e981347d998980407685689abe988f638ed42adb0e0a94192d52b6aad894bdae1cec7f34b9b79853cb5d17c0317f689a1414aed99f84579979c68fcfada52e4e04498d0959950f6168db1273941001ce55f72c09b106b32900be3a9abbd04b99d2f9b3f071acb3816cc2ed696d1e5181b57382d32dbdf1738db9162aad542d94ec314909181a12f60c599070d39b28098c8ac4f0254813ff25c6e758396875a4703555bd813151abbc40490d68bc301d42ede051f6692c7f27795c6db71b2c9bc68cce57a7ef9696ba7da79c7a03cbf633ddb12564c19fec9edc549b672bb31abbc236f3cb582b9a26ac5249e7f3bce60b841ee311518dde1cee8fea1039efb95eb82274fa2b260db17ff0a707070747c5f4ee482bac63a81768067f31e8e8be39cecde5d22d64d54e7da2c380158f6c6bc63c81cc4d033ed41464c656d99a58c9bea14fea27b9e6d0baaeafe2625a8b1c78ad9987599637b525bd1f7306c9edec15348386364545c33e3a6208c2fbd777dcab0213d879bbf53ae50d90a9045dc70c5bcc034cad57809398c3816d4ecff01e4fd10ddf3a70bf17ba4d6b881278b456e71068dc697c315092845bb5a299a134ada504bc7f9aba09fc1107828e9720d1c6d3ada61763417ba04ae83c26000462b58a2f1c192102540648afb70c2852ba1646b5b526cdf5666997961814dfe9df68b40e974287f64f14c35cfcab16b6759da241746e4f4de15892759bb1dedcb8e54cc0f562116e79938f68cffcbf3ece153b9116f2eee42e0db3dbcbc9411db955cb30e8fd143217726a505334d4d2b78326d300b3ad216d5e77283a870ce3e1dc1b8a290564bccb5e87367e0ed882e9198e18d320b0ac10c504289f3f640abba9d25906d23caec1b9b69ddcb060f2514997079020c4c41be1aeadcc38c0aba5170b5d794a0b25664c2c1028a2719ad420b2311c3a75218aac2817496202df099ee05dd72144c5310b50d0d0814d901b2fcec1d020cb8c0f7adbb151658fb26219ac760ebdb6a6c3631af688663157574491802ceebaf4313b27aad06d51d31fffa9518ff06b005c1929ea993be72bef8138c57b1b31adddf4ea5ca24bad4b56d70943117d664956711f2a642bda9ad8c89c8cabaf52e2246b6f8889c30b04e70add7b6f66d5dc94dbcc77ee77204aae6a02d122472e0b964c4ca775595b447636087adbb96a4df7353f1b772a939b1d2c93ed0439e787bd5879a1781c58adc22982402b9df4b5293467a03af6274a4c6101373ab1a24e2ab2ad79e93af3db5dfeffe38f896261546107116392f1a7aebb14c63b51a59a8960aa458246699eb08dfa34d904b8247ff9f58dcb9ada26cd35149add888affcc15d8d066d7313ef195b34162e32ac4c0dff27c13f86e36147c312523f4ec1aa9cc38d2562940e568908cc020b8d3f2f274652abebc1040f767d2832f7701f111495e76a18220d62bf04c08b91752826563529ecda311758264b32a93976b902242d1de590e5f02e2bb4a30ed55e180aa51e23a7f40e1841fe388eb09142368850ccc127df7b20a23dc21318750a4c3e127c8f0e3a0ad9e0fb7c3b569c2f6232886e8354af9c7e2e55a6b26849d47c0bd7f481ecfcbd230c186ebb39ff1e77c443ef05c295490a155386329b04ae60c763e2f0641922657d07672719563621dce877bc512582a3cff94165395a62a89fc0bac47bad848051af9840d86072df08de7848dca306245f7d11bf4525a581d6c2ee16509d0d660c2d0b6ef22bf7b5ba0142922036a112b901d6a78e27ad15434015b2cabdc596cf82ecd91adcc5cdc56c4df325ac95331b418c987520ea2632be35016764f5d484382f53f6e265709ba11322f423f7a606843e3098db20d564f7a9bbcad6560e4f18a8bb39c27dcd870e576ff44cf898413223ae98518fabacc2d89ac7ad48960a9856129f0c7a9d3c439ddc7ad2c551239f27989bccf92ef092871abe904f5eab7b51c6c2ae50134e6cf384a5d40eca168a22b4ab6541d585678a4f6e415c4c089e26c15965f8e7830354b6139d634ec55aabbdbdb10f859e55cc7fc316407c7b20c237eb4fe4b02ef9b399ff96eee026927a0dc34199119174cd0e49a0e179ff07d944b650432e4708c73bcff9a6c8d915d7dbd34beb1fb0476d34781a8f352c4c231513350c920c9586e3a4b4bcc55777f336cfe6448fd1b77e6985f5274b299747eb2b0f20abbef221de42d9f3983a0b708848e8f371bb7a2c8511a27c68d3fd8411cb2d92afaa2e6f51827b08df6b8a236e9d2fe7fcede03530adcc0f37e720cc119414cccc9b289c4c5c12eed6192daae8021760e3332981e31839a9714d021c5348c370d836bb722ae3c62df41f0e8f87fbfe5f90a594f15009baf32eec5b0d50d9ef2f945a1c99f2f93978787c2a1a357fb317598480318e54bf14019f4e673247387234e8900705c3132679604e782e5ef183b9e3ce9a5f896168745ec2b1c3ccb887feef67d5e0aa72e07461f9476bff006b0575117d2a89da0654bd766eb8bcea7232c20d4f83fc6e38dde5775d3ad31fbe0a023e1f088437a4cdf1ac5285c4210e13873e059d96dc9a1baeb9f3403b042b01e86da60b8ef26437f02a05e3e37e8ad51d4f788ce58e3fcb0f9abe3894b1f56ee08e04ec6216881a13bd8e4860a7737d6a24181be215cb3cf84e9bc55d133aaddd8c150b9a5ad2b2323378a5f0d024a12ded8ba03802d58aa9a867a13798ec288a3cacf304444239a410b10bc12ea91d6bbbbbc91ee68b1ee3ebb3b39dec0a9ce76ae9617a9c0899366664a8b544e86e18b6cc3461ace7eade0875325416ca31a5e41a02c231129fe1dffce65437d876f47bf4988b3569e4d6412d5dbfa4f50bc89bfc250a2aec51a7aaf1c17815bfb2886fc876f5c143e4705ca9f4283301432f8701acfb251c07769c1a8fb052b7ab3ae5eaba4d2e9add15105fb705d3cfc09afc22eb95ac9381860fb6d43da53569b39fb23032fac01408c03d02cffd90638d94e80acf71c4c376d39343f41881dab790dcad9c0018479a42066c74f76808b359991f23f4ba6e48edbbb1d20efbb0a222468f483225ef8375ad5c48bef2856d377820a9c40e89b3a2eb307d08369993b0c3dfb7bb313c73e8f154782254e871e194a942884e6e2d469f5d4c064c29b3822cd2680fa10a2c1beb208915bbb4cc6ebed22ccf67f22798a391791604f02859a6ca368251781246b708bd40a355da6d9e1d7c639ea5c675d634220a2fcddbeaf4aefcb3097dc2c8b4ca8d54dd0e07bc14c368c2aeb9f1194f8734773e567161eb8e43aab90e835ead131a6e5cd4ad2e3dc5c332e767e811998c991025f57022d4067baf5beeee556205eef41ab548cedd642bc8fda003a9ee0de638c968050632e4f7b76278035f09a02f82533741f92bb1b752ea91a7058e74150efe37305b2801255be667dc405a97e37c17e1ca42bd0872e70563ea23767963bbba085ec50bc9a960947dec1111c22f494486aec0958728dfbe2aee9dff85083849280731dc95b882a995e48296420e421141978bba8d4a2c6624bed78946a555a88364892692f8a3b1982312837f6ae10c4fa491bf87e2715106410a30e87e74295c58b2625487c41480aad90052dbf3e920165c819480bdb39c8c07df76b81304b48fb512b837c58bc31d2f305dce1230ce4d4083dff77a5e83b5930a571f50a9bedb75f663b08608e911877798e62e72d2c02fe2c367b3032d3d0ad1606cc536f4e7d6c4d855fd2aaa706837f8b5cb68e4c603de4a02f35f8b3c6f61b7ad7e89a40d778dfb1ab072e077e9d2d6db0656ed9f8f18f8449ecb081124efb4640357b02156d38f2fc5ec6bab8653fb18955f9b0b6721406a40b422ec9ea2712682a5fdd5709fb24f5bcf214607d721f7703e5ba5b664b32bbaea590f8b86e29a19c5ec315a963e6e5c3209758c7a279138230b4978f3ac4d95e7b5387a182fc40041602396862af6373d6759ca628945a21b665245ad4e463bc719690bc82e7e83c9a3ae7a856549f2ac9d2e0ed5d6c944380f596f2ad914fd2ac1ab5738c968e20930b8356d5b88c8cef0641f6d2b0bd0282363085037698ac3fced0668bf845676e51aeaec2704181bcb45f056a80c6790220d63f49d470c7a8559f018fda33d1968d65ade2e1f72f6bb0504cf24814b19649608462dad72960b610e740fb6508a46ee471a86162366a5597440dd5f2ba86d07035c54ccaf36cd5a828222b20e536123eb20be25f44d1660318e93aa229eee80b58f4ff5f657092a02fb538015bffcaed74c4e99a4414894aef17648cf587f9d20af7e240a5173e208556ec4d391218c10f574fb72a4872aef3e975ce55d4a09f04218c5b16d23e5a629bbab19c5c6e821a6d704562f0f87513a5fed56e0175f3d18bcc0a736c268978736dbffd1167839620f9adda03f8719ee24f151f267b5d83d9a8a35778e28fc17c0f373d6ed7f2134ab5783e2bd09181287660ccc5cc671df0df0cb29ba1c8afba4ad32a2eb4ffb8b5d608d3115e65d008d87dd89ca0f501b8ab9211115dbd42c4395b73fc97bed177b7d9475eab4757bb98629b5a11c2965a45b5c9c221461fca3fe7c5fc0844b474c5ef411a95c2c3d5ea1d44d801284b9d50384f3b76f529ac1732931907ded1c5399b90b3b9bbaa2c670735290d28a1ce1fc6771b8bea3d31984620d5b9ce40a203e6406f9b2b2c5098cf88bbe35940383151b0a01f06ec79d02f0592d09119b7a4231468b3c5eaff68274d1f4263a342f2b4dc3169de0a4763389654c65c366c7584beab9d8d394780d814357223c1afed253948b0c584474773d678eb0032fcd9eab1521069b799f9ba75a9f1b4764fcee8bd5c2bfdcf90778146c81409e12615e3d7c2a33e54839b12616526e1edc308d6b71e2c708535e6529841173223c968f4f5e3cec9942536034bc9b42f76e3891d5b01da36aaabc287b35fc063b74473d19fcb8a40da34ae26520580a2c6676fcaf8d8c5f95a25917dea6e46dfb140e6a371238efa0df45cdbe20fbaf1d5f65e393ce6ebfcdee3273c47b6c1838f07cdbbb270e6e74a4bdbace398d3750f1d59e10cdfedc07d9ef68e25a6ad6bfa908fdc76e075b06e03e33c34ba25c7941161aada92db9bb73cb5e2e2f8b3c7edb14a5cab74d05f4c8b19726a20e5156667acd34cbbe40178f8f261431761845d5bb32b4c159c56f7067506b5d1ae698230c53f5179e3ddd8199a1d366e621a8760ef4e242c1a049cd7f6c883bef4294c95884777caeb38aacb3646dc74bc6d5833062be2280a7d733587366da3319083532e978ac0ab5e9fe393862fd598f29a44f347e1000a6449ff1c6d28c617d7f13d0627eb6a888bf0eee02e4218d2b7a2e67ade3eca1fa0d48f1d73b61bba90eb54bf95ce8191990fd75d06b0cde7b08742dab719644d8b7eddf32c4877a3ff82858790fa29363c314423c5137194cd793066be4c2fd7a708f0ab1a9cb12c620804f2914c175445069fb779d10b6e504813f762856f0973d4ba3c7ad20841b50a6676178b898123776cac9c61db4082e03d738599c7bc2ff85947a28f757c8f4d3de024e19753e7e3333130cc33fe3fd2e9faf7401cce220ee530d42d0ac3e2a8e6f253f94e2c366d609ae6d805a49c9f956c1f3352c9ccd47a5723fd270733d282a2af1e2820185df9a0ea0a8880acf90c8b4c1c5d45c9c492c54c400b5f21238c48064d02ea22c8f1b18d0b82643684b17ef1229d671fc54c1227fbdfb0945ea8def6f514732b9141d8437db6125139a2636767ff1a84a145454d92c4025373f2cd3ed6bab8f9f003a74986c29aff4b9e964e90dc9120f2c9841b148a7ead25d113303e448c8938fd7750965a91ddf0306b92c6b92e46b81c35ece9dfd859624e4dd91fa25b79b9ff002e3c8a2be7db2c3e458efd4c8b989ae1b05bb0401f8eee3e5b1832635b78ad87ac8ac72d84ed66e312a7676c5b2471ef1fb8fe987ad0a770cfdf7abf0a54b6c34860f16599f8e18277379f39b8541676e839966b41ab6c942f74c3e3412adec9d08984162d59c813756ef7b4304e7ba0d93627b47596ab4c13dedf952b483fd281ee11d0f7f86e8aecc260e7fc75d9fffbc1216c14e13a04f175a674662decf532466b13bd5e181a3d4e3dd24b8d039c85cf6f04a039d881417bb6bb8796baaf2afaf87d551ddb656865d435501997509549fa243f6dab41a3c3d24553b96522c832439a0b778d0b66fa0fc435646246b3488b0e9961ce2e731d191cea6bcebb4eadb1126b7fe2b1470ecbb4003369b9b2062e3f881707cbfba2d9d5021cb49214a32b45b154aab308283273dbc51f2337db627ec042075aef3a9deb6b61066c9bb89f8b1bd08afdb61ade52cb87e3b2d07e7a39bc5b9e5380bb69853bdd9458138acf3af36bf6882da3b4e81b32cca97eb9b5ca0490d0df104e9f9f3d52cc3d8f0924824ec5c98807bfcc6169e5eb6ec9ebf61dc512e8a4d358e0c4fd212d02ed025a6cd5b3a088c25ce6a0b1674fa48a3072886a23527d187d014b699b2d3402156a7ec15530f51ec5546902f4be6109b4138068568f52dcd7e7070188c56ec2666207fea8c54d0dd742f22151b59a459d2ab02609898bc5529f46411f0d8c86431d616737f995d2de863d9968855ea1935a9ddf178a165cfa037fc117b11f0418b8cb9fdf7f339be1b67546df21de9778620cc9ee14b10b6ce0595a8e358983d9be3bbc4a0996251c36440a69d090ce4f44803e0f8306ee8585d5d8022785c542f84cc8f126a7ef1ee810779e2993d638079c8bbc7755a71c11412edf37f7e23b38f85b2d37c561a41ef60eae49f19b2eaade683c059a9431f44e0f66741161bde4db951b424e6a11c4cd178d43cbf60ac8179925ec366d3816033b0b615223806c07d81c9688c7dd9d5288765824b5a54d06bce73326c44cca6e42a6a573c4c8615009054d057838fcaf9da44d83dcdd618038e66282460f5b5ae5427a812a7cc9a8aa02e30857cbcbc8805f9346846c1cb9a3b02143a186e14e430656a953f1c3dc2278e7f69c58ef9782ddb0d48f17d3193f108755e0311c29e0afd810a8096efb9a31d2adc008e020474e740ae2808e2defcc872d51bb94ec3f6a8bc23bc4c05066f3f2b4965009049186732a063ecfb89c0845788edfc7f4bd40f1c3249d7fb6714e15480b4bb898ffa05539cea453515638a3c1a3b65bb62ffcc39238022c7ba158f1435bb317069a389d56cdd153ddd4e2292c0704c5109e5fc62751139a8bce5dfca23386ddeb81c40fcaa715c985aa8170f28d11a9e10c575fd64edb55c11311734a374a120dd431ffe226a94731dac4553128635ffc077959c0c8064e0d34ae1134bb496f0044a9f4aad88490413274af1e7fc027407b911d58b1583d7b6fa497e19f041d8c0973f122c513fa46e4c792c5f703151d409736a8c6c47e53c7f2afbd9acd8858e611f05546945b04d0c7d4893eb4de30197227236357571a4bf62ff7774405c5fa5093dc4e078908560b12d14963b54e4a56bec89a9dc4b25f546ab2f48491429adc490eaea1f29ef2729f55f83f51199d2cf18ae8786d4e60d5049186e288bee720d8e82d18f527d7e4801917e69e614823ced046ba418ad14e3ce735307c1d42a6307c6232b754776925b1839c03d451cb5f44017caaa7a8c926bc71812858f4ab9076a43d450c9b48dcaf4d714c8dc06faca43e56e3a37f539194545818d3d0ca62665b8089ee51a40e86e45ff578989ed533887981bfe1e56e58f0bddff051db94441d405d04a01f9a82f512ca1a898e46ab4672b554f777e879b083c8377a92b4f803b49873770810d66199cf39e4ecde18b43e5cc80934ad677c227a2ae34a9ea6a8dd81fc4e4e8949ab5072614ea22253485b1047b4158a2408b82003feddc80de31f44609da7e0d9ed1d2d2352b59977d4002c1938ec43781b50f0163d4b21b052b01154ab4edeb42485375543b368bf5c9cdb70e31d72a3d752008a88edefdd256787393bdcab20398e94437ad4e93610502ee89855aad2dddeaaaa33fb08df79a45897091b357c964fa270aa5dff72ff40d9d6f22a93c11d7e0b651219fa6002ad9877880e4984a032c2b7f2d87f4b15fadb086b4828a151198249df02d9cdf0376e53615b7a5514c32fe636c3a1a89ad8a68b1e6d23c631a28bcad1d89c0c99b26fe163962bd156bb602957520758210d8fcbd3ef7459eb98ffc38e499ad5c91af35157df31f8e109243258d6bb39873f7da2c661946bc96fa203926aa529d4a9be3d6627d23d4a15f072ebccecee04bccd9bebead07137916a2a8b441ef98865c1e8b1d3629e9e0d3e57830b9b3d3c6239e9187cb1b7b3581ae0f77ca2e6d0e6c54c09374d7e5a4e29d1dd9ea0540a825f4da2daeaf88465dbfb40b50e4d10c30362577b73e9dd1b15f5abcbbdc0c1cf50301a9c6914a8dfe4651f3434db3f3d588c7a2d9fef58f36632ec8a37a17ce77fc24125b33252f3a16c2dfa7b425075bff4e669f140b12880a5ff7ea14acdacd74322cb66d26ca20a7c383a2a3e3c330e9054b6191ad618fb6bbdfcd27041b8b468458b907cd63fd110c50f86e421cba88520a35052067f151c157ecaeb1824fa75758c7690ee039ba2c51836d3e3a40a868bb642e27eb152ee8a37c6aca27d2fac13fb20398a888946ac4532f1a6fa77a157fd5853e8df361157aedf3be635d56c852565c1233125b7262058a1097361a7cbc2198981e8e53f475c21c7f198293e0ed0271f59b46022f885c155ecacf38fde32c74bc0cf431c2263e5912137dbeeea4800eb1351b35e71ff5ca6c007b223bd68660791e475a6ad995f68d2098578f6ceb0996cd979b16086bf2da6c5cebb1bf52236c58b1b3b14cde905bf3b5ad3396f8320ac14aa2133571830d9f9b19e46c24db57f5af773cbf5e6e45e490adbb40ac5c0241f4b231301c95dda965719a3520bea725f26f407eb58155ad4cee9314a82ef171d87015f967706cfe2cb36b39c1a4707049df9d2fe3cb8adab080cea884c4ae8d49e249296f3b02d5f19b352d0642054b53320720634e4d6fa9fc01b1749edfd8bbaa4b629ea520b277edb609f5ba1c0647e78ce936f17160be0d19ce72624ad050535247b9d166d750ae07f60a6bdfdc301027a230c2436109f397042804eaaf8651ac76b693390fafe78f207fa90b0a34554432b17912dbbadb015d7e0cb7b027f6713a396a63315299d5ad679193874ae592d58fadf57348c4bc1658fde092e2469919b058eff18105403e2a6b4123b20f6303b988a893f6492d1e79637bd0f03890150c6709af052a0ec57de264870fa739c9ae560f614364200ebcbd1b46032bf036261b29eee2fce97b633af89b24d80c04c672da60ecf3a4279999c0fbd7fee0202ddd59b9173dd9712ac5351d799b3012a16e2be211a3f02aa22f80d0d37f992e569dd20f626df0e0141ea111f2ad90116b8dfcad7dccc417de0d2b959867b7479794bb3cad571c9e86c91157090108a6df91cbcde3fd7bee0850cc43c45f80bf01755d10f597f0a275a3e3f3f24de9fe9cf1dfd7c458147a5890f17ca4e066819f20f59ce001453ef7014d41866848fa51b3676373d1318579510880a91a1bb6055ab64e0cc7d8824f6fa0f074cbfbedc7a624d06ccb64631ff6e4e8d218f9a61ada2b2ec340955f48a50882d6cedf2cea869acd90da82a7e06db8072e65ade6e003c28e76dba16ba24d1bc083a0997ada330dda4bced3f1a61e7ae12b38b46e0a64f68b3220383fb013bf5c935138012155c9cecb65f23a49064a601cb35887e3888a5c9d09263b0beb37c60a5bcbafbd92a71a0d084589031a07a7fc819dc5060cc312b8b264ce2f62b52818afecbcb5246ad519aeac3c266c256d8ad882f9a4a23e989b16ab73b945568d60b2e85374e20c73e9acb8b43e18fa611e9a9d464ebbab338579d8b3def2ec6b6aac02a32bb6bba4dc3bd7133f5a8e257315d628500d7324062de55911b4d82302a356b17ed01203293dbb6cb4768bc3ef9bbf59a7ce3e88b0dc79618ed2fae62aca117943505c42da5eff7d2ef3f3173753091d926482503765616d75191c1b2beba90cbae46c93e6c44975083fc457c19e6ed87e60e98fd46baee63b0a16ea2d06fc781903437334023a3735862fdc9b961b0008a2d15ffe1f86815cd518595ff82edc7bb1a214e30ce2c09df4396fdd34e3538a4cf8b296025700cb1fc1b778742ffa32f99c7dfbb08c3c3da4542ea10db9ffdc7451425e416dd90caf5bab5e69973403dc0911ca3d5e1d20a39f3777ae7330b9e08e17cbbce50a54ac7f440277cf60adb9e0c77394ac911f5689db91141ad42b3be00dc1cf6d3bf8cecbfaaf5df18929430a6cc52a252f8286d6b66c08c313af45e1629a1f3046809ab231e6538935f3db8e88f4f9649a1abfdf294d0a9744f379c62d732cfc45e80c32733f843ddf70892613a1bebec1d319b55c3b7d2c607c43b128cea13250e74e98d25a02be7abb0e860ade8e3c59a8a94e68dfceeece6c53a7487d4695e8ceb074c39757abbcb4c4be65a589ea44554005114dd5cf1f802ab9f66a65960a2ccf2e394a9f3cf4416cadb350b5457b3269cdad939f76deba92ea03fa82dfed7a94312bbf0f589460f72511ec4cd355a0dbd9c3c5becaa34370f3448d56ebb8348ff380454c5d7a26cf30ace53b7ec6c78e9c5f816efc951adf2cec77641637b7d2d9a2f64d451b30961f69f0060ca0f74f15753f1e23c4687db22bac7cc6c63c52415b637d7174a596843f19e27d248f6470c0ff38e0a0312b0748f51292a83a950d0eabe690d904b10b3108be12dd28f0ce56b63b25624ac73aeaf3660a377b2315d0885115a3116a31728ea9f347375f37f196a8b67d7e0604059a1263f7c2c0b3f09d236467627e1d51c77574968b8f553324ecbce91607bb54a503d1eeb12721e3818b54291978dabae196ce071d4e3070bb4f5474f68c46e638f8629852d0221f034da7cf3cceef153293a1aa38581030173f167d29f560af1b87de5c682f29296921e9ed208e47a80e71a75a00abe6510a6020a604040e7a15966ecddc81847b803522f033eae1c28e13ec1df1c8d130e68ca521044ec1f08d02a80ac39b8f6788ad03fe3877dfe9c2098d1f59961376ed706c47e40787884e561bdd2f7f6ab1b6926841008a0b5d5f78c98c8f4144674c7408d0e842d0d0b30541e164501c396f714f9e746f8aacb217b0281ced885691ed630a0c826261ea9c3b1bf37339fe831a3b399ee75a7231e59173f5f67ffedb5154ffb62fefe0d53224004f072fac656f85745a0b010ee4dbc907de8f31bdf001d68ca2c3d8784b61389750ef43d01cc7fd1c1171a778147c3e186627101cd01617447f8e2e62f78d6b9d1eca60662e79fb2efce643d9e60293ec8fde9391870a0be5e0e2052a700119411b8d2a366f4cb0d025fc29c16a6776383df4e82dace6557290f350dc04c3063c487a04f8b992628ece18293ff3472aef93eca9bc58731b3e7383c7f48129b0520c84e3cc8e2d3a10dea4658d8990378a9577cbffcb048d6c6e1a398698939cd4080780d5f7a8df366fba1c40c041640fc4d4525207c543c0e5f8c9733fe39dfa09962c1a5577d70ec2b1630b779e45f4b22e49487ddb6d364d590b5410f70da30c0d652c2f871bd0220931cc8236da03a865ce362c4629e94850d3c4a624298d5b912c3b16624ea94b34e5b823a93ba69fce2522a2d7ff457eb3d9445488e0ce1c3515acf715a49941443fdd06be8c1aa35e3c0e6a0d224075f696a816f91097d47557ea356ef0493a7461e9094636cf0f2838e42dc2d27ff8ec5dd8c22e1d1f4af70574f0388db6d1ef68c8be5dd6427b2ff590014fbb88b50d86ecaadf5a558fcc11e75c4931f61ccb86fd069c124f18df6bed8eacfb1830b5332c34b313b05b6642d8916437c87ddc247d015da9d78dabd8157d3944cdf0f26e52aa1151cb9ed1da8902d99de4f2ac371394ccc3622b0c209b8fbef262f6620daf223c6629e1e9cca8b7798c02583ae13c092b0041af45097511cfae709173d0f562a20e5d140290800440fd0054dadb774f385487b34c7aa0ec7e4fcbf9705eb944b692948c1831b01136667a8fcde813869c019f834dc06834e696e80189e30d0ff0f63ec8133363eba4ece7c02bc89083f8cd760128a074eeec90ceb26d3a600ed7d7875d2fcf7dae9cbb3f91eb4a0eed06e68badc19434b7746f59acd0e555ca1394c34e3220dca6648e402bb699d2183176bc5ed2c81241604c062a1e6ff1f8207cce9ce01910843e982cad9afa2422f9890a9f2479a2e83dba55c763921147fc5286926330320e614cca6de3f77a28017e8887f5e122fd906746df94998bdee77cb6a6f4d168f243fa9f3a9a62a6a689fcdb8249e0819b78534dbe559448ba0517bd17445c0b2bcc6043dc45bf96162488dc30376ddbd4e2f8237e16c04450a60bf0ca6099d86efd6b45fd114b3a6d7209d8e67dac4f6e44be0252187576558d8bcbeecb7c7d3e46abd1e620b20fc39a96b66d34594c3861c27d4d29b440e8be7d5bcbb5213d19e0d1dbc4a84313447ede5d3fd619f00c578385b06a09844630513bf697a28826c87a2b8bb25ae7f58160d7b6953112b62bdf471c4438f8594528e9bc605409fc5f9a88a2d1915feab498c225571c51d0665a84002286a41a11e817ab5c000b6f7f14cd801f0e50e97c7e9bf931150d0b894c461c97a142f7dd0f42e77f7559da338537a84bfc632e310994e1f06f4f4e662ab404699035ad10ccbcf672ded5d81d168fb246705bd73e47adea041f359b9d89066d84d085b222b70b8760cd2ccd9024018d3a3db475c709f1c39ad13f44c0734fd5fd726c2681e3c1173d93197f9ae8084bd01575bfdd9e5cab6bae05cab341de4ff1ff65d57da11d54da13f1b5d3dc96a424a4cd03874b9c957475974590c213d5449ca066605f8e6b1bb80c614959723aea30ddaaaec040b54cf7133831240898946cfd908be82d65bda7663d34b720c7dc5e84888d485027c4b10497fdc6621565805b8705e9d230860d629389b33c430d6901b8bd8298dd6797568aafe5bbbdacdb6b8dbb3a88d05a69479c41fea17ac03d0afdb6aa4e99e3d1e3dd5dae997aaa8232ac9c4bea1a115d29b1ac2c0433550bbc8596ba66e0100eefd6d5f2c69a08f0ec9d7629d212bccb98a73c9bc19250a556b7090714431a9aa294e5d17a23b35560a30a6bb272f80bc2a9b68becac23bc3a0ac430ba8e61aa9fb0aba87f116a5b64dc6eb777f1b358346fa68a069f27a1eb4ad7389623f22de3fff7a1d5dc35d445a93675fa51d6f0e33d44b7fa8cd5ceb644f7c60d76dda534c0004474b777deccc8629ea4522ea36023810eedd645502c7f9607b8016534d4d186fcfe6175a1471c780f1387f6ef3b17aa680cbbc2fb9dfe9e03d3337af4268f7ee3f46b649a93e1c63f6c515b852d6b2eec53a356fab90db1df8a9bb49afb3e67d2cca1179caea74fa8d99ddc4c68b4aa83cc76eea9baa391fc3be733207b80ed9b1723b89b3414cda4debed73b6bbc64812878bb23cf272ed9d6de5e7d244d505355702402937ba19330c581c6097be0cf99c26140420268f111e599daba472c8cb0a9f7562c83383665fba9b22269a7d15b97a7eb6c603b290addfdc5ef16047b5f93d8596f2299c1408a0acb359186ea5278e469451cd842ff54f277c468ab8b67173bfe87269735d325b237bb37d740dcb886183ac49fcca578a71aea9233a98a3d8fc28b103223d3424870321f7bc96454ef57c0e0ef8439e3138ccee82686d6971c22b115c3d82118440ed1bc5a86d47bbdc2ce934c2ac9843e092f0f9eb1bec366a5ad4f3860b769ebaee7229ed2de4eebf58468d9b3cb378fcd49199ee5c416a400bd63dcc53a91bb83ca1630f164d1d07b7655814ab16b8015426dd8699e8f90e5764af7795b6a6557c612a03be441a7be411bec863c6b03a3fa8420a3e52079b01f208ad9d9e69abdee49bb39d6ec16ec7300c49ca98a9f083da7b78de4f2e599c6281e606bb619cbdfea41b789c687742724afb766124da14ae7b063ac19a061a4aef3a06fd04e79e74320aa216d795f93e1dd97b92ca10a0f47ce80501a76472b8374b54326f8e6cfc89072087a25c732bca179c2f1dd18b7bef18a41819925ec3bd632add6779b07e6eec4aa70b6cd52128c3ac039c7ceffd0459e5f1aba1d7204ce393867e43af164f983ebd7e263c10d8ef8b6572615007270d6e56e7043a510daed342d1817a4b9ee667d8795c3b416ad54f469dec700f0d4a63af68d0f6d117f72e502358f666c407a5b363b2d0786f0174dd2a55957444c1e1f0523c41b1a901eaaefdaf6f505259ab4ad7b50bd9c364a3293f2fa0e9ccbeddd4e752f42deb07d9047975b585c1677db1d357d8ca56ab8e2d9d364f1fdd813f7fa39a830fe59fe6b1b650e05b26f0274a0d94e28f97d68e328c3a880f9fdf5bcd1a1a4292dbfc444da76e4436fa9c762d24ee9574c6c9648a041970b95dd1085a3e99d5b3e165a3b79962a521cb69f1999cca7d12522de55868a65b8815e3739d0c738a1ed7d47320cf3c03c2e8abf491284a3bf5fd9d4ee38392fe39a850a1f1694e2e820182402bf6a735bc3c4d65c2271e6ad291dea5a1ee2c34a88c1d030103aa4caa52424b5b5760746ca528278931782a2b90f624b81a439c370a00cce12390c7f013ec8b08a53b0153602d2b60b8a297852cca02e9413f5e04cea63fc46e8fb7bc6222f8c3369bc0243c4f5778d71a0dcb4fa039e39817f25688b390c2c909eda90b38885777f042f33085160a5ebd53aab094ebaba42a9c50f77eaecc93b89169f0854a66d5ba6378ef03a627ccbd5a2fd5767581645e5d2dcd463668651123a463d0c29ba0b9e37719bec3f4aeb959b8972ca11cd8d5003c074029b0617164302ca3dc5b75d97cd405e6e831991bd7d6e9d2a980db7e4c34d03962a456a0808ce939544da155338dea171b021c1a0aff2e34792b35396c2f44a200b8b793583f65e14e47656b2fd9f4f4d4661bcd71f8b8110071684fb3b747b6a529b9996ac9fde599c8342f247b4b4fa25c6c578c244cbd8afda691ce423f6aec8380fb9345fdd568ed244478a1439d455fef7a5a3e600f9026e0d372adfe807b6d58568dc9bfab7613081a158017d6aaf7fe61ed235c0ab52e4d12acd4c544643120d90cf8079f5c65dab20662d7977085b7f79e369b29eb65fe350ac9547a3e787985ab864435c477a68130284ea7a7a8a3747b3bbbd308a9aa488a5e28f78b6a631058cd4d3e0639701d3b9f875511d24123b28e33914e7249c970691dc4aa6b69cc8a535a3001a0d3e699be54a4459c6e785af82324f1728a5a8a230ad914b710ed1955ddda51d46e127748ff65e42711d9babb900baf72e9863b52ef17b0786094004959fdb1ae1c047157f793e0c6f28ab530dfd11caceb0b1ab56b84b849259e23e4a337b33f94a8f0ae6fe59530441f3035e36174376a477807daecca1a1fb66e170fb207e68fa73abf508fba5f9c517c7aeecc02c9f04cda2e4cd67e99da8ea9dc0ece26c30df4cb4ef222f98ada444efe5723a35a4360e94bf079afa5e204c6cb8da4168aeb3d867cd223ae67343539ac67ea0017ddeea17c74f239fcbcf621a8c6d691713d2c0fef11372869f585693c8960894b5c683a9076844977432fa301088a54891b803e0e4749174a7c41c9cf36aa33fdc8ce25b869a8b244476150ab3f2f64c563f66b47d792b934a02fa17326d0ac0d6820bf797912803d3c62f151598d4277a35880cf3be69ac9ec76490c4717441492ac12689a7f289c9f303b550acfa6f70240675c5d36ac5007d5566c4adc6d460049d1dfdf4f432b908f7320c6a84294fe3fc594164e090f5fac2a23e59e8bed6d553311ccf80b8525b566e131596b9d7141e26191173fdd8a65647ced196f91fb874a5d39858ec22e677ec6bc28294aa72cfa32a23dad735be0269afa650f78d9c7872d5b9c767d3af1e99de8b00af5460e135d899f41c0203e4f5e25fff4ef011a757bda2586eae5ee3418878379bc9295596c83c11977ffd3c323fab9d383b64f1ce12e4840b48dec96556d163a0e02b6797b39ce2c9004d435270ae78548c57fc5bf69d90f00fa630b4696c20de6b3857b85bfcbb31d3622348735f64458298d08eb7f894beae7563bf575619afcefa5e810230d06a5254bb719ab081e2284b8a07a4936068fa10f3a924d4421709b425155bd1be5de60c0c89ce7853e5bad2c74f69d6bab2c2b687122f479fd699f1a36b5b53a99120640d8a6399c53ad69634063105606428fd1780fff359a3adf86bfb9dcdd0d30077b0281720f41214bf1dd8d0fa30f8ddef1aa37f4fac34e3855da2bfbf00327138ed2707c0bcc4bfe873611be59525c4f2fdd6dabcfc407d9d75a6e26d0dbcdcd153b8836a8b3cdf8f9be3273d10f3f86097e1af2e64785710f1d37379dd5030957d6b8455b0f36e283c457145ad7905a85065eb8d137a3728f1d636fc3ab2b53eb3ccb673056be1a090862f12cd68469c322c7120bfd2da0bbb8f5cdd1cb33ce13d1414177a45a8a4aaeeb12a5124ee618fb943a8fe20ae63b2519c1de69955dffe563e8817112d082fe80ac273e4e01b7f963c2fbc1aea334b8f4ae4d310975120a5630e452cdae0f57824073c68caa310c6f53fe19cbd3ac9efd5ba8c9c7d342aaa78a873ae6c1ca52abbb90a1548db244c70133ebe6a352fd7ea92eb15b4e85eb5abfd65d4690e309320b06dadfd25d60f537e442deab74946cbde11bc8776e3160ce73fcedf40fdaa2eb5cd290863bf88daabe7f8ed4249fbebbd9bca3c8129526c4f46923330086aa9f1df639522236f8fd75be390cf5a267c7bf5ac7badefa4ec8a19f62fa149be9304e3911d3593725c4c929df4ca739fb9ab4eca3fab7f58b5a95e11dbfb36eacfded185ffc689998be6fca869ec44629c54c8fbe6514d2df095a85ad8f3eb75d8981b9997eebdca74437ead3c07f7ec3e8640713e79d34a45e9a9258efaadf7eadaef1413247585dc12bb63060ad6f5fc7e837feb5ce3faca94335fce02c2467a73ad871bb89d526f9a0a015094ae23263a425d49cacef9abb3a33d33c9ecdfe429866667bea9c6fbbdef57300fbd02916e7a4a4fe7a9e873ce4840c522688a8cea7c7713b67bbea5e7a66c972c308ed24fb8fe724a1431c8bd48781189880c1bba2dc8b38a0699c583f522a4d11758bf36034c0783bb82015545fc370110973d5f2fab75c179ef5c9700769140d14cf400c6f01a26ed06dea2bb08a646b902e14917580428400510c98698bf7adad69dc7162112ade79b129e66b3c3b50f60a706a83d9ec45b6061f6e907cb6f6f1bb2ae93602a4ef70de5a537a0a156f7c4efef8cfc466d41105abce8a754b2fe596a22838c2cf764ead7dbe14c787d25e3303cda1569292b2b8a7df8c35cec12b05c42780368d3b9b0515839d3ad2338280571df51cc4a90bf7ee2fdebc60daaa1d9a97e48f25f03f9d0ae9d0bf989b05a21aee8e94b4edbb491fc409c287b11534b177e615ad161390fae48469cac5d216a0e9a864f8f6fdb47472197fab95690099ec842135ba62e1c6790e8a49c147c2eb77f7af41efaf467b8dd5f4ae27dfdfaf04d103f2268d1afe400bacbb7a6abdc230203face502a8e6926a2248c73281dd782bb427ac13f2926acb77811d41339751c3745859d53596925a7590a8e72a0c0f5d486d19c15b3455c2744e731b100e0a3d2ad205052427c4881da8df17416a350ab52c2f40108b8fb8eb51b80c31bccdc60dae8d8ea5cbf2d233d6a195d8596f3a5d82b6679857cc87e2265903150aeb3ed59d9e663731524692949d0ed0bd09c838681f801442312a4430d7583a39016a8196aef917d4c27e3578e3a07296dd4f7bbb79ab452d78f3c64c3157d54ac5efc61b3f1a87be85037c35e21d8a5ba322c4cd02f23e3f889ca14a0af3184c52472af9b93edd155b89e330ae076f76851aec6d6f056479fa2fd11c8701914bdbd7dc67e92d0f85f314529b909ec0d82de1c7a8778f2095ffbba154a9a79402ef2a752a75864e99bc4db1aac4bebe011b7632a139fdcc194e36965bbd51af9c8614155c8f122443327db4f1ad20e5605beac47c02461a0979f9bf699308531c4040de1759e72a9b952db28d503cc141995a7e3129dcaaeb218711d27aabd076ea08c96d83e2d9f47eaa9157c48c9a1eb9065248843de9c7e4106a8131ce9aef6b6294d1ab9d3ea9ce4b8c83380ef23e81c7cabac7ca62772debc5d97463bb15590fa99c5cee68330110cba7e8b3752539eddbdfcb06ea510b18405a885c40ea86198cd9a85a712c1c3d3c3b9efa9bdcfd190400e104137015b6d62a6b8c0650dd7a20e87177a293ab8a30ad7988a9925a74dde6868d42f0c95fdd7d1b7c4d7c47edf70084ddd3b2c5170aa2acdb46c10ca4b32ceacbd62e2a089e27c23ac13fb6c8119aeeab767d17f9d40d7cd4f541973a2ae9956682c3b99a9a621a84c8c615ef95c6aabfaf848febee079d4e8c735d3033b5b1f9e1ab9e2153e00c64d510f98ee75e7274d82cd26d78668a44c324fd9b0aa4c3f8183d06aad7d280193deff51a72cc082949a86fc8ef5e55e9bd4ebc98186ca1f81dd355e20227d88df98fa9748242233309635734b107e9b12bb94d026e452dd741462ed090135c6ddc211ab1ee20dbf65685a394fe3dc8c2a67c800938d7e649b51d8eb39665e5108bbd673d076e292c7c86aae46e79f23c84c2ce68d395dcded25dbe2035004f5d04da9d6d00139ca0b71f416178adaa776a0b573d6a20683de1d89b28b40f6e73cdafba8bfd9a62dba9ff896741ca8246bd68a1a438152529af63429676d3e2a6db4423bf5b0f06672e559b0439ce31e6596ad3949240554e633d0ba82fd108d9de000243723a5ede72a055d3e9eb23fb29921ac9dcfc32ea51c2304b2055b6f25f63d159984e17f0202f3f8986a2fcf8b0111bf0543bcab5ec47ac245a76f5a9cf6602ef8e8cdf1253e01fdcad8ece03d4bf88f90b55ed94fffbd1c42dd27a16ed1fbf2e851b126e1dcb1185d6a7f94c80fc77d6ce91c9a21cc74c8e235c440ab3f7ff0eb7c862768a86c6da548f8f210399f86126dfab97a10f33979c5c193069dd0f3af063e8d6f6cb2ecbf4ee2161c7321a71908deaeeb1fac56e735ab7eb6e16048392477ceb1b11544bbc97c6b93a2b0a568973ba7f797750d1366a74c01dc84cbb184cddf87d1519651a304c4a02b965ec690d3c586bc1f8df4790f58e78b832c83ca258430d108e44f4127d5eee320013eb8559d67eff02b7250837c3d7cdb2e9cdb2be1e577ff1b242453e86edd25de1323231a389e7fe131ef78c8e8cf3bb4a532f64a4fece35d74fb22c2b880571ae4a159badff54577175c274f940b7f43b69f4e3247cd8c1700636aba6f0eabe55f623fd124818952e5eccba595c082f9d8770cc33b553a8fa268849b129c2689f338c004814fa1b7aa13bcd9ee8fde20dfba0c24358419e1c987ca6a49fc90640eb355faef230d4bf3a3dc12e3fad9247a82bd8d3f1f1079b8a73e4ed79268bc30768aa2c70705a62c236e42c81a48f7e8f2869e9d16f3454906f6443ccf91fa7f984e28c6de2639db3d1530713643b11741cb0f515f48dfe8ea150a525b1964743d9df2339bade80cb2c0ca6fda17dbca723c479df5cb8969d6f568c8564af4a8d19373da8e1859bad6388ab644a158806602334f95b9dd4fdd8cb63022b8e094a96e83def94f9185b852690a0897e01d4427ac31a36ec42b70d3f19c3f18d655fdba5fee2fe550f933ad3a54c3f5f0a857304fe3c06f40b8572568c3b53429abe3141a702d410e6884e6dfb3843fda01f567fbdf00c48cb856a9d48baf27889db8c4811f07cebd7c0151c3e7f3f87ffcce0a3273a354942aed1a83b8404e8741caa10b26f7cc3fbcf821bc10a07c43ec163f908f42e2b9c4430f84f69b27249d52ca25d9983302f026b6c135a7f5ead8e3a267d7d45da7ffae47647beceff9d89815326993c01e55803766f75caff8e725235a369d3972d43fddf6799c6c75daa602c51b31b3b945d6872dad92d074c9de5a8099ac993fd4ad4c3cd11161deca3d867efcdce3c4243a18ef80eb3059df0f890b2827c388b3feddbbd93f0ef22c92c15704a8a615586172855a5dee473c1284a2ac3e89cd049bfb59e0975e9b9cb002f3aac11741859d638c49969e49b16f4654c4a644e25b61392bc2706e0a7aa09e31acb2ce5f3377d47699a0c417683acb4788177bc2508bc3129baf7403956ee8ab99c0a123cf91a85f6f506ec814bb55664d0321924dd294d3020e363eaf1a9d03a8523172b16eae52e7319cb83a5c44bee7cf748b29f9672a93393ce1399d7265ebda90e2ea73cbfa9dcf15299cd52a7ae14f002fe5df21fafbc2f59758db40175946c08eac162c3fed3e906b06292e9a98698ee283645b84ddb5563531e7d3a5308732312d42eeeb8e635996eceb9c98bbb8cbc915e5424d2e852b0be84932d89a20cb8aca2e4450f8fef5964960202c56979bd2d76b1285ada7f699c444a84494405f46aa9ed7dc61278ad1ef7e2fcd8336cd0b79153a01a29cb93500cdb559c94271dd06856fd5f6d9812e9d240214f3941b85712de6b8944cd5cc638e181571f85342a0d36f58411b0e81fd502bb107ae85f2d12c7a9f93f7d81ee02a2e38fd972203398aca66118bc8408bc125fc7044f3941365adb22f7301d1b360d496dccc7a100ed98687d051b72019c814bd227e5015805f9294578c39eedba15acde417979f99dbcb189a57925a78ae7277f0e1ba777f8f8cadd223b251dfda3729390d665360b2c1ee7a7d1329f28f3853c8d564240cceaa1d1644f88df681cc116482aacc59cb0c6fa51792848604f0da64c414d00164051c0793490273c160563529274a651bb8accead7b36672d0578f4bc21b8985e79d4c5cc513ae045368b853f9543c14407e5db9ca48d1bda8c4afa2af5aff2905da8461d210330e85274126de2dd60b554732f43ee8a38b626c83980f438d8877d95660c7484f21a2057fd2c4b994d4515e0b679828a3c4d194859d49a79c01307c1f7af496865c1ef8eca8ec0b2b27af9beeb18023edcd5106900b357531728fb3d6664ab00fa907ae271163c497c1b4cce1dedf43c53ae0cdfd4299c30a6a94e5fe57f6fa250e5ce0e1004b83d7bc13470e8a0d9ac358657cf0afd7b2effeb68ee70cb566ae7eb35eed908a17124a80651df61f41ecd4f807c224007091a9a5dd4c80f0bb52988330540a4f69c3495ec818074615e5f5780828de4817ad2853933c248c8a746468b2cf77438fa29d59250bc880d0b4b581cb59e66393aa3863af4353a182ef204e8a03f22bfa837f2fe1bca8d07c8189b09ac7d64a2b23f43b5b45ff272d00eefd542fde8095f7ec2f18dcf02e1ca8785b63b108ee30e493e0b0bf58eb604156dbd5a31bfcb28e33dcc180a295cfd29a42d225eff3e5843dc74f5936ff9159e4c60ffa9cb032ebc195ec18c387ecaf8276704ffc8ee9c3c4457141ea8f4aa368cd1216abd76640d3a78499850006e82b7d64e80967c2a3c7b0f21949e9216c8442b668532f3ca22e1c7ef379c0f91ae4dcb305ec0d44716922622870acc851cf84c36efb839bb31338aa6ea67f8fae9e52a6c5ea9afafe0afc1bcc2dc2253c644c97297b9050a0fc541bec0097d4a2142cb08329adb4f8e789bf353afd15823c21331f0e3161803fdb308da6ed76764d995d03ba1268f3de72488b8703dc212ebacff15bdb3c5683dced1215e6432acbb6cdf7c0c28f41b1f56a01fd550da60d4375ffe23dd40f1b07469445e6533b85fe94b585ac332d13d875b85c63fa085a4778a61784161b9d0413a8d85a8ffeadad7bcc3e8c681aff16f1552f3368314fe244fe572802d81446de3d0cab7a1c056aa2e69c58412787695dbf32091d09641b24c12d6256c169f1395e5aa25ae4a61ab663f9f650e18a06f20633562e7133c8797648574ce66987a53a0c4d8a31586f2561ef7b23953ef7ffdd82a5600f37a041d5d3488cab0a13c40122f59c2fe1affd91b9b57206a193255c8256ba5bb11085aa310918ab303cb37efb8f478aa434260e6ad3d005db37fc1cfad4a35ed7fd4fdebd28cae8fc92efbf14f55ed67f56b8f3c9381f8b48dd7bd22035f6d640d3ae898a060a4113ff7d727ea1fa9594c10848669400f9c96d78ec931dc4e267e9d5447b60c6b9dc88e7132493144537ec23132f9f9b83e4111e1d062e5cad5e265d6e8ca0aa7fbe8da45ebe974c5b0372803d97933b615aef262766f791b11e86d6f0213b10fcd90ad0c7e1ab2c3f7a388f71a90144a89a1d5e5fbfa9501ae050a725d170a2f567aee0817a7fe425a77d2457c434a3948af0080f04943396eb820afbf9c004450c2899136cc89162c517ec2265cefa49c9229903b7d4b00a4af4221fa1cd84701991096c95d3a13a470354d90833959a959c269a896040cd7dc467ab0ed52c290600e43b4411fc681f14a11abfb67e313a291456ef939dc7b0d90260f2bac8f112cfc4f9b0c51fb0faac1308a60dd95df4ae716ed89bb52361584928c218f8dfd7f8129261896a4abd676c0cc58f402c166bc3ca6348c286f0a6da21b875029d36eb912008393b21f6b30860f842385fa447e905326959f0d75856c4c004cdbe1c607a5798779c4f78f28693e0aa6b1f63065f51ecb768c5d7f8e557a627e0ff37923138851a40e77d7f7afbf61bf6d0ea3a175da8247f131d50905e6d1240cb970f07e37a765c0f341695b0234302d769de3c93803d12a7bc927ca158e745f456be687ea9a408ecc84b0d0af5d813105c78b465b1f10e092708577d79471c6fe4e8b76fb02cbc0437b62a088099818dd13a951d3a94521140949a8f2cad08214e9da298f822da084081837a205c1d845cc6ae30b6254f65472423f5fbd491ad07a4f1b222d2d2fd7be7f64c85678c60d6cfc66385334658fea8163e78e170223a1ce1d908a1d30141871d21f50a2a89f936a523951d3e8c30721581a9eb55c271c308889e600b138b18bb781c2c977fd30c5708162e4daae54d58be3a043727cbb028b7126405cd5403528ccd4a13989acdd8357a22c98eb8440111e2b9cac15be60762380b22cf815841b9184a4e15a16fcdc8661729360851644f94a3625ab8020c943ee8c161c16d3279767017dd43db8e92255b5c53a01357f52c8d48f369a6233c4155764e5750688a28be6fa1ba6fa8677e10e38fb6d83b78da517850a751dcf1344dedec60844449d35f260ba3a61c8fe4439b05ba8a1d9be38d293000c33cf30e0d63d007fc72c074c2f0bb610eaac5b6053c0da9e79600b737885e4baaacec09c5a8ded12c5365333b96cb42a28b6e4ce141f21bd517ae7114f1e2246a7481e4a1d814f3b63b79408dfae18c76cf33271608c814042bca264c8d079b1abd11c87da9310d68e5bb059400ca136071ba54100d068df5408a770c299012fd461fe316314734ede77b6e7d9a6f6684b774440eff47bda7c076179fccf62819527426b9e7bbf73e5b4a4ce0b409390baab31d061f9fa356b48a76ff7fd5c11792fe3c6f0c5189485020e6a2d860dba1281ac3a7e7c413e787c714744d69fb732706d879a27d7c20c3fab0e4c5c67b2cf0be393be4394df7c1f7047236b7c4face3027b3e0388865c1d02fa135ca0340b0e90f0a84c04410cc6781169b9feb7e074a6a10b40c98f2fa84107141c2b5e2ed7a9e040adb66337962005139c4ed93d2ad0a4bed5b332a7020d0b8d7448fdd3cb5b7ad19e37594ed6273db60e1934f3fcdf2175cc50e9483a48939ce4dec81a5a6af823f8c16eab952fc8429e980a1c3678770c59bd6d0c25f56027bafc1e5804f6a00c818ead5811cb3f8ebebb739d9821027606109a033e45403fe96738a2bbe03ff60553d837819678bf9d67c239b771319efde34df124496e213e119b20f2163abd7087580e923ccb673d0e19e28f0298280d505b499d52b185491c250b31e74b2c37b043072193fc5f585c8a0182fdf83f06cf6363c60200a26d0e42ca85a168a8adf02374679cdf81ea8974172a5f25de3474cfdbec145be78f67d7c76f0d117288316d1778199de82931bd9bcb41829653a6d067ffe8e529c1264edaf4cb454a66e219d5aeac88979cbfa2f9e3fd187a7c640a73dda5b633722bf34bb5983bbe083fe0c3cc288da1a77bb0d8cfbba1990eab318cd0dcabdeaa65a14f48d62b90a7726ea04a389b30eda3cead9e3a8a904df164725a805ae1b077f94fae436f356720598c86ebf2e861572fe79c3bfbe85888af86768617226420fe73c4a57eb08f3c9f32f2bb5ee9b0b13b805266e44d80ca3de950c80ca1f3ce902fab5ed585c30d61da703e974f3b5dc4cbc6c17c9b0766b0b712e4edd8540cc76f2a9951c097a7675121c275ee2840012d3a1dad00384b686804ff46b1110c26bbe19f1b686ca0ad6834f217f94a18cf759375d38b86621b8c9de524a29a59449065f058a057c055a060bfdd5e8d8b6a60d217b7797d841b7bb63e807b8718a3635e3c0d2487dc2dc7f71850ebd0c0dfd6009b952da1416631c71dcc9b64a5dbe707cf88f0338c816e2264cc7891585e14e66096122b41824498b4b1097a125e4a12d19ccc9232d7bab655bb6354fdabe7ea1f5486bcdd3a8cbb6e8cfe6b72e6973a9481b9bf3cb70a169f0ebb071d7024b47e9d9966db95aaeac8bd6eaa66386122df74b4b287ac8979efbd35068bb3f6d5bb52302c59f88f6a3df3a1a76b61f759d8fad8b5dce34d91407442b477e0f770e06f3305d0f6992bf5d49a5b678b1a91c2bfc71a4679d9c221da7492a81841f96a04a5068e7ecfb765ff3b8edf0d40edb9b27bb4334c937b2e57f3553889b245bda54c6604e96b196b45e59beb89137373737574c79d18a830a37318a2d29a01569203fec119e4474f98d7bbb186b5c1914116daa0711776e1082ff7327dbf6156c7964da30055bead17e7b1ab4df6edc6f76922b95da7b7f7b1c89710f8661818f53cf32d35a6badc5580a7d4f829b6ce958055a85e4f790aeb33a3cda8f1e47e2745a0cfef3726e457a73bb90f43a1ebf6dc744c371bf575bfd8cb4d0ac7dfcf84fd3d2f9dd0b7447e3cdcdcdeac7767142cb8996939f1d41274590764cf562a3b56e3d7a5e8c999b73cacce1e4703735d3b423e20c9166fc68b9254ae3dc69ec6baf032af37a502d0951f8bd68c3664b94fc9b2ce3848e353ade2415d1d5b8e7193811ba94b988b2ef0573115583843ccff359fda8b4a891589aa6699aa6699aa669358bb0c27ca494158661d68855a9a4aa0b23f1a45fbe26b524244d5559f3a43b16cb7d6b2abdd23f1f1765cbd77ee4a9aa26464193bd64c334955e693f5bbed6831f07ef42a5f9486db559166cf9964e2da54459d53c69aaa9a9542ad5c45853799c94f41445ea8614416df861fcab2a6e9d8c4a536df9aa9cbdc767c52235a1d65abbd0547a2115f7de4ba4c95c1c6dd47f4185ba44fa7dc1457ff85a6c99dc1bb5744ae99c33477a3da4a793b31386e07cfc76d351398c234fb9a380fc31146323d9020c9e0b355c37eab53b186b43a074e6882ef926eb1416a538c6084de9acd5278ad3a68eef11a2920a15e325a3217cd5cba69141ee2a5f01d1a6d623a2275f93eccd1138b67c05444f6298eec35bd75d6f7f3548d3aeb6a4e755515952ca1a145491a841d85a9f950e24c74b628c38e648c22d30c618632dc35a1687887e0cd924d15a29f8c9deb4adb32bcdaeb219f2ed10be3f72c6d7feb084b0cca6588d01314fa3c9bef7a5c9bdcccf90f6104f32688768735fe663de4ad70fac59828142ce282b057922fd49bf10914621fdcc6bdd0c6d1229113449d619f98fba76cd8681cc92d659986ef31490ad1b75584b29256bbe5e00f86f863228003352a0a1abd20cb90070a40700a73f052ee667702fbee3669e8693798e93f1252e463683a62483649074c918ee05a7cd7086f3449d7ecac847592a87f1d09fdf074d8e354f330e9b2697e1a4ca5fd3c4712f663a2f9226fbb6e3d912c7fc4501c65b94aba3b930de07e961fc7d18fa4b4362589f0c922d4bf32810bde6698631fc5e6a6b24ce5133c458eb29a38aa6ab7922d99f5a4c224b7a1f344adb195a1b13d30dd141d35c4461ce77e6b0e63a6652b13fb7481b27c06bdb7f4d93b5334653b487ae288b054e3f01b8985f81eb5e058e1b00890bc0cfe06870f6a457d0b6ffcda16ded04a7cbb52d1d658e09fdcbd9c7f4f57cd2ec68275f4af4dd5323d1d74fc37cd27c3d9f887efa32a264e72c6d34227134fe311f69a04f9a7812b1251faace5c95669748c3fee5664c7af649dcc4c24df6f55cc2b61309b3cb0c33c724e631c7449362be6e3968b22d3fae73256d6e8743f73c31cf7dee68b24e0786fdf9f3a283a2f36f692ee9ef8b6e08d7114121d82998920998e0364ff304f31a57da777f35524a19edfb04025f73c8feb597c7fcfa3ab4eedecfbe5aee0aa9fbab014110a4375b238020086a5e220df9a00f982eceadf34163b10d78079c19903be190b4b159a44d052738c17b573f308866a6e857cb5b2b48793d01b30451c1ad562aa5f9e81c15a28db8f1bb2a253daf081affe7a924b82d42b4a959441b2a5b40419b7b13b6fc68bbaf26c1a20483bd469aa73a1a4b7317e55f6e84718771a7354869ce155947839fc6c7472d3b4091822b58a8acd34c34347443a07cd387172a7b0dc86c265947c49ba6ae344dde9a3e94ba9b05f0b85059979353a97d204431c742d2e6b65aad9c7f58422f182539e79c73ce3967e7b6e058e533ceb2d405922b0021f1168fb35c4a8fff648c71ce39679a475afe12111aefefe77b3ab8b13fdfcd96d1c67cf92335941afa9100067e4ca00243d5d6fb3f524319a752a9ec4a1248f72620da8872c4d2f23d76b9eb318f79cc631ef3985f2974374b76cb71a56441221990ffc630be79490bec01a88a0aa4907a287885de7804473773ce1e7cf30efb4db6e5f0b8ff0a1059ec2f8229209105f6ba924367679a886424ba99a626f4575f334b0fe6bc5b8e49e9cd151f196c47404582ce9b9b9b5a7db496b5d6622c458dc1f045d38f56d2d8f726b653d9b6c8da540c487fcfc513fefb968b3470d7b560802a05b5d65a6badad7fefeac746516b18fa44d7c200d3c8965f8464adb5561d25d0d3078dff3ee5c19dce3485ee658b2d65eb441bd565f66b86ce63591c3644858eaf4aadcf4a0b25a49e305d95ee589b5202c8622c4774a4f147a9b40cc018df0b8424671d73ce39e7f803480daee5780475fc06477a30febb799891cdafe9fcf901649e6262bc0c870dbd483226172d07838bf1233dc9c570ddd6e1dc3992dc4327477a11ccb225ad17528322e38aabba42bd5297fcd4a06aa5b6aa146badb596156d6cbbfef86cf9f507bdbf9ab5e41389c26a75af8ceb8816839c80c70a202ba8d894c63c580848d31c4f190831a538d1093a76a05d281e380ed0e1c23fc0345614863b390be292b3bf5e3aa557e9557a955ea5eb598e66a6da897627baee92134df75772a2e52c451b52ebcd7fcb4010d342a20d1cdc0e74dc41e33755a167909572eb13e9b09af93215934fc057967542a40b789240c50818eaabc991bb183fd0da9683a342836086780a810b111ed1e23c60e1ace8283daf8bdea17db60fc84f13c48648e4dad9e3a7e191edacc35a1779648f9f6e3beece3f371eb8cb37e7584c48d6d21c66e8628ca30bc776b15ad8980dc3275dd854165dc0f02508550cb90b2112a10ed522586badeb75c5e5c211baa9ec8345bdd28221a4400d29b2813178a2c40c27527a9eec001683074a7a60028adbacb0fd6b70c8131eb9bbd7881d638c31c6fe55478c95650272d30f349eabd57fda4d5168f7ae9bb1a2ed6b1267d13dd5bb987b384228e54a2ef12ddc8b54c91f8f499e0c04b36d94b91006e709631c31dd465b8757a1133fbd34c26d2099d8f2e5113f01c1c23df41bb44949891ec20425c9832361cb87e183fe3c8485188761a45184fefcbbf920ad592e3da1473bfb2c8afede87c9e8bd95fda86bd26a659d17653dc85e78d11e461ad2bb84a9941749cf8abfc030ba2e1004881274c618cc41140f1c7c33571623afc5eea9d0c68ac2307451e989992283653069237b7e322f2a2da5f9644459d195d20704bdea45a1e5fe3c0f856cca7b46345d0b15be45dad8cff2cfcbdd0c964206bb2bc85edeffbcec2f77b766ffcb605916f154c1098b36462f3fd3126f682f3fab22665c6256846893bf0e75b1e58b8b8b414d9569e1322abcc6962cccbc6430192946ca6091c615fdb7ab2ee38515facb60ae6c28cb223da98280456d5d05a7493e8c95fe32188988b405ce6071db01a382c130a949ce3e3e736e32586ba5f6f2b519f1148138e4a552c9023fbe682d649e205384d1e6dad81b31780d0c1bc279883f6bcc29c61b6decd7ff64fd196dee57afd65ae98c619b585e8bb36439dc19f100cb888a321890d56ae5e37885639c01a554ca690a6bc5f111c05cb009fb69e271d50d1c5e23a6220d18bee88751d99f5dc5a01a768048afc66456c30e10e945576582cdb5b1592c2b014d6289b04d6c145896615e958835fc876eb01d070c88a6b9a858d876031211c63e38cce0ddd8256ac1e2425ff7876bad3340fa7bbb03046bce9603e3ee04da7647e8d10212b0874e8ea927461a338763ffce851f000b3718865a7f097c4130276796100bb45a352774b6bf1276c2090de3841e65332fd05f8c813e485c10d25f8d0b36d05fcd1e494fba9084fe6a6eb8dd65ace84f576aadcd41e8d4bd37c61bbd6c4fd967a79244138850453010a440653508903609905ba6948234bd8835e4c7e44eff40b7b0cd68aff57e583806491cc1085491db858725e4a363060fbace193ce85b6f464c1c47960b8411fd315422848a02171dc4b518bb20f47308d49f5c10faf6a9ffcf907d34e95dafa45da45174a9d32f95a0c5202900b9f470595283607d6c4c884fdc2dc07c12211cc8eeed61fe7b2111467b2ab4618cef8c2beece3119bd96363c32786659357dd15f74c560df41108b0991dbebed70e40ecc66b72938f52fb7811c5ec35b8ed7fcafc76386952b8ed87e39bc63c8116bc8c79c8e4843e258213d28b1eab215a607b0207c802a52bd5c4125672fd2904c348f62d962eba4237de548d39ec62b0f8a28d193dec5b1c42a51a342c3e6c9778c52f2295bca48d31074dc3c23d42d876bd3aad05f84c954a13f5f5d98cc61ba3faff4446f9fb92f863bffe5be08eebcdafe3273b5a3c94f933b2de3450b5173a8bf08cb4f722b67ef0b908c61589973d2494b11c7d2132ddd84454ffcd6da1660401f733c7896f69ce1f59a5d2c592165c8085c30b95e7aa2edfe4a343e9a53c747136dead1777b8007716ed63aeded7c48d3e5222a4f89bd96d0a15348ad3ea31fdf5b6af59297764df65f5df394751963ed72d520272a2dad6cb82109adb57071efd39929c53f4d4d4a4af410ee1ea3a36244f9a663dbb9db6140099658e1417d8fdf39bbfdd2792f9d35f4fdc31a29d1e200b6fc1754e8eaf87661b773ff7b1c6ddfdf378a7fcf4d07c5fe9fbef75a6be7b6f6a5c51c934cb59aa3236de2085f8b310c0aaaac5582afd8e4b922adc82239543d7a1d7d841955a75182d1060e79e505d658a969933e6e9aa675252b4b45f235346528b9c0f0492b1220632c482d641823de62bc233ca2d70b135dc47a50da1cc58a886414898474d1219e82c2e50a0aa6487aa3d73ad2a8c319399552649004ca3e462b7b66ceb81ca494409186d41ee8d36157ac35d823439c59b9db656b73549a27d7d2850518cea70022082214bd9d8c31a13f87ed68e3326553557e43a6acc0c085f6af4f5fc317e6447b098c3a1a2a019ced472e41f95af5c89e07d8f040ac7d0982395829654d0db2668391869435b2a646d648b0664b296135121cca024a50823eab174459caa852aba439cbb2999db7fc1a6a7c84e7e74f65f0b734f5b91ce4ae3b86536b47404da53f7c56545844429cf564480edee34b3ce548f208c60b4d82d946305e6812ccb6d1407f563553fb3e0c201d6396e9441b71ff20da191311dda069acd10cdcddddc3a2e766ab464d2d3d2b9e82524a4b2ddf7c7a94ca53c31d974bf3d9aa7474621776616baddc7438a1b50b37d0d12d16fdc5f04b388a2fb2a1d29b58bc526b7313241811a55222e0723b11757fd0eea666a866884efaa3561f221f6831888ba5839f233beae0c727db2f2c925a7d7ec614edf5b4036472bf723cd089f7bdf6b8af824ece12ff95c61c6b572b78029105ad055f31ca7385c84a58346441100b919ed46e31c6f2f7ac3215b0f1500c4b15a82145669e5082dabe082e220a148c4301bea28dd9454bf3b18c3927c703edbe58250c776acd41162f9d1f14f011899c27c2a2171d108b2bd65a293c47144d21c21422f84c81a272dbde20902a00110a3f0d969e34c9143c490de709bf772f50cfc7101941a8abc50de8d8c4113f4d1801b41d25b744540d11805822068b732489fd45588f9c24fa8be02bbe7498d01386d246ae96c82d7a543f325685f095a9544aee5a6bad3294b179ba2fc39c694241a6f6e7436ca9234d4de8f99f9461ac280c436b61f47cf971ffff9c5f333f64891ea3b59ecdd8ce1d6d6c31b868d06d384f6ee33f34e455d7575d5f7579d5e55597abbadcca655d205aa57b740ce31fb7b85fc842e81aafba5cd4b3d5bb77f57357d005a594723c74d66a8134ec18471cddbde2fff0fe6ab1c5dd97599c618b010bc41a7cc72fdb8e126f818fe889f10adff9c3120222b560bc6ccbdad60492362b6c29f3f56482334b906db58282828282828482bca020eb414199ed9cc6473684660689d21ee6479f7543665c00eb821a520446092828f68b44222fa8ec7540690fd3b96ad4f9aa8ac7099b58ee6c451bbf2b6ce600369598c19cad20ce59910611d1241fa806bbc9a6d527744c1285a84cf0e307cc56b6ab14fd1567da77dfd7761ee442392c1424a6548122a81524d49aadd9ba1786ce0248a5ea09a2e20384a425b45a7255aaab65579b4fe86d7fde135af3e4d35cefbdf75a4be7f59ed07a7f5ea6659ea99c3810dca4c484dbc008250e336de1d540d3af1b0f1abaedc06f6de63da149486c8fca85593f25adf295b3a4d7f21af2fd070897ce7b319d1508ec5a8c7f58da4aad1e79dc8db84a35b71c4c728de71b7f9398644ed5c72da355c5a2145459a9505a15fac2d41cc4096869aba91cadb6a3a98f77f5b19251691d56243daa9aad63adcf0aa6c8da1868f71b33436840b4e101bd8078c33b0fe03d71441b130047de3b26b6dedc8b811063a4910aa1cf42e9619452cac99d2494db13ad2385a6af4dc383f4dafef8f14feb3128db76ba46874e21b5fa602ff7de7bff0687adf7de7baf0cdef5b015d26296f9dfd410221ac1a468812e98880484044352ab6cc301370db07107f9dedce0584c48fe6109651cd45af1adf8f2008278ca5ebe90d38de9eb5d8c11305163ad5e3dde8f771b6959c6771b6959c65e13748c315eac8d7236aa5a96f1ad3a62955aebb3aa126bc15788ac8445435b403047c8a300cd39698efe216214b0e0055bbe1be17443b4f1c29651f6e00425b815d1a7880e02dd405b91349994fec2fe1cdc824f591ee50ee31c797b6a4fcfec2a117a7a1b7f7de939a8c16b1f67e20d781b5bdbc3ad70342f23b44e8e8391680322b881031f20c2a51cf0822098b3b7fa6109692eaecb5a7bed75776badb536b4a14f4d8de7954a5ab6fa919e57e345b4200912a8214570002107311414ff2235422c014441d1febbb9b7c7cb09f495f1d2ae589655ddddbffa8ffe721a88547610ffd13359b263134c7cf6e73b3601832ddbea591abd77961583774dd995f42c00a868fb3c6215db7696959a272b1383af941830d037e802490f0422fd278017306ce8a9b93dc6292e9afcfd61741fd6fe3a747d02d89f0d6dab7611dc309d776f5b587aeb722bcb1ad5ac851363ad4ba5ffd0f37c7f1174770fda2eb45dcaf6ee5eaa028d3428c5617661adb536c7074d048a7d22323ec61329fdcc570f67473cf90ed1880c29283e66bef44462bc8c2732f3a5f760f61741b9d1f8d320e3633c0da59f799711e36de7a3f4334291ca5697b06aeaaaaaab3c15627c230aca7d979ca7760c9ff11e4b14c62d6e5de52918902f36b415e3eb8a91023092f38c295aee9c73cef663c63737168b98908cb9589a31a6d071db67c2b5ec955ff8a56519cf9971c6b60ae9b959504aafa5d76e38c88fedd7cc10e7bcf6da584c48ad1706442426e82ccbb218ee6442527a36134df267666cf023de819c92a804ce98e5a853330000000400f3140000180c0805830171483c261a2f6b7c14000c657c4a76543819ca834990a4380882206390220010030000042840544256006c329725bd4eafc9c4794687f9476ce61311dd7c09ad449e05fcd37221df7c6fcf279e12dc8aa9296282ba35714db578229f2bdae7dca816aeddfcb13e394ba1dd734b93072e652a70e5480915a04f8e05b57af9fa0cd2238c20f0f814f208580eba18c4154e7ebb15125d00f1826d8f7aa3838004b32b120e26d75eb8bef2b0ca4295cb2cf1119e15db4920a9be607fbe00986f5b84aabb335fc2a4345e7197fa0c4feebda9789206a74d46889e8af5c513b54699af4849f894f239c50c54830ebad2d594c3fd1319462af5a661f6ccb29edecdc9446f5a927e50f16e3fd046156da08954c282f6f43c93b69801e8c4488fcb889e2906deeb976db8acd6cfb331d06a1b6bd6cacd79e126aa371773eb93487300f4bab92ac9a28d217567e34b28d5c107b4221088c3b1b7c3d84062c71f854e4c69e6d98fcae46437e166aed17aa92191a16d87cd1d8eb6619d443a2d58236f3d2f6a57b1038094b16d13b92a823eb0400c4dc1578cfd48f9880d250e53d5fa205728491585a471f1cdce4942d3ab74975d8bdb5f6ac929c9231ce5cc45f90b4811726209a0f518b96bf8db1cf6d1d7e664832e6053c40cc657f81cac3550eb0e9e767cc0055ae4cd54102cf4a193d0fddc04bba0f974f605400f27f723c3320646a5c47f101c7fffd6dae538f907528909501fd81171aab19d41214e4591746e70ada31d8b9b38659ac58785331eab50ddb4d26a1f20536f1b0def006b4617cc5e854feb80deb337b34fc8b2ed4b6ad4ea347b9530bb79135d7232877d1a7af24a9d3c20e840e476c0f5124d278449c3902061db8f9d8136d74e2c71e72d73f7ff5c08ea2651c11f8377fcee45110ad8d958ed479e540948ae6d9babaab4166c961a4991328f69623c2a223b6757e7963d54e119a36f0943ec9c9665f8b4ebe6a432843004012b8497b8dc7316d132ac9a9621841fc4350c38738753cbb0b711979b363e9f2ac4e50ee11e79bec9e1dd320d690543e3ddaef55ac0f9e965af132d93b7a94d9a7bc9f01e9b7b329f5a376587c412128719e2e0cf776165cb8e555ccadb09e840ac632ad4905988dc5cbd2c6cc8cc238e8da4f44f1c90d928631ccb3c976d70a661668481e44bf5d25715a8d663971bda4bb2104bc80547b4cc908197132957e08138e961bb83cf5ff7b018edfbfa334d809e49c9a0529f2e78369c7174ea2e12157e0c705394ac90e5c99a8319c0c2f4ae4e3ed6bfcd4b5c951e9a77754bc3039e364d5cfdec860a53842b8a69abcf954fd07d21190a5c0dddb9e00d136a81a15e0d5b55025884ecf59a9a875bdc6b57227237a3611f2eba88bbed524701b4c3f769f3706b473b208c5b13023c5cc6971e6e6aeef1872ed34ea44b1cf24b2b3a499b74b8d1d87ee2c30c171341a8df5397649e84eb36e001e3ccf5988aa98da90e097cd09dbfc01382ab0649f0dd2fdec68d6a4e20b8175429cd17e67bc903f7dd914a5823d9d5b21b90c8f369599f0e3d66c6c34062de645d305341e8f1fad296cc89e130132d27ad7ced09b87469f363dae6442c9eedd250f46259c255d2198d7d69f3dce260fdd0619afd7164f9c3eaf89ab9cad076f09a1b08126861ff608267344b39106efaf38a4b5e02083d71b77ae6e9e1009425cc9ea72030d15d625f615a241ead1ae8aec192d4f0bbb23f072f5cda3464b5f6a2201ca4bd134dc373e4f56ee2e1f98e1bd7d293f550873bf9926f8f221c8488a748d3bc3381bf20f9084266841a4baba1e1418a78453d5b9596a2db78da859b2abc5d52727dd3ef3e3ed0c0771bac60f295b699450ff57c596e88185152180a6865b45d81eaa9152034295afe09cf6c50e1ff4640646a1124344eab3176d7dff5ecc56b66664f20ffed3e62186706a727784d8c815ccf29b4a15860df6afbea725bdc10e492a7f59f2f239d4182f29f2e8fcff07825049df9725e865ed97954c1772710d01636c97eb9b8118e29a0e90ce49e602df8d1d3243633ad7b29165b2abce428dd1a12ea07a380d0f021d374f010a96cdc65b5450c03ab3f37f38e6fecfbd2be0b3dfbee212251c2ce4122aa7acaeb6c40328e5f92e5a7a9c8452f2abff72cb662bb56fe006aa4694bc9a3e06e2c64e90f42499e130084f432a1b3eaa56fa1a1404865f04086b28743120fddd3a7bba3008c818cf89575984df2c063a632725f7469a45d9f86415c64364230ac0105f16304a48bd78e1f6018e439b21e4d73cafe596c381032fa3a168da7248759addddf01405e37c46a60afa4a06c503d0166a3103ddca320632f0b0d3f6a256d179b7dad605407eae8408c063f699bc9d2c485e5d16f4504ea23c7325716170f7deda07eb09b13e53dfc17092415d0b376342f55a99f210842572be87c6436aeabe94cf9eb59295c995de11db00cf6c6af00f439bfc97cd317d0707b5ad77a29e2cea1031b6599722daffc2d608f11f38a0fb452935ccc45b3e8a282c618e071fd152709e079563adbeb7b235730fc56b415ac8f53cceeae53d43508b056cb38cf8767092506c2f9c7b76d2f75033a91ed1c381af40ff4111c8a56aaa5e9a1a4e70cd5230e84c88da4de8dec43ffb2627ffd2a0a08e198fb0077cc3b78063558bc3879390790cfc6fee8a71126695afe97a03afd395a7301c7d792e26882263dd3c26dcf717c7bcccda34d328d2947e4ac2a7650c589a1e264a8e934c85f7b82598e93d7760f05927c1d1ba57a73d56ffec33e97d9f8fd1447d27216ae115a722ad3fdc4368eedabc9dc40d926d710742f806cfbb6468ad74a72a6840e2e5fff9664a2b6a45c21a920285d2a50a14867da831e6ddaecfdb30b80851a05b0ac6dc02a1fd05bdb3b7cd27e9b8a7a75d3f65cf9bd5180c1645ac0e774ab5188c54527bd7762224be0b9ac25835b91ded68c42c954af939920ee7bfeb551889acf1bce280f9e0aeb25db822d25b4d68f8a8b53dc3a5d9a4aea6641ff2287eb5369673d442ef88396a8af99e93bbcb244a1d039acf5c826981de821fc6aea3b8a67a53f6dac5901a6f28363905dba3c949604ed7236a3644a9b6d1017eb1cd8e941c86abca2d1136fc821a41954d0d87d335449ecff67ec623fb9c029f53f32f3be2d11360e633f706d2748a607f485e09e49feecd9b387bae6a92476177de7c97c7132ef3c69324de075c9dd9b142f2282e4f3498dc8b5fc493174950abd0524f74c1ade4b5e0a8a5bc6294e847c82d5b60a13279663708bfeb6f3a429086df4d9c13f4725b0bfd9196f775df4c6c72a7383e4d3b9d0e13d4e0a704af5571a52e8ad52c589fe7e168b567059b2360bd1c0b8cdf32d6776e5476e838e0ff0532eb337698be3de055887b4fe0135909a6cc3a37ecde764abc9770855866792ba91266219cf00dec127a88f34460088d903ee41fa62c7e78d0257fde0345a11fd5488581550adc0e3f2b3d51376b0200476b0d9a9e2de14b9f0f500016552d07028b0aaea8010e2341bb027c5d4115515df827059812ae8f429a8459aa92ba084fb0286b73d4f08c42b54d3a06fee2e7c0e20fb8f6233f46a6599907549abf1e2d46620c6c472b7024d0f101ddf1f9d937311e523184d2f0c9311129572099bfd5c524a34dfb77abfba45b8c459f98d239ff8379f318db86326c12e279f8e14fe439a39b8a6dd69361d1757715fcd744fd822ebef2f6c40764589ef029db83e336a538cd5ae5115d0c5b3123da7cd88f128eab42de9428920172dbf7b674f3358cfe3eff148a66146541ff940a1691478990c0a61ea228fc84a9414e0a5137657899fe640308f21b664f15ec30f0a32efc7962da7480bc98af614d93c1296ac7b1ac0b31bb023516b75c0ecd05cf883a5078e04c7f85fd243902072b81068fd06a611346c242e29cf47a82d61201d52c7474f49d725b3840a3cb0b23996fdfe6fbffa6dbfd72e49e32ff39120d2524d580ae5e7ba4e3d965f3ba3cb2fb6da0cc6ef36e27d272a01feedf772784e226cd4710bb89057f939c5883ef683f37e19d3cd4f0699039a78cafab59e444190f1fb27ea65e435f0118b0b966dcf06d0305bb8686148299b7583169e096826058c52e9bb3894d71c2abfa4908627feaae5cca99c969c84c991ea196664258bb2b66738d740b8ab9acdbe4ce64f4095fbc56f19278b3028065447f6654e2b755c7db12dfa602384ef5fdb9dc730dc1089552115b44382c2cce240b7bb0fa040b492b4568f9a615e306dfcff884e34ab7d253896b31b0a77e368eb5010467446f5f90dceddef12090daa89b87b05227b35898861fffc2a76dfbd41612a8b6589148890c3c09f60a65118f53436c008d17544dac7200e02d358745a42ee97295cb9ffcd8a16e260c71faa9ee15af6d5154cb476459cda72fa8472f6de8569e612a191cccaa30e13e93c9164e13c5981fa78704ae3055af0e5a279326c60de2f2259a5703db4913a213a46a86093b138110e2512ac71f9bdc7f62c0312ff1934c9f020a3637e71cadfcf0d4f87e326a0fa12cfd6bcc6f3c68d3dbbf8431cac487a98ff4ea16bb49797060b28bb921c6c37ccef53742165da7295168ec3bb017a48b5af106f3dec998e2078a6443532e22dd612337a1e68b981016b43928c8f7b0943df4e6e4844d351a7c9cddef5ad4ecf7821e082b0c4fa581fba7c2f31317d511f4736427bee828f89a5be1f39255ee5dfffdec75cc21529f94088ef0a216ff068194d314057047b9c96f41b2dd030eeeb941f4b621d893b4dde927982b7f346135f33c7c6087834e33829c710c46c1f95e916a15326472a55afa8daa46451a41cdb349c36f552963d8303273a8d05c82b3acc087b310aabfd214b18a698a5c59346bb30d95b10104fe3ac7957858b66a70699f21246393118c0767fbccb86a65505f24905aba433b1d56f91e4e9df4aae3d62eab3f77cf1ce709aa23aa07c4813d48df9c21e47cd9505a34afc9e18da98a2a0d2275d40bd5b72373036440f983a11ce43253d6253a3cea077d23030a00a9546c7dd21789d9511cb1cfc961abb2c417ee0b22e0bd76742967fec334a5d59450595b6760ca482c7a916451749d0035f0f0db8c1a712805d0a31db3c884d58d706ab83f98b76a3a79fe4a193e8d12d20677ffae242294960dfdc53d1a782d6432942033fbcdca4734e6df5bef4e0c7f21c6756b172cddddca64e742b51827428545427d5b8e57990b390fe42a1253130738df5b8343cf7d69a40ed0107d9592747e15b5e93f6dc03db210bd7f554e4f089452c58a45e8c7d94004bb10ebc67330ebc9e0f404616dc468a998564f199572026ca19ecf524000dda488672c023402568168119ccb780019625ad5983e8e69327353830c2c348c742fa7bd2a8265978c4616007b498a25a52693923bf4c888d80629566ea648041befbcd5b4b7a3eff63bf0f84b696c41da5d3bc97f55993b6bb8fa70e8cf5efd81a62571c79a6030f2ff409081668adea2fb1d70383902e183d81d22354a7cee062f5d47fbe941b1e86b3498303191e7033272743a10e3be4d47a99b3a207b342c00b4093f9f3b4f7e218f935bfbd8f59897f99630ab3712ecad127687df435d04270778e2bdd62363735618cbb09d364f69360f0334431d2fd9ac8e35d919788907b915c3263b947a760e75c3d800c06b1dda2d777c917405b0f62b4be2708f7e39316ce4ddf809a96948ff20df4221a4e65bfb00f894c787cf3d34637dd43cd55e42f06dc4f48438e1294cf52a26dd9c5e55b838d1c697f449be7eb91dac120efae1db48198237617e7c72d2b390a34cda96525fff44524f30d2099b7b616bc307d117780798105d292c2052b13ab1d61857450ee5fb77df447652eaca40152b299b83a3b4ca5d090c79d728c1f2ceb414b8778ba3abd8efe08b72dadf3b57c65f15195f995be764d7a64be92ef012dc1e62b23e885d373b4f2d0a457d7fcf83848059f32a4de52b247300787dfd2dc78005f6f65bbb2d35f0363e7095de68860c1a4733c5eb6b5fdd869287a99792092515649bd39ba0b6e6510912e4fcf4ab8ed4dfb786c344bff65a4113f9ebe49a3b800494e30d30575eed536a711ce04ed05f48d4b8d24c9ae93aad136828e90bff4daee52412fa35ff1a6d316c95936c90c79eb597a23ed2fca84206db3460657ec4e18850ccd3a6b12d5484017bccad91eb0d0e47477fe3e95defb43d5a3cf7000063dd88141c88e53596c73cb5acf0fa2e6d9686003d4453b5bc5facf2bb1e52bf37f6ad3bb29ca00256dcc0a9f5f458e4281482549fc358eb0034c85a28be75619d4fed60ea5b73ddd37769deac60243f0768738870afd4a1d1d07e2638b217bf3c00b7ab41e5f841854cdf8647993e2c879ae318ba00733000d7875051285561997da6ee48ca002be5734284dae74d105f38316a4538c4256316a9e017f1500af3fa61c3a1c3b8e698769bd9ccd1dec1e745b718867f7aa020c7a555335f4640aa129e59857c539e326fe3c5965e20f0575150bde2d5494f912f7fca240c18d3ea8bc5a92c0a3999f1a6608ba4a4ae9e4185fabc37c2f5b18e8da1d95657c7962c4651c79ff164112051fb885cd3f2b640350d242232380b366b496c807fc08b5dc789e363a0bd10331f73c67ef58cc3ccd5facdf5c4e92f11e93cdfbbbe76e3b2c16768a69a77c790cb1d14118ebbab49128a278c83dbd923002a24c73cd0e398085029b34d8030555c466fd81899c37443c58f009a97411af7c697eb0657620148059bec51e45534389b5ff45c398bee514b6ff5c6f56b96c94ab683a6124c42796347178d57b89e5579d864686157eb3b83ea7d598eb01e7851797d0e91a782bbbe2cf8374278143a78cfa556e1612d5cbca870bc3017540124ad8db557bca3c63068b996859bb37ecb50f51d6483a5cba2f79af592f0c5cc320555959ca5a920269032a2bd565b01ab0c9d7e6c62ae0387f02169954c17ac50c07565aabec1d599bc864085ee83df0f2a13c14879509b4eb66a87661976588b880d712c742ca9c27ae8bf91e2aa32e623dc56cb3a24c1ab0fa4257e20387b17ac8794e7b6588de2206074217e2c7dc837c45d9b022704f0f3022f091025e2ec7d90e0809520dd647b997040461df0bbae69f26e247844f6c80f04242f24f3fbc700d87838eaaed35556b0754b35a1e7c68640eb99b1bc9da003a027d4308dc3a1222ba64d9f5879a5ca4acd08776e47de76a2024428acf24fc858deca16c1a295852974b7aa51752cfff55a94c905904b44d0b11a5bc7796769c4b79fc2faaf3cfc2f33f22be00ed116a589af609f1970f4c501d369d525588f265188283503f07862c05ffbe4ede30f01f18013be03dd9aedc3ac590cff4c37c5a284c01f8d72262646bc46e38d612a526af509166e2e69e73aeae68fb960c52ac92bbbd884be7dbbe33077908f4073c232e9542967a8581eb90dc19a5a91808af7befbabb0bd97eddea155109de5e522b86d31627c88dea0c6bb78289202ebd1b7e8614e4f6337b551a33f25b4fb3a64be0aaac9c68ef66b4ec97c1cc3da6f14b453816c1970cb1e966867c9e0ebd1d44df9f089b33f56cb5b2c0092ecf30901ab1f994fbcc623548e0f17cac578b758beba1388488df5d28bd192b0901ff6ed9ae72422b14df347780689620e950da1b6087040a90574c393ad64bbdb923c16fd7e6f12acf238a75ba5e750a2c6c06c17f7bccfce268a50b48b76c0f906c5016cf990975810ad7878edbe361394163c9067312c6a244767ec47e406df021472a919304e880c49bda75074fcc09f5d37a68d051a5ce2ae550eef1982f08066abb1b1462280f22c4765a95af5dd114ca9065413c612843a54fcc4127c3c022db656f2eca2b08c6ce33c8f6394e05a73cb64f11d9ae4590c776bda8d73bafbd3026747a803d361ca49dcbc9578a49d99a0d15e6c8aaadc6329b0f6b1ad46eafc4d6ff38fc0ee96217a2fa9b5fca734da7c494e8aed08d54b8009df4a7df665e0041adec02954ae0416e60dbfdea07fa0915126ffac8073a2eb44093016b792c23da7b5def930daf2f4d0ad6adec7e4dcdf3ddfaf3c08de5182eed9d3e6be35acbb7a5f243899dfc40c73696893219d8de34e56c96cff3578491fe9585977f871d6afc0a87ffcbeb5610097db4fff5ef9aa2df1d92c4ce5314b3e7d30710b46b98dd85922fcab52132a981af87b20b1b11d916fc112f901bc43cdaebc8b56e160d00fd2e491b896298e71f1f6589311baa1d82c1bc69243e7a38f2398cf84249d61ec6b790f8f36b157dc9f78ac296458d5fca03c2c5e127664678be4577122242358b90de94804991026e257358c85f59a63e6e574f3d28ea166a84872f0da8beca9b05b5ee655f99900e60b8a621165d7ddf956e29dcb864c280199b981709ecb9652bc932f5a75a057bab5b62038bfaf512c7836b04d140e0ff3b47d55e436a9019271509182b6915390d09ede96442e9771c9a4b0d2729f97a715fa46073b982d25d9f452838143be96ad7bd2744b94044a66e2c35b14bc2daeadc9d9015acb487668d3d707b96aa14aad66387f8d6cf5a027fff438c3b5663a02bfedbd0817610edb748c886ac0ff0e23b5ad7c917cf389b3088c3f5f134d00f61986f591d31167805b6c3e8751471742717dcf04b6929c3f82fe91fdd539aa9f6d2b5edb353208107534e01497e87615fd3529c540733e7077c32dc78db6fb285424e5d5fe7d2261b420418f02af1a5f92b1d840cb4b4bbf13d2f8944b6a5a0c420beb1ce2ec7988a7090e9a03ad5e3c273ecc889707c84afd5d9b849170f6a3cf01566c3309f8195e869487bda58f200adc3badf85c32f740c8544dac5dc8194c2581c1550363babc0d5b3767dd7ec5ef1a4de8a344275da7676841c728a73b84ae96feb68063bee169fc0c5d017c31220185bbaa32ae59ae3a92d0eb74b9ddd6a2371caa93b3e8c561ee4b069530bbfffbe93213b4d1ef8fb00511b811dff70cd168ee00e68f7f9f3d6eaf7bb9a11d128b16e8df0cfa1a04ef11816cc120dade9739c14c6d66520005822bb1b8f2493b19cfb95a8a37b8f1c7426b79406a2df200d4194a11fc7f1132bde41c62f3adb74951ee7cf493070cde1a6dcbc3d85aa377c7cccdb59483b214f56569bd89140d6fd7111d220b101ee989aa8f6e523f414371de38614f8d07dfa50f9ac9e7899fcf7a87f393f050e1293b422de5fe9c40f231159903e382a1a8c875979495026bb4f2693260e9c9283a9903592ac833b9f739bfdae68745998770c0217bc308a175db573525c2cda576447c0e9b2eaac5aa5aa2404af69189d508ee9355c266dc0b83b4cca9f30b881c2b0996dea87215756e0f50606eaa9dcf61f2b1e8794645c21c49500189665f1146db34ae33acf99b0e98ec4f7cd2fc49c772afe409bbe5e5e7951153b9e933d1bff346e5806cd464be5dfb84388fd1832cd8a7a08bfb55a6422d2fb24f360929bbf695b63d40b750d52778371a35735d3f79b77109c628db94ebb5b39bf7552aae299c8b1a66bc7612ce8f2fea4e0d3b2f5003e12f95ec130138ac8327945c3dafc0cfcb19d2a439624dab49f211e06870d829d896cf7c922152283494cd13e786d0947f955f8ae7ed6e26e659ce60a9594f74becd1505955d140eb7b3f7c1614dadd0f618af8e1cbaec35387271a76ea32ea086f2087f276c5833b761411ef53d237476b9a49e7144551791435602ccef562a97040bd6acd5980248e04698423094dafa7d7503b9b37b0c7c391c05e2890d1d41bbcf3351da9a67605cfa54e10c3b895c990ead14d409d52bd70c07cb7be6159aaca5feb7b242bd0ea916a6b0fc13c52ff242ed6a9ac43f6efd0540fd1af57d68587894d8a2bd8614ab60f86abaaa5b2ac501b67bcb3ec201cd0561499289ff43ea8ba8e226b8aa45ec39184a5ad2f0b122f22adcf6b499790bacebd5d20a3ef1e73248de57b888643cfbfb62e1407610053c91291adcece7c637a78ba8a7b906eb8a05db1688dcbff23dbc452920a974fff38edccdc5adadfa29929ad4ea551a9d74eccd32b19104b4bdec344a3ce14adf3ed9ceba30b032e70149b24d0c80635a7283e844acc208f2f24ed7ff5170ece65bd9e421997780cb1be890ede45559701175168bf0aef52676c130d598a0a9a8c1c4df078a7f6c3ea5928257390c6863fd418582833070cce14ab54293969ab733a7c8e0a5b8a3458454d34dee00ad4f79ee7ce84f6f9448d713706cde2b4ce8675b9985162b9d684d3622abdce6d8d9791cdf7f1329cf9cedd9a4c36df1dcdeb47d5bc91744876acefe0b44be9df7cb0fa429c450f0a37431e6077ff999fca5547e2a4dd0f7444ed1e9f4565b801747c84b6d8c95bc1510ec9a296f32b575bc1eff1499666b0749bd98de672350ed5e48aa0153dccc9e701b48a0efa3a6702cafee83956a08cbbc942a24866780021dfce87fc9e1dafbb9d6a64c8c3bfec9d35dabbc64a42d2cc55fcb2f7fdf9882bc046aa647bb7576275ac877657efd565574e436c5c7abfc1a4de63fae3f4a12d9a11cc824ba577ca7f08777b4e266916fef16e1d17f70cde063eeff1282952533889bfdf383d7472423222e685e3fc4e945f7d1416afe6ce9b47ba79ca0bb9eb640d6c0e9b77a219e65ea3bfcdfe19a748089d43dcd98518af565bac02438f118da249f402f9b39519546d70a6a3b49f2d7c28f9bdfe50c665d6cf75c12c11e066123d10432590a741667ce1542ac25f938dcacd522b242e5821f2cbae5adac70ba6d06e3010960598ce5c428a60266bc8ec1b2d62c4fa859c930a3474cba2565b514d8af5bb9fcd19377e2b2d68a75f8b5e6c84c5ca16b2c51f961938a6ea26261d6efc49c72e41abbe41b02beb52c95bbd52438f0e041415f58dd6000ccb668d03c426c744f2d3f4ddefd5091bf56473166328a9f1cda2d3409b74a23c7df5151c15840e36ad5ff3fa27f8d983ae7bc4b37a019c64cb2ee73e396a8dc7eb7ac7dd03ae7c9a342d298ae192343df4c168774983988034f6275e5b18c29421fed0b54c4920714bdc4bfa74f17b880bf06336f134a21eda48adb165d2f7ab262936070db0e591ac69d2d7589274ac555bad5cc4106a59ab998b7fcb72fcf74c11953a84850f4537113eb5adf4a5aa9ea9e6e1959a9db9bc5c96be060c50dd8c971dc034d10b38fbd49ec53d73d94e623999d4c2907d5ba564dcd9f14ad91fc700f0435c2c8998745cff97e35334cd9632e47ec9231cb62839efb0ef46124f14ee303ff9cb5ec9dfd66444adcf2ba14f0250c67c26646ada42a5ce1e2ad8c5cef6224bc33e1cb01bfbd5f490a105b6711f2f5c8783582914f1266b026c1cd5f61b222ef8060f5fcb80c79895895b807bd6c869553fe30569199b1373957631fd97b321e22bf379a07e62021add7299640ca8e5feeab0a7de25269877780ce323006c542ca16f10ad502c927890146bcaf699299acc07cc759e86b676eaee54fafad1a1cdc1d5b2a3149230393c653ed2d2173161f29724ae9da8d78c653e3db0c582bdbaa8418199cfe291996f38ea9eab8c0bbaa796e6663e870106c31696bd1dd6075685326ccda21a6ef6d424804bbd9b6eb41fafedd4301338c852f55a70601b20b585a5c668ed6917c6f3d2a29286a4f8ea3d5a01faeca4d51042c4505435a92a6d7c3be623f04a48fd169131cc9480474cdb0064bf394e96943a5d53611a7a46b37ad8d2aa91b4237424872fab400d1f420899d3b47b7f626ca9f33c842eff6523679c4f9a6a2a8f3c0a1952ee9475fb978d25c2c253a9c297037270839da98ec33256460c90d251c53bdd15356816ba183071ea6b149a0a737b73f8c98ec98902d77c3c1ce04215d2e296c8bb421e3eed3aa09ef512ac2c6baeef01d95f5e9fc813be2d0ca54c5f8792168f03af4f5a42dcfaa2b46905b2a4285a93a6882c5485f547fdffabe0060628d38bbb89cb15bbc1eceac48193388db34964ced82ea0a62ae4d6b226ed11e30636dfc366debfc97b6da455ea39509ed44d3de86e076a2adc4e3736307b32b593111c80d390c24d9f2cb4225aada423258d8087210728999d0d9d9808653fe42b5526866754ca3939fa6bcace89181536f1061a186ded668dcb2a391d5041e17284245c552435403f2ee5a5b00a2bd713abb13fb699d76947b4ee7905c07dc813315468e06eb855ce80f4591a4b5c61b8be4eafa01b7dab89b404afd7fc601f86ce4e8ae53cafca477e93a36e5c47afc7fe0e1884d1939015be85f06d6a529adaffc3ee991a758a13208edddfec4c7deca8a5541c90106bfc5c3f4200863e541b3f62d74fa6ceae6e72dadc8e306a8572c640c2065298fdbb24aa831d1cfa1786efd62cc42648b400d6560823b948619a7f03f3b22c9f04ae766c35b33b570ef33060a36bcf1aca0efdf3afec6b3e7b8305867c2313d8d40acab2eef5caa5ac0ae4ee8a8ec633f00e2790f37eb36a45554435399eb5d2a5b064f0f33ab7b4915acd2fe0a89c8ce29e92b1810d4c489fbea0da523a46749f211cf5b0a922d6df384f491549df7cd659376aaaba17695eb8a26a29b1adb87f92e05255747d00b3264d7c9d4e6faf697c7a980512b79324ee371acf729a466f4481ed34b8db236bb1e1615429b0421831b80286ea40308a899696cadacad98ab59d43a826b3318a34ddbabd1ba337a8bb41ce7aac5e86de571d87e1c91290bad4aa7e5d034e025978ae14de45f7c1aa9f8d13b836dbd3b8757ba8887d30f9953229644c8dd154ef7bba045aafa72c5f1985949175d040c18912c7d9321dcd4bd204442979bc8748c200be23048798a505cff4ad10f0bb6d860a57e31e73077cb4f4d1d9413c398ac286f14180a17701c1a17b1953c7e5b92fbe0b216c482af12b8bab4905db3aad22908b40abc13c567a4fd89465c85d777ef862b1846307750791d7bf85b4904ef84f60d0468b0bb6daf8a462114ed4efc507f8788530f95d5fd8b36e86d4518794ad09c2a8afd7eec28bcec02a99fb5155cf3d1bb0b1ace063f28dba9e402bd2fe2596d562c882fbfc2b7f761a07e45746ae6461ffeedf956c29c4facf2bad69e4c88946f01b6623d6b0650ae01bd8de54945ee626c583980d6ebf71552019362031122a6ff5825b497636b31374ece3dbd42cd51979e5ee2a2fe8e67d2c598a3f23849c641c0f73b0641d4d2c92f5cd022b9900d1ea229397cd3e740e44d8770430dd6b0d25c5192e49c5b62876f7864787031bc4f205946e9c255d91de3ef42e96dc6d35675222537e7d3a0f3ff52644dcd94f992b56110dc8c35e645a46da001d75baad411e05fc4a0bc201f5cae0b4b8f5b7474efed4c9f6b0675aa161e362225add85e6ad5a054891df5beea98794dee606c029a937b84aa77ea8e37139eb152b99db73697e3af58a1cc6be18949e514097452c6a756d1474c2c6a5278795d4d79397972cb972b366a9dac2d5eebc4610359317a74048553be44462c1d494c3d423c07ea9c98e489d02a64e1753a36fd18c93f343d8685c92550ec021b8315887c50dc1a07a8a1b014c052360f57013a4765434661648e8560730881094fa6179593bc8c065d38f4a6fba3398e10acba88bc2a9525ed8aae6ce013b3091970e89cdc47ccc93622a007e2bc00db2838d101afad7c74a63364bbf9a0dae24d2bfbe812ca3b7903b79f306ef8b41707feb22aa920cfd334a286f35b021bff924faa519780cb4024f4bb8d448631190b05814c6cf0850d000a354c929ba6e75f997728c6755d310e64616f15e1dcb2a8c2ecd54dfe06a6d71b746fffe72a03dda662142d8fca5b131ceb9ed2f3d977058c01875e8cf007a0cca55038bd8184d2b6b225435c6adccf8027c8b73c0945d960a4dfd122de7ad5aa617f9a5d12315f7140b8cf9f141f769f200503ebc30df5fe8d595678c592187c6daaa8893bb603d47a710e50d4f3b2d137ded2b8d36be5d84acd7f334cec49e1961d4500711f475e7ea740e76ce7e26b8e3675e0b8c98e11a7785146a20117f7704cddff628a8a1ce737f5bfc3879476b109fcd490af0b4807dcbe6fd21732c545f666c18b64ed2a91f148334d4640f62708f3790a113ed641b9385243ae87c89fc68beea0fb240fcc5e608dde5242393a5dcd3e12eca74499509b14492618428c9402595cf93e311c97e9420e557104af13307c15107cab14afd8f363d19bbcf3b19edb84c2ad0067bf6c243ef630caa9565926d1669606b7c67438904f679c3b88c036278e1d8ea0e87715d3ec0674304c1a40acd75478ded3f598c06db26292cf9723af457958a47dd87ff01f0c9a3cf2b3ce3a09d71814c3c40e24c430f8d54b5d78776a97f053887b2fe5591ef1d0f430fcdeb370fc5ce099f687bec093d5452b2784dc0f9ac47c3394a12e51e196bcff26810306398bd4ce46b257c48b583fe0e60fa3b25926854c7ee2892c04a3832b56f593ca8de06a63a6da5d6e0b5b5839b50752234369d88d4c0422397f4284762f55c27ef616d23bb6d60a83a84a1a2c3ce491b13d7ebbb07be40c7047b8658666a825130f4d80e62a1641b57f9d05b489cb1b2bc8274dd6ce6eb6cbd55be7795cd40eb20934dcf40ba408c818a74ec58637ab6e5ea5699089511cb94e48dca449abbc7e793cc18e63291247e1f11b4f7211fd66232bfb3b288d239f86f9b879c2732119db738a4f5a24b004b536afdeb65c481758ee5a7b3ce414790aaf084c3ef1bb7490935e08d39dcff4ba2f4cb262555fc7232228bd73ad8b487cd511faa2aa2b761aca732bfc4c91f7d47c88032b2f9c0953467895c4af106b6e9925c810a50d2c9e57f0b44dc0d3d4eee7779b22a140d48b6689761491ed0b990f832412671fe183cf342bc132fa020a92f89bcf9b7205918199d0d16fecf0d0d1fe1795650a6484252977c64ca0facade113ca59c14769565c89cdbbe79f7d4476c3a31e40fab04665bde392ccc1f1bdb2ff39114dc0336809d35d52e15e31523cd75c28ca3d19e32e460613c8bccdbee1a91f3763977217b2a85e9126c812f12e09d8458f7febe799fe4a20940625addd6b5f3585d1a3e089aca4da0cc32d93d8f3c2a4614d107725027da573afe5ab7a42d672d3049d9e27f4f9538356ca6eb0187044a1efcd84e36cce25fbffe6e2f32643624cbfcc4e58c9686d11ed010d4c80d7ae91d2635029a0accac9768fbf6e92ac461aeff8427d180e51f8cfa13044cfc005f7db16bd39d3998e234ccefb985cb464184b87ddf797b5899911a5f26dd43e5263aa20b570b12a65beeebe3d26738da123945a0bd15cd30e2c0be48e175b6a55492878ca3c4928968d22151d6681cc2b10498227b7c6607d2934edd6346c34216c62b12ab517c87995fb4ab23614a3352362d4a150e2590de05ea752692a70fedc71e3fc670b875194e080fd4504af1a77afbe3e31766a3b1cae380b32a30b49ddbfa846c9f20b8a14d68f84250a7d0a3f966826b580507d6ad884a6f28e980c5cb859f9191aebb94846ffd73f116b44cf74d065ff323f0c74d6a3a12144ff5f9a955afeacefd19f4c2b971d0c79eb614b300a859ac5bf634759685e404a525c921a07346517814153e841e3c5ef373770725d278a92ff32580fb8d6a65564fd482471e374390fe3ba8ab8aa4946916a655fa78e426e359b31de093da44986bb1be7f8af754521f7bf979f09cfc4737989d04f01378cee496fcecbf3b69105ecb03f86809f16c0e2045c4750941419b97d9e0bbda38af4ba088e822bef5c9f2b5f96944a9b82beff2c5cfbff45c9e9562b0ed4f4dc137a4acf5591a71b2a29f6f8d43c51a5df74e3d400d752514fdc42da152d968838738fee54419faf7aca6e624e4116a4342fc082544c5ca9f3b9d507cfea0f7042b4621c5538e6f851d240360fd73663bc5e551ee367303685e0a66a21443c4bdafa5891598bb4f59718f20144c5effa60181908cb8741d39e969396a79518efd31eba6664c68bba1e1b87c04c60210c5a727f09b655532276e959931a7b4bdd4b3980b93649d3b004df3b1a8bd9c143460a7d519bc8ad066ab564bc312805325c8044d37a704dd2b14ca97072baa80259855c1ef13014adf9751a3d1da565a337a66993340b1d9bde0ff1930f51e1465a4439ecc67cb423accd03e7cfbf32e862d1adabde06a9686b6ef098cd120d6df1d97c710e076c41e20d729e0df5eed013aa0371cccd66e33ba2092c3c0acca4405d6e38067e50f4e1e4c614455a19f147094116f3a93a4c8ab9730ee7c669d3d585bc69ac20fe7fb309b1fa00cf9a95fe4d52de6dd84f65f880d9bfad495269721c59c16d08742e35e9713568594732b26d2c891b359e7b09ec2d1941405deac5fb7faccc7e694a29344f848320ad46c425b7ff2d613fe197a7180912b5b75a1ea2f4d6d7d69da28affcf8485a78eb1d63247ed5931a7934c78ef32c82cbf1d1e60c12f5ba8b3f1a09da752e8be1453765d7ceee544fed08b74ef54c52444363a6b1ce6485ec0b5087a40d002f4809b85d454096e49a24a945c285af7e7e14921201119535989cf93cd04c3f0d67f3ac584135c10088e66c121aa40f1a0741367537b019c5a187b9197f5f06458dbfe26894ea62a19dab4ae9be3a55311e11a3ee53b2c563e83bdc23ff05ad48ffe4764a033633afea13ed3d9b824825865521a6eecb046d3639b5bc49b0578340d7cb5a6113f716c2fa2e273947b1566d0a7170de60421ca56654ef1794c03197b8c884acb82512b366151db5b4de75320ffd6edb41aea1f43da7ccf58f3393ac8a2a2233d950a6c82a30d8a0763140c06d4b6d70ee37b493231355cbeb30ecc2ff43424923ee4f8b3bbb46efe8496505898ba07cb598d18fb59dbb4b46719af1bfcc7ea474dbac6bbc1ebb2507a2871c10485b6c70968e56f1c8395b0b60d0ad22b6127708695ff87ca14396452f7ae7a097aec8896c381e4bc811b6c7eaaf1e25700c699737d34951cf6c68547d7fbbc94775b6f2c1ed791ecb6c692d7df811010902f06e50b9709594677fd0d435d0ab903dc2078047442d61dbeeedf34fb04971a944b00ad259fc705faa4549c2d1ae7b5b84f3da41b42b2adf0d8d72fc8d7bd1b083b7234642dd00c79afa1e503cd351f06abf4ed24de84b54c7dc7c793687d98963d75515cccd20d44a51dabebd303afcba44c0d5595e0c98a7ede19c5620398cbede282c674f664b87532d51ace018289b2977d1d0c8e33560e4807f7787c9e11b35bfaacab00b6e6c3074cebb65780c1f8fc9ea934070395a2868d27f3ef5185b32950e936cd3004f1b364184a628fb37e040b01fafd8f301055dc843a3a21ebcabce7b5f951e1bd24a0f5076dcbd3f10438f1e3693d30513d826a0fb1f16cde2cc78f278e0f809967d6367e73ba56055690efe31748de5ad6a230a8eeaf60439d2c22ea3f546c3c746bd1fd822f8a102582410ea9ace2d94eca1837e01cebab4734afd74a7404d069b8a0101359aa97552fc563c78e6d3a37fbb6f9a73dc9d27b08a4a9db52ea25db5178a0b979fd238bfc0995e8d985027afed68b2912ac29e07c88e3f2a9c6a449723ac3b73ef867232711620c6dbfe133fe358cca442bcb82857a04bb97993e7a41d9af62601fe6e458fe8ccfc5e67eedf67bbe61edf2523be4f3f9997ab9da0da78286450021ccffe4e1c3c851be0c6dae5f8f27002580b4faf9421f933228cd8b0b33589a3b242e7d649b294ffd9c9bbae7d92085b08a7a5d3c2ae1c5f662718a10676198fd02ca4e005ab07f1641e563d4e7b1ae6ac53a8dace30188840f946c402fe48e9bdbd1e6c27073f9ae30b1407304156c655e19323c04bdcd16b4e60d8779f9d782722cecd5da15a646193d5f6294a50a9c0dbd2b476741db2667ee2d294b2a0b8ebf72e6f2a9a0fe5438cb9e4aff72f898fc1340256c1149b4a9da2b4c5cd48408afe39291b5584aa056e19ad2baf0a8bf6517e9d8dbeac7c9ea4497cc1c6cb1ce59636c13bca7a1553259b578f16846e190201ec2e40ca1ab547556e99421f5c7413fa03769850604a09298e9a015480ab679ea9f5a3e219c8bf9ae117e1c8e2251584a62486e4fce03d0dd68678488b046473c7efa1930e4e0293048432313792158ab48c151681a9cb22c52dfb35cd59892446b519ed81b039634813785d7d4b2b52266b7ab42a1b71b0cc94253c0ce888cb9192d13c627e0c46e5f9cd5119f2b82111faaadba405943b1f76da264b8d320b80c2bf83cc50d303456b02044ceded127bcfeacf8c4584ffbb8dea447cf5675efeb57e2ea178c47dd1892eaaa4352cbaf27d590e798d652aa757039c98439f7dc019fc5536e2976614b8de7bf378016de70a8386a1bfdb71800b5e9731999960ab31d5e59a2aab2bd404f85a6d05c0152a0f5676b65e20c7b3ccad84d1633dd21373e71356c079e8e5910f77a5e0fc44f55f04fd89882b6c6fbb3ea61586b3b3873552de643bf6c803451c360d036cff82de6ec8bb029238051de8b4d707e01a349f4f982bd1a03df82d12399b2aaa37648b6e80e0ce2ffd6a34a097268b649804317eaaa213c15f791d946b664dde4234656a03ea570d1305847e03e231a23ab481b786a86c5d40b243b4964aa82bcec0743d1905f1980b006c11986f2f2fc00e31da2d22600326a31db2d7e9bebe9a8cb78d487179d1e9dbc5f48c041b45771a06935125c52ecfe90ccc9c298ea727a9149a3ecc691305236ba7d9a7e4fc19e7b9fbc26eec6d7341f3189e62dc8c2deee6e80525b08e090a5bd7ebcb20f143fd509d7e063987b01faff99ea27062bda2c15e291ccb49c32edd71967f5c5f22863b7b5b37e42f519e0f666ac6fa305be3ea5c44890d6cc78c368499e62f3aadb147f782e94f40712e8437dbcba3bdb67e1043758888ca2be817d6bf8827b6ee368ae77d3d8f53d49ae68c7187c4fe925b608a5ce4134b9e037c77d882a70dbc16f60a5b6df7e677dee26e673cdfd54d7af19a656e556fb5ba3883d66df912eb0c01131ca2be6acaa26c84278408920536a1f4871e72653ca06bbdd74b0242b176951bbaab7f0e1f71e43485bf34948129655cab21d188411a5b473f40fcb404fd30568ecdcc56402993a79adbf30a2a20cdc71a045bb673f91ef5a4e8767892f2a5cf94111eb89fa34c5029b5c2cfd9372c6d2bbec2f73ec3332963fd8a80f70685cee4d707e0aa0af3b0910ebbe2e49690d278e8a79b43005beaee7fd6aec45d7168654cc99a5c9561ac5e03fa9d21b5c80b18339bc34ce2350b310b76c361f587bf4c7c95ce08a426a535d408859104ed2c6a8120f9bc2f1e5059d2469a7aecc23c31611261198891d5dbb2619c2b50ed0ed03841b568f8fcbbec127c020257880ad30deca9379f00825ac9fead5fa2992389c1ed7ef3f19edca5f7dacf2bc05df3e761ea4f1145d7033cc85bac55a4fa98816168c03d25b387b4a19e2da24a8fc66a1b341754579dcc50a69c4c32da4deeefce179da181109e0d22b293ae02577c4265f309a7c9f7641c67f634316feaa2507b465a076ff881ee208b106b3efe81e901de5706b62adabd0fe991f31ca8c74c7c2e984e6435df13bca58cc91c258269893a47bbdf6c7650d5ce37b50f17ca52fd466a55c70e908fccc4a3aaef30321fece308aa8df704573928370deb82a8a04988849cdbb6d16e6719c609198304a3eaf42bbe832193e7c6dcf41e377b64297cec1afbe421827c1212e9c7cee6d85d9a0d6022191151d2497bcdad1010433dbe7ed39183299296d8d235755f1059ef2849d28124cf91da5e7ff0b54f6e5c3ee5748d749c72354314804ddf56d4f60e48028d1a9c2d454180e09c01a3530ab5f931f0943df2b85555b6128de8bb466636395c395ad46a85f0a869e9eb2fff3fa2514e99eb7aacb893700b02af42942b4f2e1bdeb8a8146b007fe09d3de104829d252a2f0284514c4ae6b7158f116931813e6963079fec016569d79d33a0f5610d4fb130f8c40155a8cc0fd68aefe4d10a6bbfeb8c9f0314c2c5ed18d78f621e93e1e0f8f285bf5b0d57c81c6700a76da650dc611d232bfb20c1667148a66031384f23ca8daf1eb01c6ab0b5cca2578f4450095a500afe148680cb912fd37bcbaabe0ded6d7647c7880a202fc5779f718147463f69a05e21c1303eaec50d7668eb860c3e27929ea5ccd8ffe81e3d2a87d2a0d2d1580b8499e766fa83a5a554f237c90a77ed009fc77cc517c01a9e02b4c443879c7fa41276499a27d27394edd6ad38dbfc3639e0ee3b4b1ae041342a2bb8f71a4da87e12d0406eaef9cd5d2cadf6508877a281712fe37ffaa6d46b8ac1c6a9db563031890bbe57db034edfad54ba98a1e55a587e37726e0288b3b58aebed7d51d9acd4bd9387af84aecc1e244c32b5afdf51d5f0071c2ccb0324737e5511b370dbe4be6f07317a686cb9fe9b55502c3d5ce9a7137f9a8cb86197922eeade8a76ece014a02a1a5e3ced4211fb0afd5dfbcf751783954f8cd0d6bc65253efe3c528d572fbe1a4393e00eef57ab9c6495cb235cb0545dc202c05f62f40f6a487fc05eea300e483a5933c2f5271061b5216adb92dd9adeb4db0befeec75359e16861856dff06b2673f5df6b0cdb83f2aab2fabbd8479e0322d2b36be5e79a5d0148c4c795d7db97da78216258a25699c5a61ce050353203a3c51db27f27b8a9e2202ac6dc8b1ef362b09645d8610ce2661cd92cebc9f37ef5ee0e3b29a96da699121fd2223aab8d9fbf61ae544c037a20da18c1d0b60b260ef17749bf2fbf7845b815b2f9fd8693c1f3c441db41b3967c6b31a635dedeacba0fa96aa8ed6df488c6c0de6af13430ef40090f3d0b2d84b622a742c904aef45e193ec5e5efa6f850a5401885224d7827fd664b7f98e90798930beb8c0b18331751596a6520598bde09cab89dff3feb9348c70e3744e1aa7210ba8dc60c2b98d52b99b3074d57c869f7b3caa2f85160d5ec6df28b8aba7a63b3af935c14c9a48050b61748947a038ea6eed8844d9817ea55fd5668ea8ad81cd27ba123c870695adc8c12b3fd2397d5af299a690d101ea21456d31825972549d55015041d4861795e63338a33fdf6afbd9f2b037f178941f5151a5d9856ebc92f3c375af047462156f31ff9c78b8221595b300cc2fb5f0b39407d09a727d080e66521d83eae04eb447387c98c81054258ead06bba8c0fdb3d32a26624c1e54b1e4c7f06168cc9778703d10d3ddc2c92a5336b61f39140e018de82b281aa27411fb80a33921df462626a52915d41dd8391340003f052dc326aefa0cc15a503bdb9097eb2b11065181c0e3052862ae3ad8a1339f07b5128eaf0967a3fbba390e25b6a25bc7a1c5daa1a8f608c48f8849b8ac61d6499d8409716a03e891f92853fd4ca8b0755657a31e6113636bbec8ed9f4aea9496acab42ec816415d8b51466e2feec570207465b9c007435ead5c83556ba00a15f9c4b0ae2a15f1f8697cf87ce95804df298cbe258b42ba15709de047c858c6a09ebefb71f516fb0afabb8086d06b1fac9f2dc0cb8869fdd352bafa275bc7c3c1a506ca6d6f72b2af26cf06e13a7271af5baa2c0cc144a839827ecf357cb5b5a5bcaa106ec68a97ad8219a249b6f580c83a997b52504aee913a7bee000479dc23336da46ede05d76f9676c2318bf71dc05f5159b3e06f869ece01175d8ab05d56717279432db68b48a022fdbe8cc9bdb09f5a1f3540a0e8f569f3ba82b6bc3b084fe619d43bdb3ff70effc39b7f12128be448cf81836693f2801fcdf5a93f1d7305d3413b920f32a47ab624f5f9555ade2eb1bbf40d912fc1f24b728d1f9de598fcc0a68e40071c8016b648d714f44a6d08a08ff031504923162197954eaea896c6f03c6b08abd0a326208554532d30d21780287b4454de3e29b1f5e9586d7e46e91892521d17138df3270d10036c698a48c32413d29a650cc82de3bc49438c232b55326c7fb07ee8ccf9860e5f8ce9ee21807907cbcf75ae370b02739f43680e6384a3f0a66f5f5af4982caea7ab579eadbe834d101ea9f429944d372083b341a166e0233e13499aa4a871438d7b7098979acfe25c62a7bc39fe27d8b8de6ca48db86b19642c3c04748acc94a034bfee15caad757e4915acf81474078823da2d98c43079eb8e6fb58aecf429d3e1cec9e7462e30898faa4579538d12d654b93ef4edecccd17ab89ad88fb43b5cb1e8fb819daba488b1ddb827729c6a379e700506693dbc951aa2cb4cc58955a5ba05f4ed7397f54971d57838aeaf919f222701105e4ae7dd6e08287cad5b7e2d247cf93332b8bdc583bb9c524a8bd555a9f41e25e102b414468d7437e008121e472b33c1edaa05b637a7fa5569f72cd2f90e92f4b29c2002945a11f87fece088fa7c26bc61ec5effa43298567cf7de9f69eb7d59ec4f30171bc3fcbf072007cc3e7f910c7dd157e51b8bcd3b4552fef09933ec0302b31d5dda2c0661c9dcda9c7850733c2dca7f4022f1bf56900b60effe34693959ae49cc72775a8ce735f26631632b4a8f782ae847e77285d23f1975be6436ce02fdbd4cb00a8cd659926656fd2d039288afb73c3b6ff0234189ec0cb60953cb5e4ddf67d4ded3ac3dabf40f2a2400e529d7f09a812e98fd8bcd636ec4e46c728694495862898393250b9725af80c1d77603951b51f78962db3fdbfa53a1e1a06ce5609792ad314f623e37b8c1b279a8c57bf6b710e9f60cd46877462b1540bbd4ebdba32201d16480c1c8c796aa61dd6d97f84febaac548940d061678994fd0ab75974607efaf3e89748c940ca284422df47d5d8b8943b2a45e40b58159ecbd414a84e6451ea7dc6452afa3ba637af4b4ce2f0c0682ca917ec2e84bc8a8e00b70ca300ea65740f5a8f45f9dda6a054eb580fac07433ba5f8d1abd3355c9c695f296b015c9b5ef71557609b7c81ac1bd936ab31b15f024ce76d9ad93a2ed62e4f671b0bbac758d60332ac3bee7f6c3d3439597611f0d17dfa5e9268a16f609ef33864772ffcfc311a868055a75a25cf9c151347dfd3730c1373e3db8bc3ac7d729ef6501a341beab2d6ff9f56a1b85ea2e3c29cd3b72860ab03f39438bfd09c3812883288d7d19afee3cd1d080b147d0f1af7f18783734d14c219d191b643b01c4ed30b64f1f0fd8d0db0368131ad73464dad6ea036e3c9e71f4938542f4c5d9136d4204b05ba279c4db20f75be4d1a62731563e0fcc9f8a851a4126d40be2a9c2b61802fef156383f16e649a39d45c16e3d33e92bfb3bc3f94d0ba0b66db42a9a218ea28c942ec6653450d1f34c9c17a9728fc576e9bc5b73788d6c1b87dc75c3bd3aa2dfe22333eb378a2c23bda0922e4e065125a850fd1d02d5a65fef77ee21206fee3e306c2b1b560854b6c8ecb0a85baa433baadc156c5f8fb8132d74465c2d1fac38ab5be2b14a16a520b80dce812a1242c2f2b31a9748ee07c80013728101ef27b8341672bead7c1e099ae236e4b9537c4ff2662b50a9234ee344a43c05b5029409209775a646625313856c397242a664481839611d29d0454c7f3cace09bb0ad63d8dc93891ff5f86266e525e9c218ccb7f65813a5b7220f7c795705557e800552eb0f3648e59abe12585095f0486ba82cb6ed93d0eb66ec20e6f8653efd0958a558c787b94b582a5e13f25e5eae32655bc1d280cf1a7ffdbf8600e68caf21b401e12c9209342226de26843e428be653ed75fc96ff7e4db19033c154f53bb6801ad3895ce3f68c94e545a6bdd5dc8f665d98fa82c6daba53c9f76c2abdb86c8f7b52d7f859b62abff61d9b3874f7e2cf40cac4c7265bcd0bfc4c643c9e4c22124e08c6f847c56a35daf86162e96de0763839ab94832568fca545f87c4ac120d2252d3f9085c19d5ee2b6fd249f0d51eb7f17542285c68dbc5f9dffc1e796ba0f3e9d2157597a4c9bb4070408f9226c369d7009c24dce750e25e8b71eeff4eefeeeaa1b9097f808488784652779f248f215a2ba4bbac9e451a2b74e459ee97194def2002f7e2c7b6be5960909dc445525b7fe55fdfa8432407d4648dcc72361c8db29720828fe0e0183895d54a595037c5007cbbd833bb83a4476034838e7cbbb24758e881b5a5d366c279f51815095d44668b151b030c94fa731d33eaee30ae621ad093920a8b68004071a573f6e25480ad15cd71ba259ca06cbbaf357f87afdc9dad71f02d4417868fc5f0f825e3c0b855a2c4f6103ea033dcda0acd60b604803f90d1572024070aefedbb2e5700529aac10d8f8703e680f7674847e7af424c869807843a92418c6cc464c6a850bc8a13ccadf143297e1d76e871101f19686115640a4073dfc0b824bacdaa0600a274232b696b29a144548c3a7b2ff0fd916d8acb0ce10a9c16fe0b1c517ee6ed248e64bb45d3c4bb119e7b2d8e111f1e19d67094a17b8588d7d053ad5da02b687eeed67d59605535deb577650157d5b4aebdd022352ded894647d95de1a0dc6b55636db31cf40df8ce501b8891231e405115d7a828ad6efcbb9680297f5c00e3eb855e7a0c2fd5ffc180150ea4a3c899245a91f939c627899b23f14c433df2e8460627140538c0114b3aa591b690844ab729840e8a6f46ebc6067a0aa7bcd1e12ac6ac1047d48d8e8d02d783d040243905117aa91d0b3da658f36b5568a72751136e8b2e0727b0ee89b99dfa107b7c816dce7b4a03bf41f503165701ac319f2b7980479194fe00f9b4c93a88d0d4612364bb465d8f662b2bb6557199af67d88705ed043434e43915854ba0589447a9f32cf0cb4cd08e53a013f2c042f8ab8a6c8749581f249ec05d5a51d66cb87c3321f4db7897dbb7ae4812149f22cf62e6741864c56d19c0051f3e46a4acc1156b73182a00ca0433a1283e8afc66edd2328bfb3e4275488dca19f659a54346b31211a6c0bda0e7daed138e10c92404d7c3052c2db3b33e01a97de67e14c296f048e498b1f4fa70694b245e15a9a70c35a896edd81504f82ff0afa9a8e56ddac92a02b9b626d818f2662c0a6be421693327c8f3b94634cc25241c015b1a436ef4e80b85f54cfccfa99a92ab930140ebedaf2754622a8c4f522948e827238ca5c174f729460631c79a0e3c89dd5c6496692aa89b463b9ed88df911c80734153f5ed8bcd9977842c3e3cd020b695933d0c59ab3f24938b600c45dacb95096454352d404c9328ed06396aca9307ebd6c3c30e4b03dd6540714bc23cba09a944940ea3ee4b292179b8da2e3dc3d7b60b99658c40996cb7585a7e264644aa3a2dffe6483b8de75bff63efe29a914af7c0d3e02b5f9a51910dffe098bd1e563407875c1a4a37fbf8a1158cbd841a945c45a429e310e357d9cb21cc48b8b5207213d01126b883d363221bf6c724ef0a1a11f7d9b861464e1a4a86b1788c15f41b508051ab27c7aa01aca5e3ac3a75cce92f3fb53d3f715e1af035bd0b6689ff074895c02d8f452c25327e088261e27218feb0146e537a8bf91e837832efc226477cc4f6ecd85e92abc71bd815a3b330492c0f9c73647104b2cecc6b2a76240207a01ecfc027ab8e9595c3018d6a803e9930e4b953b4c596fb74ff5422e4949583c3b424854ab148d772a38b83340a409217dda117218d5c3107efcd808ba1f36c08f7f2bef4718ab2aa3f7a5c8ad0f8645ebc7ec0a4ef32715297a7942f6de5b4a29a54c52067a058b05a105ffb18f7dec63ff1314f177983eb6d882a21d2261ea638c31c616d30ef62c983314e90500e428bba0099063b2a4903133c6d21af790b51e1e0042b798b2fd674cbef87fe2f73316f39c6b562628741287f4e9eeee35eeee6fa79492524a29a5a94b5b3e9b44412ba2c4430fb71546a9f33d7c74b04489fb0a7e0f1a7219cb4862d90891eddf820f5acc47f2986f28ce189aba68cbc31a8ab668ce5a7fdf7fd89a24f0def324e87ce7bde729d011676acfd3a4c94c8cdb3fab3cef3d09baefbcad5a68faa4f776f71d201ed034fda7859ea0988f5896c3e480bfbef7b0b3cbce9cb5b63eb69cd723e2b0a7687f079bc3fc9a3bbcdd6dcb01fffc39e705ed8e3c7a38f79cd35231ef3c7ae8ac4d5b5df71d90070fb54ad92833d7e86d099d575915cb2a1680b0e2052628c91207169934c976cac4096d65d5d8b951a9b2eade94aa86eb8304d6e9846a2949b168461c954d3e9d6ab5b586dd2966fae898b866122444989079c89ca79951f984d21f10f97a37e76ebbd12bdf4d0ed3567cc18f6350d7fb39ffcd1b68237fde597fb4675b73b6b65e59c6dbb6c261a9e28a2a598c51eac193986249119188e4e3870c31c0648eab89b5d6a668907d185321fa0ad1765ba9919db6685f39b32bf35024cad982315829dbbabf8c89bd44f245f47a128389ae8ccaaeeccaec4ba4442412754ab0f625239365dc6f34b769a0fd1b504412b4db2a730369dddddddd3f1c36674aad0d293167be77e508c6f3d33f98fefd4053c7d6450433f452c10c629aa08b79edcc81df1f883761d81e88e7cd20c4a6c94cc903ef114260e288922c15a96f65647e0e94e7dfef079ace1df627a86ed9b1819b3bb699058f19ba13ae59d98cabd40e7367d1824ee6c0035918a73056a9eb03c65862399b4d9488a672d6fafbfec35094b3d6dff73fdabe1b551f16682fc53cc834b90f598cdd81f2f6dc8b9256d241479e2684f12af9cb90e8c84b24d2fc18418b73c6c32442064458dd6f28140a859a492fc044552f809dc918e9a2cd1c3f5b2d41d0d5431b831291eb059cb085e38887cf3a690288a1e7cf9487d2c339a5c4f0c20b3870dcb8e1dedebc4ea7339f13913068f7045310a2e7a31c464aba39937eddb0dfb77df73770ef75b46ece68c855a829691f82d543fb0c98a894fecd02d49e390d943051f8ce72ae5961a711066bb66c39452a0a26f7de7b53f882510c41a4c4430f9d21180155f10224482939c9c969e2a49c208edb5c9d239d94b22aa9619d2101906618fac1ffabb5d68a5f8787734a1a42a9ae95b44b45adb5d609846a8c21947a38c009c2a0952e0bd9a58649b428da220a7e1b68008d45fa8abcd21ed6e61858128ed7e93161ebbdac9cb3ccd20604bcd4799ff9cc673eeb3a949e76ce39e7df19e4bb749a333c78109923042310b2fd69105ae333a7d191d7d16dd6563ad2ebbc0edf42bef863d00e1efa8c8ebc54729a474df4049aa50e5e627252eaa10e512a72bf04a50878a903eaf040323c7ab8b61c3d9d509c30913597e23427e453993978f030fb6c4647526ba75586fc7dd01f9059c6361e28b2c4556bade53acf8ad759c99e8ed7717947be40a873fa046bb6f4524c73feb23eb910eddb56217a5a8ba4a593c8110f0983229d84b6a871c7711bbf39325572e792779ca73695504d73200f2998342ce3b8666baa3a0c9826d39ea0f4500440e6fc219740c2d417e27885230ba393398caa23a08ef0a2c1685a96e7933c55aaa9b21b0aba6e1728e8f98ea7ca51bea24e7b91312c5be4274a6b3a44bf8586070db90b14b44ac6dc11063ce439202061f01809c8177f778182ceb5869caddb3c7078e2a1894486fcc5d9924186186278e1051c1b2c0a5a9caa4c35a511032dce9664823ab2efcc3173083202a65bad9a07c89c6de5846182fa7b6fc2b580c912a80d4ab32629e0e3cd495d4ef9532e9922e7c696d38bc27618dd01ae9a5693f1c855a93a1564c8557881dbf7de95cab25055aa239cd860f06c42c2e4d750cc273e40f77c5176214a2afb87073460c1d51c2d1222d26baa547a46107475ce082d4e55e8211a5d5f14b1e052f4b5aa1a97e7879b47cf9c14b55aad56ab01c1585583ea42860ca2608cb19c41a3e59fa0ab16df5dad75cec9029225ee5b4096666b203ba32b797a828e1b48b280bc3403344b2d3c4c2a80d881092ae73d8902c5113977094b4a453adf8388081f302915e9deed94c7d8daae6b6991f11f8cadc5d6d27cb72d5f6aade761db4daf034a0f413a78788e8c995dc8113599be408161845759b9b0e98432c25afc568aa55919a0294bb5a5625046870b578ab12cb5d818be7985030f89193bc3213575cc8f8bcc85a67748d63f66c875551e21b42867ffffd7647f88edef72d559e794d1c10139c23f8503f20583e23d897187a041c8a5c5b7f5de948a0573e1388ee338163772389c8ab3d9dc3df57af988a3f190bf7727c61c0d1172d4712819334f983b71a7ac5ae14e74945146ec20db5fca2696f92b66a7d0db8bfee282c811893bc998293926b82192238206bc3790bb912f270f3f1277daaedd3667e25bf88b3badacd4384c3e9d38ce25088c65be793ee868f3216534c3c8cdf3d139627e970869062418b4e053c1fc3e6f7bee3befc58f34b10680c897890a41d741c1f6ef308d0571f0e121c907beb51a909c6b562bec1d23f6fbac7d1468fa13fcb2187e3e77fb7ddfbd2e20a078342f06efde9b3299e8486a90d4f5ca170f71edb3f260b6e6a107a3a32e67ad3dd8ee6299abde180aa253759ec9b3d92e769d6adb388c4a8bb6e6559131b127c81cd7051286918e3ce03579df81e27b3650d4e235895dec7ae0b5912ffe1f25347db153b56e1452b4aeb88184b93a9030b6256bd9239ae8541e285a231b0909b38484c9dfa970e696396ff4c6ed75e207db57c891b5f1901199c30e91304c198337effd2df73a38b2a7f8d99b9b2d7e48ecf9a245628bdffebe4ec7ebb82d639712598e47639102bf9e60972b744729b518e450d05cb0a234b1c11835a022a734c36d2d00119300520e04c030aed46a12be241229678b99c8b9f3f9c2ddafaa26e75c699dcc2107359a6c8aea8b7b254d61097d535842cfaf610350149d3d50145d97d09e2d66a7c1e7d38ebd7fedb55dce3278e87f5f24ddcfd7e69011f769c07b5e1974907e766aa8d7e294aaa6a362dbb64dce6628f95d07eaec54ce2bf344297530af6c31d3a811d74a0d26db14910fdb6489a14f305b8dcf9f41b64dcae0bdbf8f91074e56963378bf81b4ed27284e1b71de6cdba4d250378b8e9c882311b54f96bf66153eca17ff188811dbaedd363c839cb63ce3b68c6b56382ece5794a470beefc362c70d1edaeff3f6e4417bf4f0f0c4c3be286137580bf6f0d045546465cca499801c4d2164c8bf334f3360f3c4c3bc290fa52b36c5ce1e8e86b16183053f7ef210e5218f1527aced116a4f79337f318d6336a6e90cdb1f033e66084187b2d0fec59eef5f58408ec2fa0f08f76708dada2cf6fcd8a461c0478f970c0e74c4010490443c3619b3b5c7bd3a0a9dcca106a724b092d08465b170514a31c5dff7c95a0a4768df186f7f9f4e3ce7c47352fc348b95d28cb1f8c3b618d1a265b5589f8c99469eb0b72256b0832d86e2e7006e537cbf2fe79a95abc3ca39cb2c65f2b7750370e2541b4bde0c1add83476184204adecbd0d1ff4b76834c03402c5ae879ebdf9fdcc671d407e08242c6d16dce074cd0090f3c7da9b3523ce46f67498a68c7183760264300ab25369851940dc6d8a2a479ae1aa876cea1c99cb92d958e0364ced3f9acb0e57a6d5b4a55b3b2f134e1c2184b3cbd5ab79c73cef934338b5efb4e703ebc2e0312cfb0e51c9a7fc3e28c8849793d2191b2d49ef232945aab83fe6d2545a9b6d62aed9cd67e8ed073c8d71b9debb4f32dca6140bfd71a31c53c0039517c4625167b11eda13fb353c38cc3d821331b1134dbf589a3e9d3f6d7265a37c3d1b82a26202c8d8e384be3681c8da371348e36e387209020c1c963962d5ed049228400bcc4207701a8b596525a53e3915db09634499decaa090cb6385d19b5a407335b9c4deea962b1fdab87c44fd006fdb99aa4098a739c77aa2eca4355d6206da1082dce93ec649a81a19fc3073370d5ac5448748de2e160db36b9c94992ef7314826c902f0bc8c20adbb50085a621b8a9175bb88c18cad7c5a0285d9bb4937af06f3985e3a2e5254c54ce2f99c9d1193a418bf225c3a3010ec34510b015d786f825835ae1b8262a5b71738ef5484d2ca6ad5d4062c0616c7d0b5cdab4354b93b16e039cadb4094ab8df9198650248a8b9f12c46206d23b76d1e1633960e40036e7c444afe05ad9fb04fb866c75251efaab50ea90ba52ea30bcb25e692e372c405b6fd5d6e5c5e2e515c5a2e4ab63fad34461a238d91c6c8593adddb9dcfa55dba7e476394317e3fa3879f247cc60fcb4321681b346e760b8d11004900e002801270caf60769a024db1fe45a21c90a48244c76c918dbe16c57c18bedafc24cc6cc7741b2fd5d5a2e445c8cd86e8b90a3cf6891a031ca9724b4f8a9b1c0032d7ec615884898959a154619d3ad2cb1c2cd5e6942851ba38ce19e8589ed2f63ac1246b6685d3266fef8b9913136255f8a4818bb0219fa67b418bb8c2e23c62e23fdac7c650909f369e233ae34f1a92d61d31899c8ff597d9ab03346c6fae2a756b72dd218b76715a07cc61b446a3746171aa3cb783750859845b98c32c6b22435c997daa28428b7f862a3e48b73a9edcf112143ff2a5aea131685922fd3655ca1b5028ecbe832ba8caa9a102663acd553beb2c56cad552253b15b752299e8006b6c1b0e7c12089a82775cfdca359be190aac254739e32585ab4ab171d4d9692bccaabbccaabbcca2bafb5ae6cb6ac4b3b95665c8414d5bdee5fab65f942a70fb2e6a66f882462bb07594942d76af76bcfc3359a32d3d064c672d63ae642145a7cd7b5b55a0d6396ee055666cea96bd8e024169ad1f45f32b29ccde4a22efaa255a14d665446a950188d9263b11ccb33e63370efd22e57b8c1b9a2b3598dfd2096632a558eed0c45e6988c99b11c8bc9c8189ac40639a23b98217feafaac78512aa84bbe3c99b90502842ec09095a0e9e7d87402e583b960b0272e97ab6685b399bc2f30c65882240c0c255edaf378bcd72fbe07e241be9abce024bd00f4a7dc59d25b6b67beeca4573b3b30ce201b366491931dcb04a434e13ad00ff0b717e52cfff036aeb1b7af2091033b5b0288a16bc82b90884106974c61dadeb9c1f33768ef57de3b3cf463d0c57ac5d3f170cbea3df1ad59754b382ee74c29f5842fd769082168648cfd5edab55b296ece93ebc4e1cb71d58b3c45cbb8adeb5c4a8e70efbdf7e6178908e967c88fb117f7b284a1c5ee0423841cb1bc7f472363e6bba04b62fb65d12b9e6ddbb6df3c2b60cea76b3d5bc6a7bbad64cc81e2f474b8ce5be1386e5be1386e5be1386ed35f4bdab3d2e13caee338ce933dbd7204d838b26239476037af282d2578ce99fa7213dbdd5a3b23081e343467483e626851c2747091918de4a305100f8cd3240245e334d1b8af1d8ffb69296bde5efcb62c61ce719b13dd7bc061eaa8036b05a7a9f519ab8645e0023c245001ccc514e19b612b506c9bac5bc7db3e219fd7f1604f3c741a30d0f2e64b691a877952cad123d114e9edbd96769299e04c579ddb565522983f00b976ab6d422c94fc6ad26ab5b8158eeb498dec64273b29a5ccb2939deca49432638cf1f453a699669a73ce9decba558d21baaeebbaaeebbaaeebe45311e5464986248c0564d88210babefdaeeb501dca43fc62873a75b686c12642322d76396bad013aea50a7ee44eb58dd898692d0180cc1405b2a1e7a47471c6dfbd9d16c9a861c831daa3bc9b47db13b7527293bd1d146db404ba32d43b4d89df09d4fc4c846225f3a5460f7de2ddf2d2781d22d6f3590ae75a954abd7139b36405506aa39a02aa5ba8d22dab7e8b21a606d8552a03dd796a653d6c99bc755ef358769797fafe2f2787e06f80145ed9e9701aa583c2c2c9f4155b8597e82e2b780a4872c5f459be5755016907d0d12716c918ea398bdda12f5165d07bbe7e7bcdd684dc9d934833f70dc684de1e22461746465b515d656585b616d85b515d65668a38cadf932682eb80b4d6c32cd5a5b6d9d5f8d975f0389ded1f23abc73791d2eef111f5196046b4441652a10a1c59ca33fe7388ccc4367c108fd81428b3f62d8f357088296b5f6cc57a35323cb8b568a7ed152715b65b6c5f9ea4173beca3cbd3d906a1a1d61d8bde37cdd71beee385f779caf3bced71de7eb355f17c44daa49835c402eef9d1d57863cef9e17b3e745ed7971822815a7b42357051a083d55aaacefa82f08fea03f35d0e20e77b668543cac59a17178b827f83e68f1c51f385cc042cb7d5950a247dcf14ea03b2f52da1da94be9bdf8e110fe7c4b3d901364acfc9cd5ca78b903dd323c55e81c3620e37f4b19bf22e6d9f697f15a566bed197f8313c5166995181d76f800def5599e8586cc7e5df9f9d2a1de1de896f15df570a0a3f9f2b4d0e2dc1f920c3744317ce10b9fc7a1bf1b9efe64af5adbf2ba5ed9f23abc82f4a7e56967c7ca772bb5e527dd2d3f3b0c902d5b460b7859f7e68e4fb4285f9b29969fe37214b47847f187a87b4ac5294dbed8eaaf930d5905ea65a22e25af25af269698b678a36cbfb65297c354196c771a1dcdd76cf2ba230b516891f4816e0b44f284d0f6be486915a4491d3290be1bef211dbde0a15befb52cb42529a832b36488992543105162736da534d36638a8888c83712e1dd7945996a065a82b08f39a4cd65e131d392180182653c773476a63b766db7878673ce4a94b4343dddcdff18e5b9eabbb8403a789bb4f6eecc23cbc30fba188c46d3abaae9680f30e0d3e524881dd1b86f7be20f28ed036ee4b31ef0c027d373c0c3f120e5b2f8ecf7031ae59d9c06e16d79573189e4e2d10d1a79cb9ef9e9e6e901b1a8290258690a3eef33562fbd7eb7544d0f774b2b54f165ab435dd6da1bdefac82c8989cb9138dd869f19d175abca74f179a0445ec93c0766a00c11b3aef01e54c53a72108241a6087bb92eca619f5459d4223e86c6bcefa9ec28cc370db6a5638ae1ddc7bafa41d05c9bff7de7b2fe80373eb307fc8970e540143873943be5b7ed2f5813a68fc309be180f12cc7da1a106ee328e536cb6dd3d6449f3f833c7af0f05024b2b6c65620299514d95a9903282940115ad2b495c96416caa41bf734cc4d5f763eb0c37b1ae64e42e7570c87fc1da3a349ab2fd68bf562bd582fd68bf5baac0a4e2997551f0c6d50efcc3d5d9a8bbaa9abf270756deee8a1a92644036d6dbd29554679637c38725eb9817e960aaa90f89d4ab135df948a0948e0689b561bb5da9785d9da9db14fa8a5515b65539a5a82039ced3d1c46b42f98c8cd367dba042767444b74ce269bda279b3ad9e26783a8d09d6dbdd1ebc8e877d9684cdf4d678ecd76e67733c68bbd1935d0b9b363fe8c21fa5eda07ee4f8b6d116ac020904fb6776a70f981162d6b8af2136a59f6354594abd9666c33b6d8666cb1cdd8e6bb813622f40db940cb3c4d574c1fd30f8ba02bb52f2e96031b5956e7697d8a6dcea65f3ba0222cd6b4a50b0241deb6764054bb77eccbb2ecababf8da17b5576c7a83ced7e19576be4afaaa1c2d0521f76e99854ade5ebeae95912df13ccfcb4273dbdf781cdba7bbf752bcaed3b9611df1e6e58176d1389ac3f8ea86ab42056563a2b9370a351a4e675f1a1d655a0d542c18f7de19ebca74c44d91217f4e0c134703438bfac4d1f4c95734e49fb3d6b499293278dedfca2c1832e4230fa82dcd53c5bd343705de99ee895b9a3ed151674486fc9124d9de31d9dec19ce858f245eb16cb43cdca596ba9836822f410cd449d6da8b40e38e518aa110000410013150000200c080583e170403420962c9c7c14800c5f744e7460409709c45190a33888a220638c32000003002100881015ca063812f0ce467ec3d87239c699398997b48f4510f6629059760e1685ed6328d98c10063b159d1e59edd12711a2d9ff10acd8464ae59f160752e116387c55d5732f6735de722ccd76cb347909efe491a9104416ce3460bbffb1457fe410dd5f3cababdb3039e97b56d0d88326031b0ba0b469ac019ba00c12d38f3d147b09825a574aea93efff4eca7219e43a20e0ba8413feb017b0bb499bc23e95562110d915461055c016b6e03592aa977e827ea24b5add791792fe13f19494a94b4730d65f5437cb6ba592ad050ad711422e74dc4fbcac0da1cc3705e2de4edce861ff84559b590acb149c021564076b0add70b0b0216a7d61d3d18861830e9c82a9c2151833b48653c0ddccb6ba584b17a672f3e8edc86618267f77537bb10ab088eb4be2ddcae2c2ac33f0eb37d03b1ec432b12637812b030edce7b294f5a391aa483b5baec777e134199c125510c855cce4646ffaf918fef36fe6356e21a7ba7b190f59a5957cc0bf541bd23667aa704a356bc92a43eee5ea174de34e90ff60080c2d9fb1e5f512f57ddcc2fae46b9e8e6f6a3c44a6a21c5b94505ba28704bae1949f0e1b7ba608eb97cfaae95f737e6554741bed0102f527deb2fac199df53de3502eb4a5a453da781704cd7e49aa349afdc2db17eb6562f64a882b62ccf8799c663bca81242c0533ef476a4a30d29a774cd14fcf51c5c61b52c15a00fb57cd3273564aaf624998ec8d32355156831607176918520262eed5b1c741becd419e86ac85500fee571bec7870534e440b0c087c631439e12d420b1df0a629f210b3fdc052132ce16af60418d7aef2951a851d7203417d7383222755404b767f7a76921a4bf72a060930db7f29ae04afaf0bca0159ed9c3a388042b707a8ddc01ce57c382bea7e7e8bb938eff95bf1f2119b89ef14f3508ddea863b0a28313a79201b727fe221926655b51cbdcc30113215f5b289c465fa3dd7a241c82488d9d36f0f53139ad55a170f1a387af962fdd7df53c22f8571b191e1f2cfc0dc427e4662daf1b199b0e87a81855bdf95b223e279d8f5fa335abd726eac01b4a3e34b1994defbdc8caa7441f394c3857f8b6fead0a0dac1c794a7158b254a8016711c77ce0c68a90d13e67fc57b40c1c1ec1be2b2df93e6137e74814f256c678d96e8fa455ceb7e0a27bd0e774e1af45cb73aca83949d66b78fc93ea0df65e59ce6b2d75d53f92eeb373832689c72365e4e054f845c8081ee1d563868d3d3700085ae869d9f5e13b18213c60bf0081acbd221561cdee47c26487c8d2efc4b6037bbd15c9b034ad3fe52aa48e992d92deba8c8a5020689022c906c973355af16112335886840ce1fa18a94deae144ea8738db7d8c59a5c017ab517b8a80704a110606f5f5c90a5b465d16489238ba4615ea36e43d860a58a940be9cdafd4300e0fc3382395e30155a4f41d0ae037fb91f2ec3d3520e2e246306fd19e80f207d8bb838e43e9f3b55eb14e235f0b47936d43ba6d4480c28fe6e5348548a923ae6f7441e6c09a0fd611e429d0dab24ec34c7b6b08f7985d17d7889e2c38a07d8ff4b2d2142e2fa36b48e9a491d02b054b84cdc15951d94ec7afc66e9b8a7525bec02b6222a593cf0ebc53b825ac902761a6551ddc9a129f393ff426e149d227d121f24e186c0319f92e6ff4a10753829c2187fe6bd2c43b90b94b78581000257894da9bfbe97c189cadad17a10639ddb4fdae50c10c2c0ad80ed7ce6f9396aab9c9d33c544c856fba7666707facb6c9838653db996704af58ed49ab9d7659387122fcc9981ce012a00446b86a2447e5c557391ce5109265b94b739c33b4a6038778eee2f1bb056d70bb921c3ba34b56f869a0b86eec864356c98414a928c4d749ae7a126a50734675a72c2bc19739ecec321e167c28cf8d5888b81c597c0f90d58279cef4f654c8f66a4a6ddfc27ca7420aa0d30d00e909b3e8a1cf9f3830a0382ca878d2a0e125a41e8d6fc09eb239924287a4336dc9b77fb287fde5144910a17eba3535aeed08fe7ba2cf93acc3a2d5fa254dc9442b67fda49e1fb2d096f8cb0e09e1c9af709c34062131875740b473afc4ba864e1d405c3385f3849b6f7bdf8a4964f41009c79891447a889aa28dc34db24d3c303f8fe3682db6713dc4f074d6e2ba3559b9bfb244f277945f02c34130a59ecb836487ccc1434bb65ac5d68998791b25a82743892c87f1e66d7e48d18d261d17fd432c711bdbcdf4bfcb52f0ff2b44186aacc01a9fbc41c428a4dc2dff305522c9e3dd7bdf76f8b1129a19737d520ac94ed9e45490bf2b7de22798cad185615a8b9907d09cb496ac27027ec4fda58b48fab036876fa36fa24a363dadd053ea7044c161d11dbc22823fa486094d0ebb4f9ecc51dc4517fb15b387aad41408875a72229263d9021c59270b88a1e29f240c8ea5c13fa1bd395017bfe98aa2006f7874504eeefa4711e101bea1ba30ccebbc662adf62c0929d054b26b0627143560555b9ceebaae019e5455113989af953da40a73d538d53f4c1e47671bb406c77d9c0d75d636dc15fe1fac3b3ade64f330b637fff1634c8064ede1c814a4ef81a4d43814e012e666d684c6869caac1a043b4903ae834d3ab7418deb36fbd5145b51d5c2b08330664e7a706c37f4bedafd5d7a10a8f5737093446ba891fdb9d7de54f4ac86f72263aff68b93d63e2dc617001ed980a26ac7b1b2e62fb87fe714cc1cc363f9399efdbac96cac6cd69f7247004816ceffb456ab9ca800a89bcb696ce5f44f699435be4a250007b80c2fc35bfba5a2920425f6e5d2f8cda4e0bca0a61d506d20e568fa58190c14e326797e59feedfaf532e0da795c33d54c214291f92893193a524f089f2beb727603bb1b5ae80452c4611b93fba1ecb89074c1085daf8353af825f7e7975d4417f8ac11b3d28d42f966c8c54dccacc4ea94c2444a67720117cef1c76c7579674386e7467f03f7ce6718f9e29a250bbe01f6635a01e229d0c8d7279c60dda9b5bf4e9ccd8f74b0beab6f1cad42604e2e9a5741c94040f61a5521e0d251abeb1470bec1ec60c35f3e84fe79a4639c659bf8e23f6fc0b4dbebd8a782fdb387051112b79a191450542b7632c35435b5c761ac920b1d016a66e4462b09a46583c2a0d66f13f871fd4b86c3c8bfcec416d1ba928c25ab63a25246c633a49264c8c88a56d314294bee6cdbbe2f1f7e710b6a9a5ac93042ba48160b3c3dde639b3aa6a4c2a62a1dc23fdef64ba8b40b8c37a805dab7983d2aa945102b96ad2a575748aedc35c2cd30cbe66b55a7f85f57416ce7ae09fc0bbcd084d0a53255c35672b0200644c8fa9dc7f51835e571b25767c6c9a91d933a6569c2c6e791fdbb71afcbf03a41fe590dd898c5299ad123b28e637c44865515ea02f140a37b3cba16a941b454f83e62352fef469a38ac5b6b1ca5e9079b12b924504a37b743d756f59f8eb2d1266b9300fa8ebcdf7dac6bd483d43623a55cc418962e3be9c32b24c1f4200b69c2435c3fb5a444d78a79c124f46e07472d141bc48abf0740b85c2f95a16c441f419522204ca346750ef5ebf78d52ad34a110178863c121c9515b435db2c8aa83c63aeeda0feb2a3d71ee12ca71ea60e566bdf7ab4f8950d48e9d7be36f0cf1fe047c7cc079bf5a0655fc0a54f47f66d0ef87c3a697e3f8fee183a3ba68f23187597f64ad09280f5f6f117ef0b0cd6b1438bee398ba47fa0f911b1828f27c5b7a2e21f706f72334db752a0128f8b43b8ad208a71ae107f2c26d803dcb31d19f4800fbce5f83d1674f6c485aba05122398890041320fbd7c4cf1a158513fc3e744767986002820a19c5344b4d565c22852af688038bb01a654afe2c0de9193c82cf9548b6d850b1dda50e1c4e249efcce0a501d953742bfc52a3b189de008394a7c8684575393bf3c83acf0b1c45f49eb035663a8100f5bd6a1cedfdd0f08bd61f0af57598c1fb4e7247b63a065d88ee8de0218af05a0fdd592655524ada1c894455b212c3493bc950579df26b860c2be95edf68cbc03c944e706ae46dd32b7848eb031059c298db8a9997897175196e97c157f12a9278e332fb21e005c6093d1ee2008116a041e97849b687a70c2d62c1cbd82d7207f1e79f61ad062cd9a684ee5328cd1f0ed92a460e4df7f1c5623586a91e74420a9526680dcd13116cbaed7d03ea75db48d827f37886fe2f2a7355da344280c3ac39fd73fef482b139f5bb1025abeba2a32551f63ded78540e0f9d10a636e84846da9e93ed57598830059a3ea374c14d3419ddd831f8f2a7a572f125845e99654177a29e7d085fbb8d1031d307a7a1148bc4cb444faaf870dc65dda1d5fb41e88837e85fce77d318d2f453251651f8d25444eb8353fa330ab274406b1a2999e0c2e1a8946f77240b95fb3db5ba6c3907b135d35c28cf61e6e4462a0bd317889d7ab89ff3476c316a2496b5b22b041bd665b03a938db6c7ce7fc81d9f00e4b00d4c0cbf3f21a88a8e70d1ae65de5f8a3211a6a8f164ce02fc97acac834d9ac97bf419d3ebfb6c47dd895cefad3120b65f70abc30b3ff91762d5fddda01540b317a09c37b21822ae11c93b922c1ed1dc0f364135f2b3af67feb37cadb9c35bcb870bc429ed444626a74a764436e05a65ada04669b6c5d6a2916772b1c2795f12535793613e6446a5c899aaa02154164e52c8b6a02269c81a58e5522a9021a78a02748d458b33eeec407a7886f8093029a38073b9f5dbca59e677f1c71965a920dd2f84187bc01bf0177fb1ca9315098531cbc816005910b3d0df9a2970cc681c593115e2b99cf3a62a87354aabf25da1a50a08ff810636a256e1d0a398e133ec89692ebc044c3abff1ed43b1e5a6ed642e06c0eb80b3ff2b11fd2d46530d31131862480e05e7b57c792b0e9c2c81139c6e129edaeba88afd1fe4a78d3580018e213b93a223573fa33989dd11f82db4d4f24b76d701ca21e44420a1a6441dabe6753c81c4ab57b765b157443282e427e9dffac5269b8a0c59a24765630c957e01b807c40fa6346be6dcdf1ad7b811db1c59efb957cbbf99b924e2e2ad41620fd7625e38a5df24073093b23ccf52e5ff483b0b3e8ff089a20d8cd6067d1f739c6537e98eb02bbdf3c52415b0a07a21e67ad9e43107d0f53c249a2dc83a274591eb249f6db77d73a326fd47f8c0e706dd59b007d3f178ef4f29f7bd023f402c31ab3316bba807819c012beffb80a95c5a5fe587b4cf9a5e82545d8fb31755de310aa704a093811cdf3bf53bf82c8cb58956d8d0f2811111f53d91d755851b21c075bee497c6bbd6fce0946e9f00fac72110eae75c6cb28b0a32071d6600ab0db660c713ae35be0b5a95a40fb2afe4242dbb1a2ce90f9ffa7e77a35a1e57a3b3d2d48462118a540806b451b4c0063092b5b53566aaad01caeef5132785d0c11fa0e87e70bee68b2c19c139c97f9839afe0621ccdd734cab0850a81657b96cee2453cd34760ea2f44224e6034ec22d8b201bfb3b80eae26100f1d9fa0f11bc630526e5d62d25264c27ef1d4b7efb336c09bdeb22a2d9ff0e8f5c5c807d128f4c4e444542e2e5d227947470f72fea739055e9795cf585a311eea248df3759172388e4c12fa7c6ce54b6f4ce5de93a3bbcd3c55f53311d8aaf7a1f18b936ed199d4ab71f2f9f4be230c92fdbca4027bac783249cf89942353e51b5b6765829f602c0f29f0638383d2ef3c0172a4a42aac42268f0b22cad30c8654b48772dd76df7b685214db7a31d473d002e33a79e33933246de92614853a1c21742a26e74e037ca539d2dce528819ad2642c65f15cd8c1537001f735d603cc2cd9952a159dcd5dc59da0422c120cdb904f8bb0795c18510eb5e0aa7c85cfa4602314374821feeccd2a95748c4a19a728eacceafb41d3956980909221087dbef2448f529c039e0c65a381d4a14873bac6dbbfecba0239e9a19a39e6c379ad9220216c5a80e20ae26a1dc702147b3681b4c8a8fb4142b62f68d25dc40cc263ccdac2675be8957006611f1915e281806ac23a8fa28ea83819ecf8fabc943292c20fd17284348c57e624202619d13f4fd7f2453f95c33525f3086c7fbdef606a22c2c119f6b3ffc884fd5da9af8563e7ac1e3fcd04d89ff3dd4a6c74e224e0f245f820add0e8c6f41bd5b30619abc9dac252638968d929f98f7402e34018f814467a9091685073888f98c8206721099ac65c30a1414524001ba979392b778bb801c735a4645205414f87b2bca6584440174f3c10bdbf880391392167f13d86ec423329096e37c7f4129d194500ead3003dde9a128c030634d91bb0f56bf4613e11142d83a0a286401cf865a092e9129aa6990416c85f7a1d8ce52c974c0af4cd4273d0643c4a031cede65a316aa963e18bf67ecf2b1d5c3db52d418ee1ef9bc8ee095efe2191da1cf0c4a8aa840283fc6214030aa6c348ca74fe99570fb5d227e9199efdb00c20dadf638f7347939abfbb1d9a953e826c52fc892df6f60745d6014bbf07c8b5fcc590bb42495b7d2ca0dc506b145a6111591b8c1ae42b0f0e516b0ffd68dece91661012e126837df8719a8cef9869e91b258333cc58d3d10ce768097d0cf05b47dff084b2e22da653c1949e1a6f3b063236469cba5020842f73eab95b031fdbd3f5270c8c25685f3a4da9165a894ad63ff345b8579c0b66e2e37b69a4348bbb4ec2b8584e24be1a92ab6d0c97576038c3107ae46c4d7de261b1e555e08286e113df410851b95e1a3d2f380d30c364493e64fe8c45351e2355a0a255e983ff392dbca4a564e6c9cf92a7a0a25bc19b8a2206cf5068c5e5e2e9952ab13991bd045a0202b87ccb56423422197527d959d4a49ee4c5aefa01a82b172751d2567a572b30b42b2d60b6966cfe24da0b93e3521b1ca733c4abdfa6d505850fc5444838add22f1c558045324f581f9125bb34190db992795f32a770777b941698973b4a74153c0b1545bab40353ff9ad7b10b1949dbc82c2bd34a1dcc268720c83243af05d5fce028b2807206d7d91eb14fbe6bfb9e911f2e8a806dcbaabf3dce4197a9b9f937f00ac1e41568ff43186110d8fee7c3571786a9ef2785520f0988e6949b8c8357e20641d116d1c65ecdfb0b8584d92798cb485752ad8c026fc550f1c5f1099a7e80e40589c896c6fd6378d125d5b931359d6d1c2754985e8803646e5e0e1d4ec0250659a8687dda2d94b1999be60d061087ee9f267b546ad92148d3abc36775e71d3d8012175d8c0ba94fa5dd9018325db4c62533fa43493e4b14d5f7a6c1b3d5f72c8fbe49b567fa89c56f80acd6930994b01d78ea22d7d7f9448d4a50431fd094a2d7693c4d489b1ae877bd1a19c9285d31e9581efbd8618b0caab1f0d7a06b59ae23b0745bcff3dfdd1ef2ca03fb12b59856a35451b8b4f8add7318a4a8a7741a806eac108f9113caad47d4f6de9351343ddd49c87307c58c819b352f606e25ebed7113824b66c403b4c2c8a012f5edfecc434d7bda7ffd01e95a6dc4853d25bb8e18d42aef143dbdb0ab50bf5bcfba0b14e8143e45f0b3bd166491e4cf2851ae00588c324c7ff7ff52dfdbf102f731706d99fc6e61e93752a6568f6e34f05177a1db8356cd6309d3dd5143a7ee0e0155924ce07bcd4a85359834cae2d23886d012e7d09befa844279509e6508fddcd0a2d19ef91b2bdd6fdac364b10d3d20ac298cc13b6a6892bfdeb1de6f694274378b13f12a480c67c501205e575cf42b8fbc739ee2a43bf72c1fd5ee3ff9f440284766b4372c52eea815024aa1618551c01b888b20954f8e9f8fce4df82b4d765b5b7d2210137f3435395ec4936de24900d84ee57b37957a64e94ebcddb2299b19207896d026fd64691bb978c5267b2ba9b6afd6f999a7c7607837f2ae2f920470b5df4e94c1bbc45736a78216d3b9c202df853658e1b250a411e73742643f392ea17267c587bfb44ce1a1932f199004b692dc4f74413018ad7c0fe420a6202824b68dd034273850d799e24bde06973191705684f77bde6578c7b9e3692335917b47c947e61a585f5e266826f862a829c1ea0c383b5e4f9ec17439dc74689a3f7ff19fed2abd115a1c44c50d495d8c9f5774407aa435a0208672967b5d38f858f0cc425d8dafc435099e9fee238c91966ad5037d79bcdad8adb2c5309e6e9c140f80869d92cd17f54074357750b36dc344b7c4d71a50431b075a3c40edfbd484535e3d6e560486bdc19bf4f409f9700e62324b3d93d253150dc0dfe2800e0cf36211161ab9c0651d3097843eeda264d4a0a03c498096f44450ef0f23d270e26f42686c51a7f4d27b23049067d0a0a170274a7a01fdec426604d0d4b2313478ae3d44d6bb06e8178dcac49d6fd27cf0d57740be06dbc7f8182da79b7e32624b0505b41a1b4b3e9f0011266f69ea5cee5517f4b026df799db94b087a29692095e9e4084a6d822577ca26f63dce268ffa718408fa5cae2e32e0fb04a3405dad90133754c58dbfd478230863fa992e0ee940458db79c0ffb3f774822a69bc00aa39f303b46b7dfe21153f19fe5312cf79b8471985230b5025ed0b672cdece175dd714912e49094ca07e5040b92b573066e6caefd6dee0a54e2d7b5fe15fe3d650d86b062270c8f69982c5f8abc7483a952d432cca4323966eefd94781cbe522f9c72583a0b00872126c6a7af7a3baca82ac35fa26c75cc7da06aa6aedf56acde7f8afa5740353775e28daaf23b5d40d3ac6cc2d340fad0b4f733b9d64c709f0ac8a2b50d9db6e8e612f02f26e494a077dc5455c6192663099e659a1104d9a7819ae89167d9bebc5857daf1b88aa943aa3535e72391428cb95489a67ed93e6b9d8a7dc7e4b8bdcecdbe79ee21189b6abaa08de0ea299301ea35f9fd18da0dd37100b38f2947ee483ecb3231adb29621a22581c34b6945741aa2c6a0150826260ba3742786804b3abb350576cb57f50e9dbdb9dbfea6d8eda57446540e8d475a7c3ff59511ed30f99602f0c42a5ba227d4ebda77cf11685eb119c62acc9ebc93fd3373e33fe7ad6cad94bb66fd197786e1cb390e753ff1638b29ea953213dccdd1af08d4a5d8fc468e6a9b8da4dbf603ae264eca8cdb57ae6ce64915af0eea80f4003e373c191d8779be4a8977629a0109326ca03d4b42a4c4f12da3166dfa45f95263b9d14fff9b6224fc7a825a4c5ba962f88a5811b455b0d3270c50a346509dfa0635c7212193e5e9da479a47a66a21850d316c2a075876d231d726c8d8da3d3244fc22c185dce7abe78b5e6bb01c0aca73e8be2a6a7548d2f4807c91338c194acdfd5ab89952041a7b231982e06f9806d5c08ecac6df6ea1aa3f41faf43e08b2dec6307f783cd9319cbd30e32e8a7f02a9c9f56a6334374664cf398f7988e6d936876007f3cb16dd0110f2d72d415d312faafeb0b99a30c127b96a3a19b307bc12dc14dcca67debeb24b5626f622052079ae38c9b8479acfbd523b3088ecf586d05026af701aad51955e82ba3e35f6751dded4604da95606863a317fae0be5b368bc7194de0b2a57d202c5fa08cc6ac09ec1f9f71a733bb37b3e3317964b107f25eb160f1511d53474c30745e53d8069c40261b88d1d1a23dfba87e03d089f711a44810d260e5638f733e563883e0b9b813d007bcec89de2001b578d380e00a22a0c3a5da75284317d282a38a3294abf18c4ba325d73678a702a87d255dd2eb6af34de62637e7a337e9b3aafdc64679bf514c8c02a21c4b600b3d1e4ccf5f393e1dd1bc49d009bb439c25b2ddcfb008a8734f4379cbbf89f46fcb1d1a701c00e61f07e09b21e40e0965960a5fe8165d715953c51c2ff24c898de153b949cb9ad59afe35ff13f470f1e9af2c1cb4dbcc51bf662d74070404a99386a70c4ab2b2a22d499016eca4ecca05a03d2d56d7a632fb44d280b2768e69f08a34fb71ebcaf58ab289e7ded07170a3a5123fbc568747c1bd19658ca89617f3a6e3a668355f8598d35b8c9ceb32a41b13ebf4bd426e6f50bc5b647c5abc991052fa9b8cf6e32f6d2d8fe6be6c7270ad5a7372529579550121d38ba868a65d4ce861563dd2986d3743ff9be24c71e308d7920842069357f34149ea1c685efd104bb5d33545c169e1dcf82e043bf48c72b5da09adff405ebf61e22c2bd5646beef3bd59b04908ca8d157d52844b48110b0d684a288753f214805df9619b0887e9ea3ae0f0b56ec9fd104ba0442eb482da78270cfd3bfcc65a298d5c3afa5ce0e7d52fcf0d025904dd8729025dc137b0d62f47d65d81c851a6d95d9f53f0fa80eaa307a028d3fc3dd6c8bcff24418ccb301fd6c77a0c90c057ad58e6be97ef0b68edf7d6bacf3e0de9209a1a62f4e1a3e72a1861e6de4d2a5cb076983ff8fad204890c531b6599b995c7ad9151d17d60cc0348d151d1a28cca1d96284886393a25e9aa59e7d253f54a1973519a955fcd479393bd74820345521d657a1086277fe9ea187de7b8cb370687184717c46ff6ceff33e008cbc6e4b9bbf2b89a433c1e77db763a9f32e8a01ebabb1064ef7c175f9ad257a22f258f00329dc20786a5314efc822c5fa758d7b4fe9e07511bac7e0a7133f4561362b57eb40e06b485a19d8ae700606a026418858e3f7a08c41ce202dc6c8039144737863543e87de39a7bac6d28b2093507903a0b139b1653e9c5dfd996660fd100d99d357ad8388f797eca09c7f88dc693d343e4832a79163ef078d0931abad5c0b00bb093d4a200a167585704436d5da0491c18928841501502d56b72413094cfe22e9da35e1880022702e08de16839e6fed3dcc0b1168493b91bd86a85c9fcddd855761727c8a636160edd641b56a601c1d004f22c42a54815f3a1101cd0e729106ead29b856707e621b3a9f699804f0c89c889953b281dba0d1741c4fcaf944e11b61e63db06699269d6cd1cd28768633e60596db6ffdfceb8cf9b77d41856cd185b5958dff855b67f39c2a37aa1f5dcc1b656a62afe034f304b51f94f3847ce73e53aefdaf304ab1fc724e6bac7529dec5afefbc800d2fb054a390befba4ce18cfb2ef5c75cac8f856fbf88ebadbfdceaaabd4a6a3fbb17d72baa8090b464ba60dd6902a404e65d676ad00e0447d819e2be19d7e8dad26150525a06a0f8a04a6b7c2e116e8884ee923f471569bec3af4210115e090026c80b84437792ea12fe29f5f08d16ff74d6defa5f372f3737054557ca79d0531185d17f990803b210fe26851cec60832841ce3c690ac4f9c7c53ea88d173a2b8ff53a47164af35b16b6ef25b7a003d93bae123d64443223c686a95903cba6cbddc5cc702c277110591560307f479b1d1a32bb0c9170ef23179ab75439ef834b164c4a3e71c9d71854e65e99a3c85c9489593508a76815b14bdf8a7da4bcd64eec94baa08da4dfef88be94d92b46e8e0a7d3e9c60a598bc200ed34fea73b8fbca9957de4006b07e8625907fc6e12d917f745f0b5c7d1e22dac1defa13a89195dcd0987c097ad25c919239c28092c3078d0e355006ea8c8f8ef617e79570655e847d76e148eaacd75c0906ad5b783d3e0fff3636fcb6504f508ea7b82145096461c958fa71f2560aa4b6fab13a78081007a8e6fb42f634078f08c1985310c978b04dcfa0105df593c0cdb8b42af2ad0e59cdc0f254a711f0ebe9a15308a5bc26846c0b2db2468b54e27846870743c22918008fb2fe0643789b461058b2c043186e24e777685b218f9150c6e962914780718306a47a7f0622762d47b1c20ccf1386adef216ca3b0efc12902f7ae6bb851cd3acb66bdd538eab75b3061232f7771c7c0e3feed3002f03d49df8c8d3b8f0714ae5a4317e44621f3d775703df6cfeb0865f1d81a8bc6eab1a8e17e41148bd336c073379a2043ab60cbc138dcc1b9890a2a8f148c156fff54d9ebbd20cc0db6804a99af16d226eda1b67bb106a7afaadedbaac017405d927bc1bd1e0927d4b80387554843852fb7e9d8504e2dd3e30794d3cb117c914f97b2e0bf850115a8fe67383207ca6bdb9b615a0146cebd20b6f3ffa016b0f7789350ce0c407012dd45eac9f456d4ba8e68497e17e17d1288ddc8a501c52b62a2849906b0dd84fff8e73959c39a197e7042d3870b846e056498237d5227bd2bcb6c31f7f460070e5195f31263b8348c209b497fee87ff259691f38516a8d9d0b26a88bcb0e937530d6b7c526d8457208f586958dcbbff089d30c39e13890c23def6f82009ce4685ba4dbf306a62e56cd3381ae14a66282f0816cd57f7e53965073f858bf7bd898cfd29215c4f19d6454026566f0b25d0c75e9aceac85c1daba9996a708c211a28f23a6b2962327edff83aec9df61225cb6248ffc1dc8c394444afb8b25283bc121b69c09d4e0c5838b588fb7fa1ff8e0bdd641451135951430fe6429e4005dfd8be2e18ed985d6fbc9b2759504d1c54614bcef1bd44c1ae4b556adbfc026b22575b35fba80ba56a49b96ae09031247e987f06056ecd3020efd28956757459f5168c5843d86f02e5648423b5bb61987a9d9229c77c0ec9b968cb90825c42a679076bcb84b1a2b7d77820eb1568f837852b511fe2c72f4eb7cb06a031d88366d610860a6ff544e1ffaf9469443f78b5dbd7ca90b81e9ba714aed374de0a682782ee8c7c995270b3338306b7ddf249122c36e2fc5b50054ef9440be7d56803eaf291f126527f3c15155219021a1509c59a2e5ade4f16ede6653d1f96c46a41c8064f99a4608940c1b3505c9caa59faf1384fb6e625d3526f254dc824cd6d12d60f4cdfe6188a8f3baa70c204dc136e9273a433fe9c4c3228df4059d9b2c5342b6d2158c103f80410ac69de72745900a1ce7b405e940f076d1a3c79cf0ef5c0487abc3e09a53801ca3b9826f60229e3db77af2cf7ff96d6659f799ecb1ae4730fc800a6de542022f4ffb85c17bf5e49b9016cafab39911754fd093e1d53e3af7574b57353df1b22a9d82057067e82cb043a434877a201c45d915c5802a48cf2023b621b1602b4905a4d139473d23ea93e56f8f7faa8a6765f0964848144464384e8785801d8724eea1f438a67d462531196749ce9bfdb8271f01e8a197ec9f3d5018109a7934a1f96a66bf0ac94fb6fa37d160280b0dc08243fe533d05ef93fd8140242765ca3824ecd2ff2e35ff6d64160e4a64020a21ae6e2a4e5f4fe231f2d221f69db3d5c327777ce7363fa9fbef01da01723cb77c462471c0499d85c98a8a2279ab3d1da223168aa624388948817b70061060d339452452ea051695cac7be79d7a85b662b1b788d1a130d5078c32622a6503c284ac0b90d5a6aba42cdf230ab44917bb4258704d16e0ac85e30efaec82b8e4cbd654db059b959cf5e1d9b6d237172a5460c908d0a3734fc0e0108782be6cfd58b75b6bfef91e006ff2b035bbf52acbdec3d6856d8fe0ea8038818a0ba89ed62449fe58f543355c37f15d8591a8fd8f38ae971e08a69e099a35e6b7d607ccf4ef300793cb1b8e5fb32f004a404b702f3b8495a01d113a1bb8327e8d56836fa91b02e1e92063fe258bbc71a73b02889f902e32b223ad1fe4e4453b2c4916551473dea9843ae59e364134de0adcaa58920fbcf3137774b8c62aa315a850e2b125bc031f86241aa4f47efcd5a8cf126a5bccc576c7041e635bad847d72ef5c4be36a5e8e266a18b5b34179acb4c95e01f9390fbccab87e1f8346d041ed0c3ecc5f27bedc55140b0c97e6a15edf896d78b2374e320200a47da0a9aee3b66e03ec8ba78bc585b85b7aa5be68de144d2dc31dc79e199e21642e1ddc9e3de34c60544b136f7e3c5c2661339ad8ee6e204b512cfacb5b6aae5c1880aa2e3d47f6bff1839d5ce1098444af69b3017d6c5a0a289916173c34595f89b32bee3c5c8c20ecf369e95ae6437dac7b09719284bbeb91fa12dd1901335f3647d67cc68da251cad0d2f06bd2d37fabe72acd0f8ce1e74aabd225e34b3fe50c8745b08ade0fa2afebb01aae882831d182e7670d39993f4e00101d84fd35b1ad15c3ff45324dce23761c67da76dc76bb99e570bb4e731b477d9c8c0d73b6e84a5a7a8b4a2dbf23715c50ee6226e3e931e32071451d49245b01eafd713effd6760c8746777b9e15bd23b9d7712e51bf5a54f0630621aa830206b46d81d543ec9eca824520453abcf635537ece9663e5f4fe3e82515cd52e9f12ac1205943c2992cd77097a895cf815806b80e9011894087b1502cc3078793ed5806bc54cb61b0113b198f2f1d5f6ff87b7a283e308999be6319b63128dbb8e56b3f7ec6b54e25c8e1c7186923c5bfc0c36f36afcb4198d79b366fc5b957e365dfc4fb03d8fb26ce43651f57ecef5e38b388ac7992fb6176d90bdb33f461a0b27bc9268fa3103137750c6ed4a76b2428912193e4897f269703fea5ebf7a3cb05be0bdc444a5a3937a9adfcb01149790e9c3314610e94f11406a748848be652cf1cb46c1e67452642076684999233871b6cfdc69ba02d24ba3366538a9a44cc052f50e9e825b6457ae7586a5f554c1275cef77b0fab5a0ebe26eae47ded3099c8562aaf56a78b78db4f231caf74ace5317833be84d2aa16eccfa1749328d2e73eafb4f815d6490c3dee3d5d8c37e87321ad9045587fa1eec21f43d3f9488400ac39eb5803921671a6e224c1e67c7b3759f61ec257917bf61f8e643e85fa05e199dcf1f76a043fdda4d19068c4326cc71b464d667d752143964bee6af13114fd04690b3a5d572e3a209565559698a0a745adc3a327f5b4de68d39184c0fbe331d0800b406061199a31d95fb11699a41a7d43a256ea8b499b9015574b3944c48008a9799186dac7a6b2f905b288463231d38112e94508ad68cd76e355482d2409b1141604c92995afad1c0bda95e07b0a97d30bcf61371a01b8042de20287f2cb91628bf2e6c3a3c3a4e15c2d6c9acddb05d26460baf0c9e68daf4c29027a63df9b6f8d80cda300f4450255427c2d26785bef675e1fbae1971b0518617da8c0008e3d7e47f59122f9adba2fa2973819e9e44300cf5b9d28636a42bf26202cffe9026410b326a0bc8dcb4c07ae1bf5e329b7264860f55dea096b0272387ab996f9f2da0b305ee727417574f50630ac448fde7659f71d6284070de4d261c4174e7b25d390f77a040b04f0904df12e02692c8cacc0457e716a4a4d6299a3b991806de68ccec0206435309b6c326e6683b22c52dfb8149608e043f6e9b4cf5a6a1876a732ffc58a615208d17a3bf3dee7b5671951610ee50aa1041e2f2c325771a8013dd2559724452b59d7f3411b1668d5dd8b73587909ec5332f8a4bf57d3bfc19ebb663b7044c50bd5f32b82798c664323be378edadf27858e5c47ed5e76b276bd259332d2bf641495b189b9bd0cc56a691da8d549af903fe3882070adb5437e63f6e1308e9c0b6070a4f73af4e98a7018cca05c0ec7bceb565d281f832832daa84c2d4b4943bbd02b6d844ddb8e96a0c357bd8d7f1f4df515080edfafd04f17c4ec37f5581e5c6b791f3803ab88eb0ed816fb179b14be0e290c2c7a0e85c842c831693fc4024167900da8ca059f625f15f1373dbe9370b2d3605a4648c449d4084b8e17ccb5538f90be20f85a7c89c9c7c7aa4465bc52d9e223fdefb62a22e16e3378d8dc7fbee462c2fe7324137e9468717d996b254054c9cc90ac46cba1ce9b01909e9b5c652466bcf1bfa623cd10d7d666714939cbaedd05bca1ae39d2d8b871ee510191eea2df5c595bbf5e1019adfe840700205e925a3f58f931e5ea9f44240cb427015c0d44e07d27a0c457223843603980f8d12e86b2f8b51a638ec324ae7c1cc664fdff8280a2a5a3b55e26779fe86a3dc42f3d0752ea214ca60202e387d17fe0c8d09f2f0f1556e138d7ebeb27e2e4d6e7316a983e2fbb2734ba4fa081271d3db566dfb9fa5c8199fe4fa172e4ccfa1eb68d101882f5907041609b25b0d35dd23b0358cd405c5bdc04be6a5f83e0b93a7fe510893aa12a848cf7f7c57fb60501fb97a39a0aed4d88cb2dc00070103817f48ad95602e655e4d0d44a415672b3bdfb3c3fbf3eeeabbf5bf78f345cd9538a7c0ceb26fdeb1f208e125dba6005c58ed36f20464a9f73ae0717a3d8d3819fca385e4af6f80806ac0f044bbc808a05c57fe49c4adc3de860231424bce12046c876dcf745a6abc0e9c03a087dadda837a58ed7a214695beb999860cab8e6082169c7f641b350e6438d50458d9a39013b938ab394adc03b79b8ef97702059e64c16714042009c640968063970e3fb85cad2ff6f345ac8e6d0eb47ca246b5df934492cc85a57803530b2ef766d9f416358e891537c010ed9e96e8ae87b415b7c62dcd2f598625a7a36820edb43dc355285587562bad08aa1154f175f95aa0b12a32f46f971dc1dfe00de101e405ffbb390adc1f69150c960bb7572917b30b73f5f6f18d34c810fed12d3622c69300d91ef8bd41697e8e76d9beffbf15222edcb922d639ebd144712d6ae7274d67a61bbe2ea258637845c7c17e04ee31219eadbc8a283c79a8e15b259e63cfe9d8c1f58639e819c2e9d0df69fd2cae6739d8674919b656a734d15fb42928507cc09a6e5550fdeca4426cc9852be7f3b09e3f36137557bcb658cfbee7bb5c1b39a241e572c7693d6daf0819d15346acce02c85ab23d256bea97feef9e995f61aba53ad9fccd54440b374b00a1a8562e0f0a3046435c1734fc71409eba6d8398205362acff8f5b943e69678f21068f72756666322c5edfdaa6b704e517493512b524e741884dd1c21bdb07968f6ff9930e8b613c0ea557b126064de20e87cbca39941ad89cda6d0210e43db655518cb6ae4704909bdbaa23117aaa824d586cfb3f950ec05b65876a6e47c2ba9dfe202289a22a31c81189d1e15b74c9fd0c7d7b63fe33b6e646f6bc982e7aa3b4476fdf5bc35b3c5bc2ad94b3da90cc2b7c661520562daf0bc1671e77ad86b4184d97aa7504da786cdcecdf1609a780d24558cd02874c3100b0316f0082086008c3b2f24b82b828018aa3c0fdf971e298a5e93a7ca27b1189ff20a638489a4d1b3484a663e28d000f9b3050d5f38447ace7c9caf50c87019d3604fa1f13a0a1c6282cbf527f1f9b81e99e1144f2e979afc011d5818d42f20ec009beac7e6dff00d0d02b37c42fdbe51c626532974965629bb524dba0e145362c9e708a0828b9d9e1beda8b7974c2200720d1f2dc0d79b9635ff58484ea92d3dfe12635a5b1db73ae37097472ed0ec97a7dfd404e50d5e30fb01faccb1945e5c72104e4f5ec486a13ef94bd4af46464ab064ca6790b561460b77d491666c16fd6dde829725bde6cede895dd3a6d2d89678eb61d6745f6caee4bbc79da0d82bce4a40c2c1f848bf8cd6439ebe552907694210a6ce2a90345edc060bf5305589e7a1268f85afadc07a74e39d13ed806c1c980693ed2232d226991cff7ac555f20fde22da84f24c095b8a8a4a8ebf0420adf1213bb8e53a3c2f4c316503b8f812545e5d98df522ce7370f2db04f56f9780f5359f80be1f5b8e5bf34b5d873e3e201318f2d44bd71ae04466663be46252129341bcd61223456440c269a3c652da4953ee33762e2622c9eb3c22ebab14918f46a20be55d635c5f8c32edc37b4f0ef3cf55ed3da210c66190974548e81510c247afde322072b9e3bc4578cad29d88fae32b6dbb495e2ef9b728bffce48a83758e94b3ea5ec800c71d1c3e8cc67948587aa764a63f784198d90cd473be8bc3dccbc79b50a5fcf174d5f209ad48192e5ff1d775fb7ab1df158fa8c2d610a04c0e8e46ee37b62b367e685b9d5539552516cc1ea13d3cd0fd1739f50cea2ec82724707ea85b8fb5256e8d26a768d912f3ad3b655317b2fd8673119446204893c8d10ab106a40a417ff488fb06288ee9a6b4ef1914eb1630642a8080bd9daf0fd4c3635aa816cf05bad3ee3fbe763799ce3338ba334457bf6b6a224d7d2c4f87a7233e279cac253b134746b6d6f3f5862fdd88ed7ef10797d5e0b63271d9ee2f008117919494fb8c63e18038270b1e579a256008ba67e633dc9f884b1d53cd66cd42ef8040c35669d9c46eda6e76183059de0114ad4d6922e26f471cc30b64e7728d7ac9d9d9849efd0f3b26d372216b7f7381d1de57f492f7b05c69a286d362043f64e24baec47dcc29c34f7f33c06f75b1425f4b2b11086816b27bbabed9549960afa1ea8d12bba2cf2f7740bc56b40631142b3be7d4fccf21ff042b09d2d7601cba8d4539d3f3cf6c14b6ef9a7267f6f13656a09e3f1a711d8e77a7efb36cf18c438fc41380a150188df80721a709b87e6043d0dad2be5a10d17a4afcccf9637d670c6684929bbeba0a636cc02ee4254b479f5de3138ff88d67e3cbb902a50b3d2d4e59a2098dbb574377cd4cdb491aa6527128ca02a0170b30a8ec8e01fefd4ee48e7211391cffa43ce186186844d293c3394ce32cfe887270ba94f228fd4b09d76b0c2e8df3a17f27186c069fea0998c6353ff2a174090f20722d16f3effa0d7be0eb6fb47b0aa83dbe191a1d4d589a27fa2e682df24ac4dc6473acc2ba9ea871eb2f4188ecc609b5c609a6f1235dcde88c30158cf7d665d2bb67107b56eb456ae9d89478896804320901fe6c1782ca0082d8c12bb13fef0186fd9ad4007c3ad3ff3a5911d7dbe23a24db07992d77f2d00f5d136e555962a25ec9a7454a1d0a2b6179ac504f8688d9214a3fa0b017370d677b55dd8df9a995ac103c53ced2654854401d10b423a65dc9a62cfcff5852e2b96521e6f4219a861215552840ec9371b8d5d5620df9eaa276216c72a52877920e19edab9a9ca86cda80ee68654c5166e35bd14558c2d819edb370481e1755b5f1489972efd8880d229991d41de9c08a0f16945ae9a18630a9c289fdd38767dca532788a2f4a8b747ce000d641d49811823d6d6ab1c1a99ff6d6a9078248e15411b2741d85fc4d96fe660483ad286cd4a4a4c454160149fc5950deb97a3e71f94814326be10db23dfba2f28b6f23ce1ae6dfd8be4e592171a36620fb4f764a64d25f33d5676656aaf4397f42abbaebe2c314989697d293b0043c9040033f589a639751fc10e6c52a30fd5c430d1b980c882e212ec08cc884809fe54d9cf784102c6494fffa04d94d679ec5668821f6358378a65f4c2a618333769b80ab0b6773110e67d3dbd7dcd1992b9d68fb2933ce18e182af519eddc322a38baacfd56cb5a20a7aff3b08b1a7ac8255df02d5b098b1a666ba08891196e4148792b672795520a67c1b64554f07336310e022c4cd25fa8b91a67884c64edd3ec5682d407bc509d2545c351ce4dbcd75eba0db830c74dd3f6cc62da9af59514ea4ce6d9b7a53c02a60800c0503f2e15e81978d8d44d76e0939d6cbb0f729cf98d195a07b7ce53349076c73e8ade0af187ab1fe73ff4790271814d0e2ba76e46e0ef956092fd22a038f7e659239f41d0fd5859b76be498f84bbb7b8009b3b21a5e64b19e221710c529a162d81666ebe8588e69fb40bf277c87e1ae3014893cdafaa0551d04b285dffa1802470ad3830e3d07dd6732747ec666eae59fac78fa8a29a6e4eb7c006d07dd9b41a982d9b1c6b302637b7955070031c5e171e97d3814c886628d167420ee5465bf4c52c85eb002f441e258c7518c5dc39d8de1671081335b9aecedf74141968b6c38cd39e2d1ccb46484911c4cc5c7e9e4aceed48dcdb1ec3c21cc783bc040eefc7b4e77d5c51cda2f24d0fd491447669378469d1162615d762e9ea2a81cbdc0319850a565fa3616d27a57322c7587342908dc6da12b5f54026bfd6f3183c82d117198621a94e6a4e525228d6a2a4535b80f6c4c645d9381daca64d760005b31c2dec4e1731ce11dd71320827bbc6389b6a28bdd09446db49b3af1aac15fff8ac2f08281e0cd720bc3b2e38376ee01fd37758ddd9ea74014298a2b7fe086c9981c2999440c67e69be62ec000287515ad953d1deb1d72746f4294f1df785c041d6c9f21ec1242d019d92a79f5dc8ac575867b1a61f1503e3525e9df015e7adc094087b1118c189036bd0e7079801637c11409d4e53dc0880f9d44bb851e19d7047f05ce4f71341af43db4e53eac1e664511560b0cc887a14d79e273124e4e5431c50daabdf506d44acf5ddc4f4365228d3af6d3c20dee20f583c68e4d91beec6c48c1df3cb843cfbb322a6f375e4ac09fff92dd3095490f4d04ccbf61ba92d68800dff32f424a949ad5129987a4606297b1fa6de7d211956eb6d45c5c6f9d171710a45ac5ffa00afbd0e4adb9cbd5e58a343d76e9c3d0fe031ec36fb9af08a5d7c8145e9ca54df2d69ef152f3eeb4924626044030e45b06a374cd54c79e041b7e84d942e71d8b451aa739683c2a817cd8ea83a5e717a1845524104bf958ef65e807f9052de41e7060801b7d52a94f0ee04130f9abf12fb012657655bc2bae979d2dd009893fb195a8e88507e2d3cb8d3190741e125c3f82174d1d38b91adfabab0812721209b9d107c7f441082df0cf8c4b8632bf66dc18ab0a46df041a2ef9c55896a4072a1fc8323e45c52df25aec0aac9c520056460ab0c370d8594a9ca9182e3c0d9725199fc439f361e2ea8f4adcaaeaa81f7c4aaf25891fef0c760ebe06c99ef8342b865ecab5132cbea6cad177bee8cb8027db38158546c5b4a7c3960c7a503671d2bf72982814cb152dfeba15b10dcddcb3d348ea0d2aeec880ae16c067f68fbed4dd5b227de1e719756316fa432f91dd170c13d87b81a5cfac5cc5ca4c5e79e312348ec49d1e5bc843a21cbd4e1b6f06732123b922cb8a234904b459788bf5626e1bea6315e556386484231a8d3ce1de1e4e190a0d9754c385be082c51a65034d6ba19ed21a105bca423c2d0e009af1cb7a711d5f847ba4f5639ffad2c6e95067abe0bcae81a27c3b79c66c5924210ca6aa8cc9e4d432ae25e6d316ef12dbd78bb891ee838c814e1eaff065e1598289e96be27ded9961aad0bec02d6496756f2f6071c3d7b6c6a803be07da37ca09bad0a01d450d360cff7c713e91c06a4c4644d36c5f5db58f6e657974e7309b547c0711e4da73e527d9500f1a69e0b3c96e14359a39ce1148700e9e9882ed4f2ec6eb0686f5c0187128c852b604edd002cbf71d3e13081756c665f0f91e7cdae2aa9c53fbc8a1b68c8f9953d433c5f4675d35a6b1f12b95c268862a26d9460383a499e5ef3069d884c099e8f3f853fc268dc2560904e1321043a634472d689d9967feb7fae2dfb83ab2c54d192e8a5a9463d8dcf4acae9fc8ee2537322163c83cf08c5d4f2b9239f49dd7b7cd9efcc60f60db0761172e88f85a724881708b84129c1306cdcc41ef1cc44633f79f6d95305a3d57a73db3c80e5622423fce6727b3281bc0a5c4d90b42e5f77f5a1af859e4d7ee11b0f1b39872b7da86595181569b76569431e82c6e7d727051eb9bbd41e951ddf7f8e94652d6aa058f0243834152c0cd41e533dd4c2577ecadcadac8862d3f09e603836ff78a33dfc6412e55d895ea7c093ba7be1965941404a0106c4270ef9c8a0e1d8bc69e1b41b9e76fd8480ff87b3f5b0f8aae9894ff56380c68eb0ba2ad6b0858f3fc8c4756a86c8e42407a5254d82af82c768a51482320f87c8be3b7e104ea58703c4f989d8f722d73b627e98fa82713fa3f313712380b4036f8b5c1c83105ce8510558d108019d3ae7d4142804112f44bf920c9027412586558438587df40399b06c46aff7f9e8006cd1fef5b4b0b110917966b8740e02cdc3ba466f9b4e854bf51db3ce5aa99a61c35ac578890d67bfdb5ce64b824b0cb42dbb54bde47be20656055ea3a7a9c60338691b6b869d3c9d52901498fdeab7eb08df0c8f08c116572048deb9e9b71326adc3ddf0152c06f6211f3dc0d97e00570846247c78a01662f22feadd831da4d529d83a48bbdc20b0143011b588b1da6465a6f7a588c49d63f471af6b8c154126af8cd3e424df5affaec33a4cc32ef53009dbcd1013ed73fe4048fb6ea251d711e06a0379824bed104557918c90566437b0c4f85546219cdbc0e3402713bb90dd5d7a2e62d30b7a854779a74da269cf0c3951f5f2772428d37deb44c50797ac159bfee1174cec664b73026be37b2bed9e1b339df2575406432b957e426f5eeda5538d28ec2d5220b25c9f06f764358d1293aaeef851cebe8be503a57a19d5117ae080c8b962185d05ca3413c3ded5ed67247c9b64dee12196f33056977eb18c5ab325eaee15c660798cb949f7cb8768c4764a5ecf98245c544a19eab2681d8b120731aa3c8ea175db70030275068ed4df8a26c6211ee68aa86c7230cb9b03f553b4b57ac157e87850a158a592d968b7472b06e7b6548b841c24169b6d8085bc3840c2e6f048ee02342cf9328a17c283b5d8cfc893f940b9b12b4e674bdcb5668ccf9c8238847ca3ae65cfa8272c98144504c64c43ec684d0272d164e60c851911b4e78d100abddc13cd7113bfdb64b6ba7876de4414d57483ab41af0c5079774995970bffe2e7f197b3001e0e794772c32c8894c007f6ef8a8db80008e492082cafd31092a23b3c70c6bf1198260aae24b0000dd58784e81ebefc10aea5451b1dcd91e8fd345d181eb94ad24a98018f8021700911ec5bec851bf8f5362f2a915aae25795cd80d7c5e85ce4c51e82cb76f72006ba487fc3cbb5790f457e724f7e605f0b6fbdc189b759347abe52becae47cade498c42d9f8c44332a3f08bf05d89cd30cea525599a796522a1ab841bb5e7f0fc6cfaacf8b7c5d9b79f24b6aa1bb4f090d3808fdf0fa2247dd14ec97cfbfcfd2f7697126c6a84a2f20782324ba694bc595c760ac5d066f9966d2911a0b9f5142182570dec06590ab8f9d1de44d929c287c73228865b1ecbee1d8c662cbeda52bb05ff11c738b421e1048bd6a25367882753c71ef9de759504c2c16d9c4f470aa678ab7e86e98262fd6a2f32ab6f599d9e08968a00302f6b35d18778533a82ebdcb5bf43d71c95a67423077046ddc32d850949cee9c03cf06860e75c6bd3b0ca5fc2c65c031b1c50ee1e3885f37d48ad988b164853528970f3db4565a150dd5d7dcbf8541a934b89ae5b06b92af86d8783ff474ef9c13b8d4684e5a37a6675823b801d346341ad471c6ccb936eb6506eb7e71a860b3a8dc76efa6d5db1ab5e404920cf1243058abe211f94c123238d05f5a838c72bb2c5bbdbb72c4201c0e0eb9b35038b9e989fead6ba1b9c911768fab0aa180eece4a4aba7da92820eb4d6af3bd5e2eaf2efaffa5abf2485fb272c80c09e1d6ee0451b6c0545df4ee42d62b6f1eeaccdd045654360d3d27fa00f356fb09c5237e138f6113e9eeff1c196c2ae203196a07a834b75802c921f43e207f8665c82dd09ab42b82f0c49f80ad20ed44d12700ceccf67d9b9b5f6fcfcccac904d8ba6205012fb2c7940800972bc4acd0c831e0889fc2eec05141c284a63775c552526bf67ede0f86a31fc24caa7336e2a594c92f3cb37d91d7f75bd487524b3a9be344adb076d177a5b4175f10a12fac385a29197b47dcb29df6caab1947d82709e8aa8a255088f1b4486be9c1803bcfdf5082582ab4e7c76d16d8666e9e569d6a35a8985ce20d8f7042a414823ea7e21ce871fd5e30c1f121627e966d609b487ba3bd5d28ad94804f10f7d590fb3b1598bb3f2ab1950bab7f41a4abd55024cba9133387f2042ab26a074b40b9d529d8086de5468f4d22066dc5efa59072b8460ec025179912f7b7edb7c84a8ad4a4b79bad3f8fd83fe840c70f8bc15aa23087491671993d069478c89d8183123e2c7016d7c39de1dff9209f889172f0ae78a1f963190b4e66452ba893dd9b44be7777c536dcc8681d7b69238874dd15a478d0644e87e7be9a19dbb89dd850a8eecdb86f39addffca7418b445ead342cd34b4864e3b84adbba5178e7de7bd9160d20cd320dfc361a621670998629674632679ead157d8df8f91e520a6030180389b758321f02e96545d4f5f2a48379460edfabe1e039ca84671923646f360530eb75043bc472da4182044e7a0b35eb520f777477167be08fe6393cc684a4b159c60f5e3e8db8be29653f8440a65241eb7e3d073ac88b4a93426ed33cc3bc66d052416a5149a09b17ec49d7b006ebeb8954fa93e57480da97cb4c9e705d52d51e43c9212b9f9e014cf5bbe36d4ad22125a1a64d44b53cdf262ec965f75096cf14e4992a259e9f067c9d75a2669a28ad9d16511166f94bbb295a14dfcee244abfbab1827d723e435c2659528fd8a56f4885b67ed98d1342a1e5062d942b84189b6ecc992877f77f299282690dde287be9572c4a1f4f904340cc795148af4de37ab73cfa181e83f6adc53b68dc140e78d118a287bb03261e36b854b02b72c40c76cf7ca08e9dc23a99e6b9156d495340e38567854467eafa6c45d058516c9349d3ff013a23dcd0f2adf54993bb22bb3ada54c752e77503f14908299c29f22ef954becd77c39e40f91c985b73854bdb62345109d40ceaf430c409aa5ed41d082343432bda9f19c02fe2b15591f3501cd2deab30960820bac495f78a280f6f04b1fc6601fb3e9368d681fab9e72217ec62c95964bada63f0317e3108816276f00d4f7c088a94d9d0e4511cde4728b1a428bd9c3e598f39ac1da919530ec7050114e6a8a904da4dc4b2a6be8465532760b4500d2f24046d563396e4d4da6575420c4ad3b1c0d6fbf241d31ee8b34e5b31173fc5f9d9b87f2037f82a7a3e5d07d02962cdf72f68abc752bb2044fc376676a1107221d24e70a6fc2558b7f0f644ee99c30310168959160e88526cb01e2101edde4e1a7d471b803105ea92ac9941bc2928c4ef31b2e0c8bd524c0154ab3cc112f070999114c60c43dd1e3534c8680fe72d3ee61a1fe3fb9a4e1eeb4708278fb4ac09eb00c46e51d6309b55a78d4ffe2ce08beeb0f673afbbfe6c79f91f03fca4bedfa79867b77420c711169d42f76ce95248908b2b7d75a6b3538d0ff52e0be724c1827dcdda4e853724a21c67e9a6619f712e0c89ac887011773dd5263b3aae40340cec04e267ed3110a5700f5b3068fa451240cd83380f35c67e927535da2cd790b0760d41676b73fb74b9904e84b978282cf16797acf4b3e707fb0c91463c153a6b9c15ac01bfea94c2fcfa915239e6d61660613bd6943bf460ffc6807f78b9962a68eb2f2703ab60bf748aa94ad53524cd76a062e782e17adb08c542890131908c37dc761ccbe26fdd931173291129061dc82ce72b1428bb7d27d713a42590e24b12a5b24de8648f9b757c1301038e093c4d633e2655c70a62ddd7aaee004409481a646fee4a07f01262461f722f1c7e5e9213d1119c575a9263b128d6ab542598475f84b188f6ebea2c67342d2572d1eaeb9a8a3a1192fd60be1e3b619b5a5d31284b16c1df96f2335aa766ebd0253025ecf10affdbc333783c05fc72d94acc66995aab583526a7f01640749c5ff449ec91eb3c462abc14b5d8554bf7d711594e46a52219c3a98333168da9e4d72d0b8b01ebda5a1c862cabf3c361d7e1c68f678947ff961ea111cdba3a47b293c0aa1f3f380535e202bd744b9174fe44d3c26b15298a111917de069a586bd35f4f01b96db7366d1db740719fe2cf6f869346ea08d69f106624b6dbdccd580f1c547ef9d3f67b2b58652aefa7d467c615befa835b35494ede8cf1471a83948857cd1a297ee8477060cd94762a25643aabd722965e549a43e65e783994f5c621b7e4e5f969248357dddbaab55442f2ae4c1cc1cb601dc28c0f830196101b95d50e53910c69459e28b6dbee899c70a5927d626a6e98a5f6f45b5cf436c35ac06c36433ed9027581eac3d70c9c399050d826a0732399479c6b8c21e4d6232b508ab2561e6a8c32d3089a854d4f03440b9ed8bea05831a3aa2fd4a11c08bcb980eae98d979031c86ea0500f0570d39c79ed532b2c16b7cd7faf5a648b1d6438e4623c5455e172cf716abc9af2fcc06eb0f4995af1a26430d832efd030170d9d288422a44f286cd7f30de117cc17a1f6050a85755f6cdd491125ae7a236ecfc33293ca6906dc495aef080e3722e4e51db69f4434b6c7ab58a431eff2b08f05626f9f53adfba7319c8888cc6c29c821dadf6927db0d8c1528e14a118ae7e824414f757f4d05cfcc1ae0d14c9474a54615dd1b83a15540b3935cb2cf63c31ad80046303336dfd8c029d4796145e593f3be1908167d672217b977a85d61c272fc4f9f5b852d384bf84425c02ae46efcfc91355f7505f6f1e39c11ae53caf74b96cea99cec417cf85db704c8e98ffc2401cb532e8a51717ed62dc8046f7f47de29903f330cb0a78d2a2ae3dcb6d44e1989a22567055775487a0228c7104c832d6dcff0992a76e1de2dea54ade368b6bb9070c831b480a03b4ae03aa8a92805a30923a4a07c266a9d1d48d2f32cfd10bce09c13a3efb635496999d64246f382f07946e4ab130ce9d9c1245051ed259f461980b1440b0bb3be0f1a800f5f9ec1b8ee519bc26f0cd3e0a466d168db55f1242c8de5b6e29654a2905dc07d107e4079a03667b316643d08f5e8d7f04c6f3c71b6ec118c3e41947430c6192f7a63d5742b18ffb23862b508cddd78394446a58f7ab9c2ed4bf1f004ae83e9f80b0e49ed61874bfb5bd7f8f0b3deb83ab7f90dde1f7d3fb6651fdc436a4a0b1867f0196677bbcc66f14d56d5afe27af614e09d59effe3519d6784df7f1cff1cfd113899c7c1d1bc089cea6fb8d4b338d4dfe066de863bfd9e7cfab9756d2be7f95eebe89ca9a594520d56831b00e7f8af0e50fd974ff87c543f096075bcb53adee265c9c9aff16b715523a564a30302a279fa40aa9779ee58b283c1b4bd7faa8cad63b1d7bcb3787b21f465be46974495f222f3fef1e536c3b1f8b79ff9d3ccb3b88b61fb19560ca63fbde94f1c0bfbed538fe2580ad83ef52cac8b61fb5411ee58fa78aa3fcaec6040bd0cc7d23415c7d2683896d62d605da80e0828f540320f6402a20fb4fd894b0fb7820c9ee38fe22860f2a496e7782a2985d49ea790aa77b1a4f637f6524866cd186a12b44d92f0d730e95aab470f0d35fcf05516d73099424a21f5ce1a3109aafe292ebd5353fd6f4e4108505b6a9af6bb3e56ab23bb0f7bf8f26773dfc47e4fd28857d9bffdfc909b754ffd74a8c6cfec1a4b52c003a41e6ce857ddd76a8d11f046e886ece790900c3e4b01f2e1b3962584b59d100937c8da37c295657a21cf75ff86d4cf871c6b3b96a95340f6d80bc91efbfd1ba26c87fd0d51b64ee6e96bcf25d8d79e93d89dedb5672206c1f2a85e8b4255dcc6d1f5d6a43da784a2dea43d03f50e6b385e5b4d6b72a34961fdc7442b6d040e3e0ece5f048ee66fb8996771357f8353bdcd69046e5d2c1b1ab4d7bcd0a0a13a7e993a24daba361bb4dfa449250495a705b00bfbad3182ee6f2a2134eddba3aaf1b03adaef498593c6415bb780750101d13c7ca099f7d7fe7ff4ced69ef79cc75fd31e06e7493dd4bec5f2ac530703ed58a68e6512024d9f84e6e19b64ba2433efffe36210ac8655ed595bcd467b198e4f5035f842641e7649a26c9f047b99df3a21f4bd4b92ea581b7d8c636d1d4b01d9631fc3fc547783ff7cacbb218a10fff937c0ad7d7ad358487b95f635b497d19e46fb1aed6d70daba34af3dedb7eedbd3b4f788e8fef755839fbd0cfeae27d86b4f9d67beb6385a37844a897d2262eb5447e8bdbbdbddeddd108d6d7158f66e6c5fadd6c74a87bdc3bf5a7db16234b8cad5aad50c815efc9fa946864f40e0d04f40f6d73b3ea18d027cae43bcd904eff80990fdf55d6293c9e1a774370604433885f243df240e42354e61a5139065ed7b85cfddb209f0893061288cd20b1889029cb383a047d34d8d02f36242788cfe9c695ec06872ea20899584ead6fe125b6a7910c2185534c20ae16f186c16dc856ad01116d9452c043e8db969ceef8751e80aabc7a315d03501360edd8c42d462c623cee98f573077511bcb82c266142426b52430f37752aa5add38ce92557b2df0a048f55feafe5ac17ac71750d48f3661250a29acd0a1458a2eeaf71e0f527c4142181aeb5e9142a946dd2b55bcba6c3b24044b60208131069211105d96c008428a0db60885390ae345fae0bf418c089d79c89388448184422b91dea150240a76a704159bb06554df58dba6b9bbbbbbfba64989adab3564d909836075fcf985c4739c65b852ae5dadac42094dbdd0046593804279eac4fb3f6a4fa4774e3b935ddc12e9be15e6330b628944f5e1cfef449c471e2965894a340ccec340708ef3b09e124c44f5bfc105e54964897e12ca5196ea502413478e791f4e85cfcc3d179a7afa342aa68c708a637f94bb1386d29e13f90065ee5e72f204abe37209890495ea2e9fa8fe5056678608fac9ecdd938cb43f91de913d482103a5eada92eabf1f03e554e84afcae11f16ce27837442ad9d008ed07b9bb4f9e43eb4386c37e6ba1ee1b5575d3ce0c4f17e1547f212c8296b450bbfb4f4c4626a9ca30f6932bb22c2dd0aacb5afd3a69a67e9dd43ae09cfe65aebd589dfe16f36a6ff53e8dc4a5bd2cedf51113506cc0047c1d7169b24493e44b628cba288240b5e1cbfb2d33652720ab77ee54e7b3bb4fee6dd8c66d389b67eef704847b9fbe21c2e3789fb6e1a5cb942a4ee453a04861028a17eba3db584fe8f4292386f35042f9fd3f9a316a3fd14c0e9b4a3dd708837e3449153e4d127da649fa9c27e19d83531856e7786b57ef5c69756c48413f4804abac8f1bac8f0b70f5ef158f2fc12a0e219118f4f3a529b5bbf7695fda1ea7c6ef8e87537aa727563dcf025e592cf8cf9fdd11afce04c75a82e678ef372568c4a2c62b6a090f80cff1de679c8b69cfe35c8433285717d39e0ea784c8eb28f224e85d3a4f743ed6c17d3f55870e205b75b87565bfabc30f89a60e07b14c191d9fbd0ed7a123e3d7c1f9942de374bc0dd91bf10a24eb8a607548f63c7e4f2e64dd10fe5979e4e0f72507e2018150b21310e804022d814110a8bdf625f87231edb52fb1a238f744e7b73d2de0958ca0a4d3417716f41a6b9525aa02ac70755cc71ff1aaa3fbb82b82d51ccfa33be23547099d03a0f3292720ac25688ece99702895338342711e5fc2e9be99d37db346f7d1baa3fb5695848ec8899cc8219118076aaf9f0343e77f9088a877bcdff1cd100bcc028fe096dec9f873703b3a235e5dc767dcd68d49e0e6e3e8e098e3bac3b7eae8bccfb2ce888fd13bee15c1aaff11affe42fbd324f58eebf8790282f3f35404488e4f81ab0e8f777c0a5cbdf7e917582ccc21357e7a1c24da5104ad402c300b091c3c423a75ddcc8ea02ea573283339d0edbf5ee23858060747e020161c1ccc028fe00d0703d0bf3d08dd610f9074cfb95a6d1610426feeaf7b42dddd1eabb3efb9bbbb3bb7daeb02faf343b84167870ee1c464f41740a8028f0aa3c71290a0fef16184533677ff119650ff7dc064e639e7c3495738b567efcc6e7aafe4bdd971e86af882cdddbdc5c1eadd5cbb19ea1021842db07ce8515946d9c24f8db1fb60ada147e5875a7c9c1076dfbe74779f76c7a96bda9cfd49462aeefe081176f7ad2084f0a17bf7ff488650a07ea652f479c861843f218c3395da8a4205d9223fd2a53408218c8f42fda21e729fa9a22087fac915f19f1630d521a89fbfe1cce74cd3b2149c1f3bd47b314666ce344d3b6df053af71964aa5521042f827769fee98e309c8293e8afb5635facfa74f3bd830c6148a937fca4cd996695996650f3ff36afc19040163c68ca9903b99468547b84e54cba0e0fb539f91f8198929a43aba40b269650a2f957fdb13902ccb789be9671ca521cbb2cfbae959cc62f6dfc799a7794c3e0d37c3e5641dcb94bd4fea3df5a9d47fabfaefab4a3bfee99ea57e53dc4c7d0a48aa9bed699feabe9ff3d479f7ad6ae6e31bf741ad9b108312460821848eea298354dd4fed8effeef06fd190931e3f64387a927a1eea8871ad20da8af0877c0628eb5a96416dcc06582316b12d8a58672456d81d611610d0b1e2ffd4e83238a370c326f4cf5904e4f424053fc61863c45041688591fb68c560f711a9a86e08f6f0b713b7d5b9f7dadb2259b7683ae138374317a41ba59bda1c8c1df6dbca9b9eade977378dfff419cbbb15b61220ccd0e9874ea7a1d3d06968f7b5af937f84727ac9b113fef63c78f2dff8143b2b58b80825697bb18bf1e5a37e5ba6015faca038b6d2a307471845bd83fa8875b03d1fe745aadd3275dfdcba8f6addb7cabaefbdd6d7c3c305bd2b85b34d9fd8983163bca8f2a591c8023666cc98a42a53880f7f8f1c8155764362373b13d753cf6481f50e225a53d7c8092f395054173837a0292a869c8882074e4061e4841427a078ceaa565b84ddb0bb7777174ea1fc11a7b9bb7be3c0a9f2cc165537e76ed45c9d9e9387364946082536e1ccfcc6732fc30833a9f58d99d9dcc3c7e7bb973f31b9dca8d8f9f0fa8050e3cd07eeacf4591d3e0d61dba23beceeeeeeeec141c769cf7377779feedd1d9fd014c09d1b1adbc6f5d0513f969752b5b72febc79a6c454a9e4c5b9097895ab665dab699b424d92908949981ee30721014c2eda7c19330942788eb45cf366ea0c2776ce3fafa568312b3dc0ea3c466a66da6132a254fa64d4b5199a8655ba66d9b49cb646c647667684c3172da7f8b498b5b2fe6a8f101fb510f42639abd13d75b1febc3df447b47fb39b5f5e2a36ca82ea776a47a94356a406e35985c2bdd4e7440d58be4397de264242506d51f7af59c67e5a5c287d03b6ff579efc52aed4bdf0412c70e4b04aaf13fbed73bcec4161f5e31c698a28184372958c10152404685464d4851210400528ca2831a7fc608446a07721345118c89611866840ed00b2f320920fc0b21cf591530c13245d00b3a10328a720586bde005946c8915af48f0425575af5041858e2639d8a1036aaa7b858a1e7458a808b345961d7604218b0f57b46cf12920fc1b64a3db0e39c112315e62347901e10a32baec28824e2e3845502c0b0ed09919901003287294e1840e2d9c3c690209127c40675d23274c72888062758d9c085db13584ddfdb57737cfc6baae8e84eddd1dbdbba5d772f7eeee5ee1a8bbbbbbbbdddbdd677b7767eeeeefd07b3565e376984539258661927f6f7ea04cfbff25f438b39869b0a579ce33bf559fa747cb0a505700741523eddaf7a147d3894fa8e5687b914f51a6fd8d1ee8ee4a2eeeeebabbb77bde30f2e73ac0dd85b20474773746087b402fc618238d313a74083f092184d07bea76d12403c4ddd0cb863061b743092726a310134eb8ddc229c484136232a6012726a310326213ca88a511a58c981070ca28c48413a691069c424c382126631a7062320a41a3645b1cacdba17c69dc66446a9639845046c62633079839c6283138f422e28502af75187af40f234ac02a94ff6a22c3d11318e2901143432c5f4db6d486ddc7599af4effaafb2ecc9733e3d3d3f4f2af4ee8e177d603c1417057e3d99455586188a35a17f4b1676017c319173d24c1910e6186a02cb8b0ba433cc50f064c834ac172740bc31b364fe8da2628fbd3c01c1268f016a2401076aa4418dbb33801394589ea618431b74e1c1115c348d94787d592daa943fb9d0aff599867210802a93f0a1cad5ebf57a3581104208af28a2065bf4f00a011a492eb8a542082184b05bcdfc807ead75718b597583c3833b50bf1e70b770a972bb48b9624490521ab14532135572952294a8f261ef4cba7acfc88827557e8fcf0a308c604a952f030d5daa7c0a10f141958fa488335e6182a254f946239032244495cf477ca9728d90a0419546433f54c9453f54a130a9c27ebd5e2f2116c1077438451d4450397160ced9ea9646f403a6c45066d4834cc2cbbc824924013644183cc0253944108070389320f29c050a810b4a606122021786948c8860e2032e90e0b13e65d1ea160e152d41240051139322b49060470bb4b0808a162b24a880ceba57b458519dfcc0835b6120c5171233590ae8f77740772ce89dbfe91dc05240ea51cf825d0ca96e3d67fb7e560c5deb86e85ad30bf137fdc602578601f593932e2014e7798e179f392433a01cc4afa8fd02d6a5753744c13e861c434d188d719d5c2b44fb1f17d609e93f994c26d909d992d0eec7b54dce5d7c6229c05f7b07f807f0d785f8e10cc9557caa03d4efc6cad1529535a0419557ec7034a5ca193056f850032b7050a59c09431f474b962a1fca255a64b66b8ab4b4a00a332a5c2657b22c5d809044338b10e211564510100c4042a80a228482aa586208061c7154c50c983060e85545172360c00892260f584719a3dc2b3f90026ba42baad2a97be50747f47da83a17a42d7d94e5bdbbc6d24134f1ef7d49f5f7253ad0ef71fcbf9a40a9fa9f204b12eede6321dc5ace43c3b62dedf95404c8fc14b8622fb34f812b112cf256de82af89a2a795e9f5e20ebedaf30a8920d13c751f357519e755bcc8ad3816cfe2441116412221fe26def742cd424413a37215ffb3eef388daf3779a77acfba60c751e1aff1923a68c13ca04c74244142a9ddaf482a2caa89a6ff535b89aa5a1c6eecbde48aca86fae339befd3220441e76fea4ff1bbbbbb519d35973d2a4619971845890004da3f7f67688f7fc8fc6dcf34c3add00294e16890400d44ba9ef638e703f4e4e3a93fbd4f9fb814c7f22df529102c497dfcdebe4bfdfcddb4d4776fa9674e3d3c0149d1984040f33e3db7b5d75e888b344d4e3b75dd355435b17f7e0dae865371fdd9c71390d36f274e33714662d53606d11a3bb1a07da4e9788aa491d21e13fc2d16d509487794de486eb5c488da910afa3d0faf87bbeb5134d3a80fac0f67951750d0cf54dd43200597ba57c818aa01a86b24051337b05b3db752515854f937d42b6d1962c9480a23aa967d775f8fda3944a83575ffc45f7dc8d03ba6dfed64686f59e80a5767bbaf067f9fc64ebf2717b67b727aed7d1ac973f827dd9078bb2ff3fd39bd39ae0786eaba4ae770134d9127206d12837e4d5499a877aaf44eef8cd13b5f4f2b89e99d0f12557e72ea2edd7dfc7197ea12db3094407a418d1f6b7026aa7f3cb1b061288154a546d8537aa77b12f49c18eaff3594cadf75807a237552a784424ec55e1ac9959c07be9cc710d31e7f7b3d3f9aa705e85a210829d5f909fdbc16b8154c8054bdfbda4b0f6e99faf4e48887d5fb9c184a450b882d6aa52076231194f41da03b23f515cc7ca0df16f924807b557dd8bb7d8d91a5bab795a2ea5dc5bb266a0f28cb01f5207fb5e73922a0de847ea6128e68bb5011db0e31bab22565250a1259e0ec18909bd93df6f6a2951c56a9c6e701bb5fed807e3d35c6f789cf92b227fe0f2c7e02e26f8c3146b9adde89336812468ddf233636c2127dc529b61d120551108e82202508c9438ff5015b3dd6c7fc7d245e0fc0d81b1880d2605545dd6fc00918781866075833303d605dd6319bfeb3a81105bec1d9f5589d78020b389b131fc5c5162aa7da9cf8262ebee3cc005b55840d7929c308063f3c218aa206318b25a8482b4e20a59432ee30bba316c8e054850ca4f4f0c564115c513f8fc70fb6adae11152f8000b14e0c2a5b761c5159d7888a961d6450898111152a58c0ed8a0eb85851294195a96b44258827b61d92654b982661a6c42ffc36ecf32fcef7b5fdfddbe797923f49ec2ae0cd15d8d581459254cc8b78c59ce32a5064b3ad5c8122a6d5e9dfd599ed417eece14b96cc18f4295c7c1b9899bb21108b7fc46bec3e5f9cf6625b1cb844bf9f93d2cf6b0faaa2e47662179ff5d9a35e7ee4248d31a2663e8bd94cf6524bbd4f4738c3eac6aa06d27c8d0bf1258a66094af3ac8f9c05bcc67a83f5280e4636e2b79b9bb7e1b6ca1bbed141bd0df7fd541b1b1b978adb8a925c11d52f8a8f1889b9b497c45b548faa5145950ae553ea86e25436a050a877543744feac4ef3acc88aac48f337ba6d6fd5f1a0e970bae7cca01f1fc19f93d2d5eadff336e6930a2e040df151ef7cbda4091bc143f0790be42eeca4c25775df4f93aa7ab92d2704ea3c370fc3d02f478d5ff3db1ecbe6b77e4662653d7d3ea2f93929bde176cbeac05d9d9a8ef51f37398246bada3ceb371b6e45bfa036ff511554ddaa3dc8eaa84dc702ab5b1557c37a71e6c05009590f6f3ce4d23b360f9f937a67f5f0b94befd87858e3a1eae1b3d2167fc5dde88c7845d9c8b7516d3866715c6fa0b6dab05e1504f52a5567c43ba87750ac1851a8467d2fe91dd4431b1bab4f81ab0debc6a7c095f53e2dabea59dc0d0ec7b3e178ac6cd4e07a7c54dd8fa882f0551d1fb5076772a0341dfc196e06190ea73df8944b713db89e1f3e2bb420448669e2a3de59b8ed3184ae1612e1b5f1fb7e0afc027c668e0cbaef5d8f1ffcfedd11afdbf524a01ee1f57f38ddddfdc4a6226272dff5fce8a9fc3fd647aa4a77a6964ce8e3aca3687bfc2a1f2c969ed52a95b4645b9c1979aec43e05aeac2714fe9e820cb18057160bfdfdf4736450ee7aba1e1e8f16f7a3bd0470000677187aa77fb99618d4ffc3c1e99d7dff652f8173a61650ed0b6a02ba45f533a1f61f71eea6bdad05f47b6f2b1c5377570c47f81c6177c42b7746648d2f9f65c486c487cf2fb92df2294804d36060a112442da12e162a4e2a15a06a425d23a2312a6c1ea028f08d78758edd11afb033222b7ffc2ef033b3c45ee008a97b609bbdb3fb10426f3a970772ff300eddddc3b6cb03fdb7db5de82c25969bb78038babc775fac3598ea0db6f5411d42081d42082384d03b963783b1b1831a7f4bd9e8c231c6d81dcbbb1450b5bb5d1d6e252db14d4a39b1aeb7d8dce4ddc7a3ba2c0109ba0fdf2174251bdc18639c9ee3261b3ba0fb8fe3f19b33fefc9dbb1b318f99bbb73afc3e0de1dc186334ad8c11b6331a2b19ae8c74ee62bb302e779fa97ad2b638322efc85cbd0979c9379d1e51c6c232ca13b6df0ea786a7733191b8edc6020842ce572df43ec2106a1c619cfce210f107e2ba8a32e96a030ea56170b07803863b5288285280209e682082d588822b6fd5ab5a7eea07eab3a3d9fe6812ac460053af0e009a03126708151f9293311db3a8f0d31bc78b96e80c0882fafe93cb2630991d9cbff7169a9ff71c9fc8f8be67f5c35ffe3aaf13faef9b34b82752c21d8e9b1ff71cdff41fd8f8bfeb854fb356c1851fe1a6ee539fc2a8eeef044d0ef7b5a4bf46bade03960a8899301862754e328e039ccff61e8b7493169b328c5072332e87de2f8092f4c8a5c590f310a5cf98d1059254602d21d921a282863711e5633abe7f7cff95a9784d5affdba66c7ea2459c7ea0e06d38f8b9d393ee238299b016d281ed110d02b0aba566ab0b4c186d04d2f1db65486debb81516a5643affc9ca577160b1050e5e7a3de91a90dd43cdbd1625122665d4322a81f2b0135513f1653f9378d253542f7da801e1461dc8ae1a48c2297e4d6d5fc5bf9bb5bc21c14d4413816255dd4ee987d0ace82b0f44054651af0250b0ff50c0ab6c5f95e66c6b98309bc7081050f30ca1c044168629816b50cce6d5707a3b24b01bec669fe3fae2de3340e72dfaa623854c93d4b4896699cd669ffe3fa71f978111e33664c1a557ed45e58d5225c65f771b5c0ea21a6b49a13db814ac815597fcc3b19b95921376b1684ba452e4924a38922170ea73192f4162f9ab8706801b1f47245a1edb119564071e1604210907200c1745972e160021a2a20726d9ff0996074018d5c12f6419825170ebef3074e90a0b8e012683469cf034010526a810d9e3841113780f2526206563ad0250b145e04135b601973c5920e5828a103970cf8a00653ec808a2cbcf4106d0083194b5c714610b0e440a98bd59204144864f9c1103250e22e38092aa63842e30a125b22171fc8b2022856c045090a601091941031020f50114612537c11b7204207465d682941142330236af14c3063f12848dbde96b66186c24c552b2e44f533a9e8aaeb5ee1010ade7b0b18638c7d02321feeeeaf9b70eaded46d75cf0f9f04ac70f24e021414b926e8d7529240e7784703460535f9d7f261ee568f1eac052697940abfbdce1ef2c3771e96c7a548884108619775939ae4475f94e2d1e1872d55efd29e27ad8e63f11c7fe1ab3c0aaa5fe6a5ba6b9c07e8278fbcc8a33529750ecc450476777721dcdd5ddf2e637717eeeeaebb60dba43182ea1a899952dbc8aaf97f986dd854d8bac40775d59e505d715c65faf74457474afd6e6ee040d7888ba1faad6e5657be2c5502d4bd224650e542a8dad435423aa26ea98fffb73d0579827538c8c7bebb13e247f16fae5feded1b9980bf077dbfbaf68bc585eef7cbbbaf83fcd47efece61dbde767f987fd8f8c18eb009c00a271cc50baad4fe4c750b56b209800a0c0b6323931333a86dbb6967987677655e98843142e9bbb3777677a7bb7f3e31cf73d6dd3377775f775f2c8d6c17b6bb8a8e8938bed0ec0b9d15c7178a551c5fa8ac38bed058717ca1b0d23138bed0ae4c02ba8fe30be5ca38bed0adeceebebbebeebebbbb73dfdddd555445d30323f417eb8add5dc8ccdf6cd52b283fbbe68b81daa92f304a2c72bb0a4a2929f48ea6f6963bc696587cd875e43e19b9af3593545177991c380787517a09d59f84eacfcb9b038c92fbbcc6126ae43e126a845fa109665a7c0c54d8a19c90d25a9e6c5bad0abef67beaf8f57a3116a61d8d43e23944c2c8d8e470b13727be6b47daa4711916d8c78f2ea15c150413c17885602298ae104c04532318efb23d41762e29a58440f54cfb6cb54263b526943b37f14432f94155836a6212c61ee7c9f8f57aed0ecbc33f2c132d0b834918fd488a1f61711af8a8e9aa5f5bedd70868aa466b29351e68496986269f369573d3b46d297d4fa3147a804f27931697b0466e0619caf01ab9165680f247193d5a65b4e4a908570ad88048194a260e499fd08f9d180dbaae88cdcc9a4ce65f41a6d353315acd9642b23a9cc9d87039ad1e55cd4c268e4ecf312393b1e12adc22248f6466ddc464845a90ac4e67cc1c6c6f91206955a6cdb91dbd338e1fb9dd1cc813c9d4b46db58525d816e76b6e874836a7dfcb796e6523e34355f77fd63b24564ce80f3b4849925239a986667980a2c4efc07469b04a4e023424d540012f5e252704861964905c027c8a5a58e1478f165150e33ab0724531424408bb27cce66d0d15bb88cdcc9a4ca6c67936eafd6b9b89d7c7a6ea720daaeecfd9d3cae16c32550daa1acf962626233cd5a05abb5ee56c66b6cc52b0249692b4a37e2c25698714b4ea1d922c94b9b58aaa496da99a16aa1963db21465a2c0d61e88c2086f02ac3956a19ab14c64ffdf62ff053fb5fe88ead34f11c9ea2e441b4c7479ce44a47b052f5f8fb5e64a118858228aa22542fca82288b1b54676e17788743b09ee7ec0e2f65b258edf79f3530d7830a1affbb69f5a8310507cd1585251f22d55854ad08e56c0bcd037b05a002f078cfc7480b24ea1a69b1a4fa27a07758fc3295a6feb8dcc5dd9a96e784a133a0bc60c91656a070f1fc003d91f4840b2c72d0e284cb9f4f334e280bb110a320df9f81609ef9d87f4c84c7ff184a9035c159d81c2c6858475d8108fa3152f5d22318511b60fd18a9569e9ccd11fa54cdce4a3150490c4208a39432be00ebec20354d259482a11cdb37d73c3aca4f6ef2ec7dbe6f96da9aa856abe5ae753ee7142cd0018018aaffec72ac4e8c0e8010f689b12d4cfe9f2afe67aa2be3c907ca368428ffe6b015666ef162c5162b15c2ef1921c02d4338d307bae2d5c4c207269101508830274d6092ac2202df09e793242f9db3f59b148b1a046182212cc008410996b0586af244880743d09bba461ee052bff71e87a7ae510f5ebef5daf5de65e685cddd107a2ffbc22ce0b707659ce17284ac14f8ffe1bfdc016b1db0d8e1c9154b6378d14106a5758dae40a25760e9a235a8b4cdd74439cbd09000000000f314002020100c07442291382c9a2872acfd14000c748c44725a2e1a49b324c85114649021c610020c00061800804c51cd3608f8454be9b6dc9c8c32c9c2cbffc9021d1e6d7e272bdc10fbc851c87304a94bac24d47ff6e7bf16690161dbfebe0292150bd1f3253c2a1d4af056114f4b7fdfca17487b1c4edb6de2d16865bf950f89044ed8a8bb2c665d412730cbbb7b1806466544251c2f6a846d25bbc63056df68146ea43597d278086a937bf20ab5440627f27701783c3560144759347cb0284aac7a963e47c732dac2900241abf6566ba8835e4912dca0179eab0867dd628791b2ba0768afd6832fde49889e4965d4f06f7974f5c938c13b893d64fa03a30d13a1839b25a48f5f336819a456648ffcdbd098f64bee005cc76cb04cd841ad8a165cdfb28fa8e3be1572907e8af07266bca2aef898368301dbf6b07cef0dddd2fc8100c898dcc4b130cbf4820b92f01c648172355e90c88e5fae7f45b1938f6058b4571d1d95534ab89a3137b5f85f548bcd522a8ed970739430d482cd284317d4449ebc304072d2659ee9d42a4ed97170d324085a62e744de47adddd34d22d126d389cdf009a2ab0a67e7b830f1bdd369f876c6241d4ecaa977e07ca0bb6e67c6133cd6e386c072e62921c94a6f5b9b5b752f4f9e8420661ea851dd2df887721a72e4d92996eaee47f2eb42f2af2affa9aa5e3aed091d2d86931166d5ea784fd7c7a3aeb5d2b5673827dad6a883ed5a2b06f69117c5153e97bc0603a82a2c1595ac85e098a2960456f12ae8c9eb29821eb12cdcede45bd3cc126eb93737498b650e6000dabdf4b7f0fc544aa28c83cdc08b682d142856e1ca873b54b2a8f0942444c25077acc2c02eec20708c45f61b778592ea2e943691e296f5b9cd18750995544771760409c19a5b1f4ae08b0d64ba23c513d491a028e7b60b8c87f43ce582ade1c211afc6c96ae087a908187d88dfe3ba4e771828be6e9764c0bc5e5294e2babc772e05ddb0dc3da698510575bb785664620b0551f21328ced70ec940f0d3ff1a2390f568ab6c4f6c2f5ae56ec05a922916f143fcf4ae9e13c6390350ca853b18f6b1117577378e1b9cc4186536db8c6eca6bad3208d2bc8231ea8e6aa28de1148896d1cca74c578bff01fb90fe4d4f7401fe4646ba15734a3d2170230be93f11cf6af6a2200d7214407606a6648b8e92c20d357ac90bde14b575562db0c36ea5aa1394a3f4528a625e960146f47eecb8d176df996db4837e128a2b3d7ede29352e6b9da283760e8f9bbade56a0651a468a9419545fd5f04a06aeadd5c94d5b28f491f922fc45d563678156b753726447b12d7c9b02409acc4177ed0ff62bec0daad9cd8d5908e1e3264ccd5db207db66edb602f8b7e0708d147a1b9b3892634595424f7f8a61f552e683de03902b26470a8a5b33b740ee7254615da9dda6e6c547ad3ea29a5fba9555ed5d1a8a57a0b19c23a46c14b1758f8ebd4b7f619878c655644b869675440a862f891290989804325b6d51dcf2b750a51ac03998a67faa21a6da1f602c6f929d17229369574a3bdf18c15148ce48e71cea1cdc9d1aa80d98f45e11a0bccf9c9ef971773dd2a082906dd3986721e2901ec30ba5ee330f1bcd6b916ff6358e48401ba4c4d836e0b8d0950f22412f9ed7478c4ddad921c95489e1efb501ef2436a3137a7fe98b5e561e52924e104a49a7c68b928f1027e57e2ef6a5da2d08e6f0aa4473c88fcd617706824f2d8dbf940a586c743fa327238664f2d6108046b1d5357cb8d9e93d3e56166d9f9fc37eecea8bbff1b8e0d0e3198da19609d06acd930f17b767b8919caf1eaca55ad74fd38fbae059e6e046efe94587e003d10336bbc1a64d3e99b71b9239137c68379c4c12008bf812bf8954998c4c16ea5daf8513b8f609e19bfbfbe21701eada1eb1e9c5e956d43d2353fb33e9a884a912c24a8016a1fbb988da2745315d960086463e4306b65c2b1bfd90853858a5acacf1be93fcf125ac9d9cd552cc0431d725065044bd072b7143bc433b3e2d735ef4d0d67b8bdfc6ab7dd02d2e86a82c9b912be7245f629c4d6a83041d40629709cd87b7efa90b8aff3fd65f3ff7ecd6015d1cfa92a29638e1c195e2ae6fde63d9443777dfd25872825a0bc1aece77c6c9f4098583868338aed3b474269010381ac0196660036089821747fa02c0bbabeba3c0adc3ba5518a6e07ea686582bceb2f79ec585e12407cec6d3ce987c95b5016c23e92edb45f4a18280715812e5f6cd7e5fc43595e49a3c0802bd88311d503cf7637fd4c6492e1462b7df2528bbe40dd129c6147a1bd7a26e03edd6023d016f02adb568df44bc95cf64491fc76b5dcfa525a5bad157a78554faf9633b16be9f150da24877bba625c6b937074ab177efb1c3a77336a30f1dd25dae9dafc46b3e611c392e97c176c0ae4084663124b8c7622cabfcd29cb900b1404cc44a45c5ce2ad130af2e0a5e4b7b995981082b2cd478c5f5696153723cca173725ee6126368f820c8a349a7b889e3c9335108f058e45def14a31ae6bc9f12bb7ae101aea6c86fff41ca215d44e78ba5eb377b97ff4433be5ed6a536c99cf9223f0d6482b0817e9e1fb5811cea57ba61cad12fed75649fb4f18c1d2a11cf9c82fa6e8b7463a985c599cc5f38ba07cf7f271147398c91b1a84c8a2490599b79f95fe176cc37f517f9b873e96bb6e0ba75333b7a56fcfa436a70e7c51eb60967fc80601855f4d3db32a50f69446d425db4dcdc177aae3a40080e6b62c072ff860ddec901ac16aaee8416f17e241375fab53e772191944c59f62f26efe5653f04a202471173cea2ad3309025edb94cd30dd262ba82df554ce120f99f331efee3d31ddb648bf935acde1716f331ac1693c9eccb0cab74effb692203c55843a3a17e60883aacc8f89744d42b83aa5e89d51373d800389ec870c077dbaab4bbb378f90b388da8ff980e41ccf035739edf45b92448ba5e6b692cc7076d0fa4b457318525c8a406ce4cb3cb58fb13293c230a2d4f1f30fc5e8e006786a7787dcaf1462ddb68218edf353dd716afbc62599a73d04ff3003716875ed3035a50904db6495187bfc809f92042da2f8447827d038e7987523b54dccd2704b0cd6088ad09a2a46881d1207886a36aa679954243181cc844606dd2861a15e6c27e702a66b05ddeb24fa29e75e78abb1322de297a276fc43741871d8e34c9631acfee654cb7794acd25ac770b53e42a531404dc8329ac1212adec2c2bce331696fec93beb76785cfaeb0a631bf5aa1696d7d812f354ff18b1ac4ffa4516639846bbf52f51893b66d55af1efd903e986afb255c4d881b58294fdf50990005477e8a72b5d607538fc6d2f54c9ee0a4cb9e75069d19117c4ea5bb7ebcf99964b7ad8174aa10b91f2d9929515fb094f10decd513f24d9ee1980de659aed5bbd3068f5fb69ccaf19b1b47b38bf968cfb667ecd7d96363986f350867a090b716babd598a174d81506d14f7e601ea9398763bf3f4bd7895e591a32b4a4615859b308c728211ab59b6569ee69b6099cb8ceac7a59a4420c6694ec32202273ab5e27e14a9cd6de8d669034b60c6193eefe1c86b5845513da624e2a67eb678f309737e81f6f9915c855335b97536ef0816e2db43390e020601d82c49685584f9198e723700b48ec723165e5bd2b8f5e5b309141ca9a9f1b8b9f6b419a97cfb473942d3caa6b0b5827683c01cdb8f5b1a34c8206363498e98f967d3705076c68ad22ad87c115799faf041b4781d0eee30bee63cf47bbcb91c213aa01b49ebd283c6d3801fd23b0db52a274a7988798101870b1b98fe17d0cbeee734738cd20ca4e40cbdd63b562b551a7276870815098f6e64cc5f2a03af4421ee96a95dab9579b3733054afe58af238288e2956560c9c5c26a8fc3dd10f1f748eccaacc9912a30c283c4eb8449ec8ed1321f977a6f8760a5bc8a6aab37bd87416327d5fac3e306ed073e6e7a13706b92c5ca9fd8addcedb0954409bb1adc7f1a1d6d0fadbd071844c8bc1175da4668f7d6cfe4dd6fd2eb8193da43dd80328d439c2b7900a84df622d9f31f91a9b798dbcc96b531c7ebdb3b9f212dd286f37581e234a028ef5f2a9795e266a4266b80d89281fef6f1f4693e5d66fe62b314ef4518258e128dfede6e9e9504e741c35f1cab6d2cb652ba7ec4365969df54e78cd7883b3d4f1df55f2980ea6ef491f79f81c8ba23779c7f776cd369f576bb380c7c9c87fc0bf934d8585de73244eca9a01971733e8290bf69847b1198608d4f252b01537cd771490f9db6500bef2dce30063ec6a68e313e1aa89c8fce4d80be9318dcbc267caa40cf27230edb3ce06b4acedc85cb030e7d565b31c13b5e8fc88282ded2bf360d696001ef9f8d069061d8892bd6dc14419f7f543f4deea65c6ff9952afa86d86f7219d5e2cafe05a5207851d1ac8bedb2a40cf6bc7f6935c6c50f07943b842c8e4f7aa5e3c460077d17a65468534e1425db977f650ec11fe637018debaee59abb4e75f015771c3c04949f4c5d04b283450d57067235bbc5072b33f95706bc0948f40137b30e0a5769191a58d7cc953d9c667c33f27fb6b6b1c2a102dcc4dc1bcfe65ece08bf89c1295c30b67ffb1b28affdda6bd6eb1293df2293d6a3dcc6384b73bedd7c4e6b95f92802094fe0f3ef0252ff68c4a8a77a97020d9236b8da15f2b2322260713f99f5102baed1243729fe7a5cc8c5f8c51b317ecd20fa2332f1923f4a6ac50c3a8f6eab34659b705e76ed66cb15b395733193ac73b3e33dbcd4f47313bf3bbac0f98595084864315b569ea4ba0fb97aca7aaf0f4267d1bb24d2458a5fbfdeb70f6df5af0c061870088fd7c820110f9491e825be900a4e48419daf95778a00850ec05ab6a0f3370f118a81cb971fdf82c8daa695aeb962da9b1510442ba0000addc3e34e9b9bd147a1b6013d7f87280b32f3ff611221f1ac0a74c08156a3c1708b92a34e54225de76a00c4f40e2fb4b0e4ebea58e7ce2276d9527e644408195a07e7896d053a7b247dc3826fc733b80221082aa34e3a872ea31f89fa407265660cfee9df8eb8c62b95e874038799b1075b41e1b86554af7c3ea6ce58b834c5079377bc221e9813065fee06991945b100633ee44465cb44698354836503880b1706524746a8243da50e7714b1a1c9bc206a9265469c7c68384d4a928d58836c610fa2db4af209334e9121d093b958734ab06ebbf04b2b3bfb9982079c3c00fcdf043c27fffd52e6f71b1f98015e6ffdcd45a03cad677b6006ce4820bd042d34b06db01e0304ce8ac401456f957da10fb54a57093a4c6eeb650a14cc1888158c71069fb1fba720c7d6da01faddcad804323ad1161e0564c882e25aafbdc6ebda98563b9eba820a54a8bb70186802fa2e32a3dd33a8eb9649eda651ad5b1f1bc5766894145991448863a70c47951538aafa8d95614a7d3c47717a56877627f72200bfff8bce919170eca39281b0d93814fc7e01f1e258dbd0014301b61160a78f328028fbadd6b4b05dd9bf95893cb4b768229e217455c450b42910e88fa59dd5f7fa4afa0ba8ec5c4e1cbbaa3240b22406474520d2adfd8956b1b6c6cb1da4f38049a061a61e30061d5bff3a83702c0fb5e43ae3f5743df472643814b6a41564fb3f47112a3d39ccb2c105969cba7b722447c4f98a9cb352a1aae4e033543b51fa198c9664de6e58bc9bef12f11663c0f8402fbd837868788d9ede770ec77c05b579c96d1278ace364ac220e9bd82740c3edab123943e6aaa84eb91dde306d5ed2b4dbfe0e8303e0ac584132596510079d1ba3b002e0f4035f21e7b3822a1e69e73cabcfa16892e4534a8327d1da95d5dbf105f074a5301ea81a25a47215e3f4d97c023142c73b464c0bc00de2738da146e952c1991af025206633228cd8341adc50ae6bfbdff6521ea2c6af91b9cd615e314242df048a40c3ce197a2263fec00fca30a4dd2b639a8a1178ed7bc7e43aac299d5128903eedf32dbe6f89136a69a040f320acac995a771485645c410199fce88f2caa3b9cdf7a2482173c06bd6b5e7b8dbb0e8c303508d1c4392ed5d9fd7a1d1a7e88360b42fcd5446458cfbcff3807eae61595940799e6caa330705aca4d764e7d015057082fe6448e3007133417282aa54c88037e0447aabbc9515bbbe0522128e4e83347e6483cb9fa13d26292b2336cc1243941a3b2e2b25b61be552287ad5e9a205b61b52c1e05d0e70235427a00a56e3731a0676589a077bf03ef0fe5b672d0884ca8c9eda31673ce4f58890c2d9cf729e0dfd32a6e4d7497712b853d873e0164f220ac8d0e232108a009faf5208b9f83c688a9c0da2b5d4b6ce982be7efde272a5b8cda1841977cd7de5514c8d9571807a7c6de0d9d570ea1eb32e42a8075ae390c8e7c31177ec965b9d719dbe56cac89fa402b09278fdb4c2edbd77d8fdddb0efbdc2fef7cabdcf5383ef8d5ce833e3a298e12ef4aafc886b0f16106167aecf760a6ca1b1dbee4c23d8c29b650904f0772d5452294f0cd89ca57e9619074a28cb5828187340f02419ef270c2ac48cccbf16db4989c341ee589aa4d242d793ce6280b9594684084826d84bed924ec332a745994fbf1508564bf02404353fb0c667f7c8b87ce5b4edea913b365dbc047de59c5ba20559d606987a1694ce5bb8b9d13dd65db0c3e06f62a4cfb75e6692e3e50f84d3fbd0f437d9a571c98adada0fd6e08d4099b41048ba0f76f014fbe2a8247b26a78d2af14d442dfbda7fb49168510234d6c39fc8ff3f74beb6e22bdca555a05c996d1b0618d00728eab2f92c8c436115c83af7b20c54754dda65de0e9566f0d827d8a2019ae12e7218e5f320197159d8b986272e5b798d78e20674a72409a4073e128fa596df3ac81c4a686256593e8faf083c33d9f3ce99501342140836612d25ac55093b2abff5eae0c4b435a42effcad9c861b89d605d1bb145de6ac3af20f5708b930c949ae2f4d52e1dd6b97cd7baa248292fdbc4ccc217e8916d7a7c072ae6816c39cec40eaa22241c2bc60d50647221ae95675d6e1001f600b32f5bffcc5f6aabd66956e1e2af12ae4c6f48b58d3a207334c0687d4d9031df7b2892c5248ff694e9a2002b830b9d4d8b5b7685fce6e22e55f8fea77b617b1b436a0f60daa9055874d914f5bd3118c9fb30b6c06d774f3811528d8be0c18c7b71629e70f284546440670c3f22293b361ca90c334c33c1a5c54593a224628b4199c0b7b4e3af27ae3013c70e8f1aaa84b4c58ae27b1c104fa7d95b2ccae1adb9e3aef915e377e1c40b341942dcb93bd982e56d2bd5d0306c3e233156c519c3a57296b0b0a4005f671bb855a74db4553f856544ded289edeff67431c2f5acebedca845759d31d207cf70970ef0b65c703df4a61dce48070d50935366a88397445a4146a5e88f9b4eb03a9580cc099213defba8ab2443ad8fb9f6717461b95ee9e35252648a4c3cea63df1de4009d471c463f9887fa88f2b315a14d0320856adfcb08b3be40a57963cd13c321e3959d0ae8fa4a053251caaedfa6d072f4ebfb7e288758c5d659e86f3f8741f5e2d9ec226c7aef8dc895c3d582cb076147528fcc8dec1ec25a14a7d6cd9f67951dc63e822fc4b46bd1912e4264c033ace7db3905d9ba59a1a13efd1729745bf0a3d7e4254c50c56124f9cceb2f00e4a666dd0a3d665a45b4123fe9d510462b105a72973775ec9d77832fc9a1ddaf4d2517214e83d6b3020cc9d6149827d928b35410de88b7e8a4d8f0a5936fbe1d552c37322f596e3fe136f203dc1443bd7a586430c8fa92505bd51bde3466459554eddbfa3157600c153d78bde71268b3e709b8c007d3113021e6570aaaec7489af1b233c7c99e2730d3e20e81781b53aeb63da24245b4c93e816f440f4aebf0d017815c55d2e852f601c95f16ac2c9bc72a9f2626e85941e08237c8b72683208053e555a6a6991213d80e99b79e2d6e0c7afd7dfd216381cbe4759ba27213ef2f8916172a192ddebe8fec85011d5ee691e85cf04f3e53da0297f0c500eb3b9f457fd800c0153ced1ad9a4c5e416a67efaf250528af9262b654e93d3ae592228a22d8d29a683e3745be9031a2f000e3a45a3117a3c78d6850426655f5689a5361022e40c0a48662e95b2a6968567544bb53a7823729b8ed014d453211d735719df488878da265fb9aebda4dc99629fbe0cf10f0765954d861d47f05ea722e66599ab5b97bd6b1640e481ad2934a4ef3d06abfdaee983b50e6e80dd95ea4a7b7ad25af0b98884fcd8f56f484ecfb9d9cd2ac5363d0425c9da9ae931388d5370ee66d4c17fe0d0ccde55ca4de609c2d40b36914a6a36adee5a9ea95f9ea90a766c3f9e1f4d23903b06a00c6274011e1dd4a5271097e188ca04babfcda9ff9f440af58c80b3b641b203c8d489288981181ac01d8300aaba32fdef9cf3121a6e7499a33ca872903b4e33b595edd9f4ca57e483a3f19e3047563ea664a95385875b50f63ec22f463f1303d498234d558f4614ccbb991211318966748bc67afce0ba8969badd6ccac4f68d458e2db9df4caa4396affb7164022c3dcaf9cabac5a450f4ad95b6d7c87fc7de708606f8a3f2e2d774862f3b56c4d84830f227eb6ebfe42458d8580750912d14af4c90f4fdd224b559a6f7b8735f6f44823699abf52594bb934f24c87d6a20ff562b1d59d0362418c8d53cbfa6d914a6a3b7aecfcb118a4bf730e50fa0522c842c308e6be0155433e233ec8e1668fac4d499f8a9b2f09d8e2119392bbe052917b80b51b1d2df848630ec76d9b8714238cef34b87d82c3556051826d6c81f4d03e9cb87d0e84d1362816ad5d2092f46ccdce07a21a908f9c19425b3e2d9f20b091bc8382a253acbec0b2998f5a005760c7ab120bbad796df45d78a5411d9582da02e3a271ebd2ddc37d7590cdb2d48f4d4fde4ec561175677840e05e3f93927233d380f6324b705c759dba8657fc88c96f2f60349fad9e1bbd17ac54290ea413b638416acb8c2821010328ab1d1befa98f21690f2ab9c0f362d216b6b332b334d8083fcfd69e389c47474de9c103a2468308d35d09884d1241c4f9893c0b1828ab3dabec85337c7a28e06248b29d553e5212a75a29c0c4ca550b5d1c9f9a6d987902d5fd2d5507209adbe924d1b75c888a30ecb1d50c2924163224edecd646ae0642850c1371a69d6ff092d7d330fe59750494c0e8ae7965cf9dd69a755ab4c71838978c817e70d37c12f8e7c2dbe98f1bac531c143e52792f3cb1f57e764e310ffda01788153275e0175aa151b27c59ddd65d7b63f530e9f72be6e4badfe808a73f680745b02540a34828a2fc8672ac8813d6ba84ba38a0bf76b3ffac82694a077a1afd93377a14456f36c73fedd1b02b76eb752da4468d0266a401d1ac165e0e87c559ccc528c60477c2c31ac5682bf779c08a803e99411220a0a76df22f2752c9acf18c0389b4cad8e65dfc584deddf1ee702d62db6b7adac18480e5e6a01321f098d88611af998654459a31d1bcac5f214c903033e33490f342e47d2cf68c0cd10233a6341fd2e89988fb323ad7ee9a5f397683b0b514198ca192a7be0b83b9b7dcc3ed0e75a6746e32d910acb8fd6e3979a60c2ce4a5f263cd8bc7e7ec1e71e2ee10fc8f8b031b57203d56b8a8e107b7591702557409a31d5fbf43c78daa2cf75d4854ae87f703d82959bdf90fcb72b232982b5933503277131ec3d1c0a2241cd236b3c79792c57bd056311cad1d115c063e4c76efc8d8073151334046feec5988ed783bd8623fd244e89b2e4cc827497e5e9a9abc2074b5250e1d5a2d839f10e1a1977dfd86609e1186616a5917f3a2c2ca064390064f31fb3afbadcf5dfbfcb913ca48df55116f30bb26a688696a5954512c6a25258e8b952d02b5e1d6c2c86b70aaea025e13a50382531558831c266a520579b4cc71fb299c5ac9a86d48107731849814d641aa312828ab3bfd7163589f925379e69b839ff837b07a4b8426a77ae1c9a48a51e4a5fda99366425d7cf4b1f56ca4a88f0384cbc1bd763d18d3b0f80b8fdfeb92fcfa620bd0de5401f462259100c8320d5940c3694a98f41336f914709a34c8a664d6f686f546cde6f8bd95ce4d476c7dabcda0dde2d4a19bd9f9874e6b418c537515dfe875a85856422df49dfe10f9eb2b50fd82af8030ebc3a8e7178da63ab975edf25c012363aeffd793553b66686468d0bf548ec40977d836cb83b3371dc1af0242d2dbe676bea7595ba2d6a99481a7ccda1b3ce28239bdef8c98ad26e849c2dae63b146a5750511ce690c59e283df883efd9be8ebfc666075707ab68905633e5e284b9a5d736d989ae9418ff03a154fbeaa309fe2513320917fadbb8297a6a9b54dbc924544080f31e7c60d704292546e11851162360dc017aaab0e858951d754a7f87dde83eece56eeca424f981a541540b8ab9232c820b61a251e8debadd94bbe267a2d291feb46eded4211664e6a9a6de4712284373610c0a430ef71437adf97d1d2c8ac8e8d84d4bb42926503f48377292a6b6c22b83c343050a101848d8f5a2e53a51e5a767bb0826c372c17fd6bccaf4d13a9cdde79e727707104abe78f6567b78b05461c9b954ca3761ca4b284aa4658398936df26f6036c7f3faf8958150401364223963b6aad3b19e735d00e86ad32548bec8f6407e3663637d45076e901dc78e7853af52d5ae7cb61a7f478db22882ac54d9aee308d31809f0c5909e48a01b2001cedd50209027192564b64e5ab8757ed954ac36dba988704e5d967baea43f822db64aa0d7c653e06234e6bd48f07447b4458739bc3b319a4e4619fb2e0d7ee83586432a7adaf43f5c375182d695d2ce65dae0cf90dda4d9f4cfbf2dbfce631f02a416370397b7ab6cdbd2c4f5739c57931c04ac7256eab71d49a934a9f2aff45aa7ca4ce01ec10b04fbfa00562264399987c1f505844ca0a6f7ca9ad51168a29dcfbed68a75c0eb8eb95724272c6ff59a9b863e4ac5021b49d2812915b5774f1a8e2eeff3422fe7fd43beb344488c51e40ec2c5cbdc237b4a65aac2dd4e3c1230a7155530536ca4b38063b24e1d89539418d067fcfda106b920dd2d71a679005637f8213cc732c6ba65e26ff38264561208d6b6d203ae2650cdbccdd1953348ae56545d0c57575c246465f589a44a7ed101fe6f56a7db464206f66e565e978d095d65e0e420ba209115745ef13b8dd621a6251d38d90f368b5488bf91ebc53941c627934173faf655789b4813cbd518a2799c92cc6255d08708372bc46eca68dbf21ec6126981346787d72b3e4878f0873e2d3e40915a5682c38eb61278892f5e0b056e402347672136995ca32ca5c19a3cface2d1e99bd5268e7b4912c08127b45940ea3f8ef6c80de1b82fd8c70bc5a4c70bc610d8fa77bc6aae49e9ddc3d35356adec7413de782c786b0b5b02b8870ce42651dd2c08774c69b184b488ed54c6d01a78d0f5a976aa91999307aee834b4fef1822769066b2b48c5089b50e7d5f75d703c9d13ae7f2938e4d95ed52c4fb68be6b57055ee646d4619ceeeef7ba5719bca86b2b8a014395994fd3861fa74b99cd5bb153f69a14f099e1c5236a64a4852a13e4749070fc916cb7cda8152378c80d117ccb52cd37cf21c97982ef4edf31449ed0ab4b09c1c5ec2f4ca538b57f6547fc4e5d565af94ee383d74b23aee29001b092c1eff3b306e8e640fd4e65b5c9f3eca9aea7a4cffed62151007ebb2b7522eeb4b44c078299703771efee6123caf304f98db0c1c67924c984da0f145c1ab2522932ff2239b4dfc1cbdd4b4d254d2cad0481beb0ff12a97075d4d5eccca930fd00d026053786c350b9c7d675502338de89267108abd0c3d2c6dcc8e304c65165cccf785ffc3c070d96ed70bd0ca9631a7c98412c2d8033501057b06770ef5d70382582343a8063727bcdb74df3ea333b96c292613cb6dedac033be74a8a88dada16c9e645ea20eda6d57945e5e438c8ecd5feb2cd5faf44867596898855b993dc687fe4c76ee96c7e557df061ac6a3af65dfb5e2df9864de23718387355758df41c1c89fe7a66f53122ec5de1f0795a8f90e9b75b991ff74e3d16f9387f97e40aef12ee9f677b999ae0a552ba4e67da4b0db0474b0a55b33208dbb70fef69a6edbcc9d659aa6f2006ae2315f2e05ff574fc701ac15e8538b850ca6c177f60e0c914fa4c7b1f5d8b5aee97c7be3ee6771aae855770b8efef4f6570ae4424f6333e03de42980f0effea7dedb395c02407a037fe6b6ad8ba7ee00a9d4275ab824239767ff405de3912d4433b4d97d84bd3e76cfd635b279585254404abb2b3e60af7499ba833d17a69fdb284ffa47aed44fb2629078eeaf5be7993658db4bf7cae94c66985ba2fc27b3427e03eb7ee261c90dd7a890c1f517974d9d87f295340e7b83df180dc3acce6d378d7d4dd76ef36e01da2b68d550a6ba71066796e23098c99eba85bdf222a237029dfac40d3f7a8f7510597236fe658ef7eafc1544b742a0574c10d433ca554018960043345f0581dbf837e94b6843f86f8261f580055733c9ff18f6cb16cc0e5e8d7278ae77bd9eac16dfaaf4fe6276223e8e5d0608f39d4c0ada464175139022de52d0bef1c1b578d073cddaa1a8f3da02476c1400b7f4afc9db69786efd90bbaa6ad795d537b97f735f25683d2ca79334b53d20ad3d57518207059df7d67488fc76e6a9c19188732f59c61db2cd2bc833f91a8bd8daabe4a3f6625f205f5dada1e8e83f4ea098b2294c2d4976038b4e8458181b02b3d5984afd439dbb386722d9b64c39748552ffb04b1d3c41718d86430ed53fac71335e584970787d0e611d74c8c94d3865cff01bb1cf192ab19ffa87d4be870c78186d6b1f0c002a1bf6773f7f2f5b5941e88451ff789e767d98505747e3f5a722f58fe9fa555984aebf7d4b52445e9e9f4f2e300ff50f687185bd0f4b35344a48540f8d8b7081e9c8f7398e1121ce1e7898aa7638fde9f13c86dd17d98fe11c04250f240e413f39ae6545be379316176ce96f17a53e54e291161e81b7de555b18feea866b98276fe735507fa50471f6cc21db3ae4569169c8883c2693c862a7ee134d655b4165be7b5fc519dadd37b3eba77611d63ce05dfa95f455342b40de563e84573c84bd5522f025e4ecd24867fddeb4ae14ff1cd81e2279141218a00056e1e8ddc8e311fe5fe2b8d5c4e7692e3c58b164be28b9e9a0ad695a9560b8cdb672f82701f810e48a1741425ce4bfccb71a355ff5c63149dbe0956db6dc33bb8c0e91e94ffd846725f86d34272b82807651eac56d89c6cad05fa7085432e074f5e0570c035ab2b611ed482771dc8630712e22cc8d9dcbed5cb264c8d5d5d183ca568b1a212904d51b5d7059ea5822a0440592c5ee79aaa7392af5773764daf377caa82e45cd732c2fbdc8c20c6562b6ad8a2990a38eb56195dba0143c56ea3091e34886f1802255c50bd6ee4bfb543ede6487e10d1f437260b704cc24a718f7ee619eb098fc7ffec117932df5822e2ca2c43fbcb946a0bf96c1ad321bac3eb06a31f5b3217a9eeaa24170994039e237d01b4a45c33739e749741b93ae2307d3ad22335c5689a38aa2d7a1a03dd18443cd791b609d3c67a285dde97e1e29fe82c3caa48f4a5b4afa1450089bdd9a50908d5a1886d31db0df50e7a50ebbf1579b900a2a7b410f7f8fcfa2f4b2cd9228130e4d73a5f55f78ec2df04567798a99160353a4ace0102cbe0d31e327fb8d81accbe0f49d7220fb5047af0ee61b348f50f8717c6119c0fd1023b8765a09f3de5d5f47d764f2fbd3c0eea16cbc879e856d044a18a6d501dc0a1193bf7cfbaee31a163448d8b1a8e5d60b1131e852ab31b79dc65cac4f8ef221d249934b4c535562be9aeaea05d35d3e27adb2ece372a007332b26e6901942d6a33bff588780d64d415114631330cce4667d6414c07e2b543a921827f00d7ff5ce291e9906416c22f3b6b580202063835e7eba9471a5efa58c9e0beda225242a7828f87177462900669b980d3ca9b2f0a217f8cc23f02be60094397fa23252556b081e1ccc20b31988135f79c49b186d1bb3acecec6293a9e42beeb056d0c0cbf7645ea0cf21f6282ba312602753c3a0ab8bc41ef4fb7bc90fc673aac16bef8287b43ca03cab9157fbf87008db3d505a38562ccd79f2da72602b76127e977dde2b8c4633eb2d338fefc5cb483f377b5b64827f1526d4c3d22d2cceb9243f2057211d17aa112b14a249b8e5b2aaa860830d8687265e94aa80b8f47b87f1bf6c78585f6153e1ecf013875316234f615ad03c1354945f405d071932fc7a9830107f75eefab9008cddcab1adf6af363411c06e9840eff02ce0e90a4797c20e84af552f63cfc5c083eea33ce3dcfc2686a508443ea705fad58006b99ad18aee5b6af085f7aefdb3326eaa6572a1511915169634e95559e9f51344e43793224a2909f329fd5ac106c87356aa92a6521366cf8ee77b968992a8944ed698d45b80642a3b7d1f629f33a1b6327c67c52fbfe2b8b03c2918c5cb16b0e857588df785c0976cc05cc6e7216829fd2c7f1d8643832b0aa5c5a35057a81d1d422286eb30f72b2c56833200579884f186897ee6deed22ec0491004823f7f6ed38038d6800645803f0a4ef2c8b774c21fd103c95c00c927625b4a4572ee71e84800cdf852eee7b46ce2e00fd5111e0c9764b0578ed8f8d5beda1f062f8bf8988316af4120868582082ea913007f6489451e95fc5dd203a663a881115b3bcf748082b21624f086daddad81a7d2171174d9acd10820f0229500858cd3be01b28ccae4c2c00715d06a0c2dcc06818b0f6c844af7477b2ea904b5cba4cefcf36832e0754e64d971f6025ece8f6c920ac243d28049d481ca4a0d6a6906539a761719999090378178a4fa0d4f71e22c9b74268b96cfc51234f7c457c90f52099e323664e5afbe47fca7067f556139ad9a6a441d99e30b8fedd4b81d095cf9bd00e7e812d2e3bf0c6ac8e1d3c584401500bd54b115cbc4f5d70ccdc8c5dd217df7f682b3a2b862cbe2acdd3c345d1720f38810faa1bbef85098a7a45391c0256cea3e53c6c960ce3fd19485deb2238cdea71fee1654f2480a6a3e5bda8d033f1631c1922f33ce8dc7c42306c74c125c9cfc5c712fe5ca1a0c70e7e4799cd1e0574a0742201009bccced13d948cde8a446cef0ea5579066673de9666edb0779669f9e2294ece1c72839fee01593b4f37c8122a00923308b39e2acbcb8c0eb3f3f37c5eba9534558d1e6163fbc668cbaf9222177ada3e590156639515868cfeebc23622411e56e9925ba9da66c60711439415227f56591f0f80cbe77d76492ed57e1d344275f1f0cf0b54f50e80f56637934d21fb81518e51f717030c6a310124a992ff559098540e23ad5efcb99c50f5ba59024ea5c00d72cec3b9aa6114ffeb026470e88d65eb5de2ea3ebc60196378a5fb56f89a448b4ac8ebb0299fe2ca71049ae0ab64ff42ffe8d0292cdc45e29e87f67f02cdc2045086e82088244079850ba0725be79fcc02ba19f84f3456fe1356d0322c3fcc759804b9b362a22c059ddcce9b2793566dc154cd306309a122d914f4ddaf63546226f2321cbc440bea1374f9de5b33f458a6b92f75d670f08b20b7e0c0f329e140dfb9c77da4fe98cbd65f06d54ddfd8f0a8e04365528be84d78917a384dd34ba4841244f6f5e4c7f28659f36f0c8580dc4003b397eecace0cbe632a6fe3ab200f80aeb5180666b43f13603bf9162bb6c29a13ecde157fb51c308d0c6c7a88c84724de2e74152cc48f299f0415482c1ec96739cf150c23f0a9d51cbd236046c73060a4ecc6432cb340e3f6ca4c77537cdb9d197bf846c508fc395c3adeaf1396b3510aa1fe644bd8ca5dc0802df07a84811ec977e49ee926ea36e71937286aa322e0a09670ae61aa6c9e331115c542d49d471d29a314373a055dc5bbaeb2adf8ddaee2d426b4d78d1fcdbe4614e3fae0178e05a16c79567904c27ea7db6ac6655812cfea96bb91732c754af55e207b6f24b9ec63828b5ca0519e5436dfc81457ca05b8672efa16aab1126240ab5a561a493886c79c84972d94c8bc91615e8620d7b29cbfe422763551bb823c5f6d0ad21ca406f375ed5dd460a341a916943922652187a0adcd917080f7d3667b3f1a55735513ded1f557c6bc84d77968b176a604388a15d30b8a32c27506d46c308d7d9ef3375a9ebde188ec7fc13ee572c469024addd195b27745ffad137def7298fb4c47c863beb112f009778883d84bd459704e9fe2c8fc03b40ff386038a4c22e89a283c28245e19429799531d0e400b70e4aa8d143bb59b962b60a9cdb09985f329e4be3e67bfdc1a63e0888fd4111fac6bd1628c71d12157c512871903f50f63204bc46378612299a2c06b32c6bcb27cd6459bc0dac9bd585d3a76b9bdb00ba697235c1ea1504ac413775eaaba81032e44103d0e2bac974992dc6a5a48a554124bf99b33c5037016709efbac398851bab6e8b0e25297888b65033694442e05e00682b24d27b238d107274e441c30fa5d5055ee4438495a6f0e751a864d6820ff7a30639020f4b96785fc3617ea1d9ffcd880729f2ffb5956d0acd8c56e128879c5757071b9368b7dd94b80db8f30177c95e96f291147dad6ff1493555297a1b0981e73de95485471f2b0e4a2761633e185452c6a558cf345f16dbae88c10f3b01398b076b4d5484da850efab2e7b141fddcb8f0536962c13f22125ac8527ec232f8d35888d7722db6bf1e5cc97c75b732fbacb99113f583007de0e3e3b114b369c916919bbb9704c11041ed6ead298e7d080bf7f5d55b49170f0a6351b666e107d33d41a1352968d55651be929c80da96d7b0ee44668e7f3e710ec161562b5102470c9df96061b4e79700b4c3303af990d3d20d13217fcf1d4cf704beb75935a57eda2c79b28930128faa049a95cfd5432a2e5ed8655f3e244f5e0b03b577741e5e00768ef593ebbcaf8503eed423d574b20ff2a37d40424920c1becb3badc4b3b19bc94a948b976574de0a88434dc6c9ace4749398ad629b4a44cfcdbd87de1d75a9740b541afc1ea20f42cae66d8d83f9e630864d4e09e617cee461112f352d86fd1c082d033902945b59e805b660ef39e47143c375933a7b737b77893e7a4e60376ad010eb416d6849e048c232f02ea6d00fa44c8601d96df8b08595db6cc20e613352d922592106aca727104378d36f9d575f500b9fd941a051899c70ac4880d392778f5759dfedc268b0917275676e8f4518b7a619769ea70b573b87bd6d238927cadaef67917f7e54d2502f3a1f9f93cf1e62e135a91e385e238ec8c62db960498e91cf5a848b9f05add222d6272d2e5732c70d8e33a5d2d45c28bc33a70ab86ca1a58cde381da93f6ff197dbba6a340dd659412e7f90d4275041aa6c33cf9f19400c2ac5d193b22d979e2d3bfcd4ca066ab148ce37d6982742401c77763e3463f92a1dda50c4946bcbb7339a9d26c20ff25f42dff309b8da7ba50ad6b32fa56a5739fa6f470cab299097cd81bcf4ab20a44db8a38672b3358e46325e935593db8187b474294e8b2aed3899e538d4e982796293729ba6719e34554ec7323d02957862f32bd6572a99737b86d74e833e98e3550f7582229f5fc6b20764189de5c2d8b278bc5cd4aa96731433eca12f6ab203f21e885325da5d65e7c2b350275dbe59e450db9e64c7978e65d3f2ff124a636bd921ceac17d64744df6a5b3553a20fcada6d2bde210549584550665aed23e42ce691f258ba1adffd2d7277dea344d8d3ae8a13d608c56d84c5283daac6ae6c9b15d5cbd1a3bea91a57bfb4631d07b1e78f7752fd123ae1ce1d46b1a913bbbf67522d3550d3efb1fe359953e9ff358767d0c5dbbe6be9e4ac1a97e9746997c7e60cf59a940c8232f184a0b221a9ca5d9a3ec0448b1f8753d7af973e6e121c88500867eeb03b8973e245b6528c6252ce10cc8b3c91a731463349f4d79f8654d65918f2e73c7863bff62884966776f24b7d65d0c6d36a1b60b73c48c9b33cd02b94f89badca817fed5117d31bad9aea5ff439db74b2a81cfda33bf2b2f873a8f6e72df320b0ebc5be1b4295ef7ddcd0dec900bbd657f6906c919451c6ce2f8235734225abce4661cb7ad488af179bfe4aeac667089b5d92d63c2cb081e2a4ac61591248ab038e31f72cfa60988b34f4fae096e76fee20a396ae211b11e2c5d706d7d756ff891a5c47a003a90e6a0dd17d175d7c9bef0727efd766695648eb016eb0d81732789f6a41e35d50234e25209739da7c1872451b6b858f7ffef942db4936fbbe3d6c967a1c3715c10b4b0a7b1a8e2abdab58d002a9d202904436381bccc5ac760aa324be30658be52b9328fa94f96622415e8c8132c9f45795abc964603fbb1c84285a2627f241537e401a11aaa324c593c2f3aac520c4241eb08903a85e72d3337d3a7281ee71e9ec7da310f9dfb2f6f8a8993160b84c4a90fada7e93ef7a24ae48d268bf38d993fa23a15ddc55372d2bf23c6ba43aeeac3925402194dabf28b96141726997f6b94a0e4cd996b97d233634ab6ae0379a69d87ecf284b1a5452cffbe2935724817e50d94a9c3baaf803d5dbd0a36b67554131f1b4999ed6df8d854e53609d0501d58e53dfe217cf982e6c6b2145ce4125fec2fbaf89f62d61e5e180d38cecee5f1ec09d2b2a04fd53f616cf59d619441000795a4c0ad6c37aaf31da3f231fdf7fa9c4452f459919b672afa758989daf8a2d48dcb421966e4c1f722672bd75a585500de2c09a0fe8197c523903d82858cd01a053a56aadc9c6ed43421945e9b5255f45dcda260a2214c4f4b03f6394ceac7c97c8b5ce2e61a2ec92f75940067b7894f8a7526763744d8b541d20d4a6957136e11017dc84a2fc53c3fa3a119c5a40400afb635a638159c150bfbab5362aa1a8fc70f4aca4cfaaf8d476861acf720e08006cf95382caa355b5490d60cf8d6e88f792c58de82ad8cc651959535ae17c6634b8cee900b2ad5efcf7d4b53005a48ec452df23f3b5782d92fa9f17917170d588347e15e393ea628f687eec878e16df1fd519eb75755ac40f320a44b31413af47a31662731885a1541baa5be7854b4ab5a212de61a1da5b01feeed41cfb234436be888e2627c0ac0426b90426982ada62b2cfe4d10d38a89051eed0d8cf1aa2f47e2c154b49787b8e12477357333e6ee39bc35b0e17312e93897a221a071be6a2efa3bb68a6c83342727fef2fed5a26a165b473a2eaaf2628f7e8d6b9f91c9d4f45a6df49a8b1a7114c1a1937fca646145f87e7900bf7e236042be0108b8b2f21601c27bc47a06938c602eeac73d5f2d939ba9de9a48ff5ca62c61ad92e93524ce948805a7b5473f7a7c83df6c09d9c9a43b48a9814aaf98ac574d2ce1195eeebfbe2ca9d378b06105f4fdeb5fef866eacf88e135b4cb218614bf3a0300b4a75807ba5c73629541c568861340a98b3290db1f88b8b07f255b880b26f51b8c2f8a0b039c32c396d2dd86cd7ed67ee0ea5560716a34441940325f00243215cfb1de84aa03090bfebf8b7d1bffe3e330c69dd37b53a43956c7a4554e60f882d552fe369c590159a897e2b9eec64e1b1907d1490c82eb30981d607add602b7b6f2fd3d3f32747e01552a0d04ff7a766a2c33d06350b41ff82d8ac5256279992be7c51b0c32f0fa17bc332783b1f035c4b6219bfe8038a5b56275182839c1b7b1712e925f602dd1e0b2127a5f83498b03f48a580dfefe0c2bc040c3222139a07e3ab10db899a35bcb6a60deb24afa8d2285612ef1ce90b45c4d6437df75a549051b6a175b4762a2e862ed864c396f7ffbb77f34b904398ea0cc596f03e95a30137bb07db52a4233a4d3329e3802c014f7d866049f4d1581f1b3b596eaaf5206df7d5bb19c1e152e55bcfbb13e822c9a2419b44f39dd24780797d4daf497333814faee1b2161f0dd37d040a77d608dca042bd28f11d400fb2909dc270006c6cdd9836bb09df680cf66d9e3a783979ee7001b25f78913d814f0d344e53ef86521263bdee2b105d0239ad53a8666141153bfe20f38d338ffb1d05d7e59164be38ba14ca282efc1e7d90c2e3c30cff83a7ccbc99f40aa644776ca8d4218026dfb1427c6a214403d1433425fa3690f4a9ebf9f6f879578cd8a8506a05bd8fe66acbb8799dc14ff2d273098914d5a891cdbcfcdd880a4390318437504f7bb7969514e57e36857d78a98dbb0ee520037075842310fb7fed3400ee6af5a4d96d219227752272860dd4db9dcef922744d52ddc6480f394e1e26b50af4520efa2e436a7968da65580199b5d68c01584e083bb1059c64c56f3602aa832b6727337b5b5bb075dba57199cf9e5108cf460befb386e99dbcec1f6368671b07f365d3e7e63bf8f1b5141d5f3bc18f982a881157799b260ca9ded517ccf9b3bd5d2c944a9ef34cdbd54155ac3e9dc508f8d8236458a0536389723784ecdc874a87236448feb9340aa8062e228463216af81053c072e70998105372431f1d52188232f069e1a5b000bab201e4796ace4f7e3d977ac387303794419ae2064823a5ce900ded856ba7e6bb8d056906c7331df6e13491d32fcf7b168a3349519408205e13a6b94951adcf3c3ab933bee2637926c497ea284f3ae23c39bea69b542f78dbbdaacf58405108f8bab26e48bc02504726cdcb9f5136e425882ad69a5491ed8719599a2cc0c74fb645bd615464e50ff8c5ce6e13168488c468366fe89e21adb07431e736198cc7d342de1c37f5fe2667a2c8eb0b46892d8a367caa6dd08a701c41793d30a48a8bb9e2b671cbec7464e09270e080162c42fd553cf81e2095e2b83ea93a07d18680dc9025b2b021c8230499858bf9cf09bd0c27f95538c3e0030822e58811526cd3ad3a5e8db82113457494bb1d65b977285f8fb5455f1fe889b9432ffda32b1bd4b4d9627416dc4f134fd94975268b00d0e9d01a917ba6989a1a2c1b78e8bc925fbd871721001ee5e4625d5e97184fc894c4e51cee6bdd35db24beadfb640f0e0028b0104cb3931928b95d1bdb20ff6d771a86668214b64f6019f2b4acbd2961d2ec20759a16fa81ef6fab5483e2c61d1cc3b155a6823091a883ec141119b393dbe55d04f6c7325c507192b603b95787353b9f355188a9b5342d07c9d2c367ca30f14e1c7890705267931ce7bc6b95ef8cf3ec2022d266b1d291405c63cb58b0d0301e14b6bb1de494e7b62e400a83965ae31952e1ac70ad3b1c7f41c284b09f8d811bf238a2bdac431f742ef34f0ef35c4a42a3e9759d5c9cc9483a1985c4cac47fd0dbe6580d7770dee8d7e0aae4df44bc05db386b1b7265d8ec8e20a50d3ae51e2bb19d9ed14ed623aa6b231f9e29e9d4101084e834d93af145a7290ec3b55c85583f40447f12470da6b2ab93c381fd6e88e89871e6109ad4e103ab83424c968746f739e44c4764e54457e231034b91794f9593f9c65c715f8d06f5eabc811ad69ad22ffa0f12a84f27f2ace655644b328af564aa9b54e7905f4d38bb1df4129ffce20dab83ff332cc5a88aa857e31e7ae6123424f1e5c9d24618826159263491c86159a739e6ada2dea814f36bc191c892f527002c8d32cd45cdbe5df6ce4b481f5c82b1931c240e01040a0ec9cebe11659f4c46c6cfc87bbd5cfd52365901cc118fa7ec3cd684d5e28b5e5a6960d73cf6b4afac4c99b6d2743f693869bc88d600144c4f4c00ea1acfaf6591878c3468893a61d1908475922f9473c66a29f1325e2f155f1cdc8f07985cb33672769020107b89d2e4e34dd438a0ee62cc68d0609b0d80dd51cf541c4603a1cb2829e0c906b290346819e063470c916f51db4f922aa8a913c7d50eea6e4d0c2edf7d7166e2c56c8a791b7ca8d28f6eadc7ddf943ca0fecb56c353d0004defb6fc19901e1ead25505c12678950b30985537a5ac98d1c51c32311b19af31ddbe8ad899006af2a97f98e785dab8507fbd664ec0ebde03dae61a82468635a7e24ddb639601573914fd44258dbb8be0c0ea86ceb26e3a9fc01f5d42e33e09b11b6541d287719d6ac441d690b21182e13a4c9d1e75e130147d2c02c74f5c5d3a01d968dba3553a6e082bac447af9a075c8acc872e123109011ec35d657062241f4c35a8880acb1b56779121392c6b085840ae8d15aa1ea4b035b2143ffc6708f1bf7fe4d715a4240306da9a759915196a2ea20747289686b94b62f9de047cd0093886514175c61d24859e60442d5260aa6bc8810cabcd16d2666b60dc106356e879d861f286f69ad150916e9e8bafcfefdd79a0d36bb8e50a1c831e4792f90a93c091f80b4658b6296c2ab8712ec442f15a0fe17b5fde1bfc24f64a514b318dadb61d453c74ed0329ac72a7cb299c157803320d3b9879853145e2daf99d866b90a5821e331e0e0151c6e4649262415489ef81dcb90c4eacbbe8d941399f9e129e2d23c3ec44325ad42a809d23700348866ed425da81eeb7cfa5f98511113447d4bd749ad7045f49bf9d893f86f9e433c9a54aa69f0f784848cda0a89fcb7610733e4e15d0545c6abca6a1740453d1d1a7ac1e4c3bb0c303517bc50800f3b73856fe843ce2d12c2db6edc86cf6895ab050fcce1001b80cea1369ec3eecb519ae9de6afff85ba69df48718124202142664c4b8a7f226d1ff119adb9d48e66db2f373b91bfe4d23566d5b1bb85c4efb8478efa6fb3da18dd1fe12964f321c57a9fde78e625060ca85de69fa9869b0a50c27c506f48df69840d3215f9a6d33ec1afd20d173956f373b16f312fe8ca36014310aa4c2206cf9bc831d085e3c1533f52dddb82698423c6a97503684203282c3591f66bd5a4a88d98158ae9f8c8c01e883cfd38edb5c9e2ccc260e88d24a89e02b613447a73e83b1c5825c5be46c2ec1774535eb81ffd377057b4aec643feb02adad28c0bba34aaa2f9625f3466626f0db1afe2fb4037589a6900d6a5153319ce6e8430f830b66ea50577d37269ff886854c6fde2813fa4b8f8124eef8e3a65e2bceca3a94129d94c1414a3cedf97962f1857aff280f60cef7cf558f0827753a126074f436b3088f5e30831e7b334dcc3dcd877578abca48b1b0de7ab34e49024b24daf79c79f8f3271effe790e3a0c91de035f9a01c889bfd4c1c0d2c1bad85374b8303a738921f9b911a8ada411e178cba0a4ce684614401b51f7d881e073d21009fbfc7613d1c4fe10630013510b0c18476dfa7f94e1fa7c69f19ad2931043a070e3aa0cd2e3e44654988a17d05b4c0142d8a9eccef4fe11de1df9958b3fc2cbd669986306d1d3c6230a93e88558e6b055843ab9df55d72a1602ac2879c227427f276b5c11c2c0078fd0470d05f4f63d33488ff6eec25b2d95da407f087c606cea99ba11bdaf3e6f092bed4c21b86ab17738c4380ddbd95b9a6018322b7304651a93b31d6962ed561e46666542a9c60891cabf50981cbe65b31255c924d56393a7320772e6ad6c006a740700f40eb9f036abcf9a65178cdc2169f50b9ad97e57e5e3800e2df933341a94f843608da24ff00b73f5cdc07379fc401eade22053c0202813b9aa43bc1d10b787707a11d88055dfe6c6abd743b4ab7ae2a0a094f5a01c276d55d96cf0ed6179ed9204d1aa6612335fd3d843ad23d8ed53c64af33e3c3c05117ec05577bb05ce963457d4a1017239808c4cbf0cdb9a5e5025f96211f1e161a9f2d00b77557b7c9714340fa89651b00c8e028bc3231d8ee74da2d2b11e25a5c0615403c1c89434bf826d58a057282d2a39760744864077603a939ed665edfd0e296476d276a4509d6a44bbeea5206a8c08c5417d34905515f738a9aa0c3d78dc21b5f5d9284a421c4bf17507dcaa89640b9fc5947f0e0317ea6e63367b543ee19a5816425cb3277da6da522b90ac88ccc4b7164fe48d7aeb6dd8f8c9862477c19b32b1d0e0bd437be8d5a66291fda6ae3413cb2941c89eb2397d91024dd8b1c000e2e741d0381d88acdc63695d9a58e70af5e72abe1a54b38717fc57a519f7f9e87310555f9605326a44754311e25a5b99b88d9488083d0a4833287e6cac4ff3a5f040477198357e8631f15ac5458af88c765c1467d68cf77da814443f5db5f8757010f52da33c2fb62261290671acb10c87c4b2c21d4c6927385925b92da700f5bb6e7097c9884b1a54e57050f5d783aa09e11c0cc43e5bbbd6290fa1e26ea4e3b220997eb6bb8e80a6d181d8b7f83dbb33b304e61c2d8927c958fe5e82d386470434ed45fc607448ba9a1418f71c82c6607b56e4415a90ebdfa8750a18a391365d19f5ad7ac37b79131d3e6a2b126a4d2da55a0d682184029806ac215de6c20ade7af259ab8341ff734a5fc3dd5682b98f17778bb31a7f2d9f9263c55e285d5d264ba4b871fb3b8717348e58e7e23f95bf3259da357eb81a0a108954d922e3d57db86f7a0257ffa65ec6a2222413f892d901d03d96542d9728f1145133af1208f002487ab83af9d1eec63e2557b5752db1f81716ebb6ce9b26678fe8d209f828f6bbf8d299ad5b0ab3d6b82a5b8525270dd567ccbb19a9d042bcc61cce94223876e141e51929fb7b035822878009b8da1899747813701314e0007ca455a0e393d5a933af0256eeae6465653c8c8be268e131b70eab92e8122aab19ffd3508c4c8e4996347256e6a2e8198cd4cc7e717b6035892e785019cac219dd957bec48e6fcb6744472ec90e7794136a5edb4673ce6634de0700f8a8afe0d5c915941c0f8307297cf5991b2ae1e7cd6fd640ec6177e1d03756eab48618ed21ded0b1671503655d289dbc81f3995d6fdf3a106541df601c18041d29b4f0c7492ae537d52b050168002c3289056977ff23fb553d88e32078edd71289107252c12b1e018e05d02e4530fe3d6f89ff520d0e59c580b9bcb3d68e8868ea834af13e60cb15e2a699d2d4b8a910378de232e4816aed227197af9612516b031b92d299a1c0fcb3828b006d2557ebf89db9eef4716eb5d89712d959f74b1c5d2ba49f057fa73c4d5a76e7f40c75fb8c570ef9d3fe8eb5d6a9db129c3d75f3b2bb9b4c179e1621abf5bb395e32b694b8fe7f2a8764b72f237cb6477fbe80722d9f97bc56593f79af73e5d0564d809d1cda42b884a6a8d22a574df84c9d87b206b6295741274b86f15eb7a27c4014d284c3319ce11bf02128abe632c8486c3badf864186c1192e31c50d46c9cbd6f25064affaa75725079557bad8cc11d6ebb280cf2edca2140416defb6b3196597c970da3fc152f6b0576506942fff51cf084834c2dfa1a6b0d099dd023537c129b6514d87934a4f96cc5b650815cea81d263bdced0634410512d3504c49be0f34ce522f212412f8792b0b8329bd3faa1c9b19f08d1f4a1e44d6d5b147ee286b1a1ce57446ed58ff17675160584872f4baa750875de18923f96280474f3fae9114f0bdf663c59483101bd158631145a64a8ba3c556b98214e04d3e24d274497b678a6b44edac2e806fe78bf4a7ec2fb8af68e7c50e2ba6931cafb7fd7f933dd60edf0ec510eb1994e5eafcf5a3c85e6f5334f0517aaeb4f184fc38712433cfd104e7b88d35c78cd6ecbef99a99d45d2043b0f51c275525e2ca55f134876d374363dd7261708564694a4c24f75cd1f0edcaecffab7d9ddaad4428bf6ed3c06fe7f254c5f6fa93143da415708adaa270a406959c3511caec7e72093f378c3968cb1819363b247789074abfd74872e3f8ddaf995d2f9861a951b77afa225b6ba33074a39aed98ebb50e9f7ebcb509e72f1a77cf00aeef0dc68c5ec37d7533d97199e9d9caf53f78f5647e83274c80ca781b303ec29f6cd23960314f532e052d7660c51e342576aa0f59d2ec1bdf86eeff9799719259b3360bfaa2cde647f84ddd485dbd22481912b55f3b980d8d5b26769b65dedeefa85d3ed93022c8552715a16bd165540a711c3152adc43d1b459a3339d94458f74fb7ed6953bfe7c557309f3916b8e7ee9271cb259116954c48cc2a36a0edffd20aa238b5602f2a31c965a62047ba85bde3242d77c80c397c261ac54c75642d2cef69568a99a4a268c4c781e2a984d934199f45fdcdf2c5bb4ddef920e65d56df42cf7edc2f396ebe33fd0fbfd1b76d51094f814a0ffdc042357223743e67c6b36058a7a8f39e3c94178a84fceb1aec103cefaca962859babedbcf2658a35796dae48296d39194b65a3c7e8f73895e65eb7da8a90cf786287c2e462ccd97d34a2ba20fb71c949d41f517308d98925727ad49334a9669def09ff11b5ecc8ca34998954737746cd9e022389082963a83c349417ea372fcf479f24f7578afe8f6e6bcd5ec00d9782e8d77ccadd600a5a811c19844bb00b3a78fa49450386954499f6a0888f2366c46de885b7e7442a6cf7101bc0c3d16f8d88e518c4f9a38e9d79758a9fe7060d6e0777d76fd4ad780a6ba378e0bb9730d44ea50860cf7cd4abf7756f4399da76d30c84aef252ec102e1b74fdc9b7e2192168febe3260bb8cbc19bc143f21b01193516746962df1d97d9d52573e91be3589225260b1a6b20ef5c37540ffa6ad494d47e8df3e7672504a7e5ebc82dee922d75677a57d54a07aeb7020c476e6c27a96712af33bfba8c71f57045541ea608b1839fa0cb6b22b63dc821efcb3c1079c73789aa7804724316927b60d888a105c15a0876e9056751f7de4c928e6f9c71b7e1384577293693c242133259f5fa24e13ebf113463ef54f5ddf8b09509e41e67a91c22a0ef0df144f94976fc3dc6375dad01caa886fd7033d0d7010409da3145663640b980462cc3e9bfbfd16e859cd652286e6e14ba1bb86aa49f904cce1ea009c9e45c580d430814d2e55e8efba555d0320b605ab50c333f1b444fb9c38f6fb8a93fdaca058b5c1b649d889478332df77af36c8accb294f1c49aa01fd6a083bbcd8a43ce6193eed2aba936157526b8880cc13ce0d60fdf8e384b19aee69261697f4c2eed472d93f2f9495434fdd617d80e806922122e161c9921c6ebc6ed7fc5214ada202c07d7e180c541c32b45fa0689d96fd01ae7351a9ae3411721a4a5223e68b048b4787e2c3bcf101ddd1e0ac94f26c2def2fe112c0d163ee00d84e20ab106a052034cb4aa3297548e680cfc4673be31eba4d33e63ff6013cdb12a44a3a358d8ef2514bc349349d02217c8cbaeb24c5cbf8203477d7f39bcb384ecc005a50dc2123fa257c7f160e2db29a792c153041bbdb6d97de2c67af31848099d4a142340ac2f48e8cd213e158c2865394377be569b78b2bf4567e366a431333cf4518986686d8aaa907406ea3ad0530a1f37b009c9c95038620bd3d62a317f0e48ef8d39acfa1904071f6fe946cd7d69e0a9c5ed9d32f14253dd870ed50db6b395f0942b9299035432dff02e32e03fe453e6663739e69feb53e25336fdc274d23009c9997779239b4c937a078cf9a610ebf6e0e38fa5d8e2ba02984fd1db5ea21254d7d736a9058fa44fe2acdc060ffc8ef8fa052d673e2c0d298e48d8b4d98219d7b6f90148bf439265fd03122211858fc1ccb5d8e82db301d0feba90572ae22ab8abf43333e2ac3fe3055fe9d0ef12767f1cc73abe4b4c05024dfc344a4b23ba240ec80d1cb25b71ea504b89ab56533cfa7748e7669d5bb9d47c522f819acbf5cdc8d8ff039c67f48165735957e5cddba1973eaeeab292aa6fbfcdb385ade9bba268c6dbc88067c6e69d7453823c187b7749d1ff0ef9ed756c7545160c2341b0b76662a59a9a6e0534f6966c3037116e854efff1dc391dc603bb3486e614ef885691e9c7443029618fb213dfe2ab17f94320e07f0213abcb595011e063fd743e0f278f6cfe1a6cb773a320e1a094985c3127fc7d20ad40521a02f577cf7dadf633cd12a340fa09bc8a97f121d42a51a6ab9fb19e998bc4a5eef7f68793d6873096d5e33b67fb847d0ead872c70b6b7d1e1feb4147eed9ec26faa212ea96fd852e8018287531fecb3a45249fa254a165799d0e45d7b9cf01e662400367f401cec5f2841bf0d8fde4fbcea783c897d46b6b19a60aba3c92830b274f7f2e53366b02a262e73c32522f5694c2286427001154575935556bc726be561605328b418388acebb14c1bd10967bba31bf4816e0cc2af1b1dcba0fe1606f99c44eb83e8d8ea2cdf63cc5706a70f429113f1dbdfd2a7bcd809589ac2c6be06e4987629a387fba133b8a93c00560a5b5b2bd132b211862ca11edc083261665547a9ea7a304db22ff3fa3c3d529d1db09447da231eb07e3f953cc907b8a4c114a073af45c3616bebb3abba1a99fc2442f227390a8d90fd69ede1f14429f5c0ffff019285455091eadf22a7805284b631a741d79d5295f68b4b23a55701104a923640fef17a4b00c770bea5555677219420619015a02f978800c76a109595ccea6b9a0aa436e255e3bd8d9eae227837e7a0a6f3527657199a45abf161554cf3b424a201d797037ddf23a352bbfa8179472b6c4742edb6cc56b2b92ae48f1fc940505858dec603957fcd48758490502be8d4ac0469aed8e3e28764dfe1d1200c45474f5b7a9971cfd2f37723faaf0d0188feb9bd4565e5dc81c4e5ccbd42285e4b581fb748cfac10e9a8f12d68f12788d3caf1c26372fbcddf26fc5ed9afa250f581785183a64b1d256d82ecbb0e07b92f4b78552309542b65f39c6ac3e24252ac69e835413fae5d364f7ab1b83d023928f766c7ec4280250447e88d0996d7df584adda8304c798428d9b37a036e87f09253dd166843f270e2e08864ba826653f10b37d8025082d125a1f910717c8614cb3477ce90d62221692d4ce6dc2891dec988756e92a6fa0ea9ac7c7cc82be6914948e3be05b4cfed7d36cea2eaed16387d443dd15270d9a39ed5a95d73828d052d24315c576f41c7050f113d2b0f4893ced451f36f5847d78adc7c6ad1561bbbf4ae86ce2bceb1e8b19357095102146590b1972dd4aa8a688c007f31d5605f0ccfd861bb608f1896d9e64c23611e19f1a3e6b5f24c9a094f7d24fcee00ea8d90f432507af3abd181339f88ab9b64bfa5bd965c3bb6251851495e0877121ebe63edb4e20c2521e78f1c17cb6c50aa68668b4200c16fab8697fce5ff3731641ddbd768571cba3a6902d889b92019ea05ded58769b508f864de9a2ab00f9543e6509013cde84f5a44a4c3253b95a105c2c1cc81d0bdb94c0bf23d41891b0bf3def0f3c817d652b9a7634c0964cd54b410409beaf7f34a439dab1b6a38dc4a25b476a97a52dec79a5ac2fa2d0ff922618907b8534cbb3a9b927eff7f4839309cdd2125b52b24591acd634855389879800cb86387a0d3311cc14defd9197020bced826c33fe651a6d0029b8278b32ae4778eb2d934b6888d1f657307c99c9788429027f7040b71fa6766633d8bbf86b63b9b2dca4f93ea3d8d101422d8fa6f98b0cfd5d8b13c30601025de5df381b3b92fd2bc179c4f1587d8e36d2d9fcd53c5c19fca13a44d44b8d090e51b9f22ffb70bad5a0fb0e75e7a622f967333264437d5d54ad02e17d50495871175469c0f0e57c62fb36bb79c33b4922cdf5120178870c314ae7792bd1b6846ef6176d00ddf82e40466eebe8ce0d237e8d687d75b4aae6806031d2c9cef96bb7293fc4012a1ea32f4bf35e0b385b02ec2291bc0c201aad444451250e52c38f414276a3f1e4e3c563bbbbd9ca36fa982eb68df53f96647d9fd328a8ee41e46bb853a2940779400c34a4600bd501286a0164884ebed36f2d2b4c15a0cb8a7ccb2ad7572e0500dd241d09e38fde7a578f7ac75b0b79a33083816168c681707686b3601d359f917cfb9bcf01542cee8b80cc7f1e20aa67e7c2dcf3419e20e019f1a3fd6180989340e903d7b48cd368eb1620c5ec7bbba4b89c5e92a749683c7d40e1d357c51f91da16bce3f2857255f6d4a03df156f78c38b61377ddcd878ab5274891b9b3d5368e05d8c4bc938cf5e0d08949e96d64ed4734995b96e826f7cae171df7b96e6a6d40ecf689b27c03cab292d023541612cd8a23a082c09b4bb6af3a0ab183733f9f02f9e374c504f2305d784988268592c8ff5081140fa8714587ca6505999ea7be3692e3f8e00f5790ee7f42a383800783d589f8eed879cad191dac46e8a052b5d50307d41cdc086c0bf3b5dd057c6229f33bdceb2215460a6673aaf3bd117173f7d85be46b903f9f7e903315c82e3a009c041f58072cd18231c30a913ada7e667efafbb2b9b0674fa9bd748d23e25ced5b1a59180b28eb6d7504e34db6aa42864c9faf9152d22cb46a5380f597f8a2ceef084fc508fd756c2870dcd3c2b04f57241b957a22ee024053b56c9d23542428e10c5933bf720f7fc8bdb3dc1a51990aea8fde0506595ab68fa4becaeb9ee6af45ed9c35a6090cd3c0f3199a51c6548197380ec3c0234627ee5da2cf6c8fbb506ef6abf8ea8f5fbda8b25dc70dca53cedae3d3b020df25dcc104bdb2c4b3fab680a5a6ea7fe0084581ac4e16213be850b7407516b423efe75a19ff53c7219e02f04277824b36c85035682e0aabf1fdba7ee3c8c21a32e475b214fd98e1577d82cbfbe48b5a57aa0292a78d90155aee843e7ccc03f7188144de9ff92a8146763e68cbe17d17e9edcfe6630f614c2a9de8dd70920472c2d8bd7d4c231b39690072393144b55a21014933aca4a3a7e214a526ef433de70f9c3f893558c317849216566c8c0d9bed2c502cd2d2f5b09a8640b43543664099a337f0d81dcc4bb17441d05012c68ce82c76003e7d88c59cd7866820a45b9ab2fecfea30362d4bfdb96cc3b7f96ba9bb64617d45b7ab0a3a54babf670a8b9d1fa347ff81adf8cf3708224451246303b69325197c7b458968447173e89a65a901ccd2338dd4e378bde46c06c3872c1020c56c187d6d96f902adc30a2db9f22d90941bb382abd0e715cf3fcc83aa40ed785a27612a0a9169a6114ef342d886a02518fd05c36744f9a99d42104fa4ef7a454201a16251d8dcd14ff49ef4078779fbc26fa8a956f29f6934999a7ed6749f09f3431ffc311dc0e00687ad8be6819728aadbad3626efc675c885f9c4b793d0699bd88f6d55ff45b6b8d6c4208d9ad1142f6967bef8f0a8c0a440a2d377573eaf41cf6bd99d39fe600207c3a959e61ebfa943e754a3703e134ca3e2d88f6799cf8c3085b25bb448355d4473404213c1f5beee9305bd4d3e571bac522813af7a8e9446c5d9ff879a805d1e22750cede6233c42e3fd93c044bebd29eee625b1ef1c966d4adf325eba33de00d91d9fac9ea7eb23ef3113f6d3e33dd87a9543a4e67a02638383b67f3109c1d2e814de29fa6f386342386e01f19443b0a6bbf341f1a7c06462781346cb090495cc2859a61a7ba46cd70095cc2e45846b90ebb9237079a4ca3053172245e20a824ae1ea6146ad6a54502aa828851810da668129493e35ad870052019c236d81c97891ccf716a05390423d62800c91086f16a11a4002443394ce4b85dc477611d4adb05a6d3820004f3d2fa8b5a10f97955105b0a4032842d102800c91096aa1e54f00e0a403284a3c0c321f8c33b0f7185932151db87a116c45201163b346108c2f14226b00bf57dd449208d2a71f578624c0c40129aab360c2ac58fe88a2495e88a265000a36085a101b8a076f81131b982574cacc85891a58b8610c2f7d7dd8d1b4208312965b7b4810d8f67731d707c42cdb06e494343d3e30dd1bc1df0fdde7b106bec616f29e7a8e708bb64cb117659d3095e5068dfebd1bb461226da3c8a91aed43b832685adde108e5de510576f68b4435c45191d2432e016871824aac20418c21494af4fb877e00cb3640ade01f7b11808e18e4119b81f6d80726284318a4a052f91526ae3003060c211960861890699515144060cb0c0f2b242b96d710330b690820c337eb04617a40e0ce123a282490e2f68b2c9915442136ed88109720a966a60298fb5c00b2c5f532d180296ff09b024724114b03c4d0cb07c0f799c298c80e581b0004ba2179841450817188e61afc8055520e2420aaae0a46752564cfc88aac8821fd4e349c9c1046f9c81815471a5671e9687444d5081257e445530c1f934d10b4455b4a08f458a16f3b4b3cc018646f564a6f9d062ceab8aa7f91ba2812d03eb4fd2cbc22771051357d6537165fd7165fde1dcef270d45e2b69e1b4a5cad2c0b5a0b43cd078c92daef27716541c1d610861d7c84d10a8e39d6e5d0bba1d87a68e00c6518d85aa181adab30ed8c423bf18f0bc349c4022f70e30cad6450ac5b759525d6e476623d221620c1d6611ad146e658d04a7b8105e79319706e293fc409bc9aecd623f072b86edd7a059e0d14221a02b6ac28d089a72165868a467e5cc88f0c2b318d88255e2172c1b99db8f410d4a1a780385827ea6bdde416035b17eab763f51467fb09b4e2c5145087c6c1c3c1baa5851d6660ebf1e6d5948f81ad63570ab6b2f7e5e2e6a6025b8dddc056775f1db3c495755f5ce50e4a23aee295b8b29a495c594ede0e8b4993b8b2bedd5e923b0bb59174925612adc434620df69caa4fe24ca4d236f5b617b1c1c0d6ad7622013590b493d595591ae9b22e2b3166756824336a3b79126da095b66aa41604bbf2adaeb7ba8c388231ecc22bd04a5c59584687a3ebb01f761b4a4c1aaac42a7cf59368d350da490d10a125bcd5c3d9c50855086fe66120423d78330f5f970a5f51e1233e6516949211b0dcfe78b873a3c2671888df7d182a0c4d4a26aaf17ebaa93a9758a460c188c6d83a098481495c3dec047c23a70bfa895f1956c000d351f6ba93e7f02bc30a2618e257861551606a476fc73b569a41d51690e439278c4a133806247a3739f0b3a6402ab4a3efd19b61c96676f4d14562f68eecc4505330a96748a445fdc9be1b437d7f2a9ab87a7fa7d9a17bf4b0f45d56f852a94afa8ba417492f92328c151542a208c78045a7c3216f26bb09c34a377b375ba7194e213a426278dd1b060f16bc161695b3308b38f33e2d6cc205e8c381c4d57b443c56485cbdc3f7f2a352af646088e2ca1594092a90b6c97ea9ae0b880f4262cd85e79340c2d3a38a952b6e5c358f488aa2c7053cbf83756932bb02c3751569f4f98226d87a44f46242a8245b4f713581cc0b99c76c2aaee69c4f68663185de259419349324896f9575acb68dca8a1fcd20b08f3eba75d533f2a3439a9e917fbdc252c5337afc48c583bd8f5dccda54cf5cf3ba2c0a23248956f04416617959f3b126571959532718aaf17da41f6f4ef1908ec4936e7d2912500eccf0a927ceccafda86de131612b2e6490a9c7e9a8f232729deb3354d8446874d9e4fb8c7e613ceef511122ae260f31d40c85e6d0bb41e1794b08cf5b4de693882f0bd633f36d5bd650730a4f6c8a49f19c38ce804cb0e049e5098c82e73c7659425401cf0fd902ceaf0a9e9fbf35847121857b38b1458b6a0403de78e38dbeaaf79773baaa5bc37001131e24426a0655c38f4809150c8513d8c89c39e79cf3ae06d0849ae147a404096220898254f285149a8a284480c2b22cccb2820649b66006319cd88113b30c455041bdc28ad904138ad044133cc05907ee56b203dc444a6a804df8112911c2f9780afcac20fcacaa6403fcb010a8837c3c04a08df5f9fcaa80e31fdc423ccdccc3211260f2e83072d4b8823624a11e2179a2cd8befd10c4f54f9c2cb627d4a396f9d67de92f3d612d69c9772a2b0a8f9f8e54cf97965c7c601a5ef5ac822fa3c13aade97b86ebd2f10f2f33cf27309f9f925ba8897e7baef4bcc2b0fefc2047820101a80081e5b9787d2baaaf7ebaa786cd536f2aade0502e6a42e2576df33ef47e655c50bc4eb19a09c0ee3bdcbc50744b1c46a02176a8042e87ac2075c80890213c506ecb73615f3447dcc13ef4f06460984f0415844dbc41c0861eea109454a2a8913275c91860ccc09aa8452f6243a41152af386de180d9b0847264355961c21870952939cd1abecd9ddb34fd6755d274b8bd14df21c2ce71467a2c47deb17ea33cd7330c4469f6234241af8f20218535dc4c6d1835b69f992065624ad69cd69a5661a6cf3549c6ee0be59060b9e161534984736007eabd5dbd177e6593775236eec4abd2ca1669a49d493cab48269a494793be02d21ae8c8c9e743dbb47645050ce85d96a5352c809ea15218c1d231ab4b18b073be9d6eb395951a5d7253d768fac7aa67948bfee91a77aa62f311febf3d6c41093304af9ba2d2b81dfdb014f236374c2bbb03c8221fc91bd46bfee91d46808d2b17b8484c13c51e3e19c87394fdb99f71de1189c8842e5082890b1f0fb2a6641f8bd205ecfcc0cadc84f2104998f2a1d203ca242fd9471680634e22743515f54f879416074ecf31a45eba35b1f5d6b5dac67208c308a23b2206cdd7e01872451dbac30ac53a91ff6256a4b13e28d0eb51fb26d7ae24cfcfbeac925d7cd3ae6cd32d6a5b2e45581a13298a424087a4410abd74d829051543c47a476e592205e1042b4cc623df3da46c5939d66727b966d17d378e8b728593a69084020608e76573df3707ae63db3a49324255192b5c46a3224add83ed633afadf44c3c86d59a4a5d2e71228b52954866c1f17da506e1288570944b969c62ad41a44a67ce0b8425118e5912e18adf152b7268a04f26cf11961addeeb86a29e59452cafb1e4c0a0c35bfa123642fc13125c12032019109aeb0cc2004cb89276343f366e2274da5897d0921fcaaffb85aad62c72692f4f55e4d05164044db8caece9be97717aaf8f80423019f923aa2a8435cc050e58b3092040c223ac210ee0b0195c41a0cf715aac4bf1e1fd46123594118ea8005cdab333f6f5f46f5b86a2a389b58f72d2c6a4ec15c51a3d03c033de207c3d7df0e1ce094efbdfe7c4674c767af0bbbb0084f710553576f0774a3d14835111452e0fe293510c25272f1440e929841831f11144db05054940a23e445150b691b9cb69936ac61c31af5456758f35d99029110ac74510d923c09a36c3806ea0ad10ca4d42133705ee16e32832c38e7d006894993f8c48ba0a049069113f990f70c99028614dcf30c74a34468d5488648892b1d54221ff2fc86288a081545a5422f66a23882df0d36a8b04752e9b9b2888b22fb1331913fcd07912b898658a9844a5153a82280170b127cbab5e225550850851b54f3cba2f6e592b6d1c0fb43da6603ef4726ef86c78d783f2e8935079822d618e034ef4725b106877701de3bde3ade0478dff03ec4126b66de875762cdea3d80b700de0178cbbc01f0be6ffbfefb708c5863c33bc7fb500acc5bf5c6f17e793f89352eef9637ea7dd824d69cdea6d794debdb9f7611288040625d1361e28e27d206dd3010e1c0319c83e2fd2433cb71b1478ee2c423c3796093cf795209e3b0d093cb7159ee7ae1281e73e0302cf6d0610cf4d45c8734fd979eea2073cf7183f3c3751059e5b8a0fcf3d14e4b9c170c07347d1796e2f803c37941fcffda487e776e2e3b9b3e0e1b99b34e0b999e43cf712fcdc53e03cb710039e5bc9029e3b89029e1bc90ecf1da4c37374e3e6396649c073c4d2e3395eb1798e69d43c472b08788e5572f80f824b2592c915ade30d8c05ee297027914d6416d2897cd22da3e8a0a3d580fbf4027f9a0f0b1c27a29ca85916f5d83c04f7fc1c21821f2b027b84c5341f430e7b8825f21efb33311122ef5b3d43feb49e2144660f914f22456d03894c216289a888101912713f295e44c126dc9f415349b4a1d28c9e4870cb3370a781fb4486bc48c4be777b10b1f087a2665934053ee03d57e9ecbce73bef391127e27d6946ace9795f52893517789f52227f96c8870c1972229eb6d3f32197da4ecf890cb12a2bf46422fe13714fcf909b81f0900f21722831ccf2c10b43223d3d440ce979d47c10714a0411f6bd9ecf887b3e7bfe341f3dc7897128d6bca138462c8a532215eb53e2e081861a83f023c24a2c8b5ed14b5dc05ac0f6584c07d461059f8e212c8f53c01ee04258037c0296e641581c2e015b80f3d81d8f80d5710858021c087bc385d899efd8d57fb002b80f56e6412c00ee007baf63ed81d8ff87b5e13dd81cf76163ce83857903acea3916c7b17d398e4d9d01d6e50bb02d5780457d077bba0ed6f41b5b7a026cf71eb6dec672afb1db1160b5e760b31bb11e78086c112f6233f00fd80d3c5b0cdcc76ae020b01db8119603af80fdf17000fe00fbe3e1015400ead06a7838dcbc81fbef1ad1af8014dc1fa2ddc07d0a088105f7277005f7834803f7256005f779aae07e04cec07d089881fb40089982fb3b0f1803f77f20c27d1f86703f0818b8ef8028b8afe305ee03f9d18313dcf79105eef3d00026b89fb304f7f114b88fc38005280009eeefa0c34d16dc4f0016dcef7105f76dd2c0fd1a2bb88f802ab89f43df0815dc0f4111ee83a0ff81223e3250877805163c6c64f276f40f60a3016ca4b111071b0b60e30e1b75d848000bdd88abfe0d166689abfecccac22b71d51f808502b0300016ca5808806b2195b89a62838563e4b090c84229160e5908060e0ba3bc58e8058412577d1727fd53df642193b85a62e1145088db2c4c125748a0076c11d648073860717aa6bf013ba467fa1ab019b0af673060ab096abec5e101880f4278ac103d6ac0c113ab888878bd9042682405212a707e439fefc1e00753547bbc6991cc3e4dbf9b8bc0e0be6f0c6598c54545d1e04ac8c2c6bbc11a2690568c11bb7edd376f91152e63656173b6954d81ddbe0b9bf3bacfba15f7bb4f780af20896f327e2f8a69453c67f219352df7b6f0cf5bdf71e15dc126adb1045edcf29a9d0276574604a6650bc8c31c62069d5c0e24abe6ecbea2358bee79365d0d8307663ddf0411c610f5134d210d2365d93a04250779190b7a3d3b89e15d2f5057677bd8a7f2f25a56525c98e2c8661d8cdf357f79bf5392d879a80e194f835fc891852a1c4bc52cc07bb0f6177778c11c20b8439a194f2fdc84b297f1ac347268c6088f4c6eb12580450c3ea0823129498578af920bcf94891e98b1adf0da59b418d7f31461957502aa9f18d05bd1ddd59d0f7de4c42954c489de8a0eeee182ca1345084b14a7777cb0821c4b02b561182f26e72c044a9199b41504281d10d0c217c9c126d2ea1a07773b32ccb3e5b80c9a9051c3316239558337f4571e38282e5662c5e4dae2566d02d8c16e0c8022d6842368be2869325f26e340a4bca18638cf11acace788324b46346267c3cee2282d14acdca47309cd84f2c2283a57c66548c6509d3938a72029aa25ec9c6c09ce0792690e4c804b71bd83a4e2401c63e2d9cb3c808cf798db87086f8ba2090c14564b0bc3f114b5985d7fdde6b09a194525e4ad94ea0b1ae6b5ed7bc52a8133f222c5880050a52209f50b1d2a0a4bb70325fd558c1755dd7d58515298333aeebba4ea91c40e957199411c5ffc4091b167eb72cfaee7194d3ba3052ec695dd888da2cb10b858d9e3b36a689186ab2634d0b8ccf52ce4cca5399b5cdb72536a2b70537cdb2ecd9bc75842f9b5bd3ee7865de8e770c0b0bce28fbbd96dd2dd3dd1c0c2abcba271a5450f1041b98c4e4654d2a247659930a2aa80882ccbba1b1492d4752e6dd6018e66305459558ff4d1d64200e5d7320928936ab9e78759d0820b3b22eeb9af8a552bfccbbc98a301fc8404a8f39e79c734606556089cd255c9c21e4032ba0200963a461ce39afb07200ec08b2091836afeb92b28208455e010528b8b07285155450640536b358504861ecd8b32c8ba8891c4461d5543da5ae08d9228b102e820610863a02c2007050496208200963c8f880a8092a88d144952a95841f511364c0b9d6940ca6c07a227222497d144e9c70a814540a3c323c2b125a9f7e863fe01b18fec7c3f0f69138107ef7e823b419a80d36bc1b1b6cc891e3dde4c81113f36e62626060de0d0c8c4af56e542a1c38de0d0e1c2f2fefe6e525957a37a9948bcbbb7171696979372d2d28d4bb41a14ea777733a994cefc6642a95de4da9f476c4ae7b3b62ad1cb76d9a9665949248a31186bd1b0cbbae77735d96f56e2c6bce7733a7946fc74d778cef2646f86ede8e688120b490c016db7f79b98b7d788aa402cf48238c33563046932c35938d1f5abe532fafe3964bf0a0f622312c6198d4d1df61ee7258c271214ea71c27883aa534ca79394ff248406ce144ed96d52e6194b6b18725a8c261ef7b332d3f86d9702fea2d371fb7dc45eb01f5963ed522c75136ffcc1cd786f755910e31e9305675fd616cbea05cf2638c375b6f71c0c9675eb3523870dc9bb1d475c9613bffcc693310d6b45399c5690686250c0fad8871454a8653e01930ca29f0f20a9651469730d14aa70f1761791c4170f04843cd46f04f631f1c8f395ca2fd60fa7b390cc4e1637d52cb6e4bb45b1fc2d6551f02142c6f3a7d3a2e8f2d3b461c2381038b0008b7dc92f27455401e6eb9b4ee92bd351f5edef29e96471b9b4d7dc80ff2f1aa508f3f7d5a15ea2d9f2e2e2e2ad405f25adef2d3adb7d8d3e91c10885f3e9fba3cdaa8f3eebcdcba3e2f6fb93eaa5b3f33bf5c993d6a41341d554cbcb2ef4f631c8fa69b21c681c36626b09cd6d2006ef9219f3ef34f631c372f81e57b9e5a6e8eff696c6520bc04366952ba4dc4a8f24c2e6c02ab982fbd09de21958eb2790846bd351fa5d3f7523e00611e67e8215ed9435e97538b3545699b1c872d7fcfc6457572b9b9e2d35f6e0eb6be64b5e3746c92043f2230b2c0f81181a10453c971daa7ddae599d6dfb3c82bbf776e9956996be723fb1359d79a1b673bd1157f3beb8923ff81d93111b7104ffa06ea075a58aa243a834d389d4d242429daaa9d4d1939427543d691c77544bf78dee68e78680b90ac36a4da5e454d1cb03a3ba1bf7ce665ae7b9b9699fdb5595be9d5eb3aad2bb6b73ce394b976aa777d25f5c3d4ed44cf5dcf5a9efae0feab6084d9e15c5a1e639294f9ff2749252a3526aa729a5466f9e534aedb2e5dbea90b0562a99aa8a47b56d5d3784aab3a56f36d360b60ee5923a8c7d3d93429d6eae5dbd39b5996efe10aa39b59236e7a99654a7d39ca95a9a57cd52d54ca6ce6a360bc1735aeda5aacd6b93bbcac2709607e6aa3ee7b5b9693cb9080dcefe340b3129bb32155bdaa0a5adde7c4c927d33e91cc9871e92ba774b5b95f252ed6752f9513feb9b3a9adeda0fd94b6f79dfdc1723bd49a49ffa99e42e49dc49efd65a6bad358e747992563af726bd3f65777a92cd437ed82eaf9d5ad576ee3463b5aa36eeda49f49a768b54a2ef2e8f362ad5764a275d9fd2b9eb73d2acb499de9f894b579e744ed95f46c9cc646a928944e26e5d3b3dc974f312b82f7fa0a46b5c93fab25b8cdaa48fdee4d1cb3c046feff7b0577ba6bb87eeeeee5bb557bb9db3194d3d727faf9efeda54bab97637a7b4a734ed7df3b146afcfe8a411891e27ca3f4d9248976df3716b87d9a26a9c45af8f3ce9509ec469360fc14ddf567bb5dc711a6b366ff72265d2450084e5297ddb3c84c719aa769cc6a39fa9597a331398f497413c1a411cfc301f12366c89a52650eed466219876d22451524a9a0dc36aed95102c6fde9e1da7e7fc66297758abca6ea86beaee10343d33396a1fcede39ab43952da8a9f920cd465d7edefcf2f743cb4f4ffdedc88b9de3ac05bf6d2fcdb7d4cfeef353dba1e754d987503de643e438ccb9d5eadf36154f8e0b73b94fce6eaf36677fa777a76fdce5ad693afda17e3e3bb5aafaee74b5fab9de5a55af0a08d563cea3eab277370bc1f4d9cd42f0fc96fdda6ce66eba3cdaa8dcdd397dbb3ea777d7a7f4ed3831b34568f0f66933778bd0e0d34b41a04ee9be97fbd3b8e5f2dbcdef6697fbd318b583b299093c396ea3dfb296a89b97c05896693e489f36ce1fb8ed34bb59ce4d6a3acf2e6fd3934837d92c049bde58dbc47c7bdd68b0f4c1d51ed850254a15dd7ad5fd10d33bab65aa772db95495adb84b61f5e6d576a5ea43747708181ad25f767d48a7241317243b074fe9b9ee4abbd92c046f2ea4d251a77a1caf6d13f397ebb29d74bc1d75f30a6f3765cc45be74730a754f37df74eb6df918fb7aa6abdf6c2efdcaae0f1704ea70a7a7a36eea6c863a592060eeeb989b2c4f8e0c08737f3eb8bb5ddaecd5769d8d38b3b97431fa4c2f0220bc7d53653116e62a9be39bcd500896ef2c0fcc639e592062ce599e1c5775a8f5b0bd6ef661522e4253ada60222e630e789b9af612e8feabe9ee1b69b99c0f4ef3e8a49a4337105bf2659087eb7acc63a3794b18514304402de50c6166560d4502aa6ac406b8dab98b1360196a5ba1b8bab9ac55594b8d6c08c261e51e191e0080446c90684fae40f1999b80201a51cd4811fa71300dc3db0f683ca8471cbe1edd88050dfa9d47eec80dfbbcf0cfce07be87729b74e424c133ba034a68978f311fcde0eec8ac4126db02ce24cbc74030912254a309c624e81af8871053f31f02312e309a6314d508941356363e08612b1260da5063eca673d13e11838371437e2ea3ea958514c83bea73900e83e182f8482f426bd49ef53ee3afda2c25f7df5d5d745b20eafebd7755d570a53dab4618ccf2b7cfdba4ef36e4846c02b983e1b005fa7a4872f4aa22412121093ae0e1ffabe58a55a9f32d714421936a882e9a30da660fa68032c987e512d2cae6047a3853a1fe3839a57a75fb50d865d8b922c8ca4082f6a1fd6c9c4d588741d34efc600d8fa693cbd195d494d27d2896530bd8f424caf8eb882d895f2d154a94fc6c2c2143170b40370480d4d60e21a70fc7b107a80c36f480d4e0eb046144050344412030504a879e395a88f480854f02302c30b6c00fc8882a006ae740535939a2015bd9b4c6a822b7a3b9ae082de0ed201aca84d9c8ade8d3c4e63b509a928734fc0fd8b54841b36811bc3198a0e864141f8508a5058703148412c8aaba0f8a906ec22f936e3f268a346786391092acc3183c478130a7cfd208470076b4008619535c88010c2256081d026874873060d9630288407086388868d7ead060d1b314e01801803a08235e59cf20768e05c57270802186410b040adc68f280856c0197e444120838c3174bff7fa3df8221614fc0e5feceeea4511be00852e7473818d6e34d8884f50088150b3d7cfe6146762bdbea89d99c04155560c084fac0706283431c5098ab08431d24083921d98ac1da2a8008ba206969fd5b2e2185144e1085c14fd808c3344b12ccbb2747c8185185f68014b595560527d8104f34117c7e69b04c09249bc81922c2d4e0831243f359c5df144ed5321b8be30823005cbb78ebc4a475edc513e4bac5dbb34229f21c6b28831fe000b8635c08fc80745588915ea82c5145181679048a49f62b6188b62428d2f56c69918a56f6adac6ca79398ec35cf5540caa5930b4646b47e85c564a573d88ee302d56c5d3f298c7dc232d07caa1db765330160a65b6e670af56c6953d71a7b8dabebd72df0e9bb45c75943d823accb3188d4623e8248b2c6c123d03afb2467a0616d13338ae6afb12a89feef297abdaae1024a8b77c89969b9e7a916cdbe16e8dabedd22a6a865960484437e824aee0bb1e8652a056c4c646cdd00951acc96f68bb3dd08976f3cf0e09474d08d44f8f9a102d371da751191027568e9038b5ba8b5541e0e504bd2a39344998c21352e42005323023e7741e6ebc1cd3ad16fb7226cabe1c213c3db122315918050ef50c7c07733a1bcd882be805d4806a34196108f7abc1574e5f360ba34a51f3e9062b6aaafb475a19280bf97292c0d7b3fc130ccf83100c0ffff09505cbefbc29781a716199e122193724df102c0bb3ac33606718c11c19e19cf365b11ae6402848ecb2ba3ba8c2eb7a8710ce571bca96fd1a7b855f4a4a8a021a29e58487cf52f15c39d723d6e2ba4796c8891a134a616c39ad0bc37ae63d68682c3a22516ca463845d9835699348f222d11001e9992804a767a4a8d84b599a1615070a94f9868cb40dc411c230284310ca1b82507ae604b5e72114281b271b07e711d51ca8ad91823e1892af320a276029df830729a59472fae00b2fae80670b18a71e7c210c2f9c60f92b05b178011870c0ee0483b34c167ae0821e64c1032fb0fc5ccd396743014f15a081e79c73ce39e509064b1928686079298fd5d40e7680e5bf8335dcf0c60e3d7490419ff0a4084fe842a88b31728024075b20d2c1101429a05481e5e30d57c0428c8e2d886006175560f9141759b0fc574f5e704556b405132920d085a12db8700104aa5859bda096f023728288e8093390b0a68ec4501ad1030ee180090f57828282506059d64b17b294c10c28c0e0820a39d6cc822dcbb22ccb9239504e41d391c30da848418b1c3879c2490b9ca481a5ec01a710a262b32ccb8a4aa8421670d691c371de814a1633c8220d36a802d10da20454b33ea63f3c7f986e66029b8e3a67f331574745e07a4d1bdd3ca4c508d65c5a5c6e3682ebbb8fec10ac2581ebcda56fef9eb24560ede6d2b97754f7d7483c5cb292442265b67493d529cd8ed3ced9ed9d2565f599d58ce86873922646922489e9df88de911462043e54eca6d06cb4243be9c3e98427976d872f9f5dbab93b616edb4e1b9669759e6e1a4a66dc37246cc02200c2d96976b7d3773667f5dd7bdb3e6f49aec8a4e7acaa7b76aeb4a9ba4b9f3d3bfdc69dda5c044bca497a7daa76ee84b9ed1639e1aa711ab77159b6d12ccb64115c323d576ede2e95eafe7aab26ec74ca62c615c1db67692b956a89e3b0e9a69b8b9c30f7c7653617c95e3a65dc56649ee3b867dca418ce454eb9c88907218a3c2ff420064e383d2ff420064de81a90244a9aa494548a263db5944ef3a6596737b72957abaf7884e0face98c9b4c2a63fd36f3a356d5b47650593c8779ae9a78ec8e58566f5a8bc225c4d3f1d1513935df593e58101022666b5e280845e565093c074cb4974db6b5cd54fcbd5d77aa9ed6c178b2b2dcbb64fba6d5bb6edd06bc770a557be6e1add6aad5d777a557775e8d56e4e02cbeda7ad8d6e8db72b37d356ebf66ada6aed6c9074617ae9b4643356afe45ee34a4e933502e21967e4df0ef992bc71f5d375db4a37996e96783bb783dbb6ad94c44f27f1d3dcd64fcb8a3092444c02ff44c86da169b456ae3bd4eab95b94ab5cd7695d3dd16aadd7aa7555b57d8897ab3e04cc71bcbebbaaed7630dd71dcee52eb6ad76ddb5501f172956a3b0fddba8f68e26aab5dadb5abb5d65abb5abbfafa97217074b556f9f221542f77081cd75469e26aabb5d6396bede654cdab70baab55a5ddf4d3c9a4c51928d1549bcae2f88bad964755fff2cef2e0b8ea9b050247bdea4dc3cd6b93d35440a88ee33c2a9e97cb9d26ae68e2aa25ba6421e2e09e65b4dda7dda0665959a66999a66599a65d2f7ba41a319c3cdaa8f10aee6c44e9755dff61fdba4038cbb45f360b81b34ddbee05200e3af0885aec237b7d64616b9af61fd6b50b84498f361fd16c1602938070bc1780385c27d9ac035ff7452cf8c918ad35a83c96f9bd48c422ef5f52d775a5605e62725c8523b55dbbcba9662d1dfaabf44bbb3bd3a57475e6952e5aad2d2dc789f32d3ee478699b2eb73ee763aebf5c36fce0f2ebaae42f957ccb372c5825af4ecbeb297d77140a757af61fa76799949994a6d2c96432cd592acd92d5fe3459b240586a13755f5cfd99ed5a6e5e4209de5eaf2be3ea9f398e136db83cdaa8d65bdbc9f1797d72bc747d623e4fedbccc71658c4ecc7d30577565eaf22f37a7ae5269ced3c5bdf499ba48bfae1277bae6755dd7755d16cb14c6b4a0c62bb333c808677f99f579da4ed7752653479bb409f580bae9462cb8fbe9742cd8be54bab756964a9fdd71da945b8e1d6591803a91a4336d5e4209ee6e321d8542b9b8984c285b6fca32c9711c976d36036112691ea75be847a52d94509875a77737d90c844d59765541e4b3ff90cf2e103e92d92c04e62cea4f3b59208cba178038e8c05d951b0edcc02df811393103fccee8baeef4d35505e17efa0feea7fbe2ea74205cb259e2d2a510b86402c2d25e00e29065f55aed9c8d58b0fcf3a1655289254b28b9e610152511cb1ca21205869d23e2e8423dd79d76d94bf775366358be74b34a4dddb77a7dfad9ad0d844d361fc1ad9962c76c6adbbbdbd9a9a7e7b2eeea70d9667a7d4b2efb6c0955545a15bd3af5f4dd65907afa7a69c71da72d4e963eebf5d17e22e6aec6d1acb3ce6a7796d52ceb288ff8202581b99b762a77b3c4875a0fa52b9f93c0ddb6dd2caedab4558efba6ed74574aeb6d2f9975afb572efb82a7d3ad975df5eeb39ae727fb138bd75f6e1dad9abcc28a5b26ee7b477d5464c6126a5ace73aab536fb691e2a665b2b323ed122b1946f432d6d4d363b1e674fa2cd668361b692398a3e7e8b5d36cd49d68addab68d6ef72347a3632812464a995c5a22899e523b4f35db9dbd6d7669e95bdbd94e354dda6e38a21f51dab2337a0e427ab54f13ea74665b07e94e6d36f2839645eed26e6fcb9dc2fad14fb56676f4ccd66b04f7474672760b886c6afaf6ccfe48bcbd6d96f747e2d235995a769348dbb5538db469ad699784bd7bbb32d330dad96c0477f2128b35b166eb417b5b194ff5a7faedb55fdfb67b664926db0e00c2aaecd9f6ac745b66dcb9fb7e8e7d848d8ed3dde8da9fa6f9d08f3e1a5d7b965523385eb78a434af9233524b48fb48f364bb3d757eedb394aefeb8cdad131ed07bd196ed908779fecdbb9ecdbb3ed4aa9a3f5a0458947bf227e9a8ade47bb3cbd3cce50553adae5e585daced6c3a6653733417f24c4d8e862efce428cf46c23f8a79f4b4481813e99ec947697523e2b71657e9b99bc79ce6ed6396f763350a6995c348932d5cfd767a7b5d69f34d95dd69dedf4f5597775b64bebe5b37ace66bad5ec56c67d66aaedf4f39d6abb3af4f46625ae287105cbd779ebf529d529846b91299455edf3b50565d2ae297b3dada6acd62d7b3565f574ab524a29e59c96f4ae9b49624de9f353c94dc271875a0f759ebb79bb9b137cfa66bb57eee629846b92a924aeeaada425b8de5c640ad199cd3f6dce8d471b750a6dafb5449af33403cace755b49289b59a6c4952d9b42d9dd66129c8b4ca1115019c1194a5c912d8513924ca196c2092840c11a054d0fa6a7305866585219bc6158edc1f2e2341039e59453ce93899377ced5bc5a11192d933295b9b468afd7b46c72f5da4ef74d6e72939bdcba534db3db4d366bb4da5c6bede13e4f5fad8a7ba7d54dd3ae8abb3a2faee8cd3d5ab5b9d65b44861691a9b7888cccfce6d282ca50a88aaa15556bb53d989b14d60ecb014b7920dccbfb4fa530d4bc525e99b892d12a57ab56ffb45a379b7b6460f03c9d6e4e99ec8b2beef984276a9b13555f6e325daeb348406caa1585b23aa75bff3a9b7bf0ac57fbb4dd4d9d4cedbee51e5cdf599dfa8dcb4564389ded6a456480a688d2d3830c5c2092e941062e2401c3d350419f8c562f4fb97c04cb9b8f60ee53dbe9e4372b933eda21b5b49dae56ed276a8dba6aea18eaf2d6cc74979663b5fb7c67ad77dd33d4487ea4edcc773bda6d9698d3b4775393ddabcd9b0fa66bbf66c761196765e9f308777955f45245df5d45af4ea5ef46f5beb8d2e8113cb7ce749c384ba677d7c774edfa64ef7ea2e972994e765f6abe73694175e74eb98ee3b46d7b776eebb86f1a87d58ad5ac52780497ba9b2ebbbfa632eb6c96785e3b4e94b146dba92b2849d74f9cdacca6fbfc446c7a3efdbdeb26f737adcff6877f6caf9f36279131dcbdd840f19cee2ff6c599ee385dad8f11d7c35b3ef500b1e92201b1f639233c7d5ad34f56c764fabc56a3a90ba50ea8344c17d54d102a452300000020012315002020100a080422915038a2e982d27d14000f85a44e764a168aa32088619441c818430800c4001000011899196c000098097800a1caffe8413427c05c2821e69c8469a34033f1b444a0d3989c73c3a20df00b8a80a80df7e28338c5bfe8179e278aa44a9a9a91810f581b1fc07dd0e54aeae41ab0274dae6636fc136ac2ffd6bc486a55923c9ecbfb5679578d42d9ea7d1a821fc5702348db7609f5b4908e7975bbd54bbcc27dbda8b06d5062b6746eae5d2c377f44fe0493044b60e652072c876bc050c56c42668b310998750effa6674dd3a6d5460795672a73cb96b660b38e394b583b0ebdce04d4b12000a373d3e632b51666ff0574d00f096ab17337dd04e85fa4870b73485dcc64137bd803e921165405bbc159558e38ab2b51f3c4b371c4696c840f664c8b9ce5494dbc01631e658a8fbaa295f4f97180e3514e5843470592b9746fc553506a5f917a4c098a739493c1cc3d5200320adfe4962e64401b1473378b10e485ecb0c74253390689f18312739af9622c195424bfea1b7c7a0d444ad04bdf194061d8bae930fdcc226a780629a68029be881ada70042906e6e861e623dcea7ccc50d12713b34696c6bab86c9d4185fa6d8973aed8212a20e100ad535ef34fe322a774857c9930a61b5d35656f75f1aee8044c2ee9ce1a863b3bf8c58b92af16d31828da12837971206817de67e748d329f2d4e3568de282851fcd0fa93fdd44b2341f4f1fe14b248303f24bf3a8a8e61457d71dc688b7a59fceadb2de058506169faca3037cda03c2cb3be188554bf614a05599a9bf8764cfdd28c77d0c1f0e3266b4ff8a67fea29d020e3c5ab372022172109156dd07bfd9dfb7dbc3a4367b3fdd8bd7cd66ddaa55559fea12d9f20f0e689a3dfee5f7d733fbdfbd096c904cb3ba0fa4d052ab67ab3d45b604b755537d97037a557f314ada66499a31296979a675d1003703fe13255c7d4162423c8f5521e06d86bd00eefed25580dad772b30a30af7e7c80c980fd872667d12a5fc20464019ca8e14fff34d41efbbf065074f97d20761289a7f3ab4e86af7479ef0de5a7a099511130ab961484b14fd81fa0c40ee10b4b6bfc4ef5179ac477db20c705f2c10348ff2cb59511f934324004d09dbaf5e5d1c78fcfc176d046c1d20117a8594f397973a1bfe6bd837c52a9d43729fc202217f4c0b12da5c1bdea667fb77cddfd1bb9157ae03fc96f781c2f859e196aed3bd84201f1440a0a601c889f82704801b970a02009230cf199f5533c4cfa0b40175008fd8716d239663319297c576c25ae6a0999e5bf825727cbf2d748f9facd65bae0e4af213477eb1bb6d8a0a77b08ea7fa0a2f1dfa2314a82dc3f58dfe88f1795c83bbe9a69209425002997205316ab9ef52500f1038cad506a49cf22dce7b18431c80012758a28f728caa926cc083d56b5d8b151e081365836dd1a236f1424dcaacd51e07f7ba26b2286a3a7a3871f34e41e0cb059b0693baaa720e96a01c408a22b63d473140b7cf822d692f5a6542c4148ae20f35a2f400b36c8b18abc02894cea3b1d5d145b2e15b4622ce62bdb60c1b9b77e5991aaaa46793140624a944a52c6099b6f53582b33d1e955c830289cd07abe0507272140a39b4928905f6c81032e707d0406cdd997dcc8b09838b32f1284e2229f5c0e13c9dc0503ae11bee50ff2df9c9d80828a0848f745c36f47c2224b503b75b4711d43192d203e2418fef4f2dc9cae9820d3fe12b70093246e26c160271f4b7b6e22d4c0bc4845189bdef7a51246371c0a86b45c06d95aa00641a7b8aeb57992f919bec008c6941af10c88d13415aed42576f7f50e16613f41170b0b69993f98f6539ef9327f60157ea7ae69a88eb10488a60e247b7ab7697a0b05db71dc526f68a2b12a7ab8eefdd7257f5ff02f0b240b053fb19b1a317918bd39ed872c7b88013f3c52bc0479f52a36784c3839984eba5ba0b9e0a2e955bb1bbab0042aa262cf3eec7e435b63053414241bd84c09a3e308afafdc370f04ee44badf7397fd61e5ad2463d0eb3f32a562443582a6d7b64f3dcf79e235026eb84ed7c0a2f183196f3d50887023e2f59f7447e410a425b5035425746b64a48825b242cb76ef698522c66d68eb4a78b864bc1bb25b30aaeae05c575f83fae004a81b1834adb7e35753a07afdb83e60394fcb4fa522864ede5e83257f3ce9c0d47b536e1b6518d4560ca3c63569faa681a503e4d9e8665e8fa0bc63a936c94e9f301d2006f25a9cb1702eb342c49ca0da16f01ac8a491d22b3e2e15629515218e63b69ed68864a06b1785fc5b88470d777941c6c0f56245df3a1b1e908c0b57bf29722fb66e7f6f0914f9550edc169f9b306231320e85ed3184e7d24954da33dd9389b565df513aa5d73e38dd78935dbbe11872665ed7da93120306123f7e64cc47ea087152a63dac71292fc1dfce03383095f407aea40aef58f9968810c3fa0cb582f4845d3e0f5d44ea6b0f30d8fded39b793ba0dfbd94ddd4c8704f5a04d3a1bed0ff830625fffc3507f6c0d1354cc57b268e72ec8291092e272f2484af7f3fee3c49a0a0629b1cda03bfabc04bf15d13a922f421e8ddd10f7dd67fa6cf345b1ea34480b5c50cdaeba16d3ab4a39f83419d92628eb29600dca6e6125652948d9071266e95bc7e8de7263be0e0b07060b0ed8b7a8465300c6e83157e892a1ec2e09d7343f5c66d7b6cf43682bfcc78bf40154feb1314c2b1843a825b257e5a6f1bb0e20b888a00f7f7ecc680daedfc24b63830be58739dc47b5d226199365dd44a3a358e1bc4d701d2a149cf90b36f5ae6829e2fd4761bd156ee0cfe93d321e6d7ccb82f5c790eb02b81787c6473892b0d8edae501784b3d287cf221761c81d7a7270d84fd9a121200d265774989a0e4d49e36048020371785991d14ccf3901788cce9c7fecbacd77e966779eb9af31a257b6bdcd406049d0b41b0f49284a86a837175dd36f846814e2914a53bcc92182b26540a829a0d2a39035908aa92b9d16606da2daa58db8ead937579407d2c4466a4a728e0ff1b983a8a9170598a6131884a31e32a408adffa66de6ab9121d6a9d21380a51abe42974dc9f20f4f59085de6784291a94814183694fe5e535d63b0c4c264229e05c609a3afddd879a0b69838f444c82946acc9ae91204ad2c1c573d80763c933e6cbb1b41b2a93189c290a04c739538bda7c1f3255565405cbe4a8842749a87f84f12101141a163ab671b9ca4d9a79f754dc30e3acddcc4949bf2eed50a3b882b83589d7ad7967604194dca8d94b05546e8b04115d2d2a98fb70ee7cf06f8f42471f6a561c0539b9510f91a719c16c32e13638939a22db15d8ca0721ef5874a87d58fc0f7f018f427606ab66ff6494beb343bbae594437c329c90ae0b26c68cb24d19cfde8cdbb970e4388cbdc334a32a0653757f64f336186a8a5b457dad62b627af58c0bf282c939b870225ab4ea81ea4f320283b935d776632d822f98cc796e45170503ab6f0a009b1d204ffb0d25406d72b84a4800a42ec2e5dd85d33b49d24c0736cacd350826b68d9222830a0a8d808196657d48a193b1e992ed9c2c7f88d32a6fa7854854f727fa263c0b26fbb2d42c1183f6926ed469e4dd4bc36d452e4243a8ba99b3df2cbbfa4f5d4eb3b34633df35d9c0799d67ddb9b33344a3ff7da8dfbc1a1cc00dfb2a1a042a44328aaadc98474c5787ef8b4567ddc71c80cd9f0f26be827047ce29db705bf2260ba0f164fd8c234dafd3f6052811df9c4e7351216d3a57a03b0440c3c3fad78d88e87691e4bd21fd4d475ef9669f087a38bc1902dd866e5591b400726e323f1ec7cc152a17f1d51d99ea23f56205ecf33eda958ffcd08691add25e247dadd7d12b130201dfe244159841e9615240e2000db977277f4a1171c3d228170d1f37f08833904a5b89e76e0faa8e33989860de8b3c38cf4ff7e5a6a99105009e8e10bd7d9b8af6fe7722f27fa13c0254948d368f7403abdd85ca89d2d539ab50e0fb1c6b77ac79f97e7bf1424790072ec3d3f068d5e4aca9ae84245b58431ea56fdbf0e8d922b60e79c9793d2f7ed0bd98401e4b1add0ebe7caa3489ba2e3d6d8c4afd65505a3bb730ee9e2ec4fcf4b1e5917b9dd173fb7b427bc4cad6c897c2980ae29637e25c7cd146a19bf8a023a5a49ddf6fd0d52a75411ee8bf0fa6066639acc641db5d2caac14ce8fc5b828d6ad64b8c1d776c6abaa6fa5376e914cd5cea8aa7dbd8aa001bd4683677cb84a6ea283f792c4d92728e94172d90ea72ce56199c5de59f07ba8c58d9cda8886a128c3f3461642dcf1f8ed911fb78f7f044a7bd8283cebae693ba54cda6e23f50cef8e79951e06f329133368d9378ac664e1ad37448a124adfe310757193d6842e4744405558665170adb3425058727ec029aa5eeb532c9ce4749ac5ba1dcda4c28ba026b0455a3cba119fb6179933873fcdbb88729d8f1f8d152f91709aca28c48510df1ff78c2c7b4d98b1cffd1312a488134b835683f2c856744feb2a423895a6e4bb6b81d43aba8c73f02ac52f1b0a48f8f459b2d7b42b0f2361e745911acb5ea9f724cf36591be842eaf29b2a424e696a403b8969864044f31ae3ac3ec6e35dd45e5c0282c086f9c5233a1199dcab6ea4421a668c08c33ab93a32c95820ee5314ad38506014baea5d0a8a8b37ae70f4424c74a7e7b291d3609bd7cc666d3c89664f13431fe4de45babe4e17f5485c632c7fc6d73f610f8ba24214ab47a0903a741edb61833c9dd352688c8c6d156a49b9b651053771350671b2f9299018df13c1f364fad40f814d9bbd0e48f532a370869a67726080f43f72dce4a8861ae44260586a5a9abb02315661d8251cef9dcaee36076e6099a225a26197ee67d8533fc0694fccc78381b33fd691589eab960237ff02e3ac4069e5cdd023c3c78a814b44878cf4a1cc7f49831d84d22a186ddfb91bdab2ed83201a74b456d7fa97e95129cc97162e884ce808e1369393c7b3fedc0682059878d6101ec2b52480f311e0c44322031cc0ef2ccfdf6c623dfcbfa078ccf70f7066b5f9e05b5e926d903202ec2d7bbc1e079c5d963f8b1bdd6d51f300dac6b856819059c0a20fb4501dc0e570551dbbe0fe91626c4bc64966e618e25518ffff6e86d2d3eb323529a3e01091029385f7c0a43268bd1772b092dbc358b5db98cd2e622f2bb458670713b81f021b16583ea91d1f95054bb3d5625dba1f3df6f5b58003e28b0d22e3fa400a0c014264bf9476449de57fbce001c95d8599576f6e51523292989eda2bec798c888f8e5f288ad3e0ce3351a16ba43361b576c93ec672d653953fbd57d79706b460fa426d5c34a14219909c10c0e262d741ad0d8f735b5070cf0f5307f8ced1a9e7910c84ca49ae08cc14c1368ff0d0a3ff0ac1d7373f26637e10f599a9bdb1fea8753e63eb87421ec3189f406980185ca6d4ff5e2b3009c04d0d4e8f63775ac106a6f03db2b5b170161e07cb617afe18e6706810a76653d56bf9c84401f171181a31a80b6009c270854718aa9c7272ecd62abb4531528321ff5a36d5952fff38db567817d8807cb041c0f3ce7360a3af2a4edd5c3810b7afccaf670c5518ca3030769392139bb93a913d37dab605956fb0df2474f899f135de11fc7fc776d7dc6e2624a34e070db85e019e78d6fd54aadc58fc138ec2ce8da7933c9d8de402234d3da4869524ed352c03bd6f74fd516a23830c5c1a8a94e48f01c261f59a974ff49a513c873e353f03534fbbccd720ae44225ed6531f038b32ae64c5df0d1c1f3015d849bba7a0dbc6a41bab14dc1c54574dc151678e200a99a1c64e1a10202b5272adca59ec2f89fa8ab435986e03fb5dea8cfefdd350910ab685ddec3a54d09c4be7d28e2454bb91eff7091df0d21d05d7870f7f1beb81cde671d8572e90304dd91104a30ad286ec68a5b1bb6d6a01b6b75b784273a25840f0f21193314c952748a4c8d8fcf462b111b0e2602b406e62e7b999b779bade97f320f41748ce2531bc598aa268ef6464e571a4990b059d0a8c4d30b9dd4fd1ba391b3b060e845abb735a221803d27ccea53f115cd322842ad72216689a517c14bd4cac870369f110d0454ffc84fccf49196b1fa39526665640b714a9b04882d0943f8e9fdc175766ed66e0f8de47500991826e606e513879750e130e81f3e991670e700e1d157568c09a6980d5431a97ec485cb81731e3dd77ac4954b49b84b9b763e9cac8b5d2454abc20050cd129dd90968f322962e5e167d4edb82c8829a8cbd503cde045b332c3bcfa9c20f613b9c9541e82b179a745e85f3de2c1405daac310f87833550f6837fba60d85f9175fa50b8109cfafd0a9c399ec8145db732204e6b0362aaf704288bb8f9beefbb509a3e7ddbb75a180cf3572fafb849a73633393a9d06306a468799b77696733c626573b508c43eb0f2043cb65249c7bef3001a818f9a5c72999a8f988443f4a372a2d648365d7917a318b1b10fcccf9b858d180379aa90f8a848cf6b8c1eb22d9848a9e28f4a9ed71963e6aaf60eb08164981d7eb806ac7498fa0adc40b49ddc7f700a8432828859b5f1a2a150086dcfb84a9bc5c57533d48df22ca2cbc0ae1021b9f813c178a1f92e99357f04a07d069c578e85a97d2fcd3a4cca316323c13d9a9d8ad3b5bbeb96905119392b37062c3a2613804e89b982d8c94b0c25329f556490741967567157592a55084c9419ea3903d1ea5c6a38bb8ac8fa850fe665fc8683cabf6af4e9b5f2d20e9cc4d99f2184b5c78a2fc82009122307619a789510ef8ce3524cf2e8292344e6d78be15bcabe1667ee49b844b4f1419f6e50c705e1b8afd0d983540cddc78308a4c72ec8ed0b90b405699d1fb876a4fbf29ca6dd94b108d202368f74c88fff79f516295e0578e9a107383436268f14cb605bfc60b429b11f414ff6cd4e71b14cecee581b17551d8371e1b3e06ca7515055303f75f382a5dd739d6d7cb60e86eeb8695c94020dad2940edecf25ef488dc43b0b851f5c38e45a6e16cc99333081e814191238718d3b7513c35592850693668b0c0109b50b5e0dfd86aef61a0c1e17fa7c48a4b700a518662dd2d1e1dede046675454cd7bf5809f4185620c498a2ee73f5fb5f79a88086c207986b408a954b5f5860f7558b563b182dc31c82220c39b97dcf1213b59d71e4acd5d474b5f9c55e5660798e82dd70f2999cc6f1c6e301657d5309e77de580f62803562211e09251438f7981c223485690f9af09570641f573f41dd7a223e714da1b771cb87f46f1dae049a8868c4c6cd675f3c34ec9bb2eff48e6e9e776d093c365dd0b7b62c817c5ecfcdff881c5e679c32435fa6a106822084b7740e4b9698920323b309e934bca9693b1546f62682bd43a785d0a71245ad43cbfd79a6c8ee08dc8026b3c606163579c93c259913f7727b21b2a89247e3d61c414e0fee5374f334c4859adf28d90f92e86fca1d8bc1a160e59109a32a8abd5dbf46c0d2d40f7062304655b67254a5b65ce56315dee2940cc3a871824f4c8e4d4601a390ebbf33c5d2505e3d45f60e44e2571ef6f0273953d5a7e932925a091344e71763810a70dd0043c30c999c8c43f56e426548b1f2b4527e664a4983053c2a0fe387dd33153a95310150fc5234674d6a63ff39584048c9e879c5b277a592fddd413ba844bc314e8a872a9a2153d567b0b719c1e8922a9cfa3610a64e8d53b50772585c5aa753e17c3c02c7d24b25ef828de32e41c5cfa958ade3ebd1d230803ac0d7a8edfdfc67b7ecccc6a44caa12155fa7ae86679fc5f851d38c7cb1c2bf64188c7b68ee22084d71c6f2df35d649aa5023c5db819d7e3bb2026b0e439942c44e2a2c2597029ff7b962de765e6b0df68c799cbade72932c69a322f9fe5a33dbd749d8feb36568ef0665507153afb56b8646c58fef19559b651a23ce1b8eef8a9b15311a479d91ffcf5e5389f97c077a7ee89e288d25a58242f37c686fbd26ff0e2305acd5976979847e69b76070f958d8ba3e11fc622d426e7ac3374d362891280c8cd4995a8f3a14a770273e67a903e2fdb9ce762928d1233577419a81a003397d6ef743d626f440ac031aad0beee75e24f60f8e6958bfa8b0759a80b5f07feb14d0b00191629f8be4fa1ba424ff7cd445094f1df8c03e5b884eee5cb9c9c0ac51491764b0cf0d4a13a4e567b7275a68d9ec2ab8066ba908af1cc4aa2767df364ffc8ad55d1c97b7d38947daacc59ee9ef3405716a0cc08b8e3f8236ef84dd94c9abcf3f8a61d269fe8a5b1deabae144433633c86e532eb1cf303269a9cbf10ab3c2b34c29d3bf1e1e7b51ba85f77bbe5206682f31e627c60e6623836b34e9834c0a87067dab1c84497087d9ba7103a7a515513540cf02f3c6b33d82a61d2d3444d9e76d68aa73a84347197a47f52e3611f0ab2292749f314706fbedd640aa8e9f3de4eef80bfa208c291ef24bc44643f65cc7b3beccd18b9876a9029ea26e8b3780a58c70c8cf047eba198f900494096ad234a395c5a2af0acf9ee2ff94cbcf671d2bc00fd498550e582c9e8ea075769b8f49ae848c2b9649b006282efea2f62b93cdd4427c777137572641ff1559d493689c83fa799f0ad2a498a62b9a5e17dd8591afca494ed7ec0976886323d3a53a32f58198064e17c821f0534b88732554bbb2aa244c3fa19fab02e0e388a67e0e74ffbd02dbd9c837539b4f3d607e197f8d0b59fed03240c19625cf0b8d5dfc63f2f316886dbde0e34edc22f9cc51b4d8254098240ff525a31a37518883e96fce53a7a2e396719f3c177ff47564e4682079919049ac231010c2ba11f22e6b8cb05725e4a544d8f5b5d38aac5ef1cacfac7a5f6efc45ef773bad80fe5ba619cca85a46d025e76995dfaa289cf583d23f9e6388d6728deeb6fa354e564287c37e8c67940ae55c2effeac80e6bace7982518e3410cd0757d78f2dcaa7625e6290879d0f74697804d5d48ec8c6de548afdf61c5397a4a9becb91bd93537ed53dd9fc1da359535c12b7b7976a1214eb11103bb7e41b32075cca6f954835f45ef612bc3510a4e18950aeb67343fd4aff41a6b823d933a9c0005de1a0c7fc4c14d66444eb41e788b76aaf5f65fcd9b1376f20bf012aac9ae0ee854f49a8b8670ae2b9ff7f9030c81f2e58957bca0b2f070735ba2cb5d7ae02d982d961bed4f9cfe85248f35583d228e525b8a8c14412508a3e26ef56b50a333d1751ece082c9a9cfb3b730a198479ae441338658abb15eb547b1777f3bfa6de8534237f6068063ef3d02f7095d56038a586281d5a45ac7f48455600119e30ccc90991d6198d34b500003b708e0961bad21cb1db976ff61781e1498e3697a7ee87e4d85c0e881fb666dec49612126d3bb993e47c03f34db4e6e619f1046909fb9e5ff3c0622fb5a75b1bef31d9c078ecfe044648d19f3fc9c00eec5694c543a383847c2a6294c424c65dcf75ab29b14efac24586f7104ba957b3f703d176880cd723b5ca97df162034d1e5de0bbcc7999eb068b04b046e4bc04d1073b0bb5ce882db48fc2f9da84609a097b6aa6f089c18491f89e20a2936840600f6c9ce6b08ec13dd4deb968cbfa840c34206f6d40eaa7a80d2cabe5c402608c82087160d0a6f3668adde051acc730c81b96a706fac28d8f5bcd3f42dd70c2708f09cf294c8d9288f818464c698b12edbe4b1440c961997f25b5635dd668ba20638bf87375c819e93176de582aa63c6454a417cbfc92004dddcfbb36f1da8440ae717e23f84c38d0104dd135755fe3c629fd34c5382ee27299bb426e816c2d7c7d913390c68aca586c5a6272614df4a9724e5da48d924946ade0fb64232fae288cf74b8def90d0156f295cc4bfb2d23b1701424039b29639d3bea01b77055160a4eab48cdb89a0171388a28197a7489717dacfc2db372989bc5b69624c7909e9a8e5cd0c6ab2bbb23009770c0c860b8dd3a048a7f7e85bf5a383ed441041680f7bd92ebc6ba9defdb02ff5fc687cfbe146406871b740f4df3a998c1b5e6cc9fff53f959da68d16b73cb9e796f766080754b6e1da92ae47428b70c616a104e4a808ce3e4c32f345678996a6ad450108e17de4867bc770a9ff31250dd95c52d1026e4aba7b8ecd69c4271a474aae7b96140040dfc055167a347618b8e20b7a8cb8f25c62092a64a36140af0ffe50902121c0dd455127c768154cf6d931075060f4a15c20308b6d91858616cfb7be83f49bead987752abb0d73a74ab1805820974543950faca5c4efb9df068c00d50d75184c403fa1d5ffc189080dc969a2d63d0706cd5f22e2d9475a6086f984e71b7a6d91a28698202252eb835c2363b2161ffe4ae37f6ab76a07f39690c1c0e53dc9cb5fdd9812149bd7fc3cf543813195f4b51f4d3ebcdd6e41c066bcc37439ceb5c85b207f72545fdf1813901ef2194bab81915950acc47374f89a8d7548fc810d8c372c4279c3e0195b7362bd8393e7988bd0f8c7729d03bff49c66a84c05855e033f1a1797f5bedebbde0277bb7d37cd82ff095a6c31318f4d8d3dbcdf02214f6af8fcf82ae0f782f7bf5fadbba9b90341effb13df196966dd51ec269c31a922116ec2e18c0da0f4d232ebfeca801413edb806a43921b8197ae8ed8612d50873501a5010b75dda601e66daad8c71f6b7c67eba9207cf36b4303b299c9dea946b8a409e2fa237da1a3248bb36f00cced9b8710e5b6e490ca3d2cfed6af73328f733b5bdfc03df598393fe75f24b36b356ba27e7260a6a64dc7c62bfbe0e9d310ea25698960e1675ec72e60e4b174b730d8b0aeda5f1a55ec3846e27cb431768d5c2b520af97b6a1eb2de93f999996787d8f6c5ddff703c8cd9390b1ca0a157f66e9c889962068559d229657b275a13448ad3a7d25326b71567f3112cfe2a5f5a88832f896d0f32f9a39e5e983714e2d1d4170774fac80fbfc80909d42d5e7ba102411b2db470ff6b66bf40a560ff5b6b6cc30f8cf9045f646a178441153bb3c6abab25060c1dfeaa78ba38c25a2053f52443f021b9dc6c21a9b9ae310aefffa77da51d90ba17b888a7733cafb7951eb0a2e3925be1811836095bcb86d0279416f6a9086a0711171508bafc03ab2609dca02b343d59a57b4d8cdae2fe42ef953659652844065b438ebbc7d03b96f9e926b416184c1bf2dd7bf3230056ee6d3a1b34e96274db6a8c945086b2b6a3a14ded4a7d02ecc6d32fd09e7d1e58440c4f1c3cc39f298146e4995666b209f59b083c99cd73ce7e86f075f284db944acef61d1b1029a862544031c27960ab219f064b0aae2769b05a6e52cc5b42cd55239262a69d1cdb6315432743e6fcaa4172c0ecb56e9edd77500d316763449b35ab96a32022e1694e4c7d269a72b4643032eed01cf54893eaba560991b8753374209c0438144c3803e6695e5be0a6d3e2669c1deacbfea385db2b9ba3c5f7b5e601d73633da8b06e086cea2b37803f41280fafe8639933063984e6c5137a5b26c7f252aae096721e4742dd18d650c872aa203de88ad82a25eaf002168e3a45666d5494eda5bf1750a6d48de9665ffabd444f4d3e0e188d3cec3ff515709b7cb3b208a9152a9c06cf25669829bf7b7e9972ffee7ec020e064f5c72c2bd5a4b983e4d0055d6c4baa7820db828a4f91c664fa15ab4621335bc41b309aab86ff143d8a81fbb10295c3301e1440bf22638e517264b44f8a96658555c97927aa2405589ef8f207cb7fa30a137a1724c6e8c17521e6b7e826ca3958860240a8c75438d62b1d8a454e2b308118422a420425b12fb3e32b8d12b1169521523f3d046bafb2621e9b69e4b77d01d0472304245988c628c8009e3fee3232502a69cba294d3fb12ceca1f24f45f7e2ae19b5d721b7fc2b0ac74449ab1d97ca4a23f18e11bfa9485270c008cab3c3a2b731d0f0971f9796e9e10fdc76b8b83c71ec48922a577df48473089cb02484c0d19f2426c0083832844bd8223a49425765c8bb36f3280251bb08767df724de3f929124b2b5a3ea637863f41843e8d1f18b8d4b25216745ec636c4033dbfa20edec537866a926a0addcbfd4deb3770e6ba28147e7f935b68535a0dadd1778ea64c4c32863d29e9a17ecf056e0bbd2d426c84b1e515e76dadc1229a207ebe7ccc890f00ad019be2f6247c1291901f11c0fe8790fa2e4dcded323c09adf21f2779824b22a8238c43b80c7840ce787cc3c52972ee19da7423f5bdaf8d2777bdb9408ce426dec4a19091b34a9b1e1e1dc083c30a9bc420b588d6179635152094b88c8ababa355d845487a41ce6b7b321372b7655c6ed94ad565d5d3c142bbf165ca4435b2dfc276e23765f3f3905dffb25dd2312503dda1c5f7ee2079ad3282bb91d289b6902a5df97b166975654a43f528d5750f456fd7ef3506d003a58c0cef0b3c4d3cf5fd0ae22388da3795ceb6b8290107ced4cb62ee80235cbde6790d508be4ad864dd5e5fe468ba86031e9aaf366c822bcde0266c2591acebbb354f99b9b6ff05cb57e3ce60e7a9066a1771b90dfedee07da43cd6c71b5e762c135c8d59982ae0706648b28aaa8607ccb9215b05c742f8d3d2064961b9219d864c357663565f5d92f727d2f384558d84d095ab23707b1ae7818a785d6d23232077cb1ca75236a39b22f56d28528d7cee578a6b203ade6d5b67011824d971a9bc82bc23e0acd45b1b5c6dab0f113b9052ad90768959d4f2bac0e56ba1de7c75d2423f70777bec802fcbd9c4837370f6ca8027383725e7734fd03eb28000c264fcd07265d26c822282a7a1e940d32f3e1a409e9475d1c3aff504ff1411236fb15f09da0080ad2d9faa5500e89cb2ab78543286ef7c6669114150ab860bac2ee9323d5a17869cbf015a9ca115f25d2ee5609fde25de377d1ac15204a97d88710a0c28420ec3fab5c606467243f1676b35606dea499e4bc49e77b10dafe09b98ddae4669c1db4b263a39c2e03610f27a54bb652902494bf0eb4cb47908b654cbad28f23d10683b6b1ad668f19bee2a5b209fd877a204e16755c5445dcd25207a3c95eec8d9da5433f41407511d59bc407c40fb075a8c4a3d2c33aa2dd97618357da88627a4d39c1c590ad544a990b7d42e847c9eb314497339fb44b3432bdc45359f5bdc2d312f228b5b41cc578c726c09b48bf77034617da9acb212fd6cb741e5ad1a17d65a4ac6248b7fdb1316c1503819ad616c62a12379277305c10b2b9a211714a69a794f69f93a809679be5992dfd5aa3fcff80e15c25e5cc0058438df036fd247a760a6f27a42b00908411f0c1967b6a0cfc041d9ad4bc64a195ed134a9945bbc96d33b15210297ff5a803f2afd38f1fad40cbb2aef79279cfc5d697ba8c34b6bace150420ea409cd7a5d0e66beb5c415734954027ccc9fba373ad366f5b93a9ad2ac4565039ca539aa2f8589e7b38803fa7a75447e0d56dd68cd4d8a3abfe9c189c1d4a02d493f6eb229d1064be27164b192b5ea3b9874534475272bae6501e9c11a3267888cb1e2a60448d09502d54cb92e73de7e5a41f23122b5c6a7f8da83c2f86d16f21a14b053833f0730a700e4d62b0312f560424a0aa9df165859517ee45f9a25bf32262c8562fda19992c29c012275c43a1965a622e357c40ea255cc33ab0c1ca60e7244fc0065ca263dd6f45c95fc9f5620b859106c0bb085b825b265f16a0c2383828aa3f5d97321a46f9a31c2314dcc8aa112d5c15e97a47e9708f48c2bc7047240c78d6f01946d58134467917234d0430ea0202100c008d5c68a7205079b88fbe19a3af19f76faa0ead576b2c00d735948602715da3aa09feb104d686a6f7a07e42bc2f77b748fc48a17db5ecb0a3823db0744b87c47732b15e7e6408ae9633dd1d30a747868d766d498ea41d5a8d6f32f5c2e70415404220ea24805289d66565ce0f773bd17936fe792302041bd171f152a36e872688f784a98bb7322bcc28b9cfb69b01cd2317119fef494faa1197c44fcb2aee1f3d18a6dea8bd0e45013e2d6a645bd4f2236836bc0a7a6f6ac40a9f089ce028dba7eba45cda3b01cdede011b54e8869c2ecc14122bc7e6c6489258bc375fbe9d2e5548ca25b35bb14b79bc229205915fb5b21ad41718513738a223d05a07c74dbd8125b2262b05e54511c81ae23341b1438ec546c8fdd2d3a9ebfae039aad67dc25e3eb0df93283658efb1446f3696f957c5e3d47e5cceec50aff753863bdd43b503457b464453fa3faec9eeea8a60c72a06431d60e63eb007efb521afc59271aa3f69642b24a72ab88dca9d627a2bed39231dfd3746125fcaeb797f000e5ee109457d9ecb33707744e0e51f4bb48588cd1dc6a57d12c42339f071d03758b386e10efb2720459bdb50f9ec42fac23a01e819e0d86bd72a7d9af549fda3793dfb5224b3853c46f6be9e5633c53a91bacab2714ff936a33ccc6ce6673cd22a6aca12f1a04dd85b87ec69ee527a9e8a053497782a7051b542c58a938ef9125fac64df95a7d2ba99d9dbab4f957a0c6f5cdf9af00ebcf8cb7e50283e96a3fd20f2d79368ea0c8bc4ed254e2b0f0a80036fd8347019ba6926d64449f9c622ace76c8ba2af52d2377cd1f81eda788f3bfe6593ac93fa211af92ea1593f5a1a0488fa7e9f3c4c23b8558fc0cf966c7811231807e479f2eccda48a62e4f1e09a6a710f32ea4b119d6c8bee8c87b17014d01848e5e2eeeedabdedde1f6a79f31879299e426b3cd10f689545fdaf18dbd16386aaf66a2f539340c7ab1317234036c274da1c1af83811cd559e7467781c82f6f0aa3bd4ac312788358b626ccc06ed0377986c461ac421a3aa24258572401829e97608c9e852b66a8761a77bf84a5e461ae77d941e7964e68144a0abfe3663bc4f2e26679787f0e2d939db6c6085105612899dd5fc613ebee91654ad1c855e2c86cffdcf1ca641297a932ec242c45668cc597c8bede77294927f423e2d9520b30e7142e2f5032264a26a9bae5657f692269c51281f2c469b794383d9ce2d8e47abf75f2706b495e12cbe8834b6150a2cd325b193b4c7f48aae56bba4a6b262473c0bd50511ae8b752a17414b1abe0ed5a298315fe68c0655987edeaf493944f42204542d447483c5aa06bb400b013673a3c75a012bd8935b217032838e3f49dea13809b9d8ad97cc78fae2c1f0b5da9aa8747aca22e5df9528a59baa82b17897e3016d8547685b27d048a48dfa9cd47e169eec8b4c11098e9282dab33262cdc1f776d00aeb8b8b08b2258b7554629e7b45887f242fee209ed41dc9f056a899b30ff8e39f9ea745aff34ce6f0d98a5ebdaf47a56b8e0aaa520e0b82f0155e99ae80ae9bbb7edcceb03db84846e63799794828466d87dec7e9a3fc325df9565710d73f4c083567c8b78f121864bdadaea4a9f8492c5a85e09b449df7a84d86e562ae841b130cab48e04c78f35583ae4fb0c679a065f1208aa4788af023ec8a707a94d072d5c368c0130e02c48d62830bcc5683b0f9249c4c921374a9110b2e13db3796620bffea7da0a919438c16f211b85cea9390257da996cdcd767eed05b292d7038d2a0734ef4852c9990ecf07dbdac18f4954c8552b2c4db37616bab3a19cc5874cbf7ddb95f8d968b1344f705d9c5993745a32021981ff79d90ce58f3d8b7db386e0cc96e607120a321bcc5c5199c2e4ed96c84cb7fa157e1dd358f013ce55ffb7daa31e27ab5aec829bf4a2e2621fe59100d346fae3905e5900647918f99bb992b2a24bd229fd4c5e5eeea88b9d6cb44ba7909b9d08e2b6b35ede243e5f068c61a86714566cec28f268abfdcab370bcd4349b29748a1dd16e5d78d9f373a0c9db456d1e7c50a9ea79e304f30ebbbe1730c799d86e05539709d018ba06187cc2955f0c31defaf578d4b3035054e02abaa3168d69df14db837ff4a5be620ffc00d0876d02c2f2bc2ffb268755f66f1c31d740a72284fe20ed74a13833c1dc681f3710e5a3b340eb207954db1f36f94c1c876a9df1e6a3ad4414a720e75a7e45ace2137467666f12310d6063e902555a2f6554ecc4abff997218906ad2ec68179b6d1f22d6c9dd1027b7768779fe993e9fdd378c05345f3c2526e2430f14a7c14a98c390345e88b39156b09d6359c90171c83c6a063ad35649e36eed1f95e42ffd3352c199bb630d2cf76f7401405663b35e95316fea6b0ec80f14e5ba4f995001d8685b31eeb097a98d20b441f1015eb29e8580c75cfd55ff1d42a2fb717b4990ada575a04fe0ab28f731f8ef2e2ee2c471165ed8760607e5e54225c5b2ada6b53b0b92a6bdcc351b3ddf8020c4d0905b18d4917497fee37a803537a2391dfd6ed7db8e20f3a172640c92752a351a1e375403b43ff9c65c2d9451ea91710cc1e5c2cfb5016a661ca91a9e8572f92db7cb86b9e76c5bf0158f7ec27dfa8e07186c1e593755a5b97f06cb4f1d50ee7ff22e08bc1528c99904ca6f33ca8fdfc6b695e3ecf057f522525e3e549a9c0809a94cd2f7e964e857e866ff652d2289d3d2328aa6ec6e611381939f1a9591d554fc6e4315e69ba638d54580cad5d6a6a8c6f33dcab4aca4c466a2a33210eaf18eab68e42d607742fa5a7b3b47af6a164c08a1cf58c3f947e4517e07368dba70c96d15b2dac68117f817dccb3f200b3f432febae8bf2c7adc5ea755f9bc0b41b98fff26a0a19dacda8371294094b8a458d98c6472e08b9ee0245cc6d0e05f8cd85c754d562a691d54000ea0d009582523ae78170c201e10a500a146965d4ad5709281497c09c9011004a2ff5fd944b2a16e34a7dd21428a1fd37dc97622201f6bae4581f76be2114a73a3f8297ed1de2cefcca66e940718486cd467a063b3ff22053d7195681acf386dfff804e1203cd5893ab9d97fa5545689d68a078002663325156bcdb780c9c5e29fd093c1c18b60ac46fe110208e4e17932bc464f22ae45e14fdd76bf644d79f80b638b9d42b3d0ac5cdc358449969297cb62c7cd1bf90e39610935dd333d74fb7bb013c8f62f72ddaa9ed80cfc0ffee840175bc5beef244e1e011ce000ca18ac445636cab20e99281203dafaac4fba6c8668be594747ce6529018840c0822b85925d1e18e1c6a75a10d6713c6f835ee9c04fc0a07e5c83100f64cb3dafb451eb38187d60c047d46e86ec212491a6e01cda0d13c72fef6ea249c565f66eda08ebf04b6570380b67257940a907692b6edb015229ee9ccd831c3e65ccf8d184ee0a0ff0bcd09f8aff1371451f71dbdfa2f53800f4cc53ca9f36e078fb1ec8a13512e26e8bcd37430748e1007a1d0f008ce0fa4dae4ec544dbab2ba99719805f45e8ef475aaca684fd409da4afe9e07e591f02df2832881e8993e37d9370750580da6ed6c1d051bc526b784d0304ab3235f9884ccf8e67ef45142295142c22e1041395b2d360fed6693cb579fc6571b4e1b93a666f7e0dc24ed957349099f135174f2947eb144d38f497168a82ed92b9f089aac96c1fe6a098769ad90ed4ecdf3f94bd0d4b2543599bd8c19dec8bbb35d81e53aba7b17b285a099eecfc6bd33fbf75fcabd9ab4028cc4336f0d4b1debae90b7b4a775f58fb3b878534d4a6611c72409c9a4b8e42871c0a0d7904b4e481640915a48f863a8eac59312c0229b69afd815cd9cef4eb1f5ea32af290ca7a2a6aaab33ad524ea7939b776b4dd1f325bdf1e553eed4b00d9a5cf22152a592349aa01fdbf8270abf28026acfc7b76ef0c4fd6a2f35668d575ae9c04b8b1c7a37181f12aec36d9a241652cbff29fc48767395c0e95b7a8f3fa318c4f3f242e4b42a02dbced861a6c976990496c8bc1ba63fff91558f2c00d9aa01cf44547b092c48a5927886818f33a4768ef97e3e5360b13cfd52924c02584a36ac74b4c3267711d179ea3d067ef1cc370513f5c54a1422045c52cab0921045e9fce21f329ef29d0434bca93a968735268a7f826f15e6c7881bbb4522d0920a353a05afaea93eb0640ec70d9e59ac50fc50f78575ee26b54dafe0b117edc629a221a7a49fe4823f710506c3f61b416c147cec217073f787d8c4308f6d29c65183e7ef6241804c055075e60a735dca86f61131998a43f707f54b4a4d0de8e3832fbf0514a73cb6d08fff2cf7e1c47ce422b4ee5e120f6d11fbc9ff4fcac5f1977ed89baab6c4faf3dc63ebedd1c83571f7704240e05803979c7ccd7b1781116a0a9b9807ab15de3601c581fdc507fb6639f5720b7578043778667a284c88c076d8b9ec59cf8653c565dfb634c358bc81f949358ad97f979b197a5074d8aa66a3db69e391610668439ab5300e463e175c95b30bd43c0ee7c1a1872434b241d3f1fddca00b926f9b3ef66dd7cbd591fcead3f4852139d216c055434100aedc469ebaa41bc76bad9ca6ecd69fe33897b62c1c4edb388801d79660f8d7e56951e132c1c280dab6372d9f313e0975cc4a54c8ebecce802f48e2d7a5f2a14ff698e51877f79ee43a605ba0f7862fd4fa4f17ef3393e336570acee32f0770ae6f94bb7ec64bfed58377f64a9d2ff47f5e6ca44b7e08442a8ef28eb4a6d219644f3f04d2d95aaef39e81e60bc37d63a8b5823bdb2b5e4f512dfc5384cb157e55eb8b7a8a0ca40e3123fccf3383cfa2a3d7df8b204f368e49e4b8573f667478e46d3fb1e9c6d496f51bd3f32b3a9f9f0984f08c55cbd0086ec38850fa9d5b77cc48f7595478e72f157c5db57f578cff00331908f063ff1384b5bf39c198701e2845abd167205cac1c67bbb1b1405bd5683a7e403e76773177ab89a0e25d2f4f377973ad16dedbfaba66ca32289edb36814bf00b46c7706de844970a104f55720f2adffe67e8c60f7e1606676b6ef24b3921cc0f2a826af0fb04fcc4678029e94cabce070bb55bed79e265ff8fc3aaeb1e9a251618fb46336ccd520abacd6b36d804907f4f2456197f4a3e07293a29674dec22c13b09b216cd606822104160ce31b570c42c8ad5a855db44922fcdbb7a2f93bdabafe8d786a6c2c71f9a1aeb7070f5e5af63e73f871fdbd192c49c29957409337628e4235317cf330f4c6b60f951511ef3ff1d6c56e55fef916e711b3d259190a68cc886eb8a8afc35a253446f2da058d08c3ee9347a0269c159b2310d11d2a8e597924e53546c9558a9a48e841945f0ef1510335ba163839cf9f342c2e99cdb2305117680d134c2b989500904c0a3e047d999bc5b7c8aac93e5fb847ade21c19d6352ad79ca322343d6131fbb8eb1d59afa81de6d46ac8d5ce26f70e1a9ae90aa92dca139f664095ddc16d992bc69a926b8be51f2141da82b6f2c5f7bd302a4f34cf2d6ada6aa0e246c20a3d95bfdd960315e00bf117e51aba27c94bf998bb49bf6b6576684d1701e2246d1357d4493d080d02afb66d7333684eb6ebfcb61d3753dacd05691db2337c883ed3324c2e019982ff0e6b07313a9aff6e7899f7f916247edea9d751567905a32f48ec04b394133d48ff1ed9e59d719064167283fc4f9b8b08dc1cef1a40b834421c47da3a83c107ea766b669eaf062b9ef48b8bae6221c66272ec75678af73c5c73e35aa03de91e0a603e1416329bec4f30a342dead34db87c4a96ed8e7f1f97c181c6de162c44b75a6d80433af204b68232e2e7676101a70bd5b00ce0039a5284210eef05f5d02416ff3eb9b31f5f771804b923448d1bac7c8611278666798e3c754310b3ac8bbb16ae399c1ab28097c70505b6c0a1e9d7eeaafbdc22e800ce9297225e935cd95106e82a68a2c7ff98c54dd8669794720cf73f0632974b3dfc4394e45906c8d807ca608d4edfbec1ea9863deb727a89afe7027c3effe06aaf9ec2aeccfb90aaca0e46a30c37893f70e74763ba38220ed070fc62c994d57ba58d2319fccab90edf49e6eed88dcf754895665ee6582644e64d19856ec8ab919b52affa866900bba3bd9622f66cb919b4d90278119e2ed4e95a222b28363d9648243a92f1114c65eae7704f1d25c64211bf8580851fbc8be43dae467c998c556aa7d0d278edde768a59d2cd550695f67aa47b9ee86056f5a96140be78365eb13b60c36a3612e5ae8895d097ac5b9652f76f1025d0709f6ac34ba99ec32173e8d94cca07c89f90aacf78f1589fda58331577966d0f27b8b9b06527ded76174dfdd77601744bf7b91d15c28fd7c129ebb5e77a4338aa28b5b89d859eadb8e638a1db242a03444de727c953fa128f829192a6f423819b1221b9d13b2b8a56412c0dedd802695804fe21cfe0300a38a63f4c34dd8a19183d18a61a447bedf8e822b076f9b2cf3fbf41119ac0151c6a679fa4469b4a43a59c4a30d55e9bb137e1e18f088ad774a1f00dc1ce3715aae8dd591c176eb2a9d4e6493b5f397478092ecf31fe7f1257e0eeb97a0eafe8c165bff237aca7d0d4a5b3fa1df05d4b4c8adfe5d2b24ede7072090c3e7735d77e6588e4dab1e12bea3dfbaca032a942b9df858c48172f809b42ce2eaaaf7e5b572c183254f8c196554d17db8b991d4aafba356173be7e68beb63cfb2265b81711b0aa330d4de0b1b354342927d9055138c3cb76943298fd044cc9389c4f1c1d30cbaa46327e2bc818c1d65277093d76c04756c7287389be7ddf497c32f3f8bf2fd98720653a6ed50a161fed227f7696fd6d5f9b9af06493db3df98ee318e7a19ddd1c77156cc19527dd925c113d9559c116b2cdf95c0152eb39030a9611a5bd48ae476364c05d164990ccc4abacef47a9bd8dd8d54aeb9ce25ae539abb5c0175d522ce3d6889a4490968da421271d089a16ab125ed840625df0cd3d2ba64b522db8e9a76c0e442a7e3d5e5839405a0c5466ea691b9929387d3f8d9a26fd5c27adf76cca0455d49f38491b8124c36222f985cc0fd0d71bc92d7c0e1e3d1f19cc02047b7b4008992f2547865fbadf806c9e99e469bbe32693fe495ef82532f7c45c300de8c0b6700fcd79e8f12c10bb8f9268c1958508f868d3ae9bcc8145fb120b6d50f4e23e001c018cae1592b82efc562093bc6cdd850c3bb1319e6856382dbfb42322ddc04871bb3c1e726e668256658211be854518806bf9b43ab7f3237d647689979f6e6082c765e39ae5497824b20c7e2fa4e98558e426463d1a1c4c5f581424ef7fd301c3f5231de6eda8e7b744c1dc7206473b9ca3a047599180254130ef6e74b07ff62b31f6c8ef44cbc825290007d540e5cb6cf7f6034326b8737336fbfdd496503073fea9305bd23f310b3e6347261a00283fa9dba0485c8efca35deb4c9662f84d3c675c2b74c45d97a98c7b297683416c07f2023e3915e5cfabf229c5e22542f616b2efe2166b244f3c541201de46ee2fdf6436d18174d9eb320e28fb1af9f3a70eb4588a8e614d470ede15cfb08c3d8f8fe4a0e24409f2c18c713239a0ae17499e19c17227eb22c61f3cf387bd17b254108a47330361ff7df894b44bc04e886b8502ecc579e8c3d6d4ca19b341fa4954d2ab6b46da6b9611d966c7d121bd331beeede1114d67e94096cefe4021335ae074f56f286cad21f75aaf22b7666e5dcd56948c572035acb0197b376687bc46098cc63eea82515771fa3752356b174ff05c5c6553a9fe12f36ba3909b8081345b4d5286c05faefc8c7a2d1b5950521c9ee3c162cf3d834708e973a0f86036df4b8d5cbb3d899f99fe17560fef5d657700cde4e567970538a909ffd73b887db01b8c1a90dc10f9d064e77cb80cbea1c6c7cc10b1a5e9e721f0e71843e3a91e8bb2171ed47d31ad3fb9e79166e96bb5f609f7ff4a4ad82c3118ae4ec04e2d7815fe606759d98141ed5307b8559772df8630f3e7da371acd058c586ed2ff184d2a0c41d1b1bf940ea0016110a18aec7d5b40739f954346d1cd8f42fa1f92d3c5261d878d214c877b10fd146a44e1fbf717804321b46b3a416b29c9612b494e6a202679180cfdc61ca5f8bf7f1c62e8ace45ea3313bd36e4acd3a242284110adc27aa40d1a72549cf6f416bf0c79d978485e06ba0b8a41d9c433e641719adc8422102497ec1f93d66c51a29498bb50f80a8a9212d431aef20aa0b1e366f198e940c62ba00335108f419e9698183bae44dacf67a5e64973698f7b5a087893ab568462d110ac7a4ff2d316649e5b7fbeed0107ccddab614925f079b90f1bbca26cb4a3afcfd1f13d688527a6bba0f9900bcf0483a57340776dfca9489020efa9c81196bf8b25e23bff8c20cd8ea4633cbb8217695f4cdcfe36b8106e10832b52ce0d6cda1738613b3aad65fda0ce57d4b4006cf7cc5cffbe9a92870623c75a6b90759aaf1035b6fb81f1b3054289465950883d02125a7748b9e26a826381a0226b6deb276aceb2464f68f328ea4ee2b4e6473453142ec6c58f8d59521241d287b3cdacd2875ff2711fdad43dd0410f09086dacd530e31a5ed630e97de4f333e310d0d60c724d6f6dc4def9a043f7b43d9852c9c258d717d400ad6a93f0fbab679d126956db744263d9d6d8c684f576caf1b9513e900a56b14312df92999223361b06efbe4eb554c401c8bfcee7480271e788a03bc2b51906dc347a4039e9c123f8137f6e3082188c367c2a63b44528c879c319cc1490136bf29d0ae9f4cdf0f87cb3e285804b634d939180ab1f2ea6d84fe014e3ffd9d0c627af226b2b6a613c8a1a3d183cc4e39b4727da8137178a392602821c3b1ddf4b3e7e300674154be30168562fa17221dba2db200a014179f210eb0908e90fbf2f8c4beee88b1501396873d2e8b9fa4ed41b1b3a004958fdc4a367cb11dde9b4a427bcfb2304865a5cfcc0cb314e9c0ecde73b52ce3e3a71dfb219988fa47abcd2f24c23048be4c6639d9f68e8e083c476b07dd574b854bf89064fb3c3f8234bf894e5b969f0bfd9dc2ce1d24ce45ae229ce88c118339ed0355012198c948cafc855a8af2bed2b8696b761d74d457b99a0f0491c9852daa1046ae26a13161a343fa926702a935d16bda439dfccf586b80168043166a08abc103d122105c74a98979d3da46f7567851d2ea0593ff74f36fcb9b93cfc650e1e504c78a1be234dc70268656e21c72eba4a2d483f847bbd61cb1378b403c1ed5907653ed95a055142237cfcf894a9d72e1bfb85cda3894ab03a711cd0aa09b99a52485845ab9dae9d6aef4e61f128035d3174de3b573ac2898e0d85f7b1729876f4f24f63538952be4c61640a0baa052e2bcbbb153dc2560eec4230130af979fe7028bd0cf7303d61dfaf650df2b47d9b5398b07ef2308d65d259fb1da6e51c0e2464382c61ae1a68877182c6189f9a84a2e48d7aaca4d6642bf51026aa8d341321a21a6f95b839b1fa3584cd0d0cde9aaa6e855ee7f34b855a7b3a69d8181ea82b0af0c491517e749d80c4b9c0bbd544818232613d49af55cb54896df630472315dfe115143aa32545ea1cfcc707002e1c467309c047e93786e7d5388bbdcfa83a4663aeaafb5a9f04a739e69d9cdb254d7da8c19c153cfe69db28f86424cfdc8400693ec4b5b637349984a71f3f9e0ee430c5df2cc5c9dd7ec0194677f3059af5f71d159496c3e42b272eacb5fe35c9d94e99ee0c8ee855a788765f5ec865c0f20127c384a9ca9de9924b6c4e83f65768e1f48298da103869192bfaf7a1d562b93063c656d187726ec10e4b073527c481325ac46885b197bc47f92ab13410be54c78ecf753288e5c1e3565e0819fe905c6cb119ebe2823548f9260c85934aed2184f11e5305d7d00009d9cc591bebfec084eea7da45bd73bd7293d198b405a0666f481ddac2122369e9776fef7bbe54479282917eaeda1fb4c9ee4d12aaf9397b8178e3afde3f257e9c60e96922fb0206a586b91c8b7f99ef14adf406106d51795f6483cb945feb2b1e32d31ac8b3f265b736952a0b9f1686b285e90882b2b9532f83349e9def65d8221549a23ae26dbca785501665b2d6958e428a553575c401b42af09804c83f8b745bbe9b5f6ea6069df418419cf225c3bceeaa861d293e1bb3081f0af3416396629880a6ad45962afc382aae89bcef17656ef27355ea1a39aea6ee225174eb8d1015a326b4a44a35224a397f8401885e5f7f823ae0743f564d7add86979f0e827c4d655a523f4326919c24f0d249e9ad66049cc87cc854d151b2b430190148b8400c8ccb55f2f9d84aa729411367fad5fcb429715698df3b76ca9812caf6878d0ee0ade170b5eea713ba13c6c4ee34a4cb57805f1ddebd41ea9cb8167399b6b95569ca3f4bb4e6ea4a8f1e1da3104a64a7a5f0e21b06433c9e27c98293aec0e82651a51221c75a89a3ac9324e511948f907c04f63a000274580348ab2af37e6b200f60155240cb5415b0a4a59aa778b2acf18c7bdf5c519b4b419d48e4218e829e9879744bad151b4f4972403c75f3b353e9d8b9adfb3a40a46db7c120fff72285ac8c8fd18982c33438af89cd335924be743f16406f019c805c90896d01ffbb4171810b72ef44f6f6a93ce5b44f6716ed669a0f5d66c174a04b9fdaad6380c258703064f581d0751d995788e4f55c0035c8355e30e8c641185c6cbf2afeff8dc51e360bab4b6acee7b23b65c5d425b824bd352a067117321a8d7542539033707d74905aca2459f0a491222a8546c19b0d32791fc653daff0585c91e12cea5ef0c6675d093c7dd7c7ef58e6c97e673126990cf9a04d26d794c81e07b0b03ed56166fce22df7a35cb7a12c799c57231c766af9ff6b8c483ca53164faa395341e07f48dc1d42d0262f2d860fcfe92f00c9fdc4e2dcc25c5d05077586224a36782155b1c2cc96e387030a5de8f78ed255285d6a68b55747b9f06a0c5d6f523e4aa485fc66691a71c1ef2ff6eb010aff5b037e73c0310a1ee23c2a46d00c0ca8835922f22c60584a995a06949d8b03a29c8496ebdadb7cee8c3d2c6cc16444ab2148040210c3ab539f9e28634fd14df6689187cc5b3a219c8834af989535b6ef46410caba6158d27869dad09cdf3a93c73e7ebb7d45059b52a1b79b0b29a38bedca119f421bc75662d13a346a8082e1526185d7ebb9847af554034ddcbbbf751df64520eb79a5c646df0bd7c6efbe9a718e6f9590945e95ddc7a01b6a1fe084c5b8c8dd410edbc00d72a31b5defca675256b796ea722ffacbcb0e7b24b24bb874583105036621939627974e4a78988c530f50f01eb1b3c3d5946691f687de009ff2ebdc4b849c9541b1050f10e141806685db01313361041f90c7c2bcd4a941efde8c72c31e726ffaba0aa47920540764325e59cb06e29bcde69bd21545f006bd612762b7e8348cfc99ad7d7541185b5f751b0c075f7ee99f18480fb6335a4b5d2b91081c6aa8fb046f8e482ac0c845c1571a285097ac85838a0d0701a5e6cda91fe523e8511a031bfd056a8487f2252fd1757220096ae56a5e861310c338e65f42c8c532673c0a2fdd4289d1773119929cc395644bf0db91e1959e7fa4452b32ff197b831e6ad901fcc730cc22ffd6829f9f9494d7e08a3a53cce8a635d0c2eaccb390a8bff90bf8504110d0901c6e2a30961ec2fbd551a22f60375af09f4a53b652784316b2fa7460a8c64a47672a618ae3f534459e2a7a8c35d836f624a21e2d8cc7d3aa66cf0824aee7560934ee29bda06c89543b93ab1a1733dac7300be1160f26326a10cfb2ba36f0eacbe81db8b80412f7d28cddd5ae2ec108df7b846d80dcdfbfb75ba2ee146be81d5318aad4b94fabb439c4f161ce28526a0a362718eb922a2a9f66678275f5f61fd34324a8318e73f502632b827036b64f202079b2ea598a442c284e526e2505fc54af71608ec1bf9b6e9ee3a675867897f8a6d4b322739c8258deb074dccf78118aa44639f5eafdc53ee4570f605677f1b450db9418cd3d3760d602560ac8693876c0be9997676aff8ca5a4b2523eb6dbf5a1331d17504ba41e6b096c8c9e4a8522cf586726de5ca543b328af521f492b5a998fdf1af88b985f32bb62726e44157c615b13d1cb7ae11e11f3f95cf4ac871fc5a1c4180416e1be157ffa6b03e1a601a983b3771dd35f0c8fb92268bd5fafe54b3d0e8597c958ed03f31bfcda46f071937e5ed4bf71c3935fafcb98d2d885825d62b2666e39cfebf1f42cc8b7dc0c0fc0d41cec96457b5dca8dfccae742586b96c97dee2f76fa5381c4a786f39c29347856cd148a7dd68453a596086e538943294f62bf3d9beb1791b735918038110c37c70c40b152c35a97fbaa7474323cc1262fb445e6ccd905db15dc67809977eab329b0da1a90d08ab9ac8667f925220563a5ae819bbe9e7c28a993587684ba5d168223f666b45e5c3550fcc842a4cb35758024ab8259eb1a4bc041d4147eaab5b79f948550abc2228404467d44dce8efa00e33b0a33472c9e2c5600eb7792c1ae3d6d523a6ca3e236536b67b047adb96c0f248640568f26be9cedf947df161c44f7e16069e54de659010d5e33f3bea30ea42726dbe1522c8e998c33fa6071979a244a710b4aa3b988826d2581e4aae2f4a41a74cbd806616506540f1e57d77117a537f63afd89eee75c9c1ed0b7180f5a192900b98dc165063d45ffa92b2c1afc4408b209905ccbe0d3140d89a29a96f01508fd6033fc64d3020ec25c3db2951f178e89f7fca005729da26b932efa7a975a3f6e0da0969e88a81799b6348834fa00c96b80ecc3041fa9d0e859111a6258dae80242cf7ca5018e1f978ed31019c1f9c87effcfa259bcd9992964608a693e28df496ca4c316104e46e8e6e5ffbe035b5e5b56d0c306e6dc33c9408bf30d638e154d92b4bf367a190ea9ed516e655c763a0802eaf4378f9a59871692bb122f689bae826287a330175b16813ac5337a2a93266ec707f950416dd7877e18e85507397730ed25e8d04cf075f749f59c34c10463dc3a31dff6b9468484592821520dbe95172d56be8268a200db2f5e33df93e69a2c4fdfd16f3a48eb408be14c79f0ceb31eb4964787965bfbd09004cf9ee5f8e4df6a6cc91504ef4e611f2a51b59896132bc41dd7d43c98f0f0856d6aadd510eb1dc1ba54fad2976846ecb883ac51d72a957117c959a640607f36b1c01eb7cf802fb9494f7753cde3b8b31f34e96a24167cc11d963f1babc3a4bdcaa321c3bf89e0763770dd7c628f5626b1a083140aa8d486673fb1d1605ff30c39ade3e5b1af127b2e8b2636633b5fae66905acd8ccf7423048c97a86b483d1c3621fe9718bee26240a4c0705af3a9b23f4125c55856236d62e6aad0d108ec07b6aa012f3ad879ad58bebde8de1dd3c1e73f9fd0a7bfeaa7d1b135467593818afc6afa94cfb58a1a291ad60da21e7a1901ee97565d451c26b551711fa7f01d7c0a070e6208105c8a84e1cda2d1fbade0f11ff2c1b8fa63267251afbc0e847e5a84c2cbdb9185f0337b2855fa0408aac7154cfcda201c308bf8ebead3c7baf877842fc41f04b8280256d032cfdc762b7f58ec2381b83ce2193db47c34fc15c18bb891d6788cb55a615cd33a08efa31cdf224a581a92d3b3bfecfdf3299a9394ace87e8278ad09384b18ad0a4384bf9e540d05471ae580e0d513b2e8f646a6cf75192087f455a6ec8b107d69444a7b8f05bf626264c92dc2b19afb8b9bec900b8addc8982a83f30c4753f93cae67b3efeca9da6d17a7d7504d2058e92703993f181e11f49aa9378cbc86d0ae92a68e13bb2a0fca95f4b6b7a263fb0929e498467719afcbca37f3ad0b21faaf3e282ef6fe101243febd9af5f57fc403f8ddfa6d73d135c529972bad3547c698f7f8a67a77318657eaa1a0a122710a8b353154927d963524a865062cccd3eb86c04602618bbe0778ab5885d88c44025446e01c703aa9568990f4467ced40e38c04c7037922ecc224425d3312d568ce5c5f8608d8d4b6c3a24a8835a02e91c18988d5aa28ee5ba5995d4602ac4dfa20d6cdfbf9fc9e704299f8066a66b817a49dd3668d92bd906d95c3c4541da6e0cba507d31cdc11ba3296d64fd8a7c506b063618ab5d95d4fab6c8b60e0b954625dcdfb73d220400af1badd209039448c76838db9a5d80ca0d335122c28c0ac01d07a1950dfeebe8295486d42f285eb48cd39c283f51e18e96777c57f297ebc0693f4b4dc793a6dcfb50107511843009ca8f0a6682138d25baa21a8c7164409965c6c93b2681c0914f167624714ef7e231318bedfd7320c0a39a5ac413d1a15a58d6d1c98cf24ee0b8076964be6a6d0e0433810fdd6186b21f35e9e4c0af84d4ab21f8730f0f420d0c6d3d05c5ecbd93f1d551da4d6b2a8c1604d1bd9b87264dcbbd3574cd996f4696df8c2ab806573787f01112cc5cd63757cfd54af6a33aa50347ed913118a117e7e7aa2114d08731bbd48255935825a028ac17d790738478f9238624eda18b8d9c755967392255362c59d4d286fa32eb609768542a1b3b5178625384795032d4433a47d2a900e8fb4737510b55c4589b31da74883b1dda1dc98aab4b80e27f8e178c4441babbd31b7ec7fe19e9a644d05898ebe61b0f2a81fec32ad3565669be0c13efd137add19333f94b1fa1acc04cae4b6e76c66d44039c3b7171579dd45a70230c7c7556750e6f182416b1e5f93926833ec7772d734a4ce78aab5e6549d03252309ac26e7f7cbe07c60166fe1e735885904d448ffa88d1bdcbb209cada743e5995447fa7978c4169247809d19f8eb515ae6988fbdbd455f25ab6e35645baf90f7e7a8a51c943085c47165c699bf7bdd9c1c9266a97a55a0f179b5afe7c2cf61c9a80b947c9acae8de1711ec53987d2a69d8e20a485255a3e982444564e8825d2cf94777cfa767bcdb2e8c2795d160b70559a16870b9d0eb8dbd80b94f7155a4be3cd1881db07bbc3ba9395429aae29bd8638362cb8082f980df95445ba0538e2abdeeba462a279e62c249550529759cd3ae5b953eff6c452045e105dd3e14d3bb69e224f833bfead754b2633ec4d04c51b18974d47cfcd1fa92d2b5668f5781f5d71f989964a60aa79b985c56c04d6896de1fb7d621c0a65b013f947e6eeb0caf094cdbe40660801f569b9e7fa890fc16e8754ab8426ed5d1a2c731cd19346658f89acd3625b42313beb502c99878ea36f2068363e63ea16ddaabc9be59058a42c01e6528fe60abd89862c4361240b42d1c44004e884dbbd0c025a7c6b94882cc4b47a6d1e622945d28ba2c1a1205d2ee7df93d70e4889319f9bd4bdb9a46817539f119fbaef6c74d4c6ae85bcb7abbd5f0b9b01be235ebac83afa5b50cca802eb7ce0a5b0f6be95b35110d48c0037fa5d4dc9f00d780fb743891a51872f3299289e4de08289fef7d45acdb01ff163acd25492ddfca4aab9705e82922bf5c99a05064bf563efd21bd2eae7a743c31a07ccace19c8d6f01f63d744cf120c9282a3ce38b7848bddccbb399ed598408d8f6df8629b4b3da311505d65515baccefc7075a23346d7ff96e9c59047fe40cc10959d3fb881722dd3e1c64b4f36789814d24fdabb91e6948f76f0e0151c152f386cc41b1a64251b5a5bc7ef24a800b10afb72b003a5ab6164b8fef4c61655f484e2a500f3ff2bb36480caacadbbfefe7162dea9ce46240c8dcfe69f1e1f21a83c04a0b9c7bf1e3adcf6d2b296ed606b0049f7fbb961b3448d27e80a29857f83f4b9cffd5bc4652d2f4c668f5f5036c70dbc76689ae81503b879928dae0e1dc973d8a0b67d6981e468373176a30fbdf12e5003441ddee6a21bf3e18d950ca033b7d07d821a894628330689cdfe5518f68fc88bfc158146f787aaf8df8a3cff5efc1f40c9fd432c1da01d27c044ea0fa2728bee552368625b66a961e62953a3898a49facd0796da9daa4a1d28bd4b07aed7335cf3c46013dd1001e9dd6d6c05fcaf14dbfd7d521cf58bd79f409fb42b96194d27bb30296b87e0fedbe97b58c830f3b76797b170a27cb4998a6b0770a257727c10b5b4354e54a0520882c7f9420e68ea2292d29991790bc09f675abe7333330fbecd54c9f16ab67972ca9bfbf846948b2f154bcf8609ba0fa5e8fa4d44e08c948a7bc58eec1876ef21928002c008ad0330425b863352578db311feffa37724c008a5741a4e851e94937e8966bc48b147b785071b40b85365861b77bcbd8a2b89793bf7c1bdff1a019092b299df887c4ad137be469e9d26d0169fb284689808f57622f225a1a47013aa8b348ebdbd39d7de9f59e39345368120537a81337c7f08c5893e4bc4042e9e7c4f7012b120c51457d667cba77214f1392861dad4e0c53db63d14d83eb82eab6ca7164ee2741dafb251540b225f9cd8b63c8fb1f42b4fa9602fc78af1e6c25e0c5b2546f0128a1c2ed8cb18abbea96e8dfbfe2228893fb5feab04b39a8d4e296c2ee3ba4bce6c925a3d4057c98acf0a4764b00806198cfe214b6f335b83a5a142236b98e5b7c5fd85f5deac021d75e9ff6af7f8abc0ab61e2f4842385c27e873ed076da33d3fa7224d7a485ff5b3a98ecd8c004062ddb672cf1158530948114f69d5d090d9830112afeb3b96eacd53322596ab934002986f65c7f6891c7008cc380c775f79d5b0c8a44792460ba5abf40b6be28deac3c811df70cf3c729cdf49734411d7aedea10620b2f99be6844379f01ba72b4895cb4d8c701226491f25beb123f45b7cffc3ad12801cf15c475722e1281cf600d766264b74aa2d06cc90b373e7d8a237de28062e2e713399a989200fa1670c09c8a989c19e8c880b7613e58916b71dcf06b557fd99c8110ccd74946cb5c489f92e00650ef76585b91b6667bfa40c455f3a0856cfcc875184fbb653bef821cb0de285d669d380482bdfdf8e83f305de38630c6d7a9f75fb13fb1ade67fef5a3032f846944fc6012b0cc932dbb447f74b8845642c0cb2edecd48b765036bce474ecf44ffae7cebcb68648caf3853772fe7c2f6dac37fd63d60a535d659901a5bd06012247b8b9eb461f7be3ae7a7da8246b971670ae8484dd72e0d61000047742aaebda4498f34be5106d165c0e7f967cc4e03e7dafc8d250e82e60ba94f4ffe0f6f3ba98f348eb119b4ac163627fdc80a8a587ee44bc3234a3fc9034ca3777d819d2a7c771fca131e6028237532f2245590adab68c1c0599af87b0075114b91691be98731e620d3ee13647c97fa2a47f268615412fab1f61ab1053e1a110ba09ba37d7b3165c424483a2cfce6695d0b7238efe204ae28340c399f4419c676ecef986fd19ad8a12d618ab21f8acd0cca88eadaf904079a21271a8624c1bfa9d9a153e8b91ee4b84b052088641eb0accdcbbfa91801f315616baa86f4f2cac6e6d4c7ccd3925943e6df6227e985a1b47e2a01cd91a858118fed5196c14819c620799a542a218e6192f691186966e58dee9794f91ec60f50c19b383d4180d7d88715152d577bbfac5e60dc3bec27ae0d467accf6842393e9dd69efa391f73bfaac326df6578426c52a2653d78056f1229ad87ea75272834fc8c0142e8712c26c4102689f5143e5cad9378084d0e5d3c8d0bac86616b819ba368425893aa289e048d2ddca9915eec0c884dfde91baa412e479d9136f44e2e3fa25312337be39b5b707c51c09d9964499688857bdc2d396333f3c826166f6efb13158f15d0dd8a892394b8aec3d0675dc1ab3a46a2394fb851adc8bf2eedb6b04baa693c8fe2b77b8d03a6e6308e7edc44ef13a0cdee52883eef2137c25dd8ad56aa099b2f99cf1e7d54cadd6d5717eb17c8add78d5d6f6d3f6a214292bc77273375dfcddf4652f2e6320716ddb46d809e9556c80fbc96fe39b94090eb7edd2949dc6596dcbe9094242a089f27d692698dcc1c8bf7909aad288ea7763551a617803c7f1018e43f1f60716106a3c5cccbfdc012d00a8f3a8f3238604dd82848e9bbf9bafc0784c68e11a8d2ea4e9e608c16326bdba1f60929c0591bb19d13e6540eb1c508fd59984a20daebc9a75cf2c0633302f0b212132ae277f80baca03137d854aab8ca56e0507ff34d49fc1709d234f8108259a0e45e47b86efb3c065b706fcf867e4fbe942da42176f0bd0cb234047fb4e7204acbac5c61466f852d2c524fae7747ffe2a3205c01bc2267f6975097713ef1e1a7407784a17e87c39b7e34a2b89717d0d1c91363a6c27b35045b60937d26eddb658db8f288a9fada1f97df26b6f6287b01c89db30ba28a72d8147719ce62d6518cf492553ac3b6fb4bad052ca8d9640ddf379ba6fc69818940a583e410100dd50abf4f8aeec2d7d5fca9467db95e797fd4b492022cb184ba5ba54c24b1ebe2e2d0625de5c08b494e1457b99e03d9fdee8ee54df998573a2714da408ea020a4f92282bf177eb506accea51151b92a18409b70ef807a1b08fe416f6e89e15695a35b45de0192711a5deea6e2d9fcbd05bea3c66822b0462cb226fe9691f44dc60b7dd18c9921f84b15399488f1a3af1040edb4410300f286bfa08954064faa250224bffcc413f77d2e43b10151b89f5f39e0fde40d48e583c4bc7d04edf5e998416107426172ede45c82b987ecadd6a0337dc52328e5ecd4fdf1f0b31aea062450d433a4c1690d9b358f70c234526d29117b2b183bc4df3d31863889962851d79282837c2fe810bcb1c6a8d3fc051f407fe1a47c3d3b7a3d5206351530b5da15990a25b608691e5f05b8872d243cde89a16acc8b7e0177b342f1c0ff210fba93936b5aac0148cd04636eeafc0e837276eb861542afd085d4f3fce0cff799512b719df343e120748d807381d782ebd80540a8c736fa4b03366b1edb8c8d8af9d58c3104fbcb85def0655cc9f1dadabfe543dc253bdcb52403d0f64ccd801bd10735272d18d2129bb8eb08310b9a7b0577e057c411ef7e600effb395be8fc8949545a7f00cd8d63b2149cde49e3444531ae335eeb2574061749111b683f92f84028047ea89c7278e4f517c77e26deb9d3141dab2744deb5917a8a1d62da9907ce785d5d0d95c50942073bf987fd1bcf65733f1cf55b63cc877cd54277d22de84f36020c5fcb3baa332ca2dd406046a2e03a359201a56a503d91b5beb1f218695c4f48bfae36fa0d33ba0cc7899017518cb8530c42f76c7c2b1da1c30a84c1513e54c840170000f105565e9d8526d2f78e9609e00d55942422ee77b261e7d4208917bcbbdf7de5b4a29939401be09260a8f093c12676bc91cf56b2a85f10a7b653cba0e7147afad2571b830628efadd4e8a7335c175eaf670fde51727309d2a19f4d2aeb52097d74c23af9158aa06f0f5e5906cc926614757e17f2a85f164ad563d9c73bd3cac505ca6be14cc45d1b572ae38535dbf38813b0f6bfdadfe066543720e686619c69b0bf202504ea69bac9ed9936518a7521fd6e73e70462c86fe16142235914c0b2182b57f8c399ce3c8d0d53fbb3e5e6397860c8cbd7f7d19e43577005f9fe60978333180d75e7b998550c924c69b585f86ce5d3bc5b9a68c0c74ba94a17a5d6ec9a1bafb1278d20de85236adfe0040c9c465ea67f51d942d5036f1b07248f339d754c9a09aa279877a732e5d793cac3fdfbfebd1e112881fa19d2b90746cf5408ac63ab67a10054d5994e09dd1ffc165363461c75d90661c08520fb34dd3deb5169b372d123d6cb139c6504e4e2c4af0e34659b8911bf1a4e00f50dfbea4417e2581933d9568ff188678cc085249e7a4732ad1d2089c3ff7d530c315624c4c18c619e959c6cd222ee5169c7d0bfa8852089d0255a065b6f1b0be04a526409ca93be2cc153bba0692de188a968fbdc687a9a791de6111a667a6122c018e2d2b5a9aead8b262486f1b5d7f0701e24dd4b5d469ff783580e7bbfee135b165c58faebfe306af99babe673b7cafd93413a45181aef551b528085d5d32a239052e7e8cf90107b11fb77da11e222db5944674cc5b5eec23e803b5e12bb2b16fc9d934967bf874fc98044da3779ca2b7fd685f257d2c2824d3b5e6181f9456985bc7a152597407bbe879f546596badd586d62b3b6ed3fc070577d0e0d0e1a10d8f04e46024c31378a7a8a7bcc665244392e21f86f62a92b4a3b410f4bd7e94d79f5e975abae7c00275b2060c060863315ee33fdfc50b507f62f126eaf9b48658c1ac7e4068139282ed444064230a8e4f411d0b14ddbfe5795fea42c0ebbaefba94de367d371515d309a5f2dd7a730e34b277bf93f73d7defc32d9fe7795e0e72faef6442a9a8a8a8789e8af77da1e75d7abfcffbcf33997e973ebee7a1de0331febeef7b151515952fefd2e357f914b843e93d14fea84f26223405d2b85e87c1fb77eb52208defc0cd430e34726ad32196cea0dde774d90e819e797b6f7a1e137f0e7d9cb187f873bac7ef6df4bdcfa1391ddeb66de5d33ed48a0ac7f2d1f7380aaaacccbcbda743a4ee9e76b9a5c7f6dde7745f02f7d6e1af739b5e4b0fd3973ec794634e97e9ec4e777eed3690c89c2a288ee55bf93efc61cfdbb4eef17b9fd66d9e663269defd1cef2f9db9343fe784414e95b5e47839e69c7267023bcf3bd10ef3a04d6ffad4671ef3aa9cbaae45fb9567e93e1630e794537aef35b0c7e97a2ae0c974e2e26d31fdfdd37ba00c0110ef82404aefbd09ec51c2ffe1f9b5f4f09e7e8e47734e97739e3bf010023a319215156c2ad17827d4c6b282535f6bad95abb57adff7b5ab1fc7715dd7d55a6b7d0f7b2a55c5ab28140a85c234a592c9a400ef4d5d4bc9b452a346665131799e874d2d28940a0a871e0e94c6f3becff33c1c58b4d8baeebb6edbba6ec564525941953ec5627a6edbb615ec6df7c19de92ece7cdb57fa5bda3abc43a0b7ee7e8d7126ce7c5b096fa5d2df6f2b11999bca966231ad984c26538d4fc11f8046d6c32bd1409f0688031c6768bcf1eee944e3cc9c28140aeb2fc69bd27b2b5ede444a608c3397072d042c9ffa186fb4542e3dcb4ade24d05e2ecd94f2268251a76edb360fc7f7b6eefed7fdcdb6191db9e225187031664b9fbb4d90a469de9e4773adb57ea8ae6341e11595aefef7d76214e53e08d0f8d47f7fb97c4fa7ef5e930992eed7e2e51ce2943141d23641d27732e1ffe44a7f7275316641ada874a8aebbddf56e77bddb61aff4b194f21e5dca5ffe52ef3d53c6444d60296fb9ca3485402acb955cd5bad2df0c6760b9f2fefb4e600e3452499e5cd59a0269fcf7fd0573a091f274e4ca4be52b5724789500499b2049c7cff00744164c90ab0f882cc2f051f1af88f39690470f8c3168ea5ee2ac2f79e3dcb2a16afdfc9dc0ad43f34d1a1d97a3c14d1b1698a7a1f134dba456dec6db3c0f4771d82f10d4631f728a363d6e399932fe161f5f46755fe9fbde47d45f7e39bde9bfd27f2d8fefe937c6258c5bc014e8628a32b444bf1ae036ddb0f22714ae9fa2e1f2a8d27f8fca328c53a9ff1d6adc52ca3de414fddf9b1e3f77ca2d39a753a69cece2ed9e87b7fc88faf43ea23e6595afe1a3e54b7fca699153b4bcdd9fee83b1e5554ca6ef4cbfb5e09075423cbabcb32d9e220e1a65c22bcfc3512e2ba71c24f5f84d205d49a56068d8f05868641ecec282f1e92dce2cf684a78d0d4763a3a37bee7d22f72ae0c641abfcf48d474bde4574cbe31b8ad4f8afc67fcfcdae6eeff2f528a2bfdc92f3fdcbfbf872cc17d1f2d660327dbc25f06bfcfe6d337d090c716801ef88c4834b6ee1a2aaf23f294565ca92434ab9efb8dc458eebbac7387084e19b4ca67a32994aff187532bd3f484b8ffdd775dde3a0518fc226f0ab4fc1ef4fa0e95d7fe02e651d1add75ddc560144c39ed3f39659ba008f73c2607527f71189e1fda84d24ea50f73d229f5f17dad99ee7b33adb4d24a2bad343f80943efac05f7fd6bcef73a6ef7324ea5eedded3bdf796f087bfeffbf0874d5bc766ab41bbaf827592d2d3025450a92ef270eebfbf1708f7de570adef7b68dbe97deeff3beefe96fe0feb69794d247510efcbe8217fc3cea518f7ad4a3f4b70b6e11fcbcbcc2b2f2e1f7f096f70f7dff87e67e7f8f51ae94756c2ccd41503a369afeb5d1a64c69d054773a9d4edb96aff77937c7358e52cafdfda1f14b1a0f35c528af51d5a8404ca62fe54b534fa72f959ad44c9fc7a41d4bde291a9a30d455e55d5a6c50600d4e5e20367e7d9c4e6fa26f92d587f7f404620f6b6c6293a3e9d8cc4dd370de453e1dbabe0e1a1a1c38c23026c645d39409a5a956038c2e43a9e9ab01c61fda03756cf47d1cb7f7df3ec8d4369f37e77adecdb99e5751f5794cef477741cfb18f2fd7ad632381b8c4f77bca3d955cde3a3634dfbc756c4c50f423260846d8c026260846d480c55d500277af774bb7ab194ba7b26242d5bff7aa7897e2fb5fe974efe5bc2f7925ee6eee7ea7fb3c9cbb2795ab724d2814eaa26ee9a22e57f2bc54a9e43d4e81d469a07fba93dbee5622328310995a05e3bc3791a9ab0706f12a0637d638155d954a9d5053e5721cb7fd05557e037354ee7fe009dc21f84a799b3291f95db09453caf7bb5e0824e6e136dc7579f380b77f0fbbafe04d811d902d6322f463d1502c2b5cf7dbd675bfc2e275bf01b9fffd967373fdbe84b7ffb6af6febe6416ff8690bfefbdd8673cecd9b07ddfd97b7af0377f7a52e13a1fa5bf98eea6ea55b41b17cfd8e5339b19c4edb69ebbaab6ddf9db4a774cbdfedb44e7b0cce8d75bdf95eae14e7f4ba4dd3eedfef31117a1ff54188508dfa6d4a81d994f9f22642750d397858c37f8cb33fc2f2e54a0e2123f7bf6f68b955b4fcad434bcfa16550cc517fcfe870b5944fa5949f92e04b162ecfd140c14598cc8fa00cba2d32f79031cb6e98e10c9cfdbc35c83cef0d45742641a9b9094e5048d5590e3dacabea2e93d98f208d4bd1f667146db919b3b5cf715d777bb8b6d65a3bf5b4d66bc9b15abe0974cc34a4d5c330a49f9af56d6df90089de610c758845b1284aec35fe8fbdd484d65a2bad94524a29fd4ae9bb48c194524a29ad9522c162898e2d2c946897ae1fb54b1dbde6f5ce6ccc7cb0d2b1e5831ded57c6b83793963564bc915a6a51a67ead9e5b599ca9efa2055c3fcecc8626071d5cda1c6190cd29cde0227db911bda400c79650928e2d2124cd799732daa1f9a043b968af1e1d36f14666614a0ceb09a24cedd1f2b74a55c1bd214a1292874d340a95376569caa3934ca6bca74bb7a0e02a2262a231ce7b22d151b4e7449a0504a1202025baebf2f6952e3a03e9e53ad29b14d23289c65c5392905e594cd2363ad115098da6d97670cca6e76f4ec747e1643247a44388a11162282917516652571534fd420145ea90deb4a52515a2494495cd037ed31a38e037c541037e53297070d3fbcf2b44150580fca64618f09b06b180dfb4881bfed44554c9950dbf27180af83d9d90f37b92f1c371145125817cfc9e54f4f83db1a8e1f70c4202bc248b10f07bb6e000bf6712faf7ac018ff7c4882adf31c06f37a300bffd0a04f83d8decf04f8ba87216ce6f27c2cd6fef6200bf1d0c9bf7212752fdf6266a7e7b1434fc762a74f8d5425479d20cbf1d0502f8ed2b08c06f6f018d7b11e7e7f82dc300c06f29c6cc6f6986c6e15cf85b3a91f92d89a05d6aa15d56a1fda51451355b5366c6c8265e9048a82652f6feb227de682efc96434814688f5a8855d014c994992ebfe32b8611bdc8892a2aa4f323de60dff204d04e83f619140ded25ed37a2f69a3236337b40de9903f2c60db0b1d1530848de1903f2c60bc837e40da321b121ef4c0179e39cbc531a123dffc70a68aa32241f79673df2c6350021e9f909c81b46672d04e49d1d206facf37c1eb26867aa321f03e49d15206f4c809dcc47cfdfb1c39a2a2c0927efec86c5b2c91b466344aabcb39abc310d44447abe8ebc61346b86bc3301e48d0390776a3e4dde301adb9932f373e49d01206f3ce383236f186d8b2cd094992f43de590cad56919e1fb660c83b7b216f7c6322c5e40da3ed8a0a4d5575b990374c460222792430796736f2c62f54c8850ae95983a6f69aaada92374c2a8583f4fc14cd58f2ceb04aae79c368ce04c3a7304d42939c84965044d44a4a8a33d2b5096b48b42934208da5f94c27d349094923425b693b4940386b6550c85c59514634879843c41999f95c1104c47abde28cf492b217643dd92adb191a8a331223c2cac05e980b2b721ff7b9a0eb8e0504a120202952386c079301d683ad8a8ae28cfcade80ca4976bc912cd025923d89615b241b227cec8d7995d5926ac8f45627ba0e860ae294948af1f71c6b50d4a02514b487bc599a989b1ada0d88cb0aee0a3cdd0f35fa0c0feb207e89abe760c692a1dbf43ed181c389a100d375c2673b6a99439ebb403a1d9e9cb13d8ffa5bd6c34a11d002d7f6e3bad243da310929e3368f95bf3010d8d183ae28d6f1a74f41ab9e386225b87964f2306a6481ecadf881a2025e0ea11f2d178faf4cc091c3dc461d24cd58cd43db4e1d3feae16970a1d4755bcc9b4cff71883a692863207fdf89c04a57670c6b0c6b03eccb3e8fae91acad65092ce526e81a5a43834fdddfd805b7a541d3d945ae6ad1381c81e8ae8d94376d148ef4c6f1c7a080fe9cb0df044a2f37a05b15b83db7bc3edf18e1dc1c598ddf5e8fa5cb4dfc7d7c155381f9f025e831f136518a752e1a6d1b367ca7833faa4d56299b671ddf53e5ca2429a3ba154565852346ab4b8bcd8807910fbd79c0b9d0b37e7c6c7c5c474939565acc9626101e680b825cebdd0e1801cd194295a1204047459588037b71ac255385f81e20de7e28eacb5f685b736062bf3d65a6bc3b7d6c6fe5b6bad85796b5536bfb5d65af0adadb12e6fadb5b6e5ada5c1da786badb52f6fad0e9b7a6badb52c6fed0cb6c65b6bada5f1d60ac0a2de5a6bede9ad0d805d796badb52a6f2d8d35bdb5d6daedadcd615f2eb1d6ca2300b0d65a6b676ce92d7e6badb538acb5d65aeead0cd65a1b63adf7d65a6b1f756bb02edc80c1465543838e190410009a1c0098c121c30b312fc4c4a02213c2f0c28d18174e0ff3a60cbefe05f32ab9742d9bcbd6b26dd806f7b26d9bcbd6c2fa521bcbeac7aedeab4123c57251383859d4a95bc1810a8ac599ecb6fab1abd56a9338c0557b659bbf747d79eb286b6db9a4618cdd7219cd3c63ccb336f36b33d79ed777a4a9baf9fa5632914238e05c4d99ea8a37f3c755f34595d0259489be4f7dbc26e6efd324220ee591f94d65a0efd324f126fcfb74c75574b55ad19e0bc315220efda9f93db390146f608c5c4559ac231614569422afb1d145c4a14334fc9e4970126fc02057d1564ba8d56a112df19a8f22e2d0231dbfa70ef4fd09146f5afed22c89beaff93395e8fbb3c76b6afcfdb98288537966f83d89d0f705c95575b54a5acd9dd55c41f11a1701fcf6315ef186a589ab2a8be58465c43a6a79cd8a1611a70e05e0b7036128ded060b9aab65a40ada09bfafb3e8388538f687efb12fabefbc49bd3dfd7cb87f02349f4cdb410712c4f8edf728a9478a3e272955dad5e2ba48bf222e2d81f00fc965fe8fbb228ded8bf96c51a6235b9f3ef4b29228e1d9239eacc6f3985be2f97c41bd3df97485c655b2de9d3625d1cbfe511fabe2c22e2d82322aeb25264b8cf818883f1fc7d1ebc66fbfb3af1067b61d77d1c5c85c5f03b0e41dfcf8938d88fcc513f0eb176e8d0f771b80a63dde035dadfff116fe8df0fbdc6fb0b83be9f7f4f7dff46c4c18662e28dfffdcc55586bcad4bf4f65c4c18e648efaf763bcf9fefe0bb7862ba4e96aaa38a02953df85d58dd58fc4e194d4fcb0a68a5b51168b35247138160d43ba6eaf57ebd57ad12389c3f1e8a047ba3e7d4dd5d66ad1578bbe5af4c52371b6a319785653b5b1582bd68ab50d09e047d76dc55ab158431267fb09c090aedaebd57ab55e2d5dbf1e499c8d87a61ee9aab55af5d5aaaf567df1481ced2807cf6aaa34166bc55ab1563f12471b02c08faeda8ac5620d491ced6766a83555d9ebd57ab55e471247e3c1618f74cd5a2dfb6ad9178fc4c98e64e0594d55c662ad582bd6ea47e2644331fcb0a62a5b652b56b662e9fad890c4c97ee40b43ba625986b196ae1f037247471227e3913968ce2f93b7d79fe1070310a7e4857c23bb903350fd1b309e0d6ec5e258ba7e0c78ffc5f1c0bc6cbc5e1c8faeef424b57a375d4d2aad16a1de9faf98573d958432d1babc6c6da5843ba3ec8b2ad6cabed87655bad6cabbbadea3f0d2df5da78585e2baffbda78747d985396b58e5ab795b58e747d1b2a184a630d9d34d6d558196b48d77fb1766ada8fb6d256daea47d77731d552f6d278ba9dd7eba5f14c2d9560aaf72cca5a4759ab355b47ba3eb7b560d24857230f594319ceaca11a747e9d9268f5f33b45b355967f5c735e0a733d347c087b65012baff2a8d3cbc7e135a6974fe335a597f8a5773beee5df80430e3a48c0553fa5e61788a669423b3c944853e5021286b9902550ce71ca6019b3f12d36be85be0fbd744ac7d61091e668f702c2fc04b57f107c0a32f1f5adfdae7b0fbcff7d2514787a1510f52ba04a0a64791a60ea6b8034dec11adf02c23c0f97402fbf531a04651497c19ede1e9886794934ffb1f92fd9256fdc925b409897ba46b6026f89e449dabffc9e43367e4f2db4cbef890409f6dc0b28b50db0071e5adee5e90562e35b7edaf896e7bc7bb1c1c6b73c0f7f69017d90fae55d8a4f1e186ff1243c553b44197fa424df710123cd3c7c01ab76016bd0be059451640dec69609f029dc743ec59405f813e8487d8ab80de8302fd043a124f023a06fdc743ec3fd059ae0474200fb1ef822ce84c847cc8c3d683dec4dd49e649b3c86bb4d7f4b30ec480874e35a5f5b7a460d4b61a6447d5dca97f75ea1da5ee6ee447ee49424340b5761e1578673ea84b5046f1f03dc9a520798821cd6ce364d41805ed6dc932a9c3430f31f9f204c69e8ba5ce439abd443a22cd882a3ce515de88c682a0d8951ffd7aa6a125170f2bc6bd44925192e28df6d8cb2bd48895521e625fab7cad071eb46bd1865a310ca3e12f550069ecb91f519522c280045c65faad03470bbbf101efe0116b684da5894f8088e3542bd1d8fb8f87dc739cb53e7afbbb7db7bd9765f73ffcfe53def72ca5f4dd7fb4f657d3de3ba2b39f42403a5b82287ba7c18e7e21a4eedaee72d78e942694f5457bb6660f862306e5ae9b679773fe2cc7dc7017977539e6e6c020432917eee7ae14ba3389a66ae5b19944c3d34ead643f52c9192a7b147ccad9ef6ce3ee7ddff0b66ddef6dfe645d7b6bdcdb66ddbb66ddb76e302d9ba6ddbbeedbbee7639c75c201b9777f660bc40fcc36e82f439b06ea0d45036894dd9f9ce2a08f0677074169c439389cbf8640105cd24620eec2b387fc0e9e361923883bd064e247ee42f19680c8acb607fa4688828ae39b5a9cdd99a5a9b32d86bdacb88335b3207f6dac778d3bde67d0f9ff6de9febbce67714e27eefd0710f40dfa7f9eee3fb7db1a8752f8ebe3f8078df26de741fd27c987a9cbaf7defb7dbe40ee77efc5d8f71bff07737370f641ead286fd737777777777777fb935b80752c043ec8776740c3ab6b270a2b9994e824e34f39c5eddb5a9f6bf407cba7b8dae1a14f4239a8ea69335ccdaca3205606e8ecc3e485df30e18787913c2e0bab93353d38f5c41b3457952499c1ea14368eca71622f6534abce95e25897ccf295ee318941486ede9e47ef6dbfb0c7be904e79d51c0867f16247b6f864e08954e64148dbd7f8ce22116639ea193e0d41b182591a671af6d1af7b2bd36a4b7f7e76a3a09ce0ce354f83030eeeeee33471b17087d7fb936b8a624924444be93612c89249196399bae08e57289414ad2180dd55cd3b4cc6bb6ad87b6651f86548791c65ec7cdb9a1a5130fb19713604e4767b137817207a4600577104204eb0bc419ec2b1073603435553aee72974b4a6332cb1e969b33b344c2b97d1b8913ed267124e035f4fde57219ec67b6652e2ec7a3d7cacdb1592cd1aa6eb3139c3aeb3a4def01cc49345b8e697dd36f9ad3ef10f5fb5556587efe00224edc387a3e0b385b2e83c9a860544a46066b34b41dad4ffbf9dbdbb3857db77273bcec83d49ff6a90b44fb9b7d90da5d1e62db5d44361a7b9a2fb2ac69da7d1fa8cebe874f676f9f8b794ef0650b3cffe88d7c429a0f538fb19f1fe7ecfe02d9f28e39b38cf9a1d3b3a4484af119f2d710404e92986e0d36031f758164591ec9db5f22f1913ef3b7fdb9c33341d9e321f6a59b633d1b9a897df89f4a61dc7ae101b62fb9e724ebbd096dba40b2f7eeb1973f9255f2e6c538950abbd99aad56f6dd6fff2ecb9e9bbd9be3d907c971a044b25120ce60cfc37dc779bc863e863d67bb1dd810529398a4314cae3416856cbc46fbf8344ab8b4ce267106fb09ce9687d8bf5081ed4b4c461957bcc91efba741a3549a9eb74e8c6ef1816aff1e3eedd9679f79cdce9ecbddf6c737677bcf41b82c9164591e71d9237bbc267b0c49e659269d5060aa6c5cc65f286b61222debd137e7be671f648fcc3f033d9088d43763e0fa74a00e7003370dda775c9f2d9bf8f1f191401ac3b0ce779cc7572f5c1b3637310dd3dc35c11db6171be0d9c4672bde448df9088273102eefe021f644a4de3206688c3005bc667bec31b083d748220f311dda965e684c3a913e53a5c365fc776443b849cac9632f89fcbbcc5d52318f3d57d36dd504e2c087ac07a9b3a7992a3f7219ec312c8ac63097a2318c8708c3fc6dce3cc45e088d1a7b97c6b69b33b30f5267197b88bde7ce432c06cb412810e74460605fda97f6e57f174bf468b1d2f35f7ec05c144d9d529ddb23fb58e5f69203ec3f99b84a22314a39c14d26fd3945bc51624a11713c89cc419f664f7f2e893775aa3cc995d22420418e59294666f7f1707bd2bd0bb83747be7773e4db6c335077732468c15df5b4d6661c1ece4cc1091465e80769429ace96bf74f7c9ce8a590a9c14347dbce6c7559ed7d88f3a88f4a0ed29a745bce9ee77f2e62efb4beaed2e40fe96efaf97481e42f12497e2329e844d179274e9d3e58a026f4fd2ae57793f5df3c86526509cda039a2a2f034d8c676afe87312fc141dce5217d2292fef622cae335db8b34a5ab7813551e3465e80b416945a1f469c0c0db8bbc28ba3c7a74f7a08f994d98e4dcd073894705f6e7e63cf2906ecaa3e97ba4d31567e807e120f389c8a4e9e33b5e13c43fc9a5780d4fbcc19efe4441bcd99efb6d7b0b6e2e6fe92fcd81dbdf5f37c71d8a87f4fd250abc1d48534adf5f0e65fe64024e210fe9a44253cf73c93c72fbd2255d7b767389d337fa98940b46753feee3588f6c69fa0ee43594fe10288fc81e0d9c41e0049a4be20c7d99345593897b128933a58839e83b4935c1944e1167e86f5742d3e7689ae0357b4e57bc0923def807992fb0874fbf7d6def02fc65174bf878e72e7fce2c8fd86e6bda39e954f678487f1a790d0e0ffda72bfc1476d1ff23bce7cb97f428dec4296717238d2b7784d07a00e7d14ee3a19c59d6f4609f87a7048c05e921c80e7ffa58487d8633f510082e626d2b8eb484a7fd1db1a52da519bce1477dfab4f628a22bfde135914604a34c9c60a4128b39524a69a458a6482f46a4773e27ad5347daca6247bffd1f5e63eda76696a528d882d19081e94f2c12d52db867ba844af9cf1863a432888b311c9dcfc509c6cd692fa23dd34c63d3011b1d849b3fb8484bd843d4ef58145f7b1de28d7d93fc127ed1f23f2fcac8bf8f3a819987b48b33dd4f1006fd3aa5ef7fe0cd42a4ee72ca45c746c7f086d6410ab8be0c22de046db944d7af16dc34537a9cd37a54472d97481eaf0947a0d47f13029a6f844ec57c042ec69b180930699435150363a452d34ccfec4a5419a2c0f14950a3fd8ed6ce39b1d20c70c478cc19a7cc3a5dab86338b19f63c3cc618e3670f33b5a555eb843a7a18670da4bb8b87f29d3a75f748edb5e1d3d4517ace1f70f169adb556d9050884e56f5cb7c45e6252caad43df8a6a7f827166945297506cad59866173d65a6dad5698224e4a33fbf2b10cc3b09c9969a55da61915a2cc6ced30bf019685493b40a383ccefba29b3d7a1f1973230f651bb06663a4e557681f820b5cc34778046d74c732633e92ae08470d4f3b7ce268482983bb009592987b89af6368cb0f63ca6966d1e25f328d8d6f1287366990d59963d9681366a6c4e3338ce5f8e94fd452995944eec5252da7533fb8f74251473697f162a82fcd629c1107a66372b95b2f3cce0902106991b607621c606ccb7b8bcb0a468d45851419d4c2500cce0902106991b312e64f0616cbcb8b4d4a091625951419d4ca50980ad83c120f2a92c65fa251b46583e279dc86b705e2903cbc71fa31777c28f30bc4044e4e18e279d814def3b1efa3b8f87315c81b72769af35c338b2187ee3fcdb8626fc17b00e53196885a68cab6cf6e29e4463abb1b56c3b1b0bb7c2a9703e53c63ba129e3df3d75026fffd1f2ef57211e2d7f889d1dd1f267f2c649b47c1c594846d1f263a82e99ac44cb0ff3ce60c81b33d1f25fc83b35a4e5dfc8fb63f20ee5bb90378d91969ff3b6d1dbee687f2b34e583796747b4fccf1bc358d754edd8c83b25ff256fec625d4db4fc96bcb31a79631a79a7740a8c3e422c79a7a47c95bc332da58ca2776afb117dc1ed9d27ed98a1a32d797eb63ce2d14e1484cdc89627b8cc6b82d0a760901989b4f69c1664cebca5265d6ad87c1fd8b42fc139354dd389441a7b7fcc06edb79f20a781ceb5d8301f7b1f93cb5b7b1f24f645b47dcd3e8f89c93a37597b3c800525645046144f9238627d6e582ce89982c48b750259bf98018a271c11a28a27a078c27c81075440e485113ef0c10f4d581908f1338a40018429bc605544153428432e2104139e782186148a68c04406118b26a09cc1ea01909128cc203c5a41159a4c31638a2425844c01c2c918647c2146154ea86248102b6001175888a20a3292309718b28218745105245ef418995c082992833384f0842d9e28e287212401658a14422c71042e8c9c90644864c21856c0c0084f4c114612720657b002094124f9a000480b48cc1f86382144851122a420841196e058902189229a58a2032a9418828d01154418630c263839c2b5040cea0f428e68c20f5820d1808a319e58248654240c89c010aaf8810b21ae306ac10a760c410ad70d82b0c20c2a0031796480420997100f8448820b90d48842042728b104194801847d0111420070e48814e0200922b68822ad105204a42a3c918112640491c554c1101c4b6c01084514918493266508894a18b20492a32c4871c6121e30ac0b6880851e40218c188cd16a01d5c1901be4608c33be40a28a32640d844c255224ad945082082a0449a10543a810c5055b2821828b1df8e0c8905a54e48a1b208101144318c38926ec114f3c7105142694e1044a8f114354462469c2c80ba2d8b1c2169165f0832410818ba11e2d82008116468cb084154a7005cd1ee000410a404059b2832865f44c200c244b08828827b870c21221a45e31442621e4c50816984811042db290031608f901124251504213284140b02b1822861867a4800a4a60f18217f89421456a5046d0123f419002839d59c4100b9471440d8c70c2063748c20eb1002370418327b89ed8c214130921518a108060853090a0a8c2052a18326330e4fb02690a275853b4e02504088e48e1420a0ea40051c106d14312843084a231c8c8028b79058ac583292e08c2115b2461b55214c5083fa002105238b14008a955e4200420c8a0c2094d40e1029b82280422dce310c701846536e3167aa7b467fed89d02592dbff6445526bf3e902ed2f231954bcbbc89504d7faa6a10512688228a4002893a032d7fd719b0f46a5a3d735dc51999b74e05d252c6e898ebc386b69902c5999a69ce504460f93e9b00390737d00313ab3f8056c12c6f12e8ec2b68f3a67b03d3e506629ca9afb3ccb31ea6ce28c884863d135be6e1daac73fa675f1f7bc7dcb33a97e878b10cb442dc730f98e720f5334dfd1ff3a1e61e30ed7f86c5f649365f4818f6644a77cd39e7943fa704bf9873ce297f4ee960a0b23925cd93d4139f73ce297f4ee9ae39e79c53fa93300be79c7352ea4f422a4497908aa1ef531e61ce39a7fc39a53f9973cee92e776d5ddc00092ed79c73ce297d0973ce39a7f427b3ce25b851d2163ad06ee48a530ed1c008ed492ee95fcc39e7943fa7ec9630e57439e79c534e777faa3db7d820e7131a951b74e1040d6a06249a400165046405165700216946fc0801e9490f10a0c0d3f3a4e525099a42eb49147729494194272eb4062e464d2e1322284d9e6c42318c2c80d8849cd0a8d018f94cc11048381151f7041dc0201265d306088a2547003d29e28ec00324454fb0f85c57fc10b1f82295a5b22991280d8a084222596c8d409813205d017aa1e354548426e8e8f001460f2962042cc38cea0bc80527a8af181a6324793097941ec96381a40f51135a3e79695098c8c1eb897cd1255968225f4f70b0d0200a143a388ce6ca8b00c509e6ea8957220e46d7c50dba70a203239b4671c8e3d0132a44c1702332676ec1c88e1bf922e53a29a3904693272cd1098d885449a47aa16363fa09c2113a36469cc70fc1cece8e111d6fbc02d74f794dd48ff21aaf44266db1417e2622f5cc5b82e1b4f34c64ea9c8c0866033665ca14673d373b0c7031ce89f9a599ba158490de42c14c2600514666074849416f4ca3cbb3f01916a38d25d0506b8760c518466a06aef0594113ac904209260e60a568fb3865716402184144f102244cf8210b298db5e8d8d2a206faead8d20289de585218703146088d280f3d2ab0d4e1218e33f669e83633c218883396021eda7fa1026f4ce511fb41a2110f53c54367031147023247bcc9de3eb6cf65a0744920a908e90b2d7fc7275acaa7b63ed5f6a58f11f7a739d2c41adfc64a31e0118aa651727cee02a139461a297da4a41d5c46b2b4747712cdd0348a81e9eb10bd68cdd9b2d9bf44a22eeaca39d0cf39070f8b3c943f5d53c52308525c266a29049e7c43a691d29ca7c041d57a4d945428eaa178a385cc284ba32ccc522025afedbc82d4fe9e3d09a73e9c49da3593a68a0605bd00e15690d7b896dfa2320805f25052d64ca2ac4f92e24851240d1898b2a8120ac484d7c4555e9646d28987b28987923e47a7140f9368f94e7f531ae4354ca890d7d82050e24df6f22919f146d330706f79cb8c6a6c067928e95bf0a5140fe51462f2ba0a71bd67d2152616a48abaa6cceb074985d0921aa1e58eee616e61c73555948a28231f0b2d3f081449cb236899a4e57397066901cb20ea925f79bc66cf20ed3a4ae2a357d26390d730993f9dcca279042da5243569c54894774e24fdfaf2e712c96408a157e8faa21491965ef3136fa28e519858a2e34f1a17a640e27f8b0d5207a1ef72884c0429de24f19aa869a5914a2a773ca4f4a9a6d123f5387f561bc4a70e71263e954bb494ac2d595a7ae08783de3a91284bff13784f821ecff346b0925909878798fced33694ad9c1c1c31867fdfb1b86d8a57ca6f4992d2418360c72a73696122925f70d0d0aa97a675ad68ce3b405de72455d2e235f621c94d2f7a1ae982357792ffd6713979eef81ef319b42d1f27b709841e34f1ca4c77828a5fb739148269138f3e90433990387d68e42299b9a71c821ded08cba8e33be8be85a3395348a6b5ea3b97c84794d83d17ed36076c05ece24aff19246ea5902a620a8a4cc3785490d159508000000b315000030100c870362a1683452044da50714000f7aa0506a521909645110e420a48c310800430000000000008054918d02fed4e83671a449810d034177ffb9ed4b84e3831788131bcd44207a2f8e34143850c146d3913014a0be075dfa3d8ab48f435d1b4185cea710c7dbb995f18b542bb4315dcf0f96934e162610eb8fa34b81ac99f48b51150013ef9fe82d69ba200f413295484b1b76173ece753f5f072d653211fd03e30885e67145a1390dbe31508aade13cbd836ab51f2a27c9caf1c9215dd4e8d2fb4c4918eaf5e13d50cc48a2415b174fa8619e5a6b15072d64abbdad0d82b253e9fb0dc51b81a4358841d6cc1c9a0d99564092d6c0fc2c83ced4a033c8d7f3c19f12c36f391948049e47cd2d53351a2b9ad860a7c13090bc551025e87d728fff34eae1724d5ec3efff12583b8fef0929e92ed3e191784075f3b82391bc0bbea57d9d126f892326d158ec1e1dd6838f2c7541467a8e4aecabe3456f3fa130d541511cf5138d886f6aa9a32cf6819e0f2ca31cfb579abb20f0558314b24740a0f63407438897b730a2ada5044f7979236551938612028e8526d81a9d8140b873887a6612f8ca8460a181c3a7ca219f4bdd107834cf898fb4544b374edbd6e132bf65d97d64e139acd6de9ed9d4ea8ce33c706d00ca1f99415f3dd1519c11b1407637d4b169f57498e1fa704822fc6982e2160e27fe8b3a4dc615aed9ef300f1529568b293a429c15a893628c422267666fc0c8df00f8222a5faefc7df8e6189d7d7e72ec844e23b2071f81bd5d918215b7e009a712550109a161e5c8505416471a41645b70a6bb64424ed5398b001b0706c69c13a45cf42dc92b0d23000cc992170543152e2f010084d8dea8cecd8cdc2a1b95c71a1b0f322219475d68169b1908a88a3f61d61b42a5d227ea586f08b36f9121161807c1988700cbc3528822218c41a2404be583b72a8b617d409dc43a0d72b6291069e117fbd86f38c3147ea37dea593c3fd7484e178337200a5b7b26f81d241a1f85e16d5592af02a43c9d807f71b4eead6a8e0e740593636a99247d123313cafc9367ce3785d42a0a131073c9c8fb8137c71fd96422a6f137cc8454d9378bbe3de7c48f44981da7b8855157fcc73bc858e290a2fb1877df4d1bd6c437eb0c4a7c3b5a6610a75cb0db576904d88e6c43bd4b9be4899019055790a635089de70eb524f197837419ae04e640b91db42e72757623f75ab0d14eb6dd720a7d83913ec741399e9c34a88a06e641f3f673a7f5449f66cc9a6d70460185738cdd0fee9d2e722e0b116e9039b645b7779645baae0f04463f92ebd1fa3e7111cff7eb124b2ae6081f71a4eaf562f77645c2805d7b310c85a0edc779fca604720a4b19a71e00edb19aa38702eb6bc5842ac55f3c00c897a878783c28a6c271236e09687ab006b261879bd6580391de8c0b2decea1d6da13a920e5b38c661a3065bfb7fb3b161716f592e82cec5a181e4c5f3b5df9ac63d703e8f2463e778b1e844b06ff62d7e90aa68e77df1a78534792d3213c0fde12c58182f8270732a5009d5a6da63c998e67cd4e1cb316ca9152432422ce6c5254f9149acc609933681c223dbe2a436433b04f94bc62b47ef33d2dee4f8544cb6aa8f65a648902b921a350a4235129475d027f5309e8aae38e3293bfa5748475d1928a0151cc3c59f10f6515f3b2ac829530bbef65e332392b36249243793eacf69612a785bb5dd1ad5d46caece8e65cc56d26079026f4965f6ade9bf17249eaede84c33c699b2fd28aca694d562a63765e2b8e73a3c50d697914eb1980ccb07d191b7dc2f4d468372e85045c2ddfdceaaedaa3945c9fb91a938339367b62234b31f755b123185d2d61f8c08f30e77ddaed4ccaa833af8846cc7fc4c60aab645f5aa51d6e6305eb5881bdd292763a88f558633556f818d7fcc66332139868eed6487cd070dbafa1e3ad9175f83a5393dd48a037b26f1f84e2b731b227f048da399f485c57dcf37b491f28f1b40c8816b0410c8b7e5d85776eb8d4ca8e0f68c8b1b086a5ef8778ed7191ee725663c5bef209f11446089fd8baa50c453bed8ce2f8d4e5f79d65575d3fabe51de09645804a06ff6d115529502521f68d92666c4725f603048bb4bf095006b1a9003b5bdadb59467e325e70f3ec65ed77bc940d992149413dc00caa95d1ae978dad897309ba03a2d98e43a965ec0da88f323d820ec39c9438ced9416343e6d7f07bc9f0ce086a9fad24616c0e214c135e62edfa985c29acf8432c0c030d76b1ee5f99b1ab628bdb2c04d9811f26101099000c830ff11e75e4e2f6a05c2fc8b6fb9048f0e78f8462b7ad41b23e43cfa10d22d017db67335975bde2b027a25ff01905128de693537d0fd469339209e60e92a84a6237a33bc013afecd93261589292df39081e0b95b6865eba9689a1804c894479ebbbfe83f619bb15529d022f8dd52c4b6eda3de7e27ff50c276df571870e42a155db564fed6244110b262c3205d38f9e2ba66978b177ab0f30c1d9d8f8bfea6fbf5c31d98da6d2c1935403d366f29038b34af5230336abcfe02151b84995bc8893d41e25645bdf01771e2a724340eb1bd9f3a362f5d0fa284caa60d55ecf5cdbd34b7e205cdbe121111ab97914032385deeef405f8254777b9eeb078c2f178819633b664c4577ed2495fca9a17a58a85eef82d0769beeab3de9b5e477730b987752c20dc55b5a23a4b5eea8952d192ce5d4ead7c641eddafddcf0b1eabbe677e3fda01c0a94bf39a31649eccadcbdc5a8789d56ae5bb19699c780d6bd8968b8d099942854fd06f6c913ba106ed56c5e59a4ce2b83b0b7cef74f1beb80466027d55a870b7219ffd3994e6713cfb6368b780aa00977d972baa298080832d2906ac90c6ff0a03343b07363bfca546799b1277be2b80b25cdb9550a77037e5329a5a2a8d5086c19d6c638a68af76a9b7c98d623d19c79e7bdab9eeb328b219d0b44817fb58d0464d86db9b5ba3e555c02cce29cf655142ec335c152663e4cd1a1452c82e70ba338a2f373a89125cb3b6665a32389342fd2d14c5bf32845f0899df839ff3ea1eceff7690a69c4b42f975f9c3ce7f527141f068d0332954b174fb1458af62f523904627c5e32350cbbfc8f5f106c15c97fc47ea5518b6e01601c4b90280ba5e46b389348c7a1d14196f875931d12fd4471187071d6ea4d57ef17a591308307eae524abfc0eaa74ba456f7e550321f9eed30ff85499a22cc1b6d40e57cfc23ffd75e88b6535c0e4ffa3c3e4cf573202c3f180aa05de0fac1a45f87b0dfbbc8346784e62d2df1cb7c3d34c65a4792ae29f0b2fb9091d54b41ae97fcb3917b16cdaa28077cd94a626415b0954a8a7f9a08275f164ad1933e5c10e0f369c066e2f444fdaf6815787a38ff439a8fc0dbfb4232f2b993644c7149a839fdda0f9968ed65361867aad596a55c66d2ee5a263cb898e8312ef85b31a99906663fb20b08887fbb1c0e46ac98eeabc33cbe8608f9825d1814fec15d0f894f046efa704cfcaf605781b7e9304e9ed672771e354f96f3e7a99571ffb3e398e59a15a589d1b5e8f2c62b4dca3b7248ccbcb7e9c303c18eea9ce9b3faf1f37c6e1dde165575592fffebb71e8d1b45ba7f36d9cfd6cd8adcd35ca476454b01275d751a4f56464124951cc53f8b2662457e1bcc52da0537a1fc74499beec389ab10a3e9f968aa247a1c91dd111db452dbf218996768d9aad2e71266679f5e2edf0b5cff9af01376a2851571ddf4f5cf7dc85d4e0b7695cd258f010935663d3828b75ada1b60035e2bfe199157d6c27d90b6419db800dd5626baf3c81ecf72a51132690fe3794e4b44273f3f7b1d696aa98b921afadf92580716d33fd7b994036dee37c31644f8ad9574341b5112312cc1aa9b3eafe77cc26d2e89589d05c21abc6018db1253c46b7d88aecad6a79018fe342f10958afafc08443e510a107b79f5600f814ecf1222be295ee45e233e3d9513e4da3a2c120ecb6385298946e2c08d955e8b594bbd633b406b13084f0a9f699e55bc88aee5d44a6ae2deeeed27490ec8b1a1a37a4f740dd01adac8162a158bf61053c58bc0d915bbf5c58b6c018ec711168ec76c04ca0151d3a0adaf5c43ca8df5a71674e8975a2d968bf42dea1d5b8726fc308064a6b680b2bd1ae224104caeb0eed0f17371e47b229f7e9d281a1c1a0fac69df4b4b1d08748f592b2d1f0a83090eae442fd86a710e4f8e5953485b886b7ca63e4d762bcbfff53f7d99402674de272a0a75f3f49550c263e36c508ed692e69566694a4f074baa3c165f1d3a139a243fbe4b52ea96bd39f04d57b4d25fe67e72c9dba9445389f12ef96d94de700ef78048ee71ec0785b00430a3a09fa4dd321c2431101adb89dbe46118831d21ca3e57e5fa89521ac9e3fcdd7b929ea1e027bf0ac0097afa49ba565b45d9ecaf6bf3fa82433ff13a20a4e8f998add1fa5865af83bdf6d50118eb6d41afb24ab1e27d0ee268ab7840045ce5aa0d8b4e1ba321df388bdd00522ba682b4cdca7872867aa9cee35b50036db071814e7db786f76f402bb1c049bbd1a32da47158ebc923cbf23f80e07c00a808161c7624d8ad3d26ae0c3cec06126c165d8e93e0855272a1d5448a0ab9ca2fb90bfb4ca4106c000d2d4b3f88e27fea600e4d47317d02a718d9fc92c57e436c4a6f5a1700530e4ed0604cc31aeac8a6e12d5381e5841e51017da6fdf611aa2c8116caa1345d0ba24de2187b2b10dd9694050a0cc598048971ba4316fb13e358599b09dc4ed81b01b6aed0e96145098dde2e915a4d58b05e00acfe5f21416ea8de3864436b7a5563877972e89a9e2242230fa186fa4d3f160a4f045dd333e7aad8931a8a862541a1de081e2b2c116fac6f18b1bb7b604147ab909e3f031be5724cddca5025e226456c129d6e621c5fe7500b2c7a85167c280a5a4f7bb825d72f6a7a194940cf706ea8eea67a2a2c98073754e58aa2bf2d42e8e79369572211e987dad16af0dc24e330d10c4defe67b8a1e1f1a955ef66b095242a14b447a0e9be0707d34813a37ef7c2b57138ce21fe265a1aff4e4563f12f32abb05014c90e15e3e68f7e386b87aef0b502853f452fac9410b45211992a86024c275b352e96e9f03e56859cf1cbe600332154facb9c9b10ef564a8d1931e072b472c250b340d7b7aee05016ece8650617b834115cedf94bcd0f45e4d036ad67c57a74e2d6d03059eafa565c0400945186a8f8ed82d14c53a2115b62e9eda4aa947f8f90d22bf21d0d46f03ca357d323112907eb56e110cfd43d2607ad74bf4f70d5b5c5682a68ea6a95cc6c8a0532c29a7905be265e7ca0d4ee7255ecc331be1272b3738cb5d78490790420bf051bcfb07f0940e5535f36f3c45699dd1e7c13562aa7c8f7f9ad502be7ef203900f39f2b1e10f7f05c24581c72dbee0fcce2811b3c8812af3a298afaa93523de8b55799a52ea45ba16f4556fe2a5880fd2fdc969f39bdcf15639bd35ec20d7d0c81aeb4fb87ec1873ee45ae24062c3777fd27f6880b75a3cdd2ac4922f23d123b1e3c53a7202f60e2a82be53e602be3f0f6dbfa373ab6dcd262a85ffc74202dea7e83b3e8ef0304b0f438656f0bfcdc0a72c8cf19a4c07c51eaf6ddb1455975cfc06fe15602ff0fb646363ef24ae70ea95c5e0be9d447767231c4bfc2c07c18168a5c30685755b7ac375e2d70492192f00803f1bdb531e2f1f08b3290ab94cd6846e46ea9d5b3e3b22592d46bcdacd64b7b5982fa328471e86d85b9604b5b2ca30a23359f102eea3b97f80cf160cd515e5e48d2e5fa2f4f6e23eb2d1e46851805faa007815e78a25f3f2355d5c26980792a6029094ef64da4d1e0c8221421d1850f68f2a2406e24ed11ba8d1e52cd1e247540e040538cd6ae0484101f4d9321505990a7fc451d251f1b38567b793784400104b99941b728ce410fe934f6e60136e9a71990cf60890921aad12e081fc0114063f657e4aaa5be0ff1af832dfb381412777e011d2cb08a8d0d0894e9e362f356568e300152f726781a246bcc5717084d53c620033254d705d86875084a1eb6d17d353ac2fa93ade010aa9081c6152c65dc1217157c3ccc1571712ae4615106c022d883eeb87b283740ff5024cc8d41a013d17981c8420c7dc21e5a151dffc316597c0e626cffb4ea15b27158decc3b30bb70d87e22c0f4c16e71de5433d70d6abd57a9f6ac4c5fa0f2f17339188e66e796f1eb23af950d296771b0842c847ef3437505bb98e0dda3dfa338868ce46c8a2d2d2fec4e7a9e91c13c4174c626550116455ccf7a79f2eb7a986b8cf081c27a48da6c8081cffa4c2948c4abdac1ac521080760e3d3c7f416216a4cd0c0614885f83c9b50ce8df7d6758fdd89efd05ae87eb2fdc64602d541953890f264c1a0882dd125549f226cd81b09eb6193c864446c8cf841c6492ca48083fdb73151e8c529f71636e40055ae31fda0096d68a2eb3abd15a116ca3776676c07f33989a3e4dfd0380726b65243f439a199d0844046ebbe8c4ca0cf8254388b176a7d804e30213fc880556f02021f6009169b0656ce7b98f0a6ebbf89508ab2ab8a4dd01940de19074b0cc475128450e7bd9119e20251468d577f217cc48080c0314687772fa7813b9eb52e47f608d1c085cf4acf720f17d57d7fb60cb10b5c2e0a6d2eadc5747164523861e8570582c29be8ce038e2812cf117cb469a1e6b1930f562a603910927432cc86f05aa3948ffc8c79bd36d1a0a15e32660e66c0037110a12537f9b789ced5db7e4add0c25a342fd95b78c507e6b6f1967cd76155fa4399420add22ddce27a18a5a7a80368eb45a0738b5ce083bf31d038e580ea4b4e29f6eab422b4b19adb2adae0a3de4b865f45007c8c79d6d1b02d7c88860fbb0c0b8609af9037c4c9521bed2feb6334fa394f4980159ece328ab6695eddc7b9727a4bb89fcae4629c531def8b0e44b627f40f6177014841de036fca456f9baac5b0e69a5ae62ad17699ecadadf4dec9b82147c4b0f3592e1247f1be0664ce31eb58f21613d95a3e3e9fd6473900c604bc4cfc578315999f5398046dec7c49d6c98ed38b0b1f365dc97566f3ac5161c1abbbdde36b18726c5a7ec00fea2b4f3c1e8db4ea559743c37d783d1b030faabbfd39ecc6d75911a2bd7701927674227dce843c68bfe8352090ad70c781a2b1cd3dbcfddf2b76efa6b89bdcff6282c9d777d74e63b61176869938a0227eed112f34c818582a3b4eff30f57e09dfb02a6feef5c5714f8916d76791269baf8396686259c45a717055a3fc93b44172c5fc45587776c04f4f3fab9afb1b5cbba0e108d07f9a4ab0bb42febca5d467781e7ba3462b43765c6b8493b28125415f0005d47d5e1cdcd70cb60f5e08f8adea5e04a99841e6be0108a538ed0e67e14d3b61e5451095bb1c5b16fca7f77aa3d59acd66a745f8c838ef739c7e77ddff5bfc3a5b592be05de6ba4bc39e80bbbea96f5cf634cf99d2ff59886ec3e2890892e0746e5095fc02ca04fb63a141bb7accb381a16bd479e5cd2981c7b182d2aace81858b52f0e44246c21d045b87f83b2a691a0ac9b02a13713066a7e9e5df0f3e3f0b1b1833073a56c4118c30a090d760bbfe9e535c542cde0a9732576071bfca69cc2e0c9333a7c8217ba259743046e15a2d2b2be49958cc3f72ce3f66055ec4c98b51b8b282a8e54fb60a125f0dd92d253119f62e86035aa2ee1756ab41e678d0c3fc9951879d4a2c23a22f3b0f9d2408c8a980f0f3bce22123264bfa01a30c882940c2b10481b55d176d5ab99a6a9ad957001dd62d744ebae50a30f3ca1a7d27c2742cd0536c4c411b20879e63d9022338caf85f0e92c33b5c3ba351128256e822138088739ec111fe01309890c64a3e5e27f1eb0821ab3048401b4f55dfa01ef6352c28b8b657b5045c7ae5b18d490343204f75e6dc06fa5897721fdcd7a2a541c17602ee58997ba13a621a479cb17fc6d40d80e187bfe4651b66e66b73e6ffeeb5aa6f31036f7de263b56f95bc6800f6a123a12225587d761b35eafe75c057110edad59aba5322f40c3f3fcd87ec9109ba55d86208229bf927009829e2f95a4d8e1f8304299791a256f16a7b0829ef42f02df50d812068e415ff422f637880e8182e5890bd080f1813edb7778ad6c0a8ac3d40fb6aca13c5586bcdc90e28394163fb236eeaec3a23c8baa4d3825943439f3f8300c7552f24497e1bea2b156e5e06228778ce5f1df0138c2a644cfaf01a52743adfd61d27e5a4308a1b9600e1744a82a59232d163aca5f95c2b7dec7dc6d020aeca3df9160bfa00cfbd8d7594fd57a94b234097783ef39fcb100654bbe787fade872655467916098a7c3ecb5a0edf43d37cd582e210d0baf30925ee41a109a7f1c607b6e0a29d87b45b541678c42722edd2a5290d47b737cbe24bee884f5ea691185412a3a0fa074660b4c89c48a428496dd1bf510503a510100ded81e193420f023f4884777e0e856eed055741467af3ae8d5fe4f39e9285dcf59509231cf6ee0ed3e0d15485106cbc7c64eef6d11fc04edf95c8dfd6f00368d7e9ce0019aed2b82c120313f60ead9923acf409ddd6343a3e1c814d7ecbc4f792fa93287d7d8f7374f498cfd8154b91602527729c55920921a34d589dc6a414e6f119b2b52082930b9794e98873c4369892c90ee7510f7c6ce611d1f4422cf5d77fd8746578339abc04e9e4a9a6e053c210b90c683610d663bec8143a488a5af0924c74877c36b7f21a1ad51797b84bb11cf40d5ad3e608e5e7b21a67037f51ba75f6d90e7b31c0744507d77c2dc8a5baf9e4ab0fcafa153d0e5b49eab3900367b0fc6f4b821bdcd3982818bad4a2481b5d4ac47eb497c1dada94c9a0aabbe420df486a119eb6144ecfcb392585cb129ec0986f52be4e0007c52265313acbed82af4f6f0bd4f6025049c28e5d3830366c6305a71ca0b1a05152021b77020dce1c76900e6732016598914bbdfa4253e022af5751130b7e9ba86d30ef79ffd3681e3436cec5787b40ced5df4f93f611415abe848e14fa19b229dbb5ba450696f9db0dd57cd5466400530785794bacdf914b2ada2fa7891eb9c6ff9eef03a0fe473a23a3015e02b7313cafa893f6f640a0f75fe46457f5110c786518ff010de0d8c75781d6ecb8bcee934048f59ca9773940479be716a266ae57f5f221822aaade2f402e64b5a6cc2160b4ed33ae0aa493a68d255fbb388a405f10099e40070373396c5f4d6bff911495d6d12d33a1cfe92759d44d0cc6d11d837c93ab2318cbbeb184138739023b1c19addc391d9787bea68182717923b3422f49c6e6a79abc15e57c6dcefac01a919ddcb947e6f8c118e4e46dcbe23cd6cd136a4c5707f1f1fb660e9015bda639fad83031b41840386b2e8ef6b4b64169f4db409f2f6082a0bc43028eec12f1922b128788af062117ee0136749e82ab0431705fd1ceb7667b7a1b8fb6a24e1a062245a7fbe18b46d06980ea45a1b5f765541ca411fc6e95e72f06d6d3dbd3104cff0d1dfda0edc6d04ee2d542ba7e280fa424b1a7e686d9062cc95d421f6c8bac95389441a5ac2e1af4d550c24ca4aa2f32c09d4c080fc25dd6a33fbdc15d003746ed827c1cd0ac8ad54e1c12f40059fb8b8e54c0fba89a2ab9d3e16a02f2f87f12cfcae65b62392b6f1d90408a3e4189e5ba1b78ab8934ceb03778746b2ae1bc801ca259e5c38dd3e7c80b9c87d8c848eb1d4df969b0395711bfa4a8c1a7dff432eaf1ccd62001612a485b86f7fda2e9d96ae24cd2ced61863ef7baea060bcdc0764cde85fbfc0ca8db208b0f4c1a1d999370a84073e6f6c0fdd8e8f8abadf6b338724a4a755ff7bf7fd9fbed2e3b0d4ee9544dea9356822a746b706c67b4a7385a38ca520cf82f44ca22e3f022fecd5b2178a132002faee5adfb3d3b2d8ad0f4060f05cc31ffacff119d7abe807ced1a3203ec0bebb72874d6158d2d298f8198d76607ab2fbc23a492a55293b73c14c712eea10f14c73caf39a2d70cc475c3d79b1400e2db91351f17e3486323721c5c59f55e991ff22ad2327f8ee05dcc1e37196666f32a671a0f853305019faa888c9d79b23eecf64c1eb6213fb01211ab0c783cbde13caba14493b4c7e38b9fde0cd4b227857c7cbb1184d47879e722d9065eb7c3baa1c6fced6d70d352b8f7596d404f91dd553943ea7dc00d761ff437e646b0288dfd652db0b431a5855e996456da47b5a173a505072aa95faf7a0492ae1a82e4878e405a493fb714cfeb2d92814bfbf8390e48cda8eefc8db9c7554582e9278c8919fb138f4b0dd35df9df18b70f0cac789e2e6bfed3b417f1d61b5a08d59f4a7adede489fde4a029e269cf3e080130e00225c51b8b8fdd260b0d1d25c752d27f9913e7512e0d120c341eb71367a160245039b9907e653124e8d1bee4f30fb35dcd9d906e30419a5756d674b3d4c7696ea0147a92d5acdcd2215b5b9dd456a22fa0743f795b9b9fc8f91be89e171de6070c6e0f305b0ac12d243075167b86684ef1d6a6da2072dadfb1a511f2a3207ce3336a82184a06517d715a80bc41ac8e526dd56f9b61f3213fe41479651873275bc6dce0aa3fbe7ba84d6cbd15ed7e74a39596e3d4a3872b80ed769efe1fe711ca609e4385ca1ce597d9812d2e030fbad0c6eb821a5a78cb609a6191c037feffa1aaf1c5ad5c520b7201579cfc32fb933919d8394706dd778a07762a2437f804411a47357d5440c0f8a5f68f463c65507e51bc2101bd7a8a84436c5c694998ec5e20c48347e53cacafc31f2d45cc9e1fd6554d085db514b79e53af82f0f1ed369e0f74d1248701d634680dcb360e309c2433f06d80acc26b38b19545d9e281d5a80edd4d2e2dd469b8ae37f10160d92981c80a6a3f24e5bad2d949332e60d8ec3a80581d8a1dbf9782750e9b095584399ca887e2907601d8a02df00441139a9b3aa11bd7a1473dbd3f0b8ab29e8a42afd036a7fcf5f0be106fe64b0e2045d41fcc318b59b0e0aa84733089671d0dfe8faa2b069a881f1fc59e163427773c763e59a662637708cd2a3ac67a48f01634448529e2d40e9f94273e91ed8a13418d1b106f0f46f0628642732640cf7b67403f6fa954fa5480658ab689b7b920016f28c6909c863a0a4c36931306aa78c7b97aecf04b17594589ab993729d79864e3faad3406d43896b557f3cc6d736f77c58e494b2c11e54b804538512d4c86d5fce15c53c2cab50b3a7f4f203d122c315715a7007dc904dbffc0b86833343b006e05192e751e1e964a14f8388810faf754434bcd0242f6b2a47296b95c6ca4a8b8af510f15a5fb818bd33f97c3b6c7f0758cef27941a33469a4e85f7b642c59fc2da4aa6e6a178369c2e9fc3faa5aa6cdf36690028360f396e0bba5dac377aa69c08ebf7c3534c435451877896aff3af49fab76643fee5d861cfa494de8f6c3ba4cebde29d04e3a27fa84e931752e7682e47e1035f01d2728cc80cf6901fe3a5045e359269b984d58763b41221c8d85a7646dcd81af1606e4d3964ef5e92ef40ca755807a75e405c5c0fe51a44435db7f9092fcababa0bd4504a39a5f384ac61d2f76429d937d72b916d8ddf1e2a307655f3115cdd615e28bf75bdd3c15983c43ee92dfcca880ab1d5c42489ae0240c882950319fa0c588068ece4618782d1d67c19d6d75092aee0c4645fda19db92b3115120983a131f66472aa84f69167ae64fe3c576956ec2ce83efa660e5456f12ada8d1528a247deb35897a9c642427a2b7a2876e36f44d4b5b334ba84c366be37449de6fae7fa704305136fa43fc70d6b5cade667ee5e2e8e7dda942ecd190619a0d350ddaffb27e745cedba51561be838fa38536112fbfdd7c6dd7b00d866b162576fa518afea46d351c749cb20db1011ae1fc33b05bdb3f0953b73523057aa389238e7fdb195f26e8a8aba786272f63299660d925a8d0654d464fade4ccf2c64345b884be5f61f46a0fcbafd98424aaf8c395c6bd63f189f80e74683091d4a4b80514a10921682b4abba55110401ce13a5ec0b0b40ac56d9403b40dbc60690503b68e4c8d71e41c0d9eaa6ed0de4912ce7fcec6c3bad85e508ac451e0212facb662ebc96ba460ba695f70c8e70a6c37d8aa328a3f11399e47ec5238180a0df57054a7a6368e1667df2161fc80e05a1a375fc44c5fbb65a308fc5f175300771c31c25e13b3ff42b152bd5c6cf4b684458c79e9117abd4167f308b073f698e64c22f39bf9915e0d4364c2738f3121071ccdcf12b4a9a3bad220b40de5989b2c30fd9133cca944c98151c6bfe98074912710da1289469bb620e2f926060d8a0201e06984f16303c382cc9f9fe40a5560c75616a0f727c72529b9c40292b569b2f500cc169eadeba1b4ff30e339727da90534a9ee4e9045b52332fa82ae185331a9d8083fe1eb6f275d0c785a37384a8ff1187099af412077cd0b2cbb00ad5ca81ebd90b5594fdef2d40e93ae239a23e291819bf31e06523208eae572fd65c07d26a857675f69d99dfddc6c4c0096857846ce20705ae5f14a6834c26e87dc504299897db9009e0570a6881721eb29565fdc76f2364e242bd86c68130a015b17b159dee2710563feb0a71eac77b81a671e679939b61e1c65045f3b16133550774383cf0c728981ba1777a64156f7f4249c54735cdd09fc5f3c1a1c59b9c98fe1bcb0302ec92491be7f703ab4a69474dca5e6fd5c14e67569ea3f2a81225da8dff0ea237c5c82bfffb5c2e1aedc6908f6f0e6675c7c8be5bb6a5ffda5193cc37d5b51c4febb96d434642b5287150ac1aa8198b706b498b3386b2dc29748c8b2835ee5f07d004baede79efd095317c000e3674f1ceca3611d4ec88ad7ed101b20d815632fd94b6a1c32b32e0c111a3ff5b0c959da292f619772febc21052847c3fac7416ff62d8c0a2d51ed9a1a56629ac2156027f92bb3bda6f69264d6f709e69839051a9679862aab3c9a11620b2c4c58150cfc9a0cbe242404afbc68128897420d648af5732b8861821063da629dd1fc194e89458f8424f58177602be6006ad21801a00ae3137a2cc09c54b9de34fdf0800328940886ad98b6297749183f814847dac5f4d8f97dd1c3175ffd979a4cfc1edd8f217ecb049c967b984658a9836db20709360947fd97fdc0a541b25a282ae8b7014d95b7a9402e69d2a6c8d561cb31a2e9d62c561601f6ad2074c2b8ef80c251c76fdbcb067818407442986b73959e0fdc63173e30aff902fac318a814779a084e1950ee542bf9cb30b2e2cef161e0fcaf6a82c4cfbda0cd1157284be2c804c42f72ecd71a71d9ffb393f2993cb98204ff3bdad7d24e7e61a5310810f39dd73cfbde2ba24a01e27cbca7cd2301408822a8dd9daed2d41a32d03a9c00506cb9e39a11da10d3f803097da10cd5b629b10ee28c0011fc1971f0ba3938cb8eaa128fb5132b657ce093b0149d95077fb1b45f8a370cf42dbeb13cc25858e5866b4123f4567c1e23427ed45a2a5bf1158bf05c80f260653c38ed2ab25fb7d8ff8331aa0ab215e3988e22b457d2e2bb3359af38201b51cdf056c6f7589a629664390c5d22e46177a5cc32233b7a8cf414c02ddb51fc24ba383616602414f70a2849ab12d1f3de25123a81c91a7dec2eb3e3e0caa7902e2e9bd4db809fe36bcc66ddf9d9b7af82dbbc72dadfbf8889de61321f0c8701db40bf8164afb5501b67b09f02656c13e0d9d20c5b3281d8663f9745863c5e685289daa283cf32ab1a943f64b1b15111bd0cb24efe828eef3fccbffd03b12a24bcaaa82431bd05334f345531bd07f8b93566b290808a1a25b0c0db53bfa722417a4b5183c73c7cf18b4ca320e03b2ee726e444c93ea3f2db0e5f93f57416af06b9d8a16386a0a7eecccf7a2f9bfee69be59d8d19faa4ccf45411df6a3355c9e2be1ccb15e0721a106238e31ec24466169ae6d78e49690cb1028b82b38255437184d143aa2cabca94e73fdb2a263b7f5c56bd4a7b0d831261574645ef07949fc9916368b4cda5f7a3d083ef07e59c0c152cfefb090c14a458342efb7aa0d0130de77fd1f98eb11e6de12e9abad17df7435faf3313259dc02d49ffb48835ae70b44e2a411dc1b8120757e8d86a26bcd37d6309d3095335db1d4efd621dc20a015aad1b0ff3164f46e9f2db621311829528a9d6b4199fc973c1dfb2491ebd15249f280c5ed350d9749685632cbffa9262d8772e70c45762cad7ccff286e0c439aac428931635be8d85769c4ce0fc1ef04b62ffcec935abc295842458511d9477c7b216c5bac061be3a4c9369a8d27a970ddb3adb99c490ff5322bd01d3f16ed4a9f124729dd7d497c2e488414b4622c844796d889980c976aeb6748f3a2a44d0b480941705dfddc9db858698e7761e6892748b8439e17ea5e80b8bc7abc8a7ebcca9c6c1cb41cd7392e280f41c5e14d6308faa235b20fd0d3e805981cc7a8c8df7c220209690c8ac5f14e6a640f1d2df947e7cd29d2e55a1a21094ae817adec21f538ee8f92bf6bb449ad29b1e123c45aa245c49a810a69337dd7348ff4a8f158853093118233c22d29acbfbd59343624bd64569e726f13e38e570f8286c364fb4b98adff8110d5853039a52a92eb0c1550ae93dd61ee6c4ec8780febb360f03edd83ad78ecdc47dc408a4a45a494c6a6f404feb3a3ca4c73b1a56905ca3d6f4263da50862eee95653516f9252c43965cf234d9b3e8957824751fa2047b4324dd2d728e680ce2b25faf600a92127fade74231e225abcc024edf5150da5b4e41ae1be670219ec41a287c7d57a3be7a6de55eeace04320847a24776d95c43827e50ec9f5cddf9545c89fcb7d80c49ef8d6ee53c22035477b5d487bb9fc3e7ef40f956fb63d52df210c9f7956f388c10ae14431ceeb25da4f8230c520c72f478ef86482169561ceed178a59a1ba7a313d5393521944a45ac27305c1bcf45209c25dd25813a012a66371849c89578a4aa16786542c5646ed5ae59c1684d66badb885efa8011eb328b11011a6a31f69956624ea8a06f6771d5e3a1745bb050dbd61e238f455765758e46eb5f76515a3a26ae3777fe2beb340f230cc67d173c3dde62c798307845000170d36352c9e6a9274d16c7b536971aecd34207426876a9beacb1d51c28ed962665fb0c2e5df1c297b0f53438e5ee98549c9328b08ad21ad4ac96aef72011544c758f9a863fe6abe548b4bbce18e4ebfff63b77447ee83f62c0661b6646976a79e91503acbd98fdcb721b45a1693d324e35d82e2140abc03113cb763eae839393838d7312d897c27a4460b52950334a912fffda2745e3aa211e69363a52f4595d01cff89806d36e9c421c7cb565a594225349ea451a785f4e52b3eaebf94837af749c5542f0d7cc6864f22ed2f866bea0f126aed5b5877a8dff0dd816c561464407406701d8ee679ceb0f78d04904fff678519a3d2c815b5a75d0e7e18303a3723aedff9a0799d3b8b2fa43fc2125865d25d161c0449e27abaacbf97bb6e5ed61229d691ff29747f79797a69c5dc70bbbce5904fcf82be78faa643bb35af6ef5ba8daf8388fc7ebdbaca442331b6105d7d85c3774ceca24073656aee19e305a034e62ade9db7dc7983b41f171c219143bbe525c02222d9a988fa35895a34db47afed2f2cf94e2fa975fe45d91ef527df536e949e0a216be5dad96b9914a89cc241d39863af4c2785ef42620fe7f40e143af1646e0555feff0f3821b88d67de05d00d18701a37d535ffc62015c110c34736681285491f490437929c837695f279d8ac5bbfab9b09bd3a9799b1cdd179a3011a4efd83b9f69eb17e5aa274e922897c4f0ebc231cf2a7ce00f27c6ba00eb120409679e2a26545469d762e0a0ce50e6989c180c12f860f1e7acc5f0019f3a214a1b5386fa9f1ac1a7edd28ae6e871a98cc204e158d62303bb7d7cb0bd7b86a809c7cec92404f669679cc7690bc43a992b5b6a4c52a876738e13ce65af33acc6a65ba99de0d6eb59575937ceac155ed3ec9ff8ea6a0512c7be51b567b9384721272ac971948c42fd1c1f6b2e3bb28224edd2ab40f987e1307542008eabd595ff2bc483bbf4e5f15975cc87161a0c097ad9e8746e74e53f04e43daed29c760f82614f051cd0cf40e231d6e3f758c925cd04c548dda48fdbd6da384b1d6294d5ddd9de6486100431ec1b2afe4cf467ca55cc3f852c0af9ce2c654ea4c449b7d927160fc95c81e0ffb7e877f00bb6f8252cb10d9fde0a8dcdd3892f55f3c1c0811b6d5356584b45f7a6646321021dbc2c0d0e02b8d40c584bfeba8048a6ba51f0eaebcd999dec93c8a66009a41e0f458fd09287399f049977e19643fd1be8abc8dbc8d78a62e476dd06e4e4625dac19fb93e34474ceb8f90f8822b6364d5c5996a4e66ecc485a829cb340512740121b5d371c011264fa364472ca52b232a7dd0fd2c4454f7aa45e4223d351167530c515f95f01f6b738a95caacedfbc8ca26368287c3828b46d5a88e27b5db4fc3eac83a02a50370cdc68b2dea9fd187b6f90ae3038f898f84d4dc6008e0c7850db6ecc1cc16e2b158fb87c420b2010ca27d7ef0df0f741a70893b533f549257eb4845e929454bf74d21edf994b6a0a0196e17f65e11083f1ef53a52b2aa65dcc1ccd69d8b4b22c60036e30cf8d35c83c92041319f5936a1a89c65ca812b5ac6220404d65419cd6bd2fd71c6a38b5aa1e0fde464d2b951fa2948567a072eeb092efcb6c1de060395c76da23d0fd4bfbc883b6e8227d5f992b1148d71f904ae56989bb632b5e9c4338055683da631a9ce5ca0d66dadbd6a0529506f543abc1537b1ca5542018c53c769ee54aefd14275fd079200ae544b802dc362c43a0d89ae7d9106224f81a74c0fefac092ce5150dca221751dbb21cd83efba2fa81607c98493d62982039435794e4120444d9283f7e95a8d47e3d8ad6151c646c5324880c08d88af4289515a8986a7979174b536ac44b85b02e070b4a8c6e1ad161b6684dc4c3fba96bb9552fba0cd9b5a6350c29adf25b34a04197f8de463a5d35457c3cb78a4058eb473158984d31184dc5abf2d5dcff296543938b4857bd286b7cca559f6b629d1861e209d70cbb72d53e6ec2c8ff9f8f60c1e02b5a7108eb910903401525065c9a85aa61f391207711029e60b9c40cd1ee99dc01adaa300a857fabf36a9dc8477a7b8ba02bf3b30c31ae0d1b782aea7c149ff2c4570668834fcfb7db1c1e69fdfe3eefc43a849229d318d270c869fffe0ecac310a6cfc160eba5fc75deac1525ed401c2c702a397b98f1e1ca15bf6a4eb1af8a00cef472c56277530d1ac695cebe4f92737b2d7c48aaa81e639f683518d69d009576a68556edcb8feabdc1ee1189d1d7c3e9ea7438b514d754d02447227717ec75b2018f5a79f214548706fc0a542dda21e68c0c10230cd6a2941053512aaf05987866beb02aaa0b6d9703532f75d90591d6795c043f9a12a31da08b819c8b8620b82dc01b5a9ab64c69a9f691639d3dd3591c24bb9e651b6cb202ecbe8fd78edbaf9bf357e234f8331f234a013b839f4a18ea14b36568be843ea2efb695135536dac79444f57047d415fc1352f6ce61f3ff688a38daa1893b04bd11c624224410a8c2a9404860c9cb1ae0533d4139d9b0d6ac35ee348c8fd16ad51bf0880782137f905466a65ab4d73a75e55c2344e822e2e267e9e0aecd955d070985bb3bd6c75d6ef35fe4d6637f815674ba707cb5fb6bdcadaefce24d928679be12ded178c68ee6e1f5172ba920051226fb7929574c4688267b8131d3f7ed5637f494716fe60a670fa0f38f8b422cbc750eb79183e254973b6227cd9ebcce461224d2c77ca3e3284590a9db6c413b83f1c845c3ee6a6f9970f978d4ca165d59b17af159f94a88db33cd6158755963b039d5d9b10b15ed4925831fb316a7cd09d2f472d5a9247975991e734a64eb3a753259adcd05ffb96424732891e86fbe4712e5a6edc35ec95af6fbad29edbf30cac56810bbf43a76200b70e8ab17556469355d3af1ab68fd3548a4bfbe20ad68154fd004387904f90c53921f35bd5bb7c8a7236816cb00aa4a43eaf684eb1c3cdd0a2e91ab63fa73ab04e699f2490ecd4d0e894d008e76d5e1a15746a94dd4a318fbacf487c2918befe27b22e35ae653060a58c966a37fa331fc952bf6b466107ae5ea98f0eefff7246e1f62f8957a5a2ab5c0e58e99152ea0df89378514a04ca0324437f49f4a4721bbbe3b7390c573f23ba2615cd32e7c096969443c4b5e6e06773ee37624b5223550cb4d0ad6ee83152d90afb5f5caedfe8be5f6601b83ff8cc5fb3b5f151c85f8ce52fd08773bf0f92a3b6a2d65c0c99df8ceac445026a8600d3d5b1d9a20415a8462b2f6b3c0549ded09a265e2c0f50053279b84415d9b0e56cc4ae6c582b9252ae85dc17c03aaa8a76e58e1049916cad15b556aae6345618c999abd03a60b62a0da54e73f0d62d2e145d3a1e5dd0bbc011b93d0acc824e79b4fbb4b6c38d2103d11cc5ace1bdcddf329cf01290b0db80f2dd7b7b0ff0130df1aa5c025a4dac2f3d1eea9f8f27e0060666b9a923fd1ecf0fe718d8a603e4ea84fd0298ef306ae131ad89b512c198b2f4f97cfffc303282859d804c8534fabc49ff933982bbc92f181039a53783dce9e6317e586bc1b631c096636de9f164ff249441da360831f615045022ec3544eed0fa5d41cc706f10ff1d28aa0f13e9bf53acfcd342a3ca3f51ebb2a316a875f89e9831c2364758d8bec11c4ae9a944c88403e200d635d8bfa3285afcc22d382dab960cfaae8bf656a2a6545441ad19a51d0794c01c0f3538b7c72091ba4658205b9c880ad918a45d094293a1ef00c75b10450a0dad0a880e83c49102737f1bc6cdb1dd848d9d3e43981010518e77d65370845a9d326a0442b3f0ecbf8a8229966e027809c870e47edb23747e88680206e27eba26f4789d222970892a3dde3ba95b5d8b0c48fbd298b8769cd072b46c728aa35d720a84e82593910c015ef3325d03450c8a827fabc912bb4366a20597468b0a04896e22d2cd7b3f92bef68b569a3bf772158e9854c0389151007bbce3b0b7997da3706437a66eb5aac43bfc9dc8cd421276b8fac33539f7c52c4792796758ccac36adabdecd46acdb4e47da2213eea575909bf2fd60efbbdc622a88bc98f81de4abb058920d832b5c26844a8d096dbaf8e09ac83cc07747e86c5c787bc9c5da5b623da3a995acfbc537942bf11a6ecf4f2857d5edc8b98444797bda9d155a07fb0f5e380570e6b85a3ee76fd03682880615228fab92923b6a55398990604dec6452a8489b8130e74f31c6babed9ddf5b0e0e3b6c765cbe552e86c4c248b7e377df61824a66544702984076579821c9851e9184978c185d2ecc761e83a34faaef4a194f4f4beb36dfe21edaf8b38ce8040dc75e4e021f7713710ea8945772f89c8ed09b683368786fba545d8376c05c9ac89310442d0a2e75489b9958d4ffc7db54a327b1949bc7237683fa38bdb6c3858ae9cc10d7278e34aa0c226dfaf8de4dc21faf84f2d7474f563de471bc9b50745f345a88ccd066689ab990bcfbc89f98fe4c30460be5d79a9ae210cf71903d8e0996b558326d01051fd9c78645eac9fb40a10deba6d24b06e999c42af004d60a54399e37edddec0b7681979d2ead1100bd6e130038ee5fc18fa62ecf56ea793e8593f846a7d39784df39f6e9d199e0b927f72701089bd90954466e0dcc28625c3d38385a5c23a8c23637496227e6f8b3e16dc9524626526bd0dc84a8aeb4b5b7f45420e76f66c3d179bdcb37dd65e17d690a142282aba3acdedc5033bf555bceef220616aa6b618e3a2b9ac75f4517396dc29709af199bdd1a0d730ad578e8a72b4411897e924da49661dc322cc599e507b797e73a2d168de076e92bdf7b9cbd31254330619fb75261359a769f032aed12b5f6c1b1c47d0e85aed79056cda45146eaa673be38283049eb20f25a70e05f7e34fd403913dc9d80a3e482b102c2396b7735c78babe087255b7d91a674ad144629c122d1ab6d50afdc4b97b42499e8f2373f1eee0a47e7bb3af7e89f13cfb0e152d22b4efe8ff68949d8ceec2ed1bf3c7b4c25bc0525708fdfccd94f8fb321277291d57ed7f513ebce24d81b5fa1306b57ba6cee632ea3b38a53e969fa616fa8aabc62540d0672d0552412bca4e481920c13a7b63956153cb26ac2b3d62655d494410d92bb449c3c23bbb00bf33db05b22f3697391ec0361e1fc35e6d7cb665e16f1926d0822600a96d4564b0d185cd3cb5a1a428082bcb027e1bf52d5e5e45222aa5eeb804f3e9c4d8ef301a4eef44166aeaa559b3aaa8acb853ddb4d4d5e8f314fa01228bd8a7db5c9a783078ce03c5311dfc93bdbec141942946d48063952802d8d18813015eb38d037d3313c5be0be4c4a45378661556a39ec5ce5e766080c0f46e42b55399855ba114a147b6392dcc5c0362df29e8a36c9ee2d7ee7b8927cd5d28237f61455d4a5599733ad57d1793174936687e6155c72a99a8a0550016cadbfa2d40c74b284547e24a92d7e668718e3e8ad24f2484de4772dd90e1039e75f8af6ab185324d7d85f0037de27958851084ef5c9a8c00e41f88a2422145064020e02ad408fb2a3c3e761757e20241a09d67600167cc5d8ba932144937e4fedc94ea6a513158556d4100c24f834a5695b6aaed97c0e2d8757859dc27ee93973a93e5be27c44ef2c8928c55fe21f136deaf865d524df04cb367102f2f0687074ad3a61061e81f8494b9f246aafa8df3803080af09b57cdb151895d2f0429b564e04e69cf2adbd487059cfbeb8ad731f2ed6df03aef5dac7b8d54efdec49b7c9c9d2b5eebd7055676fb8d46b1f6ed5d96f7061a75e4efb644cdaf6503d31c7617e958ed455861526ece20ee8a28e5d975042c23fdc1d074ee192eed560bf754ae232cb3315f62b6066179ea4ff583d795765dc9722a80f9c48ed1f01b83d92d60047fbaffc382895480f30c5d89adc941dcf1e74f16557edbc06042dfa469dcffafceecfaf73c5f0cf8de70fb72ed0396667a113bdd2bda9ee5af7886d2d1d1af076d57527661c3648f44f63a04e99786828e13f8d403b31e3b041a27f1a0375cac4434309ff6904da8919870d12fdd318a853261e1a4af84f23d04ecc386c90e89fc6409d32f1d050c27f1a817662c6618344ff3406ea948937142af70490a6ffa7a14050f997cb64b532a45187ae01245c73cd89eca3f29cd857398487564aab3804b4576fe018e519a81c235026901728019ac29343290643cd5d3fa2b25c3e37d0f540abaf0599b1b3d0b7ee961596db126bd1b5dcac55169715d3426fdd2d2bae52ce1e2acf7a10fd715fd74e26d1504e97d61b56a1dc638188b0db2500e394b758a1930495dda59f3262a2ebae40ee01fda06e131ae7510d44431bb3c9d5d79c2a867293cb8f25aec988f992d0582139683d6750d4008ddc346991c44c50b0208be102a45d189ef53fae9e31aeefc4c093359063234e1da3d310a55e5e48724ba64918ca6a1cf3cf16fb9f9658452570ca47335931226a21492f505985501e3f82384c27fc16a3089515b40943b3cd4c3f9dc3818806c79a128d34b54632f0845907b6ef84cfaba4112207470cf27a9cba35784103ad7a4d3e88bac7c4c94dc71d3f3893d96bdb27cf93678758a9563d51eee807b4886a81a5f03775a1f6d29366a273344b39a32e4b28a1fb99af4570462ffdacb07fee52b6f8041b7dee479d78b9d630b3e7a64d2c57756f68e138a585b20e1df9ebc9b08b68e96c4f38750d5596e9afdf26c241433dcacffa1bcc9d614e1ae876487e5be92c257e6ff75c1cded8857bedbc720d4317717400d93a0c456b37b426382d0e0ef26efdc71ea18d03a25199c6a5213636892f39ac0dd2af4cca68a710e2c4da4f9bb21f88d2a086f4af0cd40a94b0d939f36d10aa0a2677c6ba927d181bd9948bb9a68dc3df7492d9287ab67ba303ecf4587a3dc4b579ad5c2f664d0444fc9decc034d2fec6eb3cb55e0057dd2d543900f6bcfd34692e057b1f6bb9640d66c3046729deac63dfc921f5b5f9d7db2630f9e864c9fd97a12cda7959330367666ffa45ec3dbb4774bc37b69a0c41429c4db849fb6a139ab00df79825ca3e9ccde196fd1cee71c6590038cb217fb2e6686dfc633929fd4021f37d5ff07840585896bd4c9acea46eb2914330e8b4e12cedf825c4532707691e4c4e9cf65c6282f83c8b3710b4bc7189ac61099c59548f402de990bd4bbfad37a511cfef2cdce8d66cb11d80bac03ea4e4506f58eccb9abb5c588d7aa73b279a96f4448631c0d8c5c949669497aaff9f49bf4945227e71325287c34be4c80947423b0b8c8a44c2c3660e86193275d1149fdf1d59831023cbbbd9fdc73539704a94d0d2327abf5f1869e3ec2786d099631c0761d6389026f54f56454daea052692fa738f03ad76deaf52dca000b48779f84632eb33c4167168345e5dc1162693e20875b82e10f7844bd79379af10eea7b77b921bb6d81205dfb7ce41505f6841c577327991cd53409e23251c92b5454da1b4320ecb91a08e75e3f9234be0ad562ac0f33a2a0d419c302e84a6273a8b99a57a8f3d573795b8ba81e584a60a2fe356ae8b676c273775d4b8a3b58889d6ec5cd0352d94d58d0fc316b02593ee9106dba35f242104a3f6c34c713963474e989df3e5e6f57615327808633598f18d3331e152d327ddd3493f439eca3f6b8d5e2789fb42b7d348360d03a9d5c2d6475005178368ef4210b8a71c0d626dc931c4c8febd555631c443f557094d23a0268db45322df8ec653dc266d2b172c90105be64dbfb304f3baa047a4c93e3c4403e87caaa0c581a151b0c5f2732ca73e30409f94a43d1280e29218389fc439d971769032182147ba792a1b30d1e9d90fd0499a100b594310952f21f2986aa40781c7a10d1b1dd059462a51e478c469fdac9a87cb167d34c34607742466e13c6d2fa3b210beff499d3f41038629cfa776b00ac2b7a22a0e4d7be19781305523c181eb8a7559096075f5607f2307c8c880908aa1021c718f10fdebce5a4265f9ff02caa3410733192a612f82314e051985dadc3a56c3d615a4b2a90a550c27a6284d87f712042e5fb5b859424ed5dfa94f300a8dc3acb7edafbb1322fcfb8d4d67822ffae7ae3393e6ea1daa2f84ac780de86ffa12a441f9465dab7694f620a3b478b4a0c13be2c1b3f3c01a9d29ae46450c519c9f94c97dae83a9bcdcd01a80927e2760edf349fe023973e737e032c825f88045ed7e58144cef9ff16f4566696ddf0c9779e342d5acdf03983852bd84017abbd49292a6910ac26f7dcc7f50dd0a57cb840db20ff960e7daff39d00fe0782cb1af6fe058475457c037cdb4e3b137f0692290b6bd02a809a082f8accd7685e533b8ddbc53ef08f518b3793f308c21e0a3b1ee0e65d1457bcfe801c9b87df7167f67c0b37df5bbc3e219fa09fa3f84e8bc15a00bec7c6a230e88225a316c8eada5be67ab38334adcbc9c2042bb44e22ad202bd790ed78606e12584e66d5c9214f59e397a1068f1d4004eab19010e2bfb024f223a7fb7afb471dc27595f05fa7357ead82dcec8277218aa63ba200fd4f1203f465bafc0a2b2a94401e547ac3754327fa0ce90cd6a520b605d89b0533308047c374794bf80220c94d0105fb1c09488ff37d7812a5ee4dc759f177b1d4c2913c144e235d0cf0fdddb6efbe27709eb5447d0b0d6a9ddb724a7071560f8e5a0c04f9f8964e47375ddbaa365849b66949072b700171af76da50558368c47d604a3eb67965e315edb6baab7cf7c606a7c05253a5dbe0ccc1004eee8105232454fe53fc5a8119040dcc309d92584d76fee0b1ae3066f823b5f5c62a4efa0a642597bc465bc0a47dbb90f76b41465aa0cf965ff4cff405672a28df124cdbe8e8b19a6070683a6d1bad63bd6b8a66a50b08722cc0056abfbff8db2bff614aa4020beba67f178849f14d8e0f6ad7e284ef435314524631d87ae4693b586902bfc3b5b7c83554c31cb69cc65ddc1892938a89a4ca4d49c534831cc4f16403ab3fbc73fed0aac280815e0957630d3ebe46867ceb43e9c763d4bb38ae754b5c7ac4f70632fec096bed48b90645ea183beaa9f2ac5fa7bc0c68b378dc7e9fa5764283a5974b058e1e8e189d00f49352fd2106963a5ae4c77c7249420562ad2197d5617b1c5349750acf17854af8c05e988444f2aef0e0a9d1c762e6778f66c3a642144b8628d86572ead4896e8733b5f52a6b8e500aa84002de274864505cf8b533471062ea1b0212c9d195ba56c229134950309361ffc238931e3141136f303fce8857a0b164410291acfeb440cae847220928ee89824e47cf5e4088ffe790138313bc7ca22ca5bf8b01700ab2f6fa13e54423051280d7506f28cc38a32801ef494d4c67008092227c53a84d1e7ee529e2ab865680d5b8a47bdf3eb44f788257056ca9fadfb4ee74666913325e8495aaf1a8c3e7ae116d8c570aeb36e2f73d4f4be22799333840cf46ea88d68b212f94021c129a9a652c932aa077f1d99804302c237b111c1ec8c827f0242f6484bac13b4fd3fbadb9a474a01e59465a93d80e5af5b944bf8f00450d3d60496e04b977afe860f2b802ab59e200439e974e54805a83389f9cfef76588deecc7df0069e7055800b65b96b864770ae37da2ab9c7451dc260b40e46214a952683eb69527252668a35d34504243188d0d63ffc0379f8b1ff5f46f0437d860d7b41f416c4a56b818a8b5fdf1eebfb21b52bf32d9242d22e54b64b4df9b8c9d601b72d80dc47f3031b16702c892f9f867aed059dbbf7e9ddb41c6fdd98565d43374b2685931f997b3f0cc75d95da7372f4b19e1833efae29b67559bcb2eb8f60baa150ea387634695b20de77cf8ca9a51ea1a3890461b7b55543898e0d05d023bf5387d48599e5274068a2b2973a017a83faaee06f0099b320f34d7f501027146f8baf3f5bf2a03d496fe23df68ca81f8d23706fad015015be92a3ae25de1b272385420ab18832ec21c9356fd36876ec0d4c4998046406579a5812f546f29c15702d7f1769bc5bfc35c6f1f97dfa37349e94cd2012d4cbd110e53c2ad5c9f6b50780d74dd43234255e60174709db0f3333db225f1b0d62804bf225c2c1ff4eb19d3baf4b9be613da30d8e4704f66bf09d45bf16ad04c07748ef3d09e4964773c5b327370a2dacbf65a49f84b77a0a031ac71f0418316ab0b9d8f63857471984a0eb52a1412aa3964cefdb6f6f6bc02b59881757a56ed13b02e72119bdd655f880e6ccc32bb9704a5dc106e92a5c0554c111a6366415fcd29d2068853ec1359ab815e158f5ec33732a3ef7e5b9ce847a970158d9328836e8b33ceb457d151540f562f7d200eeb6bbbebf5844bf7a471b3630abee77af54b18fa95648023bd5dadc1a06bdd59a89717cbf5f4f87be3bfe48933b27df46f7704523d1f9d40ca4f320227910606cbc0735f12eaf53793d9bf4ffe8cf9fcb3be7e19ba2a06c7044f405be8fe85df92d1d34a005ca1f4449bfde8806f0ae215307f5ce8a5903bc23668fba5c2a6a9e90a2bf20d0cbd30f5d736eb1b3f61f8652e1d0ec960e70ea580d8ff830d05685264442a5dbd2c13e27d4d6ff1251ff5d14584b1308513ec94482be46231ffb3e75580e68422ba7729f210cc2445550c2cb6964b37604f4699046a0e08f3428fefd3f00c975601ee6033491c9b599b1c1f9aa75309d36cc008a1c00ee2834d7bac94dec9ff1dc8efef61e58f06aec4cbd9a75fe7c85377cff86bee81c0e3eb192706451ababd3810b9d51282c0269c613424e4bc526ae70d0c70844729b013751e54fc66efb79ef11b12a9d43454708b2198453303f06dd172ce2dfd03afda26e3c5b1d9346ba8e6c88f19c5f08089947ff194cacf12baab1583321c7ea8fa9b291d98e6824f24255c58abc653953e68b467afc14806a97853dbe9a437129281cd9058fb3248ef21b1b70f1894204e18383349c4180e42d7b40ce3023ede7e72c0cf49b31ed007929a680d63fb4ae9f909c2d963e328b5dc82ce29608b1f89e876ad2652633186552f136f88f6beb17929b400716b4c8aa05c134bb135b937f52838919b22e69f063ac3dda733b64cc22c0ffb6310565230f5866570b548ce89c3f036ac7afa7e84718424956c29c307167c068623560e7a9459c4afe08508b3201ee470b0c8b0425dfd68b87b713cf5243108153330767496be0aa4adf09baf6ed9648dbfb33e79190458c435d3df7824c375063099d7bd961afec55ef9ff60d2650af7ebb5595e5094bd9a3a340e0a587d624b2437a1f917921c9612ccb93ebb91e46b923af578575a204afed8db785deae294726e331afb953e6f24d7c76381be6923ab1b0834bb2e6fceb2193d3d0776dd73f2e8f5f2d3adc04a129df6b9a3ddf554c248274cbdac23e814b4bd488dc4c360b4dfbc6dd05be3c82ecfd9319063da9f5e271ce4fc3933e8427fe719c1e3560a531653de8408731bb8b9ae18731b60c0429c5aab9932e68d391d4a681e6c1b99d87038999fecd11278f56b50d4d0c7ff69a1934d78c237242f49673993742bafe1062eca70385675b8ce84f83870484db292b00d4c163eb8dc99d29757f593b22e80fe74cb78873e7ef5d8bdee493388485412e24f7b301a51b0d581292634f25224cd1bfd26b9de45af7e7b182dc695907b808f05af977a97070efd63a92b80565eb1893d35b38035b61095e95462d04a294b6fb368b4903570d56f6c4180417de070fc86ae7f13b4572009cbc06702d6ef18b256ffe8f28a7ca63b8b51ab73152b9fdc2019aeeca69e129162ffe70a8e93a2d5bd3cedbfb2e1ece5e2aaaf51bfc9e5ff118a6492ebeaee0524c4fe8a634fcbadfcf5911aee6870ddfe9a9dbc91e4f0cc0228d626506d4112be78ce76c7f082dd30926b668cd2463c3ee7f4c8e886e1b7784b9b9c64842339c7980014049aa65e140fed89c33eb30615851b32b41a027d8667d84390f7b2e61e07419f6eec5029191d3434cc9cda99ad99961ad9d802c9d6e205b602974445674924a2d9fe0c9170b48d59147cfc57a0ae3b6d744381ab2d0cbb6f33a230e266fe34e2aecfa40550614f3df6a1cc9a702470d089d4a925fd3d6813c52ef7b8bd03e72882dcc0913f74dfc8c1aa3164e396436fc861e55ad8c36433e97143a56fc868409fe0b281786d84cde71e0ad141893d21fc42745467d486c6fda577eb9c51354488f666f4f05e5c80ec44a306c8d2926e2a4c8673cfc2403dccdd10cde6f3033a7e268195c1c075c3aaa5b00221acf25a8866485e85eb8b432776a5abbad0079ce7678fc26803113d5af6bca86ff0384b5051b441e807a13740786b61afb41873423441965e685bf585ebd9290fadc90364e39343b4996fe8240f15c5d543dcd0c6f8ddf79428764349b528f46d7f643991b555d4542b278b789a3f7446b295f639a322f57705a8358a8e2f400077c0f863855ed123a417088a5b8eb648ede71ff215ab25789fbfaa958570c3be90e4bb8b64d4de0632a32a6a0f7df4e03eb35611aaad09582f672fb7e612b2df61d1a47d3d5bc9e1e8a9819b2032dacb679d225cab7df6bf0523c7987d8b504315ed01d3a45e864899ea24a32ff195ae5fa4514267885b89f08eff48aba70b981bb7d31ac913154ca405832652d6541a48d0f6e133557450e29c00fba0b50724d5156150bf3b57cda53847f326a40513d30caa0452e2ce88dc88da3944143412df78298a589422e3a27c3dead8268d6920c74404c4d4ab7c360a8c3bdc072f377a30e1e89bec1d83345855a6cbddb12ff22d81af2529fc9cb09907b97489dc26bc9689c7929b9d89db566bc7d2b0cb6269228329be6f5c7bab0a9c1d3370b974d547bea7b1638b26b2731debaff9e9435bd3a70b23dc103de933194782a44d3adba3d66c3bb47d9af847b1470de490e0fb3aefaf96283c5996a84b9fbb1471d96be072b0533203676c3253dd4c2043baef850bc8ae121e94b7e08e471ae5c9fc974b61a1924902771f657dcc91cabe0039a3b89d481588acb7a0684996e62f7536f2896601205d4a670ad3d2f4f7f4265a773ce2bd5bb9e1060f1437a6960bcb76e56f4cb8fe752f1bcadde1c7fc5927d7799fb75ccbf14e80a606695e4616215289f9fe928599221062c799bb148431a99ffd0f0dbce5c03ac3250b512d885f1fdcde663ac716cd77b62ef588851f33c38314f1ec959a0c91e7a77e7288c2adcdc4295cd4073b6d7cae4e25bd80670acf70f1f1975cad51d07c77a5b195197bf46e6fc9dc92c60e030fb0b9099a16e9ca6819766df64923f6cf4cd18ea2f200fc00826e568ad0401c981791d215902a8b170dcdc4b94746d971dd2d10e057d387d678c6bd1c0fdd22d25c60225a86e1d0ff7aeb73ddeb7feea484cf38043c9d8bc0adf6f1f1338f54ff9fe442a14f6823e4db616661925915e8611b828ebf421abb6c0ca07dc612c0e6addd971f253aa7139e07abfba039b21eb32f4644ec61720085d07c1cc80ecf7358b044c9b7a6a8e4aef88b8ceb1b2adc0c54fada3b5a5065b880bf017a5a418a4e68c0dbf293cf9db674ebfed48d79dcaa94716a62b3c639613ab052b7255d3d09b353a209c6621da317d072c37319e9c8410f986523a58cc21610b81992b95cff5a9d28f9c504f29c4b2dd5690b9c9c2f9931cc1266a3e60583c6088f627fa2408ab0a12044e526b32f5e7f4f895add90886fb584699c877b541bc4cf7ff93587799440c0f93b9cf58395112e70782219be666e6ea151eecfe92cc701d2fde33b2e8690f85e68be5e7a959ef8f160761cc106cd2cda24799e30c753b83cf432667e7b89a4d6c046feffc54802990aa464019eb19c2b5c81f649705c869a0cbc6a90bf1291609768990d725ead144c34764c717abb8c030ada40238035d77433a9b4250e05392791a373ffc2016a17d0eb7e251449688a3d4e965de7e9e0a3eb4131f55a69a4476765465fb9a96206d94bc7badb00285b829e2b883a333681fcc64995ea2ee094017938990595de7602586fb4a06c0360899f2bbc82f8ff216f34b6e4129c10988d7242e66a0e5bcbeae00341cd639dd50ba038c466b075d8ddd4a18392e0da291d799d65b3b46363e73823250ea9b89b834cb270304915fbcbf03ff01f87717d0ecb2fc174219e53cb006754acebd98ae6b50cf25e72c5d2d935782f34c9314ce130a4ba7ea500aaeec957dbab5adab4f1de1d52b7cc6ee82a6f8901348cb45e628feb42c3e8170a8b25ffc04bf4cd70a388889fff238e612446fbac18fc861b3c5172647f7894659a8d026977caf540e685dbb2aea0a982abe8c7a3047de55d98ac3b76f37c4e0024fa5be2e6eb0810c6ab2ffeedb0a7fb345e873005d8152633400341c6745bf1595fdb55b80494d2410c46f14ea93436f8b2509a4c41342e59bb0b6bd9274c2a2c27adc5bd488f798a2fd5fbc5810105328c647e0519c60e4ea30af901d04ec386af46f66ea45923c9be607685cd1bad650bcec24cee170f89b96a89ac2f0e20d8f060a6bbca21cf5d83b416d25a1169bd948926ce12ac87602f586c2e6b91caf39f74cfe2eef5553a141718bfc30593b55301f3e2422fad34f3f91036e78b926025269351946deb1790ee648a86b8a9397229c22d527be3aebfb5a227a88d77c988e6b524018bcd928419eebaf218d3717388fb3bd59394c360dbce875373bc13183c39f949ae73884a68375b04ce5f6df09ca00db3f9a69cd7f9583a6e7ebd0efca3c1c7eabc6abd3f30540c8238448b057733b9297194630572f9d6c1988f21980ab22c6b6ee34017283457803ea1ef523078d0cc32f5fc0ceb693384499a62ec4503d28d56d9f09c7b16ed09391f7d10af2de788de586cf01e86e71b956144b5de29636efb42be3bd5baf1f274f74eaaafe0bca9e04122366b9967f716b4f1980124c37973ccd5ac0d7ebfd24ddaa796aaa868611ed46d0c834c634ce652411bc3fefd6f32c1f4569051b68080d7703c532f12e8c3e3f218ebbb81f817b89e7dde515581fc8b3c21f86403862fc4222f570fde6dd7884709fba8da155fd0fdac0739b075b573ee92589018bd4121b0ebef575ab90ff81c924445217c9687d1984da5cd858c177ec6fb729368836d36e34414616470fbd829417a6aa0d6eee0ed43a45724595e28389dcda238d6a029b97c4c722ce95d440949b89f4767ee4368de60b6a2cd3af4adcf6abfc3141592f20b08fa93f4266cb65e3ef4c73eabe4c014fe9f94b01d2bad4db6fd9f3070b443bf2305c86861626c3dba0209f51d822393476b9e706985ec1f81cec48fe32278b2fdab6f16bebe93bd37a0917eaf1300824a101b6de7232140516176f2e241449c74d3521a0b8f443123247269a4caab5d585b93c1c3419ba59509fd6bbf101a68553e15b771f8d2f5172ebe72f8e28c7c82855a858e3fa1c0c576e00376e5832584f7601342c10411392e6e2bd896195eb602820285ccf8056473230456fbd08b550b151e768639183f5d241c745b98aaae4a30129feda2391bdb59583050300cfd39b13e0ac5485081542be9adc906e83dd41f563e1a5eca3e8a9badd64535aceb8ca42694c7d71af485571028bff08d23f71e43c162bf288d4fc7d2accf97cbc99f7b75e9bfc4157accea098c6a74e48be33fa05cb71088200a792edf045651be6db91310f6791efe4507590af14f20f9f587fcf93772f4a56468dc52b03c1aedcec294126ed9a0a93fc833b4dfdf5dd3692c7a123181198397614e4a1ea0d14ec89908d21bbc6fc61f4c0f90cf8379b12c8ad217cd98dbbd7383fc854564ba03214c2fb54a63d86c48486e904040729abd26453e2abb7a49e64f8ae4d59a01fb8c42f8984c259a7d2a942a1c897d5c146993066b72eb07228f2670d85fa9b0624ed39d2eedeb705c065652005c10a971df690fb4f28bb87a9dd3ecd2125772da9bc569acbbc149ecacf7194fc457b017777befcdce86637be8c07108e149027624d5a152427c1c503d4d8c2f1332fc1bc98e883fe3a9c269ee4647acd306d04f4ae80f99f1a79de6bc05c6a4e61aaa93a851398b67ff0677a1f0ff0d35174822148ee77cbd43e3108126ff29e988b66b78d8e7264cdd9ef88c5dd322c72da500a07f8dcbb54369840d14dfe7d21658a5de887bcdb5c6337c218fa4efe67c1a3b58830ff5d4414c58e1443dc93cc8a2a79e4f07a3d7e25f6869a926c051c5242f3dc2214360cfe65fd8590687770fbb7712a9c0b9b3e231ecc077be681c5343593fe431f0a898d908cfd1bbe9f9cc473def0abaf5b2b198185dda83f9ed132e57994e17624ddfe7b036540a2fdaf422325a9b6941d39f2e8d7a56d86ec4937365d83c86027e833540179db9717a408dfac4edd7524312e74e71faf10f538824ba3ce57d6b91ded36c1c057a093dec847fcaf6045465c72d83cea6955c7bc34b366c349f2881023e0162a4af1427ee25f69a8d955c248a18db7ca76a86d312ae0c24f54388807459f8b2ee2bfdc017cac5eaeb552c8b91df0be44a24856f2b827a1e4db8404c0be5da1f36029f75f11e1b419737a04bc9ea46c08ebd102b246d1ff9a4a05ff229255c5fbddf521a6ae9c793a0c0586e14404e086cc7f120df9c0d4fc7c4ea12e2707329f2f15ce0bebe249d6e3eae61011773b6601a7139ff3f8c45af17753e85b01a611e366a59d351008a25be815385ec00150085fcd5c0f6bb645c248ed47c5e81752813e1349831df03754c837041f1f7614e199705b80fa3e28163c45e04eadfc68f56201c16a5035dc279f2724a8e0beec8358352f6f8983c21c7354bc971820a9d318fa73efef214229c5cb02e080028c828fb6c34fbcf32439d18f83b4f71b36304d80f7211c6a947b3259f1049c8de726fb9a59432a5147c08c408d508f4af8f25cc66369b19f6594b1152a985639dcce23cbe5b5f92fccb6aefaf69da6b6e83d21eba8d494713baa8677333bbf93a94896b267ce54f9d5cfacd5dd763f570951823175d1e2e925cb4dddca08098b4a00279938cfeeb9f67e36f8af18b3c9b1b7c15df67c7efaab41a6ca1ea9b0fe6924b49eed6c7dfe87a501c6b89daf7721cbf2159cff29aa1cb874b41f937d771164bae11f748dfce87b2d882bc0f318dbf6541ed54908821d17520cf6a514c95d7d80aaf5c8150e64a9622655e6361cebe64f79c3ea70e256a575131da53a13db399cd6caa5437cb78e44792ff953dc6f1cc89a58660af7d10ecda5ef3c73827655986659836ea39e29a09bb4ac29f5c3783511987703cf3b5a753cb3ec835e96f9f699c7cba699af6a78b39515175063960506641e1d71f7d8e30eae86f8c341e29fd29373fe3307bf9bc6e609406790fb3af1f24fb5aa9f336f2b9230e89dfcd4ea07b50fa94bb3ee3d806342a940c79d4d109fa68d4a8dce66771cba8e6cccf9f25e4f1bb9ebffd66be1eb672999b5099552d5cb3831fe55428787b32d3644c3f7b1fa8e5b77a1f4efc6c9460cf6f1529bf15912598bdd98159d2670928cbf0684f5b43515abbd4fd4a4adb37fbe46c0f3384da4ede0a85447532faae76f79c3d4918d6b9ffd49ce081ff30dbf5c560a6d4ecfddd09b6e11f32d7df999cde7f6a90c5afa4e0ba1397f7c9494597df39bd8b55f224be92b9737a9777b14afead6086509d58711412150a74260ee4aa2791889637fdf5bda518e0f2a7df71b1fc56d1eeb4d836597eab2b3a134fa8ce04080b35f3c7795837b92484a511ff6573d68a42fd4b39ff7d14c297bee4b2a71c7b9600be723ece63f8de10e8e41e1f27f7fde39cc7bfbd6f8c4b32d0b1ee9b50888f3d25c52b5ef18a57ace95851072e985ced33bff2ba2ed25f30fb11c96196fdf5937e6f4f4793729cf9b8f1318e273eec1b6366c3f3e3ccc5628cff62743ae94f8637fb96d9f47b653e80f05f2cc22d87ebce971c5f9c073b0df8dc6bf29c6bcc29454a940bff65dfdf1976710f733cefdd1fcc61080f5bbe36a0511f7663ed5198a8f7aeefeeeeeeeea63e8417cd709525421d0650e754dc2c7b9c476911173372719dcfede6634f33ae9ba9255fb9bbd32a5e48b9a1da27d92df39175ac2c7bceba69a4884bbb2234ce486bc0675e8fe358d73373e7c49146c530cb03bf1fa2defc405bfe99e5c5cbd0361cf2d65883e1d3008b993115b3fc062a9b29655fdfd7bbaeebba6cc7ff31f0bf155c3fafebba5e22798d051ac4852d1f754979cd38afc80d060ec27defbd7f6f00f7d98e7f32fff5f2e1c54cf3705ee420301428eabeeb675fdf17bf9f70c221b1ebf11f4a894c27e4bfa772803f3fababfa99e1b20cb7729dc65df44da71d0cd8dd5b400861cba8445fff629cb01b42f8de93b647bbd0ce2b627f7ceed81ffb79623711c3a7cc0ce364666638068490218490992184700819b8f1790af53d43092fa44299f9aff71e5ff2e13f66dba3dd687d0b0abf9ef81f5f486a55ebf6c38256d83abc8518a594524229a594dacf922aa594f25b83b5964a50ca8fd7251f46c8d6bb1e29d46203126be19d1cc6f7d278ef4d0ccbe8d3b6f7de7ba3510e2ed47e52331397eb7befcd96eeeeeef66ef7163f9d5a4e2e1a157e4a727ea38ee7e6e002f74313daefbde79e034b7dd2089b234129a9763b7c4d80b46572f9b99b39d0a8dd6bb28508e58441570e346a57e7d4a613d46b72f973a051e7dde06b5ba8dcefdc5c4bf4c508bfe7718ba9a5545b5a5a5a5a6c8c5aa6c8c105523b490c1264f646353b8cf29ad916a4e916a4b52d48cb96a3381ac1d168c415cb7c6a46bd19c37468534a398e3a9f2ca3daa633a3e3cc53674422d5089fea6adba84723861a19cd9ec58c2cb5d3ba07ff684422dddce003552aa9746682f89541e99c9886ffd4eeee1ec5878aebb6998c1e96729daa5eb785280821841042082184104208218410d6979779c908611e0c0c0c8c378f469dcf9dd32ae100a996341f2d2717f85cdcc5a55d6a2d954ca69696938b0b0c0caa64aaa76ef193e6e23d5d85ba41ddbcf84b47d8d2723ab9b8bcbcc0c0a0504cc4f231934a9d7298013375fe050655b5c7a9d44ba53cd513e694f254aa39a2361d1b5b900d885f9aea143f1b373ae5310f07cc1163e0bfe1ed0e3bc638e3c3b134f511f21e26ea546de72807b9e7cdf2bafef376adc554ed84c3dd5a6badf7ac3a39b620d79d4ce385da85da558d94e38c5ab52d54ff79491536ea7c68b716b2166c2c52089e50d3b6b59663ecbc88e7decabcea847aaf6364547db92f8de1199ef70c33c8512a07793b22aebfdfae88eb1600d27f3a6763bcdd6147ee6e38ea4e50fa3f4ec6ca0000cd29cbd020836a06cdb9ae46006832340d455c388396c30c1a66988135d50604763f0d9b4e7ca8d11093e34aa5ab4952ad740471fbdd61cf8e191a1e3d56ab1c66d46ee632777cafebeb1e983ab08cead0a16d3a74e8d0a16344d2a14347d55132b59c5c5e6050366ea46270e488e1390b001919669011eaf00e800df2baed88b86d77b80165ef57a3c7e8d1633c5d7ff8a89452c6e7a7db96a31694fd15f91755be8830ca6bc2399ff764794d4c6acc13cba80635ed796bcc19d5362923381a3def113f6b1b93f859da6844c5e5270941e1e4f2971c0a1334999eb7c9b360f125fe83250b962b4352be20923224a5d55074503fd14d2e7fec279a8963b9fcef0a8b61e5f2473180f0e12cc5c70d6df7f7208c124af9bc65fb7b10c6282f785dcffb8251caeb9a13cb60963defec9a189665946a1bdcb6e7bd6554d3b66d34225558ebf3ae4daa3048b7a905b6b43cef1693c67c62177e79d118060551a8e78dea9653907e81813030cf1b668e5239b8e54bbacc51a7017e1e59a0edfe9e0e8c51caeb9a139be2f26751e8f2675b1078a3938c524ddbb6113b33f3374722d5e64aee3d59abda92a945336d45ee73f721ae7f572ff7a862dec5e5e5a55fa2dfb6dd0f975d753ab9b868cd348c5250e40148fac2ae83c0976fe1f8d697285e9eb6d6f272499533327a669afabc912ac74d4ee32aec874fbbd14b4a8224526d12e47a2a473a526bfdd1f3f4cf3be2fae9db743448226d3fb249dedd2ce53620efb38f7cbbdf4726d2aab083145cc8279f5c9853caee760ca2a6fb4be802083bd5bd5e8ccc7def3b789fed2e192ec6dfa643310c4361ff1e8498cef5d2ff52c1ee51d9f0a20a3b80549853e8c218d4c24c5425e87711e87664b2591bbe5023d09d9fc520252213b73f3a61c274be849b0e865d5c4f14ea7e1fa3505f11842b2675d804fbf14658cdd876dbc37efbd108c346d8d68e1d21691949a3d9f6f388f6468af8b9a3ede9639f71479060dbc634dca3eb6e87776e3acffff59cae77cfc986147851052885e2bff72a47ffc72189d7fbbde9355ec4f381ee31683993448defddfd3e4aa10e227232a51018624e6fb29d4fbfa01bdf3d201bff9a10a0e55bbe7b4b947a5815d3ed62c4e0f2afd51dac397d37e5f3e348e5b031d60677c448af7173bc8db7dc9227473e85e39fd0b379ad160e2ee66f70f2dab0c10b35e65b3e478e989f3139622c175fcb9ddce0e0c5c1710ddd6bf26e0cc74c6323876557a538be7e73704cdcfe16ee2df194d06c707c6f707d71d81467a4889f1b63a3b0965ed735b2f136fe06c797b67683bbaee5f8ad38aec9756dc09c68dc7450a7d3a905e7cd59ab14325e8b7b52b837f4c24926aef28fa18adaf2d9bf70270f7ae15aae985a2f5ca999bc70958b5e38d28da18adab15eb8d18da18a8a8d5239cc7bfa794fb6d3c03dfd765db8938d9b8ee97a0f3bde02eb76ef31695d09baddeb5e4bbbdd6b5d7f42ddfd3ebe2734c471400509660c5e0a622b9d4f937b5989575627dcfe1195dbbff56bacc5eca702b8fd990cbcea9f4fdddd4916324de703475c77735977bec6752a14d756647cdf6c0523238a1c901a2a31f4c47dffe4c3a9fa8e0108b583d557a8eb3de45c3e6ff07d84efb14ed0ef6997ffd4fe4eae6aac66baf49a0723a51ec134e7b9e9bcee7e8ef17482b34ed89d22c4624e97569bbe7c9da7037c6c94ca01bbf11bda8905aad3ef357e2fac6be8737be0c297a398592979e4cf69595e2cad1c128dfc03028dd367bc46075771acb77aff9899398a1b70e084b82a8bf60607b5ab1927f3efbb5a4f11071d24040a70443ddc1420fe07490cea1610905f5d87b8ade44a1c6bd4be50c8b309e2adfca7c5ecf5348867c39895da16b2eee3ba7e0207164bc6da08a9914157c8b309026e41f84f715140ae4aa3c6b8cabb75c5008b35b4c0620d2d7c4ebb83035ff6e8d3def646ef4d22dc0d9179c30ff16cf811f11a29398b469f84dc54ec34155ef37cce9b1b300c635decf9d90c81794dc7566eb7aeb0582a151428592a5b612b3c704ec3fc542863dc78a4ef89f4efdde72cda3c33812ac88614120166034bed644bb6f8072b6be19038c85a31b72d8c904a06b5c301237471145d972dd982115205f190cca494d29fd86742c85c1efad953ec391246bff44478a0f448744ee99b57d83bf6d5624fc27eb44d6a996930ccd22771a38d592e52509142e644f258c628957d7ded312e05843ef67eb1fadaa732eb43b5fcb64ff9407a4a371e4699fb137e665976fd3402620d259c73fe9cdcc957de52460a2ba20aa431872378de42a15433d1fab8a11f867be15c386e698be1f042ed17638c40e2f7c76feb83e535310289792c53a992469b46b3b805890c055fd64743e135b365c6d4dc0021f4e136386fe5353f17e739518d2c4a9b2a95932b4e6477cbf750aabae137a7b9ea46daae0284da3950d740cf86675efb6b7fedafddaabc6b27b0e571bcc55b1509592ee51f5322e11f6ce565b952eaa857503bf9f433af70d65b3b16166592576592581b5ab1bd36a7a5d49580c027a703a327c203a347a2734656494f233ccb88eb0dc8c3a6b6e5706511853234dbd340f7ca220a572e86d9540e2d0467b93cd4a26c8c4df22ecfb4533bf98fe64f8a2da25c1ee2020aeaf210174137893fbdaeebca90f84de29727fbf933eb995db6c28be5663fbd66daf91deba3824eaf4912bf86b22ac6b7c135f4e3a3f807f6916edc67d943314d1673e5db60957c675e555bdf4a3e8a694ed7399eea441042256da7ba73ca784df6314654fde893a36da6df39bde9b7cdee98bec52a496ddff29c63b24a529b4d3180f4a6f7a1f42dd6644d9ae9495fa4c5d6b7f2233b2d6fb24ad8be558ac86894f2a173ea774eedaac93e490de1a128ce194d57693fff947132ae925faa248c9b97d41ce6400d35d418cd6dd239b1d7306cb451dbd90519522dd3304daba8cc4edbc1216d391ac11c63f48f9c105aa7fd7c6724906ba00df4d57b2417feec772a525099c185ef918a1454a0b85008ed42eb569bfdb2007f1ed13fcb87abdce74750fbca2e804c69232ee47018623deee2e7763da58be7357acaf5f721a609438d191a2282635096e962685dffd9d2aa4264adcb33ff720d4bedb216ebbae4a6ed627c4d8ada65ad3bff46e7b201614119436b8d2eba33b7bfb3b9fd0260026cdcc35bbedf470b57dfca33d2776338cea87d318cc4387e475c4742bdaae1ccddb698bbfd7c36a5dfb63fb94dfdba6d45b73e1bcd57fd9a97b8fa5cb9f932f78d5c324159a69b11e2ac7529b5d9634f318e4150fb66d9d3bc2feecb17c3b2d6ed4aa596205421a4509c5fa894887fc45c7f2a8582d4703bc3e2ceef4a465c8facdb36d5621a21d46e8654ebcef00324e666444ce33223ba7ea46f976ac13723640624cdabfbdb4a86d0e136914ec86dcbf2463ec61282753b2259276dc7c2b8e63a99db3fb6efaf1c8f38ed37cb2f6763b647664807a8484185c99d2d04b4d36a2c88c62b7aad7f8ff18687c76968a86e3c176a5f22b1efe338cb8d5cb3582fc345b75bdeddddf0f1ebf76c3d4d99e54291d6a1bc956b68d4f7dd83e25e335febda82c9cf24914ab5e53f6a94745d970ac1556ee7e3e4f268cf33814c4dfb89e38d6195a3d896511c2f12b7accad37ebe46e2fa6ed9b41d5719bdbf367aafd97e341a31a15a3bd1344dbbaa54a9a2b1d7506ab5694d25a8385ee4d9f8c8b0f814ab3f24a75508b5d0a497ccedac1bc55d671ab56f9d1910f9d1661188f617d771d10d46a5d65b10f91d0d968db0cdfe0bb5877527d62cedb5cc76ac5a327d878d9ebe892b71363612d7cc34d9c34dead01d26ac9bcb13b4fc28b310038acb59a811250b35a0b8f071de0684ab688fb6c64c13df134137b31a4a8ab8aadf0d214b6a2abecf1d822c182205e45df8457478a1cb1b908eabf473a11ba1477f9fcbcfdc4caadb4ee6f6a909e984693a47096a7fd741f20645b87fd9c3de85ba89f36f73475a67bebe81d30a656860a8ef27dc225eb9ce45ae7b7d6fb806855ae7ca04b58b64b065b649d4be26775df3c987a92190a7ed7d1cdf2b21a8b3ff3d2825bc384e2fee0879c955bfe7ad5f70c9f7de83ddcd85da17e7d9247e21f424d78596a7df7340297def3dd208e771abeb4b47a45afaeb2f8c6ea16edbf7d38deb36deb64ca31ad528ed796973f2f2bc8fdf5c1299c3d8bc6484cf8b883e9a472afff37a56a2f645bd55cb394b4ce3ff4e5476d58b409e0b4afa4d6a705eecc279d8d3c7f1e67ec35249cf4de23a129346dba6d31b12df6c43ee93f8e581ff92f8e5c17ef2e58da2625e66d4500b0faa51e130e47e595095a5f60c0fdd6e72841bd5ccd03da1a6d6e408b59b734e0885e47e749f830992e52e29a594725eef3ddcbd8eb872c5bd98e850f72a6a5d508b11005dd6620b2c5a6c11862d88f655931242196459574957d64d0ca3b6abf431b619e48e3490a9cd396d30775cb7baefb5cba49cd4eb716e370f3d2b5efb6e8e268e32f88f741fe93b91441bcc3570b7806a8fcd579fed301c6ac0f7ae7751d73a7b57a6ba1ac7433339310c93b355be0d89e15e97b45106553285da9c38cad0509b1057394f0d8542a1a6a4177744474810be38586a5f37d8860f868100f5e1d889ba9d437a13b77d9db6cbf1819a9aef73e7e3f825377bc96a65e85e6c656af561178661f379bba67cbfe4bb940fafb429f93e57daae6f10af146db5727b3c886783b3e4d5406179b6d2afd4d7102afc37eab4f8cd4d46e2f269384e1fcbae7ff649574d2e35e43de4fa7a406d3ae747b3dd0d35ed1bf36d8777c5d728a55466189238ed35b530b470b888c80e2c252104a70b4170801772272622f288b81857f9c30d554ac2ddf94a0c9eec94fef44a945c4f6951cd32224ecf39258e08d3e3a0e4890fa62ffde66d75304185d0042957fbc66105b1eb41ddf6a1bd7f73ce8ee95b9e88d29f3e9abee5e316443ec61c63c45146ed1b63dd464f440b114f484fc4e94bef5b8a01a72ffdce69a7c59ab41ed4d59e42cdc4a1ae70c6122b3925cd4601f494eb54c46ab06252b3679af938de73e4970968a99aa010d2f0e28e4e9cea5d94b8d82260ae60c1959c27263b93733dbf5225c9919549d5a0eb9f52258d88bc9567a055bceaaf316af6f453512d1ea7a00c351d540f618e249808e67fc1ded1c0a8cc5ed0c7711da83f2364b93dc5caed3f82647e92eba1fcc8f9a680f892c0cb4c13b1f79991ebc6db05d0ed7faf298e2f28e07d6f3becd0b1324df3d5ef8b972fc20b2fcd2b4aab13c3e64ce5f06ea348ed3c698d35d658e3dd6b7e1be9ebe1ed091f4b7de2dfdf137b29636e50ac93aabe86aa188e4f01c8efc77946ae0b1fc765fc29e5bb39f44fc379fb8aa28433ee1945b8b8c0726971860bbac030c22b4a9c313f8025088c43691155062e1fe1eeeeeeb6cc64743decccfc8f1b0bb49b194266e69682d2d67ce6f1649afe0eb201e9eeeeee7eddef7577c30b41409f33333333c708a38c315ac857caa0423d4cc479678032333333db0662cbcddccdcdfce0830fbef79ee5d903cacccccc186824f77d8c1fe3f5daa633fb923d5a6bd7a948e1be0565191daa577d0d3b9e773cddb4b76d2b2a767afcce7bcb6d8afc4e00bca8e10bafb9a18ad710200caf6115f1f03bef56bc66c7efbc93e1350df89df72b5ed3bff30e85db30fb1477c75bcec4ddf127ee8eb3400cb7f1a226e3eeec3cbb1a77e7fdf41477a7a9b83b1de5eeecb4177767a7c3b83bdf4bdce6b576fa89bbb3f316709b57b4c358ee0eab717776f88bbbb3f338b80dfcb9e1eef8b83b3377e765dc0606c5dc9dd3ddd1eece43b7813b3bcfcfc6864703919fe1f9c9f0fc649e1f0074780bc403f2415ec8d3e797808fe1f9bd8fe79e5f0c0e8f03019f03e76d3cbf1bcf2ff5f0e7c1a0e71ef456fe50cfaf003f6e4a355f9f1f89e675d0589adfc1e978de60900e0e42a1e3697c787fea03d77747fbd03a68687e5e1a9b1a42f33a9ee6755824ad43d33ffcf03d707ce30ffdc3777d673e723d709dcfeda1871e38be3f709cc383e33bc37146783c6f3333dceb817b3f708f07f796f0cc479adfe13a1e7fbd941bd7f9dcede94ccfcc44fe19ee51c183eba1919b3912a335c283877f5e1e0df81d7607d7339fe4dd19dbb13572dd063c0f9be4dd0648b7e22a39633b9f3bf3cc05e1c61fbe1b8003beabe101dfad20f01d1701094ce03bec52e0d976f1594f01ae79c53f0109440002dc035697df011cff0f1cef789c37c3f1f05167c7d3d6585c3f6f3b9a87e73076d81e0ec2e5e1df3684548485119787e74d8707cbaef2d65bf933c0769388edea0eb6435d9c67e345403c9bf7b300db4d05d8aedad7c176281f436c5713603b540eb67b21b653dd20b663dd8e8b8070d16b15c11f1ddba12e0e9e63afc5b1077803d8025802701206b57ed80e3500db55d3dfb88ded50354102b03eac0d01a8e1fb996ba8e179d3a9c14a16d79716e196fcf0487cce0ff6498f1e504a8f2857fe0edbf9dc1d3cbe837366c676f157cf839b791edf3c22f3609a196ec7f70624be8ec7793b3855b6e9ac9eae381d2b1dacd26191c0ab523d6d6dc5c1cb9bca42b9920bd97a36bec457f269b0dd9ca12583ed50570c5e49962fe32c1f00d6da0e75dfcfb369287825593ef75846b9f263b01d4a6399b17cec5febd9f4125ec9c7615f8be5c7d8d6b3b100af7e9e0d0ebc929fb21d0a4b25e3cab76151b69b5f5cf9303f2fb6435d172ee8d9c8f84abe435e49d922df1474fd74e557db55f924db4ddf80cc978ff346aaece766c26b5ef18aef65b43d8ec58ba600c17d0f319f1efc9390b536d0d28ab256d6e228648144d62aaaf5bb7eeda9d47cc33e722593e9d94dac6b525d93a99a4ca6d7bcc6f42f5ce5551cba89372ad6736d7ba25688c69d70e8b8e5f2fed485eb4bc46b3497d3bcf4e7a5363584fee9e99f6cf54a133c3b07591ebf6e4e71620d26750137f8792bae2830109dbe60428d2a2e5fc42f720079b0849452ca16054a025015b021001911c69546440104f18b317a40c7c8c17d7f42699787c698c1182ab082e52c2fd080861130694285c91258a8dbe5294d84a10bd544c6edbe1ae109b7ab34a4514797a73441a40ac3104f69c2083330978798d0040c554ef013ce2ab060a80a52eee8f210184ec2504fd3592c24a0b060f2f20a2fe2c7b6e2075d387561094bb0d0820d247e70031410a85861851b56f0a05aa1c576c41551c8504519ab257eb0c5c808549e3051c5cfc80a24c014810728f8810a4e519edc58e20a2fd838016a09206461b262061508377059e20a26e088c285cc1150a400c01150a890aaa26563c94b126d82282a6861421a4960314586285890295d11c6147050850842208616508880eae20463208185900d2084403b020cd41223482df1832f6c8c31c62b8e9039a28a1ac01c11638c118a095c8eb0a2899723a8603a020940f0c236c50a6b1c3145053c98628515b774798a15530840075d74f183a8822a9ea3bce63bc062a1e4cccb4891410d9090524a2e9e208d91c529d4f8f16304922340a25b0006dac5166530d13260c21170080c305c795f13304c411484022ec090c37a1930a470e5e52130c2b8dd476913b0121a8c263a8a7a7ca10b2f2efcba820b1f55a50a173efc276230825e33b30423dcd8c4882554715f26cb07cc3f06c034de8369fc85e84064885eb273e3f0f5b8deb16eb8e96180eb4fdf7c364f6e98c6732014fc791d72aef2ae728885e1fb33e72c63741c570979af244b96215c059deb2628a5af0310c4843e6fe2c2874f5c4057324de61e898f64f26553e4ad60cde88b3c08035695806b1a0a56c187d27a0c65d40ec9753f685ed6392098061e918fe4d2e4d604ff8077886713015fc177d5a804378f3ad1382028c034f025c03db09865d13693ff40fbbfec08924add7a77fddcb824ef6e4fe7233d111e203d129d43b24a3ae7d1f9cebddf384de7217997d247e11379364f660e044202dc033ec65140d334fe316d112e024c13015741696f98660bb5e32addcd0dffc82e13192425bcf01b0aafd12efc0ec36d6c20ea29a2b486be907ed3fce3c66b58ca145e5cf837788d016eb411709503980692a8a829ce8142857eba50181815cafca75477a6837c741d04af7c80d66799ee31e662b8cabb5f696a28b67f7373c5024cc68d12a480b9d96dce48dffafe5898d9fa9529416a5c78bb7e4c1e135dc40516601ad6dda8d22b956aa93e148a0b37435e127ee58a18d68b462aa844806ec74545fc230afc83dfc3709f3de2fe8ade2b6a31346781dbd840d464f88f03f9137d05087f401670fe11af7fe5e27d403c2af792601affd7ef716b0108f217e5fae3f62b5ed3bd24ae7fe745178b639b4e0f596825c13fdc474ed40e158314950cef7aaeacafd464f9790e14847ec4913262ae53d04edc6e256e1719d1f54fe9b9bed745cfb9be975c6f5be96ed8ddbed9e6e5b7ed5f3817eec4b53027bf8d1c006ebd31bc865c53d3304b84074c8f44e798de9ff56c4ceffe769ea47280d14eeb5344894f8ee9e75bf51331f053edeaab6e8306f0fdb83ec805edbb0ac21befb3383f5cefba62952bbe224b00a215011983db69f7bdf758067b271ca6818f450c83539a40d16c209af202312e7c5ee24c5e80e58e5a53824070bb66c185d8d5fa18aff12b5c5882db6931de225ec34354a45cf811f01a1e170e89f707fe11593e9806ba658d50508b3c9b7901b6e12e038d0b8db8f051ef65207d8a71f6bd0208e03e9a2064b841407f2f88b782ff82702b73351b57d3b0ab7db38de9351357e22a47e22297fde3b4df38230778314e993bdfb7213150ca98c29ddae44e38a81d5b09a227035e733d7c245ed32179370ef14abc037238aa422524680fed4009403904e0cb4a9a0a24a88114728a9036601e5096e9b8e3c3e7aeeede0ebb084edcbdddfd3d7f1028cba47c50d25710ca911f1f89ce79f280ebe3774e0a064a8e121828392f86379729a81dea3ee6515d1e2ac2cf25c295cb434428a2b93c4404a1fb9e631b16942637e062053c4002969c67bb1e6d7446e5212238b9f0f9dbddbd901f9b894a65812256459124a62aa2ba331a0462cacc36505187e2ba4a747bc9c9897778fd7bd2a3f7fbdc776883b8e1e444f56901579d9ca87f8d01bf9fc26ea006ea7a32d8cf36e5c718b6dc743a1a7163034911babd15a97523d2c334dd2220eab780abfa7750752444f46c1a4649d450da10217a30ca16418ba0a7b374ad7dbf3bf19a0c889e9ec6e2351d17dd1ea6f9ab7159c07a0497c80e4c01f114104b73539e02e2968b885e3f8aa8892ad08d4696e7824386cec2e3f6d718e0f66f71fb3b6742c33f9886697c038269fae70c6a6b0dc56bb4fb415ed31ad308655d645750413816b0426447887f41bf1be8ad3c831ec6c5cca87d312c07bff0e9c76fa0ac81a493278548d78a42fde3e0e0436e43c4bff02af0ca25f26c68145ff95329d75f4a3ff1aa64217a556ecc4fed5d4812725593a8b8cdbd8b6252bb998512d12f5c259d5c355ce5e3ce2c4ce34f7292e53ab6a476f3ce592b0af5af52352a0833034aa8cdf9cd71b23ff69cd75f97ed1ccb8d516ea48232012a84ce275ff580852512635bb11ed4cb4ed6a23e089f42389ffb854f09425366924a4dca997ba5c1a8a73d9cebc87b11931806dd067b0c7baffd29066238a843b8ea3d5441a1f6f74f12847888f11f858a81cf592ee47cc4bce744c8c95b9d514f4e9c5c9f53e85da14c80cad355f09f9583042c2eb691eb5ed061d0550c73876b0c6191a0b63d626488cb83e4cdcb7646ae988e0583da16baaa0458f670f2c480bc3b194e9d0959664d2aca9a4050ab3717bfe19239b13c2bfdd00aff8891a3c27d900799c36f6585d7f220f9f25d8fdbdf62ea9beee6be6edef854a7bad8c77029ee0667834371305c8680dbb693a8266ac7dc64e0c5763d5c6ca76aa97396eaa6d1ec4a3fb990ebbac9601a7fd2772ad5e8fd63980c2a8c98ca1d8d9ef966341a7d64ddd1cd1d7d01d8e6e606fed13f1a8d5af7e6d974167825d4b5108f4105277cd7425d0b6971bb16aa28d4ab585d0b9161467d1fe4e2d40844acf96a87e44225f4618e104c2d475195dfa1fe4e9becafeb35b7a17f514ec657fe5951ddc1d5a09444af9e73ce2cfbfecb3f9c665c97c10c9b994fa742c8ccf9e0d4ea296b18b4d9d91b6fafe5a7a5d2de14792b9fa6b71aed70fd65536054ed5360d4aead7066d4b65194beb158a9a86eb5c27081c988283d4b275bb2456a95be1ad73596be5d85ddd991be59d656603782d1f02de5a485cdd6d592ad693b9455b5652624c78c30bbc930cbb8953d8e671964dd2e7b1e7ef81ca960a8742eb6443dea508d000000200863140020201008874402c17040224aaaaa3e14000b8f9c4676609cc95192c31832c818034400404400000044a4690321f7ccae0976302acd97d54fee32feb8a62d542d99d189e5df9f2883f747962f2bc4302c4390c228888e3d72ae68a76e5cd1a2b1b1acb0a923dada9b3b1647ec71fd7112ae02ecd33261489d1927f6e3fecde95f7ec896c6558b83dfbf712cd17c02a8bd32e1f095462e377843e7a2a173024cbdc766827e472683ad1b2cfa1da2fee90135339a0696380a0bd12542ac49f2df84e5291a503b8b76f972ee78678814282df7f037fb8095cb9839dd7dc80a9d843eeac112e17984d66e8ec68f7c8150bd988330c1e464af110cd3ee32ae342942c257e5e57035442299ccc6cee902120ce89431b224b908b85bb6e49ff8425db47d0487761090da72df0ca202f474d82db1576dac517a4cdc2543861eb2891a303f9fd699fbf4c1edbd18bdf671e3d9ef1b7fc5507ccfdec751928601877bd34e46671259cf73e11085189f23c79a9663cd8d5ac816623cf2ebe8a574b35d88a5d1f63788178dd8cad05acb665a19f75814d23b423798802e102887a80aeb2e96bdc09f75de5d0e1e4073948b8d1e4a0035e500ca238c1b77e69ed1d2100648384c3d53b6748cdd29f44d1699b3839bab97d96483fdca072c1d75a080ea1c9e614e59e588bed02bd16f5a3439aa4fd1b6247963ddc033f7fd2b05918065efcc8d399ead641144213d924ef3cbc210a890efcc6277247343e4fc2591e49638c121a639b81bede0ad0d51200e80fa0807bcf99807040b818a01a03e92458d9d3a434d096f009dbf4624cb693c2876de28fd801561941c02a873043c634b5e905091908787dc4a144314a0e7a3e99a8a08027feb8ceeea0e94805ff16c258b0c31fe8ad1f13f7d4df5fe58e6aea13444466c26f33a21502e4c43eccb9346b1542afd1ae43e9f67bad045e75a58a9b9e1f79182a194fbdfede23a57ef658604c886f6db743a6a9c1ca2a1f64f45ec7c30fed064be86c81cb28f2a786eb78526f6d56619250620edc2013ee0c0e879fb40b0e5159ef11c29a849ca98630c88a6a9734f66114f281a875d36a4e6b3ea4fc4d6244ac4a848e6568d96fb22c1849d262334af2b5cd8961c35366c78fd4869c663004d78ed44e3a0d5158c8b9e5baad1f95e21381e42870bcd12d1cf33c1819842dc19413fe806284096ad2a568ec2a1be4b667a18880851dae4eb13d6c0e22392f91cd6ecd32a73b9b1295601cf2cc91624631da18c128703d400af41c0f4b9df0f6eab702b1a51ff17c43090dafd296dc4140a073bfebdaa626269fdab5bf55ee015c9e9ab66279b9d9f62013dd0a19ff356c2f028d763ed39a4ab36488fa0b972f2412f5bc907603fc633d51d636d8541df9862840f7b33232ca849d07bcae2bc4fe4dc3a2a05bde666f102f5aa5a0bd9488cbc9b64dd4743b66a8010b8aafa5393d265575257ce4e4d64e319bc2356b4e91ec9e9b9c36a871fa3ec354a644771c5cea3f449481915f55fa20c0c25e2e9286e1b2ab347c025b0ebd52d2d193254dada49098d46f0ddfe6c15e1253c32fca19437c94c927e6d48172b4f086d7d94213aca296642bc0e7fc5027f72cc27d8c9221add97be184695b7f2bb0afe58fa2e0f1b642d0476720003c0a23fa1bf34e60ab769751cb9f2d43bfc82abb9510b5aba7eb582696834e4aa883817d9efde107634fa2c08723adc43067ec16e5dcf123bcf06e33ee4b1d88470108cb4e5b033d2ab0a05091628378701ec4b6a95b72face43fbb685604133a1b4601c8ec3617df01c6563daabde7b38a576838ae12bf20c0f222f902ca4c541f438bce9136a00f3b5480e989c057abbb3534dd0555d442a3520eec923ee19bb6181a0304a88be0e3a1c8045c7d00b2e6932dd336dc7afca2f6c18ef4742541a2abab94e4f9f48d5fd2927bfcaabf07f375c72dcf40f90df1247a91bfee08683e5d94177c641b0ddf328317eb6fcec9b6172df256e0866c67fbfeff03f6840b661776388167f8e0ca57d0e57a5671ca54e71e55a6fe0969b22a69792a2bfafef8c378cb530c53a2c46a837b0e40522a26588b081cc67437414f0f737703bcba1e32ee17ee34923e0001b5bc815006d74910ce97d01e3524b48635eb234978f8eea7b77baa94e48b8ba0f1a99721e9177829e015e27cb1d656a11bf14ae592fb3bc6d3f4c53e2cd0fe7fee28a0ca5bfa8a3a2e23480ff75167421adfa4b14fbc819b35f4f80730e9b103c9e5e4f64491f13e094e125f6f98c169072b8cb7084c5d61a32eb736a2c02b7f6ac7f98abf0d80acfce4c79cd20cbf4479471fd01a3f7cab945459f187c1f8a27a0f952ae08f0664bfc70260ead61db3fa37808e49864752379a84ba9302723cb43f918fa3727a97b0b1fb182766f80ee3fa84f9d40cb0d5623ba93cd73cb90d9195781c3ae11c8933a25fa3d9cca611ee090faa38df52c63cd78520e63fb23c889a95e116e46682e08040138c5b1048f73f20965d8fd35e5ac8620edc37b6faa06c0662504c9a6c0dcc3146537584eacf5111df556b47ada6631587ed18ea57b007f558b0e709701bbd7909683ea337e4c08a823b031d17cb4219891b6c3e1de4a92f797e29a4e500693759438672e3256104cb02a33f91453a52303f85c5a41421a52f3a53c221368c4ed91306b7401ce0d2770bfc0375ec0884c8567d1b2528a4fbc062504af4d8519765f7acd0079ac27f60d688d441c779bb0836c8019ee2aa0c53750b2a4acbe422cb65116f5a6aabeb308b660d46311e7eec916e7d8a6f8f3ea823ad57ec0f485c5739994bd250685d1b230163b9a30419d5520cd069ec0568be213171cba77ec9591e47a68b0f084c7787c895a6c902b340ce73790ac31bb28e2769e4f58339840b5c140f9d31d4216c09c99329d21b66dd46bace1a2616049c81d56610353c8df626367b47009764482c773a19f4ddbf52ab98affadbb66a043ea84bc0d3196106721ef7a0ee6c031c2628d46124a8f3bd87d6a051d40a06fee4c18f7702586c0f186dc7c7a3f53a5cef24c129fc85f6bc0cfc8a514fb6d9c83097b2a981b2d2e7061c69d8b25b0b21ccea53ed65ad1dbd3020b57a09c72280d25611dcef09f055f40a9efc1c8b5b40738b699ea0d95f1a1d0170b0fc88f12285709aff88d269195b74662a9a25209e69007aebcfe833cddda034c88c5c07a132041ff3359c09077e8a7dc4626f291ce2188e5922733c114b5af2e7a602cde0a1ad84e43f6b133755f499120663c1b49a73a79a617687202bfb8f71ddbda15a198da0722109407f9748773e830c99b8319ca2b2591271d651ff31d091d8b4beb1c0fcacbde0e896aa1a6b899521247a354dc75fc9c44139baf3eb48fd6ce5ae785cd849fbb4cc84db4a89651fc8d2c2f82feb1030100f65ef518643b4257a111b2c59d708bf203ec381655427f17436a8b3aa456c5180d723dfe8c0a76aa68a3d23e0da5ed2f963a33b2dad0a823f37b3ae606e666ff28a31d9bb0db671f77e1e0b2119d785dcab68c52df840acc7beb606322a9898ba8f5ba0652d454da580bc4ba681e2fb2459948dae4b9499b0242d20b569564cb25780243e1d69782dc887aaef0e0b56e3c5a40374d69d1ddaf9b3bec9ecdf738fb5d22e3456e7e5d5f97ad449cf6ce20152b61bc09542b15542d1540c2cd9661004bc8b9e8edfbc8b99233005d0caaa94b285375a77848cab5b71e925473bb4fa7ce2fd1693900a9d7c35c00267341924e36120341e5cc037477049522636834fccbbcb13946efbe655f7722850c13b9d667f23a28fb168f807f705299fcee988281fdf82607fc9b20b285134086ad35aecda296d8826fd001d1dd88624de39e8791a2aac1e6662311c0012a35a20659b06677f59ad60c5c8a673ab71a17fc705e0667a017aabceaeaf9cbaa4e7643024d7451269a712bf9a94463cd118ab9e4beae5f8e30c6d0bef50866c777bcb4b7e15edaa53df067a4b9af6af5132eeeb7a6982b81d21ee77ef47e04ddad29325862e7a2017fa3df2656e2a9672b0f69ddc3fcfda4b78e62ae3f4b89e9ab51b8ffc6a0c4e727508c371e7b03c7d9973c3bbc441881fe5947b5796b6687eed79759d780926c2a45ab7013a5cc65645d2198996b29f877a28d86456328a5ab711a2000f1ac240d271a50caaaa9ad58af78627bdf94cd0e52843f82be6615464e003e72b3caa625a43591fb3c89dfad4224b38ccf9d22130f8aa76423e16d7dab6cea416a14b429f27b27c694bcc57229d1fb04c90ba88d315115b087d7b50a1ec5d130f283da2a7866ce79d90f35a43f12a07e7c7922401f714de90b93e4910b5d5bc76c75123649ab7cafb44d2cbc5ee46d6a067752a310c9185c44bc329341edbb056525320ea8cfe701e471d6fc36b39dba059ed3b6ffc40594dd18f9e8a58e6625f26bf4ba9fc16fbb66d6133fdfa75296076d16939073232a5689011704bedd6506d8ecddafc1e8bbbb595007805ae465a6eb86a18eeb82ad2ea5db1e7ebbdfe471cd7d0709d7f19c952b0501d03ce20bc12f9373f16340a1078e3fbaba077dc1901d5a48a8dc5bb45b783668efdb847a19723828bd802b386b56bc957522ab18ff1ada8f0a8fff9a6abc22a2177b54f52d8e8537797d7276f2d643833e3661bf514108df471ec189b09c00524b2cfbce467b60d84a3341fc528bd0a54d74aa0a64b5a058e02f707fd88baa311d4d95e6c7a290ee7f464af9df5247fbcffbeed48ceb3cffce345d35d8ecc5f0a06041ff7beb2494a7eec704f627e79b674f081a322dfcb341e6efe7980845d6a5a2140dcb831278f8aa5b2206d8a43f04d2861032103a893eb5878251b80909653f29cac6a2e1903560c0ebddcbc71c93d997b798791c79c990288829c47ee6f220982735a65cc9139a1b7ce538c51079c597c3a38d42ab0339583d9cf810c4869261173b8758db92dc7ca599ee9c6368bd64a91d6f1202921127ff66471fe88534c92e49dd98871a2f8d0b3d09adaab6fec129ffd1ca99f773ad402ad3f6424cc8b5bbe723a9251bb8e22f410678012bb032210e28b7201f5f9c4624bf13edbd56f930ed666087d0cd4913b7b89551556569b509382b792bec0385665771790124716108e7c3eb72ee630366f42e9bd600ca4481181e508b1693009c859c001b0bb20aa05b63d1fe0aad0040933b3ff51e9e2bd1084ccb4d95b97df58956246eb68a8069e2f88db511f77fd977a967e5459bd344a75f745e5fcd23412987791f803b0814b105a3d0af7d35c4fd0185ebcc9f84786ef78132221869289eae7ec589c83c61b12b0218319f009a2c1dcd7420188af3d7690fe0d83bdca7b0e191225be76b90ec7f245b7906d67bafa42aca5ca2a1c16cdd4ecd25f6f49cd58bd5de9e4ad584998fe5c7696b08a66e0f5e9efba7b4240a316f6d5f72eab448ce4410e0c896dfaa2c9c02363fcf9e15b5e28a6ad79a043327f5bef93626b24e827f58a4bca59138bf784b1b1ec5ca27a2890256e398194bb08ca917730cf7a8177a51e32dbbd230e66fb6f0dc6f819ac3580bf3e65afdbf5f81551330bec6d2063a459100ee73ea9a6568cfad1f4b235bb987482fcbf798415a445a4eb139142974c1dc1402d7d44aad4bfa6149dc8ab7381f6e471af6360a055841be20da62411b78f95f60d3de3e2a6a72e5767820ef146b0e6d3d913f1f47aa2ba956ddd3a93e631731743fe44878d09ea9fe7bb0f4d3d32db26b59a5f44261d169c67996fb9312742d91033d9184bc8ba1eb3b04df915bd418880813e47bc4006a978b017c5dfa664c3747998664431ec96a58e45da6bd64b0ebaedcb5a93b75165f232164e176b1abd132695d0214eee2f80a4f658a73f125a67a75087eb2925c14a4de70fcc734560e24d886ae9e0d987639e84716e327f8981c263907771094069b02338fd281a735bf24299c675de2b6e118ed7d069b106c0378fe1b54c1f239c17ae49a6a05811a9b3ad10a95ad8a148526a2eec8e08b1a157cce344dcdd1bab02504b6d764952dc812817a5537f7698a28057e7eddeccfb6e1fa87792216b1f3a998078bca85948b0ec031acb90dcedd1eb8be18a4d0f65b591f59eb9a8597b88e2e7d0e94af00b2ffc730328a4cfb66187c5cd9de7cf52e450b6c606aae609f29917c6adf274a2f95ed12b346845ee869fc46916685cb03b6773d75d7fab4ea3c13158fe8b06bbde8f082c18c77864cf081df70e589dd60884a8f9cf55015760c05eac329279d281ac4e25830598231403c35e00133343b4f1e1323204800c0871a94d9ee51e5c895519e26822ba245d4aa0543e598f3b83ba1de650dce90026f69df421ab0583a407910288ac60ab78abb5d3c990815b18b211b540a3d9c4f58ffac6e230dc6396c07da5601230b4f487d0a87efe0414ed5d0c6de22b60abad9a30d287d4c9a20321de68fd0a304f430446464b8627dffddce650f0a459353ab79ce9aa43473ff5276789453379f4dc615c8ea442dde244b0737d2805f102e0c08e271f98b2a70c2c3ae772d71efe2419d83f1532e4527e3bd9012674224569bff780a6eb0444380e2eafb4a1c6867b147f69d10b3bad692637409ac25bb1db5e1d1a0354b96bf0d2995a95d50f9a6a194020ea860e5b981601f42f0d66a76fd34e9b7cb51f0d7189a21305161e7a3481530b6d30c11675975ea4ec97947327af8e05ce738e7576fe3530bafcd2125b682ce7ed236cd553f7d172e6212416b1ea8db11ace7c18d274616925e3a936dfd42d2c69927837b53087dd453cf211c6119d3b134070c40b1f01bd0a2c5173b06b2c95edda0501801e1cfb379e09793930feb0ab65f7c1e30f87d36ec810c5c87c84aa7c193e1a9f1cf5318cc395e29d51f695ffc0b120c9d167d09ec68f232241b496aa56885a79d56c34735ff8c9e58c033cf5defbcf44ce0fb7f3735022fde43fa9fe21f963e8679e630c6e11d947b0b0a13af7aa1549c790e4afecf5eb86ab74e237befd855906296a59a4bd883f2d7a907d0725d4bf21f60a5f793e42552088d084ec813300eeefdc44f87e5a6b4687863f351a6eec23d316df5c02118714ae0295ac297b986490d52ad732df8af50b7d9e741b3ae54aba1658f41926c4911a58427396ef372ebd7791b75ed10a87cf2158b687999fdbd73eb3cecfcfbff282c41ea5301a6ef1a2852dd96efb94b9e864752ed5216033895b10e18b021bb151c696e54099d76cb17da93e74d3f085402dad67866ecc8245b08b846826925906095106bc1b40768ef1aa2f39d9e9914c970ae6056812f10205ed9a3883f50444fc03fd9bc4520fa35304c4366c57db67d4af6b4d05232e2c9b956ca9ce0f77a4cd742e016f14c46c58283e7a23459bbbdfe12ac9822d62af6612e6ad2a712ad4482aa5f8a45089a384e2abea15a89a2f0abd20811d9d53683bb6f02305f204545002e9ee13adba216accad9ca9025c77a5f9da0774ebcfc477eea30a3b11d135216abf634af7132544117f3fc5056588055e36c25d1f24bd815c616f52a2db7c28730679d513c0204890d91220fb200d2640f808749ed2e8fe31583025a7c468c3b477574f971cedf8d33a22f4e91bc41e257c29a264a03c7738f8ae3fa701152f203b8a640cdd2c61c66e0ef38c362414ae57144428ae0bf6902f7af9d459bd64294a78df53847b68ebdccc76049cc265eb9875f653f1738ae6ba1b6b015eae75a00a321719f30947c7e6746e21d4e2d2ef14db422b1daa8544ba2e991f2485de348bb973721a550e61306e59bcb8dcae0b8c6190dac88d5cfe242671659173721fccbf6bbb23c30aaa50f82383eac923a0b8cb076ca819ab48f7b48dc3c6458937c254fc8314134b04560317e6f032e337908f63ba535b50e80a10b580ba1e062edf6a1dc876f25e562b2d3327c77cbeefb0672f2682e94e450711d9251740724d99df693061532ad59a90194d28bf195960b2ade0007e44811df02bb48e519d9c6980966e6a35998e6105ca18f5aa33e1f22e15dc6bcdcd4e10e783109b66f1dc0108207f4fe4d14ceebc6ccc93cd8d6ef52839f4422fe804f47b25cccdeef71885928ba8ad8e0572f6ef5850d9b7f5e6a3f0d7a907847212fd23c9bb984c972fcc48be2b0f4a5b3bd938d027753d88bbfff0158448b3e8a614a3d68f86d86f313e78537afd91a140deef94cd71a0951817f7983e83a0b930c59a1baab16645e63dc33c583cd0de64e02a07be9214448b91eadca463b531306e2124876520bc4b5e7072708b4e7ebb04b29be013f7f9feeb707ac9141f7cc0785715d6559cdf858854bb3522f7b506f342e6179d4030ea59cb4711dd4fc3cdeb64734bb16b56abaf4713aa87fc3b0fa5c05d9fc29b9e2b3a399b5c635b521184a4b476b05aca21ef57d9ec71742a7050e095a38459ef38f16a443bd5128b7dec70141c5ee853ec8d782f26349c07227528f00c96efebdff9a28674e975414c6a1b4c1a07e0de75253d1b521e57986e28c273e480afd7e65a0a0845b394f7f940b48fe3a1841abaf723b9289810f4ea457510c1d5b6fdbb6d5742d0fffc9adc0eb80918e8b58e662342d4820e13d3f3a7470bb8577e6f61d05e7443eb22093326a9f598fca44670f06a1b9a8463fde3a53509937184d2069980b3b282286fc97cfa6f1fda6fea06165660501d798a19a1835cf2d493c5f3c2727e4fb0866d1ac1284e506529c095c7f933e5d49224d56dc4a67d013052aa3e3f0277511f7c81c0fd2f52f6da10844638b31a84701f5f430e565bdd711080974406f15c34c74ebc4628b5e09ad55685f84504e0d27e08fd75be0b83c416f63a62b7270808f175118b0388f559f82a15b3441e51921582dc48f57443cfcc8c2087058291282f572299ea9d4bb70913567711c9da4d53b02adab4115f620058322947ac4d58f793f4cbf7bf66d490bc85a8940a88ae6e432eec0aaccb0e2791308e56acd4b046f62bcb0c8137eb3d401f919a0fd1b8de354cdab5214e4263ce8addd41becb42133c0daadb1a22d47ec1cdac862bf8e58c26e608a787739e23794abc912553e42eba900b1925fccda72aad3064542144fc2a607278a0fed2c591fa58114eac62aa7b86fa25ecc95ce86367840bdd76985fcc0bf8a80f987c6a014d7d9daa1fb901974d69230d647f20e64e6a4e0b794366eb07465f437d23a83540f373f1f8d02ac706f46f201e9fbf18d9a2283e203c88df98aed7e76d2e816aef33f69f6da9adc981188540623607e6bcc83c84074ea6be30b8273807dff24ef749d2de7aceb341450e289cafb38ebe6a066298b8e875520b720cb06094bfcb157fa88989dac0db0b288ba6e3f3ac7f356d92d83e6492ba74670419be0974d133faa0c45107496fc62ba9f862fbb8cebe7174e174098e0ad24daebcc55d9f3df21a7f08f8e23d79681137f1acb3fafa794cd58be28da0e3486cc1086a6f2fd4a49779b818b765d8b02e9f473925c9781abcd5454a68abcb60e555f6200e3624fc947a4b27d080e2cff4b6d2a86973c7c6be8de3adfb398f44991aea2f74d8cca2dce0e83bf19f5b4035330ef51622d1f4a1bde2895b3da2b02d1412e09a4c0874a5787c30e9717c54409e73040fa0509d6b990d7387a810a7aaf7a90ac480be4b426891966a1c8c53e9990a0daeb6a11402dbd9746beb4eb331ace48df10ee612fab1bc973fd31d5b580702a7e3ff6b7605cb6b2ef1db46a6dc7309b47d6307793089689bec2ec07077c4e20d071a2e7149652d386932ff3f16493cd3f7f07f54ff6c3a06d9540ae8e047e97740e7f17ca3bf21fc9adac09645463a64106bf9bf93dee3307f8457b729c41b2597299ce15f8da51c3029544f8afb82dd5d8b6ef7ef412de5e04e8fb9f0351ddb7c209b3906ca68903167541da37557320cf440eaf293c6f6f53b73be15de64ffd2fcb0f29b19106070574a13b585d0b5b43e051264809d94ba99ebf610954bc2ac87e463c6c08818e322799a18df25beb3eb0f0cc77e0bf370140cef2314717bc70e909d8d4032a6b11958c95580d863c81dcb25050d33e2aed476c7b900847934b1b1e22fd44c84a494a717b237855b4974ca975c11b01ad70b55c1365a3f65141b5c5c0b92ea693188e71137538be38776cd2bf5476be562a2d14ee490115708a5469788be1c5048084aa10608e885fc8b56f189f066fe5565032943a12ab490df73a731525b91297ff86390869bcd378db33abe222ea9a0b6474c9bf25391436df7e0d82a6ef2ef68408782abc33f2a16f95e7d40af4eae4a1c7695fa061cbc84eb5f6a2b1d9d5763688095031b936d5e26927c42aa410d463752a5e230833f505a45a97f28ddf701321ab1de233b4b0ec17cc51129e74561c1e26ac5ad5f7ab87edc68f6f2f4702922b0ff403507d64e0014ed9896a0154a2ad666bf1f6ac164e29a6a967da525c2c17deb774d738dace012d1fd9c6b0d3b2940e161f1ad4dc2640bea644a87b363248e142a44e09fe3aacf9dd69bd4e2cf9fa39d7fbc234785026b43db9ec1c42661815e15145e215f97d60819fcc20ed0d40b88681bb2d475630e073c3074132760883530f74c1babc0d6bec3935ffa89288208e01040f7dc06b1fa12c816939d2394bee9e8e6e9e639c0c3cf8fa7e3dbe96af97c92795d24f28885f8704c765acf983b752a94d014eacfd11a7d4bbf91ea6021fe468dc9ad6a38ff87d6dacaec7d7082176666d763b951631e798563adb8e82f784b0019ec8916872e71a018ff365cf9f9675646e1294ff21350aaf3f50c2f1d4cb2d7247647dc8c1dde4a98f1cd94311458d0c94eedbc7e118ec8a94ae7ea9fd9054aeaae97e790421a41d7fcdf0e0c86ef59fc7606a7998ddd7abfde7709445c7dc194f383542c6b35ab47514a001aadbba1a2f8354ccc1b7e75cff0a76b32f13a8f65d18b935f2aa56e4451de9fb87ca07f7707e124f1d7c932bf0dd4d40d96d55991c56eb68197fbb9ee7c1b8c11a475043663ae4c7a3bcb90eb616f121de1048049eb7fa3cce111351a27760737418ba4fc2ea310fb4be468ec688f003c091c086ac66fbd9e1b7ffd82818fb33db66bffe9f18ca64f960340e4fc4598fd2c026cbdd0153817aba8f4b26a69c25a640d9753ccced30c8480a2f43f89c71abcc5ab0ed07366ea99118a75afa32a40f0e2ec3b8d4270c5613337a03f20f73fd84cd6a8b9a52b7da9395c9cf3a6386b887cb51640c2ae62aa0d4a703cc343dafb4e88803bc63839bf04d263232defbbf8f50ab814c0fd2c0af5bf251a6503f930d9fcf69398f411966450ebff0efb04c57ac72f213808ea146ce623c2c4ada98ddc27537f2ec474ab0a556cea89dbfa6d6612a0f0e6a80310ee31bb2e06af8e4405827a0acc033a888c70b86725574ce8ecf341bb42e2adbeea965c344e5f4d54bb3b0ed4ee0ce935c06dcadba58be0e4bb1ec39f2060d05a2cd2b1f2acae4cf28be8c2158374395f31e61baca461c1224c47c280f4af64c906394f04ab6c2f275dc14ccf93140dc6b2b15f6912e0142318a641e8272c78605bbbec2548770956c05cfc1d984196e438e0af0a557083aff18504a13d695ae1de775899d830eb1c097962b750b179f7d224b48d76572852908c8d6fef6c58032cd4120ca8e1e05f8e3654304a46c9fb1326a8fcc0ce4e1df02d04bf5f3b0afe4ab7bef27e79e6433ee270541afca3c4b4bb32320dc8008a4bda51b9810ec64d50a65f70f99078105b8914f34f2463e6b267649421ed1076cb513c5032b3a54c4316c67249a013bf0d54d64a15f4b805b055c74cb95b282daaa01716659b61ad7a24d113b6ccda833ae01fb9c8da4c827802e2b99450ed44396144d1233c035fab06eda8a24213b0f512959d77a70c390e66a4f94729b146dfff5f1a71599c8a93f300fbb7ea82ba794cc30ce8d08f12fa52e02e85c0b3661832066076267c1772adc04413dae26aae1fc4f64298cc078429134056299ad6f62c7c93ab0e7501359001235c2682ed3c47624f40d78a0495b6fd4aebac0e6447ab77c726df604abc89576de71c04e7f50fb85a368b2c13f0c2403e288bf6d26cbeb8c37f0a50f481f09d7ded061f1fc5c9c976e250395321df19fd0dd57e0f7bcfb34452088c90a05016c129c5e10ab7426075f03c8e4139cd5ee8f548688f462f28d6dc61b74aa9966e810ab3717e0552685af8941ba0d9423c4fb23827ee2861222d3e10ccdc938281040fc29936004b0e7be4991949084b1af7d9f62ee6780c4c6733f1728bfdfe2d6fdc18df81bded244028340de522fa0ad9ab7cc05f6c3f6ecf77326d889d6ad4777f2a95224c06402258293e9a620e9a134beab58d41a6ea0b668ba33236ea24e6a48079db4a24cbe467194d5d033d45a9d4e382551a6864bacc73d7bc517cf56372a57f39e966e96a435e8e0b2255298e12b4953fe03c96e4d3090ae33f0dc0bbe24e6d127ca75d05e0636277665d7c1dcaf07582c22eee236665c9b048f574aafbd4799a1e3c85039d2c070193828f37a43884bbcd0150e8514881d7a6e00eb736851c5af652553216665db87503f5211678a734248ab8e726d977a35b63c862521fa295d2b48abf5ebe9f06cbb982ce91fc349f5665b5b1baf28201237274d1b9454ec03a6c8dfd08c29b2d7d6c7828046c111d5b5b1d591815d0d950db63726527d7d0d865a1b72c4ed73c6809829b207eda90501411c5a7521f23fbf44bde3a5f8961d9185312660ff5390681ae53ceaac5c3a8b2a4674d62ae32d5f90299d776d37184e0bf8065d09d4720e32fbf6c9f47b0934e7861551f2713a3546b628e33e3e19fbdd16b7ba10eefdc8508a268a49cc5dde9dc019d6268ccf54fd54799c408d84f4378c658e6af828466556c03cc423fe4c8de9beaff0b9e099542a7d634d433b587e90ba4a59f61e6a328e8d3f465530e6d03b5128ce6d73e390cd3f8432866a0d64745c9d0d5e12720aa715780a1a735cf25b5587e7ecc836744c14024503931f6a837a6518d0fe2b18b2f54bd17895701e06a7ed02743f1bbb59b7245b0b90951fbca800b1d02df65b6109e2169a9a9113ded7aff88d8a2f61637ce539b36077a5ffe8e0334c528fd1473f4d47d51a85961657beb4acf45f4193bad2150b40f61bc94a0af4cfe95f386648ca14a169aba6e24e8e1cf772e111d2f46c5350d5463748603fa51605577c4a47618b92ab1da3f2a057bca460520054df519632e6f120be6bf6ef7bad5453a7be06d580003cf8c2aa4ff73cdea67d4167875f9d903e8f6d98896e6b6e14e6b5a689cca2d356878f2466c9464279e168f228309b5b8b3a689ea89701df7a11f2296d976e7d16adb611dba3974b5664591e70ef021abbeb702e8a41cc0ee71e802dc4f676d893ca3680dacf202f26d71d1561339f3ef983e272e962b7658627959a156402021275de3a4252c010f2615d5559bd1b253c6871ae7770d1c34922e39f71319e48789f17229451e650ad1a74374a74848195a52a5c2605314d52dbaa0fa1508b77a15b31a62371755fa2d8c983c4881438a05c7625175fd27e63b1887876943dbd83391c5545f3a4b3a3ef575eace38d8c52ffc39c6ac5b7643257ad4700e367e6fff63bb0f7e75ad64ce962a258cf2396f7c4430037f1fc79e372253963b7c474142ae6c87130bc5c9e2abbd511d9c6a78da9ed2423df49847ac1c7c61d72106a5abec084552bf621973771a1e5d057f4be8ee55ff9936ad86572fc766a9150f58d6f37af290552e96595d44cc30b8a5f11f7f2cf15cd543ba275c6a7297719ca71cec6de9b9956376c88fc6e431210d04c115bff2178f2aa648146ce9cedda43e16d4f3456096b1d053ee3dd158fd40644e45b6f9671614c1fdb64ff0aa1facfc550350541cce691b8c9b46c06a60c70b22ccd9f89c2436a0f09aa5747054909ab6f0d264013c81600461f00c4253b08a955ee6bb411011017468a8db8d6dd34cc540021c15fc0be53bd1a119a8a88c831a8d1d45f9d8d4aa764eb6f2280f57f4931d198968050e812bb388d88a1e9bcce1bf3d5418964d68bb4a72d202760a6d017efbca4d28199484e494e726f35327cd6f5c967bc7d9f6a3d8d3b1cc1f9fe77bb5f7dad7d8627332422286c704eb63d2f3280a9081ac6ffcd3043b14e0669b5dfcc28e39f54639ce84915ae8dcab46a4a13cdabdaa57e4f17bc3ebb877ed44d9c0de617a3fa882c5e48fee72547da7634ca2622e5c874bbba9b3663ca26a70edf1af215f0bfcae243e0cd445c2cab3f62a9896b2a9022114e19ddaf8ff89508146a4d6a914242fa925243ab0960aaedc2a9f10e4d3f667f8a94947d9c50feceeefb76654072666412c33dd9c876d93ef9253072411bba90d97459fec90586a05af52cd9430c4a2745f932a549ee566beafc0dc3cb84676889f25dc5888f006fa7745ca71cb244570dfd77ae0a1f0583f57e1f50ae31daa83f7caf1e65b79717738fe9d16e15404977553381407105ea631a661fb512cfe7bf1846115483beb03d5193d780e056b275821acebacb5b685d875d00143a935485f531704f591580544aa264e0a7a0e2a7420151e63ec7541f0310426e8ba193d078a22d9cfdd771914a258acd015bc560c32625fc2ea432db309def3dc2bdba1cfd392cb8bdf1cc4ada76b9beaacaa5a9cd5b732161a32b2080ab55bc73618863a06f0cd247c98c212ec6a824898c07ab3c5bcf300e6935895e0ed89be46386801cf6c6b4f69238685430960651c9595cb9536415f6560af5b87d333bd215bdf73de833ea6cc20ac61055ad362b1a25096a87934695359ae658909ca91c1d497dfde50d29e018e39fa765d551a2fc8f87acc29f53803d265cdd03fe74b53f0764ecd10e8a209b1182d4a650243d24f7bb667506e5b07f1e858c64981152cefc43b5899a0c26a97857503a53f8956dc0d8281a6b896c1537ab747c9001853ea9367bbc88b152c71eb7a195c32b0c06262678b2d76c301914eaad4bcf46d9337ba82e607a92f86d0cd862f70df9558190a913e5ff079ba6339a6d755782cfa1afc68afc51e2aa1d847e1133a3b958a5bfc5fb99bedd3fa076dba16de26ddb92b967dd0d7e22fa0d1f96bb5b0a42863462fb0f345dad790228399090f1ff449878819b58baef567cd7c42875d1412cd13e5e849aed40e20c01d16808380e55c20b9c2305b5a6a29fbbce60e5f60dc23aceceebfd7d7e92e8bd285e371453b997d0517103f6943d2455b54d234c6b35c3624d4ab0cae229f477f81fad01fe957a433f103b0f4c482ad0055d0313bc21bb95b165efacf43c3c45adc1a657a8f139073052138761bfa819269fdbdbafe60dc4b185c8e1b958bf630b6adf61188a435994c874f76c00102c09598d43ccfe66a593921f9d146364720a709b9ca8b660135b9dba6e0768ce7d0d0273a51915946cccf6fdeb004b05c6f3a4f53b122407f73b8cec46713a9b189a05da9ce9e7403e840c8875ee4d0cec3bc470d783ebe3d456fb6a7173fbf78a0a6e90dc5f870cc761c549128f963c4a534aed711c31606ea8bcaa272a83c7b1aa205f2deec7017d1f9518718bccdd0ba62e30ecf26abb85b07321c42cf0fa776b6411eac171cc86228bbf8fc2c9d60e7aa4f3208a5a3a46517b3dd8dc9754a242289d33b64aa66f67532e9aaeac554d070cd6e7eb79cba264dc818d6357d534e4f543eaed18e3c4a52431c0bd075b12f6023c8c3d62ff920401030b3b651159ba131474897dfce001feae96a4fdce1da9076a57231605cc1bf8243b7f716a834826d0ba9037d047b40132b588871859ce6aa151909c41d22b1a2cfdbd0103674ab226a9085fc79469fa502ebf60f921061921304757115e5b14e322efbb9ad5561fb67460facb841be7b113e8fa8903c808fbabb416acfeedaab1fd8c811ab3739a8dc10fc0b35f74018833c87ede7ef2ece7fb6cf221b9723ba6b16734409068ddf33d414ca301c9add28f055ed3c39c9c3853e1b5abc8d235e67c499165b41c5e881e6b0dec3264cd59b0bdb9a2e050483620866e48d6452eeb31c42f7f7704fe76d0b08ade64fea01c2657c64c5cb50758217243b43345938cd32c096aa0448e13c7274dc2f0fbbba067a96ac4b7b133b3f5c25663f6436c8a4803b4c8ff9b56645e26533e1c79f14246b1a89fe62ee128ec46d6c54077df79dcec064c1c4dd799d7c66c217bb5f5e2cb57c851a9c48a329ddb7ee1e7b4109e5f9cd62cdafc8112fcbf8ac03a40b4ea7e98a5537720f1170d6b85fc960c29f0eb7483bc340de8e4c07a2550d78cdd85a4305777b7f834870145ca3a26e355d865df665935df690e172bb69a53c044deee2b57f607370f011ebe0b0f702bd9978524362c98cc886a69b21fe4c6cac5e10dd2ac9426d6432fd3cafff5363f03db17214bf46c7a971d2dc625102911cd21245c871a68acd3ebe199c2023e4118421da1856798213d2a6e14864a2f5d32b5d2f6360995ac2e3f03c164c25c8d4a0d054927efbf1d3bd4f2a62ff981b05e8f5d6c01a73985048618704c6734e4cb6720c49fbc33c378c2fd7767b4c639c07c3ba39e630e68978e7cda0c130ccce0c0eacc2a6ec64f678a568c0d165c43a90683a2180e8f90f76c42e5ad0a32327e5018438a507539087f74000495cb0d6de08f2878125498fe3fc8137f2779824279a22ed6fb9ae30a9674f21a60152ca69e6a52ea8ffd7c93f3c71342164ed1f9bb13acf1fd32f4449b112d85a0af7ff6c4e99e9e201dc162150cde919e53d655f7f52438f66456f659bb83b553747a92cf27fb63c7f8c2d0a6769ff0dbdf17c34fbc65c522cc84b4628953b1155205036b4f310014cfad405dd410703866174fe4977471a417f8da5e89e1643da186d3737e9dc0a625ce7d977cbd670cf14d4a3a3b4ca11ed628cf8c50f91e61f36640755b6023bea6988e4f8eef132edff624c52a1ddb3b3ee1898118c028cf1d12987eb3025b69e0f5eed6e28aec40a1c1c6e741812cff548a41418dc971180e771a2db861a80da90032581a7d51e85b76037a2f9a3825bae3563049189fd37588d0ab1b9d7bef7d5028ec50d6ee8e710dbb33a7508dbaad2b16a211a0bc768f1c872c23ea2312f53bb84f563ae2591d59f03fe18cbe6f68d5f48608db4727b2da78ed5e760a4143380f39793cd1e440cfa053e221bf07bf4bd43b5a3abb8777abb8df135b4df29ed91f2c59980065d55a1cca8ae57536f9ccbd99c927f22339ed570cff4c0b04f160761b8ba200a7083faba667ae09f0e4940dd1f53f0ea4dd136a62ac24239f63a50d184b84a1eae8edc3541979e29600808c7064c8fb3552d32a43d8f86bbca4b8676efd352a7beea388fd7f8c93e5a78b143019999b8ebd0a18a73501b6e8dc80cd23bede8c8da2bf647118b73412a1888e2a1f9f9ff70ce44f7a1cb3e2e8f398bc435666ebcd46bd35867eb19d3f297e575c2487c5160303412c0f9071beee304da1d0337edbed945a4555444bd8c4fc9ca7a69b939e30dce0202f8c69f82d42718a344910b13af0422222eac8eb1bd9212d5f18a13fa811f7c545226b3a441581ed068325667204ac939e738279b1aae17eec43f5cae504807fa2b12040999fbc705cfbead3ba9e49f6a66ca4e43e6dc94afd885a4fd11571aa09ab30c0821f9fc9ccc9984d0dd13a319b3da38e63c87e6136a6a043cfd3df1e1b814f5cad301b347069c9b8911bc5d7075a6671c6b5052c4c162c4632882a274fd1e335994df5a37e4a90f331105eb3490ca7659808a800b20d4ee9cdd053ec1c175fbeda0383470fdd080a80e663303eeb797d78c15b68b3665549ec08a18388da0558304aafaaab0964d43a47d272dd995a6ad61b82e8e02e16f3f56bd223f914751243f373063f4411e94a2e2b8741070b9ab3ae59b9f485a4057d296b83468e8ae52640e350ee54d64b8cb27799fe6411d51a8e8729ef9f548d54178f14b0487e6416baa17c599de6f9ee40871aaaacbcaf36dba430f415f8f2e1301c14f021c1ab29a5bbaba761b6ee569c496ff933ac80ba2a5e937c82ec1b4df27f72ef86cd28bb56bce54442a9333964d09ac896dc5342958a034aa5b58b3b5385ce6555182a92ec71774990baa707c937c14ba6d5e92844a243ce43b71fea255ca771b85c72b34006ce2a27b826d66562bb63c47e69442300c384b78a416c5df12cd84dbe903d06df52c54b02e831d2ae7184b750f2d1aaf42ff44746dd1784632d61f1ce990ee75f8fb82ea30f2abde331ae5fed4c82a9b65d1db5d3be361a1361194508919dc0893540c408a8e97380a6e8a70f8d06008bbd7af52798c01bd90cd39de4e6e3306922c88faedd7435a8e55ad9237c99b14df3ca2161715117e505e9358f383ea799a8019597d4bb8d77677c0305478e37b2857670cbe5a46c90cdc24f46e505e94ea6f9135cfd84ea566a1c3fd29d1fbdac5258b36a5fa594d79a509c7c9c57af52df5382dcd5e6500e0181dc691eed303832b0a910ca053dd1658246d15e02eeb28866e557a6e9c3f27073951caccb972f77b690424f40271d2fce51dc5255b6478f6d0fd1cff5eb0f170d9956109acbd17677831cdc3f2ef2ed9edd1f938713ef4e6c4e2db9641b9c836e1f2d7d2d519e69b9e42f5b192a9ded5bce1690183e3fecaac80670e3a16e1ab64e695c2ce2738d623dab0801c50af74405252d1130209a292805849b0c7559fb659cc4a2819244427b20d537fcf390a78669954bfc59419f320bfc454ee794c0aa052a1ab1d44a4a7ba11bf699e241a24dff005d2b70bbba386c9c1abaf95133504c6747ac0de07124c866e892ea02962bf745f689410125025f542d6ad8349baaff1ae14213b5dd05d526723c20e50c202ce75c8cb0d98fce807452c9df43a29ef9a75d200db8e23144a26ef18f4f47d6b467a05b54062dc8de548424ede0bf6af4fd5a8d3c7a7a1f49e4ea257ef56a038b36567f2b1c0042eee4190ee4ca5df427c360e5b781b56ceb176d233e95a4c77adcc8d66fea14fdb0bc402a271a07dbabb52f852cbb5a1e1bc0a1a30aee332651bf75ae12fbef6b9a6ddcfb749ff309b167fff5886a1ee9ee01ea41ddc6188b440f8aeb5d5761a2b13a72d40ea9212d807bf81464ddf4a264ca4e56b795b1cd4480ad9416d8b7b011bb7fde01b8129d2ff1cb9171e1d630876fcdfb057e4410f7565a5bcf310bd5402f23ae5164d2aabab1897460b1d513254fe81d8612928ba26eef60abc155aa35fca88da163a9c08e3a76b0f141d1564828e42d30eb94bc053237fd582df3f482d3a70385571b44f6d068b41f5c29b7140b1ce61b9673a70cf5f6699e5fc91f163795d0c8a1f827ffa5395af9025b6b402e28d9f79a4144274f767d202aa67d47ecbe9ec073f684f5ad4db3480e42eb06284a6e60aa517d8d745b0b6a97bb9025278584cf26f130075d4b50c728329308fc07d7cf943b51d90d7f19ccc7dc67dd4d4093860cb700e15c976ec73763c561b9127c05d25762c6e774cc013ff0b07b7a92ed5152abc564a43c3fbd29eb6c8201ab373721afb52c9570294efd878a13bed727bd33a030c12bd150c7997bf383ca3b6647c86f1a714af178e1204554bb5d175e8f2bb82b29bc86687b4c2169d70ab533168bfd639fdfc8e5e586a7620972857c68f412eedfda43043001e321ce7172d97d8f323272e8cd74400219f4da23637b3880ae5dfdd0fb39bb1637985cd2da8dd270853333ba996d2210ee25b9ab0b7d5d0766d828078632fe556709691dc2a6112a0c41ba00ab2154dd22c9f8312daf67d1f94551722315cf23a64a2741582bfd3733bf4b96929bd8793ed1cb2eea3fca53c972fb43801a0ed60bd998b030e800ea339b431f5810402081e294567d3dab51efa91613cb9787aed9ed2b892f49cbd25cfff81a8a3875933aecaccec1d1d2304d876dbd3e1a2a3cda669e847d6a703d7ab122485b45a87867740bf6fdbf3f019b3ce067aa78eddd66b164f43884da2a98816f4cd732ee03a81511f08dd65be4e1ead5686d480bc7df941c20914086a99bf79a89dd7dc0a41c88e450ce57ea23b743ed2c7c6096598e85d77813ef5fa1bd719a7d8175c241bb2e7061dc383a7873f81e59017796b9754e0fe0c493db43515bd861a71fc28e58becbb1c56628abea6f8f81b3c0e2347d811aea75b78e9d3842071b0ad562c712907c431bbf44a3bfc02757cde35310af9cfb743260845f1ab538ec379d757f0401335a3c2ab50df98c7464e5d71b19b17fc9ce60caa9334f18c8a4cb1b9faa91cd92a6a74aac133db115c0bfc4bff453056e5958118abea33ea27396f779eed95c5be483ebfda98bf74dd3006b0a267d3095df9dc29efd589224aa3b50b11bc0c9621708dae0c6e6aa1a51e83b3cc60624fc9809e65b5e1d444955ee427ba1741f452e3dec62c7b4618997b0da3c96630935b371832252595404ff420a0e10809c0c02445138c180a2963a9308c50c4a2731c9b4b2152aa332276da4f58522d7b01b1ea4e36a86431825fce184f62d50d1f943f42b18cfe2da0b32324b102bdd58b433a90f27e7b235550d4811d61c2cd9e12953b702a5df6b119703c5796e73aedf223b112c906d6c7d88234235a344cf2e806e2e3166261fd7e0dc66b939b18cd5d1d57a74790902864f01c0dc823151a692aa47acea45698d81ea5ce0b2836118457d0e66ea40422230c27869ecf7be30378be63179de22783b6b913c94fc9b83138600c2c11bd2283f5b1c6162cf5f8fd38136bd3ce5ce119257096419a52a53ff8efbcff705f4d93bb496ec684da227d73db5eb2aafc379581dcbce01cb916c07d981628644dff7e6c3e698426c706e2dffeb80535ea0a62d16c348d07ff102791a93c5124719764a0cb36d276ea1c44fd95ef6dafa1098be68f0731780be1267a4629bb5dbce955e45bc946edb0fc8bad85be8ba5a614ca11ce5062a5fd91d84e58bad89f2dc638d07671af859b53b16a610812014b7d9f48ef76601833e1f6ff00e224cf0038f26b8eec09f5a63c8767ef823ca80f49e3d234cc8cccdb3af4cfa220bbde75adda67157c29541b97dd853cb32fd2d7d61bdb9ec333c736f731f869b198c6a54f541502e7c4662e55f1b42ea3f7fd2aa434c6ddf0bec849b0b2558d6b434bb077672af0396b9cc35e4ea24fadae195fce64ed9d6af10b57784eb239ee43fe0fb71a040ec5163140ae6a19fb3939e3b1b19a165cebebefffa7edf7fa985a7193d46dea829ed36dfbd357c198caf263ba66a3484f91095b797912b1a108de5f5bbb2ee3d6511e6476c8356fbc9e462a12198c4c12564a79f203ac42b3cb0be5d0a589f5e7d94dd7f23d333afdc0ff3b5c9c1acbb169e3364f6109275522daea8558c59b8976a67febf6d4008815d3dd50cc571d53b0d8e6441b9ccaf43c7023b9348fa7a35c75dc8597d0763d9f1a945e6febc205fa2c6faff22def4cd45127da80605cd03bfe58e7f6a62ce9464456c4d83bcd6b045dfe4d168c0b1a8416aa5d695ef2916deb49a605eecc70ab3de70f8ac24f930c1daeea6b8c9d7fe4738161afd4c6e2795cc044c295fc26415b529651c2b08511f4543d1eda7adaf33bc4e7f917ccfb9c268a06845a452fdcd928d090462350390ddfaa03b3f2e4e2f4b92715db1d03bb2fe4bc675b6024553c3f9ee704e1123e5678890b110e7bdaacf104a91859c56af5dedb5636ecfd8a7c2b3ff8eb4564fb9ef738675ac110f1e091888772ad8bb307273c2c41375617f6566025d89ffe4766c909b43be57378d3a4d908617f53bfa78f618e0ae6eec7d34d89dc4e86d8147fd831f45c8f2320843e59db113833d5da821d47ffa3d3974caf32e3345a096c37db8226362ec2afe7f759dfa070f9665dc3026a7d7cb3d21976f38ac739a04690b768c0b6ce45b802441291d0042e950b19678f9476269b66c9ca45540ffee0a7bc876d366600037a35be9d0b3232b63484c0c388cf1f9d5c2493383ae0a1d73c8d809188acf5365f05a30ced8a43acd7bf0a2f291a76e935ae3eeb94d02969f0883ed1243e29814df16fa2090fea57b4ef92cb3350b5f4cb16536e7d60bb857f41b476f8e81e71e007617a5649d7dbead0dc6e70410431b8d0a8d1c83e339d9b47f666f1b7f26f073c3781809608b9696e91955c8dc28ca72aa19c96c4d14122e1438d1ea23a48f0c58b09fdc87260ec4109a1a16fb3c49bd0b34ecd0283dd8a78d21e3a94aa277fe9182811971c474820011a8463e58cd8443db798c55a4af9147772eef75956e6245607378989e38160018a0b1c6e31c32937b761ed4d401d70024b84ca01d712e09515042c45e11424bc503eb1c347688f412cc1fa45751039b2bd6285a8ff9d5d30ded1b3c84ee70473b5336290be617ad9105534f49daa4c8f05623f918bbb762eb097ce0798530c896ac10d18f6257e48a306beb2908a6d3a7775ea334053e74f011a05c20342a0ae8f34209d9496a7f8e7a932fc6c9bd484abd280df2d52f7c82b01a60d66a3b616bd25e8a647d425383010ab1332b27841f0941a39dcee7eca10736de4b53cca8b12873e64d91472adbc67bfeb281690208371f4467edd7a0716c895f03edd66b52b6bcd4d60e8578255401bb34fe0646697fd597a029b59c7c13c4f7a087cf13cacdfa65e6a5f8848f24d8432f258878dd7be8095ddc298aed6afaa25fba123ee5f92211a65ba6214a12805f2f41824c2fbd3da36c68bc2b7b235c5823945d1314cda34a50afe54338671be2b14e0551bf8d64a06a3625e71364f006e053b3fee14fe48272ce234d8f961bb9138ea0ff221f1b40117d67b1e2a4ffb7964d5a6e793e67eb6220d3cec44af7459bccac5e0b0880165f288aa23b287c0984004a8e87418d81e30a74d0c18012487d83777803399c3173ffb9547d6bd1efcea70bff990c05790a5e4d7b5f675aaa7862f59ad987f6b8a89f93de61a7bd6d8f9c893f1b9e0e8cee3394e668d5c2e35db0277706fbf543de63d8f346147b60dcddb9503ae6062d8295361c8779147ce5df47b46bd9aab709b11ded14961f124ed19473d0ea89935aed42478a16c0f9890e7aaf6220ae85d8be98db63f5004c86c20dfa2355000811a8edfbc96a9d443511f4029d74c7e1805a9168d41e0936a710675d08182ecd31c9d3606c6e7650b2857e0ee1bfe747639ec42ead2dbad4b3a156a7c1dda1ce313db7dfe659e72c4c335f083e2f80dd081022fd4a8bce29ccde9be42dfa05be27ab54b27e51548266dd5b8878aecc24181fe621556890ee18a449f360d949afd15d3146341028eb2a3c1bd61bb35008d369dad89de362a935a757f24292b8a130bc36e9126337b86c2acd2b40b5fcf9fe7873aee6312379c9bf5c336699ed999a5ac6a4c2782592ec194e883f0238c997796ab01ebb7ba751f2f34e1d0ad674980dfaa98b41460cfe8f74ebd142f4a1cd3e5f2754957126792fbd0d5e3ea79da43bd60c5db83efb2ffad441fe0294820ee80f7dd06580dfc9cbb01b671fe0276ca20f901fe70723f39346c167963077fe38e0270b76556df98e10d5502dbe5b1c67003b483880d1ece3c2c1c4f8ca1e296e751f7b235268eb7d84d9e5f86c3fdfccd0edab0860443a19007310c5754d512a73e0bb06e56f1b04ba51c897122b93d20255d0618effed230cba90eea2831ad9941360c9069f6fb98d1e2b69aa01100c72138fcd4a90060f38347a087bec5b802b6d581c06db75f2abd4c0a92dead61b532eb6b8ef4a7bb5f1aa24dff3a82ddd051dcc1ba7c7154389945d8f52925811bc129fbbe82710b6c58089a6d4c09324a53b9b675d2e893edd4575a6d5e6fa84374263c69103726983bb926a74a80974bb63928af439ecc3a8c8d6341107d8abc24383c11fc3162ec0e6b7b620e54da121bab4a691a1233e43d95fb1ea72bd295384e232dcc6d700f665cbe6618b5188232041ecebe170791e641f4d02a5b0d2b2eb88ef5c41ad07c5874257058c75335e87bc91b926305dbc01b6b0171147f905b0e8bd0f8dd5e33e50e7ba3ea9148c4a803538098eb901c18729b4eb107118d754d6118b7ce4797bf792fcf6ec53e90e4781a274ef6011306a95c30ad69a9dffefe3870ebd747dc31c2d9fc0254c2dba38db7f8816a78d676e1762f0c2db5d52738737cfd97080849293bda7aa91abe5b47940bc7e3c31805a2f1668180e321cd7d6842eacbd6c84ed529c681b02c5b4a1a1127dae9ec2f68f65727ec362d24b949a1a6e1d6fb0ea78b9814b8b070c85fa17d1970a9bdb8ceb9e1aeb5dac9b764380337536a9dfb5a5b6ad12698b2e56b7c5244294ecef4fe576322b5859347c615a76970206936505796dd1136701ff82a9d6dac3c60da42080d39d50b3410324093ac96f90e601ad8cd9c6c352a4b29afd2c3e662bf17ac437283c4f2d1c8f1f0edc0d28214581204fd8d4a1fc69057e7aa5a51ec57f6b4b37131ef9d9e8045a88dfee2b8ddfef52d87feeb39587a5370c37a56d389a8c9d7072d0e0b56ecda03b7ca8350f9d341b803728b27e799648d0d79da9ad408184838b6e395f20df24015eb22b9d220a531610d06cf68793bf756fa95ac3eb011e863659828ee45e209272208332a8b30cf7310679c4ac14a4379975c9bc7255647c3e5468f339a8ac5086154096ad0ebb0c8ac65a0e3f0b2814ae8cb6211df7bcff7bbee8ee655005b23afe6afdbe6dfa80f105dc9515427aca99e5f8f66c0078361d04379e3d0791eed86528d477d65692c09c4dda50d1165702323990c6a91ec9f17db28f62ce661489eb1627ac61dd8ef4c8a992d67da4f44de5373715689d5efccf58e6044447105bc8570f8b4f6a12abe9c0b5b28c813b7313b66748fdc4186b85e75e4acc50921207c04187ccd19953388ab03851b6fa49417cff35837e98c62b4720b71c9bdaa345246f097ad045ea532f3b1524c73ee076fdee9adb56e5cbcc045eaaaf635acdd85f94ed51c6117aa105a6aea7e8552614140680dc116fa2c0d4ff78e6e7d73e1d33623c945ada2b714549f54749921cfe4dd96020bd317bdb4d2fe3adc712322cc8efb38d705b06150ae2d5cc862d54ffc6d665526d916a48637cbd727aef16685567ed2da77450c0333b4aaa42a0cfb0137e11f06e687837d877fa263e64cbaea6df38461282e78b345d4652e3c5112cbe15bca04f823881c234648ddb0d2a0f5b13e757c0eae48c5e408298429529d112dadf1349aa932c2172ee6e5ea070c0c5684851a4913e906a89af99082614349feccdd5fd0b22e6de52605c64215c8160abb3eee5929e122f27345e00091399fc98e8f93888ba7ed92807ccb14c679437e9d1cc4d9865b1c2c575d0957797a1c2137834d515d2525db7448bf99b30dd1d9d338b0f548977a222963cf82ed8088540c2fd122a41bc0ab16d4d1e74f052c79ef064a734965daba39f2ccdab92c171059db4c6c75f42ba079071a7494eda5f4d63bac8ef4ee7b30a9ba320078585f7614e6a9ade5c35d832f9353a2581b0f820220b34e2bf03bfecbb335293743525a36ce355c9dcc7eda9333a5d254e07e39d8d357d6a03df188ce47a4cc86a61ca871c150a5ef95625ed68520f1dc3c6b5738cfa795c633a5255053217ff5931c1880fbd4ef584fb996ac5ee84c837c3f4b09e2afa3bc778f3cf5d1285761a634d3824ae786ba2c4bf6177202c8958135734e576b5baf20734acc5cdda68e10497d92f3215c2fcc4169e107b1910ba817f3b0d9b3e412ce30881c80212c53a7aed63a8ff84deaf0408c210b50412ebdaa147a5cfd3ba59396a15ca175a9ea58a386845fa2882281cab59c76cddf5bad9682b88457ef28f17f4a40124504e68d062d5125a54092c5a4b420a7b619dea4e3e34cb75eac6af1b60e6b99c700fd6858552b484a181926df48a79ad941da58a66d12a92082fc5a19de7c4174d03192358b0338105dea3616cb651ed15fdbf96eccbeb90ec9601c36510ccb9f840e08867fe1e5ea49a04b3648c61a9deab76f8d6e5ae9e0f9baf4761aae4eb76ae8a19fdb78ab955546272e0796afb85186b8708bdf13cab03e3339eb0852408d55e0045b50145ecc024bd597389f2255a9bf0e0fc1750784dac4f8f5368e0400558c278a96a21477b2551c966c80d56dd383dd0806d15182be01bcc30fa48699dfb7bbed32a401bc9639cec0fe7caaa2b7b11ebee474325c190c341dbac646c24d0fd6816ce0b640c3a1e1e4adcf594f140e6d22b51ec6d284cb17baa2ea5622fd4c528c80b1062a7b0fa413a5a04a0015ee59522f51b1fcf8dd2e0678a04242ee808b6939d4b2196112913541dfc3ab1b5e5a03a3870b5538bbbca7a9322579f1847e684409c611fa65d8d64e443601219c3954afbe63035d75a9f41fe930a5e5ec5c6779d5d3dc61911bed2e1a915ec12d79fe0af29bbeef49939287fe81d224ca13e881279a00482e404b09c5c69d79fe66a8ba5c91d8d62a3a5e5d945b9aad32a0c3592b664caee6a15ec2301271a697bf30af08622f3cdefa2e6b45180f8b443f6d6ca4125be2fb0ec6455bfcb9bdea6aa5d8e9ed0edbdd84943e47ed11502074e1b6ab079e82352754b988c21d71dd39407a5b556dca2014d5b85f9ab74e1a167c1821f14fdd43041d3e5870b13d021b089ad4cac1427242683465314360e77560f717f4f40e6e3e94656e0d321143f506c48cb8ac9f6e6a746a4b203e74ba3ad08fda6dddc97c1678c6b5f509216946a59f60016a090dcf5f9553da92ac1da1353f145583441f69d6beb7cee41fc5b80dac36513aee2c8e1008ac3702fee6b8b3ba19a19ca7a7891458575bea321919c91ceb2c2176321e6cd706ac20964d7d5e49ddcef76f5ed739a7adc960e49b9df0634877b47c7992b351938608963993f2735e0a5947c30d268e0e06154f25cb5951c064fc1b4933916ed84dd02134a53a16fb12461c1238f89b51215836a661cc7106c88e8e0cac675e156c64ae6bab494d1790b1c00bee2e084f95535fd7845cbd02cb8882f606a55697690df82eb284214ad23caa428ca2bb859740a4245bd5a43302b006be244fb62013ce3cbae9489317a560045eb2058f164c962f87ff245cf38ee636f34ab6630ca3810f7c5924531618895d71e8a2075a4c9736228ed338635b98f95bb77f89a4505b0a473d96a653e2107227a20a5b8d8010f9a0c83b268c159d6a80582193641ce7cc57c230e862ea54c1de9017eb222fbd1a2d7f24e6dc25fc61ffb12437b49d75442f9ee5320754cd40035425b07d7050d548f2513610acd65bbf504a07d2447b1d20f48776ef988721132d1b9f6d1de79a59803cf8700f987649a58785ea24e9552aefa1dbfcaca5af3fe718552f168b535b698fd0bab2e33ec483578cb467fb54589d2b2562c266ec375eddc6681645e632ffd242eca479e9fc4f05a0a308262d7f27b8150e0b7049160277acd14343d01e621a604720bd0fa889c77ca714ec3e849153e1969a91cadd35c5a0cb1bec3a4f9e508f4f60c7c2c67d2beaa30f32d992d6639644aba22b062961f3b66c902a4288849f365d45b1dbb1324333ab84c1b15b50acffd9d56641fc41ea4c9cc2175c56b9461ad255c23e62be7cd074419e6c9591ac8173aa08727e0f9fdabd6ee3f99882bdb44daece702f2e0d3e80b1aaa1831881a673adcb37d455ab3dddc5edf5796a2d6780175d9991c0efecb4b264bbc5d608114e06de9b549ac2535f50f176e083016e468d339a81f05aad73d19e3f8899b04d4b25942c193815971d2e365913a28fc7034bad91e25be8e43022acb9d4f9667646e5b052176d34faff7fc7936b624ee4f4bd56b3387e6b88d673b14709b1b323556132b70552b3bd3cfea302c9a4de8fa69b22e77e936af36e1a8b9a0399083a36a441a625018364b881b4846d0d9fad774ab3b2f0cc82b0d8c4c15aad1b676a21cbe101b079bef62463d90444a9984dc8ca18d7ace29fc7cd042a13adc21a4db9ec3ceb19900127346c818321e36415a7bc084b284ad3a2d3687b0efeff9f3b1a6f7a3a424c474689e0b3c38f36f28d06efd16087f870c2229d9030211bfa2dd7a08ceb43f4def580df6e343955fdd019027ae0ee95028383335a20b93d92ae7f7e0b241b4580eea6a9ca77f905a02d5abf2f43cf0d9c597bfda0ccb580a56a5a8ace0820e676b087d131c56e8c36c209531b0ae443d60f5f99fbca600e04cd751773b20f385d5071d30e84833ea834293eb6f0bd621f909cf9b4a54add698dd86ca57d150b01640b19989116080ae13d2f923d6866b19e8a96aa42f05beafc8f76741f5729bbf9160d08a6010a7728b703e557ed3fae1a42592a440634620d9a1c6ee66ef08e9fe77619ed21f611093af3114368140ca2ec940fec1bde8620fe85051bb013cd4be2267286126c6b8a3a5ea05d54f9cbb448b211348d632a514bf44c25bafb565e13efd242b92f89561ec2be46b5198fe1b47127d561f416909aa6ae70cd97cb865f1ce8f202d93f093ad7e38fa64aff89e87e434167e7f363b0c5f1cc877246fdb3cfa562c83422c08d972c32bc803aad2ed5b3c1769aa238df30d5d6860e0ed5afb6c4fe8147bce3d11c1645481096ca2fa603da53863da502112fe6259a8362ad89c0fe343dbce218b7c2524e593522095620c40776bb9eb712edd7b9347034f6fa13cdd78c19fb0794f14094d794326c0ff041a6780454c056058fd65feefba1823bf84c24da28b91f5ada4b81043437a819654344d55da4d72ddb5739cc6a66860f8daa9564774b2684b9f2d276bb8a7b0e9043241ae54611faed626416866d8337940c64fdb9f0a8a12874405e1be5472c1bbaf3f9c345a3cedcca3d83e567f20e0109a9f84307e82eec4fd137ceb04b14cf8247ea0610a73c6e80800bbc26dce00bf313eff5564173aa05b3c101e94a6cafcf3b6cfc52242b65d85db951e25f206f3bb00b322f45ed26961ada927fcae54803dd4514dd424dd1188d514366b4a980dd2b4a3ce1fb78eecc06701c220527d9e49a1b07230a091d1bbf6aa6bdf11634c2eb85b00f7795df526c2d3e8a12c40be33b070163348c397361e51d8ad2924a0e0cf6f873ed74a6dd601cc652ef6d5b0e120312c1ff8fdc76223c8ec5ca5524b8d66cf991ff5278cb6d2f1661ccd0e00f008ae48f55176035f4ad712b5f427fb4b43c931b8ef0063821a1c9f3ea319583b4730682c66b52d114e3631996dcce9372928ed4fde67953024a941929ea0f3ebf278ed98182eb5c0116b1210e7ed610a8894be9f57ce6f1e1e038a81ff53db854025b551376c93a1c9888ed10408616cbb6a81a3adceb6c2c2368cfb4b54e278edf2a29222e4310b59fd58cd266d420a2510d3d461a65f3bce09b243e021476f928509122d9dee692e426987547ab13632337c8faea2ac3bf885f3f54d75f48daa9db726c4b41836fa9442ad8aa7ad4caf1f9ec3cecde98994e88213cddba1aa24ab7aa7bcb064b413ebcdd925303962e9c5e7cbad0ec7a89ce0ded2c36be15effcf8a71b2cbd7d4ccee2f7ccf2da237c655de7409cd8424cc018e750ea61f44ba56f73afb49935c99c8f67950c05167da6104de81190ed1448cd571165bb2b464aa26cff4d81c571c3a8326c43837bf44d2ded1aedd4c0045e15b4785327ceaa86bf73c4c9fa2c158f4873c3e104413c599b93b9bb7527367b5032d573f752aca849fb1100fe14e5c2f8a99331e872ddb495e822ae991769e198ad5c051d458e93efce8466a0f8046a22673fd88e0ac23b1d88ee7cc28622dd764763d421645081f1b59741165855a6c3626ca3d496cb37f4485d08e81ec1f6247c85d1f2daf1f7fbe91ac96da46f2f1f0ea422a96051c165125e3d9bc988aba3eb7e1afd57e12d2108f14443b185f568c4e1b4f89b06414745ba4d43b5535850f35dc1ab68f9489ee5a9a87e8f752f057a895988f1a42489b5dedcd6579239186cfbbe1cb1ac64710c6eda1b27d0c33d7635a7a2485e830a6139ea1e053d853358e26b82e28f3284c2ce20d7c56634ac373f5a2c8c3a5b294b1aa936d1538ee4f7b67fa7948cd3e1a9b5f78944f33b856611ec3a520e1c191b765eb50a63e0658c207a0f3d0ef2246a82f904119062df24387f7f879497e7edc34d2dbae43d6e376e628e7bd593643b63a083c927d3385e4e186ccec044059eacd11489db266ea181b14877c8b8bccc8987cc0b94d154142d998693aa92cf096058def4078ee143c9c123c61ed40a71697a9614a103d59ef54b65357390914716662230bd2f542a8d1c3ff2fdd732f209f029198bc2de5d3376970d01180b5b1fb92b2536922eda37bd1ad026592290773660a918a8e489e791dceb4b313508c551839b7bb0436ec40d02458bc38845af385a1fdf6214a34fa82037ce56aa60315639809ae6e6223ee5be4df530d1d96d7d9e3ba2d01e1c3961f0f3a17210eb4235923957f0a25ebd231562f4e8380e6f7dc22244b1edb9ecc2d3b223afc285535146cb20b5832f82b67e67ade63b4098dd3bda0a063720428f32ccb944262c1b36caab855487dac35e5995643d72a4edd22cf15157e666264d11f7f2f033290940c14e18b207a322b362c734abaa64bc582224bebc5232249b90a02c02d920b53459d51714ac3609603ea6199836fa2c12dc7425ea28ca80e1826f30304867a6b7d87573f253149b59d11ee14bee41af95b6e5c560655d3f0ab70fb782013b5c604f2fbb67470f96dfe8b59525795a646fda06b44b4d87f04ffde135ecb2411dd371538ef9f0b629d8ebae938ea3b996f4125063613bd75b1301e1a07869b76fc1586a01d09286ad10ba3d4b6178457cdc03bbc5c4e5c292f08912ccc0591b5f2132717343148dc1daf0ca0d738622b222c283b4f228df60b56813fa5ba07ca3a12eec1e1a78c042eb810d53791efc8f3beb814b818a262facafc0dfae7a89e4f58713f94cdfe440382e2929f845fe6d937360e744e996405b4b0ad35c8db9748e04c6666ef307eb5a0c57025a4310c1427ccd4946350588b7014922f63bfa77b96fe1227242723dc54e5e17a68865d4d5f00db4f0415693af65220bd08e08c43f141075995c4144222df53060f47352b04867155e75f76ced424305880317a65457215ceec38f231a49568d0e2af87819aab0770c419d1325588d117574081fb585f38719fb34bc806c6a9bd12c287c337ca6c2cc8bbcca630f0902ae24fa4cb6e783945245bcb5a07975fce87fbe643a018b6181ce3329607e2273e3d455ea2c477f317de3c5991d758857c482c224d8d6501ae08d177b8933f8a7c20d982c5e8d3f5154f1b8d96e8861bbc9af054e9b7d20a5c7cac30b0e52097bc164ae4f9bd82140ae44ddc767b269cca0715dcef4c247da12aaa205d165ea69921ef5ed4146036347b14b81be3bc5a5c5cab536872c5c1c7dcb46d054b5a0ab13babdb7dc2faefac329293f1611a07b55c5f890c3e3886274634c1fdbe4250f2ef1573204a1ef74305ab149389a8c116e8a219a94e62600cff6e428ff8b978a4a0be3a28524cd06031c863f7e071e8db536da39e42c08806252ebc180471fc0059986892b49d0342e30aa6598295208764c740b51bc0c6089f53c8d533c9a4038144e7821c929061474886d8900cf5231272b5b4281d07ffb70bfc8e1d785ace02089831a6a6d435f8649ac9e1f2330e6862459bef5e789f8e5020357e6fb80a0066297dcd2e48a9c5ca8efaa1cabba9dd9b3cd704cbe7687e24c562597ec4c6f92726c7356ab3b4e525bdb7a3257f972f07405aa19ae6a218de2e98c9cbbf0e6c9a653c9318c5897d1472c0c8c7769f1843b43186c1fc2bb91b7851650f28813723e348388f0a663c7263a2592f1ae7c57cb99f3db8adf8b5ebb780c2e53ab9529151e51e2048e441d9b818b5f71b868efe91cdc02b04417a3719689880dbcc1d81d95edfaab343a20c442e38ddee64121141c547708df917cc94b294a70e9cc647c0af26a6256c988d5bd7cafe9e38d081c8093aff1d60a8e02e978a2b97845b26f2e63103695a478c8c2161d0a3f421719414dd87121c498729dff0df521e2658610cec2cbe1b3bfe5c95acd9a30b5628f46a7f2ee6958cf87ad90f991f6f313023908c18e314e6dd86ce8b0fe78213cd2c7ffa52d02aaafa8dd1f354bc6ab8af4d709e318ea6dd03a34a32bca1eefa19a2403853718f03c5f5f899263d8a110a07b07b73313232b56d8a7d47c7dde4156e1870317848348857af58ddc80225744bba24cec5b7d5014fcedba448e80f5b044df26281160aa27d594d07706d4beda1c28778ed61a9c65f2f80d8ad435740d84c085ca761f6312767143ef56c6dfb03928aecd1c3d9f96b085ec6db2e98d12f742bafe36f8a15f8375c148b9e8db6c50ab9b44f7735ddfd3bab6a0437986ef2c060b34320fdfb9ca75800226be20fc08fbf050279d04438da2c4dd1c2d58d593810439c412ef884550e6ff9ca16ab71254b335c02a52be79033700540dff436d6822d2e4ad736f12d4c220689ce9ec8bc7a5e07ca2729bff24db3acf0bce65c90a824f9ad796185ad8feae1833ab54eb9b70e91a3de1e694b0f30b5bc8293bcb1c0eb3e652765135318f0e5595ffe3831804f937d41d6244a5b0cba174058d0f25c73137ff05ec9963becc8273a4cbae3a964f906ea4159db2df79c750ede0cdb08838623e05fe32e36256d86b727610f5ce485a17118ba6d83d1bfdacebfb7f7bf538e962150b250a32552f9a94f633e6c71b75f53b84260571d4d667fd64f3f27063d2d24c4ce54b0f090eb2c8b88b0a8c6ba4d516c2b24452b19bde3d9e689bec579e8110e3ee67948d33d807399a0924a757a51cb582f1cea360081bae38b7b2e278ddcb3d8dfc40a9a387b7dece0adfd9c8a7f41908a8d427c17b1d6595b0603115997541253a59b9865cc6cc8426967a45d321eee93d0f15f07fd83a2094d532b2f3d441c30caaa31672f3451ed2f206f4ab8de7731f6e58bbb633aff33b93bd5a3cae18246a8540c1d9166a222960035b1a4e2fffde623a2d567795b34b529d7eb233121e62cfa3a634e21e0fa9354de13f3ba3d7b834ce44b26424900317789385bd29ba192eab2574ca13616000f9192b1854ef3b0d7aca9ff3721f6097d8f019e2873f58ce7133063b3d18ea24a68b18f618229614056a39b91d0ce5ae651dc0db56e8a18a103a7264d440802aa0013e58f1908e5bf65c3b3ab0692f331fd08eacea6aaa18a00bdc7d054ce4d64d3bad66ee9e1d20a7f24897268765ff137627cdea99e00647c22c3240ec7ea650e27c95aa43fc31a70ec702585a4e23c684c89f54f216c79d2284cec9fcb52f58cbcfb071022a892af658fc091c6b5e4283e2a0a816b681c9c85e2f4566f91ca8bd1e30ef09b57d545764ba580a2fc90f2895382836b37d611f0de88fb2a1d6fa4bff0086e98876c675ab372e3677e37c6ce4dd5d1b16b7f2ab72bbf3ad640ac464abb00816e22a31792c7ab35cc5f9abcef3e95062d0a9afda1b58a51f0265f520f25a54fa8b2dacc6295f8aba87f15c9045325dbe6b30b84e54c47c7a9421159ec3d0aaf0f3da2cc712d76891a5b58bdf9a320b8b34025cbd998a0c12805b0975f8f515d793de942951ac14e9c98caf8ed7de1f25d0d7947edb04ed5c850ec0d798ea332f16edfee3e9a521083b7bef331c4d828f192fbdc52127cc46e0ec097c98e5fea94b20f43dcfd95690ffdb2a5550838b3b8778f7b3a844ca8a876bc9a02c282f3df441bd673a61122b9613c10a89629b4ae8a4e00d5637a50eee43e42882e24985a60a24a3ccbd69e9b52b1a72d9bbfa787a7a6c10e2aa25be3c94e64ee1119eb575fed07d8d53bee49fe6819660f39c13bf740c0520a433e495a37f0782d55f58073a73d3a068f97598a63c5028dd37a9f1b9caa638d32c5dd5b243667e3a6e66c834ffa1ff1301d2f6006d59f69c7773e2c688352d7bc497406fe2bdeac0a8da9107c2dfda867e0fbd459b58cc06dd4059eae5ffdd0d3cc8d23f32eb0df455b92684069e31785ee6c1032c46c4735d8073630d6126c068ac6a0d67b4142bd58d4d58d27440ad3b2cc8a63b278230dce10211ecea66e38c02b0c7ff75fb519484d991753245327ca3f0ce45a328f6ae7d959659f55eff252de5646641c489aa2f07ba0e886097fb5379d917f41c5a1e792cf27f374722e37709d9e795697ab001659c5466b65347bf3227a97abd84e216c793a3acffa6451685d58604e025cb68037fa1b6851c8f03b61a0674d4fc7b04dee327f29e870bf560af3b495316ffcad2541ee8c15a42b7bc97f01746cd8fe122e1bdfd6e412e75ddee9c7f97892d96d6bd6c753ab442acdda456dd777c99605d2d3fc0a4eefd978a76c7720c874965a4ed388de39f4900fa80771343f6aede2910b89db7ebd7a02df8f1bfe523319b60cf28b52d2fb7cf4dbff4649b92d07c939ec5f0d6a5348cbf6b10df0797e34141f514bee887a39727346fa6ba7c65831d6d09f80d50fc1ddf05bbb8f7087fff68d01dcc366e8188e7dea04a7836faac0da831f532f352b5ca062163d6b016c5df4abc77669f8a80805bd9f4d088babdffe4145b747b2d448fad3d73323c3a233510079855f934d37950fd419fef008790d2cf7cc46b03c817d372e167b535558b5d76c626fd7894cca18b84d5e380df3bc84cc39ecd21e8546444e53bdf86eba131e555d4964e191d72fe31ce0cb63db26d958feb00c20c7cba2e53e065ae1607fc299f5010c855b3cbabb3a43466281ac1b42b348e964dae664c1c497b8b5c5a5a6726d4e62c32980c05f7b20df7bc4b67f34ab01f20472603c10fb2cdecd5129ecda9d2fcc903be6b06d138c9026a36ab3aa5636bc819b16e848b2569446789f8c1a408e5baa9f4d9185bd6068cc9809a034dec868b0dcf34a29b4bf82302885855340814f3946f4a103ede4ce71c9cd5b758caae2ae2a9eaae150a5f22fdcd93c71d8bfd898509432781428ac8dc0e105a94c4d7224e187902f86d316e1b1ec822f67abbedb941a4b655129897eff71694f8c4b943a48111230f06b5e4365bd815d3b2acf4e4fc8b55aca74e7d66e25183cac47d829671a5b4709ad844b8028e0c5669000081a1b71b4844897693405b1b1c8986b36b747a71622cb2e2367bd76e270b381a43e83aea79e9b9d050783b01f5c8d5ff6156b2ccc8732abc1e0d6ced5d5257c5403a3f13ba70250996fb9ee75387c504f0518e58482a03496241e1d82d99698648a576116088c8efb731ecea805ecc24e8a67ef6d7509979de8b8f0edc6c6a06aed97d1ab212c35ba2215f3e0cee575e947fd99e2b089aa05af004b96737b5809a9f92147870cc37dcc949bc7bec032acedaceaa63fda2c7fc851289bff410f280beb05a7f206fbaea98eec04245206dd134b2959c32c4265bb680812e7528f1c2014d700fcd033ab29ece7a6d46610bb0e21f612911d8ebaa0014d41b8bbbbb5a6a4d40871c3753110d3edf7fa44ae06991618bd89046ae0cd275ba171da666b9605fec76bbe0cc1ecd1f42923b993b7500116d1c8f5b2cf6c9787b12bd237a1b5c93ea482214173699c358a4f0a462a3223e87be0667e2095b05eb75fd563b35827e848719a6b26fed5a7513909d67d5ed0c1922a85addbbabd16bd5c6f6fc344fccbce86c8785995012942e147b6b01ec97d4473ab06df857f06a74ce314d14e9cb750d8c99c2332279b302dba6aba8d0186cd9f29361d6c4829ec5be18c0c6082b366467857612bc6679cd6a9da2dfb58ab8621fe29ce3036599497abec33144fac42c1150f0e628b36ae1372260dbe3663268f52333989db0c3c10a360fcd2a180bfd127ac3adc733327eb6a20563ffd69ec1f91e237f94394df8b4ea62a34042d7a785c72adc8d8bc64f367b562d61f5225b20ca319f052be1844e56d0e6d006241147de9e324b5015e2ada8b8e8ca95ec19d49cc159f6422ea4298f770158adeb1d0b9f2d110722d6a92c8a5c4d2d708afa2c577c452c805d2a51f5d5abfbac549817c776749c220dfd636c5e43e14f79ad1280c6f702a31c3a0c45cc809870fe06d1a964632cc0ad82a6808cc788a4dad61fc2d8610d8f9234063b1e93f3f64d3d43b8c4ab4beb11250a2c155ecb5c430885a6756c20aacb9ce1f71cafb18e9d3ef6a13f2d116cef53437d434cdb43e97d807f0c2b1352853465fc3cba79c6c2a00bafbccd7f9ffbb257cffda23bd7ad0a2ae6695d2e6bba99bd0f282bb59cfaf9f77464feb86a1dced9834f586b7b99381c020fd932e3a039c87c8b50564982216f1ba33999edb3e21cdabf3894844b9c3e25df9d0147d13c0121c18ba254b07eb9a49515e19fd6b833b0e3f7e3b7bebdd0adce8a116c383c065a8add4ab14faa23b932c190ab1365023932fb3a791bd2f5a710876ebe5a3a296300e3bc848f898c7f69fd05d98c6b16ad9d591cfc614f8af37cec53a0342fdc5a944403e760a468259419f9d78bb0350fa48216b2c719f0d28edad91fbdda89131ecc6dba4e6c6c3c88906c0734135f791d0a9eb86e4c032139c48b36a67aaca655b235e278caeb7d733dd8b8a516ef42e171a268a65378f9618b7529a8ebdc37108049fdf0217498ec0b05c73d083a372f5053c1c044991f6e8d7f5453a6140ab081486cc155681ec4ded9e7a2be4453080e899d0e57fc1656429e9a5f42883e987ec9657c3b12c0027cf016ac183db015dbc6aaa43ab1aa05ffd74433ac1dab744d9c20b9ebcfa4bcf9dcbfebe79ae1a230649e60fd4820a7254e45e83f5993b1f90162d8c0e52731845d8332ee4395fc50cb996956fad060e62145e3e148df7d7d9055e0f43fae901c109b8a395a5668d6346a8ab27f8d35020498f84d40b2681888be42f64b359f894cb2004bdae4d1a72d7b66f12e32adf24376f81f3a9614e673a2080340931f6a68d0288249839b11db3f0ac0d701d61c169ece0c6bf2a0028c80dafbc431e5f71df5d6543a8e657f62596f04d807fd2934c590cab3f9f8aa85b2f86aca054efe4e026127564c35ccf6008765203d8e60b64d30cceb7a4aab2feeef1f6b5ec736d476b1639a33ad23fca158bb928db7d6163ad1ca7aba4db24a2121f0f05afa3af266517244eee33ee1af5e6a88d3a67ac153a0aa3cd16a28ebf72a18665ed2444edd11515fd8d8a66bf436ea46887ca1dc9af519dd8e50ba790c0027c144c4dddfd495d51425d520101a512f3a1ee298176715786bd1bfc4e2faa73a143713f45847ff96c836c76f535babc622f2e9b8018df54396e42dda8a9b016f21ff732ab1e57de1d9b077df4541881bb51de0bcb35d9b1cc163d22d3c5cedd245ff880ebc3926cd736872420df6907f2582807012cae8d4fe3d9f33d7fe113a8b9cf016323e90a179085cb885a692f17d4f9dd357a21366c9ef62b3a25d786e76a76e938d2e8f0c239d25ab6f436aba29b00c57919991353d60ad54cb2e9f8d42797f4faa476c2c446ecfb993e06dc5a03da61a67d5c304e425207ba3ec1b4bd89a2044a5f535ca4e151a1273c6235e4daeecef32b47dfc4ab28c2684a25aa382b33e757ba0220dc9c5f9c38007520e9f89bce2be189081b048266adedb6e6116f020ab0df56552116db36d9724b296592295f08b3078907b7eb29a58ab27d5b8db27d8bb34179ec2f4d4c2c729104ea9756f373948c4a5f524529a36a64c2285511f5d5d0d713e60fe4d5822b6c3114ba1680d022346c398aa1f0a216934ab4a86216fba8c9573a8a40812df65593afa8912aa204c53e6bf2952bb98293c5becee4ab1a4a9490e162354c001484acf2f9c82169cc3499dcdd3f764c58e7f0b54e151b9c93da9ad9d1d5274d3d690dfd2805e143fbd5ccdb20886b6abcbfde0a7ba670da9a9a3f89f6f3f735abefe5aa73cdaa3e8fd27f7f411ed089fff5afd687b7ec7b27f678357cc50738cbda6f35c11d48b1e90a877e3bce31a15e87353dd14ad9e511aca4f63fe3d067e5919577b83571f95ae7eb6c085d3781932111218810b2c2f0260621f85459a13752d04aa5da1b1a6c673bdba984c063e39a04dd296f08a5ab5a41e6aff9b7b39ddbeba5008f8db33efeb2b2192effc0b3258560b4e0932fbf78913572dfbec8208760a2804932c15801a688ceeef982281240a45ac97d7b81101de4bebd808bb6a6dcb727a8b839a27b01038ddcb727b29073827dc3c1d83298fb761404d83b474e72e8accf3b1951ca01f3e1e4be1da13199a42af72dcc4f066b1ca4e2c3bd130213baa424a43c8a80a809a02cc50fccdcade3cbac0921acb0753f34d038e677252bb9c0a39c5d2ab61d377cd727432d548a90b0d0f196b41102a983ca7a6c8a764c982b876dc74a74198490868a80fc4505ca0ea9a3fefc9e09eb7e7e08229830dcd1ee9b35612e390b67277a4c95021ee5cc02d1d106d115a6b6dc00a8e1c194933aac2ce7c357e9c7fb9ee9bee99aa4e98a9ec9640a52411e1308d2fbcfb4a2f9f3569df7017556f73b3c0cfbfacbfbce248e9e78bba7b9410fee4bb1edf7f4784260117ed4173e1bf08cc003e8d39f0d70567fad629edd82ef84fe0fe88cd286f3417ff79e67f6dccfa56fad2f6bfe1a3f84faf7621c86ff2c96ab9354badac45b1356a15c7c43fc21eb5d2c2397ace5fa638e3c86b9869d59ae1cb986305b550e29f1cdffee8e92bc42e640004b07cb597d83356fd0602319268ff24b96dfd9a892f9dfcd51ca21c3a07ba5873ec0602bd6bc29a2af5fda031e735433d2e808577359d610098f398a5cfe9a5656728190f532435213b32e05207254a850b1e206a3264d9a2071ab6292f8c9cd44ee9b971fba2b88f08873289356484a553ff677cb115afaa3ee518fe768296557918a16d57f5d2ac0b3f610997e05792a7db9a2b5b1645a6b77f7d7f7eeaededdffb48ab54b60d145452e4a5dd4455d7462812b964ffadfefa29e0e6f2eecf20f78ab1302f774dd0e97cbd5492a527c468a7c1272bdf4fa0812ab00df2701952593235c8f5f4a29edbed8257112f677f739db6a415d3e9d738a381ebc147d521d1b4592175491e7742470c9a7f678c1d621a1768a9016e6519de242d7755dd7fd40f9a182a73449d20386202e40228468e921072d55f2887f052d420040072d2dd800095c73dfb470296ac1109d25b0cd7d2b134499150c418262cfb3f072dfcaf0406d5bae1cd151e18a6c03293f58b1821fc4b05498e18725703f102141c136b9896410224271852d86301bdcf0979b280625a2e04243152e3ba0808b9526b804c142855764ddacb656df52c548adb5b61629966c20660b1079c438fcd9c0866c4a81cb5de21146e5be217124c90d3a346ce2618328d8e4c3063fe01a2100c002125d44227c0a93c7c761725190e8c2868bb200002e10330400255c8c8891224887872e6210d40518a12e8a929e9499254d215226c90a92dc5012113294c92581f1c9d13c58a176c499aac30ca334c87d1b93452ee5be3171441ef17b9a30946137adb561a4b4e0480021f356cf80a0610dc084b9221a8501228d4d831818cd02400486919bc8c8869fce6db5b6e2806f6e2214a0d1a0086cca4d84822a64c0a5dc4428882208bbdc05ae00059212169c6985323f1ed2a742912b44aee483a423e28b0488108389cc60844604071f19911e5a1022b2029a0486082252840f04b8a01161c24702598e888c59220121686f63266744124ee5268262850c8e919ba809241b54c1a8dc444ca0098998283afa5b6bad9d49706981258f39ac784ef2d84558f2d846fda5004440dc829861899017abc319295d9e1f063992040e3a48616404d782d1892f678ed8a2ca181a6273a2ce10c92f72dfcc982941272b7254e488ed678530b8d90750003139f2411899875cdcbabc207767b5b55a00f8609cfb36e627002ce054930d9a58c19d588f6432590b754c10b9d6472191cbdd6505a3ce650d62c05feedb989b0e164c73dfc620a141122ee5be8d5902cc6d4c9800ccf0cd7d1b538695466788508669a488a20115296e797c2d7895fb26c5131b10c19ffb36858ca504ab72dfa600d2c0093c23f76d0a15dcc81c890965c8059eb96f5d923c2b8d171c32cd7d3b534536a50a0d3765089fdc942e46829ce811046d0a99244053b84862bb516921490f9bec16851136acc818cbf5baaecb017751b513d2893ad0a04406e5a6c30f2f0ce9e0424f1533243d648e9018e990850b3d540ce1c87dc35da961011345413202ce703d66396f751e2f9692421129478ee0a4c460a44711231dc020391264840b38294034201da640729322e4d383852029b420295b7c7a20099af5f09149314ad2c3884c8a14487a1c299a02290a57d891f184586bad3df30961c11821b3cc4fc6b96f6586542f484d88908cac1324d65a6b5b892998706285972356386373f862a626851c1cc9054cb040bf0ca9b5d66ac150b95cc05c511224851b9828810222685d143179f87274b97cc139d2992a55e66c92c72ea2c136cb50c9796c3373c809e82b0d15b4146c46358c89cdff817313d1c0247bb98968a8795fe8a5a10c711624a0d0d0a98b0ba628b31adad10b5f0f32903683164a27a099841cf1a2187db72d66b8506e259f59878221efe705db43d17502439d32ebaed00908cdac1149e6507d2289a3c213d86807ff9550b0f9d37f5f8e6caddbefeeab09332929294db6b6cbde571366b6a209521c655257bf412bb311a3f8639104a7077f823d4e228e0f50c4b140cdcfaff9696bde411fe0685fda8eb9e7a626f2f39f88726dcb3d24858ec636b262455af1cd59df1562ccfacfe1723d6047083db3e53286d1e023e912e96b1d9bbed17fefa7c0d2a69452ca79471615c78b270e372fc6e1f04b180d52ac60cb1122908e880501420b155db820459520a29804845430c392e68a12601173a22d643e45d8ae60c12de6e4be6dc2ae782ffeeeb2de725109492925eac8a3662e8eb548a64d198f7ba18e0cc9fd5548bf50336739caa8bf9b4beee7d1b053ce000d6b1dfd02bf7f01cd807e9dbe6f9c64ff1147ee1b205a8753e41bda6c79494788c39fca584a2969a944c11235599047ca878247f78df134cb6e43e377b85c39c979273464a9b4c34f3467810e907f4b349fecef957e87cfee823cf2c75291ecb22b35c9b0018fa70af228959e478e589af13436430482428c86387a28239451ef14e919ef43a2e027f2b19cf7afb3deb1a935502b2f1e84867945632f91fd75f402fa65026b4eefffd361394cfdf865d4e3882815a438bd94170e0d8562a40ed58f6a365b386178bb5734ec2627718cf846089a7caa9d4e37b4138ca2f08abe118226fbc3c0f91b156ae6af5a431de957ada159fe9589512dc926cc2bbaa14d9877345b52877743bba1e156155c756f5addff56de9756f76745c9502a8443a118198af94aa552a91476e970e82637613344554d15260fcdf8d1465439e951559bb1f2986a06238dc4e15fa240c39029197f3a9d4eb9ec0fa368c2fc61c0b899f92b1cf29b23fd0a7f6896a3c45106c68171a4829126dfd050b39ba30953cd6ec4f047ea40c9240edc84d1106f7232c451460c31bca570a11987a96a530c715975436f31e4af5aa459f2fdc31fa8155a1bf9ab6ed822fbfbab66130682aa3661a19925b254cdf2bf58d1a1be21efc42b18b9d6fc753373560dfdba39d22c7f47cdb2fb511e514645137673743461e16db6d2481daa1f89c3ffe6a828cb9081f12dbb7794553fd9bd34d931c618cfd88b558c6cb3ea7c9343c96e72d9294a967dc637d843d2781aa3312367557ffc00b40f9a25bf66c5a319d00b681dedad4c1815e64c9c8425b990b2e754422ad789f239a594525a5dbaf5d58d4dfdb9b1d2d5dddddd8130ae35efeed3d81581a010eb44e935a8021d51f1f5cb39e79c738b84d5da6c0df5ce7c398982c892e62ffff1176d4929c5d126dbff64b704bbdb5795569b30af5bfd30b0424c14441c618158ae5638800284324cc263db8c5cd255556e94d8e80d153e365b82f97689bdae92ab53c560eb6cb5f592c163db8cbec038f0963c9a30d66cc90993dd41d561b55ce100429717e642dc84a1bc2561d75bf273da02bdb0820df0a2beac455ab0f4708971010b70d725007e0394be069ca31ed92332453928550c0d0d592a5200868aa0214a2ad2375e1c0fec132531949b2889a001e426f2c245be26257cf2e7264a824cfea869822b2a410804a975029d4d3583a001b5f6fd4df56fd5c91e78f60f0107c62039ef7010ac1dc13ef540835c3fb7cea43e9f07701325f125895b96b7a9f7b65b27d75283206890bb92f7d2ed774fed77ad93a9f863f008f2fdca3924f3ee0e0f4b28bdeb5dbfb9e21a39c8f96bcc81d4fdfcf90f78d3b549c16317e1fc35e777708b109f884fc427e213f189f8447c223e119f884fc427be43258e8f98ad3fbbb8429e2e4435b000c5179a9249a48c3d43c45a6bad4d61859a821121f5b645d592826c051b2406980c01c40b3c1019828cdd21065bc22052a021a5fb9c7352fa4fe031bce1cdf1bc1c1d8c39387056a9c61178b4f1813c2693c9415082df6785c9bb9dad269334758c1a1e97f2b039b4160cbbaecb41392bbca5ce966a89964aa55269964a2597a50064298e1dc82d62379d824e412728fea27fea3f0939ec34c4731a9a62a6b1e4ce052c7f3c0d9d864e43a7217f7d738aa7a1be711acaa7a1de691a47537a68a4ec20b5beac3d6ccc7e83dd537b3db7a13eb37c27f0e81378f88a021dab0f4ad9c3c6e89c52ce29de2c451c1f34569fc6aa0804851815efaa4a1933a41362c516e9be7546559109872cafee0dc51618360705146a83e2094f280a15bceb97a38a031da0ca26282077df38e56aee5aff44c6ab7b6b2024a6e65d53a9543bee81e39473560c3ee941ee886ab45c5f9ec8ccb06288d16cd521da8117281dcd96fd4b0119ab43b375ff932d057057a30064b486ad866da6647da3fb942c7b976ac610e492ad6f74df5d998c85fc811b76a7dcc98cb3aebcb7bb4754e452b793a9223246fe1a4fb9239cbfc6539a9497542adf13197f55a00a5bce5f66fc552aa5397d391d91507afb2731feaae208f26b3d3ae1fce562049c6577e458b99c6539b8b2a87746e8af7f9a95667dc316e0063ca60ac004fbaf0a0084fb3fe993569bddbf74d43b35db2f19f50e2adb3f9566bd132346eea2191925d437ece7cc00cbf2982ae2f169d0228e07f54928d95816849a55fd6317ad6c38cbab7ba7684432e4bcab0d578ede62c35fcd418e099b30fa3968f302c671c08c9ccbf7c7ce77b6eee77096fd6e55322a7d71960864268b93007cd377a5ff1e145326f1ce56f789ab6a942a9a2dfb58962d96f9ab66fb784850b68f67fe02b37d2c84af38ace6ec632766634e1eb10c28db2a79c441d9764537275c90474c255b1a1b312ddbf702ce52a97068dc9c9c193368d0a851e37fb50a4526f845269d08254c186ea4d92e936c41fa745f5d1dc1a3b4cd58e37c405f7e6769eb9dfbfe53680a55b917e32b6dd247ea9057e4159fecb1ef9a242da8260414649b57862695297445b2c0a9d738297d49048242cc13696db67cc0100832b3099d647f87dbbaa240ae33a929fbf7657f11668bc9fdd586e5cf4c935287335826110d71b95f4221612f64cb1f256133375bf2d5393e9b21f50cf4591058fe472795b12ed110312e1862825cb10c204985e12d5e1b5cdac10e331ca67c7901952b313a6999d21799524a698d14304535979b6e926bad8f53c892eb872f642215a0c895556fc0c206238e48b18508180b6589101bb80821835780040994ad4cff9ad121d3af78881213986aadb5d22092cd32fd795d2e4ff38296175429728d1b4c6504a0029673ae8e6c734ea05aab6cce778265fefaece3ff09925632ce9247f904cf682652df702ace9c3871ce72ff5615ecefee2bd8d1467cb39dc035f73b1415307d997a197bcd4fadacc7a8e84252f420988cefb7216132c406784bbea418436c6fa99cc0336709c509328f6dab53404b9fde8bb105b24156969a1fe4acf929d10239ab2255a49ac65fa84ffd34001a4c1fc523f5f46d502b8c5a9d50ab1ad40afcaf9a50a90e066af5e2539f5a7d6e9087d2fac6fcfcf9ea2b79ffcd8ed6fadffdecab6a7a5a1d8012abfd0d6418ab13647eb11a6b973cdf6635d6139c5623bd62a45d323dc114185c00c5c4adb42499e213c7799b810d30083383e6cc71d6761ef417e85e8c2d50ae4815c966b1376b7356cb09fed183ec0c561013833cbfa2c15656919c355b55f07891b2bf0738dba754ec89f1e3acd58ed99a6f2bad398b36bd30ec9b632871e636dfc9077384f9a3e421932c8e07fdf579f4d7203c286f498a3d29f02b09934797c9de80c79b77f8beaf6175fce53ddbe994f56bfd7be5acb56da5558739bddc363fe59c92fe8bff7dc3e50db27abb3776f71aea5d7c1fdde977779fd3bbbb59ceea3fc980a5bbbbd70a0359ebb5f536cbd25b279d975edad94ae9ed6c8da1a56c29ab746aa9fcd6b1d445da37baae3eebd64aeda49387f77cf5ab7e975b7a2f1f574fa4d4edfccf9abad6b4933ba5d359e77ce9934ee9758e40a9ff671747d7cb9ff53a54647dd6999352255feb5c1c1fdddbb722107c3b1187021d0b674be25802cb783bd68943648c888cd9f7e995cad00465591b52e9acf96bf690e50f91456d082f4ef2d7994420c15f7d433394e59720ab90bc698194a5fc5b8b5c90d1649147b9a491e4900ef460769dc9821f481dde48362a8b95a5947947cffd2b029131fb41625ef31ce87ef73e6ed7bdd7956257c471b1e70b1293669c25bde640b325345bf21dc959f259437894485a60ffd16b35281da3ab11fb905c12b329c223ce7d84307ff8cbf290e56fa0779a4e11e6c4e1449835b7972443701cb865221bd7410e2678cc3165a619dc56ede7a40e9ae553f9df04ca2228cb935c161a51fea6e99685508e9123e030184864b2ec6844e431472e8ba43c7696b791e5d3e976f59dc9d9688ee6fc65864c9631a0386c460b918598a214f2e8b59c10483ee4d19b08b1432ed3e92da9a4c2e0f9267cdd46a5866a48d5372c7c328c3c5f8553997158985365f157dfcea4f16294a7ec863caa8e72372c80c8a38a8cea96e753e9a9da29e72edd671d0d5c0daf9556876a16879584ea0f0e626a931a5485ea152a1d85e4af51359492a1d2a4869470b7841b554d54405c6eba509c599dd5220dc337481ff29cb8873c277692e7ac5982805a1ab8be313b14d28dac045beaacd2fc35a290aa4ffda94729a01450efd49f2a26797e8b630d2b4d524df21c6f8af2ec12945338e449554329269faa15e1ee9349f9842bd6a0aa6ea5bae2ac3aa3813be54e66301086e2302c744a830394120efb601aaee1265856c28d75562253324357fe3470bdd34675362bb532548ffa4b2b55d06ca198a0804e39cfcaeca6a86fa46aab546db6a66a4865a561a69faf1aea1d99a7aa4b9e2aa2ac0a22cf47214d9849547d61581251489e6a088544438a3c270d1caa081e53b5a13c5bae543ef48d99aae599aaa596f8ab894af025cf4f01f92b469e9fbaa5bc38ac02a59ad4f2540d5119caf3e71151096490c7942dcf7b44cb636a4b2a28cfaf54aa86fc359e72367f8d2a1f5457fc35bf3cc9a32a4b9e72e57fcae5f92a1f7ac77fd6b0590f9b38bd9dd3db65e1c55fe3bdd7bbeb649ce5eeeeeed45dac649c356f6650b7cc9e2a2893de18d1aa52a13a75eaddb542f0e8baf96bac64f27c1815e325574a694edf905f43640524cafc0064f91f00a94352daf24ad6b5a9001541b2cc9f479697187e502cfc01c960cb34511665d9f057df64e025e70dc8e7a096e5106b93c118398319f2d85fe8745a571dfbc06752525e79b3318787b92e053a9f57fafa324709ae1fac9edf110a61a02c83d0f2d8485d7726b4e967d4f078337dc9af2fbbcec954b007489018182456f3e3eda9017b401c0bbc78f96310704582f9404e0f7ecd0ac702b3635fb2e9ed8a04271fa79fe21d6f2e597ff90d5ec0e6f1dfd9ea6868c90dbb20307dce0b4f0f38420072df7262f2155bb2e97b6a4420d2823d6009fea3f4717dbcf81a11c8e95f8877b62af8812757fed6e6b1cce602f36b7e06101eef28c11509c0c7019e33dddda797dc1c4cff2a36b5d3e79c1235e7bbdf1b864d94bbd656eef672d36c824c3ac1468bf449abedae57fa6c3cef7e66c86420f4d2414ec3746c70607ffce81b38433cead94a6dedba1f954ef09467f75b6c593207a81c1d1bf70b16e3e3bb77d83a6d67bfbdf3c2747ba7a683c808c8ad863dec57dda599e8f7a0fb87edc7d7a31f474747f4074a05958ab5119283850819715cde653ae99cd3a98db675b4ebf27c7bebf7954c603522a594b3a994ddca25ce396fb6e9fc1a9d0d9d4e9438da4dac4e7e8eb3fab110967fe95dc939ab133ce79c14245369a5f7defb750cc1abd4744550f2bc2f270c3fcf560a7625dae75df975de7bd9337ddd07626aadadb42b7d261a46f180e59b3ce95defe5b52f6fc9ab515a8bd44aa5b42fa5d3689133b269d7b6ddf5759958a5ff3cd31581b7eaa6404c3961484da2d43161a7af798fa6c3b2e1e22007abe79f26d23a5a51187be0ab23987ed7d4d4cf745a796d05d4e360128cda014bb0547adac966954a23c8dd53aff49de9360e4781e765bb7768199ad3fc67e53567390dacc1126297a4fd2c91a5fc30061978cb63e7f2d8666240923b314449c0e0c30f1430eaaf551e4d79f698b3258f3a4faf913c1fcf1778c8f3052af224faf14109953ae6933737e8528650be1f7414d97b1e9d717f5e419ed37f6de4c40b4fb8745124896e30f9de315d45aed2351da573681bc2221a0fd12b68287eff06f94b66dacca1757496f15ea192ef7592efaf66c0f76dadc6f4cd1943c662ac707c843d3c665fc6c7f850042267493a2011c57e61128be27d90d8374d1debbee560c3123120289890c4a2d83c0a74c8865814ef477c34613d17976f6e5e20dba9b664e8766ff9fe0b2333c86b697504779f298f3f7320c8d38333dfbe0cb1e266eb7eb7c2991f43ac39a4d9ba33dcbd4d19522edf5b94ef788d8ef2fd1b74616858f737f2fdebe32fd3dfbf347fd5fcfdfbd33bfef7daee98736de8c43b4ba1c4f194475b5b5959dfb0422c2ddf1faf0cf9deaff568b6eeecd6a31aa661ae7ad43b12cd0b71c457e42b8e558a7c672e248267d01624b7767f69b375bf410bd8bfb3d9ba3f7333f779a6d90e18c68fd336618d2fc8e3ffad8ee0f1ce40f87e7cf1251b382c67ddefecc1279a3065f860f954bc3f6d3667dd7790e7de7481bfbfcea27f453ab4faf2474d9f24df1f5bf9d6bac8ca036727028972d1581142452ed6897716c08a28b258c754984949b128fee37580cc126c6751bf16c859f73fd1d69c75efbf90b9eebf589d20ef97d03ba5bfdf33ef5f6c12472c8ee1fdcf66d53357ff5e59bedf3be037f1d6b52bbbc45bf7bb75d8191ac7fd7195bb86be717f04c04d17b8e6f1691edf86bd73d30596b9b4bab3be716bb3753f0c31be1f70d6b51145e0acfb2538ab3ac163e74450c2acbe6bc2eeac5bf7ef1783076c6b54f27dbbc45fe0dfb74da40eff6b9be4fb350faeec1267dd9a1a0f3083a2adf58dfb2b19f0fd3b93e12cdf9f2d265f677936615e7104194233bab8b725687b07a66f5fae7ace9b2eb0fcfe0e9c80cc064063ff033553ebe4fbc673c9f7d95a03cf29b268184a514ad93a13565f8ad85dde29ddddbb9212e9935a5bbb6dd7d15bbb7a05a7d875775ecfbd9e2d1ec905c679b5d3f94fc13869a494523a65e7f624431ebbbbfb525aa7cd0a271970d2e8c249b969b7cd0a58e2ebe49b2f2b753b6935d9ee7aa55a6b7777b7ce3951537eadb57ad433cd3b7bae1a7f5d347146ca33529e81e18c9467a43cc3050c67a43cd30417357cb97a77daee922002aebbdd067e5ca09aacc99aacc95adff0b76008465ea9fae8292a7d34020fe0f16676e5d0f19c2ff7a31c7bad43fe481cabd2ca09cb5be22c7f11c81fa943ce206b35fcc81a35511d673d0692b5daad29791e5048f1b5f98bf314cadf0926693299ac08163645c0848d3342cb63e7da4ca799b0dee216c4823357cacc90242629ed881619ca2b25159f2a1297a50160a0855198590a51144193e45122d5b28da48deee33f35a0202443e4d185b27c213d4b911bb5d0431efd283b99299bb32cafe43cce9f59cb73c9389b64c9441e5119c6771019c6537f8919068c16a2c830fe05c8034326cb2fde06e47961b344b6790cf2d860fc279007e39c7c42b2433e7d0dc873aaa97910e4a9c1a00f11197c13c8039a4cb20468881c1133fd07f298be2351e4ef4b20cf377ab961a5f7409e524ef63cef312e7b4752903d2326c8de5f90c77bd1c002946f91335d734122cb5689222ce4d7c422cb74677625370c4fa10c43d614318362ad7d6bad25c18c0b541861044b8e8598a52e641b432e5b6badb52c94d191a9162c70c956005df0889f851364fbd727c967adb5d6ba581022c415d77a77addfef2c3b3982b5ddea9d35ddff9dc5f2eaef3f821559ce9a9665edd875f6bee86004827c6b51bbef372346e27a0747ae2f73bd63a6e504f64ee8fe031227735f9c559f8ccce19c55533290b1dad2481ea1c15e7d3954c28e1f13067eadd7266b1d5d1587bfb00bb6b9bb60991bd737ea874d60f07b0231555101162a319388674be2dc2749ad2c21f0c8c2e9a1dfd947f6957d21d96be3701b5a0ce49cd1965b602952ea3fa5fc2965be4eb0fff7620c9631e624831c424598b398cff29ce19ff827029eeca8d4ed7536390915d148008020016315002020100c88c4228140304c4355953d14800b6f8a427256329a88a34990a3200a628c218610620801c620028c61c8880a046425625ea82148540a432d2cc27522749e572d8688409ae5063d1b5250cec8cfde169de32c92a227a03e09e2cb50b1a39589c984a4589552a04e4271ee854bf8e5d55090b5ee4da62201658f180da186b4ee19b7c0554ddc3c68393638ed5e0a6077bae3678e1914e63c91364210a69dcbad1586197febae8d5b54cd18593bca0d2ab3864be07a91022be3033a79813343ee671f4a45c273be51481407db1b2c81ee0de913b54b33e32ef52b104cce1350fb29a7584c0066dabfc52c32cc4b236c1c2fc969c0d2b9f14012a1397061ceeac80b0c3ee31c9def71e856d28c423cf4a78386907137594cd9b8cf90a1616436d963ffab19c15910b7aa630f3815f481731809aa6482f7c5c8b17d1d68e1f0dc936e3f1a0575199c9e92ca2e5bd0f5a1b19f8cf59bfc078d4a65103b05ae36bc9da68db42497718f8b89d1038dfbb1306b3c1bb377593ce44763f906cc0439b619cef1b233a3f2963e95aa7d62f483218b931a446857175ceb714bf754aced4a89b767dfae24632370d712709b424d7f05614c510d84a726328f2ff949ee5def49eafa9b202e39f341d522cd84b23c90352880f6fa3114b5e4082d4346a34ef1c1efe7231dd5a5b4a5eae21a7e2948312daad9dca4efb6e44360687b8ec5b50648f10b2deca2b0fbf338f4525dad70f14d9684a1487ab9dc7d66c48b7412bf640c961d79cd219d8ee436a2bf8e2af48b1d59915974676b7f9723d024dd7ab6845421d361b02ee62910b275edf83ea831bb45c880ec4cbba5d06cb21ad216a99be601510dd00f19cdd6399c489d4ada0252970863ce52309264ed1b8a4151d92ed1476d08bf7a346f2330bafc078b76bf3241c0a95eb829c0fbd5be25a52b86d209b05391e27d120ad844ac75668957c212790d94e17088f382e06a95e29feaea4718799c37ce03c1f8de05a00049d4909523496cf710f109300242563d946f3a9e902a724176622942cfdc4aa3e8b4c7b76a17fcf344a91dae4d0e7000e065aa97c023aa9aa154fb186d00e26bb86eb00cfd8d3b4f1d38d4a97f3f7daba3ad8b2e465f522b56094bcd8c5bebeb658b6b7564aacaa4aa3d6a065e5215064cc6b259925fcb8df422da0c59b76fe4eb4480f2dc48afd9d62389218c36b9938430f565b0d4ef0303b4e279775cccebedbafc3b0aab5ecdc201cfce7f36252fa9dcf427008d5d34a17648bba7d3226d8207ca31ac7863a3ad4678c70879616f4074e0f2da1ce366ebff942b5588136b9bce15a70330a6e872abbd3522defd55d186030b13d640c14175793c782013dea215b89f8dcab77fc4a2be1e09381e8e1c750e5beec8e4ca4597da9427c0b0078f38f0e43f76c41a4c9b28fd2f40a46bfded002d2dcea6b09032e2be27c25734f5a768e41f7851461aeb75c2f84455752f7ee0bc4dc8d7d2680e3a80970206c034a6408478436703cc5da947fc68720921d17ec3b31b55148a01228377d6fe364e0b0cbcad62a120c6fa4a39db4a3c7c3ebdbde8a9a685e0f4502082d85d739819838acc7e61f2dfeeac5f2581938960db302552a2f52b14ea6b773a162f392ad6373bca49730d2729182e103879049cd9bf798c8d9406dc25611979837d53f3abce1cece1e9d42d9e69c09ba3290c2ec45b875e0153f4cae0e0b0ea301be1e2a6be7bfb0cde3caf50486177b905570d51e4e90d4da4d48775bcd7c5726d86c79e360d53ac8eca3cce359b670a3c6752f556566ea7cb416d6ce6ab08b68612a64544ab2ef5e22d1590416d1179248e56e7e209388ec854dd202ca60c68209cf5bda957bcffed1636038ce731769acaffe345c0739d95ba76b1b6a060e76c2a776eac44b2c07ec4c4ed020e1557faf234f4e08a600c2e05a72ee213e43eb2e5bc5cb4b9d492fca925dee29cad16a6bf1e499762a0e7bf658fe39e3ed7a5e79602cef023ed687acc88238db69960a18af3f2fa5dfd488d3a68f675a1a8591e8db824d3c1a0613d004bc8804483801b4ac8731132b049441ca1678a3678c59e4e52b07826388d72b1f4793e70cb2148d52eed41d820ba95445c02d5a40e21c7a62876477e1b7bde754943c9a4dfaa14d7d30ea4ed4ff920de7a07345c1524f00ce4c39c9c01f4eb824141b45248614d37f3c5ac4300e65d8705640aeacb92d39f2a3fc57d2c4f3700bb680c51e6aea8404e07f1cc772957cd23f349a0100410fcbed6138035dd6e1c1ee282295304aacc652187b5a448d0f6f4e6ad835521a1c957031bfd926cbbcf47f3d1d73a05f31037cef646235b70ddd42c03b57b3a4c8cf49d06d8c0129836ac5df5eeb5dcb15a9b3d89ce71035e4a657abb09f32b1502b6e32b2b6f7c31751bd4213a367a340eca36a497ea45a3786021820de27d9c74428370ab110aa2839a2d5f810396952f5f6e46140fd6e13820103737806403bd03abea76a473991c414d8a31664b0957c147dd12175cc1b9e4046bc777cd9095d7ced14dca3cbd418dd628bac2e1fa4e540554baa754f4d5188f04a7a287f9d648ce8cb52b91459ae4221cc4e39de593d72d587aaca2beaed99e7ac2ff1739027b6286ece2629b999d3162810e9b522e53a8a1b979542aade73e6cda35ae2441b26c3e8922c06f3cec16a10c1b91bf6ac01e7da8fab1e49a1d40e94b376c63eb504b8b6c1a097c96b424e0b378d63a0c61430d2161fa6393ae6420501e3a95476922e18972278a7f733143408550e70ad14680c0ea6db4188073bf3398cfd460a204cf6982d691486ab2c3ae34a45ae2348a10c71c7811b8d29b2317375843c20a66bd17c58b144d4111ee89e61e429e92b4e19410710caf32c4113e16d0b96624f5132138627537ae18be47c68d780dfc6c07a1a7064a9eb06132ba19a41a470c694431f5a8df9909f01a8e8b77c8c835c2b6a9d1754d1f6e515fa090e90bb828067f97f11fa4e5563913659bbe744ec7e72600be0b4a102f51232532a1109c61ac9b40b8074d66b68dfcd7ed229046659e33406681e7147cb5aaf267f1fe8b248c015f1d0dbcfdf7eba6d97979776b38bfbbaa1e798c169ecc1654989480e0cc958d1f6e3e1022af836eb49949c5bd2a123698b8b346a1267297652e660cd7592a751341a7803ac04856c9493fed652bfecd3a009eaaec8f6fa56c16ec31acc0f5a390871ca9c5cf459c60c0e76f3706432e8275826701b4433881a1e1df2146d67414950e54d87d4aba6e11a22b1dd59ff18205fe7d9c3b65ef0d7461f3384e8782cadcd38bc49883f5fae28d48727b0e0b5f9fb632f5c5c80499a220627c825ffa4813da5a79a678e5d484cd238b5789559718c29217f0c4716087484c51e9aa64721605d322517dcebfb848f44ab08f7eefb2703ee8c5cb80f6cf59fdfec5064bea5ca62dc56b44abfa338a3ec676319a4474d142b544ec9495e1031ba1e6e06ef64f24c96e039f83943e1b77385f3f43d9fbaa152b999166816005559c93bafccd9210615489fdbe86001c26a9d4e9482354c8595d2b15b70af051cc39ad8247ecdc7f0815bb066ec99d20e73ca6fb6f79ffc301655a2169aa8c804f8ed31792dda3693ac7edd7b83b99aeae3f3923b5654968651988de6a170e73c893495b20e3151182f9d1c508f318b2ad74fde1ae18ed217d9ba2bf9bd8249d953f0a8555e169a23c550b27514569d4352f78475641fe872c4b4e750751a680540ecbe35dca8205d7dc17361dc673810f57567b884776ef68b0e7963e309875db5ac1d48dce18ba718c1cb40b4a117614978984daa74071d8ac6ca986154a197f4d4628a908df546180b6246b8aa0b46af972ff1531e5cbb09ea42a5cc3ca38072e813b08a10e7adcb719165d1f4e0164bc46f243f9858d74c5d0b7fb451c0c972cca2462845f839cf646911d12f25d033a4ce5642d72adf907d759ca4ec8b281a304dcff168ba2432f66e46e115508e11831c36d7269539494b0ea213652b2a74cf66f6638807c4aa49709fe0f092fc8d67c1eb3f12600a410805eaaf16f9aac4fe4367316830a4dc699e8465142d80ff53f1dafd508e6440893ff82bc6315bfdc30a848322f8338915605ae182839f51f9006ce201e2cc74769736c94e0f36cda5c91f4198e90c69b09ea9ca796029cc6031b09006facdbc1244a2d56b9cc495c2ccb3121f164e688e8ae6663e5369a826c8630cffefe3d9aaf56e482f4d1098d0cd2842bd6d78a6289b5a40202106e42f481cbca46c184fa83bc888b0d0522f9b05c81e14a24930540b206b489b8adf50ce7938675b9342963df52bad51e871a432e38eeff1b7c3469efa1c491fb31cfc643ba8f423ec4e7e970499fa054596b8b28e56078271d93a5965b19a3f26e4bd888d619ad188fc6790cc943024bad6237ab10d546c45db83984b0ad27057f4ea9b7f4e9ce166a77e474cf46d69cbcb687a3519fae159c756200238553363c4a8bf650769fc8bc345e86cae302e05c9934aa7962751d88e709124d6d8c3da2127a310948ec82363ff7cd48f7f94009086eef93806f6c1f0d46e83e26d7b931a988386898cbe6c88b9e2341cd03e2053102bb5984079d2b34f8b9ce67a6af827239c81526239f62d043469ae4c412a85ecc28b07c4fb5fab6dd0c0a338149658854f47040b56efd97106bdc07f3020929292454402c9461bc315953378d5dc8cadc3afa0d3d04b346832c3e9535099a3dab9e742dfd70da9a48f62939ca426c6e97f9c72363df3d09dc587e8c3e452f92accfd8e41452014ce8385c25386f5b84ef6458f2d4f2218777c927015f3959618ba3dd14d75cba5d8f0dcc2c680200d90b414d0917f2115481748f855a3dadc2be64d56d74715070fb26a48f298748865dfed07ad27f44d390b5c418ea9169a0ba67e4142c9b7dfe71a054f557f6c2fcb8c0ad5c5257029a76057c75658da60cb811817cdf254575687b5c00bd6b2aad6f9e02cb380bffd253ab7cddd754e81083181053d1323dd7932680d6b9d7a8d72d5898d01bc0a89bfa30e78cc10a912a6208980939c9505f9d797832e62a847a151be262e680c2e2a167585f0023373e775c89026765a8afee3c7b92a335d69b31a1efb387f28a3e4c96cb6801b3a418f61bbe6f64bcb3aedcabb09433218c5dc18af4bf3d0a675a5e332057a801e4d945fee3978b368646288fcaeb54431d57d648f3c5b19867558f3c6093d4f9232ab97f8484dfe67f936a2cd9281e9601ac35c9fa7584af8013c3e861138b7767de506e701f38a998f0aabbb08af8829835a4660e9f0acc3479830f1bfd42005c93322ead07c882dbe8000ceb71c353cf5637285291a25e8eac98f07344371a39997f0c2c9c1b9f391b1e4ca43ff62a5d8a0a540bac3eaf0feb7902435b33c603588f1046c84df50ed293e8c36f4b39455151b1d344d0cedd594c9ef08a08a944f98f4837fc41296076e986bc1080d933224a3008840a854f514f68734756fe7785f6006087a864819a3a7893b3c80e3e6532c04e177a0370e3b3cc03324d149b070d4a2c23096eda298564a14297270afd20ddd3cc6f06f1242b7c0bedeff7b48a8ce08e9bb849048adb4156d50fe5429121d0c53aff8c2e52b965d97d6906c1d5304b4a7e7fd19a02857d9047fee43ed436b2818cc62bb0821ae90b361eed81406a037f49da4f69544c8e8202e982c174906c9c443e729027869c81f5662d9a410e5823a2b965c00b412e0464f281554898a3bafb199ef5709296b11e87e93086d2785749f0c7860f4b48eceb05a14e0b8a97220aab35d1135e419414ebf4708b9a4ab119b85c3a9996422ee49571e58dac0b3ebfad55b91b538ee661c69c97a91b194631cdec8122201e689531754ff1e6304bf1a3d9955e8591bc6685d701f4068591fa968748ec0d8093d22112e4f5a4efd915a3e06dce220a86627154d12bd5704a2675e465bd5f7ff6d156705fba7f5a364fb3bd0ed2a16cc8c513c2c56b891284d6ba4e0629ae2ebc515d1e0e22c47c5ad1dfe4189370c5046b71354a6fee099d83f189691928a7aebd1543259fc0fc4008dc0a9f182fce50a0f02820dc2eb328792f9ed224341d9a64fdf635bab92581c8d59882c22beda27e151daaedbb405de0ea23da0b656ee2927371be8d0c4814d8e74995859991a91ea766a86ffd5fad3d0e3557de994f22fa0f86935c0ee9d109c1ba5024dc841664d0415281fcf25d4e2d0538711080e3f6a56859379258dba551290283e5201050b0f285250b80662bed0419a9ac9ebd9f57d3be558b0ec586d187e13cd78c00a92c1c11392609a5a4b68347faa3d40b9c3cf70c687ed42d09251d3b7c9b6a77c9d5d641eba8de49638778e2525ac767949444cb2d0c3e4f9c4e3b27129f6e1c61924a15ae82302d835e047fa5a66f0224b973d104e4343931c37974157e85fd9d118e80dc684140f45c6862729d4bf05555abed1f62af6bf7dc2415fa5cd81399e8f30354dfb223801301b85f88a48d3dc9c1b9e4ecdd84b96efe3e39692eaa38ba514da6ab78e1b32fa5e92948fe3627ea0dd54fd68220e3a0560e5073a9866eb3400c47a7dd79796ddb4e5c94d072289ba5ddf31077328f6bfde3119d3b7e18a041f0884cf6bfa1dcf1e2fe2b9f0d8bfcce3b95e111fdc95784e0006e9dec0c1f40f2e59b77f6e204f2566bb0198a46ba189cb6a825c966fc313098a06cec1cbc8072591cc370e13292bc330eb3ee1f5a7ab67166040fa904162848b009eeec68f5bf6ee80b342b1a863828d909f07cafcae73c996c1f90a457a666901bc2083c30a9eab48683a8f89df467542333175555804a8abef903636a36426ef1f5e01fd781e35bd4cfe56da59503c5379d6b040c4b64eb2de916f29af2cab5b72d786445ab404346c90abd5d10d1fb1038216d6e6c85d1ea5f00a43a703209b3bd9503304f9e1e4a3b594b0ff2079d7c270de58bf728f1c6349f1c70a90f2dbe7408119c14a540fc8d9c4849d19549deb94fb11948c05183df7f5b2273c19e0f92dec55de05a2547b27e2da9b11db62a376772c738f3457631a78c083b3fdacb80b4bc40cbbdd5a104e0e9fb645b4c9c84b13c1d0ee63803fa01d54e6aef4bc1e5a34b9f33af8474de0c0c5bc2d15eadd9548aba07a57786d62e0647e6fe27f3e902ff52e2d2811990ab5af0f1559263905ac44a55e730f9a6e71ccc1f63de31ffb75af5a71cb683f2ba74f97f7b762036f78018a58124331140fc924991f6051c66ba78e324d7017634731db23cd2e57f35387ddd88711aaeb8ae44abd8166d7447a39ff7869c68a91f17bd2d8894cc0b91667440c1bf420c5377df1659c390da1af85dda88d83ec6061490d620e69cb6cd5529a2a8dc8613be0375d5cb9576735188dad800aa1f18fdfda5a082c63d25c0904c99915c6c7a427b59f60af3c9f90267ae9f051e91bca661a2f3a3ae77cfb31d23a05e2b278c3903c3a156de9ec5ed5200bd1e0636f0a1d27e457e652a537965a9af5329837bff565dc62972120e356f4ba84d5b8631bd8dd7adb7880f656209009265510812532d3dae1eb43fa0380873e2febb54231aa2421ae4b44554d47ddead34fe68106ae591cdf2def5a9e8f9fd4628b78782f61b61ea84e1d8925dea82543da8240da606ee8b3ae0f2c14e6dbe75446a23510ba9da24d4328dca276a5a0f6d7efb8d656853e570f0be1e8cbdbf1ea7cec3860d032372efdf8d9b51ff2b73d7a397c2e3bb303e5cbba4812273eb6bb6f7c0e6787c5a8bd9ca40d29ae7f6923a64bf18873fb32a11fb0f88ca91059c8d1623e1b4463759895b94ed9605b2c08fdd988084240eb5140a26058635a323f5af32bc763864c7a958e0463e81aa06d5c5b59a0f99feac27c48620a9ca28987a5c7fde6b4787515cd395d2b0eee907fb4f222078c546936e8b7aecda1dacc5aa75881152e0322879004d16882615cd7b324899d630a0f58765ad55973829ef51d05a5c6c21ac623a2324c999b956b79768ef1d925a820cecc20f8eb39be3e792b915264d4999acbe926f90b35ad2841fd19cec995c254115f13005d51d108d81db8e5b331d4e7669196165ba972740a742b6e2c8c1541123815a08504af3b29739c2ae020039303f21fb468f910992183d3bcd55a049460c93c83fac1401cac772f9e782a137de59ef37f7bb760015062170dc60d8bed6a54e82f26feedf31c8bbd27c3b7a1a3bbcb94575955700e39b264a5219683b19ca7bed5dc64e10b09ed6f30ea4b30eace8f44d0f4ff1e0e6eb5bc1cc3b2da7d3d3fa84f321d1be55bf606afbcb458c070bc0721c44102f97b1354e9138306cb6a60d4db3de77fda334e6b903ebd7e0f49b402fca141b34d4711503af8bc91a027316bbed578967db39fe6dbf9e2beb0c8208e9af9775f848cd86db2badf27ac9e7a286a9e0221102fd59c1409f56766453efaba4fbb61e0797b7c3d30c5667408b51c046a116fb2267294a224bf566d752a5494cd49b482628f48545bdc852e685a409c172c03d08e94248930d683feabc0aa3111e9fe69cc94ade517d542ea34cb2943100ddf8924bd71a2519f593a71a0b70ef2faccb0b0c6c34dffcd9ac14d128bd6a02994e1feb6790d69f41d5c313f421d51c334cb357e1278803fa84e108b8096914d958c572767f953c43ab87cb36132179d733822a62b4296bdf1c0906b943b28b088a9ad843efd6054dd55141f190f435ad54803bf0b274bfefdb92b37e62768250019852f7bbc5c2c6ba31d8410f41c62dc8ac1a7803ede7148823f213f176fde0dd47da28f8e81e4b2bc53143ca4b9b143d411598bba2ce093dc52dd37033b4f7060d8477fd5b179e4652399e0ed04df44ce8b686b5996353630b8b5e523f93682e4029a2701f581cfa1ee26ad2fbd0a2e10c76fd4376d2367c284a13fe32af72ed48039f8a562419d9558c32913ee02667f8c3dabf4e3c78f47138acc0824a6c61189d7e3525d3ca53c58eb352f8e68ea049e7f6bffd2a3529f82aa1b29113895cbccc518ced6aeca6a0c1f2a57305aedd7f6ce297eca6eb557f4c84ed037811c05a03a8e34600f79669bb104ece663a4e19ab07d6355d8a30b99679c2833b0159c6aba7d1e8c0d0c1a7e49602b7ca73df51b2a32945a78f9725dacf980ca1c3a51f4c4e4db321789ff0c537fe9ee1eebc89bfac2e66a41b1f5700d661b411bb929cde5386237ea1d8e91faa350c35bca845e90da94371c95f19ffe30454b2b2a413719192746a32c9ad43fcc5c3497238f4202d01d561a0a4e947ca075e61b1b981f0654ef6b0ebd86c6cf35931c507cb9b872efd496577019da2429176f10da2984860b427276c33234c60db9fad97ca8776359747215121ed9da68c8a76ff7d918c3b8325e89b64b2f0e93d6e6438fed20b6c967e2c933231f555bd89135cc9741e5c5b9dd29db9921dc34c755b330f3045a8b921c5c2f5762c221f41a93ce655ac5b474fd7388831ad1433b1a4ba6b9a15e339d930463f1418b5c2efdd184426a58fcc61f53216acee89164de0fd42f4fdf5590650beff347845920a8b5ef79933f26914a7029b07d0362cb799dbf6ce7902bbb561b59f9225852a81ce6d6d58344a12c8368b927955576ac3baf8fbcaddeeab1fae8376d4373cbcc8aa7dafe4615a36a8516618c7437ae345f96ac0cb086d0a9c5bbdb03e3e0a0e57ce96486c4fd5ec26b2aa57287ceb2d7b1bac64b98ce032b003ebe6d827abc578baf3b648b0ef12243748e938675b40b29c5ed243c62b5380c248d214aad9cb57ae5f19707e6cd553959e347b19438ae23d56e6a4eb02bdc9f0c203985c0d797de9c80bcdc98b3f4fdc1bc1d0a1a9234d9c208646561069123c795d2c0ec1e5a0757ca5f3aa3c44e0e49de9fe3b34c3b71daa88948c8087e182c013479c2e405d9bdb809c418bfbcf8ced370a4308e92632f2c57f4840507e81c4db84053491154b36374514cea9aaf07347350e6b46c369422e04554ab708b811ffc2b0b256713495991b921d3111b84cd69e9ed70bc0c6ec3dbe77eb6c8829ce4cbc73db1f17d6a4a351befcb5d3f3b50ee514202954ee1d2f8c35104a2ec93093e9e0daad7e922aac15d1df110336e8f12bb6fa23aa46f819e8c256ce14bfaa111cb1aeed361beb32956a72b7c4d5c064cd34aa53a43c07fe57f08cfe6da301c5530d1751b72daef8ea0f1ef7e8f095ecb1d0f661cfc578b258773938dc27cee70d67526ef88ffc19df6672310c20511b8f6422cfbcd4287c0e8fd2bb5f8c0858b2fdebcd8efef166931eb2c6bcb52697d056abd6e5fce06e49319a6556c9a4e915fee1b72b3efdf1cf8c69af84fcc4d59ad4b8415e1e9d7917ccbc2c1a46a509a587500f624a37b5473e0248f43533acd900d548cd0f10a2b3cc8f4c59ebc4ee4672be59ad8cd83e465fc5d133d5a7d91aa8912cd493b5848e45994f796cce21ed3501b0e8a9ade0d04d14499b9238ab7344964f76f909542ed8d576cca41350a6f7530d1cb99fea5d3c2e483a8589a6685a8787897daba6ddc86902c2ecd40e8013fe476d6daab7a3e09814d5d8b56ef76fb5ceb1262bca51ab8facf6f3c6cf5c9af53df69211c6374d85c4c25d1e82ed9608aaa742002d12126d228f25093c0473450eb333b79ff78ad09717d5725dd238d79e9d1b649f04d905af26442143e152fac6565f53701bd02aa1cb84f56e8b1c6bf0eb99c4cc56a160040ab349d2e83be7bb2da2b2307f4c68f7bb2bca5ff276684fc47723f5d9f31e964e9f819eae7f40cb1312c7472f203a0720129fcd21c905a4ff8805b20e8b5e8fb119d207fbec14497238fc83b7d271870c5839269b89622f7ff78dd06526c4e1fba4ba9833997c52bda6a41a58beded38a15a19da9b404ca2a0059a3c7725ecf42f82d4de7706a1d26d55234e01b93704d17a60675e994a03edd764e5dee5c268a46035987205786e0832357f1acbab1e76640762599b2158a3caaea3a87c39ffc6135290b7f60c8825671786670b0dac352c9c2861292bcccc8907bee3040fd2ca2632ea431c1ff95bccddaaf7acb63e99d9375955c6c8676e9922a6fe7ea2d3ed682a1574dabe890c901213308255a82d612c0a096b8837dd3e5733cd870356ec4c403a9c15281e3f79b6e00870662e96313360659cded85596f23a0063f16650a7fc400ef2f8f5f1b5934097888885a42a9e1e4b07d009db997e77874fccceae4d081a3d97dcf9a6c118e136691675a8f6ddbcfd12d92c919bd4bd9f583947eceefd3cf401e6e9821c7702ce4ff58fdfba99aeba92861691870bdbafc9c464ccc16a7f36fc7fcb7bf3d434ad08f8e9e0feb9b0120bb1cff762d0ceadd5102b818de24e9c20124c29c980a81249dd037b3d42a8192805b8be65bde50281bb3b63c060d6c497cef37a70936a473e4857b63a99c9b7f72642e311723d9549170974c2083b4afbb6876c1dc1d420fc2ce21d1f42fa4c6effe6c2e4c5d90f9359e236fb44b784004962118221e6661b6636b580dfbc8ba8b3b2e617241e3cdeea2838a80391d93430c2f26b0aa716d7758bc2b6a0783570c0e0a5ca4772f10be49b800dd37d94dd3602fcbcf3b0abe1840111ad2f3cdef920ebdf1478879cb9e14f614743ae0c92a52e6fd352de9984de48e1bd392162e2fa44a86304c7ad14b4b7af57d2b0da53a5c534bc28af1de35afb07682859886978fd9c6221a5749592cef20157d8be6a8171a62875438ee69d03318367a3596c007f67e4cce8bce07a944e7a498e692faed22d9334098289f79eabb95fd57537a85f59d359e90a0244586d09788182ca0f013e96c79ebeb549dbe9efeed432424e8267e7a0ef985dc288007092f0d8e86c0d7d7b1f1812ebdfa711e583f3059a0bc03e0aa66753b8f57bb22a407e0889824dbe179700bd7f9847d82455908911566f40fb0ba502bfe65342b47fe4a565e7437293d1acc692f20c22e71a6c5603be9a90866946fc7771b2a82cbc2a385dcfbb1b74b24fe8b816bdf4ef8faf67632a2814ffb6adf84b1b2ea79c033a6d023fa42b10ca08145d5dda39beb169c7d5b9b081a52cb89f25e080e0d6ffbb8797e139013713b36c2696c6e47beea6f625ecd8dea07ccdf4ebbe926abed2532105cb47f57ecc2f91aed981f7bfa3b7aa9f24e4d8b676701972dc62dc8fb186a040249504837ef6a96adb360848bbb041f137fbe46e3c3158e5c7cd48798e018b8b5c141362c5112d8879723b9436b1f9c534d8d54dc547a9a9f92e2c694e2299db55219097c9673036efe3bc459651aff10189c799160860ab9a49da932c0ba0390740027d488553131f8296bcee751b14b7ee730a2a8aea4928ce2e05a850b12e75e5495040d7b39942d5c1df52f223b161bbd1abe8a990572687a21c21466fbf0072f4cc3d7db1a5751bc6ce382d1a150f93a803318df07c3dcb91b958295a20abde6c248b7f7d3d8b99a28ab666d313f58783e3439449308d3dcc80b80ce029be163f6c27c33177a006a67deb2374abd84bd92cfb1121807f08536221c4c2288169a141592414852a33197a0ece91a1e2b9da6190e2cb8be69599725b86f2f805a379fb66c6d9014d5960c3ef157e54f03749cb68a4eb333f7bf08998a0650f07b25b0dbadfb7da051955494a196a04b153296fcd2aa8cb6dbff430bbbfe0f5bc155b4c07f8748c8342b09ed09a764409e02d793fe6acf34931456ad19833961a1be677ccf35658ff31754b70c717d11aaa1b113681fb11a67e022c78f51054e5cbac4bd73a07b54c5a11b8ab90c45c914d965f754040e18a334a49cc94f17c2d345948cbf9a6f63823731ed47e5e730c5fedc4993bb1c1e3fe7284f8ea68846bc26dce700291b696755278065192c7e0bd44b22753c1539c7b6efb400e60c9547866b745df8868875e3577eb1db95f5d40b9a9c4948c1b58ab809b46fa2e7e3aef582d2f8b4822a4df9911b202d49981690160d70940e866002918170aaa2b240772aaa521c9e4b827f271d9d65d95cb1307a1d6ec7e1f5179a077a239e8285a748c9157f94072951dd34752e7961b36e379a3afd9cffbe38a20ad158f5e846e4ebb44eaa379a08ee41434d19b8f2e19b87485a308a5961f758d468e780887d40a65ec9fda58ce2bcd076c0b44cd38f64c2ce98456744bd86f8921f01d85a658517a4779c6fe6304342491032a6580b482c32e58f7f61eda8e89ec5f4833cc56b9bcc82098897e190782fc81bfc4c612d9923ba7f720a5245e6e41445096334ab39fcb485cc46b4336c6acb4ef45562c4ffc25e8888303d9d67d43770c167ec43f6af177cf4a94a9100055c762adc0369394e81ded3a4d62db8d91e2f33ef4622d23fe8a3c0e6c694dd806a8d7ef27cf6b5198176e06699b44cc86ed30ff6e917c94ae73e0669205357dc5320126721d2af81bba6dee1e3f7f57c477bd86168ad50ecce5fb958e715c42d1e5de3a00781fbf10ed69e124802a5852e9a1fc797966c55afcb9a3c0828e448ca8a6fa664ad95d6c35089bf41f5710f587391e5aceb7c6f96ecfd048a5b405d7e5fc0ae482df7655535ce9833621b7d12617d9985d944c5a8024ec95c29f92812570603703e00bdf245966111c48794d5ced6bc16a72e573a74c6da2058d5c2f5ae1ef063b268909dfbc184f5a8fedcd6e84181c6f8165f865e50ec55e96a82cfa1ad2eebb05a19429392cc475b2261c45fa282b65afdf2325a89f1920402f9066493d0beb3f7b9a1c037df2bcbc634f83cd4c49e392b5267047e1fa0525b9ab851939060f7d946b6bad8a11b0be5ce9c0a02cb0b35dfb0515d275ad01f5b3df370aad8164d6a8ea14f717a4d681d7ef426c9603cf4140802317bc40595b211957a91da811f0f1491f2fa06926b7f96fdaf1be8b59cabd60f1248d28e04d9ea92bcda57348abb0550b8a0f63ca076685dd4afa7b51f43eb5a60f06ac2ce36c906109f67b7f3eb8138f0fbcec3db61c9359cb9dcabb141bf7b27a4a538a79a4b68b189ca84d5011d5837ef78436f441c30eda190d428af8a87984882c25c1e7e1647f49245a11fce2d45cc762e8c8f795b2cdfdb485b619333c113e3cc86fa6eacfac6cb7eb645757dfa6c9be7142110462c720df6a903b113ff1b9cb00dc6e78487ff0ec510e496e0e7982658cbd157f76b781f6ca7feadb33f84db44aa12ba889962f2b87bdee8d68d1c1abec61ffb2cff66cff25e20df175d57faa71f5037abebbed9eb61a9ebc407a60ab952f09cf20cd2ba94dc239e86c44747817f6a8638eb5eb9a2f192d6ba660bbf2ca2e530598331cea3fbf30357093a32e1e54b89e5a6a1bc953339d92a8a8b0876f92d616b209ceaf415abca99d319d24bb32014b31b466e37c36c3f1748986bc097ad9ab4da866bb9fad7f7c04713923a6d8a5e454fbc6892796bd4f498c0f5c3910d09e9f812b1dcc64c7047efbeff172caffd5dfb99d67b0e52ca43352824acffd7bbbc415054f9965e982bec0d632df7f9275c7a0134cb3fb0b28e9d8a431b36249c858a00c7498f7e15820cb50a3c3546568fc98cbf6119b2d6a51d02106789ec205dbad1c4d6c093e861061ff33a1f5a146d8047e01ed31399ee6b684ba2b2d5d5c17d8cc077b6d3c87cde33575697735d7ed147c28e7394432571c0a000e17393f2df07bdf7932f8465d62e9083b19f9920eedeb65b3461f66e4f6a91c26b5162ca50624cecb7cf8be13a8f254b22720e1ea370050353dfb5e9d653742b9ff3c2128e6078c842092bfc28306e13c7dd001624ff552f779b37c6ad86fadaf4cfaec1c14e48a6acc86faff7f1183e99ef15c0b9141628d22925f95c6700efdd857add7d341cb6c08e658d9cf7753d2c8c61116623d9078019155841afbd04e8c07660fe5b230a89edc11ebc471bf58ffc850bcd0c58f34cc978c014c9df9e288561e1bab170d7d832fe5b288f25afc7a04eae45e9ead71aa08f8d18e0c2b8845a1302541e36b080090ffa52b44f011fc450ddd6e72abd70b6e9d4d1200d25b456fada2fa1b0e106931b42af3a66971ea40422652d72134bb0249477b1dc381b662944f5715d6c8edbefbdc1987bb514ff408f2b0955aad49d66c515d4945d48e41136b82be3a923ca9c313c3ed43f0c0f9c504c74d89b9c8a84149433e61724d142507fb70fc9d239ac80b7adc28751bd189c283265a98e5cf43bf2df7da7dd6329630e0013e360d0c6a7efa9ff309ee011a3621c36631a0e2a3831fa8b7a3e815233ab6e98e9c9dfde1303b49b46e8192e70bf55a28f12cf2cab6a5209064efdc3881134ceb89e2e442c52443e3f048bf8329a57dc0d1b0f48349fd57d5272171e4542a28f936e4869c94ed7cab818ed1a027f4f4d223a171a81f211ccbf16032d5b43eabcfe00e7cbad0eb99eb83c70210beaf900d72f6c70358aa1619cdc36c91ea9c6b60e7be9d00270b866135264ddbfb3c383c26687461aed8471fc6bfd12b4f3243863ae33915ee67929a1879b2abfb9a2a4a8b5bf3a2da0ef28a90d43d95fb31e7746391cd422729340ae1ebf73e7361d1d0495006b76f9b920f513efcc6e0324153e7f6e0cceccfe40e56a127bc6edc29c9b948bad2d9984929e9cbb810b5da96762098330dcf5af4c1b0df5f9d08dd5f1c0f49d276292ff314ffdb38858a164b3935ad9021803b5d214967c1768fc6a98f4ff5f7be30928871f81428295ed5e951367f93e3b37cc7d581065d46c58e22404ef20a284ae112807fd6638e588a845dd85c4428f766bf160a259ae6499660eb663e8753ad801aa88c89b84d26b0628cdfe5a99a1903128a2f3c2726395fa2241f88ab0d2cc8d442dca57e8723469b0898a9d92b7288e20dcfc750470a1788b6119d8751e2278458d850abb408abac7d9d625b90c76504ad01b4ffee367a9e6d2873ae3121897d1d449d43a4a1ab286b6ce0deab361e0e9df651e4c934dfd9847991167542fbd7c13e84bbaa5e18a5c1df101758ba7c4a14ad24e6e7f138c7dbfa76208086d419b0d0687247ac50c395247ede5f93c0903a8703f8e24805fc38660267a1e9dc829d6c2fd4ff480366912948c02f86b86a1242abf468afedd4089d12835ca7647ed6c418003038d5c955d7cb227c001c45909dab5e68ad95e32f2f3187b0a97202228ad23ee2d530a96e3ed5a301dd5b0a825fe228851d3662d6b1016120450174f1f3f59324a2c9d6844ad9d8ce681a6ac15fd3fb0dd82e4aeca04ba306a577ff8db66cfd0029cdb03dd92a9b7cc303f2e91cf8fe285a7fc26931e1c31ce808a79999753e4312bc8d31d1d24103e264c0ce03031297d691d2c6a5080483fac539a1b5b0a054a11e55bfb2ee90d3d3c7f2aa422577307074ff788c1ae71683440676f013a083fe0d1c87a211ebac3c649f0c3db452615e935e6c89d6240b6876b682ca68d840d72dc132ba2feac2370da66288f6f96d2670467cfa6f0e9203e681d3d09eca5dcb5d27c5ce990eeb434ef6fbdda95ebd5da47d452984871602cff3fee9480b8fef301581e710c98be160a4d6b341d6db74093105745b28e9c19165452a9a6171220716c9bc0c4749ceca2da025150c8dfe47e29ff075d312f9096935610b35cf4f1839282f82f0891df103001d552fdd3ee6496a8f043db62ac23cf3fc2f012786cb851b7abd306c041d4c03f6850c52929dc9e418e0371f784e2014cc5c7e0cf40c3c04044ff3562e524ef335556acec4bd08b97911996f032bcf397f050938decc6345fac6b2f4ce3e4db77defbbc512d0a29bcf91f6bc9bb869f09de5a3d99d13d1c5a7728ae4798bc9c91fb9b2acb7e61bfb8d1f4d19a7f52e90bcbbb8eec0c55941b39e3df7da8d57a74734a01d7bc51cc7aa2621ddb84ffa7e47557c415fcbde01b835702ec1c6035fe18d89cdf8bd749b203eeb63525c6ca16495324c065f7e919339e31074c57b8dad055e99795af5ebc96d934f2bdd1fda4d624f50b97dc521a643fa4c1a0c35faa35420480e7a9f4506e1732dd0ed763240edfd66b7469a59fa29fc353abf7636a1fd126cb8c0b7f0e73b4b06d8a8361272bd7db5140ddc02d6b5df5b478bda1800a8ccbbbe1a77d6bfe7d46f191359386cabc37240bfbbde2ec34136aa1170718042daebecea14834106af723b093d34c36161eaebc65f510f278cd5c481704d20c7213039be7335c082c19c97d4ef128546ee379185c51d52b9eff26f9db2d59917d7809d1b624017900ad953e7f62fa44ceb9e1842b4120c3727941baf9747fa5c87b551af876e24c5de07261cb7c1d0fdc8ab37e05e8e2a50de90b6b2e987508201afea35836768da2dd5de0f61bfa869c1f62fbc4534550cb61ab105291e6e29373f87f90b15836d75e04a2984514b190d16cdbc316d4b7a6ae099ba3d4d6eaa54f5b495dd22b1ed98243d37264f87e7fdc1c6d3a9b3cabac75a3fae93946f1af4415a8fe3b9b1386ee7a4089cbf522f4a79bdf8d3d3fd38a056ec331b22b80fa6a51b16c7b1f9a7da9e8c2bae84199928066f79c6c4ce1ee97a4c88f526430ee21735456e01cdda347046b5251a8d9bc3ec0903a784c99d7c92f36a6bb22ba1394ef3e4deaec1d4583679b2bbd08bde24d15a09b4ff33f4c1ebab46f3eb93e8ed9f5aa562e70e31cdc164d3d666d4c9a33b9be0355635de0c1ec76bddc3bb714f6eaee81ad4d7713a57dea5bcf8cf8a0ba83a32b163ba4fef15be2d66c39a043b1d98e626f7f5eba5f6ed008cf76a515b76f42040f11e871ea41e4d56914299e14fc58ede3957f8cc74aa7997019ac4c0c0e6bcfb47082ba41cd1f7209f483fe8bee559be59b00648fd8e39346c78525d39a0f556ba51e376693b7d3463247080d7bacfcea43bdada58cdd066716902fdb3eb7eec16e570a584374504d85266388f2499288aba32524c592168fc3112de25eb8a8ef9085992e2e3303d81ed7d8c276178442101f06d70d72ef894f64211051fae91f496a020a337e55fde5e66cdf372d5d99425a5ff1b6289067e18e5833eeec68748b9e4f59516864580b61f2bd41eeed0aed9fb6b1b80d2e3e28ae255a8a0aa7525d68a1317a2682dc2a90c9cf52bb58b4c5aa27f787b215a6052d6f834242291599ff2b34b4153063cbf458292ac2c2db51d62f65e939991da150d85de9e6073b34fece238b94d8e57b4c014568a93c5d35652abffe49e916b588e73cc2f29ac4aba8a330c31e43674583c295e52a7cd60828583fa516efadf72bfdc5c6c80f02df6ba459732d27c24860b658b7336ffa531e30427fc3d4111f3a7a14c1bfb98837fa2a2e5222ea36ecce41f31de23ace2ed4871521cdc53b511457acbd69fa15136542ed44c76326b4dd9118334910bcd0b1c9b01a9a0311ce8e3f59b0f993037f0e84982eb7521c815ee3b0325e58323aa8662efeaa1ffe764c2c09d638ee96287e203ed25c6ec425c2c6d3c432cf53021beb8701f00626d705a056e50cc9ae2b9295b5a658cadcb49b8432be640baff58d561f54701c1f1701ec82cd550ab446210d80345310bb34195c3e801a85406bd44ec82d9b50fb0af614a0cf4aa008d5b7f37215042c534c599c80b46bfd99cc12937d7cc5a866f79d5a076ae9b12b87263249ad815fa930487227c62740cc43e0e9fa9ef2dedd28e47427140af5fd82918e4450957a37644812d50a4fd5fde92f27fbb24a8bcd52be2f3138a3533fc14c0b4fe73473b7d3cc5048b51d34213545cee18f3916085f579937c53ae5cdd450de048833e2f7303a579da07b95392e0fb749c9e24b38687bf7106069b232c5234cef4c5b44bf55bc9fb2ba62024ea5410ca7a18c842201bc87ad167af50d12dec97dd308d2193b3ecaaf279967811efb893d1663fab395a9db436c3f4a95083250280761c1dd7d383b39589ec2f755fbf8819ce272676f3688bbaba01a605888e269cf307cb067fadc4d955c960ac7cf382318f86834ee8401dfc156fca7798cd1062af43680002d31f5f789eb1c4118954c2a9d539609e40f2935676586859dd73035ebcc3208b3022a1c7d116e94e1f615e3aba3147afba508a719db96400d4a7d3b3b3419e409873b3bd10dc0ec898f6f6846737a6d593fd3beb0523ba2dafc48d79b4f3e35ff09f05ed783382eeb4f6ce81b5f403c5bc198a4b359034ddb2b7c336673b6986fe1bcb0af7fe2bc82f9e7f0d0b448730da3583d82275a887664e61636175db2435be7e85e5fd9c45bdf9988b9645e062946068528f2a5e2631a6e7fb296c89812eb787ada673cbc504757b54e5f4da9f122c0e7342f889a8948aa689ec64f98a94f34f64aab590e90412e9554e3f8b32b40e4775513e333fd7bc77568473c3221eb2b3a09f37dc73d503ec151e42b7ee4199e2242c8828642210b48321f96ce35f1d0d1508ed195c4a45106a52712603725f8a6ed87afbaa0803c513bb305b95c4122e59e13a135ceb29e2aca88ca0c96b047a2dbe70966c417830c6ee1f9d13682db9a90e2fa30beb5f3e7d85baa014f5af18c761dfce0a3f96271f618867a88cbd63be01c87337821b36a2f419a48a05f0a789baa69683369d2aaac43fd27a725a6d7d44db382883b65387b668adda1e95451e5419e4a04af7373c905fc6098a89d041de748e62c72bb8d91f1a9953cc88c7cdb5413576162673ec2db8cc16bce79b8b74ceeadaa5330d0d7be8a4d3b3aac0db85a0d7be6ba47910b3c53a78d82a4dba9c9172ab73585ffb7868a9240863ec9cdbf57833203193417d32d7c2bfee2758198f448a6a670fea9a1bbe635ecf513ef4de2291de2de6750185a69bd0eed152c40d2589fd7cb34dffb497fd4296bbd8991a2167b12e97b3e01b9b4aa26b79df4347abd724e5379c15249012ca1229a38e7280ce54b804b5c20ed010c60172afec664344fccbc72a4012746ea7de315cd670cee599e137b9c96480039c51c5dba8e9a46067d9232ef3a18ae20c4250690cba1d4781dc7e75bb48fbe0e4b61e2e9e31ab3615ee3fc530afef1f488f8ff0302530710d61d51c46be811f7f92f3ee4e4ea43d8cf39ca256b461107d23b1e16803ece874566cc3506cbdbe440d017f88ed52df11b56b70145cad6b95854cc497be854840f975ac04524a48b868cb94ee4777325b0e3f4401080c949ef1625d1804d7c02435ff1ebb349c7fd1251ce76cba32689f29b6ac4415222c0d301f37b300ee3963468f8744063a427303e8d7f6874dd9bf35df80744f47fd40af7d0efa1d630595d966415bfdf73f93902bbe04e488921c53486eda7eecc0655b7eec6612d943552d83112d9d92ba24c8d984b5f0916d7a9b0842afad911b4df22b6c7c705cda803ec2d9554a6c534e87441e02c3cd126b89af3b4514e80f41f735f109003d292d9ad6fb837903efea0df49ee930fa2af2f310a5f0f8a3c9ba0eb6746dcee925efc928a83d210f4cfa5ec2c995a6f53cdb1c7ac34e53f979b410ab7b1b7072647415ff2256a7acbe59f0ac6d18bd2d1534897537d5e1cd6e4d84d3a0ac6aec2fd56e4c40c7b1d2b72ba49612f6ced37606bf1a9b8fe1050fc914595208f85e1367b40dfd6d0a0e81d38fdd028a3b717d0818d327700471dc0eee21d39f392b615391b8346911351a70d1041ef5ae01651a3d3a0aeafbfa2ad4ec56205475bcb91af379f8870dd0816af82568f2456b51a1cc1dadd56b3c0be882c058cb24dae8a4364c6df8fbe55d70d664090a715bf6b6995a368ae6190e4db6f2630a3867c4538b4c06efe67254a416defeba2ca0d0af1f3224cde2c3bb5da067fa88a006a9413f3ed48f4da3f9030bad7984b48cd51a9ec9bab400cdf7710591e82fcda13f97aa7a985b5dbca603c2c276e9147403596e701ff6ba2c384f878c9d8f68714bf83ad61a7e873990b98cb886d04155c57ec0608aca6da74034c95d97c24aeb98f4afa04ab893e816233b955b5c3dc7e0cd4e0a0e10c5457b867a0a97e69df78b8b7df07284c6fff4a7924bd76d93a170ff33597d91a7a181a347522104c38cc934fd7c7732baa9f3194331744fb1cd6091e4c8865a93fa27e902af01d271012d057b99a5431d4d76be54468b07e501472578de40da6acebaba9f54c15bd202366b90de036010b6fe76099e9c39604531bb8665d976d2adbdd75227424559dbac9ce89d35a19888479268e0f5bed2158ca4da9c6147730dcf70f44909f6fb203497bb7c80bc8c573dd094d08f75a42404d7949530fcf8ae46117c3e99cb324ebdc25c5f5255fc461f7b552e2b85547ad39f286acda8c87f8f0dcf7f144d7cdc1d9e622f58870ea8bd74fbc093d6104ca663a830dd391dbe10917d5266ba6cd396ced8f71795d69735e7893381c4b3749d6f9c84a455749adf78f57ae7b07f13e071eb35954a07b57c21cb7a08856a799f2eb23ccbb3ed10a7ab4bedd954096010f02c47895a10a6cfa15d0d3f69059422ef36697b5de26104e2fdbd1306afaf1628e90ef5a261b14d7abddb4cb2b0196af2fab60028ca9f95b0b3b22de6eed4825260482da170210433781e34a281d33cc3ac113bbf3a59ae2c9c40392d98a18dedce38e5993f8b218a2bf491b886076a3a992228708998149ab136dcb5ab52d0cc24d236a81065c7b3de1d54dfb248657d08b546716decb043c0f41824a1ff1323da6dbc994714ee5c4d14a937a547e5c59877552bcf143929219c41550f0224fd8c2b68ee6abccc68aa81bfcfab3982cd5aa66c79755e96064c7916c37b8a45c03b5955a894e4b0af9b6b6ca8638da260b49fa0313c1dd50374339869a2ef9d32642744a2d74a9175b9609d108e6bc3ecd658cbdb93e872c25cb7b087b8facf546ca3349020477623f34fad80f35a12416d27bdd99d45ba570a6805ebcaee05a50eb9f8a90d4d7dee8373c195515d2012e9e598847f4a31f9e0dc085167466ecab2e5e6fb968c96fa2596b279b269a36f10c2ebf7013f199cb074ca44faedce344fcb52c006f4eb7c7c025528641443c70d96f09209fe83fcd1827872f6a05d0a7e25274f34b93799c691750bbbda884773b9d15db47970df21488fd04a94d80b34628affc2bb08b7adc4df2ff7e7367959d231ce17a0ce8301795a8f780cbbfcb52ae807ee40ade08f01a35f13213d17c0bedc74029096e672f759680aaf4d7c2fa8e14d07187c9029927f747cc94fc6aedf60ba2d28a844c11b2c13a5d72a039a9da3821b306cab1cbd4cc3f5d542ffb1935d8bbfaa7af64ceb300dc7784f903b9ad470c43f9404070763e02be1311ce9822695cf22eb021e6f33006b65d5bb2fdec712c01f6d39bce03e66b24c19de71c245995bab9a0fb739449ddd9c88d08de9a81d458071848904f39af692242a3cf137130938697a7911b40ef641dc3d1c43fcffead31534e0d837e65a6ac869a32260ec124d1a2c92534e1621316bd431ef75d49810734f97071b54658e68565af65182d9eb20472c4a2b7a8283c82410de83990d6190d291636f4ad7365e83c1a58ebbcc975c296e8779135d6d057296dee849b7a23e1e9455acff97905ff3b7b8012ead482d4b8656ae4fdc82b4efc0d8c9c1c91146c5750f029d9506f58dc85501ec68bbbcc810f8fcb0a69012fd4f06b9b104fd75959fa0d08d22707fa9a49ad8dc1a5a15935bda9177a91128e3755f3fcde4ecb251d919e393577d05fcf5ecc07284be7f9ccd3bc41e070f731c0b11e8a52a50d17710747138fc5a2671a956b239488ab64266704486729b25706b1c72a913dc5dd15c787b454d2db7c898a834547a9b7b2d7536a88b2851a7ad8440822fc06f503a8a9a250e018ac520f796c5a2585239431514d97d2ba0145d52570ea9b35ebb3c84647cc6008f626047372fbb5e4196ef7668b281d869a364d69741bb8b208a7ea17b5ecb89947ba90def23e4ba50cf795353e79d0e197aa22fad64721f1e0eb64b5ff639b288ecdabc94a9eed30f309160695f75767193ed8cc0a64d8e8b8352b94b19346e7748514557cb97d97f15707d21bf437accb527dec5c39e916a9fa18550b646a2817bcbbe481b33d41a91f6b4c4a3de0b3d2a0f2ac0655040e34d0481c06d74c2c83b73d380665abf878149b7f70a5518f0132956b78bf15c91965d45bfe6c92a0be5d6ac6ae747e43ce9d6ffdbe1c085279160d688a57968bdfcce73e3b24835642b43b4fcd36afb3c5988a0c70568015419eb5111cc90b6fa3c81052ad618b5ce4087df09433ce57c5e2914dbd7204f24f8d7c299752019d76fa0a41d7a258e77f10fb01349039290af478844dac20525164d4853dd3692741a7ab08429c89e37386d31f8fead231bcb10ee7934337afc76eb63865d872b9579c6b1a9bfdabdf1a81274e41fa6259c897a15f113bed9cbed7335e93adb839ceb6e87158043f0b5dbf061d2d4510ea47663f71d6ac8c3d96910a24bff3f3c6cdb371c86ec5b2b9636b8f65e928669613ebf69711e78fadbf6f1184d0e46d35b92b78d770d8a07c2657bf4dcd0b1b6012e32a038b3efe2c0c6b6cf0b7973c83a866471ace0cb5cfce4516c0a997947a49c6e974ba1f15c7570eff68c99a5ce6e91af9271fee24ab9b390060c9113c43737b872ec9ca642cc0d30f06c868b0383cb380e4bc04d55d9c65704a63f48655ac98ce221865ac2cf87c5cd95b0f94b504d2855902a0086b7fc0656655f2c86ea838016ebade5672c773ec15124859764a341bc89286e04c260d0e59c3fe73b94ba12bf70f41ec66a4f2984f51dd73cd62707383b718ce77bbfd577a9cc7c4428ee8170dff4f6f42581c7f6a73353fa60bb6c4cd0e0d50d2f86aa6e669bc27f13c6bb92646f3a990bbf4f8e93747f471d4b7f1d8c2b2f277f19209b86e62f5442f387a781a65401e270b40effc43f4544cd85474825fcdd5e31c08390bf1a2c729e57520fa68d85b9889c530031fd1f7c423756c36d2a7c1557fed5b38c4191ca86fdf741f6826d2eeeba47a1e7d7e2a594fbc343cbe3f02d2a657c10d041ae0ca13306a50489cb40c922e92b87348d2975b3e8e45683fb9f4b36f2d11403a6bf949bc1daa04cfe72bf428cc340c6154b4f71779002a9901914828697a2dbf9146ec007f73aabd78ff80e4219da022e17e4255772fb4872c752a5aefa82efb348780ff8002b381f2ac9e17f547b3840c75274f8ba4408c0ca0d9d6f3edacbf10d5e0144f9b3830395b2b4a42f2ee786e31a291c381eb416d623ca684324cb0262d48bc6b6c8c4a31571a71c51f6681766067ccb0c7ab9e15e9e676cc576908d508b1b87b55603379e60fea58d2757bc8c780f40a5ec29feb4d2c740998e64dd6fd0c12c39b58266687478620594963d4ccab6ce32e9deeccbd42ecbf0bff7de332d60a4b0ade75fbedaaed1cca7a9f9ae0bc13a7c41e95a25dade74a620edc5c8e349863ef37bd8e5e0be4d799a4ef6ca4c796b605263d1e989c5c76dbf32bc8b3c4a9db8724fed1ce74c8188a2a8743959acd7c88c8bed387f3d54bf40f5da1cf8d1f0476777448751fc52830ee94dbb4eee1c096ef02b04c7899b32bfd9206d277bc661a212bb14b11a33168f1f1c6ed3410ca4da9b36a70ce0b803c993bf8938f05124330d0e30425e24825f16021380f2c496cdbe13170a057a4336a03cdda442e82b86804ed0f7b4d7bd269bc615a297dc34c80fea3c3c0a4437c512b004d8bb833c3975e2a8717e2ddca0ac7d26d52b3148bbf443c1a2c92a44d58b147a11c588fa56f01519561a204a0505255c147896bc3f49481a191e419c5fe8d7d90bcdc3d28f0f03f97392c7829552b655c1c5c90fe23658a437f6ee571e1d4caa920a6123d26e500487faebd9104362f41b6a2e835899a4d09be5d6cd461a1a23d5d1962515c7a27323872ce67072276e9d9067ef8e7578b108fdb16e87d5ec98b998f9b057c931fcc02d8e804ea08273a45d965a04add9d22f1be9e92996856a5c2fff0a83da1690031106d59b057947860feec3bd5e96ee8af641a8b4b577fccd45d879739b8f7d6e02d164e4b52e759c62f01b288b538c888ad0c11b8fbb74806f6853bd85f72e2fbff245e499cf3779d4a0a2fd8b7dafbf3fe494a2246a513da683b4307b1106e316ae77261e4d4e0a0e6bd961d33a5ddb5ec74923eaea3cbc5fc0d438527946350f3d2ea8200ca4b85461d64d5eff9185d1996e02c22e16b279c3d36b4effcc79d19e4afe8f432abe35df4645fe5803206a2e7d4b4762196acf6a91eb9a671f9331921ad791b4b5136e7046ea0dcfc105bab6bc55cae937468d6b28ba10569d30f5219ae45a7b054d14e512de1ed8baddafea1e02b9d0266ad613d1834225a51b4c3353f51aa66b402137bf5f28ea27ec603c62b46f249acd4016ef977019fe0bbad9ecd5b60b26a74879256a5821337d851bbfc944a15d17d5dfd2bc100c71a8f53a89e4e005facd3825f88753a11e27521bec8be315c065487051db1901b60ad581ccba2d4b2ac4f1e40b15876ecf119a2e10a908cecf7d3f5a78edef389db97181cd87eccf65f1adb8c39a9914f10b04a68a390ed477f2914e8d283d496bf197e75696a149cde9f6785e2fd5be8c55569ae3f3118ac274288af3380a139bc16890daf3173dc62e1486429ee3f8c0c01478a69eab0ae097132bdcfc2885cddab202187353a60d7a2f67365113b4f164fab6a5e52a28e72d2237e61999e6adb56539442692196ff7dcf5b8ee156f04b6890f1bc462ab234578b6c6b049822816be1cee9d456984619231749b19e522c93043039bdecebbc10acf3ca52f2bccf851e55a5bd5ae5fc8072fbfd3c3227fb8568c7310ba77c0dc2e3f65b9eec04652e4d0dc5a80773a0190ab9066d74fd6f227930c53bcb080dc1e5e03de2c6eeabd61f8130e47ee4a66ca15798cca70e20c2e30e2a877f32452078b54a2c13fae97a3b0a7c83b351bf983034637b5af3417d82e015fc45cd88ffaec24298ea64eb1f067a8e2a443519ecf8b340c885a6164244d572db2e5bde86144d149cac25583fad12a0df32256ba17a25d6f4cdc69bc18adaefc51b56b12586858d47e8458f6f3d55c209b822d60ae46ba4e60f2ee7f557109855b77517538a2a95c8d593df3ae400a79f87568f8acfdaba22edd471bd9d6c093928e754c5153742cab88f052004321acf9ac206a567290e693e3e2ef00b98ab87ef536c707dd253349f8b88fe00059cb93db7c4e8739b6b60fd4c3c61312e55a3c1a8635584727de28ba1d7649d005f56e652c07ab195fbe25b01a65e89388d5f1ec3c45ab3f586d86b5a82438c482d62db1be945390f5e82fe78ef8ced828d9443484a25b92de5cc4577782d19d35a8b30b4e2b622b55cd157eab5cc8512c9ced883737d47dc55a66331add463596ec78c594289dc3b23067699172a1ac75a9456755b1e458ce0adda8205abe2b96f8964eaade0988ada2e0e6c950480c1999d7098fe3e2227e0e7d4e1417c6c7ed793c5a0ced5c29d5ac703f6db0ea4b180f6d0fe38f55940702a332c3170d80c931045bc1840acb89c75003bef15631dbf584eb575ebab24d2eb3b9566835ff7a92f1d2e48e5e9ca2718adfe116b6905acf0dbc3d08d1f30dc761fba6275005ba755ae3f17611b82bda7556e0cc05382c07bab89bfb7b545a265a7c90076efed29f516995fe6c42bbbe68d74144ef70b104f69764ef844016dc51a061facb24efc7f83c8039da7139fd19677ad6fb7187cb0c8da8a419950b95640388d8653ea97b7f61650f208a0443c4b4d2b1d173eda24980e1c49a188f082fc078442317994180ab95e0b675a1cdc3a998517fc6572d0582836bcaaca222ce3a0e632159858c195ac7140b36d4ae5ef4d507269da3c22b39af7cd1f688602aec11a5d9f9b88c31739f4f323ad6d948a18d9a34d723c42b6d2410c9cd0f96efba0ab98b9e06705b59dd5de61b6c0f53b2b6d295d04aa89722b8e824a303d14eb65f40195ce8968a4d47308886608c93ca3bb898a7176f7f6d8ea706e2b050ab3629b729d54b6b9b37359a8b5afbef79db91eb51d0fe2b3bd136a859985c69cbe8cba65cf1c1157fd1356d6787a0cbaca4d1636d4b51c6cc7fef6c03cc4c8e71c57c9a33378a69fc270cfd25e1a81db8efa5dd89d6598a22d1a83ac79b5130da9ae1e2db5414132e43450068b06812610e428cfe2c47623ae18d685b993c49602639d0409002100a98eade2da1e2b6f8dcbda5c3a733ad162f2348c325fa2278710c8155bfd29ef37fe4b29079f73bd5eba8ccb01fb518bd1b26a11b43a5f4d299324565095486c015bacacec58588a7b5ee59d20c46fab4864462525c142625059bf574e7b5091bc97222b5d2833f5fd7073fa02152ff6740122985a4d2bbcf99815eba4dea3fabfb99d0c8f12999cfc3cb131b9f0885138f4692f73d5bfb36dae35ca651c609c03f04b76d551cfd37b5c2727f001010461046a19539e5a2056324e07f165cc5683b76c432f2587d16e3ece154649619e767972f18baa5f7b8cd09c283c4f5f0618998121ea26e24d2c0c4000001fdb92485da4eae66c094269f168b3d1fd22978c4d36d4c17e0bc14df6de726f29539229db09bf09ac0949b757b1dbaed877452723446576414873742b253333333333334766e60c0a308ca4bf2935be373bd06d8f63c8f86c798667131163f7b70ecee694ed38c44dca6ddb9866364e3e1ddd7832baf1b51d2a7fec78b272994f52878e6fbae6e91f962a6712b903f8eeeefebee5e57c399fdf530d7acd41a2e698a086348c2ccb34cb514a29fb0956e2127b7cc1389c840592965896232c0d5ab9fc272b6ae4a12084aa044d01f289309e264c1afc095667f14f25491a647a240233c8108391222e0869a14129a5d36489ed72661addb8cee4c59c2a4a668686460d1ba99a1b2a1b1c3974fc670170b30a800040962916d1ad124cecae01e0f0787e1d77112073a188916e752dd30c1d81239da45ba8e7e767d2ad99679a671acf359e6d3ca79e6b9e3fb2ead9e6f9f43c9febf3c7a26ee178cef1fcd1a85bff0c80e79be78f59bab57a0ec0b3009ec1e78f5874ebd3c1daf1fcf10bee61c27309f663ce09293c0a3bbec96009cffa2283253cef74091d00bd21f2b25e00de0b7d4db05c02cb863dd77e7c1e041080f7c30640c767c3a0b5df975ad94400fc686e524704f05500d02409c067b255c9eaa39f89c9cd27df3601807d1d9ffd6cc873757cfccfe10d91578795392ca534272e8c30589f6bd1e92ba2e262e54e176e2419a93e21355860b9f1b590423aaaf9766c68e9c992fa7c3058bf863764c7c6a743c3470b353e1e343a42687c39333c5ca0f97630585fe69473eb0419ac8fda6124852fc5acfa287cf5ab37448231e47c9459f54ff89859a77ae4ce67b07e8c37a4ded3736d82aaef9deac9863c03f8703ed38f22a914c8e0dc61e4fa73600c31df6f3732789f0dfd194c5f4ab389c0751a06271fb9fef1b9e90d99db949247d21e137aa60ad47b185fb42b224da422ae098c1ac6a599999f518a5f74b33f144ae6a5cbbca4f7f4cdc8d4f7efcfbfcb399ddebf25eef2b98282bdf8fb33edb8fd364dd4b0fff461876e93ecb83136269d6c440a02c9bffbd4335af12f1a4da96107c598d571c4d19d61d6adac4ab7b46e65dd0d8f8c1ad25b64a55d2957cdd77c3e57b6c7e15f57e8472ffb2ef6276fcde7a3fa1a99fda6faaec87ccd87c3bf6a6abe2b3331fd5dce0f1efd49d4a36cd8733be7e63458ff543f3af3d1d40665bca8a7d741a5ce74adcf5363555fad911b5ff33596e74655c9b467c3afaaafe755f3f5bc545f0bd10153a99a1b3a457c72581cb63aebf42aee247c3a9d7ec7e9c77c61126ac6e52d5b146dd922e8e2a00a1640381a1a3d4532a87f77a1fec6576dbcaac6e750d9a8615530d43c8e7780ea735827375ef538ac932b4e6cbee6f9558343f5ddf8aab3505ff3d97cf5431e3b7efa92b012ea847aee72519606fdfa79cf650f451b74ef87cccb2bf3a9fc65befecca7f29ff9c6f2a9fc558fe36b3e957fcde7789b4fe56ff33afec6a7f21d33a837febf8d3ac85d387e7e0bb92bc7cfefa159f3aa9fdf53ba35f3f31ba85b323fa7cdcf7f1d393e1ca83fd9dc50d57cec278f19e7d45fc8f38286b2d2fb917d7fa6a7a936e42eb7a25032af3abdea7b5e353f23638bf8d8fc8d579d5e6579aec83c8f8d559dbee71524635596e786559d6c119ff93daf1e72d6acb1d57724d51c8fe3ff9fe78a11d5db3ccf152335af7a9e2b46747ccdf35c3172e3dff21c71d6fc1b6f6379ae18b1f91b96a78955d5581e1df64356626730cfaf1b5665abb3eaf3ab6666c981a3e7d6477d4958a97e472dade9d4bdf14d822997b76c01ab97b72479b95d34d57c3daf1bf36d3e1e3ef5c6d7a8be9e57d7269bafe775e3eb79a9bef8aaa9b19dfde933c57496bee963d2cf1e675543b68fbfcdef201a9caf7d5de5eba006e7a73e19a51ac6a50e9ab363339dc38bcc09b340834fe8671a615263a4c4d0611d1974b8e5cf3d5062b932c0ac185a7193ef134fe832c034ccf2c9b2f761135396df9d32a39f0fac2403f15b88db8f824eca5d30302bfe162856601d9da9e305c541951fce8a592cc3171800deb00361cf9d364636d2be44e6496d582f337bf631993d69e43e7616922961d0f10dfdd046da7ead064db40fa442b4519742927c66660d08466071678a9a6c7ea02d81094283f27350e58753c8a6f044cdee049a42dca3bb0c06f7a871fb39214ac394e4c9d86da11adc30a7883037f431a550b71c084b97b9a11921b6fca0b4e587a4c8858a29870a2cf18b51aa4b7d33f53bed8d51517ffaede99b6c6ecbfbc83d625e66dc2f43b35465c228641a227ea1947f2302bdcc12f5521df64f956e3cca8cb2a24c2815548128b744bd44201a1a9aa7914383c6b3f3332b3e8d19d4c7ef44e30b9fe60b39d60536140b2390cce7cf9e0be92717f5d223e2498085b928948db0069ba7c93701c6e9d721821a3299377e016c7c4725dd6a5e9a00f708c2d7ff6d7caa0d0a9a5afd6d7c32342b861a43d4b0af67dbc653a92068c14284293c0dfae046fe9278c6cd9ec68cfa57db01529feb220043c58b94a50c4a971b623920f500c4938f02f270bd7fc8a05cee77fac9f5257e2dd04f2e674327616e927ee276dbb6144fb3fa6993067b53e26ee4d139b7dfc6876a0344cdbe8d4a8db65fa78baa08d4ad39e5f6c7a36e69f1015344bdddb14b98206eccd2a45b7de5f67f21d252eddc16906ed7a0c6fff865e3e397918d2a6436b549a794926a195b9796efccdc99bf3b9fe75f2493937c57bac5a28312b483a0970d2c64c144ec458bac349815c18c384ee9568a8a8a707811fa2216f54b97ee2e3597d3c6a525d1cbf56158152983c2182a2a320ab2423f9503b6a7bfd90e744fff2fa5b5364c36aa013fc0828a2016dcfed03bf914a9025143ff61972c626f49267cc8210a25a624c128b8fddf113574585fefdba3dc761e6efb0f31e616e6b086817156fb9541ee92300983d5e852b9dfdc3ee11e9286a6a16fd8b0278cd3448cd32f8b6491b4228da4920443629141528b449249f20b7914d4ad5012492198acd2af4922eed1d77d3aa60787b92b0eb5eccdf2c417db39a70f90519629b020868ab0045d58b7c21803f281c56451944541957bb0136a3b401f87f8a26f55fefca25d6f106a83378039ec6f8831b36c82915e3520af04f1e28b06e681105edc2883d0460446d7b9b8fe340828d7bf063183eb9f126209978d23da3b50110cdd1c58b0459c215c29b31d5ae0f406882ce814710609756bce2c736a993be01ed963a9566610edfa0250b9f1270fcc828f78427ffc3905bb786611831b670d6eb43fe67b37dd5b40f6d2aac4d8d15b68d085f61159b80c860e788002dcde619cfe1c70324a7d2726675246468c7ce6cf80220bd2d2a578420edc235afa03c6710abbfcdc5c7572288d5ebe859c15e4c55bc8ffdfddddbda452b5ba096ae8b09b01f9900626cc8060e817fd1b5ecc04e6baf7999062ee32257da54e83bca16702f349a97429b2e041f103eee149c138fe5e4ca64b0d3d2477b1a74c48d73fe46ef02b855d26664516229f00855b1ee09674985311bafe8a227ebf628c361574ee3e8378efeeceec835b0154621003002c43c818d1a58e6f4297974bbf5b59914fe7bcf45747eecae8b3b8d430ae9e308b3e6711ba3797554ba896a8d299544b54f7d50f33b6a69cc55567d16751516786bae50ae36760ee7221398b3ea516096906f68951435718977ee842baab954fb7e8bbe8bb90dce5a2b4562418f885da5c45ee92799af26e6a8ccddd5c4597b2dc8634f7a30d6e6f92f94ccddab655145ec1b8070b97fe0a88c6d35fd1151197ae7eb8f4573c5cba3a5a215dfaac1c5499a779ce0be25db72b18e3d04fcda0ce582757ead3b0918dcc5855f7fc92b12aafd6080dabeaec2bc759f469accaad03b497b14eae1891f9ec9dccbcf60ec89cc87cf6fcda695696ea82b96b88d2eab9603bcea23ff3d5e84cde0f150cdacbbc11cd48f645b6edc308f38800e06e7406e62caa5aa266aa25ea64a9a0863d97fb7006c6bdc3be6d6606d620eba872276f7bff549b5dad7c1887feaac61375c678355a5067c77d16a0b9dcbbf782642276398bc433d9213e0374e96f56e59133b279de8fcd16317d327c317841391b0193f783b33334483f3b01fdee9bf169905649d24796fc554a98344869d0a5602e652ed123925deee3ca875b0135487fb32b5883740676e9872bd8a53f03eb563f7d971799a3beb45b4892d0dc97de812c62d79f8958ac5b959ca797085d7f0dfecce506d1ae3fb37fbcfdb9d398a840799ba4f0b6e106f84df052e3b37f77fcfe6ccb19f6872c39d52d4d1da5636e713451f769e3831adfa537476e0ce6ee6e7e2d0872ce19a7cca6f4ccdd3deb418d3f3399691e397ea9f141c9a365399a0b726c3c547881eb1f65b6450f03336e1a8809b0e9316f18bdf8ee92ddcc833a339969aeb14d8a03a2c6b7e11e5ae683a669da3783da0d51dbe5e7b73dede5d75d08b02b6e1b0a5553f37d37e42ede2ea30e5a6857ea003b9185edfd5f299dc8c2667dd0945b669c4c6a9ae723b2c0a9dac5c7f5cc2e0112b5dfe91e2a25d53eaa71ddcb5767796c7871360a65fef38b45308ebffcb2222388e013fcfd093029b8fe57ae97e0fa7f34f0df864ac8a1841faa89c854848019d44b542eb1a7fd4e5f914b4b9bd7ee6cfaf6f54b2eb98b97424f2eb177db2d25da5ebe361a46fce1b527e79cb3bf29d4e010f58c1ad28f06734882519556b8fd32708f68234308aacdc7e0aeccd6d4771196961adad0cbde8dc14404472d26ec91618618946c2aac8a6efb6ee7fdd371d6f6f2cb71d6d6dd18a26a1fe6444d568063d011eeb1c2dd3e49fcb91b9f71375309eafced9374cbfbed9574cbf4db3369d22dfadbf3748b83d54dc7e634d8c4b757e22ef9dbc7edb7b86dda26f34ee4a3de89bfccc7ef3253a6518059dbf311c6d93e3583eae44acc3b41bd7c272aed7962ac119977abd22c513f8de599b129676def3496e78ae967ec15ee3f5a31bdf6cdeb1e11558c05d2b7a734b87d2c6a707bbedc6b9ff4ee5683ead0ddb6d73eac4177031bdc1ebc9b67ca6883dae59e72946544ddb8375deeda24f31d71d6e6250a31cef6dcd7ddc87d7e8fb82bc759db53baa552ff2018e6dc1918677b2e49839b9206b7e7ec9106b7edf966b348aa116dee28ebe6ade671f00ef758e1666fc33dfa662adc0ce766dee5cea8b5c1ecddc52c847bf0ad2cad8a3ebfe4bb55514bd4ef1f3f4c05d12e7d4a6d584335000841d8940eeafc307502eaba8eceee1dd9679c9eb167ed5c3aea1e594acdbda567ccce724a6f31bb6b3e78e44476652fadfbce9c314677778f31d2dc18bdd21863643e41e4ebed72bb998f1e770557eb7ad8dcddb4cbb73fca1db71e5c6a5141c933338d4eb945e73866329b393c743c27a7ab1229e5cff099cca616d9b4d1a24ad905a16bdf62cd42661a9d7493734e77f926ee56e8e3f2f3e89de9ddca7e73570ecdc9e19183028393c8f58f59f3b5f98dc20b37cbb2ff213f66669aadb26db298312d68658288635a42c6e232c1040aa6abb48415766d53a86881040cb6c42f11849432e84a8c4c2df1e4cef7286028f1812ba1b8522a9174a511962b4b28e30464d45831ba3144dd2e67b4a84d95f2609a2263ec22fd272ef6c9767fff53dbd9cd6a60df18a26a9787a85cbf89a8c68f6d84871a4311236af82f854cd9b30c6bae0ea559add3fa11265f6a1325a00e6aeca6d2f14db4417c1590be1c3f3ee156aa8ba83aed8b30c689af8ab1f10983f123ada9d4f6a5baad540731d17fe854fd7c59663f38410e2d3faa314e730fbe4374b2fda7f7ec96eeedde73b60f41894ecaf6f6381947cafed349ca67e9d22d964e156f989bf8391d61450e244c9003093350d1072828892950564490c327892e6e376f123ae820a1053c62e94a5980ebcf474c6931aeeca2a604954566e4f0e0448a1a200b95156437454277fe340196841b57bea452e670849452b650b8338b1cc82d443834813402a1986f0efd2004a3d7e9e357f7830727ae89365185be5cf9e2c66bc3493a3e9454b9fd4c581671d7579952aaf36318708a1ab29726483c4c3e173ca9d3e00e0e206a188b74765ce816cb30038a8a9dd7b9f35d27076c67a7416fbfa1218dc95d8aea1feaf8d8699088bf6a8894dfd3b96a48fce93e1af4e9993e264d224c4883e1d38fe6f2a0a8a85e5c8619b213dcfe24ee257a51126388bc34f1eadf1162634a41a78548ebcb53b3148bc85fca5fd459fe27266a18611d12516e8822c2fc3306c378a3fcf8d1dc183454c528045858a85b4250c515bb8db2b1a586ab188f1786166418117ba1227d9a58eb8d317db49dbcfd2b2fee9af9f6aa578356a919d4286d306b50c395122b2556409bed6c8d2b20776532d4b9e12a16a6c215d06acb6d9dd5d1b7c2b2d241440df2f225898b5183dd55bc7c49e2d260bb8c0da67f8876e9d32d4f045dfa040c54ca5652fe0ac85d2b23ba326a7075d445cd3e5c19dd1596d5d18dee5746bdc2d2adccfbd199ba1f2a18687ee61d40336379ae18997999e7e17e934fab26f3993ed37b9ee7b9d073332f634f05c3cccb7c0c3356c6c6c0cecab40f57316d65f46e6516a4cb5bb21cddd3e52d598eb8b1b5c2d260bf8c5399ef8a7c999f79f6dc06355cc1c0917b44bbc2c238fdd1ae8c9ea8d4c65f19dddebe78635052f4126494f43a528a60848e3a8c41415de2120c68a8288674bb0b6c26a88ad06aca8f22291ceaca8bb38238c85760ee2ab6025a01754b4ee92add12f2fed550b7e60b6effaa08ee116f5bba8ab91b71b745a20d574932c44069ada9556c9ba14b9218ed91a58b0273c31512bf506064ec2a166d6ca9ab18f760e1f6af90b84776fb5758744b259f5749dd8ad602345789642276e35389018fdb262bf8563122ab2e32673c3174c3556c35a5c1560df1974cac826e07897705e4b3e527164da88fab90a204b0d7cc29566766fcc399a0dbbf8aad806e10a08c2a0393815dbe610c5ac55450a350641dd5b0276805d4608338a8e10ac8061070007bad80ba65019aeb11914cb8e0ba45e243ba36a13e6f150b5a05b2724b93ba8b5fdc524b4e08ec9ad30cb7f3a8b3e966cc23c6692039eeb6c438f3a883cd22c8dfdcb315e896017149ee1f9e2297e43e83c718ab47daa423a54990b6372a9320a59ca954ad5a26df67149c6c662798405d54e1c6141884ad907131ee0afe3914855b1c5283dc977d80597d84d4ad0c88bb825b991406b9a32377713de084707b1e6d1f9e322e69e39236190bd44b81dcd5355c1fe2a60ca85bcde0fcce38403fc06967d02c46dba877969d3aebbac70d469e9a0d57b89d01015d1c3703f254cafd497f9f6049b767129dc25e2973e57357becff4973edee950e387e93aee967bd86dea2f04c0751d2a07922c0f357ef333737fd29f98b132cb19e5323fa59abbb7661406a5bbbbcfa099c54c29a57466e61974d94ea02e95a2344ea9f1278c71d81dc866c543c9a99f73c6e8524a2981ae9c4797fdba9492a594d22d87439665df8c534ad532a51c23ea20c770771da68d8c33bf6d9031c6b8c4185a30c718612ea5ebc0487a6acea221252945264a061d4ab9c7a2212529456e93f222dac559e18a62456418fd20c7ad2e3fc628614ec8073b9be8a5e217ff238d57bfb4b41ba54046396ecc12e3f4db2835b2cb18b7dc11e3f49cecda01461797853bb2823baa933be28e6e3f77c43df81493488091f305b08cbe94d4aa2451e59869355682248c6e4f302128c2a7eb4c9c476483e3779a86cfd390625b4db3ba4c23ccb94a3c59f333f077848344a0c1fe7895a0be511f521994c90b7b54b6165d2edbe0f2162d60b76b93ea930df6dff8f87e616a7c971e2bfcaed7405dff8d5d9de3fd29f748bd3f8f8b64863c762af7733e7b44e67339a0d478391bcad7fca5c72cfea671f969d4e0b7f1ecfc35c727ad8971383e8dafc6177697b097da4b19b75f26d1b96c8fcc108106dbeb241d6ac849fd9de601f1aff952cf9f8defbe58f369df75d11be2cf1f5fa6f135d806999f0a88c797bd8eb361b9e79049fbed28cd17c60f24d961f3f44f1f92181ccfd7fbc2243c4cdf0cee927c3ba21cbfd3ceccdc3dc77da1e9725c6799348bb34aaea0d9703cfd54fcf2f2db7c2a7e7ed9c8ce48bb9834cb54240677f14b02c14612e578ed2302fa578e6fa177727c4c9ad54ab084dde5f6cde37023df21a5cdc7a459fddc8547271d51c34eea309a71fbc34e126a25a5a42424a458ece8a85b4b7f631187fa1b4bbbf8e5aa53da155f1d447f5be958743b8b127771b7da8c2f60dc168a40ce608e62d6bf34d8ed368c309d065b47dac8028686076a9853695851c39cda2d77ddf47b0f4960f8697051c33874f9999999999999999999999999999999999999993932333733471b3ecb24742fc45711e1f7778ba49f6dea767508bff7c4d8a4e39b259bebe5ae701969084137fb41c4756bfbfebe3ca755d1cf3e5ef9d376d0abab342bcaf963ca4f49bf8a887b3fdade9063b407242e0dc6a07893f311048de61552353fdeb0eb73fc4943c307a4b1057bdcef382be685748b6adab6cd39e7a4a17fd26f8e86dd27d13ee627f58668dbb7444b427ffbe9693fb5d349fb16884424db6fefd647770a69b7b7b7b7b7b7b77f77efdd9fb68f393d7d2131f5f36c944ddd24eba4c9523468b7b5d3fc92d08f79cdfb715aa22d6972a910be9cedda24a45b426cb823e48ada2d6ccf1edd2c9224d96b2fb397bf232433d1c0a1168941faa0915441159197403e975ff2a3be3fdbc266d42512d51ded6aa15921c742f0829ed376a7c1d8e526e965a674b38a7b44dd4f25dcc7effe2c301f09fd96a6e9fd20eaa46c4e72f2055d6ecde52d2418bad19b5605a4efe5daa76dc3aea87fe5f4971e917e6a55d4e4114be62e3dd543d99698a6699a2663d46ce851a399d3d6af39f2399a4a247dbaec07301cc74d26fd724a1a9723c7d9693241ce871cf31e3620f439be9e64c79d4f3f24997c20e47cc8b1ceaafc8deadf30c7e8861ccb4965230002a88754401a8b191556696c523d445ffe508548d35863ad63993d7b9232692231be6655fef2deed0a0fc4a791440da3172fe28211c3d87157fcc8a55dfcaa561a8b96f8118b1883c15e212331e9aaa45bcdaf20627c55b9b1ad279520473ec7b2507a99d383c310aee03285183b64914196022a3b6c5c84d97105169d2bc2c0c20559b4e0ca9ca94314a839e79c31086daef442caa75b9094aedc72e54a2b7eaeb482065508e1cad77274721c06528aa099261a1b2a74b85252a1832bab78ae4205441883054708821098c8b0ece0058a670a4936373b56b8218f2b7d4471450fa460420a30aefc14962bff412d595cf93950aedc3245962b9fbfc0c10a2c3c4461842f8040410f31ef070f5510eee2296210030215502c010519df42b7e4cf2901a20f7491821f96ba78e2353326eea4a2833be79c7342a1b1b9e972c31d4ff480062d88c205425cf929172471e5833129393da0b0e89e4ff1a311757bbe165c126f0d8c93c96f2f01aaef41c37c2d014ded9269992cd1349b01e7fb35b8ca5fdaf8452eb059f15908f75882811e9ddb39ddfd93ca3525e5f57f52e7372bdad8745fff78308e8f606660fe7ce618ee58a2011ba4db70be330d95a3402aba600ea8e3a35b3444514596db4f73c3e3cecf6c0d7edd25e3c4975fc000e986f4b7f8e2ba9f9c526e7267ce0d0fee4187644fe90bd96f2fa9a673e7d790ddf935f89d9f971a739a081d3f6b1f84ade4c8ccdbfbf317c3dce8c567fa5d5167f46f1175460d6bf5548e527cc781a6691af7dd493524fef63448d5906891d0d0577bcd128996fa0389977e4598df5784fa15a1fa534ef31e482441cd96b899913f7d8d63666636317b1cc7b1adc1af67fa68fc2e26e6b998986de3b82c66cb521cf8d964bf75599665d9b66ddffc1a35cd7ace26d42e67a6d18deb4c5ecca9a264666868d4b091aab9a1b2c19143c77f160037ab000800649560c20903508107ebd35142b7709e779880420e0152c031e14b30a104134a6095f0e00e134c2841051ea000fe46069b003c8b0029a09073c20076340d8c7bb070fd8b18894106f992a92a93d244e90aaaf6d12059e934b6d42e9a544b54f909f8f116602fb1bb79517d077882ba55a9cf4ad7734e5e64195dbc323acb83482b2dd075dcbda3bbbb1becee9ca933dd6577bb7b3663dddded1efdd40473744d3a7f64a61a38a54fe9daf77f2bd5b8e72db5d54ae57f83cf2f9f3ee3c43731ffd430cc1973981ad97f503eb5419e5f68a2eef373dacd29bd054920830c32c820830c2dcc9753eea29e4d3946cc0521d1d4e08f315c908a39318489054198585014e33385054dcc68af3062b931de4c1f4ef4c0892468ee0a9498885d198ba56e8de00a90648c38a5002284c0e707e6030d76f0ca94b819971d847033ed665996652729fa15612055d085d2d109ae5c01ec4a1342c0c3d48419377b996d5101d2cd3229a5e42ba594326e71431a9b9b652980dd2c055bdcac09236e160518642469b20c98d4be644028a38b6b9c56c5143080d2832513644142c66860048e06411d1948fdda0c967c0ca1a889606ea1c150cb74b57fb04139044cd09c3bcd399b1701d8c013607861042e21b8e1064a5ce10410f15ac9218a1b5a504515439050f0c05980d102a6059016412f14f9fc60083e413e54a6103a6941147481299498c2840f928ed0032d5aa840c60a2db610414401769480280c2f39a87206182422f880083f68d9ccb29b655996c162db167df012fbc00b3aaa6533a3cf3d1849ca20072a78a0041551c620c12b6b2e6ec605194688415b04f48608548488a09a444b29f2201449d1924a70c5c70a33823ca00da16d190336a58b536ad3344ddb5ea08496ab695750e9c1dce1055308793b44215ea0458b27c587ca8ca13cc6108e18821620caf0c10d99145bf430865b3145131ed83609e0c008247832850a2313645158e1c3185ae8b0d9e782053a5c4d83b26d488848ca810a6640c58a1119145680a00519174e9c1194ddf0af69dae96a9aa6695e26025c0006361110039a7393a07ccd0a2d34f0404d559a9ad52c82008c0d40506b7db9834e96659996655986022ecde22f2818358cd49747410826008b4fb358d39933a8088e84333e4029a5946a4808a159a154842a5a14445b16511849f1818c54e3ef176e3034b78f7e375a16bb9a942138cba4a6695a0f9a16d3a588b90b2da424c92d5f8c76903aa89994cfcdafeee2ec3b4bbe949af613bb9ad645e96a6fa369d994525a6dcb0f193f643c7714971ea5048917882ec6da2de90db52be3748c67cc20a5337feedf21a05e0c71d481e824cfb8f2bf8a13327fa364746516d48719c416198009c3872c07daad25fc0538d99b6635189d25fdc3bf296243ca4520f13bff1c9be3db6f969a3ec6f427a293c9342925aadf8199c730c53d8a7296b3e10c97db3a2d7ca7fed9174e1ecd0ab98b0f35ac37edfa7834eb3ec849a921ea7bd970e87ea25024fb9d961f330a92dff93d5cddf8939b15ff47fecf0fb79c5202e11f676650f9679efb38ab664d0be057fdce64d242cffb189aa7799485827a9e9e172a8bdbfd921866490c73ddbfabdd77ddc97a9d5d323f8c41c52f82b22894fd91799a18bb647ef7d44434f3739399b15150ff23837af9853d46975a192831cceb4af628cd6271e3b72541ed9ff3511f575106857a99f83fa8d48fccffa0beba4bc65667b1f744c7ee8a36373b2acd8951b85c696eaa6616b9261b26c9b94896701f52f97c3728fe3c3d2f7ff971c0dfb5d7fcfd7f7a5e6e7fb2d72c5f6e239a9f4d1bc5ff47bedbc8ec3ffe3f3f6e7ba60db3a710cedf99be68136eb608941ed80b0a0ef1e5bdf73bfd4ad97cc7989ea7e765a23654723b8b8489bc4bb40fb9afc12f11074c9f79454cd6f43f3d2f93fd39bd67ed12ed2951cc6b5f664384c58682807c6e78f282c2615e4035af181bc5f46eb29604d55f7e94d4ebc7f4de7bf24d96bd7a4ade90937dfc721ec6428724fcbc6c9037f879ed645590604a0a5e364c293078cdcf2c0f2bfd98008a970d5304615ed372ab10eeb8f1adca01f3b59f57b22f88503980bef6d4ea7024c46bbe66b3b689a9aa3232a9f3b0145550c0c3cb06f981d7fc9e57ab007aa0465b2512ba23c6798f72ce8e3a246d77333a66a1ce89647a9c48e6d4a63691ccef213de5956dea762d9b31d3b2f98599966959f6dacf0f49f6fd31d36436b329352b3131313131313131679c50322694e9654c325eb5319e49668a3ff71ce97b0c724343338977ceeca7d5be9bfcccccdb9d282a9e08e3deb84cc51349dda2af69da4e914da3ffee92f92cc6337d3dd9acfbec33cf66a6ef76ba08cd6636777a4693534a298d48e8a4ddfaa4a651bf31f693a6261d35a85fa4b322918578b337926d947ad9da5b42fb2803a01b9fdb2203a1fbb77f3637a839e9b28f868c49bceedfd19734cce9eff69c7fea539fda869252cb7f277bcc12b731a36a1fafe923708402dc43eb9ff4431d946efff375ea676ad07bd4571b5c5dd44ed7f0d640b36fcf6888f744c3ed7ad6d42035756765ec8edf52fbd8adb6da2767648fc970745139721cbd1c3bf693d82e7d877bf8f5f86daf7ddaf717f67c4b4ed7eb4f45a491dcdeac44425ff04c8cf351a3ca3b918578e7b730a946a5e742cfad21a2900046fe4b29a59452dec82e8eba30bafe3b746ea896ebee21bd3c57fecf94f39d45c12aa368ff9369d994f267bce22f83a21bde445444991a74cba8068871d42d55fc7ebe59b2dc7e8e45d900318e1ae42b7bbc650dacf8b2c4189c0214263a822e621184da1f6fba4583fc25310cb8a35bdbbbfb7079c7d9f063be7813e05a421bf7528ce4947ef29a3ea2d373a797df121b60578bddd093eacdbe99fde55e4aceaab89fd6f426eb489ca5f474e97bef495f2cf917d814a1228cb22071e912860473fa7cae98a47c22f6763151a8dfc45bba5872d3e611712d0dd2c47c7c37af16a1861eeb207cb90f12fb6e7c42d81169224e6e677a7f930d9b48665d8b0d6b88378c37fbdb85d2edd74e1f9fbed056db82717cb3dae7480d3ac73963a8fcec732e0d3ab9525a4f621c7f256ae8b158b7b420758b83e8954ed332291d51d7df9d80c406c232ecb926cb0c02c99131763346d059f1c10883fbeff4bbb41e84bb0e838eb3e2ebcc4ca3b9a1ce852148f4dad9dddde795ff030341b83b6d10ee4a4b8144c6891f8bf8fcfc500ea3e60189577e77e2bb7940b6ef388e1d2325e7c9ef4e3fb6059c60d0aefcce63cff33c2f368d914f2de5d8b5cb9969948b990f645a2ede9e19b71a6c4137be94f93b0d5464a53cba4534e845d78718c7819ce5bd20aff4a0302b9a560b72d697430d3de8ba077915a16ec5cda88bc0494349dd4a4dc9719f06db8cee2fdd6134974ef2a13d4f2ecdeaff828251c3487d3123f3b99d4db9366eb43389003ac0322a3c707f66e36a5f0a506a987910fe33a84a3714832e052835ac578649a6d1a50d72208558edaf6e741fd0d4dd5de8b9fd32747fd331b3b889bffc9ff90440216415588526526fb4a1929fecfd7fa6747ff993d91f577243fef8d30e41dd282d330afc8a1e914884def836b052d1193f5cc0884112aebc78aec4ef8936c89e533e29dc9d7bf4a1e31baae9683e765c35622d748bb51c79914adc85c3d0b209eee0bee7453fd57c393f1a8cd0df2c0fb50b787e094951bbd32ac8e7978ecc01cb80b91872e83ac7cb387077ff6e18635d866211c65de47317d95646cb1ea550b432a881bae590f440c7190e14d450e7eae8e848d927dc237c427f8873638c66196b5acf9106fb3bd260c72349f8234019317696659de9c439e79c73ce199b1e79f6fc2f270775fe921a97c9dde92ea74b2502a2afad08f73bcda35b3bc0ff5a5fc747c75ff7013d9418e6b5596e56f48f05c56e844977295dee52ba4b194b50a34540cfe57762859f5f57d8f292bfde36d8c2c5c7015d17846f4c7d36548ec115415c8ec11541770c2e5dc4e0a283f9cc2c1217b1a4f97142c8b83262eee29492bac52d71c12d0e08314ec95df30553064af7e48f743b895bea0fa857a8144ed6743d0915cd8800000000c314002020100c078402814830209465d17614800c7c98467c58a04ab32888719842c818430000100010010181a16900005058d91dd36e3b8e13d108e51ec42bee22cdae14cd50b913ec1749ace92bc43c02228a8da08e97747213088ab01f20cb1d70574575fc97f5115c42ea4b0ea3cbc2550a3c690b7dc5d33cb1e7d0646dc26d05ce9f74244994d7c60d28be264d9218205e2d7b074fccde5d8d15a740216591d4e8f97274e313889aa8986e5b4ea25799a6be80b44be7792d84a3915f822ee6ae17d72ee97d88450972883fcc1534cb837b706471f4f75b517de6fd33464b3d79b9d670416f7b137a578413d97809452d7170238f4bf6057b9d71a11b06814797ec6545544393f855e3a378dd105729a6820760b6605faa45dc4e5e5ab518e4acad2e468a930cfa1458d051932248a571af3dbc92a7b41105d8b892cf76a04d844d9b19024e71822196c538a4fdc3bbaf96d5f083cee9f44f8c6a19cb181fa43002f213b7da5c2d3903079209889514e3ce9c98d854217e07cc1b605a178d4517ccaac3f19d26eea56a9c47ada942e0ef91959805bd354ffb8a43fe8aff63756ef30632e72250a6ba98bc6bf393c9f6eca47c7382373123ed95790c8a2389f93e99a913e9d6216c3eafc74bfaabf8cccb7be1c8129866aab073dc34714e05aaa1d83cd0a34e0ba04e21c43a7c81ce6d9e63f02600475cf3c39e2fc44d81a78eabe8349a6699601ec7015fd17fcff4fa9e35a34f893acd1263fc7b64c860dee7d5620416a16c8dd40bd4288e14b125778119441fbc16c816f4171df92e9983523abdc2a0855c68ef75cc837d7cdb9f59f3496d536ac5ef0ea7e6bff5bb09f5de802b5378611919a4093f0ec74a76f9db1f316fc9e26c1146dccae8149f96ad681593c7e75b12f982f69c203d6b0c1f9a3905daff88221d5294c8e4ceed15256822ad7eb5837f040d4ca6a66d87ec6e846669a643a386f274fbef5b4b5c059b85568d4127fb4a81159aa7d3ad4ca9491ba167500d81d6e4062cf09501811a8b8264929f04e8d802188d37173791d86e3b53e73a815be7d0629dd7bacc1b8e94bcacdba2d54dbc7a1906857421aaa3b539107f08e628ce191d84215a75b7aa0544d6da8eacf6b033bdbdefeb6733d33a02b6d7a3ca502869e1386d012800ec84ee6a64077b2664e7a6b6c3aa66156b2b0175b4718dec488e167bb48d9caeac31e111d773bd2c1c8d6b21965c1a1c51cb0133f1eab99caf82c978d1e93fd0907e429adb8b5e2ff5757cc7f160cdc03dc4fe6bfda340923976124af1e9eceb407785d1f5946f3db1995e2f996d74000cc4b01dc036ea39e573877542b9fd014b2f3a2a3468abb7d84ad97fa5a757e84f679670be8f23e8c7cf02c3a7fca669715b194e147f5f2ce5043ed79d86835e250e686f1efd3b5d77cf85d511359cc5a00d780874d910344928990083520681c352a4698e411335a0f7bd160f2d960b2ceb70e45e6b911fe0097627e21000fa500b2009c046900a840c05fba266f33ee81b6d7927c21c39eeaa295c30afc25da37a26b2685632d7f83bd68a2469245173e5824e2d6d418458646b343f1f5f7ade65d635d6630dd95a3793fab0351130399ddebb28db2177eeb8568b1f1c5781a9db4761bf7413e106ffa16d8756ad699a2767adcfbdfeaf18ef22b5720a53691bb4a94b5feb42e47542bc34fa86e77ed921bc2137d3bf0354aef74a15fea4b921fc0701a5aafac606e6da540c66093e8d0e27bbf3ae5dedcca492dd71d00cafafaa5503726951f42928060217e2ec055f9781c8e4ccb33074447695ac03138dd29569ac62a5331dab163ced1ede7d2ff9bc1f2fb122e50560f15f3bdb3a4d848c3a10538b4b3c39678b547309932106878f73d9149b166dc1632fda1478e3d7ac93f9b636c698a8e36e5fc3e250472abfdf438f05251f79c628b911ae589c277d6725cd0c14ab5db93b87908b74b8d7c27d95e71f203e82d1d8e440739de3d8ecd39358d10ddd92137c32275cec2f21937c09322f78529d06812d32048f961398dff2b959fa8627c5e71a056be18c5c4a7cb9c782ac1f1619c36a0c9543d898310920d4137701e0eec2fc10958b9e70453de9027b3897b2832472a0f22f164c8b5070026057ee8c2c30d63fb150a02a27407f0950624fb61b558d65828dd9592c0d28793d1fcdc7a23b9da55957c9da70bd1430a49fe2300a4c160c6f91b396fc9bc5ea582eff6e9431d6c04223c5c266f8ea9317a9f002921d1c78f62fab13944143f001cc2376b4e4c7cfcf104a65dd0406d22eaebd2a765a19b34c4356016fb683908f4db6ae3d419b0d033d19e38605d85427f7d9e586b41787e6a3bd4f3a8cc3e5716d90cd03992f0ad642468578bea150f4c0838663c976d830bb6aba4796fe21ff7c480d0f2b326e0ee844ebaa3eee9c5619f8840f44f6f951256081f4b1970b17a24e2fbc0ffb8c23be0d4055a3c6c1e42b7ef4d3e996bbcfba0111815f15c5fa92ec29c13d9978ab363fac5de8563fa4c1936192f12bc1ca1172e9523f8259c00f910c25066148e175a9a54e9748201b94cbfd57c49f5b52a106e8e9f8346579aae37d2c2881418df48f4f98971b8ffc99f668b0a8c1ac2a1f451e222a88f0437ed5c5062d281d67c14cdd02696914f09728e7a38d43d179c38871aeec56d44bb56c37771fabba95868f72650eb4f150ddcfe1b79a87dfec383ac6d91a7494f85e31f749d1f3d8a1a2d81993f020499dee3eb8fb8d5760acdb25d72e136ee9858b18b12ada2c46cdd6b37dfc722ec92d31342d8e2cb43ef3c77d5610bd4712cd6ab2a393b956a2cf20bb450bc044bc1a4b0be02c542ac6de68a9a669c44b96791c6e8ce0856d0a62feabfafdc408691ac68bb3c061fe121910bec72c03001793eda2871db6f5aad41bbf118084b80f0ce41195a1090f3136e9cd33defe7e0cb8f68ffbcaab965e8aa9eae6b59a0ca74c70e6de45cadfee87522c8bc6d1031a223a5390ec87c4be63ca1a65fa885412dbacbc8765e390ea00d4d3fe077798970e86cf77598b35080ce655a34d7b7f8043f562f21f0db971bf89b014d4d7878968489195289c014a2e57e5f59507e1b930a4db2892d51f0aa7bc7272720fdeee5254f4cd6dbc6bc88efb24e5f95c1c2b2e8942aace1032cc09d5a967a19023f7022b239cb1c11c0bc257a3bcd442092d6f2a8d28dd30a3462f0eab0c892e8cfa0288b0383dead23f0c21a08f85fbc3756630b931439d3a919c3f2c96015994a0f3aa4c63f40364786632fc9701b992345b52c882eaa5cd6a8076817b39b117a65e1f4ef9cb8ce04b8267efabfda8584d99d600678246b6a4642e8b4c91e4ed028ccab5391b9894a63f2f34d6c168372ba326e88fffd1906ce0fc2a7bbbec702e73f5a8d46c87730108bb5d3b8d3af37616727ecf635f3ec937b2eb7dc05d99fe97af370ab8ee57885fb8dc9378ef9b5f75dac2c1f38d425baf99976ba00d3445758d997937fa3a5303de2036fb7db1f1d773f278e5f0e2ad8e20abb6e80371cb7cedb0c5d20d8432a67d410087b493c2fd2b2c20e943c82a0b1448dad0bb0ea1e365d0789813488d10be7612a036072c15f81e12f04b65c52883682d9518dcfc5aad9f6b0649319eb71426ad8c1d02c5fedb27e6dfd3a2d6bb45d5c417496d919cb46464503d0d16dc325fe2f3593ce998100b170ce19be798c581c484364655b899be2cdcf314e51a029db48de26d16072f479000c4e21cbddaf7d4f9171d3a3d81d07675e427a0ca4d166737b7acd2f64faf154bf5a38334281adf38ea934c6d33b3e913bf404fbbc9efc7c4e82a0b2c83bd081540b2e931709d2de0fe1b8487f87dce42e7e859cfa9cddbec27bcdc481d86eed02db60640b12c4703080e1b0926b631e2c008fe030bd6239b9f6b6172a78a34de6896c64bd324dbb582b0fb6c8ab9c3193e24252a19ed1d7df26fafce47aa0eb35c55e889c38c5171bbbca0a1b9cb65f0a08ca070ebe13bd5f7fa4b9ef8c134593afdc02c3e4c1eb7ccce78d5936a3c347d25ccb02d31839b0df347bdfe53cb2c481561a53f4615a90167824f9ee4368c7e32be3ccc2c4651ca90199a32838ce8f1328399c0b3b8852d42b78ed8464c516223a8e5955d877aa1a28f655e5816d2a117415a6632c002b0b9578839eb1a9a1b70bdd5e1d30f1073533a5cf9ef9aabe943561962d7b38ec124c5cf5c9d9d17b90bc3568e5680cc82019200005e9e2034fbec8d86a862d60e0d7acf0a0de86308c97e5c408405427fe01fddea0548319120459abd4ddf830e601aa6a7367f4eeee7b99cb75d6fa2fad335d8014c7341e081d52ce4aebbbc82960da39dd5633aeb1590149fc009395e8e7101aca4248e7d11ad6c2eca88f39844a363ce50b52d597204535f5a92394e0c10a45c4655af8c0c5c686457ab9518a812cb68a641e4d027b730c547533faae97d3623c3dbfbd915b69220dea4039a1819a78a915349d9cbd27bd0a6fa3545ff0fec533f3d848faeeb0540f286467fe71a24a3996888df90729a5c0b3676279925571352b718157416e446ffd7dfd416b27630af515e697dcc0dd23f8c706ab325c084a8991b92e5e186f0f9494361a843f928d840191fadd5285192a203a0d79c3d965a5ca20b0a20720bc13de2dff3c1d5ab21c184922a5ee9649a86c8ad047cc2008c919846af6249fa023165bf14a065eba32970e3306c7cc0319eb91c343616707045544412acd500ee5a037ed1281a2f8b18c29af700f76cf6f60102bc770840cdfe5739e9bd09475ecead0f20d78cc05328f7726c840e28535d4593ac05f1795596e05fd92e73b09340fc71f06c0dd241a5a5298f3eab530a030e9972a8b9f2c7cb78f4819f72abfe057f020ef5c7f67acfd3164f667039d17b812af9b098037946d3fc5f0d83ce098520fe6b91105e70148a02b13f376dafe14c825f8c520b0d87643b0d3281b989dd1e9df99b0ecbbf886eb212031cddf5e073ebcd458e628ae628cbdc026265b95182d28ebdfa0a8df7736efc7e2316a6fd645fb066e552bb1bdf1b6b1fa8ade2f83ed6286d4671a5519e3b5c298ebec2a97da3e259e9afcfc15c9672f566317c13f28f0be82a3a89fa5f8a4fe4a6b0a2af342d0bd892323ba9c9d87114760e19802966d26b5fc80d0b074b691d29a98f0e24a2801254bb664a34e9addc42c8d4511f32380ccf138f302c3dac799df7e59c8480d9c690fbcfc3b678cad2286a2881b1dd29fa32f0eb9f072cdd9cde89be1521da7d5b17b6358ce6de6a0200131e4331c98779e1bd3fc6870001942d5d9e9af5525651af9eeba02dd2f2a808b866f9710d800fede2a073439f4c3a2baba9472999a690baf27e0e5193ad5007f799a69aa7ab4b689ba4ae687161ea0f0e5bd6bcd4d1200ed503fa032bf864ae6fda0d85d008095f1e36d6f01a86ac52693425d7d0769156efa0f75198a802ce958855d6865e5b123b50a4785bde98cd7ec1f3c733db8038ef437560fcc0fe023125862031c884867fbfecf5d00bae7f873e2a22cb94e2acf3198f330eaf8beac075499f76b3d67daa631426034286f16d0eb15601f551bf3156a1c13d4454ecd8a1137367760b00565920806e1301fe839c04122b777bcc08ae33026b535442bdf01e1bc16fe20a8145662c78e2cadfd5aa48982281f46565ac7f785e8e786f0575700299430b90bcbbab622a5c18670069bed3ef591fee3975ada79aec20f27732d02b5afd63db06eb7a951277203389a71c1a38ec9d8c5ca930e9bbbeb0bee4e5d2098e8418ab95b461bb04a412a590c5f0a446fd082837d58a49ac1ce1401185f5174d1332d5b32bf6afd4922e53d9444c07d9eca34632c7d9fe6b1063f9baa0515f449d03dc99cda75d902b3179cb516419c3d87b21bdc000344f3bd2afa59ddc1b6f7629723108564200179ae8f300c7b29ec145ab80b84619e7e47f67557780d3055042da8c4a1d7ac94b7fee28d9485b70b856a86c4c5911622f4be5f20e86b0240a42c22fe56e3718a5bbebde77bd02518dd9321fc55f8d0cab15356cd2a4e145d75ca95e620cd6017e57082e2da04a240a3d2bf70c17e4caaa3ea762b8f3995070df2671f19b85114e37fd6fa225d72165c445c6a47477560a5cbf101ee9660201b60d17683ae5146c892847b208ecc3975fea473ecbcd5f09a519204d6b506f90e11c73e296196d842f1b9cf622dd1202d5b894e58da826b51d42d13e026f01b203d59460a42a2bd09ac42eec1255a0c259e7b7dbae67000b50c77a22e53566a5a4f4d909035128df85bb3f3b7f6e450dafcbe1197d41e658cb58ecf97767a8d9cabf6cdf082531ab63fb38aaa22e9331a3a71ce2b65064ce3a2f20ce4c07a515d64c6c8d943618a95190f57b44814ce27a7a6a5392723e58622759dccb0c387f99e18fad48cd0ce816e86bac27c58060c432703a328bb4a649323930fbdc9bc83c8546e2e4747b66008fc522257cab8486de127e9cf38d63ff401c4d3cbec357fd5bc62d2034f20a3be9dd08b31c1387b7fb0d0c6f4482c0a5e9dc8caf9c0f3840d812d3f0868be70f1d113d3ea91f37bccdaa2289a906fc7f2d8637a5a2021f00849c2a8df60ba5088803f66fb644a125231fe3fba43eeb61336d7ed99c5baa145c7657818260ce8821ce80cbd49998f618400e0bd206fcb4247a590f8822986d601e70245dbcf93675a88ef41925c21f329373ea286023526d5b7c9fd752e0b1a1544c314392f697f086dbeb6c84834b270c25be694ba0599423931852a15b80944df45b79ddf00aeff7739ff560ea4a9eddf2d8c41f3936090b454fb7e8394ae6ea082b740f4f87d18d39d48b188fa78f64629a18ba0e0731767402ddb5aef6c16c5500461c8f58770ce8656cb51fadb1013a08f831db2d30a5822aaca664dfb39c8cd6f3c40304d489473320be9f719a92b0a312e943d95358f2a33d6c09e5c3b19b2682a8baff2190cb7b3aabcfc3d00ea8cb3f9a1e0f16d302f79064aed9d77e0f65ca74e636d3f820b08f91b2c1e81905c195f3961cf4773f3285e14b7f197524afdf1b684362faa8298800b5762085b2d60e563cc7022585843c25110bcfe069a68eac29763e14c7c2a644a1546d0f26d6730e57ec70d2be489d00630617c7859c31caa849a8d81ba42a882ea875e02c24cdb91722cf2cdfd208706fc622874e3a1c9d55b474ca5daf0c49c8c44082153e1878e8f70816d5703e4fc32b3537db57b7df1ae54f53274e1fc38966e28c855ee632bd995e94b907635397b106bf4391fd823db690edcc42d48e1b1b25c92706d67f67f3832be813b6b8bc9b63f75f0a17d3f1aef4602670b9d08886b1ed09b7390e6fa4dcab2e64f2b60b6e7669c3efa2e116aecf3dac2b22bad73126e939a60c041498576ac07466677ce35887d70598b44425e5f7e286199378edd525379c711a69c624f7090233a9677ba72d8f345c070737eae7006db51503b2c010022735feec4fc35c4167b94c3bbc3f5ff3faa2ab20a1967d1b2abb73e4ef580a6c2ab8d56492365f9cc7ac0abff3c6b3461d974a0a16248ad2d8b7999d4abd971b04f55a0f055980ca14decc82f962c23d2106a3ead277cad5758fc9691842c23b793315d75f54e3b125992cdf9bca3b308e7a353f5195b4bbd2f6c00b79a31aa435986bd3c64c431ede75f630805723a3f1503ac0950e2fef74455f0d5a678b89ad0cd0ad801c2b8a71594fd378dc30741127f64a61054c28227ee074489658886bb33a4ca476538152a2a336ded0b60b73c2cc3d70f844dc9a1cb44810df64c2c71933f420eaf50935685def4299f6c33dd3be4bd89d7cbc084410546877725d0ec89a9ab3b7363ed53ca11877da5c7e7c177e5d2602d3340c1f4da30d3189297f419ba3b7d4147ed60148e86f833662c15253cd488aec3bc04efb2b961b2390323575390fdf72d4fc576e6aea584afa128670af2a3ca7a65763f1e300b46aa30ce855c7d9275ed34f33160114a96fd228d914365280678dc66bca597be779d2fa5c5b095581c8da44a5312519f7c93723b156cf4e37fe99f9c18b840293a06c7a3f1d5c43120a475ad752ecad7ad7352de1374c8b81792f6e9b52a4bd71a219ee991a01758c3237b3a98c858c08d60b79c6194ba751133ed451aa6cfc6da7f7f5e0a8fd5543d052a6e5d387038a1aab51d8f2cd48a149c8559c560c43757089af8e6d9a177fb89d7172265f89b2706f54f819dbf31766e39312a5cb9084aae0f3546afae88dbb9cdb7a12588cc4b1e08d49287d333af4d8d480f3d7097bdc5bc0633a1a158b111ebf05bc626b99641c4f786c229094b0a67aa42e5bd065d8c6c12647cd479ce42f5054dcbf3bce687cafe816a817d7489787a4ddb512412f992d0c3f308ba6356d7e502717bff868b0ea24b521986195cd471e75ebf3a0a00cc1d1ac367332d03bf4ff429775f7ae7123d9500b3a81d1ae959515e5e392aaa3d87282e13748b80a83c7b83feaf99f760fd7f7a2040a4447483361b7dd6a4374b009569fafae5154ccb76bb9b745dc2e98e19c1e61a964a0cd4487ca0e5e49b47b348a4fcb191aaf215e8cda961b911e8c0d0c3f07fae86661e80fe7d2e008ec1756d08fdccd67418a0b30238329ed87a9385cdda4c86c73813de4e5065b352e4d68297e8b5d9581fd95d01b1713e1a34fab9e24b0cb02f7f36d269c53af5c10b83b8f8efcc5b37462b4a3bd0fd8318b753480318d489cc7dfec30b232a84aae6739345f2c2222ad1e87f48dae2ea828322295ab351dae890588b4217e5ec93d1b6a078969754866fdc17a8c71672feb944bd1a49a0589409af614cc51b08b17670a4890634eee86688c5fcc31130ec750abb7c80a96087516996a5b90b33fc57d2bdb2b27321f11bd0831809587041836e2e22d17440df69d7f4c8f746aa9d6b426768104ccb00bb4f0b27ea2f363541b00958fbe495338c227a0871d50c183814fdf68ba822d5f82234a09705c7065c772f6a3fe33fd164005fdc6f765cb1a45724d1da5e490fe2b962ba0ec2a93a2cf06ff86dbaf2116fa0795c90a029cf606d54ece91bbbde61f9c4611c01da723b8a1c80795636e0498c082ca9c5b41511f7d97a6911d9148cf1328d8c524417f34d872119b949e6336b11b25ac17d3a05277f40d7b66daec4948ad8e6f95a073c24f90989e2c60814b0867de2e5f6b8e1b986b6ad2e7d020cc1339d9e68045d7be567434de52f9ba9d2e8352c8968995283767b3e9b8ac3907eb83555a8d11efa418824f49dd8094820df139b35f9fa99927b0779a51448d09891d7ca680154599375137f2748dabbb03e236f9ef9bf826641fba221c217e29b78fefc32e892690354dcd16b5b89b309669c1d40dee0ea7a415b63a5061f6f69039df34d9336187e2b0ea6e87a11bcbe28ebf44b77fd263807f9ed5ad35878e82beca71f2328a886233bc9621c19306a15e90effda6f92cfa874cce691828b9cf29ef6e68e0df1b4f97864d4689c5bac8962743130b4bbc5a232128d6e0f9aebab07acae70bce9c39c0aa4f7df0b66688e0244009e1c01213dd99f9d86b0ca1eee17ca1bbdea8999f396698d177c351c7f7ee50fef5cfd0231a1adcbdcf0a661e4f61a70ac2f51ae5ac4e72f8a30d900c15ee85a0b21a490a42537feb222a887499e7fe42080ad731668ac868731af4ac264c8f3e8e9e094c3e5e5460f42189abf0c65c5334d8895e0778503ad8234903ee2996412c5c5f60a5bcb2e66bdd8992c841606b815ad09c805911580c08452122c641965ddcc6b3e58b595a100875db5ab6cc565bad49f3bc080869ed79f890d411173e847583de175f9fa6b48ffa21ea1dfb85c5ee8e7f41a277b13ee3d2a44eaf8a3a84462bfd1897c2e3b4150a82f618abd564c00be703e9390a4eb2c523cd275a3247fda0a0fe342edaf00bdb1292d6a44dcd8ca5f8afa9ba049fdb3e034afdd8bc514a257931c7fd4ae4836c4140f28a08ff18ee87c0221063391003196ea181000a2c36e328d858ce23ac50c3016f7e3e7d0ab03fbdab9d863b87eb4e9d4cdd0e16d00b3703036bcc13d5d1a30b67275b1582651bdced638f485d3d5a5ee42e946c8e81b4320206ae86e3539d586df5442ffaf16b6b8183b8b4498caecb1ec46d9496073a035074d12f7dc7d9f589046dd02d9c10b4b0b0a19c039d8d2ca4db0dd7f4fb610705c2a14622acfde17d18d34fa1a4fe53809a4105897a3974a0ac57c51c7cdb02336de360e02ae208a84582d562047feddcbdd7e2549cfe2606df1620e84ea521264e249a99127b4514e62a514e7e80b1888f2dcf37a9512f0ff53797438f6c8240f7e6f63b26d137758297cd750a13a674e029f5e06b70dec17d6e732f82dd1926a862efeac82f86309f02bc4e93d03c0613ce9c85bf6ac23ece47c9130c222acbcc2c1b56e6b20dd1f93d6d96b811fba8077e8884c7235ef30a43a67c4f90f9340386e6e0ab27b87570c804ccc1121b46be6638125f866b5d3a41200d6b413270bbaaf71bfcf6457a6333ab79fb2d1e6e5021481bd6d685b453567b282a847de3190fe02ded12f7c66f21ce9e41cb807bfb9b43a8d5c4ec2d1ff310b4137b3503c5aab02cbb378317ad5a693c568cccc212058cb9aa58d3b2c54e0c8bffd2dfcb839e9ed9853b44a9b85902318ef6ae03649d10eaf5ca5728303857d6a286deeb79557750792c7eaca52677ed4aaea821c052533176cc158436e6b1dda2ba223b63d0a5959a87026783daecc153b213e8bc0b01a3370192a6c5a5c6c687c50518435e80ba149e934df94fdcd419c3bd5b483aeb65d4934eafd226456e2ba6f66aecb1141cfd751b7c8759597862cf79fdc887ffac9f933662810087ccce553b8d32b3d363291e2effbda1405aa36ca84d3f91774106605d9b38ca8a30cedd81ca571c435d29ae54b5f844ec519f65838b3fd0258601d7e021f9d8835afbbdc53f943294cfe2f0ce3f00aeb5ee3b5c1a99ad066824d8e0b1200f6c8eb117ad3f4caf144dc0c8905b2a53c288bf4d34457e537f8d22a10fdc01e524ef24d716f06b60a40cec8d107faa6cdf63426b593196b23d863d7085276efa3bd7d7f8c27372096f12e7cf1ea3342d7572118fc8133de6fccf47dfa04957190090cc7d7be786cba8861c9dcef30be7ebc0b924c90ead271eba6e1c398b2316d9f1870a9e16e16356b3d065e8a5b693eaca17c5f944416a7ebc5af3a5231a7aba838172435a2115e6725dcdcb8d4e8f02c028d06be2eb0290a5d0c0bc194b6db6bd6c8c3de787db9568feff965351a4fc5383439dd2cd008ca55c800841034a49632ac4bdebff7e265f67ca66b49169ca7cdd47f6ee836bc9a41f5a4dbc5b93422e20c1a07fa414922bb08c29d12f7cdcf950e26cc9887443f38233a1c6de324924ba10be596f2804b27a1b4ac651eb7363238fa8178989c09515e1128262d2e2e087ccdf7b6f2af3cada769ac7e70354dffcbe41d2b1000d148e9d9525c9da164402be5e8d43e7bed259adc5d79765107204ac30169c630614df16353da1b92b6d38708310b93a62c6c0cae42f2f65f6612f04d1d382485e3d1bf19841941e70626c98545fa1985c479f571605f55f40d9a662a7b3d47e4fd815963ea970d72c9676e9d9a266f5a9555ec75de1c245a9ed4f44af02c616b517cff94c5139b4771a6f32d1136f6421a89ffcfba0742044afff5e0fe049af9942f1368998de3b9a22046e3800ca45098c886d8d88d78bb42c23ff8e371e836985f55f2dd4c5a97f9c54b82fec5a08191eef575ae83e040861f2a337218bda815ac085c2cf171788a56c4731bef1c82bb909be5e45be6615492b350a5cacd0ce1e2001153d8a203c5de2c6999933d839cd2b5f632776c6015ad90829b26f5035f925223ddb6ba77bc13fe5636baadf643036c03c194d884e75def9ee02267039f44a58c4fc108482e42df00dfdfd5fc9aabf2856d5b31e6b6cdc3b1d82a0087022c16bd7705683cfca89c7ebffd832b6f090ad560f6fe6e7b38300a133255265170d00965986ea38aed1647c630108ea9acb0832562bb22090d9911deb2802f87958d2a41585bf8142f787d4e725d77ce8ff56ad814654cdf966062d16fd188411021d58a0cae8dbd0245ce87749beb7431b56bdede22b664da10f894fc4da8366e8afc30644db4521a96dfe7b62813a1131296d4c5fb8e37452bc9b76328a2f2b7df394c0276e4778f4196ce22dbeaa38bff4a8dea00eb0f0ece86c52e11257138fd2069bbe2ab8de8aaa804902d39e846c2372304ae56ab73be63b4143e64977be0bb818bd4072dfb130d19d625ca4c240923c1e80e1d9ed2d85b7a95562503c878cbaea8d922dc732c798167110c28f065cc6ba202a3a4d180c6387e30ce8d47c8368af7575dc0a804148d0ccd89db83c8d71e1a05ed3bb4e44819795a85bde68c4318629fdd408b4db985a077fe24965c49dd30868b68d02e724d5de682663292057a11dcd688067b111c52fb256e512494f585652b4f4247d5614a311a87424a7e30ba255da4a176d89a97d2987d55df9be0d41176ecd8a5e21125329b8fda00c3cb398ab90f6531efd0d42405b9d4a09aaaac68908cc0ec1ca4df1b2ece475b6c5ac0ccb2921c3ec42087c7a5f8d3ac0737b221204b66fbeae34dacd9d4dee8f99c9878df6c6d233886deced66928361c59e5ca33b33e0535e2b4b336a90967466f78b2089f03305b916d572e7aa7ecaf1ac5496a6f4df898d439ad0c10c362a265e20e10c8389db3b03f4a3a973638a908e67bccdcf0129661db1c8540c1f1e2942bb09663f1ce614f529521c559b03ca7ec744cea4f5e4dcb60ceb6e1ff4bf04ac9c1081ced233f249582162cc0df7dd076c5e6e680c994f370be1917ddc9a79e6315ec6c1f8d599b2fc068230f1b9b09c81c92a02c3912df0b05116d74408bef8918b170436568d57ba24d3e72a23c1b956fa7edc55b49edbb6e017ca70b85250505aea8b3b9a4d3b00170f13b8b1bcde4eb3014eafc1106dfb6d0e6b299ae97f01d7d9fa5c806600ce3a173f57e8df5cc1881e9ba22084181e86ebd69656e1048b45e77bca2d37234f0ace3b7a9776c1aac3f9428c868f59f522537e667c1284548fb66cab6d3953b10c9569f9996f597aca34de9fabac04ca72eef2fcf55d2e0d5e0eb19cfb9e3882c970521e614638a6d0071dfcb91fda5aa1fe8a9604ecdb1d59c0b7f9c41bb98cb6e82b16dd5ce2baa436958ba690965bde70de37908959604b6c3aae532550a0b917424aec9cd82d133f685e100fee44a53c3916dccfef9c022da0b2c4d5548f727bfcf1027ab3f9cd8e715330039af6550ce755aa866fb75e7f83ae4ea05e23d9a370c8a5f06c99c1e77777b442a5eb4aaea99d562e5b6e97a7fa600b64fac3b607e2b92438ceaff6e828c5224a57bd4aedb0cb21c7c09a638d61c95582958ee50a4814391110fc15b9ce046187426050b0a8ab188362701cefb2227afcd6e7cc8cfa4b76485a1fa05014412e1a2d1672daab5fc380ac4f457ac698ad4b40e796e37b9456465c1b04dcf97e68e1a228ccbd3b403fb4c4f54bc8054370d309339a4511829c8261bccbf0053176a4881241146986557b00d1c9485f163a300ec55652e04f77a48d06874f5cb533528ed60e9854aad8a86a124ba3708bd0d65d003fae32222fd30a3e48229d9defd7278e10156116d0ac4269a9ef8fc075e012a57a2a973c6d050728304e94f7cbfaaf9d8fe72cff2a4a18ffbf8d80c67bfe9e44b38799bd2d127c02cbe4be4b5c655ebf790f294b78c24182c2676df1ab80338750a380243d87fe890aed71ec630ca93a6483951a8ab6770a0b8bd22b91c0234e26ff00b3c1e091b620adedbf0bc412af6f628d88b145ef658cea7c590c0703346fe742b11854cceb94574f6de9adbe38027b2e478391011ec9958f596265e72fd0e17744578b28ee6a5cabf361875f021925586ff712873220535086f2bb46db8697bcc99f85d23df24617fffd1a1f3b0970c52460dfb2aa5d1e8c13aa84bd4caa72a2ee838387f8138a90de3cc873393a56aa5149a3f57c49a686cec9484371a4aea0dd31202062fd995c17c04a370182c471b94d63fb3f56864e8e353b974f02d03c2cf6a9b9d3a9e8cfeb24e0bbccc2db23dbcd37b20005b7f3a9e5160c09052361524a6e88964b73c2d3cd9bb60cb53ce2bb252f1cfed138ddb4eda52a023551b1d3bb019c00162cd3f2402100dfeec7448968ecd51c8b6180099bae90023746df82e96c13dac82219c5f917a36945f62032701ea945ba94d88309c312c62ac497bd681fde8fbe414d02efc1ed8856f5a9099ca917ead5325e10f5a8e6497f37f27c33c7436a8752170ec85958fc3de01694216f251052fd6802fdf3d822fc8cae26c2ba707607651b4f933a6e7fc6e1ba488705c3a325166652a8891859e89b2df7fea58ffb7bb099799d4cc54a344ac52a5cda47d8269cf76142fc974b7e1c90a6bb598ade5ff62fc6509c8c41ff1680c8f0791096361d8a32c9a6e15ef475cc7054202af17e52c86f800d8edb581c704acbb86a168e0a5aaf62a334257968a771ffc5e35a0594a24ba7cd34f3071e41fc05883d0a0d6258e6acec198360f0fbccc2f9032a69b00ab9bac5258ec685ab64b75739ace2a6d4fd10b1af016878d1e8ac4ef581760b90b86e8cec1bf447834235e77d6fad21cbc1b10937494bcbde6e49f727b1eeb313b651f7f73f3a864784e2aa650f210ac59a5c953958f0c2c4aa4804388f2d73a4699b46d281f99134deb88ca782cf4501b9e2a78dd8308e0b1f4023021640c1b9fb260b35e3e79ecdddba3886fbc4cb441c4ca3a8f5d4f5c1056a2c9b27f7c70bfdf41998c6c3c454905f785a391aae76067f05575ecc3a4af8fb27fcffce7d00cbe307da7598d5476d55415fdc22860733f291014b502b3e837dea7fce6a6e51fbe3621bb4b82cc44d0385878686fb2d5cafa96271b63401eb914f417f052f782faaa0db9507df8d79d2080a232020d7280cd7f8eb9cf41df5ce0f3714ff98b6860d50204caebfef247e9cf51c48ecfe1b6f20da88ac374082b7ba995962bda7d41d350baffa9eba01a9fc0ff725685fa80b52afdf06c85eb7e764055f8e119c8aba5af53bd643aec7a9f382e4723e9990e0de699deccaf380dfab2bb82da151f6ae85ab546ccbeafac03765a7457462ce277a434f1931a5c68688420213204ae1efd2f0f45ab27b3687298080ee8e5c03d66fb9de62b7953c4b81eab29101ea5c768b819da455024c66bccf1473b1486b7b2144313dcdda1678665e1b7cf698988ba5176f7688a45ddc54e0f7d12e062d21d813c45cad9b523f5b05201b31d39a265b285e356b9c7c9b53627eaaa8167c0dab1218abd920a6cae33230808442f019db8190522b2fb8caba2785655571e976d72f68c474ba32197e1c2df56240a0adc336bdfbe109aa9ff5fb72d0a049db0e75cf8a9ec154a6d38509ddc3f4a71b68118057367a9a84d58770adebd5ffadebf0326211a7a642754b08f0254d6daadab22efc6efa4c3c77b6f9fe187742d7e97b0862856ca3ca3aab1ab119c1e5caf44e283d070d349014061f9e4db6851f9a054c509aa37458e467bf64894b2d9121018459e141b90813594d68200b199e6fd02e235f0e037fb38dfa953a87a9be2c36f08b6e1d0d72b6991382cc01124039366226e0e2ae0c01602919d846a99eb0feb3ba63debcf32ef28672b5ae3f9b2f0ce8390acefa0a363f76c1219cc74282e5c4770bdbc5992cccabaf7f475543c4ff3c2100fea1c43eba7c848a08068620eba108ae4101e9eb9c5c6c3733b06068ff3beae3c02b1755c03b068961363753e97225d8f65a34d77ff42747f25372f7e276d5977b80d071ea260ca674cf4ce622cbd8ee70bc31c2d2b7694082aa3405508a75a8b849162d84d7e82112e5a50418291744f6d9ef506103f7e3b0e6ec397a4f816bd5da0f2b1a8bc0a8a14b296ac204866d3267174de0ed2a2e2905c96d693f2a08cbd163696ad038e79e93c2859c9f79fda50d13410b7bea8963e6447f2258422f57e117eb62e33023b825518ccd654916a93168ae6cce5fdb80e8e6ddd68321fa285c24bfa242078b6f028477302c2aae4f17af612a53d1e7f345e4aaaad7d4a915a218b7538309edaaed6786c5c44fc2b14aa4409ad99cb70a48e492c8fc1ff698aab2d2a56e66958c8ec1cbcbaf1edf4b2148384604a2081c50ec4236032b456a0652f4291c5176d66ecab76ab9e65cad6e668467da8875ffe8145971cb6f05c554722dae5f686a95ba1b0f7f25fce89c0125a331b1888e8003e4f8a75a2275299732af1d2a18aaac1d4a18724be33a945637f62faa4b6ecebf3fcc8486dfd103f5164f74f8af5bba9ac56f9e5c797807831a645c61432e9f0e5bf1dde67340827c3cd1ec4bc70a4a7db857b22e87c01c781378bba81f99fe1ae0da4d9ef2ad33e32696fdfb40283392d94c9f3c82d23d6797913307786effd23214ff37b193d9a80b0ab889b34de79100d32a73930f500a0ff53e7e3df78f402a556a39d76e716b421b378e938e97af9286a8bccdd05e925404cc57df2ff127bb88bbd5f2aaefb75def67322b788d1a23061159d5f230de6316586a9b0d9129190bedfb900c1c338e819222ca7d1d59c257582c94831463457363810ea411ca00dcd04d9881d960a6551b7c33942bb1a2a049b567bd4e7dbe7b0da98265eb25f77979be4e3e87d7cfe7713ab95c5e2797cfe9e572b8ba9c3c57979be7e8f3735c5d5e8eaf5746b44e6688563106d164d3d2795afe36cafc92ca827ce9b48437e98b03a8cdd0a4b7348155afa42bb2297be7de7bad4674818ab40735c46654637dd2df2ec5db1fb6bf925d750992b201f51edd55bfd68be44fbcc43a2530010b42789a58b266f85ae8d6a1513eeba1f77a579435fb39e5e061e0dff283cc0eac9de7445de7369c7c1dc3f66f5e7fce73e242be6ae467c6aba3484eed12644a15fb70078b7ff8167b39adfb424ba04ba0d3bf62f40d8e79baba900e4e8648b6ddfc82f41ac3cad4f4d84ddf55892e805716f4effcc53002bc51adf4f4aad0bc5c8edb5bd2a5d0dedc3a10e27b3f581e8911f35b1561eb87428dddbd55865099981eeb601c1f1207d03980e99c17a2495efc447ef8f9bcacc4b36977812185175dde4d98cbc7f7288fd39ec503f71054756bb5219e3ffb4ca27a386e9ff5b385d500abc732701ce587794936d6f1662844fc1bcf4c114d7dbf404660b00f0449814409e387eedc59be9f7bc69743fd24d29d904b231f26598b7928303b15b40c30eae606f1f489d3f04c79cfe2ba7048031fb6d47aad9af4ab43a81e77b87107f5dbe91bc15a579e86a0f0403ca52d3bec48a60fe4d282fd7f55f058aa2ff9821c5eb82ffd918f2f2cadc28ef481a44ea8efadf8828ed1b5654c801c94e610aca1c272f7b87ca280a2a0f43a9e777820815e79c0b8f452b71312b53d576c9de824b4141ea51c0e720187e1f473aac5d26660907f148f5ca7662026a94beee8ab17f02f4756da98c902552e8a467f9ac3374b55792ec4ca726e16b95b1608ce46cc8d8e325f85a9a2dca3f0e343883a04cbab9bc86b99a0f4903789cb7879475620ff77588f6c11a534a0d29a095bc6e6ad58c7768f284b9a1542d99799f128c146097379833d8c1b91089566f23f6d2811420d4af043ad54fbd95822a205d938b0b78d4dd04fdea3e87fe0630043ee1b61bee0655a145135608aab1c3f1a60186980820007655677c13779097a3f18206693dad686e3f3d8e7aca6e0e85e23b2021547f89366d08b02a86bc3d2f3411f8d2916d50503c459769b08fd1b125ec6d2d5f714b7d584cd868705c40d18542361293e920e2c6bd8f7caa3cb7a76cffd17b99f1a4cbbcd26291afdd39fa1331c1b2be22395d71f0a3cc0e932fc69933b2e25b2c261785284ff03d863cc49c72678c3507e5d17dc21766706742fd301583188bdc335771a3ab8a330cb2f44c515a2c503905356efae6219712312b902e8b91a1a71d74f0504586ecbde69e2885da43fc3b46a75a09d4bf1479592384913c0376005259fb875a82f621dec808d127ac99f64537a2cb2ee4fdc5cd4147986786945aa89d0e94235a2ff7e168fa4a6de7568ea4581cbfc3709c9a8eb5a41b3ff8ad50da7f9f34901c99871f8b790921b67612991b63e15b1d9ffe0b29814f6d52ea1839031f0e3f3b82087c0e0868c650503317c61a5fb64cff42541473550f82c7a43137c576d750eae9b8722a90847df2f03da6f9c76131afef90da4efd21524349ce1eef24b90d9b9b89b9b52a4a612ef76b3fbd25ca70925e5855e039493306924efa39f54ae6996f0b0ff71cf21514b34412825bfb3338149f04c8c4408449a2a03308a08d863a1fa193f1fa0ca2c3e949f3e2da073966c2778f491be9730312263ccd2a4ada104641c4da7185dd0b71062b1d8a58e95d5de37622d6518865346f391e8d34e0c7266035acd2352fa5b9f0e4550adc5f57f7e12103d7668222333993bfd94b69f93f5a59ccae143b073e0bbab9d0177754bde25204cb9a00983880f8223c9bf74800093e8720946bff58cb844fadad01ea524840359c92893c658a83a11fee26880ae674b148884047378010ec5e7047bff49351ec7106793974fd5b6749c2e2044bd955b8db0b947fc4751c6eec0780f458619e69bf20e703dd67ed7e506f3729ce530df681fd48cd63e315d2a4fa3a43e6816de9ba1312bcc85594b85e75c696ff3d8769b396ef52fc38bdc8777aa02a803ac6a116d020919bf613ec16db3c59178c1427c26ab6ada02c2f060b11aeeb431eeea931b610324b5ab48b5e1b8b69f20142fc48cfb563e8c1b2b14b4577c6f304afe8a5b69f18f49550bf4a42b9d9856ae12ae9010d7cd7d796dc75a2a71b4924f3d5c9b452d3fa138b9972ceab3f1300559df9d713e9ad3956f8f8afd5a974e66953781bd02ba627837504f6277dcd17feea5b46f14a91226111d508e34f6e07320a98838b7ccb21c3bafe84466317cde00fbb7e04273c5e403c95b14735a0c2448a4a2d670b70af5789980de94fecb53ed4a724540d1f35c2f9a3a99530f4bb378507a42a292e9d0b08641cb4e5b1307a3d43405b3de3367bf9ff0766cdc473d9b910c068ee8acb1417411d946e86630a5e1e481f6dda12c6cb1686441dba94642f248c6d6b3b2e375f8999a7070c44e126015baad64b251f9125d6d78c353e56cca93583371ab27d9ae3bbbe36181c2061116822cb210d56921f8d7b420118c6b6d561dedfbb5caa63e29b8312bef502da4780b418975b99d997f22d6acee7d9aa1c4c4de7e0760ea794f9544a2e001b3ce18c49810544d9e27b5c13313c8858b82010fb93d595c342bf75676084647fece4e7a85d2bf14d765c8beef4326aa6ca715de25e3b150a1a462ce034d59508b5c84b6f11e260a5fcf694549b33ed946f1570e4b854508a339fbe7b3389c45e1b101383d7c485440eb4fdbcd4bb5d10967e11160122402fb7ff1b0cf1507abb7291aac95d22ab1b0e6380125792e39b4b03aa88e7c5d7e17cbf0d3be8177e8dba50a872c24aef3b6fd4df8451c05df8a93c0223a5ff31b501e6c53bb6840562ae3de93a642f800c2bda85d35d474e0616ade3867e2354e3d087df2af841a6109c380c466934941ed8e17c5d82bb55650f1d031d606d1f171634ec8d910054fbf15697628c794fccdde971b33dd3c36d48fe4e41fa2710673dda872d975f7317cc8d26ea7a0236f8cba53eca77445f4d82155892d6714e7b6311b473dfd2fd30886304a714fff16135b52e97446bc11bfb0b1c3444cee897189e5f46449ce4ccf4aca66750abb15b57086ef7bfc7d9be11f264f7257a84ad14574dd18f05f0deaa2c88b50a3d6ad7db87eb990c5ae67591c55d6ef73ed7d672ff1fb802b9376b9449ddec6342ce9e1fe523885b8a46046ca681901dee8120273affccabb82d7ec85994ce264e273c8bdee7f0b212ce02812783680ce6948fe5e8d203e4ae9ad6f0d4b40a4f76ce0c072cc581d5435ee1da1f34e19d8541da515047613bf5585d65d46209d94b51e70e3cfafc9dde4b19d7c9b89fc32fc354144b8f422411d6be29a44f72ccbb76a9a4a69645dd35c3948a54f8754c45a5bcd1c633f2211cdbed9f2ca182544f0a8cf7c974f286024c96bc2396c9249a609a0c0b8d60cc75b9cdca85945b65c14d0a12f8c0c6bf54d700c220a1b580fce61692d04f59a10b889100612c12e10b7a2fbbf2f2698930e26f1b674b2c10f31384c4d25d7148958915c41de39d9521b00e2e52caebe346cbe3978d552df3b335133f5fb1b023ffe23a7308ca47df940bdf3565048c21096d92b1c84fef34ac2358e8eac75b4b5dc035179d541dbfd06b43bd4d42e7223c93250c6102cfcc3b8b8427ce5e3feb1010edd49da6749985438978cf55ae2afc53070fbcda5fc602823fed73866e9c2e873367cc4988d1655d188ce03a3b1b8b92b8659096a939ca8150456b44af6ae7282b6082bee75c0898b2811ead615bb9f5502a0ce57aeff94f47352bff41f300c631880d01706c2f1814539a00ff8303f5d0b555497bc6575271dc3f82eff4f58086fe00843a57fd93e4ed1e6ff5d0ee8076dd0ea875d7a2f8ef8d3dce08e4d08a7d6b0be093e301150289e0424cc8ea23d8c112ef8741996300202c62ab79bdc4ca8d0cf87e6125bad2a23d6ff23122de2b1bde7953bedf6908fc06229dbf3e088394a2d8b2d32ca562dd1a55cc16850384713ba89afbe8220ec320eb243895fb55cc1ea4e42e134f10967365deae2c264f8290a821498908d2e0a1eb0514432a033a00098ca2a584e2d62c96dd89785b1cba1f826b764529049b9ac5c3f237680ee75df344665f8b195900d37ff00bf9602eb2baa0cb81715637f43b9b3eb0e7fe1ebb327d3f3bdd9c3955b798d0084068e7a62ef2ca03aba73073c99cace51440bfe9b3d31b53a1223815f48a88fa2a062b6bebc289fac03a9ff0116056adad7efad35f81bdfb72cfc16fbef80cb190129f7baa418af6dd43b2aebe034d5f105433d0c6afa647f01e72eefff6a8c0437f73735f16f6176f3e9d32c31258fb918458805b3e5b95b71d167f07e2c6d1704bcc137a6e65234c6bd0d6f78a6800cd1d38f2e96127974d3c230c3ac08a6d56c9760122d683ffe8dffa9a5b4ed1dcff1d6d5ad38d8a3328d0470102b7c49b7191aa7cd24d0d6718edcd2481750e36b674ea9e57cb25549dd9d06f896069f5992b16fb2b117b0b95726f7326e55ad88246d8d9e9060ca1c970c0337479de73e149161c70ea41645d159e7d58522da38d25d46ea4175d871e91f37a29f192b1b629fb075d0e37a12e1abd973771ca4b67b447c224fac59884ce1a2337a9598d2e649b77a3b79817215dd2e509ced74ea19ea1f0296501093f9c88e674c5404b4301ccf510514478fc27dddd738ea1742b25fdcf83e1c352650023b5b9c2d0a17ad7ee9ee51b2155586a23cf67b75339f21de4146123e1296792af4b54a47edb60151c3c4e5c3c03b1df863127dedcb7e3ec842914a9f1639d8adb78766c97118587c1638c3f396bf30445e30ec7f48a0c364fe5dd2dc75ff9df8edf47209560d7fab679234b98702638b737db50705f94f865f70d23b941b792355ed051ccc0f2e1f3e356d59f1db8661893c0061e8d2e5b347c14564de0b8abbf0cb0fd106e2d18e3f7ced3cdd7c17f995052a028af98eeaf148a409802c53daa8926b36720c4e32df1d6ec43b2e8b6360eeab78ab6ec2df221816b354aeb1005f8392055af855bb168dbf0770372b08884fd889da4ecff90f2f52950a7902df8245d16880a74b18efa94ec0df28bbaaefcec6cfa758d7980fad017c7dac095cd8a9023b4879a2f46537cc4a23e0e1cc7c068374f7cbc1c6d90cce30bc577a08e478517636437a9ec33100733f9216787722c064d9ccb44b153ccdd17f109b3da4d8a63250d779c7ff984c02ce074391ab762e00f0802a096027269363e8010db74880a333bb30438db0d17885308c40dc207cfc0575bfa72ed408b601d0fc511d4dd017ed0460f76c27b4927920c7a0e5d2a0fe52bf87ef1dfee71e479396add2ac7484f86601dad4719e8e8c9b479cf08c61aa190f4262db1206eb5d8aee65d88c6418a741666a8e0ab574288cf5e98677810b80ce5740e8cbd8543d097abed07d91363f230484bfeec4f45e525fb164487fa15bd1788bdc58d8d45d0f0b44fac94678a5727fb2be99a20164382325df66bca9f6a1db299bd80fac9dc3783f7bab7c9e44fafb867c75276c64c3d9239529f3192f2bec09fdb3b98ad594aa8c59906f16a9c23d4f6f640c562d363ff0c2cd357009e26ffca308fc7765942735666d8bc1d77c819756d68733f0a1de747c1a1eed5f840bc032d1b6eebe351ffdc3662b1808d1947aed296775efc3ff2336da4c8025a61e8aec08935ea58bc7c0b3ce251d0c30b5db5084201276abd34b398e588d923a0260b2d9503d4b60b876e01daf166b22e41ea1a850b7b83f974e608c09243ce9c4c78b429069f35e79ef777cd6934914e75b2ebb930f78dde458450363396dd7063aa72192fce0edd55ebfa986900dc92a372f0339809135bc8cb0559136cf04776a469cb106c8be23841050ae1e3ebdddb9405496f6bcfaed01ad7efa19b36b1ec645d7d06ef00b9a95c2a600e06c68a8bfbed01a24bb5250a763df61110be85d4d849a1d31a583e1a2e5feee402c912f234150345174f700244f30f35a6286e35b46b9cd407961bd273fc4d70876addfe80f11969c0d1b579cea3021b5a743dccf2853ab03dc7c103dc55a25e23019657fa617472ba5b796bc688316415d191a9a2298337e80b989f49171e2ed08736719b08f71f0503274c86638f32a6cbdbc9ec982667c2a6819891cf8601e78d25aa793366ffbc73d2350068ca5673b0298239f74c0bebe570df954b7a84b75a3ee2ac9764b542ceba5d4b086677622822b89886ac8abdbc33e93c7e7a8f93fb13a20cb224b319621d907a8e781c984def4f8b2c25ace66aa8cff9a4c760a4b67c35440ffdc0e2d93c320cb77556ee6c4d3e0339a72edfea80a262e33d28b9baeb95de41ba48198141a3e2151b0138242d47404d54b7d8194e12e4edde81a30be6e5944192e7ec268218609a68e6d6b747b54ae7fb4e7d67d4e21680405cc619e2f670a61c55f346ec5370c8569800d1ace5bf29771235e1ae807400f7a4e759ad6138325be5140af4ab7ed066ab8f6ea2a7ee959e76fdc808af019245db6462112cc29152ccd01ac9cbf82d5bdfa6a919d181f777626b5a7b4f76e3fb3fab2fe1f3651449e1a9314243db7185b8d717ac5404a26a27a6f326da123a620bd3883772146d75be0790e731a0399dbb2b675d15bcb49738f9c0e8bf70a00ff1262a28103f28cf2e34a8e44554364d97a24ba6c3cac276372c34d05fe92f3f058f7b42cd86d804d7186d188e300dbb1d488c479ad00058b4050ddbaeeda20eb84bc528def2d3be2328196956cc02433a31afed9209faaf6c3754c6c6773a5751dff7f2bfeb44cbb60b2641f55723722b9621b7323830004677e14ebcba76c0549d0e9725868940764ec0bffd7628b601315b0c4e98f65dccffe7b7035821594954b5161262d325e2b6d262e229ad8449ef897abcc1beabb82b09685ae2d3e0749f603d0ccc2deb25b70d70c477fc9ef4c0be417283fd798447c7dcb70306f451d6fc7a1546fe96edd4c4cf6720daf21ce8abe37c0c573d5b486df55023bf2d0e2541b50b61b5fb11ceac6c2a4c80c89abd91379d1fde485862a18e025cff715283e9c5617b145255bd67b0f98e05249ace0d3b74cddf00eeb48a8c221d6430fa312fbabe8b22a13a4bd5944815c9a5e29eecf2f61ed5d57faaa941c7d3ab700cb9ba4649e237fe00095ab4c9c7774b867f6f04025765b53722040db0b81316ba4b4f72d16ed4c8fb058b22af8b4f52fb2af00f5548230c75e440e85a5f744d143ad8138941d5c8610ad1d2aec590fea3d06530db8f5b810252bf800ca0241cd38231ca692359004288cf2cb25c396ef19c8e60e974b62c02d2dba8df7f1949f266bc8f93f10ebb8fa455328540475a93434668b70ce3662337f40c26017aa87074adbd97c7850580bef45b702802fe2ea5074899fbf2c7bf382d26dace5fcafab16ac429f930cb9d4f0de814d78ccb216adbb8bfe8375e5c56341036c446adaa71d8392c496fab96377c958f67d1ea3b0d195393deab235d3aa0c8834407ba14dbb41d13059eee6485e41b4034e5f1d2518316ed590a8ca69f34a95da7e5530b118002a83250e54ba8d2eae029d56333df2aeecc8e59c1e34ec9fa1d307838cd9e158d898a02c31d7191a37c892292e59625b872459ed3d5853b81e3c0c3b0219bbc98deabb19e92601195c648fe9b7076ecefdc097d2f8416505d7b0674453748a52f880cff251c550f057e968a8eda6d179d05270de1e3ee90892ce932d3d3d839e9b91dcd14ea93c2fcb83c5bc9e69a014e37c81e2b3369c5046da2b6fc1810c696579c1f3946015ea7ec656e46694be3897ce59925170dca049f4cda1f5d63588b7ecd9aab18b43907570240d23b3476cf5ab9dbd8289961d08968845b75c7dad8ebf0dd506eaf595652f952bc061b5f4bc09c14dca4d3c644218947ea0f9672ebf1dd4c76ecb258b1f8c31124cf6933adae02f70a78c02056e23b705c1359cd06d6c3a4ef811f4bc9536dac637c6f0162f61575c0ce82b8fb9791e03b6572647e39631ea5295c9a827938a77a01c7e906c7d2d092f1a6521e77c4c7558939f497a35a7e3028874aaa8211a96631523d90a8e21d10c6beeeee52a0b9d41734ef293061723d6ac83246582b81370c14c8312beb9ad69599577afa707f2de726fd6ed698debb6815c134ad2c72b2ae3d3d40d06149339242e7ed8ce0383feffd4cd34133d658612999be37089960a95339e62c3d5baed31217e3ffa0657165d3a6f7de715c140f01b859b8cc6b739538938745c577e50206b9708ce2aa50feae3fc1efd35cc7133fb7c7c16cb890c4ebd21ae344883c390a013a2564640cc7731022287caf2f128d6097ed28164b50a78087409522b2940b4e98abd233a07885d5cd64a7276653483da40b2453ccc8033cf1041d570a543a199dcd7dba2983666160bf1f35e44497810ac23bbc643e14b40e1759291cd1be10865af890af4dca6fac986983f21fb7d2a46ea4274e1baa19ff1f794f8c56083e9c09a071966150715afac06697f2a029d09759f01d8b56e99711e1d88562540f2d9d8434dbca9036d217ea0eaf1da33edc691c31c7651922e6db0893e84c346255717a5a31b9e013887f04b110b9038a390aaa641b70014760ca1c98174fe536c4673f9eeaa95a2303bb01cad29f639d81b7ba7079081b0917c79a605830e36ad00419a70d399cc715cfebe0129b3642e4fd96421287413b2cce07ea5e3a7293e4682c1de1a84d41fb15c35080196f2aefb40c987627d0cacd78c3af05f19d354866e4ecad91f500652c3b1f68629362a85782e0eac1e5bc62dbe4dac011cc0b83dbb42c25f5bdc6f2e58f935dbdbf593e68000d4808dba6b71eaf1c99ecbc846177216c2e305cc0ba91ca77b652c353197798ea1131a0234d5931880e4677b6996e6b8cb1629281b997a49507518177cc4da8aabf4ee373bf062ce0a233367b7a2d4ac53539645662f6b360212828cde263b464b33760d128a96298028c9ce41a600d7f0357274925b10bf9943d339161bf1964807d82d28ebffec28bfcc80a30bf9cdfec70ad9469606b56fdd4a42d33c9c25c8009c9521bcaaa4fa2e00ea6a52715301457460b5e05a620d6e3d1f06f59566d044073136c055c3d05513cd06c4dce7ca070b13ffa4e619832d0453f4251d49d00da337db42a8e00f384bc856cc81836717a17eb0a485243a492e1165cc524b09246487ad5c0cc47051b70dc16fa59ff5881f29df487827a9218f6be6584109fc1e5ab52590dbe472f7bbd77e3f80aca1fd6e3bef77d79de33df45d3e95bbbf45586795bb10ac38d81c0155dc5ebdd0cbcc8890f62955f9d4d7814cc726e0ee93408b3a2a0c87e9471fd29d4318534cafb3f18f84a2fc1045753f631eba66978ff38e1bdf32801ade58d1a95f19e29414d9b0b5a25af920bf9b60d467a0a9d3b96be0870fa2ef3285b0d164d21ff9d06b4b4c75f5fe1d0981f857c17744024bfa900cd6625b6b56c4806161108192998b6e89c07e8ae88f897bff515e1e328671b21fb4754e75aed370d615ed14b32143d13b07e75ac3cc7f6fe49b40bb3d9d69d11d48717cbfa5f24a44eb56671b45afdd8931af72aad916fd425df1ac400823534ca2f6776bf06707e30f8931d647733036eb257759d0849c302f62ba2721c6376859dd1fb4d53a6a7a53cd1924e36398fa090dbaa62875bed33b9a4f0bb07e2141fbd28e11949f1223443f53be66b47cdaad481b79273955beaeb12fdbeb74b14412e67df92c17c5cb8c773103d717f42ebcb081ddd2808e9af4e12c935b2d8db84e999aaca8a38493a1e99774a7ac078432f7a0c98cd6301ae98cccca8a2d6801196ef1684e661e9c18a84905c6d453316e0b7db000817b97dbb245cb87e6d70688041265adb7dbc36031f87b2a6dbff9fee200e7bdb9a1d8fa36cc837fe4110c5f94cc89ff3dafc1a281cfc923205707b04214cc38bd536de6cd8577470cfcf0288827371675ebb244abdd1858347adb52ca84cbe920288040884dcea6ae2e8f88c5f4c4308524744b0c2880cc09b3e410f48e2b2722d045e782e2b9ab02b53a9b71fd320c94a6ea9d10308d1a4ecfe48bbd67d45b3060f0227bfae11761e563b89e67c5883eb4d21ca37603645debec18505effc665c65f456af7689f879ca95bcb3f69e24e31b87c9ae27a43271fddda92c40c33c1fd15256db45061847e9605881c4052f620bf3212dafc2389fcf970cf7c333a58a9340309a6e3bd74acab17850309287581ba8cc628171ec98a5531840d2216a07c084856303807bba2a4bc8aa95849d7fc918c30454af3b8c10a2cf3d40b2675bb1d5e9893c3a2f8dcf80d5668d9017adb17fbed00d21d456c5e5732fb8aa0a0274df69904d90086ba58cbece3b652b1528c208a710fe4b1b62987c6aaee3937e33570fc7170e9584c77d127a538512f8760cb2c4b4a0f62db36a315c1ad318a447df64c418aa38f9dba463415bb4671515734c62c23265f1679a0581387a18ce82272733669eaeaeb4513202e02690d63f6afb2475ddbb2f108a36faf52fc9ac74f7119a7cba753e9136f1ef4d8466de8a0ec23eddaf9b240dce6cd3d86ade71cec4a3cd54ac57151696d10d9be1c3b9dad7d2140b274b69bb3a9ecda31da49881d742452e39e653f64022211235b7944f52cb96987ac32e4e20badb139de571acb831f2ec241e13e4d7a223087d871f88213792684b4bd64bbb02c30ff355fb5f2217d8491dcc8b70dc24ac39f6061680d1cf8b00a53b23c6fdd44dd013cfa07c2d4ea8b6ad9d705c007edb16511161d3edf233e562c12a101f8b00087c211afd1dfbf41f481738018a758cb1e14c46b08a4b7bf590792d2d427d2e02377a483b50e1c890d37f3c7e13020e80f7ae3b552457630364c2ca60dd90b487c04ba06e8786a1e3f6c1066492ff9cf0b8b2c8d8415a90f816079d7c21ad60f55ee16a419e22629d96c2ce0d6d848eb4b9c647a222e61588a4942749709a71bb2195a8392c17314ed06dfb5d38b851a5b0a8d7cd0f1098e049a9704f77c302b5c315a60dcf38118bccef35c02808383b7b290aafa2cf13098f96708bc0482b1cc27dc085e1fb6770da27926ec61912aaa210cf54b00fb5e90cc07fea7dad67f8b086419112600692f188dc203b208160633d9fddc3c25eec351ec098dae8b33d641112036a1bd47c9482ab18039b87416c8072905ea3d1eb8f1fe8c2ebfc2698b49a09a46b0b1c112bcef61f32212307194ce5557b02755d576475a7c151cddf399bf8aa11db0ac735cda52253041588eaba418a3b4b82852ad95c6e19c1bcda3fbff25fcc57db17fce418bfff7f95d7b18b00012f28365f95a916b26f049420b14dfa639fb83c01b68f39db6ea7f4750ce8570350601c1cb6a7f9d2876b9984863b82fd4c6216d43f13c5ce504f49a92b9012bba0d0f96c57d5e49d54389248579dfde21b1fabb3b4dcaa9962d24adb42c97926ce1c8b913125df06077d4b11cd0173aeb6585ac2b7af343d1793d7280e2ad397360436ef0ff4d0bf3ee7eb8660ce1c8b91184407ec8ee130889f8bbc3848a3cb1865b10a348fa9d19b3ce0ba95f7e2210dd393a7a30d39ed9090118f407712df35608bb2f92f4aa0fef3cebd1c8a9dbaa16501101a5c5b2240d862bed75ffb626791c265224e82f630414d4632e31b6a022928c88eca9107ef35a3962fba220008bc0a68ae1516ebcebc374c42850a849c2a7f8011e55e0ae9004062112c1734cd3c3b6e9df6043caf5ab17ac00b0119c5045e04d4050ce69660d4d8de8604d51880f3107aa620ae0b888a61c2b4e700a5084d994b20f26be13fca1c7561293eb41d7cbde89ef6580231b748dc5a9561f4b80a437cf0cb7df86a37aa0b0cca6ffe66f5d2da5124bfdb6f5d1fd95a51d3456e7975169a0b0a2670c0f996ee59b054a374cf74f4fbed362bfcffb3adc3eb15534551e325bc543b7e2c21a1201c0165d7944f42ff01cdaf2e3d16e76ac6830843d204dd509ea41b8d3e7edfba465d3f111156c7c6b855b74a4b87b9974e5d676810d99fc3ebf12837b88b6fcc63d8debce41faa85080179a810523dc9722599ed6b2ee4937afe6fb54c3ae88116a5a4db4865344c2c0816f715f2b9adb4a2b4a58b73a1bca4936f24c68a11fb6577160d12e8d6a71e0c6b7dccacacd4dad6c6e2aad2c61dd47222bb91be20a459705b9a436631967b429cf4de189e2d28ac35ca2e891b2d9720d2c0b80baa171f375bbb6296025ccddf20c5917c58d24358484ed3ce0995277b61273a315a81b5b91b913af1824e5bd794a3b13e4796807b7403f54888dcfdcd4f9fd6c59c872242d6dae942199e37dfd03f7e9f7f8fefd3ecfa7d7ebfbf4fa3dbf5e8fd7d7d3f7fa7afb1e7f7fcfebebebf9fd1abf70d8aabbaebc58446de512c838dc1e6ca326aa852d7590cde68fe63b8e016a5c744572b7c921f870ee9498f8a289910a3d8a433ee90d2a9ea773297d493179ccb9aa9033555e3d7769d57b7e23adb7cc51a39b944e0daa9bd2ace99f0b77da9f341589531dfcfd5661c029b7f1120974a4b7bc2cee706ad19129a76d278e9306aded3af4daa28b40f81b873af20d0acfdf459061798db72f702b57d3b51f6b9f9b5e90af2b075bf7b46b0a77109ba81c6cb99829fe8d46dc1d9d52ea548206c4fdfb839c01e19c1770afa0035704ff385b54c3d195216cca4d5d5ae3e5cc52b91511e61de458258294562c35d3dcca1d0573aad087283ca27eda542d244c6fb1d70a2a63429e7b3918e651aa29b6bf9ce7c789d15b9cbbbbdd53805d539535cc442a3a5361cbff0b6588b198dc961bca68c6615060775b9e8a409cb0768ddcbb49619e8e3a214f0d6267abad5baa86d7cee84269f67b1e24d5d7858902733360fe7359d88567ae2b2d78d1ef5231b108c0788b79448cb9fd652683af13f30e9216be508a9a22f0c1af6ed867710741ce38edabd91ff0cb1f6f6ceef6ff118da2af5d8cc780be236c04d0dac8397a7a296357dd70978b13e82f497509c905679d6186bd0b80bb8fad33e74fef72ce6332e035f7a7cc9180d5090d9408c3cdb85feac1e1e51e43e4fbab255fdcfe3d486b678c7b32a023d0d4d3dd5b7d0276be7ed4ed83a69663d0f75f3f56d59fca89155d3c8b46cd066e6aabc194ea9bbc94f2bae0c9a3da19a0e5a7807d1ad4fa940f3b74ac045eb16973e102dcedea62172da5a79039c6192bde46bd59bb9708e3df56ebe94b015ea14d64d6304ac191f0a5356c098e60f463454405493258df7d9ec792a0921445a18211d4be328535c0f82c8ec1a0172336ae822d136002009355f417bf44aa6e0a21ec9116fefd0a3980cbcbf665235aadd5e806fbc895690015eb2b27a1a1ebfd264e04863547bc7c0fc6663e4233253b7e1e374e53b480d3195655293aa86e51fddd2955aed903658d5a8ec25e0303806d8f699a2d1fc753c775d9011b668d1c9aa01abf330e8ab53f6b9bfb089bb35c4c9ad11df9f55c087ee3f13aff213c4b7b30ff14c96db89fa00a01772f243fe1516e9c71308ae9c849149a2cfc920f5b76ee52142cdfd30428e7cf9a2da209ac87cf28e8602e76ca856316a3e595164ad5d87206b241dd922d7da3245246d976368819796ad3068a640ca5b6dcadc9ce8628ed9453a8df30b667968a7c608967c1302c06c7ad05f760bb20f9d71469afedff5ad93af0e734cec9394dba740343ab86446b41e2e50496f8745727cdd9d2c7d90c4c847d8445b6afe7a6d756f9209d2e32dc4e6d668804766a93c3a8ce490a9f4e18bed7509787819a56785dff160cdf9ce0de2b24e1924f4a5495978de2e4cabd6458d91be1024992e064cb21bc8e2cdcf40bc02e87631708f6f7f34cec709375a57f45858cc4d8f5ecd7ba383ef567d7c095ffe8b51c6ef1b6231923c8bf902e084adae804ead66583f37db0bc11742322a48fdcada6b4f09a3279cce2117568900029a313f56acd12a830c4bbca3f59f508c35b1e16c198fdd21617de877a2b6c37a4c75729b6cef9d5d4ab93ff33f72b67501637692fe94ae9222602f6529f022d1e93bd63fc55e67a4f5a5da3b43bce76663faf8df42dcc287cbbfc31275cd89349df2f70d94e6c1d48da2f4a05a087f9466e327ac73582d38418af3511de35d1b7e8cd4a51b476059f8c759f451393369c7ac20285c7117c25e5988309e9ad0790bc2110a757f93af52e3a8b6e87fdf60bc6f18e493e32b730e8881bb01c454d3331784312be51019c44cca57080a5c9a2320313c30af34f7c96f14b6dd7c4dae712c2dd26dfda84836c3992425630c5ff0fe72195aa9212d76c519660cb13af1db56a69032057f31678b73019463fc70c0c7e98c4756f68f201d380673704be3ab7cfb2d63f6fd705127b1960df52e763b437522343c60f6cf8322b3f41dc028bb40a507a4cc528b781dcaf1ceca43c414cc4f37e5b0e43efa80144e640d4c99ee08fc147b6da51afb7b385c683edef08ce49503a91f27297af2249156e8fa47e1bf7a0f58e2c6bd1e574f9aa4b88f632c54305fda67154adb9c2807fa42ec7d0e46f4843ab96ca3885d6696ee5452ffff0f0bbadd4badb5bd045042a1e69f37c63a66146b8d7994d43e94f9e24f6dad3623610db699926f5e4358627093150c9aba8d6e2f52715f2d21a79a955899dca26d3e0d224dab0c7f8a9a49b47d235ecfc6c7fa7a00ead3e87e4f3a7a41cb403b1f28c390cb39ada7684eed12d0d130be7cdb1b797cdb5a2a0ac3722b0856ee8f2aca1a13c819d46656c0958ceb922e5ae4882c1857cd09b0d6a084d2d5358ea11712321467ff8b820215c64e7cf3b0a1255dbfc54f3ae908a4f86de5bb084798ba079e178ed56aea9455930d98ee07ca517d3a1dad0803514895b8540633d2d21804423654f7c476c5150902f4dfe0f0b5e1367526d90ec7e11f184025096b745cce1962490349ad4a8320f86433f8e0ca58134bd45395a666c953b4b3cd9cf226932fd065945278359512fbbbe349292a5b620b751b19b51a50edcb9946b59fc0d008f240c5a33985ad8ed9a93f8f3e355b62fbd7ab0877684f2d5a4fc4f5b3472189a45a2f806034fdea274518c0f38caad0a9f247701841e2ac13db504cbfa283adf83092621db4743e61d425d5d464621fe6133818044c9da2b0deb916783713a0dbb868cad64361a4a1dfa2fc4a935fa254af0b9af155de6d5b41e094af33109a958da5fa077e2f8af526f1906173a54cc0033e87a4487d2f5c3fd4741eb6a94f2d2ec6aa324f48617f754f09e9fb7e6a11db99d63672c6e235fa5ef8ed829372231bc5df3c0b0bba747e99d909347a2f786c59bda2975c24adf78a10acbc4ccaf622ff2bdf5c3b4b79caae1c334aad3dd4614868116998caf6165f3099278a2fe88c68124502de0000fc125fcf5ddc4e3b3614313787a5115faac0afa8264d13faade766813e5d7b9a88a4ef400dcb538cebddaa2800283c5a7a8580e3f8e75d7ab2bdac01d9ee4ad50f127db59a2916c08c048ed7f286f7dbd3a0d14ab011fe26dafd096b904848d80997136e8557e010e675bade62cfbc14371acae3cc9b03d9dc9ab473420532bd35cbd4146da258ede76309a3cfc0cd260e118805ac96a70f2d4a18b01fe1b9ec1c768893df9279b104df65ab4b23b1681f97585585ca5da442bf54aa88da97227d8187adae315893efb800fd553c844519fd3a37c1c551b86c971cd0591b23999a5c174c05c2687b49a79e3c1a70c09af19f46fec1cd838d372ee8c000a39498608c017d3478bec02bf4151f11bc6b17e11b979ab04dbc6b80b6b4abda3a8e511a9bf04ca684ffbe24084c0c55e4e140b322981aa34a4c02d4d73e570904358183c76361a752684101ea31af99911047d23d271108ecd3a30ea457b383892e0b73e46166fd1969bbb39e991a07b1b512eb210322882ea091d8d649bf2904c58e9b57195e834275eacccffc5768b1f64533af73c08956eaaf481326df3b738be3023986eb6639de0f48239b970006c3edad861a2fa3f5ed53b7b708b7dbf963983a71340a116cf43a7ad5ed04794ff08980e90df79e996e7389b048a13cc7769ed4005f9f77c473b986568c6808464694c1a3070c706064578e25e8df64a96b5e47f6b136c9a4f743f3bb624340d745e73090735a99d6f229148d1b37a847030c44857410cdbc2030561027979899bdd5b024378b504aac6ee99c737ef300f5cadfa7930e957a99030627d7aef8e7f6ef4b7409aec5beea275b1d9f2823477e4da7d2f31acdc51816ebea2e0cd97017321e01b304f47079bb4afab2173b65644d411a247c81a77e90940b19aba3c0be2ab131231ea6b44c90c7d56c58932be41fb583a14992c0bd7aa15278893bf3982392c14993669c6a5565c21c60d7fae1538ad21d0cb681325e3e16229071f7fe77699c1420ed20681f0cd522cf32a5a5c79026dd1ef81f2ce426e4a14489d43a6ba9c23a5878732b4b0f69a7852c60a46aaa38f0b9bd1d838ef1103577dc34e3bac0b5f2dea63a6a838064d9bb62a34fa581c373afd8dcee7b744f8d6450a1eba1af30e90ad20244e4a36ab6cda315812f7d014d7cf541fb1acd0e9fc534d413fdb16f0f3048f08a0d5e4fa4b5e4a4ac467bf782793d0a0b9af459c033f2f7880f20b3e860e722aba0437fd82a9058ce41dced3deea2d694b158893d59912fb9fa94f7f73ebc62f725b59e480df5b01a4c6b24b661972b6a3fceed1b2539873b665d022b02bb29ddecc05c267aff61701f62331d607ac78363a00d33a2d97da0f942049cd1d328c99d0efbf91f4f66fc8a4fa17bb8488c8d538d7848d342fdde978ab8b22a14e82346324edc8664076458018aeb6d143c043a1449dbbf35f073c9fc6b269cb0ffb460262211ae4033e7ed2b36d3bacd573561a45df984b0a027b91f84dc022ecb959c44a8f59606d3536427316ee6f61239e91729f151c0bb29e76f7a8e798c1837b2d5e5f1810d32d8f793db35395cf4076a7f5e077edda8f95c9d36addc8335de063014c19d3e06490890c71007e09d1a524e75f01726ca7ae5e7ada8e670fac5f54970a16ccb7919b43213801720b3857bf601c67c33b93a0d440289ba3aaf2449ae3ec8bd8c31c08e629d3d05b9ae00d85289529d7ef7c5e6f5dacc51fde0b1654ffe27cf3309e65b9602ac168e582f8bd8e0f1dc97a895aced11963aea299bb8fe234c75fcad5927dfec2a7a43c0cbe9d6dce4621c53a155d60100edf1315a2a3d16315f7593b784bb97f384ae0718c886c92e09070995cf04c94a9482bd4d72bc38f08a70a73ac5930ae4b3e3bc3dc161d12bb53f5f09c70b34dd680ff4901223258d90a55a4cecc43a5517226541c5e31b3b866c24967bffe1ac60bb59f4ee4de84acf7d3c9d9c24f1cba8115bb349fe069b38b4180c2ed986cfcf024369b5f31451c73883c86be3fb31c994ba7a8b673d9ed12d39c1b24da7b47f9e45e00d93437571a73cb1a5be5c6beff919d432a7348f6c47bb3f33e62e765bd84b4bbf903123900258673abbce5bbbe9c39a032c3a78ba55177ccd01d930323b69ed01f400b4cef0762224d63354a51867f58a96703fa4385fc2a419ade0768d2fe6de8052eabce096dd3f806f10873813a7b2a6f771b12ab32eafa44397b4c3175e800ad99d41747f4d15922d6c8795bcd76268aa2c8a4b7eeb72fa6fa43728f2e45f9a50eb3c9d4b196bb10c37b93ca3e8e9f92e6388fd0e958f6bfa75150bc62b74ee974504b8d845f953ef0568c807fc832bed7f7e576246065a7ff4a5a745990c8a815bf523d594f20fb34464f0e3e83e81b65eb915699b9acb53ddc839c37ffc064b750589ad79492760dd31cdb519ef652ef924784145741858b94bce1aeba50165d385c01b6a269233bb23a8cd6049e03372687c19c9660e3378b26cb56cf3804e72236b048a38b314bfba1a8648caafc8d2f63c47a184fbb2bec8009db5a5e9ce660e74f783965f44dbc13a6bd1ec9a298382c4d21beeffacc7c3c5f7927cb2b4b926d41616f5f8198c28270e27fbe82733389223433ff892cc25a35b903ef1db18e694d656333df81544ff51961800f244d630e49ea5efaec9bca4f47efedc4b5e30f69ab6bb714707a33dc460a8b1131f46ea72f56a4f708d66b9d01819f269f16647a620741849cf4498b41aec0e19d3e9470f6ca808a828ecb458bd16e57001e466abe15d12760689186b9e30687a615cd3b66860996b843d6db762c8598888b101ac0950cb6d4e682767b4db4ca77f0812a522597fe96ef691866513b420446671d57509dee64090f31780fb01c1f0c97ef8091afccf1ad673bf5d16dab79d0e8aa38feb8d843fcad3dff4f93fc7f5574f7531fe2636eb9b87339b64e425723f05bdaabe52a81360387f982a6fc4c52a3f22b1a39d2e5ced81414b58c70ea5ebf0b96c49be25bafc6cd27b60f9c4596465915f468bd30da3a407115ec7e3683b9bc81cd05c1e553c097e2f311b19636843115860deb16d9d8008c029cb72236e159af8c3469d9c3cb1a5820039a1c01c564da4b1b31ba7f1ad8f3ed269ca8494e3e17741a0d036898a6fefbb2e5b803965da6c6a30f15982c3c5e88ff2faee740f9820638ff95212055304e0a05a053e1bd1ad7941220181865b833632b3cd1bdaacd3b0dce532ba7db6675d1103226e831774a018817e56cd71445c10cccc359dbb679f5e3b98f6e9be709bafedad4e3f08e1e3fe9471dde5ebfef908752712f32d4f9841773beb470deddc947b41b89b4820775f970cdf265cc31ae116a4540f151c59cd0fd5c911afb319b5496618b6a6b54b82a49b5c949068c66d3e0922671229e65069aa9693899d1ec1a1b69241343f49ebda1b7ebb6d0bda801da0ed4f82d75a284090dad1aaeb580519cae9d30ca8157ec23877803c315df391f01744456adc30b14248e1962c4152d2bc8f65708a059430c22316ad5b5e04c69bed9592831c750e4bdf8757d6c806eebc2f5915c5d1449191d210c396147d9a7cc79b27808185b5a6098a969233a2e3b4d11dae8808c38200ee48aaefe1c1c69cb696bcf2a22a1187f1bde785045bd106762b6be2a2ec64694d69c2fd53b146ea72ba8a2befbabb29273d1ec221131222b2733f3b22ff9352b8552047efad76b033053544452dc2b092252d4cf9e951ca16621e5dbe6a8ede1732c036f6a0334ff1ddb42b2cb29863c1b7bf00ee504f1d577447a682ba73272660f66ad9f4ea633d9b68c20dfa93e5644ae4a2391f64ac8ea368b3a79b774e2c6ca2b917e5c88dcef21baae57df392b778adc47079a6acc7e91a52faff7993237b09957486bea66ace661b3a3572b2358dd76245d29bb5c3a026ae6a84cff3af94da78dba152f65b2447993565272dfff68361371912482615ed36a5e3ffa8ae06f89abcff0085627dc2e7f48b2855add9e0b0ccdc24bbd9d9ce82615819eeaf34b7a632f1a5801748a01da2215405c608c5c5607fb1ccc82ec6077167bff0d246ba7ce9db93579a8c31eb36196b062b1d7fc7f7efd7d8eff9c77d579e2a3d5d1814f63273e7a0d99f821498550ae08770bfc34b4747ac4bebcae53129a39d8aa41a3a47258b95364dbfe3bea03f003e203254630f9f8a2f2709464a6587179c7eeee3e55cc19a68cef891a9cef9cdcdd5bf470ee4277f71fd22dc20ea9795dce6fd34f56c38220ff21ec6d590f870a01873d9c1011c54c2773f5567d3846b168b4808c39963c4647b2640f942db243f6fe1642b80f00ee7739277da9fc40591a37349f406a7c1298ce0f5382b4feeeeeee1b360c7dfd80175ca09b2b1d0e373e2f1c95c5ec606a9b86fbffff1c636a439178428eb2f60386c58c7e1132f0cad015a75054f41889f8e99aa6692d4326f4598086a0d773eeee4ea165c9f9088bc9060d122788c88b86701378cb39e7bc575ace39671496d486128b46a45f4051badf768ec297ad6e2054ae29a0d22ddda8d812b6c49abc0d2f8aa8de17ed6cc8765aefd8dddd570c531b3a43932dac386ede8f02f86fa9816a6670ff2be601a512e063c93b2a99c8ba314c4548495dddf0ea0f6cdcc657f80a5f214c6da88b601260ed4b0b14154c8bbf25bfaeeb0ab4e2c3b9fbffa7f8811d3c9091a5fe5e748212eb4acf20d72d8b65d992185a443cc2fd47d8a538b219a1a3217122e3876ca4497114a9c465a56965848d201f32e6e8a2e36cf68f79c4115d553496822ea41619dd1257813f30320355f5c3d84362f2b6c80ed91b6881d0c5102f04562e2648b86f321a33d40b071616980d1dde540e1a298ffe744dd334aa7f7aab360720810243c9b9e4f0212356c50324a1ba7949e897731749ce4a374822d0622acc8848e8c38d60ba8259321363b9a5469665513ec6824383b6622c3bc489795b64876ce79163eef8b81bd330c61823cda43694663dea646d675b40d2b418d7ee3e632072bcf8622246b1c80c3cf6c479d36858e5724b6a531bea0e7186a499cde2c444c1f911f5e2e8e063a3c84707ca16d921ee44baa40a0344b8ec3d106e911db2b770c941bdd1ce38307494c3a2e4e4977420fcda78772a04d0c0c3e2ccc2b9e7520b4ae3572be301a03695930345e96524e83fc920c9fafe2917c62440d17c814e3da8145fe21029dd086e911db277ceb1aa37cbb1b616a068717542274ac84b754bfc64a396e333b7fbf63d9b01b8ffffaf01b304b4d10dbf72b197e6cdebbaa6695a7390fb9a7a4ad9905469f2692657b00b219fdeeacff6ada850b2c5fd463190ae07d0b4ff7fdeaf6bffffdf10aa36743d8ad06aff21ab65bbe31d3bd6e025aa36747567f28ce0dcdbedee7e4c6d687267035ecced3d29c535c5f802862d84098946787409061a10a3941d587800a648795aba527528b95e19c856963afb073d8afb99725e811697f31dfbef28b5a14c505699c24f4bc45b1aef79f25a918ddabca90d75ae4f4d55cb6093b5458a5eec5c50e4a2aceab106f59619fff920fbab7339b778ee2995404c26c34e990ca5302264e1adffff3b96d8472dfa234adc7f09f0015b206014e128c1384951d850f16a2980077235612f5c345b9df4a5c6112b56a4cc50b4ccc18e1479ad886af2e14fa2a41839894605bfec3aa8144e88eeee6dcabcc16235260c680d331ae1184307aa202fe6548d2ccbbeb8bb3b4a94d4e1dc9db8a8c4e6c4d857cf9f1a85a90d6521168dc8a76054fe671c5cff68a66c57976a03643146d41ce12371777777ffffff87c08a89ad1e2ac066ec7062516cd9371c41297479c517d06a4d314c65a5bfe1cd694216bfa50ca21525be59d3e9eeaebb4078029b1e2b184641121e3e6309616812260382189584c2a848974a7de554bd0cc04642abcc99a0031d0a76c34b8792a60e783e0ae040c44b4d081266cfa4e74c49a49efac382c9dd1212c054f2b9e81079b0b1a47ba022fcb9f891f9624bd586aebd5cf3ffffff238aaa0d5ddda7e69c73eec195da50b62764d1c0454ce6be9cae3aa80173c2ec9c86706436046054b8374c8cf0585272d11574777fd1a536b475873334c70a2f49f7c14a62f5b95e37218fafea087934c362ffff3791a90d55ae199a4b5d4b8281e3611166d88e0f95c9b64c2693c5daa752aa3674ddbd2e44a381d0f14b6826c36436633667becd2dd51674894385548e963e106c90fa82812c02facac03d09e74d221030439ca14baa453385cae9c699f4cf145dd334ad7b5e06b0830b47b3446fe843939e3c7158c59e06eeff97b30a0fb99cf1cd370dfd0351b5a1abca733a712851cbeb14be637777d761531bda5b27e808f5094cbc68786a4e7c6dc578785cdc1a313fa9d1809fa1241d4d15289ecb68be4b272e2a879e6a43d79dba9e58e5dc87542823b22ceb014d85389479a3139610772c46c4a1414ac51217bfffcbb26ccaffffffff3f1ae434c4fd1771cfa6eb66331cf4dc2999cd5cf71dbbbbfb10d713e7fec50253f5f105a36509064d650c431417483b9bbd524f90dfecb7f7eaf8ff7f0631b5a14563851948bc1da0e262a7c90351865206af86e15ef65343a7ba5a87d7f339370f478cc143522b7fffff3c60bb6f9e449334a90d3d26b385e44ece3e9464f27e608c310c546a43adb42ac07ce92a7468ff8689449fcc55665cce3967d72fb87e21c57da72a1795908865d8e9c940e8a0d52937d02d35de60d43505dce178a76cbefd20d54af9a0d5d0d493004245ce0a89c8a8c9639c306a92916920479025c1f54a25653a6fef1dbbbbbb6b1094b37b49ac0a2ab5a15618439556cd17b525747563668575241b312eb041e5a6281bbd50a469baa6695aef3c49dcddb370e84bd2c3b96741e0ed98a635793e127e39a7bbe523d1201d9192ba86b12c507222c1faf1b43c96d20d4d9f192f5cd6b037b5a14e0c61cfdaee64c734eda70b98754dd3b456e172aaf888404bcd6f5764ad50188dda52e0191f84ae7e7c1c9da4eecf4ccc8319262db905d2dd3d83513167df3d954f16abf2b1617e1d892dfc86cb0b094ec394aa0dfd116249bbf2501a233ac49ce018ca69d9786d74bc7803398c3f3da8f0fbffff07a93871ff31b3183e763880f1d02809f2aa154e4de5babbbbbf327775dddd51dad486bac399bc010a4dce38c613b4d7c873e231979c7339fb8a9c6b807b8a6ec68568863f240b3c22804b3fc25d8e9110120bd5cbb22cf051a1e74be5e260578b1a2e390f20353e1f6a5a0e3d31fd71a9e1f86a2572878b09990e421ca772aa7012be392315486a6edf308cccc28f5d7b11c24c04754dd3b456db8dfe4c69da9a73ed6d4a01870548c4ed2b4b81846e2c2817011293a1251e2a28c1291cdf69e9027979b1c002a6aabc843327a6863072b050a541484cee7bafffffbfc592da506231c396b1fdcf455c2c21d6f7c7ffff4bd586ae2c59d86226f4768bec90bdff77cef67df6ff3f91d30af78f23870b2c2813af131352319c4ccc3418d00f6ac3d153b11775cc49372d5efbff1faaa7dad0f53f258aca12ce662a8d148b7b2229ddcb960fb4a70713a90373f9a3c31217d6168a727499c9bf2db243f62ec19255cdc98f1b164d0e55839772efeeeece046282eeb2f0063b2efdb91839dfc5762ab10b2348a49294bd6111d4feff591cfaea96b87f16f7b6bcb9d76587fbdd16d9217b0379fbe629500b244e35f6c46bf250668d17ca84d5549007cf0c620da927664a45c5c498094db92eeab293da50a60697a35c937dd1403d30a2c95ab9429f3177777fe2d020de0ece5d07c7dbb10b2f554b720160cd71a5ca053b7ac1c35681a04dddb0c7682595a269cb8972254105528552c512638cb10c556a43b32ec870b13de1050f2cab019c333c983051e49ed49e12321e132dff257acb862ae0726f2184f812a113d18a70dff7028c159d158a4f9fae699ad6dfbabb6b38faca1a90743a3703022ff38046ca8f02105e17332e24c0709ed29b26560c1b062059aef09e90ca1a48a7412385b654e61cb3a90ded0959882e8257a2a71eeeeddbba938100b5d1ef02563186bc7c5d264e583b4ca798984a960ad70abbd25b11aeb09088acfffeff6f74531b3a9ca199603cbac8ef30c678c53cbb1501bfe1ffffff65403b4c9cbbfffffff39a688a71041fbac08e6cd0c8613ada2d8b766f30c68b51bd0dee9bc52ddfccddddfdffffbf8543e615b1059e51cb5ab51dde1050132117032497b30f8497339397736edfdea5a604ea9aa669edbf09f890a070eddc8c50fa13914e67bc00cde94006862b8651a725dd35e15ce10c52ec43e0e0d813d4c5b3343573e46a26b1582e00800103c63b76777777777726d68b73777763179e6f4ed7344d6b59f096f1ff3f18abdad0ffff3bea8dd6a8e5683684604415f6b4c23b7992256f2042ce1db24576c8deb8cd09187122e686ca84f3240d01b414f38edddd5d47e842d586ae3b04b7adebce96397bf3d86efcce582623fc66b37f6b04fd54920fffff2874a90d6ddd219e806246840794c19cdc54a60e57b84346b85efe8edd867377770d31b272765dce39e730a53614ca4aab42ce97ae75952e6eb1201bae7675510090a3dc314de3e5fcff2429d4a8e24b0030b0c90df560bc52e8b45684404ea2bb3b3a44a48ab9618189d776dd4c6a43698e147449bc7d3ea76b9aa6758bc291b91851d6ab69395dd334ad5ba6627adc206959693c577a8648b046a9a4ec0704c285804a0471f026f379551bbab668c9ef77c4edffbfd007c618e35d32b5a13bcc23a69fb083facf6b18ee7d3b8aabcad5490c9966b12cbb228b2171a8508e185258a20d662119ca1b5e10118715565ecb1e3632b629b3eeca16d9217bbb3bc4fe72f0b8df7843fca1c0f0d89989eabaaab9d1af02a4615166c8492474741d44309402705e155328195f903269703915538106fc5ca39f124b3b55e98b2c23959ac164b9538011959a535fb024b026251fc9a8e60eabe707301528501d7eb11e3d2bc40ff21f42d442957b1bb3b02bbeca818b948c871d10522f3c3c87cdccd06d4654d452fa16e56154e20d2183a4d19195ab9a11e576f866b3d47d79289d5878a76b9aa675ba5399485aafa6c5388e295d664e0153b6631908656a4397ef0410cefdffffefeeeebc181404dd1418ac1d3f2e321b93db053b4442cedd3d7b8e10063067dec8feffd779551bbab6de1aa9681d00e5f961ebd9f4d3c2b1586c662c4a5fccf9ffdfc65042548072046e3c6c531bea56180e6b9aa66b9aa6b5abb7cc047d7158b06696d70e0d20bf6221a000db58d1dda96df0f6ffcf8289591c61164c18e7f5dddddd8780efff0f2cc1c053740c9e70365f24b158ebfba7218ca90d452a9718438817e314d57d4bf41cd59195410717dbcbb043d8812e660d143835323332706c8273102e1c17aa96052d0b5b215c2f595320356cd1f543427610c311c385555a044663c47292ebe1c046c9e4050e1408a02ea64c4c5a41c4d3b7c595f6c02173775fc195916c46f66a464821ce7fa89009e490a76b9aa6352e518fceae594aa146516dffff4b8072ce1f5a41aea50be4654bf63284a24524849a168224a3ce4c521353cfad4ea85c5074a2186c512abcaeb977777757dbbdbeffffbf06452cc63a5dd334ad5be016638cf1d532b5a1aff34995a5e18a4b0316ab959bcdba9a807acb9cd67fb7008726b5a1c7e4ce041ca68ba4608c31c6ef40e7017964433b4caf6b9aa6f5530db70bfda1d16313c6e1c331448a2474d5f2b2697824e717230f825eb0230510e630a810139276a8642c9f37e7046a01d31904184104511ccb2341761a00148008118e9cc0846cd430140986e1a0380c0685c24000180006830181300c0931100b53590a5b580725011bf41843e75abbabb6c695f9c0bccf6c3a1b690310c82e6202a01bb28aa43c4accdf2aa4c6e5b0ed5d07533947bde54a837d3c8d83371082d0eef408bd1211553f202b7894468e5c6a53cf5c5fe98406346e9c90bc57cfa0831fd2892b8b4b2138d5dfbe1be17d56fb60d8bb438c3d14b2e3b1fca45a81225b54d15be458f2747867a949abe10e7ee1c900a0f22a6a0b066301f120b08d56f8a186d65aae239e30537e7de0377e34459e9ad5a9f4943cdceae3144b0dba67df4d5bdbf8d9d10e5dcb1fa60fdbc248733172a8bfb0545fab78169d0006d2440a26803809effbf1bd3fa77514ca62505460b40294724b6bf38884a236024db745f4ecce24126989fc407d22b6596ac89f3cd4e9e2b4ad7c1ab887ebdd0392780bc2d57f1cbe6a9d6bdd827336c0ed183e4a1e3c3949f26006399bb16fcc43f1c63568a1d35e145d0b447fc898d77397973f6c2a1341630775eba94bc2dc8a26841005ef28a43b0202a7b562526f5a2f27f0628d692dc5006f4191303e6bf4ad8506a5e0e9a6a89e3c5a7e2682dad48289f0bd8aa829edf5b2f42967394e0b89290872f7bea044d8056b6858cf4bb2250fea4128d0642276e7b20c6d66d57f1c5fb13b59ced22d70bd550f29413843916094249a5ef954361ce833d0d1faac68e5358ed95b5fab3dc7b9a2b62246bf04ed41b2e8aa186c053e7e20ff2b0039f82a066c531543d713e43d5b500988744cf82b2074f53fa00bdfec6a8cabfc0d5dbe5c743e46812dce9d51b8f67189e21a764d9e85078baea8b0383f6761e24a17873a7789cfa2f3cb29cdef874efd6df9a58b7027a53a8ef4db6e44bd2b4552977d88d666f37d3024ee5703ff4a423e2ec355e29b453527070314cd6de32749d9496654899d28c57df488b00b3d4b9bc15a043509ce826d9934fe6bda008b970c316aadc6d02ce079a8f1236d722e6302897162b4477e3f0979b9c38b5ead4ec3af11b347afd6dfa2032c08927acc51be3402634ad56650a3b8ac1db700eb3260ab8ee8275c4c08ffb1c4302f9f70a2841594f98607c0f3d2c27095285201123450047a214e9ffb016f00702c45bedeaef5323cc7a7218e3505d87c6197f49ae683c9aba20f81bef00f87f44cd69e934eee46b7f10a674c4151c347064643890f69c7c94c38bb9b47ea277801e1a0e5915f179dc722732498ec6fafa4058da423261a6db5c47f62363eddcdeb89ae0e18a38f1a6defdc0aaaf0a2bd050c1f6ea53021b7a9c003af56f3be4234ddfba33e90467c55041da65bdd701afe91d1f64b570f4fa2dbef767c2c8773c8014e0d014b23765064278af486db9d79c1d7685b42af499b9ed6c70b0e30aa07e18bc3e99fc76946d0c18b968186ee45c4a99557ecbc86c2e52bc48a15fd73fd571547d85eb47fbe6feb5cd04f5a8e6b7045523093d3e2d109a78ad7adaf909b41687d8b71da5d206d11d63dd3f08644d0a08e8d2d3c473040a882420fbc0472cb63a845f289e306af0147933e9f5bb3e36bd159e53e9e4ff12a1264a2ec7608fb546d2cc1b189a6c22b07a0d5d4aa9adec3665b1334721d41cc7bbecf0553cdfd7394bc95e73f18aa0957a6f70acf34424bf957e078d324cd47a70e0659ef532a367dfafb926a03bbd86570d3856352722de5b3b6afa5f9566f78164d316c1f8c4735d3845d8d648023b3a867bcc3a3a8c11c0f38e9be054197708dfc39685ebdcc174374fafa458c05e07bd3808cb692519744268e89297c7adc92702d6defee1e823620bce2d58d533b8028c353b8c29247822b88315415d7967c6fb7be49874b618149dc0893d742cc509018ace4aff1fd652d19659c7cc2417b68454f1552a24ade714641456139443054d40f7b7cbdf52c2d59befe9706e899b5124e4cc7edb0c4bc35a9c06874ce8fbd4ad826d7c3ef99f08eada6461187dbf8855cc1e644aeef660d38139749e537684b2c2c28512a1da1e9fb8e6621078b07b1e4da7fee1c6621db03a85156a6d6d95727def3964cd18abfc1ae58cd789cf9504a7212d275c1ae97d4d318fdc26fab43f2364a486d2db69d807e69d3ce3bbc1177d9f162ead3bf326a78a2d15f44868659f8342a6e2b87b681953a7db353d9cc4a7aa55a71e2fd31ffecde2ecc51339096798fff03bd23972235b73de210e8934d531ad36d3f7e2b060e50aa51c69574459f62c5bb142b9cc8a4641830588a639a9cc63848be9a30d7a1c27fe83c25238dc6d8b57e13082115d3bd408e4c9bcaefffd0a7c4fe09b34da543931b0470a5f297230a2794a60d998cdf9a1e10146de6eaeed531a6c71a459cb158e87d22cf721b10e8a084338e1163d241dd781bb4919fe9f658b8d55e24bc4dee11502948e0f5d063b38478eb8ec5c8a9ca7dc7e133c9ad139622fa31ed436678129a0fc5bcac1a6b57e215094f07cd0e0faae6553424308b90b9d3c90c4b154c733f49bf06e6be8329c87fcffd61bbaa79e5702e790876c1683c16c220360cb14ea5d1d2a3be7915529319d1ad0d245f0513b7908ed6c11422ddf84694a071b4439434cd92d3ad6c99173d445bcb84efc70081c22b0a41b18fd41d5a43ec2d669fca9605cf6a43b0b6d6bfe7343eb5a013083ee73175a91da640420404bc20ec91e3fac69ef452a7234c21c0b3e0e43130e5796f76545ea3aacba3a8f20561e80d1ea34f0bfbe62bbdd80c11269053e45be362dbec787e56877449b9b3f3694c8b06c47168ad346152941ca00b4bd8527460ebd564435fe7533c71b711451e6874b2e42a431e14a3bd7073b6b5b282a118e939705bf3f56ad5413cd9f0da4b442dc6fc5e81688295f25fc5bcb082f25582443965bc4cb2e7741fa3234d3d26a569f2cf2fa7fc0db411c526730d6ba76fb15f749dd274c820ce60ec9316ba198058f1c2352d9679f9c289268c208702d9a67d2d888bdaff517ec88561414d8ae9309e4124cc1b345a2bc88d5bfc63bd7200303d4c8ff877967cc1b0eb969b4912c953084485c4c42c84bb29a813310e0a128ae8c26f35db338dc49e5ed3388f2139c958df0a78109163e13fc6072b18324c6be387f4ae62f4b3b72d5363d82078c7c88f1bd769576bb4477472f0f44c51537edac54887193f014ddd3c78cbceabe1ca81af069b09dba06d434edbe3636d399d243123750ab9ed755243d3379be320352a9ea6c5a97e54da78c4309f4dd067f44615885622b84646402eca7010ef05ef0289874bd92bdf25b9a4f6273e3dc1fbb03cec26b8aabe2e42e6ee3392dc8fba25c9a429f2c77af059595bd1937a413f8f0c233601623762c275d904ac10aaa9e34cdb84a531d7c86e6820a51415351e005cc52fb84615ff7cefdbd77809ffbf1e944a3c434905dee7a6be8a44ba045edf4ea12e789ab5e7aea8437c51888ceb07c44d14a9c8a5b133c0ce3c883c313a1b57406d89d9bcf35112c4da0f0b73468be26ad098840a5501df927f19fd9dd226cae1290ce14d513eff74ef09f0a46c91d5a9780cc68676d06ca2cb699b17acdaf383803bbef79610cc4950fe7b8ea42b4b7f677146d31ec03221ab272f79d9a1721612621fca2515a2b9827a9a9790a58b152d8490a464183080844639072892d0f8b6a90a2d8a050e138e542014d7ccba5a8bfd7cde6aecd32f2e4aeb961228795375925698d3a048416bdba7f6a579f8995817e2670fa8a5b68e7512c5ee5f16d6fdab8757db719fb4228f1ba0ad5181965a6f26f88704cd3a0a8ebaa6f290a027868c2a3d6873dbdc710278143857718cea244176106791140b027a625da5b1dfaba02ee030f25b0722a95aa74ec1b46486f17a57dd6a6d2aa7117de1a3179ec4054091140a08cdc7c1bc709894f9d1ee24b5088c659eab6931e36ec47c39a4c78bdfe2642d759c19d2b78b2d00360ca37b7b37708fc64bd083e27423e5c529d728a9f5e294143e66d7471aa11d7d1cb6375c93e255021920da05dac2dac96fb593f1eada1265e45a9da02b388f7982ce215f8bf8ec778cceff7f82996c89767500cc9e91b02b428d41c627fdefd7b12733129d37e567de3e3eb5cf1f9f88181e1941023d0339b20c99ef09fbd712c622f0d9e30c8c6e36e5f55a3c72f2528558a1b987309cafb9a800d1ed6558caec2bf77c019f8997f3682605f7ef549873cc460a1cfd83689f613e2318dca362483c61506d937f133f4b80318d229e1435c3407d2696de752a58db87e929fd7c20a188f0122759bfb66b2a73446cc834285bb9dbb453bc4e012409bb79382e11814f179b8986c704c29990dc6d6afe19b3081f05039c24851d89af1ff04c5ed97eb187000cd622deda400d2f7edf6ccf3eeb7d0437f4559e9a6a4b8f47765f97cb1133f2d0bd16d209093ee11a42806e636f3ef239ff995ad949c6649b02d7d4d7abdf58ca529901cb9a8ec0c020d1b2134e4319d367c35353cc4a9c0590295a5a9af3049c34102c69ef0cba4900956fe372030a82a73c6370f3bff6896a686231edd88dd703ee24aae65a4f957140c5f8f831bd08d626c8a6d4e2bf4c094176384a2bb74b81702d01108bba6e1de127a4f5dd023511976820b706b751f56bc6ff2c848fc0611bcf8e09b9786c935040bbc0f2e71d1a0b37b32b10727a10db458018d22dd9b2cbd08599720407cf6d776e6a41f9b6ed6ba884f7eb13be089cbbb99219ca1730a18d88984c89e6f56ab269815a078a715a1b5c6393bc70991788dd60f38b6b8954b40f36c2ef0f1c086a8d14a8015f2e118c916de3cfa736a5eefcc5268f48290f6c28b341152744fca9413f1d7972b2b5f96c72440eef835ba491fedfa1729ba1b010aafb39846fe78993ed06413560db0c662da84c212877f48fa312e625380bac82c60195a61bb5565802449846f9a686869a788abc1f7f350744ac46b52ff2e62a2601d8793fce3541b4f696548eaf80d25accc646d53027d938ab8060deceef169e5bff163ed06a67e9f84a3667b5b8f78b2f5b6d56a043a4d2097e202e2ba5a9e1a9cb9341715ebfbb6ee904b64f7170b85067d14301bcc7e4a328216faf35d3584437cb0f9875da15d1e7e8be622783a4a40b2c4e2e8a6b103165f6487ea191b8a38653fca638303d88a319b7ceee718ee2de2ddfd355888015d392675bd90069c522967cea9d5bbd4fc3aa1729e6f1e944254c2a60cd161942c91dfc7ae984cb210f854f4059f10516ec40284738930aee63cbb3e34879b12994698a73b9b6c65f71b0069caf6d60e969c23003546df85d7beff32c3523c1df23efd9ce6a0544a74ad66b2bf701b85f964bffb3a67cc5a2bb430cee1e80489fef82c91dab8caa7a11823f3359a1bcb14e7b2c4bce7bd594bc6c1d2143f5c1ec8dbcceba50d39997b2a6206249a322b586879018b3d2df6c85cda3ad9d836d5514af30cdc4a667bb12773f74350156564a66c715377ad530dfefbd99b7aab8a8d339768187bb29bfab513bb528a34c41b035fc66c096aeb37bcca027958632ac112863ad56f809fb8a732c980042992b127c6a04e321ea5a05e1ce3e101bd75c5f877e49fec6b012d8367f28e51bda5f49e8b107e098007b87df4acbb3bcd59087091284798df4a5cf69d0d09564c6f7da5db39a25f7dc6dc45cd1add6980f4ac9dcdc326ef1ffa92ac9969e3e309a82d7912712f7d8ece23964007297ab85c283f8749b4683c90f37a440ca258738718217ad387846e0ff40b7ee71e7b6435e31f7e8d2e635c585b53f342b18c7f059e99599c3c46be53a0cc314012e96d67ffbc8adb1e10583128031f4e829f6645455345d898bb261a6a7fb2b5016928ad50ef4cca8e995173db0c19907f6873b15fa62e54e23763152f244cc36ef174983e58a45fd8470de1efe3351cd6523e366fc29da59ee90e03e84e7c80aba6b7505c7f55521e0fc1a61e4647a2fe424faf6b1f77c095bd7e7bb3f3002de380e1dc47ae846e1fbec84c3532bd698823cf717d20be6b9119b0009b4555ec593e38cfd27867f40b390cc9545f008afb316f2ae3ea79939860843835f324f5b83eeb3db7d52ae7447bdb607d1838e595a772b238c719ec229962144720ed4fb81e8dc1a3f3c38b5a05ba9be19eb2be938e5d705e7b1254e7ad17b4d29c78b0bcea71d8ce7e5ab00a589d1207c846ee6ad03c54934719acea9c4c30508dddea44155ef0ae175ee40a686faf766e2326e1d7583d9ff560c1d25e2c2a7a6704c439f4626bd98f56314e9a4837ac1363d89535af62f6827f477aa5c9bc8ee31fe3fdb23675bcda0f99e384afc05ef00035718660aa7b14ea05d4942ee1fd8453c1a7b28074cce28bf7d4dd4aed34ad0661203a23451611f6a10def3e26837ca13280dd16cc7be69cee57c88485362aa588c658be924698d453e8ff5263a7be2b5c373dff47881342ff713f76e8dc273394bdd64f5082b2034f8f9f88d9fef98274b9a36d408ba1d421724e169d2f937a13a310bb8054932f70711fe7c029eeab352f0d18b32104924eab6fb941d746c9049d3b6b9b34fdadd076e35056da2439a6b289667e1dbead1a0c41e1aec5cb714822ff93e169c3749d6eb458516a323508f5ded92cf5a7159e3585c361082ad0e32d1a5e6b9646fda2ef33a0a7af39692b01d838f93dd62b21e0a036f7488567c17628517d179e1c28a4acfc304f0169b0d649785ceec633ff797802cc956fc1931047657914337cf98f60dc2920904996989753ab1dbd02deb88abffe1ec2aaabf5e7772334b69610347380ec2c1f38a16e83622f6763047b7de1c78e85f78b46f16369fb09d57d60038cd633fe82045f80fd8a09949438d1813a0d162477b96ea79cdeaca2a3d21428f0410c082d11856fe7d43c422ed31c1913c3452411368aaaf5370a6d19408605487ad0b782a9ea5bfbb0b76a628ad3cdbf6005defd1a2fe41755efa84654e97e7a9614d11d2f1cc874b579df335ba8645473778c4f2b498a801287ac035cbbf20f0e3f063a0161d2a0197e6e0f09f42151bd7d665561b1924a3657f9a27ebaea480551ea1ec693c8a77f5921009c274c8db5e63e59635a26d2cf8073c78d6f1d2f86d41eb28f0a1c21291a049950d3923520d9e3bb71975295ec25ff097fe8a27ba461c7e7165b1ebb07c5aad5e90976fab066ce8537b3ac3301325ffc95e65695d219681df4e6f7a184685c20929d88178c18b4620b72e66ece90d0cb0d2266e809692a4b91aa1f7a689137f49b538e18d7fe36ac45fd17f63ed0c893452a7c8280e8f7857d8e4b3fa5c1d98738335419be7f632afe03ed3accf9a11c838d9c5081250a0b3c20a2c66e7169c1b8a4231e2b849f9a3b88f43da143193e5b43bb285239face11a4435c482166fa93684b57c5b3f2f0a5775b51514babf0001996ba3041c6d920e944d5ced3ee23a451c6647cb922a4726802147b974eb1d41b6deb22ba3d95474612661a5522de0ad02edcfe39ad6612e92482cb80f36426a18d1c7b8b83817626e6e5102182336c01a0a8fb9d669386c242bd0c1cd00c01395a0ba78b5e59c09e83daf91dcd16a28253a4dd10025215173b022a643b91018ed5f3fb597bd8139f708294713e06db14a73aa973bda689cc98233a2edc7fccb13011016f6f4e73eb0f31d035d8ae3b54535416641ad49dd1c6b82426ee70752577d014187189f36983be2a8b2bf7381ee6ef4ee33267dbc03a8dd15138d87d0fa588823fecfecfa835c094fbb7b265dbe0671faec6e70db963d75419f5467d51761509a30b978b64cff4b089686851fc451750884610ce45f86f32d61852febf9b3256676f4604cf9cfd21c4f221fd49bb416e9414bb28054d91f88e110c9330cc38515355431b0bbd20000a24938a0361b5c5902c168e9c8e26b603ab291025422406953c5ae828b4cee1ea6f21db6b243a13e2640e8d04cffe0ef838e27c155fbcc8f99e2671f7f10be83d62fcc02bb29dda51ca9173a100273ffaaf9b8c48e721a294218bba84932f305f0d70b45e606659a4d7ec269bd60530cc96af66a699843600caa28cbd6b9cdb444f376529ee9f2701fff96e7d0e5de1cf2f61c86f086a4f7b9328609f06426c1870e001b89012b4e0e2231f0a2d456d2d5eb9844dfc145c7d60248fbae54927b1106f0e28911664ac12e0eed7d2b1e8e52c958587e85ff7923c62499a8e260081a85e09f0c263387cb0c49918db6a0a2eef86fb4925b47ddd1e36a2992d107ea4589ae0861229949a28b7eaa19fa2f0cc1c723f17ca4e91d884c6434023a197f06316ae9e0d2a3cf7db43cc1a9f2b2c7bfe8b2db40d3d79c7afc987da7f5e4cb06173fded45150cb65bd38db071509884a5c969efafd4f5ca02684dc663b7e41ce37cbf8757c0f5edbbdc965d67f529252929debbd0c8b4848fb241b49689c0f17c31230fdfec3015b2ef86d46f8a214da64963d60ef04b3e4f134022d99ca1473ca24ecd3e89014ac84b66533d4b83996ccab15a000706e7beff30cb8a5e19123b1a70d3e1ad02f2bbf1562eef53001a0b608b4f605eef2673352594a16f050afddf2066df2a280e9faffb60aa65b76b1409890826b6d5f5162f7c98b520a4fe8afc458a79da2e82348a9f2c875393d05dd25046c5f8b4723159bc87231603c65f681d0bf7c534caabb1219111381e0e561a4a250bd9ebd27c95a3a2eae03ea82d02d2ff8493fb4d7320d27a2f6624dab3ce7ec33d75a19e652b8746f85cfb2a8eeb616895decadc7b5b4ade65d19900825ea1d7d8798520f20d504ee274385430c4e5d677d8167edc397d3d2c8019ff2c9c4124bc5dac42edfa4314be532db7f5a2f2b3fc5d95c299e4218dc7a609922f823022aa582b65de1bfcfca8ea1fcb381054c6feb3de1e005b27465e7524d565d377317beb99d5c36f5d8fadf0d4141737c49bf8d66255c65198568716e6817d6a3cd36235bd587296427dc98de67ade3e8bbe5f7a2814ab4077daa919be6d107c5dda2292fd57a55a590e8541cb22cd8370d381512a34d97d6e8cb35470cc0ad2b8985aca9d1410861c62861708b07fb524ff46891364e729e21084cd757eb4521a8e52b68515ae3ceed9f9fcf27152bc044817064bf3959c1863b60327e8c78281a7f380ee76ed3a6f78b5864b73645b94dfe62f3e73206b91e387dc0af96705eb61d641f09df2c93cc2d8d0307e46567c644c26b8192b0eb12473f75743a42a2bad6d7f87aaf9d0387575a94c9fd7e3a79636886e60c0d8430b4957ec5156d26c27619dd903d33b62cfbc0db81c67edcd15dfb847fc74a40de540296ad68b1bd66445dd6eb1a7ab449d8d3483609f1b4fe7faf6607b4d62661283b4684dc8450f5f141822ec15e3c40b65285c4a82f19f71be7547f2c6d0246abc36c33d0365cc2ae2735b7b540467c43e49203916da0f4bb0ea313256f1d8412fec6e8df3688147ed5002f20ab0863cbbb5f255014cffbb29e1108bea7cd588573abda17252e52a6de380fa8c5661c7a0391fcf2f187989623341898d50416d2ee94736c159d948e3732eb1be3af432aa6a6539560e23a8a93ee66f8c0f5064d2bf24ee1e8ebd5441a2986ecc21e93d48fef5e725e4de3e3474cd23d298b0208cb9b6035c4cc25403cbaa8d596ff4288d69c16456de5b3809016c51da0abb00923ba01f3ee3b15568d2ae645982cca5a2cf85c7bb0ad9f8c98b123ff526e49cb8a85ad6e7323198219e04d9a5f02a2fc17cc64dcd6bb15e2b47243a7b15c47880fda68a67524d414ea3579e05b1650347399b9079a8bc4f65d73854a2f68a687ed5af102545d5fedf217046df4eacd77b80463fbbf4d33cdda2197d754328771e97ab289fe22ed2057d2fe32db153dd52a51f393ba50478569159d39a9e87f457e737ac4b4f733ae9b5aeb8b83659cec8134580f44075c120b1d6856b8f89a1304c0b49a4ee4609284b9154d0821ee0a67fd25141791a99eb9427e3ca7d7372a49076e410afbb5639460a512e9fb3a61fe9aeb81bf013ecad08e904c8fd41891042ce0540529b119d20c1af5b71d8b8e934978cad61fff9abbcbfd959a5cb285426bb09768a8bedb3c7ac75382a7213621b68a32627d5c0793eb149656a50c9af1956c6fbb0ae6482686a2c3e8d480bc9295921a36496f30203db7a74c2ef91a5e95e8eec38e1a3841527322e88a519f1af8353418386b01574a522d4aa0978ed013cbd52143df005411a7c2a6bbbb14b60de0923a5705c818dd735a1fe3bb9d81b86c9831393a0fe100b68807e8ca5f2027d5cef953ee0f45834c18763b7d353382c6a973bc68de5279996b29204cc226de3ed14891e691cd20bdde9843939040ed944217c60c535142e25374730be0218495ab7d96208821302ee84002611045cb969b40d280e4432be9ee99ee4ca28a7c5f4d29ad022cf38c865d450274c52a48dd4b0a66410dd0f56e421d02bff8cbf979d54647e5f03aff10500a63e520c884429c8306f3c5bedf564acc1c34a9df391c958f44c94493aae1eeed0d677cf5a65dd730cd10055676613f52c5e247f2725da314e8d608f6e716cbfb20d682418a15a952dfe9643175375f47f694e7ba32652275c3dada63348ec91e1924186d133b51daa796b824670c459bbe2dde87944bd4490e0eacf2d9599083c26b68e35285140ebb9801f4494794b6a66ca58b39c64c167ebf1084b4507c1122c1563cd99a63adff988bcf4f672eff6339c107cf9c1da37e4b6684586a66c515b8cce572c29a0f66049e0f0d000bb8c918f8627d45a574135d8e5884dafb81f42ca387192d1fd24064f72977cbba604c34fefc5477260d8f6fa9436c90768d532570851c8387fe91b0e67265a2e2df1a3767700559c3412e9615613c322ee9ee0f18f39cf4ede2ac2cda7bfec43244dc05d87a1287093936b667992ca79b15bfce688e8d5d2c2765677eff841efd088cb8ffc6729a8a069430d60791b875ff38121db9f4ec558987d9ba704b83aedafdf86d1ba110bbbd3b720abde9cfe3c13b8e51b2033c691552b69d59b4af0d52eb627d15e553f39813a1eb26aa8f4070a670fbc31a2a519fa1075f26d7327774de8baab7f3fbc736851a36aeb95bd51319fbdf6e51a218261b9ba5dc3f1bfc19c0b5d062cd7bd28d7cbc646affd1efd35396de383b5062ac6ff92e243cb07d7eb7b8e91c83f1ac91662c1a2f25ec378dff01d56f5ab33eb4fb49df78f1763b2ccc417a5439b78539b2cb00f8b39e83c8346fcf264ca57dbc1ac44b238579661982b1802aca017ef507189bf0db484206a4f8253b2683756cb2aed559f6422eef23692f76a4e4185a825c99cd53067b09440d9fcffe9d1115adbe0579c910fab65b6aecf2d6549399a8601dfde11fe0090001eb6f86ff2f4c1a52ed8a5f35da14d9a6a11e4210c62e270af236865552e345906a2a312d2962039b8bde3c82a246065e32c6927d5df3678b9bf6ebecb1d007fd7f310c94af484cc6bbbc12db61d6a3a9931f28e022395b12b1982e03a55fb30b9c64444271d2448f259e3a9a06c6b788ab17bb1a8a24a70bc82acf4f2443c3ba4789a6f4bde5d045749f5c3f5d10988a830e7d742416d655358d634cde270057814375245a4f788460d86c916c922adc108a6656ae387149728f48b7f7bc5f3491fec8ce1983ee9198a12938bc47377b18b1c7722d665dbd961c4af4f304026b0205378a69e8bca8c6931cf82cc704e6b7c76f9b4c661dab52d99ccb3316551e2c27aca2023a42a6f4ed00a89aa9d3751afd085a6bd8bf6decee64dc40ad2999bc53ea1fcee3ce2b3ff8e0ba80fa63ce5e510ce6c7582eaf9c366959346a748d9c4bff50e14a73744eb44557ffe4136ba943595fdc3d529455906a9a6c5d52606b670b7f73e231be17f3b85d295b0b5d7d5be4452fb17f26fdf1aeb4b91fcefdc3c345200a92c560bff0530bd895bb29fc019f8907678b6740df3eb78432f0734922644e016ae408335970ce99cd01abf596b3b4dceb501c37c8d9437cd3527608bf4911cf39502badd3550d8d75f952238b9a4103f8b80cb66542e36276a17232a97531a37165fd68fb497eda574ad86376f99ca4e8b6db53f551c63950924c22e8931b0317032303fbc6bcce54da460708841bc419801d1c836130ec1b319a0e5b6497f209d4e25624214db5cbf50086058b159022738d96ece6801a66888881a5c2c60f9c222acf11151ff4de2d7b3b0bae6602221b0ad1ecb616290a9d32b94d1663fd33b225c3311806c33fa57cc52225d72b5b73d7a303c0bd88e377bbffff3d9d75a602114f7ac6b7897d99e2dc4018901cb252497144f393d573aaf458b2b8686ccdeabaa25db12c2e8965710cd4a921bcffff3d3806c360989ddb655414c88009c11245223920a75350790374775729b233f5c5b11e80530070efaebbbb83c0e3b8b7fb4c7bdf7fbbffff3e76a6be33bb024101e2eebe7be2d2cedac1311806c32d7d458444e68669c554c3d87c0ae2bcbbeeee7e543f4ddc57a8e8a13f24a78e3f3c6b2b46bbe5c24c0032842ff05c5cdbd46da3e2fceebabb3bf304d2c4dd1641d08fd76d19f9cdfcfff7dc01587c82304cf4844a0f7c65317125a89fa99998150ad7993a2cba1b84c738f77ad5c0b1afb82496c5f109471931c02144a39448ee4550f209b90d8ec130189e577545d03712a4857699c1bd7083b5630200a51d172e4ab509b77670fa1dedc8f8bc00deb849ba0a3e4f4d7bf55c672a95747bb8ca8add6faa88618ea4e55d4649db8aa287e7262b3a549c0a6094dc5122d6ccb9fc2ae99f2ffeffcff9d899fafe4c6b6b1c4477848e4b62591c1b33e87404487deb0ee78d755dd7759d96eb4c5d727a5249393865bd0636966eea66fee5bddb161e854cab1ea46e0fb860e0800706ba9b5ac1b888cca8a2fa1d9014f45b6ca4b58498459044286236043184310432c472c7bc206f51913774d66a35191f9aa8f58ce2d075b2766c454d313a2d1959521a1f72d41315c047e5f6f29636a6798bd6a849bbbbf75e23e7dc76604edd7b6bad6b77700c86c170ad73616fe26b736b2e3775343696e1c0c5ec2df3f4da718b4b62591cab4f3ae41e4fdd08dc950b91be3148e4e41117325a642aa8135a2d6ec56217c38ab01cbacfefaebbbb07d999aabb80c34a4c56d68daae68938e502a4fe35b548b2ed709bc34eddc2ce4116f8e0f7425013929c9c59719e20a4dae9c72b420e2b4318567c6775068932b38403f393d5db82edcdcc40081f290cb4049dc2e56523919eeb9b0a382948a2163c1d2faff21fe821ab64aafdff03ff69035c96e06856b58c4132f0e2925816c74a50b9fff516bfefeffefffb38ae3335e9c147cd6b7d801e1c905d8e16bd35954b1a6568043006d7992a1cba1b8cc5f8ff75ffbfebb95a2c4368b1440226cfb38ba1360909e9ded879efbd9f88eb4c3522974b4e1c9e9eee74004027e01348059402b382b6e0ec3263ecb0ac29b975a6fa4e527e2bedbe4cffff71be4f7804bf7edf4c0435b4d2d4f164f5e2683d921e55d5c4eeee4deb4c7542a3ca9f245486726944c4f62049214569add5a84827b9448007c760180cbb3cd58aea0a69808cc542c0beb5c8a5eb4a679da9402fca15118e79551bf51616440e1fa61f42104335b30d19aa0972aee68fd1021ee60816a38e1a42445a2011f23de51fc1f4e608a6de4a7347ac2bd4445de6a4abcbaa3d96568b521e5337800cf5094ab121e67c0a8c920622227d4699bed6ba9a54b916a86e3881b42c5e5aa2a9ec8260a336e7703422a77b420485a1783748129febb8b4ce54a74dc2f1b9b72b093d5f4a2e863055519d179843294b4a2f5c36924c4cdd38d3f15dd7758d9ceb4c854647309ad672be1196bf97ae69d8da4445eaa977536e262e896571ec2237e082db7befdd814aea1d6eb26cb377c0a1dd690864d4372562805835eb900709a82b841c34488eb1f093a5031ef1884929ba668c2ba9452d96f9d4fcdb3e67f1f2f97f7bfb23b7a5cec09bd593975f100d39066a1451f4dc829179989bdecd5d5675c80b2b15371f64c83c5d389456aa5ee6d1e70a7614d43c53ea1bc33aca66c2682988e6b7b73b86ddaa73df2f428bd1e274456d45ce7dffbfeffbbeef52e5f53570aef057636e1825ef85c20db1168563a9f66c794b797ebdfe8b2c26fff4f2dd757777a9a4893bed5448183bf3de5d77775f1e6b137777779b33deead2c40cc37cd858dafda613b74518c67bbdfe71300b2a68e4aba39a69d2cd56118a1e95483149bb3d0d2c8f5227659ccdbb41cd4b948b56ef66a5ea28c65d5ab5bb5ae792db21178f709da9c3ed81a7b837dd52b1f81025476364762ee8928dbd7724c82cc5dc6f2b0d2870ea9ba75722def7dfeeffff4951edbacf645ac19b5f284843e7315d4dcf2b9ac9e618ae33b5784cd64d4e10724035189af13cfaaa822fbc8e4712e6d104f3ff3fc3707177ef29ae33f598dc1e7aead87f782eaad0526849c80986f6ff5fd7d6995ae7deda07c76e2f04b4687248d02c259c5c4064f050b93aa1075b9d1c044b4199f6ffdfb4ce54270c280c231a8b552002d1949a117de1598bb4c8b9bbffffbffef5bb921942bf159d043de58a2768a8b8515b054969d081f503e339a328666d42bad1fc549332b7554344e5a28aa142c6755df769baced45acef70b8200257c0d60980cc760180cfbdc32b51878ae38c2d17ab11bc261e3c75542d9e0660801f67e803e5d0b979212ae98a43d2b3a5eb4e85162ed2490c3c4a900a928773f1c49aa77d7dddd956c26eeeef4af1dd66ab5103f13152944f417cb5eb75c0aa755d41695d10fac6ff16500e66c9944de2990829019e464821aa3343782318d26976955babda1b2707c5401cd6062f991e8f8f686465f8a29ba9594cf1107b82ac2d9fb2a6acbe068353319cb7071492c8b63778675aeebba46b575a6e67cbfa070b8c1a898e346dd67b6e598c40530c2cf8d5c8f94ac1043abace4443455730c5bdeca73c9a867f8f80db892a033ad0175849660627c92413c70570b26be13b3a3b52b18e8bd7b7bc3f4e27729b954c330193806c360d8bdb1b9552a7c657777a51839a6aa822750e444cd3d66682b93168169f3c678e712bd1f096d85c6329eeaab71a9a450b1a215e204ef71cd14f40c4d32ba03881ca40864c38545a4428806e909854e29e2f663e8c462b2aa590099c4ad1e740cdd77647677f7119dab6b9bbd9c0d83cd736cb41be3ee5e2cae33f5b847282663eeeeb81e2d94130a0a15859adaa87909d0755dd7755fdedddd9de73d6823c7e33159c3b1bf0da1dddddd91769f010b322a52ca5e8f560e1d8b1e513f9e7622817ebe2cace47e4c3e304b1b3657898dc2c54b0dd4b3d9b3834997b322e3a424e374b1b141a4eb4ccd8245b44b22748a7c54f365905d2eb95c7b634e25794edb8dc7909b09da49b37203a4c930e5bddbfdffb721ae33d58844b1598ec091c84be315909f662fcf1186790b1c836130ccce6c8d9f4c5b95d2612cebb1340d1c49fdffcf927b73efbabb7bd20e6de2eeee8e63cae0012904eb45511409d957ab1c35e8d874661ddafdffffdfd64a0da58a5247a9a4542dd5f4ca6a8d9a8bc6108913126fe404a2a51436c7173249df8b7917c47aeb1e70c129bb2f0b9dd7994adbe8001151a046ac94f77ddff77d71e4ff9bebd331d5a8df6310c42206b248d5937e588b4a544180bcefffff6f84b233f57579f3ebb533bf5e447b4ec0755b3041215b3f4bc3aa96181ff037d79110a808a20e1b90d3b4f63ce58a760b478fbb7b929da9ef4d56232aaf4924901ba7f25a079a6a59030c1f8ddb0c264704c1b0eb60637c9a39a11243a32d428247d22491b28b0bf0e143a29ec9e530d7104a23f075dfffd17a9da94d4e6814253a7d9aebbaaeeb12c170acdf5d7777674a194ddca78cec94100b53fcffefcb5a67aacd65865de8580c6fc9245bf2bec525b12cbe3dd1eb8c4b4d424778d4f33b1ea016cf1792b8ce54e3de8044c67039dcdd5dc6b6ced4f9448616a0ca868595140c5c9128664b8dbbeb0a580a5d2348259732cc700c86c130c9ac0145799499ea2fd8eca98194f4a1e867103d3806c360f8ff77ce96363aa4e7a1aa78a3bdefbfddffff1ba075a612dd931b630c8aa4c630eff0f109f1d1d4f32da6ed157f712915a7b18c753a2e8965716ccca0d3b95c40d999fac210c52c87e411868dccaece15426de88e7b77dddd3d775c676ab26eda1b72ce12999a0064805e76b4ffff1a3b53df58d6e2fe6f3ff35c51c996a736578e4597c755770865a4136a05e3ca852accad33d5e741f8a35d3fa2f2bcf7de1b06baced4e80698692db781f639adc6466536fd5cbcd959119522092bc88d464ce997f7ae616395584422d2dd8363300c86ff7136110cc070a2c080e2581d1ca7e6d1494ac4733d9135ce0a42ad95288c8a1d49a8ab1cab0b35161b76aaf4b6c425b12c8e75b42d7befbd7f4beb4c757a5249fde497e52733360d6eec4f0730c75e51cab4f173a30c520308005096110e5a90bca08d8a548e34c690206d0b63d992cf8d4b62591cdb1aa0919399ad0c729da9cb1d8fa9a844eddde7c6806901d31968040d046124cfd31a63001480050b6688b87c6c0c29168705e2a040140086c240001808060201614020280800c2c3c1c19aae0123b67dfe030157e8175db09e76febe1cc103203d542f555acb36ac63b837027b59fb96f902df068ff0615ba425596211291fb688198548ae5ae1450c0e664e936563eaf6aa252c5e379082fff2a11531005ccd0d4e6856b5e8d0b1f81f26a88893f9d399d29e4ddb4635eda05312a4a6289fecfbe00f808eed5841b6e782a17ffed64872af32ab00cd82b0e51fd3208bc6e290aad429aaad1c15a73dc605ca2ee3bd48ebc285da3566c3f683d0c655d164a3dccb75d08de0de7516edb8bb52a07c70a6fb615485218734a6753d86477ace12411c81bcd59b459e48baaa7708a942de54ece14a1341b2d494b0a22c75b909bba791986d521e01323f525e01e859fc726d6ba9195947eb87c3a23f33e4e48c1f1997a3271d22b8102a6c621c152378d129b745ce285bf5090f3b089b19a51e329893bd2b6ffc8a742a2fa5007818b5a5aa802bb412033a090212bd01d80db6a954a6c6e2676c4a07bb58205e5d33a3130836c55b4e8823db67941fd7bf3e583cfeed7de49f2b2b02096edbed7bf146646a48907ea9307d80f418a958939d2dc1e0ebec775a3a171b257f816811a52b0deaa3a178b0be6ef335dab53c41cc5b6fea9ea2b8d24ff80d68e3008258d7560b9760e3be2e408f7f700811e335d304b090de9fc028e44878110469b9fc2c750f02645074dd7f5b5899af8f1cb22345ab2f205b3fe1af3a19f49d5ddeda723fa58679ae59ef47129e49d5981e9d939ead65f356b1d9805d2074956f5ab4b74a3a09c30b0e3506541b4bb4d884e7605f37cbd5ff0ee0586157012074552b29f8d9272df1ce9e6f46617536accdb43b285e88a33547e2421929a1665b8d4fa2a9969910ef0051035cc15cceabad4192586ea7957f3f3e6dbb2402632919713f3c7921e510c9b87f2657e8e3c2d8a6a32452ad2db6a36205273ae736a24be2d1a5523d4e6d08446105739a9f359c09e5dc95264dd90cabf320eec572fb7c51c14f0033e06aab9a75471b56019cc8cb0509bc3fcbb704e35ea74ebf936b02c12c7b925b1d678c4c05d98b8d374b418c4cf93c4e4eedd2bc5921a19a6711069486661cdf7c8fbd59b107cc0c42ef393c5f0398d6c478feb233cd02019906b595cd70945ac6e2d82a5975a2df8edeff5c468fa817e3fd2de14a91379db9afbd468526620abf865f5cee6158d28531c663bd82d006ba2038521b74029ae1d43ca91258abba45528db2006a33227dddfc28e5ac5a3969c2fe66955ce2863a92fecf3b4a680ec84527c0a73449349b6392814f5a1492161f764f731ebe2634db89610cd85d3a78b04d382072f42f1809fe9825505328b59758023099ac2bcef255a046d1073044afccb2362c6250d08ef2439c78f3acd0912d4991705a0af86c40536e920959daa6e74eaf1435ba0619778ee8a5db16e70c8d8f3cd43e8bf32f76f23153aa3e42962b0b0662fe8f7de0a1c421781e27ec2dcdb1ffe13fb4fe5f39d0ee785101181f388f85468c7d637d13deb4db908d80fbe661e457d959a624b70a9bceca7c4e6414e32950ed38a5e59f58f1c1222753a7792cdda3bcc01ddabcc79c08762a9b03c6985fd171346f1f0a5be71d310b30de5bd14f495705bbe5923c7045fcf410dbb1c6f632b85d48be3c82a3220a6eca09437d00bd4373feba2cf43289b14a1125aca2419959ce97b7a3988d81cff7b5d16823113a6d1416b0c3fcb0103249758fa19dcf3a328884b0b0577219b451a08db02e5f412c229b1925e04175971072a7e0e43928a04426085bfc771a7144731fda477fa340955949579d206f68c28fe89cd833b90da15605c8994643a4fcbc7ff7d375108d5a7c5d0ac96d91265546200624164a08913a38055fc4f876dbf0285a0f4a4d7fa8f3b6e68f5e7dafdc0d8ceacbd74b2cb1dba51e6eaeb2bb99770829de17bae29e91c5e4b9bd00525718616d80d63de3186c9dc8d09bcd1d75504d827d3e2df5e5f840ba5547b079b633e1d0ecd5f05d9d7aec738cfd567ce6d9a20a3f01c6ab2e412a44d360ad41f16c8cd42580319e0ffee46bbe56cec141d88eb2f01b1a8abf16b154d4880ce7e3ae302bc088300a95f13b98096bc2a993d5ea9cd80346364943422546318204231af64738941158054ebc8e96b9bdd02f3980bfb02d64728c86ee4193a3417305aa0a90d22b4d31358af8dd7a2ff850473c2bdd09748ceb6ec6c1e70db76b449bf9d5d327495f814007b756b0c1f99496b8b7ab751d024ee9ff871af05d5735e188c950f826e1724e173a155019315ef7df578da4e06db1d5e0892739a68fb6ae6ef11f47632d3a5218885a5b1eb045d464b6136c014da7f94329115e7630c4087268e8014aa5506f7eb6cc74cd817ed0049b3e58fdc9b9d89f997c61bc3a4df95bdbbe561d22f0b63c2fa5cd62e05e6cfde81c24228e4733009ee67afa1a60b79f7856e6047687c85ec9cae867f8f81dbba3c9fa897a87b9d9bca1ae62043144b2a84409284e8173e900b0853c3598b70162c334882eb935808e60610dfa55486b987a2dc7b918773c07cf487b84fc816d1613a732aacb27d544c633103b46484f85e34050709447840c21e6cd67506c9b5869c31d4ea7496e3c138046c7b4ea86ddd3b8323c6ce099d806a2725662dfc16f1bf3550650952a3d3c2cb5648b6fd9b009594415a501ef09b5f21efc842a5e44705c4f7cc1f099e20129240e681a0679ac30994b4fe6807c63b89207bc7cf479b1bb8ed8d82580612920570a455f54040d3bfc2b60619fd3455f9d58a6b5b8dd6e51d1f026400498e0783a08022f16b588fda26bcf459f06b512f93e4267d5042de3b2ffeaf175bdf4e20820a4084e8412886047050715401f20b2308931cd169e082b7672b7a5f5eb4e1de00a54a0ffb626a80a9ff8636f119330710c98b7cab179c5b6821d11ccb257ce59c433e8c5445842606cfd3a9aea1601ea192efd61e8cfe07413d0960fc79a732b3761b6764e9f277b81262d8c0d43bba3bdbcf47ca7d4d6788f3a5427c2ea064827dcb6b47aef1cac7f870ea9c421e01dd1368e777e7a98f90a068799f0eb7071de8fa1832aaf8d2b748745f9c86843fa209dd6db580804db250a3e7c9b51b29f7ecb2bf2311f05656b47d622f5cfba6ad2b3e9d2454aa7e37c9e851eedd493b0ba92754a381b21ad12eee0dc6d4b155c1f8f9fb6f19c307aa482cec2a53e1ed5e04aa6756f26588684b50beebaaebd97425c6e2ed6d3b84a0b5586242bb003810415d251c10215dce16d007383181375f9546069813aad249b278c307b4fe5ab365769a86e972e1e7c7aedc76a493032be0bbe7fe51d6b545d031c6a94fb6a96e0c677d0e64588b47e298e26bc394d9e134725585d1e55f3972d46b8bd142ace0484a6852041a9232714c65eaface05b3325153a1ad108cae512dbef4c951475d1b4e172f8ffcc59c6d702efe4c1501a7d51434fdb8f928cf5505f3f581d9dd1bad17b6ce532a821a2124e125c3342a62b709d1a7b2bd5899adaece01677180eb2516c87a60483a68e9141ec824058642069c949ec6433e29d16a1f9dc63322ba7ec8c3c2415e4e94ca66e975b088df76d8a21279c0d875ec19310458400cde80cc7fb4e3cb90a429cf79ecd32679e9abd5a92cfc3b1616d2f9591d6293e368c700e9bd376785a9ae1e6c467cc0f2e3dea9c7693c29b9489ae8d1a446672069c7af7462eb90d96604789adc319635d53d33f41762ccd095d855acc129f94332e127c9b80578a2bb70c04851f811994b850a10211c41141421145db6efb53239a7a23671318744e0143d11648305c8fa45c03d3e4ec32bb771d9d936ea5dd42afcc8a6eeb574e040646002d0255f83031e0003fa5dbc3465064806ca0ba4288d5be2e2159632c5bfb2731679e4254e9265ad0820bed08d6d381a1505a66f78aa75caf5c882f26f6b1dd3c36e1a25c7141f8a5cbbfcfab32bd1c5d086d06b9be1d693cf56fb80af3febcc283ff09f26845c2983286349020f40240337cafb329ce164920cd8bd88ea3fdb17763794485e7542733a52af55beef81858d63c7514facd1c5936639a092268454a5bc2952594cac49a5df9cf31c7ba8588bca1dde222a101d815344c26b59675b55752c26aad569f9763d52d791447d5df5bacce9b995fb008c0d3a010dc785417b3ce0c042d94bf224b1e964cddb91b14d51864c0047b143c564fe2f5a119af9da18e41d9b1db5fdd69ecaa648bb39e60e2b16126090df633bc99509be28bb5c9833e5ada8cee707ccb6eb1935b8e2a6140c4b4ac76d29076dbed3365cc8b2eb74a20ee5720006b04885a910650a2e6371587572d686c8b509ae5ce97e26a8a4c3797292a4c3127d37a2ac2889f4257f5d54da0a3a5c7affed9a4a78c2cc67bcaeed300348ca5ce9411c7b5a83f30d7b4779d4e70a7d454b3578ba3989bfe9003de0bde3c272f379208990b3d1610702c6fe126dd39fcc282648d384b3b6ba2fea61a4409f1fc20d572b37b96baa8b4a81a8443149f94db8071c8a2d8adb482d2acc27042989d5081264b8cb40ab0457c53bc8ece54f12aa0d5a5eeea2fba6cde0844fa08ac371100c361b27916ace83c699bbc24a86d74466b141252bf22d3091f745701d12b3375cd779e8a017d61db8bf6b72c2c824cf2f37b9a86099ed4d6ecc8d60bce594ef9f7b572eb7af6b46cfea143097af1a419defe382e75a07d2338af80bda215112e763a3fac5a7a6a511624c0e196e67ab8f87078215bd929d32c2840d59acc32dc589d06980095fa944439cd9fd8bb74890a2f11fb215b105c6dada74a0b90b96b2e4cccabd63e596df19af33ef68a54e0e9dda1b31a4f377c8c02eb0cb56f0bd2d7584ecca117605cbae94b268af5de8143c8a59c2194856548f4df34ee2db914afed6b1dc4bb6ce8d031a22ec1b4a1d4a6e159a631de1575db3f1825bc3c977b70a3ea76497b451e71022824ff0f7ee80e05751a255455f0b1adc4375e526b8c8f2b20e79b8e0d43dae60b9e215d463fed4f4d8c957fcac8e46729d5857447da071a171d70ff1c33286b1e315daf43dbb6ce51403c44e8f92d2ffa4dc2cb1dda536a53047cffef7124213e5f92e1f3e99a6f7354f42070dbf8735ad904094e79da65a5afb1eee23b3c693e7c170f86b814d5d452b97f003d8e69978e4eaeb1842adff62c817aeeeb5bb17ca1e6629f3822a2939760a455687543f07acb403c335f41f4914c8628daff6da43dd7bfefc7acd12f7b5fae062178744c52258b9841d90520d5811f4e9a2bed95278ba63e82220162f04406dbbdbcc5837171a892d86fa51757380ae880082e78ade93551ad4fddfc3cd5106da013a78e55a0c3707a721b4090d68fe3fcc5123d7043dd1b38a6fe7692725af45eae564188826b60424230d3521bd9d96210d1890c337f500e7eb25759e180383ed2a2f55b7eab5b8c1bd307b5a33dd983f246b79623778388674b2cb53562dc1453b0a29d17fe90bf46971164c8af6bf3ff12f5bab6867f2297a6a93a317d1ab5666dfa612ad6464021932d0f054946b587429a55e6421042c4a9de63ab824bc55bd6f7508980204b945f05b3b652f66e7fd053bde4197a814964e0603c2253de620d6718d44a45ed1275957e0c5d0c46b8fdac2ebfe88c97264af97bcfd1e375ede3a6210c4cd1d0c84b04d4070549c89c36aa77cb91cc5590a1eb5ffb416625a002dbb9e5776ee5b150042e1dfaeeb67b81e6fcd13a984ab8eb31861c6987484d3a13372f8b3ab45bf90f4bd8a45e0a1a4461877b94a02a526106173bb9d064119d37b82e04682fa522a64bd5b9c32942a6ab807c41a56e4f60d3da35518cc5791ae19602570c886ec4c2f5950bdadc57aaa1c0c871b238100fba0733e6adf2492ccb5b1a811224ab2dff997b27561b64c8f643edbe54985cfb50d849750ad512df58ea00588ae3a1c2e2cf81984ba8d4c82f5bb302c3394df27a87299f43760ca52518bf63b0a001c44c062dc78bb52d46a41dc2154ace61da57215c15fe20b4a54aa88de434f27a402920b0c6ba202d09410a60419ae35351b932fd40221eeb372302da0b6a1652e5afc0d1126eba43df39884ff81260d2c6aabadcef7777704b9108acd626894001d039bcdc08def0bd271300e6fabd395ab67f79467247505490069325bef69fd049dd3bb5607575b6f403dc4c90fbb0718f320f0915e80f75db45a349b3a58d729f04442808f28cdce520cdf0e3935d9f3140d98c7c9d9f64438739afab17052e12148b974734b54e494fecb2a842e7a3a8dc7f749b99dc039199ba92c032a9a52c9ff09f5d3b3a50c3611457a982b8d37704c49a226853f6f6ecc85a8c6f3380769d80cc9ae39b473dd910fccf021849658dd88add9b70e7c2134e00dce5b3faa088109c5254b906b66cd7e8e54360cae6a9a670fc9bf20fd226f16e041b79a74ecc1b42fd7a46f2d9d5dd4cd1e2d912a8c67c29da3419563ecb33bbe6a82d68e12e5a1c368816260fb91c3c69ab2145950e9dbb61ff7edf3c419e1f5cf469a479611dcd67646b59cef52155c3fac91c55ded4cae1be0e9d606c409f705def241d98e4d0c74511822cb47c8209f2112830f07db3ddf4759410a0057a28a6c228477367fba9642044c317d433f5129411dea5b7bb5d212d1688e9a345865b36d5b7a4c835589855dd3e27963cbeb21f7d4b8b9ff78b886a27ffa33dcb04361e5a6822c45fb337bc4089f95991d2f6edff5954cddbb6d0f489ad9e7f6cff16d99f7d3080ae8fb41dd1fb56ebaa403a2085f7ae6079f4a95b922c36c16643fa2fa9ae0383d419d6645b7f9874e0bcb46b551661a461379a9ab82c92a101085cfaadff8cbc78e40d855da2707dbe4fde4a318efbee93db666bcc7ea715dedc3c85cd3812cca6918f0d9983dac062fc37077904f0d02a6a47b0f561b6a9a9cb1344bca608d6d47b90aac5f63c69d69ed384c1ca68e1d6ed3701bec48d35dda1417b6bee97a6cc7f6447bbe07eb1f22946a2109cab8f4923d54b196170796a1fbef564ba192ed42e74831d6a50c5b8950b4118e4318d8ed225ca923a0836b4be8024f98a821b663528233d02b11ee93baafa9521b63b3657daca84050c6a19f15816923a344e20127269e4a0deed5117f0c97bc46914d1e3d394719e36f301669f43eb77f69cb3c110cc086b151419a38c287170a7cf8905f434cc255a1f918be5df899ff7d50a8d9a1e84c09643a598b771f9bcabdf8d56952b909799e2fa20189755ebdd552c38f03028324a317662d2859e2734b00d604c2d218f83015d326fbe3217b105e612d9d48cc913d804d8749f5da40078cee4948f5eaa84aff9e0c126058166eb42f8f39e9cc7451cd621bfa96700ebb331843440ad7f5d4d651b9b9c89717d03ad9c59cab237e22a9b9ffb7f453fd7ca13c8e3306b303f54fca94917b23501945c4015040e12ec5b0520388aa689865b5e655474fb3f0e34d04046540ea2be48a8750f225c3d5c4e123abf4845d01fbe52efdd17347dfb0d49445063a896b8befd1121d11ae719c5e50edeb49baa59c2c6018fec4d6c0186ce9991466e411b7ab288a278317dd734986882aba3bb50f2fb5ed67b56a7a2925d51a1a019b91e1fa29737a682d76a43e222dabdcd41ccc056489d80e189969b055935adf8b03c1fdcc37fc8ac607849ef09b71f8dc8229875059b357e49178fa1516d28bfd0dd915f2e888722fe6863710511b5d3e670785e7808a3e6e0b275cb20b370e6482750042184d42db243c5456285300d67632ca5c4170877f07546a40b1ff313b3ebf9e8658dab987f21abc0f398e0ff3c876eaf1fd2a535cc8a4570fcd00bc6c1548e30400794d1e4137dc51b3969c9bdbe5f2019b0b4db80f18a6b2124684c257e3baf898b63596e52a26f286c4adf00bddd47caf4c60ff347c61f990f929b5bf580f1947d61452df19b9d329c870e2f984d35a26a097ddd805f7a82f97cd0fe0946225f180f7153a42c5f3e1fccae6213ab8bfbf9d03d4572c5cea5c88c236b9a95c3e12d64567946a681579aa001dfdac7fe3cdf9b3cd4b8d05cdff1a062ec6afb1d9aa2bb7d31078b8a90f4dad92c7f85717ad7ac4c361d68a5813ec6ac5d7123725ead0e46c2aa1abe29701569894058488bdfbffbd74a5426004bf0698ac921213400b3c9965f3bf6f17b491f5bd48d66db972c9ab05cd896a7a85c9060f32f15c7210f251ae7fa07d60a86def5e30a904e9ed64f40db4bf4832bc89aee837a29443363d37739f4b8e8a80b15072b057cfc5cb855f960e3e73b26673357b7f009e9a5ea3f251710d8f91b9bab13c6b28754f33a4e546fdca7478eb33eb619d836395bcb481fbae33da42a6b241effa37a61561b5f801e59dfdf8c178fc08672eca75d8b17f6194e45a8dbfd8197a97818ec9bd021fffc1d84e987e736e7ab14a2d9ab23a1f1f4365e1a2d8676ad079024047da0e2f40bee00c7a55e362c23d5f3e445ddc411cd3455638ace66b34ee565f3fc7bde2386c60f6a07c25ae7b9059fd7df0c6bdb44fd021f3d7712bc355dad8d342a147b60702e458250575898022c3d4a9a7309a94f2535873f1cbaba04b69080c644b7784909abe07f8031ddb2aeb0879c29a25e534b01c038d820f0d769f8562547eae887a9fcb4ff9f323aadf428245a7c5d27292a0f9b613979b8b739ad0730a5e48b13804eaaad0f83440b836c0c95852b377ea3126ea9ddc96fb959bea3ef85bcb3b044c23c146bf6100fac96493884cfa40572889d28a35ae91a4a777431290f038a14a58f9cb8a4f6fb8506b74067f649339be0080c497677cda17603cbb1e22336e04ea9173eb8dfd346246e57948265e0c7338213c588c63c54ab7bb200cd0b4d71ef73676b3474b803c9811300325fed6dbc7961956516bcdec8b4d611e9b35000f9458a9c37aef57b6d5420b12dec06a892c5e06fa1600392fa8332b328c73e0d9e7c5bfa0f481fc81e1c1d8cc7458608f3163242dc20d2b7917a84742556e859677901785333971a02608c69773b5aa2f4bdb19a5b3f23cc67c56162b5f6ba4cacf137fa91617b5524fb7edfd8a1eecff652989dee9dcc458d4d80201ad570f10d87d6c8e9dabf9c83b3eceda9bac7fec88a8968a956efcb477e65819d3ed84b427fe47a7042eb6e1c4c6dbca33ad28d7184a67268cede08bf670546c50008840c228404ff87c9e245cca242f2b7fc6de76b61368842c6a29061086de61b081226e1da959f597d09e538767d4d119597cfe264d92274ddb927d22b52e6362c5f4fcb7ac04b627526e6dc04f692304c723f3fbf1d2a75c2bf479bbdce1e6a415a306037c0fab30fbe48308e8d55279dbde830066b89c6287488a58caa40041fbeda5e263c1ceb33c4f0c134d100009d741fd2b574708bb0bd2e2289efd7e1367dc53bd1141da2bd53cbbfa5371e3c6b1d24b55841a069a6ca0401a80ac5a8b36a9d2cd782100d028fda84b1d947d76759448a38cc49289208820a7154909420ad2c958bb95ba6c264f6f7a3815e7e13ed22467215976b21cc3dd3a88a5aaf77842606831044d837303713a1468afea1cfd41135b6544b89aedb76c982c1747451592950b84850ba89c24c97511d458b9aaa84035c5b368ec5937f85e7db8606c9cf24e1011d18db16ea02df404b98067701f5453096efbce456addec3e2f9be5d1560ce9ffd925bd326b8a44466f08da6410d957233ec05d7ba19e2c539ff9b3b2347fcd70c915022bb5a2a9e2e7fce484ffe303df4d33c3201ed4b5221d7f22f66d2d8363b1be160d36f8f8cc27a22e829fc4ca84546f41b5ce222fea657d18f9b4fc5d4c808977e1db088fa855a373a2a7375cc7b06242abf0683a588a62d7880da4305cecd7485fa96cad911dc7c158aaa268e774ebc269b444f1d8e6ea1041639e19d4a293cba812d942d8cb6559324f40cbba0aad688495cb315b748b7178c8e2f77ee460921d8d7df395bf19f6239f1f1e1daa5f96eb960d35fe1e8e1852fd969f834e7601269f2298e332e34a9f8aad38d18cf271c8a1995e42702fa90321f34250392125d922c9900a4380d86cf9c3c99d76ca714d009f94be04bf7b9916cbba7da2af082e5145c59c6cdcb25df112f1006859a28e5b7a814dad04dcf20124df66a17e2745161f3a8afc4b56232868566cadd41d6756640c0b7ad50a6c6a7a8359f886f5464a802a2e58bdfcf680f941a78ed015d50347a58cddbce3430db18d487d71aa44147e717ea2d0b2398be2bb0ea9572ac35f26a62a6db7c0f9815ba0f619809786d3ac5656e54661a922bdb9a65c85dd35c27b6b2d54d5d24e6a144d6120e4eb0bbdfe824749d4db2085685a98672794afd00bc0adeac77f5e54e83c4edcadab2057d4d02cbc728dda48a6c040c03aa52f27c5e304c429b0e75cc69f62d8e45c71acad7aa95b8b01647ed73b11d03e27bb0fdc806ae6eb50e66bb174fc83ec375aae09ac389c15d15a6dba50a287d6a33e8ab71d165652a844ae7a276c6d54a5a98603918361112d2f6eeb6f7967b4b2965a80866075707e8fd4b45cda9b5f452516cf554f8ece9d893d9630fd3eec7ec516a8f539876ff4d0cce5ef25229f69c0aac9cea2cab9289281d0555c798b3e5d44cd29dd1c5f6187569f70160f6807cec9547945325552925325d5b59e5d2ee47457df9424575adac7a0a4a8dbd14941a7ba089414cff749ca52b5fb3c6dc2b36e64ad4ec111f35797c319de4a5d245efdbf041df4fcba97e9f44cd0c6ed847f0593bd72d2c27561b3ba3b33ac86e3fbd3d9dd151e23deec8fb1b408977d833d9cb5a775a68570b4653e3a600f8da57cdc60d1c38395ab474af5b810df4e8e08729bb8220465c9aaa4457da95323b017b7974c05a44fcb18812793278b2c85c9c81e7961c98b5288a680d672e621abeb7b30af1a907b6815b639a2da9e08d70c51b414a087c00a96802053df4e953cbb4a6c014d555d1112446ac8053ae4cc11282a275af3c13846a08913a7a512c5d942841855d5492ffa61924d43051a3241fd929675de20a07254808810f534c5805165e4c52b2008860e1862d54a28c92c214ae0c8144ee63a1441815c2dcc002ce036194f18a1124cc338104de1113ddd52bef288a88ef16daeffb6870320380161b5a9081447fbdf26c98d245b34eb0410992effbbeaf26ca0612986857af3c2c51748be5044a645f0c30ba34a206075d0a118306ad7be561c101001ad033bdf2b050e161b044e140603132830a5d52c1a4c95e794d554eb49944c96beaf50ff77ddff77d9f130deb95d7d483928ef5ca6b9a818340b3e895d7144506145aec95d7e424469296590100259e88a1c297222dd32baf0621aad031bdf26ac052b3026df6caaba18a58793540097be5d5c0a493bdf26a98d253bd85acd886efff541f38b065c94d84cf8a0f229712f076b71f11850f9c7085bb896077d8220586db7773cc6eb5b17f7d70a184dd6d27ca0f4a3bdc8dfcf0fd70ebbb4354383cddeeae3f15891856b0819b08a0104d6edfcd619fcc25de3320f8c7c2e0e584266e2294533ce084133711c22e23b8e1fff88fbd92c584146e228c59a6b8611ed66c91fc0004d1edee7a13e1b3f70938261947f2c811163a5ce12b846a6ea8f735521efd9a7f3d75f4b972513b38f181126e5812850dd3830a72a81f4802aa883eb54c6bf0035f98e8084a42821b5830526197a5e866e1f28309352e764525a8a1088a0b2bb032c5030aec0f255745a032dec12a013b84192a3a424a4a80962a4c089001257053a448222a49d5f5818b152c7c4b63ce391f6008378eb9c81a15e584647031328e29a03261ec3962829c0b47b25c212244c1291ce2861d8e8461182240cc45aef2c1308761188621171250f53094a24f2dd3550b5d2837893eb54c6b1f907cf1a14a49099ea40873619ae05e542f3c22e2ee70a48d7a5a06856b8413f4a9655a0f6d398242edf2d0f483879d1e4159d4ca48601056248d01e852d5e50a0a0745b4043f555c91ffb42c29893eb54cebf0c8375595735824cc60ce39e71114b1cbf50046c7c52aa1a50929b52948a12cb90aa35a05ea900443e9a093d49c735e0242133740e9724505a3295d82d89910e5ad972a2f571a6452da2c554b729420880d78d149d1035193add51c28e69c73ce4e94be255fcb4b39013c5cce4c3e294646a01008a20085131390e04b114f849820828b131804b94bab3aa5a5f107089ad022af6546a614893265842dbc231184277c450cd9293a054c51121fa06589172857985c8142a4444913ae18a07421024b0c530c7184adc20823a48802c2b00443130ca93e73cef908cc55c011a2d89247bfe69ff7b4e42b626af00129a11f505075a44f2dd33a1bb9539e8c581166ca4b0c2830e1e504a824a8f8410a20c0ec9aa8013432a51466a9080f74a08528b7103cd2c30f8826968c3c98c110044190f7746915aa2735a501af4acc5270028ea8ca3967a21b4255a438e2f4c211302f98a0030ae0104c8c72ce79898823c188893eb54c6b13904c4423962ead36ed9ea07a083042ea0806710ced135c2eadf2a2be50f978c24a044ba2228f7ecd7f5854f464f7200e87c329b176bd725181b7eb2d7ca8a105a4274f68f14078346a39c191f02843e5bc245f2c4f47285c21bc5ca5608950180ab193ea61d8a4fe48a19773ce4660d052121eaec4a0a4072b8cc2275060b4d41f4c4b62118be585a9498739e79c73d11272031d9e84c20ce69c73064208a89e33134cb45b828baa09762418c5b55b943af03109433049965a12da720401c0904001a584ab198a40828313bb2ab425e584852f3320e154e4c230841243401175c513609c4041820a3810a1e4059513400181c40121154640aa4c4a44e2186630e79c3317a52f3d67218488b09a4ad214285494aca043e8444b110a422071f4744493a38a2b5d8c5e58c2cb124d8ab4b01d3841154b1811049215ee095b76d040cd92cba2cba29465e9ca9784cb790987c6a3ef87144d2e8ce10ab94bab3aa5a5a60d56d8bdc0125f7cc22a8af219c18992441522a529519ad0402554859baa98e853cbb40ec396922872ceb94b0abc9e73ce391b11f1ed723bdd4e69b7b46bdaed764f3b289149c7a4c4b4c4d4c4b433411445511473188661180aa124e79c99a8c2b42a5a292165895e124518854dae585da84858024219e953cbb44e2105a0388657ca974bab545607901266e800baa2b056032211455114c52f1f7d0d3402d3f0846955cc61872d552ae878325c24687002a4c18aa82a3df9a1c991100a8f7ecdff14649873ce39a7708b1441c20a91426e8af5e8d7fc4b11eaf2f7c90a74e9296a783c21ac202249120b55809092c210294be45e68b25465370226242431cca10e56e00f1dc2e8302c0206214315f0280cc724df062a10e59cf357f5352193208a1efd9a0f432358ea4ba2bab46a951446b73074b650f468ce47562a6726610673ce39ffd084aee78c7b64127d6a99d639491442946650628ad50ab02c718b90c2491351b21461ae86ae8aae8e72ceb9487ee185175e7857979d14c8448b69348e3927197fb85ad2a546d15d5a555a027f44697aa3a25c94024dc30b5128d0203484069ee044e02505768319a672d1388ee36803d3a555272d5c7808b0212ad73e231f06d896635e03c97c2ce6f5fbc4bce6e929f34056629ff5c7de477f0cf64056ec03c5def5292ae3f961db1ac96c8b8bd915d35cef137b1707b2721fc8f5b09771203dfbe172c5fef5a9c5bddeec99fd707dec7d5c1fe397fbe897f10f300d7fd0edb5679787e013fbd76f506f1df09f18af981674fb7ad31fe3f7ebcdf56995f28169987573bdc697f7fbfdde5d314f85d4c85cdaf2ed8ee9a079809a44ad36a0ad34f04180ef13884df3b6cc169f19a0f5f679b4788df5d624ff92bc5e34b54e1d3fabd56b087689c92ed51d0cd531c6ac2df69b831eb955b2ba8ba236688bc5f255555e9aa523514994e000ae66df42daa9dfb74e1c84f7cf2957ee4b60e700d3eec7afdd0d1921f19638fd40e29d017edb630df0f7b8e8c338a2abbde1904aabc5b50edff6304293a74b7b709ff5f6b29ef5a9902349fd96575f14973fbb0ffba09b6bcf2eff7b61b10fba91ac6d9af835c0ef83c8cd19c2ef83753ac6613ac66fdaa88e7f87be287e175590b91457d0260fdb673f5aef7a9fd6bbf88f15fb31eea3f58801cb65a3b3eedb2fb707f7b1b94b93cf7ad46e3e8fda4d9e7b6021f72f607bf9e363d65f168bf35c725369bdecda5a3f6a706962c77ff6b828fe16b4c8458e7640db6731258118c4207e107fc7b15e794656442655667ae53129220394198e9ec4c0032e4a8b114878496890e18ac5414a0ae7d35a5b8d2d683f6bad0e189dc3846b351aea2be854ec52603e3c2ed127e61ab522811e888e3e1a1863fc551445f0bec839483f11639c7ee9778b82d169ddf1e05c70735231fd78294eaf3c2556f4f43cd2f73f285ff96d03e02f8421bacfaacd7d16f50677f0490c02be224ccfb89ef9056ecf9c4545ef83ff91165f8b5bf8ac3677960188f9dde806f43d824784e315b9eaa4eb7e8d3dcfadd6a6dfd19a8e7ed78be6577c5956b42efbb230fee2e9595de2d774d221b97f8fefb6a0ae96a7620f51b456bb798300e30e01677636daa0bfd65d2dfb10bbe1912253245802adac13680b1757496bafd9835229bf4f83b24cd61c963da2288ee3c862b148d2666b6d69f2f83a589a668ff964abf5b5cc1efda4cb65f6b49ed425cb149f7ce1afc2c01c8a230b465ab3e5d22f16ad6d3b2992db76d2dcb693db76122c6b277589baa0ed932f13043207a92bfa905a79dd2565a4a32f1aba6018d0aa57312b611bcd57f26b7dac846d77aa09db587c7dbcc3b6d8d7c7396c3bbfcefca5a2a2b73e6e52732eee525d1bc661a3dbbb39e2d7d6d7bf52f7cb9dba39e5d7212b60cccb4028ecfa5ab6769589719525092b611ddc5466a6ae024ac16a4f2c1ca65d8dbd518a64512b8b328f76b43d9725de178604cb8d34a5edb5e38d5930a4decd81256100a3df20620adb7459d56f79d565bb0682ae12efaf6b311cc77bf106fbb94ba81ea6d1fc93d1458f722552b925e9621dceb9aa10e91829502a144996c874efc5b747727149d7ed8b238cecad2da39255595d85311261bb1ca6352de9922e0d56458c895b2625fb22a39255c98e700eb6045382e560b9b257d954ec1cc916256bdb6ebbcb76bc4d91a9967199089402a7aa4ea96a536589a90909a7a87e519aab2aa92f542d9c5d0cc191647dbce42db3a7fc96c9e3ebe393680b248ccc4b5679a90595d893f763cc9ef03fdb6725deae7ef674494ae09fdfd87bf142ebdec3caf945131afcbc85b076bcc4fbd5c91287d1294bb4a7636f1cc5a9b137f6442951e9a25596989af0908844159d2eed3e28055e8155a014283543de377bc6fffcbb445bd02928c5e31c2ac170469759a2e6d7caaae42c5e2a89433d059940a56a032e8155c017c00dccacd0efcf68762e4689778c058d380a5574c45d3ce672333a2291a949741277b4d29a3c64bac8c5a51cb6895a3efd53fcf898cb44e055c681b30d4a8d53a31411b6815457acc2b6b10ad37037670c4115aa39635445ef8356fd128d3db14a6fdb4d19adda6966e6b05c00ca00983de0c380d2346a94e22e754955caa58b5ea6b36bc1465f3535f6a0b0ed4b4c0f6df8907fec8146ddb27277c538c8bbb6b34689f7ac933725de349db5a9c41edc546868b808750940f4b75a89378b0e6e2ab1ffb868a3c47ba69361987b6048e3f839ff0b2b9d5f485e82e960b98bc258baba3963063f8f3825deb24eb6ca96d9037e71953848d0cf734d9387d8473ee218d2292c97c3b6d7eb4ac469a213664475a9d26b35d432319011d2292c97334f459a0d3661d21683c5c808a0449334da42e6333af0c75edd295958cde8c6de8c6eeccde8664c0c627ae62caa40a99b13c6f2a88b52fab244d564b57bfa32428954333a906acc615b59a5641a75a5d3982bb58c4b259731c7dbf51bf5547e19a1c62fbab177519a52490cc7a899d913f2b1178a2758b2461247d9aa1d4dd22dcccc5d10c3b17773c6a8b2ac726d333a4cbb333a26fdf1b4743a314f4b2d2597a792d7ef0c542fa3667ae597f18b0edb64322b2559183dd45434a33b9a798a4182ea3149bd7e6149b05c6cc3905e642e9b62228fe44c8f6d18120cb367e4b05c6995c14c720d8e214b00e0a632fb6ff620efcef68c0ed3eed36c510ad37417bd3b2b1d500a943a99aae87afa9dc506ab3678eeb2b74b294cbba01478a74aa86a735fdc65ae442a7565d20def537b1bfcc74acdffccf85a0df7a9bd8db7c17fd0af05ddd488b16bbc8c5dfb19fbe6d16de369d8d8d8d07819fc077d1aff33e36d3e48c607c5781fdac778fc312c7819fc47c65bf03f319ef64137f2c6d8385ec6bef13336cea33bc7e7a87dd00da7c6fbdc7c8db75fc3c6d7f80ffa36fe67c6df7cd0edc69ed9bff141371cbbc6d7dea7c6d7de7eadf637f88f8caffd4f8caff141366a346e6ad894e0e7a24ebb8b36551bdcbb50a590b61ed040c78f9dfe718bc77f753a2c92b54fd806e3f1dbaad9631aa317e925ba395d12cd09f4edb277f11f147e548bcee0a3e09fa815f014c55e5dec1afb980d7bac9b59abab36989c79f5d4eace3d63bdec4fd99f3f637120b23f67405c3ccdbb789ab77bc66719b0debe9de9ec30a53afe6bf6b0380f0daa839e790c7bec22bd531db3be83993d63f1107c661ef67826ad53339fd65e0fd9bbb0dc62a9347097ba639baacd0cf5d6506d338fff2e591db78abd9101ffcda1da608fd319fc2e64269599a7d9f6c99e5464fe9a0cd03317eaf5e3c615cdff3bacb4fc16c9f5160adb621e37613bdaa65bc5eab048d6c56b9e8a1dc676555afe173bbf6daa3b30aa4dfe1d176fdd2a1db7e0f6e9ea6ed2c5611a7e9a7d8d4e19fe996d77d6a90ad3f0d3550feb2d11b6d91ea661ab033fc6b65ba21bc9e2b6a9daa49768cc418bdce288d87b5d41aeeb8a81ac7f77f0e87c29a475e4f4fb177f07d8160001541d38f6e6d2a8f1356cb3e0519dcdd3f28fe53d923141a7d7a8d75288cec5f10ffbaa5d302ecec5bf987d8baf95e66b8da931fe0078dd2a1c7b467e8eafb71b371ee781e0f81c381e07c703c5f81b5f6f8ff3f546d6f0d98f1c8ff340723c0ece03cdf81c1c08cee7f81c1c087d1c5e6f249fa5b60aa8b39ef3aadf5c48b5b9ffbb831b1beda94ebf2f787ad3edbbe0e94d0b3ee329fa7ff2199e9e97a75a7cb54627b4c9ed12b74a340de8d42ab1442330426a3d6fdb6b366cd8a8d56a36bede2cd8334cdb33cc673f68340b2cb0e081623cedebade6a761636343037d1ae8d378a0196ff3f55663cfece3f87abbd9377fe381d4781c1c48c6d7f81b1cc88a8f8caff14031fee6ebedc4b13a04506fee9fdd9e3a7076f00460778069f769ec1eb5fdc1cdb6b16dec7aabed7abbd9f55663d79bcdae371abbdec25d7b0ec0aeb7aa63c1b6b40dead419788b5dc68e21c22b0800b7f5547535b84717b546d5e6fe1d22ba57483fa93bb58b4875078ca1eee4266c73d90f32c4dedc1eecefad7600447f2b3fb51de8f7ad0c9600e52b69d7aeb772d75bae37b0deee5984d6f715fbf2d5c1cd9919207f06690e527dc8cd0f72139c8d33d7c366230752befef2b5cc684475b8b8968b6ced19f83ae69e813c041ff35bbf41bdd5f80f6a7ebdb94c5e6fa559be7949a83b2ae842f51aa93749bd52ea8ed531e432a936f39ed0efc76cd9d6db5ed99e9dc2b4ebdab6c9c6506d8eac4ea9a7e443ac0edba4dedc7f526dea2def9b19e4266e31ccdc1a8d39e88fe35b9f5841ac4bbac043158eb7a4043658108760ad07aa0d7e8ba53ae0daacd3a5e1eff582f00f4cd0a96d02a9901f601bc975300dbf28e2aa29bd2075c71c1f57282020f1c90762fdf8df97f0a517a057de901612887cf181c667fdf740c6673dcf159f7c20567cc81f1f08eb47fe63afb080a162e946f213d3ea54145ca66ef566c57ebdb1760f4cc33fee7ac32fa46ae976f36c9d2ddaf2ecb8b62197865bc8529db456d1e0e7e9816df586a142283af31abad3f6bf7d81850aa178886228f7ca73b24216fbe5dbfd755753eda297c645edfe3a0981a1fafa77fa7d0eea8e8d61dbebef799fe81705fde65d83d0f5a260906ad34f23b40cf6321ff37a1f18aff825c3455e65a6943bd5e925dad3ef56b663bb561a6c9bbcda6d6fe5a3b55afad8442d7ad19a94ae0fdbaf1d04db5af8d617a2d3534da6a5e62991aedf6ea56eade5c15abb4008bbe6d5f53abdf5f6c9d6aeb9488176bde981f9f53d30bffc6a1ec02c3795d79b4fe3da5eff123b8a6de2edd620e3174df23f7b9f9e9a44f24465f45484166cf18731c6d8eef8762861610b92c5574488541bfc248b256d7b5aaf582c692275c724bffc8b638adb47b0f3b070fe92dce207d506638c2b385ae98f3b690ba588ce620bdacf5a8b7b68c0d3710244c72928f172ba28be4dd506bfbebca65e5217c5423abd4d521d8b4d34a4a8a423afcbf5fa35ff7105ddcfe0c73e08e40f82dce7f531fef3fa1f6c73dd6bdaa56aa3ab3aabe312756cedddf9490c83c91e16f3aed8e7980cff81f1ea8ad9b52ddb159bb31f2e57ec5d7fb98fec5ffce7f5b2b7a64665fc473fac1623bff2ee5477d8cbce1fd9bbb8365f9fffeaf789bde63f56eeffc43e267bd8a95f86af0567b6e82cb8a9eec0e8f8efaeee90f8d45760083af6d2f1162710a050fba9e3b1da6e13a6612bf6cd17eb4ef9e6931edc27dffcb4d64d21b5eec2096d3bf9217c3db54b576775884afd7ea92b42db47d2d4ef97d876ef7deded2aadd34567f7f5bb3ef64064af63fa65f9635f6f7cf6e3f5b107f2fa188f3d50c5b4170712fbd7bf38500cb7bbdbe5e990aff7d88a97ba85b2d6325df472eb7451fce593227ec15e2f58352bb6c5defc0fbdf29ae0765f094bf6828b5e1a3d6cf6a0c7cdc95cb45914ebe6b9b6823c17f4b8165b6bed051a581c9c9b53cf4fb45f6bec0c38b22e5738200e8e1645dd8f70a80106298eaa929ee0a2848ad0ee68892eb5988a5d0acc919eb924052eb82b46704c4c80a4e5c91095bad33285520dbfdd557c31063f90c76405b523c0d205fde12bae002b3a6220cce0fb4410f7308310c41f2276b0dae0cf690640b327dc17b85d1c470e02ee22ffaa4d0962f0f5efab82ac35325d742a769006596bbef2b292e87447261f3fd9e212e0e703f2f19f3438a8d0a98feec1fd7acff3ac3662aff54be212ca2fc1fc5b0a21798b4b133b9939c8f5454ff16226ea8bb21a9d1d3c3a3a5d87b41b48ffeb5d9b03b99ea9b33ead40d05fb3c7c75009ae877d09fa5f5fb1edf5401c48ff8b575ecd04b0de7c7dd5ffe2305e6f24abd56ae9ece0e960c805355e4f8aaa5573c1b581622f7bbd815eaf61ef7a06bc5e3fcf956d20188f6d2b3e2faeff2ca25dfcf59acf2ef781e977fd4cbbbe07cdf1b5cb345b66abd5d2d131cdcd22f96cfcda59a77e5c794510f4e0c42e49133a0c718513e9c261922e894e6b2f888ea33a37a7e68c2f23737144a7fa7be633038850a4830f8aa2d6e7f9d70e7145955e87b802a9cfe875082b52d0bf55b250b462119f389ceae3ae5d6603c5bccccb3690159f18aed3d59d1b1dcb3e0b9618fa26653b88687532bbde64322f93619b0caf986683609ace3e480671bd05ab1d31b03f3eb641f47992a0d5b1be57f2f47bc53bea0ef9f807506d768a0ec9ad0ea541eb6e4e6a898e6c07d876cac4fca7f50a9f7b665773837a1b92bdccb3769591d1b939b67f3d842f9ceaac6d7b100eb04df6f88d90c04079e20628aa6ef8abcc3340c66538036278c5b4cb239ceab21f3715d9d3b836d9e347fbc55f1b2fb72c6891ffa91be2841a01140d29290ec6cbfa2b0ea4a4cab45e29bd5073742e4ac4eaa855389041d144b04d3c5bd0e3b3de2e897609db25915ba56a434447151d4ca4cbfcca5e3929d9edb0b88b12e12e6a7196c87eb0895cd47e2af2ee120fbe18ca3e5d14d79dfcf81b50773888c0cd191f2fa0ead861593c7e2296484bcdc932e124239b539187a7dae0274bcb5377ccb402415de6c74f6b7de6679e7cb15f3c6bcf0c6059ef62cf7ec0f8173f8be14060fc8b19907f17ffefe2ad59cd04583ecb20f6f66d983ee47610c21efba07e2ad176df6a036357a00704db6117d7738778d88b42e929d993768a7fbde1988711c3673ffe613c907f181cc88a0f8b87f14034ff30feff39108b875161fc7e20ff9c03cdfe7f73202b3eb37f0ed4e26184a936a20c149dd61ecf0d82b5786a34fd7e16a1cd8e5f4f84bb433787fc57eab8856d15aec76f83a861ea8ef9c4a5eec05c9fda2b66583d988ead09527b84b64ffdb652a07e4d1ef62c42cbc8fc2973f29901ce8f791e27af179d919179f1633ea88f2fb3c7bf1795f10e2ebabf2de4a2609a63ecc9385b67efb8a8cd458003075822222f768b8d7417506ff0e377c2f8d3137f03aa4d1659ec7a0b526df0835f6f49e66a23244e4a987a7a5e79421a85375deb8ef83524adb5f6da0ce4bacd8051b7008ec47d1f8661f8610882bd025f555d143f99815cbf6fed6b25da0a01a73eb0aaa8e3278b6e4e15b6d95b357f8437d65b12f454572cdafec837dccd99c2cfc24655f956cd0c46fc22afa190ce202a84068d2e7a49710ac63a3347fa7b8b633dc618638c3166b1a471f7d1efa73a250d36e8c07462308bdce230fe90a727883f8cf11069ff7bcb810f6c33ffab3ad5e6bb3dd5e95f4f7574ca1df77b5b74d1cf96562d33471a7cfbfaa2b8f7e10a02c404b2e2e3aab7ef8bfd57abfeac346cf6afd6b39ed608d33e1646daf6fbfd85f2816de7572dce07a67d5fc6ea50ffde8e50d1ef39f8be1779aabfd14a5b5e75e2cd23585aa2c5c909dd9228271cc65e35d13d6e0e36a9b89ee7d6d4f0931ad4ea8ef8f86d549b45c154add66bb7c9137546c761c77f9bb0add6fbc29d8242c7f88ed031eea13fe8861f6580ebf5fbb4fef5f65fae16af254b9cc236ace1b9764aacfa34ba44a28c0bda4af57ed097a768b74617db34b85450588bdc4e5dde63ca661b666acaa6ff589ff62a080d72748bb68f5f46e425774de4acf4ae634c2215d1699dea1ddc1c2ab01cb6c1780dbf8f992ddade506db5aa506fce1175e7a35177f049840ea2631eac159307f6310f148b79f071b00f1f3fa06c0e48f6b1078a79d8839fdadcecbe8fec63ef1333bb1c480c87c5b8c6c17202a65bbd5921754ee8f8d319dd7e8caac39a506ff08bb298b75f53773e9bcba1dd03b47685aee15c14d7eee3829d47d8ef016074f26d0ee7a672aeb7db83fbae272fe9da7af328dffeeb3378cb6baacdeb83ac4dbffee2a910b46bfbac0fea98343bb83925afd716d59def4f3b54c390e4aedd1cd65ba49acdd5caafd77478b0cd5d7494418b1c7d1ff4ddb54c10c5c7d9da594e745aabba0ecf05b787cdf5e6a72d7aaa93d6a4347aaad35d7fc507b76eed7a692017ef77d11b0b771db0a683343af8a3135ddf0e61fd65b1eab358fae6b058b5b22a6d7c2bd6ff6b47b1dfcb897c20d6303f697dd2b1f7330e09954163460c9b9b1a377b46d6d833f2e6e6c9bfe13f5648ee73f3b51b1b1f547b1b019a90a8544db695350b95aa9101000063150020281006060322d178380d4210a67e148009749a46724e1a0e834110c3300a621800100000010010001001842908517210001e7060ca8f234793e1e5884db2cb01a15b8871cc878736a820f7a1bc7aab9787a6cff8ac531887f0237aa1427cf6cc3fcefe0efdb3790d4c0719d26e6e5c31b191b72f2aac808de794e60dce17000339f2ce58a61bbb75e3d705c89c2844378afc81ca8c337e8fb01621b88eaa549f3b35bff60b1666aac12d2daa1490f7a12f92b89660689ad158e578ee041c9f0d26343afdbc96b2fa8f54753e2057066cd83a79d02ae5cccdb9a787ab7c5fe2e1309148d1be2ee317d8f6f9ae1ff082fe00ec5fa6ae886ac36002b79838ba64ec1814587f42713c128d0e05bb58107ff06a9770aa65720b541c69c00f5f2e300c133aa181bc466d0eac7e98db478e62a9657710cfa2cfdb4bcb4d436dcba521cb3d0d69149a567d7f4e5db6102f349213f8e2ce4981334c34157dbe929fd6e46c31d5f87ff2d0ad352953ddc4d5081d99d57f5c5ea395dbd85740a3805fbe0fbedc6ebaaba626c72536333975827543ec81e84641a185c253c6e812a0de06b656abe7e7405c3ee107d9dfd18fc528ce33ce19ba1526c37d8c0f343f80026f426622c7536e08d6ca501bddd46f05110b5bba184da04eee3c5c17050b69eb7e9aa9827d2ec8e4c63124b4f61b0eb1912cbfb3870a60c2ce70f3a1bb021734f8b8e980bbb1d2c9d818216ed378b942c1fbc672140b7d097107fc0a8d47e042dc3e8a0ef4715d19d2cd934ecb5f602ed32ee3cbcab08cfafba01b737369803849902197d4e33d14932c8ae0d8cf7e7a0c66adf10c77f2f5f4d2392fc9203dce45fd8f7baea2e98a73ac53c568ce16689aa6c622cf8c9479d5cb12394a46b40845c9ad65b5fc009c402267b0643190f01f59cec6aa12b9890dbbe4258f6123b744087e197a49284d9012bcb49debf9e3f25599c20a8e039150edb2f83fa0f3a58f1ee20fcc924063c9d5f2e528c18810849b1c9210fbe37d1b626040ea56a351772b291cee0ecac2dcff9b35b87450120334a801a87fa182d9c9e97d1a185160bc75351e9272b8bf03962b84177537c3efc2bcfab3a7be7a86e6efb0bdbad59cc54b9bf56866c11e719f588a7a4864373ad26435284fd4ebfee0242536e08881de7104e8621b0e28243ef0882d934b071a9c31e31b4095ecf7fc1d2dc1c817d090aa53d97fd2963c3027f3a6b5afd105309f2bbd92a094cffca10a0a9add1093868dfb9183cf2798cb3814bb2ad5baaf109c96154115465a888adcc143eb816c76ca0a14e373028f6aba6ee0bc0374e4e27bb4b7d71e3430ed62b03d27b43ca648fe73ff97dfee491442bffd40a073483282df81810fd22f99b13968ef706dd534aa7b1ef1ff4040b3565d6900e555c7123d28172c1d40f01058cf6fc6f972268904d3cc9c168689b737fccdc037db4813f5b109a2effb6c8a803bc210ce9aabaaf74cafd01f9b63201d20d007b0260b140cc00ef403081f2c21b5fa0e1c76f5d22b6bd5a5c003e18fedcfe728cb0113c7166b55c82da5ab4004361750ee870882ec77df6f9e874080d9e199168c560f75c66b6af9ec286107465e87e14214910a7a126d404629201d9ae0dbd167e030f06611cade9692edfd80ba201b407179bc8b9f64a0b93cc8ce13e54a72b2937f9124db4d1e4ccf9416da4c29fdbe5875d875367b8bea7f8a0c48bcc72b990b5c1ae86439bb9cb166df44ecf27548fbe98c2376c55ee0c69b42d8b956f5da6da6404acecba2e39168d8a9f0887595cc8ce47394c66582fcd516db2ec0a6da510afbd3e575c671b00f75f3b6dc82527623db658778ec0f489305f201934ab397322b03f03bba321cc09041785658b6f4707a55e83515535d41ab38687bc0842f1aa6be20615dbe6fd9914dcdaf0dc6e62b8249537bd30dca07c0afa30dfbce058ca051656c6fe878599ea844a395149b26fb442381e98f375e9cd7a4239e865c2fe3a9c13131cbc51f7505884e716ff2a055c5c00032087459d4aeaf45cef987e3a8c90057ee5b9e03b22735405324ff3112554596357fbbe1283f45a157719941b140b0e7e1bcfa8c42a8a660dc679ab75f6d58ffaec81103d64228a6f71bd0536e1d47cc063c42c883988e125af7efcedfbcb951dc22623fcd09ffc22ebf4eebf546daf489af873d189b9bb61688eae84bf545fd08f93f883e3b7d2820ef46e294e123a8be355ad6590a714d12b56c89d8fb73379c4cfe980f756003b028108d604984ad5a996116d01313fba007929a199ddcf55a645aea0e6852ef7e3abbe0699cdb758de3dacb29fc8dce559781f4d55336023c4695f621e3d2079b177ffda73a14f3f2ec2639e770afa3df08eaa0e25d85a6e0a562b0bbb194b05e76c9763ee368a844d1ae0b9afeee2b095df9ec19c8a5888369d9f592e6c3362048a57d4dc0531b6bdf7533e132701095b361417a23053db9c6266ceb3b82ba7fb5223f121f756b89e7392d0963da0b4e0f804f098d99bd1fb1504c786926508738d4237f2474e41f78c9e97ed06650093767ddb6d8b0ebc97bfa55e405b98b0a9ae0e605345bea3a5e0df083c4421d371316e240251c1e38cb7e137fb9012de912981bede9253ce7dd15bcd616350b9c9e60414371cc544a9321344852323930f1f6afed2995e520396e5af125b0d5958815299c284b33c7aa25de051361b1c40e0f76efe7a428742a2b38bcdfdd3c628b6aec71b863a0229a4e9b64b6a38221a814dd1c86994645b7710f85fd4932872c3fc939c35939e8ffa9eace901a36ae0565df0a8d345db2495e192808b33e5443f54524fcb38ab74cc4057c7fa5056fc11adccbfe6ee105764ab39fbd6deb94beb163ed01869cad2225e915c580cb6087bda4626906a107f8e27c955956a0b0fd8a0a36a6e3e113a3a5cce8cc65a44dfa0e912c14dd9b653f199cc9ab117bdac93bb6354c0c34e43b9220720b8330dbe110d9a4660ef80c5596a32538f83a969376fc81c042c53e5f5c51db07949f1dd9047953e0d96b568d557a630990e8e433ec25a4d09f933ef1f7a3572254ef168cc5caa4b053285b703eb717fcf85ced988866dc3ed1e0c477981604cfcb2a020c94f8df3b403e452fc750de0b2bf111edafaf0576f76286c014ce0be3d966f49c549960fb598edffb9d166d64acecb16efb364512ef1cf4363aeaa52bf8c83f251998f346126e4fc3b1ee456f0adc7e42e33250c40673aadcb4c743f2b8d2edc449f972d8aa86fcc3ed807d0732a55e50961b4af2c0287fe5c01ddffddc7709305f97559d58f2a7060166de53452064bb3279dd30dc4df83408784fccbdf6095b934d30755e2519d1feb93b659a2a04dfcfd965dcc40c3bc0743730345e5bdb9db425fe174280d530af7dd07f7dd91c005396c0b43cb2669b7ea9ea85cc4b0facbdceaccb00046e8986f706558f9ff9dcd3ff28a1d04aa4931850d501e0c811511f9f52f778b20c677361df131b04beec49d64433bbda342b9fbbc55eb61e5439c8567728964a5ad1fe18bda0e5a96795886dc4cab636adf232085705389ec05eb2f06f27078d96b5083d5fc061a9ae2f277dc0cb7b80ba5ec88880ad4f5ccf7f139a00a3791ad7af5b334614d45bb11d90c7f79482744d7f671b0809a35cc1819264c5990e59ec7f8e63e8695f52677cde66a9d031fc9733184611b62c63afd1f6ff248cecdc593256cf566fbec08cb8b390fef37b1fa742646b6ff32ea9d2372ea2ab9f10c560f4632775929262d016d894c081c869874df861c90a71f302880e1eb4f56970ebc99b9387b8ce2681f19fb49d1c368bf80357e0d39cfb0679566f77d0903e2e05aa8f21d46ebf4a1b0417fb7c6bcf5302ff1f13a7eb8a73a32325153a07bec5974222afb9a3d8c3a486da393e55364105fb256420ac7a23fce9ee9edaf78eac8dad2f601611ff4e1bbc840651bdb4df02a5cc28152ef48650005df7a438d31819981f7d94c9e3e330b0e59423618444bcb95350310802ac65a9c72af5a6b08ecd7228eacfa78b50cf7317ed868f56983b13042649b634542c131c01155584c62d86aae480def9f7104086c968ace04456494cf00bf0f4c4d85bf36efa23352f9720fa5d74ad7a73de56b6ae44d1b9a8fd59541eec1b23ee456db8c6cb5d8d4ae00537122388a4a9f502e0de28ec569fa32725c7077a19d6d65cb8cd768cb8976b9964286b0284794c63ae631bda2206287fdbc48d0f1657893df6ad21878c741314a09580a5cf558be15765df011ab0abc3b97a1df80235e80566bfab163c10f7548aa6f45725a43d29190f95562bc4518857c37ab0c61ed543bd541aee2c559ca7ab984a6cd4501250b166c041e801b3388ee5f76dfbff32876f635dc968b0fb0424666b453df63ea18d7aec17077886720abc2827f95b0e03a956391ff24c7179afd2d154df6fb9a6fd323a8a63977ed131817a2ae78f8074826ffb210469b0e0d28de338c15e57e446170f84fa24154c7d87a1e159ff2b3d22f1a903ca5be76adb983e2c945f3426d2176545d5afcea9e6576be437ed6e0d4b41419d42000fc21595dc124a805d0ea1229fad7dbb4ab00ab6c2f8cb007b3d12e57464e8413c293074cdccbcba1f710a9a1ee68e8483825f13e23083bc01c4e1eb46b40ebae5becb2d7c5d534562578d68259e1a62c8e53054ff3d670ee22964eab6aa7848bbea21e8c21b3ace85431b1c6047669ab40056b7453e14511c68627814d00c56d10d543e0862a06d4ba31bc10d4ae888b809aa4c84ba230392477a17035bfdd5fa4e8721c1d55daddba333c454db19226b3eb8a52ea5bef476a2922701f7170cfa8a95adb9a30ad2678e0ece49c2c21dc40af220ea7c3cb6970742778229db0efbe9510955aee0fcb88bdeaf9ecb4ecf401179179d060049d0019d86662420a1997ed49da7e2c5da17bfa02b1de52d5163f2aeaa250bd3116145d610e807bb8647a908f259ba7452859a780d683e3298b1c0c80347434317391df63bdd37dc51a69cf89788eb927ce9887f3c26c9283fb49682f9a046b5f7a87b1b3767478431a62ed33a04f2f7abf79892c4232ce5a0803d907168f5778c8cdbbffc1a86bb5f350a761d20cefa9ac78057e3dad80f301b8c9f5f1f86f5bf998cff09900004aafcb766e1ab7a8a0cf71523613e0e928f041ac04533fce7205f3d283c8bd1e3ab936d0836af18c0ead5f340f0561657867e26edcf5ecbd0339a905efacc4b35326e0939efb320574a8269174876d045547dac11cf23877046d2bdf7ec3dc014819fdac996dcd68a60c894035b2bff220c053511ed741dd5eb4c5b134267a15f5ca239f907c2b26a688213145bef922774eb3d6e82baa907f34bd6ffb4f4542d65ad622ae99af3eea433c0063bae3297087eb5587808bdeaef19f6ac024e2430d3b453233a4d05d9a74adc95ddcda7ab660f276bc36d924ff47f8fb6fd9246cba9361d2070755c28020b6a52b9ec5681d247b6a14622e88ba1be5ccb3d4025d51ea847e65d5cd90a79bc9b9b6ea1b23090f6ec84c24218e8cf5b8095a270ba67fbcba4fb2871ce1fb075c7db19d2918b9386319550d8fe45a3ce5707e8fd305b09c998f8c568719d66c0f4019147496c6dc32a8cdec4902078c7d13feb4823fa5c907f660e016f7df179fbccfc487e8907c6347e1a22dfd3aa930f335490e1e286bad4dfd257db854bc071576e3ae5bedc1a8ad995ee5fbe25d4c9e05c877e8e0c0d00d05745db08003c4e3fe9e419982130c0520060e9f5e4f4689e246a6df7a10e30c01d3ae7fc270d91c7f344afdbc40ba34302cb59ad33aec6d0ae2c8d8bdaa3244aa024bfb765293a9e1f7fab75e29c452b1eba2803ad9d5dd862ea5c50c52f6457321201c6dc323f74c4ee4750407dba2a24bf4c9f6dfbda3dd4a24b93df61118e5434056626415fd7055ac1c71903db1b2b08c66be1b22baf3b2f9b065d6a2ec45a53931c3c782c7eefcc61ecf93abfa51668f061bbf0f8ef096d1807c9080812b2daa9f680b34343c898ee635008cff4bf5e80a852c58b84dd5b4b6b0130b67739f12707a636be68923b4499876b1b662a35c00b05ac20f5dc5b16673c9b885f9c27231fb35e3e54dcdf996e864d820ed9197433a96c99c36430e017fa256137154b83831324c50d7720ce34e4fed618cd1a30609b8c8bc3ae4c9bb70e103dbd44cc03dbd641b343ba9f75992b0565b60e48a7753fe6bce30830b840f971327ca2ed53cd253fedea2fbcd95a5186b70f49da943d73fa0ca91f02b2e3b9f99387fc6baf7dc7fd46359624aebe6e97261036c2d43342b252ba042ebaec9292ab4bdfadd04e1f877ff2d021018e9fc376be3eeb5a17c88194e2d7aedae7e12121537b017e446360a2447aab3d44454f273c70206c89ab62f692918b196e40748d2dc61015375810692a7e25126396f05c16cfc3fcfb1870a2fb7668cbe4523b7a78652d8d19b45504784b7c060435dca378e692c110b6ad95ba35388df9b967279d32e3e56d48a66c8e8cee05514e6033027781da317c3a698d7b0b5dcea80334a232f342472c95a6685cff919133157a79a49c0a37c2f739bb8ce0992d7706c7e4c23be3ef70de563ca59f16c351c9a2e783c36f15fde2e1153574c3cd7ed3d233e69bfafbddbc0d77bb3a4357c82fa47715be43aff65588f4a015e2c4aa4178e79d08c0fb965777a8328993c2edf64dd0518dde233e8fbaf26e975c632e64c1090f32df4d46506e2360431beecb6fe41f282ce36a2be3549f11f38cfdef6cb79bbd8c17b5061c81fd47d69bb4795299df07cd97ad9bb263aede136386b1d9468f56e8a9fcce793a49fc33ebf84cac2513a690d07c5710d99bf2dc3c74aa1da1b9275aae89b4d72f2a736d5f0bad014ea2178b5256fbc716c4850b85326a5433b6908f41a762043fcd9743e6ca0e0002442a66d5df5470e8a8a36b26bc41b85ea6381ea37289dcf031d90911f679fa5e48c5c846337b87df389d1703ca0dfde116faf6d924b66e9138195f4a8b1df2acae6ef4fbfb47766edde5d924b872aa4ebc3888271142798fc138fa5d0143d9756ec444cd59c0578f69729786c80a362fa8c546e6f5a166b7118f254715cc264ddee5cde90d8985ebcee0020d21ac463cb12d65abb47955e45edee576207ea3b81dc4d801c01266d1ed24c391f36d07e5fd963910eeda9f4b3751439182cd6f54d3271d91a9375d1daacea59784553d675d0d0c53197bcae898b4b357bc287e1f3f83a5f6d2132d6ee5edd35c8f8871bc5521ae8d8b48777059257d48d604dbb9ba6a72f3ee5a9ce43fcf86c2bf2187b4a55cd2592d8cddd4c9b90d5a379b130c3509bed148e46b4aa220099c58a29ce67737b129e2f2deed7172ba9ad6927f87be1e293c9de6923415cff7d999d5345924e3d2a46b37e3f7e2a20342f4a675c2d1bdc842d30dc6f6dcdea6edec89a0497479ed5de13b3d59a149a00d2a4f365cc777f938dc96b80de399090c15c1ec0c39ec515622f04b4df70752c49907da47b3a1f0ab905849401a5e1fa96d8cdecad5c4292f153054816721b2eb18c492842b23f75e45de50534da8076c898eb9c34d6df7a7c6946b8e504fe3731416a3bd2b5bfea186a44446a5c30f0e0a556c28e4f060a88fa418db14bd1b938544e89369186a0943f47d4a325e266e135e4a978589316facf74f6cce93533b40704b5814a62e86b125d300cd81e24b1530e8edeb80c9faf4f711b694a1b1d3fddd06ebc7cedfd231ea671f7af2a9634498cf23be9abf57a6eef63dc405d52b2f6587eb1d59d1430d3e8c0be2d4da9768e969fe57cfd5b3775b31c3e2d3ee15509656fd9bba5d294200e817745614ad409e4fc995b677ff12cffd7e8fd64dd4ef78a8c192d09f7a035cbca4f21a67d0815b3f1d0c6a6148f404933ba7faed74f2ffda3f1d5f7effa08029897eef089587b6d680d18cd6aeb7f9690f8d6811917a4461ce7e304646d6975f77e31aac44bdfeee8b799dcafaa6e4f2d6b8394a27e082fb7ad434b0ec13c7b7f75ed781c195bb1eeab43e40931adbd19172aa5b631029494ff39dff97cabb8e4cc87c2c3d7d0fe550323f8064841659021c2c4271089e999877a2a2c222341cd08c0fcdc0ed8127e5adaba020ced669007216551f35d99c990294375756c6cde39edee66cb7cbcb2a48b3a36e483652b9e0718c587fbdace0caf1010d5c310faf47c19dbc55f1581a09ff17cc8145b480d381490f215442ea2e62d161e2460909daba79f045514ff1185751eb08485b78ef1233a00a870225bf3a5071dc54b6561b4a979d527ba74f27751730fe3e33e24267fb7dbe7cc00ee2903ef9c03dbbfd62e334b312ed70bb37fa148e8c3761dc515711a4a09ba437be4695a244002dfe4b9522cad5ffc080523d13ae1aec647d2cab7f778a1276fd0b274de63c82f51b80786f93091023b7aac56890902c15adf34b9a7774f945b3cc846a4e188f9eb88f28740bdcd2d339d52ea024474ad536763c32e3caa826203c781edfeeeda708dfdc98480855b38975500b294a421d2c3782a73023461c4a0a32ae0389b2e483b658e911190b4ce41c583c5dc0359e03c36971412c6684bbc7d803487a8f4af35d2cf1c68617e8f714cf9a2a60e4c9ecd1f61f36e2c406abb5a27ea2bd714d746b0977d73c9a9d83e7b0fb60b287870765ff941749eafc9d77e3e2250e07a1139f4adfc23ffe3de06fe0cb9706e880be64de4d6b1e701325cf82c0086979b0410cb87b01e067fe6e77e90148081d700172714830036b18ca49ea65fa4b3e1da8434706dccc32095e30b3c99a77bb1129c8ae85a9775571ad03cbbf1cf51ee6498d2b2441e8aec443051864e4d0f1fc0ecefc9bb3b6d20595c8bffeded20a70f2c7df87e5a619c1600769b4f2a3fb7e46c546c6a0ecef22ff8513e0e745c2322ec61b61176d2c03e53cd1565fccfb547095b3dbb779d1e701468806c34b763aeb52c661abdc26711f293b4f6083e8d61278c326be5a9c0350b08cc3c1c7654411d28305b3c4aa62e8a7a80fda9eee50cd467e5f5f19aa0becc24148c1fcdba456ee52fdd6b83320d89e33b42b0df65af9a8ada75aca80338a258ea10aa157bfcb0188c01bedaebbf1021ecfeb7909e7a913933912c275c2a0d33779db0bae25096a57d15ffe2e75294d1d4c39de013dfc8dd471256dce898929c0abe3cd91c86dbf0e5629ce84c88b1b1d3d12c78381a1c657188b7139d3d3e14cb90e980b6c44f38afae88546f1b5aa9b0bc699bf4b77bb9418effd69ff3c31ccf3dc20fb2098f5b8a1151d968e281f7c410e90523980649888bcce8bf0c6d62caa780eeadf9416b21d15da473d02356c4d083e6c00b7fdee13d2fb92508ecfae8029fa352bb80e609ccf2464f1cbf8389676a81c4489d3244f038e2f4056a2fb3691969d9802623e5134ddea92a567420aea4f2a22ca70fadad56b945aa4226bdd15b75e58885caaffeb5f7dadd217351a2c00fe89a08bdcf42a81b79295209cf73f8df43ba55dd809521d013c7e2958f13970c4c17e0dbd372a395a399a02b28c29cd5c38fafc4ab65be1f7c599ab1fbb373a2d316b74448c6274fc80b61c98b4ba34ca98c5ec88685f048b074f38278c1a6cd0f186b28a3f6190fb73738d0c74b7e368453a553cbc7c97b6eb08573ff28bfd8ed65a677e4e42f78896445d8cc7b5263e03ab08de252b287153b1c546cdd3c04897b7f60f246b1e9cacd82c8ecd4c56ed084740b2933e9efa3c194fb145b6b646e498a97ac9e2e9f82080c3692086bb3884005d19f19611674bef0977eeb09dcc29416a4319518693fb15b653e9b872787e41b308e0d93f3cb4f04c7b86e5fd4fddb1f919c1b18e7fb4d829af13e300f085c9c140c1d6aa2e441f6df00eb890a872590167f86e1b5aa1dc8da60141d8eab6e1f9818f4c92c5c81630686109896d2bba905eab04f2fd82413471273a72c3bf0b05c902e80a1d47bd62d328e77d142bdf15d83831bbe87f7ba96fa85a3b28126552490c4c7eb23c7b34f8f3c2d473c3a27ed28fb9f519732e9e456b0d661cb559b60e9c029ba68a7572c9894aa6e377d1c81dde4e5f8bc181c359bc1b67c15884b98b46fc881e6fe4156324c1b48a487ebafacd26a8b5131f15ab68646b7fff35dcb9fe6d7e766394e437a5443549a53b06826bc806277548113eb086d2e94c3467b9afb66c907850740916d8888b41bb21f9484f6b5c7d42828446d7f524f292fb26f914f3ac5904dfd3f736abbdd4b3fbc743647501593b8c4aeefa433fe51c681cc15fda62aac5a6ed53cebc71dfa5a861573d750c52a4325d14aafd03dafc209f823c72764707cd85acb8f8c56f5a154e24d8e5d01c0d6fd70d6d84180bfd273c0e859939e80b8f235f864bb46f6b4f5f4d705c86a6c933487a5c3becb8c9883c5b29cad156b176a4c49deba834836960c022d95ec055252350945d185cadeadf6ab5c315c380f4531f5d4ef6ba62001d0e6417c280ba5831b43394cff1d1d651400076743df608e89f096e31d4af6931e16ad35e451b5ac0870990f79c678ed0af682aa1a884276357d68c2b2628c5c5c0228fff6ab1d421787603a7cb3b6dc3bec17b51ce9531a37c7bc1d207804e35bdbbdb2e9d9073c41a3fa210678629047c0273093c84930f64bf9edb3644e910dc1b29e11b64b0edea28a6243ccf2019025835ef958c10c2a246b2f433812185ab9d30452c613941b8c6c0a371a8cf2fc1f6fa3afb88a898ac931189a840ea2df45cac378d62c9b0cc588803446f7171c93c174e1755963d3e44e39647be5f7bbf3b9ce421c6b28ba4a434f216cfe08b4673649ed09c607909c0e14f209d453a8c125b3de4f723aef0347b27741d78300f9b198aaa234d82c1c9c445a4c03c4a571761ad963ea080c1681e46086a2f55b8059c6ed96e791d9da67b77f9909c018683a993379948f39e7cb446866382f232cb65c91f73e7a1ac2c4da63a1dbf89b7a23b96381ee9253becac6a33afbcfd253c2103e2f87bc8fd4db7a8f72192b6e9c3b026bede141d00b80335cdb61cd5152b4b07ab24d68ff218648aed0a58852616d3d351c421337d35412be2418df8ed0c764a39d26c02f709fb6214b275f206d46c3d153260b13e6c9aef6068c7a1a27e6edeb83225bee5b1f9dcc462e17bbbfeb3e70712ffe2eb0b840581f617316452c8ae3f68eaa5bdac0d55f8abf789d83ced6281f04d42a7fda5f5e46801c3ad5318d0a276191d1e6be03f9ec9785a8d0b770f34923d4546bc51b3353988dfc3209f5d602cb8cf0156d0d24bd09c5014556fe8d74fe3c16d1b77c1b9bd8be2d1f6be388401f455fc01438e470e56a89ae6deec7f036524d74ca7f39e329281fa45f5b9bbb49172895c2a5d0839ada8d33a64c97996a63f3b60c8b19625dce81a613bad724a197fccf49af99ce963f79248c153c17b012199994a9b84ad6be6dd337caefa7993635e7113b953742aa3200a8cc7c6b78b8e8eb094bb62bd476cbd1237e4ad08e49cbafd6f2534bd4335f2043d651144710823d97295bdbe8d2fa04750c4a8826f2089437462f2313b34ca7c04b549a6a68030df1f68dc6f48c37817e0b5a772a1bdb9610478d96207dcac1f0ad826bdc903240fd550d770b03409e537b012c503d3d4cf38f7335c2d5f0519cd2df298599259f6b2ec04e2405eee1c5f992a8fe1ef237da856aa50c91979a6eb7b7729b406073496456037af5c4925e1635cce5cb0e228aa1ac85ba8b8dc058c38773ca23f88e61d3a8e71497c36ee8e40517047bbd8d6b3cea5ba5600f6617a342b542e8372e748366e2645cd250efaf1749144370043347929939db5c14e6526f2929799deb893acbcdf8116fbf940797d6bf2822fd516823dca62a2130b136fa8c140f067a5e4619962286a0331332aa304be5120e0a663bbdcc27b1681171f9772c7a22158e65a42cb21f9439abd2e0ef1c636b8bf45ce467e18ca260db2c9f6626116c7ab4b169d9fc6b27d70dc62c31eda6ddcc200e6af63620c3180f092d808108f0b127036d5ce43c608770996e8229425db9206a235eee85b3971e6f89520c7f2a2b2d211de25131090ed8af5d0d12f8dd6b37713af119cbde6a3693367071b534a05b776c677c5f591df38c9ebcdbbc640c5edcfbeccece7c62d0f983f9ae7a6365b4acc3fbea6bfd4006288e4821b9e06823f4642b955314d3e07f5f7df9ac0afeb95fb44efd621a74234aad99398738ec0b9b6d07dbf98bd2d264b43c91c824914361faa51e41266e6f4855c8e8bff63730693a396b624592c0e8828375af3445eac7475e87223585967ffd2f5eccff425f9b5c287cc0d7a6b20a849856eeeef1b211c948568397665bf42589a0699ea039a92c5aac9b6a33171ca8e38cb517e08a8d8252a4586d04bbaef5c96e525654f89e40135837cbcb8ea9c8511fd3aadaed392c6f0808706739cac8377a525ead2decd5e937558c82b30bbd25e802d743f3ceca5a34493750842611d31ed9f09b686d764891d5ff6c0d908f3c69b69514be1c8caa016bc81ab61a7e192b32c614a1c2ac079d1bc6f44909bfe6ac641c357fcbedc58da994ab5bdb8ca2545e4978fcb308cabd3562fdd4b2c0970d9184c17760fc1c1d09c74543a45221e1151bd28400f238e67b680efc078641509c472b0dcb229b9d578df6f11a95f94913725a1060f75c1d6c47fba2723dd033f7d80280900c07465d959678b601c2d82732205130d5f322feab01613a8f17bb418d3f4910797b7b1c11fb1d1413bf0af3a04616888455eb71db0d5d50faa2ae7e56eff9e23499bb7658b40ba973acda776315dd5813178ae35f0547c6ad5aa2936ceac2cce017043601d8eae99d52da7eac0823f2cb9098ed0d592f1d3c2db504be70ed17671ec483694c55dd6f8dcb50597ea74cf8a8f101eaf88f676f75afa0ea7f71887770df1788b446fbddbe09bd9a9d4e7d7e46ebe115f19bd9f4c17b15924472bcd1e8ba016a12b3e2a9ffc63e51a188381d4ada91f2890230ec37b07adb178392c3a22816d0171028b835fb52fa35164e383fab2806671fdb5269b6991a58dad99828c88966a2bccc65be6347b9773195f81a33064581afd1a7336464b23e4920349ba89155186c4030a74aaf5cd912a5eb6499d404a7647f73da0b5540876fae8a4fda4764c08de98430eebee85ba1df7387983eb1dd89edc98987b40b1233a4c0db32b20655e48a8b865a5072023a874d6f630d816a0d24796d926cbd2c81df28d76591f58b74e91fbd413bbf5356ad88fdeb8bdaa90e6f49a1e1431b8d6d35cc79a1d68af1032b1239379a40e4cec13e6d27238137472e4f8235d6a3257960d16d7fe4da35ee9adbd75426d1cd604fcd06075520e6a628da360a9918e55c742cda98b3e4226772dc8f7353bef44bca4f8fb735978f3b1a572ae877bf8a65a229d419c5ad20969a2a9f1e51b05c0ecb9b514326b8f38f075f02c2e7ddef582c1a1649f5c93d8cefa0c5c0b2c188da13908872eb1989ed1e193d680d250d5eff19a95e500628deaf5a4fca17932888114e9fc6796d3b351412a0bdc504f01ccb40a20af92c2168f77e224c5a188719393c3c8212b8e29ce7910cd3177d87a07cd40048ad47373bc2c435703306042ceb3a0636e896a868e79d30b81ff8511bca0c2cc4402008043a4b2761d0b392af12c143628dd07a2cc8ded8cae14cafe49e0d16fa9ba008011bb484654b1d8b6b9e5d1f20197b8faded5528c9fed8f565794b73d070c1a643c2893f2c7355f0f7a20dc650f7b97c55a3db03fe9e7ea300457b59c4e027ad8f4dc6b1e39569250715dea286d002cd0dd97d01d765a6233993ad6655f0b5bd1f1417f228e2bb4a283510ee0e541f0c900b5ed5263377abdc1ead1f74602ebdda58a870249c4725d96353bb2058dc01e0101af349ca27b3b9a0c1445a3505ef16e4bb242ec0e72cfd3a3b6b53116105b1896a1c3c7b94c403c45cb15e0702551c4f6bf9dcb39ad71387ab8c2886285647880bed5a44f8d1ac0ec0a37facfcf34c165bc2d933ebe377a84c89a421392d4c34c4f689b8fede04aa67c4f3fa87cb57ec12527f6b4021e7b989595152b224d61cf5b97e20b7ac692ec7ef4c7b63900a0ebd8e4c87a51918546753acf550be3b68b868e4760a84fa92e044c24d15f63cc4b192be3d1d62d7f35a8b561ff4db86b20bcf01d56a728d0a6260a201095fa6845afe759f60ba2328c68cf72d73cfb5208eb5edbb77a94ae8892a804828717e72c5c8c6d8f1bbcc018ac58cf3519205fde165c3d54b54d1a30ea41cacb7ea243f07bf14e274a9cc1c4902d020ca6347e07a82c7a9184a567f46ae51f54868a644e3355c99ddbe89867e53649020d4930fd7189359ee02f07d9c73a02c6f851759023068e4c341238de910625a3cb6a25f7f72db7afe3cfb8b7151d0e0388a76642716ee22e14b32229bc2303a9f1b75b702f5ba4d704f481caa245b58ded2491d4df7c81424c0cba42ff7d64575e3644a9dcd5da3edd9baf90bd16b13c387fc19841d3d150d79ebd08cd3a43a081a272d41bb2bdd586ebda907d85e6b529b5515093d27fd038eee8a4218bf940facc4722b909e4aedde27c8ce689aec395610fbe1d98800bd1c2f02945e19be1f6bd4ac16eb3e8c3c6bc3468f9332a65f36cc3e11f9cf1047fa6f2eba211397c8d9a92c6375641a9efa6c0591f4e0dd00f1e63422c671c1b6380022ef421ac6b3a90ae3ec06f4ca0ebce88d769a86e9929330e555960ab58a9d8585de41b77babadf9a879d853e86b5058c7519adc59f3ac8d416bab44ebeb5b85a962cd675ec19df96c895de8819be6231cd3350f32695cf97325aad4e75d2ed34a7fac81ad7d7d370f30c11a205ddceb0ff38f44a06138812c31de96fffc7a5de22c6048986ad9a3f9da4de0c843e96561be32af1a856a5f4391dc56e60f89e650ab25ea9123a69158d7206b6dfbcace640e7c416908a1dc8c10e18c6281ee0bd5d711d6bd783cbade3375266718b76e217acf8d731484c15ff35dfed800710b28cb4ffdcc087d0b92086f3ba2f1d88494750b1944eed946e6f7caa1323c235cf31a5c352de71d057ad40605f634c39476885f0980e17a9eab13a4c3dc6f5e065cc660be854b2d5eae4612a7fdeeced53bb170a7c4eb28ccb82c3e0897a9f3838e2538792f924cfaee444d5a67d52b7bc43e2e6a17dda4fc2a0d458942811bef34fc86688091fb2265304d59ee469cc5f691932ebffb7804553835d8b4c0842b615d4b47d81ae428b2fb07dad5bf4bd772a4fb726272af9a008fd981c6a19c83d0c5fb11a6e652893bb9b1cd14211616e79d2fc074453a340d0aa5d3b9abde37e95811a3c53d85260573266a69306d8b8dc050a82426380b721b81d93605149085c93871c65fe7cd2cf9dc58787bf1b673c3749473d4f75036a42c115f015c19436d894df4b90e600613a485ca7d6175e75899ff9411b7216105010874b021abf08f4fc79036bce490447dd39dddd696e8362853a7c63c801f082c82191397c26189353b411420b71fbafc5aeac950633d157b772adb8b2030d37928f921f02b405496918098888d574418d934a22e4cf3d5be303a6f80c2ab59f229a6b9a2f592640c93a7f18e316a8dc2a8731662a463563c1a7aa0dd5b817dec50b9e2430154c47bd539d73973f86d664505cf20dae4888a0e90e2af4477e0c4081760706382eb877d782e11e712b89bd7d98500069e8889476d542a2031df491c4d05052e2c62d0ceff9b22835bf4d2fcd74abf4451387f51ec787adf91f51cd92ed3658d9c3d6d180d270c7708db3f0dd2e1746569cc264b4ab4ac76fb612927e023cb0ca1a40f6505f3ee02b3860e59ebc54304b80c13e2f94d11d5377d7a1aa35ef2b5aa806a327a77847d8c6a0a2147e5174949480bdca4aec7c7d9bc95e1fb329ba448d6f26be721469993393e54c40d189b5935d7d1590b07ea686fcda3f41ca172719d6a036465b19216c6970e193888ca7c948fb490b2dc6f84f1e2b042a13a92ee0dab266494dd6491eeda79b73426262e8e9e7eff2128f855cb9b1423c92a2771be5bfd4c6682ed22cf00599ed9526d9c5c1a46a02212909c0bba436c0010fd96e3444014bca8afee3abbf9a8f877a420453fb5527d04dbabe6916a3e6bda01c648a61627e5e64f02d6df667bb55d0ce4dc5fea650fbced509e3592ada6134836542b569470133fad022b3e1e1a5ae36fe9acf203d76128924017989371a3b5282b4804f8acb1fac8881c9f53df0782450ee7f0161565900ef0c3b6c3b3038721afbee6091a7cc820189e77ae76658777ed6e6741e9ff350151f8cf36c9b8a9fd61b3de884ff5c72d10b0a3cba0edb6ca0d6890a9ea83b4e7662408ea6c986d84caf0938a253ff62eaacbbe6bb6b44738b268f8b15f559114ae460ec5e3c6fbfa76d3fa891e337c7d6c232f8eabd34b88486ce997cd842d74664de309b78420ed3b4623c1ca0ac28f3f8ac832b4fc9c08c6dbb9e2d50d8b102cd7ae24c64a44f1a4bb7f3fa3c59bad44ca8ab2fa497a645d9b9fb939d0e0187239cb211be1220f10b675ea8063af5001bfd33a460b018b63c23c93608034e11705ac2b56029418e8c20012360f825d718aa18f455e7aa3d2731fb25d2305db76bf131f9c4d494e4b00dabe32eec85e6d828ec8b6352c90a267829d4f6ea8ae09b02d639d63130c6d3d4b04b1a9a3efaaefdae842e14aeb01897af1c73bee0320e2fa0a36501078b21c13b3c5d4ba7856d9891505133247694d2e8617c4e8b2c38676b85c10172aea8ed3c58d333bce71c01ab358fceaadb515c1c540daad62eb05376b0db2c7d020715c945ae02f7a7fc9f8a70e5d2f18e5d118a29b603a637990e4a9dd94a5e8819a3230fb25292a2a68d758956be862295e4d3a3e5a8db6de52227447d944385d482a7f2a8395f0aeaefb85f7f5d400d604451a972d9138d976195e20dce6d9122613588b3bccd383bebfd509eef9fcb12db2ca0130188528c577b3f7354c8c58a5c1e35ab4b794e2746ea455a8a899dc3fc80c96b26e520cddc7b845b7b61ddc0cbc596831556703022792e640d54b668d6ca36d81ef8a5202c32fc148ecd2a376fb579c7245ae8effd66d47d98944229fa16b1ad0d9da85ee2fa2f5640950c8a1e66a0aba916c880af253b8b7d1f1b46288f4a4636ba77f91773fd22c46d544277ee68c800ac12538a30289fd0c583fff0c5299292ff1f5e540762213a582c04c8f75911c76d38d35122c99ba26105817e2e0cbd1666684d7edabe716aecc93be42b986d2caf60bb0be10fd1ac1e62f30d274d282d6469b09f9b2a4871e5ed53776c5dd9a999d3f6c1b2a9ba90f71ed1000829d3cb186c4b1bfa5cdb89965eb4650eac383f43ec27cafaa00563b1f3ff68b0e0647edd4250db31f7c04eb4e4659cc085ccaef13d4a4b3e0b078803975d893ce472a201a5312ff96577181d9e928022149d709d8b1596300055f178965c391a96157dfc2f24cd80d2a75559ebc34773fe9b77658df8645e4af0c6ca910f0cb3defcfe66c3c91ee55910fd11b4793de97505f69bc7faa42834113744345798b53499a2ccc3ae306bc45e55d8a8594833156655acbb0959171648c26e0dd6b2a74c0c3217e2b125818bd790d28eaa27f9e0647248d5f29b261d878e2ddac051c09584680e995a0ca934c947b6392e0589776094e109d70a7ea52bd3a5845cc9eaa707b6e3cbb3762b089e8d940a782d08c71b120a5169214f6e39822909aeb70d361e34765e1091f6961dc7021c14f0b8043bb9af788b60b8a7c586597e3917f6bd6dfb10eb0199b78f6f05578275fbdbcd2347b71cd0fc78a87a55a6493383da65303f02285a03ebd5fb4b325c457b95a67c0790cae508ca71f9d8375dad3dfc0ba158733a942163bd1b90104d89441b44d19d410b3dec1a184e168bb2f828806f2fac4800aacb4a847a1db56567f3866135a77a16112ce53bbe8a893081e5e41ee7fd2cb31b5b381d9fd3c6ca2d8e52ce7f61f3f4a62ea2dda7a584e6d958df4d0352ee9ec4ac8ea2c3a5743b0b133d804016815950e891766e9c65f814da51d8c6052389177327ad95b3643a57452f271b58081dda480a17353eb65bff7f071cfae9c42db1ad15cb8d7d5c0bbdc9f573d5e63fc74a6ed5bf4c24e70f678ddd444e9be1942ab81e53ad86c2188a62d3d37cd79553dc57fb3dacc1829b602d6ed0a5ff7be62cf1512fea6b02bb82e8bf3f8bfc461d0e713944606e6818b9aa50e1a4bbd856e2bb38262eaf4ca180b37b8a298e635cdb706bb8965850434bdf40ef11c008b9bfdf2b33d1df7688bb04e753876afc834a2f681fd688094b19f5542cee90cfffa1a7ba2b8084358feae65d37d34e8299cb14bfe78489f6da7a4d0d9b73e3300f4fef9edea1bb54efe3c36fabe2ec531b0dd0d5c650472a902a945027bd2912ce4459ade8471c18726a15691b739dd7c39492df270d2388822baa1784088228a499138b2f2222150d51401edd27361f11fa1b209f4991c3dae93402e36b3d623f9854f57e81e17f9cb581a8a455ce7b63cc710c37cee7cb718b2b5057f09642a25f51da288140bc6130e9c4ce8c1ba7b75f79d051116f5a172276efc3468840ecde441afd95a5cbb8d6db8de7a11f98853b710a7aa38450a002fad7061d3fd69ab8e30165c2d773f3d0831e7218dc5c9bdeffd2b002ceaabd30c648517c101155a7c044ebb1a85d2f00284a695e3809128bda847cfc2d86c67236334beef283cb4045c7444676b143a0ce41b260631ef4b02d393e44a2f2334148401f9ecfe1c1eb4a07445ca071279a76200b51424ce259b0b24422a92f14226e68afb2566ae20cf188d5d8d6468b76608a36e70ef6ce312c817eac09d0b6fa5228381cd39766c7f9a0dedb455eb26bc6e507283602eb0a451567ccea268fb48049d0f242b8cbbf72ad7661c2d719d0ce89d86f2e82bb6d41401bc1bbba25a1c31ed69ad319416f459c8ee2627c4d76e56d8343229132cdcdb8ca6c5359d2dace672e3bdedaec5d3a3ea7052a3f47aefce503faeccfb8837363b387e648282640b4d7d2affcc95ccd550144806b3ab8492d08d1b5ab7fe85a8c94aa9413e7b6a9b863165bb3ef241290c592a74d49765fcfda482475400739db3fca44073ef52807f4254669013fb9c7ba5fa4f89570c6741a5c4ab498262e48e6a18f053b01f957caba76ee1b4c059846780fa38f4e35abbe4dec0b859d983a9f0c26b37ec65c6de270e2266dc99743ea7152b12325c7bea1e47577b98b8047c200c6fcfc06f2eb9c583b1cb4bd6e9fe3342e22f44c9395163c66a0a65b60816cd0a4a6451c5681a43119b72a9c6a7444b7a75f7ed3ee72e00fe8e5f73e77d211e200ac83b8bb33097fa2f072e9de3b20c22b6c9a1ae51b8b76375f1c05d6771b8d25e3094cf95450a4ebc4e7500404906cf6939405b8559a7528e97b9bf54924dfa9e3cbfffc4249d034509da2295c3ae2046a5a4eb589695ba0f715756e0bb62a1ae5ed354bd8396127957e448d566e200574b4a91220151f800a213a4c0a338c1882810042a0b29be44e6da81e7ad3a7e6c2b9bab81dea57e243a1df381e804eefce3ed7487cf07a9a50dce6c8a8e218ff4afcd825b9c3ec5e989d149ecaa015712345ac52d00bcb449a2e32529b2e83481eda9e3e096dad3848902d38f4dfdbcee58c08f4db2bdd53e48b9c26c4d83616bf1c5393b167e46e3974b9ba6185fc3f7afa9058ef7f32d7b4a70b940c368a243f8fd46f3b4b50d97cfc031bf8f8c0890ceb20586233eebd041c8b037b903a3c72c28c325935211d9cd8c9f50f5a9f1dba3ce8464a158a5ba4fe1e99fada8437e8eea56b95283c9a9172fc2467e4cfb9cffad5b6ee5c45a925cc5a804cd462bd651773116f5bccc6706d4c3c511ddf9de2ae97aae409bed64d00508f4c16694d9fe3a3af9563003f0d748b1aae6385a685e3daf4352effbe42e17f48fec9f2b46cb753c80059b630c88caa81e4255bd29b35a7008c85dedc2fc5ca13dc1788d8560be76b78080e4d5cd06145368117373a95a09801f8ed0523d872f9fe8ea62ab804af08f90843ba6d22abb614635c3d7ec9747aa3c7383d040d45c64d8fd85b96d02ec61029b1d3618484a4e6fcebc11d36d113751591b052464179806ed7bafacfc8b85278c5e83e25145af13e94dc00d57f0a62dedfddd3e3aa884a2b3e5db8eae829cae38dec61d0c6cb9d133773d6f0e4b1beaacd15c560c6b510b53eb04a61260e0fff4171370861120146a76a08e7f24f3102b4fdcd071031bd58afa1aaa3f4fd179f835d27d23b2ea8c274a49bd2d76a43d5902a22e09397c5d101bf92f7d005f65a421760178742fc5bc8b011d8e78db75d3d57ff0fd94dd5ed44430ae9b05103dcb266798825c836a9c9434a2567b8357dc7d8c65fdce74d78968db88165be2e65010c089d899b01a8e9ff4d416a686e96628aedb0c17202974cecfbb2c5b1b51f01255fc38f18359fbeb179fb2014f2f280eda145a20a1ec16c0d3842c17f467958982c50c89b6510c7e67a5c1311cdcfa63c7557c92c47040850bf7ab188923f6561e60a52f80d7a2911b11f2888f58e32f8b3c0d7e3832171908088b9f59e069ee9bb9e4438b43fd197e6c035b6b95d66d3fa6e83abf9ce71ee69b3be2a420d5a9e949acfda3270a043fe78fd7c572c054a21265111e2aba19b5499246df21b3c6689e5bd7306aadccac04b002623319e9517ec0a4518a46e65fbebc773cdfd58789c825dc797cee9087eb564a2422c7c0c2c44cf298c514969cd106c3f104db9685ae500c4ee18b4512cad3f225426aaaccdeadfe063567edc0e91817c3e0e366b6bab3c3521b0aba7d71a4e5646f3f598a561a73ca8ccaa95d275d0180bfb1074e01d6bd8a601d9a93ae7ae334dc1549cd9aa645a07643fcb7be6fed82ea1c074dc87b6d12011d9e54ae4fe8a525227f5df9c83a2ab91e8a9f5ce84f189d4a5db73081b66995d3a15d7c66edee97b6727313e731ae78e20f35afd0e254742fae83e3d445759438970cf05d022a1d9dd52556487b2492a7ac1b22533a894c562e7e3dbfc6c76a8b221d0b1f00c2cf1fed714ce054ea185dea247325e54fef412a8d062549355b864c8f7a8d0a08ffd39d726ab482182b046c8587b9145cb53358703c8e7405a4c5453eec57c6231e8f7f4aa002d23bac42fc991eecd92ae51d255ef682fa32928548e93c5297ddae339d779019b22a99482ecfc604b6fc754fbb90a51005b1b254660197d9a21fae421f6082006ab24d2f65ff34ee73b057c53d9da5446f1648c6786a8e52b770d459a596e1d84352243aa46baeb6eb85625240ce40bd2d16f5e27753e527a1f922dd72c63df8ac3ad08e596486811cd900b2864eb7f1bc04056f3d496bd8ad2409c05b0ab60e432a07a6a8b0602cf45d987e367e27861583a241f80c920a69036cb1aef9cc7f2025c4494a888313db5792a6f8ac0c93fe3756dab91afd8703b6d814cce54e02ab0aa42bb138ddbcddea8d478a8e10b521cf41f234277bb6a497e56fb967e0195e13250eea5e397f3375f83d1be19dcad94a35d6049c29cfb097a5da092cd7eec11c6aa35153be76c5df8a4a4fde4cb42347b548244abca4e98e4297c7727eed6d5ac2f9dc801f43efaaf230806b546758a61c9c05c402a80d45a2e3733cce1204f8119d234f1ab948e2754e66c17e6c3836ef4cc8825dd355898805ceeb782892bae2301928b6e1b14eb2a2ba865806459e2d20a4ab8e5a3be91a8f43a745ff08031dcff407ab1c59236ea2614e3d1899b1e62fa70b9aa2d39948431e3eb99cf5e36e8ab4290bc36611ef22ad1058c878fb226ce932acc4aa6d3dfbe1d1d8338ab46bbc768d844a771b3c9399436d4d56730f8f3813ed13447ccd0ad78503c2f83ef68b8dbff7c8c4fcbcfaf11521333b30d233d4dad2cc39f9049ff1a65d17077f7d339b97871cd4905893b167e683e00ad8944c580caed665d90b8791f7960999a67515f5686dfc26d2b111d8a1efa569d02a0e5017b5352bbf885b83fc4568b2066fd37d751263eb2c66736743d369c6a6fb774a4e4fbe0571f5f6d0d2cacd9bb4fa817b6586ed417b9288232bbb301fa159773cb500a0cb0e6096ebcf837ef8e948618a65b2ad4527b7169c6bab5db5a6a51c96badbbabf52146aab685c9e44b12445fed0ed7ca88d978227fcc8360936170d148e20b14ef84fc66f5534388243bebd9934c53e0113f07e6466aaaaa675460122f69918d5d1f094a7502386c845ae85a13b4128661196c2a338051a73ad3a42b8daf5340701413d3bcc49ddc3680fc8ecbb47e63c5cb53dcd8f18a7c7511d01c19eb2ef2688bfb5d20a65a4e4bd8b102afc073fcd736990769d38614cce76b51c6128e6410bb7ee36bc517b2fd1b9508696a541f8b9b90f11f80a05574714824f0a75691c77008d25b08a60f0083940808003dc9c9ffa68d7652a65b94b44ffe961582121c5ae16803fe1a2e63be0a73e0a3d5579b3ac028cbadb2f41222ef4e93c10668d21150fb94b47baededdd19405431aa172a4350b510aafc838a510f4f9da7500df58023a830a29dcc50ba4015b7b0ccd8732d9037264bcef92a4628f7e207dd52947e663d7fb9b50a0740c0ff4f89799c6254f24222bd5d7720475168ad2f45b1c20025f83535df8174af0926c5d8400790ebc02c641142538a0d52645409af89f270231fe2246b4df627ac1e692f97fc98a53e8ce13a5400a70701fd91c49746685a959403088520146004d736e7e6a42480292742ff0201f69c500f9f8ec6d35baf357f4ba261527a3d0aab970049d3a561487925a376a5a37f85ded1dd0d950a439b84cb39b9fbfc2be65cc7290558fdbb35dc4b8e5e29cd7f17522b2ea38c988b7dec0a70127cc0401d4d2a379a6b6a203656e06cab124270ebf9744ed272d3ca0294976cfdb8a765f5fb9f120f91fcf1fcbfd764441374f93237466788a8eaaaf9f8c8eb9cf6fae134faab1588a24eab64619b1e2482e8c42d0ae0b838c91a8eb26610042ffddc627555dce74f166d32ee30d3e6148acce5d426ddb8caf493f8f330fae8eb02646cd08c1c7f34867d4ac088c38d146e9111b8c4f88cabffb81f0142b3ed209661676755a3caaf89cf90d802c1acbb2f8fd4e86709d3ece5f2bc60370b4909cb8358fdc8fe0d005b991bcd9b40b81ade1cf7bdbcc269387f7b596f41210d88e8bac3b70dca50c68324097f985984aaff48872c4845d59dbe2a0caa546e5c354c2e4bc30b77f06d8acae03ff0f556e4bbd7f41f1ef8243a41fd46c5ac02e36081d84bdcc08ed63f40fd2330180ae63c06f59013d5cd893a04a006733c872251fce8c3b53166554e90e5fc5313889020235d37ffe043620a991fcefea23b51e8152297a9783f677bd273e9965f94f47220a2068a5e30dc9726559f1a85906da883db02a0e54edd6804a311f8b6e01336be600d8ab8ae63be81c9e55afeb5be24895424c1cdead447879a09e7393ba076d0954b4fa8ce5e86eddd88db734939c2faca8966c2553515c497d7a6fd17dbfb2268980301b98fdf1db5ca0303e5af5228932833d57a870781837d9c5b3850efcd0ec346f843ae6464888060c03eb15ff171923b1f831338e99dd6c3f968a615ca3bb9daf0978fc4251085df154b3cbfddff0ef12a380521994efc27b2b43aa5805b527bc686d262a9fca7db0e2eb24f2dea1c9d837e8c62b8d21ab7edad8531f8dafd29548696920e286d7678e7e21952f72bc1c64528d955771c72526b7c56c7b59984d2e6d18984ca419e4d44178a365282a5bcc252d06a1a5c42a86b65d7aeb6bcee24b15e8d3b9032c26030a227e6c5a30d6556d0e79b82fbe1a45a6e3fcc81e5759e8c49b5825f40fca90eae83efcce8e50f7ba83fb21895d2c66c6d639007ef8f745448cd7e772d0273f18292beb0f20941e9eb8b604ea950496ec1a3c566d51dbddbdb27bcb94920c070783068c06351e70678bb286a3c608b8481cfcb7f0250e52145dfeb605727327bd406edc5de5622f9343c79056a62317638da98bb5a640d29ae206771cc0c5544b9edc7136f7bb1c0bae2010a494880c90d03384084527982c249841caaba37c53a28a2d366a0a6e10f8122710a9e045173d45dc11044ac26740440642e2a55c10c9972048690c3582c8508b081727284249114e98f822a8670a2023526881c895833fbfcca1699e23478b8d75cf780e4f42044bb4200855b6280541262620c202892e885ca10b1a94529a1245191919993094e84efe528a5f5459019fd6164b88000262b59c7dbabb3bc74852f9c7d425a207ae8330b0c8e2055e1ca1a70a404218c1833b824c5c3c451879addcbbbb7bbaa790a8232d62e48e3fdb9fba10300cc3304cdbb68d6e5ab6611bc5b40cc3fc9b092341bc8810820ed806cc48e34a17295f1aa1caa41ef5c35c0c2184440db0b063c409581085eb07224b56444c2d18b5dcc69c73ce5aebac734e2ab967f0d4d1bb4d8e60e28ecf2df70114954a941295ff002560b24a01921ea80d0f210e0c315405d617464728016212461743b87841123a434e00c6d1117704819260d213051b6032a48b76dab7a6f16baf3df633cd3c0da3d97e4dd3b2771ed6e1c93a0dc317c36c78c0ecf4bc70e072a7154180b1d9a0ba5c7ff92f9d521074b9b308d01dbfbd795087d4a1ea148b233a00a2558489098e68c5b8b2c9102198e0eea6db4629dd3aaf6d70b68e6efd34dcd1a2a3baed71bae7bcdf5e47f7dcf6deebd8deb3379dd752d572481da5914d6734d3a8c66d19c618512da2de77250b8085b300598b7004757ebf4a2be2fbc3e14396651388d7ce926ccac973ca262218ba28463cc4ca9b8ce0498b0877e4224fa789089a10042e2099edcd4dcaa81dbf079bd0478bacda1edc420a0ad15a44846eb9101da1886812a58a88b2dbaf4dcfa9d0b9a353a173b51f1886bdd6acc4ffb48e4eb5981da517d8e54f8779bbbfecb590eb235a08b604fd80b24526ea9fb63f9aa8899a687ba24efed6129dee771969d46f933dc6c504692ef411f6c0420c388671debb8df738dc7f46fc58b863028d72efbbc7f99e7b1cefbbefb9d7e1fdf7bdd7bdf77d96c6b044c5764c40ded8de9f0212860052f41f80ace1df7154b32951a6256256f02011c4d27994f81019d33eee3cf2c60df2c6bcbe3d8b054128f0f7d676c24e98c5498273c2e8ebe0fefbcfe274f62455df732f55231f6198169eb0d75eaa9c86d5e224a9e15e7b1c6a4fd8bf0eed3b8bc39d30dbbd54d153cd73afd9136669be4d89ea2be76911f5439d3f3a8f768481e13cbee239ea97f3b490f3bc9ca75f29e7699f19501c5c71fdf9c85f097a749bf0f8e1fac0e514d6eced06b3e79c73ce39bbcfe4aad8ef903798331dda833b648de9b6e7cc5c4c880200d73f0134352c5aa81a02589ed466ca79dfde7fb71b398ee338aee3e410d775dd776caaa2f6b364974ec256b2063fb64200878180c688b22fccc180cecbb81c9b15bf45cd9ab08912419574a80e81431c10dd8f8d2321f2eb6726705a3c85901b79638230e024ec04098a904792c3ed6d348c3708c6009bd40189f277d3c7a8317d8caf5979f0e57762abc3f4316e92d4c4789607eda95faa5862b41d73ae98f2ddaba0a0368802cf4bf90ef3c2945a554a2515149594cd2b851525f4615eaf8b513af98e108383bcc1bf0b65421bb286ff4a3893da523fb4099d74e929726254c445b2cb34cd63218f91aa8f5565b68f871d5ad4ef570f3f76d1b53cc4ab7dabd5fa7068c142feb1aa0db7b4e8362db696ee9e91b267225e314f8baea38d20011d0289f29dd6691d9ed6f1913766f6232fc9747ae542744e3a9edaede99f6a9eda9b2423100fabe8c340c58f8a5a1cd151fef4370b3aca7560a0e247c5fd1680279c95115fa30cbb665bf2248d3837b3ec4393836808fbc14fca954d5649a882081f2244708208ed1e1257aa50e56c15c68285f71ed33e3e1ed343f56a6e4fb40b4ff46504400b55fb99ceb81eccdaffd5e4c8b65b42bda46364ab8568be6be40b7bc851dd8f4f8b1e1a51c71e3a6a1879c50f4558344cbb7c7e0cc9c6ea37b8e40d6ea2ecfa7fac4a9da89d651d2266910b9ebcdc1d9ffa9ccd1989bfe34fcb5c6600ed1a6ad1c52775b2e51c333394dc143a177b2d26432d1ee2d6bcf20975761655db216f78f72ebdb82e9740b5d89efb9aed39fa9dd5b8df5e0767adf644cd6ca5a067e1c5931e1854e14ce45aa9426555f6271ee4f3db13ff287f50840ef77cec158a0a6651fb763cdedcccdac81afe7db7272a661fcc02f8820208971157304192101889e1ca264758d1c5e9ca26439edc117c41122e9fd60ac08801158a8a585204308a2862832da64084cf8e09282942094552c0c1cf0a0b2b222878e932d69e928a5c24c0084a88e8c0063e4e8c60410c8478b23d0105911ea3a21a1b3b76d0b876d45aeb0e9a1a174dcd0e9a9a1da916d945b383f975c7f72a65a28ef416d9c085c416485ad0d3013d4e19f8dee3bef0fe7c44de6027e40f969597b214f291907f423602fe8861c798153bf214d7556c0a27a115e4c6b7a3084595b652941255320b4f268e4966d6b4c7306ccaef0894df9a261faca6a19a651688beb494d6c005403c4eed47ec4ffccd5ea466ce55742b2975787808248db384018014fdbbef539ee6d993c24f02c08a298fe1218fe42be54a3d28dbab90dd3f5f56b145f1bb6e0c33f9c0b74a51a76ceda0084db05085c9d8cfe777de50846af6fe403cafa2f6c4f6c4bf65fe637dccd2eee94a3fb7b9542a955646d26358c51d246394e9ba9f5f0c464df75e67339aa3c29e850755c651fd5d5a15dd55a948c9a76132ef0781a8a8fece5e7a4c26692701ceca64db135513b350bda945fb4b1e8e6a5a2b08fe8b622a55c4c363c0fa20cbbc8e5cc7797cd53cdce2c0530bd415146b37814fe96f402485a10b357b2c956a98b6d1284fb5f8dfcf74b779d7a60e47203fee7cba7d27bbdecd8e3feeb43de823803e47bb1b192c46aa6ffdc9f8b463aa4599a1ca366414309f36aa3bc8b4d130cd1ca42595fd33fd2efda56c5c0145a4b66c512956ec739f57e189bf7befb9f0d480eebd3fb1e57efb930eeeb7e7ac901c8e2aba15d39efb53f6a4cf516df6847ddffd49c7f7dd7ff6a4d95cfeef4f19e96bb82751cdd67ccf3d676f3efbc3621996e5085dcca399a1e198a52e963a69effdf65c78d2ac0ecf9eb4ff3e47b57df7dc9f3a7ba296fe49b3a70678ff7d8da7fd8d663d7b93a3e23803a98bd991e6662e34d8c7c3494ecc9ef88f9a572b4cde90d75ba9db605d69bd1d91f22efb96569def5d169a5a6c9006e9db43be3635f9da6bcfb2eaa07db6853da473f475d8a82625fd3e0b81ba37754cf7fd75deea3113b3528a2abf25c311f0126696d10d653f8f1ef86d1a06857d583e5a9799e51308486149cf4ae65c69c4485a64398a5fb55551db563a044fb5d852aae4c004c30ebe8b482395851bc06e8f7003d865a14f0a290de9b3843db8efbc4f795298f25d178e7ffa4ec6c8f8b1767f0a65842f8452a24af2575e25ec217fe53b1943454525087663d851fe06f8aabc6925547919ca6b4a09c7bf245a51ecf7fd8c7721f7a490fb2f94cf75210786a08b48a3c5168bea4441a18e20d8a08cd134881a42509b498b5ba83d64bbd52215aa64cbdfae0fb487637245d47e9414dddddd30e872f8a1e6987955f93c0446102600ca341ed76edb6647f99a9426aac90c6328101134c49113a82dec108df81093502255a872012b4019a95f4ce07bb69c485032b30c6c10ac55d32a686a11b41375a4caefe74112a018415526b5040a9c2b41ed47f5c89b54adee034c4af953ce39e7c430ed352929c534d10755bec402183c4804010845c4d10a5cc41d343b7031a1453b5d0a1729bf01cf0e0b3e2d14c1ca29321e57a634d1851458978b3007b5c8cf3ffcc3410d23435ef9b0f888444d71814eba747f8c1630a1cae7f7808b73c8215b29991654ee1f9e4031f2c52c3885254e4c40a243a93c4d6e9a58a6d1edb9ce9b1f0905a5d69237974a95562e954a12eb6e53ad9ee7cdc9cc3c794eaff664e65929db2a3ad1d23263060c308831c4f08f1286e08723862c6adb1a4250658bd2d2d0a94f432747087e66f259ca2a5b2e3fe50277812b265f4a8985923ea1ca679e4a93a8d44ad42a031d7577a7947d9b4fe71c00b59112dd65ce39354d7307e74f9f9aa66931b0d4585380cfbef3a72744c3c8676666770e3b091bf7fdfdb339ffe79c73ce59a74f6f55536db1634451bd87e0da53c1ead1b48dcb9ff2841ae3a2929fe21433cb2aa7753b5636a5b89f7a1150466ca5c38cd695df894ed491fa9c2d2d8a97c796fb2e2d18c6184a8bff9cef1836678b4b8b528796cb727240a823e58e2869b13921568b5feaa923c7e258dc0f1784a4ca1fb99fdb9c0f2785121900a538216abf0eaaa474891bac88d4600a9739453be7f4e973ce6fa9a81430115efe43808b67ac822d365bb0c506354daae80daa3769aa5f9049c93252643a81dcdc7ece4256717bcf17474d8800bd9cac5a448c7064c80e5c5b60f556472561b66bbe729f5a6b651f5e15e1d5f3c5584708eff08a77deab74a4977fbe98190694596cba4d711122828aa0011418535a2b087eed7846d6687f4e808d0d8f229b5a6bb5e1d143118f1e6c78f460d334398a78b46c228b7c34ccd8b2494d0f66c3c8cc6b14f652c382a669cc188e21cc6020b8d5991c727833fdf18072b31f52abdf0e15c3b0a742d4666cfc0003a68ecef56779836358d6ef6d7de80f422fcb1a8e65ad691688bbc546213343d24997ce9b1db3c3bd7c30a31a4a8a012e5ee1788543d1ea8ae722d5520a0f0719b95c292a5acaabfc4efdd2934cf6c42bf6c4a6af4979934a4a4a452185acd2b6af9b21720d659582f4cbc95af3a2f3e4b794e19f19f74d69ad20f82f8aa9d4f5221a21434457300f4d6e9bff426e6cb821ef639ecbe0d050076a606bdffdcef7dea30c790cfffc0cfd0cfd0c4d4b93a3e2ec69665fd37da67df7d3d678df0facda1e2564559ffabdcf5175e1a9ed37cae7a83a86d1ae3f1fc568357172ddbde52b90dc775fc37d87626f48cf7ddb9aec339c2435247b6aefbf10877ada7ba71ada7dd77561ca5f46e847aaf8e78725b459906a52b55951c12ec7dbd3c26bae9eb0a7d3a7ac731dd6d1611d1af66957511612e5eacf321d8f29f1e6aa1e07b1d191ebe53292f9643eefb7af2c968be562b12bb3349d3d65df65ddd790befb9e646f92d4907efb9bee513e4bf9147bb33da954f981a0aa24d9779976f93bd1944ad4d6943ec5de90be644f5afd9aeeebf7dd6bb66693a5afa9f46f505eaa6aeadf90beda93e6bc2961c40fd7e5f24dd4f151bc166768781c1909316ba853a28c987567042395949f692977d460a4662b4d541a79838df888a1c0968db2cf9e3f1aefd4cf5f0a1b95bef7775552e5faa4df41f9ef4b3c3c14fc4e6d6954eca95f25c5aaa8785f0a59c53f822c52c8411cc402681e0fd27ee4a0ef449362bbe93189549ff4a1fc87ddf9a5fcfc70a4684c52423652d2422df210b7ba1f99e396136a933ee5757c342adf2a211b85bdb2a2721151f73b279a53db4fb137495ae53bc5de54476d6ffa1c9516ce4b3d46e5b7edbf10a78493843e4eca93be5b5149f995edb5d2ab9c1a90f2a4af49b1a4a7b6a664fd66a1e90b41314cf1b4a48a797c7ebcea286f6dfd51315598c8a8c148a5dd7b3fd33de4319e8b3d100a7294719dedbb9526eaf81fcd0f470df51512e53f6e05f89e7e277e07485545918e6a144fa54f719cf87f042965249457499144dd911aa3f585dfb3fc0e49aa3af67ac863f8a5e91031cff013c5908e0ac59ef8b3aecfdec4b05cc4aef00756716f0a59d5f298eea156165629650ff5b7dc56d17c590440d6f75e826c285c1f5d87f4335dc3fe09dba759611769b1ab218a91c72e72fdb5e73f02bb3c06ace08b35255d2a77ce5647f9dcaca8d8ac0149e577528ed69f93218c60b8b2494f0f58444d34eb40dddddddddd336c76a80485c43cd22dbba5ec96dd537e7373338b6016d5605332a5b2c3146047883b584d9943142911b011524a91a3cbd1b5dc0811a5d1bde9519f714caf829324e56372009131a28dbcf1e231a62cd08d6b17a255267ba24951c94a2529a5accff2ab2529bff4b54ac9a5147a293882dfa3388a9b28e426b379f00ab07626844e729ffc732e5bf9e44646e132a2147143eaa45a8fed330c87f4dfb35c512d20af7cb9fd33f2c646d242f6157555e5952a923dd1787faaf95e7eed38aeeb3adb230876b7aff972dc6f99ccb22f7b4f93a10fb3b99bbb99a646c651bdf5e08a2abfb9ce825c53a4616326871c3336642bc78c0db14e900a37b5682f6a15b4d1a26351a5a5d25d9d06f8f2ffc84b70643fe40dbf520a71311fa47c85bc444600b47047d066c584d477d83333bf1602712b320c61d06898f1ed6fa3e6c39bf1aada4b49431fded52c0d398e9337072825557ea7e60aa2f0226621568c286a3de26ad2623b91cb5d44ee9260c868b9e520ff6d893ab972e145fe830e6b6961df7561f61ac8b9f4c779b7df68531eb8d75e07ceca16376a47997339d33029be5b208412e9dc1a054f46d4510e25a0415aa4ca163bd06376704ff9cbc732eb9452cfa8539a43a25c52f7ac3ad8e23d7f65931e23779444ecfe5313a2a349d4ec4db68294524a6f3acfde78ff594abf93923bed309f7b1de6733ec02bedd892520af47d9a4ba358805a55f9eea5e6125eec106184f9ec415a74df411dc5eb310c51479155fc60101b1f3f84340cf63898998072d5f6bc70e4f7fcbdef31d35450a173b7e7ee3f2fc93fa1ec348ca9c5138a45405f141b1f47aeff8f86215d7fe6d9993f3ebe43574f34896120973779c2c8f51782c2495163e2fa7b46ea288d6c667de99c68238aa378dd46d65842e52c8f1d282ed451ba687c60921de9d3cfc6207e7987eeb7ef8f01dbb367eb5b15543934f4badb77dccb169f72320ce277dbec0f1f349b37488b2e048bfa2dd640822a59dc0f2936619448d5a2ca1b69c11a54a5e42d300cc3304c629f6158c6853b49b48cdbe416524a29178e41e6f61af65cb803c4ab92f067729399b441260f06c832db833f1b01f71d952dedb34cb340dcc703674d8d3ac99f57da6ae46a2f892abffd190b230d137cfde76d4bbbc043ba296f60179c21573039838c21d5d87ec4810057f6e04a898450d250ca6c0916ce1b05b8fbffbfadc0f5e779fd9bcf80bf73879f92e7cce6c4583649cbc91aebc911bab206a11997128b668244c9922359f7749136d23b5817603c7122515246269572774a291fa13db4c89546ae9c3bde05184f7a68f93930a58e51eaee9e6173baa308e132939a94dacca6cf39312cd3e8d4268d2b3f9ba639273b33337363453a29c797f2479939b339df7b667e9ab2867cbe7da584c9b0e9fa59e9f4b72e4bf9dd4b28556278c34104018a1fb0542fdfbd843720e0151155a800f0372008adb013840af535fcf74cf9d2974aa50e4bef3160904183e9677a4509555efb94dfd32875421d5da777787e5062787e67b0438da78b872e61a76c51ff1b736d51475fb58c4d74b9b1b8fcf6f99d5b9e6578fe266af9aea525f4975f10bf3b60618411461677860ce37fc94eff127eac8a62192f3c16bef002367f0c825d0dfb0dc341a7ed7ec64fe1e8433e526cd4e2ab6708f68c82d195a0b75454e96fef467c68b0bef2222d72490955e5579efef6b463d1b6ceceb0bd7f38b64c86cf66f88e5297e167dabe84277f1bfee567783a6df3c5f0b4d906d8f02f7f72abc306fbf2355eacf1e2d710c5903aaa1b7d80f7f34f86c73a203377bee9dd64fa961f10d9ba6ec7993b6d0fd3d3f033dd08303d0d3d5f5c2708d64d20da056200ec6576ee958085845730ac35718b1a06fb8ee42412c923bd874062c0308fbb10434d053d00420bca3c5f368264d8b4716787d3f6cadba708d13d5d965668b991245ccef255125fdcd185be1613ff7124977ffacfca757a15c3939f0e34bce93b347d0744a345fc1cd57cfaf2e2d7bcbc686f92f8df9cfa6bb8ad7979f1457b237e0d7b23638772bcd81c9576c38f72c82639bd54d9f0a3cce5eed18d61f33b6e86dc67e129ec917dbd2de11804bb8186b5d12b1f0ecfa648aff2e1e0def4e1f0de14929e06ef49df7121cb6aa85574f4d3aea0da22327a3508409f6110be5393c1fe0c9df5015e19e8959f0c2ce13883f591ba32bcfd1943d4175ec6772f84235f0dc46468d6853f1c324ee19f5c5e7e38c2cfe9977ea29de97de5312fffc2c93771a4b9e0cf70037cc37074b1282f23e43ba3893aa6085d7e19de866f437ac3f024037f1fba0ce1c8b7ed0e5aeb621fbebcd35d444546afa3a397511191ab7f3a8825d41a1a6a09b13ae875d43acdd32b9fa3576bc8455464645444e41a6af18a7df88783584242ac1769f4b2e1061ee6619da3574a46b66eb0217c91df0eed42f99cd4edae61c30da10d618d50740b44bb23df0ca46e67479a3bd3f6b73003a9eb1f0e6b7da4eebffc70fc87618fb7a71d546ebf4a0f94f7d37c218ee2697da879791bde070748d50f47f1fb00a47b074895f836d89b1b1b47f1efb0394e6df8b1de10da30caa397972a1a3f4aa31a2f55228bd6beaf1cf410e53b44f91ae18986c69f3aeb00a9a2a17af9930e56bd3cab5e2cf3388a73541b8a10cac710b692216aff8c8661c68c193366cc980143c8338c00bd7ca712c60871b0bcf0624ae6b7d79e6bacb5de1a3c590db32f846390ecb2bce9e587031c65eb9af857e44a1739d8d6f4d3f4a61f53265fb198bec3959fe108b27c7f385658be636f25e41b83c5da76d277a58b8edc9f9f6612f692b05b28b65961afc22e12be40676c56ffe8f84ec364fc0008bba771e0af21e457e3c08f0a3d2eaa91869930cdbf2273fb573e1e528e5c8144fbd08b85ecd33e2d8afff2dd32d7df578ee2ecf6fb68b1ba4e143aebe341fae088dbb67dd86714efe82b77b5b8838af9e0f2b793ee27f286f467efa261bc5ea798af7cd5ed48827ad53e3d7d74f9f9d4df3accda94b05830b75827e8e8c788574547a94f69cf2bef9e9ccd40ea6e76a4b9da7748d92887bc6d491f0f1f08238c305c57b3982786322c218b96ea25942a962baabdfcce99137ebd8fd4edf71f7d18cda0426d23db462df2f798965f5dc4f0aa6ee4e58b74015e5e9edf9134cc1824bb403caf12ff481740b4e2b34fc360f6d4fffed330410d33edc99f5eb75dd422f746032b862ce17a93e97a09db49d81b0ddc1e81c8a89d18f1ab8ba6a8cf6fc51144eee83f97b9a8457e2e4a69d1d015300203c241cb8fd7ebf57abdb4d798eb5eafd7ebf57afd78310fabe50296f6da8fcceae8cf34a93b21fcda4aef23fb5cf96a1ea397cc8bc8135144ef517e67fb12bf3c86a8755e1cd7d913a358e928cfe224c149a97fc37df7ac8d5b16a7da9bedbd47b1cc729493e87f5d92ee202e17c46d9e4b2f0de27658a66194a4dd2eac23b36cf6fe5ae8b13c26250a892c9125b24496c8326209b586888a8ca815ad1041ac3d213c1e60b369e53b9cf6a8e44d7745bd6434320200009314000020100805c341d1703420d176acef0114800a769c487a589a4a645192e3484c19430c2104100000000800cdc8087600182441b004c98da248b62d8aa5a8b148b49afb95321df070e5c15cf422f9c1be91cab235b29e438f13149f61c748c21bcc85b2acd24753d303ba35e43741d0a445d8f4c1a948cf2c122d624100db97f89486f31de948ccb87de1bac978a916c265383296dc7cae9af58bcc7b6ae59367a18e38a412c8733a17a5c635820366acdec1139fbf44dae262a8370882d70ddd6e0823a0540ff42b69c6c5b3e11b3f488470085a57343e344f868253ac582e8d0ffb5722f49ed9516c80c71e658d5322565998be3d2ecd7b0817b223846096bdac1062450334cb9a7241de62b34af70af1e49363b2916271f9779ebbcd3a986dddb7d511073b1990c508987896993c891d2da5240ac6f975b8b385fe56b6f9279cc46c0bad24e985418070324bf313955555fcdcf6440c576cd3c3b05d2780892a32e1011230e5ee5e92e7de30c6653a9dd503fa588591dfb6b624f2971e8ffe271766ac3db6d26d5bcf28481b3669b1403457e443d1aaac91ecfe42c692c309b08e57febf4b17840f575523654fd792cc7d10a375bfcccadd94946b8358381ff1fa747eed43563f399918b9eaac8230e8ea88f3d44ad2de264b85c22949686b98fc289e540a63b6e787830b41f0955aaaf98ba69827ca6211a72362698fec2838ada5f9bd248fd588f36956e5673a62a2dfb50dc1fac1a21c6879af4f6c78dfc590b90d87753080297297822543b1d1b146555b23a3d103f48c539ecc7b5e88532edc6250b935e5bc531b598e5041a486b0d75940094976847470daafca48231f80237d2b55df6621c5206a9862aa2add0a8711539ea8da464adbbdda875a7858efa3ef9bc72e98fe001e5b8f5a6ef0a153fed70437c017b650a6d851c42ee521b88ee2e5f595d5519cc5ca87a5f39385173229ccfc5cd21be6028c4cc8e444cd2e9faf0a2f774b06374530e0cf5737007b4b03b81f36f28101598c4cbfb6da421c4c265728462c2b08ff1a0d9f10a858c663e950d9a8e9af1fd9a72f72fbb3816451fc630d2a673f87f7e0ac9dffee5604e966f0c8e708c39b32aa9a87d7a1d431930ed06982ff82f200c10d53a1f368271dcd01552769d180363fb619058cb8fc97d0f47e077018d58f93120e71e03f73fdfa4611a0b5f8a073e70a4b49e4a57668f14a676774ef585a8e710915d0191aecba24e5687910e3aaa8618ccf63c3fd104a4f7030e1efc0ff885b494ff46f73dabfcb573810e967fe86dc7323283d53c91083c9cd1585034d93f498cf6f67621fe0eb992e8fc1871c039aeeedcc96a1099049b9b3d06a3ca027736a0b2972c3b2ef99be9b5b965119b04ec03ee9f4c5ee74a2883c05b8459e71856015914fb16b86a53cb83622d36808338732217a0121847426d6b37fc80e6b2a39c5b542c4169a6eb605cb6d6cfccf7006c2a4b3f9100c2d8c7968e06beaaae362c6c309e06ec310544e9124fc98720a4bf0176a80e2ea3fec87640c46d4855d5ee6547c5a5255c60558827182844f0cec7b4752e55e65b0385775aae5290ee4fef55faf655d96aa12f5eb64d0562c8fb315745d20d566fbd958637d98108f1954005db5785e302b980ab68be0210c929d85025cc690c88344b807ed5d21c9b786166011b0887f17cf159b8342b9002a839f7ee257e23771d4df9d01016881d5fc7884881ba35598017762ba99cb72979885fcee6e634a643205733abc18feb519f2bb519249fdadf0ed48d5949ce2f6b07811eb30d338ee53e62f42f547907d7b3b3ca8a5b2fe5205c03a1ccd50f1a60b903c56f1b08838cd24fc557620e2ea6f9cb2ecd59b05c6241f8d21ad4c7c0451c34bdccdb00e87532520578094d4e6e8863a1e0ae0cd9d2942de493a1fc4e6a864ff2a56c399f132e6035b86fba790082b1a27f9c9b854e828303550333e6629038ea0eee9b38e25a1a4ffef07aa350a63650f4fb993ee14a8aee5f3a79c84a53df839515d67700d0f2eb0b154d35b34af5815a0d42245e6f90ebdc23180a0fe3f8f19138044caba245260d25893285aa10599ca9a200d52f64474dfb639260a53fa1747cba7806c0c2e3734bafe470ddb864e7223e12703655333c09605788a0adeda2e56a9d0d87daf9216b299bc0588642249ca0e21c94a315382a855982e5a55c1b028cfd08d388e7dba17887accf62fa4ebaa6d65550d8bfe96449eda3e1ecac400fb9edd90c345b821ac4353e8396dd7e0ba61283e78b60fcf64062bd8355264bcc552eb4fa1d6530e676664c58eb0f6b3c05d2ce565579212a6da65c170de14982636a24d98bc476c0a695f93132a281464c73990aaa039f83b036869cf0224b0d6519475baafa99554db04b480af3d00090599336e31388b8e4428c5b94aa736065c53f8ac5a22b5fa5eb1e683dc3d518ef9b3cab9486120528c92895133b1e39589ae374d280720143f59bed48c59068408a99292fcd51c5f40d28f03948f9e72e95a807969b9d4d94621385845694e8dd90416163475b5de4644e01009b0e2ad1ee37e6ab4673b7bbf9959d0a7ed1ebe62518af508222d9d6a3fdb36381d442db14ce03e4dfc8fa78fb5f22b814812a928f3283d2837ad5c67d8495cedbab9c963d439ce0968438cf040931b88dba7e23405e5fd69d24e3113c98773bbee5b956e4eb621676214ec085158460c7512d87c64b0f2fa0696b8e381db15b05f996816d14cf11a14d39960ba3220aec5e8d99dd16e9560920143264c4e70d5ae0d0df80c5caa854959a3180b76d4fd152fc7f9fc2e411bb0b4919eb5d72578d94c454886c3abbab7697138f6a1adebc054396c003074bcf229418f736d50d75a9ca3424e33c35c9571076263c41c5c393b02e8afa98170ebccd1aaa37fbb17b653f6274836318d1f489300dbb494fa3a883b422e1b730207d5cbffe13175bf2d36d005222cb99d0d43a760e71d7de80ef7f0653aebe42d5bec2445f48f90d2f8822c15b0662d89406c8ad32fe047ef12a6841bd9f358a54b738d097fc998390624bac334437432f74417b19a84639a2fd2a48b186740397b7eb850277ed32339c4fe67f02083fcff500704d5d0ac931611f026404f6d9007b1e1332cba0a32bc3ea691c0c424d30764fa3e432b0b2042fc28c9c493e15a0698ee7c7684b0fa99bb1ef09ae1176a065e78be067f7f591f373ad9f29de83b1d2442846ccf8265ec7e9a3625786fa920a15967dbf0b16ad8dfbbd293447bd7b29ab960410229691c5120a4ac5bce9311aeba1df1980b28cd63ba3cad60d66b3ce01d300c9c4142065b8402b516a25e810c91300e112b49f069fd801b1b85a5c0d58a4748f0bb6673d485a28aa066bdc452427ad8b68fb243f742eda43485eeae73fb9b0cdac2517d0db53b6722d27a2fbba9fbf77e623437e7b72c37dce92429447ad724ac1f2a72ab52d6ad19b9b2b7c4509f9d6bd4189c3ebec03265550c7781179d67f452e11622f9165b3f9b508e54c0baabede6d20592e8ef3fe72768db5112dc77cff5bc608f4a7144646c32ad95ffc8259e171655692bdebeb734c1aac664d4638aa00aacc897578078d51cdbc9435436e23e7b6026b378a75cc0ef0285b7646b5226b2847f845bebf7e69089b2a77622eab50ac8f1f3de8bf4524c3dde1b4084511b1ed25b10485c3c96ffc4176d3459af6fa9999f372144b77c1aaf423e35bee1c38e673eaf3b51ddfe67ccf1d5e3682609e18f17a1ba06f6579efac242b31ebb9ef9f32b888393d050996481bbd94e9945d304d3888391b55b230db575ae67d71399b2c851d1cd3441612a741099ade38c17f0605f1783b0f831175c19723f18fc0519fe709262b2b01eed083d51fefc5989a0d0f634c7efc9b1d1d1640672fa84b10dededdbc7e1e3630bff5bbf042c3fff4a5983eb2290996da1c29a4e14d98e10852c71a9a90f516ff5c03c506a304d1ac1e123a9fd1a16d901b90180000bb2ad10d23dea10da0c584ba60af5dc83478523d020dbe0a974bb27780df295c0fd903b9bd633e657208608f4e2d2943d248a00c981e2644b697dd6b4b02f8cf11df7990cf23d659819358a7e55a79686c915b16b86283e940fedd584326fc54134401684f54374792a15f19c6ad9dfe841637bc3e24ee4744eedf0be26ca55f507dbd6ea7d156b41d8631ff87e2a8dbaea100b44db2ce605de43c5290c01e54a771678d92e1b85a106be42cdeb38e795d9a860b7c6d0b56476a959a36c8bcc30db08cd0f6001696ffbaeb1cabe0ac4853dd4cea7316d9ce98bcde2ca76c04731c44a241651d6c4a3a74d791784713f47f8a4b7f1ea4db078d58eecc37e3359fd8fc40714c425106954a3af27432d671c6fc3c6a33131040316ba17a91e2c66c87c5061f240fc88cc4fc08872e814381ee6c952592f2b4435f20dd5680ff35199669d74b092f53529541da42e5fdf952f040c5e2c3ccd11901ced00b28a01ecde61d5ca56163f07cd18c1ea013901079e5d13b5867ad5bd8164a219aed6bfb8f52ca5333a8091227753a0277c87ac9da6cb38025e0e301824a7908e9ad472d67cb338489a9960e5a9428d0df1441073783a6b5859170272080433590ff328f64b82f019fef736a4a9dc8825a7f7f7ce413f419c90c01e01562fd71f763dc22e23715c9c61db85b1f6b87251898dc413fa6d9d4af2534f57039225ace8184d7e9903733570f28d96c4c0da7ad81c81dfbc4ec13543764692d59243b419dc64ff68e8f142283c98c33727b37b2c20e3ff7617f8ed15d2b76c093e0234683d4fdd2c049ab8c8d339d52c4a6bbbca5926acbaaf7f6e268f649357d9a100871ff6042e6bb6c503a4c9ba4c08ff2f2af85d16a1a415753967f3728d6c4cd1964b5ac4f82143a45204fde9f2dc112b8569ea02e168f650610044790cb6fe276b1d2c0ad7039df40c3375bb79fa993f30e6d4a056853859ead928453d4849fce0a0bd4f28218b4437bd5e3a63ca4f32af9fa1d0333f64f2595382040873231c14bcca3cb3158755424910b09cd3a84129a1d6284c5b0b834d964882292d94391b1d2547e230fdc5d0043b70a65a61c5b58947f8804b25d0ccebec840cf2561ba01cb8e8789a0d1d3435571574dba56d2aedc943307e0eac61b99cea495cab8eecf0eb2457fc304bb81059532307c0a219641799387fa5751d9f77df1777649c989643e144627cb506c33b47a3427a11edb371b19346f754a1465843ae8457e2464483e0402fe34c62a7deaf78124dc7daf47fde3100311419304eaa82aa4dae7ba97c039c41241051cc3f3ec381937eb4ad5834b51d392b5ef67e9a6ea0a89b5c0ef7e3d25821b7794aa5c511d850a2c42474abfaee8539cd661c1e5f2caa4c5e12d932016267f2e32ec154298cb95c7000e4d4725b3c813e051d0e05ff53c080aac0e94205d5e44a2604b8d2baf7fe6c1a75b6cdb9df1c0579fdb14880fe9991253bb40d8d5e4929418666304aea96ded23c5143c98d681fcac2d3f7363652c75a59026e928bd6424ddef2d0f9ee0754cd1cfa7cf0ee1764574acd8da6726a9c62e4ac6247a587af136ca6059b5d038d71e584b742728c4252b7bee0e6e25ede342dabbc722aa48e99039cbd07cff46d44a7050a2462000d54793f0c0968b0742d632d87521180001ad53e3c32a41294e70cb42e808e6b864c4aaf973ccc26cb0323644e03ca1a759c163ffc8d903c2c3a1478b66a5c4499b4169d5b613b39d0b02eb274ecbbccabc3be01e2546ba04583bc74484b3e956dfa96579d2e37768ae7a1eb9702d495fa08251037257fbdc7c656e64a31f860064ece85866398e2a0a6bd98b7d0036d87a64481ae62e1910c588974b135244966d22c03cd4d6699c5e2a5821c2c291038878f0fe2dc7003e0f8181f14ab403b46d62092b408455ee8461531428b0d13fa192888658c1514349c7c984adf46d9c65cb1c3840339b9510c89e21301163724370ed0d31607c99a46a3ac31f72a265ff5845480d15d4c82d849a4db00fb8a4cb045824b60f36c13b3b0cb9047a53caead371a7c7fb2c8a86b1371356d4a5754e6dc46db1689469d5081faa054054f698b94e164fcc727a77258b4e217e612b490a26a42c28961a412e67ecce07135ecd2ea2da22c0de08fc1fb162a1671f5a442b90babea1dadfb7dee6300187b8ca4c56415c3a01245f54e2c6dc7da3c5e2e9c11f6fa87ddf5c3d49fcc6a04f6a580c4f52e56a49bd6f2332fbfe68720dd795300d9cd0d257272903c58bccf04a4a0aaa82a9e92927e8a53153d8ee15feaa354365925cfa557d0ed213ac51784ac042967dbe2852563b167fcb061cd81121a4de16bea383c3dc340e99a6df3746394c2fbcae8ec1b8da3fa37e3a640fcaff7f14e32236445ec9c89dbb8d10a354ba0443c55cc3f3729380a6570fd30680ea99c7b168a1c9160ee009366eefd1dee174a45dc3ca7ccc5f0d1d1907b585c0eb24fbfa3b1dec35f319df9c377f733dd736027252d52d2a4c0581bdff0abddcb13a7e2a3a8f181020c6d95263119dfeb59e14def650c1aa603c5fd0f5d1d5dd362131f42f4fd63b7417b1a6c7119757e822a5a1ad33dda18afa686e651544f2d0ad474e66626f54371caaecadcb469095bdddb204826f921f4185959d3fbdd7bcff658801ea612d8227be7ddb15b73788949e31e208a0379b8a94e11bb698bbb276e72d158ccffffce5ad35b36689127d1a0ed25aee1724c3487d3b73a13d5b642c90d2d43cf15c3ea55504aa0ed1482e2ffd4174c1b50535a3f6e85fcaaee16e162a448e5e083a343d10cac3bb868f358be7d5630c2a5b7598a06589b5bd148e7bba63415809070a54573d0d7b9a4ee8d468d58422d680c2408770b27a0224e9f0ea560dc9c3bbd5fc21f3bb354324eaca61ba48fbc7980e1f8fc8ec957ee873cf919e2c858434e7b3e4fe710daf07ab263f0fbc03bc711d0a560fa2d14a5dd82d1bf9830e4ff41724bae4849b2eb0c95326956422aab488a0835054b344de4fe5f92f99cbf98703be2f1230dc0ec535571a3f8d14db669656bfd01e2136acc3f095eedd4ce0b68560f3e9144fdc7e542abce59916804707241c2cf4300b2ed3c8ee07a84bb175e63541afc93600500626cdd3e70836ef5d7f68bbe80aba7020ad065fa42d3c7130a5bee7240a58340539abe45c1c2f6e087373f8c4b3dc282ba93274ef2bf10211f504a903e679100b494d5efb9acef81565d34085e4a32e311ad9614468880aad286cf092737191e5736931fa4a4da502c16470335f6c0ad4e6f6495d71c82ac3530d6c1b0091725a2134d3d04da4a4ec074c1f86a8afa57eb898469f104482e90cccfaf73feacd41fd1b9fa3ecbffb7ed77d1158c31942e46fb29d3c2bdbf4f6cf3c598146c84b07fb4ffd0e87fd33a82453d2ff8612a0ee0d55dcd0949525b151000e41362a93c4e94ebd712ca4df295d5567b5e6c6d60d246f355c6800be6480bea2911e6281d073377d893c7341d36c744fd37ccfe1c1787edddf18e76e342c3b24e0dc5f3e68f01786bb2312f225f7f96d294c5462a565fd3cae8c6645cd2dabfc246f98d9cc602565fe2ea48861e0c51b975fb71aba4da46dd98f9e448731350522c4abf7d90adad0c300306829670fdd60d63a82f6fedba8da18eb31d2f26551dde6817456adb6e9815ae4f3456c96c3e5a337711ad6ab64d7a4dcfbcf76b60949bb409a85539a7345dc6a57146bf1a1a74213100ee35c726cc310e194459c97ffb3842abc5fc0f41eb693acf5da5e3b89f7f27655406e9e51c6b0240cdaf175ab1f2f6afdf57a3f9e5649a3949ed1974e5da5872f293b3eeec930467e48ec4c56b8b69bd188aa30698067909d766a94b8bcf50c4dc84d3f6e711dce5eadf1b5bd837388d4e11242253490683754816ed0bb08beee67509b927b767751197d0a3cf0425666519c196e87b82e61bcb9e24463be009d0e64f5496c196d90477695705833b3185d4815e6e24e5ab326f9984af16c61769882d4bc464ce3ed359de668acb8f61b04bf449c9a81b4ec0cd36d549f82b36e363577906921ddc02459c937795d3d2a4670a4844c40d786e4b10cfa0425e1a457d42deba4cb454d8b192f1ceb01b9dadd752d49b72b64f55bd6c700aa58d090e817998ca2e180146372c3cdf1eb49bf0f99c11fa923b1def54d380d1b663c96df8a98189596840b17f7ab164b06f849285d9deae7f87b370d110b0eaa11ec19f8e969d53cd9d49703481086c462713160004b51a3c3bcaa7d745e288eea4bfc886c81296a1ab96d1acd7828f2e3df291491e4aa64d1811efe439ae7536602705ba93c63cbe24ddb59092216f7378e0033b8cac95f7ec1dc83abb91f92187ccce987e7fb18984d119548607afa39880fb4d4f80463e37f2476b803821e4df110e776aac31628f398d877ed7ada77865bf78ba29e2cb53b48ae11683296a92534c9ff79c29dc8e06df824831f028db41381c9c0157a36ed8c7b057815fc639cabe07ee4f7b07587d519c6bfb75df6c51dce18559198bcc5a342c29786aad8b6ddb3981bb6b9c993d78c3693b1c05496fe328d669c332b06a4eec74548cd6ea2ccb55fd734514722ba90248adce6882455c51b51dc140ad21ab2028ec816f368a0c7bf2b9a8f32035cebd682d028d3b2219add54007684473a49d523286656c80d7d1f0efd0567e83f325bed64cb666f17d96baddf5a4dd83b7bff7fa604792e65221db60a074dabfbe95057b0cff65e37ca019f9e93ce8e6dd088882699302ef700695d153cc57446c0eb64f6f6d61f5930337975e4c324ab457a8501b6a48ccfe445d22a2d6f15a046404ea5cb3b87450df3b2214b0f2ba0da881af61ae5b4011d30284c770a0d16dc05ab80ca64c244580595da477039e5f34d382e51687ebf45e47afce54e130dfa91b1dbab875a5b9e6819462d42ea92b25eb0074a5ddd03dcdd5d887962f4bcb37d66377d2e6a05243bb0342b73529f650591408b877bf493cdaa35aa9e9d215c2d5b51148602e6ef0cab799edfa790578b1d1a97983ab94b97217078a48251c7db1d091684d911e9b29c77c6dec80066c0c335fc856159fb0550eb28e89461088347ae9bbdf87107c83f07adb9f5142317a0910ac036e463e4b7b70fc20b3f6616de6d097187ac36789f2d4fc463517faa89c20ab53460f66f85700593798e429cea70dfe757cc2351be0bb62645bd1eff99bee492d00c1cbdaa9fa27fd897e59590ab9d7e99a353aa436b8e6b668bd8bd64070be78691d6e22c0d7159e431eb8ff1cbfbb69d332f151744d4419e96a501b8001f0c6258a8c157f8bd3614da86e41cbef0d5ec06993ee3b32d20ddff4fce557d1444b7f81fbbf7dda9e38e33ad8e5fbfbc59aa77863da368832fd68bf5abd9af2b8453cf59c17e5b16f9a6f9af50283cd1c4c0e0db15c33eaf26060a6ae0e1d228fd7a9e5af181178d2d0fec2aba475cba6b9398287bac80902094fc269e4fb5745a2a7e60e5c78630c5214679cd2e5ddf8fce8b40f041075a7a1561b5f6680aad4384aca803a921015c652150a5883b9c06fca220227711748235896d87e31d930cef51e51078885d20b37d49add42b47a8ce7ee77a9ccfd2c6acfee382a8d5f5edba4cb73111b1eca4aa853e2ef4ec6335b74f56467f2c0241101b1efbb1092e58db85e43370e5f3ec16eb7fa4abd2347276899c3058f3d8c55556766f122b334d415602c1cf63b0c713c90c581618c52620d9a6dc9a438c98bf8e301e9b093858dd7e4d13a83dd48aa24c0564131177a00129774a960e8a77f5b76f9a2bb8e6816cc53fb866bfadb45d3c4e8b7b8383889cdeae41479a6782aa127de0d79149fe8795a7d036394e0f0492e1119b7a4d219b7809630a9bae3d16499d75fa6552bf49a394d9cbdfe57dcd534c6fcfb1e6f982c2028c01d6732f5b84ea6372d5581bc1c80f8f22097cb6b18ad2015db4ac46796cb1eda4fc15794254f7b0d81ad94e0181a5ce1507d5865feeb1763f644b60e9a195576ae02f0b2bc6144f0cc3d927bba5bd65f48f85c467de209253d8e4607a15b6dde23ea026310abf3ed46ee5c71b079e7c3032009a6ce3ba22e59c00e99babc1f27494ba573e11ad94f99bc312e59ffdf247da66b67c025562b4fdec2b26a4c1bfdfe09f1a7158b8e749e054c6640fa656560d4d0752c40acab2cd6e9d8f7d848742b818367513ff5f2d7b5191f535896ac74189b61f4fc7407b0e972f77c48cc6fa4982d046e03cf5bdb7b3c4382282aa96190a4d58e2a38bca920402ac204c91c0592b06e14276b8afe26a09f24136949675a27bd534e822b4fe5a89cbc84ed2655a6a9c28c4197f391c39b450d51fb6587d6760c96c88ee0d9865e3111a0493b44c30b303b12c0d8bf3b9088217bd96d663eb637727bc188b0381d9aa25918b91fcb68b40cd2281ac5e82968bdfc9e8c6470b28a2dddd86ff5d0d4b83abc2ceb6576f3082dfe56872ce30693fb5914bbd000f22cad91dca535fe981d7aed33357d69b69edb96e7d237ad535f1f668e34c78f242e19155e373c58714c4e52c77bb9249762ab78ae7fe0d0a42476c45cff5ddf1244baa280c6d5c799a53b1fe48e6c40fcce07d644a41a86b751bc1333e0e42a29e3262e83cd79269cb432a038ced6bb2e088eb8f5f077344278c8c1b7825088e88ee0c1a6fdd90962b004df0139b6d5b1cbb5afc4b98a0392eefb0853ae6c8ce41a1c2878dd2dfbdd9689cbe489a592e4e2c0a1b2f8fb1e246a8d01e34391c35d9e398d2021686816038bab3885908077bd2d34fdd06226dd2f9b0b9ea515b64841f012f0fc954147b05b9ea7417ef0cfebb8b16233e16cdc2c74a8b3296440be54ac5c2b48cec5cd3e16ce4ff616c3994b44d02c7d95186585a15432b162856750639048785f777f14b4bb447bc50b646168c43d2fecbad35b921b4323845ae21f8c159d7c79641e8297183e05f0e2a0980d321630b317ce6511a15aea79281fb2421eb835f896f4ce3e7dbc92ea702678f676828a9bfb14ef42c934475c76f51d420cc5d749b638164fa0663dbfc11042555dcc494d7b91918fb5c7f9534df11e02fab3ba553e36b7c7821e0a46f4c5499400e6ecbc356e15c99b4ed04b3169a8bb91bf9ae11221a206be3564438a27f5e5420227a1e3e4048144ac4b3bdf3909f8ba4b23b1689e94dc94d38d5084ddbe5d50feda1f289a7d19d25e410070392a2deaa8685f9b6fcfc5a0612608829736725ee4c67953fe94506e35baea4e58a019603eed6b88d7e8c09099ea1fe11d2e859a47e99e95d10bad335214348073a3ebed91c22946c8b77e4c134954e863413c7007133eaa779488359afdacfdf8871974d653f910bd2f6f673811a590075d2826dbee34c304cddced43f3e1074cb0235bd704265384f8f002008209c6aeb7e911ef7206e284b18b012f3dd5c21126685a8e1970a33d0e36235005ebc55dbe717118d43687ae92bcde045a281e0c0e385ad7d52985333fe6f0b6046cb737cab739174e84ab6d448b1a829c5d1208fae256de776023c4712c82d1b28f24604602b6cf07767f1670f15acea0c70479787f92247bdf013770546626324c0d8714a5889c955acb54462d8da51953d7d61aa6417c7e0c94b7316c05f2479bdb09a4d722d860fbf1666a5068d161cc959bff61682a022f1122d97d1a54eeb3206fab77ba92224f64d260308731f4dbf58a1e5e3f9a0752b649924d060b725830495d6c1bf91a1a3bc068ad4b42a9777a43bce10a1817a3438d1e1e06f7c23601d09291a8b02e340ae7e14cd715134984d0736f7c1e04c83434a2ae672979f33792d7f2580741012a4192f3add55b442592c4fa2ddd4697cedd08f9e76fc0ed2edfe6e2139c2f87d02361308228faa113e4475e308f5a63da2b9f39ed315cc2d59fc417202973b678ffcb4854e40af663b0427b036a11f32ccca609586dc8593621255e5a85474cd7ddc519aad837b26eb2d9f79f9f2749d8510e4f4cf423d8c312159e4dd85331fb8b3f2c89272eb6154f7c8147707b3ca19bbaded6c51a5322f81535cb0094ea00cb1a25f7863e90f3ecc16fc4bbc500548342a2ed9b40c89c3104fd7e27c353a96ee6ab3e34eedb13750749b98e1aef7c9f6ae96a57e2a0f408125bb2b3db534aea7982a4e026950b6c5d60b3da3865728851bf89b911ad4fae15d9033c858cc29ba37ca5283fb580dc2e9b9791974d58be8a69ee59bc33a1b761bcda116b36111743eee43872fb3cd2c8dd1e7ec348142df1c61b75aec42ea7b6c354f2d940064961565bc349c82843f1749dac83fe6cb40ca40849ec786a4e2e7521fb3405833d9c51e56cad7f6b7d8782d359d2bf591e629e0faf0ad660f069175e0e4d1f905e28d3b9d9d2a2daed1e3c4a56ea02caaefc7c33c05c2c768d04ecd26ac9872c225335d37e26b9be66951c2468854f091ee4c569d129816edcbd38092d84599a1919b2a9c422e9432145c4d0fa9f3c402837ce757d2cce431d3f330aeed24e9c96ac3817e02a36b8bd787857eb8ac2add06f7ff5e458fc574c2242ad7dad2443e688ae1138281789a9d21d654c689caf4a6913d75b471af2348f2531c2fa4d6eac406b70559c48f6c3b2092157494c5e723e28834c28d0b9b14007640375d4453d65eca40e7f48868049973d3dc754a11913f14df421d3583feb5fa5eda620fb1cdc6aa89c2d1b58a688f054acdd00c5270b31da9e973bcf74e044198604c4a3753fcf8de11c92a2b42f9974cd8a4300d1a6ec47611f2238ed2ae407e48bec3d5fdb682479ab5595c52fbf646947d20a88f05707dba370b356b2edf6eda1d872ae6645fd25e10909e4675fde81503794bc219fddc619d9274cfc0bab8c612a9225c6f11394d7e095e56c04d386747a86db9009b7f2148e7a7152153875e5e3e399bca0341419448024ef46c8ad989501ce65f8559d7366734c621ee29e34cebda786e8e4e031bca51e21bad831425e5969d63d7c7f9c4973ee335653bfec7f6c4a98223bde8e750e306baca600916e157c2762ee389c13478f62f7880f893ec322013b1fdebd3fac6a3645fe90107f56b3b55b2689cd928702eb2cc2af7757cb5b259c672f4a2e7f1a1ec57420d068cdb2ad358b5137f0bc4e41cf6af5bb59340d08d6351c89bc90029c69d78ee1293fa0e3440e7bb82bd74002b710c9c8a35cb113ebd7ed85306664b087e9c8870c2ac5527b7ea68b75390b9ea002f138037c044798397585b455d994a640856b05da4da55609456fa932a6e2eb037b68c14a75985d4d4ea47aa7bdf6ae0aaca9e7513ecf38c77dce9b7a045c478a4857bc2cace99dd8234851994b3509bc534c0c208868056d4662b35233ccb4d1a26c25a71a68fc7fd21b0bc2ad0dcc44c8fc2f8bddcdceeda1ee25d483b28fe20740a59716bbafaf3125f766c68915bde0779eb3ca2e03828b85d857596f344f2b5b8566806c850d9f78c2328eaf93964751a08dc02950078b4e05750ca924fc35746117e88c14d1be9ac7c1628445bf6b515426427f494b9b82f72f74349ad1fd242672951c2b020a6702e83a1f715c3358a933213f534681526946d08ffc180268ff48a015f094c2cfbeb311d13cf7c8010bd3d61c66ee15897dc91743b2757d036bf2343fc8a64d014de1c2ded1187a75312bc2ccae01d2cb58e0aded867f6cb7e46e63f0b98fa80d2213181a76301742f04d7909f66b0528b904d57c486f4b2f826ade02d147dd5c5748de205b710fc0aa22c74d00dd327bac8a953f5fa76c380c43665c5e304488a1a91d64c4540f79f969427bec25afe7007b13a0991f0a3b76ed52ec59ce505d00faa8ae0db3d659c209087621dd1f0da8dd7c4ef5ea49667d2fb9f5bcbc6586f28221ad8f83e59b5c6e458fa9389c6d274429de404811c6d4810cfe0625fd3a245670c5faf2f16b69bd4014c35fbb368756e5397887e502c3ab7094fb90f5e2d364de5aa6c1461a9e0c2b9edf97c87437e61e652f4df38c6f6bd934d7a0f226ddda96c458e9e367f4c37145de7f3ef7716bd5527eff79da9ebf38c2a207af41c25e732e04748502d3dd0e95b43db8ae4011c85907bc0a357a388e7cfc5d7e3d21b452e02cf155dc8c9766fba76b77d16a101415eeb23166cee650fd2c8c20a4e57198dbfff47d0f9bd5ab4b78535944f828e8ddc47c15f7c8801355f4a2237b1a056571eaeaa32647f1d89ff5a73e414a5ec9f44247833f588501287174d2e12af0a6e6e4d16a4bf782585fb53d58885c08f8d562f5d760bb91e01f3ea095682cbb13f0b6b35bcff95da3170103728737b83e7ebbde36b7d3dd1597c5d03dce93e22f3d7ba31226f70778aa20d4d580026297947a2a60e4ae516d5543b2f3eba74c6d00c59dc392790c61129382b70a31f6489ee1074c742d1c72ead311d44b96187db790c82f31b5b59118bcd1533dded30deb6f22fa9bbe6c2feb07b43c9e20fb0d481c1e1e735529a39b8e18fdfd2aa86871fb60cdc2d7359034d46d95d00b6dd41bda9f62a9459dc8c3396ac21778a71fd94fc17f3ebd1a501b1b4979baa0fa57476895c774bb478b15e36876767229cb1c60165aba275f4241d3712a6709410710f79f98c723d31b41f569f1158fd5298a2881341a0895ec018b1ce11ee4a8cd54d4d8391923b3647f7662ca697cc5e4e7a338600369e38e8b164a434897005cd20d19c417f73cba8f034730586c09bd59793029e1fbe9ebbbc8c4d290d0bd5018702754ad23a4d94705e5182fe3f04c335e3bd2f2f7e5d3ef2fc7fc02f8adeb9e89687ec6aa45114a2782faafa69a932656d4c3877f81c79180df89b0cdd27a133d9f29634fa6bc743bcc0b0632d02ec29344269f3ca90587ccad0f95e173a7b08b47c16b289a086e8e5a267cf2edff3d574032cd2b18ba6814a30e840f2531662843d983fe5acfd46cf4f98052520b1ed4d4c3b993a4adf63e6377b1bdbfe9c33f6caa2ef61acffc5d3791492fabcab904954af7c9173951e3cbfe6e97c6c215d88cf85696d7d7a9a40416ab5b08a836d7127885f66b08bac5e7ebfe8e770d2c42403daf8981aa4630a9efbd01ee1508f507d852c36c98e3cceacbca59a273e50b355f906520ea5f88088f57f81c8f493ccadbc4b5d8e44961687e9db62a63a5fafab09aed113cf5b3f5b442aeb8db0defa25a9cdd39394da32816f9f866a7386b717a396cdaee3de84f3b6d99d155610c05cdca257c715c701169d99c8e9d55f641a6b9e7842ea75ae774ed20ad6eeb309cc3f00ca6ae3388061a24dd6e08f27fb08bb1f107b5f716e17f67a6f7e2079345ff7f26a9f94d6ad4155364bd6aee126aa80761e828f1a354a7b239328198a3e27c535077e9f174101cca8d8c93538859a478abce0d69aed2352427d347ff1002fc13478cd76285e3b627829fb42f72aba821122b4abafebbaf7b4cf5770c1ae6e9e6f48519493752dfb506c2372e2d25ed97b08805ce503fe36d1a61ad3157cf2ca5f8f1ca19e3f6e102b6c21319be3bd4ac8e089272af2b4546189f2386088957448812eb43ddcc860764fd1d27a60c2d2918ab81e3aae47c3bcb0675f4bd8944398e1cc52f650c535e282177a29cb57afaf68159de60a6f83f8be76e293f86d1024f875bb73f385abdbaccabbe293077e85732891b2727c50f5ab9c5b3dbff441b2c6096b6f210f9cd46d44e408d795b1f2439a2abd522123109e09da4bf94f3cfbc3d98e8afe28f5c00d0178060609f41f9e2f594000606ddc808428e16ee954c60b83dfcd3afc2ff671065be7a62998a5fbbe98c808f6f5f01c162eb73fbb94c95ab7292938e588336e3a76649b81b2c2c5e58620b8822d671d8444f8ed7856cdc0418190b48978f07c65198909790a49f7d132f4cb08493dd959bb54cf5c1abfcb010c19419f089a88b4975faa0fbe294c1a92486ae476ebf858b5bda46c7e2f3d2ec1b62cb8255e69b8c3c463f0e4b135ed0cebda85329b4af49c3d712b5041c5de25d97285041d3df2985007d2e7157222891f965816c40c913f8d9b89f61e919c34b007be7a725c673698060b88b81867b7fabd548b37214ec0b1aff308ad916be052be2e521f650d3ef5d265749ff43944a8369ab19b0f38b41c5f34e1cb7296f93e1868a7f780054f57950cdb26dc58b8ade63e453ab945569a2caebb7c942b463ac74a988c055d3a628b63dce0a89e2b08d1686f0e838769aa450c1f246870972d1b90109a0c34cbc82b86f9861900e278d3e96d6ac4060e2c6d81c8f665da69f12de84f13ff959e4b5dc59288e643fe3d0453d0e3e5358e61f0cffed3aa5b074e11f9382568d7f716fcea728fb00b2be971a25f3ed62548cafc655db2a764a1c4fbeec7e7de6941cbca786fd4ec6509f87e4f5544d1761558431d927fb53a4e670009948c017db101156037c6b2da8fa69a228d962509095222624e2ebfed11ac01dfd5e1391865e6e82d9af42e18144baae540d21fe6a7c821bea880c858adfa9efb0a950f7f63fcb18fc1850897e6fc6023aec9388b10443c4c4b8e660bd926397f0411f1dfe331af408e2d90a00f05186c57bba8c72ef13fe553ef7ba37e8a5223e4cde6ea900c73f9d3a68e8dbc8f29937c67253ec627f0c058eea125ab124479cec91e9676d3d4c2c3bf15e59964a59bf9f9e86e8ed884ff8a412020f84fb7af53a9558b52765538736e558635305deadd104dadb95b1eb312f5450992064979607fa9258a269b8f8652b73bd25ba039cb3bc680be7f17abe9bc4959bab859efa38ff14b8164093ac1a37788b6cbd9e085fea1f8f318d8916aee0c9f60e4f20c18ddaf8a52319b98c01356955a8a7c19123349e9e2c15126c47e04daa2b64ee39cf650a26cad22dfafab16c2ffd7cb29639d241d090ffd16327647a91a4e2b73ebf22522ce255e6500aadbff58ce5f24e555607a9d5d11da54d64350f0e71d7190f13c0964679f688faf5b8bc5f1af6de093c99afe3196255170dd8bf5bb1daf75f89d874a5a4b0eb177ebfb03d69622d33225d6ba29a6ad4f285b8f6b71bc9538266e5e6679d528b321a274d0d2cfb9be0858cdc4cad8938ff76e604fc30a636c80fec66e66c0a4e913d05c54d7f72bb6f7ae72edeae08770f512c2c3559d7c96a24059741c0a0ec815a615a5436c8b05adb8fd8b67283b7b65feaabe4c559a361c733990346850f250e04182be49eb187ba2edb4557ba998a0ebeb7652012678da78075065689315311c5ac9d06f9a259549f9f1a5c814f3b852116ad05bb531ecf5e034b6e3d9a383cbc0354cd72747d3d30732d62666df306195b2d632c06970d8592b07f1c8e575937ed6487bec77575644b75efde3177b20b06a8d4f3376f81e4dc810b58ce94e0c2d5010c24319ebfeabd2bbcf8d5418e7217f9b2ce9a9e0a04957410e6a6854c01d14e202d899ee7e7fbfbacfd0a0fbafe01ab0bd26f65b8e2e4f4bab6db086e30094f74dd2383da33dc96c5bf512a2431c7ebaa8e11b8342c1268009163b59f7a4293513122f7abf075b82ccb60dabdf175d6039b636ae729fa6b4b7ac7287cb6dff1254a95cbfe61e679ac86760747606f5cd53b44e27bcbb1e166247272a63a2df29f81f7435d9757d8efa25aec9cae9724e1e6f2ba3523228997fcfa89296f93890191b30221cbf682eec120a7e9355c8e452127134cecafa2c578925f17677f43d48b6b006ceb26b4f889df708f0cf195350372664d21a0029d31d4d109e076f8ef01cf9c903895f0c430f33508fb9bf9057bb036b9294cf928db6dd8a84ad03920da1a8836e91fed42187e7617c34f8dccb6ff1e58bb92fc810a92d4e09ef87b96a7129c0bdec425fb9ab5c9a00a7d298560fbedae4d5cb83f35eb140e1159ee0ceabc463bf17e2bab016c96364a00db39b61dfaaba0e7d21743da30401275270dc08d12109126625eab25974657475adb8ace9158480fb8244f95701e3a04ade39e4a8383286cf313c764af6e823cc3aac9751823ea13b714514e61920c8264a536a917854ba97fcef1d1c6c4ccd5e7b8b9bc6d6e069ec60d012fa83a4d31520bbbecb61d24b4b2577c1918d8b6a8f51e5466105f37f53929fd65aca14906e356f6561bd7b844681f30c642ca06ecd31d1c6f024f48c944cebb77aa6888b4e2d2738f8242c5bef938e6dcee5338b28f2f1b88f06736d86417a5953042ea9effd0f4eb963676368afac5f2eea25d1a91c98697a0f43a61b648aa14a7313943e5b024d110b57b6aea5331741b25918f9f8adf99e78d46f23c61dfcf0499e30859760410f8512d2eea384822f4183923c4e348ccf24764443c296a47a56e3a5f91d0c82568cf99a108f076b815ddc1f1eb0e438b3ecca681a104c4980e00f5e622fff9628732e26c84353c549d1d204e02fb6a3183e9609d1a3597c368643ec0c53d0f5dd3588bcc4e3b39d8be16a6016a1cc77245e4a251129a6e2bd7202dac2ca6822388d0f23c9378d3aa690245360dae3876b6715e65a0fa717f42200c2d37681b44703299ed987cf333cc02e3669cbdc93bf4e79f4519d5bf997b6fd682ef03e81e3cc3d188431f1a46a5c02f1accb60053e9ca7d828f0b99abdb16a012c8f76c8c2487b7cbda000dd4dd8c70244c5353b46e8759021de70aab1a750b078d11d9abf0dfc555f3d70e07d263a4b38ad89811a6360df6c5b8973311720143ad3b28f8facfad03a3c243f75f299cebb9a5c0a7499afd0371d8fbcc5743eac01afbd73593995bddad4771503214a925cfb80e28c83eb07ec76ad24d128c041d680acb27039ec485c42d28868c10cd3bccef43d19a817f2ba3107ca786fc2f299163e767312f9af907de09985fb2b01195994c87356921667c0f891d2caed5fb43211236188345c146fb7b50df3de87b7b6f4201d7919f4291110a223b97f04b221289caace058f7051aa946a2abbde6835e05ca6c1f46da3227c57d4c5d915124eb4a721e77ea8221210a79c66f68096e293d4ccb95a0368e96a63d66046d25c387c0a4bbe37903c2fe91d1d0ef14a57d539cecfb9a826c4a09d8dcaee3e6ffa4cafccb7fd43a60cfcbd8af0ec7054526f03f904c14ed4f50ca4cbce331ad456feb64c581d8859dc491bf01eb602a2a1589afdefbfd54c1df0ece9b63277ad0bec082f35d444d2fcfdd8c9f4a34a44870fd4252c42a0b44823fe212bf0cdc7289903ea776165775926c6b60d8b58c46664cec84ebeca4a2a92bcc82ac9946efb4094878bfa493cf7091c7d499abc9707db8aaa0a5b7391bcc5291af8f7155e29366eea938bd0c9f4a95449fb8207273bd28224a9a2ee032a9ffe8dee068cf5e4966c2e91d8e93c7722ec010e0a0677aea2750f91537de26cab85b95f09aac1471ccf8a67412fcf2e3aebf90eea5d60eb3002edd185883185dbbe450853b80a6106bad35704b5121056d5e9c09a6d66f688073e4ce60586af5243a28e99abd1a750312a641de29d128a9beea15514997cf89258e91c627adb607b2440109fb3655841de0ce38801686aac058852a89493a6e9d05887ca5f44052c8b55c4d388b3d4669f230bd8d4584395c853bcf2bb2be56db18e0a4f833f15b0406e3890d174e64a8a75e38e342b1a92a1693423c6a61e78c2ee8e9608682250a3eb0d1e1a32e0387db624817272b6164fb8daab66682ba160365df2e79f8068ea12eabac020b424ac3aa0f8c3e264048b7855e0c68dcc8dbb550010ab469c2762f072de1e74794ea27610432091528cb2e34fd42329061d717baeb4288dacf9809479d4dfb8d07dae00c0ac77e35bd3228c26ec5d623fec08d66e80fb4cb7680695f6b082cc95f4fecd7a1bb9792788c2d741f99fbc25a3ad07658ac69d27b15cd7e21c553eabd5b7c1711d0c6e0f2ce2b05c0d7bb38d72bfff6861855bc26431f52394e1b794e1090ba1b01b74233e0a3401632c383da107251ea1d791afcc09fa8403acc75193b6826a562081deb3df61528ebf79c99e0bc13efdb988289f4d2b8267a1b37068d00994ff1a6f037a610a03f89870c1e62600e491c6793380d28fb6920f37042624b4ab3b6ee02b780ec1d8f6f54564feb23add1238981ef53e0270460484c4c465731b6fb9d1856ce044288efee042b2205baedafc6921cf174c368a9a582a57df77253987a4cdf8002e12399ab6e4b3573f11b8cfee5bd5351c898ac9b7754c2ce7a96b47a09a99544ed7ab77f0840bd94dff59c9ee50315d6f27c7e297f623dca2bc16363eda769ce4e798f27026e4406e623a7fd32700dedc6bc4fe74e3cebda5a61f251aa2a97e8e2d958a412bbbdde8b64931f32036699cfed10033a3f404fc1ba7dc4e23b29ff76b46226c56e3641efa05c9e138cfaedd0c4922a8a17af340bdfd826e230b40da18e16e63ece07ed5aecef2d05340ab61ff240342013d007a4413e520c81ba0d130883aa831da9dd9a8c401a7703d689e08c2211e22d892fb1bfa341bc5817604bc7ae4850879376d01f43b702d30889100c628798e3700d94130af2821cf474105fb661c8055c591f8773524001e2f2e2a7ddc61fe30fd48af1a08436c9f9c69aa4c95534a918308455f6996483c96817f26f8b7f9c65dc8a4f7a7500b30cda774ba17f6e1c9f36e5ff8ad84aa3c6c3f6716c93e2592452ee11e337e217532e558a1a44b814fca519df5669b5c1fb0b38e746d083829c37536c7fb9c68ba9aa88a8a95e1a0a7fd94e13d37cbcc65dc5001cc5b56c3ee14f039e84e837ebbd365260616b6a92c529ef4a8d0c570584cdc3e5ec27af74454b0bdc710a42887bbac8b82d869c337733ff36d97f790540f3063d9824956820d20c010ddf4ec8215cfcc2db371788078ba0135f5b711a7034e35f4921665556f9e20f23489d83663d0068edfc026b34ddc2bb1a867870c37dd409fe6d77db4032c482c62b4e464a2c2e247104c5ac8b7b8d77eca7c70bf5fec396a5105170fa7d2b221ee080683024e0413274b60256833a749e082c0735d11c9ccb17cd71eccff104f01d9c0fd54311653551a025379bf6dc7b33970caa6693e82668a320d79eafbec5894b682e32a038c7cb4f5d17526e5a3d8e4344b7e8f4934269cee47ec8d577b9394cea0f909e1cbee48fccd2ead5c9a581e5b8a6e86f4b57d8fe98ee294f7fdd732d6b757398e8de40b3d4773a83ed7d2691281d4d3f714329ad42bedca425a79991eeeb8f61ff012b47723e586cf846c85ab079ea5946f6196e9af443989c7469e819849f31af1c2b641c309b5325c14772366b98cd2a82e1738f18f113ff08a067c21f1f07d15544ccbb98e6c52905a4b7e9051aa64fcf48a375b181230afe1aaab877ac9156628bced312dfa4c3a6c5285d2d4184f3cfdeac86842963c986e57029c6c8135ab6d2dc994679ca6fddea366c900786b4725d7cfe7c5e9a5594856c821d31b65d7bc1391a0c09df7fab113500dc080de686964aa170d3645a97cda7454fd298a5e769ef48a9b09e001b77003a38266981f938c954abc9b1183f8899e16c90cf5f6fee7f89aea92043ec1e1fbda17f776169f780b10bb41f05379c97b560b99f1444d5781b8ccf500e04c214b86d5cd6db28ba7bfa2599e8b6bf236f8cc05582999570b32966ce756f3cd1c1f5f5a99ffe4f89fa0cdf49bc9fe84a04ea9edd1985ac1603eeeeb04854b89d9701160f977bcd85afdc2dd5ab4116241a373b22104bf1b55f8f2cabcfb8d4ea49c6fae0d6485355f2e3d2dd77922bcc75472b9f7f1f5b8d4801a8087d87fc39a9fd164017a1094fe79377cfcada3204b9f488765ee8cd690656be1cf56d747a56d02e4817aa5ef7567e8dfbc4d224bcc3580f0d9e277f3a98f6013b5e39d536aead77ef79ee44f64e8d51aa07f5779a90edb457502ebd81e696bfd0eb0ab2f86d2366bbd3350f81fcf5a45e3bd436989467ba98aa7ede2ec704cbba7202963ccc8d393d65bff8772c7b91ea19bc21096c2e131ec2c23d00a76e58a310c4387726c12f9687b001fcf8cd9510edc85f64f018a40f6a1dc65bed19aa44a30e5cf2f190984b59d8dddab1d44beded859bd823639a8bb79e83c882e260ca30b5dee86950a1e8df32d9ea8b89c57a489572709711a429fe2c9533dd0d4e879de5a241e55a523df1b35ed2d8d5d4f12540c175ba07ca017bd3e5165806d02fe6af20ddaa5d53e51643d2daceb249d1f516386f2f3d231ed380eba71d664b3c832d015a3012fd15ab8db4a43370f1c2817fa996d19b2a780080f9627d0788a48e26bdd31f44968894cb94c8aa34fb6198bff8bcae73c70d7b7a1a1343e2379f6ee09f43ef3b228c037320c5f43199c8b2872f594a3ace929a85687cf1f7230c6e3c62e0b10cf8e9aa354afcedbe9b6f6fd91fe8b9788b5028fdeb6ff9b5188281f150c70c621c09304a72d6f454a2dc962728d6e2e8dbefe77856f0cfda5156b14cabdedd0630a0ade6c191a903764962dc953ae8be92c70812912e0cef254e833e16783cb7592f2f2e800f7f8276d888a86b3a87c247fde4ea2410fa151b611474125a0c985174a4589c156789369d473a5b1b8b8d003c771aab9c3d1dc7727074ac946c67a2289618424d63a1a741e4b265f5af3720789ad8529216fb90f95f4744bd6cc261cb895bf2d992c3cf1efef82f390fc593bdf43809b0ea92bcc97b17d8ccd820e6d3f441550b41742a7d27a5dcb58b2536e760e9b297d6378638d490adb3a6ca7d80854bb7b20225a416af286f1cc862f36566d3c4f5a7f061e29b42172c28ba99a5f626458c202b4f72a7d930ab584e35f17c4009ed6b3918085eaff456d1bbf6096519ef59fdc9df23a5d6b70ea026e022aec9dec93959aac81e223c5c003bc3731404f4376561e8bddc4f4d8985f98eed5b6744d19be13ae1cf69b078e6b893e407898710a037bf179b864fd1c91dfe6a42b12abdf5f928b10905abafca931d9a1248e8c8d078a8b44cce676471c6c3e19212015a09fd9c231e886b15f9a1c564d5223ea03a448fb71b8dd0797666ecc797b7f846c27a28a5733d8f5aba12ded66d134c092c9945a35732d68d56f60faa14c1464b1d3e6358791e65ccde82b2ba74b05393d8d722010090948d2f412e80d33354472e906f61cfd825f5f1cdc5c14845f91f2b1f4fa1d67ff2cf8212a240b77d238594be8896ea2e03c09c246e97b77a3b180c0c3c26373b3e354f12faeb72aabad4c88021b5ea84947ea31bcc895659501c6a39a3cb537fa7fedc0b3c38abafe63a307f10a192360375d953168470d67292a7a6563a42b2dbe913364487e462881f97392637ce4980dd5966a2b5a3ca3675d5665de672b8f68fac535b8ac6b10cc4531c039710476a9c306f10eb8fb7dd199b3057ff95e84ddc0122f02ec322ffdd3e4f77139afd3f01d18c6b8456a34c793f758a3a6ac3afd018ee9ba4877a69464ceb62b28f5ee17e321e6d70d99a92a2e33f06463a2fd0a8ebfba7ba7fc6cc80332c959b5a96bce7969eebcf46c20308b8fc38b77deb0da08176654bdf203ebe5c8b1aa862d7ec4593dff3d848a30d2d823ff2ca704eb4e0b1da82d07bd1edce160d72fda76e6f49ddf60ced1a69f232987667bdcbb0df4d92e7ca083b8c808da032208430cdd6bfa0f0ffc21989be8244ecec1d5cfd6c33a27fae1ead61bb1513aa47b416cbb75c7d54f75a724d87df9118cfe4882f6f0c7123fda9d831fee3ac73e2227940b5c4c2a5ef7b58969d08160c809f7f0a2049a8574f3a32dba72903c07452cd20b358ce9f6794316e294c8000e4de73688a4398e2134531e606009fd216e0524b9d861e7fb5639fab3a970833c0a7fe1a534a7bfcd75070ec06903fb88eb2fe4b2dcf06b288f4ab10fba74a3d7c8794fd17962d53719c21685274e47d3658feb7ff437b2400c156c97f1e8c7198f160e3524707186167bba2317b134b4cff1549b867e74d27141550f669dba8201bb498a6c0f82f31c8c906a1238f19c5002714550e7bc808482c41397e2791c7783f00041f022d2a7662737971efb3fdf94c30055b64122795935a31a04a9b8524f4a592217b45761fff09615413a5fa21c9164327b4ab331a9e303ec550e3220b54b98c5ce4544c566756bb0af560ee05b46b2131afa6c00d13e0d3922c7f6648350e8ce9587479db97226663e2d3421d2f2ce1f0dc7839d20d4b2a5e4445d2b1cbcc5212814060a0246f73e0afb21de616f9174e240549afac89ee484e634388267fe3bae8caf6f4c620eb28149acd42d1dcd5f35202715ab09904290b194f86c77145e8a3288290a76cfc09bf87929c34041c6ad96926e47233b5e3614580243beec89d1b4c7fbe1e2a261d4f3332583f8ab6964f933f8a0c3b41a3254d1c4cacb0504b66ad002b0b08fbff746859bf0f49c7141c1db15c30d1068289caf9848a20bbac1ee630ed12ccc337686f5d726ce3eab620844f429bfb0b01b7bc152693c2fcd74fa31d8fe1b6ed1dfb8816d83c6c310b4e732b7dffea46f4fa7caf7455fab292816daf5654fb64e4ccf25fd3d50a5760010f36441d25c6f39b95bdf0ba81b3b0920377ee9d8370a525c4e9d472dc6a3509c018a031672a7bf659fcde2f6d9e38625f6cb508a62881c5a5cbe6e6878493316cf1469fbe3faa202d4f0759f1bbaaaf3914f7b62c7c4855786d60c1021ac96957b10dd563c7610e3e867eb2716998d654dd382b33040a3185746a7d948d6bc587840817de71d71d88b366053728a3779475bdd80331dc30e1dc8bd5ead94a8411e755cd69409465a355a5be620620ae5e1f51a7075b88af88483970c6907bf41c14da1311b629b77660f21e2bb75e450115d22472889c52f77f82115fb03677732fa112355c7342a44122a1039f5b464b258af6523b56c8701d3dfac69a9a8842e551688ad653b3d512188e5ccdff9d635584447fdb045cb80b12c8fbaa566ffff901d4e05015213d270d2ab9c0e59c4dbc65829f41b849e1f0cbccacac69c04d5787a5a7528981fc4140ca5344b7d2b5f9675766d3a12407dc11daab3006bd38a78a65d60e9004dd3dd2c5d29a98641b2f32559270f71eab4a0e14b55efb016ae7d23a2aefa4ca2e6bea74b1449af1b80197b421c35f9918542bcb130b23062edfd431ead0a2beeedd100d09ed0a57e131a30d87b6c5b0b8949b59e6836b68772611b8d9132edbf1fd3c94e0235a3c444d93a36c60da6d5e2328ef1cdf384ff5578d50b1efa74292d0af5670f73c161025892c42e21d5d55ba456c8a9f43d7c4e68de8100f6616fc83ded160ceaae005e5e6e6544a3e1529de3b6a86f8ce2d169f9a914d2adc9623975263b1e7eed3534fb9bf9b455262beca5a10ff90f959a57950379f832fa57928d43479c16921ab6ec650f0661f1ee5fe701c40dc4260691dcaa2eea9785c74d707395aa469b4f8e6403af327459abcbdb0167ab7e70d843207eae85dae5e888e5fdaa8e2a8922323ba282ca031d14d6144b83f679f8376fab42f1176a53236cdb9c2b3d8c8df69e0432475517a783466f331c156c25a3fe75a88cfc07c7576e2d628093dfa78db36f1e39781dd14a4909b0cd72bc89ebcf1f783634256d5a80026109380ce757534108c7e324de663d73648eb167a8b1e249263c53c26282b39c73c943ba3dfff7a3011f348ac4b07d21e7394ff388a8d54e8c743c27372f0354470fce0f96fa15c800ff3da0a57ca852cc01b149286cf403c660334e2762866fe607bd81ebc05512c18751fda12ae4a5b65fd9aeb62122f18bb9ee1f8b66c9e7e35b21cd0aaa5aaf78f45e73ef7f5ac39bc1b0d54710e718c441f22449da29d54b0d3713729b8aaf2d62eb479644f543bff03f34a8c9ba0496721581a7d47e4d4a2a9661dcc41c5da35a47b945f5d69325ce4fac2b8118c8faf7f1d59ccfb762b408f99821cddf2b0bb43366b1afb4fc1683c6d7e48aa59afe33719b79751bf9cd5494576c29f567e5b93b7b332c2321d67b26ca5d8d1b0a13db2454926b97a06c453fce58a6bfb5908529acaeb289412c7df85d8d35e050b6785ba37a3bc0fdbcfd744973f9dc33f5559fab18165961a019a2fa42d16ba499a891bfc4ae8487f30011f3f776a83bb52afdde0dcf6ca72cb735c53efd3b60dc8f0e862aa12946e39773ff9bf79c02dd2c2274ed0a9177337be89431588bdef523e4a31a0b2cbdc4ad3940be8d933a5b6c3dd4d960b99907c04467adf6a7ce78f64cda4004f3f66d20d97e64c8d156d1b0bfa65ef6231fc18391bc166219940d13a3d97e6eff25c037ead2ebd9b676df09bae1e88ea6c42b434b6618b0896671aaa499e319e2da268fa7ea16880553d1c37db1d735f9502403f7b4d892fc90bbba5cee9de5f11af926740d8c4bf266659c96ab59cf3db33566915937f7a5d0a02da262944ed1e4ed84ad3c410af8a7053edc97d5c72c013853b36d88a5c20a68c93f573f0c583d9b6bb5619193ba452764ade7419ac00636314a66bc2d20d8d2674891c2be32f4659cda48149a9070fec1f82666821f38efdda66682863410cc0ef4d299e1e9f95ebc0a2adc622560281686afad4f42c478982cf99f2c83bb09796f4a62709fccd039ade4698551040cb6c3aa1504902331a6c39f5b25148104d36a2074406a77d2a8d1567d02443a3e6d86553f90729b77b4cb16a8bfc5384fbb228017f43cadeb7a2c5e3e3686b6fc4e4c297cc1d8f7f14b197b42de59652262903fa097b09f4085f6d6ed66cd6e4f19aabb92a93d99ccd793959cebb4d20201f9f30fc97c930f66eda3f48cfa7342b2b2b2b97cbe598989898eeeddeee4dfbc3f0364b26c3d866697f18bc2c1b1d7c6a9d73d639c46914f69276f6babcd707f3de7d5f61254cf930b00fdcf12a56645e06dc711eff2af746e9303106f1ded39e50d849e1d8cdc1569cdee10036336fd7755dece0837c4a2967fde6f5f87ee549aee44b4e8b334e4ea35a9e9cc6c1c7772e0ee5514ee57d74d5422f92567eb16492d7ee126ebad2126594cb21afc95b848d90e4c5c25ea0b6fc2aaa268768a21d2525a5982b4da259346f1e7ad224b2494c22a1e83e7edffc5b3689268fffffbe58b67ffbe80985a374a324a1666d424d4a2489668dee8b89e816cd02299617adca01587f809508ac45146af2f8579761258da49d5e2d5dc17ce47c055e7ddeb747de9847deb21d79bf4ede614ede3e9142e1e47d6fa05c194afbcf2b1d99c8b321aa21a24a97266f4ca1a03e0a259327cd5bf6417d0fe39e24022a1f82c95b045bd20a49cf2fe9cb7b04547268045bd10ac9ab5a2cad1c48590b7e4a474ae79c538bfcf9f7de59e752d2c44574918212f45d4fb0ec4144458214e017bc7296c0f2b7cf972103310bbd6dd8303d27b83d3db74b4fab5d35f51705f7fc5dc129b578fa763aefe9db4d4dc1aa2db69ebe16ecaaf6aaabaeeeee4c3acedf9d53fbd35a9bed6bef7ed7ffeebd13a49ff6bc69d03633f9f4fced57b4bffd2e4c682ea1a4fd2dec5fde57c1ed55b4cf5fd2b14a49ad628c732b06b78a31c69f5352cf365809f3e1b9c0f27be8802505a2849d8b8e392c60526b0cf28b022ed7872f677c81fa52692ec69ca65704453af2a0c24cdc8b8eafe8814d629cb4bbd69bbf0596461e7a4ce00f762d1c38268de491bcb581756e32365e93d657223bdbbd8ed37c76d7c2bc605e2f0ff62ffae938cd757418984c6390d70b9637083e70c2845c1f5fb3cb498249ff12675bb0fc7945ef7d496b77f19c73ce79fde9bf1cbc59e606f46cc39513890e8a2e37745ce4e4106b95545e0b886217518490e3890db6aeac7250b8610ba2d65aab0d4a338081d6962ba4ac234a9025089a2c5790b254c5e4b2c420ca14234685c7245d80428e2caab290030b95ed0245133707851447f5c3dff9ffc208334e80c69437ca20c28ae1c5afe1c5535195a9578c34eaeef53b29e72d4aedbaaeeb9ed0c14b61062638810ba6183a82b2516794e1c101e509203ea62b4366f0188ac3c995a6293686000307f9c41345dc2794e8a17e35a2e9ab7243b625c0a10987ffff1d1a297abf0fec0629e58cf16a3a7f9075b5ebea11633081054b1532100267c368bae1956b2a32bae9e2147336ff7ac1dc08b33ffd37461dd7e6a3cb7b794dc70c4dac06c7622823db1468018338c6a406fc700662e0fd68a001690c65f0479998973f23833fcae0bc43a06362b20e981c3405039380af1cd4230538c908f50bfe92388fc36a0e4a03e38fe1fd2993c59a691758078e987b4fc42f4653b038e3881eb068018618316e83cd8b2a3c4c39d1458cac2f8cb878dd14a32bba2e7230f50616606c51c9620616ca89986ad4e334461b5d6630061854582facdc4e0533ae882a9203eb8a14b68b1890aea6f8c1e98c2a52b003d2ab13c3488a574476d1e84975a36802176fdcb044953178b8c27261e4c473a3ca839436ae2cc30c1a1a9db2458a17788a4bb1e29346dd1c52acc4829046c82d529ec0ba29524a8aab934651b0646e4325892e529648e3a88ae512658d3a25268ac98cad2a8cb66ed822ca18319bf42103a321b0aeb66061458b2861504aa90cc7205f0eb1700e116f0046171fcac8dac18b2e5944b10263e9724a14251a8c748fc2c872258aad8b0aec539424ba2da06ce5d0681053046e5c599165ea091c54582ca0b441e99c780bcf453107134c494edca05960c0a4119018565a08614b220c352c142b3075ca955078b041728520c0520988d2704a228c2b5b86ea942b7230038c2b387ab022841628363aa5fb940900e1060a5ed0c4165c1056c4e149244e40656103ca17600c5571b3312c86961d6e68cc18753adca266289d530b1d432af8020928504051b25460a13192549278d52072a47ce1840d36dab8810ed6c9ba5101d658e28b195855ccc84d71f34147a557dc866c1744f51a0051031715f6ceaff83843d8e2e9e9c90d281e5860a5c872c96250b15a854f6122063c8421f5c40e57d8288068c16b4af72912882e7ad068104ea569e6a36f5da194d2188ee9a2b3a2e2507483274fa8308205442d6802c288afd65a6bad5d5c4182249694c2b0c205926ab3e85aeb03d55a2bcf096e2c32715bd8a0340503a422b8c0c189140bc5176f5281830555457461822d8a9426a0050caa9c968478e3064f3c510396461838090bb280228a0c68f0f402cbf484aab35d8a3119510daaa939d0b0d272461355e975040e681441cd400a24279e8421732bb612bb1d9e70b1479e8062102ff096e9ceaba22e40046e0b2d2a737429a389275aae5b91633c99a24e893e97aec04ce91ec4132a2e1aeda644173c91528bc8ce084f272e0083073592c0820b16396a605b386a5aa3488fc3d2e84f3bf483154d8fa14f62c70de9cb0e34888194dbd20aaa5b7113c0541b7ea0224513d1961690a16599f0c255271055c0b016383200cb0735709092038d2d24f8a1c9a795f903131e15291cf10489398894c0a1882b3f2871dda81383628164bb299e002836a86a30b5c45015a51f8cae91dbf004175a6841438e2a2ab862ad14bd011344bc420609892c5ab26ca19554a5680b365a22450a7008620a252bbe58a2288a8ba511454837ee799e97f7bd32d62a7cb0c18c4b231f0c24dd400e28a8b690208d242fb68a569f301e68fe20a20b568e07216e6128010334d09079151268d626952e5b9c10b9a185644b42531a03864ca448e66441340216a50b0ca2c0a8b20505160932ba22d2082b0a2756a8608e147479b2388f438c4be515b10c2b3034da492a415253a2487d7183e206547c00423625e6dea8abe927715c060f38b4d8e1ca961560810612bb83540f5a3a349338858636a251ce49a99637ce18239d14c9e39cb18b92d27ce3c7a71871d377a54f1be79cd3bd5cdf9a439e47b99453b9957d0904e4e3134e0178918e8fe565cb876c9414955567adcb262d31ca64316f6ba57b8c4f69b5361be988a4e34cd2b1288627587e0b3d1e4677f729b0fc283d8784dcc919aa68f3d5c4686664700c8cebf86c2e0cec7bb9bc2b659f0e180934823ee5527766281d5f89c9e9e95e4a9dc86f7e84b35731da749c9452aaa4e3e36ad6b5dd3be5bdf74e4a299d382098f143df1aaded2ab536d3fc63478d9e303dbfc69af73fbe9c5dd9cbd1ce9a8c3416c989dae7f4bc0a2a82d042ffd0f1e30ffd5728a5344819e2e3e1fd5debc459f07c2a3c7fceb75df552a594d2e5ca4b4d5a92baa17ab1575d4e39addee572d7bbcb25a71c9a585eb662f0ea72ca29a72b4ed05daefad473af9b33668798dd5dbabbbb94d2dddda5bbbbbb4b6a9371f162c41f94e622d1a76f4a29f5392fad9ad61a033ee4b5ae4271f15abd9a3cdd4b2aa9282e5a9a962492342ac2f212b73a2239e4b5ae7b189c06fb8e4aeac8901e9dd897d47d259a351ff2a28bc1dc49ab57eaa1c4a32ae9ee3b28f94b57be4ede5816713aa8a82e4bbe2cef4e4b7754d6a63b391479e4db40d540c572f7f56ad662e888e64c87751573f7b01d579a47b41cd2d564f19033404818980c96a18931c69aa7711a9aa7a9a1a9a9f922e8efe0fcbeeffb093699f20362025c9f765f9f9c16b94039cdf5d2e3e2b45b715ea896d3622f9f6e39cd56879c36f3f22b91d36a5e7e2dc2312fbf1ec1f6a73d2fba5eaf04f6cd1ad0ad62a04b399587555758a06779d1629a35df925ff6dc1ad8e70c4be5e2a1a45bd556872a512dba25e919a8de9f964f41cf51ad15e0992b547df250fef34c917f73b78d57dcd995a9fe741d996c4a4a698d612ceb7ebfa281d4b1a68ed9afbc9881fa1510a629e38471bff22b261fa8b4ee232a0bce471a598020228b4d5e28b2a4df308ac4e0e1dd2cb068fa964a09e0a0c11b666c612be24b1952dea041a3ab41a0b0697aadb56f9f622b91d0f60905505c65b16544d30d482c19da4289425bfb40d6567986a61f9fb072f7d5f2fe20c33da614a1139349f1e43c116a0529723c644cb79c78e96582cb0a4c44edc04b4f43e04461d3593a43ca4d16a59c25ac23d911ced0141d505cdd0c81b361c2c9b05041448d134e3ab08c0125d6f46483c5ea09cd95ac1a2c6f48998922177302458689a689208ad06ae20920568802d7c493d10a4e543521b5c292ad092b29474dc4f143961343b8154800e544929193134e472b6481722237c40a501c39c106d20a4fd8989cdcb298a64059a1891c53952953283159a1848d098d2a2b60817a62488915a6c8fa59185fbfc709bcf1f4404729275efcc95adb597b7f663ca777abb5b63ab556ca18adb5d6facb7e3fe39cae1748ef7c5a1ace9afde8f33e40160c9a3c8efd7fd24a6d377fd6229208959b721bbd08122186a1fd7bf8ce06c52051098f417ecf6e533d2307961f279ee34a192738c618638c31463c6767abc80c55ba6de49cb3ce3aadeee8d45eebac162654ddbeeeac1d15a2738f521983dcbf5e8e31c895924e710d47ad594a094775bdaaeb0695f2f0baf5edd2ed5c7a2c425f7e916e5b1d8158901ff8c78ff5ad6b9aa3a5e00b1ec6e03ceeef1fa55aa83e3e7ac69f608f87a1fd3e5e1abeb2fb020c1deca3c5ba9776b5eb2a076260191da5ae9040efdf19ba42c413f67494ba028503a32b4eb09296eeaa94524b29063cc4618b8368a7095b1da594ae42a5aadfb192a5f7fb745d7c28c38ff165f2822956b035c70f54bea06470b99288ca0f301c1530716bc8073c050c122cc04a40f12d9104eccae382a6b78ea6f9e884a60980a6a159c20d4df332283e76b9c9c8e8ada3657e47cb10d132328f958843cbbc4c8b96f9775a944aa2c115347ba5f1c7c084f0a763627ac7748c948e914ac20b1da3c4113a660631eb49f3d0302ee80b892268b87871efc5d6fed05b47db1fdadac758688b33a2428490ed8e88d2751e71d3f1c64821af4c1f216bad57a0ba2883e82a8a8c1520a952bad64ed75aab9433304032254130828a074688a1e97b30212aab3d60e98a54024ddfc284e8f5a9508090e2ea86f4a8b18aae654815b185c4a4eb7f58651ed6a794524abb809206a594d25a46ad44d8740575ad8f91d0558a883874fd2ccac0214a0549b4808c1cec183720accf100ff48e0d11c50efaf804322f608a68b04c08a728f805b71921c08012d306948c1029b8c128e117449912e2063ca4c0c4950e443ce1989a2852a10d5b15505488c1511852aed0f04105ac273680b8923ad2eac18683910a2f780aa2480518dc92d8410537aaa486b85294759b3c11cbac5c4da92a32b8b19ab5abb573c2311dc798238a080cd3718c39aa76b4e0191dc798c38d2730d6718c39e6e8a46c40745d4c568322e7894617096f590d969ca772e0025b117a3f0b2420aaf245f63ba08e523639ae5851b378c59d38bcd8e6276b8ab00364373212aa4a7e117926d484ca9a505031480122929a7f491b22cffc1db280985bf69367febd18cb64ffe1ace9fdbaa6c1c0148841a64c15a66fb58409a550f3378def5e8ce50cf2d7a534f4018a3d0d0cec93cd4c23936f4c86c9b04c43a7bbafe076282ba379632f0c7d7ceafb15b29d4d8e729e59abc04e7d5620f2cca7c19c2fa198a1674d8661f2c4c8c0bb478f58c4ff36e3304ae06e3556263e936ef9fc5e2bae7f5d3048cb2ee7dca7a1d337067ad1d9bccf8aab04f9f72d2883f43c6b6df5f296f63b99bb2a68aecba2fb1cfa1189bd2103c797ee3379e6cb9f5986797038fec63959c66d49d4f59f6cf70eeed741bace0f9a39fe3474fa7397d205b8faa260f793daefacfd2551db2c840679d3eeebbdde163a3d8b4843a72d189154e1858c456c56663ec8af2bf4017aef6f0c0cecab385798bc7f873eaefab4f3e9d73d979e9cd386e1a4d23dd35067728e4b29bf2be3d687ce0430347238aab5d65a431c253063054b344022cb9e208a2732515061230643383175b1a24a0fd60469784d6d244d1a833966004713eebb8287ae69a9de80c50c95a62760a888f1ad11078d91d218a5554a29e527a794726ef14a0188123e2260d2f3e9ac0a2c9f32f19ca66fd478a3bb74e965af9e276f76cfdd5d26bbd77b9a3dcff3269697ad185c26cbee3e671239e79c93d2e6b725715a4ae939dd71f19042794ed328b1a571c73a01473867f599021ab5b6db942e9374fafefb3e49743bc2b9a2cc0695f362787d361096e1628c9452fa5198b4535e74ca1454c919e3cd8f70324b6ab92dc87b40e54459256f3a242e66c55cda748c53331fa16011484777f2a7486fcefb82f9f396e9daec1177e4383fc4c9db6703e98993d974d86c319abc65fe1763bf30d9366b8ea3389c0de7a2366aa3b6a7a7a7a7f7798a4fa10f106ee2266ee2a66ddaaaaaaaaa9eee7d7a72dcac51dce4f1c7385cc5c9701e3ac5698aa3a0a4b97a7918e9c55f8c917e4de65ce343e0b9700c8ce7f2603039041ae6611f0393a39615fcf80bf6b4beb83e6aefbda74ea31e7a395ea22f4b7c81712bf58a3bdbcbd2fe2f204ee05d8db427f995d7e2a4a2994a6fcfca51c233f2bc9b1958fef6b2aa9117afd55c6e2b5787a894d76a5616a5b2cac2d2fed4c86bdded46916e34e9b6a49d3669a75a288dd2fed38bd7ba3bb7fca794d73a2b2ced3f9bbc66af16ccc52dd3e4f167ea611ae2ef5ebc6673f568d63c990e8e799677c3c594b47763f29ab4f73ce90ae5dd9ac0f2bd5cad59b666d5acdbac79b7dbcdbbddbcdbef0f43ef76f36edd2d376b372b2b9795cbca9ab59bcb7559b92e2bd765dd66ed3231dd986e4c4cb3766f93e7c6c4c4a43d44c0047c842d51c0bbf0416e75cffffc3c0c4ce8fe64ddf3ae9f7781f78b1c79017cd03c02464d048c5a01e06612b3d0097817be06ee1a8cfccf13015d2ecc3e0160f410e8efec8d804dac76e5fd939b587ddfb13c9cfd0c0bfc3ad2d469f25047801fc00d303579e8b380358f02fc96691e403dbf7d7678e4f7eb1e417a78d0e3831e15d703854fe155f8d71f4d1efaa009bfaf064f0009f05ba6c1ff48c803c825fcbe3a7ff4dae73479e8e7117ecb96fcc65ac9efab5d559387be8f8fbe65497e63bd23c2efab773eface5326700b797b929e7df82fa7d9d3d92320ef3bfb03e48d676f809793a6ff9a9a3d0b74f62bbca6349d7d015eb3d97f307b0f661f64f647f2fed9ffe41dcebe276f9fd9bbf206d25ab3d9ec51781d7d4eb39664f604c85b36fb13f2c6b33721ef3bfb12f2beb31f40de78f6247c4e9afe055d55ae357b3afb11f296cd7e49de78f64a5c559ace5e68f649b29ec1602584f0d143a0bcdd4acf1e065b1242feaa3ca45fc3d4b34702c6b4063faa15c420f43f15c40fe8f7800909207f531ed2076d80a38701c83b049af6fb9bfa174ca8f6453ec284887c840915f9081332f2416ec16bafb5d6ebf923f7c811ac8ff41cf90b36893d37040b7ad6b3d6ba7efe7ad7de9ffbdecf4798d0cf07f996873404f087fe11fa46c0da53840858b578481f08ac35b042ad81a72dbb9687332c785f230f1663f390d6240f6955ca469a7ab0bda367bf0da0699b054dfbf9dbb387e8fb2f0fb604a65dd982aecf0103c36ccf07f94fdef7631ec394dce77917683f68c63019a2bd1f327b20e0961ac85718094240a9abcc472de43b1809f867669ebeabca695848369ad1c09a487d412f06a16f13033c7b20ff4d5100e47d41c83e79cb2a6e7e809b1ee42079cb80f4e819087b0f8c9a07643244771f82db933a0067901c80db7f80dbb9ec8033501fe0dec9e08e5c407047ab07b71cea016e99c403dcd26a07b87d48079c81e6807b0707dc91cb0db8a3950cdc724807b86592b41a8a7d479a3e0d48c3d4f865f25e127513abf15b21f28144eaf0124b1dde8381e578e4b41cfa3b1f98635f6afb5207503af90e264491bc3695a4e9127dbf72ac98ae539e6b84a8bdccc473ba3e0c56c2d4a1e848579f9a357a9fbe9ec2d8dc88d26f2ac3b63cf4b63e35e8bbfe662f874dd80387803e67d0230ef44a61d6be33220ffd34a6d8d0f465a029a5f49b8a41685013d80958939c8752bab136e1f737a5e9081ed2d7b9c16988f26eba83e9c4f2762f3af638cf45cb2be729bdc9d1c39cbc9d49d3b731306a1cf0739e8217702f5a06fb398ff3364a1a98994f07a594e2dcd0ef6f6c70fee62978738373f3363836363637368f033699372f6570e8534af39d4444f2be0c4ee5326142f549cbab3251270fbb260fbbca9423f2f0afd6bef32e5da6db749d9cf67df757cb7dba5c9c36f3dd5fa81be53499effee6ae94d368bebb9a87d6e4e99ec78edf1d5185f21087e6e0e0dcbc47a92c5a7a4677df29754cb33644ab9a7ad0dd774e4ed3d27dc7c56b20e03aa321dd7d77d425758f73436127485d2f2d6be9ce86de2d0fbb0ec9c3ee6f4017d81575466077e461f733600776499d524703764c1e767faf64dfc91e2777ffba799b9becd9ae9687332c52871038e307328571fe86c96937df7d6d721ace773d66ed6b7e873a169b89c562ddc76cdea19c877eee4e61fa339946bf26efd095b40d48417f721efa3d4077721efa38a037794897e4dc6467eaa27b6829ec65e0ee9a74f73cc0edb93d67a03a06ee0a55b5ec2aa5bbc7e09681c9d4b1bff9d83b087b1d50c7c3ee73c09ddfc3aec3f908b338f2a5952f25d531f00253dfe497b5dfbf3efa65eb7a0a5e20e6b40cdfbba2b0d2327ff3b11ea628681fe771f2dec0d4346f1ddfc46a9ccff9083b41c7d730354e53c6790ae274301464fee65fdee7b025aeff6664331fe41d91875dece9cf1becb7fd4964c13c6f45ae2778763f73ba58def66fece7fcbeb9b17ff3371ffb20ef6e4ec3f9ee6feecd0d51e4c179fa2f1cb0bb811d9187ddc7c0aec83efd0b13a2ffc14cb041c7ba180c1e76600b6ee08ec869ddd5d25d11cc7757eb7ec784bbaff9d853d0daa7a0fd9bc7c1c989814dac8eed1aa68ee526728ea08973f3b8e69bc83996d83c9df91b306a990ed006dc354c6d7fe66bc0263637b19ae66b989a26530f6772fc3e687ea0f732e07bd83d06651e761f0376fb6ae5dccffb57cc699b6feebaee6df7ddf79801de9368de9cb63da2d9c9f76e37dea34a0f4b4c40e02a8d454c8841809481a5def1ea2d1069414e0126b1084d841856136290fa229c10e3e703a6efae1dafa628306bb55edde6b710ebd75a6bfd0da42b926ac11cfb31a77ba9bb778139dd4724393681ebdf7a651f478137d655de48805fd7b7b9d6fa32a66e8b57dcd91dd3f524cccbc6cc3badb59dfdd97578523ae7906064014c1203a600b6f08287315060c619165bff159bb2bc78a8e55bd19d2693873c532693eb46afc707ebca2ad6292c0ffdafacaa2ad5cc754ace39239387fe9b06d75158c6649d528783890377dfe1b0340583ead60c546375c1fbb5d31e1f6b46a474ce499fdcbd830962c99796ae8e354ae53cf5ad9cb09ebc40d1addcd05451d5ae46ba4ed9c000d7e94c34ba62b9965add4a577ff22829e90e363d1f7ff73d9ebe5eafd824ba5ca0573dcff362f4cfde44cfb2baa2f1d240e9c556116b8a8a52ea45fa519f6a32bfc0b5e665f6d532f356a76291217a7ea5a24c609b1def27f8f33dcbbd38adc74f1ebfe3a7cecfab1dcafe4bc2bcce05562c0f41b05281d50aac57350be40156adaa0376360f73bc5ca7d6986101efd0cd27d311fb0ad6a9786d791ebd8649d27b6edfd2f363e00c1456a7768fde3e05ee9ba4e76318590c1843c279388d3c9cd5eb5e89a4ae7f45e1d76bfe7c581486cd2c8b55e6fec5e54a05d62922f01681f7e6a191871ece3be461975a8d1c69e2e6b466e8f973a9d65a2fedea14adb94e5124353d248d171713b89a2cddbd7bfc88c0d1c2e8f8027b464ebb47481ece4b7ac9586488fdfb2f136cd02e97d4344bb226e7e9bed3a2bb7fd124e14fa70a03cda2e097f71fee9df6faeebb28a7c57cf75dce69f8bbbf2f3a3595cb41413d3d3939c9246db13cecba305243dfee619f5bf0b0fbcfa51e06c460cc9327b95e95c8b978ad2a79911b39129697adfebb52b1c1e050c4e5bdd0420c305431815120ce74805c16527801f9aed328cf179e2f3c5f7a74827438345d8f62102f3ea10ca684ea09840558feabe70b97c041be22bdeb91bb2dde1c92ae55221f64ee40d480c955a2e944390ffd3d80095d290ffde6b4ff073edf0e9f2df2f89743acdddce783f6c779dd7073473462bc3ef880a481f767d3f1e93ec6ff6c5ab67a84350e4c490f5d715558feae375a3e203808009000d01152a9d4a35a44ac7db6cfa684769b8762d87476e4e0dcc874d8d4c468666470a703c3343d4f01e20496ffcaa935e7523ea3fda7cd69b116a7b29cca69512a0a2977722ccfdaaeb5e710ae343a396d7b94f6777f8f92ba26a1b77339616a03b8f1a4c46a27cac2a1fc7f69d19f9afafff7dc3ffdfd39f3a3ae1d769f97d1ee06afb8b3af4d7b7525af8f2f96c9708e5cbaee8acb91965b13d192cdbd2265ad21bf8eda5b6fd6c96ab14f968b85f230ca43af376f05fe69bfb62ac78ea1e7e8eed2dfc38aa915e931acb31fc812aebfefadb5d65a6bad33cb15949c36974c26a41094a404494c48c19ea1e5bf10e5773dcb74099a312ca5ac99090c2f5477f74b03a517c71652f050babbbbbb9be0a150cd49a0f0fedff11e39a5e5749f59e6a19431c15079bdbc498b377918957cc9c328b32b79a863bbf7adb51f342de8fdad31c829b5d67a2ecf733ee5a22f2112d644875722b5907fb9473dd04a1d3ec8ab6a3e05c302be011f19c024a6ed7dd7b5765f9de43d90494c4992277281989621c91371c007390d11b88387f90e3e279c08fb3585dbdf777497344dc222a7757494c2a2494b5de1a4a3d4154a427494dae2455f24af0d611132f3d4c8ffdca38b7471b019bda9541445ba7bcf993cef635f0720cc77f0b48f3016b0cd66b321914e7cbc12a9691fe4f6de6e9187f412d96bf3906e79486d9f170fbf2cab2b0f29bdd82a625179483deffedcfc4d359948b3277c71f7e81eb9aae490cfad28c6f643e461cc90873f39c6f6f321d924e10ff793bfa3189bd3963cfd9821a73de0e9c710394d84a71f5314739bb521e944c8d38f3972da0b09e734a108c68f3c9c728f924ffa013de721fd1918093bfff393734a9891e1e785c8c096087921ff9ac230128cfc8e8f8109edc8bbc9cc1ba9b2d96c7a267fb6979687f48580afad37f0be475a3b3ece998f5746f636fff3354ffbfdc96a64329b1f598d0d289bc1c6c6e6776cb20c3f7ff58e8f0f721bf0e76b40d9d730b5ccc7efe41aa6f691ad4827496efdbd0f7df4e7a4ffc70ff910fe83f7e083fc8e9f79003c08eff33a9ff3387ff3b2dff99a8f07789b37f242dec73ff8ff3cdefbfbf6757c81939c2673505a8a61729a92a71fd3e434a1a72f874008fc47f551990328240efcf33287974372c8041bf4cfd04fb6591ed21c402b71c8fb0e797943de58cf427869cb5ba6636cc8fbea9811e48d758c08f296e99810e40da45d20c8db47bb3e9077a85d1ec8fbb5ab0379cbb48b037963edaac1755d1bc85ba6250d79632d352067c8fb36c940fe3090b74cc85f206fac8dbc05f2be9a878749de327d4486bcb13e92f7d5478e54206f99eea140de58f74c20efab7b7a9e3281fd07f0afa3222f81bcaf2ef23ff2be11c81beb223f246fac80bc65bac887905f4e48f20779df04640f5ac85ba6f107b947b316009d37de38286f99ae0f80bc653110f27e9fbc430eb24ede3e61be47405e00795f0dc485bcb106f23708c85ba681bcacf607c8fbeadadbe47d0d9037d6b5af61216f99aefdce0a795f2df346f2be05c842f2c62ae42dd332efe373eaf154c7a790c1bc6528e48d750f02641e9fd30979cbb40e13f22d21dbd70f8823a40658848f7ac9bfe4b70494da0646c24bc7276128003d0924003d7d1b98d0922cc24798900830a118807e72c5d92da7c99efeb539ed9ffe1d721aced3bf443c9ed63c7dcbc542396de7e9db28a709799a91a76fe9db29a7fd3c7d4be5b41d4fdf5639cde6e95b2b7b65b19c063ebd235c4d1efa23b8967dfb4aa413f03acf7d21107b783f07742e38a05bd9c0846ade06d64488876c87cd0e233e7ede881123467e8cfcfc783bd75aeb12f29e15e24d211f61424268997a783f09b8634940222f04f4a51fd09d768c80cee4a17d1fa037ed005d8b0de84f501eda07418ff2d0beccfe835e659f87fd1ad0b36cbe245e0ef20e6ceee02f98e4836607202c0610e81ddc9ed443a606a4e2220300b727c52469fa234000dcb7e7084f275d31b307003d092200c56042f593802f7c0720ec1d00d20610f99bb7c4e92b8b74eeefd8fdfd697befcb228f4e0f6452b5e7f5e40bc4b42b6f269a494c2fe085b7200cff8209c14083eb05fc2be76a01a5b45f5aae2ba7d14f8bd3624f257ddff29a2399459abab0346ddad23d74946aa2d23b5c7a53fdf33dffeaf1f540f2f9a5819c817772c0c09fdef4c747631157847d579a9e115d47a926264ddd2acb951c1dc04e98510681a3545394eedec322c955a524b5c56afbaeb89ae434e9b428b585c869514a0bd5ae4bfac3d2f45d8bfec45806f651639a0f0690ea068051cfc016f00c001d6b3389e905e417323541f7bc2b88e779aefbde057b40196e663264870bb604e687fc0c1cf212c04798d00cfa69b83ae883dcb33c8b767f7ffafe7dea34217f1f3bad277695e5c6155696cb1580f7aaa7f77dcaabd4c0f7b74f51d11f3f5ce03641d3e20cdc54cf5ef3eb71d89222ae3bfbd97d216fc4c8ff805bea9fb781a180fffe87f41d392d3a6d86f33086a0ef8fbe417eeca8d117a6ef54d5f73e8d458efccdfb75f4c25de1fbfb75f4427ae14400a387b39c434208fff351cffe08186310235f03432184fff96fcac85322dac80701411b790f8cfc07469e8891f731f220187900fc8429017a23477a401a9890ab276fa98fe4fb4173f6f303460df4f346be48ed7bdec84fada7a6a6a6c6c6c6c626880e0f747ca083880e1f1d20e800808e6f4a874c2693dddcdcdcf4e0e0e0e0e4e4e4e4e8e8e8e83c07ff7204f8017cf606f8170b2bccbe00ff4d0100041f2279fffd0ff20eef7b90b78fbeb30ff24da990c2ec5120c0c7593b61f6267c9c250c60f6247c8f8bfa084b5c5989d0c79984ead98bf02ffa2fa417ce691126f4d3d3f33342d43d994984d2f77dc04a8041729281be40a63012904647180a3924b80ee15d87f0443ec861b02544fef57ac54875912546fee71db6a4f6f789805b6a22ef820b7f04dc521f792cb50bff8a2ff9cdb4c0fb9bfab69cb6ef91a64fff9bba17e3d751071f63edd5810b8f9b35e9e4e90eff01d17bf07106794904ca1da493ef656028e02ff232b0138e7c08ffa25fa31fa854cdd6553949d1d800000000c315000030140c074422816096e5799ee23d14800e69904a725c341c09a320c76114840c32001002000106100040a6c88804a0f2c95545adcafa285730a021c406f1217bcea3eea8eb15b53560d6d821643e5daed7c6ab7fa5eac793b9883e9687545f53a40f41c6abb5940398b03a600fd653d79f559e8398738d1dd97154910c2a26a881defc2c11dd04a2ace7653b7bc15f7c57b022b4a93e62fa62db7f32036ac62f50a5bff16881251098285790ea034c8e20fc37247de82220a1ea0f139058a1ebb74ad5d69beab4aacb6085c9a1ca0b6a7e15c380f69b7acbb04967717962c23eba43635c8fc8cd3efad59787533233b0be1a7d0b159684831670ad4f4db8e303a8d251067f515891cc1e51c7cd271ee05f386792f56fa1b4bca58930f9efac8b1009bd4ba3764984450dcbb2263e1fece6c482c475818dbb5ca3eb5352717dce44db6b670b32eb0c92331022e23e7097a167591c7bf5c9f36cf52132fe37c3a0e6e76ebda51aa1e23508cf37c1ef830ae4ca7d50b516442fda58a9786bace03518ab0f75363d6ac571fecdbc5eb1b44300ad9d3a9fcd446dec15b0b02a82e31cdb2cb7367ca177fa10caf4c8ba04b11fa74ba21cc56054855597ef6dcfa2099352ae54a29bc87ce552aec40ac1701d55c5f144dc1164aeb619e95002b9aa334a9dafefcd1c276fbdd2b42b349ef66c8b0857b62ad1a56da03f4a564d0b0086d37aa2e9a2cb9648732303d030ee1ce57ee3283cace4d78f657f46a041974263856851bf5f397d8cc607f6a9424c01ca3767ca5d0cf2e1a52f7652adb938e792d94df35b42a183b3cf2483877ac0d7639772fa2c27a46065e3a760d571a860b5f155b08ae8ec0350848fe7cbe750c4bcbd58715d3e2b0f565538387eae64498241e63d091a39c48a76497daa85ca225e9506165821af1db6a0952cc9b999b1a5805525c12673097d2eccc2ff414d5f7778eab3c778f0541020d8faaf3d2d2cb77babae71ee46a7e2fcd9c9b4f03706db2dc51c86cac2be54a40a35463b30108bf5729fe0cd484bec693cd7a93a0f09f60ac6becdd72120e1bbb2542ed46d12d3155136251ee79e319cb51006982959d09c6c771e61903d1256061208d52fd188d5b7d533e1d715ef97467c04a0f29fd9221e44fb41c38a4613cd6797b280c30587edbaa6451d76df161f3163100245e5a48f8b6e7ddd0db92ea1be71eade1c270d07bba08d753b54145bbab8b5f7aa1d50fabf38ee413e527c1fbe7bd4939d47a60c83ac13e7ae76842dec8c7284000fc8e6560110571bf1a7f2ad898ea2b4aba7af5a5013973611a101e70f4abe956e6f9762093c2d5c6867aed695f8917c247356025cb04a4efaabaef48e8b4e5eb2b69b009198fe00dd36683e7fce1a7dadd57fa68d1ab194bab71c58fa787c9832b2b2fccf325f6c32ffe97bb8994addc1bf7ac1e1dfe3c43ff932af31fe9d02109e389ffad802388ecb844efb97323b684579a02e42e78128b79d45086666fd2ccd52d9866b6a7137e3baf2fa8168f890de71426fc7ac2d53b979686f64d351458eda28815b16d7c5485f5552e9e5092e98e38dc71d962ce9f14d9b83cc476da52b260e90231ddeaab6e930ae71f6c1f6fe550633a31833c4f700148463d89066510051ead24abb3c3ab7c9f828b471aee086b4dddad4112355d80de0b359a3661feab512003b83c8a6b3d8d57473d01484fc5a094e9d8bce7ba6442422a9e626cb8c14c04772fb03644b8b85499a5b374b023e7c8cd6c0a3c2e6c5349bf8734af465fdc667d9a8eae07143cdfe56be52c29627c174466c68c0d88b388cceeae28f02ba66340a5e936b46adde789897a15465c47ae40e356e6d2dcb7c4be2d58c5ae530fdfb85b3041e3e6a551246782ff4299905ff49c4aec646d175a125337669c88852423b0546e43615cfd406ab393875b479d950e3a783bda916d9c2233c160c0f6d16b1863b163987d84ed8773e803b72de26368773e4dbba44ade1c73ed3028d7befc30ea763987011948cc06532eed587add431dcde17167f6c65e901e55d1e1e706fd5b851a0674e4dcf369dbd4f1826057ad4f8391fba2fdae21f0ce48f79e9793e950133ed60149ecbbf8c5a1ff85ee2bac19fcc5599c2a22a223c18703c9428729968fed46431a6dd184c81784d7cf5f47bdbef3e817f69009e02fd82a17de89840c8ba0042f001931754c474f1bcc50bfa41f616de8c16d43eb4b0bf64b7b557dfbceb18afb172b9578f05efb56bb9966dd1fba14f6a5cea75f8b2e032b3fbe485997c13c4b4fb9cccc7f200bea65475f1c6d83a0138c20622bb741b16e3992398feee5473b5062a8577fc7aac03ac475fd9909f348f7c08f4b2a7326cc48bd09260480b3d3f4dbc9645eb202cb53b32e4c75204a706a45542d4d07c6ccc397a6d893551175d6ae736a96600386c650dddde81723d105f981e4505fde932904b6b55c5bec3a42912c122ea37decb22707c9e6a1db5917dfb0b214615d746b1a3c963324f889ad7096e59c755745ee41c7f82a759b9df55d58e7d015776232f83f4270da0f68ce49806206a2957e655e6ac123bdb0025314add7217700a71fa156fc35c0f80adc1b0d5163695ee9899b43cb9a28559ee236ae341695b99576e0cdad8f80aa82a0b8225ddaaa874f68e16185135b0f7b1a674b646ce071cc608aeed08277b8bb7965cd4ed4f8e394d70be190822378baa6ad716a0fc3fe8f8822774c8cb3d5c948dd2a8185a9907ede15788173f6fc078da67a800325686bcc94dbee522c49d50075ff33328940f66944c86c363151de21d3bb768a3d72f8897def2f3a1fc3465c25aabef4359af779329d1ee25ee147d487e2d86f65bc1e6fcf82194ba85b45b7aab2c727da7835931f731a29d2a1f1302b76da79441b8b1f5a36099fa239b035b302930f3c92fe19aa768323331b5820ae36e908e669eb7f7daf1cb9564d548bd460b6d149b1badbed13e1c41e4c834473ce9285f479f3b228547d93cfa5c8f10f808ab8f7cd18ff6ffe81190ea2790ba03c94c90b86290fc0ed21521b138213916d21143620936a40422d22645921c18697323e5f848f829927298a49a29a9474be284493a68d2e74dfa1f3b29d327d52194ba45e97b951c764ad619753d10a86e70cad470653a42131f62193e5c46f3cb18193335cd4c51d40c227a258f7cf3adb73dd55d1c1b68d0aca7f52da1b042f564d21721add4c7079bc55e938ff2002b00e734de4cbc3ae1f7eeb4df007b3efebfd6ba9eeb588f8ca551117ca7b7111d61cb708a0e30159c0d539b94c6294f8b0389481c76334f61a248edb88cceb4150b4af6645055e3a0de5d9f795b27dc1595618e51d814a256af91b699eeebaea4582b23400abfe40d2a713e9a9a285a97d1a5a0cabab46b0298bc8cd2234326c5783629c3ac930aa57449557e3764d3ffe8af36d30c86c44d0b4116e1b737fbbb804572e3b22da0d88baaf760605117853d890202dbfdb68f2d27550179024d3bdc4de3f7df160452a16d9a30ef1a8b638a2976f65caab8d67b1b9914554b72d44b61ee258faa4fe052e10698cdb0d4d1cbf2b27c7e5e0afaae2796916adeff1b8782aa93e5a14c503868c382909ff1ab44c283a2b6da01e2781dcfa9aafdb453546def40db0e832c6107ec7cf4ed25b6f69e42a2ef8190c2d92e95aa7b1fa1337df80714958e233c68f126bafcc03775a8d9cccf242b92f409648d89f1916e47edeb463a5070af1d40830980a6c0120899f7c4dd3b308ae5a025c633744850589a9d881964613d0e4528a05643021df5b8e40032c72bfee2d5d8687564c92443624d1a4017cb683d0ace2b8f13b0a5247937747437fd2c722103d4ec0b44e1ff78cfcd5756363f219719b60991cba0700d8fa5245188dee4c4b420315c80e680ba851acc51fa25d85fbc4a93ec2d8bcbf9d0156a24f11342e61f65fc32424270f9cd80b4f60a91d58c79cce89ab960a49e597f72fd2221d067f5667bbf80900c929ab279533b130dd473b1e826f7c31eae73c793837141b190fa38172300b4ac7a6be85dc5fef164274838acd58caa5795b54beb0286830384cc96ac053fd6aecad4e66b77020fdcf3b13f7fd29fb0d9ee644d3bc7a75d55b4a521b542d497a9327d4f3ebb5090fc3b8afc5427dc67b42947ff046f6e32efde7393ebf09dfcc9d453af0f3fd52c9f96dc1fffbf42a7e1074ff07d0fd345e5c9f59dcc116c118c4e6c7bafbc18348ebc8855335a46562a6255baac9034de5bc1f07bb398b529f08684970d27ebd3a1f444c353307625de40c2c0cefb4dcdb7909a14a0066787a01c50f6fb9369c22857b72b3087c5574a8fa1a3fd8c01612c2080f8e893298c09c48276dbb21d8b78abd91fe9476ceaca525e91c767730e2a81d655c109a858563b9bfda5ac88ca2cb614937979ffa64053d55e5d5b154ca9ab61861e1dffa5e4a425187605a273ad3499027196e124fe8d5315951314a873e2bae974c6add3cc76b2349714fa3c4b54637f87eb97571b5d86577c129e2fc3178c55a414350a4c8bd8c97bb90232098c1d3f94ff49591e7f2fd71aefc4fc00f33a4696fb4fcd32560f7905745702b7ed55fb5d45a83c664da8bcdd39ef6856a432c5896c27d11172f0e8664c617b81d68709fd7f81c4146e47388088223435110c6d09dc9f84a2c08921137137b5bd43ad0f869a24f8232293bb0f795ef07e987930c1c5e3e9fd8214c37088d15371442d5e7da04fa83e4c67e1d89571a0ab6f1a0e31f9451ffa67b22613427b4ab7e74a4f3bd387c013dbbab7e7e84512ed6ef9c46623729106c98ad05c06cd4a04bb390ceb624e97308926ee2429dcc423c1454934d4eba2e3b5c2290d8c533e8bef697adce5a44a91ed03a9329a61b229cb074548f602000776a13ca80bea8438a06ea82bc2dad515528363e5d35de697c0aed23c9aca088f0c73852610acd900e8a174b776c1234d86e604400e6ea75096399a893bc90d40e1cb9194567cb49d4a84e79f84aa89f0553c0c888f6368c7f20987b75f356e1f8d3d23f654de05b62922457ca86e181c261825761985f2468345ce913ffac38d3c790c2a6ac6dd64fdd7ca1a95ccdb9446b158e26c0e8c747d4e7202512c1208f0edb6ecc3fc1bf61edd1aa89d27baffec0358382b0dc8e05e8e9b010bb8fc8038e090a034d14b940c26144ad41615c6d06dd789920429c1423b032ea0cc7825dc80c66f993aaed20f3cc9d953d375de41f424d77aace160fcd8d010004e6434bcdafc9d2340dc247324f643dc9a215a2aa2bd3f0f2c91e92628e1a254b6016a68f0ca5e9e0073c899a30fe11059db901db29b3f6d301f079d2953a1c0171384e756a0a125ef16d4e0973723e40b7397a18216c1ed55c540ead13c65438db10fa953bf16b50841fcd9a321e1297da3918e8c6177b8e05429faec1c6341fea07ea001340a07afc0352e32b6b42d64880aa7db2f19287f32610d32856ffdd7d02912256bd64b2fe0bade78ebeca8cca72d51a011481d42a2377416589742d9535f560d88be5761556a4662f3e900d15d342ab78ca3b1a4209ade193501886e504ff05d88c4be94a2691b19ed3bd9d1c55fb3a341752a8e76a7daeeb2a7a6370fc8ae096d197d9a10b525aa9d8cde1c447d57ed0332baf391d385f3baad2495d22ba3bbef46468357e94c4c229b6a4d34327a2c546b8553342227a3b542f0e7298156b3b604e2c9e86aef2da3d7ca380396ee44a9d9e693d1e997e99b46c4a1bd87ba349aa1a2ea25e6cd01c35d2e38b12e3fe778d54046e8191ce0bbff57eb601de11e5b8946085284212042a0376dd9865e32e4f1f7ed639045401ffcca62423708fff9b898c06fd410899378013ab0d970cd0150db581b623c6716bdd382b92c4274030742a4f010e6e2657be9bd7354b57db75a6fefffbc594b897431d4c08ed5354e6341634589b296b2bbf3cda1411fbd6582766bfb8ab02e9fa2f6b246980552029b0e096377c6442e10598561b4e3fa8ea77fd90e6c42ea63b24ba77a520e5e018af8fb13d2c0b4f0f1bfde60fe18723131faf3c3211a9de91a287da7bc6fd54cb1eabe1e952ff7c0755f2beed2075fc1e50b43deef3e11c7cc7dad102fdba1b53233a0d725c98a3d3c11f48df86eaa76fc90581929db9d59d2033be3fb58def7fef0a3deed16ef8fe028e9fb0122e1f6a32cb565a620dbbe10a53197cff9c21f9f7dfcfbe519f251451084fc642c035a2a899e1223c565109017e974fe99ec7fef5df4a33554e26d561300a88a782041f1169e715bee77195df8957b5c89cf4de292da70984938e115046a69d0a56d6514ac791dbefc01c278d56a6e0d5c64ef9abdbd57a52a8da8e96e454a9a2751b10e48b93a0140d1ed0dad805726a1c278aecfb735f695bb5c6c8d9f872e22f8b707e8c790317422aba2ea540daa2bda0d1e847f0838638238dc1589ba10d05efe7e1254e209a4d9423c37f74c2508290603a8b4797478652c090a3dd33a2a932d3632e1a5983835f74c0457d79f19b5c8269202b3a2271c2ec77fc71f6c7cbd4c53505aff031a917839cd6142f91f90124a939c7f505daa31397c561c3dccc546f5f3fdb945184a7a4123c1b181b4b4a903f40b8e181f2b685c2dc88e1a421e20ba162170c5b4f075248d6c725a38d6983d7da07ce947a5e0718b66a2b507970fa3d68c7cc9384333ad01ec451aca0c8d1da56b8ebd342c41c559c2d01cfdaa330a30bab514c1cedf9f9245d45f482ea82f4a85fd5d78a4bdf847ec3a7deaf115bcc877ef8e876c6710fda43120420847a65c8278496e456298a94d5f9cad66a24e6f4f502dbba11c4b0f06150b122e85a942489186cce3cb8f026f1aa0be9a9f48071af7d6af75aea1a1bf51f6c0f310bfb0146c2789eeee90ca01308ac97976adb800ae6c73e5749ebe5addb6bf07e9840e3740a91ec8f0d05faadee92985135c0a5060f32e17a84f2e82190ab28862accb03f4615de6d59711557bf4e017e2a82c6977eb4f961e0c785caedbb70acea4c7b98ca242f18851102ef02e85644dcd82b792879b6ae9c3b2c1a91baaec4dde3204c8b6e745806c2d254fce09b914b4bbdbe6e093f258a6618b0716c28e4ec1c55d03439b70ddb03f2c7388432d36b0d46e02a1a1178a9a7a89e03e77b58ab0cbe63389ae24b51c2a3fc8a87d19bb166acfb3df15a3b9499ea11ec07ef0950f17eedf33ebed7b50c5fb0da7f23938786246581e556c108bad55d3f6bd707a123061bced4658ba1e8c0c760834e2b91655b571658e57378a7057d85ca22f6f759da233e63cccad9f0d82b02934a33da64628190a1111f4ac87c40eec42872dce2c2b0084e11108f025c660923160dbc2f0368700db6698f44e23f0cba2f5d0e0f3a5e5c585d2f2d92f08d95caa2275e476ac85beeb45e6904449a893c818d0b775baabeac45b4bf864098579efb3f90df1a2da39d838a660dc169d3c972392f6c3bfd02dd9799d61d165837199498b35b3510ffd7553d00b4ace278e962a12dadad7c6c81cb33f969ccbf00061339cc066f415ac3001986e9f86121175a62d5c9cda6723ddab1860aa57f2f97e943404c64d9fccf8fc778f66e7b629a3ef9d26bcf1763b7e94e372fbe9b26961b5cf2428ca6f81fa825850d037bee0f8c4713cb4d8e52b9d19cc2620454c950f57a6c761802b8b26cbc85090e90453fb6501c94ca94d69329961b782ee6accbafa71f3ca5c44e932c8f68780217d162c32002b3c8be4c2b500ebd76765450f2f2ca5525d8b24aef4e3f41edbaad5a3c1b738326f5a24f174db9e4754479fced67fc1059acbd39f2aff0ef2a22580c61bef9a846386bc28577b5ebca872d185c70e55ae586e45eeacd0f6db360b761400ab08ed41bfb8321a5a8e6a81af7ea3f91733b54308e04c44c6eea48008337ee551dc8f0667e4e19a20a971f7e3dbd1337a0985a5f609a72bcc7c6c8a9e36a34e253b941a3a407fa4d266d84bc66b3a25681f40a597ff0e88111301de0972a95f6ab955a038f062f4158c4d25ea647bddfaa9b2650cbaacd280779d7c55f910c28705a672021521470912b44efae412b23dee2987846db96930757db192d9851976c2c86d00352445388e6e6a4c9b295d4874c4b481f7b3c21b1953f7db922bed34936d2a863c078bd6d03fbdfc8d2e76f9feaccc16fda3abddc4e1805370a32deb420f1a35bf86a5a2b54f3e5550e79c1c6fa376207f3682f2ef25436b73d325b6b91e3a29fe6cda7ff51109893dec191845b3544fed305f724b00e1da152067680ea69d0b4d394aee151c8fc4adf0b5543b2605711577dd09814503512c5da030add5e05d5e524b2c227b57ad018446a84f7e2c54ae6fbe3efa87555eb2d4f191751ad9e1d747c1a53622af3d7172d46cd69098b8d51dc5af0a30dacd0e99e1b4c507b78da5f33ff27b0f997e22cf232bfa525cb046782dab2eafe0820a2c41477fa90a3ca4b5dc9a87ecbceea4d59be281d1c582a1ff6250270412a0ec26a6f908ef11100001988850a390c083430a48cbd2dc9c6121b623e139caa2e08c7931f2c915b8c0916c7a14245760d94f51dfac491fbf056ad70a7716e446d817a2496e4b536b547647556aa6adc0997f95a2ada9203fab345561f63151ed5a94976d05637bb08e8a8714fd0b445bed7d9611140193cdd32a710d37ddc394919982f0aec9c6170b9610a055344608d4d10e1426f74a3c88af770efe604a6e272c2fd8f57ba77176123efa2a79647a3618a1966699fa56ea7d7e0024ef41938e4726cc7ae7e3548e834f68a41668eb6ba109df86fe0aff85d9bed041810bb122cb3e5d2e05b22df1effeb43fd251aa7b91ca587174c8c18a70bcbd9265caf28177cb0bb5a19443fbae5bf9ac43ae258e138e5f28ed14c7630c21e7051698097d6ec01f4682d840b0b0551e67fd0fe9fdbbf7924d6efaa69c0c35f793e626927ba3e97604181b7311f32067b17ef35f5aa5b75ad9af259aee0eaeabc71856050f74120b32a3ab4b16e9f91c77fe7b7b95cb852670a8ac91f72344e902416cf1e106664f1bacfd27b2c38ff8bddfa82be2cb2476426ff308c7159db07125370f28c80f5dbe81be68069fd0bf714b357463e77ab71cc7751517591e5a50aecc24fba30687a62b10328fee58b47bb94d48cf799c5bd363a47bbfd5c3d0a07b981402b3b83614d1eee95c25dfc1b3ff1f2124824b31fb641ea6c7fa606380f8dc3e21a0e9a0c278c81fbbce5e4338c3ddaf0d06375b0fd624c09875350936c9ad08d21eaf7a9bab281a6c7d2094740303706203a001c392019c4f67122891048318617ccc4815777e122047343bfa1260c811fb8401ada354ea89a960b79b59a579c07e1c0fcfb7f381ceba0a521b32c534f9df71d3554b98902338ae7ccbd2c61a903aa2fd671eb4b2078f755a0641fe9c74348b717e1036501c6e61bc560295c06641e939ebccf4e9b6021aa39991f6a2193fc73b44739008cdb0760b81542a45b343280e2f1789661cdc282cd333b5a1915b452ff55c1f961796737d423454681c070df4b1677afafa83dcb0a64b5abdbba1088b5a32b851155ac66415cfa4dad193d3c4b8f436b14f1647f44abda664d69c7d17892c6bcd7759164f9a76ebb8059c3dcbca6bb9c07f55bda702befffcfdb885fb1241ec46a7cd58a6e9c09edc8b23fb111856433d4240bc843e1af5d303d03d98aa4192022ed6c0d40e15ffdbdae9925d3221b8c150e7b564eebef86d744924fc7a8c2e41b226d79025ead1c5e6d6ebc80a6a6960a1e2f146c0510c26137cff2b7c9da443f62901b1c1a6b0c4e5a72b8a415adbb21788e6881e1454d53de20310851efbe96e30ce40ac03432bd1494f9e004ce321a86288160bcc558007fc2e346715d8a02f68744dc97cea3b271e24189847b4aeb40233d860b887a0c938c9276b78b3b2def329b314594ed5a18d94cce2ec4241c7f7112fdb5429b85573c23af332712c8d86265c073ed730453ca33c90d2f5b50b95f9f1204c9ae2094333438ec51cb2810404dac3429c7ae0d58c3e87aa01f7dcb09e6b46f2e8ae484e03f241cb3e9d2dbbe62d7beea282572cad5bc21c649601098e92c7d5564fdfefc663f7edd8e4614f7d935f9f2859001d362cb974d9e20dc918e3ac7a83f50894dc887e039b8734d758203cd719ef8df58074d9645fe155ee4c97718879d4ca43a96bf39905af2b6d6fe0e990552e8db98e8e6e0a874708b3339a7a00d4f4584ee1dc8362fc44055fbd0d23e5fb5efd477dcdecf703f244ace93d503e6ef84d87e11c8f430202c811307dafa258b76d7f7be674d3dd336fc15362c39b16fe6c2cd71a8306fe9dc9bbe5949a2c40df1278802311b99ccae5740674f330121a029d6c63e9bd291be89e75ba17ea095d504f9ee3d66df174e9a51b673f8c832d0f0090b453a0fe8f941f92687a1e92284b5043042f86132270118bde1412475a69c68e75513b90601a0e018f43caa0500dd6692b5c2aef91fbd59402993797c69a871cc2762610be69b3a662ef1bcffaaeda2bcffa3e88a67227060c75016d3a918c54a704f72c415f400f9025211f0eea83cfb03764c703a58f353305a8fb3de9f1b6642314df27da84a2781998015516012b56a35d9329c102ac04f7a7b6ecd719ed2a246be0fc4d2d4274fb437b7f2ba986624b973a65c1a75b6b03f43bd2e1303f8862b4a4cf317887e9fed504a0fb878bd1f7bd9c638fac9fe90df0314b4a88b27d181667b64420301dcc1e81b9987a5a6a83627e782c98fd1f070a28d70e4446bfddc01d151ec014dababdc1752a0800da1c3542b5d1e1dfa1ce00449764f652d9f8a92ff1fef66e81c91c0922c7220122180b981c98cc79562f2f9945b4fcf29359be2583a4fbebb73a0b2e38927ff345cda9590c751a2c7ae8cd156e9ab16257dd5451a3432333a2d6100bab78f00a80a560059c8f60b1401106b0f8ab4aac685984c358d556e0fecb4ef7315bdf39e9a5a5d99cc18c0bee634b9179b0d6aadc2beec7b315f066bb0a87573a62ff6f8eb028dd1e47b46b27833cbf698bfec610c40384c5f2eaf3c9691f8fe7551831ffb8b2068fe7f349ac87e89be487b6a6ef1cdf6dd59d1b091fb227dd762ee8812bdb9c1b6dfe995e0e3fd59ddcd587ca36af494cefbd16ea429e674d757fe977fd5c7a381d34e5b8c9f5f6cfc8c7d267290c7ec088ea45971043d1814597c89371543d293a06c1967ab898b0cfec3a29732c4479bacf7b05b7d134ca743db6d559132bb2f3e2ed91a266de68f8aaae072e9a0cf1cd96777bf974a084f9d7a5ba9724d15f3053073aa1bedf00b158e544f1d59d9d81ce96f8ae59c99a8fdac989cff3cc67062029031bcfa670f6ce54a33868ab9407e3d41c115a9332dc2cc566510edb6f5d4fff064bc9e1b66f53e014d1e39e53ba04a39cc2ce886a8344b535f18f549e306e9928f4f73c7a944f49f281d0a72b39ffe3d8f3e42bee56b780fb85398e2d6c4d56cd739ca41ee8aefcc064b7cca4083baa7e5ea5ea5ae3a8e7ce7d479fdfde68ce3eef1918c491fbf03d3c85dbf23624e9d40c7877dcb49a92e35f783d6fbf7088deb6258b7c72686e877c3bc4765f3488b60cb26d6bc72127d18516e10934c015537ed3f2af831f9ec8f2d9d3c41786081a893da6b91cc3f604520b47b9aefa8b54e64916e4c0e6e8e94cbe80488b1ed8ba403105e416106cfa0c2d83f9e14ab2e68ed59887ae4dfdffb71ac191d9991171f41e6b5e8d1b983904868694d189e6bfb7e266ccce25d4b65a365fc2156f929ca78747b913b77971b1a0d3248fbebd58827f152cdc5316fab2042e2b5b30c3cb7078ad566b48f165d3fc6e25d5f1cd1af267902e502a0b62670e016c88fb5c1ff4b65506a69e20bd2668a4878e10c5e4d6d5cf29cecd888e180ed70e08e3e9a5f5394adcbeeb7d4a693d6fdb26e6c5d3ff593e8a5eca8f99e0bc85792df7ff4c2acce1efb1cac7d8931924013d8749d4a3314d99866319aab354c4f6ec03ee9512c01c563852431e3a9272234146f61795e966c9abe451c6a00686db55947300fdc65ec463dccc2be4d44de62ed52129c4ffc2e4b2bc312c860b6dc8fa3b58c9ed9acd42b897b2a7055f69ef2ee8852ac20c2587f87ef0308fe68a36b3a9218c7217ee12513c3575565092e27334b9f6958761d3d5fd2bd23b2adb3713624e638ac97d59bf02b3d5b3119f4cea19111349b0283be8f253fa9310c795423e66cfee2812cc09e1a2faf7973175f9d43d41a0386e4c77033b9a43baa9496828c0943ce03bc5af3dcce361d340a9cda319b4472bbb1df4e37ecc0c8aa05547447504725cf3cfa0ba421a52a9790dd7437531be2ad259efa5eb5d208b87da056ec608c15bf4755b19132131fefbbdfedf0a363f5d701f161554a1d998ae9af794a6aa26d47e5f3ead6c97bc8fc87b34fc9e636b0275c38aa79578126cc07cad65b9003868fd2c76d9a81eb081c375ad53180704de5515a02dcdd99dae4d51113e7526e50bed7285f283aed990eab23f23b8bb494b40127f4dfad432942f74db15ea07a2460daba88d1e08e85e125a54064f41faf64cb5d7a0e73ddc96596a449629110374389009c6fa92f8b69c4a6cc35823236ad870d84b0e8b5743f70d4e2831d695f437304686af9df5a0139786cb371823869b4d5ca84bee6b48440c9f39ea4537ee0cc7352ca2845bbbaa38604009b33f4fd10bb7c39f36ba3e0096210640f7c685bf1c4e5fe31bcba57d91bd512e6c17be9d040dda770fe5983abbe48166fa7ca375f05a2625095822c792602fb496152643ec9f5c83e98de83dc53a466cb4b7fea1858e8aa9d7a7e21e32f0c79eb3cc64ad4c18e039e008c5e7738b7b03268ca650f2b4ee3fc91ad94cfc6481aa2cd62557aded046e6d7de9f948652291e4e8acb24f820f72a747db858d2c2649a8a0974977aed4ec5d2129c8d8e015392bf52c94711c3429fe1ff23c7398546565adfcf74c2413e43bd21bab8e41be394c896d0f59df6d7b6d836457e56f6317d27957eee817ce6089a8eb77cdd5431506eca519906bc7aabf47acf646ba9d9d82de0feebab1c467d4c5d06a5db86de202c6c8aa1ac5fd53414bcfe9f80897cee60d2d368fd76bb48980a71350a6f19f472f110b4d55928402f2a7f1ae1e6b0d117ca108f385af64d6616eac0221e47638bc78f08540c85044f2f1380d44116056fbcad58a6f685b714ea29b6783314bfff72b65ceb5b72b444b6d84462c075a1682d806bd11ad9ebcacac0ac5231133dbb4937b081731b3d69d8b71dc9878cd483cba66d36f5fdd6763103031dbe8fb907267b5124f6b536dc87c5afced1a32f769e4530c57b3167052a45121ae2a2cb97ea5e3261e00459b7502d57dab7e199db4a0cef41112a20981769f4e2764fcff6011ee9c784c0e84054a17d50f7195eceba51ef2d3e1da7f4e0e2bdeccaf681c9f101e6980a59995dcaa31d140d99a0b4212e379780d36ae00c1b3cb9ef436259aa0882f139e904913c6bad986ed94e6443b6256160d2c1e408bd8ccc2c2f643b0bb9d5374433427c3cfd12b716a712a3dd666529cc838810b9bd115a5505a103b88adf6ed301a1e3150a4106aaa1d0369ae824678fa8b47446321f27e5ef7d83715a341e24128be0fcc8c63691d386f9bda05c64dce1d048f5dbd0fade0351706e3eef2a5e48897b7fe2acfd67655281d226b7f60cd09ef5863026c30e991abde5f387f5287eaf471f5413cd8586c9f82bcd70b37e062ec7c48a72f9447c50e768f230a4f6b6f5a4d1b41379afb5fc4e1a9fa9d0cb8735faa636fc1b9ca48766ea83024d87708ff830a3a40548feb7a9daf271706db03d9a9e17be4a4247ffef6cee34cc765627538dfaea567d1259592ac9058ee4bea132ab3800d9056854871790c529469fcb12ed0a946aa4ace71ddc406949c78840d5adbe6d517a04a509c74fac5c4898f40e6e4bea9bda102bb1968b04331c980dfd11bd03a355b446cabfa20ee4e522c3d8507d913c37fecd7439784611384001d0a2f762adcf3964b5b8e0fa5ab8bbf751a556a265e337be4545db7db260293305c6d913f4890df885e73faf3eb9d37fe6c749724ae673771f0c870d0a00ad98de906cdfbee768b146639216296bb9302aadf05bcd9abb28db9f0c2cfa7918c8f51c92ed18f2a3c0c1a6b5bb6bee6243682e7fd59df198b0b4c2199cf78ca5f0df921324d965eb0909e028970d1c091cb1e81fb26cf8a980e29a22fe7858f9dbdfb74439ac6e8fe08157bd683d1a5314ab5f253c8ff821134b604881a734e004b5f347fc52a6a6ca467f6188d494dbad537a9d12b985c5ff86140ce3c957996ad8b441132aa30b412f3fa16d181af4aaf9163fc3f9580a3880397f723088e51827d189c1511126a66c9909a03671c49e86089a04db1f43705882844c1dfb2053129da720108327a6422c5a25de237ae950ef18801682b9e09befca21e9591ab683a16dc3aab85993d8f3c03b77dca3d37755e376d4f0944eedc54c53fa7f6baf8d76b333ecc21fc515383c9b55b3728949c4cf6aa420083878cd6d0261c4b3d11f1393b930616a7ac2bcb6ce55c5736a70f12a32e5efe42c94128dc8a6f50caf99e5bd7859b8a736b817d392ea75316f6aa5aee8f38c9dbe0dfc490b11eacf15b29031685487dd65adb92417ed912aa98cfdc7e3932bba483ce3a2181a1e41a0f4a32fcd262a0722b941cc3fd0f8531124a2e07f22210e7591875958c297bf86d38c929ce8755f710af2c98b31751d5dcf396bda2482d2c8389d50ec2c3042239560cbe0bf978eb606987d26d83589df921f02c00f69dff23278d836912044172df73c91d2041724544c77b48aeb8488cdc99fc8ef4ae882a4c2a446eb140871027395c6adcafd5319c20e100e616013ba113940ce163aa5117cda63a3de2e8fa867e80fe6433a57bccf11f72492c48e40599b2fdade1da5e8acc97e4843cb65442b99eb511d4394966c83b4ac2586434a8e1e49e221c92d3481bea8ca8a50fa2d5b90c4fa5cb0b331abb8b6cd145cb0a3eee23bf403281f07783c9e2b84b113b96851a05383fb7c38aa1d09185065c8312f53b07ef1b33393809d80efeed8eefbcf8d1cab688a5e94f01ad61d35915ded55e93600e236f65be667aa757621e82c6ba62677b503bb32756d470206920157558aa6839d4b592fb98e8067643ae8c0f7c903eaa4c0ab2b9bfb27e15a054a4a5b4922561fd703487e59681f3d06859bbb0523262c5df18dea781cdd283f081f803ab3fe4a81270cb5fa931bd53ee30bfde82444a7a9f51839cbc15e3946ad046caa35ba368985a7b1cfb2c680099cf388712d3209bc7e5c4a72008f4577f92b723b940c9f5f680885ca2641e331ad5a0add6d3323ba3c2f4eb3c131d44985c79b8547c575534b518569dc97103ee4aa5d819902c5a273f1b27a2a764689ac85fd55b914f78e661cddf1b96070dedb9e97457542e017aef0d1b663129eb69945e0507cc91537eb7fa36a7d896e478675225449a78f652867ed489c37dfa387ce8008d2ef50055ef84ed4dc8547af2293c3891c9a1bc0754657a7e46fe80e4404f1fc384272229a9fa1cee3791a2e4f45bf8c20d34b4d0832a05dbf71bc3123b95dea2af70a2e440b1c4802a5f3c6aa09357e1a789114a543f84e74dce5412f221ec3c818aedb3d121a904c769dba29692b6104719ad313280e678e89b9b25a2df8f073247dc317660489e369844a18a08218be505e4423dea0c3b42a4839ea03be8f192294bb422f2d758f4c80ccbd87d4637797a34f8401a019e459fae2374a9a85752389012693af215487d4b457859189168e611c8326b02360aec4bf069d4a98d5d257008447b87d0f009be9e94815a7fa2ee94096a588feb1e7fba8c900180d0613ab26870ab24a4a8b67b43fec0576146e050685671031886597287534d0449af26a021972df1489c451884dd9593cb8db8dc1897ab38810558bac5622b3cdebf9d73c07714be69799df7a1833051a2d51a07548289d2f13f6562e9938855bf274e75409d204b63b6b812cfc1e21c8052ca0c76069c6f0ed0ec1d3296db0af8a5d6b09816462366266ab43af4bdaa25bb61d7206fe149bf82c46fc07399d19e8ec1e5fa9d72a7e0abc0dc93cf86acf5131545faec04d716d97590542de8ee47b1d3aa4c6b94847b8dde153cc8c12b218576fbbb7b9aff93ff2cfd9a4726e3652070244664b3747671dbb932c113de57f57ad83534b802e5d79bd5d2b2b7625abbd5b307f8ad4b86c2eaa991cca096b865660e297d92a60fae61937608130073d9b9c7ff555fd852083ba951a2a36b71d52db734fd5857220538c9d1582589c0fdfef827b25ba5ec5025689b40b53a7b185fa5263585112db56deac83fddaf5f1c4ad548a223efc560268d6c35b4762e607027bb8ed6031859b28f35d0723bea1f34d7cf32352db1a23ecbf5b73b641165ecbdf566ffd58c93a7291045d321770418ccdea547b0f6b7aa26346bb3a9a73f432a3a2b79388034f6eeba0b7da24196293d18b25f381682b371e74d50cdadd6ff7ecd1c21ed68848e783c1da9c3bde26d5106ba69cf566a6f5eaf2aeeb2941c0af5901b8d616501acacc12b55bc1502f01ce2b8d4acc1c0a7620e3907ab648431f6243c3787c17c8d0710cf17e586cf3225099d8979d0bfe44764b5bd088c66bbf07837fb2584fd7016471617fea13da696f11db22062317a77a4125764acbb99a4cab0d4947dc0e3c1de1beaafa758cafa5d435ef2bd7a4685ede7e80a4a1287fc3cc0548167734b8024282072ab76357cae431001614c841b7b1d1dd46ff8b6af63acccafe963b2a5168bd28f164927922c407006fe2c7d52bbe2a3a5ede839c2a7543a66813223a12e31b84009234c5583942da53aa3422ffbe6d5249941f0fad5ea995b8fa1b9abf9312fb9babf668c6ee14bbe522ba81eb71c92a8ade59568a13b78cdcb43473ad09d0a26dae4b22eab986669737d557b95a9a0f5fe989d026f6aa0efd8967b11de55f45fd1c84f0bc1ca9ac1cdfc8770cdd7a1c6a282bebbcc1b35024d5849c6443fd6ed92587b3307ffa0c138b7b1eaa1831b73ea182505d0462d274a9803acf0ca5ca66ee544223141469de5f3ecdd2e36a73124782157213fbbf33f24ea899a3b2f7e4ea4c29ca8707a027d593531d13b249b5030b9644afef0bc81f894d923f4d4a91237100c6279a5dd6b1279103a93752690ba40d17ab5f12d6a7b6e6b89aa81043dd6219edd257a5f140d3ad0d28378f1368d49763beb97540181abd9dd9cc5136c51da42f4fdd9210a6d4cc7828473b277342f86eeee1814a2ec072f773bda885ea06c2770014a28869414c721375e856805783cfd5dadd57253cc1c484a75bb72f8ddc545fa197a73c8fa79a45143ecf811e76efaa432efe8c9ca38b49691215adf6ace334474f7f7122280da6cd2880809520a693c933b86433b75fb51b7eb91c918895a3f843f643b87ddab5bb821edc38b4fd411ee25aa13ff73cc0f20770cff1b2a516b5a024d6455e0f00023633c1a9b2f08534e107c2afd5f044ac3b4c5471626c3708b237fcff98771d2cdf29fe4634d6093d8892624a6dfb7e9d5836b6597b8bd0ef849c4dea5a72fa87bf8f22eec8bfdb1bc4f133018dcc6eb98b2328e17eff85a2d9a25059f87abd41594e05b1c6d3419db6bcf1f04c53fef189dc93223da0c0fb06b1ab1dc85488c8b16b3f2d3474f246c8d7e72c3149da07a46aa4ddbe6d20d286e922f2299df5551538058dced82aa252f5aa2d0c52e4486c9451d2844e258462888ccfc0a8c5d700c6acfc5d6404c4c17d8e48c29f860419218556d1efd954a329c9c7bc5bc15e4f674bb9678ce389b3449c5e67bbb4da8fe99c11e95f18fcc91e3360b5491711ebf89f6c30a72c394b3abc64b41e237eb9372b624407cdca595853bcea81b4236b0ce594328e1022d15977877b2622a9dc52335fcfd0b04f20ff8d0291d9fc8aea613c21a0f498a78c00b2c5ada5d96294f63c8d5f0b35096ffcf9a38e6ec894619d59612aa1f01d5438fb566d3bceeaca3426dcdf30c69d3f8ad361c09b74e029c1bede64e1662f0a6c3102448a1e0446e52afe6e9359a5152f03bc904e9f389c6ee2967bbd8edaf1ba33267f29badd0987073a343afb8e36b1bc9e48e8655c558a34119f9ec8c2ddd21b3a542a144519a7a739190f15e0a9ec21b1042cac13b2d12ffdfd708fa684c4c5ed0cf1a9ce9807d8ac981d7d6f29a51b9b5a2f371244aaa675ebb5be3e5c53632db81b29166841dfbcc3d54d392838c0d1d44fe515856e81749f530c57d81ae8a6a055d27b6b5b36197c1d311a2f093f0050d20abb0db9090aaae8f43eb199341c8aaeb3056340f81bf97809416aa6e2fd3531668b7f84a4f6f6521b0dbccba3d88060c11d24c244cb9f07424a775b5ca24ad41648ecc9d0c08e26f29736f90d645d15752dce8935cf20ffabc4d6248e8da842c52b2aacc84843c49616b2510cfde6c8129494cdeee9c688e10ea50dbb7a6369d5aad2d6b0e70b7d6e34a5aad380f8f684e0f0157179514c3a5f70a4251f5543fd7a0938c0994c762461d07b85996b6fa521847a67eb8654efd620b279f2a334c245ec2ad33ee74f95af508bb452c3a870d2c33477714f0034db8283a6727b6a6ee1bb845fba02ed6963ede9ca608f3244aa29d04275b1a9907c6207b1680057ae4a200562e84e809c7dc8b3d463475c3b86a73090cc937dcc39ded51c3c5c21b207a6511a483e8f25f04e0ea753ffb8aed692acfeec3834219840f9fddf6e0dab35677cfe024910b4a820613d86ac03222e0769b73eda164b967b89cc9a630abf47b466bbea1b33f5e0cb85d0a48cc5d7ddb619845d4a46fab274849016391b05e341e3f6bdcf8d2d00235c5be94bf5de49926d1ddad708de20f98b5db7b210fb7a6bda1c0c11378af70e1f85f02866d4417c78f52eeba9371733fc27693139547a280ad8279f63038b1643038c7da66b538653c0427d2f0c8dbc93e883bd356b926c3f12aedfb1880bd92c24ae5b7876f347cefd928eee64d7e4ff106ab576cddcf99eadf7d85320392d9af1850ca0af41babaeca9081d9c14f2d42dca92e1d96d76a23fbaaf78f9ebabb0b7af78994e4b50147d18de246ebb5eae5b8f3c479771349e69077fa0fd610c396d8a1992890a4ec72177116d1febb7eedbe13b0d90b7d09885f9534944e705dd9819ebe3dad0adcdd0983f8a9b74047df62a0bf5bcd4550760a5675e09cf0c754f9e447a72f470020727ce2931409d67bb59ab0ca347fbd6a77cb364ddcfe56e95d73248b491ebcd266e5a8dc8beb3ea2e327e1d58477ba0ffbb3fff5cb1f7a65f4b808a3f05634d6f9d23eeae7f144603658d5476805ac9d51b3ecce218f276752224f64a547ac896b8cfd944489abb84f1bf2f93d47d88b1f218e4bdf34258ede7f3c64891321e71e37d5da815c4fbc5ff7412841578a0c09e38b5de6ffad87b14a2aba02c3e164a0fd985573d9b6c4da174fa0f60bec0540f6b9eea738ce5d8d226340613fc7e2061ce0a7a50387b745a573c76f74146624b17fe62c9b860ddaff0883132a2c9a20cdb02b090a76c7aa75836f07003cf4fae037510a6a245ddf5a0c70bd4604cf4d11006e49243738ccbf2b865ac9c862aec989879b446ecacfab8ae126abd2500bb8e5c5b0293a83cb557d968c05548ddb843655e7baa7ba8f3c5c9b486d52b83b29f263310652678b87b873e4d95eb4adcbe3e7b9352b8aef68e26e6e9b94962c8d0ae244c6da4fa2b2a55020ab7450cf398846b772280589114fdf2b04231883f861a1fdefcb477b8f49a00f492067e8df91852ca12b98f6d59dd97817ba5ffc9e51a0c3a779c56d594a963cf15755410d57a6d0c5eede795791482ba2b72c9c6b32cef613e4c1e072d485eb110cf5bfbfc84994677f673ef94cf17ea97924a442341863a94904aa0e086ad7f0f15c0bad35142181a7d6800a82463a5b5e361bb64e88a130f12090f72031bc3cf69d09031b1ee4c6e65444cbb958e6c4670c1e02005222f54e6812d1fc93bd81162c5388df424a5c109f3051d175f825205f02020cd738aeda6a87d5d87e49ae1545576b4634d878ec26d8e5a03f425436fba4f955cc94455087b0114612480de79a294cbd0397a6df71e01c4fdd487961cb336eae158301f60cebd748a0ff76fcaa28af45a980d6eba8b28b079521ef987cf545f40716fcf41c9ca10b572dcef09518ce1ada0578f044c64197cc01e74dc423f8f07644ffe2671ccd82ea193ef8d9423c9c10caa9457bfcccc5acb47017e180be6b24503809a9b3bfc3536e29fdbd9c2cf7044b70af0571a1973a09fc794057f1bf8a01fb20e322eb8ba2606e0cb49f65d3354abd7444bce1586849e1f598f09cf518f01ef69c1a5faf099164fa1da98570a72cb9026cf8443dc449c3fe8437a7c38dffe1cef971ef0ff839cd70172465a83f7b2342f3bb36b4b074de47f970b0ec1277186bdede4944d21f4875c3e086c0d4beaa6a04927649fc27e0b52aaceb1559de7c68177f985445ecd0b29c5279ae9845c043796cfe0e90af290a40afd473c0de2cd2cc8bf165d8cf7be73387f323514c98852a95cbcb4e254e1cdd2f2478bcef8e6e3d2d020266a31219519a7fc3818ae40b0c4293c8dd0df283df55039810ab64cbd2c93ae362ab439425a48082ebcc477cfd5a4e4887bb800ad37afb9d37ca07a82acff1e3b2e134bb57eba203b06c3b90fa9f8444467242ab4053846ec167973d4e80ef6b04097ef38ff6ec299f65f02a83cea38f895b99f55b00cdb82a4481fda7aad39b599655b74928b0b3ae9e04f746e40a4e9f6f529c8aa462d67c167130b5cfb701f0ad2c1d2227d45fe2582df3d55f99699d91823a8386196651f6a1a9960ccb2333a2e0a6a663cd5c9f9d846ead5ac59be5a374e8879232220fff3fe5fdd84dae653f02e2ec3d1701c52da0e4f33e9de0067d3e1eb4f3b06ce44380ca3703289c977f3a49f34083da0f9732635d644371c6ae0c60b124d616a5219bfcf49e44c064abee66959e542a8a28ab54b54c1302ac48416e38605226afa43a52d17845f320b9638cc512e771a39d9d2c94d76f02af050f71839d543143a35d96c81f26a66fc1731907d0fb875b73c37845dd541895cca8de2d260572a4a50917a3fe7795b2c2715db1c65c9c6685e4397252c02e4e3a0436340f11a4f8f0a45fc69b3fdbe572b5ae6cb31c1587b7f68bf206d5cecc7cafac9c9614a924f09030d165439b895b8dbdadbbda03e5d2681d9f94fafafa0551509111d643f0d059d259deb3ab299d19caf9ccb2755b769f72c7b8fc0026517986ee722696c7f959c201d8b7032293c5a1c2166f3fd7cd8adc846af05de93a1d990af00bdb369d0ef74cb535744aea5436703d59485a1bdd4bb4169eb8517a1561492a963af0aced6eeb7615d424bca7b715a4cfc23c3c9a4293ea9fbc28b43fbeaee29a1e22495b60cf8be7e3a98254553e4c93644fe436a2b6c49427583ff4761d38c4dec8b8209d14e4713c54070e56471c8431416891f85a7903d75a3ea1a331cc281fcd987edabfe8e445163382398fe8d6d6238322254a38a2947a7079a441b4973ddc7b60cb7aa7397436285175ee394713d38bb15b88776a1780504b32d9129031b50198d35ea01096a1be097275bfcded302718f9eb62900c00b321cbf644e1c892165900da1848a64719295aae4ebcf1319a6da7eaab6264afc44159a2507539abb379ddbec2dd96f9586a3ffd52e0dc5b132aff5f8529cebe2e99c883710e0147672aab48fd8a1588bf44f37386c2a5faf110e3fa69a1e69220c920cb2e36c88b2d6fd339b8f0d1ae5908fadc217faa1e05b3103c8c17fbaae37519613a3611aaaa4969133afaffec7b43eaaa5733aaa1a4e6aebf2eb2f131ba465eaf43af85e7696130565ae375421ab4e41da8b6d0b78ad80bf455f6d019027ace57095d714cdcbeda99e94012ecb153528d671fabcde51a71c646abe21cd9e71615155314e7461c1dda4555fe028d2060024e23c24809f8e7c289215b3ffc571f99196c8683ad9ee8eb291a1463496415bba7e4ec3ec188cbb5ea5c158dc6a9fdc99126bed2e9cce54db1c88e19552518c37aed1dc90e40a555d88e775908315203b23e7038297e4bc5c36da9e4b77de8a1f198590ee3d3b61faeadb9e21f0c6dc6b3f5b7e6ca780d8884d7499e24c678104643158b68b0fe1211c9ec80d9dc20268b8b3ec6039c4d3f18eeaba085191c2893319b3f74d19233418028332631463af3a681e972c64379df039c98f5612d892f04a65bfca4fff57f99982866884dd9d009685ebbc634c25f86b737e9a9fdccf5d8cf495bd4c3f8d4f25ed067a067327cd4ed67cd692b96c4632f0408dda114281cf45f3d3ccf6ac4532531593bcc4fc439fdac033b787c86dbb83c9d1e2bf4ad4ec01a9f9d949a7b8ce34c78c480caf9d4f5571804386d31abb7e71915d3abade73c7d037994aab009ed21e8aa48dea3d71ad0feae94b4ae7ea26d84848b5a7ac673dc0b392fb42ad7db34bbb45e7a64269b391d59b62b272242039bf132b0e3400eacf86e00f5501aacb4c655f9478a2adbb07fce1a6562aa7b404bf0ba16c227c6337e25ac2666b0f0e139b3714c2ab604d5e55196f861a37dc0fdcde863ab631ab60570fa6aa43481f2310e9b9c25334e2007008706c168607cc67080fc524d04f976bcc0f33b6a0e660171d94842553b41abe99b99fb1cc514bfcd7077b3cc11b7e481d8225cf8f78d6799df6daf5d0122093a60d9d061edf0c478498cf6bb96159af7398a91de6d9955313c79a699679c3cf73869045669f6f06f27d5b8c66a280f6a0263e7685f6a137d7c55d348e93ce6672a71f340f7d2c7e4f19a4a4ea562cffc9bc335a00e821a5473e7dc40ba28b147c75fc821f4b01968622a7b9454e44d03262979f32d1cd5ebfecc2bd34090b98024d92a4b0829deba2643c8e55f9cfd8eaaa8a5a0f474299e61a113c38d0254a22a92f8e74137a24e4e45cbba3e2d12d87c9e3e726d4350a39ff9f0cbd29ec4993aec3b491e6f6540578377c4a97d2cc885f2da417e669842c5e0dd96c5ddb12547667ba85098f97262abb11a1e3db75b6ac8d97923a51b58ffd53525d71125d569a9eb0edf962f2088a60cc8d4a66832c18bb58d98ad4f86a6dcaea3461c11695f1945a9b05a6de0b692ba557b2feaa5bf710dbe489f877410d4360f5c78d306c16e8e01f08fbe169a0e4330d9f0a2fc293b45e69882ea77cd29ce06c681d2675f3bf38c959a5644c051cfc9fb1d5f33bf50cf0a4630e906d75c03c17a9984360305b4a1826d6de4a6a057f570d497687102487ef4b1667682b49b4a4992c18d309fd4d2b2ae3539ec9563b7cf2ae5637652a981177600ca4bd4285ae5c3cf0c8bed4f4151c82d2ecc8330e0a661a548c797f3477ff1e08786252f6925874c1b21b1d0353dcb125ef90a0656a2b5662e114e997dd61c52dc4bec248809fc27dee1ce833b8b9c50b8e66f96e238054468459014239171db08bf9b4fec093e90081bbb48d1c0a4729b35d4042dc47c929d06f57a07fd2181b9461bc95917e9bf9217e30fccf5ab2891ef28496b71d83e3696784d9aa0c2343544ce8d250ecbe953dbd3e9a2c771b007d76c4700cdbfac6d0f975981f14e47706d7e37c0b6976dbb2e6c901751876de6246616443c5f638cb193c5ab578cc36645a983bcb42a348b5b7a177e6b97841b0e1247496c40fcbf4eadd38a76e560f1067b0da8838ad67b162c50875694edeb93aaca3e1b2a79eb748cd1efd357e8e1347b7eb9c5168af4b20ecb41e88721c602f133eff012b4a4e3f98873d552b680da11c4356a448c5f062c1248ee9b40e8bf35d4bde6243fb431354b30827993fb2d5e2e624fac6fe4cf732114b071eac3adb7a5b40051f985a3454ff0dbdc0b2423e9b1ffba4501010c0d95f508d8c5e529d8ebdba1a7022842f4dbd3d9135ab76e851f602757caf40c6601d6d0cfc70f8ff218721bac1f46c1fc6f1acdf297710b86a2120a726d0aa06a7557f5cccb90b35f88806ede0f6bc356c2215774b6bb4bde3753691ae700b06d6ccdc8c4591bf8786e51518b94ebec8f365fb38780ba67f18d40957562a797c758f704926a5619bba548cd0eefbe1ac6d8032bd94256c3939d2ee5f30bba845ecd0df1034d6f4864b772ab49cee3bd3c154eb2a0c3b50e6d942b4c50d86147380d183ad909faed51d886e58511320e6e120ef1db649b30afa8b37259f62ec4a94c2bffc2d82912d8816a34e28b182db11846f1a7d1ae6cab4a39a035d3fa7316b9cd56a73fa5c1fc790ee19bcac8a70ad2e543e6cf232420ec88d1053a4ba3e179f3f5a3a81b85a3f1b665d14e691248af3c4a32ad066c0b850dc0fadabe9f244132a8381c48f8097b7171a8fb878527064c65fc3f1702b2c690210efa3279801fb7d7ffdd4d8a1c2a94811fe45d6fedd102147528a0a133961731f13faca19f2d263978095b0bfdba8729c33e76e367d379983d79a77166c453e08487c1cdb5952019afb545e83d09de0a3fcba9222d42f4184a7268c92959fdf5f4dcd80150a6a056af541469a503e46673deae1249cb3e962abbd5fa40a4e13c2093ed574d9e3c6a7eb96ee40cb3699ca79c265363b15d4d663eb6db5b0a95178e6bc92089f2825192b5219cb4b2861afc375a7da75b5a4f55407ad4f9da4935556c5c9ca4f233b024131ffca0bbd657bc2e5792ba9c0b2e5e95f6996b350e16ad74dfcb959539888531942cd129388a2c63b49d8b53b908865eb7530f1fc50411a968d0e1388724559a4580ca0e3b0effcc4bd911c9701451019079ce48dc4f2f5ac1fb2ab0f3429f066a2dffc58d4ccd587b98d9b97000323bf1835b6343a65080461941fc2d44eec44f788e1da99cd345e1a1e3977fa39aba94b9c6be56dc93e2bc24a50253396e41bf1e87865b4d8da5052e9c3ec1248fb6308cd4913ea8a2e8771f9cd6cd2a8a66c528b15df19975445f2e55eec96cde46cb3d8670c8cd482b5040b804dca20be3bb4a21b9477d2b486769b58a51b735e8538f46555b08256b9f0042f7f5c0c810ddaa67694413bb93544ad5650d43adf657a26621a3c72a3be2fa90a209d4fc97a43fba44a720fa3faee552a5c06d40f19357e8320244915daed7b114ea90ad6e2c33375afc823c0a1e4ea27a3276c4269fb99686cb071c6f7c15a7bc455d797fc87ce02de1209262ab398709cb557535739ad340ed175668b86b3053fb952e0ed29e5eb3908926b8445c8ec8e33cf474907a5f7254728f90625fcc1c18ded2d1be2b5dbd305cae8b9213349f1b5a3116ac9679356b6d4bffdb8e961277c46a3abd12e7d4fbd2d0acb4c1e9cbcd6e239eabf45e7f2b8b367e5dc76612b8175e73fd61565661e42d3e24da58498fc3c6e4d6167931eca8da8077f32e02c6d7432a45d914102447ff540eab0aa6b9889dd514dd69cf4302290b0b8e4b733c0875fe23e6aa3dd4c0506c94286a08db913d0da85fd2e284b8d63f72c2103bcabb738461d20a844c3c98f10b220a9c0f0da9aa95568b58d08ce1bc9a28e8344aa5186600a99a4b91818ccd838c31a8ff9b2552dbd14848a578f71e951412a5acffd8d66c46c0480415529eb6c061a1d6865dc9f4412e023cb0bb8ed76d0724c0f1a09bc9a440962e2d834bf80257fe66bb28dde9dffe052bf70eaad2d6395a5e6a662d2632c298374f447e88888c05ac043194be49e270363a652390765c93073f3711e1937bc62319ea04c3796d1cc3ffe64d2c71c02b82c324a25ce3447337993565c4b9ffef66c885a8d15eeca521646de0e328bc9a8ad4b6abb25ebb7d6be666c0434c6665f10026d48936603b692ca74132634ff09162ecfbc841f1fa67eee4443b9e3ab30cb116459d2b8705a10c4a9f4fa83415f4247441526328123e8fe154bd1d48eaa4f465a46126935a81c261df3bef848f9fa6daf4a5b9128804951ae7d8158efd3a0723acbbb4e8fa9f34408369eb974dcc5f98d112ffb0b213ec9d954999381f2447eea89360823a60f476f94c16dd8f7d595a5ef15d7afd36848c2db5cc339e0c61e66f32ad319e8a18a1bf9d581277af43386f7de24b1a2c0b0604658a01b495acbb739cf11f4ef1e8f00e9830c222b06c3a9004573d65239a95f26e3890c9aaa065ce4c36818e083a9a66593dc9fc1de2e6fe7f1c1bd1aaff5966e9ffd7b9529c89ea14e6e6d4346618b224244d627e811391c3eab6a3113c67f8808537c507056b892f47fe4040f0886307d572efefa84a24383a7e90a709ebcbb1232c8fffd35f0fec0961013e89618f6b66d66370492cc8c7ae6bc4f08176c5e577f65d4f1c3759e3ea3bad7a039d054cfb76f5f57aedeb2fdfed910e750de98764237b0d791e1b5eed0d41aa240eba48dde66677ec3ccad544e4e7822f05031ad099ba0ad48ed86f35fdc4494fb32ec8d954ff4ad38492a964caa90e0ce7b9022dd10821e3756605222d3e440979a38a92a4e46c1aa99fa4e388e73d3a0e8af33dae060a0b9f54912f17d6df0e49a8c58966cea3bcc8d204cf62b020c5648fcbece2dc29c9ea3a5b4dce540083ab1fe95250cd0b7505d3bd3ac9522777cb33bd09cdc5a70bb1943869c4ca2143cf6db85d068eda7294b927185bd09cc116ebcf8ca424796cd39ea9369f99809fb75f024441271f62c92d211dce283acc15fb0b6ba9f28737600b7bd0d5b856b8b00049c59e4b2ee711ed586377c65a99836da74c99fd74f317ddb5c67a1e1252b4b2563120ba1f1d31fc3f68f56e2b28b3c103ffab08e916417bd2285835c73702f51a4169a03dbb17bd5981f49187241ace054401729079caf3f758c895bc152ded65504cec413bebd395832fe4ee0d9815227c7959b3355b1088d44e40fd6b3bef70233f3a26924ad373b879154b123839458b47699853fc300d94c2de97ce8fd5122859e90880a863651d76c66c7161477bc763def95eaa941fc3ea4171bbf36b6806c9816141a4d83ea445b5a404f5ac7dc043ac9ad54dd11662b9beba4b43a185ec0c4f1fee3d4e6a35131d57082affc75301165474cae43d7b16810d869f8cd11d9ce95b56cdafdf279e68bb7d31af1548485f9896ea8bc77ea08e5ce00e9c9eb888d1761de11f52d2ddc42b35c8d1e637d319f51f8ee56555ae8f81b914503d9bf6ea6ddce08d853d68d32338ca3dd43bf3b9ca4e70bc13f49c194258cddfbdce5361b5b813eba6b8235c17ec705124c05da6e6568b0355a769d2f4fedc7209639086a192b165bfbd20120735eb33bc18038a1b9522b97902312f8c474fb70284dbbb8735f9ecf0dcfda8e198c8e6d618f1f188d6521973b223dc342ba20c613ec35b25361506068d762b624427d1c8cf41f75a1950715ec27e59bab5d30f91976b735be38011259ba122fc8da81c0ee4d137d3ab0e4ddc1a3d2c2e98646b0213001c3a3b0f4ca5a2c851355fa12295b7b37d5a9b005e0c28570b04abfc86a4d98630347b4a39a18fc3c7c692f5cbcb9b346e429474b904895e212a0b285d157a7dee1334686a0c6622ce394f4e342ade1ad044f2aea2b60229129ea33fade07a43bef320bb53998cfe62a2cc90b93d26fe0079806222af3070aad7714f1c16155d151cbc4b199796169645f797e5fdf50c19293181d3f0d9fd111d17f192180fe87cc2530aa274935afad92f6991e85a09ec9179b595d136788f2de29670918b2d09a50247d751442512276d612617888fdb1a309a9992fe2ee408f1ed0840b5b89929659c3b82e399c3d6be7e349e69389b02e58e6a8ba117859710d7b33d3ee3b87e7c965126e201db7a324501db1a6bf3261b827f06dbba927e2a233bfbf158eb1f21ea517c8f4fc38d54132b063889627eaa11a10693792105095ee748d493f1ccb9dddb5c8ddb6ed94ec53927b069dc1c0b1dbda5c81c3805df5fc85c009ea4818d148329cd760f49dd93d9d18fec4b330ca262ce634c8707764b78df269f93d0a6365ba282e75cb8275d8f8675738b080fffb175e9b0b7ccb517718bcab4299072e6345b07291f93cfb43217c48786cd6bfe394ad7438a1337be8a6931959116440808b554bc09b9a367be61b0c54c3a39dc09657f7e312130eb190c99e08132593b099ffde507f2f810a993b9277e12ed7ef4a99783457ef1dc1661538ee319949473e3a77c5580d5617d74ee1eead36098da561b1c881aeb2eab793e9b4af4f8d94a42df911fa1d715a33639e728282d782ad24456e231c0411a89c6ddd0876f491a94d4b82c67acaab9ce8634739859b7227244294be72b8c8ad11fd5c1f470708d5b0a9b1f8b02c3fd7a5c1495b97b539b5b827b041127fc67a0a4de42ee1da217c4f696df32ee2527fb58a92dee957699d41092ae07e9d6b05e10d9bf7c63ac1739edb32c45e5bf41b232e6da2ae008f3579fc2c5078be3c76c755a40113fcf5a882c41d9d9b62b1afdf25420e18ac80e2826ebf40bf96128eaf5a1fb3cf85a49f1a576e24613254f7fac0826a6310ee6921f742598dc5ee84b2fb527ec47c52aa0cd6298363d66e8c05d1cd4a8d8083dfbfdbed231490d62e49a381d91f3d14e3877320b4a038d81830e201ddaec91e628d6d02040d9d3e47f276121a6926449cb915401adb8cb0dc96f9a2b3c814e901a9ab44142456bc1da4f8f833b8b10710cf647dfb95c78552c1fbfa222e3f9c0451264021dea65c68a41e87ce2027d8e773f76b26904710ce865ed216bc38622c14d18fc4a248ef3da49ce416b1549738a18c16a48c6c910667f511a550d02ba1d7e0339c3a8f8a116cfa93d60969c0fdb8fe663c1b26059ceefc892dbae83cca22a9e14f2a775b82f93cea321ecd5b440711ff18b22416cbc4181ad6202664969961f696a4cb0feed6ad2ef367218ca463e7c98be3fb87ba19f0c13a1c474b279c4e860937030be14de55e4520600d878b2bdc57b94793e88cb8efda84c7603e927d5fbe358d44edf39f2288c5143cbe7c7f1ba4d136935d2556dbee0156533f4704ba8091ffe7a0c9adc48659496b8a4ad02903870250a8e4a612feca82d151e907ee47d4a185e89b6f88565f3c71b987994b8562eb0049687823f76b48884543988981a83e2ef37a355414ade8c512991700a71d66506ce48d6800b0c03713c30d1d296a2baf7bbf0c34049dcae870a16e96718bd92a6f3cdd581ed5729c5ab04a48929155bdca349043cc902535e6a88b4cf9ba438cec2b154bd8e348d53b293902306841c40646f200f9547cbad4c0f81552fa09607f3632935965fc38c0506e8f231701fd76f90faa16213dbf02876b856febb5ca618f0805af0a8014758a6c505351a1bb2bf9b3c1b36a5e69bcd6ce97caedf40e98cab71bb73f10e105a31c70bd472cbe9e6349f1326b6243b29990527aa71e20d397bb482f89e98a4aaca251f3fd1230837e8469f5f0640d02fe8f26289897ef172303da6ed5350376ee95b3dd1a980c154b84aadabcbdcbd783ba0ce7b55221f6878bdd97e21386af5e8e9cb3d795f1f5499fc2761f015366a86db3af49b6849428f58924c9c190eeb61bae52e5c205387d1089b9097c0cd22929bfc2be427416307fba39381df510b6338ab4291a609849becd2008df748589e9a4b902e305dc58cbef567c2ef6696591a608044ef77a29959c20d9479c9c7c9ab4c2915ba1a5955a3bdde90979bab01b85e58808ae57f2b8a279d2ceb91baede0347cace8428f0e9c4e371d222f20ec5eeb8ccf88c9680e7ebb883be6dcedfe7bcb5df4ac79c130a7c7c87c382578587a6ca4870dda59d24dcfecc0e038d38c66f01220989b8cc1a64dc64983196a00f5151a9fa4cbef1cf243827c9ea2d5dd33417488c76332e18157d52971c812007c74634006699f428d9291da9627364ba2eb09900623812c36f4b5b133581ae18b56029cbbe89694d9c8ea8b5517dc0838bf2a5f75614e0e6262ce71cf71198604e9e42fbc5a7a8cf2da06b88e19f3add24f73062348b1332de96539f54a16c446d4c46c9655359bd6893108b81c71477ca04e9482414be44103ef1d99a2dc7689ec9d21f1b6c1224b8e21313a03518d46dc1595160fb26a6e75849a87b20b5c5b03da69ea7a59305656a503a51250d3fb0e262b8e3157307a94ae07cb07e572a41aa14711be13f5d66c925164d67c6655df969bf5901e9d07080cf269470444d17c2b7426a923b695804bfe532e97cb86f57cfb446eb2f7265b6e29654a4906d5071a075f07f5b23cc688fdc471b5ff86e0b8f5b99ebeda7fdba3bc0ed6f0d3ad87f63cd57e7c6d40b4abc140bee2468fc53d04c7c59eb39fcd9d5f4f5fec371bc9e01734ecb35fba260fca4ba7f43e1070f7e913c195f2ca78e98fec5e3692c12c4c2b952e04c04fc76f94c1ced8878a720e3e0e43088473b86eb978a385d0db0044eabda2450426784927c32f34d085d70415e6780c6cc04429e7879947a368ab56adcaae1d0b20e2fad7e0d3382e43dfc0d610827cf44d854a47dc0f42190214f79a38fae652badee47e09680fceb40a09b5b56e32518c68d590fb20832d043560072a6c052129084b42907261ab092957e9c2561326b83efa06b69838b9f165e81b947c3803e48f830e48fc7dd34905b93bb52d7d9a0ad26ebb5490f9a907c09c697d8e76e6d3bf9e73287d7e00cc09ea2f52845a95d3c4ef6e418d1c399c26ba9328478072fcdb9f5f0241821c227992ec72c21b0f6e00f4e6d7400a900bae89be29c36c2a06edb1efa13d667f6ef7c7426e7bdbc30d7a3f179adee465ac45a6943d9f8f855cfeece1f673e1ea62f2f9f2883fedd753223b11584bc295a9c3742f2e3f9836a22b711c57c2bafc4649edc39d5964587b52dfb80f330b78e347a0aabfe7bdd1a47e7ee4f2db10af1042bc80061d85b8ec9e5ff721ba0f3e5c27729ceb341f12dd69b32a7d63e3f64f9fd3681a1545399166139692244633a9c8288912d66c3291665291cb39a7943e251417a22654ac44434ab548c38c862ad19012ed9391ecbc27bfa49717c92bca4814aff83bfa92d14e7ef74e98d190660475b03f67f28bc699494ed350c7152fa1231790912a4b6a4ca599e438991a5ad054d28c4c28da91b9a4cd2a465c40470861463e74a3499dff61bd22811492362edc78b85c7933d6a452dfbcdcfe1b4cd4f99f0fbd5c99e4448e637acde43991d3b0c9e451a7a12bb16f62ab62e3c4d6b43a1f7ee7dffdcb26c3cf65f63aa7e1fa97def841fdea17bd683e34145724a85ff58825093a9a6f52390d3f6624734d9e0e9891e3f8d0d0507b8c0a777ab5553798a81f667433e7e6d4c53c0ad3311c1bc7876e6e3051bfa8f9cfd5048892ad76a85f23b57411cb0a8a876ee54e17fe6a87da487db3a53a70638b4609b2420c6cba224908d083ea0fa5a5adf29ccfdd3bcd3f3a141a8d261619fe911f5258734307d7e53232d8344e9c096c496dc2cd0bab8022e90abd10bb29600084a0345a5e04a144165008400e5e688104184421850eae2450b1c452117e618b0746bcdddd3d761a9123841046da1042e8300265304a2923c39663ac545354386ca6d8c87453ba999ff21a9d425bea940a618035fd30c0e0022a54a850a14285998abf278938d8c62601397270fb8cffaf542aef96286b95e924944a604cfbf209e10721843042389d36d562c4660f669841699065cfcf1a6cb188b83d7d63ec6e8feda91f57da2f03973f327b91c9793996b95657403057589a2b2c20889165d381103a6cd4113666a6b968d976d25eb853f5224669dd0a8a458351096ed1606cb4b848298dba18cd61abd89d4589ca2997494163156e4008b556f94729a9bb0a5af4528837b478438ba81cdad3eca603df03c094d2dddda574970e3f0b42e550b9576042e547e52000010c60002ad411953fba4a95322aa38c0e89bbbb3b0e2a3f6c870f5b344efdb86ebf0c780f3e0821844010c62ebe4038a774b9e6b4e17eb540880262675de84a587850f9230b0a48ce6be59ad388662694966951166d5acc4eefeeeed1e864d44d22961d547eb9b94714d074afd4330857b0ba86d358d790976c211410c39a195fa64b171fd6c84c07183d498c28a015c8400139843206a653319b0e7c97819fda74e0bbcbc8581a3c79420315283d3550599a50929292c0381a8b95040515224419653cc3731c872754826066fe828a1390cc66b1b021166b5e6dd4454a3ac9199d04a6897a28262625d3791b69a1164ac1a583ba815250c1066435aa70156c88c503962417438902851b5a82c59a170ba949124a4967242591740512b7c42d714b49a6282491c4c256800d6140409c46c258707b482625b14091441252121236e4a4098b098b0a8b1b4a82c54a6242091525492c6a9444126b562e22b2c1498cce304ac286b830adc1c2380808c888100f11406605ea73c30af2a2a1420315283d3550599a49496608098214835fb7dda613b1a1a42b90b0212754409c66b1b260b1582b88c10d35ab997053b8256e4963a2b134d66d52804d07c9e4968ac01202c4e196b42792a891290adc1237a571a6ed161236840d61477c013b58f392accb53fd19cf721c99d42f59492ca525549b336c6c0cd0325d67800370cb01645a80d811880d69acdbafb134268d239dc8a42faa9624bf02cd0475d14527572e7cf8cd389288e510cc38d0694cf793449a91265c1165e8c287d085645061237160e6c09ccea9552ac36ed6214bfd6068e10e8761548ddaf008b24c83d5bd219e04da1e3297722b5381a6ea910cceccbf6b14d2be495dd83737582e24a51129d4ae32c2883aaf8c62a64cdb4e5c45adb0b4c8d8d091eab40b7f2261a52a4b303231309c8484911829262625d3a55e52704941051b2b80a1a3e5c2159ed48f22b912160f5892b8e0f64f6999b5c21735890b8b920e66e54e3672245c34d4dd0b0a122e4a1c092749129302004a2605ed42288588720080a632a2ced02b281277e1532a204e03d12c6e0f35d08d063a723f49746a20a321a1db4044109d903c6d83cf7c64a8634142009a4a0610ead0ae13694037d420a4096d48188807a02ac1fd245106149efcb92bef1e8b1af7fa540cfed7c3fca5d3bdf4608b74f7c75e7a9f3f77fde74fa720e25e2fa73072b3f7eeddb3f1d23bc99f7ebd6f3dae6779eab13ccae3c9beecb95ff152ddc3ebf2f1eb472fd5fdcbc36b3279a918b287f9ec616caab33c7eeecbd77ff9fa3566ebe1bef22edecadbf0beede9b7783ca8ffb92cf6cb9e529ff178e857cb7998e6f1b89ea688f01a1dc01ca3182f5da7182b5d77f720aca11b037e96ace85f5b03e2f3887fbd7bd1469f533071f9e1c75fc987ef1eeb3c8cef363e0412ede793e211ef8eee8dc80d4123c801e842a882d1f2c0774bc4e77e7e61d7a6245a5a1a7bad25888ad59656ad8aa8f165b45680d0e7f4fbd35640b774d1f432eb4d674aa07ffb07f46ff6e76ade87bdbc3ef37eaec98349b7c7efe5537e97c1652cbfe3c95a80e4cb6226d392fafdabe62a07f5fbeb8c31cdae0a84bff9aef7f7b180bea1df109bf7216a9d7f4dbb3a52e1651b213d4188740165f085aaf96066b63b58506b701eda7b8eab41a4204e6bd7fd027c505a6bf7afb29132361f8135fdab263ab8f2416d6e6e9e5744ee874f3525ea0d3ef7aa6105957b5ad5da855c438f7b32adea6ea544fd3e86919232c8472a6c4941c4f59ef3afff0175f0e5f9570d2fe00475f077f15c3f63d4f887fcf9198b477f45a66fe6d095ffcd6f79b9f2dffcd3d3b7f1bc019949908a6ea6cd4d67e5a9575f86fbf90c61cd77bd53496db66933dbc6e3e7a25e26fbf9836e1fbdd4cab33cbca696b7e17d33b5f2a918587e7b96df7e7bb805d18173842034c047dfdf85c543fd8ac7e3e7a2ac8b473d1ece9e3c9ecdc2565dcccbd12ab69f36a3375f833a3a90fa11e3ad7d295fc903320102ba5412e1356c20029780806ecfca35bdf768d704a4864b6d2002c36d58737dcfbc980dd8f74c2016b894c88d0bc36558733db510ae361ef1e767d8e663c78570f5cd8f1a0e086bbe93ce0f588303ffb43405fa9869598c317e5a4fbc2d1fb2220c193713ee4f95dec8dc184df34fa7d73ece64f174e2e4499e7ea583fad1ebc12be90c4befe8df0e464b0a23f5b9f8a33dbddaf5966bbfeb25f7d8bbdc74b8eaf574e422b7692e7ba4ec1f8e5d0b4a29a5f4a2f4b12cd3918f7912c3306c7af3b16969ab2e29af992bff9a266f033397273e7dc99a5d05a1c25649cb269e3c741d11947633334431ceac84e06f4551745dd88a4208d485ad28846e17a34892821cf8e3a499e8dc2101f285cc2312aadcaf5e2f9000e5fab7344ee7f8aa07b53f421b6602094a2e6c1da1c93dc085ad2304712d8001a65167d5830a5bc57c79b155f2572aa83d563ba8f20bb223848ba87d61eb08476e9c22839da93c9e735e2ddd37e5f8598e8ef2f673c691080cb16364284f1dac812f87c89887ca10e270c32bda85a6a209bc5925a95fbdb5f3d50d3a3f42d01180580af919c59e2ec5cbeeeeee9fcd8df663fb5d0e2fc3cb1f97fa263e534f061fbe82355d7da83438a5b576ddbf2adac47e1bf76ad14c12ba7f618b085014a1cab5b9b05584225c2896ee0a17b69ef8e2f267543e757fe83198ae5f2f85c0eb3cf050dc7420f566bcaf31caa8563f547e68439b067e4378a37b2d5ea523401535b0a2cb215fdad8ac80d8c2d99bdddd3d5ee76e2eda598b1510cdce1c8d26f65f7692b9d071561e3ead5088776519db2fde28849fce8f89e0313d0e97bd2fa3ccf17dbe57ca93c5ec4ddbb36ff6eb6abf9ea61f47a696277bd3471929cb1f1f1ce66426e27ef27b9ac71f871bbdcf2f7f9c965f3ee5a71f1f993cf137205f73d97fd8cfb769d4ccf6f4bd6c4f7f989d73feb7fdfc4923c79fd68b36657afaf2871016e217e24febf1439d78e23b5fa611657bfaceaf74c6aa4d1b9f9a361d2ccb3c689a9917a3330bf1db5bf9cdd3380f9b5008b3895e4f999a2c4ffcece9675ecbe561be3c49f69b599ef8f3f91d673eb51ff3c7a7ded7e392be346db685277c3d7eb3978ffd4a8f7fd0c9953f33fbb1e4815f60faa6c7b08f9b0e363d28ef35638cf15ed3320fcc828c75074a57bbfc2c8b8c60745db8b0d564e936615dd585ad264437834c5461ab09d2cdaeb6745909ea405d5fe3c28509f813ecef17928ae93ccb340cc33013a418a66930cf18b5f4e5ef68766aedd7ceeebeb963a6cfff1b82c331cba37dd87f6ebf28e78f0f0e375cc95f91ebbfc3e537fff2785c1e878b4928e394fb4dc62c8fbc7efabbf0f7f4f577f9b874e7154a158bcb2c68841a6cd8ceebc217bfcb7b17ab06c7f99ad1cd64ddfb602c664d7ffd1c82f994fd5e62ec573b97d800f96ebf1ff21d08bfe0cf167bff6296eef575ebc1ef96c7dfe5b90dc865bf17ce6ef6a5b343cedff17f3196937fda7af0f360f6e38da5fccc520b63fdbb17cbb1ffa66d3a57d1cd34794d53737fcffde106445e7f1766e18b527ac8ef9f9ea3bec5bb58bcd3b337abf7bd7830c7d0cb8d35ce401df4c2f7d1372b0f519fc3716a709af894c2a5fb62a43d7f3617c318ab9647bef61819fcc2f7d9b4bf9d7c3dbff6195f8fc989f1cbc7e4a7e85f3fbf06237f79a901cfaba4fa33cd3d7c5a15501f42f89aefb07df63b9c5e7bde76369b59e8343b27bbc6cd5a739d2041db673beca0d96a2bd6548c6c0ba0eba5164b77be94f107c87c29b1ef1137cdfb7c14c0fdf57303321f7efedbcfe73ca1cfe17c14c0591fd82ec0f7e11e07d82ef4c376e10464be343df4b46f7fce83391d1fd3aeefe93b3fd36c018d2ae5253d1231bfb718ba9cc178a177cfe691cfdf1e81b0b18982521b9ed163f42628e8da4177628510cfc41863cbc916379a2027465f1dc189132e7761cb491852644a361c5f5cf75893eb398f3a0d6689f806ba3bed90ee6ad7f617db95111ebbae9b169e409f5ef4f2be5a899f50a88ada5941712ae580f8fe12e8fee553d7d3f7972f823ada417dcb17a9ef73b4c37d8bf55979ee7d58fef42f5e6afecbc31cf752d35f02a87fb1b6c8cbfbc31ca3bbfdf545561ef5ee1579f9940358befe0c2b8f7af65ebc23af08cb578f4257e1c256129270680ef4c0f659286597e673c4dc4f0ec723800b5b592c5d2744774b39c0bffe0c2f8f7aead07e3435c34ab53e47f45976561e657d3867056e41824ecfd57039c01ff533bcb0eca03e5a9f954759ea346cbf219d6f3168df7fa582d87878775cbe857a29d3efc447fd8e7ffd9513f5cbc1572bc21579f953f7e21d657ff28a9cdec6765dd7d55df49f3a13e1eb2fec790342c4ef6577b8a79de7a35d9ec5aa9c46bad8a37e1bb6c8d1cee9b9165be414246807169ba22b36753deae3ef70b229d3a7a8ddd9a9ef9c4d99ac03501f511fbfbe7f4a02f5fdabfd2ae7a1fee4558ec3b86aed09e65c3d9185350a07ac823082622e6c61f1c5c52e6c2561088c2f32961563e8b00410329cf925e0421c8d4373aca8e28a18a3ad31c69615516e8c3fd3be8262162509d14baeafcbfe4d19bc9efbf67c8e76b42cebcf1eb33ba777ebc37f7aedb7b6b5e2088a6fb2fe5fed9777b1f12f6fe37d8e765abe9f3ffe0e7f8c3bddbbf5f1ef6c10eb73b4e3f26c7d6c9ce67a977fb12ed66707dbb0f179a7b9dee4659ba7599f23ec7db4373d6677b83f591f1e729aebb9e767ab599f1a9c26b36d7d38b343fd6c7d7c8e76f8dbfaf0b3f5b180d35cafbdcf571bd4c31ca8d47f7d0b6a5498b3b2c33916cfe76827fb15ebc339d9738ff28a686ffaea1539dad12c1739cdf5a62fd2821a755e9f594ee234d7e308d26c119fa307c01cf9b6887c9d2041577c910474e5c32d1564728efc99cbf230cbfba2c1135b3c115b8b9938b37a82ba93d30655cf71524aeeb3dfe19f63e3393db7226788b1f2743a9d9ee338aea24e9fca7e06984ffd0c321ff35cad94a26c2ab329bb234325979db8d373dc89e352a8df3971deb771dfe9c47119f73b7ae3388ee3388ee3382e559f3a4eccd7cf74b89f21e6bb1b2d8c55fde5380e2605536bb51fadd5b4652ba8adc5db4959e83430cfb2e23960b3df906edb388e4b6d8ffad3a7bc9887f1649ef33ea6e1cacd73404cea4fde8e8c85a95d853196b3df902edbe1d22c57d070b318b9ab5eabfd6890a7b769557d196bacdd0572ea5a55edb6c1d8aaa2c58442aab1405a89f86b12b7bed6aac2881bdfc6ca47aefec97e43bad3b6a538fb036561ab4e9fd9d3c797dbaf9c7eb352561a640af5d9e9b4d98f861d7e5aa97648a77d1dd2dd7ab243ba215dad2f2e2d365a5a5a5a5648387204f5ee2b2b4f1d07a6b339d9d418182fda6e4837a46b551174b3afdd47c33d3d749c9867a931f5cad3730fe3d130a4abd5fb68f8b10de9867434c02a6a50c511b7bb1fe0cb3690418ba835442f6cb55a2da368e48822547e2de367af07bc9065848cdbf595e41b172d2aa4dcae55bee9b8c3e7161555e2852d2accf0fbe1f0fd5cb7ab56c18f42069b664fe1cf5cd50d75d875a5a7c871eeaeca32cdbbe6c5e4dd3c98ebdefc980bcbb29e8f615b0cbc469c89f7724fd3348f91a09a56bd1699eb1dacf14fa2c637cdcb69bf77843351eb590497e7becc7e3337a3327dc3bd6ce91b14a5365eb2bc665740a81f64b5602fdf876a65d3372c2f1f47df7c2c2f3fc74b1788b5b8bcbb68ef436cae66c36bf1e265f13494075b553dced3fee469d4fbb2f799abedf0acb6aabad556d8d1c8e0cc6529f320f38f59b5a01255ee5451ffd938bc46b051dfc8efedf9325dd7352f4b3d2230cc49bdc9cc7cd1d7344da3da4f3a4d3ca8dd549e4c9d56cbb4f9d2e7ae2edbef7a138e7b997ef3be9fed33cd9bd49a1e5e3d7d35136c95c92434b45252e1571fdee42f13cd6497873d0db16f32ed667b9ebf79ab25448eb352b4a269b6a555b3b6eaa2de90eececabcf9e8209f4a5bb54485b53725247cd3b30799994da6cfa067d6e4f15c4f9f5eefcf3dc4a9382815ca7baff3564b6a3ff69c5769067fd35a2ecc4ef6fa1dbe795f77b3d7acc98397abbda6dc3ade00ceb8746511fc095730a8735e734e29e58c4b530e65cf5e3314d22a8e91c977aa9f872eb3ee8ece600b91b25bcac6e1fbb97003f2c337c86ee63b3946c1899611945cd9d39f7fec18698cf171d0914bfe97ffb42d1f6e402219cc42ffec494593298070b3d61a8773bcbdb8e4f1272eb5aabf6fda462432f9531c71fdcca08f1d176e0db01d708ed223723d46a402d114245ae74197dc98fbe3822bb990d0afd73e7bf1e4bb0490098c02881fe60f1dc4c2003f9000082180f8013ac1041bf1132a900b180610430061f383143643d0099b1400810415233e8713c65803850a59dbe1715a9ac6658ceff26394dc4e649089babb61f76dcb5db0d090b2bafd4127b75f8666a101743ba799dc5ea2dace69fa75aacbf7afccf3d2c69b68aba751f99ba7dc74648cae04c5cfcf9899218422b84c7bd371f959dc6490970814b09e0f1dfbe77e08b8d0c6002a1aefc267e6cbcde3a76fecfe9f25cd13bfb93e452671889fcb9776b9d67f035e8ade4ccd52e56a3fe621e313e6e7c6e1f6f36519aaa408a20d533e4316643ffbc7e8c17bfd88d7cb5f12b9f8d9176bdfc418e40fff683fb7b523d4012fac81ffe3dc4148f97333b93580d76016fa636bfc427669d4fb40ff885a0d136a6c0975d06f4f25b718e6cb8b6af2037de9679846d923fb49bebce66f3fe6fb43ee81044dddb8d1d7a87cbf1bf4de803ae0e5cba6061d35843ec898b963a1c26756d54ca9fc39dc3d462f40ddd13b7a04590d4c21c61863fc9a34ead77532ff33fccc9257366b643cf8c2f76b05127c0e6d17e6f7e0fb84eacf3d643cf812a0c2ab63c718e3f7d57534b53f352ded6aaca8f2a31f25535518b301b402fa1b87db0aa03223200b408531833311d6605167aa7c19001061956a9f90f1e0eba1b2af30727dddd6d8a07ed5ffdd2d92a6f6460d3aba1e7b8a7910892bd401dda6fcf9cafbcdca54c852a841474c82cf81ed420278a072e4f2c35394d1cea85fad2d9dcc47813225083d8156f5efb4aa3f48ab6ad0d81132010bcc29fd9f64b01db60bce4ee5ec07d25fd384eade5cd304779749b9bb7b4d1a9dcccfa8622a1a194c57e1c399bd540dd41cd52cb9cc506a03474bd7b1ecac541cf6c216135670610a198414150131a43061e8f2ad2142fd9a21d4ef359bbef9725ca63e5cfe191c27687705b87b0e52fdb0c504a10b7f9c2730c475bd7c29ffe766dc05a1aa325f97dc6210c1957f5d1ef9fec5aff3877caf7d7f26b71019aac2586b922ad733b20533a45cd8620294fba96e7f012e6c316189ace688da37f0d69851bf678bc46ff81989d0e7b83d552a36eace2cbc0a478d13eaa752ad6c70e4d0581e84ebb0c6775ae52f43abfc7db4cabf868a0c4176a46703dfee66ee98d57e7e2530321e7c4d155e190fbe58751bb0a34d6494d60aaf1a74242d093ea76b17bce509758a8c7f4a1217b69a90e4e2b8b065861a176e3fe6b5b3421832b904659545af414751be6d29a9045dd89a32a5005767a655f2655a25bf6b95fc9a343a999f516541973d1bf8c68f16c97c1609865a54886ef4606b0a933b2dd7a0230f3a62d94119ac41471d74041f76dddd3f5e625183035885a6c5942dfb254b29db72d43c496d691aff8a84ca3a72c6e798fad1d16e40bb3cd5cdf09fac34bee06adfcce72d06ff113ff677773f4fb445b0b920f539adcc4195efee13b3745aa05d6e3a17a77ef4db0fc81b6db4f1235e6b1593fad1cbe3cc47b887d65212a70b5b4b33b8fcd5366c814b4c562e6c2db5a464b033f72123e23565f4e69f0a5b4b4131ee20839dc90b596750713b99acc6a8b256b4c30555c04068e9c88833a250c60f645401843290c8d8a248690d20cc58e2451269e0000a6528a5a0052d327e40060fc820bafdad127255dcbdbb0f51c140010612b47b072e28a208151441050a8e2892410d94a8b1548231988ca1c41835b830feace0891250e8f003922aa248638d172c6982134204d1851663383182c613c600628c1e964c1923680a1967482981942755a2401192528594286a7a78a26607e804b4a2074eace0074be8d08512d7136c58b25a6234b9fd332bed72c2859095c820e4a20cf6cde7198437fdd16fbc6de8eb6b74ecbeddddd64b1084f74210598c1e5c485c0d498d0e353a0059628423906086112c88e2a22205062b529238f24c86d8a1ca14159831744d9192824b4a1046a8444912034acd0f5713a43429414d901825108308b244f04b80024a16500063094e7448632ec18b2570a1061a68f097801a805b33730900801754cc42ffe7ddd8b4aab74fbe108459e87f805f786f0062a01c9ce3f65f0fe0aa22408d2c21dcd0379c05543511dccc055371bb9be016dc7eb6c1a2fe754b84df068bca83990ba8838bfa855e7f11e2380f69fcfdbf971b70e51f3d18e0ca770061412ca594466495524ac983058342198218506ac08230a0f45044185072301206eac256184b617cd147541df813195cf87d54fbb30b5b4f86b8f0db06355ed87a12c4850f75f00f114d409941144480a2648a194786e435afebba2e2b9420441150b688a24a1113b2d8a01801e312451103358ca050c5939c6be95e5f91eef585143c7c9346c191264e34998115579461c40a84f05518f08a256968c10314318e9ab8c8f0810a56604ca9dd44cb0d7cb0a9ddbf4a468f2b33ba80c1aa09f57461ab8b23f7ab2b2a5df420bb08badfdb2cc1dc10d26c1da8ce106e90f6f7671db59f4d0e1acef0713571580381cd939066bbb203d71faaa4c7ac4d4136ca8822a394416e87d8545965adb54509494bb0e9aa74f9fec40f515eb0831152300323ae31bed001fbc2885094525e325e52964c6898002e6087241d0cf1831f5a80861b41895282fe55315ecf0fa5174c2ed7f2820a150cb1f9ff192500e1de6022810246b3174974c124ca1753c068298148093f3c79f24409890b2ebcb8800cba287aa28c35b610e38aa2a4d483129430022535ba5052e282b585145bd43c09b2412b8c229030019b800ba41438a9ad2d76b045122db2c8c28baad424f597dfc3edcfede9f1c8ff78e466facce41a6ff34dec574f5fccfa673e30badcb62c7bf83ea369a7d3c36fc66287e3fc2aa9dae0389d34ed619e70a884ed765539ea949a1900000000a314000020100a888442b150381a88b21a7d14000c8c9c40724a998aa32488511463103286100300200400430c1999a9a11a00ef8310bde74b3e7a24ad1b7558a53ee2de80beea235d13dd21a01e0816f57c249d5b4b749f633b28fde803fd99d6f568a4121fdd6bad10510f10ea3d847a22d66b88d44b8816ea7d109d63219a0f8add2e5cc90f86bb39fbb515bd22ed80dc251b278aed6407bf7ec0d3cbe27bb53b7e7740a56edc5dc9d81b03e3b0db90aeb13b5ede9a78cbe3d5898c2972f1130a5e66116a89162576e6e48c63c671c0adf48f14a7b84b6ab5e8690836d0a1860c0ad0127b00e8b8b5bf37612c666eccaf2f2575b4550a032a627853fb2b2417c09e10222819990bc45ffa813ede3eb639bbf45eb37c3378c69b0ffbc654435b8d57f65cebc753cd6d859d98260dd61b22e045b18fcc8a29a04cbcf0aa09dd3fb581ca28339c1f7bf683fef502daad84b5962b403d7c32b4ae247c9f30d0d1e7af6cb9c1458cc2820ac0515981b62f866cc002b17a1ba074e80427a222edf5000319d33cdaa0f188b3c8ecd03f9c9ced4cd9e279ea2c7a696612fd93bd43e0d3f644da914cc4e186df20591d6bc658e80db832706df70fe790f6dd9317277ff39fa13d0ec8794d1c28bd2aad9dd2f90c76f0bccfe52d78eba6250171bcc67a322b4921ac80b9cfb0715f437c453e2ab3b96f5481806030d40be0af443973fb4598a1d4c4865509b060d8d9acaeed8254931d8d7e5281d3178f6db0dbf93362bdeba4b1f547be24e23dbde7895fa8e3848908c71f972e180f9aa9fe553601d1abd279e4e0f60985bd2b56b15a097683e648272e0a4a72007a2cb2140dfe290880f4ffbdae5b0c06e3780378528db598ce77a818dd5612975762e4c96e79ddbc929a3306a1792ff2fecde267268f6dd7abccc11ed4c3f029b4580893f0b3d5736005d2593252b93963ef7d436b6f75c071c24c1e14e02c921a9d690236768d5ec96e6a23a48260ea89b8451f086f95de8852350b9e0a8d2c1e28a565c7530c016c99bcd390113d6363df5d7f347a6ba15c411a5f87d4034f3bb43c194abf57e7d54e61288c0829eff79a4e9385e2938129790dc226a08f293b6c906a132f80a0035fe0058c223de15c20ab3ba1db4e64ff4822c4dccc1f0b6a5128f69de9808a04da5336e16338aba943715fb3b2c0184ca9da04ea4de5a04f86083eac2e871a48f3fdd65e6dcd8c1e4a5c6bba342e98775f34602841051a28b8f00dad0437e1c138252628004d55411827b85011c466a84ee705a5939d8c70a46b3386b9599cd1426e2911b0b3ada88ba2d13dbc2dc00fcf087b07638ac8e9120de114d14509b54318bacc5d94bc2245c868bbd62956522e506f368533e9b6eda8493c07f0f46f8d48e228135b0799cf1c3236118a8a886a384cdcdef119b07db1911782236d166ee3129f4e3823f1050c32023348dc876179d7b5c708dcabf58ad08a1ac1e187eff26a6d525140fc2ad96fa3b14071f935daca14e3e8cdbeb141b5dbb013c9764c710c21538169a105f6f5936938397d7c1c24c884e9455e38454e64690a991177070c34317b5a82784d65b2091c6532b499e47d959a07708f3a5bffa76b18867b99c58e9149aafd9694a63f85134622b80a477e7dc07ba3f165bc6389f4c22855717059dd462250359743a435fdd80cbc870dc8530e826ad26c1618b82b2c2c133b86ac32c001adbd96bb45f8fc2c9209c19b0450a7140ade17eb1a80589777d30155662c914f719556a56165be9ba894bc34b8bc5716374c84db14230e56aa274d1aae90d2018110f034af439502d530e88f709ae67e3604541fc37b4bc87e6b1b50a345ca60feef673720f6339d5b8c2900af3d9fd0041aad36f0891fa58d613cd9bd8a342f30b571eb0cb4acab4db9e22bd5baae98a294ad1babd4947abe235da9b2e72b49814273988d6423204e890f90bc9b9574f0e719843f218f8f18e85adb4ff73003b253ad2a111a4b047ef5d3142e372656019cfc4c37dce8e97cb86d9eae8c8f73cbc49ac8adaa76b483fbc2c9894eadf0f6ba043a998e94c8ed1638fc4a6df40d822c053ff72f4de1840a5223b6163b0928c09187d06da4e33e9d472f0069283f0bfeab64578a4a2a9c224f5000be1f11a52d763f33244c9851882963b159bad405722f90d1b7df3717e881c18ee31d8a3b5cb7ec81091ce5b244c693e32135e61e5eca525d78aa9adbae6542eab34cf446b4fd6cf5c6ec1b3f9348054f70801136834d43dd3711c88ed8a0dd92319c2b76127b47eada7936e6254b01ae53fd91059a5f720d0c196024ec48a8767493071cab80376b989b9fc6bfa96c41a9ccd1d2a7f1be8a85ccd92e3ded0e16f4a785657967c498b94e6568cabd11c01f88e54306fb18e4a5c5fa02bfbafaefdee7c51ba9f1ca69f7932b3c56d26b4ff7c01ad0082e48c51b391d2c71052c2635690c6ffc6fa6f8d1b692715bfa002b9b86b0204c0a054181730a8707a7367e8c4e71ec99b8ed3455a3b44b46668c3bebc562e4319b6242a3ada82f4643cc6c37f8211226d996213c7da75c5c47754ed6d82f8a20fbf50f04284c55778f1d623ccbcf4686aebd2e201afc232f6ce0f2631c1364e5c4075c97f9288ac222d4ca7e0467ab2510f7d6837335c87e6a3fbb3318068228c36ec90425848924ca1e4e3ee6d7210062d63d3dc13d5800fe2b102226a941cc076bcfd62a5ed3f6c8874f60b8383e38c6f7e1db194a1e80acb5927665c651d8bb9b79596a8193adab73a083c62bf7372ecd2b08355688fc2aba9cdc766aa38a8f1ea07fc4c0ec8553e3583e7a9b9edad8d63cf80af030d0c40e21c3882ffac2f532a54f478b23da12e757235e5d3f61ba164749bba03a08c66b28f024bd4615732236410f9483e0afe72d60e597a95bb68e83bde419871477f38009a47113c5af86dc4f5503ab288514522629b5c63d059cf94d09127a53bdec154ffa3bb828e4443ce5edfb67d62a03eb649fc527a028c50550f42e369c38543bf91929921ebc50cc07f30f45774046aa72367b8e05e6f812a03054239d6d68b0147ebe8cd4267a19f33ca36c7069e639e8134a24bb382c36285db6fc11bb57110f247d1ec8c171efbd1fa9fa14658f684256f82607d407680ca3cbb8a06fda13c60923389240cf98ad7f3a9536873c9f9760c23b2d7f80ed8f81eae598d849bcf8f7134ce30215c72ca0e415173fa94e2efd226f479657c0fe75cdf8769455a092ae08f3fb366eae8264f728aab856be76595d23362d8066e1a6a2a8a10c3d869eb2aba4369a22b84bd67cf44b9b415d4a9d645c449586f9ad1f53b07d8725a2837ab32e608f53b66007825ed2db35a4ddacd03b1e83c5899d49fac00e5b868f3ea1c901683afba7465932d8f2e7966005a5d02af4079da88746607771b2e1ae139d98f29ff4c5732f280840bce870d0d5ebc2be8602c049c82d04fbb4f796fd5e1464bae39df0d392ef0a6e6de7cd81d782852f9a1d8560eddec9c7a44c9453bee839c453bf262ef9d9b71fd4c3a4611c5b09734194d8662ab92b2f32539786942d558d97880ae4e75005f425b7ac58b921db1855fb8da34dad254a1b86c327033e1cc6886a3604e8c6c3f6f5764b666432d008d35143590c8a4a7c512ac32b4f50f12f581157fccb46fd267ce676ed35c10f69ba244bfc7be0114601ff6cb9710298a7625fe3974b64c2ba30371537d0a4331e91f9f5217a0b82001e66a599501a2be5862878b40a8281c3f5c3fe191882f34c5e4879eca48691f72e1f4b51095cf60c4dfade37c2b91ea63de6de7a244cab23006233d4dd97ee5da502197daf9ce2b4afd9e3beec2b12da39fa2224fdbc15d2500f37970409c9c4b91f68062b54bd10340560ea26e0795c7122c42978b29da796943f38330338a7e43e882f53797a27970a2ae7cdbff41c6ed98041d2515543e4cc31132a618a2f893d1dc8288ac457ee6d023a274c26346ad525f09bff76e963bee7043bbbb01ebed8bc3c5ce0d2a7b1b0ea9310208f470c814095467e060418f0b33bfa976a693066a3c7edc5327888858e4a6cdcbf597336612e3533f9879843d2c46196d86193d4c88e5816e16baaa8ef65dd80e8fbb9ed49b5903b0a06ed0ef4c814847d74358c5e22229801c99d1ec14ebd4245d07961545801e068f1c883c08c35de3d8c44a452974cbaafe3204d44dbd14be585419385ee723c5e6143db6abc91fc9889662a838f044b86ad128fc38b3070419c3c50e285b4cfe539d28f44a0b0fb2e81555196c5765d6d3ed8085b52a678a95c471e2f380dae0cfe169fc13074f70056c38fb23918d0c080c0f9aedc0f9b5c1355867c7c7cc20e210bf3bcc77fed2077d2fd2177da5ad5d3b49626880860d5baca6eea1b330b8a357b9f9e2c84e301e24bcf39962f76e8d4dcf3a3f44ff7721c4155d1b4e9874ffb360fd9ce24c37a151b4ecc249a8437b74e6d9523730cbb97c73766083a0d8dc2e61811eecb66786d33ae26ee500ac81cb3251049a0405c581de9a773fc74e4b36d3807295da1f8723e03ecccf780d5687053b669aca9b2ea71a0c31dd6e1e8b84df621e9983404299c9f4690314ac89b0df77cfc92522d3c349517bf419499d114b25f8a155d7ce83943d41f10b4d16abbc3791e23b2da64be746b2878f46e204ee435bac07154d2ec38d523c2776331dc42dfab145ef9678eab79dbeb297b22011ed6e281a9649b523fd3a90765a5f9bac5fa4df523fb3b77d92972f0ac9d88edeb07d22db0ad47aacbc8aed0ce758c19995f850a9d8550c5aee003427386d0442f023e244c71779d66953fc91dfa81e3667a7caa4479eb798d331b42b950098cd76b93606524420fc56b59088a748a47ff3c12a2a18532fe7f44c531f4932d8df51277a6937573815f206bbbac8982d02b891812e95206e798f8c124f268342e43e7a61e9c11c4f322986157c614d2a47f834b223526af9d5148dbedb101346244972be687beba04dbc186431c36746b6fa12ffe650d977de3bee555ca7c69808cafbeb51a89bed1fd938ff52632ee5f0a5e00e27b370f46c328ac59c71e7241e5aea5fd294185e4ea199da56ec1445560328db5390c1db5194cab44f3887783d9f609a76906481a239eca682e0d39661614d87a766cd86574eb4d3a947742b7c9754c6f0302d26d816cbe3461cc8d9a4edaa0e22c7ccf5a9f7a39f85a390730a68469c33048dc7e4bc4d8ba38bb5adc9a261e031e4e85622cd756a0ccecb5325ade31b00cb141d12b5c7ec5b766a7ef37767eac19078fe11f73788d0b0c00453f5f1b927dae58d5fa9f90d3524ad98ef730dcd4bd7647dc842657aae841cba987e65921e9e5728ddb2aa607f246a4c9dcb6c60a4489d00bdd2f45b3e3a177eb2f72b32e7dbdd45a3519ae25ef6397dca870c8e386e8cd3512e13062798eec37b84a1150b0e5697cc16bd735e867e38d0f5bbe07a334b48c63db9e3dc6cdbedfad9787fbbc1a4a1e3f41ee563562181d87aa9c55d55bc8da557c294f57eebf6e71fd06614c82a65b225ea8f88f8d760eb2b60d297e58e3a69c27a6b12340f668cccb28164ff180632b7479871a8ff8a8a4ea9000f798072ffca2b93f1350168a49b1eeb10ce7ef4f9608b05cd3735090966092d1c150552bd9d7da4b957e08519c2f138802ca853a588c2dea50ac255693b28a293b6046af985ac4dbe073c7d47947f11e62409eb7c5f527a830c314a3a58cfe359d3fd11881fa42a8fff8c8a12cf2ae1f1f731378b2b368719962dcce5f9ff3520f5f27c9952e1a1d9df10b383a378ca9f50ef54d2fbee00169271b07352cc78ac81fb3852b0e5561516bf3d6dbaa62b160dd13bd40e2b5f311cd7ddfa1ff9ed8edaa90902fc57f1b79b7496581b4fbbd3b4ce29b7092d7ab637ff83b14469913eb7b0b00dc2f6cc3993e10e666f11f60b64de7936cc95a7c08a138f9ee9da4e0bbcdc59c0605a25b1d008b457d7ef791f5d8c3f566ff96e2dadcd18801d44325a57588d748f6bc29a5db08721a7baaa4b0c382c05b446e060734dfbe5aa34a0111b02a7dbb82624a4466a83700f7c351ce045d90ae21ec6635adb35319c9168492b602ac63e4ae236db361e8546a818646c5acecae4262de16f48f56e3feabacc6c93c59866f364f3528e68796ebec45bac17538189612862b2338da27b54b93b9abda72da8e8080ce03b098704e6cea4638125300cbc6805b75146e6793cb45f7aa7f23691a4472b4704305be051076d447c12bdae68f880cb408f6bc59575cb76eed1048a81bb93410591a2ded7194c39f81ab2461a9dbfee8ff51d52fed46e9445c30de51f1d7f1bc1dba444d75bef6111f63e1c4cbb5c52786ad32da2c64738603d8336bcdac5183a3d2a802b8ac0ad7dd707845c513887c8e62d0320ae7b892bb0c282c57ae0bbc3fcc5770db665ab2b812739189d5289d6401271bc8944eb69f42630d28f9e9d2d0cceb553f60198a835da8ff8bfd07f6eb8a45b366cfc1c7a029253ec0a5243716908452ee19cbaf728936d5abfe43f3accbf79e01a6a40f67101575f8ec7cdaf328f11586dcda69885d22358936d4a1710b153b2500827cfd7960cf723f6ad30675d784286bda4cda05c5ba975c08b7aca448fa86c3c2bd1ce79a507c0d736c4178e91b17351ea53dd0683525e64417076e11a91f792aa17e6af5eea4f83a2f2b9472dc9aa9f36ca6f405d8e3c134f551ef4e0dbb1e066dcd420f6102ec96a5af82ccc65c9805f4de48c8f48e9ecc43ffeb1ae855a128b8d9e15b54112ce7a64745e1bad8b888203ac0da0f8924a95979793f3630d3ae84b012c9c747bbb0887a8ee4ad904ae1992ac907e0a70e35b4c6907c044b9fa56fe8a2ab7fa21dc18e9c326e0e560d3e81161c1a6f58d55ac3347a0ded787f15a3f5cd83840f6c7522e0fdc50c32b0d2f400b390811b74cc40805d30f691a632f0b8903354cd6f607acbe190959bc8e1775e8d6c4ea0092384c7c05a959b1c716f880e631fe31f090022a0d983a9434276b0ebdeaa9532915b4ab4da92f40cdebbbcc417aeb93f36bbd2c99d30d22c921b68054fccbd71c3fc95a3f53b4ef9c875e7c6581799e83f0ac519a19909eb2b1d5b5625657f9d6e020b8a5421010def8aa4805e0ec423fb31ebd4de9a787c5ba9da61a927aec5b970e7639dc056dc3a56225eb8d4aeb7fba91b7a28e8c78b1711fdca95dbcf5b5c7833d020bdef1f80e751b22dde4fbd313cfc8e95c999a6dddb77cca0f6622f04298b2fb4a001316fb31663f8d695ad15de2617152f9d33f782d240fb7890f98e4e91533dc919f13fdcbacb7bdad75d6a92504a0e18ee425adee1823788876630e550aab7bbf5b3e3882f7324ea909d6d2be80ffebbbb0671cb2a8473b398132a65f96c0044861f94dbd42fa7abb298a67ada59234960027c6411efcc14781dba6c7300ba395d621c1be9fc1bc462e7b90f25f8f7591aaa6a900bda24b1199647ccc5816e641c18a6990059d15d2d10df2844286b800dbfc9474df21f57ad689c4757c401c63a6b6f953cfd42cc3da00285ca3c56d9233c165b7e06ebd612ac723be6ea4c9eac710c4d190225f8ebda19f8f5dd5db01671ee741a0865d695051dd11ca62944039168052cb9d5e10f0240663c7a5b43ad24472921b0729fbb6e20d968aaccc65cd7ab6e99922151a3b8a1ef26eaa1c9bf27ebf687fadc36a69ca3ee6a3080804acb5c87535c8bf94646784677bd7264ba8ea3546140d5ba4014b3a503a044a71fe113c35220bd3f0e7b627f9a8475f9055297ab0f9284c85c704de714309203a107e5f55db234f701c15f5c3a127fb2ce858a139ca96e676da7e25f049d4370c9408ad6bba10d049c1a84590ec175e5aaf8b2883e8b3f70b2643ee278dd5b2b12624612766881e7228bbc7adc5803f49a4501d0dddfdc7590c741f3a0ce77db3be75738956f4a2ea9a80592aaaf5e3cd2995181003f1008a32157d76ace2550fdc334e03603d19f8cfef8952e3b4662bb93c7dcd24a0c1fd1894f66266ed1af013f213b428aba0cb350921f0620e92f2d10b92860a9623033b4164c1e7e9c19a6c3ad80baf4237c1e241d8463af988903443d3e1330f17ba8c70d00c52e36436429d3e6de254a8e1d11b194ae09f3b35ff0ecff487065d83fdcf9a9b01f737e3462c46cc6874f58b7a791f0692136bdcdffb2427385bacd77de2b157dceeee36a91c1bd7775ccba39852bd85db846461a4e80fe8340a0b185cb6a35b9ac407993da0594dcd087296cfaa34caa2d155588ebb5ede50e4a0e96cc92398d076a2134afd311fa3b1f55af54c8d420dae4cb407e3ed75868ad6a6f2650e53d82f03743a7318541c7c77846871075c1504a623fcc3b6b18dc368d8d043cf8799762b3770ce37ec36ac2eafdb495b6528692b90f15d78ebbefc8ab01a8c968440ae0218276d9a1bb03bfc0089f0e5b6f1a1169c4b9cf746b1cf183d03c549108e274b8053229395b63b53c92480400b356e424e315b24d068fade09b515cc2fc705ba5f0bcb989566f12881b05a73fe3e98f03802db2ee8481cd3a72e7209d0ddc6bc99ec77e4f4c280f90cfd2e0278bc02c0298ef810beab7bbeb97f31487c01df84573b1c6d1550c7870d5eee2df7f259ce0d12eb148b1ee29d17fcb55dde7a6250da28ed2a79c7d40f8943a048ee79b48a46b14546d08c5776dcb1da528c1d48e4fcd6953354b453d983ab02b1adc395f246caffed2382f8894593950f5ea1d67adc927c4423574a17cfd1cf0e5a2bb78a8d340ea87efb3b43a155c6e3e258e64e32904b5a0cd80737f757ee73025b72b7c0c009f61a6c3d812b4dc025d93e2e013d17f9a426756963749fa0eaa4ee7c8a70eae839d74fdb38ff1d670b275044a1de73b311486d9a0f20f215fc1833ef8833b92a6aa69052a9385be1bd1694a5af42746ce4ef72b897f6f5307153b1c3d52d43c4d8b828bb1a46f7cb48ac5feabc440c48b7dcd1829c6ad4b1b2cf130af9ff189253b0c443c3150b5b518571f40fcaad884c596d906008a7058990710a5f5ca04d8520cef88c5e4fd8b43e7abe29148ef794bd094919f3d15b7c5e5d86364db52ac4ed768746f2f2e663b252fd9fd3188f94e7f2e9faa4da32385606fdb6dadebdb5d0cb4f36462b51c7e0b1a8be2a33b9f04a3ced3341c3e5f19db82ec80ae15dcb095f4a33e8e8a7273532036c58b4c18321fc86898ee1aec7bbe692dad413341c81c4ced20cb3a40f90319a663436947ea1de88f1e6ee80b9866caa7bb0b5fcdd35fbd7d169cd83b15fdedb07e8f66613e930d6178d6b9216e925200f8bcd9648268880cba40776fb0b6cf0e34ccbdec970c9c9ab37f633f6846b3f422bd915eeccb9b4282a0e62d2a963dd2e0540f7aa2b71cf3c042126393a7561449c937249933343525c3de694d00a6ad6dd6854217fc85668626926006db1374dfd3b2712b1a0f8387c65646c41a5169a3f60da606f0e56c17294b8ac70031d67b86fa8846db52cbb81a1d87f6e426ac575e99aeab60197877fa862f365631188086ea45bc74c690408716d8fe54a267154b1f6214b42882daf04ff8f970ab157713f5496e76e208cf14c2e648fa9399005a7340ec22d75333545d4bd5d10195055a03d6294dc3927378ff9e09cec98f2245c7318194074cea961a72daed8aea19305286363ae76fbca77b8593b833e4a370c4584472a8ed36e323ff6f11f6a01e0b18d5ff760b72c827a10cbc835a5344ec50be97ee3869cc5bec3fc0c181035d566d973f9b77bf47a6236e54b0a66ba3a3b4e136efb78d717e61115bc853a23481f85b65e5a755aec171f33e33b00a138d1a6998fc363643f20269f84677dcd62f0737a3b1a650f3f306f59190dcd76d4148fe76363b56f5708f16d86cf6d15adb719206e242f8df6c6257c8a16e4b6b61fd70a841aea8a9f588cfea96f6ba084d1ab81073be9dc1746b9a2e2839a864065b5757c8b4cdbe7347183a89b7eb43aa6ef6dfa9191241d5df20d2366258a9917646e43454a2a6b014d0aacad05d0f9b3412e25fcbcc1f12268640163094c3a5fddde96e3649d6d7bc1372718060d0de4439ffb5454978c931bdca738b59c24d66644fd7296241104880ddd47b3f81772de78a3919386bcf87ce5481f71aabed0016b5e9caf8c0d6904867804605f122f901b0553b24c883a5bef2bff74b9e2c75cd65e1343c9deaa03971c087af69497ed4a939138a15e0b0d6dc647b491a5c34dc07b3de5763e31d09afadd6bac5ea8e0d3f44ecb16f8e7b1a3a05d93469f1fcce2470fe9b6ec4e697c34344169a6e9d1147bf400d67f9c23ee7d57a3c75bbd5124da08989386413074cfd16a22c48f7b42d1416066ab454a177c61faac7a3225f740ab01d2e7aa86e2aa1956ca25c2f041ab604f974c5ee4c664cfd251b3aa5fdedfd37d79a37b5f01143066d6cbcae520b5453c18928557c9491df5c792b00a32d2a66204ddc101959ae7610b52204d2949b2de0e07c52d8aabc176bd809138a0da2a3f4d5f58b9c53bf456ba2513b975829656acbd10c762ede3e15b39482895d2de9f2a357752acadf9bcedeafe62ea9cc4486d0c2b9c5936ff4d9025f0aa4c3d99b0919e7a55009570d6e8c787fdab48fce44f2c82f5b8240da7e9c151132d5a44d3231d74901a2fe5e90ac4caa47b3dc3841c601a464cb7eabd744a9fab38c9e98fe473c1a9ebb482c550842c6e48a9cdf2418f00e329deab36422d1049109889714e61c056187e7a660ad53b2dc9fe86610891d459b7b11f16862aa451535289144fa9db1f8547507287f470382af90279954bd3974ed83760ad35f47836090839f58731ce409450b57e4aecd39a7ccb24c9445c70db08a47ba8bd57a8e260f3f4ef11568a24e4c44d0b63f11c0998df0a6e640d877e4d428ebf0e763a02f5d78824516723499c141debdb83cde26276f6f87603573064e3e2d352f703071be8a3249a0834c64ed6e63cb50ce7bd7b9682050a92398dccf9442b51cec1d9c32758807b63decb1e1d5435abbd12a6b036513e5015c211100a156fa2ef1fb40470b2263e0c2fb7650883fd67021afbf9ddd974816800fba55d328fa7f97d4381c58340e185e1d45dc03cc9737c6504de2ac435a4ccfb98ccd13bd12d178c31a1d64f7f83f6712467c972a65c3899677d7a09836d43273e5b003d7e8b271ecb04a0acd94e25030a549d0012c6baf75f35e26c15441b3e0ed02bc3a48e065f69ff920934235e23829a3c32c0fddd6c4c100f6530862d494d9d77123fd047cc696bd49e63a7b939bc2ddc2dbb3a187485ab875322ad6863475c1f6e25bb01a7407d7aa3c1fa314c6591f25e1f10ceb7800667748fd7bb82259e1acf3bf2426c27fdea0f5329459c9c453e5cb9ef40307dbf297285c25cf0509cdffa1d69d14dd670e9993b3925c16aceef75789103c931cf6114d830711df90a63cd7ec242d9e098a5a51747f19236ee88f3acd41ca2e9f3da2f4ef55828dc613a62d1bf18860e2df25c0a6aadc53bfe106e02a7f5526420a4e811b4784e9a2548a44f06e91934d5d6fdbb931f387064e0e1a588d8bb995039c8123ea60ef14ed3cccf4d7a0a283364eb1baa466a54868800a5698789e64e056c1c3a29067a105bd87d49bb826117991f79525cc8184217ea450576175b3563685b1f0d63448d3aaa7ecdb2fd09a505ee42949f1655295b46a268ee0c1b9219db378d8d44172aa364aca9a9cdffde46ca1851cfda892424d278328c75d0bbbc2debd035a9936401af2cc16b2128a293800bc681497e55d9081e03a77a1faaea74135c6d2e5a42f234c67c507099dd8c1bfc9bc24b3490dce8d6e3b3213aeeea1b4f28a078a5eab9a889e67058923bd6fcea9c62573483f75800304026d6b561230e3ffb54db822d9965c622bb356bc924813b1584b821b0fe051e09c88bca23ab68710b8aa662aec06a4c1cc0a3f88873ebb2368e7d9367a9ec3ecc076761335b91406c4179328ad039a21fbb3757c7f93c080726318f688095b932af3e1cd8a37af93b0ed67541565054ff27d827100f5f8e343cc755e69b86f338995930fc83a6747245d286816b5319a1c2d277b6b862556171b2a1ee62d1d6ac73098e31e73a8811a7511f2047d64296d9fd3b703fba3669252d19dd84d08b0e3bec8e3df40d45b6df3caa9038d0ecc0d65750ad8897ca4345fd4927d3aedc849dc07881ea7f386fae60709a3d346411388389ed5d7111dee7fe5a0b0e6a9c11e9b2395d2e04b48f2093151d3ffc33d7608ee9aa3135a76b5bd50f6daf5fee51c7d60498b3800712c57c014b3f2cd83be271f99ba1ee74f574e34af1398c7b489b2cbcf5f12ca711eafa24eb55f8f7afb78d74a8343f8151984e1a05c8562dda3bfaddcf1ab56ecf362dd026011ea0ec6ca84c31efd58472604da551818b03d8ccc27e0c823cf1e3032f90c3ff38d40673927b1e2ca9fe3ca40962c9b8b9f31cc231cfc5f43eae2c218f44b21d23fe4f9e45af045fdcbbc3f1a45cb16071698d86de73be46dc451e03cf6c6cf459b1cc6ba358c9c1762c2e05ad064124cbbadbbbb2a6943aba2978f36fda3f99c59ce253093f063692e4b46d8f1a177366b64a808ebab40922a88d4467850c4c54d5f3bd08b1800506f4eb0d3b137e3a6fd669a309ae57b163cb80a4506f74a0784c34f41505e52c498a7834a7dfdc969f5fc73d5433d4277a061c4afddf3af9512f8bf314ed9e5d6bdf55ed8f522da49dd1f4874756142fd0478acb5e8a82c43b09d11b6d5431256957470708f3185f4928745ea693a211484d7a4482d3a69debeed477f2acdb6af77883c4328274fb775d187b1cf04fb572a394cc538f22044ecea8d7a882d0ce6a35ad6fa197d9d725a45a251848563f3b49b4a55da52835545d7ebbc27c0782d3e188808f9e592bbf1720a5809010f853e4404ce1e4a7787b02b8b6d8a297f343cb4a9c6307c8941880e0b9b969df2f14985a8274a9927862ea626e5cabf69244fdc984ac5b64ce396ddf06f0d997d6a81753fede92ef6778a4a876b908d08462b3711dfd85b5ca22323fff380490630a7c0a102c66c8ef898ac5ba6e195b21909a2e8afb1d36accc5893879400a51f64eb82100e5979fb78b3b7deaf58ca737fa5aa9a914a04d58d2e3ffbd1b32440d5dec28454cb8f803dda8e0840cc649fec3653709eab9491f5b9a9bd857bead474197cff840f69fda33520cce67889ce0105c410ae41f2456c2cde50f9e514c7331afef3bf1921b03e0bc1f2435d07663233364a7b6928dbacd8144b81a8aa50e064ee425ac103513ac853b38f3c77cfc106f74cafa106a0a832da6a589cc5754025585f03868c81e332b329fd9bfd3c320cdba4bfbf67bd73b36aa882b7ed35d0fbf54b424ff71ef04af32ceb01c2714244efc64d5d487f89f3c5fff09129022b76d7ed169a3c90aa742753c223c9bc6482589f456c4dee073a8c631ffd5a81d109c32e2afe0986670643d49a1571adf390f24adb2f8c2bf5667bffec8cfddb410b9fa0ee7ae71dc46dce4c6bba41596ca1214101362dca6da0831642902cdc9325c5844548d46497025942f908c8a09a7d6147e30a135450c16355fca4c0368bd5f5197300df99b807598bb27c62b38d407774122e0752b3296f74160c28bbd344e6703df4c87bb2202d443a394391f07b4ec0bcd489b96355d282ded153c707f4b93146f4e8143605de2a208780d4894530c70877eb251f9e816938a2564f7828f5774f2b31a1be1648b87ce8abd4d91fdd6b4b6f00ce0e25c26a3b57fe5991ede3fd821769922355ecf34762577be0228896ea779f0f9bdb8c4d9314c554186638f4bfe275cadde43391bcecfed7146fc5abec1d58ce1147eb1fd65db3538f9f82c1376d52f3bb9597a9a06af3441b076d9b75a6e4129607ac3352780a679706f7e3fe6a48dad2c324733f91600cf9fb980c92639dd71ab7678f4d9c98aa35f24313fbf07d974490a85daf7a00c616bcf318cebae092f495e6553a198f83fb2f2d9e3ef4390c55cde2345bdc903973f7e4a316a892824cd7a9376c036acfc812a99c2cbac3e1da08492fd013990bcbb4345ae7b51fe0b2afaf9208ec6caadb0dbc9df4d9bd5f67dab0b93e9e1ee5cb19b21053503a23fa2095cea3a62c6f392ca843f085786c4c887cb1cc7ecf9faca8a8ecac529a5ebf8a8c919f5a49ddb8852bd223f700b502d8ff5fbe0a3f6d7239b0014cd65f286500c379a384a474b053e07f4a8b6d9afa89e991eec53c26d4add7243f9bd5ff4158e2a1ca1bf3a1545c9b0636d7ed2a2c5760b20213d1ff6743a2b89506fa1cffcda46e3b977f5c354848d040cdbf0c495cd9d1f02f05300d26d4ac3539f5b6102fdb22f43e10ba6654fe53b10d7ccb3e0b309928f3ecb58e58d95cb0e5ea46c36a30993525da78595d804202c298587da25922e056998605a8f0d6c1fe73aa66dbd886068f417c9c5b20a7cb9693d9ce7cbca4e9aaf74f0d7ab5459879a2822bc257cf01f841f5f5e0f4c780ebd2e9a7db271ac4b8fedb00a9c47190778b0722d6eccc5f9a83048151dd80ec882ca883a788cbbc9b3f5188296e101f8a4dec0c71c4e63c553d64f3056efb1ae86967a72a35e3bc0550fd6c70cd2701a426de55fcc145414e1f5dab09de33f5e0b13ad047b129a7e6638ee5760f4d37f6df352a188b69cd996b11f2b72671109f7d0dba7df0d9914fe59ed2122f0e80832562d6122c21ec799ba6c67de4a146ac6e1f0d36d6cd1650fa04d65a35cfabd333a29501636241ee3eb2f6ae16968ae26189f141ff9fba84aafaa3f7be7cbccc8a538458c428f0a2a0b510bb73250d1657830463273534692fe8f4ad866e068c1269da0147ac7e64b846b58d1a161c3f0c00fc4cb64ba35cc29395eb4ee30a1fd156adab79f0796e37ef74dc8c59de0541ded5e4d5e8033c83a39c93d9fa2560fc14fe7455f862e5115abcbf3ddc7f5a42c9f38b0583bcf1fcb9706a0dc269c73c94005d4a0778d0087803fac04041fcd88a9bc008422a770b32069e35641dc54ff63adfc455c8884b5864710410320f7fb7bcf37779236a3a92ed7ed5317eac85c60acecf259fa2ac0a6c64cec57954768d874f359886307681ce251012bfc48d9521659105c1e30bbad84cfd603d57426d1cb14c0a21d5065bc1e9ee3ff0a2c202ffb1a20a754d043b5249e26c21945750d3c2d4f51d0c8eaa0515fe3a160b48caeb40f79d26e0594aa77db804fdbc6b807db46806d6b2d8ff36b157cbe23e7801e6b0e2ed10ab45cb45b1216b5d95cc32b7c3191fb96e112366362d87292d8b52b71f86a2dd6ffb4ba0e712704dfb507c9f0b091748c10a6e7ba20cb748a79c9a8fdb5795827b0857631ec4c791ea2f303b116bec9faf33af287b2afffe26a6899a99328a95ac52a75b3b7424b36966054ad55b443cb8c1299501af1e8f769a12c2854942c847f03428e1b06ba3ca310a234aa8f0456f636b683c0eb186f4e25f2579584174662c00721aa7d85a3f2302e9e2fa911d645d301e1a95f2a2881dad169723628fc75832cf74830029a1f9927dd3369d436a2ceec345d914078e7333474c2150fe1176157b659115dd1c70cfaad103063a89b624b09f017300430fe9e7ccce46060d7238619ec9c18ff3f7699c98f51ee70fde54809c149264a780ea500a247cfca5cdae2b01d62f9235cd50b958d215e0fd48edf9b19b8ae46dd8eb0ff6b5110212519e709ed076172e7a9c9f26c20830d400ce2a01cc79659b82cc875b8e4afed398200354260b9dacd547ce0db9a4836022f80a14c7a3e3d24506d5f9dea528300c10fd9fb9b209768a91dc34b2e20134185fa6281b3ed3a14059fbf63eb06b522b763fccecccd6c422b8065295813c8a3d35b20809ec25de00188a6987c373d98806cc7fef63ff687226d3264000918a95610a493a6734ed4aaa37a1c14ebc90700a62c4eebefe1e1331130b6525bee261bf657df48a0cfc1f5a873f7d60bb1d8306d5470939ea8bbbc07ed1160998528d2e16b5666f4dfb58c71f1e76eea323e03a2cb453c04c05807ddd15ecdfe2be54c507ed9160942f9012990c944ee5361a34ce3cc22b8c10021f2fc901915d7721055a5188ecd1ff3431a89e45fb63cb9bc2f5d21b603f43868b76113c96763b6fafae99124d48874730812caea9d72e5fe20cbd386a665ea193795f250a202e39832d5b3eb74daacb4af3a68fd6c21dee9cedf8cbdde8337e98bf0d7fd58624b8dd6f5596a87c1887bc5cbfb3158c4c025fd3404111e4ec6e03ae164fcb5b854413d365c1cb21922e275b13d5a0b1d7dabb13457cbc753c4b60522260a83403da48c309ffd8289ecb91e5a7904f9238597140d8dc77097706f03c532fe045cd52c4cd58bebfe6552639a3b07963128c7d973bd35f1f842dfc3fd3ee3aaa18e03bbd5025302c0fecdd23bd71f1e1a72f43f444a5e90ee6f022022aee4e0fd6d03643ae17286eadaa0b3d562f7760cad7968d74c3105b79922b4565ac3d2b994fc00c5793de346842141fce1370459af931acf46f11b2dc0a4f11f998df144e93399b8cbc8696b85c5ad3be38c38deeb364e03f6b37a1d03d50ace0ea4c91f3dfbffa375f78a22cbc8d0dc09e97d80c7588d13910e52dff1c79d857e565ce48323c9b750f151efa3a90f49687a8d89dbc3eb0fd954dfafbbba764f42e574caab47916b785e9f8278538da41d915487e330e0d4265b279528ddd3e0a8bc9fb3fdfcc2a5be2054eae7a9afb73688f4464c7f666dca09b06445dd0748d77cd608e5b15885fd33b7dfbbf4697aaf4f5502959e3d30cd2120b12e64e88a6854d00d9c324ad532d4386bd77cbeb8b1f3792d36c54798ebbe629d754410a0cf9997442bed4fe00de774f59d33c9457be0d1bf991ae83379632df45cb8479d79ed9863de0f25d2a618ad3fd2bdd67f493af5c995020d42c627f308b67f21fa8a9bfc12c3a06851aea7fac2f958d047e80bb24d4d35184e67db70f3073dc4b5e989e0bb1e740f953b383f169e4058dc7adae514ef16373df47e2b1eabe21fe49c7f80b3280d12dc44b1b595bb41cbe0089a169772741acf44417a56d725525dd3dd8815af8b35a9a691cd0ea0918dc369b09b68bfa828b7fa70064fa017e51b65a390828527c23bf4e5c750f0a5ac3000a07a5e5b4ea17ae4e61d7794d5e746e7067eff5bbbbd6b5a70d0c351276ec609f35146a1174cc6dfbb6e0f3503b774b9fc903d7e83dd7cdd56114e0d43de5275599d8feead4c20c33c44e0ae58fe9e49376fe2f4ec935540ec404cd5dcc10e239b256dec6a8e32207f5a4f8e68a10934eef3d2f899d19c6f282bf9c240ec3c8c4bd55bdbdfe6c4273818b9d2b399911e1a4f462a74f0663adf79760988f02caade9da1a42a1952a0c5e476626b06218197acecf9b1efbe57ba7eb82a42024b519d0c54d3187637c70bcfb5e98a0d0e57398b38e00b63244e33086da40458d37de9ca01e2fa4fa561a198e0b4631910c87a6cc483b054065b0d1407484fe1655fbf1bcc7d0e77429c067e6eb1324c96f2465d09e9941736c7963b895621065ba37748883b63e7d734c9b43061f043293140978481b802d78c71213160a0cc2cf6f39ac42547790dec9b2e6e62ba62a7ad1a6a642ca6f2830a630ec0e8d84184d47d22fced0823d3e6eb8ee24200552b94eb95622cf7567abdcfcd3d948e440acc0c6581c7ec5f383af7e8c095997ea7eb304f7f0de140816da8d06c8ad6a952c5c8974383f5811f03527330357eb28610e1cb8faa4854cd67a6baaa453ca4328dbe02fbc6b60295c46a8b0e50b6716bd49ea4aae3c858372193ebfa23c94c7f28fa2cc989b89952d9a6713be9da0a100f98b3a39910b5a6960d9e3916b9f04ae8509c8991bef8a93595f9c5c2cad569c170dcf2d0bf124964a8b4caf0dba34531b4e5917fd29a9732df7c089bdf905daff5adb4e886ffaba9561f64dfc1df8400d258fcc91ef187885ebf79606bae0a633b2026270d39b0753cf004394a7c628a5dccc6f944eecaec34f92de9f9b12c4054e881f4aecfae1d3c04789220113fdeb2fa0419cb2953a8be440365410ddc22b32a26bff3c9022a4737baa9f73327903e783cc5e482be47947f01eb9d632f6e81311143b3c8fa9431c170f861d4f612943ab19239a8e66a92894d8e900da8c1ef691527d8b502b43ddd49da9ef894d028197f93cd841f054a61a3deaadb0f7eba0df2216727b5e7ae862f8ed1e389e2728481112b3bc2ed5999d5862a601b190a2f8ccc5c91c5835ea87f26f083410fb49d5c9110b1a72fdcaae5ce170408b51cd43803b06848d9f1a15f3e82af1ad0d605e4b2a0f92de2c2aedc6e7b79d162170064b257d254f1f03d14cc7114ee616d8be874c734fff344ae529474ff95e0e311f788d656bca671c446b7c44308d50accaaf41e777ec4a89b8ec4c5f606b790d6cfdf12151b76b4e4c20631bd9537894a5b0d4106c3779440ca76e98b41376122494906dc914a0719e1eb4e9345d1271ab3c827b426323363b5191dd4b2bd5559c26b6ff831e21e75f0381a451d08102889695517a114ebdeb313f03d98a70e7188c0a7f84d0ec113d1a2ebc741538727c9311b071ae9ad04a3059685adfcc33194529a9a31ebd47e954459629d0e44dea045b8727c45cf86951202d418f112b87c1a5a367418f012692c677e7827aa7009ea36e94d338684ae69b1b4c3ff3a3771802338c0bc6d248b25f194e31eb1e4aa1048717513ccb39648a8cba37fd2672d2bd669f188978844523b0a21d0a57885bd42407db1757e748540c48d96407ee2e8bf638a795de24393ec37017a77080c7240868b6d4736c960851f88c040752d1c6dddaf125535cb4c2425cd6acf764f7e66fb637f83b45679836d5210ab125eb64b9efd9234e6268da22adf813805cf08dcb892ed402e8bd9eb17acc0380dedf0b460ca9da01fc48e1e3c4ca68a8fb63e3a7d9bea33bde011ea1dda5209db19be0ede8d08ceeef0b2b18e61e48107471d0828bb277a2579dcef974f104bd43ba03a8bf237be31171e8ba3ae13fc05fff9b406d715a38826e45675307c0d9d0b11e3a422c9e40b0346af853e46f0223e963f15c8835f161b9063b621bd25052a7764b3a854554362952c7f481a144b1d01bffc2a8cad409e12a3402b1ad03b6626b7211a5f6afb12c06594f0401d60502cdc2caa5600c2ee7d150b3ecf06f4e96cb342de12a29a41da5af3ca7beb5a81716b3c39c1900aed2b379de44cc109bca5e414c2b9f673969cb216b6d4a2664cf0dafb6474c39232a25e456f8db81af286ed46f3c6af28cc5b1bcf9fa05774733d03e0ba54e6d6facbecb24835347daebce8ca21b06364bcaf91bebfb1498166de8418b0820424f13d5a9e0793c9894ea16e5fadccb3604d93007515f1119b5d656384e8ebe6e2c2536658d00e73bd882fab109f3fe361f7deb4131b68c7524bdb496bbe2105c19f5c0e5bf2b01b66724bc250eb04fb3ec77e1d0a84bab9ce6e8993a58576af3db81ce6d0ea041c3bd15df0a18834d503afd0388e1a6a30ba64aef167c47c251d3b9b97e356451979aa8eb5f14ab5a035a96d352d20c42158cb0efd772b163439080da4c4322920d04082fb9d63d24fe1b697a8d2cfb15adbbdd4747ad7e288e0b4a244f5e5d3898cab71b1fa29648841b551ef545850b96dd094e127fa9b6dbb723f952b63d8344623d26d5a8441429d002a4b6e138146370e7c70c9cb6df0ac356ce2fd185e43085ccb2099318ae3952985320a5f52b0e3b00270753aca2ed5d915bc664efaf274ff5c2f3f1033d939bcb003269dbe1098fb00288dc8e34c34fd63260335aab93e508b95e0bed499df679a15b66be8f1abd2ba7d10f1a035eea5ed91a585953a48506af760d416f2390088e7f4b799ced9f610d57209a75d32b8c0d4c26cc606c292677c18d91a051827f21346269f135da6c475b57908eaa5e6d2965a6368ad481ee0206119d6ec51293ea0d1c4b88c7fbf8e5d0fb53d55916e2285074bd3fe0b1d416ab540c2049b6838136e953ee3a21184e9d8aff1cfcdf7cbac46b77d0fcf9297e3bbc1fb8679c97528eb667006ab1f81ce2a2a8c6ac622bef1a9b81bee56ab9bf050653424260ab7b175c94539accfd8e638e107d7bde13d1b10455214df9c221d3c001bcc00f896bdcf22d1e96d6d01841264ca215b0be53936b84780c6dfb6472cfa2513df01f9a0b47c3729654306148df6725840a6f32f399e17a89d8caf63be8b0f71aed7ed8fa6521d75ee24f58cdaafd3d49d1411b0ff6effdd2ae72174446b32921892716ab9b9e4612701ad956f2edb8188bd8b8a361ab91994b675a3619d85fc32bcde5387e2a6ee39ef0fad87a615ba361374e30d952a6cdc01e3805bb2d0cc115145768309a5df6f91cdba130ca0a0631d9b167ce697a3a7299e197e07235452afbb62f9f401fde604e688676d7b97072034b9471891295b804bffb2f78ef3105ec4b3ca768fc5b21b1234a014f12ce843af60c5b344e331406cd01df4d09491d92d2d2aff634dd2a53e59ae5f9bf9fc0bdbcc0fc92315d5b24e37659e7614316d2f873b365cb3fd98a18ed4907e5cfd9d0ae90d1a57885a7480a16dd903be5accf55bc37ea7dfb1fa167f395b168a596fd821b312448a1c8c05b2a1ca33facf843996fe182bf06bf0c12678546fe5abb362ab16d6fa9abaab74a5fc65557c583dde5162c40cd6380e7e8f608ca4f0ffa444f8bc3c7cee8a2211d67880b0a78090f0c88c6064cd0944262fdab97db026aa467a4b413aa249a3d2a4cee7760b93691599ecca4811ad687c81c2a11df88d44b4ff52211fd6fc9b1f0e8e8fee4ee5b663921fd64d94c3a322ee1d9aa3aafe2c35576f71a83ad8a2d8fe65bbc2e906b80d7bd549dd34478dfef3573ca44e86ec3f90d7fca6cdb3e47ac97fff6314280f9942741c72cef4f83caef47f15e9e9517dba9595286362469542f864cce17de1b2475f04752c3e09a2831dd9aca7af10eb91c9de2a49e70d5b5a55f99f603b3c656d6f56c42a9e42792418185f215724ba0127a1b9a0801c7d0d1e7d050ee7f32f24b658f08d8f85be460fe8ca7377a140b59f8d143a6ea33e4326c231b003219d0a4b111fabbc16e317ea3632f58746e9184ebf6c1adaa988128575c95d6dc2003271c0d95944134ce2c5e07100e6d7afd7a7a59bba02eca4fa4ac2022374be200839485aed9cd83a109aedbd18bda442858b4f80cd8b19ffd39d2828d31881ef67b872034377ff66639ad42abd6fa66a8a2979fbe83ed4acd036e1e4104c4f124ece7964b06c10f315441e3dea706d449e2175c28991398aa55952f59776dfffd50e9e72e1f8d4907ea756e6ab90ec94adb6d42249500d8749a6cf8606e6a47c3affd1a9e3122560b27166d781f72a2261744599c7b19acf8615c6179b417ae61cbcd5cea1cd52b6e8d76bb654981787756c609d4082dae7c8986f0495845424777a0bb70c2165a44616d1424b7e898a898018063002c0fb749e810f4c5f2088ad3147a4b227935cede5c2b78477afff7897d5c88635343c81aea6b1d1678f69d670a085bae9476af0242abe67fa71749026f458a034d8256b73dc9652b100a255d0e20e89629498891b861e2be165c5a7076da15ce90dafdef392cb30387754142b94192f3e4d2377b6cc75d820297c15698c9feaf4e4f75ade249d6ecd15cd6849e84d6a9d5841db45a0fe5730822ea3ed79718ab048121504a3a0a862105fc1096b31d9f42e23287a0aee4c637518c180f090c2041411aa6975586580d88e084b7fcfa8c993bd3537d62d8fa411b0be36a06a687388f4d79f056036dbe1a2d3ace3533e3e087ccef94e6cdd2f64f8802a5af41c8ceeb4afb2d5ea68e4890586bcc67c72b2ce50c259f8796e1854805143a84981e142d9e5310c47f455cdfb019db2f1decc02e8960f9d23bf98c044a3750476ced7265bb5a581b07e53a42959b88be744fa754283733f5ea93f6bc3387831d3a454b87bfcb71a365e39c1e5266bd1c89e25d663232fa6a77d2c0f6d774cd73262c75c690e7b8db516348a2f93f99b652f711eeea23e0118b2a3b20f165bdf7d29167f2be72eb1cd672b2fedf493d6d955f84603b6270206ff9b07dcd7d39ef29026401216e0514c34459cd2a1a77efad99f168bdc3caa02a0bf2c3365823e7f0fc89851d996218bf4ca41fb0bda70582d86ad539509fd52e65f33b5829a4f61945a01341130f96adf50ab801b982c23a369fdc2cbb9bd24119f40beb22711c7ac6b5297101e42d8a450e35e2c57541afa235ab30b170a26a648a2baa12dc294ddc425eb97029367350f22459d004daa1889adf409ece6d83d689561771076bf86f51922b4cfb59e0371d8a569ee861f3630ede028e18becae80307202cec9e53e357fac0607d7f20eac5766a9a7978170121d7a57b9d583f0f2dc9347e996818cb5a13e646d14b5408e2a52f2fcf3519971e6e2b67d1ccb8e15c8338422f6a26a17ba055bff7aae48a78e5feadea7de8d1fb039af5853d037e92d7052a46e2cb7eccf310758de3e7c2b98c016713305351ca59a1292ed220181f390657706f8f8368c27c0b1e6b5b4f5810bf4fe41013e59b833d093820c42b6631e0f84c9867e086081ea60d9c92da2259b9b2ce523b3f6e377589b0ecd150814d4687d8e7daccdb85f500726d8cf1fbb682253c4437b698e9119fef7b2fbb2fbf7afa729d41666c50251986c1ec998991728adf5c588ad07efafc97edab7adbd8ded9e86950aa951049176f8aee5dbd878e25810acdff94a55c28e6a4ad3fdee9aa94389c4c99ea99b46762208c9ab7129a873ad2b7a1603c588f23ec78bd05288f12158f4ec89a7bc5f2e95156c333d2084ea373594c1cd12a0ae333ed07265165fedbf2ffd4ba50daab76f047e44716d822b1b7ff411775fd65c363d839db507fdb8973bef8071c0cc9af804a2a88f2c6e38087c175635706b9a238f6a561f7f73c4519f8465076d7124ff3f4e3f9bdc3517fe2a499683fc78aa8be50e153ddbb8c03c2b004dbe2d15ed81b385ba1026cb2b9ebc576807a2aa9008cdcb800fb85864f6b59181d1ea5fa9f110e3b6b8b2fd0afc167ae360439dff37f5e4ebeeb6d6ac4c66c10c3c34ee0929d1fb13498f2cb83a1ff7f832b47744c090f401067505deead476f2caec0b8c3c1f2fca20aa25701f94ce81520dce03477cf4e77356ad2f7510d8318670b56215811d657638f41f8759104d1944a0fbb1b11c3594496f682b50a886dd80d738c6879bbfcb34800308b5802920939103d06faf67a48f377fffeeb44bed1858d73e8f4a3c9ea7fd792faf596d0f4cd25e69d66a39fb29edb88211b0caac62463f038e166e7d27163b3f1240f1940c42cc3c68084d50bd06102bbef6eacd2fddc6cebc49f018e08b2a627eeb501220498f9f9cc5b5acd22bbd66354f2cd6f4a37c2b0df7fddfb0db712ed26d8e1c622ccfcb14ed6b44927e0d8c5e31ac7ed34facf00953b61584b1838a999faf7e0bf4b20f0e80fcc7c85a8c5bf5f352dd1e5fd5ffe3b86382fe665b305887da786960662cfa7dde5df5d0311d9fd9897266f0c43e10f8996b7fb89a836f95f895fd4c91d2f4e49dacf31fd5c75010c9623e91a23b74fa8ad2678275f0da35a94f60b1513ae94bae51a3d3acbd81a451a9ffded6112d7551c3e2322e174eb955ecd12d0db3475325ee30afddada2b40c2abde081f44a4d4963e04af4c0501d7af82fdb5d3b0496d1daa51f2eed017f49ffc2b355f3b2bc05dc63e8b0b50384b37bc2eab388645df729cf0bd0aacfd46bb451e6f6ee47c123f5582a7a703991796312fa1ab4e7c25609f130777bf10e1e6ee2cdb02c5e6973f583e95060801df9bc40869ad8da1ab5cb52e440eb567a5e18e3366f687f8838082f7531614ea2bc194003164a1ffcb0200aadba9e86283ff7f34113b77cdaa212895bf5697596a687af49f758d8f391424505305a75aa03e5a0d90d95a5ebde5dd7075fd07471ed0e99bdf79d5c77b7970d2af62379179ccd2888ba9d29b1da7c6c556df26f1374861be6b1c09a257b4fe9723253733536a2214d536f0594af0c90ed632c304a04210491c8737bdfd84716c2cb6771541778c634301d91ad8bb1a80914761f003c200d032fdaafc64d304af54b97e1eda831ec2b9ad122d96cd2dc99c9c92520a28fa2b8e5df5d7dcbb5912b6e168e83b1b5d0ccf10a8b7469af4c0072aecf58f1ab18273cbee53db785dc149f7473792149ce59def6a21b1ac8b0c40ef9064f6bcd0d43e756b31c36f952e96b5af441d27461ed50273cc1eb689705a6513764919a213b41ebcf0582e671943d7b1f6dc94b00d6d766ee795417e9f75a297519e8015fe732830676f1ff13380b4b7c2a48b10c5aa6275643262d5eaca7632bcb34c6c186a96436b199e39ebaf25547eda98968fe94efea073d258473abf84126e15648034bf4dc6206e42e60ac5730b17907ba0c3ea4a88e297656e88b84ea612b35a4d0af8aba8cfcfbba6e7abd32e6c41d34ee03537bf4ac97fab64ba5785f059612eea6901f7a3ed2f16c7b9ca2b1b58215cbd7bf7c7705ae4d4498bd2af919a8d7b078f71e58f9c77f79e0d4807e4a67bf29000ef00e423d74dfe7987be10b4331720058e3d72b20cd3ebc32ec7af049e7be54b4c535b363c4df5b6f67a45e642b41bc99959b12fb1b58ff5109c8a04c02069c3e98afb27a043a66987c9d30671cca72472777f2bc6c5bd7ef87bbb649e7c33a5dfa76087127090056ae74bdcabddd7f74590b51acb014b2f6440654b0c41613b273081e063af8fbac96dad6a5fa0c2b7aec006e4200896a7e9b6fcc517245705d15f252834f11abe3b17415a0c78417a511d7db06f0264215fc920308c3d549c6163608686951e09ecfc57f7824fb1ff58c71cf4fc66ac12477ab920cd1910c209f08859cd45570f60921252d10cf6a6b3571614a25cb54566c543daee27055c089b43b63bd10ea82728c2c6040c82b78ef049a93912715f4adc53a2593105f89869fa341020666998f5f50d22aa1edda0688d0deadfede718d6ba4267790e88baca58d56318417b56741242d6446919fa129fc92731d2f5d0c305264096332d63e3a33a70e209162d6a0af5e5140dcd06d6deeff301d4129c364c0c87585a95dc327125046f0ca534695ed38e1638e738c1aa6393808fa6643a0b781807f757b3b9d884b0db577731d72b1513ba016b8b68afa661d11beb8d16cabc189ff18027ae45146836348856b6773f10159f513242a3205aa8edc96470ac4738467c917512f8bf787a137c6a72d0968a9aca6830f1f28e359e4fcc55020222aea39d38a1cf8d84ba9cdbfc40ae09b4ebac5b7548a066146f4f136ac60f0f405b0c132f9d14d74af270a2f0411c74ffda36229c198025789b36a1f0a15b9b35f54fc8fcf634d1b4232e1905f49f308c96c1b50e73d85136d3632eba0e5006decd1390f1ba0cc70e813f8dc0a8d5ec55e733ff359377fc69c3cee99b458994cc8e24fdb2aaafd67d3f868176e0008349c3b3f946e93aef7bdebe734e9550acd9492a769fc6a8e0c61af031436b735f8e6db67d365c0cb193a40316d490f2910cae0ae885759be82e252a4d33019541fcdd8a0044371a67ca64d3d72d92febe87b9d0ff146d591bd3427d3f01611cef7ca3533ca3aed14aed4dbd445c45e434ab5a3f1fb68c3409efbe182c2b1081ce897aef994949cf3aad3d875985f3b1b68575605b9b223eee7b024548117f0ee07eef5bcd3a77a206a5e31b89fbda7854410002ddca63812df489e17d5eb0f60454e6c61226b5f9325ee279f73c2f482533d833252ff3b10ae781b33eea7cec97666b3b7314ddcaf638730a2e4926606d3792fabb1cdee67c6b5626335f3c90983aee2c825da85e641ea8a2323ae9d15222cc963a76b5f56bf87d5f6697ae770cbfd3436609b791c47ac5a12c55b1dd6b1b91601641b948e288c029a82cd7fb27424f757ae8ac1fd5cfc5b837d146411cd7547e9cbc3a670b009ba2d409a20de585000b1081de9e41a6c5f6a29bf4c2630bdb31f81a792544deef91e78f01e0977e9ad5444c8b4727ea6c6cd57889b2407656e502ad836775052b21d8ad1e1b161bf0e4ad56ead150ebbf5f790a75ae5c76f18414f335fe44219da5af21308f15258259f98f6ae2adfda9493bbbd2dc980bbe57a3edacc8111358cb30eded8846da281b9dfe5e5b888e108d49ceefdfa2503a462da11658b0580e5898c288458c711e3a461e76991a1996767889e79599627ba54ca71ee9a2a8cafdc7088ef36631c543be866c457a82739f6f44f50900237e3a4caa36fa8da6cb2b6cb49717a3927998921beced4ad02bd610cec6f79b1917e355b6721ae7f722d5ec24605fefb310546e83cc4c4405d1fc89e2020c3c297bd48026d3375a9756837471dc37a31160130846b8e5d1179b2e1aac7391c1203c784adccbd22b41ec846e7b11efa8e582a16f48b313c334cb53f3cfef5ffed8f88cb52c28520800c7e1e34c3ece142d44459916e0a3db46271ab07717f8e25c22df3bd644e2f65971f4eb657d125e4fbb605a2bf2830a90a3c0a8569ea4a82b19344345d73f266aa09902310c21354a941d2f6a173b99b69f21e167832af24f648b1ab1b057e48c0691cda830e07daaaa15e67f68811816ed31b49f4894d0314b9e9104084e1a75deef27c100853c84c97c587883fc8de10185ce4e1a14373a86fa9f343b3e054f7f44ea252c38be0d3c71e5ec5d247761c4dceed0f9bc62538d8f61a18c4e0b276591c108383d7e04906b2c136ca46db543d2e6be2eb04a3f4af4011bbbcb37819bbcbb696b28b6c82676a7b36ecf5315c0e84e585918e0a0eaeabe30aace41fd527bd12255ec0dd01ed90b1da7261580ac991c2607c88a41aac06d2aea933d13336550ed91248ae38abd6fb86e90496e9a2c326c99f135147c6147ccd59279e51aa30ffca6d921f04ddf79b2a933d97946735c3be64ab29b5d17b08ef1c08565716913790f330474095c8255ec4856a8b843f20a73b0d59e201586d470c46fbc62786c14ab0337efb214bf7b54f5350874a32650913ca17ce6dd34cc9a6ad0a618c6593b66f2e3ff8b8529539a0b2672ab0983b8e08703ca50e5763ea58897d5c2ff54d79db897c453248e3bc7580d065ab8c525015e286fc7534da58f91c06863086dc407127ac4a48a9121fd259e4cac1c7035f121f5efa2b526850181e1d0bf59f4bc137d6a0422cd54140dbe8553a6845a425b68ad7b385683dc8e6c8c533482acf77a1e796f9f044152f9d60adc2c117a860227851f7c5d0320bb5c9dbf6de856d817b9d2f83e63f37e3ddbe0b2852744c67c286c9acc752d5d2794e50c4c59fb4055ffa4809c92462fc6e0fa00bf7ac5ff50223ce377a802da08d7c1850f65a62de76aea3a32247bb44cfbdc167f01d925af2524d6c593890d5fbced5e78c31b9cc7974ace2bd9467bb4633dfb8ff10845653c4761696dabe01479300c174a92db5eb8e5943b094f912ad7b7a67f702564b147a247d30f35b422a0d6fba2d64bdb281c2bbd5d61357439b542a7f0c31a80157387324d9a10c1ee649c85f15141e584d07bc7401ba0ffd3b5950cca4d50672ae15156659a65966d55ea999551db1e0b24b9f8d444599445411906d5a9d482c980a00004d934ab818f5844e3fb1870970b00dfde81e30e8f0c0c770eceb6d124b53246127b7a1ebc76e914b76ca24534a2905cd03f80347035f3bcace85facaaed5c22afd9942b59e903e54413a3f040d9d32827a3e2ff542e63ecfa36b406f1fa73867a0253f7b8d734e75051301547c88f61110f8d3a148ff8828ca3f288a7e5a08fd7405e9be5d7fc47a8dde14d1d8bbd220f65c0ce9a2ca94a8e495566512d29622025570d0275969de1e433e438a7c98fc6cf2db958789a8a4f7ed4d5df55ce49c3558467ef171efbd79ef2dd1a5e9c6300c439de8d3a35296491144a90922a868696969294bb1fd73097bf80c71717171912061f5795b7d9890220f6f7b59bee49da0b5175484a45d26f876eda92b5c14afd404080707c6598902e19c80706f3de9d115dbe9a3eb6b0add2aa1d0a5a593c4dae3d37dbbf6087d966f579e2958ecedf4826c0444d1671f751031a2587f5afc74fd174b444c51109576ed69fb7cadc7e7f5b26fd79edfff76ede1fae2b76bcf150e47903aa5be221b623eb6a4b8b35f27cb53beee8fede9057adfbd78200da1e5c8cc443434b317eb01ff31e9499f01e64fc0a1b7bed4c0fe183b83ef0e46c727c0e8cc9b09ffe6706747de07c69483bed919072e2be040c98b81f9d863b0438ad5c7ddf7b08f6188f75b2d5a2cda8f2fc636725bbfeb0c88f65b185e998660f6ddfda3a570f1ff7d9d4d92186edad71959f41fdb3e0eff3a1390238bcefe970286bbf3711ef0afc73be56e8568f10eb922687269189308921ae59c73ce77444b8d5c4017b4ae5e80a4264d4a584d5a9cf51f921a45b547c6dba2fbcad41d0b888001947a4105be281501bed3e73b0b014d1580cfc487ad8b65a798dd2196c91562873cf121dd301a9fed51c386eaa3aa611ed58901533e55bd6251e75451856a818f85daa47ae0b36b03ae929b448a1ae313d3a03ed9b5bb891c2dddb852a4bad0a18a50b5c2351f08354ec56c6c47b8cc6048698af185b4e45ba14af974a836cd4be53f3b724138fcd2e2903a0c200d4cabfde27083ae90afc825ba3cac13232a0a33d54a15ab8284bc4c643d17456767525703968fa94d555265f82e1138dded606dd8330ab6c806bb2e55007c96478c9e7ac788e470f15d3238158a0afa2c0e0be47ad811a71ea9540ce0db51bfd2487ca02ac077c4c792dba38dcc5ab9686faa65b34f2c953b5443d59cf3a00e07c661eb47cd527f3f54af1df7c468c9f495a9b6899c4a8104df08abc448cdc06783d49061363675438509161d04b83922a61e2030d4fbe2845b96a1ee381d4720083076d96ed2ce6793d82539d4140ef005511fe0eb5c706b90539515f58a6a67bc4951e5c07c9746085be5003e26eadc8e0be134e3735343204a78a440e1d1055661bbf87b879c8825272acc003cea9b717ffc541bc6a526c0076583da44e50538c012ec6750607d8522eba538247cbb86780aa164cbca521ae0dd400f5b0e26a1b828482ae4fee367215365fe767d4203018213190d1a2bbc7ab4f7301e1cf141ae75d618120b14715e45daba8fa70ffaa929e88968bc329ada8c2d02959ef69a889118087e54aaa62c4129d1e6030459086235127bcaf104c6d4ad19c6f87e60811b476d5561439cc4e031232c4c46c92b5fc6174ca34380df018f95c9695daa4abfecda526483f631313c8cf73d866e4691155f99b48ad218bb89e7b77cbb3241094a7f2b061830d29cd7a5a5a50dbfdf9bdc8f2b486a274805bd030eed6bb8b4bef7b7eb92d00c7defbdf7de7befd51e02d826992d5cc6978b318dcb843b8a7c93f9768ec3de6dccf5d7c6580db0cd112aa0446a557afba28eb4904352035df6e6764b5b9463bf58df6cf610fbe75ddb3198b5f6f7de7b41cfbbd6767b775859be649db3d2d952859c73ce39b3284133a252e7388528cd408bca185f83ab929412d3099fa618e40c5e4a97f48255a9e7e76fd70f57fea905576e31712a7246395b73a06633c47e2a3c4057a4b832950e3961a967081f349c1e3ef0a049e4502527238e240129b1e3641b3b7f5e345accb8423fa0429b9e4e261d4e200f45531e7a6953d0a4274cd69e0841d9cc3ea871d2003bc285c66539993897409d4a3e4475d88036e9f0534525edb9a12a94a03d43ce9d1e278f1bbf1088bc50db4277aa509f11a7d5d2092209094452d0112b285c14d4c392146a27941f3f706810438b8102b19881424cea146a3a977ce80b75280552774e2771369a9419c942439fe87041e304d2d5f601da43850e12a70b10285412fae4233a57f87ac2a4b8b50521190a72b6ad676428d6d79c8b330716ca55e24a88b3cac3170723161c7c502073e80d28674f9293280dfdc0038a0d2932388070c6d0f271a28608d484128a04e9080e09e8ec50e52c7b83c1864a1101f3710e2943a9c2d01230cea21567102b7448d40fd3d811872047426e57d0187048989c28721239a3ca813a9971f53b570fe252a0ead48f9311556a83062b1b784e35b9244e461c3103822ed901c25811af13478b1757a817d5d97b4a853a8828322ac36f57a35e08733d3754091b9a42cde7ecaca1e39c328646f9428fb8ce33ad73435591a8a02634844a56442457d44341983bb9dce6d8521f35df198aa4236d6cedab8beb1cd2caaa4265443135a51ad4138c88e854897ae8893914855b5ac4d6a4e6c1990d1d678bb1f3c6d71817ba41eb4755ba1385a2351951d31e0d44a8150dbd26734a6e466c278fdad3192a45c7d4d8a9e10b05d7142d13556151e75b13ea817a35442462a8877698ebe106832d84dae9757642e9a03226f795830bada2f556751e45a1424d24541d4244288f50efdc317772704b79d870a89d54ce501e3a98c6d2a06d2b1558da6ae29722a9125afbdae31372e0786d30861c1c9ebd0e0effa39db91e7b0dda805e6f7cf5d59e07769203ed718d36b1a84b3b737d36f5cd31b8df2dd7eb34adccdee21bd0ab95ba7badfbb5dd66df7cbfd5378e4a8a2ae95fbfa97cfef5fbeddb9fe1ea0fe0dbd504d2cfb9be7bb1df7defbd7c37fa7eb7ed3cbca1277d8efee38b38615b3b437abed3edbe83f95cf47bd73b79e1fabce381a18efed704499bedefbddc6bd266f3f6defce666d08b97acb97e9b3b7b6b41e69ae08e2723a669254ecbf7dd07f645bff5ed177748257dfbad0f89225ff4a11765300d8fc5f3ca30345d4251b71b7d28fa70378e16e6b3ec783b5e065dc8db2d5f47ffd1e7e80fbe8c135e40b025c31fcd90c593bbde42dae8bc688e38a6a5ef8d0127049ff43afa6f91657b96ab499bd0ebbc48ea48516b109aa267b1208ae4387a51b7e39e452477305fb7b39e85244dabf39ab4d1ed3a8ec131e1064d2be37bc0fef5535bdffe0c5f6cd918b470bdd822ca609a8b2d06bd0cc6bbedafbdc1fe7ade77dbeb1b1ee8b5e775c01b3fc63b1e68de5c8f714e3225f5297cbb4aadfdd5c44e89255f06c3f63cee37dfde5a0a397b23296f062dcc97b133d6efbc8a0831d6a4052c3adddd8d9e05677283edc76be637317b0b7321e77eee53b4124bf5f8dcebd2bef63adc405fb080b456e7fbe875f4b7d68b38d74667726f4d9dfb479377b379218b3b1bea7820f7bd669b3260ceb5e3cd46f24df6a3a580bdf5a4a500e2b4fc6de2ecb5cefd3803786f969877fe1641db07fd4dfbf97af8ad23aec496ee45dee5a40621cefdd6ebe87f3d4ecbbfa617b9a9737f68f2f23575eeb7262ffb161ee831d494bf03ec43cf438f6fb8b376067f9e773cd0e7dc1ffa1c9a37a1c79eef4af0ed8e17fa4cd6841e7b51ef78f7eb4ee2b4fc0eac9de185dece704072807d086a9dab73c96e5a50c37df639f7ef1bec73ee0771eed754da7324edfb3a02ea77bfb5ef3131208602fc6b5e5041eaa44cb3cf384af067d01e207b9aebb5cccf1564996e69b4df1bb41cdc10d4d8c4a502e24acf1bf504325cf366fbee2d8ed1be7b90acd9beebdccf4d1ed6b1c1fe06ccb9db8668310dcefd474a9efea6cefdd9ec2d76e6fa164bc17a094040d087868aa2a1d856282239d6105a2bd41ac22b35bba1eb0538ac6c7559fde09a9b838302da4a742f4c09102c6428ec062d610d3cf050e942e214452a4a928425bd706869efdd8be2fbed6f18bd282310770365b716416b347a7af3bd39e79c739f823e7c404c413be3d11545a56605c5880907f5174fca68300d69a2f5248b84ce3a2154be942e6599014595206255bc707c00d496050534836f09d9ad1223d692de1dc152941765476c4e3e4e76a07493ac9fd01292a3a0ebc374cf7e56a0cd244b2c08d710e29c0b69291122e4b4f7de7b6fce39e73c0a6e45571113ee4b9824b9fdb0b286a4adc5c0d1d97c6057822544288713d192105c0929333e983d0149d29364a119d5105a5ad35a0369f4d6b48c641abdcb9738e0b55ee79cf370efbdf7de9c73ce79c8f7de7b6fce39e7dca7baaabca6950662d1e87918ef2d68035276436b48881548f8de7befddb2a10a2dacc95aefea48909613513682e5040b8a904c99d414908629208214a9c1b1760c8571ce39e77befbdf7da5757971c10166c57716a596d9f1b1d952e651946f140ab0deec84bae0227f2b92f817c9c952408e49c73cef7de7befbdd19868ac293d4c7707e6e3885a8f0cc6af0fd1a2ca5b3c1bc09e8645c587c92beb86d15d61e528e59c73cef9de7bef1df2b0e4210ff916e23ce421973952640a0c1e332a16157817f239afc1bdd6601a1ae1ad75f69380123dc89a951594002aedb5a570e5a3e2ed5b1545bef5fc6aeb5f6fafa4fe043b633969c15e9b2a29bfc7343c17983e825ce779a10db7e1de5e7b7739477b30b4b1b17e9336a6d699b4607757837ca7613e4872707df63a7b174c63ed0b9dce873a9d0f39f79dac02ded8c3ce411d2737c835a1a903433f5ec07f63ee2f59d37967eae3fd619aee3917fb7c7f6e2a20aeb4dc6350f71a6e760b3e6981e30f823fd0f7ab9f52f63ced73df99b8ef3e7b3045d907fda660873b74a120a460025d4a182f19a6c9df0280bc707f9f77dd3d9e20c24df7a08f406e40d67453e398debbfd3a1c234220737137bec0a41948800218f800097c909c4adc2d4c1300901c7f63d85f46ec6fbae7e325c3349adce0ae29da7435dd736fc972acd9266866acafcd20cbfdb528956028b6be5dad7a585981597cfb5aa27879e2c7d6d4787741b498cac79e97e13b7dbc5a157d8cc3bfb533d9da19ec7370f8b738069bbceb77bcf0739fafcdf69867b836d65f0fda1e32653062135c30484beee237b8ffeef7452e330003d9e2d44889c1c719ec1d2fc500de6bca580c68a003d95f006a502381205abc9640fb76a50a8e97a8e42a1d4f4286684a020003180000180c0806055112e42086e95a7914000750ac3254321c5a320a440251300c06034110c03008000010000000c3200c0862145bfda534b080e51c6f210c4adedd17572b6c393c77f971146fb6fddb9d2796a5f618ccb46893278edf536c322c7826f928758c6c1fb80bafc895b37d95cf05fb5894d744cc5429be83b77b635ea4be3c584d2e6e11b6c04ae7b5069936c71629140a05e692c464913e094136233c72b6ad02b1e5a7dc277510ccb2141ca9165e4c7165e216678951d3e27f1085de6b15bce084d33e616be40862e0a958d4a4248fb9410809af7520ff7dc74c02c4a5d848ce61fdf90d95d6a70e6937f83eda9c7ef17ec6dd33e89140a6c189832bd03b7843fbc8c23cf05e19e1901b118d8e30b1bdba04ee9c912b66bea05892c9a6fdc89f19c8ebd56a8bc5b5a4a3910c04ba138310d8369f1b51cf3812637205e24492b843af768d6dde6912c038706ff347538158fd225236667384d364ec3cca6a84809d00c4168050fbe6ac3979648d6e85db0025e062f4695b720614ba8513088cb32b2e3401b77ae74340b1b457685763057cc713ba73b4aad5f890795258d6b91cc7e921e644d679d38a1620aec9f7ed5bcfbc0a1c1e1a881d4378557d5bac7063bdab0888d6fb77055eeca8a27c22a62a5ef598a82118359041d1c78c0a808699f55197652e02d184d4fcec18c864e3fdff3e9ccef93092b6582502b2e235919f4a23d5cfc2ea22a1bb1f0a16368470f0c7c1a1d4305495e2fdd6c9b232b5881fa1ea238b96327e1d58a7b15fd8d0c02fe876804152cad0ea27abb2ec913b40767b92adc77930ea43755908fbd7c1ee757d9c4c0d9710f4577206050597d9a87382284f9c1375694399048d66ce1e0eea43f4488245f93120ee4c4936037c8be9eb8d10826f9b03c22f693bd819bca44eecb8ca2a6749aab42d498789b24f4a5573ed0b1e8d7e93cc8c6a3f1815a59e162ac40a1010112b80ddcb0ae66ce44549f2583ae69272c4f51db74ec9c3c75f7fdb31ab7a6d51d5505779be2473ca9db801ec2f45fd8c4843f1de8bf1054d93e7e453494443456052b40fa4034a2181c2db8acbc09ae80b070403beb0a98b1cb88efcfc2e420d18126a7179db1b6c8ac2326d5dab9549efbd3ffff1cfaf20bc6609ec2dd44daf0adea2004175f44232f8153407a4dd9d46c80cdd70f014f3bdf3c41671481e1800aec6cbaf1ed4035de151e9cf8e7b110c6b3eaaea2c0e26e9df03ae7f560c7b4fa75c535dad59fb427d0ec9c36bceeb1a420ca49353ce1553f37b995525b0e7c8b2ef59551cd9f8bc1038cc2875dd9d61e03d79e21783ea0cab181df05b2b7e6c109da41c57db9ab351e974620e3e9ac7d50a41597e16688bdcb06a208fd40e4617714508a14cf9162f72878d1017ae455dcead7ab20917cd809b896557f8475c3cb678d7f2c6f93135de698eddf22bbcb5178b21bcf348620d5f61d8336a6d6828669cebcbbe9f15f70b3e02a5ad70790b6cc659ae8295e54a257f931a7f2911bbcb1c4c20e840ae63940761484cc8b60e775cb80ff2c95146327a0acac1abfa3ce30a09e7436ec83f7817777e2b50994dc4892f14e0205796e6c6993c323278025967961ca3b6691d524aadb3d087fae21bcead841a5bf26eff3b42a6cbe00b969e625420b94c0ff137f80f30a1d361fb5f0bf751ec4edebf4d20ce59acf8a9387755730fd595212911017216aa455711646c22e80fe36dfa04846732f3aa113a9e2eb691fb06874dd0791e159979d0e894074dc69d688a6ee205a5920ac76ad497a03c2040a3aa68bd91cbc6570a5e9a6f13d39c44cd1e28c80fc9fecbc534b62fa6006a478614855bdd54a93c9faa0faca3687101ddaa7c06264686ca37254659667699eac7ddc09316ad4fe037123e83c935db628e09bcfd19c941989e566faceae5e234ce661e599b4c9c6ae01f59267d2cbb6e691d6deb5d0f98d886c526463b2a55990d842f19e529956901580bb487c5c1ac0562f2f77c8ad5957f68c90d12615d86d36dad7f95649cc1c590ce4769abd0406b33646505ca856478a09d7bb6aadcc86ffba385e5d9ab734f05e2a8f05ae633873c232ea2507f7f235f3e8842da3a26b2c51d05f73c2ef238e2c3f42de262e4c494e196215811a0e12862763c8d92283857cbdd9ac681abba0899b9e8079446ee6ec7b5af9c09977e3b10ec6ea4de8a8de1d873bf7c680ee1d20b66c6911a981f04d34cc117d8821d919f051467c3be54ed41248248eac688eecbadfd098f6696d6490a8608ed458683dd4e21bcd75848ea6ac525082157839cb43f1ec04c7d034d377be718b06c4425753a80f4026995165d5d098f7d0ad9abd47f1ea825ec3f6bf38a133e036f07251ad5db9ea31e33675eb4c87e6588ee1a2ca389fead5816a4902f1b7fbc0bc95c4a0190854adf91a65aa625fdb766440411707e7c4945402491db18af03c2e7454badf09edb2e84be4d7d5213946c9e7e286b4abbad905a608e46f192d273e59d8747a04c1bc3c0d4c755ea091ff91c2ec03194bd5cf6a6b7f17f7458131758b82d333925eea4cc96036ada306e58676fbec40037ac1adbf7fb3bcccd04a3d646fa29e5a22680d2c285c7262e545affe84a8d1707c5149f5c08871b7603ed086d88ace5b1ec49b71713a0c9602c74b9ffc16d9a643aa2b8804b19809041ce5d767b6bb6b6d753e731d785c272c9f6d986a9a4f444f5b22d31033e17001d7defb4b72779f89668ea886be5b855aa22e472fbc1db3f73537acd07e17381022a88df9a14f18ddc306b88c3732a2c02f3610073d8ea01aa0fd8d826f6da6a0fb23b76ecc4ee7a70bf969a8ce3bf129df3c6033e3c99602ce37c98540023485408ed1572672eb355c6257068852cf0a29d93ebb16d5db7b0b7f5c8a35e3cd07b18b49a450bb45cf1c371b39acc103e505f6eb886d11406d183efa034059a0a5f4b0621cb28c442f9c78cbfeacd1c9847add4da1cd73c1b5300bc6559534fcf124f9b6409082fe7bfad6a2eadd79b2d41fde05108243e85ab27b2759f84eb28442f6e0887b83e93c0c90023671eae06cbef598d9f25d5902a813c76b0f99da43bb6b05e5a8504c4bc7279a7023d4b20b10896d7e50b9d82f14b81ad4e265a42150a2ed9d276763b107799cd99d904d2d3bbcdb2eda756ed68cd35aadf116fe0c0fd20e55866a88a8e063610ce5f3ea60db0c67d3373c3805b37d445a68c844c0b62b5e84799b650edd70d1caa25b1af68416d26cbba1d3023d82ab862074cee321676aaccc2825b196c15f423c70547ec27f07d04e06b49991da0fac37712ac76edb1a381c8a14899c22b787f69383bea5ab79526b9a9afd550fbdccdaaeadb86e832011e1a1a42f7e341d9b559e99f9cd862339423e6895b0817205bbe38e977406f9e98cd101b4e7b24c70e3b433a8454abba0ac57a56ab861a3985abacb1fcfb9980c7e57db0f81f7bc78e2568d8913a3f4fdb899c3d81a5177e748cc47310f5088f8480ad256c2407357e6f62400a3a2db000c92b24ee1a017e690025004504d7fd2126dd12ae6f162fbaa0b9dcd7756aa863cc6d970341a2fb13716006e673f5c79a3e2b92c60e423a9f9845ff9329393bf241cad6a98b6388e8ee5ee0bdbcc4b4ccaa887b82ce41587b0c1e7573aaef27ef2120afee6da54225563ee1a455c7746cebe4b8761e063a4a2a5064d87c686617d43a9387481e4319b414e3305b7a7ed891df191e960449b691cd2f136f1bbd1f6d81dd2e4738100ae0d2d20ea63a529ec6a9175a74d43b90d5acc2c3cad73858cf2a7335cfa1e0a2df20a82f199a2d41de5c613e529c1336c81bce95de5663b2a697e99032186f61955c820c4cd76a85029b2f4d7a3f8c0e5019536dc967eebc13ba8288e7d3062367cb0da1b1169bbaee80cadcc21c7c69b888cc210e7c62a9111ac1a13a72f541e5ac30b6f6327ae29b84384e9a959cf641518e62fdc9d51c160e320ce843014ac91787d2ca9e7bc4c03fb24dff5ff597cc915fb496f66b9acbdb5677ee312b6e98f408f000d8c0c042a42c8eb4d33a89852f482f2885880ca85a8e02c33088d6184d48a8f01c9b781f094ce8bad8a3a534a1abf696efffcf5698c37a7370c9bd4de216be70120d56987d6cb126ff25589fc334dfedd2fc550b9d8a712ccdfc18d29aec7954fce7dfafea5c20d283a5062b11cef388860e0f186658ecf14feabab44029b6bd6f0c47e075d53382c47a4b5f2c8a17481a2e917a261054dc6fb557569b68af35143fdba13f3f3ec49a6c5594bbff568cad844396c1e09413e77bac68b92d4d82f3c929c385d0f42825401f667c452d8e942931b368d28b7ecf3f530ec7baf66d1a6b6417aa5edf1500cbd0a997ac961942d467051df975650a2697bcddda2eb883e0cad1c70eda5b7dc209b28118df3a19b8131d2b509a926543bef4194b41e216f3451a25b9cf5b2dc330ecdb7a425a8a5fa143d7f421140df7fb8b0e895456b950cc9915fe9ab39e5efdca9fbedd77180203f4f65d15c704847443a8d19ee6543d59504af6b049a81f5ca643d45054f9744d8a0ac54186d37927e391309105816d1dc0eb79c5a8700d80aabb91b303e1e8320d59dbda662e9e9ccd793c929a3fe6e06ed3bb4755af1ab3f9438b3b07594e431734e2199be19447b406254e5ad2eedf41712ab18b2fe90eb83d0dec0028cc97d27632192ba16f377b6bea07f47c48535c714b4ce58ff290987058c37220187a0d099f180740079e3aec72778498a7c70693a1c29344343d0fe9198e2e71fcc489a10d8ce2d85861dc1135f2781f18f239bb06fafba6ad7a2e82215c2fda24fc9b9b40c8178822f2fe28fd266f82db0ae0d0f944b8395f9f290d920c50d91f1a3fb37ee90d01de621be0c2ceea80736aa417cf8f17b45f2c5dbe22f8073985d82a84c563f9691e70aab90ecf03175e6c0eefecfe0ce1062cca349eb7a4e2efc73ee78607c01fd38643bf039864fc4e485d3a84ccea59fb2a157859c619fe579289cb810114e0db09f556b7a193df543ea35b6a69b629c5533785e8b788920869ff59cf9491c98c19a198c73f5dd9e5cc1203e1acc132cf8c5b9b3754ee13bdda1f9a1d881af81128947ce0bf100fc999271448f484972de3291d95a27efa64b4ed93e350b5dc327e32aceaa12ba218c0a622311b9164abb161db713c63d7905c2b29be5bfd15cb874aa6cc9f35dfa9e3c5ff1dc5dff6776eb5f047af1730b572f6eaa631a817ee0e132dea5d904e3ef305296b4c75ab7912facea2987c3616e89ef3f12d1e0bba06468ec30a9a954d3fc3ed2b92bcf9e87f810a016afdae1ae273804cd9ce232768c21ac78bceb1aa12a64a73e523742dbf001457f123f84c53b36477e1ec680b441917b450728d2436d497a39515b7dcc055aa274b9f17e823cc1c0ace007f053b8720fa4f55793fe0187bef9418f50b837427cec5d22730f35a85fa5e7e0f432e97b8a3ea5835de7c56a250ced9f9c069b3439ff982debc7cb65276aa73dc1bb52d3c7b290f6807e1a51e3a2ef7cad369f59bfb7efa78db0002bf721fe8dde8e6a9d670218084fc8b68221af4314c44be9dd1170aaddf4913398e19f64a660b03664c3a00fcb266bb911ff8cb4617a20014f575fcfe980264747f91e4c399edc813f341c3964737f64c56feae628e313771302abf64278c71d028357c6761f34db48ac142887b052832786cfa43f050c59efab226f8e7c77d59ec380bd66d54dcc49d2d8e12eebb124f93903a80c2ab6edae1706c69eccd30f100b582b5c13a51ce1d572b04f0fa108f1d0f1cf00b9d5906a881621a6988cf083fdb282db6c1811e16b3c5d33abc8609f032f2defe46cc77e6a5d03e6fc4a3f0ba8b85323eacd6499b1b2c1dc2340d2ab447eb52a06b4d6799938b18194b4849b9745193e4fbbd31b520ef800483c02a8f28da2021a5f3d5410ce2a536a1a8942b067b8fd5fa92aaa0fe61f9f4ef0f2d452acbe11988858c85db9c53aed7b3db0c72a58db5263822ce03e5c104dc0d503e7742cfb86dbb57c330d5f5c5bc6f54f494cde8ebde1da2f83d8f544731819f39d5605ef3c4bdd6060710674966209c80292f96e4aafcd144c502ac35045f182aa3584400b679ecd35b2f37eee63337c4ca1a20e4741703fcc8664c521dc1197dfe37c6b274d0a5c742ad06c66f30e0c4b380c35176159a74aa29af31f903978ff8267615e9c0fad0bad802228fee39ac90ee4eae1b8e435d5f01d16e76b30b82e61b51b7b8e916984829ee0eae4466eb379a0891039af2d6ad1377e71e33d5df70fe3990811971ffd2897657e4d7121e1199adcd3e897136b7b9216a38e6644a4afd7ae28c2cc42d7a0af16a80bd429b073b88761b42530e35ba3986e729046698479bcb1540478df1ac18c8cb94d0e823f9df6d76dbd3f1bd67954183fca700d01e7c3cc1067c4eadce9435fd004405ca8a632612e192979ec2f9c861c1f5b0eb59a7ec5be69a4a28664164210a0bbb79de0fb4170a6977f9f300809c84678e45b22c464da10b83dc9d8381e4a7b838080d37c5442eb5bc3a7546b6394914994ea892ff129c293f8af12ef6a9752c3b1680612814968274c1a317170cd1784cfbaca66e730d6d51937b2cb6d4b332e09e855df4746860438e46ae438489338b49d2216ab54fdaa12f53ae6680b225a1e8e0b8a093cdf5a8706ee26dc18ae80c7d07039517d84ae285937fc77776ed13b674ccf034bf9e8787e27f57cda6734b79da2751dfc2a35c8e804f68b53fc218d54c32b9a7c854f47468c8c259fe4ffe9df0ce0a5a4e0c7bc4870686a9111f792fc72a319d710ff098d0922be84caa32249959efdbba3bb91d855d5e30b59abeb639659459c3b74dcefe4f65e92664a13da5f408798dada038a0da855b0fb8aa80586d7d63aa1af4f46f41fafa492660af8d8f9831ccd3a6000b656987fa5b9a8d49ec231a01c3401d57e920d3b25efaa13cd33dcaf2f50c5fa04375d79b44cc8c242628696f8a24f5a16b170fce0598da348002a75064994e6f62b17f58f1c6f45698b0bb8d11f69b21dcd789cf97c2bc5d869385462429d9d8148457489e128bbde18061807e284db2595f1cf93b1894f4b6001aa44a1bfeaad42a8b512d941f05f6a1532a66ffc97c1202653daa099dbfe60a5a5c97fb3a4518940328e752958c9aa3f3dc604e481ba90afe856db9c2066823e00f52ca6845a9c69589b819276c475d115d5fa17ae65027aca59bfbe372c29a016282c01bb0537b3b39a27646d83db57fe79c2725aa73284f762ab9670ce170222eb8bc82f17097616173611325448a7cf5cc312ce1187f45dfafe1dd40608b4e3e4b166611c0774768e52b42b7e6bbb10caffb4b1ef91bcafcfef02ae93109f9899fbf18f594594ba9c33b6ca80da1d192f223854e6844e35497d87b60e5164460a1e6326fa06a48be56c609a19fc28783163e0e7b377db80f4e25c38636d5db758d203f92a8b4c07db1887221a72b49aa64b820a01410a318021988ea081c0f4c7402640680288a411801b58ec04cabfa288fb2452c9d1108840a2214054003521d83229a62583e41188040251010a4e4460aa21316a35b0c2ba02540645041cb283020d6120d7b48d66048c575d0a00ce141e80c2ee9d8c9b46170ac220568123644a4ae910101c30b271a8ce65286b0294b3900919a5d86040c2b7c4ca53a82c414b33ea284a62683a1463338164380030c4ce9e344ac036a1c5468b90c49099470201d518a66471085c2127a9098a0466730083460d16320ac29becd205fe36a1bdd0774c25096e44354ea12d3d1908608051e3a0e4d385b20e74a03515dc4690feb234a686a32184e784475e0a2a7491cb1eda2aae57a82d0714c1282148885024208ece0aa8590d0bd9ebcd20bd969168ee2082e3a048e35c5377c14313a093ced6e3014a330023a80ea0918e934a318cd685cc320a80da4043419928014c9194af844654003573d01c55aaa215fd92865314ca51532a74206e35216c49fd202582c926038e111d5812bf1e4ba0815b3c97d60c9d51a099f5973ac714017e159c4c068f1322c63173b307a4eb00f52f1e76c582840410df33e13c8ed3e9c1e29157f5e40b41e65ab7109ed0cafaff71715d4424ca3d80da6d7d86d88c3283dac3740e1b329158ac0fbaec081d293ea7aba6962054c5a24ab32386e2ceacee8e4d194f3a1533e4d17db083dc137b7fc902553f4259f4e6bcaa40d7ba5c5f9b156a9ca4c7df43338c02e02dc97abc67d6cea9ec53bf27a66e0dc3ba0c20dc7096b1fb353918ec7880d87b312cc31f17885f3c67d9b18482798a109cf164e0ee074b217801eaf5a6f0574956505bca02a066995c3edd227318bb55f6b5ecc3b65ac5df1d91e8e3d9b7de6ac3e3bedc99b5621225c1719da023ea26741f6d16c6ed8e25c0160990185f14d739157415f4d3057f5291d6d27d7092ecd73a9e055505867c764e1dccfb598f67f77c6e5e1b07fd72b8c0afad799713838003d9505dcfdd6f3d798a481fba952a7a1579565083240cd6cfe9997eb1e0c7be113651703ad2b43df2a1cd69c748b80de8c65eda2e5008aa89b928df27a4bef0dea548ecc03dfbf16d02177419e6086319ecaf6fde9762ac3e1a3a7f877a7d13c39f69c734dc8d7f1c85a7530522e69a97a1cbea3cd6c61a2edd1eefb519f11decf0cef7e60c61192bb7da58d84f57258a3e02136e5aadee72c666660243b93a5b859853de73113b0600bea081f0b2b595add9b76752ffd55fbfb7cd2e29e00ab89b7ca055883760c9901007aa6bca2152b0cbe3f8f4cdb0164e819a36d820ccc3e114984b9e63f349c82ff1bfcd357f07bb3564a0b376c91e8e52f80f55371512c88a48b3cc5457a496978c78966e0140552f30121a6cea18fcc60b203d46daa5bc00aba065a4c576df1198e423fd559b97c19ebd2ecceae17a988be89c647425e47de6590208b6838be4139d63249f0e1000ab016e74d41089caeb185046caa6a97751c80c2ac5778c928e409c258643b31c607a22c59f08a453d0f733cea6582e040c6433038d296344d06ad716f65dd16cddda5bcdd8851a70fa5edb95a2261c536e266ebaac243ad9ddabf130f80f9d53cdb90b51a846204850866449bf472109c515f0fcca1415d90989bc8c306fce51b74804f7293c89039da96bd550200cb4105e007e2b610a3897f0da786d3b49b7786bbcfa6214db73970dfbf57f74b540207a051075ddbe96924d0580505b7b3c9f4ace69af22acb1246ead53231d5ad82adc0543ccd7790ddb12b17a342fc94e7bf5ca5031e4dc64cb6d29eb7e4c2e080fcb17d823cf3b52eced9540e0ea31f5d8d94264f81d9802454c7da343400c787619a1481d293e2af363fac3a2cfa5369553b75a6e7265df2a18de8bf870db12fb8cc3808d47bafba3cdcc4b61e4c32469d9a1f11c135669d488b12573ea6d849d3190232cac3c6566276ea1a58ca2b573bba376b57bfb7cb1ef934409b3dc655140bc3f39315e0e2357cb329918e293ed745052ec6c376cf879ee7ae7e8bfe7c728cfedc408dde3ae7e7981e0ba5d6892de387245b061ff4c2b88a0bd6732640b22dbe548b3c8cec580fb65daa060e43fef6190d762b1867633e74de7c8cd2bf774c3f55a343f6aed4a24108cc5e72a6285603cdfc961d8b00640e0afbb704d4a12f753ecc10239b8684f81ec02a54a5f1ef1ac3862997bbca96e20182f92ce38127db5ac07ee01b199760d76d073462b67eece5596c5d288781634db17d54296b77a241845eda1063985ee5ceb33ed68eabf5c6a8dfdcf8e58948753fc2723d87ada1d9828eb289ffe639c4f2d808d98a487fddcb2a71f310b904ff1826772380e2f6ca4444fce0e682563f7d9b15620384b62058fc9f1fbb1a583e22b78418415021948ea062f9e19b01e259a00b8871c1adc13e0470e6c33e0c6c3ff30fb061dc87b0a570d789bb62fd005d36e2bc0840479f3bdbc5c72771a08873840e080e104e04c4103421cc42e882e0406e0e11e17e044e0902d2040bc1e2fb8c6c8a888d2330281f99b8a0f28fea2610d389508bfbbc1d02e289b05020164eb94941303eb83b2b1e1fd37921de02a456aa4f387493cfee8e45f5c36bd81a0154f3715a0d4017e73a4e651c3efb3a8cc30f3f6e2de3c771c788b6101e8428088a21101561c5e2735dbb38ff21897e9461a146e06284d0fef37648215e08e8812be67bcd59e2c4b0492e671df1361142d90fcc153662e5df0723a796f233762ac438c252805838ea00ed23fb607518d28fdcb9a3d40fd7cad2509f42f025566900f8c7c2e251dce9285f3e3772db527f44ae56100b1e7378e75b3e6277cae526b7116a038e486afe6c8d5ae807068ffb92f8e2ec9621461114205041e0020850ea1db7fac7cfdb19806009f10921e28816954fe2781e2104391f60dc5ae6580d136cfadd16118e20428009482ebd512d6d01b002d5085867d600f4d0c81192c40ee3e1230c17d4fb415d41406a01ee80ca04f8a43659440ec40688664156c46f9921bc103f02096fd6ea1b4448d23a4c28f768cd10d28144a7054d6c57876001fa58b68788512330521fae668dd844781ba237be8fa8966ac49fe24f9d0ea8f7933600015d64eef84007fa20b77910f920b611c78e888aff63221754fd19395d2158883e7dba2b3c1fc485469c23501fb156ffb957bb483f2f878c78444086a04598227441708790138111f9a1694c210a419882d045f8fc6f521550b5aa8d20002575e7e11310d15c1666c78103e4b49c994652e2a979c4dd2544639a6ff44d4b7d45a5d2ef30fa1fbe9ca18e8fe9d62322aecb677134051de5f5eee77955b17d3f66053cdfd25c6ee1edb8a3a9b5fcdcd851ae7ec4b4ae11558c3f46832fc4055c5651f30ee28e407c5bc4e6de67d464055da8a83bbc7bfd8c69b08ae85c6c5cbcca5597e46c0cea0e116347607c1f914d8d188fa040782ac273e5a73a2c0d97579aa76064947286e123b690881310fa208c0b6185f319dc1440c417719c91cfe1e403c1c2fa19c57d11f345047e43d056c3f871b00a3216cb6eef3169ad280ee546300223ff69d6557efe743463c4b42200f53ea26e8dd831286819dcbbb1be1ff4168a38036db7a342b058f512638199be7b74ff4c1dd08194bab43a1fb4e8dff1caef582a979771bda111a078131bf1720764bb928449873859de918c9010e728d220d2581c3fff3ae11c3e78b4b7c081eef2850ffbf97fac5b3350923e333465a1b4b61a53e24cd3ae4fe1676d12885d08e8425cb89fa15300115e04c6e873a2a937a28acb676d3401bae8ee8cb8ae7c7a471611189b0fbfee14c68f43f658bf4c9c02eace5d5e605092596d0e55282749237368292435899857b8ee5a1774ef7a88eea7c3b74600de34544e02b615bdfd426c38f850db3563a822ed32b121010800100200880c57d95c6061740fb32de730f68d6d8490ec78dcde6ce9afedeeee2da5943249290303061806a3053a2c396cacb866987e00d150f971842d6d6badb53afc30c2c49931d24959c18832031a27e48cef488e08c810313c2065093a1836702820c1d6430dda8f0d990d68d046d4907f10420cfc0313365c52c60c4b9ae00627593ba48b06320827883c62df3d83c82254c04155c21c62524a29a594524a29a594524a29a594524a29a594524a29a594bed3ea8918d835acb07a7251290178c8d0efba75b7ab6fc686afc71823eff02df1899f928f874fc8477e27f8ae8f1f6c8f167c3323f860f089af828f870f323c0a1d2dbca3099c6c47131ada87066badb5d6ba8f0e8e0f0e327c6ec4f061c5b0d6da19d527537e3e49dcf4589f2446c06edd7508212373ab03890c9d82ef0606ceb9e30c76f4f935010c9fda77e48053dd6774be195fd00e24761125f01a9a1736a0b7fdf9d54c77ede7cb78cd66c1b9dd8237b8cfc01b38a615dc77a03e80feed7219981f8669450fd6c66e3aad7bf745b062cb32d29e1978837bcd850e7e7bd3b82bda1a68674ce7edaa7fab73d26a3daded0d1c5518976d597418cfce7af957a83afce68a0cd4b683ddde40cd755757ebe1e7c04f7c07b76d435b4fa2fc74e710657f59c547827c8c404f66d4e93e67d83c6e78e4f0de713e3c78e0d1021e3ee41d6c3336a816cf392d0f1e4074d643c583c9e691648b9a478cd37a8cee6ead7603c618e7cc62c1366559a6693d603d48cf078edff488897cece063679bea494ca13faf7b06f100428f1e497cc04024127d9f0f1d1cd827ac6da60694ee68c26b42838f8e0f0e377c5839e7acb50fe9c363e3344dd336ce07890face32818e493848c6d4688af42b80e24964e30083a7a7083714ecea3c626d89183e661471a8960c78e2d826f06e918da0183fd8d483b5aa0378dcbb22cd3b61dad1d403517d9665e17cfc860c91861065bfcfe07c7163f093ab6f8fd0d3e5bfc8f063d68f89989e1ab7b06e90012a483bcf9b9ed3f0a1dad2dbe8cd5a1df4c992d9bfac06aa18ec835d0e047d3a01523081ae41801ea860ed271021d34580c03aa359308a1244315c653350f1f0ed34f6dc91cd9f3eb6aa86acae4bb31cdd859abd6d0713c32028d448c422325a98ec681c441fee824df9089c9cd9e65c64fc40309a0c25c60a3ba517ae33abbbefb687176fd7b534fd507478bf4c191b3c69191da8683721bc7711cd7f9d0aeef792972173ab127275ee989462dcf4ab43b3adf77a26379767d14bb4ad9d9f5473a244b2279a5249ac144eb6acd14f9445ba68c5a1668d7275958c9ba6cab9eeaa6a9aeaa4ddb6beff54aef46e2485b49bc37bbbe8acac455d12ad9f557ec108b6561f14a594a5c695371d0db1556915425d45471ecfa2bac7af2ce86eedbc2e3725d5cbc5297706585524a291575c6b6ae6ea633b66e5b5ab8baaaabb22ccb126f6539549665595eac5f5eb4d65a6b527fae9138d365395496655992648b244992d4d9d699604296655996d55a6142bb8e592b87cab2d4ca3223c9164992e4e53ad1490a0896a4a6699aa64d407f1da7392f874aaef4b22cc916c9914e9224b8c56242b1582c163b4119954c2c2794a40c11bb8e76925d99c864ba2ccbb2245b244992d88e761c473bc66242b1582c1663b170b0582c166ba6c867627139f16185551a928c8c8c8ccc5d4d20368ee3389223499224299ecaf005bb458fd515f75a7f9fc9f4a70df37afa3799aa9fbca8bfec96a59ddcd57757a2bbf2eeaabb5a2c1b2acbb22c77fd9bf958dfb64496f42cd959d22da9e94adad1eabcc88923171402c8b414ea621ed362594c638e4557ac4ab3e160b1582cbab9ca6faa168a1c178aa3910e451717142804b0c50b135dd5ed1b5e948d4fc42a183e31e989cc6b69b12dfd6e7fb40233b639a7bdf5e9aea1188215501c9c841c3966e020a30efde02689010655a288ba838b7590a3068d9c334e8e1c44a801e3fc32790924288500c4832708425490041a2740410406126a608c31c638e79c73d6379e73ce39638c31c64572ce39e78c31c618bf4ca6535d33dca082040ccf39e79c31c618e321434962b8c1becc2d02262307216ae0d50d75e80737490c421928868b9d9f1d372091c4119650c11221328e22352a12395e2003074bd250a48922465004960225396e721851430149fcf030d2c40e866c348103a68d86cb0c5c280d38b66d83d9b88e821c8a099e5c3b307f72e99840a5992e1f7fbd5d091bea864a5b2591186618997010c92182830d2232204203223f1011824811448240a489222f8ae4145915c951c44891218a04a18812233318194f60e405358cf8300264248991252e18ae172b38c86aa0af5de810416389ca488c192f5020f399fe4fee7e6388903de415832140438c18a2840c93214a7a68ddf0b448d0caa11583adf70c6aede03537307e450ff97bd02f7efe26aff19aecb9af9b03572b2aa8e1150ada5d416e73e00dddc01eea6fd6cbe14c008e5eb1bda69d76f7660ec31b5bb842a51dae60b6393083373478630b41faaee1396988f3ce608a7ad2a0ef2ddbb2a9334f84613bde1c98c2612ae87bdb26573d11860adadf389dc2e5a00b30a8baa93d176893ddc2816dc38d71d89cb53176ebd6baf5b7486cedc1c1aa3c39e79c73ce39e77c3136408a7216cc6c9679a599f6b005c529a4bb94cd348db360a6eda4408ee32cd879222b1279a5226eeb3c8fb3a048c459f0fb5cdbff44b47d275d0ac53fc57f84c259701b75a951c5b1dd569eedbfa9742913673b1bba57eaca8a75bab2daf6950cd59baa1a1a2a5d2d2058ab45d21dca43575487ea0c9553482805ed6c3028ce560a14bb14c54ff70da70673a6691bd7695de795761db7759e27f2b84f139da0a0a4a070232d85542aa99438d38ab6b2e295aeac702a2b2c2c2d2c9ccb8bf6f2e295bebc702d9dcdcb8913269ce01ed440d02b05350a1450482105ce822a9cece9e4959e42ee3b1bba2d784297a29bbe055174a9133814ba14dd296c29a4e095a6a03d14b4d7d262e350d4c0c65f61db8622fdf9f3677a9039c28f2131a0f407ba1520e713bfcfdd5e8ca9cf89f1b4a0a5bf438f0c4a7b060dd94119697c9e3c3f9d48364d8d619efc457f3169aa8ac5a467689544a8e2388c6aaab8b0977d6ddc3146daf8af8db1de184ef5497365cc93ffcd6e2c86499365649c5a71bc266bfd7d9e2b8e67161c19f4fdc53c5177318f397bb7d361908bc9103b9d8c5369ba1adc69e8939834f7c819e38f62c1777222128944227d635e73225461fc89d0425f12d3d09fb67863db4599dcfef564c6c8278ac6edd6078f9c2af23bed6a08d59a593b7fce5d673b931f3225f984aaa88ddbb5318796055698ab40b1026dfa62a36e3efa9835559cd8b3a28c5f4e4e6b25848916ccbc2048880c2139ec6fcf202134a0725039a81c540e2a079583ca41e5a07250393efa5896744557e284c1726a388471bc24c902050305a32c491205e3a33fb5c6396c28140a8542a15028140a8542a15028140a8542a15028140a8542a15028140a45abee521387adfe56419bafb3fe001f8d5c5cbe8f8515d958166e64906113b1b0298e43cdf089a3ae004b3efb9676365a573ba7cebcfba2b96767d322dbf6e9b649668430e75b141273522ecf98faa82472fdd966ada9991383387a05c67605be3774413491f0d1f69c31415841f2e2024a29a52ee7619b51a2a6c6be9def9d03e88b3d7fdb2a473b162df86f70f40a8da357e49fa008430b55b5427f06c248b142ec80ddf75b5ad0d5bea187220c798516f1b7b4d0360e5d10ed1bded02bb86acf1716c836f383397f85ea417a583083a82075daba679b01c24c122df531407f7e0d0bb0e46b69417f3e0d5d6c1794ae48b15147dceb430b4690901ccfe19e414192d85ece16bf2782e343bc70199aefbd3c82b000df7b83a860df7b2d1282a4e05104d9d9e2cb78d09529c257035984205f12f29e414162f831e1c48b4b0bcb8a49a5441a612652504e8610791db76999cef85a6722a815abd347123e96fccc70776b7f7ab8149fce7b7939f8e9c10f114e7e94a0e011a478383f4a401aed19f4438752ca9e413f72a8fc70997e00adfc3862341a91483f94b470382e9ececbb7026aa2a67aa22090232f2f2f2f274e0019222ced1904a43c810403050a0a50e801050e45c702050a145d0a4401858e85b30089fda860e228f883113f080100a43d837e6022009c0c0170348834418c69cf2072001c054d04e02819a4420a28a0382104df84132f27efc4c636e30324413e5c7b06f970edba436d18e28591b6dffb48a2860a3e96d848e167c60c28f4f8b1b1a78f8d135e34c21ce4803d98f13f448861c28f929c132380f18243c3a504325a74089fb25fdfc5b62df7f1e35003374c693ba5edaa846dd649694c47102e202c2296d82ca6d46d0c0794525adda5c4555a6bedc5234ece39eb0c881e20569aa66ddbf5e98080654a6ca819747385d2206e805842291064103ad38dd89eca706d6ecfa0170f9bfea75746a617ec159b73fa9cb3c9fcd9912638a23e5be444fd52027c11a1de1936940c52d39d7ba9b66883601244925d8300c2c551c2b5f75a120b94a0413241021ae38a9bd9b0afcfe00832eeb5f4de7b6748d93308082482d8410ceeb43a8da17850c85c2f02c5c3ba976544a7da558573a333aa706eae8aded6252febfa5c1c9755b77147876735eee88cae162671e97fefc517bf654d1cf0604f6d87ad7fd22582ec9927761b3aecf974ce6761aad8beda1bc35728df52dfd8c5e38e0ee6c12b3ce21dac83c769375cae7a7870b0563d3c2b8ee3388ee3380e8649ddc240bb7e8661d8855bf55431996f54b8c44af010d65d8ab4eae1c1c15af5f0acb8ce6edb76b7ede9deaed62b8d07c7aebfb17a78eaa9669d0d27c4c53818878403e260d3daf9b3b3d66e769b5a86715968d7ef72cccb48767d11503dd5dcc3a37168d6aa87a78ad98dcada4d97ddcdaeefa9445a891ed2658ab4b3df66ad19d0aeef19cc3357d6aaa79a71d90bcd5c69a479767dd2aa9eea0b768bda38456d47d399a136d246871963548b69312da6c5b49816d3dccd48d3d6466d1cb5916a2bb565c225bd1999915ea3573a23c38cccc88d8e3be5aaec2959a54f0983c160301865e1e64ad62b5fad7499bfcf64fa3f9d36c597d377d39e29a57aa557abbc72b0a5246d9d61fa73cf59b359aff4ca6b38d8f7994cff27c779e52baaf1c525fe4c342335a5d46d86c160305849b775d06593a805e7a4a4ad514aaf56c1b4100683c168e9d9ad86dd622e5f4d3ba69be36b379d3f585ec5b88d357110db411be91219595ba50dd18fd875730ad2bd817303e9b634d45d8ab4dd5aafe39c628d8371300ee671b08e83711c2c14ebeab4450eb6eb6bda37967b5a879a481b6dce3abfd7e5e772a865e4aeef98fbe9359a0e453a6efab9d365be98d3b4de361c6e780bc5f005bab3909bb9c1276e2cf78d455ffcd3a97e5e798d7b5e795eb90dc5555df5b0caea5356b2c4a4d3a74ab4ea1bc9ba43ba34ec4362c2231ebd868eab18ed89b1623ef493d0e567523d8eca6b6434f9b94cb057954a9947da9d0a042adce4ebd1f1021f1e6496c4c007d68e0fc827c3e7f2711171fd4cd88a96951c458fb5b4206dcbdaa26579e004bed63df103266c5aa6ad2782e04f3e91d75d4f0c01883d510461f644184e083714f45d506a5d2eb4a5b2f88a3589a395a74f575305cbd3a7e554d13255b83c7d1fa78a97a7efb1a9e2c4a79d709d27caf40e5b7bf15b62fb9f003d7602b4ff028ebe255cb6174f5adbff05b4ef02924e5a2ddc8b2836b6bf0b68bf052cd960e95e443962fbdb57413962c5fb15d0f42c293e6cd1af6c2b950b9b3a6b0f56da26908519435f05a4ab1943bf04d272c6d02781959c31f447a08f338674f2e27da1c1668ca3bc4835d58cd95629795ba5581f4e4051b3c1f6ff40d1fa204e1b8854874d8bb0e973a05883780de7c1a6355fd8b612c1a60abdadf4dcdbea8e5ce826c455d5f7b192be9ab1925ab0b4e79d7886d379b0e97b6cc650d065832dbb822c7b659b36a8b2fdb7195355d90a4ad554715fefdbfda5e177e0e680cd8974fbbfecfbf9c5fbc263cd18d75430d216a950397ce268049b2ababf2ce545d9d98b2c25cb6ac638698542c127b29056db84157d3a52913607cebd8934965264d1e105bac591a8a944eb03e99ab0513bba786c3b6d897965715f716bf2abb20bd0c4672b6baa28ed19e6abda9345dad3b2306c9b759b5f6d37e79c3d32295658000b1138024484658d3e4e5b4a69ad2fb032295658000bad2340b1d1c7696bed05ecbd14b0806b92296460f8266963c6169f021798800578d09cf8a5586101280460809f47b68fa38fd3d9681ac5a0922ea69156838955ba04f4375a9dda149b7a283369f5eaf6decbd98b33a775d659b669dbc775369ee7719d27b239392975a91415539722712ba593ce064c49e96c461cc9be9748a592575a022f754fc4c0f6b0c2406be7f42dd49ab57ebdb351d939772cb496e59cb396b3cd39e79ce96c69aef88a197080f591668852b9ebd499a55345fe9fbfdd17178664674bee0bcde5e0cbce40af74798da7c461aa08c7e5955ee9959ea2c3925dbdd2616acaaadcf54bad5a222b0d2e25a925a15a22a296806a28968e88294cca4a73872a8d5552691c5fac021d2703b52315a6869aab9e5cda917aaab01953df2b5dbb8a17567a439e128f49a5116153c52cf18f12b9eb152d8f3ddffae8d8e2d4818f41767d711b29f8b2b5d16b3cd22347cff3488c5ff4488c52842c88476a234a99427ae4ae5fd2298d95c653c81432854c2153c81472d74f4969a5b82a0dd6da71664c697b5822636cf6fdeffd497f529feeb9b0bb0b85c347dd450f88ed7fef4fd1aa86eddad40601daa5a81ea53326256a79407efcf9bb5dea041504767da24dd946bed18e8ffea419add9d49a57ff862d2deed74f5d0ed4d0c5b63bb64d3443f1b2b6773678fbec8aeaf1d974b4fb5a3bd0dd3b6baded7ebb1c07de7befed30c618e30e25e4d33e67634c936525f3aa84d1d584a1847cf8ebd67df6a92e6c69b1b9edb3ecf5cef4bbd82d58bb7ef6b3e3c216eebb6fc9dec5ee420d70a1cdcbdec22cb6eb67a1cdcbd6a15be768268444abbda3d7a83cbd3126cdcfd8f4ef2aa494524d7b96c354b29eea1d324f357355ff3be709e3ed8a19b8acad5bf059ab5202a7c3b0c82131e6e9541f0224510e260c7e51875fd4b160e14686d2cb401a7fbbb4ba9d24d24fffadaa98dec58a52e955de5f45e54d6108565ee54360fad2bb58b10292c6e930a31fdf7d52e8026d42c2992a7cd24f791d367d9413b07b1192a922e6352a5fa7733f27cd09f354df83ed3a0245d28e091b3f0a78128aa418dbb72814453910891a4c048a2450fc006c67e0b22e6b67bfab0993bfc698a7fcf54fc8337f16e6174f779c30f94be09cf9bdb3c9f935688bf8fc7338fdb220b146751b82fa81fba08cf9ed779a9fec7a7bf6fcbb9a35decfbf33e61d670d8700fae10b1bf8c42b634f2fbcb12e7cc105dac47dfa6adb7eb3997e8e9ba1e3cc18872180e8316ad0a733741c9ca922ef793f832ffb4e98fa5a3f7e511bedffb63576f548d17822546b2a508589514a2b15459508165134eefaa251a45369ee57fb6185b90a65ccaaf6817af9ebe5f5f5f2577dbdfcf5aaaf97bf5eaffa7af9ebf57ad5d7cb5fafd7eb555f2f7fbd5eafd7ab7ab5b9d386362fbb865906db44218a2e0e0bea081969844fd476c43b8a99e79a2afcedb3c46e287a406cfb62b6ad879e6bc6d847e1f05551dbd9f647d16a0754a63aa56e4f27bf2d6461aada68dbb56cdbd005dac46699bb8c8cdb2e95efbcf7de5b5bdc705451407c2247b78b3d3b16b5b6b861fdfa75c6cc98945a6d973ac95edf4e6ba14e7d210de98cc15d4ad4929abb863aabdd02b4adab2d64ece9ae852c4c9122ebeca45d03e6b6a14cad1d04b2d712c8c2e9305d2a4f6badb5f61d603590d2b6fd94469b503d633a51aa050dc3ac4b6d5bcb58d353f3eed7fc370c69930d8375816b27836d5afd89c41b636fd7135d7caa85e55e86ed35ee5be8c2f92d6ca176c73d3f85b7fd940dc6174ccd5d27addaddb7b6d6da7dc17befdd1ac418639cbb14de3ae79c73ce5b5b9665c5626519a27c641d03463bffa63dc6617e1d6e22ba758b2cbcaac94203362f3bff0bce21aea063d0a6c9b6e1c59931f3e2e0bd31a959ad157cd92c78cdd55aa57aeace80df1eea13196bc6544da5f21ab6494d5a7baa3f53fb77dbece735a62cfbcc05185431d0262bb4dfb0573a2dc679128066a0fbcd363b0f4f27ea2d2de8cf0f011d6a87d9b54be56d5bd8af019b48a8e48d3706a9648846000020082317400020180e8984c228c891288b9af714000b5c76406256381ac9a4a16828085210475114638831c600600c300621438405024012b7410cabb72e38b2967b34fcf3751904975d9a7f39225a9ca1c42f682a38d361d92d1a7404c01d79825a3f0a265234eb8ee01ee7bd48e1504e7ae50d3ad591f01ff36d18464fad336be52af1880e41ee380ce8efafc0c8081d128dd4dca008334cbf50c6e420d42ffb6315067d9975ff9232c72bc5ee42179b710f8ffb7a6b8b47ec147570d7383d82a25a2f4995d6e399e4b0cfcfe08004f40004d54f9e6e8e4004aecdb71f215674b9e140555e926ff57576a461bdf19958878c7212bfd7f82792cd896a5018a0ed323ac1c66dd3d3d5ee633010e9dfb63957e1ff21cecb5103e0c932da076368788bfa4433ec824134bdf5368d7b7f9d8b4960743642637d358d7d9768720c0179800fb9d44597e4d13a76e74b6d51a6fd021aaff759763e4e82322ba743c14a2b36bc4f44715f01cf3c7dffa5ebafc80821e2a64e1a9bb294e655ae2023e6901258406f880a7fa847a285217a274c9896085dce04dd13b45ec0472b22f8ccb1890c97f0b115b19236a7b147d12ab75b1a52c2397a96d09b55eff43fa125f8cba668caedbee0d5b2b7f007ebae341b6ffc56e5732605165b50c5db357bb6840a5b418924aeababb975ce7cee2714acabb694df92fa9e4c433058d79bac2d4edfd0c73eb40c1eee6e588132d384d16fbd2ae4eb2d3aa8cc7b65b08c6412b1aa218d93161d1677700830c1c89527da83e9c3c2ea40a62a232aabcd9ad9e50aad69c670d39a7b536dadb9f0295b532951742529b0b3ad3dd502367ef66e9333d2a2e54f615bb1240b621ecb47515e36081f88e83e9b057868660259058870294e112c0e504c5471b4e86228092529ff946eae66e3b14a5232ece7760001ac21543aab0485269c6a17e982948d4b7878665c42e64d6ee876495eb9010083d0e08b8a766cf1012176fe859c8945efd3021f16681f02cefca2e0b18233bb59ed80dd66a4629ff29ab26ddf7ef2daa4456100ae5b0fa0c11e38f64adef66609670e08ac3de4fd4f6f432c7cc6355897c7bad6b1beebc1ebab5c405ca3db189212a8e57268dc4d7425c0c30ccc1d8f593b2bb5676b4cb61c01f2f03a4b51fb2c880fcf00888ecf4ae8502ab8435fa97f3619cf43837d1361bc425904ee4ce3551d0024b0a6ba330519119d6c795a7da6af4512f05522671cb807ee92c8b33c5a7faf8a4c3ca936c45c6cb06865b8e64189c29f788bef0228aa1ea15d4cb4338af508107d43c5233d5582416b98657b8c0dd786cbec5a371d6c5321f930a7022216e8b2fd220a91700a0cf3a2fb5903d58a9db53ec91dd3e23afcda411193cda4ef7a2b6cd3f4be050697a3603352c2396e1ae50e416b3e1d2a7510847707992652b94afef57048aee45b559a1c3fe62c8a02327e4dd69c0358f4bb236064931ee3be37d659842b447ee59a7552028668f86691712cf6613856d9b599c17ca9c39d10e3ee0e5f9eef8b41105f4858437b3c3a5a83a6c9e7de80a3ce3ead6fe4cad1d4d54c692b295fac1c6405d84b69870bb0dd4ad1385ffbb19346afaa41e48f843ed0d7923edb269e376e1d405f58286cb63d2304c8dad0d70e442ba6f60c802d9b30b28cbeb85525640a64599011d0177ca24ce439803001caf8c0576de88b3136930973b5a7d486d27dec81826e1cf57fbe7214672dfc1d2f289866ecb5865f147751baf81ed98c463babd81453c835ebf4ed900a398c988803e7328b84512bdaf3119bf96f7f1f5ae31c8e3dd3088aaf77988f0ff817388306bb971768cae3bcb87f5941e6d90e21811a6f0f0d9510689f46a60b576f7327c4af8fd2705c0c9be921de68bdd8e67e2d647f528628978d36e905338ae888f36d2272f98e624685b235076838ff3a67c8e8c97c3e966902b72b6cb64cf432aba88e78ba2a2d367f6d460be9374cd103fe7a6c33bb8b9896f5d891313dd7012c6b6a758f3b8f114f39c75ad4808e22cb0dc719de9b308d783b6e31b10133937285e1b35763592944470c281f9c8cade5ad24340b7e06f587b06acce5bf9fd2fe9c47360231dbddc27a7b43cb287d1d41f7b8fe1c4c1e74a3032b720d5063e89b70873846bee8c5c9c6fa7920aff465f5c4c6e53eb0c003a146252eaa00ff1acf6843d158e2e227d730a422d1ce9a302b233b283acaf2d1bb486f8a8864af9ca4994ac9049160459b5bbeda799929f696f16642f758d672c8819e5e3d199320cdb2b92906c75e6f83d258cce12416bb51306d5251071ad5d654d2eb70a533530c012e102195b360b5d1a2240250b84ca0c87952af62d164be5f08741c1474d7c37186c5625afb806fa055137a4ad4b3b8e0d000fa1343798362c8ec4461035da8135922610a4626c776dece0dc0a1139a96e37bf5053574a88731771c62c4a96721dbed4ee38230218c09ab9e8428fde51ae81028d6180430453068c0f8f4aabc2fef32a717a985ff64757ac11880533eaa23dacdaa3e839d31dbe01e267d468882523b35c506ca8ae9d20b2ec51b12a27d0629351672fcdb411ad1cdd587a406b5517c2c4108e9b1e747a4f92fdd96c827f18d22b64e83327a5203f773a899754e2353ef6960d3d7e203873eb8834d0988212c647fed9195c1c24ae64183af89b294c834589b5a148fbf470a3fb8129175dceed29a96b246a59519e5961a6da69434db512458ab36da440493e9cf6460d9cf8a2410beedd0182abb06dc2f8bda8bf3ef7b63a9da8658a9e949837d3e3ad12092bb41e11e6559ece220d3d6117aa8a25cba207648b3b316693fcaa59b5867c1ba6232381147ce8f7df520fecb29979b4631763161bd699321a3d0cb4b583343e85b9963e403fe287e71dbe934a34bb36baf8ea4f32577e56f50ea2285477c3a4e2b1449ca652f4c90a5b9fc3c89f8e441118b2bc695c3a0683ce5e2b22f285ed576a8ae591d01e266404e232beee547a8094c484990a9ab73a49b1e32bd6d03ce39ff76ad73f220c9f901b822db204903fc2af8430c9d8948b1e56d91b5a53a31441b6a9c99158cf07c49cc84c1d6904db0093806985702336dc4e07bd2ef4461002823c018217e09f42423431e0f78ecffb9969e803592a4a78911b0c19860d7776abdc79027662e5137afdd516f6d4696ce4937926be42313e3486c434bf903235a92b10448d1bad4091f0899273b8849a262c2b384a108b65e3159fd200e792756858e5fad70d691ee39662823acb51f33646bf0baf91b55f0464728699e1ea530e570ccd708d16366d52c3e562717f853e0f3b54605f34fff1eaf35dd9ea615fd002b8643c238c9db4d78879ebc5cfed852190a9081c069a6b3b83cca2c8741f3d41eda51e083b1676ed960faa4c1405000222234b1bccf1decbb47a12a82232742c3f10340eb6577c2ff4877cf10a0e35a527a503fc43fa155588488af353ea82b78ad1e325e92a07efc84c0c9262c10811bb8548257a81c2704c88516ab59b144b4856266bd788e5587bce44221bf5e21a7afb95e002fd64ece006fb339682d4fe6f9254d6c2d23acb620a9de6ebc5cc769a4d67e6f1e442d1e59d5158305f0ac9aa4a141728b2bddc34c1f83ca5cc8003f93e0fd3e0a83ca4a5f915c68b44fd35b695910e115a583b28b1f40f01d59a02be35700e0e007e84352e65789e888ecd9399ce6c12805cc5278a3418a6a8350d1ba220a602bf4518d2c0990e3a904fd9746825cfa2edb894028383290022ef6851f70a8ecd2a399b64cb83d90f15c7f74b93054169fc2e57fb9912fed1ed51d59b42f6ab144841f01e65626fbb84a0b7fd44e56932ba0246a3115ff19dcc91e7099df6071e2f113f980c5537c2f1453da8830201c75c7812f63b7da4dbbe32b45b5ba3706f9725c14ac441af4d0fc5a3ee04c605c913aa93cd87018f01f1020ee8c1c512eb4f13d1a2f9457ed324719e6b235bc1d842e606a9510f69708ef1ec4c92f93cd96cba094a8f8859ac9657c7cc837952c98d16abc6a96577c71f22a8dc8f850fa20b6d30d447dd193c13e75539d7d799f4dd1511353668100a9307e89fcd1b1f6eb3b7fa15f9395c2fe9c0ea51e0f25dbda44b4d92e71d3f126c7e6b19532679614e6dacec4007e70c507d0d2a01638377a501e6dacc82e2477e21e1e9f1b3ff4c8860d04ca107fb86d9903c6080c323789ed8dae97e09fe6ab0ad924217afec5beb503619b37016af7a73cfed4e331229dbf875752ae05cd66109f2d154951689244e87013ee517f3b61b5b57faadf6e3ba8c1ec847c9b66692c35f466c73aca46dc07fb2ed35844a4940adc0eeb9eb140d255b89d3c33f838da8dda8ded7b38bb91ac3b5957d8680833fa019287024c1e59c2843b5d9c5eb51785cf1211b036115f06852e492fb66da5f1ea05e2134435b392df1ba6dd55301a9dfb743adb09339b0d9468d545c968ff6707efb99e78eccda1fc09b94b65fa8f37f21563242d50541fa744814db6850cbd5ae521966a51055b7c9cea2eaf5c3e4cfc62e6e32f036a3bad416663b9229fedd5553ff8b30049d92bd6020867e5c8705a6f8fef3b7f4804e8d7c84fbb38898b5e992a8012d1e6ae123982a298eebbb0aa11b1ad73cd886bb84879eb412fc69bf28ac0a0924cd271578cb163122920922782fb66552215a009bfa439304844f5b79a6ed43dc6c18478b17e643e4e6025a4b92e3dc647b1e67cc2cd194b53ba4e2126d4cd2dece7851c024a463afdad074b5c410ad2c178eb8965d02bc26900934b42622f3f40d4ce02a2ca84e4418591a5eb75a931d61fd248e3a22dd341db44a5c3350f71d1cb41a77a3b3afbf2858981a526145235a638ea934b0c68dcf252ae78fd4702c98700cb559bf3a76c4e74a7ac557f200bf8a2f5fa73a375d90e7c204c17f13bc5cc02d8d020106601e039cb600b034c80ca5e0445d10191ada4f19f092d8822d57605aed8435d62a0e6e099f8158b3a889500eb1023a8d6d12955cadd1daf42b58a73e2ec80282435863de4850caa63acb52fa11fe67ddef2248af172be08d68d1c7f800a18832cd229136572e6b84f10949ad0208a3e893119e5c0ec248b920e887c0e2c4000feb939b0c6a114e1c236279eaa7a149cca17f12087ed19c103c007e85d8bbeed14a05d1e9aa8c82f46278fe34b663be6883be4c59e75a7a3b419a43318ecbca9af41375fec6acbff5a97e226d6b1140a02e8eefd92eb3a9cf9a75d82268e09336d198932641fb5aba8e9a24c77215e2cb7f732240e5a11b722520235114d10d2d9f0dab4f5b1addb369aa66a0e74189c6f7425421e6afd3813537cdf2b556706c50b5b8d2b680140270c2e7d77ead026254a6c2f85360c05cbd251c3c8f87d8f737e93579280267027c8448a6f4965ef8a5c70d3f629e1e7c8df01701f39eecf3496d21ac4aee72242855169a07113066abf48399c0b03e5da77c8a87bfd25712f47868ee986315350b94273ea99252906db79224cfd47bf0a20e50d9e5a9a53fcff6c919c3d752657b56b126a16a09861fff16347e47aad5e7f9b46d8d99c4af7d8dadd815eec5c6c24e537eb97320646d40209c11819f825b5f8b4cd8e0d8bef517b9ea10be01e7adb7a846baf38640929a1eaf0c53ca10291c5409c4742ff6ef1760ae007b64e5c70c6e2007525cf47254b4b01df3367d00f573e580537deedb0c514e06260bd898d63bff87e496e2162369b7f103e9a10a698a6fab2f1926404515e9508fdbac6a0254f0de78f5b841d291aba3bcf0195b8b889d72ca5c7b12252c949faabb14d78a94e4756b1a8557e8c18c62402f2f928b3540fdf5cac1a3782af2016ddb2c2455ea139258e40ddfd424eae0f36d65b1afc5f3324f2883bf7ad438e3d684cefc73ae1c686392d7b2d4b02f99d908142dfe5d947ee6116c009f3880675a2bd842e7f17e5c2da5e2bc86d594d224852889167e049f921d6f6eddaa3008ccbda49e57645cae8ce8d220721498474af993554fc8d4337a1327086a6ed65b1aab4d4643255dca31d2dafd7bd74cfa4efd5853f5cbe2078350146a9011c7ab288f2be844549963490ed370ab9f74542b28324a7946ef658c140c829c197c7852953bb3671748dd6750c5c04c3ffb3fe3cee64d5d74e6aae7123cb1648b518d22861a04f226831e931601bfca0891b530b4dcdfc5a30133bbb945dea1d11bc5702192320e3327d297f93d8668c50ed6c4647c43f593249053438c58af374edecffef8ebc7cda44238dcd789687825edf47430496951af2f81ebc8651ef322cf4081d73496b2e80ac9c89ce1b2d674c7edc57142e370af33167d2105a8b062688b09533d6e74ac1a3c9c56886d23b51cde1c56321641dfc39cb33505c03eea07e6de2c22b75efbce83e61bd78a535894dc2a27613f437b57e9e05d85a72f4d8ed764534243f7647223717b4e6085d3b7624e673890e85ae1b36675401aac28faaa6482d09e43910451e02033138186def3bdd863c09917f5b76e00ab27a92043f4545df11f11a517aaade7f00a677f4775c68cf089e2d8c5b0699906dc535357f87cd442f7a3ad9b0393c885651d91452961e217ae363a17f6491b629da0aef01cd078ef143bdad18530a99f7d144e0da642067d90ffb4e355811a228921a05e07a750d4b698f3f19db9a9cd25eb228a80d3f6c590a7d313c0817418c6273a7d536a60c45a4364d07367da3638d27284be27530dea3f5f0f7e66ef4831477deef75c2ce94a9a7b672a31ae0f9f91623574227391ec08ddb1d00a601edf510a05b11a8a9b7d6bb7d7160529061947d2fb37fb3de719721fab77a80a8549cf03eb42fd90aa8e97854516791ec07264608b08ace746665192126745a6e16048a5581ad8d1c10bb5d0e584a8b0e9d4dc2d3545e8191655d57a011841b28369d7fbcf741d20070e101f13003d449622090e2ef40d535da16667c730d4a11abb9897f25ef09476dc22e5f91abc22bfae2bb42eff070a77bbfcd87662cd9437c080c7b19221b3b5d5ebdc73e4611864017330c509c6e1afb4284675169deeaefe28754e0634165905a6f44c09f9ed2173081341d8c6da4df60e944483d3ed02114c606faa53b8ca741c2ff7e987da057a9c46bed500d211b5bf12fc88bdba668dc32cdf15b4f50f5c1c3ec12c2680dc33c309593d0a4466cd35860d9a46484fa14cd1dab9b27f454883902b4d2f8de9c96b4e17074f228a9aab5d20acf4af57415c97442d3c6d36660c22641668b0335c602e431940528b7c6c5385fea968735f132e82dfc0684a7ba26043c931f31d6e6b85e2eaef9a064ecd06241dcd2038b6e65683e202f023575cc0e4c6ac4125312ef9062748b889465dcb36d09300dd0cd9cafecb88836fc54a762cec87f18ed5a7a296daabae61d907c8b20c5fdb2ebda4b83708987c16b060e87be5a12f8d33365c390acf92d4af6266134147b8746840bf748ffc9034b002054bf94c9a28663e68ab2d263625b6c074f4626b27c91cb8c81b56d04c98f6500a28d29d9e2a3bce7c6e9fc7649c6d9ca558bc667a04a62449bacbb57a3a47c3939fd6dad9b9409638f4cca13a891c00e1e74060e78a1927732534c583418ea7c16abb2563ddb2ff3d25e311f23baf984130ff888325a30660698e499808b370b412f13fb26c58a0a066a8238c47a4218bd3ec24358b4861c622df20612c2e8a5d081fb0e9a1ac51cf235bc7c495cd5de1b9946d2b284bc5e43ff061106b5dfb6bf1fc313449f27e0734bd82bbee41406f7d6144ee1915ee0aa66c8cbb980b20afb6cea20c51867b033b0bea0e824bd6b9fa5552a827c98b1eaa19beae1767746b29ac2fc9e87a51adc24864cc7065beff63ac16742ce5f3afb656e1206de0c5673b802975130205c73fa982fd59a452292c95aa14572ca77330c479267daa75643c3b1d8466f164bdcec7d8bf2731a369f9626d230c1d863147bbecd32f6b06ec10acc634f8b93b9bd192f75f907f670e90e614379770651b18f351a3e5118890de92e0d8e1828420601371ffd6ce820ad6328cd770322445f2e294d1f41019aa1ae95dc8f2e5d5bb7037b64402b13d0ca085e1503e087cfea9b68fd83990392f11d5312156b1352ac4da080e6d81398c5c000de991d20f8ef0c6528ca6ef1e8070598555e1acf01666806d6b8d1e8fff008b0597687debe4b9cd643cbfa291be989855b022050382a616fe0d3fae97107fb3a038842bc533d92e5b9f7850a8014e53041c710c57700c87a1aadd933c251293c554f0a3e1a449dc0aa4bb11c794a3c2b06506424b35b43b3a87e6c0cb4b6b2f28baa8f517167c4e5e9059b7be6dad86dcd9a2c4954ff8dca1be96b49f0678acd2ffc2cf2610206b5fa646aa47a4949964e85517261b8365c2d3ea60448140dbb1c6d8a185003c7e0b1788a2a916ea1e2a633f41894c6f56e9fa38eda5fec0b0c063fa57b24e11ce895b4a0c6170eeb8ad1d05ee8dcdb8d49df8b2c090b7f8918b6303251559a09356ce21c28e94c984eae122a499c841f314858191b8244a110eb1bb5a46762c8c0ea2370ab8f0964428fb70e07b1ec081c781332125e360a6030f00336f1fc098fce3a50a5fe2dc95616e1465035ae71fd60d0a8614d6fe338aac785d05014195e973265bd69014f24373933969f3997734471c1941c3dc454b75821af0e84e8babed4fc051f2fef5a595083d46faca4acb6e05e9e4559c6cadfd008200a231ef74b8e0062183a92076323a498f9a97148cb1a20044744e67912b7303e2b18245b6dd13a6cf4653a6e2abd498091524cb840c33939b205408b2fb2909c179447550c6d0ab811c42dcf1a1abb0ebabdaaee8cb1c2c7df0dde1bc70ad266eb3efcee42a5db5b9674733c2914d6c8b85023793ef11239383a902009791265990f4f0a229eb0b9559ef42c4878c7eefe2691a684f418350af250625592efa9350fccabca15b04bc2929ea8961f4aa0b3a2229813a96f441ca2546ec0c21f12a203d8c848a314c39a0119e343cca2541d4c5d7d587e4f61969ef36fd5fc12e75ecd40b1fb9b24d0f598a9c20d3cad450cfe89fd7721ddc00e77b0fe20fa56fe0f7ba1c5844a22c90112d53e1bad26e6922c8d1f25c69af59370791fea42947d22c4447d6cacd3d6070cac4d3970a8db89582e8d9113222315218a3a4c0dda1351895ed1a6afd5494fff802235e1a9e6a93d4ee43bf748c8e1fc06bf832746ce9a8785e77f28f89d35a0a527c8c3fa38fd72e161cb3f843d296defe665d35674f06aae4886c54d81dce95be2cf93b1481cc013dce7afa0275f636ec5f3b1b55d9b1e8ac078a696c816ce551a18e6d49acf21533b270427e2cc1698c7aabf4a81fc678de07c9b3d30dbf7608d112eeda3936eae10572d8dbf0ed1421bc8740c51a37e6cb4147ce7fa9958885e9f501df302f57936cbe81c7b501356f7e66138cd85b902043a37fea0d311271b843871bff17054536a7f4b276bfd17434c59bd083e014d4e7013018f2d855aaf4167cf960fcd7512444863020b2b9f160653bac443f7a5ae910563dd2fb104a891e55b3b367178a67d4a756f907faa80bd7cdc20a29eb9744fc2e32341369158cad3c07fab10d89a5b7866cf54acd6d9d3ca54b8c1a02bbb30f9e67ef3ae332ebff659f67be8d063f73ed116d10178dfe360ed17c1d2a52b8e00d6e6565c51dfd0787525b7d79fcbbd5a42c26e3c23d3214f4d01554fb2f3b930a59381517b4c019d3c1524969c904a171ce7ca6e84580d084312e3914441c97b5d9f8c99488bdd969c7c60b91abf0b2958da00884c47dc58f60b150e5bbe7a78b9b5a42b5c6df47106ec72e8b1d10bfe6af91a22e6fe280818f829c2664820b362808687a3bcab6d00eb332a7dbbccf9048f558aaa00f1b1d910ba8ef1b79ae2e1f034f1dfe794e49f51d6a2973e8e6af5f1093f759a70ec10708db1f71ebfacd0a5ad87191f18fb4f85f1bee6933ee0ae880398ea9e4d3cd919124f3da09a61ec23897725ba77b79397bc4ff000cc11f4fdda4c97cdf8af8c23bf2d985e4fb8c49d00dc37c8741be3b5e7eeef3429c44d1faa67471821d87ad402393bdb13de85ef208b144788e4db914f59099902017331b34fa2b324ca927fff4ff35214661641a8996217907d3934cc49247d282bf6ebf088194f1c205c40ee018e9867d6497de4808d7ff268c0b30940168f2b904b13da62202b2d5770a6d55c7040c12df27d91be541933fcd8ffc9a4e0aabda31fa85f6e4c5d56e71a0b973c1102750e7973dde6d00ccd231b83cedc87f81e49317a580d2f742deede56a3534353252705e882696d2226a9305a364b2a96442b1529ca71fa84c1885a193a17fcb32ca56e500bed858c04e51a661ae5d20b15400d66b84ef9f4f5dbd0035c691ac0712df62f9ad7f7a2b1f84c4b96846b00550a9fe5d908106214beb5cdf82d4a4a64414f0691237f3616590e610c4aafe5ff162fadc7ff64024fb07452ff67da75aa09cc4d66d499e882f72ea2826e074ab10f21fc37233f81eb67f1f9855707b4bdd5406e0aa0afbe10b0ea038159b7cb060905baf34b71c16c9b83f8f04a710ca22b7b90e66df179f9f909bc2de0e75ef98bd806fcc7a3c61811cbeb55acd049a78fd8a5c97a9587b8eae69ff1c459a0e449c01008c52fdcb7f8012dd85a8807718d037742e6bf22fd7d5a40e2c8d8bf8ad4c52f0e908df3d0002d36c4009013b0d82284942a496ae8ddc151b2c5d183a451e6a4a7824483ff11ba42f09091c1c53e72015696963b0667ff97a3596f330670e2b251391cd74bd88c487de8c9394a205b7e2a0429456deb9b6e0fc2d8831cd311f90021c30efea16d69ff1b6198c4f2ef9fa1e5ef948f77df711caf462451103c14085c27b7de401556a7ac38e104ab70af2e3b4c92a8f769548f624b04e243e26878f59f025a12dfee721047ce1bd2075c7710dccf4910a5467d8bc27621387345847fd4574ec2d8794f7fa389cb5a6bd03d9bb8b32c8653edefc40951c2adcbf9468f782715570f4ab6942139b6229a3b414504653ffe1ed006343165528ef2b3eab1d64f52f8336af2d2d1ae35385e8b424efafff79c111b48a4fca302a2833bf5bdbce2c6cd8ffa122bd1831e40cb16d650457084351b85673c604193d9af532e336cc9771b7984f0e56ce09cc80920fcb6f5ca51b8ff8503740935c3fc2955b7ec6d1330b6e7ab42d18f25def3d24cb35c726c68ec1cceec6556fc55f841c96d535c4b45c16a02165f077550b103da8ae23abd4d9831306f4cb23b7fda7b88609b0e5c41767f7d76c19fd9d49ad6f23312308b0eaea25ad49a730e23f6e55e45f051b14d95865ee066ee09cd5f5953f24b77718f9b82a2f0c50ad06b6287b7661465b306825a1014655efbfd3c1b6b5e8f18e25bc891331bfd6e757cac54b623a2e11607b9a1b8e5db809668a05afbc5507ffd715795f8afac62fa3eaf5cfdcbaf567e31559fffaeaabada398ab374cd17bbeab380db5b120e34bab9a6ae7ea7d90f795985c779d7104ccc1513cf5cd3ec7edaa78180be462e084ffdedd66766ec3da8d8f52e9855922a0e2684bae91ae5e3ee348f334f30d7b6b746b8eff104acf38c3e7e3ef73ee37ea99129d1bcd625281a1f73dc0438d81e1047feaa83968010002b93330ce383428556ec0fde59c036b0b24ad947f43c5eb99ed35536ee4199ef04a7f83953d3d8b97970a8f779cb4d0c4fdf2003095bb1af4237a9241d5e9f465bd2a6bdb7d3c668453549101f08cef61e4e48f6939501a6234a34f4c30073327a494ca6af763bcfc8fd404c5abbfca94743888233bb7fea6caa2f956f374fd1150abd835e7886d3c3c5d75c5d1469f19ad8ffcb0c9736d65f821a940ccecb5097d57de81f977d86a1337b50f564857b2f425eceae54969afd65a444f2d8da35994ecdea1283723f0545c35621bf84ed2c09aaf5f101d5af78c4f4c19064109ac31cd2f5a16cb6fe754b40c60603b6e94e8fcae7d6a963539c1280c2a5d257c6456bf801a9be0b2c29fa7e9b7715e4175f112e6199db4d772e5cbd1f75b9500ec896e0234054657ceba6a881a71b68235a13490ae5e95160670c8f7f9a3f7d6f9243ffb5fc8f583dfdc33dc6a5bfc95d2badc877003d7c03a097ef01ebc15bfe43c33a691f5fdd301c0bbadf3f691538bb2268ffcc2b4977a505fc9f1c5f9eb9b9bf07e61a795b976454dc6f8c5552c28575438f8623db9b340a0a89e06aee0077c055b0d19f1d37e4967d1b78b2f360ee09c3c1a98f75d56f7023b3d36e980a64d52f10ecf1926473210a0e518bd1062bc3d9d77b08ea586a83602672ebeead332c79ac5473565cc6d90170a3ed113d4136b236029d79e0b9a3f1fc9c750405b9c0c35e965454e338b59f8ebd7c0bb8200f049c741c641ea4f10993e933972bb35164d3df8c14a941f66816b720e6841c077d013b778836485fb17420c262599ffedd9609b60a965eae08a74663e2426bd4221ae942d4890348cde36ab32e8d6e084d091ca3838c25a05e9b87e1237fe6923c1897e0a72e0295d119d0c075641bff1f4be5672e460493d9975c0d29af4bdeb81143b6f9aa3afec080f450453b56d258b64bbba8464a6f10f018bf54c240280ae5e17cc666ce299f00663fca0884be1341ca19e0acc43d3dd0cff2ff65edf444d3cd39636ab9919de3d63f6c84de8fb09fab234313bf1c61f3d00760dd624c2ef553bf3599c32b53637a4706b23b0608990ec903a91295e90e9a132c4e279c9724cf53ceac9c88c8730405341e71a81e09c062cc87cdf848f2e1afe87c1f92468646965118b4b0178c8bc8e9b208811fa020959bd72aec7c3a9b68e011d50598528796e11d4d8cf12df55e1ab8badca422503caec6605b401744d6728a28a058d07eb768ebadec0333e0defaad3990f101166d661bb89852437856b4867cef095f87710ae11f0516d64ba14eec962f43904256c622bb727ddb258c43b4b55998243a9f52901d27e72d328d10aa5c7f990b8cf87f41596bd7fc6f4a085470078d79a15200d42a7a922f1a87ead1cc6744ba4832ef9f72376d76f15ebe5118220fea9c9643ce9acd562f0477c2681ae420b1c048dcea7264cec6279205fd52df69ed8ee64392395def052343e2ff40e4c748790685edbe8806d484a86ec2c61c85a18f0ee15b4ccc26dbe9eb032b70c7a0b2a26cddc90c9d9e3f02775f5dbef993f2cadf676c1fd921878655613609defc0c834cf94de609611004fab03861503a58fd2f4f678b7012336de1254561de1b28a2d2e9129672a9294594adca5c6221336c295b2d544b2191e192785bb3b02ef56a2a191b231ff871a48b1a841764e8dbe8e162fc1f322a4a6e2fdd7bde7e7baa4609e19eca1450030c521d52f87c2652556ae9eb0b1a447cd78b36c6d4381f0eebf2a63a9974e2b3bd137386119e00a5cc9fcb6ef8cbbd436501cbf32127aae860d76d477aae22020f5f9085347f980602582257d90e1cb44c5d9a6a5ad9cc3a579426c78ec6c13de1683845a1645c52f93388bdbb632602ee3cc7250c44ddd1f1c8cb4d12417238cc2d65089dbc1f5988503c092317e5b45f8ffe22ceae679f7308022999de1f318d996218cc31d201755466173ced0fb76ccde28bad462431938ebb746d22546043c783f9ed083dc4752f28e50d1cc66e83fc46f01b6a1428300a4d9c1c35ade5013bf803bc96d45896265aa5069055e3f4709011b829581301d8da3523b200242deba892af796e523ac412731f1be480f54ca61be9000891793dedca383272871dd2d0faf78c9839319894a5318e213d717e5157746402552fe7b2bc61d413a3fd29e67f170ac3e78a07402d4bd9aefb474e324c9c20ff33392a6b7a0be3167ee603a1816518d08644ad92a852eeab4154f3f1c31c292d80c1d7f4574ebf672f39886f2815a509125867ac8eb28f0dc98214cd3657c621ded7937a616cbf504c5ba033e7e4cc8778dd011073cd717174d1b3f6081416ae150b8e1e8273e1a61a46d4fc3067921145f5cb19b7a635f69eb8c0fad0a85a30d29861021bd51799619f7120844ced40b34eda033c0590bcdb0236db33c72f8e70e20e2fa30b399e30e3f526008cef6e54f00e22da4050087215c8f624fde6f15d65091e249c89abc8df488a1168160fc75d40954e14587ea13cc7d79bf10eb4a99720081c8e5cf91faf5dc464e4a5a1ce3e82b02a3ca9e8a1aae28b2db3d1206e03b2592934dc17f8e27bc1382aa7b17195a17f1aa11d33028ff11e2f242bec62ca9d59653b5ab480ccfbcc66b29867c0b22ad4a8f14cc50740095cb58461419a68459a8174dccd672ba0323d087c0ba4467901ab4eb584bbfdf3ba103d9fe15ba8fedbf8edbf0441ccb75d30bd2e3f8fa3732d57f4df76cb2fa17634b9dd5ec25ca79283da8a65f651505bbe23b2143157f00bfb0fd21c082380937ab2b0396fa925b1af4d8202a3d41b7b2bd07347f2f8530f8ca85bc74f7f6fd6148677a6c6aa0b27d91520afc707c8610fb85be92fc02c6db7dfff1f4fde4de2570b5d2079a9fb679f016f5c32af3dbcb6e40bfbed0a020e7ee00f540f5fbbd583b7cf5ede8adba36303b87f7d04d137d853d82e2787b9066fa7c1cf8d70f0af3fba80d3a7bedd03b321fe5f0e93c1f66bbbb671baac12d4d7ed0950d91a3945e39888d6586ec45ebe2da94098e7d7449a88e4a00723068d0dad59c64c651b7b3ba11f10a2c777962ff0c26bbec834bd6fd00622d37fc00a80a0bf412fcdce4aecf64c30a441bc947ec5435074e4f457c4703748dde6dd42825325b26fc1f4e9a5523067ea68ed059b855c694e541cf91f01578c8a512b6b01e9bbf2564ac3ffd8abe673ccd40982fe12781cb197d101dc90510a6a3ffec9ea6f4f29fdbfc5f0c646011946ac01e98abe3250b344fa012d9def2e09cc784fd0278e3dde028ae37efc1ea49a458cd57c70e687d2fdf586cfe313e8b18ff484c27df09f836d9e5d2adb5f25ffbfcb23f4d228c029c1a6ffe8d5820afe5f8335ed958b75e80b959af5138c30dabbb3a9d1b73c4365cc7d127442940f4f05c3ed6e4e2f34daed8af96749b3bfae070730aaf54a64987d2a17f228e6cabce874f13992d10e1a4a01613d52fdec94f6389f234feb71ba4b08a4671575f15482ef2e84f0961053dfb3fd4c77b83bdb0e3cccb6b3a24b7a700d8873dffb39eb982add1400b64d4a6797a997a1ccf4c57caaf610f3b5f55633bcb09933025a1f42be5eb6667cde4a6cb8d75ef38d67ba42722ac95baa43147cd26f668a5cd68d8c0d6a9a5c584cc4d0cb20ffc97a3bdbfb5404181cb2a09ef43a506bc38159096bdf643f2cb88f3e24768d89230fcf7ba1f8b19a97f681407ba9623532f37e2552827803fbfa0cc6118f9651e273ab123809ead2524505290e3e076baba8d858501f1bde4a6fd1bedc58335847d994bca549253bce94483b3dd6e6c47d5a8b4dd82cec5ba9cbc725308e43038085def0167acc10c0c46e9f59dc242f7a475b97a489af42cff780fcd0ba97af82368f51842baa58e90a1556a828d27dc3dfdf2d7d2bba19d74cab5d95c21a563c9657f1823a183addd797e24d366fda78e34d366fb069a35d86bb9d9be95d583d07126d4d608117ca5704501c98b2ec46e886322bcc9cd0749cdecba2f9ea353bbaf4fdbbfa87f480ae9a4abdd2d00103d97575c3f9941f1d3f6a2fb974637a886786013f00ecd05414ca28c2f4dfb1a8f7bde9aca187dc382b3e9fbf8dc0a04be18a5c259a9862d543c360b2d3056ec5213f7019abdb64a2e3258a71b5d9b4aa852827af2a0a05b256d0e9785d3f26cc403a3384f4ff1d786e2a7a5fdea39b48082c54de7d04406340509642782a0bdf779e3f62a1fe807359650c7efc15f435e498a97ef079e5283f3848250e1863f4f835741152474b1b47e88295a160772105f672eb22e596b8d2f0d57dc2c125063424d7605f6e35587b5027a5eefa0e3c788e4167d6348b6c65cfb3a30d69057fe4f94554b83a61a4da56e8af1067683e651e6fec5e8df72366922a1d46a442dcad436732d2425d46ba5bee187dc2e177c0093414f95c0b53b9d625e6376581e5b523be7b66787f026abb4f4c3b0968dec8acdbea8a79eb47fb26bad3f46f9406adbb625c7253f0b5c3c968a716eac509fb9e7992a8d0d2f8bb2d3d5ac25254316d9df37e62c9a78926b1c1fb2391be4c112bd89b88f966244ea0978ef3654e7c483f8deec968aa43dce45b07e09000fe452d93d6767c7c65469b1192615a504ada380734a1406fe80d2741862d0c83e40264a096915c98352dd3b5bfcde75e71c6d380c659423d94315f86163bac6fc4f833323678df887b65324eb8d710f1cc645cc8f4bc008ded5881e2e6c2b8c725051bd55983dae6c23d741fb28d1ac02570c8676b7993a71c991af772cd740bed15bf19c8010596b49b4b62f9256acbc1929daadc23ebfa8900f31e92399898603d9e07ded79122bb7632a4469c830630332417b1694708e75f1ec0d38c5cb211cce66e8e3cc988c6d8344906a91127de68461ee91196a502b094674898b344eabdde3d72ccdc1e158c48186618a4487126d977bf72b279c9277cdf7db5a503ed9056cd68b82fa829ebc16f0e1688a0d7f1ae7920f65820e9b52664a636545b6004d34020d217864ce9eddd86c628c117d560b2fc28844ea798644170e86f26bfc41ba355bfd681e6a93b464e4f6dcdce7e256b6b0615bf5d59976485e04729fbef8404af5cb34d4242e8e4e59e420245d5c0220cf23926004ab77329490a026bee31b5a5f795a4e065a9787825b7a6ff9289766784ee5772d5a8a397b10af3d3637b74ab04aa7fbc53a0423c0316811d70c4ec9346aab6ea7ec5a64e0ba331f3241f2f0d1c07ccae0dce0dceee5b62e364e80d5528cb6e07ad536ebd0fffb48c4d5fe9ec20139ba9f377484d13992755b3a2feb9aeb96645fadfd57960c61b114437416767dac22f06036c05d748a77a7e575b79e44ebed122f5de53923707e3c95813ac9fcb095f61d9bf279753563cb33003e5c2500234d498e1e27dec881ccd8daed73b6f66a1181da293bbcadc19a6a042c64fcd20e3941318935b0d629a23264d2361e58937270643897884dbac881233078b1e1975104807d56ecc34214319ab12012b9faeb481850d85610713aa650889191f53b82026b3b8aa5b4d7cc5fae80531b4ebbf8a028d25f353a6c01a59ec8e2e32a6bd637586948a6a0ec30cdf934c44bc3221884e43842b8a88941247fa778d9e13895a7cc7d332aea6154ac15b60ebd67210f0ee6b9713f5710111b11797b2ccc20dd24a6e1078951980366ba2904217d56ace8645a88cb27c2082cce55859f2a2ff1586bb130e385c97bf2570a06cba5363495c9e4a8e28be3014b35fa80f6839011b262f5652bcb45130c6a31b4e0c45dc22326d0a46e953feac4f0d91846e8897cdce48bca2300518ed853b972b27c6c3a26bb5a932f722266250727dcce679443cd566621c335d994c4d1edafa629b5c294ca79c2c654571aaf79e05ade450af4f0136f8d6f35853efedcacdb63aa4bda18a8500c33e7b1bbdd36eb28af3313e0df1bb3403c990ea7eb97d026c3b478a8c49b86a618f64c9182cd5263299c8d3bbc0ba9e2f77e5012be6773248713ce80d6ed5d698fb4bd2c3cee0b7a7a89730a001ab2dabae30c4cb2205541204e8103880ecc88aefbdfdb3c09e4675051b5e3980afd323124083e0f07a487fdf32bbab0908e0e6f4207d163c58d202eea07a0542d92556b1d06b74893448f911ce51f69caf3ca89269e50268cf0ca5625fd095526a56ceb7bc5ea1deebcc2836f0f8f581548794085da2080eb6572608ef06e57a2beb61221bbd0cadc2e2c28604398c27fe575481ec44ba246e70773048f26b45bcfea8cdd5739ca94a60ae44d8e901a3fec48ce0308aa911bd8580fb16933a0f8b2efe2a8d71b081afe87537ba14b396c878b979b7ca59752bc923dbfe88aca3422279cc2901a148207bb2c74ef685747fcf0db463af0ccb5529e52fb126f1dfc658343800ed90bae57e9833dcef92106a01d6328443fd8aebd6156230081d2601d7049aca04b45a15982b77d859f3df3b611cce33d2889c616ccf884fbf4c8872a8a02e100a5045bccb5bfe8dd8f5a8ff9d6f27d091dea0be08b52de05b38804f38823bdf08d0b2aae0110e655c6ec4f2fdef91e62cf0441830d080631e23203e14d1a8bcc389b44976840740d791b8c050abd5353cdfc03cca502ccdcd99e97df6c4a1802d9e5b86f09026549d32de9ff0e4e8ced50be62bd00dfa997f9f6fc4651553f31f092e6984955345fc4e6d7672807c678c83e30bc585b584bd91b20e8246dd8d209977f890476330e394fa37f17a9225ef230a122db6d090cb4ce0b0f0cb7354434bf9db12573b8447b37f78e85de671298173ff92397a66508ec199a3e6da65a41c1fbe8281aab723e239013c6188b381ba9c97fcc3835c9c7ef2a0c1178c996b9606e3804b7712c65b7277f45f51ba0e089e48ba403bcb628c3160188edbefccc06388502431c8bd4a162a952cb9c2492169ef6b7fc833ac0972c6ede4424f45334d0e4d655d4cb94c7ef120805b0542ce38da843233e7c7f4b50a7fcdc10ea2d9c7dbfe67b293dc1ba6aa58ad78cc508fb8f9185f196b89d9f946f6af15a28f0dabdc8c2071574d93ace0026637b8dd69f2660b661cf011d163c919611478e25bce468598871e710e2d0943bf026cef3c162b1eea2dd09c1fa368dba2971949b94a6319b9d660d6c20cd511e6b1f6acc95fb4a40196badab8d5fb2644449ed3b9f3241e17083512a0ef0e8975313c99b9a3f901de5e068495255651ffb2a482c94f8ff9dadc7e1370c7b474d18d6fdb45499f51b92b6ea2d9c32a0806b5c85f866b8b161bd32fef25952a028e76d4065d319d4f79060635115c23175114967301f3c4223738a1d9eb76426830d1ce4017dd784c05fdaeb0a0a3c9aa2b59bb35463712c0a19b86f1c67b3be96b9ad2852d93c0ef01eb2d1e0b288e24b712ab05bf9590a18b19af8148972c9a7ffa5c84e281eba35fb669d1945db6c5fbb3e7ff1145ddf9b91b307d62aa06cee0b31c96431c72114d41d727f53e8c9ee14159e5237eeef9911b3cc6118cfa8dc247413ca7d7106c609fd1a4e8cd3f3d6d45b4f50ce54b2e2ad8eb8b0fa42e2be62d9c83fb528b85cf3ff85fe6acc8ce997bc05628439275bf453d25c965cea3d86ca15ea7b93ca53548e3a32f894c713c79485914498c78076c6a24de92349eee3cc195405d8f16b2891ca5634b12ff1290c30942a3c869bffd830a21ac3fad70122d9347a745313d98cf77e59a74e90b96316a169134c9c27726051a8bc212ce09a23bfcb3b7e1f29c50aca74aa9401b940f26190563b329c6b1210d31930598c4811b5ab5d01bf7aa9931dbcc10f6c2c95a402da59d69e5746efa5db42bf85039c3f128ce8cabb4c323a2a2b0cf652d93a237398bc7e9b9b836885b1eb28e44dc336408d13dca7ba3366d415183fab3cfd6f98b85ad218ce15874580df99aba9072b606171b63ff295bce6d1ae24b4e5ceb45d4c5b413bc182b11d7c3111863b40e29ee0f0c7cec30dd09d9048abbc28572e1ea55e025d958cec6a1f01755ac1acad15c8d99666b86acc28b5eb2e59fddfaee4c4bb997505bb8c50216eb0c2a0be1f2dc4e89681b57fc4f37afc0e546c9b108c06948562dc154cb2823a8bef68de5adfa1e9609916995b8239bb1c86a1d83535219c803df602ae705585d49689162e002b1063506264fb0eac21951d4a13a3516634911bba3c8169812a90b4e588c80b45059b1585a03766c2263ceddac93d61055288a55b56ed62a55a257b7112bc73d456cfb567457cedf503183a80b23dbfec94a937d4f12f794af344d19c1138f62faf1a28633e829043c604a0a16fa549121daec4516c8c48be1e777ca7e38c2b2c9246e0945f5912b84c9f261f99ae3407cf6c038ba1a08eaba62dd581e0d6ace98d9e7f91726bcea577ee67633220340281fd77712cbe4bf4bea43b95eacb21430efecba1c64fd5226a8e8f05ea9952a263df9f1d263dc182740c1a99fc45f2dc04dfda79be0a1b61594cc4242c23151285fa985fead31642eb2a1f135014ce2f5d5e1a99f6916229b31117cd2aca3302eebd06b44cfc915ec66d2083b15905fe1265475e80eddbf37c94491263566cf86534364210f21b14c98232e76c10316ad419dccbf0c743c56eae8ed96446fa9c083ce585a87b508beec83d8c88ee590e0e099ee96e692ece74adb23180faa1fcbe258fe4fb44e2f56d97e67f842a087a6addccb5d391ab192e568c6dc96a3b6ea6e950af8f5d4de38dc0d91a770c820e77a9ce021908a13ea2a37c25dc6a2c6e63f41974c88f41f1f819a42c31223994430f9c8963501bd261f0051083fa140fe7ba0292db1039009328c884c3d460c0e403b7e02945676cfb583943625aa65d9f0865f3ba470167a06aa16baf6d160584b40c092e4e02b7daa6e3f36c73624170c2de079db72e64fc03f4fbc0e69228f29ae0b6bd26950b1d36e2b066b0f0860679e72d3f933beb649199a74d2c63e4f0c5d36739205fa927620eb95c88c7bd10187d2d634aa015aecd49df36b27d700ece49930b0cb9f30a29a9aa6445acc9e6c4df0e5d7f7141cce7470c65ba95073f7d7bffdf4595694a44d1a6047f25a937a5279c3238a93a5454d33b96117945c2ff4b1675626bd95fac06d77fd786dae6e70c96a26598884cc9bcdd0ef873dd4e1c26846d55c36564c6997484f4f99c056e03bdb0b97fa36c37928ce9f8ab2d34a2a6ed9f12594a99ff836851ceca23b7fa52bddb27c55e625b4903e307b174483b584c534cb4fb6afc68ad5737489c2a40ca51046505a6dca6d7cac963e9f6325900e064bf10290a3a2a7d7777af09aed3aeef55de72da69bd30f5e8752a7a86cd0a9e6d1b8508978b8671d58ea1a34c7fb1ce8aac34b8a67cbd340d03352f7118ee9af107c49cdc142db5aa011d7cadebb6c46365be5e95250f89eb08185d2bdebe2320e366be5169aab1926fe1893c963ec5068f9f142974187a527bf82d42e4bf15d2b5ec5b1797705fe1ec18571f9a9554553ba832647c77b36c652d5bbfbcdc593d8be58b30f0e7d64844fc402c470a4d73f2cfe91756a63e2e69e4ecb567413f89af9fc92e49db40941dee2779bee02e4c5a18f8ea5b706455ab78bfd67fb83ea60b093f4af028630c1881247f9d2e931100ff858859dcdc76e5cbbc1f5a13c346ec7a4cd6648d9d9d0e054e56e3e1651902d2d78b6dea7925946912548568ff687594c242474eb26a6d3ab1ab04c65270f1bec7e88fa8973c9963f54be12014e5045803e243d57bd5717b92d15a0e211c1c755f076e32da260700fce8dfb2952d05bee36592ce32098a8bd849e5b98a3dc0e7ab7292d7ee2b175ab27f7d25e98d20df28a5da2a8c7e6b67eacf7599e93b2ad471a022a4f2b150a1d8edda0b4f8a0ea00217f3404f838489a981c1c664aea258f1a37bdbaa1bdbcacfaa0e12cd72bfdc99a9f8099b0bafad0d8cffaf095732f4c6c2a03aa4176725f50d219a70dea4cd4bbd6b46bdec4b74c9cc7ccf26f3da0dcb03a656cfcb17c6f7f8da8a12e143f602dbb9617f2496e53600da0572cb681011c4638409cc501dc8f4aaaadf7dddbd97e5c87b4d8482693c8613d30df3621442491c8eeeeee1d5907cb06fc06958984a1cf848990d093275028a5749766d0ddea8cbad579d9128fa98af17f4a32e88eb9fa93d65a5fafaa52596bedeb75efbd779b1fc6189752bacf9452b0631e8bbd5e51155530a89b304b290d6b601a749b349bcf9b148c91345660323289ec98638c31965bfe4c9516254b16b25451895a5b159549ed8431300673fb349016905ffb1b59cb4e70426bdc966ed0273891d1cad16c5acb7d821335308d18de5d8b9873ce39e79c734ed29cdbce39e7bdf75ed2fd1afbf2af9473524a6badd55a6bedbdf7defbf3235992158bbd5ea51ab60969acacd0d87be7dd7a686d6a215ff0b40161240c0a2990e4a3003d0fa6908234bd0d2823008f77c86333f85c5e7eadad8141d306da8f34b1f0790363cc027069ebcaae99ff3335066384e0c410a03c41042886a228821451a6a0a25671b3011966d041430d36a47670a003381e803172266ecb03c6c89f89f6865a63b0c6aa4f9216ff44468972d7588dc58e9879ad8006544091c41042843459628225401845ca83ee158b40091325493804526244898b4320253a404a765012021eab4e8e1f5ac90c4a70e2033d018aa2640616e00c287ba843465043adb5562837e02121a051871690c0033d60a01f4062a083e81d7a0a0da4d201e403270192c4c796e4956408ac15c98f243ff75e8c933849b204e826c9d006a46200c7f225891c2fef1a052420f00187899c25949460c8135aa5059a078d24c8061dcac48f1cfb840c5aab14d1e2349830000e7fd3259440e9bc9f8efbf66dfd6ca19451b27413ce2800872f3c7234233e9f7e959bd9228d1b9626180e25a7bb4360cad943862f360c1268ed86a3a1d9e7cab1f03261e0e558e0b8cad16ccf6d74f39e46e31c0a1386bebd17db9aef8623c7829c70ce3967f7db77b6db18c6d4ed723411c6dc194a1fdf2dc39ba6651a950d46a9d14dbed0dff6c6d140f8d2e10b7cb8691c0da5302667dc461fffc6b140ff33b7656e0130f0334773e1b66ddb1625eeb6c71a8c5af7deee36df76bf00e7f686c1d2359a84285015b410abd83fab3c818810e210e8c709d0cf900522efda8f47042b8a406f60850563dc57d1da06f8fcfb793f3066d69ae915561c916a54c1a30da982fcfb7743ee61fa799ad63298e1bba3fd08e50deff6492adcc78f770def24156aee432ea594313b458612c99118a39448842039024910d5a1085611ab22525c16b10122a0d41b0e7f70b42de24947a11f001a813cd0e7c523409a7a8b0cf8f05584f0ded2f282778ce407943424d181e4091304f00080329a00b119ea0f862c418fc84018b284db406b9da187ff17486c808408ef6f028e02f40383d1048c26603401a309184dc068024613309a80d104f7f27eaad6de779f3b183fe8c83d1bab9b0acf5efe4853fc6c771fb9996ebfb89149c382472331168fa51dba6b2c1d1823d6e7ea6ff5737dad7ea6c5eac2b3dfbefc695ff782f4ccc80592e18bcee286cbba298c0fe809cc16af897f024cf7fa5a899f65e1b2f3329d6959ceb2acf34147de752f4362ad3da9ed6c47decabeee106b0fccbd308eb9f0aeb31597f865488cb1d6d385c7ef2e1d6bd5f70a9d22baaff86171f92b7e380bc7aad97af1be22886671930de1f5c2e70b11e34f6dc108626f706f5c90122022a888263a4108a1ca76f89ce76877fa1c8df7f4cb94fedcbb6b9c1685cf4f79c2e777dd4a0acbf62a2b3a6e155f7b265c7b16a0217cf8fc94e9d9a0afd168cfe53db9046ceffda41ac77dfd859f15b89f9be4fd7cede947f23e3f25799b86f6f9f36baf3f4ffdf5ac6d2f435251cdf6deae61796ddb2c3558f64a8aca8a2ea5ebba2e6bcf791ae573ce394fa0e72442844fce86c6339d23fd596b1a7a771bcefd7c5d5b5af4de479f13e9e738ee35a7ad90f13c1f72136888218470ede7e49e7edc53fa32a6f761a07bfb79d7ccd73e722abcf0c3452fdafa399a9f5eedb37c176c38fd9c61fef9f5173e182fd0f37b6df1c965386a8bfb7a0c79f718b8f69002b10bb05ef89153c840058f0fa790610a1e57b8cd4af4929cb0021bf0233b84509222c2084aa03d13d4a0ed9017e828728407478420840c427040881e42e41ce17124e70890233f1c61c19122476e70e4e708d01123ac4f106a983e4fa424087ca63822c30c4768e05d3f55c287c80cd327063ba40f8fca0756830ef571e2b3032268d0943e8410c2ff70bc4c95990dc67b67d763e0f55d2e8d54485105cf413f721932c2ac70fa595a3b2dedea5b3865a07dccd118007719f1174eff7e107f54c2c869e7b4764648695737a9866500a71b93780860a05bda47888fcf4d8c514a9f1f3e3e208c31820a7da37be81c0461069b0327662bf3ae41102588246e4e8093439643c50d470cd5408ba0c885d59e283a1071e083aae0a087aa43af74e61008073f746cc7f1e2041bf407b40e3a47ab34edf9a1ff2f7a8c9830ea614cf7c49846d2f990d2ecc528254d8db837961288949426926a503a63c8f4b34729a595c482ada41af3e5d3ccc05e5aa73665926aef84314a3927a5b53a605e8a6b66b59ca78cb96656bb196f37e32de3b42ee3b42eebec6d9a13752933fe8c108ae2a77840e617254bbec487320425c66324c98f111e23afe823aa64fc3985aa03e44bfc3a38fdfc7281f1173b38fdac43629a7de41f4088d0afaf29236750fb6dbb62713a23fd17b16d0a4d398ee3a8673def7ad9735e1551ca51141051cae7ec79dc8bbc17b53053a8c8137157b7f4d76ad147e5a0725039a81c6aa578f1d88343201e08811df2ac725b7bdc7b9ee771ef79dc7bfaabe9f6f1c7c0b94e3977390e7bd6d6bb71cf795a7b5a73ffd5740f797c91e7719fe27d0aa7f5cb90229d92c2c9a43c9c322b545eb4aff6768f29af92f22b5244dc8f2ed59df79e97e23a4e85ccb5dded674f925f37f5e46562ce393b595fa256a8152aa793524301e9b66dd3bedbbe6b617ab243ad5ab3255bdcd76ac947e5a0725039a89cdab2aea0287c001c0205fd6476ce396b62e0b156ae3eb7e14e79a6cd8de336ae9f7ed4e4875bb76dda7bdb7bdae7903cb630391703afb1f1deee27958cd789bef33afde5a0b6bbb0fdd671e0f9f93bf188253cde9dab2e90cdce53ea8473c239a97a0e7a5329f9b94be5d868ce39ef9e838e4a52ececed73dc963d6de7a0f7c4a385c63879da99e79c734e8ca9bc57deae011953cefa9047f990ca1fbccfcf215b983cd2fbf0e1dd41120e8343a01db078f0e3f200670742f7da0fdb1fd5c82c6b7b779b7b51392d341182f845adeaaca855865ab55adacdb289ca41e5a07282a2c8f045d7543cd39988e526e72985bf1ac821576346b9fb09529e43f6b8e17c2458bcf464072a249cf03c39f948c0b800380442a2c5b3dc2c37233f729b8adcfd7e9677aae7f71ebffe7e7bd1de6a8a77ddde76af5ef695a0d077e7a0fc6ebbcbc0f2c65153fcdaef3635daa69f65f3e7ac3f774dfcfbf66fe6756e9555a5c4d3eba4e22a2c5eebaafe90a6fbd6e6b756e56d5559edcb5efb78eb8e89638cf84fa9134ec42f63e2af9f7e705fcdf631f088bd689fc3cff9e03cd18987c7fd86536c8876977cfb94dd25e7fea4e2f663dc31c628770df7db5bbbb56b1f5ffbf8f4a3467e0cdc7ef2be165fdbb09f7cf08b6d74c9e5c7abfde5bee3dd4f2a7e3f87c418ef9e83762c1f7fbff4f1c41863f94baa68b38ff7db4ddaea8e156ac43fa54e3811651f5b6bfb49c535cdd1a4bcdd35299a4dd1b0a6ed940e73f8bb8703c6767bf1cc6d1cf7d9a79cfbacdda43de1702c638abe2edecf3e8d7e2a0f4f29f972b51ebc06e55875a449bf0b0f871ebc3ae1b57e8cd9771919275ceece65dcf7138f88d25626885bede3a82405b76bb4b8027e0d47dca4cc42180ebc76cd09fe9b83f2c8bdf75d06c6b75d8242e3a8a99a7a95eded2e03e3f16bb8bd2de13a2ed5bd18af7fe2b17dfe532abfe566f249c5359b716bedf30cef138f58c2b52aac4eae0cbdf8fccc3dfddaaa43aa4b9aeed3af44287c1f7ce3f62d0f1326dc001c023101720414fec221d0113e9c890e9e797ed48a67cd7b88adad2dd25a948ffcb17e0ef975c95bded669a79d765a6b5b5a56a0dff232649ca11ba5ba7fdf7eb5a592a22547a3b6e4eed8eeaee3ee2d38adadacb90d0c12a542f9902820bc46832d52a2f2a37c64d40f2b5b5a503911254d23d2d316d2ee9267d48a5b4d53a80a65a15f77909e6eed21a78266f3f67076dfe24740a9503ea444ad72cb6b98c5ca082fa25f1f5b4963bf46ee1e6d6cdcbe568dd0a2dbe845f1b4a07c70fb95f4713ffa32fe11be16dff6a9502af952e7b3d81db368417ac59e7a77173e61396f35555fd284caa9b6d6e8bde4682cf75ad094d12a2d28a7b8575bbc867efcfb90b311bd4dba9fbfbe6a3e7ee12ef3b52b654b50e8ef5f3f7beeab291893bfc6dad878fe97295377c01be0a05d7c3e2a27a2b27dedb347a9266ac5b1b5d6a2726209a3c82208264001eb8106b01f602c2802ac072c0786c3922196e800264304a600c20e4140c941550405508460c9103ac84d4c88baf2e03201ca92d7e51068090f0f254f94c49440a1848a253a967060c90d3bfe5f2c593dd12c18638c914ea809694f34285a94ac23e3641ff2479a5870f85a907c919f575825f184333e0bd72c20f29c94054daaa8685de78c97866e4aeb678f7403ffd5b2faa4f8357bd657d1583b25b7d43e7d1a5be78c71ee976f632dcddcd6868c73aef6f1bd39df7baf8449134bc986120d1a93bcafe93ebfb74b51e86ee717ec454f4aeff3dcba6fcee9514aa9f7b96edd576badd5fb6cb7eeb3d65a6bbdcf77ebbe128ede3eabac58ecf58aaafb1d06dddbed128ec67fb9cf5aa6f136a906e6dd63deedee02e73e6f528dee02d7de86d7e83e3f4db75bf76d78e4f243aedba4eebd27e5b7e1de76a1db3456b8bde1f7f3a6b1d2678bbe8c693b0c3f1cc7cc397543f8a2e717a5252874b72b4e2d0f1367b2a48c55fddc014d96255fa894c92c10104218d594c9ad09c39226ab63798026fb037ca1f47365fdf0f4ad0efd03581dfa3ad2345340581d4eebecc0ee73a636fd790394c99eced4e555fe04927e7405fa4b50f4ffbffc1a24f422bf0274d0b0d1b07d554d98fc34207c79c9dc022084d11bb725578281de368986a570ce39eb6fbbfbedf3b66ddb961f76dbd7cff2ea92a65e5b7cb37ccbb605ce7bfbf2d7d6d4e0c4b7b6667e995fcb9fe5c7f9eff7cad1b09ccb5ba6413fefea922ff1730ac6b89fcb8e9a22c2e3cfcf4e915d88bc54a45444ce39592c4a69adb55a6bad2d15b9454a4562b1521129f107542dd8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9f96da35157a3fe82934e7ffdb69aac6bad4ff7ee70fb20efa0467f459e5bf4565841b95f792c5fa697bfe6fcd99c9f05fd15a2a73ad3c42a3adae5177d7d4b00f7fa27973bba75a2afbfe06485eee926e9fa91f46f5f497ad310fd96e99639eef3aee15eef1a16cf6d2a5fe8b3c82c58567cfdbca2e2adf0bccddb72d6dd6f9fbd2debac6d581fa1e9774cf36bdad739127d1689441f391af4455abfdeba059f29afbffadd26faaea3e95eb47b5df16e456bd6362de7bae2b5b7a85ff77525f2687ec1094ff994dd71d4d5f6e9afabdb57fdc9bc7db9e777c186d7dfe8d75f70521aa229ede8d771d455476388deeaaa022e0e2ff0f3829e93034a2cc1e36a724009256a6bc9145209ddc47a10eb4190975d88799780f04a40948ef8e9c18fe751ca6d8efbbca77aa60484a6d4ebc1ab04042d015102a2a3a2e42ab9a0f4825210241a229512cb18358df1a9add53e0ddd76d7148f514e5a6ba5f69654a0e54f15d06089bf3e0d262172d993eadbf06cbb80370d1278e45a92d3d99a9c52daa29cd65a5b95536badb578a6d4a2b99c965a5afe0c0a8ac55a7af71a1a12b82581d34e5b1a89120a9a24e104e010280917cf1e94a6fa91525cefdc309660ed4cad58ee4819b38479dbd9d76b2b6f9fe8bba741931620faee6f88b4f6dee748a9ac785a4d03f9f6974b01f2edd6df6a701b967cd0f2a78c89a3b6a4cd7caf9bf363a0369a9c4d32f54a299894d65aabb5d6de7bef2da5a094022ae7d76ddf564a279573d3d68db556914aaa3d3da94e2afad9ee32419cde4b774ca552a913ce2975e2014487f5692a6dc5eb4ef5903af1e82195c251e15615426e450a33805ae58c5ac9977b6394a2ee58827cfaa17c70fa36a2726209740bf1aa05c9975a3a81963fa9cd8461d71666b5b674022dbf435e71c561f52376aa540e7904ba57166bca682ecdc5d25c2ccdc51281e6d288682fcd883459cd47fb91a60c833139a54e3c4e29213a5a4b4788d662b17458407484b486b8b4562987ac9e542c960e0b888e90d6109708582c203a425a435c271e271f9a4b87a5f1e8b080b484682e8d084b739d78b0768fa39d4aa558271e5ad066438bcfaf2d69a275088f71c318318b5b456b1d72fcb8b71209744ee1394b3f744df63567932afb9026fb23679dac9385e0aca9b2fd32a68d5b8b225f86be7ca30d4913fd7c234d37de48538f251db29a6d9bd20efa3ed4867ee888df641f56698abff11e7947e5c412e2fec1ed031da10de59534756da8f24813043ac267be16459a369f9f53d204817420241367c0ca9353d9c6362acf8cbb76177a8cbbf3a0726209b99589dcdbe3b649eeb76d9bd9fe94eafedeeeab086b3cbf7af83d7bc3e3fcdad9902183f06edf6ff298b3fbb8edde7b4acd93aade49b72da87e2ee5a06ba296268c2756c1b8ae7e70fbb53e167d9e6bc244171c7f170463664a30d0f1bbd65a1284c7960beef5f0b873f77ab8fdf945c8d15420bbb2ba20180397a4d090091e3fd3ad16b7397e9a8d2ddeeb4a72342a10f9625d387e176e1f5befa5b5260cbb7eb5e1d6d64f258893db13f67349075d73bf725bf9dbc7d26437942f716f2ad254696ec9175b87701b635651aafbf3e9cf6d83dad47b735635fbf9dd998b1fa5aa8f52414e1fb592a6faf78339471ae374f48af14869dd1a4f8988b6f6c5e3c3b0ed479fd6af9562293a8b5a795a94d242e5a488b417512a540e6ad5fdfd3a940a9513212a07b542a9503958de8e148b9b149b32199362dd0595835205e04707520c95d372431a6a49a1562428a4282d3a4831540e4c6f5f8269912a627945ae94cf415386e5d57577e13d07b13849719ab203a0c3f2ca442cafcc6379752caf1f8231f445aafc34ffdddd45eede028b5451a4e294147371faa51ae84e8a719a897c149cbed649b100042162c427099324bce3a020d40a95e37af1fcd00fc08f864169d2810e7f0e81604ce4db2f7e8c362d4c2e6724be8f45a2bb6ddcdd6d220f9534e18f32e6e466f4df4f639ca1349d529047c8ed9f54f88335f399ef06a7cc8a14ec3dde2529346d519b83447e8a2f629f840e1f8143a02470788e5b29075d83bff2d1cf88479af0ee363069b25b1a19f9485312698abbdb8c5e2523f4f62523b4a755204ac55f09220867d96e5e04b9e031fbbe12c48b148ca1da7716950bcf84a19ff2c109c3e5ef5a052e6230868e44294ebf7403dd472f4e5f38e92e3f3c0715902ff4c5f243a51cc9901ebe267d9b8419614ce10a6ca56e2c22d7ed7048e412b9442e914be4ca309615d80a6c85c94ad08a9395272bb19521c843eaa4178d2174cfdc8c056860867d1d471823238c91f68b40cb4a07b018e1948587d37fc066b9199d77cfa327b588a31f8d9ed442fa962a5554be4fbeb2425dde05c98834d127b948a4974e62142472b1b4a4697bfa2c43585c2c44a4497baa93e07488f43633e4e8497f63f424971fed1ba3273d69c3e0e247db6686dd5d063653beafc0567c87432cf363b11f8bf6b110912f7446ca294087cbbbf85c026ac0e849f80690be450328b8e1e25b5e032e9b6449780db8d8a4b91740c28f9e64f70d12f68874e349dfb2b3cc3ee4b63ae7b4d9731ae41a9739603e20eedc8231f4495f9e49b4e833253dbd2ac8c262ee5e5736673a2f37c369da4e957cd056caacfbede767c365976d199641d9f517b81c7ddeb3f8fae42cdb5a9dced26269759df2f551129cbe087f56c7676f6ee40bd5215fa80c02c2d0efd103071c769072c327f4a3bd9932946ea96da8469616c90563d88710ca64d884a12fdfea6418dd1bd476778105d1371e492e1fdde1500660b8c189aab892a6b9cd4f25669a12123d7ad2f708c817fa39e40b7d926bc2d01f7d70c2905e9cfe28a87444779616a79f61d224990449931369924fa429968726feae225f2694907616c2186967239c4149412cf29198af5ab1e048a63ee5137d19ce709f2b9d2da8e5157f4354bbbf91b2ab6ac274db739fe56638ad5f7e251fb4fcfaf1eb2f0cf1d8c5ede967c3a3b77df775191ebebd8c99b5aaabb67ed0f2ad0ac62a2bbeb8bb8c49e50b0eea6436a45b4fe8fcdbf79cc2d12a1f5eeb469a7448532ae3e4b799116f6c9ff36f30de0ffffc6c7c6d774f055e0bc6c86cf7acca3759474e651cf9228bd03f59836941b13da9c438fefceafd6c789d2f63d27cc3e557ddaa3eb904d31df2f018a13be489b14444e94747bbc997eb44e6fbdadbccc077db9a9598d0f4a72ce54077c8d392830644208504a4a000c8040699204d2f4d52f217ff224d333e11e456595d1410c6b89932d94b1cdeb358afabc76f3323c2bd6140017c18f0671bca04ddd03ed3369c01e3131a7ff63d1b9a3270867c4f47c7d26219946c288b124564eddeedc0e5771a45c78231328b653128d9501645bec8ace2cf63cdfa314a6fce4929a5b50a0909d97befbdf70a090909090909a9a0c2e9e76c3e8d9df5e7d3d4596bbc44949a949a949a949a949a949a949a949a949a949a949a28a1440f9258420928554a48b4fd2b47d70639a19dc01850acf0019fb35b6e851318333d179f71fec098f935355f4b64f8a28f583c7e1e958ad05d25a6b9bc97e6d25c9a4b73e11f6168cad4d48489af52a9c4e6a8253b2730263e0c27b40f4660bd46d8c1073caac45e3c8ec08231515389f148b52f1bb1a80bea2ad6600543a8ab920e4a3a40e2943aa54e2a3bed875245396d9d9f9c76feb57246596bad5bb52f43d669bf59e917e19c754efb906e2a23b4ae1f0c2f6723f318e31769ad914789cac91b7faf75d98f6a57b9cd71f56544be549e25f2512b1c235da251ab5999c89911b01537814320239c702654f5c403e31a6d78de279fcac0a00c8937c8d5e8d9771bd61f35cfdb9f3b0eacb1e7fdfdeccdc4ca922f13887ca93a9f5239f9f5eb32302a5ffbfa493573e2114b909f7d7ac327bc29d12755e4e25b1bcc8e43018d0b2de778b58fbaaa6ac25c7e3fca0867bca60e8fa6c6b88c1bb58a332e30463eac251ddd5d8236393fcb4b3f541e13aa1d9c312a3da1dd683ab4948693e9c018f23b84d1211aa5dee038034e1929b5ef3e1958b65ff6da975f72bb6741321d1853597cdbbda6aa0ef952ff7ed9976da743972656c173cedfe950d7e45b4d6a9f0d97d7d2214d35452682ee35082803a716a409694eb4279a0bc6882f612d88d07a3419bce8ca62b5f2fdb418fcf859ae45d1d1623f682d3665b420208c84b910d1a24793011ee25d57222cd9e2c1c2f836f28052a1722a5e226e70771c4ba0e9f71713a27df907a0d9ce11f94c7c498a9f65199e9148e42388f08f43a023563cc74d9f52549ab47db258a71444774f87dfe7f36b9e939b29f9a0b797290d7f66b7f623a1b49880fec0182e2e222f232b16e85e79b87c27eacfbcc9f8a5dca954a52d18c3c5297552f1d3eb943aa96219876764523973fde4e4e4434e63a058daa8b3ea88b2a256b352fa14b5e2281e2e43ce0fa5e266a89412ced9c2e5f26984b39bdc465b4408489781f19e83f213ce2905b4840f20a1a1938a475297bd77ae5c643c3046bac873b5ba46564774afacdb0aa2a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a767247b40fb3d70c061871d82f4daaa2a18e35ef9598691caae855845afad1b9952c9b3ac98664e9ea7d59467ba598c6be539bb4fe30cc8956ca0a5e6823173f69031e1f14b3eba57178f2cc819999c716555229fa00486307e6a10972f4b40aa0e8c71b98c2f6195498b0c9e18a8148e146739eb148d040000012315000030140c87c4428148308f352d8b0f14000b8b9846624e1909e35914c42808210a8031c00020006000046484b40201ea55c06543b0e0be64b0eaadaba9e8c9937bf8c8708c5746b3fe3e0523f8128960b950c0fe62d6a4b782225248879b80bf4b403e33e71442ff0b0f5c6099ff13724a5d186f1b0cafbcf7e8e052c6a7ecc4a02589b13d4347df46fe843e15ecbc0818c15a247497e944c85a9a7bbbea3cead0245253dd608b08e9577875d1826678a4f1fed46303a11620e56825c22052f142d250692ccadc3ac08c796edfda86977c1e0ce6549ee244657062761900fe8f0d478c03042f0903198136c117ee281137610ddab6e2c9acfb3c5b9ee40e34b2d50757c865baa096a727539e0205df4ca4f83c3b82e796f7cc45b1f0647f1be0949d4ed9019424e1c7c337dc30a07da5e3104cc661301b852d519d41b3c94a41c53fa52ce4ad84320d77fa6de301a87612d7eec68fcff220ad1d864baf807eec1478a96b9df16e6d52891401c7657c200488564e4b90bd2e51b69922017490df6d9aaa257c7aaae1431d55b3505e75f7c89f5fe08919fe961a41f87fd034f3f47116f79b487231c7bf0e967ca89cb9c686057544e84f858936940a78490ece0d13271bdfca4823c90626ce38f43f44f458118e1fd462764afa997fec2377284459ffd71f37208c4cfc39959fda3a69e0540f9b45c0df9650df8bc5b1d5f7b553459f1ac1d2442dadacefeb0afd35d17b54d5f82556c15d6297e6454da53fed5db4658554862c244d8766dc3e2bea6ed237c3d72087c532302a230890cb47fa59f0ed8c209e300272ab66cf92c93ede8197898dcf483a63b1c5c848c6484a51a51abe7b38c28ce025b84f3b32378ca7ed84e58de10b60d4a4c3d6b8d72691b9b3962ae3e592eeab9e2ec4343ddeddd18c92246b99889ba87b5edef8ad685570b68f0e14b805eabb7f9aa853e913c97e3e00d7b5d397d61bddd30cc76acd0622cc13648ad8a91c4098721019a8655f522391201114e06071e0d99232ed784d819142b11f2c32a54d79e158ebac64f6b9110579e5f80b97680beab8a685f9e35c02926a0087e94098df7c228a65b98d19fe9537111da90531649b7bb80044f45ef91ed97baa5c06a4056ae53ff3e65f6ac6014a84fd93e6125ae39c7fd6dc9a7432b6b0f557fd93d4650887ca1f2b35ace131655be593e2cafe53dda30da4e146d84c1a6a670404ccf90e090c5e666db29c4d1f0891d95f189ba3af6a77728d53f6f9a05d0805141e5633365cf30a86c9d9ccc6e86361af8aa69bfffcc35cb64b605ef88218dc9f35891a414f9936c8ac89062c8a2a5a408ab99d11b6aacedb23961c0f2d80617789ce976eb41ed1ecd6799df41a9782a3ff378faf5027051a3ff971fc0d3a35b85096e37f9167ffd87ae0f87dfcd988c89b843bd8fccfcd5a8812e6dd370417cfbb57d35885ae2a7eb38ac7497e13bd15ab5046f9ee4097faa03646753a090b8f1bfd85040b428cc221a3542697ca270a09ae40fa29094d0d712cb240694997be14b4993ba1574a5545d2d1b4ccf002b3e2a8b85e15f08b8d41639a997b33a3d361160b7b7c4b06dc7e4ef4845cef7dd02f7e1c493b4ad27030ac63117862f7fcdf0974527cad21a1160b3112608715284e98bb8e319715a7fd5a9c3956a2ce2e2cc4f04ba5e2cca0f85f1d19a37c68e0b14a2d54c0174370a93bd4b209ab8c2a227e63770584718529e243ace9b107f068d51c3a956a7c679fd4350849909c62d368426ce8d28f5fd8fc8db82e193708e6ccb5e9badc6478cba8ca342fade87666556c0abae05280e4d1bb3b961c12fae71775e7d7bcaca8fb7c57398065f80892c3ff2440a4b6c755bf2a2878772aab509845b1fdb4119df8c5e9f36fd28bd86fece1246c8674a012c0b04eceaba4404c5996f7fffa9b722279c7e268b2beb8f2f67837121d5e09ffa01f2fc5167a28a3ad2fe07777164f02b3e3cccbccc83a98a0edeffffec915a519468c17ec203233221b40d9399c1c3abbb4a593572fffb334a6da030c9dfb53a260e90540d4d836f38acb28fecad22c5faea6ebb2c541cbe3fd55aa75d19ccbe6f4f07e6ca6e2bfdbc5a0d14976ec695b4a00c66c3db28e6bf5ed89de112de7a79551797858e6de3b16318e1082b57f663c562c14fb7d552fa8120c2a571c94ef2596260df0f73075f2d4583210cf6557e8832bddb96332c68e8cb0be5eb6550a3ef3f4dda1101062f02c1f4409f874b038fd36f566de794a7d3a9006982e29536dbc20e29be4d705be497248b6f57335a6e8c8458ad32b42b2770d34b75801fde2afd328b46d78dfefaf4d2b80f776344632d007c6cb8c7240540f15992c8cd639d7badfba7ad955e5c4325ed12702b9c2a3ee9e042744e0a035a4a3804d0960243b7cafed2605d835baa61c909908f2806fe5b16641a016376b6d1115f74a138425f576fcc33a35bb6f3a1a58735799be5f3e9a6179230186fc2f7a4831c6c1b2ca522bb5ccad12893b219a604ef48001b9045e4b68f3ab9cc79a8babb3c31d2332a8b414e6f6cd9221b05d69b1d114f29a6cf6ba8c687289f03a9145c0b7196e5f9c6c1e0213183d440d30f5c543f92860c1be8477d440cf5ccb2989deb9dfbca926287ab12ac094ab26019f79ea8a107cd34305bc3e4f083ed1890b5fc53ac2ffcf1bc6627b92830883af561842be037adf3c22648555468fb44e53f6deb5931bbb2340b7083ea7542fc0a58e20116737273f70cc9342db04cf6ae1887255ce36712caa6732326de53d6bd507e654115ed3aad6dc635cd9446b930ef7d54e609dee9b0da19c32bcb1418e92e8136757e90afd60060e595207cbdf13c312bdeaef5d9d82ee7f8a70ca3d42b6ed11994d05c07def194a3aab0624e2b5bd490eb30da436a4b5ab447e600b2bf281b8e2ae04052108872dca98a9bf18030b66b073239da7614c3165cb014d0dc90bea1ce5d8a835370a0ea03d1a551b629318564bc44627b3779f7a8b8931a8f1f7a8f960b10cedebb83546df96ba1a04cdce8fa127035f0e083eecb923fd05e10a08b69cc50990e82bad324c2ea05e141bcc01614f9d09d21d59152624991d50c1e9e6f13119a83757c25a4f5f1974a316abbd734501366496c770c19ca5d8aa44c97202fae1caf980106d73573fcc04fae68a6f546a03d72e47a9dc332b8294c64d00c0d30b9c5a458f558a7e5c79e3720ea4fa7c70c971e303dc74e9cb0d0371f9f49a5e62d4c0ec11adb937c09976e3c92cb40450bd719ae60121939234d089548288547f80cd2c3233988919161003a9d0e242cd557d17703479c67934f024ba3d236766b8b7078b39cb3624825416386011dc46d31b49c8cdea33f540d750c35c02dc810aa2f1bdb15b510782e54b3c3e9c070c30246068af498016cc43423e835c6210ac5f1c6a791fddb0c9313a522ec400c55fc1f9d4668edc3dfcab1fa31f63eb962b5bfd4cb754408261b5262ea55360d7edcf90d05d16b8c8cda439a306e62f7351d9e02d1dc753cf5427b6d6a0a0b5992371767f79d1be356b93d9f42f74b0cb33fdf2f5253d4974ac27ce6af32380df4c24fe3ac9c05236dfa79770a9157fe3af106ba8dafc843929f2cb962af7f35dd33f845e036582bd3443afc415968af85937c3823b80f39c606c7c6233ce2f8a25f285df4d3bce031a733eb4a8f4337cce6640eb847815ae1b27bdc14a982fa57c60a1271a137cacab05ba53e2ebdccfdc6a6843abecfc6430808a8a33e097149330df10f056b1705a97ffc8d67f010e86f4976b0c003544d7d8e32955da570f77c36b546b7923578feb44e075afe9b87117e19bc54b882348c0c09ff0e827b1ff1ae52e1421c0b909a9c00d80647f9ef5f49b37eea43b81212db0f41a74bb6b90c9a9d4ea6d5f5c397aca8c5619a2810cada3c2dbf1ab79843962d8d2da3066563121ebe1941f1d69123ae3fa506419213ccd67d8690d4cad9c5431f20a79f8dc384459f93f02d682f5e70e10a625575f53adf4196307b37f268560c23cec9a294cb00518d998e2b505347805b7b35c4db8144f5ba95a3e2aec8854e9e64fc9e01d826b6ce20c84330590417bfe60a2c5806ea0b3211c4ff8de40c9a5875c442e3c6f290ce3a12dbeccc809e5b20e5552c34fd816be415c56d54bcebca2db31a1896a25db6bf9948758d2fa079c805d38a0268284a8cbe9120305776991976261d639e6237f7d1089e7f8a8e49d0922b1f715e05c7f5a5089709c1ba346896a5e15a5d06d1d076ed21c9f26c7b4e676fab72270a939b50f719a7d449bfcce4878ddd537c16cf5f0e82c3b80cf7a189744941e05ac02692b575aa7fdb12040cc5914691895d5cd36b0e2c5206c33d8f5b958827c0b7fd99a027b9c0c404ebee7f2608357ed24061ad7cb1911c55b4dd3c4f5a12ea0e6c2a70a013f9893cd5dec85370634574ec98418f317a7dd834e3340ae70aed3e8cec5b62556ece9898a10976a79ffb28539287e13f0c43e917a33063d3fed0c569698781224a4f3509f362518c9c0343a80863f2a46a926e416ac29998cafc9775c1e6c8db191640fd8169a54fc806b282d9f1434ec016a2b10e115dc4416cf86c82f41ff4e563a1431bf2e50ed0a19961f0b4709bc96d9313140f82d83ad507144caec3cf56b94f3fda60f2f41bd25d59b92eaa3b8de140407c82be6b36b6cf3169829d6ce61873913bbe166b90b7cdf207c4d743842b8ef411858049b2fee049c21a58c908afc9619d866e68c0f2a47de35afb585255f6698dc4447824517cca13e53d028c0df62a6166618b6e961fc4e41cfb9249d4c0b34401471e3376a0b480a3aec4152d921688d5d473efbc4c5c201d22679bc6a0366478a0f7b1f36405e35b2f4873a9b108a633309e23907f6648553f87f9945a33a0897d1a6f704764397bc5559d22a8224b2d334b0c31e6b4b0f713b5531db15c06b1bb4b88535099a52682012bdf81f18476db585acc2109f3f0edf1acf1af25be9e37fb340b7edf64bd1a183dadbb54c72d15d272a2aed017e3a69db3c5693f57f64b6233f9280a7914f18a9850ed9c840add41bc2b2f8faf68e89672729a18affaee5df94a0bda81997708a311576319a8dbdd1e89584f5272bd36625cf8b26c9a0fa5bfcc348f70b18bb2377a0d6d89676d7c5707e25470c9c3de0c13f4f730e1d35cb9307bb6bd4a6a6bda8f5152136aa1c41e2468b19d1033ca000f20ee9ab5f84a7d3853dd030185ddfb3b6e56d83ddb5869e0b95408a523bb7faa91325bbe86083a87b5b40c9c7b82ca82948f6d2a42f1cd555df05b3eeda583b48aa0e2ad3ea450184867334c7bd8c6c4d694fef079f7123a9567d6d25774d63b28a455f0cb5ce6049465cb4f3a5f6eedeaa5ef846634c708472fc25126f8dd4253117d6015170731ac1e3b8e4c1e79124b72259b17760566ba2025e69564192ee1ada111a04177b013f0c5381da8f8b31acc370c0ec0e129972db9416b2d09cc92881297c1ddc2ad925fcdd053ed87a58f8840d579c2cdd0f9c501382ba46236d2ed053635ca73b7c83c0a9267c2f249a7173c5b4811664a80be90bf71b17f49e75acb19daab4556a2060de4c91edb637a659a90200933dff7f194d619389c9e5fba90b798fe6d4935471eb3d2368153af2b4dcd5228046659a000f6b32978342f2171e3c97ec0a49a67fc95d770509418e3bbd8fd406883039836fa2cad72b378d84dbb15e616d83bdfb56eee15a6ca8529581ee0d1ebdcb1b5e4830c5eb95e92f6b428e81771e7d13fdf58fa42f86ee6d325589436836fde159cd541d0bb3536fd1140e7ed41ff3ac207005407ad8e8fec4efc28c19fd56e6170319e581c2e8b1166f3f12c0f7510dc560906d05ee9fdab1b6b7c76c8151e03d023f7170d4b1f03cc0b5637d76fb9d7dd9799efc280d9e8e5713c7fe69d658072ac5c60df03441ddf16ca7cacecc815045bcfc9e49f3fa2d2abe563f7c841c26192f6cfab812ebf35636a9080f2fabed5f28a562d048d10ffc70af00fc94c0397d1f8269c6a7bbf9e5804cee8f2204b43780e160561c27118909f376ba66feb7b6b5510ecb125875c831a5cb82664ba761ec8f36a953dd6ad22706dce3df57d4c2b3e56836c8226df8e673f39f0706f15274149d5c3e722a361d29e5bc7b58cd28375038955a10162264217ed4a621e5977dd1bf9561baeddebf56964536a61d67f1a2a64d372075267c9caae77e80f5a05b8ee8c4bff66e0096caf881af7232a8fe9b3c4aad3ee382fd804cf6dac8be692f6a2f5c06d6fbac5af52c30a7023bc79b16ba14cd131ffd20442b4a465b89b471862025f74b9d6e8b03f438bb86f802b031bb29cb6f064fb1a70c1374e5277206d62cfbcdcb832d5d8f916f46cba599b4831e3a80f5a31d582eedcb16b6ee7402638119cba5c4fe06cc9f99b0109946c9e69641640e6e8b0908d0ee6b8c388ffbc0c2a0868e51ef50a8f2719d1c456e813294863c9ad7c3ab9eb40db36c725b3e18367f93901f21f3212b1c624ed99c27b53c4c3b34b7c75def0da124ca7ff35ee526190d199b32e2c00ec6de001bb78ee14b00a3d5337a374ddcda46dea518ad2ecddb9423d4337bedf42bcf7353d7a20d1be1429c88bc5af16e0a0e90f7b3a4cabfc3e1655791d30b55cf9404eddde68ac541caded0a0f23434ffbf2ce8c9eae219412d038b54128358354cbf28173689d5734ce2e7ef71da650a66a09198e064f46ce6a526ca8b0df5a5b03700c8f258a63c9e24ba74f96b636b4319ebf56484b92582296df1abaa08256d1a41dcc586d2076677b1d28a1988c9245bb54a2cdfc8883bfc10874cc98ca1fa02b8aba8d5e8be8f357ed6da439737a18adb3227a50b8d1a7850f03ea224b3096b6c6d1279f70677788cc4f64d39a0b8a5eea4aa264f00b6a97116ac484ae94c3fdc16dd5430ab445f0e690f2ce9419e6ccee947398d4f364782dc59ea48014ec153b5ea63c9a794be79271d5afc2384eca12048d3b38f8c6cb17ed617fa414c16476e45196544d22b10631890944509f1025d1c5f878246ce2e3f33773d08233f7ee16fd0aa3d71bad30731f2eec445aa3ebadc04b5927f17abd2c9f8daa9b9e85ebaab07ee6c00294af572bcb703d307d9d01fa4c4b0e0683df6d913bfd1cece62296b6e82e38019e2c1f10ff3e7e5998c5ef094c6a5cc37618f0b173637ef64f361d23079224bd6349d868c0e823ee564c650fdfbbd0a367fee59eddfdeac38b244c8d0398ee1f18d1026d0a31a5169f6f9139493b3ec6427dff633270b11bcd28fb7ddd556471c0345ddb4a48c69d19aa21ce341b5e452b6686c05d68d8b8622c48c41241d5d509130122ac4250230ac2b8e54d105b33835dafe1253e752832ff7340bfb4bd3390f69221235ccce93a1a10cb7baae093731d0ad91dc882462345e620bc496f5255ffd015189f00e2d72b2182e4b20ad2cd82ff09f4a073696004c6a87ff6a7ef9864333f507cefb3a2060cce27f36815755818029816176825c552bd046145ccff9216d791a8df56655d730fa61f97452344181c3b05555fdd4d055f154d56f4155d72ddbfeacb13d554bd32860d954950f988994c11c37dcc5b33faa3e4e7081124655d9e15bf6923b562dae167d186442e8a90a5ba4bf5b43339cdca7aad9db3d5654f554c3cfc650c7e7aa50d11d6df27e508da6a7570f150d7722069bc43962d08c885720ef1867aa76988a387eb9b57db80900b15aad788a266fa37b84521da6be8a976afeb94192a933a50ceec7013dff47577be503dba4b5cc8a474a783bf9a9dbb1dfa0f965c6a9942fa4408c0cdfcdc898d471eaa2bd96ea588dd46fd21aabc9a051baa3eb987b912ad63aa6efd31855c3265bdc967f8517befa46c58bb065b21a55bd15e3cd7d902387b02e9510f87364d6030d0eb469682c95f9e000de083a8d31a69428f27bc2e45c04e436db7d83b85a4b4c6755b6e3b4bec7a005fd9e8e16f32cdce70a8f184ed33c248c0ff4e30306756488f6060001ba1cd098167ab9f47a1dd53afec73bb9b6580f9910f53abcf645768b079a88891e7900bc7d643ce9713a32a163ce4a9f3f724806435fb7acfd7b6ccee7f5e4359a67b55465d5101750e5375192db0779f60738fa278d5262ad3287bf25e459f4f272fae1f2e82dea80d54fa24608b74943fc07d1aff980d634f8630b2d59e7922dddebc63a77f0d7f4e2e33288702ec6badbe31454c7196d34b994f0a929e91e22934be93e30f20c755de4b7a12ac4eac63f45162e545e8c1eacdbc5140abbbb2db1e7c032d00875456bd344b6e7d15a41154a4ae15e5e28f90b96066f3fa1e196340c340f3091cfebbbfb74e3089f5860a710ec9681e435a6bec933012edc163ee8c4ccc251864e9f54b591d773d47c83583f63228b795b9f3c23c000a9a4967af194d94f92e50eff1b9816c6c4f097a8d2400b9e1f8b52b0597479982c9538747bf58e62a7fee7b176e9ce7ce0c01b971102a22baed72864f83674e8c82b40b98cb37538eba0ed3cf0f407c0739c0db564d23e3b4f2cee3f87f15b7414417e14f880cb51e4adb25eae67881b688b3c55ca1891fe8a7e1c024040c350f5939bd28f740d8315556e15ffffa85d98ed610c3430071b1675ed986df56121e365f422965863d7830c2e51b6dd1db36a83e3a54b09cac49271138b84522ba15a78af585e7956b4312365cc29459afec57257ed0911c03396b770ac599295785377f4a13f54dc582c40aa12f480f039e6d27fefc844a8aef55bc7726e6a1f0bcb278c77e3c4406b2464616e868c2cf562e383824b6511f954dd4bc4ae7fc73f1e7c76704337b64912e4877d2cc66eb8c6874e7b040e1f065b3cac1993c57849f0d0f94b9affe3d9de89695827797ec5ea53b80ff2ace5d48b71aadaa4ba7cdd952d0052308e57aaba85b1b3895c05a13ea0525d155dca09a68e001142cbfa104fc62b87d47a6ddaa76333442887a31c5ad8e4ed9a852cf8683c3ac3c64752bedd15327e5b4ab82952209306214033595c50d6e748b909eb4b8cb241fcc91a8d38f0bcd89ad216b5dff24a659d2904502a251e33865aea3a711343c9fa888ad9398e7daa524aa334843f08f650522f0801ba3a79761175d02262bcdcc6f8342eedafdf8b6a07d9941784ac2645a6fd5fd7da911bb2801988cb524b8383650c618ae3078180d4e88ee6c8c774032f5c46bb104133545a0ca32b488d98c6e741a7549670c8bc731aa144d3fc0d534cea046d4f77a6e11ebac404db1497189d60aa3091e7f461a8dcb9906999e3680b7f923c05cdc4c5436ca97413866c92855419c718e6af5f3b7d8715a28b1735a9e721c318df0170fb5ad49c60013cae3274fad8453618c216cf1416113dfeaf801c0e64ce3435395fa7ed89cc03f76c43b2f958906b62403e8658e7680967bd39a8cf4c6d6f601fe1fa3caf4eac4360ca521b30ff39a0fa52be916c98f8c878d9d02c5e060227227a35f7333372c83b85cd1d71bf17bafab193fbc70d8fedcfa97fecdba873475d977d946c71d57a639a1e98b11ee2a303ef9f4d5bb745e9cb088fe6ca10033f9ab01fba150e51720e59d71d4247c0e3c03349cc73b9c0fef5507f034014bc8c6c286fb600be9d0d28db62dbb91c59d77a1aa37f6ce5ea30cdaba0a997549fc77927b0336b1af18c1cc58b1ac04475830edf1ec3dd03f2573e3d815c9c9f50b6c88d0ce0684230ba817a251f8fab36238049a281a8fa574a1097e61f9d76cd97b8495a88ef48ac2a3748070f05746fb0c801d667d048006fedd20b6b0175b44cdb1e1667b615796e677b737c3b8a12935e5ce2a81a558f2943b2afab1e6925f26c11ab375ec0c6409d9056ef3a16519d3addc018a6e8a51ca5f774467d5dbd9b815693b2ef66e615e9d5bbae83909afd8710b7b93bbc449fa2dbdb99923769f4dbe80a86ca31d25d4272c53e550de8f1b0de2e961a39c0dfa67d588f895373ccf81bfbd58eeeade9588e3dcf88eb041c8d61204f5c6d93ae85464bc0cf48ede6b19e273cf0f5aa625991dd6685d6e38f57b412b4c046a4101a893d75599cb50f1925251f73bfadf37541d1f0e50f5a1f96651a47e3a65b5fb384c445a0c6d37b28d3488f500bd76cecd5021cafb490e5e750ca9afce6cd3255baf5e9385b2d546df878e2650718fffd9342a85b4839e5f4561028211818e21aa9d256b7a0d0c03805b7f5446325202c0a9da1d0c35c670a69c10263f92737998a4573788b3854ff33d018930ca18391b04b95acb64ee84e3dee4c683ceafcde699babc45644d31e6d65f064c0304abc3c72e057c86d045a32f6d7d6a88ab2bdc7537026b3213f351e4f5c087416ca35799c157fdff014b7739c98baf17086bfeba11343dae7821a4d35bac59e67901792f518edbbffc89f21fefdf8e25071921ea622dc71ffededefad9c0093a271baf23f7c22062012b29d44bced6018ae359f8b09c8c815f99067ba08a1600c851350633b5c30c90c9603e70818002b96c9f7808dc038f8a922da52e6a9312f89f260cc1372d728b3b4c76288d946797b7edddd4ea9dd0bf9c5e8f1214cef0e07c59605896a499a6ae7dc8449c43ae86c32aec7e4b5a7b0766f55343f62b4c4dfedb0c956bc6acb2fd66d8802bded133d356c7d1977349a8d6cb6c5d6fc62cb108617944c6ecdb0ba8a22a3246c0da1f9dec15987160d5d0d59e497d96f6153f41e3187d1f0b7b10e05798c90dfc4a76ede9d882b424835e9013b8363f92631e59021f7d1fa09c48719ce31737a45d88ca6d1345f68635cfdac7e6babadde16886c3ea0a1b97c8e589109cee1f445123b707ea972d53cdbc8928fb1b1298792f3fd08fbf71fd2dad47e45a65af25819700c3211be9fbb945206e50f2f64ccad1461a28b4599e7ec5de1468da67f08ef87e3b598447d7678869606eac57229f1c2a6486c9e6f63ed7cec14462f309ea66904ac823e22d1517d1d199ee2515ef0735348915cbb9d9653cbb6e82bab9f29d3834c92dfa967431e962a13118722673ff9d415bbb28546aae84369fd34de6b88fe906d583ad670257358cb3c57846d491e00cecffae442d5b2a292fd06693518aad04b09805982b564c75f22441a365203cc418869e10f3fcafb46a751b5b9be32820589af7be8ee0a035b074199848e6bd0765e60804e931b6b58cc29e7c9e8171c01067fd60aaae86484d173367907d373b7020f063e18a9435d515c62201ec9faab61b6608cb67429202206c60884060a057a918dac74804951d5db21e9c7a25b42ae6cea513024713ebba6600cd94d012dce839f201a4c018579e432add3a72f6c3daab743bad396039755284851100c67f175ab608d6bc52133a7aa70a4b0ecdec845499eb69c5ac0182584234861f90233c945e1d212a85f5102942e85af395f1b44c3f3fb4cdf8690b7a90ec050a7c3e832f3c9858214a07317a30e1ed3aed6452199909e39d4be7aaa362b46ed38253e07ec08462e2c4a8b580c4b7668c9bafcb38ef706f0049820fece89f6c5201eba6e15676348925dd1ca5d73cbb9e07d4b84b0a01ef352f1050c04d61171b93564d2e89ee0d23c308bc21c5868d1a4ea082d7122bbf2c89a10cd091647549cd07685249bf6aa75a9912106d703d686761da182e523e03351868220d829a059b1125976074bce44994beeb61360c64834be8e12bfa53c861969c88959d13c7e4ca96937859e8a3b61cd148c2dc591552c729b0331f871dbfaa0b3f18f11f2e40386b8cfefa58290070ffd8c4295cc83f34c902e309b6b7659832635bd8a1082281ae87ee13521adf007353b93a14f61c8464bc5eedae1820e4461dcffd861efed604d46af090182e854d6acd02995334c1a0062f9d353043e8a375eadb810b220d00fe688a78e7cfc14ffdc53de1b8913b7fc99ede285ddac229947174340ae7f1cbc7863f55e2bc5d0854e2b0c74ee770c44189488a9d4f6352d95f0d39b76e3cafacc16c1cf107a826d5172cc04d2c48503c04e04f0932721ffcc02ffbd317f5f18ae6fc6d881509a41c99c429482c195ab8c60a4dacdaec049c7591acc51cd5766aa54d056d5664274cc155b23120dd52c67c804d3dac995aa2465bdad527b65484785102ebc0533967b5cb6aa511885ab349802415c010ff0377f9af239518832da5526fd503513408b7aec94d38e5d4855010bf9dd897561c5fda6ae03e963e7830ba31188401b8ed021e52e2642ca1dade95109de359bcb90981893a8668c02a64f812f3422b961b94a237b4691331563e2886c28bb965d53b1d8ec9161ab30b89730c16f674157b0a8e6900efc74a1c2ffad5612dc609b37f6456aa804bf48ff7189ebc4e331ac8c507434086a19921ba880bdbae7cc0e1273d8594d51e2c56efaacb9a19ec405500bb997a9d0e54ad3ffe9ebf886beba220b6971a59aee4c3207e952928ff2f700465bd5871ec5be0b74b502bcdb9ae46d950a4ffb617c73bd683c77006f3ced31d2853b2976681244eb5b10ea6f267602260078de9c0c7faa549a1244752ff3500dec6b76db70e9a6101f37afd5d5a6e38cc851522fcacaf6bef5a5b91329151a53e6deb4ce0a04afdd57c57e80329622df6a0f1de1a30af5b1216960f1217133062c21c915d65818eb29b8a22d158e58a33c49150f0bbc0eab016941fe0a78bc2b42b66078e915f0c42d2848df4ba59b33be9cb01e080e5a18de6b8afa80d778347b5318ff1f5462f4d32300265482e977564c87df20a9d42da0c13cad8831ff79b83e1a9d824e6a54c6994d11232890d25364dd6dad8f8a84ab96ae4d39aee14217709bb34f53f15ac542daae9e7b420f1acc69deeb755e58c8423ccc7c864e6426f3868988d6ed6cc50173d0cb140823d2c7ecf539fda29a0ebea6efe9fc5a3365faee8fbf831e04312a95b82d1d6a736d25d5fcdb24efbcc453818d7cbd520137073319d4042731721d86c4afbc8be435709d42101ae140f31c2144c6f4f22b9c4c434c20f8dfa33059ec223fb5641c6487ac7b59c32fbb98d44e2fe947bf71d9eb77015e2fdf0159869f537cf48d27e2cfc29dfe91901520fd1d480eaa18d174aa94ed75e2a00e6d942ee3c7ad65ce7f720d0476667ea638446c14981b641855a4b37184457b295b8ff76f83c817086b9f4647213013991a092c114b8ac51b8cf423450f1a7feaaa6835e5812abb77d9e9992ad6ceecccc84f9629f0c8dbb43f9793650eb6661441b4583a50f72f335a41b8ca6d5a4205dfe25158f041ad43c55530230ff29f0bbb1971f25e77a22603a37e684a57c06f456a9f831c4a447d1a26751a8740ebbea243f205359b8321ed385b1b437ba6c96d07aee89e5b9b14eb065bd582ffcc3fc65497735393c1b8e5e74226e8f2efd665a24b5092ff0ddb2e9e6618d4c3abfa078544c1a5117443e67d75c0626908cc931cd2a9b1a64b01f8a9f32d645ccd6991309d9fb558fde828e08e609da8a2002fccd6c04e00e843e280c142398de66a578fd1510a2782764415009c5a010b005befeba1a01996083c606f1668808def002c8651df3e0d9ae2969fb76dae441a5403467bd2832d68478f984fec266c4fd644d054a84fb16ca0bfd8b3a8e7d938cfdb984bbd792889071b3931194588c5b1db856c3f24fab9f5c40ef770ddc936b8988c426ece2874b2ff244d61681acae53064115bf5f8e6183428482dc99d511c5a26db4231c462b95982b97402386d0c1825868c877f11fe48a21ec4418d4fef9499928597332102ef5ec61fcff87bfd9c880273146fbcce69e41fed6a99ebc9261043cb898c27687414cc6bf91b638429563478f6aac8d132b4c6dadf8eecf45a5a792dfdfcb1756ecd5c957acb02e9afcb477b5754ccd24cdcfb7b6ff57a10f433e26a367d25a7bf31adacb81ed2c65f1f56bbfe092414b128aafa1b0996a541681b371b2d2d9d287c15207089bb9643762c6ba92bd5af3c123bee18ba44f6247d28ff1de483f76166ce52b10f62c9ee1cddaaa415d313da251512c4346b3100e1c13e0774ec99285426b4fbb7a5274c3efa1c2b90abc1f0364d6c47c951a7bac5c9b02707595e063dfbc4b536db65a22f27591967d6cf11c6c2683e298dcecb2a48f789fa817a75fa621df97ef56ee1b09f1562ef588d54b8f76a24503c74fc74a8cfee83198233fae1ecc6e10e77b195c8b0478f84fe6555377a98c0e012c2eab142c33c08449eff484e9af84142b62e4901bb6348c55322370ace6c623742ee1ccfc8e246ba0119923fdcdc92088522efe08147a8be62ce0957d0f39446ce90ee902df3bbe32b6bc1846d2a1a747e1e9b5d41977dbf92f56c170dea3be2dd7199c629016d5cb0a8164c3ffbccd75200eb73ab1751a11316e99a5daaf7a787e79da81dd2c5627ca5f746d74139bbb810b0235e4c2a21d18ed97912653d354ed36afe8bf903eae3d46a01d47ac3193b2bb7c72d4755dd46c6253c804a38320714f0e7a48fba1d1dfc4f499679eb5d43c5be063065ea4442e0c112c8507c8c0027505d32ed37a20f31972dac2f78f927de2ab669447adec9e6d9813e86d0eab8c9add5d41bdc44a283702002b7c85473cd20afd52f34fde73265ec08a6bbcf0257c87f48e5a5e11f7429645aa558cd565842912011ce559561f1c700e2d7a84f803ca370681a52032eafaeb386151cfb5ab58f0939eba034844cb8975f09905109a799309e9bd9dbaec08efe8670ce563ecf8fa59107eb8f7fc313eed1f342b7f97e9fa361db571841356ef2a6edebcdc32d3d57f24fcf86f0d5e796e6dcb0c0b9da1520c48db93e2ef6ff431d44b852c54d9dac04ee8bb944451fd74764abd613d22e5c7f309f8fedf50ae0703f5a012adb75368829466d18ab21f4509bb1fac4b022c188db511ffcaf07bfb6f2a96918310d26637e9a07712732c7b9fd088f9d0943c40da5261fd4840c896d3f8a898864c8cfd4ccd4d8ee7ae463d9de3826f86dca99e35318e1d8e48fb9df4d975c298ff352bfbc7625477962b98c79a815f7a37edac7d573bc6f9c6cca765945acd90bdb7eb066c3f41bb1e52a7d985431c61c1c7ede224aa34044542413fa525fa67bc22210d3d57e6611ef9b7862351fafca23fce4652d2cce058cac58234132765fc3e870d70a49789302833345dee7d9fbe9af5ed22c676f295e98c8d06a1b69dd5821f5b58bf61c37e797591b0d170357997c226fa36eab137b98c5c65f5ab1ea18ea581ef48485a95aa44a6a91701d51403ab511ad949b7d4d2e88f76b078ea7c0e505a5dcb462786f50eda89b90b227da7ad09be98ed5d0bee920b972a8b0fb991dadc023dcb74e275ceaac99889f1984d601d6ab28174bee4f5b097be1808f45663ccb09e5e2cf1955902db34c9efe54e12342e956431481100a8dbdb2f89e341bcafa633f1bc3da4abe3969e1b74e0457b337e696e75921133fb0bd6ba45c4b7b32c30119ba6d0f67530654dc3d026296d403707721e95b8112c05263a03351ac69ff497062ea342533fa0085277409244eeb163db11a6e931b09ac6831421e2c76a76b8a60fb96c4dd2052e64406e06f30d69090f4fd85a3430666887d65a2afa8a03b888d0f6ca1f182881dbaf6062c90c9188c233665f8cd7c75e1904f71ff06560ddfea49447840eaab3bb952fe45660e05f78a559f9159ad5ea2aa1cabd0007ad8ad6973fe35a35d127518131ac9ce912933fad65545696724552d37bb4c35d55afb09585b3bc37c5d6e7960b0114cf1edf6d13d41b9b56741827978c6b980ae0370b1e4ed4821d84f2751da931cc05316a22507a8517806b9fadcaa31a11a1b982617a8137a4bd2441eb4c37a8ba9272e0ab7f31c426388af12d2ac3ffbcd5fd22d282eb5b100ecf7e1e8eb0ef8a257adf683fa2a7d3e38a8dacb931ac43e1953a70776adeeaca2e05825aa555d1381c3fe2312079ce93b09433ff7be9a107ec2a8dee6959e2cb006c83dd754b252e2ae23ad42e7f0df638db129cc91837b3047bb1ef3bba1436d64b25818fab7c00106b50f85b319e73283f60d6501e3e7cc9327e1114aff4ee3dc6789dd58e08390fa75cea1b81e7092f0b227d32a4a574e5f3da4a7c4bd41710f430a46a5c855d987dbb3d9f32b7bd30de8087422ae5b5486f6f318820bc530b10eb16cf01a06bb99c9a5abd6ef8840d787e9f046c5e6b5cd8b5fc4d7c10ffbd46cf838d8e415f891e8128afac16df381ed7173c422d97c0c698c58908de566b7554ab339391fbf31d26c71ec8f0bf147d0fa69b2c2834a8f366e46192817fa791384f56d6a543b9eaf671122591c6801cfa412c9247886c8481fc73732f9cd6f38f2e6565ba18d701c8b5630538e764030690a960436aba51b25eb77585fdb1a8d2e2af556efed32aeea82b1e0eaf0441a693bfc3c1735b9cd58aa53166b78e213f10e27c2674b7a63e47927b211b8f85b1688fd78fdce049afd323b42cd7570d280a82ea3e4ca18ba757890b6926286f4cc3aadfa29028734d93e4c930764d682f54f652ddcc770a3e70157af47cd21444b47b9647c8271079197377609d3f87e38b66cd99c25b403fb441077901db1e1862dcb0c4604715eefb4933a8a73d9e96a6250f807761bddc39a95d10c897404114b6f4f1372a12fb420f92542fd85aa087156d34e6013cc9042ec64ddd0d1ef6ab71c77525c1323397249363184a685b3c4dd43a14b3b1741ea40b474a4f5c78de31695703ca8329475a4759c7585f2c12cac73d72f5d276f07fba341b82cce633ca29608046ab18709ee36026ba4bd6b9359dc6100e487043dfeb4ab670cebac66853b3c99d4e1a8e00e196eb4056679150922d1093bee97bca4447087cfc63651e8c7c01d9e56554f2ec3a107879a9b2beb6ec97fe122a59efe457a4bbcedc1a1664eca2c23676d1bb7c8ed90e3821beb10ca0e3a34944d7141d8f9a922014808ff6d68d84f21467758113bfadce13eb8b013216879fab41f238ea473ec5e5d073c0e1b514a0d532445f9af43170253637e1d6aed3eb199273fae20c8ee7538baf680c85464b3f68707d27344d43c9a0a8ab53d6727ee96383c21e015481a516fc3ea6e0d7fdb97f0f5158aff07a95cd021ae8a63eb8288107438cc4b193e5c2a54d6b581d0e13c5dcd16b7e41cd6ad2386248d4b40bb0d660e0288aa4b6241466cde1c86e4f00068b2f1442a58e634d76b53137dee71534c570564944a71987bb806ea69179c9781ec32b72dddced05b607c4c0277396ca1a043e0150dc486059a68e5cb6ab8882d41e49d35b2766f7d46b601a103c34c1fbd601c8090f82f9e3d92aa73051e948ddb6b5eea89e7001e74e0a5a2a81a4788051e82968e0c106e4b2cf31613609e048be480f73a00415bcea6e1056ca3494c2dec63d802f54df7b1b1fb18117a37c9cde522c5717f121d62b850ec1e5849225ab127bdd452fb52bb9fe918f4093a76c17f3e1c913173f44dd53783984ca5eb320faa0ebe89e3197834038528b7a57c987b4fc5d9e699f06aaecbaa9bad6627f314adc52f488fdc702b44dea5ef7143d1de6af89561a2fd56d6e3968393c7207aad3144e97a7bb75389b166c65260652d217a1b0aed908ea2a2202deab17ad31fb70d5191845c4f64b24de304938c86b41413abe58bfd13a6831ef7a0a3df9166cd798be188757575fddd108f9e473cd1d72ae4215e6735f5fc1a9f1a024fd0b395ff07b9eeecd5c01860cbca7abb64b69f078cf054e8c8236d56e45e38efa609acd97d88517a98eb6b882b71cec6de9a06da5bfa03120fcf125533a3156cbbf00fbd4002becb15c590587dafd87555aca4752b450c52db88092a3829dc804c25cda8f0dbb992d4ec002042796625c431b0f5d4c8481b09dcd850664c22d67d7348fc457c9e244fa47418041646e2403cb60c663b8a14c0daed86383d363f814d3f3531bd21333b3f1630d5da90acc9876b15c5768631741c30b1f784fc5448db524217fba82a9040802d0085a5bdc25fc8cb89565995bd61ba20c2b7ebdca122349da1ca103b04f33f10b0c53cd21714e1db17a8c7f5552e1e569dc19f7f70b1f6ebf9e7388ca03baa153b02fda912ea475f6242b5f9d3d3f9c61c840d80b06a68572716e2e9b904a2ba7d998121ec87681b853ce68732c2abe8cfbad59ea8035659ab6838fc044605cead7df42d5f624cccc45f2b76ca9008f917afb266c4061b5d9510ea8ca5636d52d3cb26d293406b6989276bc89b41f077adc02d35343fd8c8143843da01b4beef44825a318fe4d60f1c58c77deb66ee33705cd6569ab6040fcc3b5ab4bff7fde79ba6dcbf963ed551a547bdc11cac272017963b75c32d8bca6e7a472fa060d9e6e7ce3ef24e6a3b4d5dd1391da6c26a9dd42153df853cb8e1048d41da06eeac333eb9d4be0d4a9dfe642cfa4bec47a973e5463b5c75eb36f5e888382fa586d541dd4dde63940f109c521b8cb9c1d774c6eba56bb641a56eb5dff596a9497dcf449754af2d143b94d7fdd311983c38172cd81956db31f7469b7a61d29d4abb69552e4c598e468ca74f2e777485e99408f25d5b42e8efa2bb7f53d32a63f64f01142c9585c794aa2112e3efca266712ac5deaea50e0c81c616719276aa817c841aba170c46f6524931dc5cafa9922daed2b0a8a29c78334e96bbad10a03f9df24c5759e67c34153cf9befd3f45466577a0b2f59554cec121fbee8253ce6e36b1373083e146542f9b05617417d1c86cc0d0ba8d67b9d79ab5d76f6c5a43d1846d1e5e98660a584de8f8c114a098e4696a34326bbc91f42ba17c502a45786b957fbf91efcf6458e7449f58c13e717b0298f7ae9047ac9925560e0ff5fb70ba802a9a443c53295aae28eda9b70d0c0ddf368051c4dfb0c36bac94d13fb78fdc823d5e035655447d4a8b6e390ab569ad6a34c16fe532bce01bcfd25dd7e18514196c3d35d1dd4e8d790afe853157c71c9a3e3fdd2bf1abfb24bf29dffbb14b129b125a467e0761203a2cbadf09fd5e7d8958af3f37d67e18b47cf3d4856c95c6961fbadfd8b1d5ab2526e0290ea9cb8532b6f5f4b14c50be94384d057b9a04093b297fac4150441a0dadc5fd869a1ef89d88b4ab9b1fc54b61ba4cecf7cf08c9093149cb3eb1fc3cf3243759c5291d1b0f9b4820ea8260d90d00ef83e9d64e3f36b4759b34a7eea00ab073cf87cc77a645ef57ce65084da4636a9d32374a489251df4c11cc03e576369479ddcd117593e11ef3179b40c2c99042a36b965873325cde102882c0bd35e3ddb99c1f637e0481c1614f4c2908acde551fccad4d9e321e506fd771b273740b898e2a7a31cf04f5dce4359a61576c470214524161015ac39ce0546794151d0ab7d4755bc0758edc9382803fecae112214597c51ef0cfb24ac5925bd7fce1949c414de281a59be0204949b134fe8da52b4ab2341c95a577c92cddf168d43d596e3e4d3e64afe7d72aa62021026f3b5b11974eb02f0ccd7aad2e9ebb75282012adc5c42312364ff26c35b56a723b6258d51413f83b51c17b5198a95aff8f656ff1f2adf99f1fcd68baa492ada967b7cb032e3302a70895ddd6ac93b8138ced9c6bdd73e814db971ce6b8d79a16e90ca439604985bbb527bbdd4a6ba252a6dce8ae30bf1b85c2cf62705ba24a04e1ac720d5cb96133b36e848553d19be80f3e247aaaabf1ee0003aeef4afd005c1123d325683f13edf31ad7baec44436c3220326214d58b81c1273e8b8195181f5f905fdf4214017bb12be02db08c817ce70a857e88283182bc0bac13600772e7409fc7c160eb474fcbe325e41cd1afa6b3ee2c633873722cbc6dfdb88e8f37fe991cf53b52ca908d3ff0405275e3e6e8204b1918d87dbe7c70c63891f58cf768a78db25bd252078825ad09a76d74e9f2d6e9ddc2981b6386ef311700221c77eefeb8b526b1f5824b95ea1a73c3d769d8980bc4355a8096431dcf84b48e25739f580f22dbb33b56b9839cbdaa785d9c1d324a6c661d0f2ed766553b6ebea54d899fc7e304cdacd2e55f0972a48d77fb8d1d47d13dde5bfa86b6c1b381b7ad9de41219bf3088cafba14a453e4ec45a9c07a939227a15d32939b9cd2dcee75b9552123d0b8081f3a9eb4e79cab1d2817b989ed6b43cedd8bb959ce951eec8c80d69ae024e0b88a773772d4777ce63e537c9635c7028fb2d9b80942012cd357a6aaaec87bc2f961a48ccf8273cab10bc5e276b08927fbb3b5130b74933a90d6f619b4b3487b01eacad2f118c5431fd4439de48090cdcb2a0bb9a72130dea7f3e73708c7aa92d6e76d994e820c39fe3dd736d87db7a746e52d85cc6c1556245d7cda4a11fad87a32a6b90d18c3aec289c27c156aa5d71bcaa5e0bb7828cae8408b4bfb66cbdbea920420a052ad53849accbe9be85daade041ea34f55a858fe4e9ea68071befd4d80657f227a8af0d7ca49ea46ecb849b4afa8e130acf026e7b7c8fa3fe47f764be7709c3bc55750cabfbb9742c2b551a069168566d8ace44371a885fdd54e4858d7958c045bc64c6889791b9e069dc1eede94dbd85d0565a04428de4f23538358c9a7602859930f68b9b4363cd7f8868bd5a916f1bf451bcba4c1d3786c876561af18621cd4dc053a3ce3d60e02ca6f45fde5951d51188fe8bec0e8003fcd506fc32e7853b2d1fb71e7070a3e3fa140e5844d9b3ad22a21ac2c547d358e7bb452d7c8e7555418ac0e3bdb9f3622bc63e57337a9e21af258420395202178703231593c1da7c8be49cb8e38a7ed459b94bb7a3d8f78308de22fd3394cd2862a277328888f932a4a725a95dcd6cb7ffa546dd4d548bd980bec97e9e934674971c0370534078d0b144194744aae16720e91a31324375385256801e6a48a0c9f59e5de52005185af83b25c5aa58f1d630175277fc5c41a1b294b3b972d701964fc66604d3437a5019183f0359b897ea459e72244ac705491a4d1ba114501e87af32ed2a3b8b3cb126de9df5d29358a437e5b4b0a85bdcc8b4734f5fc3126c87b2090a61de97dc148d40c0231998967730b42fe62f348e04a1d45ee1f1397e75a8a151d2331f61c204c6addbe0156a22858706b43c6c45cfc7716b46fae6759c4eeb14ddea99b629dcb26c04758bb57dc04da88d03d37b60e90fc5f3600b677a0bd41dba3514289015c1f12e3d02025a69edeb7790ea91323123ccf918ce0f908ada4aae631f7646bfd967ef4755a2d4195a1e55e5caa64a702dc97b991ebac2a32273215b368d109fe40cbc1b8dd7e5af8ede634a96dc7bfac22d6a6e92c971fd79819a74367c37259cdf607a78982edf1b4ce0f3b58b9b7e792c29fc6bf837e927a6432d75ba021b2248278cb774f663e2301b69318e6e05d043e023c4e0a1f5b1be0ccda622bdc531419ca48d76f0eda6f780e0c81894d21156e11ce19c4f36a42c5ad6581482458770a55fb2a1861380ae7db304a82ef53853edc284562a843b17d49da7eb48b3aa5b8e435a0b571d6b3ae6ec17a01a04945778bdc0be2f4a1345a5f89258f98ae21336a46034cf04dfbdea5aae17220d408a3a9319703827378830210a6bfe2f2b93ba3e0e1e6b5ed13a8559fd3696c7c5cdf02b2238975ceceb29c6b28233ce25d271198a4a70ee741da4b4630f24397c044a2e5f97a04c04df40a3c3847e8439ac1d2353b2c85abd3e7dc2d5090d58b2ddc5adfc0e481824f3a71db42c0d42ce597cf602478a59fd95c2200bc66507a092637f51cae5501d2b5f44d8b209881e74a3a69cdb4fac34e73ea22e788c8e54eaa90bb9646164d2721dbd315950aaac391cd383ea55714f64962a9d030cfba07641e72f6fe69d5d54ba59606e7a07f4623fb1ad0a95c3d25debc1cd2f41a82d85b1f9f98a66211a70d336ba9dc2340752e03e52be9515780bc8712e64f4fecf69b712869ce4468df67e01fb65937300f592a9bfeda4aaa208ed0141aeaedd072bf737c1a8f12396dc0cd040470f56e384c8262157f2811a68265881a916ee85a712f40b54864d54b4e055260a81b5bc4970078b26ee65603ce85492e70fa3e294cb1f0d6da95080922683689f2e84da028781f798fa1f5ec862a0097c27ef952c01f290ab21ebcb4b3a312ef967ee236cd20ec16dda767447ff7a94b7142f3261b78c0d84047092ae49bc1e95190fae8d519064ad987f621b8f3584531d4ad9727f275a255b597b8d1ff532121bdac9558468508386cd5200e89afb8140ed0cb65687f2e989a91451e37262d08337d2b2e39d37ba1c39a29d1665902d9407ad6132f9bdca2d5af6e81b4d95a47863e364f9127470bb2786b70d4b5f461510757371ef20d3b02baecd153421a86c66a359f0e72b76d74dc83c63e337f04708b44b4a733d575bfc41966af3406d71defe4a00907302f8280c9bd056105d346e16031f0c7cb0b443003eb015c469dcdb1d89cb4ee8d3279354b748754695986899e4fb45e587289f82bd956d63e5948692539e366c99544d13234dc32f26fdb475b5c595b14cc10d283ba694ba96a96b02c00b8445307267768d294f0f5a26dab364e0bc71d11a2c01e785029902b7aab47abbd5cd7dcd98d2155ecdbe063a762e2cb3a28c27b1503f47cc7ccf85e8ff0f695ebf68f8e0727350b24efc66975229d80cc59f0f69d173aa343d73942994afabd3433d77e05a8ccaee8e096ed5031ac3b1734279a0b6592859d41744bc6e21f9bcc0d39c267bd2e424d9cec1f03386ea38c499c5225c6289e5836085a2b7c6074373d5f35783fa8df9e7b0a5f4cf6059aac04d779193102f56c07a6a6eef15bef7b197ea7f6ddf3d6d2abdde15fc5ba12b443d1183b172bf01b8dafe3b8e6750fe66a145249f38459e01a790c784c3e5fd401fd08217450579ab1566615da05282824bb3c349d4f9c6d5697599366c5a9d1294d90bb541d5aa105b36cecb476f9528c9625e9ca402caada370f4ec1844ae59b0ae50db2e7ed3e376a10422e0dae185a23d53eab019dba9f5f02304b6c57809f2d0de56f18c05edd8d8b92bae628fff2f506afb29dded3b0a9bb74fb27ec30440fce7772ae0200a709850102087ac4d3461db2c4bcdc43a2cbee08306e8dfb82b54364de16da543a2df4129bd0b65dd31d4f0e620f4ad60f3433d1cfaf814a872f97ec941f569b911c9aa10f0f2c7b74b5e4dca2f87d2264055d34548f95a0d16e28e2c3a4693845f3e2f806940fb23c99a4d75c40f9641bb7f7df6b2c7690a71a8a1267d7202eb4b2245740dc0c79ddd7304df68c3d4149465e0436e3c8310e0cb09382a84aa46b0ff656a34038087224d31f37b661e1f68aaf0560d93740380ba871e2fc166320db3bb2e76150c487e0a923b722c13bda94a95dd0b3e682712feeab11f9162f2a612908c18ecd7d0117d4fcc567d3a2427767a61fe2d37ff123b789b8552ef850f8d0865ad02681613c20336b3e637f17a7e2dfe7aaae07bedce437fac3b86b89d9ecd21905fb691dd6d43574947fa7f4c3f1cb8d146805f55ed2dd651d478e748d2251548aac067b3d561a1ae6aa7168e50376cdadbc940905abc556c43566ad1cbcc12b88a3ef3740953c795ed283936e3374e9295bfcba37c56cd54c1b2f813af14cf5f359afb14b8a984fb5101b39111bbb362f2ad5e4f1f96a4ed03721b110903c8f101ea11705c526f07de0cf74a9b598021afe9f52809289243fd615c23a3899508558f838110a19f0a96699ba00df4929796ac7fd2b93e15296b0ce7198c7a4b2381fe88c9ce4c6420811905cbb7dfaa315604c7ba676394a32cf3f2016c696dc282cfa1899e6531c2ba657be04d6973f3289a9f1383223b993122e216a375f32a3e7d54c349819a506fc397f89e17e6c04d2f3b5ad6a0df09fdd78eae97d28b711e3836179212fedb36e8e07e513ac927c64a1bb95c0cbf2eb44e1f97f96a94232157efa31c5e39dccfb5c0b8e17ef121d31d5c0f68a14ee70a5054c28ca388068190bc1a5168a70b398263426c3b6119efdad032fe7b7e1f8cf16a39d177ffbafbd0584b956305655fa1c23fd6e6e539be0711c189a46c95cb95a4e84ffa8c25a94e4b254a297d686665662f0c76ab14a157dbe7cf99b7d54e106c67a6e4e9c7d7b126eda0b80a864ef01984fcd54c0c0278c421e5b12da00e6c5d8748a84d3e2a273c299836435123cbb21296015ff70ed3fba09561798dd1a9bbf3983d86ed9027f72bf698671395ab3b76275a4776a5956635d50b55241085c84e833b46dfe5237ef264dfd6b13363c64d1d712b32a14d6f024b24c666bcf12bd7ccf58398fc310da4a51ecb74e7af8524baa719f6c5aea1344617caa8da9614a0b2bc5990a108bb8d99884813c686bc40e40435fc3fcbe3bcbb1a4501e8ce3949c7bb35af658c6ba5342c88c6b85617abbc98c99a878b5503f8443b9fc035adde5ecf6e5d7e9954e41329aa840baa78cdde746447b2cbe3dcd029ae917874a792c836796f6bbbedc40196d7b0731e4fddb7cf3388c998391ed7c2e44192c3ca79b21aa47799cb4f7ca862d78af704a58eadf73bb757ddea7353d54dbf1b2a6ee3042f3a6469d4b31a2bc529559b70e75a09fe6f7c825d197d481258c3288757f32f590e5bf38de6540c1b37d750fb526f65956c4d4cc8c53aee76b7ee9e13bc803381a99633ba56d9f358befe913c341d9156292dcd25916dc02cfe301afc793a63b16a1fa39e4af620784657b2134bb7fdd2e6a0d963ef7af5ba986da1a1ce2219e9a7ba8d6050281aef47536d0fed725d6761b1d7fc92b1c051bc09226f2f2ad6a660e2bd5f280026199dae4e41212d53159441fa9ced434cf210743f49f79328753d639fc059aab807271910036b89153f3e3cac7fdb8c0eabe68ec7e54012e42e61a55b3b78b496684f6a32088fdbdc1319e1553580ad5816283114f13785ad73c5712547623540137b8cdbcc596071cea142aad8505c470f89e17c01e3117094f25d95c204348569d2a6f64edf76a0ecd8ffa75f7362f67cfd613847db4d254898f93a18f1aaaad00572dc7fe7ca9c8ab869c4de71e851a17daedeefcf9222522dfbf0174f5dba9173efe680b30cb197cb4ce16357ca76d72f51a4ca5727eea860ba3d3798719b34aa2a631e7d61560d098bc44d2280e8401ebb97d760cff970253ca954f8c373a04b991d4f3ab59b83731afea323e5242b912fe82051c2dbb669e84f6479555e29471f4c29c90d1284415f4fb7a0888133826d9c269c4134a1c41c5e04256c9e196d0bfb36403da7602e83639fc076de9246dfdb52c563a99cfd4f6f262aa524b7b589f9939a622bf94e36a12dba3179a09b2af8f35be3474fade0268204290cb37238218111149187a649d6354343016e036c60b176b018acfe3e916a6522f6f66440a00d4c581699a1097184a66b091dffef012b51d17989c9deb17ef854a35d4f6a10263c0699162a252a6ebe4fd1153ffd06020ddc17174cdc010f160af0050add8e06850d8290b7cb4f7397ae80ef13aaeac5c1b09f2c046985520d99566857e26a7878d2c0326aa50af36074cd6bae1b8c1d39fc4de89418c7150319c9053f7c80a09172d9716de30ba280a448784854cca01b863f11d5e616be4a9ca80972853f87cbf05ec841c1091f7dde0c2f68084b7557f2a2c67ba00b2e8047cc0e6358ee6c0d1912a1150e7d8f4f5b1c59d4acd28748988dca5ad40f67373322d1d597cbab4828e82ec4bd8ab6e9b408976f046f5ae0ea7fc270eb98352c77dd517cf4ad5d6c36a2a533b7d87cd0240dbc9c644f4d55357af072a8ec3b6baa1b526996eaa36b0c682159702395fef6f20d1e167cd282127c5cd6c1d038f078cca8304b651d1cbfd9b845c1a52f0dbf2ddc72340940e5d733f91a5db04d6919fbf30944707517d06585a8b6803d87ca4ff6f25021ef6ec40f18b5dd10b0261364e385a6c33533fd1d6498a7cdb2aab52946e97fb80f830a70fb38a715192bc748b3f7c6ecb450aac6b0bf3974b974a8ca15fa426a9c3891f667308dddfd6fe3b3cbd44eade08ec2fdab4b5cf6a4bcd317ed04520631c71a4f3426170efe77fa4207031d9378d87cb2e4fa1b73f8d3baab605ef704261070957c90d3727c748d1b8f483d6f7ea50eb69d11283b686a12dc45f151a6e6e84a9d36008528b6e97683a2536a1ec0a9ef58626216e08364553816f4f5f2bc12a1c1acefbf6c08407f3d977b54f6fa7a7bf023293ecf92822e539853b56da43718587d7b3d32f2dd62ddf4eaa53cd505fedd05251354106857361d00bec401bec401bec401bec4097c89e344af5e7100b4c6a3a5ea419482b42d25eb9672b32edd4892dd424817d609b9565c89ea245253976b18a61194c556b13794e4e42071e1350d2318d484ec9d02de150f12e811284520028617d4769a73c2ae4c6004406814303c111a8087638c4619638c31c618e30a9d9200027a8c402683e6dc03954e0004dd853f4620805b4ca724709a41ce0f3c3a4544153e5820f26e19141d08004248f7d20e72a0940526343783259c9440d5a4516e5861830d94c1a8512a3180c02b06b54679820b2749c63046ab84609141b818a31b4576590b24dd5921c83b12041fdd66a8a2c988215548b94e0f9c9082311ac5870dbe27405ad0a9297000c66d21d31c15313f6a5417f4892807001882498aee868418a8413846ab70026e30e466eb930f7cb6383521f5e9e8a8a643094c5a650108fc50822d0cd15d163841a832e8d028048880079a8632d0285a38e2022e6881750fa1036560800d0cb40a470e01cc7882054e9d51503e138af3686f722888150d3bdd6134c11a25446954a382708df2849b29170ea56970291bb8195c0a0eaa479f2080da01a54b4949a14e1cd737745e77cd09810a826b941fa9a6a1e29ae3b8546a47c7d235c771a72e88e350b88ee34e2a261dd771289d0d481ca7e250bae36478a74ea58a59710ed57528271c8ae3ba15ee0b1da7d2290ed59d9ee394741cd7a52875383aae53a13ace0a1dc7a93a4e08ee068e3b752933489d50667036701cc7753eba1a29270e035cc7a93a8eeb4e2fae43ada8ece85a3821295caa8753100ea5eb5037a795aee36468e8700340ddb0009d8eba4675d7010e758a41a53aeed4a908704ee0baebd56ad55c7328aee3b2c0a5743a38ae4b75dd89e372b81a2e856be9baae53f57039ba0ed57136278fe546ca0f9c0c1a70e826c0a5ba1b1c8a3b71dd1d75bec2a1baa3aa7618a78053bfcc80eb2136e84e9c8a43a17032b853145d97c23a713b27aeeb50deb5a8c470298e43b141ddf060c3752baa948ee3380e85e3585cd721e1a4e2543ad4a9c6c17423c79d683815968e4b41e1ba21dd0edd0e9d0ea73e35478353751d2703b53aa1ba1b5dd7712a0e25e3547ae058521d97e266f4e0388ee3707442282c2a1d174b6941e93821b8148e3b751c8a0be274e87c7439742c1d4a97e24e5cc7751c8bd3a163e95050dc2975e2b81edc898be154b8168ee37e703b742b27142e05c5751cc7e238950d5d0d1caae35228ce47c7c29dba1db8d3a9eb501d8af3d1751c0edd0aa7c2a5a03a8ee3589c0edd0aca8943a5a0388eebe19c0d1d29404e40a4b813a7c2a16c702a2a2c962270ecc00500c5759daa43796e55c3862588e33aaee3388ea6515a6c2296e0c218220bed436c008c2e867881c2158e48278840a9095fb4ebe5089db4811f7c92f441236d400b0c20bd58232136a0248c23b963c8d00676e84290ccc1c6c7066cd4f89033ace8d104193df47859e1749ac099410736460674fc0cedc1c8b0030d8c8a6ee60b0fd819b7d101c493192df000f3161efc061afa09008c6858aa01ed2827ba4fdddd37f5c197cd2f717cedc8b25277db7cb5451fda247c3d99e57ca99aacf8a0832614151415d48c141d1495930e2d2e268a605262542b293ba8161a1caa45f542d94e324e2e282f9ca840936a4687a2829a91a1c38e089a568cb44cd4cc0c26ba1d38524a284e0544064d41867c5c9ce8502ba82199303449a1091d5d30c1a5582e3c0c61a243e170a211b91721292086d0a452f170d4a4060d1e029c88305180a61b2a475a6a68a98109500d3105af80a1094856210273c00a45e52423b584324002984841cd50e9c0d1c861620a1c50d141842629624c6046c7921ae282e20355e48bc0a20900a4625680567e502541e940f1d1c40a3640a4892a1860c3caa6898c6fe8003468621965167042060e0dce480ea71f283774985841f1a15a499971ea2144e4a4c30a10189a5650846424a504e1f8015a51096a499a4056d074036a466745c502800cd50acb0fcc111e685a4909da218680a6d46995e25442a856523f543a84f0b08c2a395282542b283764f8a8f4802a52b9a1861c7ec0c1061d29401441fa818995140f2547464e0fa1239416140a0e29d64947a50595c387a0a8a0aca06a5245503b43b8148ed34bca061b9594efe4e3e7878d94151b547a30d153c4b2232506d503aa0755154d3a66a07c5240a47650e90195038d9b930e4d347935dc4976a2419d52038039e2012fb0750422e8620b2c4650c5140758220926bc24fb0f764412229018514a3a1a1240106b2727e6071f02e0281bd4600c2d5c610a4108f10106871b284f78b0830f7840889f20583ad4686151d1400b1684808a0f4c21c5069e60402926478d67810ab892c6288317624468210b30785917073080ca84fc5841a1a2014e7aa818c10b1050c1f2a173430d2c2b292839e050410a92fc342a128010d04f0616608002d0f0050f178c4004552c71c4480f1d1b35a07ed045178c0809a2a382a222c1132c28010724f000040c400319c800038c8a84fcc8d1c291e134864e0c54189e850e0cd414ba26a4bee08ed015a12382ca105a84d0fda0f341a7454782d308ba259412ae078e87141d5239c8b8d1ddd0d5e06a7001408a86ce855ba166742ca9954e2525a54341497528eec471aa9641e384e3f4822694029a50432a1dcea17c818995079a52a916941f8ec0046a0337a81b5aa6b042758026d4908a0d2b39d870a24965081411a71d58b2aa2505286547b572fa616325a583a6942c9a6a48c2844a8f1306b8d0c284a6d4184da9161c88d0d492615ed0a462634687f223559382001435586e4ca00954029a68bcd07839d1b8d4a4d87019a3891410293b28404e344e4052a6683a11ddd4a8565457349d585438a066586e4e1caa0535b3029402026508150eaa159592961a5a6a50b1a16203ca10273334a1c2e1844513292e9a7c50820afde5830e28560b0d950b8a3bd19c7a50472d37a83a94232838508a523566702a96530ad5723a9dba13ca29e5a4b29203ea84a28442038da3151714150a774241ed40d5a0b8941b271c4ca8f090b2a269c6154cb8a85038527c9a4031a1099897f71867988211bcf8411738e0629c2535c0c90f4f10417ad8aa852cd4e458d14841298208a3a2317a200420f0c0009b282630a4024c28820f6e0003158ce00335de0f12183303f0fdc216c248c210845003142ca1c4114988406254440488871d6eb0418b162c3102112891c44b871c6ce561061396b0246c1ae30c61004392226eb0c1a50837b0410c60a082149080010b30c0eb88218e181509f9a00736e0810ba20842c2117c70831ac0e0051e9802010470620b61146108307881162568d2f453e8c74546185180021370508316b0e004206880027ebe8e4852c411a19f1f2c1917193ee8010e3060810634f979840084807e7eb066c8407514a0e0831ee4c0062d60c109480002072ca0891102100af283d563c78d0c0d2ea81e230a5058420e7060831ab48005240081031ab000053471c2cb882441d4786520c350111a3394908393042000c9111b0e28000137a610a88c713a4367861419ba31a45881aaa20341f7010ea7bb39d9701e0bcd098893dbc043970387030587d30dce06ea06ce061500d040c36985a2d13263250387961b2c39acb8a8a0a4a8503a952a953a718d430e3ef4aa253f1893b9d22bd6fcb41fada30edd1c4a4b90aa572d38ac5a68e8ee1f7ac57205198f71ff4971a58ea967ea3f6e575e49fb5c526761014b0a562c5474c37c56e9d36c2ee34180784c10205ee9ec632c4c2b96b01be632eb987abec58cf03caf08a120150e36dda91f30a91cddcd43af56c0687cbd7a3f6729d6dcbc5ae9c08a934a33fee99e6d75fc76ba4ccc7f77b478b5725792f4ac9fa5e3d50a90591fa6572b2b2a6238e832eb7eadecca8cfd67555e9a0a17f87a97f6851fd6fc4741acd2c40edd2a03e87e0c4ad98f3777f74b4a4a8d0aac6b68b828f8b871217eeff8e9f0e163c7470f1f3a3e78f8d8e123c7078e8f1b1f363e7cecececf4d8d1d9e1b1b36327670767e766c766c7478f9d1e3d7ae8f4e0d163478f9c1e383d6e7ad8f4f0a1b3a3d34347478787ce0e9d1c1d1c9d1b1d1b1d1f3c7678f4e0a1c383078f1d3c7278e0f0b8e161c3c3c78e9d1d3d76e8ece0b163c78e9c1d383b6e76d8ecf091b393d32347278747ce8e9c9c1c9c9c9b1c9b1c1f383b383d70747078e0ecc0c9c1c1c1b9c1b1c1f171b373d3e346e786c7cd8e9b9c1b9c9b9b1b9b1b1f363b363d6c746c78d8ecb0c9b1c1b1b9b1b1b189d930d9fc2ac5077cbd70ac353994fdb59f11dd3d832a626526662526094fc207e03eb332b332007777ef6e20ba5b4777cb74372a074a17ceba02f6c40a85090a6d85620483396b6506067356963de8be0293c9b419bdee59f6600ccc59f3412a6558060912e4053fedcb328cc9b142b98162c36772e4f02c7dfed247ab14c3e866a978d0ddde2b5508da31cd63cc1dd3a7e53c12d9ecbd9667a582a2dbf36a77a3f44a35530169190702c46f62fcab2d8279b5348b4636ddedad5251a86aa850dd3231f7a98ce6fa53287faf2466f480ee2ea257a928babb73e8efcaefb66694c75ad7775b3b38378f254f77e3c0a11b9463fee4fcfcbdc8f493e98cfad0f2acfe10fe6e8b361b6dfdc9b6285b9f59a52095d735bb91d23d3fbc5606cad07d848c7ad4743790ee4ed22bd492eec6d7c3df95369e0fcf8666524b9371b5df2d8be14f35cad622e52792eb674c71b55f15ba3627cdcfe278afed999faf15c53129db22fcd316e1afc91f9a1494b52a742d90ccda7b549f4877dff0f3b3fb44b7bb8ff4ea64007cbd1805f3b531d9dd35ba01d0dd3d749fbe709a020d3f82b2e6b07b7f605ea557eb309918515e5b1d59ac0c8ef891603e1f04e5d7ddabeea6d1dd33baa5bb59b80b74f710bdeac455077638e86e67e159471b7399f53c5ab7f985af77e3e1783734f8f32d569383b3f3bd8fd8f4e10347e7fbfe8626b49f171b6999ce6e37633afb5b6367577e5e4da5a1043f94b806dfc74a351e048877f74aa7a4ecd4e855e79d292862876509a3a1579c17ba41d9811b7ac59da0bb6be815f7a483dcc79576b78cee14125cc6d79b36acf9beb6e290f074b70dbde266babb3ee840fc633ec1d1d2b0cb38a631cef4b352ff9a0dffbe4469c3ddadd2ddcdeeb6d12b0e85af974399aabbb9eeaeafbdf7bd4a9f5fef98ff7ab534cb5c3f7c500ca9672a6ff659a539cbf05a99cb4ed5dd39f4aa99badba5570d81eeb6595076bf66fd96e92745f9e1eb7d5f7bd9e4adf92eaef92c08ca9adb953746c1ee4e9d50dddd05d1640828400111951bb6b84246053840e248092f70c97cb0830a2de04fcc8b1476ba00802dc51b43145728020d3085ca0e8c8c066eba00c08d03782711fbf4108412280820454a106a5421012cbd455353ab4f35b0f0054b4a2fa51ce59d8c1f98254e5c11965e724a81294d9a60a243c12ca19ac5a1008542a152ce71dc12e72847f10e09259c0b600995a390a8759eca274fb9ca879c52a714120258a295e2a7160a0cea652905b30489960a4cca513027259d73282f4b2948a050a7d3097542a150a8d3c939194568b43aef1408585a49e7a7ee65c929d542a756ca6fae75aef214ea65898dd65207b302b3048920ae95e22a304a500eb30489160accd2527b2f91c2752e90f1d2390bc7f1c8484289ce53609a3ae75a525e9aa7a5c555505650be22e3a56b82f216e75e925071ae5391e14ba8bc3c1104cfc9575e9a40c1f19cfc892078502897e1ae93732c2fcdc3f2224386afb038141ccf4a931667e984681e95262d2ec3b99724569c5381492204ae15e73c0916ef56327000f516ad2514980fdc3a57c17ce076f2205aab149697262c0e85f3ac78ca4b13199c0c98a69373cec13449428993afc0349d9a40e13c32fc2483885553535313cfc965bc24a1c4c959609a4ede0971729d7ce5050a8e67c5555ea0e078549ce5a5c91341f0ac38141c0f8bb3742f324e327e70088172194ec4c95b3ce5a589ca91257864c024e149acbc24c1c2b2f2a2a2728e27e70cab253d464b05b3f4815be71fb8a11ce5271c429c8e381947286f1947273f75aa15f0742f4f704fa09a40c1f913a99494e78cb14279caa907124828d1f9c995e01ce5488400892650384fcaa5e2295722c557bc619078c27952304828a1f21518289ce7e42a304aa4c0a41c054609158ca7604edeae848aab2c3b98686287133cdc0b141d144da040c1846049104f84604910ada593776f71846547d3aa731627299dea9416e73f24805275fdc3c90f09a05234486dd19d38cf8962c53987059785173a5cfba975ea5e525ab4b3383971810a6500238c968a8a4ad7a756a9da533e12e063013e9ca850d1c57427142a8ba64961d1c59c3c8702abceb94e41d1c9b49f9c6c814ae9e1c5a907e7dd354c2a05812d68783144954249a5a454524ca9148d9d9c24ec00614a59a1b418aa16e3c90e5457a8b0c0828b194052aa14151629289e702a2c52b050350ae5291516adee8b275ea4742b3096b052e2e2c486289a75f25e69f1f622a80546494aca0a8c9215171c0f4ebc4819a033406743143b606a3940181df7040b139c5a291825b4d5a53ce5d483c553304ac456e74a68adce7150c2e48b5607a3e494938495ca555dd7a9542b2aaa2d9cc322c539e74cc0a1704f522a4820f1a28544b5054a094b172b5db4545e9474195870d062f9a2c571471c12293a46877bd2a5a068e1b26871aeea3a94379842a150a81e58b8e8a2eba18b61e9e224c3e2458b73244f3a1d161c342705cb0e5a9c732c60b4386e8b2c4e302c5c340dd7a5f4d0438bcb31c22a8ca6e13c87072b8e6b2e5a9c77ce12c64a14357c51e38baec74eef9c50507694b0e280a85a0581e6420581be424aca6a65c38692e66207c889f313f745eb8b568ba1d519610586c6174c58295971a18a828b56e7349ad0ea56b84889a2bb02185f80e10307630b1a5c8b9314951a3800b878e74734b892ee62b54a51b202400a0d356aa46aa46aa46abcb478b152b272b2c2e2a56b39e974ba56b760e66a8ad6898a16ad8b39ad9c3879b2c2826b29c2aaf3293c6151a1c8f8a901d3e2048b2e4583ea8a954b18a71e1c4f1952a91a30a9540d8ec50b5d0c8b1829ae4f3358c26871d2e99c7288b04275312e376cb0b070292f2bdc6a45038c8c1f4e49ca4a890d252931c2f8a9e12c327eba54aa4b75a90e66a5926184e24ac020a4767431279b2e26072b252c61b44e2c61743a9d9fbca589c50b2c62b4346981a2d371d2e9e0489d5c4584e24a3aaf01939272161b7ec306cec60db7e1ae1b6ec386dfb8e1376090b8b172d28aa259dda9c70d5792d2a2218386cbb071c36dd498a24614352e50e349a773839f541ba8618b6675ae1263e56405814ea7869f7c15c58a021b689d58c210a375ba61c36fb8cb86df804122042947e286db48c1b870701b6e0306091b8e030bca4b8dce95b050a0862d9ae6c4e24a58c25839a9f1b282c02a8a0b74315dcb0d270e47e7371c07b7f18243881b8ec30dc7c15d38dc86e3701b8e72e3c5c64b18505c5c6c784979cb70a951a34657e38506d512ad8e06242798245dcc292546d39cfcc68baaa9c35845b17262c54a4987a164e5e4a7731b4a56add5eab4721c2f38bcd87071711a6a2859a205004791f103006739c1409153c52ae52e28285ea3468d971a68f01a35d0e02800a0c1052645490a0a1a330cf0e4c5490d31689d5c25a54375d7a166a47c48a752d2d24ad2d5e87868c275ce104e0468711a4e00193ec3877429a71e498420c59368711aae92e1337008d1e234dcd5e23464f80cae85b9568aa3ba1a7284b04a5101a3049553c56ac59988a1f2a2846b192928577959a29582d2838b948c165417a830b0740f4a707ce14506bb18546ff3dfa133ba8cfa8faff67e95eed019699f15dfcb785432a5b7dc63cd2aad571e3931d910962d9804fbf998e4c1d7abd9a3a9b406949f0533f51a1d97bcd7d1679536012fd0dd4f91409b2209dd1deb95929fee796d9677fc5e75940550c2021bfdee86c11e8ff2fb58be52744cfd88666501e00c15650db802a2ba9de58f3fdbdaebf6d59fdd0f3fcce028653f5fbff4c99b5f194b19d3bf6cfe5a38cefaf7659fe5ecc19f75c4e2ebca07bff1b3ad7db6b5d77d5ab6195370e993600c94d88af68a768e18cbf9f9f15fda37da5a4825b6e077fbf9dfc764ec639286e6d0dd6eab13e0024e10f2a1ac3e02a189dd41badb252523c57120287b26b546ee83a0ecb1730c5f58da5e768ef893f8beb095557a69a3184efaa2f8b32f4cab48f30429ed132966b257acddaf06daef75cb9426734cda393ebdaefb335925d1fcfba228ef113b4799fca11b12dd64ff3ce187a44a0b4e9bbd3d18670b265d8964654a62e8731fcb2be59547b9fe7d5a15c223f855a12b6949585e7934cea8acda9e7ca5783fd7d1f6605a84691116a96b8294d6839fe63a5a9e9fc990fe3d9a517c8d3c9212bedd11cbbf2e91d2f0cfd187b687f6bd0becf1310a8588dc9008941fbd36631a84454ac3472e2c248632e398e4491ac76e2e777398bb4bba39d17673955b0abb39905beaa4b105fe5765cf7f55d6fb354be4be0c57795dd516dd6aebc59bebc664ef11eb938e847b8c90fc268ff0ed8bc8fe63748eb2ceb094578ad586f4633256e59dd1b082a5740f15e8ee7e81a1bbfb15062c033e94801c70848eeeeea8e000088e00d0022e7a74371784038a307262000c68d1dd1c02acc083cc4d01b1a2bb39199c9608820084c084d6dd5d01025083069ee0430e74d0dda72f60e188125c51030a60a1bb39243e000216369830840674378745cb015c38465005a1ee3e050985706002ddcc08babb1bfa09220a08c881803074f7a90603bac8c204a2d00208ddadaa4004c4e084c03ac390eee6a0f08506205186093ca14777a32c0043a1004d074a9860e3e1d468ec673f7b5b012f08f44b071d1e38414794a13dd0e484947e1d11c511517433d9349edd161179e5914c66546dd66756e9bcd2c6aad183dfed7b191d92571e197145b78d637acb62f84210f918d18411b3fd06d6d792707a10c7f34a5bb5d9f9ea6e1fbabb30ac8cb0d1f87a623826e92209029230f5fdd995a03bd3a49ec4c3cf34094a12547703f5aa8817c8b8106792a13f2d579bbd33311cfd69d948117b2d8bf57a11ad88a0404d4dcd77b1ccfab598d6e874797fbe187eceb2e7b7f26dcdcfb668ca0fb27d51d2941fa4f4d3f60c11ca2b4531bc34fce3924702bfbe6824863708c909ba3bc6677e8bf97df1da10c9ec6e5ac718c7488820e9a1bb85d030bd575b5dd6c78ea91fe9c1eac80962c231a44c32b4b3af476031ee7e44c8911f47568c80d1322ec463fc9bd9af367944841484513d281e1410d44ea36a502fdd2d805e1909d2f87af769cffcfb32d9c883ff6856298b3593ea0f12c6a3a431fdfc2801b922208623283f3b843f8f7895048455120fba1ba9574903e83622c94c11499e968d92682051010902445dac905ced3393c260fe604cc2eed7eceb3f5abb8f613710946395a1dfcf12f48f79959f7ba01c27add159a957f9317dfed91c6348334264a18d48e2cf84629ff11979a588f17ff68afeb159a3fffdfdd02675b70ebd1262052b2196f84bc7257f7d663e1e679534a7b98c843822448c11497ce643fbe5d11e51a15b66dd711da710d1910d564754741b91c427f5229278443d48dce79536518969d2d7acb4c85fcbf455881040be37921fcb647607d7c80346b1f63edb9acf2aa5f92bbecf772c6d463e1475019bf683b9f7d37e0e64e4c8658cde0fc746ecd7fafc4cfd3e2dd37779a5e85a1541d1b8bee89fc7ef99de6df6d6aae8c856db576fad8a56e0389ff6e1b1d545f7944f9b42f2e6f48ae800dd0d9b14e69ebcf2c8a59ce2382b2d52e9d24b5e297eaf1aa6f8ebcfe68f3f2e113285d0b00c9af269af6f49aea3fd5e331cbe9864f8fa99c4f8c317930c5f3f932fd0dad8fcf05259b59f2889feaf8b07df7e69ce4a8b18cd2aa5610926cd4a97f087341709558de252ba555d974aa15028d4e9743a9dba8e53a952aa148a2a854251a1a0a850249edf4f2b1cff3e2dff64994c42c2b3d2225782e3ecefad484796136b4d9d1f1f9aeb878878a4744489f65122ae12127d251cb1e8888f9c241dd7922190dc7c326098695e96495cb374ad2d7ff53c670d2129d5d1cafc637e93618c7b4c96be218a908828b13425adcc34be9127a2470f0a6484088a644909528e8bc991008268329a245afa41120ae198d20c8ea1ebf0c0a1690525f9634bb3390eefdbecff7726fd16fbfb34173282878e1136384490e8469a3febcf6dcabf60cb1665a62f9a5f6d18daef95afcc49478fe50f650b267d4c3feb88416b6359fcef931894f2357ffe579c2d885f364bc32f5b71c50f8aa1c42f0b8ed3862fd9ad5d5a9ed4f67ada7793e0cf172ddbfb4c7015e233e268efec25640a0999423eb7db2fbd6ef76bf6c3740a9942785a7a5f7c4d237072e63f7e8576567985fc4767a5afafd1fc492146807c6f44888ccfc400f9de08c64c3f69af8f8665d0cd7fbf29746d9620687ba690109b181e62b1eecf6b592c9fc994072767ec89c96a475666a4c8f746e68742f8736edd32fda4a7f58072feacf6fba459a54b9fe4c9f4a3a0c8f4332b2d924711539f7c6dac35e5d35a9648ae8fff1edd8c1fe9683e15c7ef33fa6b7b6e37d79f904ab067cabfb42caf3c12477b89fcb53d99f2c4244865ad855363b18c88a27ce5faa128cad7b559b2583835160bcf18e2857e2a1b6283212b1892c510127477b574f6d7338dd1b8f4d05e99ffb5194f69c1eeb60ae28a213bb85219daf93549737c9336503a08529be3299f368367f0fdfca1bc5204e5b8e4314da6b1d51095b37e5ada27ffd6d1e7dfcff59d05ca7a3f578aaff71f056f68beaf651acbf5a948bfbff7677d3c857072461a964141e83085c0af55d27ac4f0064d211a96413f6dcfa4a034c262552a699fbc529cf283843ce96efcfa6bbf57b6532e8156a4611944c33248488a03dd2deb551024ba67e7439055770311c30a8817dded4180b8b36030cf588afe5f95b559e5f7fdb43d0770e288159021d8de67e2b34a6f60b53ee5836eb3e34c634e65b211fbfc2ca334dcdddddc911f5be0ebe178393434b74caf14757af5638925fec326e7081caf92961de3076f553afef04a3c5a5afb7b2444c8ce08e47b23407072467c1f8ff7973e0b7e76886670249a7fbfdaec0ececd285931a80005a2e8c7d58af891c20f49a5337a8d2668346b0be79f5de9ba615bf43f9339c948f8315dfb3dd283313aab2350b6e123dd18b13132abddfbb364f4e3c2adf9e167a1f0b310cef448cfe72ab4c3845ba620cde3dd7182a5cd41507e3ebdda1942a4573dc2684973e995869fa93f38ab147b6bd5238beef6f0185bf550c2d6899333f6e059e960c103c1b761e933b34a33be54e632ebeedd407094f9a4d3f1bbcc3aedcb9207c748ae4fbfdaba3192eb873729be1ecb071f29fc4cbbbb014efa99503c64f3d89a5f6734297c3dbdf9f559e6510c6dcf8c12859f294ecef84c280f27d42a796695d2bed11a9934f648b3390a207fafe4913e9ac55f4abae5a79fc54c3fab100f9bd50e27b497f1cf6623f64c9bd1d05fbc65e9d59f96679e96c37176252dfbbbed8b9276c4da68c70f2fdeb2639c2d98342e91a2d1acb4c8ac7469951383554ece71cf8824d982786656ba5444120f3f0d4b10fb67f951501ce7fc9f8e29cde55eb620f60f6976998fcae8f722a699952ec5cc2a1df6aa9662fc18f6a228690e9b952ec1bc7e8dce64d6fffa7ff56532eb553aa6fef769aeee56400270c8e0acfb5926f1f56e18d2542a731d6d48f3e0d2fd90c5ba6178c3104700cefa6b651f7be125f9e24b14258bf59582d5bec23aa3492c968f1b1e3c702ebe71a2efe74c6dae9fc950e8feac52207176045219fe644b91627f0494b31fba4950c4d4c785671204ca9487c57ac92c7d7478e0fc5f9a6b497edf17d1e1812369493a3c70accdf54b12e4c1c9b149a49b1c9b44b2c9b149241f383689b4836393483d706c124907c7269178e0d824d20e1c9b44cac1b149241c1c9b44b2c1b149241f373689b4736393483d6e6c1249e7c6269178dcd824d28e1b9b44cab9b149249c1b9b44bab9b149241f3689b46393483d6c1249c7269178d824d20e9b44cab149241c9b44bab149241b9b44fa2a337b55e305be1e7ef19633adc935288f0add137c0a74cb1e8874849fdabe6845a30315159515ef1653515159999f330ddf656a300daec19f9d3495cab0c652cfc39f9d35352c2ce64c8b3122d7af7d11fe34978a8aca0a8b25c559e59de5fab59f154d537bf3c311ffa541f2e6e3518ab9febd634fc674a8951fbfba3b00bda251b5379f82a228bdfec71c4b9ae7c74ecba374db177d9693ce2a7b44a5fbb58e48f763e113d50f67f2d2c4177ef067957e75b4f5917072c6a48c2b95b3afd92b8aad5ba6d72a9144f7c53129bf3edbda042d0dffa5b93e5b23ac2c1d2767f4cf997478ecc8c161ba99bff4d9a1afb6e8a3b56a7b8040a23fdb1a8b75fbe4fd6cf8f3b3354273c3f07593fddf64ffb1950e0874f70bc67fe7941ee4fa719bfdf6453e0ac6c6231f02e8e787c7f3fd1a08b63e4c89fe8170ec25e26ab17ca40608e9950e1d3ae7a8f8edc494969df6519acd675cf3f108050a25d3019904b4dbec78264199cf9f5549fb44eb3f569aabfddc669f4f6ff6d10e8104ed75444c12ba1bc7b3f16e6a3f3c4648ae2418d71c151cbedec7eccdd8c6c3a1096dbc9b9a570ade27ea6ed84bb5d3dd467a15d3ddfd77ccf2650ec3757cd59660fe343cfa7c3026ebfbc73ce331f459a583f43acded97bac78db7c3b3a19959b0db881c5e14d194c2353531d1b4d2d4ddd4d45d539f9ada004d8d000474afb44a7743d17d80a656696a62a209014ddd4d4d07686ae207274470447437ac573eccd8e4cdf1706e3c1b9a6ab33746c392e6438a3b0dcba05ef53086ee0f6dd2575be4b2b22af453de99a894b11ca29956212614949502fddc40516c61493b7221bd44fca1acf99362687b58acefa7fd6a3839a390d77d9149864b9f05631794d9e617930c85006192e14771a53733fdebb18c09c1c91981dc3f6292a10d5d350034dc3fc22cd6d267411e21f34591de8c59219636205faf5ea0d0f9fb7bede7d956ec2ea3ee98fad35cfe03f6baf6059b4fc3b45299df9f201d79f0f570a62105c3cff8a6d4dd9c6b88c7a0bb8fba1b55d433999d2ae96e24bd7a89c1d7cb955a31c7b3a1b9f91e1b15e1eb81d271b4e77939f2833359fe9d79b645ee6107a504c70f949fd332b5f9acd25947ff2bfd8fb0c0af3df8aa96e64fe22a6f6635e70487c3dd7033b854772fe9150f3e2dff662c13531ff464e0630f02c4270df1f56858d26858d258ac1d90e8ced7d2b05b9b6958d29cf5f87eedafd7eee347fabf401fa6218b85eb2fd9cc62e131cb9cf45f95a0e43162c77fec8c45e09b3cfa97bdf04d8a184bf03b926933fa3617e88001908e311cefc6c3a1b1b24a691e941fae338a312dcba35677bf7053283f08caa36a29be6f24a9bb8986baf1f56a6a6ae4d7c3c6466653d3c3c687fc9c9bff707ce0ece0a113a3f92c6fc6b111d7e03cdaa5ef695f4da6b3f9342c697564b17e26afcd98c5fa90e63ade1c0890831339d86e98b3609ea57f9619bb9555a1dbb559ce2a8940795f340265786d11c612ecf1a17d598a984e160bbf3e9457866ff208ff10325cbdc29105bedeac9f99be8fe8158ea0fe8cbfbeee67fa0aed95bdbe1771cdf7b59ab7d189e1f0d0d9a123e361237dcc1c9b1e3c7676e4cc893363b11d3b623d7ae0f4903992878f9a2fe3f1d6e098e9e1e91e6a3f75774a77e3a0021c48c064133393aea2d6cf9091110fd20f911f579190100f912221245792bb7e5c3d4643434a45483f424042aea21f1f2177f5fc0880c768a8f583e4f3e36a21fd102915fdec00b9947e7a8a7e9484f84972fd247df47e38161df168097d485d3d2ea50fa96b3e130acafbf5893c18a3981a99557a73d21111cf8d247477115e6424e46af5080d1d1db56e60d15d84f7080109f5fc1c25d1b890fcb88a8c7a6e442001f3f337deafd14c437ac51be28d70756376b74c8c1b5184ffb85a4684908e3ea4aecfd207a83ef8aa0fbefef3836268bf2a04ca8f565be5576d11d1a446dd1d64523ba9d1acd2fbf31ae54f32ba5f33ba3fe523fdb44433e9fa583816cda4abbb817c77fff87c8b559bad4b5569265db34a2b95e1dfeee6317fdaefa7cc92b523cb4addbd6326f38fa034d2dd3eaaa599622b76f7ceac74e9062fba9b47b545ddbd23e7439bd4a7da037070218b1d8d328292012566141db207534e0401e240787df0f59aa03d5d2101949154b74a08194f0f12e4bb98c8c685a080e072eafe69abbb743be84640016e9c2688f7b3f94cbad5102ea19ed651abc78138d3a45d23082fba46105be81a43628608758d206c5d23880c748d20b2e8512387837104176ec7b475078e6743139b344f6feecfa569d03bbc1bef860694f6d25a7d97cea2db13eaee70987ee62b75603c618c2674e3b80e17e5f79aa0f520415c264694df8f4b7ebebeaf2d893461a591dd5a37078631c0187437dc17ba1b3a1c72747734705c681db40e9270927152e9d640136718cad7e29ace068cc93c86dd5d4d77cf978929402f519076d3ee2ed22b3314e1d46a706a2c162886f44545895363b1a8286958acdcab323cd15dffda4f1ced9d655b7bc8d0e4eda8d531890c4362f8d96766c890830c3990a1c56764f24167c5a68f410bddcec2e1836fa9876dc622a5320a8aa184c1c4708ce59fb94d720f26d27c9f3eed6d3018cc7fc800e13ffe815c8703e1ffb2578c077191e6577ef0878c4873cc07caef15c43e5853e37f6d9dd1998cc70b83c1dc931169765b639c09c53437f04a908614bbf43a5e9a5ced95c14019de6aa9d76a459a2f8e59b7d961ffb2170c1461b74c617e29b61646a4d94139e64b6b3030d85350cc141cc35600b80cdce8e6342004c7b43b93311913ad18d4dd4bbd02434d77df30e4e1d9d0d0c4963e9f2a3485c4f006e5d16885e5f346109dd7dda8ee869a8d499f8f6dd17c262afb7bf4c4b37906fb7c9abf47eef94c9674c9fd6363e8364b734cdd73e9e1688bb00c4a52caf60883f291a6b4e04d1e25297561a7bbbb7043176870218c196771d1dd5cc0820b176867599acd675e5cb8e19f9e47cb05212eece86e67cd7877bf2ce95e6a0dbca0041e9855797fdc380d96a0ffc0f16b7f36ff0546a07ba6bb0dd0ddb857614cd1f87ab34aa5f0d1b3551834d88ab5067734dddd0c103aba3b9998ee071f7ae8ee0200f3d2dd390f3b74773ae4d0e1e8ee70e8ee6e747736ba1bba7b080f961fbf5e3010941fed931f48657e1fa1ff9a05418b94eb1d796695626102dd2de4c9a83ff5a7652a6d9e8f90cf28769c29bd3f67eec873c798ccad4a97d198bf52c43399eb7ff78f3c3cbf468f64e8d7caaae5f1963e19f3c74fcbb5e55e2cc7058262debfcdafd97bfb6c76efa70cef4f5be437113bbe5616d2c79e73541aefc178b45fedbd3fa310363bf459fa4c6b89549bad451e8cc949e5d13f90126e314922cc2489aaa5d9caaa90908c02129ae08329fc1474da48a5441e0c2601cfc38c3f4bd0f6457ee5ec6fb645984912e596cd0ee1505e791405252888a1fbf1485de893600ffe7d9b63aa43873f2d531fa1d05beeb9cc3a4c7e0c23839f525ced47435bedf7e0ac3616e31804afccfb59b579327326c738cb733cda246b5daf198d618aafd7842e40109678821760784c8801139e74d778965e29912076d8c0071763b304a376852c16ae966216eb7a1e3042174a30c14a09573493dfaa742524e0092580345f6dd183efa3841f25ec284187125eda6db6fa8c4b9f558aafb7a3c662dd247c1272e8de51c78bb19cf5672d71acf2c19e249923ccb428a77cb158f75fe1c71444af9080a46fe06749e7872175d88f37c3609556f9c1ba9ba95747f002ff8831ada17d9fb374d17fccbff98e5fa3581e8106ddddceca95862f495363842a686ac28fc9083bfa06ded47a0143e84277e3904af0934580e95ba6a0ccd7127901e3450d2fbafdf64bee8eade8acfcd863d365323b842138a0918410c6cffae2ac5291084a1a7fedbe0cd770c6df1b11c22a085404610141103932dca7f7c7256310c397b10d5f59beba3931ae95f4a3b2af1f0365aed2f6353a0b03fe9775735ce45ffa68c6607831c9b09bfbc2a4afdbfd714937e7852e70e171a56196f7b36137b7850f65ede662c085a1852c841f533787856eee0af7f3fd6ab3b79bb342777355b0bd3255d2cd51018c29747352e0a2c0414126065faf26a7f63131bd7c108692a460eba3a2fda8685df9937e5a22fc0f943f497eb64560555afaec50be16944af58e3c5529490ca9047b98c456fea4a04f4a42ba8d3c414c3fef73e5833d3df54523db1789e10dca9f9c0fbecb07293fc62d9bbc9396e911a19c5af821e1c1aadb592eab893bd841bf644c87ea0dfbd35c3b80a2bb7730d4983e48693671f4d50e7ae8b6f799e0697b7430867679e5b5f48a3ab041fbb5321d24e9ceb6ced05ba64a1d0d0f5604ac089ff9697b28ced4abf4f36ed226bd26b1907b3847a6573aa659c9bd6a69967ea9143d7cf9e35e683f71b4d476b17ffe369789f1cf954aec6ff34a1f8f0e4a9aeb672b7a6db9f7978a4c3f416bbf4ca54ddeeb92d61cdb3c8329ce51adc58e5beed55146fb32b561fcd7caee8b7e7d3a8e49c7f48e53d2d8994baf63287358962f980711e23e428ea9bc52143ff04a7a41d1bdf949c7f745bf34d7f7a7cd464bcba0f419dafde9e315e97d507aa6f9431a4a7ce9d3b28bff4b6ffb6bc35b951f3b722f94dfc73c53c7d227fd666858d240391a01a3611974e3f9697b6045d4eeb53deec90bfa7c99e5a499f2693e422eaf3c024109ba6e323a6de8326b04ec699fecc1b022aeedf16013e6b7d8e71e4c9444b2dad19514a44c63cb3d893f5acb8ff318f38c29882993d338ab0ab98741b0956dd13f2873d2088465467934cad648928fede949d5c075f1846e14aa050c6841d6a20cdd58095a6021c4b5408016ae6e07e2312fceca5882550b67e1bff6f3cf082d502dc0420baee0415edc594614d102167437ce34f60af2e2b1d7fc3cb28828f1d0b4004877db2b2e7d16a4c134f31fd39c84b0000656d683ef2ff559faecd0b5f41e650a8a49f3ca59654e9a31b0c21578084aa07705479eb3fce5e9bd926705439cb5821b56d0e2ac1967cd74e0004b9c208c0a3cc0094cc470c2c62b59233e5568d25855b2796cf1a8a0460a22d029f8d142ae2599ab109324f2c4b7f578581279481ef61a3ceb8b499e485dd7c7bdfa5fa5f897e8cd494c92c8bb3d2dcbccc86b635c7ab5d4e7274df26ed2e6b36aafed43fbd9d6b0cbf9d371fed95fef633436a9e7c04fb925d2f3a6ccc76e9228c685d0f8fd6c8db8101a0ffdc1d8687dbe59a57656ed687d5229fac7246de647a57226637efd0662f7268df9cf193c696ce696b10d6570cca431c739661dedbda36db987fd43fb7decca3969cc7f6097ddc058953dee39a60fb6dc731d4dc9936dd1912d9ad91ecd2a9d9427db2226497481b22db2459d22626373e3423c865537a04cdfaa1bfcac3e084adaa7ca117ea6b28cafb5f98f20411c94f5c67b7b5fad9242ab663849240d418e10f5cca020c9c8b1d3c15c01a45f5e5eac08831560b022095608a15ff75f33352efb5b834750bc237ecdd097155878902041ba3925ac586245927696bdf77fbab9bab24255c518aaf88226fc986ac28fc9bec28f29d3f9f77b55fa0a3fa6d7b358e1c754050caab8a28a0d5481848cb34019e3ceca4c3fe3acfba0a5e5c758caebea40f043f7b45fae7fdff6f5f5d9d6d7ebbf6b6537bfe694f3f158c7d72f59f1f592d5c4d7cf23221f098ad6c8df2359ed48f6ea03998ad7a4b149637594fd14ebf89a3feb8b78c4af9fcd51c92b3fc661da10457777cd186770b252820b4c06a00520babb6d4c118612910b6c58823066a0bb4f39d050400e950c1820aea0b8820d3f5001880b60101101ad1fd0c56aa70931967a50c10204a0e8eebe81ba424c375703952c65fed5a67678c0d5588880a341b6168948c4f9933a008637ebe32bdfad75bda00353747bee79961d6862d501a65b77dbe8550790d0bcce28eec04ef7273bb0ea6eda975f360515ba3be9fbda6b3e8b25e2ef8d4c11d41951dd48b183951455482105adbb3116edd73f800107baf8bee6e200adc6c318638cc181220ed874b70b71677d8d26d318376e00068daf5723cab0e6ffe6580dae76033bdddc0cb818c880360577c3132dbadb1af9c7a3ecc9f5c3472a7a222c8fe495473fafb4b5e6cfd9f2329324f2e4c78896f05ee6feb570fc6e4efb24bd1fee71cf669759bf799e6dd12df6fd8b331a734cdd65d6ff99d02c3f96affc20fc77ce56a6211d9a553aed577fa6d0fd3f2a9a3f3f5b234a60b645f3319647f399249137df27a4394bc7de7f1406f37fecac198d55f9cd68cc6fe0fdda8cc560cbab4c66416b7b3c9aa54f5e57c612c80b479a8ca5ccfbfece2aad5539ab3453f71930d7af32bc2f4a9b7bf545b17eadcaa7d9b274222f1cb134e28154e6fa8ee992c777948d38fb8ccc7ef58fcd2a95d94a430fdbbe0e79538252066799fd64fdf1a4056ffff2c35f031f874fcb9e691dad5779bde679c4f5dde62599717d30670aba046742f207a08312c9bd4c65328d715c9359c7a2bd4730a7f16bfd070cf683e51157c67208e634ceca1fdab2cbecac12cfff8a337d9ac4a00472ef06fa8c8d78fe785d3e6770b5f4beed5e098e1f9520d8720fb41753a0c909f7973e99b3f42afd07a8158eb72afdbf6a3faf965621e9394785b9cd3feecd5f92b13a7acdf86d16947249fa8cff5fd9cb24befd92bf4c26499f966673b94795dc9332b7d87fcad06562aacd0ecd2ac59812cde7b145342c834079648be6dbfc48b34a339547bedaa2fbd91ac9b68886f78f6c119e7504f2c9b62863caf4833f5b23b9ca8cab50b545f745516956ed3d3291b024ba554964adcb66876695666b64d6fc928c390bc90809e9c77b8488180d4d06f860400f1e96b6623a9190e6630bf60821cd9e0598c0731d71cf75b8cb817059fea45b0ccaff2428bacd8fada57d3e65cce5fdfcf306d22b437a45cfbb49db0d1cedcdab74e998ce580c4acf238f7b485a442c96cecd28717dfc37539d9bd1f1e3310ce59dd92bba3fcde5b26bf32781bc59a5347fc54a61b3fe7df1b18fe730199f899159201ce7995050ce29c1a7c9af5d7bfbb08c0dc1cbd42dcd264a22f7b0cbaccd7e1f8f33f3636e337520f7b07b7e29be8f5bd916d9fb44e07c6d52b6450fc6e4d30b946dd14d82ef33bf058234274dc95329289359164d4899245118b81f14c0893b878302249147dc140ad043b74765f47ecd93ac9e00c39b34d611b17a820a7b3da9733d41f319228017ba46802cbabd99f1cfe82ceae205448040169d051a20618455d261048105b815229c388313656898b39cc0818be392b54342b74fce7e08cf9f75b43c471c1030fc93e602678026c4e89e3337f87a356238ded458ac2660ed53c5d5e820703a5ee0a0a9c0e5681a704b36f87a4d4a68124253164d53c88032db18f767c1381dbe5a1fdcb2734c9ab72f32e91c939a524b20a1bb1bcb979de3e3d7fc3ada39e29a77fb25b773c4b029d482d93926fda5e39247eaeeb0574a9c414545650517e1a1cd78ec515151597955098aaf57be5614ea9512b3bb3dd17395f4ca5a8f0b04650f7eca2489e6db2c084ac74f65964912f987d4e5c97c4cbaccfa2d8b7f1df6398ddfc0621cf6c11cd76c41ebf3b18cd9de6d7650d21abdf9a319c7ec151d53ec1ffbe169f1cce4fd9a741f6f2e7df4c62c763bddb6b0a4f9f459c556bc81194b90f6c99ff990fad35ca227f3587ef233aed46130b7311094b2d1de62e8ccc792dc9be0d35b66fa5ced376795deee8f42b857ad8ba3cfaff2c149e5ede65a3fd32ba9db6c907b581cfd2b053ddb8a679670a5b29fff559ae49e0cbe31eb36bb63e9bd47637c3e1395dd447b7305ad95d9d6ea95fa1f710f5604f31b9a2298df4011fff599f9b34aec8f25f8b44c6760ffaa16269347318fd681908cc89ca3da1953a90445bf5d394e7014ade81ff36b65d2b1a4dd175d461df6a14d8239a632b2db95d78ae1bbdcbbc925eb78f6b9525961493067fdb88c8a6890181d71c9accf2aad301b10949e1ffffd6a3d337df5b7f90ca6d2ffab46eec1825c448a7e865eaea21f22223f49af222321578f12922ba9c8a8e785f4e353a4248e2eb3e1ecb157ea341953d027c65eff6df9632e93599a9ff26697fe4b32f43fe25eb5d4918adc9bef9832b9876576361fb4d9ba4453a9fd68a4d3be113b7e6cc53b8a33b72bf1fdda945eeb634bfb3095b619a6f76b81dc93a1a9d61f83b47cbb5f7bff250ac638a67ffdab752c7d562de816fbccfddadb2ccd6730683f9bed15fda33451de99cde2ed7e7eab32f44a8768117916722fbc9ffda3a00c5d7ef547505669a68ea5cfcc2a0563a19cf9b5b28fb9cba8c85d494a44b74ceff87d9207c03d1d9f0e8cbf8234d7d16d1cd3f937f0b3f46c410f3f657af7602fb039a5b4e12a3fc4e34ba56e8baacde8f645907c6e31ff3ef5485a475a963f7d87ce11380e824b40cf67955e5b67425d06ba2c32751808d225985febb05f9219e6f76b5ffd6dfec32bf549fbacf8d379c0bbe597494cc3f27e01d92bf59f14c31c3f96c9ec4f793fe471186c8824dc85080122b3f4f19979c4f2192140582c19f84940424a4b1225511077f701388be5fe201543fbd90a83c17e3c00eed93c1d675a477ccb74d27109fd1a055be27f9159a5f27d3007866d971dd8b4f73289c7d8b5d5f3df7ce6c33157aa030c743796b4967b173458420d51e87ebd3c3c1f033236622e05394881c00d1c3837838b2bba3bf9e0cc20859c01a880064e7470f0f55c6cc083074a5c1f7603abf42c6795aaa8a8acc80f566d52c42a2a2a2bd8f6f5fe4d820e4ad7cb8c0186649b8c2d18862a103d132c16b8a8c00c2f350c20720412028098c10f96ae0c6d5f943403d80c80341395fd3ddae19194e4d54c471b93eedd87c932bc16688707c630bec32329c9e77b39f21389f978bf646b1f96594e9bf1a5e34fd0c6781ece3464e11fdc061e4df46a290df6d8ca6a96898179961306fb8c2de81fc3232dbbcda1c43098cc0c8be58a818d19ff95d910d32a69dfe3fc20053f9a4c9b51d0f147c51610191a96412c96cb6fb118ffa868b34b228709710181854fcb324b33b399c9f2b84753a9117b84a92d0bddf1dfbd19f782dc83c1fc16f3fc492e9329ce21ca3006bb8767f2288252a65277cf4708044799289fc6fa50167d2f0a59179effdf8b494c3fd615da9e6a8b4050f6a49a7407fda06149bbe38ccaa62d5a814a165d900214b2f8411634c8c2052e599c200b0d6481812c2ed0a275191f629ce5352ee383fb8c0fce12adcff8e031ee2c37a2889ff6cb629605518c64e1eb3df14cfeafac8e312878820e5460d3bd45770a8e6884b8cd82cefadaebc562dda41e2858e1eb85d7ca681d6b30a6738c29be2002170ef4d039e1095500030c2948e10953a842159ef0042a744d80c2143a29747750784214ba3b2874774d7842d784f996c59a55ba24337e893883a3024c90e4da24cd357fc458e8fa4cca33ff68529e1284a00436cf84de64f47bd9242de7f99a75944d1a9b34f62241029026e5f17c846c92e6f2f2e3bff36db149c1196871b59f77dff6b697b5dc1b3f4ae46511a43c951279544673ad2f8552c4331a13479f349645fa34c6e3552b8e1e1b99607b3fe95f6d185a1905f260305b8d8084805c62af3fc424893c7b9f09917b5efe1c1c984c8fb32833f860cd3d9918211bd83fb6b4b7d86fb1190c8379a518cbafc924f7503388ba2fba3ba563c2fc25eefd27456cb1156d93f26471521e7b5495c09ceda5b9321e7df02f8d6168b5e044b084664271feff29f280041a7f8d82f225fe2f81a07cd5919bb97460a9c79d299274cf0f65ad79610982f285e58bf66519a3656aa3758a1a7a0c2980a400428a1e383005070ad01ce861e9ca99145fa27cdab4388f9696a94d5cba32fccbad34c59cac80c10c5ea49081014d2e369e78d2dd42b87895611563851a366ccc20b7c0a10762f802474c0a826e20ae7a704318dddd583447842acca05d9e0ce95b95b76bc30f2de8c99857f975772ce8ee5620c5119d13bd347f89ffc879d2f0c862fd945fa7824e8a211a6829409155e97e70d6ea5f29586904589081a31474772890428af99af3e7881bc200783a0306562e10740131fa0244b8800d2e70006739aed6412a632e43141304731af7e657ca03739aea32ead73a8d058339cd0c4c46862826c867787ca6f6578c81396ba952b047082277ec3a5ea537105b8731fd0ce27930ff19b5d959a90db437c93d2b131f86619e63a39d5ea9d77f9ae3aba5b9c56864329ba3da2b66fa59d6e8153a6a39a63e846e214c200334271c24408109184d60c70452ed8923cd7de91fb38f5b3435d6357fce960d9f687ea6f32783946782606bfe0d0425cd571ed97efeed8b7c0d04e5f722befd12911379b007a9ccf73f504a19985947d957731361623a623e49afd882c14c70fd521abb56d2fc6b9206829702f16079548566fda942570259eb9af50704659864ad6b0a4951f6dcaf195da349793210b6453ed6759bd2864f548564d788951dddaf7dd1d0b47d91d12de6367bf86bd671cbcb9882209537cf1e04a9042bad4f536db575562bd264d983feb18a29d591ffa6c3e5fc7aff9332c7d265e6dfaf54e696c5981c1b6d16042d907b5e6bb72a0325ed63d58ed3656e3178566991bcf248c64419ce77518002bc249704f8a0bb9d4553930056b52e795e224662faa220a12348f7319548b6db9561382665f93e4f7b982491d2102dd323980ee54f9ad4e75aa0fb59d69aff5d4bc3f2e72fcd8f645d784866547f0883600be3fbd9debec8bc7d118c6d1e5b4938394aa212ce4c5f548526e539aa230dcb20a1bf3328337d517d26f60265a62f220247243c85f2ffb53d7866b3ff5539622c04ca6c5df367f3bf48f6480f8af4baac6bfe6c5917965d23980ee1c716c4b88ef728d7affde0db1749caf82978e50f9ef2832a95b49e6a84ffa3d9824918cf3a5a24fc34337dd1cb24ae4af8f645a88f05938ef087f41e61fcf5b31c0a3f242f9349b21b084a9791ac0af9241999429986a1fdfe1e1505ddf23d32f2479c6164628be62fd9da23c5c6249016e9698202dded554bb3c44c92c8c33eab74c69b79ef334c219324728f36a334bfe5fc571c63f88d6a848adcf311a2984912794fef8b34b1117bf466797d843cfcfc4919a6b1117b1fc592e763fa892948bf3ade40505e1a96365b59ed4ca6add8881de7c84c33385398d8886140e995e6be3846a0c9095ec488f631b799e6fb622b3626c9a26c8bfe816cd16de9a339a97e8d12a992283626559b51b6453ed702f500f188c10b54501179a5f33ddb3a290fe549edd0ddb25d982ce9f6686e37bb7726e8ee94ae04dd1d09ba3b2c9ededcdd8da0bb1341771782eeee8aeece8a76b93d71b941a0aba2bb03414a4745ee9800f48b0bd316ddbff402e567db0a0f2c80c91d6054830d2c80e5621b22045656696bfe9cadf9773caa8523164607ece8c060309fa9d293c137e22dc7f87c98cb4af321cd474c9248662913e3bd78cb2f201c270706bb367f12a8fe4873390ce6323b82a2e3db7dd1c3b16e4fe6f64b317e63b27766b3cf54a559958a5eafd7eb2682d3865a844f6a0fba7f96a89893c5c274663adf861f2e591104e5ebf318a33757cb83452a52577dd1e80582d2be5c429fce584af0af4f9750c625fc0114a31d535005a0140dcac4fcecca216b5d3f6d8fed8bbabb0fe0a3eece035d078e745348d1dd4b50f4bf5e1d521d5d81ee9f5d49ebc9a3a591dd5aa534b25b03423242c3320808c98851517631a25d9438e96e5a6933f0886ea08eaf9176eb39656c7c197de5c74a5eb111bfe694b11a1bf12bd371c9cca7bbbdf0b3d06be6d2cebacd296ff82993bde2df517c81205daa1f4ef9ba31b5ac74af04e576096a6a97200ab44b9014ed12448276096ac118633c135a6fb3de6677b784ea7a9ba8ee89166da659d77721875c42dd2d8a3094235ca616f87af8755ffc68fe10009496afe8f67e32f41f302619f6e0405c8649863dd42c8901e97f5ee34b605d91cbf7452f79ccc3dbf16c686695d7e56bd24d9a24718945015f4f0c3f2619869d11182ed20b4dcbf4ca1a2cda1c24cdd1271c2832b8481b3950318051009600180bba5b0c2f0d26448e178b9563fe772dd07c303cbf9f47ebdefdeacaf525ed88b3aaa5fe365ca5744c25114d7516a6710f9c5539eb8fcf1cfd783099239f118a8161f74a1d2604831dd1380bbb4c2cc63d5ca9cbc818f7de1372efc53babcd82e0d754a12a45fad17c1483298b856598668931ec08e634eec997f4b3184b5fba32bc9fa50d5b105325f75a79bc19069341e233af18180c090c26f3f2192431b050c230ec56e567ead7ca68fde4d717ad0cfc24ebeab1f78978263409ffdca48d09ad4ab9be68e4f2427b204833b6472eae2c3afff5199c1f7b917671cdbeefe2f2e15a75fbbb247dd13e36d525c902dd4dfbe4df204930492b242ff48cb3821871bf56fa2a422663787e0db4f8ef274579bf24f7eeac8f858e5a39689982d6c6602e6532213231406c18cf1e7c8df01117474e9cf5afd7112c63f7fecaa3212e4739b8c5e3354a02ebf64b2fa31678ac97d14cb4f9356334a4bd7729dac2c5075a77dfbe48c672c8ba8e96b0740115d9dcaf55c885e80ced2cb0fed0ed8b30492221359f786924add1d0d0cc2a0dede75126f4c664ae3649c39ecd66b3b26b81747cecd071568eb38c80d1380be78687632afdf1486b533aa621cdf869eed76c06657dd141f9d7415086d8ad95c1e6675006c1322869427076e8dcdcd4007116f5db2f55aba3e708490756f21b4865fd2c274d661abbd2ab742360a2242a62b1604578cbbd9f493cded1def2dfef87a88504e45e951f2843eacdd8fa78746cabc51fcd32b47994560ce9ed5a99cf2a6de836d7db2f591a1665c5ee984912cdaa1db2d675fb2278d6117fcdf4c8943cd6224dc9735f7ed20bdfa7f829aeb6073fc55509734124a9f114ba3fe507e1913300c70497808e07abb30142d23d7da8f0b0ccd29aa47dcc3fdb29824f7b4f2686ad0c7fb6466ee0953fd6baf091d0e62a69472f22219b44ea39824bcf153d14f064625c26c66d5fe4c16cb6c260370e8463180d287fbe6de99309c8b6fbb48cfd9368331a64adebc1af2a4dd068bef451748bf1bd2fa3234093a6656a7b5bced11c085c8640610817435c30240443ae689f116d769f2f81293410861b51c411e0d111035021063c20020c98a24b61cfbb8fdd4e8b6dae740a8139a6327bb3a0949f7f3e94f9fb1af525c7f3da0fb4b4a5cf0ec92c7db89b91309c2149118d178b3bf9d06628420d2a4076f804ad8d161e0e07252e3eccd0a5e82008dc177cba2e573174572b7b9f1b93adad6aab0b0b49b7b3be71da2bda3bafe02306977669dc0ababbb6cbce10ddb4d217ed630bd2e806dba5470e9ae6b3cca70b90c00727f4cbe651be5eb4f97b3dc6f8bb5ba65d74b2f4db2fb9e85cd1dd3233b75f8a41892e3a9e8b8e4bbbcf0f814b8c518e4b8e1bdade27a2da22515e9b0b8f17e5b5b9cd12537984ff81aa12d24d082a81f02f49d7e339edf74f6f53e6fa492d979cd105e70baff9e3ed157e4c38cffaf80608ddb7291f69019566e9d5beed6739329d7f1f869333c2dcb3d9e6e39ecc7af8d4dfe65866fd8e36db8a41b0e51e1eadcdd6a5214cd483c4c73d191094379ef1a824c6671e6560309f3fa3c303c7717e4982312cca9b1dd3948066fd2490023d189355e9c11815cab6e85ada57e523e1fc184b9e29796cd17c8c6d76082f7d762829dba2fc440f8495aa50f831bd667dec0284145c80f8a2bb6bb8c8b4b3ae9539a6443d48685ff831d5dcc4fcffd9d640fbc2f48b69c9e1856e677996b75f3a6dc125c7cde5872f0ee084065c7a68f2e0575d7c6872e9a105dddd2e3e04c0a5871f3de8e01280240460083098d71c06739a6ae49e8c0e1df84af0fbe9ce802cb4f0a402dd7d4a7da1095d82043ce9e67e000201785711824642143d43bae50a0cd880711854bf80d1ddf3f52f1342b795552dbafbbf6aebebc94b5377e3db2fb9bc80fd8284e9eb90ee7ee9a15f2f2dddede260d8d7ed975c1c8beef628ba277de5c7afec48b48b27e9c6f8c19707dd6cba6536bb8d6e997cf075c3d053b2b5f775c390873078f882071ad0b0a4f1304577ff155f5856135d7868eae681d65d2d0f417d8bbd78f06e1e5a70aeaf25e174d9410c2bdbe10b9cebd7de65872cba5faf1d9ef44ffb35f5eb5ad98be9e70e30ecb2c3102c5d76c8a1bb6596f3bee8b2437783815d74104237be568bbebf74adede5a2c393d743d15807b0f18c76d1c1e5a2039076d16146663965fed045871a5c72284377ab7eb8e47002971ca668971c98da6dcea3c883aff7611ad67c98862e38a60b8ea3ee6e677577479d5111b8181475441c18432e3850e1e1eb81348f348f2e38342dd3256b5d2e37b0e8ce588aa2286f24e9ee59a5f3ffb3f7c83dd0d65fb237e698dabebadcb0e1ac710669171b4ebafbc5796cf0e1edbb5ff36399907bb00963611ccfd8869ee537e3985239236bb62ff26618c6decbf76b31500b5450c210495c0ebafba75d66848148055654fbb766c5299ff655d9eb35657ebc642df89a556ab16592e12b632be6d1be6eb197fd5ef9f12b3f7ee5c74c327c89e1f87a31c9f0beea8bb6d2d733a118835fed4b7c8563bd34311c5ff9f10bccf9f592d5c4577e7cfb5e184bf1167be5c736f9f1a49e1fe7c736da85c602ba97d070a101a4bb8e373b7e8aaf0726cd17a94ba42edb17b9cc507291310417194980a0ec11a9cbcbd78a0f8445eaf2449aefbf9dd5ff44eaf2f07d51a499f649a72f5ac79f6f3cf78f64963ede2d5b91e6cfb76a1fa4323bf3d3f1d29521edabcf03c62e3862ec9e0374774ffee72aaf1c6732f071a64fcbe158dfbf52984cb558fe8d81ddbe887ba224c22275f98cf258eb12a9ebfeac1428dba2faa251f8f7a87b19800b8a4ddbe0e0e4b46c124988e9679518bf28845205171429b048337e9b7c8934bff2276ffe6bfbfa126916697e752b432a5b6739a335c9c5526c5f534a49d42433334282b80cd3a43159f6432ca46b94653fe4ee5e930cc099267d756106324899a049102101aadda874d02926c29e251d43684660041000002311003048281a8ec6c311c980526eb70d14000275ba78985099a94912c514428610620000000000000000236a04a00f4da19e635e841852b470772df4109218926ed8ea927039c168548507066047b82d7a747a600295edd01c7b55a7a53e0c735fe06c51c39ce7017fab1565ad040c8387d59dca5dd4a58a1ba8a6d800a6e911e1ef1149000978ae7775381016ab541ae667749d2b1bff14afb07f0aaadc8aa2ebf016c9917093b777d3aa99e69b9ac5279c43c7e37c1d6b50f281085716582abe678f68a408565fa2ffeb806d02fcff7a4deda7da15817c9d26e78f23a5c682565efa6b4556d923489c7133033eb7444b9b198f3b25c93d3edf1e2f415ac5903c7045a29a2e82a843f9bc32507fc17bdc0fbef093a4e5383274ee3853962199aeaae70497e3d59326a7e84cef52898bc3c8f950d9812a5bbbbe19139ccb54f5c9d7a8ca96d01a8dd2e4d9b0f94d8ccafc5d23abbaf832f8c9390f0562a808a6ce753962b27f74d40a0a5021dc845d9642fdfb1864e8b0fc6acb0425106fe48187fe1ca3b4751ebf8deb72706191849e4cdde49b7e96a3012526fa9e9cc1201b740034da6b99e9bf8ddff98ee4f2ffc23b99716aa067a62cc21d33313862d6f91533a036fe4ed3a3098f74f2533d25c49ad0c1b6adae8a426601f846addcf11a0059f6d050b4fbe7f621d33e2facc2a89023bc8dfa045df939799812ed2981677f03aa52e741608c5c3f003a8151d5dadae26d6443d41147077ff2ae19a43ac36d7a6f6b50ae5db32842ca80c28a5b61cc592af6a57f8949d20537b7ae2f1f4db3388652891b8bf1d9e3509f62a4376190d0a331f9235654d21142c62a87ebea2fd5f904bb4a679f751f5e8fd865e875f9afa031e89fce95b2c22e803c4bee782163a1432ce6fd6472059c943283549c63fe0c0361ae508cc62dab4b73ad0c1e9803a61977038953d9084e29723de60e8426aaeaaa8b07e0cb80c2c2cdf3a31864370b0d4d7e1df649068559eaa156537aed24c16b72f0a823c1d522476b3d0d6a37c611525ceae43ae10bc929dafd83efbcb6b5b08d2d1e80026c1c202e7b929c6cde3db7871e7cc303e08581512d0323848b304153fdea1b8e98f382a06869401c9eb0c52c6258b1e0077c9aa9c9fd30e7895c3945b4daa771906f7944a3cc0685dab85bff21b38d21b8fa000c79ba4bc67088e9d3987d2454f5e6eaa916a1d24caab8b3fe145b096671ccf8fb4a6a9071d87da8718949373c47a0f9acbe583a55993396374c4ddf4a21d677ebad358f0c97fb7d2616152433655003c152b74fe2acf0c6141655fbe16e0b66616a5ebc9564ddfed271ccc2a31516cb3210af2186e98022df979efd84febd9dae723374ab38c2d0cdf6c7da9e436f708a2584d5cc2af93dbfb625532c226eb80569f832402c0d52b811111710e1b1e47c7f264666386d4c81cdd8a4248221e93643e43fb4a26330e4d4c7120f367136cf69699a74d07d9d6f82d1d711cdc0d2b065f4939f611bce3d17cb27f233db2323a727c73a50b6e4ab83e8753a899f5c60047eae4773f3ccec0e963a63aa81c0e7098786592960fc8eda186f0c23e1edbb4c3855ecfdfce4b8a93cb7f26926c76df8f468c41aab388e83eb25cb3ef2b8ade4e0e79e11fc5bb3aca0ba4f12b49e1ba28247830024e9d6f6f2fb26163330848c14c3550efcdc07a6d3a40742becf7b1f6e2834bd96e1cafaf782c7aa6a21241d40aba0a090cab193a45d8a05560108bcd6956791294a3ef97b422e86f715aaa4716e84393583a0b508d7c180d48cd70fa1e6ee06de09a4c308068ae56b4f18cf34668ea1bacd423d7309f705a85ed0211ca253f341f7274185eca24328a8eabf0cc4955e4f5d1ba65c0edbd4e06798994af5fca5a5a74ac133fa22d831404f5a4635a3453cd4ee13a4a3d9e208216d99bcfa4ab81a0370dc3ae1a59fdb0b30b6f0f2a32465ad410bf7e8c8677edf7b7c5180ace3a39ad36dc5b670f386dc8d6f516186ec0ac2c6d719c17b7f5916a33e92d5efcae971f7edaba0355f52159c6d12d2cdb9dd59bc8ea131425b31b395b1da7d0703e9ad9ecc5789f3f4f29ed94e2f8d247f14a8548ef9c8b91e0de048411caab47d4e65b65078cced53087e33be196d3cdccd7345dd698c10c21b831f7f6263a43794635c236bf7491888884e88cd0a9794216d87fb69c724d2aae65f489353a1ed9cb13fdbbe960341264e636e0660d2c587c6698c35e33881a98b783e4f7c31432b26fbdb65d751a133ec34d79b8811c58ca1c4640a8fa0b78ade51c7158a12fb2479509070ee44ad86aab6325bafb74e9f3adeebfca8b9c4635a9136189e89e44007f670b70f338b9715bdc1ce32583b0c56dff33aae3a51fbfb0be8e1dc30bd6bd737a596af1bc2c2a2c384cfc97d178004fcfade223ecdddd99f7f2a8be8e8d62f6d240d63e137fff6aa311c1e46dff461d042b0e8be12ad7e7f5eca17dbcf51898c66a524d05b63bede70d092e430c9b9ad4b5967c21aa58a59c4457c897c65eefcec7d69c46f004cb9b1bfb3d5a7972f7794e98b36b6ca3803aabb7f73bc7f7f5ece74540a71159fb9fbd029418d34dceddcebd4a410418f559ff6f02379a38947c64cfe3b9c0cde037462e796d5a9aff7c1325d4f1dd8580fa6ef8cc3ef4da92a323734dcad180450710d2438b832b49c9593ad6870e090f31453eb53248ae865b1f01a3f746354df6aa94647d827aee8f41547d50e7d5b391f3e7b03819f711aa17c53eea91cb3c3aaf9315ce79f25ddfd0e4e86c423b787fc9b3f6f0d5308a501cfd45f3f412265648ab02e5c91434c71eff453e9f28575d3d9348354ea24f4196dd99c1221aaae52d65373457a2524158873e4f347266dbaaefeb6c2f806e30edb9481384f32048e88e0167e6189b120f98071723f0b8027667fdbacfe5655926db60bc188b3fd10286360663c85a6adede76f6300ab3ac656a2db3a5ed7071266a89d794838815078e0d32eddf99e550e98e7a0221cf2092d0a35336059bebe590c3ca7822ccb29469789886af3850bf61edf331562f5e06f1a558280e75e7d9d3743ce01b5d235ca2564f811757394da1feac9649bfe93420210d65230e554a3dec02a41758a02b33a13ba8486a8ce5f8ab70b916c42020ad49902b4b94396b7196078ba3b303ee8ab749e48cd34faae4142b8eceb9adfaa9e7b40300f6247caa7880fb6ed391ea013a8eda0a880769a48aa86917c9ca86ef90686d41bfabcd1a13343432726282223e33daa35ee11991dcab0160c85b8d7e87e27fe80befc67d39e6058cc0235aad35cd6e3185d840515d4d911057e6b7670e9853c5232956da7a2626452a3d8b85bc54fbe650fc6e7e085eadcf76751f23994894be700152270f84db5762595cb4b57e48294d72147bb47cb29eca0149f751f2d5aee6c0b8650428b6dc65df8af4a002dff048734c798cb82c54c5578b3fdd3074153caa7330d3b6283e593ebdef0710e26ad58844a79108119b3638b2556345fc43d2f98e725a37ee8f2f6a3177f887d39d271270a433ddeab90bf6748d20b6c1a752900e11c37ad430ec9f8b7da420ead833b5bb86316c5997d4f3e9975ee983ba60a5b6a9f9acc679945ea3a9fce9b5aa326a2683c9d71833a6b9cbca4e140c40e91cbbdcf032dd7d954beaa705afc5ebb0ff8c8aedbe067fd53d2fe43e59633eeb0c8b7a089f7023018b5b5f85e4a8593cba506759ad27b3223e670a4a0740c128223e34147e412037855168ea4e0e74c33bca351989b1b44771af565a74fbc2fe17077eeb1b2c3023f46476b933a9c885562e870d7d5aae793bbe6ef7b4a6421b92c4e0ba7b72e525b6dcf94b28d348cb207d1f2d9f787b545f854002161e7314bdcaf028fce63cde2991a2ec09337d4989bb9d2f92afc3e66bc217e008a8129876a01ae0dea43076c4f2f777e0af58d667104603271de53cac53cb6826500f81393ab8be9468ed881417d0060080bbf08003e2634f161a57b54058ec1d028acfc4153eda79ca0da8416eb44df0f478d16816887479538d74b07d9c8ec7528c4ce13451d66ab12811dbde8ed376ec536ee7812556b24fb6b773c784528a5c85283963a2dfec0c3e2fd7166c7c5b84bf93473ed7f14783e278c145519c035dabb29f8d1c32750abd33276adb5df4cc58179b3f0c0f978cfc4f936d009326222cb7de1a0e4c717d9f8b366e71e07a0ad17a4d2ec7a7c5ef39f405a2548d9e0a078a16a0c5b83b1e0c77350bc5c69c83442a7c105b2c215cbaad743ec193ea07951abfda48d7b190b28dae2abdb3f298b65f556958b63ffe21f7752f3be9bd7bbbd179dbcb8705c6884117654e4252e8fa5a8d62204bb2031b7a7290bd3825fc07bd35e86788623e5e7ce40fc82d2e299c20b51c157f14a6152c2c80860378232747f1cfdb300a5022720fa8b467897393a42f31fefa0ffe6c3832200949991253de1aaf13f92f093af4c213425e90025941359f8ffe1b7ae043508ced2b417e7114c2e986b21854a004bdc9c269481bbb682380ed663a1c1c8a3c4aab8266d72cc0b83c0a55652b2df6c03b41f36ed73f68fa9f4ebb193a9cafaa8527dacb77fb38cb307abe844ba2d34b1a0d732b80702da7975c6fce677c98e4d28c4bb7acfe65c08148195d556008f16def3bee4b3f2356ad8a019016b93c462a48be1bcb102887feb863b77b1e29d7538d40a82f2c444bc079ad200b4fdf91d9201c033782e6049b4a69dcbb65f40cab692b098945c533633164c7e96e0f19afbf1d953a07feb2e2f672e2ddb7177a0cc5990ecaa1a75318cf42899bd3e6142d54c739dc71cde449242da21c997b2c308e1be9ec9f2bcabefcfcc8866fd7938b9185a1b7c6afd1f7b1fb8517f01478e7835f9cceb7e8accc8116cec4987e168c7d678348d81257d506878ba9e9881b6e1f7e838f8416c878c7b74887d2ce1a168bedc94fd2ec6bf8e64391088937fc02fc4f275316d0bce834a880127cbe4f7dc8ca571dbc81096316a4b4596340637bc032da9050a8a9e4ad81f16d051d11bbe0c2f2eeb148c75be1b4f57ad5e213870b5803268b2f51f00b7b50336104a747effbc8453b9e94831191cc80e09e55050dee113daa37263a0cab76831f3d0329d5cf019b52269f4b11032b687ffaea150cdb150934242d3ec01a10da9b8594655b2482c1db6d00522c5501d458057a8456cc1b8746caf3600bec6ae74939fed979e04d0445716aab7dc064acefb973f4642ee724e7a9662243d0e08e0a147aa261e82c49032835d113ddab791cd6870dadf82b725857c05ea6d0b4143643d713fa4e788dac371f0c286d798bdb97b1e02ed9aa08e3f2c95d9f38cd8a5f3675c29b2ce81a5db38f8998ddbd88244cd13131eb647e2e3db0aca4e4405cf35c7ad87c5e34a045c6074e0fc02ec09f529a1a67ec89c8743783ef1930fa310485f7e12a730e5ba258eae367e9c8d50cf602e03b4d4ccc86e5eeecc5161226b0712b4514275ee5e44aec13fb027730b9e0e8c7ad2c4307920fcb831bb17df7698fdf65e58cfe3605dbe064e7f5c83e6e7adf44993891ca2b7d11cbee93e23828fe2e43798847fb5b2c3d0ffef74db161f9428c1ab8dc44b4703f9abaca2785e59511aa098f6dbfb9b8c8443ee5c0a1a6d1096a727ee1c87331930728770513f709a8c0a1ac98f0ec56f23f3920c6f220b54014aa2c6420c6ab13e0efa7ab875ec354d978ac0a02412007684f9ba4788a0408305c13af65ff192beccd30b5f68f9dbd66130a3cf949e5d1fd928465178eccc0ad4301492dc1d61f402e950346315d805c0f1a7f91047ddfe40bbaa3429540308b90733a60ea5266b6c320abe602f64c079a2e63794d41d29dc2f9b0ba2b2bb7c742730e3d13f2b52a601e3056707e21791873fc23fae8c4669359d393819e59b7c90f980b2d01f11c1766b34cfbecfd10f5ddffaf2476d29e286ef08d1d0d2ae6c56172386b8ddd2d32c74461cd69d4064ee0cf7cf5b8f8f7ef93927413dab0d19c8869654bd59b1ae699c26742ac97bb5c02e6acac75de558be6c6dca76934e3029f02dc4f7fc1c9f04c5084bf85aec69d018623231119dc2762ead1a71286872f5816ff21ee2265460953b3973e4ea91ad5590cbe7c25121273d03548cc63065b13ed17d774caec71c11271645530ba21431cefc0888787ad11200e24b6694cda6f8e3c813f323ab129304e08e75c452d4086409405fa29bf7e56e58347f82a9ae22cccf277f8cf06897d89da1cda383488f05ac201e6730dca48cd5fadfb7ac077e3b4962be684f46de59ad4a027da75a037138c27fbed9878dc1c70e3036e295a4712cd30b4cfac1163502e5bd443ee1df394b44a11c6bf3905c20492e2098846b4c5d636e09b8d43ad108a15c41aedbac27e1662ef24bc6b3abd32d3f61d6c5bd8ac90ba9a817a7b39444a3a4fac751fba3b0d5c05a9212e45f387f688205882ece68dabb2b45d41acd8a972ebb9ed098ce60136624f02776652326d944cf5a2ac8e658723258b4747f8b892424f96cb1f5a8f7ed51996f9827a24c03d12037f2e347f27f690e33ee13a6ca61e0ce4c321b3907ff91319b7132e64899cd4646c9cf005068cdcdff1506c41bbbfb8aa0b399069fbe9fec4e6938e81261680937af79a60bb8ccb136e7fe16e811c362bba603661390a0829f51e09b7c81fa7cf437d50db1482c84525286fce7d92ce4ae084eed355b24116138bb5948e744b2356b9b53f8db44d17784b2febc0770c3fc50fd2082415e061479ec5171f9207477146b3494945b7435ce8840d5739595652e25b7f8fcc909d5d3ec142a81cdb8262e4aa9ccaa50894670488082b705f0831bbc85f9c7a8195a29e2c2a685e26dba781cab2fbdf69467ef165fc1d6385dbef4a38614e6586d543502c809a7e537d6dbd148a41288d67efeaa482715d7c0facae80836864ce7ad74ff5f9bf7caf9fc65dc7f23b5dc77d0f3335d70fada0380da0172e58162ff1c02c0af277e6d41099a4d6126560a7606b26bc864d73d3591a80a1001ad92b38615c5cda0eb3b55be82231734a4ad0bdcbeefd8d37544b5d671e76e848c06eb6b8580e8f857d158c4ce1c13f69e8e78353a6afc046dd0beb4b5541765312bdfbec1fae8988e7597e68279a48359429fb41528ae70beac17bef97b8695025d808b8298be43bab5c5aa9ccd8c336379b3d0ee6520b781a8cba2745f0106d8886e0a21ffc7365f0d832d1e35bb6fd23fe7ecf2382fee204f8dd70cfbbb1e475e5d65cad12f32c4225e4b50b6f21760ae5386360a05ac110013bd0601da9c4774968dfa26186275399af309c7be3114e84a0228a1b0014ee5e19e13daab1356c00a5f5dab1c5daa6b94b707600969bb00d5368ce72d4283607959831f7b0a061e631ec3412a3e0b94e6ffe365ac7bb84014b856cc34ea96886521abd9a8a5b0e50255dc82b46aa0efb952e5445da6bbdb12d3d5bac6192df9f2dfd326883bfca74f6aba28f8c7d5ed6426127a880f2899f91e45f2c180fe0ce5ce2632cbe19249f680b8869a04d6eadcd50f3d2bae1de55a0bed029a493d8c520ed6e52a76884e4d0ceb2bbc063cdfa842325374a7d04c2f96f85a8796ee4b6e438b0c2b9a7e61583f476aee31bc04fe73512080297d1061be34edfbcf606a09dfd908333f6fe227fc3284532df6e4917c9b0a7ad74b414feca19872158587e010963c83de8ca72768de1e9ea19a053022d9e461a6e08e8008e95610e7b9577cc0e770b99a70255b6fb4bd196950be1a44ce0610e3f281ac54a15ff7e59f460a4ee9e8cd26db5e97ad7a19fe119f72da60fc5b6cb2c2f7a83aef94387fece4570590a1524fe165a88abc5176df97df2aa729c4ec7f6ef3c3fdf21979452d2181c3c491a0fd9eb0d9fe7b58ee4cafba2f5c7170303ccc51d842641e40939699cc64e30c4ea7bc3a9f12a9a770d0a028f3b2621d0d316e428aa530e7649c57dd3c5cd257815809293ddf9353e4fda338e04a6a972c34b182dd73255352db3b8f21c9e3ae27863e62f4b3598750f052891f4acd6a44b77eb0b03b3da7cb0da6c6380396b43742c9dc4e19d979762281ab125711345afe7fec2cd1e6482e353e7faa09b9c86a350b4e131d88f02f67452366a802e47326bb39c0a32473d33d91be8a463c456be5bfdbbc78a98799fb027bf156dc9b3e8bf11052d2314fa149e95fb8c49a598771361978c29bb8fec83637a6e3a096ba3950d6bf3761f5af4a239984ad445eec39c7dbddd67b859d2fc064607dbad525ef578f8fca440509523cb9c9c97103c8f1ab69d92ecfa82f80cdb58a97d040af5547d7fe23cd989b4a78702969217e2d0629aedfef07653b10394f316287db8b50e757e8477e7894be44b4bc0790e9b17d5b68439a57033a69eae897e50ec8de36ffcb4b4f13ab8cddea5f518ae1f3509f190851b34cd33f9aae051919765d42663eb10f3ec77f6ba3bb9127445950778bc124eef9a6384de4acde3cdedbf2a02e5084bb29762be69714a60638f6b57e9784fcef4c6690d174bfe13efc3f936a92a6626c9828c4005b10867b5b98df9df25d2711757fc98e4be99a7b85b439e9569e48bcc87a04c6f656444f3415ab35b8a10d702884b3a5ba9417b31717147f880a51c03d77843e7a3894c0f0b419c9a087088c3d774a34b83c541eb798dcbf46bbc604ac40cfc2446fb8ae6807fbc8f59e3f7ef776843ba847b2da9078893994101f217ae1cff9b4ccb91e6d4649e83398070fe89d5b687405e080d1467037623b27360233a72971cb408517c1a49f0345d3a109f8f83f410d707cc083e4dde94b48dc59f1094f1a52820880cc9f0bca1dcedaca341e07f12220fddd8c089277c54ba73a2b07ece40bf67062ea64221882796404d89f444d52133740e63e9f4f70bbb04087b99796ff8a4279c30c6d1e52210dedc2978c79b728881298511cefee399adacdefbd83872aa3231b0386fef145cd44f1dfa931d33132c6b5462f7e608a649741c23f976d9a271a72b207cfb4b99c457f960f4fa365e35efb6060db03a65b446f12a03a26597d179b87e763fbbe93f2464acb9293d10af9961c23a67a93803e0132d24211f67535d2977531fe21d77f8ed8e63c43869a9b3330e87fec20c37dce8f800b2e81619e645eeb66242db51f3ca7724b6d7f06fdd2bb4fc609c8a04c9cb172d0ba7156dcaab83716629530cebe9a432c5a7bd630f9d391d6ec13f5eb51d684b65d798b2d513748414a0d71a6a31796ece64e096fa2b4afa7ecf4f361917b1518aa4de789e62a36eace11338390505d0b35d56833559eb387ef1c6de8dfd771d2c4386306aaabb53afab9809b35f36f022f3813febe619631046d30214c965c3a348e27a94a19e57bf1b58f0278a4755705a5f2ca02fe657849310abfc7a76f330a285758df280ae3bfd62f520bc1dd8b3a0009ab06b1f454987fd8645e37a7bb28cbd0b04b3c87d20580bbcac5c096601c5c62f90981b1696b924c9109458063e1a19d7b03e303cd7ff343b813790db28f6fc60bd19b65cdca0143e60389279eb07750970528dd2cfba7bc64ce00943b04ed3afff85512cd9a337fa6883f1787b0265714302e127c48154fe448de3673142818f5e0a98e84af0929333a8811ddbd875ca8fc44b7b136e49b02c1b477fe372f5fdea0a7c3489ef117d0063719c3be330bee5a368495cf482482626004bd230cfcc5e4b3b63d5220483e6048538a80b02da1c2b60cf34daca121e12e85dedf73bdb1f6430c4499ffa7d3a6f195e5b18c2b7ed0d7a9eb3c8101647bede6b247891f8cf6548682584564354a5b0dabe09fa8571b01a33a8907b00fbdc03f0db5f389a751c7a60f41c33b57a08f7e61fab2a3cb920fa8eba2e7ed728fcc0ad93653b785c69fe20eb0dc15230793e48e1bc0c282453c47e39ff742c4069cb25c23b61bf8ebe0de119ca2277b4e281e18224647744c2f2698c40f48255e853f58dd849729e4e8ea2bdcb0748227620e9a434aa5684325a51671fcab271f7a3d050183f9bff51504e7b5f5dcc1b687673a0750f9170616a8f4b1f43a8264b303646770d1e603c100b95ed83fad83cc7c94da040ccd02f9f3d06f3a74745d977b5608d3734589b126675542e10d92f6c6e724d3fab5da880ed8df04f118f8fc3e43d8f274d9a08c8f810c5be505c77d263de089a052759c84a510e098e647c900a03896b6c9d0423b339d2f1e178e0778bab98f5f568b1c9611fa91f9d75cfdbc6636642371b29b788c0ae7660151c15ad1b809e5c07f498678739b6fea0fe7e89b5b1d279afc312b4013f19c148469e4f342e162fb4685be8484d653061de84ec91aa719692701a233993238463ccf9800aa8737e83d31f4dedbd90c3f3e03b026641c4272a00c135ab408891313d5421d12318959825bee75aeeb98ba2e0bb426ecf9eda6b1f8f30692f4d40b318f5dd41d8f5f112a54226432673afee1d06a468fe5c3b0146450aca654a2bcc31e72cc81de290569387da1b9ba07f65033227ffec94532e5b5900c11970ceb04e3c3a0563395e693ea4f94117dde8d118eba0a5b12b343339e7034843d91b0e784dd2b15f8a9d6db0c78b6e81cd5ae07ba0dd752859edfa2b30a1b3506867bcb5b0ac10b9e77bd3bdfe9b5cd9cad65b799d29e01bc5a2221fbc02512464f0196851a7c32c2cc56a4e194d7106259a64ee263ca04984e739bb9995a235bd0b2ca5cc0241dc5c2b2ec1ef6c36d43f522dd7f669c9c4b5dd2c8671dc4910e52f69069a5beb5ab47582cc328796a11589e336dd15e9d2b0a7ba44177fce448f390eb62d78bc8f7ed99027d4ce849e067f1e4c77c66a9ed3f890d776167a2d2b6e16a94b9f827e4c16430ee479ef964f749d6075d0a4e6f1e8ed9f378c991b67d3a43c2de288da17ae36ac404f31036254af920fb74714749ea2bb65f757f926325424269ef342c64110e646e9eeb680f9b47bdde73d078a9cf888be0b3d1579637ed7079b1bed09e32c9aa61b31224a4e296eefdf0b5c8de233f1be86d84da7fb9284d34e5c1473bc8e2757d9e1abf3cad8327ec9a4f03d34bf69649b7ab10d251581a6b7d0155d45c0953fed443fce6399767d9f41ffd3154b969abe374f6b1b2ce365547c22d0d5aff21fe8000e214e556c6283bcac64507033abf45f587cebe549524968577aab100e17bc0b2702b27585d40d08e183d67c2b8a37c76d13581d8e77d24d83c161e5f034d5e2cbc15e026963e2f64cf40e6391ffa293381f08216c3c5b5f114834021a27489ca8d0c9ffeccc4924a685b306a1814391b6a2a24b5d6425fdc34c79cd6f029cbde4cfb4c684c3b223640b46691a4a15337d4365ccff0c154a922dab4a1bcdf598553fa74767af2b545b24a9384cba5928f7268164c016be83b3ee90d02b62ab83332a29367262d83650020b295ce17a3ee9f71c2866f5c2877f7450a875d14fc95e03ca67c426c60993a28a24c157b976e9129cb05f3876f10aaef934cb7b9306f536fe5dc12e996227c05cac44173c53f5f01f03d0f57e038d656297c495eee333d120845b77c36a69c99cc436531dc4caa54725749d22573bec1c6a8c9b964040f6aa8d514ec48b8e8333800d76954a86174e31a20140b1c75de4bfdb7e70f49228e79757eb03ea263585446fabcdaff120b60163671a13f87d45a40a39c66f42f94c09ec8b3585e931108493502ec74d7909760a1f968ed415a93f9ecc5931a574f060ba945b48541e5f54c3e7909af6ca887f2e9b0a13208044af9e11bc0bed20a863e7efd45b73e4e94dc4772b60971c87c0505e2ac449c9f83df4ce1b3a6bf04c5b13909b0899b2d2b6ebdf858dd7e84c743c818f12e7cfd438389308e14a8f91e863878132b1ca2c70b90f25d71651c352dede2609daa7cd434d19d456a3abb4315e79fe9f81e6d96b28e15d4e8e6c49a93882a1229e4c0d2ac905cd3293d5dc0eb634810a812dbe50e4a921812ed1df6732201d2eb61b641bed765253f02b893cdbad58574a237c0fdf5c58ecacae679118a7856bc5b973baacd8ee6990e77f4ee3ba657363f8ce84c29a38930721d432220be7242ab988c45bc42f046a138bdab7880418f02d345813b81a6c7618ffb9e32e4685b6f8c105fc706dc5dcaf730ad8954b843c4f4b9118cfc7a4ed06adf2048c63290e23ba89c794f365f96194a48ba5a35226269d2f62ef4536d497b39db50a493c9ba270d42e2a19d2dcb71498a4aac84e1c7b20ecb60aa7ec244244b5a8e4fb9b8ff24f578b978c7192ca8f177342cf21509cd0674a28299b948f4f03ad7d2cc6230bda2e55ceca214c84481e5a03eb109945abd16e89c98b458a6df4f64e049527aee15e213bc275716a4418c8ec6b6d668f71d16ef874c2985cfcbc62f65190f87e0c2b8e7963e0355e44018bdc9d2df1afa3a7eb012ecf6be046833c2aa083a639afb76b8a62f41777403e2d41d0d67929f3105e94d9a36d099d8806f7969e3fb332b67ecd6530a35ba060d9e1d60e104cbe06ac13ef0816311d08d030140840252967ed8f3b710eb4de7df6cfcc06f4afb476213be562ff8d3dee98ef1f312c80bab244d935c1cdc73596ec1789a1f25afa9bcb7242c83e96120c1036a63624586b68d58402ddcbb6317c70445b94c10a4eca946f4e6f15fa359e21f1cdb62ffcc820eb15fa1f0ff580ceee42586fd078daa0962c81af8840b09b63656c05a788ee8f0ad70172784457f7a31b6e40dd4660cc89229c7101a797d9a8edcf5c0d41fe80824cf76246c8c03d00e6df3225c1cabd5e81432434529f13962abcfa926e0660e63ec1338d56126fca008d9ad28f9acb2fb9c795a389f47344d3db74ced0c6682df376afd04f2c2cd909ce73d1ccc9f9fabc1606800f3dbe1f86b7c827a3de138339e1970688525f9392df3dcaa542d92e339555457d30599832024e9934088998e6b044296fcfc4554c0cb1e708aa90284c1d65421327048d476218f5ec6e35bcbcdd130fcedc7dbef20e13d6004fd06127d9b431fd056eecd004cfd7e19a2d75a3f8597b2db34f5475a5d29fe2b5ffbe482562c25843cbd8269a64fe2ac1d1a5ade04786a5cb22fc4db34eda2edefb16f12834dcbe3093859be3ed03810ce263c77bf2d096ed2a0be22f32bc011e6d3b4aa6e2a28cc5b5a2e95fe351025b64977fc4ba7d82883ccc1f84a81e101acb7dc90f557dc45d944b8b5b0c01721bbd19087e242e34658d5e8061a896e0c9065ad2d5f98b17a53c1c61ea69761db62a28e2c895dc1af1a7d01c1ddf5e0006e0ac2853bfa80d6d9ec12cdbe3c638c8adfa92f4634e7cc24f9b28b0d7b71ff47ff2f478dbaaf05e6ef3cf3be375682908c73765231de573c615b668ff3452be06aeb2771bcf5fff3dbf489d7ebca2afffe8d286c85bf317503eff0056e80fa0cb56f91223ca1e1bce2d983c3f474327d5ac8aea4fed9e14247d775dfe2120aa893e5dcda2e7866e1a11b6a29b2dfd79345f96dbd898da9ff19eb5caf35c2791abaf9b89d19ce4c6dd336e03bf99be12ca7a78ef1aec3a11550a61400b1887168a1251e3dabf3256e9b35e948b6f12ad7c8073c83454452cfb1dff421987e359b4f875812ef1e5ecbf2b8d9b91bef34b55e2a22693d11bf89aec7c2fdbbc8f70daa22ef3f42a3f6ac3acd86734c00e40e4c6536ec0e74bfe806bf2d54ea4ab4599e38741e0cae01254830cb3175ac755bcc0b107e1177809b7a6bc95805fc2cea5bd6b833cbc765ab16d704bbb39871fef06f37a3e2e05d773fc2ad3d4e57310b8e524be6aaae51b03c09095a8f98cbb79b579716dffbe929676e1d94e23ba9b9547d1e19c0fa576bd0422199e7b5a26cb04e08671a07e5e94f4023ae8c4720429f617429b916402248ef9197de2d21bed871a6b2d82b473ffa11d9353c36af369481d968d21afcebf2edfd2004c4f4acc80a45b3f32a8c9857b1f0b9aef2b576d6a251c373e719d4d8e71f34a3126f0999c57338f8a3173ec7afb19847d9118313a658710f72d160cd60f8b3eceaf8d871fcea04e1a15c98156c6930d5f62885dd61e719009beb5b1b339470a841ce66e9855406d5f513d8d6ae02d4861bfbaa5f96e04954fb5c435e00513ad183f2b8eb9f372c5fb842c8ba99b38b30cf0b8f6fc8e815138fc26693fd6e58c6c8c1a86bf47de49143f1f657fc96e3b55bbe81656f874b90d103a2ef06e54f00316514ccd21d92223706485d8adb12ddcbd13c482900c3775603ff22c05d92844dd3498c48ed2fc4008fe26e33c9f51c611f6eaab4a3dbc5e18b8c1d088793bf4e93b1dd51f44292e060a49b2345a01b90986864a073a98e0d605458901947c61c65130905bef5e35ec8c78646644fe5af490f05d26f92d81e80f32eff6123cc08e27700bdabdcd5d4127fc4e35e11194ae763353e4da7fdd16d84d059f9a73f269c56e4416371a5a60f7d512d3f23bb40b548c0f750bfb5e4334d1eddeccb5ed6856e7283e1ff61edf7e0754f5dae62884f54db2f5e846fd35ec3c9316c79b4e71f5672fd6340829929d6c49d66d41f81c0b46b064716a7ff83cddf34889de3fc45ff66e7702582e58773f51889456b362b36a2d99456cba7955bacbff0f5097cfe38703acc4f15ba76d37983bcd7df5c4aab373f2f05beaaa1f5618289bf74b55f0e5b11acb19a2a094db801e103b49b0ef8cfa4cc30b1e93a61b7ffe5a71cb1eaf790ddbd97ae04cf1835d687133f6ec2f7c3cf465eae1c9d437e0c4db523332616c82a491827d29b05504ab5f85662ee0dfb8eea05adde9a005edec689e3fb8398820eba2a41ca64f3bde5fbbf162075035e80a8813c34cdee0b9a41c7e4af8a5f834ef1264efb3825b1997b8159b5d51cb998746f79cf8c5c929c9fda0e0010fc9f63153a6ba0536790e931be2dec86c1b49bf3a5830cfa168ceb6652da12d58b14ee87e758d13f5aecf32c78e9fd2a6323eed8e9ea7b1be9be3be08295737fc759e1ec5b8532d38be0cb70ffa816d5946afea601b6716f189e0d976be62531e7fa3ebdfc91614873e513f0b6845557902a0dedc51e83bc858a35a3c6cb8ed910f812b38a259df693219b73c8de9baa913a36078c1a0e4132fe034cc0dc3ce70f622c5b08cfd52ab148fb885ebda6a9d58fc0293d505b123f76ea6d700dfe33823e5dc45775571356085fbcb19e94f3de4730eecf9be1c92d9c5df687e3e4a5bb9077d8797e70c7e155379098ef654697976378cc8e73961a018a86afeecbfea3383efd1da39a5daad68d67ac847df7e3b28f4a599f7d86482671c5926fba47b5d7759390b9fa96b178e346e041a936e0b4f0d042421eb59a02d75048f2b40f3d117604840737795c96471a3f109a78528d2a394c8df8640c3f88dc2b5decf65e0df07d713a81373589ebe12a6026c23d362948d13296e43a037016bda69d02df0320f3f4f8bf9bf8c86b1e0395309fdeb860121bf7d1673ca31d35c3da18cb4dad3c973aafe557e39790988319c65da522c533a09bf60825b192e22cc9e7f96ceb87007323fcd5145cdbfa7971fcf47265087e31e4796bd0f3b5435e1adf361c74ca7392586b5ca10b510735251d842bcb06382237f60f93acd2e108c3752489f998dcbeed4ce4953bf5b009d8379e37a975c2e5175c9c75edd0383205d0574ce3ebc03141fe51c91c75478a02dbe42834c7907444a5aad9f459123593dc0898dd961bf84d770dd404677dccb18a05bf8df98c5e380392015735db77200bce7746e676e7e2741b998d7483b6ecd3adbf1e3d6cd3853e50976819f27ac794642299383506bcf24bb3baf4e0548e9e99a70dc233032bac0341f3fc3f94c9717599095b54083b2c572e8399e125654ea9596a2f174beac7cdd6fe9e5bee749946e53a81cfac36570a359ff0b8fee8550ca38bb34decc5b1daf40e16c388c3c5eef92c1f57f31fd16105e978c6fc4e60eaa15b00aff5487618611d0d0905957d183352e1345d647eb3d90c06a2080b9af910553bbe0860a3bf44185c40b0b3d45cb1f32b4c599a93a28b9a32b65f0c51857cca5d45388e7f31597cb16664f060c1609168487415188b2a0f01590d0b2739da4bcd403700e59d1c5ab79198562490f44bc829b9efbd1db5c1c3da2ad72fbd21b103705048e6094ab1c312f8a022c7f549d3670138a63ab0369041e0b779e34a01ae0711f44c165d757704cc36e29b9874f918f3043d9dc426c907a6e0f8bcb6a8970f0683ba3caf8e5b014d2b350aafd21fece09b2916154c475306b0268b01effd391010b2872cb11e9a1e28364daa63bbbf49bed9c436a05b000a38e77d2258e5f6a87976229b4fe533c274f57fd285883c7b6cbc78a7a0be0a8293d228d87b7549dd9dddbc86867e098c2aa7d5c955c116588b4466737fd630b0bad1a01684cbc0ab8b5a944f792ebafe16264f5e8f4f4d532b79c5c7a3c03dd7f06900c1b05132511787ff470ead0fdedca5f43d63ce27973a14e70fd1f9ec3288f3082106a29481dfa48cf08890cfd6d0c9605b28e38893473c28d5504c66f9a33bbbe7c7157be0b224560e2b707402b9d8d972871454d100fa43d71ce654757c2ecc7f36b51ad23e525e4a8f390e4b417c04ec3f26dc5091ec4a9fc2365ab8ddaa702812f74945f2571ce331dceb73f5a904096e1c70a885ebd093faf34495eee6fcf49014231b31af40cd7f791f2ad2115e3f194c0d3d7cafc4d8b7559152cb3151036f507b2514ef9dcf5ab1fdfcd79eb712cf3c38edc7f3aeb96588959eb67d4f981f33a1b0121f37f3fbd205f1566b89ba52befc317f327a2ffd5eb82a7b32eb96d9b1df7bb415640e6f99fc6137b396f2a63265ab3f106cb4ab0bacf1ee0e9635612e208088c559f77688df261551525fbffad1098f6f4fd181711a9df645f43d7e5065ee10989ec5ff1b7e5232cf8ebd523e233fcc3c99a9cfe7d8c16521bd4a16a67fbf845af30b8ec3616960362e9818d0561ff66fbcd35edf840a8ce5932b63ddb1b4efa0ff6fa6a96f538b375899bf363a3148cc9e3f9b7d6761d52f4c80d364cf35cd3ce638be46ad8d46c85bbf4ad19767707903fbb456bf4fa0f05b9e56be1e44210ff2118cf379bbdf8775d8d708d75f48185a728abd12cf2627b9e4251793cbdf1f299c7ce3817b8fcf847b80d539a16d1a2863bc6778b937f687699b70267fdeb9eb92dfbefcd97460f68c0047c93410dc2250fb1ff5b8ef175d2ad6bcb7755105108b5f99719377f7bd1683980793edb0be1e2e74673084381d2a9a37eaade860e1eeeebd8332af52e43087955c1a1538c7860a517947915f0ca60ed8fe2c24e969743241eeaeb569efed296dd296c026017dd76625334b434add133bcc08aecfd0bfbd4ac851a722735e8158c1f5c6ba05170f7d716cc3dafcb4bbd642bfb7baba3c3ef40068f00d26f3073f984aae918b3bb3a463b707a32e711d51a0827fe4a1ff787b437c66da01f0bebdff87ef6b207e15820fa36c8198824f4f8e5573b0c0342cce371318dc4364c05568b17bd8fc0c14de7f2bae85e9e839d0f97695adaa54ca2bc08150e8f2458fec08b5f64d9fdccd5a165df6b5f3f9a1ff63aa15b5b19b39fb86146524b3c0ce8776f8c38f20d384ada943af0b34cfe3ff3d10864a2a8fd683afa3a8eade8bf5b0551550b6877bc24ee1a58088c49aaabf1004c5ff41c0dfdd97eacdc1722f36cbd9a4892c6e76a5922435d8a5a7795219914dad7e1ca1c502019e1260c9015f18a1ead2ea30744785a624c6f65b08cc442f45d9fbf6a7747ebb72c4477e3b3740f9277559ae8d98a97bfc5d0e720fdff671526f6c5344cc2bf1603a3708bb85d7ef818eefc3e885ff21bfd1321c8228df096abccec203c69a2b7495857ff71a4aa82489b133f3741fe5930e6b250345ca93914a41578b19bcd0c49ed26b37dd8578163f1a88f68f327479496e3e36de8b6db52d3faf0722bc3b8badeb6e179a8ee9e7d74dc7df08df239b9f36d251fd7d8305e81cee6c0f2239dd1ab0208d11c6915ad1aabd20219ee1007063a64e5985ade73ca64c459e6148035eeab91473f6e7c57bad7f89c88655e5c16962071fe097c046e3db667bc9206516fcb524d63b53cd9e61cf3bf810ae20bd7390646ba8f61c0c107af0b92918052d7abf6f743a76343cc4db538e4a241b28722ea277a6348f202bbc228f60a16ba03cd1d96218f685de78c0e67dc89fcb2f4fde0b68f599f1398248f7ebf448611fbb7150b1bee6f88332e0321e2c9d53783ebba8e2e169d0607058d19f004cdba27a84b1b3c08fc87b9778fca281f71cd0336642bccdd7d8fc97da6146ecf9ac87af18bb9b74fb2d180c2fe5bf3e3ec2ff5b2db481f4732ca4023a9133bcf49a7807002365a701bb2e5427d9724939cfc088299e3ff5d84f9af0afc13ebd9d38bdfe56ece0f361bd39d09be05161af49769b8d7e83c3cf3cc40ea6ba8346304005602576c65233a3bd164bf8b270aa9f1e36cc39ba0cce762d3df1e678b5619bd81bd90cd2e275a315fb72a2030087e9a2da8f8c3c250f29ce0ae2e64be9ccce96dfaa9b7fee3d70b04d513cd6fbb46633990e70480cb20b6f3cfdb0490c28ef82c8bb16def28f8393a5b437633d1d34d2f1fcfca3dcd01f229299bfb792c3d001d6ed32ff8330a29e851ee62ca55024dccdb3044a02001eb4b486bea007455a0e006c04855b328e6d5eff6676ce475da04f3ba9fe776cfc6fb76c54d9d819e6b5de2ab23cc9702f3b08616f3e8aa50bdb09aecfdd95da32800a8e81c5883336dc415f21b30294747842719f1d38cb29780677e428f48a00d04185dd18d596dd60050f8e94ab8da62c089c9c544a98e7dcfc0768572c46254cd5b849836274302ee9dcd5e7d60b593307725beffb1830c6e41b27600bdacb26d74332b36bbdd6f70455bd570fee2480fdb0587fc7ad92eb328dd03bae3e45d9d016dfe0c0a21d143ed4654ef0214e175eaf17f08af65338c3b6f4b2f5ca16ab8fee8a3fe3f3e16e3d30c44babb56b93c38a1f532ef50b0ab912a6209e4cacfd41c6289d8e3db58b987277ef3365234f44a900b1f162e5ee988f6f4e641b28216096d414181cf2052b9a1d68ee4960ee962e31c73974132457104b0998a915988d7ca11a95de424de381330b539ab94ec6ee7d83b3576cc9b629288abb5da55df4f13a0fbef13a8f000fff2eb1940d57f118339b0beec98204e3d54ca5f3781a2c98dcda21b2356f945f3b84aed9a824b3f9a92b5856301452184f132816c04eb8cc907900ab9cb79f4e7431454185e6413170fba787898e53479aa9ac6360c1aa8716414dbf25203a35304173bcd9f7b0931e0d767443a60924045c8ebd738bc54e4340b851c32883f9a8a4bebe9a28878d396ab92933fc13abe2ead216fd6dbd524573374cab02ffcc66a2fbe3913dd4d42ccc970180803b7ade1c22786af2c108881ab058f5a201fbe2d08e402aa76ed8aad3a58dd87234ccfcc0672d4c9b0490f21fa5775d2118761882ee2b6f6f7c773399ec7157b206f6e92887616f930f986834586c15d37244fe05dd7bf2c0d9dab7f122d2d2b7563f81197577c1ba0d83a9c145f00670d4c78d4d81c0827722a8cd61b2ee39fa614d40d853ffc437c597c7e32f5855974d1e28ad94bbdff1d6c3ea68e9603ccab08f6f1ddf8d75e9a6f98ccfeb213dcce3a9d3dbb4cb077edaed2f733d88620f0e24d35dadbd4881dbfd37c38a787582977192ff73fdf720bd724f2637e068ae736ebd884e5da6b1c5a6be495b9c06fe18f4c6c55a010fdc146a8a3cfa46c0a45137ce8118154100e9a82b9a506f15948ff349dc480d7f18afb56f2fe9f66bacf69230bfb88a7c971042b5a9e6e8a3ea549e748966074bfb2205ed159385c987fe428a38f10bb655f60aa8ade6475ebaf5afd232535cbe0ab18932a8da9fd990eec04145c888602a30d77b642bba67b93f314d6b47dccf3c460e21fc300de745240327588ba2fba1a57a010f88599f7822d2ac4c4e324c57d74c078532bf96533c8124c1110cd1f9be0a8da8658406950395e39fd330b1369b3e733c96a416981622b554f77274fcae9b7cd3bd4e2026d67b25253d5184f2200b1b53c86470ff2aacc6cd934504ff5ce7d56b6fdd7f8ade0bfeedb239e4c511c404ddda11e6acb4dee3f2802b5f080572d1682a6f15357b2d691bcf1aeba762956f762b8d2593c312c25aeb4fc01d51e4efadbbbdd623ef58c99ffe18100898c18a7298fe27207e1533a11d5601ce8d68767e0c85d05eda97413311405dfa7f45624384ca9e2e69b07aa99c4c31f2985d03ec3bdea37686dfcf3c08ee7af3860526b24cdb06bdb02e7d25e4ebfa51b264ec43ef2bae0716956536881bffb730c61e58f3867799336debc15d7d1d5ccb657c183e796720abbf45b9744ec03cc07cd4e89141daab52cd4fc48e7a9865ceb17c5adcbd7713c4bbb027b5fe33ab7ebb90577cbaf46da3f855cc134b5c567799939d8a67c526cbffb8de7a18d8a1d84abf81a62bc3320dcc7c18d33ece83d5fd85b8af92310e412126735f7985ee420c3b18a413618869caa4578745abd8d370c1ba8079eadce564d443bc33bcfa67e297254f79755bd38e5c0e28324fb3ac2a01410cc96e37dd1accf447211883fa89def0e8bef5d92482d3d2b6c3d00081541a4f366da0ce3478d9126d0b1ec418e13c28f633c5f8879be53f63c4650988ff798e448e63cf5fd99937281394a121f8cd8c444a75222ed1b457942353a9e8e22d8fdcef23e8b78d94f319711b83b109142e6646b62c334d84a4da5bcb955b4b29ee5989b0e1d119e9b5d5ec88c7564f73ec0653dade4e84702798e2e1324b6ad2d2a9a2ee21c0eb6f885064f2422efe0f7673e7beff3e9ce00331e536a600b8a50a2820d46a85eba9b8a8cbb81f3fde61181db91636b41036dd075c9e82b9650b942c16e76812d9f38605901bfb1600337beb7ed6fed1798095f6bd992e5d936954971b8405fe1a63c4a61f9304599a46105c76a828f833740681efe7ce02471086d8f600fbe7799599834f892f5fc198a01f75f2ecb13325cae73d76580ba27f685be05d58d8e6b1238588d843282d12444d1af4038c6eeb21e7f44a748f33ca45e88f34326f1ecc513aad91fda6c5d5787ad247fe781082d3e8a61e7d4f5714ed81de6f8d4907b9f6ad272606d8f2f316e8d6a00359842a40951ceb432c1603ba01d5887010cd015e204fc7b003d3d055ad2938303770e25d41455d5112a7287b1a1be32f7923e0ef105532fee33c90224bedc6ee05820f9c1d203dc59feef5266706d7065699f63f0471fd72170e385923f43869a2ce382596c1c601d296fbf1436e751ab9a047cec41aebda5106d65486c2f6909ebb5ac18f9d76a51c80a2649f2be21754ccd8e52847b518e485b666acf77b18ea34f356618162e9a9628738b7539b2214f0b4a04ba6f75b6a93d44ef269f3374f8f70de4062adeced341202e18b0c47d46eb6179d8b052b0665804b0333412d87a577ce61e38312e7deca2693182dbe1ca0d30d5234dbf9cf96cb3dd2841977d4529b61742d95cd9c53983ef6c74956bfe9c4c4f243dad71396346307c754d2b2c2b6c2e29767eb07aaa1aaf81691fd26905de27103e90621e2eb0b8fedf849e35cad7784fa0ecd518de7209c341d8abe67b5dfbf93c562754db39b93bd3a2a3e28f667155ff6d8fd64c4aa1490f1863043eee9b6760840eaa5c3bafa5c2e49ab7267edcf609e114102e2a51d608ac7784b8f214833797f95b5d234d9491fc38c36cabc8c239da6edaf1e0359dbeb73a2e4e7bae0c4258564cbcc545354464daef3dcc44d13ae648ad360a5a83dff89372214c29eafde923bcbcf39a02f768a45b9c91eedeae4429f8d0d287545498e20a06bc9ab11f8b9a484856cad049d4d943caea4ae249187db0f9d89846c88022a3a65ed47dc70f84433846412a269e57fa8f855879d99fd8ec916f31e3db3d75921174aa341a558201f8d448b4c9711e653f371ea8165e20e245b4e9109c3c0acc704de6ac8efdda2ce14a2cb0fb9c290b1c97a1062362cd6be001e80c9b7834931d5ab99a0a18be892fe72f5999f064798467c6a3396c61285666950776e680023a5a54714bae3473ceb2a583d1a599941d7fb168026d475a2fbc1e5e1f0ee4c90f86caf522eb4e4f0acc82e8c0433e368a4c09699d782ca5c1be97d4209f6df0ca32e2b8cd6cc3301096eb3309ced64421ac9312fb34876e3c60e61181ca95d14ddc952269c7960aa13ff2b33f3f2ce6843e264633fad6b406a89ff3836b871af0e4989850bd65446493affe0a661f010277c378a2087ff889edacd052db886332ea22a38df2aac72117d755cab6cce1a911e64af4dc6e8c848133bbc4f5f015ada078fad7f7d9b2f907e0b56bc594716f4f7bf1b59a4b287b48d4d328d5e675d238d1952261999d7aeb0498ee7b370b6bceca5a39198113b2d6af63a10440eb0caeb2b3c62a821b27601f5845da21e7f9746000c17db6d54e5e89173885ee6be695aaa2d3db0bc5f042468104afe3258368726a24d2046934f42a291fda2f1f0cc10dbeca4f526bd7d835976229f27791bee000378c751becc86c72c2920d45eab89eae32a275cf2c4f5946cfa760be440bc22583c5e296fb5f337b983cf2fa5f33f9531641dfc56173a3a528c1e8c09b5201d92f20707c9b266dd0731facd3754695f5f11c72af7712ed39e41a9e3f4f1d7ccb621972b73c3e1d855fd0cb97770ef9c575187e7a006f8c5a8922fe0567eba692b644d53b92802b7038943894745e897aec2dea5c70e95cb5d575581c4994d087ad9ea1ed4768aaacfe78ced1150ac291ba842c88fba1bd787e6134418a5365a9ef601174700bd63b483c8f402164a4880bb878cb2b6d3502d6d65972301f9e62cdb8d630337edcb5c7c5cdf57b6176f9a0726818afcbaa7731ac724c0cbe513c23a5db451a7173b56f0861b214f85eb8ade25604133de29e75b353948254932d9076c79d8b036a7800258a32069b9324f6d7c27334d581901e404900b82c561d96fddadc40b0d040d88462972abac9611a69340a9edefe89cb1c3183ce030013a2e479bb86936ef83a9e68d68fbbecda97dcd9370180592384e81263c8433e36a6d29599213723eeb500d6eb09901a01a4eb92c265d5ccc2f01a304b2ce3de3f7e5f18481eb56a23ebe2d62a063e328b0f0f40df0bd29ef115eaa12153143e26fc4b467d31964b93e749e62a43a5dc3168298728b100b1b80ec6f8b218db07b6a6ed390bd8995f21525cee38962ac591ff9c36b94460e9a3cc488380238310435b5faf928e96d13349cf93d89d2520897ce80fcd194ae528ab782902297ae0f1b2ad16a220d7c6dc21a4d14a1c76e363c973e57ad9a0e60d548bd0206fb8c7b9039d13db8243ebdb00ee74439f7255bd1f4ec21d9cd0e0b6de57b464f1a7196425c1f18c5f541548494c41672b53671b950c252973d8e91b9e3cee09d9d7772270015423c13af1f5d5e26f3f405c842756b8cbc3d85dce19538290af85c553774188dbaf8131978094bef518610e9f7624fa8a84fd8a0278db74ccda9f7dafff5f9d9f237ea02dc5a29ab4b919f9528c393c3de9c164e7cb35ae32272beea0bef233962b32db0e0f16877e8ac823919351a400a1c24450013d0fb925b988fae829ae0e4970c10e9169ea475dfb2e5e6a64ddaa28f54e883ea317c13f57c468e05ecd4f4dff10815c7d3056a04b4b4fc73e0a0c9d1475cab1aca76f54a0e646f8b0735d7b4b6eb5ea0c0528940d31f22abea33e5062c858b8862aecd5bba846aaf1782c06f7738b365e70313ada02b18d54f1360c2263aec1406ab81ab5967e84297d973bc7e5c553bb0180c5ad7636405e370a1a47401cfa71ca718ce08cc01b7e37d55782ebb35bea97efdfcdf1aabdd8b5cc314668723014d488922e9b2c85acb294021740271d2d973b7e98022b973ebe6861c44512a6f7b9fe3ae4896267d0099d730c6074e37ad1c160b3ec77961ab073294e63a919cdc2f78bdba38f8aa6237e277a78007960b3e8996322c753481b8c822afd57a9d2c7663106a31161b80ebe55ce952927cd97c1f715e7da7089f78222323325d19772a3d96953f7eeea1d3a0b40e0fc13161cbb79c16a30951624a95ce5f1a52c2693a207f0bdf9ab9281db04a51b9d5c56b2fa0a29affd0d93d4899a33864d32465ea075d319df2ba953be59c4688fdda411f93da0f6d70ca2233827f906523a7bb9fc35e259d304b1935f45bbfdae89b04468fd7da7992ce611cd16a0a129cb1ecf2e30b6756600f00bb11ad9a333336c19b041282ce866dcdf33f97f01ce908ac3cae53ffab33411a6a87bc29ef3de3748c6c5e52492b9cef6e00997fb87bb3ae9b8e28aaf90b58eddfbcd2800e7084d529e64facf896379b75d5445002d0474673ca73af35f7b2337a999e0127711094fb97bf163cad4816e7297c8dce9f6f5058c45fd547366dd92def29cca68968f7986467d4b16d6f83862d4e4e7f5783aaa3db2aebb1e72d614caf8b4c4d315567f6979ba7e23ad9c0c52c04a4eacc14c78268962ae30eb1074702bfbe997d978f4e90e04e81a9346f17cd755bac0dfe3421bdcf3c76f496a6458f463310b9bd428251c83002b1a0e0a15132d5ce1045fdaa9f29e6a1acd705fad96f29b59a7c8793715d953533a24f38298e1fcb71dcff2c1cbd1efc1a68f7c40ebb1f1e59553d1bb37c89de78c9134a3c07decb4f195770e55b1bd580a124bb05791a403a47aab7affb2674791daa3b3118ba5dd460036470ac5b56d03b5e8d475b814e1328089fb0768c0dc5887d0e25afc63ca3be308d19aa07cd7029901dcc43b6cc0f951a2482032cf8c8df443fb896601360f6dcaa5bfb67576ce896199ba15b2dba4cb04d5aa7240a9ffb64b8380034436109cc791d688f0444d7b0c4b0388108f0e9cc88af3d6887ecfb3ad50702c895ab30c3c4a00d0d6b63b4710dc2ca2d9be693c1407c94adb52c9111661118200bc1f84df3dc80dc7f7fb356219543d3c4928665710d1c7799c9f527d19501addf47c29a60e876b845b70f9170ea13b4ade5283f6dbf02354397b17052eca2e57bd6c329be4ccebc7c5fcf13c1f61a7bdc2a88e20528565754e84ab1e0cd7ee0f5398b6844909f630271b887f9e30ec36f8a5eb4d00d7d2c39190e958b226c20d948e5504496943104b9fb99ef8a45d644ad15847c6a601977f66915b7142bd5310eb79321451fa669c6d017978b615ae7bcee1aafcb18fe6705f61575b8ca872a7bbe253bac4521454f29e2526c0d2c0ec74a23639ad83e0e4221065a5bb25f3d2ca3c9af50f825930cabdf2de45caa81cb12481b829ebfec8c6411a51467de95288f414abab9cf5522f181d3a81e7985029c337d29996d664e988b51d3c8a123ba42cac5dd4543cee78a73c289e2144f5382b7cf875079d3a98328c94e33394b37a46479702b4eb128732bc9956e6b8b243c5652632aa3f38a703308cd23f6103a0f96c9391c0f3ba3e5e9f5f47685455b4c15234e5a0e3cb260da68c47a1894330b7ec3d81273a40ea83aace035e68a9ee6f1cc4eac5c39084aaa8c8999a6a9e1fa57152d02eeaf8e10662233f71e8b90c782036d6ff777712a7b883583848093f716565686e6fe766a35e797f6070f0337f70d5be6e7d1d8c4171093310b636fd76130a6903c797eb0a005c9af212bacd1815daf0f9c777a0d388dcee719a289ecb1e2f5115b2954d01e2234f4c7928323f1d55e80d51b4297dd218f8293aab14c07515ad861f63d92ee8c970401030ffe6cbce41f34bb02cc72b9f1b4fb180147e2e62df55e8534f602f9621d239800ed35bf4ea1c92dfaf72d7d95adf0e64b91556e4e90df226a6e1e0093cd353ffe919910eb4e2a8a5c4029fbb29eaa1adaaeeff729f42ae45c922ad6d7c27e37904902ec0439853692811c6957ea5a61654438615aa6ae5070e114cacf170f0d5511bc3a52a214b6ee97505bad45db8d416e1efe0a1fd388aace07174163e1d67b78180555983b53aaa8b21cd8146647c58582e86327edaabeb101e8a2ce2a6793a35c0f062bf64a851b341905285cb2259c8efc19647a47c3c8f0f920af27f98a295ef08e10a233585c9f57d99c9e67d5fbb96f47310b8c429ddc4e94aa8e61b5f3a859e19f8cf92066b8e1724275d83a86573b39f707ec2ef5346c2f4c53873439abb14a5b524cf4f6c8cc6e6ad17435128a83c489b19dd4a062349addf582374e995e5b5692d783a4ed86953ec171bada22ca10c79e96c6ee5782e841274bf55138d3c725877b8f1379f235d0b13f2924f73741b96598b97b7d3e054d4d112197c08ccfc540ec5788c6f894cccf61dabb0cd92e220eb3f5ee3df26a8d42dccf6fe88b645a91e586cc0154a2c474d8aaf2596deae949efb8d5251ed424ead957107c6f440af1dfa49d6f72ca5b9494e49fff2bdb6f4b449f1c7e7b14a4165dcbc077f521214da4cfeca7ac8383c625bfd6d539f4fb3f6ab31acc7cc96a16a73f679460f99d827a806efb17d930a48fe54e9b18f3cfb94e64c4104bb42be94d7f5984d168a57789ca65c5dbc27acb948d11228231a71592a63c8107830413c4d67fbc05a729fa10749a106fed54b7435c0cfc626ce9f9263fd926e70402037ba325d5ce74940790f5472de23e6a50a30f299976fef0f58f0266f9b953f2ddb9ab75d2290ca18352da45b23767984f00c193d3ab4ec402ab87f2532b8955614cfdc9b01443e54ca2248a512e4e1a79e56983de5c209d6c377850641f1255913ca9b1e6fa146b66017b2fa514984e86cb098ee105b6b354282f3c2656c9fed7a0f0d5699d9a2f4b89e9091ecc9960cb49ed642d30f4d9b522950de4c09959b0a50e2c40404424c4d3e009c693edf3552b06b625b238ab862d600786bcdae727270902a97b5521b650665077fa14f3a4d9901fd4243bd7ca890ae82fc59061b8bde6a2e13a9806ea690b7cd0d5681e568f7203655f6824c0f2822a1c787acce99a6d40c42521c375853bafb7a384a59513a8f94398ae74e896607ed2b0748a9aab7cb14a25cd351b06fe1a55f1ea1187f5b299320b1e5b62350a7d3a81c3a47864bf997818ff41048ebc6687e830bf407df38c0715944acbfacfa1e59755e988547e1f835665c006ee417ee15e2e433ce65855e7d3e497ea73a01ec90033f559475d356f590ea00e003fe154253602cf41d59d2ea79fdb70d2bf89304af27deb740af81d61d0a9a25f3266ecac49fed5f3e36cefd6e9a9435a595e3a26261ebe863f791a2c7e82d3fbb51e39fdc70f78e7c618394befd5d3e810e399d5cfa2c0923937a8bf1e1bd274c356ff81c05d2ac6ef13ef72c12aa202384736c7c608f89c2df1b772c48ee4e84275e0cf54f81d4af1bc4685f2b4f350e59b64f12d93325c160a8af4693593f1c2efd0043c35ade79dcef95744d137a3eb556373f5831c838480ec40b80e77c486596bb834ed483e9951be30c6e081061bd927ced55479d5b74aef064eb13dc808947098e1fa9c9d3f06b6dabae209ca913b919944173214876f64e71fa17e669a17cfd6befde18c7c3a63466629256792adffcb7894059ae8960923e0903d75644ee6e5e89484c58c368dfaffd87725de2555b7615f78966594195a4c3dfbae0293b0401d7ce68b1b695c832b66f20d534c0cda89aebe589c8da148e7e067eb05d248113ac09c0944e42183e468af987407d5956972d7cc8369a3155f6eda986bcc8f00a5177b3dd79abe1d31f175e21c6a5ea4d068b697d938aa4a89f6cf93e1c023461834f755d407e3afe7941fca5693525bca8e5faab1789db73163da483b44fb3e6e3af547cbf35d9eedce34e1dda783ac6d98d2c9b2024f4a4c5a0683531939914a23de8a00b9575bc59c02cd0b32dc6da884f75d457bf7e3c56699e43326c545972c72bfeca24c6410dc924a83c07cbc0f4d2800e7df7d5354aaa0101e8019090710170aed0417b89576c595834d04967ef54822252341842f126a0dd0890ec50fa927837f2ddd9fbd57a0c69b08b846ad8f8b3db51409d15902e1a67b6ec310602e8c82cd30cf4c9ac1c4b19ccbc6049c189947a54abb99b074353255bee62586166a0bb8016a560300de158e702f2bddc2efca83444cb337e2e8b97412a7d8d014ce75981e1ef751028a3c8301a977512c82296d2c1b630d2b485fe00b175f9c3a73baaa4a15f22c3050dec52ee5c9a91a0217f6b406192044c1c549638fe3ead60ad0f4f54e13432a9053096776b8076021505990108e42ca92245577f510f4eef3d600356082310f88bedbc1c3715cdb4f7ffede90980428aaa0fc211cf19ca66f90d4150d85c07bdd87361b1776af9465e73e6b7032d3d17621b72534f204f75aed0300b9d18e99894b1808bc3f38a4c397f5485c6a1adb87074d26e9b5ea6fd7d1e9014bb8ecd15a24430483a6dde13c582536add2524488c428c7ee16b342ca9891676943c94b0a025df56eaf844849205a179bce66d2da0dfe655e238aea77d6a448e23a80ada3965de1b1111e1dd32a1711018e3271e37c5133f2dcb43cade221fdbbc164202100e7a3aff67defee61f53340d512fef460f8174aa30b451846e78a9ae1e7dcd1c7fbcd94039e5831ac6d2a2cddb65b0c8d3056d6305d786e4e3f536cc765e693ea66158bd4df5e9a9f583a8605e05e168a9e01f83e58866ac26f06a557c9b59deb88519d5ae63153b5006082e2c14e7159b65df18cfe63de51dcf16f1c8441b8310d92f2dec59c17fc053a98e61a96627e8e1ca90ccbf2419d88ecb5be58dc83f3ff3d926f40aceb605806cfe1f035a80f72115487a2e7d5f818bf3b7fb4054d4efcffc348bf876ddf9174cf933788be0bb327b2f57cb3ec2a76fec39b84ab693a03039c57fee53ec500703440a445a9333a062186c1ceb48fcff9000c9e5aaf5576f0798be29bc440eee2bb47648d3a2e208ada218e88ac5ba7caa360a73b20cbb729ba426d2f28d7e67871c689d15e81f52e4913c44dad76ce23680509c05261930ff21ce95ebf5b310a178435f7f3b2ea000d5f225a6bd64b6ab0fdbafa63186ff45a9945f1cf21e068e3f73dad12e858993851533670b9cbd15f98636be589cd65a0deeb9757e61f0a221d11eacfd78e9066d96a7f6f688f46c7d2ccca5996f39e74c453f2c8f9b8e4571d071f3803805b66868f84e7bb733c2e7819005539755029e411a07baee0ab4109ee1bc8bbf5cc896da9ebf1caf1497cf56fc2a00c8eedd91d5bd941b652211d7f02aa573001c68c45d5dcffe8334ade181f0699feac133ec8ccca1fafe5ab4f5d028ffa6bec49826a48727b98689fd463d9878c4b6c7ebc02b7ccb3112b21f3c8bfba7a73cffc50a357e018fe97b52197cc600ed3141861f1f9b5e5fc7d52723ca63830d2db2ef9daab53167839008a26f23c0ee2a7d302c14c98e1fc869089c91daeb3f49f280ce143f96d573b977cafa51553257f5d33d9849868019d66bf5b1cb1f58d59d08febad9d1284db9091f1b2b5325e1a15f7e1c56bb48d71bfa05b459a0a4be3061a260bc9b6308d073210bb5fa145fd7d1b331fd35450d41da8ee97bd1d84a4e563e8cc249b6dadf6c0260907d8816608c0820003b853df9500009ce7e33bd097c065a188c30f017cbf988384f1ca7217099fdcff1fb9a6d718b9b2af2091dff4e8206f4147697caf852e6a12187487d4e19f50982c3eeed9646cf7dfb49b1e969b37eea308c8ed016e858331115867370665060cb76d72c1ad1e9045d3000b3f2c65bbae9b3e8ff8c0d8d9a19fcf95ea2e314b6631ba1da094a0d3ba93c77de85f8fc02c64895ee1e1d467fdb9a9a5998f25c5ccbee4345b122b7222303ff5c0a0048654c2d92a09f1253098e736e43309893e6904ac654c5461da85a76035c9723283908b54d0cba76f5dfb7d140c32bab52028c4469c7dd051aa1c650ded18f40ffc974701212a3b362fc994472dddfbd1a0c00d9c43d6d58c32e7bafa535cdf5cc7b17309abb81eb8dcc4d6cdd29ba0492b751a918a63831342e5adb0a5787c10da56212c68ef0b170ead7f4394ad6d7f3fc7dafc8dbb3ef4134e914ec3efe792ab1960f0968db8bbb379c1369403ff85f8964c654a25d1228c420813220bbb395c0d5d77d7396af63f97cc0e0c4a766d34c34359f1885856c691a51020d40a7993aaa568c1363ba063dfc182f7e1401ce0e979da9bb299b8d9f95331c68644fe5124b078c52c1e02447e458b2bf8ebee8dfc8dbd8c997a2e18844fd06fb59dff127ac28e6f86da599f4ce2996f8774ad9588c6a45fc059906c8a8602a70961234186b6dcb4392620a9f6609c0645b64df6f2fb8c48a899543b44ed9f4d961f4a01089814f184b1e42b2de1a4076fd294de9360be77a5b373231faf40cdd38417cc3526fe6f09ed52fe2884f81981c985341209c1b2454888c3d95c97ed38bca11d482c5b0974c411c63aa5afce43d9eca93c1891c707c79c9c1935f1ad12276b48b3bc380f76afa377c1870c98a4380cb267304bd6bc4194a79f20b5cdd4676b3d366862f37286132b4fd0d6da8eb659a35249386413fb6e34fdd2a8ac147c19bee5349ff7fd8717781533d2a62b94cc555a4f585253e0c309e7c03a0b044d94507825d899f4e73de764716d614a8353c7a7c897dedfcc1d5c71feab455c9c230b002010a420412128e01fb19fa7cb54f545a2272125679c297fecab3319646a7a675681c83a14cce91d9cad30558cc9d5f84013448e0122db258f6f662f772d4fb9e53f91a7d7db282fcae9ae2766316d6b234b3b39a2ce728bb055453734e6101191eef7591ab54664d98c4d4a32fe4651f89391ff3fb48ee4860e5a6e803565b9514987f195424ad2c6fa8155a8b96f0b13cc204f49745081a25ea910d5255c6d6403dee7d4bc230eb54a6d8b7abab65c8708ab6e8479c4a7880b38c55af1a1a3b4cd98abffe8d9817e8aa58f0a7d72fadb52f7e2ef32099d78ee74daa4734c11c44ca865e91d678982d61838b57d33118bc877a1f200c5a7c4f65dfc95d9284004b03915ecd07ea7eb39282f354432eba8c2dc1b950fda42d5bc398988f98b9592997807e69b9719f6f31ee426ad1fb6246ae9b0c7ad065e5ca2ef9d38c470fe906d7af62c319a8df6824c6b62accc28a3231a6713cf0f4e9186145a5d3a7bf76b53ba132866dd79225229f46f10d7dd06a609138897d466b2cf938034abf2ccec01235438a87e953028460e91295e960809eb8d245b65ebabb4c7ca5ecaae42b371459606f4e9687ec11d9bf0aaaa736af4ddb77e026ead97500a684a018c16dd3d31e3cd4df0dc7f21c52e0873b6505e8960d1d2a096a96c44341e3e1781dfef35862f6aaaa4122643bd255ec63c648d78adb87f11e56c7223feb019b38203e79c3721c9cfc26d16aae3889542b34571fc34907a470ee7a561bf42a1937a19246669a026c28e0c186e0a54c5c6988aff6d00252d08baa1f0ff06f03149d3aa0c5a17412b825a0dcbc43202674ed4ef8e87d7a05a8d20339845d205a20389c5f46da31134a1a0f375916e9215655f6e2ec66dde2efe663b455bb3d6c5a4da896094d764c213a3bd1b7a49d770a9dd687e9edde89f1ab95e07dd0be03cb862061a1fcb9b8a9b7efcfe90ccec291c0d65d34302e9243ac9ba03dde2dfb5221bd9a0e103416047ec14d90feeb6f4fb65703a15b1831e193e747932b25e91945091e8f26a421e90325b5831ceadff1d21256ae48f67571b73606a7ea07472f9c9267173c1dc9bb428d162c437d3ea12fac1fd621d9844f7c56eac85182b6ef11f9deb94bfe708d2e591a5eef8a794cc3a71b0365d96bb5a5899db4c957e918abc9790d39ad7707bc0f96f3983dd3f4ceb196235f5cf82771f5bffc2878905e6633f0703ccd57715807e976e1d0ecb660b68a6e8e261d92057570b400fc76681974b4d5d89cb97c9c8f7042c4fe7095fe436357e11339cc469dcdc25d2707c87a79a17a6fe71fb4d1817f0f85edd1f2e203e84a7cd6c9a1bfef23b1af760775486446a2679ddcb73b86c293dddd8352468921018f7e3a33a4bae62f64cc3f4508445c2494f1f5110d0e7609b69f8105faf6f8df2fb92193f5a2fbc4b0eafff4b4f90ffb5f58db3959e33e267a032a4d9576d56003107e902e57cea7421636ac0fc305135ea74f3a340483b74adc6065eb23abcf7cbd129ff5ddcc030bf74b16a9491dc7757f9ca5b40dace3db5111f3bfee00f748044c3faee000b069b19c2854c8d8de9118dfe4f9bb2afc3dfd396b027580ee36dc3e83aa455f98974c0d203e3da04e7d725a729fa4da118da2f6298ff6a47a98af72e1fd5bb81dfc9df2fef27d8d35838aa5f2c83b6f2761afd269a92bff7ad3012699b7ede5585a65882d94812ed29f9c3a4e5c8696e386c4b1a8d75ae9bcad2d512dd3bb61fe35c959fa18b47a56f682d9ec114c3e37affe94d97ad2bd559dd8660dd37d301748d8d34841582410b6b26c1054f5ae8995c3b6fc570cbc2a3768090410ad790d9322e68a190db1c034838f55a7c91c1addb71a1185750ab57d2ca70a9122f1d58bed37313d499a3aa2f1785a5806cf11206a8ce91d7998fa9823d2ca773d603d2ebac83911c1fabeb736b01a793b88df8c45a053812d3b127b6528c4048d26c52bbe5d3eea6a3d5b52cd6aea55f1e3f0afeb4a62a7383c3d8630a00e773d3939a105e84c36677b757bba2244d0d88f04f410fa3f42395a027d4bdc1ef1c62cc44837245b443b1fcff599019a9fac0f18bcc7e3916e9b7b7b30cb65f9443babc5747bdcd77c2afa9f5a881a0f56794dfc95f0285ec8e7c1d9e74b77c3e46d24e10434a7e1767dc53e27b0cac542a1523ad656f280b327c9db4a9d7539af6fa71f4d480062f487c322a6298febdf7524b9bfdd9a5e1a55a44ba2b7350be4b9bf8e54b0f84d0b54c98aaae087b0a512a19ddef9fc591e158e4e4a11de1cc5af092744af4ff915aa5c5af9a9aa52374aac89032f32a7535a770e9de3047949cc9cd8c47b33a8e48c84c68340a1536d7b50423999e6a2fbe60e7b03b8d127dae89147b2dd0a48fbbe707dea9d12b52c22fdf2abf19a919da20cd2a4db4198228afcced980be3f3ff8d1cbf733d253b9e6ab450aa859ba73aaeb260c20292b40cb258189aac09dddbfb2dd834b33d40a59bea41cf9f3c225e398757748817e4b5fd9738b58537e08d6062944efbc726554ea1360f3228b1aff56b749ffe5090c080c529f03da0d2ac2d132db0b9ec88d8143c3f2055a07ccafc1bf4b76d13afeaeb61f91bf94b5b1f674364e914cfdf26823a479f3a410d84747650c84722fa4c340724d1869eafbfb6ab2d61db0bbf1a644a0023f7937124f2f077e42dcd7d8b7c7169bb1951fc63f36e174cfec89b89fcadc6e1e7a5176c0de38633bda0e8fbe34f667df518520bc2fb2b372b281f52cf53421fbd3ab4baa3cc6602fea3423cc8d77e9c625c7b97ff5b978fb67369ab1739cfd9e0d370ae41038f6e80278c77645f7d1c000b060b7a0ac1983db5d4f921187a270f916d9790befbb2150ebad671eb2cc9f70af69f50b8a7f11e9e08b84f631c2562490bd6309de4285f914b43a3b1574f6a7fe8fa6d3413ab51fcfa788c1a93037baaae484f05fd4b6260f6018880c634e894f26bcee031a28b415484dc834245424f5a4a3bd188ae6f58c6b941bad997f17d4d36576b7c9b9535eb879d906823615e59677c79d7e5587819b9afa89133ded77454fa4315557982b1bbef0f719f033bfb88774812d7bbe74f92f2005dece37023091d8ba727b76c512e7af4fb8d3110dc4ccc3b3c7d258fbc73bf1707d030d7cf71e1ae65dd2c26d738db7edc392a0690e15ec233dd06d799b4bab25946d78f069365a6388fd0cb0cbbc76e94f83eefd30ea0ff83ebce17f4ec1bcde300f0312ad7738c199cdd2110551181b71bc18408e4652c2e3171d470f327dd4a385a264857727fa93f7624508d2288bca8f5a66833f15137b9421c100564d9f0c02ccaff5074260dd1d98c9d0f9ddf4eb9c71243f5153b01a1abf3baf169d6306bb079cadfb97ec907248efa849f89ed7eb55ce3a06ead766e9a81d6ffec87fea3640ba8c2b96d1867d7188e5c9b50549716a3c31d581b15cc9c9e73bfa9821318a8474594072d33e4ff4c739afb89966ee5f7a4e07ee4976eefd032870e92981957fea353f991fb4359a9f3b50c9109502ff8d24b97c2d943307dbada7cdd8bb5fa5e669953e5a3a5bc25cadecf921d407a61c366c2dcfb834b15f2686c796d21254eb8292039df228fee9514793661da59b5894cb379c528835ebdeaadab1919a0f3970fee5be89bb0fd141d4c58a903ad05ca9dfb32d1c76b6dfd81cdfcf76fbbc8c513c0c93e625378e1f82fc647ca5518bdc26ac55fabc29fd0d26bdde0dd7730b6dea7495db3576974d3903014a7d0cee9f9516e24fe99e571e3a7acc97c59f50b41faea7302dd074b3b236ca7de219f377d7a718615eb9492636df78790671e9a30525964b3caefef7e72d41f08987cb00e816e183356016e22076efb8d8dd93d89e3569c990e639ea88bd591691e0f79cb2f61b39ecb03a4e508c7188d9dd36713ace720753c97c6db793b15f1833283f34e7242f8036a56db146a0d5e03323b6f6c6ee63d84b08932f0acbdb1a1453c1ffedc9bb66cbc78a1e835adb29c097d3ee47cfa2326cd1705f2f8baaf433e557cdf6a2b6771637a112aa23da5586142277f1a3468dcbbe6da19adf699787c2a368e1fa7c065ccf06b85e3d16eb0c8268dbd5e3804df5580b31193fbb2b9d9e2c4f3d0fb156481cdd8acfddbc86182358e398b90260183fc497e65d0a083979e58a80efeb373f79ca097fd0f264a31d2539ca0e3deb8c5936dae66ff66350bf90b8a4abdd19c327936b1bf2f4c7fab2cce688119e442ce637cee44213d757f0419d27faff9b129475b5817fff607237ede5fd2758539cb16ebe3ef1c49e26b5f656476c6ae8c45df2751fe5116f8643648b583e5ae4feb8366e94fdf0f07b6fe24cf2ed02ff514d9bdb3571d1c49c68cce974fbee7c5d88849dd985f0edcc6f9faffc8bd41deac4b757e8ffc11f17d652c549fdf5836c3ec1a69ff05f67f187e71e0dc010306905219419f3bd48625c4fd0a23ddd58dceb9e81673da2f4aff6cb32ae6f8ad2632054053f11662d629a8f40ed69cfb8b24a92fcbee4746243eed5230e4902dbc67a7792017aabdb67d944b8baa649885ab503f97dd88d7e80f76faf273ee57abc92325cf6d4e67abd03847028b4f2207016d1e5a076c570c5d272c33301ed51394b5ff2cef2d80e83a7efbc3cb5d1aa5d31b7562cf27ea317804fa8586528954434bb833744509f76867660dd1259f40165b88872c089028a717c566f649e034f28cf742afc52e0f818048705d026cd29527e4187fb5f01d4e02afade340062be18f4d46f3b0cc8f04aa274698164aac74014c4ca8ca4b6601dd22e9c74ce825dc2d53464f73a4d10943394f94b06c6035049e0fb8d2e9be4ed37479be108ff4e2cd02eb72170baba66f715384f1d23b92b4731c48ad76b3e717a7dd1c5b5ad328803eecf18babcb447160e8ca0d0c8d755feb07f3a1189ed9b8587d6dea8a5173bee46377e8b795649a15de8591fa79e1fc101271b3dd22439c481cf61bcab47e8450dbe9f897409f7b10b2fa180266726df67f404e3acfe5cfd8059bc0d83aebd289bf825944f8a1d285cdc7fd834d326f70d2147be5ed1da7ce1010bb154808504da27b7c3200bdb72deddaf5fed061f4cdfe2319eca6f17af5c0e40d7a25205ca324dd71a1b1dbefa5692ac73a6a978125dbad20608d502059528a7a4b079358b68c5e841d8b69cd0e74fb4b816ea378d18fa980ffbe84be16d85c34688bcb42976ed540494b40b6bfa79096365169b54899c07aa747890ad3cbc365147d4019bddeae79ed2af6ef475a06837cc1638579600f9896d36385c9ef814562c1a6f691e4596906508ce5a461ceaf901cba8c93b2ed92508b13526e5e690a5a99e467dcf575b7e11a31e99cff500df2ea3bb5a4eb439570e5a5e04c7963f1139c32e627977cc290fabdb59675d8b62aeb98ab990a930cba68168e67074720e1e9a4ca68a64258659cf5c5e9bd97c42179e668e11fa8c153f8c43d017fcbd9d82784107d389feea4e31a677b2ce802da90c060f7b9337424094902b7a380a6cb5b0888b815913715b846dcfe143fff18b31a916615d07180d8a63fdfd3c94b3f68b1a4b0354eb6eb5c3f279999e9899c0df4460c80c51307667935b77839e9d6404074a5a6fdc2d88b90a620c64e26bbc25d16ed4538309f3f97fe29aa4f4688bb4fb0f9a8fc7db4c0a74791486f61e53dc7246102eb4fd07117b0f80290ab2ae210bce6c48242e252f964834bb12216436e552a5c9400ec0580951234af6421e021c1911991ac8ec4ef5d9526f950fd8334813b0aa37c12744a3c40d4f0d5451d40f1a46eb810450a5d1dc1df0502994c56b446ec14d27d0340d4c972e373af4cff177f4bb2827b063ebfe66c0b3d413669d94b21345b3c1cb9787cc4c8262cb8369a9f808eee1506825ed0249d48d1b31f57955739326a92b4042c114cc2c1df67c67c093e80ca48fe56a3552d4a376f7cb9ee6ae17d092b651aadccdd95891cb6708cecdce18f7e09ccf04a3fbe60c1513bb6fc1faed5fb035fe8002d06be43cd358e66b6f9926bca7c087a8bdc934388c2e97719958ccd9cc2924ab7dc03484aee702fb9a8a86861f238e2f26ab8e3f6a82d64623d381106b7a1c0ed82e53b49829bbe915b7a725bee9b5d5c332d01b726e0a7ac4e91b01d5c5aaa944bdcac0dc7c908ddd274b1cdbc1be816776923e799f4723d00fccd28b9a9c927fa7a78e260bcdde496215b2ed16f4eaf0379885e5ec62a52781e7c3c924902b5a0cc2edba44ae305a678468d63c89947b3546d37d2392970baf87386dc4d7d6e4e99508d0cdeb2daa3e6e445955d6655579dbecec433aa69f3b96362a569402e948d2a014526465fe0d26798aa3ef91cf58af33a5b9ed718ca9ecf46a593cdbba724e0cad3c98eb1f4ee5b44abcc532c9c13a132ce1bbd05262bd145797eab56616fc35b707702d9eb4852f13ec8eec7294768b6d3eae87c96c3a4cb8d1ab1b3bb93730adfe6410c2e6cd970c6cb23e0e9c26a6d20f1949ed4b6011bd963d5caa2d4346e04d25610542c971e642e9ea1a9d6b148395cc4a55a0e0a314d22d1281ded2aa523da797045c547a9fd1f34cc805c574c5288ba61b297a51b3b7212926358adbb480a10cd8a1a462e4aaa35744707245035054556aa9754d5d04ce884bc0435c2184acb1035f66a9543040c5d63c1a42949c1a60e1ddd97f122388936517ca6e43c3d818291f9c5aeb70236dc420619de5ca371911f1a8b3ea52a8a92a930320ca65a37df21a16b0d01bec6402fbd0353ad43749da614a2f9dd9dd7650ecbe39090f2cd11b4da6a6ad25bcad8cb15aa5b542c8458b36d7edc66d4f7d16bd401ef8203122130915692af66e8b19f9d708a4ec6f66e3f3ad1ba171ae9395b6bec4a60b25e0255dc379d4bb81bc78e8ef12e2cf8ea349aa2ba9815af2c8d8b9693a0c85cb72d016f7a1e1b6631e5775ab720c54c90da8201719091a802bb68f3b3456924e81010f3e39b24be2615bb4a47862e4c1c33c1f5afd9af6ba6b986a277b18457164547a729f502680e4130761eb5a0353496480e1c839dd6a21ab581afd5a455953f9c4c396e684bfe14082d5141b3485ccada344aefc2b484dae3d7b5e8174e02b8d2dd10c30b2a57a8b57dd8e11d0a2787054604c1a714cca36414433874a730955dadcc0aec7707372a1b6d26b7524a297bec87cfd0b8cca71e059f7013f176efd00b1c005f80979c5079d1af02aab6f622bdde7d49af03ed58968f19f47742bee14efc6a2ca440e7fa7553fce5c5a2316012fdca284b55ebaa1216ffbe329684a8bfbe79c77f75c8b91ccd4d983d58c0275a2dd54068865c2fc59eb66c3b90f395858067c3d084b7c6bcf4580fedc1bd4efe3c1579fcc2dccb756d2cdc587e2c8fd895e46ba588c930aae7b8129808303f54f3fb2df2584c1f07e2427e3633883101ccbb579bdeba0f423f7977515a2f07f86c4138b53e89c011fcd2880a75224975138c3a7e039ed05befbee02d586e360ea111df69feb978c1b32f6a84b868914e1d9a2028009b624956ac3ff442838e5b4aa637dea375e00e7283d1d84ef2141b5a1757772486a15ec38c2d1f77362a00eb58ac1240e4bce83057eeebd23154d8f6a9d532bce7b66a4de8ab9171af8e6756e7e0a276d459cf0e79e134084e09cac64c6bbf7d54f89f543e8cc9674247df7b3f1a79862b0bd3297d11139f89d9da6165459fce4dc8961f8e098b681d0ae61d8f6a4f6ad1c5d4f44ff83bd33d5326efcd4abe6ab001d044d38e50e97ce6c0a187710fa4acab08de56c262d07cf50064053307b2600be869c099c5012161c9727419061759f8a1a6f4ad791a2f772b6b1a8e42b3591a32e1ea2fad2400326cd7c5b2cb485bcd635a9a5db6ec0392e6840a0c9ae66e1d04a4480c2bfc458b71992409dc121fe69e1a9f3af6d0af0148e346620dcdade953d30bd912c5e52463e6e06bc510ef2bf88b126e0ce581fa9e91c2104c4e0049f529eec4f36d08b876ba7099b13512c9efc5f390ee040ea57eee30f4b9b855fc3879f30a27185a39cfb6aaeda3bfa0a0713f2256ffd417de71b375ccd3739b7a7b175c4c3c06b6c23e108e20c68c75a7e6762b6b347255f31e461cdca7a9af0a8209fe9888ea6e3654cd432af4dc4441c28c50f43a20bf16113746426680c0ccc1b23aa19819e995e736de9c2a3b240fbb51732825280736c137e47160c3be5a9fd6ba5d054c16e50f25005300f1f58132df1d60606405bac72aa03851316f8b2ec4882c5d50c404f1cf1af62ca0a10c4b7f2227975da9fbef65b79120f21c1cd190c790c7f0113ab9f864ad835996950efa0a5b266b8a2434cbccab179fc1e5149af42269004503bc3aa850f5e8e9d6d9ded50e08ed27711a57c15ba55437fcbe55da8db910ea9d685ceb71668b4e3c12d4e55b87c148aba563354b4b3f12333c02509e864e99c18caaf5348a07251733166949299d853f115ef4052d5f1c9ebd3415f6c3b38af8878ecb3c2278a83132bc48a0161c27a1810df62102400c33a8246d05389a064012b6d90ba46122984f2dbdb38f9917770cf62564f271a019e3e7961799f350286ba1ec364322ff270a887641e7f78ca6fcc7c61d1791cb6b8864d3194e960f8aae0040dc42e35c6b2d671774a50f011a59c24bced70529c1f433a6faad3ccb02112f8b3d55ccdde22516424f175cbaf07599f3c80554f92c93c5eca3a4161b76b87132e8e5c762035afca214a54ac7dccd4b6eb5d2cd2693e26e3eb99471926e3e4ed245e0616937195485b8c3824bf0be30d842c2d55eb8de789b85087efedc4d2b92786d1335a5ba59b1321accdb3a67a31ef7125ab41fa0ecea5c42f6f2cfbba925e4c0a6ee20befd142f9aff1956e1d81b2c5c9c02f8d9225cbe9c47aa9f187bc074484ded9f8cce30ab552bb3626fd480febbf52f0f309fd220e85455901b858d744e86ad541b4c753d8b98a9858a6e4006b408c833468845b9aef7e6192e8e6141e837260c8c33055a158baa5110186c913ae3019497f97ac39af3473f5ff3fe05ae0d3f84e7b1a589f09ad5897b1bd76e24716ff710d93c4a8c10594244353a024dec0d2c775060010d38ae2074d9639d863b6203e4ec9d440c4d309102c70a390aa00a348e4621506f15e4ceaeef1f0d340bc9b95dabfad4e6530342630d32607c1183e5faeea1db01a132a6d47812819001ff42356e40a53c4db536b9dad70afe8584fe8568d86085f81cd4522e582dd4f630daa35bbbe2628b11c8d6cf00a30bfd8cac7dff34ca182335cd1c04881d810001f2e369b65452f7d29150194463034d64fcff108d31c6186306d6c8400bdfd38b24eb26657bc231494da92067558bda39245547aa8cc61f71d61fdf1d651906631763dbb32ea7dacc3cd5d993061266e2dba139d5f59860690dc4b667dbebbf9cfead4bdcd8b9c22cb6fddc6ac7188de5340361bc272bb3aaeee534eb2cfbd6ad8a33d63caeee721e9e27f7f1dde659b9ab99f353ab96abb36cd1dc815635d1dd095c559c4f4d85fbcd5e74dfde7d62ef6ef7f869bbedb85467d96a086b04c71d6d72b76b5eb6e9badb713bccbf9e775cc5d9c9d6eceda1fc4cb94edd6bef1a2bff561eca771ab43fed53750ffb54aeb33806c33198aa3bee3acbfe6d159842d9a9aaa2f9a76f261775b736d52455a3a26074952161741519fda73f2670c2efb736a9ba6baae0ad17b928dfe9aa304f9434ba4f1ecfa67ffc66724ec179d6461d638c3a341875d857eaaa50f3b892dbcd274c534aa96075ad61cbe3d962bdcb3a2cd4525803cf9d797998e6def54ea3362d6dd6e63e4d73ffec79669e6f976b168bdb6e64fed330c0d099ab7188cb50d63854350e49d959ccce60d6ceec153b136a13dd568cc88c2459c2a435de40ef78a382f14692f1468d1f6dfc196d08f17666cbe1aa9bcdfa1421526c6821359911e5755fa1a4cc16c2b4d1cd723929dbd38dea4955ee0905352a1bee96cbcd7c630d3d28f4f4a6b251e80f6eac91646ae186c2e447a11aff3dbda64eb3aff7f4ce66bf9d70149a60a481c28f33fe1c71354919807ea8b1568e322983086ba77d4c97c7b999d3a1c6caed7e3b058eafeb95c1bfa7575d7f3a918c3d8f6409cc111a40ea940b70f9f1a78b931c1d0019da51030920c8ee6cfdbf016213655e6ce285179bd0e1c526f0bcd84412b5170dcbbf685bffa221f1ff3dfe9940d0438297929b7f2915f1af26e2bf9a40fdab09d6bf9a98f0af263efcabc913ff6ad2c5bf6845ffa24971bd7c8809b874ec50c0f582e0c5e3f52f1e47ffe2e1e45f3caafc8bc7f92f1e5efec523857ff180f32f1e4afc8b8715ffe2e1c5bf7a18f0af1e3cfed503e95f3d9cfcab07ee5f3dcc7ff508feab87977ff538f3af1e6ffed543cfbf7a00fa579101ff2a7afdab08827f1531f957d105ff2af2f263011f0a14f5280234c28b80cebc0828ce8b80907811d0152f021a34ba7af8315ff493f5a21fad17fda8f0a21f1a5ef413c48b7e9e28ea21e7ea5d727eef92a3c1bbe48879971c19de2547cebbe4f079979c30de3527c7bbe6f878d71ca377cd51f2ae394b401cf8051af80104022140a6942f4e497a710a9517a76079714a9817a7b479714a9e17a7fc79b1cac68b55462f5631bd58957bb16a8317ab5478b1aace8b557c5ea432e3452a3f5ea4c264141118c929412f4e91f1a214212f4a51f2a214a917a5641f4407dc78e578f3af1c78fe95038a7fe5c8e25f39c6f817918d7f11d97f11dd7f11cdfe4514e55f4417fc8b68ff8b48f82fa20efe4574c2bf8860f817919a04fe5f87a823c7509102619a5e0c23e5c530bb17c3a82f86d9f26298ad17c3c0f06298362f8691f36218235e0cb3e7c53056bc18a68b17c5dc7851ccf8a218202f8a41f2a218262f8a817a518c9517c5f417c590f0a21834639500fc5865881fab20f16315287eac12e8c72a63fc6801022ed71765def5c59a777d41e75d5f14f1ae2fa078d71759fc7f022f2a4755b8fc5805cc8f55cefc780b0e8d55837ea442e3472a397ea4c2e3c7db152a96cad18f54947ea40245c5ea472a5b07510e05c604748c547f7ebccdf8f1e6e3c75bf9e38dc98f37a91f6f577ebc61f0e32d3874430116ac78170b83ded5c28880103f2290c48f0840f1ffa44b6c527ab1c9f66293eec5a6f4c5a62c2f367d79b12985179b6278b12987179b8218bab1c3b5a4e4c5a5262f2e497971e9ca8b4bfbc5a5ac17973eb821ea20127390098011c0bbc030f12e3051bc0b4c16ef02a380776dd178d716f9ae2d06deb545e45d5b4cdeb505f5ae2dab776de1776d61bd6b4bcbbbb64278d79698776db5f0aead35efda02e25d5b4abc6b8b8a776d75f1ffa4cb050800ef02c4c2bb00e9f02e4041bc0bd00088708c07e8d0eaefd2cae05d5a20bc4b2bccbbb4567897969a7769b97997969c7769d979971613efd2c2e25d5a61bc4b8b8c778530f4ae108ade15c203445db6bcd825f862972f2f7619f36297175eec72c3ffeb1013189d9a7e7492f2a313fed1a9ffe8c4c5e9cb8f4e637e7442f3a3539c1f9d8ef8d1698a1f9d04fde854060336c403b438f0a296085ed4827b51cbd58b5a742f6a01bea885cb8b5a487851cb0a2f6a41f3a2161e5ed432c48b5a9678510b9f17b5fc79518b175a14e04a60878e71898a1f97b8f89149e84726a21f9914f89149c88f4c467e646af22353d48f4c557e64d238866efc7f023dc6579e372fe6b1f3629e245ecc03e8c53c5ebc68448d178de8f1a21165d1cb75859e775d71c5bbae18e35d7e6cbccbcf027f80ebc6e718d2e1c2418c77ad117ad71a1def5ad3e35d6b84bc6b0d9277ad69f2ae354def5ae3f4ae35b777add1bd6b0d9677ade1e05d6b4078d71a31ef5a53e65d6bd4bc6b4d0e367a8c13d0f0e3043afc38019c1f2710c08f134861c0d864cb8f4d42f8b1c9981f9ba4f06393176e50c1c1bba830e15d54dcf02e2a8678171579de458513efa2e28affcf41946388eb799143f122f7f322f7e245be801781365e0422f02290c7ff13913ee0e879114e142fc2c9e2453864bcd8c3022ff6a0e4ff71e0807a11c79417715cf0228ede8b38b0bc884383ffdf51e44a63ef4a9bbc2bbdbd2bc5fa7f030ef8272242e00fd061c098a3145f2c79bc580679b12c5f2c2778b18cf26239e5c532bf58a62f965b5e2c4578b134e1c5128617cb352f96725e2c8178b17ce2c532d08b25182f966590a3e84a20011c43070ce140208d7d31cd7d314d9317d34079318dedc534572fa6315f4c83e5c53419bc98c68317d38cf0629a155e4c73e6c53439bc98a6ce100e3d84766a6c297a2a8095911206dc292aa2a5c80e6d434339dc701a63a3ced41456a295541d1c3a2ad8c2518021829eac2242f5746328e620c42684395c8458918bdee77ae84e7b7a8d6c21678b14fe9ada6a20df758b6eacac8358b90b415c6c216a1147d402276a3113b5f811a88e1634024df1811828823469cd020031d83b91c5d11b40b885f50ddb9417f1eb3bca7c4a3930d5599a4a5d6da6fe6d5c0da8ceead9a1ceaabaab9b67831a2da964e1a689e66d4dada267ef674ddf5454ef1d9af27435f70d9d02c6157b1e8a7885972b92442b02fd0e1a387442235a5145147626ac62cb4ef3784d54a1c3cc3a1c5460f9a902fcf8d1e7ceb7d0474b4fafd8e7e85f8429fafcff9d426b6b8a24dfd33bc389cf1e7bf6191af001001f2dffcfa78a4fd2ffabd99a30885258b18214e77e12c50a3a2ba76e5d13a5d5f65c068a41504401c500a01873e635cbc660d76a28a2a0000205d1cfa0917962489c249cb0e1bf9f79d394f43891b4678cffe7273a459b7b5448f5d4feadbf3d44b30c3b49d62fe53cd992d5e9f04c926569328b24eb62f5ace60c652fca9f2c97d254a2151c343134830a26c6d49131e19a51a48c064bc07e50c2cd0c3933684cf1b319ae6fab5b7b1123fafca024b0fe5fcd404d35c5bc7128b5af4da60e72137df284a2dc9ac3d3deb117cda5eea71da2357b7bc6d8e6ae7d0157ae52cdcdb55bb9b261cfff5bb9b2178bf39a0d6c5ec897ce33efcc27b486323500ff3fca8f353c40c39ebfb23b4ccdf5a67d4195732a1aa46888800623354bfc3d3a3a2a8f906c117c9e79872d152bbb3198d5ea4e833f9ef230561354d3536353e3a486a626c7a8e6461a36ff34252b64a94976adecc69060362ba329592137971b6aaca08ee1a04631cc9adaa7ae69ac6a6986fe1f0d9bffcf680d8d97bf29a7cd66382525215f9acd7033fc3003d60c3d64a833cc3e7dcd1cb65c45519dcfa95106550623670c80e6cc0a67accef4888189ffbfdbb75b7b0ceb0cb3eaf04479eed60e3596c97daaeefb6764484bb5d9a476dddb665757a0af67a72b479008b5898e3034f1db59cd664b941c71a225ad3010195f18c4c30b645e485f70fa177698b9f357aeca0cb456ae6e0cff765626aa6f98f3605a433163d5815c1dcdb8feaf0b0470810617707fe5ca363da52bff71d5b690450b28b4e0e4ca952d29f891852658d8f2ffb5ab6e94fbcc9e7d65ac2883662cb3f5a58aea5a99a51502ad40e62f8ed9d27cc299093ecfcc845790b282022ae84153ae835975aba8ee2a9051c1e9ca9595abdbfb6a7ba6928217291020850e5228ffaf5c955c2dcb4c060b3261c8287dca6d99ad9a7f19052350188342d30981feca9515e65fa99eebf03c41eb042e2714d9638296094afa7c69e5ea0ecf287b877de5a9eea1d954573ee4aa35b34e6177989ac3730c0b639c3eeb740c29e60b316538dab7980bc4dc307dfeffca5569e52adb945b344c993069981f426de65dcf3e6b4bf853c29bff2b57a5952b34dfc61284a9e6e14a38fa8df1d69e21bab5e53fd57d35b50fb705fbffab653a1dc1ecb9a656750a3c75180726cd5f3040bd035374516ecd1db4c3f3cc308b06b915949290a646c2966be347127a24b8fe3f072d476d2ecd11debcfe8de05b4738ba9cab5f061915fdf845cf972d3766eaf6ed5d0db35facfe6fca79b62f3f4410e2ffea761988b5cba7cd1d987da99eb2b7876e75e5298d769e9989d68737dbb3c52929fd76563425218da6766dd2683198d26f6725e44b21c809010de1821088feea74776d9a514c567688662d1b20c800821004fbc1023e48d3b52e4dad79378ac92af33ef0e1019dd1031a3cc08d5e12e0850b2f65bcf8feff12d13fde8958353341f956f53924a2729488b5bcb6d33e15e57a63a93b3c4f6b9ebdfec33d14adddf2cc68b65db8e8024497f3ff6f149315b6b21b538159cd3e182ff75b0708e8e0870e72e800ffedd8ca2e57854ffe5fca8f5c3ce0b2c1c8a508971ce316335b40d8f2000703e0e0e42008073e3610628373dca0488325feafeed9b74b57601493954c6b9eb5c30c94dda10afce9287bb5e60d77e8112456eb6ccdce30b6b20b43b22a712c762fac841db1c256eba8d83bc36ad726b6b21bc564657b289a2d8f03f30eabefd4aab97714e3610696f8a7d5ad350f5b1ec71d6b536b2897abf6c46970a501939630fe6fe79c4add96ab4334ddab1d62f59aba72fddb6a4ac392f3edd4fca3c592565b26ad4335ebacbe472d45ff57a7197cf13f9ef232609381d6676085f77472aecba2806b6a75ebf450c7d52c66facef2e5ff9a4fb8310bedffa7fc38d4f3ffb7cc651e87646240185a1b02bfe7e0d0e9ff0a0799c2377f63305b136ef97fb426b4bac2a3312868e543adb37daf3df8e6511e14be6a83d9179cfaffab4a8dc12c41c37403c72c3659c257b76ecc82ad68de6d1edadbdda7a63c38ae83feff66a0e52a901fd73c2b997175d229ba3957bb91b9752b8dbfdddcba2348561a4e8967a3e5b46e987fa30a7c13cda30aeb815628b8f7d0fda4fbba95b1ff18533c290a69142c626011f43726ccbf2b56ba6cd6f566ba187314697806356a75c7a511deeee6d6a13bdb2f589460198171aed6cd30cab195dd219a6dcf16c8034e8d7c109f826bfdcfb09d616c6577e52abad332e59a6ae4477fbbba773c1b35a244a02da05d46b41cd112c521bbe6d6cd6417636c79dcdc3a2bcbd62cb78e669edc9743790e28d4a68aee154baaa74c1de439ee0be25877ef1263630f0349eeb8b2702253e5f4ff547424f02a82214191c0a0187cbd49928fbbd59e723b62b1a93123071359b0b010c588013962fdf8bb9312ca00d5a76d420b6a74c6510d16c1bfd004396d7274a7eab8c9ecdfc63bb7ad465fa0d1d7c4e87bb34488d6448989d0cc47438bb1b7f5cf04c60c2c8212fc0b25fd7f0da108ca18799aaa656bead9aa93e9e1192c79bbafea2ec36ce7aaeda1db44d18c2fb644acb5b3de6559a77ca7753ed568786e9da937f054f9137bedd19112dbc41e29b144ecc65c45b9fdd5ecc53a42d2cd3a57d18cee1f378f8e8e9064474748b61c0afbccbc7b0af7ac53be436df676b573271a20d0e8626a2c48b688c5005b26785b258b01a6b1010d5268c96d6a0aca2ad98d5f092ae65eea4ca99eea2a3f6f9dc7ad9026161bb118dbcbd5cb5355a779ea62242bb3d8f6cde4c8f6ad7bd6c98e8c8059cdb61f21f1741a93e9d60e4377d01c9eb60c62a2daf2201de5b6af7ced6d15e528e73ae552ea6a4bf35457d1ab4d34f39de5ea951bbb25cc5e531ba1bca6270bccc1de6472a6a10afc3d01e6e08dc68eaa1caacefc7fd597aa9d9df5d0b396eaa9fb83ba56bdb19b6e5d769bd33c2575de8439eaff21a0e280ea0ad5d4e7782355122ad87f69673d338d52c078a8bcab46297180eb4dca97293b3dccb0f55ca6c8fcb3f0ffea8f5306d8c0804afafff4f7cb01bb8d00b626ecec8a959ededc6883bd54af1d416202115b5b3a5ae674ad9dba9db1521ed49d57b1b7af6ab64488e4a05eb2b70b27e8fa97a592f8618e0e23d4191c76f0200b54d3ff5baaa8a8f4f783b26f6a5f5f87186578a22ca1d555dd5472a813459ba096eaea46d78b249624a7bcb73b906b2e15d45038c7a5369e4d5d6d1c7de252410e9572533f19aabfbcd34b4fe8b6c29c5e8cee1c85ad69a2dcf6ecd33c9b81f9f670873addabd63d3b993a383ddc59322ea9ff7fdea1c62a62b1f9a48143dc5047c1583d8772ecdba559773b4c33ba752a506319e9eeb3352e35d451fa5047e15213a4df43519d85eb140a4d0ada15dae3542ec5a59ad094441895bc3c52b9de9494a4ae9984c90749aa384e8fb32f667bdece4c7463d972e7caa92a7c729e99698651d238b3df4709aaf8e7a8954950226559ae0e6046394301a207e3ef8e9bf6b1f8fffd630480300ef37e6bd7289712e3858c4bc4c4708387718913dfd3bb3bc243e345c307114aee4c9d3a4b4301396e6a4c826506c9025ac801d7df4e98e3e6eaebfbd465b5eb9ede273c54a8e2727a976a1398831d6bc7cf9c69e6f116fd2fd540e04fab231202fe2d946e448f483a7e667bcf418d9a5b0785a7da029e6a0b82dc77e3523cd5166893330973943047a5d9298b4f0973140ecd3e5cef1aaaffcff8c1d4c05fea24cc517392bea7b7eb46597094ed5156659439b1a59d755b32e152f8d18889f7f5ec349bed76aa77583b2dc4ad77a9c966b54fa58a8aa28a8a32391a8359aaa8285fe754962a2a2afdfd6eca6df69d2304148c311be3034b4ce5863035afea9e8494cbf59cf323c6f800d492ff3f0266b5ffb6dad315a853def840d10c1a49c618876cd1a74eb7d1bf71c43864c828e48e90030116892d3b126caaba97662430fcd366339c92902ff5bcd3554758208ff8821d63740a89148744da483b8eee1cf523dc5f8ced79f6126b9fbad16c4bdf4ecd387bfb6fdda57b67cf3363d9b0258dac218d6c195122af15570c79cd9b806ccfc53ae31c3c8244640a631b0302bb69573e54d5ddca87bc279baf4ea1dc21cacd5577a035352983955a9464c8b282225f9045ec14e1a048d365c2bae7a5d94c67bbdebca71bb31b66f14ce5a8ee3c813c9efeb44ffd7135ebf48d080d4484b09e73b3192e93441420637f9eea669a996a9567699567993b17f3fdd76249afea7ee54a987f56ae626a874d01d3fa7f0b9bfaff0c8319f519ea48a333465448a374fb5435cd401e8f9b683632b70e823eff0f419caf41300204ab916fa7d61ef813833d50a7f600997fc02ad5c1075c43fe64ed2387dcb943cc0c113e39c409480eb1578820744b09b92324cd5f5288d63585f8feafca512149ffff428afe8304d1f3ff5382b0f9970a32c2df54ab1cfd712070ab0ec871e00ce9000b0e38592fac9effbb72285da3dc6ead3b5714ad911689f54102f102c80e249031312bbb3cb2015f033b4806e8900c7821198880811ab65b97f227fc0369812dfe3fc8930be419432e70452eb0c3c711a48f383e84a40f2b3e76903e88e2900a9c53b71b219db1a9295b467575db8ce3eaed66cab72dc2802cb2f5280308b2c79b1e3cb2478cec3183e471048f218f289207022f39e44b04f2b56447a08f2d2d01d78ec4cc51dd7699c53a2bfbca1ebacbdc43cb4eee80da0123b7206f20c914481b49da18a918c9fcc76c483ad6b74d4fac9407453e221b91274a21c51ca44b0ad2758774055d4a48d78e8f31d92236ca343313cc66e628988d2986310ca675c3dcb33e392f49046e20110083c09044e0898e03903a00e97041c72675582175e020e24312f140128940125111fd2073ec21731091830c99e34a0e07c803ba380008f2804e1e60c3910012c70e240e1d8903ca902072e8cc7fccaac74fdee6ea92957135b5321e54550eb43e35036d6fb77b1cca5ad9c6d8a65c6631b6b26b725ff0c67bf6879a5b97755607b17659677b3f1db425d6d8f64dde1044de3053e4c91b48481b5b903670b001246d4cd9104903a238b315cc86722b8bc1ac95b975e8ca7d41732fd919ee1cc83337baa6dc660d9752ce4b775aa346d61022850291425590426548a12c52a8caff1f3d291423694c41d26043d25081861592c614394301e48c37e40c34e40c2c728612f2c9205f08f2bb904f45fe12f94265d029032da3aa0c21329020a304326863001a4385319ac410248699ff8f59d9227629ca16b15157aba8ce7a6265dd0a66b3b2bb754bd916b14cb6885d82d9ac0cc7edb128dbe3278c4be1a4a6d898724d4f4b39ab5a140f47cc48d05a6b67b6261b0e66634b30db6682d9ec5d82d96c2c0a66b3b7e3b0b2588fb265ac33d93286ea136697ec6ca8a35c357774dbbeceb06ce543155bd95df99063d0f7d69d79eb506e6e1d57397a873acb31b0bc14a3c602f22ce0840560b080212fcc3f9ccd469543b2c21c85ee5401aa0292143023014324804b0294061d60509b415983ccff1812cc86e3a6992d572f36b376c256d59d077156a6cf35c55626b338d5fa96ea9cd53b94fb54949b50684a26bab10615692c8b8041d7e84704dcf9cb9342c016974280d277a3ac7dea280760e100eb016607d811869e30ca8431258c1fff6f79bcf78bfb5063ddc0c8008c1b18455f70f1050a5fa45f34e0851d2f522f96bc70e154a341dbcc1cea2825e6d9cc275837776ea8b166b30e1cc690626a6f7ab239769e3ccd2aac1b353d59bed3ba9b76d85063a15dfce982cddf184c77e1fb6f7aaa7561c4d43ae599681624e85fd01d415aff67de09aaf2ff6f7350a84d948b2b2e807031638b365b686d41650b06b4b8f39f96338cad2c26d3292ca7724ed5d355f7dbe8a97d81b608b443201a02951068964517590491c5f9315839eb326b356a0372d9ccca643ac5a801de18603580054404a033ffaf751aad053970b57f0ef067893f6afe90f027e9cf11167dfeef949d85a73c19cad1ac7f6bdf1c08058b2258146141e4078c23fc0ce1e7053fdacff533f4b16e8d98595359243b5b6ab2b28bda90d61fbad5bea2d95ea1e7791faf30e10adcff8de9ac7d5ef1c38a3d3706d3bfb5ebd48a137c2a8d56c508555c5581830a3754602a701480875c016ef479f377a8436d57d5fd3c7daa19d468ce54bbd6e1a0463baab14e3b54b7093b3a3a42e2325eeebedef6a9bbdcb3daa7f6f1d2074a1f1c53d8f97fed536d96144d499b5bcd3929549f1add27fa64ea734d57604ef389e2ffbfc6070d1fe05f9f3ad4f199faffe773f4ff3f4a31e8eff05477696e0e76a3bca5b092e2280a4151dc3199a2d02acf338aa49e3e77d64e815acd67de757d9e99290a5fcf4e4b9056210e0a099e08e38933f7f70414270439b1c4ffd53e27a89c78edc9b347dde3f4ff57766318c37aba6dcc84592a02d021401601a0fe769cea5d132434f18489329890c3c49089a3259c58824c0e9f59a75df7bc846bd8f278c6c0edeb281fe6739bb2754a89028c51828224c6480208350908929881440d48b4800414124374ba02538d73aa50f78cad4cc755aea6d8ca32ba8742be02edf0d4c3829e283df68910a91121622f6f5bacd31588ed5067f98c02a92729aa1a958b4e1940d5008e8e88c2801f8f20c0115e8e508f608008236a30c2ca881a7900e5a121cfd5f772433952fb8ac1ca8716ebd468e5c329f6c630d6bfdcad99d7ded6fd6a427df274969067aa8b2d8feb53b77d5da73c9b2d1accc05b116cbe1721044f1178b4f06880e786870222c0f82bbb269a6f7686791ce5bf7316eb308cf799757a9e79c779e8131156ffffa88d0818117fa70f3007eb7ced8e198cef3859d99dffbbebd967eedd5e6f7662b0836dca9970de3d116a3b3b785c00820460e6ea6e0a003f4d4751dae9aa244bd6a18e421bea2862fcdf21f00cc1e61fc79086d0faff21ae104e08b1831040cb4d2186fc03b3f6d96ea4fbe9de6b3a4d25081382580a222908581037805000106a80b80244d35f9daac3545d751729c604b3e11d9295dd98ceda1de53b07ec186671ec866465d8e21bd626df31dd6c11cb74fb21891fbcfce0e4ff6fbaaaa96eedab1d52b1448810217235568ff2430e75ff74fa44f7ec03d2703dede993d90c07dc6a1d5e2789cea0ff4be70e1d32c0add27142c7ce116404b8d5396486464c3dc7d7db3adbf79c1eff17b8d58ef3f5eca33dd9528e03720c8883449638427cd8e3431e1f541f7a3eb87ab0e29164387d376f636c4fbb53538d71d836f540c281020e1e381cc081bd59627ce3c21ba837473c44c18399ff125361cbe354d65a3bc3311ccc86adcc96b688a5d2366f5367ed9e066e3507dcaad5bf8c6aacac72d432096a946f0a7630c00e7576d8da4129005604c0850068a51ab8556ccb8b71d8e2baba9570c3831b316eb29b263707e800860e2ce880eae02307218c8c2ccf44b3ccdacbe3980ae3181570abdc17c45676a1a8a65859920c0a6e8acd960970ab29e7c92eba31c653dd08d559bf9dcf6cea1fef6dc470a24d0c6dc0b439dbbcd8c86143031b0bd8dc58a3678d96c7764645d76465b8c47dd6cdaca9744d5676316eb2326b710c0966c37636b4b2a6278c2d70abd6d4bf3dc32a47d1deee18b8d5a7bbc332e0c6010a1ccae090010e341c76dcc0c55f8ce3f17ee6d55e8ced50b7c3616b2f6f5b8c9fa47dcf66381c856a20979954be9e9d525a8701b74acb9927bf61a86f3b0c53bb7dead629dbc4023179849b233e38027744f93c2aeb5337cab1d20d342205238646c0be296f9d4ca6b3d03c74f2a49087823c444584518499ffc7312453a65320476d2f71dfc98a6842e249001e3878befc2dfb89a7868788882888b8f32fe412818980808805eee0df6ada3b4b76bcb0f3c70e0a76aad869c04e0d3602b81240d41062fcdf98b532346798c531a0d6a1353b3b71e7e9149b2837f5f01c028621ae0c011b624888208428f3179b318c61420c050127081982d80a62822086806803c406ffd7f6ecd39dea62b38762ed781c7781b6eb61eec38caa2b47d3551d9e67564d549f59ddc0bca3699557952acfa2d13aca373accb19b2dab60e693532ecda57584ba8e53baea78bc8efd5b478ace9da743e62f1d27e756b3786ad5ec634267a8d6e7ef9c373fe7cb9c3da7e8f6fd64ee9c9c0de450c9a1c5f1224e1a7de66df31aa7880f837cf0e3439a37b50f13f8f0c3071c3df0e941ebff6725eeb3190ef7a004270b386de0643808bce973b536b5c692712818f37836d137230f7378e0f190e3a1090f3676e0b3030e3becee3eb3d5bff2eabb4bdccf1cd4355959afe11acc26d3e59bebfc0cc0a00090f91fea023005e566d0a79ce7e68d1b374edecdd0671deafcbfd541f8a40e3afc0bf32f873a396ce56035ec391cfddf3682de447b9b3a3cd559da6c6993a47f6cb0f8ff61e7271b12d844b026d09a19d65cadb177e5436b873a946f9c83b6ecdad43335c8b9f2320e5e7078c281e886216eb0e106dfdfadee5bd66cc8c2063729930db11a9ca8c1861acc1a1aa0c18a1bb35aa7f5cdeab44fc5ea130d9a0606483556a831a3462893e1d20891064b9a5e9a114d1c3461d0384133cef0c30c593358adc3329091014b86990c0d9cd9f37f7390204170361bd519a7334331e489014d0cb9181a80e10918bcdc58ace7783c27c412b118db221663d81d2eedccc318cbda94f360f0f142122f6879c1e985b20a3378cc70f9bf5df7e37addf575d7d5ece3670f12c4666b26e9cdb85017fefc5f17b6384aba30f5a40b437f555c0b7b742fcd2d98f99f6a414aae35c1021716ccbf250b36ca08a00c0865a62e8feb1303b3f6edf2892def69852c5688f37f31b65235279cbd3d897ac2d92754b6282b65b34d4fa0a06a4cf6c9d2edc96905281510a0029affdbd3cd77063ea1d9ccfc04d28e2059613d74f7d0adc2910a6b2f053d9f422d05272990b9f364c8fced319df21fcc0ed14cc6c97f8d8ceb6635a3b007052d9d558d5026240a4efe395a4361e8839a77429fbf29b74770276cfd1de6a0e552274c9920c65f75f776a78dd9608c933143c60889b9420c0962ae8819fa7f2a5bf2e12943b92dc9127e28414c09584af095b0c0d69fd816952d114c156062008323c1bc46b9149335d16c01cc7675aa654fe4085d46b88d30640403bed0f9727e91f28514818f086b44e889c0030076003006005b00f014021821b410825508a216175a3d68f1b45c208401820c204c9120307d00c6076a3ed0e083093c30c0fff7f59cb2322b9688e6ed13b5a65e2f8edd6e36234f567663370cb337549f32a16a8105301be67108acc640e0b56589dad2f3cc4cb688b5c016b1378cee7263d96cf66224accf9cb5572c375577a9fb7a6614669f54351783d96e5a59ca71c77d3d81b6dc1863242bc3bc9d51ed0ba69c86eefcf3c0eadf03d8bf973e9f815ec8fc7735f5e2f45e8a1eabd7baecf92e6f6a5db2ba1c5d74e75f078276b50ed2fc0fd16c6f075b3a70d201ecafa935940e86fe72e973e35287e4b275e302dc53ff5c922e97a2ffa12a35688b9e7fbb85cd96ad2d4eff77cb111a8da624e44b34986eedbab573c0630330362082dc40b8c18cdcc0febfad6970a5c14c8b175ae86859436a09418b94168cf233731ebab33e9932b0197c963b59b864016691ca52244b8f211043e18dc976a50c53c9b0959195aa6fbca046d53403b7108c90470a774225c2587089e008c161b024831064219165c33f952d62ada830c65af3ee8dc154ddbb31589fc9b8ba62a0350fc7db362bc77a80958d044a9090e8d501758faa831a825a815a3e55cce4bb145399660d5b598dec6b9fd29b3a90b400e90f29302dc272e7ffef115bc4def06d36c3615c652ff6f57cde30a622b13c00a402f8e695245992e446e0537730cda9da730aecc113c005f125380a9c73271febbb0fcf9c572cdda2fb07b33d0040d82348ee912562a96c118be448d24db23394efdbf474d39c32a181fea235d40baa0435fa89f117f3b8d5adfddeae5b7bedd7fbf1f8dd20cf27ce2e27fe53ab379672986ec52ae1c48a824523b114b083c18a81150642db870d66cf36d16b245be21815cc8691ec4c26b3cada14701efa6485c7673de77a3ac5d927eb8dd13ba28702d90bd3c3d253ea09f110c02b8207040f03920744e3d168f05063e566339e0dc36cbfe1d894b5b18e979aacecf69a95597cc33153cb64669a7d3059d7ad5d669edce229999d8a05350ab3dd48b7e2ae5b3bb6e8c628c63a9df67a9966cb18cd965430a59daea229711efac479e8ee3c53a783aaca777ae69e3e69bc1cb077eefcd3345bc6b29a9b9a604a269089e9f4af9abb41ff77b727a8a57669747defcebc5b60f7ff25eeead86c52a745ea7cafe352baa2cf838699ccff9319f87fbb516642e235d8eaff6fee8b9c9a9c97bf2b0fe52bafc6d35c02174871010d175cfd5fdef6732508f20a99ffbf33acb3b67af5e60a5fe1b012c78ab6a2c3821f2c48490b8a5840f47f4d9deef9c95eacdd06ee50dddbe736d31d248845f910cdc333a6cb7dc3ecd56be73e55a87790ff80ab3d7be8d6710c4c1dec3ba353c82a69aa78f97fd2aa0aab1facb458a15645ff9fa97c40a5099521557eaa8ca81a5699ff9a576acdd33cddcbe88ffb82165bd92d9fec9da280296da664dd1936770e5b1993d63c9a89725daabb5ecd9c9a735aa7bc1c8ecde37c5cc54570eb9d9fb6b44175d5ddeee89bf06fac6b7d4bba31aec2ecedff49aa3d35aa2f4fc5244510700825789352e79f7355ca96af49312205f67fa7044dd5599a12564d29fdff99b54e79b9a04667335c2ea8519b10586c3ddb8ebfc39caaabcecaaed63d917223f58154506ac81532d3bfad3e208104f70ab6926f5182a284f88bb3d9a8ec50c774f54e67a3a8441541290105029413a81f7fb1ca798a6ddf58ef5098d569a9d33386f179a32050811615ec90ab60e8898927119e929e20782a72cae384c6c9e67400057c285081822a140cf9bfbfa526cb51cb3bba2dd63007735686ae6756fbda349be130cea17c36436ddde21c9a77b919d5b5c2e129bbe7cd963bddf59b728c8d529d42c156fb4828244071020581374ff493049ab068e2816c42d354c55406131a26292493eb5f88b557ede9364a755f75aaf6b5021bd36baac2ace5aa2d7daa2e7bf6d9f3cc39accaeebd3b55db32d5433403750a5cf9b0dc5836a7a5cee9539773166bc7a13aaab3689ed6292fb7ebfbb797ae96864c8de55357abf2f4a9deda9ebf57aeac5c59b4564ba372b466551bfa9d933cb7f71c74e27302e49a7df5a94813fca0f1a1fd40c380a6f4478e34a9d20408a94484121725ae1444e906932d989cc0040a93a1d918b3196653122c40823347742fd548f848111b83a9397767f848ec88595e2498552d0adb1956b38d32d1bc437be8eea5fa07e4328eda7c0489f7a437ba96da0635aae6acbc63a27d2aaa831aedbd544725d949ca20e982241f11f489e0ce2d49125d04e41202904b62580280254b960c5d8c4dad2ab949fa240922891732c98f4c8284840c12c915ff7fc58a2d6dd903af1ba80414d7eba064684400000000000083100000201c140b876452b9683ae2d70014800159b6a868c54696e789cc2985902106810080800004802409009b28617614c99a6ad16a96b749b2388955cfbe407b2bbced21b0db669e7996ea27fb4b91597d29f7cba606efa1b4f5bd08e905bb3c9b4f7c76d9d5e46ce0f7cdf2da92d67791a0fc0365f3a9fba1e990c2929b6355f56bd3fc23e33f88fbfbc1b32710a197948ff4fcfb990d48e5073e1744a38ef0ef21a543162db4b8140ff6c5845f4ff94b8fa2cb83b28473e7696d31ae91cbc9db1b052484e8e5689343ba01435c603271e94b1a0398ea8bc7a6b3127f34eec8798005dbf849896714d431799f3712977efe81b926b886ffaf36a670488796cbde4f2ee5dd3b143ccd8f7f6d9946f6c11f6536c97abecaaa7bd76f721219a2d74ace888ae12df178be43bd68950f2806687e46ee1beaf06cedc9ea7a6f49efc72b69674b0a0e12fd59992431237f3cddc73db49ddfe158df6537a30a3b090685e0be64bd0c3078a80fb71a668edaf9df0016ef7cac2cdd61ef8b481684cf9ac21fbaaa9e375a82730a22c12f82b6196cd49cbcb76d04d25c02deb82eb7df1fffba4a9138f71ec6a10c643c46e7edee71e009c331af6499fa234eb0430c5d9309a5af645339e7a3a7caa19679dec7cb769f4cb2a9427f5ae9f2d83e4e044a5bd79646f6bcf1be36dc56b0110f45b88e791e1874b9ea44803f3c4c4aed700b1c1817f633a81e97bb8fc7095ea5ff9b06c3f603a748734a9b3e10f134c94c2435d53cdc5a6931701704c129285522333496b90059234969158ca6eba2fe427953c6c675f2107a5825f2fe0ae0306d79bb9089d4c15667c6b389cf041a63bcdaa00b775808347ec30fbbd564abddb56599dc627a4a6dd0f8add0490de1f2b9f3cf25d286f4f30cbba3fc5bf7b981500560c254594a6b7f840b078d8a5b85ebc9119744705ae7de4c37b47f9393aa3028df317e9fb448871114c67feab0efab33304a3e36ee594882c6c4aefb3b11ce6f7340cfec569dec3779ad271327a73d386dd097d787e41d0600cbb35ebe0abe96897dce02fcd4c9a689b46fd675cfd8cf4ed99b202d97aa1e62d75afc8831ff3870d1ddaa56479431b875aaaf2e79095290ed2755d918cebe85162612f621d7d4bed9ed314bb1793fd5bd13b60adcd07f8f7e53b9b9e5fedcf44d5ad788709c055f449953a4a564cb1a4904ea3c6c629075ad78b256c36467247a051cde2b77c7f31acd1e3b813243946dcb35180f2d68e1a7a482e55224af1c15e04153e2885b871448bf64c3f2e8611e71252121364e1c606ff780a283027592022c5044397ad07feffe93d8ac89f974b57a6422ded351f728884fb1ac74ef7e54e7b43ef7e47cc4b7cd85eda8e65a0ef2dc12dafc37364c724e0a8178ed955c9a6adeb8ff2518ee68b47838bcc7ed91e452037581e9ed3d011d660484edf24e5dd9821cf739347d041176d60edbd5461b12bc24afe58bc8111ee1854331775be9ae511d9271c4dd3302807658386ad6707fb6ad784a0f3b6bd51041dfc6ec7f9704e59c3a8fe64a7c3ae68b24e7fab466e314a784c762792f5a6753e788520304e606492dbf0dc558fd5eccacb27d18eabc1798cbb400de96f6a95342c2a9e9ce1cf27fff3e79c00e40b57bfd97c36b2d4a6b3d39005a3ede4fc0f13a40de672058bc8e6615ad09fcbd5fca52d16e29728b27ecc0c7dea2fe92e0601224338770444b465305a8d04ac20a1738b85ffa24073b25db38a4b14cd8b72d38e00c81b0620e0d004bbb5fd359eb7ca0edfb52ba6f0016cb97936ff40dcc1e89c749757d4e9647c738bb94d677ffe793bb61a75a5c553a21ecbd78b8232cea78adb35ffd03f71df7f05ba4625bdac2f1a463b42dd0abb020bf26d8abd1be97fd790ff826feb4a91d944fe66c33b13c8f0f09d77d11a8a0234031803c6868ec1a9bdd35f134f998c7c6b7fb4d2741a830160d4ca93fa3b93fa481ad45961e9cc96fd9cdc378ccc40f16921b42d9d352d72c276db2574d346b367eabe73e498aab7382b1c8041a85ed6d14f2a0a7b176d5191b60c3d71adf1e7c2aa5b5f9597763a5f328ab15691ac53117ef530ac058eb81b13e4412fb30cd4862cd0242eb79e565c64c9a06b1f8275ebf8e630d89d9d8e5c796a62b3a0ff9fea1416935736f88f379d3ab84fdfe260d8ef04846648b8f83198cdf034d24bdcde0ef1423b7abe8b1065097df0014dc59da7c2389fea800001ba939e9bfd6d91432484975086a33ea84d497d3be77707f9d63899542894dbe7f9f2ade4c5f438c1ece46a7c60d002ec14f0545ea76dec26cc6206c098103b2c6cf7719660ec19aa783b3b7e90dfb81c2be736f81a1feaa1e799a9028388caa1aed3d1dd1441908f5537a2e73c76c047afacc1de50a0e364ebe8cfd25da07d81d4b7a94c72790e0426eb833d00dd2dd2318c3a28e44d8057abc7bf4fc945a9aeac52fb670e8ec26756b2e4582216939aa12e87f973d4a29eb81fb754d177c1238b1e1fcb8b398d1bb32769027ea165f1584b33969619085623b7ee130810543e088d1b09f62f796ee6d01422289138174c7703bb481ec3bdef8c6fd1df2b3296bdaf16ef20c953b5e48ef33acdbec6e229a3d5dcd78efe5a7c63795d6f3a09ad2ab7de07a2e130f2e571d86e23ce215abf769c8d33066cf5bcf3c0c6e2719544f46f06860bd93e9ddcc6006f93d0ce9ff62f23660e4faacabd16bb02bc9a8148530164ecd3a9c8cc766d5d4d4dd866b33110fa6387c42711602d380b87145f1a163e0660a9fe45ad67d98f60c2db749b7dcf0c7c488728dbc97fd2408e576d5495e9243b375e2b4c6c63eb63152dfd5618b12ab5784c265754d10afffefd6f396dc2e7407f139c44d3f55e682ef65277648e9c20709058c268551e87fda5b0a46ad61609d67f079895f9446070379741f4803626c8007efc091860ca9d8f851a2b91f5f365fac7874d515f0790bef6f74a36c061d76a992b11309a02954c189f2640d1da1c163b19b11d95efdf816f0a64ef9e74565520ee91192bc5090f458b90115efa00a7c4eb79c5c3f2908c4a409782c9d0203082dfa4569ab00a7254fa1e8a05fe59c9c3ceca4c998aa855e1b9f726ecbdb2e507a8b2bad0bc0522800ce1e3d5deba32efc7fb23334ae092173fc6e05361f6ebe5171a818444f9e18125ff59214748ff7b28682febbcf1bbe10b8f0ecfe77fdeba3a4af0cde27c2ef12f81eee8d35a0f4c9fb07129981eadb5add17fd3e62797c37a4ae39e4e0efcbf4326e70f1b24e6e98acb50d86f1e1010f39fced0f57b9f47c0c708d83c231b918246b03ebf68933f9c1240b4f1e71fb5c3b6a739f1d8db49a2bee070c57fa72f2bc28bb6c623725084ffcad1fbde900715a6c1f148dcba77ca366d1d7f12166eefccebe8d1ea751f5b2ae11b073e0c2faf9ca583cf54ea78e883c089338de494e511a18df4e69f6dcd11de5e28736ede42e53e8630e6c4126c4f85027ccf4cc141df81cea5ad43f2b81bf3dec3bcd35d115cdec423d5dbd771cf88e7c31559a5a7281ac7d91a31eec9c0be0019fd526f42946096d46989094db5245a6c68f0286692bc0884172f1e3e09025c2253ac644ab00b3f40ba834706c5c408c47e9fbb2d96e875856f5cd00d2929b3d8998ec1307425b90bd68070b33b55f5fbfbaafd7768cc788e846d17cbccdfeea4903ced1d22fae8008024022137152868d22789b2fb22d7d49456a6a1f3256c737f15af01a451e117d3e0df0de8d26792997eca3854ffd7077ea7ce4b76db31d9f723b5bcfc4c84e3bea481dd050a02c129b8db770429dcb03c8073efb260eba9b6f75b5d968134645533f54846bc6c7488d0e298a419ced7397c8754430e9193030aee765f46eff7f5aa4dc4725eec697bbf57dec5fbe21f6ff4eeba7a5b41f5c481c8c3d394ac07a512eeebe17e5e865dea6ebf317375b5f8077f17bac1b8cbe8ba7a3deae06f15e6d890752270e54dce4cc65b774901475d9cce2eb21b7eea42b07fe2e4b48301f65f5a0724472c6d713922f9710f13836499c6748c25a99a8e9881d13ea277b78ea44cfe8c0cfdbcb36983740f100557930f8713e62d922ffaf17db1c34c77124575bc1232555ab0dca3645cb223c003a4c6382bde02fbb9fc9794f3d74de4b8b0ac085e47570940aa9dabd78adcf7aaa8311895ccca05a52a39cc7c752fb0a921496ff228a71167ad62ff1ae6e3a8d14383e2ac2f9ae00e421d65e0e240c0c4347d5384d5403227b455447e69eb60258c9712bf3c547f953c9f3e756a4228ae4dc0423ea52f946e5dad31f13db2b9dd1ab762b3a1e694411d2693ab5398a03f638b2aa22d6265ebd3023f374a23e5876b1ea9ea792e74a0d3f58d3b130499d49978f31ea85ab1445d3932826ae78dba2de39efe2365d23f42aa7b4b7a555c961ddebfdd5cd923587594ab2a086c6bedf6ef71b34912fa87ab59f6964ca5d261f11f21286d77b5d385ae3c077fe53b8e6399be4774f030c3a574172c90cba40303f6c84d43f925da0ba17fea9e122970f61cfc38248bb38b3cbbe83b5954eebb6483f9bdcbfaa0a0f7914120df87db7f7264e1ff396efe7f77cfb2dd114624c3bb9f70a197371cc47acb9c4fa8bc3e3b31b36c6b2beae38e80d2a117ac144a85ad4a3e7b188955b2b7e6a8d969e0cbbab16046ec67a0a58f23c39c2f58525f47266f8f2efaeb3fd064a39b6eb9e0c8419e6ac22b800672addc90f75e2281d6bbe2ca0472338193b70fa0c123a7671c13137d3e81586db97ff38de9a608e1689f01b0640908ed2f1cc2406739f724807505a777389d53b4eadb8c571d3a6a7847fea871a1b36d3456c7b8f719cfff03a3fb60ff69c4d53b1e970a74ce80ce7ebaac53da2bc30f69611ed2c22b13be44fdc208e4f80dd0a7c23e760a66e956f5830810301d365640b5b6044e886c5bb0b931e1874653036513388562573902eb897125a787dc678e39280a0a9f3a2131823c03cef8fb3714b22cf0182a61190251f0ca7fcd7403455ff205d95168b1489bab52ad8182f174b1810210e988119fe84aab4c2cbe065f8d8bdd3d327756df3acf0742d4e1142cb14123f1fbfa22e09a8c9747d4df30c9973cb4e1a7198c89449e49bfba00f1e2a26bc39bcb994ae3424824c2a80d806df9be859645d4d87bd98f4a3d929af57580101cfe6103d0329e7366d2b242ff7f37b56711069158eb9525673546844cabd6ce17a9ac02648d91f1f1f4419d001d8923ae2c84cefb71d491cfe86600105dd17509c7a978428af9a7db80494d914b965109e1de7e5afb83e1b543baea4aa5f6185470e58173d578aa61deda245c3c2e34852467dd66d3afaaa3f863fe6c720f2bef31dc35a83eae69db6ec426a1c58433f6c79d2f76da03bb60e2f14fa61bb8bd5eed35f7e64caf92be379b238ccee00a5d16092ff704ec1ee9a4ae6f5fa584671cf5896d50040a2baf13d5bcad64f328dcab7d4125122d98f624c7a159b9d83cd579a078ec06c2fd10ebc042c130c681bd8ca089fdbe43a5dab2b55c7def9f3622ff1fa2d820fcafb58ad6b0fc25c39ae8b6f845e570afe8377a8e3ff033e01b7ad6a92b5586f8005eed285ddfac3050891fdf829e35927bfed01f470e75be09f4da06e3f5e47d811a134c283aad0c5d71a813e88c9ba95c6212ed6b1b11271248f50de768d354061a8afbe4811ac7902d347a85a2ffaa6e1ba1031d7b24b92e2ecad38c882f71e96f1dadbbc76f9386a1155d5fb119c55ed0fd1ab1b0081e59a099d5e8e504d201cfb7376f7a3b06121598b8d25f76713c65fcee01df0a91d1debe0ddf67df3f431223d04fcfeec1d1379cf49b32b006cc6e2faa64c26caec4cb1b2a935258e3f9a83390a1d1d155d6c073c79b37f8d084f73f1d2005d73e6f3a3602dc329798e8475cc0a42593ee53d054128a7f2592c8d339580b038b6581ee3ac8ec99631e2eba99966632e413b4285c2b1fcf86d4fe8eaac7f127ce801312f71c1e2c873e06a50e9102c2993d8bd337e81a05e44592b5c9f5df00f0f4d4929136a228d0d9a1de971d82c59bdc6807fa40d1468e37d82d152bd5b6df304cb8d304a4aea25706b6142fe27b1ef414e6f5e7ce8eb2ad732ee6c7e0734836c37e099ac079a503c5935302b967255cec3adf453213887d5907a4e98f24d84e95f93ba60951dfa3eb2a9b51668ed22b4920e4ae3ff0712df5efb96ed39e18aafa51563ef48de8bba5b2acece7d9a9780b89cbab2c9d743c60913640950ab901f60e5f888ff2e6b24278fc686f1cb6b4ea85fc37e384c0d713cc0d6162d2328560ab080957cfeb44e63702adf7ec873afa55ff0c5e941a9e5fd9253501dd9841a8e3bcb222119a81aa54d78fd21f9c0ff22b25da2dc3e7d23d5ffc9e505afd7b6ad2bad9e19985b20459204a40123ba411a19951cce4fac6cbf50c3c1b57f88b162513bd140103343046a0b573b16bfce1db70ccfbbbe435010fde51a902c4399140da94779281c171a8ae34831a4694331c2c5a5413a8526d121a47512556b456cdb8d33aeaffd2f9e1372a8122fb5113a51940d1e3f3b8399eecbb24f3b33361b1f7c823517194fea8a18c9ad2c5066312d6aff9e4440de0e3dd0541fe0e4402ca30630bbdae276d0eac608085652a4eaa1ac93ba3398f2c31a9cda01f9691170f8068148b6fc31a4c8d60e88706971c6c544901671fdb3b64eb498dd0f7480993d10e14b77f18c8af4ecdb76ee5cc73c7d3ebe5db473699f0bc66997a6ad124bc3d2d764ac9a3067a22c0966e8004e2cddcd9ece0d6d8f6bf231f982e1da5809b3b08f4ef6fc637042c3eaecfbbb5d8736fcf4b16403016069bfae06bbb3d25650b2c202e2d4ff7c83166ba33443754bab1324155ab0272910f866f72738b96cb4dc913e02a0983f33878fb4f8263be474c4ba642dbd2598a2bbc25cf884544a77dacecd46e0934e60145155a6c5bafe656c4f9b52e6a3598c4180dd28f1baefd7ecad2f4ae4a5e97e8ed4fc375a6326654dda41ff5e208da402981d9df48bff045f03d69df5079f0cef17d64d1ac278422c900feaa3d6d08bd97c0f20e43a37be1b6578c881d6fdadb502b6a277128ab7fabc09f0c00fb8ea63ef01e6bde2f2b2795de5d45c9394305fed40d8f31bfedc7d40e09576050aa9c54deb0af2cdab3c3563cb6de8fa7e95f467a1a63aae2e2a0f38d4abe22f76e9af9c50def84c4a7a96120c018f496ddc138684bfd7d325661e6bc2aa418b32cfc45a827d25c419733c4ce5a3b8c497ec3f3cd783842ec7ba11fe549b23c179e7234bf0e5be166e55db548e1b16bcaa3588fcfa36209984db2799998ef8c2c5e974eedc4d85a4a39d632b830bff773618d325bc58f3aa186e921ffe08df7efdd0940d268c2745f9b26d2eee212c1d6ee9705288833eefe1d1f608e80e3ad9320a20017f94dce6c9fcc76ba127241fb54ce8a0965b585efe1dd053d4ff70cb8f2e48da08f24db47cf4c933fbc80069f7c3e891675e8fe01ef14dc4fd5e4ec1cb460b8d8753684baf23cc072b1c85983c00b82f2a9ed9ecd3901e4ff3934bc7b6e5b8ef79cb4323262d34671f2c2d91561899060120af50b346ff25a0653816918ce0ae1b88529e9959180f53598025a93c32f076a014f56af4fe379a6b98ae86db417982345f21d719de7193eb2484c1b3c9f8809518d33216a8b30146d081125bf5271fe864492e05bb2404583e35f7e7e1e13afacb2f76a6f8462821574938612e47867d3dd8afb5377afbd433d235a923c4b3dbde6881b9cda72fe08123edc9fafedf55072a6b738b201c532bf9c7b858fac9f6046040dbad5b01bb16f108a86673a94bb3eaa7e0a29aa6ee768faadca7b4dfaf5801d1968fe16f5e88d031c081c7760b582b9f48fe50ac19af6e13dc28ac2886768372909a708f6ac2894a1f28d376a426f2dc1a38fc96f8f3c4fa96da8580b99a79e9e0be48d5605f94bf7e7d2b386756d659e4b4f19a7f3a8568a743149d6a07900e36f55eb541a2b0d70eb62d0b610f68b95d57f6491c32fe268b196a7cb171a46391e90534f0f534b3abf2e4d4d3ca010d58c9fb53352cf9ba0fadde1defaa888db193b6bb0dc0905f1e297e9d09ac4dd8298a91f592dbfc4bde95451e9818a5e6e131c4fb14f98b9c78378d6f2a0ed8c0ce53e245c9ae9fdaf94377219b2be4c3e5be8311f573694ee97beee7db5a05fd5903de4802f63fc103810c8ea8c4ba69a39eb57c0c3d1acb540577a396dec342bdf5fd8a2faaaf085a24e4005d99a25719eb2cd1b7a5d33ac387aea1903734ae106871f67a0239f4d2800c39f35b8299364a526256acb57383ed50e68b6c79c102b8228d7a67f71743182058d7fc9ca55085892dfd0796b3126d47e1db885411b022c24630aeded9ef62eff16893812869bd0a4ae1078d17cf790e528c7b0bba3bad64e2dc0ff0b286972e439f610ca3f5476f12f1264f40ee05478662f2c8f49fc024070e80854d74c750e7c0b2786bf3c3154d184fb6b3de48d1df153cde41149c480e920588dfc9d792e52de917ddcf1fc159a8c4bcd3b1b8d0e190ed3c262a826bdddc3eed21f61c162dc7f20960de643a4f33853f5a1e0dc16d7b9b6ce8dd4728c99ef9e0e672dec38460e7d6f580f2ffec38efcca576e42f7dcd388ffb52372b910570644eb68a502ce9e86de1f333a68f1e40a8c495d2e9af0e301cfc286ee2b7981859b47af9f1c3c8a96407be5f459c2d709734385be7afb04a46d4ecde8b4ae2812d64e2614d6c63cc7375ff6c974fcf83d1e1c6bda5dbf4daa050af02e9e8e25ecbfdb32c5fdcead9f81ff7efeab9e7e35cea33610135629c3799be49e36b4d1db33dff464e14e0d3e1adcece50a8268986a202e1cb11ad1348ef2d00d9a9bad68004384cf6d9bc24b07f56bdda771e90e2c6722adb8cf40fde22c5c7efda7bbea4861a21de2f95b0e9d3ff00da322034c1355e57e7f0833d1520b1aeb900e37a9ada8a3fb2f2de8e0c2aca526c128123221529b1a9273bc34d07741024e68bd08aeef13a107a4560e9c33b49aba004cdc3f23809c93adcafa67db7e48fac874379ab04a6b95c0e2d6855d6fd9ffd7398781d13ac7355ef18f3d39cf35ed79ac91c8e86e10ec1ddd48ff3eb22e4276b2e09b8531ed4b60a8585fc95f0108af0a18021397644eae7f1c234fda439a48f208e86e8362135285f7a0602b81f373c0db04b03387c59f188728979a28f80a527755463257e229e12701e414b06ce63b00d0adcfc98e7611f2eec7d49846427e9c0840c672f5e1814a6b6d69db26f39791aca298a06d042ea4a1b471609ce2e0126118f00734cceb98344bfbaa8945458c559644ca9f62f4184278eb1fe0e3a2df73c0f021ed1c81277e411392692fecf473f5bd60a19e84ad4d9413fe35c808f60e84f3b1ac7b21071b0eecfec034557adf09948609dd90351f00f850dce221202ece4cc0677760231978d4f1b5519a45176991b34c45b2ebca4fdc164d7867e592b690f443ff0e0085f5c872c110f1a1debe433f90ae18b59d18d561a2744a5813a6a61a75bc81eebd894f2e8f124ad55de04aff91dac28e12c3e30a547ebf143e7c00796c67e6b47a93200d003af6fc2db066ba8e0284a0155d3d4e20e998cf3247ca4d612c181a7a521ba811f85c0326f27f39ecee17fc01aa0b6089716a42a33d85dbcda9cbafdc36aedae7395fa8b767f25867422e2ced9be077e982f0da3f009f1be8adfaa03ecb1d3ae248ffa21ab6fc6145931d18a75d6956184fdb229d4c0442f864e1ed9a8fe5400c8485d16f0183978e0e6974e804cc2efe7a69a417938db611d8ee6d7a665b88449ea27de5d3f9c87f337e3a809a541e2254ea0052418d5fe2add59320bb0913ac944fe2de53567af711ae78ac8e6601e9220a9f7f9cf8f2f5d797938f68e8aad44219de40b47a842f3f8a9b0db8d410a4a57edd66e927674029cb21d2a505cc3651521ec9f7afcca31b6a8f92c19f5ff38e469f118e93269208a5bb12712b930e4d45e87931b5681939caf46d8348737d24e28d11c6770f905dbbbf92ffb5fc48033ba72b8b54422708c9dd70f737c4b82da661dbc4c4b0401f2329b7de04bc0206f58bea699ff96cda02cd4c1d50343477ea039df2adee031726fbf262d4feceedbf85fafe42b1a9d0618be1c56a671faf3beade8ce4a1429e55d0e2a918663cd325d1d8ca3f8b75e3676bee259042433829a0674606333e53207d16699993ab0d6528b89e5d9c6814beb0f3182a7dd3fed8a3f74c1ff7da98726223add132b6d5819c9d1630e4286075f622d38b22fa0bfa8cb75d95c5658ad631f59b2b77c5b8ee6a2940ac0b45d525a43f10ba44a8793b8f7c875b3646930321518d2ea1194d31ef877fb213b981187a12b1796748e38ea502c4dae20bc1f6c6f373940c0ec72cda1681601cf09ee64997d21d943ded142ae2436cd7a2150de3f2617d3a948a8097723e33938f49c6a78f985d3f8fc9fb03ce5a25a761b33ae30fbb9bd81c1ef68c3c5c60ad44a5693fbda671201bc3345ca720543bde60c5daea432ab7a159639fd87e586bbd091bbd60f4a801b2735dc98182c9ded8890270ac164a72150e388857053046355a39a1494fde4a3aacad96dda93bf042d2762c39ed094cd19a7eff56f93138533a957a45c40e838c88ddff8dd653d61a8eeb0e24e81cb2277d700341b2c6e00d2f15412a49625a985048c565412120141e3fa2f9fa400e9c8df238422db06e67c830462838fdcb865c9628ce555af6e85acb1ac88bed97678aa70bca53c6e99fabe6914cb166c1ff0a1b5dd0987112636615146910ec929db9d75da72bf63f4a0660343784303096cf83a8e3f59440c7175c579e847a27f23e9e722d750a6421374af1f002211118a36b4bebea32464c78624b41d605b21c84e08e35f31304188f2cf61ec65978806cd356afb084627e2071565b7ada34ac63742fe638a7d52b867f42d954293439d1d84e7eb7aebf4415b62899afab8c75fcfa4df386acc99fb7a032dd1097325df8768049843cd21a1297259f0426e1d7b3911051e29f0e95e4f1e0caae61eb0478cf710da2f4218462adb7ac755374d078cda908ac25b9555ab217ab1096045d54b33eb966ae086817331171546cae8b2808fcfc066a86d2782c68bd45b51f234473668ddf3e6425154402e5c7e6b55f4482820e7e2f6e6102d39923afc1c0f0b816d8a350e62275ec827ed3e5df2800bf71c74b12f06bef0d2d743746689cc484bbd8959bd6b9c29c3ca2b21914eb796644e216da5e9aae3470f19a98b8c9d707f76e312f3ff1b38cf921486f8f1ae9f3131af4e49f54a9bbff9678104139fd86bab173807e1cb51f3e10f629c3f83bce8e10f2a30e9afe46faecdcffaf002cc3803c548cdf2d25f2c428b7e9468dd822c4e724dc54c275d0d4740fb927e2b26b1246a8b5fc7cc108c8eff357f57f080dcd8edde46cdc9fdd5176dc12df885762f5b6e1a4809a815f008c861da23864b88077d80762f31fd8c229d1b897697b7dc1d9c39dba42e142bb6f4c6f66eb4de49dea3833aa57244b6288125fa2691376e93ec0c8a7cf4cf9dfde7be8c89f4494d56282351053dc4c308392e84a2c73dc2e75d96636ba7b17d534df2a6767c81fbaeb354c508d2ffa9faf81146882e3ab47de12a3e03f9e36dea17a1aa0a864646746c794f79ef1f868cd4fef1778c251b393f8a46a031cf644c885cdcc840a64fa5e7cf06cdce03922c06fb60f378b3a3d2d13290b2c8b26aa1bf2fde79784a846e1869e370e7b3c5b5a5597b4a93d9d12db7216afbf94219924419b629f079edf2291e09d5e2bcafce3cd05b67d595864c67517c3decb648eb28e28d429e6034d53ccca4ca91418d321cb6d9f1c93b0cd8efafb83322f86f1d907536f533834cbf61f21929bb8c70d7172a603dbc92e1b1399beaef86405c76b2990584f3f62cd563f1b9a78f30c66799625b353658d3a2245f30792fa5036cc2247cf1279fca8352bef86a6f6e796569c3e6e258002f1a5456d4c17c4a4a51cdec0230612f5584ec2f331741aa82f7fd723c6992c90809c650dd01f248c5675a27a685162c72601c0da77c1c18add790a3e159d7ddbcd947bbbd8156154d009af984a0a15acf29bdff080879ec88bc402a01f650486a0522d184d2f3fbef84ae22e52821320c403f6771e7950012c24a3d5b853135053f567ec848f0b56d55bf531c9d50c50cf135d1f83b6642001f56aed04e4c1b03a5bbac5c4d74cf13e26cb544be6ce99f0f1fa83c9af9c51fe8800dfd085a1a1c131d237a2a93bc2d384e4816f61905ffd3ceb720ed536842996ff5b91fabe77c8993151b6fa1143e644ceca6d39fcaa3ed3c0114bc60fb7f34de4990b2c1e83f3b3e4fb68bec37a3b993177bbf7914ce5abea9cf8c63d128cec0e55740dc15a823353de033a188ba64f1cda66ea2b4b921b6cf0966090249df73cc6aebee309eea4009eba0158b878048334bd0ef0c967e8559c19ed947a2692047263f6a6446b31867fadd53d83170a157d67e8b07e1de1fa3aee95e0adb2b353de23a04edf4dd7493a7c78d74dc93feb39c35056503570accc568b8fb157fc7033dbc6845321c91d34620c8c24508046786773a902c4e4fc1c7900590396a08cd395c2bab42918da02dd93ba62625c243d6bdf2089c8decf56f1572821b54ce897734936a573dcb2953428cebfd813d733244dbb5f13993eb76d55466c36cd9de00685a4eb02df855d753f53da0441ac25d3444ae03527ab2dc14fff0dd7fe5667e25e163b000f59fa69c2a0013fb4f888f00b01828ba148b887ba5d24c8176a6f4d548f63de9e7c96e8ff35b13f85af725d7dc4bec9cb863ffdd1679d632bd2cf8ec9b3e775dc2f6d247ece1aa3406422bf5f20df614cf4bd8c4cb08d12852a2cfeef1459e8212b7eba3dffe3b2435c9589f8f688026e3e9b9452c67913a17c078d172ee46bd5a27c9116fbe7719803912562a53a2053a5ef5cc3e3b920c4c1d0bd3ed681ee1bd74862b111968f9a3a9150777015f05a021362d11e3dad7fa213d57aaf9a380205057c00c649b6a8b26077eda154cace8665c0a7712c4c8b20d3c07c647f16f6a97144184aa58fb3710d2b4ed241fa99eb828b60bb82da98cb71c9190f7fc58570ab3d8ff4d0cff9507dc8a208d8ccfd2cb4a0f4c33c3ebc0b1ca815193ba7e288df75af9e7005523dc20c6217cd887eee32311e612363f6b986374ba41ea3b53aeddba9c85cf366b3d0ae25358575bcaeeee3d8d9f03c00cbe826b0210553a43ff8b502e8d3e3636937e8bc2538789074be028be52d66b703f79831baf108f0b8a9c5890f4dde0fd26906ff043ad572626c58ee4c46d5b36c5e29512e8f4e19fadd9d2c2de8bb439d7f0ce74f0a69d495b770b826688e7194fabbb4d145008a0bd997db48afce432cf8b142a1818e3cd62a5456de8c8077bb7cd16715011df4211ee1eaec11fd51e01ceb5677f9671401735b7a95b614a5a28c9356bbc00e5e6046a36826e7e37d538e6dc9e07cccd93837d22c4c5411b6084248458e26daa001b26351fdc44b2696ce59ba1d42b4bfc226dcf57d1626ba8b2aa5e89775b7db9b332c85aeffac9cb0f91d7a9b9cabec50796c5a3a715c0fbf985530e5fd2921fb1f5f0e21be21f3232c6598abea8c220ca610ba8ff3c9381012673484f2d53f397ede0bc9723016eeb4abda3b6561566b50e8c591e1f50420d8bfffbc0827b3c3c9e3bb141dbd7e4693f4e6bcc3c11abd0536f47ff69792786875db10b3d0c4838a5710aa0eb3cedca31dd0e94356ee04abbbef1200f71a8687e0b1510009ab83d3bc6aec04271e0bcaa559ed01a08cb0ce358415ffad716203c4ff9aac437d09c0fbd46de31193515543801b5b19aa3b878efc430a8a58808f125d2c1e67a93c12674b3835e5e0f7269265687cdd324c10bb4b8b0529609628166f31bf8f70bc826b224a0adfc7f5d2748735566e4b2e2330b96ce386e5260c4ea8f64a3516acd543b812697ff88c273da1dc425da0e678267add9f3dcdb90094cd201a816f4cc844eec16e34e8504a9cc7ed8228683722ae560008a62e442a5d31945e1d9625766e4e2f0c752dd06ef07ed37cdb51d65aee4d63f5c18e1a01b98f88f20c5a51747749553764b21d0cecfc419d7f83551cfb19d39ea73b991d694b81bae8ffc0eb313d4185cefe9f31a13cf42f8b4d30036d0c9304ee6448ac1c53c7d369c83947e859c39e9988c814a18a049993b761493e5e4bdb4c8f7447bd2b8f51eb54bb57ca57938259cc7d6419c4b2c2c6be54d3fdc8fb38b084e11d2ec014aba4b7e2fd5c17958eaf67d7b36cf89064643d0060241f3e490b314f5c7981cc60ebdbeeb935ec94bd762f5ff787581b221db61dbbfc170eea0ed7434ea47c744182afb62669085c34fe83db0dd7cc070239dd42154c5b549ea49634bf45e21d228d8cc91b8151708963032be124bc1813ad317876456e1127f364c2f51ac7867e4deaf3b52ba6954ab7c881c83174652c662164daa8b086801c6a5be9ed6b0eda510ed38a86119e02c279536e3a4149a348180c62c1d8989eb3a9b5a1d9e76f8436194fb6a5c196e07cecb06d0978c5c478c4432ce7e0860c01c93d2a34b00f7e567be42c98b7ff8d7d2cf5f3b4679eba381f10d50b300f573f502d0aeaa1b93e88e577b928adb756494b931739a9bff7b8d6376e9721a0594753bb823f76d7404e281920d242184b66ecc11ebb2bc349a728bed7d911a403a2c7bc08b240c5aad9007304f86ad97e0551d2581f0c70102a45686317802b8b4c1c4da19edcf45d56f2c135988a85a2982b7b1716b5077041f9f94c52d529cd5e4b7177f06275b9cf8814d9334ae45e5266458649038ee9c3b213d4861a7b9913cf3ea6622fa92f9d461f4aa3ee046b8b7deaefde8d6029285740e12ba90f394045af21153061bb679a224f9023cce33f0769c3222007ea2fbd57231a2f007fd35fccb501aaebeb7e3dddc82c47f364eade88496b864df6ac7e3d7ccdd87e33bf694423f7c670b47abc0704e7419c019c9c08f5499a1fb94d8bafc0ae037f972d7b34df856a908b803ce3fccfc0a367ff871646d33f2e54f46fc5770871f2081eb5fc6b6f88aad427be33a9aebb5f3f2741ddd9b1cd2b84a2b930f1f793f42f448f54df94a3a26a79069f6759d9bc5af7ea63a7a4e204f0e9a537b26feff41b8ce402e9753e7642f550919579a09c51a3345e1f66a4a3483873124a0da065d59d23793e10b075d3bbcd6e8266b745e8b95092cb1d66240296edd13f9b930889e4a778af98ce05dbe17c5c4382775e83ab04513d26098344afd7889e8904d0040262f57e7524d492444d95a55764078e45f443d26684cb57d0b18183aa8e2c36036cd270ca819ac5a24b444daf9401d74cd6573e69e2da3d11f0b1d2d1d25fa24baea36dbe80c4c34ecf50ada13b15430ff5bb3c9c6c4c9e6687c23684aaefd74bca3bd5989b995f39726f20e91d5fa0aed88f19aad6efd7a4a31ca0715434a358f621075e58a785dd1e4281d8d3dea7196578b4a965c8dc85725717f5ec95a19ac940020de034188db86165bc4e185360f46cb7af065fb0c2d8c36b33f81a42a512ef4fe83e9a053d7de219f693afa34bd1630f9a334ebaef8b08a093ee84d17ee4f285d2fb8086381fee9fc68fa45c8a52b8ba13f3a2b561371f796d30824d5e085462147628f7fd4d86c7843827a0468bf27ee11f70e62886032f3bdf842623f72e07aab07beb030fe47992b8b65338d99f6dff9c8ec67df992398909b8ec309860ca647ad4fb8521b4b0be89ea8f555c9c4bb918c586b1e3ac911516872a8dc841f33bfe6bc980d725940dfe77bf23e47a1800bc278d54beb88ecf85a72842f02bf98b9c688b988589bb2fcf46f798d02debf51457e8995462f13f469d442f7338428739830f85c52e68c8dfae6f45bbbf9f40ce77639dff99c4fc3f93b9d33e36798f497e79c91d8be45d2bab5187850b6f3313095fc652332c675620a00f4c4087a0d43f142e110db4f3918fe671d9ebc5492e16f9ddad0086d20b15f7f32ea194703175d2ab4c4ad4effb00c78ad77009923065e9d42baca429b17d7b015178f35e05165cb697305f981c773df58f5221351b4b421b0776641f65d3e762e9eed144d7ba4c7e43c009f5f88c12e9a4d43e7cd6fabdd398d273688351a98824f70583d05ef83d2453afd7ef135d1c58e2517f2b08a47ca7705b574a65bf26fc08583101ce875828e08ee680e57c54e85fb212ef9290d713fd831bdafc122c73028f975cf3eb33d0966b97d14c1fb34d5f98ca09f9c15c7900fcd668901eba62222806c185408cd856c485ee44fd3836270ebc38393fe6e912e63c9f40975e845628d0baefc3a42be249605ee0279030751857e4dcab73eff8e0b30056f0cc4c7eeec1efe1861eaa1957c017514e7d792d0c5f314485ba9b90bca6bbb7d1b9f59cbb783e666fe438e7bebdd7142682960180d859e24d11d1a9e737644ee7cd0d8feb647c3a93e807dcae1163073928660bcca3bf6944fc608677596c06526019b92c0aea6d68c75d07f498c2a00e666ba24751c7383cc03062e13f9dbc45f079274f65683f03c06bd70f85703373eb0c70d3f0aad049cb29041efb77cc8ece411f0ec26cb1a680b937d71b01f617ac77dedefd8c4bcc67e19958ec41536802817a0c95924c3eb8908ac07a31532e23051349e115d09cf650a65aeb5ae78c6f528ed1ffcbb0a6962fe9f3584ed24b21345396b51f107dd23d6448ce6ae298a19be72dd941e293c5317e54c8cfcae0efbb09c7abbe2c856c47c93efe57a117f898f32d654114a1e724b99cae2ffa70ded8bb8e122d9d90726411a9148b901e8e4c97f890b1fcf2bc54694c631e4832ce850868cfc00c26b21e1552dfe69579cb99bd834a328f11690ed33a235b2f97c28e940c2ce8508b5c91ec12413d35196449b7db1f13e6b3c427fbac675e65e0bf28fd37f3783671761b61f60dd063d572507732b068e6cdfe303c42c45604c886a45b48c759bf45eefdf197f86c39a7dd05c661f11f06cec744842cf8a2d699e407efc9da301686c638fd72e9c0933289f8c2afb6f411efc9e7d46f92307fa413b975fd436a27afc06a080e624bd1f05e18d664935427a39478dcdcc817e6930583c08cba966110df6c0ffe8c3c6182f06f4cf33ea8e7859f61edfd34ddf2a6a677c3e99182ec9545bc1897884f98de443a7f4f6d0bec25cfe8dff9b92888b0c1bc722e15b2ad8d182d6111df67d214bbded72d2e792ed17374efe78e073a6edfe90f3f2b1e6767d6031dc85a76ddaed64a3bee95f760bcc4b353cd09c5cdc07e5dac7cb01f093582989def186dbeaeb40a8e5b2a28c70b099e0bcdcdf06b76f2103a89d73fe573bb654d6fae133cb6fa05eff14eb63f3bdec30d6e8506e4d5f8077f13f334c924b903ce9566c506eac922684468ef168e8099610f3a2376a84763061798d367c09c91b66c4f26bfc26f8c610aee7294b4ec5cd7860e573a6567b89001d27df9085ad167eb081ec39aecec4551e1ed11b939586db452160989336cde411b1619e38112c664c00b966dd0b6094c2806bf15d705bb5f6cc837ca6020064bf216f822a4229d4956ff4c468d13dcc8ba1450143e72277a6af5ab9ed9215eee565a36649bb8bde85e7851481c72ff1bf863f558ca73993d1a1a6e259226eb02143145e0ed45330c3aa360221f7f2c3dae8116f38072e43c60f71d3f4da453047b6e974abb481f2baca2379b1755a16c32574bc0ae6d4dbf071b1a2aebfbdb1c1f2d98bb4393817f5fa43985867cea8994096c861efa045a159ebfdfa27d4fd80790e4be291453b346a31b60c2f225bc3c1dc3ea7cd4e329baeb263b279737617f96bd75fecbadc8f19be53e2e24821314fbbdce27f080120398ed273735f8cd7fed7651a3d17d6f1f539a0a62fcd987922cbb208f58365eaf1aeae08273109d95974c53932323c3583e02ec3ad41499e29dd09c99b90ff8f070f5a7355b9f8ee033e55cc34ad054f334314824f165067501869a16d3b8aeeb30c836a4a176523db32ab089336255bfc6454a35d097fb00d54b458f15b47a7df7f23ff9d27bd37aaee035affd3d0eacab2d27b67a5d18135ff856ba9ef3f9fb65faf2e0f4bedbe23bc787238b42580f9dfd3f0db3cd2e195eb5084e41215df6f27dd258a6b66f37cd8812ddf81ff542589b7f3cefa097d1ef01edbefbb472a3c4aedff4703f1921d3a78e06b62432691830bb4fa2acdba25903222c731ea81efa9b841c5789c1aee74f85a091187dca30ba740187c301541b1de4e22063cc3797b5906571e3b1251489e15367a512d13647051200aa4b46a307cbe0b5d9635d2ba22d87b1f29ba679bb2dc3b51be0cf4a953dc184252ff008a5e2e0abda644c6df90667bff3ec0bbd619575ae1504700d18f37c32c5180bc18cb2de2fd881f5406148e83df03c22be1be1b4c170f9a7777a441f6d06cbdb54299cd1762fea8b3276674b0cd6cd61e3adfd39ce4a52098986c2d93360275768cc8d104f89505a4b1ae331ea2e84b9b641e920129583947e4bff9523956a81504b422aad27a3da551210da634005f21c26672d0ef2f1f28045d0f18bcc61f972b7c0942b5aea982060adb85029f02f3c12b28b6ec4ac4051b0c7ee08843aa12e779469e24ea6c4ca6926f9a4934e85828c5ced6900866193f9d1d5a3acaca0a3e5171422ea34b90cd3435783235c5b46e8a1d2793f10d3342c796719a5c976a9ab99a321c4ae1f669628e5449868deb6bd308ea9bdd67184cd0ae0fc845c0642beaf4ae995ad232aa15ddcade22036d7824c40c337a19f9334ce0ea2be7efcd6016af6222be48c2918bd559fd4c7511a4478b1eb4cb0eee48840a05f1c4fead265f6727dfe63898d30132c55ba54c989b0294424fe83a577497a4b1fca1ad0a4763a198f80abca1433f3c6dab3f6937c3fb70a5e3a0e712735473836bf95660d85fd357c40345cacd1c796e2821e03dcca508a4e4a4b5e5468d4e56cecbb10480f1b181e61f6ecd8ddb2a3cfade2da4679179b67476c148360e728fce6b60e3dce56cff7ffcd764f4bd9b652e04e3333ad8763650ba4c0d3ef23c627097c4cedb5fe93fcbd6564aeb27b881313637b2b609d20e91064e3d8fde9aec39b0995ace3f5946fa4968e000da43a4fc15441b278b543fae468cb8e81a85e0501d4e186722a1cc1759806ce524a8d60a71c247b76e4590018b6c49cc7eba90319ef0dbb8aaae14631dd80f06efb8ef8a1ab3e6283a3c5109e152a47c955fd12a6d203010b4e1ad1fbe8bf2286e14e3c5a64e1f1aa67678805681f6913e2afc4f6b20a616ee9390d79d87bbceb60595ae3bd9f57be92f9abbe47a18843de3bdcd7df63280e7d8061b51cfc7a23648d2b9dd3b3014cfce5fb5bb70f2e6d7a395de0a6a87b594c823c332a99dd00b5b3898d43e017601c19615722c0f8ecf9ee7db181f78fe240cd8271ad6b02c5c48b848b86fe625373ae2bbbecaa6eb0dec53ef5f2f1c69a7d17b8989cda3637fec969c6e126eaadd4411348e1f44680d8e9abee0d2a2c2db09ce4ea7a8b563787824e6da06df7c38de3de02500d2f5643b310e8ebbf7f3bc0f4cee33f048635a09a568d624e94fb2f983d9ff6c161dace32f2da1da44a63d297b1fd5570b09d6d5d102dbf4c2d1ccc0c3c3f0227633809a130e4b6190970c00f6dc0080621bebfa096fc753665f09810155952916967f4a42968d009400a8de387009ae61230bf09865cda762dc0a09ad0c503cc7f593737ac33add9af5d70fd7c166a0c3b0c95a5af6ef17d349abc196025bdecef249e086e1f6c06633b6f3bd9f3ef4a65ce498fac2c76a33b87b0ff9e2579ddabb7710e17685c418cf2005b755ef0e75b9a31a923b8ed722cf03b7484cb9bd9dd4d77e4080218ebaf224bcaa04314a8279fd354a1ead24d44cf886acfb6876f2961010e2ba6b585307df369ddc4e5b403a594edad8565700fdfd96a9bed2006ff4492d6a73fe97ab5707eac69d5d58622200c73b5e502f28db2b2c1b30a1c777f3f08e401bfce3171f15f89daaff6cfff2fefda6ff681432198003c56922686fccf9cee66316a8efa0d7dea58541e404cbf8229c63e2c845c135d484a641a5b00c403f42b28c70caa59905dc7f3a7826e88a851d077d8e502e85ea6523b699a875c2d6803702372d839b96137ca142be72ddfd61c7c17841305350b59ec5d136be695fd7f39c27abe05cde8e6edeccb91dae4d37b07926bf3fd049f34c6f68da6bee76c5569060d73f3aee5893dfe4025dfd499871825d8616621cb3c3a3fe6289941fa2783fbcf127350fecabd39eeeea9f5a751a5e4d8569cce7f8c720a722b23758e34c642d99d1c19880ffcc11e9f1bab94665557eb6fd5c13f7199bd8111c7a16a9e8e3ddc8f47e9365dc44bbc423c7d04c63462ead73bc8070cffd4638767f7e7133ce08f0e3e705ce710b9045b8c3728e73cc5bea3db94558db5fb4b09c0b8edb01a435079a25ed5cf6643cabdb566bc3003e413ee74eb9f2463baeaf47ea739bf4ac15ffc74c5d76327f9c177f0d67d84cbcb027473481efd4c6d058bd4b852669a2a28ba27a4c1f99ead11a2749c0706c61b82f48d0653864985fc48a0058dc5a47b521792795a199755d4af17d24faa9682b30d379c8f300fb567fbeeae3207a45e3c17c404d89d25df37fc1f3a7f6a4f531e2a43ed6972e686a86dc09d5b58e734097f339751401c28531daeeec26d0e7a1fc29f01d0b644d3eb75450cf64e5ad13b914bc1b9333255e496114869833db619412fa2d32fd6453a4690b2683a9c9e541895d4c5b3951a0cf36befb5c400f84dbbefa9a46efc716bb3f9c63e0418e28dea15052de5dd6bbd87fa6204d7a019fd5f913365bed47711374721aa30d145f5d47c55a4f62265c8111ea2d6f35230336cba2f0b2db41302d5c379f7fe63171894860c6b50fe4316f4206c35094a5e230250b0fe9532addf9f7e8dba62bf996dbc152ee60fc241fb98165672e723d1fad13e0f3d9e1391b11231980f36ff72fc530421a85dcf44f263653de288200ff2f842d0a2c80b5e8a4cc52add027061d00541176d79260628802fc0f64712b4352a3ed94c4868ea4f90a99ded04a47ba2674455a7a6dd5c3a6800ca1fc2ea97058cf7aa9b7b5ff26c233c235136b5db74203575d81c81fa084c90c832846a0a7fc13ffc426012fe7aa2a56a7b95275acb17c8fdff55c57fdb24b135159368d1e3386a427ddb00c523110cc328347bbe0275eb6d03949586955bde7a2d9d48bc5637ad23760469403458d61c737fc35f4fa0ec8686960949b9903dbb457ae7f5fa69806d31141874a24bde759dee36652dd444f6183f3adfb12de10c7fad6cd1fb39a6afd9e09e2a14ffc2eeef80e146a8174fd5edb4a52717c0c32cb25268b7f0c56b8c72cf482ebc5628d63a9a1d177d55fb1bd422dbdeb39743fc4159096f6476199378dfb28476b73f48638706c9708121de46149f9a30cf5eb41984d0d9c110ef3b3108bbcb6c2fa167085594ce182b3d5ede1ad367e7619f3d398e55664ab8f1a7b49efbd4d2d10efe14bc88bc6c40761143d77dafb22b6dd83b6c3b24ea9a2d057c046298bc1a64f9a9676b1a5b7662e64fec9d0fc03601a0a81de43e6b1d566001e0b63ecf419d0f78c862d001e3935c4634b2b91081239113f04b94fb2b0f28057ef64b41e66f6aef94f02d808b434c53f57306e0f3d0ac839bd2bb926da58979e57a2ab04c69b43b1eab0046d1914a7618d79a18cf52d5a35dc7874d8f33e2ea175850ff1e35942e16bc69d11a5259ab3d6b68f577404118121300347aa61e2e5219c2053a7d0d483ef947d5fde169ff1c44b13251663cbcef695f0bf6a5c042be554ca8c69b8c06d0b3cf5fe862d7ec80af00c0702389f4eda0ab606ffed604cf7f1f02d2792290be02af616949f315cdb271d1f652688f320dab800c7fda952e385be0cbf25e48b0a639136ab80287b88dd77be3ac54006c788482b9535da22cec367a25c39fe1e3e302e596cb49b0a8c9395ced01fd53eb61dee84c354b027b6d6f262fff7eb9f57368fcc44d970134580941b07c0636a1274de2fbab904a3756cc02e88f397cdbac861e12881ab1e69f91e3cc0cdf18bac1f0db6c59d06e819cfbe0c2446dd03b5954bbe23d967c443a2eaab131c0d779539eef464e45ffef000ac713a596b3fe83a36b9381f6dd308fef690870b4f153c4555ec6f3fc3d5e4d610d9e5a5dcc6b670609965f3be9af719b0833a83111a02892a7561245fc00ceaa62bde751444dd871824566f21cda608722adacbb2c6eca40906362c86b91d843a40fd326e02ad859d280c62dd41bd314fae5778420bcd740b17125a3a3b033f522e438c0edee517b72ea7ee7e130fb95ebcb73896274610e4823edb5ca5a1a138ffe87d25d273b67c0b0d5a33680c32613267cb28fc4be97bd21dda23f01852e42658b81180a9fa9af14d9ccf69407f2f05c31186c6ea93e09f0f568c11bfe2a0e81d2bb1cbdb4145aa701374348ac05fb6171793e36bf92acc9a829651b0e04ca3e3dfb762838140c00d018dfade9ca09ce10308a4f956d4bffe0b1e849c46eaf0ac11a3b5335eb0c3701e70059760414905e75dc17e72e5a80c8f198caafafc9070f0915eede9a6e76d4f0b20f651ca25e15350bfec8171343039014b582a8a9b71ed70f424c55c89b6f42456096ed713784940cf5d84c60bacf2266d1c56a0ad13eba92df7c2c4266492c3dcf57f78cc13b4adddd927f92bf9575fb4e059508df0a8d72f70416b99724f54e3636edb5185daa4c1a5dfec2a187fba480803c6383b8aab044626624425dd95c74db9bfff113c18f405b544237765c915fd7c9b3f041f6cdfd410dadfd1ee44486f1030cfdb60bf5aaadfe3d11d6a989a585dfdb98afd9d4efadede5f944bb2e9d2061788b1481700dff080906100f7c4d9eb8301b0da9aa4b719c83c086d7643be7149a46a534eef801642713c060c72207e02d83b693902208d326574eecf9a3e02352049b3cb2e0c3127b4039ad860e5f236c0305a252162fe8781e8d119ac64e769514f8dd7ec1bc12e0080c3fd34e128028b0fb30a531988595784323bfd4effc890cb2763bb3be26c976dd7ba1a1fbf2e722804d8acd0aa388de0d2cca325d15914878950bc17c435a97458630626d9778e3f6ab9ea1a30ff39c686a7f406cce422896929ce6f54f6e0b2aa845bf8a837748db57514cf1cd8053e7e5eefeffb883fd494ab8435938ebcd6f6dd3eaf5e9bbc8f5f09133dbbf0a605d3e7335c4d51c08e78ce9e4bd74f8f79dac1beb466ad5ed03b44e1f0b41412203f5c2b581d51affb00f0d77c5c08d90373f632d5ab5d3672ed685293c383bdf0b9851b41c38575c981d740697564b9bb7db4287a3e2bae70589589c126a0974539440310690c2533139080e0467f96f0118a3642c2f1cf8e58a5bfdc08e6c3d9c7527a152e365710ab6a05ab17e3ad2585d448d245c99b336926619fe1f01fa9a4bef4fa3990578284940424f360dec0d20cc22d42e9abf9a7620bfa9219cd629a9bb8b23c4492e6ca96f76a934339b945901a40b3c5ab0879b2db980d6703447af63899cdb84443d202826f9e513c7a2235cd49be5a9c843f86f02393c0f1f51a42c8df08c065ec3e0e77087160d54d9d2c05d6b386d934261c08c0850477acdbd6a58495cd1037488aab38583d39873426dc312cf9948d88969a12e8b51bfd06234ae024bae132ee2666694da33a7dff55a57e4e7bc56773847696267d45615ae843d9ed7f41e89e6de90a0ba9cc166ebac68e67d1b970b64cd204cad53a4649416f2693e32dca5ced0862094ced9cd07a2cddfa26f91f3ff242e6f290040501e88b818ac88c06489b387e603824d8d0d9065c1d7f7bf98f87c5fb62c8a10237aec55ac65eac597580744bf8fd1cee1be3186fb8ae65f52f3f16900f6dcfe09da6932aea103d6ad60d2ccfb944d35072a41c9f4f583c861e23543362e60b64cfabbbbccb3826337e8979c7d781b08c039f503da815c66f3312b81e573695a41971978e9cc57f50c78f81f327ae3386ce339369eddf677998f701f0cbc30612773044c4018a55984bd2075a6d794a45bb77929e090d909e707a641d280e666debb1e26e127a9521416b44685f356c7aa15e8903ff77a05a7c6b11904ce4e2c34a285dd761489e3b41561b9d8f5a80043ac7adb71320eebe019c8edc415cb1f52b8e6e02eac95b8e23e7060ffca6b6e3646e8bb7771ab48d987f18672eda2c9824c6e49625412ab7aa90316f6c783e0e905e5408713f5b20f8ccb95d0117a94cf0fabfb6f2ce95fcc54ce5d897e4593024cd6db1923a648dccf01bf2b73d95b46fe529c93509e658fd6e41a7bfa8d2f364e8119c950d39f3aef1de0c08c630d5ec0ab92144a3e7ba015041669a051aaf094793853569c4282d83c67217e89046ed0376e7dc900d39b4f705ae166073b08e3afcf095a308ae827db008af2265649ce6e96d6d18a3ef702ac060929a7e461c40673a18fb88284929ea9cbc4dbd39e1128a4d71d791b0fa65b6a2349fe4cd71184bd24adef0bfdba13733df10acc5a2b94b8a28d0e06c70bafd9c44340e857dd2bcb77a81e1e20f88d4ed522c25c90f118e4eb371c61c683c6a634558d872074c983408001f327ce24e141f7cf9a489468892297e85861a9a148b158952d466571a3d4d97264b39bc5f6b30bab4f10762fd47820f28da313339f094ef8d87efc12e0f1cb7ab206a218ac23ca5743d0d0092cc50de70f0187a3a41a9f1e535f40932aebb9ac5749d78d0aeed211cfb61a4e8cbed09f22fdc65e28b91e1c03f8e770e47f956ea7ae96db69e4e7fbbea681466fbb8e0a123a2951f81c2deb455dd81edfd2a282a86f920be16686f5856c91784e0853f56d0db2f040efdc3f97f3e51280f1ae14bd5d3e8af58fe2fded15fda51057cbb2813e4a3241c15ff449723a2eaae001937e1f74ed0fa5919f92e5cadd607b125b75558d6f52115e72b1b532b19658764605bcb616dce8da0c751290e168855468efd4263f53fbc60d967d663dbdc13eabc7d17e3c54b1d829edd0dd19451ceb37570e0e547e9c8eab1f5203af4a98240d574774954461c5f6260bed0c9aa908693c6e121bb2a08fdbeaad04f090ef6a1dd8b6e1921092bed370f88b2cba760bd7683f9ef8cf982adfff1630df48c70c2799e33dfef6fde5d9a21ba57aa42ce3e31f15482c1165df1fe2e2019d8d1a03e3488ca0c14718aa8fbdf313d77e27966cf378fb18d6ae30b0456a928df00826c011a760f1639787c5148dd859cd1eb9385c7d24e21b29a9b3960757f613b4ed57afdc75cd1fcfee21526879797793c263e5b6df7d1d17cf8c67e4818bde56add7366ceb95e4f647a83b105ff176dc3d7ab69c3953072dbecf749cc1484f02aee68514af98e0775bf6a53c3d26d6d63b596331866ef578e380362a7f6f77fa5f19c0cc832563fc86fc7fa3a5d5b3a4df9e2eff05e21eb41f6748a8dc4216313a3e8ca704afc7629a49a0a777dc3404815b78f864b23ceb0ee6adb19c1b493041bd3387214a158c604f10a8524285b1c224273b3baf4e2c5d0c8ab60e9391a8551ebe861d67cabdca479dcd951ef46fa97c3e7f3fa7b9ee4acff948771b4ef8bc548062bdb6e1c3e1bf9145af22ecbeb6fb35a81705c3ad4246c023d994855eeda8be51c7fbe3dc1263f3ce8a906aab32f430c1661e676b22f93285652d4e4d9b11a0c71b508eedd020dfa166cc1fca8661b5c4a4e6c3f6dee357d4771f2e14244b383d4d43c48c2c49cb17852b40e0f4661ffc319a0e0164d0c1fcff64918c9bfc1ca4b3b7b6e41807f7fe3ee5272c55b0ac676b5a72d9259a2c2a7fe003b1f75f0f328e9b540d4eaa03857ba4f8f96a9b05d40f8caebdfa1b6b90341d2e9fcf9e8f50a4cffb582db530144258ad672308b2bd5aef9fff946c38563fc06676330137504191595970c535ad27fcb99d6d2095b43e7d272d3b4051c28e667b6859788baeee79125dc8af2e98a08d325c6df6be592166f6cf60ccd937930559a1a5f38bb5795590f1aaf8e315df4e06190603e05fce832d2863234689764abec91b9ff1840875d4dfe7c7fca304e639d820df38264a64286005c3a7a0a8eed7722db57a5c2135d514d5b200e85585b3a56892ae7b49bdbd8af283561e28c32043726ffd644760fb87959e4b4e866119300fc072977461bea403db503c8c93b3ca98a22189dad9ba197169b43de34776983e1e5b66e8f800a4743e85bdbce3ba46e84dd764eadd632ccbc9b4636010d09206e93e877da4210de9d406e129fac9ad8f6ab9cf2a5fc2d3c521496e496d82d0168a99682b45007df3732e17d73adffbfda04ee8b43e5eabfabdb5dc106fb405fd06b6c50d3898d751c98899498a1216c6e2d3a7955bc558716eaacce87964f7efc00785d3f54b7491c977f47e3fb80fd2f94ad5d1f15d6e7d53e2b97c2f63ca4a6cc236c07c20d6c381f4fbd4e74da929b863c58c83b8ca77befd727b4ebcb561ea511f3e495f622ebdaf36daa65c9a43824996afc77d46dcb87ccf8ae4642ce9fc780858e9aa62e8d27a655954da64d12ea6b935b6cfbb4c4c480ae69a4402382538beaebed0d6dde6585bd1ddd4a8755a283128b4b2a823b128705e10318d05a5a53b0d2a8f8adc208de129d7418758a90477cc9133ea9183a047b1bd680c689ec6ad6eba6aed1028c5911fbdd0aacedc58f8d65f17f78c85da85bf1b00a20072958cbdf066730aecb7c3fcd8f2820280767395bf8a88220d9bcfbd5ac4e48607f9709c7a8d2c8aa01709f72d92d3476050dc1c01e48c68bdd12e35d30f445517bbba319cafcdec7bc6faa1c486fabd8a31fd1f0d279c14d1eea936a8c1eae30117d07dd8a1274caf841fa48e4dc6b1aa40e0c4e4706380c64dedbde9330a7190f5e48adc3df61cd83caedadd13cbd040591f6eb158d6eec453e5abd1c0bd64116cbac56cb865e1ab2ec48fdf329c295eb29adaa2bf3e4210598ab41273b3ffbbcebb108d229b7c6b1bcd7e10ec6697511c3a519e1f5f0751231254a8a1c8dbb4d5ea6952aada584e1ef83fe76ab737c5d3f33d018ef29bcc29aaa2d9f86a94f3608510576e7fc331ec6d9163931eaee14e26665f25433de21673f81c5cc57a952a664a278cbb736416189025ae60c761431ea4539375a104d2022f81180bd8efe109c3c8b82dd7ec521913b375a139c609ad96560cad43a01a228763ddc1c1f368dc94537f2d8e305d5db2636769dad01857a70c6992e4e06e075185e19d90e100c967a014ee51a55718c859536a95fb89eb909b0cce0f8faaf14852de6b3408e88e2dd59c49ba7f804b7b121d13288b535e1fc8f7dee0e609ade8565077c42c32df3b83160febd12eff44405607c647fbac70a9e81e686061631391430d0ac83ae27953d10988b5d4c45261040af13529cf6e1c2632512179a7f3bf860c8e32183ff297a307c660533a1fed1d2313b7ec8e5581f6962bb08aaa4d88cd157b5b2c6fd459e7b91066e66b37e369aaa06d5b6938524e9228b30b4fbe5b33b10aff3119a4d27d6c9ca203147e818ac04aab26d20ba979a363532c0435b4e22ee32ef2efae27b22edceb370e5a30d678f1a605d44e935085904fbb3b9f62f6238e531fe5016da5fce77dbcb2dc5d60eec0b75c93ea9e7344f409b69a43e34adb7207578e089b1e83b83f346b3b8f7755b683ad0ecd4f32febbc7fdd1f2daf0fbaada1be30d281bbb3f69f8087871d9b34bf68e2af03aac151ae3c1bb44cfeb50c8c0bbc10a7a1fc0188cf57ded7619f12c8a71dff043c1c1831406504c94146000dfec3cd01c3f8c353770fe89abd69210bed06bef645468dac2e82e98f0cf3d854219900db365eeca16b4e32757592ad8bd6b11d9b3a3820ce80957206830080ff4299ede8f325e1cef515806e8d3bf87908c7b38376f60449768ccce62bfa089ef52a86b856e3b3202244026ddb2a130a2c6649df04ed03f688957f7c23494e88d318fe1c7336a13180c1b65101ff2162d37f4a651a844e293fb9058db192e7f5c02d5bfe4cfa253b789f8f69b2a5ad031b9e1b7355d535b027b47f77f322f58d4c8904cb84eea59bbb6bd563c1e0ed7f70afe934add49ffa3f39994c0f69970726fe62bd1a16de4baee59c74eb223471191a2fca7acb7a0fcf21950c15515a67e91d8e04a3ea555c841645a4c2de21a4f793c62a176d55c2ee3e77f8906c23269aa39e7125515accd3197e5d93e32b9c64b504baacdefe40ab4412f5b44229653072448d90d546053d0102cc32731f07b417aebde4232379288a6fbc100095fbfd71a4042d7adf32d6d98f29b610d301ff9ba7baa91ef9a5cb613005e211cf2574ab7202300de64537e2557c9751ed3b65e4ddcc2f5bccc376095107fc55c304db59ce381a8b2de19fc1ab54117291080f605c538c0cada4a1801f12691f3c55bd02e326933509670ed53222c88b2eab397949804488429b9a783f6054d34f96db06ec354336c1724a17bd39c89e310dd1883f592812bd62005ad737a639903edd5b5d2ba38282bfd5d9a1dc14d1199e09fcc37eb991d83b47a4021520fe48d5dfd8c2eb2fd6bb0eff0247f814b8f482f8d50312d3041d64a966113b1d4fbff10a3be7579c7d23384e843bad5d452fef3022256f706aa36d4a6ca1b264feb5b6f56376a733368ad18f1cbd63c49268900d23b42c5694c17eeb6e3eae45ce6eb3c5f0ccf1bf9f2ea7a366fca61e91c998f3cf450a0b746015d3a4fe4d55b488f2bb38c3168a548300bc0e58e7491b027ca2627c058e1d8cb5dacb7b56e9bf8a0251c2550412ec17d86bbb93b56c07afd8db77fcd2e8d2cf4219839842415b99efef811aa0e75be7013fae42f607d341029052574d315f84d853b95ae4e24cb8478567989c99cc25a3f7f98159e4c861afe6ab11ae1362cc9ee6918e4cc0d87926556ed675ff183becca3f691cd3603980d336934c6e09b437fb0f32c47a3a16f28198839b598413ae3094faf2e38660cb00f15bb9ac29c1d2d3995d2f89d4e151a942518e166adad10fddfb6159a2843441a2f76100b33147d98a62850be611620044dc9c19d31f6d09f2f81882a093aa87a146b3356835df19d9d631f597ec01b52f4306c75e37793937ea1dc54d0538cfab89eb24bc3c69ca1ac3a9b0f82b910303826fa4523eb060d67e628417cbd751defccc333184152694a265e189c08c0d5a370d193ff361ccd4bcaee20810a89c7a38eba6b24c8ece48c22bd7ddea86f08701f7572af8a933e44d4033e164af06b68a5fb2e153cbc159598ea3bac67683ca29c4f5dccdc02e9a1bc832355fcb7e85617fa9814aacdf994e6576014dc0597ae9c1c78f8b0f60652dc17b39b0656d289c191c61d8ef365daf2a0e8226ed57b36a54073773f047805e4cad4c51057b7272b3c967ccf84310b77c9eb31710d6b42e1354c55b7de5eea3f7d7f97e9c381aef4f1896f88f787ffffb992353e5f88ff36e5d96bf5ba737e809c4bdfb183c88184198f2afa7b5f8dba4d4058b028036e35d6be8f549de00733963d653f0d96b37235b6089f97767ccf82f86d0790b4e2a1e1dd23db7ea7b1773c6c911d79a824e63b65059b806e1967a7dde880dfffcaf6b8c43e83e10b6bd65a607cf0666c179ba3d0e9ca27bc6fa0c45a0f4905c93a7e3b45fea0d4c062fe7cae0ae8acbdfd8da13f1dc559d43a84553c3ab68de997b6f06f20cb1ef30a32e3c25085b4ee2c9334d95ae45095f8fd017e0ef7a4a80192a5967eb6456fa5a11fbb490028be9cfab90bb312a9e51f4116730f1f715bd354e1455b19206d4a58a4e85829e5f56174e0f086a3e1f4128625cc7fa94d510092a8fdf7e95d00357375793464c100681b2c3a0d2ef8120082c2ae32aaa1d3c600083862eea48a5f98128a9c23041d5631717f15f3139053e663435ad80705a0828507524d5534ae2ed1e191f0e9a4c5ade8baba3bd4ba1aba4ce52e3c7830c8cef5374686f3b231431ce14e38f98241768a9cbede864e5096b258ad39eee971d900be5e23e7bc1a80164a318fd3fe29da3d217bf61f76dc47ccc86e672aeee88957ac360f1cb79111faa5d6fdec4a2e86cf5bf80f35384bb040d3e8147b7367c5ffa5d8de5a986232730dc70cb5d41356d9a6e5d56c1ca7df9e28a1d7bc8231cb9fbcb504e8a46c32baabe8463011e70c5452690833a7559468cab549668069074aa6438eb44b07f8dbaf5346c4ca4126239641eb74bf116f44664ee6f6c00d7ffae82412e8d5a4c8bbd4c81fddb9ed837abdac9ec8107bc66eb008d808dcec46f022a1339b8f6f6b346bc8bea91f36bb744956c8d2123f5367610365f4f9d061873f5944b47406e8820b325dd638973b30471450e03c3279156fcd1685c0f33a072677514d1096867717cee2f4d5d92f786e455285cf53b60b1808e0d21664013180e0cec97fb08aed8f88a41570e04ff8c89dbd62566742cb4605a7317b99c21ada6db72927a1299c3f4a4f470177c07ddb5bae4f301cd7c58fb0ad8de38f5e11b845ef3c7b2b034e12b83334abd174b94157e969f3086cb30f4083ab4318d530a063cd395b8a57941918a604f389b83d291647a171229d6ccc0b3205269f4d153b787afec31a36735d30fcf4a8b10482084e450aa717c204b890f138cdef849eb2ada92c5d1d3b70c967e54b430d588037d4ffd53f2b398c2599eeefebfab4a391cda2c557a7cdcc2ad52191fbe1173c4ffa2d9b482d6131884ff6b1f0cccd92fc9f2b4b21675a10a590a9f3920ec2c3a313f87d5bbe2f45e00a0d5dff9f23e76bda3a49d97cc0ef388455348261bc65c8645f1cacb773cb4a0a2b627ee406ca219654dcb77760772bcb2bc384b254b62589815563df52624ac8c672946cb16e95b15fea4b00874858e3475b56f8c2c7ceb38f401737ce851208060a524a5b414cf9093e911bc447bd564d2c4c674a4f345999567f7a4093dc0b07782425bfb5d025103335910636582ae74cc5f9f1b870f7584105cb2926b63ffcc96a0ffe9d50e1da6465c7fae087839bbb4188cf87e8c7d040365fd7dfa0aba98b46a2fd5a4487b3757e8ae3bae9d8ff53209eb9b6e815a4073f42acc263b04d106296104e15de77af67e641509c6ed136cf3a162b1e6f34c355409b74de38bc995a6eec0c0d25f85d040952dce0774e80599326d8a6724eeb7314dae9505a2ab13ba89ce76905cfc386fddc4b2b49330d6771a668dfcbfba20010dce22adbae4cd9864bfc0e5bca8e7141b7935c1dbacffb68481c6e14c3d0d7f0141769cc661ea726dd501040a778ef5b7122ce9b9d892a4160b13a39a6692c9fa9c573e2ce8f954d5176ed0bc58641e4bcae5b42a35487bfca418c56aaf42b617ecfe15b5f8a493610dc76ec74ed16ffde8d0d26fa972036752d61e8960d5cfdc3ca89c9b22a58b368f986eba7d4a0df357898c2d5d9e9a380bd53f8a4828df011c106954790d2e660a30941cd76feae3c0e5da7ff7fc1e538d860d509c19d8a6f7d8ceb2bac12b13eefe1212d433a04cddd38e71381154967e6f30398ea0e59fe6c447cf06837102fc405bf82ae87700b9798b401f80a49a3460fed47d78fb3c8e9c20e6f6d41253d92a1c1945f8d45518bbf80b63d66b354672228b4b0d9ec6cff9a204d0f7433c25f3ab431b599d75c2c7f3aeca84ec2749c80819d45b47e48a9fb03956401f8e14af45e121f2ae65d6f39c335dac837b685f80efa6ae282779779fc32df549ed243ff413e9eef6320b5defc28c4a20db89f2c77989402e3181e2b215f39a3dcfebaee16879f199207482cc61cb3910c7c40568c94bbaf6ac5118e561b0a7c3b015c49ffcdea878a7eb75593baa9135643076e4799e4c0beeac139bcd6ffab44a7d7ac6a1b58230d8816986b136942a2042fb68de5ce6980101552626a343e2d7c1fbc54c4da291d338e6e4b8aa96a5e96b64186c14f9a0a2fe95c9e9f130800c468f2449fea54beffa29c1639b8d0cfb57e346343efd5a15a4dac39d3637521faa05ec176915d5e48a85ea632436e4b4babc9d978705e76c716f270679194978b09c826fd29de79f7a7e104f11030d1d60295a0916688ab4b8547b23709ddd468cc38ea516dfbccf8a359f76e1dd04ac94bc597c12d833cfb0ebb5ec74b553f9d684db3e66561eb1d5860c31c602f206ccd2a10ac60f4c98b41b7da3ee91a68cd1f9d8ad7596bd4a4ccc44a54d69167a0a30a3a4ecfef0de9a7137e8d4723926ac26b98b8906e95473fd3973f8857af054c9976e106a25a8a54ee197c892c5e209817bd8c6b192736e4a941309b331ede61db297ac951070a888ccbfd395d78da4c98adb00960af2e4570e8b49d41ab8d3e3434c07ce50e6078d72369e82b19b7a69373f6d5590ee21231e0ab4910332d436fd125513dec4f1ed77922e8e8b1b35483627943ace90ebc760738c04223b53733524a2270b7b0441f3825f4effc211f45567f4473845519efd6bf91f34a9f367ee39cd741555147a75baf6614cff7a234a87b30203f277f673af6e187065c74d817b2e137d9c5ad6d304912a09021478c8e601c6ea401acac2bb024403437d16d495c0972ef191ebdbb06b13cc5907d0549c17e216d0f3854252970a1bb56e089c03815cee97aa5a93c19c970d52edf25d06e4f5536785a5097da7cf768534a5b753bf535b884e3e3008fc384506cde1d430f55ea9f9ad844ca246996b2f9c959a6548fcb14376f2af86d5a356f9323948ca51c1ca5fe02f3018ad2b791b17b2b4bdd0e480ce6b11a9c92cd26fa7f2e66bf3a392f37896fc6d39bb52b01a6ec5d4259c97eb1a2bb69233ac0db8addfe0df077d54582dc1ed503dbf967249384cea332133124e1eb9f5443ed9498cdc8b2b739e39cf9b6be75e60f72be8da20825a81c304362f1e6f00ba06da22c1ce1df952a353663a2b9f67c7160cec3e4b226f029b2fe84e0d966bec06340754b081790a86cc01e3fa29cf7c8a93e9aa691a8c90695539beeb704cae100bd80d97b5f0b8314d52f62ff85298c2c126f2e60aa5954ac43e8664fb7737274f7c94f3c41c0fd8c1c6066a846e11fde01d78adcc2badfcb3e5e6e5ab31709317dee71ac03a6dfb982351abb4085f5b655369e0fae48e40613c43b761b62774163e9cab7bd52799104fc53298bbdca518156f1e0c8a50172d5a11228d5d98d474069afc09a9088e79e0c973006335faa069490062435e5ccfaf1f34ac491da2a4e0cc1f23392ff89eb2f8c2df2a9f89f8476220086ca93d742a592140270c35323e132d24d048e063758917bc69a31d7e5ebdacbee73f42f00b2fb676e69ddc0f7b9644fb22d51a9f407aa8f73b77a42c27405819d094fdb7403e21b3be60406e806278f3db20398b55a09cab381e7d12c6a811648dde6008d0c924d0ec375e293a7f89a3390ab1658d3c0d934aa3b8a7b023536035a2c931dff0f8fa2ffc2506e8a50170fa62041c51b70f1c6bb328a10d7dc481b6ef7cd41438f43d75ab3121635edadf02a97c2989ef72d4195918f6fdd67126b81ca695199483f7f5589d26e50fa05c17e05c6aa458d32fb09ef596d74601e54dc8de4ced1a9550c54fa2fc8f60d40985d33d4ef1867b17d9b376b85781e4376a0ae390355d2f0cd82801bf9d1cfb5a084876bd21c2fefa2a7baafbe7371e2fdce223255d2469bc96b3fafe286bf7cb06d0d9ffa863b8e4a6131fc09667fd99a8ddf0f0638c36e566da7db750d96f6dc8cbe8af81cc427498df010c284d486c5e15c88df3b589caa86e30a252b5564136ab724c4b23b65bd42a104d991b7c1a22d1f6542d98364bd281f779640f399a1ade7e18f9709bf842bfcba6022c10f8aac90798a1ac9c9ec72351a7e15c1244708c7b57afcc46f50b0a04ea7ed0279dbfb85142fa0ae5b3d401d2fc01def6860e0d39dd629ce2d0b1db2533b14ae2f7187c7c024703a8a5cf4e36dbcbd18cf75f2800b281acf58b2325464faa3a935060d483b330270b8453a076804e69d6b77f9044e41ccc94a43a2001e6c0b7998996c0e2c441045683d9343fe368bb9c17dbde3cc56311f840ed2a71132b20f52cf1170c6b8825f7b386ed888a9005c6c947496843dd29733e8236dfee3001c882adf1c577fb2ef49ed739c24db0714f23438d74e972c649d1671ba8b7338197443db4b18ad588e0b46fb8c882587a3fee461d320b3594b06142ed40576fb549d8621c2db68aca86b4aba49c016d39df6a6cc9f6ddb5f7f1b299093443253321be9adb014e71abf96722a7e8d0d922a62b455297c2b78abe680a14f90ffc88977f663e73f4df83d73f4a12c908a4e19cd04b648ee6e61f1434f9023cb35de2e0488acf1cbc1e15c52f00ab9a9ac280d4bb037ea564037bff94681a9fe5114ed66de22cc04b868984386e3248312988f733e189996d071de53ac4fd983530f9b8ee00f00ce3df4b379216a5f0ef64df66d840d747986256f8bc915d9da3486815adb66f8f9f15e0dfa506f2df507996ae142fdbd3fa3908794c7203f1fedb0d9331d646f1049c7a79cbd32e65f7fa55d133440acc6d3675da56692d8dee1d894b36ea9f7de6a63918554695d6c4e8d12992653c36bd2b03e10a483d3a39cc28ae503e2c799264aaa026e978d9c1591cd471a2e4fb058a419727e76269ddc73557bafc80040a2c9164e61be9af1206f6ae831c87e60e1787102297a066153db94adc8d03b09d824b9eec878634b09d26feb3a083b9d30a74cde331d3974f1932083f65e44233d7c15048bb91b1548e389b087d62f50e86565f2c9cddf4819ce24e37365b1030f4c0a21e8bb3d8d24054e465e7a40fce56860f9c3dbc30cea383ceadabfabbb0d1e764a673605803266aa5f3d11408a7ba9c82d083a6c06175f9a9e5118a299a9cd1c6d96bb5a95473768e0de2a8071d5ecd2019004c358cbb031cc730f9daa1884fe140e011eef0e2e6d33075c0902f3c0da514a695311b0b3b227a3091bec2b5c4cf5b9c7af1b77a6ccdfcfe41409fc1467608149c6044e45c3547d1ead0e2e7ba9cd80ca0401225b45e6a0bf4686e6fde104cde7a315c2cbf8b5e59dea0c27109aab6ece456fc60886b9b17214a1b108316683940b1b4415e12d011c646fdb3f9a01cbd0eca1acd08230e3e3d9ee2f43a49ff96523b2ce98b1da7d2794d75be6616ca69c1ce12e0f0195367c0537be3af06e5cf814cba278c7b97db5716c602a5fa3650227fc40e9bf543335fe33534efa13536f0fde8236b3b09e813bcc732a518c7ccfeafb0b4ba06dacdebaa7349053c9b8b229f23660c54564eb14cd013791fa94a403c67c26fddf0f0bbbb1116961fae39a275505086e43735e2016eea894964dcef06ced73fdb009f79b7c3703d3ae7c1e6d72340b032b07c492deed5a2ee9b76ba6fc240006bd2b9f6e9c13ac07d955df3137b5b01e1c5cc17491134abab5097ea3de0726539c835f1d86dca5afbef3b16ed4313ea44031ceed69368962a50922daffbb8da4562801ae695c61220c5f183dffe1f589cf50d0167a6491dfb039456bf6280bffabbdb472d0b8be2c4555d9c99d0e080df68b55bd59fa6f63c4368e132a0ece5785dbb2a40bc63234c9532b3cef67aa2b2976faa867be200407213f24252cda132533fd46ad3ad1c08d4b2b15a13616aa8a611848105afbc9c46f07f33d6dbdbceb99053b4dac569dae4796ffea19c17c81595a2bb04cc6f8ff01c8d9d25f806505eb9a3695b85c70a9fc38989128244f9512b05e16890a09d3752e923e62eacb1b5aa42b5bd127609f36323cf51416255ae0351244b0c3e68545868cfc3045caf0172ed827071a5bc63966228aa52ee94a1be243a6f1786b8d970c3c4fbba62977dac226f86178159f49705c340042c35c04029fb18da5056586016fe91f593c56227cc8fc2992b6766c591d920828d794ee7142b66f7d24320f44b4ac3b963d53239857b59c051736895591e1be58eb1ec41bf830e07f94c0c0c36df5ec0ed592f66e3b24981441705b8ecfc783b62e9ff73a312e4bee32fdd4681adc32b85472d3aaf0971a60e58582f4ce494b8260c6c376b6ad89ef9352d4ccd424d0b612974d0d312e41b6d088b8c35a1a14486e2c4acb3d149aa8e73a8ea954909e1a52ea6fe1aeffbf100eb1e62c85cc27a4a2c7deba2039e1815764ec17586ec668542179c58254fa675417fc49bd48893a1a9028f61c6ee2899a95097e8cd24d91016b43002c0e630bcbb12a7c5240b32ace439afc6ba1a80a819d9b8767a8cbbf7af494a81ebbc05c1437828165fd0a178226423d57666bd6dcf163048a613ec76c1e0444662e0a9f6f31ad29d075a0e868613c5db73fd0208afa64467e8908899d2ef067d3d0ed57550b64b0049da1bca285922a1dddbb0dfb4271680f349d62d33140d2914b37f17156618e1c470abb149be3cd5b830aabadecedd10841f810bebd6ae0c4674ecdf6bdfa06da6a303d273da63417c1099cef36081ab6659959b32834c02cb34d384611c5af819da8783e1a5613710a490f189af34b9693a880cf0cb1ef1171ece54bec4d6de9464c9e3aa8ea2fbcd1fc02b1a867e880c283d816d381b37b51c322f56915cc2559b7f392f3fd5c1553e4c68e77e1f6a83c23dc6d4a2ce2019d035725a2974bbb37124269b95fbd027b998e0b9401e285b0d1686a994eb77633f618536bfacc940d55c3a377c77c1a20a2c79603d054f99088d997f0696a55defa37bacfc037e69e6f8a62eda1d86858833b5820706d32664e61f5cec1f2db30c7faf45ff3614e3ea6363700098c54c719f84035676a18d49cd81a07257b76a539891df14e068b57e670f32d20b13cc5485fa646135f7df2a4bae5869a48f89ac8d1695982e12bd9f3a382ce75bb38909fd98a998894e64b931bdd3fffcb80773de772a0c7e68ddb8e0ec4a9d593414e1cc4a434f1a0a95e5641d5714b94d326c4127000fc391c76d009af8387e8fd252c1d356bebf096f3b32c7ae2d77afcdeacb68d44bf9cce455fa7bc8b1212f50a165320efeb47fd40ed638decd30fc598e77e8dee9eff590287fd8f0c8b6ed4405ae05b052f96692546c41335d850887f1cb8a59b969b5a304b112fa3d17fc4c9dbb528ca31f6418b240a34612af31f32ce29ea23d3246e913308024f0a86c1b0b3bdf9e2b14eb59b2286b03cf1b01ad89b5af2ba9be1199f49d24ce2a029f22dd6a4a928af97d0260a7757295b3b46ac000af4362a0092a62d795216604036f331282ccb922ff3e422aa562e3154c4debb020acbf275b9f1a38c55bbbaf3d829e824a2a102c16949b60d23c1ba213d1d1a40d14ae1e2c25cc19a0a1006fb1254fa3e38ed7618e6638ee325c2dc0f638fd94e7ae43f5551072f6ad635a66d4ef596ba1188b37c117b1dbe2d8af17a35e4d96a77a21538e473a3dc8da30976a6e5066d8b34db921c934696ac379541bf428394b553a0a637363ffe5b9716aaaa10fffb10d2ba5eec13dabdadb4abe8c958dbc15907153197668446b79d06e325c213946e8922b2649dc51a4ebf85eef7b8b8dfe8a38270403827129ec18d2b18dd0299a3c17e1947e36356e207e46f534238b185e0f10745b2d293b02656b96d962a326291f6074d7911ac124a5fe7d142f3c64bf1fa78fd1cd7f11ada52b03f5133aba5be87208f2981e45642f68dfbb388af1068b305847b937272c0a94a10c0fed03f41c2071ce041c21ee0bbeca8edd7a25a7bf20782b7375fafd1ce3be6718a9bcd82ad12a3ebab6a24e4ee2b7f81bb81a6f9555a61efafbd4c8ab5bd5cdc5f7b2e12674c3aa51719a3d53e4ac2d1ff08fd82e6c3ff666150009179a2524fc4efe5269496348cb2880714734f18d23560f2e5883fb894c3f612c0671360d6f5d36a22c631690265641424e7e3d1b78b917c2f3c0ebef75a73d7df40a1740d71b617153c8222a7940103744151bac641910a2b791c519be0b9c4b59f57d978cde25524213e68a1fad7cf7bb150d08fc5b6a3e6c381bd65c14c72cf5508880f1f32f92cb449064303748bd99436a43a1e61312572c85f2127a378312521e7eac1cdc4d5d586e701301bf697ba53f2454dc2706a10fed4f3472b19c66bcffffd1aa5906320c4d75e04cdffeaddada4574d7ca55af3c897e7921a579d58c11400bf23adce37d7b5275f085809815bbfe76d028832de7efd9665d67fabfbac2da2d47b997891a64847e35892b8cdff3b908fa03fd56bf178c2366f1fa1a3289d664ad065853621c39f5a2e8ce0f360dc8bd857954ef86e4617bfd9b03e7e322f6e981a9ad0165e16ac828acca93fd5f0921b7e70365e049298587db6561ac9700744bfb9aacbe991a54105aeb73ceac485d4b4eb402f6119fac27d95aeadbf8b3900aa6cad18d94cc1fbb8660778c9967164457981dfc010dfd1d92d0ab6faa817d1ff794df1d1affa546a972159f9f7fe4942af44d0fbb1f1e2d883ec8fc57ee401e240df8f5480647037e7837c3673c15fbb92a39189beb0e53aa147d3565cab75af5d3dc18bfe45d79d0de61187a90f671d0da20d2fb00199e67b5638586287d68c37eabdd4c6601f8722072812c3002cbbc01975f33bb1b9a879b547e6fe0ff6dd104c28936fb32ccfc1f26034eed2e01b80d81c8abb7881ddcd7074c64a066e72d039080ff1fd714dd4e04d7114caa4fa72e2bfc7fc9b69edb4e7ebc2a8fca81327e963b92418b667ead97782c10283ec9496503e8c11c5302801723c60f5a406ee586d4f2614c9fe4bfd9a5cb0cf7f67fef71010b9f7e18fa113e4ed614a28f080f875717ab2be1290669d87a7a0c782100a1dad9069466425c2c791ebda8ef09771cc264bca3c22eeb99ac6650bdf652cae8d343d3ff142c48471bb370e11b47c88b4c241c27240602c7a36d0217f4a237198bbdf971f4431929dc3a40f7b81976c1f1eaf402501204123e486f23fdd7fdd0ed009c16ae9da36ae0f12f23e19d743b9a963429f20fd84ac771a6c0dd476df209993f5ccb5888cafb296c09a5264e84c09f32f6890636cd9775eca825c7fab0596a6145ed753f662ea8440e01b53989827e2263906d2ec31a18278f696d6cea0a37263de197d282a0f8183e267cc5f68395a002f1c5b977d8dc98b1fa11819790cabc51eb712d980f898265860ac504e5895584635d37605c903497705fb7e840e19f51da9fba9c979e8688564622989adf1ea2f5e1c24a4f108d27a1d0c16e2dfbef3487016a06afafe19ee2206c8e6ffed1258e5d50034139390ae73425aec2cd457e82fcd9250f56c2ae9e19d26c6e2c50619861365dac9e6c00d9a776c83979c851e5c6bd8533f52705aa397264bd02d99638bc57d9185871634358c5db58529735a78169f1398c425479e85849903bb1bb6ed4484bcc75d5095947b8492fd8b53372a21335a43cda790006acb59df2de06926e44590f549b5a5cffadd8e96680304914346ace3d71c59fd76752b5722246c0b4bf42f4a34c55167eb9c12dbb0b5b354a6cf1e33b10eee4cacb862e2fd84ae5c18eee43e840c6b8e7a48c3e2b77c7d5bb437a5b15a838da044ce01edb37d409aeddf8945d779807a5efd96f8dae7b3ab122459d43d041cf8b64bee09576bec35f9c09926bf997cd5e55c422bd6cbbef7d888311cf2b6e4a0cf172f36748d0449848cc90d11c3a6c35ff7ac61bd7ba2d2ff6ecfe1b6a348afa9b0427ef196a503e84558f8947b9fc2d95196a2a6baa00a59f044738bbb2a2e1791e2f9862137b7276bfe36be68d96de1fd079aee5e2457e5e7cdca0f80599f13ab23a4efcbcc52beb2db5c04bcd6ea30b6b00cb2e62d0ddb3a1e839f3adefaa9555bc9ac0168e050f28a52f64cc1145d9e5f013abea1c0a918af97d654ed0e9bbfe00f90c9fec4d0de3ee9d74ea037e92a45d9f354e771bd3f3e09222c314dc23b89b4780bae617159751359366eea79adb6f8a770bc77370ab0284dbd53f86ffdc49877702c8391075a826408a3712ffb8f46b39d97a0e4bc3f0409301ecdc3189c28c48d24531b107c6b4cebd3ce5955df7a13ecf83aa1b7a506ebf0b5cdbc1dd8716a530f4556dbae16c6ea6bf631b90f9f1482ee03fc29ed18b280bfa6cc3a3466367766d2d598631e8b048a4cf664994b73befb1a2e4cda827288daddde68617001becdadd2ffcbeae6f603bf47ca9d017d1ebedfbd595f76395f1c95efc849b9073ae8b669c385b42ef9848d3cf7af202fa410545252c7555738312e81a89102cf4c109e267f48c59c53899e635c52d6bbcb2cb8ae95a02d031f4db00d4dd0fccfe770a2512e238851ac61f23cdffa0221983e912ac9186b0b469fa0ec6b7bf4823f2942de158009d2db78141389ff424f1f697e0ad555757d4ba87b688f0ad112c77e8a1533e6967e5b8492990fbb0d8b1810e3e25fc726ddf3bcdba455152a5669b824fef0df050a37a716d6528f96a52a5880496cb5d54af41eaa2c3ced12092375b94cb9c18d6ac2a103ac42fb79a0f1ea36ec0abb361a81f206cb210ab96ded7f1c379857d83f3e61864c26f9b441112b91ef0a602d7cf0a8764aae93eef642f4f6354e9a3319d3db13248b90c37d8596539f0fe03956b8e39ec11e40ee8f7926c110a26c0ce315d2c53b15b5351a18b427a4e089da37f32da6a1d60d18ba463dbd17a63380c0b28918cf537490849b745d01469bb3bfd3d7ed31a7deb1a607b23d44b6804beab67d46b1bb19beafc124ab91fcef570943764de62b8de48cc1450e82bc881dd6aad05e7ad5a0440261d3ba6c6813d2489b1c1a3d744be78ed07e01e7fbc167123127cf5df007eb85f1f1d8b1cf405834d3a6c47f23df068f0b6982a3b3cb0cd087b2fe695804e44af25eb53125c0749cb38404df3e0e8c96b70311865eea5190c7d6d08e3c4914e07d83bb8a300df7eab3a3fb1b7e89220e79e99a26997fb82431a1b98a9d5a8ed6b0cf57585c46f3ef732b072022319cf096cd5a5fb66e845fe4d6b6bd673dbf5949fbe5430bed11ec40ee5bbc4c4f23791b26507e869b87240f4153540a1d1e2c8462310ee8bb72215844a2eb4275f6e6d0a3e21a5033d1886e593a2b85bd1ec559a0615bc73c6ee4fcb1a552bca86bbdc077bddb1363957745a0043b72670be7fd753367b6f9d030ee01d5cb3d1e5c8763c7679254eda22e6242aff184216d45237728fae096f20bcc704e5475778f2d15bd707f5e61e423c7314ba4edf1946baacca1eba0b7676d5ef260c7707fae2668af70947d46c0127d53af3a61de03a9686b053648a35c90efbaf49915fd103dd6da04f5dbdfa1906c40f11f0b1a787613cf313c569ecf4831b8b21880c11e87a493e2dbb6694ad4eaf9833134733307c702d664f12fa73904aecc79ae5ea43f99262cd2c3230205181b97f00ddd42da6609f8fb30570031f203975502e5abcbfc852fb735bf6f3ec587c899eb4d8969c99be53943908c5743f31d16cedf7ebfcfae3c596765e202796e3ab5b9e107cff0f8d9d6fdf312eb2f7ab079572973f3cb8a6beedcd0ffe71cf2e459f2a163ec6d6f110cdcc88879d27970bc757fe292b071f4526015b5d674acd317de6391e909a399e05b5f19cfeb450f48deb88691484722b481691ca05fdf78ce96bde9ce97b3c9d8d5208bd1caf33f651f071d7ffb139f7ace7ae5b1b26d3ad5d73e0bf597560a739f05766eb2a132e1fd0df08b11c15ec5cfa1b9fac69a725d049a08652060756fb22ce53c7f44d9f67e767ac3caeb80534f48ba9ad7ff878e1edb6d67d06f7afd60e8fa2ff657845be159cb8dd355c5efe40b6d384c39bf57696fc3fb770fbe037c0657cfb04b10369c86b4732bf6767ca2f0b504bae189b97bbe367ef3a3f55f3a763bde7b5d6b44ee88b17a69141eed3edf590acfdf996bf391dc0f1e1dd4b9e8c96a7f666f32193cc43dedf00759ca9a09c31964b78dd57ae22c1e9c38bb75a7a607e22ea6f4498f255fa9ab3389ac71f4ca8fd7ddc2c4d7c17b751070579b4e46477eec41190df3ffdfad9c28ffb7e6ebcadbd25e6cfc301d79cbb377f6f90251ad78a650f3ae2ebbfa65ece2b398785257bf0bd4cc3fb46220b9c3c92b89f7c3b20d9fe9288d43db095d6eaa3bca24fe4a3e69fbf1ed572e7c99b7cfb56513cf64971b9e3ada6d5cbe27c61506e61fe6abd6d4fbe5f715edd17d6f880bf1a9dbf14b5929df4ea0823526ee5e862ddc56a1b0af2284376928fa09c00b99cbe60fe7977cf01be26eec983f4699087e727387caf6f38d3f992ca7903568788d3c6afea90f172ee1435e73ce679505952b8e1f397fe9da9d353f1900dc6ccb904c000c07e00d20004c695dc60833f00660036038b03336cdb3cca1fb9e99803802507d2343c75c7b5b11eaa06f2155b4f7ce79c46d41315fcee8a2b040100a71b8f8546eda0a8bc05c844cf8ada62e475d39263ad2b5bf7fb682270a55dffa80db349b21343d412b926a9df76e277d24e06055fd462efa997e29101f4d55fc1d87ecdd00e643f094399cc39b3eec1c42b60a3fb9fb18742de9e204595dbf50a1b5cc98bc89199b66b66f42c0fa8e5e3f484ffbf4c68662674978c8a90e29913a8b83e7ef5f0ab237d15e7cce0a9d47d7906992e9fc8b60c974cf8182e84361791f9bd0d96652e5cd5080a46f6123278e4fe1560f311172e6a1a315481d2c3d0364d8ae46a6c2ced239145ff2700d43bfd5b1f323baeabeab4efd53b648ea132a739a4068be81717ee2f1fb9b09e8d2d00d934187d0f262432bf86517e7090ba5771d2b49b29dc8a3efc54869105658c2a838ccd6a6cd9a8b5f02c74d0ba12caf57d9fb03c6cc80ba9232a9db9cd5dcec96bc6a0ec00743b7c27b365e0751986f35961b13ac4a19e88b777135d3c6d1f77f64df657929e56c2010a1f39ae0dd7bdf2465ace4e6c8ddb6063d192d7efe7a3fa20148fe99403e866dfcccc2be08bf5b65f21273aab6c2048a42d5fc140946401608cf857d5a36b6ef41b6a49c4b17cebff64d14677d85f797e834b33601340e92f50392338cc640b808cb1d59641c29078863519208350267889b4686c7e8992ceb463ba8592cb2e6d68f45bc6d5e3a7213dea8c6253f6193d30317d410c6f69a146bbff8cc9f9a7a1ad209da756aae2c0cb44e3e899020dfdfceef5cb5a6f7521dc653717dcfefbaf0f758e0aed7e0f191f06ff9b59bd40d67f7519bcfb811700c508731494275b1f385ba922e28d6ca5e6aa0df0fe35627672b2eb48fa0f8dfb26716eb2eb22c9ff6f9dfcf9ae405c056db86b7c032b372967ed61e6a0ff12c8f745e4308a1ca1413973a97310eeb7f1731e1fd16154cba9c89d29b2839116b524340d89982580d3c7e7b8e67b9ce75a55f51d252714a26f733446d93a9e8bbdf0345854722f9bc25653d73adb1ecc1a86f1e003bad622d02a5a1b334008f88f24577f9a1576e86dd9ddf0b78bc1ab4776e0813aee2917cfc7e6f825912253bff29fd9f703ee67cf21c71c6a10e46d826c8e556fc2f42ea0aa8ee69333a389b65cfa7828f510110e199f4bb18caac1f6f69eeb34e907c9dda05b5c74f6a3ff779820157a596262380b9589cfec547ee47eb94a41f3c1d899829e1509b0f6d93c7c177a080b26850bafb19fdcedf2727608322a612d15ff60974be0c31bbf953fbef8ec6bf53af29dd17673a35d4053639a47446a43e33a7ab444093cf67c2e2cbe15eccf17df6fc2d8d80c707cd09997fbcfb16cd69fa6ada10702b866a8e15540bd36ee2e302e44ce07bb0b6f3271bbcfa51db178dfc2b73327ff39db71355c0b757c387eaf7d783b3c7060bdb1abcfc59e9b728ae1246e12602ee1de79100d9b853a91165b32f99fe21a630895a30ec6e699081d625356e70039fc0f79b3c4258193936971a5265d84a725a2d2e1084b0462a2a3335f37b4a9f84436f7156e963b520a7c6bb4be58e4eaceb83c27b16c8123bdd35f23bd40e343ef0e33ef20896ad667819c82e330b48b97024694927226fddb9a3d05dc1372a3570d58c0c67df65da05349afac05fdd563c84a6d7eeb5ad242832768677b3851d0ee8219d8f76f1164312638e1a0784921e661307be5ac66053aaf852de4fae3c10f3c94a7c678cdd7afa9570cf7820f16a22dac341a6442327236bb983c381fd4f6846512e8dfb72862c0d87ce7fce4b1ba421cbc1b091fbfb15df8430b987200dff129d09a48d5a0feac8e869e0deb2415681119257c8bee33cdbc0e16dcbc254b43fa07e699283d9af1e22da6629f9f83435217f5e54da15cd69630ca3a38f4c45b0c3766895348ab820a379a92b92c035fa7abe76e880108f43b1a719ee946e88add2e2b376902c431a9cd1a9145c0c959aade7b44e542ce1cce94a08dbf303ec031e1081352f81d61204e261f3a4cb19138343420721d0d5d733bbc094c6bb30e1af34dfde80e138ebcf36bc7f7497e1fc8fa11320b50b08504b18625194d289f084c04e5f5d6307835919ccd015a00a36c46e02308a0cc6d064c5d14f949e220007f84a90cea729715a95d6395818011369b4e7d35e5f2ce079bff66cece5f39ec71f49ba9b1c900574bda9065217a2a5649b499f2291cb4f204ca997bbe51107049d406701c6764c8f903914857bccc6356431a2ee3c6e9c3745bbc2a8474d58f4d916d42f56e1b293329d1e0ea64a37e80d727adb00aacc2efbd29b92929346a35682556378910cad421e2b76a9301f00cbf0c1c0b365715043465028131e7bc809ccc096403845d248a8e0a15659e2a94163af322bb2775503ce6d5759b2cdbe03fbbf4f9a67273a5e84723ee8146a35e7eeef4cb26a5cdbc4a1e73ee31fc53643e18f322c7ef808f5dbffcf627a7d4905ccc392ff244f2f83ad6d5f71271ccab5ae2c9124f5cddfbd4124696e0710263daeaa4c59ca721b61aa7cc395d4a9faac62ca635ea88221d734ed157e29339e755894de69c228b0f68a2e322999e4c975d994e734edf4d3a735ea2090be998f302c31f4c111c4dde14132e11eaf033c69cdd035dc6d007dc27d3e6968f08563f441a008606f460ceaedb2617227b946900aa01492e9eaef33fa34e059601fe80d89c17cf68f2a6d20e4b395c3edcdfaa7c8870817dfbc2f0e9a0fa6cf071d557f939bc142f856780b7aa2e03293a92798d65697d2057d77d5d177d370467f952e9e3037adffac697217c76f80511c12024488a23398a2328a2bed3e63124e9c1ee3fb8497e3a6d13d721cabcba0f4f28b2ef12d4a93c12783ae5e8f508da52e6bcac3094b164761473764c5c9674bd86c9ac3a3ae6056e9e0ecafc60d56931af2673569dce9c1d4bc7634e4e0d5213df390670435e44d0121960050386a8984481490a9820c1840825a0a084119448554a045982c612212c69322fcf97ca5da2c2f17bdb97ca720c3fd9a1c0965417378b95f24ea691bb10b979f150ffa57770c6ba5a3c50138f3aed90f440a30702cbed4d7b9721ca04fed4189e58947841c9174a9828b1b9ba2751e3d77596f74051498f298e55125392186326f124099d6d8475a1462049e49064ca9c4966302fae87e3298625a68b60910a0900a4d103450f4f0f0d159232b852f426725b63c9d275a435485048265226ddc0f3041e322a1e283c63c513c3b34307347adbb22ccbe24c28df592f57d7c2d2e2238264f92d162b2666f48ddf74715e1c71b89d9e302c608c6a01400bf01640830e11e6bc3a4b1cad174f9efe58962f9db5490f6e4b66248ee0d58923f83da9d391a89bd14546e7081d19727a9083831c26728cc8b101070a57f71b892b06e6f2df879443c404eed084da483944ac31c88be0118edb64d9c4e33481f372248e39aff203d964798941d511284c9674479ea88ef45c24d248132a2355cc7995e058a6c45458a246ae2bb9172b233e1811159941115f6487392f4ffa92b8f94791aa23a0ccebff9b303ca234ab2360688ef8e126ca044b51e6c68b39634c3cc96834c23419674cbcc98d655386cd07e69c3649d8888ce8c19c57d78d467b5b463831e74c6256460461c4e59900bf274f3550ca9a2c6a74660d4b0d8f393729f3ea37d607ab0dca9cb3da4edbde783001fe387c8944a4c99cd7478923088adb64994692880d0d1d73ce6b2c4f3be80bb14e150d142237150d052e6e93fb54cd40602663c0ac64d6a86482647218e283215c5cfe13b9212264c6f290585d901777aa212d454cb95caa22bc282200316188014215e3c5ec5431341011848a882688c0a98898214234afcdfaf1e322c78fefef7d8d90ffe38710cbeaac97abf3a55208911b19ebc78fab5b305ec070303bcccbb2866863082dae6d7de31e4201a31f54a391556942d0c84aab95060318e4d2620149f952397e22e8c387156e713491be7cf111c7d0e2dff2a6cd5d4edb647def952ee506fde974da411f8a4a13a10990a5cc39af4f7e223716866174df585b8959e59e8db8bc4b398e99072e634e199cc59c1397f0104c8e5616473646f6800b860cdc9acad631e7d575610976a351677da05582df8631e72cc7f06f722463b81d6665ed9cb34699b3aa4f64eaa9aa2cbdef8aba31e7d57d2a002c0a3605066241844841489439a72744884b0ad70aae29aa6ba6ba8090a37a4941f5529ad30ac2933e3338968b08baa02a9705b8a80861861031102248885008ac12a2873782cc204819049b73de5cddf3b1c60ac2fa2edd07bb8e1cadabe5012d392d37b00c81c5094b372f7104bf10f559960802b14005c457400c00a486208450055182209808225741ec00441b406c01845701f1a302420057d9c4f7f8f0319616c8a4eb966c1008890b1984950a4befe3a35ae92b3e7ec051fd68e3c7067e24f9817d7cc10715e69c44cccac717958f287cc8f810652c5f2a7df8a0d1b9fc777df00723aa1f74a87e208045466559c0cab10450f930870f5df8e0553e902a1f7a18a1872a7a2852f540d3c3e4410c1e9c543cf4f050ed8046b5c306aa1db81d7850401d735ea9ce7ab95eacb1042feb02fff6c1ebb4531ff4a58b04bbb891b0ae1f720c1a4b17d0c5aa71499535b8582e3138968b0d8c4ecc0e111b981918ee7b7688d890be6fffc9f1e37eb9399a1f13d36f6060b8efe1c25d8a2313203996627c1f6982bc587a9e981a5a625a58c80e7237bc1c4772f77040e3e997a237c5d8c090634caa04636c60ca13e9c7f0cf3915302b04e8ea00d501a0cc7905fd31887480ae3a0036e7b480e4a8d0718da5a06f0d51a94899731660562a5af4bec94ac5664e95192a2915165585aaacabfb5d17370e49a87018a37719990a0707e09064ce692afdefc6529001a250198007950132d0fb6907f18c46a4de77278e06f8510027540578c12e9bf8b1d4b97697f23f289e51fc3e55002227b02a808f1e65b4b0543db4a87ac8cc396566d5e36f9f62b1aced238240db879ed5c2428031087022408f398710c75fdd10655ebffbdfb8ab1b6e78e2877e43e90616abba81c79c1d01b31ac094590de0493580276635803a2729cc898989b981114090ca863154368451d950031b7c65030e550d745435c4e0c8b678ac4bdca46b142d72b47c6a5b624503131a0450f138028f1ff0202b1e46785433bc3143946a061154331c51cdb043007e500500075500ca2a005615001b2a0070010023a800005600c8a112d5e1c5d10af262d77d3a9d8e65f9122459723acba56b39d2e90479d1ea70ba2338961096ce119f2d6e131753bf0422faff7972f394287331e996581cf419439f2d762fd68f0bfc2e5d8784733dec1e3c89969f39812520406625ea2a114e2522221a4025c30f2a194a50c91002196ce697f38304f94db64947872527c8757da38b4bb543573b4255680b55888b2ac4a40add2ab4a39a7354538b6a0ea9668603873138190326062768400c9f18aa3088814318c26f5f5a3aaad3b1585d08fe176bc65a2f9de5d2b51cb146dd67b17eb55e48547747a36fe4c64f8e46dd068168ac4b2c953e425c42803bc87fa5120cf2a82f8ea0b7ff188e2e1d0c130043123000f105297c61065f70f2859a2fece08538bc00032f945ec85e084017c8e80207ba107601892ecc504713ea78328fccd0aaf389d8c9d9d96c4837dbc8d3ee835db58888a954e7c5b28ef8efa554fa74335d6da19610d64c4b572d188be55f3b621d357514a00e0070010a1750c005087041667633442c21ac96aee588e523823a5d77a4d3b184b08ebcfcb83a2e805b2863ceb90530aebf852c906ca1b4059b39e7b5851ede0b3917e4452da831e71773643422058da21666e042164490059e2cf490851bb090032c5081858b051faeaef49f237dd8e27f76391a75d637b258578b98d359dfc8627596f7529ee595fe2e9d462011fcf99bf4f37719738532ae00655e21c99ce4e8f9d25fa18715c0985790173d69fdfc5d5a418bd9ada0e34d2068851ce6dc273ae89857ff70a003ca9c2fe228d261c59c31deb4717efe26d1c132451caa40842a3c6161d255c149158ea882352f265db7c4a2421da694388a325430c29c73f69898d18883deb4c130dc341de4764c0c09c68727140986fb9e2944998293398a3253d0b9ba7ed34d019b73f629dc8013c34f27991b29dc48c146618e28d8200a5a44c18b420d2e2e5df737215b912296d55ddbc5627545364b08ab084b4ef7b9981a642c9718cb45a3361763b968144c0739d2fb53e89f10c7139e709a73ce27e85cddfb584fc8618a9439e509f7534e53660a3665ce399d10c5094f4c712ce9c8380173c217fadf8428be89c769c2936d6a829326d8ccab0939e030c79429ce01c61c4d38aa8b232fe7d03304e7e821c71439c090838b39a71ca7392797430e1ef3eae4f87d9bc4843098509a970bf853211398c03299c063ced9b3043afe2e2d21ca9c313161b869941086129c5082cb9c938341a5154716e29032afae857e72fb90260e1b38b4000719703001879024bcf10d016e97ee497f838421200108091a1210f0860fdea8e20dec461c6e7ce106136e14e1864a1b6368e3491b1368a30d1cd8a842196cb4808d15b051c59cd32299501d1c838204f140e108246ed2038d2f2fa32eeeefe61a4d5db7c3ebda7e144172b45c5e46df0d1b3ba46041ca131ca4905288cc39bb4f763d2d3d2c3d63e97b4a6b2c7d4fd77dcf1a2f58238a35303598a0860ed468801a2f6974210d31d2f049a39af3ea3639d6d070d1309656b72e72fc7c443004f7e7c571145f52612a448343a39ed1c61914382333430e33c4300334c3c811b470041e1c413c82d53f101f1114c1eee5fa404a11c59db6273bcb12f241162b5582a3f86279403cf981947fb3f8327c50c61565746554735e6339a29628cb21587c6a731fecc61e3248408648c645c60eb3f37d348a21c18c46ff349201b5d65a6bad94524a29a514a39ace38bbb6d27097e478c47433e79c539c2a3366cc3937e9858c381e24d243d48844d018fa19d13331923522923945357b664e11cf8ece88f3453b738a1630a74827dc9b3882a96d64c499539433a70867ce79c4f36c7b86e69338ff972794df017bff20cab37ef9c1269fd892126f40ab5492a0b72df15f6288fadb7b3b9419a28b305ecc292a32a7e8883945375305260a9b3945355e1c7144db141199534433a768466632d994dcf0704436223934381bb793b3b3b3719b112444728e7049648e9023497a8d8a31f9f2c6670c63346aa3199d51430bcb9c73daccd0136d8c4f5e298ffb7f9f44422e718ba00934a1446f4d32e69ce454d175ccf06402f9fe5e6c442fb3fb25ac214c7f0759a3cde8c95857f7e547ed12a99d8444f3cf2992614ed10e518848f7e12e77cd9ca2398639671ee7c445a8b67b3246a398dc0c5b7babcd523ba6a592c5ccd9c1b1e788272f46dd707a6fcfd4ecf47451e69763186402cba01d74b1a9ee40c836233383ca116f6a767abcb7675a2e46592e17a358f8378e1f0954b3d3f391404d7c17497f427d8a84f6d4ecf4d4ecf488e00e7552e4fe9ed4d1399d361f8df6efdcd331a710ef74daa3d1e9879230513001a00b0a940fe8c98ca457929a51790112654814e7a30c080412d19522e1018239e71253c5c5c89c2e617061381a71a7af33735484003d5d29f7ab456994ae1475312a881682e8396580c213e60c4972e3324c71c29c54fc3263794a9134a5088e3a1a68017f902c5e8876506119f2c304801600a842058818f3cbd00439e64ca900b151092203f393b24f4252e51c72fcf2a376ac52391acd3931ef1b510982002a40a0a6ca0a13a6ca8f70cab0041994a0e2030a1f1198735653c58749e58707c0918439a78ae564ce794300f4903977b0e6bca1c79c33f098538628e60ced40c5079b998439432d900109b3eb547aa842a50752a5079201944c151e9ea0c283115545872ccc22be0b17539f861a467fabe80004151d3e30e79c3b9ce87307cb0e04a8e850c39cd30053250175a824008d047c31e7b42c223d3a96ef337071f11cf43ca5e84d9e09906724bd923094f1221232874744e23d59b3c9add379ca11a7f4b74dc9c59bffc1237d7b9b4d6e1d4f8e34dd7bb2e6ef8c462a2a0f98738a44100215951ef366aa546274cfc1229b0a0e5a50c12188f449d0fae006c1521c2fcb32919e74f9ff47d1721949cf8417c1cf832724ffe4fd0ff7895c63d9c571e66a61e9e238e303faa42c9ee21fc83fd1e0f23f3d2e1feca09721b570d6d5527eef9163108bf5236ef2847ae9a00c69c4e9e23893da3a23090939537ed49113925d6e2248f87254b1a10473ce1ca68a0d55cc79315962a9d8c0c39c178afce518f298f689678788cd2e37119c1c72b4a940a3d1ff7facf9630dcff7a08e11a5bf6dfe97f3e58c9f78e36b68444ffe3fd2fccf04c8031649cd7c713ceda02f67e7a7fcf6e510f95fcef7503ce208d27c39a43fa178fe6993a4ffbf9c5d6e223cfff7ed6dfee777c21d7104534028206489ba1071a122eac10c3998610b15d19039855cc00a09a4766c31e75491c147e8032a3ba098d334f2f8800df0a43504f651a71da2a912e2c1dcbeab8478cc89ead6688c4a0c5e702af3085f8e40a4b87dc86b865463c8418637aeee97b0c210457aa097b1a3687c78481b2444409c134802c91e1e24ff4848c323e3bd3d13e302438e3561b8696846a31a3a38f68c461cc789be77b074fa6347713115144f6049c650ee571a03030343dec0c0787b06c67bdb1b492bd6df30710c000e2ac071051ca739e7552d21ac9114e1a0e93770cc208f437ad316fb4d17c11f4edc41478c9f0872312d964bb5a8708f9f78b34d3c09e9c13ed27820d0e77bff7590fb4db6a9f43f1c2cc9b1048bf853aae4c8118c114750b44030269e6434aa409df4c6e90dcc8d3a66c7c472e9accb8d5fb991c48dcb8dd9869439af3dfadfc693395fc45164b1da70d2864d1bd69c3da38e25fab0017636a0b07162c39ad7969152c79cd71896142728292c931c53de1a53e6bcd618639e68d678628d2497b88635a7a5861a655c5f0d276ae8392f92c59a5183c7bcc434d09873daa4318339e737ab3474e6bcf6e8d128c1131a32982d172fbde5e2e2b18820d7b94f969b3b838e39cf9072c619a53358408b1ccf30838c798d6319f38d23a963a4f4b78d194accb066c7440971044d60790434e664a2c41225aceb08e4116a195528034a49ce94f1cb18d2592e1d5ca244377ea532784c32a490a1c59ce01f2d3292a04e64f4984698322f2394fe5b46e8a611b07915a18e7097bf0851e607bdaa084e7a11868c5f11e69c93084498f322420b889064ceab2282350429353d3a43e062564358624e12559aca3f042b842d5c17298ee32f4b20e20682d2114238854043106230e7bcca10f5bbb82d977d1304278220240a1b51b2b04ad1f78efabe8fdcc5fb6cefed44b101421df30242911f7021043fd87c70051f74c007353eb8a10760f4200b31247d8276f795fbff6c1ffed2fba43e296265e87131155aa42ed30398d40e63cacd755ffa6c70a6dc5cb9b998181c181e9076f0851d943167c7c4258b393b262e4b3a6b073ad6d577e0430752e6ec9874907349794bba0b4846074fe860880e78cc6b0c2863e8cc943706cbbc3e588951c785591f14630c9218dd9cf312c5e09103293980928327ac1c0c010afd378d39c8615e551851e6f5c308a3140610f3f71b90c341c701cbbec1931b7c3780993660820db0b041111bcc1aa8a00622a881916922432ffeff62751f8c2f809106184fcccbfbf87083220a8c206860060dc0e868c0e31a471fcb7ff0a3ae9fdaa1efba50c6ea3a6b77a79c19dc60067e06a4305432a0810cba96aeebfe837fb448df45cf63a08418b42006a61810f9fe8ffbc3400530d8000c7a6070c30ba258246a4c7d0fc7ba4ea8179ce60b8a985fb0e08b137cb1e48b15284880d205940fc5e6cab146ddcbe8faa8ce7ab946ddcf2e3938969df5ff3eb9a08e59eeca0560b8e089f95d90c40544b460ca05b4ff6fc117f36a81b6c4ad8e8a055ccc12756241c7821e5e40f12289b8821540e12b6882f256908338d25817398a9b0aa2cc39bf0aaa50c1a7021a9482282938cd29a6a0c7f4a7f1c993399fe8cc79fd6ffc4f7acc79a1800428b00205fa0237597ef142c109c698733c59be449de004d8bcbe09a4589609529e096ce6dc259832e7258224efc610d5c723353b3d632f819359021bab04395896d5c51873ceeb7761bd7431648a604f8e8ed5457591000b24e002b53f92eb93be2cfdb738595a3c24d011371f011d2390328227748eecd858e2f6a7f1e439e719810e1775cc7995a853c94514cbe2c2c9bcc6928b245f936de26286936702fc1e20c3030ef0c0cbbcbaf77e186e0fe4e4f8813ea2b77c62624830e44892de9fc6b2034ee67cf91fec40929fbf51bbea40cc16745c9def7c50d7e2721a4b966e0b3078b6d0e29ad9a2546e3164668b1caeee9bec235af460ce79f9cfa345490b0470800c0e60c181221ce8e162d28d461bf43b17936e34f2e52679b764774bca709782ca71244f63c9fd1812cccfdf658c6702fc315f0317d0401119b04206589001243280812f30d06160880b3ce10218b800cd057858e00b0b0059c0c697254876beebb6f53f93eee76f128a8f7d261c4b9b047da92cff0e0abdf72d974d8ea7d097ac5d721dc979b2eb7efe266dd2ffef2df1c6fbcf7a39759f0a595c4ad07ba18c75f16c3d37249c8d06e7c64a624786b4e1e41cb17270acbf4b5d4993051a596421834515b0f80116221609b86207576431270ae422489e4e28ebfb88e0cdd5fd47a5422b458e4ad03a813fff6402bf0b582ac120d06be2ffe6e215242bb0604508ac5062cecb07e5592971b730e9ba252c165986db1b431f938f588518aa48c29cf362d2e58c55a8a00ad29cf34a792ede7f2e9dcc274d289133a144aeaa805651600a05dca080141478a1420a155050d151c1c309119c30e1e4c7490e734e1f8ea4e581466fb7744b76089a401ecbbac26e7d7064bd08a49a00cf1463a8a67041350517531c3185106a481101293c290430afa0511c7dbab8f7cde5e27fb85928b28ba3c7fdd20ffd075d3811457ab22b51df687571f47c145e14178a2c545004018a2673ceb1dca5b87d286e1217519fff1268402581215188c01611401281f944159e78e3092a9ea84e78c18912cc90f3e5c871a36fad30346d9204830421e5e00409628da545de5c63906559a36f7409c71392cb97e3583601852632d004114dd4267654102003024d2a08dc2bc8fafb0ac53d9ebe11261d371a2d39a1becdfaf1e3c705e422c49748273048e692b11e50840788e0015170e5f63fa6850586fb1e078cf17925190764218e95038c38e01b79accb34925fcb8803c60d134a30b1c384e8847af9e1486eff535e6a4a4a8b8b1cad2ed55304c84113b0490eb333919e942a4fa6adb3ca1f7ad28b24e8c34489254ab098484f92b1aeddc48ba3dfa40f8ae31ac5202e824e735ebd0a0a12c0f7661ff6518d33ed7aad94a9ae14c595a64f1b118ac0d5ee8765aa6196f38d3311e42e4671fe93fb74a909255a9cd013fd568c7bde5cb317b3be9469467a51bc41e2c486d5fd557aadd775a7d67f5813dbe77d36eb19c75aff3496f150aa4bd3676120b06998d74f637dadbf56e35e29d3eeb94b71a63d60d33c7fb5befebb1cabdbc364fad6b9ae4f7a8d7194703e0ed8b4ae776fcd539b2dd5347ada649088b2147b72e495894d639ebbd733caebc6346ab50c47099724e5510c7f156b18addb7a7b37d9764633f5be5dbda7b5e63f6d88a0eafdce6af61deb9f476fcf01dab0ac3f8e659ad52cf6698e9532fd7a84dab02ff3bafaddf397719edaa1a559b969fe6a1e9669d6b4537d7329d3cce56f9e638bebded75fcf2df5c8afd38d6d4d3da719c63c5f62c334a6a94777dddab3ded3271368bdd3e6554f69d7a887bf2f5b8d8d1bffacc55f96316f7fbefbec46dc68cd5acf357bedddad8d9f78c34171eb5c57c651c27da60deb1ff51eb31ece99bf9fe723823f1a166ef9f3996adebdb852aeb7b514d79f2dcbbb66acd2ccdf8febaf5a8ca38453a2015bfd74d632ac6bcf6698fb7c5d61e8f9757912dc6cb6358f29c7346f6f766f29d30e72fe942ab328735d29715b1c25dc56dab8b6b57a9a5b4e79f6795a29d3ac347d41f86c1b63faf1ccc3d9877956a3d5624a7c5bc63fbfbd8de14eb5a75837e9373ee2deb92eeff34f2347338e12aefb7db3a761f4d33e7f71ce7a2953929115d29737d7e5499aebea1e3c8dfcbafe55b3b352314a96a75017bd5e0ccb3867add58cf3ad14d35a63cccb9fc616db195f5fcad47371e4c27073cd733147acc1fa9f4612dfbc7bb3cc53af61d6ea8b2bc6384a38cecb1a46335da9a5b46218bb34c3746b8ca9cedb67defbbabd174709c7f7f6598dafd679c5dba3fdeb1847099744b7e9cfeb1efe6af7facbb4d7b86d6354f328bed56abde38d95324d91a5fe9c94b99f93fb6a384ab8cb008c625a5671ad37dfac73be956a566feb39ae58bd1bf3be832377af0f930dbbd7cb9ac534ae7d3867afc49635daadad9e5bae6fd6f292cd5eaeddefc359ce30fb6596542f8e12ce0825dbf5dddaec7d1ee6712dcbb452a6ff67fb13577a1f0d671547094793c4b66b86e9ef769d6946926cdac69df29bb58a77f52a86c4b6338f639c526c37f7a896afebba388ef37e38ce384a38b047cb1ad5b2d6d9d5955a9b31cebe4b77bf7b67f5f338a697e7ba566a7656f005916c38bb98a6e5ad334bada75e29d31fa4ede28c6f9b798c7adc7a9767c328d5faddfef26c31c76a29d39dedb35ea669dd63597fb6daac52ba008ab3fdf2cd346feb77b94617a0936dcfe3ea6fcdf7fa9d7929d33ef2e46874d79ab3fceddec71d1c2c630ccb3eef6699c71b6bacee1cd934cfd332efe2ec55cfdf6e4b996a9a8d78fbc358f3b86259f37cbeb5928a6cdce6dafbcebede358d63adf433c547f8afe3dcafe518df7c3dd3489e68e5b9d9a8b6fbc731ccc374a79cee52a6a791ec14b3d974b57be3ee7dde7bdac57c298fa5a5466c997b967e9f876199f55aef52a65e1c43cef14a69cd56f7d55ea55ecb6886bfcf2b653a967a66f399d7be76ad7b8c617a67a57c5dd76533b23c9d88e48a3586b3b599a6596318cdf4320185e1b5f18d659f59af3bde59f3ec0ac9881572fc7c509e27129e4c60cd4c28d196a62f8866e35ff69a62f7eb757b2fdbef1b39cdc8cc46b37db1ead10f6bccd33993d9f6ae9afd30cc67def5326de39b211bc6be9cb9f769ca31ed555dcaf4e32ca598720f9453c4a6756db5acdb9b51af525c9a3e8b634ce3c8f9901cc783882d6778675cbdca77d7302f2b493d0466fb76d7baceb6e67d18e7af9732e5b21e62fb34d718cb68df58c56ca6a54c35cda34dd3cf7a8fdb6a73e657db52a64123e943abb679fdf9ec71ee71efb1f5bd9429597e247ad374e32fbb7a736ebd5a9a3e0d49de3c9b7dae3bebd563ad7b5cca94ebe2e6c64e6b4e026f3dcb76d634e6332cd3fcfd4a99963eeac491e3c76199159a15d20ac9c80af73d417b47a339c351c219c9369d69a6f6d32acff277372e654aee12e7b0eb2a4ddf85448932715886a38443e26e1a6f0ddbf4db1463f57eb994356aa566676585646485ebb992e5c97a72e41747094784dd72c5b2fb695ae5b9f28b712953d28b75d31fe6519c3f4cdbec3dcb4b99feee9bf864748564c4df2b5845ad5cd75e211959e1ae86a3840b39a12d18f59ff32164e5fa2c2f2c2e5ddcdc1562fc3f827038ab2d9403c2920020751c491d820802840e2b3dfc48808fbfc30f2c56053fefc30705f4d077e0c1d4c30ed4931f478ee55600f5a1c357a27848400e94f3256e07045cccc3019a8c41650f2a3f9b73ff53e1ac5a38e84ab9ea7f76e87125cb0025b94b2005a83f7a883ee0ff810094e50612880198469e0550e90fceea89fbef6203c752c30f1a80e0c1713f66e09a6c930f01a09c8fcf1826000096e8039121e57f5c7694de0748887224c7954d7ccbbc520851c11c216fdaa248c80a3c20001b661a530043a6053ae3ecda4a31172182b4b000090288951f3e7eb07ce881871d14a043027240c001542a1c0cd08300370c400036d440038f1902008039e7ec01448ed98325890c5ed830d380421532b3f4800c421550f9634c1f11e4c2fdc9ebc700ca9c2218847ae8c2bf739b464076217a81e80b1770505c30e712e58aca89092aa650c5a455c2074c9adf6fead5987a633833a76805734e51132a30f124738a2830a70802a22bc64fbc9953c4c54f81e8c9f889371f05a2136ca4f13381c889ce2951017354c0222a60cd9cd3028d46a212cc2992a28b7f5229a5608aba280960aaf86c24dd87210ae78b23981265aa081601cbcd63e249b8f02528829f084210893094f9729c98531482ee734420f8738a3e20a2be39451ee8e015e24853729939451d10479c1ec513778ba9b5c034b5c926383067b5a94d92327f4e51063030e7aca74d9244525c608a2c90c5fc312afb88597b4cbc49bfb13d738aae6822025364451533680cbf930914918421aac687de2e479c1e8e3644e61455a024c7d3488a484ce00e69fc48faded7f888e088b341e0b44992376d9c265bb83d9111e7878f46badfdd5360a24ea61fbe4b9e3fa7888a2972c2c9bc7802a229b09af2454452cc298a82f4454231674e111425b94f738a2440a2429d39451130c27370ec29657689e4c9f148bf019f20fd0f288e47e61439b17dd0c71b0937c8c18e3ac27fd183320d188d6c6a664e511373fe90634d6a46679bf64715e9a22fbf4762078939451078c0f4e458fa9b4604475e8233df93de8626a9496c929b244b8293e4243ac96854814623136ff2ab051a8daa051a8d2ad0686481b8ef89193f1186fb1e72144193376d31e6efd28d69147d378de2ffbf8720123130dcf788a8af63aa4b72eba4fa3853a6fa381313532d4cb54874a5288d4af99f8b5160b5a8189524488298994d38198013483c314353a042a88d100e4261a8f4a0216a4344454f694e312562e24311135041a24517c2400a03e9098c459a731621522274830842f0810fcc59c50426404514524841c60c002c62886a0161893ec42c227eb0441f662a0ba023540022a60b5ae69c2cf01182992db29858cca9337b8a983be84431fbf6e4c5a89c0ac471a79fe3844ace12395d8b35fa466bf479928514347e8de2bee78327990f9eb68f189e4c200e9369c48c5139b2831cce836469040773f6707b1e4fea6cd26f72cbb22ccbb2ecde7befbdf75e6badb5d65a6b6badb5d65a6ba594524a29a514ab58c52a56b18a55ac6215ab58d5344dd3344dd334adb5d65a6bad73ce39e79c73c618638c31c638cbb22ccbb22ccbeebdf7de7befb5d65a6badb5b6d65a6badb5564a29a594520cc3300cc3300ca39aa6699aa6699aa6b5d65a6bad75ce39e79c73ce18638c31c61867599665599665d9bdf7de7befbdd65a6badb5d6d61a17f73d49b6c3025bdd9eb7f6e31fd72ace3ecb62f39963ecfdf7d5cfbb99de2e7660b1ed9c71cc3f9ae1ef525be98e2b360ccbb48e655ecbecc678feacd87caffe6e8f69c7d8bd1797f2d7a31d556c166f9cd59d2dd65faf1986350deca8c06633ac2bee94e79a7d56d319163b28b07dded7acb5d53ade557b98bec00e2a369d59ee39f659d634efcb7096719470a51d4eb6aa61bd5eff65daabd6629ee6764c60bb3dfb4dafd638dffd665dca349bd18cd831c5c63dcf668f61d5b33abb5b9732d5bf525c298e128e668714b5d27cadb516cb19a6b166f1b5956a9b720ff74eb756caf4baae4bcbc8f2b4238aedd28c6d4e717669bdb7fa247640b17d56b33e7bcfda8e695df324b0595a7dd6db6af67accf3700434ed5e4a2dbed8b51986613467f4eafa716b2b563d8d5bdf773cb1714f77c63bc65aee5ca3b59469a9f4dc58deb2c926c3438466bbaeebd2384a38264263a035d3300d6b4d5bacde5b356c69e7d873dff3a7b3ac5f2e860dfbb8bd39730df32c7f5cf3e45d2119715dd715869cb5aaaf9633d6ba529fb3debc6b5fcdba0fe8595aa24ee24da5949221306c9763ea35aa358bb3ebfdbd2efe41d3756194a3fc83a68bf11736ec3756b1c6f9c328debbf61b8e7a61dbbe6b98a6f54f679ee7b5dc73358e126e895017b68b315fe9a5b4db8d5d4d31ad63c3bce7b46a19f599679ef65cd87476fbcdfab3bc772fdbba85cd57ecc3dc7bee554f6718d3c25633de5d671977ea2da694fb9fd1ac908caca47c114d31ca71b03c8161e86f16b6abb16b3f0d53cdbf0fd31a8e6773d644080b9bef99ddd8f3de679d67ec9b59a15991017789e622312a4257d8b0de3bb6be7e9fbe159323577a9f4b75b6c246b16633cdda8bf3f7659ad71a08d1b1edda73adfefb76b61de39fb681501536dab7ef59ef59db7963b697321d3ff1a7b6ce755d973fa5489aa3da522b4254d8acb5147b7567ebd9ebb5ec466b53d8bce6d4cb2eae976bed69a691ace1fec4c3652b850dc35453ce7dcd95734ffba2b071eaf92ccb70ff76a5987693084161a31fa59af3edf9def1b6f9095bf7b5e79ce9ba6dd758c742532cae5a4669ad58b317d3ec6acc6b5bab18fbefc37ade4ed836f6dacdaaf5de775d1a470907146ac2566ff61ed62eb59eceb4ee736c1de3dcd3b4ae3d86693ecb726cbefa8af12f6f5ab1a6bdca844dfbba96b34f6b18eb8fe370fc6eb96b5668566e564846564efbc8759db6a94a115ac266bbe5d9d634ff3c6a77f65daf43b1082961bbd8b658d53e2ddb1e96598da31608c5b1615fa7dedbf87a2cbb38f3fe9422792004c7a65dea658feeac734a3ded29e558104ac2967d35ebcf6a6bafe6f67a161b4108099bf7a8e716bb36f334c33d2b657ab2e4a8735d9804426f6c58c772f6798c729c797adb4b7bdcd8b2fce9ecf96c774aafc530a62d08b5b165b76b1bd78efdc5ba6236c36c6c5aee9ad714676fad47359a224b71bbd48b90946ddf7c79f57cf518d32afe8e5cd7a540d7a531cad14b812c77d7d8b45a29cdbc5fad79aebb3696e2cd758da508962135368fdaea617a5fae2bc6ec97c666bdfeb4d799d5d9cdf00ac98895d34812b9aed348f6ebe21e080ba1b165b47a5c5b8cf1873f4d578c72f4631284ced82aef94e6ddb1cf95f28cf75cd775a5caebca30cad19c2aebf8892066c6e63dec66795f7b7dcd377b6d8ad011367c73c5acc7bacf78a6699bd3ae8bfb4e32b2f2f99d92efebe25caa04c97dc2aa089541961f45729c0e2132b60f6f7b7bef58c51adfd733c2e6e99a312ccb1fd56aee1a2b65aa8bb0d98d39adf6cb32562fc79e089bde99d719ae5d7b98663dce7094700b080d61a37a671df33d5baadd5d33216c9a5a8b59debfbbb37ef3f5d9a49c5010b68b310d635fcdb8c676fd7694cd67eb599c61da2d6637a62f4f0808b752fd652cfbeb75ffb26f40e8075bbfd766375bbeb7c735fc75112ca27d9055add56a2f96310c534da3d57aadb55af5bd5e636e7deec1d6354c6bb453ac77cd38e5211e6c9863d8676bc770f79ad7ed0e360df75a77ef967a8f5baddf9b900e368cf2bd2ff630f5b08f677c8ced669e57ec35cbbbc7b34cc5d8327b337bb9b598a7b5a5be947d36e9ba7c76795da4ef2b353b2bdada8472b069597f588669d87e98c6aa0f63c31a736ab14fc334ac720c071bd556b318e639d62db6ab2d65ba84e74a9ead908c585962dbd7e5c3d243fdebba2e8da38443856e60312cdf2cd358a3f866965a0cb35fa558f32ec576e69123d00e3fce070c438f6b2a64838df36d33edd7b35757ae597d8d846ab06136ab99873f5db1e5f66aa54c7dc77668343a9625a99142606cf6d36e96b3a77dff387671e8411c0f34923ad7457fe8fb68e22a0d4388061bb6da53cf568e698ef7c54a99f6be7b9711c15167bbaedfc91dd4fd094233d838d73edb9a663dca35ee5a065badb5621fa6f99c75ed5697320d51261ba28e5c9736231483cd779de5fd75ec616d2deda54c7f6ad078ca60b06535eb9ad7cab9ffb09bdd52a620c795e412bf5e57be22f4824dc374d69eb631addaf3978fa5a6d9769784bed83e7f316a3d9cb557bf5a7b29538cd64c5f8cb238270941d92cbd36c3eede14eb5ed66c29d31fbe4f37bbaeebba18755dd7d5c5ebba391481900bb69a61def5acdf15a3fad25bca94e4c1e40e37fff8c787bb7b2012c531c551c2c5845ab06dcfebda57b9a63df6ae8759b069765ffd699ff7c76bb6bd179b56b10c7beb33eed5f36e26cb7f318e128e4968055b9661af658cd3fcdded331b5201feb4cc79f79ffdbc4ceb350598e5fbee8ff28f673cb3f409f6bcc69df3fc693ddb0c0ba160cbaed598ef977ed567d8864eb0797b631a53bc7bc5bcaeb18b4326d868df9ff62acd59bd996b9c663b54829c7346bde5b4534ff38f9632bd389f4ca0ed62c3fa57f9c5349db1cf5e2f6be26d481f341aa90c089160d3dee59eeaeabffd5ded650dce8446b0e5af568c5ead7dcd1657ed99003f924b1cc5eb32a1448ca384f3425c6c57eb1ef5e8a61ac7f0e779764322d838ef34fb3eafbd2fd33efe69a1106cdb569ee1da2ff61c0779d1929e872c7928cd64f9ad1602c196694ce39db1ffbeecab9a89137d9829671ac98f4b9d469ef50cb5425af132d48a567de8031bad9fcfb9e7af56cd7aef339a9007360da35ec61edf9b537c6fad43421dd836ef16a3fbd3d8bbd8cd59de62b35d7b58b759fbb887697f67425a6c9856f1d670c79e7b949724a77160d39e57b9ddb76259d57663a20fb99a11096d60b3347b6d7b96697c9734b0ddcf7ed8ebf8cbd47afdfb4a99624a963f031bc53acd1ece5dcb1af39f2f65ee8395fad0db5a08039bc6bd7cefb733cdb7ddd49632c59c37f9d269933e19dde5ee5ca5f988d00536ad52bcbdaaddebed6779f92db0e9ec699ab6d4e3ccd37ca6b32c36ce75c6b3ed3aabd7722d5f2cb68b6537d3cce66cedbd7bdb2bb6caf3e7b9d737b631fff15bb32d64c5a6f9aed5cdbdedbad2baf7af62cbd85f8cd9ed334fb54fc3a54c2dc7f9a03cdf71adc04677aedb736eb1ae65b6ef52a67d9fec15a2c0a6b1be5fd5d473acf12cd752a65cad0951b1658cb39de19b39f7daf7f952a67fec976664f971c8c996352db3db7a5aeefaf3b49fc086bbd6b847f9d555a335dbd0149bb5d9ab3863af6b1fa6f786a4d8f0de9d67ef55cde358e71c8a62c35bc36ec61896b3dd3a772442506cfcf29b6998e71ad77cf35bca34dca48f2f4590ebfb5429e9cb1a4d8702a9c7a8a473c8a63dca9019000080a96900231100202820188bc6232291542ed8853f140002539850b86648174a14298721648c21068c01000010000091915000e5ecb0ff4626970e83086812d5cc55631510672c97e748d960312fde45f95a6384c0ac0088dd687bcf47079012ce4d4f6665dcb16cc35d9334888da27cb7a16ba7c404d77c9a3acf1991f959e8baf19717880d2c03fd098a86f334573789d85e00c4a7dd01351d402ca34a11814e521a1184d8f6f2475302ae3a5120ffe3d299b767b2148e0229eead4ce7ab25e86a9cdd29fc09fffa8a8ba5688067d80471f2e1e3456f93c962dc3123ebb34cfdf18b527358a985130f95fd2fcada79c18749e33e9da47353c6a7fa9492213d26e2d5eab848e5df822339254f629d62b2473806d59350d231bbe9637835636036a7f4aa7b53820b4208026950b9d4ea0e9fde8268e7228c24249a0770727cd47861bbb574394fee7f2d2c000f2e4afc6d055a49531e3a157a5e895af6e0de6735ce4c4328e0d11cf7fcde0c10e9525126cac0f13292edbedab9c6ef17643fe03150c9408d0c4f8b9379280529187214e428b8966197c811a6430b9683bfe0238430e88e74b575c4c39bba9d1652ddaf74a0afb411f495351b4121e83bf7f72b3f306de94056ff4971874ece7f954d3b47652d8bb533ab524b9522175018174ae0fbc33bc087fee32f7b171420ecda3a95c44babf6d64003c0fafe4227ff15df141fe69b09db8c237db3f1421b97607b49fdb111c45e070a9a33b5b7d55d5518bb41cacd6a14510d81bee98511ab3e6950c00b019560f16336c7553b22c8948234616446061d7c9d12db0c58688d39dafbc7b4d03a6218b6f97f960b2f1a0588e103bebcc0c779269a6af5fa6424b565d7eccaedbe8ccde1f9215e753f4612b84197143ac62e828150f80bffba08d46c03cc8b8bbdb35557c30665b9a35815ede81624dc0b3dcab715ea6f2b29830ba6191ab78df43571a81827af758e6975da6db286331dc65a116e90b3d50a85bdc47d75a664ba268928616473c768137aad3fff0e6b6f0afb39c96fd8622821402e85112879723f62de646260d41d7de77c623ce88f250173df3ea71f9a2c3e56ad1fa4ca93ddd6b96fc61a18bcba24ccea1c62a7c4e4e52d8bbf55d2d61bc562b1f46c40806da0b3b72adde8f32c24276d07120f929325d64e50808642ace6d9cd71c370e4010d7a62261b48bf764a78d677d73e0e8a8f96edf076e8ec571122d7ca7d2ca31665961783b54bd6ee53a93ccb2a64a4124ce821c428221e5c98068a86273fa8a9b999f4fd82d9666759cdc1c9f4446d92f33dae1b5a422cfacfcfaa342ac6d0a3f3a799296b8afc99e214ebb6963c188baed1331315aabdad10d860809b4f5ac5212b075b5256a52b50a9defb8e375bdffb9f380e22858f4f06cbc6f6e7211ad3618d31a6488b643753bf9d682a66a3d0523b81b326b531d41b3873a08483b2fad705c9faaabd45d61fda12b35b6254a207c305792098b0a0c71b6abd550e9cf587c29163c8cbba28e16e9568b6a6b1109c86bad23bc6847ef9a8bd82a9b8258a290c478ff1eccbc4f64394c408497b92ad83a6e23695d6e1db91340b866b2e8379320a8311044be961c4471b1734a24cd6a5aee878bc1bffd921abc6d69765f30550ff6ecdecaa76352efa51b60d63dac80aba621ab18f0386c8808016a09861ec36b52236d6c200c42674446344793b0b23d4c083c3b0e958b769955e10e3c3ff39e43b090bafc3764aa81569b85f18d0a0b6563b5d0724258cf80ca0e1557b3ac2300f2a10a09e6151cb898952db4f38e8a3dd9b10f8fe06c1385c513f9201a3a7df0e46e087fb4b60348383e0368df893215976d1475397712ed209a2e5289d8214723e9a3cfc93328aa293b19e14245d2d3ea9f243c727c4d6f7ae408faafea1c22d0d0ecbce8798ce9db0b757c26fa702ca7068b2d2021554aa14709ef499543a41827438918f900aff2384f4263883bd9906e0af8607d6c2dc5dbd47f9f408048733c9651d846172d04e3991714fee580c56053200d5ed50dc75a0b965539aeef74a698f7912311508924c99c8ec973d0301c6360101cbb23f16b460f309548e2949797ebf22e132df47471099ef79e8082ef383b43df42a9f283f213884cd69a0342b795e85e423aea08bc00e4c427bd191272cf4b89ba5d9a12963327b61a727ddc89a687a7e304aad8a1fade59cb5deed1266f77e9d70e29f150e261a419b489ef65a47666845b0e2c64ec20d6d56807d01949259fa32db11e28ff87ebe268e3bab6404ebc11823c5ea914aa784fca39fe9d790aa961ac61e8cef6e0d0cb203a701a4374c902c3666c82043daf577b3367013920125386e6b774533a9939f8b642b3021f811ca6433cb9dbc4212c0ded21ec426c840cb489427db4076b3b194757863ee84657abed4aa09576cd1474640601a4a0e81617be60c8268e6917be744da41ecb61f49b7b669ab0ffeb39e9c4f57a4784b5ed1622f79c5c2e25d8af6019dd077cc2fca54af7b0c0895c0b8d35931410f4cadea0174afcc78222203bb69d5e9ae5fc105389c504785933dd7e0977e64785319406be36695c04f62afca8b2d7631da6361cd6b7ef66d88d0fd19154fc84139b77b35a31e8ad9c6309fa680125c7c62bda8f8165937f2407d435328d7a6c2d303ab03466e538bbd0858184c68d4961c8e7e54f82dbaf4e5db0712144f457c7e5dcc9b0cac6217cd8c016b4ac13871cb095ac021eae0c3c5e1319c731511a55e271a56f727c5140d01dc9a65c560a10e1cf0d4d3317fc638a44f7fc19075108c4a08a54486145096f1054203988fbe0fbe5c1849a943a95a17e233b45d35e242b68e10c91315a80b74c8e333fc3441186bc5bc6c43fa8dbebbe0bc275d4bd80ea688b5efb55327dc0358b1532bf347a24f26406e2c13f719508ee51f4de7a2503cc229dccf5747cb38b3e1af2bae76ed836e3a009dc8ae5407c2ebb188ad1f4fd30150955a1e6188ddfbdfd44a7eaad10d8664211361ffaf4b93cdd17cf47606e1ab7525c33c0fbd023c8ef9c1561f06fce878d37059a794f263bc913594a2b52d58fd19aa6fcaeac5727bb02d7fca45d6bb132f62b4c10d36f6f107ac7bb11ea4f4e7ba240f056698179c0efd5e3d02d19737c1639ab9b0ef2d954820ddb15ec0dcfadff19dcb4d9788a237f5c87e91891eae3cc001155c23917b6dc3ba2b24a2610961a584cca1af093747951411dd1d2d11b5e6b1a4b59869a6882ff49f996e1ba06f35dad6c4a4171751ede0578a0915dc5d5f09f60e85d7a3570608da68a0cb68c6510d64a3ba3c36208495b08b9ba7176d9611aaf4eba9b43dc2b7c1b84ffffb2cd21fcad55c876f9a459a0dbde3a249ea0f19c9823895dcce576523b310206a5a3f08892aaa52929611710fb9330f9c4e790b8759eb7fe003b28824a4103a2429c7a4d9c75460c7654ea5756c3c021d0af29103abb40933adc2981101dba2e0802acbb6a03aa1c575a94c874e1f19e7c30d3add3f44f52c14e7c6dc967bf64cb2dfc30edd7b192213e3076e8d1e87d314ca26b9c83e04abb9409703823a530ab58446b28ba84c3576f6d9516d7da689fcce392999f90c08f5fba6508bbe44ff22b026357eb68edbc514f2e62d74191bbc14436d5c0f93fc03a3f670033d3c15852228f83f4679155f079c8ca6c0246876dcb6402ffd447db43a58294d0d5cc1752b9f0962804b8224058105befbd8459ecb3654093e7894cbae0c167d012290bf16a283c2cdc8a3435ea613489e701a3f9ea47871cf74937b79a1ff8bfde88de3ace2432d875ac208e320ed9c194e139305bd4177f45263a54d46916f4afd5f9d60a5eefcb42ea59c45ff929c0df6720d1d1ca807b5e687af689e744380e7b28a25c5199cd28b4d4a9700df2220bb921c1cbb5cc8505c07d157921f21cd7402e2c1d53606d553add280b9cee292d5d9edce1e691e8e95d6e6f0360a962a308cb9b2347740c1e3940488508cd37e4d74e1d21f5be31a48b2624adad1800295ea14a4b98de56ab80309efc28b12e59d45c46d1c40c4eaa5f7c16b34840027750b52452a4f020b7a0c8130166b077458c9d90d2a429af2a69f9fa06cf57ad0661e1ec631988fdbf529d4e6e068ea40523ae10de8300319e606627abd4f6332c5bb195a607a098122e4cc3fff96222300406211451618f819db3f43939f94926378456582918712425211189bcf72cb7fb09334634163785aea9f503740e9f1d9362c0546d43fbdf1345494813d8f1b9760bc0ce50d71f5821d0a15dd7f8181f77082621f4cd85b26af8afe72a66834b7d616e7e267146cba80220a9b9f8d6b155c62240ee54bde046386add6d1c96c1f38745014514f65fe972102559ceae99d91ad77644765865d0c6c7423cef196fbf101f8784094bd7d5ae43c70628a6956f7eda97be14039faf9afbc797740843354f2da593bfd052976f1a674b9edf01ce618f537fd0efd96f302f0e88823fe7ef985e3998df20bb422d80349a44ddfdd82db679b1d3a9995c42311fbc595982bc9a1d8438b3f30022f90102777f304ae3fa0c3ea862ab293c4fa79fa4e686dd689d41c3f9f5317865b209b0f875f797b3dd915757a905160b891e9ada3dafeeb3a14625eb50f995d44883c1c5787eacdd58279d727905a373d407c8013fd1cea57d85c8b058d3f8126a7068148ba4fbf4cf14b38694e9843e6d8fca16f3cb5efb0d7c376b0c16e7cbdefb0d7c2b428588589bbc77eb2fda67cd75fcf6564775ba3fe8f07f3870dfd94a83735c26d2692de1c214627d5ac111347a30a05e7f8540d534015f35f6fb34b2760a6f264b39c6dee29ca156a91184c585882912de0b7919a1fe4389fcd81a3a912792b4808974d2709d68492c2f0f9c9ca6f6ee6de525c0c2eb8761bc564099b9c8d00af593c447038b3e2c12fc1481d71144b243b7717d5a8df22fbf84758bc511cdd49b7bda67b8b59b79d0aab44dd59b8a0169a9ed19a3fde0293fc7f8a177b937bb9b8328bcb5b3d6eac1677efe7e8ce52331ce4e74b3ab44ff075d4be1bbee573b3a9a37d58ea38e4b0343d374a61cb509483a28b99ad35dc703c98bf77ecc28193882807e0878b463940fc9bb42a675d38eb37d2cac6ae0112a938a6128526d71f4ee61f69ea435775933f5eb56dc15ba1e0402c5519323c2855c310388a525904f87f0e8d1fb14fb5704f0bdd895dd0e7631e9eeb96ebda8f3a76b0e6a7e6a4c43ddd24d3e70f346edd4ba8d7c1b7a3164c1f11dcbd98cb26115e17a8a073c51de777eccf373baacef00337d4ce7f5592bb01ae003c59b0e9773643105167ec6719f55db8d85d36d0a4304871c9d2a0633e378e7dd0ae973b927972baa33b8be82ae4b1fc41673c1f926ba37fc6d5a9c73fdb32ff247ec3578b5c4b625e7c146a1c10096f205c5cbac925addca6bedcb29c23058569dea5a54b8b938f99b19393d6eb0bfb3a49a95f87aee9610eb5391a47a11fb717de3588f4e1c38bf4ad935b23153163a3e61f7e61794e222ee524f515db1a277df7e29a1d0155fcfa2279c0fde1def62fec0a4528b7035d7e80ac0fce00b927710bf82f5bbae29f66062a71e4d93bc6ec43cdb8f2567e7fdf308e4c96c6edd98e585f7aede30a5a5acf6041fd82e1fa7ccfb8dd94958b9f967d5d68aac795877b7122edb66c054797a3b6e80b582db8517b1671cf689ee944c633af54d013276b9445ee32d01020ce8340357e5330b4605b7ebd4607fc0184a4b7cc34b6d631b8cf92a19936b13f63453ac559030563a8c73a37629cb9a02bcd3bf8e0347dcba7b44a4e6d308de92f29d573da71bd1cfc09842e1ce7a42bb25b1ebe1da4fd2c3190a4084e2861b8d25ceb16c0cbe6a526270fab228a12ee3dc19bf8a07f87bc7a3e7ed2f8cc1c2a5ee3809e400ab2073d54ffde57a0fc1c317b600f06af149e16ff78e159c6e654bfe3d035ecb9ed6f55d456e385557a5827a4a866e77904d7cb72ff274b690ebe9a4e9d7b5edc757f2e225ae4e1a700e978762ef910d8cefeed09d6d19b851229824d326531c413b30c78b84c889cf4b9810fd5c348c32f4002269eeaa7c71dfbd573890e11f9dc706c3401444159b4306ff4d539e0babc90186c7845377953fb11807016a570a3d6e679ea5daa71ef085fabc6e399920f937bcb8a5288aff16c4c7d90f1e166e09c18d484779f1460aa3e37259908d20a08c2416eaf85f9bcf324685f7e58303a2f390440dc1d01db261b8242a4c0668b7b874da5870f7abdd60fd198112f1af5cc7c4070e3e8b4bc4fb7cbc79f4f47e2a3a013397b2974d165de6e316af0b223a79f393d2ba99c035dc42cd46e8c83cb65b702465847c95fc5c6f43508bcbbc3f8ca76df4885b1d7084f3bf1335a0531a529eb2623830b9e175f8cf83528d585930c9e9ff1f8719998cacb05dce4f00cabb595bf79ba39285c898330c58fe1708c9850b72ddc5b7358d40cd41c9f3ed7e9e41b7d3bb17a52579aeeac3607b3ead4e769bab4b161a5c5bc92a15b125b6978ecab502924aa11f772763e0f653718d3bb3f99bd454b552bf6bcee127af9c98995665768ed46bf6b12bebb2987eb674dbe5c7b554ba343d3dcf7a9ec9063df87c739a03b6fbbb57f727c33338cc80e028fed249779968369d6d0ea05e82d24fc36d7b29bf1b7c8ececa35f56ac8bcfe5c753ceb4b0de210721a5d97afee6e2ce78a1e3953a68da00a3077470f636a25b1723937998f447ee9c0ec3d3db23823931f4ddccc6039635dfc3f43abda6a8570cc01b21280d23f4b2d210d2f54663f88b17bc7020db1fa87d0cd36b111d0bd9abfe19e43e9eee4dd6021260959e180abcbda852e0d1dd9a193c22ef908f4e2d7d0a718254a8bfa8fa1084ade667951e911bbda934d3d37be51ca7127d9f4aebee68d55ae34cf561828cd9a39363f7e24a911de707c4bc449f827f14c5bab8d60522fcfa5146ff52dbdc6dc15397bd4a310880a643619768ab09bfda6eb82724c344315b7bdf5b7a2a716fad2995214cf8c70135dd6881b3990027da5dad830d02eab9c2c889327b8610a2b35728b5b6705b71d75c401cf9a837fb851e3f98a4b635e9146ed4b833efddd86fd0688364b0de8723d0d020e5b6b057bff0a2059b7589e6fe83c71f9dc7a2fedc80850c61da7d6ac805c046676439d9727f7d02067a740e8b7af303173a9059976dea2f587c11f25fdebf7bf00810a5dba7916b20b1624dba6b5f7f41208f9efcf2fe2ee0c28627d17e2ddd058a296cbe4b5b700f1d77f0dc3bfa72070c267009f76deb2f547c41f358dfbe73c8d171245aad8d27d810624defe05d0adf320c6ed66c73a5adba6c13b1097a2d686b6657734cadd278429aec7577ec6328e38d71baf76e8937e0a300acf46dd223afc1895378f35d6977fd0501f2e1cf7ce75dfb0123f4e149d1f6fa742970d18b34a75bedc3e7e0c71ff2ecf76891f3c083116659dcb7a7ee8517a5e8e6b1f2e6bb1f729c51c86b67edf10b64d8c49ba413e04ae38d6e0acdf4b90567fee6ce99f12ff70f7312d8bd79f78063c690aeb2a634c4641c7516f7d403f021ded0ee238b852705dcba861362028a142db40aa5fd27e933e840e3860fe0d6275b638801b1fa74955e547dab085115612e007c05b2813ec0e13cef5b05dabbf93d35f35e5e5acab37917023ae5d5ed279d26701a1e46efc9467b561734453b5d8dc59d43c6d23eacdef842a0b527589cf7609e3b7fdc4e5c740f4da14e9b85922b34a88313f77ba6cad0204e420f2a670024ed6f6e5ef9409957a89081ffd1078c6e1e7f3fc0685fa6c98ae6673f9117fd0625087bf6a085df8b7585bc218931b4cf615ced7b52988fba908da53e614afd79ae97a4f203e9f047c63491bfe705afe935a4faf74f119b2e2ecaa21ef33bb90aeb33a90ca739ed534cae919eb21aee60fa030fbe3e5ecb01ff7a1e2001b329fe8b1c69e1abf9e04c604000c68b6eb0ecd08a4aa4417d19626a6fb587462e615ed39d1272359ca66e094ccfbce51b3c93deace0b2aee840507260de6aa8c1c1abbf6da2bb008f0a9b2d9f2eeaf7289e26d5e1a551e657a5598c3246505aa9f098bc8ed29d71777c69b6dff1e14a8144891414496a9f64e837dd9ab5c91cd668564a9b23d6a3cd698639aebcd91637f061c0ad8b13d8a8227c80f69d7a6adb8b29f260e3838af68b34a3afdf212a2ad468399243adad16407bd7a7e766865a7b4e418f6a37af664974c207fcbcf19a1d9ef372e09906fca14e66b1a722143fdb443e000683ebe746c418eac78b72e60a20a595dac7ee61a8b4591c092803f56c1b96eeab6bc7c6b30cbb5ed1ccc26848e37f95417889adf1cb7500d43f069ffebaef2cd3cbf3fd773cf744f943d2a9ff1e7587e37f4d1d7ea78ce94ed85a7e4695b428d00822da2007c8e7ec8d00eb3167ac6fb6902c1e7b891c12f4435cac19e82e1dbad7c7b17e085a0c32c89ee072b04e08a099d41fc862c44322bb0529055c624be98466f152103869507d84c6d23fbfee3fe4d245d63a4387a01b68e0806e7e199cd1d847ba5f0d1c7f2f74cbc8c42abc98d9e5739f125b3ea298eb0919a30a2c2b83d1d7867ef4198f984c00d22bab11fd58199e2eb5fb6ea39ce10b8750477f1a82362670fcadec831181238784f852f3787f4aeeb4fea560bf78376d3405ffed1cdda13be0439135087147ea2c3ed99d2a5b987f0af60709582221fccfb010b511f8622e9c1f209b2811679c85ed6b233a5b1bf1e6d2689a0f8d6394addaca3d330701c31ed5f467ddb3554da77fa93a78229c5171613ca6a2802999e94e92a24dec471b6b886617afdd8485b1d50923cd480943c9f9b058d00c6d161c2fa6104b3b1a42208ae2c5b5fede28460792ba5e5f87cbe6006df1714a8a2667f44b8349cff2ffebf82e024f8c0a92983417173b467d20c4bbd691e1044bb9a891cef589ccd9f18c033220f7719086566f04273237f8ffb54852bc333849916fb5b2484b778961d43616678acdf8586ec301ccc4c1042019acc98f8dea5b74c09fd61ab721ba12d97e2627974514b3484dfbf1a9ef81d0c4e0388d6cb4189909ada453ee10323674916199dc3b767e98efc2da8c8d7000164dab94a3cfb03589f75387569e8243e6d9eac299ec533d8a9d65d563bda15f80ac67cdcd8b3461a6ba9d93a57f4a0decf2834c82badb28918116d9f531a423246fed06c2a6c1e2eed07b31d0422c288edd09d38206d92d46138b31a614422bc984d007274faccde7e65dfb82a4b7b6854f159409579868789f582964a790d8f26883a512f85d780c9edc6f1cfbfdc285f0f791b0ca129da6e47d0c6ccd3be18be9f575e49ec231073385f8546c59f8b39f0d297049bbddc2bda36c22e409ef2a7932c330c6ccdeb16adebbc1cf1fc152640d5fa824788b32e71ec10442f2938fc6be398dff7c7743ca49b69b153adadfb0cedc7bb06ce08d20ed0cc2fdf581a8377dc9260dad86e5d3195665283f8eb6fad3ac369390017870b949fac4692e9f84dc07f280fa44fe5747d985ed1ceecbb70cf95d7de5c23c3bc354f2e934f2019922c409f84bae1915344e262a680fe7e465de3c305b1ab6fef46410339b141b64b9027b7e049a7cd08e37774168228a636f6c3f85b08b5d701cdd2904e7e71b93f90a2137b817f056edf67f41da976c4064c5292a7578c4e2c96a6c3214ed18f20f3efd6d560618a45dd042447436a961de8959a613a4baebd969b1d2be078cdb9b6196b08179839a467c7ee86363ba8f0bca2b512cafaab96c007ce6a6d8c84797bc108679e5d3e1efce12f75f881943df59fe654b32b798db1bea1296d7bf337b3621b5424989457d32713797883a2528c4d4a7b003150f6f272626dcccf6cea01b096eb4b705df46715d57d7a264a03b526e99ad1b7ffb9fd682e559235ba96e2d128b594e50ecf46c5b55b49c20d9644ffee444131c6e2750880e3ad082fe8c1056440c136989b530ef7ec0ff3be1ef196267f25b001c96578010f4c6b184007700ef9b800f2c1ccc898386f47d0d487a162bfca293c7a5ec2477399de68cc49b84ae4c639e2d0fe7411f1707130f9f9e065b8f1fa44b81c016d6e74d04dfb4357d8ba3d73b1f161f3b53d7b8864b6a66a0986c81a9cb84b892055d7c22a943dbec0c6e50c125c28909f03bc4faf8682c05f947f7983a7416ce61da209cf82f1f6b80232a4858d0d914b7d2f8fdd19f8556ebbd548cafe71ee0b93b1dab81fd6c4c9794410bcc6c6bece4a48ee3aebe9d79393ea770503d5dc4b046ba2e704f776b92d83e143a7504d70ca6c4dc881d7bf93dca4aa07675dcb56aa260b973106680a1c795a9f4e059e9bece5a58a50220568dd3fb47421557a967f787af298042845a46ef4a4f851a7f87c3e2be4db9bcc216bce559effc798aa5e4e9376b7856d8e48b7a3acde919a45d3defad441006bcc162057ec01b4d45932f347d30970eca5cd531aa927e882601c9fd24e996c2a634c06afe4576f3324045e09bbfaa1e8655a7860ee7ad41c6f3f1184006e77b3b210650888d0fe3af93f0869b8a1edc029d32c49c7c4d23f479f56130218aacab1ca804bde2983c1b187bccc43d1db9514dd2e9f828d962a66ad5e051632ae087f768705b9d7a3149a433bfd37066c0db86efc741c9ca790ec98350dede3ccd1f7a53f4f1331740689e293337aff105b9a0e65a97732f68e50e0b25d37c92281f60121af889edb3c978a6b82ab2622483b14186169d06b2fb2c0536c0b19a86e1de43f144a801d63e0b61b6af6c07744b2bb747a0f968d518519b8c350b1078324c7387f1711e95133bcac7ec4900e9f13d2e1d048f4dd0522e8ea24f923db7946922578d2aa29272a127cc19db3eeb24b6b45555f58f6279a8963673ba2f899f1aa97578a6cc1124c0d154900890b4afc76eb566533151d5a1eff51ed36a68530eb8eecbcb7bb91afe8a83ed2e17c3cbc4bc884764ccb25c257fb34ed6a3ffdc7289d18745cc202c1e21875e1edea6600e2ce87de09bdc0d2de198cfd148a5bbe9c0ae3cde6e2c9b5852aff75bac69baa52289db2846886cec0ec9d6406f041eb94aef7d9299406973491bd77c05364b0779d891a5e281e1c5d8003d37630fd57c91e1c5b81a4419c34f8264b886d7853055f9ad289f4c3f115f29c88dc9c89eed842fbe72c93364d374bc05ffd23a0f90072ae3c20882a60fa2e70c4eb71174a1531b1a0b56b42b53b86546f2921f54ea6164fb758b375af9240e27314f38082242869bde693c98cdc92548db90ab6d7611775278f55b94a7c18038a8108df4e4970eb86a7728bd02e2b073c9802a808c07ab48eff7b6337b2ca9e8c1f0857cee9ec6f4822b063e29840e19093744837cd0b835fdf1f8b4bf5c7bec287527aa1c18f036cf89bc8d58d21218c5b38f64853e34a8287c228c75f70e271bd0a6b9892b7358e4c79ee37d8bef4cc6ecae855d647a7d644995628228cdd615e917419622db01c1473e8d583242f722389ca7783bb48187118bab698cd985498d908adc96d559543ab2830484e448c6b124e5d3442b28e3540a958385d82635066ef98e148f5994772315492bd01b5479df44d18346f52f14d0ae06c4915bc11eefa20d66ba6c73351ca70017b145c6c01375a3ac09ebd1782798dd90b29f4eaf2d5e6d56d9894d48967f66098b3d3c09fa0974f022722f98114abce1a314df98dd312fca9c81a3c9548b29086eb97c5774ca416f304c430716930e3f9531d9589d1e05680f2d6fe442f717a78faa4d667a5cb26a12bff80655be31e58455ca0d38e7ac42ae5a1fc6873aa4961e99f0587ec7a862e4288c6d3141e138234bed218c4e4d66ac44de66b8b2599a164a6a6fbd11164c5231fffd50fc46d509bce90a6a817bd2eb3fd42eef28dca05b4596643ff74a63ef3835970ae61f1cfd9cd033f31e0a426c4f5ea0f8b71c763c52ecbbdc4ef8ede831a135376c9b1140cc302ea410e4267a8c66f870ae5c89e98a0e23eec0e840cb5e222a14d83c9c3058372776fb9bb75856e5a1902394e64eee011db2227beebe0e02ee464027f0a0246f0d25ed6ae02ecb32e86e015f4f842e72e2085d13e04f4d485d6f5b0915d1e25123e451d35ee5af2cbd365253b094e8331ae32ee31f3d289b072ef3fbda9960087efc8011e0c3e4fbd8381987f3ffd31a7fe2d65ffae59c13b4309a6635e4278dc51be01f8bc909dffbfc49e243e2ae02b3ddb6bcf01b66e319afaebb540222144391031fd58d155645acd45c7da3d4937024b53e85033cc21c6b47a02630474f8be41ffdd5a3c84eb6c486766b50f23f1104b27fcb09b4cfe05323416081b10d6255d632f8f5b977be46aefac8a7839d20d633d2f02d1ab32df53705a4d77596e8769c1e104e77dbbdc85086154e3dce5899413e547e66cd08b846c5c5f57ffd00d26b15c303fd59329a120b30300377a6122e2026b25e7a9cbdcd749ed0cbf9ef2c148df79b53ab0638ac2a2b618de3ab544ec42fe3afd60e895fc71067937a0b2dbc721bdb565e54ea79d6580d5df6dc33e97481b33431933b3ed781a82f4d92c98a17b8ee7f31f12811d80c13078ad8c481b27002d6e3bcc423456b4c42e0b388edf9f5800951b728e27daba796378225cd3161d9ed64855b09aadf8de8f2d4dbf48c564d67e8af9ca3aaa8b6eb3898d9ccbdf925892d41daf8c1e02318f5842489ef346bea69b095bed469316c004614424529892202ff51b1080187d5b3c844b4189c85624bc4451aeb26c4ab4b11d11b014b238c189c787300f16e026e41550878f1763c24bd3708574a1bde56c0d9f075afb1f7fb331f98d69bf40c17f1e878e2ac63ddf3af88e648bc2a7c70241271fa2b4528b38097c5ad53908a1c6d06afea7f7f3b85ac557586f88f806dbfb510116f11abfefc1631dfac7e4c4db0ac57d10553c2cf8360c15adb5640a3ee61d4d683758dec17a7528791e3f85d5d1addac8f998887bc32c4ca0d63976dd4864164b82228408f614f258343ffa9b2fb09380ed99ca8b4741d34f74ce97280e5f58a1b7f08156ccf89882b74ac520d46cf36590c7b5bf2e9bfdf414baf1804353418e30428100af507c534b55e4dd4c0f1715927da687d8ddb9c3eccadfeafda531c179534fe4149f19dd45f75483cb923696b25774293b50c8d6a429ea110917f9f47b11e328c5108c956c988e24d276c27248e901043d4009f3e2da6112e5a978c5ce17ddcefd0c66bc926d16a1662e61c27165c2864c23f0a7a033aa50a9703c60a5d2040d8c4ad06a6a8a471786f1b3590a7d02b5856caaa6f0bafa23cdd5d86947ce3225f06d4a7a158305655c296aef478fd783a6cc749a85bbb4b3d9b62585a912d71ab088748bc701c20adcaa4d76c296d763ea1840cd3a631ad846cb519949e23a892f284931a6346946f2508b6b9f594c38a1beee3f2c3a12f98a88b29a592c0475e525d7025c5d744838d281cbbabc918479dab263fe77dbbc23915d5def1af4329aef9a4f03dc5289305bb8f0f33c3340f3a4856003467fe491f6107f798e597cc42f604e8fb41dc160a5bef0f409a416ccce9332380cee59f52e9086fa36c8f10e0354aa4f5ff1f91782299c7a451999cc1c638abffa42e96863f4162adbafe8c03f1fc100989de499e80151ab8d424974b86106a8ce63e5833d03ffe06e84ddbc00ac90c6876b4ba7835fe12b30c6da48c2da3b5fe23f2911ab2e685e551f1df8e2404ab3345752ed430808dad707b99010f8c1423b6fbec9ae421e72dd037f7203382affbbacc3abe74f65e57f13ab2a4e55afe5cae9114288e21aaa2848450b495ac43786df47a890e2cb1ec32e1de385298dd973a77c6ce11857f881ae781f0f43b145ddf9559d6a5e0ec7d711f1667be6dfcf75e2e5571a9b658cceb406d7cfc40d4323bd6df875e7b91ef531aed2dda26114256dbfe35d4ae44e427db9923417d484767c572524b189e16b7c6e6edca07e86532c2a135b6254b88970c48a11daa2d1ec325aca3ac5367b6755cf213f7a4e70f43db04e944c0c700ce6a7dfb0c98c2c3b736e036baf4ed3cc0092c3c0ca1cc286ec8d843f2d06566326b50d10a142dfb44735b744dbaa8b9c7b0d46334c9ad8d343710392506bcb274a21b2d5bd054a8108c8abf4184e093faa4615c885a37bce5108d4cae5d980d984c8ce553e5799a9eb2e8d602b6d04606f5f708aed26afd746399511876897565bf2f83258dbfd1c03c74872801c9adc682a9af64a2765bca207614503e9180513ef74193b5a93352da858888dd8ef1c110ecce223620e9d8bfceb88488c38328700c6ede7edd0afaa7eb85c8d342010794441ded542724ea3225d24c4905f351a0bb717dce770c302e085896c7743e19e700d2e3af2c5fac8d55316263163c07df14490e281df0bb55c889f12cd04dc43e98b0f6643c71a4bf92e7dea9192b8f5ba6f8b03568df8967f60671f5d21b30e94e535635987cce663fc98b6461f98cb62914eeeb8dc73c4ff3a72351f259c1f6cefca1178f523ecfffe88f15a7cf26a4d67fcfad4def8b5b65858a5f080c688f9b236642f6cb52815ac172430aca3e693a53a2d0189a0605bcacf49e4bf36a0d0c8217456de46888a38578c4a1aad4056dc3f4eb04331e79a9d84b665038a4559a0d98ef4c2d58a87ee482e9215260e854893758241ad9496ff4d4300b421608a38df6205dd7b027dd118c772e18eb05c0cdeaf8036ad3576020cbe26021f3d1d53633a6f97879fb61785d27d9f82776dcef93477806de5d7b99671f5e7f92c48fd9e962039759ae5881eb037627858ce7da693a4fd6b36a42faed74b61b922c4e5c926d71b7cf0656888962755612134f6d70e2adb837ce990611cf1d01dcd4e991f4daa389ebb30459b974aeee0c52e89f2d40b42037af6cf10f9e746445573c8ccd19f1a2d61c123f580a27dcbc997e92ffd5fc686da08ec66cbed780169d32e7914a7dc51477bf5d6f4756b89f150c7b154efead1e5a232558c8b23d472bc72931d5a69f89995f81be1528279e87df63934460018ffe190a6d23d91d9fbb5e2f434c38471d7199eafb61159695200a3983d6bb46a8c04225e4c13f61685c411eea1c8602e812845be9345da621c12ec985ee40f060a4aba585122282417540c4bb0e435d1fe25c6073ca21a08d697cf51c145827b8e89f960373542c65c9fe082e28e9c55c2fc4b81de6720a75c6080db6171b76f060470d78cc4c7929ad59738315fa8264e6a3e52bad5d5476409b4a6ccf9c501898e69a6e70156f05397a4aee7aa3e4144606facf42d912d6b1c9c68eb7f35ed5a2695041c610a0fe520a7defcc0700d136c88032aebbf24de1a27a6aabc155dd77e04d861e35af16493bf1afa0018a2e1ce0aebd2d260fe060972c5041a74b89ceb8b974642be5c561eb8fe07910ab83f2ba6fa3211fe904b288e1f967c5cda1b371b681264938db63b50f528bd6a86cdba87351735489ff47b102794552bb1e349f7e19893498e96738f758f57ba36d1086f07a271576855c9459e7b60a29f3b5146564a2289abd2a1e7cba02519b58c4b626e1cc2623f4b7a5d4fe9bf67799cb19a50a257855de1cbf856f82a99bbfc3ba08829f6775324bb4c242f32681e356d2e20f06d95a974c9587c0dedd809dfaa64b4c8dfdad0f9639e178683d8780ffa9dcb431fca8ab8d2e66c9de4c379bf86e6a5f1e60be2073dc8d2bae5c15fd79c240e5040768ee55b41549a246fc649d1d0db36bddd9cf3e44cfce1eff8bdf4eef1216cde531d01d57f980e55b3d786071587c4bea80812a77966108dcb482a0fe230b53a641f2c84f8efe15491ca1ed956e20efd5d009162f9e79a3b69382549d4fec821640cb7fa91cdf489526d445a0003d5d7688ddffbfb4f3b3ae453b0c09081f9953d9ea15d4dca4e5654b4006556da620dafaea3329e7c195d9eccbeefb37493c776f8f348471c2fe4f8ae276a7910db0b224b0bff6646b428cd0bfc43c04868a04d07a7bfbafa121303b8b7d28c345a8e75339a4e9f8ba56d06252684106abdc37c304ba0075b1ae565bf473f44d5a7440343983628a28a28dd37ab2a5a8a1f3940b72e6faaf20a2337097aa29affda329ff4dec97d7aeb2714e7c646d9319b15bb1fe6332feff78aa56288416c16745f56cdcf1a6460857d417a93cadf1ca0792302a664ef54374d06e2af1d51db77492887a44f61b0a88993f4e2bb10f6ce46e44ff8b154d44f4515feccde6434d642d4a18e772c6e03bf744286525adbad9147dc5756884068cb265d36cf6adcebfbd0918367395e58be7a128ee128a18b336b38c2517ac03a253942bf7bd3354f9b6d3a77fb6748e70fb628007c21369d63aa1feb56d6df32970ff236a13acf2a96115f1db5bb143e8a640c258acf66b2a32205440ce282338a73fd859043a80ef436eb331ddc38b79059f07a6730cf313dd7c17b14e82473579b364d7c6100a49ebd365621c7e9880c841708af7a73f8830e8e222cc451bde49bc89742caeec0493ce37a70610d3b5f020532368eaba8eb9fa454fa319a8a6cdea58321dc3a6a9a45287d528b47ca7570e237a2bd741cd031f58dfb36a220d0cedb0a6c947282072b69ccf5361f39a265d0cc5297c2bca9e1f67f4b1e5b397a18d75e577887bfaa736ba1a71196d88dbe178feb0c72ec8159eb9ff7cf7946eabcdd244488613162de1a3eb9819df8e8470a249bb73291301bc25a723511cdab0f05dece2b888d40c26623efab0e193e5dafb6f216206121ae45ef304ba38d7684154dc9f9a31173b51b311e17e91d1a38ca650a94560ccdb5108c807b4f35d87bb8ab35ce26bb6e036ec5ee7ca99f37274c1c0321b895ea26d35d18d9201012f3670eb24f3001dd8537977e25fc6c2a78de0f8cb2d5ba637610eb459e4b8f2d02327978267ff8de3e0fef788418c1643d6fb7bdbede972676d6d767a0bf80539d96ef84732c22a543d2d137aec519c0d48b7f87673eb4b7a96088863ed3c90390c57b061bb0dc001866a8bf5abb4110d42c601ffe0fbbf724db00353102983bd0affc7f83a79b1d57458ec481e1bf021b6a0e8774cf662afe5125b088aa03a9f542e9b52ecf7158ac2b7651db0bc075ac59e908493b85736a3f49b995039c8efdc6dc2dae1bea05d4433bf5c334e90f53f9c3d5040937b7c0fb62a2c7af868d42b2a861767018873b747290499d6a2e6dbce76d17e383004f23b7b8130e2c70a5ef3b49140417301db780457f136e4b828d888ccdd9d84aa47936df099e3860533948d65d2dab0c5892ad4d81981285871383712c4e9d2e59bd74e23dffe4841399b73453c457a707c86fdb3a3b3016b32e6bc7e22ce00ca77353df96f61ef1a615e5b774d4477d5c0c96374e3d85c34731496382dc3a9774f13f6ca72259d9ae884ab873ef3b34180950adada4a617474a2dfdce7cc534db7c479857c8cf0c4356bbe5fb4b518743e3fcd26002113df39f496e7d7bb44660f59c04fbf32431aeeed8b809f6d1f85cf217f789d0dd910f6f08320ea3bae507acb06c3cd82e27367699bddf6006cbd616b5ff97e112bdcf56433b90cdefaad3851fccb3e434d54a18c6e1658bb7152fb7b4ed3bedb5d1727a720cacf2b456fadeef777e573bbcc167b637048e650a03c73f70e7ac86416c9d22fd4ac92eb0abc76c1fee35789ca42ce6aae6473e638833885dbec99bdbb14bde9f1008532c3715cfe4920e558257af77798ac3eb63133d575633c69b7301b6c6cdbe5a71d580aab42e687492013a5b882a05a98872c07922777632a44e403dacb452cf7c1e3e5df0a5104c9c896a4406a020b0ad5cb49966c75628fe7aa59689adbf2f2514c54532a4d5c7a99ac6d9425c61a0a61ab1a58068976e0d0348055a3361fa3c82b3de9c7d28131ca06e25d94da13230dd497ac163b1dbd47a8b96d8080d5ee87d81972d74f8b3ff84f72bff227c756b32faa94754154e6c67a94d3558b0507e4a8a4242002c66ef2c9cdc7a747e280f71bde2d519dbeea393f8261a1cc73e35071039e1055a6bfb89ebd823bfbdb7bc1550f4d854e61a0c47acfb95370eb4f217e0e77281f9a47e1ca73809b5df74e1f9a78f47de8232ee814726978aa7cfa58c693a75aa851596af55411a76a30a2c45754390f5bbced7ed4ff26a157e486d8e47751301b82288d64dbb8cadf25e6680b6e69cab1ff498b979deaa62616769b0e014bcadc61c2ed07040cb7a3725b3a9c34fdaa1be85336e82afa96d28b0230f513253d0b894bf5264bc424f32c2f476c1730e6100ed8a3fd3ce479c3f1a2fb9de963708fdcff0491887aedac2c6334e606f02b10f0db5d12c66d9dd0c573fafbc395bfadef854bef441ef358ca0a8d99a2c8795a5a3c899dd30ad62de4893d8587da89db991c47a224bbdaa42549bf81d5ee249a0e33296ec78bd6cf7dd5e0d0b820cdf3c9faa8620694a32ca1a510830b3a341ba89f1e77f5dcac97df12186d5bc720f8c2d449c34b85aeb7d7772f0946f5032d4173b6ee5e524b6e8517c00c274d00b84db74891c988fe297a01383be495034eb600fa863604b45b663317722b3ec2abc5711b104899754a99fc0284b9dbb3cc0d761188aca02e58350eb458268925b14f0de31ade245b677816ee9bfd735e5de036b770c0a45934aa95086748593de4038ad4efde35b8eff5574499f9bda99e2d1b66bbe8993b265e67957795432f0627a6bb4edee14d109a52610c2b369242ec93e22f999a052955fc15da06cb56db800b3cac4c66766451ea9c7079509f18dc1ff8d9cc9c179b74626b9e16ffd8b58e6856a895a0441244f73bf741b379489aa812dc6db60406b1f4235771b3c5c5f7207f8aaf034e0a57acbaec7cf408aa5b082a27daab61dd39ad1718693e26ebde76dd9b68172e9c9a6e6dd2e3dfbe365190392d05d8289cc10af273a5a18a637dba7417cfb192fd2fba2bb5a7228d1df833c3c063c86c9de58312e2ca241856c1571986ff6109ca1ccc636074d152e202f3c5229a9d83afd48a66a2a50e129bc3694079c210e5b096f1c532bc4208767ab86fa3d41ef20a05152c81b3667673d790f5a688d7128d8976b551fa74293681626e91046693e0cc2ff8a94ff04479ed1f2471e7288d804b8c4c97524d9661eecc524d9052b02c6aa33bfea6c6399784b30ff1e248adf11d9444ebbbb7132060bff57064a4611bda40650ffe86b9b431df0a326ccf1e385edfbd30395298187650263e657027d9c33c5cd52dc09956302ea1e017fa1daf46f1eee1d9456c14ffa9fe9c9b9ecb5f7ade2f621d6abbd0bc1d6b2695d51181be85c59134a001fc3a4ede63d31ab60dd430b62465df21cd977344b7fa74daa244906f86e3854c3b63fb44796bc4f5bbf8afd37f732b0d20014ba21e312f4d6bf80eaec9816abb3521733767d771400a60d8e30297fd30dbd71af17cde74ec33b64af7905acc1c9eeb6cd1676cfa4e95fa275ea49afe04cb31f905707c96931a197947d751b115e8e5856f36de18dcdf39a20799bc8a2e3b1f0964301a6bf2abe566d77bec303b5f34ba3f0447886304be8c39976cf77a92694d9afd372c687f8c9c772d3112ed0590071eaa288e01366ae32a44fdc5e9b20cded56c447b8b45e1da9121f0e6370e7f2c32ad05c44c5d9796b58e856d9ceca9a02d9a36f67494271eb70ace23e501080a518fef3d26b5e9d4714e3f3e09d2ef357ceec0ea992d318743e632327cff166e3bfd9ef1dd298485725f41ae59fb0850745167addc4e94c62a209180087e7eecb826d9b10e48a889772ded053edca3c7ffbb752c9495fdb05c9305fb3f141ce81ffcc6450f5130d59da43d3b6602eac534d3c56de4b143dafaf79f672f9e85ef20be8a964687c57aff86b4b0919ceb3e3ea74745acc65c1d3f0e013c24dc3ed4cd6e983318fb49862a521e28f5350ba112f79ad4fb4eb78199ad18604b9c67c8ab4dec11e7b395d88d681b8c3c67fc7d48c63fd6e01634e612c6f8c049b1bb4c62c195487eeb12b3ac7a45f3ea75b8f332c85877f438e78b5db9e4a1875bbd87eb3714c162c467ea2ac696a4ca3c7267275683a9e2ee6a05b4380e2db138f2c4bbc344a8b876281aa025362becc02289f60d8575ffebc9933d08fc04601edf0c69a197c8e9db3dd4dba6355bbff9d5ee50c20dfd6ed52187db492e6193f1ad02b7e6000b02d31f58f619c59fe3a6a55e61d1ae650fc334a7f3da628543a631c7d723cca65a82e3d05ef7b77370dbbb4305b8c6556f17ec2b56646a851ed8467c6ea82e7e225e7e32237307713b77f78364fbaf294ad48cfcd119913e2184225232664bd38b380fe6f1ae9052eab751bc7d15f122647ef891d9ec257a1c03d6877f1739363d5bf48badbe44c0a6ad52b1ca94c0caaf7a731077cde3ec6d7d220638142d1f433decee47a08c7829ce51278ebeef69b563499d3fced02cf4efd905e0f15ef3ef68614f564af2f19c6d939987867a7a1e3b2653b241537c9e94aff7c95004481c09333a929bf2a7c6dc028b04e441bf6061312ad78e4150af37e0c42c779d7da33d662cfefc14c95f5e4e5a9867dcd86f8b5223f2e923f0c3f74563fede20c80f0a2f9e0135e8da4e91af4bc42bc5805ec69c81b1dbc4fe9992dd81f1474f9fb7f34082854fe187ab75c22193799e259fb1ae3dc3ed840bef0122806f2ba6d1ca3727d457905a8de3e4850945f1befc3ddc7a5cac6ed7224e9aff26f2e9aa9d656948fb700b14be271cef24ba0783149bfd5738bc607f735e42a6f38c68cf78bef79391e34cc986a33f2b428e7b4ffeaca5cb110f2a665800f80ac1edc3b25d1ca8dec026df088288084de2cb48b4f16ab074e6fc6609ccfd5f8a3ef67d90baab5ae1fd9d312b0a2177b7b13f9dc9dc8241893e8710fbbb2b83881026cc1e652c4f0a108cfd19d969391d5883088c2d9efbabb30f7b877d266bf604ccefee00ef8c0b5f5d60f577d613bf516bdee9e2809beac314a8acc324bef60a08639f2dc7b296c658ad7ccdea5da02f64b6cf0c49a23692481b44b05ca5430089aab2f1967f81a72282a79144b947986b5169c9e780d2d10e8f04a959d4abb1f3705495fded1d3647a82f9807343fdf73abcf5ef39dfcf3d3c267eb276a3e438bd32b4c9b62132468716f1320829e672eca697a20a15ecdac2d612bd1d32de9ca4523637630c416a58b6875c3f07ebb8d610832f3b18683935265da1be80a7d35e24a4a5fb03d0f2b2e340ca495d4471e7f5354a0b267d0ea5e528e9d3c34e1cccba102f1db0c6311884f762fd3164723726136a5a4f5059573ee938ee737770f6ea8afb82d6c7f5ec9f4076fbfb63e5dba2da92943e77765d05d47b8694b6a83d36c48d224fe55374bc5679e49974455862477b50e4f6a4635d782b14e70219e544a5b3771507009661ac00fa0c1c9d883ccae6e5c8a2787f541ea22ca1c3942fbc86180eac020fc613c81b603a0419047bf42a3f74f2d5d1a7ccbe9eada3cbc0ef8aa1f8145712ad3cbfe394680491fd6d055ab44b0115d489f2ffd9ccb7a0552eb7d364a9ed58172d2f7da8dedf4c72f169d0a35f2f5aeaf91e06b93d3f96ac73b4153a1ea040d5a5e714162750486f2ef4623c16fb82c57c2e0338f1681f4d62f63f585669bf726ba2aec48c9342314af5c52d106195355b8a296a938aab37144145a9e2f53ede480b4ec60aca8a1097a9aa1d51a2869c0253d081db2135578f689213a0ed46ed8228c57670c83c06b67ea62f9baa8144600fa242fcb379c6649b16f092b615dceb0701d9d2a712dd2353e14c7adb31afdf117794558a99f3648ee579c4106271c3aad1cf05f2344641e0079484abfc7c8b687527708f2db8c7f89030f89f1507869036e309d3b0fd5c0c00aa0f64738047573ff1a6e551fe4929db1fdecec79cbf66e7230c710d4fbabf6bf2455ad7d3e7c7cd6d847adfba72e579b4f59bb91b65c139a43ddd3084d83fb56a2361b052280e4888f28a0928f719843df413af21a032cefe93b9c27413601d75020bb4c24e7bf6be3068a7f9b7e0cea601c7dddbb45de5430e284e6e8747735703ca118010401fb8734fa8f06c568c39ad01a99aa03e5bb4596fa06451f796c7c62979877e4cc976581821ee49b97f844e1f57583da5531b087a9cf221c4b8f951f35bbbbb3ba30b4878f0436711cd4b427d766bdd775be7198708b9611c36eb25152ec9454249721292be0775871994a6762099f350f2adec64391911298ee20f12918c7b6ddd5ea8524b38c7aecd1ab06cce3c646f759dd3bd6f431f323c6821b0829ae141cc0572bfafb4a014f2753e732c90c88a2331d22931017a797547cff825e6ad8fbb4e8adc85e6d7148ef371a68f1dab52e4694aa091b22d4d92ec647ff11fcef1539272f0d13a3c89d8ed55b719690ccb752b46b8986a689514ffc0395ca2c389718d81e4af2cad44e6b29ab181428482f33aed4e54824b6ca359b8cf3b11fc6d82ddded52c696a75d5b7c83f72c4af3d38a45c86616c8b2a265cdded299041af473e662404a8de5135b995fdd75eef6b3809015c0ae7766d0ee7d2318e1a575bf5c7f363e241585ccb919a0aa6a245e29bbfa1c89f53e37cbc91940df806babf7b3a78eddd843faf9145408377276bd7abc89f8e4a247ae97c6b913bfefec2ce6fa4883aad56ab7ef2be4ec026f34f23e4aad8603024d91a4eeaa10c6b4758d66c7f9be53dafbf6305dc063a20f6ba426b792017395fd33cf6e601182db79203b487d740b9f2ecadc599d3078e71df6dc1f430dcf7993e5f9a110d9fb7364258ce965ca9b2e405caecca5482cb2a2cc7585fe1df297f81967b544c87d07c8dc08e306c6fe074946cd2eb9ad87c91c01e44e26f0f8fcbf9b36b0ed86708da114b58501218d49ad969b33f70e092916f88955594b862b57358c79ec637cf6f464122268386c9cbb3883b1eec0cc59c3ac43011182686aaec9125689d83651a6d97d504b63e77fe301d36d99f5508942ebcf50e291d3f18d29784186975321c8b6e70ac903fd66e4f3f45a6f60fc97a3f582e8fe86e0e906c026b0007eb3ff372a52f274c601f9b332b4c92e1230988f1e66eeb7c7cd37d0f6b4b54e739a0a624be0be017dafe1b4ec26f7a68669eb8c1b45f69f731e286edcd83ee91e516a909c4e03d7f0d55b144e6bf9f54e73a4d94183719a79ac10743f830ee73ec5cde2544c37e83794b758ef764df0fa161ddec63dd05a02b7e5fe4415a5bb84937a827e9d91e85d9b117f73f91c9f7059160b897a360e63c9cc567776fe180c1126b5098f9e15b5242c43ae8736748e291b7fd3266c9ef2154da55d2a8f0f5c1a78e826db49cc54a6a552ab472562e3d1c176403619b7c3bd028181f09f669128ede0793b6bb199745300ee4f88412c749c0f03630c0ef76c826b269f846647c8ef357fbeba445b282b096f888e2521185db250322dd503c0db28d9a8cac23eac36f795d5024e109d3f67b766d777ec56ac4ca471522eef3d78809938ecb6bc0261033450daa9692aa941ed5d84de86666daf90db2266ebd30117bf00438b519fc41f3fb189b10001c39c34e3045f01b8ec646cb704ff230ca1283225bcf6624410d84194867b0bcb6bbd1d6cf30d588d00d02f76588ae1075f54703620d42f9b06839c8872e4ff303ee027d52990ca8aa49b10c02abb27704b2f861a13361780b66cf3c3f832dc455c83321f8e75d206483535249801ab8e424ee1cb3f701afbb289a5708464c440272533df34ebe63f815a9e05580d5ca12528b6ebdce63dcb1f443f8850157d79150c38eb250f4dcdf0b4da2f27d69cbd5565e94c0adbab227f2fba2427e9967d37fb1087f837ee2745ce67f11dab633bdb9131c1e23a034d186e171031ea2da850cbc7a65f4ef3281b989878b434ab0f6e22b61cc7112b0a8af36217650aa123bd5b0c7ca36ff2658c5e4fe14aa77db1f2b3a932d6aadacea9433c3b106545cfa530bc8b2a3bfc7fa9ced9ae0c3257325e02c5854fcb334b08e54a90cb8898666b3a4e20ce5b14203d15da92fc5dacb5bc37e07b187fec4d41aed975f92801e4497bf235d9f2db645ede70986f0693c5e705e8783c75a39bf01f149b51e355731ca928121a12ab216cd59bbb35f061b73b84c4018b07184fa13cf354226a9766a4779d2dcb3b3e844466ac6813af2b6ddead5127545e6a4a9c7052f72177a737d8f34417f4ce4bc2f00fd291367642facf17700bced831d5d8713580b0f4460e15d86cf6e961b7e0132a722366d74bb81b0312cd5b8d451651399214a71c478d7ffee71ec1307dad1373cf5523ac28e795ca5a2d97375039e008d10b2e17b803b89ca2da02a02c70dd570c90917676e6fe65a2c81eb350b4e8849ab71314c4f3a7b3d3d9af4fe23d6685ef1e787413e1bd44e145f30ffd4731debe3ae6dce1ef3c0ffcc587718bb11316b1778c344b31a5c0a24f5545c7cc7ea3b578dfa289c9f895a2f60c1d5642309bc30d46b7054e4619895a84896939b681ef8ccb3361a930a57f405b0997fc496f6ee4ee735de936338d76e4c149f766b3554c4bbcdbf64872e97d4e09d7e0dfda146e62c6f1d95e89b1632413fbd13e6dce8fd3391233369f3dc112c469f13e0b43f092d663debbc68df4b69c722af3323105aba15cb4dbb834d82b1db12c19705adfde5cdbba787fe9cf77dc93d5d4d4cebabda3de25986318c875faa1caeb3435a576c620021b325bf58a772cf6d6ae748516c7406afe7713732751289e51d240660f381355efb84c2f8c07bf9be8f254cd8f0e6ca913c754725cb52bc219bbe64aed804bbf4676f981e4018f248ac7949f1ee0eee70a8aec5a1242e520673bc06308453c6f9f726390399b57560bb6d8d84dade40968d417ed0e4bbe50b6eee04ec0709b4c1c662316eb2a6ed1b3898865d8cae6a6e0e3e23c31183e74005d5de5ce55025165d2f2d73a8e3dd3ba5080c541e6dd0b175f86c149bc19a87ebdbd61f9d929bac5ec03910cd2ab201455e2c29441e1f52d15a85ce349d5603daa3b72a7f42a5e35d43c423a596b7bdc22730db429f6d4f880b717fd33f4e2e81fd01e6ab9f5723fe406fc652eab2621aac41ec1ca94cdb520b386eb4c684eafab62eb9bf6d43c79af3351a8a610ede5a3b11aca82428d4a92f8cd90a013edf3fd4ad80f27a04f89e4a93adc40eebbd4a5c83e5af0f389627c2d1b28c778592e783eeda85720e5b534165f3be570ab7d734837df14a3a76f76cee46782c32c8d4d18556bdd2ee737eab731edc34144dc49e5b7a8287ea49a44998092379d4c15320d131d3a2f3525b94ef360b38dde117ef2c350671ebb289e853c1d50eca81aaa870ba91400c22dc3c46cd8435c29e3f7108ee721ef190b1ad755ff77e20dbf0831178d5243edda9c0627ad6067a47dc50de1f1696c7702a32f13e25a357556f968538330d1f76084b5e78c8236f6df06b8b0862d1ab7ed6e1aa6b6385b04e0ba46b6f187f72525fe1999ec0fd0ce63c80cfadc4b39f07bbee5bb072f154bd0b1244248304c85b58ce7832242cdd087bd5239e6e19621e3ccf4a84295d03ccbbd233be80fee1fe546679889bc8a4713cc7dbc97c8489ad9ef002ab384c61813f23289bf4a563bbbcde42e8d723e25fb9404e40212c1e56c92832b18e09c0cecbeb64a142c3103b101e7b385e8c150c79b8026338ad27aee64bc222c1abd9c59dc78225411857b9e0e65b994de491238a6271268a76d0b317189f2d407ec709fe2ecd1fbab00519c5d3a77b740d42b503a915539c17676367c8d938ec5972c0d53a192f39ac1d2c93659cb1f0967d9bac417498b779d794a92386f7bf5146167a91e51e89f807d9b0c9677ee5f5baf4a3b443709326c9ffa5cb5c8b5000a497108792c657b73e4e44c1514d875df22e80ee701370c33cc82d546dfea75a02652339158103f6ab434b1860e3f002e93dd74cf00a767e3faac113b550c0580189c46f16ad47ae6f88b1bfec7319ceca02704494d04b76dc026d8a62ff92369400489337cf139c3c4914b64c6d718cced5ed38978702ae980964ef5c25af0f63180c4206f5857909e1f24e54c447619bd26f9730354aec2b6bcd5a5364bc1c45678cfa76d27e2eca15d707519b7ec12d97c5731143a86fcdc5acbc94d5d0f5b4f63132313d7bfc157856a8825e0468a24b203fa9c2360ad2daf0a2fdc274de0279d94b1a1cf82110d6782392ff067c5bbc9c9d9a651dbc485b8cb3ded13f8274b45754a61ae571685d7322aca7b40d20cb3abf1bccfbc24d3d1db8a0cac4a983cda9032d30e63242fd5b8bfb5d3eafca0a87f4ee668743642ad389ac462dcf24d54ec27f3ab47d958ed55c8948f4e6bbabe4d85fe2796e984e6cc50eaedd35289b8a5eafe64471db29f91e6bcbad866d5a2b7cf5bc2d8d4dd97e32acb7cc84dac0929362357d15522dfee7118cf82befb9ecaf28246112c1da39d65c0e29af2ec4267b12753a115e97e14d2cce25cd0aa7b8ca337f4662003f2ebb5e14ae98b18ea9829a0d59284f62b5ed41ea4e1607e7dee5ff693d4e4180f9bf6cfa34ce3d31c5c998a205296495919d6bb2a54ea133c0d55246c41a24eb1223703fdd05adf90ae14fdf559154254a2f344724b62bc308f396eda02d7ae8257fbdacc93ab33a2ecf4277fb9867b0bda68d4daea52b8e517052400cbfc81461a178028ff9a3145acd23cd00abbe6d2a4cb0d61ab9d22c59036e346479284f964c2ba5e3028df743bb9524ce8c9fe05c00570c7c53967ce9e45b53ccb45139e8380c3f49c1ad150c5180b8d28cea6c3d8f6ef80c78313c0a792dcac0397f0a248510217519b739b4920cdd2da5480f2b9b25f7526f40290bf5bb3bf833cea72e9ef3bb4e617716ac16c85363b492e459b717475307a7734aadea6ca98ab0522c58b1ecd1d9eed81eab75e6a1adedcdde6cdcce195caa1a5a23d293c8126a627eb70c272d654c47b0b5cd74328d89a06c2afee8e93dfbf8f1e75985b38729fa3b05663a06508946ce786dd997aa2587e685a5faf601376ccd9323c35c58110c84112122ac004d03df576a06bf2c30a890740bec4cd506fc79c1183833e96b67d694a834206ce59d0c626bd878949c6e92c869dda08b271c19d9f99621fa8ff47a777835c339485efe0e5196c96c6b9a1702fb2a0b5166c9e8fe1f6cbbed7a45a63dda424e7047a60f584ce1a81631f90d4d6f226eaf93778a4c0c710a24db833651a16d913121438f175db0b632723f14e3fa845806874bd7011b8b935116773903982725ffb537e795914fca03c38efa7e2a2449259d2fc31b06d15fffe900f40c935724320a1ca5d4300a1e1ee689d97af6c14f64ec25b315acf780b43456fdabc3958168c2ead4c1db85ea4317e25a83945c9f7283ca6397bd66c8d18440fbc3987dd63d031901bf9d51f899cf0aa637861e6c738558193a8ddb7ff0187f07d519a4360bf3a3b22f07bfa2f06d406febf128063c0afde37e6b241e032a6f4453b366674cd7aec3401b7857c0c63f7502d08158f25013ca28670560d3ef51806e05739b2705c65b1575e396e22ec23fb506fc79848bc4a526b44c500b4dad7a93cd7cf000e685b486f9ceaaeaeb71f423c38d235879d7ac2f9c695578718000f678165bd5df8715b196af383278f6f122bbbf0bc513e91167aa3e4156599bd219205762fbcbe1674c31a6d05fc073fee9b594c489373671b8c0fe9a901d77cb7a72c76dd7c2c6bd10570f7cba7a6dec7357567b1bccc280388b84ee078217ee862a30e81217913d2aad475398a7516f20a188484d27cd7b6b6e8d0ae5b1f5e195cfa5a07a86a05e8c71d408b289fdd15b77510d8d6c691ba161d7e8743c1b0fd30074c8004481f9985c1eb38d667b90048f526230c4af9894c8f9a65ac907a947051664caf106c8adb69aa3e406952f7c313051e7a1a9912b93d28463f20f166043d65b786e370aaf54b77177168d56019191bba8a037617d7d27782bdfdc8ae9ee23607ada495e866eddb7e04210b066cf7321fad543f0440335f75eb7fdc0d913c8af2c846a12a4bb60c1bc640a6c630d100a83a12746f1171ea8697798ae89fc117dc2af1c09cc58b8caab6a5f99cc89e11017377b6cfd131c706e43a4784d4419b67c1f1390186bee3b6ce1eae9ed8aef23492448b9083e47eb31f3ce6ff8f70c0a3d07053cb2a1e196438393320cf5ce2bdebb81cb053d619b761e7b344454999d2ae30b24a294f0dc736ac0d07698badf5091d620ad6b127cb28e92982f8998116bde8f5b3695addddf3cbd7f08b3fad945361626536c3bf98f0030a82303a2feccd1a9f7ef0b02d4b8c0a0e565394170222504f37c4807b405357a8e02f2247b4b5f24f5bce4cf75a2e18499ac13c0db8285d1a325d696230ebb4e76003ab9a694d16f557149fd42c43a638533236c6e3e41b166a9734ea777431ff873ed86363de6b591156ad1b6e7e85bf3ba2edb39e94c2d633e89cb98b10ac53be5a7c0a34da8fca02950eef4337c6fa9fb3a33c15a7b845ac80022e379d5d9713b4cb4e530dd41fdfa8fcce43d84d3b224983e01b9e911849dd337df8b7f357f155a507d3085ecdd708ac6aee6046c6351d158b7d8c830f1a697a291e1f9dabd58dd1f48dd4b80774016fdc3952c21d42713a0c5e16483b5a897c2a9db1159fa3d3e0d167e53124402608b40be6df1f78b8a0bffead469ad992734fb33f3ac9bbd17d2324157c8925e23c9011642e8a4ab7146141b5e090a40272badc9eb39a817ad46e29f34e8b5bec04f9aff40ce4412a25886e635abef808f336c664946c2f71dc7f0cdd1c1263916ee75a354294ea2ca7acc86e132c57c82ae420d2a5becf3958876df8c1cce6b3f76800ab2563fda866f46e9beb4154754ae64188c815e5cf820151677d35620a1cd0d9cc260ca2c1a099e7550655194c4c3cbabffeb256cd6ce517d4ee439f3e972dc674b0e7287eb3e335e7063dc19aac5b9b4764377eafd5bfecb6cc1009c6e697905e94daf7baecfb0405369d0e4066eb9847f9b41d476a96466d217fea59e61a4241797135042f0034f76bf0e0c55df4e3ca2dff639803415084f997c02e05b11c11bec1c0442eb817c10851e87d231a3477f62d7b5c3cddc6ddb217ad53e338656649fae796dfd7a57c954d855edfd484fd8a655ed9e7823bc9fed3866737f1bbec4321063815b5a5e25195384fcdc433bf545d8068fa4e635d7d34dd36bc764af6485ad3f52650e5e83217df9d6224b7ee8f275e105e29df2f792475d5ed24b9934a34c61881155ce113db35b890743241c763a076254a7ba562893a8e7353e89e60d4698c7f8429dea68fe1626c951a8c3f21f1ab907f6db5f4bf143bace01a1ea7d8d203dac51e9dc3c945944590b9bf42020f457a92d9b3106d8c7d12afa4af0433f2a91bf3891430716f817b58c263c95de7cd3a0160a9a5db9e1bf4748b7db34636dd2a6b47ba5646eeb4a4cff9b079e2e87a0e626e44899df30f2fd0e2de80b9b32132836738f7eb5b800b75e3ba6f6dee2d5a7d2f0c501aa902e8104e8e05f361112076329e234a813de0d85fc85033b97d225538bcf721793f931297d06415b6343a11d3684e00222315bc21161330106bc7a181f2615aea81b222dfde8acb7897f48864f2d426a841989ac9fdfbfe84a335c35a4c720fe1172ce39ab022c055baf68a7ff70c2aaa985d3d760612389bdcd213285f0c11083f75baf1d597b94d9640bdeefab5763230b2a5d10fac3360e3443fad63515d8d5ce9263ee43aedd7dd1a2bb8778a29a1a633a7e9d002aac3d70ab111a3ab608a1d85e263c43ae288c66eb67bd27d4f911f36ddb5c9b5afd7343326c1f435d5d6e2bdf789ab7b271d8c0c2a7903848fd69aef90b29e76ae58baeb1aa6d3575fb3511cc52f66a2fc7b28da7643108759339f9d5bd5d6754b300de5dff8d0785a13c535058c2bc1c19f883a6cc080b33aa507490d514d9819954bcb590287df17294f8a2203876789c5a707ee0c88b1b8ca3c7f6a14238e6533fd64f6b1ed2385351a9bdd90743be0364c6e3399c51a764ca123d38b07fd8f4078a500b637912412db9da72c7b0ef795980c3124660e88abeab135036f38b25d964666a7857156d0b8f24336d38c552c7a2820713230950966c671b1bf8e0a79cd009e36c3a549cac551fa469b7a0723665c314c75cc004427775cad594a11815ce7e783e2fe1df09476b2e2420522f68a48d9405e8f7332435f18ad47ab7cf48916ba9d77af24e726b0d2ede50f2e2ae23960dc8879270020d49985039b5523120a180368ccdd1fcc96f1e7ed3c43ac34b934e52e1d0c23964a2e255b9c2f05abe9cb9b0738b4f55d5288d6475c993891f53839b828e110679b0a5e7ed1bd84773f2e616d89fcb11720f52262342813632264873a1da53ae864c476b488aaec9e3a16def5417d0b460c7dc74e952508ecfaba984e3dee422b60642763e95d7fc4263f70e658e8f9406786b2e953a62fbdad6d1b70a8fd76b3b02b381a8ae4e546a660a5391c7fb24cf3960720cacee9f9eae3fe7024a0cc0367eee2cd3b9f0e02afaadecc12dacd236f69d5e51e8dd246c2441c977a82ba3445993ada419c1462c276d61e37887baba6deaee8552bb71f448881ce6b09d447ebf746fe83d8dd5746904ca787440596480300f23d3fe4136b2a9fa8e36e8c3ead86aa55c2b998e1e76a0821299e2f8d616e6a926e6b30429da796f5bff62ab1a67d828d843da1ff0ec57f203fb94ece1d94b595344fc00663930b34c61ee908db4970f75786c8e3e46959835d2e51221f183ed383073f0f7cc4714d3949de9426eac65a46aeeb8d3dc4f57507033716e4d601fd5fb444334fea08f918db76b935bda3d12d174d322976c0f1d28bda1ce175eb32aa7647970acfd9de213e29c848dcd9b496def9a3fd37a74d8948778a661a0fc3a85a87010087bd9eac05549f2889b6e676ee151c24a56346925ff1c0eaaa5e5e7993345d38baf0b32e6190831efc4244c5af6854582d8d7d190d0999bf672bf36493a159e45268e578771559e00225efe6d0861f480b601fd6c6e01b23979299eac5aa8513be55eb09a552ba3fede808b161de738c019e0afa7a6d2ce91f2b936aa7b971f051a9dca8c078804bdffe95af0b45b9feeaf92f1561a2d131d3f7b35134510f2d64128788e64b417ca73b3b047198d68a5729f94fef799c36b8ce8461ee4a9ac4109fa4dab9c422173316123a186fb09cf6480d2177f2a7a5ba22a72a867e61e436d1cfbfcc71de2388b9d38951d65f6a7c35ae29f5520579edc23eddbbe0a1c0222e0d11f687f9b1439810e68a4850afb41260aeeb7d9c801afb032df5afecd7525401428621c2cf0760fae1332837d48a120706a1a46d7679af979988cbb3a0277eecf393805c6917b408db175d7e7a97a179cf2ae58609e41bb32e4763b436522b71a60175fc6d4dbe2bebfcb0490dc215b1e609ba207873925039d9cc4d33e2a8a9a238953483601ea51bf71fe6838a56829ffd4c9dc7a3fe76118fb41b58cc5ced971f5c87e55b2a928f11929b62631e577b115d773c577e98ca9d901fd56ceeb26e501ba39303146be2dcc0ca8b83c1e117c44fe890ac97b1b0355e76848cee07b21d4676e505d2fc96669675f1189d6a91e83c6356e4702fcd7c4972554cfb195e889d773ef018599794dc42b41d380c35cb75411196133cc5fb908817078220297ec55bb64005b2107d3d6d6c01d29141d0a9d8e0ab83eca420bf1aa2adaf2502123724303f95dd05edd35bbb51f26984d9fb5047e7cc3cd06382bdbdce40c8f367cc581719f888d73dcb472961df54a30d2bf235c3ec000c5bd0e1a212309c5aebdfbf6b4233f1b22b3eae72ed60710a9cae2eeb96cb572bdec31ee035227fa9e0999fec0e225bde4e5b5e2da88da61d54e478d3d9e1bee65b6c5b046164f4a1521606819808acb603c42e47f9ace1e6b4f8aae176c467414f6b2f26af6698cb3f69e53622ce44cd050442cafa370aa581e1f9cf3595337efccc9243d81da38b2e6493095621bfc72138aab9fd6d234f0d4aecdb36fd25ede19dbf15647968488e62b177ea4e24306fe97ea109df6e35a4850151ce498c74402186bee6bd2ad57076cabe180df541442ab757a662073673bb0d002872257584ed18228d617d517772e6a921bca7519cdc2bf5b660d6cf2b1c1e4219e022c8c35a5bb716c2f1b09f08d4ff603bdb1da690eeb0f3354fe228f69bcde131d94189b1bae7bc9b02832c87ee8076932caa42bb8633628db7c09abbe21a96502615b7ae215ff032db8ebf6d0d3fc4590a41357c469a26a6864bef77fa7ada772235841901e2c6514da7616bd0f71e34345aa4511a631c9be07c2c34b427494422c635c38cf9d8cb197c804c72c6301b99015763f8219ad5e0782e9f3f9f18270aac7374db076ee80e8b6cfc2f080c193a5a24686289114ad7552b4fd45580d5d1b7535e8af4a17baae24d799122c38263ed89d00025a85f1bfcfb7dc774e915b7e74cc262b71037086819b23527d30268df8a2f09be07a7bd347a5b49cd73467b9c0f65c1855eb8cd4cc3c5de66d1973b408ac479fee5d2aa1944ca8d813dd2aeb5a7449eebb06647be93e4d9a22a21d479c4a239df0330f60033bdb93a34b947cb0741eb138e156dc7026aa6c155a883f19707f9dff9128f31d2d776a3fb69c5329e475a8d125d1fcb402fc76184e97a6e62ebc3e4cd2bfd03380f3ab7c93bcca2914aeb9176dfac7728d5fdabcd9897d3f750a925281661d128ddacbdea3f2ac9655a191e5d35fcffd8377217ac4f6886cc721501364cdffeb2c28edc5c4e0108d1b0b21edd17534c59d578b85ac282ba2bb2256349276db17abe2fd737d273617b8b7c405e6da6a08fbedd52531301bdcc11d3f16b58bb79b522cbb8272960462ad6c301b7b5d7a69eca2adf2d54dc9aa723313c5d279c3d02b958cb6829edb610d569135c5f8f20a0414b9026b71b60aa192de2c696cc69e745297b4f8d76fdabcfef04640b9429e52101445a035c7e2f1ad4539acc45f85bbfaafcb41b9efe6101303235d1bc8853ab641838f02668b225682c3e09c41f152f5d75e9eb49dd7e8779eaba4e37bf15f1a8802427a6bd8e39e1de89a197b86ccd014443320e4a3d9727910c78fb134cd9ec3ceea72dce210f4ad76188d162e0c5c3c96c85c7b2d6b3821f5047ee28e1f6f69f7b45fc6545573b7e2a5fca957c56206a63cbdf0603fb82041f5cee477923c564ea9af07286ed86e3e943cee5a2d698b2a4333dab1c7229c7491d66feee2e0848eb1120636e62120b2afe077f69d7b263cfd04ff9c4d4b4b4ebf3cb183c709b87de9ff3343b000fc37221fe657cc98e3ce9485356a1e8418609192f7d90983835d4979c9bd0d7a523df3cde629365b0d7759b136bf2ee9b7d062446738d6cfbc3592916fa6eb116055931cd03e37f01945829a34e9071ac774e9662ef637aaa4cb58d56fb1463c542c980b28409c446b7a54552f36deb2de0cdadcb569c21eaab54c4a12b626664fc7b7c15c33dda4e2ab5257bf3f4103d1c70bae78a72c1189ade4a82d6445ea3aee090279f86dfa5f95900eb578e3ecc7f8bedf183306404b0383a0c8de14e97a73c2e57e9bde4fe49ab9a2ee61c3899a92243bcbe433049188b79d56099f6e4517dc35021e1b89ec125167bfabdab78f248f624df6db61d592fbe98c881c301f3bcc3adf31567b5348c481d743905ea0b387f2b401a74d59291760434725db3fd4fc873ee50825da35d539437ab38c5a431cedb06635c9e79d5f9b74e61aec5959fdf01690fbaa7a7d5d45cfb1a9aca0925764b82c8bb0dbc12b1c01b56b16ce10667e52b42b3a5a2600713f7222c85808171a0cb23da9badbb8063fe18a17c3441c5f9c5fba8ed43dbe80007fe2940859f828a943d501105f59765294bcace4a9e30fba35dc9df7284ee6836187c3939027b4e4a142bf9ea49ea8991f80bac89f82121e9972b74ee91e4d6c6fac5f09e0ea48e1496b7e25f8c997f72db4fccdeb838e6acf5c4229e52d7778f8726d37c716b642c125d44b6b1a6b80030e9305a6d855e5fbfc522e7e84baa6180f0e1ab4320fdd5cc51fb3f42594489ebc886056040c449b94a87f875098bb34eba2b8c5220898e10386d6d109b0a3e6a4b7c00e7041130dfec6c0c3bb35aec83c87ed647d0edcafd3529672ff5427dbb4ddb04e4e626b309f7603fd8ccc12d18d9f36badcf107e98b4e42cd0d7e7a88de530c8f96eef6ffc0ee1eaa949f9677fbebcf354b719a0f64f6e06730f54fe30aecf06cbae992e431b52232cd450f7e2b8493ea3176cf508e6a444576332a81306b372f39e3aa2bfcb52ce21194a2027470661d1d034fe5952427df6368177d1a0c14c905fdf3d1ba8ec41c4d8a81cd843d937965284df5883880cba5dcc557090cd532081f34a545cd6454410ac6c49f76605f6b23ca11404896fa8f962b47d831d155201e7ab9a467423edbf3c7fd525d26906ae60ad49055c0eef4af769d5aa8da881810905c7c2738e04ab9ea8a46a743611543bd33c5fe85fb2f7716dbe2f0f14e58260ec6c191aafb5646d43463b69b13d710bafa7371790ec2b02b4895a56fbd0ba63938dc354b32b14a0b44a158d497c7de57f4e735943d7862fafec0cec211e6179132306f4dfef887db77ecdd2434a2c1bfffa211ff4af7913880545f8603d86035d3de414bf8608c447ca742a174d0e40ff708c7c6c067b5600ee58426645b03748d0edbacbe8b5792e1b3d91dea71a9f47a875bb8b37b9868af6f89450e4b5ea9827ec3a9d9817fcbbcfd4304dc86501e223349513e44a7bbd6c70303174f9a7c58049bb91663d7c951bb34b7ade53a3572f4820a9eb7dd6f3b8ef99d302ced5f20cbcd0e8a59c775983fef74f78dc97e883f7ca055dfa40a04e52f5598a292e034743833f68da7ba5d01d2638d1f8d5cdcd1728dffee93c74067eebe5c41db3d5f1a8b3a944dff4b9a6cb7a5c3b4061d7e923f07494d11f8d239839e460c6a605c3e781cd2e4d6422ead9316fc0b025d7c17ca8efd99ff1fd22673d5c9c7c281ece263ed09155db867b515fe840b0b2da3baf735c30d630fd02c12c5774bb6abec974cfc82bbf0f30d40076d310930ea8ab77934d353498d030ca8335ced0349dda6095501be53895e4444db71d774721a61e647471f2959a8bbb3dec2fd68e437d3af57021ca1c12febd5a551abf0d780c38c286ee6c0179a859a1b05ac0b1af7faf0055a9666543fb86da2a0baf954277fd91638d477d9a4d9f464bde6ee4715a07b2a14ebe5994fc8fc398c1655d1ca0a3aadf17a9361d71bab626ffaf204e0c9e909ad5cc989ed901115cb1ad7383d9744290fab5eb8bd22554be226bf6196728d24442fd2b1685d07581c26355c870ea550c1956b6ddbb0d357c3a2647660d751da5aba8ee5400a4e85cb39753213d9272289a3d47a7630f913818a6ddcbdf97ea4fa269999432109aaf249e1f4561b8bfdb2d313791753aacf0c300f1f951e8d21be5180ecf14ec5a668692d82f3274c49e7c9388eff9ec02bb3705845f044387afc1239b3a964ed5bd6f51631ae1fcd512c196c908d8b7e13461dc099e628e7cf72a877f93cb7a6023879cf08a86d154102416080efbf37b4f48da15121ac3ce2e9a13df55067b02954b61dc8cbe2fb0ea118ac1995e7558ffc0c44aa84f749120ed2d5b20130ffbe44baeaa6fa0ddd025b404c2808d77fd6daf0e4017e48e6fac1754f102c86b3b6acbf208c3f0008461f2d1b214ba7bc78bd1cb39780c2d747487759ce8cb1238c6fcbf09475f489b7f3b6e8d9b9ccefcd79618df33ebc2879b035412da9093098358218cfe015e7f81e2669c8b481d6474063a64283d92bcbaba7c2d75c4d567aff9d7896b55ca969c0ca6a70103041d2a2a15bffd1190ef98373c3f07f4c5ea74139df5b2a0301010fb7b2451a80321f0ddad0876b41303e9023b009b13843cc965561820b977b11a69d08a34169065fa06a9eecc6427fde7f36a8dc3e58080a4602bc146a05caef416d3e613b8ef5866bdd9a332bbad95ced5ec6031767ae6d78614ad093fb49a7903952e6efcac5d38029ac9d1c759015c834d292f3c882f0e7bf282753f289e952f53785e8552974837278f1944c18c0d3a8f4f92529d10ef8a7f05d98d602d53a480c3650c788eed4e96415075da71611619b4af653831965502c5ef6e6658df81b56da9d1b1557f63c3d37d36152b19e295e43e24e8aba40db5699360555fa8f85530f0d35019349114047d7b15d84803668848c76029e34bf56fc46db3be11625eb442c3f8c9dc66c6d028797233a6a911755e02265563d15931eed375c7574d833a212219b51d076b31502a105000cbb03805ba204f5228e9e019d2071acb382c8dd0db22402d992a1a4e1b4dc2c88af3d6d80c58a7b1d123286c8dd37122b1ce1984d2c21c38cdfea082479943493f9f73d87813e016d42d5e256fbb5eae0f9ec925ed3d508a0aa1ea889bbbe952b785c4e48876b706e9a2a19b84f8e95006eb8bba52129b02b8aec730b55060960ca38a99f2100e54f64d994a9e88d17710b654db4d3e47d937a66bc99b3a68d0a51d0806c822dff74a515d89a0c32b253670af42cd0dc94e39160b1c4f753a1fe1897da88146f94aafbcbd19212d0305ff09c86a80eb3da9445a6418c7714102f34ad62e1251f285b87f182deb75763913d6f0bb4291312914a7960287f4c54711a4267e2d0c6b3bc822feddb41c21be1c56bb54b439e72afc312ba848368f1ee4510f605d9f66aa28d99b7eec5a568af5cfe17aed2d802789ab1676be11c1c1a11bfbdfc92fd35e0bf80cfb41a36f801a638ab43fb1196db9cd405f38d4422e5a902f403d1d50f7473936be0b2fd96523621393372ad477d699241ed016bb11886c372e726d22048080cd4b9b89e138b5ad0efd103f571de7124f8a5d3cd93dcaaac8696d0c1268ec0ab0651ffefcf8b2141def7936c4bcf68576c9d0c1d3d52839542c9e7a58f76924bd2b0d44c8c78823fe1bc3a51b4e648ebe71aa63b96cdc748308131605133ffcea9247bee13c7c7aac23b8fea6fc2dbf6e7939c3409e948c2afdf8d05f210c4dbc9d61352e6e286f21a4c4ad23ed29764bbe670405bee4b747e2b9e0cd2a8d78e942f82019021552424ae6669abbefb8e1d85e339404626ccb227b038844b483a43dad591d13bcf394f72c85422b99765d18624e062aa0141ee168d137a265848c3293bcee3bbb2cd2b0ffe2c403dc0fbe050b40ecc5203e4f9ea2dcf7c6056f7760a446ef1531af978b53916947c4cb8cb0a40f02c47cb3f3aa86080eaeba42c48e069e4d9f441aee03c4c279d5aea619f7a55c4b6bca9776bbcfde66c336ea41ece31c2138819bfd4e2c97ab85c54d8f7854ae4a3a9cb0f11760c5db7cf796d7505e6ac3e857301fd72142b22e44254a30003ad5f54f2d73d6b7bc1c4852ac1055ad31370f35901385d9b39f614adc3de81ca6dcf2894034b71a9e1889f7a7a151cbde4a53ba7ded688aeecc64018c059c295f0fb89536bd04cd9459644c7b2cd7ce95109682348651895ea2ad0c09f68a4b9a49ed45f5cff54edb88998c5ced3439606684f92f3a21b0807dd280f55de8c8bb1d0a30162557b799512e34f7eab80cca92d2251e7b8d1ee1a91845dfc00ac48354460f7bb858764ff0c10fd9d1c5048fdfb06ef6fa2220cf4fe69ed8f89e726402bef7bb487a9b807dcf63e149ed1e4183274aa2c9a736fa89f6922dad52e4ba00be95cbf403908f9d11b4635c5d16bcd1cfb2daaeba233e8c29c3e436302963193f59fd70289fda14dda8851ac8b2212cf1f6383f2917870a97fd63e0f774d5ab8897b3ed235a16f033242af05fbfffc28de55f027e610aeb3689d6158a203e3fe99296115f866d95c67773e2880b9771a241f1bce386a04dbc90473dca89825f5fc21cf04f22dd18fa8e24fc17a6d05eef23a1500415215809593d7aca03879c4a2792541cfa5796be98ba94a9d4034561d39bd7a9c3bd9c34e4759bee21911bf3b2472d2c572c2602dd067d1a70108f306f8e904ec6482749cb0711e49bdd361a1afd9ab286ea4c701952ead521034f06ed900e583743782ed438ad9b56f8cb99565d2842ee803b1d40819175857799688758bd085a0b82bda3c77f2d04fa422afcb479f692ed302a4568046c2c8cc0590cfd54d264eb45556753d48ed19a2bbde806021810df590a2305a9fc06ed999d3eb316c5f3633737b09390229dd2864d11bef9af74c4b3bcb5d9fc22ed8d3bdd3275318657488f2f55fd374fe0d6c12739a0d763f694b8c1e3b452f32281945cd8ed0756d11285826feb466e7c32a8a996470d1f4092e22e6035a293c45afecb5622d919c95180e4b8b20e03d160e0b6d054fa7691478045d127f54f35ec2521aef050355ca271f2c631b75233860ee6f1806ef6fa39c98553cc6740abedd91037cf7646593bb3cf4aec303e3a18945b30ff2b1e9f52f12fa571143f99a5b4e7dd0d46fc1b9abf9398d87fc0dfd601b6d2c11917414050cc46bcd9b59b369022fa32b98d78fb2127733552f2eef05eec636385d013c6196f2edffb4beb5ec666cbb50369d6d0c4ecb8c8aca77e54f9bf4e2b888bce7cc43de80dd21d4f2ac35de84005636b52804dbbdcecb10d859100916f31e46930ee6d5751575fe6a05c6a1e4a2835afc432a26df3c518a2870e35515a8e42655570a3c471472e2576330b6bc7f2e18e8cd0ca6ba9d7776674b45fcbe42cc44cc89ffdac9092d2377f6549255d0c17493fe1b342061e3e6e644a155b1a8764303d2dc8940a194bd70044dc7c7dbacb8a5ac7412bfa485f86a0e81af03075d41517b2c790a54e015e48b179b2878b05f7b2ef5d6f0317cd56e391a41d5b8b850323d4d8a79a77d68b8dd880c58ffdfc2a8f4569460e9f1aaa062824f23fc53284dd272519e052e01df617c1c878f150481fe006c0e3e33f97cb75118d398b04e2a12b4ec2ca10d8a78c87f1e3a591507b9460231e2b35ee652a3d22b13edb820ca5124bcffe901fdf2fa0582cfc1968eacf30ed3ed6e5d4d81f43d75884ab5f9ef6f4fe5c16572e8fb2c6163e244b595f5ed6c3ef79c8e5ad7db3e74156f586e7e4190c7229e9a0ca02eab062a049fed51bcc355e73ecfec2cf79786ab48158cb0135f7c47d45e868d053c8b9d0567701e802bb1522029584bae9700c5c256ccfcf31e8450efb1f9b7865a232588509ef004494c4fe068cda667f9f4d759d449739cab5c5153697c0f3af8c817d75fb47aa6e08e144d80503830951938fa401175121a5d81142bac58d0a0004fb939e6f787f99b361777036c1f406e27c7fd63d78d41bd5e55d1eb9e05c2e18edc5d8bc7a74bff17f95a2efd99ba6a07d1e63b83d8f9d5bfd6e377bd2766067aeb3c32f00ded9bb6cbb92b59fed31acdb387a964024cc58945366c88c4f940b93a930945c7ec7928422c407890c1da9efd3765ac97e18d7ee5d8325a14abfa88f25880f5c4fffdc6454f12f2c4075151c280dee27f995845c544d9d739eb9b8950ce467862199a18bd9a988c0459f5e70ac31837d74782018fbd5f82f57430e15cfaf7976cb80bc2dc4bdbe09af0ff0a8a7ec21be815bebdc585cd5fbdc10ec412cc87ffd99e7ac2cebdd742875506efd67bf0333cc1311e577c2526e99d509c1b565be149a9af54a25e4c808bae7725ef140805d37f925da885c2ebb1682a9e2c437346a0d3f1d477b7e87b79c5fe2c183297d3fbc9571d09148056ce50884585b9e25292df5114c76522435461fe67ceb68a8ecf70e1f5ff2ce4d3dd05916f6dcdd605aec1cc75925da12410296a20b5946cf8d02ccba3a06ee301c6af6f8b037081c0bcc97c0a4b3782dffd4cb020e6cc5de0d3960ee24850300c3300cc3300cc3300cc330cc0c62f2f80a6565e7cea921084644ae5a725352524a7b3a33f33b7807efe01dbc036ceb993d7501960d150ea40d564c66b895f058be4284182d3c9a554978b429bb673cdf9853a34878ec5615ee667b726c7e844731946afc86c4c85a8c708a64b750d58e2421c533d687b0bbd49a669f223c88cfda317b8e73579d666106111eebe60cae6ee12a4a4f9c3063088f925dd548b672ddcf1f3043080f6ab5ebda42f36f8c7c6146101ec69c2e8f884a0e1f24ab85194078d09e6637a31371ff52112accf8c1c330162eb9dc569c18e9e898e183c7a12fe4fbf83939d2f7e071ff77da488b7cad98193c78f07be1b536f51d3c524f56e735a365e199a103e6543452b624594faf2adfc9697d53764c4566e4e0f1453cb71cf14eb276191d370aad093370d08fae75fae56ac60d1e7bb69f2c1dde3da5ec0766d8e051ed5cb62c6d7d99cf8c1a1013613a233224648fcf8c48f1235b4a7911fb0c1a3ca89826a3844a15579f8c1c29e8822900821b2dd86216c67495885b6849900ac958b0852c1ed6fbb778bb44876fb788c5e3099772c27bda5ce9b680c503fff5cf17f25262555bbce24148bb34616bb5354f5cf1f8e35c0e3984d120a16ac583b6efd9107a2b39c4acb0dc22c7a8878c584bb465554f8bab57f130453658450f975f2b466ea8e2a14996f8887153468eb6400cb648c5032f97ccd59d96732f375eb0052a1e8fef6c98cfb673ae9241c691c147d8e2148f3ba2c414bb9bef41bbaac216a678ecd94387a9ea4921c6b628c56397f655cb48215619842d48f1a8dba7fbc37898b0e3281e6f5beea8d1efa3b76f218a07dba97621f87a9c5f56842d42f128ad84f03987f8fb39dd81e29156cea8125fbdadfc271ea5fab4d7ee6984683df1a87427bfe4a810c3443bf12085a8ee12d593e5e471e25104d74e99420e57fd89b1c5261e788a15fcc25b67b657138f3b67b5465b6c4fe9cb2d32416ccac45b857bc65bb5c51cd33031e6d818130f6223a43ba64cbbbbb9c423cdbfdb0fbe251efe7fd7258bb2939256e2716cf024d6173dcfb808d882128fc4c2a65524939a0fc1b1753589877ab1551d27f37ce91d1d1d1da602622a30309c0547842d24f1e85c52887def6efdec6e0eb688c4438f285b21939ae3d286842d20f138523796a5f0ce212f5b3ce2c185fe988cfd0beb9b32c8f8325a023bd8c2118f27a64ae91f3776421ec7160e325230066b92a200086e28608b463cd25f0b9373fec4d58e110f4cff72f6a486f1202ee2715b9ff8c7e9a5c95d110f3f65980f393f294f9d8887d16b79d1217cca6a41c403cf3ccd48414acc3ac4e9e1d69145ba5244be5c52c85031255a8cc133c463bd0b6bb7163f84cb16e2f14bd0898bf611e218cf8c4d09d92d72cb9a6530ad982ed7ade3413c48f3d46d11726a9bf0d1d1832d04f1d82fdc63d47ee55149201e56a730293e53b7d20b8847b9f1f99376d43a2dfff0382a9f679eddce67a21f1e65f5c6b4f1d1dd89f5e1719abc8f49bee2c3230939ba9bc489e377efe1d179d7dd66a81019737ad8bbccb2aa3245b554c5435c92979f4e1e1e66efdfd45b8f0871f160a49a4ad492ec8a90b4f5542ba7f61c5b2b6deef0289bfec69311bdab68478731610b3b3cca8fe616ed2c639584b7a8c343dd0b29bf4416bf3e8f0e0f3f5cae943b6c48b9b866d8620e8f3dfcfb255a2f25cfb790c3c35ccd2d9553bdacc5e3f03868ce50e79dbbbc3d7078b0996e99dd34b4e4cd1b1e2791d87c65163c2774c3a17215c1345a53228beacb78fb870c612c6bc3633f9fa87b1ba2e4ccb3e1e198da59ae7cf9d2e6890eb658c3a394fa357ffdf33f3c8a5ba8e1415ed8d3f0922c64d37ba360b0451a1e87dc0db1edfc334986068247ae788f1899356dc9779f95b3de3de5d0191e9accaec7b419e5c2648687fe9fab1d3d63fbe86400618b323c9a1c424c2695a9c54c86c761ed77bbd3ed92c6c6a086cc9bb848799776d2f64a97d26aab181ec546c6786af0c8f59710b608c3c39c5b9fb090e91bd22dc0f0f8a2c47f8b133de4a87ce1d15b87ec41d53dc9d95b78e1d1c856656f9d68b1fd2e3cf2381fc92c35170816deb19d25dfa5e2ae69f79ac63c844a6eb105c4653b3422b7b89c64568a41928f498cb40ac716f1c0165a7850a1391f52f53d3734822db2f0e8c6db7e737ccda6e01658787cb24927799b26e90cc7961865dc40cb01061897038c076c7185473bc9efe5e2988c87a9cab085151e546788d92b569427b9a3a3a3836f54d556e1410e12cec3fe3f6f8e5b50e18145e65ab989d08b932da6f0a034f2bb7a474a4b670b29546d31d1d169da55297d0ed2ef9b39bf5b44e1f1b5a71d4d6d31a7f840e1d16cd60ce2d9273cbafc3f6e27793abbe38487e979573f67e98b936fc2838ecbd9f5dcc12e263c8eb1c526a4ed944367090fe2c59c729a18322689121e4444934fae1a423a9384872ef173f7d5e3690a121e862056192e4b2ccbfc088f6316d3ec695761a6628487b13a246ef98e27b9088f3366688ba1ed296f447838ff597b4e2d85aa7a088f4b5d2634a51c2a7b2c8487d59751c75cc6624282f038e36cb4ae20c1520f8407b9659225a325d3fa078f3f6222443f063b6b7df06844639be689def47af020c5d91053a8e8799bf2e0818f58db7acd5508e70e1ef7488c55e6beee16d4c1a3c8909ed3b577799f8307133e55bca49aa63878984d735d2feea8a93778241fbaffab4adaaeb3c1c3dd10a94de921cc5d8347a9fb4e26799d4eb5050d1efde5d4f12d6ce508d92c1ea4f3d4a331248cc665f150afa47436456d4b158b47b9ffcda62579f98564a0052c1e65aedd18d7a35bbe9648d0e2150f439e3c7182e4f3d5cebae2515d788efa1ad2cf4bad7868aeb13a6587a5f30dc7967674182b1e96a73193ebf60d49d762158fa3e4f909b1d4f3e4a9e2c19b6c9efd7a11bb3d158f3af3dc563ac69cb2848a47eeabb2e1dfd3a5774ff1206eb2b3666e27e43405b21122248d94557309315653e76acf15a9ab29c583900cede8d450973ea4785019aa576fe234877e140fae72dbc844cfb92ea2789831e1a52d265a8a43f1f85d2d4cceec152a6740f130eb273a628cb497ffc423ad10955af51efb754f3cea1791d0152c65dc3bf1c02297fdf745ed9039f1702f85490fa33ada6ee2d1f666f6dcfeda9c9a781873687a5ef29b0c33f1b0f37a9265a84bf9154c3cbe8b9eb8ddb256f94b3c08493f75ac8576642df1784bb39d5ccc1d31ec4a3cfef056d9b6d3c6e650e271a649d25663ded9328947492e67049f0b99839278d49e2684d84c9f458bc4e399cdceb1cccb27241e9d9c5ab21861f72af28887bebb65b3392c7c7c1df140cd765e7f2c5579b4110fdb2b3c7f4e15ee6632e2e1d879d6c81f97abb388072b9965b655621b453c4c9f562e5e3f79d824e251d4dbd9e51436f342443cd454e539789857eb1ce2e1f64d4acf512bec37c46397a0bbbe9e9ff2778578f8a15bbc62ce611e1b211ec686cca57997b3c683789c53debb143ba1bf15c4c34a5ad731669970410ac443094b73f7b49f7d22403c7ef9d02793f387cf94053060010970a129d0e20f0f7b54420c9b3666274947470702410b3f3cce161d93a5d7d851a93e3cc83d17c5c3f6857c90065af0e1815ba9f9445dbe9de81e1e79f577081716d619d2431224678c5489ac04f9b20c15835bd64fb2de3e0f8fc7567aef3b58b0533b3a00c0042df0f0288b4b58479d7c6fd61d1e65b8ccf8aba53945b20359434656254a08990962b5413f5f8ec5e7ebf0e0d2ebee2bdf48a80e1d1e9de57389743f933ecee171bca09bd284fec465f9466117b490c38309d31e2ed66437fb3b3af84651a914b488c3e3cfd1fa91d270d314c7d61bf5373ad0020e8f5293248b8c216925cf1b1e574be8c4288d8d1f71c3a3b09426ce8384a8b85f86181ce8e8e8d0363cfa8fa9acb071c343920d8fccb3c376ca7e9d4c5ac383f0dc948a57099f1c353c2e49b7becce9dcd36920645cb76b453295915cb5319ed152a85c6616343cbe300d7d9b7316b94f47c7dea8d4e20c0f2759140b294b8e9498412dab128dcd98334b8f1cea2d3158dc448924025a9481880fc921b26e61729191e2d4e610212a4e9e6f10323c38d794bafe24a60d95586580f5b418c3835839474eaaea74766789e161f2103ee98d67b5c49002b408c3a38db2ccb2993da60de3d8c26280166078a4f12c8714c7c62afd1aa0a2d22f3cbccf216cb25488bc5e0b2ff0a62996f2e99911b22c79b2cbb1a0115b2dbaf030c36c9c8ed118aba8165c7898b3a7f0a12b738a12fe18376e500004373ab4d8c2c34feab1adc6a23c5c5f9c8480165a78609e2b346b0e963c2510e38b7380165978e8396edebd6c3fdb2c8ead15430288852c44dc4ba4535e24c6899a5a6e557e5954c997a0046248600c3128d0d1510231bec81b5a5ce1d16769cb5a485d3391d649a500086e70a18515989cd26d2621c3b422d36b939fc4f9c5f3088ebd1c658c71ae45151eed85687b2925defa440119c8004b8016547824ae21c6f78dfda7508c32540c0d941653789c41acde2bff89a88b638b1830c4c8c1808e8ef227230b5a48e1914c6eddfcb53ee9d90cfc023a3a3a12d0d1f16178714e7345418b283cce9ce73c53acc87410c7d60d2719381d1d9a76026a82165078ac39524a21b1662c261c5bba012d9ef028f8754f885ec9415330a085131e6aec9cff21ba737785634b8c326e9041aa68d184071f73a6fc95e3434bc3b1f52ef0823da005131e796dde943dd5265e65090fb62f56c688641829b8615b6a2ca0ba718a4ad34e801400c10da385121ec58e8f2945bf88b1cd8116497894425d8ebcdcaccac9121f68818487ffeda51fea312bdfbd512dd0e2080f32ec734467c9339f43812fbef0a2e4780b74747474500004377268618407ad7a7bae6bf44beb85876b799ecba2edc2a39f4db9399ba67246b9f05052f6cc793a6a4c31ddc2e3fa0e8f617e412f522d3cf0f89967323d2c77b2f0e083a7b64d21e48b9dc4c243b1689dbe7426d692577818cba2bda79419ce925678f8d1bbd36ec6f9bfb30a8ff3f55bbcca1d82a4930a0f254d8a12cb523ae7710a0f32c5d7ed8f5d9736288587532f129377a75310a3f03082afc7d869443f43283cb44ba67739854f78249e619ddb9bcb73ce090f2b4ce70b8f56d5fd9af058c5ed72b62459c2e498f07082ba6c36dbf534de12c833e17be3fd4a789cee2fc6c8a13e69121e7da79435fcc6889c22e171c6b8f1ef3ac6fcc98ef068632a74b8a6f9b218e181a7c894fa315ba6b18af0e02ef3e9955b7dfe88f0502dbf7c9cb199a081d161200b02308447f1c53455b5a4d0f011c2438ffa9466cdb2dd27088fd45e93494c962dae40789cc2560ac172de10b5ffc183d9afdc1729dda78c0f1efbced54ace10de951e3caa2e0fcdfa1d9b230f1e64d90b12655e3a7f66070f5d36623cafd0493b3a78ac51fb5323847ed7397830a39735ed8ec5cf3878bce974f3db764e29e4068fdd5388613dea01b0c1038bedbf63b1fe52d003508387a36dee61d9cf2ae701a0c1034951d27c0a9114e9328b476b5d1f6a559f1a17593ccec8641bbe3ee9c54a2c1e58949c147a762a4f05168f529890ff1afbc978bfe2f1c6cf7feb38aa166e573cca71bd1fdb9a1892dd8ac757d936f665fdb45e973f2419eb8ead57f1b0f65b2ceac2aa78fc9561af7c3dd72b9c8a87fa1d35c5b3dd549951f14864a62e322a9cb47c8ac751c2761eeb138d934df128b5372d77dabd9d90523ccc9b5cd69b35e6104248f1a8824d0c972a69fe8d8ce261d48e915136c775cf8ae2c18d7fb4e8ec4f63d9503c347d8f08c1726fa717148fe3a6a989dfb296a3fdc4c3cd55671177f5c4831d99499577fbcab4138ff35e5f12f3cf9a3e39f12857659c95ce946be5261e5f8ae97952b07c1aa5261e68548a31724f4276ccc4c3cb9725264ddae71862e261ac9b68bf59beef5ce25184bec9494b65fbb7c4839b88d4514d3a84f855e2e18c485f2ebfc8c91d251eaaa85bfc46fb9cab9bc423f1dfaca2be9daa3a493c0ccbfe8cbaa5bdd145e251b889f98c6369276b90781cd462d48c8d17535f8f787c419288667b9e982e473c38cf21f556e4bc1656231e44d5dc5c214a42be8a110f33aa653efdbd8807d17bad2cc498b3f88a781872cc286f9ba95226118fe47dd32f82c4543b221ee669f609addbb3ec100fdd353cae974b5988706c71a18106b48086211e470f65fe41e386f544a3100f4b2d858e654bc93727847834b32147346ccec1231bc44311b5c84a9f90d1c569c1031a82f0452264e78aba2c391d6804e2914488581e7cb632ef38b6c01023c7e9e800438c1c0c20e3040d40281ab6abaa5ef532e40fa6bebf4c127fb224e687d5d35884a788dc08c7d60d626fa0d187872975ba9a7df3e181687d48b27599f247f6f0c083c673f708652515ebe1e14dec0ccf1bef5d749387c791b367e490daa654a335a0818707a1dc563b5cb61096dee1a105b33c33fe196262767850fb59f67e936a57a80e0f3f723f3a3cda3c9d52e2a61cc94238b656d0396e94f125d88f408e8e0e42630e8f32a43c15c278e6e8df5841e72093c383d99075439857c8d0e0d8225507a0118787c95b2cacdecf4b8c83910230bc60414fc0ac0b1a7078942cae5628db94a4d712dc8d06d078c3c374f37a33911fd257702c7519bd808e8e1c6080d1d14146e7680bd070c383fc0d3fcfeab5081b1c5b37c600c3ef8b2fc600a30b0b581b1ef7654e31672d49e816c71619ef45757488713a3a6640830d0fa64e63d01ccb6fe342630d0f2bc56ab4e85c282fcd021d1d6380e124a0a186c7391297713ae52c250781461a1e574841fe72d77f751a0d0f354ff2ad689269ebdea0718647f97d9fb3b4246574cdf0284a49eefe0fd7efb1400c0574749867811865739431c60968948199b1d87c41828839ca18e30b1a64203b5cd44b563a3ac4301d1d1d1de78631ddd1e145e7d0005b8e32c6d0a21234c650fe49bf41e2a59cb50ac38b2ea3838c5640268286181ed954949863b4e0d8522e34d0002e3a6c0a34c240c54ba15399c907cb8381d728cb9bd32fd429458e70ae1e29e88523e727dbf8701e5238b6b8309b022ec0f00207191d2ae0a26c0ab8202c83461776515997f44857099b66113c59e46c48192900839491820984c180c4000d2e3c944c29e5b9e23c6647041a5b7828ddaee97a271a5a78b899aea2249dcfb1a92fbee82ef646e10d6864e1c1c75bf828cf98ff452c3cb819cf629242b2147108d0b8c2e31f75fd8e689737476858e1d1df77f07091535b2d1a5578105e536affe54bc3a4410565724b54319369991593f459f434d4439ac6141e9fb7e4949f472fb7dd1b95258587a124f54dde09bfd9a611854729588871ce36b8fcad690ee8e820830614081e662edfe6e26191dd5fc35b358639bf0d8d273cb698aa3df3e212e448808d8186131ec6d4699739f1bd53da84479d3597924f9c10bded1c6d0116d060c2c376dd93d8595a19a2b184c793cc2bc7542a9d2a053494f0a8cb52ed65d67e88ae4978107286c759afac9e5c1a4878f0913379da8677f53f07348ef03843e7d10a734f9d27ff39ca281d1d52a0618407eb7f2934b7691acf4cd740a3088f2e99eac75f18bd3c13e1c188a6b06931c6499eac82038d213c887d1ddfa3c87bedfcc5172960404707193484f028c448a2e163e5c66ffc09ba8c2d321a41781c1f63de94cc9cbe34094835d000c216de662d12422458b65984d69c473a6dce9740e3078fac2ac7ffc520394caca3e346e56036d0f0c1a39c37afeddca75dbfb3078f2ada7d68f9f7f10a7381060f1eae7ec4bb883d06183970201a68ece0d1e8a46d8baa461d3dc723011d1d6380910347470705407043063474f030e24c46fcb4a99e42326e501180460e1e4f59fcfee819061a3878786f9662a690d27fea1b3cf2f4b79ddfe7f7cda36183c79b7c53b72fd5d1e145951d68d4e0a1467ef11cab1843c65fe01e68d0e0519b65b656bdf74bdbe661c62c1e4a487e91ab5358e5080362862c1e8644e457db0be9c38c583ca8b71c2576536bf7670c3052d0d141c6002305078b8711f565154436784add1966bce2519f568892adc156f40e00a461862b1eff4afe599f10de7307c7566e2b1ecb66094f22da1b52c69371832c03a408192598c18a477b236da1e6a7c27356f138fe44d0efc9965a7254f15837c386bfe8a4e271d0a095553e75bedda0e2917567edb39cfdd5f4291e87cd15ed3683a6c56c8a87f392a731a75c96d35a8a07b61273a47b39733b49f1f0d46afcb5cb513c3489981d334f5c9e45f13075b3ea4cf86c9060281e86c9af21720e0b3187a078742b2691ec2a5f46ef138f3786cc14591126a4cc138fd2e6deb44e1a154975e271da931462670aa163c589c73ab92742ce59737fdac4c39314356f6f73469134f12832744a3f87348f31138f439d56bc13d39cb2c7c4c32cf997363df3fdd29778d4f96563fc349de5434b3cf29c767aba1aae5d251e5df7b68b07f7ca314a14e1228410dd1561e3c3a3f244b0d0de241ea4b8ee5739766ab77310982189079baec66afe3beec68b1ee30619bd7ca30c31be20838a023322f1e824a7d39c25fe4774c9166640e261dc9bac2fc94e007361c6231e7a841091e33637a5d6d1e18887e131e428335331c982c771c30b2f9c8cbe21461956fa98d188876e652529e5d41893ce8847a63164cc1533fe935ec4838b09af8fa9b41ac38a78e4f113295e1f054070038c1989781c66164daff32df3d9d15175a3cee63003110f53bededb88a72ab93bc443ab8fb3cb1b437b57433c8891e73c2a8ddf5438a3108fd723af646c959d8710ac589c7b956aa65edc2897434ffd7b3988d7376744bc94abc7c4b1250873c892631708d2f4488a775f13c3b1d56390417a0620504fcfa2d1a9433982197fa02cb66ececbf08311f2e221136526b64b464d88be501f7b738763cbaa025d7031012e3420012e16701686170d861846950220b87166f4e151c538791f5623e64cb31866f0e1b1ef48ea97478adea51aefe1c19559d8989ea9e1e233f4f0c054f35acc5b694d7e1c5b61fc1737c408e3463160461e1e49f6989db4f62ce5e3e171a81731c9cb8efb913b3cd00c3ff219113b3c94c821a58cb13c225287475127568c59737de7960e0f6572dd4aba5f8eca1c1ec496ded8c93e49e66e861c1edc6fde0bf2f329a4d754601c8787c1bbf4bbc3cfb62c4898018787f596aec3c3adb7e40d0f2ec5c9c8bcb17337e700175d7011012e3420012ed80d0f525ab6b6d8d0b618d38687b17a25598b7986c829e333c05098c186c765294be6483b1663f6d6f0383df276c434ff9442ae30430d0f2647879c494fed3ad98f23016234200d8f37a7756fbc9efefce11366a0e191e75aa428cb9d5a2e499871860733c97cd2b2c7f69c69418e32c27898e141b0b815914290ecb4c1f0a2bfe8820933caf0587e454d731abb68891e6106191e869463b4710fbb75d1cf21461746983186c7b1e3e2738cdbf9c4d628cc10c34371fb9ccd36fece3f1c5b37b2140333c2f0a072b386cb4aca559e1960789c82c72a3f55ed304d03667ce1e164fe65eddde6cf94171ea69c6347339f57f6ae0b2ebad016cce8c283ca1b627a0c9ba122c554b084195c789c49c2e54bf1cc10276598b18587d27a1635fa3b671621c20c2d3c8ec125cb87f3934f37c131ccc8c263f988a93ec6947afbc718a3af4c05c65878987174e2dd855817c61957786c3168fa4f1ab7c2c3d7a910ddeafbd66a151e26df508b97b3c778e9195478b4d9528ed8f790459f3185c7215dd659cb758d9d33a4f0384944ceb8591e2b3a33a2f0d8d6b355b8a457e0dd8b2f325086170a5800606106141ea4581e269ac783559ef02852d6424cc5ff701a273cd6184d74c3ebc708e1263c982cf136e4bc61a35e263cc81e7ef2678f4b789ce3bcdf13c73c22b460f124863bf9efb9e8c2ea46a57bb154881a8778545e6176d2799bfd5c4da86188479a82548708259bc95a428d423c92adce314cc848a74e884761a66edfa26b984d837894d7e1663a9f201ee8ec5728cf14e13e4ac0faa146201e6a06b3885ec13eead38004b8b04022256a00e2c1774da447e5db4ea1cf400e30c038c2841a7f7814266888de467e860a175d70c145175c70a1010970a175a3f41135fcf0b0c2438ae6e634b12a7d785cb617454a439289910f469acf3985c8df1e1e64fe9f87d4bca1d943c4302920a3861e1e6b9568699a983365c545175c28808b2e4ae0051937ea0d35f2f028c94d0aeb5936556af1f0282a7fd618bbd25cd2eef058e277e45436ed8c8fcbae50c30e0f92fd7886f8f1575b52878797f39bbebe8abd5574789cbff9f543ec18b6b1393c901c914dbed52786550e8fc33a23e4e6260e0f32774a5f39e1db2c85c323d78f1abcdc32dc85def030546fcf7256cdbb9a1b1e75b6b7dd74fe270fb5e161f9c77b8a1939eecf860741d3660fdb0cbda1b386477e534125c75f0d0fac2f22a7d7fc2b95a6e191e6ace953cc9432278f86c71f3be43c1b62ae8afb0c8f3bc795fc13c1abf254b55bc30c0f36652cefab2dc3c394839978a8d5387591c1fa851a64785cf213af2e8364996c8d313cfa18b91834252fc618171a90001774a82186071b2e9b85942e0f86171aa836d408c3e31c42744a2cb71c7ad500c3c30ee6c12b5bcabdfcc2a35a990cf79766a0a3c35f0537cc9320d4f0c243d7dcaf0e9ad3a985886152b05d789ce543e9b5468c2919629c047c592e3ccafce99c1472e7bedb0b25d4d8c2922a3662764b76a4f6eef493162aeb59a8487b3146777468400b35b4f060cc5c762dc20f08438c2f7e50230b0f2b5373ee24f9bd7952030b8fc6e27272cea5af51ac7185879edd19d324b39bb0c410a31010d4b0c2e3d68bd27359fce23755789c3b1397c9dc5cb7b64b4152000437ba06151e8686c8cddea19bc62629d0a400086e78a0c6141ea658af0fe6e19de7ee400d293cd6bcd9dd193e3f3f51781cc5aa6247f15c4183507890e1eb97ea2e89ba77a3c6138e8e8d146ba98cd808d9d3c25b4354d9d3108ef522471937c620a3d606359cf0d8e38ea5dc1d39ad669af030849c8fe79573e57d0aa8c1840721d2ecdb7d4ae1795fc2c32db176d19c63ca9495f0c8e52247e7298f31ac49787065172fd7ccc65b8784076127ecc708b106d438c2231b93bd8c715debb8111e4ce896cfe35162d95f8407d93aa78484cf97b310e18105cbee71e2437854a3617a1d43213cae7c9db63abd75ee9c1a41787856162b6eb0f9ba4f0d203c0e8b20396a56cb293d357ef0d0c52a6a8a4b15f57c0d1f3cd8aecd293a2ee13b5fa3078f7f4663f4ce9f256ebe060f1e646aecbd55eefc97afb18347fa29e213f4d2a8e56be8e0c148a83ca2725e6d7f8d1c3cf498d24af86ce9ec7e0d1c3c90ce5031f5bcdaeed7b8c1e389dcb1ee972d0b7e0d1b3cdc4e49eb7d2235685fa3068f425807cf715248d94d0d1a3cc8bc9a22e4680cabcd2c1e549c858c27b6e963238b0719f24ef486b19847138b0729bad934a47ceba381c5a3e0ee36ff9942becfbce2e1cfb56b45df6ac5dd158fa2458ce5d2d05bb1b7e24169465c8a1267c583b5fbd40aeb70ad7c150f25fc5eaed4fad32945150fb236673a33de854b49c5c39ce262b48a1f378614543cd4506ffb8c6162c895533cda98fd35d7b95ff48a291e4f674966fe1fb3ed5d8a07f329859e4489f4dba47898ae21754ea31deaed513c0cfb1d36c4f5b41a5b140fc653f8c8143625b53a140f3d9a5669a8e9785383e251869af45b492d67a93ff120c374f09464f3c483cb887ae5b1dd3d853bf160d6b28614c2a5fc2e73e251cfc6c8c1423c4f296fe271c5ba7871dd344a644d3cc895e12eab52c8e671261e6a5584f5183e764e08261eb5bd49ca609954477289c772933f986e7e478b58e271250f2d39778a3b7f2bf1208592bcca2b57cd2c251ec59075ca3f7d26bb77120ff7753526ad3adb6a25f1d8ef3d26e5c60c9347e2f18c26abafb442e2a16fcd89e690d222ad8f7814b5345d4ae66f3156473cb28a952f7859bed46a231e04ebc9a9d75e4c4765c483f4cb2f153e9e82a88b78186a697736869a6ca9221e07fd997dcb49c4037591ed28a97daf47c4e39a2cf2112fcdb2928778b0a3f39a69bef28f6988c7494c2ced6de3442f0bf1602b4d3ec9f4398e9484786cc9ba6562a43a6306f1b8b34786be89088911c423f174f277bb39e51d88471f33449a9c45520a01c4a39053ce2859a3d6b47f789c96329f5844f0bca21f1ec7d86f179a4e62c73e3c34a99dccd0ff20413e3cac8d1fa3314c90c9ede18166cd31215762585df4f058275c4eb91ee6e1d1c4f927ff4f2ae5211e1ea51044248ed74a4ce11d1e6d2e3b897423e93c7678b492f4429e7578d8ea712f788c389dd3e1610e234933560a9d95393cec609d2f5f7d7278182a73c2c21c87876fe9a93b6ed68d091c1ee7781e67e53ff784dc1b1ec4546989f36b2147cf0d0f37bf460babe35fe3b5e161ca21c4b5bd0ee9bd63c363bb5497fec89b7eb386c77efad159d2588a460d8f6f93c4aad3cc8b7b1a1ea47e8df6bed1f0e8ccf5574ed2fb6e3bc3234f317c95570c1566333c8cdad831c4c927b596e1619f557866d664789c3e426a9bc929d38de1d167f30cb962a92513c3e34aa1342f2a0bc3f2af99af9619303c528b75995c77c3f55f78b031632fe7168fbf292f3c704fb59727a6d2d34f171ec859d54de427f74a71e1e1eab8554ef95bb35a5b78789e9b2921450e374b0b8f5d763b37de2c3cd8faf4f15635967a58782415329cfc5e67577585479f7aa925b676fb5678543183ecbfe4f5b70a0ff37f481926a9afe65478a81754fba436549f5378ec3947ddef9f8a05a5f0e0f2e6be986ced49237f15dc1040141e06c9a5297c7c79df8d632bf1100280c243b9fcf1cae37d7792706c9d71e04b2be04b17267606013ce1c179c5bdc6deb41d0dc7963142004e787c62dbb691d52b4c0a8e2d1384009af060def4bf2dae052b1dc7d60d2c2e34d0802eba280e747478314602728031811c608071841000131ee474ae7293d2667f1d1d2b780f438c305a5086171d1d1d1d1d1d647c175c74711ed0d131810d7474dce822c77774b817ca0105dcc821c6b9f185bfe9e8c8f16c36e42080253ce8c82337d3614aee52411080121e85aa7c129ab9262b9a84c76127e729dd0e121e5558a6ce933dd867ee088f4374fa82e9c59c2e6e8487712dc36e3091d66415e17104b5ce93ac4ba715223c92ff30b16f6c22aa16820086f0203c63feb6e86a4b910084f0e84ca38c45feb4951cc7d68d85810082f0506ac424498e4e7412c7d68dcf3186ad4000407890ef9df3bc3357697e0602f8c18310d278684edbc1edc7b1459608c0078fcc7223f4e7682b6e9985b1818e0ed30401f4e061f86abeb4418263730880070f2cdb4cf64ccce5135719df00820301ece0f126b3d050a6d3513f02d0c1a3681ea285eb98d52c470039789cc27c78d96d4d678f0070f0e02cb247e97ded101e01dce0415448b6ab416b52fb02b0c1e3fcd65d0ff13e79f602a8c1835871b3cdc592d38b11000d1e5576ddc9d693a98b99c543ad0ed61237a48aa891c543cb96d6193abfa699583cdea07ed155ec3e870c2c1e8ed4e7c40b593579fc150f6b7e6b2e45f8f9b0bbe271c54f1d53b548f6c45bf170df46a34b9c150fe24253a87eabbebd8a87966343d2bff55d54f130a6ec9823732f2624150f32546fe7667d9f51f1e0a292073dd91c72778a47126354e63ec57a544cf120de68b0fc8beb952fc5a36839c2db27ab8c4e8a871a35d5cd52235aae47f1d0d2a79a4d9dd91d16c5232d3d0f3ff1d14cc2a178e8967b4363728afc80e2817d7ce84e8b9552987ce241d6c5f364c12da4ac271e6866dba8874b16d776e2514469b60e69957ee1c4835c2ed3a975e3c478130f66c3332ea4876789261e249b1cd534ebc4dd4c3cc8a2763a952cc50a15130fb36c76ea8def417289472ab162ae98f15fbe251ee7129d387fb3120f3d5c9c5775498907599d9da991f3223e89472daf9155a993792c89c7539772eefc18f5a31889077a71395dea6ff20f241e88a55c99a1d7372c8f7810f7442ea2f5854e1cf17883c70e1bbbf2a6d835e2518ef4ee786a1b55463c4efba79933a4b23b8b789c1bfb53369256f615f12867aa9c634ac74f4c221e56957be4601b221e26d5ac93f71ee261a9977b6a328b9533c4c393ce292f07dbcc5315e2c16825f3e8ffce3715211ec4b9ec97c2cbffb98378983e6bb4201b413c9abc537629fc2ec2403cfe98d692438c7dd7118ead2a1a0400108f3e5d9e60d16bbcfbf387877541234468fa1bf9f8e151903b8baeccdd269d3e3cfe147231826f88673d1f1ec7a8f2d76f9e9a3b660f8fcab23cca5588a5a7d1c3e3586d1d37b64e4a9bc9c3a398e4227db6b6b1327878e0929129f6ae2f95b9c3433d99982cf36e87471d5fc1d6bca72de275786c9197fb93e6dbd43a1d1e06b1b8a99b51f2a5cfe1914c76a898b60c17b91c1e6ac520e9ce2b63e84b1c1ecb9646f009f313ba0287073675f693b7e32555def030e84f844d9cd18a8a1b1e44698e6c8fd09026dd86879abfd63bbf171f69363cccc146cc624aecd45ec383af98a135eff4a286d5f028d2848eceaaf9d4701a1ef74f86d6287aae1546c3c3e4b212727eb3a48ecff0a85fd6d593a8a6e9c40c0fb3dc26a4cf61b2c2a40c8fe35bdab0f59b3ec7840c8fd3c4a0ad396da633328687351a73cc1572849c2262787057b17b11b5247d360c0fb4ac3d86baaf5379c1f070a53c750c49cf3bb45f7894e21e267ab4a8785491251d2f54447e738a07561e5ea927c39ee7f44b803f60c3140fd3ce58f525c8f113c88c808d523cf01dd9cd13632e830d523cf2942c35d7b025b9b1186c8ce2a185cb933af24c082913c583d2f0dd31a49e4a5964b0118ac76973acf8939bb33a04c5a3cb9df54da2b9852885c1c6271e68da08691e327b7eb46d78e2c17d77ee7411c7b1d50202021b9d782421dfa2b735cf69ee011b9c78f4ee31eea7c872af171b9b7898f273a285dc2fe9269a789c25238d5b8af3ba6fe4480119613c59261e4aee781a76ff1f4305c7560bd806264a12ea29697aacb438b6caf0a2902ac361e3128fe2eea5dc4aeef0735be241a69012dfbc5c4d71251ec7a6e0f3192fd3174a3cb654a2f92f9d265d9dc4a3da149aae7553292c493c8e49d2a7a4dc9faa7b241e9a74e8ba0c43e251daa84e95a65b2dcf2de04c808d473c0e27ae62593c4cc7700f6c38e241570c21ca3a94494a49c146231e8da7e0fe97bdd3810d463c1eff7f95d7107bc55ec4e334f792677372c5fe2ef0041b8a78146fe67246a2663d8c63eb4618625c71a181066800176123110fcea27d86dc4163543c477fab7f8b2b8ead16fc096ee410e3dcb8b186838c76000e321a8704de8b1c1a90400eff1c1d1dc5dc782f729471091b87781855ecf376aed968258e2d2ae424d830c483fdebd1509316529e0bf168d37c27dbb99471c2847818bdfa5b4d3759d675108f26a7c858a14a73745482789ce6c522e4835bb011884731fc9c878aca0d05c4831093bc763ffe87c713534e216ee48d9d2e5ab0e187479e42ee67a61c530a7a1f1e584ac59c88bf946b3e3c3ccf39edbdae6bfba322b0b1870735f29ee24d5488b068066ce8e1814c4e4fe46aca15421b7978689e9221b9698b851026d8c0c3c318526629b377fa7c1962a8400c1b7778943112428c1d298e64a4c00e0f2f6ece89bd1c3be64619fe2608c38b6d818d3a3c48573165595275d11bc756aec0061d1ee9a6902e425666cfc4b17529b03187c73d9dc57f836b9f375a90a38c2cc3861caa836cc4e1414b778e71d4ac3ca6e0d8fa2f8c1737c21063bf300fc8830d383cb69429dfbef8a44ee7def0c0c73dac578e1ab73c373cba378ffbd1c2e7ff4c1b1ea667bd0a912ce6c4b0e181b57e5f6af8d7f0f8332b84cb12472b2259051b6a78b8ff51f67dc6263721b091864717917f15fb215e8c25066ca0e1c16469d0ac3c4deb2a9760e30c0f572fff5d08e53e1bb1191e07b3cf1ec23292840c2f980b0d3420c3b05186c719ff453e5bcc7ac990e15125d590b276fd9195313c08b96eccca73c448b2181ea54e44b99869973d68011b6178505ad9d22d43af4b05c3e3e025761e72aac7cc171ec693c939a5d01041f6c2e352fb51cd369a26aa8226a30b0f3e6467c5d81d65f3c385c7963e4be4bfbfd0b1ddc2838dd12f1bb3a2bae35d12e30bac401d056c64e1e1c7cbcad93c3b79593a3a9460030b0fccb5d6525f7f929f706c5571a1810630400561e30a0f3aa6a51ce3caa2ca88638bac0b36acf0c0f6a3ca250f4f77368ead2a3cae60d3f3a962c5bc07eb0a36a8f06827d5abbc77c81e4d1b5328264d7c3bdb7851716c9d400c3170dcf82f8c176678b02185076fd9743e48bc7898e0d8ca283cb4fe20ea7f792382af59b00185472a5f9e3744d6d049c6b1f5d7058e32bce800195f7c91002ebae0828b2eb8e0a20b2ebae022035c6840025c3c90ead30a369ef078afd2dd34b26a4c97369cf030fa7ec7a5c839c5e069c2a31c51b2a6ea79b9ed045d061ac006131edcfdf44994bf8447fa3e7a9529a58d3941800d253c0e9aa43494d567863c098f35c562e6f35c881a23e1419410ad14d772f28a8ff0d02bb3d23f7abcac88111e7fec75cb3ba551d35b8447e9c7a622867d79bf6d10e1d105b98ff14eccb52b17081b43783c23a92c7dccc69a8a0d213c9e14837a8ada9f5837088f7b638ed95944c2e64078f4bfa51595af6d427ef030d2ce9acec478a7a90f1efba46499bb57542dd98307295b49cca521f4f4e3c18348a9c13e7bd6bdcf0e1ee96e4eeb93c23ebfa683472b9a5162cc9d522e95823172f0208ea494b25e556ec9dac0c1c3f89d1f379ba685f8060fe6b34f738cdab0c1c3fab9ceb8b093498f8d1a3cc82de7a9d2621a92c7060d1eee88aff5e7891ea9338b07d152d494e236d35b47160f2d841f99d32079ec583c0e319747fbca782179583cb49c23cc275c4f76ff150fb46ea6d6934632f55df1f827bea73e754f7e7d2b1e58ccdd7489dd937e563c1c4d1ea1dc72c7ed553c8a27395f86b6943aac8a079b5e6bb3480cf9d6a4e2d1ec25cf9c4a1d326a50f1702d78e590c375e7694ef1209bfeedc7ca934a19533c0a49362d91f27879bc148f7332f3e59be698b093e2419bb6e6d0f8d1f1f5513c4e3134455465bb0db9281edde5da74bd79c97c281e4da49f363169330d281e691eab5c56b1aee29f78609e27a2e53abf654f3cbeee301fa1e35a943bf158edf33564d3b89fe5c483103fd7273e476dba89871a7b6b26cf5d8d5734f178b53cc9665bcbcd4a261e76a484a65afd985205138fff7622237bd88caa5ce2c1a7d866956136ab6b8987ea194bc353d4cf66251ee5d8c78e5126850d9b128f53d9da9654aeffae27f150d37a6d4baa4c682d89472131588568329d431d89471ded62883edb2571483cca202393ff5defec473c085b412569d8142eec8807af5359be248d86cb8d7814db3c42fe38ad1d65463cd69453eab0e936529417f138bffce7c51039ca64453c8e39784edb79b4d824e271e49c462c5f08221efaa6f1d490337774c9211e9648e88e1df4630a89211e7f0c6aa366551d355288875bd7713f354288c71b7c3767b2f1888c0ce2b1977ce6b0fd39eab38278147290dd142b7c4d6503f1a025aaa6e59ca12c6401f1b0fb72674df53f35d93f3cfc190f1529fd2d84eb870731132287af9bd8b47d7814a2a710d54279bd46f9f0c026a44a17838767ad7b7874e14b6f6422d265d5c3639df8b28f59cdc3c396adb412354ffc55f1f02805f7ca7f77b535ea1d1efb854b39a5fa42dad40e8f53acf3cd9f429aac691d1ea4785448394554494a87875d2195c856ccfc660e8f35e68a30bab9f19594c3c3e89ebeffe251ecce38e4ae3e2164ab130e8fe35b47bad9bd4c38dff0289f5e38170f633e49373cc8b51fcbf66d3eba6cc38314fb3e7bce0d153ec886075983cb4d9c4d1e39b88647972c96664f51c3838f9f42bed385930ba6e17148bdb190ce22ea8d68783c95fac252e6f1b0e2191e9f7cced51735d48d6886472ed952ac8e17f673caf0e855b7a4a62ee6f893e1419ad4d1fa756b2f3e86c79352cf4577db6417c3834fdf6ad51c413e0ec3c354d9d40e2a1b933d303c0a53d176fdda6dcdfbc2a398ac7f17935b5ef1bcf03057be78ebf19713af0b8fe23d67aa4f9a2ce470e171ea9fec125b264ace161e574a7f133a2dcae45a789899dfdd7183c7d066e1e14bfc91cc325b31685878e81e172f6693fc79b32b3c6e518908f1d3df9459e1e16c6c85fcbfe75859151ea5cbb81027f58cc78530c045175cd005b8e8820bb20017169000175f8c0186174a8587d11a2ebfc5decace141e4c9ace15d19743cc4be171674c76f270315b1f85c71b52460dfdd0b80c141ef5e6f057979ff04833c76ffa62a2cde58407c1bbf37b7fae635c4d789c3574ad4dc896ae2d263cda48de651139a7946a090f733c89581f722d44a584079f2d37f2ea497810aa114f3faa5a2791f020a514215ae7a760e3111e7786ab893944ea8c111e4916e990b44ff37e457838a251b672c831b2a20110e171879adf1ccffe462d43789ce29b3f225e38b6b8020310c2a3d7b89844a3367ef3bb3280203c4a31b9a393e4cd5a1a203c887495a8eb512dd1d930801f3c8871e1d4732ad5181b1f3ccc1ba3125e73ce167b1a06d083c71521caff674d1163a70103e0c1e3c9316a899da7e5618841c2a8404707192710430c1c6268e04b051d1d60a861003b789c3c83c749b89c2e85706c1961b43707888dd160dc7f8e324a56dd18800e1e4cd0e9283d2145b44ec1184c06d918643c069083c7935ad11b27736fd0607f8e323290e3c3f0a2bf681f000e1e464e656c45440d99bc30801b3c8cc9d264e5e5babc181b3cd43933c9647ac9c4528347216fb68b9f429a861b0a03a0c1430916c3670e199143b68c27c366f168ff62446fd1d2df0d0a3564f1b8db463bd436cd7d8763f140a62a6ae445af0981c5c31c6334d2ac92c98aaf78d075b19e53da2b493957d468c5c30a9ab376e2c70929c68a87deff533e169ff29aab7814f4433a79597be98e2a1ea485ccc1e28c86114d2a1ecee85cea665fce92838ac79b45cb36af869b9e9f50e3140fca25ac6af2dca9bc31c5a334cf72570db7e461291e784e9f68a73a17196584d1a478ac2329c6b0ac4a512d8e2dada4408d513c8e139fca73af468ab91c62e4c8f150513caced14c3836cfcbcb1106a84e27134ed97b8da4da910c79659193540f170227fd56a5779875150e3138fca2c568fe6dc9bafe0d8c2e1628cf177821a9e78dcbeedd1e5323289a346271e9bc64faa8678dbbee1c4a38b9dd53246be18a56ee25112ed60fe31a75b734d3c8836b9c43fb26a748363ebc65d116a64e2f1076f9fed9877538738b66eb4d9834b0b1dd4c0c4c330bb696db977ffcd251e74cc64131d4b4b3c9a6bb14a137ab34bac120fea67f6dc3d45d72bf8306e8421067e1815e8e830450d4a3c8adcab49d998facd16a0c624f056978e1bbe35c4b14535a82189c73615324fc8b5390fe36f90412810c623031d1d8a891a91782817626bc4bc13ed765a7de912831a907878be22ff5da59de5df24d478c4838e515f9df528d195cc420d473c2a8d131aeda6e2978d58a8d18807e1d9de555bb27c638a083518f13085c8d7e9f9d7cb582de2f1745009f1a6d3dd948a781436fbece68e5c21ff5554a8918807559a528750729f8c9ba804eea5e2a138180a85426140100c00a2ee7703a3140000000c1c90c6a2d1781ecaba79148004443a304a3030121c1a10141822128983814018100886c1804018100605c2a0704a3c8c62d45e0084bffbc369257a23f999bddb7fd32b21b8fdba2d4880301b99d0b95fa21d49b69c8805bcd0dad6b1085b751399793f2f3e3dc4b466ba7720140fe7df9d8506336420245c729dca8547887bd994cfed1d11e0ef6c0c30189d097068a387b0f838d86ceb5f1fc09d0c2386149bfed580b88266b4c16f4421f8fe091d836d0d922af0dec84ada40c4d08a28297ceae059c005576b40f547b7e9bbdf1ebe9d1ad62af1742e3fb2c78dd726f2b433ed1943239334da0985626ae690e52350436e83a213a414178176776e4d71b65b946aefc6ca1d0e679923c57a891d89bd0d9f10b758ba2d39cf352c03cf055b85c14ab430b86d026a212ace8e862fe1f6267bbf0e4296c785c4800aa28c30122ec74b5c66608de1d39ecad92d204b25326cb0c1a0653788c7c483d7983d092e11e9eddd1b80c43669cc23109514a22ce9ff2125bd799ece94d0fbff04b7674709bd66c95c391db78df6b314d9a87fd228480bfe0b5b930ed49f81397425e29ba576024ff475e825a5d6b78cfad60e391cd3ce2409d551788b73338c9a996b14813c35e2be6307778ee01a5d50de389a6798be7b36b0230d275d6ec7c34560bebbc210b5b2fda213290efef1dff8670a4594d80bb4c987f599ec7d85d60ebfef19be57a2166296f795669f0867d6cb88a071ba3124aaf455c7e428692439b66322b1fad4413dddc423f1f5b8e4d770d4e85db9250fe00366fffbf3e06ad89a9a22c9d4f67632b5a5360cb3617d3b326eeba77f2e1e070e752467ab2faed20a4560ed6a3ec9c104ac44f5749fdfcf7fb8dd4df5197f57002c9d311bd8c6715c675a65aec41d7b742ef815989076b4c52f4873f0b93a9d26546debbed8f8e89e4bd362710229a82b70aa84c3e01a500cb1bc985df1fecfe8558de64f4a589c4e61fea001522436a6cab9e5855e6df63efa0b2e087b6c252be42e8463cd1ee887db54558d72133b987a97548d995e6fead59e8c7345818a84859385f0344aa135af019a5b1338f53170476ec89765c36f913dc7a66806670813a737395ad077688a2ae50bcb389077cabbedc9f3087aa83acd1864eb2be51ac5c9aad7055496680a19eda0c6451f5682439c4d5b43ece66447140e6ed602828a1a4d199e6f581a1405955abf7d3fddf2675e59ce01f0b06128722647d8c348c74e08c050e3e05a381725dfb94541a44d85c1ebde3fae98a5733b4a90b72e9bc4690a153831643de096afa0cadac9b926acb77dfbf5409716bbc0e9b296b325b4f9582ab52c8b719d2885b0f6e1eac6a3d7aba8e21429a35186f2482a9289d4ef5d1f8788a5e026b606bcc4aeac2a45a0e9b53e4b4ddee62fc389e5499d59435c04e717640a6abd34a5427a5336951c738ebd229902d600daee8bed5237aca2c2cdeca2eb021a6f2ad5a230e16196c60f4959fd4114725fa19e7868177d27b8620129bbf6f9bc7ee4e90358453842998f0d7c998579ec462d242d2ab0b7f8379bab7e5f5d68750bc565a318f817d630fffb5fa84f85f05af5871c9a4a15818801faf88a5d21f2c5b40e402df20db2c155d15cf4ff84be0577ef0f288260c80b9050ff8e46bf5ed514da71b7b8fd11a96eb062331df454982b13300cce0aeacc4c1542daf375e308afe9c4cf2e8ed17e62d1adbe29826cd36e9692b3300904d164134342c1671d0135ec4dba01ed6042f54b28c1ae9858dd69431f2abe4c7a5741f4c0735161b268d80a8a184815d9f4c9e8e39ea3dcdb5d3e642e57ddb6ae3b5777dad7a78672916d7daa549766433dec81deac9d7ad223b668539e32bc77ba492f19eb5535ee558dd59db7f594b1dcd8f4ebbe0fc4850950ad68d22daa95ce93cd03c8a8b8fa48408a9aae9e8ce5aad1a818e28bc90282559184eceb53c596a35e29aebb691c6d79d09d3c69965b99d6ed8bfd3a5a70ae1445f77a3f6395affb37fc0e942b3f8dabec24a89e3d69acb8b7d5ab4e324b7d469ffb414b49887dfd7382345ab70bfac5f12214973531fd1244c937fc0a7431ce3b3cab845896f55a757a91cfa89cb0bc58def5abc158ee9e6670fe3495a5a2ee59e4d1333c25ad27d19e56b8c39936db730c035bca14740ad250bea59b0e59b165b41ac92c7ac4eaf48b77ec02e3abe804e8330989f78ddb974e8a06fb078877f6ce1c11c428a23de9e4c1aeb7db0d125ad8d2931547ca71437ff3b8b2e128a99ba05a1718422d4a6228d4c9c607f1b732456b226e4b21c14263a0f0a34054a22b7a5fb8fe58d5dbbef695f7e9390c63932dfefe5981ec9af2179417fb79a24e9c97f803b1107dbf0cf82c40852577ec668f12c31aa3d58dac70c9679e3a5ed6833db7ca2857dd217634ed648fa4b4ec99a5128fb350d72268849135fb74d202c756380073839b7af6dd1457545de570aa18a6d5aa4c7b0059d6083e98115a7d1f9451bd8d250262f166200efc9985c8942708d41d922b27d32c44bbf9d03eb9a67a68be258643437553b5c414733ffb7cdb0301098e315697d2545769da55eedac49c77a5d2b8a9fda799662de09284b8a11019953edf17c03a312a10ece3f0917a0408328773e872f2bf82e8db334f3b7045efd32555b59f86e1836cde924ec0ff7e4024889a7033b71ebf10842af8d7dd1500277a83c502c07915990b9f9535f47fd83c180be24424273ae9f5f924d218da7e3f9442cb4ee1774ebf5075bf837a0bdbdd7c164386b1f8c743bd3bb72ac3e89bf878dd888e6cec38654542c4bc82f93530195883d6870def883f15dcb8c1a335a8b10dadc27e9ac0c08134fa6914117c45626f75e5d8ea068d6cd5dccc92ebbca285ed08a6828259537f8c02d6ea6616873492b28bcc05aea72854a30cdf4cf862c46ababfac98b32608a7bb30b04dc4a1653e714a8b5dd7d2ce181e1ede42151ddaaeb4a5ed45cf511fd58ea6c4bddf8414eaabb757dceb6744fee1b09aaf241d4248879ac14db4cfc7a3367051188dadf154b9edf7c2de4c9a2c9a5bd54c2db644317c396e80f9d75c2b6009b80885d7104e361e1ee07c84dfcdde92ea28c05c72773dc8d340ee254d2b8b6bdfe14e1a70b927d46c50c45818fd19bfda4633e93ba97ccd702ee32e861c153fcc89666f3f380ca758ad0b9e0f9c4a714196dc5381754eca04e172bef91f94d9f3c8d596c6cc2498e6f74df28365b423a4153b5a7765dd063a28d0b9d7931cabcacbdc01b370b5694c3f2ac0af9303dacbe01feb4cb653d48d998567a07c4dab6df5831fd51794edfae43d511523c3118b295660a25fcb2a3bb5be02340c606331dcccbe543a012c660389f6e269210576f2fd568b94606f1aa1699335c06e434ae18613ed3dd023cf732a0f5568594f04a08e278b242dd249ae6d800260275a1fe054d2c789d4b02aa8db56e2231ab2fcb9f760a9852ad6b6f47964975132e29af3dab9fba07ad458b8b52d4f880d005bf42209816e3528df51eb287c7c92dbc9cd7310d92cd437725f4a93c654b1977a560ff164405b6a2dbf473422f4ed9773c962cf38349a50e6e58be6e59890861659845653ad1830b75a958ccc5892416b89a93e4c9b2637761fe66736ec62a37651e299e4279301ed6c2cfe544ae71e43d180166f066d0b165f0c6cf4daecd2c65c7e332cd0597db8cfa6359bfbd884bbcdccddbfd9b028b2f7dac7683b9f1cb28ccf6f335aadb143db58014dd04e0815022dd8c985694a238f5ce4058bb1ab8b96ec18e951fff8df5059d0f576faa7dff26ac8d47c38e87bdc9f0086938158118cece82bbc9f5b70c476230bbb4e7d67de142045600be01d707dbb59cd91e98c1bde80709cbb0e944981e2df18d13a3156c9ff3d9a8c6523c60700c8ec14f9134946db1941d39806d06a176b8a0b187d02ad686fe8420ba6f48304c79c257d152b33ae93fcff972bdd03d73f4bad89f59b6843a340c30ecd68e6c06cddfcc26f723d0c192e116e436bc24e3e43f4aa47f6de5b52342d8638a1145e10151d9a68e062833e0efe19b8737a9fdce80ff7b841e8dd0c440ad713197b4073990431c9a592fe94d6338463f5d9137d219c4569a0d8dc66a2302089713eb731364697f29586730c6d883ff6e39ab4aea47a8533415358e0b3a51afdb2c496c06ceeba9029b6fcafb198a0547bce9cb558c5c0fe3403b819c249ec4afb8a6bb875ce8c5d8806301a97eb4f6a971518a678671b264ef19c86eab20cb21bb342ac9552d4bc7602f6f0cc529cfe628f5993eeca71d2050290c1088cf76595c2d0273a5a6c133991088c9f487fc0ac621578944466769aef36198d935486dcccf2e153cd5dba7001a7f9a85eeab99c823bbcf0d33aab6ff25a5cf90ca3106ec175948e6e38a266009d361e4b0f4fa013b5a3359c8c575480c63818b3700d4aa3ee3f0650b2502ec56334c327d4466b7112db62090da2306ec45553115a013f4b8adc1d19a1019a402e6c425f179c64d8d41bddfb4a59b0100f51e0dc66abb4a9d6ad55d4c332e86aba56ead0e2c99e1c86259ef0d0d4f4d54bafbab676b587558e2b63d3279e13a4f40cc3346e59a8ea8aca910083a4766bfd3d7af7a477342d176530c5ec27b15e3d53ae4657f6bfe4509916a85ce68c14f08cb543de9b50d50595232106a3370e97a40721a5de68f5156cc345da901566cfa8ccd47046316301078389cd45fbe08cf7ac3a52b12f488757867927151dd269f7211b382a76483a4ee0361eca010cfef4520da0505b005c72ae154c29fbab618fad4778831654a9aaf78f12f32e4d76a5abe0310d3bcee4714d410615c74820346e4474ba1f61b85128d2f83f3f364a08676e05f10d8b9728bd28d3f11982bc4b18c66314feae8a22a7d880992a785420bb8e5a737d88ddebbd48724916349bf588357d41868ef40918981dd07bf2255da9c34d7b79c34b5d23a274cd444d82853efb57584a33910d7f0f33a68d3faadcb1ccdc787253b94de79c89daab354daee8253fd370ba46bcb7e3f9f8d5cb53132242816b66ee31fa97d039386851506ec535599c6b8b90cf71ca76f143d3db19df02f5d7d195661e227cc7dac2c9ecb0cdc685119b99d0109922b334acbb114f80d4cece1ba0481befde0116d40cf15159b0a419b8bdeada56f2defe9926d36273d4f3aacba7aac6eed788ae78b8433f373402686fa2c3c1c800de6fafdc003f7c510ca3bf129b33e20b52d705bbb829e161360bb642a0f76b78420ab9a2e19da3edfc70158e20beb286c79c964d2bb75a18eb953e9eea328e080100e6121b5a2215866cdeffcf1c115080e7ae863f6f220d6564d8d003f4232ad323e7db819731405aea1d171acf5594d42831e56a4af3563db3786d6547ca3b7905cce99f6e24372a158cc64be870e71c3cb79c0ed2942ccce83730562ae3ac779dab0d700fa0884c32b203ac03de772ed4c967044c6e8b48cd6a2ebb887aa20ad8dc4bb4c65a06fdc520833c5cd420173c089dc115133d9d42f9a92cebf6fea1586020865c2a81f1b25b8e07085d4ba12d734b3c7d782e71c5ee003c57f0ac9da60a1ebae8eebfcbebb49dea6ed6f5f6329eaea7e6cd7b7f4ff1f77d8f369dbb69bf00c115c68ae080d1067af1ad16eea0619f15f8cd9702ee7f0641bbdf0761cdd02634045ef5ba1f475f7848755e48291b6f464a5c50f4f25d0bc1e08c9f9ff0a130178ce43930ea0cd78469717800a0b9641ede252cb5b4bd85c0600beff3f319830b69f688d4a16085879e75775d21cab736e9fa31cc981306cafc312f8c2e73cac432f3a931e02c0ed58663764c1a46cef067728c16a3cecc982f469ed165569958e6c7c864f4cc4a26657c3232cc3693ca6419ffa4e975b4d401d9cc1693c26c6ca28e6346c3ac65b24c2ce3c46832eb4c9a64d41442693778cc9af164d432a33460152bd8925c1c3b51492765e3734c68aefef8031fdceba2b0e8c76264024dfdf48e66477648b467d6a82952393264a1ff77bd4f5d9bc64da6a971748e78e7d9693b6a8e8e333e599c601a81e34c27e71a030b67d6c975541c08e7ebc87774ce6a27757c388677e726742f9e4467ddc973469d6347e7a8f66c8a42424747df5173b69da8e3c0d13bab9d9c3398f0bcf1a10d807e7e8fec47fa234d887ea12a9c7fc3b45f25d48a6a24ed2d06e213a8accc1cf502848478bf6f30bb23c2ff40466d3b7d345d2694da4b0859f5126d59601d1b28f456eba1c2f06b94d442da153f74c0568b48384d8181fdd316a331e498751b45867dab9100aa3cbbcc569b91356fdcc698c98787210bb6c33d7b676b4bb9810655ffc2c97271c4ae7e246ea1d682a72739b451f4511e68cf6fa079781cfac058dcabbad213647c8e9db0a2ca83a1b08e03d828ba6220281524ba180f1061dec23b757b92700820bbf216716fd57eaee4f1930af117021ad660738303770f21ef58d0d1dba91ab993d69c10e48c1648547f535eae910d1eec99ebe755c571d85f4731554d18f3064b392f38456bdd17983dd03ac403a0ea2f4c5458141abb065ae87e10293d2af5e06859ca435a46d2ac9b85154901e6cbc486822ad3544cd750723783b1b3ccf6b22d890a44228dc389ed9324897b750aca5f0a6e98c335986f14bc9f3e221117c9f57f9f405dd6c9ee771a4eb88fe47fca9e476b380c80f3b573da24203c774d500ac26df0ce79e1c9be44c1d086ef60be9ba27f027de8ab507686d35d3c2e44016eadeec71b69400573c6dba1957262f8321223809c1f5dbac1650b65a1327bec3dfe639f0952fd0f7f6a4d41b2a9b08787580733382dce8351b3a581993377305305a44751a7d66abfd6166fb125164f516967c754e3ee59e3b28616de230ee90305048904962fc8fd9e53a4321e64799d9585590ecc324faa09e16074ad7c2963fa01d6020946482bcacf1d62fdee77fdb828879a48d2555f90436db4c32b0b1bd7646a3ede4a673816214036c3504602bb54e4d419059afac899d7a5a66117b80a5e11a6cd63f28e1833b9fb5f944ecf6aec0d3d60d82dd8647aea7b0ecaf917d27d6e08e874fe97e69a417bfd7d7ee036addda7ccdb69260be239d2e6a61df83166926a87b59d9601f2c159fe562ff7c6d50131d196dbac6c446bad8429bbf2191197e86e45ec379f6621d6689b002a3b34f7f2320b297a40abe853efaf52ae1b70df4606dccda45c83c778d4a3a3ed35540897f3518872c3bb9bc2f195c203da8d0dbb55ce13f632a3c99fe01543c1d38da4160a0fd09486210f04966bc33e0345cd5ad89f3f13112bf852a5583d585084657417b7e03a3b104734790b8719aa983972e87ae29b5b3d4fe85dda954384f50c6dbd880c45afddf50d6ac3f9bb05a8fd045a8d232fdf76ccd52cad4508b65f98d6e4fdb69655859582a5fe8ad50ccb3a74d893ebda8e800c40b6c65226e8b62457ad518cceb695424f683321e8972a70835b3381b44e28376dd04d8047e056f76e1416af07f84f228b7106decb181e6d4bd2f481d2871e734caa6774c08039c61e204d0c15099e29b949a1e5d3913b7bfae4c812f3def92f9b1e0557df0fd541bac641cc32154f0c370938bcd0f99c886b9aceff6716f5e3d37f616b83b425c3940969944e0a994cd477d266140e82157a978c009c8567cdd0a5d0f830e7f311920c75a77eb69686e816162d32ac1eca8d7402c7abbef1ec81a095dd344c8e85dc8bb5a470f110e8719d227b5c2556266b526eb5fc079304c14da7528431e7095f684cc766ef42d42a1312d909012e1a3c77cc2ecdd443c36a4c850805a10fc61617a7b1bb80fd4199ad2b3a9a33ef5f24f5cdd8d59d8b2709fd9f297bee2e72ca77d0ee646c0d8cb9a746712ddf5dc0ddf4d565768817fd5ee8ea6fd522ce0d75a6da81897378e2eb72e8ba7765f1a76b6cb911bb195a7653588c0d65ac88ad624197778033393757f9a8465ac91b11dc1212e713e85ea28b73b607281dfa28bb381f2c449d52fb5f0fd508a9529c98ef0c6f527e404351c104afc1c93cf30fc8e04a62bb6aa31f27940ea1e1c241a2f5ccd07b57a56c2a4dbd8844d64b8150916a894b7c627304521fcbd63574620f330cbf496a90308e0ac989baeff03ce9d3a2316f049558f937a497cd309723a34db980ce4a3578c05874bc584dd4a360cb999068b79f703716b74552cdc3e5718b6eba33f37fc79e94d53874d97b949fbcfed0f04f1e8c13e133855b20e274b19c0c420cc848c32e4c5cac677de424eab911674c98037d8c4724f4b0803fce0ca19c01a8228827785e652c0739479b7185d49d8b169ef034da738b3dafd16dadfe54b3f8d3f23c697f5c18b1795c4a9606ae648b2480089d2af4b2800f2b390be21c1e938013ee574287b4d6cec82ad4dfa2a9dae5e9a4272589ae52c428d831c35657a134301af3b14bf7a2033a24c1e967ad6204fe625d090b9a37afcd9e925e08e4356c649a8087089c12f15416ce3416f88c2c42a4933e58573c46c40c133f776486834913ddb974b46dd6fa6275eab00b249f485274329409c8a86324bb901a2f61c72ae6e3986783b8f805ce937b5300803420e4e09f5000ca098a075af9ccc42412b4c967bc6b7e89ad9d3592eed86adf901809762503fc2cbc5856472f24a8bb7945456aa160ece4882b94dd7cdf21dc1bda739093c73695f9e0c7234a1d0460ce3499322caee02d94b1f566c9cc85fd79dfd148b8c6ed30c3585b6446d2cff75161e92391ed88d1fe610be3fe6d5942560111753e55c035de525d1d7ac62c88f32b8b8e9e5b2aa0edcba4f84113b2f82561002892fa11b136b4f620a7b8dae6ba51e536289b81e3af1ed9631811489ea50c919cd1f0c811f2498d919af15f547803f0610518aacf5c498717f62c54d513c9511dcc8be4e6fb43d7d34de08e96ba514c4f0f6c1875acad8508517a0c8cbda23286c339f97081b102fd8bd336677ba38977fc9fa1c4f5a25174808c77055a98d31d5ee82a047a19695768be461d8f873b89a4db42687516af955378b772400ef44c0efd9dc93cd04b1c6f99f47f486fc13d2179bcae0dd0d1687c90811c57d0ab50fcafbfd03cc2b41826909910a9c05935e092718178db9823a776d95ec4e23e9c557db2f60e1c88d30c5c9e98e663e6af00c9ec2aac44e7fefa1f3eefb242981d921cc11104961792470bcd17d1cbbcc505962d81bb44d61635048e7a4508da5d9ce50ba721f713f75b6fbcbac5be1fb880a8f984756b20791e2f903540da105889f7469e222a2a264f252b677de6f3125a00f3e979b932cc03bb982ba7e17081dab2a46e348b774dd9ad50fa3d27f0f70a900f778d44cf3ec017f439d036d2e9e004db7378bdb977d04bdf5a30bc031d7a28731ec85c042652ad41dc8b7451255fac50b679bdd46b70c176732e852188fc3ccc9e171d365014d3cc627683274f5acb223b3e85b9aefc5aeaa887ca1bc76c0df536be70491fa7649c3ac846835092c3423d6876aa7da75e2e9035648eca10c543fb28e6b56cd54eaa4a40a88e1c84259f1a04318ff43ec7de21fe98d03d358e33ffccdd9b105f5e393c4e49d24d3e1fb049766371a821d62478be203d722af4b4904d4677f0481e45f939553b77c572aee1818ad0716390f4d63136e6b8093cf1c07dcf8e7eb4a56db23c5921c80dff573ca63e04ec2266c6364caf9ef2651821c5acaad7b4d2e199567ffc0d8e6b76fae555abb1279a267b2a4fc5979ea97b9072217749766e60fe68501d8e2999ae770d062ec3a899aedfbeddfd1796c214ec20454dc17c70586120063c7c8e5307bb20db86de8005e696cb243b23406092292dba34a9eb0043e043bee8451d1fd436de1e98b6c36eb40d2bbcc103c86cc4b4e80c949d66b8dce3b2ced0a192ed9e44be6fab6f2f7349cb6bcfab757d134e71ad242a32e34459149f6cba26a6fd30a88ba08fd25c03eee2fd05e0d5531c26900216e70b0b129c8e3f22a22d4fc20a73e4667f165d814602c76dd3379149444c0fc1c08120c561e2fc31de2e645c81f0708c70829b6e68a3813d6dd8d5dd58479da4bbefad20aca59c25d109b06b512a531a09e5546a26b1f2da9cd19f9b09b2b806e05fb95cbb0b1726a37745ce74c3c16a70a3397d93a79820d204ca54adf4c78dbc789812adbc1566de0104fb7d13af43b25a95d493d969de6d242325831a337d57ab897613ae1ab396ac6e0846a785ccfd0ae784b9f4b8e277b8efeb9c53d490f2227d76292a27baec838e80f0a21dbd3d8dda8a6ae3349f988f2e9ea4e915139ed23ed2e12e1948df47347e3b41b92f4ea88a7330f43541a5c2f266df5a670e9d5c3103053ae01b01642c65c127e0a339699ed6d17748f88a8e29416b49847cdf58315a73f5846bbb5b218a67c310817a10c521b310148c08932b4c468229898d2d70cbe426c7ace3d1c4a878717174ba1848294c6ff339c9531f9b3dc93e0c2fc4c5b5c1bb123b4d08cb3c2f227dd58e4ecc97b1ab9bad005d463cdee36bc5aca3a8e1815b60ee4fe7d016656238be25551c0965df609529edaed323b816b8205ebee408088468607e8539a65fec22b66aaa48fc5e8e2bf0de41d7614bae44b2a100076cf1a4709ce935d739dd520696631d7ee4221541acbcc9a5cb7935b442c60c2487980805db854426d1c4d42e0a2652c822cd27d0076074b12bf5d661155e9092826d5e6883b04ac29ff4e14642271e1f537bc38036ae0a904ee95ee3fef99e0e1191209530c80dfcf7358913a3e50372b3282421e2869ce881517d739584601b8f77ac60a09dad4ef029670d5809e9960169763190567ebf753a7e2e9f99898e479a0128c3267f1d53e7ffe846dbec23549b4c9bd01afd26134bbbdd680948857f3949274b77e0847d621fe6c3a3faa4bdc1be30333a0bdb989623d36aaab189596f5b5ed3c054b0e9d9e74da6a6375bd1e2b11f266ba65d5bbfcb35df3299b6dd2ca52cd1fc8f11347705c824a8ff85d7c1f370d2d4e5c4abc02cefb134d3a17e9138fcc04c7458cef4c0d9ea9792a9fc30ceaf2487798c282b9e0d8b9b3460385d989a43f04d14458b3073ee3e17aaccdfd7957f414ce1215738ec7c95ecc1b11045eb3ef8e8ac25a064257589d245a2be4830d14f47d3712b7bf2e54a7665b6cc9b0ee4e26ce4754eafeded9bf732f33576f00a33795135f42513716df77a8691b8b76904843b0a89a8ed209d19926495cc83ff499463059a6c102f74a569199a9e5becc37d61a3ad4e03a37a6879c01606fc29f08964a03e4a2762195eca113fff9ce2a2412587b7f652c7b075337a903b95301e271016431f9d984270ea067bce179a0949522810754369260b9c302202141b8258b9034b93fe85c9aa85aff5e214b0b3f5a2b922d3a66852d21728bae96d50e26dc34e7a89a512954480d00084242b116e1f50d7a6f2a5f458db5deddd29f71305a5ee34d73c1b944fa6c4f52d0e0d4ae1500439b33c062577ae9ff35dfdb9fb7d3d9f4e76237760eb340a400d2273df4b7190d4638a4e376d31e08b12abb7acfd2e24d2e805ad251150014aecb219c32dca3e468760fa6d745044cb4cc6e69f7cca0ea3cc99db66ac4baa08e2ea3936c7438e8d886b84e7772ec1a22cb3704204b596822d9507c898a4ac3150c1e2830c054ca43394b7dde7244158d5ea3ac25ed8ae02a4aa02adbf5527714ede2ee3911008d2b6dd2bab4f10189dfb4423600a34f8c4d87369b17729e26fec91e4b0afbe239f69d22d424208713d93d5ee0af24580b43bd1028a9f1363c4b1cc300c5c370f79092c5787d535811ea5b3ad3cf1eaebb928ad0d09505b07b241da8d7dca39c451bd1a290e6126ab2463a199a6e375f5ada45677b393fa7950149a53dc19522e919c5c919474cf4f8c8f3e4dd3e4b8dcb3d4bae4d44bf0d64225153d26536dc933ce73e374415a935e46ae32c08f57375228ac0ef26161548ae450b8f4edf0feebd01993039ef42f4724c8b904eb9468288f194ec784628bf07834e8ddc1c4d9ffeaf3bd17a2c7653254efeea8dc4e532d3bcc4490e2636987530cea53891bdb582716d74c14ec9359c745f32e7d20c3a45aa8dd919b215c38787be056e8d65e64cdf3622d2a95c40073520443b3edc35a04fc481c03e0485059309c4d2e4407cb984ffbd5e86f85fe99ca1ed93318cad5a17e390beb977428a8d5c63ba27b4b011cc102ee5244710b3b30eeb4d0013cc3333cc33311882c3aa6bf12ea54f3b6056bcd7e37f265da5246cfe9a4ca24df8d292599644ac9e9eeab4d0462a48d9a080e42be1b6c0b490b1e0ba7053f1e0460841802993bd7eec5b4e0310c414821fcfb7cdad7cbe494680218a0ac841002dd1f55757049b72c4e4fd9dba17470b743b9e02d6410e8d16c17f5497f4d2e8b20d042b52cc7cce8cab3a409043afee3ebf51f0181daf8ceaad163d6edff807c31e8bdfcf1b2ab674709217e40fad60b7d7d262f27973e204d6b41fca557eacc4d7c406bd72ebb8e27b4e5cb8d08217b40ab9616a53295f3ac4b3d2057a696f4e6fc924613f380ac8d69639a17e53ec76384e001714ade79fc51f572c877406f6c31f1b28e754fb2036ab7646edc462deeae03faa59e5799fcc427edd001b52e8b5ae775774a35b21042e6809695a6e7a657b3e9b58c1cd0ea99a734cbfa38a0477ef4c52ea15e1b38a0b53e765d6a72e9a39a37a0b478bde0f1e5ac36f56e40876ffda4336b17f5ee362067e483f9795c173c9c3d086103faed74c6a99641f5e942d670d62f677b26a90b51034af5bbf2779d4b033af6465772b51453b7a20119ae758c4283aaf5287506644e27730eb9dd2cea6606a4be4f9b375e0c2ff55306a44ea67bb5e0725eec6b83104206947c613a6939b5dccee41d848c012d5b87d79f255f7c8c8a01f999749e7e9cb9d6823b940b72101206b4e819dbafa3fa98f14cd9430d84800125f4b396f46d797831cbf20b215f40e878bad2357721c40b68b1a47faed064ca5e1750b2a6d44e4b794175b6e8e0e16ab910c2856e7dc3b3ed8b977356215b408da994b2a553b9246e14952d84b481faac52ab5add324a9d336c84b08196df3e7a4bf9e52a8a0aaa11b2063a73dd95d4f2d6ce0a53f6d440a67c3f97e55beb8571a885102dd89932b331d6dc6b4c2e2ef55f7813e77a5e54ca1eca5a3d50be503abee0902c20c7e5a756e2b5b4ab65ca1e1690be59d631b769415c69a5ec29e7f17c85902ba05eaf7f874fa37e3298b2b75e0565d3084903696fb2ddf28ba96ed52beec39c116205c42a759aeedbe59d6c52f6d0409af43b17c5c5f62466ca1eca8a8e3423e40cf466bc7e472dea69198355083103a9579f768d173c534e5540a6af98d4a2ab9d4efa1f42a880da36d328fec27e7fd214106eea9d7a75f0900f2165e0daedc5bc8f3177089102eae5b813332fcb253dd321840c64cb6e3acbb252fa252f4b4814909d95b4952e97162f79cf21040ae8275f539fc46339843c012d67945a88bcb67859b9fc1027a0b518ff1ed53b4de0a44e9971e76252f6d643c640d9e8bbbc6131563c7106214cc0131a842c01252eb4377daa8ccd6af538c81025205e8d998fcaacb1fa09429280cc59629f5ce7b05af0fc878e747874e0878e14460812d0b79d940e3b1a5ed6ef40c70f1d3c7ce50808937ab6ec4d3dbc1a53f6f8428c80962593c1a3ebcfa85bc7514e8f10214540272da617f3c971b1ea4504b4d85adaa805cf2fe6f4870c01255c8f8eaf54997a932142409d99d2a252aa0f09024a4cb8784aa9cef2a57c0c905aa045992a66327a76d7295a20a3f61566ebb26c9693406681723156abcd7c32c73f1059a0ce45fb2cdeb37b54060b20b1407fe9e8327dfb9f7aee3c0204164871f194bff5b2cda87d05525c8b5fbd2d7c949a3ce60802c415284ffbd452634c34e715931c39589078006905ca3777e9f97c19405881ccb2d851efa4d29cfdb50ab4b43985976c7bbb7a54810cdf6caea4566bea41930af4c86dee0cafb3f39f796400410552e7d61d4bdfe699ef4f4eb19c36ede66a2a5320bc77938ee3e7a5aa3ea540bc9678e13be6785599d3060829d0e1a269cbdef868ba4681de9734aaa8d42d893f7101441448a94a76a6cb194fa95628902eaa879795929fe7954081962b75c64a355ad2952501c82790bbf15607ff9cf77f0f1fe909a4fe14ef32e6b871bda1014827d0a76549fbcbf4362790ae36e7fd18a37906c826d07267d768068826d0e5edf26b1d33799d09f47ece0ba7be4a283fc2f0b19840b9cee2379a947956c653f61c450cf7817809b4e0528bd3cc60b39d329640ecaccb92c7cf39575f16942f540f30b212c8dc4c953f36339e43097438ddc9c51693d249bc5276053c4e80d7360099045a7ba697b3294fbce8d206104920eef469497dbed4a9ed8c0442ed34ea541a73c87f297b394ccc848b2d4cbc0081047af58b99f57cea6b17bb007904423cf89734579dc3d7208eb8136ec49d80306211a8d3d9c58c99a3b90c2a021d37cb2d9feabfb8787262adf2c3470f401281cca2d6626bfdf0dd9a0d0108225032b3f692dd219adf49d95b78fc8a41208740e72c0639edb72fc79852f615175b98e4305959f9f1263972982c2238393115c0192086409bccf8e2baa8b4db0d5208e4bb9472f6d4c935f192b2a7a357004208e44bdff951994ef7d58e305652182b6610083b9ddf0593e9d964021041a0b5bf653e8bea2cb89fb2a7f23a547e04021d3ed766f1b28dcb5fc56e8772812282000229344bcf62107f51a9900fe40f08d3d95c6a19a55d00f103f254fa9abe29fffdfdba0f68393c9e166396add785cf81f00169735aeb347d321dcd1ed033e72b937cd0f8da15d7036295cbe95ba8adc65806207940278dea3c54a6964f9b182a5d5001040f686dd3e12b3aaa3ce70ee40eac27b957dff65903c40e88cdeab4c3cb6a3b36ae035ae7f0d55ad789666a41e8807a71ba33ab95bc2c7c2897734089edd77851cefb262d881c90f6ab39cb3289e38096bd4aca8b515ed4f872e08078bdfdad222fb37a654f4e7600f206f4af4ced52376ed03a9f00e206efc63375d3ccaf56bee011464a0e3440da803ea553ce66fe2c87171b5022fef65a166ee3723865efe4e4e4640b931c262130e9620b13c0000508206b40aadc96b4a069275f675a0de8fcb254e5bd2a3dcb2b0d48ffa4c5d29b7fa7cb931313c000c50720684069e1b3e89ec469f460fb0fff80e730c991206740667ba985e78fabffb4470c1033a03f5d77c7d1531d26fda587094e4e70005206a46fca67de8caaa8201032a04d6c7636abd87e57e7a0478e93931cf45051b901c818d0a65667e987e9fbbf031d2b772977af43e5478388011d33bd7acd914f9f65c280d49fe53d1d5efb632318d05a5b49f53425733a198a182a3fec12bf80d896d23dc6a4e405b47e0a934f3975666217501fb3946a6ebcced5817001a93ecb5cd49e83e887c243c72901c816505aea1d0fa7deb5b8cbabf4f8b1c23c40da38ca6eaf741565f11e602c60bc8e05c206b2652dfbc668bf2d45f1d1e3878e84e263457f00b2066237c978953777212f0a8a8f15544b2b6018733c0051037d6eb7de42cd938b262d2063b5798cb2d2943d1430c0f045932e408092f2c3c72f3a00c902d205d3fc82b6389b838f0564a999bd4fea6975bd02ea656d9afd355c4ddb34101f9569f55a68b6af06c40a686132455e279dd387a2d2c31c26103450732f690fb67175e6150620672c7998d32d7b72b553d4078819c88c9aa378ec0852853bd901420594c69341fb47f334e652f6b80099023a4fb3b3f4724bcd596520c74c6a496ffcfce3ec17804801194573aa7549eb5e7521039df751e78967eaf05514902ecaace694514999c35040d6ea6cb772a3d8d015e409282d2ecbccd1c5cb70f1e8a1b2505256c2f061d71b007102caa5d759b80f266fb2d50494c960328fc640c6408b2f2b4595cf0494ac36a565107b7d9a65092851adb533aaf605938228019daeeb63d67399f39b297b7c029204848b26d34be92d7b1663020812d0327f576f16953809204740cb8b2fab9b9596ad5fca1e881110be26a56a5727d6b34540acc6985ebf646b5f2e0d1022a0749f34ade5e4a2f0b40219025aaa6bcf3a4a8580d4f0ed49ebb8315fcb204140d74b532a744bc9d3a511d402a529274e4b5f93711b2d50af5ce5c57a9cb277ae04039805625d7cd4df4ac664cb8aa7b02c96d33188eb4c75bae7d103c56a30805820c35579149fe193a9c350e911c60dce8e01c0c2175eefd87bcba28a53f67ef8fb7895d32d18c02b7a93b15cb9340dd3ca8f1e6080e109e5550cd10cc015e896d574cefff87ad4a66c2bd0ab5d4c5bf9b9cc5acea728cfb1629015c8f03f532fe7fca14a95c30056810e9e1e3e69d09819d524e97519118cac012ddff4b4d65ade93f352c3a5e29fa783bcd28014a7db5ad671ea3e7634203bac765632bb5e56ea33a0c3e3ea072dcf987bcd8096e3e26c77d5ee5ea70ccbbb39bee49b53831132a0f4c4a6de13ee2d9e740c88d382cb2cfb793c1d356240a6add2822b6ff1e30ac380f4701d5cca9c3c77be6040cb9dd483468f25ed4f288c7c0129bb9e566c0c2eab157b01b99adea32b17d305747df09747b55c1346b880cc32e6d3bba9520b1e2583912da063d4db2e2ffa2e7b0290869136105e9b6a2e47f98d75c561840de469a7476f5572c3c81a48bdaa63668b8b9fb58a0c236aa0b390d7ea5cef799a78d6881690aff695a6d6a2d497be198c6461040b695252d8f867492dffaf1d3d94b6317205b4fcd6ab5363bcfc9e9134d0a7de59ff05ad0f6f5b01995a6adaf575653e2934902a3c8c968a793ed9198897b4ca20bf32f7a53365b9488139619870b185c9c9c9c909df2446cc40bde862a94e952e6a29a5ec1d932e40605a305205a47c7135cb6c5a3c4205e46769f59a5b964fe7d874208c1bfc07d4b3e0b0b91899023a3e97c7e0fa8a4a18ea55f6874a8f1583819132d0b16316e475b5964fa63cde8b66c18814d072af8a6b96566b7c4e064acb82684b5a1a7ba8ac60240a68619a4fc5546c9653e9c3a060040a489d4a86bad8b8498b9e951415142f3ce5952005252881a1ca8e1d19839127a0a3e628b5fcf2caead8b51a469c804c9d77e445732e7f65ca5e9231d20494ec792dcfa27ef517eb61640cc4abf818beabee3b8c30019d2775ff85a77a0b9a3c8c2c012d5cc7ff4e7559aa7425a05fb3e7e4afd5ed5b6c879124a0b4ce9c646a9dc7ac0c129069c5e5a4bcf838a7f59123a063ec4ceb7b2d353375da3062046467599452ea7cd9305204f4ec96cc8b9fcdf5e928e78cc1c10811102f9df0b4a249c6b039313204b4c796a5896af935571f110262bf956f4bba653dc69b180902f2d3cb3957bcdc98a54e8f5aa0fc05cda37a4b2aa5a552f6101422b440665399cd51c5cb667f16e898d3c76729f35e5e8f0322b240c9523abeb70bfff27462814eaa0553edad030b747cd231b5d9f2719b57a0545ee6f5c9b4882bd05a54e23dbea597ff6f057a645daed49d175467a5ecf6ca4a0f1f3c507cacac082b96b57bf6d8f2a31d386a126f1222ab40ae16548feabc0b091155204c6f16efdb37d545d3214452817a5f51cfd1f49d74d64105325f77b4d1ec28c37d22a740bb9299a53fe5e2b31f5581882950b6a9a48ebaec154331d67f0ede043c4e70ae1322a540460d3b7361abc4b37cf983d1cb7f0b3544488196a33c61c2568acb7f397e101905e2555d9d7a8e597eaf28109e635ad952e4545ffe059150a093d4797bda360b0aa43e9d5c49a51fff217f02a9dfe3e2dfba9e409d7c7f0e2ffb7131d50974b9cad8a7731a9759750b229c409c6971536f47f92d4f4511d9043ab94cf254efc5d39db1404413c8682e64eb36cbae33355610c9047a538a3771794c203689779d5929f5f4a54938885c0299fb5eb679fdfb1ddd12085766e2fade59bbfa4c728871722246259059904df7afdd5ab68d0e5674e025307f10a10432bc201e435583cd7e700e229340680b2ed8bdbd1c1fb3229240be0acfbc3ad77f4a5724d0f963ae55e26b1a44208194ff1cfa41957ba6fd112821ab540b9b73da2cb53802211b9bf5c9f52a228d40c7cf1ba5ccb2b9a96718b15a7b7b51b31c3f2b3113441681165f6c0b0d6df3d09015812ca539f75ceaec132e35834822905a6a83c6d9f48fab1c83082290b1e937cabc2536ebf510c8acfb362a4f2d97aecd1068b7afdb7159c38a577341a4102861f3ed1b5698bcd4130225372baf99977f47641419045af7de8e69fe92da1e1404ea5c661db4d3849e5a0502e9e26fce9c5a52caf603044ac7f818553df9f7fa7f40c6987ac34e4e7e40867bbd97a70b2fb5180c44fa806ef5724e93b8ecb3151f90991f4f69ec7b4088e7797973ac17135d0fe85c159e957692d1dd95b2b779408b5acaed6e3195147b2c2c8207f466ada949d747fbad53f678f4e8217207b42ad51ef114db1a4f4e4e4e7e6000c610b103520b2f2ae9397ad2abfa19227540b7ded662f7e598e5ba5410a10332d5c4f53eae78b9e780ced7d266c9d6b386881cd0d29d9ed3bbb5a94d8d03bac4f3a7bad7c001f16269de60be5acc67a340e40d28e52bfbdcf5c5ecb36a37a03bfc0b31fda7eabf665386481b503a6b1736a7d669b6f71d88b0015d52067d73a117ba22b206a4d4729ddfd2c9d8f1b58608226a40cb9945adbf97b530ed77b17c8ee5d28096b6ef722ef7fc4a251a90e2df320a33173e4aa97e40e40c8819973633e27dea84226640f8cbfe6647939f59be2c03da5edef98ada8746a915578308195076e3e11f3309d5662844c680d4fad7f23b6dcc1f667372b2bc490e931c2a9fa27e9874b185182ac7c909cac9892844c480141395fae725434c9bb22abff24c0c44c280d2f0abf4c9274d32b62c820145be807ccfe6a27e7965eb1c15f10232e3c7e96cbb2fec679d9c1815fc824817902db7d256adc6b52c4b6888700125f36937b32c6332695a7cd10a9ec816907eaa7cb350d90b226da065469963cc769eb6512988b0813ca969d23c0bd15b9d8e1494df818e95ae82c81a28f1dc4a8cd9c74ef2a3065a9619c59972a5b75eaa05d409d390975d536338b3801e73b15bef8e5840ce8b2a664d98ac5b5d01e9da4aac9e334faf5f1aa871399dcea673324951c810b1025a7ca93d6f95462dc6ab051134904ad33cd76a55a1597efc19a8d5f76d15377ab2313390496eee98498b930d912a205e56d8dfad679e14a1204205a4ac97cb35ab964a6ac129a0b39cb47ae95a7282481948d9964aca132e7f5e951450f2c574ebda855b7b193344c8406997e9379c7851c6144601bd9b451daac2d36e0b14d019f3c49bf29884cbb993935e9982c81390ad5c4757c2b532b18f21e204d4c7a7df54b9d12c6935019dbd320bb6c9bb849e4e4e44c640bfca18f32f34cbda73224c40bed8a2d0bc1defa57f4620b204b4ed67d5fe9eef36eb51ce8e0f224a408b3268cb6f4fea650b4592809626bb2fbc78b3395f24a077d377abcf59f2c23f822c881c0179aff73eed4ad728af490e132e50eeec41c40868553adf53bd655fec1401592f1ed56b8e8a10019956eb6c7c63eade8e4183c81050aa2e4915af5bc646d9c909ca191121a05cae7f8b3a770b184482d0ba7756e5afbe568ab540dbccbf34bf6eaa64450b94df78942ae3e65a579a0542d5dfbe4b62cbc234a2f1624971c9b4a4eca19dca0f1f6d84c402a12dcdf44bf681053aa65461e2d4a6c9d72bd0b95916dfbecfcf7c75057273dea4e329fda0b669054abe976b9757ec9b9d52f6763c188ff2e3bd60932e40e0050f1d5d6c7102ffe11f50e9f14305292841094e4e50547688204700d810c20a74549b63966592615b6715cb2ea63e77c1fd7498b2ca5008510532b7b4a7ccd174c796a940675fed4a9b2ae9528b8a9053a04b0b72ebaf9de5e439299b8313fcd283875953a085eaa9f9552d8d6b580af4eafad5b2634ca72d2705c2d5accaf71c35cfaa4761f4b81b3115196dcd8c5912aa52ea1df59cc48738c073658488021dfa517c3e5b61b2251448d5aa3f5e9f7cf5a705054aa82797fc7335be539f40e8ef77fdc6a82750ba346fce7f5cce974ea0ce5e65dd05d1b06d09e104bad75cf8b049a9b633433681b0dbd352d4633369414da0b5244665ae4d2f956702f9f572eb9823afc57d238460029d5f6d85a9bbdcafe52f815ee952c7e95de5bbf20ab14448259061c655291f55fac564082550de519b96f2cf0ac450e9a20521934078d2139f4f87d352658824d4474824300412e8ce32894df3bf37774f4ec0f0b143c723d0da65f196753c6f68ef08d447a593bd26bd95a56a043a79676d2d2b46a0f47f1a93d2b3c8997c11486537afeb34d907531581f6f2185f548f19dd930884eab85aca252dcfcd2002d961b3a83c4997adb70c39045a94274454b8924acb75ca5e775e7501a56bb5c99aff865d1317d076fb2a337f0773316d01f52dcb26a3c9fdca2cb58158f595e6822aedf2cad940b98ad98ff1954ce5af91867f1d4676a5065a8c52662defcab4be6b01fd3aacd6c24b4a672d9b05b492329debe710575e63012d86ebb9fc827c05f49afecd5dd9a6819e7bf5be52865b7dab1550272a9e45d7fecaf544031d755cf1ad59b629ed19c856a6a7f2859d79ce0cc4794ad93b5d9e29c32a2056f3c95c2eccfeed5440e6975bacbb141ee373534029754a47a5afa5b8be0cb48c255fda51e88bc648a4805ad32f8f49cec7a84b642046b3fca7e95fcc4ff228a0b3a4ada56b33d3d3231490aa59e5ebf6fcd26b8fe409480f6fd551ada6727b499c80da209e1bfc95347f2d491350de1b2b75669c640c1f244c40b68766cd37fd0d799780d4f295cce25deeee7494809665ce4c25af21490252ffb568a639e7c9d5902001a964784d3aca93878eff7130203902ba65392d7c8df25ff80e4b3074fc08c3bc80c408a8d57a6a5e6ab0514052847d4c674f9a743b1f3bc2c811901001f5d95f6b7055dbda539221a0445cb4fe252d21204bc6969eb4e8930401bdbeafa4ccebddbb5f0bb4d83b2a63e7bbcda88516c82863348f7d5451d3320bc486c946b9fb220ba454f5cc980597b3b88a055a2b179a33c74b7d9382056acb57a68eb17a054a76dc0cf73ac7cb47b9026de39dbfb94e2b2d46b502b5cad4ea534275f84fb1022da36cdd58b7dbb24b5a0532a86a19543daa40bb98748e39ab974ba940b8a4b72e2af1d2bb202a50ba1f334bdbf878964e81d2dedaaf79e3acd24d81dadccff8794dd3cabc14286d0d931a46c56e27055a290d1e5eccb217728f0269625f3499759ae6952890ea25d5283da5d62ddc50a065c7b493595577cb0e28d059f64d5e52aad252fd0994cca8ba7f6ba6a57a02fdeab4244e69ad85db74026d71b384e69c9c400b5faacfeb7552fa4da094e7998b97e5780f5513c8171f378ef68bd5ac4ca075698bbf2bedac57830994767b6fad54a745312f81dc6c8d49664137ca165ac2526d25a5f6b212887bf3b029251033f65279e7a4f9c449207e5fce5fd47e9e752789565dfe482cffeb8c2fc4870432c7e8feb62e4bd9cf235022763aba9d9f5a63297b285ee8583c6e3802f95a96a129a26a047a6bb7b54ea9ee9343e2062350eb613334acce2250a7946affca2cb753a90884ebd12c8bd9745831f1ca8d44206338d562729751e6cf1a710311489fbd1f51532fca27dd38043addbf92f164f3b31673c310287725c58b75ea12e24621d02dcbebf35aec6795e1206e100219f2faaf65ceacadff4120fee4e77a69599ab34a10e8954ac7d2320502d9e2d657dc080864cfba8fbbebca6ce93f204c5c6b27173b9b9aed07649457ab547db8b4527d406e677b512669b62fad7c404bbe6ff7d92d2995750fa8f7d75996992dab6a193da063358e4bad3379404be95273f4de5993423c2036dbba6c9b193fabdd0171afb57eaef3a8b14e764099f612cdf1bb0e68496a69d2b53495fa311d50f30cd32463eba561ce5376e774ad9d03f2b43fbf369d3e856ae5803cf9b52feda655c6270e08dbacc2455e7040bc8ea24a7773cbe95637de80d8d6a2f7c6b7aa5d0d0437dc80d4b25dc9f6942d2d5e6eb4e14e6eb00119e6659db3766bc52487490e13931c26623c094c7298e840c77a152e4cc0836fac01e9a29fc7a658ada55476ece85b0143c78f3014dd5003ba857f5ddded59879bef0c37d28094a73f8b3d69aa6cfcdf4f9e968d1b68409db6ccc24bb2bf6e3be70c48d36d6a538bbf2e6768ea70c30cc8fcaec5d2d6c2b62c190c37ca8096eeaa26fda3d271f327b84106a4d45ae27236b1eeb83106846ee60fdb4a3eefca4e1537c480f2b4721ee3fc94878268d205087cec58410e1e3a54b043b9e0e4c4c78e30cc70230c68e5329a693c5d186e8001e1526a52a765aff2f4be803039eaba25bcf57b9e6adcf002528b5f194fca39b170a30b6825e53626cfa4c4639e0b08cd3b1a376a510b37b6801a97bdebaba57831e9db40fd6bf52e95f41733c52bdc6003a5b33fb3ace5f6e9978ac18d35ded6b59fb570d11b6a2083c6d7a79e678a8b49c10d2d20bbfb653636e7e4a597c28d2c20957f166f5a7652731f5ef1a1e3071937b0805e9976e5b510dfb4ca943d14c61fdcb8024a4ba3e7b6ea347b1f3a7ea0f858f1a1e3071837d2409fd47baf95bcdbb86105a4abbcdd602e5fded5b2e243c78f1b68a0a38b557a2f2e794e3a67204bfd88cb599d958d9ab2b77aa0a4ac78caa6ac7808ccde3003b9b2e3d3a6998c4ab9f0e14615d0517dacbb2c6d2aa04cfe0693ef2ceafaf370630a28295f966d498aafd222de1b6e9481cceae33f5bcb920232e952935ac94dffd245067a4e7ea7cef3d955b6a280d4ab71cf47dbef4c0f056486377b17544ef65f9e80f0d0910fffd3dca872023acba89ff4deaa09e8e4b269a68646695ac640cfb92c85beccb5792626a0b43f76c697956eda7a0928d5e0a3baa48feb2c2b01bda75bea55ba64eb9c4d0242f625a933f4830484c63be52aa5f408e896c5bceea66c579e6a0474960fdf78b14cf6638a8072af3d79cae5d1d82711d03ac7e4b224c5330494d09634b958f631bd13027a47b5ee53da8d20207f33c998b3d4a9c7b816685fadcfc533135b971fa105dab4bc63eee6feac6366815aed24e6a4bbde52bb2c909d356da56b799b518d053ae718b7979f1e81055a5495daa63c7db9cb8fbc021d4fbbe98c6a4cd943d9b14304c80148c4882b909fa5df73e999f45d6f055a6c1dffd2cbb2de9acd0ac4e8e71caba39ceb8e57813c2d4bbb87f778f5f22a3f50de87185d78c0dcca59c4882a102f2955dad266a5551c7cc1271223a9409f5c37139953a7b4ac943d1c7c81b2fccd9140711023a840697e71390552c6e0e2fdbccd6755320552e4e45b78ce4b81ce2ec59ddfb7cb2b5b52a053cb2e5b5c0b1bbd4781785d52c60f9319f79c563901005831220ac4067da97ad3a84bfa2e8fa23d464281d6ccb6a66a1b1b7aa7eca11c82026d5a587bcd36ab9c4f20b63369590ba6f560a080e1ff6305e50b30c2487a265d80c003fd239e407f2b1764bb35a99a964ea03cdb09cd7ab5b0d9559c40cb21b342e6445c297d13c8562a93cb72ba3581d4ea39567cb88d466502a95d704957de07e5de8b05b1e0471825383951b1c35f7af0300148630413687f19d36dc6189b5d96b2c7cb55707282b243e920472e8130f760ebf6fe5ade5a02b9d957bd58db2d0bbeb5096080d283914a2075b7980597adead1c50825d0f6e161fe45994e2393407874d93a9b6639aaec92404aa54ec6737f52bb7524126ef274a9bda37fcce91881045a8e864be1e9d15ccb23d0b977ccb5c7b453978a32e208a454266fdd75bf5697a5116869326efacf276ef65e81490e13169870b185c9082350a62db9283dd35c6ecb22101a6b3655aad3f9988e2802fdfa5dd4328bd99bb4d39144a077e33367d7473d8e8858ca2cb8a8baf466b3974320735f92be7273364f1e439c25d5d5eee10cc14821d05abe5467fab4985cba7df8a7f0082190df5267f95777068172593475d7e97edf5641a03ee7b537c5ead462881c180904e2f73329532e0f0864c97619c5abe68b52fd03d2bc5d14f2e29e9c0de50b7f95646e47fc80f2a8fea9e5d8dbd15c7d40ebd0a4749edc17fd94f8809632ee7ff43b2db98ef7807433f90ded24569b540f682963c79ca5b87b25e601612ed57f876f593acde00135f22aa69f33667dfde0911b18b903cad7bffbdfb42c653ed90119ef1d7396a6257b3dd701193daecb61d2430774ccfd8b7a5dbd1c770e486ff9c25b8c715e472307e49bca7dd194dcb42e180764bcd62e6939cba5ec899150ec98ff870e330207d46b17be259db9df4e30565aa503788a87182b2603236fc8931d236ec85f6ecb743136d6ccd8066450571ab7c5dc62fd363ac206f4471d652bdb7a096ce078033aefc7f23ffdc27bbdb801b9f331b54eef2c894bba028e36a02597ef659751734bfab301f982a80717ee355d76770b38d6b0cbb83a692dc9ac0b1c6a40699525ee65394795d2839b06b498fecbde2d8a060e34a0f5b59ebee9dcf4096387c105c010709c01b95b9fc973e8297bc7a40b10d8e981c30cc896d6e5358fe6e1b35347e0280362bd6bf5cf98d9de461138c880d22dca3037e93206b46eb79227574aa9ad8b011daf93d2d52f4a9dfce543e00803623fc826b5fe41a5698e1e708001392eb6957add52258538be802eb13967ed2acdc0e105b490174e9a0ce7b2eb2e0538ba808e626b5566d6a29fce05b4ec691b64b3f439cbf5169025339fe6dc511e39e8c1e30b94151d070e38da40d74bb951988b0de4e95c32b6d4c26fb2d740da7d8c4de9f2af7a8b1a68f94c7a522e7b5c54ba943d9382939393132f78e8f8c231006ec0a105d498da24758cfa32706401614a26dd3e2dba28568505747ec9f46dcca8f3f1ae81e30a48b52d27313f9db5b6121038d2409c87dff09973fd5fa6878a0f45050e2ba03798b655ed9539b5c6c5ead143858b9393b357e04003f1a5a67586befb061c67a034a6741d34665f6d310319ff46e73769fce07d1590abc5cfa73f5b55b8a880f8f49725265c36737c0a68e1639d8bbb16eeb5d9c516262826394c4480a30ca44673d7b294d2b3ddbce0a123a50b95e7824780430a689352c7f4ef5a302d283b7aa8acbc15010e32109f656195b8cedb2e6d14305cf550f1a143bd0a8ae29d5de288024a5f5ee5bea3a9d2300338a080b693fa664e57b60504c8061c4f40fcaabc476dff4f26c7e10474d42fe6d454cb9cbc34011de3e55c9ab9f236268d816e8f519d4be261de75ca1e13902f5e360a9dd51290c1ec45bdbaaf12d04acbf31ff52af5e2799280d6927ad8962dc7d6a941024253c596d8301e35e038022ea8fcac1db3a7d608c7d2fcc95dc6f2d51c8e222033a9be8c41030e22204d292d8bba3c038e21586ebff992c7955a140e21a45adc8e9ffe9fb7c51104b4d8ec69f58aa7ff70d7022f7d3ff7ceeca205c253b52b5d7ab7f30567817457fa4dc7c7bcc83394c8229532ca8f9b5447712c9059cefffb9f594dd77a871258a0a56aa593eb9cb77e5f8152c26373de4925b532b902a5e5bb320b6ea799de56205e0e77f1c15b375456203f7d309939b78b3aa8ab408fa6275d7d97b4b6540523eb2fc5e6659e7c5281cc9974bde8b91d5e1431547eac1d4a508176939fba64bccdc1950fe3d4a1e414c8a83b7d0eaa54c7545a4c81cef679498ba7cd37794a814cad656f920f9a25654881709d546fcc9a749bee72144b72dea63eb731e52c0abf84e6a8a3693f1333148bd53a279de37a5ef58002bd7fff9234e592b2878778a7f2292b1e028b43c927b4956275f23df5274fa0eba47659f09c6bdc559d40cbaeba46d3be61b32827501b57eba4649d0b5fcd2610e2a9d5cb6e8a170f6a022d36798967cf2da6f3101eaba0241328d7a2ca2c56e8d6df9840b8a0a5d13f3d66f19d1fbfc2e782924b2047f5a61397a50e4dba00c1ed104a2c81fcd6d9537a32d7d2b1a02c6625905ac8dac64f2b473c9f9440994e2d9d7e1dfe556736944c0225cb5eca5ddbecc96427e5502209649694cba6edf41c0974942d9eca54e54fcae3078f2f81045ad897732a31616bf692b2779ec70f1ebf258f40ba695107cf2cb32c2b61ca9efea203072d861247a04fb57b16fcb35bceea56a3a411e8a4c39f8caee57f49bbc70c258c40d6ce9e4bf265542b2b2b942c02392e7ffe122a7b32c74a14811ed772a7d5616237df44204793523275cd6a1d23184a1081ee2cc678bae674dbcb1f02e5f2abe75f2d6a36fd0d81cea2ebe6e9ec0b819663945987b7934f5a0b21d06ab3f253eedf415dd220d0e2f94b32ef6afd8bba20d0b2ac56a6976707022dbf98a95f6c71b33a0604c265b1bfef54cfbf96fd034ace2b2da5e1fa0199a5fb55b7aa37e29b3e207ed5b99d7e41309cc7094c72301f90c2a5b70ff3fc5ac6670f0873b5596796759693eb01397ae2793d67a3965d2579406738bda7a547979ea9d7a1d2c502868e941c4a46091e902df8cba7748beb3f2d7e5128b90372e3e494fcf8e559b3d228b103327e70531d5c8b5ada53520764b9727ba5524f07d4c68fdaa7a7340774964947318f7d9ac5960352bb5fa96ffe2c4b33c701293695e9e0727af817030774d78ba3f1a57d79269b42c91bd02de7e0e3d279fe7161943b444694b801a126d793bf2cda6d682130c9610202931cc82487c90772b4012d46a54a87d75a73c35dc206e47ede678cb36ad23d932eb62859035a563dd7a7bac4ab7abf503db658b9324ad480fa2c834761ee39e5c7d1cca1240da8cfb259c7974ffb337972a22568e0ce7b33f98688652839035ad6f35e5d5d8ec2c327275d28310332eb6607d3194ce6a00f576981114aca80ec7c9e35361a6dcc44a3840c88efcef9a4cc4ddd7e780cc88e2f3dbfc48b79e7c50eab502206d49e4b1b4d6f38f15b8501bd19734b5b7cdf9bb5040cc81977157bab74d6b5be80562e8cea10532edba15cd04528f1025268d22dd7ee942de9025a4ef19b9e33b3c7b55c40d9b9f0723c665c95e927946c01996173dccc358691bf0d84ff8fed86edd93bbd174ad840777ecd1693daeeec15164ad6406c0c2f271536a73ec3256a20dee56717836e52f26595a0440b88795397f5aadf9379d42c20b330f24a5cd4f7feb258404b55dd1eeef38cb9ab4aae801abbf7e42e755eaf3c65efe0a0240d74eb66113f2dcb28c434680594cf6779b85861e7da1f2568203f884be1d2b5fa8607a24ac919c8702d6937293d3d9932654f77281d188f1233502a5c50194fb6d67da55c28a9c279d38b9ee9af36a7023a47fdb6f5963a4dbd52f67cf4f8b16274e0164aa680ccb16aa3a88bab3d355c69a3a40ca4e91685bdbfcba21d93b2e7050f1d6c5f28910232bf276576e6a729e5a3f2c3470919779223288942091490a1aa9594cdad16943ce14e6050e2843ba77a50d31c357c67782fb13f73f31c1b17c6733e7c879d4a8f2e6902d2e5a4e15f8e4d4afc65c25032069630012d6fabd65a6e7155ef4ad943e1d16309c87579fb4b7b97d2f9e8a1f281354a94802ea92f54c96c592849024ae7bc39785e554ab8b0184f8246027263dd53c46fe3c6a825941c019d376ab8f4ce1b01d9f3497d6c61b36d8b292902529d9ce6957a4504b4d4d2aacce129d6644ca9503204649693cea7149f5cb99210503266593653eab5b9b019a32408c8ce2acf736f4cf659670924b5406631d3b294f63a5b7e5a20b58c4a632cbbfbf977166871ae4d86a77dcd9843220b74b9ce9fca35ab4661228905b2568ebada5cd1d00f9641020b94bc1df9a8b576342fbd0279e667b341547eccda15679ab62c33beb415c88e32b9a09d95543e3f2b50fa73fbb2a3291d345e05daa5ed8d27d73fed8e2a904aeaece49f35beb6970af498696d415dcbfc9e91a0c284e4140e20314505484a81a2c34707b8780009295ef1e8c1009251388044142b62fc17102009850e1f1d8000092894e41326249ec041d2094e28806413280520d144054832c124985874a0fcf81504905c62e575e8f0d181069058820124952000092526f18347183d54014824f1a3470f951b2491f8f12b283a7c74c00024903000c92352563c2502248e900049234818b10092458891501481b2920844f458092039c4ca0f1e8f8337040aca05480ac10012420c82022482980049202a4002880790fc6105a501247e5851e9f163a547080e40d207141d3e3aa0f25fa8f468010448f8e08517de850548f6b0a287950790e441012478405900c91d4a48ec5000923a7ca17a80917090d02184640ec8ff684253292d5bbc9f440ec813e79d76ce1507747e496aa70b0e681dc6c52d4d9936b9a437207579eb9865932fef9edc80cc7c52f39a49f958f236a05bcbf82b3dc971a5673620734fbe86c6790d88d3f8549fea339bfd6a40c6cb82e620a73420b378f2c9f379d2f41c34a0a5cdbe4c612e933ecf80ec7139de7756275ba866402a975b5c25bf4c976dca804cab762b6596aee53c3220c46597fd74ac7097ae31244bde7e6240696eed2f9707cf59e7c380d68da5b6fcf4a8582d6040af0cd35ef2ee3bc62c5f408b3d573ab6109332b3ac3a88f9298eb0a894f1a52251200c0682a1208a6118989a4700f3120000101416140663d1703832d4a67b1480044f30305636381e2a221a0cc7e2d040100a8502c170200c088401a11808c34090e768ccd60700c72069b044958751ab0ceb036d79b23f65ab1410d6178834c5f91b0a8b39d1f55aca458ea39813257e8d3726ec45999c7cfb589971d1bc029208337f73c06021c464424153ab40822d5fd25d0c58e397c6b7646849b77f407a2fa963c15362e336a05664126c5f5b28876beaaa16d7d3e4d24a80f550941d69aece43753cb624324b203a838ae074b196a6e0b231624cdfca9913058fe6a8ae6759d190b5597d4a4acbc8043ae0b462a0f281fec1d20a390001810d33639c1ca0897fc965237f7f443916b4adbede06226cd368f9534bca7b48ef44e9d2e44aa25b9fc5a54c2231e4c94c4e8a63d4d00ae589345718c867b4255a62925d43ea9b75335e1f40b93729a1570266d1a4ac309a549ade3225e89234e4fba27ac2273c719bb5ea74fb5ea2bc5750a0579efcf02dc245b2533472082e94e803fa07c3e5cf592be58ee7b851895b7743825ca29301d6dd67c45b9e4d8f2cfab14a5bb61490e2c8a600a968b74375adf888f98611b7c4139ca58326f91531caab04daefd008663ab55eb5f11ae7a9d2b71850888dca54ad3520ac08218e3a0a9d85c15330535ecd928da5a186e918aabfc0a1548886f282eb068148b2024c21bd4577eb279411741c46083e885662a8a8e68a7581beb057e4190853257c983d8d539632b07f7f2d40c7d161839ca04dcb48e09384dfbbc3d691995d4facd8098d8c070039b6077b94b816c97393f900551b4f80800a47a79f7af9a69d5a86f9ae7771406fbaf7fec16cfdd7ef7f02a3ef8fe30ab717ae70e3b081c05e5ea0a1e815e5a3bc82be622c6aebf69cd9f51ea32be6860840f04674267b6140305af441a01f33441f4258527cee0f31ee28dc9a7184a1bdae4b5c20580bc461812d7bde3715b22ee6780fbbd9976943778029261b7c3876d42aca527abc2b32223c34212f19ed303ef6165ccdee09c2a083d1ec9cc483a9ab3f5a11a7a716061891cce81f1fedde945c4d5d191ee717fd6291e73f1537aab07054f96a19a1e9a2137fe31a70a3e1f0aabbdc68928589fd30e7cb04ffc289ae067c75a1429c6850f75dc84c509296efb10e4e934162a70e81704af22dc5accf1386797976266bada5d5015469b56e569542cccb9839311c8261d7ab135f2b062ba7d771677d61517a02e0066b99013e449311281c9192d117188371de66a38ba164254c14aa8039a4d54aad72b21ade152d40888ef7f8e875c869fd6dd96dd436f22bb07d50fe31d07e8341dedd903c66294d0716bdc24400bca8a426c597c4ba4b960c4258ee6b55c0b55ea1497aea13a1f03d78615e128563ea8a57e0c5f5a910744b5829a825f27944864bbea9c81992640dc2d6029de6c539a3082bc574089193893df70476b536ac0f4a5f9c0049f130e4b422b54d2b39dc624cd7469e0d5ff1e90dbd44763a7c4644cc8974e2b715f23ca358bb1c200516021632ea91324b125a8f35a37e4c01d58b5175262bfe1904c3e22a2c2f1870e27800ee5af760c424db5b3043748d436a29aeadcdfa81f0d18f06d293cec9b03fd8b951752b25efa400bc07ecd5757f30c81d14ac4e93c4ca8040c3d6c3dc122d8519cbf8f3ccdc7c9f8d4284813fcd4caddc252b21216644752c08205610b0c0504ab94fcef3bb25d46cce6fd47921ac101ae2957023a4f6efc729411045486edeb283bdef16142474c7c95634f21c7435d1814e82ea58da4e5039a0293d60d82c60f2a84e42a82c238238debe85169943300e08282aaf708218a8f87f93c2d4f895706404d1ca7fbcb90571cc64fcbbdc0c68e59919021d68d6703388c30a3c13e36f892a0f6aed6f41e22a5ef141a23deeb0bf72e71882113e6f0867a25250450ec2d6103421900009ce2eab6874b2115e457853106a205c193e4384bd1381439a03bd37eb23f711e4b7e682ddcbbf8f6abcc6f77394778b12ff68de318e1c5312ca7234f8ba28bfac62f30d5b1a31e158e03c058ef993613978e2c32e0e2aef5517affd0034b4e8850ea10b14d72baf7126b1803d6d52eb793c332083474998c38030ecc152c62f717f1a109e203649e49f0d5b156220f0f5707f800a8dbc09d527eadb1a590e20e165983a5e0b239cf96ae5182a84fd10ce45a81204ce4e7c16132656bb0a04a73e3c3652381013e9055199da1d9ec941ad0b240cc10d06119905685302a3b4824a005e2210243bd1e2301bf6bd1953b8658851e5839284dffdf03ebd25d3d73e38750ea4f2d8a59e0b02ade1bbb939e98d4d45a88766e7c0cca08862f1b33a7e75c16d5b2a0cca9c4b0f0732d4fc10c76c1f727fa30d636ee4d1c7c6bbd8ceaf8f9389aef38c308481cfc86672d226fb9677c6c44d1317f702e60646db4c00f17b54ba42bcaef4d680f192fcd3d2a0621ec68dc0925cbc23e3cee036ebd448e64deae3fa87b1be6d439fa4aedbd8bb89d381f09cbd9361ca15443772430ff00c12dbf27d96cadab6e11cbecb1529d3e52df73f0e06824cd55520741fb4e13b166065d460c635aa962dd0f5319586b2dbd2691ba4cc495e0f5005985623ba161b18cd8c01a8719e0e40aedc39f9369894ade21e6b1c552f94cc8e9542a164b0360810a11f0f5457d880ccf39caf973ed4d410408548a34281640412c794e24a165423b704cca728883883f1bd8a9728a106bdfefb3e83f2b1329276c6de85517c3b10633b44eb233a2c98c7f452e0214485ee93d20fdab2d68fd978d3f2957d82460181080dd679705e38fbdc84905146108b1292351f4bc913b7c37bb09b6febc13effb7d9cb2608c9ade754e865ca30c6194cb03f8a4e39c82909964c8e4b43b33646d14ecc51cfe0b5e47e807f629e354ae77f41e0778a6feb83df822c0bf0ccc9cc423768b63e8e09e8c7de47fc27a5c8228969ce750eb676e8eb7244c5241e33e861a82d839f814af07a2b478fb923492388f1ca8d7daa413f351a8ba0eb50285895cff9606dd88d3138c95fa454f4c433074e9a7871d18106962ccade1a8d3013ba8c544f0c7ab248559c058c25963c56ad598d32ad71c57a2b5e450d2e715ba277c94be72daf32738dbfb9574714abeb9d4d50347b67c54c7c9c53fc5b6433573eb067618be070c4189224ce9c56597e703c6b4139329999503c176e9fae247fccf742932303ecad573d565612cc15c5098e5b59a45df1bf91d9609119b5062e3aa66eb99afaa89f023db2b3dc486942367d4848edccfe6b9f44ebb7486d1f26ac80a185dc0c069a30eb56b2a3cb1f1b5cb8a0a58f4fc29f10ff19c13decf510f1a5aee17be6e7c1d39e20c5764e3db0f94406150d01aa6942dc3a16785cc3453e06061f2bb2a8d653da8629c72e2b0bc04293167422b3be70eba8eb4c7734d33d836da05467454220d604923b5bacd9213db0cd09b0a84e983766742c59405f19555f777d4d8c02db285a85f0e04c0300e09bc2294aa2ed6ad394e04b4352a1f312a95dd73a431cd03adc29af0daf8bc1cd9eec64d7bd1247d8137e54da156a77545368aa97775445c51e05b4217cb727438a68bfe0ab7bc0d0f29bc513ebd07ad108e9f08f29f75de452097f5c9b51e46ab525b9beb2130708700ae963248146f45341492bf32def0a6f014bedc290671fe3d5f97163acb15612245f73809ce2c0ec1ee7a766af82ad264e6da8436a76b2e2d40c9d10bab4278518688434b3700c1d7c06820c62d0059481854d3d17ba3cc6c0ffdab6e930d011e7a088d887d162b28ca606f499103b8e463be1ec39362153c3e662369740fbc6f40d659d372437a1a849fa67e355d800b166cb17e8ba0ad10dd3af52273cc233528452c560d0d18eaac59a8784fc9472eb4804f9ab90b67c044bec090d212a4acc202e2826239c3c919698523b379150c12b547b12390b7bc51457319a65b7a8c4708b7408051563794548a9b403374dbd2791959b9d508280e58181beb15946d4c0a0bd44942cfb2cfabbc040ffddb27427f4dab86f3441495b7f9c32edaf50268785061ab5df02061df0008e4d93fb0452693bcad1e6edcdd620da3a0da211c34e1344a0ee10fc5cd6befd059afecda791422990bf40af6e599db85fa0a7bdd905131d8960d6a508389820f68a7a47349ce38a01a60d4bf8d4836250bdd068ff10ecb42e50c8f4439398355d80660c70e9e9d61c8bc1da90d254dbb205c314a1aa2588913ba73e68d72a97a70d930ca1ace857ef8dc8a706548f5df8ec12152d96d0acca4cbb233fd2172e24ce24a0410898df0129b84e21038135520d7985a4dedb7143ba23f74e048cf6d4503856ce51b24af90aa9ed082f53a4db1c2444f99c52d4ec4156068137827d02a7426040652a2b06127e115828ac1676c7905d627b56f1f406f0c525157c267e9143deadc344711a52f8ecadcf6085d784413a646f011e51d4c3ce44990ca24ee4ee325034776a27d1594f97a85fdb2817e06662418681ceec03c106c36cc5abfbb863a316e3e3158cf282f38f99d9d49f666c5e0dcfcf63558d66503f739b7feea1445ff2308130f5396fa3e1a3239b47dc63f0173600aaf5d88ed656d53faef5478beba30194196fa342245c25e3b8a21a725bb7a205698c22eb171e209c5d407a15875a391e62964ed030eb1c5e3c8b1fa446be1bf5bd8f052a7ebf664142b9b3482eaa0d628e90e585c8314325beafd223e1878e46f4a40a458e0d0d23b117629fd09042e314ca4f84e28d350627592c1aea247223faebd02688f273082a4439307416518b843c77883b15756c111488721fff22aa80917d0e1186280e42780a65329453e378cfa4e5452548559e64bd1dc999a89ea1dc26ddd4595a5e774788de3e9d0a4e998b04bd28a718ba4389d4f1cdadb165407279268708df5431f4265d58a65645c5d76003729e2f9de93a19e6ec8581164cec1a5d21a8404f8f9be1029dc748e5a39cfaff662b41b9a0db4104749efe9081395d06dc6872d5d4753be7322db868ae0a3f477b29c8522479c27302182556ce28a35903c0f24035976d49e3608995cd0d756ffba19ae5a6837bf9256711e05555b073856f9d8cea206a08b40ef5e8b614e968b2c9da1a77e732b5940a1e3adceb49267a16e2a502bdd43fb056f7026c85d069d435a32ae73643341f959d437dfdd221b433b8536ca436c861df5c76d918a5077b32d65b3bdb219c29f13a4a0745a1bb7e184490abc522bb94f78a436b6caad074a87740f8317a217792d3833a5d4f70a611e87f18809fb2a49968da37c6202005f34a18529774beb177434ab60e9861f00897b1ad12ef8dd1ebfc946a9f2773064444d0cc02992f5322be1bb12c7b62ed35bd4b5421be24f93a4eb650d583cf85226ba02eba2fb7f2315d18afe335a0e807da35928d6fb01b6fe1636c785fd440af8f969783fe179b941a43e8239a4e18c5ba85a61bccceff2f769683d7e0db02e7de0938dd02247d5b024e0ed53b0ba001730fcc76f753bb5bf95cea6ed21b59b00599039a76c4a8c2aa5ed6489532ea51911aa4806e92e56bf37573d7f3af3e8f39407920998c19ee8c800cbd444c08cd1d51a0a79e0de5bfbb6f353ade79e95cc17600882f2d2713dc4b4f0d0118624b1cbcc60002f41e74b946b24f7bb1d6848d4d522c66eee7e1c53194c101b076e4ee4fa5fb1d18df93500f56edf28ea23ea1d2fee2a136aac02a6c1f8dc7a912fdc068a99acab6280b19639d18a441ec0dbe33d8d569545ae35fb24f7a993dd2bd54110ea02f6964169d10f608ae45f6b45c5c1f4877808c7d8dca71cecc3f7ae128a1d0f38c890ee3ee61730372516df1b439895420070f04d6f08670bc57fb807183bc3bb8148c7d55f42ca52c623c1437d5cc7581053f49b1e057aaf659fa2b8d0689b17f44e3c219416829e197e78f165cc01cc4c1a30112616a2b94fda14969f8142f6d4946216aefff6ed0666076cac5811dd68e7888452a5b02e516669429cbf1c6016993b95cc363022b0eac45b3bc1c2c498b18d3b2b8dba8d56774912afd263d924dff6333047e26411fdd587f83d1730c9f5c046351c6a278d0f2a12bd1712934e7130fcc1031bda6ae427b03b58dd20c9431402c40b293d21347a6168b01fa1d7a07ad63492b0c97afe245831d655cf181f1043ec72bf4c38bd7ff9aa8d0efa3df2dcae8fef5d8804f47382058506e068ad70f713f70a90c9a1af0028847f17a14e05f60a78236dc72ae9b38ea6ee23bea6552d7e00cbd5ada5455c6087b0d3754e6218853458cab44eea51e3efbe698f077b12be0784a0e8a80d4217d04be595c01efa54189a027152e1c247eeb757c84d84c472f96c3fda9675d9c233580878a8fd752953bbc90a0760c7412bf9355fa419b9b0ae8b382d778b86201c80938a1bc61598ec75ad29365955dd6725998fb1b701dcf64f2732259de0a17cb241f16710faa133d24c7f882df183299f9ddb13d3f2f4f66062aa7939b1dd315d9a6bef867e1f306acc2e26cb7c4161513e0c85601f48d3dd174a6afc250390471fd744399400875d427f0b27e71057a66ac6ee0f8822184dd032d488f16504fbd3044650786beeb0ba7776418710d8d32a299f67424ea16c718097476a8bab366ef956a4365b634857ce2e3e1ee157e45d75258e49e1153a45c7075648df889e0ceeae19b9b16055a65ccdd605390c7e3419a58be873419f9a6ce9ccbc19beba5acadf12ae14a4a805567d0f3b77d211e3692617e0cc964802a00f9c478abf71ca3f7841c95eeb5dc99f71493f9e54519cfed0c2ad65cbf18735dd394793f69a236a4c3ee42d5132d8a987f04428fa2dc701694f8c84b4cf4d3f73967be0b0d828010d9ea5a27da00c75e17dd9b42d24b566a941be506ece3fc69299331cc4a324e4e181738e9e2a077cf5e21c21dc6daa537ba4bef48be15306da9e864b2f57657414dd992109a32fb729ed30be71dc40274fec1231f773062eeda30d693d4d811f20816d88364c3e94a7197bc3c842bce1f1f5cc361c2134fe6d826ca7e951e691ba1701719f7d9d36fdac8f35acb1aece78b74b4f77fdc5196523a5d810682b1e9f13623ea72f1c0493e2ec96e39b4b953fa676e8565416161632517ddf7795b4de8fe71170874d59af2d90fea252662db8a9d7b66407c1b48a461a56ccca49dba9c82432f9aa612abfe42c848626e4d4c91dbe7fa1b6a533cba7232ef5f7a00cf3c0defb76dce859ca2ee8d6b96344e8958fa3a59a7a3861a6bc40e42693a0514bb2db68ce20e7c03dc1cdc97aad7231a5f32fc7acce59d6f40848466c7725a451a19c1324b8299fbdf961ffcd42da5dca93c320451e9c70f6b9c97d5dab5f3a5a53324ac45d8626527d6d623eb6bb707c649783291a482ae2720ec03b79dc78eb7da60ea399b69e5879484061c231b6f11d2688f92d8149c63d8137b2e0d89368e39554bfe34754fa2b7fbf40aca09b437b4518df6db0a91f0c0e3e864106720b84a25f9860d73ef8602b10797077c7cb292d2d99c31ac17ba2233709dd9a9566bfb90b1eeaae3cb725c958558c2b640d40d3d64e1fdeee279e83e5e2e419ee684ace273d49831a51a4ea334525f605a83a16b2b25916cd52a8e23babed4b12023b361545ea6b12cc282c08cd895a2998e1ec10ab6505273674094e1edcfe4506fc9746d851bee497c4d1f7de43d1b15cbac9756089435a14325f49227f3d6f2780d37ea587096d0dab20b0320fed5fd578334cabec77af5582d9a68047917a8052bb7ddd8bdd2ec4405365641a20a391e31f3c8ae95211b014c7217fbf9aefd1c2a9adc70fcaa60d8be887141562664afe366a19dba49d99475b2d4113d53f6816a1808301284c807f24c84073dbf6c5f0a7c64b90b4e157a5e44a054958b5e73f9d92d9dc91650742185cfc9ad15230a055c094f4d7075e19d774f0b4726ba6078aa652187f63dc20dfa385902b4112375db6e30ca2ddc28881ebf8cca84c855df62f7448e0b51a1af82ab5d60509255a317499d31c3523fafdb549cb5948a4d0c57504070ab7fe07052fad0da47409ef0db87d6765a21ef47e9e45f69c0f617806ff3931b4071c7721c8d42fa9dc4b53d8ea3945301f8f0c1655eef80d50347bd594f3ea39e159cdb111622bfb8400d17ef1216e7dc49dfe641f0967feeaf742408aade765092e8d694c3530f9b07bd8b331fa8516431d01c091bbc8e97f5a2458d1c83892bf1d6bb0495f002dd73c4ac21efa2ea4d76b10f4005bf6fc446951049d98e6faa43452e86cbcfc80d7f8ab1128874f8a348eb40fc38bd244dd85ea0e574c0c7bc1d6a4ed2c8785e1fce6bf225217c5cf14987e2a37d27dc1423b355ab796a0726706b9e4ee81c82501a98c5fb53952f8bc893d798c401558852c51c3629b0454ac142718c0caf21721330261920e4958f0df414ba158839772d2056d52773c5b20a2e9010bf01cb69de302250455ad82097973e61a0026d103fd39c4450ca5ac9467b88c2b24aaa9b4890a1c5a8800131ce156302816c335033b2c795c0e4f5845be2c82a4c8d5e8850bb8bce3b198f9554e242b337f218df563de9926d7242f45da5c2383c6625861a64aa4a2cbb10320338c42654c006c4de83099e516df9be5ea2e000f7cded438068407f0006ad08b9b1a5fb09c8ab1ff4a2f1c6b42427efa4fb21664b3a7a43782a2d6c12cb4e987e13659c82f2e31eb4728497d36de9a95a27dc70ec023dcd14dd71dd8aa41eb1aa77c88f69b603d110c035f0197bfa2129d201f52274990fb42d13a21f01b1ba8154f187a5a13388951fc88b4ccdc7485c894a16f6bba50b7e9c2d1e05379a57278786f3bda79230615546bbf6e28738992bd5cc00a513b78b41ec35638722b77fdcd506ecd85056686bc1c6c126b4795e99802472aaedaa514e9d84712c13535050254761a9d7b94aada965d302a31209fae0fc2230ed76995f05e21ed26e47d77c2a49db611afcfe236c522a3bf8388ac4ca293ea319452019815346fa559f4e3c52e87c5fe6f220ccc4b4e1828f5bbe4a710844e630d7cc642229b8cc334c29781db8f3dc61422e416d054f79cb4e05a88db1e68eff863e00868b0b056d86afc83dfb640ac311e94016b7996eb17dcf103d2724ae92736fc1fbea9faf685cf3474fc2e142bef35347b74a3ea126e8c4c82eef7333abed61f1fe3aa35a61ec14bc8ac55dc79531c13076bc81a24638f1bb4ab4863d0fba58d4ce27fe0f09c0fa22520a408b5c4badf9780df47d1ad7cba3cfe12b7611839adfc3d6f055987b6bbac009221e741ed1294d8b8c9a9a618d24c16b7b27819fd81ecf7d61498a17a7140745853d5b910955253336394cd3ef00c139e55b580a0df924f61f8d709d2f581fbcf1ea818c3eb7009f997291dd90902e6173b1924e6a7a82a0c13871667e4baa67da373ad05a4469861332a7388888db1c0748afeb46da6b9cede72f0168cbde88120acfa542823744d889ba1cca4ac5b38728d432ddf04b3c19976503a0528969385128fc8ae906cfa09a3fffa9f8c3bda653bbce9447fb7928e33a876b0659836b68e297e28f59413909c93f41814f010cf0fdc9f7e4346bc805be9f7845c0fac0f65c30d4aa094f3479ac34e1605bba38fceb0564a34828ee49a03c9a506878ef802784a39cb9b1cf16e0de9e15e9792bf3c0c5c4d8431f3ff75f9d87c6137ae5a29247aae03aec834511a492344d34778b562282384dd96cfcc22afafc7dc8085aeed046a0d1be11a60c76c4064135614681de18686073f6fbfefc6f0b59682922856b7af11aed7ad6cdb0c4ba0751e698969ffced0e5c39cff4dc8a9a3a3d7021debfc95fcfc29e03bb2f242e6c31e550c4b6f1b3ad4e52c6052e96fd60310e9b8f04139f2bb9967e9c6ce30bc6f0461360a22fddd631895d662cf9ef70e14b24902b9f09308b68ed4f15dc52264d227b6a2fd418105e76af698981faca2c4cbb8f295c744519f8b0e87be400d67860f8f7c147055dda045828d0ad0d145b0c5e66ee00c704a4c84066e6d72d8374dcca3b1c3d06249bfef47b94be0ff0a8633b15e2ade46b2378ccc3d5feb4e1faafaf02830c08743b22956fb7f5bb01a1423ff8b8f2236348e8af35d51564b7bb11791caeb99fba9714fee122bbeb4b1385b8d4d4c37101674dcb87f7a9c4be5e4568b8b3c6c4b62285c8a2f02ea86a2281c9d91a9447890e9f0da9a93a00a2c934ea410959a0c09147ee4b22357f62e5ae3045c7ebf9a7c232134e26ae8896733fd94c5049e3194d8920296762337464183293edb87fd648e469bea976f464b838347444fcb404dd50f59cc5fa284cba1780d0f84f011ad7e00eabb990c3a65898d986c9459cdedc56c4cd08d4ddd829777d0cd0b1a27f30ca8a0b66c637f1e8e56b1d1a0b8f0fb3e55d32ba92277d81956dba34a6659c4f76451403cb981e6133dd6b20ed5404680c78cf70633c1954486639aeb3413bd06317ba90f95a1b1b087e6c5feb69fd06939d440ad08416f118e5aee7c072930aa6bb6327b222dbbb0bb73370cfc9430988d5da33cb877b75bf1689a3420feb711511e4c98893006145406a943d042052e3014aecae4be270715f87ef82a136a47b59bb0d4828ce7aedbd45d3ac8e2314c4f2001193f6116ab83ac0a18cf85b16fb0c070bd3c514676031317b01647368cd18f64f427a40a2fef4c76892201f0a55bc921c150cb9d775b0b25dffb162df25a1e3abc389255bc49f5cb300dab2275a234bf4453d1316aafe7fc2d8a2ee811c0e53820fd808f7f4194da13fea7aa5bafa560b503d123446fa0a546d98498c5f41c65bd69a9edcface6161a5fd45f212d12eb42d741dc95cf95180c91643ae2baf9155252a866c7b63dbe325460beb116da970f180b05e184807e74786ebe580928c72d3203e60ccecf053bda8ec446d7c567e1afe8868fdf630c08a5567e2fcf6b4fcf60149abea0e9d1c5271479b0bcaa018956a0c7dcad09c8aadadd6a13ec7294aff8d844dc02469ba26b0d7a90c16274922242e0e3cb3929c6e30267176042e0dc797b27c748fc2d2dd4d3c9f269cf823dbf51e4bc06913398256fa25a2c34e0020240210dc166e2d4ab34ea2f9ddc85ad5cd67280f44077fd581dd14e42418a4ab5a846981ccb58da5a52dea69556b773ee111f8a4b6049c25d2f2999b9d434ed42c582c2c36bc3a25fd351c03de12c1ad1c9a917e311e057a72a0873137cec9dc1a1c55deb8d3274a5e63d815c595e74d1d2a11aa75bc04a2b1293c9f727ebb100f286de65df16394e5a3a845511fbd098c107c3632775ae1202218046def984bf297574e33683a3559ef4b5669b8a4188a22721296245b4aa7fadf3cf9ed6730f8f558b7591c05bba4c11d37fc759ee4981b3244f2f4d0c4ee24afa8dbdf649948c566aecccf2a9aa465a295159defdbdfb427cd580c392a3d3ad4c748be187510716fc59fe5e1f811bc4285c8615c84d34bc87706b7a28006ef0609da2740bf80810d54b1d68929556363e27807a4cb8cca284a702e8ec60ac724692c5b639660335239ce73794ef9003e9eeded4b10205046198e618b90c80c8df65726dba2deaade5410575eef86083cb25bea4819e30e04ce9f71874d28fbff6146eece46230f026e5a9a9f6b09a9f4057269b91c5d3315d54297c23d71619bcff975eab6fa7bb0111577a8b8a0efae34b099f24ed7f4d19c2f75568246b02d904c432c0b81b61815998721a6f7c56fcc9fb8ad4d04ede0e526f38a3dfa6502877a6d3a53482d9d7d045554c70d959e32000d236ca93a33360015b1223aab6a271342c173174515bf280f8ddd37722fd2697a2a61b19b8b3f0a0605386da62836aefd7bc527763cd2958237bd9607d7bf3dbb514cb4d6ad2be59376d1c1452ebc87351f2071960d99e9708357593d05fad2a154f65e8d169dcfb1894351d38f2a3bf596adf7b3f1527993d41ec25424a9a7b05c482b39e9e66197d68920d97cc76d3d80a3c13fe0a0e492890ff1e412dd320ea8d63467124204c972fe9b831258ab2280dbe9ab58896699d029caa188c7b6ab1dffafa8cbba0299f031bbb41145c305468468165e5db7ebf110803081935bf7d0d4c48b08db29b0bd1e320a8732e7f346cf78ec69932f5bf02d0ad8cca922562962642a8855dbd5b2ee478161d56065b28e4e46d8464a107f92e457b710efdbc44f82a5374db02f6c098e7bd6355028a56eb04b1f65e30aaef2ad811e46150b6c935d5afa5592ec5cfe4aa9037716b0c7781e3636e01c151152b74ee5285f2ab9e122179b5904fb7db5caf09ec1a09cf5d398b90d1eeb31f0cbccde3b1ffc53a282fefb4dbcc76341aaf30a3b4ad46b6d1c9e5d5bf582c69993c795cc11583220b8cc148355a4eaf5557479c09c0461943d0ecf522bc45c83909f9829272ce279d4a5f49abb2a88070c915e58906069cf5673ae7d80812c0ea44c71bc7d05be66d46460abf5fe5ccfaebe01936d026d129a394938a81af4a964b3732ac4d02199309dce0e50482788e9883610a25fc8d25755bc471eccd95cb414598e51b562997262ad1bb3ee651807f0501f62992c962318806dae1e72e9aaf8d3c91032a3694e11959ead24b2742cbc69acb3d0806ca7c0bd450f61ff4a13b20eda0cd266a6b87cd7659e1a20ac3395de9a76c9f9519c2ed5808b3b102c756abfd2c8bac99a6c1a6575285205a80e955e6d6527861cc3909112691957f5f18c521e7fbb75c97688b207a962bbff8eca19f30e0f20732b00e25fcd5cf84dfa06349802baa6dbb076c0706f5c2892a1d2ba02d33fdbd417f8d6cc1e90a8aeaa3836fe82955747e5255c956fc654ba1faaea07c4335c10eca438b2986972c7abaec2db089a7c2928fe51d803206723841564c4e1408c12f47977b82e39d1e6c468b835e5224184055e0ea0c30a7e863b548638666f911c70de839d841d63c640afb9be7f7b76ecd6607f5389c885e30aa029d349d39b382d418059d7b3c38b090138e607b819ab970c33bd6099edbe047a07b7d6e6a88607a625c796ccf29c194f4180422f73c8ef641084d7ce3551e71bd0bad56b3bd26b6c08ed704adf196a51ff60fe361f2eeebbe1e2af0644cd29e399103dfa12d844aad238754f4a7221a354ca73443a49e02003aacd8cc0f4a3345256235e8b667e5f0cca3463e29f6a483a561f94adb071dfe0ff8ada8829a91618643629845f0b2a3e68780db7a3db023965362690b5458fc250cf2ea2b908c806423ce87a269aebf172348f4ce8492a54656f56cd13440e3d4006ea95bd1ac19350f03894c60eb898c68450e37c667a2088966a50004e19a8764e5da1b4fd19badc29041e58a736c106b5144018139dbccb17ff486167605ea12615c682b0fb59a6f3bf1f49f1352d35fa0b66ab3d760ae61b306d7bac221cbf30b41ddd1347da8bb9e6d692f598bafb65e7ea3147510f2a3d42d6cee2ba54ad36ef60a0d502873ec4497209f19c050d921caa46dc4b13845b490036cc41d314915867bd8651f5017c37817fbd749c197b628e9e7f334256221eb72c6aa0cc6f9558f93de858195d0058e25a0e50f9b952fe538aa3fd96442a9a08534b9bc6435ca2e3a5246c87d8292edffc1683329068b7499ed34db82d059e1772b794ae016f5848325012f676a10d1165475d16f9c28b2822c41dee1111c4eb4907a32b66050b150675f56830041335d75a0e23217d8ad138317838c0e8c4a392176d618b906f6ee681a2c1f51044c143c44ac6e943ffe6cca8a187685cca9c039743ce962f6826a6b6dd409405d1506664eb50571193cb248d022fa001182a67094af3635f2ced60d93c4bfa3959fe621bd42cf07a0d15a557895c6ef61f43254eb060109dffbb2bf0619f016f76e3e42b377b4ae0d19af53d317bf25a5f93858c0a2c669a16f91b4bed0505fad6807eba36d7d4587cb3f901d3bf4fea3a7648fc824196a385eaa4bf3246a83f3a35895f95f1ed1fc2ee0b2543feb24baa3fde0196a7afc6a8c4fa72bc5a3b9748ab28e4b400a5a31f4dd95fe576b8a33d7c594acf48f171181a1503200a7b5e1fbe0ab10a1f5f0cf20995a67c13d8b0871293adf4303a8e380c136c2e997578b67605c9227d5f2b2ad29fc6c46fb3aa64784e7e0b5e6f9709f049c0e8dcc9ae08c73674bddea5406004d146c215eb5265bb180d44351a2bd0fd8cbe6b802951f5cb27a0426a816af4fd6375414ccfe8fb25c887ad7a2a58a5d094e78a1009c43f3295bdc35d340b3eb4d69c01027e7a9754362fb51ce3a6afde2e90119f1489e493b84c513ab28e035a974993b0f7c8aa575c0db9ee3bf4973a7a6b8d319d0c16dd79f0de42be4d5c4fc3342cd59b00967ab5903be0d4c3514bd219009e44346e25fc1c8be3e9038d4f44e72fc5d99acbe7dc87a648f4e5e87493ca9e1115b2ce0c5e9d4cf23614ce66b6a534390cdcbccb29e23fcf634db937d9cffbf86353362a5d6758df47d429515687b61d30623f73aec9555c8e5f9edd1f3431000a8bb57696c6e60a757b922f68e246311760f92c03a11880e10c97b92cc7298e231cca7892a5316204dc18beabbe303960c43fc0a446c41e64fcecdc3b3222c506ad5f35254dc8491a9dcb63690ffd8647c145bf54c0a4dd8a80dd3fc6ffa82e8ba97c9a9657178eeb9526d6bf97272e4f7a70114a870534c27adc4ba043849645aa5353ce3e9f082d51cf8b420413c203bfdc021bad4e974d9ec79fd1576c3cd2b5507de6a55e29f1be9005731557e6603480a824063fb7b5fb809dfb69e381474d987e486dea87dfd4ead1f31c2bef9f788001428106b6179f354281fa2c85e437f71500fefee58e5bdc8accaefaac8bac328c52ddecc770b5bc46ee3ea18b61caa189d87c14faac1e0b00a5c6a34474983f135cc6b7f519f756dbaa1657ba9508c6e80522d71382686e21047a248a2b3d90fb828237c051622a94c50857d113fa6785716ba07b4373a7bfaea6956d9092d6962bedcebe25dd23d6fb70d957b1d8dce448b3ca65aa261d80e21b7e4be9b3dc38fa3af2400f53ebae3f93b69cd199732d8aa4da7259c2805571ab025dd5e484bbfb17ca0c9dcd766c6410a7fb13b8bde97de15e2db22c03c58807204695e33550fb51e90b4f20134c1b08863139cbc31cf7fcbc2d11ea64c278dc40c73cd687c1bf1484bf312cf242e57e34e3c3bb8b4706cfd0b6fbe8208745b93782225967347f3c4a42bcfb01ec92024e3b44d40a3960b46439330f0f0f0f0f0f0f8fdc30d0d692d0c8539320934c12c0d8426a27f022539229a514494f67e6f4746602d7c8de840c139f46b00140060b9c0a040b8a89c41231210612f8f39c337f8658debb1d813bcfc153236abab01023b0ffbe559fe465ae0bc110a308fcc40cf9db73d2c144cc0a3188c05af92549317607fde913620c81d192ac934b4c93447a332f053184c0ef7b92e79f29640d1d22c408029f4f738ae393ce34eb4a88010476625a0b7a672d4aff4988f18384eeb3feb4fb20d9773a419b961074ac07e8cd17cb2bf95e1a3d0ff0602ae91c8274d57770488e9431725bd41829bdf23d644f9a64e7a84110dcd0e20b442a6d8b1ec1791143079c727f1bfd59f935213c88910326a60aa674633ee5295f420c1cb07944a6a082f43c7ff1068c5f36917a17028518366063acd5b49b57c4521fc4a8c14176050d9d55eca2ea0a0b24a08b1c3f841834604ba2a5ba5cfbf9d53521c60cd89839f7e753adca9c0cb851d371ed72a64d3177102306acd6c4d7a4ed3d5a1f0b7821060cd8a87e312c5eea8824d3320788f102eed48d6e92634a26356b0710c3059cb4d13f512ccc62364ebf0d1b3d021a294709b6528e121c89d102ce42a5cbbe7da29bfd182c603782c8db947456c157ca6cca2a348a8eb72ad84cc246d5eae51034930ace3f55040bf1ac54b3a860378f1625dbd5631af7147ccedcf5a4793405e3debf1abfdb5476ae147c4ca1c63c7ffbc70f29d8d0e81da9a4ea48b146c108612771d5b295ca8ac6165c1851f01644f05422328afa2414ac77c60b952f07059725e9e32619479e7b3ec1e9cab4f50b2aa5d5f78b0e4ff01554e4f7d7a0bc4bdf0936ad4285548d1442e4bbc051021e7470826fdd6aadfc4c9745b409eeb3e267b7c535c1584949b244ce3da96320800516a523137c4abe2a51acc504bf7154e416895e82cbd60aeac5a396e05c72fee7ba08e2315a09fedcb2839e5a28c1788a7a3b1acc5f2d9b04234a77e50f4adf7892e03d0829217b48d2dcb4916052bade1591f4e61da485013a20c1f5c69c757479edc65c3d82cb39fd9b6b56c994b48ee0d7d35f5b7ea7114cb60afe19acb4a5b95e7430828949b3630ce95b217b16c1888712dd5a118d92bf418722d80d566ad2ffec4bde828e44f0295af5eafe38e8400493da54b4547d9a41c721f8cef19410a6dad1456808be4cfa6648661e82ba0cd05108de3ec9bc2ea5e287b884e0aec24a2591e2fb0451a005179f83468e2db06e2cc01ed0310836e6e4efa223a9147444104cfe11557224895496cca223108ccc22728ea754d7f81ce8800e4070fac4f6aee27afabec8d1c58db7b280099a026526e81c6720c0011a0ce8f8036f3abd6dac2d15e086169de30026e81c5860e1074ec790628a9655fd2964838e3ef041a47e504ba372fb5e014c41071f18a91b4bc913b98379b0c0c2c68b20470e1c376a381758609172948086ef81771f1529b52c24793a1d7a6053f77f0e49f579e043e4cf55d2441d78e054b57deec0efa9b86b9aa2dee57ce9a2c30eacc7d2f1a0377d68f7d481eff4d9f4057553bf668e2cbae0c28b03608105093ae8601d73e0bddab3738bc6a433a7430e9cae203a4f66875039260edc4916797dc13243db0e3870b965e717635de914b1c01bf85cc94d8d57eaf0e0a9a1d5458edec21ca0c30d277b4d95b3a3e94a0f3adae0c8346eb14f9a10338f0d68909e72be8f961c5d6cb1828e3560871a343d75a1d28baadb3c47175c74a481df745d253c823e4d22b5830e3470ea73a385dad75fd7d4a0e30c559834db0cbc8699ee32adde493c65e0f23af33d93f0582a04081d64e0be72b698f669081d63604d86c62094aed7ee62e0bd26ee662ab9123ac2c0e5f54db7b62996903960e07aa404a13bbbc4a46447e8f8021b555c53948687984a62a1c30bfcb779d473c9757481cd92eb397b8c5f6addf82d70e05da1830b9c590a2995daa94c1fe9d80237fed7ee77d617a44123cd091d5a6062473399773fc33253438b58123ab2c07bd29f6424192b69cb792fde0b12608109ea3405a5f984f6db6a685d818f5b93837ccb0e392b7095b194d5e52bed0ba9a16590d05185da3fffa42c15d8db2f194a62eaf735d031052659bed1f964f80509d6d052237448818931e7896399de27af35b44e081d51e0ae4a7475538cfcdff022c716e4071d5040d4f4da598778d1a1e3097cb44d6af3e91f8f215971e87002af9e82a5d3bd8d269a434713d8cb95fc3e3be74fa632810f313c4d0eb1355ea9c0a163095c887124e8c83963a85c098cada6afe476bb172def48021f534fd231c6c8228173b11c2357daa4ab24396ae01170fdfcb134d6d0935e5ce1820e23f03197b64e89beb152ae088cba64eac97d5246525d213a88c096957ecfa942359bee46c710d8f174267a217612aae5438710d8e09f49498db7aabdd71e3a82c0f605192255f2f76dde01043e65d71c3cb5c955fb74fc80d19372291949774ab9d3e1032e8dc9d227a2c94a16567da0a307fcdfe868ca9a549d9369e8e001eba584d21e3a9629e6d20c1d3be0438fb457edade425d7011f345447fa8c2721a4d0d09103c62e48d16984fad2278203466eecac0f69a49ffd37e0625604d7984365d48b1b3a6cc095857df0b6e8a6820e96a1a306dce820bb5427e8e41003860e1a304988d090bcf63f63f00c1d33e09204954f4d4be3291519bc913d990c219645b83ae8880196bbcbf4b45b40d001032ed47d5b9023c94b241d2fe04ac64f974d9b2853590f74b880af24b3b79d9812f629332e74b480d3fb1ec32a5d07c9626da183058c14bd26427f7375b2e4580517627eca633792020c55f0aa2159ed63aaccdae00041016e44600438722000004a80910a2e26914f431c1f157cbefdfbf7bc2f21fb5370b79de65e6fb9248b4cc18eb2ce78ae9ed43d5b0a4ecf27a6684dd55b2b29184b3b41995c4f72ef51709d257a84ac8882516557fa534eea1cc45030692f6b4a13a327d313d3010c5070134ca9acd291d1048c4f70a91b2989e8399ee0b2ad68cc18a3b605189d602b788a1c2547458f162cb0584eb02fb124ab8ebe09bef76c4f8b88a263d46882f18f95ac444c9e69a33032c188fd0495d348f60003137cf668d9458e21c6f25c821f15e59d83101e72d658c22012433fc898febd29024625d8381eab82460dfed969030c4a707bca326635c198049b3af173e47b0d9e3a1892e0cdfdc2b3e7ef49ccb2b88244e08a2cae2010b8228b2bc803aec8e20ae2802bb2b88234e00a0938e08a34c088049f1b6215f485cc5dc91a5a90e02ad9a8f8e5743a088b11301ec14ef4f3fa9abca5d3a886c270049ffb46865eaab5a8b611ac08d3c1d2fe766c432c018311fc7b8b9ab49d52ab5ce0d8e2240163117cefa73a9d90e25fced18d040c456422b8144fd4b64d6c740d9c000c44f022a48788164d045cb4051e603602188760c3f4071949a2b9df641d01c3108c067d95c6bf4e847ebac08101b30dc028043bbab3e8550e3dbae2c51637b4a0b185175d3c17560b83108c5225ab2ba99cabd369107c4a27f43ed32508c64608cf0482bdb5cc6c417d882c9901049f3f7288d24174d357fec07eba28aeee1af4f5c2020c3ff01b4feb3efd4ffc54fac0e76c7742b98bda1bb30a30f8c0299d33952895b3074e45cd29b77bf4ffd86a00861e98a45297f0bddb14eb539600230fecd58e5ae84bc2031ff15b42d0ef775262a9041877608497f8574826bc84ecc086b4cdfad1fa2b0671a0f502461dd84ffa99762b96936be8c0a889a221afe510844cce811521edb655b4ee04a91c583bf556cd9c315e48c919c088031749ad678aa6799f2638f0653d2e22f5047da284018c3770ea6ea983494fa3b3ef06468bd039a7b906cfedc068035b7969959ab27b8e393630326a056daa4cdfc87f0d9cce2f4d53f9e3251d6b686dd1347020d302186ae04363e8aace395f824c1af86f3f1b4da362d7850530d0c09d52ba7fdd6be399c9028c33b09949f73dc6d20a30ccc09f597bd6d30dfd59e902070602e591764a6705953c780481ed0e2d519a1e49568a65070f20b0f144f66b66e50b1b36da0249f0f8015bea572505659e1b3c7cc0f96bbe49c147792ef51559b0c1a307fc26f7b64eadd73b225c78f080718d79da012b4a64d139d4ed8f7630608ce0a103b64764c7942d1a6e9283470eb858d15ad3a25669ac78e0800b26fbfa8455da69d3e3067cda18ae95b6dfbf760f1bf0fe1724e4b6a41af0174da704952a5ae6102878d08089c9b5fb9468dccba719b0e112f37496b8870cd84b31d3eec493470c58936aa663b9ea0103b65277d29073f29d2ed5d0a281b6028f1730318b56d2bd13628ef80d2f4ee0e102ce72a720eb2de947d215173c5ac0a85ad0494b4610428895050f163022f9c63bac264e140b2cf2093256c1b7a789c1b5b65a748c2a18254fff42a9a8b952f6320a3252c1f7248b21aafa6995a81364a0821fcdadcb25d696659f82778b69dcccff3d9f70024a90610a46520efbd0c92e25c5c82805971942a924adad82ccca2005274c6ee9268fb1e44e648c828f9d937b7dba33b5970c51b0ad57a6bb3d2f9bac50404628389db13c7abc9259336e72083240c14e7ef124719446c9b14d21c8f804a353fa9c9737a8af46730c323cc1a6c959bf73505b3a0875e25c373dd9312983136cdd473a2f11faa28bd242c626f84afa53c42443bc810c4df0a5f54f05534a6ee450063232c1e9555271afac24581a0a3230d1c7a046a9a0f2a42f6b6881e006053e070e1c5910eb1a59748d2cb0c0a26b78d7701ae846e7c04b70429ea920ff7c5429650d2d4bf07749568e41ec35866c046454a26450824da624d5a72c39a9104a565ae4b000086e10cb808c49185a6db3fb595c81800618e0000ff822078e11fc08644882cfbf92213abd1a5a39cc202312bc5b5291fc4b7a92ecd6501b363a0235bad0220308061990e02bb228b3a4b954eb7f04f7faa631fcea810c473079fd5583d4d121a97c0d2db302198de03304bb8c51dbce4c8ce07cef645dca2b22428b607474bfd2bae4f9b622f8334f3293c72482fd12fa354b9075254d88e064d2f93786e810ec5bd274a9a26f083e6fc5493e6249c7e417825b73eda015a2a6bf9e10fc765e9295fd20d80e566a9266bd98d448106c87c86c3e3e26db8202c1576ab69c3be5ca9e4480e02ce2e794d24e501dd11fd8a4e993aa538e78defdc0259da47452dffbc0eee7a712b24e09353a1f784b5ff1438699b87bf6c07e6558d0a3c6ebd5a307eee2fae53051e781dd32591ff349cad2693c701d52b8ae598ea76fdf810d22f78b4c56db816fcdf9348d77444baa03a7b2ba5bd42bf4fb74e04ff7df653fdfed9199039be485286213840cb6910327d4fb8a7d480a939a38f0667b213d279714a4060eac9f3a1533f86eeca879033b21894e96d4971b356ee0f265fcb3b2d5b7ccb6810b253a923eaf0b895936a45348c1920a77d7c076dc4ac2478dc8995a35f0ff1a52998ed212529b064e64cb35297549c926450357757a72aaacf94246cfc085c9f4d553db5b57cdc09a10ed9a7d19d838c1cd2a5a88f172c8c09e30cd959244b3db6360445222b9dfb6c7560c4c52932a725493ada48481137fd1ea6697b246ca6be9a544734cfa0227b388902ac5eee4592ff0b9ae64aecdd4d45d768189228299ceadffbf2517f8b8db413753b9c57d0b8cb99e0595d2a2d6470b8c08b18ca03a59e0bff7dc6d64a7a06b2c704a82df7f8ac12bb0a9e9dd5743bc0332acc0ef471ab3cbb00a5ce8a5a5e7cd0bd11e153865caf5b4655a977553e02fc9b4d5efa24a8ba4c0699341458b97a2a28e021baf26683c615e120305b652bd594a7b9d92f6097c88b7e556d7ba56cd097c3edd9fe2675df6a4358191122d9950f7fa90342630f174d0dcc15f82ee2c8149e129c898369a6d5502779164c9378ba56c4d02a7b12d53540509bc67ce1a7235732b750446079dbb16222458a48cc0a7ded688489222b01bd533c5d29aac324b0446b78586105bef744a1982c910021f713bf4c79c6bb30983c009759e93a8ce9f395335522003087c8e272a560e1d42f7f4035e74870e651dcd44e3036e94e5ea5d111294567ac059fa1ddf71cbd1390f1821f49312ad417fd3b50356644e6aa7191b5a8800bf90a103267a8e1ff4353cd59203c624e6ca7797b48d2ce18077f5787e32e7b01ad10d782dad1f53860475db06acc6e8255a444e0d98e4fa290d3811d28e1e13490961d2197049fb285d794732e037ffae5730b73c4bc68015fd94efb34afe908101779743f53488cfc50bf8bc3515964ac4059c6b4a9a2adb022ed3b7e25ff82790c1023606f78da9dd2fa6ef57c1e66870db787255b01d2a29f4c416efdd53c189498f41b7ba674413157c0abd087ad92aba3da76082e86c49778494333ba660844a557b7f3997fa5b0a4eed890c99a2c8c9fb92825bcff8f7e36daab551f0e75d393acdba34c4100513f7ab130a2e4ad093a2272928b837ed903dbe8564e6354a4ff026fd5e43c87cd38d7482f72ced7e4158cace2027d8482a54c6a467b52fc6d8041b3172beece59ec73b4db0a2b2f366881e93885c2678ffa023683d61820d29dcf4ed4910eeb904f7de66c1366e96e0a42795629f054922b34a706229c6ccb30d25b82423fba710d4fc359360abf225b51121c5519104f7e6a959b762d0212491e0f55c45bd3d5da694040946e5684893fa215b0e7a0417d2275bf04b1de2e8388211fa734a513fe586b43682539f2d8d927146b079b35f87169936b365115c98fef39443dfca2b8ae0e3a5f017959ca4263311dc7dec8862724404576e22654e232259c81d827f0b7579c753278861082668d315457c4748092a04a7a35657969c105c4eb5b4171293eaf53106c149d3196f44ae9ab28d203899772e964ae9ce5e0682b1decae239adbd630808568255903149ee0f7c252b8d29fa3bd72b3f30964554e7f9a7254bea035f97548e0e0bf181bfcef99a83ce983fa7f1458e2ef6c08ed674a9eb4b7a60725411092904f1353f0f4c8e989bf5273da8bde081abd3494d64e55a931d0b62dc81bd8a7adb813713fa977db33a703ef2842ab9eb3bb2dbca62b76a0b31e8c06abec73f0fa1b4e714b2458c39b03926e51a438e22c23c07c49003932c9979aa4dd67111fc6f1107ce3e6b4ab5be51346f5fc480039bb2879c4d922acf0fd5d0a28103bd8113bf92a2bd2a2ba3fa458ef76202d780186ee0549e9eb0584a6de03bf37477da94624a0d1bf8ec2106d31a455b76bb06ee83aaf7c53c6bdf8b1ab875d57055350d84bc31af88ba2a061a18d9492cdaa6d3487173065693e8e8bbd529f6db598861064e661b291aa2e99ad06b68758c327026a29bec2ea25588410646c8b7c8223d8a7be963e0f52beffcfc5448dcc4c0755f4f1212e3a8742218b8228b2bca61214618d8ff37554992f36dc7c710030cfc77a9ffb652e954b03821c6176278c1627481bf54224482c5bc0e0b17b8f497638863ea7a9d696102b4808d761c0ed0fae24560c3d8e857408c2df0a5458750c126dd6855530c2d709a17643e59326530531638f9273404252a2cf0a9952737d6e60a6cdaa01b72e9ef53ed5881bf524169da8abeee688c2a3066e5db9d1323c4a002d7b14582bcdc2a3a79a6c0b98b4c93649048814f4a4c69a94f13b2269110230a8c123906ff536a200614d8acbdd096423f5469623c81d3c95e7ebf5da2fad31ec470022fea2a9ffd26f79cd22670933e555a1eb37041108309dceba4a0966fb4cbcfe1c5166623c612f8a44db7de44520d2d74438b942188a104b682fca06267f60b3192c056a403d69e608375d23194faf191f64727f8a8c1f6befe46fb22e0a2bba041727c70a23e36c17ee54ff24f928e39080900061f9ae0f48da72cdad78ee223136c1cb198219fdab8f89cf8c004fb5d5f265659744d870c1f97e05584a6077551f3326d68d15dfc0122a057f8b0041fd9d3f595ba7896d34a301e3d84aa46ab0c4a4909ce73dba98e212d4ad056671ff89844294f6e52a5b981430b6288f89004276b34284d9f544cdae7f0a28bbec147244edd25fc4f977b0c143e20610e42f6d80889a3454df87804abdac9f77a27d9048f061f8ee0f3346868539531af683f1a610c6e79a4688e78f0c108ce36a8a82e7e9afaff8f457099b27490134b648e8a193e14c144d7b8923d7a12c15ba67cb9c3d46709e61ae103116cbd55ea8954495a6e3b848f43b096b464b34a664aa6e9c310dce5aff64b7253e5977c1482ffa41b229b8e13824f7eb2b27aae84f031083689525252104b107cf8bd889e8614632995f011084eaa4735b55521c505042751f463d829bd60152b1a440c1f7f6082e5f7eb7a8931bec90a1f7ee0227b85eec91d6ef1fee8033f49d8c6ceb9d72ffe1f7c60f732eadae7d2223487e4e0630f9cf6a7cd13e4e8ec273db0fb5e166447cf1b4a7e238717c774d16fe36801821b5e24f2898f3c7029f259fce482e2030fece9b20cc93e4bc5c71d58edb11c96eff9795b2d6ed098c2871d2c9d5ffaee3f754e2aab03a34fa37aa55811b72c5c6871e3830e5c0e994f554ef0d23721c5ac96c4b3ac2469564be219161234ab25f1eceac899d592786665c4cc6a49bcaa2265d604c0141f7360437b298ba8594b592f074e65d19f3469d7f4410a848f3830b1ee4b8aec5b912453012cb090c1071cae0831a2580aae21ab55f9f10626e66d53968397e3c30d7cc86e5b22bbe4c8687061021a83f86803f7df77aa91563b85c706c6425353ccba7694fdb10646e975ff4832a4064efd5be37877da485b1a98a0f38e9dc8213470ea32e7e474bdd37a9f810d96b348b6d790983166e044d988e8df9cde6796814da732554517c9c0de9b78d6d0ef630c9cc897c5a39fd0b668137041e3060e6d1354e046045cf02106ceff45f88f8c1bfc4e1f6160cc7c72854afa7d2729f80003ef96367f27593c8d200ba4a780f9029b16e61f7a6232458f1f5ee03d64f0cec973143da11a5a07d1e0a249715100157c7481c9f95d1ee37692a7834ef0c105b64d74a467afce19f38f2d98c27292289a73ca906c1b5b8ce0f5430b7c54bded564f77593b1f59e0a3c760bed63b21288b0f2c9c738f4c275d92f60a9cbe5215926448305589e0c30a6cd4bf208409350e1ba51ef051053ea8ec3189680753e5a0c1452f1a053ea8c06bb40a6271bf34be680a4cd690fa11f2a5d7a02405fe5b3fdfe367149542386e5c3dc20101dc8f28309637f2b677c8916afb1b26c04103471759a4001f5048a7a4cd644ace9da418827e42795b534a22e9a4bf72c2e5b55173699b8dfdd1845454481b35a7ec63b20f2614c574aa9c7582289f2cc1edfc934f54b0145df3a104f6944ae93f2388c6b4a1001658780e2cb0f0c04712f8902a78ef57881a2c0909dc8494baed92d0f61784818f23709e7593b4c4ce63ef31025ba9ba4e787a0d4d3245e025e9661fad5019aff241043ee57a77fba91c9ffc1018d593325f529b4c3c17c29d2d967f50eb471078d3a29e2e4bce3d3a42e303085cf88a14dfcb5816493fd82b29cb075c86084a834c9b74e7b307ac04dd2773dc3b33a678c066d4b439a60d3a72867cec8009b124880a2a59b84a74c075b609b7933f4266cc7ce4807593496db23cfdf55e0d2d1a5fe4e81b5a9cfbc001137d8236ddcb59e08bce91a3f30624f8b0417ed48011bb4cb77ef7be96c7400d2e5a0159941d3e685058dcf89801a7922cf19195ed92954a918bc2870cf8a42f25199ee2a5ec120c38a0ea071f3160533219b9543b8d3297c6165ed010010e1c3674021670c0150e3025f8800117f425b9d71a7f019b7531ba9f24ff4b7db88009f67fe7b97d34892860eb20087080c6013e5ac07a2715f58410f693a235f860015f5a536fb2bf79966cb4e30d045879ac824d0d93646d2a8ad25ca281a38bab47000e0b64202fe0a10a36c4fc3cc63b956f7b2a383dae7741d5860aeea2a7abcb0aba3535a7e0ae7fe3ee04ddd1d514acbd644f22544474ae94824fdf5e11e487789082cf262baee85ec424b4329b80c728d894a145f6a877059d7888824da766eaff9f992e29148c7c8d61917407148cbd77a890e7415bd44f70969fb266ce57196a79821349df4fd60a9dee11ac11f809ae13dc5fee52d183d29b22a88616728273519ff2e8aaaee96c0dad337226f0d8049feda56468f09052e40fe1a1092e64d478917457b34a20904526b874198209dd1f3ca698b9830726b86caaabdcb2b2599cb4c0e312ec6532112fdc735bde070f4bb4a243963409b9d2e286175bd0c081cc0172e04000178578548213211ec56308f315eb0b1e94e0fdabbb2de54b3134ccb618013a8f497042c7e4e7d65c4bb13d24c1ababe5e8916975a954d091c123125ce7a4ead2548578a35348701e4be654d95dbfb3c686c72358cd41bd77f4ea9538312b0068c1c3116c5095546a3d1173b4de084e7f0cf9726a16dd66a9a1754516578ce06d700defa20d4081073c60cd3082bb1892121d7352754ff0e8060da4c5221839499a2ad35839828722523977a604214203073a22782482d39f333c9adafc9d5b430493de2405cb1b72866b73f038041f1a63922055546be418825d5149e4944eae5b5eeae051085e949698e2af4e084e7592a7b28d926d423a08265a3e5116bd3206dd0b82cfd9f2c5e8162b929f23f00804274fafc6ed6225530d10bc0489717b4bf4e7e91e7fe03fa995f776a84b8f993478f8810d2a34c60a2ac5b5df1c1a3cfa40cc5189316e928bf3e003a33592fa7ce5494b92ec81f374b5e62252ee49d94578e881bb90847e911483e413f3f2c069108d6d19c32a473cf0c0c50dd2344d145bfb60c0e30e5c05d39ba236ca850d1bad40f0b003bf125d4bd4efaa07e1d6814b926ba25ed64f4a4d1e746075fff326fbd4419ad6068f39f06a59f485de9cad6dca81770df65617b48995a7068f38706ddd7d418f0e0e6cf0facafbd74a9e375a78bc81af366529349bb8eff6010f37309ebe2b3305112ffbcd3078b4811565e51df26e25cd0b183cd8c0df989c1094aabe0b560d2d23038f35f01749fdb3685878ca45bf0d1a88030f3570d1ca829955b50429aaa115f04803a3ef4175eeffb14c5b2a3cd0e07106d6e4fe6bd0e75d6181045c41812bb2b8c2101e789881cb69da16ba4248a21a44804719eacc493e82331a1e64f83d77b2cf4b3f3971f01803a3e3c7370dcd55c2430caca40942d677b5a66ac2c0c89c96fc53fbfa9b140c7cd06d9f34678df8f90546d86516cfcf5da93b2ff061ca32c51ccdd839f1e80237667263ccde49aa4808e0c1054e9a722dfbcccc3721e8861708c0020b83098f2df01d3477a8e89fe5f0b5c0555bc88a499a055e3c49931d39a53b49b205840716f853cd2cd6797367105d81ef94ae4c58ccb102a31d3f6bcd3a55604df3998ec15390f43715389d258a4c23ee14f8ac29a287a0d6d2ed9402e3a9245d30bf14b4a6a2c05fff98de502aa798443ca0c0c70f93982db94c5348024ff078021b427decb59b14ff6f0f27f0392ce7c97bd16b94bc0617fd0ea804800d3c9ac07f9296ae9eee2d395f0f26703974d8fe5eacdeab40d037fa010be802070e0a7c173820e0b1044e92dc5049b8293729391e4ae0456b788be55393738f07f04802275d72a7b0faf69445677ffa30c003096c862c4d3a9850bd913f02a78334ad29ea87591232029746ff7d537b4ecfbd086ca85a9224b22455192502df2d21a5f57c9bf22c83f018025ba254deb38e1b646f8839c043086c5a0d06a5e0bceb94903985b44d49c179f6cc7b9b96a25d46c15b0621dada1405a744fee4a6fa50f01135c90a522365ff40c1e64f4f51426c0dfe9d4f70b741e63c9e3e4bc81d4f70325f1aef3b4d9dd8e90417d436977d8913ec760e6116692c07f926f850d2f22fd6890c724d2027c7dd94ad6782af31614ae428f2d48d09eef35bf6bfbd2cb1be04ebbe29e99d8c2538d36317cffbb7b2a6127cd0929b52ee4a522f257889f1c37290aa9bd749f01664e7345e694f4525c195752891423412ac86186348a73e6f8e90e03ea614cdfd477ee91ec1259d630a9a3a82cb1aadb26e643c6123384d2e9242e45c6a152378d19226eea417c19669e8584e5a114c1edfbac876f254d289e02c8fd958dceacd2044b04987a4ea3685ba051d8209aa69edf476103a3704637aaf3c936d50a253083e681a4dd58c2104f7a2da379ea4047fcd20181bb9396f9fb4b6d7582108d6bb325fc6131adf9355c406560482bf11aac5c54b407052fdd497ba0d42af7f60342de3a6fba0d49f7e6052cad85bbf294e0cfbc026115d545f5a0b593ef05731dda6e655d3dd1eb8d7ee8f9e15627c4d0f4cce214a72f1dcd2e781491b9210195478e0f39576ae2062eec09bac1c6f6c62ecc07e2ea5230813bf50aa0327315e3e3d1dd878d629fb2ed5a53ccdd01bbbe4c0c83725f404ed15c913076e45a9e1c0954acc0de9b26fe0749970d758f1cc94eb06ee56cf4a5ffe3bfbcf8a367095651673348fa3ca6503237f5c37a556661e770d5cde539d6d62c6da70d5c0e4e45b59279b68fe360d9c5d9a328de6a5ec5b343021087d3245b667e0821ceb0a32ac4d9accc0fea9ec75bac1733095810dc1c5cf45755ff0c9c0a62ff1d40d49abde63e0530c3a5a432e3f252306de538fe508a5daff8681b31054ca985e30703e4aba8fc8cc21f405468a149574de125e412f3039246d5e3ae5a025532bbac0875b2ced0c41bdc9a0da82155c608469d07143740b5ce806f3b0b42d5dd2029bd4fd7f74569be4b3c0660f1d342bbd958f05366cb5a367a858710546650d2295d235ff8cb1c20a8c1c39ea4f761a15761578532d16b2a6ae090d15b8b4493a2fa353e02da5d3f0929b3952e0d2c7dfd16e89023bb6d921ffe4202457ac8002fbaa1625a9afb96dc58a27306a92080b35feb6bb59e104be72774b4c42574e59690213d4872413783761caf49f96a7a025701b649fce7fda397225b0219965a63fbb4d3d098c488ea179cc737eb00209dce998beb4531b847e04f645088b315ce4a61881d7d4a232e5e449534c11387d9f6ce344cbb40c11d8fed2b1efde1c026b5994553aedd9bd9242602b59a8913a9a27951904de244bcc1259753a4c207022f2cfa2a994f6a9fc01df9d47737dca6fa6f701275ea72d899a88fbf7800fb6b1fdbaba1a5a344ca110ace00117636fca7ef91df0415fbe5239a5bd1ce9803b4fd6bd1a5aa4c673c08f674b9a43fd76ece0808b712b9a08218d48ba01af167cb286166dc0a6f6f7a034eb82b0a20655ba7439bd5c1a3032ef4e0ea582d088ce8031999a4404a55739ca80fdbd570b31c638d1c31870324d1659c1cd5e7f187021825f3eb59f9205bd80b5a47c535392152e60f337c34478ac68019f93b0ccb86f7521c70a16b0295390a4377f37d4abe034f4cc6408870d071019cc5005afe96377105dbf6b2ad87c196216f35348362ad84f314b5b226e329d828f94d27608269ea9291875c293ea782918f13849aba990820949338a4adcd041a36074df2bb3c4e8399ba2e04cc815116f73102b43c18b509b8450fe7b2650f0318212a21d84d63c7e824d516477775e8e2b7a8293492bc8dc9b5b31d709eea347f2681a27d8245f44fc0e3a54436e136c56cd90da4a9ae0ab3a6f0aa64c70f69b63eea531df8f09366c5333d7a4dee79760afd2356b825097216f09f65aa45dc4742598689fe9cba25ab018a304bbe9e3498c1227fe6b936043507513e48848355b125ccca4aad4dd48f017c352abc7a8396421c17528a1c646277b7c98f108ce4c82f96d2e1983c511dc89949dd63ae94b6a049b55f4fafb6404ebf7bba55ae7bd61d7d02264063316c1e43831f585c7ce2645f0ad9eb3e913c1c5a0761bb4b8bf88e0f7cbda43a4ded4db21f8f813926a68d5608621b8aaf449ba8e6ecdaa108cd07de579b3c746cc200467a13da7e717bf11b141303a8e5fb264972b82605412ff11f12b104c4e93a46ed7a22b2a80604d8fbaf49fe36dc5ffc0e8244205d97715fff60363bba64f4fe8250c33fac07d72157733cb273da2c50c3e3049585012e2a6f6c0e88ba3520a9eca324f7ae0b24dc5bfd2c4cf6ee5810f32e5ff7417ffca2d3cb09d25f59d091147a675072e5433c7b074ef2eba38ccb0032bb2edab4e439d5d07468425dbaa5ad7aad0818d173f5da8b4bb53ce81ab243c5d3d72604b96e8eee4e2c087e4e993b449cd2738b0e93d8dae51db8c37303a24a43bcded24720357aa57377a169ddfaa36cc60036b4927e61027846c4a6be0d52575eec898bf2735709f6aa23de952aa4769e04bfae6a556d5a4ecc40c34f041d4fec8989372cc19b8a4af3a26292954c4cdc0dbe896e44dfd2b9d3294af2be7b6fc2103a3f535a4a06fc4e3660cec6f922155452f778c18d8947ff1477a5b079375614618f8b03e1dfa73585e060c8c0c754244d017b8d5a0556376bdc0eec5a477a36756624617b84af5f89fe55a9ec20526ed790eef52c233dc02d7bfe279529756cb30430b5c64d537bd4a799e2cf031da49fcf62471c3f3851958e0c223c75cd18bb9bd2b7057b933a6d46e1abb4641ccb002173dd287a054053ef4a3d7c50b69b1a202b749ef77af765b690abc8fe8ca9425e5ff5260946a45bb5a6b70d136b8c002400f664481bb53224a749ab609215fb40d1a65a3af2630030a7cf0922be2b9ebb17b0213b3937a4bfa36c30c27709da3986ccd23e9b37485194de06e54fadc19bb42c821263042ad3e96dcbed2bf49c28c25b015b42a24ed29640fbe121819f7f4055d229ad2d3083392c07d4a13fd1fea5e620609bc66d7a4d12571cc224b987104d6648f79995750a53c24cc30029b332befe5dc4a217e3430a3087c36334b49ae1d811944e04753ce963575fedd8af660c61078ef4c2225f7cdace0f3608610d8fd087eaeb9450917043382c0de272f8bd934a5d2da096600e13c30e3078ccc9e2a783667f880dd979c63141fb5b0b1c5166d5682193d38b299664732d50dcee001577aeabf235c3c179fc36cccd801a3f7472d57babde64c0d2d522198a103ee447afb4efc2d9b580ef80df1636d8eb9713c5f430b3d8def0247098c093370c04851d23c68edb82b4159987103362c95e67e48e955846cc09adc5442d3e50489755561460d1853f77c32c7a073706b060db808e621654cff0cd8be8a9c629fd5376635b40c05da6e304306dc79a84ca2f44f0ca5a5c28c18b0a1c3b34dff88ed8660c0c94c62964707fb11fa0bd8b8d94ee8eb522723c5058c7ef7c82b612644c41670f6e92cf60667b0807deb2b1b25b4498ddd2af8eb4cf5795db4bca40a2eb2564e1194aae75da960844e2a479560a3c29cb3a90b19299b3f82be41434fc12525bd536bc6943a1a680a4e599669889b24960caaa155a5605b4fd4450f3952b0117256f718ad521ce528b88ca9f1830e95e3e7d0133e44f1e4cf514f631c3e42c1a7952022c7d06e25391fa0e05427af6c69648e102cd2828f4ff05ea22d9a028db4a8647145e25028100683c1601483305c68bb00c31308001034220e06c2d1804013b5f5011400044b2a204c2a301a222414162c160906c25028140a06038160200c0884c1e060501c0fa73cb317c52854e37011a6fea8c000700a21990039b006bce78d770cfc7ff7fecf8a1c83eb83b3e04f7cfbe9a34f1026187dc1293211a42921a730e0a04e307de1af1c60d36a22f4277848f8e78ca422104cc818654db818b95d7db180dfdf177995407cbe78b7a13e0194f0d1c1ff63111b3ac403733b685bba013d389bdb05631bbeccc86bf3d31df73a44c36729a247e7e797d01a1c96340b1d08eb00f50da9c132c09d22ae4248e9a7d0802ba7ebfc91837c15d9005d90846f60c32a5506c84139f08080968a2965c538822b29783f8bc69ee81d42fe1c77f487f840fe0da49be85bd2460d9e52eaceb97f1e3c62f25ccc1f1d8bc7ba2be9c673e9c03ff11b60c968f70b0b17047d82ff82a1c1d7c03f30ebe189a06fe322e04a5ebf6f4ff2390c00908771e6d5b42af5c00be1a3ce0914be598393a04a8d8b7673db70b8e3b7d7c0378c126315a9a0990f1b01ac621ced048538342272d5d0472c640b2e351b73fdb8b1e1b3219146b1efa9bd6b8037fa148806a9c7e1d76deed31a8c26882820852ff6a044d32f43805d95afae29a92e235966c92aed6faca48a432efe7d00655c3df845580528e3b946f031c14f1b75c27c1fbc9360bb43b087d4b5c9b0b2172de4440f39c70045641714785ee333f2cfc0b86025e81d388871559e167594480f940f70a6c0f6f259c0dca3f402ab9cd02aa716d791ca4368e0bc600572e3e3265cd32f20e29700dc3eae4ccab0a3e514c89758c4b8c8a2a7de59db33f10bad295694ad4438efbd3fa6a14bbcd62b7739ea35d86b200e83415efbee53e491d3e2f26cc1a30e9e810308bb635cc4b310c45430aa8024472c03cc1d70c375802743e8418de0d4c08a19bf6ca31e14e0fbd517df949de112c8ac6013e5c6d533414c1e50f76ee1f5744371276372e5342562e205c0e014a7367fdef420340c0e7d887a19eab0d04e9117ac6cf823fbffe9c40d7c4f76821969abf122b72f30799982e46410a9c5255a554d11ec205652489279030b28f5345fa764938793756ffee5610ab5172b3adffe9112ab5394ee6f380ad7966b0e0319c398140295e49e963e65b9c9752e0685804707cf9543717980c8b486545579b1b3c04c4a49f2df3a5ca16d9432fbe7c8268dc9d93c0be72c815d0097a09ae04e7f70bb48505c76774b0369b8e16d0d9f271a25d6badd18220efa061c95481b0850b5e4607fd903ca627fd2fa7ce29a3b2ec6a00ee28c6aa8667b1c2043fc2bb688b5e9a590e904b2423862b1c1b77d52f43d6035e944cf973fe27b504ef8daaa71fa724aa2dd69ab719c4167f04fc1d51075b7d7c47101bd005c31045ce4235e1a0e50f5adcdf8db4a6241fbce706239cb147c3cd5ecd6e7e6342998b8a8ce8d96523ffcc51024c5d95719a75d6816349c34ddb05243484a00a0206b10e22a943e805b8b3fa7002a58711a011b2ea907084204881ad070bdf06930c0b454057218caa7a5bf931474270b1d5c9c9efe01e48aab5ee7c807352042c8083503c28f6af39b059506e1633ba2e6c4acae90ddd5ed0f12aa9224c420ca05b912d6a51e2e8078a048c2f7fa0445b178b4931a420bf708226836157e905d0987bc0b3b645058efdcba543261f0993cfac9b9c27340f67a1d40a450b686bdfb1b144c5ee605b675e18eb06a6d9c45171f91fdeb2e3a31cb002f805871c91e832d808c7599b4fb0c2b8cd0675e26d9a3a1f581a3f43c8cb3708b48a397c63b25732bd10247e1c1b365608baee72150312a79070ec48f9cab0023b6ae148dedd129bfc25ed2d8c70baae42a12076ed8060c5276eaac00273b3632995922e43fdb125069b31eed8bafde4649bee9e7fd1188aebe57296e995d7db31196449e5ff8d502305eb29dc717afac4c25833d17c527d5a7c9695f95ca55393b2112d4f44b3b8b0bcc30307a3f8112fd625d28f0546c2d3a8552e8ea9789070b6063add9bb022097816cfe95c44b3f9f04b854328a0fe5d8b90abff44e7006c0150eab9939676b23263ad3279d0edd07ae65766221cda2ed5f4e50fac98b7dea89c98e4c04af968d814bf53bd1c3167548ffac079d4292b215f77704636d1d225c4fc703de2eae1131e98f2c6179449430440e3970fe438290e7cdacd1fb799b630f11a8e7d8a406629cfebd6bf2607705a456a759fda9b1408a33ae47642fca3e0aa81957c965bee1624299f0d62987bf30ee2f2934ec6696d033867e0b19ac24d4edac5e651704a177d1730ee141d389277c20bbe697cc954831c86c60c1461d27340cc0b55c6676a44e1bffbf0a803f48019e289e7974085df1042fbedcd9fddb7c8647f7bdf6dfc3c82c2afdb1e37b11fbde792eb25696820f51c1e07d91fed226a3fa75639ac0252b5fc1e814ec5128d4163ad7102421f0827a593807864eebbc0de62eb91435b30635660959fbf2cc0c2c482070f6d585f2e14db31898565425b63cb7d5bda0d6ba8846c5439ef6dbb27cc5795ce775b61c53eb1558d225e9f4bfc9e3dae7b644c1b16009f6e7073c4c22e7b2ca2f0183ec551c57865f38e0d581304bf95d5ae58d1b7d71d4c92775d515b6aa0e6131dc8f211e38fc525bbaf5282be9824ff08763acdb97500eab36ce541b9c42e9089a1abd23e7a8fa7f97493141d5ad0c2a971a81686761fce6df0049b6c68af1bce3a1c5d1ecd3059ba0e0095f6567de2e7e6b07837fb7dea1f32c6f2d7ca9a2d434d8f16e0380c3fda3f0be120f4d0c1dc5ca86003e330064aedd727da5032d9a4345c8145bea77f89110a2200ff81b304426ddc0b6f287a5271fe91b2a5877cf81c4c4476ff2ce4e6941ffea8e6c96e8d01d14f678111ac64f17e64ffdf2cfb0e090b2b7551bc09a2c51328840b70f3c5a8a49a9e82e6b3b680309582d09e279528c2812c899284fea98ff44ebde8fb1078361393cc44d0ea89d067c60d99ad0c5d2b13417d1c1c263d92efe04c77942c3da10455dc98dbab9945fda1053431e0bf47dd85c3649ce5396cb570e31e362e2664d211cd94902e3a67ede1fc6bd2a3974bc720c15b4610e30348d8bdacdbbfbc27e8088473d245c17bec6fa5afc8681af075186121616004a46e4b73289312a7d029ecc9eccb989943a8ec9b776cf7eca82f9bbe406a01bab3cdb48609007dd6ff481d6f7b132c8344248903aad53f47e369b7f52ff78dea5f44aabd05aaee88bb72fdffbaa678f04ec43f08e98b707192c8f84a5592f1a2fe712dcc3f588a7352859ef9002a0d1c0aeac68fed96a1548f48df8e5a2a962390a27fb42679ee8e9e3f45385eb2d1c1f6663d7590407a0767c4aa2bac953765980fa3cf1ed10d061dae4a4aedc655b41ef220672cc2364dde328c94b0ac37ef3eca80f37a0caf6fe62b5272fe3bdfbc0315d4c542f8888104d5dbc84bca5e5e421c435a631ddae4b95b1dcd8c663420d46cd3d162cfb4d42149f05172d67b3484bcd852a03fc6f5acf54d8964dfdbdf8759234d0fa5f70a89e37ada321bf8ea3714e7f0e2a8ae2d17b6f63a3b641b1e7c16ae17f68628806949141ab0466a3a50c400c6c883fd6c69d2306368961e035e044b92e186b4780660342c6d6ecc520b6af02999c255e9fed4c1c84178965d4938ce72e4fab11d8c2306abb17dd04240e855f1a3f99b3ff841819e421b6f1f8f0d37754571e1a1a2454d08efdb0c79dc4f0d9702727383e7588fe740879b0551233dec1fcb016adbe5600294dc362ff596c8ba3ecbbee9fed7ea8e92691251f7424b0d12a5a105ed6ff5498ad1138ea4bc54cf9fdc46d55097d6e348ec91df150799b986b565f6f31b0f37d55b454bc24a2ba6aed0e8de3d49f241345ef8ab58e41dbf0d052e2c7594a430b2431b97b8194a8176fea2585d227b70910838dfa87c6260d977d16b7c3ba7b543a996a0c8658505ce7f6acc4b4aa67afe8867343a73004fe39bb3c4f8632a8234aee7f218452909f811706cedd1b903e57e517fd0d4e0c41541775a4f337d08cbf3100306c929fca530bbd08f829259af85c1aabb3a40f7821b1b37eec33ce6c58d4832162f06713809743042b200bb943a26c1c9950a829c4b67671675d61741e049e708f7de602af96e0852f715b0609d01ba83f68ce41844a8fc3a4154384c7bbdad29dfbb0c13452b2720070ba2bbf1c694a70551e745c6a06ee102eaddc84d150d70e0ff2753e865284bb5470a0eb4b8b98df4e9189d931fcdb1e2c7f6785c701b9907659a01eff2f60f41cd73d080aed2fc9de3272ea9f0d86e3a07aaffefddfe4984cba9d450404f9cc2251427788e7abf3e263832785f6c4ccaa5aca6d5629abdf7133d5eeb1a9144fb65a5cf3bd1403de55dddc6a3e9f86ed5c4a451cfc051924a0626aa62e310d8ecd93af1830f0dc355f338ed40626d898727470a5b275c5e6d10dc27e3319370adedd594e5a84ce1707e005ecde7080a103680fc79c445cd1086b6771140cb0fe11a084cb931df36438c7e58898334c4a2425e7e5cd51cd0034ff6b483206503167a8fc3a9b716b32a7c49c8112c7d2557e745b3723e60cc8c9b0a7e1c91638b67aa2f612bddb37577da92de22c0191555c7c141a814a245d33e8d42168e563ea09a5bdac4bb89630cbd3a64de1146eeae074621654114063138c1555c2a6550acab0aa6b2d25f7f49103cb7ada78d2b771a5d3575a2b32060a358310a3e31531a2154329179bce0a03799bebe0acad71ab763ac170b129375c5867b15ce5a91b3782cde96f95ba9c1493aea11c8ed7607589fde1d1ff67f80d82a65e3a0e09394a81c8a93960a9bdc8a992a42ba7aab2393a256215db4140829cdb010ffecb90954c0c30f4571ee4f0cf26f83b26dd8b4c795951c445079adca832c739c8444474024b9234ba818cf6bb70220771ec067832343014a3dcc596b4fed2b5e5d20d629ac71c055e7b7ed0ced3b116f5aa337fc776c0628dc2e50c00a7059cd8db864d1b9d42ec52eccb649ee79f456ac74ffd16fb49632f3312023f9fa90be3471048d55e12f585641b23cb6cf7b1af5c3eb9c61b8cb8f362f12f38428f1dadaa5249f1de649d22c0354f8216cbbccfca069086f907284b6484c482e06fb25802abd9bdb54f4abb62da6596bc2e768fcdfe7b1b70f1a6b0c0c158ee5b04457326bea568b73211690854a271bedf76eb4c33b34e425441d6b340ee63a748fd4e4e85a1aa08c522804e24657d744bf573abf63ffd307c2646b2d5978cf87b28df2202358ea5df3ce9b5d1d6e4b189600ee24920c041838ad41d371ca12da86ba943071b1660e10f2cb7474b0331e1f69636873f1528c83010ff97c2338d2d660d2d89007cd773845a12d7217d68c3a2995fdb7c11e31a1aad5e0c643b3a911a2995579de57a34d26c0e18f8c9849523839fbc1dcef97603b39cce36df835ca94e9a19ef144e20e1e1d8b34009fed719a5c64464192f4f178d62258099a2edb1181901059c3c73163e805f2d1136de65931b56b75905dac14d90b33d1ff439ca25a217fba08a3580c8559b9ffd8260e510adbdb0058cbc5317d4829de6e3f4be0becaafd68f8a9d65458e0b92193ea4a3336443b2f0c8f846d1e7c1f1329a4b8caf746aa2650277b5492659a4856c8642da72caae924b4123f50993adf80f23329b6a5c650c65a87b9467c832a277d1c749f860432b0baf0b3923810e09cc3d6a68c7d9d152384922d0cac6326c7cb72201486cd0f87d248fe39c2ebb3624fa6133feeb7ae2601c4d9db9f257a6d634485c8e60806401d6ab4231d9a9c24b13d61310ce692e61bce7e13cdf6607855f77a9526b39176b838633a1a86e30b0107551aa8f6999c3a85063e9bc5fa822224a4d6dc0b2c16ed719b48ff0a9b12979d4480356975cb983f8280458e00714f60ca68eaed351e73b99366974e8c2805b6a340270f2c35916eda76f4a205497fdd5cfe62fe0c1f400f9a5c172e4371a78a1ede8c2c226a559e7454f451f497f4f309ba5c59fb8abc6e7aa96c3e69df9fe609b6d328613e78a8001596e7dbf5e5309aca29253131616553d172899b549409345243e4eb0f522c6eb3547663a0852423b8a04dcedb5a940d0da90b5b4fd2f36e82d4114fc4381f9424d93a7caf8a4692c46a890a8d0e13a8ba088d51a3687c8ea04d707d8ce646b5e54d9fb94213a3ef8dedc322f2a1f73b0c812f9bfc90a2ad371325490649b61af9fc7a70a25e3d46b146a9e23155ce6915177d8b314ef893a936f6b64c553c86c525cfd9dbb296574bce1ac3e2ddac2a21ab9bb34c6ea9d3b598d95de8db6dc64193df7d54d1102d72c6ce26b5c777c3a2cb29c48685f8236896bff0fb8b30cc9c8046007564374f8c6f170ad6c138bd6d60cec56d3a439a99ab93a2e711faf8b6b6dd9ec3a42787053ab445ec73c61ef3418761dc98d55a6f1344295aa5ba17e7cc5d1cb64c66aefb0ac6dc3d2bb0a8f12d5900de6cd8326bae040c1b77133eaaf822cdcc70396a64a57e29568a79c040cab082f241e85bb215bcff834b333eb58b2b0ed8533f626cac790510a947e370e0428e408b4a614b1e42eb3849168584c0835e47bc149869aacb0aa163e9d8ec9a2e93b2fe4755a7a2bb73ac2fd94127e7d8eb5388d28e8cf39231de7606a14d499a440b14ee8ff626cf4eb4cf34235a2bfca38b196649b0872cda69aba385a582f6076a3408fd6acf0f2128be381f4e6cd18c13fb6c1e5762cadb9adf38965dac710adf0edc4f286c2443b7f1395eef42c225791b9cb28de8e136910f1759f3099f74f6e39aed9c30f54900fbd6a33ac9c8cd13114275e236f406e953756fbdf465b6365c51fb53c3eb0dd83fbe6aa5c79f366f31f3d8d7f65b3b6d785ba2867e90b70068f88c6b553184a498a9d43c1fab5c0547f3e98f741c0c645c309394db886cc6c97b08511f3547da72e06dce8bf58126b163ad5a5dab1d1acc75296ce068a3a80e7e2b63babb79091be91088f6ac5d6e78e006d94632f3dde5aa915815a51320a5699e0d4aa10351d0d93801b54109a48a65c474a61406a67fff86944215a00224b5b7a42eec1a381754eb6d50a5fc99da4a6e514c07609d36def897337ac7f81a46bbc6e8dd959ba141b54dbee903551a0e60e4228457a5705540a8120db8758d942e0af0a36c531835449e09448e2b129d18bfb8baba5f9862a20b698783bba11bf7af873f7e186e025448f0d005ea6004173ba471aaf80d4e8062fdfc4f96a5b8a5082c1980851116b1188fdc1bb4c85bf8d666d536f0e4a0065554bd6b915be62029bef47438df2aea97c3decbb075d3d88268d1d1a3baf1d12743371a116ce08dbc2705893aaec0c5af831f5dcb80ae5922843d9ee6b44a42f468a869f77abccf0a869f10fd26b97fa3ae3b2173002738c064f987aab659b9a925f92ba9c211f39e56f3373fa01631e64461a7fcc564f551132226b9b57a9dc3c585a054cad5913ff2b49aa1554201ba73e4bff5ec15050cb63150a9fd32b46f683bbd9b11b3efcb63a3bacbd06c0788e7fd3b8ca533669aa41993fe4e077454caacfdd3547f1e6c368baac8374dfc890e80fb4fe25c2249a2ee6f96934ef8eed39950305d09f4fba17b42da50f4181d639c8982aa0326e38e71716bd06a6586b87b597f8e94c196c46fba2ecde71ce241ac9aa6debc42359ea7c788395f2ce6dfa4e9ea7fc05f0f1aca9edbd9f887fc541152c3c38bdf9bef350a278e4218b75e68044e194546c4f8af514a9d58eec9fe29e7e98b13d1075ac6ade5d4760869007ce7def5a26579baf3881ac9365edb9d3bfff264ff2843338f71ee9c5e8d8ac77b3aba6b8b7d8909d9d7aed874b114212e2275346b0cd66ba4e439276a157dd8a1e59eb86a67f3c449c7138b48aa422893a53ec6a9e48dd897d9a7fe3ac25acebb1f1bc8f3f7680a723ad773ba4b074c00feb607e068b3ac85dae66a3c42bb764dbabb4fa77762f9b1516eb93c95ce0269f47f71740d09ebfc406b90cfd155d0b0309a95af663f40f7a79ab51a0a174111f08c64a6dfb4064fe0c952176a060a52c7a1f82f711f02491793b4c52808b932c962e8190a640b57207cf35b309a2f4838bf60ee8a543cc0db740665b5cab901e007d7b21c0bfee2212bc5c4565661a8f5d0a05e39831ebacf3de7580549e50039a1bc1fbe3bf53ef158b22f15495bca32cf4cc3260d46b1c9c77505fa70cd41e2ba070b3f05c77ce3e48075ced9cae069ea204cdfdb51aea78412c96a1eaa19fb95bc0181c86c17c19952edb4d680e40ca99c2692afd4d85098c3358930dbfaf2520b024b53c8c1645c9ec705ed5f7810178269994fa7a678b23484bb8134c1c5fd2167c3fb8d1e1a5a21ca3436d832caf7000c76a790c72a06bbec03289141093550c19e90d79678fc792e84774eb97cf6b7affc282210645c9f3e68da72179adec35663ab2c83eadf10e30a105226550a4cc6e469c19cea83f5634dfed21de9c94ef79ae3995bc829fa259ad22dc90ec99a4bfbd37648721d69b7b45372cf53df3a690da7b5549ee40293da12885b904a4da9564651e6244392f3248152380900e947c96ed2bdb506728c8d644a124a12270991ccbbe91e2e2136ab7f554a9581297396639239159d388c10af94502a4a064fe6ad3c76f58f18d5733b57a4a90aa8f08b59f9e1742cb34d453ee32131451aff915e0a41126af2ddcab7957eaa5c140e697749a749f795ae957b4df5a96156b1a53243391020c6807f0d0769e9b50f3e00612605ca4bc256f181a7a8b02970b4337754eb2c7cba40f87d7641e6a8f3a758b9b5d954fed13dbb5393318d46781c9ff964bec3d79a3cd50fba1ede66c6045e1bba430e66dbcc719b4fc5f13561048c82af30033fa1c2e2e932fe4943827a847c7c33867245bafaeed69764dc9e4a16bf8b9232d7e43dea4e33a0c458658c9dfa12c0c465a631c6c1d6dd269f9f941ef7c5311c42fe5ba6fca5aa18acce311a0082efa1b014a70a443961c8aa1a5f7aa1e8be18c6bf9f4b8adccc9061fde17a20731566063965601a992de8b2051215985866f2a7f39f9bbd3eccf29377c6ee70c768756688655af471c8f601a63ed9f84909a801a7f6ad49a022a38db18171cdcc3bf4ccc3d3727432bb18f3a8c94f1ea8d11d13f9303ef17c6703425d59dea309679eef802d47237f742f5b0d26a3e7a477cf6b42bc43f2c4a181e290c3cc42deaf2e8989f97d87524b407df31d9e08a66acac4237ffea8c8e595e779d03b64a6021ea775d8f093527c9c1b897a14e86e43e2117b2052b1ee0f7395723d96d888259c5e4ccf08b49556b1355f5923559e7fadc86999d6ac34ff8ddc53945e0266f0bb495f15d6a6e3438a69d0c83d150fcef98b0419e74005d2241358e196c9d3e5054ae0e0298b095f49bf4e024a3eb444c5efb8b2aca9ee80b0be61ececefb476b0afaafc5dc473821ca289beccb9866d79b47b554be122cb2b0a1c232f16bc859e35d45d6412e309174c641e35c4a610c9928edfbf3a41e0d9a0f8505b9e11f3981db17b1e616cc2ba9fa00392c6d95efae4e810b97f08a1cbe5073ed3a811846e42ca3b7bd1d69a0842493de9e95c6eec9b591ef4767b9b9147512cef9970239237b9c818dc13d63568833adaccec00dc6d6cc88799a22b74f0f9d3b7eb6ddae6abee6ae3ee2911b6cd588317490719154ab2f498c0ae053fdfba981a5c22eacba5027e410b3b9bddd8d4e8a2be342f9a64284b91d5f2cf2a42d96f799f01d829f6ca9b36df0472c149e70db26035b4447dd7b06ce433f2062720a0a3ca88d355b54fff3048ceacc407a72c9566547ecf3cb9f195ab5ea909636e9829c0a9a9466d89bd7db21ecb8235908198ec83341d383ea70735b417e81b405689908e5ab646fb2c452e1181a82f72c77e6f8ef3b9f11cbfa8117ecef3acccf8661d190a38e0ea1c0c6c5673f8199a542d3e0215b55faad7c1ce61ec0d1e5348d2d882ca532b0d16d62d3a8084fbc3850ffad63f2357d05b404707e9acf09878f4d8154c63e5dfad892c1aeb5c72b25016ab06d225f0e98bb0b5be7b50b2a98cc8539273fa90dceb37a2ed3161b25468a02fe1532d8103e849ea9fd03dc9de78f55936b8dcc93944898be6f133052f78001ffdf74f0f911cc9ed7a715048284f89843136a50d382a7e03432c5fd81ff248405afcd80a464c8bbe1672bbbe81c2530c003db44a34594e78ca018890df7f0b5e1d8a59311f234e6ba1f43dd12b6569d5349da81b0332e9d5f4b59a98c4fccca5c09fa595f8a9171a6d44f993088492248887dca0256141b3b5ba6a249b74ce1a366d74bd811cda4089c550269095f265e1996ef2f87878d99537eff62bc039952e51e9699298eaee577347c6bccc7dc627ad645ee2849968cdf2e676c5e6dc4c00c1f5ba1d8d91f2c0504b6fbc1b7a3a76cdb9dc1fa9e1986662119c068e8c2638b307ea145e8e2be8fc3d920a499958cf669fa128af7a05130f6254c7b891fdcff7ee54c8b67c6753b5e3f63c7e07ff94e831e922a1858f1402d17d88884cebf794fa93cb1bf9184081398c40b66586187d35f4a3777a360c91600ccf8314118a0ac50fa6b34f9a65f65f6408e5f5f2b71ed9876f19d14d98a10b244ce36a620363468f9851cc32c7909a50e5e3460266d4e5e7f239e731ef53d4721394ce87a2967c897078a188170920d81e36033a3b0092a0d03ba77c1d98100c3342ec888444334483a24bd15809d88c155d4c76346d32a1a2220aa653f4da5444f2c48ea8488848269f649af81a899320c4e65607c29e9fe911fc99e078cde487cb2487e042d7fe22519d443ff4d8d33e051c851b11ee6a340a1fc809bf7403173a303a041d7cce8609f245f8de01f26e8fe6fd90346e2fc04882a5ffb76b8e1ab78164d540db26e4ef256440e826b0ba5fd828561e6b685fc2c2e106170c7029bbf4783c09476f9e4e563ea1cae70ed96c0a058a3acb2e587366addc617f885135aea95c5ad74a23d761ef74270195b3af855698913eb7080fba69e765f6fa8cebdb1d9304638734b4fcbdf97718af1a3a5e385207a5660c23d2541a3b7d68390c5699366e28142cd78f92ab9ca277674cc014d820d0c779aa434b26386035141090ff773f60ad25d382bfebc0958bb95b446173d8805a438087033b14906821efd23502f73ceb8de98780e18f05e387f6b29f5f8d6a8cf2a66811fe64d31554cd85e1dbe5c141bd4daa6922383a3c83253a021a027b0e7bc2f1eba0e5406d038c7b4b985e1005e4544b9a926e88e97056d8b81a714b200148e252c947e4f8bd77c456a034cbcfb134251ded438309c25c3459cc10fa1095825aeba9f80c0655e002ebef9e481375833433e5412b46f4ab3b05a4a07323ad016587efaae93a78fae39b08f813123fca840f673912706755d388d801b943c433b80b4a65763abcb66191dc6c9bde093fd42b6f630d6b65d4ac7b08bc6516f3d489d5a543d1661827fe205151f2c49e5a6f67844e326e731c8c502dbb6cb081633210a43963feae9f0b3c0a2871108d1282b2f75e93f2212ff6a8d95c12f24bb41f5b45a72fcf4646a9cb74f915e6c66194160ef85dd9e9d12c9185163557a19af7530b2373b6b463df47aebdf0748641fb9b594da4b001462f76847c31a70539fa3e22f0933edb98b80bb49ba4ef7e8ea146d6ac13fc1bbab7de5dde04b19f03855d264d9b1c4c2d3c91885d1681210a1f035a8ea98d7be9dea0d9221796120e5e3195d6e21d692d09680baf6b6103bf602872461e8b446e19d497c16669ef9a90ca38701578ec7909d44df940e5c282d5e56c5b1c2596237cf03d1b0a02a3f63192d8294476c7a846659cf2c975cb7797b01ba0c38d58b734da32bc001941495209b26bac1cbaeffa91f89c6540a10e596e3f0ae4078f9db79b0ce9d920fb323ff7c43eac5984d2e298f5f48120f39be6ce170c4d60427999466dc55a78da410e9da79108e18f5ed1b353ba3ac49c5861cf711df535c4844fa6db627604c5c25a53c8c3a18aeb28a69c8e2e3aef4050c2779738cc3d1cb5e6cbd5e36d3e125216cf8b2d110e9dcd4a80877ceb626fc32cf2e3dd91289d7425ec82bbd6a7653a4adf0aba80acb2838d8aded011b22a08acc153e617ff6902881c0309147cbcb314e8d82da5c51bc200a260418aa41473a74c55ef92200b287efba57d1c388764fdb5f493d0ce80debd8e4230a7cd96a2604416f95732ecd839c388c618a07c0c94b81413e4fb3369b2bf9528a495e76218cf839cc1b9f067fae51e52757f5cad08d32c61ed355f1d18f2cd67eae540bc68806c68b7861edd6d8e3d01cb616e9f3d6567b43b36b710040a4c2a9216b3901148308ef8de028a9dd8cd88e4e422db20736be12a70da0b1d9a6d73adb8fa0518343f2321176b4bbae80768045c0dd890ce6b2e004c855684b2802982002a2f9a5e9f6dc578dcaec601c2de1c390c888a18103ba3ee296d56a56cb13bd70d31619aaf5817351d228f9e59c87ac743c9f05021ae08ced6ffbb8a62bd5084b1c2135b59c760b26f99ff0f80a84fb71ab2b0d5f561d41a4a40a659b14303ca703aa94e720566279c480ce0467ce2c79047db4d463cf648e986c837c55008346b57fced17da727df1cb2340f875394550ea9f950a10bb50a65ad5b11a25171edc7a602422f44f005a8881a5299c3b4e0c3cfc455ebd41fb19b0c66438736891e0d9589667956477ab38c8e5accf56f5d112a9b72f79d5435a10ad7db28992efd3e3008660ae0db44179a0a0a86362e182f175c677e5408596fd6f2fa11897de6e085e5a53ac5d52575f357670458ba198da5cd95ea0c38be02ede1132e229c31c82ef69d1022bab63799c278f2d03d2744fce19f637292cee204d100adf5f026848adb5d6906553163d2c8c3f2cde5ae096fa4e396c2d215fc496d29d30957497f2317ed9b40d186c9d419824af0727fa8b7219fdddf4d3411f47fdf5b16f6ef49f58d55c6af8e3b75ffa15441babed8e47309d9305888bd220ef7f9077d3e600428f21a5316fafefd43c3d27d001e675ef8862d6fa75296bcf9ab51d5e28a0cccf6383c6c6e540bcf869726a688b1679e10e60d2182c3fd21a77ad4c9ff4039334dcef4912dba8735b22298c818b77e962ec6975c6375f70883730f3ae6abf8a57392361c29ec451e54c9a0b2bcc7634a4a277bc70e50f0edab91c55e1346c0dde86a28d4597fefe22928d23f5b983f907a4b8d5eb2e3abfcfb6c8c4e462870e24301f55ed23135cd29f79541fca60d8886ddd91f9a484f90a3189067434d570d8a18d0505722a11cfbd78f1612d16ec42b6ad05c55340da9556277f6e62613cf0682e7d25bf9188af37081b3e50c5b8f6f0debd9135932764f44e68824d2ecc9941dc9efc3df6e2bea1300c3ebd6eea16638ffe9dd4307f4483aa6f440ee2fb0fff5739ce331f86212a968b102ca19532ee00264589707554d24062770b6f55a24ca9d97c5dc142804eebf72cb06d4a2ebca15218899ae911ece7b21803565c4d9c8bf7c792b1c86c05d09ff4a4a53502c6caf6d201522a2b14479abd235b95f5a48f34481324520d0499acb8d7630e13ed393e0a082e15b381d535266d755bb1f36709e11b7bc9113238eedfac112feccb1b124c1a0bfb986b5ec1df1cdec3467c6d36b389141cc4b4e7de2c95b91206b6fa56e6c3d5eb46ea1377782f1971717c366d9a336f206089eda64af486c48e20ef7c39b04a9671116b8dd12891eb9642556e35d016589efa36ab4e65434e253b1590809145c26d4f3126a1bb491e4034be9a2c1d4b8422e0c76280917504b748e266e26e66284357adb16e72e6c2543254d645173ceb3af230044fd2fdb2be9ad9dc56f60f0322932b7cab869110515e57f8d1f364f97a3a1df70eb9e02caaa3059512a8078da7582579a7930a2843aa2b0f4e4ec253110470d2dfe5cb12b0f30395d7fa67949888fcad3815c1e158f91e112bf617b165c9715ea0bea09dd7122352e892ea2c1ab71bbca3027e5504060b3660b46439330f0f0f0f0f0f0f0f8f314942fbc42d4899a4ccae780659ca4c292599924cc5c4edb20edc8b909d119fce4c7c3a33f10501d70a380b8f0a8c14f35ffd08d983083157b47a3aa5d423b52cc4a4158dc62a954f65b1a2b16c49a98e68216636ada239a5b9b52fc4a8a26f9117fde25ee7d7492a5a9341c8eb2c2974c451d19fea8d994a9fe7683ac729fa9364cad33a584cd10793a7d9ba2f443121257094a2d91271193dec58c8195234d2b2bba6d89f775fc3318ae632b54798ab1ca2e8b7e2e53f968e5c1dbcc1118a2625139f2726332c7940d187204d53d03ef294fa893ecf98d24a22ea31b227faca2ce51abc3c5e839d6844c38794c2bb4a7e8b83138d4c0f2228576f137d25d92e4288753834d178ab6cc6cfbf8c3f13fc57c91c7935167060a2f3d714be45236f0e618e4bf41b44456a77b5a859b244b3a99378d21827e712aa44236a3a5f7d2c88b82b259a103427a94a133af78563128d8b103bff93327abb65010e49b42149fa8a8ed6ba39b4800438227144d9142afa25897240a251c1532fcbe6eea50b34021e411718b8117461e3be0b6383e3111c8e60bd745e8be59bda42ad0a472392831124e05844a3fcbf426f926f295c4574f13a6a8a66e1532725a2dfccec93644a7220a237ef6ad322f276d6f021dae093fb73fce849a92345e030441f598209d10b675953882e7305f15a3aca76ac8c081c84685de299c8260da2159d95a6dd313b6117446322e692b47892829802d19bec0866a67f3963d291130207201addec9fe449b314747bc7f187462d5b4ff2d8b992c51c7ee843afc4bba7143970f4a1dfd3d27eb984578a48d3c0c18736284d4944d65f1fc9eea1f78a5bad3172d86acb2438f4d05c09ed271b612f38f2d06789fe2e191ae1c0432be17de4b28513c17187ce3386d5f81c2504871dfa3f5d318d19a54db81c75e8b56784c89453c27a4887c69390c1dcf3278f1372cca153cfa462c724377ff81039f4e9a527e98e881d38e2d056e61391720cc1378570c0a14ba9b924c83849f8cef1864ec927592ab5c8a4fce2b9e8c2a8009900d92084c30d5d7638e9251ea4ce65b650a3c1d1067f24a7544f3125896ea1d6020e36b4494de75f6a390be158439f4f0819e73d5fb36fb6505343fb51ad628a9bd7d5f22dd4f2031c69e8522cbdbcded72ba6e540437be2f26413e3f32638ced0e7142d4b493e99632ac97398a1b1f0b794c36716111c656872a969acdc9e83ac97070e32f4573af937708ca151ca2c74caee6be0104397948610cb3aa82a5911121c61685efff3b964cfc8a2a58007684c80030cfdc7af143f687c830b2f15a000c717bcd0cbc811b153501abd3296054717fa6c7acd53ccc8fc5cb650a3a1b0e0e0c2271b2d26d9402a403638b6d0b768cca7f2b382430bfdcff78ae74b3947b24c81230b55a95bcef13f163af11153a87291ab1f8602c715baf41c72fcb32aa5cd47a8017ae0b0422372984f984d264c8baad0cf8ace532a4f85e682dcd7d1a69942a772d613b9d219951829f4994d87d39ee528b41bb2beb8cf899c440b8546c51839b75805a5553ea19913277ae47a4e6893cabb3aa644389ad086f8729592a560e2241c4ce8b3930e95b3e924b5328e2574197276c38506fffc001c4ae84b89c629fffcb6fc93d0767b2c61dafd44bd4742a7bc3c9ee5d918938a5b3063060de303c711bad21c1733e7d808cdef49f052d244074d119a89964987b79012524b84b6b743cc224b66b576089de5ebee6bb6ef97288466de930af158f5f792efc011842e49b518177b5692ca01a18b9d8294517233fc44387ed0be7a8c560b9b93930a870f5a1d4d51917bdbc23f3d68b3acc5939ea492fab24103b9800b13a0630e1e74221f1f3ba3a972eca091a292c5cdfd8d9b646e02870efa8c296e65c6f60ff2dc02470e5a0d6e2acd62501d53e5c041274ef5a26a980fc182100b1c3768334bbc2c6d6a4ae6880dbaa4997de9be9f635e5ae0a881214be4757f9072d0a0fd14f495c8b3c298451354fc3ac6d80b295660c8a2dd10a6fa6e152f7f60c4a29528dae1311318b0e8936a4cdea49167e2984c80f18a4e7b3be5bcada32d27686880e18a3e261dfdfe0b956d0d462b3afd2b6bee712b030c56f429f173bec82a5df1b38a3645cf1939e9fcc57755d144d13cf92c99240d2aa50b3052d1e5ff1c594d55888fa96a01062a5a9dff149d92084966fc146d87e56626dd710186293a9d74624c788f2d49578ae6a275eccc180283149d7b47f2526241c49c1c459ff4a98c31c6674e5768c010451b3692e6e9183a336842d14cfc9c4274fec69c1518a0e84bc5e83d51c3fbe4824f80f1894e894de2f3918206d53dd1ece41893c8fe79af044627fa98e1ada3440e21aa47a3880c6070c22434639021e886792f52408c083036d1ba78b6182db17182f66168a2cbdd27b7945251b73418996862f42e251e83ae4ad241366cd43815d062015a943fc0c044afbd92bd84660d7fc126c0b844a7c23a5ebe24153391126058a27fbde89e2178cc13bd12cd28e15bdab48241892e2ea3484f534ea25359b5ac4db6e709db146048a2d79875ad3cb699fc104e028c48f4d9a489b87f5532e25d24c080443341ae5f5e5455caff11cde9079544122e27d483e188e6fd83ce22a4360a188d68e3e69821f5357810111e6030a209ca4ce6ebaf4180b188267ec90979654cd201188a683b54f485384a441bee59dbab62340621a2b3e0573a572c9535e810fdc5a05573c57039830cd155dcbc90532d447b216acedc2bb2728710bd25cbddd09d611e1f442f595bd67a43458e11449f4418ad27f42419e140b49e66f2324f40343234a6a4f0a5e3967f68749e4859b3f443af723232470f2953d9872ec824a36d6a4986910fcd75873c735a44266f0fad48cf498e7adccf123df49d4b76cc260b2642f2d029bd553adb273c34b2319a72f269cfb174872ec9b8b9c428d9a1d914ba4cd63cc5af43331a3f968a2dc93c4487c64da5dee0ea162e3487b645e4f25d3573e8e5d09568f89afa716882509a67638fe792c3a16d9d93922ffe864ee650f22d4becdfddd08508d918544d98dad0692dd1dea9393f61363441268f9167b237b4064dab245fd2514393ca3be575d2d0550e1ff162661775d1d02695a4e41c646758a3a5d0a749896098a1bfd28e6439289d35896094a1491dfea71d93280b22186468fb74a6656c12ef0fc118437f1ab183279dfbe24330c4d097e787c80eaf973204230ccdc68b4af23cb173856080a19710b3e48f3927991482f1857e649f5885242f74da9b444e122e3dfb2e74ad31a6c95536ff870b8d57680e9db42d74d273d894dbc2fe470b5de66c268457c59cf12c34f244a490920c163acf9774c7a8b942232b8518239b8bff56e8847ecd1a77ae42a72ca63032bf5468ce5487f4acad9d5551bc048c2974ea33739173d53d2a85fe339b4e525946ac1985f385cc4aaa978701853e97a88888a99874ee613ca1d1a4f3891f21dfa5b29806184ee83292d6a484f80acf35a1f71847e5a304613a4ce8573eeb5998f7cb9225341277d3e299ce652aa135912765c8ae9b92d0a4a87e7da552e3558f8446a5ece8d73ee13f47e8d537454e5e32c279a2fc53d27e119a9cb44e8436a8a859a9639365cd109a1d0f1a926cc62e59089d88216772c8244b8583d0c9201b1ae20919740c843657588d31c1c4a99861fca0330b2e2aa852a9211f74319e2166b810dbdd1e349b41b2e859d22985078d8e961b972ca9c8eda0d314f2e57bcc60aad441a7a2f23d29b1b99e1cb43a1bcd37c583833e441eed90d4b9417b398bdcff581f9d6483369ca448217905793e8c1ab4262c79aace3817e477000c1a342beb9621ec678d8f0360167df6d1e369dd3959fe0040169ddefd501ada62e63d165df8072df194679306168d9c5ade9591417f7e45a7fa1753533637775dd1bf68c5ab9456498b025afb09d32621451bde3293f8ac3a106314bd69488cd518e6e348146d86af9f90d93cf37e28da0ae37ef263653c088afee7f74db8040d2a399fe84dfae49da4fd2af89e6847e7dfddee37193bef443b7bfa1da3674e34d6a5ddd14fde44274d44ef27cbd9174db4fef29d93ea33d14f121322f989897e35690e498e97e827454929f3b796689487389b93aa9568a478274b9a7d738a2a259af15e27d1e80e23eb164b844eaa24da902764ce195358fd22d19ae6e7c43831c223098946e5e4a4b5b3fc049d47742a1f5b934bf0a41a47f49683997bca85d8b8119d6e131e613506955c46f4b1bee1347606d7b42ca2b1ca93d5948ce7c628a24b0fd94d44a3746c92b15d4444a3937e4cffa49fa28587e83be5893815e179644374792282687caf10fd76c6cc8e1de27972846884bef4dc991d44bfa93b6cf611427552104d70d14148c89674ca9140b491dbc3347c5c05150144a337c77275ec943ff4875e466bcc24c3a5e7df0f8dbc5c31f16296f2a60f5dc735655d412795b3c687469bb8876acf1492b53df4f143baa9c8eba19113b2a4542aa5889b872e79598829393c349f1725e910b9436fe26da52478c8a155daa19120e29c3e65964c8aead0755a4b904d21c6b0704103dd30460736829c498ae61dda194273c510316c17630e6d9011849e5429250bdaef2201378821873e87cc8990e4a4b896cd20461cfa9c3ae715a51ac4850d0d600c3810e2e64f393cd7458c37347943fc36abec9244c5865a20861b0e2d9f3aa518332c82186de84ff20915c2cf6496ee202fbee8828b0ac460c3a3c4476356d31ddd426d0dedeef855d03e7ba144b688a106940a22a696f3aec84e8c34b46a7d313a57100dfd9bf42ad31cb4208871863ee48b6147fb67c8e8ca0cbd5a126a72266acb46cbd0a5885c31c49c820e8841862e2d07694a54b80805628ca179b9ecf5127d8d2e0a046288a17dc93e5b395bf2592a0c7d902044cc24ac433efe31c0d007398f1674d42b75d3460d2ef00bfdc79c772eac660b3562d780185ee8fa749f2691cb7343880b1b1a4001c4e8423fa3bb31cc58ecd4202e346afd418af08c62f92e6ca4e006b241a38b44e3045f9815d0403752f0058d1a37ee1410630b4d96510df9f3b788cba18007688c208616fa922a5a31448f16d940df05b291c68b0cdce0420148ba305e7cf18018593846072b5de183486b58200616fa3599296c882c317c17e30a8a06955622e794df3841035cd08215ac2086153a21b20835511f49aa71a30b082ce06254a1eba025c34e90416a08a2421b2b787ca5d44fa10f29eec90f0f17e774a4d06528d38ded399b4d8f42134b9f66e5a0317ee550e8c4faeec91cb34a04f113da284aa6dcf59dd0784513b16f12f2e59ad086c61c5bf534c88d24139ae01aa31a4c281d8396d0fe69487942648d41a88426e44c42bca850e9b19284dee2a8d44134c8982712ba369152ced15b820ac12374b221426e76a91056ab184668ab3d06c993724568cb629293fb27421776ab947bf76b8887d029518d5319e3a62344086d49f889ddd13c8c2808bde65569b41015fc03842e6be81c4c89680af9079ddc710f2942add3f441db7a252ac60af244aa0610a3079d882da1b1cbe34513f2a0edc9ef97aabf183bb0190688a1038d9183d554453f5326e33c5ba8650c1cf4feba99a45888c4fc8521c60dba6832a55f83023366701121860d488c1a341aba54f89fe4166a0b405cd8d0401a62d0a0d99867b62fa714ccea98451b2956260bf1c5bbd2218bdc94d412934d5db425166ad0994b34853072621250000310173634b0c6b0e8ddbbba639fe7158d909d3764f93615f4ee8a2e36c6131a5fb6a28997fa2bd6d52f5f58d148d3b369c1eb58456bde164faee7e8997b55f46e4af27f692715ad7ca538d597f9a5cd53012aba10c453b0d2b6d84d323b08749ca2cd089b622d85e0a0c3144d124153c91e6525944e29fa985825fde43f3dee2045a327b4c38e06b10d3a46d1f98b0acf51914f26a9289a7909aa438c7952c643d188afa4626913174d8a1da0d8c36aa8f490f94f74319783c5e50c891f4f7491e365267ea9136d9c581df9cd5392b30e4e34416999a6ce29945bbc893e4365d589b2492f474df459829e1441980c5ab44c347a9358d11443ea56eb071d98e843c6ce4168d6583997a8e3125dcf5be68bf58fd1d394438725da20db651a29ab6548ed529082eba8449f62ff23ac29bd51e4450a68201570810eb27129a044575a7525450e1b2ba21d93e82c48d9caba1b49f4273537fbe5488f5871249acf97a36737c4cd6fe3d001897e5492450eb11b3a1ed19599523abf520ab27bef7044db65ea1e317eccbc25ed68449ffc94f94b081b3a18d16c5ece5e8e29d39845f469c1c2ae78bbe8ca1ca243115d1c8bc163a665a71827a2d19c7d534c2265a9753a10d1e59b85324d210143c72122d061883ec9b5a073bbbce46649143a0a61e7106d9d644692b5c0045e78613a08d1fe6891f1a94fd931883eaba7ec86ee82e8939c6e89a8f1927f0c3b02d1875a9c98a93d790801a28b2062cb857d4f79fc3fb4792dbb55d0ae2972f5431f563aa8591c9dbfec431f7cbb5c6265f9d0c844ed24de67e753b787265bb82c2d26f47a04e9a10fd99c4f4c2e954be279686367520bb264f0d0a90a417eae083a40c71dba70bda43a9c858a6dedd04597d51033af25a4a50efdeb075dd34187247d3af425a6cc7362d6e0fa1c7affd1d10b1a4264433934a64a4711b25172cc89439bc1d363356270e85f763e8e10157a2fd5f1864e871141cb8ee61456baa1d1397fe562e5dc54ec68031b1adda362580d9dcd202a4fe85843f3f139f563d051d7b380dd17c646d0a186563efcbd7fd64a6ffe06173d63c68c19643bd2d0e718f13321c28bb8301a9a20c4448596ceb79271c7199ad911ddb31e53ccd70c6d0ae2a374ce499e9b0f868e32b479469fa718e3e4530e197ad13f79f295d0142c1d43a3f7cabd7464f48f498718ba9470959c424718ba9ec961a3e99042c694143ac0d089247394b518d92139022e48806c9869a10107b4a0e30b9d0c5756b139fec538bd68c18d2e52400399c08b1370f1058d1174c185175e1813d8402aa8d1458d2e68786156f0057678218f20b63c365c1cd1d185664b5c366dc1ad246c3ab8d0c74d42886c3104cd0a756ca155df92f1902a62a1430bed093d5d592d47cb58b2d008fda65d93e83ab0d05b98dd111d254232a18e2b34b1a375a5e78bd1b3cd408715faa02ca514420c8b89b18e2a347fa69f2a7598091d54202be8984263d591426695cc7645081d52c0435cc4c8fbf259ee414714dad4e2c157dd82c61734be0bf48591187440a12d93aa273231469505293034bee0a2e3095dd0b9e6922ce5996990ec704263d6f92a9cf5b0e86842273a8c441da9593f7430a113b27294a45f39d5d21b44c7127acb89339ad9bb6daa2dd46c6800101d4ae8772c4c2e4d8b3cd5b051e3c617dc450dfd8e24f4e9a2c9e2bfb540e84042df23a762c41823a658b458c011facd5fe17c949bf6d53a8cd0a589dcf1355258e769015a68b1002d3420012dbca308bd26d31de4c4707153244213ab640a7ff24397e8d7d03184368e4c122f58940b1d42e882d2297b47d2a729fd2b7404a10308ed558eeb1d7d3455c4b650536202736a4820037b35f68b8e1f7491936e93f99292e5a7f541339b61729299f79c320b9831830a1d3d68dd4336ca6e47fe4f9a3103bbd0c1833668a4244fe8d2ca1f7aa1630755161d74c8411d90636cfcce49938830d13842838e1cac1f2ee67d5d6d025a2c6003df450a6a28e0ce051d3868b3d2b38ab21ed74ed12474dca090f924cf76c44e8db71774d8a0cd4f9e4c4b5b6cc970143a6a40d00eb92c26295b4b8a943dc6905237cc84f073b12233e8a0412745e45bd0a099e2e592058e5974b234c4caa4332e2ac7218b2ec83c3992ec921bc172ba48818d1b348e30073862d1853ea967d963e68f1f166da5a47fd37f2b9bc6385ed101c46e8f070d3a4b1992e7e4a5452d67166d8b0a72723283eae091c5e96dfd3185d763d16fee6a8a95a6ab840c2cdacb722574894a4a7ccc2b5af9cf49269932c94cec8a26c9aca4613777ec0db7a293d6f159f4e57b8999156d9c31512d1f82759057d16e859cff7f5bcc3456451b23aa5290f225a3bea9e893ee98f466d00961b3a868cf82d86b114ba2c73d45af9ae2e1724842b2aaa6685284abccd9bb84ce6529ba4e52438a4ed34cbe7b4cb6c89551b49f4488d6de29e73389a2330f3997ff75ce178ade7d2b4591abd9a90445739ae468e506571ff1135d8acdcc3ca2f3442bfb2932998874a2d9f01f84080be1447fc1c3e25f75ce21b24db41ea3c3449a50e23fa689e65487afd63113ed78fa5f509d12c26598e844b4825ce81c31a74b74adafeda63c4fff966852cc9c8e3aca43c59b830054a2cda2474fbae63031534a74a9744637a8088d9f9b4417cdf22789fe620e5571a5e20044a2092a75b3800bb8308139818d1a14b0800500124d1e1143e4ff1fd15634b1a794521df4e78e6847db3c26a50e91b86944e76625fe620c233a0bc2472b77e96c3ab38826a5fc3fd934e6ae2715d1869cdd42eef6979613d17cffe95ca5f7a35588883e255319cd43087a21db001ca2d11cfa5407693244d7b9fff2f59bfe8ff942b49fa4863ed1c92c5a9c105dd06d72d6972cbbc90ca21d55c99242b482e83ce58a1b9f4074417549f41ce2f1530a882657cc5dc9cb4de6947fe8a35ee4edadd8ea6205c00f6d59c9346199f1ff7f1f9a7829678911bd840ee2436322fb547f6ff6d0eccc5e92244449efb81e5abf8cfc9672cf43a39410b5704289d8d9f1d0a8d88e1e4cb8c68f9b3bf4a2a22f2d0551412e6387e683ce8ddff46871db3a34592e2f63f8920efd6952193931a358509943bf495f62e9a7c8a10badce6d7ac3bc9318874ef9761ced51e7330c87f65255c87b26bb4b86bca18fd139b45c3b557ea649010fd0f000b881a083bb6802d08646071de244137fe13fce862e84a6184dfd644100d6d008d3d0d42372ce9d2235b49735e8114146e306a5a177d1190b7f19b3f2188200a0a1dd2043e88eed0d594a67683b37e9987354fb84c90ced96f20e7f9a452796cad0e5f90ac2aa82c8d02691ad2a9cba84b01943eb1f52b7787ee8a962e8ccf562e7ff9c688887a171131535a517181abd9f2d97e1fd421b52e8a4bfbf173a31b24f73501e23cb5de8f4877d89f1e3429be474731ed32b7d0bad6cd0fd884999a7546aa1b91c334b7ebf64a10d39061d4659b0d0c95c7afe543b4e3ecb15dad00defd2a61fdb3d2bf4992a8278ce27e4e4ae0a5d5b58afd896a3ab42a890124aa8c814daa857497e6e8ce7500aed7ed248397f4c149a3072c48589dcd0cfa0d05c1217f5741e0c017842a39ea3e9f4d0412fc59dd009193f527cbe099d12c94c5d4b57489909fd571ea1d9922e59262f21f398a39e4fe738a120004ae83556640e32f248086f12daed6c5224f426e3e88eba1da1cffa1e2dc94d12b4458cd0e495ef5c77ab08ed04b5321da1a4490c2601024084bee24a1042456f8c091a427fa1f32d73318c752f8446279d5fd24c74f4f6416842f6ceffa5b273df0384b69490393f68fbe4ff8b754cb654f141a756d95269baf7bc3d68c4ca3d66df2ae909f2a0f5a8955993bf3b68247e5221c82473ca4bd1600f0440076db8780d1dd3279afc396877467be69494f3c7240e1a11b2ef05f3cb5fba41632159a788de6d200036685d4e8f0c1743f2f65f83b6e43c4c4fb00240834e5f47164d25747bce2cdab8529d2723358698caa2112682a934af64c4a2dfa4d42568e865c0a2f7f18b173a4119aff882c8a932c2f2292f7507325c613364b4a2f5189344cd17835c32586133742063155d0991d5caa7a63fcbaa0a9b910ae473251321a8d813c838850c5370fd29c5f45fc4543a8e404629fa3dad61a5bb9a31a3c828649082a08c51304a958e9ed172438628faea0fe5c99484284a2914fd8f129f33276512b3078a6637a9363d49aac42022e313edba8cc6909783695001323cd16588698d9f5349d2934ef42147881617d65ae37500199c6883289daae2dd2cb4895e4563d03849a892d4cad0449f9364052dc1cd44a7faa2548ca5e23c2531d1e79398f36e129d5d2c529071892e94760fb11da29a8b2cd167913aaeb14792d0984a7496654d5baeb41845fa04199468553f2451e155e73c49c6241a8b116dfa3789fcfcd338c88b2fc6204312fd96529d475f946f0d8a0433c2c257fbc79de41669e386173220d18ef4df30d9938fe83b8c7b0e56169ff2666e60e091c970442752577f84526a441373bc2cc133f2793e31a25321355b92d80bdea74574b2536911b3a8a6e349117de57cbf20533e659a94883eaebb44b312a9274e88e833c42d25e53d442349a595774992f21aa237efd5d3d1839752a64274217cfc50a2d2455e12211aa9d1df73e56cfd4a1a44133bef9f88a144142d1244e3166793d0e49eaba240f429650e1fcd67b78200d195c9d09d2a5d537cfe0f6de924a621f27297f87e6844b69652aaad71beef4373f23de69df9b890c48776ddb2969bf016a5b3873e08d5aea6924c6a8d1e1a8f99cd52489c13f2c943276764bcac664b423c7868633bf2e7abce1dfaadb0b174e5e7d98f1ddaeddcaa55d92f72f73a34f2e1528edce9d07fc795bf5e9de8253387369be6302375238736678b72264c45d7b089439bb182ccdda7f2879ee1d0bbc53391c286ded0f96565a8889df31676437b96b2e3be48b77c711b3acdd29b82f7e80d77d9d05e4b52423ee7ec11b38636cb7366cfb363b86a6833c790f59269519ed43434eaa6d71f328b9215454317444b4511c9516350cfe0a538bebafe31431f4353e991fa5d7a53862e271573b97c7ef44c863648acb220971c432b1ea2c9af4b317441868958527cad426168936e6a469fbc39ca60e832d4533fc79cd6b57ca16f2b15641ed3a1bc2c5e684ef3cba41c74c4e574a1f3523e29a6a44c79b9d07a2e55219c6bf08d6ea1b59077de3f84064bb1def1fc51f62fcc42974336dfb2de1cd53c2c342f292ca894cdb2abbb422b627734864cacd0fce989de5e323a4248153abda4c4442f19151ae1e6f12b47f4dd189b421b7325fd4dcdcdf19a14bab01a4ef495a2d04eaa60165b82e51c824257de91b2898ea944ff845e736a5bc8a613ba14544a1e63a926f4a77b79b437c2847edf63f4489a25f422ab272571ed318594d0770e4dd57c2ddd949791842ee81262345fb2b8a0c94082cd9071044b66e6ba4c2b7779a72537e5252c54d09b475d54c006ba01011946e84d7a773cd19b17f25484265772cb58d94484b63c3ec7ca7f51bc8286d0c58a2653e6e664f55e08fd85e738def359c9fb20b4114cbe67111d20b422dfcd4235339eee3f685743d85811333ee8c4c5ea13cf29c4bdb807bd9b871445fcd483cb83b6f449f9287262e2da1db42743b4c8313ae8a389d2b144a43272d0256f9390e443ee0fab0c1c745d22a8a5387a535954c60dba3439b94cff4cd4a494618346e95805c99e27722665d4a03f91536ff85f1166491934684d45a69894a423c665165d9414e6c265c7af1665d196f0bd9c3386b16893fb25fd39b6839560d1672b19b2349384bcde2bfa0bfd1bafccf7fb3c57b41b52aa9cdd57ab625ad167b4f4183ec6108498b0a24bd9ddb2cebbe61425ab68e7f4948a6bd0a07354d1ffe8a886144b4527e227469054d53a1a2a50594fa768640a4a08d3cc8d41a668fbb5279812c9644a4bd15a85375f70f1aba9e872e8fe92b2afa545360c8d47b2810f547c9cc26654e0c31436a314eda40e9a7f42102a6c5f981a295a1397e9b3117e135460c60c54c18c1946c350058465f1310aae82c7aa7c8dc7257c88a253a9bb2fc5207b9a310bf808456b61b4e366724fee21c6870f50f423c35384c8793fcfb23c7c7ca2f37c32d752598720623cd18c7ef7d4966d3d65ede1a3138db24c394a588ea5c1e7441fe2df573f76e6e0211f9be88390394263e79a68ad5c3e3493b6a718fbc8449f47291582d2fa97952a3dc20752c6e5e487571e29e1e312cd490ca933a9acb80cda405c9c59e0c3128dc65875e987b897afc439e5cc8ef59883c407253a1329fe58c8d6ea3b4fa295cddfe5f351464f761bf12189fef4c9e69c6aded7868d1a348c0de3452165f88844bbb31ebe2366ff6233351e0924d4f24c26f5c230f878441bf3f87b4c0be141366ad0b851a3860dfec287235a39bdbc3366229468d4f86b4413b78488a4cf67534b5f703102634457492bf3b454ced1750bb545f4a32a7a2c378bb14365111f8a68c36e0a3f49cb7cc59c88de5254f8b8fc1161d494d1fcb9d18f43f4a1c945cf07a59bc96388be7733563215f25188462f5e4485f4dcf8204493f5b53285b2247b928368f4c8f0123f59d4eb101b5bdc282788b6543849390925f11188ae2cb353237ce8cb1840743a7f9fd211b1cc111f7f68552e5c5b7835114da285061c40860f3f7442a8aeb89684e94b99213efa50a9595f3e9d59447cf0a1d9dc416c0842c9f812df433316af59434eedcb29c4871e7a0ff9f9286ad2a0a129f8c843e327848f251d96b9ac2f3ef0d028b1b8dd2174548a31093eeed059e9aa12b952c65225517cd8a117594954b85baaee9dc69fa0868d0674c1450318141f75684fa8e8999ededb2dda071dbab07192c62caf272d9f43bf9194cb09319b5d3372e8f4668a62399cdc0a390e7de69c1343deeace1de1d0a82a4b164344ded0c628a133e49651d1bba1fff512a9d42b2e78a80d6dfef4b0d9a3cf867e62969964534f32cf357431377cf2fea47c62a886f6258f48b122b545917ca4819054d0e1323baff8404333d27c541042452b7a1f67e8e4e9249eba295b280d14a02f886d023eccd095e549d194ac2d7c94a1919a4a45d18ea3f041864edb63c68f65321b949cf03186de4d66ad36a96b3a571f62e8ba53e9e64e4e930b73612ca0888f30f4124e84c66eac887a880f30607d7ca133ef73b324c25ee8458e6cc938fae842af25246913fb3d49c735111f5c68769452ed183b1724ffb1854e881c726f14911e34e6430b6dea1c540cbfa5b4c9fc47169afdf93f096349625c3fb0d0ce494a2268c81b0dfbb842db41b29a6b8aa4d5d2c387159a58953b4be4a435e8977cf8a842a3628a6cc1e573e5873fa8d0a98e3933e2b807c9291f5368aedda4566a5031841429b4dec13bc99072767cf811854e87387a92525fbe7c3ea0d0891c52b499186d619a8f27f41f3794f6efb0134fe5c3094d503a5a4a56f227bcc11f4d68837e1125773d86be7851434df0c184d65323afcabce5359d47376cd4281f4b687fcf623fbf77d264fa50429354e7f309b21d7a32aa858f24f4794b67ee12393ca412099dfc98a2beea294d910b1f47e86312793c53d21783788cd0c453315897b61f45e8b4770cfd8ce59aa2e483089dafaca61ce6fa1842934aa5e095ff7d08a119cf21b4629548a2c72dd45a80ce56f01184aeac336653493c9361207cfca059dfcb3985f07bd92a1f3e683fbb95d0d6a0123e7ad026995ac2e8a9dca66256f8e0413fdb1e4da28a9b28918f1db47a2966db75f53aa73e74d0c4f0bfab32a63f96f391833647517e2ab98b4660e350f08183467b5f5e7b5e3e6ed0ee883d7d115d4c495b804a50e3b1c6870d3addc9d7796619b30699c0bfe0c2046ebee08201c40c1f356884ec8a96533037f95172850f1ab441c7f39c621df164840a1eb368546cf1d8303aa2cc45165d8a8ceef175f488451b5736c48aeb15f27c0f58b4b9e33485dc1d337a660a1eafe87a444a1e235664f4de53f085122d34e00008c4c0c3158d05e14148aed8b3242ec131363450430313f068459739c2c9ce938498ace8f433683f0d19cd25c21bb78a362e64c26c9e184687e8a18a7e5358cf8cd09027a93778a4a2d7f55c6da94a5b87b43c50d156c89ceca0292157a8789ca21921b144c38798f0155374bd1bfac34af6e4ef4ad1784ea1df5bd1b2b8e6418a369bc57eab782afcaaa3e83fddf4cacfb6e54e8aa25322a648ee7c09451bce73eed121e9ecc1f200451bcf7470f9b8179295fc058f4f3449e719c931db21abec8926c4157d27da4e42098bb371c94d3f4e349e3d1a77b5bc33896f136d8c5b1673e45e8c61849a684c08a553ea6c3a622b5ba8b5c0c60d33b5cd4417d3ff3c01ba010163c346021260021398136460c68cd3820726da24443cab7947cc3cf1b8c4175fbcc0c3129dee8a074ba5ad93ea49013c2ad1f98628398f22f46f06081e94388f4934418cc8716a311a908016926874343dffdf3af488441f6337a3e824c52a5520d1e698887539d55934d885118f47f4b11e43661125f170441be3e91f279edb7cdd420d4d0b0d38400be2d188de22a5a0829ccb83114d121f446cf03725522d34e0002d3c16d1bbae67ca99740ca1816ea4c0901b5f0f45b4d982c8b62083580eba47221ab3d81583ba75bc8e37ba8000229a1054c94f396448cf9cc721fa2d93be1e460f4334214e8c14d6743c0ad1c4fd28395f5e66ae2c091e84e8a3682dbf5c0f92ab1a44934a8b4821a9283ac14310fde9b0bc2eab8a989a40f411773333bbbc2b7800a2b5ea10a9c2c9260f138f3ff417fd5aa405d5ba27b72178f8a1cf1f7a49741c1115e53eb4a34b4dc7d8cb830fcde8121b759492b124b8875e4ce7acf4f0a93a82f4d0997f571c9dab7c27de068f3cf4f12f7321c572c8d1e3a151e2bd4f92dccb41546af0b843bbde7a31c888650b310f3b34af29866fcdd5d117e251877b3ba81897ed84071dd4ec187954d6f06a0e4c502a3e6438913c8c481c3ce4508ea3c9b315072455b2a0944a1a3e2170488c10167aaeaf7d2b5bc6e0f18634879ad088397707c986c1c30de5539dee7b1de27b8df068039f5ab2ef0911bc3378b0c17e9f5df594121e6b20096149ae83fc450d9c864db22f04e5a1346ce26445b28ce79c3b7cbaa8d185a1e1b6d81cb9ee225c743d84c7198a78b9112c3465531e35c31fc5f572c9ea892796e1f0b927a2e9a0aa27433a25a1931a43795ec7e3c4f5ce3a3a4125c2430c98feef8aad34f122203cc290eaa096295c317880a178a931db3748b7d08b253cbe50c89510496abda61f273cbc502879319a29d1a754068f2e1897bf23a720a76744447870e11c4b7f25ddd94d786ce1129293d0e0a23475888716ccbfda2682ae485a1a97f0c88256f92946fc0adb3904070f2ca0da4dbeb9cbe6b0160b40273019983103121e5738fc9e0c32a322838715ca3ccf92495585ca523d5ca681060f2a202ec976140dcaf5ac84c714164f1274470ae7eb5130ecaa05218256b040c128a7154e9a9e0ca7113c9e70691f2d39756898283c9c80c8b3a629869b409ef95391425091094f8e9429358acc124e5152688d89516396e0a1049306f98ba3c93c7824e1491d41339784e0818463cc2456902f0bc152f9a898db4a6368887dd181c711ba2cf9ac547c7c26cdb9808711da0d310999498589200b108d1a37681c598147119a4b9dacb3494a2106dd83086ddcdc1b21e5e4d6da09ca093c86d05cfc7f5c8b39e93caa2f900a0c32019b8d139ce010e021842e27ed329d7313fa241e4168749e6769a920ba3af30042a743458bf4b936f9952dd490081e3fe8cd54f9ff785411ba0fbad6aaac494f452bb5076d94a04bccec8b96c983469be766c7df3c229576d096fc2443a5b21cacd341ef39b96628f14f328272d0abe9fca4df73cc31f6386862576ef9a0757216dda04d195376ccf8c58bdba0ed9493f809f978d4a00bda17945bcc038e2aa854f1241251281288c3c16014430164b66e01e31308001038200cc6a2b1609ae7daf80114000450281a423230161e281a14161a168d84a1502018120602e14028200a8443e18020cdf32ded014d4c28059208bdc5c19429d50a97effe23cd1f04452d2b7f00b7bacefb753b8d80ed8d0fb0a9989d231eeee4a6f7fde7ae7356f756c930ce4781763302e899078290fc0a09e95d4e4afe8d709cfd74bf2ed1c03ee68192544be6c069321038992262250eaab6a277a832184e2e722b4c29f6156a900af1a300ea6ec684c61418215ff072e4789b55b5d5425bdde6e6e931a3403627772f54d3bb85489b219b345b9e1efe0b7e62abcf296b7a255a639e859bd2a836e1cd01c03fa7a565293011111c00a8d2783b19a8f926b3681ac14111a128c2357bfe8683bc872384e930231d8ac6e66e31b61642688b30cbf1b934446d753f9fe4a44ec493097b319395c9b8061dc7d81664ec43c3bea25708fdd88a60d1dec6983190491164a9b5b8bbb039638e5959eaca0455269d4f8cf22846650909464763b1b600f84f1b8258d0bba67c76a81452c3a68ec52f738cf7a8b3949fc21dd178c4572b4da66655b19d22a9ba14e4959331178033c8aa1a48247177e0b7b2f38a22ccc8e7be638fe6a399696f91b2a0731f96bc89728b29596b02acf72a47417a2bc15ce9aac71437024497d48a05f4148eeae528310c72c02877dd0f7cb4aeca46d461545316288674baa63c5a962d682c4cae92a26eb3a833ebaee7c72d75bfc7a0459dd03fe6ff8add3ab57e49b17be0dd6da507d48071051ecace84da3ae0b8536cee00d18c69a30f659aebcbd9ee4a77fcf9034ec9b503dec624cfea604754d5d7eec11e73834c1c1078a44176f1940971114abfeb9329bc5dac7cb17ddac1406b51324b4a7660ac9a81147b7261e20a7fa901d89b0ce485d5931a305bf79d88a5ec40274e08ebb083571f3650607edf48f80b9c947315c094a0eaf1321240c00c9d77474c37417c95dfbec3d8b1d5b021248ccca78f19a67f49b23e8386d65f75d8defb314d510b1f4cfb461e97215a2323c5519123bfce2bf6bf2a10eb18229955c8f9c859ef95604d883404d111374e52b237be4d97243454aaec6a27eeb7ca3a7997eeffab2c07923b030c0e8780fb8bb6c831f2d01b3b0c8575569e60c953947dc39aab81ef28c39ffaccdcc9f6d3da6854c11a7c985225a3347145c6c57616c23b0b178640563fa55c7a210d62d3a1a5c71b667739a182dc25570191190b46b74462f87ad84a62e64708fef97e3530961dcd0325548a2c15dbd6de778faea87fe487db7ac331ee56e48d95e12aa0da2476b160b0087f42fd12678a57bbea824f8ff02d73890858640015b32fa83a806b080453947a023e0b1c3e6102c6e5bfb7833e4631429f30fc31f2c2949c378295d68bbafa35f343b79fdbd49598a79b2b63ed0687499a9c4f6f98b112721243ed249ec6e3cdb0359a7808c7e046bff4c0380520e4b9d15be945f71abf02b7b766868dc336341bcd987fb153c3f340fe6935ba0ce709837a00d15cff0785c0e97c0c64a601024595a4f0c3b056e8839e2198efadcc8af6075ad55d53a8035ff6958407cc20c67d21a3f8b947223d2a51077b7da99d19a0150ccbd96656f2481b0260db42fa7e506a3c4cd8dccc8084fb7d80b0b58880a33c41477af664281da5318538a8760058d322ca2aa7727f90c27d201d7d9d602169e64b8d0b689e448c8ade63293dfec39b5a640e0db52e76b72c3bb24ba3499d96d7e155e11244ffabf41a92de23553b51b37d01ee7921d72a91c044aee5438207adb60fc9260b475155773e976900d2224c497223a572dc621a65a6311b2e26ab4bb3d150bc285a6d26e268670c3a4a24dc08687262bd08db41034af769e66ae79510373cd17b7885ec7cdeea31d1e2369741c8f7827175decd368ddf05c1987167d96bcd2d73611585421be7a01e8bde8b398e578d30d1d5f4ae0e49fb1dc1008c554daf87efbafb897a32f2e8e5853a205d45923b62e65c4c1456b5ea73bfdacbe39f45625375578774902c71443f53e4f84a6cd1ee2a9bc601cfd2c8ffef63527b60253ab0a6d06da6ca70c1547ed91e4cbe171ddd0cd54f6200456943398a889161fc15ca010d3eb3227181403f6535c9c073345967492c2a98b47fa76b846b1e81f763bd614035f8629b414469484c84e7a0cc9f7bb349df14b88b5480eda425626a89358e7957d22d2b22d7b0a417d9b223cf07e253ae272bc60e047528781cfe68d2590aa7da8171e175023c4a8cbdf65d8e884399480ce9b3b3083cfb5d5666691b55f446b01b56cf4302d001a8c5e853909231a5e54bf762041e4e0fea498741c2f93130d2293704ce636d11c860b31b3bea9684774a4a5671243590c6c939e15c7ace2cac7a5c51a6c02c35b598bc6819856aeaa97aa4d9231185dbbe38d2deac25633ecc18a655ac15274a67ced2064eeccd0544c1bba7ead86312589541223107c3e99d2dce30fc6b9498bc26fb49786640c90b70a4c7344a5c9292bd3bc26956918a5f72d4cd86a282d6e1449cecf5dec49922d5b9a3db5d26c1d5a658dc65c0557bf583e9da67f63966b226006e16a8a5ec2da3cff31cd1f7490af92a71aa41b0d79e8830134ea167d80ff42b41bf8df502d41cf411b46fb1dc15d7ed30f00922ad75e1d19459ddb6ac098d9f67e9c45f7469b6c5ae80218c37818a23a1cf1f598cd5c0dca5245723f2d139cefc3a291f3d05db9bdb1dbe38b291bd4e824829225b820536442c328f072f8aaabf19d2e19416c536c9a5421593c336dec00b7e5e923aea1855fbc17bbc64d1fd8647b0c2009fa0a85e9b46fd5af78093cf886908788ba225eec5bb5c45368165882c1a82abb94744a67d2af8b61259c310ba3969b27e0a00e8e7822cac3a4db19a5a84877cffe613bb549d46ba7c8579b3d66534d5ea60e2c9a7719201b860e9e352fb53bd88ef399f5ac2986d8cb79d8af08120eebf99cded9a2be0e49d59df2f02917da4644981f86af84bfe02ea293da2e8996bd7c0a0b2cb9e867e6307f47bfdf9318cde8302e8160df78367b20a32131b37094ad43da354b5c2dca86fa9b7fd51c1e616f97dd86d731968ecb5a30e904fe7947fe6eb5ff9d940eba70de61c529c9ae0942286512aa97d679ac6b640880a205ec633cf7296c61028f36c103e8ada2c518b9d2a0b8d6e25fa3ee824bd1894e6696760048d6c1893e1020808b682eed6c01b4865a948d4bdb976c5b31b84c33a41fb453fb8b02e8c05b0604730473e72b292051fc251c1f4b30171a53880089efd4243d7c006c0974b42263d6ffeb88976691617ba169b7f9ecf6b717c1bf58a81c08100904321950f7211239b3e8a3b712be9faa8c6e3874f1b011bf94f269135df43806b965185ac21dd1f1a48ec763a0d7a6634e82e59231dfe440daec826a0f70574accf01caeeabc30dc74973a7d2e0d923fe8b5fe7d57c9c44ac7c4620a201ee1659a169a8ad0b0cb6052ccddc60aa9f7d677f0f2c729b960935791eec22aee741d8960099ff5880a4ff304f2b1e95912140a8d9aacc7a255cd02f662f7c08c976700cce44aa027fe5dc42f0708c73930b93563e8f699e56cfbcd2e38d2d8b4870058fe49ec59cd3a88246b27b272e18ed17b01262ec99f9bbb828baa1140f38790c663f904f2036601a0a28c41bb5273f70b2ae81c29a52ef7523b9139427201505ab893af07c01f627327dbb2b11e3b52af9218b227ef80b3fcb4340e1057e779b9d34d27c5554374cb3729bbd051eb445978043f157e76412cb192b54654e8708f8e837d6ff6f332bc62ef83df63489d89144995e4c6d3b43c91422e2bb6a2224075910f7805d4303a7f55fa98196f4fd6ca2550cc6b06cec1dd241fa47321ff161bb42bd0a89fe708986cc0e084276fec543617c9545927c539ecd2c012e31f63c360d644aa5ea2c50fe723e01863fbfc04b205593c800f77ba7e59b7081c08b87caf55191d010cc4272db1583b57ffc34f088d4ba677cd4d92284498967a18ed3efcc03817626cbbcc75129812be18782c005de39df04c23f5cf9d938109498d1b76df16451024efbd3dbf6666495fd20b1eb36f62ef8c13aec207009c2166db63611e29fcde02214ecfdd6b115ea68cadcb85c9ebd0258e8693cd3783a519579349a00acd880a307d00c7fc2789d3d94b12f4726978411ac1612a10b9a5d1c3ccb07fe9902ab7e6cdff6f953865cf777f589b9141305c2d75cce2d7b2efd88e36dbbe2303216d0a2eaebd6b01943d4e82b05a05f00f71b0a0be33874e06d2c071e5faa78525f8e9162cab89d4d3f68a6129ac0078757eef3820d8c0dc585c0828a9cdf6c8a7595e837190d12c3dd52d797eb0260758d7155f6cd5e2a26ece366139f277a315ce956a6fbc91341e3ee0ae822311e1b17efa3d1191d9d4b57d59587dfd0822342fa4640fa20b9eae77445ad54e048ce06197ff154c8ca1caa8e6749770ba2ab211ae5795e37796fd3f544cf942bdf236fe9f436adc56950145b736cf44a00a000a03e0980d10757216055d8ac92b2f9956a3cc9077f5db1e61dfb6dec39c7d368b5f199d45602fde49873b7759af28e020684679a79c077457d2816cc4d792e3f35573263bbc35d78ea1d338749420eb1651d10156ad2de63184f905e7a05cc396fefa74d7f619462ef33fabc1f734f4d3dd7154d3057ffee5289f68a981b1bb44922f1301e708b730c1734918c0fe8e7d9831e8c5df3adf416119e5066a73ef05d0c122dac8ce8a67bc41d2aea61bb3f848cda0ab2fe75a1d0cd7d9bcb3c16979fac4bdc5f7e287778fb101c3a6808274adb9303813bba0fe7517d2810a84710c1909a20bc1524dd2b3ca2cb53efb242dd5981d8247ff31ca17a92640f911a776c17071328ff985909c1a886726413bd707883516fd3da0301647d04c4322f37e4508e09ca4716519eeb057548abc2878873105600eb6ee28f75e02049ba41688e80155c182f137453f459e2a89ea0a53557958a015c8efeba9c49f257d85d6a3ef270763c758af7c014791dee7d428ff77e77f2c6668a8199715fdeef3006dd285c794f33849a95d3f8fb559e6f37f3b423db5d60b50a00225c5e5478b204b905f73ceb07e615b98b96e3ae05c96f5ceb25daf0175313478eb2927a3cd969d36a38037d9805b4bc9b64e9ad420a51186fc7626a00591ac81c9912713fd6c099b067617f60884e99cf1a61c6fd8ea1f814a4d58f07f1ff54627c15a874c1e858ed5734429232ac41bab9b364ec6b48433082d8e15806712c61bb3897843d5d07e81a23be4d056093d972298d115909b3f0f057a005f4a7a01ebe045e82419ef3697d691d46a540ba9cfa0995729ac82b585019a02eeba4f27cec0c171d2d145f6c01acc21fd4322887e844f428740374327a16ba057d1efd0dbd878e3a694e970981e725a9ef57c920c5546d60fba37acd2923d41f50decf29a372734ac4e1d493826e12d740c343a7117a82c6c2e3e1878ad4a947aa50b20c0eb5d72c8cd90d617c4be44f8c66e3c585dcf5b1c62bb43c651f65abcecee5ad23141ed4208f6a73c23a7665518831d6e814865c8872e9055dd0ee8fb0f5c79c489434c7c7c34b20ca6484d4b335111da8517a4393dc0b10b8f9a77d2050bec687efd477b073f138957178de8d430dad758fcf3bcfa3d73e4cb360ae10287d4439bd13c4ad3e376f746f587e9d20d096076709fc89f68808bba849931c8847151c6729c79a65191d89cc41d4e63e16493685122ea219cc6bd94300e476e00f13bd4807c0b9403c60fbc1092b34832033e903e073195c060fd08c0f027214e013610fa02f40038d2407a4de61cc89342b2ea36226c163905cb0cb95c1e9a8552d368475d840cc89f1cbbb65d897ea9a89b0fb559e9d266be3e38e6edf95a1cad00b7ddca4d9dcdd26ebe466987e00755ed90dcee7b80e47bfee6646552581396d66e740c35824b1195372c2f11c9e03d69133411b1574661b875b3aca99cd8c994d31aebf6fe6024527042eb1f1d2465c36c46033ce9bb11ebc08c20f494c19d70dec6cce1864ad82536583f17b331b639e3796704245e7c263e30b0289e44172685f5b8b6881d66a7f9598421a16e74c70c206c21bd2d660ca1c81d04bbf64b73609c79c0a011e22b4871515744ec2fba6634703bc38030095711a7e5e13cf163d32c947c052b41220c7bc3a86d470af1b12a8b3b1b3c3e73bd12f3b354529c4075e0f8756bc6b1c266fa36eec03f437f62d87a141d0a1618f7c108423cb2dff619418a28c5282c1ebf2e1b38293b3d2519cf4ba94f6c720096b8c4fd5bb54c4af95d59107c439510e5414500334de00c805e72f25b322ee758c2037afcb80f55133156c3d00ed941ce144ebc4cd80f21307424ba07090d60f0891f31cfa7a2386ad0acf6b2f0ca1b577b55cb85c58fb10b1821a767433c2ca0d3bdfa6b39b1a89774eb4fbb23215c383e8d604acb487f9357ecc429a13c697b14e648f18f22294f567c1ecc6072429d1d06fbbb8bf3f21da1407e4b4c9bf88d661b05f81cace3a10e451f436bb3a856e4e3957efbb077645556c99c19ab6e14fa4d991a3ec4f68113130d22b2f1bcbdc3a893b307b407a30845206dd9a3c2599e9d845f72df3ff8453284028450a54703e6d240f1060f55856680fde378132c9b59e19d45cd306a4e1dfd76efeb44302fb564563c2fe6ceb08bdc14ea306df4fdc11e6d6b05b8d12e47040d20f1081b586fda350ee2944b740e79e4fa9945136e9c6124e9293e29429bce803e84ce58a49fd02f5dd4574b980797c6c3403cbed40b263f5addb5a139d59d6fe024bfaf0c8ab6c751e22504a32b0d520639c170bac3b5b37b01547f7813cf7601bafd2d6d2a129f538fd6a24307889ed0e46f3dea9ed83e5800d929f9c12997d02cbc110fa67d868e8d4cbe951768f9657ac892550ef3d7378247bfbbc47de60f38690b06846d33eb4084ad2e3e24de81de96df24d059ee96df21ef8fd36bc215c35b8d51b52bfc78ecadadef68501ca3ebd054f8b6e209d9722f63d5ac9b36eab9e4e4fceec3b058186a29ad78577b9b7a4efbbe144f0486f8bb784ef911135f1664328b6e1f4040fb8c7dd676fbe53a4cb0f0ffe1fb187d8c068de197ddb840c0c7f046f4fe474dbcec323a527bcbe856c5f5fff8487a3798ffab2fe8853afa3b734bf47cac52d95f5b0c0e158000f1dad3dfadfc3c38ab63a01b9faf635640266b67cfc4b98c6a6383fbc43feaf75d15b06898896dd0718d2484559c244b32e9f2b59ed5b21f3fc6f1855886f8d4dbcf9c420753fe5b66206860d35f8d15023872831b730ca5ebd980dc69bcb4d62b26739d4ce98d3d7dc8e87e6337e3a9fd1cd1da2a1a4a1bab39f0998e0779f9ffe9aa87bf949b6045017ad655bd24e6843dbb7b6a79b52dd38020a39199e07587927f39300a5736e3d151c77945eacbfd42ee56f8e227f0932261c23d180124d29635a3f7e1664612910b836d3628a48e7f61916aac9ec39b56a1bdc25f55e7ac1a259a104b140063e508423a5bc64d13b17994464196a5f65933e599f8febcca45470569f1f857a34a672ced48851c61b2be3884626939f0c7feb66f6d642da3bccfde069d142b860be49d5ac34b4bdc6a11b13dc75cfd2ef4d1f5851ef0b2dd860eee674f528650b2ded76e3576d36213da756f6c6731fd8f5d310a650f7e4cf4bd897b63cc98271a235374c92e58e7e723069c89194cbe2c15332d0c5cc9cb6018374c5144f04ae7f30c998a6a70876bca7f6578e72611e286b34d8452c2533d0fd9f0198eff3f84ba8dcb54ec5186da290bb63a4fbbb0f38e1ee13fae7b34766a8f5675cdc18a18e650506281deb70a9e401424ccb6c657d64ba3bfb2b476aa25eea7426768d16b70652b4e268e8d08d072d794d8cc73da45d9827e2a68dc33e6efb7cbbe3059a2fa750c16dff88ba259eca90fa023750826712d01aeae1ac07780daf02664db79e3113b4602982a9a266bb973645af40a658455ba4416e96cab75e8e81369062e1a457e37cfbb6c340c4234c16d5fca57e31d8b8db1b1eff5d866545deea1ffc43336ed01f0491a081076f33f993709b961a7b69525ad1483217aae28d8b8648592ad15a9cb48d597f8341a1630c16af1f1f6c8dd227eacefb4bedcba58cd31672594e4ce7c1cb99d261ebc26d0f1ba9492797a46c418366a98bdd7cd69c7cb6a2ddf176b44c08c466e2ecf9508ace6efbf1c4156e68a26135e2b0c0c8247a49c7d9524535eeeb45319d93c9a1296607471600d9c5bf010ff1fd20cd8bf97079e944b2111022237c545c4ecbe34720dd27a38d9041f7c002c5dc317d3882cd5f507600cabc6999cdccd5390f8da68e42a4472cbec64439325ddafbc521e67f50812818880ee3d3c7b87f5ba9503223058c801488117887bd78f4f12f37116534413b241fc4019feab572b4bef6c8e0339866e220d48b2ad5b1d9348c232c1df8452772263ce043f1a31fb0a65e73a845e625e4e8324d5eba0fe56c9fcd07b17c0c1c65d44a1789ffb83087e52f82ab2e010801f4da8df7d725610bc21edf2072b59786c27e1f223c7e93fe4623f9e25ff3805c315a66f663bfef04b62a62c3422c5d30be0a2ae3bfa1f2b574db0bc5af809ecfbaf545bca074025a7df05b7835c77d7b5c8ad80043c89506491a10f4a5ef21992e6b2da97be36705c30e39fc5c01b305e298803c684445fd01588867e0c5f77a41539b5189e4e3faf8a8cccf50424eb4dd63922a8d6adbdbf8ed0f5f2609a92edaf772aff922108bd470b3f104a9c318d2fd1a206b9414c02c14bbd028dd8786844e4c38de398181de1649a7002196d63109c7b216275a913d123f6c5c1497d50fceec07db5d9ac3dbad5ab93967270588d67088203f604dd417a05a0812307168a9cfa0e89ba21ce49f41a48e8e2203d0c6490b5a9a97a4011e3603e30ad4d9dbfb2a2f9b4b83213e060102e215486383ab32f21d1e4640c6550c88881bfb008ecd2f4cfe04e17aa58c4719f80d5a519b45e24f08d15be8a0a7259ce5964edcb3f2b167b1053b4fcdaa682f9004dd2d1e59850c4d2eed4044de36c984080aaa87ca33ae729321f244d94b6841084b0b74cbe69438a050fdd711f43ed8524516c8481cc9838e1e41a33ee74c4efb888345872804c54f7ecc45a3b719cf289920b758126a4573b435570d049823ac429c00a2358ca2193a4a2a3bf276b06832bb7a40a85115c5ace2c1bdfb18fb45bf1c948b365fd6a547461c3c56fa871aa93d669fb51b271bb8bfee97cbfa5f0f81c3334120db24c8b716cda8c24b3616fff79f24429de5651a6aa9734a40077db8b106529de7a9b573e1c81c67da8c5452a402f02c976705345e1a929d684b9384e992c3876d0dd54f917256ee6b87f3b254537c903cae341e800db55831122a19872b2bb4d308245be8bd2141aeb7f3b97b49ef90987c6cfa07f8f0073ec9bf0b10d1212f47eb64deef0a245ab31c523e3cc8b2b110bcc97e9a8444ec9355582efc2375890e9be81045309ce44ae542925fb3a1ba397d864b1d09e45eb85074c74bf47a034c1077249ee811e611684e046474d899949446f622d875680a39043624724514b2e7c20a8ffe061d285c44e21324de580185d00b24dbe26dc0057b53317e6824dbb516d9a6d954012b451be060a24262eaf4a2418eae39b30edb82b1ecacc6a69bf54ddfa80168c394f29293881a25111d232ef2fb92d1cf9bbd8c7533486b711ce4a47056052183473d7a556b1283c7e465a46466b969546b6c88f8fb4095fe8d08676429e1c460cc8e4aae7a8526b4750b5f7a3c5b6c797c08fc76240241ec97a9dcfda1c567d2fae486097343ae0811084b03f67d4917fec99635565607248be373932ec09915ce3a4d870831ed2c59b530b0d05b46e91cd20322c50fe9f2f7ff99e16c1a8ea63f1b6e135f74763d348456ce68373af0794c75c2e580674b9be55c56529b3e587148b57312346f8316078773f91c7d0db01e1ac6e04e7cb2bc6878a58759c1fc9763142a5f5116fb42556fe89702f8a39fb4c68708c4991731b560acdea7b0d1632ccefc78c0119ac295b0234ee37bd1c07a9d966ef9c07283f386a1fa452e570132d84060ca38ca077e9af325aa6adfa1470049df2c6275a4ede753b32243f931a0b537d7ed11bd9149f27049c1a1e6cd6c55d8839da9de6799314b78479988d9aff3fb803ec87a6354c73f44c8f8fb760887fd4dce6b55aae20d466761230205edd3f4af0ae687e1de5cb1952d2905ae556c69bc5335881df67245c853bfe03bb1ec287e17854f2fa3a0f348e2e93ced8c3742352dcdba42d035b77a1dffa984c1bcfe57a56a8beb05344bda1664b17af205004672a00f3587f8ceb46241998098abdec53112db581f9752041ce10a29ed60fcf6a023a64b6eaa534a894c01f0c3e0d2e624de11a847b5b88624535bebbcdafc583f53a086a6030f4acb292908075079564dbe1bf7ae36935f062d2703381aa8b42e526b61c8d665d15a394f3373e460c8efb3e12641ad22258a88648679232741ae7d52e3682ed1adbe47e2a83910625957a49397297aa6d8a4f4d84cb097e27dba1bd3302745a765d937a4da111b729516d7089f5650f20a43a0d0f4de0d8a64e811ef5df72f158ff25c79358bbb1f99b6b00b2d876a8e21285dfaa232ce4515de0db49ec83d0282e224f830850a61f64644b69e833f4de51bde2742fa168ee37acf62cc3ab0285d3fe45ec0cd30b75b820fd2ea51fbb3db17b766f574b4e5c1e82ecedc7eb87c9c592368043e1e582916c9177ad37b806ca20ac36143526b888a9753889327a62384f9dad3628a4f27bacd3268917b5642229d462a05cc1c254ed71c2a83caa9063882d8428e6a6ea929a6ff07d07b372f00c9e63079ff1211218d537896948c08b04c070d81fc4a3b20f1b66ab9e800eaa1fb36e7123a38b50d2ed68e61e42c9df70cf61f5b1a28c6522c40e5f6a0cd3364d2b50dffb721dca0590fa13e57c5420532b2a6230e810d58be0e740324fb3938ca981e7dfd7b08f2fd169056853e1c8473a001e8ee79b3a988467d9eaf470f30ee073d6cbe78c648b15b832072d1d86e3d1b8e4b7793f651f68b579d262d86c94a69ef40036f452d6d4c6e1be66acef5fa5d4a7027a353d5eadaea9ceeda0dac2e091533284d71ce09dc4bb582259a3c39aeb0539c1fff5e114daed2e7ef0344a0d36f2d56ef4a09d3de3ca2ac850d0f46eab747daf772dbbd278fd266ef2cf948b1f8e2481344beb07d08dbd764df52c55f758f4f55f46aa30aa8b3d33efb75eb9d920cc10eda40110e26682fb9a9a1365ebd141f735ea688a5da50a5c61afd22eb4077c34bc7d0905d5117d608c8720c5369f5267d6dc0bee2fcae1b2d8f675a871835e6108edcee7a1dd8640b23d68d12814cd5141313638ce1400f6f28803e21b221d1f94fa0db278d8d3c2b04da8418c9ed3e129cc2a8b564b71c0326ef0e4098162d1f4e4545252aa9545c2a787a8112d17b9724875574a43dae6910d84ac07d2ca945c63179bab7f3003f14dff149d7336d054bb816fcb5b983592d14b6e05ceeb05a7f06a9ff963d8ce93174be7509bffce571838e429410637bb20a7385022f8cd4e281c8eb2d29ef9265c0d31c9ad74af3bb55cd898a9e071475704c0822dfdca383588ddc62c83ef2001b66b9be8928d0b278d33f9172d764652a7cb3f8034ae10709f04eaadda8ac239ea4292190c7a81bc01b70a98c0b29a6d2ca08e072d4fddaadbf2e274866077c42beafc77b95aa781d295d5ce126499f1a715bb3cdcc8f1fee9c7dcc5f79d26ae43d386dcc818a8909f334030799302a1656c44994042a4ef18b682c73f73a7764817af24891aa2fb2303cff148ba447e6ae57008984089470463b3a0c383b4e73a9e055141b1e95eb6a67c918062a851cfe2d1d954a56bfcf45263283062623974b41b9f8c17607e03accae7c2d4331316268ef094963f4c7ecd7d81f7a18ecdb3047b274acf88decc0c05dc02025dc089993aba36689b636483cc2075c915e9333923ca9ce17d3e78b8bc21fd8bcaf81ca033b52c602887154149ae650b98d3e298bdee8b656c0b2094f9bbd2d482a9154140a6cbb58afd3827d43a69762adbcaf792761981f938e59a44878b06fb42996b15e6b1a05d8a221a07860c29ee50c2ca225b525d08d1b9c915f0c4ad6030e0614bcb2030e982f2ef37fab8fda2577ec0480c5de7c85d36e0a66aee7c13559f6309ef05900450b6cbccc1307c80ee10a416bba058e7e96a5023f7e3043279eb4845dc07d1a5e74006c670d017840fbe2d6783631cafe190f258b4469e47db0310794d58ce22c97217ee0bb8a6a137f8d4ae847d028ae3ea38c7c674f5ee77e3693e988c717a9bb792aab668651e54cce75dfa7e551b480b8884c8a1b243264be9c6382acf8e6be702f7e74253c13af4a139dfdd5d6e0836c3ac273b3d56ed040927c68ac04c76f3a92a61791b27bdc23407a314e425305c5f44803f822d2b23dcffd77008198cbae71d86b5dd2224cf86c834d164bc13a9df48687020cc192188d205fe2054a2bf3f015e52d230a30365f0270d6b412ade95e4f90035993ca0403854fe95da9038a3dea7cdb7174d45fffcee568cee5140d48fd445045b86cf44cee28a82135f424a192f2270214aa50ae3e9544f16c367e24a4bb8ff2f7a080b03c544370861f8bd341613ffba13ca77ac4ba070648dd880e2d0cc76a01d6b507638c38dd534cd8e91fdcf651bfa3be684f24c42bdad2b96e01ea3c60af29221dd80cbf60047cdbcf774cd997929e6221bc9016740d9415cea7328c5043074ad77d57034bf3b6e40393bde00299948d2adcd0f5806376c5fb183a4f6fc2df600b51b483c9cb6cb5aea7730781531efc0b52d39fee679d09fb31b2602516b2d4ef05ac53def9be53b892744430ac14d8f83799e2c6879482c0d561143d7e264405c16737b367afca3cec61e65fc81a8318a3ad3646250bbce25d219728629a9b7174533f021baefbadfb7b0cf35e6de9c043ef655289a140fa607834c43bbf23a080014cd4ac2662b801ea814053e679d24a54f9aa6bfbdcf1c98638fe2da9483fe8388e024ff563752d0abd2cd43c6a9b51b64a0b7bae4da95ae2667eb0b5449ca4a34113e87a84397dbb306b0971405c0a0e83b47cab9ccd80a81e534c03bd323db32385b23556142aa1eddf361a0c29fcc6cb3c2adc73470a3e8d9b36455c684061d12318ea7b557348136e9a1e6353664605e034d7a8d158a86327ec07c85e57c25225997f2b7546a9c4228a73163e2d237f40b5a81b46b29aca51a633a6346be0a29b32f5474ad6d1a8370a51e8e60f7d80019461c906feb045802ba06ac6e5b2c0b2d2ce94edeab65db484d783a00166e3e393f2671b5080926f42e3f2c2a60812d30f88e1001e40e89c3b0a4b6b83ffc75c3e6d93b0d692b89e911eda09045d72688f01b8f549c421727d4a4fee547b03a98cd4a7919cf2459d5d22834428570b99b919e655daff69e79ad6eee5cb7d1c140baeafc5e4fd40d573c04c6cd60cb7220c7e1d7060763168bc1c94da67411cbe3c271b1f87f0dbd9fedea1dcafd3af6d1768dcad4ebfffefc83ee9bec6dc9becc77ea48bf5ae4bde1b9cb4a049472962de2da468db7fa96cc401456b8036d4310f4f26bf060d7f958ffdeb968edbf16008e0c0c31504bd557466d8cb4a3d721658b7496c3494527194e509c35b4652c3b2940f4f35fe4c9ba48100ecbd3ae0e81e1b384c736c7392b8a6c5c0cb23d9974a50d6d5ed82b32f9a73b67bd05044619003faba31e5390d05d1059ea20910ed37ee405e279554a3f9b285e5cca3416ccce812f458d84656d8dddb0eebf0042131ed58e3f330c4a11bf42512919b5412a0e65168721aa701b68c535a3ca5a307134228ea2656faef3bc5b6448f94f127133c8cd59d8740bba45f8dc568064d1a7b3bd59a189edbc99c6a861d275b13fc796f2a04bd3db424f01a34306811e0542346ab30ec23543d481394205871eb0990b7822706fbe70e363cf121a620ca00f9f06e1801c30ac9fd43633b06fa537d856d092e4072874941c820e787157dd47473233824706ad74c61c903aae5207ef915fcbfb8cc42eca37f18ab46208d3107671056229b50c072ae16dc483641cd83c67243d4cc34ea35434960ac115c08214df86f14751f2b48766c8270316f494c812eac402f45cfe2e0b819176c603f74ed60ce94e582c0077956c72e6b6de865f9c1dd1d11aeb338fc7184f19310e37055eb56619ae9655a06be2c53f93a9858871387b31e3268693088fd901684c005fb64593eff8aab07b89d9585ab72c21c11c086d35b77a19a59ab571438182c14e40c4a0e906d8accd1964b496306f26fd8a30aa33d4ea1b691b6688737c0024598069460c81f57079d7e77d3aff22d182ac4dbde706dc2574d10d2b2f164cec19281bab9630632a335508150b075be20c41a5e185e02cb1c335023044c029ee184e00b2f80b4940ef030c30c33cc30c30c33ccc06cb7579495128451152e0312015352a6dd125c245754fd27a154ff49281425f00b950bc20b34ee7c61913589cafb7731f7c27a31ccc1a6d88565a44e32e45c58ee5374a764681d735b582fcfae84445d0c4f0b6bef25fb8839437a9785a5ea53c8e83e641a87856557a2575843c63132526e9c636685b5fe3253a82c69945561ab8cd820ef4e6359a8b0c747e3b029ac1a2a657c5629e4ae4861e9e839e6a8f19ba3b0ddc73cace90a01a0b087a8e7a7127d4d2785004f584472689ade0c31430a019cb08898245d8fdbd1914280262c9d53ce251117212185004c58c2b233786cd0e82285004bd863d2bc29f24a58721e480c2149fc38095ba3ffcd2712d6fec760f3378e907d35bc98792a46584eb6cebc3243d4a914614fdda1d13344d8d4c7fad7eaa19743d8fb5264f28b091f85b05ab41875c3444993206c35bf11723b26b1a80061ed9bcb3e499d92ffc18e3a998afd379cb80fd624c95175be49b17bb0a54721797aee28270ff628996156fd0ef6b9b49a8ed7c1162d432635cbd09c1cecf72027bdbd9c1fe260bf18ab4ff3da87ee066bce5849890e016c60680aab71bcd762d5b4996366171ac769b1af75cc1b34e420293e8bed628afa84ef9c435c164b0ce1f5f3f058ec19a49fa49d69d786c516aa327a101b0db27ec566f951ce9b3a58feaed8b6bce681a54f9a5bb18a6518374164cb32acd8e6427752e3556cd760f2814555b148d294d365998acd1afc5e4e65323ea26253f3b5e8f9d13f8da7d8d3c678f7bd8f52064db16679e5b0f152ec0d2d37aa7f756e48b1f7ee8794b4e162f046b1a3c929a530d9daa828160939458a8f9042ca42b1f8d759aa7a460f03c5da20a5507339d2fd8945bb437268103723c513eb754a9fa5fd08e14eec30f6b266423da4e2c43e950ef4b33e34bf89ade185d43f67febb26d6e935136ba86ac8f01a9858aeb222ce7e89c55104d18a2db10499587ff93f460b914aacf1cc1a672a9f129bc487aa506a12f9492cd270c3aa28893dcba4e73abf3e8cc4d6319286f790d82fe4896097aa62fd2316499ffb1be638627f14bdb39e22ae7a1ab19edc4fccf9a39b1e462cba1226690699c65fc4965639428a22168978f4dd592b7d22b6b30a0da253a483882588ce349075349f436c1f72b206315c8edb104b4e6b9091e6ad8585d84263a88ba39d738a13624b195dc71cd383d852ba0679b720f64eda37957655431d88f557463353aed4a401c45ab9e5a75ec99265feb0c599258fbe212eef8735e5904fdd93cec3dc873d478b631e974358980f7b48c9df9df3b318ddc36a36dd208aa3fba8ea61fd34b98ad166cecfc35ae9ee573b63321d0f9bd704d5bdee90e33becc82f439cb4633da61d969ecf78c3f7442e598755e5632d787f2615e9b0e69fc78b328df18673d8fff6827cf88fc92387a57245eb60bb32f1386c579ef13ef9850fc361f910f37dfadeb09a8feae7a98e879c1b7614e33a1e8fb561b1f58ad9a4b161cf1cc3fa3a7c246159c336913244e96ccaa5a861d5307b0f1c250d6b9ca87955e3374d081af6f4b0ecd279e6869f61877d294d7327b39819f6924ab95f9f2eabcab06588b1953ea6f893618f667fb9e518c3f1ee16c37ae23075e7af8b7f18d6d03531a71a0c6b6ad8d48d527d613f9bf1ad3069df5179618dc9ee269c84c61855177618152665c79daba8b8b0c40e12bb31b88525358c4c9afedcdc6b619f1c73ee45f67ef65958c26c2cf53b1af6070b4bd49a448fd593972b6c1a6f2ef66185a5c74a3cdc36ce5761df8fc6f9b6f306091516f5245f69a229acaba97b12b614d690a931ec694631d75158ba92758c56e5183514b6fb90248314ead2cd4fd83ad766387a9fb5b213d695fc93379d4ddab8097b909c9212d5e3673013b670b8e1c42ae5145dc2be9f362773a4d45309ab4c88e88cd4242c0e5356d49d11f51409ebdc656810f6738ee9119664a271423ef5a0a91196cf60f22b2dc2f29fb6fea2335a4389b0a6e8f57be193c73c8425650ed14f2339e852085b4dec5c2995535e32086b5768e3918d2155202c13324c5c929ca1037fb06a7f486eb08fe4401f6ce171e7e7c369d07ab0c74f9a94373956c68325641c5a3f9dc1566e078b9fa49a902a22a64e07abd7e97dfc2d075b9dd5f7e66e9ad20680833d2c7ce876dc9861ca006eb0c9aa4ce4143a645819800dd6f239df894a2d165d8f8d6326b4583686ccc9633266b1c5fbb160510d592c9e43a50f31331e5d2316fb799a5cb4062c76589aca53f414a7d578c5963bf6178e57ff1cc3156b086962baffbe7cd168c50e2c6d8c9a9311e267c56ad213bf3b7cbeea57b1660c1723e29add7d54b18e45a42499f7613da9d81ff9fa7aa894b27250b18d68fda4cfbcdf38a7582c4b233490109677536cb33926ae3e8275bc144b5a7d06b939b6344e8afda3aac3eeb164e91ec53ad23026c57d28668b62a9e48f23444c89b909c592e591e976cb51cc80624f6311b52b74b0cc7c624f72f126f2cadcce9e5882d8cf568ec989dc891d389c0861232c82cc892d74ed6aae0a7f5d6e62c71191423fce983ea889352f87ef1c25754dccc48e92c58c3cc39ff59858533fd77adc28b6b9c49a3211f385c409de5962bbd3b4a039c6abc95562c997ce3b58d4f1c851623d0f4b1a376199ba496c31431c4958cfe44b629dd4ba4c4562fb7e743d69fa2787c422a13c74e6fc31a61fb146bd2c5feb384975c476396f98031bb15e0abb9bcd18b176bacd9b54cb3cb1456c8e2bda8a4711abd6d6df89c6675a12b1c7c7e12f45828865f5ccd4d18758266da428c9434ad0104b0841ab22a6a4b25521b68dab9ba2e6343b1521f60a1e257a4ed91007b16ec70e6fe829ef13c4b1d285ff4a20b614d7642c84cffd1880d8eb6a73f034918b3fac562973d6c43d188918e0c20f8b84db5331e910f7d387b52f7e08ab111927933db8e0c3a219544ad0f01135c65cec61471fa79ecf631e5d7c70a1871de8c7e025f7512d997f7091873572e65ffd44925013778187b5f45369af7d5cdc61b9897c141a3d044810002bb8b0c3be717ed36158f0dc74012eeab0c6895e556eae022ee8b084ff9fc6f8b0392c5f391f83f4d1b51d59960af80414702187e52eb482c7182a828b386cd3c8e36f44f7e4c75cc0619bb4493fe49cbc610719578a5be9dff80d372c7962c5a60ea3ba5eb7611d5dad7c9681aca40c1b96d988df39aec3f4399a12a02004ea031785740c3488cd986ad853f490f318ff7f3c4ac9818b342cd6b1236f326858268c7ac65831d2aaa736707186358711b9dc591391a10112b08027806986654b7e26c3ac2e6778199614e22ec5314a5d9923c3b2b1c6735dda8f929b8b31ac198544d565a5df3ce9e32980c0f11458406934c08518f68cabc369bedd45188802d2b800c3ea7132467135a6cea4b8f8c25e6be65931784a19243d602170e185f56f33928d24cd18f32eac1d255aaaadd9bd54920eb8e0c2aa0fc47365878cf7825bd8631c45de1472faa4980b2d6ce621c2aa2468dd45cd14e0220be4cca99286f419982420010b98043448c002264121010b9804a5062eb0a02eae80c4de8a1fc92f480a5080145c5881727c198564450609b0880b24900102d470838b2aa46b67b1117d16b8a0c21617f2511b1c835b0909501f708120b898c276397e672e7c296c19fd3932cb65e9d7f303175150248518b7c6c22e37257001853d7cf091903c3de1ecd3cd702f76c2d611677384ac09450c93ea1cc5c62c2270c1841dad2479e8977e3c1e2e96b0a79c3154b48d95b04acab8bf903e797a92b0fec5489f92679063a628c10512168777f1b71d4cfa4147d8634b2df5ac678455eb9257ea9c9f23f9e6a2084bca289b3ccfe6a14858c00226174458c3ad8784e93f84ad574f7eef2e6584bc10d6d31444522e0ac21e6b7a494d62fc6d18109691ab4e261d234770f183356236d776868f1e8710e2c2076b74908e51f8a85170d183bd26ff983a7868a13d0fb64719c32dcd0e96ac4e21c54cab32ce91004742c1850e96289d55d13ef85c485ce4403fcfc1244ee7689e708183356a8e6d90fc3925c79300c759810a42d00217a4e09ca0042d2072061737583b323a4d2ca433fa63706183d53f48c9cee65f4d0a5a5002a8c572d1761be5f0328d8a167b9f5ec8c818f7045343a00217cc6293f960255a8f52c89d8215a80064b184280db9f303ebda42a00217a4600523388cc516524c49f6c1a466947356f00280c5621dbf4f4ea39a7d4e0201bc620fc9b721018e12b86239aba84953f45535c909a0159ba7cc9b83940247810b8a0058b16378f1ff22af588ae5a1809238cad4997254ec3858665db20b299e62ab3cc7e1fc633a889b628f982cc4e6af7c0e2fc536c92e3dacc8733c2996dcef591fcf57fb28b69c4be5a79671cc45b184fc8612d2a1d8462aff6ede550941b1e4cce49dad3fb1c34e0de3133aa44a7b62c92921333adc893d2722e4e306ba29cc89d553561e2fbba8066f623991b44b3712724635b1e7ff358e13d2624433b175e694f61bf5a410c5c42665969116b17de625d6b98cd42497d51869893d644489c3989629566295f9b83719ee841129b196696c64df8d2c8793582d5de84f158ffb25b16546ce7c5717b647629b3ed97f1483c48eea2fc98a75d8658f58ad4a32dedf8c1e64a948ca30a79c2e8dd8614c1afb415fca97c2887d1ae6fd141ca54e9545ec1d19abe520e5bc13456cb5791b36ce29224312b15ee6df6e79a6e80822b6ff0c534638afa89143ec1f1e7e3436764a8821f6db7850f3407e2d5288fd63fa09dd4e41bb22c4f213ac4225bffcf031887562a7e5cf11e582c30862471fbda2e395c3354c20b634e1be37c5ccf3c900020f632924e490f9c39a4954c5ef320c32193f2c9e974f33eaf20a92e9c37a9126d433f80d15193eacb519cea2d457467d0f8b86f8a871a3d80d5d0f9b43c7c0e1fd597d9d87fd5277a42f1b0f3b48b9ae0c4fa25c7d871de8c544ed3471bb1d5607a142f80bfb7f9a3aac93e1a610267aecd3d0616b1c63648ea6984a338735d9c5a025a91c05590efb7648893f575e13c7619f7ab42395f3f446e1b0c5ba5cb3b5248fa26fd8337ae029d3acf9c70d6be50d8f3ddbb0a6cbc7f87250c975b2614996213af0b814d25cc31afde32447a31a96af304fdb99b9f397866d63d5e31083a6c40f0deb3fd89e1462ecc4cfb0979e86e7dbccb04fadcd496d9ca9ad0c46c889f969636458c33b226cd467e86c0cfbe40d1a272696268918b6f0e49f24ddc478240c7b8ab1be42a4e4d702c3be9ee773e3d7ebd51756297fb017f6cac9fc739a883938b80b7bc820327ac76b540de6c2521ba1c7dec29653ca9228a21a72b4b0af7c4e1b72cb73b2b0c4be502184df491a622c2cd7a0e1e752d194bfc27ac1d6cb22d3a3e05b61bd8c0fab18dd0e5661bbff99309afebf4285fd6364d3a138c8299fc23a3be161067ea91496463196a7f2e4688fc2728d337ca3f41002054239f4096be6ab8fdc8d13b69c62cab4fd2183946ec2127e928258cd843d8768214e928d8fb3842d75b4d0879f7186212579f8debb8c1a20093bcaed94b77398ccac06404212ad1ee585590d70842d8698c16495e6f5580d60842d34ecc7c44c4abdaa018ab023873134e5a4488eaa0188b0c5e73cf11f1fe65635c0108c88e13cc5a64258f5a224d9afb89dd220ecfb304cecbc68e549202cf62144c4e8ce9be70fc8d334e328f5c1ba39a5920c2c25d37ab067c74c6921a7c9c283d5f1578a118bd7a81d6c973b495fa54949a88325676d78e4b03a9c832dcab34266cf43fb70b05884d98db0016eb0f9ed59929463b20d60833d43680c571e634cd762d38994ae0e92ca365a6ce59579e26599876c16ebcaa6e4392d8ba56347326f701ba7120b4254585f7e082cb6890b3a9f24afd861e38c924c167a21ae587df36a4a6386dd542bf6524b29793566c619acd84ef4411ecd90f265ac62cb8892a531ca619e54156b8aba0d0d254dc5fa9dec33c61d31464851b18a5485b4611fa3fc2996865f9fb136c596418819220e6ce3538abd3603efa9f8197787147b4a8795cba8c46167145ccdc614c317c55227911c8552cb34144be48ee8f0bee35140a1e97c8ecce84face938c664ce78628f099330fed1f6d289553bc6ad1beb3c937262d308df08b12982a49b587208d1e8e2d4c49a8375f8ba485d6666625b75d8a3298989c51efd68a8d450c297d86ef5fb6c3b33382db17cee0fa9aa5436042bb1677aea483f25b69d1bbfd46f124b8c8f249608b183587d524b466295ce9a114df922e520b145c8a8543b95327dc41a21bf3ba9e57a9823d6b8fbf9444b571ba4116bd478e2386730624b79e3ab8d456cd5d1951eadc62f15b14de4470712652296cc172a55a5c1469488d8f14e0811f2432c0e7b67ce3ca59436c4a23a9b3af1d126b1105b0a676612cd43389e106b9e0693d2245fa906b137d0ccff1947108b6dc8d0f7e381d8bc37dcd56845e80d88bdcc32b4cfdf14eafec39ac14c7ed80f64663facfdd53d292d5a877dd8937d848fe9d3318e0f8b66a7682964f6b0a4e432558baccf8c1eb491cbe4614da1d632aec4491d0f5b4e8b14997285b9dc61cd2ba3214cd80efb8e66d8d761d3d068ef3287473d1db6aebd89701d9ed17358632c7d4621c6fe891c961da9e3b0448f3c9f3b16295238ec937faaf1966fd83cfb1ba8d7633049376ce61976694e1b36d1b08c2c579449b36189136262cccfcd415cc31aa25ff6afeeac04d5b0a38791cbf197862532564cca9d72900f0d4ec59d74ffd919969481afd984bc1033332cb142a70f21ef37cacab0c4b36a301b635856c8b0a694223e0a0bde371943718264dc618a6135fdf03c69ad1f858461898866a912d24c1c0c3b8ca222f131f95cbeb0c3f8c917292f0c63929f4f9d2e2c3dde17e5e3c2be3166f23fd354d916969c41260d39c646450b9b4ad09c9b9b668f2c6c1ef179f77258586a3f3ae3fb1443685c618b8f2e427c2b2c1599f32298c5b8abb087cc948bb5b4cd105261c9b974a4d164a783700acbe44717c57ff21a845258a3928f79a37cd4208cc2962726ff0e857d2648d0dc483ae34f58d55154e6749f24f74e58fdfca61fa627d99bb0e390c93871262c37292f65bc84ed7fc2f243543a54c2be8da18fa586d52409fb57cae89920610b3965f3dc5adec711965f89b90c1d236c6932fe8cbd1761cfd51f428e3b11969c435ce834f1d0f4216c237513736c3c945b087bea184b527ec8116382b06ca474c9bc338c9901829d91c5fc609dd018554829790a7db00713cf0cedf2f1b8077b69c5d97a1adb0bf340fb9061083f77b0448ad1a8526764a10ef6ccccdd73d11cecc1d2a74ebae260f59417fcd23d1af5069b68d97fe9868ab12c800db64a31595207d662138d8f1fad9ea58ed16235796821a76c16cb07d1dc9b7c37844c167b862aa5a9714c7d97582c8dec415a0e6b8c23b0a0e3c15ac6c82b9668de40f357f81042ce157bd2e825b7d5396675ad581a6e0e99a37de3781c2bf699d5f5cf8d55eca131fa4f7e5f5155ac3351638f65879ca662e94ea91e8d57be0d15fb68e5cb79256286d09d62eb8a9e4f1a434737c59aa193a33a8e61ea522c21a61aa768196b52ec17133fa5e419c59a329974c78862079b9529d453e77028b6d5c9b1dfb929920e8a25ba534e131f3d87fe893d48f4f0cfdc13ebd45a0a391d7d8a9d583c79d4cef913cee3c428ecd183bdf42636b9b8e239454d2c36d9bffbc9c4d6296d454729858bc1c496636288e972ec10bcc412f1a6d1fd47873963892daea18665b0f820a6124ba79e904eabe44286123bdaf81ffaa387d8f024facab14b29228925e434163b49065571243691885595ea72c881c45e296a8e681eb185f898320e3a62d5cf99b1316dc41e836418674e466cd53973d137d3d745ec1fb2be1e74a33215b1e7f8b1297a4a111113b18747919d6188271a44ec3b1e1c4594075a1e62df320f1663f633c3107be660dd783fa30c5d21368b93a2e58446b127c45f11b341ec397a6454c304b16887a9a4db29846481d8eed38760e653271640ac5fd231e5287b18ffc3e65b199c6fd845da0f7be8adbf86b19932e9c39e5149c5ea638c49f8b0a3bf0c0d6afb3f5e7bd866cc815e945e0a4b0f7ba418e2ff68a726f3b09f8d478ce77952888755bac3879043a7cdeeb0543eecc8976176d84c728a1baea3a264581df68c34adfce9b005fd7c3639849ce1cf61b34d4d1fd323873de59ea41d3c71d8663a6e2429d5d10e1cb69c4226b3c98a957cc39e36f5a4676ed8d26668e2b037e64b1bf691af4e0f1bd69831136fb66343d6b0cce30a793f58f84b0d7b8786a761cb182f4ce41b0debaa5a4ef1332cf11764e233525e6d8635376ce01b19e7545386ad7187ece64d957b32ac9e77f93a935458790cfb74ac880f736edf6258b31ade3e7450936918560de14953504f2a2618f6b20c3beb3f4ddacddba0c60d291c4ca3061a369c53a315ac3a3fbc8641cee07963faf0861a0e27296d54a434330d8b65ac4d954a46c3921ee4ba7c55f93e83cf90a4fccad0347277ccb07e88ceabaa6a19dc8dc9221faa850c3d8a762be36d3106c32fc3ddf1dd88c5b00739bff028a68bba64184cd65b551f18ba4b7d9e2dbe40085baa8f26cd636e0b2f94d673a7e64ba1f1648b2e64f125df202b565b708198a972904d773bea165b70e52fe3dc7b90e35ab6d00231d7a306975e6b626f9105265599390efe116e81857167f0c053780cecdce20af7af64ed4e56d8417e8aca971954f058159a94c6d46472c3b105158af21f7b2cc314f32da6a05f2e9fd248e1f8b2f4d57f1c6514d87a90ab2a28181b723a5e4912299fb0cc84901bd7cee25d8a13b0896a19393761f59443e679d4b852086102f1c258d8e9de8d6b2ea19378b18e1fe77a5c5182fb69ae27322f9f684930ca878bc142dcd48f04c246a9cd2166f807cf11ea4bcb540deea6ff63844d9335f0cd31c38cd145d8a208fb4cddc4f2be9ca1812ae013902d88c089845892a39d9443e83c642c0f9d777521943966fc98a2240cc2d215c7724fd41063f84038c709923a5db07fb0578afe485ba1ce82c6077b67d49d3f3492ae997bb086c7bb69bdaf3fd43cf827adeaf94ef53bd834c3ad9c399de588ea60e98f5ba7be16d342748b1c1cb5f1924e78f0a12d70b06a0789b7973a91e17983a5ea1a7d384fa91fba2d6cb06a0aaafb19c72bd5a516cba4dc6e181ba48c41082dca88150ee56294cb2c88fd18e1eb3c2e8b25a793a419c272e532166ba7208d3cf467e49082c595d12186f02b96adf031c8dde5fb10a9800057e8115917d919ba6a051f7a5219c38b21ca8a6f3fa4b829fc5ccc2ad2927c3975aea4a02a6a74a6c294a33fb0f3a83d39820a233cea587b39c548bec2f53688914c617857a3cca1521031d4a62e5f9d9214cb9a7ceda4cb9f1d8fe20e315546f7668c8ac214338c9c799aa160cdc2a1c68e910f50ac6b3915435889f0557fc2c8d1a672de134fb8be0cae4e94eac31e23d190724ed45b9d111a9bd8532b4b1c6e4613a677dde718bda3f16522af549fe23208198d89ad4c6c63487f0d2fa824a84b7497a342ce6c091f487a6851520963daf87f3c0e4a146516d3f924ca308caa7e92b82e6598a48ec4294fe7102f8ae419126703bf0dd5a33b7e3f8214f13d12710421544deabb11de7c0c35592280119b87dc0d523c9ddcd459c41ad724d5e3e9c779374411d738cac939f82511cbc646d3b03626fb0c47c492316ee7cda83ec452bf3d293ee89f8aa021f6b0f1472a836d18f35a88519e9826248aa4602321b6ac4b21c41ae7d506b1df787eb81237ee4453103bbe1c6237db71bdcc40943fdde83a0c0826e451cbad3021f7873d7459fcee0efaa1bb92fbb067456864b7231f76f0c032a5897b58bbd2e2a3348d793ad2c3f2e761aaa36485ef97876df3224e2ea6b58d142420000f7b4418b3bc31a21a7977582e43d539d3701332cc0e3bcedcf16127779aba3a68daa3bd693767381df6bc117732a6183fa5d81cc8d191d9f9e5fc4fe4b046b5f4739bccefe171307e7c982125f72c70d8f1e449e9386afa0c9737a036b73ae369c173c39a651b73de20f63ad28625e4f3a01e532e040860c31ef2a44ba426a4ce1ab694ee4da0068365506b19591af67073f1a53a1acc10d988a9caaba27f867d2fc620f10dd71a64cc50c6e39ba33fca259561c9a8e3eb61a4d01d93c11c69fae0b452f73a8635ac727949cce49b9e18ac6cd48da265493d8a860af80404060808c3729a1e2f4ac69ef88d54019f8034010160d82cc614b6cb2c76b4ad0208f8c296633a355e29047861052d500102ba801f400017324b7114322ba41720600b85002d6cd3f863cc7a04062bd8801610908522daac0669f0974200169610c36720296659e9e50908b8c21a39d9512468694f0a02acb03e90add4b9af0adb9d7786d854deb71a1536cb29c944c5b06821ee02044c61a990e3e3bd1d2aefc70202a4b0efdffd2507f171ce5e3c404014b6a9cc557e663b111a00800202a0b0d6c45863214499e59fb045c74175b72c3fe49db078066992e7b8c839a709fb6c547fa6de8fde61c2122d5423ad54f1bcb3847526a36eac57beca51c2b2e919a58816a33c4e12965092267210097ba673b0b72651e311d6e04973d0f4b8ba7223ac633ba23169d132bc08abdd67fc950b517288b0a7789a39c57d8c9243586cec6a1de5fe241a21ac2a6937839de8e64c1096799c71fae4f99001c2d63177e8fcfd2106f5075ba6b4982ca73ed8f34f3d62d80cc3cf1e6cf31d4bf2e6c196ca81e7fa928ff10e160b99dbb8e359a6e860f33c76b7f3b163ca1cec203ce25138f04e1f0e96aff98b1ae672c36fb027c7d77396610835026cb0e4b0b2741967726ab1c7f1dca92ae3a4f0f28a9ab4592c17aec43668b258a63365638314692eb1d87ef284181a65eca4c0627b54315127381ccd2bb64cff69713bcf86892bf68e7fd429ef649c9056ac9ab2328244f748082bb69849e9fd4af90859c5e6bfd1196f279b0651c516cd61aa89b1423e2b159bec26ad0ed251ce42c59e32aadc8d758ab553f587aebc5dab4cb1767aca91f37c6c74299609931ea7c8d111a627c5e2911cc36f0c7310e947b1fa972f8afdd31fa4f37836df876249adfc205e1e143bbe8af9945babf927d6b08dc631ce209e399ed872fe4892b3d3d49d4eec1f7af7d166f4ed39b15d6acadbbbc731dec4ded051a7dc3d4a514d2cb1a1a6ddbd50f16562ab7079f25c98581a3c28c94f3f69f24b7ca97565d13796d834a37ca17c53893d3eed84c75d99364c892574ac867ea2521a9ec41ec3ffa7e53899332c8935a96ade509aeb668dc422197d4ad126eb4e85c41647f441846aca481fb14fc69f6728d7a8928ef8433c34c9343662c9c124724bf3658d8cd86177dc06da9552e616b177baccd59453c4965d9aee3baac8e412b199693c10558f2107119ba4b01bfaea3fa387582a86d0602e37c46686d8a2f4674612531f5921b650cd380709b1afa7c88f56ad265306b1ec6ad09a1411c4e22806b98a5720d69b4a76e927a7370588cdb7e452567fd8d2e41ec9ed87f52698e398696f33461fd6101fbf95310e1ff6bc9291bb2b2f5874f6b0a59fffa30c3a7ad824e74e1fe367d4cee761d528fb1904bfd3fcf1b07c944a1331e6a896bfc31a5151d2bc7248ebedb0c790738819fa3a6c357661b2427fa60f1d3687394ff7672b87670edb9aa965e83161abcb612bf3523bebc738f3382c9627eca7bde1b0e7a4ddf5111e62b2dfb0860f71c31ef453ceb00fe96bc396d144138df24751b361cd8f6c1c33e66c6ed6b0ec95cc38dad849aa1a5647173f44f754f4342c979927f8458a1b346c7219f54cb33ce4ceb0248906318566865542f4838d29c3629e2753a4a9f8294886f5e3e4cec01c07916f0c3bfe14672ef7e6fa62d843947bf465b6410fc392973f43aa0d0cebdcc4b554d917b61852bc512f99f8bdb05d4ea317c32ce6dd85451d793f0ef9bd1b2e6c395338af8876312e5b58f2830f1e42a4d0b568614d6932c71cad42fe2cac5d5e271e828525a95ffe360a1934728535a654fbe12056d834a3dc1c371e37af2aec791a1b3a6c709a2b2aac62a37177f7ac3fc3a7b07772d097f3e452583afa2e4d5fa5c67d14767ce3c0cef250d82e44ac52ad10397a9eb0f83abee87b6877394ed8ae4642f3f6262c9e338c6339a645cb99b0e6a5daaacb0b1ad34bd87f73c61999ec5edc4a581fe6f3e42984afd424617f0ca5e1a9c64c6690b0a38a90c26f0c8fa147d8ebf1e49e3429e5c946d8628c1cbad17a5e938bb06718d343f71a598489b0d6c5d39fcb341a1fc2962639a6447a838d10f68e9e73a99985d16410d6ce7198728f369813089ba846d49e44ba287fb044883432f5370e823ed863ae444edb9f235f0ff63fcfdf7bf2605b4f49f2f63d8ecbed60b9c990d915733da983cd3ac6470cb11c2c571a3e761e073b4e21c5bfbec17e3ad6c0414cb92ce5003658338fc6c50fa9c5fab5b67ad6152d2d5a6ce30f34eef13f4acf62f3d9d048351d6658165bc7da903a54cec08bc5fa403578d4e9cf28b0d83c8364142b798cbf62f38a922bd954c972c5aa167c321ee93a07752bcef1b124e7b362914b353bf52a7620b1347483349b8f2a9659eb1abde811d1938ab5826402a6d82b4d320ebef3413c5d8a8155f9cac73948b1c4cbb07329f562147bc59c3c7ce2edfef8a2582c25dc698e7ccaef8462bf739897e6626be2088a2bcf97c7da147d6295181e2235f973c8399e28c7f0d02924dd3bb14dd88ca5b90c27d6f828de9de41c78b189b56ed524a3460c9aeb923378a18965cc4b53ae94552f32b188c5ca39d97e4ad2680528a0ea0526f6c92ba28dd6fb3bf8f5e212fb4dc8133345dabe9cab18bcb0c47adf716573455e5462eb8a69191b471f255001af20051f022a94d82b2ec43cd363c4189100c78b496cdaeb510ffcce3bcc92586c22874ed76d90f888c412a4f15a90f5b30f1f2496ff8e31a77c3f622880022f1cb1563a938d899d532cc8178dd833c3cd7035060b1e5e3062cbe8e9394d4ab5f062115bde7b14198414954347021cfe42114b4444988efa2d4fed4522caab17ff5248db0b44103e37865c37aa123439bc38c41272f464e17b42cc7224c0d18266149c109c5e410a7e0c436c128e42da98611de7b5102f0ab1c94c68c94395308908b17879d8dc6d90e0c52096d8f7794e1b2599b5c81e5e08629bc91f9988113dbc08c49631beb8320e3e631c092016bfbae8d968457ccc0d1036bcf8c35619d3828688fa617b1c53e6d89f565f921b5ef461fb9442c4fa7cd882464afa4d68497ed6f0620f6be65ab15b7320b9173dec919df23493aa244fcf8b3cac96d26ff0cf14f7d402c10b3c2ca51d2d49ca502a897c87256efe381e33230b1aaa1df67c3c3944ee4d081c055649785187e5c26af2909347021c2c28c101e1051d964c8d29b62aa3d2f6831773702e45a554751a12e050810b42b082830214b8600572d8afcba1671c0b4a503c781187355edad4c4102b1d1f36780187fdc437ea2ae35bed9c00f4e0c51bb6ad7cb45799aa155eb861cd2719ae266da8f0a20d4bc70b92b3b7e10006ace2f0820dfb68f28bc8b95188a3d6b0d44507d91429d3ae230d2fd4b0fd68a464c34d1a769416e1e043f4c394816678818645d3e64e8ae22b9321768625522aa20489b1e9c4f2c20c740c9b49be6f423e1abc28c3e657599662a44fa99a0c7b4e513442723d061e84bcf4331293677821863dcf6f37762761d8c2aaa7fdcac47fb0bfe105188c59697e61a94b873963b0b317e6175e581c57f851471a2b661032bce8c296414a1e1a636383fa7061935bcff321c764200213a830bcd8c292f77b6762936288ff0b2fb4b0df861f5bcf19e48f2bc1f0220b8bc5c5d98ec63f3a8ef3c20b2cec781e5814d93804ac0b2fae509e2032493f4aacb043cb0bb241ad3603130355d8629c9c6617d4c2851754d8632505d1ccaff9bcc9c28b29ac5b3b9a9d2168c44eb5a0042738410a2040627821854dfffe364af5e6cd79155e4461b58fdfa1b687c292e3ab529e077d21ff844da3ef5590af1b0bbf13b6bdcf0f9d51ccbde0376195cd8fbb7e1c8f5a9e09ab5928cb13952186d02f61910c2ea71c16493be72861b393b8a91ba883879f24ac3e7a49aa3348d8aa1e5c2a8dfbe4d939c21229c5b0173aeec146d8829c5de6f2e968781136b313e9f1a413617da0ffb04cf421ec38c50b36297ea93b4258ac4cb673bc83b0a3dc94d25977881005c232b2db912f4a7a247fb07a08c9f038d83ed8c461865bd6289f4cba077bba1c2aab661e6ce331e73b2c7e0eb91dac528e3e2a3eca9ec4e860cb39524685d6c9fd39582292a3d57c29192b0ef6edb862e3971becd529922f7e6183c53b44d2a43dbe97d7628b0c53ca8de930874c8b7d83850c0faf42f867b1e4eb8f5155c7a7cb62eda095516faab1d83444becb3214164bc80ade61fab126455fb14709e9a7275f0ceabb62870d92ad58e2a798ffe88f7d352bd68bf13841e3556c5121443285dee75315eb35d00c82467c9cc7542c293fac68aab3217da85864abd4638c7afa254fb184069e766e4a53eca59ac3e5092a21674ab1864f48dea591628fde8a99cf736e221cc5969b42080d6a516c19c2d7314809c5be29fef3079b249271a0582f53de4495ee137b88a0693288e9b28f27b6dc68f3b191e38d7827160f51ba5337f3610c2756bdffb0331bdbc48e3e6620a3fba0a2c634b1e3f8b973fe78e8155a26f6901ca6f0b486d2996162dd4c12c25a46c3906297d8bb726cd4a1b7c452d52987b8b121525e891d83ed4e7ea21532a6c47e658df3a6929ca84e6251bbfc5ad91c2d7845123b5af3d47539550ead4462b95499aed2d4c9570a24d6c6b9cb6388f1f2e18fd826e7bdbc9876c45ee217f3f2a7c52f1bb1af35d4b01e2e98a43062bfe8d49891832c62b9358d7be9a3886d74a2c7d86022741c47bca32a44ec3395ba2be487d8343a7a089a1a3e850db169c6e321a4c40c211662f98f20bb16579b1b21f63dcdd3b38c416c31435f10ebf9e5f05907629bc9f3d0fa2b233901b14d0a310f24c76420fe61cf193c0c62b9cbbaf3837b399d61a646a4484049d3867e464f397cd86f42587e6c04bb59f7b09cccc846a5f75fc69d15a400026348801ef64b1e76b13f278c4c13186448401e16d91c24e55c0a416388031280872d49de1c292eb3f3ee77c0f143d3d8618f7a7e97e294803a2cc14e82c6cc44c81425800edb07db103f447a7bd42c24600e6b06c9ff915806329d2287c5e7cb1a6c6c8c655602e2b0ed6d374c27ea1b360e873d73bb3baf826fd872de67dce931a8900037ec305e70589981752a4d0afc76908036ec132583d093197863582212c086bd435a6c48f5d1c4336b586cb427bd63a395058f9000356c3a799e9ab557e9b934ac19279eef780c11d3868635f49637dcf50cab370e0b0f43c40cab838b3c16559661f9fa183455c75648001938cdf55dfbb25cbdc7509e4e4e35958a9592003160b1bec385f9cd5b02c2b055744cfd97e9325f1e0c6b978e56dce67c61394ff3f18edc0b4bda953faaf18ff8bb0bdb54a5182b111fa66ab8b059f66e64edf55590b7b0c6cbe599ea206758392dec6725bd1f5e16360bb77bf1308447a3b0708e7cfcafb0839888cf906f633e8f15b6d29826a5709c2aac7266e128edc6e89f0a9b848f168d7b9fc29651a5538c649edb5c0ae60c614b6b8cc20ee2498fcc9d46896928ac725ddd3f214fd8b461ce90133b619f0c1be4a4b3366195becf509b244c1887d95c692e613fdd585ac92f4645aa84bdf26474929c3d219f0432f47590b0579de470910efad379846dc5227f0aba9ae49146d81be4987b152cc2667b129f728879233f220c35799fc6186d08a6b5d030ca877498040861bd86bf21197663f841d8614ec928131016ef6994914894798cf2832dcb63e5e750f1c11ee35427ed189aba931eecc8ecfbe3f6e241d3779bb50fac1dac52316c8879658e9ba183b5a3cb2fd41c6c199c64e8289d370a290138b842026eb0c510c16264a7cbcef904d860bb0e92eb91ce3ce6be16abaf7abaf415c75b3d2ddab5a0c961b3586d43eec9fb1dc1638e2c2e9fbc1a83240f21b1582ce7eec0628f2ae351ff7255795eb1c3dc611753c6903edd15ae83ce35eb5ab1647a7a8d679a158b54aa885d8d5ec51631380a2af153f8b851c5baa172cad214638ca949851e9346780e15c7c63df1692fd456fe14f883c9c042baa9cc147b67d0f9ecb314eb78ef9743d5580d23c5ea29634793141a85a358e7338d6dc5a2c871e646dc782896f814ed413c791cb68282fd49c7e84facd17427831a8d0d42ea891d670ea229bae2cc979db056e4625d9cb061e6e8912b2437b18ec65cf8bf142a2bd4c416d3c6984cc153e3106662f595dc40cbc7c462961ac3d87e67b42fb174889a46735f6c9c9c25081e33e7ff93e8b2129bc6cdf1e92846896d2336c838c6244cb08524d6928e7a933572a647629b90f267a68a39c31a126bc4cf2925e547ec1de3c54ef3b3f941c2c2168e18c510d3a6ae4f8e6bc4dea9d25a8558e9a764c412bfc44f6bd3791c17b1480aa12ea7fdecdd4a11cbec7e4a9fc29108196c81887574b3447d23de5ec621548f69fd732f8ac3106bec0a4f9f772188f4a01da2e434898c10e394bf97121c3488b5523585a3dd9b18fa2d04e176e847895c862f10868cf291089b620204b9a295c7fe7ff8e2536c1863cc3c3fec311d3bac560ce9f33eac12d2754d5a091f8e7ffc191f3bba876d323f24fec77cc39011b6d04391737bd65673cee581da94915069edb1051e8a39c95148ca8da19a2dee50a3fe18a5a31b73daed60cc213c586f8c145307a37ee79bb1e9f09664dfe59573d83bc3ca713e230379bc1cde580de9138ac336527e164f523a79070e7fc4358dfeee0df887cabce1e1862db7f264a49d89d5a8b488e64202a2c161a1b158281284c5e14d66082316188023f2602046611cca54e107148002541c0e182a1e0c10120c060a0a0a140e06000404040a10100c06080806080404040e3a0963d80ee707d446fbc186d2c22a53cc062bf8c675c9484bba79d89fda906f5baafa7940e8ff6115c038b46ab4de51014210b3b51962b936b89828585684ca282300a345b20f862400e87c7940010d8c7b1e920703145e57fea1a6c1edcfc41cd918549bfdb0bc487e1a612234980aa407d46a0da9d998cdc5cfb2fe444ed8c985574b18748b46d63c7b0bbc5f04b3de0063303e01bc95846305d35e040ae9e5da5cfb94fc4534117c4381adae2fa6c860b27338c1edd91c93020ebda2e76508de783b7f0e675c62fe8efbc6163551ab6d36eebcd32689789d7fb39e0b55225c77ac0018015d6ecea2e47fbe1122ded46fdec65c4335abe27fa2d297e434f3e5b41ceb35f0002e3e3c8589db7a0e6f618d9edad2ff13dd1e5a6d28ba9b001582d037a14005a5e1d18ae4f2dd465e50bd89e6b667e7d87d02f2305fee458cdd4577bf7beaeca13243ae370a80d96181e759cdd21647c9ec95812f8acfab39d3a57a26565b1de12a21358a0f1c73e25ec73c9895844fea90dba984bb3638769619a750f25f9da5a80a09d68d321bbb348eedae89565c263b33d75479ae8f6d66c84b571154f26f8a687d0283fefac40eac8b45b4e999ef54ed3e370822f21d079be3e0840b9ef28db2dc0c764c57721579585e184000d8fef07ccc4b405496086fc24dfcce4f50d1ab090207b59c9e1dc88b958a53855d2b78030eebf0d16936a45006ebe795626836a456cfd25a0d29e9dd168966251377fdf0e12c18e86b576755fcff543b4ec0793afdfe03f079c36e9e931682e08989d79c9f44e2a959f674187354f606cc1dbf5db8b5848dcc2c96092a195ed78b10f2673335d1c696899e5a6d106d09afbf0977dddb413d50a21298583fe044c1531dbb4ad2da5e6e75a06f2c035d41205cdbd614b9748751a46ec70f136ebea79eebfa3352d330fa0ac0b7d917a821e14ed2a9da5156abe8210e8af6b4a424258ed5fa757a657f662ed7504251ad4f0db3a7eb193b040b2a0aa6941f124d8e11ee0214e7aa8485e867400ac30e8b968f1eff7b752e97bf67be01ecf15985259bee5bec0d24322d74acab7898ce4685fbfcef2d08e08274dc9c0fe11d6008aee3be81f4efe9ea8a5d7b51395c3a7330024c683f1083a351cdfe59de916c6ae4d7ceabbdeae4254cc478de1c1a83d57b586f52123625f9785a19fcdc12a6aa43e1eb6172af49026163de8dd02496ff37790c5427d4db6dd9ba6d8f768034dd9083d16d444b7cd1ae3e821cb4a5c46b9742fcb04b7fea2cd224f02eb6099ecee5b410bc1b3ff6a0952dd71e6b144bf7bfa59edf8c4f0c02ff87af906ee445f017101a125a328bc10d9a64d16f4b7fdce225e965eecda143c09898690a7bd66a6cb8db122aaa2101c5ab8fc623fb9493528f31165a11451b9663d544f9514492920cb89b074da0ccb52f98f58b985cf66a4e6c02a3ca17e9ef7aac586e502ab6069350b160dc829846f6cbba7e05599cf6884b391924c2de1f4ca2bc38cc31d7610a965a03d88bb908c03b21e598efe22056a4d0a4ca2fd89ed5a0177184f00e3401aec5192aad2a01ae748ad605d7a3d377f1a885fe6151283a4180ae7e935d45ff962e7295fcbba4920601d955eaba5665f717f2b696a85617db4aaa6845810323cff3ae91ba02033cfb02adec65b3d4ff0de536e84bc1532114ac9eede75ea2ae0dd8750939f1ecb358f9577ddd79163c1d75a35e0d2f35043d148d4fabd09edb282ee49e49216d200f492a22d33952e85e2c5ea2ba29ba46753174077513a1ee722666873a9317a8abfddda3defa543be0b171dd730e81d2f0772b216fb6abc67dd2ebb5f7a2aaf75c47fa3221ab6ec0deedc51f1becbebd3ebcf0bb5feff2e0ade331129575f2d6e776e00016e1027a775e6fbed8faadefa3b38385be9b8d270161bd75b55d13ee3d7f716b4435d818bd5ef2cddb4bd4c8f442f53af532bdcff08ad9eeb966ddc1a7edf20aeff91ade820df04a79b78eaa3d96fed87b9e7f4b27375d92487739933dd7eb77d7bd28bdb8d7db4b5190eaf7eafad4b5d58da11b4bbb9323c0d12bf8eff57ae17bff7965ebbae86677d3b7371b334184d87b69bd73c55b67551b3beaaa5b870abab337e8ade73020cb34ce5b8f67eee30615ed2e6fe03e05e8dea717ae778e7bebca19d7573c76eb839298c4eac5c170c1bbfc8fa9653cbf6a6fb957abde7acbf43eaf787708432e105aa9cfcb3afcf91b0f8e7424001f4734a36ee96d643c0c1b1c69466ed3c44c0a7da01aab20da102a5f40937d6b31bc2727bcb1c943b246cd41ff9c1be4c6fb5362407390c12ace837703bee2927b54af1af7d4a9205758ea2f619be0fec5373ac4378a0ddb98e43eb45e2521e5acf48c519bbdd6a96382010c408f13793ad47d64358d52f45a3dbebc4629d7c0c62853488a13329c5cf7af796afd32643dbf4d180ed8e9235f2fbd29b3af54252689a6d145512fd2bb37e6cba1d569ee5856959864eec8a7ca968126dba8b2716a008c526ecb32c165eb21603d4ea99b3df42ae444bb7c49e4ebc72972a055c0278f13649a6dd4d6e662fb388aa556ac16ac58e8459a7bffbebf883006f2b8da2308dcff301d510299c10e3a9d011a88674753bd5f815a0102023b022b17c8ccd925cc750932aa16c208f7f8c569cdf4a989aa522990df8117668514760f907e82975cc8ae5528d066e0e543e8da32356044818cf5194d9c32412646afdd97ac0964869b9759a6068270213f291b4813ffd230de7afc1dfd1235001941315637c153e316c424d022d0e2032f335283e00204f80e64c606ae848c818aa1c9473f028bcddd6f0b5eb253693e8b80cc032fde90e4d29404685120837c3ca4360dbc84c6371a1e81a40732fcb764d5d448908119e87236af0ea15b3f17b1b163093cc2427203d2023e0470f9890546d172b0154ad6d215e5407d1cd7cc33044e07218e0610dd5b06b7031c22c8583f50d1e13efb7144e92acdada7da3589c3715f8197ed8095d421c05d81e7f5039f35bcb0048f89d8daef15b6ba5d88d27fc81bc8908482dcd72c7befebba8023c034079977fbf0c4220215d2a4ff8e89aec34d5557f439b0ca5618c109d3e193f8ac57c511f83f1024db97130096996893df1e00f173e9d116f021805a032ffa57065a59c03682cc660315dcc7e7da6b729f1664858b8eea9a4046bba7afc22ce0e9a9da8694371a28577b6b0a542e41e62ddc1dd78a204a9676e9f82d152c82dd5ac42434255a7892303073a9c7f242f990efbab02e9637e2c18b8b7b3dabe0ea04199e24f06b6a61989005c69214cd2d53d26652542706ea4b47671e2e725774768320f70415dd18acf673f84e38212010300fe08c93fe96b4e75fcf8320d303ad0f5dac209c76c469f093076fd37ed5d5bfae0ca5382073d9a73b0e70c9c7deeee3fd096a2620622366d794806b20f6a06ae90595f443a54bf38060e712deb9e3e4e8352d5e7c755febe68cd6380a6b4ee581d5fb39df4c8c9d540355df690a175a13d601a912ddaf5fd54a8eaef7ac29b85ce2d3675fa1c57ccd90de50e68d1cc7ea4ea1445f34d0bcdf75bf32bd8978ff11f2ecb233507097bad0d2e1a9f2a5eef4c3cfe09aced3b925a2c54a4ff3f10a3a51dab1b6c8b77fe2d8e13596ca812b67ae762dfdd6c502af5eb5ae830a3997227679f4c8587f309a7d7682b7a8928e3c61c7d821d50891f0d4030b4e4574c460e550a0c991dec80e95302e240b6371a0f26bd563bd6a42e9fd1e3bbcf3935b10a45049dec9da0ef16297913188a876683d1e75bcc2fd9f8485dae020685cf59c48df8e803e4f45a3a29778c3ad44329db6594907dfbcdf95225a4850761a231a040ee6debf035683a6a87b04290e42e51914cc66727dbd13c3d04cf63fb8f939748dab6ad52a2fe454feb56ca73982717c7762880e34f9c005c4d61fa28fc97440fb87e6ef8c84e20d99a79e45a314b2139021d728418a4619ebc69ce386a015545132641f7e778e523d46ddd201f82e2cf11c26540dcc0c3c6a949ed9e87cc71ecdadee1f47062221e31f7b18051ca54b36427a4386216e541c06944b4d61275091c53b850e084e12b7788d7d3a66681482ad12e2a457761cedde3e6e476d9393325e3edabd717eb71d58241b8593930e1dba76fa1dc8287911c57a847547e3ae2d99f0a2b08945a450b3cd14fcde0fecd49d0bdd794950b88aa3f195266847136669f4d87a033002be30249d6704a459b94fec1c800da1a815f68eefba5788338f6c7abfa2c98847e581fe5b4cd91ff114a83e97c00ada98860e423901084c62b0d0262f6db741d3b019325afa4698c20ab0cda2915408f2c159bf4b23e84edee52dc09ed8797cd9985c674130bbbd19f69e8a5cb6991eff56cb160a514d47f60897c28b0728e52c86fed87dc3433bb764f82a791148b5968ab561246ff67dd09d20ffd19d52e36deb7e9d546b597c7bbf40514637c67f8ec648948bd3b136cf79dfc5dfd1a2dd0615a9982283277db44e69fe0f9263a5ca1d0bddf35932b95585a28105aa06cf9c0c95ef976109419d415174d85856434bbaa4a12409c27379189092a3ef9ee47ef61e0474815ebf3a2a81bef4ff9e03d7bc11026b0db21989b0c2b0dd29ea47948e430b621689df42cf7d7c61fe94e179bfe722ba62f8bc008dec32343a59f70a7e3ed4fb5418005173959f41292e4692ba8e8aacb0dd7d0ff6e9707a446e76d5806b8d4777c17366966423b81d532d4bcf36006063025e32b3b531d7b525718cd1e341d6c70baf41338378ad7ec027094c025e8f676d8649e3715d717f51968672100666c0d4c0867743dec70e7e4209bd218306f850a381d0d28a07444fa57da3d562a410b41bf8138f3bcb398f8831fc514614b5cd0a79749316965ae628021a80c6f789fd46b22329b78d114202e5a01596ef8ccf3e90dcee377673a3d9a375294e1499123dd52b42a1e124b6f8106d1fd2db084f4b58ca92f8e330c9c7aa6dc1347a1183a24aaedda2fe70abdeb913894006f48613b139a46d93da93064d0acaf19e9371651cf842854de01f9b77d4ca93ee790b479d93c7e1b554eb10af58c5b610ba8c075f82c29e82cb1ff11516a4659db2285afd72ea5a7c2e99e993df63351cc34b17cf6c807c3b9584ca02e6996d982da5cf9e6f918e9f1862b327dee1370accb6baca503185469826befaf5a42a7c9fbabfd9011666f98c43c2cf00897c984e9cae004905d0c94fbd9f713f05d94fe0711b567fc918022724c51c58c73dc74b778a50b9a4b904319443d302d151c7c2da3d5ba95e99f5b4a1a5cdb377650eeb6988045d995b29c40d8bc55a29f533f734b467ea5c35221a5c10e25e9b26c4acd43e90f95bf3f1c72b346e922899c737766e8c89341bb59f3fb3bd3446e3c8762d86a1886c03417a0b177761b2cdf9636beb9f5d3a050b2adca947c880f3d95f5da4695ca1025cdce3bf65b52e84011c6ad5eef4b4b9eba54ad73a979da2cccd25c5597c48bd3d411c4fd996aebe48eb343e9303520bb35b20d62738bce7bc24a71b3e98ef2d92d177ab9fea997e765b112c0e8d81c4cac3c12bf387ee683615ac8cce374cced1ea37881007ee48dc3a1687dc47e7383ba2ba1ebb54a03cde35812a8f46c468ea317502dc685091cb2480426375fdcb751c68a6225622e7ed32a590da0bfd6cefecfdb9bb1862f39c9d55252cf42fd5374b0548e9529b6d8e38375b1504612d872456cc0f369ed32d5b9c50c6da647c77c8e2972e3b53f1c526212b90326004ed0c98386b3dc1b02712e44228b0018e603c34dd93cc9b85c9ed4e131d80477e65108a5746251020d4d5821245c92d710eba9efdb6ea3d9f8470fba799dbeea2c7719dd6d4ebbd21971bcb4796876d4e497265ea20f6d025dddc121a9d70425607a61706af4d1c5aae591c6450832b1183bf33228c1e6ef4aa4d6ba2842de3d32ac5929da3cb8b76d684627583c60da8716355eefefb9c893b3a2ad6b007effea53806c52dc5f13c33b779667682964ed284cd36f75874ec9035df66573e7b960c1b6cd5ca199a51a182cc3a06a63ded3b1d9fda3e3afb580fdf72ef934e232cc8ac025b047635abda57bc5ba8f8e04ed37e0ceff1e36f4fc79211b24f4c1a64ae21880daacb4b9ab4d3a31ead009f943daba5bb3f75a94f751a2a41ed1fb0651570dd7471b691e548e377b307503d7488b6b3379ef0d0ce3b4476d3a67b46db8874d2f5de26b2a7b980a339b45b95771f000cb0ad62c982572fe07eccc97eb9bba063274bb518abc28030ef61907101cccc36f77671b376881b9d8e6d41aeaecba28812603efa894ff523138b9624cbb07fc11f6da0a0e4d08c8f8d6ce4a32e2c1f08ec9a9fb2f21507f9a1fda6b1010aa9284ef65ff39bbdc94d871cfb53b179e98fb83ce954206c0e07d1b1bb788c2d9878d310caf63ed9b7cd2544f008627d6a10446958df9d7b197848513866a8c7413f95d117381a467913ead92dcf9975f7ec74b79ab60a27a2050cdb66a8ca065c1ecd85f6791749e20f42a6c5b3b0f7078cb0f395e22ab8d179a49c33fc90a22cdc51447c5b722914e60b18ddf0a8bc3ad1287038e5b1a9ecabbb3a78f1930492da2ff174c073974338229a04f83d886b6960e1f0749f8b8431434281d8542a776abdeff4631c385681191aac2acee97e186f224d3d24c027f1afdcc9a83bb2623082eb09bbdd3de1947e1baa19546084f52de8a05443d28e6f02140cd685066a7620db4fbaa3ba558a8fa5749948d70c598340103a11b0cb5c792a1df064981732721d7ff172e3a5293461b615e94001230d162a6c099c7d802bec0a844eca9ba12290a1b877e11c0a757b57a48961432a25bf248514f038c27359838860d1b7275b6034261912f229bf1cb22c87987bb4af7e2c9e51f03bfd8a99d57e8557c03b1c4066339df8326ee803a9d7bec25262c02303d54d81ca83f12344023263c93243101e1c7b803d591240c6caa812e286da3f40d85948f7bc14772250f0dfacf23b1af9eda4616d77cee7a7ee560ff81c6b26795a9f6980a68b3e5e01410c8699ce00d5066cf3bbb8efc5c65c0f1ef354dfb97ab30a81affe53c8740296b79f5ae3faf7baabc187294071fa3647502af4687943e79261f4045cee10a80aeebed04f0b8e4d8a6317f8d34a7a2e00ce01bc2bdcf5c9e5b1383f7e15b284edb2495aca80c18c9c7546802cccc4c1e9745f1b224ea075f3b663dfde225ed84eaf52b0837c6c8e28ea8ae64e04ea9a6cbd5674185981ca7fb6a4352010760ae4d8635245d84a262b7db5155a87aaf6a6ba36ae9278f6099d46226ec9ed3e79ec98c025c33a6e5d9f4a76150696e0c993d2700d109261ed5f294590192e143635775cb37461bc853c2a5ed3f32ba3aa29505cfb07b2b2c10b4580f33671d889747a458e5eacacafe2a0e7820ab95a4cd23786dc8005109950bdfea473ac80cdae4daa3f2d90d0d2791bbda3e337e50e2464705568e0bca1e1f383efe44eea4cd23dc72064c91678ec37ff54280e39eb0e31b53c69b636b49a3ef66e2a0daf7723a7b6cfbe3dbf24c5ac3332951b4b9a87aba8acd92aebabafefa71c1a28d6001d846088a53fc00cffbfab5f3ab1ccec48c9631688063563360d9511b8c3045e8c0883dbe1ab26e656d69c6d8fd8ce35b5be3ab168448946c1d5ea1155cf3b168a7aa68328115fc08b06b0d0af3d366564844bbabee401d506ca65c0aee35be26671fd40d47a1015579462b5fdf0272103af85067ceb354d701dba4df6826ef7ddb5e75163e685b980756599fcba9e982e0fc871bdc0284c931d7019c0bdd03046502ff61ddeadb125f43256ab15900b00875266d6582f375e96ec45f24fae25b771a3e4fba0bb4c057cf5eec032c48fb51909c71ba6f381bb8df0943aedc3521f179b438bc7876cfa5edd392be788c437c11438242c29d97843501ba1c12f45bf893589286c2342869efb9a26fc1f4e168456ca7abd7e19788533cf499db1c3e98f8f5828be326b25b1be7be1d4624fcd54b4d009adfa6e13f4c77a6e726c066632b8c9fbae3aa6ed6b8f35b8aa5ea8978597e27af2fe18625aea427bf78166c288aaf7330c955c119f70633213a4629e3b8c791a091aa31f9496c9e651bc7768f2a0c91c96524f3f37138230f67f0a494cccd8feb0550299ec71a8c320434a2b4c5fa4af46eb9ae150d38009b0723f21a3d8911802e101431f540aa73356ecbd5f86eb7b4a371a4e82f060848fdd4945166304bf42bc09a6fe7ac1b878d08962296faca75393d8aab405a7f9a180d449107c408748e572983d7976e624905e5af4301dcc9e7d61360c3e559e396249173cebc93b3bebef4bdce15f3d4ee4a85e63a8ba87783cf889c968a661b3152fdf22d7b05b7955c5480027c7a37ca42990460011a154a298d0c798afc0f294b5af53d14278aa6912f1438b239508ddb6b42cbcf3bc9cb56bbb137b62e6c28304c4aeefbf52887adcff925981448a7ede8f9bb31bee0d060c7e64f3d434f789288c17e179219a2d212522d0dc5bb24a1be3542f1057d24c06eed023e8e90b3050cf133de54d2cbbac46a3540522db2f184614ce261abeb210c2dd6fe0a2fa021eb0dcf259c8035adbb414c190edd21a9a21b107f0698ff512bfad260048d0095cb03612a71e8545ee2698d5f642aa8551933088584b64b8710e2c12f5f71e769df6415911365919b2e3231f45daf58a173f04950b682b198078d6ffe45703688a45a6068a492fe37a44dbb19ab3cfa56c243ed7b9d84cd2aef0804d0b763d23ce74ca20cc00a088071263298009a2b8d1490ab93e00ae2b6e5e2d33aced3ba3be8a4c48d6ad5e23f78509b1af35997da81cfd3889a8874dccebba91cdbd5d0bd6c18f6262a9c3da599708cdda88b34f8892986aea349d3e144316cd8d086c2bbee4cbb4f6286924f04d6d563c19265b49c157c56adc9c4b6e0b6aff215e5910852462bb352c13359900e1ce30de1a3ab022e163f1aa1d70183b3e15755b9706ba5744f055537d35a40455b2f5c8f5ea0d38f49630f8364af62556f728dfe93fd14653fcd6c8f3e4cec3c6d2e18529abc602cf29a5128ab7e9496749d678191b7454c78aba6f9b73f7659883df797fb29d019a2f995b503446bd579015cb14bd172423816b5e3f67c15f3996d9ffafa4b64222b31faeb5c11a3ade8beb2898baeedcff087b55cf0396d1185af2e753c97ee3e4df1e2d38321f016510f120dc317ffd8b037d7a02ce7444340b2f40b46439f003fc003fc00f20db08898db4184994494a91f0b90a9e754a29a59452c26467bdb01f60dfdad713654a038c0bbd0ae40a3ff0000f1e65052fa0418306196678c2733b557d375117f752d5ded4e035cee80449bf6ab40f61a6f7b23752aaa1a3c7183792042108018fd2031a34fe94543338413ea53b67d9748656d0065b8edd04c9743dbf23a56b82385f75bf31bde26f90aa6046264861f4af2fe6e095bc6483ad538f32ca3041dc6435c2e47dac8ec1312e414a7fa35266a7758ca71e63dcd841861f1e3772e4086658823042fcda7b9e332a41cafb323a36c8bc9cd6b7308312649751413f93aaae923209664c422b15cc43875b12e4243687973dd12ea5d24139e7751009625041574b5365afd5830441c6d349ef869c259db5c15636f8113974e840c00c47a0316ef4608c321830a311c79c513a7ac9ce290f1c5f63878e1a64941c666a3b831156b5577b877e8bebdb68e5cdbc1bebc1a3068fb23c7a8cf139cac0c18e0ef82288991bcdd3ada39850c181e3860968d050044185d6ca49663426a56283ad2d11a4a4675d41253522c8b7b7275353cae3d91d82b4bfe1d2a6343204a94de5d68fb210a4ae68f25fe4829493d54844330841ce5935261dbaaf92d0d960c31b04b137c738aacfb4c1e68220e758f7ad1d46e8e47d8d409064122df7a6591b6c0b0892f8d24ccac4f4c9b56db0a5ad60c61fc8baa275b4e7b80d36f743651f530e32f665830d073a703099d107625e8f9f8682197c20ba09255e29657cff188f3d905289ec7bce1f6b3d10d46952f6d99e910752d2b65b5df2ebf3c343878d1a7b763a6ed42083470c66e081609ffe267392725dfd1d08331fee6290ae1d72510b37af1b0d9bcb10cd4b2feba6779b5107a29d9c924b212c7508d181687953e5e867b292d139f81534d8b558e82198210792f6bf1853ee50d9abf303c3068219712067db2f4f17e7e26688071cc8194de60da62d7eb6bb8c08182d23021108410b22d082196f2048d319425db84a9e9433dca0b8c55b5bb77507f973b59f1d84120633da4016ff0fe77a3aa77c311b08e795a53ebbcf2935ad81f023d368aeccba69bc196a20272164f6c9d229f3fe6a61461ac81975e6ac35fdfae3788519682079e5dcf7619ad31178810874bc200533ce400acacb3377a96620292fb72bf39836bf5f06b20531f9982227c31d77966f1aef19b397b39ae5c6402ab50eaad7e4e26c8e8f30430ce4fdab581e67ce62d6781808d23e4d7d6fd21f4d9c0106828aba0555526ef3e65b84195f209faa5055d14ec74fa9612a84195e20576a8cb7bb632934ee02416dbaaad2f2b12a337a2e94de3df49d84195b20fb7fb0a4533ed47fd702395c56f4f8d99f910582baedb0a3838556c7ccc002b133687abd9baf403c6dc13f69aa6658811c5485cddb51c3944e7df023a041c3076f63461508f3bfb39e436dfafa675081941d544c98310552b814fd2b3b07b7f7a540ca7321140572c93abd0bb38102e9d2cf9d99b49241974f208ee7b3cba03eb64d4784194e20e94ffbf9b529f369cc0d1d31c831a309a4cef254db941e35f465cc600231a48653b26368c612c8d9cee28d6ecc0c2520a6ee5a632297669b6ee1edbe84349537cf4802c935e584abbec90ba5a6c20c24906256ae7c585a918da3200a338e401032ecb5fea58b59cd0c2310dbe282ca7513a6afec5106193dca50018f8f62904236497533fdf96fd381c3053468b4123e88414e9e1ed4f3ba69d1f1611073f65b966bd8cfa685c1af76b2743193c1a844c4aadbf2bbbb92be0ee6df6e3a25f8000631df4adf8785cb14471fbf20a7584a2799bae572a8b4f0e10b524c7e6db943f7743ebb8641e1a317a44ed1e2ac4c67bd7c0f5e107b3d6f776b7641b8ce31cc088fae1b46ba2048d31aae6d16e3aecc05d13c8a8f8e5e297aa53e70418a5f9d844cb79aae53fc16245d31e7d3bdafb37ebcf0610b62857ae96827bac48896868f5a10745d8a5715ada2671c8216c4600d1fb4206554f7cd156ec3c72c48e2f45f6de3c7bc8a3e6441306529b5d45d6241fc30e2ed475b1fb0206965fa9c4d8f30b1d6de14c353f8780529a911e1a9524c4aefc615249dbedab957564d3ead20cc6bc67d688c7a1f67c56ab16d73e5a55eb9a774fc4463874b49ab20bcf608b53a4a6b840f55902a85578af14985b9b564358a87a820dde91c2a9f5d0939df292c0dcb6f0bdf1744aaeba99c2948e69ba39743ac548ec920a3e0dd472908d2935dd568bc1069210531587888fa65cc18ee2848a374690c9576ebf3290abfba6bddf56eabbb366d4507a12a7f5ec772434190966a7337e936d8c8c87170c7e9b316d0a0f151fe399d2b9acafe021f9f20bde97aaab3ec8e1e3c706c8f316ec00007373cc0ec095245b3ac49be5e28173b41d4d0e469c9923a95d49c20e7f70d9e4628a16483ea6313c4a44aaa9a1eb9fa948281698218c4564c4a5a3ecf73fd0b1f9920bc88785d5b8db14fbd91031364ed7571d52d314d42a74600b6f07109521cdd4ba5e5c10d8420f02e4307f234b404f1f39a4a9e5e55829c4e5bc796d13335352548ed2dd641e9e02408a6ae9e63312589b63373ed44663f776c2ec694b999748334234138b5281b2c5ff87bfe0109c2cd574a5fbae2e5893f1e41ce59ab4a29f1031f8e20885a5396ce939255b20d6e046974f6c638f24c58bc8c208ed2fc246d45a6b77d114451bde39dce7dc187224872fb4c6afc1c634e99cb449074de92d7fb9e0f44903735866937bf77f73f0e4190f3a65312519d4bea862057c9dda45dfc8307ed07dd20f828043969ad07f57e4158b03e0841ced9ca3308524cba5d54ced218edfb100441c65f8e9723fb08045954f7e5a66ff0b8d11af80004296a506d6f960db61e8f831a3b74d44012b0edf84ec1c71fc89e1fb273d85eba343d089e8c1fbc80071f7e2068dd0c42ef89b7ca9c3e1054475129cf274d3bea071fb46b9dd3f014f75caa267fad0007192ed8d183c7153ef6402a2db77ad3bf1ec85d37dfada971e3eb3c90730cbfafb05057be7ee0811864b808edfea2d13a397cdc819ce1a5739350b51f153b104c45d19863ca516ecb3a9044d97c1ae57934998873f8a003b1f3c5331d6b693fa4e5630e04b9a0f4281dced7537339103344d96fefaac68e9d95110792f6f41acfd9ad538de040de9b939e3ff53d76fa06e2a6b60baaad33e9e7d7ca481d7cb881e8da6a29a6ef0e72d31c7cb401f598735c4a31d4a1c3288e0f36104e69ad289d53068edf4106f7c71a4841895dffabd97bf063a08d1e650569a34721237fd0e3f2430d97a7aee899e57965cae509add82cb2c166a34759010d1a367a143268d0f8410f1a34ee230de4d9e09a5d53afefbc03d55883c19b1f1414d4f5b831c68d31caa8f1e60725c7598ecf8106bfaddd92d0743903e1b47d127336f673a519484946f9e9acf09dbe29c3e3043468ec78b443471948b2d5fd6fbf94d2dc9381143edc92527f19035173c6ce1eda4c06a18b819c32a95590e6313cb76120494bb9d963fd4df960208ccdcb8ef4ef8ec9fc0241cdb49d6bce05e1c10f2f107b7bbde76b3d47641f5d20a5fbb421c4cf5c20272b75da9e944ef0b10572765c3ecfb539e73c7e68c1ae1d7935d77553ab4aeaef4aca66544df09105e3dd5c4c7399f9c002f1fbca73ca395a4c130520868f2be8f9b2f5d55d1d7bdaf1a5a3c425254e26bde1fbb002296ce4ae0271e3c71c5fbed69407a94010f931d409f33ea640ce1bd33fcc3536d8c8b89143c7183fc0a16305ff89068d257c4881f85177733d0761e0230ac89696b6975a796530b519747996755020787acad19a1784b013078e1be6e30904cf94939a4b95647eca033ceec3092479d574b95f671b32393e9a40d0f5941e4bbe82658e5350831a38f86082d1381f4b20adc7567c153da5a3ab04727ebc06fd64418b4ecd406b7c248118de39326ff6f2cff80712f0e30865637c18c168b4a002c5207de57c56b6fc5731152006d9e4e8ce142d67d1af1906c9f2933e19633705918541fab936bbf899f12cc120fe6856bc2496b2c517182469f9371a754de918adc02fc8ee9b2717a3e40bf25a898d2e4b3959a67b412add16532a335ba7245e90e7e5e3a5e5fc2e882edab7aae6a29632754190d9c227352763a53e41a8402ec822bf825413a23e861d17c420d44385aeed16e4948468cc6af94f267e20ae66ca525a1a0649e9187b4b85c8e99330ea0ebf9729fac1208fba8bb5d55b7947c020988b5dade875fe9c5f102bc7fdd3ddf8821c677f43781259d3f482144fa7247ba547e60b2f08d2b282f81cfc432ebb208d07ef18555d90b27edcd5644146577241feb1703ff6a5fc2ab820a8d4f6b8a35667f15b903caca5132364cad16d410e6f4a5da894b94d5d0bb2f888cdbb973435a6055983e77ed031488bef2cc875dd5956d3a73ca62c88b21743470dc68294e2bac590396cd0e2c382609a29e792d1bf82b4767d71e3989b65ef0a62f01df1eb657ae4a915e6b8dddc31775841eeab2084bc8a56cb2a885ffa6da54f45af0a927eb8d86276eb692ac85bffb95df6f734830a62a9523aa96f8b6f3a05496eee9e6b1aa91e3745165c54654ebb14e4bb70b9b24849418ab1ed63f76d565c47f1e8cddd4b2744a220fedba6c8ed949b46140a62125da5d245040aa2dc8ae9af3c665ffa0441ff73d2d6ce66f1f704419fda6d72379d64d409a297aaaf341127c85ef5e271e2bf499b20c9399d72708f268871aaa1a2693241fecfef8bb1a4b7a5608268d29369fde612244fff2b7ac4358ad612578e5f2b41d070e2c9d4dbbf554a903257cc761745afa693209e52bd5b29290952596c26cbf94c5b4682b42ebee1c3538a122141f4d6950ffaf5c2898f2007f7cd1c22479053a98bb92e8dc7d708926590592a668c20a6b8c9fd62761641d057aa674b74ca29751441501f679eb2e631619d4490ad846d58372182244406af1c3c999c7f0882ea2539ae63b9df1b8218844e73f771566d5408728e1bb36a8a0841503673293c6ade6710e4aba44bfc7b0441f8d2346a9e0904f1d369e98e49944a2f2008227aa136ad7f20c6ea8ab7a4740535fd4098ef4c9e3a55c4977d20d8f867cc3932c93cf28124e6c63d10f54c2525ae999ba20782c786171fb3b2dcf240d09c7fd793cae0e1b424bb35d5327720ad2633a161f79a4b76207a52f93a103655f4a01ea20361ff5a5310262f9b660e04213769fa50aa84cac881e849ed79a870512d1d07724ed9ea3b6556668603417bfae58b68d68ebe819416c54bab53a657dd40da515199e63db6d336104ebddba8796c209689ba6c2df649b33590ec42b95d279dd455450d84ef9afd98511a08e2327dfaeea08164328cbcd79c81f8e69b945015339092c658418fd0cdb29781b06a4154edd65752938118f7320682fa6c6d95b66bf71603b963c8d8b9864b7b87e1528fa361530c863c55d0544ae70ba478fffda03b96797a811446d80552d49071dde102497ef8b4397f0abfb92d909452bb5a0f26c23a2d905b54fabcf1fce435cf0249ae3267b8946381144793f6a045d6ff2b10e3c924e305252ba4c964ccede12a90436ac69a081dafa502b9d3ee894a27bbd94f812c2794ec59d3a474480a24d9a5d29dbc97fe4481b8f79a49e9b3b5190a0415e254aa78d33b9e2790c2e737ed7025e45b9c40da24dc538c9b40f0f39c0904a5737a0944fbb395403e4fd633a63497469340f69015e599b4001248725487abd8102e3a0b1c817c31f4d977ea4cf759c008a49e4b2ddabe47bdd7c5209d8db824be2606d1528de7a841d492ac8741ce33bddcdfbc49ae160639c617b9ee7b1efa0783b849c8e4310706a93275d6b1786ae2ff05c9c2fce7dc97195f104dfc5eaeef9899d20b62101973ce5d39e7215e90cce2c3e44befc6cf2ec81d9314ffcd9a6ed20539fdf5680de782a0e26c4e42797041f6a0c662e6bd1c53f016444f4a6573d5b598b5057953b4de9ac514d76a41b8f05acabb8294d398160493994bc9799a96c6b320a83393751ec36da558160429db31e937c58264737fdb9eefd29b6041f40d152ac3636aff5f410ea394cc267d5790aaf469fcda7e8d39ad20c8183b3b7baa4c7e58410a7a1fe3a918aec26715a5cf1f6ba9e4aa20774cdeae9e77dd7b2a08771d2eeb7dea5e1c15c4d3316550bd23ecc3a720c7dcb53fdb62e3495390bdf279b0123adace2d0549d9a557f7d431a7e09282b829c809edfc32157714e4e4e71b7497fb25d58a82d4258390f7a750902ec99853e53521420914041da383106fcf1ca24f907a33266d17be82fe7882ac2e72bac5d20972d229b74d4d7888137da5dd0915f74d104f084f7229af09a2a74ca6c334e9759e0982cc25ba6b3d78ba8c09f2768ee94ac59720e8d8f184e81b4ffd5a82a06f6464ca926569d34a906398678e9b920625889b53de182a9320dba713a3672409e2dd28d9fb9c4890da2bf59c6aa5fb1c4890f64d78da8cd5a59a4790477610ba2c7e8cce3882981f63ba5c55cf551a51bc8faa1db92723085f16836b2e174fe95c04315f52195d3bf5514e45106d35252582a4a7ef439bce393f4d44907ceef637597892661e821cdc4ec85625733f1982a839c372ba8b6bf2540882a7ab6869e1aa749e10e424eb2d3c752ead3f08e27c86502af53dd52308727e8cdf1b33aca72610a45c4a3fbe7f976c0610e4ec7c2a6b903189acfc81b8fd27b2837f98d1fa8194d274f584189599ed033128b1a1a26bf2ed960fa4b81557a407d9f4ea1e48994b574596e79b530fa46c31daf44a762e887920069db4f3cb6d8ae6211e486997a12ca5c9581dde816c6af232cec5965b680752cc93f1156cdced5407342555a2032977d2a596ddb6633f07f2eace26b19e3966480ec4167dad76d9234f7120e78a31959f060e6433f1fe2c9a3710acca54bcacfa717137103fe4271d197bb9f536103c68985ecd4c7173361053ce1723b3876855d740de9864e74ab25255aa06920ea24c03b972982e99bde12a79682098101a4c7a16bb78de19885697bde4986620cca813b35e9d43c43290d4b80519e7eff37a6420be5f8af1ca829cb36e0ce4d23fead7f2664f4962208aaad8dc48d1ce7d1808fa3a6ac7940306b227a562ce99f205825232e4ffc8244fea5e20c66031cab53e4cda5d20a798ca4184980bc577906e8124533c9490f57e49a905e25a4adae4629b05b29c0869296f4f3b6858205f10c2362bed4747bb023975f8b7ed921508dbf1726d6cfe5481943c8d2cbd29c62b4f055287b8b4a0d3eff4680aa4d23336ae2b3aca470a24bdb1d154c71cf654a2409613e7d9f269dbe250209fd42cf7e93d9f8c3e816429f773cf6d5f3c9d400a3edba7c27f4e494d20659015bef2d64e894c2045f91b1d11eaa3e59640ac4b5f715be6fba204d26a90ae49567a492d09441da163088bbbd02381a484b251395445e308c4d8dcfdaea782ec55348c40ccd2417e8ba714839c738d4a61ef62381dabc10c629083c86691f91f0661ddeaa48ccc0a8314d3a5cd6b5030486169f38a68f10d160606d973534c365e31c6f2bf207e88e634cb754fc284337c418e9f53eee8eabf239bd10b52d26a97fdf2e20531d87de54d2ded825cbf29e5f4df67e88298746c3d2157e6823877bd2da22de50ea319b820c6a0e1db53498fbea319b7206ae7c8784159877dc716c417e59d3c836e9219da60eb5a90375cbcc9ca79e9131a2d486631a724f2748fd865830d59306316c4b879d39d96cf5173cc4316844db183bbaaffc6eed86241d21b948ca91f3c3c58103bfa481f254f89f90a62cdea9cce783776f4485710840eb954dd5859d95a41fc4bdf94b7e229cde3c10af2fa777f0a8fa543ae5510f535ddef83d5bc75aac83cbe7e6cb150a682983aea59d296330b5254906e2dc71ff53a9e82e023f4c5f86ea9deaf29c8f9829e5a56abcf72762948eac3323c9385140495d15042d9b5f55f464130e959dd6fffd9414914a757119b9a730afb85829b4f3bddb7d2b9b1fc668082985f4ba72c42a8b7357d8298ed2c6e3f3553897190918304014a2027d794b45de454dc7c4920e65e4e9b357a1b6c87ee8243024176ae2cdbd01108a733b909b1f6f95d7446207d95b8985c648a41320d9a33e3e231e78941f49cf272a4360c92d6ccdd7557110649850b13b63507832465b582fafb769f161824f927527e37e694bdbf20c73ed9ed2a4d71e5f505297c873219937a41d277eb8f99d3fbb7f282ecdb419c85902d7fef822897eb3c48d3ca365317c439254bae96980b724adad29c8a31a75bb386d96801daa18284e35dc00ac3c57a971eb4e24fa9b9d73461b7b07254ecc8922d4ae234e8f7871f6bc1bcbcba8b99b6d95cd676d21ccdc5aa32182d88714f5c4c9f0d136c1664cf5a29eb79a63ee6d56441d2e199eaa3a658902a05fd4ddba72e270f2c086a33758ce625daa97e054996be75d8cdae20c7a87d213ce4887e3287b58218be4ccc749e8c15a411babda317da2a485f2f2a895ccfa9f2a60a524a271f36a92a1584b3bc262316b5aa7f5490cd3aaca720678cbed97e2f7e2ed34c41ae9c4669b7a60ca2530a6206db3319e39382a4e37a713ff5a320c8b318a63e89a598240a52aa3ea5297d65a120a89495368d6c8ecf1a2808ba4285934b514e5bdc3ed19cd86557ccbbdb6b7c054b4167913b6977b527082f3b6652d4e77471ea04b93ea61483ca1aaf5ad449304e10bfde3d454dbac9d35bdb04b965f7837f90124c1384f70f7af52aa76d19a560996034a8f11fdd9c32a36182a462856aedfddd8cb8a3ace0126ff08c212bff567adf12e4d26b69a9a3296f6095209dcde5cf4c9fae4e8512e4b158ea39ffa74f9a6493b8f63c5e5fc3364ee34ff6986771d124410c7a9747afd21609728bcc23533365902065bcfc2b164c55b04790c2a7d8e2d9a5329fcc1c41b8305a5246b7d60882f08a1e4425a931829ca59bef34b4088214d1e4171634868b22487efa3df69ff4ca7822887964eacdee1cdf694490821272656b3e0471662bde66fea4c88620e9b38aa954868dda168294f2c77c979f10e4d4207645fe8e28330d82d8e5b663671204492859952c0805822063834ae57e4a34e70141de9fd7b023c37cecfe0fc44f419c7cfcfd40f020bf748b95ff77fa40f8af9c838518191f125a433e9a760fa44ff283fa9c437a207e9b6a8afd4f1ec8b9b3a52aab3bb71f3c10e49cbbb78bc853fa3b10eb72675f77ccd36f07c29b898dbeef4be1a90329546e2d6d59b9394c07e28576cf95e439906c5f4e888a166bd5c881a08456d513af2517347120c81a4b52e752e040904df13e4a2f68bfcb1b08227a6773cc6e20ac97a99727759d59690369c4695f0b992b596203c1e4bf9fa77dbae8af81e85541fbaa3d86935103e946df529dc5d340b03c35e641763410d4964c2675b6f3537e0692106541c55b54dfe566206a65cb31dde9c52b2f03393cbe3ddd65d6759a0c24ade2a972928f811c3df6ea2521ff312b0672fae7a9a0b39e2dd56120f9987ec67c637b3d1888a2576497d8ac76cf17c82969caaca6f102a9cc4bd6c7d605c28b12a739ee3e8c8ab940181de3879fcf16483fda3fe6d70251e7e546069993d2952c102f05eff2a09bc4c4582068101aa47997958557c8345bd9f856209f6aadcb94ad5501d9bed398c65a2a105ccd329808a5941a4d815c992be307219f63a652202559cb3f1ed6c2ff28903447cf3188d1d71d820231e8ce9c8cb0d1314f20a9bf1353a9ea7e7102793c654b49b4b4bcdd0492901b64ce6b9f3e844c205e94919d378fa3b35c0261e582e7942fb86c4909a4d938a541b4654e7e12c865723286fe46af1c09a494d174fcbcedf1b447205fcb8e0e21443302419e95ae5db08a41ac20dfced3fda8d01731083a74c9a80a5254af6190be449eaacd4918e4127a7f2d74c1206787be112aa83aa10183fc19c5d7ca5ed5affb0531e724c7e4c50d4a4dbe20fc9bba28523c4f887b41eea0bf6cf4958fd2f18260df5fbb1aad2c59b60b928cba23db743c7c5d10be2f6e52c14edffeb920697d56699c11964c5c943c84aa3bf96e418e21bdeab4b2052968d9da9b8fe3a384e9860d1ece830c1d35aa6a41d2216c93521fe64b461b6c63141c2bc0a20529afcd9d85d117e21fb59b05713d53deec2e972c3cadd57ab177ad5913d10eaf0ff1d9572c483a96754c679c5213c2a123f1e05b4083060f7e87c382b4b142cb73baf881159c2002216841043051af70ec54c6d3e464ebd3f4bf3d647312a24a1d942b48a9d236fe87ef591eab15044dafd92445672e9311d950ac20d6c8344ba192a84abde0041118230463241a349a50ab2099e6524a9a8ee1339636d86ae02887aa20e7af17b5db738c4a056183d2b9c4da86aab4a382dc1d7f2ca9143aa5fbf028382c07750a6226a5e37b0c53b963cacb14a4917e2a6e2a7dba837f3e0670a852102df32561396e3c48419697f7534a95aa96f4c68eb25110467aabf67989caa7823b4a1424a137068fabbc4d4145ad478582ec7a62466cee75b82005346898152848fbbea1838d2e99f3810e534307a7e030fe387a9832786c0a6a506302f509f26d8d98b89ce38994eff68b70a8e007d50982f5c5caa4b947d43f4e105fb4d3b5e86c8dda047954a3cb6bac6ca5ece3418d1e44a134419cd73fb53bfb162a1304fd3973a88d274c9033a98b1784ab97e85b4fb44a930a9f4b869620d97797b097177152ab4a9077f53c3e8627f97592519420b697fe3b312653f79c04d1329ba9a7fe4b12c4d6585d29e662544c8a0471c52cd6d4251122870441b39c55ecfa1e41cc0a5ab34c7ae5d2bd23fa2e8d2f71716b1b5bf1944caf95faa4e56d04415fafefc46939a15646705ae3592f664a6d5e04295b7e4fbe3b7284488b508a209e5bf8d0359d312a291124a1ab2be3ba8908f265f60aef983a04796d94676c4e3204c13a794c17acd4659f85602bacbc4e4d4df55bbf93c85b8e1621487632e6933a5a28d420482363b5d76b65698a9620486a6525641cc5ac94b103a283f3363e508120baa6cebdbe1a0704f1e33a09a129a905fe0752ce1f2e5d5cadda587e20e7b05c4bab6ed94168d0283bfe46f581d85f1d664e6ed0b5311f489942add2d3625a7287507b20758d79eb8dfc94c4675350831a36283d10fe82e8d01efa34b3c3512a0fa4f538b5a9772667e3811c2c785cf9ac19f4ca20d41d48266fd73974b78306aa0e243d0fbbbbf4d2819c6f945c51b249410d6acca0e6400eba4cb749d5d6b8540e24d735edd3d0791ec23810ebb3e5ae913964f40907c2fcfb650ef506e2e9527596224ce6927103c1a4851e0f9f94a5fbaa0da4f194479a4c393b47a8d8408ea9e5d97378a798d5326a0de4ca92317f9e75f6a349825203e1ebd38c92993d89524a0361b57ebd53f28d5153d0408eadcdb19a6ed74b7706524a9a94e758101aca2c339084d08c99d425479581184d4e5eae74b1103a1988de3ea69d84b7a90e7f8c1b26878e733606a2a692b2c132f8c9d19418c849e59c4a64c45f6120bb25fbf1af4c818158495a85fcf777cbe2a0be7065675577a7bdd55d6a7c2e4d72637080031d386e81505ee82da5983a752111a549a6cfa4937414171035239f4d9741eda0b6d05dcaa556ded8ab5dc7965d8d8ca79cb9b440b84e9a99d6439505925cacef9cc7427dbd5820bd85940f623f74345a5720858b90d9f25b81947c4c63d01677aeb4aa0239d7a88d3bb6a3c7ada2423633da329b7672a3991f2bb3d49b521dbe5335059236dfe0ae2629903a77537f970765fa281035c77ef414f492fe408130aa828c699e40b69c4b393d7399d03881a434377598f0f7aa34811cab1f975267025964533d09dd6dcf1208ca5ff5aa5d251054da54a3b24920b68f78a84c425fa94820c7798dbd94d9b4258f40ce0aaa4209b18c4092cf207be3c73cf18a41ce175f9be6aaeabb440ce20114309c5136e3ae0e02ccc7058bfa0420f0031c3d6ce0e0c618338a062f0d93c0e9c1a38c1d0508c00fcc0c0500a0078f325a4080003c0e4a193818a3e040800078ecf85306d2b1838c04c000000100000000d080192378c00232c0e3061945010138040078f03034082080d2a3201a050840e951908e1d340e0080013820013b5e07a7f4e051a3c602001080061c006ff4e0c10d54468d1a09482590df3594aa919f538d9b0492ee941139f7f3400271bec48b4ecbf9f1311b6cbc790472dcd4ae9c7f1feacdf139348d40bcb3cb31c83a6d709f957196e377d4e0c10d54033d106ee02837ce93c1c3adc7183790c718377ae0b85186a9b1e371dc2023878ec3560cbcd103870d1ea5468d042031f0460fa4234719356a24008781356a200085f13cd09123c7e7380006a3c7f3000619397e81377aecb0c103478d1a09405ffc808c93e37318007b4152792bc868dbb593332f481d3cec54ed671704d51b366c2b6546fdba20c9d9a4d2ad99a6ef1d7341ee12dbb5a636c9eb8eb820c64adb4d31e7bbaa87b72055771a192593574a41680bb2ba9990f134c955ade440c65a10b59456a5eef68c9b327818079016dc27a14267b2d4d9d92c08d71f2a630d029405395bc72a95670c602c4871336f83aa2d99dfe3b11f405810d3d4a56a9ced15c9a44fe80bb71764744510b015c70aa3b18a53c5a5a25171a758dec4aad4f6446e5db7459c8b3235d9607b1d9417d0a0c1e3d014a4b0cdd7d5bdacaf9a5290ce3428b968a531de4f40521094ef7bcc201e1c05e14ba58f19f3c8c5f56880a22008eda0e15f63673b63287c6b7bdd761b9393dbfaff948d9a4587a020dea58e9c698fc973ee1304f5a6ef2c9a08f15df223a027f235ad0eea65d4a613975bbc868c86887f7e76ff4a9e2b9e0db63278d4c03620270823f3e870ee29362eda04a954a85caa746bb4629a20d798858ca6646a3d7d26487b49db54faddec3d6382743a75dad29e5f82dc7da74f26a5537eacd1126493c1fe1a679520c6c8eb511b22f3f5dda3a01c9012e4fad8399ef4bb54ab9904e9dec4f6cb863c39ea5a165012a4cff021323ac235d6a30c14ecf81e248804415b54507f69a3b4831012f8087404314c5ae9204fdf083755b4edbdaec4cd544690f2c8111393bda145e7831f4349b0e37b90e071b0e35180f738d8f139ca7011e4bca9f3a6cd0e69352b821ca3e8dce23da7c41a7b820e7840052710c12226a2ccaaf5aadb38af4fe2d247d3a64ec81a11418abde262eac243904adb4fa357d810c470a6f4b685f2605515820941b0f38b0d1e84a8c5100741504d213caa673ee00232ca400f021a34767c8f1b6e4041e065f67ae1b96d1ba775a149c818953cd7f736d87e8cdb017132721c0c84d11803014150b329f95bced1a4a5f807a3e107a3b17d383e1c8d3da01e1aa59b9e37e794077250f93da55fad56dc110f462307de61d10ea4d37361a3c894c63a180d3a188d1be01c4819964ee83e1379e9154026500ee44a613405d3793735df04c661d31bb3da50de61a2e6daf23c403890bacee4fab9e60d24bda197960d05ba81a4b477c6b4397fca92b681ec498fd88fea8a1d93029804b2817c2294853715b6324d6b20e8df0abf62f900f002d5404a7369d1b3e8e8387f1ac8bfba3986f00a5affec71238f0988065234edcd0b73a56383ce40d0b216cdcfbaaafda23ad00c44dfbd582ad23c9976ca40d2cab14a3c8489340b928178a51ac326cb3ee2f6319042c524aff2eb6deeb3c1b609c540fc8a71f3183605a19e30904aa8cc0ed234e9be0ac180aa271536f99af00be4346d2916d7c1f52ce805a285a98ca557bbc32e102f77cca97ab23be4023166dc9431f73c9dd01f5f15700bc41c5a4a63a7a0c1fad702295955cc31fb5f5221bcc32c902ae8bdd84f5d7e15be6b026281a4e641052d15c4557e77780562b2a4b11953e814d52968055225cb41b705391d948d55301a33402a90da94587f3d792d6ee3e11448a53387d099b1cd52f4500a040f3775e7f2398c02c1c4a8c6169badf8593c840241a6b77cc183873e75119f60340e9d40fe14fba4673e9315546cb0d51843c7183578dc50116013c81eebe1f74cbffbb277364026104e792cd9ec9d62da1d974010a64133a8b978a80492b0603a772e0f0f9360cc778578c8bc786c9c8a7a6abfb50c4402413b7c34cf9e7b77ef0e8f40501b4ad8a58c262a8dd4804620294d222f426fb018c46cb13f58fd88c42078f8e859958e510be930b818d66289555118a493ae2ae22cdc559022068370a33e6d86c93c79b60283307fe2b531cfb5e72cfe829c2dba9ec63706dd0d0fce17e44ad324648ea96f3958db0b62d0224f8926b1cb3944ccc2f1821cdac5c4532aa996f65d90f3f768f6541684d09f435d10f7aee484d0732a7be12023c70d1e4d2e1764139b25c5a4c8346afe1d645c090e1732b85be09a34a7f6539d33c916e47f4bf313997bf4c66b4110be6be93d8f08fd8f16ac967d8ecddca56bcb6755cfa88db0cd67cd82e827e3a8868b51a569445990621242da696c0bf258202c483208a53dca05a51fe27b05416abb8608bdbba2555790846d876e4d2b1e375e2b5a7715b1bd2c6f8d152499d237ca07bd297e661524313d4aa89b85eccbaa20d65f8ed07cb154104d96c760a5ab9e7d3d54902c445bb898a55310f353aa95517a5390dc63ee121d6e6e735d0af22775316612e19182944ac38f5555370aa2b66690e3b1a3efe7308f1305c963c658ca34e8ed0f4341da3dad0b1aefb62dae010a720a4ae7ff51cb17a1ed18f70992f064c9b46fb577e63c413ed341e54b19ef7c8f07d709826c4ed1f25b7ed5d51c270837db39778c579a1cf526483a73ec0b3e62c3f66c2b9c2608fa739a6e964dd750e14c90c3c2835d7fb492165c4c905cb32825323e5ea5ce25c8a6ecaac336e62c418ed6b656bf16936bdb84ab04b9e36264f5564d06211f25889dd9e3e650e128dc2408faef3f6d3c39bda7a427098d0431c82454a8cfae0b3a2408426fd099495b8eb99d47905b53bceb950fea457ee31c41fc531fa95d22e45bc3718d206ff9f9dea7dc2fea0a5af081a3c331a22a657ac382f9b708a259beea8fbf11c32982fc312dc7dd92ca722a1b6ccd814b04793c88558c5b74708820a9d820b4fea5533af8a88f871d82d4a73bd2934c162f8ef00c41d41cadf2831d3dba10642f33b15c6aaf7e3784f0cc5d6c73dceacf07413cdd99d3a758d1b3725979e00441d2d3f17ff9bc409063ce5d959348d3321510a4acae1684cf78e61c52e1fe40f24fabf4963629691a2e9c1f08c2cdddbffbd49bb4735c1f18e59e27361663a86d303a3e90833ebdec81ec71c3bc2ed5099db71e88a7eb4494a57bfcba7920c89cfa7eef984613d1e181209bae7288f4ee93c93b68d22bc6caa2313c3b10738a5be1ea5f1e4a5c07b4baec6dbc3254e4f4b5fb2a55a94eb2baa303d972d2bba352d017bde640f69c3dc5af94a8da1816144e0ee4d9d4da9549e8e2400eb5267e32f79492cdc1815c99d5926e46ad0c3b0dee0dc45c395fe7e78f1bc8e756213ea7ba0d24794a76e48589722fd9402a1d458718fd1a5bab5b4319b6e3557af6fda7b69d1a48c2334ca98c9a95e64b03513fce796800c29d8198e4d74d86bbd860eb514ecf0ca5a0b45359caf0d87123d906ae0cc4a4c3b5c964164dd9c6e8c081831a64a82e6fcce4cd4557546c3bb3a5bc3bd1dbe05106193c06f2c50ab1ae1bb4a3f4a871033b706220a628f129ba3d6ee02083875f18881ed7313b5ed4feaed8603b30102f85254f2bdd170877ed6db6b72f96432fe4725976e2969719e3c2e0ba401619b36767f7d335b2bbe302c9e4fc6d6ad76e0b0461a93288d218ee74f0fa92705a209eceebcbb7a9738f89775930d3c36a3364b556f7eed7a30839dd0f0e0be4281663df06f5967157208dfa14a32995e13aff9f1548afa354c4df2e9d7c7d5520ba07f10e9dcc4fe7141c1c1588a5f73a7f4a673df1e28e9b023163fdc8ece979669242102e0a896d0e0abec7fb9016e19e1000239c13c825473da6289ef366afaf096db873cb223d78c784bb259455b719eb313b8d56bf830b8bc6a8444de68202592c120b44028128180693ed1200931308001048200bc662e16898a6c12e0f14000367301c32342a2422181612148dc5c250281c0a03426130181c088341c13028009129356b1e939ea9056c921dfaf7d50efdabe187dc5f658517b756f198a760b4b183ec8f1dba16b9e2b0dc7f8aebe699c33bb6a4368609fed3c50a34b2222dd55755ccdbe84a3331a2f1ddee65de233e57f740c267bf1c957d04ceb3f83f3b1c7df55d2266b7cf49ac1e1dba46fb6730c3d288324673fa52a78716669c0d185dc794664852b6164e246350c3a1d532e0cbdb8880cb98d4036e89ddcb7d5a38d4b8eeb3c262c5e6aae5c1e82dbdf6237ed3a98aea33f03aebd713a646b0ef9d5bad0bcf253978114c96db21f3b991df261f8822ff2d05f6434c45e20bdc8a0456a89f0ab126b0def65e8796cc3faea66f13e6807792b28c87eaa898b916704560b96c380b50cbdb47329b292863b9f3ef067c84bb28efd5a0d8a18c51b02e9242ac44da189b75862f866f2ff412de44ffc3eb03c0011f4b010c1eb24ef88381a90e41afca47da0bbd118f0e6463cec712388cb40ce54007401ecb48216232baecf3adc4983cdc2bef109750b99d5f15465e4225eb1892dc0cf243dcba5217fe51a6438e88a04cda80963fa7f356b45d0df9ad89e87f5996aea0237dee7fc239a75f4f1444c09ed1079139d63617235fa99eb6bbaba4882c6abb18154c9feaebbae577099d07644198db8a89878355496e5d5badc44e814d3146429c77b1349218c6adb85c98e21127ac9246d6471e1b4680cd8690ae0e8d01275ae39217e97c354408865bc524bcdafaaee56eb48dcbaf48305b6832e313db5aa9be558734e4914a3282a6680426ee875b754d36c156975b55aef7eb78c7febd2f7a78c858a1b08cb4ff914ac6f1377f79256eb8ccb446af76814f6d2126c1a3a67b855b86f3955e9fdaef329ee74e2a91f37816910776f9b87ecff735fdabdacd6d2d7871b7276ef6ea6a89790b47e87a03e660aab9654ea5ac2ef3dab978ab8d62fa3e15a32b35fbc0f8cd12c732f37737e1cf11d00ad68c760afdb483e5386180d7924b906bd9ef0a7c3919c4f933e1ffe6e820fd353009d35b2123d75b02a91c6ece1e97baf6121f2d17de23ca3b5d53ccc900196248d05cf88316de2e447773414696a4c00dcb19d3981e74d8f46f55518dd5463ee0b4d4a0c853cd3f9e7cff699c3e47c02120e0a21a15e1ecc6397b582fb86907ced48edb7cd31f1edefd3dada273915e4e2e60e550ee9863b5556a94451f3558ffbf634c170caf25d6c83c12d21b4591e4b704e8d6d67ef098e36704c27ad6d50537cfbdddaa963340e4eab0eb8c60459a04753c9692181a7df180544c9340fed92c70e04bb4b8eb9e3fe687c2738ec510ca9af150412f1c5548b0778d8b28f72de65049690f1376ff2a7745bdc162f1c789f9cc71a6ab7baa788a12f6fb25b8ccd95a65053fb242f2fec15921ada1ae83709b840923f9887bb3612d2ae30a282625e1883fb136e5fd24a7c15584592150828784051198437db502ebb514267aa24ed0d219d0bf7826789c482f4eac781f61e64d7d05be0551148164c851a232e12144381fe7120fd038618d95ef2b9e44f4f6fca921ac8945a42abc387cfbefba4abc85e613975ec145957f93b9533fc0fba8bc785b6657e3438c54033d2b34cbfe423883b84629a5fe29e40c00d59424ffc5444e91c81e9d033b94415b0856fb7ec57cad3e1dce3a6ab0c40a2a7a197ea7b844c19f363bb1be65946c96b2677c2d46d5cdc35da65b8f8d2c02762f8297d4450e127a7218d6b890df37d871cc8b05786879f60a4ef8fc6c37a5e730e2ba17c670484ba4a772494d39eb940eb2566ae688ec8112305ae8cc96c786797e0613d6c3e742dbe5432ecc554272140c5e80817031ca4306633d4cdd65b80159bdd4d9515e3296f40eb473d76ea37e10e9242666d346ef5a34847300e063308220b55338c6e41d6863f74af02eda277029bded4c11eec56524a273afd49be877fe985d4913f225135da306bdd933c5ea256c2fceb636cade9c5ea4385c27d774a872ecbceb504357e68e2db605994e50771be112d2f04bac58875d2851ecd343c17c7a38d549422ab910840ef77c4c6d30117da965585a070fdffaba4f9dbacd5b47b232ff22ef7071893365151861525b58fa876e271e6bc796c75c3ac5a98208e4cbdb7d298c03d16646744ac386213f92f7cae77b28bfe1f914292a99b2546d0ca94e030854c98e546df46e2e2ee15e4ef31628deb891831e28dd3bd89fece76d2127ab3e02f1508f4bca84182daeba379be6436c927821c29632bc85da2bfba5cf97b1dfd9d1619deeeea3333e0d67510fd218ec8275adbb7509845b9b3e419e074f7e3602af9fe2386d786619a222fde5488bc48f1923341f7b227fbb9517fc63f98879512000eeab34515e2d3217f3ed93807e2f5c98352d12bf8e6764f26cc817bc04dd8ff0d52760eab957763f18f7a82ac1854ada511ca769df3885185d504c60371e2ec9255dc944b8687236390d7cd98f4a9d68bb2ac19c4ee58f0d3ba4714d064b7bb966e50ce791d117cc42ed741045aa25409ca4fda26dc6a0a9abcc681d98fb9fcfc6ef3e78937d0983818281b5d85ea11bd7f87bbfe5c397c2441a18085b91f5b672025d98cc0b5a49a000fd616b8fefd08b7aa9cad38c9719503eb8da9d2f51a0eeec59dcde4b9eb0e1a3733c518704bdfbd814f031dfbbaf02b5e0a487f77ac9e467e4a5d4926fa7a2216a3df4a826001df6ce939f445a6533197006b34f971ae3d8dc7e39d2f4667f01497604ae162f2c7542e65df16935fd486ffab362e2a9ebae55bff3ab7415a93da3219b1d1ac86486403136cacb4d6be63901fa9cc6123a10beb2db7490a26631c9f43c0ce575032bddf888bdfa5fcbd446cfa75393bc3cd257672c000f491feeb04804f0ade19552a03a5f2e706ebfe4fc9088deabf07c09520d469d04e67956b14720a3cf92ae50d3738477d7438d3c210598f97e9634c610e2373fcc4bd0f63b3c726fb144e40ad63b1b5410910e2aaf85137a600d5482060e11238b75d2b1d15fed822c03fcc4764273459c683ef1bd828e8ac42dc573c046fd373956a9bfa5f060cd62973fcf2054bc7deec6bcc0650fff0e9a36ee212c36d3016ef85c0f0c1755b2d0528b0a41da907ca5195f1781b81c4e17041889eae464f0ac51d83d8739cb25a81b96477a7c0d9a1240e17cf37f116fb1fec9703e841891ba28ce6ac4fb15efc96a09b8758b127aefe72438723ad0dd0adfb6d6d6621349ec7b9a1b6ea5d1d4853c863bf892841d76cb50a9d0091e36fda0119c24207471b9ba6648204b7aa745a0e0507ac704f8cbe10402248e4c2dcf1d0b7366ce0114510bb22b91694ec104b2c20e9a0c62b23b5775a17ddfb1d040463bd492b63cc6d287166224b2fd48c710858e2485374cdd34a21bc516f841c97b35e15bb18ceb93b9db34412f2e4ab0036cf5fd254d3968fa60caaf88722bca94560d5e726d7190bd3954d23d2c708818f3023195d1b3306bf7b723e8ce4dc8c1e8b1365c383395e66de0facb7e344854e8f69aa178146d0ec31b3f46fab6e1c0949f07858919180fb49cc3670996606b342d4857e460d5efac917516ff56170a9465b479cebb28d05aaa52b771986049ab6e726577059dc2a98ae3aef76f05b62bfaabb9afc8cfb2c8697c6b8f709c5b639769721889ce1ff1a022f86dbcba4b749ef270bfc5cb1354bf6ef6a18f9c2ddfe10971d46a8663b8a720e48776097e47e514c4fa9fa8ea547c26b8f4700f01c29b194574235040b58df1b7db5435059a82636b3e67abd91e32ed6073dfa1a585ce6eafb1bd79eebde40683ff578b4a70d46a58f1169b40890af1e343c3db285e078dec7cf6d83f892748050b13da805202dd8d8d6db1a2ede81376f521750bb48d293c0ca8c7add2803bb80748df85f9371f92e19d729ca5fcf8a33906e733f11e5843e1a81522ff628b940fc37ebdb002d2ade1b570a601d364e46f221ec74f403890f02fb9dab318254c13c82670acbd428b1376535c6037aed8dcf830cbbd2c6e575edaca71820e5753d2dd72578666202686ec9e8d8dbba436f2a4353b56e8f3a5b8757501cb9750b02aca3b6d5e12aa6e42124f3e687049e379d2a8df8a51cec8b15702c1ef0d914652161904bf73d066ce25963f0d80cd738adc7cb0b7fb102a29896a26f2fa4654c9a365340964803bb3d5a42627d9d887f0c33dc5a7a86093ce3a35b3d1e6a0280c4088edd39ecdd6b5cd1c5e79a13bc06ef623dc23575456195ce028f051117240af5a0eb4bd773bdf52402424613bc7435c1cb61d3c915b5773ec6bee98a98dc96929a30828824490b699b22c35b2e740ffd086508ac86db92e296688c0e1281bedd4571ad1370287dd18f0361bc38df084bfd0120f59c15d327341944d466804c8fed587cb3a09febb9187a40d0874ff56812f80e6ee506f73fd2151a1d396439b5245b602afc8e939d1d46b87e214b40d773e45feb822e6c5100a58e2a9f028ca29d44ce111181fa97a0708f84b79e80a39381645ae0b07eabdb52e6b1342c78804084e0a28dfce552c89046888fc1dc988465c16d9613e4c4d81f74d41f9b0fb208b13db987035cdcd5b45ca4b8f0123b28f3fd76d18cb9efbbdc49034d6319f042cc499510df5ad1912593c0cc7d5f1d043b11c69df8502d1da41ca9657de747e3ef546e9c5fff589e8dc18b961047f6e531334f4834ee0994e0be2ae03162c5384f1d29acea9bb8fd03ca69c1ddc3c15eeb1443036ee6cfd38422855d64b6489e5c6756435a0c7a1a2af51137e45387b30e9fc0c5fd322b4f6662903ade5058a55ac0f64a79ca09a2a5c5046dedba9e8b23401e5ab61099e5de1f62ff810d77c949f2e24ba18b46b58d750ebcfc1457651ce06182a50f925a44306267077ed810be8afe3f513d8502260dc3bd3a7fdbbb6da8d2a01e2bc378b294edc23b467b963ced4d8de244debd2b5e3ef3a6e4d42e7a5f7e210fd01e47ba1b98310c087da98d49b37591a401d6cebd7048d85c926e30525362103d5020d0ce43b834cb282e7f8444800296c50584dbd6cfebc5728d805a0d066abbceb2efb6046195a6f0dd7548094836128de2ed099b99d5edcb9134ce11ad46a4d6353279134aae715136f1a9bbf999c5c08a0d012d732cd696ce1d49289c595614e42a164492883dbbb533522298dc819adb308a15f4d4d0f014e18f25b8802c680438bdf90b2e6bcc405a5c4acba3389725eaa37af55d1a5b2191373ee610b7247e3b85ba5719c2deff13f076259e8aafd6b0c96dc823e718db1e9368ea4d2cde6a2a08e92a992e38a823b0c3748de7e6693ebd1621383a6b70bb24d514cbc6128b65f4da9c97622245e64e8f08a3717e6207b699b92d618a911b09ae5ebb8d986bc59ad168cc6dbe0c5fc4ef9043006939f18b103cea8520d364bd1f1edc06cf0522dc79a7b5a277e3297bcffc062012ecfd603ca07c1ac8b91c51a625490dfc48fcbea01eddbd6d738a5b91ec0606e7c4f397ca3b0d3dc7ad5765be2e80e40e051ff5efc2b113d119fa59a95950ebb55e236b279b53ebf4dd528f95a7bd414bb3e6a14792eb5f425bfbc142649179aecb7a8b27e5604266447ff0f12b6d5ae464ff70e6df144bfbe18c662f9ebf0ce564d889e8fadfd5b6d21f8f56aa4f397e998d9529c0a9e7d75206c8350c9292304de115f6d35032886ddb30136983e10e5ce15ad2b836746ada77d109e5d2d25da8c7de18ccf50f9e8a997fbbd7da865c452eacca1f0acee2ab2fb28acabefe8bb17dfdcb91b73bf0bc288140a6cf6699f9fa0fa07cc00c1f3c6470ad4e0074a4b121df31607eb746c8c54dcacbee4b8263b387dd9917f2497b693f66948568a840c2ba5bd227429497fb0f689e817bdb51c651ee82c8628e423e1c46af9e86c61b00093ac06763fe4609a10670bfd7e3de9590567d751fd346ac95822413100d5cf5c521ef75413b2b21587f2b290c01005140ab2d01f247ec373661adff6566140b55f3baaf937f1bd3f4b314bef023aa3fa70935a7ac45de5d9f61fad9abfa3c043147a165835abe23ad5b90fb3326bb602203d2cfa5476b23d1cb681bd8eea47e1bdb802d3b91f5ad78c5331299a51113344a395b7f4d86e8baf501dee94b9f30a9b8f7678831e817e2ab957ccc2619a1394cd3fe76eb15ad2bf67bd4386f6c3f063bd79918a289c291d8c9242a7a6507d9fcc8499e26bfb45a8c18168b9d2f7a2afbe6ab68ca692916613f6a18fc002ea8803f924bed9fd04270154e3a066e304034c6010ff242d2f429b651f29dc0a6625561f7033a2fe7435a12307cd03ff4bbda6110ca434e491873d71a519c980ef6e3e5dd2661753d1aaa20245864435ea3b7af8c0b176692398afb84a52707b5743eb6b8a0653f65bcc39bd5528110dd784697f81d9b7e4d615006403b0a3999b2bb4013f201013a29e33e81466326eea68189462e6aa13e86f9bf9056b41a606bfdca4b1c21820502f939b78228a48de48d63dc5616a34400f709562c09a7686d6c4e003213415f5d1cc78b94743e9aa4b200f971b474cbe6b640627cb69818b86443da1cd3063e5d9afedd0d5cbac09f59c689e43cd19be6c4dc76841bb8647459e612e0bee3ef6121b3b8e94a91084b0c133ef60ffbd804c7286411fff0ca1ba5383faf1ab04237f37557d0886246b1460fbc17302ec6477ca99ec91ddf9ff2469e4a1520f2b10ed576d6498fab84c16210d20cf596e2b0166fe3ee4564d8ae6ddfb11c96470e3f409b66fbad3c81a9ec2a209b4571a16dfb4d81a7724758108a7bf8768418e45bf7bddbe9bdd2276b992550ed12bab2bac0d3287e17bb823cabb7381a31eab7aa1f6d66c558cf10da82affe2640e29a38144dfb7a0e37630c443cec076978179495d3b0324881923915d4ac164ef42d504f95d4547760a0d4c35c4a510c431913b04896f76eb937edd710598d466801ea0f24d432ff701559021a261725ff7d4826115a302ad196ed28e26274d8e3446ada9e3ae0742cfb24d8ad3d9117f6a34794da751f5e51886d146859f0091059fa64977da7d69a21d374a1a00dbfb5648d05473a1d7de292d0008ebd2cdda862900d7b772a13b27d2da13377f4d57a5a10857c7b7a0cb65cdd66bc7e66346d739b25f1f317f337502a6e82c95d4e60b53a4805cb77a4c1e27ca665672fe96a03a5d33c0ccc66292b8fa2d6a581f7ef9d59b20bad52b504bee8cc52b4d4102cdf8eaa87e2ab84fc351b40b9097cf69ce51bf1f77df4b2cf0d6d3d70f99df1aa73bc18b2748649381ad6fe2dadd4d1db85fbbe917753badb717848bba399102717ad72a67d37da5ac0a23126a1e77cc42fe83f761f54c25f5ee2aa18f692185c0063439eea3f57870cd44e2c87f77c8bbe9a67a644bb59a4d07ad5fa441bb578a846256360268a86bd624f492228400b3a4a380ea1ffe38447675d73a6dd1b3ce3caad35cf4d15fa7939a9697cecb3ace0f3649420ce0f987357779c07a10e0203e40b4a8836ab4a6637d852b99633665e85e116fec0dd97b27956b99ab69ebf5a7651fa8e26640c0ccdf43303fda234975a7ffe5dca0da375d2a98f463dc4a162bc416013253b74ed9faa4795fc242ddadb79c2ac5cadd36211e4035dc36af08ac2a1e8136f8ca0f0ae0cdfbce9b081e0353df5baeed320ffd1c87ca038a6307671bb26199bac09d4d7b03230936184815caf56072d0d9d96cce0a51af90d6b92444c099644b266bcbd544e299b9f78ad03a314299905574a8e4bcb8760457d7eed1293309e65958ce752e14d83fa62ccb57726a0b3562550e5198400e737746b4da3b1b6575dbd5f526b9a216dc2be9034e2f84b97d9c8e2f3d32ce459c4ca7b3ba87ddf55bacde0ee00a1d1c7617b2443d0753016f4fa69466a3b9ac5cccc2c45ec53d9d50e9ac0945d11004a2424150ebb74bc4ddb20b411b94c6e5cc966accd6c4944e70c6e77f45c7b586e72de3f0850e0284fcee010729cf8a08b5ef3b941353a50acc2a6d060a8fe2c047f83362d2cfc1cc4c710a3f5d7b49d0234784ae090d8d0971fe3198dd797c3b24df315cdd074cb399078a305d4f73b0c00ff9164880b30db280ad9f878547642dbd130fa34dc74b7a2a0a39503a2cefde7a1083121a266d81d6f83aeee83ca75de18b7585a4b9d6240f04688b97ec14be987a3beb00789ee433e960604ff91d80792636a4baff41709e05a7b6bd4211726b8d43d621140b680f89210a5c24e43773e39f73774b7288a859f2db37dc3ab169b1cff1db7870272cbd1e3694105496deb2e5268f5042dc423d1d0264fe2a8341e5b3286e88cc7210c90d3e9386f43bc76b61e0296ac54f1079247f385bf543c308473a9e1a97a88d9de21b99494e75e5b55573d0a5348572554d25baeab9073ae5967ef492ae403fb89bbd6ed2279a42367096c0bf4e0c6b5f3109ce552b0bc1461f781d7b59cdc90f5661287684ca5544b8b3a79bdd0f9b2ec7e10baa21536e5bd709694d65b9f2d5f4d555a8eaa75b113a5e986fbbc9d55a8f664cec5d0989f054a6f00b822631df992cc8afb8ea7b40c885bcde8ead63e693e327ce42a9be3092b7f13eacbbc9dc6f521b297bbf931f4c1c21dd04d0782ab2449c1222ba8d768e6212d30ba1c753659c72ebca2eb0a7eea6698ec4cc862ec931d1c23a9ca4e42a540bf38da56802c4f5a63aa8fd19368dbeb468e821dbd56410bf8e22acd3aeb354ac88e4370128ccdf28711dc6c578984bcada35b70506dd1cf986081b08a2a0d8cbd95e68773a128f5194b69dc11c21d4b10d452285e22fd4522ea316c82f14ab889d7cdd11216dadf96a6c44e3933cb169c8f5292e2f60abe3c9a8d4ed2565c658404cd759dc097bdb0a51bf54ec9add06b4020add7374b9b33a2c6db36491bbc7fc69903150efaff1d5190f76a1466a2dcc0038d3a240ea1469eb66d3a369b8448ce18f5e426e9b2c4c1edda198d76bd27f7bb709d21c332636dc12b7b0052f9ea81905461ea1e8c1121aeaeff866e0b14a38736d9c9919199c1c4f144fc6de69cfaf62d5de22e263e4f971dcf629d89f6b934fd2a79c9e74136a9ed779c344ab78323f06f508df444e7b99ec7d3e2825d51b6efd1869ce3436324693c8fc0989a708598c05387b71189e3629fcae7c4ad00681d83fb3dd1014bbf6ab8cb00bb579a7e4ac514f493ee5c6de9b33878750a5ade49d4388711750318a730aa0518e49be6dcec13c53855caa13eca6328eef713243574ab14db0d8c76c8de9aaf636a0e17d774996863e2c4c57ada5d50c6b2d81fa74e308c331ec5dd145942032e071d539b74e21c14bad6c230eae1ac9184e63699e3daa2130731382b76a205e069c2e511d653fdfe3d2a52e2e5b75fbaaacd3e5ed909801c3a7c6fc3551073bb452c08843a3dc08daf0503e4640c5edee7c526035c9fce789d383c2d90e67862d37639bf756708012b4a811b84e3316284c1616e32281d6bfee56965502a360f692c8c1b7b9c210a8e5fbac96de5bb5859c6158c878741a7bd733b51015328952aa67b897ce87be4c91666ad68dd4d5355556064f988b6382b92c29251947ee71529e01013bd7e245babeea06cf708d8d130bc5b34172bd7643c2162474fc53e5c350b9855b8c12fe1d8cea13b591c48924584b26e4b4791f308833de053eeeae4e4cd4b98a9464de54ac18184b1aad4fddcd397a65fa0c1c240049d584701c448ff707876dba0687d1e228c743ccc66f91028c375e89b28a4d73ae006d1331ea707907de43ed431d44897a6392bfe12b6cc0fdf7a470d082bf1435d3b0ee659263edc8f106e5deebfb0a29a3c8d4b428998109104443a0a0e94880233a88c1e9b0ea03c58e929f8c52a00b7e96fa20739ee1bca1a75d1c3998445aade80197b114ae72c66102f514dc016ec6d8de89103a72a8d5d44893517aca077f171ccb92f40006632653bac6a3c13762abce941af1f9de619eb1a1226277d9b26628035e9296308326d5a9f351f5310699cb95cbbbb00eeacc16305cf35a0e2fd21729c03a85823834e00ef339fa06622927d302ff53202765d126650484e9616259bcad6205f7e0e9732bb650628497d6943318afb39c305d008fb370f9d4dc0cf5db9bae408df9da9a4842149060260670c33b03cd516db7cfe6983d37efa44d388ae51a5c1b0a841e3217772f3ed4c1ee73352c4402e72d58539c639242ae037d855a05ee44edc824850ae7baa7c186f32382ab2d280e62a9e973788aaba142e4c5f39598931948318bdd3f05e2b6cf12c019d21e42900d91cf7d085351b0d9865a17870c4bf5da7217141a267ed5965ed34f75fcd46412927da81da2b1a058e70eb8ba30a05a77986ce485d25a4b127ca2f675c1e6888d15dd9d598bce046ac8a878c0927cf117651c710aa868d0138fb81d3517e326fcd81680f9751dd8d1f2b4abab3f70e4faf06cf8f8dc62264610711e51a8ea86a0cab45416d8d56cb7546c2eb0817fde6e8b61353c725d282cb06a17a1a5ce899574cf25d1412e0af1a34874c5a5afc9d322af4e5c38eb23114ce698f37494aa99966e67010f6d30d81e4d57fef3feeb0206a75e5334c0fa0ece07152b277100c867949d0558563416a85ed687993900060299077fe8c15cef003d5b928a0ac520f40129f069ef8ec98803676927fd18b7d050e530b397e12ebdbf4e67085a8756a06bee2b97e59d24911f5d2726eb92942c3c5793cea5a6a6f0f41eb235230ac5219e7dff7a280054b7fb05d2859b0221dba8394df9f1fb59fee6e6944b7022c57da72035a385d0270ed552116123eb9839e63124630271b838087dd3a064e40f12f5d2ba4462886faf695274e7c6605ede79817ebe05ab966bb35ccda357d488b1c7590be3000a150aa6376fae4a3d4b9b46a125d08b92384442ae7a8806ec6ae00cde88d3945063022df334200c090e72329b45a0007115788ec5638e1295f78b5384fbf6a5383c4e8b7dc020a58d968b4b28447f238ec94731f52bd83c0cb944538c4c4ba894da9380358d72c451efd333bba49263324b133c9c362b44c2c55901895f2764580f491ba97e4f6148929de6e81db189cb1e7265fdf75dea4da87f9c1dd03a9fa8f4436e38ce7c8ff50866cd1e0f2f52f693fade836b9f4d92ce8e93a5b7f3a0134d7472c26c0598b089da508fab09e10a88464d6b0e2f0b96b01df275f25701cf6cb00878feb3358945dba982c73b0c62fe6d404a5f26ced7263aa59de64489eef6d5c0056b5270f18c0c262f957175e613e915875fe894393efa06114257ce349a8b2c5b61a6b396334456e16d248edc126f92c39779a7cfe5fda325a3d6ddcda51a86af5c673b40aaaea232d2a7da99527fcf2e58d570e4e21844d250c30550be06567a8a329ac9cc81581bcacd1fdbc92c02fe3b5b045893dd7d764e7f7f811b3899980ecc94067e21a742dde7ad8d51210ac0378072f3433fb3f7042e3ad01ed7f5dd0286a3fac3a1d9ad14d625e9fda5a82672e7264c69e79e259926b110803ccd33dc7c05e9ed71c3639bf0e7c74af985ab39060180c7fa627379e38e4a31be87b446bfc5a857b103c01906a08e6187ebba2fd528623a0360c2f7352a3aa501aa880ce53c16e8524fb59c100531a087e6ef2ceb8e47e17ef661b9ac7ce125d148b3c380f28c14ead0d67508582b7a0b07752c82634b92ea35297f75137efdf4f2624ad24c2e75f34f68da16f8f5db5b25fe09426963e9a0b4030a35fbccd12c11dfff20c344cd0955435d5ec9d8d60613c8eca874f999a7989d45d6e046d078a3c44dcfb94178ad804ddf7dee6e95f986e81194349a25c7241935473fa93749bb212a397f1372fbb9922d09b266c123064cf984108cd8d428bc15b4171bfde1bd0acbe0eccda7ada25e24f85860bce4b29061dd09fb81379a4fea9f5199a4367e41057c17caec94c6d086e1ccb867292485d61532755e8ea441865450150c539bf65a07ff38f668929fedec0d21e0c17906b36623020244cc7620494f9fb6ad8872a50200f40ccd6d6135d580626926e34c628a0c38a8c5a4c237eddc28d0c17055f7786127d69887a0c78af9d3c9ed2c57c457c26cbd4c512e3843d42072d3f0bd3617795a2744c7894616166a4ac9430b67764ce5e01525b57f105d92e6393b272190e4a4e41d2e9ebe324e41ed1934edad3a30ee2fcde0d01cc3a85d986a7a72bd012271b9541f5178f07e6ace39dfa2804495ad17aabc94dcff0d9997703e26298167521dd45b344210b327e91964e7ca7e76053ddf4548e0ac2cd5c8a70cbf746d0d2aa4c87e08442406010c499842ee1402a8f8551993ff7414434d8894ed0025fe40f9071b16c4ac75c0b1669954ed6fb2", + "0x3a65787472696e7369635f696e646578": "0x00000000", + "0x3a6772616e6470615f617574686f726974696573": "0x010c88dc3417d5058ec4b4503e0c12ea1a0a89be200fe98922423d4334014fa6b0ee0100000000000000d17c2d7823ebf260fd138f2d7e27d114c0145d968b5ff5006125f2414fadae690100000000000000439660b36c6c03afafca027b910b4fecf99801834c62a5e6006f27d978de234f0100000000000000", + "0x3d9cad2baf702e20b136f4c8900cd8024e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0x3db7a24cfdc9de785974746c14a99df94e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x3f1467a096bcd71a5b6a0c8155e208104e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x3fba98689ebed1138735e0e7a5a790ab4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x3fba98689ebed1138735e0e7a5a790abee99a84ccbfb4b82e714617e5e06f6f7": "0xd0070000", + "0x426e15054d267946093858132eb537f14e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x42b50b77ef717947e7043bb52127d6654e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x4da2c41eaffa8e1a791c5d65beeefd1f028685274e698e781f7f2766cba0cc8300000000": "0x0c020000000000000001000000abc3f086f5ac20eaab792c75933b2e196307835a61a955be82aa63bc0ff9617a060000000c90b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48000000000000000000000000000000000000000100000000000000", + "0x4da2c41eaffa8e1a791c5d65beeefd1f4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0x4da2c41eaffa8e1a791c5d65beeefd1f5762b52ec4f696c1235b20491a567f8500000000": "0x00", + "0x4da2c41eaffa8e1a791c5d65beeefd1fff4a51b74593c3708682038efe5323b5": "0x00000000", + "0x50e709b04947c0cd2f04727ef76e88f64e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x5c0d1176a568c1f92944340dbfed9e9c4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x5c0d1176a568c1f92944340dbfed9e9c530ebca703c85910e7164cb7d1c9e47b": "0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d", + "0x5f27b51b5ec208ee9cb25b55d8728243308ce9615de0775a82f8a94dc3d285a1": "0x01", + "0x5f27b51b5ec208ee9cb25b55d87282434e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x5f9cc45b7a00c5899361e1c6099678dc4e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x5f9cc45b7a00c5899361e1c6099678dc8a2d09463effcc78a22d75b9cb87dffc": "0x0000000000000000", + "0x5f9cc45b7a00c5899361e1c6099678dcd47cb8f5328af743ddfb361e7180e7fcbb1bdbcacd6ac9340000000000000000": "0x00000000", + "0x63f78c98723ddc9073523ef3beefda0c4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x6786c4cec8d628b6598d7a70ace7acd44e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x6a0da05ca59913bc38a8630590f2627c2a351b6a99a5b21324516e668bb86a57": "0x00", + "0x6a0da05ca59913bc38a8630590f2627c4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x6ac983d82528bf1595ab26438ae5b2cf4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x6cf4040bbce30824850f1a4823d8c65f4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x7474449cca95dc5d0c00e71735a6d17d4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0x89d139e01a5eb2256f222e5fc5dbe6b34e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x928fa8b8d92aa31f47ed74f188a43f704e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x94eadf0156a8ad5156507773d0471e4a16973e1142f5bd30d9464076794007db": "0x00", + "0x94eadf0156a8ad5156507773d0471e4a1e8de4295679f32032acb318db364135": "0x00", + "0x94eadf0156a8ad5156507773d0471e4a4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x94eadf0156a8ad5156507773d0471e4a64fb6e378f53d72f7859ad0e6b6d8810": "0x0000000000", + "0x94eadf0156a8ad5156507773d0471e4a9ce0310edffce7a01a96c2039f92dd10": "0x01000000", + "0x94eadf0156a8ad5156507773d0471e4ab8ebad86f546c7e0b135a4212aace339": "0x00", + "0x9c5d795d0297be56027a4b2464e333974e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x9c5d795d0297be56027a4b2464e33397f43d6436dec51f09c3b71287a8fc9d48": "0x00000000000000000000000000000000", + "0xa2ce73642c549ae79c14f0a671cf45f94e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xa37f719efab16103103a0c8c2c784ce14e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xa8c65209d47ee80f56b0011e8fd91f504e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xaebd463ed9925c488c112434d61debc04e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0xb341e3a63e58a188839b242d17f8c9f82586833f834350b4d435d5fd269ecc8b": "0x0c020000000000000001000000", + "0xb341e3a63e58a188839b242d17f8c9f84e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xb341e3a63e58a188839b242d17f8c9f87a50c904b368210021127f9238883a6e": "0x0c90b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48", + "0xb341e3a63e58a188839b242d17f8c9f8b5cab3380174032968897a4c3ce57c0a": "0x00000000", + "0xc2261276cc9d1f8598ea4b6a74b15c2f4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0xc2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80": "0x55a0acda6b9088a60000000000000000", + "0xca32a41f4b3ed515863dc0a38697f84e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xcd710b30bd2eab0352ddcc26417aa1944e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xcd710b30bd2eab0352ddcc26417aa1949f4993f016e2d2f8e5f43be7bb259486": "0x00", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb30e5be00fbc2e15b5fe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e": "0xd17c2d7823ebf260fd138f2d7e27d114c0145d968b5ff5006125f2414fadae698eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a480390084fdbf27d2b79d26a4f13f0ccd982cb755a661969143c37cbc49ef5b91f27", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb3ce4f6702f7c0a2951e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625": "0x439660b36c6c03afafca027b910b4fecf99801834c62a5e6006f27d978de234f90b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe2290b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe2290b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe2290b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe2290b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe220389411795514af1627765eceffcbd002719f031604fadd7d188e2dc585b4e1afb", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb3e535263148daaf49be5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f": "0x88dc3417d5058ec4b4503e0c12ea1a0a89be200fe98922423d4334014fa6b0eed43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d020a1091341fe5664bfa1782d5e04779689068c916b04cb365ec3153755684d9a1", + "0xcec5070d609dd3497f72bde07fc96ba04e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19500b42ace3b5fab73c6265656684020a1091341fe5664bfa1782d5e04779689068c916b04cb365ec3153755684d9a1": "0xbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19500e3a507571a62417696d6f6e808eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0xfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19500e9b1341d066bc7162656566840389411795514af1627765eceffcbd002719f031604fadd7d188e2dc585b4e1afb": "0x1e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa195021cd04f63ad37128626162658090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22": "0x1e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950246b6699fb8b8db670617261808eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0xfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19504a8e42157609c6c86173676e80d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0xbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19505905fe216cc5924c6772616e80d17c2d7823ebf260fd138f2d7e27d114c0145d968b5ff5006125f2414fadae69": "0xfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa195062190f64559b55c9696d6f6e8090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22": "0x1e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa195066b8d48da86b869b6261626580d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0xbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950721887aafd517d296173676e8090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22": "0x1e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa195079b38849014a07307061726180d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0xbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19508b6d3621e5bd57f16772616e80439660b36c6c03afafca027b910b4fecf99801834c62a5e6006f27d978de234f": "0x1e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19509d4a4cfe1c2ef0b961756469808eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0xfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950bcb9c3677bfe9155706172618090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22": "0x1e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950c0cadce9c18510226173676e808eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0xfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950c7e637254b9ea61962656566840390084fdbf27d2b79d26a4f13f0ccd982cb755a661969143c37cbc49ef5b91f27": "0xfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950c9b0c13125732d276175646980d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0xbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950ce1dd85a539ac289617564698090b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe22": "0x1e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950d62c40514b41f31962616265808eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48": "0xfe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950ed43a85541921049696d6f6e80d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d": "0xbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950f5537bdb2a1f626b6772616e8088dc3417d5058ec4b4503e0c12ea1a0a89be200fe98922423d4334014fa6b0ee": "0xbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f", + "0xcec5070d609dd3497f72bde07fc96ba088dcde934c658227ee1dfafcd6e16903": "0x0cbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25ffe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860e1e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625", + "0xcec5070d609dd3497f72bde07fc96ba0e0cdd062e6eaf24295ad4ccfc41d4609": "0x0cbe5ddb1579b72e84524fc29e78609e3caf42e85aa118ebfe0b0ad404b5bdd25f88dc3417d5058ec4b4503e0c12ea1a0a89be200fe98922423d4334014fa6b0eed43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27dd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d020a1091341fe5664bfa1782d5e04779689068c916b04cb365ec3153755684d9a1fe65717dad0447d715f660a0a58411de509b42e6efb8375f562f58a554d5860ed17c2d7823ebf260fd138f2d7e27d114c0145d968b5ff5006125f2414fadae698eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a488eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a480390084fdbf27d2b79d26a4f13f0ccd982cb755a661969143c37cbc49ef5b91f271e07379407fecc4b89eb7dbd287c2c781cfb1907a96947a3eb18e4f8e7198625439660b36c6c03afafca027b910b4fecf99801834c62a5e6006f27d978de234f90b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe2290b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe2290b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe2290b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe2290b5ab205c6974c9ea841be688864633dc9ca8a357843eeacf2314649965fe220389411795514af1627765eceffcbd002719f031604fadd7d188e2dc585b4e1afb", + "0xd57bce545fb382c34570e5dfbf338f5e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xd5c41b52a371aa36c9254ce34324f2a54e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xd5e1a2fa16732ce6906189438c0a82c64e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xd8bbe27baf3aa64bb483afabc240f68e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xd8f314b7f4e6b095f0f8ee4656a448254e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0xda7d4185f8093e80caceb64da45219e30c98535b82c72faf3c64974094af4643": "0x0100000000000000030000000dbfa19dafecc6c6c04586ce02ad17e404dd9aa1ddde5521f3169b192ca4a699", + "0xda7d4185f8093e80caceb64da45219e34e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xda7d4185f8093e80caceb64da45219e3c52aa943bf0908860a3eea0fad707cdc": "0x0000000000000000030000000dbfa19dafecc6c6c04586ce02ad17e404dd9aa1ddde5521f3169b192ca4a699", + "0xe2e62dd81c48a88f73b6f6463555fd8e4e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0xed25f63942de25ac5253ba64b5eb64d14e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0xedfb05b766f199ce00df85317e33050e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xf0c365c3cf59d671eb72da0e7a4113c44e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xf2794c22e353e9a839f12faab03a911b4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0xf2794c22e353e9a839f12faab03a911b7f17cdfbfa73331856cca0acddd7842e": "0x00000000", + "0xf2794c22e353e9a839f12faab03a911bbdcb0c5143a8617ed38ae3810dd45bc6": "0x00000000", + "0xf2794c22e353e9a839f12faab03a911be2f6cb0456905c189bcb0458f9440f13": "0x00000000", + "0xf5207f03cfdce586301014700e2c25934e7b9012096b41c4eb3aaf947f6ea429": "0x0100" + }, + "childrenDefault": {} + } + } +} \ No newline at end of file